devicetree-language-server 0.6.5 → 0.6.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/server.js CHANGED
@@ -3,38 +3,38 @@
3
3
  ${JSON.stringify(Object.fromEntries(n))}`));return}let s=parseInt(i);if(isNaN(s)){this.fireError(new Error(`Content-Length value must be a number. Got ${i}`));return}this.nextMessageLength=s}let r=this.buffer.tryReadBody(this.nextMessageLength);if(r===void 0){this.setPartialMessageTimer();return}this.clearPartialMessageTimer(),this.nextMessageLength=-1,this.readSemaphore.lock(async()=>{let n=this.options.contentDecoder!==void 0?await this.options.contentDecoder.decode(r):r,i=await this.options.contentTypeDecoder.decode(n,this.options);this.callback(i)}).catch(n=>{this.fireError(n)})}}catch(r){this.fireError(r)}}clearPartialMessageTimer(){this.partialMessageTimer&&(this.partialMessageTimer.dispose(),this.partialMessageTimer=void 0)}setPartialMessageTimer(){this.clearPartialMessageTimer(),!(this._partialMessageTimeout<=0)&&(this.partialMessageTimer=(0,Sg.default)().timer.setTimeout((e,r)=>{this.partialMessageTimer=void 0,e===this.messageToken&&(this.firePartialMessage({messageToken:e,waitingTime:r}),this.setPartialMessageTimer())},this._partialMessageTimeout,this.messageToken,this._partialMessageTimeout))}};Ui.ReadableStreamMessageReader=kg});var lN=k(Hi=>{"use strict";Object.defineProperty(Hi,"__esModule",{value:!0});Hi.WriteableStreamMessageWriter=Hi.AbstractMessageWriter=Hi.MessageWriter=void 0;var sN=ji(),ic=ko(),QB=bg(),oN=Po(),ZB="Content-Length: ",aN=`\r
4
4
  `,cN;(function(t){function e(r){let n=r;return n&&ic.func(n.dispose)&&ic.func(n.onClose)&&ic.func(n.onError)&&ic.func(n.write)}t.is=e})(cN||(Hi.MessageWriter=cN={}));var Xu=class{constructor(){this.errorEmitter=new oN.Emitter,this.closeEmitter=new oN.Emitter}dispose(){this.errorEmitter.dispose(),this.closeEmitter.dispose()}get onError(){return this.errorEmitter.event}fireError(e,r,n){this.errorEmitter.fire([this.asError(e),r,n])}get onClose(){return this.closeEmitter.event}fireClose(){this.closeEmitter.fire(void 0)}asError(e){return e instanceof Error?e:new Error(`Writer received error. Reason: ${ic.string(e.message)?e.message:"unknown"}`)}};Hi.AbstractMessageWriter=Xu;var Rg;(function(t){function e(r){return r===void 0||typeof r=="string"?{charset:r??"utf-8",contentTypeEncoder:(0,sN.default)().applicationJson.encoder}:{charset:r.charset??"utf-8",contentEncoder:r.contentEncoder,contentTypeEncoder:r.contentTypeEncoder??(0,sN.default)().applicationJson.encoder}}t.fromOptions=e})(Rg||(Rg={}));var Pg=class extends Xu{constructor(e,r){super(),this.writable=e,this.options=Rg.fromOptions(r),this.errorCount=0,this.writeSemaphore=new QB.Semaphore(1),this.writable.onError(n=>this.fireError(n)),this.writable.onClose(()=>this.fireClose())}async write(e){return this.writeSemaphore.lock(async()=>this.options.contentTypeEncoder.encode(e,this.options).then(n=>this.options.contentEncoder!==void 0?this.options.contentEncoder.encode(n):n).then(n=>{let i=[];return i.push(ZB,n.byteLength.toString(),aN),i.push(aN),this.doWrite(e,i,n)},n=>{throw this.fireError(n),n}))}async doWrite(e,r,n){try{return await this.writable.write(r.join(""),"ascii"),this.writable.write(n)}catch(i){return this.handleError(i,e),Promise.reject(i)}}handleError(e,r){this.errorCount++,this.fireError(e,r,this.errorCount)}end(){this.writable.end()}};Hi.WriteableStreamMessageWriter=Pg});var uN=k(Ju=>{"use strict";Object.defineProperty(Ju,"__esModule",{value:!0});Ju.AbstractMessageBuffer=void 0;var eF=13,tF=10,rF=`\r
5
5
  `,wg=class{constructor(e="utf-8"){this._encoding=e,this._chunks=[],this._totalLength=0}get encoding(){return this._encoding}append(e){let r=typeof e=="string"?this.fromString(e,this._encoding):e;this._chunks.push(r),this._totalLength+=r.byteLength}tryReadHeaders(e=!1){if(this._chunks.length===0)return;let r=0,n=0,i=0,s=0;e:for(;n<this._chunks.length;){let l=this._chunks[n];for(i=0;i<l.length;){switch(l[i]){case eF:switch(r){case 0:r=1;break;case 2:r=3;break;default:r=0}break;case tF:switch(r){case 1:r=2;break;case 3:r=4,i++;break e;default:r=0}break;default:r=0}i++}s+=l.byteLength,n++}if(r!==4)return;let o=this._read(s+i),a=new Map,c=this.toString(o,"ascii").split(rF);if(c.length<2)return a;for(let l=0;l<c.length-2;l++){let u=c[l],d=u.indexOf(":");if(d===-1)throw new Error(`Message header must separate key and value using ':'
6
- ${u}`);let f=u.substr(0,d),p=u.substr(d+1).trim();a.set(e?f.toLowerCase():f,p)}return a}tryReadBody(e){if(!(this._totalLength<e))return this._read(e)}get numberOfBytes(){return this._totalLength}_read(e){if(e===0)return this.emptyBuffer();if(e>this._totalLength)throw new Error("Cannot read so many bytes!");if(this._chunks[0].byteLength===e){let s=this._chunks[0];return this._chunks.shift(),this._totalLength-=e,this.asNative(s)}if(this._chunks[0].byteLength>e){let s=this._chunks[0],o=this.asNative(s,e);return this._chunks[0]=s.slice(e),this._totalLength-=e,o}let r=this.allocNative(e),n=0,i=0;for(;e>0;){let s=this._chunks[i];if(s.byteLength>e){let o=s.slice(0,e);r.set(o,n),n+=e,this._chunks[i]=s.slice(e),this._totalLength-=e,e-=e}else r.set(s,n),n+=s.byteLength,this._chunks.shift(),this._totalLength-=s.byteLength,e-=s.byteLength}return r}};Ju.AbstractMessageBuffer=wg});var mN=k(Te=>{"use strict";Object.defineProperty(Te,"__esModule",{value:!0});Te.createMessageConnection=Te.ConnectionOptions=Te.MessageStrategy=Te.CancellationStrategy=Te.CancellationSenderStrategy=Te.CancellationReceiverStrategy=Te.RequestCancellationReceiverStrategy=Te.IdCancellationReceiverStrategy=Te.ConnectionStrategy=Te.ConnectionError=Te.ConnectionErrors=Te.LogTraceNotification=Te.SetTraceNotification=Te.TraceFormat=Te.TraceValues=Te.Trace=Te.NullLogger=Te.ProgressType=Te.ProgressToken=void 0;var dN=ji(),bt=ko(),fe=og(),fN=cg(),sc=Po(),Eg=Gu(),cc;(function(t){t.type=new fe.NotificationType("$/cancelRequest")})(cc||(cc={}));var Dg;(function(t){function e(r){return typeof r=="string"||typeof r=="number"}t.is=e})(Dg||(Te.ProgressToken=Dg={}));var oc;(function(t){t.type=new fe.NotificationType("$/progress")})(oc||(oc={}));var Cg=class{constructor(){}};Te.ProgressType=Cg;var Ag;(function(t){function e(r){return bt.func(r)}t.is=e})(Ag||(Ag={}));Te.NullLogger=Object.freeze({error:()=>{},warn:()=>{},info:()=>{},log:()=>{}});var Ve;(function(t){t[t.Off=0]="Off",t[t.Messages=1]="Messages",t[t.Compact=2]="Compact",t[t.Verbose=3]="Verbose"})(Ve||(Te.Trace=Ve={}));var pN;(function(t){t.Off="off",t.Messages="messages",t.Compact="compact",t.Verbose="verbose"})(pN||(Te.TraceValues=pN={}));(function(t){function e(n){if(!bt.string(n))return t.Off;switch(n=n.toLowerCase(),n){case"off":return t.Off;case"messages":return t.Messages;case"compact":return t.Compact;case"verbose":return t.Verbose;default:return t.Off}}t.fromString=e;function r(n){switch(n){case t.Off:return"off";case t.Messages:return"messages";case t.Compact:return"compact";case t.Verbose:return"verbose";default:return"off"}}t.toString=r})(Ve||(Te.Trace=Ve={}));var Vr;(function(t){t.Text="text",t.JSON="json"})(Vr||(Te.TraceFormat=Vr={}));(function(t){function e(r){return bt.string(r)?(r=r.toLowerCase(),r==="json"?t.JSON:t.Text):t.Text}t.fromString=e})(Vr||(Te.TraceFormat=Vr={}));var Ig;(function(t){t.type=new fe.NotificationType("$/setTrace")})(Ig||(Te.SetTraceNotification=Ig={}));var Qu;(function(t){t.type=new fe.NotificationType("$/logTrace")})(Qu||(Te.LogTraceNotification=Qu={}));var ac;(function(t){t[t.Closed=1]="Closed",t[t.Disposed=2]="Disposed",t[t.AlreadyListening=3]="AlreadyListening"})(ac||(Te.ConnectionErrors=ac={}));var Co=class t extends Error{constructor(e,r){super(r),this.code=e,Object.setPrototypeOf(this,t.prototype)}};Te.ConnectionError=Co;var Og;(function(t){function e(r){let n=r;return n&&bt.func(n.cancelUndispatched)}t.is=e})(Og||(Te.ConnectionStrategy=Og={}));var Zu;(function(t){function e(r){let n=r;return n&&(n.kind===void 0||n.kind==="id")&&bt.func(n.createCancellationTokenSource)&&(n.dispose===void 0||bt.func(n.dispose))}t.is=e})(Zu||(Te.IdCancellationReceiverStrategy=Zu={}));var Mg;(function(t){function e(r){let n=r;return n&&n.kind==="request"&&bt.func(n.createCancellationTokenSource)&&(n.dispose===void 0||bt.func(n.dispose))}t.is=e})(Mg||(Te.RequestCancellationReceiverStrategy=Mg={}));var ed;(function(t){t.Message=Object.freeze({createCancellationTokenSource(r){return new Eg.CancellationTokenSource}});function e(r){return Zu.is(r)||Mg.is(r)}t.is=e})(ed||(Te.CancellationReceiverStrategy=ed={}));var td;(function(t){t.Message=Object.freeze({sendCancellation(r,n){return r.sendNotification(cc.type,{id:n})},cleanup(r){}});function e(r){let n=r;return n&&bt.func(n.sendCancellation)&&bt.func(n.cleanup)}t.is=e})(td||(Te.CancellationSenderStrategy=td={}));var rd;(function(t){t.Message=Object.freeze({receiver:ed.Message,sender:td.Message});function e(r){let n=r;return n&&ed.is(n.receiver)&&td.is(n.sender)}t.is=e})(rd||(Te.CancellationStrategy=rd={}));var nd;(function(t){function e(r){let n=r;return n&&bt.func(n.handleMessage)}t.is=e})(nd||(Te.MessageStrategy=nd={}));var hN;(function(t){function e(r){let n=r;return n&&(rd.is(n.cancellationStrategy)||Og.is(n.connectionStrategy)||nd.is(n.messageStrategy))}t.is=e})(hN||(Te.ConnectionOptions=hN={}));var Dn;(function(t){t[t.New=1]="New",t[t.Listening=2]="Listening",t[t.Closed=3]="Closed",t[t.Disposed=4]="Disposed"})(Dn||(Dn={}));function nF(t,e,r,n){let i=r!==void 0?r:Te.NullLogger,s=0,o=0,a=0,c="2.0",l,u=new Map,d,f=new Map,p=new Map,g,h=new fN.LinkedMap,T=new Map,S=new Set,_=new Map,v=Ve.Off,R=Vr.Text,D,B=Dn.New,M=new sc.Emitter,F=new sc.Emitter,ge=new sc.Emitter,Xe=new sc.Emitter,Ft=new sc.Emitter,ke=n&&n.cancellationStrategy?n.cancellationStrategy:rd.Message;function Qr(P){if(P===null)throw new Error("Can't send requests with id null since the response can't be correlated.");return"req-"+P.toString()}function $i(P){return P===null?"res-unknown-"+(++a).toString():"res-"+P.toString()}function Ru(){return"not-"+(++o).toString()}function Mm(P,L){fe.Message.isRequest(L)?P.set(Qr(L.id),L):fe.Message.isResponse(L)?P.set($i(L.id),L):P.set(Ru(),L)}function Pu(P){}function Ja(){return B===Dn.Listening}function xs(){return B===Dn.Closed}function gi(){return B===Dn.Disposed}function vo(){(B===Dn.New||B===Dn.Listening)&&(B=Dn.Closed,F.fire(void 0))}function Ls(P){M.fire([P,void 0,void 0])}function wu(P){M.fire(P)}t.onClose(vo),t.onError(Ls),e.onClose(vo),e.onError(wu);function Qa(){g||h.size===0||(g=(0,dN.default)().timer.setImmediate(()=>{g=void 0,Eu()}))}function Za(P){fe.Message.isRequest(P)?Cu(P):fe.Message.isNotification(P)?Iu(P):fe.Message.isResponse(P)?Au(P):bo(P)}function Eu(){if(h.size===0)return;let P=h.shift();try{let L=n?.messageStrategy;nd.is(L)?L.handleMessage(P,Za):Za(P)}finally{Qa()}}let Du=P=>{try{if(fe.Message.isNotification(P)&&P.method===cc.type.method){let L=P.params.id,G=Qr(L),re=h.get(G);if(fe.Message.isRequest(re)){let We=n?.connectionStrategy,dt=We&&We.cancelUndispatched?We.cancelUndispatched(re,Pu):void 0;if(dt&&(dt.error!==void 0||dt.result!==void 0)){h.delete(G),_.delete(L),dt.id=re.id,qs(dt,P.method,Date.now()),e.write(dt).catch(()=>i.error("Sending response for canceled message failed."));return}}let Je=_.get(L);if(Je!==void 0){Je.cancel(),_o(P);return}else S.add(L)}Mm(h,P)}finally{Qa()}};function Cu(P){if(gi())return;function L(Re,tt,je){let kt={jsonrpc:c,id:P.id};Re instanceof fe.ResponseError?kt.error=Re.toJson():kt.result=Re===void 0?null:Re,qs(kt,tt,je),e.write(kt).catch(()=>i.error("Sending response failed."))}function G(Re,tt,je){let kt={jsonrpc:c,id:P.id,error:Re.toJson()};qs(kt,tt,je),e.write(kt).catch(()=>i.error("Sending response failed."))}function re(Re,tt,je){Re===void 0&&(Re=null);let kt={jsonrpc:c,id:P.id,result:Re};qs(kt,tt,je),e.write(kt).catch(()=>i.error("Sending response failed."))}xu(P);let Je=u.get(P.method),We,dt;Je&&(We=Je.type,dt=Je.handler);let yt=Date.now();if(dt||l){let Re=P.id??String(Date.now()),tt=Zu.is(ke.receiver)?ke.receiver.createCancellationTokenSource(Re):ke.receiver.createCancellationTokenSource(P);P.id!==null&&S.has(P.id)&&tt.cancel(),P.id!==null&&_.set(Re,tt);try{let je;if(dt)if(P.params===void 0){if(We!==void 0&&We.numberOfParams!==0){G(new fe.ResponseError(fe.ErrorCodes.InvalidParams,`Request ${P.method} defines ${We.numberOfParams} params but received none.`),P.method,yt);return}je=dt(tt.token)}else if(Array.isArray(P.params)){if(We!==void 0&&We.parameterStructures===fe.ParameterStructures.byName){G(new fe.ResponseError(fe.ErrorCodes.InvalidParams,`Request ${P.method} defines parameters by name but received parameters by position`),P.method,yt);return}je=dt(...P.params,tt.token)}else{if(We!==void 0&&We.parameterStructures===fe.ParameterStructures.byPosition){G(new fe.ResponseError(fe.ErrorCodes.InvalidParams,`Request ${P.method} defines parameters by position but received parameters by name`),P.method,yt);return}je=dt(P.params,tt.token)}else l&&(je=l(P.method,P.params,tt.token));let kt=je;je?kt.then?kt.then(Vt=>{_.delete(Re),L(Vt,P.method,yt)},Vt=>{_.delete(Re),Vt instanceof fe.ResponseError?G(Vt,P.method,yt):Vt&&bt.string(Vt.message)?G(new fe.ResponseError(fe.ErrorCodes.InternalError,`Request ${P.method} failed with message: ${Vt.message}`),P.method,yt):G(new fe.ResponseError(fe.ErrorCodes.InternalError,`Request ${P.method} failed unexpectedly without providing any details.`),P.method,yt)}):(_.delete(Re),L(je,P.method,yt)):(_.delete(Re),re(je,P.method,yt))}catch(je){_.delete(Re),je instanceof fe.ResponseError?L(je,P.method,yt):je&&bt.string(je.message)?G(new fe.ResponseError(fe.ErrorCodes.InternalError,`Request ${P.method} failed with message: ${je.message}`),P.method,yt):G(new fe.ResponseError(fe.ErrorCodes.InternalError,`Request ${P.method} failed unexpectedly without providing any details.`),P.method,yt)}}else G(new fe.ResponseError(fe.ErrorCodes.MethodNotFound,`Unhandled method ${P.method}`),P.method,yt)}function Au(P){if(!gi())if(P.id===null)P.error?i.error(`Received response message without id: Error is:
6
+ ${u}`);let f=u.substr(0,d),p=u.substr(d+1).trim();a.set(e?f.toLowerCase():f,p)}return a}tryReadBody(e){if(!(this._totalLength<e))return this._read(e)}get numberOfBytes(){return this._totalLength}_read(e){if(e===0)return this.emptyBuffer();if(e>this._totalLength)throw new Error("Cannot read so many bytes!");if(this._chunks[0].byteLength===e){let s=this._chunks[0];return this._chunks.shift(),this._totalLength-=e,this.asNative(s)}if(this._chunks[0].byteLength>e){let s=this._chunks[0],o=this.asNative(s,e);return this._chunks[0]=s.slice(e),this._totalLength-=e,o}let r=this.allocNative(e),n=0,i=0;for(;e>0;){let s=this._chunks[i];if(s.byteLength>e){let o=s.slice(0,e);r.set(o,n),n+=e,this._chunks[i]=s.slice(e),this._totalLength-=e,e-=e}else r.set(s,n),n+=s.byteLength,this._chunks.shift(),this._totalLength-=s.byteLength,e-=s.byteLength}return r}};Ju.AbstractMessageBuffer=wg});var mN=k(Te=>{"use strict";Object.defineProperty(Te,"__esModule",{value:!0});Te.createMessageConnection=Te.ConnectionOptions=Te.MessageStrategy=Te.CancellationStrategy=Te.CancellationSenderStrategy=Te.CancellationReceiverStrategy=Te.RequestCancellationReceiverStrategy=Te.IdCancellationReceiverStrategy=Te.ConnectionStrategy=Te.ConnectionError=Te.ConnectionErrors=Te.LogTraceNotification=Te.SetTraceNotification=Te.TraceFormat=Te.TraceValues=Te.Trace=Te.NullLogger=Te.ProgressType=Te.ProgressToken=void 0;var dN=ji(),bt=ko(),fe=og(),fN=cg(),sc=Po(),Eg=Gu(),cc;(function(t){t.type=new fe.NotificationType("$/cancelRequest")})(cc||(cc={}));var Dg;(function(t){function e(r){return typeof r=="string"||typeof r=="number"}t.is=e})(Dg||(Te.ProgressToken=Dg={}));var oc;(function(t){t.type=new fe.NotificationType("$/progress")})(oc||(oc={}));var Cg=class{constructor(){}};Te.ProgressType=Cg;var Ag;(function(t){function e(r){return bt.func(r)}t.is=e})(Ag||(Ag={}));Te.NullLogger=Object.freeze({error:()=>{},warn:()=>{},info:()=>{},log:()=>{}});var Ve;(function(t){t[t.Off=0]="Off",t[t.Messages=1]="Messages",t[t.Compact=2]="Compact",t[t.Verbose=3]="Verbose"})(Ve||(Te.Trace=Ve={}));var pN;(function(t){t.Off="off",t.Messages="messages",t.Compact="compact",t.Verbose="verbose"})(pN||(Te.TraceValues=pN={}));(function(t){function e(n){if(!bt.string(n))return t.Off;switch(n=n.toLowerCase(),n){case"off":return t.Off;case"messages":return t.Messages;case"compact":return t.Compact;case"verbose":return t.Verbose;default:return t.Off}}t.fromString=e;function r(n){switch(n){case t.Off:return"off";case t.Messages:return"messages";case t.Compact:return"compact";case t.Verbose:return"verbose";default:return"off"}}t.toString=r})(Ve||(Te.Trace=Ve={}));var zr;(function(t){t.Text="text",t.JSON="json"})(zr||(Te.TraceFormat=zr={}));(function(t){function e(r){return bt.string(r)?(r=r.toLowerCase(),r==="json"?t.JSON:t.Text):t.Text}t.fromString=e})(zr||(Te.TraceFormat=zr={}));var Ig;(function(t){t.type=new fe.NotificationType("$/setTrace")})(Ig||(Te.SetTraceNotification=Ig={}));var Qu;(function(t){t.type=new fe.NotificationType("$/logTrace")})(Qu||(Te.LogTraceNotification=Qu={}));var ac;(function(t){t[t.Closed=1]="Closed",t[t.Disposed=2]="Disposed",t[t.AlreadyListening=3]="AlreadyListening"})(ac||(Te.ConnectionErrors=ac={}));var Co=class t extends Error{constructor(e,r){super(r),this.code=e,Object.setPrototypeOf(this,t.prototype)}};Te.ConnectionError=Co;var Og;(function(t){function e(r){let n=r;return n&&bt.func(n.cancelUndispatched)}t.is=e})(Og||(Te.ConnectionStrategy=Og={}));var Zu;(function(t){function e(r){let n=r;return n&&(n.kind===void 0||n.kind==="id")&&bt.func(n.createCancellationTokenSource)&&(n.dispose===void 0||bt.func(n.dispose))}t.is=e})(Zu||(Te.IdCancellationReceiverStrategy=Zu={}));var Mg;(function(t){function e(r){let n=r;return n&&n.kind==="request"&&bt.func(n.createCancellationTokenSource)&&(n.dispose===void 0||bt.func(n.dispose))}t.is=e})(Mg||(Te.RequestCancellationReceiverStrategy=Mg={}));var ed;(function(t){t.Message=Object.freeze({createCancellationTokenSource(r){return new Eg.CancellationTokenSource}});function e(r){return Zu.is(r)||Mg.is(r)}t.is=e})(ed||(Te.CancellationReceiverStrategy=ed={}));var td;(function(t){t.Message=Object.freeze({sendCancellation(r,n){return r.sendNotification(cc.type,{id:n})},cleanup(r){}});function e(r){let n=r;return n&&bt.func(n.sendCancellation)&&bt.func(n.cleanup)}t.is=e})(td||(Te.CancellationSenderStrategy=td={}));var rd;(function(t){t.Message=Object.freeze({receiver:ed.Message,sender:td.Message});function e(r){let n=r;return n&&ed.is(n.receiver)&&td.is(n.sender)}t.is=e})(rd||(Te.CancellationStrategy=rd={}));var nd;(function(t){function e(r){let n=r;return n&&bt.func(n.handleMessage)}t.is=e})(nd||(Te.MessageStrategy=nd={}));var hN;(function(t){function e(r){let n=r;return n&&(rd.is(n.cancellationStrategy)||Og.is(n.connectionStrategy)||nd.is(n.messageStrategy))}t.is=e})(hN||(Te.ConnectionOptions=hN={}));var Dn;(function(t){t[t.New=1]="New",t[t.Listening=2]="Listening",t[t.Closed=3]="Closed",t[t.Disposed=4]="Disposed"})(Dn||(Dn={}));function nF(t,e,r,n){let i=r!==void 0?r:Te.NullLogger,s=0,o=0,a=0,c="2.0",l,u=new Map,d,f=new Map,p=new Map,g,h=new fN.LinkedMap,T=new Map,S=new Set,_=new Map,v=Ve.Off,R=zr.Text,D,B=Dn.New,M=new sc.Emitter,F=new sc.Emitter,ge=new sc.Emitter,Xe=new sc.Emitter,Ft=new sc.Emitter,ke=n&&n.cancellationStrategy?n.cancellationStrategy:rd.Message;function Zr(P){if(P===null)throw new Error("Can't send requests with id null since the response can't be correlated.");return"req-"+P.toString()}function $i(P){return P===null?"res-unknown-"+(++a).toString():"res-"+P.toString()}function Ru(){return"not-"+(++o).toString()}function Mm(P,L){fe.Message.isRequest(L)?P.set(Zr(L.id),L):fe.Message.isResponse(L)?P.set($i(L.id),L):P.set(Ru(),L)}function Pu(P){}function Ja(){return B===Dn.Listening}function xs(){return B===Dn.Closed}function gi(){return B===Dn.Disposed}function vo(){(B===Dn.New||B===Dn.Listening)&&(B=Dn.Closed,F.fire(void 0))}function Ls(P){M.fire([P,void 0,void 0])}function wu(P){M.fire(P)}t.onClose(vo),t.onError(Ls),e.onClose(vo),e.onError(wu);function Qa(){g||h.size===0||(g=(0,dN.default)().timer.setImmediate(()=>{g=void 0,Eu()}))}function Za(P){fe.Message.isRequest(P)?Cu(P):fe.Message.isNotification(P)?Iu(P):fe.Message.isResponse(P)?Au(P):bo(P)}function Eu(){if(h.size===0)return;let P=h.shift();try{let L=n?.messageStrategy;nd.is(L)?L.handleMessage(P,Za):Za(P)}finally{Qa()}}let Du=P=>{try{if(fe.Message.isNotification(P)&&P.method===cc.type.method){let L=P.params.id,G=Zr(L),re=h.get(G);if(fe.Message.isRequest(re)){let We=n?.connectionStrategy,dt=We&&We.cancelUndispatched?We.cancelUndispatched(re,Pu):void 0;if(dt&&(dt.error!==void 0||dt.result!==void 0)){h.delete(G),_.delete(L),dt.id=re.id,qs(dt,P.method,Date.now()),e.write(dt).catch(()=>i.error("Sending response for canceled message failed."));return}}let Je=_.get(L);if(Je!==void 0){Je.cancel(),_o(P);return}else S.add(L)}Mm(h,P)}finally{Qa()}};function Cu(P){if(gi())return;function L(Re,tt,je){let kt={jsonrpc:c,id:P.id};Re instanceof fe.ResponseError?kt.error=Re.toJson():kt.result=Re===void 0?null:Re,qs(kt,tt,je),e.write(kt).catch(()=>i.error("Sending response failed."))}function G(Re,tt,je){let kt={jsonrpc:c,id:P.id,error:Re.toJson()};qs(kt,tt,je),e.write(kt).catch(()=>i.error("Sending response failed."))}function re(Re,tt,je){Re===void 0&&(Re=null);let kt={jsonrpc:c,id:P.id,result:Re};qs(kt,tt,je),e.write(kt).catch(()=>i.error("Sending response failed."))}xu(P);let Je=u.get(P.method),We,dt;Je&&(We=Je.type,dt=Je.handler);let yt=Date.now();if(dt||l){let Re=P.id??String(Date.now()),tt=Zu.is(ke.receiver)?ke.receiver.createCancellationTokenSource(Re):ke.receiver.createCancellationTokenSource(P);P.id!==null&&S.has(P.id)&&tt.cancel(),P.id!==null&&_.set(Re,tt);try{let je;if(dt)if(P.params===void 0){if(We!==void 0&&We.numberOfParams!==0){G(new fe.ResponseError(fe.ErrorCodes.InvalidParams,`Request ${P.method} defines ${We.numberOfParams} params but received none.`),P.method,yt);return}je=dt(tt.token)}else if(Array.isArray(P.params)){if(We!==void 0&&We.parameterStructures===fe.ParameterStructures.byName){G(new fe.ResponseError(fe.ErrorCodes.InvalidParams,`Request ${P.method} defines parameters by name but received parameters by position`),P.method,yt);return}je=dt(...P.params,tt.token)}else{if(We!==void 0&&We.parameterStructures===fe.ParameterStructures.byPosition){G(new fe.ResponseError(fe.ErrorCodes.InvalidParams,`Request ${P.method} defines parameters by position but received parameters by name`),P.method,yt);return}je=dt(P.params,tt.token)}else l&&(je=l(P.method,P.params,tt.token));let kt=je;je?kt.then?kt.then(Vt=>{_.delete(Re),L(Vt,P.method,yt)},Vt=>{_.delete(Re),Vt instanceof fe.ResponseError?G(Vt,P.method,yt):Vt&&bt.string(Vt.message)?G(new fe.ResponseError(fe.ErrorCodes.InternalError,`Request ${P.method} failed with message: ${Vt.message}`),P.method,yt):G(new fe.ResponseError(fe.ErrorCodes.InternalError,`Request ${P.method} failed unexpectedly without providing any details.`),P.method,yt)}):(_.delete(Re),L(je,P.method,yt)):(_.delete(Re),re(je,P.method,yt))}catch(je){_.delete(Re),je instanceof fe.ResponseError?L(je,P.method,yt):je&&bt.string(je.message)?G(new fe.ResponseError(fe.ErrorCodes.InternalError,`Request ${P.method} failed with message: ${je.message}`),P.method,yt):G(new fe.ResponseError(fe.ErrorCodes.InternalError,`Request ${P.method} failed unexpectedly without providing any details.`),P.method,yt)}}else G(new fe.ResponseError(fe.ErrorCodes.MethodNotFound,`Unhandled method ${P.method}`),P.method,yt)}function Au(P){if(!gi())if(P.id===null)P.error?i.error(`Received response message without id: Error is:
7
7
  ${JSON.stringify(P.error,void 0,4)}`):i.error("Received response message without id. No further error information provided.");else{let L=P.id,G=T.get(L);if(Lu(P,G),G!==void 0){T.delete(L);try{if(P.error){let re=P.error;G.reject(new fe.ResponseError(re.code,re.message,re.data))}else if(P.result!==void 0)G.resolve(P.result);else throw new Error("Should never happen.")}catch(re){re.message?i.error(`Response handler '${G.method}' failed with message: ${re.message}`):i.error(`Response handler '${G.method}' failed unexpectedly.`)}}}}function Iu(P){if(gi())return;let L,G;if(P.method===cc.type.method){let re=P.params.id;S.delete(re),_o(P);return}else{let re=f.get(P.method);re&&(G=re.handler,L=re.type)}if(G||d)try{if(_o(P),G)if(P.params===void 0)L!==void 0&&L.numberOfParams!==0&&L.parameterStructures!==fe.ParameterStructures.byName&&i.error(`Notification ${P.method} defines ${L.numberOfParams} params but received none.`),G();else if(Array.isArray(P.params)){let re=P.params;P.method===oc.type.method&&re.length===2&&Dg.is(re[0])?G({token:re[0],value:re[1]}):(L!==void 0&&(L.parameterStructures===fe.ParameterStructures.byName&&i.error(`Notification ${P.method} defines parameters by name but received parameters by position`),L.numberOfParams!==P.params.length&&i.error(`Notification ${P.method} defines ${L.numberOfParams} params but received ${re.length} arguments`)),G(...re))}else L!==void 0&&L.parameterStructures===fe.ParameterStructures.byPosition&&i.error(`Notification ${P.method} defines parameters by position but received parameters by name`),G(P.params);else d&&d(P.method,P.params)}catch(re){re.message?i.error(`Notification handler '${P.method}' failed with message: ${re.message}`):i.error(`Notification handler '${P.method}' failed unexpectedly.`)}else ge.fire(P)}function bo(P){if(!P){i.error("Received empty message.");return}i.error(`Received message which is neither a response nor a notification message:
8
- ${JSON.stringify(P,null,4)}`);let L=P;if(bt.string(L.id)||bt.number(L.id)){let G=L.id,re=T.get(G);re&&re.reject(new Error("The received response has neither a result nor an error property."))}}function Pn(P){if(P!=null)switch(v){case Ve.Verbose:return JSON.stringify(P,null,4);case Ve.Compact:return JSON.stringify(P);default:return}}function Ou(P){if(!(v===Ve.Off||!D))if(R===Vr.Text){let L;(v===Ve.Verbose||v===Ve.Compact)&&P.params&&(L=`Params: ${Pn(P.params)}
8
+ ${JSON.stringify(P,null,4)}`);let L=P;if(bt.string(L.id)||bt.number(L.id)){let G=L.id,re=T.get(G);re&&re.reject(new Error("The received response has neither a result nor an error property."))}}function Pn(P){if(P!=null)switch(v){case Ve.Verbose:return JSON.stringify(P,null,4);case Ve.Compact:return JSON.stringify(P);default:return}}function Ou(P){if(!(v===Ve.Off||!D))if(R===zr.Text){let L;(v===Ve.Verbose||v===Ve.Compact)&&P.params&&(L=`Params: ${Pn(P.params)}
9
9
 
10
- `),D.log(`Sending request '${P.method} - (${P.id})'.`,L)}else yi("send-request",P)}function Mu(P){if(!(v===Ve.Off||!D))if(R===Vr.Text){let L;(v===Ve.Verbose||v===Ve.Compact)&&(P.params?L=`Params: ${Pn(P.params)}
10
+ `),D.log(`Sending request '${P.method} - (${P.id})'.`,L)}else yi("send-request",P)}function Mu(P){if(!(v===Ve.Off||!D))if(R===zr.Text){let L;(v===Ve.Verbose||v===Ve.Compact)&&(P.params?L=`Params: ${Pn(P.params)}
11
11
 
12
12
  `:L=`No parameters provided.
13
13
 
14
- `),D.log(`Sending notification '${P.method}'.`,L)}else yi("send-notification",P)}function qs(P,L,G){if(!(v===Ve.Off||!D))if(R===Vr.Text){let re;(v===Ve.Verbose||v===Ve.Compact)&&(P.error&&P.error.data?re=`Error data: ${Pn(P.error.data)}
14
+ `),D.log(`Sending notification '${P.method}'.`,L)}else yi("send-notification",P)}function qs(P,L,G){if(!(v===Ve.Off||!D))if(R===zr.Text){let re;(v===Ve.Verbose||v===Ve.Compact)&&(P.error&&P.error.data?re=`Error data: ${Pn(P.error.data)}
15
15
 
16
16
  `:P.result?re=`Result: ${Pn(P.result)}
17
17
 
18
18
  `:P.error===void 0&&(re=`No result returned.
19
19
 
20
- `)),D.log(`Sending response '${L} - (${P.id})'. Processing request took ${Date.now()-G}ms`,re)}else yi("send-response",P)}function xu(P){if(!(v===Ve.Off||!D))if(R===Vr.Text){let L;(v===Ve.Verbose||v===Ve.Compact)&&P.params&&(L=`Params: ${Pn(P.params)}
20
+ `)),D.log(`Sending response '${L} - (${P.id})'. Processing request took ${Date.now()-G}ms`,re)}else yi("send-response",P)}function xu(P){if(!(v===Ve.Off||!D))if(R===zr.Text){let L;(v===Ve.Verbose||v===Ve.Compact)&&P.params&&(L=`Params: ${Pn(P.params)}
21
21
 
22
- `),D.log(`Received request '${P.method} - (${P.id})'.`,L)}else yi("receive-request",P)}function _o(P){if(!(v===Ve.Off||!D||P.method===Qu.type.method))if(R===Vr.Text){let L;(v===Ve.Verbose||v===Ve.Compact)&&(P.params?L=`Params: ${Pn(P.params)}
22
+ `),D.log(`Received request '${P.method} - (${P.id})'.`,L)}else yi("receive-request",P)}function _o(P){if(!(v===Ve.Off||!D||P.method===Qu.type.method))if(R===zr.Text){let L;(v===Ve.Verbose||v===Ve.Compact)&&(P.params?L=`Params: ${Pn(P.params)}
23
23
 
24
24
  `:L=`No parameters provided.
25
25
 
26
- `),D.log(`Received notification '${P.method}'.`,L)}else yi("receive-notification",P)}function Lu(P,L){if(!(v===Ve.Off||!D))if(R===Vr.Text){let G;if((v===Ve.Verbose||v===Ve.Compact)&&(P.error&&P.error.data?G=`Error data: ${Pn(P.error.data)}
26
+ `),D.log(`Received notification '${P.method}'.`,L)}else yi("receive-notification",P)}function Lu(P,L){if(!(v===Ve.Off||!D))if(R===zr.Text){let G;if((v===Ve.Verbose||v===Ve.Compact)&&(P.error&&P.error.data?G=`Error data: ${Pn(P.error.data)}
27
27
 
28
28
  `:P.result?G=`Result: ${Pn(P.result)}
29
29
 
30
30
  `:P.error===void 0&&(G=`No result returned.
31
31
 
32
- `)),L){let re=P.error?` Request failed: ${P.error.message} (${P.error.code}).`:"";D.log(`Received response '${L.method} - (${P.id})' in ${Date.now()-L.timerStart}ms.${re}`,G)}else D.log(`Received response ${P.id} without active response promise.`,G)}else yi("receive-response",P)}function yi(P,L){if(!D||v===Ve.Off)return;let G={isLSPMessage:!0,type:P,message:L,timestamp:Date.now()};D.log(G)}function Bi(){if(xs())throw new Co(ac.Closed,"Connection is closed.");if(gi())throw new Co(ac.Disposed,"Connection is disposed.")}function qu(){if(Ja())throw new Co(ac.AlreadyListening,"Connection is already listening")}function $u(){if(!Ja())throw new Error("Call listen() first.")}function Kn(P){return P===void 0?null:P}function ec(P){if(P!==null)return P}function tc(P){return P!=null&&!Array.isArray(P)&&typeof P=="object"}function So(P,L){switch(P){case fe.ParameterStructures.auto:return tc(L)?ec(L):[Kn(L)];case fe.ParameterStructures.byName:if(!tc(L))throw new Error("Received parameters by name but param is not an object literal.");return ec(L);case fe.ParameterStructures.byPosition:return[Kn(L)];default:throw new Error(`Unknown parameter structure ${P.toString()}`)}}function rc(P,L){let G,re=P.numberOfParams;switch(re){case 0:G=void 0;break;case 1:G=So(P.parameterStructures,L[0]);break;default:G=[];for(let Je=0;Je<L.length&&Je<re;Je++)G.push(Kn(L[Je]));if(L.length<re)for(let Je=L.length;Je<re;Je++)G.push(null);break}return G}let Ti={sendNotification:(P,...L)=>{Bi();let G,re;if(bt.string(P)){G=P;let We=L[0],dt=0,yt=fe.ParameterStructures.auto;fe.ParameterStructures.is(We)&&(dt=1,yt=We);let Re=L.length,tt=Re-dt;switch(tt){case 0:re=void 0;break;case 1:re=So(yt,L[dt]);break;default:if(yt===fe.ParameterStructures.byName)throw new Error(`Received ${tt} parameters for 'by Name' notification parameter structure.`);re=L.slice(dt,Re).map(je=>Kn(je));break}}else{let We=L;G=P.method,re=rc(P,We)}let Je={jsonrpc:c,method:G,params:re};return Mu(Je),e.write(Je).catch(We=>{throw i.error("Sending notification failed."),We})},onNotification:(P,L)=>{Bi();let G;return bt.func(P)?d=P:L&&(bt.string(P)?(G=P,f.set(P,{type:void 0,handler:L})):(G=P.method,f.set(P.method,{type:P,handler:L}))),{dispose:()=>{G!==void 0?f.delete(G):d=void 0}}},onProgress:(P,L,G)=>{if(p.has(L))throw new Error(`Progress handler for token ${L} already registered`);return p.set(L,G),{dispose:()=>{p.delete(L)}}},sendProgress:(P,L,G)=>Ti.sendNotification(oc.type,{token:L,value:G}),onUnhandledProgress:Xe.event,sendRequest:(P,...L)=>{Bi(),$u();let G,re,Je;if(bt.string(P)){G=P;let Re=L[0],tt=L[L.length-1],je=0,kt=fe.ParameterStructures.auto;fe.ParameterStructures.is(Re)&&(je=1,kt=Re);let Vt=L.length;Eg.CancellationToken.is(tt)&&(Vt=Vt-1,Je=tt);let Hr=Vt-je;switch(Hr){case 0:re=void 0;break;case 1:re=So(kt,L[je]);break;default:if(kt===fe.ParameterStructures.byName)throw new Error(`Received ${Hr} parameters for 'by Name' request parameter structure.`);re=L.slice(je,Vt).map(Bu=>Kn(Bu));break}}else{let Re=L;G=P.method,re=rc(P,Re);let tt=P.numberOfParams;Je=Eg.CancellationToken.is(Re[tt])?Re[tt]:void 0}let We=s++,dt;Je&&(dt=Je.onCancellationRequested(()=>{let Re=ke.sender.sendCancellation(Ti,We);return Re===void 0?(i.log(`Received no promise from cancellation strategy when cancelling id ${We}`),Promise.resolve()):Re.catch(()=>{i.log(`Sending cancellation messages for id ${We} failed`)})}));let yt={jsonrpc:c,id:We,method:G,params:re};return Ou(yt),typeof ke.sender.enableCancellation=="function"&&ke.sender.enableCancellation(yt),new Promise(async(Re,tt)=>{let je=Hr=>{Re(Hr),ke.sender.cleanup(We),dt?.dispose()},kt=Hr=>{tt(Hr),ke.sender.cleanup(We),dt?.dispose()},Vt={method:G,timerStart:Date.now(),resolve:je,reject:kt};try{await e.write(yt),T.set(We,Vt)}catch(Hr){throw i.error("Sending request failed."),Vt.reject(new fe.ResponseError(fe.ErrorCodes.MessageWriteError,Hr.message?Hr.message:"Unknown reason")),Hr}})},onRequest:(P,L)=>{Bi();let G=null;return Ag.is(P)?(G=void 0,l=P):bt.string(P)?(G=null,L!==void 0&&(G=P,u.set(P,{handler:L,type:void 0}))):L!==void 0&&(G=P.method,u.set(P.method,{type:P,handler:L})),{dispose:()=>{G!==null&&(G!==void 0?u.delete(G):l=void 0)}}},hasPendingResponse:()=>T.size>0,trace:async(P,L,G)=>{let re=!1,Je=Vr.Text;G!==void 0&&(bt.boolean(G)?re=G:(re=G.sendNotification||!1,Je=G.traceFormat||Vr.Text)),v=P,R=Je,v===Ve.Off?D=void 0:D=L,re&&!xs()&&!gi()&&await Ti.sendNotification(Ig.type,{value:Ve.toString(P)})},onError:M.event,onClose:F.event,onUnhandledNotification:ge.event,onDispose:Ft.event,end:()=>{e.end()},dispose:()=>{if(gi())return;B=Dn.Disposed,Ft.fire(void 0);let P=new fe.ResponseError(fe.ErrorCodes.PendingResponseRejected,"Pending response rejected since connection got disposed");for(let L of T.values())L.reject(P);T=new Map,_=new Map,S=new Set,h=new fN.LinkedMap,bt.func(e.dispose)&&e.dispose(),bt.func(t.dispose)&&t.dispose()},listen:()=>{Bi(),qu(),B=Dn.Listening,t.listen(Du)},inspect:()=>{(0,dN.default)().console.log("inspect")}};return Ti.onNotification(Qu.type,P=>{if(v===Ve.Off||!D)return;let L=v===Ve.Verbose||v===Ve.Compact;D.log(P.message,L?P.verbose:void 0)}),Ti.onNotification(oc.type,P=>{let L=p.get(P.token);L?L(P.value):Xe.fire(P)}),Ti}Te.createMessageConnection=nF});var id=k(O=>{"use strict";Object.defineProperty(O,"__esModule",{value:!0});O.ProgressType=O.ProgressToken=O.createMessageConnection=O.NullLogger=O.ConnectionOptions=O.ConnectionStrategy=O.AbstractMessageBuffer=O.WriteableStreamMessageWriter=O.AbstractMessageWriter=O.MessageWriter=O.ReadableStreamMessageReader=O.AbstractMessageReader=O.MessageReader=O.SharedArrayReceiverStrategy=O.SharedArraySenderStrategy=O.CancellationToken=O.CancellationTokenSource=O.Emitter=O.Event=O.Disposable=O.LRUCache=O.Touch=O.LinkedMap=O.ParameterStructures=O.NotificationType9=O.NotificationType8=O.NotificationType7=O.NotificationType6=O.NotificationType5=O.NotificationType4=O.NotificationType3=O.NotificationType2=O.NotificationType1=O.NotificationType0=O.NotificationType=O.ErrorCodes=O.ResponseError=O.RequestType9=O.RequestType8=O.RequestType7=O.RequestType6=O.RequestType5=O.RequestType4=O.RequestType3=O.RequestType2=O.RequestType1=O.RequestType0=O.RequestType=O.Message=O.RAL=void 0;O.MessageStrategy=O.CancellationStrategy=O.CancellationSenderStrategy=O.CancellationReceiverStrategy=O.ConnectionError=O.ConnectionErrors=O.LogTraceNotification=O.SetTraceNotification=O.TraceFormat=O.TraceValues=O.Trace=void 0;var ct=og();Object.defineProperty(O,"Message",{enumerable:!0,get:function(){return ct.Message}});Object.defineProperty(O,"RequestType",{enumerable:!0,get:function(){return ct.RequestType}});Object.defineProperty(O,"RequestType0",{enumerable:!0,get:function(){return ct.RequestType0}});Object.defineProperty(O,"RequestType1",{enumerable:!0,get:function(){return ct.RequestType1}});Object.defineProperty(O,"RequestType2",{enumerable:!0,get:function(){return ct.RequestType2}});Object.defineProperty(O,"RequestType3",{enumerable:!0,get:function(){return ct.RequestType3}});Object.defineProperty(O,"RequestType4",{enumerable:!0,get:function(){return ct.RequestType4}});Object.defineProperty(O,"RequestType5",{enumerable:!0,get:function(){return ct.RequestType5}});Object.defineProperty(O,"RequestType6",{enumerable:!0,get:function(){return ct.RequestType6}});Object.defineProperty(O,"RequestType7",{enumerable:!0,get:function(){return ct.RequestType7}});Object.defineProperty(O,"RequestType8",{enumerable:!0,get:function(){return ct.RequestType8}});Object.defineProperty(O,"RequestType9",{enumerable:!0,get:function(){return ct.RequestType9}});Object.defineProperty(O,"ResponseError",{enumerable:!0,get:function(){return ct.ResponseError}});Object.defineProperty(O,"ErrorCodes",{enumerable:!0,get:function(){return ct.ErrorCodes}});Object.defineProperty(O,"NotificationType",{enumerable:!0,get:function(){return ct.NotificationType}});Object.defineProperty(O,"NotificationType0",{enumerable:!0,get:function(){return ct.NotificationType0}});Object.defineProperty(O,"NotificationType1",{enumerable:!0,get:function(){return ct.NotificationType1}});Object.defineProperty(O,"NotificationType2",{enumerable:!0,get:function(){return ct.NotificationType2}});Object.defineProperty(O,"NotificationType3",{enumerable:!0,get:function(){return ct.NotificationType3}});Object.defineProperty(O,"NotificationType4",{enumerable:!0,get:function(){return ct.NotificationType4}});Object.defineProperty(O,"NotificationType5",{enumerable:!0,get:function(){return ct.NotificationType5}});Object.defineProperty(O,"NotificationType6",{enumerable:!0,get:function(){return ct.NotificationType6}});Object.defineProperty(O,"NotificationType7",{enumerable:!0,get:function(){return ct.NotificationType7}});Object.defineProperty(O,"NotificationType8",{enumerable:!0,get:function(){return ct.NotificationType8}});Object.defineProperty(O,"NotificationType9",{enumerable:!0,get:function(){return ct.NotificationType9}});Object.defineProperty(O,"ParameterStructures",{enumerable:!0,get:function(){return ct.ParameterStructures}});var xg=cg();Object.defineProperty(O,"LinkedMap",{enumerable:!0,get:function(){return xg.LinkedMap}});Object.defineProperty(O,"LRUCache",{enumerable:!0,get:function(){return xg.LRUCache}});Object.defineProperty(O,"Touch",{enumerable:!0,get:function(){return xg.Touch}});var iF=eN();Object.defineProperty(O,"Disposable",{enumerable:!0,get:function(){return iF.Disposable}});var gN=Po();Object.defineProperty(O,"Event",{enumerable:!0,get:function(){return gN.Event}});Object.defineProperty(O,"Emitter",{enumerable:!0,get:function(){return gN.Emitter}});var yN=Gu();Object.defineProperty(O,"CancellationTokenSource",{enumerable:!0,get:function(){return yN.CancellationTokenSource}});Object.defineProperty(O,"CancellationToken",{enumerable:!0,get:function(){return yN.CancellationToken}});var TN=rN();Object.defineProperty(O,"SharedArraySenderStrategy",{enumerable:!0,get:function(){return TN.SharedArraySenderStrategy}});Object.defineProperty(O,"SharedArrayReceiverStrategy",{enumerable:!0,get:function(){return TN.SharedArrayReceiverStrategy}});var Lg=iN();Object.defineProperty(O,"MessageReader",{enumerable:!0,get:function(){return Lg.MessageReader}});Object.defineProperty(O,"AbstractMessageReader",{enumerable:!0,get:function(){return Lg.AbstractMessageReader}});Object.defineProperty(O,"ReadableStreamMessageReader",{enumerable:!0,get:function(){return Lg.ReadableStreamMessageReader}});var qg=lN();Object.defineProperty(O,"MessageWriter",{enumerable:!0,get:function(){return qg.MessageWriter}});Object.defineProperty(O,"AbstractMessageWriter",{enumerable:!0,get:function(){return qg.AbstractMessageWriter}});Object.defineProperty(O,"WriteableStreamMessageWriter",{enumerable:!0,get:function(){return qg.WriteableStreamMessageWriter}});var sF=uN();Object.defineProperty(O,"AbstractMessageBuffer",{enumerable:!0,get:function(){return sF.AbstractMessageBuffer}});var Jt=mN();Object.defineProperty(O,"ConnectionStrategy",{enumerable:!0,get:function(){return Jt.ConnectionStrategy}});Object.defineProperty(O,"ConnectionOptions",{enumerable:!0,get:function(){return Jt.ConnectionOptions}});Object.defineProperty(O,"NullLogger",{enumerable:!0,get:function(){return Jt.NullLogger}});Object.defineProperty(O,"createMessageConnection",{enumerable:!0,get:function(){return Jt.createMessageConnection}});Object.defineProperty(O,"ProgressToken",{enumerable:!0,get:function(){return Jt.ProgressToken}});Object.defineProperty(O,"ProgressType",{enumerable:!0,get:function(){return Jt.ProgressType}});Object.defineProperty(O,"Trace",{enumerable:!0,get:function(){return Jt.Trace}});Object.defineProperty(O,"TraceValues",{enumerable:!0,get:function(){return Jt.TraceValues}});Object.defineProperty(O,"TraceFormat",{enumerable:!0,get:function(){return Jt.TraceFormat}});Object.defineProperty(O,"SetTraceNotification",{enumerable:!0,get:function(){return Jt.SetTraceNotification}});Object.defineProperty(O,"LogTraceNotification",{enumerable:!0,get:function(){return Jt.LogTraceNotification}});Object.defineProperty(O,"ConnectionErrors",{enumerable:!0,get:function(){return Jt.ConnectionErrors}});Object.defineProperty(O,"ConnectionError",{enumerable:!0,get:function(){return Jt.ConnectionError}});Object.defineProperty(O,"CancellationReceiverStrategy",{enumerable:!0,get:function(){return Jt.CancellationReceiverStrategy}});Object.defineProperty(O,"CancellationSenderStrategy",{enumerable:!0,get:function(){return Jt.CancellationSenderStrategy}});Object.defineProperty(O,"CancellationStrategy",{enumerable:!0,get:function(){return Jt.CancellationStrategy}});Object.defineProperty(O,"MessageStrategy",{enumerable:!0,get:function(){return Jt.MessageStrategy}});var oF=ji();O.RAL=oF.default});var _N=k(jg=>{"use strict";Object.defineProperty(jg,"__esModule",{value:!0});var vN=require("util"),bi=id(),sd=class t extends bi.AbstractMessageBuffer{constructor(e="utf-8"){super(e)}emptyBuffer(){return t.emptyBuffer}fromString(e,r){return Buffer.from(e,r)}toString(e,r){return e instanceof Buffer?e.toString(r):new vN.TextDecoder(r).decode(e)}asNative(e,r){return r===void 0?e instanceof Buffer?e:Buffer.from(e):e instanceof Buffer?e.slice(0,r):Buffer.from(e,0,r)}allocNative(e){return Buffer.allocUnsafe(e)}};sd.emptyBuffer=Buffer.allocUnsafe(0);var $g=class{constructor(e){this.stream=e}onClose(e){return this.stream.on("close",e),bi.Disposable.create(()=>this.stream.off("close",e))}onError(e){return this.stream.on("error",e),bi.Disposable.create(()=>this.stream.off("error",e))}onEnd(e){return this.stream.on("end",e),bi.Disposable.create(()=>this.stream.off("end",e))}onData(e){return this.stream.on("data",e),bi.Disposable.create(()=>this.stream.off("data",e))}},Bg=class{constructor(e){this.stream=e}onClose(e){return this.stream.on("close",e),bi.Disposable.create(()=>this.stream.off("close",e))}onError(e){return this.stream.on("error",e),bi.Disposable.create(()=>this.stream.off("error",e))}onEnd(e){return this.stream.on("end",e),bi.Disposable.create(()=>this.stream.off("end",e))}write(e,r){return new Promise((n,i)=>{let s=o=>{o==null?n():i(o)};typeof e=="string"?this.stream.write(e,r,s):this.stream.write(e,s)})}end(){this.stream.end()}},bN=Object.freeze({messageBuffer:Object.freeze({create:t=>new sd(t)}),applicationJson:Object.freeze({encoder:Object.freeze({name:"application/json",encode:(t,e)=>{try{return Promise.resolve(Buffer.from(JSON.stringify(t,void 0,0),e.charset))}catch(r){return Promise.reject(r)}}}),decoder:Object.freeze({name:"application/json",decode:(t,e)=>{try{return t instanceof Buffer?Promise.resolve(JSON.parse(t.toString(e.charset))):Promise.resolve(JSON.parse(new vN.TextDecoder(e.charset).decode(t)))}catch(r){return Promise.reject(r)}}})}),stream:Object.freeze({asReadableStream:t=>new $g(t),asWritableStream:t=>new Bg(t)}),console,timer:Object.freeze({setTimeout(t,e,...r){let n=setTimeout(t,e,...r);return{dispose:()=>clearTimeout(n)}},setImmediate(t,...e){let r=setImmediate(t,...e);return{dispose:()=>clearImmediate(r)}},setInterval(t,e,...r){let n=setInterval(t,e,...r);return{dispose:()=>clearInterval(n)}}})});function Fg(){return bN}(function(t){function e(){bi.RAL.install(bN)}t.install=e})(Fg||(Fg={}));jg.default=Fg});var js=k(Ae=>{"use strict";var aF=Ae&&Ae.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(e,r);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,i)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),cF=Ae&&Ae.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&aF(e,t,r)};Object.defineProperty(Ae,"__esModule",{value:!0});Ae.createMessageConnection=Ae.createServerSocketTransport=Ae.createClientSocketTransport=Ae.createServerPipeTransport=Ae.createClientPipeTransport=Ae.generateRandomPipeName=Ae.StreamMessageWriter=Ae.StreamMessageReader=Ae.SocketMessageWriter=Ae.SocketMessageReader=Ae.PortMessageWriter=Ae.PortMessageReader=Ae.IPCMessageWriter=Ae.IPCMessageReader=void 0;var Ao=_N();Ao.default.install();var SN=require("path"),lF=require("os"),uF=require("crypto"),cd=require("net"),zr=id();cF(id(),Ae);var Ug=class extends zr.AbstractMessageReader{constructor(e){super(),this.process=e;let r=this.process;r.on("error",n=>this.fireError(n)),r.on("close",()=>this.fireClose())}listen(e){return this.process.on("message",e),zr.Disposable.create(()=>this.process.off("message",e))}};Ae.IPCMessageReader=Ug;var Hg=class extends zr.AbstractMessageWriter{constructor(e){super(),this.process=e,this.errorCount=0;let r=this.process;r.on("error",n=>this.fireError(n)),r.on("close",()=>this.fireClose)}write(e){try{return typeof this.process.send=="function"&&this.process.send(e,void 0,void 0,r=>{r?(this.errorCount++,this.handleError(r,e)):this.errorCount=0}),Promise.resolve()}catch(r){return this.handleError(r,e),Promise.reject(r)}}handleError(e,r){this.errorCount++,this.fireError(e,r,this.errorCount)}end(){}};Ae.IPCMessageWriter=Hg;var Vg=class extends zr.AbstractMessageReader{constructor(e){super(),this.onData=new zr.Emitter,e.on("close",()=>this.fireClose),e.on("error",r=>this.fireError(r)),e.on("message",r=>{this.onData.fire(r)})}listen(e){return this.onData.event(e)}};Ae.PortMessageReader=Vg;var zg=class extends zr.AbstractMessageWriter{constructor(e){super(),this.port=e,this.errorCount=0,e.on("close",()=>this.fireClose()),e.on("error",r=>this.fireError(r))}write(e){try{return this.port.postMessage(e),Promise.resolve()}catch(r){return this.handleError(r,e),Promise.reject(r)}}handleError(e,r){this.errorCount++,this.fireError(e,r,this.errorCount)}end(){}};Ae.PortMessageWriter=zg;var Bs=class extends zr.ReadableStreamMessageReader{constructor(e,r="utf-8"){super((0,Ao.default)().stream.asReadableStream(e),r)}};Ae.SocketMessageReader=Bs;var Fs=class extends zr.WriteableStreamMessageWriter{constructor(e,r){super((0,Ao.default)().stream.asWritableStream(e),r),this.socket=e}dispose(){super.dispose(),this.socket.destroy()}};Ae.SocketMessageWriter=Fs;var od=class extends zr.ReadableStreamMessageReader{constructor(e,r){super((0,Ao.default)().stream.asReadableStream(e),r)}};Ae.StreamMessageReader=od;var ad=class extends zr.WriteableStreamMessageWriter{constructor(e,r){super((0,Ao.default)().stream.asWritableStream(e),r)}};Ae.StreamMessageWriter=ad;var NN=process.env.XDG_RUNTIME_DIR,dF=new Map([["linux",107],["darwin",103]]);function fF(){let t=(0,uF.randomBytes)(21).toString("hex");if(process.platform==="win32")return`\\\\.\\pipe\\vscode-jsonrpc-${t}-sock`;let e;NN?e=SN.join(NN,`vscode-ipc-${t}.sock`):e=SN.join(lF.tmpdir(),`vscode-${t}.sock`);let r=dF.get(process.platform);return r!==void 0&&e.length>r&&(0,Ao.default)().console.warn(`WARNING: IPC handle "${e}" is longer than ${r} characters.`),e}Ae.generateRandomPipeName=fF;function pF(t,e="utf-8"){let r,n=new Promise((i,s)=>{r=i});return new Promise((i,s)=>{let o=(0,cd.createServer)(a=>{o.close(),r([new Bs(a,e),new Fs(a,e)])});o.on("error",s),o.listen(t,()=>{o.removeListener("error",s),i({onConnected:()=>n})})})}Ae.createClientPipeTransport=pF;function hF(t,e="utf-8"){let r=(0,cd.createConnection)(t);return[new Bs(r,e),new Fs(r,e)]}Ae.createServerPipeTransport=hF;function mF(t,e="utf-8"){let r,n=new Promise((i,s)=>{r=i});return new Promise((i,s)=>{let o=(0,cd.createServer)(a=>{o.close(),r([new Bs(a,e),new Fs(a,e)])});o.on("error",s),o.listen(t,"127.0.0.1",()=>{o.removeListener("error",s),i({onConnected:()=>n})})})}Ae.createClientSocketTransport=mF;function gF(t,e="utf-8"){let r=(0,cd.createConnection)(t,"127.0.0.1");return[new Bs(r,e),new Fs(r,e)]}Ae.createServerSocketTransport=gF;function yF(t){let e=t;return e.read!==void 0&&e.addListener!==void 0}function TF(t){let e=t;return e.write!==void 0&&e.addListener!==void 0}function vF(t,e,r,n){r||(r=zr.NullLogger);let i=yF(t)?new od(t):t,s=TF(e)?new ad(e):e;return zr.ConnectionStrategy.is(n)&&(n={connectionStrategy:n}),(0,zr.createMessageConnection)(i,s,r,n)}Ae.createMessageConnection=vF});var Wg=k((g6,kN)=>{"use strict";kN.exports=js()});var ud=k((RN,ld)=>{(function(t){if(typeof ld=="object"&&typeof ld.exports=="object"){var e=t(require,RN);e!==void 0&&(ld.exports=e)}else typeof define=="function"&&define.amd&&define(["require","exports"],t)})(function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TextDocument=e.EOL=e.WorkspaceFolder=e.InlineCompletionContext=e.SelectedCompletionInfo=e.InlineCompletionTriggerKind=e.InlineCompletionList=e.InlineCompletionItem=e.StringValue=e.InlayHint=e.InlayHintLabelPart=e.InlayHintKind=e.InlineValueContext=e.InlineValueEvaluatableExpression=e.InlineValueVariableLookup=e.InlineValueText=e.SemanticTokens=e.SemanticTokenModifiers=e.SemanticTokenTypes=e.SelectionRange=e.DocumentLink=e.FormattingOptions=e.CodeLens=e.CodeAction=e.CodeActionContext=e.CodeActionTriggerKind=e.CodeActionKind=e.DocumentSymbol=e.WorkspaceSymbol=e.SymbolInformation=e.SymbolTag=e.SymbolKind=e.DocumentHighlight=e.DocumentHighlightKind=e.SignatureInformation=e.ParameterInformation=e.Hover=e.MarkedString=e.CompletionList=e.CompletionItem=e.CompletionItemLabelDetails=e.InsertTextMode=e.InsertReplaceEdit=e.CompletionItemTag=e.InsertTextFormat=e.CompletionItemKind=e.MarkupContent=e.MarkupKind=e.TextDocumentItem=e.OptionalVersionedTextDocumentIdentifier=e.VersionedTextDocumentIdentifier=e.TextDocumentIdentifier=e.WorkspaceChange=e.WorkspaceEdit=e.DeleteFile=e.RenameFile=e.CreateFile=e.TextDocumentEdit=e.AnnotatedTextEdit=e.ChangeAnnotationIdentifier=e.ChangeAnnotation=e.TextEdit=e.Command=e.Diagnostic=e.CodeDescription=e.DiagnosticTag=e.DiagnosticSeverity=e.DiagnosticRelatedInformation=e.FoldingRange=e.FoldingRangeKind=e.ColorPresentation=e.ColorInformation=e.Color=e.LocationLink=e.Location=e.Range=e.Position=e.uinteger=e.integer=e.URI=e.DocumentUri=void 0;var r;(function(y){function w(E){return typeof E=="string"}y.is=w})(r||(e.DocumentUri=r={}));var n;(function(y){function w(E){return typeof E=="string"}y.is=w})(n||(e.URI=n={}));var i;(function(y){y.MIN_VALUE=-2147483648,y.MAX_VALUE=2147483647;function w(E){return typeof E=="number"&&y.MIN_VALUE<=E&&E<=y.MAX_VALUE}y.is=w})(i||(e.integer=i={}));var s;(function(y){y.MIN_VALUE=0,y.MAX_VALUE=2147483647;function w(E){return typeof E=="number"&&y.MIN_VALUE<=E&&E<=y.MAX_VALUE}y.is=w})(s||(e.uinteger=s={}));var o;(function(y){function w(b,m){return b===Number.MAX_VALUE&&(b=s.MAX_VALUE),m===Number.MAX_VALUE&&(m=s.MAX_VALUE),{line:b,character:m}}y.create=w;function E(b){var m=b;return A.objectLiteral(m)&&A.uinteger(m.line)&&A.uinteger(m.character)}y.is=E})(o||(e.Position=o={}));var a;(function(y){function w(b,m,C,q){if(A.uinteger(b)&&A.uinteger(m)&&A.uinteger(C)&&A.uinteger(q))return{start:o.create(b,m),end:o.create(C,q)};if(o.is(b)&&o.is(m))return{start:b,end:m};throw new Error("Range#create called with invalid arguments[".concat(b,", ").concat(m,", ").concat(C,", ").concat(q,"]"))}y.create=w;function E(b){var m=b;return A.objectLiteral(m)&&o.is(m.start)&&o.is(m.end)}y.is=E})(a||(e.Range=a={}));var c;(function(y){function w(b,m){return{uri:b,range:m}}y.create=w;function E(b){var m=b;return A.objectLiteral(m)&&a.is(m.range)&&(A.string(m.uri)||A.undefined(m.uri))}y.is=E})(c||(e.Location=c={}));var l;(function(y){function w(b,m,C,q){return{targetUri:b,targetRange:m,targetSelectionRange:C,originSelectionRange:q}}y.create=w;function E(b){var m=b;return A.objectLiteral(m)&&a.is(m.targetRange)&&A.string(m.targetUri)&&a.is(m.targetSelectionRange)&&(a.is(m.originSelectionRange)||A.undefined(m.originSelectionRange))}y.is=E})(l||(e.LocationLink=l={}));var u;(function(y){function w(b,m,C,q){return{red:b,green:m,blue:C,alpha:q}}y.create=w;function E(b){var m=b;return A.objectLiteral(m)&&A.numberRange(m.red,0,1)&&A.numberRange(m.green,0,1)&&A.numberRange(m.blue,0,1)&&A.numberRange(m.alpha,0,1)}y.is=E})(u||(e.Color=u={}));var d;(function(y){function w(b,m){return{range:b,color:m}}y.create=w;function E(b){var m=b;return A.objectLiteral(m)&&a.is(m.range)&&u.is(m.color)}y.is=E})(d||(e.ColorInformation=d={}));var f;(function(y){function w(b,m,C){return{label:b,textEdit:m,additionalTextEdits:C}}y.create=w;function E(b){var m=b;return A.objectLiteral(m)&&A.string(m.label)&&(A.undefined(m.textEdit)||D.is(m))&&(A.undefined(m.additionalTextEdits)||A.typedArray(m.additionalTextEdits,D.is))}y.is=E})(f||(e.ColorPresentation=f={}));var p;(function(y){y.Comment="comment",y.Imports="imports",y.Region="region"})(p||(e.FoldingRangeKind=p={}));var g;(function(y){function w(b,m,C,q,ye,Rt){var at={startLine:b,endLine:m};return A.defined(C)&&(at.startCharacter=C),A.defined(q)&&(at.endCharacter=q),A.defined(ye)&&(at.kind=ye),A.defined(Rt)&&(at.collapsedText=Rt),at}y.create=w;function E(b){var m=b;return A.objectLiteral(m)&&A.uinteger(m.startLine)&&A.uinteger(m.startLine)&&(A.undefined(m.startCharacter)||A.uinteger(m.startCharacter))&&(A.undefined(m.endCharacter)||A.uinteger(m.endCharacter))&&(A.undefined(m.kind)||A.string(m.kind))}y.is=E})(g||(e.FoldingRange=g={}));var h;(function(y){function w(b,m){return{location:b,message:m}}y.create=w;function E(b){var m=b;return A.defined(m)&&c.is(m.location)&&A.string(m.message)}y.is=E})(h||(e.DiagnosticRelatedInformation=h={}));var T;(function(y){y.Error=1,y.Warning=2,y.Information=3,y.Hint=4})(T||(e.DiagnosticSeverity=T={}));var S;(function(y){y.Unnecessary=1,y.Deprecated=2})(S||(e.DiagnosticTag=S={}));var _;(function(y){function w(E){var b=E;return A.objectLiteral(b)&&A.string(b.href)}y.is=w})(_||(e.CodeDescription=_={}));var v;(function(y){function w(b,m,C,q,ye,Rt){var at={range:b,message:m};return A.defined(C)&&(at.severity=C),A.defined(q)&&(at.code=q),A.defined(ye)&&(at.source=ye),A.defined(Rt)&&(at.relatedInformation=Rt),at}y.create=w;function E(b){var m,C=b;return A.defined(C)&&a.is(C.range)&&A.string(C.message)&&(A.number(C.severity)||A.undefined(C.severity))&&(A.integer(C.code)||A.string(C.code)||A.undefined(C.code))&&(A.undefined(C.codeDescription)||A.string((m=C.codeDescription)===null||m===void 0?void 0:m.href))&&(A.string(C.source)||A.undefined(C.source))&&(A.undefined(C.relatedInformation)||A.typedArray(C.relatedInformation,h.is))}y.is=E})(v||(e.Diagnostic=v={}));var R;(function(y){function w(b,m){for(var C=[],q=2;q<arguments.length;q++)C[q-2]=arguments[q];var ye={title:b,command:m};return A.defined(C)&&C.length>0&&(ye.arguments=C),ye}y.create=w;function E(b){var m=b;return A.defined(m)&&A.string(m.title)&&A.string(m.command)}y.is=E})(R||(e.Command=R={}));var D;(function(y){function w(C,q){return{range:C,newText:q}}y.replace=w;function E(C,q){return{range:{start:C,end:C},newText:q}}y.insert=E;function b(C){return{range:C,newText:""}}y.del=b;function m(C){var q=C;return A.objectLiteral(q)&&A.string(q.newText)&&a.is(q.range)}y.is=m})(D||(e.TextEdit=D={}));var B;(function(y){function w(b,m,C){var q={label:b};return m!==void 0&&(q.needsConfirmation=m),C!==void 0&&(q.description=C),q}y.create=w;function E(b){var m=b;return A.objectLiteral(m)&&A.string(m.label)&&(A.boolean(m.needsConfirmation)||m.needsConfirmation===void 0)&&(A.string(m.description)||m.description===void 0)}y.is=E})(B||(e.ChangeAnnotation=B={}));var M;(function(y){function w(E){var b=E;return A.string(b)}y.is=w})(M||(e.ChangeAnnotationIdentifier=M={}));var F;(function(y){function w(C,q,ye){return{range:C,newText:q,annotationId:ye}}y.replace=w;function E(C,q,ye){return{range:{start:C,end:C},newText:q,annotationId:ye}}y.insert=E;function b(C,q){return{range:C,newText:"",annotationId:q}}y.del=b;function m(C){var q=C;return D.is(q)&&(B.is(q.annotationId)||M.is(q.annotationId))}y.is=m})(F||(e.AnnotatedTextEdit=F={}));var ge;(function(y){function w(b,m){return{textDocument:b,edits:m}}y.create=w;function E(b){var m=b;return A.defined(m)&&xs.is(m.textDocument)&&Array.isArray(m.edits)}y.is=E})(ge||(e.TextDocumentEdit=ge={}));var Xe;(function(y){function w(b,m,C){var q={kind:"create",uri:b};return m!==void 0&&(m.overwrite!==void 0||m.ignoreIfExists!==void 0)&&(q.options=m),C!==void 0&&(q.annotationId=C),q}y.create=w;function E(b){var m=b;return m&&m.kind==="create"&&A.string(m.uri)&&(m.options===void 0||(m.options.overwrite===void 0||A.boolean(m.options.overwrite))&&(m.options.ignoreIfExists===void 0||A.boolean(m.options.ignoreIfExists)))&&(m.annotationId===void 0||M.is(m.annotationId))}y.is=E})(Xe||(e.CreateFile=Xe={}));var Ft;(function(y){function w(b,m,C,q){var ye={kind:"rename",oldUri:b,newUri:m};return C!==void 0&&(C.overwrite!==void 0||C.ignoreIfExists!==void 0)&&(ye.options=C),q!==void 0&&(ye.annotationId=q),ye}y.create=w;function E(b){var m=b;return m&&m.kind==="rename"&&A.string(m.oldUri)&&A.string(m.newUri)&&(m.options===void 0||(m.options.overwrite===void 0||A.boolean(m.options.overwrite))&&(m.options.ignoreIfExists===void 0||A.boolean(m.options.ignoreIfExists)))&&(m.annotationId===void 0||M.is(m.annotationId))}y.is=E})(Ft||(e.RenameFile=Ft={}));var ke;(function(y){function w(b,m,C){var q={kind:"delete",uri:b};return m!==void 0&&(m.recursive!==void 0||m.ignoreIfNotExists!==void 0)&&(q.options=m),C!==void 0&&(q.annotationId=C),q}y.create=w;function E(b){var m=b;return m&&m.kind==="delete"&&A.string(m.uri)&&(m.options===void 0||(m.options.recursive===void 0||A.boolean(m.options.recursive))&&(m.options.ignoreIfNotExists===void 0||A.boolean(m.options.ignoreIfNotExists)))&&(m.annotationId===void 0||M.is(m.annotationId))}y.is=E})(ke||(e.DeleteFile=ke={}));var Qr;(function(y){function w(E){var b=E;return b&&(b.changes!==void 0||b.documentChanges!==void 0)&&(b.documentChanges===void 0||b.documentChanges.every(function(m){return A.string(m.kind)?Xe.is(m)||Ft.is(m)||ke.is(m):ge.is(m)}))}y.is=w})(Qr||(e.WorkspaceEdit=Qr={}));var $i=function(){function y(w,E){this.edits=w,this.changeAnnotations=E}return y.prototype.insert=function(w,E,b){var m,C;if(b===void 0?m=D.insert(w,E):M.is(b)?(C=b,m=F.insert(w,E,b)):(this.assertChangeAnnotations(this.changeAnnotations),C=this.changeAnnotations.manage(b),m=F.insert(w,E,C)),this.edits.push(m),C!==void 0)return C},y.prototype.replace=function(w,E,b){var m,C;if(b===void 0?m=D.replace(w,E):M.is(b)?(C=b,m=F.replace(w,E,b)):(this.assertChangeAnnotations(this.changeAnnotations),C=this.changeAnnotations.manage(b),m=F.replace(w,E,C)),this.edits.push(m),C!==void 0)return C},y.prototype.delete=function(w,E){var b,m;if(E===void 0?b=D.del(w):M.is(E)?(m=E,b=F.del(w,E)):(this.assertChangeAnnotations(this.changeAnnotations),m=this.changeAnnotations.manage(E),b=F.del(w,m)),this.edits.push(b),m!==void 0)return m},y.prototype.add=function(w){this.edits.push(w)},y.prototype.all=function(){return this.edits},y.prototype.clear=function(){this.edits.splice(0,this.edits.length)},y.prototype.assertChangeAnnotations=function(w){if(w===void 0)throw new Error("Text edit change is not configured to manage change annotations.")},y}(),Ru=function(){function y(w){this._annotations=w===void 0?Object.create(null):w,this._counter=0,this._size=0}return y.prototype.all=function(){return this._annotations},Object.defineProperty(y.prototype,"size",{get:function(){return this._size},enumerable:!1,configurable:!0}),y.prototype.manage=function(w,E){var b;if(M.is(w)?b=w:(b=this.nextId(),E=w),this._annotations[b]!==void 0)throw new Error("Id ".concat(b," is already in use."));if(E===void 0)throw new Error("No annotation provided for id ".concat(b));return this._annotations[b]=E,this._size++,b},y.prototype.nextId=function(){return this._counter++,this._counter.toString()},y}(),Mm=function(){function y(w){var E=this;this._textEditChanges=Object.create(null),w!==void 0?(this._workspaceEdit=w,w.documentChanges?(this._changeAnnotations=new Ru(w.changeAnnotations),w.changeAnnotations=this._changeAnnotations.all(),w.documentChanges.forEach(function(b){if(ge.is(b)){var m=new $i(b.edits,E._changeAnnotations);E._textEditChanges[b.textDocument.uri]=m}})):w.changes&&Object.keys(w.changes).forEach(function(b){var m=new $i(w.changes[b]);E._textEditChanges[b]=m})):this._workspaceEdit={}}return Object.defineProperty(y.prototype,"edit",{get:function(){return this.initDocumentChanges(),this._changeAnnotations!==void 0&&(this._changeAnnotations.size===0?this._workspaceEdit.changeAnnotations=void 0:this._workspaceEdit.changeAnnotations=this._changeAnnotations.all()),this._workspaceEdit},enumerable:!1,configurable:!0}),y.prototype.getTextEditChange=function(w){if(xs.is(w)){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");var E={uri:w.uri,version:w.version},b=this._textEditChanges[E.uri];if(!b){var m=[],C={textDocument:E,edits:m};this._workspaceEdit.documentChanges.push(C),b=new $i(m,this._changeAnnotations),this._textEditChanges[E.uri]=b}return b}else{if(this.initChanges(),this._workspaceEdit.changes===void 0)throw new Error("Workspace edit is not configured for normal text edit changes.");var b=this._textEditChanges[w];if(!b){var m=[];this._workspaceEdit.changes[w]=m,b=new $i(m),this._textEditChanges[w]=b}return b}},y.prototype.initDocumentChanges=function(){this._workspaceEdit.documentChanges===void 0&&this._workspaceEdit.changes===void 0&&(this._changeAnnotations=new Ru,this._workspaceEdit.documentChanges=[],this._workspaceEdit.changeAnnotations=this._changeAnnotations.all())},y.prototype.initChanges=function(){this._workspaceEdit.documentChanges===void 0&&this._workspaceEdit.changes===void 0&&(this._workspaceEdit.changes=Object.create(null))},y.prototype.createFile=function(w,E,b){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");var m;B.is(E)||M.is(E)?m=E:b=E;var C,q;if(m===void 0?C=Xe.create(w,b):(q=M.is(m)?m:this._changeAnnotations.manage(m),C=Xe.create(w,b,q)),this._workspaceEdit.documentChanges.push(C),q!==void 0)return q},y.prototype.renameFile=function(w,E,b,m){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");var C;B.is(b)||M.is(b)?C=b:m=b;var q,ye;if(C===void 0?q=Ft.create(w,E,m):(ye=M.is(C)?C:this._changeAnnotations.manage(C),q=Ft.create(w,E,m,ye)),this._workspaceEdit.documentChanges.push(q),ye!==void 0)return ye},y.prototype.deleteFile=function(w,E,b){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");var m;B.is(E)||M.is(E)?m=E:b=E;var C,q;if(m===void 0?C=ke.create(w,b):(q=M.is(m)?m:this._changeAnnotations.manage(m),C=ke.create(w,b,q)),this._workspaceEdit.documentChanges.push(C),q!==void 0)return q},y}();e.WorkspaceChange=Mm;var Pu;(function(y){function w(b){return{uri:b}}y.create=w;function E(b){var m=b;return A.defined(m)&&A.string(m.uri)}y.is=E})(Pu||(e.TextDocumentIdentifier=Pu={}));var Ja;(function(y){function w(b,m){return{uri:b,version:m}}y.create=w;function E(b){var m=b;return A.defined(m)&&A.string(m.uri)&&A.integer(m.version)}y.is=E})(Ja||(e.VersionedTextDocumentIdentifier=Ja={}));var xs;(function(y){function w(b,m){return{uri:b,version:m}}y.create=w;function E(b){var m=b;return A.defined(m)&&A.string(m.uri)&&(m.version===null||A.integer(m.version))}y.is=E})(xs||(e.OptionalVersionedTextDocumentIdentifier=xs={}));var gi;(function(y){function w(b,m,C,q){return{uri:b,languageId:m,version:C,text:q}}y.create=w;function E(b){var m=b;return A.defined(m)&&A.string(m.uri)&&A.string(m.languageId)&&A.integer(m.version)&&A.string(m.text)}y.is=E})(gi||(e.TextDocumentItem=gi={}));var vo;(function(y){y.PlainText="plaintext",y.Markdown="markdown";function w(E){var b=E;return b===y.PlainText||b===y.Markdown}y.is=w})(vo||(e.MarkupKind=vo={}));var Ls;(function(y){function w(E){var b=E;return A.objectLiteral(E)&&vo.is(b.kind)&&A.string(b.value)}y.is=w})(Ls||(e.MarkupContent=Ls={}));var wu;(function(y){y.Text=1,y.Method=2,y.Function=3,y.Constructor=4,y.Field=5,y.Variable=6,y.Class=7,y.Interface=8,y.Module=9,y.Property=10,y.Unit=11,y.Value=12,y.Enum=13,y.Keyword=14,y.Snippet=15,y.Color=16,y.File=17,y.Reference=18,y.Folder=19,y.EnumMember=20,y.Constant=21,y.Struct=22,y.Event=23,y.Operator=24,y.TypeParameter=25})(wu||(e.CompletionItemKind=wu={}));var Qa;(function(y){y.PlainText=1,y.Snippet=2})(Qa||(e.InsertTextFormat=Qa={}));var Za;(function(y){y.Deprecated=1})(Za||(e.CompletionItemTag=Za={}));var Eu;(function(y){function w(b,m,C){return{newText:b,insert:m,replace:C}}y.create=w;function E(b){var m=b;return m&&A.string(m.newText)&&a.is(m.insert)&&a.is(m.replace)}y.is=E})(Eu||(e.InsertReplaceEdit=Eu={}));var Du;(function(y){y.asIs=1,y.adjustIndentation=2})(Du||(e.InsertTextMode=Du={}));var Cu;(function(y){function w(E){var b=E;return b&&(A.string(b.detail)||b.detail===void 0)&&(A.string(b.description)||b.description===void 0)}y.is=w})(Cu||(e.CompletionItemLabelDetails=Cu={}));var Au;(function(y){function w(E){return{label:E}}y.create=w})(Au||(e.CompletionItem=Au={}));var Iu;(function(y){function w(E,b){return{items:E||[],isIncomplete:!!b}}y.create=w})(Iu||(e.CompletionList=Iu={}));var bo;(function(y){function w(b){return b.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")}y.fromPlainText=w;function E(b){var m=b;return A.string(m)||A.objectLiteral(m)&&A.string(m.language)&&A.string(m.value)}y.is=E})(bo||(e.MarkedString=bo={}));var Pn;(function(y){function w(E){var b=E;return!!b&&A.objectLiteral(b)&&(Ls.is(b.contents)||bo.is(b.contents)||A.typedArray(b.contents,bo.is))&&(E.range===void 0||a.is(E.range))}y.is=w})(Pn||(e.Hover=Pn={}));var Ou;(function(y){function w(E,b){return b?{label:E,documentation:b}:{label:E}}y.create=w})(Ou||(e.ParameterInformation=Ou={}));var Mu;(function(y){function w(E,b){for(var m=[],C=2;C<arguments.length;C++)m[C-2]=arguments[C];var q={label:E};return A.defined(b)&&(q.documentation=b),A.defined(m)?q.parameters=m:q.parameters=[],q}y.create=w})(Mu||(e.SignatureInformation=Mu={}));var qs;(function(y){y.Text=1,y.Read=2,y.Write=3})(qs||(e.DocumentHighlightKind=qs={}));var xu;(function(y){function w(E,b){var m={range:E};return A.number(b)&&(m.kind=b),m}y.create=w})(xu||(e.DocumentHighlight=xu={}));var _o;(function(y){y.File=1,y.Module=2,y.Namespace=3,y.Package=4,y.Class=5,y.Method=6,y.Property=7,y.Field=8,y.Constructor=9,y.Enum=10,y.Interface=11,y.Function=12,y.Variable=13,y.Constant=14,y.String=15,y.Number=16,y.Boolean=17,y.Array=18,y.Object=19,y.Key=20,y.Null=21,y.EnumMember=22,y.Struct=23,y.Event=24,y.Operator=25,y.TypeParameter=26})(_o||(e.SymbolKind=_o={}));var Lu;(function(y){y.Deprecated=1})(Lu||(e.SymbolTag=Lu={}));var yi;(function(y){function w(E,b,m,C,q){var ye={name:E,kind:b,location:{uri:C,range:m}};return q&&(ye.containerName=q),ye}y.create=w})(yi||(e.SymbolInformation=yi={}));var Bi;(function(y){function w(E,b,m,C){return C!==void 0?{name:E,kind:b,location:{uri:m,range:C}}:{name:E,kind:b,location:{uri:m}}}y.create=w})(Bi||(e.WorkspaceSymbol=Bi={}));var qu;(function(y){function w(b,m,C,q,ye,Rt){var at={name:b,detail:m,kind:C,range:q,selectionRange:ye};return Rt!==void 0&&(at.children=Rt),at}y.create=w;function E(b){var m=b;return m&&A.string(m.name)&&A.number(m.kind)&&a.is(m.range)&&a.is(m.selectionRange)&&(m.detail===void 0||A.string(m.detail))&&(m.deprecated===void 0||A.boolean(m.deprecated))&&(m.children===void 0||Array.isArray(m.children))&&(m.tags===void 0||Array.isArray(m.tags))}y.is=E})(qu||(e.DocumentSymbol=qu={}));var $u;(function(y){y.Empty="",y.QuickFix="quickfix",y.Refactor="refactor",y.RefactorExtract="refactor.extract",y.RefactorInline="refactor.inline",y.RefactorRewrite="refactor.rewrite",y.Source="source",y.SourceOrganizeImports="source.organizeImports",y.SourceFixAll="source.fixAll"})($u||(e.CodeActionKind=$u={}));var Kn;(function(y){y.Invoked=1,y.Automatic=2})(Kn||(e.CodeActionTriggerKind=Kn={}));var ec;(function(y){function w(b,m,C){var q={diagnostics:b};return m!=null&&(q.only=m),C!=null&&(q.triggerKind=C),q}y.create=w;function E(b){var m=b;return A.defined(m)&&A.typedArray(m.diagnostics,v.is)&&(m.only===void 0||A.typedArray(m.only,A.string))&&(m.triggerKind===void 0||m.triggerKind===Kn.Invoked||m.triggerKind===Kn.Automatic)}y.is=E})(ec||(e.CodeActionContext=ec={}));var tc;(function(y){function w(b,m,C){var q={title:b},ye=!0;return typeof m=="string"?(ye=!1,q.kind=m):R.is(m)?q.command=m:q.edit=m,ye&&C!==void 0&&(q.kind=C),q}y.create=w;function E(b){var m=b;return m&&A.string(m.title)&&(m.diagnostics===void 0||A.typedArray(m.diagnostics,v.is))&&(m.kind===void 0||A.string(m.kind))&&(m.edit!==void 0||m.command!==void 0)&&(m.command===void 0||R.is(m.command))&&(m.isPreferred===void 0||A.boolean(m.isPreferred))&&(m.edit===void 0||Qr.is(m.edit))}y.is=E})(tc||(e.CodeAction=tc={}));var So;(function(y){function w(b,m){var C={range:b};return A.defined(m)&&(C.data=m),C}y.create=w;function E(b){var m=b;return A.defined(m)&&a.is(m.range)&&(A.undefined(m.command)||R.is(m.command))}y.is=E})(So||(e.CodeLens=So={}));var rc;(function(y){function w(b,m){return{tabSize:b,insertSpaces:m}}y.create=w;function E(b){var m=b;return A.defined(m)&&A.uinteger(m.tabSize)&&A.boolean(m.insertSpaces)}y.is=E})(rc||(e.FormattingOptions=rc={}));var Ti;(function(y){function w(b,m,C){return{range:b,target:m,data:C}}y.create=w;function E(b){var m=b;return A.defined(m)&&a.is(m.range)&&(A.undefined(m.target)||A.string(m.target))}y.is=E})(Ti||(e.DocumentLink=Ti={}));var P;(function(y){function w(b,m){return{range:b,parent:m}}y.create=w;function E(b){var m=b;return A.objectLiteral(m)&&a.is(m.range)&&(m.parent===void 0||y.is(m.parent))}y.is=E})(P||(e.SelectionRange=P={}));var L;(function(y){y.namespace="namespace",y.type="type",y.class="class",y.enum="enum",y.interface="interface",y.struct="struct",y.typeParameter="typeParameter",y.parameter="parameter",y.variable="variable",y.property="property",y.enumMember="enumMember",y.event="event",y.function="function",y.method="method",y.macro="macro",y.keyword="keyword",y.modifier="modifier",y.comment="comment",y.string="string",y.number="number",y.regexp="regexp",y.operator="operator",y.decorator="decorator"})(L||(e.SemanticTokenTypes=L={}));var G;(function(y){y.declaration="declaration",y.definition="definition",y.readonly="readonly",y.static="static",y.deprecated="deprecated",y.abstract="abstract",y.async="async",y.modification="modification",y.documentation="documentation",y.defaultLibrary="defaultLibrary"})(G||(e.SemanticTokenModifiers=G={}));var re;(function(y){function w(E){var b=E;return A.objectLiteral(b)&&(b.resultId===void 0||typeof b.resultId=="string")&&Array.isArray(b.data)&&(b.data.length===0||typeof b.data[0]=="number")}y.is=w})(re||(e.SemanticTokens=re={}));var Je;(function(y){function w(b,m){return{range:b,text:m}}y.create=w;function E(b){var m=b;return m!=null&&a.is(m.range)&&A.string(m.text)}y.is=E})(Je||(e.InlineValueText=Je={}));var We;(function(y){function w(b,m,C){return{range:b,variableName:m,caseSensitiveLookup:C}}y.create=w;function E(b){var m=b;return m!=null&&a.is(m.range)&&A.boolean(m.caseSensitiveLookup)&&(A.string(m.variableName)||m.variableName===void 0)}y.is=E})(We||(e.InlineValueVariableLookup=We={}));var dt;(function(y){function w(b,m){return{range:b,expression:m}}y.create=w;function E(b){var m=b;return m!=null&&a.is(m.range)&&(A.string(m.expression)||m.expression===void 0)}y.is=E})(dt||(e.InlineValueEvaluatableExpression=dt={}));var yt;(function(y){function w(b,m){return{frameId:b,stoppedLocation:m}}y.create=w;function E(b){var m=b;return A.defined(m)&&a.is(b.stoppedLocation)}y.is=E})(yt||(e.InlineValueContext=yt={}));var Re;(function(y){y.Type=1,y.Parameter=2;function w(E){return E===1||E===2}y.is=w})(Re||(e.InlayHintKind=Re={}));var tt;(function(y){function w(b){return{value:b}}y.create=w;function E(b){var m=b;return A.objectLiteral(m)&&(m.tooltip===void 0||A.string(m.tooltip)||Ls.is(m.tooltip))&&(m.location===void 0||c.is(m.location))&&(m.command===void 0||R.is(m.command))}y.is=E})(tt||(e.InlayHintLabelPart=tt={}));var je;(function(y){function w(b,m,C){var q={position:b,label:m};return C!==void 0&&(q.kind=C),q}y.create=w;function E(b){var m=b;return A.objectLiteral(m)&&o.is(m.position)&&(A.string(m.label)||A.typedArray(m.label,tt.is))&&(m.kind===void 0||Re.is(m.kind))&&m.textEdits===void 0||A.typedArray(m.textEdits,D.is)&&(m.tooltip===void 0||A.string(m.tooltip)||Ls.is(m.tooltip))&&(m.paddingLeft===void 0||A.boolean(m.paddingLeft))&&(m.paddingRight===void 0||A.boolean(m.paddingRight))}y.is=E})(je||(e.InlayHint=je={}));var kt;(function(y){function w(E){return{kind:"snippet",value:E}}y.createSnippet=w})(kt||(e.StringValue=kt={}));var Vt;(function(y){function w(E,b,m,C){return{insertText:E,filterText:b,range:m,command:C}}y.create=w})(Vt||(e.InlineCompletionItem=Vt={}));var Hr;(function(y){function w(E){return{items:E}}y.create=w})(Hr||(e.InlineCompletionList=Hr={}));var Bu;(function(y){y.Invoked=0,y.Automatic=1})(Bu||(e.InlineCompletionTriggerKind=Bu={}));var jS;(function(y){function w(E,b){return{range:E,text:b}}y.create=w})(jS||(e.SelectedCompletionInfo=jS={}));var US;(function(y){function w(E,b){return{triggerKind:E,selectedCompletionInfo:b}}y.create=w})(US||(e.InlineCompletionContext=US={}));var HS;(function(y){function w(E){var b=E;return A.objectLiteral(b)&&n.is(b.uri)&&A.string(b.name)}y.is=w})(HS||(e.WorkspaceFolder=HS={})),e.EOL=[`
32
+ `)),L){let re=P.error?` Request failed: ${P.error.message} (${P.error.code}).`:"";D.log(`Received response '${L.method} - (${P.id})' in ${Date.now()-L.timerStart}ms.${re}`,G)}else D.log(`Received response ${P.id} without active response promise.`,G)}else yi("receive-response",P)}function yi(P,L){if(!D||v===Ve.Off)return;let G={isLSPMessage:!0,type:P,message:L,timestamp:Date.now()};D.log(G)}function Bi(){if(xs())throw new Co(ac.Closed,"Connection is closed.");if(gi())throw new Co(ac.Disposed,"Connection is disposed.")}function qu(){if(Ja())throw new Co(ac.AlreadyListening,"Connection is already listening")}function $u(){if(!Ja())throw new Error("Call listen() first.")}function Kn(P){return P===void 0?null:P}function ec(P){if(P!==null)return P}function tc(P){return P!=null&&!Array.isArray(P)&&typeof P=="object"}function So(P,L){switch(P){case fe.ParameterStructures.auto:return tc(L)?ec(L):[Kn(L)];case fe.ParameterStructures.byName:if(!tc(L))throw new Error("Received parameters by name but param is not an object literal.");return ec(L);case fe.ParameterStructures.byPosition:return[Kn(L)];default:throw new Error(`Unknown parameter structure ${P.toString()}`)}}function rc(P,L){let G,re=P.numberOfParams;switch(re){case 0:G=void 0;break;case 1:G=So(P.parameterStructures,L[0]);break;default:G=[];for(let Je=0;Je<L.length&&Je<re;Je++)G.push(Kn(L[Je]));if(L.length<re)for(let Je=L.length;Je<re;Je++)G.push(null);break}return G}let Ti={sendNotification:(P,...L)=>{Bi();let G,re;if(bt.string(P)){G=P;let We=L[0],dt=0,yt=fe.ParameterStructures.auto;fe.ParameterStructures.is(We)&&(dt=1,yt=We);let Re=L.length,tt=Re-dt;switch(tt){case 0:re=void 0;break;case 1:re=So(yt,L[dt]);break;default:if(yt===fe.ParameterStructures.byName)throw new Error(`Received ${tt} parameters for 'by Name' notification parameter structure.`);re=L.slice(dt,Re).map(je=>Kn(je));break}}else{let We=L;G=P.method,re=rc(P,We)}let Je={jsonrpc:c,method:G,params:re};return Mu(Je),e.write(Je).catch(We=>{throw i.error("Sending notification failed."),We})},onNotification:(P,L)=>{Bi();let G;return bt.func(P)?d=P:L&&(bt.string(P)?(G=P,f.set(P,{type:void 0,handler:L})):(G=P.method,f.set(P.method,{type:P,handler:L}))),{dispose:()=>{G!==void 0?f.delete(G):d=void 0}}},onProgress:(P,L,G)=>{if(p.has(L))throw new Error(`Progress handler for token ${L} already registered`);return p.set(L,G),{dispose:()=>{p.delete(L)}}},sendProgress:(P,L,G)=>Ti.sendNotification(oc.type,{token:L,value:G}),onUnhandledProgress:Xe.event,sendRequest:(P,...L)=>{Bi(),$u();let G,re,Je;if(bt.string(P)){G=P;let Re=L[0],tt=L[L.length-1],je=0,kt=fe.ParameterStructures.auto;fe.ParameterStructures.is(Re)&&(je=1,kt=Re);let Vt=L.length;Eg.CancellationToken.is(tt)&&(Vt=Vt-1,Je=tt);let Vr=Vt-je;switch(Vr){case 0:re=void 0;break;case 1:re=So(kt,L[je]);break;default:if(kt===fe.ParameterStructures.byName)throw new Error(`Received ${Vr} parameters for 'by Name' request parameter structure.`);re=L.slice(je,Vt).map(Bu=>Kn(Bu));break}}else{let Re=L;G=P.method,re=rc(P,Re);let tt=P.numberOfParams;Je=Eg.CancellationToken.is(Re[tt])?Re[tt]:void 0}let We=s++,dt;Je&&(dt=Je.onCancellationRequested(()=>{let Re=ke.sender.sendCancellation(Ti,We);return Re===void 0?(i.log(`Received no promise from cancellation strategy when cancelling id ${We}`),Promise.resolve()):Re.catch(()=>{i.log(`Sending cancellation messages for id ${We} failed`)})}));let yt={jsonrpc:c,id:We,method:G,params:re};return Ou(yt),typeof ke.sender.enableCancellation=="function"&&ke.sender.enableCancellation(yt),new Promise(async(Re,tt)=>{let je=Vr=>{Re(Vr),ke.sender.cleanup(We),dt?.dispose()},kt=Vr=>{tt(Vr),ke.sender.cleanup(We),dt?.dispose()},Vt={method:G,timerStart:Date.now(),resolve:je,reject:kt};try{await e.write(yt),T.set(We,Vt)}catch(Vr){throw i.error("Sending request failed."),Vt.reject(new fe.ResponseError(fe.ErrorCodes.MessageWriteError,Vr.message?Vr.message:"Unknown reason")),Vr}})},onRequest:(P,L)=>{Bi();let G=null;return Ag.is(P)?(G=void 0,l=P):bt.string(P)?(G=null,L!==void 0&&(G=P,u.set(P,{handler:L,type:void 0}))):L!==void 0&&(G=P.method,u.set(P.method,{type:P,handler:L})),{dispose:()=>{G!==null&&(G!==void 0?u.delete(G):l=void 0)}}},hasPendingResponse:()=>T.size>0,trace:async(P,L,G)=>{let re=!1,Je=zr.Text;G!==void 0&&(bt.boolean(G)?re=G:(re=G.sendNotification||!1,Je=G.traceFormat||zr.Text)),v=P,R=Je,v===Ve.Off?D=void 0:D=L,re&&!xs()&&!gi()&&await Ti.sendNotification(Ig.type,{value:Ve.toString(P)})},onError:M.event,onClose:F.event,onUnhandledNotification:ge.event,onDispose:Ft.event,end:()=>{e.end()},dispose:()=>{if(gi())return;B=Dn.Disposed,Ft.fire(void 0);let P=new fe.ResponseError(fe.ErrorCodes.PendingResponseRejected,"Pending response rejected since connection got disposed");for(let L of T.values())L.reject(P);T=new Map,_=new Map,S=new Set,h=new fN.LinkedMap,bt.func(e.dispose)&&e.dispose(),bt.func(t.dispose)&&t.dispose()},listen:()=>{Bi(),qu(),B=Dn.Listening,t.listen(Du)},inspect:()=>{(0,dN.default)().console.log("inspect")}};return Ti.onNotification(Qu.type,P=>{if(v===Ve.Off||!D)return;let L=v===Ve.Verbose||v===Ve.Compact;D.log(P.message,L?P.verbose:void 0)}),Ti.onNotification(oc.type,P=>{let L=p.get(P.token);L?L(P.value):Xe.fire(P)}),Ti}Te.createMessageConnection=nF});var id=k(O=>{"use strict";Object.defineProperty(O,"__esModule",{value:!0});O.ProgressType=O.ProgressToken=O.createMessageConnection=O.NullLogger=O.ConnectionOptions=O.ConnectionStrategy=O.AbstractMessageBuffer=O.WriteableStreamMessageWriter=O.AbstractMessageWriter=O.MessageWriter=O.ReadableStreamMessageReader=O.AbstractMessageReader=O.MessageReader=O.SharedArrayReceiverStrategy=O.SharedArraySenderStrategy=O.CancellationToken=O.CancellationTokenSource=O.Emitter=O.Event=O.Disposable=O.LRUCache=O.Touch=O.LinkedMap=O.ParameterStructures=O.NotificationType9=O.NotificationType8=O.NotificationType7=O.NotificationType6=O.NotificationType5=O.NotificationType4=O.NotificationType3=O.NotificationType2=O.NotificationType1=O.NotificationType0=O.NotificationType=O.ErrorCodes=O.ResponseError=O.RequestType9=O.RequestType8=O.RequestType7=O.RequestType6=O.RequestType5=O.RequestType4=O.RequestType3=O.RequestType2=O.RequestType1=O.RequestType0=O.RequestType=O.Message=O.RAL=void 0;O.MessageStrategy=O.CancellationStrategy=O.CancellationSenderStrategy=O.CancellationReceiverStrategy=O.ConnectionError=O.ConnectionErrors=O.LogTraceNotification=O.SetTraceNotification=O.TraceFormat=O.TraceValues=O.Trace=void 0;var ct=og();Object.defineProperty(O,"Message",{enumerable:!0,get:function(){return ct.Message}});Object.defineProperty(O,"RequestType",{enumerable:!0,get:function(){return ct.RequestType}});Object.defineProperty(O,"RequestType0",{enumerable:!0,get:function(){return ct.RequestType0}});Object.defineProperty(O,"RequestType1",{enumerable:!0,get:function(){return ct.RequestType1}});Object.defineProperty(O,"RequestType2",{enumerable:!0,get:function(){return ct.RequestType2}});Object.defineProperty(O,"RequestType3",{enumerable:!0,get:function(){return ct.RequestType3}});Object.defineProperty(O,"RequestType4",{enumerable:!0,get:function(){return ct.RequestType4}});Object.defineProperty(O,"RequestType5",{enumerable:!0,get:function(){return ct.RequestType5}});Object.defineProperty(O,"RequestType6",{enumerable:!0,get:function(){return ct.RequestType6}});Object.defineProperty(O,"RequestType7",{enumerable:!0,get:function(){return ct.RequestType7}});Object.defineProperty(O,"RequestType8",{enumerable:!0,get:function(){return ct.RequestType8}});Object.defineProperty(O,"RequestType9",{enumerable:!0,get:function(){return ct.RequestType9}});Object.defineProperty(O,"ResponseError",{enumerable:!0,get:function(){return ct.ResponseError}});Object.defineProperty(O,"ErrorCodes",{enumerable:!0,get:function(){return ct.ErrorCodes}});Object.defineProperty(O,"NotificationType",{enumerable:!0,get:function(){return ct.NotificationType}});Object.defineProperty(O,"NotificationType0",{enumerable:!0,get:function(){return ct.NotificationType0}});Object.defineProperty(O,"NotificationType1",{enumerable:!0,get:function(){return ct.NotificationType1}});Object.defineProperty(O,"NotificationType2",{enumerable:!0,get:function(){return ct.NotificationType2}});Object.defineProperty(O,"NotificationType3",{enumerable:!0,get:function(){return ct.NotificationType3}});Object.defineProperty(O,"NotificationType4",{enumerable:!0,get:function(){return ct.NotificationType4}});Object.defineProperty(O,"NotificationType5",{enumerable:!0,get:function(){return ct.NotificationType5}});Object.defineProperty(O,"NotificationType6",{enumerable:!0,get:function(){return ct.NotificationType6}});Object.defineProperty(O,"NotificationType7",{enumerable:!0,get:function(){return ct.NotificationType7}});Object.defineProperty(O,"NotificationType8",{enumerable:!0,get:function(){return ct.NotificationType8}});Object.defineProperty(O,"NotificationType9",{enumerable:!0,get:function(){return ct.NotificationType9}});Object.defineProperty(O,"ParameterStructures",{enumerable:!0,get:function(){return ct.ParameterStructures}});var xg=cg();Object.defineProperty(O,"LinkedMap",{enumerable:!0,get:function(){return xg.LinkedMap}});Object.defineProperty(O,"LRUCache",{enumerable:!0,get:function(){return xg.LRUCache}});Object.defineProperty(O,"Touch",{enumerable:!0,get:function(){return xg.Touch}});var iF=eN();Object.defineProperty(O,"Disposable",{enumerable:!0,get:function(){return iF.Disposable}});var gN=Po();Object.defineProperty(O,"Event",{enumerable:!0,get:function(){return gN.Event}});Object.defineProperty(O,"Emitter",{enumerable:!0,get:function(){return gN.Emitter}});var yN=Gu();Object.defineProperty(O,"CancellationTokenSource",{enumerable:!0,get:function(){return yN.CancellationTokenSource}});Object.defineProperty(O,"CancellationToken",{enumerable:!0,get:function(){return yN.CancellationToken}});var TN=rN();Object.defineProperty(O,"SharedArraySenderStrategy",{enumerable:!0,get:function(){return TN.SharedArraySenderStrategy}});Object.defineProperty(O,"SharedArrayReceiverStrategy",{enumerable:!0,get:function(){return TN.SharedArrayReceiverStrategy}});var Lg=iN();Object.defineProperty(O,"MessageReader",{enumerable:!0,get:function(){return Lg.MessageReader}});Object.defineProperty(O,"AbstractMessageReader",{enumerable:!0,get:function(){return Lg.AbstractMessageReader}});Object.defineProperty(O,"ReadableStreamMessageReader",{enumerable:!0,get:function(){return Lg.ReadableStreamMessageReader}});var qg=lN();Object.defineProperty(O,"MessageWriter",{enumerable:!0,get:function(){return qg.MessageWriter}});Object.defineProperty(O,"AbstractMessageWriter",{enumerable:!0,get:function(){return qg.AbstractMessageWriter}});Object.defineProperty(O,"WriteableStreamMessageWriter",{enumerable:!0,get:function(){return qg.WriteableStreamMessageWriter}});var sF=uN();Object.defineProperty(O,"AbstractMessageBuffer",{enumerable:!0,get:function(){return sF.AbstractMessageBuffer}});var Jt=mN();Object.defineProperty(O,"ConnectionStrategy",{enumerable:!0,get:function(){return Jt.ConnectionStrategy}});Object.defineProperty(O,"ConnectionOptions",{enumerable:!0,get:function(){return Jt.ConnectionOptions}});Object.defineProperty(O,"NullLogger",{enumerable:!0,get:function(){return Jt.NullLogger}});Object.defineProperty(O,"createMessageConnection",{enumerable:!0,get:function(){return Jt.createMessageConnection}});Object.defineProperty(O,"ProgressToken",{enumerable:!0,get:function(){return Jt.ProgressToken}});Object.defineProperty(O,"ProgressType",{enumerable:!0,get:function(){return Jt.ProgressType}});Object.defineProperty(O,"Trace",{enumerable:!0,get:function(){return Jt.Trace}});Object.defineProperty(O,"TraceValues",{enumerable:!0,get:function(){return Jt.TraceValues}});Object.defineProperty(O,"TraceFormat",{enumerable:!0,get:function(){return Jt.TraceFormat}});Object.defineProperty(O,"SetTraceNotification",{enumerable:!0,get:function(){return Jt.SetTraceNotification}});Object.defineProperty(O,"LogTraceNotification",{enumerable:!0,get:function(){return Jt.LogTraceNotification}});Object.defineProperty(O,"ConnectionErrors",{enumerable:!0,get:function(){return Jt.ConnectionErrors}});Object.defineProperty(O,"ConnectionError",{enumerable:!0,get:function(){return Jt.ConnectionError}});Object.defineProperty(O,"CancellationReceiverStrategy",{enumerable:!0,get:function(){return Jt.CancellationReceiverStrategy}});Object.defineProperty(O,"CancellationSenderStrategy",{enumerable:!0,get:function(){return Jt.CancellationSenderStrategy}});Object.defineProperty(O,"CancellationStrategy",{enumerable:!0,get:function(){return Jt.CancellationStrategy}});Object.defineProperty(O,"MessageStrategy",{enumerable:!0,get:function(){return Jt.MessageStrategy}});var oF=ji();O.RAL=oF.default});var _N=k(jg=>{"use strict";Object.defineProperty(jg,"__esModule",{value:!0});var vN=require("util"),bi=id(),sd=class t extends bi.AbstractMessageBuffer{constructor(e="utf-8"){super(e)}emptyBuffer(){return t.emptyBuffer}fromString(e,r){return Buffer.from(e,r)}toString(e,r){return e instanceof Buffer?e.toString(r):new vN.TextDecoder(r).decode(e)}asNative(e,r){return r===void 0?e instanceof Buffer?e:Buffer.from(e):e instanceof Buffer?e.slice(0,r):Buffer.from(e,0,r)}allocNative(e){return Buffer.allocUnsafe(e)}};sd.emptyBuffer=Buffer.allocUnsafe(0);var $g=class{constructor(e){this.stream=e}onClose(e){return this.stream.on("close",e),bi.Disposable.create(()=>this.stream.off("close",e))}onError(e){return this.stream.on("error",e),bi.Disposable.create(()=>this.stream.off("error",e))}onEnd(e){return this.stream.on("end",e),bi.Disposable.create(()=>this.stream.off("end",e))}onData(e){return this.stream.on("data",e),bi.Disposable.create(()=>this.stream.off("data",e))}},Bg=class{constructor(e){this.stream=e}onClose(e){return this.stream.on("close",e),bi.Disposable.create(()=>this.stream.off("close",e))}onError(e){return this.stream.on("error",e),bi.Disposable.create(()=>this.stream.off("error",e))}onEnd(e){return this.stream.on("end",e),bi.Disposable.create(()=>this.stream.off("end",e))}write(e,r){return new Promise((n,i)=>{let s=o=>{o==null?n():i(o)};typeof e=="string"?this.stream.write(e,r,s):this.stream.write(e,s)})}end(){this.stream.end()}},bN=Object.freeze({messageBuffer:Object.freeze({create:t=>new sd(t)}),applicationJson:Object.freeze({encoder:Object.freeze({name:"application/json",encode:(t,e)=>{try{return Promise.resolve(Buffer.from(JSON.stringify(t,void 0,0),e.charset))}catch(r){return Promise.reject(r)}}}),decoder:Object.freeze({name:"application/json",decode:(t,e)=>{try{return t instanceof Buffer?Promise.resolve(JSON.parse(t.toString(e.charset))):Promise.resolve(JSON.parse(new vN.TextDecoder(e.charset).decode(t)))}catch(r){return Promise.reject(r)}}})}),stream:Object.freeze({asReadableStream:t=>new $g(t),asWritableStream:t=>new Bg(t)}),console,timer:Object.freeze({setTimeout(t,e,...r){let n=setTimeout(t,e,...r);return{dispose:()=>clearTimeout(n)}},setImmediate(t,...e){let r=setImmediate(t,...e);return{dispose:()=>clearImmediate(r)}},setInterval(t,e,...r){let n=setInterval(t,e,...r);return{dispose:()=>clearInterval(n)}}})});function Fg(){return bN}(function(t){function e(){bi.RAL.install(bN)}t.install=e})(Fg||(Fg={}));jg.default=Fg});var js=k(Ae=>{"use strict";var aF=Ae&&Ae.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(e,r);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,i)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),cF=Ae&&Ae.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&aF(e,t,r)};Object.defineProperty(Ae,"__esModule",{value:!0});Ae.createMessageConnection=Ae.createServerSocketTransport=Ae.createClientSocketTransport=Ae.createServerPipeTransport=Ae.createClientPipeTransport=Ae.generateRandomPipeName=Ae.StreamMessageWriter=Ae.StreamMessageReader=Ae.SocketMessageWriter=Ae.SocketMessageReader=Ae.PortMessageWriter=Ae.PortMessageReader=Ae.IPCMessageWriter=Ae.IPCMessageReader=void 0;var Ao=_N();Ao.default.install();var SN=require("path"),lF=require("os"),uF=require("crypto"),cd=require("net"),Wr=id();cF(id(),Ae);var Ug=class extends Wr.AbstractMessageReader{constructor(e){super(),this.process=e;let r=this.process;r.on("error",n=>this.fireError(n)),r.on("close",()=>this.fireClose())}listen(e){return this.process.on("message",e),Wr.Disposable.create(()=>this.process.off("message",e))}};Ae.IPCMessageReader=Ug;var Hg=class extends Wr.AbstractMessageWriter{constructor(e){super(),this.process=e,this.errorCount=0;let r=this.process;r.on("error",n=>this.fireError(n)),r.on("close",()=>this.fireClose)}write(e){try{return typeof this.process.send=="function"&&this.process.send(e,void 0,void 0,r=>{r?(this.errorCount++,this.handleError(r,e)):this.errorCount=0}),Promise.resolve()}catch(r){return this.handleError(r,e),Promise.reject(r)}}handleError(e,r){this.errorCount++,this.fireError(e,r,this.errorCount)}end(){}};Ae.IPCMessageWriter=Hg;var Vg=class extends Wr.AbstractMessageReader{constructor(e){super(),this.onData=new Wr.Emitter,e.on("close",()=>this.fireClose),e.on("error",r=>this.fireError(r)),e.on("message",r=>{this.onData.fire(r)})}listen(e){return this.onData.event(e)}};Ae.PortMessageReader=Vg;var zg=class extends Wr.AbstractMessageWriter{constructor(e){super(),this.port=e,this.errorCount=0,e.on("close",()=>this.fireClose()),e.on("error",r=>this.fireError(r))}write(e){try{return this.port.postMessage(e),Promise.resolve()}catch(r){return this.handleError(r,e),Promise.reject(r)}}handleError(e,r){this.errorCount++,this.fireError(e,r,this.errorCount)}end(){}};Ae.PortMessageWriter=zg;var Bs=class extends Wr.ReadableStreamMessageReader{constructor(e,r="utf-8"){super((0,Ao.default)().stream.asReadableStream(e),r)}};Ae.SocketMessageReader=Bs;var Fs=class extends Wr.WriteableStreamMessageWriter{constructor(e,r){super((0,Ao.default)().stream.asWritableStream(e),r),this.socket=e}dispose(){super.dispose(),this.socket.destroy()}};Ae.SocketMessageWriter=Fs;var od=class extends Wr.ReadableStreamMessageReader{constructor(e,r){super((0,Ao.default)().stream.asReadableStream(e),r)}};Ae.StreamMessageReader=od;var ad=class extends Wr.WriteableStreamMessageWriter{constructor(e,r){super((0,Ao.default)().stream.asWritableStream(e),r)}};Ae.StreamMessageWriter=ad;var NN=process.env.XDG_RUNTIME_DIR,dF=new Map([["linux",107],["darwin",103]]);function fF(){let t=(0,uF.randomBytes)(21).toString("hex");if(process.platform==="win32")return`\\\\.\\pipe\\vscode-jsonrpc-${t}-sock`;let e;NN?e=SN.join(NN,`vscode-ipc-${t}.sock`):e=SN.join(lF.tmpdir(),`vscode-${t}.sock`);let r=dF.get(process.platform);return r!==void 0&&e.length>r&&(0,Ao.default)().console.warn(`WARNING: IPC handle "${e}" is longer than ${r} characters.`),e}Ae.generateRandomPipeName=fF;function pF(t,e="utf-8"){let r,n=new Promise((i,s)=>{r=i});return new Promise((i,s)=>{let o=(0,cd.createServer)(a=>{o.close(),r([new Bs(a,e),new Fs(a,e)])});o.on("error",s),o.listen(t,()=>{o.removeListener("error",s),i({onConnected:()=>n})})})}Ae.createClientPipeTransport=pF;function hF(t,e="utf-8"){let r=(0,cd.createConnection)(t);return[new Bs(r,e),new Fs(r,e)]}Ae.createServerPipeTransport=hF;function mF(t,e="utf-8"){let r,n=new Promise((i,s)=>{r=i});return new Promise((i,s)=>{let o=(0,cd.createServer)(a=>{o.close(),r([new Bs(a,e),new Fs(a,e)])});o.on("error",s),o.listen(t,"127.0.0.1",()=>{o.removeListener("error",s),i({onConnected:()=>n})})})}Ae.createClientSocketTransport=mF;function gF(t,e="utf-8"){let r=(0,cd.createConnection)(t,"127.0.0.1");return[new Bs(r,e),new Fs(r,e)]}Ae.createServerSocketTransport=gF;function yF(t){let e=t;return e.read!==void 0&&e.addListener!==void 0}function TF(t){let e=t;return e.write!==void 0&&e.addListener!==void 0}function vF(t,e,r,n){r||(r=Wr.NullLogger);let i=yF(t)?new od(t):t,s=TF(e)?new ad(e):e;return Wr.ConnectionStrategy.is(n)&&(n={connectionStrategy:n}),(0,Wr.createMessageConnection)(i,s,r,n)}Ae.createMessageConnection=vF});var Wg=k((g6,kN)=>{"use strict";kN.exports=js()});var ud=k((RN,ld)=>{(function(t){if(typeof ld=="object"&&typeof ld.exports=="object"){var e=t(require,RN);e!==void 0&&(ld.exports=e)}else typeof define=="function"&&define.amd&&define(["require","exports"],t)})(function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TextDocument=e.EOL=e.WorkspaceFolder=e.InlineCompletionContext=e.SelectedCompletionInfo=e.InlineCompletionTriggerKind=e.InlineCompletionList=e.InlineCompletionItem=e.StringValue=e.InlayHint=e.InlayHintLabelPart=e.InlayHintKind=e.InlineValueContext=e.InlineValueEvaluatableExpression=e.InlineValueVariableLookup=e.InlineValueText=e.SemanticTokens=e.SemanticTokenModifiers=e.SemanticTokenTypes=e.SelectionRange=e.DocumentLink=e.FormattingOptions=e.CodeLens=e.CodeAction=e.CodeActionContext=e.CodeActionTriggerKind=e.CodeActionKind=e.DocumentSymbol=e.WorkspaceSymbol=e.SymbolInformation=e.SymbolTag=e.SymbolKind=e.DocumentHighlight=e.DocumentHighlightKind=e.SignatureInformation=e.ParameterInformation=e.Hover=e.MarkedString=e.CompletionList=e.CompletionItem=e.CompletionItemLabelDetails=e.InsertTextMode=e.InsertReplaceEdit=e.CompletionItemTag=e.InsertTextFormat=e.CompletionItemKind=e.MarkupContent=e.MarkupKind=e.TextDocumentItem=e.OptionalVersionedTextDocumentIdentifier=e.VersionedTextDocumentIdentifier=e.TextDocumentIdentifier=e.WorkspaceChange=e.WorkspaceEdit=e.DeleteFile=e.RenameFile=e.CreateFile=e.TextDocumentEdit=e.AnnotatedTextEdit=e.ChangeAnnotationIdentifier=e.ChangeAnnotation=e.TextEdit=e.Command=e.Diagnostic=e.CodeDescription=e.DiagnosticTag=e.DiagnosticSeverity=e.DiagnosticRelatedInformation=e.FoldingRange=e.FoldingRangeKind=e.ColorPresentation=e.ColorInformation=e.Color=e.LocationLink=e.Location=e.Range=e.Position=e.uinteger=e.integer=e.URI=e.DocumentUri=void 0;var r;(function(y){function w(E){return typeof E=="string"}y.is=w})(r||(e.DocumentUri=r={}));var n;(function(y){function w(E){return typeof E=="string"}y.is=w})(n||(e.URI=n={}));var i;(function(y){y.MIN_VALUE=-2147483648,y.MAX_VALUE=2147483647;function w(E){return typeof E=="number"&&y.MIN_VALUE<=E&&E<=y.MAX_VALUE}y.is=w})(i||(e.integer=i={}));var s;(function(y){y.MIN_VALUE=0,y.MAX_VALUE=2147483647;function w(E){return typeof E=="number"&&y.MIN_VALUE<=E&&E<=y.MAX_VALUE}y.is=w})(s||(e.uinteger=s={}));var o;(function(y){function w(b,m){return b===Number.MAX_VALUE&&(b=s.MAX_VALUE),m===Number.MAX_VALUE&&(m=s.MAX_VALUE),{line:b,character:m}}y.create=w;function E(b){var m=b;return A.objectLiteral(m)&&A.uinteger(m.line)&&A.uinteger(m.character)}y.is=E})(o||(e.Position=o={}));var a;(function(y){function w(b,m,C,q){if(A.uinteger(b)&&A.uinteger(m)&&A.uinteger(C)&&A.uinteger(q))return{start:o.create(b,m),end:o.create(C,q)};if(o.is(b)&&o.is(m))return{start:b,end:m};throw new Error("Range#create called with invalid arguments[".concat(b,", ").concat(m,", ").concat(C,", ").concat(q,"]"))}y.create=w;function E(b){var m=b;return A.objectLiteral(m)&&o.is(m.start)&&o.is(m.end)}y.is=E})(a||(e.Range=a={}));var c;(function(y){function w(b,m){return{uri:b,range:m}}y.create=w;function E(b){var m=b;return A.objectLiteral(m)&&a.is(m.range)&&(A.string(m.uri)||A.undefined(m.uri))}y.is=E})(c||(e.Location=c={}));var l;(function(y){function w(b,m,C,q){return{targetUri:b,targetRange:m,targetSelectionRange:C,originSelectionRange:q}}y.create=w;function E(b){var m=b;return A.objectLiteral(m)&&a.is(m.targetRange)&&A.string(m.targetUri)&&a.is(m.targetSelectionRange)&&(a.is(m.originSelectionRange)||A.undefined(m.originSelectionRange))}y.is=E})(l||(e.LocationLink=l={}));var u;(function(y){function w(b,m,C,q){return{red:b,green:m,blue:C,alpha:q}}y.create=w;function E(b){var m=b;return A.objectLiteral(m)&&A.numberRange(m.red,0,1)&&A.numberRange(m.green,0,1)&&A.numberRange(m.blue,0,1)&&A.numberRange(m.alpha,0,1)}y.is=E})(u||(e.Color=u={}));var d;(function(y){function w(b,m){return{range:b,color:m}}y.create=w;function E(b){var m=b;return A.objectLiteral(m)&&a.is(m.range)&&u.is(m.color)}y.is=E})(d||(e.ColorInformation=d={}));var f;(function(y){function w(b,m,C){return{label:b,textEdit:m,additionalTextEdits:C}}y.create=w;function E(b){var m=b;return A.objectLiteral(m)&&A.string(m.label)&&(A.undefined(m.textEdit)||D.is(m))&&(A.undefined(m.additionalTextEdits)||A.typedArray(m.additionalTextEdits,D.is))}y.is=E})(f||(e.ColorPresentation=f={}));var p;(function(y){y.Comment="comment",y.Imports="imports",y.Region="region"})(p||(e.FoldingRangeKind=p={}));var g;(function(y){function w(b,m,C,q,ye,Rt){var at={startLine:b,endLine:m};return A.defined(C)&&(at.startCharacter=C),A.defined(q)&&(at.endCharacter=q),A.defined(ye)&&(at.kind=ye),A.defined(Rt)&&(at.collapsedText=Rt),at}y.create=w;function E(b){var m=b;return A.objectLiteral(m)&&A.uinteger(m.startLine)&&A.uinteger(m.startLine)&&(A.undefined(m.startCharacter)||A.uinteger(m.startCharacter))&&(A.undefined(m.endCharacter)||A.uinteger(m.endCharacter))&&(A.undefined(m.kind)||A.string(m.kind))}y.is=E})(g||(e.FoldingRange=g={}));var h;(function(y){function w(b,m){return{location:b,message:m}}y.create=w;function E(b){var m=b;return A.defined(m)&&c.is(m.location)&&A.string(m.message)}y.is=E})(h||(e.DiagnosticRelatedInformation=h={}));var T;(function(y){y.Error=1,y.Warning=2,y.Information=3,y.Hint=4})(T||(e.DiagnosticSeverity=T={}));var S;(function(y){y.Unnecessary=1,y.Deprecated=2})(S||(e.DiagnosticTag=S={}));var _;(function(y){function w(E){var b=E;return A.objectLiteral(b)&&A.string(b.href)}y.is=w})(_||(e.CodeDescription=_={}));var v;(function(y){function w(b,m,C,q,ye,Rt){var at={range:b,message:m};return A.defined(C)&&(at.severity=C),A.defined(q)&&(at.code=q),A.defined(ye)&&(at.source=ye),A.defined(Rt)&&(at.relatedInformation=Rt),at}y.create=w;function E(b){var m,C=b;return A.defined(C)&&a.is(C.range)&&A.string(C.message)&&(A.number(C.severity)||A.undefined(C.severity))&&(A.integer(C.code)||A.string(C.code)||A.undefined(C.code))&&(A.undefined(C.codeDescription)||A.string((m=C.codeDescription)===null||m===void 0?void 0:m.href))&&(A.string(C.source)||A.undefined(C.source))&&(A.undefined(C.relatedInformation)||A.typedArray(C.relatedInformation,h.is))}y.is=E})(v||(e.Diagnostic=v={}));var R;(function(y){function w(b,m){for(var C=[],q=2;q<arguments.length;q++)C[q-2]=arguments[q];var ye={title:b,command:m};return A.defined(C)&&C.length>0&&(ye.arguments=C),ye}y.create=w;function E(b){var m=b;return A.defined(m)&&A.string(m.title)&&A.string(m.command)}y.is=E})(R||(e.Command=R={}));var D;(function(y){function w(C,q){return{range:C,newText:q}}y.replace=w;function E(C,q){return{range:{start:C,end:C},newText:q}}y.insert=E;function b(C){return{range:C,newText:""}}y.del=b;function m(C){var q=C;return A.objectLiteral(q)&&A.string(q.newText)&&a.is(q.range)}y.is=m})(D||(e.TextEdit=D={}));var B;(function(y){function w(b,m,C){var q={label:b};return m!==void 0&&(q.needsConfirmation=m),C!==void 0&&(q.description=C),q}y.create=w;function E(b){var m=b;return A.objectLiteral(m)&&A.string(m.label)&&(A.boolean(m.needsConfirmation)||m.needsConfirmation===void 0)&&(A.string(m.description)||m.description===void 0)}y.is=E})(B||(e.ChangeAnnotation=B={}));var M;(function(y){function w(E){var b=E;return A.string(b)}y.is=w})(M||(e.ChangeAnnotationIdentifier=M={}));var F;(function(y){function w(C,q,ye){return{range:C,newText:q,annotationId:ye}}y.replace=w;function E(C,q,ye){return{range:{start:C,end:C},newText:q,annotationId:ye}}y.insert=E;function b(C,q){return{range:C,newText:"",annotationId:q}}y.del=b;function m(C){var q=C;return D.is(q)&&(B.is(q.annotationId)||M.is(q.annotationId))}y.is=m})(F||(e.AnnotatedTextEdit=F={}));var ge;(function(y){function w(b,m){return{textDocument:b,edits:m}}y.create=w;function E(b){var m=b;return A.defined(m)&&xs.is(m.textDocument)&&Array.isArray(m.edits)}y.is=E})(ge||(e.TextDocumentEdit=ge={}));var Xe;(function(y){function w(b,m,C){var q={kind:"create",uri:b};return m!==void 0&&(m.overwrite!==void 0||m.ignoreIfExists!==void 0)&&(q.options=m),C!==void 0&&(q.annotationId=C),q}y.create=w;function E(b){var m=b;return m&&m.kind==="create"&&A.string(m.uri)&&(m.options===void 0||(m.options.overwrite===void 0||A.boolean(m.options.overwrite))&&(m.options.ignoreIfExists===void 0||A.boolean(m.options.ignoreIfExists)))&&(m.annotationId===void 0||M.is(m.annotationId))}y.is=E})(Xe||(e.CreateFile=Xe={}));var Ft;(function(y){function w(b,m,C,q){var ye={kind:"rename",oldUri:b,newUri:m};return C!==void 0&&(C.overwrite!==void 0||C.ignoreIfExists!==void 0)&&(ye.options=C),q!==void 0&&(ye.annotationId=q),ye}y.create=w;function E(b){var m=b;return m&&m.kind==="rename"&&A.string(m.oldUri)&&A.string(m.newUri)&&(m.options===void 0||(m.options.overwrite===void 0||A.boolean(m.options.overwrite))&&(m.options.ignoreIfExists===void 0||A.boolean(m.options.ignoreIfExists)))&&(m.annotationId===void 0||M.is(m.annotationId))}y.is=E})(Ft||(e.RenameFile=Ft={}));var ke;(function(y){function w(b,m,C){var q={kind:"delete",uri:b};return m!==void 0&&(m.recursive!==void 0||m.ignoreIfNotExists!==void 0)&&(q.options=m),C!==void 0&&(q.annotationId=C),q}y.create=w;function E(b){var m=b;return m&&m.kind==="delete"&&A.string(m.uri)&&(m.options===void 0||(m.options.recursive===void 0||A.boolean(m.options.recursive))&&(m.options.ignoreIfNotExists===void 0||A.boolean(m.options.ignoreIfNotExists)))&&(m.annotationId===void 0||M.is(m.annotationId))}y.is=E})(ke||(e.DeleteFile=ke={}));var Zr;(function(y){function w(E){var b=E;return b&&(b.changes!==void 0||b.documentChanges!==void 0)&&(b.documentChanges===void 0||b.documentChanges.every(function(m){return A.string(m.kind)?Xe.is(m)||Ft.is(m)||ke.is(m):ge.is(m)}))}y.is=w})(Zr||(e.WorkspaceEdit=Zr={}));var $i=function(){function y(w,E){this.edits=w,this.changeAnnotations=E}return y.prototype.insert=function(w,E,b){var m,C;if(b===void 0?m=D.insert(w,E):M.is(b)?(C=b,m=F.insert(w,E,b)):(this.assertChangeAnnotations(this.changeAnnotations),C=this.changeAnnotations.manage(b),m=F.insert(w,E,C)),this.edits.push(m),C!==void 0)return C},y.prototype.replace=function(w,E,b){var m,C;if(b===void 0?m=D.replace(w,E):M.is(b)?(C=b,m=F.replace(w,E,b)):(this.assertChangeAnnotations(this.changeAnnotations),C=this.changeAnnotations.manage(b),m=F.replace(w,E,C)),this.edits.push(m),C!==void 0)return C},y.prototype.delete=function(w,E){var b,m;if(E===void 0?b=D.del(w):M.is(E)?(m=E,b=F.del(w,E)):(this.assertChangeAnnotations(this.changeAnnotations),m=this.changeAnnotations.manage(E),b=F.del(w,m)),this.edits.push(b),m!==void 0)return m},y.prototype.add=function(w){this.edits.push(w)},y.prototype.all=function(){return this.edits},y.prototype.clear=function(){this.edits.splice(0,this.edits.length)},y.prototype.assertChangeAnnotations=function(w){if(w===void 0)throw new Error("Text edit change is not configured to manage change annotations.")},y}(),Ru=function(){function y(w){this._annotations=w===void 0?Object.create(null):w,this._counter=0,this._size=0}return y.prototype.all=function(){return this._annotations},Object.defineProperty(y.prototype,"size",{get:function(){return this._size},enumerable:!1,configurable:!0}),y.prototype.manage=function(w,E){var b;if(M.is(w)?b=w:(b=this.nextId(),E=w),this._annotations[b]!==void 0)throw new Error("Id ".concat(b," is already in use."));if(E===void 0)throw new Error("No annotation provided for id ".concat(b));return this._annotations[b]=E,this._size++,b},y.prototype.nextId=function(){return this._counter++,this._counter.toString()},y}(),Mm=function(){function y(w){var E=this;this._textEditChanges=Object.create(null),w!==void 0?(this._workspaceEdit=w,w.documentChanges?(this._changeAnnotations=new Ru(w.changeAnnotations),w.changeAnnotations=this._changeAnnotations.all(),w.documentChanges.forEach(function(b){if(ge.is(b)){var m=new $i(b.edits,E._changeAnnotations);E._textEditChanges[b.textDocument.uri]=m}})):w.changes&&Object.keys(w.changes).forEach(function(b){var m=new $i(w.changes[b]);E._textEditChanges[b]=m})):this._workspaceEdit={}}return Object.defineProperty(y.prototype,"edit",{get:function(){return this.initDocumentChanges(),this._changeAnnotations!==void 0&&(this._changeAnnotations.size===0?this._workspaceEdit.changeAnnotations=void 0:this._workspaceEdit.changeAnnotations=this._changeAnnotations.all()),this._workspaceEdit},enumerable:!1,configurable:!0}),y.prototype.getTextEditChange=function(w){if(xs.is(w)){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");var E={uri:w.uri,version:w.version},b=this._textEditChanges[E.uri];if(!b){var m=[],C={textDocument:E,edits:m};this._workspaceEdit.documentChanges.push(C),b=new $i(m,this._changeAnnotations),this._textEditChanges[E.uri]=b}return b}else{if(this.initChanges(),this._workspaceEdit.changes===void 0)throw new Error("Workspace edit is not configured for normal text edit changes.");var b=this._textEditChanges[w];if(!b){var m=[];this._workspaceEdit.changes[w]=m,b=new $i(m),this._textEditChanges[w]=b}return b}},y.prototype.initDocumentChanges=function(){this._workspaceEdit.documentChanges===void 0&&this._workspaceEdit.changes===void 0&&(this._changeAnnotations=new Ru,this._workspaceEdit.documentChanges=[],this._workspaceEdit.changeAnnotations=this._changeAnnotations.all())},y.prototype.initChanges=function(){this._workspaceEdit.documentChanges===void 0&&this._workspaceEdit.changes===void 0&&(this._workspaceEdit.changes=Object.create(null))},y.prototype.createFile=function(w,E,b){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");var m;B.is(E)||M.is(E)?m=E:b=E;var C,q;if(m===void 0?C=Xe.create(w,b):(q=M.is(m)?m:this._changeAnnotations.manage(m),C=Xe.create(w,b,q)),this._workspaceEdit.documentChanges.push(C),q!==void 0)return q},y.prototype.renameFile=function(w,E,b,m){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");var C;B.is(b)||M.is(b)?C=b:m=b;var q,ye;if(C===void 0?q=Ft.create(w,E,m):(ye=M.is(C)?C:this._changeAnnotations.manage(C),q=Ft.create(w,E,m,ye)),this._workspaceEdit.documentChanges.push(q),ye!==void 0)return ye},y.prototype.deleteFile=function(w,E,b){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");var m;B.is(E)||M.is(E)?m=E:b=E;var C,q;if(m===void 0?C=ke.create(w,b):(q=M.is(m)?m:this._changeAnnotations.manage(m),C=ke.create(w,b,q)),this._workspaceEdit.documentChanges.push(C),q!==void 0)return q},y}();e.WorkspaceChange=Mm;var Pu;(function(y){function w(b){return{uri:b}}y.create=w;function E(b){var m=b;return A.defined(m)&&A.string(m.uri)}y.is=E})(Pu||(e.TextDocumentIdentifier=Pu={}));var Ja;(function(y){function w(b,m){return{uri:b,version:m}}y.create=w;function E(b){var m=b;return A.defined(m)&&A.string(m.uri)&&A.integer(m.version)}y.is=E})(Ja||(e.VersionedTextDocumentIdentifier=Ja={}));var xs;(function(y){function w(b,m){return{uri:b,version:m}}y.create=w;function E(b){var m=b;return A.defined(m)&&A.string(m.uri)&&(m.version===null||A.integer(m.version))}y.is=E})(xs||(e.OptionalVersionedTextDocumentIdentifier=xs={}));var gi;(function(y){function w(b,m,C,q){return{uri:b,languageId:m,version:C,text:q}}y.create=w;function E(b){var m=b;return A.defined(m)&&A.string(m.uri)&&A.string(m.languageId)&&A.integer(m.version)&&A.string(m.text)}y.is=E})(gi||(e.TextDocumentItem=gi={}));var vo;(function(y){y.PlainText="plaintext",y.Markdown="markdown";function w(E){var b=E;return b===y.PlainText||b===y.Markdown}y.is=w})(vo||(e.MarkupKind=vo={}));var Ls;(function(y){function w(E){var b=E;return A.objectLiteral(E)&&vo.is(b.kind)&&A.string(b.value)}y.is=w})(Ls||(e.MarkupContent=Ls={}));var wu;(function(y){y.Text=1,y.Method=2,y.Function=3,y.Constructor=4,y.Field=5,y.Variable=6,y.Class=7,y.Interface=8,y.Module=9,y.Property=10,y.Unit=11,y.Value=12,y.Enum=13,y.Keyword=14,y.Snippet=15,y.Color=16,y.File=17,y.Reference=18,y.Folder=19,y.EnumMember=20,y.Constant=21,y.Struct=22,y.Event=23,y.Operator=24,y.TypeParameter=25})(wu||(e.CompletionItemKind=wu={}));var Qa;(function(y){y.PlainText=1,y.Snippet=2})(Qa||(e.InsertTextFormat=Qa={}));var Za;(function(y){y.Deprecated=1})(Za||(e.CompletionItemTag=Za={}));var Eu;(function(y){function w(b,m,C){return{newText:b,insert:m,replace:C}}y.create=w;function E(b){var m=b;return m&&A.string(m.newText)&&a.is(m.insert)&&a.is(m.replace)}y.is=E})(Eu||(e.InsertReplaceEdit=Eu={}));var Du;(function(y){y.asIs=1,y.adjustIndentation=2})(Du||(e.InsertTextMode=Du={}));var Cu;(function(y){function w(E){var b=E;return b&&(A.string(b.detail)||b.detail===void 0)&&(A.string(b.description)||b.description===void 0)}y.is=w})(Cu||(e.CompletionItemLabelDetails=Cu={}));var Au;(function(y){function w(E){return{label:E}}y.create=w})(Au||(e.CompletionItem=Au={}));var Iu;(function(y){function w(E,b){return{items:E||[],isIncomplete:!!b}}y.create=w})(Iu||(e.CompletionList=Iu={}));var bo;(function(y){function w(b){return b.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")}y.fromPlainText=w;function E(b){var m=b;return A.string(m)||A.objectLiteral(m)&&A.string(m.language)&&A.string(m.value)}y.is=E})(bo||(e.MarkedString=bo={}));var Pn;(function(y){function w(E){var b=E;return!!b&&A.objectLiteral(b)&&(Ls.is(b.contents)||bo.is(b.contents)||A.typedArray(b.contents,bo.is))&&(E.range===void 0||a.is(E.range))}y.is=w})(Pn||(e.Hover=Pn={}));var Ou;(function(y){function w(E,b){return b?{label:E,documentation:b}:{label:E}}y.create=w})(Ou||(e.ParameterInformation=Ou={}));var Mu;(function(y){function w(E,b){for(var m=[],C=2;C<arguments.length;C++)m[C-2]=arguments[C];var q={label:E};return A.defined(b)&&(q.documentation=b),A.defined(m)?q.parameters=m:q.parameters=[],q}y.create=w})(Mu||(e.SignatureInformation=Mu={}));var qs;(function(y){y.Text=1,y.Read=2,y.Write=3})(qs||(e.DocumentHighlightKind=qs={}));var xu;(function(y){function w(E,b){var m={range:E};return A.number(b)&&(m.kind=b),m}y.create=w})(xu||(e.DocumentHighlight=xu={}));var _o;(function(y){y.File=1,y.Module=2,y.Namespace=3,y.Package=4,y.Class=5,y.Method=6,y.Property=7,y.Field=8,y.Constructor=9,y.Enum=10,y.Interface=11,y.Function=12,y.Variable=13,y.Constant=14,y.String=15,y.Number=16,y.Boolean=17,y.Array=18,y.Object=19,y.Key=20,y.Null=21,y.EnumMember=22,y.Struct=23,y.Event=24,y.Operator=25,y.TypeParameter=26})(_o||(e.SymbolKind=_o={}));var Lu;(function(y){y.Deprecated=1})(Lu||(e.SymbolTag=Lu={}));var yi;(function(y){function w(E,b,m,C,q){var ye={name:E,kind:b,location:{uri:C,range:m}};return q&&(ye.containerName=q),ye}y.create=w})(yi||(e.SymbolInformation=yi={}));var Bi;(function(y){function w(E,b,m,C){return C!==void 0?{name:E,kind:b,location:{uri:m,range:C}}:{name:E,kind:b,location:{uri:m}}}y.create=w})(Bi||(e.WorkspaceSymbol=Bi={}));var qu;(function(y){function w(b,m,C,q,ye,Rt){var at={name:b,detail:m,kind:C,range:q,selectionRange:ye};return Rt!==void 0&&(at.children=Rt),at}y.create=w;function E(b){var m=b;return m&&A.string(m.name)&&A.number(m.kind)&&a.is(m.range)&&a.is(m.selectionRange)&&(m.detail===void 0||A.string(m.detail))&&(m.deprecated===void 0||A.boolean(m.deprecated))&&(m.children===void 0||Array.isArray(m.children))&&(m.tags===void 0||Array.isArray(m.tags))}y.is=E})(qu||(e.DocumentSymbol=qu={}));var $u;(function(y){y.Empty="",y.QuickFix="quickfix",y.Refactor="refactor",y.RefactorExtract="refactor.extract",y.RefactorInline="refactor.inline",y.RefactorRewrite="refactor.rewrite",y.Source="source",y.SourceOrganizeImports="source.organizeImports",y.SourceFixAll="source.fixAll"})($u||(e.CodeActionKind=$u={}));var Kn;(function(y){y.Invoked=1,y.Automatic=2})(Kn||(e.CodeActionTriggerKind=Kn={}));var ec;(function(y){function w(b,m,C){var q={diagnostics:b};return m!=null&&(q.only=m),C!=null&&(q.triggerKind=C),q}y.create=w;function E(b){var m=b;return A.defined(m)&&A.typedArray(m.diagnostics,v.is)&&(m.only===void 0||A.typedArray(m.only,A.string))&&(m.triggerKind===void 0||m.triggerKind===Kn.Invoked||m.triggerKind===Kn.Automatic)}y.is=E})(ec||(e.CodeActionContext=ec={}));var tc;(function(y){function w(b,m,C){var q={title:b},ye=!0;return typeof m=="string"?(ye=!1,q.kind=m):R.is(m)?q.command=m:q.edit=m,ye&&C!==void 0&&(q.kind=C),q}y.create=w;function E(b){var m=b;return m&&A.string(m.title)&&(m.diagnostics===void 0||A.typedArray(m.diagnostics,v.is))&&(m.kind===void 0||A.string(m.kind))&&(m.edit!==void 0||m.command!==void 0)&&(m.command===void 0||R.is(m.command))&&(m.isPreferred===void 0||A.boolean(m.isPreferred))&&(m.edit===void 0||Zr.is(m.edit))}y.is=E})(tc||(e.CodeAction=tc={}));var So;(function(y){function w(b,m){var C={range:b};return A.defined(m)&&(C.data=m),C}y.create=w;function E(b){var m=b;return A.defined(m)&&a.is(m.range)&&(A.undefined(m.command)||R.is(m.command))}y.is=E})(So||(e.CodeLens=So={}));var rc;(function(y){function w(b,m){return{tabSize:b,insertSpaces:m}}y.create=w;function E(b){var m=b;return A.defined(m)&&A.uinteger(m.tabSize)&&A.boolean(m.insertSpaces)}y.is=E})(rc||(e.FormattingOptions=rc={}));var Ti;(function(y){function w(b,m,C){return{range:b,target:m,data:C}}y.create=w;function E(b){var m=b;return A.defined(m)&&a.is(m.range)&&(A.undefined(m.target)||A.string(m.target))}y.is=E})(Ti||(e.DocumentLink=Ti={}));var P;(function(y){function w(b,m){return{range:b,parent:m}}y.create=w;function E(b){var m=b;return A.objectLiteral(m)&&a.is(m.range)&&(m.parent===void 0||y.is(m.parent))}y.is=E})(P||(e.SelectionRange=P={}));var L;(function(y){y.namespace="namespace",y.type="type",y.class="class",y.enum="enum",y.interface="interface",y.struct="struct",y.typeParameter="typeParameter",y.parameter="parameter",y.variable="variable",y.property="property",y.enumMember="enumMember",y.event="event",y.function="function",y.method="method",y.macro="macro",y.keyword="keyword",y.modifier="modifier",y.comment="comment",y.string="string",y.number="number",y.regexp="regexp",y.operator="operator",y.decorator="decorator"})(L||(e.SemanticTokenTypes=L={}));var G;(function(y){y.declaration="declaration",y.definition="definition",y.readonly="readonly",y.static="static",y.deprecated="deprecated",y.abstract="abstract",y.async="async",y.modification="modification",y.documentation="documentation",y.defaultLibrary="defaultLibrary"})(G||(e.SemanticTokenModifiers=G={}));var re;(function(y){function w(E){var b=E;return A.objectLiteral(b)&&(b.resultId===void 0||typeof b.resultId=="string")&&Array.isArray(b.data)&&(b.data.length===0||typeof b.data[0]=="number")}y.is=w})(re||(e.SemanticTokens=re={}));var Je;(function(y){function w(b,m){return{range:b,text:m}}y.create=w;function E(b){var m=b;return m!=null&&a.is(m.range)&&A.string(m.text)}y.is=E})(Je||(e.InlineValueText=Je={}));var We;(function(y){function w(b,m,C){return{range:b,variableName:m,caseSensitiveLookup:C}}y.create=w;function E(b){var m=b;return m!=null&&a.is(m.range)&&A.boolean(m.caseSensitiveLookup)&&(A.string(m.variableName)||m.variableName===void 0)}y.is=E})(We||(e.InlineValueVariableLookup=We={}));var dt;(function(y){function w(b,m){return{range:b,expression:m}}y.create=w;function E(b){var m=b;return m!=null&&a.is(m.range)&&(A.string(m.expression)||m.expression===void 0)}y.is=E})(dt||(e.InlineValueEvaluatableExpression=dt={}));var yt;(function(y){function w(b,m){return{frameId:b,stoppedLocation:m}}y.create=w;function E(b){var m=b;return A.defined(m)&&a.is(b.stoppedLocation)}y.is=E})(yt||(e.InlineValueContext=yt={}));var Re;(function(y){y.Type=1,y.Parameter=2;function w(E){return E===1||E===2}y.is=w})(Re||(e.InlayHintKind=Re={}));var tt;(function(y){function w(b){return{value:b}}y.create=w;function E(b){var m=b;return A.objectLiteral(m)&&(m.tooltip===void 0||A.string(m.tooltip)||Ls.is(m.tooltip))&&(m.location===void 0||c.is(m.location))&&(m.command===void 0||R.is(m.command))}y.is=E})(tt||(e.InlayHintLabelPart=tt={}));var je;(function(y){function w(b,m,C){var q={position:b,label:m};return C!==void 0&&(q.kind=C),q}y.create=w;function E(b){var m=b;return A.objectLiteral(m)&&o.is(m.position)&&(A.string(m.label)||A.typedArray(m.label,tt.is))&&(m.kind===void 0||Re.is(m.kind))&&m.textEdits===void 0||A.typedArray(m.textEdits,D.is)&&(m.tooltip===void 0||A.string(m.tooltip)||Ls.is(m.tooltip))&&(m.paddingLeft===void 0||A.boolean(m.paddingLeft))&&(m.paddingRight===void 0||A.boolean(m.paddingRight))}y.is=E})(je||(e.InlayHint=je={}));var kt;(function(y){function w(E){return{kind:"snippet",value:E}}y.createSnippet=w})(kt||(e.StringValue=kt={}));var Vt;(function(y){function w(E,b,m,C){return{insertText:E,filterText:b,range:m,command:C}}y.create=w})(Vt||(e.InlineCompletionItem=Vt={}));var Vr;(function(y){function w(E){return{items:E}}y.create=w})(Vr||(e.InlineCompletionList=Vr={}));var Bu;(function(y){y.Invoked=0,y.Automatic=1})(Bu||(e.InlineCompletionTriggerKind=Bu={}));var jS;(function(y){function w(E,b){return{range:E,text:b}}y.create=w})(jS||(e.SelectedCompletionInfo=jS={}));var US;(function(y){function w(E,b){return{triggerKind:E,selectedCompletionInfo:b}}y.create=w})(US||(e.InlineCompletionContext=US={}));var HS;(function(y){function w(E){var b=E;return A.objectLiteral(b)&&n.is(b.uri)&&A.string(b.name)}y.is=w})(HS||(e.WorkspaceFolder=HS={})),e.EOL=[`
33
33
  `,`\r
34
34
  `,"\r"];var VS;(function(y){function w(C,q,ye,Rt){return new PB(C,q,ye,Rt)}y.create=w;function E(C){var q=C;return!!(A.defined(q)&&A.string(q.uri)&&(A.undefined(q.languageId)||A.string(q.languageId))&&A.uinteger(q.lineCount)&&A.func(q.getText)&&A.func(q.positionAt)&&A.func(q.offsetAt))}y.is=E;function b(C,q){for(var ye=C.getText(),Rt=m(q,function(No,Fu){var zS=No.range.start.line-Fu.range.start.line;return zS===0?No.range.start.character-Fu.range.start.character:zS}),at=ye.length,wn=Rt.length-1;wn>=0;wn--){var En=Rt[wn],vi=C.offsetAt(En.range.start),Ce=C.offsetAt(En.range.end);if(Ce<=at)ye=ye.substring(0,vi)+En.newText+ye.substring(Ce,ye.length);else throw new Error("Overlapping edit");at=vi}return ye}y.applyEdits=b;function m(C,q){if(C.length<=1)return C;var ye=C.length/2|0,Rt=C.slice(0,ye),at=C.slice(ye);m(Rt,q),m(at,q);for(var wn=0,En=0,vi=0;wn<Rt.length&&En<at.length;){var Ce=q(Rt[wn],at[En]);Ce<=0?C[vi++]=Rt[wn++]:C[vi++]=at[En++]}for(;wn<Rt.length;)C[vi++]=Rt[wn++];for(;En<at.length;)C[vi++]=at[En++];return C}})(VS||(e.TextDocument=VS={}));var PB=function(){function y(w,E,b,m){this._uri=w,this._languageId=E,this._version=b,this._content=m,this._lineOffsets=void 0}return Object.defineProperty(y.prototype,"uri",{get:function(){return this._uri},enumerable:!1,configurable:!0}),Object.defineProperty(y.prototype,"languageId",{get:function(){return this._languageId},enumerable:!1,configurable:!0}),Object.defineProperty(y.prototype,"version",{get:function(){return this._version},enumerable:!1,configurable:!0}),y.prototype.getText=function(w){if(w){var E=this.offsetAt(w.start),b=this.offsetAt(w.end);return this._content.substring(E,b)}return this._content},y.prototype.update=function(w,E){this._content=w.text,this._version=E,this._lineOffsets=void 0},y.prototype.getLineOffsets=function(){if(this._lineOffsets===void 0){for(var w=[],E=this._content,b=!0,m=0;m<E.length;m++){b&&(w.push(m),b=!1);var C=E.charAt(m);b=C==="\r"||C===`
35
35
  `,C==="\r"&&m+1<E.length&&E.charAt(m+1)===`
36
- `&&m++}b&&E.length>0&&w.push(E.length),this._lineOffsets=w}return this._lineOffsets},y.prototype.positionAt=function(w){w=Math.max(Math.min(w,this._content.length),0);var E=this.getLineOffsets(),b=0,m=E.length;if(m===0)return o.create(0,w);for(;b<m;){var C=Math.floor((b+m)/2);E[C]>w?m=C:b=C+1}var q=b-1;return o.create(q,w-E[q])},y.prototype.offsetAt=function(w){var E=this.getLineOffsets();if(w.line>=E.length)return this._content.length;if(w.line<0)return 0;var b=E[w.line],m=w.line+1<E.length?E[w.line+1]:this._content.length;return Math.max(Math.min(b+w.character,m),b)},Object.defineProperty(y.prototype,"lineCount",{get:function(){return this.getLineOffsets().length},enumerable:!1,configurable:!0}),y}(),A;(function(y){var w=Object.prototype.toString;function E(Ce){return typeof Ce<"u"}y.defined=E;function b(Ce){return typeof Ce>"u"}y.undefined=b;function m(Ce){return Ce===!0||Ce===!1}y.boolean=m;function C(Ce){return w.call(Ce)==="[object String]"}y.string=C;function q(Ce){return w.call(Ce)==="[object Number]"}y.number=q;function ye(Ce,No,Fu){return w.call(Ce)==="[object Number]"&&No<=Ce&&Ce<=Fu}y.numberRange=ye;function Rt(Ce){return w.call(Ce)==="[object Number]"&&-2147483648<=Ce&&Ce<=2147483647}y.integer=Rt;function at(Ce){return w.call(Ce)==="[object Number]"&&0<=Ce&&Ce<=2147483647}y.uinteger=at;function wn(Ce){return w.call(Ce)==="[object Function]"}y.func=wn;function En(Ce){return Ce!==null&&typeof Ce=="object"}y.objectLiteral=En;function vi(Ce,No){return Array.isArray(Ce)&&Ce.every(No)}y.typedArray=vi})(A||(A={}))})});var Tt=k(Pr=>{"use strict";Object.defineProperty(Pr,"__esModule",{value:!0});Pr.ProtocolNotificationType=Pr.ProtocolNotificationType0=Pr.ProtocolRequestType=Pr.ProtocolRequestType0=Pr.RegistrationType=Pr.MessageDirection=void 0;var Io=js(),PN;(function(t){t.clientToServer="clientToServer",t.serverToClient="serverToClient",t.both="both"})(PN||(Pr.MessageDirection=PN={}));var Gg=class{constructor(e){this.method=e}};Pr.RegistrationType=Gg;var Kg=class extends Io.RequestType0{constructor(e){super(e)}};Pr.ProtocolRequestType0=Kg;var Yg=class extends Io.RequestType{constructor(e){super(e,Io.ParameterStructures.byName)}};Pr.ProtocolRequestType=Yg;var Xg=class extends Io.NotificationType0{constructor(e){super(e)}};Pr.ProtocolNotificationType0=Xg;var Jg=class extends Io.NotificationType{constructor(e){super(e,Io.ParameterStructures.byName)}};Pr.ProtocolNotificationType=Jg});var dd=k(xt=>{"use strict";Object.defineProperty(xt,"__esModule",{value:!0});xt.objectLiteral=xt.typedArray=xt.stringArray=xt.array=xt.func=xt.error=xt.number=xt.string=xt.boolean=void 0;function bF(t){return t===!0||t===!1}xt.boolean=bF;function wN(t){return typeof t=="string"||t instanceof String}xt.string=wN;function _F(t){return typeof t=="number"||t instanceof Number}xt.number=_F;function SF(t){return t instanceof Error}xt.error=SF;function NF(t){return typeof t=="function"}xt.func=NF;function EN(t){return Array.isArray(t)}xt.array=EN;function kF(t){return EN(t)&&t.every(e=>wN(e))}xt.stringArray=kF;function RF(t,e){return Array.isArray(t)&&t.every(e)}xt.typedArray=RF;function PF(t){return t!==null&&typeof t=="object"}xt.objectLiteral=PF});var AN=k(fd=>{"use strict";Object.defineProperty(fd,"__esModule",{value:!0});fd.ImplementationRequest=void 0;var DN=Tt(),CN;(function(t){t.method="textDocument/implementation",t.messageDirection=DN.MessageDirection.clientToServer,t.type=new DN.ProtocolRequestType(t.method)})(CN||(fd.ImplementationRequest=CN={}))});var MN=k(pd=>{"use strict";Object.defineProperty(pd,"__esModule",{value:!0});pd.TypeDefinitionRequest=void 0;var IN=Tt(),ON;(function(t){t.method="textDocument/typeDefinition",t.messageDirection=IN.MessageDirection.clientToServer,t.type=new IN.ProtocolRequestType(t.method)})(ON||(pd.TypeDefinitionRequest=ON={}))});var qN=k(Oo=>{"use strict";Object.defineProperty(Oo,"__esModule",{value:!0});Oo.DidChangeWorkspaceFoldersNotification=Oo.WorkspaceFoldersRequest=void 0;var hd=Tt(),xN;(function(t){t.method="workspace/workspaceFolders",t.messageDirection=hd.MessageDirection.serverToClient,t.type=new hd.ProtocolRequestType0(t.method)})(xN||(Oo.WorkspaceFoldersRequest=xN={}));var LN;(function(t){t.method="workspace/didChangeWorkspaceFolders",t.messageDirection=hd.MessageDirection.clientToServer,t.type=new hd.ProtocolNotificationType(t.method)})(LN||(Oo.DidChangeWorkspaceFoldersNotification=LN={}))});var FN=k(md=>{"use strict";Object.defineProperty(md,"__esModule",{value:!0});md.ConfigurationRequest=void 0;var $N=Tt(),BN;(function(t){t.method="workspace/configuration",t.messageDirection=$N.MessageDirection.serverToClient,t.type=new $N.ProtocolRequestType(t.method)})(BN||(md.ConfigurationRequest=BN={}))});var HN=k(Mo=>{"use strict";Object.defineProperty(Mo,"__esModule",{value:!0});Mo.ColorPresentationRequest=Mo.DocumentColorRequest=void 0;var gd=Tt(),jN;(function(t){t.method="textDocument/documentColor",t.messageDirection=gd.MessageDirection.clientToServer,t.type=new gd.ProtocolRequestType(t.method)})(jN||(Mo.DocumentColorRequest=jN={}));var UN;(function(t){t.method="textDocument/colorPresentation",t.messageDirection=gd.MessageDirection.clientToServer,t.type=new gd.ProtocolRequestType(t.method)})(UN||(Mo.ColorPresentationRequest=UN={}))});var WN=k(xo=>{"use strict";Object.defineProperty(xo,"__esModule",{value:!0});xo.FoldingRangeRefreshRequest=xo.FoldingRangeRequest=void 0;var yd=Tt(),VN;(function(t){t.method="textDocument/foldingRange",t.messageDirection=yd.MessageDirection.clientToServer,t.type=new yd.ProtocolRequestType(t.method)})(VN||(xo.FoldingRangeRequest=VN={}));var zN;(function(t){t.method="workspace/foldingRange/refresh",t.messageDirection=yd.MessageDirection.serverToClient,t.type=new yd.ProtocolRequestType0(t.method)})(zN||(xo.FoldingRangeRefreshRequest=zN={}))});var YN=k(Td=>{"use strict";Object.defineProperty(Td,"__esModule",{value:!0});Td.DeclarationRequest=void 0;var GN=Tt(),KN;(function(t){t.method="textDocument/declaration",t.messageDirection=GN.MessageDirection.clientToServer,t.type=new GN.ProtocolRequestType(t.method)})(KN||(Td.DeclarationRequest=KN={}))});var QN=k(vd=>{"use strict";Object.defineProperty(vd,"__esModule",{value:!0});vd.SelectionRangeRequest=void 0;var XN=Tt(),JN;(function(t){t.method="textDocument/selectionRange",t.messageDirection=XN.MessageDirection.clientToServer,t.type=new XN.ProtocolRequestType(t.method)})(JN||(vd.SelectionRangeRequest=JN={}))});var rk=k(Vi=>{"use strict";Object.defineProperty(Vi,"__esModule",{value:!0});Vi.WorkDoneProgressCancelNotification=Vi.WorkDoneProgressCreateRequest=Vi.WorkDoneProgress=void 0;var wF=js(),bd=Tt(),ZN;(function(t){t.type=new wF.ProgressType;function e(r){return r===t.type}t.is=e})(ZN||(Vi.WorkDoneProgress=ZN={}));var ek;(function(t){t.method="window/workDoneProgress/create",t.messageDirection=bd.MessageDirection.serverToClient,t.type=new bd.ProtocolRequestType(t.method)})(ek||(Vi.WorkDoneProgressCreateRequest=ek={}));var tk;(function(t){t.method="window/workDoneProgress/cancel",t.messageDirection=bd.MessageDirection.clientToServer,t.type=new bd.ProtocolNotificationType(t.method)})(tk||(Vi.WorkDoneProgressCancelNotification=tk={}))});var ok=k(zi=>{"use strict";Object.defineProperty(zi,"__esModule",{value:!0});zi.CallHierarchyOutgoingCallsRequest=zi.CallHierarchyIncomingCallsRequest=zi.CallHierarchyPrepareRequest=void 0;var Lo=Tt(),nk;(function(t){t.method="textDocument/prepareCallHierarchy",t.messageDirection=Lo.MessageDirection.clientToServer,t.type=new Lo.ProtocolRequestType(t.method)})(nk||(zi.CallHierarchyPrepareRequest=nk={}));var ik;(function(t){t.method="callHierarchy/incomingCalls",t.messageDirection=Lo.MessageDirection.clientToServer,t.type=new Lo.ProtocolRequestType(t.method)})(ik||(zi.CallHierarchyIncomingCallsRequest=ik={}));var sk;(function(t){t.method="callHierarchy/outgoingCalls",t.messageDirection=Lo.MessageDirection.clientToServer,t.type=new Lo.ProtocolRequestType(t.method)})(sk||(zi.CallHierarchyOutgoingCallsRequest=sk={}))});var fk=k(wr=>{"use strict";Object.defineProperty(wr,"__esModule",{value:!0});wr.SemanticTokensRefreshRequest=wr.SemanticTokensRangeRequest=wr.SemanticTokensDeltaRequest=wr.SemanticTokensRequest=wr.SemanticTokensRegistrationType=wr.TokenFormat=void 0;var _i=Tt(),ak;(function(t){t.Relative="relative"})(ak||(wr.TokenFormat=ak={}));var lc;(function(t){t.method="textDocument/semanticTokens",t.type=new _i.RegistrationType(t.method)})(lc||(wr.SemanticTokensRegistrationType=lc={}));var ck;(function(t){t.method="textDocument/semanticTokens/full",t.messageDirection=_i.MessageDirection.clientToServer,t.type=new _i.ProtocolRequestType(t.method),t.registrationMethod=lc.method})(ck||(wr.SemanticTokensRequest=ck={}));var lk;(function(t){t.method="textDocument/semanticTokens/full/delta",t.messageDirection=_i.MessageDirection.clientToServer,t.type=new _i.ProtocolRequestType(t.method),t.registrationMethod=lc.method})(lk||(wr.SemanticTokensDeltaRequest=lk={}));var uk;(function(t){t.method="textDocument/semanticTokens/range",t.messageDirection=_i.MessageDirection.clientToServer,t.type=new _i.ProtocolRequestType(t.method),t.registrationMethod=lc.method})(uk||(wr.SemanticTokensRangeRequest=uk={}));var dk;(function(t){t.method="workspace/semanticTokens/refresh",t.messageDirection=_i.MessageDirection.serverToClient,t.type=new _i.ProtocolRequestType0(t.method)})(dk||(wr.SemanticTokensRefreshRequest=dk={}))});var mk=k(_d=>{"use strict";Object.defineProperty(_d,"__esModule",{value:!0});_d.ShowDocumentRequest=void 0;var pk=Tt(),hk;(function(t){t.method="window/showDocument",t.messageDirection=pk.MessageDirection.serverToClient,t.type=new pk.ProtocolRequestType(t.method)})(hk||(_d.ShowDocumentRequest=hk={}))});var Tk=k(Sd=>{"use strict";Object.defineProperty(Sd,"__esModule",{value:!0});Sd.LinkedEditingRangeRequest=void 0;var gk=Tt(),yk;(function(t){t.method="textDocument/linkedEditingRange",t.messageDirection=gk.MessageDirection.clientToServer,t.type=new gk.ProtocolRequestType(t.method)})(yk||(Sd.LinkedEditingRangeRequest=yk={}))});var Pk=k(sr=>{"use strict";Object.defineProperty(sr,"__esModule",{value:!0});sr.WillDeleteFilesRequest=sr.DidDeleteFilesNotification=sr.DidRenameFilesNotification=sr.WillRenameFilesRequest=sr.DidCreateFilesNotification=sr.WillCreateFilesRequest=sr.FileOperationPatternKind=void 0;var Zr=Tt(),vk;(function(t){t.file="file",t.folder="folder"})(vk||(sr.FileOperationPatternKind=vk={}));var bk;(function(t){t.method="workspace/willCreateFiles",t.messageDirection=Zr.MessageDirection.clientToServer,t.type=new Zr.ProtocolRequestType(t.method)})(bk||(sr.WillCreateFilesRequest=bk={}));var _k;(function(t){t.method="workspace/didCreateFiles",t.messageDirection=Zr.MessageDirection.clientToServer,t.type=new Zr.ProtocolNotificationType(t.method)})(_k||(sr.DidCreateFilesNotification=_k={}));var Sk;(function(t){t.method="workspace/willRenameFiles",t.messageDirection=Zr.MessageDirection.clientToServer,t.type=new Zr.ProtocolRequestType(t.method)})(Sk||(sr.WillRenameFilesRequest=Sk={}));var Nk;(function(t){t.method="workspace/didRenameFiles",t.messageDirection=Zr.MessageDirection.clientToServer,t.type=new Zr.ProtocolNotificationType(t.method)})(Nk||(sr.DidRenameFilesNotification=Nk={}));var kk;(function(t){t.method="workspace/didDeleteFiles",t.messageDirection=Zr.MessageDirection.clientToServer,t.type=new Zr.ProtocolNotificationType(t.method)})(kk||(sr.DidDeleteFilesNotification=kk={}));var Rk;(function(t){t.method="workspace/willDeleteFiles",t.messageDirection=Zr.MessageDirection.clientToServer,t.type=new Zr.ProtocolRequestType(t.method)})(Rk||(sr.WillDeleteFilesRequest=Rk={}))});var Ak=k(Wi=>{"use strict";Object.defineProperty(Wi,"__esModule",{value:!0});Wi.MonikerRequest=Wi.MonikerKind=Wi.UniquenessLevel=void 0;var wk=Tt(),Ek;(function(t){t.document="document",t.project="project",t.group="group",t.scheme="scheme",t.global="global"})(Ek||(Wi.UniquenessLevel=Ek={}));var Dk;(function(t){t.$import="import",t.$export="export",t.local="local"})(Dk||(Wi.MonikerKind=Dk={}));var Ck;(function(t){t.method="textDocument/moniker",t.messageDirection=wk.MessageDirection.clientToServer,t.type=new wk.ProtocolRequestType(t.method)})(Ck||(Wi.MonikerRequest=Ck={}))});var xk=k(Gi=>{"use strict";Object.defineProperty(Gi,"__esModule",{value:!0});Gi.TypeHierarchySubtypesRequest=Gi.TypeHierarchySupertypesRequest=Gi.TypeHierarchyPrepareRequest=void 0;var qo=Tt(),Ik;(function(t){t.method="textDocument/prepareTypeHierarchy",t.messageDirection=qo.MessageDirection.clientToServer,t.type=new qo.ProtocolRequestType(t.method)})(Ik||(Gi.TypeHierarchyPrepareRequest=Ik={}));var Ok;(function(t){t.method="typeHierarchy/supertypes",t.messageDirection=qo.MessageDirection.clientToServer,t.type=new qo.ProtocolRequestType(t.method)})(Ok||(Gi.TypeHierarchySupertypesRequest=Ok={}));var Mk;(function(t){t.method="typeHierarchy/subtypes",t.messageDirection=qo.MessageDirection.clientToServer,t.type=new qo.ProtocolRequestType(t.method)})(Mk||(Gi.TypeHierarchySubtypesRequest=Mk={}))});var $k=k($o=>{"use strict";Object.defineProperty($o,"__esModule",{value:!0});$o.InlineValueRefreshRequest=$o.InlineValueRequest=void 0;var Nd=Tt(),Lk;(function(t){t.method="textDocument/inlineValue",t.messageDirection=Nd.MessageDirection.clientToServer,t.type=new Nd.ProtocolRequestType(t.method)})(Lk||($o.InlineValueRequest=Lk={}));var qk;(function(t){t.method="workspace/inlineValue/refresh",t.messageDirection=Nd.MessageDirection.serverToClient,t.type=new Nd.ProtocolRequestType0(t.method)})(qk||($o.InlineValueRefreshRequest=qk={}))});var Uk=k(Ki=>{"use strict";Object.defineProperty(Ki,"__esModule",{value:!0});Ki.InlayHintRefreshRequest=Ki.InlayHintResolveRequest=Ki.InlayHintRequest=void 0;var Bo=Tt(),Bk;(function(t){t.method="textDocument/inlayHint",t.messageDirection=Bo.MessageDirection.clientToServer,t.type=new Bo.ProtocolRequestType(t.method)})(Bk||(Ki.InlayHintRequest=Bk={}));var Fk;(function(t){t.method="inlayHint/resolve",t.messageDirection=Bo.MessageDirection.clientToServer,t.type=new Bo.ProtocolRequestType(t.method)})(Fk||(Ki.InlayHintResolveRequest=Fk={}));var jk;(function(t){t.method="workspace/inlayHint/refresh",t.messageDirection=Bo.MessageDirection.serverToClient,t.type=new Bo.ProtocolRequestType0(t.method)})(jk||(Ki.InlayHintRefreshRequest=jk={}))});var Yk=k(en=>{"use strict";Object.defineProperty(en,"__esModule",{value:!0});en.DiagnosticRefreshRequest=en.WorkspaceDiagnosticRequest=en.DocumentDiagnosticRequest=en.DocumentDiagnosticReportKind=en.DiagnosticServerCancellationData=void 0;var Kk=js(),EF=dd(),Fo=Tt(),Hk;(function(t){function e(r){let n=r;return n&&EF.boolean(n.retriggerRequest)}t.is=e})(Hk||(en.DiagnosticServerCancellationData=Hk={}));var Vk;(function(t){t.Full="full",t.Unchanged="unchanged"})(Vk||(en.DocumentDiagnosticReportKind=Vk={}));var zk;(function(t){t.method="textDocument/diagnostic",t.messageDirection=Fo.MessageDirection.clientToServer,t.type=new Fo.ProtocolRequestType(t.method),t.partialResult=new Kk.ProgressType})(zk||(en.DocumentDiagnosticRequest=zk={}));var Wk;(function(t){t.method="workspace/diagnostic",t.messageDirection=Fo.MessageDirection.clientToServer,t.type=new Fo.ProtocolRequestType(t.method),t.partialResult=new Kk.ProgressType})(Wk||(en.WorkspaceDiagnosticRequest=Wk={}));var Gk;(function(t){t.method="workspace/diagnostic/refresh",t.messageDirection=Fo.MessageDirection.serverToClient,t.type=new Fo.ProtocolRequestType0(t.method)})(Gk||(en.DiagnosticRefreshRequest=Gk={}))});var rR=k(Pt=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:!0});Pt.DidCloseNotebookDocumentNotification=Pt.DidSaveNotebookDocumentNotification=Pt.DidChangeNotebookDocumentNotification=Pt.NotebookCellArrayChange=Pt.DidOpenNotebookDocumentNotification=Pt.NotebookDocumentSyncRegistrationType=Pt.NotebookDocument=Pt.NotebookCell=Pt.ExecutionSummary=Pt.NotebookCellKind=void 0;var uc=ud(),Cn=dd(),Yn=Tt(),Qg;(function(t){t.Markup=1,t.Code=2;function e(r){return r===1||r===2}t.is=e})(Qg||(Pt.NotebookCellKind=Qg={}));var Zg;(function(t){function e(i,s){let o={executionOrder:i};return(s===!0||s===!1)&&(o.success=s),o}t.create=e;function r(i){let s=i;return Cn.objectLiteral(s)&&uc.uinteger.is(s.executionOrder)&&(s.success===void 0||Cn.boolean(s.success))}t.is=r;function n(i,s){return i===s?!0:i==null||s===null||s===void 0?!1:i.executionOrder===s.executionOrder&&i.success===s.success}t.equals=n})(Zg||(Pt.ExecutionSummary=Zg={}));var kd;(function(t){function e(s,o){return{kind:s,document:o}}t.create=e;function r(s){let o=s;return Cn.objectLiteral(o)&&Qg.is(o.kind)&&uc.DocumentUri.is(o.document)&&(o.metadata===void 0||Cn.objectLiteral(o.metadata))}t.is=r;function n(s,o){let a=new Set;return s.document!==o.document&&a.add("document"),s.kind!==o.kind&&a.add("kind"),s.executionSummary!==o.executionSummary&&a.add("executionSummary"),(s.metadata!==void 0||o.metadata!==void 0)&&!i(s.metadata,o.metadata)&&a.add("metadata"),(s.executionSummary!==void 0||o.executionSummary!==void 0)&&!Zg.equals(s.executionSummary,o.executionSummary)&&a.add("executionSummary"),a}t.diff=n;function i(s,o){if(s===o)return!0;if(s==null||o===null||o===void 0||typeof s!=typeof o||typeof s!="object")return!1;let a=Array.isArray(s),c=Array.isArray(o);if(a!==c)return!1;if(a&&c){if(s.length!==o.length)return!1;for(let l=0;l<s.length;l++)if(!i(s[l],o[l]))return!1}if(Cn.objectLiteral(s)&&Cn.objectLiteral(o)){let l=Object.keys(s),u=Object.keys(o);if(l.length!==u.length||(l.sort(),u.sort(),!i(l,u)))return!1;for(let d=0;d<l.length;d++){let f=l[d];if(!i(s[f],o[f]))return!1}}return!0}})(kd||(Pt.NotebookCell=kd={}));var Xk;(function(t){function e(n,i,s,o){return{uri:n,notebookType:i,version:s,cells:o}}t.create=e;function r(n){let i=n;return Cn.objectLiteral(i)&&Cn.string(i.uri)&&uc.integer.is(i.version)&&Cn.typedArray(i.cells,kd.is)}t.is=r})(Xk||(Pt.NotebookDocument=Xk={}));var jo;(function(t){t.method="notebookDocument/sync",t.messageDirection=Yn.MessageDirection.clientToServer,t.type=new Yn.RegistrationType(t.method)})(jo||(Pt.NotebookDocumentSyncRegistrationType=jo={}));var Jk;(function(t){t.method="notebookDocument/didOpen",t.messageDirection=Yn.MessageDirection.clientToServer,t.type=new Yn.ProtocolNotificationType(t.method),t.registrationMethod=jo.method})(Jk||(Pt.DidOpenNotebookDocumentNotification=Jk={}));var Qk;(function(t){function e(n){let i=n;return Cn.objectLiteral(i)&&uc.uinteger.is(i.start)&&uc.uinteger.is(i.deleteCount)&&(i.cells===void 0||Cn.typedArray(i.cells,kd.is))}t.is=e;function r(n,i,s){let o={start:n,deleteCount:i};return s!==void 0&&(o.cells=s),o}t.create=r})(Qk||(Pt.NotebookCellArrayChange=Qk={}));var Zk;(function(t){t.method="notebookDocument/didChange",t.messageDirection=Yn.MessageDirection.clientToServer,t.type=new Yn.ProtocolNotificationType(t.method),t.registrationMethod=jo.method})(Zk||(Pt.DidChangeNotebookDocumentNotification=Zk={}));var eR;(function(t){t.method="notebookDocument/didSave",t.messageDirection=Yn.MessageDirection.clientToServer,t.type=new Yn.ProtocolNotificationType(t.method),t.registrationMethod=jo.method})(eR||(Pt.DidSaveNotebookDocumentNotification=eR={}));var tR;(function(t){t.method="notebookDocument/didClose",t.messageDirection=Yn.MessageDirection.clientToServer,t.type=new Yn.ProtocolNotificationType(t.method),t.registrationMethod=jo.method})(tR||(Pt.DidCloseNotebookDocumentNotification=tR={}))});var sR=k(Rd=>{"use strict";Object.defineProperty(Rd,"__esModule",{value:!0});Rd.InlineCompletionRequest=void 0;var nR=Tt(),iR;(function(t){t.method="textDocument/inlineCompletion",t.messageDirection=nR.MessageDirection.clientToServer,t.type=new nR.ProtocolRequestType(t.method)})(iR||(Rd.InlineCompletionRequest=iR={}))});var TP=k(N=>{"use strict";Object.defineProperty(N,"__esModule",{value:!0});N.WorkspaceSymbolRequest=N.CodeActionResolveRequest=N.CodeActionRequest=N.DocumentSymbolRequest=N.DocumentHighlightRequest=N.ReferencesRequest=N.DefinitionRequest=N.SignatureHelpRequest=N.SignatureHelpTriggerKind=N.HoverRequest=N.CompletionResolveRequest=N.CompletionRequest=N.CompletionTriggerKind=N.PublishDiagnosticsNotification=N.WatchKind=N.RelativePattern=N.FileChangeType=N.DidChangeWatchedFilesNotification=N.WillSaveTextDocumentWaitUntilRequest=N.WillSaveTextDocumentNotification=N.TextDocumentSaveReason=N.DidSaveTextDocumentNotification=N.DidCloseTextDocumentNotification=N.DidChangeTextDocumentNotification=N.TextDocumentContentChangeEvent=N.DidOpenTextDocumentNotification=N.TextDocumentSyncKind=N.TelemetryEventNotification=N.LogMessageNotification=N.ShowMessageRequest=N.ShowMessageNotification=N.MessageType=N.DidChangeConfigurationNotification=N.ExitNotification=N.ShutdownRequest=N.InitializedNotification=N.InitializeErrorCodes=N.InitializeRequest=N.WorkDoneProgressOptions=N.TextDocumentRegistrationOptions=N.StaticRegistrationOptions=N.PositionEncodingKind=N.FailureHandlingKind=N.ResourceOperationKind=N.UnregistrationRequest=N.RegistrationRequest=N.DocumentSelector=N.NotebookCellTextDocumentFilter=N.NotebookDocumentFilter=N.TextDocumentFilter=void 0;N.MonikerRequest=N.MonikerKind=N.UniquenessLevel=N.WillDeleteFilesRequest=N.DidDeleteFilesNotification=N.WillRenameFilesRequest=N.DidRenameFilesNotification=N.WillCreateFilesRequest=N.DidCreateFilesNotification=N.FileOperationPatternKind=N.LinkedEditingRangeRequest=N.ShowDocumentRequest=N.SemanticTokensRegistrationType=N.SemanticTokensRefreshRequest=N.SemanticTokensRangeRequest=N.SemanticTokensDeltaRequest=N.SemanticTokensRequest=N.TokenFormat=N.CallHierarchyPrepareRequest=N.CallHierarchyOutgoingCallsRequest=N.CallHierarchyIncomingCallsRequest=N.WorkDoneProgressCancelNotification=N.WorkDoneProgressCreateRequest=N.WorkDoneProgress=N.SelectionRangeRequest=N.DeclarationRequest=N.FoldingRangeRefreshRequest=N.FoldingRangeRequest=N.ColorPresentationRequest=N.DocumentColorRequest=N.ConfigurationRequest=N.DidChangeWorkspaceFoldersNotification=N.WorkspaceFoldersRequest=N.TypeDefinitionRequest=N.ImplementationRequest=N.ApplyWorkspaceEditRequest=N.ExecuteCommandRequest=N.PrepareRenameRequest=N.RenameRequest=N.PrepareSupportDefaultBehavior=N.DocumentOnTypeFormattingRequest=N.DocumentRangesFormattingRequest=N.DocumentRangeFormattingRequest=N.DocumentFormattingRequest=N.DocumentLinkResolveRequest=N.DocumentLinkRequest=N.CodeLensRefreshRequest=N.CodeLensResolveRequest=N.CodeLensRequest=N.WorkspaceSymbolResolveRequest=void 0;N.InlineCompletionRequest=N.DidCloseNotebookDocumentNotification=N.DidSaveNotebookDocumentNotification=N.DidChangeNotebookDocumentNotification=N.NotebookCellArrayChange=N.DidOpenNotebookDocumentNotification=N.NotebookDocumentSyncRegistrationType=N.NotebookDocument=N.NotebookCell=N.ExecutionSummary=N.NotebookCellKind=N.DiagnosticRefreshRequest=N.WorkspaceDiagnosticRequest=N.DocumentDiagnosticRequest=N.DocumentDiagnosticReportKind=N.DiagnosticServerCancellationData=N.InlayHintRefreshRequest=N.InlayHintResolveRequest=N.InlayHintRequest=N.InlineValueRefreshRequest=N.InlineValueRequest=N.TypeHierarchySupertypesRequest=N.TypeHierarchySubtypesRequest=N.TypeHierarchyPrepareRequest=void 0;var V=Tt(),oR=ud(),zt=dd(),DF=AN();Object.defineProperty(N,"ImplementationRequest",{enumerable:!0,get:function(){return DF.ImplementationRequest}});var CF=MN();Object.defineProperty(N,"TypeDefinitionRequest",{enumerable:!0,get:function(){return CF.TypeDefinitionRequest}});var hP=qN();Object.defineProperty(N,"WorkspaceFoldersRequest",{enumerable:!0,get:function(){return hP.WorkspaceFoldersRequest}});Object.defineProperty(N,"DidChangeWorkspaceFoldersNotification",{enumerable:!0,get:function(){return hP.DidChangeWorkspaceFoldersNotification}});var AF=FN();Object.defineProperty(N,"ConfigurationRequest",{enumerable:!0,get:function(){return AF.ConfigurationRequest}});var mP=HN();Object.defineProperty(N,"DocumentColorRequest",{enumerable:!0,get:function(){return mP.DocumentColorRequest}});Object.defineProperty(N,"ColorPresentationRequest",{enumerable:!0,get:function(){return mP.ColorPresentationRequest}});var gP=WN();Object.defineProperty(N,"FoldingRangeRequest",{enumerable:!0,get:function(){return gP.FoldingRangeRequest}});Object.defineProperty(N,"FoldingRangeRefreshRequest",{enumerable:!0,get:function(){return gP.FoldingRangeRefreshRequest}});var IF=YN();Object.defineProperty(N,"DeclarationRequest",{enumerable:!0,get:function(){return IF.DeclarationRequest}});var OF=QN();Object.defineProperty(N,"SelectionRangeRequest",{enumerable:!0,get:function(){return OF.SelectionRangeRequest}});var iy=rk();Object.defineProperty(N,"WorkDoneProgress",{enumerable:!0,get:function(){return iy.WorkDoneProgress}});Object.defineProperty(N,"WorkDoneProgressCreateRequest",{enumerable:!0,get:function(){return iy.WorkDoneProgressCreateRequest}});Object.defineProperty(N,"WorkDoneProgressCancelNotification",{enumerable:!0,get:function(){return iy.WorkDoneProgressCancelNotification}});var sy=ok();Object.defineProperty(N,"CallHierarchyIncomingCallsRequest",{enumerable:!0,get:function(){return sy.CallHierarchyIncomingCallsRequest}});Object.defineProperty(N,"CallHierarchyOutgoingCallsRequest",{enumerable:!0,get:function(){return sy.CallHierarchyOutgoingCallsRequest}});Object.defineProperty(N,"CallHierarchyPrepareRequest",{enumerable:!0,get:function(){return sy.CallHierarchyPrepareRequest}});var Uo=fk();Object.defineProperty(N,"TokenFormat",{enumerable:!0,get:function(){return Uo.TokenFormat}});Object.defineProperty(N,"SemanticTokensRequest",{enumerable:!0,get:function(){return Uo.SemanticTokensRequest}});Object.defineProperty(N,"SemanticTokensDeltaRequest",{enumerable:!0,get:function(){return Uo.SemanticTokensDeltaRequest}});Object.defineProperty(N,"SemanticTokensRangeRequest",{enumerable:!0,get:function(){return Uo.SemanticTokensRangeRequest}});Object.defineProperty(N,"SemanticTokensRefreshRequest",{enumerable:!0,get:function(){return Uo.SemanticTokensRefreshRequest}});Object.defineProperty(N,"SemanticTokensRegistrationType",{enumerable:!0,get:function(){return Uo.SemanticTokensRegistrationType}});var MF=mk();Object.defineProperty(N,"ShowDocumentRequest",{enumerable:!0,get:function(){return MF.ShowDocumentRequest}});var xF=Tk();Object.defineProperty(N,"LinkedEditingRangeRequest",{enumerable:!0,get:function(){return xF.LinkedEditingRangeRequest}});var Us=Pk();Object.defineProperty(N,"FileOperationPatternKind",{enumerable:!0,get:function(){return Us.FileOperationPatternKind}});Object.defineProperty(N,"DidCreateFilesNotification",{enumerable:!0,get:function(){return Us.DidCreateFilesNotification}});Object.defineProperty(N,"WillCreateFilesRequest",{enumerable:!0,get:function(){return Us.WillCreateFilesRequest}});Object.defineProperty(N,"DidRenameFilesNotification",{enumerable:!0,get:function(){return Us.DidRenameFilesNotification}});Object.defineProperty(N,"WillRenameFilesRequest",{enumerable:!0,get:function(){return Us.WillRenameFilesRequest}});Object.defineProperty(N,"DidDeleteFilesNotification",{enumerable:!0,get:function(){return Us.DidDeleteFilesNotification}});Object.defineProperty(N,"WillDeleteFilesRequest",{enumerable:!0,get:function(){return Us.WillDeleteFilesRequest}});var oy=Ak();Object.defineProperty(N,"UniquenessLevel",{enumerable:!0,get:function(){return oy.UniquenessLevel}});Object.defineProperty(N,"MonikerKind",{enumerable:!0,get:function(){return oy.MonikerKind}});Object.defineProperty(N,"MonikerRequest",{enumerable:!0,get:function(){return oy.MonikerRequest}});var ay=xk();Object.defineProperty(N,"TypeHierarchyPrepareRequest",{enumerable:!0,get:function(){return ay.TypeHierarchyPrepareRequest}});Object.defineProperty(N,"TypeHierarchySubtypesRequest",{enumerable:!0,get:function(){return ay.TypeHierarchySubtypesRequest}});Object.defineProperty(N,"TypeHierarchySupertypesRequest",{enumerable:!0,get:function(){return ay.TypeHierarchySupertypesRequest}});var yP=$k();Object.defineProperty(N,"InlineValueRequest",{enumerable:!0,get:function(){return yP.InlineValueRequest}});Object.defineProperty(N,"InlineValueRefreshRequest",{enumerable:!0,get:function(){return yP.InlineValueRefreshRequest}});var cy=Uk();Object.defineProperty(N,"InlayHintRequest",{enumerable:!0,get:function(){return cy.InlayHintRequest}});Object.defineProperty(N,"InlayHintResolveRequest",{enumerable:!0,get:function(){return cy.InlayHintResolveRequest}});Object.defineProperty(N,"InlayHintRefreshRequest",{enumerable:!0,get:function(){return cy.InlayHintRefreshRequest}});var dc=Yk();Object.defineProperty(N,"DiagnosticServerCancellationData",{enumerable:!0,get:function(){return dc.DiagnosticServerCancellationData}});Object.defineProperty(N,"DocumentDiagnosticReportKind",{enumerable:!0,get:function(){return dc.DocumentDiagnosticReportKind}});Object.defineProperty(N,"DocumentDiagnosticRequest",{enumerable:!0,get:function(){return dc.DocumentDiagnosticRequest}});Object.defineProperty(N,"WorkspaceDiagnosticRequest",{enumerable:!0,get:function(){return dc.WorkspaceDiagnosticRequest}});Object.defineProperty(N,"DiagnosticRefreshRequest",{enumerable:!0,get:function(){return dc.DiagnosticRefreshRequest}});var Xn=rR();Object.defineProperty(N,"NotebookCellKind",{enumerable:!0,get:function(){return Xn.NotebookCellKind}});Object.defineProperty(N,"ExecutionSummary",{enumerable:!0,get:function(){return Xn.ExecutionSummary}});Object.defineProperty(N,"NotebookCell",{enumerable:!0,get:function(){return Xn.NotebookCell}});Object.defineProperty(N,"NotebookDocument",{enumerable:!0,get:function(){return Xn.NotebookDocument}});Object.defineProperty(N,"NotebookDocumentSyncRegistrationType",{enumerable:!0,get:function(){return Xn.NotebookDocumentSyncRegistrationType}});Object.defineProperty(N,"DidOpenNotebookDocumentNotification",{enumerable:!0,get:function(){return Xn.DidOpenNotebookDocumentNotification}});Object.defineProperty(N,"NotebookCellArrayChange",{enumerable:!0,get:function(){return Xn.NotebookCellArrayChange}});Object.defineProperty(N,"DidChangeNotebookDocumentNotification",{enumerable:!0,get:function(){return Xn.DidChangeNotebookDocumentNotification}});Object.defineProperty(N,"DidSaveNotebookDocumentNotification",{enumerable:!0,get:function(){return Xn.DidSaveNotebookDocumentNotification}});Object.defineProperty(N,"DidCloseNotebookDocumentNotification",{enumerable:!0,get:function(){return Xn.DidCloseNotebookDocumentNotification}});var LF=sR();Object.defineProperty(N,"InlineCompletionRequest",{enumerable:!0,get:function(){return LF.InlineCompletionRequest}});var ey;(function(t){function e(r){let n=r;return zt.string(n)||zt.string(n.language)||zt.string(n.scheme)||zt.string(n.pattern)}t.is=e})(ey||(N.TextDocumentFilter=ey={}));var ty;(function(t){function e(r){let n=r;return zt.objectLiteral(n)&&(zt.string(n.notebookType)||zt.string(n.scheme)||zt.string(n.pattern))}t.is=e})(ty||(N.NotebookDocumentFilter=ty={}));var ry;(function(t){function e(r){let n=r;return zt.objectLiteral(n)&&(zt.string(n.notebook)||ty.is(n.notebook))&&(n.language===void 0||zt.string(n.language))}t.is=e})(ry||(N.NotebookCellTextDocumentFilter=ry={}));var ny;(function(t){function e(r){if(!Array.isArray(r))return!1;for(let n of r)if(!zt.string(n)&&!ey.is(n)&&!ry.is(n))return!1;return!0}t.is=e})(ny||(N.DocumentSelector=ny={}));var aR;(function(t){t.method="client/registerCapability",t.messageDirection=V.MessageDirection.serverToClient,t.type=new V.ProtocolRequestType(t.method)})(aR||(N.RegistrationRequest=aR={}));var cR;(function(t){t.method="client/unregisterCapability",t.messageDirection=V.MessageDirection.serverToClient,t.type=new V.ProtocolRequestType(t.method)})(cR||(N.UnregistrationRequest=cR={}));var lR;(function(t){t.Create="create",t.Rename="rename",t.Delete="delete"})(lR||(N.ResourceOperationKind=lR={}));var uR;(function(t){t.Abort="abort",t.Transactional="transactional",t.TextOnlyTransactional="textOnlyTransactional",t.Undo="undo"})(uR||(N.FailureHandlingKind=uR={}));var dR;(function(t){t.UTF8="utf-8",t.UTF16="utf-16",t.UTF32="utf-32"})(dR||(N.PositionEncodingKind=dR={}));var fR;(function(t){function e(r){let n=r;return n&&zt.string(n.id)&&n.id.length>0}t.hasId=e})(fR||(N.StaticRegistrationOptions=fR={}));var pR;(function(t){function e(r){let n=r;return n&&(n.documentSelector===null||ny.is(n.documentSelector))}t.is=e})(pR||(N.TextDocumentRegistrationOptions=pR={}));var hR;(function(t){function e(n){let i=n;return zt.objectLiteral(i)&&(i.workDoneProgress===void 0||zt.boolean(i.workDoneProgress))}t.is=e;function r(n){let i=n;return i&&zt.boolean(i.workDoneProgress)}t.hasWorkDoneProgress=r})(hR||(N.WorkDoneProgressOptions=hR={}));var mR;(function(t){t.method="initialize",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolRequestType(t.method)})(mR||(N.InitializeRequest=mR={}));var gR;(function(t){t.unknownProtocolVersion=1})(gR||(N.InitializeErrorCodes=gR={}));var yR;(function(t){t.method="initialized",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolNotificationType(t.method)})(yR||(N.InitializedNotification=yR={}));var TR;(function(t){t.method="shutdown",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolRequestType0(t.method)})(TR||(N.ShutdownRequest=TR={}));var vR;(function(t){t.method="exit",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolNotificationType0(t.method)})(vR||(N.ExitNotification=vR={}));var bR;(function(t){t.method="workspace/didChangeConfiguration",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolNotificationType(t.method)})(bR||(N.DidChangeConfigurationNotification=bR={}));var _R;(function(t){t.Error=1,t.Warning=2,t.Info=3,t.Log=4,t.Debug=5})(_R||(N.MessageType=_R={}));var SR;(function(t){t.method="window/showMessage",t.messageDirection=V.MessageDirection.serverToClient,t.type=new V.ProtocolNotificationType(t.method)})(SR||(N.ShowMessageNotification=SR={}));var NR;(function(t){t.method="window/showMessageRequest",t.messageDirection=V.MessageDirection.serverToClient,t.type=new V.ProtocolRequestType(t.method)})(NR||(N.ShowMessageRequest=NR={}));var kR;(function(t){t.method="window/logMessage",t.messageDirection=V.MessageDirection.serverToClient,t.type=new V.ProtocolNotificationType(t.method)})(kR||(N.LogMessageNotification=kR={}));var RR;(function(t){t.method="telemetry/event",t.messageDirection=V.MessageDirection.serverToClient,t.type=new V.ProtocolNotificationType(t.method)})(RR||(N.TelemetryEventNotification=RR={}));var PR;(function(t){t.None=0,t.Full=1,t.Incremental=2})(PR||(N.TextDocumentSyncKind=PR={}));var wR;(function(t){t.method="textDocument/didOpen",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolNotificationType(t.method)})(wR||(N.DidOpenTextDocumentNotification=wR={}));var ER;(function(t){function e(n){let i=n;return i!=null&&typeof i.text=="string"&&i.range!==void 0&&(i.rangeLength===void 0||typeof i.rangeLength=="number")}t.isIncremental=e;function r(n){let i=n;return i!=null&&typeof i.text=="string"&&i.range===void 0&&i.rangeLength===void 0}t.isFull=r})(ER||(N.TextDocumentContentChangeEvent=ER={}));var DR;(function(t){t.method="textDocument/didChange",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolNotificationType(t.method)})(DR||(N.DidChangeTextDocumentNotification=DR={}));var CR;(function(t){t.method="textDocument/didClose",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolNotificationType(t.method)})(CR||(N.DidCloseTextDocumentNotification=CR={}));var AR;(function(t){t.method="textDocument/didSave",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolNotificationType(t.method)})(AR||(N.DidSaveTextDocumentNotification=AR={}));var IR;(function(t){t.Manual=1,t.AfterDelay=2,t.FocusOut=3})(IR||(N.TextDocumentSaveReason=IR={}));var OR;(function(t){t.method="textDocument/willSave",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolNotificationType(t.method)})(OR||(N.WillSaveTextDocumentNotification=OR={}));var MR;(function(t){t.method="textDocument/willSaveWaitUntil",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolRequestType(t.method)})(MR||(N.WillSaveTextDocumentWaitUntilRequest=MR={}));var xR;(function(t){t.method="workspace/didChangeWatchedFiles",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolNotificationType(t.method)})(xR||(N.DidChangeWatchedFilesNotification=xR={}));var LR;(function(t){t.Created=1,t.Changed=2,t.Deleted=3})(LR||(N.FileChangeType=LR={}));var qR;(function(t){function e(r){let n=r;return zt.objectLiteral(n)&&(oR.URI.is(n.baseUri)||oR.WorkspaceFolder.is(n.baseUri))&&zt.string(n.pattern)}t.is=e})(qR||(N.RelativePattern=qR={}));var $R;(function(t){t.Create=1,t.Change=2,t.Delete=4})($R||(N.WatchKind=$R={}));var BR;(function(t){t.method="textDocument/publishDiagnostics",t.messageDirection=V.MessageDirection.serverToClient,t.type=new V.ProtocolNotificationType(t.method)})(BR||(N.PublishDiagnosticsNotification=BR={}));var FR;(function(t){t.Invoked=1,t.TriggerCharacter=2,t.TriggerForIncompleteCompletions=3})(FR||(N.CompletionTriggerKind=FR={}));var jR;(function(t){t.method="textDocument/completion",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolRequestType(t.method)})(jR||(N.CompletionRequest=jR={}));var UR;(function(t){t.method="completionItem/resolve",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolRequestType(t.method)})(UR||(N.CompletionResolveRequest=UR={}));var HR;(function(t){t.method="textDocument/hover",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolRequestType(t.method)})(HR||(N.HoverRequest=HR={}));var VR;(function(t){t.Invoked=1,t.TriggerCharacter=2,t.ContentChange=3})(VR||(N.SignatureHelpTriggerKind=VR={}));var zR;(function(t){t.method="textDocument/signatureHelp",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolRequestType(t.method)})(zR||(N.SignatureHelpRequest=zR={}));var WR;(function(t){t.method="textDocument/definition",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolRequestType(t.method)})(WR||(N.DefinitionRequest=WR={}));var GR;(function(t){t.method="textDocument/references",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolRequestType(t.method)})(GR||(N.ReferencesRequest=GR={}));var KR;(function(t){t.method="textDocument/documentHighlight",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolRequestType(t.method)})(KR||(N.DocumentHighlightRequest=KR={}));var YR;(function(t){t.method="textDocument/documentSymbol",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolRequestType(t.method)})(YR||(N.DocumentSymbolRequest=YR={}));var XR;(function(t){t.method="textDocument/codeAction",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolRequestType(t.method)})(XR||(N.CodeActionRequest=XR={}));var JR;(function(t){t.method="codeAction/resolve",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolRequestType(t.method)})(JR||(N.CodeActionResolveRequest=JR={}));var QR;(function(t){t.method="workspace/symbol",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolRequestType(t.method)})(QR||(N.WorkspaceSymbolRequest=QR={}));var ZR;(function(t){t.method="workspaceSymbol/resolve",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolRequestType(t.method)})(ZR||(N.WorkspaceSymbolResolveRequest=ZR={}));var eP;(function(t){t.method="textDocument/codeLens",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolRequestType(t.method)})(eP||(N.CodeLensRequest=eP={}));var tP;(function(t){t.method="codeLens/resolve",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolRequestType(t.method)})(tP||(N.CodeLensResolveRequest=tP={}));var rP;(function(t){t.method="workspace/codeLens/refresh",t.messageDirection=V.MessageDirection.serverToClient,t.type=new V.ProtocolRequestType0(t.method)})(rP||(N.CodeLensRefreshRequest=rP={}));var nP;(function(t){t.method="textDocument/documentLink",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolRequestType(t.method)})(nP||(N.DocumentLinkRequest=nP={}));var iP;(function(t){t.method="documentLink/resolve",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolRequestType(t.method)})(iP||(N.DocumentLinkResolveRequest=iP={}));var sP;(function(t){t.method="textDocument/formatting",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolRequestType(t.method)})(sP||(N.DocumentFormattingRequest=sP={}));var oP;(function(t){t.method="textDocument/rangeFormatting",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolRequestType(t.method)})(oP||(N.DocumentRangeFormattingRequest=oP={}));var aP;(function(t){t.method="textDocument/rangesFormatting",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolRequestType(t.method)})(aP||(N.DocumentRangesFormattingRequest=aP={}));var cP;(function(t){t.method="textDocument/onTypeFormatting",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolRequestType(t.method)})(cP||(N.DocumentOnTypeFormattingRequest=cP={}));var lP;(function(t){t.Identifier=1})(lP||(N.PrepareSupportDefaultBehavior=lP={}));var uP;(function(t){t.method="textDocument/rename",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolRequestType(t.method)})(uP||(N.RenameRequest=uP={}));var dP;(function(t){t.method="textDocument/prepareRename",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolRequestType(t.method)})(dP||(N.PrepareRenameRequest=dP={}));var fP;(function(t){t.method="workspace/executeCommand",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolRequestType(t.method)})(fP||(N.ExecuteCommandRequest=fP={}));var pP;(function(t){t.method="workspace/applyEdit",t.messageDirection=V.MessageDirection.serverToClient,t.type=new V.ProtocolRequestType("workspace/applyEdit")})(pP||(N.ApplyWorkspaceEditRequest=pP={}))});var bP=k(Pd=>{"use strict";Object.defineProperty(Pd,"__esModule",{value:!0});Pd.createProtocolConnection=void 0;var vP=js();function qF(t,e,r,n){return vP.ConnectionStrategy.is(n)&&(n={connectionStrategy:n}),(0,vP.createMessageConnection)(t,e,r,n)}Pd.createProtocolConnection=qF});var SP=k(Er=>{"use strict";var $F=Er&&Er.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(e,r);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,i)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),wd=Er&&Er.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&$F(e,t,r)};Object.defineProperty(Er,"__esModule",{value:!0});Er.LSPErrorCodes=Er.createProtocolConnection=void 0;wd(js(),Er);wd(ud(),Er);wd(Tt(),Er);wd(TP(),Er);var BF=bP();Object.defineProperty(Er,"createProtocolConnection",{enumerable:!0,get:function(){return BF.createProtocolConnection}});var _P;(function(t){t.lspReservedErrorRangeStart=-32899,t.RequestFailed=-32803,t.ServerCancelled=-32802,t.ContentModified=-32801,t.RequestCancelled=-32800,t.lspReservedErrorRangeEnd=-32800})(_P||(Er.LSPErrorCodes=_P={}))});var Et=k(Jn=>{"use strict";var FF=Jn&&Jn.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(e,r);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,i)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),NP=Jn&&Jn.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&FF(e,t,r)};Object.defineProperty(Jn,"__esModule",{value:!0});Jn.createProtocolConnection=void 0;var jF=Wg();NP(Wg(),Jn);NP(SP(),Jn);function UF(t,e,r,n){return(0,jF.createMessageConnection)(t,e,r,n)}Jn.createProtocolConnection=UF});var ly=k(tn=>{"use strict";Object.defineProperty(tn,"__esModule",{value:!0});tn.generateUuid=tn.parse=tn.isUUID=tn.v4=tn.empty=void 0;var fc=class{constructor(e){this._value=e}asHex(){return this._value}equals(e){return this.asHex()===e.asHex()}},pc=class t extends fc{static _oneOf(e){return e[Math.floor(e.length*Math.random())]}static _randomHex(){return t._oneOf(t._chars)}constructor(){super([t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),"-",t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),"-","4",t._randomHex(),t._randomHex(),t._randomHex(),"-",t._oneOf(t._timeHighBits),t._randomHex(),t._randomHex(),t._randomHex(),"-",t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex()].join(""))}};pc._chars=["0","1","2","3","4","5","6","6","7","8","9","a","b","c","d","e","f"];pc._timeHighBits=["8","9","a","b"];tn.empty=new fc("00000000-0000-0000-0000-000000000000");function kP(){return new pc}tn.v4=kP;var HF=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;function RP(t){return HF.test(t)}tn.isUUID=RP;function VF(t){if(!RP(t))throw new Error("invalid uuid");return new fc(t)}tn.parse=VF;function zF(){return kP().asHex()}tn.generateUuid=zF});var PP=k(Xi=>{"use strict";Object.defineProperty(Xi,"__esModule",{value:!0});Xi.attachPartialResult=Xi.ProgressFeature=Xi.attachWorkDone=void 0;var Yi=Et(),WF=ly(),Hs=class t{constructor(e,r){this._connection=e,this._token=r,t.Instances.set(this._token,this)}begin(e,r,n,i){let s={kind:"begin",title:e,percentage:r,message:n,cancellable:i};this._connection.sendProgress(Yi.WorkDoneProgress.type,this._token,s)}report(e,r){let n={kind:"report"};typeof e=="number"?(n.percentage=e,r!==void 0&&(n.message=r)):n.message=e,this._connection.sendProgress(Yi.WorkDoneProgress.type,this._token,n)}done(){t.Instances.delete(this._token),this._connection.sendProgress(Yi.WorkDoneProgress.type,this._token,{kind:"end"})}};Hs.Instances=new Map;var Ed=class extends Hs{constructor(e,r){super(e,r),this._source=new Yi.CancellationTokenSource}get token(){return this._source.token}done(){this._source.dispose(),super.done()}cancel(){this._source.cancel()}},hc=class{constructor(){}begin(){}report(){}done(){}},Dd=class extends hc{constructor(){super(),this._source=new Yi.CancellationTokenSource}get token(){return this._source.token}done(){this._source.dispose()}cancel(){this._source.cancel()}};function GF(t,e){if(e===void 0||e.workDoneToken===void 0)return new hc;let r=e.workDoneToken;return delete e.workDoneToken,new Hs(t,r)}Xi.attachWorkDone=GF;var KF=t=>class extends t{constructor(){super(),this._progressSupported=!1}initialize(e){super.initialize(e),e?.window?.workDoneProgress===!0&&(this._progressSupported=!0,this.connection.onNotification(Yi.WorkDoneProgressCancelNotification.type,r=>{let n=Hs.Instances.get(r.token);(n instanceof Ed||n instanceof Dd)&&n.cancel()}))}attachWorkDoneProgress(e){return e===void 0?new hc:new Hs(this.connection,e)}createWorkDoneProgress(){if(this._progressSupported){let e=(0,WF.generateUuid)();return this.connection.sendRequest(Yi.WorkDoneProgressCreateRequest.type,{token:e}).then(()=>new Ed(this.connection,e))}else return Promise.resolve(new Dd)}};Xi.ProgressFeature=KF;var uy;(function(t){t.type=new Yi.ProgressType})(uy||(uy={}));var dy=class{constructor(e,r){this._connection=e,this._token=r}report(e){this._connection.sendProgress(uy.type,this._token,e)}};function YF(t,e){if(e===void 0||e.partialResultToken===void 0)return;let r=e.partialResultToken;return delete e.partialResultToken,new dy(t,r)}Xi.attachPartialResult=YF});var wP=k(Cd=>{"use strict";Object.defineProperty(Cd,"__esModule",{value:!0});Cd.ConfigurationFeature=void 0;var XF=Et(),JF=ju(),QF=t=>class extends t{getConfiguration(e){return e?JF.string(e)?this._getConfiguration({section:e}):this._getConfiguration(e):this._getConfiguration({})}_getConfiguration(e){let r={items:Array.isArray(e)?e:[e]};return this.connection.sendRequest(XF.ConfigurationRequest.type,r).then(n=>Array.isArray(n)?Array.isArray(e)?n:n[0]:Array.isArray(e)?[]:null)}};Cd.ConfigurationFeature=QF});var EP=k(Id=>{"use strict";Object.defineProperty(Id,"__esModule",{value:!0});Id.WorkspaceFoldersFeature=void 0;var Ad=Et(),ZF=t=>class extends t{constructor(){super(),this._notificationIsAutoRegistered=!1}initialize(e){super.initialize(e);let r=e.workspace;r&&r.workspaceFolders&&(this._onDidChangeWorkspaceFolders=new Ad.Emitter,this.connection.onNotification(Ad.DidChangeWorkspaceFoldersNotification.type,n=>{this._onDidChangeWorkspaceFolders.fire(n.event)}))}fillServerCapabilities(e){super.fillServerCapabilities(e);let r=e.workspace?.workspaceFolders?.changeNotifications;this._notificationIsAutoRegistered=r===!0||typeof r=="string"}getWorkspaceFolders(){return this.connection.sendRequest(Ad.WorkspaceFoldersRequest.type)}get onDidChangeWorkspaceFolders(){if(!this._onDidChangeWorkspaceFolders)throw new Error("Client doesn't support sending workspace folder change events.");return!this._notificationIsAutoRegistered&&!this._unregistration&&(this._unregistration=this.connection.client.register(Ad.DidChangeWorkspaceFoldersNotification.type)),this._onDidChangeWorkspaceFolders.event}};Id.WorkspaceFoldersFeature=ZF});var DP=k(Od=>{"use strict";Object.defineProperty(Od,"__esModule",{value:!0});Od.CallHierarchyFeature=void 0;var fy=Et(),ej=t=>class extends t{get callHierarchy(){return{onPrepare:e=>this.connection.onRequest(fy.CallHierarchyPrepareRequest.type,(r,n)=>e(r,n,this.attachWorkDoneProgress(r),void 0)),onIncomingCalls:e=>{let r=fy.CallHierarchyIncomingCallsRequest.type;return this.connection.onRequest(r,(n,i)=>e(n,i,this.attachWorkDoneProgress(n),this.attachPartialResultProgress(r,n)))},onOutgoingCalls:e=>{let r=fy.CallHierarchyOutgoingCallsRequest.type;return this.connection.onRequest(r,(n,i)=>e(n,i,this.attachWorkDoneProgress(n),this.attachPartialResultProgress(r,n)))}}}};Od.CallHierarchyFeature=ej});var hy=k(Ji=>{"use strict";Object.defineProperty(Ji,"__esModule",{value:!0});Ji.SemanticTokensBuilder=Ji.SemanticTokensDiff=Ji.SemanticTokensFeature=void 0;var Md=Et(),tj=t=>class extends t{get semanticTokens(){return{refresh:()=>this.connection.sendRequest(Md.SemanticTokensRefreshRequest.type),on:e=>{let r=Md.SemanticTokensRequest.type;return this.connection.onRequest(r,(n,i)=>e(n,i,this.attachWorkDoneProgress(n),this.attachPartialResultProgress(r,n)))},onDelta:e=>{let r=Md.SemanticTokensDeltaRequest.type;return this.connection.onRequest(r,(n,i)=>e(n,i,this.attachWorkDoneProgress(n),this.attachPartialResultProgress(r,n)))},onRange:e=>{let r=Md.SemanticTokensRangeRequest.type;return this.connection.onRequest(r,(n,i)=>e(n,i,this.attachWorkDoneProgress(n),this.attachPartialResultProgress(r,n)))}}}};Ji.SemanticTokensFeature=tj;var xd=class{constructor(e,r){this.originalSequence=e,this.modifiedSequence=r}computeDiff(){let e=this.originalSequence.length,r=this.modifiedSequence.length,n=0;for(;n<r&&n<e&&this.originalSequence[n]===this.modifiedSequence[n];)n++;if(n<r&&n<e){let i=e-1,s=r-1;for(;i>=n&&s>=n&&this.originalSequence[i]===this.modifiedSequence[s];)i--,s--;(i<n||s<n)&&(i++,s++);let o=i-n+1,a=this.modifiedSequence.slice(n,s+1);return a.length===1&&a[0]===this.originalSequence[i]?[{start:n,deleteCount:o-1}]:[{start:n,deleteCount:o,data:a}]}else return n<r?[{start:n,deleteCount:0,data:this.modifiedSequence.slice(n)}]:n<e?[{start:n,deleteCount:e-n}]:[]}};Ji.SemanticTokensDiff=xd;var py=class{constructor(){this._prevData=void 0,this.initialize()}initialize(){this._id=Date.now(),this._prevLine=0,this._prevChar=0,this._data=[],this._dataLen=0}push(e,r,n,i,s){let o=e,a=r;this._dataLen>0&&(o-=this._prevLine,o===0&&(a-=this._prevChar)),this._data[this._dataLen++]=o,this._data[this._dataLen++]=a,this._data[this._dataLen++]=n,this._data[this._dataLen++]=i,this._data[this._dataLen++]=s,this._prevLine=e,this._prevChar=r}get id(){return this._id.toString()}previousResult(e){this.id===e&&(this._prevData=this._data),this.initialize()}build(){return this._prevData=void 0,{resultId:this.id,data:this._data}}canBuildEdits(){return this._prevData!==void 0}buildEdits(){return this._prevData!==void 0?{resultId:this.id,edits:new xd(this._prevData,this._data).computeDiff()}:this.build()}};Ji.SemanticTokensBuilder=py});var CP=k(Ld=>{"use strict";Object.defineProperty(Ld,"__esModule",{value:!0});Ld.ShowDocumentFeature=void 0;var rj=Et(),nj=t=>class extends t{showDocument(e){return this.connection.sendRequest(rj.ShowDocumentRequest.type,e)}};Ld.ShowDocumentFeature=nj});var AP=k(qd=>{"use strict";Object.defineProperty(qd,"__esModule",{value:!0});qd.FileOperationsFeature=void 0;var Ho=Et(),ij=t=>class extends t{onDidCreateFiles(e){return this.connection.onNotification(Ho.DidCreateFilesNotification.type,r=>{e(r)})}onDidRenameFiles(e){return this.connection.onNotification(Ho.DidRenameFilesNotification.type,r=>{e(r)})}onDidDeleteFiles(e){return this.connection.onNotification(Ho.DidDeleteFilesNotification.type,r=>{e(r)})}onWillCreateFiles(e){return this.connection.onRequest(Ho.WillCreateFilesRequest.type,(r,n)=>e(r,n))}onWillRenameFiles(e){return this.connection.onRequest(Ho.WillRenameFilesRequest.type,(r,n)=>e(r,n))}onWillDeleteFiles(e){return this.connection.onRequest(Ho.WillDeleteFilesRequest.type,(r,n)=>e(r,n))}};qd.FileOperationsFeature=ij});var IP=k($d=>{"use strict";Object.defineProperty($d,"__esModule",{value:!0});$d.LinkedEditingRangeFeature=void 0;var sj=Et(),oj=t=>class extends t{onLinkedEditingRange(e){return this.connection.onRequest(sj.LinkedEditingRangeRequest.type,(r,n)=>e(r,n,this.attachWorkDoneProgress(r),void 0))}};$d.LinkedEditingRangeFeature=oj});var OP=k(Bd=>{"use strict";Object.defineProperty(Bd,"__esModule",{value:!0});Bd.TypeHierarchyFeature=void 0;var my=Et(),aj=t=>class extends t{get typeHierarchy(){return{onPrepare:e=>this.connection.onRequest(my.TypeHierarchyPrepareRequest.type,(r,n)=>e(r,n,this.attachWorkDoneProgress(r),void 0)),onSupertypes:e=>{let r=my.TypeHierarchySupertypesRequest.type;return this.connection.onRequest(r,(n,i)=>e(n,i,this.attachWorkDoneProgress(n),this.attachPartialResultProgress(r,n)))},onSubtypes:e=>{let r=my.TypeHierarchySubtypesRequest.type;return this.connection.onRequest(r,(n,i)=>e(n,i,this.attachWorkDoneProgress(n),this.attachPartialResultProgress(r,n)))}}}};Bd.TypeHierarchyFeature=aj});var xP=k(Fd=>{"use strict";Object.defineProperty(Fd,"__esModule",{value:!0});Fd.InlineValueFeature=void 0;var MP=Et(),cj=t=>class extends t{get inlineValue(){return{refresh:()=>this.connection.sendRequest(MP.InlineValueRefreshRequest.type),on:e=>this.connection.onRequest(MP.InlineValueRequest.type,(r,n)=>e(r,n,this.attachWorkDoneProgress(r)))}}};Fd.InlineValueFeature=cj});var qP=k(jd=>{"use strict";Object.defineProperty(jd,"__esModule",{value:!0});jd.FoldingRangeFeature=void 0;var LP=Et(),lj=t=>class extends t{get foldingRange(){return{refresh:()=>this.connection.sendRequest(LP.FoldingRangeRefreshRequest.type),on:e=>{let r=LP.FoldingRangeRequest.type;return this.connection.onRequest(r,(n,i)=>e(n,i,this.attachWorkDoneProgress(n),this.attachPartialResultProgress(r,n)))}}}};jd.FoldingRangeFeature=lj});var $P=k(Ud=>{"use strict";Object.defineProperty(Ud,"__esModule",{value:!0});Ud.InlayHintFeature=void 0;var gy=Et(),uj=t=>class extends t{get inlayHint(){return{refresh:()=>this.connection.sendRequest(gy.InlayHintRefreshRequest.type),on:e=>this.connection.onRequest(gy.InlayHintRequest.type,(r,n)=>e(r,n,this.attachWorkDoneProgress(r))),resolve:e=>this.connection.onRequest(gy.InlayHintResolveRequest.type,(r,n)=>e(r,n))}}};Ud.InlayHintFeature=uj});var BP=k(Hd=>{"use strict";Object.defineProperty(Hd,"__esModule",{value:!0});Hd.DiagnosticFeature=void 0;var mc=Et(),dj=t=>class extends t{get diagnostics(){return{refresh:()=>this.connection.sendRequest(mc.DiagnosticRefreshRequest.type),on:e=>this.connection.onRequest(mc.DocumentDiagnosticRequest.type,(r,n)=>e(r,n,this.attachWorkDoneProgress(r),this.attachPartialResultProgress(mc.DocumentDiagnosticRequest.partialResult,r))),onWorkspace:e=>this.connection.onRequest(mc.WorkspaceDiagnosticRequest.type,(r,n)=>e(r,n,this.attachWorkDoneProgress(r),this.attachPartialResultProgress(mc.WorkspaceDiagnosticRequest.partialResult,r)))}}};Hd.DiagnosticFeature=dj});var Ty=k(Vd=>{"use strict";Object.defineProperty(Vd,"__esModule",{value:!0});Vd.TextDocuments=void 0;var Vs=Et(),yy=class{constructor(e){this._configuration=e,this._syncedDocuments=new Map,this._onDidChangeContent=new Vs.Emitter,this._onDidOpen=new Vs.Emitter,this._onDidClose=new Vs.Emitter,this._onDidSave=new Vs.Emitter,this._onWillSave=new Vs.Emitter}get onDidOpen(){return this._onDidOpen.event}get onDidChangeContent(){return this._onDidChangeContent.event}get onWillSave(){return this._onWillSave.event}onWillSaveWaitUntil(e){this._willSaveWaitUntil=e}get onDidSave(){return this._onDidSave.event}get onDidClose(){return this._onDidClose.event}get(e){return this._syncedDocuments.get(e)}all(){return Array.from(this._syncedDocuments.values())}keys(){return Array.from(this._syncedDocuments.keys())}listen(e){e.__textDocumentSync=Vs.TextDocumentSyncKind.Incremental;let r=[];return r.push(e.onDidOpenTextDocument(n=>{let i=n.textDocument,s=this._configuration.create(i.uri,i.languageId,i.version,i.text);this._syncedDocuments.set(i.uri,s);let o=Object.freeze({document:s});this._onDidOpen.fire(o),this._onDidChangeContent.fire(o)})),r.push(e.onDidChangeTextDocument(n=>{let i=n.textDocument,s=n.contentChanges;if(s.length===0)return;let{version:o}=i;if(o==null)throw new Error(`Received document change event for ${i.uri} without valid version identifier`);let a=this._syncedDocuments.get(i.uri);a!==void 0&&(a=this._configuration.update(a,s,o),this._syncedDocuments.set(i.uri,a),this._onDidChangeContent.fire(Object.freeze({document:a})))})),r.push(e.onDidCloseTextDocument(n=>{let i=this._syncedDocuments.get(n.textDocument.uri);i!==void 0&&(this._syncedDocuments.delete(n.textDocument.uri),this._onDidClose.fire(Object.freeze({document:i})))})),r.push(e.onWillSaveTextDocument(n=>{let i=this._syncedDocuments.get(n.textDocument.uri);i!==void 0&&this._onWillSave.fire(Object.freeze({document:i,reason:n.reason}))})),r.push(e.onWillSaveTextDocumentWaitUntil((n,i)=>{let s=this._syncedDocuments.get(n.textDocument.uri);return s!==void 0&&this._willSaveWaitUntil?this._willSaveWaitUntil(Object.freeze({document:s,reason:n.reason}),i):[]})),r.push(e.onDidSaveTextDocument(n=>{let i=this._syncedDocuments.get(n.textDocument.uri);i!==void 0&&this._onDidSave.fire(Object.freeze({document:i}))})),Vs.Disposable.create(()=>{r.forEach(n=>n.dispose())})}};Vd.TextDocuments=yy});var by=k(Vo=>{"use strict";Object.defineProperty(Vo,"__esModule",{value:!0});Vo.NotebookDocuments=Vo.NotebookSyncFeature=void 0;var rn=Et(),FP=Ty(),fj=t=>class extends t{get synchronization(){return{onDidOpenNotebookDocument:e=>this.connection.onNotification(rn.DidOpenNotebookDocumentNotification.type,r=>{e(r)}),onDidChangeNotebookDocument:e=>this.connection.onNotification(rn.DidChangeNotebookDocumentNotification.type,r=>{e(r)}),onDidSaveNotebookDocument:e=>this.connection.onNotification(rn.DidSaveNotebookDocumentNotification.type,r=>{e(r)}),onDidCloseNotebookDocument:e=>this.connection.onNotification(rn.DidCloseNotebookDocumentNotification.type,r=>{e(r)})}}};Vo.NotebookSyncFeature=fj;var zd=class t{onDidOpenTextDocument(e){return this.openHandler=e,rn.Disposable.create(()=>{this.openHandler=void 0})}openTextDocument(e){this.openHandler&&this.openHandler(e)}onDidChangeTextDocument(e){return this.changeHandler=e,rn.Disposable.create(()=>{this.changeHandler=e})}changeTextDocument(e){this.changeHandler&&this.changeHandler(e)}onDidCloseTextDocument(e){return this.closeHandler=e,rn.Disposable.create(()=>{this.closeHandler=void 0})}closeTextDocument(e){this.closeHandler&&this.closeHandler(e)}onWillSaveTextDocument(){return t.NULL_DISPOSE}onWillSaveTextDocumentWaitUntil(){return t.NULL_DISPOSE}onDidSaveTextDocument(){return t.NULL_DISPOSE}};zd.NULL_DISPOSE=Object.freeze({dispose:()=>{}});var vy=class{constructor(e){e instanceof FP.TextDocuments?this._cellTextDocuments=e:this._cellTextDocuments=new FP.TextDocuments(e),this.notebookDocuments=new Map,this.notebookCellMap=new Map,this._onDidOpen=new rn.Emitter,this._onDidChange=new rn.Emitter,this._onDidSave=new rn.Emitter,this._onDidClose=new rn.Emitter}get cellTextDocuments(){return this._cellTextDocuments}getCellTextDocument(e){return this._cellTextDocuments.get(e.document)}getNotebookDocument(e){return this.notebookDocuments.get(e)}getNotebookCell(e){let r=this.notebookCellMap.get(e);return r&&r[0]}findNotebookDocumentForCell(e){let r=typeof e=="string"?e:e.document,n=this.notebookCellMap.get(r);return n&&n[1]}get onDidOpen(){return this._onDidOpen.event}get onDidSave(){return this._onDidSave.event}get onDidChange(){return this._onDidChange.event}get onDidClose(){return this._onDidClose.event}listen(e){let r=new zd,n=[];return n.push(this.cellTextDocuments.listen(r)),n.push(e.notebooks.synchronization.onDidOpenNotebookDocument(i=>{this.notebookDocuments.set(i.notebookDocument.uri,i.notebookDocument);for(let s of i.cellTextDocuments)r.openTextDocument({textDocument:s});this.updateCellMap(i.notebookDocument),this._onDidOpen.fire(i.notebookDocument)})),n.push(e.notebooks.synchronization.onDidChangeNotebookDocument(i=>{let s=this.notebookDocuments.get(i.notebookDocument.uri);if(s===void 0)return;s.version=i.notebookDocument.version;let o=s.metadata,a=!1,c=i.change;c.metadata!==void 0&&(a=!0,s.metadata=c.metadata);let l=[],u=[],d=[],f=[];if(c.cells!==void 0){let S=c.cells;if(S.structure!==void 0){let _=S.structure.array;if(s.cells.splice(_.start,_.deleteCount,..._.cells!==void 0?_.cells:[]),S.structure.didOpen!==void 0)for(let v of S.structure.didOpen)r.openTextDocument({textDocument:v}),l.push(v.uri);if(S.structure.didClose)for(let v of S.structure.didClose)r.closeTextDocument({textDocument:v}),u.push(v.uri)}if(S.data!==void 0){let _=new Map(S.data.map(v=>[v.document,v]));for(let v=0;v<=s.cells.length;v++){let R=_.get(s.cells[v].document);if(R!==void 0){let D=s.cells.splice(v,1,R);if(d.push({old:D[0],new:R}),_.delete(R.document),_.size===0)break}}}if(S.textContent!==void 0)for(let _ of S.textContent)r.changeTextDocument({textDocument:_.document,contentChanges:_.changes}),f.push(_.document.uri)}this.updateCellMap(s);let p={notebookDocument:s};a&&(p.metadata={old:o,new:s.metadata});let g=[];for(let S of l)g.push(this.getNotebookCell(S));let h=[];for(let S of u)h.push(this.getNotebookCell(S));let T=[];for(let S of f)T.push(this.getNotebookCell(S));(g.length>0||h.length>0||d.length>0||T.length>0)&&(p.cells={added:g,removed:h,changed:{data:d,textContent:T}}),(p.metadata!==void 0||p.cells!==void 0)&&this._onDidChange.fire(p)})),n.push(e.notebooks.synchronization.onDidSaveNotebookDocument(i=>{let s=this.notebookDocuments.get(i.notebookDocument.uri);s!==void 0&&this._onDidSave.fire(s)})),n.push(e.notebooks.synchronization.onDidCloseNotebookDocument(i=>{let s=this.notebookDocuments.get(i.notebookDocument.uri);if(s!==void 0){this._onDidClose.fire(s);for(let o of i.cellTextDocuments)r.closeTextDocument({textDocument:o});this.notebookDocuments.delete(i.notebookDocument.uri);for(let o of s.cells)this.notebookCellMap.delete(o.document)}})),rn.Disposable.create(()=>{n.forEach(i=>i.dispose())})}updateCellMap(e){for(let r of e.cells)this.notebookCellMap.set(r.document,[r,e])}};Vo.NotebookDocuments=vy});var jP=k(Wd=>{"use strict";Object.defineProperty(Wd,"__esModule",{value:!0});Wd.MonikerFeature=void 0;var pj=Et(),hj=t=>class extends t{get moniker(){return{on:e=>{let r=pj.MonikerRequest.type;return this.connection.onRequest(r,(n,i)=>e(n,i,this.attachWorkDoneProgress(n),this.attachPartialResultProgress(r,n)))}}}};Wd.MonikerFeature=hj});var Py=k(Ue=>{"use strict";Object.defineProperty(Ue,"__esModule",{value:!0});Ue.createConnection=Ue.combineFeatures=Ue.combineNotebooksFeatures=Ue.combineLanguagesFeatures=Ue.combineWorkspaceFeatures=Ue.combineWindowFeatures=Ue.combineClientFeatures=Ue.combineTracerFeatures=Ue.combineTelemetryFeatures=Ue.combineConsoleFeatures=Ue._NotebooksImpl=Ue._LanguagesImpl=Ue.BulkUnregistration=Ue.BulkRegistration=Ue.ErrorMessageTracker=void 0;var K=Et(),nn=ju(),Sy=ly(),me=PP(),mj=wP(),gj=EP(),yj=DP(),Tj=hy(),vj=CP(),bj=AP(),_j=IP(),Sj=OP(),Nj=xP(),kj=qP(),Rj=$P(),Pj=BP(),wj=by(),Ej=jP();function _y(t){if(t!==null)return t}var Ny=class{constructor(){this._messages=Object.create(null)}add(e){let r=this._messages[e];r||(r=0),r++,this._messages[e]=r}sendErrors(e){Object.keys(this._messages).forEach(r=>{e.window.showErrorMessage(r)})}};Ue.ErrorMessageTracker=Ny;var Gd=class{constructor(){}rawAttach(e){this._rawConnection=e}attach(e){this._connection=e}get connection(){if(!this._connection)throw new Error("Remote is not attached to a connection yet.");return this._connection}fillServerCapabilities(e){}initialize(e){}error(e){this.send(K.MessageType.Error,e)}warn(e){this.send(K.MessageType.Warning,e)}info(e){this.send(K.MessageType.Info,e)}log(e){this.send(K.MessageType.Log,e)}debug(e){this.send(K.MessageType.Debug,e)}send(e,r){this._rawConnection&&this._rawConnection.sendNotification(K.LogMessageNotification.type,{type:e,message:r}).catch(()=>{(0,K.RAL)().console.error("Sending log message failed")})}},ky=class{constructor(){}attach(e){this._connection=e}get connection(){if(!this._connection)throw new Error("Remote is not attached to a connection yet.");return this._connection}initialize(e){}fillServerCapabilities(e){}showErrorMessage(e,...r){let n={type:K.MessageType.Error,message:e,actions:r};return this.connection.sendRequest(K.ShowMessageRequest.type,n).then(_y)}showWarningMessage(e,...r){let n={type:K.MessageType.Warning,message:e,actions:r};return this.connection.sendRequest(K.ShowMessageRequest.type,n).then(_y)}showInformationMessage(e,...r){let n={type:K.MessageType.Info,message:e,actions:r};return this.connection.sendRequest(K.ShowMessageRequest.type,n).then(_y)}},UP=(0,vj.ShowDocumentFeature)((0,me.ProgressFeature)(ky)),HP;(function(t){function e(){return new Kd}t.create=e})(HP||(Ue.BulkRegistration=HP={}));var Kd=class{constructor(){this._registrations=[],this._registered=new Set}add(e,r){let n=nn.string(e)?e:e.method;if(this._registered.has(n))throw new Error(`${n} is already added to this registration`);let i=Sy.generateUuid();this._registrations.push({id:i,method:n,registerOptions:r||{}}),this._registered.add(n)}asRegistrationParams(){return{registrations:this._registrations}}},VP;(function(t){function e(){return new gc(void 0,[])}t.create=e})(VP||(Ue.BulkUnregistration=VP={}));var gc=class{constructor(e,r){this._connection=e,this._unregistrations=new Map,r.forEach(n=>{this._unregistrations.set(n.method,n)})}get isAttached(){return!!this._connection}attach(e){this._connection=e}add(e){this._unregistrations.set(e.method,e)}dispose(){let e=[];for(let n of this._unregistrations.values())e.push(n);let r={unregisterations:e};this._connection.sendRequest(K.UnregistrationRequest.type,r).catch(()=>{this._connection.console.info("Bulk unregistration failed.")})}disposeSingle(e){let r=nn.string(e)?e:e.method,n=this._unregistrations.get(r);if(!n)return!1;let i={unregisterations:[n]};return this._connection.sendRequest(K.UnregistrationRequest.type,i).then(()=>{this._unregistrations.delete(r)},s=>{this._connection.console.info(`Un-registering request handler for ${n.id} failed.`)}),!0}},Yd=class{attach(e){this._connection=e}get connection(){if(!this._connection)throw new Error("Remote is not attached to a connection yet.");return this._connection}initialize(e){}fillServerCapabilities(e){}register(e,r,n){return e instanceof Kd?this.registerMany(e):e instanceof gc?this.registerSingle1(e,r,n):this.registerSingle2(e,r)}registerSingle1(e,r,n){let i=nn.string(r)?r:r.method,s=Sy.generateUuid(),o={registrations:[{id:s,method:i,registerOptions:n||{}}]};return e.isAttached||e.attach(this.connection),this.connection.sendRequest(K.RegistrationRequest.type,o).then(a=>(e.add({id:s,method:i}),e),a=>(this.connection.console.info(`Registering request handler for ${i} failed.`),Promise.reject(a)))}registerSingle2(e,r){let n=nn.string(e)?e:e.method,i=Sy.generateUuid(),s={registrations:[{id:i,method:n,registerOptions:r||{}}]};return this.connection.sendRequest(K.RegistrationRequest.type,s).then(o=>K.Disposable.create(()=>{this.unregisterSingle(i,n).catch(()=>{this.connection.console.info(`Un-registering capability with id ${i} failed.`)})}),o=>(this.connection.console.info(`Registering request handler for ${n} failed.`),Promise.reject(o)))}unregisterSingle(e,r){let n={unregisterations:[{id:e,method:r}]};return this.connection.sendRequest(K.UnregistrationRequest.type,n).catch(()=>{this.connection.console.info(`Un-registering request handler for ${e} failed.`)})}registerMany(e){let r=e.asRegistrationParams();return this.connection.sendRequest(K.RegistrationRequest.type,r).then(()=>new gc(this._connection,r.registrations.map(n=>({id:n.id,method:n.method}))),n=>(this.connection.console.info("Bulk registration failed."),Promise.reject(n)))}},Ry=class{constructor(){}attach(e){this._connection=e}get connection(){if(!this._connection)throw new Error("Remote is not attached to a connection yet.");return this._connection}initialize(e){}fillServerCapabilities(e){}applyEdit(e){function r(i){return i&&!!i.edit}let n=r(e)?e:{edit:e};return this.connection.sendRequest(K.ApplyWorkspaceEditRequest.type,n)}},zP=(0,bj.FileOperationsFeature)((0,gj.WorkspaceFoldersFeature)((0,mj.ConfigurationFeature)(Ry))),Xd=class{constructor(){this._trace=K.Trace.Off}attach(e){this._connection=e}get connection(){if(!this._connection)throw new Error("Remote is not attached to a connection yet.");return this._connection}initialize(e){}fillServerCapabilities(e){}set trace(e){this._trace=e}log(e,r){this._trace!==K.Trace.Off&&this.connection.sendNotification(K.LogTraceNotification.type,{message:e,verbose:this._trace===K.Trace.Verbose?r:void 0}).catch(()=>{})}},Jd=class{constructor(){}attach(e){this._connection=e}get connection(){if(!this._connection)throw new Error("Remote is not attached to a connection yet.");return this._connection}initialize(e){}fillServerCapabilities(e){}logEvent(e){this.connection.sendNotification(K.TelemetryEventNotification.type,e).catch(()=>{this.connection.console.log("Sending TelemetryEventNotification failed")})}},Qd=class{constructor(){}attach(e){this._connection=e}get connection(){if(!this._connection)throw new Error("Remote is not attached to a connection yet.");return this._connection}initialize(e){}fillServerCapabilities(e){}attachWorkDoneProgress(e){return(0,me.attachWorkDone)(this.connection,e)}attachPartialResultProgress(e,r){return(0,me.attachPartialResult)(this.connection,r)}};Ue._LanguagesImpl=Qd;var WP=(0,kj.FoldingRangeFeature)((0,Ej.MonikerFeature)((0,Pj.DiagnosticFeature)((0,Rj.InlayHintFeature)((0,Nj.InlineValueFeature)((0,Sj.TypeHierarchyFeature)((0,_j.LinkedEditingRangeFeature)((0,Tj.SemanticTokensFeature)((0,yj.CallHierarchyFeature)(Qd))))))))),Zd=class{constructor(){}attach(e){this._connection=e}get connection(){if(!this._connection)throw new Error("Remote is not attached to a connection yet.");return this._connection}initialize(e){}fillServerCapabilities(e){}attachWorkDoneProgress(e){return(0,me.attachWorkDone)(this.connection,e)}attachPartialResultProgress(e,r){return(0,me.attachPartialResult)(this.connection,r)}};Ue._NotebooksImpl=Zd;var GP=(0,wj.NotebookSyncFeature)(Zd);function KP(t,e){return function(r){return e(t(r))}}Ue.combineConsoleFeatures=KP;function YP(t,e){return function(r){return e(t(r))}}Ue.combineTelemetryFeatures=YP;function XP(t,e){return function(r){return e(t(r))}}Ue.combineTracerFeatures=XP;function JP(t,e){return function(r){return e(t(r))}}Ue.combineClientFeatures=JP;function QP(t,e){return function(r){return e(t(r))}}Ue.combineWindowFeatures=QP;function ZP(t,e){return function(r){return e(t(r))}}Ue.combineWorkspaceFeatures=ZP;function ew(t,e){return function(r){return e(t(r))}}Ue.combineLanguagesFeatures=ew;function tw(t,e){return function(r){return e(t(r))}}Ue.combineNotebooksFeatures=tw;function Dj(t,e){function r(i,s,o){return i&&s?o(i,s):i||s}return{__brand:"features",console:r(t.console,e.console,KP),tracer:r(t.tracer,e.tracer,XP),telemetry:r(t.telemetry,e.telemetry,YP),client:r(t.client,e.client,JP),window:r(t.window,e.window,QP),workspace:r(t.workspace,e.workspace,ZP),languages:r(t.languages,e.languages,ew),notebooks:r(t.notebooks,e.notebooks,tw)}}Ue.combineFeatures=Dj;function Cj(t,e,r){let n=r&&r.console?new(r.console(Gd)):new Gd,i=t(n);n.rawAttach(i);let s=r&&r.tracer?new(r.tracer(Xd)):new Xd,o=r&&r.telemetry?new(r.telemetry(Jd)):new Jd,a=r&&r.client?new(r.client(Yd)):new Yd,c=r&&r.window?new(r.window(UP)):new UP,l=r&&r.workspace?new(r.workspace(zP)):new zP,u=r&&r.languages?new(r.languages(WP)):new WP,d=r&&r.notebooks?new(r.notebooks(GP)):new GP,f=[n,s,o,a,c,l,u,d];function p(_){return _ instanceof Promise?_:nn.thenable(_)?new Promise((v,R)=>{_.then(D=>v(D),D=>R(D))}):Promise.resolve(_)}let g,h,T,S={listen:()=>i.listen(),sendRequest:(_,...v)=>i.sendRequest(nn.string(_)?_:_.method,...v),onRequest:(_,v)=>i.onRequest(_,v),sendNotification:(_,v)=>{let R=nn.string(_)?_:_.method;return i.sendNotification(R,v)},onNotification:(_,v)=>i.onNotification(_,v),onProgress:i.onProgress,sendProgress:i.sendProgress,onInitialize:_=>(h=_,{dispose:()=>{h=void 0}}),onInitialized:_=>i.onNotification(K.InitializedNotification.type,_),onShutdown:_=>(g=_,{dispose:()=>{g=void 0}}),onExit:_=>(T=_,{dispose:()=>{T=void 0}}),get console(){return n},get telemetry(){return o},get tracer(){return s},get client(){return a},get window(){return c},get workspace(){return l},get languages(){return u},get notebooks(){return d},onDidChangeConfiguration:_=>i.onNotification(K.DidChangeConfigurationNotification.type,_),onDidChangeWatchedFiles:_=>i.onNotification(K.DidChangeWatchedFilesNotification.type,_),__textDocumentSync:void 0,onDidOpenTextDocument:_=>i.onNotification(K.DidOpenTextDocumentNotification.type,_),onDidChangeTextDocument:_=>i.onNotification(K.DidChangeTextDocumentNotification.type,_),onDidCloseTextDocument:_=>i.onNotification(K.DidCloseTextDocumentNotification.type,_),onWillSaveTextDocument:_=>i.onNotification(K.WillSaveTextDocumentNotification.type,_),onWillSaveTextDocumentWaitUntil:_=>i.onRequest(K.WillSaveTextDocumentWaitUntilRequest.type,_),onDidSaveTextDocument:_=>i.onNotification(K.DidSaveTextDocumentNotification.type,_),sendDiagnostics:_=>i.sendNotification(K.PublishDiagnosticsNotification.type,_),onHover:_=>i.onRequest(K.HoverRequest.type,(v,R)=>_(v,R,(0,me.attachWorkDone)(i,v),void 0)),onCompletion:_=>i.onRequest(K.CompletionRequest.type,(v,R)=>_(v,R,(0,me.attachWorkDone)(i,v),(0,me.attachPartialResult)(i,v))),onCompletionResolve:_=>i.onRequest(K.CompletionResolveRequest.type,_),onSignatureHelp:_=>i.onRequest(K.SignatureHelpRequest.type,(v,R)=>_(v,R,(0,me.attachWorkDone)(i,v),void 0)),onDeclaration:_=>i.onRequest(K.DeclarationRequest.type,(v,R)=>_(v,R,(0,me.attachWorkDone)(i,v),(0,me.attachPartialResult)(i,v))),onDefinition:_=>i.onRequest(K.DefinitionRequest.type,(v,R)=>_(v,R,(0,me.attachWorkDone)(i,v),(0,me.attachPartialResult)(i,v))),onTypeDefinition:_=>i.onRequest(K.TypeDefinitionRequest.type,(v,R)=>_(v,R,(0,me.attachWorkDone)(i,v),(0,me.attachPartialResult)(i,v))),onImplementation:_=>i.onRequest(K.ImplementationRequest.type,(v,R)=>_(v,R,(0,me.attachWorkDone)(i,v),(0,me.attachPartialResult)(i,v))),onReferences:_=>i.onRequest(K.ReferencesRequest.type,(v,R)=>_(v,R,(0,me.attachWorkDone)(i,v),(0,me.attachPartialResult)(i,v))),onDocumentHighlight:_=>i.onRequest(K.DocumentHighlightRequest.type,(v,R)=>_(v,R,(0,me.attachWorkDone)(i,v),(0,me.attachPartialResult)(i,v))),onDocumentSymbol:_=>i.onRequest(K.DocumentSymbolRequest.type,(v,R)=>_(v,R,(0,me.attachWorkDone)(i,v),(0,me.attachPartialResult)(i,v))),onWorkspaceSymbol:_=>i.onRequest(K.WorkspaceSymbolRequest.type,(v,R)=>_(v,R,(0,me.attachWorkDone)(i,v),(0,me.attachPartialResult)(i,v))),onWorkspaceSymbolResolve:_=>i.onRequest(K.WorkspaceSymbolResolveRequest.type,_),onCodeAction:_=>i.onRequest(K.CodeActionRequest.type,(v,R)=>_(v,R,(0,me.attachWorkDone)(i,v),(0,me.attachPartialResult)(i,v))),onCodeActionResolve:_=>i.onRequest(K.CodeActionResolveRequest.type,(v,R)=>_(v,R)),onCodeLens:_=>i.onRequest(K.CodeLensRequest.type,(v,R)=>_(v,R,(0,me.attachWorkDone)(i,v),(0,me.attachPartialResult)(i,v))),onCodeLensResolve:_=>i.onRequest(K.CodeLensResolveRequest.type,(v,R)=>_(v,R)),onDocumentFormatting:_=>i.onRequest(K.DocumentFormattingRequest.type,(v,R)=>_(v,R,(0,me.attachWorkDone)(i,v),void 0)),onDocumentRangeFormatting:_=>i.onRequest(K.DocumentRangeFormattingRequest.type,(v,R)=>_(v,R,(0,me.attachWorkDone)(i,v),void 0)),onDocumentOnTypeFormatting:_=>i.onRequest(K.DocumentOnTypeFormattingRequest.type,(v,R)=>_(v,R)),onRenameRequest:_=>i.onRequest(K.RenameRequest.type,(v,R)=>_(v,R,(0,me.attachWorkDone)(i,v),void 0)),onPrepareRename:_=>i.onRequest(K.PrepareRenameRequest.type,(v,R)=>_(v,R)),onDocumentLinks:_=>i.onRequest(K.DocumentLinkRequest.type,(v,R)=>_(v,R,(0,me.attachWorkDone)(i,v),(0,me.attachPartialResult)(i,v))),onDocumentLinkResolve:_=>i.onRequest(K.DocumentLinkResolveRequest.type,(v,R)=>_(v,R)),onDocumentColor:_=>i.onRequest(K.DocumentColorRequest.type,(v,R)=>_(v,R,(0,me.attachWorkDone)(i,v),(0,me.attachPartialResult)(i,v))),onColorPresentation:_=>i.onRequest(K.ColorPresentationRequest.type,(v,R)=>_(v,R,(0,me.attachWorkDone)(i,v),(0,me.attachPartialResult)(i,v))),onFoldingRanges:_=>i.onRequest(K.FoldingRangeRequest.type,(v,R)=>_(v,R,(0,me.attachWorkDone)(i,v),(0,me.attachPartialResult)(i,v))),onSelectionRanges:_=>i.onRequest(K.SelectionRangeRequest.type,(v,R)=>_(v,R,(0,me.attachWorkDone)(i,v),(0,me.attachPartialResult)(i,v))),onExecuteCommand:_=>i.onRequest(K.ExecuteCommandRequest.type,(v,R)=>_(v,R,(0,me.attachWorkDone)(i,v),void 0)),dispose:()=>i.dispose()};for(let _ of f)_.attach(S);return i.onRequest(K.InitializeRequest.type,_=>{e.initialize(_),nn.string(_.trace)&&(s.trace=K.Trace.fromString(_.trace));for(let v of f)v.initialize(_.capabilities);if(h){let v=h(_,new K.CancellationTokenSource().token,(0,me.attachWorkDone)(i,_),void 0);return p(v).then(R=>{if(R instanceof K.ResponseError)return R;let D=R;D||(D={capabilities:{}});let B=D.capabilities;B||(B={},D.capabilities=B),B.textDocumentSync===void 0||B.textDocumentSync===null?B.textDocumentSync=nn.number(S.__textDocumentSync)?S.__textDocumentSync:K.TextDocumentSyncKind.None:!nn.number(B.textDocumentSync)&&!nn.number(B.textDocumentSync.change)&&(B.textDocumentSync.change=nn.number(S.__textDocumentSync)?S.__textDocumentSync:K.TextDocumentSyncKind.None);for(let M of f)M.fillServerCapabilities(B);return D})}else{let v={capabilities:{textDocumentSync:K.TextDocumentSyncKind.None}};for(let R of f)R.fillServerCapabilities(v.capabilities);return v}}),i.onRequest(K.ShutdownRequest.type,()=>{if(e.shutdownReceived=!0,g)return g(new K.CancellationTokenSource().token)}),i.onNotification(K.ExitNotification.type,()=>{try{T&&T()}finally{e.shutdownReceived?e.exit(0):e.exit(1)}}),i.onNotification(K.SetTraceNotification.type,_=>{s.trace=K.Trace.fromString(_.value)}),S}Ue.createConnection=Cj});var rw=k(Dr=>{"use strict";Object.defineProperty(Dr,"__esModule",{value:!0});Dr.resolveModulePath=Dr.FileSystem=Dr.resolveGlobalYarnPath=Dr.resolveGlobalNodePath=Dr.resolve=Dr.uriToFilePath=void 0;var Aj=require("url"),An=require("path"),wy=require("fs"),Ay=require("child_process");function Ij(t){let e=Aj.parse(t);if(e.protocol!=="file:"||!e.path)return;let r=e.path.split("/");for(var n=0,i=r.length;n<i;n++)r[n]=decodeURIComponent(r[n]);if(process.platform==="win32"&&r.length>1){let s=r[0],o=r[1];s.length===0&&o.length>1&&o[1]===":"&&r.shift()}return An.normalize(r.join("/"))}Dr.uriToFilePath=Ij;function Ey(){return process.platform==="win32"}function ef(t,e,r,n){let i="NODE_PATH",s=["var p = process;","p.on('message',function(m){","if(m.c==='e'){","p.exit(0);","}","else if(m.c==='rs'){","try{","var r=require.resolve(m.a);","p.send({c:'r',s:true,r:r});","}","catch(err){","p.send({c:'r',s:false});","}","}","});"].join("");return new Promise((o,a)=>{let c=process.env,l=Object.create(null);Object.keys(c).forEach(u=>l[u]=c[u]),e&&wy.existsSync(e)&&(l[i]?l[i]=e+An.delimiter+l[i]:l[i]=e,n&&n(`NODE_PATH value is: ${l[i]}`)),l.ELECTRON_RUN_AS_NODE="1";try{let u=(0,Ay.fork)("",[],{cwd:r,env:l,execArgv:["-e",s]});if(u.pid===void 0){a(new Error(`Starting process to resolve node module ${t} failed`));return}u.on("error",f=>{a(f)}),u.on("message",f=>{f.c==="r"&&(u.send({c:"e"}),f.s?o(f.r):a(new Error(`Failed to resolve module: ${t}`)))});let d={c:"rs",a:t};u.send(d)}catch(u){a(u)}})}Dr.resolve=ef;function Dy(t){let e="npm",r=Object.create(null);Object.keys(process.env).forEach(s=>r[s]=process.env[s]),r.NO_UPDATE_NOTIFIER="true";let n={encoding:"utf8",env:r};Ey()&&(e="npm.cmd",n.shell=!0);let i=()=>{};try{process.on("SIGPIPE",i);let s=(0,Ay.spawnSync)(e,["config","get","prefix"],n).stdout;if(!s){t&&t("'npm config get prefix' didn't return a value.");return}let o=s.trim();return t&&t(`'npm config get prefix' value is: ${o}`),o.length>0?Ey()?An.join(o,"node_modules"):An.join(o,"lib","node_modules"):void 0}catch{return}finally{process.removeListener("SIGPIPE",i)}}Dr.resolveGlobalNodePath=Dy;function Oj(t){let e="yarn",r={encoding:"utf8"};Ey()&&(e="yarn.cmd",r.shell=!0);let n=()=>{};try{process.on("SIGPIPE",n);let i=(0,Ay.spawnSync)(e,["global","dir","--json"],r),s=i.stdout;if(!s){t&&(t("'yarn global dir' didn't return a value."),i.stderr&&t(i.stderr));return}let o=s.trim().split(/\r?\n/);for(let a of o)try{let c=JSON.parse(a);if(c.type==="log")return An.join(c.data,"node_modules")}catch{}return}catch{return}finally{process.removeListener("SIGPIPE",n)}}Dr.resolveGlobalYarnPath=Oj;var Cy;(function(t){let e;function r(){return e!==void 0||(process.platform==="win32"?e=!1:e=!wy.existsSync(__filename.toUpperCase())||!wy.existsSync(__filename.toLowerCase())),e}t.isCaseSensitive=r;function n(i,s){return r()?An.normalize(s).indexOf(An.normalize(i))===0:An.normalize(s).toLowerCase().indexOf(An.normalize(i).toLowerCase())===0}t.isParent=n})(Cy||(Dr.FileSystem=Cy={}));function Mj(t,e,r,n){return r?(An.isAbsolute(r)||(r=An.join(t,r)),ef(e,r,r,n).then(i=>Cy.isParent(r,i)?i:Promise.reject(new Error(`Failed to load ${e} from node path location.`))).then(void 0,i=>ef(e,Dy(n),t,n))):ef(e,Dy(n),t,n)}Dr.resolveModulePath=Mj});var Iy=k((kQ,nw)=>{"use strict";nw.exports=Et()});var iw=k(tf=>{"use strict";Object.defineProperty(tf,"__esModule",{value:!0});tf.InlineCompletionFeature=void 0;var xj=Et(),Lj=t=>class extends t{get inlineCompletion(){return{on:e=>this.connection.onRequest(xj.InlineCompletionRequest.type,(r,n)=>e(r,n,this.attachWorkDoneProgress(r)))}}};tf.InlineCompletionFeature=Lj});var aw=k(or=>{"use strict";var qj=or&&or.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(e,r);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,i)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),ow=or&&or.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&qj(e,t,r)};Object.defineProperty(or,"__esModule",{value:!0});or.ProposedFeatures=or.NotebookDocuments=or.TextDocuments=or.SemanticTokensBuilder=void 0;var $j=hy();Object.defineProperty(or,"SemanticTokensBuilder",{enumerable:!0,get:function(){return $j.SemanticTokensBuilder}});var Bj=iw();ow(Et(),or);var Fj=Ty();Object.defineProperty(or,"TextDocuments",{enumerable:!0,get:function(){return Fj.TextDocuments}});var jj=by();Object.defineProperty(or,"NotebookDocuments",{enumerable:!0,get:function(){return jj.NotebookDocuments}});ow(Py(),or);var sw;(function(t){t.all={__brand:"features",languages:Bj.InlineCompletionFeature}})(sw||(or.ProposedFeatures=sw={}))});var U=k(sn=>{"use strict";var Uj=sn&&sn.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(e,r);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,i)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),dw=sn&&sn.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&Uj(e,t,r)};Object.defineProperty(sn,"__esModule",{value:!0});sn.createConnection=sn.Files=void 0;var cw=require("node:util"),Oy=ju(),Hj=Py(),yc=rw(),zs=Iy();dw(Iy(),sn);dw(aw(),sn);var lw;(function(t){t.uriToFilePath=yc.uriToFilePath,t.resolveGlobalNodePath=yc.resolveGlobalNodePath,t.resolveGlobalYarnPath=yc.resolveGlobalYarnPath,t.resolve=yc.resolve,t.resolveModulePath=yc.resolveModulePath})(lw||(sn.Files=lw={}));var uw;function rf(){if(uw!==void 0)try{uw.end()}catch{}}var zo=!1,fw;function Vj(){let t="--clientProcessId";function e(r){try{let n=parseInt(r);isNaN(n)||(fw=setInterval(()=>{try{process.kill(n,0)}catch{rf(),process.exit(zo?0:1)}},3e3))}catch{}}for(let r=2;r<process.argv.length;r++){let n=process.argv[r];if(n===t&&r+1<process.argv.length){e(process.argv[r+1]);return}else{let i=n.split("=");i[0]===t&&e(i[1])}}}Vj();var zj={initialize:t=>{let e=t.processId;Oy.number(e)&&fw===void 0&&setInterval(()=>{try{process.kill(e,0)}catch{process.exit(zo?0:1)}},3e3)},get shutdownReceived(){return zo},set shutdownReceived(t){zo=t},exit:t=>{rf(),process.exit(t)}};function Wj(t,e,r,n){let i,s,o,a;return t!==void 0&&t.__brand==="features"&&(i=t,t=e,e=r,r=n),zs.ConnectionStrategy.is(t)||zs.ConnectionOptions.is(t)?a=t:(s=t,o=e,a=r),Gj(s,o,a,i)}sn.createConnection=Wj;function Gj(t,e,r,n){let i=!1;if(!t&&!e&&process.argv.length>2){let c,l,u=process.argv.slice(2);for(let d=0;d<u.length;d++){let f=u[d];if(f==="--node-ipc"){t=new zs.IPCMessageReader(process),e=new zs.IPCMessageWriter(process);break}else if(f==="--stdio"){i=!0,t=process.stdin,e=process.stdout;break}else if(f==="--socket"){c=parseInt(u[d+1]);break}else if(f==="--pipe"){l=u[d+1];break}else{var s=f.split("=");if(s[0]==="--socket"){c=parseInt(s[1]);break}else if(s[0]==="--pipe"){l=s[1];break}}}if(c){let d=(0,zs.createServerSocketTransport)(c);t=d[0],e=d[1]}else if(l){let d=(0,zs.createServerPipeTransport)(l);t=d[0],e=d[1]}}var o="Use arguments of createConnection or set command line parameters: '--node-ipc', '--stdio' or '--socket={number}'";if(!t)throw new Error("Connection input stream is not set. "+o);if(!e)throw new Error("Connection output stream is not set. "+o);if(Oy.func(t.read)&&Oy.func(t.on)){let c=t;c.on("end",()=>{rf(),process.exit(zo?0:1)}),c.on("close",()=>{rf(),process.exit(zo?0:1)})}let a=c=>{let l=(0,zs.createProtocolConnection)(t,e,c,r);return i&&Kj(c),l};return(0,Hj.createConnection)(a,zj,n)}function Kj(t){function e(n){return n.map(i=>typeof i=="string"?i:(0,cw.inspect)(i)).join(" ")}let r=new Map;console.assert=function(i,...s){if(!i)if(s.length===0)t.error("Assertion failed");else{let[o,...a]=s;t.error(`Assertion failed: ${o} ${e(a)}`)}},console.count=function(i="default"){let s=String(i),o=r.get(s)??0;o+=1,r.set(s,o),t.log(`${s}: ${s}`)},console.countReset=function(i){i===void 0?r.clear():r.delete(String(i))},console.debug=function(...i){t.log(e(i))},console.dir=function(i,s){t.log((0,cw.inspect)(i,s))},console.log=function(...i){t.log(e(i))},console.error=function(...i){t.error(e(i))},console.trace=function(...i){let s=new Error().stack.replace(/(.+\n){2}/,""),o="Trace";i.length!==0&&(o+=`: ${e(i)}`),t.log(`${o}
37
- ${s}`)},console.warn=function(...i){t.warn(e(i))}}});var hw=k((DQ,pw)=>{"use strict";pw.exports=U()});var rO=k((YSe,tO)=>{"use strict";tO.exports=ZI;function ZI(t,e,r){t instanceof RegExp&&(t=QI(t,r)),e instanceof RegExp&&(e=QI(e,r));var n=eO(t,e,r);return n&&{start:n[0],end:n[1],pre:r.slice(0,n[0]),body:r.slice(n[0]+t.length,n[1]),post:r.slice(n[1]+e.length)}}function QI(t,e){var r=e.match(t);return r?r[0]:null}ZI.range=eO;function eO(t,e,r){var n,i,s,o,a,c=r.indexOf(t),l=r.indexOf(e,c+1),u=c;if(c>=0&&l>0){if(t===e)return[c,l];for(n=[],s=r.length;u>=0&&!a;)u==c?(n.push(u),c=r.indexOf(t,u+1)):n.length==1?a=[n.pop(),l]:(i=n.pop(),i<s&&(s=i,o=l),l=r.indexOf(e,u+1)),u=c<l&&c>=0?c:l;n.length&&(a=[s,o])}return a}});var uO=k((XSe,lO)=>{var nO=rO();lO.exports=fH;var iO="\0SLASH"+Math.random()+"\0",sO="\0OPEN"+Math.random()+"\0",_T="\0CLOSE"+Math.random()+"\0",oO="\0COMMA"+Math.random()+"\0",aO="\0PERIOD"+Math.random()+"\0";function bT(t){return parseInt(t,10)==t?parseInt(t,10):t.charCodeAt(0)}function uH(t){return t.split("\\\\").join(iO).split("\\{").join(sO).split("\\}").join(_T).split("\\,").join(oO).split("\\.").join(aO)}function dH(t){return t.split(iO).join("\\").split(sO).join("{").split(_T).join("}").split(oO).join(",").split(aO).join(".")}function cO(t){if(!t)return[""];var e=[],r=nO("{","}",t);if(!r)return t.split(",");var n=r.pre,i=r.body,s=r.post,o=n.split(",");o[o.length-1]+="{"+i+"}";var a=cO(s);return s.length&&(o[o.length-1]+=a.shift(),o.push.apply(o,a)),e.push.apply(e,o),e}function fH(t){return t?(t.substr(0,2)==="{}"&&(t="\\{\\}"+t.substr(2)),Gc(uH(t),!0).map(dH)):[]}function pH(t){return"{"+t+"}"}function hH(t){return/^-?0\d/.test(t)}function mH(t,e){return t<=e}function gH(t,e){return t>=e}function Gc(t,e){var r=[],n=nO("{","}",t);if(!n)return[t];var i=n.pre,s=n.post.length?Gc(n.post,!1):[""];if(/\$$/.test(n.pre))for(var o=0;o<s.length;o++){var a=i+"{"+n.body+"}"+s[o];r.push(a)}else{var c=/^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(n.body),l=/^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(n.body),u=c||l,d=n.body.indexOf(",")>=0;if(!u&&!d)return n.post.match(/,(?!,).*\}/)?(t=n.pre+"{"+n.body+_T+n.post,Gc(t)):[t];var f;if(u)f=n.body.split(/\.\./);else if(f=cO(n.body),f.length===1&&(f=Gc(f[0],!1).map(pH),f.length===1))return s.map(function(Xe){return n.pre+f[0]+Xe});var p;if(u){var g=bT(f[0]),h=bT(f[1]),T=Math.max(f[0].length,f[1].length),S=f.length==3?Math.abs(bT(f[2])):1,_=mH,v=h<g;v&&(S*=-1,_=gH);var R=f.some(hH);p=[];for(var D=g;_(D,h);D+=S){var B;if(l)B=String.fromCharCode(D),B==="\\"&&(B="");else if(B=String(D),R){var M=T-B.length;if(M>0){var F=new Array(M+1).join("0");D<0?B="-"+F+B.slice(1):B=F+B}}p.push(B)}}else{p=[];for(var ge=0;ge<f.length;ge++)p.push.apply(p,Gc(f[ge],!1))}for(var ge=0;ge<p.length;ge++)for(var o=0;o<s.length;o++){var a=i+p[ge]+s[o];(!e||u||a)&&r.push(a)}}return r}});var Le=k(er=>{"use strict";var BT=Symbol.for("yaml.alias"),JO=Symbol.for("yaml.document"),Yp=Symbol.for("yaml.map"),QO=Symbol.for("yaml.pair"),FT=Symbol.for("yaml.scalar"),Xp=Symbol.for("yaml.seq"),Ii=Symbol.for("yaml.node.type"),kV=t=>!!t&&typeof t=="object"&&t[Ii]===BT,RV=t=>!!t&&typeof t=="object"&&t[Ii]===JO,PV=t=>!!t&&typeof t=="object"&&t[Ii]===Yp,wV=t=>!!t&&typeof t=="object"&&t[Ii]===QO,ZO=t=>!!t&&typeof t=="object"&&t[Ii]===FT,EV=t=>!!t&&typeof t=="object"&&t[Ii]===Xp;function eM(t){if(t&&typeof t=="object")switch(t[Ii]){case Yp:case Xp:return!0}return!1}function DV(t){if(t&&typeof t=="object")switch(t[Ii]){case BT:case Yp:case FT:case Xp:return!0}return!1}var CV=t=>(ZO(t)||eM(t))&&!!t.anchor;er.ALIAS=BT;er.DOC=JO;er.MAP=Yp;er.NODE_TYPE=Ii;er.PAIR=QO;er.SCALAR=FT;er.SEQ=Xp;er.hasAnchor=CV;er.isAlias=kV;er.isCollection=eM;er.isDocument=RV;er.isMap=PV;er.isNode=DV;er.isPair=wV;er.isScalar=ZO;er.isSeq=EV});var ll=k(jT=>{"use strict";var Ht=Le(),qr=Symbol("break visit"),tM=Symbol("skip children"),ui=Symbol("remove node");function Jp(t,e){let r=rM(e);Ht.isDocument(t)?Na(null,t.contents,r,Object.freeze([t]))===ui&&(t.contents=null):Na(null,t,r,Object.freeze([]))}Jp.BREAK=qr;Jp.SKIP=tM;Jp.REMOVE=ui;function Na(t,e,r,n){let i=nM(t,e,r,n);if(Ht.isNode(i)||Ht.isPair(i))return iM(t,n,i),Na(t,i,r,n);if(typeof i!="symbol"){if(Ht.isCollection(e)){n=Object.freeze(n.concat(e));for(let s=0;s<e.items.length;++s){let o=Na(s,e.items[s],r,n);if(typeof o=="number")s=o-1;else{if(o===qr)return qr;o===ui&&(e.items.splice(s,1),s-=1)}}}else if(Ht.isPair(e)){n=Object.freeze(n.concat(e));let s=Na("key",e.key,r,n);if(s===qr)return qr;s===ui&&(e.key=null);let o=Na("value",e.value,r,n);if(o===qr)return qr;o===ui&&(e.value=null)}}return i}async function Qp(t,e){let r=rM(e);Ht.isDocument(t)?await ka(null,t.contents,r,Object.freeze([t]))===ui&&(t.contents=null):await ka(null,t,r,Object.freeze([]))}Qp.BREAK=qr;Qp.SKIP=tM;Qp.REMOVE=ui;async function ka(t,e,r,n){let i=await nM(t,e,r,n);if(Ht.isNode(i)||Ht.isPair(i))return iM(t,n,i),ka(t,i,r,n);if(typeof i!="symbol"){if(Ht.isCollection(e)){n=Object.freeze(n.concat(e));for(let s=0;s<e.items.length;++s){let o=await ka(s,e.items[s],r,n);if(typeof o=="number")s=o-1;else{if(o===qr)return qr;o===ui&&(e.items.splice(s,1),s-=1)}}}else if(Ht.isPair(e)){n=Object.freeze(n.concat(e));let s=await ka("key",e.key,r,n);if(s===qr)return qr;s===ui&&(e.key=null);let o=await ka("value",e.value,r,n);if(o===qr)return qr;o===ui&&(e.value=null)}}return i}function rM(t){return typeof t=="object"&&(t.Collection||t.Node||t.Value)?Object.assign({Alias:t.Node,Map:t.Node,Scalar:t.Node,Seq:t.Node},t.Value&&{Map:t.Value,Scalar:t.Value,Seq:t.Value},t.Collection&&{Map:t.Collection,Seq:t.Collection},t):t}function nM(t,e,r,n){if(typeof r=="function")return r(t,e,n);if(Ht.isMap(e))return r.Map?.(t,e,n);if(Ht.isSeq(e))return r.Seq?.(t,e,n);if(Ht.isPair(e))return r.Pair?.(t,e,n);if(Ht.isScalar(e))return r.Scalar?.(t,e,n);if(Ht.isAlias(e))return r.Alias?.(t,e,n)}function iM(t,e,r){let n=e[e.length-1];if(Ht.isCollection(n))n.items[t]=r;else if(Ht.isPair(n))t==="key"?n.key=r:n.value=r;else if(Ht.isDocument(n))n.contents=r;else{let i=Ht.isAlias(n)?"alias":"scalar";throw new Error(`Cannot replace node with ${i} parent`)}}jT.visit=Jp;jT.visitAsync=Qp});var UT=k(oM=>{"use strict";var sM=Le(),AV=ll(),IV={"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"},OV=t=>t.replace(/[!,[\]{}]/g,e=>IV[e]),ul=class t{constructor(e,r){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},t.defaultYaml,e),this.tags=Object.assign({},t.defaultTags,r)}clone(){let e=new t(this.yaml,this.tags);return e.docStart=this.docStart,e}atDocument(){let e=new t(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=!0;break;case"1.2":this.atNextDocument=!1,this.yaml={explicit:t.defaultYaml.explicit,version:"1.2"},this.tags=Object.assign({},t.defaultTags);break}return e}add(e,r){this.atNextDocument&&(this.yaml={explicit:t.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},t.defaultTags),this.atNextDocument=!1);let n=e.trim().split(/[ \t]+/),i=n.shift();switch(i){case"%TAG":{if(n.length!==2&&(r(0,"%TAG directive should contain exactly two parts"),n.length<2))return!1;let[s,o]=n;return this.tags[s]=o,!0}case"%YAML":{if(this.yaml.explicit=!0,n.length!==1)return r(0,"%YAML directive should contain exactly one part"),!1;let[s]=n;if(s==="1.1"||s==="1.2")return this.yaml.version=s,!0;{let o=/^\d+\.\d+$/.test(s);return r(6,`Unsupported YAML version ${s}`,o),!1}}default:return r(0,`Unknown directive ${i}`,!0),!1}}tagName(e,r){if(e==="!")return"!";if(e[0]!=="!")return r(`Not a valid tag: ${e}`),null;if(e[1]==="<"){let o=e.slice(2,-1);return o==="!"||o==="!!"?(r(`Verbatim tags aren't resolved, so ${e} is invalid.`),null):(e[e.length-1]!==">"&&r("Verbatim tags must end with a >"),o)}let[,n,i]=e.match(/^(.*!)([^!]*)$/s);i||r(`The ${e} tag has no suffix`);let s=this.tags[n];if(s)try{return s+decodeURIComponent(i)}catch(o){return r(String(o)),null}return n==="!"?e:(r(`Could not resolve tag: ${e}`),null)}tagString(e){for(let[r,n]of Object.entries(this.tags))if(e.startsWith(n))return r+OV(e.substring(n.length));return e[0]==="!"?e:`!<${e}>`}toString(e){let r=this.yaml.explicit?[`%YAML ${this.yaml.version||"1.2"}`]:[],n=Object.entries(this.tags),i;if(e&&n.length>0&&sM.isNode(e.contents)){let s={};AV.visit(e.contents,(o,a)=>{sM.isNode(a)&&a.tag&&(s[a.tag]=!0)}),i=Object.keys(s)}else i=[];for(let[s,o]of n)s==="!!"&&o==="tag:yaml.org,2002:"||(!e||i.some(a=>a.startsWith(o)))&&r.push(`%TAG ${s} ${o}`);return r.join(`
36
+ `&&m++}b&&E.length>0&&w.push(E.length),this._lineOffsets=w}return this._lineOffsets},y.prototype.positionAt=function(w){w=Math.max(Math.min(w,this._content.length),0);var E=this.getLineOffsets(),b=0,m=E.length;if(m===0)return o.create(0,w);for(;b<m;){var C=Math.floor((b+m)/2);E[C]>w?m=C:b=C+1}var q=b-1;return o.create(q,w-E[q])},y.prototype.offsetAt=function(w){var E=this.getLineOffsets();if(w.line>=E.length)return this._content.length;if(w.line<0)return 0;var b=E[w.line],m=w.line+1<E.length?E[w.line+1]:this._content.length;return Math.max(Math.min(b+w.character,m),b)},Object.defineProperty(y.prototype,"lineCount",{get:function(){return this.getLineOffsets().length},enumerable:!1,configurable:!0}),y}(),A;(function(y){var w=Object.prototype.toString;function E(Ce){return typeof Ce<"u"}y.defined=E;function b(Ce){return typeof Ce>"u"}y.undefined=b;function m(Ce){return Ce===!0||Ce===!1}y.boolean=m;function C(Ce){return w.call(Ce)==="[object String]"}y.string=C;function q(Ce){return w.call(Ce)==="[object Number]"}y.number=q;function ye(Ce,No,Fu){return w.call(Ce)==="[object Number]"&&No<=Ce&&Ce<=Fu}y.numberRange=ye;function Rt(Ce){return w.call(Ce)==="[object Number]"&&-2147483648<=Ce&&Ce<=2147483647}y.integer=Rt;function at(Ce){return w.call(Ce)==="[object Number]"&&0<=Ce&&Ce<=2147483647}y.uinteger=at;function wn(Ce){return w.call(Ce)==="[object Function]"}y.func=wn;function En(Ce){return Ce!==null&&typeof Ce=="object"}y.objectLiteral=En;function vi(Ce,No){return Array.isArray(Ce)&&Ce.every(No)}y.typedArray=vi})(A||(A={}))})});var Tt=k(Pr=>{"use strict";Object.defineProperty(Pr,"__esModule",{value:!0});Pr.ProtocolNotificationType=Pr.ProtocolNotificationType0=Pr.ProtocolRequestType=Pr.ProtocolRequestType0=Pr.RegistrationType=Pr.MessageDirection=void 0;var Io=js(),PN;(function(t){t.clientToServer="clientToServer",t.serverToClient="serverToClient",t.both="both"})(PN||(Pr.MessageDirection=PN={}));var Gg=class{constructor(e){this.method=e}};Pr.RegistrationType=Gg;var Kg=class extends Io.RequestType0{constructor(e){super(e)}};Pr.ProtocolRequestType0=Kg;var Yg=class extends Io.RequestType{constructor(e){super(e,Io.ParameterStructures.byName)}};Pr.ProtocolRequestType=Yg;var Xg=class extends Io.NotificationType0{constructor(e){super(e)}};Pr.ProtocolNotificationType0=Xg;var Jg=class extends Io.NotificationType{constructor(e){super(e,Io.ParameterStructures.byName)}};Pr.ProtocolNotificationType=Jg});var dd=k(xt=>{"use strict";Object.defineProperty(xt,"__esModule",{value:!0});xt.objectLiteral=xt.typedArray=xt.stringArray=xt.array=xt.func=xt.error=xt.number=xt.string=xt.boolean=void 0;function bF(t){return t===!0||t===!1}xt.boolean=bF;function wN(t){return typeof t=="string"||t instanceof String}xt.string=wN;function _F(t){return typeof t=="number"||t instanceof Number}xt.number=_F;function SF(t){return t instanceof Error}xt.error=SF;function NF(t){return typeof t=="function"}xt.func=NF;function EN(t){return Array.isArray(t)}xt.array=EN;function kF(t){return EN(t)&&t.every(e=>wN(e))}xt.stringArray=kF;function RF(t,e){return Array.isArray(t)&&t.every(e)}xt.typedArray=RF;function PF(t){return t!==null&&typeof t=="object"}xt.objectLiteral=PF});var AN=k(fd=>{"use strict";Object.defineProperty(fd,"__esModule",{value:!0});fd.ImplementationRequest=void 0;var DN=Tt(),CN;(function(t){t.method="textDocument/implementation",t.messageDirection=DN.MessageDirection.clientToServer,t.type=new DN.ProtocolRequestType(t.method)})(CN||(fd.ImplementationRequest=CN={}))});var MN=k(pd=>{"use strict";Object.defineProperty(pd,"__esModule",{value:!0});pd.TypeDefinitionRequest=void 0;var IN=Tt(),ON;(function(t){t.method="textDocument/typeDefinition",t.messageDirection=IN.MessageDirection.clientToServer,t.type=new IN.ProtocolRequestType(t.method)})(ON||(pd.TypeDefinitionRequest=ON={}))});var qN=k(Oo=>{"use strict";Object.defineProperty(Oo,"__esModule",{value:!0});Oo.DidChangeWorkspaceFoldersNotification=Oo.WorkspaceFoldersRequest=void 0;var hd=Tt(),xN;(function(t){t.method="workspace/workspaceFolders",t.messageDirection=hd.MessageDirection.serverToClient,t.type=new hd.ProtocolRequestType0(t.method)})(xN||(Oo.WorkspaceFoldersRequest=xN={}));var LN;(function(t){t.method="workspace/didChangeWorkspaceFolders",t.messageDirection=hd.MessageDirection.clientToServer,t.type=new hd.ProtocolNotificationType(t.method)})(LN||(Oo.DidChangeWorkspaceFoldersNotification=LN={}))});var FN=k(md=>{"use strict";Object.defineProperty(md,"__esModule",{value:!0});md.ConfigurationRequest=void 0;var $N=Tt(),BN;(function(t){t.method="workspace/configuration",t.messageDirection=$N.MessageDirection.serverToClient,t.type=new $N.ProtocolRequestType(t.method)})(BN||(md.ConfigurationRequest=BN={}))});var HN=k(Mo=>{"use strict";Object.defineProperty(Mo,"__esModule",{value:!0});Mo.ColorPresentationRequest=Mo.DocumentColorRequest=void 0;var gd=Tt(),jN;(function(t){t.method="textDocument/documentColor",t.messageDirection=gd.MessageDirection.clientToServer,t.type=new gd.ProtocolRequestType(t.method)})(jN||(Mo.DocumentColorRequest=jN={}));var UN;(function(t){t.method="textDocument/colorPresentation",t.messageDirection=gd.MessageDirection.clientToServer,t.type=new gd.ProtocolRequestType(t.method)})(UN||(Mo.ColorPresentationRequest=UN={}))});var WN=k(xo=>{"use strict";Object.defineProperty(xo,"__esModule",{value:!0});xo.FoldingRangeRefreshRequest=xo.FoldingRangeRequest=void 0;var yd=Tt(),VN;(function(t){t.method="textDocument/foldingRange",t.messageDirection=yd.MessageDirection.clientToServer,t.type=new yd.ProtocolRequestType(t.method)})(VN||(xo.FoldingRangeRequest=VN={}));var zN;(function(t){t.method="workspace/foldingRange/refresh",t.messageDirection=yd.MessageDirection.serverToClient,t.type=new yd.ProtocolRequestType0(t.method)})(zN||(xo.FoldingRangeRefreshRequest=zN={}))});var YN=k(Td=>{"use strict";Object.defineProperty(Td,"__esModule",{value:!0});Td.DeclarationRequest=void 0;var GN=Tt(),KN;(function(t){t.method="textDocument/declaration",t.messageDirection=GN.MessageDirection.clientToServer,t.type=new GN.ProtocolRequestType(t.method)})(KN||(Td.DeclarationRequest=KN={}))});var QN=k(vd=>{"use strict";Object.defineProperty(vd,"__esModule",{value:!0});vd.SelectionRangeRequest=void 0;var XN=Tt(),JN;(function(t){t.method="textDocument/selectionRange",t.messageDirection=XN.MessageDirection.clientToServer,t.type=new XN.ProtocolRequestType(t.method)})(JN||(vd.SelectionRangeRequest=JN={}))});var rk=k(Vi=>{"use strict";Object.defineProperty(Vi,"__esModule",{value:!0});Vi.WorkDoneProgressCancelNotification=Vi.WorkDoneProgressCreateRequest=Vi.WorkDoneProgress=void 0;var wF=js(),bd=Tt(),ZN;(function(t){t.type=new wF.ProgressType;function e(r){return r===t.type}t.is=e})(ZN||(Vi.WorkDoneProgress=ZN={}));var ek;(function(t){t.method="window/workDoneProgress/create",t.messageDirection=bd.MessageDirection.serverToClient,t.type=new bd.ProtocolRequestType(t.method)})(ek||(Vi.WorkDoneProgressCreateRequest=ek={}));var tk;(function(t){t.method="window/workDoneProgress/cancel",t.messageDirection=bd.MessageDirection.clientToServer,t.type=new bd.ProtocolNotificationType(t.method)})(tk||(Vi.WorkDoneProgressCancelNotification=tk={}))});var ok=k(zi=>{"use strict";Object.defineProperty(zi,"__esModule",{value:!0});zi.CallHierarchyOutgoingCallsRequest=zi.CallHierarchyIncomingCallsRequest=zi.CallHierarchyPrepareRequest=void 0;var Lo=Tt(),nk;(function(t){t.method="textDocument/prepareCallHierarchy",t.messageDirection=Lo.MessageDirection.clientToServer,t.type=new Lo.ProtocolRequestType(t.method)})(nk||(zi.CallHierarchyPrepareRequest=nk={}));var ik;(function(t){t.method="callHierarchy/incomingCalls",t.messageDirection=Lo.MessageDirection.clientToServer,t.type=new Lo.ProtocolRequestType(t.method)})(ik||(zi.CallHierarchyIncomingCallsRequest=ik={}));var sk;(function(t){t.method="callHierarchy/outgoingCalls",t.messageDirection=Lo.MessageDirection.clientToServer,t.type=new Lo.ProtocolRequestType(t.method)})(sk||(zi.CallHierarchyOutgoingCallsRequest=sk={}))});var fk=k(wr=>{"use strict";Object.defineProperty(wr,"__esModule",{value:!0});wr.SemanticTokensRefreshRequest=wr.SemanticTokensRangeRequest=wr.SemanticTokensDeltaRequest=wr.SemanticTokensRequest=wr.SemanticTokensRegistrationType=wr.TokenFormat=void 0;var _i=Tt(),ak;(function(t){t.Relative="relative"})(ak||(wr.TokenFormat=ak={}));var lc;(function(t){t.method="textDocument/semanticTokens",t.type=new _i.RegistrationType(t.method)})(lc||(wr.SemanticTokensRegistrationType=lc={}));var ck;(function(t){t.method="textDocument/semanticTokens/full",t.messageDirection=_i.MessageDirection.clientToServer,t.type=new _i.ProtocolRequestType(t.method),t.registrationMethod=lc.method})(ck||(wr.SemanticTokensRequest=ck={}));var lk;(function(t){t.method="textDocument/semanticTokens/full/delta",t.messageDirection=_i.MessageDirection.clientToServer,t.type=new _i.ProtocolRequestType(t.method),t.registrationMethod=lc.method})(lk||(wr.SemanticTokensDeltaRequest=lk={}));var uk;(function(t){t.method="textDocument/semanticTokens/range",t.messageDirection=_i.MessageDirection.clientToServer,t.type=new _i.ProtocolRequestType(t.method),t.registrationMethod=lc.method})(uk||(wr.SemanticTokensRangeRequest=uk={}));var dk;(function(t){t.method="workspace/semanticTokens/refresh",t.messageDirection=_i.MessageDirection.serverToClient,t.type=new _i.ProtocolRequestType0(t.method)})(dk||(wr.SemanticTokensRefreshRequest=dk={}))});var mk=k(_d=>{"use strict";Object.defineProperty(_d,"__esModule",{value:!0});_d.ShowDocumentRequest=void 0;var pk=Tt(),hk;(function(t){t.method="window/showDocument",t.messageDirection=pk.MessageDirection.serverToClient,t.type=new pk.ProtocolRequestType(t.method)})(hk||(_d.ShowDocumentRequest=hk={}))});var Tk=k(Sd=>{"use strict";Object.defineProperty(Sd,"__esModule",{value:!0});Sd.LinkedEditingRangeRequest=void 0;var gk=Tt(),yk;(function(t){t.method="textDocument/linkedEditingRange",t.messageDirection=gk.MessageDirection.clientToServer,t.type=new gk.ProtocolRequestType(t.method)})(yk||(Sd.LinkedEditingRangeRequest=yk={}))});var Pk=k(sr=>{"use strict";Object.defineProperty(sr,"__esModule",{value:!0});sr.WillDeleteFilesRequest=sr.DidDeleteFilesNotification=sr.DidRenameFilesNotification=sr.WillRenameFilesRequest=sr.DidCreateFilesNotification=sr.WillCreateFilesRequest=sr.FileOperationPatternKind=void 0;var en=Tt(),vk;(function(t){t.file="file",t.folder="folder"})(vk||(sr.FileOperationPatternKind=vk={}));var bk;(function(t){t.method="workspace/willCreateFiles",t.messageDirection=en.MessageDirection.clientToServer,t.type=new en.ProtocolRequestType(t.method)})(bk||(sr.WillCreateFilesRequest=bk={}));var _k;(function(t){t.method="workspace/didCreateFiles",t.messageDirection=en.MessageDirection.clientToServer,t.type=new en.ProtocolNotificationType(t.method)})(_k||(sr.DidCreateFilesNotification=_k={}));var Sk;(function(t){t.method="workspace/willRenameFiles",t.messageDirection=en.MessageDirection.clientToServer,t.type=new en.ProtocolRequestType(t.method)})(Sk||(sr.WillRenameFilesRequest=Sk={}));var Nk;(function(t){t.method="workspace/didRenameFiles",t.messageDirection=en.MessageDirection.clientToServer,t.type=new en.ProtocolNotificationType(t.method)})(Nk||(sr.DidRenameFilesNotification=Nk={}));var kk;(function(t){t.method="workspace/didDeleteFiles",t.messageDirection=en.MessageDirection.clientToServer,t.type=new en.ProtocolNotificationType(t.method)})(kk||(sr.DidDeleteFilesNotification=kk={}));var Rk;(function(t){t.method="workspace/willDeleteFiles",t.messageDirection=en.MessageDirection.clientToServer,t.type=new en.ProtocolRequestType(t.method)})(Rk||(sr.WillDeleteFilesRequest=Rk={}))});var Ak=k(Wi=>{"use strict";Object.defineProperty(Wi,"__esModule",{value:!0});Wi.MonikerRequest=Wi.MonikerKind=Wi.UniquenessLevel=void 0;var wk=Tt(),Ek;(function(t){t.document="document",t.project="project",t.group="group",t.scheme="scheme",t.global="global"})(Ek||(Wi.UniquenessLevel=Ek={}));var Dk;(function(t){t.$import="import",t.$export="export",t.local="local"})(Dk||(Wi.MonikerKind=Dk={}));var Ck;(function(t){t.method="textDocument/moniker",t.messageDirection=wk.MessageDirection.clientToServer,t.type=new wk.ProtocolRequestType(t.method)})(Ck||(Wi.MonikerRequest=Ck={}))});var xk=k(Gi=>{"use strict";Object.defineProperty(Gi,"__esModule",{value:!0});Gi.TypeHierarchySubtypesRequest=Gi.TypeHierarchySupertypesRequest=Gi.TypeHierarchyPrepareRequest=void 0;var qo=Tt(),Ik;(function(t){t.method="textDocument/prepareTypeHierarchy",t.messageDirection=qo.MessageDirection.clientToServer,t.type=new qo.ProtocolRequestType(t.method)})(Ik||(Gi.TypeHierarchyPrepareRequest=Ik={}));var Ok;(function(t){t.method="typeHierarchy/supertypes",t.messageDirection=qo.MessageDirection.clientToServer,t.type=new qo.ProtocolRequestType(t.method)})(Ok||(Gi.TypeHierarchySupertypesRequest=Ok={}));var Mk;(function(t){t.method="typeHierarchy/subtypes",t.messageDirection=qo.MessageDirection.clientToServer,t.type=new qo.ProtocolRequestType(t.method)})(Mk||(Gi.TypeHierarchySubtypesRequest=Mk={}))});var $k=k($o=>{"use strict";Object.defineProperty($o,"__esModule",{value:!0});$o.InlineValueRefreshRequest=$o.InlineValueRequest=void 0;var Nd=Tt(),Lk;(function(t){t.method="textDocument/inlineValue",t.messageDirection=Nd.MessageDirection.clientToServer,t.type=new Nd.ProtocolRequestType(t.method)})(Lk||($o.InlineValueRequest=Lk={}));var qk;(function(t){t.method="workspace/inlineValue/refresh",t.messageDirection=Nd.MessageDirection.serverToClient,t.type=new Nd.ProtocolRequestType0(t.method)})(qk||($o.InlineValueRefreshRequest=qk={}))});var Uk=k(Ki=>{"use strict";Object.defineProperty(Ki,"__esModule",{value:!0});Ki.InlayHintRefreshRequest=Ki.InlayHintResolveRequest=Ki.InlayHintRequest=void 0;var Bo=Tt(),Bk;(function(t){t.method="textDocument/inlayHint",t.messageDirection=Bo.MessageDirection.clientToServer,t.type=new Bo.ProtocolRequestType(t.method)})(Bk||(Ki.InlayHintRequest=Bk={}));var Fk;(function(t){t.method="inlayHint/resolve",t.messageDirection=Bo.MessageDirection.clientToServer,t.type=new Bo.ProtocolRequestType(t.method)})(Fk||(Ki.InlayHintResolveRequest=Fk={}));var jk;(function(t){t.method="workspace/inlayHint/refresh",t.messageDirection=Bo.MessageDirection.serverToClient,t.type=new Bo.ProtocolRequestType0(t.method)})(jk||(Ki.InlayHintRefreshRequest=jk={}))});var Yk=k(tn=>{"use strict";Object.defineProperty(tn,"__esModule",{value:!0});tn.DiagnosticRefreshRequest=tn.WorkspaceDiagnosticRequest=tn.DocumentDiagnosticRequest=tn.DocumentDiagnosticReportKind=tn.DiagnosticServerCancellationData=void 0;var Kk=js(),EF=dd(),Fo=Tt(),Hk;(function(t){function e(r){let n=r;return n&&EF.boolean(n.retriggerRequest)}t.is=e})(Hk||(tn.DiagnosticServerCancellationData=Hk={}));var Vk;(function(t){t.Full="full",t.Unchanged="unchanged"})(Vk||(tn.DocumentDiagnosticReportKind=Vk={}));var zk;(function(t){t.method="textDocument/diagnostic",t.messageDirection=Fo.MessageDirection.clientToServer,t.type=new Fo.ProtocolRequestType(t.method),t.partialResult=new Kk.ProgressType})(zk||(tn.DocumentDiagnosticRequest=zk={}));var Wk;(function(t){t.method="workspace/diagnostic",t.messageDirection=Fo.MessageDirection.clientToServer,t.type=new Fo.ProtocolRequestType(t.method),t.partialResult=new Kk.ProgressType})(Wk||(tn.WorkspaceDiagnosticRequest=Wk={}));var Gk;(function(t){t.method="workspace/diagnostic/refresh",t.messageDirection=Fo.MessageDirection.serverToClient,t.type=new Fo.ProtocolRequestType0(t.method)})(Gk||(tn.DiagnosticRefreshRequest=Gk={}))});var rR=k(Pt=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:!0});Pt.DidCloseNotebookDocumentNotification=Pt.DidSaveNotebookDocumentNotification=Pt.DidChangeNotebookDocumentNotification=Pt.NotebookCellArrayChange=Pt.DidOpenNotebookDocumentNotification=Pt.NotebookDocumentSyncRegistrationType=Pt.NotebookDocument=Pt.NotebookCell=Pt.ExecutionSummary=Pt.NotebookCellKind=void 0;var uc=ud(),Cn=dd(),Yn=Tt(),Qg;(function(t){t.Markup=1,t.Code=2;function e(r){return r===1||r===2}t.is=e})(Qg||(Pt.NotebookCellKind=Qg={}));var Zg;(function(t){function e(i,s){let o={executionOrder:i};return(s===!0||s===!1)&&(o.success=s),o}t.create=e;function r(i){let s=i;return Cn.objectLiteral(s)&&uc.uinteger.is(s.executionOrder)&&(s.success===void 0||Cn.boolean(s.success))}t.is=r;function n(i,s){return i===s?!0:i==null||s===null||s===void 0?!1:i.executionOrder===s.executionOrder&&i.success===s.success}t.equals=n})(Zg||(Pt.ExecutionSummary=Zg={}));var kd;(function(t){function e(s,o){return{kind:s,document:o}}t.create=e;function r(s){let o=s;return Cn.objectLiteral(o)&&Qg.is(o.kind)&&uc.DocumentUri.is(o.document)&&(o.metadata===void 0||Cn.objectLiteral(o.metadata))}t.is=r;function n(s,o){let a=new Set;return s.document!==o.document&&a.add("document"),s.kind!==o.kind&&a.add("kind"),s.executionSummary!==o.executionSummary&&a.add("executionSummary"),(s.metadata!==void 0||o.metadata!==void 0)&&!i(s.metadata,o.metadata)&&a.add("metadata"),(s.executionSummary!==void 0||o.executionSummary!==void 0)&&!Zg.equals(s.executionSummary,o.executionSummary)&&a.add("executionSummary"),a}t.diff=n;function i(s,o){if(s===o)return!0;if(s==null||o===null||o===void 0||typeof s!=typeof o||typeof s!="object")return!1;let a=Array.isArray(s),c=Array.isArray(o);if(a!==c)return!1;if(a&&c){if(s.length!==o.length)return!1;for(let l=0;l<s.length;l++)if(!i(s[l],o[l]))return!1}if(Cn.objectLiteral(s)&&Cn.objectLiteral(o)){let l=Object.keys(s),u=Object.keys(o);if(l.length!==u.length||(l.sort(),u.sort(),!i(l,u)))return!1;for(let d=0;d<l.length;d++){let f=l[d];if(!i(s[f],o[f]))return!1}}return!0}})(kd||(Pt.NotebookCell=kd={}));var Xk;(function(t){function e(n,i,s,o){return{uri:n,notebookType:i,version:s,cells:o}}t.create=e;function r(n){let i=n;return Cn.objectLiteral(i)&&Cn.string(i.uri)&&uc.integer.is(i.version)&&Cn.typedArray(i.cells,kd.is)}t.is=r})(Xk||(Pt.NotebookDocument=Xk={}));var jo;(function(t){t.method="notebookDocument/sync",t.messageDirection=Yn.MessageDirection.clientToServer,t.type=new Yn.RegistrationType(t.method)})(jo||(Pt.NotebookDocumentSyncRegistrationType=jo={}));var Jk;(function(t){t.method="notebookDocument/didOpen",t.messageDirection=Yn.MessageDirection.clientToServer,t.type=new Yn.ProtocolNotificationType(t.method),t.registrationMethod=jo.method})(Jk||(Pt.DidOpenNotebookDocumentNotification=Jk={}));var Qk;(function(t){function e(n){let i=n;return Cn.objectLiteral(i)&&uc.uinteger.is(i.start)&&uc.uinteger.is(i.deleteCount)&&(i.cells===void 0||Cn.typedArray(i.cells,kd.is))}t.is=e;function r(n,i,s){let o={start:n,deleteCount:i};return s!==void 0&&(o.cells=s),o}t.create=r})(Qk||(Pt.NotebookCellArrayChange=Qk={}));var Zk;(function(t){t.method="notebookDocument/didChange",t.messageDirection=Yn.MessageDirection.clientToServer,t.type=new Yn.ProtocolNotificationType(t.method),t.registrationMethod=jo.method})(Zk||(Pt.DidChangeNotebookDocumentNotification=Zk={}));var eR;(function(t){t.method="notebookDocument/didSave",t.messageDirection=Yn.MessageDirection.clientToServer,t.type=new Yn.ProtocolNotificationType(t.method),t.registrationMethod=jo.method})(eR||(Pt.DidSaveNotebookDocumentNotification=eR={}));var tR;(function(t){t.method="notebookDocument/didClose",t.messageDirection=Yn.MessageDirection.clientToServer,t.type=new Yn.ProtocolNotificationType(t.method),t.registrationMethod=jo.method})(tR||(Pt.DidCloseNotebookDocumentNotification=tR={}))});var sR=k(Rd=>{"use strict";Object.defineProperty(Rd,"__esModule",{value:!0});Rd.InlineCompletionRequest=void 0;var nR=Tt(),iR;(function(t){t.method="textDocument/inlineCompletion",t.messageDirection=nR.MessageDirection.clientToServer,t.type=new nR.ProtocolRequestType(t.method)})(iR||(Rd.InlineCompletionRequest=iR={}))});var TP=k(N=>{"use strict";Object.defineProperty(N,"__esModule",{value:!0});N.WorkspaceSymbolRequest=N.CodeActionResolveRequest=N.CodeActionRequest=N.DocumentSymbolRequest=N.DocumentHighlightRequest=N.ReferencesRequest=N.DefinitionRequest=N.SignatureHelpRequest=N.SignatureHelpTriggerKind=N.HoverRequest=N.CompletionResolveRequest=N.CompletionRequest=N.CompletionTriggerKind=N.PublishDiagnosticsNotification=N.WatchKind=N.RelativePattern=N.FileChangeType=N.DidChangeWatchedFilesNotification=N.WillSaveTextDocumentWaitUntilRequest=N.WillSaveTextDocumentNotification=N.TextDocumentSaveReason=N.DidSaveTextDocumentNotification=N.DidCloseTextDocumentNotification=N.DidChangeTextDocumentNotification=N.TextDocumentContentChangeEvent=N.DidOpenTextDocumentNotification=N.TextDocumentSyncKind=N.TelemetryEventNotification=N.LogMessageNotification=N.ShowMessageRequest=N.ShowMessageNotification=N.MessageType=N.DidChangeConfigurationNotification=N.ExitNotification=N.ShutdownRequest=N.InitializedNotification=N.InitializeErrorCodes=N.InitializeRequest=N.WorkDoneProgressOptions=N.TextDocumentRegistrationOptions=N.StaticRegistrationOptions=N.PositionEncodingKind=N.FailureHandlingKind=N.ResourceOperationKind=N.UnregistrationRequest=N.RegistrationRequest=N.DocumentSelector=N.NotebookCellTextDocumentFilter=N.NotebookDocumentFilter=N.TextDocumentFilter=void 0;N.MonikerRequest=N.MonikerKind=N.UniquenessLevel=N.WillDeleteFilesRequest=N.DidDeleteFilesNotification=N.WillRenameFilesRequest=N.DidRenameFilesNotification=N.WillCreateFilesRequest=N.DidCreateFilesNotification=N.FileOperationPatternKind=N.LinkedEditingRangeRequest=N.ShowDocumentRequest=N.SemanticTokensRegistrationType=N.SemanticTokensRefreshRequest=N.SemanticTokensRangeRequest=N.SemanticTokensDeltaRequest=N.SemanticTokensRequest=N.TokenFormat=N.CallHierarchyPrepareRequest=N.CallHierarchyOutgoingCallsRequest=N.CallHierarchyIncomingCallsRequest=N.WorkDoneProgressCancelNotification=N.WorkDoneProgressCreateRequest=N.WorkDoneProgress=N.SelectionRangeRequest=N.DeclarationRequest=N.FoldingRangeRefreshRequest=N.FoldingRangeRequest=N.ColorPresentationRequest=N.DocumentColorRequest=N.ConfigurationRequest=N.DidChangeWorkspaceFoldersNotification=N.WorkspaceFoldersRequest=N.TypeDefinitionRequest=N.ImplementationRequest=N.ApplyWorkspaceEditRequest=N.ExecuteCommandRequest=N.PrepareRenameRequest=N.RenameRequest=N.PrepareSupportDefaultBehavior=N.DocumentOnTypeFormattingRequest=N.DocumentRangesFormattingRequest=N.DocumentRangeFormattingRequest=N.DocumentFormattingRequest=N.DocumentLinkResolveRequest=N.DocumentLinkRequest=N.CodeLensRefreshRequest=N.CodeLensResolveRequest=N.CodeLensRequest=N.WorkspaceSymbolResolveRequest=void 0;N.InlineCompletionRequest=N.DidCloseNotebookDocumentNotification=N.DidSaveNotebookDocumentNotification=N.DidChangeNotebookDocumentNotification=N.NotebookCellArrayChange=N.DidOpenNotebookDocumentNotification=N.NotebookDocumentSyncRegistrationType=N.NotebookDocument=N.NotebookCell=N.ExecutionSummary=N.NotebookCellKind=N.DiagnosticRefreshRequest=N.WorkspaceDiagnosticRequest=N.DocumentDiagnosticRequest=N.DocumentDiagnosticReportKind=N.DiagnosticServerCancellationData=N.InlayHintRefreshRequest=N.InlayHintResolveRequest=N.InlayHintRequest=N.InlineValueRefreshRequest=N.InlineValueRequest=N.TypeHierarchySupertypesRequest=N.TypeHierarchySubtypesRequest=N.TypeHierarchyPrepareRequest=void 0;var V=Tt(),oR=ud(),zt=dd(),DF=AN();Object.defineProperty(N,"ImplementationRequest",{enumerable:!0,get:function(){return DF.ImplementationRequest}});var CF=MN();Object.defineProperty(N,"TypeDefinitionRequest",{enumerable:!0,get:function(){return CF.TypeDefinitionRequest}});var hP=qN();Object.defineProperty(N,"WorkspaceFoldersRequest",{enumerable:!0,get:function(){return hP.WorkspaceFoldersRequest}});Object.defineProperty(N,"DidChangeWorkspaceFoldersNotification",{enumerable:!0,get:function(){return hP.DidChangeWorkspaceFoldersNotification}});var AF=FN();Object.defineProperty(N,"ConfigurationRequest",{enumerable:!0,get:function(){return AF.ConfigurationRequest}});var mP=HN();Object.defineProperty(N,"DocumentColorRequest",{enumerable:!0,get:function(){return mP.DocumentColorRequest}});Object.defineProperty(N,"ColorPresentationRequest",{enumerable:!0,get:function(){return mP.ColorPresentationRequest}});var gP=WN();Object.defineProperty(N,"FoldingRangeRequest",{enumerable:!0,get:function(){return gP.FoldingRangeRequest}});Object.defineProperty(N,"FoldingRangeRefreshRequest",{enumerable:!0,get:function(){return gP.FoldingRangeRefreshRequest}});var IF=YN();Object.defineProperty(N,"DeclarationRequest",{enumerable:!0,get:function(){return IF.DeclarationRequest}});var OF=QN();Object.defineProperty(N,"SelectionRangeRequest",{enumerable:!0,get:function(){return OF.SelectionRangeRequest}});var iy=rk();Object.defineProperty(N,"WorkDoneProgress",{enumerable:!0,get:function(){return iy.WorkDoneProgress}});Object.defineProperty(N,"WorkDoneProgressCreateRequest",{enumerable:!0,get:function(){return iy.WorkDoneProgressCreateRequest}});Object.defineProperty(N,"WorkDoneProgressCancelNotification",{enumerable:!0,get:function(){return iy.WorkDoneProgressCancelNotification}});var sy=ok();Object.defineProperty(N,"CallHierarchyIncomingCallsRequest",{enumerable:!0,get:function(){return sy.CallHierarchyIncomingCallsRequest}});Object.defineProperty(N,"CallHierarchyOutgoingCallsRequest",{enumerable:!0,get:function(){return sy.CallHierarchyOutgoingCallsRequest}});Object.defineProperty(N,"CallHierarchyPrepareRequest",{enumerable:!0,get:function(){return sy.CallHierarchyPrepareRequest}});var Uo=fk();Object.defineProperty(N,"TokenFormat",{enumerable:!0,get:function(){return Uo.TokenFormat}});Object.defineProperty(N,"SemanticTokensRequest",{enumerable:!0,get:function(){return Uo.SemanticTokensRequest}});Object.defineProperty(N,"SemanticTokensDeltaRequest",{enumerable:!0,get:function(){return Uo.SemanticTokensDeltaRequest}});Object.defineProperty(N,"SemanticTokensRangeRequest",{enumerable:!0,get:function(){return Uo.SemanticTokensRangeRequest}});Object.defineProperty(N,"SemanticTokensRefreshRequest",{enumerable:!0,get:function(){return Uo.SemanticTokensRefreshRequest}});Object.defineProperty(N,"SemanticTokensRegistrationType",{enumerable:!0,get:function(){return Uo.SemanticTokensRegistrationType}});var MF=mk();Object.defineProperty(N,"ShowDocumentRequest",{enumerable:!0,get:function(){return MF.ShowDocumentRequest}});var xF=Tk();Object.defineProperty(N,"LinkedEditingRangeRequest",{enumerable:!0,get:function(){return xF.LinkedEditingRangeRequest}});var Us=Pk();Object.defineProperty(N,"FileOperationPatternKind",{enumerable:!0,get:function(){return Us.FileOperationPatternKind}});Object.defineProperty(N,"DidCreateFilesNotification",{enumerable:!0,get:function(){return Us.DidCreateFilesNotification}});Object.defineProperty(N,"WillCreateFilesRequest",{enumerable:!0,get:function(){return Us.WillCreateFilesRequest}});Object.defineProperty(N,"DidRenameFilesNotification",{enumerable:!0,get:function(){return Us.DidRenameFilesNotification}});Object.defineProperty(N,"WillRenameFilesRequest",{enumerable:!0,get:function(){return Us.WillRenameFilesRequest}});Object.defineProperty(N,"DidDeleteFilesNotification",{enumerable:!0,get:function(){return Us.DidDeleteFilesNotification}});Object.defineProperty(N,"WillDeleteFilesRequest",{enumerable:!0,get:function(){return Us.WillDeleteFilesRequest}});var oy=Ak();Object.defineProperty(N,"UniquenessLevel",{enumerable:!0,get:function(){return oy.UniquenessLevel}});Object.defineProperty(N,"MonikerKind",{enumerable:!0,get:function(){return oy.MonikerKind}});Object.defineProperty(N,"MonikerRequest",{enumerable:!0,get:function(){return oy.MonikerRequest}});var ay=xk();Object.defineProperty(N,"TypeHierarchyPrepareRequest",{enumerable:!0,get:function(){return ay.TypeHierarchyPrepareRequest}});Object.defineProperty(N,"TypeHierarchySubtypesRequest",{enumerable:!0,get:function(){return ay.TypeHierarchySubtypesRequest}});Object.defineProperty(N,"TypeHierarchySupertypesRequest",{enumerable:!0,get:function(){return ay.TypeHierarchySupertypesRequest}});var yP=$k();Object.defineProperty(N,"InlineValueRequest",{enumerable:!0,get:function(){return yP.InlineValueRequest}});Object.defineProperty(N,"InlineValueRefreshRequest",{enumerable:!0,get:function(){return yP.InlineValueRefreshRequest}});var cy=Uk();Object.defineProperty(N,"InlayHintRequest",{enumerable:!0,get:function(){return cy.InlayHintRequest}});Object.defineProperty(N,"InlayHintResolveRequest",{enumerable:!0,get:function(){return cy.InlayHintResolveRequest}});Object.defineProperty(N,"InlayHintRefreshRequest",{enumerable:!0,get:function(){return cy.InlayHintRefreshRequest}});var dc=Yk();Object.defineProperty(N,"DiagnosticServerCancellationData",{enumerable:!0,get:function(){return dc.DiagnosticServerCancellationData}});Object.defineProperty(N,"DocumentDiagnosticReportKind",{enumerable:!0,get:function(){return dc.DocumentDiagnosticReportKind}});Object.defineProperty(N,"DocumentDiagnosticRequest",{enumerable:!0,get:function(){return dc.DocumentDiagnosticRequest}});Object.defineProperty(N,"WorkspaceDiagnosticRequest",{enumerable:!0,get:function(){return dc.WorkspaceDiagnosticRequest}});Object.defineProperty(N,"DiagnosticRefreshRequest",{enumerable:!0,get:function(){return dc.DiagnosticRefreshRequest}});var Xn=rR();Object.defineProperty(N,"NotebookCellKind",{enumerable:!0,get:function(){return Xn.NotebookCellKind}});Object.defineProperty(N,"ExecutionSummary",{enumerable:!0,get:function(){return Xn.ExecutionSummary}});Object.defineProperty(N,"NotebookCell",{enumerable:!0,get:function(){return Xn.NotebookCell}});Object.defineProperty(N,"NotebookDocument",{enumerable:!0,get:function(){return Xn.NotebookDocument}});Object.defineProperty(N,"NotebookDocumentSyncRegistrationType",{enumerable:!0,get:function(){return Xn.NotebookDocumentSyncRegistrationType}});Object.defineProperty(N,"DidOpenNotebookDocumentNotification",{enumerable:!0,get:function(){return Xn.DidOpenNotebookDocumentNotification}});Object.defineProperty(N,"NotebookCellArrayChange",{enumerable:!0,get:function(){return Xn.NotebookCellArrayChange}});Object.defineProperty(N,"DidChangeNotebookDocumentNotification",{enumerable:!0,get:function(){return Xn.DidChangeNotebookDocumentNotification}});Object.defineProperty(N,"DidSaveNotebookDocumentNotification",{enumerable:!0,get:function(){return Xn.DidSaveNotebookDocumentNotification}});Object.defineProperty(N,"DidCloseNotebookDocumentNotification",{enumerable:!0,get:function(){return Xn.DidCloseNotebookDocumentNotification}});var LF=sR();Object.defineProperty(N,"InlineCompletionRequest",{enumerable:!0,get:function(){return LF.InlineCompletionRequest}});var ey;(function(t){function e(r){let n=r;return zt.string(n)||zt.string(n.language)||zt.string(n.scheme)||zt.string(n.pattern)}t.is=e})(ey||(N.TextDocumentFilter=ey={}));var ty;(function(t){function e(r){let n=r;return zt.objectLiteral(n)&&(zt.string(n.notebookType)||zt.string(n.scheme)||zt.string(n.pattern))}t.is=e})(ty||(N.NotebookDocumentFilter=ty={}));var ry;(function(t){function e(r){let n=r;return zt.objectLiteral(n)&&(zt.string(n.notebook)||ty.is(n.notebook))&&(n.language===void 0||zt.string(n.language))}t.is=e})(ry||(N.NotebookCellTextDocumentFilter=ry={}));var ny;(function(t){function e(r){if(!Array.isArray(r))return!1;for(let n of r)if(!zt.string(n)&&!ey.is(n)&&!ry.is(n))return!1;return!0}t.is=e})(ny||(N.DocumentSelector=ny={}));var aR;(function(t){t.method="client/registerCapability",t.messageDirection=V.MessageDirection.serverToClient,t.type=new V.ProtocolRequestType(t.method)})(aR||(N.RegistrationRequest=aR={}));var cR;(function(t){t.method="client/unregisterCapability",t.messageDirection=V.MessageDirection.serverToClient,t.type=new V.ProtocolRequestType(t.method)})(cR||(N.UnregistrationRequest=cR={}));var lR;(function(t){t.Create="create",t.Rename="rename",t.Delete="delete"})(lR||(N.ResourceOperationKind=lR={}));var uR;(function(t){t.Abort="abort",t.Transactional="transactional",t.TextOnlyTransactional="textOnlyTransactional",t.Undo="undo"})(uR||(N.FailureHandlingKind=uR={}));var dR;(function(t){t.UTF8="utf-8",t.UTF16="utf-16",t.UTF32="utf-32"})(dR||(N.PositionEncodingKind=dR={}));var fR;(function(t){function e(r){let n=r;return n&&zt.string(n.id)&&n.id.length>0}t.hasId=e})(fR||(N.StaticRegistrationOptions=fR={}));var pR;(function(t){function e(r){let n=r;return n&&(n.documentSelector===null||ny.is(n.documentSelector))}t.is=e})(pR||(N.TextDocumentRegistrationOptions=pR={}));var hR;(function(t){function e(n){let i=n;return zt.objectLiteral(i)&&(i.workDoneProgress===void 0||zt.boolean(i.workDoneProgress))}t.is=e;function r(n){let i=n;return i&&zt.boolean(i.workDoneProgress)}t.hasWorkDoneProgress=r})(hR||(N.WorkDoneProgressOptions=hR={}));var mR;(function(t){t.method="initialize",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolRequestType(t.method)})(mR||(N.InitializeRequest=mR={}));var gR;(function(t){t.unknownProtocolVersion=1})(gR||(N.InitializeErrorCodes=gR={}));var yR;(function(t){t.method="initialized",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolNotificationType(t.method)})(yR||(N.InitializedNotification=yR={}));var TR;(function(t){t.method="shutdown",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolRequestType0(t.method)})(TR||(N.ShutdownRequest=TR={}));var vR;(function(t){t.method="exit",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolNotificationType0(t.method)})(vR||(N.ExitNotification=vR={}));var bR;(function(t){t.method="workspace/didChangeConfiguration",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolNotificationType(t.method)})(bR||(N.DidChangeConfigurationNotification=bR={}));var _R;(function(t){t.Error=1,t.Warning=2,t.Info=3,t.Log=4,t.Debug=5})(_R||(N.MessageType=_R={}));var SR;(function(t){t.method="window/showMessage",t.messageDirection=V.MessageDirection.serverToClient,t.type=new V.ProtocolNotificationType(t.method)})(SR||(N.ShowMessageNotification=SR={}));var NR;(function(t){t.method="window/showMessageRequest",t.messageDirection=V.MessageDirection.serverToClient,t.type=new V.ProtocolRequestType(t.method)})(NR||(N.ShowMessageRequest=NR={}));var kR;(function(t){t.method="window/logMessage",t.messageDirection=V.MessageDirection.serverToClient,t.type=new V.ProtocolNotificationType(t.method)})(kR||(N.LogMessageNotification=kR={}));var RR;(function(t){t.method="telemetry/event",t.messageDirection=V.MessageDirection.serverToClient,t.type=new V.ProtocolNotificationType(t.method)})(RR||(N.TelemetryEventNotification=RR={}));var PR;(function(t){t.None=0,t.Full=1,t.Incremental=2})(PR||(N.TextDocumentSyncKind=PR={}));var wR;(function(t){t.method="textDocument/didOpen",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolNotificationType(t.method)})(wR||(N.DidOpenTextDocumentNotification=wR={}));var ER;(function(t){function e(n){let i=n;return i!=null&&typeof i.text=="string"&&i.range!==void 0&&(i.rangeLength===void 0||typeof i.rangeLength=="number")}t.isIncremental=e;function r(n){let i=n;return i!=null&&typeof i.text=="string"&&i.range===void 0&&i.rangeLength===void 0}t.isFull=r})(ER||(N.TextDocumentContentChangeEvent=ER={}));var DR;(function(t){t.method="textDocument/didChange",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolNotificationType(t.method)})(DR||(N.DidChangeTextDocumentNotification=DR={}));var CR;(function(t){t.method="textDocument/didClose",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolNotificationType(t.method)})(CR||(N.DidCloseTextDocumentNotification=CR={}));var AR;(function(t){t.method="textDocument/didSave",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolNotificationType(t.method)})(AR||(N.DidSaveTextDocumentNotification=AR={}));var IR;(function(t){t.Manual=1,t.AfterDelay=2,t.FocusOut=3})(IR||(N.TextDocumentSaveReason=IR={}));var OR;(function(t){t.method="textDocument/willSave",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolNotificationType(t.method)})(OR||(N.WillSaveTextDocumentNotification=OR={}));var MR;(function(t){t.method="textDocument/willSaveWaitUntil",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolRequestType(t.method)})(MR||(N.WillSaveTextDocumentWaitUntilRequest=MR={}));var xR;(function(t){t.method="workspace/didChangeWatchedFiles",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolNotificationType(t.method)})(xR||(N.DidChangeWatchedFilesNotification=xR={}));var LR;(function(t){t.Created=1,t.Changed=2,t.Deleted=3})(LR||(N.FileChangeType=LR={}));var qR;(function(t){function e(r){let n=r;return zt.objectLiteral(n)&&(oR.URI.is(n.baseUri)||oR.WorkspaceFolder.is(n.baseUri))&&zt.string(n.pattern)}t.is=e})(qR||(N.RelativePattern=qR={}));var $R;(function(t){t.Create=1,t.Change=2,t.Delete=4})($R||(N.WatchKind=$R={}));var BR;(function(t){t.method="textDocument/publishDiagnostics",t.messageDirection=V.MessageDirection.serverToClient,t.type=new V.ProtocolNotificationType(t.method)})(BR||(N.PublishDiagnosticsNotification=BR={}));var FR;(function(t){t.Invoked=1,t.TriggerCharacter=2,t.TriggerForIncompleteCompletions=3})(FR||(N.CompletionTriggerKind=FR={}));var jR;(function(t){t.method="textDocument/completion",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolRequestType(t.method)})(jR||(N.CompletionRequest=jR={}));var UR;(function(t){t.method="completionItem/resolve",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolRequestType(t.method)})(UR||(N.CompletionResolveRequest=UR={}));var HR;(function(t){t.method="textDocument/hover",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolRequestType(t.method)})(HR||(N.HoverRequest=HR={}));var VR;(function(t){t.Invoked=1,t.TriggerCharacter=2,t.ContentChange=3})(VR||(N.SignatureHelpTriggerKind=VR={}));var zR;(function(t){t.method="textDocument/signatureHelp",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolRequestType(t.method)})(zR||(N.SignatureHelpRequest=zR={}));var WR;(function(t){t.method="textDocument/definition",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolRequestType(t.method)})(WR||(N.DefinitionRequest=WR={}));var GR;(function(t){t.method="textDocument/references",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolRequestType(t.method)})(GR||(N.ReferencesRequest=GR={}));var KR;(function(t){t.method="textDocument/documentHighlight",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolRequestType(t.method)})(KR||(N.DocumentHighlightRequest=KR={}));var YR;(function(t){t.method="textDocument/documentSymbol",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolRequestType(t.method)})(YR||(N.DocumentSymbolRequest=YR={}));var XR;(function(t){t.method="textDocument/codeAction",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolRequestType(t.method)})(XR||(N.CodeActionRequest=XR={}));var JR;(function(t){t.method="codeAction/resolve",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolRequestType(t.method)})(JR||(N.CodeActionResolveRequest=JR={}));var QR;(function(t){t.method="workspace/symbol",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolRequestType(t.method)})(QR||(N.WorkspaceSymbolRequest=QR={}));var ZR;(function(t){t.method="workspaceSymbol/resolve",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolRequestType(t.method)})(ZR||(N.WorkspaceSymbolResolveRequest=ZR={}));var eP;(function(t){t.method="textDocument/codeLens",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolRequestType(t.method)})(eP||(N.CodeLensRequest=eP={}));var tP;(function(t){t.method="codeLens/resolve",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolRequestType(t.method)})(tP||(N.CodeLensResolveRequest=tP={}));var rP;(function(t){t.method="workspace/codeLens/refresh",t.messageDirection=V.MessageDirection.serverToClient,t.type=new V.ProtocolRequestType0(t.method)})(rP||(N.CodeLensRefreshRequest=rP={}));var nP;(function(t){t.method="textDocument/documentLink",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolRequestType(t.method)})(nP||(N.DocumentLinkRequest=nP={}));var iP;(function(t){t.method="documentLink/resolve",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolRequestType(t.method)})(iP||(N.DocumentLinkResolveRequest=iP={}));var sP;(function(t){t.method="textDocument/formatting",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolRequestType(t.method)})(sP||(N.DocumentFormattingRequest=sP={}));var oP;(function(t){t.method="textDocument/rangeFormatting",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolRequestType(t.method)})(oP||(N.DocumentRangeFormattingRequest=oP={}));var aP;(function(t){t.method="textDocument/rangesFormatting",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolRequestType(t.method)})(aP||(N.DocumentRangesFormattingRequest=aP={}));var cP;(function(t){t.method="textDocument/onTypeFormatting",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolRequestType(t.method)})(cP||(N.DocumentOnTypeFormattingRequest=cP={}));var lP;(function(t){t.Identifier=1})(lP||(N.PrepareSupportDefaultBehavior=lP={}));var uP;(function(t){t.method="textDocument/rename",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolRequestType(t.method)})(uP||(N.RenameRequest=uP={}));var dP;(function(t){t.method="textDocument/prepareRename",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolRequestType(t.method)})(dP||(N.PrepareRenameRequest=dP={}));var fP;(function(t){t.method="workspace/executeCommand",t.messageDirection=V.MessageDirection.clientToServer,t.type=new V.ProtocolRequestType(t.method)})(fP||(N.ExecuteCommandRequest=fP={}));var pP;(function(t){t.method="workspace/applyEdit",t.messageDirection=V.MessageDirection.serverToClient,t.type=new V.ProtocolRequestType("workspace/applyEdit")})(pP||(N.ApplyWorkspaceEditRequest=pP={}))});var bP=k(Pd=>{"use strict";Object.defineProperty(Pd,"__esModule",{value:!0});Pd.createProtocolConnection=void 0;var vP=js();function qF(t,e,r,n){return vP.ConnectionStrategy.is(n)&&(n={connectionStrategy:n}),(0,vP.createMessageConnection)(t,e,r,n)}Pd.createProtocolConnection=qF});var SP=k(Er=>{"use strict";var $F=Er&&Er.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(e,r);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,i)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),wd=Er&&Er.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&$F(e,t,r)};Object.defineProperty(Er,"__esModule",{value:!0});Er.LSPErrorCodes=Er.createProtocolConnection=void 0;wd(js(),Er);wd(ud(),Er);wd(Tt(),Er);wd(TP(),Er);var BF=bP();Object.defineProperty(Er,"createProtocolConnection",{enumerable:!0,get:function(){return BF.createProtocolConnection}});var _P;(function(t){t.lspReservedErrorRangeStart=-32899,t.RequestFailed=-32803,t.ServerCancelled=-32802,t.ContentModified=-32801,t.RequestCancelled=-32800,t.lspReservedErrorRangeEnd=-32800})(_P||(Er.LSPErrorCodes=_P={}))});var Et=k(Jn=>{"use strict";var FF=Jn&&Jn.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(e,r);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,i)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),NP=Jn&&Jn.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&FF(e,t,r)};Object.defineProperty(Jn,"__esModule",{value:!0});Jn.createProtocolConnection=void 0;var jF=Wg();NP(Wg(),Jn);NP(SP(),Jn);function UF(t,e,r,n){return(0,jF.createMessageConnection)(t,e,r,n)}Jn.createProtocolConnection=UF});var ly=k(rn=>{"use strict";Object.defineProperty(rn,"__esModule",{value:!0});rn.generateUuid=rn.parse=rn.isUUID=rn.v4=rn.empty=void 0;var fc=class{constructor(e){this._value=e}asHex(){return this._value}equals(e){return this.asHex()===e.asHex()}},pc=class t extends fc{static _oneOf(e){return e[Math.floor(e.length*Math.random())]}static _randomHex(){return t._oneOf(t._chars)}constructor(){super([t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),"-",t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),"-","4",t._randomHex(),t._randomHex(),t._randomHex(),"-",t._oneOf(t._timeHighBits),t._randomHex(),t._randomHex(),t._randomHex(),"-",t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex(),t._randomHex()].join(""))}};pc._chars=["0","1","2","3","4","5","6","6","7","8","9","a","b","c","d","e","f"];pc._timeHighBits=["8","9","a","b"];rn.empty=new fc("00000000-0000-0000-0000-000000000000");function kP(){return new pc}rn.v4=kP;var HF=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;function RP(t){return HF.test(t)}rn.isUUID=RP;function VF(t){if(!RP(t))throw new Error("invalid uuid");return new fc(t)}rn.parse=VF;function zF(){return kP().asHex()}rn.generateUuid=zF});var PP=k(Xi=>{"use strict";Object.defineProperty(Xi,"__esModule",{value:!0});Xi.attachPartialResult=Xi.ProgressFeature=Xi.attachWorkDone=void 0;var Yi=Et(),WF=ly(),Hs=class t{constructor(e,r){this._connection=e,this._token=r,t.Instances.set(this._token,this)}begin(e,r,n,i){let s={kind:"begin",title:e,percentage:r,message:n,cancellable:i};this._connection.sendProgress(Yi.WorkDoneProgress.type,this._token,s)}report(e,r){let n={kind:"report"};typeof e=="number"?(n.percentage=e,r!==void 0&&(n.message=r)):n.message=e,this._connection.sendProgress(Yi.WorkDoneProgress.type,this._token,n)}done(){t.Instances.delete(this._token),this._connection.sendProgress(Yi.WorkDoneProgress.type,this._token,{kind:"end"})}};Hs.Instances=new Map;var Ed=class extends Hs{constructor(e,r){super(e,r),this._source=new Yi.CancellationTokenSource}get token(){return this._source.token}done(){this._source.dispose(),super.done()}cancel(){this._source.cancel()}},hc=class{constructor(){}begin(){}report(){}done(){}},Dd=class extends hc{constructor(){super(),this._source=new Yi.CancellationTokenSource}get token(){return this._source.token}done(){this._source.dispose()}cancel(){this._source.cancel()}};function GF(t,e){if(e===void 0||e.workDoneToken===void 0)return new hc;let r=e.workDoneToken;return delete e.workDoneToken,new Hs(t,r)}Xi.attachWorkDone=GF;var KF=t=>class extends t{constructor(){super(),this._progressSupported=!1}initialize(e){super.initialize(e),e?.window?.workDoneProgress===!0&&(this._progressSupported=!0,this.connection.onNotification(Yi.WorkDoneProgressCancelNotification.type,r=>{let n=Hs.Instances.get(r.token);(n instanceof Ed||n instanceof Dd)&&n.cancel()}))}attachWorkDoneProgress(e){return e===void 0?new hc:new Hs(this.connection,e)}createWorkDoneProgress(){if(this._progressSupported){let e=(0,WF.generateUuid)();return this.connection.sendRequest(Yi.WorkDoneProgressCreateRequest.type,{token:e}).then(()=>new Ed(this.connection,e))}else return Promise.resolve(new Dd)}};Xi.ProgressFeature=KF;var uy;(function(t){t.type=new Yi.ProgressType})(uy||(uy={}));var dy=class{constructor(e,r){this._connection=e,this._token=r}report(e){this._connection.sendProgress(uy.type,this._token,e)}};function YF(t,e){if(e===void 0||e.partialResultToken===void 0)return;let r=e.partialResultToken;return delete e.partialResultToken,new dy(t,r)}Xi.attachPartialResult=YF});var wP=k(Cd=>{"use strict";Object.defineProperty(Cd,"__esModule",{value:!0});Cd.ConfigurationFeature=void 0;var XF=Et(),JF=ju(),QF=t=>class extends t{getConfiguration(e){return e?JF.string(e)?this._getConfiguration({section:e}):this._getConfiguration(e):this._getConfiguration({})}_getConfiguration(e){let r={items:Array.isArray(e)?e:[e]};return this.connection.sendRequest(XF.ConfigurationRequest.type,r).then(n=>Array.isArray(n)?Array.isArray(e)?n:n[0]:Array.isArray(e)?[]:null)}};Cd.ConfigurationFeature=QF});var EP=k(Id=>{"use strict";Object.defineProperty(Id,"__esModule",{value:!0});Id.WorkspaceFoldersFeature=void 0;var Ad=Et(),ZF=t=>class extends t{constructor(){super(),this._notificationIsAutoRegistered=!1}initialize(e){super.initialize(e);let r=e.workspace;r&&r.workspaceFolders&&(this._onDidChangeWorkspaceFolders=new Ad.Emitter,this.connection.onNotification(Ad.DidChangeWorkspaceFoldersNotification.type,n=>{this._onDidChangeWorkspaceFolders.fire(n.event)}))}fillServerCapabilities(e){super.fillServerCapabilities(e);let r=e.workspace?.workspaceFolders?.changeNotifications;this._notificationIsAutoRegistered=r===!0||typeof r=="string"}getWorkspaceFolders(){return this.connection.sendRequest(Ad.WorkspaceFoldersRequest.type)}get onDidChangeWorkspaceFolders(){if(!this._onDidChangeWorkspaceFolders)throw new Error("Client doesn't support sending workspace folder change events.");return!this._notificationIsAutoRegistered&&!this._unregistration&&(this._unregistration=this.connection.client.register(Ad.DidChangeWorkspaceFoldersNotification.type)),this._onDidChangeWorkspaceFolders.event}};Id.WorkspaceFoldersFeature=ZF});var DP=k(Od=>{"use strict";Object.defineProperty(Od,"__esModule",{value:!0});Od.CallHierarchyFeature=void 0;var fy=Et(),ej=t=>class extends t{get callHierarchy(){return{onPrepare:e=>this.connection.onRequest(fy.CallHierarchyPrepareRequest.type,(r,n)=>e(r,n,this.attachWorkDoneProgress(r),void 0)),onIncomingCalls:e=>{let r=fy.CallHierarchyIncomingCallsRequest.type;return this.connection.onRequest(r,(n,i)=>e(n,i,this.attachWorkDoneProgress(n),this.attachPartialResultProgress(r,n)))},onOutgoingCalls:e=>{let r=fy.CallHierarchyOutgoingCallsRequest.type;return this.connection.onRequest(r,(n,i)=>e(n,i,this.attachWorkDoneProgress(n),this.attachPartialResultProgress(r,n)))}}}};Od.CallHierarchyFeature=ej});var hy=k(Ji=>{"use strict";Object.defineProperty(Ji,"__esModule",{value:!0});Ji.SemanticTokensBuilder=Ji.SemanticTokensDiff=Ji.SemanticTokensFeature=void 0;var Md=Et(),tj=t=>class extends t{get semanticTokens(){return{refresh:()=>this.connection.sendRequest(Md.SemanticTokensRefreshRequest.type),on:e=>{let r=Md.SemanticTokensRequest.type;return this.connection.onRequest(r,(n,i)=>e(n,i,this.attachWorkDoneProgress(n),this.attachPartialResultProgress(r,n)))},onDelta:e=>{let r=Md.SemanticTokensDeltaRequest.type;return this.connection.onRequest(r,(n,i)=>e(n,i,this.attachWorkDoneProgress(n),this.attachPartialResultProgress(r,n)))},onRange:e=>{let r=Md.SemanticTokensRangeRequest.type;return this.connection.onRequest(r,(n,i)=>e(n,i,this.attachWorkDoneProgress(n),this.attachPartialResultProgress(r,n)))}}}};Ji.SemanticTokensFeature=tj;var xd=class{constructor(e,r){this.originalSequence=e,this.modifiedSequence=r}computeDiff(){let e=this.originalSequence.length,r=this.modifiedSequence.length,n=0;for(;n<r&&n<e&&this.originalSequence[n]===this.modifiedSequence[n];)n++;if(n<r&&n<e){let i=e-1,s=r-1;for(;i>=n&&s>=n&&this.originalSequence[i]===this.modifiedSequence[s];)i--,s--;(i<n||s<n)&&(i++,s++);let o=i-n+1,a=this.modifiedSequence.slice(n,s+1);return a.length===1&&a[0]===this.originalSequence[i]?[{start:n,deleteCount:o-1}]:[{start:n,deleteCount:o,data:a}]}else return n<r?[{start:n,deleteCount:0,data:this.modifiedSequence.slice(n)}]:n<e?[{start:n,deleteCount:e-n}]:[]}};Ji.SemanticTokensDiff=xd;var py=class{constructor(){this._prevData=void 0,this.initialize()}initialize(){this._id=Date.now(),this._prevLine=0,this._prevChar=0,this._data=[],this._dataLen=0}push(e,r,n,i,s){let o=e,a=r;this._dataLen>0&&(o-=this._prevLine,o===0&&(a-=this._prevChar)),this._data[this._dataLen++]=o,this._data[this._dataLen++]=a,this._data[this._dataLen++]=n,this._data[this._dataLen++]=i,this._data[this._dataLen++]=s,this._prevLine=e,this._prevChar=r}get id(){return this._id.toString()}previousResult(e){this.id===e&&(this._prevData=this._data),this.initialize()}build(){return this._prevData=void 0,{resultId:this.id,data:this._data}}canBuildEdits(){return this._prevData!==void 0}buildEdits(){return this._prevData!==void 0?{resultId:this.id,edits:new xd(this._prevData,this._data).computeDiff()}:this.build()}};Ji.SemanticTokensBuilder=py});var CP=k(Ld=>{"use strict";Object.defineProperty(Ld,"__esModule",{value:!0});Ld.ShowDocumentFeature=void 0;var rj=Et(),nj=t=>class extends t{showDocument(e){return this.connection.sendRequest(rj.ShowDocumentRequest.type,e)}};Ld.ShowDocumentFeature=nj});var AP=k(qd=>{"use strict";Object.defineProperty(qd,"__esModule",{value:!0});qd.FileOperationsFeature=void 0;var Ho=Et(),ij=t=>class extends t{onDidCreateFiles(e){return this.connection.onNotification(Ho.DidCreateFilesNotification.type,r=>{e(r)})}onDidRenameFiles(e){return this.connection.onNotification(Ho.DidRenameFilesNotification.type,r=>{e(r)})}onDidDeleteFiles(e){return this.connection.onNotification(Ho.DidDeleteFilesNotification.type,r=>{e(r)})}onWillCreateFiles(e){return this.connection.onRequest(Ho.WillCreateFilesRequest.type,(r,n)=>e(r,n))}onWillRenameFiles(e){return this.connection.onRequest(Ho.WillRenameFilesRequest.type,(r,n)=>e(r,n))}onWillDeleteFiles(e){return this.connection.onRequest(Ho.WillDeleteFilesRequest.type,(r,n)=>e(r,n))}};qd.FileOperationsFeature=ij});var IP=k($d=>{"use strict";Object.defineProperty($d,"__esModule",{value:!0});$d.LinkedEditingRangeFeature=void 0;var sj=Et(),oj=t=>class extends t{onLinkedEditingRange(e){return this.connection.onRequest(sj.LinkedEditingRangeRequest.type,(r,n)=>e(r,n,this.attachWorkDoneProgress(r),void 0))}};$d.LinkedEditingRangeFeature=oj});var OP=k(Bd=>{"use strict";Object.defineProperty(Bd,"__esModule",{value:!0});Bd.TypeHierarchyFeature=void 0;var my=Et(),aj=t=>class extends t{get typeHierarchy(){return{onPrepare:e=>this.connection.onRequest(my.TypeHierarchyPrepareRequest.type,(r,n)=>e(r,n,this.attachWorkDoneProgress(r),void 0)),onSupertypes:e=>{let r=my.TypeHierarchySupertypesRequest.type;return this.connection.onRequest(r,(n,i)=>e(n,i,this.attachWorkDoneProgress(n),this.attachPartialResultProgress(r,n)))},onSubtypes:e=>{let r=my.TypeHierarchySubtypesRequest.type;return this.connection.onRequest(r,(n,i)=>e(n,i,this.attachWorkDoneProgress(n),this.attachPartialResultProgress(r,n)))}}}};Bd.TypeHierarchyFeature=aj});var xP=k(Fd=>{"use strict";Object.defineProperty(Fd,"__esModule",{value:!0});Fd.InlineValueFeature=void 0;var MP=Et(),cj=t=>class extends t{get inlineValue(){return{refresh:()=>this.connection.sendRequest(MP.InlineValueRefreshRequest.type),on:e=>this.connection.onRequest(MP.InlineValueRequest.type,(r,n)=>e(r,n,this.attachWorkDoneProgress(r)))}}};Fd.InlineValueFeature=cj});var qP=k(jd=>{"use strict";Object.defineProperty(jd,"__esModule",{value:!0});jd.FoldingRangeFeature=void 0;var LP=Et(),lj=t=>class extends t{get foldingRange(){return{refresh:()=>this.connection.sendRequest(LP.FoldingRangeRefreshRequest.type),on:e=>{let r=LP.FoldingRangeRequest.type;return this.connection.onRequest(r,(n,i)=>e(n,i,this.attachWorkDoneProgress(n),this.attachPartialResultProgress(r,n)))}}}};jd.FoldingRangeFeature=lj});var $P=k(Ud=>{"use strict";Object.defineProperty(Ud,"__esModule",{value:!0});Ud.InlayHintFeature=void 0;var gy=Et(),uj=t=>class extends t{get inlayHint(){return{refresh:()=>this.connection.sendRequest(gy.InlayHintRefreshRequest.type),on:e=>this.connection.onRequest(gy.InlayHintRequest.type,(r,n)=>e(r,n,this.attachWorkDoneProgress(r))),resolve:e=>this.connection.onRequest(gy.InlayHintResolveRequest.type,(r,n)=>e(r,n))}}};Ud.InlayHintFeature=uj});var BP=k(Hd=>{"use strict";Object.defineProperty(Hd,"__esModule",{value:!0});Hd.DiagnosticFeature=void 0;var mc=Et(),dj=t=>class extends t{get diagnostics(){return{refresh:()=>this.connection.sendRequest(mc.DiagnosticRefreshRequest.type),on:e=>this.connection.onRequest(mc.DocumentDiagnosticRequest.type,(r,n)=>e(r,n,this.attachWorkDoneProgress(r),this.attachPartialResultProgress(mc.DocumentDiagnosticRequest.partialResult,r))),onWorkspace:e=>this.connection.onRequest(mc.WorkspaceDiagnosticRequest.type,(r,n)=>e(r,n,this.attachWorkDoneProgress(r),this.attachPartialResultProgress(mc.WorkspaceDiagnosticRequest.partialResult,r)))}}};Hd.DiagnosticFeature=dj});var Ty=k(Vd=>{"use strict";Object.defineProperty(Vd,"__esModule",{value:!0});Vd.TextDocuments=void 0;var Vs=Et(),yy=class{constructor(e){this._configuration=e,this._syncedDocuments=new Map,this._onDidChangeContent=new Vs.Emitter,this._onDidOpen=new Vs.Emitter,this._onDidClose=new Vs.Emitter,this._onDidSave=new Vs.Emitter,this._onWillSave=new Vs.Emitter}get onDidOpen(){return this._onDidOpen.event}get onDidChangeContent(){return this._onDidChangeContent.event}get onWillSave(){return this._onWillSave.event}onWillSaveWaitUntil(e){this._willSaveWaitUntil=e}get onDidSave(){return this._onDidSave.event}get onDidClose(){return this._onDidClose.event}get(e){return this._syncedDocuments.get(e)}all(){return Array.from(this._syncedDocuments.values())}keys(){return Array.from(this._syncedDocuments.keys())}listen(e){e.__textDocumentSync=Vs.TextDocumentSyncKind.Incremental;let r=[];return r.push(e.onDidOpenTextDocument(n=>{let i=n.textDocument,s=this._configuration.create(i.uri,i.languageId,i.version,i.text);this._syncedDocuments.set(i.uri,s);let o=Object.freeze({document:s});this._onDidOpen.fire(o),this._onDidChangeContent.fire(o)})),r.push(e.onDidChangeTextDocument(n=>{let i=n.textDocument,s=n.contentChanges;if(s.length===0)return;let{version:o}=i;if(o==null)throw new Error(`Received document change event for ${i.uri} without valid version identifier`);let a=this._syncedDocuments.get(i.uri);a!==void 0&&(a=this._configuration.update(a,s,o),this._syncedDocuments.set(i.uri,a),this._onDidChangeContent.fire(Object.freeze({document:a})))})),r.push(e.onDidCloseTextDocument(n=>{let i=this._syncedDocuments.get(n.textDocument.uri);i!==void 0&&(this._syncedDocuments.delete(n.textDocument.uri),this._onDidClose.fire(Object.freeze({document:i})))})),r.push(e.onWillSaveTextDocument(n=>{let i=this._syncedDocuments.get(n.textDocument.uri);i!==void 0&&this._onWillSave.fire(Object.freeze({document:i,reason:n.reason}))})),r.push(e.onWillSaveTextDocumentWaitUntil((n,i)=>{let s=this._syncedDocuments.get(n.textDocument.uri);return s!==void 0&&this._willSaveWaitUntil?this._willSaveWaitUntil(Object.freeze({document:s,reason:n.reason}),i):[]})),r.push(e.onDidSaveTextDocument(n=>{let i=this._syncedDocuments.get(n.textDocument.uri);i!==void 0&&this._onDidSave.fire(Object.freeze({document:i}))})),Vs.Disposable.create(()=>{r.forEach(n=>n.dispose())})}};Vd.TextDocuments=yy});var by=k(Vo=>{"use strict";Object.defineProperty(Vo,"__esModule",{value:!0});Vo.NotebookDocuments=Vo.NotebookSyncFeature=void 0;var nn=Et(),FP=Ty(),fj=t=>class extends t{get synchronization(){return{onDidOpenNotebookDocument:e=>this.connection.onNotification(nn.DidOpenNotebookDocumentNotification.type,r=>{e(r)}),onDidChangeNotebookDocument:e=>this.connection.onNotification(nn.DidChangeNotebookDocumentNotification.type,r=>{e(r)}),onDidSaveNotebookDocument:e=>this.connection.onNotification(nn.DidSaveNotebookDocumentNotification.type,r=>{e(r)}),onDidCloseNotebookDocument:e=>this.connection.onNotification(nn.DidCloseNotebookDocumentNotification.type,r=>{e(r)})}}};Vo.NotebookSyncFeature=fj;var zd=class t{onDidOpenTextDocument(e){return this.openHandler=e,nn.Disposable.create(()=>{this.openHandler=void 0})}openTextDocument(e){this.openHandler&&this.openHandler(e)}onDidChangeTextDocument(e){return this.changeHandler=e,nn.Disposable.create(()=>{this.changeHandler=e})}changeTextDocument(e){this.changeHandler&&this.changeHandler(e)}onDidCloseTextDocument(e){return this.closeHandler=e,nn.Disposable.create(()=>{this.closeHandler=void 0})}closeTextDocument(e){this.closeHandler&&this.closeHandler(e)}onWillSaveTextDocument(){return t.NULL_DISPOSE}onWillSaveTextDocumentWaitUntil(){return t.NULL_DISPOSE}onDidSaveTextDocument(){return t.NULL_DISPOSE}};zd.NULL_DISPOSE=Object.freeze({dispose:()=>{}});var vy=class{constructor(e){e instanceof FP.TextDocuments?this._cellTextDocuments=e:this._cellTextDocuments=new FP.TextDocuments(e),this.notebookDocuments=new Map,this.notebookCellMap=new Map,this._onDidOpen=new nn.Emitter,this._onDidChange=new nn.Emitter,this._onDidSave=new nn.Emitter,this._onDidClose=new nn.Emitter}get cellTextDocuments(){return this._cellTextDocuments}getCellTextDocument(e){return this._cellTextDocuments.get(e.document)}getNotebookDocument(e){return this.notebookDocuments.get(e)}getNotebookCell(e){let r=this.notebookCellMap.get(e);return r&&r[0]}findNotebookDocumentForCell(e){let r=typeof e=="string"?e:e.document,n=this.notebookCellMap.get(r);return n&&n[1]}get onDidOpen(){return this._onDidOpen.event}get onDidSave(){return this._onDidSave.event}get onDidChange(){return this._onDidChange.event}get onDidClose(){return this._onDidClose.event}listen(e){let r=new zd,n=[];return n.push(this.cellTextDocuments.listen(r)),n.push(e.notebooks.synchronization.onDidOpenNotebookDocument(i=>{this.notebookDocuments.set(i.notebookDocument.uri,i.notebookDocument);for(let s of i.cellTextDocuments)r.openTextDocument({textDocument:s});this.updateCellMap(i.notebookDocument),this._onDidOpen.fire(i.notebookDocument)})),n.push(e.notebooks.synchronization.onDidChangeNotebookDocument(i=>{let s=this.notebookDocuments.get(i.notebookDocument.uri);if(s===void 0)return;s.version=i.notebookDocument.version;let o=s.metadata,a=!1,c=i.change;c.metadata!==void 0&&(a=!0,s.metadata=c.metadata);let l=[],u=[],d=[],f=[];if(c.cells!==void 0){let S=c.cells;if(S.structure!==void 0){let _=S.structure.array;if(s.cells.splice(_.start,_.deleteCount,..._.cells!==void 0?_.cells:[]),S.structure.didOpen!==void 0)for(let v of S.structure.didOpen)r.openTextDocument({textDocument:v}),l.push(v.uri);if(S.structure.didClose)for(let v of S.structure.didClose)r.closeTextDocument({textDocument:v}),u.push(v.uri)}if(S.data!==void 0){let _=new Map(S.data.map(v=>[v.document,v]));for(let v=0;v<=s.cells.length;v++){let R=_.get(s.cells[v].document);if(R!==void 0){let D=s.cells.splice(v,1,R);if(d.push({old:D[0],new:R}),_.delete(R.document),_.size===0)break}}}if(S.textContent!==void 0)for(let _ of S.textContent)r.changeTextDocument({textDocument:_.document,contentChanges:_.changes}),f.push(_.document.uri)}this.updateCellMap(s);let p={notebookDocument:s};a&&(p.metadata={old:o,new:s.metadata});let g=[];for(let S of l)g.push(this.getNotebookCell(S));let h=[];for(let S of u)h.push(this.getNotebookCell(S));let T=[];for(let S of f)T.push(this.getNotebookCell(S));(g.length>0||h.length>0||d.length>0||T.length>0)&&(p.cells={added:g,removed:h,changed:{data:d,textContent:T}}),(p.metadata!==void 0||p.cells!==void 0)&&this._onDidChange.fire(p)})),n.push(e.notebooks.synchronization.onDidSaveNotebookDocument(i=>{let s=this.notebookDocuments.get(i.notebookDocument.uri);s!==void 0&&this._onDidSave.fire(s)})),n.push(e.notebooks.synchronization.onDidCloseNotebookDocument(i=>{let s=this.notebookDocuments.get(i.notebookDocument.uri);if(s!==void 0){this._onDidClose.fire(s);for(let o of i.cellTextDocuments)r.closeTextDocument({textDocument:o});this.notebookDocuments.delete(i.notebookDocument.uri);for(let o of s.cells)this.notebookCellMap.delete(o.document)}})),nn.Disposable.create(()=>{n.forEach(i=>i.dispose())})}updateCellMap(e){for(let r of e.cells)this.notebookCellMap.set(r.document,[r,e])}};Vo.NotebookDocuments=vy});var jP=k(Wd=>{"use strict";Object.defineProperty(Wd,"__esModule",{value:!0});Wd.MonikerFeature=void 0;var pj=Et(),hj=t=>class extends t{get moniker(){return{on:e=>{let r=pj.MonikerRequest.type;return this.connection.onRequest(r,(n,i)=>e(n,i,this.attachWorkDoneProgress(n),this.attachPartialResultProgress(r,n)))}}}};Wd.MonikerFeature=hj});var Py=k(Ue=>{"use strict";Object.defineProperty(Ue,"__esModule",{value:!0});Ue.createConnection=Ue.combineFeatures=Ue.combineNotebooksFeatures=Ue.combineLanguagesFeatures=Ue.combineWorkspaceFeatures=Ue.combineWindowFeatures=Ue.combineClientFeatures=Ue.combineTracerFeatures=Ue.combineTelemetryFeatures=Ue.combineConsoleFeatures=Ue._NotebooksImpl=Ue._LanguagesImpl=Ue.BulkUnregistration=Ue.BulkRegistration=Ue.ErrorMessageTracker=void 0;var K=Et(),sn=ju(),Sy=ly(),me=PP(),mj=wP(),gj=EP(),yj=DP(),Tj=hy(),vj=CP(),bj=AP(),_j=IP(),Sj=OP(),Nj=xP(),kj=qP(),Rj=$P(),Pj=BP(),wj=by(),Ej=jP();function _y(t){if(t!==null)return t}var Ny=class{constructor(){this._messages=Object.create(null)}add(e){let r=this._messages[e];r||(r=0),r++,this._messages[e]=r}sendErrors(e){Object.keys(this._messages).forEach(r=>{e.window.showErrorMessage(r)})}};Ue.ErrorMessageTracker=Ny;var Gd=class{constructor(){}rawAttach(e){this._rawConnection=e}attach(e){this._connection=e}get connection(){if(!this._connection)throw new Error("Remote is not attached to a connection yet.");return this._connection}fillServerCapabilities(e){}initialize(e){}error(e){this.send(K.MessageType.Error,e)}warn(e){this.send(K.MessageType.Warning,e)}info(e){this.send(K.MessageType.Info,e)}log(e){this.send(K.MessageType.Log,e)}debug(e){this.send(K.MessageType.Debug,e)}send(e,r){this._rawConnection&&this._rawConnection.sendNotification(K.LogMessageNotification.type,{type:e,message:r}).catch(()=>{(0,K.RAL)().console.error("Sending log message failed")})}},ky=class{constructor(){}attach(e){this._connection=e}get connection(){if(!this._connection)throw new Error("Remote is not attached to a connection yet.");return this._connection}initialize(e){}fillServerCapabilities(e){}showErrorMessage(e,...r){let n={type:K.MessageType.Error,message:e,actions:r};return this.connection.sendRequest(K.ShowMessageRequest.type,n).then(_y)}showWarningMessage(e,...r){let n={type:K.MessageType.Warning,message:e,actions:r};return this.connection.sendRequest(K.ShowMessageRequest.type,n).then(_y)}showInformationMessage(e,...r){let n={type:K.MessageType.Info,message:e,actions:r};return this.connection.sendRequest(K.ShowMessageRequest.type,n).then(_y)}},UP=(0,vj.ShowDocumentFeature)((0,me.ProgressFeature)(ky)),HP;(function(t){function e(){return new Kd}t.create=e})(HP||(Ue.BulkRegistration=HP={}));var Kd=class{constructor(){this._registrations=[],this._registered=new Set}add(e,r){let n=sn.string(e)?e:e.method;if(this._registered.has(n))throw new Error(`${n} is already added to this registration`);let i=Sy.generateUuid();this._registrations.push({id:i,method:n,registerOptions:r||{}}),this._registered.add(n)}asRegistrationParams(){return{registrations:this._registrations}}},VP;(function(t){function e(){return new gc(void 0,[])}t.create=e})(VP||(Ue.BulkUnregistration=VP={}));var gc=class{constructor(e,r){this._connection=e,this._unregistrations=new Map,r.forEach(n=>{this._unregistrations.set(n.method,n)})}get isAttached(){return!!this._connection}attach(e){this._connection=e}add(e){this._unregistrations.set(e.method,e)}dispose(){let e=[];for(let n of this._unregistrations.values())e.push(n);let r={unregisterations:e};this._connection.sendRequest(K.UnregistrationRequest.type,r).catch(()=>{this._connection.console.info("Bulk unregistration failed.")})}disposeSingle(e){let r=sn.string(e)?e:e.method,n=this._unregistrations.get(r);if(!n)return!1;let i={unregisterations:[n]};return this._connection.sendRequest(K.UnregistrationRequest.type,i).then(()=>{this._unregistrations.delete(r)},s=>{this._connection.console.info(`Un-registering request handler for ${n.id} failed.`)}),!0}},Yd=class{attach(e){this._connection=e}get connection(){if(!this._connection)throw new Error("Remote is not attached to a connection yet.");return this._connection}initialize(e){}fillServerCapabilities(e){}register(e,r,n){return e instanceof Kd?this.registerMany(e):e instanceof gc?this.registerSingle1(e,r,n):this.registerSingle2(e,r)}registerSingle1(e,r,n){let i=sn.string(r)?r:r.method,s=Sy.generateUuid(),o={registrations:[{id:s,method:i,registerOptions:n||{}}]};return e.isAttached||e.attach(this.connection),this.connection.sendRequest(K.RegistrationRequest.type,o).then(a=>(e.add({id:s,method:i}),e),a=>(this.connection.console.info(`Registering request handler for ${i} failed.`),Promise.reject(a)))}registerSingle2(e,r){let n=sn.string(e)?e:e.method,i=Sy.generateUuid(),s={registrations:[{id:i,method:n,registerOptions:r||{}}]};return this.connection.sendRequest(K.RegistrationRequest.type,s).then(o=>K.Disposable.create(()=>{this.unregisterSingle(i,n).catch(()=>{this.connection.console.info(`Un-registering capability with id ${i} failed.`)})}),o=>(this.connection.console.info(`Registering request handler for ${n} failed.`),Promise.reject(o)))}unregisterSingle(e,r){let n={unregisterations:[{id:e,method:r}]};return this.connection.sendRequest(K.UnregistrationRequest.type,n).catch(()=>{this.connection.console.info(`Un-registering request handler for ${e} failed.`)})}registerMany(e){let r=e.asRegistrationParams();return this.connection.sendRequest(K.RegistrationRequest.type,r).then(()=>new gc(this._connection,r.registrations.map(n=>({id:n.id,method:n.method}))),n=>(this.connection.console.info("Bulk registration failed."),Promise.reject(n)))}},Ry=class{constructor(){}attach(e){this._connection=e}get connection(){if(!this._connection)throw new Error("Remote is not attached to a connection yet.");return this._connection}initialize(e){}fillServerCapabilities(e){}applyEdit(e){function r(i){return i&&!!i.edit}let n=r(e)?e:{edit:e};return this.connection.sendRequest(K.ApplyWorkspaceEditRequest.type,n)}},zP=(0,bj.FileOperationsFeature)((0,gj.WorkspaceFoldersFeature)((0,mj.ConfigurationFeature)(Ry))),Xd=class{constructor(){this._trace=K.Trace.Off}attach(e){this._connection=e}get connection(){if(!this._connection)throw new Error("Remote is not attached to a connection yet.");return this._connection}initialize(e){}fillServerCapabilities(e){}set trace(e){this._trace=e}log(e,r){this._trace!==K.Trace.Off&&this.connection.sendNotification(K.LogTraceNotification.type,{message:e,verbose:this._trace===K.Trace.Verbose?r:void 0}).catch(()=>{})}},Jd=class{constructor(){}attach(e){this._connection=e}get connection(){if(!this._connection)throw new Error("Remote is not attached to a connection yet.");return this._connection}initialize(e){}fillServerCapabilities(e){}logEvent(e){this.connection.sendNotification(K.TelemetryEventNotification.type,e).catch(()=>{this.connection.console.log("Sending TelemetryEventNotification failed")})}},Qd=class{constructor(){}attach(e){this._connection=e}get connection(){if(!this._connection)throw new Error("Remote is not attached to a connection yet.");return this._connection}initialize(e){}fillServerCapabilities(e){}attachWorkDoneProgress(e){return(0,me.attachWorkDone)(this.connection,e)}attachPartialResultProgress(e,r){return(0,me.attachPartialResult)(this.connection,r)}};Ue._LanguagesImpl=Qd;var WP=(0,kj.FoldingRangeFeature)((0,Ej.MonikerFeature)((0,Pj.DiagnosticFeature)((0,Rj.InlayHintFeature)((0,Nj.InlineValueFeature)((0,Sj.TypeHierarchyFeature)((0,_j.LinkedEditingRangeFeature)((0,Tj.SemanticTokensFeature)((0,yj.CallHierarchyFeature)(Qd))))))))),Zd=class{constructor(){}attach(e){this._connection=e}get connection(){if(!this._connection)throw new Error("Remote is not attached to a connection yet.");return this._connection}initialize(e){}fillServerCapabilities(e){}attachWorkDoneProgress(e){return(0,me.attachWorkDone)(this.connection,e)}attachPartialResultProgress(e,r){return(0,me.attachPartialResult)(this.connection,r)}};Ue._NotebooksImpl=Zd;var GP=(0,wj.NotebookSyncFeature)(Zd);function KP(t,e){return function(r){return e(t(r))}}Ue.combineConsoleFeatures=KP;function YP(t,e){return function(r){return e(t(r))}}Ue.combineTelemetryFeatures=YP;function XP(t,e){return function(r){return e(t(r))}}Ue.combineTracerFeatures=XP;function JP(t,e){return function(r){return e(t(r))}}Ue.combineClientFeatures=JP;function QP(t,e){return function(r){return e(t(r))}}Ue.combineWindowFeatures=QP;function ZP(t,e){return function(r){return e(t(r))}}Ue.combineWorkspaceFeatures=ZP;function ew(t,e){return function(r){return e(t(r))}}Ue.combineLanguagesFeatures=ew;function tw(t,e){return function(r){return e(t(r))}}Ue.combineNotebooksFeatures=tw;function Dj(t,e){function r(i,s,o){return i&&s?o(i,s):i||s}return{__brand:"features",console:r(t.console,e.console,KP),tracer:r(t.tracer,e.tracer,XP),telemetry:r(t.telemetry,e.telemetry,YP),client:r(t.client,e.client,JP),window:r(t.window,e.window,QP),workspace:r(t.workspace,e.workspace,ZP),languages:r(t.languages,e.languages,ew),notebooks:r(t.notebooks,e.notebooks,tw)}}Ue.combineFeatures=Dj;function Cj(t,e,r){let n=r&&r.console?new(r.console(Gd)):new Gd,i=t(n);n.rawAttach(i);let s=r&&r.tracer?new(r.tracer(Xd)):new Xd,o=r&&r.telemetry?new(r.telemetry(Jd)):new Jd,a=r&&r.client?new(r.client(Yd)):new Yd,c=r&&r.window?new(r.window(UP)):new UP,l=r&&r.workspace?new(r.workspace(zP)):new zP,u=r&&r.languages?new(r.languages(WP)):new WP,d=r&&r.notebooks?new(r.notebooks(GP)):new GP,f=[n,s,o,a,c,l,u,d];function p(_){return _ instanceof Promise?_:sn.thenable(_)?new Promise((v,R)=>{_.then(D=>v(D),D=>R(D))}):Promise.resolve(_)}let g,h,T,S={listen:()=>i.listen(),sendRequest:(_,...v)=>i.sendRequest(sn.string(_)?_:_.method,...v),onRequest:(_,v)=>i.onRequest(_,v),sendNotification:(_,v)=>{let R=sn.string(_)?_:_.method;return i.sendNotification(R,v)},onNotification:(_,v)=>i.onNotification(_,v),onProgress:i.onProgress,sendProgress:i.sendProgress,onInitialize:_=>(h=_,{dispose:()=>{h=void 0}}),onInitialized:_=>i.onNotification(K.InitializedNotification.type,_),onShutdown:_=>(g=_,{dispose:()=>{g=void 0}}),onExit:_=>(T=_,{dispose:()=>{T=void 0}}),get console(){return n},get telemetry(){return o},get tracer(){return s},get client(){return a},get window(){return c},get workspace(){return l},get languages(){return u},get notebooks(){return d},onDidChangeConfiguration:_=>i.onNotification(K.DidChangeConfigurationNotification.type,_),onDidChangeWatchedFiles:_=>i.onNotification(K.DidChangeWatchedFilesNotification.type,_),__textDocumentSync:void 0,onDidOpenTextDocument:_=>i.onNotification(K.DidOpenTextDocumentNotification.type,_),onDidChangeTextDocument:_=>i.onNotification(K.DidChangeTextDocumentNotification.type,_),onDidCloseTextDocument:_=>i.onNotification(K.DidCloseTextDocumentNotification.type,_),onWillSaveTextDocument:_=>i.onNotification(K.WillSaveTextDocumentNotification.type,_),onWillSaveTextDocumentWaitUntil:_=>i.onRequest(K.WillSaveTextDocumentWaitUntilRequest.type,_),onDidSaveTextDocument:_=>i.onNotification(K.DidSaveTextDocumentNotification.type,_),sendDiagnostics:_=>i.sendNotification(K.PublishDiagnosticsNotification.type,_),onHover:_=>i.onRequest(K.HoverRequest.type,(v,R)=>_(v,R,(0,me.attachWorkDone)(i,v),void 0)),onCompletion:_=>i.onRequest(K.CompletionRequest.type,(v,R)=>_(v,R,(0,me.attachWorkDone)(i,v),(0,me.attachPartialResult)(i,v))),onCompletionResolve:_=>i.onRequest(K.CompletionResolveRequest.type,_),onSignatureHelp:_=>i.onRequest(K.SignatureHelpRequest.type,(v,R)=>_(v,R,(0,me.attachWorkDone)(i,v),void 0)),onDeclaration:_=>i.onRequest(K.DeclarationRequest.type,(v,R)=>_(v,R,(0,me.attachWorkDone)(i,v),(0,me.attachPartialResult)(i,v))),onDefinition:_=>i.onRequest(K.DefinitionRequest.type,(v,R)=>_(v,R,(0,me.attachWorkDone)(i,v),(0,me.attachPartialResult)(i,v))),onTypeDefinition:_=>i.onRequest(K.TypeDefinitionRequest.type,(v,R)=>_(v,R,(0,me.attachWorkDone)(i,v),(0,me.attachPartialResult)(i,v))),onImplementation:_=>i.onRequest(K.ImplementationRequest.type,(v,R)=>_(v,R,(0,me.attachWorkDone)(i,v),(0,me.attachPartialResult)(i,v))),onReferences:_=>i.onRequest(K.ReferencesRequest.type,(v,R)=>_(v,R,(0,me.attachWorkDone)(i,v),(0,me.attachPartialResult)(i,v))),onDocumentHighlight:_=>i.onRequest(K.DocumentHighlightRequest.type,(v,R)=>_(v,R,(0,me.attachWorkDone)(i,v),(0,me.attachPartialResult)(i,v))),onDocumentSymbol:_=>i.onRequest(K.DocumentSymbolRequest.type,(v,R)=>_(v,R,(0,me.attachWorkDone)(i,v),(0,me.attachPartialResult)(i,v))),onWorkspaceSymbol:_=>i.onRequest(K.WorkspaceSymbolRequest.type,(v,R)=>_(v,R,(0,me.attachWorkDone)(i,v),(0,me.attachPartialResult)(i,v))),onWorkspaceSymbolResolve:_=>i.onRequest(K.WorkspaceSymbolResolveRequest.type,_),onCodeAction:_=>i.onRequest(K.CodeActionRequest.type,(v,R)=>_(v,R,(0,me.attachWorkDone)(i,v),(0,me.attachPartialResult)(i,v))),onCodeActionResolve:_=>i.onRequest(K.CodeActionResolveRequest.type,(v,R)=>_(v,R)),onCodeLens:_=>i.onRequest(K.CodeLensRequest.type,(v,R)=>_(v,R,(0,me.attachWorkDone)(i,v),(0,me.attachPartialResult)(i,v))),onCodeLensResolve:_=>i.onRequest(K.CodeLensResolveRequest.type,(v,R)=>_(v,R)),onDocumentFormatting:_=>i.onRequest(K.DocumentFormattingRequest.type,(v,R)=>_(v,R,(0,me.attachWorkDone)(i,v),void 0)),onDocumentRangeFormatting:_=>i.onRequest(K.DocumentRangeFormattingRequest.type,(v,R)=>_(v,R,(0,me.attachWorkDone)(i,v),void 0)),onDocumentOnTypeFormatting:_=>i.onRequest(K.DocumentOnTypeFormattingRequest.type,(v,R)=>_(v,R)),onRenameRequest:_=>i.onRequest(K.RenameRequest.type,(v,R)=>_(v,R,(0,me.attachWorkDone)(i,v),void 0)),onPrepareRename:_=>i.onRequest(K.PrepareRenameRequest.type,(v,R)=>_(v,R)),onDocumentLinks:_=>i.onRequest(K.DocumentLinkRequest.type,(v,R)=>_(v,R,(0,me.attachWorkDone)(i,v),(0,me.attachPartialResult)(i,v))),onDocumentLinkResolve:_=>i.onRequest(K.DocumentLinkResolveRequest.type,(v,R)=>_(v,R)),onDocumentColor:_=>i.onRequest(K.DocumentColorRequest.type,(v,R)=>_(v,R,(0,me.attachWorkDone)(i,v),(0,me.attachPartialResult)(i,v))),onColorPresentation:_=>i.onRequest(K.ColorPresentationRequest.type,(v,R)=>_(v,R,(0,me.attachWorkDone)(i,v),(0,me.attachPartialResult)(i,v))),onFoldingRanges:_=>i.onRequest(K.FoldingRangeRequest.type,(v,R)=>_(v,R,(0,me.attachWorkDone)(i,v),(0,me.attachPartialResult)(i,v))),onSelectionRanges:_=>i.onRequest(K.SelectionRangeRequest.type,(v,R)=>_(v,R,(0,me.attachWorkDone)(i,v),(0,me.attachPartialResult)(i,v))),onExecuteCommand:_=>i.onRequest(K.ExecuteCommandRequest.type,(v,R)=>_(v,R,(0,me.attachWorkDone)(i,v),void 0)),dispose:()=>i.dispose()};for(let _ of f)_.attach(S);return i.onRequest(K.InitializeRequest.type,_=>{e.initialize(_),sn.string(_.trace)&&(s.trace=K.Trace.fromString(_.trace));for(let v of f)v.initialize(_.capabilities);if(h){let v=h(_,new K.CancellationTokenSource().token,(0,me.attachWorkDone)(i,_),void 0);return p(v).then(R=>{if(R instanceof K.ResponseError)return R;let D=R;D||(D={capabilities:{}});let B=D.capabilities;B||(B={},D.capabilities=B),B.textDocumentSync===void 0||B.textDocumentSync===null?B.textDocumentSync=sn.number(S.__textDocumentSync)?S.__textDocumentSync:K.TextDocumentSyncKind.None:!sn.number(B.textDocumentSync)&&!sn.number(B.textDocumentSync.change)&&(B.textDocumentSync.change=sn.number(S.__textDocumentSync)?S.__textDocumentSync:K.TextDocumentSyncKind.None);for(let M of f)M.fillServerCapabilities(B);return D})}else{let v={capabilities:{textDocumentSync:K.TextDocumentSyncKind.None}};for(let R of f)R.fillServerCapabilities(v.capabilities);return v}}),i.onRequest(K.ShutdownRequest.type,()=>{if(e.shutdownReceived=!0,g)return g(new K.CancellationTokenSource().token)}),i.onNotification(K.ExitNotification.type,()=>{try{T&&T()}finally{e.shutdownReceived?e.exit(0):e.exit(1)}}),i.onNotification(K.SetTraceNotification.type,_=>{s.trace=K.Trace.fromString(_.value)}),S}Ue.createConnection=Cj});var rw=k(Dr=>{"use strict";Object.defineProperty(Dr,"__esModule",{value:!0});Dr.resolveModulePath=Dr.FileSystem=Dr.resolveGlobalYarnPath=Dr.resolveGlobalNodePath=Dr.resolve=Dr.uriToFilePath=void 0;var Aj=require("url"),An=require("path"),wy=require("fs"),Ay=require("child_process");function Ij(t){let e=Aj.parse(t);if(e.protocol!=="file:"||!e.path)return;let r=e.path.split("/");for(var n=0,i=r.length;n<i;n++)r[n]=decodeURIComponent(r[n]);if(process.platform==="win32"&&r.length>1){let s=r[0],o=r[1];s.length===0&&o.length>1&&o[1]===":"&&r.shift()}return An.normalize(r.join("/"))}Dr.uriToFilePath=Ij;function Ey(){return process.platform==="win32"}function ef(t,e,r,n){let i="NODE_PATH",s=["var p = process;","p.on('message',function(m){","if(m.c==='e'){","p.exit(0);","}","else if(m.c==='rs'){","try{","var r=require.resolve(m.a);","p.send({c:'r',s:true,r:r});","}","catch(err){","p.send({c:'r',s:false});","}","}","});"].join("");return new Promise((o,a)=>{let c=process.env,l=Object.create(null);Object.keys(c).forEach(u=>l[u]=c[u]),e&&wy.existsSync(e)&&(l[i]?l[i]=e+An.delimiter+l[i]:l[i]=e,n&&n(`NODE_PATH value is: ${l[i]}`)),l.ELECTRON_RUN_AS_NODE="1";try{let u=(0,Ay.fork)("",[],{cwd:r,env:l,execArgv:["-e",s]});if(u.pid===void 0){a(new Error(`Starting process to resolve node module ${t} failed`));return}u.on("error",f=>{a(f)}),u.on("message",f=>{f.c==="r"&&(u.send({c:"e"}),f.s?o(f.r):a(new Error(`Failed to resolve module: ${t}`)))});let d={c:"rs",a:t};u.send(d)}catch(u){a(u)}})}Dr.resolve=ef;function Dy(t){let e="npm",r=Object.create(null);Object.keys(process.env).forEach(s=>r[s]=process.env[s]),r.NO_UPDATE_NOTIFIER="true";let n={encoding:"utf8",env:r};Ey()&&(e="npm.cmd",n.shell=!0);let i=()=>{};try{process.on("SIGPIPE",i);let s=(0,Ay.spawnSync)(e,["config","get","prefix"],n).stdout;if(!s){t&&t("'npm config get prefix' didn't return a value.");return}let o=s.trim();return t&&t(`'npm config get prefix' value is: ${o}`),o.length>0?Ey()?An.join(o,"node_modules"):An.join(o,"lib","node_modules"):void 0}catch{return}finally{process.removeListener("SIGPIPE",i)}}Dr.resolveGlobalNodePath=Dy;function Oj(t){let e="yarn",r={encoding:"utf8"};Ey()&&(e="yarn.cmd",r.shell=!0);let n=()=>{};try{process.on("SIGPIPE",n);let i=(0,Ay.spawnSync)(e,["global","dir","--json"],r),s=i.stdout;if(!s){t&&(t("'yarn global dir' didn't return a value."),i.stderr&&t(i.stderr));return}let o=s.trim().split(/\r?\n/);for(let a of o)try{let c=JSON.parse(a);if(c.type==="log")return An.join(c.data,"node_modules")}catch{}return}catch{return}finally{process.removeListener("SIGPIPE",n)}}Dr.resolveGlobalYarnPath=Oj;var Cy;(function(t){let e;function r(){return e!==void 0||(process.platform==="win32"?e=!1:e=!wy.existsSync(__filename.toUpperCase())||!wy.existsSync(__filename.toLowerCase())),e}t.isCaseSensitive=r;function n(i,s){return r()?An.normalize(s).indexOf(An.normalize(i))===0:An.normalize(s).toLowerCase().indexOf(An.normalize(i).toLowerCase())===0}t.isParent=n})(Cy||(Dr.FileSystem=Cy={}));function Mj(t,e,r,n){return r?(An.isAbsolute(r)||(r=An.join(t,r)),ef(e,r,r,n).then(i=>Cy.isParent(r,i)?i:Promise.reject(new Error(`Failed to load ${e} from node path location.`))).then(void 0,i=>ef(e,Dy(n),t,n))):ef(e,Dy(n),t,n)}Dr.resolveModulePath=Mj});var Iy=k((kQ,nw)=>{"use strict";nw.exports=Et()});var iw=k(tf=>{"use strict";Object.defineProperty(tf,"__esModule",{value:!0});tf.InlineCompletionFeature=void 0;var xj=Et(),Lj=t=>class extends t{get inlineCompletion(){return{on:e=>this.connection.onRequest(xj.InlineCompletionRequest.type,(r,n)=>e(r,n,this.attachWorkDoneProgress(r)))}}};tf.InlineCompletionFeature=Lj});var aw=k(or=>{"use strict";var qj=or&&or.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(e,r);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,i)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),ow=or&&or.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&qj(e,t,r)};Object.defineProperty(or,"__esModule",{value:!0});or.ProposedFeatures=or.NotebookDocuments=or.TextDocuments=or.SemanticTokensBuilder=void 0;var $j=hy();Object.defineProperty(or,"SemanticTokensBuilder",{enumerable:!0,get:function(){return $j.SemanticTokensBuilder}});var Bj=iw();ow(Et(),or);var Fj=Ty();Object.defineProperty(or,"TextDocuments",{enumerable:!0,get:function(){return Fj.TextDocuments}});var jj=by();Object.defineProperty(or,"NotebookDocuments",{enumerable:!0,get:function(){return jj.NotebookDocuments}});ow(Py(),or);var sw;(function(t){t.all={__brand:"features",languages:Bj.InlineCompletionFeature}})(sw||(or.ProposedFeatures=sw={}))});var U=k(on=>{"use strict";var Uj=on&&on.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(e,r);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,i)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),dw=on&&on.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&Uj(e,t,r)};Object.defineProperty(on,"__esModule",{value:!0});on.createConnection=on.Files=void 0;var cw=require("node:util"),Oy=ju(),Hj=Py(),yc=rw(),zs=Iy();dw(Iy(),on);dw(aw(),on);var lw;(function(t){t.uriToFilePath=yc.uriToFilePath,t.resolveGlobalNodePath=yc.resolveGlobalNodePath,t.resolveGlobalYarnPath=yc.resolveGlobalYarnPath,t.resolve=yc.resolve,t.resolveModulePath=yc.resolveModulePath})(lw||(on.Files=lw={}));var uw;function rf(){if(uw!==void 0)try{uw.end()}catch{}}var zo=!1,fw;function Vj(){let t="--clientProcessId";function e(r){try{let n=parseInt(r);isNaN(n)||(fw=setInterval(()=>{try{process.kill(n,0)}catch{rf(),process.exit(zo?0:1)}},3e3))}catch{}}for(let r=2;r<process.argv.length;r++){let n=process.argv[r];if(n===t&&r+1<process.argv.length){e(process.argv[r+1]);return}else{let i=n.split("=");i[0]===t&&e(i[1])}}}Vj();var zj={initialize:t=>{let e=t.processId;Oy.number(e)&&fw===void 0&&setInterval(()=>{try{process.kill(e,0)}catch{process.exit(zo?0:1)}},3e3)},get shutdownReceived(){return zo},set shutdownReceived(t){zo=t},exit:t=>{rf(),process.exit(t)}};function Wj(t,e,r,n){let i,s,o,a;return t!==void 0&&t.__brand==="features"&&(i=t,t=e,e=r,r=n),zs.ConnectionStrategy.is(t)||zs.ConnectionOptions.is(t)?a=t:(s=t,o=e,a=r),Gj(s,o,a,i)}on.createConnection=Wj;function Gj(t,e,r,n){let i=!1;if(!t&&!e&&process.argv.length>2){let c,l,u=process.argv.slice(2);for(let d=0;d<u.length;d++){let f=u[d];if(f==="--node-ipc"){t=new zs.IPCMessageReader(process),e=new zs.IPCMessageWriter(process);break}else if(f==="--stdio"){i=!0,t=process.stdin,e=process.stdout;break}else if(f==="--socket"){c=parseInt(u[d+1]);break}else if(f==="--pipe"){l=u[d+1];break}else{var s=f.split("=");if(s[0]==="--socket"){c=parseInt(s[1]);break}else if(s[0]==="--pipe"){l=s[1];break}}}if(c){let d=(0,zs.createServerSocketTransport)(c);t=d[0],e=d[1]}else if(l){let d=(0,zs.createServerPipeTransport)(l);t=d[0],e=d[1]}}var o="Use arguments of createConnection or set command line parameters: '--node-ipc', '--stdio' or '--socket={number}'";if(!t)throw new Error("Connection input stream is not set. "+o);if(!e)throw new Error("Connection output stream is not set. "+o);if(Oy.func(t.read)&&Oy.func(t.on)){let c=t;c.on("end",()=>{rf(),process.exit(zo?0:1)}),c.on("close",()=>{rf(),process.exit(zo?0:1)})}let a=c=>{let l=(0,zs.createProtocolConnection)(t,e,c,r);return i&&Kj(c),l};return(0,Hj.createConnection)(a,zj,n)}function Kj(t){function e(n){return n.map(i=>typeof i=="string"?i:(0,cw.inspect)(i)).join(" ")}let r=new Map;console.assert=function(i,...s){if(!i)if(s.length===0)t.error("Assertion failed");else{let[o,...a]=s;t.error(`Assertion failed: ${o} ${e(a)}`)}},console.count=function(i="default"){let s=String(i),o=r.get(s)??0;o+=1,r.set(s,o),t.log(`${s}: ${s}`)},console.countReset=function(i){i===void 0?r.clear():r.delete(String(i))},console.debug=function(...i){t.log(e(i))},console.dir=function(i,s){t.log((0,cw.inspect)(i,s))},console.log=function(...i){t.log(e(i))},console.error=function(...i){t.error(e(i))},console.trace=function(...i){let s=new Error().stack.replace(/(.+\n){2}/,""),o="Trace";i.length!==0&&(o+=`: ${e(i)}`),t.log(`${o}
37
+ ${s}`)},console.warn=function(...i){t.warn(e(i))}}});var hw=k((DQ,pw)=>{"use strict";pw.exports=U()});var rO=k((YSe,tO)=>{"use strict";tO.exports=ZI;function ZI(t,e,r){t instanceof RegExp&&(t=QI(t,r)),e instanceof RegExp&&(e=QI(e,r));var n=eO(t,e,r);return n&&{start:n[0],end:n[1],pre:r.slice(0,n[0]),body:r.slice(n[0]+t.length,n[1]),post:r.slice(n[1]+e.length)}}function QI(t,e){var r=e.match(t);return r?r[0]:null}ZI.range=eO;function eO(t,e,r){var n,i,s,o,a,c=r.indexOf(t),l=r.indexOf(e,c+1),u=c;if(c>=0&&l>0){if(t===e)return[c,l];for(n=[],s=r.length;u>=0&&!a;)u==c?(n.push(u),c=r.indexOf(t,u+1)):n.length==1?a=[n.pop(),l]:(i=n.pop(),i<s&&(s=i,o=l),l=r.indexOf(e,u+1)),u=c<l&&c>=0?c:l;n.length&&(a=[s,o])}return a}});var uO=k((XSe,lO)=>{var nO=rO();lO.exports=fH;var iO="\0SLASH"+Math.random()+"\0",sO="\0OPEN"+Math.random()+"\0",_T="\0CLOSE"+Math.random()+"\0",oO="\0COMMA"+Math.random()+"\0",aO="\0PERIOD"+Math.random()+"\0";function bT(t){return parseInt(t,10)==t?parseInt(t,10):t.charCodeAt(0)}function uH(t){return t.split("\\\\").join(iO).split("\\{").join(sO).split("\\}").join(_T).split("\\,").join(oO).split("\\.").join(aO)}function dH(t){return t.split(iO).join("\\").split(sO).join("{").split(_T).join("}").split(oO).join(",").split(aO).join(".")}function cO(t){if(!t)return[""];var e=[],r=nO("{","}",t);if(!r)return t.split(",");var n=r.pre,i=r.body,s=r.post,o=n.split(",");o[o.length-1]+="{"+i+"}";var a=cO(s);return s.length&&(o[o.length-1]+=a.shift(),o.push.apply(o,a)),e.push.apply(e,o),e}function fH(t){return t?(t.substr(0,2)==="{}"&&(t="\\{\\}"+t.substr(2)),Gc(uH(t),!0).map(dH)):[]}function pH(t){return"{"+t+"}"}function hH(t){return/^-?0\d/.test(t)}function mH(t,e){return t<=e}function gH(t,e){return t>=e}function Gc(t,e){var r=[],n=nO("{","}",t);if(!n)return[t];var i=n.pre,s=n.post.length?Gc(n.post,!1):[""];if(/\$$/.test(n.pre))for(var o=0;o<s.length;o++){var a=i+"{"+n.body+"}"+s[o];r.push(a)}else{var c=/^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(n.body),l=/^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(n.body),u=c||l,d=n.body.indexOf(",")>=0;if(!u&&!d)return n.post.match(/,(?!,).*\}/)?(t=n.pre+"{"+n.body+_T+n.post,Gc(t)):[t];var f;if(u)f=n.body.split(/\.\./);else if(f=cO(n.body),f.length===1&&(f=Gc(f[0],!1).map(pH),f.length===1))return s.map(function(Xe){return n.pre+f[0]+Xe});var p;if(u){var g=bT(f[0]),h=bT(f[1]),T=Math.max(f[0].length,f[1].length),S=f.length==3?Math.abs(bT(f[2])):1,_=mH,v=h<g;v&&(S*=-1,_=gH);var R=f.some(hH);p=[];for(var D=g;_(D,h);D+=S){var B;if(l)B=String.fromCharCode(D),B==="\\"&&(B="");else if(B=String(D),R){var M=T-B.length;if(M>0){var F=new Array(M+1).join("0");D<0?B="-"+F+B.slice(1):B=F+B}}p.push(B)}}else{p=[];for(var ge=0;ge<f.length;ge++)p.push.apply(p,Gc(f[ge],!1))}for(var ge=0;ge<p.length;ge++)for(var o=0;o<s.length;o++){var a=i+p[ge]+s[o];(!e||u||a)&&r.push(a)}}return r}});var Le=k(er=>{"use strict";var BT=Symbol.for("yaml.alias"),JO=Symbol.for("yaml.document"),Yp=Symbol.for("yaml.map"),QO=Symbol.for("yaml.pair"),FT=Symbol.for("yaml.scalar"),Xp=Symbol.for("yaml.seq"),Ii=Symbol.for("yaml.node.type"),kV=t=>!!t&&typeof t=="object"&&t[Ii]===BT,RV=t=>!!t&&typeof t=="object"&&t[Ii]===JO,PV=t=>!!t&&typeof t=="object"&&t[Ii]===Yp,wV=t=>!!t&&typeof t=="object"&&t[Ii]===QO,ZO=t=>!!t&&typeof t=="object"&&t[Ii]===FT,EV=t=>!!t&&typeof t=="object"&&t[Ii]===Xp;function eM(t){if(t&&typeof t=="object")switch(t[Ii]){case Yp:case Xp:return!0}return!1}function DV(t){if(t&&typeof t=="object")switch(t[Ii]){case BT:case Yp:case FT:case Xp:return!0}return!1}var CV=t=>(ZO(t)||eM(t))&&!!t.anchor;er.ALIAS=BT;er.DOC=JO;er.MAP=Yp;er.NODE_TYPE=Ii;er.PAIR=QO;er.SCALAR=FT;er.SEQ=Xp;er.hasAnchor=CV;er.isAlias=kV;er.isCollection=eM;er.isDocument=RV;er.isMap=PV;er.isNode=DV;er.isPair=wV;er.isScalar=ZO;er.isSeq=EV});var ll=k(jT=>{"use strict";var Ht=Le(),$r=Symbol("break visit"),tM=Symbol("skip children"),ui=Symbol("remove node");function Jp(t,e){let r=rM(e);Ht.isDocument(t)?Na(null,t.contents,r,Object.freeze([t]))===ui&&(t.contents=null):Na(null,t,r,Object.freeze([]))}Jp.BREAK=$r;Jp.SKIP=tM;Jp.REMOVE=ui;function Na(t,e,r,n){let i=nM(t,e,r,n);if(Ht.isNode(i)||Ht.isPair(i))return iM(t,n,i),Na(t,i,r,n);if(typeof i!="symbol"){if(Ht.isCollection(e)){n=Object.freeze(n.concat(e));for(let s=0;s<e.items.length;++s){let o=Na(s,e.items[s],r,n);if(typeof o=="number")s=o-1;else{if(o===$r)return $r;o===ui&&(e.items.splice(s,1),s-=1)}}}else if(Ht.isPair(e)){n=Object.freeze(n.concat(e));let s=Na("key",e.key,r,n);if(s===$r)return $r;s===ui&&(e.key=null);let o=Na("value",e.value,r,n);if(o===$r)return $r;o===ui&&(e.value=null)}}return i}async function Qp(t,e){let r=rM(e);Ht.isDocument(t)?await ka(null,t.contents,r,Object.freeze([t]))===ui&&(t.contents=null):await ka(null,t,r,Object.freeze([]))}Qp.BREAK=$r;Qp.SKIP=tM;Qp.REMOVE=ui;async function ka(t,e,r,n){let i=await nM(t,e,r,n);if(Ht.isNode(i)||Ht.isPair(i))return iM(t,n,i),ka(t,i,r,n);if(typeof i!="symbol"){if(Ht.isCollection(e)){n=Object.freeze(n.concat(e));for(let s=0;s<e.items.length;++s){let o=await ka(s,e.items[s],r,n);if(typeof o=="number")s=o-1;else{if(o===$r)return $r;o===ui&&(e.items.splice(s,1),s-=1)}}}else if(Ht.isPair(e)){n=Object.freeze(n.concat(e));let s=await ka("key",e.key,r,n);if(s===$r)return $r;s===ui&&(e.key=null);let o=await ka("value",e.value,r,n);if(o===$r)return $r;o===ui&&(e.value=null)}}return i}function rM(t){return typeof t=="object"&&(t.Collection||t.Node||t.Value)?Object.assign({Alias:t.Node,Map:t.Node,Scalar:t.Node,Seq:t.Node},t.Value&&{Map:t.Value,Scalar:t.Value,Seq:t.Value},t.Collection&&{Map:t.Collection,Seq:t.Collection},t):t}function nM(t,e,r,n){if(typeof r=="function")return r(t,e,n);if(Ht.isMap(e))return r.Map?.(t,e,n);if(Ht.isSeq(e))return r.Seq?.(t,e,n);if(Ht.isPair(e))return r.Pair?.(t,e,n);if(Ht.isScalar(e))return r.Scalar?.(t,e,n);if(Ht.isAlias(e))return r.Alias?.(t,e,n)}function iM(t,e,r){let n=e[e.length-1];if(Ht.isCollection(n))n.items[t]=r;else if(Ht.isPair(n))t==="key"?n.key=r:n.value=r;else if(Ht.isDocument(n))n.contents=r;else{let i=Ht.isAlias(n)?"alias":"scalar";throw new Error(`Cannot replace node with ${i} parent`)}}jT.visit=Jp;jT.visitAsync=Qp});var UT=k(oM=>{"use strict";var sM=Le(),AV=ll(),IV={"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"},OV=t=>t.replace(/[!,[\]{}]/g,e=>IV[e]),ul=class t{constructor(e,r){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},t.defaultYaml,e),this.tags=Object.assign({},t.defaultTags,r)}clone(){let e=new t(this.yaml,this.tags);return e.docStart=this.docStart,e}atDocument(){let e=new t(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=!0;break;case"1.2":this.atNextDocument=!1,this.yaml={explicit:t.defaultYaml.explicit,version:"1.2"},this.tags=Object.assign({},t.defaultTags);break}return e}add(e,r){this.atNextDocument&&(this.yaml={explicit:t.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},t.defaultTags),this.atNextDocument=!1);let n=e.trim().split(/[ \t]+/),i=n.shift();switch(i){case"%TAG":{if(n.length!==2&&(r(0,"%TAG directive should contain exactly two parts"),n.length<2))return!1;let[s,o]=n;return this.tags[s]=o,!0}case"%YAML":{if(this.yaml.explicit=!0,n.length!==1)return r(0,"%YAML directive should contain exactly one part"),!1;let[s]=n;if(s==="1.1"||s==="1.2")return this.yaml.version=s,!0;{let o=/^\d+\.\d+$/.test(s);return r(6,`Unsupported YAML version ${s}`,o),!1}}default:return r(0,`Unknown directive ${i}`,!0),!1}}tagName(e,r){if(e==="!")return"!";if(e[0]!=="!")return r(`Not a valid tag: ${e}`),null;if(e[1]==="<"){let o=e.slice(2,-1);return o==="!"||o==="!!"?(r(`Verbatim tags aren't resolved, so ${e} is invalid.`),null):(e[e.length-1]!==">"&&r("Verbatim tags must end with a >"),o)}let[,n,i]=e.match(/^(.*!)([^!]*)$/s);i||r(`The ${e} tag has no suffix`);let s=this.tags[n];if(s)try{return s+decodeURIComponent(i)}catch(o){return r(String(o)),null}return n==="!"?e:(r(`Could not resolve tag: ${e}`),null)}tagString(e){for(let[r,n]of Object.entries(this.tags))if(e.startsWith(n))return r+OV(e.substring(n.length));return e[0]==="!"?e:`!<${e}>`}toString(e){let r=this.yaml.explicit?[`%YAML ${this.yaml.version||"1.2"}`]:[],n=Object.entries(this.tags),i;if(e&&n.length>0&&sM.isNode(e.contents)){let s={};AV.visit(e.contents,(o,a)=>{sM.isNode(a)&&a.tag&&(s[a.tag]=!0)}),i=Object.keys(s)}else i=[];for(let[s,o]of n)s==="!!"&&o==="tag:yaml.org,2002:"||(!e||i.some(a=>a.startsWith(o)))&&r.push(`%TAG ${s} ${o}`);return r.join(`
38
38
  `)}};ul.defaultYaml={explicit:!1,version:"1.2"};ul.defaultTags={"!!":"tag:yaml.org,2002:"};oM.Directives=ul});var Zp=k(dl=>{"use strict";var aM=Le(),MV=ll();function xV(t){if(/[\x00-\x19\s,[\]{}]/.test(t)){let r=`Anchor must not contain whitespace or control characters: ${JSON.stringify(t)}`;throw new Error(r)}return!0}function cM(t){let e=new Set;return MV.visit(t,{Value(r,n){n.anchor&&e.add(n.anchor)}}),e}function lM(t,e){for(let r=1;;++r){let n=`${t}${r}`;if(!e.has(n))return n}}function LV(t,e){let r=[],n=new Map,i=null;return{onAnchor:s=>{r.push(s),i||(i=cM(t));let o=lM(e,i);return i.add(o),o},setAnchors:()=>{for(let s of r){let o=n.get(s);if(typeof o=="object"&&o.anchor&&(aM.isScalar(o.node)||aM.isCollection(o.node)))o.node.anchor=o.anchor;else{let a=new Error("Failed to resolve repeated object (this should not happen)");throw a.source=s,a}}},sourceObjects:n}}dl.anchorIsValid=xV;dl.anchorNames=cM;dl.createNodeAnchors=LV;dl.findNewAnchor=lM});var HT=k(uM=>{"use strict";function fl(t,e,r,n){if(n&&typeof n=="object")if(Array.isArray(n))for(let i=0,s=n.length;i<s;++i){let o=n[i],a=fl(t,n,String(i),o);a===void 0?delete n[i]:a!==o&&(n[i]=a)}else if(n instanceof Map)for(let i of Array.from(n.keys())){let s=n.get(i),o=fl(t,n,i,s);o===void 0?n.delete(i):o!==s&&n.set(i,o)}else if(n instanceof Set)for(let i of Array.from(n)){let s=fl(t,n,i,i);s===void 0?n.delete(i):s!==i&&(n.delete(i),n.add(s))}else for(let[i,s]of Object.entries(n)){let o=fl(t,n,i,s);o===void 0?delete n[i]:o!==s&&(n[i]=o)}return t.call(e,r,n)}uM.applyReviver=fl});var ms=k(fM=>{"use strict";var qV=Le();function dM(t,e,r){if(Array.isArray(t))return t.map((n,i)=>dM(n,String(i),r));if(t&&typeof t.toJSON=="function"){if(!r||!qV.hasAnchor(t))return t.toJSON(e,r);let n={aliasCount:0,count:1,res:void 0};r.anchors.set(t,n),r.onCreate=s=>{n.res=s,delete r.onCreate};let i=t.toJSON(e,r);return r.onCreate&&r.onCreate(i),i}return typeof t=="bigint"&&!r?.keep?Number(t):t}fM.toJS=dM});var eh=k(hM=>{"use strict";var $V=HT(),pM=Le(),BV=ms(),VT=class{constructor(e){Object.defineProperty(this,pM.NODE_TYPE,{value:e})}clone(){let e=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return this.range&&(e.range=this.range.slice()),e}toJS(e,{mapAsMap:r,maxAliasCount:n,onAnchor:i,reviver:s}={}){if(!pM.isDocument(e))throw new TypeError("A document argument is required");let o={anchors:new Map,doc:e,keep:!0,mapAsMap:r===!0,mapKeyWarned:!1,maxAliasCount:typeof n=="number"?n:100},a=BV.toJS(this,"",o);if(typeof i=="function")for(let{count:c,res:l}of o.anchors.values())i(l,c);return typeof s=="function"?$V.applyReviver(s,{"":a},"",a):a}};hM.NodeBase=VT});var pl=k(gM=>{"use strict";var FV=Zp(),mM=ll(),th=Le(),jV=eh(),UV=ms(),zT=class extends jV.NodeBase{constructor(e){super(th.ALIAS),this.source=e,Object.defineProperty(this,"tag",{set(){throw new Error("Alias nodes cannot have tags")}})}resolve(e){let r;return mM.visit(e,{Node:(n,i)=>{if(i===this)return mM.visit.BREAK;i.anchor===this.source&&(r=i)}}),r}toJSON(e,r){if(!r)return{source:this.source};let{anchors:n,doc:i,maxAliasCount:s}=r,o=this.resolve(i);if(!o){let c=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new ReferenceError(c)}let a=n.get(o);if(a||(UV.toJS(o,null,r),a=n.get(o)),!a||a.res===void 0){let c="This should not happen: Alias anchor was not resolved?";throw new ReferenceError(c)}if(s>=0&&(a.count+=1,a.aliasCount===0&&(a.aliasCount=rh(i,o,n)),a.count*a.aliasCount>s)){let c="Excessive alias count indicates a resource exhaustion attack";throw new ReferenceError(c)}return a.res}toString(e,r,n){let i=`*${this.source}`;if(e){if(FV.anchorIsValid(this.source),e.options.verifyAliasOrder&&!e.anchors.has(this.source)){let s=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new Error(s)}if(e.implicitKey)return`${i} `}return i}};function rh(t,e,r){if(th.isAlias(e)){let n=e.resolve(t),i=r&&n&&r.get(n);return i?i.count*i.aliasCount:0}else if(th.isCollection(e)){let n=0;for(let i of e.items){let s=rh(t,i,r);s>n&&(n=s)}return n}else if(th.isPair(e)){let n=rh(t,e.key,r),i=rh(t,e.value,r);return Math.max(n,i)}return 1}gM.Alias=zT});var $t=k(WT=>{"use strict";var HV=Le(),VV=eh(),zV=ms(),WV=t=>!t||typeof t!="function"&&typeof t!="object",gs=class extends VV.NodeBase{constructor(e){super(HV.SCALAR),this.value=e}toJSON(e,r){return r?.keep?this.value:zV.toJS(this.value,e,r)}toString(){return String(this.value)}};gs.BLOCK_FOLDED="BLOCK_FOLDED";gs.BLOCK_LITERAL="BLOCK_LITERAL";gs.PLAIN="PLAIN";gs.QUOTE_DOUBLE="QUOTE_DOUBLE";gs.QUOTE_SINGLE="QUOTE_SINGLE";WT.Scalar=gs;WT.isScalarValue=WV});var hl=k(TM=>{"use strict";var GV=pl(),Qs=Le(),yM=$t(),KV="tag:yaml.org,2002:";function YV(t,e,r){if(e){let n=r.filter(s=>s.tag===e),i=n.find(s=>!s.format)??n[0];if(!i)throw new Error(`Tag ${e} not found`);return i}return r.find(n=>n.identify?.(t)&&!n.format)}function XV(t,e,r){if(Qs.isDocument(t)&&(t=t.contents),Qs.isNode(t))return t;if(Qs.isPair(t)){let d=r.schema[Qs.MAP].createNode?.(r.schema,null,r);return d.items.push(t),d}(t instanceof String||t instanceof Number||t instanceof Boolean||typeof BigInt<"u"&&t instanceof BigInt)&&(t=t.valueOf());let{aliasDuplicateObjects:n,onAnchor:i,onTagObj:s,schema:o,sourceObjects:a}=r,c;if(n&&t&&typeof t=="object"){if(c=a.get(t),c)return c.anchor||(c.anchor=i(t)),new GV.Alias(c.anchor);c={anchor:null,node:null},a.set(t,c)}e?.startsWith("!!")&&(e=KV+e.slice(2));let l=YV(t,e,o.tags);if(!l){if(t&&typeof t.toJSON=="function"&&(t=t.toJSON()),!t||typeof t!="object"){let d=new yM.Scalar(t);return c&&(c.node=d),d}l=t instanceof Map?o[Qs.MAP]:Symbol.iterator in Object(t)?o[Qs.SEQ]:o[Qs.MAP]}s&&(s(l),delete r.onTagObj);let u=l?.createNode?l.createNode(r.schema,t,r):typeof l?.nodeClass?.from=="function"?l.nodeClass.from(r.schema,t,r):new yM.Scalar(t);return e?u.tag=e:l.default||(u.tag=l.tag),c&&(c.node=u),u}TM.createNode=XV});var ih=k(nh=>{"use strict";var JV=hl(),di=Le(),QV=eh();function GT(t,e,r){let n=r;for(let i=e.length-1;i>=0;--i){let s=e[i];if(typeof s=="number"&&Number.isInteger(s)&&s>=0){let o=[];o[s]=n,n=o}else n=new Map([[s,n]])}return JV.createNode(n,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw new Error("This should not happen, please report a bug.")},schema:t,sourceObjects:new Map})}var vM=t=>t==null||typeof t=="object"&&!!t[Symbol.iterator]().next().done,KT=class extends QV.NodeBase{constructor(e,r){super(e),Object.defineProperty(this,"schema",{value:r,configurable:!0,enumerable:!1,writable:!0})}clone(e){let r=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return e&&(r.schema=e),r.items=r.items.map(n=>di.isNode(n)||di.isPair(n)?n.clone(e):n),this.range&&(r.range=this.range.slice()),r}addIn(e,r){if(vM(e))this.add(r);else{let[n,...i]=e,s=this.get(n,!0);if(di.isCollection(s))s.addIn(i,r);else if(s===void 0&&this.schema)this.set(n,GT(this.schema,i,r));else throw new Error(`Expected YAML collection at ${n}. Remaining path: ${i}`)}}deleteIn(e){let[r,...n]=e;if(n.length===0)return this.delete(r);let i=this.get(r,!0);if(di.isCollection(i))return i.deleteIn(n);throw new Error(`Expected YAML collection at ${r}. Remaining path: ${n}`)}getIn(e,r){let[n,...i]=e,s=this.get(n,!0);return i.length===0?!r&&di.isScalar(s)?s.value:s:di.isCollection(s)?s.getIn(i,r):void 0}hasAllNullValues(e){return this.items.every(r=>{if(!di.isPair(r))return!1;let n=r.value;return n==null||e&&di.isScalar(n)&&n.value==null&&!n.commentBefore&&!n.comment&&!n.tag})}hasIn(e){let[r,...n]=e;if(n.length===0)return this.has(r);let i=this.get(r,!0);return di.isCollection(i)?i.hasIn(n):!1}setIn(e,r){let[n,...i]=e;if(i.length===0)this.set(n,r);else{let s=this.get(n,!0);if(di.isCollection(s))s.setIn(i,r);else if(s===void 0&&this.schema)this.set(n,GT(this.schema,i,r));else throw new Error(`Expected YAML collection at ${n}. Remaining path: ${i}`)}}};nh.Collection=KT;nh.collectionFromPath=GT;nh.isEmptyPath=vM});var ml=k(sh=>{"use strict";var ZV=t=>t.replace(/^(?!$)(?: $)?/gm,"#");function YT(t,e){return/^\n+$/.test(t)?t.substring(1):e?t.replace(/^(?! *$)/gm,e):t}var ez=(t,e,r)=>t.endsWith(`
39
39
  `)?YT(r,e):r.includes(`
40
40
  `)?`
@@ -101,7 +101,7 @@ ${l}
101
101
  `+v.comment:_.comment=v.comment);let R=new qx.Pair(_);r.options.keepSourceTokens&&(R.srcToken=u),a.items.push(R)}}return l&&l<c&&i(l,"IMPOSSIBLE","Map comment with trailing content"),a.range=[n.offset,c,l??c],a}jx.resolveBlockMap=fW});var Vx=k(Hx=>{"use strict";var pW=Ss(),hW=Ol(),mW=zv();function gW({composeNode:t,composeEmptyNode:e},r,n,i,s){let o=s?.nodeClass??pW.YAMLSeq,a=new o(r.schema);r.atRoot&&(r.atRoot=!1),r.atKey&&(r.atKey=!1);let c=n.offset,l=null;for(let{start:u,value:d}of n.items){let f=hW.resolveProps(u,{indicator:"seq-item-ind",next:d,offset:c,onError:i,parentIndent:n.indent,startOnNewline:!0});if(!f.found)if(f.anchor||f.tag||d)d&&d.type==="block-seq"?i(f.end,"BAD_INDENT","All sequence items must start at the same column"):i(c,"MISSING_CHAR","Sequence item without - indicator");else{l=f.end,f.comment&&(a.comment=f.comment);continue}let p=d?t(r,d,f,i):e(r,f.end,u,null,f,i);r.schema.compat&&mW.flowIndentCheck(n.indent,d,i),c=p.range[2],a.items.push(p)}return a.range=[n.offset,c,l??c],a}Hx.resolveBlockSeq=gW});var Aa=k(zx=>{"use strict";function yW(t,e,r,n){let i="";if(t){let s=!1,o="";for(let a of t){let{source:c,type:l}=a;switch(l){case"space":s=!0;break;case"comment":{r&&!s&&n(a,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let u=c.substring(1)||" ";i?i+=o+u:i=u,o="";break}case"newline":i&&(o+=c),s=!0;break;default:n(a,"UNEXPECTED_TOKEN",`Unexpected ${l} at node end`)}e+=c.length}}return{comment:i,offset:e}}zx.resolveEnd=yW});var Yx=k(Kx=>{"use strict";var TW=Le(),vW=vs(),Wx=_s(),bW=Ss(),_W=Aa(),Gx=Ol(),SW=$h(),NW=Wv(),Gv="Block collections are not allowed within flow collections",Kv=t=>t&&(t.type==="block-map"||t.type==="block-seq");function kW({composeNode:t,composeEmptyNode:e},r,n,i,s){let o=n.start.source==="{",a=o?"flow map":"flow sequence",c=s?.nodeClass??(o?Wx.YAMLMap:bW.YAMLSeq),l=new c(r.schema);l.flow=!0;let u=r.atRoot;u&&(r.atRoot=!1),r.atKey&&(r.atKey=!1);let d=n.offset+n.start.source.length;for(let T=0;T<n.items.length;++T){let S=n.items[T],{start:_,key:v,sep:R,value:D}=S,B=Gx.resolveProps(_,{flow:a,indicator:"explicit-key-ind",next:v??R?.[0],offset:d,onError:i,parentIndent:n.indent,startOnNewline:!1});if(!B.found){if(!B.anchor&&!B.tag&&!R&&!D){T===0&&B.comma?i(B.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${a}`):T<n.items.length-1&&i(B.start,"UNEXPECTED_TOKEN",`Unexpected empty item in ${a}`),B.comment&&(l.comment?l.comment+=`
102
102
  `+B.comment:l.comment=B.comment),d=B.end;continue}!o&&r.options.strict&&SW.containsNewline(v)&&i(v,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line")}if(T===0)B.comma&&i(B.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${a}`);else if(B.comma||i(B.start,"MISSING_CHAR",`Missing , between ${a} items`),B.comment){let M="";e:for(let F of _)switch(F.type){case"comma":case"space":break;case"comment":M=F.source.substring(1);break e;default:break e}if(M){let F=l.items[l.items.length-1];TW.isPair(F)&&(F=F.value??F.key),F.comment?F.comment+=`
103
103
  `+M:F.comment=M,B.comment=B.comment.substring(M.length+1)}}if(!o&&!R&&!B.found){let M=D?t(r,D,B,i):e(r,B.end,R,null,B,i);l.items.push(M),d=M.range[2],Kv(D)&&i(M.range,"BLOCK_IN_FLOW",Gv)}else{r.atKey=!0;let M=B.end,F=v?t(r,v,B,i):e(r,M,_,null,B,i);Kv(v)&&i(F.range,"BLOCK_IN_FLOW",Gv),r.atKey=!1;let ge=Gx.resolveProps(R??[],{flow:a,indicator:"map-value-ind",next:D,offset:F.range[2],onError:i,parentIndent:n.indent,startOnNewline:!1});if(ge.found){if(!o&&!B.found&&r.options.strict){if(R)for(let ke of R){if(ke===ge.found)break;if(ke.type==="newline"){i(ke,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line");break}}B.start<ge.found.offset-1024&&i(ge.found,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit flow sequence key")}}else D&&("source"in D&&D.source&&D.source[0]===":"?i(D,"MISSING_CHAR",`Missing space after : in ${a}`):i(ge.start,"MISSING_CHAR",`Missing , or : between ${a} items`));let Xe=D?t(r,D,ge,i):ge.found?e(r,ge.end,R,null,ge,i):null;Xe?Kv(D)&&i(Xe.range,"BLOCK_IN_FLOW",Gv):ge.comment&&(F.comment?F.comment+=`
104
- `+ge.comment:F.comment=ge.comment);let Ft=new vW.Pair(F,Xe);if(r.options.keepSourceTokens&&(Ft.srcToken=S),o){let ke=l;NW.mapIncludes(r,ke.items,F)&&i(M,"DUPLICATE_KEY","Map keys must be unique"),ke.items.push(Ft)}else{let ke=new Wx.YAMLMap(r.schema);ke.flow=!0,ke.items.push(Ft);let Qr=(Xe??F).range;ke.range=[F.range[0],Qr[1],Qr[2]],l.items.push(ke)}d=Xe?Xe.range[2]:ge.end}}let f=o?"}":"]",[p,...g]=n.end,h=d;if(p&&p.source===f)h=p.offset+p.source.length;else{let T=a[0].toUpperCase()+a.substring(1),S=u?`${T} must end with a ${f}`:`${T} in block collection must be sufficiently indented and end with a ${f}`;i(d,u?"MISSING_CHAR":"BAD_INDENT",S),p&&p.source.length!==1&&g.unshift(p)}if(g.length>0){let T=_W.resolveEnd(g,h,r.options.strict,i);T.comment&&(l.comment?l.comment+=`
104
+ `+ge.comment:F.comment=ge.comment);let Ft=new vW.Pair(F,Xe);if(r.options.keepSourceTokens&&(Ft.srcToken=S),o){let ke=l;NW.mapIncludes(r,ke.items,F)&&i(M,"DUPLICATE_KEY","Map keys must be unique"),ke.items.push(Ft)}else{let ke=new Wx.YAMLMap(r.schema);ke.flow=!0,ke.items.push(Ft);let Zr=(Xe??F).range;ke.range=[F.range[0],Zr[1],Zr[2]],l.items.push(ke)}d=Xe?Xe.range[2]:ge.end}}let f=o?"}":"]",[p,...g]=n.end,h=d;if(p&&p.source===f)h=p.offset+p.source.length;else{let T=a[0].toUpperCase()+a.substring(1),S=u?`${T} must end with a ${f}`:`${T} in block collection must be sufficiently indented and end with a ${f}`;i(d,u?"MISSING_CHAR":"BAD_INDENT",S),p&&p.source.length!==1&&g.unshift(p)}if(g.length>0){let T=_W.resolveEnd(g,h,r.options.strict,i);T.comment&&(l.comment?l.comment+=`
105
105
  `+T.comment:l.comment=T.comment),l.range=[n.offset,h,T.offset]}else l.range=[n.offset,h,h];return l}Kx.resolveFlowCollection=kW});var Jx=k(Xx=>{"use strict";var RW=Le(),PW=$t(),wW=_s(),EW=Ss(),DW=Ux(),CW=Vx(),AW=Yx();function Yv(t,e,r,n,i,s){let o=r.type==="block-map"?DW.resolveBlockMap(t,e,r,n,s):r.type==="block-seq"?CW.resolveBlockSeq(t,e,r,n,s):AW.resolveFlowCollection(t,e,r,n,s),a=o.constructor;return i==="!"||i===a.tagName?(o.tag=a.tagName,o):(i&&(o.tag=i),o)}function IW(t,e,r,n,i){let s=n.tag,o=s?e.directives.tagName(s.source,f=>i(s,"TAG_RESOLVE_FAILED",f)):null;if(r.type==="block-seq"){let{anchor:f,newlineAfterProp:p}=n,g=f&&s?f.offset>s.offset?f:s:f??s;g&&(!p||p.offset<g.offset)&&i(g,"MISSING_CHAR","Missing newline after block sequence props")}let a=r.type==="block-map"?"map":r.type==="block-seq"?"seq":r.start.source==="{"?"map":"seq";if(!s||!o||o==="!"||o===wW.YAMLMap.tagName&&a==="map"||o===EW.YAMLSeq.tagName&&a==="seq")return Yv(t,e,r,i,o);let c=e.schema.tags.find(f=>f.tag===o&&f.collection===a);if(!c){let f=e.schema.knownTags[o];if(f&&f.collection===a)e.schema.tags.push(Object.assign({},f,{default:!1})),c=f;else return f?.collection?i(s,"BAD_COLLECTION_TYPE",`${f.tag} used for ${a} collection, but expects ${f.collection}`,!0):i(s,"TAG_RESOLVE_FAILED",`Unresolved tag: ${o}`,!0),Yv(t,e,r,i,o)}let l=Yv(t,e,r,i,o,c),u=c.resolve?.(l,f=>i(s,"TAG_RESOLVE_FAILED",f),e.options)??l,d=RW.isNode(u)?u:new PW.Scalar(u);return d.range=l.range,d.tag=o,c?.format&&(d.format=c.format),d}Xx.composeCollection=IW});var Jv=k(Qx=>{"use strict";var Xv=$t();function OW(t,e,r){let n=e.offset,i=MW(e,t.options.strict,r);if(!i)return{value:"",type:null,comment:"",range:[n,n,n]};let s=i.mode===">"?Xv.Scalar.BLOCK_FOLDED:Xv.Scalar.BLOCK_LITERAL,o=e.source?xW(e.source):[],a=o.length;for(let h=o.length-1;h>=0;--h){let T=o[h][1];if(T===""||T==="\r")a=h;else break}if(a===0){let h=i.chomp==="+"&&o.length>0?`
106
106
  `.repeat(Math.max(1,o.length-1)):"",T=n+i.length;return e.source&&(T+=e.source.length),{value:h,type:s,comment:i.comment,range:[n,T,T]}}let c=e.indent+i.indent,l=e.offset+i.length,u=0;for(let h=0;h<a;++h){let[T,S]=o[h];if(S===""||S==="\r")i.indent===0&&T.length>c&&(c=T.length);else{T.length<c&&r(l+T.length,"MISSING_CHAR","Block scalars with more-indented leading empty lines must use an explicit indentation indicator"),i.indent===0&&(c=T.length),u=h,c===0&&!t.atRoot&&r(l,"BAD_INDENT","Block scalar values in collections must be indented");break}l+=T.length+S.length+1}for(let h=o.length-1;h>=a;--h)o[h][0].length>c&&(a=h+1);let d="",f="",p=!1;for(let h=0;h<u;++h)d+=o[h][0].slice(c)+`
107
107
  `;for(let h=u;h<a;++h){let[T,S]=o[h];l+=T.length+S.length+1;let _=S[S.length-1]==="\r";if(_&&(S=S.slice(0,-1)),S&&T.length<c){let R=`Block scalar lines must not be less indented than their ${i.indent?"explicit indentation indicator":"first line"}`;r(l-S.length-(_?2:1),"BAD_INDENT",R),T=""}s===Xv.Scalar.BLOCK_LITERAL?(d+=f+T.slice(c)+S,f=`
@@ -147,9 +147,9 @@ ${r.comment}`:r.comment}this.doc.range[2]=r.offset;break}default:this.errors.pus
147
147
  `),n=e.substring(0,r),i=e.substring(r+1)+`
148
148
  `;if(t.type==="block-scalar"){let s=t.props[0];if(s.type!=="block-scalar-header")throw new Error("Invalid block scalar header");s.source=n,t.source=i}else{let{offset:s}=t,o="indent"in t?t.indent:-1,a=[{type:"block-scalar-header",offset:s,indent:o,source:n}];gL(a,"end"in t?t.end:void 0)||a.push({type:"newline",offset:-1,indent:o,source:`
149
149
  `});for(let c of Object.keys(t))c!=="type"&&c!=="offset"&&delete t[c];Object.assign(t,{type:"block-scalar",indent:o,props:a,source:i})}}function gL(t,e){if(e)for(let r of e)switch(r.type){case"space":case"comment":t.push(r);break;case"newline":return t.push(r),!0}return!1}function ib(t,e,r){switch(t.type){case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":t.type=r,t.source=e;break;case"block-scalar":{let n=t.props.slice(1),i=e.length;t.props[0].type==="block-scalar-header"&&(i-=t.props[0].source.length);for(let s of n)s.offset+=i;delete t.props,Object.assign(t,{type:r,source:e,end:n});break}case"block-map":case"block-seq":{let i={type:"newline",offset:t.offset+e.length,indent:t.indent,source:`
150
- `};delete t.items,Object.assign(t,{type:r,source:e,end:[i]});break}default:{let n="indent"in t?t.indent:-1,i="end"in t&&Array.isArray(t.end)?t.end.filter(s=>s.type==="space"||s.type==="comment"||s.type==="newline"):[];for(let s of Object.keys(t))s!=="type"&&s!=="offset"&&delete t[s];Object.assign(t,{type:r,indent:n,source:e,end:i})}}}Bh.createScalarToken=mG;Bh.resolveAsScalar=hG;Bh.setScalarValue=gG});var vL=k(TL=>{"use strict";var TG=t=>"type"in t?jh(t):Fh(t);function jh(t){switch(t.type){case"block-scalar":{let e="";for(let r of t.props)e+=jh(r);return e+t.source}case"block-map":case"block-seq":{let e="";for(let r of t.items)e+=Fh(r);return e}case"flow-collection":{let e=t.start.source;for(let r of t.items)e+=Fh(r);for(let r of t.end)e+=r.source;return e}case"document":{let e=Fh(t);if(t.end)for(let r of t.end)e+=r.source;return e}default:{let e=t.source;if("end"in t&&t.end)for(let r of t.end)e+=r.source;return e}}}function Fh({start:t,key:e,sep:r,value:n}){let i="";for(let s of t)i+=s.source;if(e&&(i+=jh(e)),r)for(let s of r)i+=s.source;return n&&(i+=jh(n)),i}TL.stringify=TG});var NL=k(SL=>{"use strict";var sb=Symbol("break visit"),vG=Symbol("skip children"),bL=Symbol("remove item");function no(t,e){"type"in t&&t.type==="document"&&(t={start:t.start,value:t.value}),_L(Object.freeze([]),t,e)}no.BREAK=sb;no.SKIP=vG;no.REMOVE=bL;no.itemAtPath=(t,e)=>{let r=t;for(let[n,i]of e){let s=r?.[n];if(s&&"items"in s)r=s.items[i];else return}return r};no.parentCollection=(t,e)=>{let r=no.itemAtPath(t,e.slice(0,-1)),n=e[e.length-1][0],i=r?.[n];if(i&&"items"in i)return i;throw new Error("Parent collection not found")};function _L(t,e,r){let n=r(e,t);if(typeof n=="symbol")return n;for(let i of["key","value"]){let s=e[i];if(s&&"items"in s){for(let o=0;o<s.items.length;++o){let a=_L(Object.freeze(t.concat([[i,o]])),s.items[o],r);if(typeof a=="number")o=a-1;else{if(a===sb)return sb;a===bL&&(s.items.splice(o,1),o-=1)}}typeof n=="function"&&i==="key"&&(n=n(e,t))}}return typeof n=="function"?n(e,t):n}SL.visit=no});var Uh=k($r=>{"use strict";var ob=yL(),bG=vL(),_G=NL(),ab="\uFEFF",cb="",lb="",ub="",SG=t=>!!t&&"items"in t,NG=t=>!!t&&(t.type==="scalar"||t.type==="single-quoted-scalar"||t.type==="double-quoted-scalar"||t.type==="block-scalar");function kG(t){switch(t){case ab:return"<BOM>";case cb:return"<DOC>";case lb:return"<FLOW_END>";case ub:return"<SCALAR>";default:return JSON.stringify(t)}}function RG(t){switch(t){case ab:return"byte-order-mark";case cb:return"doc-mode";case lb:return"flow-error-end";case ub:return"scalar";case"---":return"doc-start";case"...":return"doc-end";case"":case`
150
+ `};delete t.items,Object.assign(t,{type:r,source:e,end:[i]});break}default:{let n="indent"in t?t.indent:-1,i="end"in t&&Array.isArray(t.end)?t.end.filter(s=>s.type==="space"||s.type==="comment"||s.type==="newline"):[];for(let s of Object.keys(t))s!=="type"&&s!=="offset"&&delete t[s];Object.assign(t,{type:r,indent:n,source:e,end:i})}}}Bh.createScalarToken=mG;Bh.resolveAsScalar=hG;Bh.setScalarValue=gG});var vL=k(TL=>{"use strict";var TG=t=>"type"in t?jh(t):Fh(t);function jh(t){switch(t.type){case"block-scalar":{let e="";for(let r of t.props)e+=jh(r);return e+t.source}case"block-map":case"block-seq":{let e="";for(let r of t.items)e+=Fh(r);return e}case"flow-collection":{let e=t.start.source;for(let r of t.items)e+=Fh(r);for(let r of t.end)e+=r.source;return e}case"document":{let e=Fh(t);if(t.end)for(let r of t.end)e+=r.source;return e}default:{let e=t.source;if("end"in t&&t.end)for(let r of t.end)e+=r.source;return e}}}function Fh({start:t,key:e,sep:r,value:n}){let i="";for(let s of t)i+=s.source;if(e&&(i+=jh(e)),r)for(let s of r)i+=s.source;return n&&(i+=jh(n)),i}TL.stringify=TG});var NL=k(SL=>{"use strict";var sb=Symbol("break visit"),vG=Symbol("skip children"),bL=Symbol("remove item");function no(t,e){"type"in t&&t.type==="document"&&(t={start:t.start,value:t.value}),_L(Object.freeze([]),t,e)}no.BREAK=sb;no.SKIP=vG;no.REMOVE=bL;no.itemAtPath=(t,e)=>{let r=t;for(let[n,i]of e){let s=r?.[n];if(s&&"items"in s)r=s.items[i];else return}return r};no.parentCollection=(t,e)=>{let r=no.itemAtPath(t,e.slice(0,-1)),n=e[e.length-1][0],i=r?.[n];if(i&&"items"in i)return i;throw new Error("Parent collection not found")};function _L(t,e,r){let n=r(e,t);if(typeof n=="symbol")return n;for(let i of["key","value"]){let s=e[i];if(s&&"items"in s){for(let o=0;o<s.items.length;++o){let a=_L(Object.freeze(t.concat([[i,o]])),s.items[o],r);if(typeof a=="number")o=a-1;else{if(a===sb)return sb;a===bL&&(s.items.splice(o,1),o-=1)}}typeof n=="function"&&i==="key"&&(n=n(e,t))}}return typeof n=="function"?n(e,t):n}SL.visit=no});var Uh=k(Br=>{"use strict";var ob=yL(),bG=vL(),_G=NL(),ab="\uFEFF",cb="",lb="",ub="",SG=t=>!!t&&"items"in t,NG=t=>!!t&&(t.type==="scalar"||t.type==="single-quoted-scalar"||t.type==="double-quoted-scalar"||t.type==="block-scalar");function kG(t){switch(t){case ab:return"<BOM>";case cb:return"<DOC>";case lb:return"<FLOW_END>";case ub:return"<SCALAR>";default:return JSON.stringify(t)}}function RG(t){switch(t){case ab:return"byte-order-mark";case cb:return"doc-mode";case lb:return"flow-error-end";case ub:return"scalar";case"---":return"doc-start";case"...":return"doc-end";case"":case`
151
151
  `:case`\r
152
- `:return"newline";case"-":return"seq-item-ind";case"?":return"explicit-key-ind";case":":return"map-value-ind";case"{":return"flow-map-start";case"}":return"flow-map-end";case"[":return"flow-seq-start";case"]":return"flow-seq-end";case",":return"comma"}switch(t[0]){case" ":case" ":return"space";case"#":return"comment";case"%":return"directive-line";case"*":return"alias";case"&":return"anchor";case"!":return"tag";case"'":return"single-quoted-scalar";case'"':return"double-quoted-scalar";case"|":case">":return"block-scalar-header"}return null}$r.createScalarToken=ob.createScalarToken;$r.resolveAsScalar=ob.resolveAsScalar;$r.setScalarValue=ob.setScalarValue;$r.stringify=bG.stringify;$r.visit=_G.visit;$r.BOM=ab;$r.DOCUMENT=cb;$r.FLOW_END=lb;$r.SCALAR=ub;$r.isCollection=SG;$r.isScalar=NG;$r.prettyToken=kG;$r.tokenType=RG});var pb=k(RL=>{"use strict";var Ll=Uh();function Un(t){switch(t){case void 0:case" ":case`
152
+ `:return"newline";case"-":return"seq-item-ind";case"?":return"explicit-key-ind";case":":return"map-value-ind";case"{":return"flow-map-start";case"}":return"flow-map-end";case"[":return"flow-seq-start";case"]":return"flow-seq-end";case",":return"comma"}switch(t[0]){case" ":case" ":return"space";case"#":return"comment";case"%":return"directive-line";case"*":return"alias";case"&":return"anchor";case"!":return"tag";case"'":return"single-quoted-scalar";case'"':return"double-quoted-scalar";case"|":case">":return"block-scalar-header"}return null}Br.createScalarToken=ob.createScalarToken;Br.resolveAsScalar=ob.resolveAsScalar;Br.setScalarValue=ob.setScalarValue;Br.stringify=bG.stringify;Br.visit=_G.visit;Br.BOM=ab;Br.DOCUMENT=cb;Br.FLOW_END=lb;Br.SCALAR=ub;Br.isCollection=SG;Br.isScalar=NG;Br.prettyToken=kG;Br.tokenType=RG});var pb=k(RL=>{"use strict";var Ll=Uh();function Un(t){switch(t){case void 0:case" ":case`
153
153
  `:case"\r":case" ":return!0;default:return!1}}var kL=new Set("0123456789ABCDEFabcdef"),PG=new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()"),Hh=new Set(",[]{}"),wG=new Set(` ,[]{}
154
154
  \r `),db=t=>!t||wG.has(t),fb=class{constructor(){this.atEnd=!1,this.blockScalarIndent=-1,this.blockScalarKeep=!1,this.buffer="",this.flowKey=!1,this.flowLevel=0,this.indentNext=0,this.indentValue=0,this.lineEndPos=null,this.next=null,this.pos=0}*lex(e,r=!1){if(e){if(typeof e!="string")throw TypeError("source is not a string");this.buffer=this.buffer?this.buffer+e:e,this.lineEndPos=null}this.atEnd=!r;let n=this.next??"stream";for(;n&&(r||this.hasChars(1));)n=yield*this.parseNext(n)}atLineEnd(){let e=this.pos,r=this.buffer[e];for(;r===" "||r===" ";)r=this.buffer[++e];return!r||r==="#"||r===`
155
155
  `?!0:r==="\r"?this.buffer[e+1]===`
@@ -172,25 +172,25 @@ ${r.comment}`:r.comment}this.doc.range[2]=r.offset;break}default:this.errors.pus
172
172
  `)+1;for(;r!==0;)this.onNewLine(this.offset+r),r=this.source.indexOf(`
173
173
  `,r)+1}yield*this.pop();break;default:yield*this.pop(),yield*this.step()}}*blockMap(e){let r=e.items[e.items.length-1];switch(this.type){case"newline":if(this.onKeyLine=!1,r.value){let n="end"in r.value?r.value.end:void 0;(Array.isArray(n)?n[n.length-1]:void 0)?.type==="comment"?n?.push(this.sourceToken):e.items.push({start:[this.sourceToken]})}else r.sep?r.sep.push(this.sourceToken):r.start.push(this.sourceToken);return;case"space":case"comment":if(r.value)e.items.push({start:[this.sourceToken]});else if(r.sep)r.sep.push(this.sourceToken);else{if(this.atIndentedComment(r.start,e.indent)){let i=e.items[e.items.length-2]?.value?.end;if(Array.isArray(i)){Array.prototype.push.apply(i,r.start),i.push(this.sourceToken),e.items.pop();return}}r.start.push(this.sourceToken)}return}if(this.indent>=e.indent){let n=!this.onKeyLine&&this.indent===e.indent,i=n&&(r.sep||r.explicitKey)&&this.type!=="seq-item-ind",s=[];if(i&&r.sep&&!r.value){let o=[];for(let a=0;a<r.sep.length;++a){let c=r.sep[a];switch(c.type){case"newline":o.push(a);break;case"space":break;case"comment":c.indent>e.indent&&(o.length=0);break;default:o.length=0}}o.length>=2&&(s=r.sep.splice(o[1]))}switch(this.type){case"anchor":case"tag":i||r.value?(s.push(this.sourceToken),e.items.push({start:s}),this.onKeyLine=!0):r.sep?r.sep.push(this.sourceToken):r.start.push(this.sourceToken);return;case"explicit-key-ind":!r.sep&&!r.explicitKey?(r.start.push(this.sourceToken),r.explicitKey=!0):i||r.value?(s.push(this.sourceToken),e.items.push({start:s,explicitKey:!0})):this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken],explicitKey:!0}]}),this.onKeyLine=!0;return;case"map-value-ind":if(r.explicitKey)if(r.sep)if(r.value)e.items.push({start:[],key:null,sep:[this.sourceToken]});else if(io(r.sep,"map-value-ind"))this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:s,key:null,sep:[this.sourceToken]}]});else if(CL(r.key)&&!io(r.sep,"newline")){let o=Ia(r.start),a=r.key,c=r.sep;c.push(this.sourceToken),delete r.key,delete r.sep,this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:o,key:a,sep:c}]})}else s.length>0?r.sep=r.sep.concat(s,this.sourceToken):r.sep.push(this.sourceToken);else if(io(r.start,"newline"))Object.assign(r,{key:null,sep:[this.sourceToken]});else{let o=Ia(r.start);this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:o,key:null,sep:[this.sourceToken]}]})}else r.sep?r.value||i?e.items.push({start:s,key:null,sep:[this.sourceToken]}):io(r.sep,"map-value-ind")?this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[],key:null,sep:[this.sourceToken]}]}):r.sep.push(this.sourceToken):Object.assign(r,{key:null,sep:[this.sourceToken]});this.onKeyLine=!0;return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{let o=this.flowScalar(this.type);i||r.value?(e.items.push({start:s,key:o,sep:[]}),this.onKeyLine=!0):r.sep?this.stack.push(o):(Object.assign(r,{key:o,sep:[]}),this.onKeyLine=!0);return}default:{let o=this.startBlockValue(e);if(o){n&&o.type!=="block-seq"&&e.items.push({start:s}),this.stack.push(o);return}}}}yield*this.pop(),yield*this.step()}*blockSequence(e){let r=e.items[e.items.length-1];switch(this.type){case"newline":if(r.value){let n="end"in r.value?r.value.end:void 0;(Array.isArray(n)?n[n.length-1]:void 0)?.type==="comment"?n?.push(this.sourceToken):e.items.push({start:[this.sourceToken]})}else r.start.push(this.sourceToken);return;case"space":case"comment":if(r.value)e.items.push({start:[this.sourceToken]});else{if(this.atIndentedComment(r.start,e.indent)){let i=e.items[e.items.length-2]?.value?.end;if(Array.isArray(i)){Array.prototype.push.apply(i,r.start),i.push(this.sourceToken),e.items.pop();return}}r.start.push(this.sourceToken)}return;case"anchor":case"tag":if(r.value||this.indent<=e.indent)break;r.start.push(this.sourceToken);return;case"seq-item-ind":if(this.indent!==e.indent)break;r.value||io(r.start,"seq-item-ind")?e.items.push({start:[this.sourceToken]}):r.start.push(this.sourceToken);return}if(this.indent>e.indent){let n=this.startBlockValue(e);if(n){this.stack.push(n);return}}yield*this.pop(),yield*this.step()}*flowCollection(e){let r=e.items[e.items.length-1];if(this.type==="flow-error-end"){let n;do yield*this.pop(),n=this.peek(1);while(n&&n.type==="flow-collection")}else if(e.end.length===0){switch(this.type){case"comma":case"explicit-key-ind":!r||r.sep?e.items.push({start:[this.sourceToken]}):r.start.push(this.sourceToken);return;case"map-value-ind":!r||r.value?e.items.push({start:[],key:null,sep:[this.sourceToken]}):r.sep?r.sep.push(this.sourceToken):Object.assign(r,{key:null,sep:[this.sourceToken]});return;case"space":case"comment":case"newline":case"anchor":case"tag":!r||r.value?e.items.push({start:[this.sourceToken]}):r.sep?r.sep.push(this.sourceToken):r.start.push(this.sourceToken);return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{let i=this.flowScalar(this.type);!r||r.value?e.items.push({start:[],key:i,sep:[]}):r.sep?this.stack.push(i):Object.assign(r,{key:i,sep:[]});return}case"flow-map-end":case"flow-seq-end":e.end.push(this.sourceToken);return}let n=this.startBlockValue(e);n?this.stack.push(n):(yield*this.pop(),yield*this.step())}else{let n=this.peek(2);if(n.type==="block-map"&&(this.type==="map-value-ind"&&n.indent===e.indent||this.type==="newline"&&!n.items[n.items.length-1].sep))yield*this.pop(),yield*this.step();else if(this.type==="map-value-ind"&&n.type!=="flow-collection"){let i=Vh(n),s=Ia(i);DL(e);let o=e.end.splice(1,e.end.length);o.push(this.sourceToken);let a={type:"block-map",offset:e.offset,indent:e.indent,items:[{start:s,key:e,sep:o}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=a}else yield*this.lineEnd(e)}}flowScalar(e){if(this.onNewLine){let r=this.source.indexOf(`
174
174
  `)+1;for(;r!==0;)this.onNewLine(this.offset+r),r=this.source.indexOf(`
175
- `,r)+1}return{type:e,offset:this.offset,indent:this.indent,source:this.source}}startBlockValue(e){switch(this.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return this.flowScalar(this.type);case"block-scalar-header":return{type:"block-scalar",offset:this.offset,indent:this.indent,props:[this.sourceToken],source:""};case"flow-map-start":case"flow-seq-start":return{type:"flow-collection",offset:this.offset,indent:this.indent,start:this.sourceToken,items:[],end:[]};case"seq-item-ind":return{type:"block-seq",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken]}]};case"explicit-key-ind":{this.onKeyLine=!0;let r=Vh(e),n=Ia(r);return n.push(this.sourceToken),{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:n,explicitKey:!0}]}}case"map-value-ind":{this.onKeyLine=!0;let r=Vh(e),n=Ia(r);return{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:n,key:null,sep:[this.sourceToken]}]}}}return null}atIndentedComment(e,r){return this.type!=="comment"||this.indent<=r?!1:e.every(n=>n.type==="newline"||n.type==="space")}*documentEnd(e){this.type!=="doc-mode"&&(e.end?e.end.push(this.sourceToken):e.end=[this.sourceToken],this.type==="newline"&&(yield*this.pop()))}*lineEnd(e){switch(this.type){case"comma":case"doc-start":case"doc-end":case"flow-seq-end":case"flow-map-end":case"map-value-ind":yield*this.pop(),yield*this.step();break;case"newline":this.onKeyLine=!1;case"space":case"comment":default:e.end?e.end.push(this.sourceToken):e.end=[this.sourceToken],this.type==="newline"&&(yield*this.pop())}}};AL.Parser=gb});var LL=k($l=>{"use strict";var IL=nb(),DG=Dl(),ql=Il(),CG=tv(),AG=Le(),IG=mb(),OL=yb();function ML(t){let e=t.prettyErrors!==!1;return{lineCounter:t.lineCounter||e&&new IG.LineCounter||null,prettyErrors:e}}function OG(t,e={}){let{lineCounter:r,prettyErrors:n}=ML(e),i=new OL.Parser(r?.addNewLine),s=new IL.Composer(e),o=Array.from(s.compose(i.parse(t)));if(n&&r)for(let a of o)a.errors.forEach(ql.prettifyError(t,r)),a.warnings.forEach(ql.prettifyError(t,r));return o.length>0?o:Object.assign([],{empty:!0},s.streamInfo())}function xL(t,e={}){let{lineCounter:r,prettyErrors:n}=ML(e),i=new OL.Parser(r?.addNewLine),s=new IL.Composer(e),o=null;for(let a of s.compose(i.parse(t),!0,t.length))if(!o)o=a;else if(o.options.logLevel!=="silent"){o.errors.push(new ql.YAMLParseError(a.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}return n&&r&&(o.errors.forEach(ql.prettifyError(t,r)),o.warnings.forEach(ql.prettifyError(t,r))),o}function MG(t,e,r){let n;typeof e=="function"?n=e:r===void 0&&e&&typeof e=="object"&&(r=e);let i=xL(t,r);if(!i)return null;if(i.warnings.forEach(s=>CG.warn(i.options.logLevel,s)),i.errors.length>0){if(i.options.logLevel!=="silent")throw i.errors[0];i.errors=[]}return i.toJS(Object.assign({reviver:n},r))}function xG(t,e,r){let n=null;if(typeof e=="function"||Array.isArray(e)?n=e:r===void 0&&e&&(r=e),typeof r=="string"&&(r=r.length),typeof r=="number"){let i=Math.round(r);r=i<1?void 0:i>8?{indent:8}:{indent:i}}if(t===void 0){let{keepUndefined:i}=r??e??{};if(!i)return}return AG.isDocument(t)&&!n?t.toString(r):new DG.Document(t,n,r).toString(r)}$l.parse=MG;$l.parseAllDocuments=OG;$l.parseDocument=xL;$l.stringify=xG});var vb=k(Ke=>{"use strict";var LG=nb(),qG=Dl(),$G=qv(),Tb=Il(),BG=pl(),Ns=Le(),FG=vs(),jG=$t(),UG=_s(),HG=Ss(),VG=Uh(),zG=pb(),WG=mb(),GG=yb(),zh=LL(),qL=ll();Ke.Composer=LG.Composer;Ke.Document=qG.Document;Ke.Schema=$G.Schema;Ke.YAMLError=Tb.YAMLError;Ke.YAMLParseError=Tb.YAMLParseError;Ke.YAMLWarning=Tb.YAMLWarning;Ke.Alias=BG.Alias;Ke.isAlias=Ns.isAlias;Ke.isCollection=Ns.isCollection;Ke.isDocument=Ns.isDocument;Ke.isMap=Ns.isMap;Ke.isNode=Ns.isNode;Ke.isPair=Ns.isPair;Ke.isScalar=Ns.isScalar;Ke.isSeq=Ns.isSeq;Ke.Pair=FG.Pair;Ke.Scalar=jG.Scalar;Ke.YAMLMap=UG.YAMLMap;Ke.YAMLSeq=HG.YAMLSeq;Ke.CST=VG;Ke.Lexer=zG.Lexer;Ke.LineCounter=WG.LineCounter;Ke.Parser=GG.Parser;Ke.parse=zh.parse;Ke.parseAllDocuments=zh.parseAllDocuments;Ke.parseDocument=zh.parseDocument;Ke.stringify=zh.stringify;Ke.visit=qL.visit;Ke.visitAsync=qL.visitAsync});var jl=k(Be=>{"use strict";Object.defineProperty(Be,"__esModule",{value:!0});Be.regexpCode=Be.getEsmExportName=Be.getProperty=Be.safeStringify=Be.stringify=Be.strConcat=Be.addCodeArg=Be.str=Be._=Be.nil=Be._Code=Be.Name=Be.IDENTIFIER=Be._CodeOrName=void 0;var Bl=class{};Be._CodeOrName=Bl;Be.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var so=class extends Bl{constructor(e){if(super(),!Be.IDENTIFIER.test(e))throw new Error("CodeGen: name must be a valid identifier");this.str=e}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};Be.Name=so;var Tn=class extends Bl{constructor(e){super(),this._items=typeof e=="string"?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let e=this._items[0];return e===""||e==='""'}get str(){var e;return(e=this._str)!==null&&e!==void 0?e:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var e;return(e=this._names)!==null&&e!==void 0?e:this._names=this._items.reduce((r,n)=>(n instanceof so&&(r[n.str]=(r[n.str]||0)+1),r),{})}};Be._Code=Tn;Be.nil=new Tn("");function $L(t,...e){let r=[t[0]],n=0;for(;n<e.length;)_b(r,e[n]),r.push(t[++n]);return new Tn(r)}Be._=$L;var bb=new Tn("+");function BL(t,...e){let r=[Fl(t[0])],n=0;for(;n<e.length;)r.push(bb),_b(r,e[n]),r.push(bb,Fl(t[++n]));return KG(r),new Tn(r)}Be.str=BL;function _b(t,e){e instanceof Tn?t.push(...e._items):e instanceof so?t.push(e):t.push(JG(e))}Be.addCodeArg=_b;function KG(t){let e=1;for(;e<t.length-1;){if(t[e]===bb){let r=YG(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+"}e++}}function YG(t,e){if(e==='""')return t;if(t==='""')return e;if(typeof t=="string")return e instanceof so||t[t.length-1]!=='"'?void 0:typeof e!="string"?`${t.slice(0,-1)}${e}"`:e[0]==='"'?t.slice(0,-1)+e.slice(1):void 0;if(typeof e=="string"&&e[0]==='"'&&!(t instanceof so))return`"${t}${e.slice(1)}`}function XG(t,e){return e.emptyStr()?t:t.emptyStr()?e:BL`${t}${e}`}Be.strConcat=XG;function JG(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:Fl(Array.isArray(t)?t.join(","):t)}function QG(t){return new Tn(Fl(t))}Be.stringify=QG;function Fl(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}Be.safeStringify=Fl;function ZG(t){return typeof t=="string"&&Be.IDENTIFIER.test(t)?new Tn(`.${t}`):$L`[${t}]`}Be.getProperty=ZG;function eK(t){if(typeof t=="string"&&Be.IDENTIFIER.test(t))return new Tn(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}Be.getEsmExportName=eK;function tK(t){return new Tn(t.toString())}Be.regexpCode=tK});var kb=k(Fr=>{"use strict";Object.defineProperty(Fr,"__esModule",{value:!0});Fr.ValueScope=Fr.ValueScopeName=Fr.Scope=Fr.varKinds=Fr.UsedValueState=void 0;var Br=jl(),Sb=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},Wh;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(Wh||(Fr.UsedValueState=Wh={}));Fr.varKinds={const:new Br.Name("const"),let:new Br.Name("let"),var:new Br.Name("var")};var Gh=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof Br.Name?e:this.name(e)}name(e){return new Br.Name(this._newName(e))}_newName(e){let r=this._names[e]||this._nameGroup(e);return`${e}${r.index++}`}_nameGroup(e){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(e)||this._prefixes&&!this._prefixes.has(e))throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};Fr.Scope=Gh;var Kh=class extends Br.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,Br._)`.${new Br.Name(r)}[${n}]`}};Fr.ValueScopeName=Kh;var rK=(0,Br._)`\n`,Nb=class extends Gh{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?rK:Br.nil}}get(){return this._scope}name(e){return new Kh(e,this._newName(e))}value(e,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let i=this.toName(e),{prefix:s}=i,o=(n=r.key)!==null&&n!==void 0?n:r.ref,a=this._values[s];if(a){let u=a.get(o);if(u)return u}else a=this._values[s]=new Map;a.set(o,i);let c=this._scope[s]||(this._scope[s]=[]),l=c.length;return c[l]=r.ref,i.setValue(r,{property:s,itemIndex:l}),i}getValue(e,r){let n=this._values[e];if(n)return n.get(r)}scopeRefs(e,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,Br._)`${e}${n.scopePath}`})}scopeCode(e=this._values,r,n){return this._reduceValues(e,i=>{if(i.value===void 0)throw new Error(`CodeGen: name "${i}" has no value`);return i.value.code},r,n)}_reduceValues(e,r,n={},i){let s=Br.nil;for(let o in e){let a=e[o];if(!a)continue;let c=n[o]=n[o]||new Map;a.forEach(l=>{if(c.has(l))return;c.set(l,Wh.Started);let u=r(l);if(u){let d=this.opts.es5?Fr.varKinds.var:Fr.varKinds.const;s=(0,Br._)`${s}${d} ${l} = ${u};${this.opts._n}`}else if(u=i?.(l))s=(0,Br._)`${s}${u}${this.opts._n}`;else throw new Sb(l);c.set(l,Wh.Completed)})}return s}};Fr.ValueScope=Nb});var ve=k(_e=>{"use strict";Object.defineProperty(_e,"__esModule",{value:!0});_e.or=_e.and=_e.not=_e.CodeGen=_e.operators=_e.varKinds=_e.ValueScopeName=_e.ValueScope=_e.Scope=_e.Name=_e.regexpCode=_e.stringify=_e.getProperty=_e.nil=_e.strConcat=_e.str=_e._=void 0;var Ie=jl(),Hn=kb(),ks=jl();Object.defineProperty(_e,"_",{enumerable:!0,get:function(){return ks._}});Object.defineProperty(_e,"str",{enumerable:!0,get:function(){return ks.str}});Object.defineProperty(_e,"strConcat",{enumerable:!0,get:function(){return ks.strConcat}});Object.defineProperty(_e,"nil",{enumerable:!0,get:function(){return ks.nil}});Object.defineProperty(_e,"getProperty",{enumerable:!0,get:function(){return ks.getProperty}});Object.defineProperty(_e,"stringify",{enumerable:!0,get:function(){return ks.stringify}});Object.defineProperty(_e,"regexpCode",{enumerable:!0,get:function(){return ks.regexpCode}});Object.defineProperty(_e,"Name",{enumerable:!0,get:function(){return ks.Name}});var Qh=kb();Object.defineProperty(_e,"Scope",{enumerable:!0,get:function(){return Qh.Scope}});Object.defineProperty(_e,"ValueScope",{enumerable:!0,get:function(){return Qh.ValueScope}});Object.defineProperty(_e,"ValueScopeName",{enumerable:!0,get:function(){return Qh.ValueScopeName}});Object.defineProperty(_e,"varKinds",{enumerable:!0,get:function(){return Qh.varKinds}});_e.operators={GT:new Ie._Code(">"),GTE:new Ie._Code(">="),LT:new Ie._Code("<"),LTE:new Ie._Code("<="),EQ:new Ie._Code("==="),NEQ:new Ie._Code("!=="),NOT:new Ie._Code("!"),OR:new Ie._Code("||"),AND:new Ie._Code("&&"),ADD:new Ie._Code("+")};var Mi=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},Rb=class extends Mi{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?Hn.varKinds.var:this.varKind,i=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${i};`+r}optimizeNames(e,r){if(e[this.name.str])return this.rhs&&(this.rhs=Ma(this.rhs,e,r)),this}get names(){return this.rhs instanceof Ie._CodeOrName?this.rhs.names:{}}},Yh=class extends Mi{constructor(e,r,n){super(),this.lhs=e,this.rhs=r,this.sideEffects=n}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,r){if(!(this.lhs instanceof Ie.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=Ma(this.rhs,e,r),this}get names(){let e=this.lhs instanceof Ie.Name?{}:{...this.lhs.names};return Jh(e,this.rhs)}},Pb=class extends Yh{constructor(e,r,n,i){super(e,n,i),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},wb=class extends Mi{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},Eb=class extends Mi{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},Db=class extends Mi{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},Cb=class extends Mi{constructor(e){super(),this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,r){return this.code=Ma(this.code,e,r),this}get names(){return this.code instanceof Ie._CodeOrName?this.code.names:{}}},Ul=class extends Mi{constructor(e=[]){super(),this.nodes=e}render(e){return this.nodes.reduce((r,n)=>r+n.render(e),"")}optimizeNodes(){let{nodes:e}=this,r=e.length;for(;r--;){let n=e[r].optimizeNodes();Array.isArray(n)?e.splice(r,1,...n):n?e[r]=n:e.splice(r,1)}return e.length>0?this:void 0}optimizeNames(e,r){let{nodes:n}=this,i=n.length;for(;i--;){let s=n[i];s.optimizeNames(e,r)||(nK(e,s.names),n.splice(i,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>co(e,r.names),{})}},xi=class extends Ul{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},Ab=class extends Ul{},Oa=class extends xi{};Oa.kind="else";var oo=class t extends xi{constructor(e,r){super(r),this.condition=e}render(e){let r=`if(${this.condition})`+super.render(e);return this.else&&(r+="else "+this.else.render(e)),r}optimizeNodes(){super.optimizeNodes();let e=this.condition;if(e===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new Oa(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(FL(e),r instanceof t?[r]:r.nodes);if(!(e===!1||!this.nodes.length))return this}optimizeNames(e,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(e,r),!!(super.optimizeNames(e,r)||this.else))return this.condition=Ma(this.condition,e,r),this}get names(){let e=super.names;return Jh(e,this.condition),this.else&&co(e,this.else.names),e}};oo.kind="if";var ao=class extends xi{};ao.kind="for";var Ib=class extends ao{constructor(e){super(),this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iteration=Ma(this.iteration,e,r),this}get names(){return co(super.names,this.iteration.names)}},Ob=class extends ao{constructor(e,r,n,i){super(),this.varKind=e,this.name=r,this.from=n,this.to=i}render(e){let r=e.es5?Hn.varKinds.var:this.varKind,{name:n,from:i,to:s}=this;return`for(${r} ${n}=${i}; ${n}<${s}; ${n}++)`+super.render(e)}get names(){let e=Jh(super.names,this.from);return Jh(e,this.to)}},Xh=class extends ao{constructor(e,r,n,i){super(),this.loop=e,this.varKind=r,this.name=n,this.iterable=i}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iterable=Ma(this.iterable,e,r),this}get names(){return co(super.names,this.iterable.names)}},Hl=class extends xi{constructor(e,r,n){super(),this.name=e,this.args=r,this.async=n}render(e){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(e)}};Hl.kind="func";var Vl=class extends Ul{render(e){return"return "+super.render(e)}};Vl.kind="return";var Mb=class extends xi{render(e){let r="try"+super.render(e);return this.catch&&(r+=this.catch.render(e)),this.finally&&(r+=this.finally.render(e)),r}optimizeNodes(){var e,r;return super.optimizeNodes(),(e=this.catch)===null||e===void 0||e.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(e,r){var n,i;return super.optimizeNames(e,r),(n=this.catch)===null||n===void 0||n.optimizeNames(e,r),(i=this.finally)===null||i===void 0||i.optimizeNames(e,r),this}get names(){let e=super.names;return this.catch&&co(e,this.catch.names),this.finally&&co(e,this.finally.names),e}},zl=class extends xi{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};zl.kind="catch";var Wl=class extends xi{render(e){return"finally"+super.render(e)}};Wl.kind="finally";var xb=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
175
+ `,r)+1}return{type:e,offset:this.offset,indent:this.indent,source:this.source}}startBlockValue(e){switch(this.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return this.flowScalar(this.type);case"block-scalar-header":return{type:"block-scalar",offset:this.offset,indent:this.indent,props:[this.sourceToken],source:""};case"flow-map-start":case"flow-seq-start":return{type:"flow-collection",offset:this.offset,indent:this.indent,start:this.sourceToken,items:[],end:[]};case"seq-item-ind":return{type:"block-seq",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken]}]};case"explicit-key-ind":{this.onKeyLine=!0;let r=Vh(e),n=Ia(r);return n.push(this.sourceToken),{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:n,explicitKey:!0}]}}case"map-value-ind":{this.onKeyLine=!0;let r=Vh(e),n=Ia(r);return{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:n,key:null,sep:[this.sourceToken]}]}}}return null}atIndentedComment(e,r){return this.type!=="comment"||this.indent<=r?!1:e.every(n=>n.type==="newline"||n.type==="space")}*documentEnd(e){this.type!=="doc-mode"&&(e.end?e.end.push(this.sourceToken):e.end=[this.sourceToken],this.type==="newline"&&(yield*this.pop()))}*lineEnd(e){switch(this.type){case"comma":case"doc-start":case"doc-end":case"flow-seq-end":case"flow-map-end":case"map-value-ind":yield*this.pop(),yield*this.step();break;case"newline":this.onKeyLine=!1;case"space":case"comment":default:e.end?e.end.push(this.sourceToken):e.end=[this.sourceToken],this.type==="newline"&&(yield*this.pop())}}};AL.Parser=gb});var LL=k($l=>{"use strict";var IL=nb(),DG=Dl(),ql=Il(),CG=tv(),AG=Le(),IG=mb(),OL=yb();function ML(t){let e=t.prettyErrors!==!1;return{lineCounter:t.lineCounter||e&&new IG.LineCounter||null,prettyErrors:e}}function OG(t,e={}){let{lineCounter:r,prettyErrors:n}=ML(e),i=new OL.Parser(r?.addNewLine),s=new IL.Composer(e),o=Array.from(s.compose(i.parse(t)));if(n&&r)for(let a of o)a.errors.forEach(ql.prettifyError(t,r)),a.warnings.forEach(ql.prettifyError(t,r));return o.length>0?o:Object.assign([],{empty:!0},s.streamInfo())}function xL(t,e={}){let{lineCounter:r,prettyErrors:n}=ML(e),i=new OL.Parser(r?.addNewLine),s=new IL.Composer(e),o=null;for(let a of s.compose(i.parse(t),!0,t.length))if(!o)o=a;else if(o.options.logLevel!=="silent"){o.errors.push(new ql.YAMLParseError(a.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}return n&&r&&(o.errors.forEach(ql.prettifyError(t,r)),o.warnings.forEach(ql.prettifyError(t,r))),o}function MG(t,e,r){let n;typeof e=="function"?n=e:r===void 0&&e&&typeof e=="object"&&(r=e);let i=xL(t,r);if(!i)return null;if(i.warnings.forEach(s=>CG.warn(i.options.logLevel,s)),i.errors.length>0){if(i.options.logLevel!=="silent")throw i.errors[0];i.errors=[]}return i.toJS(Object.assign({reviver:n},r))}function xG(t,e,r){let n=null;if(typeof e=="function"||Array.isArray(e)?n=e:r===void 0&&e&&(r=e),typeof r=="string"&&(r=r.length),typeof r=="number"){let i=Math.round(r);r=i<1?void 0:i>8?{indent:8}:{indent:i}}if(t===void 0){let{keepUndefined:i}=r??e??{};if(!i)return}return AG.isDocument(t)&&!n?t.toString(r):new DG.Document(t,n,r).toString(r)}$l.parse=MG;$l.parseAllDocuments=OG;$l.parseDocument=xL;$l.stringify=xG});var vb=k(Ke=>{"use strict";var LG=nb(),qG=Dl(),$G=qv(),Tb=Il(),BG=pl(),Ns=Le(),FG=vs(),jG=$t(),UG=_s(),HG=Ss(),VG=Uh(),zG=pb(),WG=mb(),GG=yb(),zh=LL(),qL=ll();Ke.Composer=LG.Composer;Ke.Document=qG.Document;Ke.Schema=$G.Schema;Ke.YAMLError=Tb.YAMLError;Ke.YAMLParseError=Tb.YAMLParseError;Ke.YAMLWarning=Tb.YAMLWarning;Ke.Alias=BG.Alias;Ke.isAlias=Ns.isAlias;Ke.isCollection=Ns.isCollection;Ke.isDocument=Ns.isDocument;Ke.isMap=Ns.isMap;Ke.isNode=Ns.isNode;Ke.isPair=Ns.isPair;Ke.isScalar=Ns.isScalar;Ke.isSeq=Ns.isSeq;Ke.Pair=FG.Pair;Ke.Scalar=jG.Scalar;Ke.YAMLMap=UG.YAMLMap;Ke.YAMLSeq=HG.YAMLSeq;Ke.CST=VG;Ke.Lexer=zG.Lexer;Ke.LineCounter=WG.LineCounter;Ke.Parser=GG.Parser;Ke.parse=zh.parse;Ke.parseAllDocuments=zh.parseAllDocuments;Ke.parseDocument=zh.parseDocument;Ke.stringify=zh.stringify;Ke.visit=qL.visit;Ke.visitAsync=qL.visitAsync});var jl=k(Be=>{"use strict";Object.defineProperty(Be,"__esModule",{value:!0});Be.regexpCode=Be.getEsmExportName=Be.getProperty=Be.safeStringify=Be.stringify=Be.strConcat=Be.addCodeArg=Be.str=Be._=Be.nil=Be._Code=Be.Name=Be.IDENTIFIER=Be._CodeOrName=void 0;var Bl=class{};Be._CodeOrName=Bl;Be.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var so=class extends Bl{constructor(e){if(super(),!Be.IDENTIFIER.test(e))throw new Error("CodeGen: name must be a valid identifier");this.str=e}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};Be.Name=so;var Tn=class extends Bl{constructor(e){super(),this._items=typeof e=="string"?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let e=this._items[0];return e===""||e==='""'}get str(){var e;return(e=this._str)!==null&&e!==void 0?e:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var e;return(e=this._names)!==null&&e!==void 0?e:this._names=this._items.reduce((r,n)=>(n instanceof so&&(r[n.str]=(r[n.str]||0)+1),r),{})}};Be._Code=Tn;Be.nil=new Tn("");function $L(t,...e){let r=[t[0]],n=0;for(;n<e.length;)_b(r,e[n]),r.push(t[++n]);return new Tn(r)}Be._=$L;var bb=new Tn("+");function BL(t,...e){let r=[Fl(t[0])],n=0;for(;n<e.length;)r.push(bb),_b(r,e[n]),r.push(bb,Fl(t[++n]));return KG(r),new Tn(r)}Be.str=BL;function _b(t,e){e instanceof Tn?t.push(...e._items):e instanceof so?t.push(e):t.push(JG(e))}Be.addCodeArg=_b;function KG(t){let e=1;for(;e<t.length-1;){if(t[e]===bb){let r=YG(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+"}e++}}function YG(t,e){if(e==='""')return t;if(t==='""')return e;if(typeof t=="string")return e instanceof so||t[t.length-1]!=='"'?void 0:typeof e!="string"?`${t.slice(0,-1)}${e}"`:e[0]==='"'?t.slice(0,-1)+e.slice(1):void 0;if(typeof e=="string"&&e[0]==='"'&&!(t instanceof so))return`"${t}${e.slice(1)}`}function XG(t,e){return e.emptyStr()?t:t.emptyStr()?e:BL`${t}${e}`}Be.strConcat=XG;function JG(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:Fl(Array.isArray(t)?t.join(","):t)}function QG(t){return new Tn(Fl(t))}Be.stringify=QG;function Fl(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}Be.safeStringify=Fl;function ZG(t){return typeof t=="string"&&Be.IDENTIFIER.test(t)?new Tn(`.${t}`):$L`[${t}]`}Be.getProperty=ZG;function eK(t){if(typeof t=="string"&&Be.IDENTIFIER.test(t))return new Tn(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}Be.getEsmExportName=eK;function tK(t){return new Tn(t.toString())}Be.regexpCode=tK});var kb=k(jr=>{"use strict";Object.defineProperty(jr,"__esModule",{value:!0});jr.ValueScope=jr.ValueScopeName=jr.Scope=jr.varKinds=jr.UsedValueState=void 0;var Fr=jl(),Sb=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},Wh;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(Wh||(jr.UsedValueState=Wh={}));jr.varKinds={const:new Fr.Name("const"),let:new Fr.Name("let"),var:new Fr.Name("var")};var Gh=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof Fr.Name?e:this.name(e)}name(e){return new Fr.Name(this._newName(e))}_newName(e){let r=this._names[e]||this._nameGroup(e);return`${e}${r.index++}`}_nameGroup(e){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(e)||this._prefixes&&!this._prefixes.has(e))throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};jr.Scope=Gh;var Kh=class extends Fr.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,Fr._)`.${new Fr.Name(r)}[${n}]`}};jr.ValueScopeName=Kh;var rK=(0,Fr._)`\n`,Nb=class extends Gh{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?rK:Fr.nil}}get(){return this._scope}name(e){return new Kh(e,this._newName(e))}value(e,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let i=this.toName(e),{prefix:s}=i,o=(n=r.key)!==null&&n!==void 0?n:r.ref,a=this._values[s];if(a){let u=a.get(o);if(u)return u}else a=this._values[s]=new Map;a.set(o,i);let c=this._scope[s]||(this._scope[s]=[]),l=c.length;return c[l]=r.ref,i.setValue(r,{property:s,itemIndex:l}),i}getValue(e,r){let n=this._values[e];if(n)return n.get(r)}scopeRefs(e,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,Fr._)`${e}${n.scopePath}`})}scopeCode(e=this._values,r,n){return this._reduceValues(e,i=>{if(i.value===void 0)throw new Error(`CodeGen: name "${i}" has no value`);return i.value.code},r,n)}_reduceValues(e,r,n={},i){let s=Fr.nil;for(let o in e){let a=e[o];if(!a)continue;let c=n[o]=n[o]||new Map;a.forEach(l=>{if(c.has(l))return;c.set(l,Wh.Started);let u=r(l);if(u){let d=this.opts.es5?jr.varKinds.var:jr.varKinds.const;s=(0,Fr._)`${s}${d} ${l} = ${u};${this.opts._n}`}else if(u=i?.(l))s=(0,Fr._)`${s}${u}${this.opts._n}`;else throw new Sb(l);c.set(l,Wh.Completed)})}return s}};jr.ValueScope=Nb});var ve=k(_e=>{"use strict";Object.defineProperty(_e,"__esModule",{value:!0});_e.or=_e.and=_e.not=_e.CodeGen=_e.operators=_e.varKinds=_e.ValueScopeName=_e.ValueScope=_e.Scope=_e.Name=_e.regexpCode=_e.stringify=_e.getProperty=_e.nil=_e.strConcat=_e.str=_e._=void 0;var Ie=jl(),Hn=kb(),ks=jl();Object.defineProperty(_e,"_",{enumerable:!0,get:function(){return ks._}});Object.defineProperty(_e,"str",{enumerable:!0,get:function(){return ks.str}});Object.defineProperty(_e,"strConcat",{enumerable:!0,get:function(){return ks.strConcat}});Object.defineProperty(_e,"nil",{enumerable:!0,get:function(){return ks.nil}});Object.defineProperty(_e,"getProperty",{enumerable:!0,get:function(){return ks.getProperty}});Object.defineProperty(_e,"stringify",{enumerable:!0,get:function(){return ks.stringify}});Object.defineProperty(_e,"regexpCode",{enumerable:!0,get:function(){return ks.regexpCode}});Object.defineProperty(_e,"Name",{enumerable:!0,get:function(){return ks.Name}});var Qh=kb();Object.defineProperty(_e,"Scope",{enumerable:!0,get:function(){return Qh.Scope}});Object.defineProperty(_e,"ValueScope",{enumerable:!0,get:function(){return Qh.ValueScope}});Object.defineProperty(_e,"ValueScopeName",{enumerable:!0,get:function(){return Qh.ValueScopeName}});Object.defineProperty(_e,"varKinds",{enumerable:!0,get:function(){return Qh.varKinds}});_e.operators={GT:new Ie._Code(">"),GTE:new Ie._Code(">="),LT:new Ie._Code("<"),LTE:new Ie._Code("<="),EQ:new Ie._Code("==="),NEQ:new Ie._Code("!=="),NOT:new Ie._Code("!"),OR:new Ie._Code("||"),AND:new Ie._Code("&&"),ADD:new Ie._Code("+")};var Mi=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},Rb=class extends Mi{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?Hn.varKinds.var:this.varKind,i=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${i};`+r}optimizeNames(e,r){if(e[this.name.str])return this.rhs&&(this.rhs=Ma(this.rhs,e,r)),this}get names(){return this.rhs instanceof Ie._CodeOrName?this.rhs.names:{}}},Yh=class extends Mi{constructor(e,r,n){super(),this.lhs=e,this.rhs=r,this.sideEffects=n}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,r){if(!(this.lhs instanceof Ie.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=Ma(this.rhs,e,r),this}get names(){let e=this.lhs instanceof Ie.Name?{}:{...this.lhs.names};return Jh(e,this.rhs)}},Pb=class extends Yh{constructor(e,r,n,i){super(e,n,i),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},wb=class extends Mi{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},Eb=class extends Mi{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},Db=class extends Mi{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},Cb=class extends Mi{constructor(e){super(),this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,r){return this.code=Ma(this.code,e,r),this}get names(){return this.code instanceof Ie._CodeOrName?this.code.names:{}}},Ul=class extends Mi{constructor(e=[]){super(),this.nodes=e}render(e){return this.nodes.reduce((r,n)=>r+n.render(e),"")}optimizeNodes(){let{nodes:e}=this,r=e.length;for(;r--;){let n=e[r].optimizeNodes();Array.isArray(n)?e.splice(r,1,...n):n?e[r]=n:e.splice(r,1)}return e.length>0?this:void 0}optimizeNames(e,r){let{nodes:n}=this,i=n.length;for(;i--;){let s=n[i];s.optimizeNames(e,r)||(nK(e,s.names),n.splice(i,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>co(e,r.names),{})}},xi=class extends Ul{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},Ab=class extends Ul{},Oa=class extends xi{};Oa.kind="else";var oo=class t extends xi{constructor(e,r){super(r),this.condition=e}render(e){let r=`if(${this.condition})`+super.render(e);return this.else&&(r+="else "+this.else.render(e)),r}optimizeNodes(){super.optimizeNodes();let e=this.condition;if(e===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new Oa(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(FL(e),r instanceof t?[r]:r.nodes);if(!(e===!1||!this.nodes.length))return this}optimizeNames(e,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(e,r),!!(super.optimizeNames(e,r)||this.else))return this.condition=Ma(this.condition,e,r),this}get names(){let e=super.names;return Jh(e,this.condition),this.else&&co(e,this.else.names),e}};oo.kind="if";var ao=class extends xi{};ao.kind="for";var Ib=class extends ao{constructor(e){super(),this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iteration=Ma(this.iteration,e,r),this}get names(){return co(super.names,this.iteration.names)}},Ob=class extends ao{constructor(e,r,n,i){super(),this.varKind=e,this.name=r,this.from=n,this.to=i}render(e){let r=e.es5?Hn.varKinds.var:this.varKind,{name:n,from:i,to:s}=this;return`for(${r} ${n}=${i}; ${n}<${s}; ${n}++)`+super.render(e)}get names(){let e=Jh(super.names,this.from);return Jh(e,this.to)}},Xh=class extends ao{constructor(e,r,n,i){super(),this.loop=e,this.varKind=r,this.name=n,this.iterable=i}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iterable=Ma(this.iterable,e,r),this}get names(){return co(super.names,this.iterable.names)}},Hl=class extends xi{constructor(e,r,n){super(),this.name=e,this.args=r,this.async=n}render(e){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(e)}};Hl.kind="func";var Vl=class extends Ul{render(e){return"return "+super.render(e)}};Vl.kind="return";var Mb=class extends xi{render(e){let r="try"+super.render(e);return this.catch&&(r+=this.catch.render(e)),this.finally&&(r+=this.finally.render(e)),r}optimizeNodes(){var e,r;return super.optimizeNodes(),(e=this.catch)===null||e===void 0||e.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(e,r){var n,i;return super.optimizeNames(e,r),(n=this.catch)===null||n===void 0||n.optimizeNames(e,r),(i=this.finally)===null||i===void 0||i.optimizeNames(e,r),this}get names(){let e=super.names;return this.catch&&co(e,this.catch.names),this.finally&&co(e,this.finally.names),e}},zl=class extends xi{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};zl.kind="catch";var Wl=class extends xi{render(e){return"finally"+super.render(e)}};Wl.kind="finally";var xb=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
176
176
  `:""},this._extScope=e,this._scope=new Hn.Scope({parent:e}),this._nodes=[new Ab]}toString(){return this._root.render(this.opts)}name(e){return this._scope.name(e)}scopeName(e){return this._extScope.name(e)}scopeValue(e,r){let n=this._extScope.value(e,r);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(e,r){return this._extScope.getValue(e,r)}scopeRefs(e){return this._extScope.scopeRefs(e,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(e,r,n,i){let s=this._scope.toName(r);return n!==void 0&&i&&(this._constants[s.str]=n),this._leafNode(new Rb(e,s,n)),s}const(e,r,n){return this._def(Hn.varKinds.const,e,r,n)}let(e,r,n){return this._def(Hn.varKinds.let,e,r,n)}var(e,r,n){return this._def(Hn.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new Yh(e,r,n))}add(e,r){return this._leafNode(new Pb(e,_e.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==Ie.nil&&this._leafNode(new Cb(e)),this}object(...e){let r=["{"];for(let[n,i]of e)r.length>1&&r.push(","),r.push(n),(n!==i||this.opts.es5)&&(r.push(":"),(0,Ie.addCodeArg)(r,i));return r.push("}"),new Ie._Code(r)}if(e,r,n){if(this._blockNode(new oo(e)),r&&n)this.code(r).else().code(n).endIf();else if(r)this.code(r).endIf();else if(n)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(e){return this._elseNode(new oo(e))}else(){return this._elseNode(new Oa)}endIf(){return this._endBlockNode(oo,Oa)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new Ib(e),r)}forRange(e,r,n,i,s=this.opts.es5?Hn.varKinds.var:Hn.varKinds.let){let o=this._scope.toName(e);return this._for(new Ob(s,o,r,n),()=>i(o))}forOf(e,r,n,i=Hn.varKinds.const){let s=this._scope.toName(e);if(this.opts.es5){let o=r instanceof Ie.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,Ie._)`${o}.length`,a=>{this.var(s,(0,Ie._)`${o}[${a}]`),n(s)})}return this._for(new Xh("of",i,s,r),()=>n(s))}forIn(e,r,n,i=this.opts.es5?Hn.varKinds.var:Hn.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,Ie._)`Object.keys(${r})`,n);let s=this._scope.toName(e);return this._for(new Xh("in",i,s,r),()=>n(s))}endFor(){return this._endBlockNode(ao)}label(e){return this._leafNode(new wb(e))}break(e){return this._leafNode(new Eb(e))}return(e){let r=new Vl;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(Vl)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let i=new Mb;if(this._blockNode(i),this.code(e),r){let s=this.name("e");this._currNode=i.catch=new zl(s),r(s)}return n&&(this._currNode=i.finally=new Wl,this.code(n)),this._endBlockNode(zl,Wl)}throw(e){return this._leafNode(new Db(e))}block(e,r){return this._blockStarts.push(this._nodes.length),e&&this.code(e).endBlock(r),this}endBlock(e){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let n=this._nodes.length-r;if(n<0||e!==void 0&&n!==e)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${e} expected`);return this._nodes.length=r,this}func(e,r=Ie.nil,n,i){return this._blockNode(new Hl(e,r,n)),i&&this.code(i).endFunc(),this}endFunc(){return this._endBlockNode(Hl)}optimize(e=1){for(;e-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(e){return this._currNode.nodes.push(e),this}_blockNode(e){this._currNode.nodes.push(e),this._nodes.push(e)}_endBlockNode(e,r){let n=this._currNode;if(n instanceof e||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${e.kind}/${r.kind}`:e.kind}"`)}_elseNode(e){let r=this._currNode;if(!(r instanceof oo))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let r=this._nodes;r[r.length-1]=e}};_e.CodeGen=xb;function co(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function Jh(t,e){return e instanceof Ie._CodeOrName?co(t,e.names):t}function Ma(t,e,r){if(t instanceof Ie.Name)return n(t);if(!i(t))return t;return new Ie._Code(t._items.reduce((s,o)=>(o instanceof Ie.Name&&(o=n(o)),o instanceof Ie._Code?s.push(...o._items):s.push(o),s),[]));function n(s){let o=r[s.str];return o===void 0||e[s.str]!==1?s:(delete e[s.str],o)}function i(s){return s instanceof Ie._Code&&s._items.some(o=>o instanceof Ie.Name&&e[o.str]===1&&r[o.str]!==void 0)}}function nK(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function FL(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,Ie._)`!${Lb(t)}`}_e.not=FL;var iK=jL(_e.operators.AND);function sK(...t){return t.reduce(iK)}_e.and=sK;var oK=jL(_e.operators.OR);function aK(...t){return t.reduce(oK)}_e.or=aK;function jL(t){return(e,r)=>e===Ie.nil?r:r===Ie.nil?e:(0,Ie._)`${Lb(e)} ${t} ${Lb(r)}`}function Lb(t){return t instanceof Ie.Name?t:(0,Ie._)`(${t})`}});var we=k(Ne=>{"use strict";Object.defineProperty(Ne,"__esModule",{value:!0});Ne.checkStrictMode=Ne.getErrorPath=Ne.Type=Ne.useFunc=Ne.setEvaluated=Ne.evaluatedPropsToName=Ne.mergeEvaluated=Ne.eachItem=Ne.unescapeJsonPointer=Ne.escapeJsonPointer=Ne.escapeFragment=Ne.unescapeFragment=Ne.schemaRefOrVal=Ne.schemaHasRulesButRef=Ne.schemaHasRules=Ne.checkUnknownRules=Ne.alwaysValidSchema=Ne.toHash=void 0;var ot=ve(),cK=jl();function lK(t){let e={};for(let r of t)e[r]=!0;return e}Ne.toHash=lK;function uK(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(VL(t,e),!zL(e,t.self.RULES.all))}Ne.alwaysValidSchema=uK;function VL(t,e=t.schema){let{opts:r,self:n}=t;if(!r.strictSchema||typeof e=="boolean")return;let i=n.RULES.keywords;for(let s in e)i[s]||KL(t,`unknown keyword: "${s}"`)}Ne.checkUnknownRules=VL;function zL(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}Ne.schemaHasRules=zL;function dK(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}Ne.schemaHasRulesButRef=dK;function fK({topSchemaRef:t,schemaPath:e},r,n,i){if(!i){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,ot._)`${r}`}return(0,ot._)`${t}${e}${(0,ot.getProperty)(n)}`}Ne.schemaRefOrVal=fK;function pK(t){return WL(decodeURIComponent(t))}Ne.unescapeFragment=pK;function hK(t){return encodeURIComponent($b(t))}Ne.escapeFragment=hK;function $b(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}Ne.escapeJsonPointer=$b;function WL(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}Ne.unescapeJsonPointer=WL;function mK(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}Ne.eachItem=mK;function UL({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(i,s,o,a)=>{let c=o===void 0?s:o instanceof ot.Name?(s instanceof ot.Name?t(i,s,o):e(i,s,o),o):s instanceof ot.Name?(e(i,o,s),s):r(s,o);return a===ot.Name&&!(c instanceof ot.Name)?n(i,c):c}}Ne.mergeEvaluated={props:UL({mergeNames:(t,e,r)=>t.if((0,ot._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,ot._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,ot._)`${r} || {}`).code((0,ot._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,ot._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,ot._)`${r} || {}`),Bb(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:GL}),items:UL({mergeNames:(t,e,r)=>t.if((0,ot._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,ot._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,ot._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,ot._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function GL(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,ot._)`{}`);return e!==void 0&&Bb(t,r,e),r}Ne.evaluatedPropsToName=GL;function Bb(t,e,r){Object.keys(r).forEach(n=>t.assign((0,ot._)`${e}${(0,ot.getProperty)(n)}`,!0))}Ne.setEvaluated=Bb;var HL={};function gK(t,e){return t.scopeValue("func",{ref:e,code:HL[e.code]||(HL[e.code]=new cK._Code(e.code))})}Ne.useFunc=gK;var qb;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(qb||(Ne.Type=qb={}));function yK(t,e,r){if(t instanceof ot.Name){let n=e===qb.Num;return r?n?(0,ot._)`"[" + ${t} + "]"`:(0,ot._)`"['" + ${t} + "']"`:n?(0,ot._)`"/" + ${t}`:(0,ot._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,ot.getProperty)(t).toString():"/"+$b(t)}Ne.getErrorPath=yK;function KL(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}Ne.checkStrictMode=KL});var vn=k(Fb=>{"use strict";Object.defineProperty(Fb,"__esModule",{value:!0});var hr=ve(),TK={data:new hr.Name("data"),valCxt:new hr.Name("valCxt"),instancePath:new hr.Name("instancePath"),parentData:new hr.Name("parentData"),parentDataProperty:new hr.Name("parentDataProperty"),rootData:new hr.Name("rootData"),dynamicAnchors:new hr.Name("dynamicAnchors"),vErrors:new hr.Name("vErrors"),errors:new hr.Name("errors"),this:new hr.Name("this"),self:new hr.Name("self"),scope:new hr.Name("scope"),json:new hr.Name("json"),jsonPos:new hr.Name("jsonPos"),jsonLen:new hr.Name("jsonLen"),jsonPart:new hr.Name("jsonPart")};Fb.default=TK});var Gl=k(mr=>{"use strict";Object.defineProperty(mr,"__esModule",{value:!0});mr.extendErrors=mr.resetErrorsCount=mr.reportExtraError=mr.reportError=mr.keyword$DataError=mr.keywordError=void 0;var qe=ve(),Zh=we(),Nr=vn();mr.keywordError={message:({keyword:t})=>(0,qe.str)`must pass "${t}" keyword validation`};mr.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,qe.str)`"${t}" keyword must be ${e} ($data)`:(0,qe.str)`"${t}" keyword is invalid ($data)`};function vK(t,e=mr.keywordError,r,n){let{it:i}=t,{gen:s,compositeRule:o,allErrors:a}=i,c=JL(t,e,r);n??(o||a)?YL(s,c):XL(i,(0,qe._)`[${c}]`)}mr.reportError=vK;function bK(t,e=mr.keywordError,r){let{it:n}=t,{gen:i,compositeRule:s,allErrors:o}=n,a=JL(t,e,r);YL(i,a),s||o||XL(n,Nr.default.vErrors)}mr.reportExtraError=bK;function _K(t,e){t.assign(Nr.default.errors,e),t.if((0,qe._)`${Nr.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,qe._)`${Nr.default.vErrors}.length`,e),()=>t.assign(Nr.default.vErrors,null)))}mr.resetErrorsCount=_K;function SK({gen:t,keyword:e,schemaValue:r,data:n,errsCount:i,it:s}){if(i===void 0)throw new Error("ajv implementation error");let o=t.name("err");t.forRange("i",i,Nr.default.errors,a=>{t.const(o,(0,qe._)`${Nr.default.vErrors}[${a}]`),t.if((0,qe._)`${o}.instancePath === undefined`,()=>t.assign((0,qe._)`${o}.instancePath`,(0,qe.strConcat)(Nr.default.instancePath,s.errorPath))),t.assign((0,qe._)`${o}.schemaPath`,(0,qe.str)`${s.errSchemaPath}/${e}`),s.opts.verbose&&(t.assign((0,qe._)`${o}.schema`,r),t.assign((0,qe._)`${o}.data`,n))})}mr.extendErrors=SK;function YL(t,e){let r=t.const("err",e);t.if((0,qe._)`${Nr.default.vErrors} === null`,()=>t.assign(Nr.default.vErrors,(0,qe._)`[${r}]`),(0,qe._)`${Nr.default.vErrors}.push(${r})`),t.code((0,qe._)`${Nr.default.errors}++`)}function XL(t,e){let{gen:r,validateName:n,schemaEnv:i}=t;i.$async?r.throw((0,qe._)`new ${t.ValidationError}(${e})`):(r.assign((0,qe._)`${n}.errors`,e),r.return(!1))}var lo={keyword:new qe.Name("keyword"),schemaPath:new qe.Name("schemaPath"),params:new qe.Name("params"),propertyName:new qe.Name("propertyName"),message:new qe.Name("message"),schema:new qe.Name("schema"),parentSchema:new qe.Name("parentSchema")};function JL(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,qe._)`{}`:NK(t,e,r)}function NK(t,e,r={}){let{gen:n,it:i}=t,s=[kK(i,r),RK(t,r)];return PK(t,e,s),n.object(...s)}function kK({errorPath:t},{instancePath:e}){let r=e?(0,qe.str)`${t}${(0,Zh.getErrorPath)(e,Zh.Type.Str)}`:t;return[Nr.default.instancePath,(0,qe.strConcat)(Nr.default.instancePath,r)]}function RK({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let i=n?e:(0,qe.str)`${e}/${t}`;return r&&(i=(0,qe.str)`${i}${(0,Zh.getErrorPath)(r,Zh.Type.Str)}`),[lo.schemaPath,i]}function PK(t,{params:e,message:r},n){let{keyword:i,data:s,schemaValue:o,it:a}=t,{opts:c,propertyName:l,topSchemaRef:u,schemaPath:d}=a;n.push([lo.keyword,i],[lo.params,typeof e=="function"?e(t):e||(0,qe._)`{}`]),c.messages&&n.push([lo.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([lo.schema,o],[lo.parentSchema,(0,qe._)`${u}${d}`],[Nr.default.data,s]),l&&n.push([lo.propertyName,l])}});var ZL=k(xa=>{"use strict";Object.defineProperty(xa,"__esModule",{value:!0});xa.boolOrEmptySchema=xa.topBoolOrEmptySchema=void 0;var wK=Gl(),EK=ve(),DK=vn(),CK={message:"boolean schema is false"};function AK(t){let{gen:e,schema:r,validateName:n}=t;r===!1?QL(t,!1):typeof r=="object"&&r.$async===!0?e.return(DK.default.data):(e.assign((0,EK._)`${n}.errors`,null),e.return(!0))}xa.topBoolOrEmptySchema=AK;function IK(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),QL(t)):r.var(e,!0)}xa.boolOrEmptySchema=IK;function QL(t,e){let{gen:r,data:n}=t,i={gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:t};(0,wK.reportError)(i,CK,void 0,e)}});var jb=k(La=>{"use strict";Object.defineProperty(La,"__esModule",{value:!0});La.getRules=La.isJSONType=void 0;var OK=["string","number","integer","boolean","null","object","array"],MK=new Set(OK);function xK(t){return typeof t=="string"&&MK.has(t)}La.isJSONType=xK;function LK(){let t={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...t,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},t.number,t.string,t.array,t.object],post:{rules:[]},all:{},keywords:{}}}La.getRules=LK});var Ub=k(Rs=>{"use strict";Object.defineProperty(Rs,"__esModule",{value:!0});Rs.shouldUseRule=Rs.shouldUseGroup=Rs.schemaHasRulesForType=void 0;function qK({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&eq(t,n)}Rs.schemaHasRulesForType=qK;function eq(t,e){return e.rules.some(r=>tq(t,r))}Rs.shouldUseGroup=eq;function tq(t,e){var r;return t[e.keyword]!==void 0||((r=e.definition.implements)===null||r===void 0?void 0:r.some(n=>t[n]!==void 0))}Rs.shouldUseRule=tq});var Kl=k(gr=>{"use strict";Object.defineProperty(gr,"__esModule",{value:!0});gr.reportTypeError=gr.checkDataTypes=gr.checkDataType=gr.coerceAndCheckDataType=gr.getJSONTypes=gr.getSchemaTypes=gr.DataType=void 0;var $K=jb(),BK=Ub(),FK=Gl(),be=ve(),rq=we(),qa;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(qa||(gr.DataType=qa={}));function jK(t){let e=nq(t.type);if(e.includes("null")){if(t.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!e.length&&t.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');t.nullable===!0&&e.push("null")}return e}gr.getSchemaTypes=jK;function nq(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every($K.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}gr.getJSONTypes=nq;function UK(t,e){let{gen:r,data:n,opts:i}=t,s=HK(e,i.coerceTypes),o=e.length>0&&!(s.length===0&&e.length===1&&(0,BK.schemaHasRulesForType)(t,e[0]));if(o){let a=Vb(e,n,i.strictNumbers,qa.Wrong);r.if(a,()=>{s.length?VK(t,e,s):zb(t)})}return o}gr.coerceAndCheckDataType=UK;var iq=new Set(["string","number","integer","boolean","null"]);function HK(t,e){return e?t.filter(r=>iq.has(r)||e==="array"&&r==="array"):[]}function VK(t,e,r){let{gen:n,data:i,opts:s}=t,o=n.let("dataType",(0,be._)`typeof ${i}`),a=n.let("coerced",(0,be._)`undefined`);s.coerceTypes==="array"&&n.if((0,be._)`${o} == 'object' && Array.isArray(${i}) && ${i}.length == 1`,()=>n.assign(i,(0,be._)`${i}[0]`).assign(o,(0,be._)`typeof ${i}`).if(Vb(e,i,s.strictNumbers),()=>n.assign(a,i))),n.if((0,be._)`${a} !== undefined`);for(let l of r)(iq.has(l)||l==="array"&&s.coerceTypes==="array")&&c(l);n.else(),zb(t),n.endIf(),n.if((0,be._)`${a} !== undefined`,()=>{n.assign(i,a),zK(t,a)});function c(l){switch(l){case"string":n.elseIf((0,be._)`${o} == "number" || ${o} == "boolean"`).assign(a,(0,be._)`"" + ${i}`).elseIf((0,be._)`${i} === null`).assign(a,(0,be._)`""`);return;case"number":n.elseIf((0,be._)`${o} == "boolean" || ${i} === null
177
177
  || (${o} == "string" && ${i} && ${i} == +${i})`).assign(a,(0,be._)`+${i}`);return;case"integer":n.elseIf((0,be._)`${o} === "boolean" || ${i} === null
178
178
  || (${o} === "string" && ${i} && ${i} == +${i} && !(${i} % 1))`).assign(a,(0,be._)`+${i}`);return;case"boolean":n.elseIf((0,be._)`${i} === "false" || ${i} === 0 || ${i} === null`).assign(a,!1).elseIf((0,be._)`${i} === "true" || ${i} === 1`).assign(a,!0);return;case"null":n.elseIf((0,be._)`${i} === "" || ${i} === 0 || ${i} === false`),n.assign(a,null);return;case"array":n.elseIf((0,be._)`${o} === "string" || ${o} === "number"
179
- || ${o} === "boolean" || ${i} === null`).assign(a,(0,be._)`[${i}]`)}}}function zK({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,be._)`${e} !== undefined`,()=>t.assign((0,be._)`${e}[${r}]`,n))}function Hb(t,e,r,n=qa.Correct){let i=n===qa.Correct?be.operators.EQ:be.operators.NEQ,s;switch(t){case"null":return(0,be._)`${e} ${i} null`;case"array":s=(0,be._)`Array.isArray(${e})`;break;case"object":s=(0,be._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":s=o((0,be._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":s=o();break;default:return(0,be._)`typeof ${e} ${i} ${t}`}return n===qa.Correct?s:(0,be.not)(s);function o(a=be.nil){return(0,be.and)((0,be._)`typeof ${e} == "number"`,a,r?(0,be._)`isFinite(${e})`:be.nil)}}gr.checkDataType=Hb;function Vb(t,e,r,n){if(t.length===1)return Hb(t[0],e,r,n);let i,s=(0,rq.toHash)(t);if(s.array&&s.object){let o=(0,be._)`typeof ${e} != "object"`;i=s.null?o:(0,be._)`!${e} || ${o}`,delete s.null,delete s.array,delete s.object}else i=be.nil;s.number&&delete s.integer;for(let o in s)i=(0,be.and)(i,Hb(o,e,r,n));return i}gr.checkDataTypes=Vb;var WK={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,be._)`{type: ${t}}`:(0,be._)`{type: ${e}}`};function zb(t){let e=GK(t);(0,FK.reportError)(e,WK)}gr.reportTypeError=zb;function GK(t){let{gen:e,data:r,schema:n}=t,i=(0,rq.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:i,schemaValue:i,parentSchema:n,params:{},it:t}}});var oq=k(em=>{"use strict";Object.defineProperty(em,"__esModule",{value:!0});em.assignDefaults=void 0;var $a=ve(),KK=we();function YK(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let i in r)sq(t,i,r[i].default);else e==="array"&&Array.isArray(n)&&n.forEach((i,s)=>sq(t,s,i.default))}em.assignDefaults=YK;function sq(t,e,r){let{gen:n,compositeRule:i,data:s,opts:o}=t;if(r===void 0)return;let a=(0,$a._)`${s}${(0,$a.getProperty)(e)}`;if(i){(0,KK.checkStrictMode)(t,`default is ignored for: ${a}`);return}let c=(0,$a._)`${a} === undefined`;o.useDefaults==="empty"&&(c=(0,$a._)`${c} || ${a} === null || ${a} === ""`),n.if(c,(0,$a._)`${a} = ${(0,$a.stringify)(r)}`)}});var bn=k(et=>{"use strict";Object.defineProperty(et,"__esModule",{value:!0});et.validateUnion=et.validateArray=et.usePattern=et.callValidateCode=et.schemaProperties=et.allSchemaProperties=et.noPropertyInData=et.propertyInData=et.isOwnProperty=et.hasPropFunc=et.reportMissingProp=et.checkMissingProp=et.checkReportMissingProp=void 0;var mt=ve(),Wb=we(),Ps=vn(),XK=we();function JK(t,e){let{gen:r,data:n,it:i}=t;r.if(Kb(r,n,e,i.opts.ownProperties),()=>{t.setParams({missingProperty:(0,mt._)`${e}`},!0),t.error()})}et.checkReportMissingProp=JK;function QK({gen:t,data:e,it:{opts:r}},n,i){return(0,mt.or)(...n.map(s=>(0,mt.and)(Kb(t,e,s,r.ownProperties),(0,mt._)`${i} = ${s}`)))}et.checkMissingProp=QK;function ZK(t,e){t.setParams({missingProperty:e},!0),t.error()}et.reportMissingProp=ZK;function aq(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,mt._)`Object.prototype.hasOwnProperty`})}et.hasPropFunc=aq;function Gb(t,e,r){return(0,mt._)`${aq(t)}.call(${e}, ${r})`}et.isOwnProperty=Gb;function eY(t,e,r,n){let i=(0,mt._)`${e}${(0,mt.getProperty)(r)} !== undefined`;return n?(0,mt._)`${i} && ${Gb(t,e,r)}`:i}et.propertyInData=eY;function Kb(t,e,r,n){let i=(0,mt._)`${e}${(0,mt.getProperty)(r)} === undefined`;return n?(0,mt.or)(i,(0,mt.not)(Gb(t,e,r))):i}et.noPropertyInData=Kb;function cq(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}et.allSchemaProperties=cq;function tY(t,e){return cq(e).filter(r=>!(0,Wb.alwaysValidSchema)(t,e[r]))}et.schemaProperties=tY;function rY({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:i,errorPath:s},it:o},a,c,l){let u=l?(0,mt._)`${t}, ${e}, ${n}${i}`:e,d=[[Ps.default.instancePath,(0,mt.strConcat)(Ps.default.instancePath,s)],[Ps.default.parentData,o.parentData],[Ps.default.parentDataProperty,o.parentDataProperty],[Ps.default.rootData,Ps.default.rootData]];o.opts.dynamicRef&&d.push([Ps.default.dynamicAnchors,Ps.default.dynamicAnchors]);let f=(0,mt._)`${u}, ${r.object(...d)}`;return c!==mt.nil?(0,mt._)`${a}.call(${c}, ${f})`:(0,mt._)`${a}(${f})`}et.callValidateCode=rY;var nY=(0,mt._)`new RegExp`;function iY({gen:t,it:{opts:e}},r){let n=e.unicodeRegExp?"u":"",{regExp:i}=e.code,s=i(r,n);return t.scopeValue("pattern",{key:s.toString(),ref:s,code:(0,mt._)`${i.code==="new RegExp"?nY:(0,XK.useFunc)(t,i)}(${r}, ${n})`})}et.usePattern=iY;function sY(t){let{gen:e,data:r,keyword:n,it:i}=t,s=e.name("valid");if(i.allErrors){let a=e.let("valid",!0);return o(()=>e.assign(a,!1)),a}return e.var(s,!0),o(()=>e.break()),s;function o(a){let c=e.const("len",(0,mt._)`${r}.length`);e.forRange("i",0,c,l=>{t.subschema({keyword:n,dataProp:l,dataPropType:Wb.Type.Num},s),e.if((0,mt.not)(s),a)})}}et.validateArray=sY;function oY(t){let{gen:e,schema:r,keyword:n,it:i}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(c=>(0,Wb.alwaysValidSchema)(i,c))&&!i.opts.unevaluated)return;let o=e.let("valid",!1),a=e.name("_valid");e.block(()=>r.forEach((c,l)=>{let u=t.subschema({keyword:n,schemaProp:l,compositeRule:!0},a);e.assign(o,(0,mt._)`${o} || ${a}`),t.mergeValidEvaluated(u,a)||e.if((0,mt.not)(o))})),t.result(o,()=>t.reset(),()=>t.error(!0))}et.validateUnion=oY});var dq=k(fi=>{"use strict";Object.defineProperty(fi,"__esModule",{value:!0});fi.validateKeywordUsage=fi.validSchemaType=fi.funcKeywordCode=fi.macroKeywordCode=void 0;var kr=ve(),uo=vn(),aY=bn(),cY=Gl();function lY(t,e){let{gen:r,keyword:n,schema:i,parentSchema:s,it:o}=t,a=e.macro.call(o.self,i,s,o),c=uq(r,n,a);o.opts.validateSchema!==!1&&o.self.validateSchema(a,!0);let l=r.name("valid");t.subschema({schema:a,schemaPath:kr.nil,errSchemaPath:`${o.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},l),t.pass(l,()=>t.error(!0))}fi.macroKeywordCode=lY;function uY(t,e){var r;let{gen:n,keyword:i,schema:s,parentSchema:o,$data:a,it:c}=t;fY(c,e);let l=!a&&e.compile?e.compile.call(c.self,s,o,c):e.validate,u=uq(n,i,l),d=n.let("valid");t.block$data(d,f),t.ok((r=e.valid)!==null&&r!==void 0?r:d);function f(){if(e.errors===!1)h(),e.modifying&&lq(t),T(()=>t.error());else{let S=e.async?p():g();e.modifying&&lq(t),T(()=>dY(t,S))}}function p(){let S=n.let("ruleErrs",null);return n.try(()=>h((0,kr._)`await `),_=>n.assign(d,!1).if((0,kr._)`${_} instanceof ${c.ValidationError}`,()=>n.assign(S,(0,kr._)`${_}.errors`),()=>n.throw(_))),S}function g(){let S=(0,kr._)`${u}.errors`;return n.assign(S,null),h(kr.nil),S}function h(S=e.async?(0,kr._)`await `:kr.nil){let _=c.opts.passContext?uo.default.this:uo.default.self,v=!("compile"in e&&!a||e.schema===!1);n.assign(d,(0,kr._)`${S}${(0,aY.callValidateCode)(t,u,_,v)}`,e.modifying)}function T(S){var _;n.if((0,kr.not)((_=e.valid)!==null&&_!==void 0?_:d),S)}}fi.funcKeywordCode=uY;function lq(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,kr._)`${n.parentData}[${n.parentDataProperty}]`))}function dY(t,e){let{gen:r}=t;r.if((0,kr._)`Array.isArray(${e})`,()=>{r.assign(uo.default.vErrors,(0,kr._)`${uo.default.vErrors} === null ? ${e} : ${uo.default.vErrors}.concat(${e})`).assign(uo.default.errors,(0,kr._)`${uo.default.vErrors}.length`),(0,cY.extendErrors)(t)},()=>t.error())}function fY({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function uq(t,e,r){if(r===void 0)throw new Error(`keyword "${e}" failed to compile`);return t.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,kr.stringify)(r)})}function pY(t,e,r=!1){return!e.length||e.some(n=>n==="array"?Array.isArray(t):n==="object"?t&&typeof t=="object"&&!Array.isArray(t):typeof t==n||r&&typeof t>"u")}fi.validSchemaType=pY;function hY({schema:t,opts:e,self:r,errSchemaPath:n},i,s){if(Array.isArray(i.keyword)?!i.keyword.includes(s):i.keyword!==s)throw new Error("ajv implementation error");let o=i.dependencies;if(o?.some(a=>!Object.prototype.hasOwnProperty.call(t,a)))throw new Error(`parent schema must have dependencies of ${s}: ${o.join(",")}`);if(i.validateSchema&&!i.validateSchema(t[s])){let c=`keyword "${s}" value is invalid at path "${n}": `+r.errorsText(i.validateSchema.errors);if(e.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}fi.validateKeywordUsage=hY});var pq=k(ws=>{"use strict";Object.defineProperty(ws,"__esModule",{value:!0});ws.extendSubschemaMode=ws.extendSubschemaData=ws.getSubschema=void 0;var pi=ve(),fq=we();function mY(t,{keyword:e,schemaProp:r,schema:n,schemaPath:i,errSchemaPath:s,topSchemaRef:o}){if(e!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(e!==void 0){let a=t.schema[e];return r===void 0?{schema:a,schemaPath:(0,pi._)`${t.schemaPath}${(0,pi.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:a[r],schemaPath:(0,pi._)`${t.schemaPath}${(0,pi.getProperty)(e)}${(0,pi.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,fq.escapeFragment)(r)}`}}if(n!==void 0){if(i===void 0||s===void 0||o===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:i,topSchemaRef:o,errSchemaPath:s}}throw new Error('either "keyword" or "schema" must be passed')}ws.getSubschema=mY;function gY(t,e,{dataProp:r,dataPropType:n,data:i,dataTypes:s,propertyName:o}){if(i!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:a}=e;if(r!==void 0){let{errorPath:l,dataPathArr:u,opts:d}=e,f=a.let("data",(0,pi._)`${e.data}${(0,pi.getProperty)(r)}`,!0);c(f),t.errorPath=(0,pi.str)`${l}${(0,fq.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,pi._)`${r}`,t.dataPathArr=[...u,t.parentDataProperty]}if(i!==void 0){let l=i instanceof pi.Name?i:a.let("data",i,!0);c(l),o!==void 0&&(t.propertyName=o)}s&&(t.dataTypes=s);function c(l){t.data=l,t.dataLevel=e.dataLevel+1,t.dataTypes=[],e.definedProperties=new Set,t.parentData=e.data,t.dataNames=[...e.dataNames,l]}}ws.extendSubschemaData=gY;function yY(t,{jtdDiscriminator:e,jtdMetadata:r,compositeRule:n,createErrors:i,allErrors:s}){n!==void 0&&(t.compositeRule=n),i!==void 0&&(t.createErrors=i),s!==void 0&&(t.allErrors=s),t.jtdDiscriminator=e,t.jtdMetadata=r}ws.extendSubschemaMode=yY});var Yb=k((wRe,hq)=>{"use strict";hq.exports=function t(e,r){if(e===r)return!0;if(e&&r&&typeof e=="object"&&typeof r=="object"){if(e.constructor!==r.constructor)return!1;var n,i,s;if(Array.isArray(e)){if(n=e.length,n!=r.length)return!1;for(i=n;i--!==0;)if(!t(e[i],r[i]))return!1;return!0}if(e.constructor===RegExp)return e.source===r.source&&e.flags===r.flags;if(e.valueOf!==Object.prototype.valueOf)return e.valueOf()===r.valueOf();if(e.toString!==Object.prototype.toString)return e.toString()===r.toString();if(s=Object.keys(e),n=s.length,n!==Object.keys(r).length)return!1;for(i=n;i--!==0;)if(!Object.prototype.hasOwnProperty.call(r,s[i]))return!1;for(i=n;i--!==0;){var o=s[i];if(!t(e[o],r[o]))return!1}return!0}return e!==e&&r!==r}});var gq=k((ERe,mq)=>{"use strict";var Es=mq.exports=function(t,e,r){typeof e=="function"&&(r=e,e={}),r=e.cb||r;var n=typeof r=="function"?r:r.pre||function(){},i=r.post||function(){};tm(e,n,i,t,"",t)};Es.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};Es.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};Es.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};Es.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function tm(t,e,r,n,i,s,o,a,c,l){if(n&&typeof n=="object"&&!Array.isArray(n)){e(n,i,s,o,a,c,l);for(var u in n){var d=n[u];if(Array.isArray(d)){if(u in Es.arrayKeywords)for(var f=0;f<d.length;f++)tm(t,e,r,d[f],i+"/"+u+"/"+f,s,i,u,n,f)}else if(u in Es.propsKeywords){if(d&&typeof d=="object")for(var p in d)tm(t,e,r,d[p],i+"/"+u+"/"+TY(p),s,i,u,n,p)}else(u in Es.keywords||t.allKeys&&!(u in Es.skipKeywords))&&tm(t,e,r,d,i+"/"+u,s,i,u,n)}r(n,i,s,o,a,c,l)}}function TY(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var Yl=k(jr=>{"use strict";Object.defineProperty(jr,"__esModule",{value:!0});jr.getSchemaRefs=jr.resolveUrl=jr.normalizeId=jr._getFullPath=jr.getFullPath=jr.inlineRef=void 0;var vY=we(),bY=Yb(),_Y=gq(),SY=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function NY(t,e=!0){return typeof t=="boolean"?!0:e===!0?!Xb(t):e?yq(t)<=e:!1}jr.inlineRef=NY;var kY=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Xb(t){for(let e in t){if(kY.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(Xb)||typeof r=="object"&&Xb(r))return!0}return!1}function yq(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!SY.has(r)&&(typeof t[r]=="object"&&(0,vY.eachItem)(t[r],n=>e+=yq(n)),e===1/0))return 1/0}return e}function Tq(t,e="",r){r!==!1&&(e=Ba(e));let n=t.parse(e);return vq(t,n)}jr.getFullPath=Tq;function vq(t,e){return t.serialize(e).split("#")[0]+"#"}jr._getFullPath=vq;var RY=/#\/?$/;function Ba(t){return t?t.replace(RY,""):""}jr.normalizeId=Ba;function PY(t,e,r){return r=Ba(r),t.resolve(e,r)}jr.resolveUrl=PY;var wY=/^[a-z_][-a-z0-9._]*$/i;function EY(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,i=Ba(t[r]||e),s={"":i},o=Tq(n,i,!1),a={},c=new Set;return _Y(t,{allKeys:!0},(d,f,p,g)=>{if(g===void 0)return;let h=o+f,T=s[g];typeof d[r]=="string"&&(T=S.call(this,d[r])),_.call(this,d.$anchor),_.call(this,d.$dynamicAnchor),s[f]=T;function S(v){let R=this.opts.uriResolver.resolve;if(v=Ba(T?R(T,v):v),c.has(v))throw u(v);c.add(v);let D=this.refs[v];return typeof D=="string"&&(D=this.refs[D]),typeof D=="object"?l(d,D.schema,v):v!==Ba(h)&&(v[0]==="#"?(l(d,a[v],v),a[v]=d):this.refs[v]=h),v}function _(v){if(typeof v=="string"){if(!wY.test(v))throw new Error(`invalid anchor "${v}"`);S.call(this,`#${v}`)}}}),a;function l(d,f,p){if(f!==void 0&&!bY(d,f))throw u(p)}function u(d){return new Error(`reference "${d}" resolves to more than one schema`)}}jr.getSchemaRefs=EY});var Ql=k(Ds=>{"use strict";Object.defineProperty(Ds,"__esModule",{value:!0});Ds.getData=Ds.KeywordCxt=Ds.validateFunctionCode=void 0;var kq=ZL(),bq=Kl(),Qb=Ub(),rm=Kl(),DY=oq(),Jl=dq(),Jb=pq(),se=ve(),he=vn(),CY=Yl(),Li=we(),Xl=Gl();function AY(t){if(wq(t)&&(Eq(t),Pq(t))){MY(t);return}Rq(t,()=>(0,kq.topBoolOrEmptySchema)(t))}Ds.validateFunctionCode=AY;function Rq({gen:t,validateName:e,schema:r,schemaEnv:n,opts:i},s){i.code.es5?t.func(e,(0,se._)`${he.default.data}, ${he.default.valCxt}`,n.$async,()=>{t.code((0,se._)`"use strict"; ${_q(r,i)}`),OY(t,i),t.code(s)}):t.func(e,(0,se._)`${he.default.data}, ${IY(i)}`,n.$async,()=>t.code(_q(r,i)).code(s))}function IY(t){return(0,se._)`{${he.default.instancePath}="", ${he.default.parentData}, ${he.default.parentDataProperty}, ${he.default.rootData}=${he.default.data}${t.dynamicRef?(0,se._)`, ${he.default.dynamicAnchors}={}`:se.nil}}={}`}function OY(t,e){t.if(he.default.valCxt,()=>{t.var(he.default.instancePath,(0,se._)`${he.default.valCxt}.${he.default.instancePath}`),t.var(he.default.parentData,(0,se._)`${he.default.valCxt}.${he.default.parentData}`),t.var(he.default.parentDataProperty,(0,se._)`${he.default.valCxt}.${he.default.parentDataProperty}`),t.var(he.default.rootData,(0,se._)`${he.default.valCxt}.${he.default.rootData}`),e.dynamicRef&&t.var(he.default.dynamicAnchors,(0,se._)`${he.default.valCxt}.${he.default.dynamicAnchors}`)},()=>{t.var(he.default.instancePath,(0,se._)`""`),t.var(he.default.parentData,(0,se._)`undefined`),t.var(he.default.parentDataProperty,(0,se._)`undefined`),t.var(he.default.rootData,he.default.data),e.dynamicRef&&t.var(he.default.dynamicAnchors,(0,se._)`{}`)})}function MY(t){let{schema:e,opts:r,gen:n}=t;Rq(t,()=>{r.$comment&&e.$comment&&Cq(t),BY(t),n.let(he.default.vErrors,null),n.let(he.default.errors,0),r.unevaluated&&xY(t),Dq(t),UY(t)})}function xY(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,se._)`${r}.evaluated`),e.if((0,se._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,se._)`${t.evaluated}.props`,(0,se._)`undefined`)),e.if((0,se._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,se._)`${t.evaluated}.items`,(0,se._)`undefined`))}function _q(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,se._)`/*# sourceURL=${r} */`:se.nil}function LY(t,e){if(wq(t)&&(Eq(t),Pq(t))){qY(t,e);return}(0,kq.boolOrEmptySchema)(t,e)}function Pq({schema:t,self:e}){if(typeof t=="boolean")return!t;for(let r in t)if(e.RULES.all[r])return!0;return!1}function wq(t){return typeof t.schema!="boolean"}function qY(t,e){let{schema:r,gen:n,opts:i}=t;i.$comment&&r.$comment&&Cq(t),FY(t),jY(t);let s=n.const("_errs",he.default.errors);Dq(t,s),n.var(e,(0,se._)`${s} === ${he.default.errors}`)}function Eq(t){(0,Li.checkUnknownRules)(t),$Y(t)}function Dq(t,e){if(t.opts.jtd)return Sq(t,[],!1,e);let r=(0,bq.getSchemaTypes)(t.schema),n=(0,bq.coerceAndCheckDataType)(t,r);Sq(t,r,!n,e)}function $Y(t){let{schema:e,errSchemaPath:r,opts:n,self:i}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,Li.schemaHasRulesButRef)(e,i.RULES)&&i.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function BY(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,Li.checkStrictMode)(t,"default is ignored in the schema root")}function FY(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,CY.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function jY(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function Cq({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:i}){let s=r.$comment;if(i.$comment===!0)t.code((0,se._)`${he.default.self}.logger.log(${s})`);else if(typeof i.$comment=="function"){let o=(0,se.str)`${n}/$comment`,a=t.scopeValue("root",{ref:e.root});t.code((0,se._)`${he.default.self}.opts.$comment(${s}, ${o}, ${a}.schema)`)}}function UY(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:i,opts:s}=t;r.$async?e.if((0,se._)`${he.default.errors} === 0`,()=>e.return(he.default.data),()=>e.throw((0,se._)`new ${i}(${he.default.vErrors})`)):(e.assign((0,se._)`${n}.errors`,he.default.vErrors),s.unevaluated&&HY(t),e.return((0,se._)`${he.default.errors} === 0`))}function HY({gen:t,evaluated:e,props:r,items:n}){r instanceof se.Name&&t.assign((0,se._)`${e}.props`,r),n instanceof se.Name&&t.assign((0,se._)`${e}.items`,n)}function Sq(t,e,r,n){let{gen:i,schema:s,data:o,allErrors:a,opts:c,self:l}=t,{RULES:u}=l;if(s.$ref&&(c.ignoreKeywordsWithRef||!(0,Li.schemaHasRulesButRef)(s,u))){i.block(()=>Iq(t,"$ref",u.all.$ref.definition));return}c.jtd||VY(t,e),i.block(()=>{for(let f of u.rules)d(f);d(u.post)});function d(f){(0,Qb.shouldUseGroup)(s,f)&&(f.type?(i.if((0,rm.checkDataType)(f.type,o,c.strictNumbers)),Nq(t,f),e.length===1&&e[0]===f.type&&r&&(i.else(),(0,rm.reportTypeError)(t)),i.endIf()):Nq(t,f),a||i.if((0,se._)`${he.default.errors} === ${n||0}`))}}function Nq(t,e){let{gen:r,schema:n,opts:{useDefaults:i}}=t;i&&(0,DY.assignDefaults)(t,e.type),r.block(()=>{for(let s of e.rules)(0,Qb.shouldUseRule)(n,s)&&Iq(t,s.keyword,s.definition,e.type)})}function VY(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(zY(t,e),t.opts.allowUnionTypes||WY(t,e),GY(t,t.dataTypes))}function zY(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{Aq(t.dataTypes,r)||Zb(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),YY(t,e)}}function WY(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&Zb(t,"use allowUnionTypes to allow union type keyword")}function GY(t,e){let r=t.self.RULES.all;for(let n in r){let i=r[n];if(typeof i=="object"&&(0,Qb.shouldUseRule)(t.schema,i)){let{type:s}=i.definition;s.length&&!s.some(o=>KY(e,o))&&Zb(t,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function KY(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function Aq(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function YY(t,e){let r=[];for(let n of t.dataTypes)Aq(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function Zb(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,Li.checkStrictMode)(t,e,t.opts.strictTypes)}var nm=class{constructor(e,r,n){if((0,Jl.validateKeywordUsage)(e,r,n),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=n,this.data=e.data,this.schema=e.schema[n],this.$data=r.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,Li.schemaRefOrVal)(e,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=e.schema,this.params={},this.it=e,this.def=r,this.$data)this.schemaCode=e.gen.const("vSchema",Oq(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,Jl.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=e.gen.const("_errs",he.default.errors))}result(e,r,n){this.failResult((0,se.not)(e),r,n)}failResult(e,r,n){this.gen.if(e),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(e,r){this.failResult((0,se.not)(e),void 0,r)}fail(e){if(e===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(e),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:r}=this;this.fail((0,se._)`${r} !== undefined && (${(0,se.or)(this.invalid$data(),e)})`)}error(e,r,n){if(r){this.setParams(r),this._error(e,n),this.setParams({});return}this._error(e,n)}_error(e,r){(e?Xl.reportExtraError:Xl.reportError)(this,this.def.error,r)}$dataError(){(0,Xl.reportError)(this,this.def.$dataError||Xl.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,Xl.resetErrorsCount)(this.gen,this.errsCount)}ok(e){this.allErrors||this.gen.if(e)}setParams(e,r){r?Object.assign(this.params,e):this.params=e}block$data(e,r,n=se.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=se.nil,r=se.nil){if(!this.$data)return;let{gen:n,schemaCode:i,schemaType:s,def:o}=this;n.if((0,se.or)((0,se._)`${i} === undefined`,r)),e!==se.nil&&n.assign(e,!0),(s.length||o.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==se.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:i,it:s}=this;return(0,se.or)(o(),a());function o(){if(n.length){if(!(r instanceof se.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,se._)`${(0,rm.checkDataTypes)(c,r,s.opts.strictNumbers,rm.DataType.Wrong)}`}return se.nil}function a(){if(i.validateSchema){let c=e.scopeValue("validate$data",{ref:i.validateSchema});return(0,se._)`!${c}(${r})`}return se.nil}}subschema(e,r){let n=(0,Jb.getSubschema)(this.it,e);(0,Jb.extendSubschemaData)(n,this.it,e),(0,Jb.extendSubschemaMode)(n,e);let i={...this.it,...n,items:void 0,props:void 0};return LY(i,r),i}mergeEvaluated(e,r){let{it:n,gen:i}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=Li.mergeEvaluated.props(i,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=Li.mergeEvaluated.items(i,e.items,n.items,r)))}mergeValidEvaluated(e,r){let{it:n,gen:i}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return i.if(r,()=>this.mergeEvaluated(e,se.Name)),!0}};Ds.KeywordCxt=nm;function Iq(t,e,r,n){let i=new nm(t,r,e);"code"in r?r.code(i,n):i.$data&&r.validate?(0,Jl.funcKeywordCode)(i,r):"macro"in r?(0,Jl.macroKeywordCode)(i,r):(r.compile||r.validate)&&(0,Jl.funcKeywordCode)(i,r)}var XY=/^\/(?:[^~]|~0|~1)*$/,JY=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function Oq(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let i,s;if(t==="")return he.default.rootData;if(t[0]==="/"){if(!XY.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);i=t,s=he.default.rootData}else{let l=JY.exec(t);if(!l)throw new Error(`Invalid JSON-pointer: ${t}`);let u=+l[1];if(i=l[2],i==="#"){if(u>=e)throw new Error(c("property/index",u));return n[e-u]}if(u>e)throw new Error(c("data",u));if(s=r[e-u],!i)return s}let o=s,a=i.split("/");for(let l of a)l&&(s=(0,se._)`${s}${(0,se.getProperty)((0,Li.unescapeJsonPointer)(l))}`,o=(0,se._)`${o} && ${s}`);return o;function c(l,u){return`Cannot access ${l} ${u} levels up, current level is ${e}`}}Ds.getData=Oq});var im=k(t_=>{"use strict";Object.defineProperty(t_,"__esModule",{value:!0});var e_=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};t_.default=e_});var Zl=k(i_=>{"use strict";Object.defineProperty(i_,"__esModule",{value:!0});var r_=Yl(),n_=class extends Error{constructor(e,r,n,i){super(i||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,r_.resolveUrl)(e,r,n),this.missingSchema=(0,r_.normalizeId)((0,r_.getFullPath)(e,this.missingRef))}};i_.default=n_});var eu=k(_n=>{"use strict";Object.defineProperty(_n,"__esModule",{value:!0});_n.resolveSchema=_n.getCompilingSchema=_n.resolveRef=_n.compileSchema=_n.SchemaEnv=void 0;var Vn=ve(),QY=im(),fo=vn(),zn=Yl(),Mq=we(),ZY=Ql(),Fa=class{constructor(e){var r;this.refs={},this.dynamicAnchors={};let n;typeof e.schema=="object"&&(n=e.schema),this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=(r=e.baseId)!==null&&r!==void 0?r:(0,zn.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};_n.SchemaEnv=Fa;function o_(t){let e=xq.call(this,t);if(e)return e;let r=(0,zn.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:i}=this.opts.code,{ownProperties:s}=this.opts,o=new Vn.CodeGen(this.scope,{es5:n,lines:i,ownProperties:s}),a;t.$async&&(a=o.scopeValue("Error",{ref:QY.default,code:(0,Vn._)`require("ajv/dist/runtime/validation_error").default`}));let c=o.scopeName("validate");t.validateName=c;let l={gen:o,allErrors:this.opts.allErrors,data:fo.default.data,parentData:fo.default.parentData,parentDataProperty:fo.default.parentDataProperty,dataNames:[fo.default.data],dataPathArr:[Vn.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:o.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,Vn.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:a,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:Vn.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,Vn._)`""`,opts:this.opts,self:this},u;try{this._compilations.add(t),(0,ZY.validateFunctionCode)(l),o.optimize(this.opts.code.optimize);let d=o.toString();u=`${o.scopeRefs(fo.default.scope)}return ${d}`,this.opts.code.process&&(u=this.opts.code.process(u,t));let p=new Function(`${fo.default.self}`,`${fo.default.scope}`,u)(this,this.scope.get());if(this.scope.value(c,{ref:p}),p.errors=null,p.schema=t.schema,p.schemaEnv=t,t.$async&&(p.$async=!0),this.opts.code.source===!0&&(p.source={validateName:c,validateCode:d,scopeValues:o._values}),this.opts.unevaluated){let{props:g,items:h}=l;p.evaluated={props:g instanceof Vn.Name?void 0:g,items:h instanceof Vn.Name?void 0:h,dynamicProps:g instanceof Vn.Name,dynamicItems:h instanceof Vn.Name},p.source&&(p.source.evaluated=(0,Vn.stringify)(p.evaluated))}return t.validate=p,t}catch(d){throw delete t.validate,delete t.validateName,u&&this.logger.error("Error compiling schema, function code:",u),d}finally{this._compilations.delete(t)}}_n.compileSchema=o_;function e3(t,e,r){var n;r=(0,zn.resolveUrl)(this.opts.uriResolver,e,r);let i=t.refs[r];if(i)return i;let s=n3.call(this,t,r);if(s===void 0){let o=(n=t.localRefs)===null||n===void 0?void 0:n[r],{schemaId:a}=this.opts;o&&(s=new Fa({schema:o,schemaId:a,root:t,baseId:e}))}if(s!==void 0)return t.refs[r]=t3.call(this,s)}_n.resolveRef=e3;function t3(t){return(0,zn.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:o_.call(this,t)}function xq(t){for(let e of this._compilations)if(r3(e,t))return e}_n.getCompilingSchema=xq;function r3(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function n3(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||sm.call(this,t,e)}function sm(t,e){let r=this.opts.uriResolver.parse(e),n=(0,zn._getFullPath)(this.opts.uriResolver,r),i=(0,zn.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===i)return s_.call(this,r,t);let s=(0,zn.normalizeId)(n),o=this.refs[s]||this.schemas[s];if(typeof o=="string"){let a=sm.call(this,t,o);return typeof a?.schema!="object"?void 0:s_.call(this,r,a)}if(typeof o?.schema=="object"){if(o.validate||o_.call(this,o),s===(0,zn.normalizeId)(e)){let{schema:a}=o,{schemaId:c}=this.opts,l=a[c];return l&&(i=(0,zn.resolveUrl)(this.opts.uriResolver,i,l)),new Fa({schema:a,schemaId:c,root:t,baseId:i})}return s_.call(this,r,o)}}_n.resolveSchema=sm;var i3=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function s_(t,{baseId:e,schema:r,root:n}){var i;if(((i=t.fragment)===null||i===void 0?void 0:i[0])!=="/")return;for(let a of t.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let c=r[(0,Mq.unescapeFragment)(a)];if(c===void 0)return;r=c;let l=typeof r=="object"&&r[this.opts.schemaId];!i3.has(a)&&l&&(e=(0,zn.resolveUrl)(this.opts.uriResolver,e,l))}let s;if(typeof r!="boolean"&&r.$ref&&!(0,Mq.schemaHasRulesButRef)(r,this.RULES)){let a=(0,zn.resolveUrl)(this.opts.uriResolver,e,r.$ref);s=sm.call(this,n,a)}let{schemaId:o}=this.opts;if(s=s||new Fa({schema:r,schemaId:o,root:n,baseId:e}),s.schema!==s.root.schema)return s}});var Lq=k((MRe,s3)=>{s3.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var $q=k((xRe,qq)=>{"use strict";var o3={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,a:10,A:10,b:11,B:11,c:12,C:12,d:13,D:13,e:14,E:14,f:15,F:15};qq.exports={HEX:o3}});var Wq=k((LRe,zq)=>{"use strict";var{HEX:a3}=$q(),c3=/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u;function Uq(t){if(Vq(t,".")<3)return{host:t,isIPV4:!1};let e=t.match(c3)||[],[r]=e;return r?{host:u3(r,"."),isIPV4:!0}:{host:t,isIPV4:!1}}function a_(t,e=!1){let r="",n=!0;for(let i of t){if(a3[i]===void 0)return;i!=="0"&&n===!0&&(n=!1),n||(r+=i)}return e&&r.length===0&&(r="0"),r}function l3(t){let e=0,r={error:!1,address:"",zone:""},n=[],i=[],s=!1,o=!1,a=!1;function c(){if(i.length){if(s===!1){let l=a_(i);if(l!==void 0)n.push(l);else return r.error=!0,!1}i.length=0}return!0}for(let l=0;l<t.length;l++){let u=t[l];if(!(u==="["||u==="]"))if(u===":"){if(o===!0&&(a=!0),!c())break;if(e++,n.push(":"),e>7){r.error=!0;break}l-1>=0&&t[l-1]===":"&&(o=!0);continue}else if(u==="%"){if(!c())break;s=!0}else{i.push(u);continue}}return i.length&&(s?r.zone=i.join(""):a?n.push(i.join("")):n.push(a_(i))),r.address=n.join(""),r}function Hq(t){if(Vq(t,":")<2)return{host:t,isIPV6:!1};let e=l3(t);if(e.error)return{host:t,isIPV6:!1};{let r=e.address,n=e.address;return e.zone&&(r+="%"+e.zone,n+="%25"+e.zone),{host:r,escapedHost:n,isIPV6:!0}}}function u3(t,e){let r="",n=!0,i=t.length;for(let s=0;s<i;s++){let o=t[s];o==="0"&&n?(s+1<=i&&t[s+1]===e||s+1===i)&&(r+=o,n=!1):(o===e?n=!0:n=!1,r+=o)}return r}function Vq(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}var Bq=/^\.\.?\//u,Fq=/^\/\.(?:\/|$)/u,jq=/^\/\.\.(?:\/|$)/u,d3=/^\/?(?:.|\n)*?(?=\/|$)/u;function f3(t){let e=[];for(;t.length;)if(t.match(Bq))t=t.replace(Bq,"");else if(t.match(Fq))t=t.replace(Fq,"/");else if(t.match(jq))t=t.replace(jq,"/"),e.pop();else if(t==="."||t==="..")t="";else{let r=t.match(d3);if(r){let n=r[0];t=t.slice(n.length),e.push(n)}else throw new Error("Unexpected dot segment condition")}return e.join("")}function p3(t,e){let r=e!==!0?escape:unescape;return t.scheme!==void 0&&(t.scheme=r(t.scheme)),t.userinfo!==void 0&&(t.userinfo=r(t.userinfo)),t.host!==void 0&&(t.host=r(t.host)),t.path!==void 0&&(t.path=r(t.path)),t.query!==void 0&&(t.query=r(t.query)),t.fragment!==void 0&&(t.fragment=r(t.fragment)),t}function h3(t){let e=[];if(t.userinfo!==void 0&&(e.push(t.userinfo),e.push("@")),t.host!==void 0){let r=unescape(t.host),n=Uq(r);if(n.isIPV4)r=n.host;else{let i=Hq(n.host);i.isIPV6===!0?r=`[${i.escapedHost}]`:r=t.host}e.push(r)}return(typeof t.port=="number"||typeof t.port=="string")&&(e.push(":"),e.push(String(t.port))),e.length?e.join(""):void 0}zq.exports={recomposeAuthority:h3,normalizeComponentEncoding:p3,removeDotSegments:f3,normalizeIPv4:Uq,normalizeIPv6:Hq,stringArrayToHexStripped:a_}});var Qq=k((qRe,Jq)=>{"use strict";var m3=/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu,g3=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu;function Gq(t){return typeof t.secure=="boolean"?t.secure:String(t.scheme).toLowerCase()==="wss"}function Kq(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function Yq(t){let e=String(t.scheme).toLowerCase()==="https";return(t.port===(e?443:80)||t.port==="")&&(t.port=void 0),t.path||(t.path="/"),t}function y3(t){return t.secure=Gq(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function T3(t){if((t.port===(Gq(t)?443:80)||t.port==="")&&(t.port=void 0),typeof t.secure=="boolean"&&(t.scheme=t.secure?"wss":"ws",t.secure=void 0),t.resourceName){let[e,r]=t.resourceName.split("?");t.path=e&&e!=="/"?e:void 0,t.query=r,t.resourceName=void 0}return t.fragment=void 0,t}function v3(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(g3);if(r){let n=e.scheme||t.scheme||"urn";t.nid=r[1].toLowerCase(),t.nss=r[2];let i=`${n}:${e.nid||t.nid}`,s=c_[i];t.path=void 0,s&&(t=s.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function b3(t,e){let r=e.scheme||t.scheme||"urn",n=t.nid.toLowerCase(),i=`${r}:${e.nid||n}`,s=c_[i];s&&(t=s.serialize(t,e));let o=t,a=t.nss;return o.path=`${n||e.nid}:${a}`,e.skipEscape=!0,o}function _3(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!m3.test(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function S3(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var Xq={scheme:"http",domainHost:!0,parse:Kq,serialize:Yq},N3={scheme:"https",domainHost:Xq.domainHost,parse:Kq,serialize:Yq},om={scheme:"ws",domainHost:!0,parse:y3,serialize:T3},k3={scheme:"wss",domainHost:om.domainHost,parse:om.parse,serialize:om.serialize},R3={scheme:"urn",parse:v3,serialize:b3,skipNormalize:!0},P3={scheme:"urn:uuid",parse:_3,serialize:S3,skipNormalize:!0},c_={http:Xq,https:N3,ws:om,wss:k3,urn:R3,"urn:uuid":P3};Jq.exports=c_});var e1=k(($Re,cm)=>{"use strict";var{normalizeIPv6:w3,normalizeIPv4:E3,removeDotSegments:tu,recomposeAuthority:D3,normalizeComponentEncoding:am}=Wq(),l_=Qq();function C3(t,e){return typeof t=="string"?t=hi(qi(t,e),e):typeof t=="object"&&(t=qi(hi(t,e),e)),t}function A3(t,e,r){let n=Object.assign({scheme:"null"},r),i=Zq(qi(t,n),qi(e,n),n,!0);return hi(i,{...n,skipEscape:!0})}function Zq(t,e,r,n){let i={};return n||(t=qi(hi(t,r),r),e=qi(hi(e,r),r)),r=r||{},!r.tolerant&&e.scheme?(i.scheme=e.scheme,i.userinfo=e.userinfo,i.host=e.host,i.port=e.port,i.path=tu(e.path||""),i.query=e.query):(e.userinfo!==void 0||e.host!==void 0||e.port!==void 0?(i.userinfo=e.userinfo,i.host=e.host,i.port=e.port,i.path=tu(e.path||""),i.query=e.query):(e.path?(e.path.charAt(0)==="/"?i.path=tu(e.path):((t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)&&!t.path?i.path="/"+e.path:t.path?i.path=t.path.slice(0,t.path.lastIndexOf("/")+1)+e.path:i.path=e.path,i.path=tu(i.path)),i.query=e.query):(i.path=t.path,e.query!==void 0?i.query=e.query:i.query=t.query),i.userinfo=t.userinfo,i.host=t.host,i.port=t.port),i.scheme=t.scheme),i.fragment=e.fragment,i}function I3(t,e,r){return typeof t=="string"?(t=unescape(t),t=hi(am(qi(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=hi(am(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=hi(am(qi(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=hi(am(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function hi(t,e){let r={host:t.host,scheme:t.scheme,userinfo:t.userinfo,port:t.port,path:t.path,query:t.query,nid:t.nid,nss:t.nss,uuid:t.uuid,fragment:t.fragment,reference:t.reference,resourceName:t.resourceName,secure:t.secure,error:""},n=Object.assign({},e),i=[],s=l_[(n.scheme||r.scheme||"").toLowerCase()];s&&s.serialize&&s.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&i.push(r.scheme,":");let o=D3(r);if(o!==void 0&&(n.reference!=="suffix"&&i.push("//"),i.push(o),r.path&&r.path.charAt(0)!=="/"&&i.push("/")),r.path!==void 0){let a=r.path;!n.absolutePath&&(!s||!s.absolutePath)&&(a=tu(a)),o===void 0&&(a=a.replace(/^\/\//u,"/%2F")),i.push(a)}return r.query!==void 0&&i.push("?",r.query),r.fragment!==void 0&&i.push("#",r.fragment),i.join("")}var O3=Array.from({length:127},(t,e)=>/[^!"$&'()*+,\-.;=_`a-z{}~]/u.test(String.fromCharCode(e)));function M3(t){let e=0;for(let r=0,n=t.length;r<n;++r)if(e=t.charCodeAt(r),e>126||O3[e])return!0;return!1}var x3=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function qi(t,e){let r=Object.assign({},e),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},i=t.indexOf("%")!==-1,s=!1;r.reference==="suffix"&&(t=(r.scheme?r.scheme+":":"")+"//"+t);let o=t.match(x3);if(o){if(n.scheme=o[1],n.userinfo=o[3],n.host=o[4],n.port=parseInt(o[5],10),n.path=o[6]||"",n.query=o[7],n.fragment=o[8],isNaN(n.port)&&(n.port=o[5]),n.host){let c=E3(n.host);if(c.isIPV4===!1){let l=w3(c.host);n.host=l.host.toLowerCase(),s=l.isIPV6}else n.host=c.host,s=!0}n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&n.query===void 0&&!n.path?n.reference="same-document":n.scheme===void 0?n.reference="relative":n.fragment===void 0?n.reference="absolute":n.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==n.reference&&(n.error=n.error||"URI is not a "+r.reference+" reference.");let a=l_[(r.scheme||n.scheme||"").toLowerCase()];if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&s===!1&&M3(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(c){n.error=n.error||"Host's domain name can not be converted to ASCII: "+c}(!a||a&&!a.skipNormalize)&&(i&&n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),i&&n.host!==void 0&&(n.host=unescape(n.host)),n.path&&(n.path=escape(unescape(n.path))),n.fragment&&(n.fragment=encodeURI(decodeURIComponent(n.fragment)))),a&&a.parse&&a.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return n}var u_={SCHEMES:l_,normalize:C3,resolve:A3,resolveComponents:Zq,equal:I3,serialize:hi,parse:qi};cm.exports=u_;cm.exports.default=u_;cm.exports.fastUri=u_});var r1=k(d_=>{"use strict";Object.defineProperty(d_,"__esModule",{value:!0});var t1=e1();t1.code='require("ajv/dist/runtime/uri").default';d_.default=t1});var u1=k(tr=>{"use strict";Object.defineProperty(tr,"__esModule",{value:!0});tr.CodeGen=tr.Name=tr.nil=tr.stringify=tr.str=tr._=tr.KeywordCxt=void 0;var L3=Ql();Object.defineProperty(tr,"KeywordCxt",{enumerable:!0,get:function(){return L3.KeywordCxt}});var ja=ve();Object.defineProperty(tr,"_",{enumerable:!0,get:function(){return ja._}});Object.defineProperty(tr,"str",{enumerable:!0,get:function(){return ja.str}});Object.defineProperty(tr,"stringify",{enumerable:!0,get:function(){return ja.stringify}});Object.defineProperty(tr,"nil",{enumerable:!0,get:function(){return ja.nil}});Object.defineProperty(tr,"Name",{enumerable:!0,get:function(){return ja.Name}});Object.defineProperty(tr,"CodeGen",{enumerable:!0,get:function(){return ja.CodeGen}});var q3=im(),a1=Zl(),$3=jb(),ru=eu(),B3=ve(),nu=Yl(),lm=Kl(),p_=we(),n1=Lq(),F3=r1(),c1=(t,e)=>new RegExp(t,e);c1.code="new RegExp";var j3=["removeAdditional","useDefaults","coerceTypes"],U3=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),H3={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},V3={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},i1=200;function z3(t){var e,r,n,i,s,o,a,c,l,u,d,f,p,g,h,T,S,_,v,R,D,B,M,F,ge;let Xe=t.strict,Ft=(e=t.code)===null||e===void 0?void 0:e.optimize,ke=Ft===!0||Ft===void 0?1:Ft||0,Qr=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:c1,$i=(i=t.uriResolver)!==null&&i!==void 0?i:F3.default;return{strictSchema:(o=(s=t.strictSchema)!==null&&s!==void 0?s:Xe)!==null&&o!==void 0?o:!0,strictNumbers:(c=(a=t.strictNumbers)!==null&&a!==void 0?a:Xe)!==null&&c!==void 0?c:!0,strictTypes:(u=(l=t.strictTypes)!==null&&l!==void 0?l:Xe)!==null&&u!==void 0?u:"log",strictTuples:(f=(d=t.strictTuples)!==null&&d!==void 0?d:Xe)!==null&&f!==void 0?f:"log",strictRequired:(g=(p=t.strictRequired)!==null&&p!==void 0?p:Xe)!==null&&g!==void 0?g:!1,code:t.code?{...t.code,optimize:ke,regExp:Qr}:{optimize:ke,regExp:Qr},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:i1,loopEnum:(T=t.loopEnum)!==null&&T!==void 0?T:i1,meta:(S=t.meta)!==null&&S!==void 0?S:!0,messages:(_=t.messages)!==null&&_!==void 0?_:!0,inlineRefs:(v=t.inlineRefs)!==null&&v!==void 0?v:!0,schemaId:(R=t.schemaId)!==null&&R!==void 0?R:"$id",addUsedSchema:(D=t.addUsedSchema)!==null&&D!==void 0?D:!0,validateSchema:(B=t.validateSchema)!==null&&B!==void 0?B:!0,validateFormats:(M=t.validateFormats)!==null&&M!==void 0?M:!0,unicodeRegExp:(F=t.unicodeRegExp)!==null&&F!==void 0?F:!0,int32range:(ge=t.int32range)!==null&&ge!==void 0?ge:!0,uriResolver:$i}}var iu=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...z3(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new B3.ValueScope({scope:{},prefixes:U3,es5:r,lines:n}),this.logger=J3(e.logger);let i=e.validateFormats;e.validateFormats=!1,this.RULES=(0,$3.getRules)(),s1.call(this,H3,e,"NOT SUPPORTED"),s1.call(this,V3,e,"DEPRECATED","warn"),this._metaOpts=Y3.call(this),e.formats&&G3.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&K3.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),W3.call(this),e.validateFormats=i}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,i=n1;n==="id"&&(i={...n1},i.id=i.$id,delete i.$id),r&&e&&this.addMetaSchema(i,i[n],!1)}defaultMeta(){let{meta:e,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof e=="object"?e[r]||e:void 0}validate(e,r){let n;if(typeof e=="string"){if(n=this.getSchema(e),!n)throw new Error(`no schema with key or ref "${e}"`)}else n=this.compile(e);let i=n(r);return"$async"in n||(this.errors=n.errors),i}compile(e,r){let n=this._addSchema(e,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(e,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return i.call(this,e,r);async function i(u,d){await s.call(this,u.$schema);let f=this._addSchema(u,d);return f.validate||o.call(this,f)}async function s(u){u&&!this.getSchema(u)&&await i.call(this,{$ref:u},!0)}async function o(u){try{return this._compileSchemaEnv(u)}catch(d){if(!(d instanceof a1.default))throw d;return a.call(this,d),await c.call(this,d.missingSchema),o.call(this,u)}}function a({missingSchema:u,missingRef:d}){if(this.refs[u])throw new Error(`AnySchema ${u} is loaded but ${d} cannot be resolved`)}async function c(u){let d=await l.call(this,u);this.refs[u]||await s.call(this,d.$schema),this.refs[u]||this.addSchema(d,u,r)}async function l(u){let d=this._loading[u];if(d)return d;try{return await(this._loading[u]=n(u))}finally{delete this._loading[u]}}}addSchema(e,r,n,i=this.opts.validateSchema){if(Array.isArray(e)){for(let o of e)this.addSchema(o,void 0,n,i);return this}let s;if(typeof e=="object"){let{schemaId:o}=this.opts;if(s=e[o],s!==void 0&&typeof s!="string")throw new Error(`schema ${o} must be string`)}return r=(0,nu.normalizeId)(r||s),this._checkUnique(r),this.schemas[r]=this._addSchema(e,n,r,i,!0),this}addMetaSchema(e,r,n=this.opts.validateSchema){return this.addSchema(e,r,!0,n),this}validateSchema(e,r){if(typeof e=="boolean")return!0;let n;if(n=e.$schema,n!==void 0&&typeof n!="string")throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let i=this.validate(n,e);if(!i&&r){let s="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(s);else throw new Error(s)}return i}getSchema(e){let r;for(;typeof(r=o1.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,i=new ru.SchemaEnv({schema:{},schemaId:n});if(r=ru.resolveSchema.call(this,i,e),!r)return;this.refs[e]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(e){if(e instanceof RegExp)return this._removeAllSchemas(this.schemas,e),this._removeAllSchemas(this.refs,e),this;switch(typeof e){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=o1.call(this,e);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[e],delete this.refs[e],this}case"object":{let r=e;this._cache.delete(r);let n=e[this.opts.schemaId];return n&&(n=(0,nu.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(e){for(let r of e)this.addKeyword(r);return this}addKeyword(e,r){let n;if(typeof e=="string")n=e,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof e=="object"&&r===void 0){if(r=e,n=r.keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(Z3.call(this,n,r),!r)return(0,p_.eachItem)(n,s=>f_.call(this,s)),this;tX.call(this,r);let i={...r,type:(0,lm.getJSONTypes)(r.type),schemaType:(0,lm.getJSONTypes)(r.schemaType)};return(0,p_.eachItem)(n,i.type.length===0?s=>f_.call(this,s,i):s=>i.type.forEach(o=>f_.call(this,s,i,o))),this}getKeyword(e){let r=this.RULES.all[e];return typeof r=="object"?r.definition:!!r}removeKeyword(e){let{RULES:r}=this;delete r.keywords[e],delete r.all[e];for(let n of r.rules){let i=n.rules.findIndex(s=>s.keyword===e);i>=0&&n.rules.splice(i,1)}return this}addFormat(e,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[e]=r,this}errorsText(e=this.errors,{separator:r=", ",dataVar:n="data"}={}){return!e||e.length===0?"No errors":e.map(i=>`${n}${i.instancePath} ${i.message}`).reduce((i,s)=>i+r+s)}$dataMetaSchema(e,r){let n=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(let i of r){let s=i.split("/").slice(1),o=e;for(let a of s)o=o[a];for(let a in n){let c=n[a];if(typeof c!="object")continue;let{$data:l}=c.definition,u=o[a];l&&u&&(o[a]=l1(u))}}return e}_removeAllSchemas(e,r){for(let n in e){let i=e[n];(!r||r.test(n))&&(typeof i=="string"?delete e[n]:i&&!i.meta&&(this._cache.delete(i.schema),delete e[n]))}}_addSchema(e,r,n,i=this.opts.validateSchema,s=this.opts.addUsedSchema){let o,{schemaId:a}=this.opts;if(typeof e=="object")o=e[a];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof e!="boolean")throw new Error("schema must be object or boolean")}let c=this._cache.get(e);if(c!==void 0)return c;n=(0,nu.normalizeId)(o||n);let l=nu.getSchemaRefs.call(this,e,n);return c=new ru.SchemaEnv({schema:e,schemaId:a,meta:r,baseId:n,localRefs:l}),this._cache.set(c.schema,c),s&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=c),i&&this.validateSchema(e,!0),c}_checkUnique(e){if(this.schemas[e]||this.refs[e])throw new Error(`schema with key or id "${e}" already exists`)}_compileSchemaEnv(e){if(e.meta?this._compileMetaSchema(e):ru.compileSchema.call(this,e),!e.validate)throw new Error("ajv implementation error");return e.validate}_compileMetaSchema(e){let r=this.opts;this.opts=this._metaOpts;try{ru.compileSchema.call(this,e)}finally{this.opts=r}}};iu.ValidationError=q3.default;iu.MissingRefError=a1.default;tr.default=iu;function s1(t,e,r,n="error"){for(let i in t){let s=i;s in e&&this.logger[n](`${r}: option ${i}. ${t[s]}`)}}function o1(t){return t=(0,nu.normalizeId)(t),this.schemas[t]||this.refs[t]}function W3(){let t=this.opts.schemas;if(t)if(Array.isArray(t))this.addSchema(t);else for(let e in t)this.addSchema(t[e],e)}function G3(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function K3(t){if(Array.isArray(t)){this.addVocabulary(t);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let e in t){let r=t[e];r.keyword||(r.keyword=e),this.addKeyword(r)}}function Y3(){let t={...this.opts};for(let e of j3)delete t[e];return t}var X3={log(){},warn(){},error(){}};function J3(t){if(t===!1)return X3;if(t===void 0)return console;if(t.log&&t.warn&&t.error)return t;throw new Error("logger must implement log, warn and error methods")}var Q3=/^[a-z_$][a-z0-9_$:-]*$/i;function Z3(t,e){let{RULES:r}=this;if((0,p_.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!Q3.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!e&&e.$data&&!("code"in e||"validate"in e))throw new Error('$data keyword must have "code" or "validate" function')}function f_(t,e,r){var n;let i=e?.post;if(r&&i)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:s}=this,o=i?s.post:s.rules.find(({type:c})=>c===r);if(o||(o={type:r,rules:[]},s.rules.push(o)),s.keywords[t]=!0,!e)return;let a={keyword:t,definition:{...e,type:(0,lm.getJSONTypes)(e.type),schemaType:(0,lm.getJSONTypes)(e.schemaType)}};e.before?eX.call(this,o,a,e.before):o.rules.push(a),s.all[t]=a,(n=e.implements)===null||n===void 0||n.forEach(c=>this.addKeyword(c))}function eX(t,e,r){let n=t.rules.findIndex(i=>i.keyword===r);n>=0?t.rules.splice(n,0,e):(t.rules.push(e),this.logger.warn(`rule ${r} is not defined`))}function tX(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=l1(e)),t.validateSchema=this.compile(e,!0))}var rX={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function l1(t){return{anyOf:[t,rX]}}});var d1=k(h_=>{"use strict";Object.defineProperty(h_,"__esModule",{value:!0});var nX={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};h_.default=nX});var fm=k(po=>{"use strict";Object.defineProperty(po,"__esModule",{value:!0});po.callRef=po.getValidate=void 0;var iX=Zl(),f1=bn(),Ur=ve(),Ua=vn(),p1=eu(),um=we(),sX={keyword:"$ref",schemaType:"string",code(t){let{gen:e,schema:r,it:n}=t,{baseId:i,schemaEnv:s,validateName:o,opts:a,self:c}=n,{root:l}=s;if((r==="#"||r==="#/")&&i===l.baseId)return d();let u=p1.resolveRef.call(c,l,i,r);if(u===void 0)throw new iX.default(n.opts.uriResolver,i,r);if(u instanceof p1.SchemaEnv)return f(u);return p(u);function d(){if(s===l)return dm(t,o,s,s.$async);let g=e.scopeValue("root",{ref:l});return dm(t,(0,Ur._)`${g}.validate`,l,l.$async)}function f(g){let h=h1(t,g);dm(t,h,g,g.$async)}function p(g){let h=e.scopeValue("schema",a.code.source===!0?{ref:g,code:(0,Ur.stringify)(g)}:{ref:g}),T=e.name("valid"),S=t.subschema({schema:g,dataTypes:[],schemaPath:Ur.nil,topSchemaRef:h,errSchemaPath:r},T);t.mergeEvaluated(S),t.ok(T)}}};function h1(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,Ur._)`${r.scopeValue("wrapper",{ref:e})}.validate`}po.getValidate=h1;function dm(t,e,r,n){let{gen:i,it:s}=t,{allErrors:o,schemaEnv:a,opts:c}=s,l=c.passContext?Ua.default.this:Ur.nil;n?u():d();function u(){if(!a.$async)throw new Error("async schema referenced by sync schema");let g=i.let("valid");i.try(()=>{i.code((0,Ur._)`await ${(0,f1.callValidateCode)(t,e,l)}`),p(e),o||i.assign(g,!0)},h=>{i.if((0,Ur._)`!(${h} instanceof ${s.ValidationError})`,()=>i.throw(h)),f(h),o||i.assign(g,!1)}),t.ok(g)}function d(){t.result((0,f1.callValidateCode)(t,e,l),()=>p(e),()=>f(e))}function f(g){let h=(0,Ur._)`${g}.errors`;i.assign(Ua.default.vErrors,(0,Ur._)`${Ua.default.vErrors} === null ? ${h} : ${Ua.default.vErrors}.concat(${h})`),i.assign(Ua.default.errors,(0,Ur._)`${Ua.default.vErrors}.length`)}function p(g){var h;if(!s.opts.unevaluated)return;let T=(h=r?.validate)===null||h===void 0?void 0:h.evaluated;if(s.props!==!0)if(T&&!T.dynamicProps)T.props!==void 0&&(s.props=um.mergeEvaluated.props(i,T.props,s.props));else{let S=i.var("props",(0,Ur._)`${g}.evaluated.props`);s.props=um.mergeEvaluated.props(i,S,s.props,Ur.Name)}if(s.items!==!0)if(T&&!T.dynamicItems)T.items!==void 0&&(s.items=um.mergeEvaluated.items(i,T.items,s.items));else{let S=i.var("items",(0,Ur._)`${g}.evaluated.items`);s.items=um.mergeEvaluated.items(i,S,s.items,Ur.Name)}}}po.callRef=dm;po.default=sX});var m1=k(m_=>{"use strict";Object.defineProperty(m_,"__esModule",{value:!0});var oX=d1(),aX=fm(),cX=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",oX.default,aX.default];m_.default=cX});var g1=k(g_=>{"use strict";Object.defineProperty(g_,"__esModule",{value:!0});var pm=ve(),Cs=pm.operators,hm={maximum:{okStr:"<=",ok:Cs.LTE,fail:Cs.GT},minimum:{okStr:">=",ok:Cs.GTE,fail:Cs.LT},exclusiveMaximum:{okStr:"<",ok:Cs.LT,fail:Cs.GTE},exclusiveMinimum:{okStr:">",ok:Cs.GT,fail:Cs.LTE}},lX={message:({keyword:t,schemaCode:e})=>(0,pm.str)`must be ${hm[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,pm._)`{comparison: ${hm[t].okStr}, limit: ${e}}`},uX={keyword:Object.keys(hm),type:"number",schemaType:"number",$data:!0,error:lX,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,pm._)`${r} ${hm[e].fail} ${n} || isNaN(${r})`)}};g_.default=uX});var y1=k(y_=>{"use strict";Object.defineProperty(y_,"__esModule",{value:!0});var su=ve(),dX={message:({schemaCode:t})=>(0,su.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,su._)`{multipleOf: ${t}}`},fX={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:dX,code(t){let{gen:e,data:r,schemaCode:n,it:i}=t,s=i.opts.multipleOfPrecision,o=e.let("res"),a=s?(0,su._)`Math.abs(Math.round(${o}) - ${o}) > 1e-${s}`:(0,su._)`${o} !== parseInt(${o})`;t.fail$data((0,su._)`(${n} === 0 || (${o} = ${r}/${n}, ${a}))`)}};y_.default=fX});var v1=k(T_=>{"use strict";Object.defineProperty(T_,"__esModule",{value:!0});function T1(t){let e=t.length,r=0,n=0,i;for(;n<e;)r++,i=t.charCodeAt(n++),i>=55296&&i<=56319&&n<e&&(i=t.charCodeAt(n),(i&64512)===56320&&n++);return r}T_.default=T1;T1.code='require("ajv/dist/runtime/ucs2length").default'});var b1=k(v_=>{"use strict";Object.defineProperty(v_,"__esModule",{value:!0});var ho=ve(),pX=we(),hX=v1(),mX={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,ho.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,ho._)`{limit: ${t}}`},gX={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:mX,code(t){let{keyword:e,data:r,schemaCode:n,it:i}=t,s=e==="maxLength"?ho.operators.GT:ho.operators.LT,o=i.opts.unicode===!1?(0,ho._)`${r}.length`:(0,ho._)`${(0,pX.useFunc)(t.gen,hX.default)}(${r})`;t.fail$data((0,ho._)`${o} ${s} ${n}`)}};v_.default=gX});var _1=k(b_=>{"use strict";Object.defineProperty(b_,"__esModule",{value:!0});var yX=bn(),mm=ve(),TX={message:({schemaCode:t})=>(0,mm.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,mm._)`{pattern: ${t}}`},vX={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:TX,code(t){let{data:e,$data:r,schema:n,schemaCode:i,it:s}=t,o=s.opts.unicodeRegExp?"u":"",a=r?(0,mm._)`(new RegExp(${i}, ${o}))`:(0,yX.usePattern)(t,n);t.fail$data((0,mm._)`!${a}.test(${e})`)}};b_.default=vX});var S1=k(__=>{"use strict";Object.defineProperty(__,"__esModule",{value:!0});var ou=ve(),bX={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,ou.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,ou._)`{limit: ${t}}`},_X={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:bX,code(t){let{keyword:e,data:r,schemaCode:n}=t,i=e==="maxProperties"?ou.operators.GT:ou.operators.LT;t.fail$data((0,ou._)`Object.keys(${r}).length ${i} ${n}`)}};__.default=_X});var N1=k(S_=>{"use strict";Object.defineProperty(S_,"__esModule",{value:!0});var au=bn(),cu=ve(),SX=we(),NX={message:({params:{missingProperty:t}})=>(0,cu.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,cu._)`{missingProperty: ${t}}`},kX={keyword:"required",type:"object",schemaType:"array",$data:!0,error:NX,code(t){let{gen:e,schema:r,schemaCode:n,data:i,$data:s,it:o}=t,{opts:a}=o;if(!s&&r.length===0)return;let c=r.length>=a.loopRequired;if(o.allErrors?l():u(),a.strictRequired){let p=t.parentSchema.properties,{definedProperties:g}=t.it;for(let h of r)if(p?.[h]===void 0&&!g.has(h)){let T=o.schemaEnv.baseId+o.errSchemaPath,S=`required property "${h}" is not defined at "${T}" (strictRequired)`;(0,SX.checkStrictMode)(o,S,o.opts.strictRequired)}}function l(){if(c||s)t.block$data(cu.nil,d);else for(let p of r)(0,au.checkReportMissingProp)(t,p)}function u(){let p=e.let("missing");if(c||s){let g=e.let("valid",!0);t.block$data(g,()=>f(p,g)),t.ok(g)}else e.if((0,au.checkMissingProp)(t,r,p)),(0,au.reportMissingProp)(t,p),e.else()}function d(){e.forOf("prop",n,p=>{t.setParams({missingProperty:p}),e.if((0,au.noPropertyInData)(e,i,p,a.ownProperties),()=>t.error())})}function f(p,g){t.setParams({missingProperty:p}),e.forOf(p,n,()=>{e.assign(g,(0,au.propertyInData)(e,i,p,a.ownProperties)),e.if((0,cu.not)(g),()=>{t.error(),e.break()})},cu.nil)}}};S_.default=kX});var k1=k(N_=>{"use strict";Object.defineProperty(N_,"__esModule",{value:!0});var lu=ve(),RX={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,lu.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,lu._)`{limit: ${t}}`},PX={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:RX,code(t){let{keyword:e,data:r,schemaCode:n}=t,i=e==="maxItems"?lu.operators.GT:lu.operators.LT;t.fail$data((0,lu._)`${r}.length ${i} ${n}`)}};N_.default=PX});var gm=k(k_=>{"use strict";Object.defineProperty(k_,"__esModule",{value:!0});var R1=Yb();R1.code='require("ajv/dist/runtime/equal").default';k_.default=R1});var P1=k(P_=>{"use strict";Object.defineProperty(P_,"__esModule",{value:!0});var R_=Kl(),rr=ve(),wX=we(),EX=gm(),DX={message:({params:{i:t,j:e}})=>(0,rr.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,rr._)`{i: ${t}, j: ${e}}`},CX={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:DX,code(t){let{gen:e,data:r,$data:n,schema:i,parentSchema:s,schemaCode:o,it:a}=t;if(!n&&!i)return;let c=e.let("valid"),l=s.items?(0,R_.getSchemaTypes)(s.items):[];t.block$data(c,u,(0,rr._)`${o} === false`),t.ok(c);function u(){let g=e.let("i",(0,rr._)`${r}.length`),h=e.let("j");t.setParams({i:g,j:h}),e.assign(c,!0),e.if((0,rr._)`${g} > 1`,()=>(d()?f:p)(g,h))}function d(){return l.length>0&&!l.some(g=>g==="object"||g==="array")}function f(g,h){let T=e.name("item"),S=(0,R_.checkDataTypes)(l,T,a.opts.strictNumbers,R_.DataType.Wrong),_=e.const("indices",(0,rr._)`{}`);e.for((0,rr._)`;${g}--;`,()=>{e.let(T,(0,rr._)`${r}[${g}]`),e.if(S,(0,rr._)`continue`),l.length>1&&e.if((0,rr._)`typeof ${T} == "string"`,(0,rr._)`${T} += "_"`),e.if((0,rr._)`typeof ${_}[${T}] == "number"`,()=>{e.assign(h,(0,rr._)`${_}[${T}]`),t.error(),e.assign(c,!1).break()}).code((0,rr._)`${_}[${T}] = ${g}`)})}function p(g,h){let T=(0,wX.useFunc)(e,EX.default),S=e.name("outer");e.label(S).for((0,rr._)`;${g}--;`,()=>e.for((0,rr._)`${h} = ${g}; ${h}--;`,()=>e.if((0,rr._)`${T}(${r}[${g}], ${r}[${h}])`,()=>{t.error(),e.assign(c,!1).break(S)})))}}};P_.default=CX});var w1=k(E_=>{"use strict";Object.defineProperty(E_,"__esModule",{value:!0});var w_=ve(),AX=we(),IX=gm(),OX={message:"must be equal to constant",params:({schemaCode:t})=>(0,w_._)`{allowedValue: ${t}}`},MX={keyword:"const",$data:!0,error:OX,code(t){let{gen:e,data:r,$data:n,schemaCode:i,schema:s}=t;n||s&&typeof s=="object"?t.fail$data((0,w_._)`!${(0,AX.useFunc)(e,IX.default)}(${r}, ${i})`):t.fail((0,w_._)`${s} !== ${r}`)}};E_.default=MX});var E1=k(D_=>{"use strict";Object.defineProperty(D_,"__esModule",{value:!0});var uu=ve(),xX=we(),LX=gm(),qX={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,uu._)`{allowedValues: ${t}}`},$X={keyword:"enum",schemaType:"array",$data:!0,error:qX,code(t){let{gen:e,data:r,$data:n,schema:i,schemaCode:s,it:o}=t;if(!n&&i.length===0)throw new Error("enum must have non-empty array");let a=i.length>=o.opts.loopEnum,c,l=()=>c??(c=(0,xX.useFunc)(e,LX.default)),u;if(a||n)u=e.let("valid"),t.block$data(u,d);else{if(!Array.isArray(i))throw new Error("ajv implementation error");let p=e.const("vSchema",s);u=(0,uu.or)(...i.map((g,h)=>f(p,h)))}t.pass(u);function d(){e.assign(u,!1),e.forOf("v",s,p=>e.if((0,uu._)`${l()}(${r}, ${p})`,()=>e.assign(u,!0).break()))}function f(p,g){let h=i[g];return typeof h=="object"&&h!==null?(0,uu._)`${l()}(${r}, ${p}[${g}])`:(0,uu._)`${r} === ${h}`}}};D_.default=$X});var D1=k(C_=>{"use strict";Object.defineProperty(C_,"__esModule",{value:!0});var BX=g1(),FX=y1(),jX=b1(),UX=_1(),HX=S1(),VX=N1(),zX=k1(),WX=P1(),GX=w1(),KX=E1(),YX=[BX.default,FX.default,jX.default,UX.default,HX.default,VX.default,zX.default,WX.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},GX.default,KX.default];C_.default=YX});var I_=k(du=>{"use strict";Object.defineProperty(du,"__esModule",{value:!0});du.validateAdditionalItems=void 0;var mo=ve(),A_=we(),XX={message:({params:{len:t}})=>(0,mo.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,mo._)`{limit: ${t}}`},JX={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:XX,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,A_.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}C1(t,n)}};function C1(t,e){let{gen:r,schema:n,data:i,keyword:s,it:o}=t;o.items=!0;let a=r.const("len",(0,mo._)`${i}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,mo._)`${a} <= ${e.length}`);else if(typeof n=="object"&&!(0,A_.alwaysValidSchema)(o,n)){let l=r.var("valid",(0,mo._)`${a} <= ${e.length}`);r.if((0,mo.not)(l),()=>c(l)),t.ok(l)}function c(l){r.forRange("i",e.length,a,u=>{t.subschema({keyword:s,dataProp:u,dataPropType:A_.Type.Num},l),o.allErrors||r.if((0,mo.not)(l),()=>r.break())})}}du.validateAdditionalItems=C1;du.default=JX});var O_=k(fu=>{"use strict";Object.defineProperty(fu,"__esModule",{value:!0});fu.validateTuple=void 0;var A1=ve(),ym=we(),QX=bn(),ZX={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return I1(t,"additionalItems",e);r.items=!0,!(0,ym.alwaysValidSchema)(r,e)&&t.ok((0,QX.validateArray)(t))}};function I1(t,e,r=t.schema){let{gen:n,parentSchema:i,data:s,keyword:o,it:a}=t;u(i),a.opts.unevaluated&&r.length&&a.items!==!0&&(a.items=ym.mergeEvaluated.items(n,r.length,a.items));let c=n.name("valid"),l=n.const("len",(0,A1._)`${s}.length`);r.forEach((d,f)=>{(0,ym.alwaysValidSchema)(a,d)||(n.if((0,A1._)`${l} > ${f}`,()=>t.subschema({keyword:o,schemaProp:f,dataProp:f},c)),t.ok(c))});function u(d){let{opts:f,errSchemaPath:p}=a,g=r.length,h=g===d.minItems&&(g===d.maxItems||d[e]===!1);if(f.strictTuples&&!h){let T=`"${o}" is ${g}-tuple, but minItems or maxItems/${e} are not specified or different at path "${p}"`;(0,ym.checkStrictMode)(a,T,f.strictTuples)}}}fu.validateTuple=I1;fu.default=ZX});var O1=k(M_=>{"use strict";Object.defineProperty(M_,"__esModule",{value:!0});var e4=O_(),t4={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,e4.validateTuple)(t,"items")};M_.default=t4});var x1=k(x_=>{"use strict";Object.defineProperty(x_,"__esModule",{value:!0});var M1=ve(),r4=we(),n4=bn(),i4=I_(),s4={message:({params:{len:t}})=>(0,M1.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,M1._)`{limit: ${t}}`},o4={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:s4,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:i}=r;n.items=!0,!(0,r4.alwaysValidSchema)(n,e)&&(i?(0,i4.validateAdditionalItems)(t,i):t.ok((0,n4.validateArray)(t)))}};x_.default=o4});var L1=k(L_=>{"use strict";Object.defineProperty(L_,"__esModule",{value:!0});var Sn=ve(),Tm=we(),a4={message:({params:{min:t,max:e}})=>e===void 0?(0,Sn.str)`must contain at least ${t} valid item(s)`:(0,Sn.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,Sn._)`{minContains: ${t}}`:(0,Sn._)`{minContains: ${t}, maxContains: ${e}}`},c4={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:a4,code(t){let{gen:e,schema:r,parentSchema:n,data:i,it:s}=t,o,a,{minContains:c,maxContains:l}=n;s.opts.next?(o=c===void 0?1:c,a=l):o=1;let u=e.const("len",(0,Sn._)`${i}.length`);if(t.setParams({min:o,max:a}),a===void 0&&o===0){(0,Tm.checkStrictMode)(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&o>a){(0,Tm.checkStrictMode)(s,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,Tm.alwaysValidSchema)(s,r)){let h=(0,Sn._)`${u} >= ${o}`;a!==void 0&&(h=(0,Sn._)`${h} && ${u} <= ${a}`),t.pass(h);return}s.items=!0;let d=e.name("valid");a===void 0&&o===1?p(d,()=>e.if(d,()=>e.break())):o===0?(e.let(d,!0),a!==void 0&&e.if((0,Sn._)`${i}.length > 0`,f)):(e.let(d,!1),f()),t.result(d,()=>t.reset());function f(){let h=e.name("_valid"),T=e.let("count",0);p(h,()=>e.if(h,()=>g(T)))}function p(h,T){e.forRange("i",0,u,S=>{t.subschema({keyword:"contains",dataProp:S,dataPropType:Tm.Type.Num,compositeRule:!0},h),T()})}function g(h){e.code((0,Sn._)`${h}++`),a===void 0?e.if((0,Sn._)`${h} >= ${o}`,()=>e.assign(d,!0).break()):(e.if((0,Sn._)`${h} > ${a}`,()=>e.assign(d,!1).break()),o===1?e.assign(d,!0):e.if((0,Sn._)`${h} >= ${o}`,()=>e.assign(d,!0)))}}};L_.default=c4});var vm=k(mi=>{"use strict";Object.defineProperty(mi,"__esModule",{value:!0});mi.validateSchemaDeps=mi.validatePropertyDeps=mi.error=void 0;var q_=ve(),l4=we(),pu=bn();mi.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,q_.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,q_._)`{property: ${t},
179
+ || ${o} === "boolean" || ${i} === null`).assign(a,(0,be._)`[${i}]`)}}}function zK({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,be._)`${e} !== undefined`,()=>t.assign((0,be._)`${e}[${r}]`,n))}function Hb(t,e,r,n=qa.Correct){let i=n===qa.Correct?be.operators.EQ:be.operators.NEQ,s;switch(t){case"null":return(0,be._)`${e} ${i} null`;case"array":s=(0,be._)`Array.isArray(${e})`;break;case"object":s=(0,be._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":s=o((0,be._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":s=o();break;default:return(0,be._)`typeof ${e} ${i} ${t}`}return n===qa.Correct?s:(0,be.not)(s);function o(a=be.nil){return(0,be.and)((0,be._)`typeof ${e} == "number"`,a,r?(0,be._)`isFinite(${e})`:be.nil)}}gr.checkDataType=Hb;function Vb(t,e,r,n){if(t.length===1)return Hb(t[0],e,r,n);let i,s=(0,rq.toHash)(t);if(s.array&&s.object){let o=(0,be._)`typeof ${e} != "object"`;i=s.null?o:(0,be._)`!${e} || ${o}`,delete s.null,delete s.array,delete s.object}else i=be.nil;s.number&&delete s.integer;for(let o in s)i=(0,be.and)(i,Hb(o,e,r,n));return i}gr.checkDataTypes=Vb;var WK={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,be._)`{type: ${t}}`:(0,be._)`{type: ${e}}`};function zb(t){let e=GK(t);(0,FK.reportError)(e,WK)}gr.reportTypeError=zb;function GK(t){let{gen:e,data:r,schema:n}=t,i=(0,rq.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:i,schemaValue:i,parentSchema:n,params:{},it:t}}});var oq=k(em=>{"use strict";Object.defineProperty(em,"__esModule",{value:!0});em.assignDefaults=void 0;var $a=ve(),KK=we();function YK(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let i in r)sq(t,i,r[i].default);else e==="array"&&Array.isArray(n)&&n.forEach((i,s)=>sq(t,s,i.default))}em.assignDefaults=YK;function sq(t,e,r){let{gen:n,compositeRule:i,data:s,opts:o}=t;if(r===void 0)return;let a=(0,$a._)`${s}${(0,$a.getProperty)(e)}`;if(i){(0,KK.checkStrictMode)(t,`default is ignored for: ${a}`);return}let c=(0,$a._)`${a} === undefined`;o.useDefaults==="empty"&&(c=(0,$a._)`${c} || ${a} === null || ${a} === ""`),n.if(c,(0,$a._)`${a} = ${(0,$a.stringify)(r)}`)}});var bn=k(et=>{"use strict";Object.defineProperty(et,"__esModule",{value:!0});et.validateUnion=et.validateArray=et.usePattern=et.callValidateCode=et.schemaProperties=et.allSchemaProperties=et.noPropertyInData=et.propertyInData=et.isOwnProperty=et.hasPropFunc=et.reportMissingProp=et.checkMissingProp=et.checkReportMissingProp=void 0;var mt=ve(),Wb=we(),Ps=vn(),XK=we();function JK(t,e){let{gen:r,data:n,it:i}=t;r.if(Kb(r,n,e,i.opts.ownProperties),()=>{t.setParams({missingProperty:(0,mt._)`${e}`},!0),t.error()})}et.checkReportMissingProp=JK;function QK({gen:t,data:e,it:{opts:r}},n,i){return(0,mt.or)(...n.map(s=>(0,mt.and)(Kb(t,e,s,r.ownProperties),(0,mt._)`${i} = ${s}`)))}et.checkMissingProp=QK;function ZK(t,e){t.setParams({missingProperty:e},!0),t.error()}et.reportMissingProp=ZK;function aq(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,mt._)`Object.prototype.hasOwnProperty`})}et.hasPropFunc=aq;function Gb(t,e,r){return(0,mt._)`${aq(t)}.call(${e}, ${r})`}et.isOwnProperty=Gb;function eY(t,e,r,n){let i=(0,mt._)`${e}${(0,mt.getProperty)(r)} !== undefined`;return n?(0,mt._)`${i} && ${Gb(t,e,r)}`:i}et.propertyInData=eY;function Kb(t,e,r,n){let i=(0,mt._)`${e}${(0,mt.getProperty)(r)} === undefined`;return n?(0,mt.or)(i,(0,mt.not)(Gb(t,e,r))):i}et.noPropertyInData=Kb;function cq(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}et.allSchemaProperties=cq;function tY(t,e){return cq(e).filter(r=>!(0,Wb.alwaysValidSchema)(t,e[r]))}et.schemaProperties=tY;function rY({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:i,errorPath:s},it:o},a,c,l){let u=l?(0,mt._)`${t}, ${e}, ${n}${i}`:e,d=[[Ps.default.instancePath,(0,mt.strConcat)(Ps.default.instancePath,s)],[Ps.default.parentData,o.parentData],[Ps.default.parentDataProperty,o.parentDataProperty],[Ps.default.rootData,Ps.default.rootData]];o.opts.dynamicRef&&d.push([Ps.default.dynamicAnchors,Ps.default.dynamicAnchors]);let f=(0,mt._)`${u}, ${r.object(...d)}`;return c!==mt.nil?(0,mt._)`${a}.call(${c}, ${f})`:(0,mt._)`${a}(${f})`}et.callValidateCode=rY;var nY=(0,mt._)`new RegExp`;function iY({gen:t,it:{opts:e}},r){let n=e.unicodeRegExp?"u":"",{regExp:i}=e.code,s=i(r,n);return t.scopeValue("pattern",{key:s.toString(),ref:s,code:(0,mt._)`${i.code==="new RegExp"?nY:(0,XK.useFunc)(t,i)}(${r}, ${n})`})}et.usePattern=iY;function sY(t){let{gen:e,data:r,keyword:n,it:i}=t,s=e.name("valid");if(i.allErrors){let a=e.let("valid",!0);return o(()=>e.assign(a,!1)),a}return e.var(s,!0),o(()=>e.break()),s;function o(a){let c=e.const("len",(0,mt._)`${r}.length`);e.forRange("i",0,c,l=>{t.subschema({keyword:n,dataProp:l,dataPropType:Wb.Type.Num},s),e.if((0,mt.not)(s),a)})}}et.validateArray=sY;function oY(t){let{gen:e,schema:r,keyword:n,it:i}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(c=>(0,Wb.alwaysValidSchema)(i,c))&&!i.opts.unevaluated)return;let o=e.let("valid",!1),a=e.name("_valid");e.block(()=>r.forEach((c,l)=>{let u=t.subschema({keyword:n,schemaProp:l,compositeRule:!0},a);e.assign(o,(0,mt._)`${o} || ${a}`),t.mergeValidEvaluated(u,a)||e.if((0,mt.not)(o))})),t.result(o,()=>t.reset(),()=>t.error(!0))}et.validateUnion=oY});var dq=k(fi=>{"use strict";Object.defineProperty(fi,"__esModule",{value:!0});fi.validateKeywordUsage=fi.validSchemaType=fi.funcKeywordCode=fi.macroKeywordCode=void 0;var kr=ve(),uo=vn(),aY=bn(),cY=Gl();function lY(t,e){let{gen:r,keyword:n,schema:i,parentSchema:s,it:o}=t,a=e.macro.call(o.self,i,s,o),c=uq(r,n,a);o.opts.validateSchema!==!1&&o.self.validateSchema(a,!0);let l=r.name("valid");t.subschema({schema:a,schemaPath:kr.nil,errSchemaPath:`${o.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},l),t.pass(l,()=>t.error(!0))}fi.macroKeywordCode=lY;function uY(t,e){var r;let{gen:n,keyword:i,schema:s,parentSchema:o,$data:a,it:c}=t;fY(c,e);let l=!a&&e.compile?e.compile.call(c.self,s,o,c):e.validate,u=uq(n,i,l),d=n.let("valid");t.block$data(d,f),t.ok((r=e.valid)!==null&&r!==void 0?r:d);function f(){if(e.errors===!1)h(),e.modifying&&lq(t),T(()=>t.error());else{let S=e.async?p():g();e.modifying&&lq(t),T(()=>dY(t,S))}}function p(){let S=n.let("ruleErrs",null);return n.try(()=>h((0,kr._)`await `),_=>n.assign(d,!1).if((0,kr._)`${_} instanceof ${c.ValidationError}`,()=>n.assign(S,(0,kr._)`${_}.errors`),()=>n.throw(_))),S}function g(){let S=(0,kr._)`${u}.errors`;return n.assign(S,null),h(kr.nil),S}function h(S=e.async?(0,kr._)`await `:kr.nil){let _=c.opts.passContext?uo.default.this:uo.default.self,v=!("compile"in e&&!a||e.schema===!1);n.assign(d,(0,kr._)`${S}${(0,aY.callValidateCode)(t,u,_,v)}`,e.modifying)}function T(S){var _;n.if((0,kr.not)((_=e.valid)!==null&&_!==void 0?_:d),S)}}fi.funcKeywordCode=uY;function lq(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,kr._)`${n.parentData}[${n.parentDataProperty}]`))}function dY(t,e){let{gen:r}=t;r.if((0,kr._)`Array.isArray(${e})`,()=>{r.assign(uo.default.vErrors,(0,kr._)`${uo.default.vErrors} === null ? ${e} : ${uo.default.vErrors}.concat(${e})`).assign(uo.default.errors,(0,kr._)`${uo.default.vErrors}.length`),(0,cY.extendErrors)(t)},()=>t.error())}function fY({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function uq(t,e,r){if(r===void 0)throw new Error(`keyword "${e}" failed to compile`);return t.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,kr.stringify)(r)})}function pY(t,e,r=!1){return!e.length||e.some(n=>n==="array"?Array.isArray(t):n==="object"?t&&typeof t=="object"&&!Array.isArray(t):typeof t==n||r&&typeof t>"u")}fi.validSchemaType=pY;function hY({schema:t,opts:e,self:r,errSchemaPath:n},i,s){if(Array.isArray(i.keyword)?!i.keyword.includes(s):i.keyword!==s)throw new Error("ajv implementation error");let o=i.dependencies;if(o?.some(a=>!Object.prototype.hasOwnProperty.call(t,a)))throw new Error(`parent schema must have dependencies of ${s}: ${o.join(",")}`);if(i.validateSchema&&!i.validateSchema(t[s])){let c=`keyword "${s}" value is invalid at path "${n}": `+r.errorsText(i.validateSchema.errors);if(e.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}fi.validateKeywordUsage=hY});var pq=k(ws=>{"use strict";Object.defineProperty(ws,"__esModule",{value:!0});ws.extendSubschemaMode=ws.extendSubschemaData=ws.getSubschema=void 0;var pi=ve(),fq=we();function mY(t,{keyword:e,schemaProp:r,schema:n,schemaPath:i,errSchemaPath:s,topSchemaRef:o}){if(e!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(e!==void 0){let a=t.schema[e];return r===void 0?{schema:a,schemaPath:(0,pi._)`${t.schemaPath}${(0,pi.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:a[r],schemaPath:(0,pi._)`${t.schemaPath}${(0,pi.getProperty)(e)}${(0,pi.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,fq.escapeFragment)(r)}`}}if(n!==void 0){if(i===void 0||s===void 0||o===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:i,topSchemaRef:o,errSchemaPath:s}}throw new Error('either "keyword" or "schema" must be passed')}ws.getSubschema=mY;function gY(t,e,{dataProp:r,dataPropType:n,data:i,dataTypes:s,propertyName:o}){if(i!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:a}=e;if(r!==void 0){let{errorPath:l,dataPathArr:u,opts:d}=e,f=a.let("data",(0,pi._)`${e.data}${(0,pi.getProperty)(r)}`,!0);c(f),t.errorPath=(0,pi.str)`${l}${(0,fq.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,pi._)`${r}`,t.dataPathArr=[...u,t.parentDataProperty]}if(i!==void 0){let l=i instanceof pi.Name?i:a.let("data",i,!0);c(l),o!==void 0&&(t.propertyName=o)}s&&(t.dataTypes=s);function c(l){t.data=l,t.dataLevel=e.dataLevel+1,t.dataTypes=[],e.definedProperties=new Set,t.parentData=e.data,t.dataNames=[...e.dataNames,l]}}ws.extendSubschemaData=gY;function yY(t,{jtdDiscriminator:e,jtdMetadata:r,compositeRule:n,createErrors:i,allErrors:s}){n!==void 0&&(t.compositeRule=n),i!==void 0&&(t.createErrors=i),s!==void 0&&(t.allErrors=s),t.jtdDiscriminator=e,t.jtdMetadata=r}ws.extendSubschemaMode=yY});var Yb=k((wRe,hq)=>{"use strict";hq.exports=function t(e,r){if(e===r)return!0;if(e&&r&&typeof e=="object"&&typeof r=="object"){if(e.constructor!==r.constructor)return!1;var n,i,s;if(Array.isArray(e)){if(n=e.length,n!=r.length)return!1;for(i=n;i--!==0;)if(!t(e[i],r[i]))return!1;return!0}if(e.constructor===RegExp)return e.source===r.source&&e.flags===r.flags;if(e.valueOf!==Object.prototype.valueOf)return e.valueOf()===r.valueOf();if(e.toString!==Object.prototype.toString)return e.toString()===r.toString();if(s=Object.keys(e),n=s.length,n!==Object.keys(r).length)return!1;for(i=n;i--!==0;)if(!Object.prototype.hasOwnProperty.call(r,s[i]))return!1;for(i=n;i--!==0;){var o=s[i];if(!t(e[o],r[o]))return!1}return!0}return e!==e&&r!==r}});var gq=k((ERe,mq)=>{"use strict";var Es=mq.exports=function(t,e,r){typeof e=="function"&&(r=e,e={}),r=e.cb||r;var n=typeof r=="function"?r:r.pre||function(){},i=r.post||function(){};tm(e,n,i,t,"",t)};Es.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};Es.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};Es.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};Es.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function tm(t,e,r,n,i,s,o,a,c,l){if(n&&typeof n=="object"&&!Array.isArray(n)){e(n,i,s,o,a,c,l);for(var u in n){var d=n[u];if(Array.isArray(d)){if(u in Es.arrayKeywords)for(var f=0;f<d.length;f++)tm(t,e,r,d[f],i+"/"+u+"/"+f,s,i,u,n,f)}else if(u in Es.propsKeywords){if(d&&typeof d=="object")for(var p in d)tm(t,e,r,d[p],i+"/"+u+"/"+TY(p),s,i,u,n,p)}else(u in Es.keywords||t.allKeys&&!(u in Es.skipKeywords))&&tm(t,e,r,d,i+"/"+u,s,i,u,n)}r(n,i,s,o,a,c,l)}}function TY(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var Yl=k(Ur=>{"use strict";Object.defineProperty(Ur,"__esModule",{value:!0});Ur.getSchemaRefs=Ur.resolveUrl=Ur.normalizeId=Ur._getFullPath=Ur.getFullPath=Ur.inlineRef=void 0;var vY=we(),bY=Yb(),_Y=gq(),SY=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function NY(t,e=!0){return typeof t=="boolean"?!0:e===!0?!Xb(t):e?yq(t)<=e:!1}Ur.inlineRef=NY;var kY=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Xb(t){for(let e in t){if(kY.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(Xb)||typeof r=="object"&&Xb(r))return!0}return!1}function yq(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!SY.has(r)&&(typeof t[r]=="object"&&(0,vY.eachItem)(t[r],n=>e+=yq(n)),e===1/0))return 1/0}return e}function Tq(t,e="",r){r!==!1&&(e=Ba(e));let n=t.parse(e);return vq(t,n)}Ur.getFullPath=Tq;function vq(t,e){return t.serialize(e).split("#")[0]+"#"}Ur._getFullPath=vq;var RY=/#\/?$/;function Ba(t){return t?t.replace(RY,""):""}Ur.normalizeId=Ba;function PY(t,e,r){return r=Ba(r),t.resolve(e,r)}Ur.resolveUrl=PY;var wY=/^[a-z_][-a-z0-9._]*$/i;function EY(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,i=Ba(t[r]||e),s={"":i},o=Tq(n,i,!1),a={},c=new Set;return _Y(t,{allKeys:!0},(d,f,p,g)=>{if(g===void 0)return;let h=o+f,T=s[g];typeof d[r]=="string"&&(T=S.call(this,d[r])),_.call(this,d.$anchor),_.call(this,d.$dynamicAnchor),s[f]=T;function S(v){let R=this.opts.uriResolver.resolve;if(v=Ba(T?R(T,v):v),c.has(v))throw u(v);c.add(v);let D=this.refs[v];return typeof D=="string"&&(D=this.refs[D]),typeof D=="object"?l(d,D.schema,v):v!==Ba(h)&&(v[0]==="#"?(l(d,a[v],v),a[v]=d):this.refs[v]=h),v}function _(v){if(typeof v=="string"){if(!wY.test(v))throw new Error(`invalid anchor "${v}"`);S.call(this,`#${v}`)}}}),a;function l(d,f,p){if(f!==void 0&&!bY(d,f))throw u(p)}function u(d){return new Error(`reference "${d}" resolves to more than one schema`)}}Ur.getSchemaRefs=EY});var Ql=k(Ds=>{"use strict";Object.defineProperty(Ds,"__esModule",{value:!0});Ds.getData=Ds.KeywordCxt=Ds.validateFunctionCode=void 0;var kq=ZL(),bq=Kl(),Qb=Ub(),rm=Kl(),DY=oq(),Jl=dq(),Jb=pq(),se=ve(),he=vn(),CY=Yl(),Li=we(),Xl=Gl();function AY(t){if(wq(t)&&(Eq(t),Pq(t))){MY(t);return}Rq(t,()=>(0,kq.topBoolOrEmptySchema)(t))}Ds.validateFunctionCode=AY;function Rq({gen:t,validateName:e,schema:r,schemaEnv:n,opts:i},s){i.code.es5?t.func(e,(0,se._)`${he.default.data}, ${he.default.valCxt}`,n.$async,()=>{t.code((0,se._)`"use strict"; ${_q(r,i)}`),OY(t,i),t.code(s)}):t.func(e,(0,se._)`${he.default.data}, ${IY(i)}`,n.$async,()=>t.code(_q(r,i)).code(s))}function IY(t){return(0,se._)`{${he.default.instancePath}="", ${he.default.parentData}, ${he.default.parentDataProperty}, ${he.default.rootData}=${he.default.data}${t.dynamicRef?(0,se._)`, ${he.default.dynamicAnchors}={}`:se.nil}}={}`}function OY(t,e){t.if(he.default.valCxt,()=>{t.var(he.default.instancePath,(0,se._)`${he.default.valCxt}.${he.default.instancePath}`),t.var(he.default.parentData,(0,se._)`${he.default.valCxt}.${he.default.parentData}`),t.var(he.default.parentDataProperty,(0,se._)`${he.default.valCxt}.${he.default.parentDataProperty}`),t.var(he.default.rootData,(0,se._)`${he.default.valCxt}.${he.default.rootData}`),e.dynamicRef&&t.var(he.default.dynamicAnchors,(0,se._)`${he.default.valCxt}.${he.default.dynamicAnchors}`)},()=>{t.var(he.default.instancePath,(0,se._)`""`),t.var(he.default.parentData,(0,se._)`undefined`),t.var(he.default.parentDataProperty,(0,se._)`undefined`),t.var(he.default.rootData,he.default.data),e.dynamicRef&&t.var(he.default.dynamicAnchors,(0,se._)`{}`)})}function MY(t){let{schema:e,opts:r,gen:n}=t;Rq(t,()=>{r.$comment&&e.$comment&&Cq(t),BY(t),n.let(he.default.vErrors,null),n.let(he.default.errors,0),r.unevaluated&&xY(t),Dq(t),UY(t)})}function xY(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,se._)`${r}.evaluated`),e.if((0,se._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,se._)`${t.evaluated}.props`,(0,se._)`undefined`)),e.if((0,se._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,se._)`${t.evaluated}.items`,(0,se._)`undefined`))}function _q(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,se._)`/*# sourceURL=${r} */`:se.nil}function LY(t,e){if(wq(t)&&(Eq(t),Pq(t))){qY(t,e);return}(0,kq.boolOrEmptySchema)(t,e)}function Pq({schema:t,self:e}){if(typeof t=="boolean")return!t;for(let r in t)if(e.RULES.all[r])return!0;return!1}function wq(t){return typeof t.schema!="boolean"}function qY(t,e){let{schema:r,gen:n,opts:i}=t;i.$comment&&r.$comment&&Cq(t),FY(t),jY(t);let s=n.const("_errs",he.default.errors);Dq(t,s),n.var(e,(0,se._)`${s} === ${he.default.errors}`)}function Eq(t){(0,Li.checkUnknownRules)(t),$Y(t)}function Dq(t,e){if(t.opts.jtd)return Sq(t,[],!1,e);let r=(0,bq.getSchemaTypes)(t.schema),n=(0,bq.coerceAndCheckDataType)(t,r);Sq(t,r,!n,e)}function $Y(t){let{schema:e,errSchemaPath:r,opts:n,self:i}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,Li.schemaHasRulesButRef)(e,i.RULES)&&i.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function BY(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,Li.checkStrictMode)(t,"default is ignored in the schema root")}function FY(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,CY.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function jY(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function Cq({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:i}){let s=r.$comment;if(i.$comment===!0)t.code((0,se._)`${he.default.self}.logger.log(${s})`);else if(typeof i.$comment=="function"){let o=(0,se.str)`${n}/$comment`,a=t.scopeValue("root",{ref:e.root});t.code((0,se._)`${he.default.self}.opts.$comment(${s}, ${o}, ${a}.schema)`)}}function UY(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:i,opts:s}=t;r.$async?e.if((0,se._)`${he.default.errors} === 0`,()=>e.return(he.default.data),()=>e.throw((0,se._)`new ${i}(${he.default.vErrors})`)):(e.assign((0,se._)`${n}.errors`,he.default.vErrors),s.unevaluated&&HY(t),e.return((0,se._)`${he.default.errors} === 0`))}function HY({gen:t,evaluated:e,props:r,items:n}){r instanceof se.Name&&t.assign((0,se._)`${e}.props`,r),n instanceof se.Name&&t.assign((0,se._)`${e}.items`,n)}function Sq(t,e,r,n){let{gen:i,schema:s,data:o,allErrors:a,opts:c,self:l}=t,{RULES:u}=l;if(s.$ref&&(c.ignoreKeywordsWithRef||!(0,Li.schemaHasRulesButRef)(s,u))){i.block(()=>Iq(t,"$ref",u.all.$ref.definition));return}c.jtd||VY(t,e),i.block(()=>{for(let f of u.rules)d(f);d(u.post)});function d(f){(0,Qb.shouldUseGroup)(s,f)&&(f.type?(i.if((0,rm.checkDataType)(f.type,o,c.strictNumbers)),Nq(t,f),e.length===1&&e[0]===f.type&&r&&(i.else(),(0,rm.reportTypeError)(t)),i.endIf()):Nq(t,f),a||i.if((0,se._)`${he.default.errors} === ${n||0}`))}}function Nq(t,e){let{gen:r,schema:n,opts:{useDefaults:i}}=t;i&&(0,DY.assignDefaults)(t,e.type),r.block(()=>{for(let s of e.rules)(0,Qb.shouldUseRule)(n,s)&&Iq(t,s.keyword,s.definition,e.type)})}function VY(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(zY(t,e),t.opts.allowUnionTypes||WY(t,e),GY(t,t.dataTypes))}function zY(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{Aq(t.dataTypes,r)||Zb(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),YY(t,e)}}function WY(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&Zb(t,"use allowUnionTypes to allow union type keyword")}function GY(t,e){let r=t.self.RULES.all;for(let n in r){let i=r[n];if(typeof i=="object"&&(0,Qb.shouldUseRule)(t.schema,i)){let{type:s}=i.definition;s.length&&!s.some(o=>KY(e,o))&&Zb(t,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function KY(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function Aq(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function YY(t,e){let r=[];for(let n of t.dataTypes)Aq(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function Zb(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,Li.checkStrictMode)(t,e,t.opts.strictTypes)}var nm=class{constructor(e,r,n){if((0,Jl.validateKeywordUsage)(e,r,n),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=n,this.data=e.data,this.schema=e.schema[n],this.$data=r.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,Li.schemaRefOrVal)(e,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=e.schema,this.params={},this.it=e,this.def=r,this.$data)this.schemaCode=e.gen.const("vSchema",Oq(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,Jl.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=e.gen.const("_errs",he.default.errors))}result(e,r,n){this.failResult((0,se.not)(e),r,n)}failResult(e,r,n){this.gen.if(e),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(e,r){this.failResult((0,se.not)(e),void 0,r)}fail(e){if(e===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(e),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:r}=this;this.fail((0,se._)`${r} !== undefined && (${(0,se.or)(this.invalid$data(),e)})`)}error(e,r,n){if(r){this.setParams(r),this._error(e,n),this.setParams({});return}this._error(e,n)}_error(e,r){(e?Xl.reportExtraError:Xl.reportError)(this,this.def.error,r)}$dataError(){(0,Xl.reportError)(this,this.def.$dataError||Xl.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,Xl.resetErrorsCount)(this.gen,this.errsCount)}ok(e){this.allErrors||this.gen.if(e)}setParams(e,r){r?Object.assign(this.params,e):this.params=e}block$data(e,r,n=se.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=se.nil,r=se.nil){if(!this.$data)return;let{gen:n,schemaCode:i,schemaType:s,def:o}=this;n.if((0,se.or)((0,se._)`${i} === undefined`,r)),e!==se.nil&&n.assign(e,!0),(s.length||o.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==se.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:i,it:s}=this;return(0,se.or)(o(),a());function o(){if(n.length){if(!(r instanceof se.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,se._)`${(0,rm.checkDataTypes)(c,r,s.opts.strictNumbers,rm.DataType.Wrong)}`}return se.nil}function a(){if(i.validateSchema){let c=e.scopeValue("validate$data",{ref:i.validateSchema});return(0,se._)`!${c}(${r})`}return se.nil}}subschema(e,r){let n=(0,Jb.getSubschema)(this.it,e);(0,Jb.extendSubschemaData)(n,this.it,e),(0,Jb.extendSubschemaMode)(n,e);let i={...this.it,...n,items:void 0,props:void 0};return LY(i,r),i}mergeEvaluated(e,r){let{it:n,gen:i}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=Li.mergeEvaluated.props(i,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=Li.mergeEvaluated.items(i,e.items,n.items,r)))}mergeValidEvaluated(e,r){let{it:n,gen:i}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return i.if(r,()=>this.mergeEvaluated(e,se.Name)),!0}};Ds.KeywordCxt=nm;function Iq(t,e,r,n){let i=new nm(t,r,e);"code"in r?r.code(i,n):i.$data&&r.validate?(0,Jl.funcKeywordCode)(i,r):"macro"in r?(0,Jl.macroKeywordCode)(i,r):(r.compile||r.validate)&&(0,Jl.funcKeywordCode)(i,r)}var XY=/^\/(?:[^~]|~0|~1)*$/,JY=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function Oq(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let i,s;if(t==="")return he.default.rootData;if(t[0]==="/"){if(!XY.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);i=t,s=he.default.rootData}else{let l=JY.exec(t);if(!l)throw new Error(`Invalid JSON-pointer: ${t}`);let u=+l[1];if(i=l[2],i==="#"){if(u>=e)throw new Error(c("property/index",u));return n[e-u]}if(u>e)throw new Error(c("data",u));if(s=r[e-u],!i)return s}let o=s,a=i.split("/");for(let l of a)l&&(s=(0,se._)`${s}${(0,se.getProperty)((0,Li.unescapeJsonPointer)(l))}`,o=(0,se._)`${o} && ${s}`);return o;function c(l,u){return`Cannot access ${l} ${u} levels up, current level is ${e}`}}Ds.getData=Oq});var im=k(t_=>{"use strict";Object.defineProperty(t_,"__esModule",{value:!0});var e_=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};t_.default=e_});var Zl=k(i_=>{"use strict";Object.defineProperty(i_,"__esModule",{value:!0});var r_=Yl(),n_=class extends Error{constructor(e,r,n,i){super(i||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,r_.resolveUrl)(e,r,n),this.missingSchema=(0,r_.normalizeId)((0,r_.getFullPath)(e,this.missingRef))}};i_.default=n_});var eu=k(_n=>{"use strict";Object.defineProperty(_n,"__esModule",{value:!0});_n.resolveSchema=_n.getCompilingSchema=_n.resolveRef=_n.compileSchema=_n.SchemaEnv=void 0;var Vn=ve(),QY=im(),fo=vn(),zn=Yl(),Mq=we(),ZY=Ql(),Fa=class{constructor(e){var r;this.refs={},this.dynamicAnchors={};let n;typeof e.schema=="object"&&(n=e.schema),this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=(r=e.baseId)!==null&&r!==void 0?r:(0,zn.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};_n.SchemaEnv=Fa;function o_(t){let e=xq.call(this,t);if(e)return e;let r=(0,zn.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:i}=this.opts.code,{ownProperties:s}=this.opts,o=new Vn.CodeGen(this.scope,{es5:n,lines:i,ownProperties:s}),a;t.$async&&(a=o.scopeValue("Error",{ref:QY.default,code:(0,Vn._)`require("ajv/dist/runtime/validation_error").default`}));let c=o.scopeName("validate");t.validateName=c;let l={gen:o,allErrors:this.opts.allErrors,data:fo.default.data,parentData:fo.default.parentData,parentDataProperty:fo.default.parentDataProperty,dataNames:[fo.default.data],dataPathArr:[Vn.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:o.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,Vn.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:a,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:Vn.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,Vn._)`""`,opts:this.opts,self:this},u;try{this._compilations.add(t),(0,ZY.validateFunctionCode)(l),o.optimize(this.opts.code.optimize);let d=o.toString();u=`${o.scopeRefs(fo.default.scope)}return ${d}`,this.opts.code.process&&(u=this.opts.code.process(u,t));let p=new Function(`${fo.default.self}`,`${fo.default.scope}`,u)(this,this.scope.get());if(this.scope.value(c,{ref:p}),p.errors=null,p.schema=t.schema,p.schemaEnv=t,t.$async&&(p.$async=!0),this.opts.code.source===!0&&(p.source={validateName:c,validateCode:d,scopeValues:o._values}),this.opts.unevaluated){let{props:g,items:h}=l;p.evaluated={props:g instanceof Vn.Name?void 0:g,items:h instanceof Vn.Name?void 0:h,dynamicProps:g instanceof Vn.Name,dynamicItems:h instanceof Vn.Name},p.source&&(p.source.evaluated=(0,Vn.stringify)(p.evaluated))}return t.validate=p,t}catch(d){throw delete t.validate,delete t.validateName,u&&this.logger.error("Error compiling schema, function code:",u),d}finally{this._compilations.delete(t)}}_n.compileSchema=o_;function e3(t,e,r){var n;r=(0,zn.resolveUrl)(this.opts.uriResolver,e,r);let i=t.refs[r];if(i)return i;let s=n3.call(this,t,r);if(s===void 0){let o=(n=t.localRefs)===null||n===void 0?void 0:n[r],{schemaId:a}=this.opts;o&&(s=new Fa({schema:o,schemaId:a,root:t,baseId:e}))}if(s!==void 0)return t.refs[r]=t3.call(this,s)}_n.resolveRef=e3;function t3(t){return(0,zn.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:o_.call(this,t)}function xq(t){for(let e of this._compilations)if(r3(e,t))return e}_n.getCompilingSchema=xq;function r3(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function n3(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||sm.call(this,t,e)}function sm(t,e){let r=this.opts.uriResolver.parse(e),n=(0,zn._getFullPath)(this.opts.uriResolver,r),i=(0,zn.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===i)return s_.call(this,r,t);let s=(0,zn.normalizeId)(n),o=this.refs[s]||this.schemas[s];if(typeof o=="string"){let a=sm.call(this,t,o);return typeof a?.schema!="object"?void 0:s_.call(this,r,a)}if(typeof o?.schema=="object"){if(o.validate||o_.call(this,o),s===(0,zn.normalizeId)(e)){let{schema:a}=o,{schemaId:c}=this.opts,l=a[c];return l&&(i=(0,zn.resolveUrl)(this.opts.uriResolver,i,l)),new Fa({schema:a,schemaId:c,root:t,baseId:i})}return s_.call(this,r,o)}}_n.resolveSchema=sm;var i3=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function s_(t,{baseId:e,schema:r,root:n}){var i;if(((i=t.fragment)===null||i===void 0?void 0:i[0])!=="/")return;for(let a of t.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let c=r[(0,Mq.unescapeFragment)(a)];if(c===void 0)return;r=c;let l=typeof r=="object"&&r[this.opts.schemaId];!i3.has(a)&&l&&(e=(0,zn.resolveUrl)(this.opts.uriResolver,e,l))}let s;if(typeof r!="boolean"&&r.$ref&&!(0,Mq.schemaHasRulesButRef)(r,this.RULES)){let a=(0,zn.resolveUrl)(this.opts.uriResolver,e,r.$ref);s=sm.call(this,n,a)}let{schemaId:o}=this.opts;if(s=s||new Fa({schema:r,schemaId:o,root:n,baseId:e}),s.schema!==s.root.schema)return s}});var Lq=k((MRe,s3)=>{s3.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var $q=k((xRe,qq)=>{"use strict";var o3={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,a:10,A:10,b:11,B:11,c:12,C:12,d:13,D:13,e:14,E:14,f:15,F:15};qq.exports={HEX:o3}});var Wq=k((LRe,zq)=>{"use strict";var{HEX:a3}=$q(),c3=/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u;function Uq(t){if(Vq(t,".")<3)return{host:t,isIPV4:!1};let e=t.match(c3)||[],[r]=e;return r?{host:u3(r,"."),isIPV4:!0}:{host:t,isIPV4:!1}}function a_(t,e=!1){let r="",n=!0;for(let i of t){if(a3[i]===void 0)return;i!=="0"&&n===!0&&(n=!1),n||(r+=i)}return e&&r.length===0&&(r="0"),r}function l3(t){let e=0,r={error:!1,address:"",zone:""},n=[],i=[],s=!1,o=!1,a=!1;function c(){if(i.length){if(s===!1){let l=a_(i);if(l!==void 0)n.push(l);else return r.error=!0,!1}i.length=0}return!0}for(let l=0;l<t.length;l++){let u=t[l];if(!(u==="["||u==="]"))if(u===":"){if(o===!0&&(a=!0),!c())break;if(e++,n.push(":"),e>7){r.error=!0;break}l-1>=0&&t[l-1]===":"&&(o=!0);continue}else if(u==="%"){if(!c())break;s=!0}else{i.push(u);continue}}return i.length&&(s?r.zone=i.join(""):a?n.push(i.join("")):n.push(a_(i))),r.address=n.join(""),r}function Hq(t){if(Vq(t,":")<2)return{host:t,isIPV6:!1};let e=l3(t);if(e.error)return{host:t,isIPV6:!1};{let r=e.address,n=e.address;return e.zone&&(r+="%"+e.zone,n+="%25"+e.zone),{host:r,escapedHost:n,isIPV6:!0}}}function u3(t,e){let r="",n=!0,i=t.length;for(let s=0;s<i;s++){let o=t[s];o==="0"&&n?(s+1<=i&&t[s+1]===e||s+1===i)&&(r+=o,n=!1):(o===e?n=!0:n=!1,r+=o)}return r}function Vq(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}var Bq=/^\.\.?\//u,Fq=/^\/\.(?:\/|$)/u,jq=/^\/\.\.(?:\/|$)/u,d3=/^\/?(?:.|\n)*?(?=\/|$)/u;function f3(t){let e=[];for(;t.length;)if(t.match(Bq))t=t.replace(Bq,"");else if(t.match(Fq))t=t.replace(Fq,"/");else if(t.match(jq))t=t.replace(jq,"/"),e.pop();else if(t==="."||t==="..")t="";else{let r=t.match(d3);if(r){let n=r[0];t=t.slice(n.length),e.push(n)}else throw new Error("Unexpected dot segment condition")}return e.join("")}function p3(t,e){let r=e!==!0?escape:unescape;return t.scheme!==void 0&&(t.scheme=r(t.scheme)),t.userinfo!==void 0&&(t.userinfo=r(t.userinfo)),t.host!==void 0&&(t.host=r(t.host)),t.path!==void 0&&(t.path=r(t.path)),t.query!==void 0&&(t.query=r(t.query)),t.fragment!==void 0&&(t.fragment=r(t.fragment)),t}function h3(t){let e=[];if(t.userinfo!==void 0&&(e.push(t.userinfo),e.push("@")),t.host!==void 0){let r=unescape(t.host),n=Uq(r);if(n.isIPV4)r=n.host;else{let i=Hq(n.host);i.isIPV6===!0?r=`[${i.escapedHost}]`:r=t.host}e.push(r)}return(typeof t.port=="number"||typeof t.port=="string")&&(e.push(":"),e.push(String(t.port))),e.length?e.join(""):void 0}zq.exports={recomposeAuthority:h3,normalizeComponentEncoding:p3,removeDotSegments:f3,normalizeIPv4:Uq,normalizeIPv6:Hq,stringArrayToHexStripped:a_}});var Qq=k((qRe,Jq)=>{"use strict";var m3=/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu,g3=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu;function Gq(t){return typeof t.secure=="boolean"?t.secure:String(t.scheme).toLowerCase()==="wss"}function Kq(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function Yq(t){let e=String(t.scheme).toLowerCase()==="https";return(t.port===(e?443:80)||t.port==="")&&(t.port=void 0),t.path||(t.path="/"),t}function y3(t){return t.secure=Gq(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function T3(t){if((t.port===(Gq(t)?443:80)||t.port==="")&&(t.port=void 0),typeof t.secure=="boolean"&&(t.scheme=t.secure?"wss":"ws",t.secure=void 0),t.resourceName){let[e,r]=t.resourceName.split("?");t.path=e&&e!=="/"?e:void 0,t.query=r,t.resourceName=void 0}return t.fragment=void 0,t}function v3(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(g3);if(r){let n=e.scheme||t.scheme||"urn";t.nid=r[1].toLowerCase(),t.nss=r[2];let i=`${n}:${e.nid||t.nid}`,s=c_[i];t.path=void 0,s&&(t=s.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function b3(t,e){let r=e.scheme||t.scheme||"urn",n=t.nid.toLowerCase(),i=`${r}:${e.nid||n}`,s=c_[i];s&&(t=s.serialize(t,e));let o=t,a=t.nss;return o.path=`${n||e.nid}:${a}`,e.skipEscape=!0,o}function _3(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!m3.test(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function S3(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var Xq={scheme:"http",domainHost:!0,parse:Kq,serialize:Yq},N3={scheme:"https",domainHost:Xq.domainHost,parse:Kq,serialize:Yq},om={scheme:"ws",domainHost:!0,parse:y3,serialize:T3},k3={scheme:"wss",domainHost:om.domainHost,parse:om.parse,serialize:om.serialize},R3={scheme:"urn",parse:v3,serialize:b3,skipNormalize:!0},P3={scheme:"urn:uuid",parse:_3,serialize:S3,skipNormalize:!0},c_={http:Xq,https:N3,ws:om,wss:k3,urn:R3,"urn:uuid":P3};Jq.exports=c_});var e1=k(($Re,cm)=>{"use strict";var{normalizeIPv6:w3,normalizeIPv4:E3,removeDotSegments:tu,recomposeAuthority:D3,normalizeComponentEncoding:am}=Wq(),l_=Qq();function C3(t,e){return typeof t=="string"?t=hi(qi(t,e),e):typeof t=="object"&&(t=qi(hi(t,e),e)),t}function A3(t,e,r){let n=Object.assign({scheme:"null"},r),i=Zq(qi(t,n),qi(e,n),n,!0);return hi(i,{...n,skipEscape:!0})}function Zq(t,e,r,n){let i={};return n||(t=qi(hi(t,r),r),e=qi(hi(e,r),r)),r=r||{},!r.tolerant&&e.scheme?(i.scheme=e.scheme,i.userinfo=e.userinfo,i.host=e.host,i.port=e.port,i.path=tu(e.path||""),i.query=e.query):(e.userinfo!==void 0||e.host!==void 0||e.port!==void 0?(i.userinfo=e.userinfo,i.host=e.host,i.port=e.port,i.path=tu(e.path||""),i.query=e.query):(e.path?(e.path.charAt(0)==="/"?i.path=tu(e.path):((t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)&&!t.path?i.path="/"+e.path:t.path?i.path=t.path.slice(0,t.path.lastIndexOf("/")+1)+e.path:i.path=e.path,i.path=tu(i.path)),i.query=e.query):(i.path=t.path,e.query!==void 0?i.query=e.query:i.query=t.query),i.userinfo=t.userinfo,i.host=t.host,i.port=t.port),i.scheme=t.scheme),i.fragment=e.fragment,i}function I3(t,e,r){return typeof t=="string"?(t=unescape(t),t=hi(am(qi(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=hi(am(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=hi(am(qi(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=hi(am(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function hi(t,e){let r={host:t.host,scheme:t.scheme,userinfo:t.userinfo,port:t.port,path:t.path,query:t.query,nid:t.nid,nss:t.nss,uuid:t.uuid,fragment:t.fragment,reference:t.reference,resourceName:t.resourceName,secure:t.secure,error:""},n=Object.assign({},e),i=[],s=l_[(n.scheme||r.scheme||"").toLowerCase()];s&&s.serialize&&s.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&i.push(r.scheme,":");let o=D3(r);if(o!==void 0&&(n.reference!=="suffix"&&i.push("//"),i.push(o),r.path&&r.path.charAt(0)!=="/"&&i.push("/")),r.path!==void 0){let a=r.path;!n.absolutePath&&(!s||!s.absolutePath)&&(a=tu(a)),o===void 0&&(a=a.replace(/^\/\//u,"/%2F")),i.push(a)}return r.query!==void 0&&i.push("?",r.query),r.fragment!==void 0&&i.push("#",r.fragment),i.join("")}var O3=Array.from({length:127},(t,e)=>/[^!"$&'()*+,\-.;=_`a-z{}~]/u.test(String.fromCharCode(e)));function M3(t){let e=0;for(let r=0,n=t.length;r<n;++r)if(e=t.charCodeAt(r),e>126||O3[e])return!0;return!1}var x3=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function qi(t,e){let r=Object.assign({},e),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},i=t.indexOf("%")!==-1,s=!1;r.reference==="suffix"&&(t=(r.scheme?r.scheme+":":"")+"//"+t);let o=t.match(x3);if(o){if(n.scheme=o[1],n.userinfo=o[3],n.host=o[4],n.port=parseInt(o[5],10),n.path=o[6]||"",n.query=o[7],n.fragment=o[8],isNaN(n.port)&&(n.port=o[5]),n.host){let c=E3(n.host);if(c.isIPV4===!1){let l=w3(c.host);n.host=l.host.toLowerCase(),s=l.isIPV6}else n.host=c.host,s=!0}n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&n.query===void 0&&!n.path?n.reference="same-document":n.scheme===void 0?n.reference="relative":n.fragment===void 0?n.reference="absolute":n.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==n.reference&&(n.error=n.error||"URI is not a "+r.reference+" reference.");let a=l_[(r.scheme||n.scheme||"").toLowerCase()];if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&s===!1&&M3(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(c){n.error=n.error||"Host's domain name can not be converted to ASCII: "+c}(!a||a&&!a.skipNormalize)&&(i&&n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),i&&n.host!==void 0&&(n.host=unescape(n.host)),n.path&&(n.path=escape(unescape(n.path))),n.fragment&&(n.fragment=encodeURI(decodeURIComponent(n.fragment)))),a&&a.parse&&a.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return n}var u_={SCHEMES:l_,normalize:C3,resolve:A3,resolveComponents:Zq,equal:I3,serialize:hi,parse:qi};cm.exports=u_;cm.exports.default=u_;cm.exports.fastUri=u_});var r1=k(d_=>{"use strict";Object.defineProperty(d_,"__esModule",{value:!0});var t1=e1();t1.code='require("ajv/dist/runtime/uri").default';d_.default=t1});var u1=k(tr=>{"use strict";Object.defineProperty(tr,"__esModule",{value:!0});tr.CodeGen=tr.Name=tr.nil=tr.stringify=tr.str=tr._=tr.KeywordCxt=void 0;var L3=Ql();Object.defineProperty(tr,"KeywordCxt",{enumerable:!0,get:function(){return L3.KeywordCxt}});var ja=ve();Object.defineProperty(tr,"_",{enumerable:!0,get:function(){return ja._}});Object.defineProperty(tr,"str",{enumerable:!0,get:function(){return ja.str}});Object.defineProperty(tr,"stringify",{enumerable:!0,get:function(){return ja.stringify}});Object.defineProperty(tr,"nil",{enumerable:!0,get:function(){return ja.nil}});Object.defineProperty(tr,"Name",{enumerable:!0,get:function(){return ja.Name}});Object.defineProperty(tr,"CodeGen",{enumerable:!0,get:function(){return ja.CodeGen}});var q3=im(),a1=Zl(),$3=jb(),ru=eu(),B3=ve(),nu=Yl(),lm=Kl(),p_=we(),n1=Lq(),F3=r1(),c1=(t,e)=>new RegExp(t,e);c1.code="new RegExp";var j3=["removeAdditional","useDefaults","coerceTypes"],U3=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),H3={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},V3={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},i1=200;function z3(t){var e,r,n,i,s,o,a,c,l,u,d,f,p,g,h,T,S,_,v,R,D,B,M,F,ge;let Xe=t.strict,Ft=(e=t.code)===null||e===void 0?void 0:e.optimize,ke=Ft===!0||Ft===void 0?1:Ft||0,Zr=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:c1,$i=(i=t.uriResolver)!==null&&i!==void 0?i:F3.default;return{strictSchema:(o=(s=t.strictSchema)!==null&&s!==void 0?s:Xe)!==null&&o!==void 0?o:!0,strictNumbers:(c=(a=t.strictNumbers)!==null&&a!==void 0?a:Xe)!==null&&c!==void 0?c:!0,strictTypes:(u=(l=t.strictTypes)!==null&&l!==void 0?l:Xe)!==null&&u!==void 0?u:"log",strictTuples:(f=(d=t.strictTuples)!==null&&d!==void 0?d:Xe)!==null&&f!==void 0?f:"log",strictRequired:(g=(p=t.strictRequired)!==null&&p!==void 0?p:Xe)!==null&&g!==void 0?g:!1,code:t.code?{...t.code,optimize:ke,regExp:Zr}:{optimize:ke,regExp:Zr},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:i1,loopEnum:(T=t.loopEnum)!==null&&T!==void 0?T:i1,meta:(S=t.meta)!==null&&S!==void 0?S:!0,messages:(_=t.messages)!==null&&_!==void 0?_:!0,inlineRefs:(v=t.inlineRefs)!==null&&v!==void 0?v:!0,schemaId:(R=t.schemaId)!==null&&R!==void 0?R:"$id",addUsedSchema:(D=t.addUsedSchema)!==null&&D!==void 0?D:!0,validateSchema:(B=t.validateSchema)!==null&&B!==void 0?B:!0,validateFormats:(M=t.validateFormats)!==null&&M!==void 0?M:!0,unicodeRegExp:(F=t.unicodeRegExp)!==null&&F!==void 0?F:!0,int32range:(ge=t.int32range)!==null&&ge!==void 0?ge:!0,uriResolver:$i}}var iu=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...z3(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new B3.ValueScope({scope:{},prefixes:U3,es5:r,lines:n}),this.logger=J3(e.logger);let i=e.validateFormats;e.validateFormats=!1,this.RULES=(0,$3.getRules)(),s1.call(this,H3,e,"NOT SUPPORTED"),s1.call(this,V3,e,"DEPRECATED","warn"),this._metaOpts=Y3.call(this),e.formats&&G3.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&K3.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),W3.call(this),e.validateFormats=i}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,i=n1;n==="id"&&(i={...n1},i.id=i.$id,delete i.$id),r&&e&&this.addMetaSchema(i,i[n],!1)}defaultMeta(){let{meta:e,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof e=="object"?e[r]||e:void 0}validate(e,r){let n;if(typeof e=="string"){if(n=this.getSchema(e),!n)throw new Error(`no schema with key or ref "${e}"`)}else n=this.compile(e);let i=n(r);return"$async"in n||(this.errors=n.errors),i}compile(e,r){let n=this._addSchema(e,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(e,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return i.call(this,e,r);async function i(u,d){await s.call(this,u.$schema);let f=this._addSchema(u,d);return f.validate||o.call(this,f)}async function s(u){u&&!this.getSchema(u)&&await i.call(this,{$ref:u},!0)}async function o(u){try{return this._compileSchemaEnv(u)}catch(d){if(!(d instanceof a1.default))throw d;return a.call(this,d),await c.call(this,d.missingSchema),o.call(this,u)}}function a({missingSchema:u,missingRef:d}){if(this.refs[u])throw new Error(`AnySchema ${u} is loaded but ${d} cannot be resolved`)}async function c(u){let d=await l.call(this,u);this.refs[u]||await s.call(this,d.$schema),this.refs[u]||this.addSchema(d,u,r)}async function l(u){let d=this._loading[u];if(d)return d;try{return await(this._loading[u]=n(u))}finally{delete this._loading[u]}}}addSchema(e,r,n,i=this.opts.validateSchema){if(Array.isArray(e)){for(let o of e)this.addSchema(o,void 0,n,i);return this}let s;if(typeof e=="object"){let{schemaId:o}=this.opts;if(s=e[o],s!==void 0&&typeof s!="string")throw new Error(`schema ${o} must be string`)}return r=(0,nu.normalizeId)(r||s),this._checkUnique(r),this.schemas[r]=this._addSchema(e,n,r,i,!0),this}addMetaSchema(e,r,n=this.opts.validateSchema){return this.addSchema(e,r,!0,n),this}validateSchema(e,r){if(typeof e=="boolean")return!0;let n;if(n=e.$schema,n!==void 0&&typeof n!="string")throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let i=this.validate(n,e);if(!i&&r){let s="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(s);else throw new Error(s)}return i}getSchema(e){let r;for(;typeof(r=o1.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,i=new ru.SchemaEnv({schema:{},schemaId:n});if(r=ru.resolveSchema.call(this,i,e),!r)return;this.refs[e]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(e){if(e instanceof RegExp)return this._removeAllSchemas(this.schemas,e),this._removeAllSchemas(this.refs,e),this;switch(typeof e){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=o1.call(this,e);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[e],delete this.refs[e],this}case"object":{let r=e;this._cache.delete(r);let n=e[this.opts.schemaId];return n&&(n=(0,nu.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(e){for(let r of e)this.addKeyword(r);return this}addKeyword(e,r){let n;if(typeof e=="string")n=e,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof e=="object"&&r===void 0){if(r=e,n=r.keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(Z3.call(this,n,r),!r)return(0,p_.eachItem)(n,s=>f_.call(this,s)),this;tX.call(this,r);let i={...r,type:(0,lm.getJSONTypes)(r.type),schemaType:(0,lm.getJSONTypes)(r.schemaType)};return(0,p_.eachItem)(n,i.type.length===0?s=>f_.call(this,s,i):s=>i.type.forEach(o=>f_.call(this,s,i,o))),this}getKeyword(e){let r=this.RULES.all[e];return typeof r=="object"?r.definition:!!r}removeKeyword(e){let{RULES:r}=this;delete r.keywords[e],delete r.all[e];for(let n of r.rules){let i=n.rules.findIndex(s=>s.keyword===e);i>=0&&n.rules.splice(i,1)}return this}addFormat(e,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[e]=r,this}errorsText(e=this.errors,{separator:r=", ",dataVar:n="data"}={}){return!e||e.length===0?"No errors":e.map(i=>`${n}${i.instancePath} ${i.message}`).reduce((i,s)=>i+r+s)}$dataMetaSchema(e,r){let n=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(let i of r){let s=i.split("/").slice(1),o=e;for(let a of s)o=o[a];for(let a in n){let c=n[a];if(typeof c!="object")continue;let{$data:l}=c.definition,u=o[a];l&&u&&(o[a]=l1(u))}}return e}_removeAllSchemas(e,r){for(let n in e){let i=e[n];(!r||r.test(n))&&(typeof i=="string"?delete e[n]:i&&!i.meta&&(this._cache.delete(i.schema),delete e[n]))}}_addSchema(e,r,n,i=this.opts.validateSchema,s=this.opts.addUsedSchema){let o,{schemaId:a}=this.opts;if(typeof e=="object")o=e[a];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof e!="boolean")throw new Error("schema must be object or boolean")}let c=this._cache.get(e);if(c!==void 0)return c;n=(0,nu.normalizeId)(o||n);let l=nu.getSchemaRefs.call(this,e,n);return c=new ru.SchemaEnv({schema:e,schemaId:a,meta:r,baseId:n,localRefs:l}),this._cache.set(c.schema,c),s&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=c),i&&this.validateSchema(e,!0),c}_checkUnique(e){if(this.schemas[e]||this.refs[e])throw new Error(`schema with key or id "${e}" already exists`)}_compileSchemaEnv(e){if(e.meta?this._compileMetaSchema(e):ru.compileSchema.call(this,e),!e.validate)throw new Error("ajv implementation error");return e.validate}_compileMetaSchema(e){let r=this.opts;this.opts=this._metaOpts;try{ru.compileSchema.call(this,e)}finally{this.opts=r}}};iu.ValidationError=q3.default;iu.MissingRefError=a1.default;tr.default=iu;function s1(t,e,r,n="error"){for(let i in t){let s=i;s in e&&this.logger[n](`${r}: option ${i}. ${t[s]}`)}}function o1(t){return t=(0,nu.normalizeId)(t),this.schemas[t]||this.refs[t]}function W3(){let t=this.opts.schemas;if(t)if(Array.isArray(t))this.addSchema(t);else for(let e in t)this.addSchema(t[e],e)}function G3(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function K3(t){if(Array.isArray(t)){this.addVocabulary(t);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let e in t){let r=t[e];r.keyword||(r.keyword=e),this.addKeyword(r)}}function Y3(){let t={...this.opts};for(let e of j3)delete t[e];return t}var X3={log(){},warn(){},error(){}};function J3(t){if(t===!1)return X3;if(t===void 0)return console;if(t.log&&t.warn&&t.error)return t;throw new Error("logger must implement log, warn and error methods")}var Q3=/^[a-z_$][a-z0-9_$:-]*$/i;function Z3(t,e){let{RULES:r}=this;if((0,p_.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!Q3.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!e&&e.$data&&!("code"in e||"validate"in e))throw new Error('$data keyword must have "code" or "validate" function')}function f_(t,e,r){var n;let i=e?.post;if(r&&i)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:s}=this,o=i?s.post:s.rules.find(({type:c})=>c===r);if(o||(o={type:r,rules:[]},s.rules.push(o)),s.keywords[t]=!0,!e)return;let a={keyword:t,definition:{...e,type:(0,lm.getJSONTypes)(e.type),schemaType:(0,lm.getJSONTypes)(e.schemaType)}};e.before?eX.call(this,o,a,e.before):o.rules.push(a),s.all[t]=a,(n=e.implements)===null||n===void 0||n.forEach(c=>this.addKeyword(c))}function eX(t,e,r){let n=t.rules.findIndex(i=>i.keyword===r);n>=0?t.rules.splice(n,0,e):(t.rules.push(e),this.logger.warn(`rule ${r} is not defined`))}function tX(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=l1(e)),t.validateSchema=this.compile(e,!0))}var rX={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function l1(t){return{anyOf:[t,rX]}}});var d1=k(h_=>{"use strict";Object.defineProperty(h_,"__esModule",{value:!0});var nX={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};h_.default=nX});var fm=k(po=>{"use strict";Object.defineProperty(po,"__esModule",{value:!0});po.callRef=po.getValidate=void 0;var iX=Zl(),f1=bn(),Hr=ve(),Ua=vn(),p1=eu(),um=we(),sX={keyword:"$ref",schemaType:"string",code(t){let{gen:e,schema:r,it:n}=t,{baseId:i,schemaEnv:s,validateName:o,opts:a,self:c}=n,{root:l}=s;if((r==="#"||r==="#/")&&i===l.baseId)return d();let u=p1.resolveRef.call(c,l,i,r);if(u===void 0)throw new iX.default(n.opts.uriResolver,i,r);if(u instanceof p1.SchemaEnv)return f(u);return p(u);function d(){if(s===l)return dm(t,o,s,s.$async);let g=e.scopeValue("root",{ref:l});return dm(t,(0,Hr._)`${g}.validate`,l,l.$async)}function f(g){let h=h1(t,g);dm(t,h,g,g.$async)}function p(g){let h=e.scopeValue("schema",a.code.source===!0?{ref:g,code:(0,Hr.stringify)(g)}:{ref:g}),T=e.name("valid"),S=t.subschema({schema:g,dataTypes:[],schemaPath:Hr.nil,topSchemaRef:h,errSchemaPath:r},T);t.mergeEvaluated(S),t.ok(T)}}};function h1(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,Hr._)`${r.scopeValue("wrapper",{ref:e})}.validate`}po.getValidate=h1;function dm(t,e,r,n){let{gen:i,it:s}=t,{allErrors:o,schemaEnv:a,opts:c}=s,l=c.passContext?Ua.default.this:Hr.nil;n?u():d();function u(){if(!a.$async)throw new Error("async schema referenced by sync schema");let g=i.let("valid");i.try(()=>{i.code((0,Hr._)`await ${(0,f1.callValidateCode)(t,e,l)}`),p(e),o||i.assign(g,!0)},h=>{i.if((0,Hr._)`!(${h} instanceof ${s.ValidationError})`,()=>i.throw(h)),f(h),o||i.assign(g,!1)}),t.ok(g)}function d(){t.result((0,f1.callValidateCode)(t,e,l),()=>p(e),()=>f(e))}function f(g){let h=(0,Hr._)`${g}.errors`;i.assign(Ua.default.vErrors,(0,Hr._)`${Ua.default.vErrors} === null ? ${h} : ${Ua.default.vErrors}.concat(${h})`),i.assign(Ua.default.errors,(0,Hr._)`${Ua.default.vErrors}.length`)}function p(g){var h;if(!s.opts.unevaluated)return;let T=(h=r?.validate)===null||h===void 0?void 0:h.evaluated;if(s.props!==!0)if(T&&!T.dynamicProps)T.props!==void 0&&(s.props=um.mergeEvaluated.props(i,T.props,s.props));else{let S=i.var("props",(0,Hr._)`${g}.evaluated.props`);s.props=um.mergeEvaluated.props(i,S,s.props,Hr.Name)}if(s.items!==!0)if(T&&!T.dynamicItems)T.items!==void 0&&(s.items=um.mergeEvaluated.items(i,T.items,s.items));else{let S=i.var("items",(0,Hr._)`${g}.evaluated.items`);s.items=um.mergeEvaluated.items(i,S,s.items,Hr.Name)}}}po.callRef=dm;po.default=sX});var m1=k(m_=>{"use strict";Object.defineProperty(m_,"__esModule",{value:!0});var oX=d1(),aX=fm(),cX=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",oX.default,aX.default];m_.default=cX});var g1=k(g_=>{"use strict";Object.defineProperty(g_,"__esModule",{value:!0});var pm=ve(),Cs=pm.operators,hm={maximum:{okStr:"<=",ok:Cs.LTE,fail:Cs.GT},minimum:{okStr:">=",ok:Cs.GTE,fail:Cs.LT},exclusiveMaximum:{okStr:"<",ok:Cs.LT,fail:Cs.GTE},exclusiveMinimum:{okStr:">",ok:Cs.GT,fail:Cs.LTE}},lX={message:({keyword:t,schemaCode:e})=>(0,pm.str)`must be ${hm[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,pm._)`{comparison: ${hm[t].okStr}, limit: ${e}}`},uX={keyword:Object.keys(hm),type:"number",schemaType:"number",$data:!0,error:lX,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,pm._)`${r} ${hm[e].fail} ${n} || isNaN(${r})`)}};g_.default=uX});var y1=k(y_=>{"use strict";Object.defineProperty(y_,"__esModule",{value:!0});var su=ve(),dX={message:({schemaCode:t})=>(0,su.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,su._)`{multipleOf: ${t}}`},fX={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:dX,code(t){let{gen:e,data:r,schemaCode:n,it:i}=t,s=i.opts.multipleOfPrecision,o=e.let("res"),a=s?(0,su._)`Math.abs(Math.round(${o}) - ${o}) > 1e-${s}`:(0,su._)`${o} !== parseInt(${o})`;t.fail$data((0,su._)`(${n} === 0 || (${o} = ${r}/${n}, ${a}))`)}};y_.default=fX});var v1=k(T_=>{"use strict";Object.defineProperty(T_,"__esModule",{value:!0});function T1(t){let e=t.length,r=0,n=0,i;for(;n<e;)r++,i=t.charCodeAt(n++),i>=55296&&i<=56319&&n<e&&(i=t.charCodeAt(n),(i&64512)===56320&&n++);return r}T_.default=T1;T1.code='require("ajv/dist/runtime/ucs2length").default'});var b1=k(v_=>{"use strict";Object.defineProperty(v_,"__esModule",{value:!0});var ho=ve(),pX=we(),hX=v1(),mX={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,ho.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,ho._)`{limit: ${t}}`},gX={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:mX,code(t){let{keyword:e,data:r,schemaCode:n,it:i}=t,s=e==="maxLength"?ho.operators.GT:ho.operators.LT,o=i.opts.unicode===!1?(0,ho._)`${r}.length`:(0,ho._)`${(0,pX.useFunc)(t.gen,hX.default)}(${r})`;t.fail$data((0,ho._)`${o} ${s} ${n}`)}};v_.default=gX});var _1=k(b_=>{"use strict";Object.defineProperty(b_,"__esModule",{value:!0});var yX=bn(),mm=ve(),TX={message:({schemaCode:t})=>(0,mm.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,mm._)`{pattern: ${t}}`},vX={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:TX,code(t){let{data:e,$data:r,schema:n,schemaCode:i,it:s}=t,o=s.opts.unicodeRegExp?"u":"",a=r?(0,mm._)`(new RegExp(${i}, ${o}))`:(0,yX.usePattern)(t,n);t.fail$data((0,mm._)`!${a}.test(${e})`)}};b_.default=vX});var S1=k(__=>{"use strict";Object.defineProperty(__,"__esModule",{value:!0});var ou=ve(),bX={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,ou.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,ou._)`{limit: ${t}}`},_X={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:bX,code(t){let{keyword:e,data:r,schemaCode:n}=t,i=e==="maxProperties"?ou.operators.GT:ou.operators.LT;t.fail$data((0,ou._)`Object.keys(${r}).length ${i} ${n}`)}};__.default=_X});var N1=k(S_=>{"use strict";Object.defineProperty(S_,"__esModule",{value:!0});var au=bn(),cu=ve(),SX=we(),NX={message:({params:{missingProperty:t}})=>(0,cu.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,cu._)`{missingProperty: ${t}}`},kX={keyword:"required",type:"object",schemaType:"array",$data:!0,error:NX,code(t){let{gen:e,schema:r,schemaCode:n,data:i,$data:s,it:o}=t,{opts:a}=o;if(!s&&r.length===0)return;let c=r.length>=a.loopRequired;if(o.allErrors?l():u(),a.strictRequired){let p=t.parentSchema.properties,{definedProperties:g}=t.it;for(let h of r)if(p?.[h]===void 0&&!g.has(h)){let T=o.schemaEnv.baseId+o.errSchemaPath,S=`required property "${h}" is not defined at "${T}" (strictRequired)`;(0,SX.checkStrictMode)(o,S,o.opts.strictRequired)}}function l(){if(c||s)t.block$data(cu.nil,d);else for(let p of r)(0,au.checkReportMissingProp)(t,p)}function u(){let p=e.let("missing");if(c||s){let g=e.let("valid",!0);t.block$data(g,()=>f(p,g)),t.ok(g)}else e.if((0,au.checkMissingProp)(t,r,p)),(0,au.reportMissingProp)(t,p),e.else()}function d(){e.forOf("prop",n,p=>{t.setParams({missingProperty:p}),e.if((0,au.noPropertyInData)(e,i,p,a.ownProperties),()=>t.error())})}function f(p,g){t.setParams({missingProperty:p}),e.forOf(p,n,()=>{e.assign(g,(0,au.propertyInData)(e,i,p,a.ownProperties)),e.if((0,cu.not)(g),()=>{t.error(),e.break()})},cu.nil)}}};S_.default=kX});var k1=k(N_=>{"use strict";Object.defineProperty(N_,"__esModule",{value:!0});var lu=ve(),RX={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,lu.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,lu._)`{limit: ${t}}`},PX={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:RX,code(t){let{keyword:e,data:r,schemaCode:n}=t,i=e==="maxItems"?lu.operators.GT:lu.operators.LT;t.fail$data((0,lu._)`${r}.length ${i} ${n}`)}};N_.default=PX});var gm=k(k_=>{"use strict";Object.defineProperty(k_,"__esModule",{value:!0});var R1=Yb();R1.code='require("ajv/dist/runtime/equal").default';k_.default=R1});var P1=k(P_=>{"use strict";Object.defineProperty(P_,"__esModule",{value:!0});var R_=Kl(),rr=ve(),wX=we(),EX=gm(),DX={message:({params:{i:t,j:e}})=>(0,rr.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,rr._)`{i: ${t}, j: ${e}}`},CX={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:DX,code(t){let{gen:e,data:r,$data:n,schema:i,parentSchema:s,schemaCode:o,it:a}=t;if(!n&&!i)return;let c=e.let("valid"),l=s.items?(0,R_.getSchemaTypes)(s.items):[];t.block$data(c,u,(0,rr._)`${o} === false`),t.ok(c);function u(){let g=e.let("i",(0,rr._)`${r}.length`),h=e.let("j");t.setParams({i:g,j:h}),e.assign(c,!0),e.if((0,rr._)`${g} > 1`,()=>(d()?f:p)(g,h))}function d(){return l.length>0&&!l.some(g=>g==="object"||g==="array")}function f(g,h){let T=e.name("item"),S=(0,R_.checkDataTypes)(l,T,a.opts.strictNumbers,R_.DataType.Wrong),_=e.const("indices",(0,rr._)`{}`);e.for((0,rr._)`;${g}--;`,()=>{e.let(T,(0,rr._)`${r}[${g}]`),e.if(S,(0,rr._)`continue`),l.length>1&&e.if((0,rr._)`typeof ${T} == "string"`,(0,rr._)`${T} += "_"`),e.if((0,rr._)`typeof ${_}[${T}] == "number"`,()=>{e.assign(h,(0,rr._)`${_}[${T}]`),t.error(),e.assign(c,!1).break()}).code((0,rr._)`${_}[${T}] = ${g}`)})}function p(g,h){let T=(0,wX.useFunc)(e,EX.default),S=e.name("outer");e.label(S).for((0,rr._)`;${g}--;`,()=>e.for((0,rr._)`${h} = ${g}; ${h}--;`,()=>e.if((0,rr._)`${T}(${r}[${g}], ${r}[${h}])`,()=>{t.error(),e.assign(c,!1).break(S)})))}}};P_.default=CX});var w1=k(E_=>{"use strict";Object.defineProperty(E_,"__esModule",{value:!0});var w_=ve(),AX=we(),IX=gm(),OX={message:"must be equal to constant",params:({schemaCode:t})=>(0,w_._)`{allowedValue: ${t}}`},MX={keyword:"const",$data:!0,error:OX,code(t){let{gen:e,data:r,$data:n,schemaCode:i,schema:s}=t;n||s&&typeof s=="object"?t.fail$data((0,w_._)`!${(0,AX.useFunc)(e,IX.default)}(${r}, ${i})`):t.fail((0,w_._)`${s} !== ${r}`)}};E_.default=MX});var E1=k(D_=>{"use strict";Object.defineProperty(D_,"__esModule",{value:!0});var uu=ve(),xX=we(),LX=gm(),qX={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,uu._)`{allowedValues: ${t}}`},$X={keyword:"enum",schemaType:"array",$data:!0,error:qX,code(t){let{gen:e,data:r,$data:n,schema:i,schemaCode:s,it:o}=t;if(!n&&i.length===0)throw new Error("enum must have non-empty array");let a=i.length>=o.opts.loopEnum,c,l=()=>c??(c=(0,xX.useFunc)(e,LX.default)),u;if(a||n)u=e.let("valid"),t.block$data(u,d);else{if(!Array.isArray(i))throw new Error("ajv implementation error");let p=e.const("vSchema",s);u=(0,uu.or)(...i.map((g,h)=>f(p,h)))}t.pass(u);function d(){e.assign(u,!1),e.forOf("v",s,p=>e.if((0,uu._)`${l()}(${r}, ${p})`,()=>e.assign(u,!0).break()))}function f(p,g){let h=i[g];return typeof h=="object"&&h!==null?(0,uu._)`${l()}(${r}, ${p}[${g}])`:(0,uu._)`${r} === ${h}`}}};D_.default=$X});var D1=k(C_=>{"use strict";Object.defineProperty(C_,"__esModule",{value:!0});var BX=g1(),FX=y1(),jX=b1(),UX=_1(),HX=S1(),VX=N1(),zX=k1(),WX=P1(),GX=w1(),KX=E1(),YX=[BX.default,FX.default,jX.default,UX.default,HX.default,VX.default,zX.default,WX.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},GX.default,KX.default];C_.default=YX});var I_=k(du=>{"use strict";Object.defineProperty(du,"__esModule",{value:!0});du.validateAdditionalItems=void 0;var mo=ve(),A_=we(),XX={message:({params:{len:t}})=>(0,mo.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,mo._)`{limit: ${t}}`},JX={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:XX,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,A_.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}C1(t,n)}};function C1(t,e){let{gen:r,schema:n,data:i,keyword:s,it:o}=t;o.items=!0;let a=r.const("len",(0,mo._)`${i}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,mo._)`${a} <= ${e.length}`);else if(typeof n=="object"&&!(0,A_.alwaysValidSchema)(o,n)){let l=r.var("valid",(0,mo._)`${a} <= ${e.length}`);r.if((0,mo.not)(l),()=>c(l)),t.ok(l)}function c(l){r.forRange("i",e.length,a,u=>{t.subschema({keyword:s,dataProp:u,dataPropType:A_.Type.Num},l),o.allErrors||r.if((0,mo.not)(l),()=>r.break())})}}du.validateAdditionalItems=C1;du.default=JX});var O_=k(fu=>{"use strict";Object.defineProperty(fu,"__esModule",{value:!0});fu.validateTuple=void 0;var A1=ve(),ym=we(),QX=bn(),ZX={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return I1(t,"additionalItems",e);r.items=!0,!(0,ym.alwaysValidSchema)(r,e)&&t.ok((0,QX.validateArray)(t))}};function I1(t,e,r=t.schema){let{gen:n,parentSchema:i,data:s,keyword:o,it:a}=t;u(i),a.opts.unevaluated&&r.length&&a.items!==!0&&(a.items=ym.mergeEvaluated.items(n,r.length,a.items));let c=n.name("valid"),l=n.const("len",(0,A1._)`${s}.length`);r.forEach((d,f)=>{(0,ym.alwaysValidSchema)(a,d)||(n.if((0,A1._)`${l} > ${f}`,()=>t.subschema({keyword:o,schemaProp:f,dataProp:f},c)),t.ok(c))});function u(d){let{opts:f,errSchemaPath:p}=a,g=r.length,h=g===d.minItems&&(g===d.maxItems||d[e]===!1);if(f.strictTuples&&!h){let T=`"${o}" is ${g}-tuple, but minItems or maxItems/${e} are not specified or different at path "${p}"`;(0,ym.checkStrictMode)(a,T,f.strictTuples)}}}fu.validateTuple=I1;fu.default=ZX});var O1=k(M_=>{"use strict";Object.defineProperty(M_,"__esModule",{value:!0});var e4=O_(),t4={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,e4.validateTuple)(t,"items")};M_.default=t4});var x1=k(x_=>{"use strict";Object.defineProperty(x_,"__esModule",{value:!0});var M1=ve(),r4=we(),n4=bn(),i4=I_(),s4={message:({params:{len:t}})=>(0,M1.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,M1._)`{limit: ${t}}`},o4={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:s4,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:i}=r;n.items=!0,!(0,r4.alwaysValidSchema)(n,e)&&(i?(0,i4.validateAdditionalItems)(t,i):t.ok((0,n4.validateArray)(t)))}};x_.default=o4});var L1=k(L_=>{"use strict";Object.defineProperty(L_,"__esModule",{value:!0});var Sn=ve(),Tm=we(),a4={message:({params:{min:t,max:e}})=>e===void 0?(0,Sn.str)`must contain at least ${t} valid item(s)`:(0,Sn.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,Sn._)`{minContains: ${t}}`:(0,Sn._)`{minContains: ${t}, maxContains: ${e}}`},c4={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:a4,code(t){let{gen:e,schema:r,parentSchema:n,data:i,it:s}=t,o,a,{minContains:c,maxContains:l}=n;s.opts.next?(o=c===void 0?1:c,a=l):o=1;let u=e.const("len",(0,Sn._)`${i}.length`);if(t.setParams({min:o,max:a}),a===void 0&&o===0){(0,Tm.checkStrictMode)(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&o>a){(0,Tm.checkStrictMode)(s,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,Tm.alwaysValidSchema)(s,r)){let h=(0,Sn._)`${u} >= ${o}`;a!==void 0&&(h=(0,Sn._)`${h} && ${u} <= ${a}`),t.pass(h);return}s.items=!0;let d=e.name("valid");a===void 0&&o===1?p(d,()=>e.if(d,()=>e.break())):o===0?(e.let(d,!0),a!==void 0&&e.if((0,Sn._)`${i}.length > 0`,f)):(e.let(d,!1),f()),t.result(d,()=>t.reset());function f(){let h=e.name("_valid"),T=e.let("count",0);p(h,()=>e.if(h,()=>g(T)))}function p(h,T){e.forRange("i",0,u,S=>{t.subschema({keyword:"contains",dataProp:S,dataPropType:Tm.Type.Num,compositeRule:!0},h),T()})}function g(h){e.code((0,Sn._)`${h}++`),a===void 0?e.if((0,Sn._)`${h} >= ${o}`,()=>e.assign(d,!0).break()):(e.if((0,Sn._)`${h} > ${a}`,()=>e.assign(d,!1).break()),o===1?e.assign(d,!0):e.if((0,Sn._)`${h} >= ${o}`,()=>e.assign(d,!0)))}}};L_.default=c4});var vm=k(mi=>{"use strict";Object.defineProperty(mi,"__esModule",{value:!0});mi.validateSchemaDeps=mi.validatePropertyDeps=mi.error=void 0;var q_=ve(),l4=we(),pu=bn();mi.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,q_.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,q_._)`{property: ${t},
180
180
  missingProperty: ${n},
181
181
  depsCount: ${e},
182
- deps: ${r}}`};var u4={keyword:"dependencies",type:"object",schemaType:"object",error:mi.error,code(t){let[e,r]=d4(t);q1(t,e),$1(t,r)}};function d4({schema:t}){let e={},r={};for(let n in t){if(n==="__proto__")continue;let i=Array.isArray(t[n])?e:r;i[n]=t[n]}return[e,r]}function q1(t,e=t.schema){let{gen:r,data:n,it:i}=t;if(Object.keys(e).length===0)return;let s=r.let("missing");for(let o in e){let a=e[o];if(a.length===0)continue;let c=(0,pu.propertyInData)(r,n,o,i.opts.ownProperties);t.setParams({property:o,depsCount:a.length,deps:a.join(", ")}),i.allErrors?r.if(c,()=>{for(let l of a)(0,pu.checkReportMissingProp)(t,l)}):(r.if((0,q_._)`${c} && (${(0,pu.checkMissingProp)(t,a,s)})`),(0,pu.reportMissingProp)(t,s),r.else())}}mi.validatePropertyDeps=q1;function $1(t,e=t.schema){let{gen:r,data:n,keyword:i,it:s}=t,o=r.name("valid");for(let a in e)(0,l4.alwaysValidSchema)(s,e[a])||(r.if((0,pu.propertyInData)(r,n,a,s.opts.ownProperties),()=>{let c=t.subschema({keyword:i,schemaProp:a},o);t.mergeValidEvaluated(c,o)},()=>r.var(o,!0)),t.ok(o))}mi.validateSchemaDeps=$1;mi.default=u4});var F1=k($_=>{"use strict";Object.defineProperty($_,"__esModule",{value:!0});var B1=ve(),f4=we(),p4={message:"property name must be valid",params:({params:t})=>(0,B1._)`{propertyName: ${t.propertyName}}`},h4={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:p4,code(t){let{gen:e,schema:r,data:n,it:i}=t;if((0,f4.alwaysValidSchema)(i,r))return;let s=e.name("valid");e.forIn("key",n,o=>{t.setParams({propertyName:o}),t.subschema({keyword:"propertyNames",data:o,dataTypes:["string"],propertyName:o,compositeRule:!0},s),e.if((0,B1.not)(s),()=>{t.error(!0),i.allErrors||e.break()})}),t.ok(s)}};$_.default=h4});var F_=k(B_=>{"use strict";Object.defineProperty(B_,"__esModule",{value:!0});var bm=bn(),Wn=ve(),m4=vn(),_m=we(),g4={message:"must NOT have additional properties",params:({params:t})=>(0,Wn._)`{additionalProperty: ${t.additionalProperty}}`},y4={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:g4,code(t){let{gen:e,schema:r,parentSchema:n,data:i,errsCount:s,it:o}=t;if(!s)throw new Error("ajv implementation error");let{allErrors:a,opts:c}=o;if(o.props=!0,c.removeAdditional!=="all"&&(0,_m.alwaysValidSchema)(o,r))return;let l=(0,bm.allSchemaProperties)(n.properties),u=(0,bm.allSchemaProperties)(n.patternProperties);d(),t.ok((0,Wn._)`${s} === ${m4.default.errors}`);function d(){e.forIn("key",i,T=>{!l.length&&!u.length?g(T):e.if(f(T),()=>g(T))})}function f(T){let S;if(l.length>8){let _=(0,_m.schemaRefOrVal)(o,n.properties,"properties");S=(0,bm.isOwnProperty)(e,_,T)}else l.length?S=(0,Wn.or)(...l.map(_=>(0,Wn._)`${T} === ${_}`)):S=Wn.nil;return u.length&&(S=(0,Wn.or)(S,...u.map(_=>(0,Wn._)`${(0,bm.usePattern)(t,_)}.test(${T})`))),(0,Wn.not)(S)}function p(T){e.code((0,Wn._)`delete ${i}[${T}]`)}function g(T){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){p(T);return}if(r===!1){t.setParams({additionalProperty:T}),t.error(),a||e.break();return}if(typeof r=="object"&&!(0,_m.alwaysValidSchema)(o,r)){let S=e.name("valid");c.removeAdditional==="failing"?(h(T,S,!1),e.if((0,Wn.not)(S),()=>{t.reset(),p(T)})):(h(T,S),a||e.if((0,Wn.not)(S),()=>e.break()))}}function h(T,S,_){let v={keyword:"additionalProperties",dataProp:T,dataPropType:_m.Type.Str};_===!1&&Object.assign(v,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(v,S)}}};B_.default=y4});var H1=k(U_=>{"use strict";Object.defineProperty(U_,"__esModule",{value:!0});var T4=Ql(),j1=bn(),j_=we(),U1=F_(),v4={keyword:"properties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,parentSchema:n,data:i,it:s}=t;s.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&U1.default.code(new T4.KeywordCxt(s,U1.default,"additionalProperties"));let o=(0,j1.allSchemaProperties)(r);for(let d of o)s.definedProperties.add(d);s.opts.unevaluated&&o.length&&s.props!==!0&&(s.props=j_.mergeEvaluated.props(e,(0,j_.toHash)(o),s.props));let a=o.filter(d=>!(0,j_.alwaysValidSchema)(s,r[d]));if(a.length===0)return;let c=e.name("valid");for(let d of a)l(d)?u(d):(e.if((0,j1.propertyInData)(e,i,d,s.opts.ownProperties)),u(d),s.allErrors||e.else().var(c,!0),e.endIf()),t.it.definedProperties.add(d),t.ok(c);function l(d){return s.opts.useDefaults&&!s.compositeRule&&r[d].default!==void 0}function u(d){t.subschema({keyword:"properties",schemaProp:d,dataProp:d},c)}}};U_.default=v4});var G1=k(H_=>{"use strict";Object.defineProperty(H_,"__esModule",{value:!0});var V1=bn(),Sm=ve(),z1=we(),W1=we(),b4={keyword:"patternProperties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,data:n,parentSchema:i,it:s}=t,{opts:o}=s,a=(0,V1.allSchemaProperties)(r),c=a.filter(h=>(0,z1.alwaysValidSchema)(s,r[h]));if(a.length===0||c.length===a.length&&(!s.opts.unevaluated||s.props===!0))return;let l=o.strictSchema&&!o.allowMatchingProperties&&i.properties,u=e.name("valid");s.props!==!0&&!(s.props instanceof Sm.Name)&&(s.props=(0,W1.evaluatedPropsToName)(e,s.props));let{props:d}=s;f();function f(){for(let h of a)l&&p(h),s.allErrors?g(h):(e.var(u,!0),g(h),e.if(u))}function p(h){for(let T in l)new RegExp(h).test(T)&&(0,z1.checkStrictMode)(s,`property ${T} matches pattern ${h} (use allowMatchingProperties)`)}function g(h){e.forIn("key",n,T=>{e.if((0,Sm._)`${(0,V1.usePattern)(t,h)}.test(${T})`,()=>{let S=c.includes(h);S||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:T,dataPropType:W1.Type.Str},u),s.opts.unevaluated&&d!==!0?e.assign((0,Sm._)`${d}[${T}]`,!0):!S&&!s.allErrors&&e.if((0,Sm.not)(u),()=>e.break())})})}}};H_.default=b4});var K1=k(V_=>{"use strict";Object.defineProperty(V_,"__esModule",{value:!0});var _4=we(),S4={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,_4.alwaysValidSchema)(n,r)){t.fail();return}let i=e.name("valid");t.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},i),t.failResult(i,()=>t.reset(),()=>t.error())},error:{message:"must NOT be valid"}};V_.default=S4});var Y1=k(z_=>{"use strict";Object.defineProperty(z_,"__esModule",{value:!0});var N4=bn(),k4={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:N4.validateUnion,error:{message:"must match a schema in anyOf"}};z_.default=k4});var X1=k(W_=>{"use strict";Object.defineProperty(W_,"__esModule",{value:!0});var Nm=ve(),R4=we(),P4={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,Nm._)`{passingSchemas: ${t.passing}}`},w4={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:P4,code(t){let{gen:e,schema:r,parentSchema:n,it:i}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(i.opts.discriminator&&n.discriminator)return;let s=r,o=e.let("valid",!1),a=e.let("passing",null),c=e.name("_valid");t.setParams({passing:a}),e.block(l),t.result(o,()=>t.reset(),()=>t.error(!0));function l(){s.forEach((u,d)=>{let f;(0,R4.alwaysValidSchema)(i,u)?e.var(c,!0):f=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,Nm._)`${c} && ${o}`).assign(o,!1).assign(a,(0,Nm._)`[${a}, ${d}]`).else(),e.if(c,()=>{e.assign(o,!0),e.assign(a,d),f&&t.mergeEvaluated(f,Nm.Name)})})}}};W_.default=w4});var J1=k(G_=>{"use strict";Object.defineProperty(G_,"__esModule",{value:!0});var E4=we(),D4={keyword:"allOf",schemaType:"array",code(t){let{gen:e,schema:r,it:n}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");let i=e.name("valid");r.forEach((s,o)=>{if((0,E4.alwaysValidSchema)(n,s))return;let a=t.subschema({keyword:"allOf",schemaProp:o},i);t.ok(i),t.mergeEvaluated(a)})}};G_.default=D4});var e$=k(K_=>{"use strict";Object.defineProperty(K_,"__esModule",{value:!0});var km=ve(),Z1=we(),C4={message:({params:t})=>(0,km.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,km._)`{failingKeyword: ${t.ifClause}}`},A4={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:C4,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,Z1.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let i=Q1(n,"then"),s=Q1(n,"else");if(!i&&!s)return;let o=e.let("valid",!0),a=e.name("_valid");if(c(),t.reset(),i&&s){let u=e.let("ifClause");t.setParams({ifClause:u}),e.if(a,l("then",u),l("else",u))}else i?e.if(a,l("then")):e.if((0,km.not)(a),l("else"));t.pass(o,()=>t.error(!0));function c(){let u=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},a);t.mergeEvaluated(u)}function l(u,d){return()=>{let f=t.subschema({keyword:u},a);e.assign(o,a),t.mergeValidEvaluated(f,o),d?e.assign(d,(0,km._)`${u}`):t.setParams({ifClause:u})}}}};function Q1(t,e){let r=t.schema[e];return r!==void 0&&!(0,Z1.alwaysValidSchema)(t,r)}K_.default=A4});var t$=k(Y_=>{"use strict";Object.defineProperty(Y_,"__esModule",{value:!0});var I4=we(),O4={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,I4.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};Y_.default=O4});var r$=k(X_=>{"use strict";Object.defineProperty(X_,"__esModule",{value:!0});var M4=I_(),x4=O1(),L4=O_(),q4=x1(),$4=L1(),B4=vm(),F4=F1(),j4=F_(),U4=H1(),H4=G1(),V4=K1(),z4=Y1(),W4=X1(),G4=J1(),K4=e$(),Y4=t$();function X4(t=!1){let e=[V4.default,z4.default,W4.default,G4.default,K4.default,Y4.default,F4.default,j4.default,B4.default,U4.default,H4.default];return t?e.push(x4.default,q4.default):e.push(M4.default,L4.default),e.push($4.default),e}X_.default=X4});var n$=k(J_=>{"use strict";Object.defineProperty(J_,"__esModule",{value:!0});var Ot=ve(),J4={message:({schemaCode:t})=>(0,Ot.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,Ot._)`{format: ${t}}`},Q4={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:J4,code(t,e){let{gen:r,data:n,$data:i,schema:s,schemaCode:o,it:a}=t,{opts:c,errSchemaPath:l,schemaEnv:u,self:d}=a;if(!c.validateFormats)return;i?f():p();function f(){let g=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),h=r.const("fDef",(0,Ot._)`${g}[${o}]`),T=r.let("fType"),S=r.let("format");r.if((0,Ot._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(T,(0,Ot._)`${h}.type || "string"`).assign(S,(0,Ot._)`${h}.validate`),()=>r.assign(T,(0,Ot._)`"string"`).assign(S,h)),t.fail$data((0,Ot.or)(_(),v()));function _(){return c.strictSchema===!1?Ot.nil:(0,Ot._)`${o} && !${S}`}function v(){let R=u.$async?(0,Ot._)`(${h}.async ? await ${S}(${n}) : ${S}(${n}))`:(0,Ot._)`${S}(${n})`,D=(0,Ot._)`(typeof ${S} == "function" ? ${R} : ${S}.test(${n}))`;return(0,Ot._)`${S} && ${S} !== true && ${T} === ${e} && !${D}`}}function p(){let g=d.formats[s];if(!g){_();return}if(g===!0)return;let[h,T,S]=v(g);h===e&&t.pass(R());function _(){if(c.strictSchema===!1){d.logger.warn(D());return}throw new Error(D());function D(){return`unknown format "${s}" ignored in schema at path "${l}"`}}function v(D){let B=D instanceof RegExp?(0,Ot.regexpCode)(D):c.code.formats?(0,Ot._)`${c.code.formats}${(0,Ot.getProperty)(s)}`:void 0,M=r.scopeValue("formats",{key:s,ref:D,code:B});return typeof D=="object"&&!(D instanceof RegExp)?[D.type||"string",D.validate,(0,Ot._)`${M}.validate`]:["string",D,M]}function R(){if(typeof g=="object"&&!(g instanceof RegExp)&&g.async){if(!u.$async)throw new Error("async format in sync schema");return(0,Ot._)`await ${S}(${n})`}return typeof T=="function"?(0,Ot._)`${S}(${n})`:(0,Ot._)`${S}.test(${n})`}}}};J_.default=Q4});var i$=k(Q_=>{"use strict";Object.defineProperty(Q_,"__esModule",{value:!0});var Z4=n$(),e9=[Z4.default];Q_.default=e9});var s$=k(Ha=>{"use strict";Object.defineProperty(Ha,"__esModule",{value:!0});Ha.contentVocabulary=Ha.metadataVocabulary=void 0;Ha.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Ha.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var a$=k(Z_=>{"use strict";Object.defineProperty(Z_,"__esModule",{value:!0});var t9=m1(),r9=D1(),n9=r$(),i9=i$(),o$=s$(),s9=[t9.default,r9.default,(0,n9.default)(),i9.default,o$.metadataVocabulary,o$.contentVocabulary];Z_.default=s9});var tS=k(hu=>{"use strict";Object.defineProperty(hu,"__esModule",{value:!0});hu.dynamicAnchor=void 0;var eS=ve(),o9=vn(),c$=eu(),a9=fm(),c9={keyword:"$dynamicAnchor",schemaType:"string",code:t=>l$(t,t.schema)};function l$(t,e){let{gen:r,it:n}=t;n.schemaEnv.root.dynamicAnchors[e]=!0;let i=(0,eS._)`${o9.default.dynamicAnchors}${(0,eS.getProperty)(e)}`,s=n.errSchemaPath==="#"?n.validateName:l9(t);r.if((0,eS._)`!${i}`,()=>r.assign(i,s))}hu.dynamicAnchor=l$;function l9(t){let{schemaEnv:e,schema:r,self:n}=t.it,{root:i,baseId:s,localRefs:o,meta:a}=e.root,{schemaId:c}=n.opts,l=new c$.SchemaEnv({schema:r,schemaId:c,root:i,baseId:s,localRefs:o,meta:a});return c$.compileSchema.call(n,l),(0,a9.getValidate)(t,l)}hu.default=c9});var rS=k(mu=>{"use strict";Object.defineProperty(mu,"__esModule",{value:!0});mu.dynamicRef=void 0;var u$=ve(),u9=vn(),d$=fm(),d9={keyword:"$dynamicRef",schemaType:"string",code:t=>f$(t,t.schema)};function f$(t,e){let{gen:r,keyword:n,it:i}=t;if(e[0]!=="#")throw new Error(`"${n}" only supports hash fragment reference`);let s=e.slice(1);if(i.allErrors)o();else{let c=r.let("valid",!1);o(c),t.ok(c)}function o(c){if(i.schemaEnv.root.dynamicAnchors[s]){let l=r.let("_v",(0,u$._)`${u9.default.dynamicAnchors}${(0,u$.getProperty)(s)}`);r.if(l,a(l,c),a(i.validateName,c))}else a(i.validateName,c)()}function a(c,l){return l?()=>r.block(()=>{(0,d$.callRef)(t,c),r.let(l,!0)}):()=>(0,d$.callRef)(t,c)}}mu.dynamicRef=f$;mu.default=d9});var p$=k(nS=>{"use strict";Object.defineProperty(nS,"__esModule",{value:!0});var f9=tS(),p9=we(),h9={keyword:"$recursiveAnchor",schemaType:"boolean",code(t){t.schema?(0,f9.dynamicAnchor)(t,""):(0,p9.checkStrictMode)(t.it,"$recursiveAnchor: false is ignored")}};nS.default=h9});var h$=k(iS=>{"use strict";Object.defineProperty(iS,"__esModule",{value:!0});var m9=rS(),g9={keyword:"$recursiveRef",schemaType:"string",code:t=>(0,m9.dynamicRef)(t,t.schema)};iS.default=g9});var m$=k(sS=>{"use strict";Object.defineProperty(sS,"__esModule",{value:!0});var y9=tS(),T9=rS(),v9=p$(),b9=h$(),_9=[y9.default,T9.default,v9.default,b9.default];sS.default=_9});var y$=k(oS=>{"use strict";Object.defineProperty(oS,"__esModule",{value:!0});var g$=vm(),S9={keyword:"dependentRequired",type:"object",schemaType:"object",error:g$.error,code:t=>(0,g$.validatePropertyDeps)(t)};oS.default=S9});var T$=k(aS=>{"use strict";Object.defineProperty(aS,"__esModule",{value:!0});var N9=vm(),k9={keyword:"dependentSchemas",type:"object",schemaType:"object",code:t=>(0,N9.validateSchemaDeps)(t)};aS.default=k9});var v$=k(cS=>{"use strict";Object.defineProperty(cS,"__esModule",{value:!0});var R9=we(),P9={keyword:["maxContains","minContains"],type:"array",schemaType:"number",code({keyword:t,parentSchema:e,it:r}){e.contains===void 0&&(0,R9.checkStrictMode)(r,`"${t}" without "contains" is ignored`)}};cS.default=P9});var b$=k(lS=>{"use strict";Object.defineProperty(lS,"__esModule",{value:!0});var w9=y$(),E9=T$(),D9=v$(),C9=[w9.default,E9.default,D9.default];lS.default=C9});var S$=k(uS=>{"use strict";Object.defineProperty(uS,"__esModule",{value:!0});var As=ve(),_$=we(),A9=vn(),I9={message:"must NOT have unevaluated properties",params:({params:t})=>(0,As._)`{unevaluatedProperty: ${t.unevaluatedProperty}}`},O9={keyword:"unevaluatedProperties",type:"object",schemaType:["boolean","object"],trackErrors:!0,error:I9,code(t){let{gen:e,schema:r,data:n,errsCount:i,it:s}=t;if(!i)throw new Error("ajv implementation error");let{allErrors:o,props:a}=s;a instanceof As.Name?e.if((0,As._)`${a} !== true`,()=>e.forIn("key",n,d=>e.if(l(a,d),()=>c(d)))):a!==!0&&e.forIn("key",n,d=>a===void 0?c(d):e.if(u(a,d),()=>c(d))),s.props=!0,t.ok((0,As._)`${i} === ${A9.default.errors}`);function c(d){if(r===!1){t.setParams({unevaluatedProperty:d}),t.error(),o||e.break();return}if(!(0,_$.alwaysValidSchema)(s,r)){let f=e.name("valid");t.subschema({keyword:"unevaluatedProperties",dataProp:d,dataPropType:_$.Type.Str},f),o||e.if((0,As.not)(f),()=>e.break())}}function l(d,f){return(0,As._)`!${d} || !${d}[${f}]`}function u(d,f){let p=[];for(let g in d)d[g]===!0&&p.push((0,As._)`${f} !== ${g}`);return(0,As.and)(...p)}}};uS.default=O9});var k$=k(dS=>{"use strict";Object.defineProperty(dS,"__esModule",{value:!0});var go=ve(),N$=we(),M9={message:({params:{len:t}})=>(0,go.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,go._)`{limit: ${t}}`},x9={keyword:"unevaluatedItems",type:"array",schemaType:["boolean","object"],error:M9,code(t){let{gen:e,schema:r,data:n,it:i}=t,s=i.items||0;if(s===!0)return;let o=e.const("len",(0,go._)`${n}.length`);if(r===!1)t.setParams({len:s}),t.fail((0,go._)`${o} > ${s}`);else if(typeof r=="object"&&!(0,N$.alwaysValidSchema)(i,r)){let c=e.var("valid",(0,go._)`${o} <= ${s}`);e.if((0,go.not)(c),()=>a(c,s)),t.ok(c)}i.items=!0;function a(c,l){e.forRange("i",l,o,u=>{t.subschema({keyword:"unevaluatedItems",dataProp:u,dataPropType:N$.Type.Num},c),i.allErrors||e.if((0,go.not)(c),()=>e.break())})}}};dS.default=x9});var R$=k(fS=>{"use strict";Object.defineProperty(fS,"__esModule",{value:!0});var L9=S$(),q9=k$(),$9=[L9.default,q9.default];fS.default=$9});var w$=k(Rm=>{"use strict";Object.defineProperty(Rm,"__esModule",{value:!0});Rm.DiscrError=void 0;var P$;(function(t){t.Tag="tag",t.Mapping="mapping"})(P$||(Rm.DiscrError=P$={}))});var D$=k(hS=>{"use strict";Object.defineProperty(hS,"__esModule",{value:!0});var Va=ve(),pS=w$(),E$=eu(),B9=Zl(),F9=we(),j9={message:({params:{discrError:t,tagName:e}})=>t===pS.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,Va._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},U9={keyword:"discriminator",type:"object",schemaType:"object",error:j9,code(t){let{gen:e,data:r,schema:n,parentSchema:i,it:s}=t,{oneOf:o}=i;if(!s.opts.discriminator)throw new Error("discriminator: requires discriminator option");let a=n.propertyName;if(typeof a!="string")throw new Error("discriminator: requires propertyName");if(n.mapping)throw new Error("discriminator: mapping is not supported");if(!o)throw new Error("discriminator: requires oneOf keyword");let c=e.let("valid",!1),l=e.const("tag",(0,Va._)`${r}${(0,Va.getProperty)(a)}`);e.if((0,Va._)`typeof ${l} == "string"`,()=>u(),()=>t.error(!1,{discrError:pS.DiscrError.Tag,tag:l,tagName:a})),t.ok(c);function u(){let p=f();e.if(!1);for(let g in p)e.elseIf((0,Va._)`${l} === ${g}`),e.assign(c,d(p[g]));e.else(),t.error(!1,{discrError:pS.DiscrError.Mapping,tag:l,tagName:a}),e.endIf()}function d(p){let g=e.name("valid"),h=t.subschema({keyword:"oneOf",schemaProp:p},g);return t.mergeEvaluated(h,Va.Name),g}function f(){var p;let g={},h=S(i),T=!0;for(let R=0;R<o.length;R++){let D=o[R];if(D?.$ref&&!(0,F9.schemaHasRulesButRef)(D,s.self.RULES)){let M=D.$ref;if(D=E$.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,M),D instanceof E$.SchemaEnv&&(D=D.schema),D===void 0)throw new B9.default(s.opts.uriResolver,s.baseId,M)}let B=(p=D?.properties)===null||p===void 0?void 0:p[a];if(typeof B!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);T=T&&(h||S(D)),_(B,R)}if(!T)throw new Error(`discriminator: "${a}" must be required`);return g;function S({required:R}){return Array.isArray(R)&&R.includes(a)}function _(R,D){if(R.const)v(R.const,D);else if(R.enum)for(let B of R.enum)v(B,D);else throw new Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function v(R,D){if(typeof R!="string"||R in g)throw new Error(`discriminator: "${a}" values must be unique strings`);g[R]=D}}}};hS.default=U9});var C$=k(($Pe,H9)=>{H9.exports={$schema:"https://json-schema.org/draft/2019-09/schema",$id:"https://json-schema.org/draft/2019-09/schema",$vocabulary:{"https://json-schema.org/draft/2019-09/vocab/core":!0,"https://json-schema.org/draft/2019-09/vocab/applicator":!0,"https://json-schema.org/draft/2019-09/vocab/validation":!0,"https://json-schema.org/draft/2019-09/vocab/meta-data":!0,"https://json-schema.org/draft/2019-09/vocab/format":!1,"https://json-schema.org/draft/2019-09/vocab/content":!0},$recursiveAnchor:!0,title:"Core and Validation specifications meta-schema",allOf:[{$ref:"meta/core"},{$ref:"meta/applicator"},{$ref:"meta/validation"},{$ref:"meta/meta-data"},{$ref:"meta/format"},{$ref:"meta/content"}],type:["object","boolean"],properties:{definitions:{$comment:"While no longer an official keyword as it is replaced by $defs, this keyword is retained in the meta-schema to prevent incompatible extensions as it remains in common use.",type:"object",additionalProperties:{$recursiveRef:"#"},default:{}},dependencies:{$comment:'"dependencies" is no longer a keyword, but schema authors should avoid redefining it to facilitate a smooth transition to "dependentSchemas" and "dependentRequired"',type:"object",additionalProperties:{anyOf:[{$recursiveRef:"#"},{$ref:"meta/validation#/$defs/stringArray"}]}}}}});var A$=k((BPe,V9)=>{V9.exports={$schema:"https://json-schema.org/draft/2019-09/schema",$id:"https://json-schema.org/draft/2019-09/meta/applicator",$vocabulary:{"https://json-schema.org/draft/2019-09/vocab/applicator":!0},$recursiveAnchor:!0,title:"Applicator vocabulary meta-schema",type:["object","boolean"],properties:{additionalItems:{$recursiveRef:"#"},unevaluatedItems:{$recursiveRef:"#"},items:{anyOf:[{$recursiveRef:"#"},{$ref:"#/$defs/schemaArray"}]},contains:{$recursiveRef:"#"},additionalProperties:{$recursiveRef:"#"},unevaluatedProperties:{$recursiveRef:"#"},properties:{type:"object",additionalProperties:{$recursiveRef:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$recursiveRef:"#"},propertyNames:{format:"regex"},default:{}},dependentSchemas:{type:"object",additionalProperties:{$recursiveRef:"#"}},propertyNames:{$recursiveRef:"#"},if:{$recursiveRef:"#"},then:{$recursiveRef:"#"},else:{$recursiveRef:"#"},allOf:{$ref:"#/$defs/schemaArray"},anyOf:{$ref:"#/$defs/schemaArray"},oneOf:{$ref:"#/$defs/schemaArray"},not:{$recursiveRef:"#"}},$defs:{schemaArray:{type:"array",minItems:1,items:{$recursiveRef:"#"}}}}});var I$=k((FPe,z9)=>{z9.exports={$schema:"https://json-schema.org/draft/2019-09/schema",$id:"https://json-schema.org/draft/2019-09/meta/content",$vocabulary:{"https://json-schema.org/draft/2019-09/vocab/content":!0},$recursiveAnchor:!0,title:"Content vocabulary meta-schema",type:["object","boolean"],properties:{contentMediaType:{type:"string"},contentEncoding:{type:"string"},contentSchema:{$recursiveRef:"#"}}}});var O$=k((jPe,W9)=>{W9.exports={$schema:"https://json-schema.org/draft/2019-09/schema",$id:"https://json-schema.org/draft/2019-09/meta/core",$vocabulary:{"https://json-schema.org/draft/2019-09/vocab/core":!0},$recursiveAnchor:!0,title:"Core vocabulary meta-schema",type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference",$comment:"Non-empty fragments not allowed.",pattern:"^[^#]*#?$"},$schema:{type:"string",format:"uri"},$anchor:{type:"string",pattern:"^[A-Za-z][-A-Za-z0-9.:_]*$"},$ref:{type:"string",format:"uri-reference"},$recursiveRef:{type:"string",format:"uri-reference"},$recursiveAnchor:{type:"boolean",default:!1},$vocabulary:{type:"object",propertyNames:{type:"string",format:"uri"},additionalProperties:{type:"boolean"}},$comment:{type:"string"},$defs:{type:"object",additionalProperties:{$recursiveRef:"#"},default:{}}}}});var M$=k((UPe,G9)=>{G9.exports={$schema:"https://json-schema.org/draft/2019-09/schema",$id:"https://json-schema.org/draft/2019-09/meta/format",$vocabulary:{"https://json-schema.org/draft/2019-09/vocab/format":!0},$recursiveAnchor:!0,title:"Format vocabulary meta-schema",type:["object","boolean"],properties:{format:{type:"string"}}}});var x$=k((HPe,K9)=>{K9.exports={$schema:"https://json-schema.org/draft/2019-09/schema",$id:"https://json-schema.org/draft/2019-09/meta/meta-data",$vocabulary:{"https://json-schema.org/draft/2019-09/vocab/meta-data":!0},$recursiveAnchor:!0,title:"Meta-data vocabulary meta-schema",type:["object","boolean"],properties:{title:{type:"string"},description:{type:"string"},default:!0,deprecated:{type:"boolean",default:!1},readOnly:{type:"boolean",default:!1},writeOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0}}}});var L$=k((VPe,Y9)=>{Y9.exports={$schema:"https://json-schema.org/draft/2019-09/schema",$id:"https://json-schema.org/draft/2019-09/meta/validation",$vocabulary:{"https://json-schema.org/draft/2019-09/vocab/validation":!0},$recursiveAnchor:!0,title:"Validation vocabulary meta-schema",type:["object","boolean"],properties:{multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/$defs/nonNegativeInteger"},minLength:{$ref:"#/$defs/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},maxItems:{$ref:"#/$defs/nonNegativeInteger"},minItems:{$ref:"#/$defs/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},maxContains:{$ref:"#/$defs/nonNegativeInteger"},minContains:{$ref:"#/$defs/nonNegativeInteger",default:1},maxProperties:{$ref:"#/$defs/nonNegativeInteger"},minProperties:{$ref:"#/$defs/nonNegativeIntegerDefault0"},required:{$ref:"#/$defs/stringArray"},dependentRequired:{type:"object",additionalProperties:{$ref:"#/$defs/stringArray"}},const:!0,enum:{type:"array",items:!0},type:{anyOf:[{$ref:"#/$defs/simpleTypes"},{type:"array",items:{$ref:"#/$defs/simpleTypes"},minItems:1,uniqueItems:!0}]}},$defs:{nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{$ref:"#/$defs/nonNegativeInteger",default:0},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}}}});var q$=k(mS=>{"use strict";Object.defineProperty(mS,"__esModule",{value:!0});var X9=C$(),J9=A$(),Q9=I$(),Z9=O$(),eJ=M$(),tJ=x$(),rJ=L$(),nJ=["/properties"];function iJ(t){return[X9,J9,Q9,Z9,e(this,eJ),tJ,e(this,rJ)].forEach(r=>this.addMetaSchema(r,void 0,!1)),this;function e(r,n){return t?r.$dataMetaSchema(n,nJ):n}}mS.default=iJ});var $$=k((gt,yS)=>{"use strict";Object.defineProperty(gt,"__esModule",{value:!0});gt.MissingRefError=gt.ValidationError=gt.CodeGen=gt.Name=gt.nil=gt.stringify=gt.str=gt._=gt.KeywordCxt=gt.Ajv2019=void 0;var sJ=u1(),oJ=a$(),aJ=m$(),cJ=b$(),lJ=R$(),uJ=D$(),dJ=q$(),gS="https://json-schema.org/draft/2019-09/schema",za=class extends sJ.default{constructor(e={}){super({...e,dynamicRef:!0,next:!0,unevaluated:!0})}_addVocabularies(){super._addVocabularies(),this.addVocabulary(aJ.default),oJ.default.forEach(e=>this.addVocabulary(e)),this.addVocabulary(cJ.default),this.addVocabulary(lJ.default),this.opts.discriminator&&this.addKeyword(uJ.default)}_addDefaultMetaSchema(){super._addDefaultMetaSchema();let{$data:e,meta:r}=this.opts;r&&(dJ.default.call(this,e),this.refs["http://json-schema.org/schema"]=gS)}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(gS)?gS:void 0)}};gt.Ajv2019=za;yS.exports=gt=za;yS.exports.Ajv2019=za;Object.defineProperty(gt,"__esModule",{value:!0});gt.default=za;var fJ=Ql();Object.defineProperty(gt,"KeywordCxt",{enumerable:!0,get:function(){return fJ.KeywordCxt}});var Wa=ve();Object.defineProperty(gt,"_",{enumerable:!0,get:function(){return Wa._}});Object.defineProperty(gt,"str",{enumerable:!0,get:function(){return Wa.str}});Object.defineProperty(gt,"stringify",{enumerable:!0,get:function(){return Wa.stringify}});Object.defineProperty(gt,"nil",{enumerable:!0,get:function(){return Wa.nil}});Object.defineProperty(gt,"Name",{enumerable:!0,get:function(){return Wa.Name}});Object.defineProperty(gt,"CodeGen",{enumerable:!0,get:function(){return Wa.CodeGen}});var pJ=im();Object.defineProperty(gt,"ValidationError",{enumerable:!0,get:function(){return pJ.default}});var hJ=Zl();Object.defineProperty(gt,"MissingRefError",{enumerable:!0,get:function(){return hJ.default}})});var Xa=require("path"),ze=$(hw());var nf=class t{constructor(e,r,n,i){this._uri=e,this._languageId=r,this._version=n,this._content=i,this._lineOffsets=void 0}get uri(){return this._uri}get languageId(){return this._languageId}get version(){return this._version}getText(e){if(e){let r=this.offsetAt(e.start),n=this.offsetAt(e.end);return this._content.substring(r,n)}return this._content}update(e,r){for(let n of e)if(t.isIncremental(n)){let i=gw(n.range),s=this.offsetAt(i.start),o=this.offsetAt(i.end);this._content=this._content.substring(0,s)+n.text+this._content.substring(o,this._content.length);let a=Math.max(i.start.line,0),c=Math.max(i.end.line,0),l=this._lineOffsets,u=mw(n.text,!1,s);if(c-a===u.length)for(let f=0,p=u.length;f<p;f++)l[f+a+1]=u[f];else u.length<1e4?l.splice(a+1,c-a,...u):this._lineOffsets=l=l.slice(0,a+1).concat(u,l.slice(c+1));let d=n.text.length-(o-s);if(d!==0)for(let f=a+1+u.length,p=l.length;f<p;f++)l[f]=l[f]+d}else if(t.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=mw(this._content,!0)),this._lineOffsets}positionAt(e){e=Math.max(Math.min(e,this._content.length),0);let r=this.getLineOffsets(),n=0,i=r.length;if(i===0)return{line:0,character:e};for(;n<i;){let o=Math.floor((n+i)/2);r[o]>e?i=o:n=o+1}let s=n-1;return{line:s,character:e-r[s]}}offsetAt(e){let r=this.getLineOffsets();if(e.line>=r.length)return this._content.length;if(e.line<0)return 0;let n=r[e.line],i=e.line+1<r.length?r[e.line+1]:this._content.length;return Math.max(Math.min(n+e.character,i),n)}get lineCount(){return this.getLineOffsets().length}static isIncremental(e){let r=e;return r!=null&&typeof r.text=="string"&&r.range!==void 0&&(r.rangeLength===void 0||typeof r.rangeLength=="number")}static isFull(e){let r=e;return r!=null&&typeof r.text=="string"&&r.range===void 0&&r.rangeLength===void 0}},Qn;(function(t){function e(i,s,o,a){return new nf(i,s,o,a)}t.create=e;function r(i,s,o){if(i instanceof nf)return i.update(s,o),i;throw new Error("TextDocument.update: document must be created by TextDocument.create")}t.update=r;function n(i,s){let o=i.getText(),a=My(s.map(Yj),(u,d)=>{let f=u.range.start.line-d.range.start.line;return f===0?u.range.start.character-d.range.start.character:f}),c=0,l=[];for(let u of a){let d=i.offsetAt(u.range.start);if(d<c)throw new Error("Overlapping edit");d>c&&l.push(o.substring(c,d)),u.newText.length&&l.push(u.newText),c=i.offsetAt(u.range.end)}return l.push(o.substr(c)),l.join("")}t.applyEdits=n})(Qn||(Qn={}));function My(t,e){if(t.length<=1)return t;let r=t.length/2|0,n=t.slice(0,r),i=t.slice(r);My(n,e),My(i,e);let s=0,o=0,a=0;for(;s<n.length&&o<i.length;)e(n[s],i[o])<=0?t[a++]=n[s++]:t[a++]=i[o++];for(;s<n.length;)t[a++]=n[s++];for(;o<i.length;)t[a++]=i[o++];return t}function mw(t,e,r=0){let n=e?[r]:[];for(let i=0;i<t.length;i++){let s=t.charCodeAt(i);(s===13||s===10)&&(s===13&&i+1<t.length&&t.charCodeAt(i+1)===10&&i++,n.push(r+i+1))}return n}function gw(t){let e=t.start,r=t.end;return e.line>r.line||e.line===r.line&&e.character>r.character?{start:r,end:e}:t}function Yj(t){let e=gw(t.range);return e!==t.range?{newText:t.newText,range:e}:t}var sf=["namespace","class","enum","interface","struct","typeParameter","type","parameter","variable","property","enumMember","decorator","event","function","method","macro","label","comment","string","keyword","number","regexp","operator"],of=["declaration","definition","readonly","static","deprecated","abstract","async","modification","documentation","defaultLibrary"];var Ly=$(require("url")),Tw=require("crypto"),Go=require("path"),ar=$(U());var xy=$(U());var Cr=$(U());var Q=class{constructor(e){this._children=[];this.syntaxIssues=[];this.resetableIssues=[];this._firstToken=e?.start,this._lastToken=e?.end}get issues(){return[...this.syntaxIssues,...this.resetableIssues]}resetIssues(){this.resetableIssues=[],this.children.forEach(e=>e.resetIssues())}get serializeIssues(){return this.issues.map(e=>e())}get firstToken(){return this._firstToken??this._children[0].firstToken}set firstToken(e){this._firstToken=e}get lastToken(){return this._lastToken??this._children[this._children.length-1]?.lastToken??this.firstToken}set lastToken(e){this._lastToken=e}get uri(){return this.firstToken.uri}getTopMostAstNodeForFile(e){return le(e,this.uri)?[this]:this.children.flatMap(r=>r.getTopMostAstNodeForFile(e))}getDocumentSymbols(e){if(!this.docSymbolsMeta)return this.children.flatMap(n=>n.getDocumentSymbols(e)??[]);if(!le(this.uri,e))return[];let r=pe(this);return[{name:this.docSymbolsMeta.name?this.docSymbolsMeta.name:"__UNSET__",kind:this.docSymbolsMeta.kind,range:r,selectionRange:r,children:[...this.children.flatMap(n=>n.getDocumentSymbols(e)??[])]}]}getWorkspaceSymbols(){if(!this.docSymbolsMeta)return this.children.flatMap(i=>i.getWorkspaceSymbols()??[]);let e=this.docSymbolsMeta.kind;if(![Cr.SymbolKind.File,Cr.SymbolKind.Class,Cr.SymbolKind.Constant].some(i=>i===e))return[];let r=Ar(this.uri),n=r?.range??pe(this);return[{location:Cr.Location.create(de(r?.docUri??this.uri),n),name:this.docSymbolsMeta.name?this.docSymbolsMeta.name:"__UNSET__",kind:this.docSymbolsMeta.kind},...this.children.flatMap(i=>i.getWorkspaceSymbols()??[]).filter(i=>i.kind===Cr.SymbolKind.File||i.kind===Cr.SymbolKind.Class||i.kind===Cr.SymbolKind.Constant)]}buildSemanticTokens(e){this._children.forEach(r=>r.buildSemanticTokens(e)),!(!this.semanticTokenType||!this.semanticTokenModifiers)&&e(Si(this.semanticTokenType),Ni(this.semanticTokenModifiers),this.firstToken,this.lastToken)}get children(){return this._children}get allDescendants(){return this.allDescendantsCache??=[...this._children,...this._children.flatMap(e=>e.allDescendants)],this.allDescendantsCache}addChild(e){e&&(e.parentNode=this,this._children.push(e)),this.allDescendantsCache=void 0}isAncestorOf(e){return this.children.some(r=>r===e||r.isAncestorOf(e))}toPrettyString(e){return this.toString()}toString(e){return"TODO"}get range(){return Cr.Range.create(Cr.Position.create(this.firstToken.pos.line,this.firstToken.pos.col),Cr.Position.create(this.lastToken.pos.line,this.lastToken.pos.colEnd))}get serializeUri(){return de(this.uri)}serialize(e){return{uri:this.serializeUri,range:this.range,issues:this.serializeIssues}}};var Ee=class extends Q{toJson(){return-1}#e;resolve(e){return this.#e??=af(this.toString(),e),this.#e}#t;evaluate(e){return this.#t??=De(`${this.operator?this.operator.toString():""}${this.resolve(e)}`),this.#t}#n;isTrue(e){return this.#n??=De(`!!(${this.operator?this.operator.toString():""}${this.resolve(e)})`),this.#n}toPrettyString(e){let r=this.evaluate(e);return`${r.toString()} /* ${this.toString()}${typeof r=="number"?` = 0x${r.toString(16)}`:""} */`}serialize(e){return{type:"EXPRESSION",value:this.toString(),evaluated:this.evaluate(e),uri:this.serializeUri,range:this.range,issues:this.serializeIssues}}},Zn=class extends Ee{constructor(r,n,i){super();this.expression=r;this.wrapped=n;this.addChild(r),i&&(this.addChild(i.operator),this.addChild(i.expression),this.join=[],this.join?.push(i))}get firstToken(){return this.openBracket?this.openBracket:super.firstToken}get lastToken(){return this.closeBracket?this.closeBracket:super.lastToken}addExpression(r,n){this.addChild(r),this.addChild(n),this.join??=[],this.join?.push({operator:r,expression:n})}toString(){let r=this.children.map(n=>n.toString()).join(" ");return this.wrapped?`(${r})`:`${r}`}isTrue(r){let n=`(${this.children.map(i=>i instanceof Ee?i.resolve(r):i.toString()).join(" ")})`;return De(`!!(${this.operator?this.operator.toString():""}${n})`)}};var ei=class extends Ee{constructor(r,n,i){super(n);this.value=r;this.docSymbolsMeta={name:`param${i+1}`,kind:xy.SymbolKind.Variable},this.semanticTokenType="variable",this.semanticTokenModifiers="declaration"}toString(){return this.value}},In=class extends Ee{constructor(r,n){super();this.functionName=r;this.params=n;this.addChild(r),this.params.forEach(i=>this.addChild(i))}getDocumentSymbols(r){return le(this.uri,r)?[{name:this.functionName.name,kind:xy.SymbolKind.Function,range:pe(this),selectionRange:pe(this),children:this.params.flatMap(n=>n?.getDocumentSymbols(r)??[])}]:[]}toString(){return`${this.functionName.toString()}(${this.params.map(r=>r?.toString()??"<NULL>").join(",")})`}isTrue(r){if(this.functionName.name==="defined"){let n=!!(this.params.length===1&&this.params[0]&&r.has(this.params[0].value));return this.operator?De(`!!(${this.operator}${n})`):n}return super.isTrue(r)}};var Wr=(t,e,r=!0,n=!0)=>({start:{line:t?.pos.line??0,character:r?t?.pos.col??0:(t?.pos.col??0)+(t?.pos.len??0)},end:{line:e?.pos.line??0,character:n?(e?.pos.col??0)+(e?.pos.len??0):e?.pos.col??0}});var pe=t=>Wr(t.firstToken,t.lastToken),Si=t=>sf.findIndex(e=>e===t),Ni=t=>of.findIndex(e=>e===t),qy=(t,e,r)=>!le(t.uri,e)||r.line<t.pos.line?!1:r.line>t.pos.line?!0:r.character>=t.pos.colEnd,Jj=(t,e,r)=>le(t.uri,e)?r.line<t.pos.line?!0:r.line>t.pos.line?!1:r.character<t.pos.col:!1,an=(t,e,r)=>{let n=t.firstToken,i=t.lastToken;return!!((n.pos.line<r.line||n.pos.line===r.line&&n.pos.col<=r.character)&&(i.pos.line>r.line||i.pos.line===r.line&&i.pos.colEnd>=r.character)&&le(t.uri,e))},vw=(t,e)=>{let r=(i,s)=>i.line<s.line||i.line===s.line&&i.character<=s.character,n=(i,s)=>i.line>s.line||i.line===s.line&&i.character>=s.character;return r(t.start,e.start)&&n(t.end,e.end)},bw=(t,e,r)=>{let n=t.firstToken,i=t.lastToken;return!!(t.lastToken.value!==";"&&(n.pos.line===r.line||i.pos.line===r.line)&&r.character>=i.pos.colEnd&&le(t.uri,e))},_w=(t,e,r)=>{if(!t)return!1;let i=t.filter(s=>s.pos.line===r.line).at(-1);return i&&i.pos.col>=r.character?!1:e.lastToken===i};var ti=(t,e,r)=>{let n=t,i=t;for(;i;)n=i,i=[...n.children].reverse().find(s=>an(s,e,r));return n},Tc=(t,e,r)=>{let n=t,i=t;for(;i;)n=i,i=[...n.children].find(s=>Jj(s.lastToken,e,r));return n===t?void 0:n},vc=(t,e,r)=>{let n=t,i=t;for(;i;)n=i,i=[...n.children].reverse().find(s=>qy(s.firstToken,e,r));return n===t?void 0:n},uf="#virtual#",$y=t=>t.includes(uf),Ar=t=>{if(!$y(t))return;let[e,r]=t.split(uf),[n,i]=r.split("-"),[s,o]=n.split(":"),[a,c]=i.split(":");return{docUri:e,range:ar.Range.create(ar.Position.create(Number.parseInt(s),Number.parseInt(o)),ar.Position.create(Number.parseInt(a),Number.parseInt(c)))}},By=t=>{let e=Ar(t.uri);e&&(t.range=e.range,t.uri=e?.docUri,t.virtual=!0,t.linkedTo=t.linkedTo.map(({range:r,uri:n})=>{let i=Ar(n);return{range:i?.range??r,uri:i?.docUri??n,templateStrings:[]}}))},W=(t,e,r=e,n,{severity:i=ar.DiagnosticSeverity.Error,linkedTo:s=[],tags:o,templateStrings:a=[],edit:c,codeActionTitle:l,inclusiveStart:u,inclusiveEnd:d}={severity:ar.DiagnosticSeverity.Error,linkedTo:[],templateStrings:[]})=>{let f={issues:Array.isArray(t)?t:[t],range:Wr(e,r,u,d),uri:e.uri,severity:i,linkedTo:s.map(({range:h,uri:T})=>({range:h,uri:T,templateStrings:[]})),tags:o,templateStrings:a,edit:c,codeActionTitle:l};By(f);let p,g=()=>(p??={severity:f.severity,range:f.range,message:f.issues?f.issues.map(eU).join(" or "):"",source:"devicetree",tags:f.tags,data:{firstToken:{pos:e.pos,tokens:e.tokens,value:e.value},lastToken:{pos:r.pos,tokens:r.tokens,value:r.value},type:"SyntaxIssue",items:f.issues,edit:f.edit,codeActionTitle:f.codeActionTitle,virtual:!!f.virtual}},p);return n?.syntaxIssues.push(g),{raw:f,diagnostic:g}},Lt=(t,e,r,n,{severity:i=ar.DiagnosticSeverity.Error,linkedTo:s=[],tags:o,templateStrings:a=[],edit:c,codeActionTitle:l,linkedToTemplateStrings:u=[]}={severity:ar.DiagnosticSeverity.Error,linkedTo:[],templateStrings:[],linkedToTemplateStrings:[]})=>{let d={issues:Array.isArray(t)?t:[t],range:Wr(e,r),uri:e.uri,severity:i,linkedTo:s.map(({range:g,uri:h},T)=>({range:g,uri:h,templateStrings:u.at(T)??[]})),tags:o,templateStrings:a,edit:c,codeActionTitle:l};By(d);let f,p=()=>(f??={severity:d.severity,range:d.range,message:tU(d),source:"devicetree",tags:d.tags,relatedInformation:[...d.linkedTo.map(g=>({message:d.issues.map(h=>rU(h,g.templateStrings)).join(" or "),location:{uri:de(g.uri),range:g.range}}))]},f);return n?.resetableIssues.push(p),{raw:d,diagnostic:p}},j=(t,e,r,n,{severity:i=ar.DiagnosticSeverity.Error,linkedTo:s=[],tags:o,templateStrings:a=[],edit:c,codeActionTitle:l}={severity:ar.DiagnosticSeverity.Error,linkedTo:[],templateStrings:[]})=>{let u={issues:Array.isArray(t)?t:[t],range:Wr(e,r),severity:i,uri:e.uri,linkedTo:s.map(({range:p,uri:g})=>({range:p,uri:g,templateStrings:[]})),tags:o,templateStrings:a,edit:c,codeActionTitle:l};By(u);let d,f=()=>(d??={severity:u.severity,range:u.range,message:nU(u),relatedInformation:[...u.linkedTo.map(p=>({message:u.issues.map(iU).join(" or "),location:{uri:de(p.uri),range:p.range}}))],source:"devicetree",tags:u.tags,data:{type:"StandardTypeIssue",firstToken:{pos:e.pos,tokens:e.tokens,value:e.value},lastToken:{pos:r.pos,tokens:r.tokens,value:r.value},edit:u.edit,codeActionTitle:u.codeActionTitle,items:u.issues,virtual:!!u.virtual}},d);return n?.resetableIssues.push(f),{raw:u,diagnostic:f}};function Ir(t,e,r,{severity:n=ar.DiagnosticSeverity.Warning,linkedTo:i=[],tags:s,templateStrings:o=[],edit:a,codeActionTitle:c}={severity:ar.DiagnosticSeverity.Warning,linkedTo:[],templateStrings:[],edit:[],codeActionTitle:void 0},l=r){let u={issues:Array.isArray(t)?t:[t],range:ar.Range.create(r,l),severity:n,uri:e,linkedTo:i.map(({range:p,uri:g})=>({range:p,uri:g,templateStrings:[]})),tags:s,templateStrings:o,edit:a,codeActionTitle:c},d;return{raw:u,diagnostic:()=>(d??={severity:u.severity,range:u.range,message:sU(u),relatedInformation:[...u.linkedTo.map(p=>({message:u.issues.map(oU).join(" or "),location:{uri:de(p.uri),range:p.range}}))],source:"devicetree",tags:u.tags,data:{type:"FormattingIssues",items:u.issues,edit:u.edit,codeActionTitle:u.codeActionTitle,virtual:!!u.virtual}},d)}}var Sw=(t,e)=>[...t].sort((n,i)=>{let s=e.getSortKey(n),o=e.getSortKey(i);if(s===void 0||o===void 0)throw new Error("Sort keys must be set");if(s!==o)return s-o;let a=n.lastToken,c=i.lastToken;return a.pos.line!==c.pos.line?a.pos.line-c.pos.line:a.pos.col-c.pos.col});async function _t(t,e,r){let n=Se(t.textDocument.uri);if(!e)return[];let i=performance.now(),o=(await e.getRuntime()).getDeepestAstNode(n,t.position),a=e.getSortKey(o?.ast);return console.log(`search: ${performance.now()-i}ms`),r(o,l=>{let u=t.position;if(le(l.uri,n)){let d=l.lastToken;return d.pos.line<u.line||d.pos.line===u.line&&d.pos.colEnd<=u.character}return a!==void 0&&(e.getSortKey(l)??-1)<=a})}function oe(t,e){return{start:t,end:e??t}}var H=(t,e)=>t?.tokens.some(r=>r===e),Qe=(t,e)=>r=>r?.value&&(e?.caseInsensitive?t.toLowerCase()===r.value.toLowerCase():t===r.value)?"yes":e?.allowPartial?Qj(t)(r):"no",Oe=t=>e=>e?.tokens.some(r=>r===t)?"yes":"no",Qj=t=>e=>e?.value&&t.startsWith(e.value)?"partial":"no",On=(t,e)=>!!t&&!!e&&t.pos.line===e.pos.line&&le(t.uri,e.uri),qt=(t,e)=>t?.tokens[0]===21&&e?.tokens[0]===21&&(t?.prevToken&&t.prevToken.value===e?.value||e?.prevToken&&e.prevToken.value===t?.value)?!0:!!t&&!!e&&t.pos.colEnd===e.pos.col&&On(t,e),df=t=>t.map((e,r)=>({index:r,context:e,files:e.getContextFiles()})),cn=(t,e,r,n)=>{if("id"in e){let s=t?.find(o=>o.id===e.id);return s||void 0}if("name"in e){let s=t?.find(o=>o.ctxNames.includes(e.name));return s||void 0}return r?.getContextFiles().find(s=>le(s,e.uri))?r:df(t).sort(s=>s.context.id===n?-1:0).find(s=>s.files.some(o=>le(o,e.uri)))?.context},Fy=(t,e)=>df(t).filter(n=>n.files.some(i=>le(i,e))).map(n=>n.context),Nw=t=>{let e=/^(\w+)\s+(.+)$/,r=/^(\w+)\(([^)]*)\)\s+(.+)$/,n=/^(\w+)\(([^)]*),\s*\.\.\.\)\s+(.+)$/,i;if(i=n.exec(t)){let[,,s,o]=i,a=s.split(",").map(c=>c.trim());return(...c)=>{let l=o;return a.forEach((u,d)=>{let f=new RegExp(`\\b${u}\\b`,"g");l=l.replace(f,c[d])}),l=l.replace(/__VA_ARGS__/g,c.slice(a.length).join(", ")),l}}else if(i=r.exec(t)){let[,,s,o]=i,a=s.split(",").map(c=>c.trim());return(...c)=>{let l=o;return a.forEach((u,d)=>{let f=new RegExp(`\\b${u}\\b`,"g");l=l.replace(f,c[d])}),l}}else if(i=e.exec(t)){let[,,s]=i;return s.trim()}},Zj=0,af=(t,e)=>{let r=o=>o.replace(/(\w+)\s*##\s*(\w+)/g,(a,c,l)=>c+l),n=o=>o.replace(/#(\w+)/g,(a,c)=>`"${c}"`),i=t,s;do s=i,i=r(s),i=n(i),i=i.replace(/\b(\w+)\(([^)]*)\)|\b(\w+)\b/g,(o,a,c,l)=>{if(a==="defined"){let u=c.split(",").map(d=>d.trim());return u[0]?e.get(u[0])?.resolver:u}else if(a&&typeof e.get(a)?.resolver=="function"){let u=c.split(",").map(d=>d.trim()).map(d=>d==="__COUNTER__"?(Zj++).toString():d);return(e.get(a)?.resolver)(...u)}else if(l&&typeof e.get(l)?.resolver=="string")return e.get(l)?.resolver;return o});while(i!==s);return i};function jy(t){return t.replace(/'(.)'/g,(e,r)=>r.charCodeAt(0).toString()).replace(/(0x[a-f\d]+|\d+)[ul]*/gi,"$1")}function De(t){try{return(0,eval)(jy(t))}catch(e){console.log(e instanceof Error?e.message:e)}return t}var de=t=>Ly.default.pathToFileURL(t).toString(),Se=t=>rt(Ly.default.fileURLToPath(t)),kw=(t,e)=>{let r=(0,Go.relative)(t,e);return!!r&&!r.startsWith("..")&&!(0,Go.isAbsolute)(r)},le=(t,e)=>!t||!e?!1:t===e,rt=t=>(0,Go.normalize)(process.platform==="win32"?t.toLowerCase():t),ki=t=>(0,Tw.createHash)("sha256").update([rt(t.dtsFile),...t.includePaths.map(rt),...t.overlays.map(rt),t.bindingType,...t.zephyrBindings.map(rt),...t.deviceOrgBindingsMetaSchema.map(rt),...t.deviceOrgTreeBindings.map(rt),`showFormattingErrorAsDiagnostics-${t.showFormattingErrorAsDiagnostics}`].join(":")).digest("hex"),eU=t=>{switch(t){case 0:return"Expected value";case 1:return"Expected ';'";case 2:return"Expected '{'";case 3:return"Expected '}'";case 4:return"Expected '['";case 5:return"Expected ']'";case 12:return"Expected '>'";case 13:return"Expected '<'";case 16:return`Expected '"'`;case 17:return`Expected "'"\\`;case 24:return"Missing ':'";case 21:return"Missing '/'";case 26:return'Expected ")"';case 28:return'Missing ","';case 6:return"Expected property name";case 7:return"Expected node name";case 49:return"Node name shall start with a lower or upper case character";case 50:return"Node unit address should not start with 0x";case 51:return"Node unit address should not end with with ULL";case 8:return"Expected node address";case 9:return"Expected node path";case 48:return"Expected node path reference";case 10:return"Expected node reference";case 11:return"Expected root node name";case 14:return"Expected bytestring";case 15:return"Expected two digits for each byte in bytestring";case 20:return"Hex values are not allowed";case 18:return"Expected label name";case 19:return"Expected '/' at the start of a node path";case 23:return"Found ';' without a statement";case 25:return"Did you mean /delete-node/ or /delete-property/?";case 34:return"Did you mean /delete-node/?";case 35:return"Did you mean /delete-property/?";case 22:return"Unknown syntax";case 27:return"Expected expression";case 31:return"Expected macro identifier";case 30:return"Expected macro identifier or function like macro";case 29:return"White space is not allowed";case 32:return"Properties can only be defined in a node";case 33:return"Properties can only be deleted inside a node";case 36:return"Unable to resolve include";case 52:return"Unknown Node Address syntax";case 37:return"Expected start address";case 38:return"Expected end address";case 39:case 40:return"Expected 8|16|32|64";case 42:return"Unknown macro name";case 43:return"Expected function like macro";case 44:return"Macro expects less arguments";case 45:return"Macro expects more arguments";case 46:return"Missing #ENDIF";case 47:return"Block Unused";case 41:return"This syntax is not officially part of the DTS V0.4 standard"}},tU=t=>t.issues.map(e=>{switch(e){case 0:return`Property "${t.templateStrings[0]}" is replaced by a later definition`;case 1:return"Cannot delete a property before it has been defined";case 2:return"Node name already defined";case 5:return"Cannot delete a node before it has been defined";case 3:return`No node with that reference "${t.templateStrings[0]}" has been defined`;case 8:return`No node with name "${t.templateStrings[0]}" could be found in "/${t.templateStrings[1]}".`;case 4:return`Label name "${t.templateStrings[0]}" already defined`;case 6:return`Property "${t.templateStrings[0]}" was deleted`;case 7:return`Node "${t.templateStrings[0]}" was deleted`;case 9:return`The following node "${t.templateStrings[1]}" shall be present in "${t.templateStrings[0]}" node.`;case 10:return`The following node "${t.templateStrings[0]}" address range collides with another node. Address start: "${t.templateStrings[1]}", end: "${t.templateStrings[2]}".`}}).join(" or "),rU=(t,e)=>{switch(t){case 0:return"Property name already defined.";case 2:return"Defined here";case 4:return"Defined here";case 7:case 6:return"Deleted here";case 9:return"Node";case 10:return`Node "${e[0]}". Address start: "${e[1]}", end: "${e[2]}".`;default:return"TODO"}},nU=t=>t.issues.map(e=>{switch(e){case 9:return`Only these value are allowed ${t.templateStrings[0]}`;case 1:return"INTRO should be empty";case 8:return"INTRO can only be assigned one value";case 5:return"INTRO should be assigned a U32";case 6:return"INTRO should be assigned a U64";case 7:return"INTRO should be assigned a 'property encoded array'";case 2:return"INTRO should be assigned a string";case 3:return"INTRO should be assigned a string list";case 4:return`INTRO expects ${t.templateStrings[1]} values`;case 0:return"INTRO is required";case 11:return"INTRO should be omitted";case 27:return"INTRO name is not permitted under this node";case 34:return"INTRO name is not defined in the type binding for this node";case 10:return"INTRO address value must match node address";case 12:return"INTRO should be 'cpu'";case 13:return"INTRO should be 'memory'";case 14:return"INTRO is deprecated and should not be used'";case 15:return`INTRO ${t.templateStrings[1]}'`;case 18:return"INTRO value must be unique in the entire Devicetree";case 19:return`INTRO should have format ${t.templateStrings[1]}`;case 16:return`INTRO requires property "${t.templateStrings[1]}" in node path "${t.templateStrings[2]}"`;case 17:return"Unable to resolve interrupt parent node";case 20:return`INTRO should have format ${t.templateStrings[1]}`;case 21:return"Node is disabled";case 22:return"Unable to resolve handle";case 23:return`Unable to find "${t.templateStrings[0]}" in ${t.templateStrings[1]}`;case 24:return t.templateStrings[0];case 25:return t.templateStrings[0];case 26:return t.templateStrings[0];case 28:return t.templateStrings[0];case 35:return"Unable to find mapping range for address";case 29:return`INTRO exceeds address space available for this mapping. The range ends at ${t.templateStrings[2]}, the node ends at ${t.templateStrings[1]}`;case 30:return"Map entry overlaps with others entries";case 31:return"Unable to match to a nexus map entry";case 32:return`Unknown node type "${t.templateStrings[0]}"`;case 33:return`Missing name for "${t.templateStrings[0]}" index ${t.templateStrings[1]}"`;case 36:return"Node address is missing";case 37:return`Binding should be used on bus type${t.templateStrings.length?"s":""}: ${t.templateStrings.join(" or ")}`}}).join(" or ").replace("INTRO",`Property "${t.templateStrings[0]}"`).replaceAll("INTRO ",""),iU=t=>{switch(t){case 16:case 0:return"Node";case 15:return"Ignored reason";case 18:return"Conflicting properties";case 8:return"Additional value";case 21:return"Disabled by";case 29:return"Mapping range";case 30:return"Map entry";case 31:return"Nexus map entries";case 33:return"Names property";case 35:return"Range property";default:return"TODO"}},sU=t=>t.issues.map(e=>{switch(e){case 4:return"Add end of line to end of file";case 1:return`${t.codeActionTitle}. Expecting ${t.templateStrings[0]}.`;case 0:return"Move to a new line";case 3:return"Remove trailing whitespace at the end of file.";case 2:return"Remove trailing whitespace at the end of the line.";case 5:return`Fix indentation. ${t.templateStrings.at(0)?.length===0?"No indentation expected":`Expecting ${t.templateStrings[0]}`}`;case 6:return`Move token "${t.templateStrings[0]}" next to expression`;case 7:return"Remove (...) enclosure. This expression should only be enclosed in the #define of the macro"}}).join(" or "),oU=t=>"TODO",on=(t,e)=>{let r=Math.max(t.length,e.length);for(let n=0;n<r;n++){let i=t[t.length-r+n]??0,s=e[e.length-r+n]??0;if(i<s)return-1;if(i>s)return 1}return 0},Qi=(t,e)=>{let r=Math.max(t.length,e.length),n=new Array(r).fill(0),i=0;for(let s=0;s<r;s++){let o=t[t.length-1-s]??0,a=e[e.length-1-s]??0,c=o+a+i;n[r-1-s]=c>>>0,i=c>4294967295?1:0}return i&&n.unshift(1),n},aU=(t,e)=>{let r=Math.max(t.length,e.length),n=new Array(r).fill(0),i=0;for(let s=0;s<r;s++){let o=t[t.length-1-s]??0,a=e[e.length-1-s]??0;o-=i,o<a?(o+=4294967296,i=1):i=0,n[r-1-s]=o-a>>>0}for(;n.length>1&&n[0]===0;)n.shift();return n},cU=(t,e)=>Qi(t,e),Rw=(t,e)=>{let r=[];for(let n of t){let i=n.childAddress,s=n.length,o=Qi(i,s);if(on(e,i)>=0&&on(e,o)<0){let a=aU(e,i),c=n.parentAddress,l=cU(c,a),u=Qi(c,s);r.push({start:l,end:u,range:Wr(n.rangeTokens.start,n.rangeTokens.end),uri:n.rangeTokens.start.uri})}}return r};function Pw(t){return Array.isArray(t)&&Array.isArray(t[0])}function bc(t){return!t||t instanceof In?t:bc(t.parentNode)}function ww(t,e){let r=t.getText(),n=e.slice().sort((s,o)=>{let a=t.offsetAt(s.range.start),c=t.offsetAt(o.range.start);if(a!==c)return c-a;let l=t.offsetAt(s.range.end),u=t.offsetAt(o.range.end);if(l!==u)return u-l;let d=a===l&&s.newText.length>0,f=c===u&&o.newText.length>0;return d!==f?d?1:-1:0}),i=r;for(let s of n){let o=t.offsetAt(s.range.start),a=t.offsetAt(s.range.end);i=i.slice(0,o)+s.newText+i.slice(a)}return i}function yw(t,e){return t.line<e.line?-1:t.line>e.line?1:t.character<e.character?-1:t.character>e.character?1:0}function Ew(t,e){return yw(t.end,e.start)>0&&yw(t.start,e.end)<0}var Dw=(t,e)=>{let r=Cw(t,e),n=Aw(t,e);r&&(t.topComment=r.comment),n&&(t.endComment=n.comment)},Cw=(t,e)=>{let r=e.find(i=>i.lastToken===t.firstToken.prevToken&&(i.lastToken.pos.line===t.firstToken.pos.line||i.lastToken.pos.line+1===t.firstToken.pos.line));if(!r||r.astBeforeComment)return;r.astAfterComment=t;let n=Cw(r,e);return n&&(n.comment.astAfterComment=t,r.astAfterComment=void 0),{comment:n?.comment??r,commentIsBefore:!0}},Aw=(t,e)=>{let r=e.find(i=>i.firstToken.prevToken===t.lastToken&&i.firstToken.pos.line===t.lastToken.pos.line);if(!r)return;r.astBeforeComment=t;let n=Aw(r,e);return n&&(n.comment.astBeforeComment=t,r.astBeforeComment=void 0),{comment:n?.comment??r,commentIsBefore:!1}},Ko=(t,e,r)=>{let n=[42,44,45,36];return r||n.push(52,32,8,49),t.severity===ar.DiagnosticSeverity.Error&&le(t.uri,e)&&!n.some(i=>t.issues.includes(i))};function ff(t){let e=t?.charAt(0);return!!e&&(e>="A"&&e<="Z"||e>="a"&&e<="z")}var xc=require("fs"),WD=require("path"),dT=$(U());var Mn=$(U());var Lw=$(U());var Iw=$(U());var ne=class extends Q{constructor(r,n){super(n);this.value=r;this.semanticTokenType="string",this.semanticTokenModifiers="declaration",this.docSymbolsMeta={name:this.value,kind:Iw.SymbolKind.String}}toString(){return`"${this.value.toString()}"`}toJson(){return this.value}serialize(){return{type:"STRING",value:this.value,uri:this.serializeUri,range:this.range,issues:this.serializeIssues}}};var Mw=$(U());var Ow=$(U());var cr=class extends Ee{constructor(r,n,i=10){super(n);this.value=r;this.radix=i;this.docSymbolsMeta={name:this.value.toString(),kind:Ow.SymbolKind.Number},this.semanticTokenType="number",this.semanticTokenModifiers="declaration"}resolve(r){return this.value.toString()}evaluate(r){return this.value}isTrue(r){return!!this.value}toString(r){return this.value.toString(r??this.radix)}toJson(){return this.value}toPrettyString(r){let n=this.value;return this.radix==16?`0x${n.toString(16)} /* ${typeof n=="number"?`${n.toString(10)}`:""} */`:`${n.toString(10)} /* ${typeof n=="number"?`0x${n.toString(16)}`:""} */`}serialize(){return{type:"NUMBER_VALUE",value:`${this.radix===16?"0x":""}${this.toString()}`,evaluated:this.value,uri:this.serializeUri,range:this.range,issues:this.serializeIssues}}};var jt=class extends Q{constructor(r){super();this.values=r;this.docSymbolsMeta={name:"Cell Array",kind:Mw.SymbolKind.Array},this.values.forEach(n=>this.addChild(n))}toString(){return`<${this.values.map(r=>r.toString()).join(" ")}>`}toPrettyString(r){return`<${this.values.map(n=>n.toPrettyString(r)).join(" ")}>`}toJson(){if(this.values.length===1)return this.values[0].value?.toJson();if(this.values.length===2&&this.values.every(r=>r.value instanceof cr)){let r=new ArrayBuffer(8),n=new DataView(r);return this.values.map(i=>i.value.value).forEach((i,s)=>{n.setUint32(s*4,i)}),n.getBigUint64(0)}return this.values.map(r=>r.value?.toJson()??NaN)}serialize(r){return{type:"ARRAY_VALUE",value:this.values.map(n=>n.value?.serialize(r)??null),uri:this.serializeUri,range:this.range,issues:this.serializeIssues}}};var xw=$(U());var Ri=class extends Q{constructor(r){super();this.values=r;this.docSymbolsMeta={name:"Byte String Value",kind:xw.SymbolKind.Array},this.values.forEach(n=>this.addChild(n))}toString(){return`[${this.values.map(r=>r.toString(16).padStart(2,"0")).join(" ")}]`}toJson(){return this.values.map(r=>r.value?.toJson()??NaN)}serialize(){return{type:"BYTESTRING",values:this.values.map(r=>r.value?{value:r.value.toString(16),range:r.value.range,evaluated:r.value.value}:null),uri:this.serializeUri,range:this.range,issues:this.serializeIssues}}};var Ze=class extends Q{constructor(r,n){super(n);this.name=r;this.semanticTokenType="property",this.semanticTokenModifiers="declaration"}toString(){return this.name}serialize(){return{value:this.name,uri:this.serializeUri,range:this.range,issues:this.serializeIssues}}},nt=class extends Q{constructor(r,n=[]){super();this.propertyName=r;this.labels=n;this._values=void 0;this.docSymbolsMeta={name:this.propertyName?.name??"Unknown",kind:Lw.SymbolKind.Property},this.labels.forEach(i=>this.addChild(i)),this.addChild(r)}set values(r){if(this._values)throw new Error("Only one property name is allowed");this._values=r,this.addChild(r)}get values(){return this._values}get quickValues(){return this.values?.values.map(r=>r?r.value instanceof ne?r.value.value:r.value instanceof jt?r.value.values.map(n=>n.value instanceof cr?n.value.value:NaN):r.value instanceof Ri?r.value.values.map(n=>n.value?.value??NaN):NaN:null)}getFlatAstValues(){return this.values?.values.flatMap(r=>r?r.value instanceof ne?r.value:r.value instanceof jt?r.value.values.map(n=>n.value):r.value instanceof Ri?r.value.values.map(n=>n.value):r.value:null)}toString(){return`${this.propertyName?.toString()??"__UNSET__"}${this.assignOperatorToken?` = ${this._values?.values.map(r=>r?.toString()??"NULL").join(", ")??"NULL"}`:""};`}toPrettyString(r){return`${this.propertyName?.toString()??"__UNSET__"}${this.assignOperatorToken?` = ${this._values?.values.map(n=>n?.toPrettyString(r)??"NULL").join(", ")??"NULL"}`:""};`}serialize(r){return{name:this.propertyName?.serialize()??null,values:this.values?.values.map(n=>n?.value?.serialize(r)??null)??null,uri:this.serializeUri,range:this.range,issues:this.serializeIssues}}};var qw=$(U());var vr=class extends Q{constructor(r,n){super();this.keyword=n;this.addChild(n),this.docSymbolsMeta={name:r,kind:qw.SymbolKind.Function}}};var Or=class extends vr{constructor(r){super("Delete Node",r);this._nodeNameOrRef=null}set nodeNameOrRef(r){if(this._nodeNameOrRef)throw new Error("Only one property name is allowed");this._nodeNameOrRef=r,this.addChild(r)}get nodeNameOrRef(){return this._nodeNameOrRef}};var ht=class extends vr{constructor(r){super("Delete Property",r);this._propertyName=null}set propertyName(r){if(this._propertyName)throw new Error("Only only property name is allowed");this._propertyName=r,this.addChild(r)}get propertyName(){return this._propertyName}};var $w=$(U());var ie=class extends Q{constructor(r){super();this.label=r;this.docSymbolsMeta={name:`&${this.label?.value??"NULL"}`,kind:$w.SymbolKind.Key},this.addChild(r)}get value(){return this.label?.value}toString(){return`&${this.label?.value??"NULL"}`}toJson(){return-1}serialize(){return{type:"LABEL_REF",label:this.label?.toString()??null,nodePath:this.linksTo?.pathString??null,uri:this.serializeUri,range:this.range,issues:this.serializeIssues}}};var lt=class t extends Q{constructor(){super()}get path(){if(!this.pathName)return["__UNDEFINED__"];if(!this.parentNode||this instanceof Dt)return[this.pathName];if(!(this.parentNode instanceof t))return;let e=this.parentNode.path;return e?[...e,this.pathName]:[this.pathName]}get pathName(){}get nodes(){return this.children.filter(e=>e instanceof t)}get deleteNodes(){return this.children.filter(e=>e instanceof Or)}addNodeChild(e){this.addChild(e)}},Dt=class extends lt{constructor(){super(),this.docSymbolsMeta={name:"/",kind:Mn.SymbolKind.Class}}get properties(){return this.children.filter(e=>e instanceof nt)}get name(){return new Me("/",oe(this.firstToken))}get deleteProperties(){return this.children.filter(e=>e instanceof ht)}get nodes(){return this.children.filter(e=>e instanceof Ge)}get pathName(){return"/"}serialize(e){return{type:"ROOT",properties:this.properties.map(r=>r.serialize(e)),nodes:this.nodes.map(r=>r.serialize(e)),uri:this.serializeUri,range:this.range,issues:this.serializeIssues}}},lr=class extends lt{constructor(r=[]){super();this.labels=r;this._reference=null;this.docSymbolsMeta={name:"DTC Name",kind:Mn.SymbolKind.Class},r.forEach(n=>{super.addChild(n)})}get serializeIssues(){return[...this.issues,...this.reference?.issues??[]].map(r=>r())}set reference(r){if(this._reference)throw new Error("Only on label reference is allowed");this._reference=r;let n;r instanceof ie?n=r.value:n=r?.path?.pathParts.at(-1)?.name??"DTC Name",this.docSymbolsMeta={name:n??"DTC Name",kind:Mn.SymbolKind.Class},this.addChild(r)}get path(){return this.resolveNodePath?this.resolveNodePath:super.path}get reference(){return this._reference}get nodes(){return this.children.filter(r=>r instanceof Ge)}get pathName(){if(this.reference instanceof ie&&this.reference.label?.value)return`&${this.reference.label.value}`}get properties(){return this.children.filter(r=>r instanceof nt)}get deleteProperties(){return this.children.filter(r=>r instanceof ht)}serialize(r){return{type:"REF",name:this.reference?.serialize()??null,properties:this.properties.map(n=>n.serialize(r)),nodes:this.nodes.map(n=>n.serialize(r)),uri:this.serializeUri,range:this.range,issues:this.serializeIssues}}},Ge=class t extends lt{constructor(r=[],n){super();this.labels=r;this.omitIfNoRef=n;this._name=null;this.docSymbolsMeta={name:"DTC Name",kind:Mn.SymbolKind.Class},n&&this.addChild(n),r.forEach(i=>{this.addChild(i)})}get serializeIssues(){return[...this.issues,...this.name?.issues??[]].map(r=>r())}set name(r){if(this._name)throw new Error("Only on label reference is allowed");this._name=r,this.docSymbolsMeta={name:this._name?.toString()??"DTC Name",kind:Mn.SymbolKind.Class},this.addChild(r)}get name(){return this._name}get nodes(){return this.children.filter(r=>r instanceof t)}get pathName(){return this._name?.toString()}get properties(){return this.children.filter(r=>r instanceof nt)}get deleteProperties(){return this.children.filter(r=>r instanceof ht)}serialize(r){return{type:"CHILD",name:this.name?.serialize()??null,properties:this.properties.map(n=>n.serialize(r)),nodes:this.nodes.map(n=>n.serialize(r)),uri:this.serializeUri,range:this.range,issues:this.serializeIssues}}},_c=class extends Q{constructor(r,n){super(n);this.address=r;this.semanticTokenType="variable",this.semanticTokenModifiers="declaration"}toString(){return this.address?.map((r,n)=>r.toString(16).padStart(n?8:0,"0")).join("")??"NaN"}serialize(){return{address:this.address,uri:this.serializeUri,range:this.range,issues:this.serializeIssues}}},Me=class extends Q{constructor(r,n,i){super(n);this.name=r;this._address=i;this.semanticTokenType="variable",this.semanticTokenModifiers="declaration"}get value(){return this.name}get address(){return this._address}set address(r){if(this._address)throw new Error("Address can only be set once");r&&(this.lastToken=void 0,this._address=r,r.forEach(n=>this.addChild(n)))}get fullAddress(){return this._address?[...this._address.flatMap(r=>r.address)]:void 0}toString(){return this._address!==void 0?`${this.name}@${this._address.map(r=>r.toString()).join(",")}`:this.name}buildSemanticTokens(r){let n=this.firstToken;if(!n.value)return;let i={...n,pos:{...n.pos,len:this.name.length}};r(Si("type"),Ni("declaration"),i,i),this.address!==void 0&&this.address.forEach(s=>{r(Si("decorator"),Ni("declaration"),s.firstToken,s.lastToken),s.buildSemanticTokens(r)})}get serializeIssues(){return[...this.issues,...this._address?.flatMap(r=>r.issues)??[]].map(r=>r())}serialize(){let r=this.firstToken;return{fullName:this.toString(),name:{name:this.name,uri:this.serializeUri,range:Mn.Range.create(Mn.Position.create(r.pos.line,r.pos.col),Mn.Position.create(r.pos.line,r.pos.colEnd)),issues:this.serializeIssues},address:this.address?.map(n=>n.serialize())??null,uri:this.serializeUri,range:this.range,issues:this.serializeIssues}}};var zD=require("path"),fn=$(U());var br=class extends Q{constructor(r,n,i,s){super();this.startLabels=r;this.value=n;this.endLabels=i;this.bits=s;this.startLabels.forEach(o=>{this.addChild(o)}),this.addChild(s),this.addChild(n),this.endLabels.forEach(o=>{this.addChild(o)})}toString(){return`${[this.value?.toString()??"NULL",...this.endLabels.map(r=>r.toString())].join(" ")}`}toPrettyString(r){return`${[this.value?.toPrettyString(r)??"NULL",...this.endLabels.map(n=>n.toString())].join(" ")}`}toJson(){return this.value?.toJson()}};var Ut=t=>t instanceof vr?!0:t instanceof lt?!1:t.parentNode?Ut(t.parentNode):!1;var Uy=t=>{if(t instanceof nt)return t;if(!(t instanceof lt))return t.parentNode?Uy(t.parentNode):void 0},Ws=t=>!t||t instanceof nt?!1:t instanceof br||Ws(t.parentNode),Yo=t=>[...t.map(e=>{if(e instanceof Ge||e instanceof Dt)return e.name;if(e instanceof lr)return e.reference})].filter(e=>!!e),Hy=(t,e)=>e?e.parentNode===t||Hy(t,e.parentNode):!1;var wt=$(U());var Bw=$(U());var xn=class extends Q{constructor(){super();this._pathParts=[]}addPath(r,n){this._pathParts.push(r),n&&this.addChild(n),this.addChild(r)}get pathParts(){return[...this._pathParts]}toString(){return this._pathParts.map(r=>r?.toString()??"<NULL>").join("/")}buildSemanticTokens(r){this._children.forEach(n=>{n instanceof Me?n.buildSemanticTokens(r):r(Si("operator"),Ni("declaration"),n.firstToken,n.lastToken)})}},it=class extends Q{constructor(r){super();this.path=r;this.docSymbolsMeta={name:`/${this.path?.toString()??""}`,kind:Bw.SymbolKind.Namespace},this.addChild(r)}toString(){return`&${this.path?.toString()??"NULL"}`}toJson(){return-1}serialize(){return{type:"NODE_PATH",nodePath:this.path?.toString()??null,uri:this.serializeUri,range:this.range,issues:this.serializeIssues}}};var Z=$(U());var Fw=require("path"),pf=$(U());var Pi=class extends Q{constructor(r,n){super();this.keyword=r;this.path=n;this.docSymbolsMeta={name:`Include ${n}`,kind:pf.SymbolKind.File},this.addChild(r),this.addChild(n)}get resolvedPath(){return this._resolvedPath}set resolvedPath(r){this.docSymbolsMeta={name:`Include ${r}`,kind:pf.SymbolKind.File},this._resolvedPath=r}},Xo=class extends Q{constructor(r,n,i){super(i);this._path=r;this.relative=n;this.docSymbolsMeta={name:(0,Fw.basename)(this.path),kind:pf.SymbolKind.File},this.semanticTokenType="string",this.semanticTokenModifiers="declaration"}get path(){return this.relative?this._path.slice(1,-1):this._path}};var ln=class extends Q{constructor(r){super();this.comments=r;r.forEach(this.addChild.bind(this))}toString(){return this.comments.map(r=>r.toString()).join(`
182
+ deps: ${r}}`};var u4={keyword:"dependencies",type:"object",schemaType:"object",error:mi.error,code(t){let[e,r]=d4(t);q1(t,e),$1(t,r)}};function d4({schema:t}){let e={},r={};for(let n in t){if(n==="__proto__")continue;let i=Array.isArray(t[n])?e:r;i[n]=t[n]}return[e,r]}function q1(t,e=t.schema){let{gen:r,data:n,it:i}=t;if(Object.keys(e).length===0)return;let s=r.let("missing");for(let o in e){let a=e[o];if(a.length===0)continue;let c=(0,pu.propertyInData)(r,n,o,i.opts.ownProperties);t.setParams({property:o,depsCount:a.length,deps:a.join(", ")}),i.allErrors?r.if(c,()=>{for(let l of a)(0,pu.checkReportMissingProp)(t,l)}):(r.if((0,q_._)`${c} && (${(0,pu.checkMissingProp)(t,a,s)})`),(0,pu.reportMissingProp)(t,s),r.else())}}mi.validatePropertyDeps=q1;function $1(t,e=t.schema){let{gen:r,data:n,keyword:i,it:s}=t,o=r.name("valid");for(let a in e)(0,l4.alwaysValidSchema)(s,e[a])||(r.if((0,pu.propertyInData)(r,n,a,s.opts.ownProperties),()=>{let c=t.subschema({keyword:i,schemaProp:a},o);t.mergeValidEvaluated(c,o)},()=>r.var(o,!0)),t.ok(o))}mi.validateSchemaDeps=$1;mi.default=u4});var F1=k($_=>{"use strict";Object.defineProperty($_,"__esModule",{value:!0});var B1=ve(),f4=we(),p4={message:"property name must be valid",params:({params:t})=>(0,B1._)`{propertyName: ${t.propertyName}}`},h4={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:p4,code(t){let{gen:e,schema:r,data:n,it:i}=t;if((0,f4.alwaysValidSchema)(i,r))return;let s=e.name("valid");e.forIn("key",n,o=>{t.setParams({propertyName:o}),t.subschema({keyword:"propertyNames",data:o,dataTypes:["string"],propertyName:o,compositeRule:!0},s),e.if((0,B1.not)(s),()=>{t.error(!0),i.allErrors||e.break()})}),t.ok(s)}};$_.default=h4});var F_=k(B_=>{"use strict";Object.defineProperty(B_,"__esModule",{value:!0});var bm=bn(),Wn=ve(),m4=vn(),_m=we(),g4={message:"must NOT have additional properties",params:({params:t})=>(0,Wn._)`{additionalProperty: ${t.additionalProperty}}`},y4={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:g4,code(t){let{gen:e,schema:r,parentSchema:n,data:i,errsCount:s,it:o}=t;if(!s)throw new Error("ajv implementation error");let{allErrors:a,opts:c}=o;if(o.props=!0,c.removeAdditional!=="all"&&(0,_m.alwaysValidSchema)(o,r))return;let l=(0,bm.allSchemaProperties)(n.properties),u=(0,bm.allSchemaProperties)(n.patternProperties);d(),t.ok((0,Wn._)`${s} === ${m4.default.errors}`);function d(){e.forIn("key",i,T=>{!l.length&&!u.length?g(T):e.if(f(T),()=>g(T))})}function f(T){let S;if(l.length>8){let _=(0,_m.schemaRefOrVal)(o,n.properties,"properties");S=(0,bm.isOwnProperty)(e,_,T)}else l.length?S=(0,Wn.or)(...l.map(_=>(0,Wn._)`${T} === ${_}`)):S=Wn.nil;return u.length&&(S=(0,Wn.or)(S,...u.map(_=>(0,Wn._)`${(0,bm.usePattern)(t,_)}.test(${T})`))),(0,Wn.not)(S)}function p(T){e.code((0,Wn._)`delete ${i}[${T}]`)}function g(T){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){p(T);return}if(r===!1){t.setParams({additionalProperty:T}),t.error(),a||e.break();return}if(typeof r=="object"&&!(0,_m.alwaysValidSchema)(o,r)){let S=e.name("valid");c.removeAdditional==="failing"?(h(T,S,!1),e.if((0,Wn.not)(S),()=>{t.reset(),p(T)})):(h(T,S),a||e.if((0,Wn.not)(S),()=>e.break()))}}function h(T,S,_){let v={keyword:"additionalProperties",dataProp:T,dataPropType:_m.Type.Str};_===!1&&Object.assign(v,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(v,S)}}};B_.default=y4});var H1=k(U_=>{"use strict";Object.defineProperty(U_,"__esModule",{value:!0});var T4=Ql(),j1=bn(),j_=we(),U1=F_(),v4={keyword:"properties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,parentSchema:n,data:i,it:s}=t;s.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&U1.default.code(new T4.KeywordCxt(s,U1.default,"additionalProperties"));let o=(0,j1.allSchemaProperties)(r);for(let d of o)s.definedProperties.add(d);s.opts.unevaluated&&o.length&&s.props!==!0&&(s.props=j_.mergeEvaluated.props(e,(0,j_.toHash)(o),s.props));let a=o.filter(d=>!(0,j_.alwaysValidSchema)(s,r[d]));if(a.length===0)return;let c=e.name("valid");for(let d of a)l(d)?u(d):(e.if((0,j1.propertyInData)(e,i,d,s.opts.ownProperties)),u(d),s.allErrors||e.else().var(c,!0),e.endIf()),t.it.definedProperties.add(d),t.ok(c);function l(d){return s.opts.useDefaults&&!s.compositeRule&&r[d].default!==void 0}function u(d){t.subschema({keyword:"properties",schemaProp:d,dataProp:d},c)}}};U_.default=v4});var G1=k(H_=>{"use strict";Object.defineProperty(H_,"__esModule",{value:!0});var V1=bn(),Sm=ve(),z1=we(),W1=we(),b4={keyword:"patternProperties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,data:n,parentSchema:i,it:s}=t,{opts:o}=s,a=(0,V1.allSchemaProperties)(r),c=a.filter(h=>(0,z1.alwaysValidSchema)(s,r[h]));if(a.length===0||c.length===a.length&&(!s.opts.unevaluated||s.props===!0))return;let l=o.strictSchema&&!o.allowMatchingProperties&&i.properties,u=e.name("valid");s.props!==!0&&!(s.props instanceof Sm.Name)&&(s.props=(0,W1.evaluatedPropsToName)(e,s.props));let{props:d}=s;f();function f(){for(let h of a)l&&p(h),s.allErrors?g(h):(e.var(u,!0),g(h),e.if(u))}function p(h){for(let T in l)new RegExp(h).test(T)&&(0,z1.checkStrictMode)(s,`property ${T} matches pattern ${h} (use allowMatchingProperties)`)}function g(h){e.forIn("key",n,T=>{e.if((0,Sm._)`${(0,V1.usePattern)(t,h)}.test(${T})`,()=>{let S=c.includes(h);S||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:T,dataPropType:W1.Type.Str},u),s.opts.unevaluated&&d!==!0?e.assign((0,Sm._)`${d}[${T}]`,!0):!S&&!s.allErrors&&e.if((0,Sm.not)(u),()=>e.break())})})}}};H_.default=b4});var K1=k(V_=>{"use strict";Object.defineProperty(V_,"__esModule",{value:!0});var _4=we(),S4={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,_4.alwaysValidSchema)(n,r)){t.fail();return}let i=e.name("valid");t.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},i),t.failResult(i,()=>t.reset(),()=>t.error())},error:{message:"must NOT be valid"}};V_.default=S4});var Y1=k(z_=>{"use strict";Object.defineProperty(z_,"__esModule",{value:!0});var N4=bn(),k4={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:N4.validateUnion,error:{message:"must match a schema in anyOf"}};z_.default=k4});var X1=k(W_=>{"use strict";Object.defineProperty(W_,"__esModule",{value:!0});var Nm=ve(),R4=we(),P4={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,Nm._)`{passingSchemas: ${t.passing}}`},w4={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:P4,code(t){let{gen:e,schema:r,parentSchema:n,it:i}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(i.opts.discriminator&&n.discriminator)return;let s=r,o=e.let("valid",!1),a=e.let("passing",null),c=e.name("_valid");t.setParams({passing:a}),e.block(l),t.result(o,()=>t.reset(),()=>t.error(!0));function l(){s.forEach((u,d)=>{let f;(0,R4.alwaysValidSchema)(i,u)?e.var(c,!0):f=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,Nm._)`${c} && ${o}`).assign(o,!1).assign(a,(0,Nm._)`[${a}, ${d}]`).else(),e.if(c,()=>{e.assign(o,!0),e.assign(a,d),f&&t.mergeEvaluated(f,Nm.Name)})})}}};W_.default=w4});var J1=k(G_=>{"use strict";Object.defineProperty(G_,"__esModule",{value:!0});var E4=we(),D4={keyword:"allOf",schemaType:"array",code(t){let{gen:e,schema:r,it:n}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");let i=e.name("valid");r.forEach((s,o)=>{if((0,E4.alwaysValidSchema)(n,s))return;let a=t.subschema({keyword:"allOf",schemaProp:o},i);t.ok(i),t.mergeEvaluated(a)})}};G_.default=D4});var e$=k(K_=>{"use strict";Object.defineProperty(K_,"__esModule",{value:!0});var km=ve(),Z1=we(),C4={message:({params:t})=>(0,km.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,km._)`{failingKeyword: ${t.ifClause}}`},A4={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:C4,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,Z1.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let i=Q1(n,"then"),s=Q1(n,"else");if(!i&&!s)return;let o=e.let("valid",!0),a=e.name("_valid");if(c(),t.reset(),i&&s){let u=e.let("ifClause");t.setParams({ifClause:u}),e.if(a,l("then",u),l("else",u))}else i?e.if(a,l("then")):e.if((0,km.not)(a),l("else"));t.pass(o,()=>t.error(!0));function c(){let u=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},a);t.mergeEvaluated(u)}function l(u,d){return()=>{let f=t.subschema({keyword:u},a);e.assign(o,a),t.mergeValidEvaluated(f,o),d?e.assign(d,(0,km._)`${u}`):t.setParams({ifClause:u})}}}};function Q1(t,e){let r=t.schema[e];return r!==void 0&&!(0,Z1.alwaysValidSchema)(t,r)}K_.default=A4});var t$=k(Y_=>{"use strict";Object.defineProperty(Y_,"__esModule",{value:!0});var I4=we(),O4={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,I4.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};Y_.default=O4});var r$=k(X_=>{"use strict";Object.defineProperty(X_,"__esModule",{value:!0});var M4=I_(),x4=O1(),L4=O_(),q4=x1(),$4=L1(),B4=vm(),F4=F1(),j4=F_(),U4=H1(),H4=G1(),V4=K1(),z4=Y1(),W4=X1(),G4=J1(),K4=e$(),Y4=t$();function X4(t=!1){let e=[V4.default,z4.default,W4.default,G4.default,K4.default,Y4.default,F4.default,j4.default,B4.default,U4.default,H4.default];return t?e.push(x4.default,q4.default):e.push(M4.default,L4.default),e.push($4.default),e}X_.default=X4});var n$=k(J_=>{"use strict";Object.defineProperty(J_,"__esModule",{value:!0});var Ot=ve(),J4={message:({schemaCode:t})=>(0,Ot.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,Ot._)`{format: ${t}}`},Q4={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:J4,code(t,e){let{gen:r,data:n,$data:i,schema:s,schemaCode:o,it:a}=t,{opts:c,errSchemaPath:l,schemaEnv:u,self:d}=a;if(!c.validateFormats)return;i?f():p();function f(){let g=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),h=r.const("fDef",(0,Ot._)`${g}[${o}]`),T=r.let("fType"),S=r.let("format");r.if((0,Ot._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(T,(0,Ot._)`${h}.type || "string"`).assign(S,(0,Ot._)`${h}.validate`),()=>r.assign(T,(0,Ot._)`"string"`).assign(S,h)),t.fail$data((0,Ot.or)(_(),v()));function _(){return c.strictSchema===!1?Ot.nil:(0,Ot._)`${o} && !${S}`}function v(){let R=u.$async?(0,Ot._)`(${h}.async ? await ${S}(${n}) : ${S}(${n}))`:(0,Ot._)`${S}(${n})`,D=(0,Ot._)`(typeof ${S} == "function" ? ${R} : ${S}.test(${n}))`;return(0,Ot._)`${S} && ${S} !== true && ${T} === ${e} && !${D}`}}function p(){let g=d.formats[s];if(!g){_();return}if(g===!0)return;let[h,T,S]=v(g);h===e&&t.pass(R());function _(){if(c.strictSchema===!1){d.logger.warn(D());return}throw new Error(D());function D(){return`unknown format "${s}" ignored in schema at path "${l}"`}}function v(D){let B=D instanceof RegExp?(0,Ot.regexpCode)(D):c.code.formats?(0,Ot._)`${c.code.formats}${(0,Ot.getProperty)(s)}`:void 0,M=r.scopeValue("formats",{key:s,ref:D,code:B});return typeof D=="object"&&!(D instanceof RegExp)?[D.type||"string",D.validate,(0,Ot._)`${M}.validate`]:["string",D,M]}function R(){if(typeof g=="object"&&!(g instanceof RegExp)&&g.async){if(!u.$async)throw new Error("async format in sync schema");return(0,Ot._)`await ${S}(${n})`}return typeof T=="function"?(0,Ot._)`${S}(${n})`:(0,Ot._)`${S}.test(${n})`}}}};J_.default=Q4});var i$=k(Q_=>{"use strict";Object.defineProperty(Q_,"__esModule",{value:!0});var Z4=n$(),e9=[Z4.default];Q_.default=e9});var s$=k(Ha=>{"use strict";Object.defineProperty(Ha,"__esModule",{value:!0});Ha.contentVocabulary=Ha.metadataVocabulary=void 0;Ha.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Ha.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var a$=k(Z_=>{"use strict";Object.defineProperty(Z_,"__esModule",{value:!0});var t9=m1(),r9=D1(),n9=r$(),i9=i$(),o$=s$(),s9=[t9.default,r9.default,(0,n9.default)(),i9.default,o$.metadataVocabulary,o$.contentVocabulary];Z_.default=s9});var tS=k(hu=>{"use strict";Object.defineProperty(hu,"__esModule",{value:!0});hu.dynamicAnchor=void 0;var eS=ve(),o9=vn(),c$=eu(),a9=fm(),c9={keyword:"$dynamicAnchor",schemaType:"string",code:t=>l$(t,t.schema)};function l$(t,e){let{gen:r,it:n}=t;n.schemaEnv.root.dynamicAnchors[e]=!0;let i=(0,eS._)`${o9.default.dynamicAnchors}${(0,eS.getProperty)(e)}`,s=n.errSchemaPath==="#"?n.validateName:l9(t);r.if((0,eS._)`!${i}`,()=>r.assign(i,s))}hu.dynamicAnchor=l$;function l9(t){let{schemaEnv:e,schema:r,self:n}=t.it,{root:i,baseId:s,localRefs:o,meta:a}=e.root,{schemaId:c}=n.opts,l=new c$.SchemaEnv({schema:r,schemaId:c,root:i,baseId:s,localRefs:o,meta:a});return c$.compileSchema.call(n,l),(0,a9.getValidate)(t,l)}hu.default=c9});var rS=k(mu=>{"use strict";Object.defineProperty(mu,"__esModule",{value:!0});mu.dynamicRef=void 0;var u$=ve(),u9=vn(),d$=fm(),d9={keyword:"$dynamicRef",schemaType:"string",code:t=>f$(t,t.schema)};function f$(t,e){let{gen:r,keyword:n,it:i}=t;if(e[0]!=="#")throw new Error(`"${n}" only supports hash fragment reference`);let s=e.slice(1);if(i.allErrors)o();else{let c=r.let("valid",!1);o(c),t.ok(c)}function o(c){if(i.schemaEnv.root.dynamicAnchors[s]){let l=r.let("_v",(0,u$._)`${u9.default.dynamicAnchors}${(0,u$.getProperty)(s)}`);r.if(l,a(l,c),a(i.validateName,c))}else a(i.validateName,c)()}function a(c,l){return l?()=>r.block(()=>{(0,d$.callRef)(t,c),r.let(l,!0)}):()=>(0,d$.callRef)(t,c)}}mu.dynamicRef=f$;mu.default=d9});var p$=k(nS=>{"use strict";Object.defineProperty(nS,"__esModule",{value:!0});var f9=tS(),p9=we(),h9={keyword:"$recursiveAnchor",schemaType:"boolean",code(t){t.schema?(0,f9.dynamicAnchor)(t,""):(0,p9.checkStrictMode)(t.it,"$recursiveAnchor: false is ignored")}};nS.default=h9});var h$=k(iS=>{"use strict";Object.defineProperty(iS,"__esModule",{value:!0});var m9=rS(),g9={keyword:"$recursiveRef",schemaType:"string",code:t=>(0,m9.dynamicRef)(t,t.schema)};iS.default=g9});var m$=k(sS=>{"use strict";Object.defineProperty(sS,"__esModule",{value:!0});var y9=tS(),T9=rS(),v9=p$(),b9=h$(),_9=[y9.default,T9.default,v9.default,b9.default];sS.default=_9});var y$=k(oS=>{"use strict";Object.defineProperty(oS,"__esModule",{value:!0});var g$=vm(),S9={keyword:"dependentRequired",type:"object",schemaType:"object",error:g$.error,code:t=>(0,g$.validatePropertyDeps)(t)};oS.default=S9});var T$=k(aS=>{"use strict";Object.defineProperty(aS,"__esModule",{value:!0});var N9=vm(),k9={keyword:"dependentSchemas",type:"object",schemaType:"object",code:t=>(0,N9.validateSchemaDeps)(t)};aS.default=k9});var v$=k(cS=>{"use strict";Object.defineProperty(cS,"__esModule",{value:!0});var R9=we(),P9={keyword:["maxContains","minContains"],type:"array",schemaType:"number",code({keyword:t,parentSchema:e,it:r}){e.contains===void 0&&(0,R9.checkStrictMode)(r,`"${t}" without "contains" is ignored`)}};cS.default=P9});var b$=k(lS=>{"use strict";Object.defineProperty(lS,"__esModule",{value:!0});var w9=y$(),E9=T$(),D9=v$(),C9=[w9.default,E9.default,D9.default];lS.default=C9});var S$=k(uS=>{"use strict";Object.defineProperty(uS,"__esModule",{value:!0});var As=ve(),_$=we(),A9=vn(),I9={message:"must NOT have unevaluated properties",params:({params:t})=>(0,As._)`{unevaluatedProperty: ${t.unevaluatedProperty}}`},O9={keyword:"unevaluatedProperties",type:"object",schemaType:["boolean","object"],trackErrors:!0,error:I9,code(t){let{gen:e,schema:r,data:n,errsCount:i,it:s}=t;if(!i)throw new Error("ajv implementation error");let{allErrors:o,props:a}=s;a instanceof As.Name?e.if((0,As._)`${a} !== true`,()=>e.forIn("key",n,d=>e.if(l(a,d),()=>c(d)))):a!==!0&&e.forIn("key",n,d=>a===void 0?c(d):e.if(u(a,d),()=>c(d))),s.props=!0,t.ok((0,As._)`${i} === ${A9.default.errors}`);function c(d){if(r===!1){t.setParams({unevaluatedProperty:d}),t.error(),o||e.break();return}if(!(0,_$.alwaysValidSchema)(s,r)){let f=e.name("valid");t.subschema({keyword:"unevaluatedProperties",dataProp:d,dataPropType:_$.Type.Str},f),o||e.if((0,As.not)(f),()=>e.break())}}function l(d,f){return(0,As._)`!${d} || !${d}[${f}]`}function u(d,f){let p=[];for(let g in d)d[g]===!0&&p.push((0,As._)`${f} !== ${g}`);return(0,As.and)(...p)}}};uS.default=O9});var k$=k(dS=>{"use strict";Object.defineProperty(dS,"__esModule",{value:!0});var go=ve(),N$=we(),M9={message:({params:{len:t}})=>(0,go.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,go._)`{limit: ${t}}`},x9={keyword:"unevaluatedItems",type:"array",schemaType:["boolean","object"],error:M9,code(t){let{gen:e,schema:r,data:n,it:i}=t,s=i.items||0;if(s===!0)return;let o=e.const("len",(0,go._)`${n}.length`);if(r===!1)t.setParams({len:s}),t.fail((0,go._)`${o} > ${s}`);else if(typeof r=="object"&&!(0,N$.alwaysValidSchema)(i,r)){let c=e.var("valid",(0,go._)`${o} <= ${s}`);e.if((0,go.not)(c),()=>a(c,s)),t.ok(c)}i.items=!0;function a(c,l){e.forRange("i",l,o,u=>{t.subschema({keyword:"unevaluatedItems",dataProp:u,dataPropType:N$.Type.Num},c),i.allErrors||e.if((0,go.not)(c),()=>e.break())})}}};dS.default=x9});var R$=k(fS=>{"use strict";Object.defineProperty(fS,"__esModule",{value:!0});var L9=S$(),q9=k$(),$9=[L9.default,q9.default];fS.default=$9});var w$=k(Rm=>{"use strict";Object.defineProperty(Rm,"__esModule",{value:!0});Rm.DiscrError=void 0;var P$;(function(t){t.Tag="tag",t.Mapping="mapping"})(P$||(Rm.DiscrError=P$={}))});var D$=k(hS=>{"use strict";Object.defineProperty(hS,"__esModule",{value:!0});var Va=ve(),pS=w$(),E$=eu(),B9=Zl(),F9=we(),j9={message:({params:{discrError:t,tagName:e}})=>t===pS.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,Va._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},U9={keyword:"discriminator",type:"object",schemaType:"object",error:j9,code(t){let{gen:e,data:r,schema:n,parentSchema:i,it:s}=t,{oneOf:o}=i;if(!s.opts.discriminator)throw new Error("discriminator: requires discriminator option");let a=n.propertyName;if(typeof a!="string")throw new Error("discriminator: requires propertyName");if(n.mapping)throw new Error("discriminator: mapping is not supported");if(!o)throw new Error("discriminator: requires oneOf keyword");let c=e.let("valid",!1),l=e.const("tag",(0,Va._)`${r}${(0,Va.getProperty)(a)}`);e.if((0,Va._)`typeof ${l} == "string"`,()=>u(),()=>t.error(!1,{discrError:pS.DiscrError.Tag,tag:l,tagName:a})),t.ok(c);function u(){let p=f();e.if(!1);for(let g in p)e.elseIf((0,Va._)`${l} === ${g}`),e.assign(c,d(p[g]));e.else(),t.error(!1,{discrError:pS.DiscrError.Mapping,tag:l,tagName:a}),e.endIf()}function d(p){let g=e.name("valid"),h=t.subschema({keyword:"oneOf",schemaProp:p},g);return t.mergeEvaluated(h,Va.Name),g}function f(){var p;let g={},h=S(i),T=!0;for(let R=0;R<o.length;R++){let D=o[R];if(D?.$ref&&!(0,F9.schemaHasRulesButRef)(D,s.self.RULES)){let M=D.$ref;if(D=E$.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,M),D instanceof E$.SchemaEnv&&(D=D.schema),D===void 0)throw new B9.default(s.opts.uriResolver,s.baseId,M)}let B=(p=D?.properties)===null||p===void 0?void 0:p[a];if(typeof B!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);T=T&&(h||S(D)),_(B,R)}if(!T)throw new Error(`discriminator: "${a}" must be required`);return g;function S({required:R}){return Array.isArray(R)&&R.includes(a)}function _(R,D){if(R.const)v(R.const,D);else if(R.enum)for(let B of R.enum)v(B,D);else throw new Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function v(R,D){if(typeof R!="string"||R in g)throw new Error(`discriminator: "${a}" values must be unique strings`);g[R]=D}}}};hS.default=U9});var C$=k(($Pe,H9)=>{H9.exports={$schema:"https://json-schema.org/draft/2019-09/schema",$id:"https://json-schema.org/draft/2019-09/schema",$vocabulary:{"https://json-schema.org/draft/2019-09/vocab/core":!0,"https://json-schema.org/draft/2019-09/vocab/applicator":!0,"https://json-schema.org/draft/2019-09/vocab/validation":!0,"https://json-schema.org/draft/2019-09/vocab/meta-data":!0,"https://json-schema.org/draft/2019-09/vocab/format":!1,"https://json-schema.org/draft/2019-09/vocab/content":!0},$recursiveAnchor:!0,title:"Core and Validation specifications meta-schema",allOf:[{$ref:"meta/core"},{$ref:"meta/applicator"},{$ref:"meta/validation"},{$ref:"meta/meta-data"},{$ref:"meta/format"},{$ref:"meta/content"}],type:["object","boolean"],properties:{definitions:{$comment:"While no longer an official keyword as it is replaced by $defs, this keyword is retained in the meta-schema to prevent incompatible extensions as it remains in common use.",type:"object",additionalProperties:{$recursiveRef:"#"},default:{}},dependencies:{$comment:'"dependencies" is no longer a keyword, but schema authors should avoid redefining it to facilitate a smooth transition to "dependentSchemas" and "dependentRequired"',type:"object",additionalProperties:{anyOf:[{$recursiveRef:"#"},{$ref:"meta/validation#/$defs/stringArray"}]}}}}});var A$=k((BPe,V9)=>{V9.exports={$schema:"https://json-schema.org/draft/2019-09/schema",$id:"https://json-schema.org/draft/2019-09/meta/applicator",$vocabulary:{"https://json-schema.org/draft/2019-09/vocab/applicator":!0},$recursiveAnchor:!0,title:"Applicator vocabulary meta-schema",type:["object","boolean"],properties:{additionalItems:{$recursiveRef:"#"},unevaluatedItems:{$recursiveRef:"#"},items:{anyOf:[{$recursiveRef:"#"},{$ref:"#/$defs/schemaArray"}]},contains:{$recursiveRef:"#"},additionalProperties:{$recursiveRef:"#"},unevaluatedProperties:{$recursiveRef:"#"},properties:{type:"object",additionalProperties:{$recursiveRef:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$recursiveRef:"#"},propertyNames:{format:"regex"},default:{}},dependentSchemas:{type:"object",additionalProperties:{$recursiveRef:"#"}},propertyNames:{$recursiveRef:"#"},if:{$recursiveRef:"#"},then:{$recursiveRef:"#"},else:{$recursiveRef:"#"},allOf:{$ref:"#/$defs/schemaArray"},anyOf:{$ref:"#/$defs/schemaArray"},oneOf:{$ref:"#/$defs/schemaArray"},not:{$recursiveRef:"#"}},$defs:{schemaArray:{type:"array",minItems:1,items:{$recursiveRef:"#"}}}}});var I$=k((FPe,z9)=>{z9.exports={$schema:"https://json-schema.org/draft/2019-09/schema",$id:"https://json-schema.org/draft/2019-09/meta/content",$vocabulary:{"https://json-schema.org/draft/2019-09/vocab/content":!0},$recursiveAnchor:!0,title:"Content vocabulary meta-schema",type:["object","boolean"],properties:{contentMediaType:{type:"string"},contentEncoding:{type:"string"},contentSchema:{$recursiveRef:"#"}}}});var O$=k((jPe,W9)=>{W9.exports={$schema:"https://json-schema.org/draft/2019-09/schema",$id:"https://json-schema.org/draft/2019-09/meta/core",$vocabulary:{"https://json-schema.org/draft/2019-09/vocab/core":!0},$recursiveAnchor:!0,title:"Core vocabulary meta-schema",type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference",$comment:"Non-empty fragments not allowed.",pattern:"^[^#]*#?$"},$schema:{type:"string",format:"uri"},$anchor:{type:"string",pattern:"^[A-Za-z][-A-Za-z0-9.:_]*$"},$ref:{type:"string",format:"uri-reference"},$recursiveRef:{type:"string",format:"uri-reference"},$recursiveAnchor:{type:"boolean",default:!1},$vocabulary:{type:"object",propertyNames:{type:"string",format:"uri"},additionalProperties:{type:"boolean"}},$comment:{type:"string"},$defs:{type:"object",additionalProperties:{$recursiveRef:"#"},default:{}}}}});var M$=k((UPe,G9)=>{G9.exports={$schema:"https://json-schema.org/draft/2019-09/schema",$id:"https://json-schema.org/draft/2019-09/meta/format",$vocabulary:{"https://json-schema.org/draft/2019-09/vocab/format":!0},$recursiveAnchor:!0,title:"Format vocabulary meta-schema",type:["object","boolean"],properties:{format:{type:"string"}}}});var x$=k((HPe,K9)=>{K9.exports={$schema:"https://json-schema.org/draft/2019-09/schema",$id:"https://json-schema.org/draft/2019-09/meta/meta-data",$vocabulary:{"https://json-schema.org/draft/2019-09/vocab/meta-data":!0},$recursiveAnchor:!0,title:"Meta-data vocabulary meta-schema",type:["object","boolean"],properties:{title:{type:"string"},description:{type:"string"},default:!0,deprecated:{type:"boolean",default:!1},readOnly:{type:"boolean",default:!1},writeOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0}}}});var L$=k((VPe,Y9)=>{Y9.exports={$schema:"https://json-schema.org/draft/2019-09/schema",$id:"https://json-schema.org/draft/2019-09/meta/validation",$vocabulary:{"https://json-schema.org/draft/2019-09/vocab/validation":!0},$recursiveAnchor:!0,title:"Validation vocabulary meta-schema",type:["object","boolean"],properties:{multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/$defs/nonNegativeInteger"},minLength:{$ref:"#/$defs/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},maxItems:{$ref:"#/$defs/nonNegativeInteger"},minItems:{$ref:"#/$defs/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},maxContains:{$ref:"#/$defs/nonNegativeInteger"},minContains:{$ref:"#/$defs/nonNegativeInteger",default:1},maxProperties:{$ref:"#/$defs/nonNegativeInteger"},minProperties:{$ref:"#/$defs/nonNegativeIntegerDefault0"},required:{$ref:"#/$defs/stringArray"},dependentRequired:{type:"object",additionalProperties:{$ref:"#/$defs/stringArray"}},const:!0,enum:{type:"array",items:!0},type:{anyOf:[{$ref:"#/$defs/simpleTypes"},{type:"array",items:{$ref:"#/$defs/simpleTypes"},minItems:1,uniqueItems:!0}]}},$defs:{nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{$ref:"#/$defs/nonNegativeInteger",default:0},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}}}});var q$=k(mS=>{"use strict";Object.defineProperty(mS,"__esModule",{value:!0});var X9=C$(),J9=A$(),Q9=I$(),Z9=O$(),eJ=M$(),tJ=x$(),rJ=L$(),nJ=["/properties"];function iJ(t){return[X9,J9,Q9,Z9,e(this,eJ),tJ,e(this,rJ)].forEach(r=>this.addMetaSchema(r,void 0,!1)),this;function e(r,n){return t?r.$dataMetaSchema(n,nJ):n}}mS.default=iJ});var $$=k((gt,yS)=>{"use strict";Object.defineProperty(gt,"__esModule",{value:!0});gt.MissingRefError=gt.ValidationError=gt.CodeGen=gt.Name=gt.nil=gt.stringify=gt.str=gt._=gt.KeywordCxt=gt.Ajv2019=void 0;var sJ=u1(),oJ=a$(),aJ=m$(),cJ=b$(),lJ=R$(),uJ=D$(),dJ=q$(),gS="https://json-schema.org/draft/2019-09/schema",za=class extends sJ.default{constructor(e={}){super({...e,dynamicRef:!0,next:!0,unevaluated:!0})}_addVocabularies(){super._addVocabularies(),this.addVocabulary(aJ.default),oJ.default.forEach(e=>this.addVocabulary(e)),this.addVocabulary(cJ.default),this.addVocabulary(lJ.default),this.opts.discriminator&&this.addKeyword(uJ.default)}_addDefaultMetaSchema(){super._addDefaultMetaSchema();let{$data:e,meta:r}=this.opts;r&&(dJ.default.call(this,e),this.refs["http://json-schema.org/schema"]=gS)}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(gS)?gS:void 0)}};gt.Ajv2019=za;yS.exports=gt=za;yS.exports.Ajv2019=za;Object.defineProperty(gt,"__esModule",{value:!0});gt.default=za;var fJ=Ql();Object.defineProperty(gt,"KeywordCxt",{enumerable:!0,get:function(){return fJ.KeywordCxt}});var Wa=ve();Object.defineProperty(gt,"_",{enumerable:!0,get:function(){return Wa._}});Object.defineProperty(gt,"str",{enumerable:!0,get:function(){return Wa.str}});Object.defineProperty(gt,"stringify",{enumerable:!0,get:function(){return Wa.stringify}});Object.defineProperty(gt,"nil",{enumerable:!0,get:function(){return Wa.nil}});Object.defineProperty(gt,"Name",{enumerable:!0,get:function(){return Wa.Name}});Object.defineProperty(gt,"CodeGen",{enumerable:!0,get:function(){return Wa.CodeGen}});var pJ=im();Object.defineProperty(gt,"ValidationError",{enumerable:!0,get:function(){return pJ.default}});var hJ=Zl();Object.defineProperty(gt,"MissingRefError",{enumerable:!0,get:function(){return hJ.default}})});var Xa=require("path"),ze=$(hw());var nf=class t{constructor(e,r,n,i){this._uri=e,this._languageId=r,this._version=n,this._content=i,this._lineOffsets=void 0}get uri(){return this._uri}get languageId(){return this._languageId}get version(){return this._version}getText(e){if(e){let r=this.offsetAt(e.start),n=this.offsetAt(e.end);return this._content.substring(r,n)}return this._content}update(e,r){for(let n of e)if(t.isIncremental(n)){let i=gw(n.range),s=this.offsetAt(i.start),o=this.offsetAt(i.end);this._content=this._content.substring(0,s)+n.text+this._content.substring(o,this._content.length);let a=Math.max(i.start.line,0),c=Math.max(i.end.line,0),l=this._lineOffsets,u=mw(n.text,!1,s);if(c-a===u.length)for(let f=0,p=u.length;f<p;f++)l[f+a+1]=u[f];else u.length<1e4?l.splice(a+1,c-a,...u):this._lineOffsets=l=l.slice(0,a+1).concat(u,l.slice(c+1));let d=n.text.length-(o-s);if(d!==0)for(let f=a+1+u.length,p=l.length;f<p;f++)l[f]=l[f]+d}else if(t.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=mw(this._content,!0)),this._lineOffsets}positionAt(e){e=Math.max(Math.min(e,this._content.length),0);let r=this.getLineOffsets(),n=0,i=r.length;if(i===0)return{line:0,character:e};for(;n<i;){let o=Math.floor((n+i)/2);r[o]>e?i=o:n=o+1}let s=n-1;return{line:s,character:e-r[s]}}offsetAt(e){let r=this.getLineOffsets();if(e.line>=r.length)return this._content.length;if(e.line<0)return 0;let n=r[e.line],i=e.line+1<r.length?r[e.line+1]:this._content.length;return Math.max(Math.min(n+e.character,i),n)}get lineCount(){return this.getLineOffsets().length}static isIncremental(e){let r=e;return r!=null&&typeof r.text=="string"&&r.range!==void 0&&(r.rangeLength===void 0||typeof r.rangeLength=="number")}static isFull(e){let r=e;return r!=null&&typeof r.text=="string"&&r.range===void 0&&r.rangeLength===void 0}},Qn;(function(t){function e(i,s,o,a){return new nf(i,s,o,a)}t.create=e;function r(i,s,o){if(i instanceof nf)return i.update(s,o),i;throw new Error("TextDocument.update: document must be created by TextDocument.create")}t.update=r;function n(i,s){let o=i.getText(),a=My(s.map(Yj),(u,d)=>{let f=u.range.start.line-d.range.start.line;return f===0?u.range.start.character-d.range.start.character:f}),c=0,l=[];for(let u of a){let d=i.offsetAt(u.range.start);if(d<c)throw new Error("Overlapping edit");d>c&&l.push(o.substring(c,d)),u.newText.length&&l.push(u.newText),c=i.offsetAt(u.range.end)}return l.push(o.substr(c)),l.join("")}t.applyEdits=n})(Qn||(Qn={}));function My(t,e){if(t.length<=1)return t;let r=t.length/2|0,n=t.slice(0,r),i=t.slice(r);My(n,e),My(i,e);let s=0,o=0,a=0;for(;s<n.length&&o<i.length;)e(n[s],i[o])<=0?t[a++]=n[s++]:t[a++]=i[o++];for(;s<n.length;)t[a++]=n[s++];for(;o<i.length;)t[a++]=i[o++];return t}function mw(t,e,r=0){let n=e?[r]:[];for(let i=0;i<t.length;i++){let s=t.charCodeAt(i);(s===13||s===10)&&(s===13&&i+1<t.length&&t.charCodeAt(i+1)===10&&i++,n.push(r+i+1))}return n}function gw(t){let e=t.start,r=t.end;return e.line>r.line||e.line===r.line&&e.character>r.character?{start:r,end:e}:t}function Yj(t){let e=gw(t.range);return e!==t.range?{newText:t.newText,range:e}:t}var sf=["namespace","class","enum","interface","struct","typeParameter","type","parameter","variable","property","enumMember","decorator","event","function","method","macro","label","comment","string","keyword","number","regexp","operator"],of=["declaration","definition","readonly","static","deprecated","abstract","async","modification","documentation","defaultLibrary"];var Ly=$(require("url")),Tw=require("crypto"),Go=require("path"),ar=$(U());var xy=$(U());var Cr=$(U());var Q=class{constructor(e){this._children=[];this.syntaxIssues=[];this.resetableIssues=[];this._firstToken=e?.start,this._lastToken=e?.end}get issues(){return[...this.syntaxIssues,...this.resetableIssues]}resetIssues(){this.resetableIssues=[],this.children.forEach(e=>e.resetIssues())}get serializeIssues(){return this.issues.map(e=>e())}get firstToken(){return this._firstToken??this._children[0].firstToken}set firstToken(e){this._firstToken=e}get lastToken(){return this._lastToken??this._children[this._children.length-1]?.lastToken??this.firstToken}set lastToken(e){this._lastToken=e}get uri(){return this.firstToken.uri}getTopMostAstNodeForFile(e){return le(e,this.uri)?[this]:this.children.flatMap(r=>r.getTopMostAstNodeForFile(e))}getDocumentSymbols(e){if(!this.docSymbolsMeta)return this.children.flatMap(n=>n.getDocumentSymbols(e)??[]);if(!le(this.uri,e))return[];let r=pe(this);return[{name:this.docSymbolsMeta.name?this.docSymbolsMeta.name:"__UNSET__",kind:this.docSymbolsMeta.kind,range:r,selectionRange:r,children:[...this.children.flatMap(n=>n.getDocumentSymbols(e)??[])]}]}getWorkspaceSymbols(){if(!this.docSymbolsMeta)return this.children.flatMap(i=>i.getWorkspaceSymbols()??[]);let e=this.docSymbolsMeta.kind;if(![Cr.SymbolKind.File,Cr.SymbolKind.Class,Cr.SymbolKind.Constant].some(i=>i===e))return[];let r=Ar(this.uri),n=r?.range??pe(this);return[{location:Cr.Location.create(de(r?.docUri??this.uri),n),name:this.docSymbolsMeta.name?this.docSymbolsMeta.name:"__UNSET__",kind:this.docSymbolsMeta.kind},...this.children.flatMap(i=>i.getWorkspaceSymbols()??[]).filter(i=>i.kind===Cr.SymbolKind.File||i.kind===Cr.SymbolKind.Class||i.kind===Cr.SymbolKind.Constant)]}buildSemanticTokens(e){this._children.forEach(r=>r.buildSemanticTokens(e)),!(!this.semanticTokenType||!this.semanticTokenModifiers)&&e(Si(this.semanticTokenType),Ni(this.semanticTokenModifiers),this.firstToken,this.lastToken)}get children(){return this._children}get allDescendants(){return this.allDescendantsCache??=[...this._children,...this._children.flatMap(e=>e.allDescendants)],this.allDescendantsCache}addChild(e){e&&(e.parentNode=this,this._children.push(e)),this.allDescendantsCache=void 0}isAncestorOf(e){return this.children.some(r=>r===e||r.isAncestorOf(e))}toPrettyString(e){return this.toString()}toString(e){return"TODO"}get range(){return Cr.Range.create(Cr.Position.create(this.firstToken.pos.line,this.firstToken.pos.col),Cr.Position.create(this.lastToken.pos.line,this.lastToken.pos.colEnd))}get serializeUri(){return de(this.uri)}serialize(e){return{uri:this.serializeUri,range:this.range,issues:this.serializeIssues}}};var Ee=class extends Q{toJson(){return-1}#e;resolve(e){return this.#e??=af(this.toString(),e),this.#e}#t;evaluate(e){return this.#t??=De(`${this.operator?this.operator.toString():""}${this.resolve(e)}`),this.#t}#n;isTrue(e){return this.#n??=De(`!!(${this.operator?this.operator.toString():""}${this.resolve(e)})`),this.#n}toPrettyString(e){let r=this.evaluate(e);return`${r.toString()} /* ${this.toString()}${typeof r=="number"?` = 0x${r.toString(16)}`:""} */`}serialize(e){return{type:"EXPRESSION",value:this.toString(),evaluated:this.evaluate(e),uri:this.serializeUri,range:this.range,issues:this.serializeIssues}}},Zn=class extends Ee{constructor(r,n,i){super();this.expression=r;this.wrapped=n;this.addChild(r),i&&(this.addChild(i.operator),this.addChild(i.expression),this.join=[],this.join?.push(i))}get firstToken(){return this.openBracket?this.openBracket:super.firstToken}get lastToken(){return this.closeBracket?this.closeBracket:super.lastToken}addExpression(r,n){this.addChild(r),this.addChild(n),this.join??=[],this.join?.push({operator:r,expression:n})}toString(){let r=this.children.map(n=>n.toString()).join(" ");return this.wrapped?`(${r})`:`${r}`}isTrue(r){let n=`(${this.children.map(i=>i instanceof Ee?i.resolve(r):i.toString()).join(" ")})`;return De(`!!(${this.operator?this.operator.toString():""}${n})`)}};var ei=class extends Ee{constructor(r,n,i){super(n);this.value=r;this.docSymbolsMeta={name:`param${i+1}`,kind:xy.SymbolKind.Variable},this.semanticTokenType="variable",this.semanticTokenModifiers="declaration"}toString(){return this.value}},In=class extends Ee{constructor(r,n){super();this.functionName=r;this.params=n;this.addChild(r),this.params.forEach(i=>this.addChild(i))}getDocumentSymbols(r){return le(this.uri,r)?[{name:this.functionName.name,kind:xy.SymbolKind.Function,range:pe(this),selectionRange:pe(this),children:this.params.flatMap(n=>n?.getDocumentSymbols(r)??[])}]:[]}toString(){return`${this.functionName.toString()}(${this.params.map(r=>r?.toString()??"<NULL>").join(",")})`}isTrue(r){if(this.functionName.name==="defined"){let n=!!(this.params.length===1&&this.params[0]&&r.has(this.params[0].value));return this.operator?De(`!!(${this.operator}${n})`):n}return super.isTrue(r)}};var Gr=(t,e,r=!0,n=!0)=>({start:{line:t?.pos.line??0,character:r?t?.pos.col??0:(t?.pos.col??0)+(t?.pos.len??0)},end:{line:e?.pos.line??0,character:n?(e?.pos.col??0)+(e?.pos.len??0):e?.pos.col??0}});var pe=t=>Gr(t.firstToken,t.lastToken),Si=t=>sf.findIndex(e=>e===t),Ni=t=>of.findIndex(e=>e===t),qy=(t,e,r)=>!le(t.uri,e)||r.line<t.pos.line?!1:r.line>t.pos.line?!0:r.character>=t.pos.colEnd,Jj=(t,e,r)=>le(t.uri,e)?r.line<t.pos.line?!0:r.line>t.pos.line?!1:r.character<t.pos.col:!1,Ir=(t,e,r)=>{let n=t.firstToken,i=t.lastToken;return!!((n.pos.line<r.line||n.pos.line===r.line&&n.pos.col<=r.character)&&(i.pos.line>r.line||i.pos.line===r.line&&i.pos.colEnd>=r.character)&&le(t.uri,e))},vw=(t,e)=>{let r=(i,s)=>i.line<s.line||i.line===s.line&&i.character<=s.character,n=(i,s)=>i.line>s.line||i.line===s.line&&i.character>=s.character;return r(t.start,e.start)&&n(t.end,e.end)},bw=(t,e,r)=>{let n=t.firstToken,i=t.lastToken;return!!(t.lastToken.value!==";"&&(n.pos.line===r.line||i.pos.line===r.line)&&r.character>=i.pos.colEnd&&le(t.uri,e))},_w=(t,e,r)=>{if(!t)return!1;let i=t.filter(s=>s.pos.line===r.line).at(-1);return i&&i.pos.col>=r.character?!1:e.lastToken===i};var ti=(t,e,r)=>{let n=t,i=t;for(;i;)n=i,i=[...n.children].reverse().find(s=>Ir(s,e,r));return n},Tc=(t,e,r)=>{let n=t,i=t;for(;i;)n=i,i=[...n.children].find(s=>Jj(s.lastToken,e,r));return n===t?void 0:n},vc=(t,e,r)=>{let n=t,i=t;for(;i;)n=i,i=[...n.children].reverse().find(s=>qy(s.firstToken,e,r));return n===t?void 0:n},uf="#virtual#",$y=t=>t.includes(uf),Ar=t=>{if(!$y(t))return;let[e,r]=t.split(uf),[n,i]=r.split("-"),[s,o]=n.split(":"),[a,c]=i.split(":");return{docUri:e,range:ar.Range.create(ar.Position.create(Number.parseInt(s),Number.parseInt(o)),ar.Position.create(Number.parseInt(a),Number.parseInt(c)))}},By=t=>{let e=Ar(t.uri);e&&(t.range=e.range,t.uri=e?.docUri,t.virtual=!0,t.linkedTo=t.linkedTo.map(({range:r,uri:n})=>{let i=Ar(n);return{range:i?.range??r,uri:i?.docUri??n,templateStrings:[]}}))},W=(t,e,r=e,n,{severity:i=ar.DiagnosticSeverity.Error,linkedTo:s=[],tags:o,templateStrings:a=[],edit:c,codeActionTitle:l,inclusiveStart:u,inclusiveEnd:d}={severity:ar.DiagnosticSeverity.Error,linkedTo:[],templateStrings:[]})=>{let f={issues:Array.isArray(t)?t:[t],range:Gr(e,r,u,d),uri:e.uri,severity:i,linkedTo:s.map(({range:h,uri:T})=>({range:h,uri:T,templateStrings:[]})),tags:o,templateStrings:a,edit:c,codeActionTitle:l};By(f);let p,g=()=>(p??={severity:f.severity,range:f.range,message:f.issues?f.issues.map(eU).join(" or "):"",source:"devicetree",tags:f.tags,data:{firstToken:{pos:e.pos,tokens:e.tokens,value:e.value},lastToken:{pos:r.pos,tokens:r.tokens,value:r.value},type:"SyntaxIssue",items:f.issues,edit:f.edit,codeActionTitle:f.codeActionTitle,virtual:!!f.virtual}},p);return n?.syntaxIssues.push(g),{raw:f,diagnostic:g}},Lt=(t,e,r,n,{severity:i=ar.DiagnosticSeverity.Error,linkedTo:s=[],tags:o,templateStrings:a=[],edit:c,codeActionTitle:l,linkedToTemplateStrings:u=[]}={severity:ar.DiagnosticSeverity.Error,linkedTo:[],templateStrings:[],linkedToTemplateStrings:[]})=>{let d={issues:Array.isArray(t)?t:[t],range:Gr(e,r),uri:e.uri,severity:i,linkedTo:s.map(({range:g,uri:h},T)=>({range:g,uri:h,templateStrings:u.at(T)??[]})),tags:o,templateStrings:a,edit:c,codeActionTitle:l};By(d);let f,p=()=>(f??={severity:d.severity,range:d.range,message:tU(d),source:"devicetree",tags:d.tags,relatedInformation:[...d.linkedTo.map(g=>({message:d.issues.map(h=>rU(h,g.templateStrings)).join(" or "),location:{uri:de(g.uri),range:g.range}}))]},f);return n?.resetableIssues.push(p),{raw:d,diagnostic:p}},j=(t,e,r,n,{severity:i=ar.DiagnosticSeverity.Error,linkedTo:s=[],tags:o,templateStrings:a=[],edit:c,codeActionTitle:l}={severity:ar.DiagnosticSeverity.Error,linkedTo:[],templateStrings:[]})=>{let u={issues:Array.isArray(t)?t:[t],range:Gr(e,r),severity:i,uri:e.uri,linkedTo:s.map(({range:p,uri:g})=>({range:p,uri:g,templateStrings:[]})),tags:o,templateStrings:a,edit:c,codeActionTitle:l};By(u);let d,f=()=>(d??={severity:u.severity,range:u.range,message:nU(u),relatedInformation:[...u.linkedTo.map(p=>({message:u.issues.map(iU).join(" or "),location:{uri:de(p.uri),range:p.range}}))],source:"devicetree",tags:u.tags,data:{type:"StandardTypeIssue",firstToken:{pos:e.pos,tokens:e.tokens,value:e.value},lastToken:{pos:r.pos,tokens:r.tokens,value:r.value},edit:u.edit,codeActionTitle:u.codeActionTitle,items:u.issues,virtual:!!u.virtual}},d);return n?.resetableIssues.push(f),{raw:u,diagnostic:f}};function Or(t,e,r,{severity:n=ar.DiagnosticSeverity.Warning,linkedTo:i=[],tags:s,templateStrings:o=[],edit:a,codeActionTitle:c}={severity:ar.DiagnosticSeverity.Warning,linkedTo:[],templateStrings:[],edit:[],codeActionTitle:void 0},l=r){let u={issues:Array.isArray(t)?t:[t],range:ar.Range.create(r,l),severity:n,uri:e,linkedTo:i.map(({range:p,uri:g})=>({range:p,uri:g,templateStrings:[]})),tags:s,templateStrings:o,edit:a,codeActionTitle:c},d;return{raw:u,diagnostic:()=>(d??={severity:u.severity,range:u.range,message:sU(u),relatedInformation:[...u.linkedTo.map(p=>({message:u.issues.map(oU).join(" or "),location:{uri:de(p.uri),range:p.range}}))],source:"devicetree",tags:u.tags,data:{type:"FormattingIssues",items:u.issues,edit:u.edit,codeActionTitle:u.codeActionTitle,virtual:!!u.virtual}},d)}}var Sw=(t,e)=>[...t].sort((n,i)=>{let s=e.getSortKey(n),o=e.getSortKey(i);if(s===void 0||o===void 0)throw new Error("Sort keys must be set");if(s!==o)return s-o;let a=n.lastToken,c=i.lastToken;return a.pos.line!==c.pos.line?a.pos.line-c.pos.line:a.pos.col-c.pos.col});async function _t(t,e,r){let n=Se(t.textDocument.uri);if(!e)return[];let i=performance.now(),o=(await e.getRuntime()).getDeepestAstNode(n,t.position),a=e.getSortKey(o?.ast);return console.log(`search: ${performance.now()-i}ms`),r(o,l=>{let u=t.position;if(le(l.uri,n)){let d=l.lastToken;return d.pos.line<u.line||d.pos.line===u.line&&d.pos.colEnd<=u.character}return a!==void 0&&(e.getSortKey(l)??-1)<=a})}function oe(t,e){return{start:t,end:e??t}}var H=(t,e)=>t?.tokens.some(r=>r===e),Qe=(t,e)=>r=>r?.value&&(e?.caseInsensitive?t.toLowerCase()===r.value.toLowerCase():t===r.value)?"yes":e?.allowPartial?Qj(t)(r):"no",Oe=t=>e=>e?.tokens.some(r=>r===t)?"yes":"no",Qj=t=>e=>e?.value&&t.startsWith(e.value)?"partial":"no",On=(t,e)=>!!t&&!!e&&t.pos.line===e.pos.line&&le(t.uri,e.uri),qt=(t,e)=>t?.tokens[0]===21&&e?.tokens[0]===21&&(t?.prevToken&&t.prevToken.value===e?.value||e?.prevToken&&e.prevToken.value===t?.value)?!0:!!t&&!!e&&t.pos.colEnd===e.pos.col&&On(t,e),df=t=>t.map((e,r)=>({index:r,context:e,files:e.getContextFiles()})),cn=(t,e,r,n)=>{if("id"in e){let s=t?.find(o=>o.id===e.id);return s||void 0}if("name"in e){let s=t?.find(o=>o.ctxNames.includes(e.name));return s||void 0}return r?.getContextFiles().find(s=>le(s,e.uri))?r:df(t).sort(s=>s.context.id===n?-1:0).find(s=>s.files.some(o=>le(o,e.uri)))?.context},Fy=(t,e)=>df(t).filter(n=>n.files.some(i=>le(i,e))).map(n=>n.context),Nw=t=>{let e=/^(\w+)\s+(.+)$/,r=/^(\w+)\(([^)]*)\)\s+(.+)$/,n=/^(\w+)\(([^)]*),\s*\.\.\.\)\s+(.+)$/,i;if(i=n.exec(t)){let[,,s,o]=i,a=s.split(",").map(c=>c.trim());return(...c)=>{let l=o;return a.forEach((u,d)=>{let f=new RegExp(`\\b${u}\\b`,"g");l=l.replace(f,c[d])}),l=l.replace(/__VA_ARGS__/g,c.slice(a.length).join(", ")),l}}else if(i=r.exec(t)){let[,,s,o]=i,a=s.split(",").map(c=>c.trim());return(...c)=>{let l=o;return a.forEach((u,d)=>{let f=new RegExp(`\\b${u}\\b`,"g");l=l.replace(f,c[d])}),l}}else if(i=e.exec(t)){let[,,s]=i;return s.trim()}},Zj=0,af=(t,e)=>{let r=o=>o.replace(/(\w+)\s*##\s*(\w+)/g,(a,c,l)=>c+l),n=o=>o.replace(/#(\w+)/g,(a,c)=>`"${c}"`),i=t,s;do s=i,i=r(s),i=n(i),i=i.replace(/\b(\w+)\(([^)]*)\)|\b(\w+)\b/g,(o,a,c,l)=>{if(a==="defined"){let u=c.split(",").map(d=>d.trim());return u[0]?e.get(u[0])?.resolver:u}else if(a&&typeof e.get(a)?.resolver=="function"){let u=c.split(",").map(d=>d.trim()).map(d=>d==="__COUNTER__"?(Zj++).toString():d);return(e.get(a)?.resolver)(...u)}else if(l&&typeof e.get(l)?.resolver=="string")return e.get(l)?.resolver;return o});while(i!==s);return i};function jy(t){return t.replace(/'(.)'/g,(e,r)=>r.charCodeAt(0).toString()).replace(/(0x[a-f\d]+|\d+)[ul]*/gi,"$1")}function De(t){try{return(0,eval)(jy(t))}catch(e){console.log(e instanceof Error?e.message:e)}return t}var de=t=>Ly.default.pathToFileURL(t).toString(),Se=t=>rt(Ly.default.fileURLToPath(t)),kw=(t,e)=>{let r=(0,Go.relative)(t,e);return!!r&&!r.startsWith("..")&&!(0,Go.isAbsolute)(r)},le=(t,e)=>!t||!e?!1:t===e,rt=t=>(0,Go.normalize)(process.platform==="win32"?t.toLowerCase():t),ki=t=>(0,Tw.createHash)("sha256").update([rt(t.dtsFile),...t.includePaths.map(rt),...t.overlays.map(rt),t.bindingType,...t.zephyrBindings.map(rt),...t.deviceOrgBindingsMetaSchema.map(rt),...t.deviceOrgTreeBindings.map(rt),`showFormattingErrorAsDiagnostics-${t.showFormattingErrorAsDiagnostics}`].join(":")).digest("hex"),eU=t=>{switch(t){case 0:return"Expected value";case 1:return"Expected ';'";case 2:return"Expected '{'";case 3:return"Expected '}'";case 4:return"Expected '['";case 5:return"Expected ']'";case 12:return"Expected '>'";case 13:return"Expected '<'";case 16:return`Expected '"'`;case 17:return`Expected "'"\\`;case 24:return"Missing ':'";case 21:return"Missing '/'";case 26:return'Expected ")"';case 28:return'Missing ","';case 6:return"Expected property name";case 7:return"Expected node name";case 49:return"Node name shall start with a lower or upper case character";case 50:return"Node unit address should not start with 0x";case 51:return"Node unit address should not end with with ULL";case 8:return"Expected node address";case 9:return"Expected node path";case 48:return"Expected node path reference";case 10:return"Expected node reference";case 11:return"Expected root node name";case 14:return"Expected bytestring";case 15:return"Expected two digits for each byte in bytestring";case 20:return"Hex values are not allowed";case 18:return"Expected label name";case 19:return"Expected '/' at the start of a node path";case 23:return"Found ';' without a statement";case 25:return"Did you mean /delete-node/ or /delete-property/?";case 34:return"Did you mean /delete-node/?";case 35:return"Did you mean /delete-property/?";case 22:return"Unknown syntax";case 27:return"Expected expression";case 31:return"Expected macro identifier";case 30:return"Expected macro identifier or function like macro";case 29:return"White space is not allowed";case 32:return"Properties can only be defined in a node";case 33:return"Properties can only be deleted inside a node";case 36:return"Unable to resolve include";case 52:return"Unknown Node Address syntax";case 37:return"Expected start address";case 38:return"Expected end address";case 39:case 40:return"Expected 8|16|32|64";case 42:return"Unknown macro name";case 43:return"Expected function like macro";case 44:return"Macro expects less arguments";case 45:return"Macro expects more arguments";case 46:return"Missing #ENDIF";case 47:return"Block Unused";case 41:return"This syntax is not officially part of the DTS V0.4 standard"}},tU=t=>t.issues.map(e=>{switch(e){case 0:return`Property "${t.templateStrings[0]}" is replaced by a later definition`;case 1:return"Cannot delete a property before it has been defined";case 2:return"Node name already defined";case 5:return"Cannot delete a node before it has been defined";case 3:return`No node with that reference "${t.templateStrings[0]}" has been defined`;case 8:return`No node with name "${t.templateStrings[0]}" could be found in "/${t.templateStrings[1]}".`;case 4:return`Label name "${t.templateStrings[0]}" already defined`;case 6:return`Property "${t.templateStrings[0]}" was deleted`;case 7:return`Node "${t.templateStrings[0]}" was deleted`;case 9:return`The following node "${t.templateStrings[1]}" shall be present in "${t.templateStrings[0]}" node.`;case 10:return`The following node "${t.templateStrings[0]}" address range collides with another node. Address start: "${t.templateStrings[1]}", end: "${t.templateStrings[2]}".`}}).join(" or "),rU=(t,e)=>{switch(t){case 0:return"Property name already defined.";case 2:return"Defined here";case 4:return"Defined here";case 7:case 6:return"Deleted here";case 9:return"Node";case 10:return`Node "${e[0]}". Address start: "${e[1]}", end: "${e[2]}".`;default:return"TODO"}},nU=t=>t.issues.map(e=>{switch(e){case 9:return`Only these value are allowed ${t.templateStrings[0]}`;case 1:return"INTRO should be empty";case 8:return"INTRO can only be assigned one value";case 5:return"INTRO should be assigned a U32";case 6:return"INTRO should be assigned a U64";case 7:return"INTRO should be assigned a 'property encoded array'";case 2:return"INTRO should be assigned a string";case 3:return"INTRO should be assigned a string list";case 4:return`INTRO expects ${t.templateStrings[1]} values`;case 0:return"INTRO is required";case 11:return"INTRO should be omitted";case 27:return"INTRO name is not permitted under this node";case 34:return"INTRO name is not defined in the type binding for this node";case 10:return"INTRO address value must match node address";case 12:return"INTRO should be 'cpu'";case 13:return"INTRO should be 'memory'";case 14:return"INTRO is deprecated and should not be used'";case 15:return`INTRO ${t.templateStrings[1]}'`;case 18:return"INTRO value must be unique in the entire Devicetree";case 19:return`INTRO should have format ${t.templateStrings[1]}`;case 16:return`INTRO requires property "${t.templateStrings[1]}" in node path "${t.templateStrings[2]}"`;case 17:return"Unable to resolve interrupt parent node";case 20:return`INTRO should have format ${t.templateStrings[1]}`;case 21:return"Node is disabled";case 22:return"Unable to resolve handle";case 23:return`Unable to find "${t.templateStrings[0]}" in ${t.templateStrings[1]}`;case 24:return t.templateStrings[0];case 25:return t.templateStrings[0];case 26:return t.templateStrings[0];case 28:return t.templateStrings[0];case 35:return"Unable to find mapping range for address";case 29:return`INTRO exceeds address space available for this mapping. The range ends at ${t.templateStrings[2]}, the node ends at ${t.templateStrings[1]}`;case 30:return"Map entry overlaps with others entries";case 31:return"Unable to match to a nexus map entry";case 32:return`Unknown node type "${t.templateStrings[0]}"`;case 33:return`Missing name for "${t.templateStrings[0]}" index ${t.templateStrings[1]}"`;case 36:return"Node address is missing";case 37:return`Binding should be used on bus type${t.templateStrings.length?"s":""}: ${t.templateStrings.join(" or ")}`}}).join(" or ").replace("INTRO",`Property "${t.templateStrings[0]}"`).replaceAll("INTRO ",""),iU=t=>{switch(t){case 16:case 0:return"Node";case 15:return"Ignored reason";case 18:return"Conflicting properties";case 8:return"Additional value";case 21:return"Disabled by";case 29:return"Mapping range";case 30:return"Map entry";case 31:return"Nexus map entries";case 33:return"Names property";case 35:return"Range property";default:return"TODO"}},sU=t=>t.issues.map(e=>{switch(e){case 4:return"Add end of line to end of file";case 1:return`${t.codeActionTitle}. Expecting ${t.templateStrings[0]}.`;case 0:return"Move to a new line";case 3:return"Remove trailing whitespace at the end of file.";case 2:return"Remove trailing whitespace at the end of the line.";case 5:return`Fix indentation. ${t.templateStrings.at(0)?.length===0?"No indentation expected":`Expecting ${t.templateStrings[0]}`}`;case 6:return`Move token "${t.templateStrings[0]}" next to expression`;case 7:return"Remove (...) enclosure. This expression should only be enclosed in the #define of the macro"}}).join(" or "),oU=t=>"TODO",an=(t,e)=>{let r=Math.max(t.length,e.length);for(let n=0;n<r;n++){let i=t[t.length-r+n]??0,s=e[e.length-r+n]??0;if(i<s)return-1;if(i>s)return 1}return 0},Qi=(t,e)=>{let r=Math.max(t.length,e.length),n=new Array(r).fill(0),i=0;for(let s=0;s<r;s++){let o=t[t.length-1-s]??0,a=e[e.length-1-s]??0,c=o+a+i;n[r-1-s]=c>>>0,i=c>4294967295?1:0}return i&&n.unshift(1),n},aU=(t,e)=>{let r=Math.max(t.length,e.length),n=new Array(r).fill(0),i=0;for(let s=0;s<r;s++){let o=t[t.length-1-s]??0,a=e[e.length-1-s]??0;o-=i,o<a?(o+=4294967296,i=1):i=0,n[r-1-s]=o-a>>>0}for(;n.length>1&&n[0]===0;)n.shift();return n},cU=(t,e)=>Qi(t,e),Rw=(t,e)=>{let r=[];for(let n of t){let i=n.childAddress,s=n.length,o=Qi(i,s);if(an(e,i)>=0&&an(e,o)<0){let a=aU(e,i),c=n.parentAddress,l=cU(c,a),u=Qi(c,s);r.push({start:l,end:u,range:Gr(n.rangeTokens.start,n.rangeTokens.end),uri:n.rangeTokens.start.uri})}}return r};function Pw(t){return Array.isArray(t)&&Array.isArray(t[0])}function bc(t){return!t||t instanceof In?t:bc(t.parentNode)}function ww(t,e){let r=t.getText(),n=e.slice().sort((s,o)=>{let a=t.offsetAt(s.range.start),c=t.offsetAt(o.range.start);if(a!==c)return c-a;let l=t.offsetAt(s.range.end),u=t.offsetAt(o.range.end);if(l!==u)return u-l;let d=a===l&&s.newText.length>0,f=c===u&&o.newText.length>0;return d!==f?d?1:-1:0}),i=r;for(let s of n){let o=t.offsetAt(s.range.start),a=t.offsetAt(s.range.end);i=i.slice(0,o)+s.newText+i.slice(a)}return i}function yw(t,e){return t.line<e.line?-1:t.line>e.line?1:t.character<e.character?-1:t.character>e.character?1:0}function Ew(t,e){return yw(t.end,e.start)>0&&yw(t.start,e.end)<0}var Dw=(t,e)=>{let r=Cw(t,e),n=Aw(t,e);r&&(t.topComment=r.comment),n&&(t.endComment=n.comment)},Cw=(t,e)=>{let r=e.find(i=>i.lastToken===t.firstToken.prevToken&&(i.lastToken.pos.line===t.firstToken.pos.line||i.lastToken.pos.line+1===t.firstToken.pos.line));if(!r||r.astBeforeComment)return;r.astAfterComment=t;let n=Cw(r,e);return n&&(n.comment.astAfterComment=t,r.astAfterComment=void 0),{comment:n?.comment??r,commentIsBefore:!0}},Aw=(t,e)=>{let r=e.find(i=>i.firstToken.prevToken===t.lastToken&&i.firstToken.pos.line===t.lastToken.pos.line);if(!r)return;r.astBeforeComment=t;let n=Aw(r,e);return n&&(n.comment.astBeforeComment=t,r.astBeforeComment=void 0),{comment:n?.comment??r,commentIsBefore:!1}},Ko=(t,e,r)=>{let n=[42,44,45,36];return r||n.push(52,32,8,49),t.severity===ar.DiagnosticSeverity.Error&&le(t.uri,e)&&!n.some(i=>t.issues.includes(i))};function ff(t){let e=t?.charAt(0);return!!e&&(e>="A"&&e<="Z"||e>="a"&&e<="z")}var xc=require("fs"),WD=require("path"),dT=$(U());var Mn=$(U());var Lw=$(U());var Iw=$(U());var ne=class extends Q{constructor(r,n){super(n);this.value=r;this.semanticTokenType="string",this.semanticTokenModifiers="declaration",this.docSymbolsMeta={name:this.value,kind:Iw.SymbolKind.String}}toString(){return`"${this.value.toString()}"`}toJson(){return this.value}serialize(){return{type:"STRING",value:this.value,uri:this.serializeUri,range:this.range,issues:this.serializeIssues}}};var Mw=$(U());var Ow=$(U());var cr=class extends Ee{constructor(r,n,i=10){super(n);this.value=r;this.radix=i;this.docSymbolsMeta={name:this.value.toString(),kind:Ow.SymbolKind.Number},this.semanticTokenType="number",this.semanticTokenModifiers="declaration"}resolve(r){return this.value.toString()}evaluate(r){return this.value}isTrue(r){return!!this.value}toString(r){return this.value.toString(r??this.radix)}toJson(){return this.value}toPrettyString(r){let n=this.value;return this.radix==16?`0x${n.toString(16)} /* ${typeof n=="number"?`${n.toString(10)}`:""} */`:`${n.toString(10)} /* ${typeof n=="number"?`0x${n.toString(16)}`:""} */`}serialize(){return{type:"NUMBER_VALUE",value:`${this.radix===16?"0x":""}${this.toString()}`,evaluated:this.value,uri:this.serializeUri,range:this.range,issues:this.serializeIssues}}};var jt=class extends Q{constructor(r){super();this.values=r;this.docSymbolsMeta={name:"Cell Array",kind:Mw.SymbolKind.Array},this.values.forEach(n=>this.addChild(n))}toString(){return`<${this.values.map(r=>r.toString()).join(" ")}>`}toPrettyString(r){return`<${this.values.map(n=>n.toPrettyString(r)).join(" ")}>`}toJson(){if(this.values.length===1)return this.values[0].value?.toJson();if(this.values.length===2&&this.values.every(r=>r.value instanceof cr)){let r=new ArrayBuffer(8),n=new DataView(r);return this.values.map(i=>i.value.value).forEach((i,s)=>{n.setUint32(s*4,i)}),n.getBigUint64(0)}return this.values.map(r=>r.value?.toJson()??NaN)}serialize(r){return{type:"ARRAY_VALUE",value:this.values.map(n=>n.value?.serialize(r)??null),uri:this.serializeUri,range:this.range,issues:this.serializeIssues}}};var xw=$(U());var Ri=class extends Q{constructor(r){super();this.values=r;this.docSymbolsMeta={name:"Byte String Value",kind:xw.SymbolKind.Array},this.values.forEach(n=>this.addChild(n))}toString(){return`[${this.values.map(r=>r.toString(16).padStart(2,"0")).join(" ")}]`}toJson(){return this.values.map(r=>r.value?.toJson()??NaN)}serialize(){return{type:"BYTESTRING",values:this.values.map(r=>r.value?{value:r.value.toString(16),range:r.value.range,evaluated:r.value.value}:null),uri:this.serializeUri,range:this.range,issues:this.serializeIssues}}};var Ze=class extends Q{constructor(r,n){super(n);this.name=r;this.semanticTokenType="property",this.semanticTokenModifiers="declaration"}toString(){return this.name}serialize(){return{value:this.name,uri:this.serializeUri,range:this.range,issues:this.serializeIssues}}},nt=class extends Q{constructor(r,n=[]){super();this.propertyName=r;this.labels=n;this._values=void 0;this.docSymbolsMeta={name:this.propertyName?.name??"Unknown",kind:Lw.SymbolKind.Property},this.labels.forEach(i=>this.addChild(i)),this.addChild(r)}set values(r){if(this._values)throw new Error("Only one property name is allowed");this._values=r,this.addChild(r)}get values(){return this._values}get quickValues(){return this.values?.values.map(r=>r?r.value instanceof ne?r.value.value:r.value instanceof jt?r.value.values.map(n=>n.value instanceof cr?n.value.value:NaN):r.value instanceof Ri?r.value.values.map(n=>n.value?.value??NaN):NaN:null)}getFlatAstValues(){return this.values?.values.flatMap(r=>r?r.value instanceof ne?r.value:r.value instanceof jt?r.value.values.map(n=>n.value):r.value instanceof Ri?r.value.values.map(n=>n.value):r.value:null)}toString(){return`${this.propertyName?.toString()??"__UNSET__"}${this.assignOperatorToken?` = ${this._values?.values.map(r=>r?.toString()??"NULL").join(", ")??"NULL"}`:""};`}toPrettyString(r){return`${this.propertyName?.toString()??"__UNSET__"}${this.assignOperatorToken?` = ${this._values?.values.map(n=>n?.toPrettyString(r)??"NULL").join(", ")??"NULL"}`:""};`}serialize(r){return{name:this.propertyName?.serialize()??null,values:this.values?.values.map(n=>n?.value?.serialize(r)??null)??null,uri:this.serializeUri,range:this.range,issues:this.serializeIssues}}};var qw=$(U());var vr=class extends Q{constructor(r,n){super();this.keyword=n;this.addChild(n),this.docSymbolsMeta={name:r,kind:qw.SymbolKind.Function}}};var Mr=class extends vr{constructor(r){super("Delete Node",r);this._nodeNameOrRef=null}set nodeNameOrRef(r){if(this._nodeNameOrRef)throw new Error("Only one property name is allowed");this._nodeNameOrRef=r,this.addChild(r)}get nodeNameOrRef(){return this._nodeNameOrRef}};var ht=class extends vr{constructor(r){super("Delete Property",r);this._propertyName=null}set propertyName(r){if(this._propertyName)throw new Error("Only only property name is allowed");this._propertyName=r,this.addChild(r)}get propertyName(){return this._propertyName}};var $w=$(U());var ie=class extends Q{constructor(r){super();this.label=r;this.docSymbolsMeta={name:`&${this.label?.value??"NULL"}`,kind:$w.SymbolKind.Key},this.addChild(r)}get value(){return this.label?.value}toString(){return`&${this.label?.value??"NULL"}`}toJson(){return-1}serialize(){return{type:"LABEL_REF",label:this.label?.toString()??null,nodePath:this.linksTo?.pathString??null,uri:this.serializeUri,range:this.range,issues:this.serializeIssues}}};var lt=class t extends Q{constructor(){super()}get path(){if(!this.pathName)return["__UNDEFINED__"];if(!this.parentNode||this instanceof Dt)return[this.pathName];if(!(this.parentNode instanceof t))return;let e=this.parentNode.path;return e?[...e,this.pathName]:[this.pathName]}get pathName(){}get nodes(){return this.children.filter(e=>e instanceof t)}get deleteNodes(){return this.children.filter(e=>e instanceof Mr)}addNodeChild(e){this.addChild(e)}},Dt=class extends lt{constructor(){super(),this.docSymbolsMeta={name:"/",kind:Mn.SymbolKind.Class}}get properties(){return this.children.filter(e=>e instanceof nt)}get name(){return new Me("/",oe(this.firstToken))}get deleteProperties(){return this.children.filter(e=>e instanceof ht)}get nodes(){return this.children.filter(e=>e instanceof Ge)}get pathName(){return"/"}serialize(e){return{type:"ROOT",properties:this.properties.map(r=>r.serialize(e)),nodes:this.nodes.map(r=>r.serialize(e)),uri:this.serializeUri,range:this.range,issues:this.serializeIssues}}},lr=class extends lt{constructor(r=[]){super();this.labels=r;this._reference=null;this.docSymbolsMeta={name:"DTC Name",kind:Mn.SymbolKind.Class},r.forEach(n=>{super.addChild(n)})}get serializeIssues(){return[...this.issues,...this.reference?.issues??[]].map(r=>r())}set reference(r){if(this._reference)throw new Error("Only on label reference is allowed");this._reference=r;let n;r instanceof ie?n=r.value:n=r?.path?.pathParts.at(-1)?.name??"DTC Name",this.docSymbolsMeta={name:n??"DTC Name",kind:Mn.SymbolKind.Class},this.addChild(r)}get path(){return this.resolveNodePath?this.resolveNodePath:super.path}get reference(){return this._reference}get nodes(){return this.children.filter(r=>r instanceof Ge)}get pathName(){if(this.reference instanceof ie&&this.reference.label?.value)return`&${this.reference.label.value}`}get properties(){return this.children.filter(r=>r instanceof nt)}get deleteProperties(){return this.children.filter(r=>r instanceof ht)}serialize(r){return{type:"REF",name:this.reference?.serialize()??null,properties:this.properties.map(n=>n.serialize(r)),nodes:this.nodes.map(n=>n.serialize(r)),uri:this.serializeUri,range:this.range,issues:this.serializeIssues}}},Ge=class t extends lt{constructor(r=[],n){super();this.labels=r;this.omitIfNoRef=n;this._name=null;this.docSymbolsMeta={name:"DTC Name",kind:Mn.SymbolKind.Class},n&&this.addChild(n),r.forEach(i=>{this.addChild(i)})}get serializeIssues(){return[...this.issues,...this.name?.issues??[]].map(r=>r())}set name(r){if(this._name)throw new Error("Only on label reference is allowed");this._name=r,this.docSymbolsMeta={name:this._name?.toString()??"DTC Name",kind:Mn.SymbolKind.Class},this.addChild(r)}get name(){return this._name}get nodes(){return this.children.filter(r=>r instanceof t)}get pathName(){return this._name?.toString()}get properties(){return this.children.filter(r=>r instanceof nt)}get deleteProperties(){return this.children.filter(r=>r instanceof ht)}serialize(r){return{type:"CHILD",name:this.name?.serialize()??null,properties:this.properties.map(n=>n.serialize(r)),nodes:this.nodes.map(n=>n.serialize(r)),uri:this.serializeUri,range:this.range,issues:this.serializeIssues}}},_c=class extends Q{constructor(r,n){super(n);this.address=r;this.semanticTokenType="variable",this.semanticTokenModifiers="declaration"}toString(){return this.address?.map((r,n)=>r.toString(16).padStart(n?8:0,"0")).join("")??"NaN"}serialize(){return{address:this.address,uri:this.serializeUri,range:this.range,issues:this.serializeIssues}}},Me=class extends Q{constructor(r,n,i){super(n);this.name=r;this._address=i;this.semanticTokenType="variable",this.semanticTokenModifiers="declaration"}get value(){return this.name}get address(){return this._address}set address(r){if(this._address)throw new Error("Address can only be set once");r&&(this.lastToken=void 0,this._address=r,r.forEach(n=>this.addChild(n)))}get fullAddress(){return this._address?[...this._address.flatMap(r=>r.address)]:void 0}toString(){return this._address!==void 0?`${this.name}@${this._address.map(r=>r.toString()).join(",")}`:this.name}buildSemanticTokens(r){let n=this.firstToken;if(!n.value)return;let i={...n,pos:{...n.pos,len:this.name.length}};r(Si("type"),Ni("declaration"),i,i),this.address!==void 0&&this.address.forEach(s=>{r(Si("decorator"),Ni("declaration"),s.firstToken,s.lastToken),s.buildSemanticTokens(r)})}get serializeIssues(){return[...this.issues,...this._address?.flatMap(r=>r.issues)??[]].map(r=>r())}serialize(){let r=this.firstToken;return{fullName:this.toString(),name:{name:this.name,uri:this.serializeUri,range:Mn.Range.create(Mn.Position.create(r.pos.line,r.pos.col),Mn.Position.create(r.pos.line,r.pos.colEnd)),issues:this.serializeIssues},address:this.address?.map(n=>n.serialize())??null,uri:this.serializeUri,range:this.range,issues:this.serializeIssues}}};var zD=require("path"),fn=$(U());var br=class extends Q{constructor(r,n,i,s){super();this.startLabels=r;this.value=n;this.endLabels=i;this.bits=s;this.startLabels.forEach(o=>{this.addChild(o)}),this.addChild(s),this.addChild(n),this.endLabels.forEach(o=>{this.addChild(o)})}toString(){return`${[this.value?.toString()??"NULL",...this.endLabels.map(r=>r.toString())].join(" ")}`}toPrettyString(r){return`${[this.value?.toPrettyString(r)??"NULL",...this.endLabels.map(n=>n.toString())].join(" ")}`}toJson(){return this.value?.toJson()}};var Ut=t=>t instanceof vr?!0:t instanceof lt?!1:t.parentNode?Ut(t.parentNode):!1;var Uy=t=>{if(t instanceof nt)return t;if(!(t instanceof lt))return t.parentNode?Uy(t.parentNode):void 0},Ws=t=>!t||t instanceof nt?!1:t instanceof br||Ws(t.parentNode),Yo=t=>[...t.map(e=>{if(e instanceof Ge||e instanceof Dt)return e.name;if(e instanceof lr)return e.reference})].filter(e=>!!e),Hy=(t,e)=>e?e.parentNode===t||Hy(t,e.parentNode):!1;var wt=$(U());var Bw=$(U());var xn=class extends Q{constructor(){super();this._pathParts=[]}addPath(r,n){this._pathParts.push(r),n&&this.addChild(n),this.addChild(r)}get pathParts(){return[...this._pathParts]}toString(){return this._pathParts.map(r=>r?.toString()??"<NULL>").join("/")}buildSemanticTokens(r){this._children.forEach(n=>{n instanceof Me?n.buildSemanticTokens(r):r(Si("operator"),Ni("declaration"),n.firstToken,n.lastToken)})}},it=class extends Q{constructor(r){super();this.path=r;this.docSymbolsMeta={name:`/${this.path?.toString()??""}`,kind:Bw.SymbolKind.Namespace},this.addChild(r)}toString(){return`&${this.path?.toString()??"NULL"}`}toJson(){return-1}serialize(){return{type:"NODE_PATH",nodePath:this.path?.toString()??null,uri:this.serializeUri,range:this.range,issues:this.serializeIssues}}};var Z=$(U());var Fw=require("path"),pf=$(U());var Pi=class extends Q{constructor(r,n){super();this.keyword=r;this.path=n;this.docSymbolsMeta={name:`Include ${n}`,kind:pf.SymbolKind.File},this.addChild(r),this.addChild(n)}get resolvedPath(){return this._resolvedPath}set resolvedPath(r){this.docSymbolsMeta={name:`Include ${r}`,kind:pf.SymbolKind.File},this._resolvedPath=r}},Xo=class extends Q{constructor(r,n,i){super(i);this._path=r;this.relative=n;this.docSymbolsMeta={name:(0,Fw.basename)(this.path),kind:pf.SymbolKind.File},this.semanticTokenType="string",this.semanticTokenModifiers="declaration"}get path(){return this.relative?this._path.slice(1,-1):this._path}};var ln=class extends Q{constructor(r){super();this.comments=r;r.forEach(this.addChild.bind(this))}toString(){return this.comments.map(r=>r.toString()).join(`
183
183
  `)}},un=class extends Q{constructor(e){super(e),this.semanticTokenType="comment",this.semanticTokenModifiers="documentation"}toString(){let e,r=this.firstToken,n="";for(;r!==this.lastToken;)n+=r?.value.padStart(r.value.length+(e?r.pos.col-e.pos.colEnd:0)," "),e=r,r=r?.nextToken;r&&(n+=r?.value.padStart(r.value.length+(e?r.pos.col-e.pos.colEnd:0)," "));let i=n.match(/^\s*(?:(?:\/\/|\/\*+)\s*)?(.*?)\s*(?:\*\/)?\s*$/s);return i?i[1]:""}};var jw=$(U());var St=class extends Ee{constructor(r,n){super(n);this.name=r;this.docSymbolsMeta={name:this.name.toString(),kind:jw.SymbolKind.Variable},this.semanticTokenType="macro",this.semanticTokenModifiers="declaration"}toString(){return this.name}};var Rf=$(U());var Vy=$(U());var Zi=class extends Q{constructor(r,n){super(n);this.label=r;this.docSymbolsMeta={name:this.label.value,kind:Vy.SymbolKind.Constant},this.semanticTokenType="variable",this.semanticTokenModifiers="declaration",this.addChild(r)}toString(){return`${this.label.toString()}:`}},Qt=class extends Q{constructor(r,n){super(n);this.value=r;this.docSymbolsMeta={name:this.value,kind:Vy.SymbolKind.Variable},this.semanticTokenType="variable",this.semanticTokenModifiers="declaration"}buildSemanticTokens(r){let n=this.parentNode;if(!(n instanceof ie&&n.linksTo)){super.buildSemanticTokens(r);return}r(Si("type"),Ni("declaration"),this.firstToken,this.lastToken)}toString(){return`${this.value}`}};var ut=class extends Q{constructor(e){super(e),this.semanticTokenType="keyword",this.semanticTokenModifiers="declaration"}};var Uw=$(U());var hf=class extends Q{constructor(r){super();this.values=r;this.docSymbolsMeta={name:"Values",kind:Uw.SymbolKind.String},this.values.forEach(n=>this.addChild(n))}toString(){return this.values.map(r=>r?.toString()).join(",")}toJson(){return this.values.length===1?this.values[0]?.toJson():this.values.map(r=>r?.toJson())}};var Hw=$(U());var mf=class extends Q{constructor(r){super();this.keyword=r;this.addChild(r),this.docSymbolsMeta={name:"DTS Document version",kind:Hw.SymbolKind.Function}}};var ri=class extends Q{constructor(r,n){super();this.value=r;this.labels=n;this.labels.forEach(i=>{this.addChild(i)}),this.addChild(this.value)}toString(r){return`${this.labels.map(n=>n.toString()).join(" ")}${this.value?.toString(r)??"NULL"}`}toPrettyString(r){return`${this.labels.map(n=>n.toString()).join(" ")}${this.value?.toPrettyString(r)??"NULL"}`}};var gf=class extends Q{constructor(r,n){super(n);this.operator=r;this.semanticTokenType="operator",this.semanticTokenModifiers="declaration"}toString(){return this.operator}};var Vw=$(U());var Jo=class extends ut{toString(){return"..."}},ni=class extends Q{constructor(r,n){super();this.functionName=r;this.params=n;this.addChild(r),this.params.forEach(i=>this.addChild(i))}getDocumentSymbols(r){return le(this.uri,r)?[{name:this.functionName.name,kind:Vw.SymbolKind.Function,range:pe(this),selectionRange:pe(this),children:this.params.flatMap(n=>n.getDocumentSymbols(r))}]:[]}toString(){return`${this.functionName}(${this.params.map(r=>r.toString()).join(",")})`}};var es=class{constructor(){this.positionStack=[];this._issues=[];this.issueLengthPositionStack=[];this.moveEndOfLine=(e,r=!0,n=!1)=>{let i=e.pos.line;if(this.currentToken?.pos.line!==i||!le(this.currentToken?.uri,e.uri))return;let s=this.currentToken,o=s;for(;this.currentToken?.pos.line===i&&le(this.currentToken?.uri,e.uri);)o=this.moveToNextToken;return r&&this._issues.push(W(22,s,o,null)),n&&o?.value==="\\"&&o.nextToken?this.moveEndOfLine(o.nextToken,r):o};this.parsing=new Promise(e=>{setTimeout(()=>{this.parse().then(e)})})}reset(){this.issueLengthPositionStack=[],this.positionStack=[],this._issues=[]}get issues(){return this._issues}get stable(){return this.parsing}get done(){return this.peekIndex()>=this.tokens.length}get moveToNextToken(){let e=this.currentToken;if(e)return this.moveStackIndex(),e}enqueueToStack(){this.issueLengthPositionStack.push(this._issues.length),this.positionStack.push(this.peekIndex())}popStack(){let e=this.issueLengthPositionStack.pop()??0;e!==this._issues.length&&this._issues.splice(e),this.positionStack.pop()}mergeStack(){let e=this.issueLengthPositionStack.pop(),r=this.positionStack.pop();if(r===void 0||e===void 0)throw new Error("Index out of bounds");this.positionStack[this.positionStack.length-1]=r}peekIndex(e=1){let r=this.positionStack.at(-1*e);if(r===void 0)throw new Error("Index out of bounds");return r}get currentToken(){return this.tokens.at(this.peekIndex())}get prevToken(){let e=this.peekIndex()-1;if(e!==-1)return this.tokens[e]}moveStackIndex(){let e=this.positionStack.length-1;if(this.positionStack[e]===void 0)throw new Error("Index out of bounds");this.positionStack[e]!==this.tokens.length&&this.positionStack[e]++}checkConcurrentTokens(e){this.enqueueToStack();let r=[];return e.every(n=>{let i=this.currentToken,s=n(i),o=!1;return s!=="no"&&i&&(r.push(i),this.moveToNextToken,o=qt(i,this.currentToken)),s==="yes"&&o}),this.mergeStack(),r}consumeAnyConcurrentTokens(e){this.enqueueToStack();let r=[],n,i=!0;for(;e.some(s=>s(this.currentToken)==="yes"&&i);)r.push(this.currentToken),n=this.moveToNextToken,i=qt(n,this.currentToken);return this.mergeStack(),r}getDocumentSymbols(e){return this.allAstItems.flatMap(r=>r.getDocumentSymbols(e))}getWorkspaceSymbols(){return this.allAstItems.flatMap(e=>e.getWorkspaceSymbols())}buildSemanticTokens(e,r){let n=[],i=(s,o,a,c)=>{if(!a||!c||!le(a.uri,r)||!le(c.uri,r))return;let l=c.pos.colEnd-a.pos.col;n.push({line:a.pos.line,char:a.pos.col,length:c===a?c.pos.len:l,tokenType:s,tokenModifiers:o})};this.allAstItems.forEach(s=>{s.buildSemanticTokens(i)}),n.sort((s,o)=>s.line===o.line?s.char-o.char:s.line-o.line).forEach(s=>e.push(s.line,s.char,s.length,s.tokenType,s.tokenModifiers))}processCIdentifier(e,r,n=!1){this.enqueueToStack();let i=this.consumeAnyConcurrentTokens([19,47,48].map(Oe));if(!i.length){this.popStack();return}if(!i?.[0]?.value.match(/^[_A-Za-z]/)){this.popStack();return}let s=i.map(a=>a.value).join(""),o=new St(s,oe(i[0],i.at(-1)));if(n&&!e.has(o.name)){this.popStack();return}return!r&&o.name!=="defined"&&(e.get(o.name)||this._issues.push(W(42,o.firstToken,o.lastToken,o))),this.mergeStack(),o}isOperator(){this.enqueueToStack();let e=this.moveToNextToken;if(!e){this.popStack();return}let r=e,n;if(H(e,40)?(n="&",H(this.currentToken,40)&&(n="&&",r=this.moveToNextToken)):H(e,6)?(n="!",H(this.currentToken,0)&&(n="!=",r=this.moveToNextToken)):H(e,10)?n="~":H(e,8)?(n="|",H(this.currentToken,8)&&(n="||",r=this.moveToNextToken)):H(e,9)?n="^":H(e,4)?(n=">",H(this.currentToken,4)?(n="<<",r=this.moveToNextToken):H(this.currentToken,0)&&(n=">=",r=this.moveToNextToken)):H(e,5)?(n="<",H(this.currentToken,5)?(n=">>",r=this.moveToNextToken):H(this.currentToken,0)&&(n="<=",r=this.moveToNextToken)):H(e,15)?n="+":H(e,16)?n="-":H(e,17)?n="*":H(e,13)?n="/":H(e,18)?n="%":H(e,46)?H(this.currentToken,46)&&(n="##",r=this.moveToNextToken):H(e,0)&&H(this.currentToken,0)&&(n="==",r=this.moveToNextToken),n){let i=new gf(n,oe(e,r));return this.mergeStack(),i}this.popStack()}parseScopedBlock(e,r,n){this.enqueueToStack();let i=this.moveToNextToken;if(!i||!e(i)){this.popStack();return}let s=this.peekIndex(),o=()=>{this.positionStack[this.positionStack.length-1]=s},a=g=>g.flatMap(h=>"items"in h?a(h.items):h),c=[i],l=[],u=[];u[0]={rewind:o,tokens:[]};let d=this.currentToken;for(;d&&!r(d);){if(n?.(d)){let g=this.peekIndex()+1,h=()=>{this.positionStack[this.positionStack.length-1]=g};c.push(d),l.push(d),u[u.length]={rewind:h,tokens:[]}}else if(e(d)){let g=this.parseScopedBlock(e,r,n);g&&(c.push(g),u[u.length-1].tokens.push(...a(g.items))),d=this.currentToken;continue}else c.push(d),u[u.length-1].tokens.push(d);this.moveToNextToken,d=this.currentToken}let f=d;f&&r(f)&&(this.moveToNextToken,c.push(f));let p={startToken:i,items:c,splitTokens:u,endToken:f,separatorTokens:l};return this.mergeStack(),p}isFunctionCall(e){this.enqueueToStack();let r=this.processCIdentifier(e,!1);if(!r){this.popStack();return}if(!qt(r.lastToken,this.currentToken)){this.popStack();return}let n=this.processMacroCallParams();if(!n){this.popStack();return}if(r.name==="defined")n.length>1?this._issues.push(W(44,r.firstToken,r.lastToken,r)):n.length<1&&this._issues.push(W(45,r.firstToken,r.lastToken,r));else{let s=e.get(r.name)?.macro;s&&(s?.identifier instanceof ni?s.identifier.params.at(-1)instanceof Jo||(n.length>s.identifier.params.length?this._issues.push(W(44,r.firstToken,r.lastToken,r,{linkedTo:[s]})):n.length<s.identifier.params.length&&this._issues.push(W(45,r.firstToken,r.lastToken,r,{linkedTo:[s]}))):this._issues.push(W(43,r.firstToken,r.lastToken,r)))}let i=new In(r,n);return i.lastToken=this.prevToken,this.mergeStack(),i}processHex(){this.enqueueToStack();let e=this.checkConcurrentTokens([Qe("0"),Qe("x",{caseInsensitive:!0})]);if(e.length!==2){this.popStack();return}let r=this.consumeAnyConcurrentTokens([19,20].map(Oe));if(!r.length){this.popStack();return}let n=Number.parseInt(r.map(s=>s.value).join(""),16),i=new cr(n,oe(e[0],r.at(-1)),16);return this.mergeStack(),i}processDec(e=!1){this.enqueueToStack();let r;e&&(H(this.currentToken,16)||H(this.currentToken,15))&&qt(this.currentToken,this.currentToken?.nextToken)&&(r=this.moveToNextToken);let n=this.consumeAnyConcurrentTokens([19].map(Oe));if(!n.length){this.popStack();return}let i=Number.parseInt(n.map(o=>o.value).join(""),10);r&&H(r,16)&&(i=4294967295-i);let s=new cr(i,oe(r??n[0],n.at(-1)),10);return this.mergeStack(),s}processEnclosedExpression(e,r){this.enqueueToStack();let n,i;if(H(this.currentToken,42)){let s;n=this.moveToNextToken,i=n;let o=this.processExpression(e,r,!0);return o&&(s=new Zn(o,!0),o=new Zn(s,!1),s.openBracket=n),H(this.currentToken,43)?(i=this.moveToNextToken,s&&(s.closeBracket=i)):n&&this._issues.push(W(26,n,n,r)),this.mergeStack(),o}this.popStack()}processExpression(e,r,n=!1){this.enqueueToStack();let i,s;if(n&&(s=this.isOperator()),i=this.processEnclosedExpression(e,r)||this.isFunctionCall(e)||this.processCIdentifier(e,!1)||this.processHex()||this.processDec(!0),!i){this.popStack();return}if(s&&(i.operator=s),n){let o=this.isOperator();for(;o;){let a=this.processExpression(e,r,!0);a?i instanceof Zn?i.addExpression(o,a):i=new Zn(i,!1,{operator:o,expression:a}):this._issues.push(W(27,o.firstToken,o.lastToken,r)),o=this.isOperator()}}return this.mergeStack(),i}processMacroCallParams(){if(!H(this.currentToken,42))return;let e=this.parseScopedBlock(n=>!!H(n,42),n=>!!H(n,43),n=>!!H(n,24));return e?.items.length===2&&H(e.endToken,43)?[]:e?.splitTokens.map((n,i)=>{if(n.tokens.length===0)return null;let s=new ei(n.tokens.map((o,a)=>{let c=o.value;return o.pos.line===n.tokens.at(a+1)?.pos.line?c=c.padEnd(n.tokens[a+1].pos.col-o.pos.col," "):o.value==="\\"&&(c=c.slice(0,-1)),c}).join(""),oe(n.tokens[0],n.tokens.at(-1)),i);return s.splitToken=e.separatorTokens.at(i),s})}};var Gy=require("fs"),Zo=require("path"),Ec=$(U());var Nc=require("fs");var ts=class t{constructor(e,r){this.text=e;this.uri=r;this.inComment=!1;this.lineNumber=0;this.columnNumber=0;this._tokens=[];let n=this.text.replace(/\r\n/g,`
184
184
  `).trimEnd();this.lines=n.split(`
185
185
  `);for(let i=0;i<this.lines.length;i++)this.lines[i]+=`
186
186
  `;this.lexIt()}get tokens(){return this._tokens}isWhiteSpace(){let e=this.currentChar;if(!e)return!1;let r=e.charCodeAt(0);return r===32||r===9||r===10||r===13||r===12||r===11}get endOfFile(){return this.isOnLastLine&&this.isOnLastCharOfLine}get isOnLastLine(){return this.lineNumber===this.lines.length-1}get isOnLastCharOfLine(){return this.lines[this.lineNumber].length<=this.columnNumber}moveToNextLine(){for(;!this.isOnLastLine;)if(this.columnNumber=0,this.lineNumber++,this.lines[this.lineNumber].length>0)return!0;return!1}moveOnLine(){let r=this.lines[this.lineNumber].length;return this.columnNumber>=r?this.moveToNextLine():(this.columnNumber++,this.columnNumber>=r&&this.moveToNextLine(),!0)}move(){return this.lineNumber>=this.lines.length?!1:this.moveOnLine()}get currentChar(){if(this.lineNumber>=this.lines.length)return null;let e=this.lines[this.lineNumber];return this.columnNumber>=e.length?null:e[this.columnNumber]}static{this.SYNTAX_CHARS=new Set(["^","~","|","!","\\","<",">",";","=","/","{","}","[","]","(",")","*","%","&",".",":","+","@","-","_",",","x","X","?"])}static isSyntaxChar(e){return e?t.SYNTAX_CHARS.has(e):!1}static isLetterCode(e){return e>=65&&e<=90||e>=97&&e<=122}getWord(){let e="";for(;!this.isWhiteSpace()&&(e.length&&!t.isSyntaxChar(this.currentChar)||!e.length);){if(e+=this.currentChar??"",e.length===1&&t.isSyntaxChar(this.currentChar)){this.move();break}let r=this.lineNumber;if(!this.move()||this.lineNumber!==r)return e}return this.inComment&&e==="*"&&this.currentChar==="/"&&(this.inComment=!1),this.inCommentLineStart!==void 0&&this.lineNumber!==this.inCommentLineStart&&(this.inCommentLineStart=void 0,this.inComment=!1),!this.inComment&&e==="/"&&this.currentChar==="*"&&(this.inCommentLineStart=void 0,this.inComment=!0),!this.inComment&&e==="/"&&this.currentChar==="/"&&(this.inCommentLineStart=this.lineNumber,this.inComment=!0),e}getString(e){let r=e;for(;this.currentChar!==e;){if(this.currentChar===`
187
- `){let o=this.lineNumber,a=this.columnNumber,c=r.length;this.pushToken({tokens:[21],value:r,pos:{col:a-c,line:o,len:c,colEnd:a}}),r=""}else if(this.currentChar==="\\"){let o=this.lineNumber;if(r+=this.currentChar??"",this.move())o===this.lineNumber&&(r+=this.currentChar??"");else break}else r+=this.currentChar??"";if(!this.move())break}r+=e;let n=this.lineNumber,i=this.columnNumber+1,s=r.length;this.pushToken({tokens:[21],value:r,pos:{col:i-s,line:n,len:s,colEnd:i}}),this.move()}lexIt(){for(;!this.endOfFile;){for(;this.isWhiteSpace();)this.move();let e=this.getWord();e&&this.process(e)}}static{this.SINGLE_CHAR_TOKENS=new Map([["{",[2]],["}",[3]],["(",[42]],[")",[43]],["[",[11]],["]",[12]],[";",[1]],[":",[50]],["=",[0]],[">",[4]],["<",[5]],["!",[6]],["|",[8]],["^",[9]],["&",[40,7]],["~",[10]],["/",[13]],["\\",[14]],["+",[15]],["-",[16]],["*",[17]],["%",[18]],["?",[44]],[".",[45]],["_",[48]],["@",[49]],[",",[24]]])}static{this.KEYWORD_TOKENS=new Map([["true",38],["false",39],["#define",25],["#include",26],["#line",27],["#undef",28],["#error",29],["#pragma",30],["#defined",31],["#if",32],["#ifdef",33],["#ifndef",34],["#elif",35],["#else",36],["#endif",37]])}process(e){let r=this.isString(e);if(!r){let i=t.KEYWORD_TOKENS.get(e.toLowerCase());if(i&&(r=!0,this.pushToken({tokens:[i],value:e.toLowerCase(),pos:this.generatePos(e,e.toLowerCase())}),i===39||i===38)){let s=this.tokens.length-1;if(qt(this.tokens[s-1],this.tokens[s]))r=!1,this.tokens.pop();else return!0}}if(r||(r=this.isDigit(e)||this.isHexDigit(e)||this.isLetters(e)),!r&&e.length===1){let i=t.SINGLE_CHAR_TOKENS.get(e);if(i)return r=!0,this.pushToken({tokens:i,value:e,pos:this.generatePos(e,e)}),!0}if(r||(r=this.isHash(e)||this.unknownToken(e)),!r)throw new Error(`Lexer is not complete!!! Could not find token for "${e}"`);let n=this._tokens[this._tokens.length-1];return r&&!n?.tokens.some(i=>i===21)&&n&&n.pos.len<e.length?this.process(e.slice(n.pos.len)):!0}pushToken(e){let r={tokens:e.tokens,pos:e.pos,value:e.value,uri:this.uri},n=this._tokens[this._tokens.length-1];r.prevToken=n,n&&(n.nextToken=r),this._tokens.push(r)}isLetters(e){let r=e[0]?.charCodeAt(0);if(t.isLetterCode(r)){let n="";for(let i=0;i<e.length;i++){let s=e.charCodeAt(i);if(t.isLetterCode(s))n+=e[i];else break}return this.pushToken({tokens:[47],value:n,pos:this.generatePos(e,n)}),!0}return!1}isDigit(e){let r=e[0],n=r?.charCodeAt(0);return n>=48&&n<=57?(this.pushToken({tokens:[20,19],value:r,pos:this.generatePos(e,r)}),!0):!1}isHexDigit(e){let r=e[0],n=r?.charCodeAt(0);return n>=65&&n<=70||n>=97&&n<=102?(this.pushToken({tokens:[20,47],value:r,pos:this.generatePos(e,r)}),!0):!1}isHash(e){let r="#";return e.startsWith(r)?(this.pushToken({tokens:[46],pos:this.generatePos(e,r),value:r}),!0):!1}unknownToken(e){return this.pushToken({tokens:[41],pos:this.generatePos(e," "),value:e}),!0}isString(e){if(this.inComment)return!1;let r=e[0];if(r==='"'||r==="'"){let n=e.length-1;if(this.columnNumber+1<n)throw new Error("Error while rewinding");return this.columnNumber-=n,this.getString(r),!0}return!1}generatePos(e,r){let n=this.columnNumber-e.length,i=r.length;return{line:this.lineNumber,col:n,len:i,colEnd:n+i}}};var zy,yf=class{constructor(){this.headerFiles=new Map;this.includeOwners=new WeakMap}getCPreprocessorParser(e,r,n,i){e=rt(e);let s=`${Array.from(n).map(l=>l[1].macro.toString()).join("::")}`,o=this.headerFiles.get(e)?.get(s);if(o)return o.reparse(n),o;console.log("No cpreprocess cache",e);let a=new Qo(e,r,n),c=this.includeOwners.get(a)??new Set;return c.add(i),this.includeOwners.set(a,c),this.headerFiles.has(e)||this.headerFiles.set(e,new Map),this.headerFiles.get(e)?.set(s,a),a}reset(e){e=rt(e);let r=this.headerFiles.get(e);r&&Array.from(r).forEach(n=>{n[1]&&(console.log("disposing cpreprocessor cache for",e),Array.from(this.includeOwners.get(n[1])??[]).forEach(this.reset.bind(this)),this.headerFiles.delete(e))})}};function Sc(){return zy??=new yf,zy}function zw(){zy=new yf}var Wy,Tf=class t{constructor(){this.fileMap=new Map}static clone(e){let r=e.length;if(r===0)return[];let n=new Array(r),i;for(let s=0;s<r;s++){let o=e[s],a={tokens:o.tokens,pos:o.pos,value:o.value,uri:o.uri,prevToken:i,nextToken:void 0};i&&(i.nextToken=a),n[s]=a,i=a}return n}needsRenew(e,r){return e=rt(e),this.fileMap.get(e)?.text!==r}getDocument(e,r){return Qn.create(e,"devicetree",0,r??this.fileMap.get(e)?.text??(0,Nc.readFileSync)(e).toString())}renewLexer(e,r){if(e=rt(e),Sc().reset(e),!r&&!(0,Nc.existsSync)(e))return[];try{r??=(0,Nc.readFileSync)(e).toString();let n=new ts(r,e);return this.fileMap.set(e,n),t.clone(n.tokens)}catch{}return[]}requestTokens(e,r){e=rt(e);let n=this.fileMap.get(e)?.tokens;return!n&&r?[...this.renewLexer(e)]:t.clone(n??[])}reset(e){e=rt(e),Sc().reset(e),this.fileMap.delete(e)}};function Mr(){return Wy??=new Tf,Wy}function Ww(){Wy=new Tf}var vf=class t extends es{constructor(r,n=()=>Mr().requestTokens(this.uri,!0)){super();this.uri=r;this.getTokens=n;this.comments=[];this.tokens=[]}cleanUpComments(){let r=[];for(let n=0;n<this.tokens.length;n++){let i=t.processBlockComment(this.tokens,n)||t.processLineComment(this.tokens,n);i&&(n=i.index,r.push(...i.tokenUsed),this.comments.push(i.comment))}if(r.length>0){let n=new Set(r),i=[];for(let s=0;s<this.tokens.length;s++)n.has(s)||i.push(this.tokens[s]);this.tokens=i}}get allAstItems(){return this.comments}reset(){super.reset(),this.comments=[]}reparse(){return this.reset(),this.parse()}async parse(){this.tokens=this.getTokens(),this.cleanUpComments()}static processBlockComment(r,n){let i=[],s=()=>(i.push(n++),r[n]),o=()=>r[n],a=()=>r[n-1],c=o(),l=c;if(!c||!H(c,13)||(l=s(),!H(l,17)||c.pos.line!==l.pos.line||c.pos.col+1!==l.pos.col))return;let u=()=>!(!H(a(),17)||!H(o(),13)||!qt(a(),o())),d=l.pos.line,f=c,p=[];l=s();do{if(o()?.pos.line!==d){let T=new un(oe(f,a()));p.push(T),d=o().pos.line??0,f=o()}l=s()}while(n<r.length&&!u());let g=new un(oe(f,o()));p.push(g);let h=new ln(p);return s(),{comment:h,tokenUsed:i,index:n-1}}static processLineComment(r,n){let i=[];if(!H(r[n],13)||r.length===n+1||!H(r[n+1],13)||!qt(r[n],r[n+1]))return;for(;r[n].pos.line===r.at(n+1)?.pos.line;)i.push(n++);return i.push(n++),{comment:new un(oe(r[i[0]],r[i.at(-1)])),tokenUsed:i,index:n-1}}};var Gw=$(U());var bf=class extends Q{constructor(r,n){super(r);this.content=n}toString(){let r=this.content.filter(n=>!H(n,14));return r.map((n,i)=>{let s=n.value;return n.pos.line===r.at(i+1)?.pos.line?s=s.padEnd(r[i+1].pos.col-n.pos.col," "):r.at(i+1)&&(s=s.padEnd(s.length+1," ")),s}).join("")}},kc=class extends Q{constructor(r,n,i){super();this.keyword=r;this.identifier=n;this.content=i;this.addChild(r),this.addChild(this.identifier),this.content&&this.addChild(this.content)}get name(){return this.identifier instanceof St?this.identifier.name:this.identifier.functionName.name}toString(){return this.toStringCache??=[this.identifier.toString(),...this.content?[this.content?.toString()]:[]].join(" "),this.toStringCache}toMarkupContent(){return{kind:Gw.MarkupKind.Markdown,value:["```cpp",`#define ${this.toString()}`,"```"].join(`
188
- `)}}};var Gs=class extends Q{constructor(e){super(e)}},Rc=class extends Q{constructor(r,n){super();this.keyword=r;this.content=n;this.active=!1;this.addChild(r)}},Pc=class extends Rc{constructor(r,n,i){super(r,i);this.identifier=n;this.addChild(n),this.addChild(i)}useBlock(r){return this.identifier&&r.has(this.identifier.name)}},_f=class extends Rc{constructor(r,n,i){super(r,i);this.expression=n;this.addChild(n),this.addChild(i)}useBlock(r){return this.expression?.isTrue(r)}},Sf=class extends Pc{useBlock(e){return this.identifier&&!e.has(this.identifier.name)}},wc=class extends Rc{};var rs=class extends Q{constructor(r,n,i){super();this.ifDef=r;this.endIf=n;this.elseOption=i;this.addChild(r),i&&this.addChild(i),this.addChild(n)}getInValidTokenRange(r,n){let i=[],s=a=>n.findIndex(c=>c===a);if(!this.ifDef.identifier)return[{start:s(this.firstToken),end:s(this.lastToken)}];i.push({start:s(this.ifDef.firstToken),end:s(this.ifDef.identifier.lastToken)});let o=this.ifDef.useBlock(r);return o?this.ifDef.active=!0:this.elseOption&&(this.elseOption.active=!0),!o&&this.ifDef.content&&i.push({start:s(this.ifDef.content.firstToken),end:s(this.ifDef.content.lastToken)}),this.elseOption&&(i.push({start:s(this.elseOption.firstToken),end:s(this.elseOption.keyword.lastToken)}),o&&this.elseOption.content&&i.push({start:s(this.elseOption.content.firstToken),end:s(this.elseOption.content.lastToken)})),this.endIf&&i.push({start:s(this.endIf.firstToken),end:s(this.endIf.lastToken)}),i}},ns=class extends Q{constructor(r,n,i){super();this.ifBlocks=r;this.endIf=n;this.elseOption=i;r.forEach(s=>this.addChild(s)),i&&this.addChild(i),this.addChild(n)}getInValidTokenRange(r,n){let i=[],s=a=>n.findIndex(c=>c===a),o=!1;return this.ifBlocks.forEach(a=>{i.push({start:s(a.firstToken),end:s(a.expression?.lastToken??a.keyword.lastToken)}),!o&&a.useBlock(r)?(a.active=!0,o=!0):a.content&&i.push({start:s(a.content.firstToken),end:s(a.content.lastToken)})}),this.elseOption&&(i.push({start:s(this.elseOption.keyword.firstToken),end:s(this.elseOption.keyword.lastToken)}),o&&this.elseOption.content?i.push({start:s(this.elseOption.content.firstToken),end:s(this.elseOption.content.lastToken)}):this.elseOption.active=!0),this.endIf&&i.push({start:s(this.endIf.firstToken),end:s(this.endIf.lastToken)}),i}};var Qo=class extends es{constructor(r,n,i,s,o){super();this.uri=r;this.incudes=n;this.getTokens=s;this.skipIncludes=o;this.tokens=[];this.nodes=[];this._comments=[];this.dtsIncludes=[];this.macroSnapShot=new Map;this.macros=new Map;this.macroStart=!1;i&&(Array.from(i).forEach(([a,c])=>this.macroSnapShot.set(a,c)),Array.from(i).forEach(([a,c])=>this.macros.set(a,c)))}get comments(){return this._comments}get currentToken(){let r=this.prevToken,n=On(r,this.tokens.at(this.peekIndex()))||!r||H(r,14)&&r.pos.line+1===this.tokens.at(this.peekIndex())?.pos.line;if(!(this.macroStart&&!n))return this.macroStart&&H(this.tokens.at(this.peekIndex()),14)?(this.moveStackIndex(),this.currentToken):this.tokens.at(this.peekIndex())}reset(r){super.reset(),this.macros.clear(),r?(this.macroSnapShot.clear(),Array.from(r).forEach(([n,i])=>this.macroSnapShot.set(n,i)),Array.from(r).forEach(([n,i])=>this.macros.set(n,i))):Array.from(this.macroSnapShot).forEach(([n,i])=>this.macros.set(n,i)),this.nodes=[],this.dtsIncludes=[]}async reparse(r){let n=this.stable;return this.parsing=new Promise(i=>{n.then(()=>{if(r&&r.size===this.macroSnapShot.size){let s=Array.from(r);if(Array.from(this.macroSnapShot).every(([o,a],c)=>{let[l,u]=s[c];return l===o&&u.macro.toString()===a.macro.toString()})){console.log("header file cache hit",this.uri),i();return}}this.reset(r),this.parse().then(i)})}),this.parsing}async parse(){let r=new vf(this.uri,this.getTokens);if(await r.stable,this.tokens=r.tokens,this._comments=r.allAstItems,this.positionStack.push(0),this.tokens.length!==0){for(;!this.done;)await this.lineProcessor();if(this.positionStack.length!==1)throw new Error("Incorrect final stack size")}}async lineProcessor(){if(this.enqueueToStack(),!(!this.prevToken||this.prevToken.pos.line!==this.currentToken?.pos.line||!le(this.prevToken.uri,this.currentToken.uri))){this.moveEndOfLine(this.prevToken,!1),this.mergeStack();return}let n=this.currentToken,i=await this.processInclude()||this.processDefinitions()||this.processUndef()||this.processError();this.processIfDefBlocks(),n&&this.moveEndOfLine(n,!!i),this.mergeStack()}processDefinitions(){this.enqueueToStack();let r=this.peekIndex(),n=this.moveToNextToken;if(!n||!H(n,25))return this.popStack(),!1;this.macroStart=!0;let i=new ut(oe(n)),s=this.isFunctionDefinition()||this.processCIdentifier(this.macros,!0);if(!s)return this._issues.push(W(30,i.firstToken,i.lastToken,i)),this.mergeStack(),this.macroStart=!1,!0;let o=this.consumeDefinitionContent(),a;o.length&&(a=new bf(oe(o[0],o.at(-1)),o));let c=new kc(i,s,a);this.macros.set(c.name,{macro:c,resolver:Nw(c.toString())}),this.nodes.push(c);let l=this.peekIndex();return this.tokens.splice(r,l-r),this.positionStack[this.positionStack.length-1]=r,this.mergeStack(),this.macroStart=!1,!0}processUndef(){this.enqueueToStack();let r=this.peekIndex(),n=this.moveToNextToken;if(!n||!H(n,28))return this.popStack(),!1;this.macroStart=!0;let i=new ut(oe(n)),s=this.processCIdentifier(this.macros,!0);if(!s)return this._issues.push(W(30,i.firstToken,i.lastToken,i)),this.mergeStack(),this.macroStart=!1,!0;let o=new kc(i,s);this.macros.delete(s.name),this.nodes.push(o);let a=this.peekIndex();return this.tokens.splice(r,a-r),this.positionStack[this.positionStack.length-1]=r,this.mergeStack(),this.macroStart=!1,!0}processError(){this.enqueueToStack();let r=this.peekIndex(),n=this.moveToNextToken;if(!n||!H(n,29))return this.popStack(),!1;this.moveEndOfLine(n,!1,!0);let i=this.peekIndex();return this.tokens.splice(r,i-r),this.positionStack[this.positionStack.length-1]=r,this.mergeStack(),!0}consumeDefinitionContent(){let r=[];for(;this.currentToken;){let n=this.moveToNextToken;n&&r.push(n)}return r}isFunctionDefinition(){this.enqueueToStack();let r=this.processCIdentifier(this.macros,!0);if(!r){this.popStack();return}let n=this.moveToNextToken;if(!H(n,42)||!qt(r.lastToken,n)){this.popStack();return}let i=[],s=this.processCIdentifier(this.macros,!0)||this.processVariadic();for(;s;)i.push(s),!H(this.currentToken,24)&&!H(this.currentToken,43)?this._issues.push(W(28,s.firstToken,s.lastToken,s)):H(this.currentToken,43)||(n=this.moveToNextToken),s=this.processCIdentifier(this.macros,!0)||this.processVariadic();let o=new ni(r,i);if(H(this.currentToken,43))n=this.moveToNextToken,o.lastToken=n;else{o.lastToken=this.prevToken;let a=i.at(-1)??o;this._issues.push(W(26,a.firstToken,a.lastToken,a))}return this.mergeStack(),o}processVariadic(){this.enqueueToStack();let r=this.checkConcurrentTokens([Oe(45),Oe(45),Oe(45)]);if(r.length!==3){this.popStack();return}let n=new Jo(oe(r[0],r.at(-1)));return this.mergeStack(),n}processIfDefBlocks(){let r=this.peekIndex(),n=this.parseScopedBlock(o=>!!o&&[33,34,32].some(a=>H(o,a))&&!On(o.prevToken,o),o=>!!o&&[37].some(a=>H(o,a))&&!On(o.prevToken,o),o=>!!o&&[36,35].some(a=>H(o,a))&&!On(o.prevToken,o));if(!n)return;let i;H(n.startToken,32)?i=this.processIfBlock(n,(o,a,c)=>new _f(o,a??null,c)):i=this.processIfDefBlock(n,(o,a,c)=>H(n.startToken,33)?new Pc(o,a??null,c):new Sf(o,a??null,c)),this.nodes.push(i),i.getInValidTokenRange(this.macros,this.tokens).reverse().forEach(o=>{this.tokens.splice(o.start,o.end-o.start+1)}),[...i instanceof ns?i.ifBlocks:[i.ifDef],...i.elseOption?[i.elseOption]:[]].forEach(o=>{!o.active&&o.content&&this._issues.push(W(47,o.content.firstToken,o.content.lastToken,o.content,{severity:Ec.DiagnosticSeverity.Hint,tags:[Ec.DiagnosticTag.Unnecessary]}))}),this.positionStack[this.positionStack.length-1]=r}processIfDefBlock(r,n){this.enqueueToStack(),this.macroStart=!0;let i=new ut(oe(r.startToken));r.splitTokens[0].rewind();let s=this.processCIdentifier(this.macros,!0);s||this._issues.push(W(31,i.firstToken,i.lastToken,i)),this.macroStart=!1;let o,a=s?.lastToken.nextToken??i.lastToken.nextToken;a&&r.splitTokens[0].tokens.find(f=>f===a)&&(o=new Gs(oe(a,r.splitTokens[0].tokens.at(-1))));let c=n(i,s??null,o??null),l;if(r.splitTokens.length>1){let f=r.splitTokens[1].tokens[0].prevToken,p=new ut(oe(f)),g;r.splitTokens[1].tokens.length&&(g=new Gs(oe(r.splitTokens[1].tokens[0],r.splitTokens[1].tokens.at(-1)))),l=new wc(p,g??null)}let u;r.endToken?u=new ut(oe(r.endToken)):this._issues.push(W(46,i.firstToken,i.lastToken,i));let d=new rs(c,u??null,l);return this.mergeStack(),d}processIfBlock(r,n){this.enqueueToStack();let i=new ut(oe(r.startToken)),s=[],o;r.splitTokens.forEach((l,u)=>{l.rewind();let d=this.prevToken,f=new ut(oe(d));this.macroStart=!0;let p=this.processExpression(this.macros,f,!0)||this.processCIdentifier(this.macros,!0);if(this.macroStart=!1,u===r.splitTokens.length-1&&H(d,36)){let h=d,T=new ut(oe(h)),S;l.tokens.length&&(S=new Gs(oe(l.tokens[0],l.tokens.at(-1)))),o=new wc(T,S??null)}else{p||this._issues.push(W(31,i.firstToken,i.lastToken,i));let h,T=p?.lastToken.nextToken??i.lastToken.nextToken;T&&l.tokens.find(_=>_===T)&&(h=new Gs(oe(T,r.splitTokens[u].tokens.at(-1))));let S=n(f,p??null,h??null);s.push(S)}});let a;r.endToken?a=new ut(oe(r.endToken)):this._issues.push(W(46,i.firstToken,i.lastToken,i));let c=new ns(s,a??null,o);return this.mergeStack(),c}get allAstItems(){return[...this.dtsIncludes,...this.nodes,...this.comments]}resolveInclude(r){if(r.path.path)return r.path.relative?[(0,Zo.resolve)((0,Zo.dirname)(r.uri),r.path.path),...this.incudes.map(n=>(0,Zo.resolve)(n,r.path.path))].find(n=>(0,Gy.existsSync)(n)):this.incudes.map(n=>(0,Zo.resolve)(n,r.path.path)).find(n=>(0,Gy.existsSync)(n))}async processInclude(){this.enqueueToStack();let r=this.peekIndex(),n=this.currentToken;if(!n)return this.popStack(),!1;let i=n,s=n;if(H(n,26))this.moveToNextToken;else{let h=this.checkConcurrentTokens([Oe(13),Qe("include"),Oe(13)]);if(h.length!==3)return this.popStack(),!1;i=h[0],s=h.at(-1)}let o=i,a=new ut(oe(i,s));n=this.moveToNextToken;let c=n,l=!!H(n,21);if(!c||!l&&!H(n,5))return o&&this.moveEndOfLine(o),this.mergeStack(),!0;let u="";if(l)u=n?.value??"";else for(;this.currentToken?.pos.line===o.pos.line&&!H(this.currentToken,4);)u+=this.currentToken?.value??"",n=this.moveToNextToken;let d=new Xo(u,l,oe(c,n)),f=new Pi(a,d);this.dtsIncludes.push(f),l||(this.currentToken?.pos.line!==o.pos.line||!H(this.currentToken,4)?this._issues.push(W(12,f.firstToken,f.lastToken,f)):(n=this.moveToNextToken,d.lastToken=n)),this.mergeStack();let p=this.peekIndex(),g=this.resolveInclude(f);if(f.resolvedPath=g,g||this._issues.push(W(36,f.path.firstToken,f.path.lastToken,f.path,{severity:Ec.DiagnosticSeverity.Warning})),g&&!this.skipIncludes){Mr().requestTokens(g,!0);let h=Sc().getCPreprocessorParser(g,this.incudes,this.macros,this.uri);await h.stable,this._issues.push(...h.issues),this.macros.clear(),Array.from(h.macros).forEach(([T,S])=>this.macros.set(T,S)),g.endsWith(".h")?this.tokens.splice(r,p-r):this.tokens.splice(r,p-r,...h.tokens),this.nodes.push(...h.nodes),this.dtsIncludes.push(...h.dtsIncludes)}else this.tokens.splice(r,p-r);return this.positionStack[this.positionStack.length-1]=r,!0}};var Kw=$(U());var Nf=class extends Q{constructor(r,n,i){super();this.keyword=r;this.startAddress=n;this.endAddress=i;this.addChild(r),this.docSymbolsMeta={name:"Memreserve",kind:Kw.SymbolKind.Function},this.addChild(n),this.addChild(i)}toString(){return`/memreserve/ 0x${this.startAddress?.value?.toString(16)} 0x${this.endAddress?.value?.toString(16)}`}};var Yw=$(U());var kf=class extends Q{constructor(r,n){super();this.keyword=r;this.bitsSize=n;this.addChild(r),this.docSymbolsMeta={name:"bits",kind:Yw.SymbolKind.Function},this.addChild(n)}toString(){return`/bits/ ${this.bitsSize?.value?.toString()}`}};var Ks=class extends es{constructor(r,n,i,s,o){super();this.uri=r;this.incudes=n;this.tokens=[];this.others=[];this.rootDocument=new lt;this.unhandledStatements=new Dt;this.cPreprocessorParser=new Qo(this.uri,this.incudes,i,s,o)}get issues(){return[...this._issues,...this.cPreprocessorParser.issues]}getFiles(){return[this.uri,...this.cPreprocessorParser.dtsIncludes.flatMap(r=>r.resolvedPath).filter(r=>!!r)]}reset(){super.reset(),this.others=[],this.rootDocument=new lt,this._issues=[],this.unhandledStatements=new Dt}async reparse(){let r=performance.now(),n=this.stable;return this.parsing=new Promise(i=>{n.then(async()=>{this.reset(),await this.cPreprocessorParser.reparse(),await this.parse(),console.log("parsing",performance.now()-r),i()})}),this.parsing}async parse(){if(await this.cPreprocessorParser.stable,this.tokens=this.cPreprocessorParser.tokens,rt(this.uri).endsWith(".h")||(this.positionStack.push(0),this.tokens.length===0))return;let r=async()=>{if(!(this.isDtsDocumentVersion()||this.isMemreserve()||this.isPlugin()||this.isRootNodeDefinition(this.rootDocument)||this.isDeleteNode(this.rootDocument,"Ref")||this.injectPreProcessorResults(this.cPreprocessorParser.macros)||this.isChildNode(this.rootDocument,"Ref")||this.isProperty(this.unhandledStatements)||this.isDeleteProperty(this.unhandledStatements)||this.isChildNode(this.unhandledStatements,"Name"))){let s=this.moveToNextToken;s&&(this._issues.push(W(22,s,s,null)),this.reportExtraEndStatements())}};for(;!this.done;)await r();this.unhandledStatements.properties.forEach(s=>{this._issues.push(W(32,s.firstToken,s.lastToken,s))}),this.unhandledStatements.deleteProperties.forEach(s=>{this._issues.push(W(33,s.firstToken,s.lastToken,s))});let n=this.allAstItems.flatMap(s=>[s,...s.allDescendants]),i=this.cPreprocessorParser.comments;if(i.length&&n.forEach(s=>{(s instanceof lt||s instanceof nt)&&Dw(s,i)}),this.positionStack.length!==1)throw new Error("Incorrect final stack size")}injectPreProcessorResults(r){let n=this.peekIndex(),i=this.isFunctionCall(r)||this.processCIdentifier(r,!0,!0),s=i?.resolve(r);if(i&&typeof s=="string"){s=jy(s);let o=`${i.uri}${uf}${i.firstToken.pos.line}:${i.firstToken.pos.col}-${i.lastToken.pos.line}:${i.firstToken.pos.col}`;if(i instanceof St&&s.includes(i.name)||i instanceof In&&s.includes(i.functionName.name))return!0;let a=new ts(s,o);return this.tokens.splice(n,this.peekIndex()-n,...a.tokens),this.positionStack[this.positionStack.length-1]=n,!0}}isRootNodeDefinition(r){this.enqueueToStack();let n=this.moveToNextToken,i=n,s=13;if(!n||!H(n,s))return this.popStack(),!1;if(i=this.moveToNextToken,s=2,!i||!H(i,s))return this.popStack(),!1;let o=new Dt;o.openScope=i,r.addNodeChild(o),this.processNode(o,"Name");let a=this.nodeEnd(o)??i;return o.firstToken=n,o.lastToken=a,this.mergeStack(),!0}nodeEnd(r){let n=this.currentToken;if(H(n,3))this.moveToNextToken;else{let i=this.prevToken;return i&&this._issues.push(W(3,i,i,r)),this.endStatement(r,!1)}return this.prevToken?.value==="}"&&(r.closeScope=this.prevToken),this.endStatement(r)}isNodeEnd(){return H(this.currentToken,3)||H(this.currentToken,1)}endStatement(r,n=!0){let i=this.currentToken;if(!H(i,1)){let s=this.prevToken;if(s&&n)return this._issues.push(W(1,s,s,r)),s}return this.moveToNextToken,this.reportExtraEndStatements(),i}reportExtraEndStatements(){for(;H(this.currentToken,1);){let r=this.moveToNextToken;r&&this._issues.push(W(23,r,r,null))}}processNode(r,n){if(this.done)return!1;let i=!1,s=!1;do{for(;this.injectPreProcessorResults(this.cPreprocessorParser.macros););if(s=this.isChildNode(r,n)||this.isProperty(r)||this.isDeleteNode(r,n)||this.isDeleteProperty(r),!s&&!this.isNodeEnd()&&!this.done){let o=this.moveToNextToken;o&&(this._issues.push(W(22,o,o,null)),this.reportExtraEndStatements())}else if(this.done)break;i=i||s}while(!this.isNodeEnd());return i}processOptionalLabelAssign(r=!1){let n=[],i=this.isLabelAssign(r);for(;i;)n.push(i),i=this.isLabelAssign(r);return n}isChildNode(r,n){this.enqueueToStack();let i;n==="Name"&&(i=this.isOmitIfNoRefNode());let s=this.processOptionalLabelAssign(),o,a,c=n==="Ref"?new lr(s):new Ge(s,i);if(n==="Ref"?(this.enqueueToStack(),a=this.processNodePathRef(c),!a||!H(this.currentToken,2)?(this.popStack(),a=void 0):this.mergeStack(),a??=this.isLabelRef(c)):n==="Name"&&(o=this.isNodeName()),!a&&!o){if(!H(this.currentToken,2))return this.popStack(),!1;c.firstToken=this.currentToken,this._issues.push(W(n==="Name"?[7]:[10,48,11],c.firstToken,this.currentToken?.nextToken,c))}let l=!1;if(a&&c instanceof lr?(c.reference=a,l=!0):o&&c instanceof Ge&&(l=o.address!==void 0,c.name=o),H(this.currentToken,2)){c.openScope=this.moveToNextToken;let u=!1;do u=this.processNode(c,"Name");while(u);let d=this.nodeEnd(c);c.lastToken=d}else if(l){let u=a??o;u&&this._issues.push(W(2,u.firstToken,u.lastToken,u))}else return this.popStack(),!1;return r.addNodeChild(c),this.mergeStack(),!0}processNodeAddress(r){let n=this.prevToken;this.enqueueToStack();let i=this.checkConcurrentTokens([Qe("0"),Qe("x",{caseInsensitive:!0})]);i.length!==2?(i=[],this.popStack()):(this._issues.push(W(50,i[0],i[1],r,{severity:Rf.DiagnosticSeverity.Warning})),n=i.at(-1),this.mergeStack());let s=this.consumeAnyConcurrentTokens([19,20,48].map(Oe)),o=l=>{l.length%8!==0&&(l=l.padStart(Math.ceil(l.length/8)*8,"0"));let u=[];for(let d=0;d<l.length;d+=8){let f=l.slice(d,d+8);u.push(parseInt(f,16)>>>0)}return u},a=s.length?o(s.filter(l=>l.value!=="_").map(l=>l.value).join("")):[NaN];return n&&(a.some(l=>Number.isNaN(l))?this._issues.push(W(8,n,n,r)):!Number.isNaN(a)&&!qt(n,s[0])&&this._issues.push(W(29,n,s[0],r,{inclusiveStart:!1,inclusiveEnd:!1}))),this.currentToken?.value.toUpperCase()==="ULL"&&(this._issues.push(W(51,this.currentToken,this.currentToken,r,{severity:Rf.DiagnosticSeverity.Warning})),this.moveToNextToken),new _c(a,oe(i.at(0)??s[0]??this.prevToken,this.prevToken))}processNodeAddresses(r){this.enqueueToStack();let n=this.checkConcurrentTokens([Oe(49)]);if(n.length){qt(r.lastToken,n[0])||this._issues.push(W(29,r.lastToken,n[0],r,{inclusiveStart:!1,inclusiveEnd:!1}));let i=[],s=()=>{i.push(this.processNodeAddress(r)),H(this.currentToken,24)&&(this.prevToken&&!qt(this.prevToken,this.currentToken)&&this._issues.push(W(29,this.prevToken,this.currentToken,r,{inclusiveStart:!1,inclusiveEnd:!1})),this.moveToNextToken,s())};s();let o=this.currentToken;for(;!H(this.currentToken,2)&&!H(this.currentToken,1)&&!H(this.currentToken,3)&&On(this.currentToken,i.at(-1)?.lastToken);)this.moveToNextToken;if(o&&o!==this.currentToken){this._issues.push(W(52,o,this.currentToken,r));let a=new _c([],oe(o,this.prevToken));i.push(a)}return this.mergeStack(),i}this.popStack()}isNodeName(){this.enqueueToStack();let r=this.consumeAnyConcurrentTokens([19,47,24,45,48,15,16].map(Oe));if(!r.length){this.popStack();return}let n=r.map(o=>o.value).join(""),i=new Me(n,oe(r[0],r.at(-1))),s=this.processNodeAddresses(i);return i.address=s,ff(n)||this._issues.push(W(49,i.firstToken,i.lastToken,i)),this.mergeStack(),i}isPropertyName(){this.enqueueToStack();let r=this.consumeAnyConcurrentTokens([19,47,24,45,48,15,16,44,46].map(Oe));if(!r.length){this.popStack();return}let n=new Ze(r.map(i=>i.value).join(""),oe(r[0],r.at(-1)));return this.mergeStack(),n}isLabelName(){this.enqueueToStack();let r=this.consumeAnyConcurrentTokens([19,47,48].map(Oe));if(!r.length){this.popStack();return}if(!ff(r?.[0].value)){this.popStack();return}let n=r.map(s=>s.value).join(""),i=new Qt(n,oe(r[0],r[r.length-1]));return this.mergeStack(),i}isLabelAssign(r){this.enqueueToStack();let n=this.consumeAnyConcurrentTokens([19,47,48].map(Oe));if(!n.length){this.popStack();return}if(!ff(n?.[0].value)){this.popStack();return}let i=n.map(c=>c.value).join(""),s=this.currentToken,o=s&&H(s,50),a=new Zi(new Qt(i,oe(n[0],n.at(-1))),oe(n[0],o?s:n.at(-1)));if(o){let c=n.at(-1);c&&(s.pos.line!==a.firstToken.pos.line||s.pos.col!==c.pos.colEnd)&&this._issues.push(W(29,c,s,a,{inclusiveStart:!1,inclusiveEnd:!1})),this.moveToNextToken}else if(r)this._issues.push(W(24,a.firstToken,a.lastToken,a));else{this.popStack();return}return this.mergeStack(),a}isProperty(r){this.enqueueToStack();let n=this.processOptionalLabelAssign(),i=this.isPropertyName();if(!i)return this.popStack(),!1;if(H(this.currentToken,2)||H(this.currentToken,49))return this.popStack(),!1;let s=new nt(i,n),o;H(this.currentToken,0)?(s.assignOperatorToken=this.moveToNextToken,o=this.processValue(r),o?.values.filter(c=>!!c).length||this._issues.push(W(0,s.firstToken,s.lastToken,s)),s.values=o??null):s.values=void 0;let a=this.endStatement(s);return s.lastToken=a,r.addNodeChild(s),this.mergeStack(),!0}isDtsDocumentVersion(){this.enqueueToStack();let r=this.checkConcurrentTokens([Oe(13),Qe("d"),Qe("ts"),Oe(16),Qe("v"),Qe("1")]);if(r.length!==6)return this.popStack(),!1;let n=r[0],i=n,s=new ut;s.firstToken=n;let o=new mf(s);if(this.others.push(o),H(this.currentToken,13))i=this.moveToNextToken;else return s.lastToken=r.at(-1),this._issues.push(W(21,o.firstToken,o.lastToken,o)),this.mergeStack(),!0;return s.lastToken=i,o.lastToken=this.endStatement(o),this.mergeStack(),!0}isMemreserve(){this.enqueueToStack();let r=this.checkConcurrentTokens([Oe(13),Qe("memreserve")]);if(r.length!==2)return this.popStack(),!1;let n=new ut;n.firstToken=r[0];let s=r[0];H(this.currentToken,13)?(s=this.moveToNextToken,n.lastToken=s):(n.lastToken=r.at(-1),this._issues.push(W(21,n.firstToken,n.lastToken,n)));let o=this.processHex()||this.processDec(),a=o&&(this.processHex()||this.processDec()),c=new Nf(n,o,a);if(this.others.push(c),o||this._issues.push(W(37,n.firstToken,n.lastToken,n)),!a){let l=o??n;this._issues.push(W(38,l.firstToken,l.lastToken,c))}return c.lastToken=this.endStatement(c),this.mergeStack(),!0}isPlugin(){this.enqueueToStack();let r=this.checkConcurrentTokens([Oe(13),Qe("plugin"),Oe(13)]);if(r.length!==3)return this.popStack(),!1;let n=new ut(oe(r[0],r.at(-1)));return n.lastToken=this.endStatement(n),this.mergeStack(),this.others.push(n),!0}processBits(){this.enqueueToStack();let r=this.checkConcurrentTokens([Oe(13),Qe("b"),Qe("its")]);if(r.length!==3){this.popStack();return}let n=new ut;n.firstToken=r[0];let s=r[0];H(this.currentToken,13)?(s=this.moveToNextToken,n.lastToken=s):(n.lastToken=r.at(-1),this._issues.push(W(21,n.firstToken,n.lastToken,n)));let o=this.processDec(),a=new kf(n,o);return this.others.push(a),o?o.value!==8&&o.value!==16&&o.value!==32&&o.value!==64&&this._issues.push(W(40,o.firstToken,o.lastToken,o)):this._issues.push(W(39,n.firstToken,n.lastToken,n)),this._issues.push(W(41,a.firstToken,a.lastToken,a,{severity:Rf.DiagnosticSeverity.Warning})),this.mergeStack(),a}isOmitIfNoRefNode(){this.enqueueToStack();let r=this.checkConcurrentTokens([Oe(13),Qe("omit"),Oe(16),Qe("if"),Oe(16),Qe("no"),Oe(16),Qe("ref"),Oe(13)]);if(r.length!==9){this.popStack();return}let n=new ut(oe(r[0],r.at(-1)));return this.mergeStack(),n}isDeleteNode(r,n){this.enqueueToStack();let i=this.checkConcurrentTokens([Oe(13),Qe("d"),Qe("e"),Qe("lete",{allowPartial:!0}),Oe(16),Qe("node",{allowPartial:!0})]);if(!i.length)return this.popStack(),!1;let s=i[0],o=s,a=new ut;if(a.firstToken=s,i.length===1&&!H(this.currentToken,2)){this._issues.push(W(25,a.firstToken,a.lastToken,a)),a.lastToken=i.at(-1);let d=new Or(a);return r.addNodeChild(d),this.mergeStack(),!0}let c=i.map(d=>d.value??"").join("");if(!"/delete-node/".startsWith(c)||c.endsWith("-"))return this.popStack(),!1;a.lastToken=i.at(-1),c!=="/delete-node"?this._issues.push(W(c.startsWith("/delete-n")?34:25,a.firstToken,a.lastToken,a)):H(this.currentToken,13)?(o=this.moveToNextToken,a.lastToken=o):this._issues.push(W(21,a.firstToken,a.lastToken,a));let l=new Or(a);if(On(a.lastToken,s)){let d=this.processNodePathRef(r);d&&n==="Name"&&this._issues.push(W(7,d.firstToken,d.lastToken,d));let f=d?void 0:this.isLabelRef(r);f&&n==="Name"&&this._issues.push(W(7,f.firstToken,f.lastToken,f));let p=d||f?void 0:this.isNodeName();p&&n==="Ref"&&this._issues.push(W(10,p.firstToken,p.lastToken,p)),!d&&!p&&!f&&this._issues.push(W([7,10],l.firstToken,l.lastToken,l)),l.nodeNameOrRef=d??f??p??null}else n==="Name"?this._issues.push(W(7,a.firstToken,a.lastToken,a)):n==="Ref"&&this._issues.push(W(10,a.firstToken,a.lastToken,a));let u=this.endStatement(l);return l.lastToken=u,r.addNodeChild(l),this.mergeStack(),!0}isDeleteProperty(r){this.enqueueToStack();let n=this.checkConcurrentTokens([Oe(13),Qe("d"),Qe("e"),Qe("lete",{allowPartial:!0}),Oe(16),Qe("property",{allowPartial:!0})]);if(!n.length)return this.popStack(),!1;let i=n[0],s=i,o=new ut;if(o.firstToken=i,n.length===1&&!H(this.currentToken,2)){this._issues.push(W(25,o.firstToken,o.lastToken,o)),o.lastToken=n.at(-1);let u=new ht(o);return r.addNodeChild(u),this.mergeStack(),!0}let a=n.map(u=>u.value??"").join("");if(!"/delete-property/".startsWith(a)||a.endsWith("-"))return this.popStack(),!1;o.lastToken=n.at(-1),a!=="/delete-property"?this._issues.push(W(a.startsWith("/delete-p")?35:25,o.firstToken,o.lastToken,o)):H(this.currentToken,13)?(s=this.moveToNextToken,o.lastToken=s):this._issues.push(W(21,o.firstToken,o.lastToken,o));let c=new ht(o);if(On(o.lastToken,i)){let u=this.isPropertyName();u||this._issues.push(W(6,c.firstToken,c.lastToken,c)),c.propertyName=u??null}else this._issues.push(W(6,o.firstToken,o.lastToken,o));let l=this.endStatement(c);return c.lastToken=l,r.addNodeChild(c),this.mergeStack(),!0}isNodePathRef(r){this.enqueueToStack();let n=this.processOptionalLabelAssign(!0),i=this.processNodePathRef(r);if(!i){this.popStack();return}let s=[];this.currentToken&&this.currentToken.pos.line===this.currentToken.prevToken?.pos.line&&s.push(...this.processOptionalLabelAssign(!0));let o=new br(n,i,s);return this.mergeStack(),o}processValue(r){this.enqueueToStack();let i=(()=>{let o=()=>(this.processStringValue()||this.isNodePathRef(r)||this.isLabelRefValue(r)||this.arrayValues(r)||this.processByteStringValue()||this.isExpressionValue(r))??null,a=o();if(!a)return[];let c=[a];for(;!H(this.currentToken,1);){let l=this.prevToken,u=this.currentToken,d,f=H(this.currentToken,24);if(f)d=this.currentToken,this.moveToNextToken;else if(!On(this.prevToken,this.currentToken))break;let p=o();if(u&&p===null&&f){let h=new Q(oe(u,this.currentToken));this._issues.push(W(0,h.firstToken,h.lastToken,h))}if(!f&&p===null)break;if(l&&!f&&p){let h=new Q(oe(l));this._issues.push(W(28,h.firstToken,h.lastToken,h))}let g=c.at(-1);g&&(g.nextValueSeparator??=d),c.push(p)}return c})();if(i.length===0){this.popStack();return}return this.mergeStack(),new hf(i)}processStringValue(){this.enqueueToStack();let r=this.processOptionalLabelAssign(!0),n=this.consumeAnyConcurrentTokens([Oe(21)]);if(!n.length){this.popStack();return}if(n.some(u=>u.value===void 0))throw new Error("Token must have value");let i=n.map(u=>u.value).join(`
189
- `),s=i,o=['"',"'"].some(u=>s.endsWith(u));o&&(s=s.slice(1,-1));let a=new ne(s,oe(n[0],n.at(-1)));o||this._issues.push(W(i.startsWith('"')?16:17,a.firstToken,a.lastToken,a));let c=[];this.currentToken&&this.currentToken.pos.line===this.currentToken.prevToken?.pos.line&&(c=this.processOptionalLabelAssign(!0));let l=new br(r,a,c);return this.mergeStack(),l}arrayValues(r){this.enqueueToStack();let n=this.processOptionalLabelAssign(!0),i=this.processBits(),s=this.currentToken;if(H(s,5))this.moveToNextToken;else{this.popStack();return}let o=this.processArrayValues(r)??null;o.openBracket=s;let a=this.processOptionalLabelAssign(!0)??[],c=new br(n,o,a,i);if(!H(this.currentToken,4))this._issues.push(W(12,c.firstToken,c.lastToken,c));else{let u=this.moveToNextToken;o&&(o.closeBracket=u)}let l=[];return this.currentToken&&this.currentToken.pos.line===this.currentToken.prevToken?.pos.line&&(l=this.processOptionalLabelAssign(!0)),this.mergeStack(),c.endLabels.push(...l),c.firstToken=s,c.lastToken=this.prevToken,c}processByteStringValue(){this.enqueueToStack();let r=this.processOptionalLabelAssign(!0),n=this.moveToNextToken,i=n;if(!H(i,11)){this.popStack();return}let s=this.processLabeledValue(()=>this.processHexString()),o=this.processOptionalLabelAssign(!0)??[];s.forEach(u=>{let d=0;u.value&&u.value.firstToken===u.value.lastToken&&(d=u.value.firstToken.pos.len),d%2!==0&&this._issues.push(W(15,u.firstToken,u.lastToken,u))});let a=new Ri(s??[]);a.openBracket=i,a.values.length===0&&(a.firstToken=n,this._issues.push(W(14,a.firstToken,a.lastToken,a)));let c=new br(r,a,o);H(this.currentToken,12)?a.closeBracket=this.moveToNextToken:this._issues.push(W(5,c.firstToken,c.lastToken,c));let l=[];return this.currentToken&&this.currentToken.pos.line===this.currentToken.prevToken?.pos.line&&(l=this.processOptionalLabelAssign(!0)),this.mergeStack(),c.endLabels.push(...l),c.firstToken=n,a.lastToken=this.prevToken,c}processLabeledValue(r){this.enqueueToStack();let n=r(),i=[];if(!n)return this.popStack(),[];for(;n;)i.push(n),n=r();if(i.length){let s=r();s&&i.push(s)}return this.mergeStack(),i}processArrayValues(r){this.enqueueToStack();let n=this.processLabeledValue(()=>this.processRefValue(r,!1)||this.processLabeledHex(!1)||this.processLabeledDec(!1)||this.processLabeledExpression(!0,!1,r)),i=new jt(n);return n.length===0&&(i.firstToken=this.currentToken),this.mergeStack(),i}processLabeledHex(r){this.enqueueToStack();let n=this.processOptionalLabelAssign(r),i=this.processHex();if(!i){this.popStack();return}let s=new ri(i,n);return this.mergeStack(),s}processHexString(){this.enqueueToStack();let r=this.processOptionalLabelAssign(!1),n=this.checkConcurrentTokens([20,20].map(Oe));if(!n.length){this.popStack();return}let i=Number.parseInt(n.map(a=>a.value).join(""),16),s=new cr(i,oe(n[0],n.at(-1)),16),o=new ri(s,r);return this.mergeStack(),o}processLabeledDec(r){this.enqueueToStack();let n=this.processOptionalLabelAssign(r),i=this.processDec();if(!i){this.popStack();return}let s=new ri(i,n);return this.mergeStack(),s}processLabeledExpression(r=!0,n=r,i){this.enqueueToStack();let s=[];r&&(s=this.processOptionalLabelAssign(n));let o=this.processExpression(this.cPreprocessorParser.macros,i);if(!o){this.popStack();return}let a=new ri(o,s);return this.mergeStack(),a}isExpressionValue(r){this.enqueueToStack();let n=this.processOptionalLabelAssign(!1),i=this.processExpression(this.cPreprocessorParser.macros,r);if(!i){this.popStack();return}let s=this.processOptionalLabelAssign(!0),o=new br(n,i,s);return this.mergeStack(),o}isLabelRef(r){this.enqueueToStack();let n=this.currentToken;if(!n||!H(n,40)){this.popStack();return}else this.moveToNextToken;let i=this.isLabelName();if(!i){let o=new ie(null);return this._issues.push(W(18,n,n,r)),o.firstToken=n,this.mergeStack(),o}n&&(i.firstToken.pos.line!==n.pos.line||i.firstToken.pos.col!==n.pos.colEnd)&&this._issues.push(W(29,n,i.firstToken,r,{inclusiveStart:!1,inclusiveEnd:!1}));let s=new ie(i);return s.firstToken=n,this.mergeStack(),s}isLabelRefValue(r){this.enqueueToStack();let n=this.processOptionalLabelAssign(!0),i=this.isLabelRef(r);if(!i){this.popStack();return}let s=[];this.currentToken&&this.currentToken.pos.line===this.currentToken.prevToken?.pos.line&&(s=this.processOptionalLabelAssign(!0));let o=new br(n,i,s);return this.mergeStack(),o}processRefValue(r,n){this.enqueueToStack();let i=this.processOptionalLabelAssign(n),s=this.currentToken;if(!s||!H(s,40)){this.popStack();return}let o=this.processNodePathRef(r);if(o!==void 0){let l=new ri(o,i);return this.mergeStack(),l}let a=this.isLabelRef(r);if(a===void 0){this._issues.push(W([18,9],s,s,r));let l=new ri(null,i);return l.firstToken=i.at(0)?.firstToken??s,this.mergeStack(),l}let c=new ri(a,i);return c.firstToken=i.at(0)?.firstToken??s,this.mergeStack(),c}processNodePath(r=!0,n=new xn){this.enqueueToStack();let i;if(H(this.currentToken,13))i=this.moveToNextToken;else{if(!r){this.popStack();return}this.prevToken&&this._issues.push(W(19,this.prevToken,this.prevToken,n))}let s=this.isNodeName(),o=i??this.prevToken;if(!s&&o&&!r&&this._issues.push(W(7,o,o,n)),!r||s?n.addPath(s??null,i?new Q(oe(i)):void 0):r&&!s&&i&&(n.addPath(new Me("/",oe(i))),n.firstToken=i),r&&!i&&n.children.length===0){this.mergeStack();return}return this.processNodePath(!1,n),this.mergeStack(),n}processNodePathRef(r){this.enqueueToStack();let n=this.moveToNextToken,i=n;if(!H(i,40)){this.popStack();return}let s=this.moveToNextToken;if(i=s,!H(i,2)){this.popStack();return}n&&!qt(n,s)&&this._issues.push(W(29,n,s,r,{inclusiveStart:!1,inclusiveEnd:!1}));let o=this.processNodePath(),a=new it(o??null),c=this.currentToken??this.prevToken,l=c;return o?.children.forEach((u,d)=>{if(d===o?.children.length-1&&u&&l&&!qt(u.lastToken,l)){this._issues.push(W(29,u.lastToken,l,r,{inclusiveStart:!1,inclusiveEnd:!1}));return}if(d===0&&s&&!qt(s,u?.firstToken)){this._issues.push(W(29,s,u?.firstToken,r,{inclusiveStart:!1,inclusiveEnd:!1}));return}let f=o?.children[d+1];u&&f&&!qt(u.lastToken,f.firstToken)&&this._issues.push(W(29,u.lastToken,f?.firstToken,r,{inclusiveStart:!1,inclusiveEnd:!1}))}),H(c,3)?this.moveToNextToken:this.prevToken&&this._issues.push(W(3,this.prevToken,this.prevToken,r)),a.firstToken=n,a.lastToken=c??this.prevToken,this.mergeStack(),a}get includes(){return this.allAstItems.filter(r=>r instanceof Pi)}get allAstItems(){return[...this.cPreprocessorParser.allAstItems,...this.rootDocument.children,...this.others,...this.unhandledStatements.properties,...this.unhandledStatements.deleteProperties,...this.unhandledStatements.nodes]}};var lU=async(t,e,r)=>{let n=Z.Position.create(t.pos.line,t.pos.col),i=r.find(s=>an(s,e,n));if(i)return ti(i,e,n)},Ky=t=>{if(t)return t instanceof lt?t:Ky(t?.parentNode)},ea=(t,e,r=0)=>{if(!e||!le(e.uri,t)||!e.parentNode?.uri)return r;let n=Ky(e.parentNode);return ea(t,n,r+1)},uU=(t,e)=>async r=>{let n=t.filter(a=>!(a instanceof Pi)&&!(a instanceof un)&&!(a instanceof ln)&&!(a instanceof rs)),i=await lU(r.firstToken,e,n);if(!i||i===r||r.allDescendants.some(a=>a===i))return{level:0};let s=Ky(i);return{level:ea(e,s),inAst:i}};async function Yy(t,e,r){let n=Se(t.textDocument.uri),i=new Ks(n,[],void 0,()=>new ts(e,n).tokens,!0);await i.stable;let s=i.issues.filter(o=>Ko(o.raw,n,!1));if(s?.length)throw new Z.ResponseError(Z.ErrorCodes.InternalError,"Unable to format. File has syntax issues.",s.map(o=>o.diagnostic()));return Qw(t,i.allAstItems,n,e,r)}async function Qw(t,e,r,n,i){let s=n.split(`
187
+ `){let o=this.lineNumber,a=this.columnNumber,c=r.length;this.pushToken({tokens:[21],value:r,pos:{col:a-c,line:o,len:c,colEnd:a}}),r=""}else if(this.currentChar==="\\"){let o=this.lineNumber;if(r+=this.currentChar??"",this.move())o===this.lineNumber&&(r+=this.currentChar??"");else break}else r+=this.currentChar??"";if(!this.move())break}r+=e;let n=this.lineNumber,i=this.columnNumber+1,s=r.length;this.pushToken({tokens:[21],value:r,pos:{col:i-s,line:n,len:s,colEnd:i}}),this.move()}lexIt(){for(;!this.endOfFile;){for(;this.isWhiteSpace();)this.move();let e=this.getWord();e&&this.process(e)}}static{this.SINGLE_CHAR_TOKENS=new Map([["{",[2]],["}",[3]],["(",[42]],[")",[43]],["[",[11]],["]",[12]],[";",[1]],[":",[50]],["=",[0]],[">",[4]],["<",[5]],["!",[6]],["|",[8]],["^",[9]],["&",[40,7]],["~",[10]],["/",[13]],["\\",[14]],["+",[15]],["-",[16]],["*",[17]],["%",[18]],["?",[44]],[".",[45]],["_",[48]],["@",[49]],[",",[24]]])}static{this.KEYWORD_TOKENS=new Map([["true",38],["false",39],["#define",25],["#include",26],["#line",27],["#undef",28],["#error",29],["#pragma",30],["#defined",31],["#if",32],["#ifdef",33],["#ifndef",34],["#elif",35],["#else",36],["#endif",37]])}process(e){let r=this.isString(e);if(!r){let i=t.KEYWORD_TOKENS.get(e.toLowerCase());if(i&&(r=!0,this.pushToken({tokens:[i],value:e.toLowerCase(),pos:this.generatePos(e,e.toLowerCase())}),i===39||i===38)){let s=this.tokens.length-1;if(qt(this.tokens[s-1],this.tokens[s]))r=!1,this.tokens.pop();else return!0}}if(r||(r=this.isDigit(e)||this.isHexDigit(e)||this.isLetters(e)),!r&&e.length===1){let i=t.SINGLE_CHAR_TOKENS.get(e);if(i)return r=!0,this.pushToken({tokens:i,value:e,pos:this.generatePos(e,e)}),!0}if(r||(r=this.isHash(e)||this.unknownToken(e)),!r)throw new Error(`Lexer is not complete!!! Could not find token for "${e}"`);let n=this._tokens[this._tokens.length-1];return r&&!n?.tokens.some(i=>i===21)&&n&&n.pos.len<e.length?this.process(e.slice(n.pos.len)):!0}pushToken(e){let r={tokens:e.tokens,pos:e.pos,value:e.value,uri:this.uri},n=this._tokens[this._tokens.length-1];r.prevToken=n,n&&(n.nextToken=r),this._tokens.push(r)}isLetters(e){let r=e[0]?.charCodeAt(0);if(t.isLetterCode(r)){let n="";for(let i=0;i<e.length;i++){let s=e.charCodeAt(i);if(t.isLetterCode(s))n+=e[i];else break}return this.pushToken({tokens:[47],value:n,pos:this.generatePos(e,n)}),!0}return!1}isDigit(e){let r=e[0],n=r?.charCodeAt(0);return n>=48&&n<=57?(this.pushToken({tokens:[20,19],value:r,pos:this.generatePos(e,r)}),!0):!1}isHexDigit(e){let r=e[0],n=r?.charCodeAt(0);return n>=65&&n<=70||n>=97&&n<=102?(this.pushToken({tokens:[20,47],value:r,pos:this.generatePos(e,r)}),!0):!1}isHash(e){let r="#";return e.startsWith(r)?(this.pushToken({tokens:[46],pos:this.generatePos(e,r),value:r}),!0):!1}unknownToken(e){return this.pushToken({tokens:[41],pos:this.generatePos(e," "),value:e}),!0}isString(e){if(this.inComment)return!1;let r=e[0];if(r==='"'||r==="'"){let n=e.length-1;if(this.columnNumber+1<n)throw new Error("Error while rewinding");return this.columnNumber-=n,this.getString(r),!0}return!1}generatePos(e,r){let n=this.columnNumber-e.length,i=r.length;return{line:this.lineNumber,col:n,len:i,colEnd:n+i}}};var zy,yf=class{constructor(){this.headerFiles=new Map;this.includeOwners=new WeakMap}getCPreprocessorParser(e,r,n,i){e=rt(e);let s=`${Array.from(n).map(l=>l[1].macro.toString()).join("::")}`,o=this.headerFiles.get(e)?.get(s);if(o)return o.reparse(n),o;console.log("No cpreprocess cache",e);let a=new Qo(e,r,n),c=this.includeOwners.get(a)??new Set;return c.add(i),this.includeOwners.set(a,c),this.headerFiles.has(e)||this.headerFiles.set(e,new Map),this.headerFiles.get(e)?.set(s,a),a}reset(e){e=rt(e);let r=this.headerFiles.get(e);r&&Array.from(r).forEach(n=>{n[1]&&(console.log("disposing cpreprocessor cache for",e),Array.from(this.includeOwners.get(n[1])??[]).forEach(this.reset.bind(this)),this.headerFiles.delete(e))})}};function Sc(){return zy??=new yf,zy}function zw(){zy=new yf}var Wy,Tf=class t{constructor(){this.fileMap=new Map}static clone(e){let r=e.length;if(r===0)return[];let n=new Array(r),i;for(let s=0;s<r;s++){let o=e[s],a={tokens:o.tokens,pos:o.pos,value:o.value,uri:o.uri,prevToken:i,nextToken:void 0};i&&(i.nextToken=a),n[s]=a,i=a}return n}needsRenew(e,r){return e=rt(e),this.fileMap.get(e)?.text!==r}getDocument(e,r){return Qn.create(e,"devicetree",0,r??this.fileMap.get(e)?.text??(0,Nc.readFileSync)(e).toString())}renewLexer(e,r){if(e=rt(e),Sc().reset(e),!r&&!(0,Nc.existsSync)(e))return[];try{r??=(0,Nc.readFileSync)(e).toString();let n=new ts(r,e);return this.fileMap.set(e,n),t.clone(n.tokens)}catch{}return[]}requestTokens(e,r){e=rt(e);let n=this.fileMap.get(e)?.tokens;return!n&&r?[...this.renewLexer(e)]:t.clone(n??[])}reset(e){e=rt(e),Sc().reset(e),this.fileMap.delete(e)}};function xr(){return Wy??=new Tf,Wy}function Ww(){Wy=new Tf}var vf=class t extends es{constructor(r,n=()=>xr().requestTokens(this.uri,!0)){super();this.uri=r;this.getTokens=n;this.comments=[];this.tokens=[]}cleanUpComments(){let r=[];for(let n=0;n<this.tokens.length;n++){let i=t.processBlockComment(this.tokens,n)||t.processLineComment(this.tokens,n);i&&(n=i.index,r.push(...i.tokenUsed),this.comments.push(i.comment))}if(r.length>0){let n=new Set(r),i=[];for(let s=0;s<this.tokens.length;s++)n.has(s)||i.push(this.tokens[s]);this.tokens=i}}get allAstItems(){return this.comments}reset(){super.reset(),this.comments=[]}reparse(){return this.reset(),this.parse()}async parse(){this.tokens=this.getTokens(),this.cleanUpComments()}static processBlockComment(r,n){let i=[],s=()=>(i.push(n++),r[n]),o=()=>r[n],a=()=>r[n-1],c=o(),l=c;if(!c||!H(c,13)||(l=s(),!H(l,17)||c.pos.line!==l.pos.line||c.pos.col+1!==l.pos.col))return;let u=()=>!(!H(a(),17)||!H(o(),13)||!qt(a(),o())),d=l.pos.line,f=c,p=[];l=s();do{if(o()?.pos.line!==d){let T=new un(oe(f,a()));p.push(T),d=o().pos.line??0,f=o()}l=s()}while(n<r.length&&!u());let g=new un(oe(f,o()));p.push(g);let h=new ln(p);return s(),{comment:h,tokenUsed:i,index:n-1}}static processLineComment(r,n){let i=[];if(!H(r[n],13)||r.length===n+1||!H(r[n+1],13)||!qt(r[n],r[n+1]))return;for(;r[n].pos.line===r.at(n+1)?.pos.line;)i.push(n++);return i.push(n++),{comment:new un(oe(r[i[0]],r[i.at(-1)])),tokenUsed:i,index:n-1}}};var Gw=$(U());var bf=class extends Q{constructor(r,n){super(r);this.content=n}toString(){let r=this.content.filter(n=>!H(n,14));return r.map((n,i)=>{let s=n.value;return n.pos.line===r.at(i+1)?.pos.line?s=s.padEnd(r[i+1].pos.col-n.pos.col," "):r.at(i+1)&&(s=s.padEnd(s.length+1," ")),s}).join("")}},kc=class extends Q{constructor(r,n,i){super();this.keyword=r;this.identifier=n;this.content=i;this.addChild(r),this.addChild(this.identifier),this.content&&this.addChild(this.content)}get name(){return this.identifier instanceof St?this.identifier.name:this.identifier.functionName.name}toString(){return this.toStringCache??=[this.identifier.toString(),...this.content?[this.content?.toString()]:[]].join(" "),this.toStringCache}toMarkupContent(){return{kind:Gw.MarkupKind.Markdown,value:["```cpp",`#define ${this.toString()}`,"```"].join(`
188
+ `)}}};var Gs=class extends Q{constructor(e){super(e)}},Rc=class extends Q{constructor(r,n){super();this.keyword=r;this.content=n;this.active=!1;this.addChild(r)}},Pc=class extends Rc{constructor(r,n,i){super(r,i);this.identifier=n;this.addChild(n),this.addChild(i)}useBlock(r){return this.identifier&&r.has(this.identifier.name)}},_f=class extends Rc{constructor(r,n,i){super(r,i);this.expression=n;this.addChild(n),this.addChild(i)}useBlock(r){return this.expression?.isTrue(r)}},Sf=class extends Pc{useBlock(e){return this.identifier&&!e.has(this.identifier.name)}},wc=class extends Rc{};var rs=class extends Q{constructor(r,n,i){super();this.ifDef=r;this.endIf=n;this.elseOption=i;this.addChild(r),i&&this.addChild(i),this.addChild(n)}getInValidTokenRange(r,n){let i=[],s=a=>n.findIndex(c=>c===a);if(!this.ifDef.identifier)return[{start:s(this.firstToken),end:s(this.lastToken)}];i.push({start:s(this.ifDef.firstToken),end:s(this.ifDef.identifier.lastToken)});let o=this.ifDef.useBlock(r);return o?this.ifDef.active=!0:this.elseOption&&(this.elseOption.active=!0),!o&&this.ifDef.content&&i.push({start:s(this.ifDef.content.firstToken),end:s(this.ifDef.content.lastToken)}),this.elseOption&&(i.push({start:s(this.elseOption.firstToken),end:s(this.elseOption.keyword.lastToken)}),o&&this.elseOption.content&&i.push({start:s(this.elseOption.content.firstToken),end:s(this.elseOption.content.lastToken)})),this.endIf&&i.push({start:s(this.endIf.firstToken),end:s(this.endIf.lastToken)}),i}},ns=class extends Q{constructor(r,n,i){super();this.ifBlocks=r;this.endIf=n;this.elseOption=i;r.forEach(s=>this.addChild(s)),i&&this.addChild(i),this.addChild(n)}getInValidTokenRange(r,n){let i=[],s=a=>n.findIndex(c=>c===a),o=!1;return this.ifBlocks.forEach(a=>{i.push({start:s(a.firstToken),end:s(a.expression?.lastToken??a.keyword.lastToken)}),!o&&a.useBlock(r)?(a.active=!0,o=!0):a.content&&i.push({start:s(a.content.firstToken),end:s(a.content.lastToken)})}),this.elseOption&&(i.push({start:s(this.elseOption.keyword.firstToken),end:s(this.elseOption.keyword.lastToken)}),o&&this.elseOption.content?i.push({start:s(this.elseOption.content.firstToken),end:s(this.elseOption.content.lastToken)}):this.elseOption.active=!0),this.endIf&&i.push({start:s(this.endIf.firstToken),end:s(this.endIf.lastToken)}),i}};var Qo=class extends es{constructor(r,n,i,s,o){super();this.uri=r;this.incudes=n;this.getTokens=s;this.skipIncludes=o;this.tokens=[];this.nodes=[];this._comments=[];this.dtsIncludes=[];this.macroSnapShot=new Map;this.macros=new Map;this.macroStart=!1;i&&(Array.from(i).forEach(([a,c])=>this.macroSnapShot.set(a,c)),Array.from(i).forEach(([a,c])=>this.macros.set(a,c)))}get comments(){return this._comments}removeComments(r){this._comments=this._comments.filter(n=>!r.has(n))}get currentToken(){let r=this.prevToken,n=On(r,this.tokens.at(this.peekIndex()))||!r||H(r,14)&&r.pos.line+1===this.tokens.at(this.peekIndex())?.pos.line;if(!(this.macroStart&&!n))return this.macroStart&&H(this.tokens.at(this.peekIndex()),14)?(this.moveStackIndex(),this.currentToken):this.tokens.at(this.peekIndex())}reset(r){super.reset(),this.macros.clear(),r?(this.macroSnapShot.clear(),Array.from(r).forEach(([n,i])=>this.macroSnapShot.set(n,i)),Array.from(r).forEach(([n,i])=>this.macros.set(n,i))):Array.from(this.macroSnapShot).forEach(([n,i])=>this.macros.set(n,i)),this.nodes=[],this.dtsIncludes=[]}async reparse(r){let n=this.stable;return this.parsing=new Promise(i=>{n.then(()=>{if(r&&r.size===this.macroSnapShot.size){let s=Array.from(r);if(Array.from(this.macroSnapShot).every(([o,a],c)=>{let[l,u]=s[c];return l===o&&u.macro.toString()===a.macro.toString()})){console.log("header file cache hit",this.uri),i();return}}this.reset(r),this.parse().then(i)})}),this.parsing}async parse(){let r=new vf(this.uri,this.getTokens);if(await r.stable,this.tokens=r.tokens,this._comments=r.allAstItems,this.positionStack.push(0),this.tokens.length!==0){for(;!this.done;)await this.lineProcessor();if(this.positionStack.length!==1)throw new Error("Incorrect final stack size")}}async lineProcessor(){if(this.enqueueToStack(),!(!this.prevToken||this.prevToken.pos.line!==this.currentToken?.pos.line||!le(this.prevToken.uri,this.currentToken.uri))){this.moveEndOfLine(this.prevToken,!1),this.mergeStack();return}let n=this.currentToken,i=await this.processInclude()||this.processDefinitions()||this.processUndef()||this.processError();this.processIfDefBlocks(),n&&this.moveEndOfLine(n,!!i),this.mergeStack()}processDefinitions(){this.enqueueToStack();let r=this.peekIndex(),n=this.moveToNextToken;if(!n||!H(n,25))return this.popStack(),!1;this.macroStart=!0;let i=new ut(oe(n)),s=this.isFunctionDefinition()||this.processCIdentifier(this.macros,!0);if(!s)return this._issues.push(W(30,i.firstToken,i.lastToken,i)),this.mergeStack(),this.macroStart=!1,!0;let o=this.consumeDefinitionContent(),a;o.length&&(a=new bf(oe(o[0],o.at(-1)),o));let c=new kc(i,s,a);this.macros.set(c.name,{macro:c,resolver:Nw(c.toString())}),this.nodes.push(c);let l=this.peekIndex();return this.tokens.splice(r,l-r),this.positionStack[this.positionStack.length-1]=r,this.mergeStack(),this.macroStart=!1,!0}processUndef(){this.enqueueToStack();let r=this.peekIndex(),n=this.moveToNextToken;if(!n||!H(n,28))return this.popStack(),!1;this.macroStart=!0;let i=new ut(oe(n)),s=this.processCIdentifier(this.macros,!0);if(!s)return this._issues.push(W(30,i.firstToken,i.lastToken,i)),this.mergeStack(),this.macroStart=!1,!0;let o=new kc(i,s);this.macros.delete(s.name),this.nodes.push(o);let a=this.peekIndex();return this.tokens.splice(r,a-r),this.positionStack[this.positionStack.length-1]=r,this.mergeStack(),this.macroStart=!1,!0}processError(){this.enqueueToStack();let r=this.peekIndex(),n=this.moveToNextToken;if(!n||!H(n,29))return this.popStack(),!1;this.moveEndOfLine(n,!1,!0);let i=this.peekIndex();return this.tokens.splice(r,i-r),this.positionStack[this.positionStack.length-1]=r,this.mergeStack(),!0}consumeDefinitionContent(){let r=[];for(;this.currentToken;){let n=this.moveToNextToken;n&&r.push(n)}return r}isFunctionDefinition(){this.enqueueToStack();let r=this.processCIdentifier(this.macros,!0);if(!r){this.popStack();return}let n=this.moveToNextToken;if(!H(n,42)||!qt(r.lastToken,n)){this.popStack();return}let i=[],s=this.processCIdentifier(this.macros,!0)||this.processVariadic();for(;s;)i.push(s),!H(this.currentToken,24)&&!H(this.currentToken,43)?this._issues.push(W(28,s.firstToken,s.lastToken,s)):H(this.currentToken,43)||(n=this.moveToNextToken),s=this.processCIdentifier(this.macros,!0)||this.processVariadic();let o=new ni(r,i);if(H(this.currentToken,43))n=this.moveToNextToken,o.lastToken=n;else{o.lastToken=this.prevToken;let a=i.at(-1)??o;this._issues.push(W(26,a.firstToken,a.lastToken,a))}return this.mergeStack(),o}processVariadic(){this.enqueueToStack();let r=this.checkConcurrentTokens([Oe(45),Oe(45),Oe(45)]);if(r.length!==3){this.popStack();return}let n=new Jo(oe(r[0],r.at(-1)));return this.mergeStack(),n}processIfDefBlocks(){let r=this.peekIndex(),n=this.parseScopedBlock(o=>!!o&&[33,34,32].some(a=>H(o,a))&&!On(o.prevToken,o),o=>!!o&&[37].some(a=>H(o,a))&&!On(o.prevToken,o),o=>!!o&&[36,35].some(a=>H(o,a))&&!On(o.prevToken,o));if(!n)return;let i;H(n.startToken,32)?i=this.processIfBlock(n,(o,a,c)=>new _f(o,a??null,c)):i=this.processIfDefBlock(n,(o,a,c)=>H(n.startToken,33)?new Pc(o,a??null,c):new Sf(o,a??null,c)),this.nodes.push(i),i.getInValidTokenRange(this.macros,this.tokens).reverse().forEach(o=>{this.tokens.splice(o.start,o.end-o.start+1)}),[...i instanceof ns?i.ifBlocks:[i.ifDef],...i.elseOption?[i.elseOption]:[]].forEach(o=>{!o.active&&o.content&&this._issues.push(W(47,o.content.firstToken,o.content.lastToken,o.content,{severity:Ec.DiagnosticSeverity.Hint,tags:[Ec.DiagnosticTag.Unnecessary]}))}),this.positionStack[this.positionStack.length-1]=r}processIfDefBlock(r,n){this.enqueueToStack(),this.macroStart=!0;let i=new ut(oe(r.startToken));r.splitTokens[0].rewind();let s=this.processCIdentifier(this.macros,!0);s||this._issues.push(W(31,i.firstToken,i.lastToken,i)),this.macroStart=!1;let o,a=s?.lastToken.nextToken??i.lastToken.nextToken;a&&r.splitTokens[0].tokens.find(f=>f===a)&&(o=new Gs(oe(a,r.splitTokens[0].tokens.at(-1))));let c=n(i,s??null,o??null),l;if(r.splitTokens.length>1){let f=r.splitTokens[1].tokens[0].prevToken,p=new ut(oe(f)),g;r.splitTokens[1].tokens.length&&(g=new Gs(oe(r.splitTokens[1].tokens[0],r.splitTokens[1].tokens.at(-1)))),l=new wc(p,g??null)}let u;r.endToken?u=new ut(oe(r.endToken)):this._issues.push(W(46,i.firstToken,i.lastToken,i));let d=new rs(c,u??null,l);return this.mergeStack(),d}processIfBlock(r,n){this.enqueueToStack();let i=new ut(oe(r.startToken)),s=[],o;r.splitTokens.forEach((l,u)=>{l.rewind();let d=this.prevToken,f=new ut(oe(d));this.macroStart=!0;let p=this.processExpression(this.macros,f,!0)||this.processCIdentifier(this.macros,!0);if(this.macroStart=!1,u===r.splitTokens.length-1&&H(d,36)){let h=d,T=new ut(oe(h)),S;l.tokens.length&&(S=new Gs(oe(l.tokens[0],l.tokens.at(-1)))),o=new wc(T,S??null)}else{p||this._issues.push(W(31,i.firstToken,i.lastToken,i));let h,T=p?.lastToken.nextToken??i.lastToken.nextToken;T&&l.tokens.find(_=>_===T)&&(h=new Gs(oe(T,r.splitTokens[u].tokens.at(-1))));let S=n(f,p??null,h??null);s.push(S)}});let a;r.endToken?a=new ut(oe(r.endToken)):this._issues.push(W(46,i.firstToken,i.lastToken,i));let c=new ns(s,a??null,o);return this.mergeStack(),c}get allAstItems(){return[...this.dtsIncludes,...this.nodes,...this.comments]}resolveInclude(r){if(r.path.path)return r.path.relative?[(0,Zo.resolve)((0,Zo.dirname)(r.uri),r.path.path),...this.incudes.map(n=>(0,Zo.resolve)(n,r.path.path))].find(n=>(0,Gy.existsSync)(n)):this.incudes.map(n=>(0,Zo.resolve)(n,r.path.path)).find(n=>(0,Gy.existsSync)(n))}async processInclude(){this.enqueueToStack();let r=this.peekIndex(),n=this.currentToken;if(!n)return this.popStack(),!1;let i=n,s=n;if(H(n,26))this.moveToNextToken;else{let h=this.checkConcurrentTokens([Oe(13),Qe("include"),Oe(13)]);if(h.length!==3)return this.popStack(),!1;i=h[0],s=h.at(-1)}let o=i,a=new ut(oe(i,s));n=this.moveToNextToken;let c=n,l=!!H(n,21);if(!c||!l&&!H(n,5))return o&&this.moveEndOfLine(o),this.mergeStack(),!0;let u="";if(l)u=n?.value??"";else for(;this.currentToken?.pos.line===o.pos.line&&!H(this.currentToken,4);)u+=this.currentToken?.value??"",n=this.moveToNextToken;let d=new Xo(u,l,oe(c,n)),f=new Pi(a,d);this.dtsIncludes.push(f),l||(this.currentToken?.pos.line!==o.pos.line||!H(this.currentToken,4)?this._issues.push(W(12,f.firstToken,f.lastToken,f)):(n=this.moveToNextToken,d.lastToken=n)),this.mergeStack();let p=this.peekIndex(),g=this.resolveInclude(f);if(f.resolvedPath=g,g||this._issues.push(W(36,f.path.firstToken,f.path.lastToken,f.path,{severity:Ec.DiagnosticSeverity.Warning})),g&&!this.skipIncludes){xr().requestTokens(g,!0);let h=Sc().getCPreprocessorParser(g,this.incudes,this.macros,this.uri);await h.stable,this._issues.push(...h.issues),this.macros.clear(),Array.from(h.macros).forEach(([T,S])=>this.macros.set(T,S)),g.endsWith(".h")?this.tokens.splice(r,p-r):this.tokens.splice(r,p-r,...h.tokens),this.nodes.push(...h.nodes),this.dtsIncludes.push(...h.dtsIncludes)}else this.tokens.splice(r,p-r);return this.positionStack[this.positionStack.length-1]=r,!0}};var Kw=$(U());var Nf=class extends Q{constructor(r,n,i){super();this.keyword=r;this.startAddress=n;this.endAddress=i;this.addChild(r),this.docSymbolsMeta={name:"Memreserve",kind:Kw.SymbolKind.Function},this.addChild(n),this.addChild(i)}toString(){return`/memreserve/ 0x${this.startAddress?.value?.toString(16)} 0x${this.endAddress?.value?.toString(16)}`}};var Yw=$(U());var kf=class extends Q{constructor(r,n){super();this.keyword=r;this.bitsSize=n;this.addChild(r),this.docSymbolsMeta={name:"bits",kind:Yw.SymbolKind.Function},this.addChild(n)}toString(){return`/bits/ ${this.bitsSize?.value?.toString()}`}};var Ks=class extends es{constructor(r,n,i,s,o){super();this.uri=r;this.incudes=n;this.tokens=[];this.others=[];this.rootDocument=new lt;this.unhandledStatements=new Dt;this.cPreprocessorParser=new Qo(this.uri,this.incudes,i,s,o)}get issues(){return[...this._issues,...this.cPreprocessorParser.issues]}getFiles(){return[this.uri,...this.cPreprocessorParser.dtsIncludes.flatMap(r=>r.resolvedPath).filter(r=>!!r)]}reset(){super.reset(),this.others=[],this.rootDocument=new lt,this._issues=[],this.unhandledStatements=new Dt}async reparse(){let r=performance.now(),n=this.stable;return this.parsing=new Promise(i=>{n.then(async()=>{this.reset(),await this.cPreprocessorParser.reparse(),await this.parse(),console.log("parsing",performance.now()-r),i()})}),this.parsing}async parse(){if(await this.cPreprocessorParser.stable,this.tokens=this.cPreprocessorParser.tokens,rt(this.uri).endsWith(".h")||(this.positionStack.push(0),this.tokens.length===0))return;let r=async()=>{if(!(this.isDtsDocumentVersion()||this.isMemreserve()||this.isPlugin()||this.isRootNodeDefinition(this.rootDocument)||this.isDeleteNode(this.rootDocument,"Ref")||this.injectPreProcessorResults(this.cPreprocessorParser.macros)||this.isChildNode(this.rootDocument,"Ref")||this.isProperty(this.unhandledStatements)||this.isDeleteProperty(this.unhandledStatements)||this.isChildNode(this.unhandledStatements,"Name"))){let s=this.moveToNextToken;s&&(this._issues.push(W(22,s,s,null)),this.reportExtraEndStatements())}};for(;!this.done;)await r();this.unhandledStatements.properties.forEach(s=>{this._issues.push(W(32,s.firstToken,s.lastToken,s))}),this.unhandledStatements.deleteProperties.forEach(s=>{this._issues.push(W(33,s.firstToken,s.lastToken,s))});let n=this.allAstItems.flatMap(s=>[s,...s.allDescendants]),i=this.cPreprocessorParser.comments;if(i.length&&n.forEach(s=>{(s instanceof lt||s instanceof nt)&&Dw(s,i)}),this.positionStack.length!==1)throw new Error("Incorrect final stack size")}injectPreProcessorResults(r){let n=this.peekIndex(),i=this.isFunctionCall(r)||this.processCIdentifier(r,!0,!0),s=i?.resolve(r);if(i&&typeof s=="string"){s=jy(s);let o=`${i.uri}${uf}${i.firstToken.pos.line}:${i.firstToken.pos.col}-${i.lastToken.pos.line}:${i.firstToken.pos.col}`,a=new Set;if(this.cPreprocessorParser.comments.forEach(l=>{Ir(i,i.uri,l.range.start)&&a.add(l)}),this.cPreprocessorParser.removeComments(a),i instanceof St&&s.includes(i.name)||i instanceof In&&s.includes(i.functionName.name))return!0;let c=new ts(s,o);return this.tokens.splice(n,this.peekIndex()-n,...c.tokens),this.positionStack[this.positionStack.length-1]=n,!0}}isRootNodeDefinition(r){this.enqueueToStack();let n=this.moveToNextToken,i=n,s=13;if(!n||!H(n,s))return this.popStack(),!1;if(i=this.moveToNextToken,s=2,!i||!H(i,s))return this.popStack(),!1;let o=new Dt;o.openScope=i,r.addNodeChild(o),this.processNode(o,"Name");let a=this.nodeEnd(o)??i;return o.firstToken=n,o.lastToken=a,this.mergeStack(),!0}nodeEnd(r){let n=this.currentToken;if(H(n,3))this.moveToNextToken;else{let i=this.prevToken;return i&&this._issues.push(W(3,i,i,r)),this.endStatement(r,!1)}return this.prevToken?.value==="}"&&(r.closeScope=this.prevToken),this.endStatement(r)}isNodeEnd(){return H(this.currentToken,3)||H(this.currentToken,1)}endStatement(r,n=!0){let i=this.currentToken;if(!H(i,1)){let s=this.prevToken;if(s&&n)return this._issues.push(W(1,s,s,r)),s}return this.moveToNextToken,this.reportExtraEndStatements(),i}reportExtraEndStatements(){for(;H(this.currentToken,1);){let r=this.moveToNextToken;r&&this._issues.push(W(23,r,r,null))}}processNode(r,n){if(this.done)return!1;let i=!1,s=!1;do{for(;this.injectPreProcessorResults(this.cPreprocessorParser.macros););if(s=this.isChildNode(r,n)||this.isProperty(r)||this.isDeleteNode(r,n)||this.isDeleteProperty(r),!s&&!this.isNodeEnd()&&!this.done){let o=this.moveToNextToken;o&&(this._issues.push(W(22,o,o,null)),this.reportExtraEndStatements())}else if(this.done)break;i=i||s}while(!this.isNodeEnd());return i}processOptionalLabelAssign(r=!1){let n=[],i=this.isLabelAssign(r);for(;i;)n.push(i),i=this.isLabelAssign(r);return n}isChildNode(r,n){this.enqueueToStack();let i;n==="Name"&&(i=this.isOmitIfNoRefNode());let s=this.processOptionalLabelAssign(),o,a,c=n==="Ref"?new lr(s):new Ge(s,i);if(n==="Ref"?(this.enqueueToStack(),a=this.processNodePathRef(c),!a||!H(this.currentToken,2)?(this.popStack(),a=void 0):this.mergeStack(),a??=this.isLabelRef(c)):n==="Name"&&(o=this.isNodeName()),!a&&!o){if(!H(this.currentToken,2))return this.popStack(),!1;c.firstToken=this.currentToken,this._issues.push(W(n==="Name"?[7]:[10,48,11],c.firstToken,this.currentToken?.nextToken,c))}let l=!1;if(a&&c instanceof lr?(c.reference=a,l=!0):o&&c instanceof Ge&&(l=o.address!==void 0,c.name=o),H(this.currentToken,2)){c.openScope=this.moveToNextToken;let u=!1;do u=this.processNode(c,"Name");while(u);let d=this.nodeEnd(c);c.lastToken=d}else if(l){let u=a??o;u&&this._issues.push(W(2,u.firstToken,u.lastToken,u))}else return this.popStack(),!1;return r.addNodeChild(c),this.mergeStack(),!0}processNodeAddress(r){let n=this.prevToken;this.enqueueToStack();let i=this.checkConcurrentTokens([Qe("0"),Qe("x",{caseInsensitive:!0})]);i.length!==2?(i=[],this.popStack()):(this._issues.push(W(50,i[0],i[1],r,{severity:Rf.DiagnosticSeverity.Warning})),n=i.at(-1),this.mergeStack());let s=this.consumeAnyConcurrentTokens([19,20,48].map(Oe)),o=l=>{l.length%8!==0&&(l=l.padStart(Math.ceil(l.length/8)*8,"0"));let u=[];for(let d=0;d<l.length;d+=8){let f=l.slice(d,d+8);u.push(parseInt(f,16)>>>0)}return u},a=s.length?o(s.filter(l=>l.value!=="_").map(l=>l.value).join("")):[NaN];return n&&(a.some(l=>Number.isNaN(l))?this._issues.push(W(8,n,n,r)):!Number.isNaN(a)&&!qt(n,s[0])&&this._issues.push(W(29,n,s[0],r,{inclusiveStart:!1,inclusiveEnd:!1}))),this.currentToken?.value.toUpperCase()==="ULL"&&(this._issues.push(W(51,this.currentToken,this.currentToken,r,{severity:Rf.DiagnosticSeverity.Warning})),this.moveToNextToken),new _c(a,oe(i.at(0)??s[0]??this.prevToken,this.prevToken))}processNodeAddresses(r){this.enqueueToStack();let n=this.checkConcurrentTokens([Oe(49)]);if(n.length){qt(r.lastToken,n[0])||this._issues.push(W(29,r.lastToken,n[0],r,{inclusiveStart:!1,inclusiveEnd:!1}));let i=[],s=()=>{i.push(this.processNodeAddress(r)),H(this.currentToken,24)&&(this.prevToken&&!qt(this.prevToken,this.currentToken)&&this._issues.push(W(29,this.prevToken,this.currentToken,r,{inclusiveStart:!1,inclusiveEnd:!1})),this.moveToNextToken,s())};s();let o=this.currentToken;for(;!H(this.currentToken,2)&&!H(this.currentToken,1)&&!H(this.currentToken,3)&&On(this.currentToken,i.at(-1)?.lastToken);)this.moveToNextToken;if(o&&o!==this.currentToken){this._issues.push(W(52,o,this.currentToken,r));let a=new _c([],oe(o,this.prevToken));i.push(a)}return this.mergeStack(),i}this.popStack()}isNodeName(){this.enqueueToStack();let r=this.consumeAnyConcurrentTokens([19,47,24,45,48,15,16].map(Oe));if(!r.length){this.popStack();return}let n=r.map(o=>o.value).join(""),i=new Me(n,oe(r[0],r.at(-1))),s=this.processNodeAddresses(i);return i.address=s,ff(n)||this._issues.push(W(49,i.firstToken,i.lastToken,i)),this.mergeStack(),i}isPropertyName(){this.enqueueToStack();let r=this.consumeAnyConcurrentTokens([19,47,24,45,48,15,16,44,46].map(Oe));if(!r.length){this.popStack();return}let n=new Ze(r.map(i=>i.value).join(""),oe(r[0],r.at(-1)));return this.mergeStack(),n}isLabelName(){this.enqueueToStack();let r=this.consumeAnyConcurrentTokens([19,47,48].map(Oe));if(!r.length){this.popStack();return}if(!ff(r?.[0].value)){this.popStack();return}let n=r.map(s=>s.value).join(""),i=new Qt(n,oe(r[0],r[r.length-1]));return this.mergeStack(),i}isLabelAssign(r){this.enqueueToStack();let n=this.consumeAnyConcurrentTokens([19,47,48].map(Oe));if(!n.length){this.popStack();return}if(!ff(n?.[0].value)){this.popStack();return}let i=n.map(c=>c.value).join(""),s=this.currentToken,o=s&&H(s,50),a=new Zi(new Qt(i,oe(n[0],n.at(-1))),oe(n[0],o?s:n.at(-1)));if(o){let c=n.at(-1);c&&(s.pos.line!==a.firstToken.pos.line||s.pos.col!==c.pos.colEnd)&&this._issues.push(W(29,c,s,a,{inclusiveStart:!1,inclusiveEnd:!1})),this.moveToNextToken}else if(r)this._issues.push(W(24,a.firstToken,a.lastToken,a));else{this.popStack();return}return this.mergeStack(),a}isProperty(r){this.enqueueToStack();let n=this.processOptionalLabelAssign(),i=this.isPropertyName();if(!i)return this.popStack(),!1;if(H(this.currentToken,2)||H(this.currentToken,49))return this.popStack(),!1;let s=new nt(i,n),o;H(this.currentToken,0)?(s.assignOperatorToken=this.moveToNextToken,o=this.processValue(r),o?.values.filter(c=>!!c).length||this._issues.push(W(0,s.firstToken,s.lastToken,s)),s.values=o??null):s.values=void 0;let a=this.endStatement(s);return s.lastToken=a,r.addNodeChild(s),this.mergeStack(),!0}isDtsDocumentVersion(){this.enqueueToStack();let r=this.checkConcurrentTokens([Oe(13),Qe("d"),Qe("ts"),Oe(16),Qe("v"),Qe("1")]);if(r.length!==6)return this.popStack(),!1;let n=r[0],i=n,s=new ut;s.firstToken=n;let o=new mf(s);if(this.others.push(o),H(this.currentToken,13))i=this.moveToNextToken;else return s.lastToken=r.at(-1),this._issues.push(W(21,o.firstToken,o.lastToken,o)),this.mergeStack(),!0;return s.lastToken=i,o.lastToken=this.endStatement(o),this.mergeStack(),!0}isMemreserve(){this.enqueueToStack();let r=this.checkConcurrentTokens([Oe(13),Qe("memreserve")]);if(r.length!==2)return this.popStack(),!1;let n=new ut;n.firstToken=r[0];let s=r[0];H(this.currentToken,13)?(s=this.moveToNextToken,n.lastToken=s):(n.lastToken=r.at(-1),this._issues.push(W(21,n.firstToken,n.lastToken,n)));let o=this.processHex()||this.processDec(),a=o&&(this.processHex()||this.processDec()),c=new Nf(n,o,a);if(this.others.push(c),o||this._issues.push(W(37,n.firstToken,n.lastToken,n)),!a){let l=o??n;this._issues.push(W(38,l.firstToken,l.lastToken,c))}return c.lastToken=this.endStatement(c),this.mergeStack(),!0}isPlugin(){this.enqueueToStack();let r=this.checkConcurrentTokens([Oe(13),Qe("plugin"),Oe(13)]);if(r.length!==3)return this.popStack(),!1;let n=new ut(oe(r[0],r.at(-1)));return n.lastToken=this.endStatement(n),this.mergeStack(),this.others.push(n),!0}processBits(){this.enqueueToStack();let r=this.checkConcurrentTokens([Oe(13),Qe("b"),Qe("its")]);if(r.length!==3){this.popStack();return}let n=new ut;n.firstToken=r[0];let s=r[0];H(this.currentToken,13)?(s=this.moveToNextToken,n.lastToken=s):(n.lastToken=r.at(-1),this._issues.push(W(21,n.firstToken,n.lastToken,n)));let o=this.processDec(),a=new kf(n,o);return this.others.push(a),o?o.value!==8&&o.value!==16&&o.value!==32&&o.value!==64&&this._issues.push(W(40,o.firstToken,o.lastToken,o)):this._issues.push(W(39,n.firstToken,n.lastToken,n)),this._issues.push(W(41,a.firstToken,a.lastToken,a,{severity:Rf.DiagnosticSeverity.Warning})),this.mergeStack(),a}isOmitIfNoRefNode(){this.enqueueToStack();let r=this.checkConcurrentTokens([Oe(13),Qe("omit"),Oe(16),Qe("if"),Oe(16),Qe("no"),Oe(16),Qe("ref"),Oe(13)]);if(r.length!==9){this.popStack();return}let n=new ut(oe(r[0],r.at(-1)));return this.mergeStack(),n}isDeleteNode(r,n){this.enqueueToStack();let i=this.checkConcurrentTokens([Oe(13),Qe("d"),Qe("e"),Qe("lete",{allowPartial:!0}),Oe(16),Qe("node",{allowPartial:!0})]);if(!i.length)return this.popStack(),!1;let s=i[0],o=s,a=new ut;if(a.firstToken=s,i.length===1&&!H(this.currentToken,2)){this._issues.push(W(25,a.firstToken,a.lastToken,a)),a.lastToken=i.at(-1);let d=new Mr(a);return r.addNodeChild(d),this.mergeStack(),!0}let c=i.map(d=>d.value??"").join("");if(!"/delete-node/".startsWith(c)||c.endsWith("-"))return this.popStack(),!1;a.lastToken=i.at(-1),c!=="/delete-node"?this._issues.push(W(c.startsWith("/delete-n")?34:25,a.firstToken,a.lastToken,a)):H(this.currentToken,13)?(o=this.moveToNextToken,a.lastToken=o):this._issues.push(W(21,a.firstToken,a.lastToken,a));let l=new Mr(a);if(On(a.lastToken,s)){let d=this.processNodePathRef(r);d&&n==="Name"&&this._issues.push(W(7,d.firstToken,d.lastToken,d));let f=d?void 0:this.isLabelRef(r);f&&n==="Name"&&this._issues.push(W(7,f.firstToken,f.lastToken,f));let p=d||f?void 0:this.isNodeName();p&&n==="Ref"&&this._issues.push(W(10,p.firstToken,p.lastToken,p)),!d&&!p&&!f&&this._issues.push(W([7,10],l.firstToken,l.lastToken,l)),l.nodeNameOrRef=d??f??p??null}else n==="Name"?this._issues.push(W(7,a.firstToken,a.lastToken,a)):n==="Ref"&&this._issues.push(W(10,a.firstToken,a.lastToken,a));let u=this.endStatement(l);return l.lastToken=u,r.addNodeChild(l),this.mergeStack(),!0}isDeleteProperty(r){this.enqueueToStack();let n=this.checkConcurrentTokens([Oe(13),Qe("d"),Qe("e"),Qe("lete",{allowPartial:!0}),Oe(16),Qe("property",{allowPartial:!0})]);if(!n.length)return this.popStack(),!1;let i=n[0],s=i,o=new ut;if(o.firstToken=i,n.length===1&&!H(this.currentToken,2)){this._issues.push(W(25,o.firstToken,o.lastToken,o)),o.lastToken=n.at(-1);let u=new ht(o);return r.addNodeChild(u),this.mergeStack(),!0}let a=n.map(u=>u.value??"").join("");if(!"/delete-property/".startsWith(a)||a.endsWith("-"))return this.popStack(),!1;o.lastToken=n.at(-1),a!=="/delete-property"?this._issues.push(W(a.startsWith("/delete-p")?35:25,o.firstToken,o.lastToken,o)):H(this.currentToken,13)?(s=this.moveToNextToken,o.lastToken=s):this._issues.push(W(21,o.firstToken,o.lastToken,o));let c=new ht(o);if(On(o.lastToken,i)){let u=this.isPropertyName();u||this._issues.push(W(6,c.firstToken,c.lastToken,c)),c.propertyName=u??null}else this._issues.push(W(6,o.firstToken,o.lastToken,o));let l=this.endStatement(c);return c.lastToken=l,r.addNodeChild(c),this.mergeStack(),!0}isNodePathRef(r){this.enqueueToStack();let n=this.processOptionalLabelAssign(!0),i=this.processNodePathRef(r);if(!i){this.popStack();return}let s=[];this.currentToken&&this.currentToken.pos.line===this.currentToken.prevToken?.pos.line&&s.push(...this.processOptionalLabelAssign(!0));let o=new br(n,i,s);return this.mergeStack(),o}processValue(r){this.enqueueToStack();let i=(()=>{let o=()=>(this.processStringValue()||this.isNodePathRef(r)||this.isLabelRefValue(r)||this.arrayValues(r)||this.processByteStringValue()||this.isExpressionValue(r))??null,a=o();if(!a)return[];let c=[a];for(;!H(this.currentToken,1);){let l=this.prevToken,u=this.currentToken,d,f=H(this.currentToken,24);if(f)d=this.currentToken,this.moveToNextToken;else if(!On(this.prevToken,this.currentToken))break;let p=o();if(u&&p===null&&f){let h=new Q(oe(u,this.currentToken));this._issues.push(W(0,h.firstToken,h.lastToken,h))}if(!f&&p===null)break;if(l&&!f&&p){let h=new Q(oe(l));this._issues.push(W(28,h.firstToken,h.lastToken,h))}let g=c.at(-1);g&&(g.nextValueSeparator??=d),c.push(p)}return c})();if(i.length===0){this.popStack();return}return this.mergeStack(),new hf(i)}processStringValue(){this.enqueueToStack();let r=this.processOptionalLabelAssign(!0),n=this.consumeAnyConcurrentTokens([Oe(21)]);if(!n.length){this.popStack();return}if(n.some(u=>u.value===void 0))throw new Error("Token must have value");let i=n.map(u=>u.value).join(`
189
+ `),s=i,o=['"',"'"].some(u=>s.endsWith(u));o&&(s=s.slice(1,-1));let a=new ne(s,oe(n[0],n.at(-1)));o||this._issues.push(W(i.startsWith('"')?16:17,a.firstToken,a.lastToken,a));let c=[];this.currentToken&&this.currentToken.pos.line===this.currentToken.prevToken?.pos.line&&(c=this.processOptionalLabelAssign(!0));let l=new br(r,a,c);return this.mergeStack(),l}arrayValues(r){this.enqueueToStack();let n=this.processOptionalLabelAssign(!0),i=this.processBits(),s=this.currentToken;if(H(s,5))this.moveToNextToken;else{this.popStack();return}let o=this.processArrayValues(r)??null;o.openBracket=s;let a=this.processOptionalLabelAssign(!0)??[],c=new br(n,o,a,i);if(!H(this.currentToken,4))this._issues.push(W(12,c.firstToken,c.lastToken,c));else{let u=this.moveToNextToken;o&&(o.closeBracket=u)}let l=[];return this.currentToken&&this.currentToken.pos.line===this.currentToken.prevToken?.pos.line&&(l=this.processOptionalLabelAssign(!0)),this.mergeStack(),c.endLabels.push(...l),c.firstToken=s,c.lastToken=this.prevToken,c}processByteStringValue(){this.enqueueToStack();let r=this.processOptionalLabelAssign(!0),n=this.moveToNextToken,i=n;if(!H(i,11)){this.popStack();return}let s=this.processLabeledValue(()=>this.processHexString()),o=this.processOptionalLabelAssign(!0)??[];s.forEach(u=>{let d=0;u.value&&u.value.firstToken===u.value.lastToken&&(d=u.value.firstToken.pos.len),d%2!==0&&this._issues.push(W(15,u.firstToken,u.lastToken,u))});let a=new Ri(s??[]);a.openBracket=i,a.values.length===0&&(a.firstToken=n,this._issues.push(W(14,a.firstToken,a.lastToken,a)));let c=new br(r,a,o);H(this.currentToken,12)?a.closeBracket=this.moveToNextToken:this._issues.push(W(5,c.firstToken,c.lastToken,c));let l=[];return this.currentToken&&this.currentToken.pos.line===this.currentToken.prevToken?.pos.line&&(l=this.processOptionalLabelAssign(!0)),this.mergeStack(),c.endLabels.push(...l),c.firstToken=n,a.lastToken=this.prevToken,c}processLabeledValue(r){this.enqueueToStack();let n=r(),i=[];if(!n)return this.popStack(),[];for(;n;)i.push(n),n=r();if(i.length){let s=r();s&&i.push(s)}return this.mergeStack(),i}processArrayValues(r){this.enqueueToStack();let n=this.processLabeledValue(()=>this.processRefValue(r,!1)||this.processLabeledHex(!1)||this.processLabeledDec(!1)||this.processLabeledExpression(!0,!1,r)),i=new jt(n);return n.length===0&&(i.firstToken=this.currentToken),this.mergeStack(),i}processLabeledHex(r){this.enqueueToStack();let n=this.processOptionalLabelAssign(r),i=this.processHex();if(!i){this.popStack();return}let s=new ri(i,n);return this.mergeStack(),s}processHexString(){this.enqueueToStack();let r=this.processOptionalLabelAssign(!1),n=this.checkConcurrentTokens([20,20].map(Oe));if(!n.length){this.popStack();return}let i=Number.parseInt(n.map(a=>a.value).join(""),16),s=new cr(i,oe(n[0],n.at(-1)),16),o=new ri(s,r);return this.mergeStack(),o}processLabeledDec(r){this.enqueueToStack();let n=this.processOptionalLabelAssign(r),i=this.processDec();if(!i){this.popStack();return}let s=new ri(i,n);return this.mergeStack(),s}processLabeledExpression(r=!0,n=r,i){this.enqueueToStack();let s=[];r&&(s=this.processOptionalLabelAssign(n));let o=this.processExpression(this.cPreprocessorParser.macros,i);if(!o){this.popStack();return}let a=new ri(o,s);return this.mergeStack(),a}isExpressionValue(r){this.enqueueToStack();let n=this.processOptionalLabelAssign(!1),i=this.processExpression(this.cPreprocessorParser.macros,r);if(!i){this.popStack();return}let s=this.processOptionalLabelAssign(!0),o=new br(n,i,s);return this.mergeStack(),o}isLabelRef(r){this.enqueueToStack();let n=this.currentToken;if(!n||!H(n,40)){this.popStack();return}else this.moveToNextToken;let i=this.isLabelName();if(!i){let o=new ie(null);return this._issues.push(W(18,n,n,r)),o.firstToken=n,this.mergeStack(),o}n&&(i.firstToken.pos.line!==n.pos.line||i.firstToken.pos.col!==n.pos.colEnd)&&this._issues.push(W(29,n,i.firstToken,r,{inclusiveStart:!1,inclusiveEnd:!1}));let s=new ie(i);return s.firstToken=n,this.mergeStack(),s}isLabelRefValue(r){this.enqueueToStack();let n=this.processOptionalLabelAssign(!0),i=this.isLabelRef(r);if(!i){this.popStack();return}let s=[];this.currentToken&&this.currentToken.pos.line===this.currentToken.prevToken?.pos.line&&(s=this.processOptionalLabelAssign(!0));let o=new br(n,i,s);return this.mergeStack(),o}processRefValue(r,n){this.enqueueToStack();let i=this.processOptionalLabelAssign(n),s=this.currentToken;if(!s||!H(s,40)){this.popStack();return}let o=this.processNodePathRef(r);if(o!==void 0){let l=new ri(o,i);return this.mergeStack(),l}let a=this.isLabelRef(r);if(a===void 0){this._issues.push(W([18,9],s,s,r));let l=new ri(null,i);return l.firstToken=i.at(0)?.firstToken??s,this.mergeStack(),l}let c=new ri(a,i);return c.firstToken=i.at(0)?.firstToken??s,this.mergeStack(),c}processNodePath(r=!0,n=new xn){this.enqueueToStack();let i;if(H(this.currentToken,13))i=this.moveToNextToken;else{if(!r){this.popStack();return}this.prevToken&&this._issues.push(W(19,this.prevToken,this.prevToken,n))}let s=this.isNodeName(),o=i??this.prevToken;if(!s&&o&&!r&&this._issues.push(W(7,o,o,n)),!r||s?n.addPath(s??null,i?new Q(oe(i)):void 0):r&&!s&&i&&(n.addPath(new Me("/",oe(i))),n.firstToken=i),r&&!i&&n.children.length===0){this.mergeStack();return}return this.processNodePath(!1,n),this.mergeStack(),n}processNodePathRef(r){this.enqueueToStack();let n=this.moveToNextToken,i=n;if(!H(i,40)){this.popStack();return}let s=this.moveToNextToken;if(i=s,!H(i,2)){this.popStack();return}n&&!qt(n,s)&&this._issues.push(W(29,n,s,r,{inclusiveStart:!1,inclusiveEnd:!1}));let o=this.processNodePath(),a=new it(o??null),c=this.currentToken??this.prevToken,l=c;return o?.children.forEach((u,d)=>{if(d===o?.children.length-1&&u&&l&&!qt(u.lastToken,l)){this._issues.push(W(29,u.lastToken,l,r,{inclusiveStart:!1,inclusiveEnd:!1}));return}if(d===0&&s&&!qt(s,u?.firstToken)){this._issues.push(W(29,s,u?.firstToken,r,{inclusiveStart:!1,inclusiveEnd:!1}));return}let f=o?.children[d+1];u&&f&&!qt(u.lastToken,f.firstToken)&&this._issues.push(W(29,u.lastToken,f?.firstToken,r,{inclusiveStart:!1,inclusiveEnd:!1}))}),H(c,3)?this.moveToNextToken:this.prevToken&&this._issues.push(W(3,this.prevToken,this.prevToken,r)),a.firstToken=n,a.lastToken=c??this.prevToken,this.mergeStack(),a}get includes(){return this.allAstItems.filter(r=>r instanceof Pi)}get allAstItems(){return[...this.cPreprocessorParser.allAstItems,...this.rootDocument.children,...this.others,...this.unhandledStatements.properties,...this.unhandledStatements.deleteProperties,...this.unhandledStatements.nodes]}};var lU=async(t,e,r)=>{let n=Z.Position.create(t.pos.line,t.pos.col),i=r.find(s=>Ir(s,e,n));if(i)return ti(i,e,n)},Ky=t=>{if(t)return t instanceof lt?t:Ky(t?.parentNode)},ea=(t,e,r=0)=>{if(!e||!le(e.uri,t)||!e.parentNode?.uri)return r;let n=Ky(e.parentNode);return ea(t,n,r+1)},uU=(t,e)=>async r=>{let n=t.filter(a=>!(a instanceof Pi)&&!(a instanceof un)&&!(a instanceof ln)&&!(a instanceof rs)),i=await lU(r.firstToken,e,n);if(!i||i===r||r.allDescendants.some(a=>a===i))return{level:0};let s=Ky(i);return{level:ea(e,s),inAst:i}};async function Yy(t,e,r){let n=Se(t.textDocument.uri),i=new Ks(n,[],void 0,()=>new ts(e,n).tokens,!0);await i.stable;let s=i.issues.filter(o=>Ko(o.raw,n,!1));if(s?.length)throw new Z.ResponseError(Z.ErrorCodes.InternalError,"Unable to format. File has syntax issues.",s.map(o=>o.diagnostic()));return Qw(t,i.allAstItems,n,e,r)}async function Qw(t,e,r,n,i){let s=n.split(`
190
190
  `),o=dU(e,s),a=uU(e,r),c=(await Promise.all(e.flatMap(async f=>await tE(t,f,r,a,s)))).flat();if(t.options.insertFinalNewline&&s.at(-1)?.trim()!==""){let f=Z.TextEdit.insert(Z.Position.create(s.length,s[s.length-1].length),`
191
- `);c.push(Ir(4,r,Z.Position.create(s.length,0),{edit:f,codeActionTitle:"Insert new line"}))}if(t.options.trimFinalNewlines){let f=0;for(;s.at(-(1+f))?.trim()==="";)f++;if(f>1){let p=Z.TextEdit.del(Z.Range.create(Z.Position.create(s.length-f,0),Z.Position.create(s.length-1,0)));c.push(Ir(3,r,Z.Position.create(s.length,0),{edit:p,codeActionTitle:"Remove trailing EOF lines"}))}}let l=c.flatMap(f=>f.raw.edit).filter(f=>!!f);if(t.options.trimTrailingWhitespace){let f=fU(s,l,r);c.push(...f)}let u=o.length?c.filter(f=>(Array.isArray(f.raw.edit)?f.raw.edit:f.raw.edit?[f.raw.edit]:void 0)?.every(g=>!Jw(g.range.start,o)&&!Jw(g.range.end,o))):c;"range"in t&&(u=u.filter(f=>vw(t.range,f.raw.range)));let d=()=>{let f=u.flatMap(p=>p.raw.edit).filter(p=>!!p);return ww(Qn.create(r,"devicetree",0,n),f)};return i==="New Text"?d():i==="File Diagnostics"?u:{text:d(),diagnostic:u}}async function wf(t,e,r,n){let i=Se(t.textDocument.uri);e.formattingOptions=t.options;let s=await e.getRuntime(),o=s.fileTopMostAsts(i);if(s.includes.filter(c=>le(c.resolvedPath,i)).length>1){let c=[];o.forEach(l=>{c.some(u=>u.firstToken.pos.line===l.firstToken.pos.line&&u.firstToken.pos.col===l.firstToken.pos.col)||c.push(l)}),o=c}return Qw(t,o,i,r,n)}var dU=(t,e)=>{let r=Z.Position.create(e.length-1,e.at(-1)?.length??0),n=[],i;return t.filter(o=>(o instanceof ln||o instanceof un)&&/^dts-format (on|off)$/.test(o.toString().trim())).sort((o,a)=>o.firstToken.pos.line-a.firstToken.pos.line).forEach(o=>{let a=o.toString().trim();if(a==="dts-format off")i={start:Z.Position.create(o.firstToken.pos.line,o instanceof ln?o.firstToken.pos.colEnd:0)};else if(a==="dts-format on"&&i){let c=Z.Position.create(o.lastToken.pos.line,o instanceof ln?o.lastToken.pos.colEnd-1:e[o.lastToken.pos.line-1].length);n.push(Z.Range.create(i.start,c)),i=void 0}}),i&&n.push(Z.Range.create(i.start,r)),n};function Xw(t,e){return t.line<e.line?-1:t.line>e.line?1:t.character<e.character?-1:t.character>e.character?1:0}var Jw=(t,e)=>e.some(r=>Xw(t,r.start)>=0&&Xw(t,r.end)<=0),fU=(t,e,r)=>{let n=[];return t.forEach((i,s)=>{let o=i.trimEnd();if(o.length!==i.length){let a=Z.Range.create(Z.Position.create(s,o.length),Z.Position.create(s,i.length));e.some(c=>Ew(a,c.range))||n.push(Ir(2,r,a.start,{edit:Z.TextEdit.del(a),codeActionTitle:"Remove whitespace"},a.end))}}),n},Ef=(t,e,r=1,n=!1,i=t.prevToken)=>{if(i){let s=t.pos.line-i.pos.line,o=s-r;if(o&&(s!==2&&r!==0||r===0||n)){let a=Z.Position.create(i.pos.line,i.pos.colEnd),c=Z.Position.create(t.pos.line-(r?1:0),r?e[t.pos.line-(r?1:0)].length:t.pos.col),l=Z.TextEdit.replace(Z.Range.create(a,c),`
192
- `.repeat(r-(n?1:0)));return Ir(1,t.uri,a,{edit:l,codeActionTitle:o<0?"Insert new lines":"Remove unnecessary new lines",templateStrings:[r.toString()]},c)}}else if(t.pos.line){let s=Z.Position.create(0,0),o=Z.Position.create(t.pos.line,0),a=Z.TextEdit.del(Z.Range.create(s,o));return Ir(1,t.uri,s,{edit:a,codeActionTitle:"Remove unnecessary new lines",templateStrings:["0"]},o)}},Zw=(t,e,r,n="",i=1)=>{let s=t.pos.line===t.prevToken?.pos.line;if(t.prevToken&&s){let o=Z.Position.create(t.prevToken.pos.line,t.prevToken.pos.colEnd),a=Z.Position.create(t.pos.line,t.pos.col),c=Z.TextEdit.replace(Z.Range.create(o,a),`${`
193
- `.repeat(i)}${"".padStart(e*r.length,r)}${n}`);return Ir(0,t.uri,o,{edit:c,codeActionTitle:"Move to new line"},a)}},Xy=(t,e,r,n,i="")=>{let s=`${"".padStart(e*r.length,r)}${i}`,o=Z.Position.create(t.pos.line,0),a=Z.Position.create(t.pos.line,t.pos.col),c=Z.Range.create(o,a),l=PU(n,c);if(s===l)return[];let u=Z.TextEdit.replace(c,s);return[Ir(5,t.uri,o,{edit:u,codeActionTitle:"Fix indentation",templateStrings:[s.replaceAll(" ","\xB7").replaceAll(" ","\u2192")]},a)]},vt=(t,e,r=1,n=!1)=>{if(!t.nextToken)return[];if(t.nextToken?.pos.line!==t.pos.line){if(n)return[];let c=Ef(t.nextToken,e,0);if(!c)throw new Error("remove new LinesEdit must be defined");return r&&(c.raw.edit.newText=`${" ".repeat(r)}${c.raw.edit.newText}`),[c]}if(r===0){if(t.nextToken.pos.col===t.pos.colEnd)return[];let c=Z.Position.create(t.pos.line,t.pos.colEnd),l=Z.Position.create(t.nextToken.pos.line,t.nextToken.pos.col),u=Z.TextEdit.del(Z.Range.create(c,l));return[Ir(1,t.uri,c,{edit:u,codeActionTitle:"Remove space(s)",templateStrings:["0"]},l)]}if(t.pos.colEnd===t.nextToken.pos.col){let c=Z.Position.create(t.nextToken.pos.line,t.nextToken.pos.col),l=Z.TextEdit.insert(c," ".repeat(r));return[Ir(1,t.uri,c,{edit:l,codeActionTitle:"Insert Space(s)",templateStrings:[r.toString()]})]}let i=t.nextToken.pos.col-t.pos.colEnd;if(i===r&&e[t.pos.line].slice(t.pos.colEnd,t.nextToken.pos.col)===" ".repeat(r))return[];let s=Z.Position.create(t.pos.line,t.pos.colEnd),o=Z.Position.create(t.nextToken.pos.line,t.nextToken.pos.col),a=Z.TextEdit.replace(Z.Range.create(s,o)," ".repeat(r));return[Ir(1,t.uri,s,{edit:a,codeActionTitle:i>r?"Remove space(s)":"Insert space(s)",templateStrings:[r.toString()]},o)]},Dc=(t,e)=>t.slice(1).flatMap(r=>r.firstToken.prevToken?vt(r.firstToken.prevToken,e):[]),pU=async(t,e,r,n,i,s,o)=>{if(!le(e.uri,r))return[];let a=[];if(a.push(...Gr(e.firstToken,n,i,s,void 0,e.firstToken.prevToken?.value==="{"&&!e.topComment||e.topComment?1:2,!0)),e instanceof Ge||e instanceof lr)if(a.push(...Dc(e.labels,s)),e instanceof Ge){e.labels.length&&e.name&&e.name.firstToken.prevToken&&a.push(...vt(e.name.firstToken.prevToken,s));let c=e.name&&e.openScope?vt(e.name.lastToken,s):[];a.push(...c)}else{e.labels.length&&e.reference?.firstToken.prevToken&&a.push(...vt(e.reference.firstToken.prevToken,s));let c=e.reference&&e.openScope?vt(e.reference.lastToken,s):[];a.push(...c)}else e instanceof Dt&&e.firstToken.value==="/"&&e.openScope&&a.push(...vt(e.firstToken,s,1));return a.push(...(await Promise.all(e.children.flatMap(c=>tE(t,c,r,o,s,n+1)))).flat()),e.closeScope&&(e.openScope&&e.closeScope.prevToken===e.openScope?a.push(...vt(e.openScope,s,0)):a.push(...Gr(e.closeScope,n,i,s,void 0,1,!0))),e.lastToken.value===";"&&e.closeScope&&a.push(...Df(e.closeScope,e.lastToken)),a},hU=(t,e,r,n,i,s)=>{let o=[];if(o.push(...Dc(e.labels,s)),e.labels.length&&e.value?.firstToken.prevToken&&o.push(...vt(e.value.firstToken.prevToken,s)),e.firstToken.prevToken)if(e.firstToken.pos.line!==e.firstToken.prevToken?.pos.line&&e.firstToken.prevToken!==i){let a=Ef(e.firstToken,s,1,!0);a&&o.push(a),o.push(...Xy(e.firstToken,r,n.singleIndent,s,Cc(n,t+4)))}else o.push(...vt(e.firstToken.prevToken,s,i&&e.firstToken.prevToken===i?0:1));return e.value instanceof Ee&&o.push(...Pf(e.value,s,r,n,t+4)),o},mU=(t,e,r,n,i)=>{let s=[];return e instanceof jt||e instanceof Ri?e.openBracket&&e.openBracket?.nextToken===e.closeBracket?s.push(...vt(e.openBracket,i,0)):(s.push(...e.values.flatMap(o=>hU(t,o,r,n,e.openBracket,i))),e.closeBracket?.prevToken&&(e.values.at(-1)?.lastToken===e.closeBracket?.prevToken||e.closeBracket?.prevToken.value==="/"&&e.closeBracket?.prevToken?.prevToken?.value==="*"?s.push(...vt(e.closeBracket.prevToken,i,e.closeBracket.prevToken===e.values.at(-1)?.lastToken?0:1)):s.push(...Gr(e.closeBracket,r,n.singleIndent,i)))):e instanceof Ee&&s.push(...Pf(e,i,r,n,t)),s},Pf=(t,e,r,n,i)=>t instanceof In?gU(t,e):t instanceof Zn?yU(t,e,r,n,i):[],gU=(t,e)=>{let r=[];return r.push(...vt(t.functionName.lastToken,e,0)),t.lastToken.value===")"&&t.lastToken.prevToken&&r.push(...vt(t.lastToken.prevToken,e,0)),r},yU=(t,e,r,n,i)=>{let s=[];if(t.openBracket&&t.openBracket.nextToken&&s.push(...vt(t.openBracket,e,0)),s.push(...Pf(t.expression,e,r,n,i)),t.join?.forEach(o=>{o.operator.firstToken.prevToken&&s.push(...vt(o.operator.firstToken.prevToken,e)),o.expression.firstToken.prevToken?.pos.line===o.expression.firstToken.pos.line?s.push(...vt(o.expression.firstToken.prevToken,e)):s.push(...Gr(o.expression.firstToken,r,n.singleIndent,e,Cc(n,i))),s.push(...Pf(o.expression,e,r,n,i))}),!t.join?.length&&!(t.expression instanceof Zn)&&(t.expression instanceof In||t.expression instanceof St)){let o=[];if(t.openBracket){let a=Z.Position.create(t.openBracket.pos.line,t.openBracket.pos.col),c=Z.Position.create(t.openBracket.pos.line,t.openBracket.pos.colEnd);o.push(Z.TextEdit.del(Z.Range.create(a,c)))}if(t.closeBracket){let a=Z.Position.create(t.closeBracket.pos.line,t.closeBracket.pos.col),c=Z.Position.create(t.closeBracket.pos.line,t.closeBracket.pos.colEnd);o.push(Z.TextEdit.del(Z.Range.create(a,c)))}s.push(Ir(7,t.uri,o[0].range.start,{edit:o,codeActionTitle:"Remove (...)"},o[o.length-1].range.end))}return t.closeBracket&&t.closeBracket.prevToken&&s.push(...vt(t.closeBracket.prevToken,e,0)),s},TU=(t,e,r,n,i)=>{let s=[];return s.push(...Dc(e.startLabels,i)),s.push(...mU(t,e.value,r,n,i)),s.push(...Dc(e.endLabels,i)),s},Cc=(t,e)=>{if(t.insertSpaces)return"".padStart(e," ");let r=Math.floor(e/t.tabSize),n=e%t.tabSize;return`${"".padStart(r," ")}${"".padStart(n," ")}`},vU=(t,e,r,n,i,s)=>{let o=[];return e.values.forEach((a,c)=>{if(!a)return[];let l=a.firstToken.prevToken,u=c?e.values.at(c-1):void 0;if(l)if(l.pos.line===a.firstToken.pos.line)if(l.value===","&&u?.lastToken.pos.line!==a.firstToken.pos.line&&l.prevToken?.pos.line!==a.firstToken.pos.line){let d=Zw(a.firstToken,r,n.singleIndent,Cc(n,t+3));d&&o.push(d)}else o.push(...vt(l,i,1));else if(s&&a.firstToken.prevToken===s)o.push(...vt(s,i));else{let d=Ef(a.firstToken,i,1,!0);d&&o.push(d),o.push(...Xy(a.firstToken,r,n.singleIndent,i,Cc(n,t+3)))}o.push(...TU(t,a,r,n,i)),a.nextValueSeparator&&o.push(...Df(a.lastToken,a.nextValueSeparator))}),o},bU=(t,e,r,n,i)=>{if(!le(t.uri,i))return[];let s=[];return s.push(...Gr(t.firstToken,e,r.singleIndent,n,void 0,void 0,t.firstToken.prevToken?.value==="{")),s.push(...Dc(t.labels,n)),t.labels.length&&t.propertyName?.firstToken.prevToken&&s.push(...vt(t.propertyName.firstToken.prevToken,n)),t.values&&(t.propertyName&&s.push(...vt(t.propertyName?.lastToken,n)),s.push(...vU(t.propertyName?.name.length??0,t.values,e,r,n,t.assignOperatorToken))),t.lastToken.value===";"&&s.push(...Df(t.children[t.children.length-1].lastToken,t.lastToken)),s},Gr=(t,e,r,n,i,s,o)=>{let a=[],c=Zw(t,e,r,i,s);if(c)a.push(c);else{let l=Ef(t,n,s,o);l&&a.push(l),a.push(...Xy(t,e,r,n,i))}return a},Df=(t,e)=>{if(t.pos.line===e.pos.line&&t.pos.colEnd+1===e.pos.colEnd)return[];if(t.nextToken===e){let s=Z.Position.create(t.pos.line,t.pos.colEnd),o=Z.Position.create(e.pos.line,e.pos.col),a=Z.TextEdit.del(Z.Range.create(s,o));return[Ir(1,t.uri,s,{edit:a,codeActionTitle:"Remove white space",templateStrings:["0"]},o)]}let r=Z.Position.create(t.pos.line,t.pos.colEnd),n=Z.Position.create(e.pos.line,e.pos.colEnd),i=[Z.TextEdit.insert(r,e.value),Z.TextEdit.del(Z.Range.create(Z.Position.create(e.prevToken?.pos.line??e.pos.line,e.prevToken?.pos.colEnd??e.pos.col),n))];return[Ir(6,t.uri,r,{edit:i,codeActionTitle:"Move token",templateStrings:[e.value]},n)]},_U=(t,e,r,n)=>{let i=[];i.push(...Gr(t.firstToken,e,r,n));let s=vt(t.keyword.lastToken,n);return i.push(...s),t.lastToken.value===";"&&i.push(...Df(t.children[t.children.length-1].lastToken,t.lastToken)),i},SU=(t,e,r,n,i)=>{if(r===void 0)return[];if(!le(t.uri,e))return[];let s=[];s.push(...Gr(t.firstToken,r.level,n,i));let o=vt(t.keyword.lastToken,i);return s.push(...o),s},NU=(t,e,r,n,i)=>t.comments.length===1&&t.firstToken.pos.line===t.firstToken.prevToken?.pos.line?[]:t.comments.flatMap((s,o)=>kU(s,t,e,r,n,o?o===t.comments.length-1?"last":"comment":"first",i)),eE=(t,e,r="")=>{let n=e?Uy(e):void 0;if(!n)return r;let i=Ws(e),s=n.propertyName?.name.length??0;return`${`${Cc(t,s+(i?4:3)+(r.length-r.trimStart().length))}`}${r.trimStart()}`},kU=(t,e,r,n,i,s,o)=>{if(!t.firstToken.prevToken)return Gr(t.firstToken,r?.level??0,n,i);if(t.firstToken.pos.line===t.firstToken.prevToken?.pos.line)return vt(t.firstToken.prevToken,i,1);if(r===void 0)return[];let a,c;s==="first"&&!e.astBeforeComment&&e.astAfterComment instanceof lt&&(a=!0,c=e.firstToken.prevToken?.value==="{"?1:2);let l=[],u="",d=t.toString();switch(s==="last"&&d.trim()!==""&&t.lastToken.prevToken&&(s="comment",l.push(...Gr(t.lastToken.prevToken,r?.level??0,n,i," "))),s){case"comment":u=t.firstToken.value==="*"?" ":" * ";break;case"first":break;case"last":u=" ";break}return r?.inAst instanceof lt?l.push(...Gr(t.firstToken,r?.level??0,n,i,u,c,a)):l.push(...Gr(t.firstToken,r?.level??0,n,i,eE(o,r?.inAst,u),c,a)),l},RU=(t,e,r,n,i)=>{if(!t.firstToken.prevToken)return Gr(t.firstToken,e?.level??0,r,n);if(t.firstToken.pos.line===t.firstToken.prevToken.pos.line)return[];let o,a;return!t.astBeforeComment&&t.astAfterComment instanceof lt&&(o=!0,a=t.firstToken.prevToken?.value==="{"?1:2),Gr(t.firstToken,e?.level??0,r,n,eE(i,e?.inAst),a,o)},tE=async(t,e,r,n,i,s=0)=>{let o=t.options.tabSize,a=t.options.insertSpaces,c=a?" ".repeat(o):" ",l={tabSize:o,insertSpaces:a,singleIndent:c};return e instanceof lt?pU(t,e,r,s,c,i,n):e instanceof nt?bU(e,s,l,i,r):e instanceof vr?_U(e,s,c,i):e instanceof Pi?SU(e,r,await n(e),c,i):e instanceof un?RU(e,await n(e),c,i,l):e instanceof ln?NU(e,await n(e),c,i,l):[]};function PU(t,e){let r=t[e.start.line],n=t[e.end.line];if(e.start.line===e.end.line)return r.substring(e.start.character,e.end.character);let i=t.slice(e.start.line+1,e.end.line);return[r.substring(e.start.character),...i,n.substring(0,e.end.character)].join(`
191
+ `);c.push(Or(4,r,Z.Position.create(s.length,0),{edit:f,codeActionTitle:"Insert new line"}))}if(t.options.trimFinalNewlines){let f=0;for(;s.at(-(1+f))?.trim()==="";)f++;if(f>1){let p=Z.TextEdit.del(Z.Range.create(Z.Position.create(s.length-f,0),Z.Position.create(s.length-1,0)));c.push(Or(3,r,Z.Position.create(s.length,0),{edit:p,codeActionTitle:"Remove trailing EOF lines"}))}}let l=c.flatMap(f=>f.raw.edit).filter(f=>!!f);if(t.options.trimTrailingWhitespace){let f=fU(s,l,r);c.push(...f)}let u=o.length?c.filter(f=>(Array.isArray(f.raw.edit)?f.raw.edit:f.raw.edit?[f.raw.edit]:void 0)?.every(g=>!Jw(g.range.start,o)&&!Jw(g.range.end,o))):c;"range"in t&&(u=u.filter(f=>vw(t.range,f.raw.range)));let d=()=>{let f=u.flatMap(p=>p.raw.edit).filter(p=>!!p);return ww(Qn.create(r,"devicetree",0,n),f)};return i==="New Text"?d():i==="File Diagnostics"?u:{text:d(),diagnostic:u}}async function wf(t,e,r,n){let i=Se(t.textDocument.uri);e.formattingOptions=t.options;let s=await e.getRuntime(),o=s.fileTopMostAsts(i);if(s.includes.filter(c=>le(c.resolvedPath,i)).length>1){let c=[];o.forEach(l=>{c.some(u=>u.firstToken.pos.line===l.firstToken.pos.line&&u.firstToken.pos.col===l.firstToken.pos.col)||c.push(l)}),o=c}return Qw(t,o,i,r,n)}var dU=(t,e)=>{let r=Z.Position.create(e.length-1,e.at(-1)?.length??0),n=[],i;return t.filter(o=>(o instanceof ln||o instanceof un)&&/^dts-format (on|off)$/.test(o.toString().trim())).sort((o,a)=>o.firstToken.pos.line-a.firstToken.pos.line).forEach(o=>{let a=o.toString().trim();if(a==="dts-format off")i={start:Z.Position.create(o.firstToken.pos.line,o instanceof ln?o.firstToken.pos.colEnd:0)};else if(a==="dts-format on"&&i){let c=Z.Position.create(o.lastToken.pos.line,o instanceof ln?o.lastToken.pos.colEnd-1:e[o.lastToken.pos.line-1].length);n.push(Z.Range.create(i.start,c)),i=void 0}}),i&&n.push(Z.Range.create(i.start,r)),n};function Xw(t,e){return t.line<e.line?-1:t.line>e.line?1:t.character<e.character?-1:t.character>e.character?1:0}var Jw=(t,e)=>e.some(r=>Xw(t,r.start)>=0&&Xw(t,r.end)<=0),fU=(t,e,r)=>{let n=[];return t.forEach((i,s)=>{let o=i.trimEnd();if(o.length!==i.length){let a=Z.Range.create(Z.Position.create(s,o.length),Z.Position.create(s,i.length));e.some(c=>Ew(a,c.range))||n.push(Or(2,r,a.start,{edit:Z.TextEdit.del(a),codeActionTitle:"Remove whitespace"},a.end))}}),n},Ef=(t,e,r=1,n=!1,i=t.prevToken)=>{if(i){let s=t.pos.line-i.pos.line,o=s-r;if(o&&(s!==2&&r!==0||r===0||n)){let a=Z.Position.create(i.pos.line,i.pos.colEnd),c=Z.Position.create(t.pos.line-(r?1:0),r?e[t.pos.line-(r?1:0)].length:t.pos.col),l=Z.TextEdit.replace(Z.Range.create(a,c),`
192
+ `.repeat(r-(n?1:0)));return Or(1,t.uri,a,{edit:l,codeActionTitle:o<0?"Insert new lines":"Remove unnecessary new lines",templateStrings:[r.toString()]},c)}}else if(t.pos.line){let s=Z.Position.create(0,0),o=Z.Position.create(t.pos.line,0),a=Z.TextEdit.del(Z.Range.create(s,o));return Or(1,t.uri,s,{edit:a,codeActionTitle:"Remove unnecessary new lines",templateStrings:["0"]},o)}},Zw=(t,e,r,n="",i=1)=>{let s=t.pos.line===t.prevToken?.pos.line;if(t.prevToken&&s){let o=Z.Position.create(t.prevToken.pos.line,t.prevToken.pos.colEnd),a=Z.Position.create(t.pos.line,t.pos.col),c=Z.TextEdit.replace(Z.Range.create(o,a),`${`
193
+ `.repeat(i)}${"".padStart(e*r.length,r)}${n}`);return Or(0,t.uri,o,{edit:c,codeActionTitle:"Move to new line"},a)}},Xy=(t,e,r,n,i="")=>{let s=`${"".padStart(e*r.length,r)}${i}`,o=Z.Position.create(t.pos.line,0),a=Z.Position.create(t.pos.line,t.pos.col),c=Z.Range.create(o,a),l=PU(n,c);if(s===l)return[];let u=Z.TextEdit.replace(c,s);return[Or(5,t.uri,o,{edit:u,codeActionTitle:"Fix indentation",templateStrings:[s.replaceAll(" ","\xB7").replaceAll(" ","\u2192")]},a)]},vt=(t,e,r=1,n=!1)=>{if(!t.nextToken)return[];if(t.nextToken?.pos.line!==t.pos.line){if(n)return[];let c=Ef(t.nextToken,e,0);if(!c)throw new Error("remove new LinesEdit must be defined");return r&&(c.raw.edit.newText=`${" ".repeat(r)}${c.raw.edit.newText}`),[c]}if(r===0){if(t.nextToken.pos.col===t.pos.colEnd)return[];let c=Z.Position.create(t.pos.line,t.pos.colEnd),l=Z.Position.create(t.nextToken.pos.line,t.nextToken.pos.col),u=Z.TextEdit.del(Z.Range.create(c,l));return[Or(1,t.uri,c,{edit:u,codeActionTitle:"Remove space(s)",templateStrings:["0"]},l)]}if(t.pos.colEnd===t.nextToken.pos.col){let c=Z.Position.create(t.nextToken.pos.line,t.nextToken.pos.col),l=Z.TextEdit.insert(c," ".repeat(r));return[Or(1,t.uri,c,{edit:l,codeActionTitle:"Insert Space(s)",templateStrings:[r.toString()]})]}let i=t.nextToken.pos.col-t.pos.colEnd;if(i===r&&e[t.pos.line].slice(t.pos.colEnd,t.nextToken.pos.col)===" ".repeat(r))return[];let s=Z.Position.create(t.pos.line,t.pos.colEnd),o=Z.Position.create(t.nextToken.pos.line,t.nextToken.pos.col),a=Z.TextEdit.replace(Z.Range.create(s,o)," ".repeat(r));return[Or(1,t.uri,s,{edit:a,codeActionTitle:i>r?"Remove space(s)":"Insert space(s)",templateStrings:[r.toString()]},o)]},Dc=(t,e)=>t.slice(1).flatMap(r=>r.firstToken.prevToken?vt(r.firstToken.prevToken,e):[]),pU=async(t,e,r,n,i,s,o)=>{if(!le(e.uri,r))return[];let a=[];if(a.push(...Kr(e.firstToken,n,i,s,void 0,e.firstToken.prevToken?.value==="{"&&!e.topComment||e.topComment?1:2,!0)),e instanceof Ge||e instanceof lr)if(a.push(...Dc(e.labels,s)),e instanceof Ge){e.labels.length&&e.name&&e.name.firstToken.prevToken&&a.push(...vt(e.name.firstToken.prevToken,s));let c=e.name&&e.openScope?vt(e.name.lastToken,s):[];a.push(...c)}else{e.labels.length&&e.reference?.firstToken.prevToken&&a.push(...vt(e.reference.firstToken.prevToken,s));let c=e.reference&&e.openScope?vt(e.reference.lastToken,s):[];a.push(...c)}else e instanceof Dt&&e.firstToken.value==="/"&&e.openScope&&a.push(...vt(e.firstToken,s,1));return a.push(...(await Promise.all(e.children.flatMap(c=>tE(t,c,r,o,s,n+1)))).flat()),e.closeScope&&(e.openScope&&e.closeScope.prevToken===e.openScope?a.push(...vt(e.openScope,s,0)):a.push(...Kr(e.closeScope,n,i,s,void 0,1,!0))),e.lastToken.value===";"&&e.closeScope&&a.push(...Df(e.closeScope,e.lastToken)),a},hU=(t,e,r,n,i,s)=>{let o=[];if(o.push(...Dc(e.labels,s)),e.labels.length&&e.value?.firstToken.prevToken&&o.push(...vt(e.value.firstToken.prevToken,s)),e.firstToken.prevToken)if(e.firstToken.pos.line!==e.firstToken.prevToken?.pos.line&&e.firstToken.prevToken!==i){let a=Ef(e.firstToken,s,1,!0);a&&o.push(a),o.push(...Xy(e.firstToken,r,n.singleIndent,s,Cc(n,t+4)))}else o.push(...vt(e.firstToken.prevToken,s,i&&e.firstToken.prevToken===i?0:1));return e.value instanceof Ee&&o.push(...Pf(e.value,s,r,n,t+4)),o},mU=(t,e,r,n,i)=>{let s=[];return e instanceof jt||e instanceof Ri?e.openBracket&&e.openBracket?.nextToken===e.closeBracket?s.push(...vt(e.openBracket,i,0)):(s.push(...e.values.flatMap(o=>hU(t,o,r,n,e.openBracket,i))),e.closeBracket?.prevToken&&(e.values.at(-1)?.lastToken===e.closeBracket?.prevToken||e.closeBracket?.prevToken.value==="/"&&e.closeBracket?.prevToken?.prevToken?.value==="*"?s.push(...vt(e.closeBracket.prevToken,i,e.closeBracket.prevToken===e.values.at(-1)?.lastToken?0:1)):s.push(...Kr(e.closeBracket,r,n.singleIndent,i)))):e instanceof Ee&&s.push(...Pf(e,i,r,n,t)),s},Pf=(t,e,r,n,i)=>t instanceof In?gU(t,e):t instanceof Zn?yU(t,e,r,n,i):[],gU=(t,e)=>{let r=[];return r.push(...vt(t.functionName.lastToken,e,0)),t.lastToken.value===")"&&t.lastToken.prevToken&&r.push(...vt(t.lastToken.prevToken,e,0)),r},yU=(t,e,r,n,i)=>{let s=[];if(t.openBracket&&t.openBracket.nextToken&&s.push(...vt(t.openBracket,e,0)),s.push(...Pf(t.expression,e,r,n,i)),t.join?.forEach(o=>{o.operator.firstToken.prevToken&&s.push(...vt(o.operator.firstToken.prevToken,e)),o.expression.firstToken.prevToken?.pos.line===o.expression.firstToken.pos.line?s.push(...vt(o.expression.firstToken.prevToken,e)):s.push(...Kr(o.expression.firstToken,r,n.singleIndent,e,Cc(n,i))),s.push(...Pf(o.expression,e,r,n,i))}),!t.join?.length&&!(t.expression instanceof Zn)&&(t.expression instanceof In||t.expression instanceof St)){let o=[];if(t.openBracket){let a=Z.Position.create(t.openBracket.pos.line,t.openBracket.pos.col),c=Z.Position.create(t.openBracket.pos.line,t.openBracket.pos.colEnd);o.push(Z.TextEdit.del(Z.Range.create(a,c)))}if(t.closeBracket){let a=Z.Position.create(t.closeBracket.pos.line,t.closeBracket.pos.col),c=Z.Position.create(t.closeBracket.pos.line,t.closeBracket.pos.colEnd);o.push(Z.TextEdit.del(Z.Range.create(a,c)))}s.push(Or(7,t.uri,o[0].range.start,{edit:o,codeActionTitle:"Remove (...)"},o[o.length-1].range.end))}return t.closeBracket&&t.closeBracket.prevToken&&s.push(...vt(t.closeBracket.prevToken,e,0)),s},TU=(t,e,r,n,i)=>{let s=[];return s.push(...Dc(e.startLabels,i)),s.push(...mU(t,e.value,r,n,i)),s.push(...Dc(e.endLabels,i)),s},Cc=(t,e)=>{if(t.insertSpaces)return"".padStart(e," ");let r=Math.floor(e/t.tabSize),n=e%t.tabSize;return`${"".padStart(r," ")}${"".padStart(n," ")}`},vU=(t,e,r,n,i,s)=>{let o=[];return e.values.forEach((a,c)=>{if(!a)return[];let l=a.firstToken.prevToken,u=c?e.values.at(c-1):void 0;if(l)if(l.pos.line===a.firstToken.pos.line)if(l.value===","&&u?.lastToken.pos.line!==a.firstToken.pos.line&&l.prevToken?.pos.line!==a.firstToken.pos.line){let d=Zw(a.firstToken,r,n.singleIndent,Cc(n,t+3));d&&o.push(d)}else o.push(...vt(l,i,1));else if(s&&a.firstToken.prevToken===s)o.push(...vt(s,i));else{let d=Ef(a.firstToken,i,1,!0);d&&o.push(d),o.push(...Xy(a.firstToken,r,n.singleIndent,i,Cc(n,t+3)))}o.push(...TU(t,a,r,n,i)),a.nextValueSeparator&&o.push(...Df(a.lastToken,a.nextValueSeparator))}),o},bU=(t,e,r,n,i)=>{if(!le(t.uri,i))return[];let s=[];return s.push(...Kr(t.firstToken,e,r.singleIndent,n,void 0,void 0,t.firstToken.prevToken?.value==="{")),s.push(...Dc(t.labels,n)),t.labels.length&&t.propertyName?.firstToken.prevToken&&s.push(...vt(t.propertyName.firstToken.prevToken,n)),t.values&&(t.propertyName&&s.push(...vt(t.propertyName?.lastToken,n)),s.push(...vU(t.propertyName?.name.length??0,t.values,e,r,n,t.assignOperatorToken))),t.lastToken.value===";"&&s.push(...Df(t.children[t.children.length-1].lastToken,t.lastToken)),s},Kr=(t,e,r,n,i,s,o)=>{let a=[],c=Zw(t,e,r,i,s);if(c)a.push(c);else{let l=Ef(t,n,s,o);l&&a.push(l),a.push(...Xy(t,e,r,n,i))}return a},Df=(t,e)=>{if(t.pos.line===e.pos.line&&t.pos.colEnd+1===e.pos.colEnd)return[];if(t.nextToken===e){let s=Z.Position.create(t.pos.line,t.pos.colEnd),o=Z.Position.create(e.pos.line,e.pos.col),a=Z.TextEdit.del(Z.Range.create(s,o));return[Or(1,t.uri,s,{edit:a,codeActionTitle:"Remove white space",templateStrings:["0"]},o)]}let r=Z.Position.create(t.pos.line,t.pos.colEnd),n=Z.Position.create(e.pos.line,e.pos.colEnd),i=[Z.TextEdit.insert(r,e.value),Z.TextEdit.del(Z.Range.create(Z.Position.create(e.prevToken?.pos.line??e.pos.line,e.prevToken?.pos.colEnd??e.pos.col),n))];return[Or(6,t.uri,r,{edit:i,codeActionTitle:"Move token",templateStrings:[e.value]},n)]},_U=(t,e,r,n)=>{let i=[];i.push(...Kr(t.firstToken,e,r,n));let s=vt(t.keyword.lastToken,n);return i.push(...s),t.lastToken.value===";"&&i.push(...Df(t.children[t.children.length-1].lastToken,t.lastToken)),i},SU=(t,e,r,n,i)=>{if(r===void 0)return[];if(!le(t.uri,e))return[];let s=[];s.push(...Kr(t.firstToken,r.level,n,i));let o=vt(t.keyword.lastToken,i);return s.push(...o),s},NU=(t,e,r,n,i)=>t.comments.length===1&&t.firstToken.pos.line===t.firstToken.prevToken?.pos.line?[]:t.comments.flatMap((s,o)=>kU(s,t,e,r,n,o?o===t.comments.length-1?"last":"comment":"first",i)),eE=(t,e,r="")=>{let n=e?Uy(e):void 0;if(!n)return r;let i=Ws(e),s=n.propertyName?.name.length??0;return`${`${Cc(t,s+(i?4:3)+(r.length-r.trimStart().length))}`}${r.trimStart()}`},kU=(t,e,r,n,i,s,o)=>{if(!t.firstToken.prevToken)return Kr(t.firstToken,r?.level??0,n,i);if(t.firstToken.pos.line===t.firstToken.prevToken?.pos.line)return vt(t.firstToken.prevToken,i,1);if(r===void 0)return[];let a,c;s==="first"&&!e.astBeforeComment&&e.astAfterComment instanceof lt&&(a=!0,c=e.firstToken.prevToken?.value==="{"?1:2);let l=[],u="",d=t.toString();switch(s==="last"&&d.trim()!==""&&t.lastToken.prevToken&&(s="comment",l.push(...Kr(t.lastToken.prevToken,r?.level??0,n,i," "))),s){case"comment":u=t.firstToken.value==="*"?" ":" * ";break;case"first":break;case"last":u=" ";break}return r?.inAst instanceof lt?l.push(...Kr(t.firstToken,r?.level??0,n,i,u,c,a)):l.push(...Kr(t.firstToken,r?.level??0,n,i,eE(o,r?.inAst,u),c,a)),l},RU=(t,e,r,n,i)=>{if(!t.firstToken.prevToken)return Kr(t.firstToken,e?.level??0,r,n);if(t.firstToken.pos.line===t.firstToken.prevToken.pos.line)return[];let o,a;return!t.astBeforeComment&&t.astAfterComment instanceof lt&&(o=!0,a=t.firstToken.prevToken?.value==="{"?1:2),Kr(t.firstToken,e?.level??0,r,n,eE(i,e?.inAst),a,o)},tE=async(t,e,r,n,i,s=0)=>{let o=t.options.tabSize,a=t.options.insertSpaces,c=a?" ".repeat(o):" ",l={tabSize:o,insertSpaces:a,singleIndent:c};return e instanceof lt?pU(t,e,r,s,c,i,n):e instanceof nt?bU(e,s,l,i,r):e instanceof vr?_U(e,s,c,i):e instanceof Pi?SU(e,r,await n(e),c,i):e instanceof un?RU(e,await n(e),c,i,l):e instanceof ln?NU(e,await n(e),c,i,l):[]};function PU(t,e){let r=t[e.start.line],n=t[e.end.line];if(e.start.line===e.end.line)return r.substring(e.start.character,e.end.character);let i=t.slice(e.start.line+1,e.end.line);return[r.substring(e.start.character),...i,n.substring(0,e.end.character)].join(`
194
194
  `)}function wU(t){switch(t){case"EMPTY":return"EMPTY";case"U32":return"U32";case"U64":return"U64";case"STRING":return"STRING";case"PROP_ENCODED_ARRAY":return"PROP_ENCODED_ARRAY";case"STRINGLIST":return"STRINGLIST";case"BYTESTRING":return"BYTESTRING";case"ANY":return"ANY";case"UNKNOWN":return"UNKNOWN"}}var Y=class{constructor(e,r,n="optional",i=void 0,s,o){this.name=e;this.type=r;this.def=i;this.additionalTypeCheck=o;this.hideAutoComplete=!1;this.list=!1;this.onHover=()=>({kind:wt.MarkupKind.Markdown,value:["### Type","**DTS native type** ",`${this.type.map(e=>e.types.map(wU).join(" or ")).join(",")}
195
195
 
196
196
  `,...this.bindingType?["**Binding type** ",`${this.bindingType}
@@ -201,7 +201,7 @@ ${r.comment}`:r.comment}this.doc.range[2]=r.offset;break}default:this.errors.pus
201
201
 
202
202
  `)]:[]].join(`
203
203
  `)});this.signatureArgsCyclic=!1;typeof n!="function"?this.required=()=>n:this.required=n,typeof s!="function"?(this.allowedValues=s,this.values=()=>s===void 0?i?[i]:[]:i&&s.indexOf(i)===-1?[i,...s]:s):this.values=s}getNameMatch(e){return typeof this.name=="string"?this.name===e:this.name.test(e)}validateProperty(e,r,n,i){let s=this.required(r);if(i){if(s==="omitted")return[j(11,i.ast.firstToken,i.ast.lastToken,i.ast,{templateStrings:[n]})]}else{if(s==="required"){let l=e.getOrderedNodeAst(r),u=Yo(l),d="";if(this.type.length===1&&this.type[0].types.length===1)switch(this.type[0].types[0]){case"U32":case"U64":case"PROP_ENCODED_ARRAY":d=` = <${n==="reg"&&r.address?r.address.map(f=>`0x${f.toString(16)}`).join(" "):""}>`;break;case"STRING":case"STRINGLIST":d=' = ""';break;case"BYTESTRING":d=" = []";break}return[...l.map((f,p)=>{let g=f.openScope??u[p].lastToken,h=u[p];return j(0,h.firstToken,h.lastToken,h,{templateStrings:[n],edit:wt.TextEdit.insert(wt.Position.create(g.pos.line,g.pos.col+1),`
204
- ${"".padEnd(ea(u[p].uri,f),e.context.formattingOptions.insertSpaces?" ".repeat(e.context.formattingOptions.tabSize):" ")}${n}${d};`)})})]}return[]}let o=EU(i),a=[],c=(l,u,d)=>{if(d??=i.ast,!(l.some(p=>p==u)||l.some(p=>p=="STRINGLIST")&&(u==="STRING"||u==="STRINGLIST")||l.some(p=>p=="PROP_ENCODED_ARRAY")&&(u==="U32"||u==="U64"))){let p=[];l.forEach(g=>{switch(g){case"EMPTY":p.push(1);break;case"STRING":p.push(2);break;case"STRINGLIST":p.push(3);break;case"U32":p.push(5);break;case"U64":p.push(6);break;case"PROP_ENCODED_ARRAY":p.push(7);break}}),p.length&&a.push(j(p,d.firstToken,d.lastToken,d,{templateStrings:[i.name]}))}};if(this.type[0].types.some(l=>l==="ANY"))return[];if(this.type.length>1){let l=this.type;if(!this.list&&this.type.length!==o.length){let u=i.ast.values??i.ast;a.push(j(4,u.firstToken,u.lastToken,u,{templateStrings:[n,this.type.length.toString()]}))}else o.forEach((u,d)=>{if(l[0].types.every(f=>f!==u)){let f=i.ast.values?.values[d]??i.ast;a.push(j(3,f.firstToken,f.lastToken,f))}})}else{if(this.type[0].types.some(u=>u==="STRINGLIST"))o.some(u=>c(["STRINGLIST"],u,i.ast.values?.values[0]?.value));else if(this.list||this.type.length===1&&this.type[0].types.filter(u=>u!=="EMPTY").every(u=>u==="PROP_ENCODED_ARRAY"))o.some(u=>c(this.type[0].types,u,i.ast.values?.values[0]?.value));else if(o.length>1&&this.type[0].types.some(u=>u!=="EMPTY")){let u=i.ast.propertyName??i.ast;a.push(j(8,u.firstToken,u.lastToken,u,{linkedTo:(i.ast.values?.values.slice(1)??[]).filter(d=>!!d),templateStrings:[i.name]}))}else o.length===1&&c(this.type[0].types,o[0],i.ast.values?.values[0]?.value);let l=this.values(i);if(a.length===0&&(a.push(...this.additionalTypeCheck?.(i,e.context.macros)??[]),l.length&&this.type[0].types.some(u=>u==="STRING"))){let u=i.ast.values?.values[0]?.value;if(!l.some(d=>u.value===d)){let d=i.ast.values?.values[0]?.value??i.ast;a.push(j(9,d.firstToken,d.lastToken,d,{templateStrings:[this.values(i).map(f=>`'${f}'`).join(" or ")]}))}}}return a}getPropertyCompletionItems(e,r,n){let i=this.type.at(r);return i?.types.some(s=>s==="STRING")?e.ast.values?.values&&e.ast.values.values?.length>1?[]:this.values(e).map(s=>({label:`"${s}"`,kind:wt.CompletionItemKind.Variable,sortText:s===this.def?`A${s}`:`Z${s}`,insertText:n?`${s}`:`"${s}"`})):i?.types.some(s=>s==="U32"||s==="U64")?this.values(e).map(s=>({label:`<${s}>`,kind:wt.CompletionItemKind.Variable,sortText:s===this.def?`A${s}`:`Z${s}`,insertText:n?`${s}`:`<${s}>`})):[]}},EU=t=>t.ast.values?t.ast.values.values.map(e=>DU(e)):["EMPTY"],DU=t=>t?t.value instanceof ne?"STRING":t.value instanceof jt?t.value.values.length===1?"U32":t.value.values.length===2?"U64":"PROP_ENCODED_ARRAY":t.value instanceof ie||t.value instanceof it?"U32":"BYTESTRING":"UNKNOWN",Ac=class{constructor(){this.extends=new Set}},Nt=class extends Ac{constructor(r=()=>[]){super();this.additionalValidations=r;this.#e=[];this.noMismatchPropertiesAllowed=!1;this.warnMismatchProperties=!1}#e;#t;getIssue(r,n){let i=[];if(n.disabled){let a=n.getProperty("status");return[...n.definitions,...n.referencedBy].forEach(c=>i.push(j(21,c.firstToken,c.lastToken,c,{severity:wt.DiagnosticSeverity.Hint,linkedTo:[...a?.ast?[a?.ast]:[]],tags:[wt.DiagnosticTag.Unnecessary]}))),i}let s=new Set,o=this.properties.flatMap(a=>{if(a.name==="reg"&&a.required(n)==="required"&&!n.address&&n.properties.find(u=>u.name==="reg")){let u=n.regArray(r.context.macros)?.at(0)?.startAddress.map(f=>f.toString(16)).join(","),d=n.definitions.at(-1).name??n.definitions.at(-1);i.push(j(36,d.firstToken,d.lastToken,d,{linkedTo:n.definitions.slice(0,-1).map(f=>f.name??f),edit:u?n.definitions.filter(f=>!!f.name).map(f=>wt.TextEdit.insert(wt.Position.create(f.name.lastToken.pos.line,f.name.lastToken.pos.colEnd),`@${u}`)):void 0,codeActionTitle:"Add Node Address"}))}if(typeof a.name=="string"){let u=n.getProperty(a.name);return u&&s.add(u),a.validateProperty(r,n,a.name,u)}let c=n.properties.filter(u=>a.getNameMatch(u.name));c.forEach(u=>s.add(u));let l=this.properties.filter(u=>u!==a)??[];return l.length&&c.some(u=>l.some(d=>d.getNameMatch(u.name)))?[]:c.flatMap(u=>a.validateProperty(r,n,u.name,u))});return s.size!==n.properties.length&&(this.noMismatchPropertiesAllowed||this.warnMismatchProperties)&&n.properties.filter(c=>!s.has(c)).forEach(c=>{i.push(j(this.warnMismatchProperties?34:27,c.ast.firstToken,c.ast.lastToken,c.ast,{severity:this.warnMismatchProperties?wt.DiagnosticSeverity.Warning:wt.DiagnosticSeverity.Error,templateStrings:[c.name],edit:wt.TextEdit.del(Wr(c.ast.firstToken.prevToken,c.ast.lastToken,!1))}))}),[...i,...o,...this.additionalValidations(r,n)]}get properties(){return this.#e}addProperty(r){Array.isArray(r)?r.forEach(n=>this.#e.push(n)):this.#e.push(r),this.#e.sort((n,i)=>typeof n.name=="string"&&typeof i.name=="string"||typeof n.name!="string"&&typeof i.name!="string"?0:typeof n.name=="string"?-1:1)}get childNodeType(){return this.#t}set childNodeType(r){r&&(this.#t=n=>{let i=r(n);return i.bindingsPath=this.bindingsPath,i})}getOnPropertyHover(r){let n=this.properties.find(i=>i.getNameMatch(r));return n?.onHover.bind(n)()}getSignatureHelp(r,n,i,s){let o=this.properties.find(f=>f.getNameMatch(r.name)),a=o?.signatureArgs;if(!o||!a)return;let c=r.getArgumentIndex(i),l=r.getArgumentIndex(s),d=r.getArgumentIndex(n)??l??(c!==void 0?c+1:void 0);if(Pw(a)){let f=0;if(d!==void 0){let p=d,g=d?a.findIndex(h=>f<=p&&h.length+f>p?!0:(f+=h.length,!1)):void 0;g!==void 0&&(g>1&&(d=d-a.slice(0,g-1).reduce((h,T)=>h+T.length,0)),a=a.slice(g?g-1:0,g+2))}return{signatures:[wt.SignatureInformation.create(`${r.name} = ${a.map(p=>`<${p.map(g=>g.label).join(" ")}>`).join(`,
204
+ ${"".padEnd(ea(u[p].uri,f),e.context.formattingOptions.insertSpaces?" ".repeat(e.context.formattingOptions.tabSize):" ")}${n}${d};`)})})]}return[]}let o=EU(i),a=[],c=(l,u,d)=>{if(d??=i.ast,!(l.some(p=>p==u)||l.some(p=>p=="STRINGLIST")&&(u==="STRING"||u==="STRINGLIST")||l.some(p=>p=="PROP_ENCODED_ARRAY")&&(u==="U32"||u==="U64"))){let p=[];l.forEach(g=>{switch(g){case"EMPTY":p.push(1);break;case"STRING":p.push(2);break;case"STRINGLIST":p.push(3);break;case"U32":p.push(5);break;case"U64":p.push(6);break;case"PROP_ENCODED_ARRAY":p.push(7);break}}),p.length&&a.push(j(p,d.firstToken,d.lastToken,d,{templateStrings:[i.name]}))}};if(this.type[0].types.some(l=>l==="ANY"))return[];if(this.type.length>1){let l=this.type;if(!this.list&&this.type.length!==o.length){let u=i.ast.values??i.ast;a.push(j(4,u.firstToken,u.lastToken,u,{templateStrings:[n,this.type.length.toString()]}))}else o.forEach((u,d)=>{if(l[0].types.every(f=>f!==u)){let f=i.ast.values?.values[d]??i.ast;a.push(j(3,f.firstToken,f.lastToken,f))}})}else{if(this.type[0].types.some(u=>u==="STRINGLIST"))o.some(u=>c(["STRINGLIST"],u,i.ast.values?.values[0]?.value));else if(this.list||this.type.length===1&&this.type[0].types.filter(u=>u!=="EMPTY").every(u=>u==="PROP_ENCODED_ARRAY"))o.some(u=>c(this.type[0].types,u,i.ast.values?.values[0]?.value));else if(o.length>1&&this.type[0].types.some(u=>u!=="EMPTY")){let u=i.ast.propertyName??i.ast;a.push(j(8,u.firstToken,u.lastToken,u,{linkedTo:(i.ast.values?.values.slice(1)??[]).filter(d=>!!d),templateStrings:[i.name]}))}else o.length===1&&c(this.type[0].types,o[0],i.ast.values?.values[0]?.value);let l=this.values(i);if(a.length===0&&(a.push(...this.additionalTypeCheck?.(i,e.context.macros)??[]),l.length&&this.type[0].types.some(u=>u==="STRING"))){let u=i.ast.values?.values[0]?.value;if(!l.some(d=>u.value===d)){let d=i.ast.values?.values[0]?.value??i.ast;a.push(j(9,d.firstToken,d.lastToken,d,{templateStrings:[this.values(i).map(f=>`'${f}'`).join(" or ")]}))}}}return a}getPropertyCompletionItems(e,r,n){let i=this.type.at(r);return i?.types.some(s=>s==="STRING")?e.ast.values?.values&&e.ast.values.values?.length>1?[]:this.values(e).map(s=>({label:`"${s}"`,kind:wt.CompletionItemKind.Variable,sortText:s===this.def?`A${s}`:`Z${s}`,insertText:n?`${s}`:`"${s}"`})):i?.types.some(s=>s==="U32"||s==="U64")?this.values(e).map(s=>({label:`<${s}>`,kind:wt.CompletionItemKind.Variable,sortText:s===this.def?`A${s}`:`Z${s}`,insertText:n?`${s}`:`<${s}>`})):[]}},EU=t=>t.ast.values?t.ast.values.values.map(e=>DU(e)):["EMPTY"],DU=t=>t?t.value instanceof ne?"STRING":t.value instanceof jt?t.value.values.length===1?"U32":t.value.values.length===2?"U64":"PROP_ENCODED_ARRAY":t.value instanceof ie||t.value instanceof it?"U32":"BYTESTRING":"UNKNOWN",Ac=class{constructor(){this.extends=new Set}},Nt=class extends Ac{constructor(r=()=>[]){super();this.additionalValidations=r;this.#e=[];this.noMismatchPropertiesAllowed=!1;this.warnMismatchProperties=!1}#e;#t;getIssue(r,n){let i=[];if(n.disabled){let a=n.getProperty("status");return[...n.definitions,...n.referencedBy].forEach(c=>i.push(j(21,c.firstToken,c.lastToken,c,{severity:wt.DiagnosticSeverity.Hint,linkedTo:[...a?.ast?[a?.ast]:[]],tags:[wt.DiagnosticTag.Unnecessary]}))),i}let s=new Set,o=this.properties.flatMap(a=>{if(a.name==="reg"&&a.required(n)==="required"&&!n.address&&n.properties.find(u=>u.name==="reg")){let u=n.regArray(r.context.macros)?.at(0)?.startAddress.map(f=>f.toString(16)).join(","),d=n.definitions.at(-1).name??n.definitions.at(-1);i.push(j(36,d.firstToken,d.lastToken,d,{linkedTo:n.definitions.slice(0,-1).map(f=>f.name??f),edit:u?n.definitions.filter(f=>!!f.name).map(f=>wt.TextEdit.insert(wt.Position.create(f.name.lastToken.pos.line,f.name.lastToken.pos.colEnd),`@${u}`)):void 0,codeActionTitle:"Add Node Address"}))}if(typeof a.name=="string"){let u=n.getProperty(a.name);return u&&s.add(u),a.validateProperty(r,n,a.name,u)}let c=n.properties.filter(u=>a.getNameMatch(u.name));c.forEach(u=>s.add(u));let l=this.properties.filter(u=>u!==a)??[];return l.length&&c.some(u=>l.some(d=>d.getNameMatch(u.name)))?[]:c.flatMap(u=>a.validateProperty(r,n,u.name,u))});return s.size!==n.properties.length&&(this.noMismatchPropertiesAllowed||this.warnMismatchProperties)&&n.properties.filter(c=>!s.has(c)).forEach(c=>{i.push(j(this.warnMismatchProperties?34:27,c.ast.firstToken,c.ast.lastToken,c.ast,{severity:this.warnMismatchProperties?wt.DiagnosticSeverity.Warning:wt.DiagnosticSeverity.Error,templateStrings:[c.name],edit:wt.TextEdit.del(Gr(c.ast.firstToken.prevToken,c.ast.lastToken,!1))}))}),[...i,...o,...this.additionalValidations(r,n)]}get properties(){return this.#e}addProperty(r){Array.isArray(r)?r.forEach(n=>this.#e.push(n)):this.#e.push(r),this.#e.sort((n,i)=>typeof n.name=="string"&&typeof i.name=="string"||typeof n.name!="string"&&typeof i.name!="string"?0:typeof n.name=="string"?-1:1)}get childNodeType(){return this.#t}set childNodeType(r){r&&(this.#t=n=>{let i=r(n);return i.bindingsPath=this.bindingsPath,i})}getOnPropertyHover(r){let n=this.properties.find(i=>i.getNameMatch(r));return n?.onHover.bind(n)()}getSignatureHelp(r,n,i,s){let o=this.properties.find(f=>f.getNameMatch(r.name)),a=o?.signatureArgs;if(!o||!a)return;let c=r.getArgumentIndex(i),l=r.getArgumentIndex(s),d=r.getArgumentIndex(n)??l??(c!==void 0?c+1:void 0);if(Pw(a)){let f=0;if(d!==void 0){let p=d,g=d?a.findIndex(h=>f<=p&&h.length+f>p?!0:(f+=h.length,!1)):void 0;g!==void 0&&(g>1&&(d=d-a.slice(0,g-1).reduce((h,T)=>h+T.length,0)),a=a.slice(g?g-1:0,g+2))}return{signatures:[wt.SignatureInformation.create(`${r.name} = ${a.map(p=>`<${p.map(g=>g.label).join(" ")}>`).join(`,
205
205
  `)};`,this.description,...a.flat())],activeSignature:0,activeParameter:d}}return o.signatureArgsCyclic&&d&&(d=d%a.length),{signatures:[wt.SignatureInformation.create(`${r.name} = <${a.map(f=>f.label).join(" ")}>;`,this.description,...a)],activeSignature:0,activeParameter:d}}getPropertyListCompletionItems(r){return this.properties.filter(n=>!n.hideAutoComplete&&n.required(r)!=="omitted"&&typeof n.name=="string").map(n=>{let i=r&&n.required(r),s=!!r.properties.some(a=>n.getNameMatch(a.name)),o="a";return i==="required"?o=s?"Y":"!":o=s?"Z":"B",{label:`${n.name}`,kind:wt.CompletionItemKind.Property,sortText:`${o}${n.name}`}})??[]}};var xe=t=>{if(!t?.values.some(e=>!(e?.value instanceof jt)))return t?.values.flatMap(e=>e.value.values.map(r=>r.value))??[]};var $e=(t,e,r,n)=>{let i=t.ast.values?.values.at(e)?.value;if(i instanceof jt){let s=i.values.at(r);if(s?.value instanceof Ee){let o=s.value.evaluate(n);if(typeof o=="number")return o}}},dn=(t,e,r=0)=>{if(t instanceof br){if(t?.value instanceof jt){let n=t.value.values.at(r);if(n?.value instanceof cr)return e.getPhandle(n.value.value);if(n?.value instanceof ie)return n.value.linksTo;if(n?.value instanceof it)return n.value.path?.pathParts.at(-1)?.linksTo}}else{if(t instanceof cr)return e.getPhandle(t.value);if(t instanceof ie)return t.linksTo;if(t instanceof it)return t.path?.pathParts.at(-1)?.linksTo}},z=t=>Array.isArray(t)?[{types:t}]:[{types:[t]}];var rE=()=>{let t=new Y("compatible",z("STRINGLIST"));return t.description=["The compatible property value consists of one or more strings that define the specific programming model for the device. This list of strings should be used by a client program for device driver selection. The property value consists of a concatenated list of null terminated strings, from most specific to most general. They allow a device to express its compatibility with a family of similar devices, potentially allowing a single device driver to match against several devices.",'The recommended format is "manufacturer, model", where manufacturer is a string describing the name of the manufacturer (such as a stock ticker symbol), and model specifies the model number.',"The compatible string should consist only of lowercase letters, digits and dashes, and should start with a letter. A single comma is typically only used following a vendor prefix. Underscores should not be used."],t.examples=['```devicetree\ncompatible = "fsl,mpc8641", "ns16550";\n```',"In this example, an operating system would first try to locate a device driver that supported fsl, mpc8641. If a driver was not found, it would then try to locate a driver that supported the more general ns 16550 device type."],t};var Cf=$(U());var nE=()=>{let t=new Y("device_type",z("STRING"),"optional",void 0,e=>e.parent.name==="cpu"||e.parent.name==="memory"?[e.parent.name]:[],e=>{if(e.parent.name==="cpu"||e.parent.name==="memory"){let r=e.ast.values?.values.at(0)?.value;if(r instanceof ne&&r.value!==e.parent.name)return[j(e.parent.name==="cpu"?12:13,e.ast.firstToken,e.ast.lastToken,e.ast,{templateStrings:[e.name]})]}return t.required(e.parent)!=="required"?[j(14,e.ast.firstToken,e.ast.lastToken,e.ast,{severity:Cf.DiagnosticSeverity.Hint,tags:[Cf.DiagnosticTag.Deprecated],templateStrings:[e.name]})]:[]});return t.description=["The device_type property was used in IEEE 1275 to describe the device's FCode programming model. Because DTSpec does not have FCode, new use of the property is deprecated, and it should be included only on cpu and memory nodes for compatibility with IEEE 1275-derived devicetrees."],t};var iE=()=>{let t=new Y("#interrupt-cells",z("U32"));return t.description=["The #interrupt-cells property defines the number of cells required to encode an interrupt specifier for an interrupt domain."],t};var sE=()=>{let t=new Y("interrupt-controller",z("EMPTY"),"optional");return t.description=["The presence of an interrupt-controller property defines a node as an interrupt controller node."],t};var oE=()=>{let t=new Y("interrupt-parent",z("U32"));return t.description=["Because the hierarchy of the nodes in the interrupt tree might not match the devicetree, the interrupt-parent property is available to make the definition of an interrupt parent explicit. The value is the phandle to the interrupt parent. If this property is missing from a device, its interrupt parent is assumed to be its devicetree parent."],t};var Jy=$(U());var aE=()=>{let t=new Y("interrupts",z("PROP_ENCODED_ARRAY"),"optional",void 0,void 0,(e,r)=>{let n=[],i=xe(e.ast.values);if(!i)return n;let s=e.parent;if(s.getProperty("interrupts-extended"))return n;let o=s.interruptsParent;if(!o?.parentInterruptNode){if(!o?.interruptParent)return n.push(j(16,e.ast.firstToken,e.ast.lastToken,e.ast,{linkedTo:[...e.parent.nodeNameOrLabelRef],templateStrings:[e.name,"interrupt-parent",e.parent.pathString]})),n;let h=o.interruptParent.ast.values?.values.at(0)?.value??o.interruptParent.ast;return n.push(j(17,h.firstToken,h.lastToken,h)),n}let{parentInterruptNode:a}=o,c=a.getProperty("#interrupt-cells");if(!c)return n.push(j(16,e.ast.firstToken,e.ast.lastToken,e.ast,{linkedTo:[...a.nodeNameOrLabelRef],templateStrings:[e.name,"#interrupt-cells",a.pathString]})),n;let l=$e(c,0,0,r);if(!l)return n;let u=[...Array.from({length:l},()=>"Interrupt")],d=a.bindingLoader?.type?a.nodeType?.cellsValues?.find(h=>h.specifier==="interrupt"):void 0;d?(u=d.values,t.signatureArgs=d.values.map(h=>Jy.ParameterInformation.create(h))):t.signatureArgs=u.map(h=>Jy.ParameterInformation.create(h));let f=a.getProperty("interrupt-map"),p=s.parent?.getProperty("#address-cells");if(f&&!p){let h=e.ast.propertyName??e.ast;n.push(j(16,h.firstToken,h.lastToken,h,{linkedTo:[...e.parent.nodeNameOrLabelRef],templateStrings:[e.name,"#address-cells",s.parent?.pathString??"/"]}))}if(!c)return n.push(j(16,e.ast.firstToken,e.ast.lastToken,e.ast,{linkedTo:[...a.nodeNameOrLabelRef],templateStrings:[e.name,"#interrupt-cells",a.pathString]})),n;let g=0;for(;g<i.length;){let h=i.length-g;if(l>h){let v=i[i.length-1];return n.push(j(19,v.firstToken,v.lastToken,v,{templateStrings:[e.name,`<${u.join(" ")}> `]})),n}let T=i.slice(g,g+l),S=s.mappedReg(r)?.at(0)?.startAddress,_={mappingValuesAst:T,target:a};if(e.nexusMapsTo.push(_),f&&S){let v=a.getNexusMapEntryMatch("interrupt",r,T,S);v?.match?_.mapItem=v.match:n.push(j(31,v.entry.firstToken,v.entry.lastToken,v.entry,{linkedTo:[f.ast]}))}T.every(v=>v instanceof Ee)&&a.interrupControlerMapping.push({expressions:T,node:s,property:e}),g+=l}return n});return t.description=["The interrupts property of a device node defines the interrupt or interrupts that are generated by the device.The value of the interrupts property consists of an arbitrary number of interrupt specifiers. The format of an interrupt specifier is defined by the binding of the interrupt domain root.","interrupts is overridden by the interrupts-extended property and normally only one or the other should be used."],t.examples=["A common definition of an interrupt specifier in an open PIC-compatible interrupt domain consists of two cells; an interrupt number and level/sense information. See the following example, which defines a single interrupt specifier, with an interrupt number of OxA and level/sense encoding of 8.","```devicetree\ninterrupts = <0xA 8>;\n```"],t};var Ic=$(U());var cE=()=>{let t=new Y("interrupts-extended",z("PROP_ENCODED_ARRAY"),"optional",void 0,void 0,(e,r)=>{let n=[],i=e.parent,s=i.getProperty("interrupts");s&&n.push(j(15,s.ast.firstToken,s.ast.lastToken,s.ast,{severity:Ic.DiagnosticSeverity.Warning,linkedTo:[e.ast],templateStrings:[s.name,"is ignored when 'interrupts-extended' is used"]}));let o=i.getProperty("interrupt-parent");o&&n.push(j(15,o.ast.firstToken,o.ast.lastToken,o.ast,{severity:Ic.DiagnosticSeverity.Warning,linkedTo:[e.ast],templateStrings:[o.name,"is ignored when 'interrupts-extended' is used"]}));let a=i.root,c=xe(e.ast.values);if(!c?.length)return[];let l=0,u=0,d=[];for(;l<c.length;){let f=dn(c[l],a);if(!f){let D=c[l];return n.push(j(17,D.firstToken,D.lastToken,D)),n}let p=f.getProperty("#interrupt-cells");if(!p){n.push(j(16,e.ast.firstToken,e.ast.lastToken,e.ast,{linkedTo:[...f.nodeNameOrLabelRef],templateStrings:[e.name,"#interrupt-cells",f.pathString]}));break}let g=$e(p,0,0,r);if(g==null)return n;let h=c.length-l-1,T=f.bindingLoader?.type?f.nodeType?.cellsValues?.find(D=>D.specifier==="interrupt"):void 0;if(T?d.push(["phandle",...T.values]):d.push(["phandle",...Array.from({length:g},()=>"interrupt")]),g>h){let D=c[c.length-1];return n.push(j(19,D.firstToken,D.lastToken,D,{templateStrings:[e.name,`<${d.at(-1).join(" ")}>`]})),n}let S=c.slice(l+1,l+1+g),_=f.getProperty("interrupt-map"),v={mappingValuesAst:S,target:f};e.nexusMapsTo.push(v);let R=i.mappedReg(r)?.at(0)?.startAddress;if(_&&R){let D=f.getNexusMapEntryMatch("interrupt",r,S,R);D?.match?v.mapItem=D.match:n.push(j(31,D.entry.firstToken,D.entry.lastToken,D.entry,{linkedTo:[_.ast]}))}S.every(D=>D instanceof Ee)&&f.interrupControlerMapping.push({expressions:S,node:i,property:e}),l+=g+1,u++}return d.push([`${u}_phandle`,`${u}_interrupt...`]),t.signatureArgs=d.map(f=>f.map(p=>Ic.ParameterInformation.create(p))),n});return t.description=["The interrupts-extended property lists the interrupts) generated by a device. interrupts-extended should be used instead of interrupts when a device is connected to multiple interrupt controllers as it encodes a parent phandle with each interrupt specifier.","The interrupts and interrupts-extended properties are mutually exclusive. A device node should use one or the other, but not both. Using both is only permissible when required for compatibility with software that does not understand interrupts-extended. If both interrupts-extended and interrupts are present then interrupts-extended takes precedence."],t.examples=["This example shows how a device with two interrupt outputs connected to two separate interrupt controllers would describe the connection using an interrupts-extended property. pic is an interrupt controller with an #interrupt-cells specifier of 2, while gic is an interrupt controller with an #interrupts-cells specifier of 1.","```devicetree\ninterrupts-extended = <&pic OXA 8>, <&gic Oxda>;\n```"],t};var lE=()=>{let t=new Y("dma-noncoherent",z("EMPTY"));return t.description=["For architectures which are by default coherent for 1/O, the dma-noncoherent property is used to indicate a device is not capable of coherent DMA operations. Some architectures have non-coherent DMA by default and this property is not applicable."],t};var uE=()=>{let t=new Y("dma-coherent",z("EMPTY"));return t.description=["For architectures which are by default non-coherent for I/O, the dma-coherent property is used to indicate a device is capable of coherent DMA operations. Some architectures have coherent DMA by default and this property is not applicable."],t};var dE=$(U());var fE=()=>{let t=new Y("dma-ranges",z(["EMPTY","PROP_ENCODED_ARRAY"]),"optional",void 0,void 0,(e,r)=>{let n=[],i=e.parent.sizeCells(r),s=e.parent.addressCells(r),o=e.parent.parentAddressCells(r),a=[...Array.from({length:s},(l,u)=>`child-bus-address${s>1?u:""}`),...Array.from({length:o},(l,u)=>`parent-bus-address${o>1?u:""}`),...Array.from({length:i},(l,u)=>`length${i>1?u:""}`)];t.signatureArgs=a.map(l=>dE.ParameterInformation.create(l)),t.signatureArgsCyclic=!0;let c=xe(e.ast.values);if(!c?.length)return[];if(c.length===0||c.length%(s+o+i)!==0){let l=c.at(c.length-c.length%(s+o+i))??e.ast;n.push(j(19,l.firstToken,l.lastToken,l,{templateStrings:[e.name,`<${[...Array.from({length:s},()=>"child-bus-address"),...Array.from({length:o},()=>"parent-bus-address"),...Array.from({length:i},()=>"length")].join(" ")}>`]}))}return n});return t.description=["The dma-ranges property is used to describe the direct memory access (DMA) structure of a memory-mapped bus whose devicetree parent can be accessed from DMA operations originating from the bus. It provides a means of defining a mapping or translation between the physical address space of the bus and the physical address space of the parent of the bus.","The format of the value of the dma-ranges property is an arbitrary number of triplets of (child-bus-address, parent-bus-address, length). Each triplet specified describes a contiguous DMA address range.","- The child-bus-address is a physical address within the child bus' address space. The number of cells to represent the address depends on the bus and can be determined from the #address-cells of this node (the node in which the dma-ranges property appears).","- The parent-bus-address is a physical address within the parent bus' address space. The number of cells to represent the parent address is bus dependent and can be determined from the #address-cells property of the node that defines the parent's address space.","- The length specifies the size of the range in the child's address space. The number of cells to represent the size can be determined from the #size-cells of this node (the node in which the dma-ranges property appears)."],t};var Oc=$(U());var Af=()=>{let t=new Y("ranges",z(["EMPTY","PROP_ENCODED_ARRAY"]),"optional",void 0,void 0,(e,r)=>{let n=[],i=e.parent.sizeCells(r),s=e.parent.addressCells(r),o=e.parent.parentAddressCells(r),a=[...Array.from({length:s},(l,u)=>`child-bus-address${s>1?u:""}`),...Array.from({length:o},(l,u)=>`parent-bus-address${o>1?u:""}`),...Array.from({length:i},(l,u)=>`length${i>1?u:""}`)];t.signatureArgs=a.map(l=>Oc.ParameterInformation.create(l)),t.signatureArgsCyclic=!0;let c=xe(e.ast.values);if(!c?.length)return[];if(c.length===0||c.length%(s+o+i)!==0){let l=c.at(c.length-c.length%(s+o+i))??e.ast;n.push(j(19,l.firstToken,l.lastToken,l,{templateStrings:[e.name,`<${[...Array.from({length:s},()=>"child-bus-address"),...Array.from({length:o},()=>"parent-bus-address"),...Array.from({length:o},()=>"length")].join(" ")}>`]}))}return n.length===0&&e.parent.nodes.forEach(l=>{let u=l.getProperty("reg");u&&l.mappedReg(r)?.forEach(d=>{if(d.missingMapping){let f=l.parent?.getProperty("ranges");n.push(j(35,d.regRangeTokens.start,d.regRangeTokens.end,e.ast,{severity:Oc.DiagnosticSeverity.Warning,linkedTo:f?[f.ast]:[]}));return}!d?.mappingEnd||!d.mappedAst||d.inMappingRange||n.push(j(29,d.regRangeTokens.start,d.regRangeTokens.end,e.ast,{severity:Oc.DiagnosticSeverity.Warning,linkedTo:[d.mappedAst],templateStrings:[u.name,`0x${d.endAddress.map((f,p)=>f.toString(16).padStart(p?8:0,"0")).join("")}`,`0x${d.mappingEnd.map((f,p)=>f.toString(16).padStart(p?8:0,"0")).join("")}`]}))})}),n});return t.description=["The ranges property provides a means of defining a mapping or translation between the address space of the bus (the child address space) and the address space of the bus node's parent (the parent address space).","The format of the value of the ranges property is an arbitrary number of triplets of (child-bus-address, parent-bus-address, length)","- The child-bus-address is a physical address within the child bus' address space. The number of cells to represent the address is bus dependent and can be determined from the #address-cells of this node (the node in which the ranges property appears).","- The parent-bus-address is a physical address within the parent bus' address space. The number of cells to represent the parent address is bus dependent and can be determined from the #address-cells property of the node that defines the parent's address space.","- The length specifies the size of the range in the child's address space. The number of cells to represent the size can be determined from the #size-cells of this node (the node in which the ranges property appears).","If the property is defined with an < empty> value, it specifies that the parent and child address space is identical, and no address translation is required.","If the property is not present in a bus node, it is assumed that no mapping exists between children of the node and the parent address space."],t.examples=["Address Translation Example:",["```devicetree",`soc {
206
206
  compatible = "simple-bus";
207
207
  #address-cells = <1>;
@@ -217,7 +217,7 @@ ${"".padEnd(ea(u[p].uri,f),e.context.formattingOptions.insertSpaces?" ".repeat(e
217
217
  };
218
218
  };`,"```"].join(`
219
219
  `),"The soc node specifies a ranges property of",["```devicetree","<Ox0 Oxe0000000 0x00100000>;","```"].join(`
220
- `),"This property value specifies that for a 1024 KB range of address space, a child node addressed at physical OxO maps to a parent address of physical 0xe0000000. With this mapping, the serial device node can be addressed by a load or store at address 0xe0004600, an offset of 0x4600 (specified in reg) plus the 0xe0000000 mapping specified in ranges."],t};var pE=()=>{let t=new Y("virtual-reg",z("U32"));return t.description=["The virtual-res property specifies an effective address that maps to the first physical address specified in the reg property of the device node. This property enables boot programs to provide client programs with virtual-to-physical mappings that have been set up."],t};var hE=$(U());var mE=()=>{let t=new Y("reg",z("PROP_ENCODED_ARRAY"),e=>e.address!==void 0?"required":"omitted",void 0,void 0,(e,r)=>{let n=[],i=e.parent.parentSizeCells(r),s=e.parent.parentAddressCells(r),o=[...Array.from({length:s},(l,u)=>`address${s>1?u:""}`),...Array.from({length:i},(l,u)=>`size${i>1?u:""}`)];t.signatureArgs=o.map(l=>hE.ParameterInformation.create(l)),t.signatureArgsCyclic=!0;let a=xe(e.ast.values);if(!a)return[];if(a.length===0||a.length%(i+s)!==0){let l=a.at(a.length-a.length%(i+s))??e.ast;return n.push(j(19,l.firstToken,l.lastToken,l,{templateStrings:[e.name,`<${[...Array.from({length:s},()=>"address"),...Array.from({length:i},()=>"size")].join(" ")}>`]})),n}let c=a.slice(0,s).map((l,u)=>$e(e,0,u,r)??0);if(e.parent.address&&on(e.parent.address,c)!==0){let l=e.ast.values?.values.at(0)?.value?.values?.at(0),u=e.ast.values?.values.at(0)?.value?.values?.at(s-1),f=(l&&u?new Q(oe(l.firstToken,u.lastToken)):void 0)??e.ast.values??e.ast;n.push(j(10,f.firstToken,f.lastToken,f,{templateStrings:[e.name]}))}return n});return t.examples=["Suppose a device within a system-on-a-chip had two blocks of registers, a 32-byte block at offset 0x3000 in the SOC and a 256-byte block at offset OxFE00. The reg property would be encoded as follows (assuming #address-cells and #size-cells values of 1):","```devicetree\nreg = <0x3000 0x20 0xFE00 0x100>;\n```"],t};var If=()=>new Y("#size-cells",z("U32"),"optional",1);var Of=()=>{let t=new Y("#address-cells",z("U32"),"optional",2);return t.description=["The #address-cells and #size-cells properties may be used in any device node that has children in the devicetree hierarchy and describes how child device nodes should be addressed. The #address-cells property defines the number of <u32> cells used to encode the address field in a child node's reg property. The #size-cells property defines the number of <u32 > cells used to encode the size field in a child node's reg property.","The #address-cells and #size-cells properties are not inherited from ancestors in the devicetree. They shall be explicitly defined.","A DTSpec-compliant boot program shall supply #address-cells and #size-cells on all nodes that have children.","If missing, a client program should assume a default value of 2 for #address-cells, and a value of 1 for #size-cells."],t.examples=["See the following devicetree excerpt:",["```devicetree",`SOC {
220
+ `),"This property value specifies that for a 1024 KB range of address space, a child node addressed at physical OxO maps to a parent address of physical 0xe0000000. With this mapping, the serial device node can be addressed by a load or store at address 0xe0004600, an offset of 0x4600 (specified in reg) plus the 0xe0000000 mapping specified in ranges."],t};var pE=()=>{let t=new Y("virtual-reg",z("U32"));return t.description=["The virtual-res property specifies an effective address that maps to the first physical address specified in the reg property of the device node. This property enables boot programs to provide client programs with virtual-to-physical mappings that have been set up."],t};var hE=$(U());var mE=()=>{let t=new Y("reg",z("PROP_ENCODED_ARRAY"),e=>e.address!==void 0?"required":"omitted",void 0,void 0,(e,r)=>{let n=[],i=e.parent.parentSizeCells(r),s=e.parent.parentAddressCells(r),o=[...Array.from({length:s},(l,u)=>`address${s>1?u:""}`),...Array.from({length:i},(l,u)=>`size${i>1?u:""}`)];t.signatureArgs=o.map(l=>hE.ParameterInformation.create(l)),t.signatureArgsCyclic=!0;let a=xe(e.ast.values);if(!a)return[];if(a.length===0||a.length%(i+s)!==0){let l=a.at(a.length-a.length%(i+s))??e.ast;return n.push(j(19,l.firstToken,l.lastToken,l,{templateStrings:[e.name,`<${[...Array.from({length:s},()=>"address"),...Array.from({length:i},()=>"size")].join(" ")}>`]})),n}let c=a.slice(0,s).map((l,u)=>$e(e,0,u,r)??0);if(e.parent.address&&an(e.parent.address,c)!==0){let l=e.ast.values?.values.at(0)?.value?.values?.at(0),u=e.ast.values?.values.at(0)?.value?.values?.at(s-1),f=(l&&u?new Q(oe(l.firstToken,u.lastToken)):void 0)??e.ast.values??e.ast;n.push(j(10,f.firstToken,f.lastToken,f,{templateStrings:[e.name]}))}return n});return t.examples=["Suppose a device within a system-on-a-chip had two blocks of registers, a 32-byte block at offset 0x3000 in the SOC and a 256-byte block at offset OxFE00. The reg property would be encoded as follows (assuming #address-cells and #size-cells values of 1):","```devicetree\nreg = <0x3000 0x20 0xFE00 0x100>;\n```"],t};var If=()=>new Y("#size-cells",z("U32"),"optional",1);var Of=()=>{let t=new Y("#address-cells",z("U32"),"optional",2);return t.description=["The #address-cells and #size-cells properties may be used in any device node that has children in the devicetree hierarchy and describes how child device nodes should be addressed. The #address-cells property defines the number of <u32> cells used to encode the address field in a child node's reg property. The #size-cells property defines the number of <u32 > cells used to encode the size field in a child node's reg property.","The #address-cells and #size-cells properties are not inherited from ancestors in the devicetree. They shall be explicitly defined.","A DTSpec-compliant boot program shall supply #address-cells and #size-cells on all nodes that have children.","If missing, a client program should assume a default value of 2 for #address-cells, and a value of 1 for #size-cells."],t.examples=["See the following devicetree excerpt:",["```devicetree",`SOC {
221
221
  #address-cells = <1>;
222
222
  #size-cells = <1>;
223
223
  serial@4600 {
@@ -237,10 +237,10 @@ ${"".padEnd(ea(u[p].uri,f),e.context.formattingOptions.insertSpaces?" ".repeat(e
237
237
  `),"A phandle value of 1 is defined. Another device node could reference the pic node with a phandle value of 1:",["```devicetree",`another-device-node {
238
238
  interrupt-parent = <1>;
239
239
  };`,"```"].join(`
240
- `)],t};var TE=()=>{let t=new Y("model",z("STRING"));return t.description=["The model property value is a <string> that specifies the manufacturer's model number of the device.",'The recommended format is: "manufacturer, model" , where manufacturer is a string describing the name of the manufacturer (such as a stock ticker symbol), and model specifies the model number.'],t.examples=['```devicetree\nmodel = "{sl, MPC8349EMITX" ;\n```'],t};var Mf=$(U());var vE=()=>{let t=new Y("name",z("STRING"),"optional",void 0,void 0,e=>[j(14,e.ast.firstToken,e.ast.lastToken,e.ast,{severity:Mf.DiagnosticSeverity.Warning,tags:[Mf.DiagnosticTag.Deprecated],templateStrings:[e.name]})]);return t.hideAutoComplete=!0,t};var bE=$(U());var _E=()=>{let t=new Y("interrupt-map",z("PROP_ENCODED_ARRAY"),"optional",void 0,void 0,(e,r)=>{let n=[],i=e.parent,s=e.parent.root,o=xe(e.ast.values);if(!o?.length)return[];i.getProperty("#address-cells")||n.push(j(16,e.ast.firstToken,e.ast.lastToken,e.ast,{linkedTo:[...e.parent.nodeNameOrLabelRef],templateStrings:[e.name,"#address-cells",i.pathString]}));let c=i.getProperty("#interrupt-cells");if(!c)return n.push(j(16,e.ast.firstToken,e.ast.lastToken,e.ast,{linkedTo:[...i.nodeNameOrLabelRef],templateStrings:[e.name,"#interrupt-cells",`/${i.path.slice(1).join("/")}`]})),n;let l=i.addressCells(r),u=$e(c,0,0,r),d={};if(u==null)return n;let f=0,p=[],g=0,h=0;for(;f<o.length;){if(p.push([...Array.from({length:l},(M,F)=>`${g}_ChildAddr${l>1?F:""}`),...Array.from({length:u},(M,F)=>`${g}_ChildIntrpt${u>1?F:""}`),`${g}_IntrptParent`,`${g}_ParentAddr...`,`${g}_ParentIntrpt...`]),f+l+u>=o.length){let M=f+l+u,F=o[o.length-1];n.push(j(20,F.firstToken,F.lastToken,F,{templateStrings:[e.name,`after the last value of ${p.at(-1).slice((o.length-h)%M===0?M:(o.length-h)%M).join(" ")}`]}));break}let T=new Q(oe(o.at(f).firstToken,o.at(l+u+f-1).lastToken)),S="";for(let M=f;M<l+u+f;M++){let F=o[M];S+=`${F instanceof Ee?F.evaluate(r).toString():F.toString()}:`}d[S]??=[],d[S].push(T),f+=l+u;let _=l+u+1;if(o.length<f+1){let M=o[o.length-1];n.push(j(20,M.firstToken,M.lastToken,M,{templateStrings:[e.name,`after the last value of ${p.at(-1).slice((o.length-h)%_===0?_:(o.length-h)%_).join(" ")}`]}));break}let v=dn(o[f],s);if(!v){let M=o[f];n.push(j(17,M.firstToken,M.lastToken,M));break}let R=v.addressCells(r),D=v.getProperty("#interrupt-cells");if(!D){let M=o[f];n.push(j(16,M.firstToken,M.lastToken,M,{linkedTo:[...v.nodeNameOrLabelRef],templateStrings:[e.name,"#interrupt-cells",`/${i.path.slice(1).join("/")}`]}));break}f++;let B=$e(D,0,0,r);if(B==null)break;if(p.splice(-1,1,[...Array.from({length:l},(M,F)=>`${g}_ChildAddr${l>1?F:""}`),...Array.from({length:u},(M,F)=>`${g}_ChildIntrpt${u>1?F:""}`),`${g}_IntrptParent`,...Array.from({length:R},(M,F)=>`${g}_ParentAddr${R>1?F:""}`),...Array.from({length:B},(M,F)=>`${g}_ParentIntrpt${B>1?F:""}`)]),f+=R+B,o.length<f){let M=l+u+1+R+B,F=o[o.length-1];n.push(j(20,F.firstToken,F.lastToken,F,{templateStrings:[e.name,`after the last value of ${p.at(-1).slice((o.length-h)%M===0?M:(o.length-h)%M).join(" ")}`]}));break}h=f,g++}if(p.push([...Array.from({length:l},(T,S)=>`${g}_ChildAddr${l>1?S:""}`),...Array.from({length:u},(T,S)=>`${g}_ChildIntrpt${u>1?S:""}`),`${g}_IntrptParent`,`${g}_ParentAddr...`,`${g}_ParentIntrpt...`]),t.signatureArgs=p.map(T=>T.map(S=>bE.ParameterInformation.create(S))),!e.ast.values)return[];for(let T=0;T<e.ast.values.values.length;T++){let S=e.ast.values.values.at(T);if(S&&(n.length||u==null||!(S.value instanceof jt)))return n}return Object.values(d).forEach(T=>{if(T.length>1){let S=T[T.length-1];n.push(j(30,S.firstToken,S.lastToken,S,{linkedTo:T.slice(0,-1)}))}}),n});return t.description=["An interrupt-map is a property on a nexus node that bridges one interrupt domain with a set of parent interrupt domains and specifies how interrupt specifiers in the child domain are mapped to their respective parent domains.","The interrupt map is a table where each row is a mapping entry consisting of five components: child unit address, child interrupt specifier, interrupt-parent, parent unit address, parent interrupt specifier.","- child unit address: The unit address of the child node being mapped. The number of 32-bit cells required to specify this is described by the #address-cells property of the bus node on which the child is located.","- child interrupt specifier: The interrupt specifier of the child node being mapped. The number of 32-bit cells required to specify this component is described by the #interrupt-cells property of this node-the nexus node containing the interrupt-map property.","- interrupt-parent: A single <phandle > value that points to the interrupt parent to which the child domain is being mapped.","- parent unit address: The unit address in the domain of the interrupt parent. The number of 32-bit cells required to specify this address is described by the #address-cells property of the node pointed to by the interrupt-parent field.","- parent interrupt specifier: The interrupt specifier in the parent domain. The number of 32-bit cells required to specify this component is described by the #interrupt-cells property of the node pointed to by the interrupt-parent field.","Lookups are performed on the interrupt mapping table by matching a unit-address/interrupt specifier pair against the child components in the interrupt-map. Because some fields in the unit interrupt specifier may not be relevant, a mask is applied before the lookup is done. This mask is defined in the interrupt-map-mask property","Note: Both the child node and the interrupt parent node are required to have #address-cells and #interrupt-cells properties defined. If a unit address component is not required ,#address-cells shall be explicitly defined to be zero."],t};var SE;(function(t){function e(r){return typeof r=="string"}t.is=e})(SE||(SE={}));var Qy;(function(t){function e(r){return typeof r=="string"}t.is=e})(Qy||(Qy={}));var NE;(function(t){t.MIN_VALUE=-2147483648,t.MAX_VALUE=2147483647;function e(r){return typeof r=="number"&&t.MIN_VALUE<=r&&r<=t.MAX_VALUE}t.is=e})(NE||(NE={}));var xf;(function(t){t.MIN_VALUE=0,t.MAX_VALUE=2147483647;function e(r){return typeof r=="number"&&t.MIN_VALUE<=r&&r<=t.MAX_VALUE}t.is=e})(xf||(xf={}));var Kr;(function(t){function e(n,i){return n===Number.MAX_VALUE&&(n=xf.MAX_VALUE),i===Number.MAX_VALUE&&(i=xf.MAX_VALUE),{line:n,character:i}}t.create=e;function r(n){let i=n;return I.objectLiteral(i)&&I.uinteger(i.line)&&I.uinteger(i.character)}t.is=r})(Kr||(Kr={}));var Ct;(function(t){function e(n,i,s,o){if(I.uinteger(n)&&I.uinteger(i)&&I.uinteger(s)&&I.uinteger(o))return{start:Kr.create(n,i),end:Kr.create(s,o)};if(Kr.is(n)&&Kr.is(i))return{start:n,end:i};throw new Error(`Range#create called with invalid arguments[${n}, ${i}, ${s}, ${o}]`)}t.create=e;function r(n){let i=n;return I.objectLiteral(i)&&Kr.is(i.start)&&Kr.is(i.end)}t.is=r})(Ct||(Ct={}));var Lf;(function(t){function e(n,i){return{uri:n,range:i}}t.create=e;function r(n){let i=n;return I.objectLiteral(i)&&Ct.is(i.range)&&(I.string(i.uri)||I.undefined(i.uri))}t.is=r})(Lf||(Lf={}));var kE;(function(t){function e(n,i,s,o){return{targetUri:n,targetRange:i,targetSelectionRange:s,originSelectionRange:o}}t.create=e;function r(n){let i=n;return I.objectLiteral(i)&&Ct.is(i.targetRange)&&I.string(i.targetUri)&&Ct.is(i.targetSelectionRange)&&(Ct.is(i.originSelectionRange)||I.undefined(i.originSelectionRange))}t.is=r})(kE||(kE={}));var Zy;(function(t){function e(n,i,s,o){return{red:n,green:i,blue:s,alpha:o}}t.create=e;function r(n){let i=n;return I.objectLiteral(i)&&I.numberRange(i.red,0,1)&&I.numberRange(i.green,0,1)&&I.numberRange(i.blue,0,1)&&I.numberRange(i.alpha,0,1)}t.is=r})(Zy||(Zy={}));var RE;(function(t){function e(n,i){return{range:n,color:i}}t.create=e;function r(n){let i=n;return I.objectLiteral(i)&&Ct.is(i.range)&&Zy.is(i.color)}t.is=r})(RE||(RE={}));var PE;(function(t){function e(n,i,s){return{label:n,textEdit:i,additionalTextEdits:s}}t.create=e;function r(n){let i=n;return I.objectLiteral(i)&&I.string(i.label)&&(I.undefined(i.textEdit)||ra.is(i))&&(I.undefined(i.additionalTextEdits)||I.typedArray(i.additionalTextEdits,ra.is))}t.is=r})(PE||(PE={}));var wE;(function(t){t.Comment="comment",t.Imports="imports",t.Region="region"})(wE||(wE={}));var EE;(function(t){function e(n,i,s,o,a,c){let l={startLine:n,endLine:i};return I.defined(s)&&(l.startCharacter=s),I.defined(o)&&(l.endCharacter=o),I.defined(a)&&(l.kind=a),I.defined(c)&&(l.collapsedText=c),l}t.create=e;function r(n){let i=n;return I.objectLiteral(i)&&I.uinteger(i.startLine)&&I.uinteger(i.startLine)&&(I.undefined(i.startCharacter)||I.uinteger(i.startCharacter))&&(I.undefined(i.endCharacter)||I.uinteger(i.endCharacter))&&(I.undefined(i.kind)||I.string(i.kind))}t.is=r})(EE||(EE={}));var eT;(function(t){function e(n,i){return{location:n,message:i}}t.create=e;function r(n){let i=n;return I.defined(i)&&Lf.is(i.location)&&I.string(i.message)}t.is=r})(eT||(eT={}));var DE;(function(t){t.Error=1,t.Warning=2,t.Information=3,t.Hint=4})(DE||(DE={}));var CE;(function(t){t.Unnecessary=1,t.Deprecated=2})(CE||(CE={}));var AE;(function(t){function e(r){let n=r;return I.objectLiteral(n)&&I.string(n.href)}t.is=e})(AE||(AE={}));var qf;(function(t){function e(n,i,s,o,a,c){let l={range:n,message:i};return I.defined(s)&&(l.severity=s),I.defined(o)&&(l.code=o),I.defined(a)&&(l.source=a),I.defined(c)&&(l.relatedInformation=c),l}t.create=e;function r(n){var i;let s=n;return I.defined(s)&&Ct.is(s.range)&&I.string(s.message)&&(I.number(s.severity)||I.undefined(s.severity))&&(I.integer(s.code)||I.string(s.code)||I.undefined(s.code))&&(I.undefined(s.codeDescription)||I.string((i=s.codeDescription)===null||i===void 0?void 0:i.href))&&(I.string(s.source)||I.undefined(s.source))&&(I.undefined(s.relatedInformation)||I.typedArray(s.relatedInformation,eT.is))}t.is=r})(qf||(qf={}));var ta;(function(t){function e(n,i,...s){let o={title:n,command:i};return I.defined(s)&&s.length>0&&(o.arguments=s),o}t.create=e;function r(n){let i=n;return I.defined(i)&&I.string(i.title)&&I.string(i.command)}t.is=r})(ta||(ta={}));var ra;(function(t){function e(s,o){return{range:s,newText:o}}t.replace=e;function r(s,o){return{range:{start:s,end:s},newText:o}}t.insert=r;function n(s){return{range:s,newText:""}}t.del=n;function i(s){let o=s;return I.objectLiteral(o)&&I.string(o.newText)&&Ct.is(o.range)}t.is=i})(ra||(ra={}));var tT;(function(t){function e(n,i,s){let o={label:n};return i!==void 0&&(o.needsConfirmation=i),s!==void 0&&(o.description=s),o}t.create=e;function r(n){let i=n;return I.objectLiteral(i)&&I.string(i.label)&&(I.boolean(i.needsConfirmation)||i.needsConfirmation===void 0)&&(I.string(i.description)||i.description===void 0)}t.is=r})(tT||(tT={}));var na;(function(t){function e(r){let n=r;return I.string(n)}t.is=e})(na||(na={}));var IE;(function(t){function e(s,o,a){return{range:s,newText:o,annotationId:a}}t.replace=e;function r(s,o,a){return{range:{start:s,end:s},newText:o,annotationId:a}}t.insert=r;function n(s,o){return{range:s,newText:"",annotationId:o}}t.del=n;function i(s){let o=s;return ra.is(o)&&(tT.is(o.annotationId)||na.is(o.annotationId))}t.is=i})(IE||(IE={}));var rT;(function(t){function e(n,i){return{textDocument:n,edits:i}}t.create=e;function r(n){let i=n;return I.defined(i)&&aT.is(i.textDocument)&&Array.isArray(i.edits)}t.is=r})(rT||(rT={}));var nT;(function(t){function e(n,i,s){let o={kind:"create",uri:n};return i!==void 0&&(i.overwrite!==void 0||i.ignoreIfExists!==void 0)&&(o.options=i),s!==void 0&&(o.annotationId=s),o}t.create=e;function r(n){let i=n;return i&&i.kind==="create"&&I.string(i.uri)&&(i.options===void 0||(i.options.overwrite===void 0||I.boolean(i.options.overwrite))&&(i.options.ignoreIfExists===void 0||I.boolean(i.options.ignoreIfExists)))&&(i.annotationId===void 0||na.is(i.annotationId))}t.is=r})(nT||(nT={}));var iT;(function(t){function e(n,i,s,o){let a={kind:"rename",oldUri:n,newUri:i};return s!==void 0&&(s.overwrite!==void 0||s.ignoreIfExists!==void 0)&&(a.options=s),o!==void 0&&(a.annotationId=o),a}t.create=e;function r(n){let i=n;return i&&i.kind==="rename"&&I.string(i.oldUri)&&I.string(i.newUri)&&(i.options===void 0||(i.options.overwrite===void 0||I.boolean(i.options.overwrite))&&(i.options.ignoreIfExists===void 0||I.boolean(i.options.ignoreIfExists)))&&(i.annotationId===void 0||na.is(i.annotationId))}t.is=r})(iT||(iT={}));var sT;(function(t){function e(n,i,s){let o={kind:"delete",uri:n};return i!==void 0&&(i.recursive!==void 0||i.ignoreIfNotExists!==void 0)&&(o.options=i),s!==void 0&&(o.annotationId=s),o}t.create=e;function r(n){let i=n;return i&&i.kind==="delete"&&I.string(i.uri)&&(i.options===void 0||(i.options.recursive===void 0||I.boolean(i.options.recursive))&&(i.options.ignoreIfNotExists===void 0||I.boolean(i.options.ignoreIfNotExists)))&&(i.annotationId===void 0||na.is(i.annotationId))}t.is=r})(sT||(sT={}));var oT;(function(t){function e(r){let n=r;return n&&(n.changes!==void 0||n.documentChanges!==void 0)&&(n.documentChanges===void 0||n.documentChanges.every(i=>I.string(i.kind)?nT.is(i)||iT.is(i)||sT.is(i):rT.is(i)))}t.is=e})(oT||(oT={}));var OE;(function(t){function e(n){return{uri:n}}t.create=e;function r(n){let i=n;return I.defined(i)&&I.string(i.uri)}t.is=r})(OE||(OE={}));var ME;(function(t){function e(n,i){return{uri:n,version:i}}t.create=e;function r(n){let i=n;return I.defined(i)&&I.string(i.uri)&&I.integer(i.version)}t.is=r})(ME||(ME={}));var aT;(function(t){function e(n,i){return{uri:n,version:i}}t.create=e;function r(n){let i=n;return I.defined(i)&&I.string(i.uri)&&(i.version===null||I.integer(i.version))}t.is=r})(aT||(aT={}));var xE;(function(t){function e(n,i,s,o){return{uri:n,languageId:i,version:s,text:o}}t.create=e;function r(n){let i=n;return I.defined(i)&&I.string(i.uri)&&I.string(i.languageId)&&I.integer(i.version)&&I.string(i.text)}t.is=r})(xE||(xE={}));var is;(function(t){t.PlainText="plaintext",t.Markdown="markdown";function e(r){let n=r;return n===t.PlainText||n===t.Markdown}t.is=e})(is||(is={}));var Mc;(function(t){function e(r){let n=r;return I.objectLiteral(r)&&is.is(n.kind)&&I.string(n.value)}t.is=e})(Mc||(Mc={}));var LE;(function(t){t.Text=1,t.Method=2,t.Function=3,t.Constructor=4,t.Field=5,t.Variable=6,t.Class=7,t.Interface=8,t.Module=9,t.Property=10,t.Unit=11,t.Value=12,t.Enum=13,t.Keyword=14,t.Snippet=15,t.Color=16,t.File=17,t.Reference=18,t.Folder=19,t.EnumMember=20,t.Constant=21,t.Struct=22,t.Event=23,t.Operator=24,t.TypeParameter=25})(LE||(LE={}));var qE;(function(t){t.PlainText=1,t.Snippet=2})(qE||(qE={}));var $E;(function(t){t.Deprecated=1})($E||($E={}));var BE;(function(t){function e(n,i,s){return{newText:n,insert:i,replace:s}}t.create=e;function r(n){let i=n;return i&&I.string(i.newText)&&Ct.is(i.insert)&&Ct.is(i.replace)}t.is=r})(BE||(BE={}));var FE;(function(t){t.asIs=1,t.adjustIndentation=2})(FE||(FE={}));var jE;(function(t){function e(r){let n=r;return n&&(I.string(n.detail)||n.detail===void 0)&&(I.string(n.description)||n.description===void 0)}t.is=e})(jE||(jE={}));var UE;(function(t){function e(r){return{label:r}}t.create=e})(UE||(UE={}));var HE;(function(t){function e(r,n){return{items:r||[],isIncomplete:!!n}}t.create=e})(HE||(HE={}));var $f;(function(t){function e(n){return n.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")}t.fromPlainText=e;function r(n){let i=n;return I.string(i)||I.objectLiteral(i)&&I.string(i.language)&&I.string(i.value)}t.is=r})($f||($f={}));var VE;(function(t){function e(r){let n=r;return!!n&&I.objectLiteral(n)&&(Mc.is(n.contents)||$f.is(n.contents)||I.typedArray(n.contents,$f.is))&&(r.range===void 0||Ct.is(r.range))}t.is=e})(VE||(VE={}));var xr;(function(t){function e(r,n){return n?{label:r,documentation:n}:{label:r}}t.create=e})(xr||(xr={}));var zE;(function(t){function e(r,n,...i){let s={label:r};return I.defined(n)&&(s.documentation=n),I.defined(i)?s.parameters=i:s.parameters=[],s}t.create=e})(zE||(zE={}));var WE;(function(t){t.Text=1,t.Read=2,t.Write=3})(WE||(WE={}));var GE;(function(t){function e(r,n){let i={range:r};return I.number(n)&&(i.kind=n),i}t.create=e})(GE||(GE={}));var KE;(function(t){t.File=1,t.Module=2,t.Namespace=3,t.Package=4,t.Class=5,t.Method=6,t.Property=7,t.Field=8,t.Constructor=9,t.Enum=10,t.Interface=11,t.Function=12,t.Variable=13,t.Constant=14,t.String=15,t.Number=16,t.Boolean=17,t.Array=18,t.Object=19,t.Key=20,t.Null=21,t.EnumMember=22,t.Struct=23,t.Event=24,t.Operator=25,t.TypeParameter=26})(KE||(KE={}));var YE;(function(t){t.Deprecated=1})(YE||(YE={}));var XE;(function(t){function e(r,n,i,s,o){let a={name:r,kind:n,location:{uri:s,range:i}};return o&&(a.containerName=o),a}t.create=e})(XE||(XE={}));var JE;(function(t){function e(r,n,i,s){return s!==void 0?{name:r,kind:n,location:{uri:i,range:s}}:{name:r,kind:n,location:{uri:i}}}t.create=e})(JE||(JE={}));var QE;(function(t){function e(n,i,s,o,a,c){let l={name:n,detail:i,kind:s,range:o,selectionRange:a};return c!==void 0&&(l.children=c),l}t.create=e;function r(n){let i=n;return i&&I.string(i.name)&&I.number(i.kind)&&Ct.is(i.range)&&Ct.is(i.selectionRange)&&(i.detail===void 0||I.string(i.detail))&&(i.deprecated===void 0||I.boolean(i.deprecated))&&(i.children===void 0||Array.isArray(i.children))&&(i.tags===void 0||Array.isArray(i.tags))}t.is=r})(QE||(QE={}));var ZE;(function(t){t.Empty="",t.QuickFix="quickfix",t.Refactor="refactor",t.RefactorExtract="refactor.extract",t.RefactorInline="refactor.inline",t.RefactorRewrite="refactor.rewrite",t.Source="source",t.SourceOrganizeImports="source.organizeImports",t.SourceFixAll="source.fixAll"})(ZE||(ZE={}));var Bf;(function(t){t.Invoked=1,t.Automatic=2})(Bf||(Bf={}));var eD;(function(t){function e(n,i,s){let o={diagnostics:n};return i!=null&&(o.only=i),s!=null&&(o.triggerKind=s),o}t.create=e;function r(n){let i=n;return I.defined(i)&&I.typedArray(i.diagnostics,qf.is)&&(i.only===void 0||I.typedArray(i.only,I.string))&&(i.triggerKind===void 0||i.triggerKind===Bf.Invoked||i.triggerKind===Bf.Automatic)}t.is=r})(eD||(eD={}));var tD;(function(t){function e(n,i,s){let o={title:n},a=!0;return typeof i=="string"?(a=!1,o.kind=i):ta.is(i)?o.command=i:o.edit=i,a&&s!==void 0&&(o.kind=s),o}t.create=e;function r(n){let i=n;return i&&I.string(i.title)&&(i.diagnostics===void 0||I.typedArray(i.diagnostics,qf.is))&&(i.kind===void 0||I.string(i.kind))&&(i.edit!==void 0||i.command!==void 0)&&(i.command===void 0||ta.is(i.command))&&(i.isPreferred===void 0||I.boolean(i.isPreferred))&&(i.edit===void 0||oT.is(i.edit))}t.is=r})(tD||(tD={}));var rD;(function(t){function e(n,i){let s={range:n};return I.defined(i)&&(s.data=i),s}t.create=e;function r(n){let i=n;return I.defined(i)&&Ct.is(i.range)&&(I.undefined(i.command)||ta.is(i.command))}t.is=r})(rD||(rD={}));var nD;(function(t){function e(n,i){return{tabSize:n,insertSpaces:i}}t.create=e;function r(n){let i=n;return I.defined(i)&&I.uinteger(i.tabSize)&&I.boolean(i.insertSpaces)}t.is=r})(nD||(nD={}));var iD;(function(t){function e(n,i,s){return{range:n,target:i,data:s}}t.create=e;function r(n){let i=n;return I.defined(i)&&Ct.is(i.range)&&(I.undefined(i.target)||I.string(i.target))}t.is=r})(iD||(iD={}));var sD;(function(t){function e(n,i){return{range:n,parent:i}}t.create=e;function r(n){let i=n;return I.objectLiteral(i)&&Ct.is(i.range)&&(i.parent===void 0||t.is(i.parent))}t.is=r})(sD||(sD={}));var oD;(function(t){t.namespace="namespace",t.type="type",t.class="class",t.enum="enum",t.interface="interface",t.struct="struct",t.typeParameter="typeParameter",t.parameter="parameter",t.variable="variable",t.property="property",t.enumMember="enumMember",t.event="event",t.function="function",t.method="method",t.macro="macro",t.keyword="keyword",t.modifier="modifier",t.comment="comment",t.string="string",t.number="number",t.regexp="regexp",t.operator="operator",t.decorator="decorator"})(oD||(oD={}));var aD;(function(t){t.declaration="declaration",t.definition="definition",t.readonly="readonly",t.static="static",t.deprecated="deprecated",t.abstract="abstract",t.async="async",t.modification="modification",t.documentation="documentation",t.defaultLibrary="defaultLibrary"})(aD||(aD={}));var cD;(function(t){function e(r){let n=r;return I.objectLiteral(n)&&(n.resultId===void 0||typeof n.resultId=="string")&&Array.isArray(n.data)&&(n.data.length===0||typeof n.data[0]=="number")}t.is=e})(cD||(cD={}));var lD;(function(t){function e(n,i){return{range:n,text:i}}t.create=e;function r(n){let i=n;return i!=null&&Ct.is(i.range)&&I.string(i.text)}t.is=r})(lD||(lD={}));var uD;(function(t){function e(n,i,s){return{range:n,variableName:i,caseSensitiveLookup:s}}t.create=e;function r(n){let i=n;return i!=null&&Ct.is(i.range)&&I.boolean(i.caseSensitiveLookup)&&(I.string(i.variableName)||i.variableName===void 0)}t.is=r})(uD||(uD={}));var dD;(function(t){function e(n,i){return{range:n,expression:i}}t.create=e;function r(n){let i=n;return i!=null&&Ct.is(i.range)&&(I.string(i.expression)||i.expression===void 0)}t.is=r})(dD||(dD={}));var fD;(function(t){function e(n,i){return{frameId:n,stoppedLocation:i}}t.create=e;function r(n){let i=n;return I.defined(i)&&Ct.is(n.stoppedLocation)}t.is=r})(fD||(fD={}));var cT;(function(t){t.Type=1,t.Parameter=2;function e(r){return r===1||r===2}t.is=e})(cT||(cT={}));var lT;(function(t){function e(n){return{value:n}}t.create=e;function r(n){let i=n;return I.objectLiteral(i)&&(i.tooltip===void 0||I.string(i.tooltip)||Mc.is(i.tooltip))&&(i.location===void 0||Lf.is(i.location))&&(i.command===void 0||ta.is(i.command))}t.is=r})(lT||(lT={}));var pD;(function(t){function e(n,i,s){let o={position:n,label:i};return s!==void 0&&(o.kind=s),o}t.create=e;function r(n){let i=n;return I.objectLiteral(i)&&Kr.is(i.position)&&(I.string(i.label)||I.typedArray(i.label,lT.is))&&(i.kind===void 0||cT.is(i.kind))&&i.textEdits===void 0||I.typedArray(i.textEdits,ra.is)&&(i.tooltip===void 0||I.string(i.tooltip)||Mc.is(i.tooltip))&&(i.paddingLeft===void 0||I.boolean(i.paddingLeft))&&(i.paddingRight===void 0||I.boolean(i.paddingRight))}t.is=r})(pD||(pD={}));var hD;(function(t){function e(r){return{kind:"snippet",value:r}}t.createSnippet=e})(hD||(hD={}));var mD;(function(t){function e(r,n,i,s){return{insertText:r,filterText:n,range:i,command:s}}t.create=e})(mD||(mD={}));var gD;(function(t){function e(r){return{items:r}}t.create=e})(gD||(gD={}));var yD;(function(t){t.Invoked=0,t.Automatic=1})(yD||(yD={}));var TD;(function(t){function e(r,n){return{range:r,text:n}}t.create=e})(TD||(TD={}));var vD;(function(t){function e(r,n){return{triggerKind:r,selectedCompletionInfo:n}}t.create=e})(vD||(vD={}));var bD;(function(t){function e(r){let n=r;return I.objectLiteral(n)&&Qy.is(n.uri)&&I.string(n.name)}t.is=e})(bD||(bD={}));var _D;(function(t){function e(s,o,a,c){return new uT(s,o,a,c)}t.create=e;function r(s){let o=s;return!!(I.defined(o)&&I.string(o.uri)&&(I.undefined(o.languageId)||I.string(o.languageId))&&I.uinteger(o.lineCount)&&I.func(o.getText)&&I.func(o.positionAt)&&I.func(o.offsetAt))}t.is=r;function n(s,o){let a=s.getText(),c=i(o,(u,d)=>{let f=u.range.start.line-d.range.start.line;return f===0?u.range.start.character-d.range.start.character:f}),l=a.length;for(let u=c.length-1;u>=0;u--){let d=c[u],f=s.offsetAt(d.range.start),p=s.offsetAt(d.range.end);if(p<=l)a=a.substring(0,f)+d.newText+a.substring(p,a.length);else throw new Error("Overlapping edit");l=f}return a}t.applyEdits=n;function i(s,o){if(s.length<=1)return s;let a=s.length/2|0,c=s.slice(0,a),l=s.slice(a);i(c,o),i(l,o);let u=0,d=0,f=0;for(;u<c.length&&d<l.length;)o(c[u],l[d])<=0?s[f++]=c[u++]:s[f++]=l[d++];for(;u<c.length;)s[f++]=c[u++];for(;d<l.length;)s[f++]=l[d++];return s}})(_D||(_D={}));var uT=class{constructor(e,r,n,i){this._uri=e,this._languageId=r,this._version=n,this._content=i,this._lineOffsets=void 0}get uri(){return this._uri}get languageId(){return this._languageId}get version(){return this._version}getText(e){if(e){let r=this.offsetAt(e.start),n=this.offsetAt(e.end);return this._content.substring(r,n)}return this._content}update(e,r){this._content=e.text,this._version=r,this._lineOffsets=void 0}getLineOffsets(){if(this._lineOffsets===void 0){let e=[],r=this._content,n=!0;for(let i=0;i<r.length;i++){n&&(e.push(i),n=!1);let s=r.charAt(i);n=s==="\r"||s===`
240
+ `)],t};var TE=()=>{let t=new Y("model",z("STRING"));return t.description=["The model property value is a <string> that specifies the manufacturer's model number of the device.",'The recommended format is: "manufacturer, model" , where manufacturer is a string describing the name of the manufacturer (such as a stock ticker symbol), and model specifies the model number.'],t.examples=['```devicetree\nmodel = "{sl, MPC8349EMITX" ;\n```'],t};var Mf=$(U());var vE=()=>{let t=new Y("name",z("STRING"),"optional",void 0,void 0,e=>[j(14,e.ast.firstToken,e.ast.lastToken,e.ast,{severity:Mf.DiagnosticSeverity.Warning,tags:[Mf.DiagnosticTag.Deprecated],templateStrings:[e.name]})]);return t.hideAutoComplete=!0,t};var bE=$(U());var _E=()=>{let t=new Y("interrupt-map",z("PROP_ENCODED_ARRAY"),"optional",void 0,void 0,(e,r)=>{let n=[],i=e.parent,s=e.parent.root,o=xe(e.ast.values);if(!o?.length)return[];i.getProperty("#address-cells")||n.push(j(16,e.ast.firstToken,e.ast.lastToken,e.ast,{linkedTo:[...e.parent.nodeNameOrLabelRef],templateStrings:[e.name,"#address-cells",i.pathString]}));let c=i.getProperty("#interrupt-cells");if(!c)return n.push(j(16,e.ast.firstToken,e.ast.lastToken,e.ast,{linkedTo:[...i.nodeNameOrLabelRef],templateStrings:[e.name,"#interrupt-cells",`/${i.path.slice(1).join("/")}`]})),n;let l=i.addressCells(r),u=$e(c,0,0,r),d={};if(u==null)return n;let f=0,p=[],g=0,h=0;for(;f<o.length;){if(p.push([...Array.from({length:l},(M,F)=>`${g}_ChildAddr${l>1?F:""}`),...Array.from({length:u},(M,F)=>`${g}_ChildIntrpt${u>1?F:""}`),`${g}_IntrptParent`,`${g}_ParentAddr...`,`${g}_ParentIntrpt...`]),f+l+u>=o.length){let M=f+l+u,F=o[o.length-1];n.push(j(20,F.firstToken,F.lastToken,F,{templateStrings:[e.name,`after the last value of ${p.at(-1).slice((o.length-h)%M===0?M:(o.length-h)%M).join(" ")}`]}));break}let T=new Q(oe(o.at(f).firstToken,o.at(l+u+f-1).lastToken)),S="";for(let M=f;M<l+u+f;M++){let F=o[M];S+=`${F instanceof Ee?F.evaluate(r).toString():F.toString()}:`}d[S]??=[],d[S].push(T),f+=l+u;let _=l+u+1;if(o.length<f+1){let M=o[o.length-1];n.push(j(20,M.firstToken,M.lastToken,M,{templateStrings:[e.name,`after the last value of ${p.at(-1).slice((o.length-h)%_===0?_:(o.length-h)%_).join(" ")}`]}));break}let v=dn(o[f],s);if(!v){let M=o[f];n.push(j(17,M.firstToken,M.lastToken,M));break}let R=v.addressCells(r),D=v.getProperty("#interrupt-cells");if(!D){let M=o[f];n.push(j(16,M.firstToken,M.lastToken,M,{linkedTo:[...v.nodeNameOrLabelRef],templateStrings:[e.name,"#interrupt-cells",`/${i.path.slice(1).join("/")}`]}));break}f++;let B=$e(D,0,0,r);if(B==null)break;if(p.splice(-1,1,[...Array.from({length:l},(M,F)=>`${g}_ChildAddr${l>1?F:""}`),...Array.from({length:u},(M,F)=>`${g}_ChildIntrpt${u>1?F:""}`),`${g}_IntrptParent`,...Array.from({length:R},(M,F)=>`${g}_ParentAddr${R>1?F:""}`),...Array.from({length:B},(M,F)=>`${g}_ParentIntrpt${B>1?F:""}`)]),f+=R+B,o.length<f){let M=l+u+1+R+B,F=o[o.length-1];n.push(j(20,F.firstToken,F.lastToken,F,{templateStrings:[e.name,`after the last value of ${p.at(-1).slice((o.length-h)%M===0?M:(o.length-h)%M).join(" ")}`]}));break}h=f,g++}if(p.push([...Array.from({length:l},(T,S)=>`${g}_ChildAddr${l>1?S:""}`),...Array.from({length:u},(T,S)=>`${g}_ChildIntrpt${u>1?S:""}`),`${g}_IntrptParent`,`${g}_ParentAddr...`,`${g}_ParentIntrpt...`]),t.signatureArgs=p.map(T=>T.map(S=>bE.ParameterInformation.create(S))),!e.ast.values)return[];for(let T=0;T<e.ast.values.values.length;T++){let S=e.ast.values.values.at(T);if(S&&(n.length||u==null||!(S.value instanceof jt)))return n}return Object.values(d).forEach(T=>{if(T.length>1){let S=T[T.length-1];n.push(j(30,S.firstToken,S.lastToken,S,{linkedTo:T.slice(0,-1)}))}}),n});return t.description=["An interrupt-map is a property on a nexus node that bridges one interrupt domain with a set of parent interrupt domains and specifies how interrupt specifiers in the child domain are mapped to their respective parent domains.","The interrupt map is a table where each row is a mapping entry consisting of five components: child unit address, child interrupt specifier, interrupt-parent, parent unit address, parent interrupt specifier.","- child unit address: The unit address of the child node being mapped. The number of 32-bit cells required to specify this is described by the #address-cells property of the bus node on which the child is located.","- child interrupt specifier: The interrupt specifier of the child node being mapped. The number of 32-bit cells required to specify this component is described by the #interrupt-cells property of this node-the nexus node containing the interrupt-map property.","- interrupt-parent: A single <phandle > value that points to the interrupt parent to which the child domain is being mapped.","- parent unit address: The unit address in the domain of the interrupt parent. The number of 32-bit cells required to specify this address is described by the #address-cells property of the node pointed to by the interrupt-parent field.","- parent interrupt specifier: The interrupt specifier in the parent domain. The number of 32-bit cells required to specify this component is described by the #interrupt-cells property of the node pointed to by the interrupt-parent field.","Lookups are performed on the interrupt mapping table by matching a unit-address/interrupt specifier pair against the child components in the interrupt-map. Because some fields in the unit interrupt specifier may not be relevant, a mask is applied before the lookup is done. This mask is defined in the interrupt-map-mask property","Note: Both the child node and the interrupt parent node are required to have #address-cells and #interrupt-cells properties defined. If a unit address component is not required ,#address-cells shall be explicitly defined to be zero."],t};var SE;(function(t){function e(r){return typeof r=="string"}t.is=e})(SE||(SE={}));var Qy;(function(t){function e(r){return typeof r=="string"}t.is=e})(Qy||(Qy={}));var NE;(function(t){t.MIN_VALUE=-2147483648,t.MAX_VALUE=2147483647;function e(r){return typeof r=="number"&&t.MIN_VALUE<=r&&r<=t.MAX_VALUE}t.is=e})(NE||(NE={}));var xf;(function(t){t.MIN_VALUE=0,t.MAX_VALUE=2147483647;function e(r){return typeof r=="number"&&t.MIN_VALUE<=r&&r<=t.MAX_VALUE}t.is=e})(xf||(xf={}));var Yr;(function(t){function e(n,i){return n===Number.MAX_VALUE&&(n=xf.MAX_VALUE),i===Number.MAX_VALUE&&(i=xf.MAX_VALUE),{line:n,character:i}}t.create=e;function r(n){let i=n;return I.objectLiteral(i)&&I.uinteger(i.line)&&I.uinteger(i.character)}t.is=r})(Yr||(Yr={}));var Ct;(function(t){function e(n,i,s,o){if(I.uinteger(n)&&I.uinteger(i)&&I.uinteger(s)&&I.uinteger(o))return{start:Yr.create(n,i),end:Yr.create(s,o)};if(Yr.is(n)&&Yr.is(i))return{start:n,end:i};throw new Error(`Range#create called with invalid arguments[${n}, ${i}, ${s}, ${o}]`)}t.create=e;function r(n){let i=n;return I.objectLiteral(i)&&Yr.is(i.start)&&Yr.is(i.end)}t.is=r})(Ct||(Ct={}));var Lf;(function(t){function e(n,i){return{uri:n,range:i}}t.create=e;function r(n){let i=n;return I.objectLiteral(i)&&Ct.is(i.range)&&(I.string(i.uri)||I.undefined(i.uri))}t.is=r})(Lf||(Lf={}));var kE;(function(t){function e(n,i,s,o){return{targetUri:n,targetRange:i,targetSelectionRange:s,originSelectionRange:o}}t.create=e;function r(n){let i=n;return I.objectLiteral(i)&&Ct.is(i.targetRange)&&I.string(i.targetUri)&&Ct.is(i.targetSelectionRange)&&(Ct.is(i.originSelectionRange)||I.undefined(i.originSelectionRange))}t.is=r})(kE||(kE={}));var Zy;(function(t){function e(n,i,s,o){return{red:n,green:i,blue:s,alpha:o}}t.create=e;function r(n){let i=n;return I.objectLiteral(i)&&I.numberRange(i.red,0,1)&&I.numberRange(i.green,0,1)&&I.numberRange(i.blue,0,1)&&I.numberRange(i.alpha,0,1)}t.is=r})(Zy||(Zy={}));var RE;(function(t){function e(n,i){return{range:n,color:i}}t.create=e;function r(n){let i=n;return I.objectLiteral(i)&&Ct.is(i.range)&&Zy.is(i.color)}t.is=r})(RE||(RE={}));var PE;(function(t){function e(n,i,s){return{label:n,textEdit:i,additionalTextEdits:s}}t.create=e;function r(n){let i=n;return I.objectLiteral(i)&&I.string(i.label)&&(I.undefined(i.textEdit)||ra.is(i))&&(I.undefined(i.additionalTextEdits)||I.typedArray(i.additionalTextEdits,ra.is))}t.is=r})(PE||(PE={}));var wE;(function(t){t.Comment="comment",t.Imports="imports",t.Region="region"})(wE||(wE={}));var EE;(function(t){function e(n,i,s,o,a,c){let l={startLine:n,endLine:i};return I.defined(s)&&(l.startCharacter=s),I.defined(o)&&(l.endCharacter=o),I.defined(a)&&(l.kind=a),I.defined(c)&&(l.collapsedText=c),l}t.create=e;function r(n){let i=n;return I.objectLiteral(i)&&I.uinteger(i.startLine)&&I.uinteger(i.startLine)&&(I.undefined(i.startCharacter)||I.uinteger(i.startCharacter))&&(I.undefined(i.endCharacter)||I.uinteger(i.endCharacter))&&(I.undefined(i.kind)||I.string(i.kind))}t.is=r})(EE||(EE={}));var eT;(function(t){function e(n,i){return{location:n,message:i}}t.create=e;function r(n){let i=n;return I.defined(i)&&Lf.is(i.location)&&I.string(i.message)}t.is=r})(eT||(eT={}));var DE;(function(t){t.Error=1,t.Warning=2,t.Information=3,t.Hint=4})(DE||(DE={}));var CE;(function(t){t.Unnecessary=1,t.Deprecated=2})(CE||(CE={}));var AE;(function(t){function e(r){let n=r;return I.objectLiteral(n)&&I.string(n.href)}t.is=e})(AE||(AE={}));var qf;(function(t){function e(n,i,s,o,a,c){let l={range:n,message:i};return I.defined(s)&&(l.severity=s),I.defined(o)&&(l.code=o),I.defined(a)&&(l.source=a),I.defined(c)&&(l.relatedInformation=c),l}t.create=e;function r(n){var i;let s=n;return I.defined(s)&&Ct.is(s.range)&&I.string(s.message)&&(I.number(s.severity)||I.undefined(s.severity))&&(I.integer(s.code)||I.string(s.code)||I.undefined(s.code))&&(I.undefined(s.codeDescription)||I.string((i=s.codeDescription)===null||i===void 0?void 0:i.href))&&(I.string(s.source)||I.undefined(s.source))&&(I.undefined(s.relatedInformation)||I.typedArray(s.relatedInformation,eT.is))}t.is=r})(qf||(qf={}));var ta;(function(t){function e(n,i,...s){let o={title:n,command:i};return I.defined(s)&&s.length>0&&(o.arguments=s),o}t.create=e;function r(n){let i=n;return I.defined(i)&&I.string(i.title)&&I.string(i.command)}t.is=r})(ta||(ta={}));var ra;(function(t){function e(s,o){return{range:s,newText:o}}t.replace=e;function r(s,o){return{range:{start:s,end:s},newText:o}}t.insert=r;function n(s){return{range:s,newText:""}}t.del=n;function i(s){let o=s;return I.objectLiteral(o)&&I.string(o.newText)&&Ct.is(o.range)}t.is=i})(ra||(ra={}));var tT;(function(t){function e(n,i,s){let o={label:n};return i!==void 0&&(o.needsConfirmation=i),s!==void 0&&(o.description=s),o}t.create=e;function r(n){let i=n;return I.objectLiteral(i)&&I.string(i.label)&&(I.boolean(i.needsConfirmation)||i.needsConfirmation===void 0)&&(I.string(i.description)||i.description===void 0)}t.is=r})(tT||(tT={}));var na;(function(t){function e(r){let n=r;return I.string(n)}t.is=e})(na||(na={}));var IE;(function(t){function e(s,o,a){return{range:s,newText:o,annotationId:a}}t.replace=e;function r(s,o,a){return{range:{start:s,end:s},newText:o,annotationId:a}}t.insert=r;function n(s,o){return{range:s,newText:"",annotationId:o}}t.del=n;function i(s){let o=s;return ra.is(o)&&(tT.is(o.annotationId)||na.is(o.annotationId))}t.is=i})(IE||(IE={}));var rT;(function(t){function e(n,i){return{textDocument:n,edits:i}}t.create=e;function r(n){let i=n;return I.defined(i)&&aT.is(i.textDocument)&&Array.isArray(i.edits)}t.is=r})(rT||(rT={}));var nT;(function(t){function e(n,i,s){let o={kind:"create",uri:n};return i!==void 0&&(i.overwrite!==void 0||i.ignoreIfExists!==void 0)&&(o.options=i),s!==void 0&&(o.annotationId=s),o}t.create=e;function r(n){let i=n;return i&&i.kind==="create"&&I.string(i.uri)&&(i.options===void 0||(i.options.overwrite===void 0||I.boolean(i.options.overwrite))&&(i.options.ignoreIfExists===void 0||I.boolean(i.options.ignoreIfExists)))&&(i.annotationId===void 0||na.is(i.annotationId))}t.is=r})(nT||(nT={}));var iT;(function(t){function e(n,i,s,o){let a={kind:"rename",oldUri:n,newUri:i};return s!==void 0&&(s.overwrite!==void 0||s.ignoreIfExists!==void 0)&&(a.options=s),o!==void 0&&(a.annotationId=o),a}t.create=e;function r(n){let i=n;return i&&i.kind==="rename"&&I.string(i.oldUri)&&I.string(i.newUri)&&(i.options===void 0||(i.options.overwrite===void 0||I.boolean(i.options.overwrite))&&(i.options.ignoreIfExists===void 0||I.boolean(i.options.ignoreIfExists)))&&(i.annotationId===void 0||na.is(i.annotationId))}t.is=r})(iT||(iT={}));var sT;(function(t){function e(n,i,s){let o={kind:"delete",uri:n};return i!==void 0&&(i.recursive!==void 0||i.ignoreIfNotExists!==void 0)&&(o.options=i),s!==void 0&&(o.annotationId=s),o}t.create=e;function r(n){let i=n;return i&&i.kind==="delete"&&I.string(i.uri)&&(i.options===void 0||(i.options.recursive===void 0||I.boolean(i.options.recursive))&&(i.options.ignoreIfNotExists===void 0||I.boolean(i.options.ignoreIfNotExists)))&&(i.annotationId===void 0||na.is(i.annotationId))}t.is=r})(sT||(sT={}));var oT;(function(t){function e(r){let n=r;return n&&(n.changes!==void 0||n.documentChanges!==void 0)&&(n.documentChanges===void 0||n.documentChanges.every(i=>I.string(i.kind)?nT.is(i)||iT.is(i)||sT.is(i):rT.is(i)))}t.is=e})(oT||(oT={}));var OE;(function(t){function e(n){return{uri:n}}t.create=e;function r(n){let i=n;return I.defined(i)&&I.string(i.uri)}t.is=r})(OE||(OE={}));var ME;(function(t){function e(n,i){return{uri:n,version:i}}t.create=e;function r(n){let i=n;return I.defined(i)&&I.string(i.uri)&&I.integer(i.version)}t.is=r})(ME||(ME={}));var aT;(function(t){function e(n,i){return{uri:n,version:i}}t.create=e;function r(n){let i=n;return I.defined(i)&&I.string(i.uri)&&(i.version===null||I.integer(i.version))}t.is=r})(aT||(aT={}));var xE;(function(t){function e(n,i,s,o){return{uri:n,languageId:i,version:s,text:o}}t.create=e;function r(n){let i=n;return I.defined(i)&&I.string(i.uri)&&I.string(i.languageId)&&I.integer(i.version)&&I.string(i.text)}t.is=r})(xE||(xE={}));var is;(function(t){t.PlainText="plaintext",t.Markdown="markdown";function e(r){let n=r;return n===t.PlainText||n===t.Markdown}t.is=e})(is||(is={}));var Mc;(function(t){function e(r){let n=r;return I.objectLiteral(r)&&is.is(n.kind)&&I.string(n.value)}t.is=e})(Mc||(Mc={}));var LE;(function(t){t.Text=1,t.Method=2,t.Function=3,t.Constructor=4,t.Field=5,t.Variable=6,t.Class=7,t.Interface=8,t.Module=9,t.Property=10,t.Unit=11,t.Value=12,t.Enum=13,t.Keyword=14,t.Snippet=15,t.Color=16,t.File=17,t.Reference=18,t.Folder=19,t.EnumMember=20,t.Constant=21,t.Struct=22,t.Event=23,t.Operator=24,t.TypeParameter=25})(LE||(LE={}));var qE;(function(t){t.PlainText=1,t.Snippet=2})(qE||(qE={}));var $E;(function(t){t.Deprecated=1})($E||($E={}));var BE;(function(t){function e(n,i,s){return{newText:n,insert:i,replace:s}}t.create=e;function r(n){let i=n;return i&&I.string(i.newText)&&Ct.is(i.insert)&&Ct.is(i.replace)}t.is=r})(BE||(BE={}));var FE;(function(t){t.asIs=1,t.adjustIndentation=2})(FE||(FE={}));var jE;(function(t){function e(r){let n=r;return n&&(I.string(n.detail)||n.detail===void 0)&&(I.string(n.description)||n.description===void 0)}t.is=e})(jE||(jE={}));var UE;(function(t){function e(r){return{label:r}}t.create=e})(UE||(UE={}));var HE;(function(t){function e(r,n){return{items:r||[],isIncomplete:!!n}}t.create=e})(HE||(HE={}));var $f;(function(t){function e(n){return n.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")}t.fromPlainText=e;function r(n){let i=n;return I.string(i)||I.objectLiteral(i)&&I.string(i.language)&&I.string(i.value)}t.is=r})($f||($f={}));var VE;(function(t){function e(r){let n=r;return!!n&&I.objectLiteral(n)&&(Mc.is(n.contents)||$f.is(n.contents)||I.typedArray(n.contents,$f.is))&&(r.range===void 0||Ct.is(r.range))}t.is=e})(VE||(VE={}));var Lr;(function(t){function e(r,n){return n?{label:r,documentation:n}:{label:r}}t.create=e})(Lr||(Lr={}));var zE;(function(t){function e(r,n,...i){let s={label:r};return I.defined(n)&&(s.documentation=n),I.defined(i)?s.parameters=i:s.parameters=[],s}t.create=e})(zE||(zE={}));var WE;(function(t){t.Text=1,t.Read=2,t.Write=3})(WE||(WE={}));var GE;(function(t){function e(r,n){let i={range:r};return I.number(n)&&(i.kind=n),i}t.create=e})(GE||(GE={}));var KE;(function(t){t.File=1,t.Module=2,t.Namespace=3,t.Package=4,t.Class=5,t.Method=6,t.Property=7,t.Field=8,t.Constructor=9,t.Enum=10,t.Interface=11,t.Function=12,t.Variable=13,t.Constant=14,t.String=15,t.Number=16,t.Boolean=17,t.Array=18,t.Object=19,t.Key=20,t.Null=21,t.EnumMember=22,t.Struct=23,t.Event=24,t.Operator=25,t.TypeParameter=26})(KE||(KE={}));var YE;(function(t){t.Deprecated=1})(YE||(YE={}));var XE;(function(t){function e(r,n,i,s,o){let a={name:r,kind:n,location:{uri:s,range:i}};return o&&(a.containerName=o),a}t.create=e})(XE||(XE={}));var JE;(function(t){function e(r,n,i,s){return s!==void 0?{name:r,kind:n,location:{uri:i,range:s}}:{name:r,kind:n,location:{uri:i}}}t.create=e})(JE||(JE={}));var QE;(function(t){function e(n,i,s,o,a,c){let l={name:n,detail:i,kind:s,range:o,selectionRange:a};return c!==void 0&&(l.children=c),l}t.create=e;function r(n){let i=n;return i&&I.string(i.name)&&I.number(i.kind)&&Ct.is(i.range)&&Ct.is(i.selectionRange)&&(i.detail===void 0||I.string(i.detail))&&(i.deprecated===void 0||I.boolean(i.deprecated))&&(i.children===void 0||Array.isArray(i.children))&&(i.tags===void 0||Array.isArray(i.tags))}t.is=r})(QE||(QE={}));var ZE;(function(t){t.Empty="",t.QuickFix="quickfix",t.Refactor="refactor",t.RefactorExtract="refactor.extract",t.RefactorInline="refactor.inline",t.RefactorRewrite="refactor.rewrite",t.Source="source",t.SourceOrganizeImports="source.organizeImports",t.SourceFixAll="source.fixAll"})(ZE||(ZE={}));var Bf;(function(t){t.Invoked=1,t.Automatic=2})(Bf||(Bf={}));var eD;(function(t){function e(n,i,s){let o={diagnostics:n};return i!=null&&(o.only=i),s!=null&&(o.triggerKind=s),o}t.create=e;function r(n){let i=n;return I.defined(i)&&I.typedArray(i.diagnostics,qf.is)&&(i.only===void 0||I.typedArray(i.only,I.string))&&(i.triggerKind===void 0||i.triggerKind===Bf.Invoked||i.triggerKind===Bf.Automatic)}t.is=r})(eD||(eD={}));var tD;(function(t){function e(n,i,s){let o={title:n},a=!0;return typeof i=="string"?(a=!1,o.kind=i):ta.is(i)?o.command=i:o.edit=i,a&&s!==void 0&&(o.kind=s),o}t.create=e;function r(n){let i=n;return i&&I.string(i.title)&&(i.diagnostics===void 0||I.typedArray(i.diagnostics,qf.is))&&(i.kind===void 0||I.string(i.kind))&&(i.edit!==void 0||i.command!==void 0)&&(i.command===void 0||ta.is(i.command))&&(i.isPreferred===void 0||I.boolean(i.isPreferred))&&(i.edit===void 0||oT.is(i.edit))}t.is=r})(tD||(tD={}));var rD;(function(t){function e(n,i){let s={range:n};return I.defined(i)&&(s.data=i),s}t.create=e;function r(n){let i=n;return I.defined(i)&&Ct.is(i.range)&&(I.undefined(i.command)||ta.is(i.command))}t.is=r})(rD||(rD={}));var nD;(function(t){function e(n,i){return{tabSize:n,insertSpaces:i}}t.create=e;function r(n){let i=n;return I.defined(i)&&I.uinteger(i.tabSize)&&I.boolean(i.insertSpaces)}t.is=r})(nD||(nD={}));var iD;(function(t){function e(n,i,s){return{range:n,target:i,data:s}}t.create=e;function r(n){let i=n;return I.defined(i)&&Ct.is(i.range)&&(I.undefined(i.target)||I.string(i.target))}t.is=r})(iD||(iD={}));var sD;(function(t){function e(n,i){return{range:n,parent:i}}t.create=e;function r(n){let i=n;return I.objectLiteral(i)&&Ct.is(i.range)&&(i.parent===void 0||t.is(i.parent))}t.is=r})(sD||(sD={}));var oD;(function(t){t.namespace="namespace",t.type="type",t.class="class",t.enum="enum",t.interface="interface",t.struct="struct",t.typeParameter="typeParameter",t.parameter="parameter",t.variable="variable",t.property="property",t.enumMember="enumMember",t.event="event",t.function="function",t.method="method",t.macro="macro",t.keyword="keyword",t.modifier="modifier",t.comment="comment",t.string="string",t.number="number",t.regexp="regexp",t.operator="operator",t.decorator="decorator"})(oD||(oD={}));var aD;(function(t){t.declaration="declaration",t.definition="definition",t.readonly="readonly",t.static="static",t.deprecated="deprecated",t.abstract="abstract",t.async="async",t.modification="modification",t.documentation="documentation",t.defaultLibrary="defaultLibrary"})(aD||(aD={}));var cD;(function(t){function e(r){let n=r;return I.objectLiteral(n)&&(n.resultId===void 0||typeof n.resultId=="string")&&Array.isArray(n.data)&&(n.data.length===0||typeof n.data[0]=="number")}t.is=e})(cD||(cD={}));var lD;(function(t){function e(n,i){return{range:n,text:i}}t.create=e;function r(n){let i=n;return i!=null&&Ct.is(i.range)&&I.string(i.text)}t.is=r})(lD||(lD={}));var uD;(function(t){function e(n,i,s){return{range:n,variableName:i,caseSensitiveLookup:s}}t.create=e;function r(n){let i=n;return i!=null&&Ct.is(i.range)&&I.boolean(i.caseSensitiveLookup)&&(I.string(i.variableName)||i.variableName===void 0)}t.is=r})(uD||(uD={}));var dD;(function(t){function e(n,i){return{range:n,expression:i}}t.create=e;function r(n){let i=n;return i!=null&&Ct.is(i.range)&&(I.string(i.expression)||i.expression===void 0)}t.is=r})(dD||(dD={}));var fD;(function(t){function e(n,i){return{frameId:n,stoppedLocation:i}}t.create=e;function r(n){let i=n;return I.defined(i)&&Ct.is(n.stoppedLocation)}t.is=r})(fD||(fD={}));var cT;(function(t){t.Type=1,t.Parameter=2;function e(r){return r===1||r===2}t.is=e})(cT||(cT={}));var lT;(function(t){function e(n){return{value:n}}t.create=e;function r(n){let i=n;return I.objectLiteral(i)&&(i.tooltip===void 0||I.string(i.tooltip)||Mc.is(i.tooltip))&&(i.location===void 0||Lf.is(i.location))&&(i.command===void 0||ta.is(i.command))}t.is=r})(lT||(lT={}));var pD;(function(t){function e(n,i,s){let o={position:n,label:i};return s!==void 0&&(o.kind=s),o}t.create=e;function r(n){let i=n;return I.objectLiteral(i)&&Yr.is(i.position)&&(I.string(i.label)||I.typedArray(i.label,lT.is))&&(i.kind===void 0||cT.is(i.kind))&&i.textEdits===void 0||I.typedArray(i.textEdits,ra.is)&&(i.tooltip===void 0||I.string(i.tooltip)||Mc.is(i.tooltip))&&(i.paddingLeft===void 0||I.boolean(i.paddingLeft))&&(i.paddingRight===void 0||I.boolean(i.paddingRight))}t.is=r})(pD||(pD={}));var hD;(function(t){function e(r){return{kind:"snippet",value:r}}t.createSnippet=e})(hD||(hD={}));var mD;(function(t){function e(r,n,i,s){return{insertText:r,filterText:n,range:i,command:s}}t.create=e})(mD||(mD={}));var gD;(function(t){function e(r){return{items:r}}t.create=e})(gD||(gD={}));var yD;(function(t){t.Invoked=0,t.Automatic=1})(yD||(yD={}));var TD;(function(t){function e(r,n){return{range:r,text:n}}t.create=e})(TD||(TD={}));var vD;(function(t){function e(r,n){return{triggerKind:r,selectedCompletionInfo:n}}t.create=e})(vD||(vD={}));var bD;(function(t){function e(r){let n=r;return I.objectLiteral(n)&&Qy.is(n.uri)&&I.string(n.name)}t.is=e})(bD||(bD={}));var _D;(function(t){function e(s,o,a,c){return new uT(s,o,a,c)}t.create=e;function r(s){let o=s;return!!(I.defined(o)&&I.string(o.uri)&&(I.undefined(o.languageId)||I.string(o.languageId))&&I.uinteger(o.lineCount)&&I.func(o.getText)&&I.func(o.positionAt)&&I.func(o.offsetAt))}t.is=r;function n(s,o){let a=s.getText(),c=i(o,(u,d)=>{let f=u.range.start.line-d.range.start.line;return f===0?u.range.start.character-d.range.start.character:f}),l=a.length;for(let u=c.length-1;u>=0;u--){let d=c[u],f=s.offsetAt(d.range.start),p=s.offsetAt(d.range.end);if(p<=l)a=a.substring(0,f)+d.newText+a.substring(p,a.length);else throw new Error("Overlapping edit");l=f}return a}t.applyEdits=n;function i(s,o){if(s.length<=1)return s;let a=s.length/2|0,c=s.slice(0,a),l=s.slice(a);i(c,o),i(l,o);let u=0,d=0,f=0;for(;u<c.length&&d<l.length;)o(c[u],l[d])<=0?s[f++]=c[u++]:s[f++]=l[d++];for(;u<c.length;)s[f++]=c[u++];for(;d<l.length;)s[f++]=l[d++];return s}})(_D||(_D={}));var uT=class{constructor(e,r,n,i){this._uri=e,this._languageId=r,this._version=n,this._content=i,this._lineOffsets=void 0}get uri(){return this._uri}get languageId(){return this._languageId}get version(){return this._version}getText(e){if(e){let r=this.offsetAt(e.start),n=this.offsetAt(e.end);return this._content.substring(r,n)}return this._content}update(e,r){this._content=e.text,this._version=r,this._lineOffsets=void 0}getLineOffsets(){if(this._lineOffsets===void 0){let e=[],r=this._content,n=!0;for(let i=0;i<r.length;i++){n&&(e.push(i),n=!1);let s=r.charAt(i);n=s==="\r"||s===`
241
241
  `,s==="\r"&&i+1<r.length&&r.charAt(i+1)===`
242
- `&&i++}n&&r.length>0&&e.push(r.length),this._lineOffsets=e}return this._lineOffsets}positionAt(e){e=Math.max(Math.min(e,this._content.length),0);let r=this.getLineOffsets(),n=0,i=r.length;if(i===0)return Kr.create(0,e);for(;n<i;){let o=Math.floor((n+i)/2);r[o]>e?i=o:n=o+1}let s=n-1;return Kr.create(s,e-r[s])}offsetAt(e){let r=this.getLineOffsets();if(e.line>=r.length)return this._content.length;if(e.line<0)return 0;let n=r[e.line],i=e.line+1<r.length?r[e.line+1]:this._content.length;return Math.max(Math.min(n+e.character,i),n)}get lineCount(){return this.getLineOffsets().length}},I;(function(t){let e=Object.prototype.toString;function r(p){return typeof p<"u"}t.defined=r;function n(p){return typeof p>"u"}t.undefined=n;function i(p){return p===!0||p===!1}t.boolean=i;function s(p){return e.call(p)==="[object String]"}t.string=s;function o(p){return e.call(p)==="[object Number]"}t.number=o;function a(p,g,h){return e.call(p)==="[object Number]"&&g<=p&&p<=h}t.numberRange=a;function c(p){return e.call(p)==="[object Number]"&&-2147483648<=p&&p<=2147483647}t.integer=c;function l(p){return e.call(p)==="[object Number]"&&0<=p&&p<=2147483647}t.uinteger=l;function u(p){return e.call(p)==="[object Function]"}t.func=u;function d(p){return p!==null&&typeof p=="object"}t.objectLiteral=d;function f(p,g){return Array.isArray(p)&&p.every(g)}t.typedArray=f})(I||(I={}));var SD=()=>{let t=new Y("interrupt-map-mask",z("PROP_ENCODED_ARRAY"),"optional",void 0,void 0,(e,r)=>{let n=[],i=e.parent,s=xe(e.ast.values);if(!s?.length)return[];let o=i.getProperty("#interrupt-cells");if(!o)return n;let a=i.addressCells(r),c=$e(o,0,0,r);if(c==null)return n;let l=[...Array.from({length:a},(u,d)=>`AddressMask${a>1?d:""}`),...Array.from({length:c},(u,d)=>`InterruptMask${c>1?d:""}`)];if(t.signatureArgs=l.map(u=>xr.create(u)),s.length!==a+c){let u=e.ast.values??e.ast;return n.push(j(19,u.firstToken,u.lastToken,u,{templateStrings:[e.name,`<${[...Array.from({length:a},()=>"AddressMask"),...Array.from({length:c},()=>"InterruptMask")].join(" ")}>`]})),n}return n});return t.description=["An interrupt-map-mask property is specified for a nexus node in the interrupt tree. This property specifies a mask that is ANDed with the incoming unit interrupt specifier being looked up in the table specified in the interrupt-mapproperty."],t};var ND=$(U());var kD=()=>{let t=new Y(/^(?!interrupt-|no-).*?-map$/,z("PROP_ENCODED_ARRAY"),"optional",void 0,void 0,(e,r)=>{let n=e.name.split("-map",1)[0],i=[],s=e.parent,o=e.parent.root,a=s.getProperty(`#${n}-cells`);if(!a)return i.push(j(16,e.ast.firstToken,e.ast.lastToken,e.ast,{linkedTo:[...s.nodeNameOrLabelRef],templateStrings:[e.name,`#${n}-cells`,`/${s.path.slice(1).join("/")}`]})),i;let c=$e(a,0,0,r);if(c==null)return i;let l=xe(e.ast.values);if(!l?.length)return[];let u={},d=0,f=0,p=[],g=0;for(;d<l.length;){if(p.push([...Array.from({length:c},(R,D)=>`${g}_Interrupt${c>1?D:""}`),`${g}_SpecifierParent`,`${g}_ParentSpecifier...`]),d+c>=l.length){let R=d+c,D=l[l.length-1];i.push(j(20,D.firstToken,D.lastToken,D,{templateStrings:[e.name,`after the last value of ${p.at(-1).slice((l.length-f)%R===0?R:(l.length-f)%R).join(" ")}`]}));break}let h=new Q(oe(l.at(d).firstToken,l.at(c+d-1)?.lastToken)),T="";for(let R=d;R<c+d;R++){let D=l[R];T+=`${D instanceof Ee?D.evaluate(r).toString():D.toString()}:`}if(u[T]??=[],u[T].push(h),d+=c,l.length<d+1){let R=c+1,D=l[l.length-1];i.push(j(20,D.firstToken,D.lastToken,D,{templateStrings:[e.name,`after the last value of ${p.at(-1).slice((l.length-f)%R===0?R:(l.length-f)%R).join(" ")}`]}));break}let S=dn(l[d],o);if(!S){let R=l[d];i.push(j(17,R.firstToken,R.lastToken,R));break}let _=S.getProperty(`#${n}-cells`);if(!_){let R=l[d];return i.push(j(16,R.firstToken,R.lastToken,R,{linkedTo:[...S.nodeNameOrLabelRef],templateStrings:[e.name,`#${n}-cells`,`/${s.path.slice(1).join("/")}`]})),i}d++;let v=$e(_,0,0,r);if(v==null)break;if(p.splice(-1,1,[...Array.from({length:c},(R,D)=>`${g}_ChildSpecifier${c>1?D:""}`),`${g}_SpecifierParent`,...Array.from({length:v},(R,D)=>`${g}_ParentSpecifier${v>1?D:""}`)]),d+=v,l.length<d){let R=c+1+v,D=l[l.length-1];i.push(j(20,D.firstToken,D.lastToken,D,{templateStrings:[e.name,`after the last value of ${p.at(-1).slice((l.length-f)%R===0?R:(l.length-f)%R).join(" ")}`]}));break}f=d,g++}return p.push([...Array.from({length:c},(h,T)=>`${g}_Interrupt${c>1?T:""}`),`${g}_SpecifierParent`,`${g}_ParentSpecifier...`]),t.signatureArgs=p.map(h=>h.map(T=>ND.ParameterInformation.create(T))),Object.values(u).forEach(h=>{if(h.length>1){let T=h[h.length-1];i.push(j(30,T.firstToken,T.lastToken,T,{linkedTo:h.slice(0,-1)}))}}),i});return t.description=["A `\u2039specifier>-map` is a property in a nexus node that bridges one specifier domain with a set of parent specifier domains and describes how specifiers in the child domain are mapped to their respective parent domains.","The map is a table where each row is a mapping entry consisting of three components: child specifier, specifier parent, and parent specifier.","- child specifier The specifier of the child node being mapped. The number of 32-bit cells required to specify this component is described by the `#<specifier>-cells` property of this node-the nexus node containing the \u2039specifier>-map property.","- Specifier parent A single <phandle > value that points to the specifier parent to which the child domain is being mapped.","- Parent specifier: The specifier in the parent domain. The number of 32-bit cells required to specify this component is described by the `#<specifier>-cells` property of the specifier parent node.","Lookups are performed on the mapping table by matching a specifier against the child specifier in the map. Because some fields in the specifier may not be relevant or need to be modified, a mask is applied before the lookup is done. This mask is defined in the `<specifier>-map-mask` property","Similarly, when the specifier is mapped, some fields in the unit specifier may need to be kept unmodified and passed through from the child node to the parent node. In this case, a `<specifier>-map-pass-thru` property may be specified to apply a mask to the child specifier and copy any bits that match to the parent unit specifier."],t.list=!0,t};var RD=()=>{let t=new Y(/^(?!interrupt-).*?-map-mask$/,z("PROP_ENCODED_ARRAY"),"optional",void 0,void 0,(e,r)=>{let n=[],i=e.parent,s=xe(e.ast.values);if(!s?.length)return[];let o=e.name.split("-map",1)[0],a=i.getProperty(`#${o}-cells`);if(!a)return n;let c=$e(a,0,0,r);if(c==null)return n;let l=[...Array.from({length:c},(u,d)=>`mask${c>1?d:""}`)];if(t.signatureArgs=l.map(u=>xr.create(u)),s.length!==c){let u=e.ast.values??e.ast;return n.push(j(19,u.firstToken,u.lastToken,u,{templateStrings:[e.name,`<${[...Array.from({length:c},()=>"mask")].join(" ")}>`]})),n}return n});return t.description=["A `<specifier>-map-mask` property may be specified for a nexus node. This property specifies a mask that is ANDed with the child unit specifier being looked up in the table specified in the `<specifier>-map` property. If this propertyis notspecified, the maskis assumedto be a mask with all bits set."],t};var PD=()=>{let t=new Y(/^(?!interrupt-).*?-map-pass-thru$/,z("PROP_ENCODED_ARRAY"),"optional",void 0,void 0,(e,r)=>{let n=[],i=e.parent,s=xe(e.ast.values);if(!s?.length)return[];let o=e.name.split("-map",1)[0],a=i.getProperty(`#${o}-cells`);if(!a)return n;let c=$e(a,0,0,r);if(c==null)return n;let l=[...Array.from({length:c},(u,d)=>`mask${c>1?d:""}`)];if(t.signatureArgs=l.map(u=>xr.create(u)),s.length!==c){let u=e.ast.values??e.ast;return n.push(j(19,u.firstToken,u.lastToken,u,{templateStrings:[e.name,`<${[...Array.from({length:c},()=>"mask")].join(" ")}>`]})),n}return n});return t.description=["A `<specifier>-map-pass-thru` property may be specified for a nexus node. This property specifies a mask that is applied to the child unit specifier being looked up in the table specified in the `<specifier>-map` property. Any matching bits in the child unit specifier are copied over to the parent specifier. If this property is not specified, the mask isassumedtobe amaskwithno bits set."],t};var wD=()=>{let t=new Y(/^(?!#(?:address-|interrupt-|size-)).*-cells$/,z("U32"));return t.list=!0,t.description=["The `#<specifier>-cells` propertydefines the number of cells required to encode a specifier for adomain."],t};function ur(){let t=new Nt;return t.addProperty([rE(),TE(),yE(),gE(),Of(),If(),mE(),pE(),Af(),fE(),uE(),lE(),vE(),nE(),aE(),oE(),cE(),iE(),sE(),_E(),SD(),kD(),RD(),PD(),wD()]),t}var ED=()=>{let t=new Y("chassis-type",z("STRING"),"optional",void 0,["desktop","laptop","convertible","server","tablet","handset","watch","embedded"]);return t.description=["Specifies a string that identifies the form-factor of the system."],t};var DD=()=>{let t=new Y("serial-number",z("STRING"),"optional");return t.description=[`Specifies a string representing the device\u2019s se-
243
- rialnumber.`],t};function CD(){let t=ur();t.noMismatchPropertiesAllowed=!0;let e=t.properties.find(s=>s.name==="#address-cells");e.required=()=>"required";let r=t.properties.find(s=>s.name==="#size-cells");r.required=()=>"required";let n=t.properties.find(s=>s.name==="model");n.required=()=>"required";let i=t.properties.find(s=>s.name==="compatible");return i.required=()=>"required",t.addProperty([ED(),DD()]),t}var AD=$(U());function ID(){let t=new Nt((r,n)=>{let i=[];if(n.parent?.name!=="/"){let s=n.definitions[0];i.push(j(26,s.firstToken,s.lastToken,s,{linkedTo:n.definitions.slice(1),templateStrings:["Aliases node can only be added to a root node"]}))}return n.nodes.forEach(s=>{s.definitions.forEach(o=>{i.push(j(26,o.firstToken,o.lastToken,o,{templateStrings:["Aliases node can not have child nodes"],edit:AD.TextEdit.del(Wr(o.firstToken.prevToken,o.lastToken,!1)),codeActionTitle:"Delete Node"}))})}),i});t.noMismatchPropertiesAllowed=!0;let e=new Y(/^[-A-Za-z0-9]+$/,z(["STRING","U32"]),void 0,void 0,void 0,r=>{let n=[],i=r.ast.quickValues;if(i?.length===1&&typeof i[0]=="string"){let s=r.ast.values??r.ast;if(!i[0].startsWith("/"))return n.push(j(23,s.firstToken,s.lastToken,s,{templateStrings:[i[0],r.name]})),n;if(i[0].trim().endsWith("/"))return n.push(j(23,s.firstToken,s.lastToken,s,{templateStrings:["",i[0]]})),n;let o=r.parent.root,a=i[0].split("/").slice(1);for(;a[0];){let c=o,l=a.splice(0,1)[0],[u,d]=l.split("@"),f=d?.split(",").map(p=>Number.parseInt(p,16));if(o=u?c.getNode(u,f,!1):void 0,!o){n.push(j(23,s.firstToken,s.lastToken,s,{templateStrings:[u,c.fullName]}));break}}}return n});return e.description=["Each property of the /aliases node defines an alias."],t.addProperty([e]),t}function OD(){let t=ur();t.noMismatchPropertiesAllowed=!0;let e=t.properties.find(r=>r.name==="reg");return e.required=()=>"required",t}var MD=(t,e,r)=>{let n=t?.(e,r)??[],i=e.parent.root.getProperty(e.name),s=i?$e(i,0,0,r):void 0,o=e.parent.getProperty(e.name);return(o?$e(o,0,0,r):void 0)!==s&&n.push(j(28,e.ast.firstToken,e.ast.lastToken,e.ast,{linkedTo:[...i?.ast?[i.ast]:[]],templateStrings:[`${e.name} value in this node must match value of root node`]})),n};function xD(){let t=new Nt;t.noMismatchPropertiesAllowed=!0;let e=Of(),r=e?.additionalTypeCheck;e.additionalTypeCheck=(o,a)=>MD(r,o,a),e.required=()=>"required";let n=If(),i=n?.additionalTypeCheck;n.additionalTypeCheck=(o,a)=>MD(i,o,a),n.required=()=>"required";let s=Af();return s.required=()=>"required",s.type=z("EMPTY"),s.additionalTypeCheck=void 0,t.addProperty([e,n,s]),t}function LD(){let t=ur();t.additionalValidations=(i,s)=>{let o=[];if(s.parent?.name!=="/"){let a=s.definitions[0];o.push(j(26,a.firstToken,a.lastToken,a,{linkedTo:s.definitions.slice(1),templateStrings:["Chosen node can only be added to a root node"]}))}return o};let e=new Y("bootargs",z("STRING"));e.description=[`A string that specifies the boot arguments for
242
+ `&&i++}n&&r.length>0&&e.push(r.length),this._lineOffsets=e}return this._lineOffsets}positionAt(e){e=Math.max(Math.min(e,this._content.length),0);let r=this.getLineOffsets(),n=0,i=r.length;if(i===0)return Yr.create(0,e);for(;n<i;){let o=Math.floor((n+i)/2);r[o]>e?i=o:n=o+1}let s=n-1;return Yr.create(s,e-r[s])}offsetAt(e){let r=this.getLineOffsets();if(e.line>=r.length)return this._content.length;if(e.line<0)return 0;let n=r[e.line],i=e.line+1<r.length?r[e.line+1]:this._content.length;return Math.max(Math.min(n+e.character,i),n)}get lineCount(){return this.getLineOffsets().length}},I;(function(t){let e=Object.prototype.toString;function r(p){return typeof p<"u"}t.defined=r;function n(p){return typeof p>"u"}t.undefined=n;function i(p){return p===!0||p===!1}t.boolean=i;function s(p){return e.call(p)==="[object String]"}t.string=s;function o(p){return e.call(p)==="[object Number]"}t.number=o;function a(p,g,h){return e.call(p)==="[object Number]"&&g<=p&&p<=h}t.numberRange=a;function c(p){return e.call(p)==="[object Number]"&&-2147483648<=p&&p<=2147483647}t.integer=c;function l(p){return e.call(p)==="[object Number]"&&0<=p&&p<=2147483647}t.uinteger=l;function u(p){return e.call(p)==="[object Function]"}t.func=u;function d(p){return p!==null&&typeof p=="object"}t.objectLiteral=d;function f(p,g){return Array.isArray(p)&&p.every(g)}t.typedArray=f})(I||(I={}));var SD=()=>{let t=new Y("interrupt-map-mask",z("PROP_ENCODED_ARRAY"),"optional",void 0,void 0,(e,r)=>{let n=[],i=e.parent,s=xe(e.ast.values);if(!s?.length)return[];let o=i.getProperty("#interrupt-cells");if(!o)return n;let a=i.addressCells(r),c=$e(o,0,0,r);if(c==null)return n;let l=[...Array.from({length:a},(u,d)=>`AddressMask${a>1?d:""}`),...Array.from({length:c},(u,d)=>`InterruptMask${c>1?d:""}`)];if(t.signatureArgs=l.map(u=>Lr.create(u)),s.length!==a+c){let u=e.ast.values??e.ast;return n.push(j(19,u.firstToken,u.lastToken,u,{templateStrings:[e.name,`<${[...Array.from({length:a},()=>"AddressMask"),...Array.from({length:c},()=>"InterruptMask")].join(" ")}>`]})),n}return n});return t.description=["An interrupt-map-mask property is specified for a nexus node in the interrupt tree. This property specifies a mask that is ANDed with the incoming unit interrupt specifier being looked up in the table specified in the interrupt-mapproperty."],t};var ND=$(U());var kD=()=>{let t=new Y(/^(?!interrupt-|no-).*?-map$/,z("PROP_ENCODED_ARRAY"),"optional",void 0,void 0,(e,r)=>{let n=e.name.split("-map",1)[0],i=[],s=e.parent,o=e.parent.root,a=s.getProperty(`#${n}-cells`);if(!a)return i.push(j(16,e.ast.firstToken,e.ast.lastToken,e.ast,{linkedTo:[...s.nodeNameOrLabelRef],templateStrings:[e.name,`#${n}-cells`,`/${s.path.slice(1).join("/")}`]})),i;let c=$e(a,0,0,r);if(c==null)return i;let l=xe(e.ast.values);if(!l?.length)return[];let u={},d=0,f=0,p=[],g=0;for(;d<l.length;){if(p.push([...Array.from({length:c},(R,D)=>`${g}_Interrupt${c>1?D:""}`),`${g}_SpecifierParent`,`${g}_ParentSpecifier...`]),d+c>=l.length){let R=d+c,D=l[l.length-1];i.push(j(20,D.firstToken,D.lastToken,D,{templateStrings:[e.name,`after the last value of ${p.at(-1).slice((l.length-f)%R===0?R:(l.length-f)%R).join(" ")}`]}));break}let h=new Q(oe(l.at(d).firstToken,l.at(c+d-1)?.lastToken)),T="";for(let R=d;R<c+d;R++){let D=l[R];T+=`${D instanceof Ee?D.evaluate(r).toString():D.toString()}:`}if(u[T]??=[],u[T].push(h),d+=c,l.length<d+1){let R=c+1,D=l[l.length-1];i.push(j(20,D.firstToken,D.lastToken,D,{templateStrings:[e.name,`after the last value of ${p.at(-1).slice((l.length-f)%R===0?R:(l.length-f)%R).join(" ")}`]}));break}let S=dn(l[d],o);if(!S){let R=l[d];i.push(j(17,R.firstToken,R.lastToken,R));break}let _=S.getProperty(`#${n}-cells`);if(!_){let R=l[d];return i.push(j(16,R.firstToken,R.lastToken,R,{linkedTo:[...S.nodeNameOrLabelRef],templateStrings:[e.name,`#${n}-cells`,`/${s.path.slice(1).join("/")}`]})),i}d++;let v=$e(_,0,0,r);if(v==null)break;if(p.splice(-1,1,[...Array.from({length:c},(R,D)=>`${g}_ChildSpecifier${c>1?D:""}`),`${g}_SpecifierParent`,...Array.from({length:v},(R,D)=>`${g}_ParentSpecifier${v>1?D:""}`)]),d+=v,l.length<d){let R=c+1+v,D=l[l.length-1];i.push(j(20,D.firstToken,D.lastToken,D,{templateStrings:[e.name,`after the last value of ${p.at(-1).slice((l.length-f)%R===0?R:(l.length-f)%R).join(" ")}`]}));break}f=d,g++}return p.push([...Array.from({length:c},(h,T)=>`${g}_Interrupt${c>1?T:""}`),`${g}_SpecifierParent`,`${g}_ParentSpecifier...`]),t.signatureArgs=p.map(h=>h.map(T=>ND.ParameterInformation.create(T))),Object.values(u).forEach(h=>{if(h.length>1){let T=h[h.length-1];i.push(j(30,T.firstToken,T.lastToken,T,{linkedTo:h.slice(0,-1)}))}}),i});return t.description=["A `\u2039specifier>-map` is a property in a nexus node that bridges one specifier domain with a set of parent specifier domains and describes how specifiers in the child domain are mapped to their respective parent domains.","The map is a table where each row is a mapping entry consisting of three components: child specifier, specifier parent, and parent specifier.","- child specifier The specifier of the child node being mapped. The number of 32-bit cells required to specify this component is described by the `#<specifier>-cells` property of this node-the nexus node containing the \u2039specifier>-map property.","- Specifier parent A single <phandle > value that points to the specifier parent to which the child domain is being mapped.","- Parent specifier: The specifier in the parent domain. The number of 32-bit cells required to specify this component is described by the `#<specifier>-cells` property of the specifier parent node.","Lookups are performed on the mapping table by matching a specifier against the child specifier in the map. Because some fields in the specifier may not be relevant or need to be modified, a mask is applied before the lookup is done. This mask is defined in the `<specifier>-map-mask` property","Similarly, when the specifier is mapped, some fields in the unit specifier may need to be kept unmodified and passed through from the child node to the parent node. In this case, a `<specifier>-map-pass-thru` property may be specified to apply a mask to the child specifier and copy any bits that match to the parent unit specifier."],t.list=!0,t};var RD=()=>{let t=new Y(/^(?!interrupt-).*?-map-mask$/,z("PROP_ENCODED_ARRAY"),"optional",void 0,void 0,(e,r)=>{let n=[],i=e.parent,s=xe(e.ast.values);if(!s?.length)return[];let o=e.name.split("-map",1)[0],a=i.getProperty(`#${o}-cells`);if(!a)return n;let c=$e(a,0,0,r);if(c==null)return n;let l=[...Array.from({length:c},(u,d)=>`mask${c>1?d:""}`)];if(t.signatureArgs=l.map(u=>Lr.create(u)),s.length!==c){let u=e.ast.values??e.ast;return n.push(j(19,u.firstToken,u.lastToken,u,{templateStrings:[e.name,`<${[...Array.from({length:c},()=>"mask")].join(" ")}>`]})),n}return n});return t.description=["A `<specifier>-map-mask` property may be specified for a nexus node. This property specifies a mask that is ANDed with the child unit specifier being looked up in the table specified in the `<specifier>-map` property. If this propertyis notspecified, the maskis assumedto be a mask with all bits set."],t};var PD=()=>{let t=new Y(/^(?!interrupt-).*?-map-pass-thru$/,z("PROP_ENCODED_ARRAY"),"optional",void 0,void 0,(e,r)=>{let n=[],i=e.parent,s=xe(e.ast.values);if(!s?.length)return[];let o=e.name.split("-map",1)[0],a=i.getProperty(`#${o}-cells`);if(!a)return n;let c=$e(a,0,0,r);if(c==null)return n;let l=[...Array.from({length:c},(u,d)=>`mask${c>1?d:""}`)];if(t.signatureArgs=l.map(u=>Lr.create(u)),s.length!==c){let u=e.ast.values??e.ast;return n.push(j(19,u.firstToken,u.lastToken,u,{templateStrings:[e.name,`<${[...Array.from({length:c},()=>"mask")].join(" ")}>`]})),n}return n});return t.description=["A `<specifier>-map-pass-thru` property may be specified for a nexus node. This property specifies a mask that is applied to the child unit specifier being looked up in the table specified in the `<specifier>-map` property. Any matching bits in the child unit specifier are copied over to the parent specifier. If this property is not specified, the mask isassumedtobe amaskwithno bits set."],t};var wD=()=>{let t=new Y(/^(?!#(?:address-|interrupt-|size-)).*-cells$/,z("U32"));return t.list=!0,t.description=["The `#<specifier>-cells` propertydefines the number of cells required to encode a specifier for adomain."],t};function ur(){let t=new Nt;return t.addProperty([rE(),TE(),yE(),gE(),Of(),If(),mE(),pE(),Af(),fE(),uE(),lE(),vE(),nE(),aE(),oE(),cE(),iE(),sE(),_E(),SD(),kD(),RD(),PD(),wD()]),t}var ED=()=>{let t=new Y("chassis-type",z("STRING"),"optional",void 0,["desktop","laptop","convertible","server","tablet","handset","watch","embedded"]);return t.description=["Specifies a string that identifies the form-factor of the system."],t};var DD=()=>{let t=new Y("serial-number",z("STRING"),"optional");return t.description=[`Specifies a string representing the device\u2019s se-
243
+ rialnumber.`],t};function CD(){let t=ur();t.noMismatchPropertiesAllowed=!0;let e=t.properties.find(s=>s.name==="#address-cells");e.required=()=>"required";let r=t.properties.find(s=>s.name==="#size-cells");r.required=()=>"required";let n=t.properties.find(s=>s.name==="model");n.required=()=>"required";let i=t.properties.find(s=>s.name==="compatible");return i.required=()=>"required",t.addProperty([ED(),DD()]),t}var AD=$(U());function ID(){let t=new Nt((r,n)=>{let i=[];if(n.parent?.name!=="/"){let s=n.definitions[0];i.push(j(26,s.firstToken,s.lastToken,s,{linkedTo:n.definitions.slice(1),templateStrings:["Aliases node can only be added to a root node"]}))}return n.nodes.forEach(s=>{s.definitions.forEach(o=>{i.push(j(26,o.firstToken,o.lastToken,o,{templateStrings:["Aliases node can not have child nodes"],edit:AD.TextEdit.del(Gr(o.firstToken.prevToken,o.lastToken,!1)),codeActionTitle:"Delete Node"}))})}),i});t.noMismatchPropertiesAllowed=!0;let e=new Y(/^[-A-Za-z0-9]+$/,z(["STRING","U32"]),void 0,void 0,void 0,r=>{let n=[],i=r.ast.quickValues;if(i?.length===1&&typeof i[0]=="string"){let s=r.ast.values??r.ast;if(!i[0].startsWith("/"))return n.push(j(23,s.firstToken,s.lastToken,s,{templateStrings:[i[0],r.name]})),n;if(i[0].trim().endsWith("/"))return n.push(j(23,s.firstToken,s.lastToken,s,{templateStrings:["",i[0]]})),n;let o=r.parent.root,a=i[0].split("/").slice(1);for(;a[0];){let c=o,l=a.splice(0,1)[0],[u,d]=l.split("@"),f=d?.split(",").map(p=>Number.parseInt(p,16));if(o=u?c.getNode(u,f,!1):void 0,!o){n.push(j(23,s.firstToken,s.lastToken,s,{templateStrings:[u,c.fullName]}));break}}}return n});return e.description=["Each property of the /aliases node defines an alias."],t.addProperty([e]),t}function OD(){let t=ur();t.noMismatchPropertiesAllowed=!0;let e=t.properties.find(r=>r.name==="reg");return e.required=()=>"required",t}var MD=(t,e,r)=>{let n=t?.(e,r)??[],i=e.parent.root.getProperty(e.name),s=i?$e(i,0,0,r):void 0,o=e.parent.getProperty(e.name);return(o?$e(o,0,0,r):void 0)!==s&&n.push(j(28,e.ast.firstToken,e.ast.lastToken,e.ast,{linkedTo:[...i?.ast?[i.ast]:[]],templateStrings:[`${e.name} value in this node must match value of root node`]})),n};function xD(){let t=new Nt;t.noMismatchPropertiesAllowed=!0;let e=Of(),r=e?.additionalTypeCheck;e.additionalTypeCheck=(o,a)=>MD(r,o,a),e.required=()=>"required";let n=If(),i=n?.additionalTypeCheck;n.additionalTypeCheck=(o,a)=>MD(i,o,a),n.required=()=>"required";let s=Af();return s.required=()=>"required",s.type=z("EMPTY"),s.additionalTypeCheck=void 0,t.addProperty([e,n,s]),t}function LD(){let t=ur();t.additionalValidations=(i,s)=>{let o=[];if(s.parent?.name!=="/"){let a=s.definitions[0];o.push(j(26,a.firstToken,a.lastToken,a,{linkedTo:s.definitions.slice(1),templateStrings:["Chosen node can only be added to a root node"]}))}return o};let e=new Y("bootargs",z("STRING"));e.description=[`A string that specifies the boot arguments for
244
244
  theclientprogram. Thevaluecouldpotentially
245
245
  be a null string if no boot arguments are re-
246
246
  quired.`];let r=new Y("stdout-path ",z("STRING"));r.description=[`A string that specifies the full path to the node
@@ -259,8 +259,8 @@ The #address-cells on the /cpus node specifies how many cells each element of th
259
259
  If a CPU/thread can be the target of an external interrupt the reg property value must be a unique CPU/thread id that is addressable by the interrupt controller.
260
260
  If a CPU/thread cannot be the target of an external interrupt, then reg must be unique and out of bounds of the range addressed by the interrupt controller
261
261
  If a CPU/thread's PIR (pending interrupt reg-ister) is modifiable, a client program should modify PIR to match the reg property value.
262
- If PIR cannot be modified and the PIR value is distinct from the interrupt controller number space, the CPUs binding may define a binding-specific representation of PIR values if desired.`],t}var BD=()=>{let t=new Y("alignment",z("PROP_ENCODED_ARRAY"),"optional",void 0,[],(e,r)=>{let n=[],i=xe(e.ast.values),s=e.parent.sizeCells(r),o=[...Array.from({length:s},(a,c)=>`size${s>1?c:""}`)];if(t.signatureArgs=o.map(a=>xr.create(a)),i?.length!==s){let a=e.ast.values??e.ast;n.push(j(19,a.firstToken,a.lastToken,a,{templateStrings:[e.name,`<${Array.from({length:e.parent.sizeCells(r)},()=>"size")}>`]}))}return n});return t.description=["Address boundary for alignment of allocation."],t};var FD=()=>{let t=new Y("alloc-ranges",z("PROP_ENCODED_ARRAY"),"optional",void 0,[],(e,r)=>{let n=[],i=e.parent.addressCells(r),s=e.parent.sizeCells(r),o=[...Array.from({length:i},(c,l)=>`address${i>1?l:""}`),...Array.from({length:s},(c,l)=>`size${s>1?l:""}`)];t.signatureArgs=o.map(c=>xr.create(c)),t.signatureArgsCyclic=!0;let a=xe(e.ast.values);if(!a)return[];if(a.length===0||a.length%(i+s)!==0){let c=a.at(a.length-a.length%(s+i))??e.ast;return n.push(j(19,c.firstToken,c.lastToken,c,{templateStrings:[e.name,`<${[...Array.from({length:i},()=>"address"),...Array.from({length:s},()=>"size")].join(" ")}>`]})),n}return n});return t.description=["Specifies regions of memory that are acceptable to allocate from"],t};var jD=()=>{let t=new Y("no-map",z("EMPTY"),"optional");return t.description=[`Indicates the operating system must not create a virtual mapping of the region as part of its standard mapping of system memory, nor permit speculative access to it under
263
- any circumstances other than under the control of the device driver using the region.`],t};var UD=()=>{let t=new Y("reusable",z("EMPTY"),"optional");return t.description=["The operating system can use the memory in this region with the limitation that the device driver(s) owning the region need to be able to reclaim it back. Typically that means that the operating system can use that region to store volatile or cached data that can be otherwise regenerated or migrated elsewhere."],t};var HD=()=>{let t=new Y("size",z("PROP_ENCODED_ARRAY"),"optional",void 0,[],(e,r)=>{let n=[],i=xe(e.ast.values),s=e.parent.sizeCells(r),o=[...Array.from({length:s},(a,c)=>`size${s>1?c:""}`)];if(t.signatureArgs=o.map(a=>xr.create(a)),i?.length!==e.parent.sizeCells(r)){let a=e.ast.values??e.ast;n.push(j(19,a.firstToken,a.lastToken,a,{templateStrings:[e.name,`<${Array.from({length:s},()=>"size")}>`]}))}return n});return t.description=["Size in bytes of memory to reserve for dynamically allocated regions."],t};function VD(){let t=ur(),e=t.properties.find(r=>r.name==="reg");return e.required=()=>"optional",t.addProperty([HD(),BD(),FD(),jD(),UD()]),t}function ss(t){switch(t?.name){case"/":return CD();case"aliases":return ID();case"memory":return OD();case"reserved-memory":return xD();case"chosen":return LD();case"cpus":return qD();case"cpu":return $D()}return t?.parent?.name==="reserved-memory"?VD():ur()}var X=class t{constructor(e,r,n,i=null){this.bindingLoader=e;this.name=r;this.address=n;this.parent=i;this.referencedBy=[];this.definitions=[];this._properties=[];this._deletedProperties=[];this._deletedNodes=[];this.deletes=[];this._nodes=[];this.linkedNodeNamePaths=[];this.linkedRefLabels=[];this.interrupControlerMapping=[];this.spesifierNexusMapping=[];this.missingBinding=[];i?.addNode(this)}static toJson(e){let r={};return e.properties.forEach(n=>r[n.name]=n.ast.values?.toJson()??!0),e.nodes.forEach(n=>r[n.fullName]=t.toJson(n)),r}get disabled(){return this.getProperty("status")?.ast.quickValues?.at(0)==="disabled"}get nodeTypes(){if(this._nodeTypes)return this._nodeTypes;let e=this.parent?.nodeType?.childNodeType?.(this);return e?(this._nodeTypes=[e],this._nodeTypes):(this._nodeTypes=this.bindingLoader?.getNodeTypes(this).type??[ss(this)],this._nodeTypes)}get nodeType(){return this.nodeTypes.find(e=>!e.onBus||this.parent?.nodeType?.bus?.some(r=>r===e.onBus))}isChildOf(e){return this.parent?this.parent===e?!0:this.parent.isChildOf(e):!1}getReferenceBy(e){return this.referencedBy.some(r=>r===e)?this:[...this._nodes,...this._deletedNodes.map(r=>r.node)].map(r=>r.getReferenceBy(e)).find(r=>r)}get nodeNameOrLabelRef(){return Yo([...this.definitions,...this.referencedBy])}getDeepestAstNode(e,r){let n=[...this.definitions,...this.referencedBy].find(i=>an(i,e,r));if(n){let i=this.deletes.map(c=>({item:this,ast:ti(c,e,r),beforeAst:vc(c,e,r),afterAst:Tc(c,e,r)})).find(c=>an(c.ast,e,r));if(i)return i;let s=[...this._properties.flatMap(c=>[c,...c.allReplaced]),...this._deletedProperties.flatMap(c=>[c.property,...c.property.allReplaced])].map(c=>({item:c,ast:c.ast})).find(c=>an(c.ast,e,r)||c.ast.lastToken.value!==";"&&bw(c.ast,e,r));if(s)return s.item.getDeepestAstNode(e,r);let o=[...this._nodes,...this._deletedNodes.map(c=>c.node)].map(c=>c.getDeepestAstNode(e,r)).find(c=>c);if(o)return o;let a=ti(n,e,r);return{item:this,ast:a,beforeAst:vc(a,e,r),afterAst:Tc(a,e,r)}}}get labels(){return[...this.referencedBy.flatMap(e=>e.labels),...this.definitions.filter(e=>e instanceof Ge).flatMap(e=>e.labels)]}get labelsMapped(){return this.labels.map(e=>({label:e,owner:this}))}get allBindingsProperties(){return[...this.properties.filter(e=>e.name==="compatible"),...this._nodes.flatMap(e=>e.allBindingsProperties)]}get allDescendantsLabels(){return[...this.labels,...this._nodes.flatMap(e=>e.allDescendantsLabels)]}get allDescendantsLabelsMapped(){return[...this.labelsMapped,...this.properties.flatMap(e=>e.labelsMapped),...this._nodes.flatMap(e=>e.allDescendantsLabelsMapped)]}getOverlappingNodeAddressesIssues(e){return this._nodes.filter(r=>!r.disabled).flatMap(r=>{let n=r.regArray(e),i=this._nodes.filter(s=>s!==r&&!s.disabled);return n?.flatMap(s=>{let o=i.flatMap(a=>a.regArray(e)?.filter(c=>on(c.startAddress,s.endAddress)<0&&on(s.startAddress,c.endAddress)<0).flatMap(c=>({reg:c,node:a}))).filter(a=>!!a);return o.length?Lt(10,s.rangeTokens.start,s.rangeTokens.end,r.definitions[0],{severity:fn.DiagnosticSeverity.Information,linkedTo:o.map(a=>({range:Wr(a.reg.rangeTokens.start,a.reg.rangeTokens.end),uri:a.reg.rangeTokens.start.uri})),templateStrings:[r.fullName,`0x${s.startAddress.map((a,c)=>a.toString(16).padStart(c?8:0,"0")).join("")}`,`0x${s.endAddress.map((a,c)=>a.toString(16).padStart(c?8:0,"0")).join("")}`],linkedToTemplateStrings:o.map(a=>[a.node.fullName,`0x${a.reg.startAddress.map((c,l)=>c.toString(16).padStart(l?8:0,"0")).join("")}`,`0x${a.reg.endAddress.map((c,l)=>c.toString(16).padStart(l?8:0,"0")).join("")}`])}):[]})??[]})}getIssues(e){let r=[...this.properties.flatMap(n=>n.issues),...this._nodes.flatMap(n=>n.getIssues(e)),...this._deletedNodes.flatMap(n=>n.node.getIssues(e)),...this.deletedPropertiesIssues,...this.deletedNodesIssues,...this.missingBinding,...this.getOverlappingNodeAddressesIssues(e)];if(this.name==="/"&&this.definitions.length&&!this._nodes.some(n=>n.name==="cpus")){let n=this.definitions[this.definitions.length-1],i=n.name??n;r.push(Lt(9,i.firstToken,i.lastToken,i,{severity:fn.DiagnosticSeverity.Error,linkedTo:this.definitions.slice(0,-1),templateStrings:["/","cpus"]}))}return r}get deletedPropertiesIssues(){return[...this._deletedProperties.flatMap(e=>[Lt(6,e.property.ast.firstToken,e.property.ast.lastToken,e.property.ast,{severity:fn.DiagnosticSeverity.Hint,tags:[fn.DiagnosticTag.Deprecated],linkedTo:[e.by],templateStrings:[e.property.name]}),...e.property.allReplaced.map(r=>Lt(6,r.ast.firstToken,r.ast.lastToken,r.ast,{severity:fn.DiagnosticSeverity.Hint,linkedTo:[e.by],tags:[fn.DiagnosticTag.Deprecated],templateStrings:[e.property.name]})),...e.property.issues])]}get deletedNodesIssues(){return this._deletedNodes.flatMap(e=>[...[...e.node.definitions.filter(r=>r instanceof Ge),...e.node.referencedBy].flatMap(r=>{let n;return r instanceof Ge?n=r.name.toString():r.reference instanceof ie?n=r.reference.label.value:n=r.reference.path.pathParts.at(-1).name,Lt(7,r.firstToken,r.lastToken,r,{severity:fn.DiagnosticSeverity.Hint,linkedTo:[e.by],tags:[fn.DiagnosticTag.Deprecated],templateStrings:[n]})})])}get path(){return this.parent?[...this.parent.path,this.fullName]:[this.fullName]}get pathString(){return`/${this.path.slice(1).join("/")}`}get properties(){return this._properties}get deletedProperties(){return this._deletedProperties}get nodes(){return this._nodes}get deletedNodes(){return this._deletedNodes}get propertyNames(){return this._properties.map(e=>e.name)}hasNode(e,r){return this._nodes.some(n=>n.name===e&&(n.address===r||n.address?.every((i,s)=>r?.at(s)===i)))}hasProperty(e){return this._properties.some(r=>r.name===e)}getProperty(e){return this._properties.find(r=>r.name===e)}deleteNode(e,r,n){let i=this._nodes.findIndex(s=>s.name===e&&(s.address===n||n?.every((o,a)=>s.address?.at(a)===o)));i!==-1&&(this._deletedNodes.push({node:this._nodes[i],by:r}),this._nodes.splice(i,1))}get root(){return this.parent?this.parent.root:this}#e;get phandle(){if(this.#e!==void 0)return this.#e;let e=this.getProperty("phandle")?.ast.values?.values.at(0)?.value;if(e instanceof jt){let r=e.values.at(0)?.value;if(r instanceof cr)return this.#e=r.value,this.#e}}getAllPhandle(e){return e===this.phandle?[this,...this._nodes.flatMap(r=>r.getAllPhandle(e))]:this._nodes.flatMap(r=>r.getAllPhandle(e))}getPhandle(e){if(this.phandle===e)return this;for(let r of this._nodes){let n=r.getPhandle(e);if(n)return n}}getNode(e,r,n=!0){let i=n||!!r||this._nodes.filter(o=>o.name===e).length>1,s=this._nodes.findIndex(o=>o.name===e&&(!i||o.address===r||o.address?.every((a,c)=>r?.at(c)===a)));if(s!==-1)return this._nodes[s]}deleteProperty(e,r){let n=this._properties.findIndex(i=>i.name===e);n!==-1&&(this._deletedProperties.push({property:this._properties[n],by:r}),this._properties.splice(n,1))}addNode(e){this._nodes.push(e)}addProperty(e){let r=this._properties.findIndex(n=>n.name===e.name);if(r===-1)this._properties.push(e);else{let n=this._properties.splice(r,1)[0];this._properties.push(e),e.replaces=n,n.replacedBy=e}if(e.name==="compatible")if(this.bindingLoader){let n=this.bindingLoader.getNodeTypes(this);this._nodeTypes=n.type,this.missingBinding.push(...n.issues)}else this._nodeTypes=[ss(this)]}getChild(e,r=!0){if(e.length===1&&e[0]==="/"&&this.name==="/")return this;let n=[...e];n.splice(0,1);let i=n[0].split("@"),s=i[0],o=i[1]!==void 0?i[1].split(",").map(c=>Number.parseInt(c,16)):void 0,a=this.getNode(s,o,r);return n.length===1||!a?a:a.getChild(n)}getChildFromScope(e,r){if(e.length===1&&e[0]===this.fullName)return this;if(e[0]!==this.fullName)return;let n=[...e];return n.splice(0,1),[...this._nodes,...this._deletedNodes.filter(s=>!r(s.by)).map(s=>s.node)].find(s=>s.fullName===n[0])?.getChildFromScope(n,r)}get fullName(){return this.address!==void 0?`${this.name}@${this.address.map(e=>e.toString(16)).join(",")}`:this.name}#t;regArray(e){if(this.#t!==void 0)return this.#t;let r=this.getProperty("reg");if(!r){this.#t=null;return}let n=this.parentAddressCells(e),i=this.parentSizeCells(e),s=[],o=xe(r.ast.values)?.reverse();for(;o?.length;){let a=Array.from({length:n}).map(()=>o.pop()),c=Array.from({length:i}).map(()=>o.pop());if(![...a,...c].every(f=>f instanceof Ee))continue;let l=a.map(f=>f.evaluate(e)),u=c.map(f=>f.evaluate(e)),d=a.at(0)?.firstToken;!d||![...l,...u].every(f=>typeof f=="number")||s.push({startAddress:l,endAddress:Qi(l,u),size:u,rangeTokens:oe(d,c.at(-1)?.lastToken??a.at(-1)?.lastToken)})}return this.#t=s,this.#t}#n;rangeMap(e){if(this.#n!==void 0)return this.#n;let r=this.getProperty("ranges");if(!r){this.#n=null;return}let n=this.sizeCells(e),i=this.addressCells(e),s=this.parentAddressCells(e),o=[],a=xe(r.ast.values)?.reverse();for(;a?.length;){let c=Array.from({length:i}).map(()=>a.pop()),l=Array.from({length:s}).map(()=>a.pop()),u=Array.from({length:n}).map(()=>a.pop());if(![...c,...l,...u].every(h=>h instanceof Ee))continue;let d=c.map(h=>h.evaluate(e)),f=l.map(h=>h.evaluate(e)),p=u.map(h=>h.evaluate(e)),g=c.at(0)?.firstToken;!g||![...d,...f,...p].every(h=>typeof h=="number")||o.push({childAddress:d,parentAddress:f,length:p,rangeTokens:oe(g,u.at(-1).lastToken)})}return this.#n=o,this.#n}#r;dmaRangeMap(e){if(this.#r!==void 0)return this.#r;let r=this.getProperty("dma-ranges");if(!r){this.#r=null;return}let n=this.sizeCells(e),i=this.addressCells(e),s=this.parentAddressCells(e),o=[],a=xe(r.ast.values)?.reverse();for(;a?.length;){let c=Array.from({length:i}).map(()=>a.pop()),l=Array.from({length:s}).map(()=>a.pop()),u=Array.from({length:n}).map(()=>a.pop());if(![...c,...l,...u].every(h=>h instanceof Ee))continue;let d=c.map(h=>h.evaluate(e)),f=l.map(h=>h.evaluate(e)),p=u.map(h=>h.evaluate(e)),g=c.at(0)?.firstToken;!g||![...d,...f,...p].every(h=>typeof h=="number")||o.push({childAddress:d,parentAddress:f,length:p,rangeTokens:oe(g,u.at(-1).lastToken)})}return this.#r=o,this.#r}parentAddressCells(e){return this.parent?.addressCells(e)??2}parentSizeCells(e){return this.parent?.sizeCells(e)??1}#o;addressCells(e){if(this.#o!==void 0)return this.#o;let r=this?.getProperty("#address-cells");return this.#o=r?$e(r,0,0,e)??2:2,this.#o}#f;sizeCells(e){if(this.#f!==void 0)return this.#f;let r=this.getProperty("#size-cells");return this.#f=r?$e(r,0,0,e)??1:1,this.#f}#a;mappedReg(e){if(this.#a!==void 0)return this.#a;let r=this.parent?.rangeMap(e),n=this.regArray(e);return this.#a=n?.flatMap(i=>{let s=i.startAddress,o=i.size,a=Qi(s,o),c={startAddress:s,startAddressRaw:s,size:o,endAddress:a,endAddressRaw:a,inMappingRange:!1,regRangeTokens:{start:i.rangeTokens.start,end:i.rangeTokens.end},missingMapping:!1};if(!r)return[c];let l=Rw(r,s);return l.length?l.map(u=>(c.mappedAst={range:u.range,uri:u.uri},c.startAddress=u.start,c.endAddress=Qi(u.start,o),c.inMappingRange=on(c.endAddress,u.end)<=0,c.mappingEnd=u.end,{...c,mappedAst:{range:u.range,uri:u.uri},startAddress:u.start,endAddress:Qi(u.start,o),inMappingRange:on(c.endAddress,u.end)<=0,mappingEnd:u.end})):(c.missingMapping=!0,[c])}).sort((i,s)=>on(i.endAddress,s.endAddress))??[],this.#a}get interruptsParent(){if(this.getProperty("interrupts-extended"))return null;let e=this.bindingLoader?.type==="Zephyr",r=this.getProperty("interrupt-parent"),n=r?dn(r?.ast.values?.values.at(0),this.root):e?void 0:this.parent;return!e||r?{interruptParent:r,parentInterruptNode:n??null}:n?{interruptParent:r,parentInterruptNode:n??null}:this.parent?this.parent.interruptsParent:{parentInterruptNode:this}}getNexusMapEntryMatch(e,r,n,i=[]){let s=new Q(oe(n[0].firstToken,n.at(-1).lastToken)),o=this.getNexusMap(e,r);if(o){let a=[...i.map((l,u)=>l&(o.mapMask.at(u)??4294967295)),...n.map((l,u)=>{let d=l instanceof Ee?l.evaluate(r):l;return(typeof d=="number"?d&(o.mapMask.at(u+i.length)??4294967295):d).toString()})].join(":"),c=o.map.find(l=>l.mappingValues.map(u=>(u instanceof Ee?u.evaluate(r):u).toString()).join(":")===a);return{entry:s,match:c}}return{entry:s}}getNexusMap(e,r){let n=this.getProperty(`${e}-map`),i=xe(n?.ast.values);if(!i?.length)return;let s=this.root,o=this.getProperty(`#${e}-cells`);if(!o)return;let a=$e(o,0,0,r);if(a==null)return;e==="interrupt"&&(a+=this.addressCells(r));let c=[],l=0;for(;l<i.length;){let f=i.slice(l,a+l);if(l+=a,i.length<l+1)break;let p=dn(i[l],s);if(!p)break;let g=p.getProperty(`#${e}-cells`);if(!g)return;l++;let h=$e(g,0,0,r);if(h==null||(e==="interrupt"&&(h+=p.addressCells(r)),l+=h,i.length<l))break;let T=i.slice(l-h,l);c.push({mappingValues:f,node:p,parentValues:T})}let u=this.getProperty(`${e}-map-mask`);return{mapMask:Array.from({length:a}).map((f,p)=>(u?$e(u,0,p,r):void 0)??4294967295),map:c}}uniqueLabels(){return Array.from(new Set(this.labels.map(e=>e.toString())))}toTooltipString(e){return`${this.uniqueLabels().join(" ")}${this.labels.length?" ":""}${this.fullName} {${this.properties.length?`
262
+ If PIR cannot be modified and the PIR value is distinct from the interrupt controller number space, the CPUs binding may define a binding-specific representation of PIR values if desired.`],t}var BD=()=>{let t=new Y("alignment",z("PROP_ENCODED_ARRAY"),"optional",void 0,[],(e,r)=>{let n=[],i=xe(e.ast.values),s=e.parent.sizeCells(r),o=[...Array.from({length:s},(a,c)=>`size${s>1?c:""}`)];if(t.signatureArgs=o.map(a=>Lr.create(a)),i?.length!==s){let a=e.ast.values??e.ast;n.push(j(19,a.firstToken,a.lastToken,a,{templateStrings:[e.name,`<${Array.from({length:e.parent.sizeCells(r)},()=>"size")}>`]}))}return n});return t.description=["Address boundary for alignment of allocation."],t};var FD=()=>{let t=new Y("alloc-ranges",z("PROP_ENCODED_ARRAY"),"optional",void 0,[],(e,r)=>{let n=[],i=e.parent.addressCells(r),s=e.parent.sizeCells(r),o=[...Array.from({length:i},(c,l)=>`address${i>1?l:""}`),...Array.from({length:s},(c,l)=>`size${s>1?l:""}`)];t.signatureArgs=o.map(c=>Lr.create(c)),t.signatureArgsCyclic=!0;let a=xe(e.ast.values);if(!a)return[];if(a.length===0||a.length%(i+s)!==0){let c=a.at(a.length-a.length%(s+i))??e.ast;return n.push(j(19,c.firstToken,c.lastToken,c,{templateStrings:[e.name,`<${[...Array.from({length:i},()=>"address"),...Array.from({length:s},()=>"size")].join(" ")}>`]})),n}return n});return t.description=["Specifies regions of memory that are acceptable to allocate from"],t};var jD=()=>{let t=new Y("no-map",z("EMPTY"),"optional");return t.description=[`Indicates the operating system must not create a virtual mapping of the region as part of its standard mapping of system memory, nor permit speculative access to it under
263
+ any circumstances other than under the control of the device driver using the region.`],t};var UD=()=>{let t=new Y("reusable",z("EMPTY"),"optional");return t.description=["The operating system can use the memory in this region with the limitation that the device driver(s) owning the region need to be able to reclaim it back. Typically that means that the operating system can use that region to store volatile or cached data that can be otherwise regenerated or migrated elsewhere."],t};var HD=()=>{let t=new Y("size",z("PROP_ENCODED_ARRAY"),"optional",void 0,[],(e,r)=>{let n=[],i=xe(e.ast.values),s=e.parent.sizeCells(r),o=[...Array.from({length:s},(a,c)=>`size${s>1?c:""}`)];if(t.signatureArgs=o.map(a=>Lr.create(a)),i?.length!==e.parent.sizeCells(r)){let a=e.ast.values??e.ast;n.push(j(19,a.firstToken,a.lastToken,a,{templateStrings:[e.name,`<${Array.from({length:s},()=>"size")}>`]}))}return n});return t.description=["Size in bytes of memory to reserve for dynamically allocated regions."],t};function VD(){let t=ur(),e=t.properties.find(r=>r.name==="reg");return e.required=()=>"optional",t.addProperty([HD(),BD(),FD(),jD(),UD()]),t}function ss(t){switch(t?.name){case"/":return CD();case"aliases":return ID();case"memory":return OD();case"reserved-memory":return xD();case"chosen":return LD();case"cpus":return qD();case"cpu":return $D()}return t?.parent?.name==="reserved-memory"?VD():ur()}var X=class t{constructor(e,r,n,i=null){this.bindingLoader=e;this.name=r;this.address=n;this.parent=i;this.referencedBy=[];this.definitions=[];this._properties=[];this._deletedProperties=[];this._deletedNodes=[];this.deletes=[];this._nodes=[];this.linkedNodeNamePaths=[];this.linkedRefLabels=[];this.interrupControlerMapping=[];this.spesifierNexusMapping=[];this.missingBinding=[];i?.addNode(this)}static toJson(e){let r={};return e.properties.forEach(n=>r[n.name]=n.ast.values?.toJson()??!0),e.nodes.forEach(n=>r[n.fullName]=t.toJson(n)),r}get disabled(){return this.getProperty("status")?.ast.quickValues?.at(0)==="disabled"}get nodeTypes(){if(this._nodeTypes)return this._nodeTypes;let e=this.parent?.nodeType?.childNodeType?.(this);return e?(this._nodeTypes=[e],this._nodeTypes):(this._nodeTypes=this.bindingLoader?.getNodeTypes(this).type??[ss(this)],this._nodeTypes)}get nodeType(){return this.nodeTypes.find(e=>!e.onBus||this.parent?.nodeType?.bus?.some(r=>r===e.onBus))}isChildOf(e){return this.parent?this.parent===e?!0:this.parent.isChildOf(e):!1}getReferenceBy(e){return this.referencedBy.some(r=>r===e)?this:[...this._nodes,...this._deletedNodes.map(r=>r.node)].map(r=>r.getReferenceBy(e)).find(r=>r)}get nodeNameOrLabelRef(){return Yo([...this.definitions,...this.referencedBy])}getDeepestAstNode(e,r){let n=[...this.definitions,...this.referencedBy].find(i=>Ir(i,e,r));if(n){let i=this.deletes.map(c=>({item:this,ast:ti(c,e,r),beforeAst:vc(c,e,r),afterAst:Tc(c,e,r)})).find(c=>Ir(c.ast,e,r));if(i)return i;let s=[...this._properties.flatMap(c=>[c,...c.allReplaced]),...this._deletedProperties.flatMap(c=>[c.property,...c.property.allReplaced])].map(c=>({item:c,ast:c.ast})).find(c=>Ir(c.ast,e,r)||c.ast.lastToken.value!==";"&&bw(c.ast,e,r));if(s)return s.item.getDeepestAstNode(e,r);let o=[...this._nodes,...this._deletedNodes.map(c=>c.node)].map(c=>c.getDeepestAstNode(e,r)).find(c=>c);if(o)return o;let a=ti(n,e,r);return{item:this,ast:a,beforeAst:vc(a,e,r),afterAst:Tc(a,e,r)}}}get labels(){return[...this.referencedBy.flatMap(e=>e.labels),...this.definitions.filter(e=>e instanceof Ge).flatMap(e=>e.labels)]}get labelsMapped(){return this.labels.map(e=>({label:e,owner:this}))}get allBindingsProperties(){return[...this.properties.filter(e=>e.name==="compatible"),...this._nodes.flatMap(e=>e.allBindingsProperties)]}get allDescendantsLabels(){return[...this.labels,...this._nodes.flatMap(e=>e.allDescendantsLabels)]}get allDescendantsLabelsMapped(){return[...this.labelsMapped,...this.properties.flatMap(e=>e.labelsMapped),...this._nodes.flatMap(e=>e.allDescendantsLabelsMapped)]}getOverlappingNodeAddressesIssues(e){return this._nodes.filter(r=>!r.disabled).flatMap(r=>{let n=r.regArray(e),i=this._nodes.filter(s=>s!==r&&!s.disabled);return n?.flatMap(s=>{let o=i.flatMap(a=>a.regArray(e)?.filter(c=>an(c.startAddress,s.endAddress)<0&&an(s.startAddress,c.endAddress)<0).flatMap(c=>({reg:c,node:a}))).filter(a=>!!a);return o.length?Lt(10,s.rangeTokens.start,s.rangeTokens.end,r.definitions[0],{severity:fn.DiagnosticSeverity.Information,linkedTo:o.map(a=>({range:Gr(a.reg.rangeTokens.start,a.reg.rangeTokens.end),uri:a.reg.rangeTokens.start.uri})),templateStrings:[r.fullName,`0x${s.startAddress.map((a,c)=>a.toString(16).padStart(c?8:0,"0")).join("")}`,`0x${s.endAddress.map((a,c)=>a.toString(16).padStart(c?8:0,"0")).join("")}`],linkedToTemplateStrings:o.map(a=>[a.node.fullName,`0x${a.reg.startAddress.map((c,l)=>c.toString(16).padStart(l?8:0,"0")).join("")}`,`0x${a.reg.endAddress.map((c,l)=>c.toString(16).padStart(l?8:0,"0")).join("")}`])}):[]})??[]})}getIssues(e){let r=[...this.properties.flatMap(n=>n.issues),...this._nodes.flatMap(n=>n.getIssues(e)),...this._deletedNodes.flatMap(n=>n.node.getIssues(e)),...this.deletedPropertiesIssues,...this.deletedNodesIssues,...this.missingBinding,...this.getOverlappingNodeAddressesIssues(e)];if(this.name==="/"&&this.definitions.length&&!this._nodes.some(n=>n.name==="cpus")){let n=this.definitions[this.definitions.length-1],i=n.name??n;r.push(Lt(9,i.firstToken,i.lastToken,i,{severity:fn.DiagnosticSeverity.Error,linkedTo:this.definitions.slice(0,-1),templateStrings:["/","cpus"]}))}return r}get deletedPropertiesIssues(){return[...this._deletedProperties.flatMap(e=>[Lt(6,e.property.ast.firstToken,e.property.ast.lastToken,e.property.ast,{severity:fn.DiagnosticSeverity.Hint,tags:[fn.DiagnosticTag.Deprecated],linkedTo:[e.by],templateStrings:[e.property.name]}),...e.property.allReplaced.map(r=>Lt(6,r.ast.firstToken,r.ast.lastToken,r.ast,{severity:fn.DiagnosticSeverity.Hint,linkedTo:[e.by],tags:[fn.DiagnosticTag.Deprecated],templateStrings:[e.property.name]})),...e.property.issues])]}get deletedNodesIssues(){return this._deletedNodes.flatMap(e=>[...[...e.node.definitions.filter(r=>r instanceof Ge),...e.node.referencedBy].flatMap(r=>{let n;return r instanceof Ge?n=r.name.toString():r.reference instanceof ie?n=r.reference.label.value:n=r.reference.path.pathParts.at(-1).name,Lt(7,r.firstToken,r.lastToken,r,{severity:fn.DiagnosticSeverity.Hint,linkedTo:[e.by],tags:[fn.DiagnosticTag.Deprecated],templateStrings:[n]})})])}get path(){return this.parent?[...this.parent.path,this.fullName]:[this.fullName]}get pathString(){return`/${this.path.slice(1).join("/")}`}get properties(){return this._properties}get deletedProperties(){return this._deletedProperties}get nodes(){return this._nodes}get deletedNodes(){return this._deletedNodes}get propertyNames(){return this._properties.map(e=>e.name)}hasNode(e,r){return this._nodes.some(n=>n.name===e&&(n.address===r||n.address?.every((i,s)=>r?.at(s)===i)))}hasProperty(e){return this._properties.some(r=>r.name===e)}getProperty(e){return this._properties.find(r=>r.name===e)}deleteNode(e,r,n){let i=this._nodes.findIndex(s=>s.name===e&&(s.address===n||n?.every((o,a)=>s.address?.at(a)===o)));i!==-1&&(this._deletedNodes.push({node:this._nodes[i],by:r}),this._nodes.splice(i,1))}get root(){return this.parent?this.parent.root:this}#e;get phandle(){if(this.#e!==void 0)return this.#e;let e=this.getProperty("phandle")?.ast.values?.values.at(0)?.value;if(e instanceof jt){let r=e.values.at(0)?.value;if(r instanceof cr)return this.#e=r.value,this.#e}}getAllPhandle(e){return e===this.phandle?[this,...this._nodes.flatMap(r=>r.getAllPhandle(e))]:this._nodes.flatMap(r=>r.getAllPhandle(e))}getPhandle(e){if(this.phandle===e)return this;for(let r of this._nodes){let n=r.getPhandle(e);if(n)return n}}getNode(e,r,n=!0){let i=n||!!r||this._nodes.filter(o=>o.name===e).length>1,s=this._nodes.findIndex(o=>o.name===e&&(!i||o.address===r||o.address?.every((a,c)=>r?.at(c)===a)));if(s!==-1)return this._nodes[s]}deleteProperty(e,r){let n=this._properties.findIndex(i=>i.name===e);n!==-1&&(this._deletedProperties.push({property:this._properties[n],by:r}),this._properties.splice(n,1))}addNode(e){this._nodes.push(e)}addProperty(e){let r=this._properties.findIndex(n=>n.name===e.name);if(r===-1)this._properties.push(e);else{let n=this._properties.splice(r,1)[0];this._properties.push(e),e.replaces=n,n.replacedBy=e}if(e.name==="compatible")if(this.bindingLoader){let n=this.bindingLoader.getNodeTypes(this);this._nodeTypes=n.type,this.missingBinding.push(...n.issues)}else this._nodeTypes=[ss(this)]}getChild(e,r=!0){if(e.length===1&&e[0]==="/"&&this.name==="/")return this;let n=[...e];n.splice(0,1);let i=n[0].split("@"),s=i[0],o=i[1]!==void 0?i[1].split(",").map(c=>Number.parseInt(c,16)):void 0,a=this.getNode(s,o,r);return n.length===1||!a?a:a.getChild(n)}getChildFromScope(e,r){if(e.length===1&&e[0]===this.fullName)return this;if(e[0]!==this.fullName)return;let n=[...e];return n.splice(0,1),[...this._nodes,...this._deletedNodes.filter(s=>!r(s.by)).map(s=>s.node)].find(s=>s.fullName===n[0])?.getChildFromScope(n,r)}get fullName(){return this.address!==void 0?`${this.name}@${this.address.map(e=>e.toString(16)).join(",")}`:this.name}#t;regArray(e){if(this.#t!==void 0)return this.#t;let r=this.getProperty("reg");if(!r){this.#t=null;return}let n=this.parentAddressCells(e),i=this.parentSizeCells(e),s=[],o=xe(r.ast.values)?.reverse();for(;o?.length;){let a=Array.from({length:n}).map(()=>o.pop()),c=Array.from({length:i}).map(()=>o.pop());if(![...a,...c].every(f=>f instanceof Ee))continue;let l=a.map(f=>f.evaluate(e)),u=c.map(f=>f.evaluate(e)),d=a.at(0)?.firstToken;!d||![...l,...u].every(f=>typeof f=="number")||s.push({startAddress:l,endAddress:Qi(l,u),size:u,rangeTokens:oe(d,c.at(-1)?.lastToken??a.at(-1)?.lastToken)})}return this.#t=s,this.#t}#n;rangeMap(e){if(this.#n!==void 0)return this.#n;let r=this.getProperty("ranges");if(!r){this.#n=null;return}let n=this.sizeCells(e),i=this.addressCells(e),s=this.parentAddressCells(e),o=[],a=xe(r.ast.values)?.reverse();for(;a?.length;){let c=Array.from({length:i}).map(()=>a.pop()),l=Array.from({length:s}).map(()=>a.pop()),u=Array.from({length:n}).map(()=>a.pop());if(![...c,...l,...u].every(h=>h instanceof Ee))continue;let d=c.map(h=>h.evaluate(e)),f=l.map(h=>h.evaluate(e)),p=u.map(h=>h.evaluate(e)),g=c.at(0)?.firstToken;!g||![...d,...f,...p].every(h=>typeof h=="number")||o.push({childAddress:d,parentAddress:f,length:p,rangeTokens:oe(g,u.at(-1).lastToken)})}return this.#n=o,this.#n}#r;dmaRangeMap(e){if(this.#r!==void 0)return this.#r;let r=this.getProperty("dma-ranges");if(!r){this.#r=null;return}let n=this.sizeCells(e),i=this.addressCells(e),s=this.parentAddressCells(e),o=[],a=xe(r.ast.values)?.reverse();for(;a?.length;){let c=Array.from({length:i}).map(()=>a.pop()),l=Array.from({length:s}).map(()=>a.pop()),u=Array.from({length:n}).map(()=>a.pop());if(![...c,...l,...u].every(h=>h instanceof Ee))continue;let d=c.map(h=>h.evaluate(e)),f=l.map(h=>h.evaluate(e)),p=u.map(h=>h.evaluate(e)),g=c.at(0)?.firstToken;!g||![...d,...f,...p].every(h=>typeof h=="number")||o.push({childAddress:d,parentAddress:f,length:p,rangeTokens:oe(g,u.at(-1).lastToken)})}return this.#r=o,this.#r}parentAddressCells(e){return this.parent?.addressCells(e)??2}parentSizeCells(e){return this.parent?.sizeCells(e)??1}#o;addressCells(e){if(this.#o!==void 0)return this.#o;let r=this?.getProperty("#address-cells");return this.#o=r?$e(r,0,0,e)??2:2,this.#o}#f;sizeCells(e){if(this.#f!==void 0)return this.#f;let r=this.getProperty("#size-cells");return this.#f=r?$e(r,0,0,e)??1:1,this.#f}#a;mappedReg(e){if(this.#a!==void 0)return this.#a;let r=this.parent?.rangeMap(e),n=this.regArray(e);return this.#a=n?.flatMap(i=>{let s=i.startAddress,o=i.size,a=Qi(s,o),c={startAddress:s,startAddressRaw:s,size:o,endAddress:a,endAddressRaw:a,inMappingRange:!1,regRangeTokens:{start:i.rangeTokens.start,end:i.rangeTokens.end},missingMapping:!1};if(!r)return[c];let l=Rw(r,s);return l.length?l.map(u=>(c.mappedAst={range:u.range,uri:u.uri},c.startAddress=u.start,c.endAddress=Qi(u.start,o),c.inMappingRange=an(c.endAddress,u.end)<=0,c.mappingEnd=u.end,{...c,mappedAst:{range:u.range,uri:u.uri},startAddress:u.start,endAddress:Qi(u.start,o),inMappingRange:an(c.endAddress,u.end)<=0,mappingEnd:u.end})):(c.missingMapping=!0,[c])}).sort((i,s)=>an(i.endAddress,s.endAddress))??[],this.#a}get interruptsParent(){if(this.getProperty("interrupts-extended"))return null;let e=this.bindingLoader?.type==="Zephyr",r=this.getProperty("interrupt-parent"),n=r?dn(r?.ast.values?.values.at(0),this.root):e?void 0:this.parent;return!e||r?{interruptParent:r,parentInterruptNode:n??null}:n?{interruptParent:r,parentInterruptNode:n??null}:this.parent?this.parent.interruptsParent:{parentInterruptNode:this}}getNexusMapEntryMatch(e,r,n,i=[]){let s=new Q(oe(n[0].firstToken,n.at(-1).lastToken)),o=this.getNexusMap(e,r);if(o){let a=[...i.map((l,u)=>l&(o.mapMask.at(u)??4294967295)),...n.map((l,u)=>{let d=l instanceof Ee?l.evaluate(r):l;return(typeof d=="number"?d&(o.mapMask.at(u+i.length)??4294967295):d).toString()})].join(":"),c=o.map.find(l=>l.mappingValues.map(u=>(u instanceof Ee?u.evaluate(r):u).toString()).join(":")===a);return{entry:s,match:c}}return{entry:s}}getNexusMap(e,r){let n=this.getProperty(`${e}-map`),i=xe(n?.ast.values);if(!i?.length)return;let s=this.root,o=this.getProperty(`#${e}-cells`);if(!o)return;let a=$e(o,0,0,r);if(a==null)return;e==="interrupt"&&(a+=this.addressCells(r));let c=[],l=0;for(;l<i.length;){let f=i.slice(l,a+l);if(l+=a,i.length<l+1)break;let p=dn(i[l],s);if(!p)break;let g=p.getProperty(`#${e}-cells`);if(!g)return;l++;let h=$e(g,0,0,r);if(h==null||(e==="interrupt"&&(h+=p.addressCells(r)),l+=h,i.length<l))break;let T=i.slice(l-h,l);c.push({mappingValues:f,node:p,parentValues:T})}let u=this.getProperty(`${e}-map-mask`);return{mapMask:Array.from({length:a}).map((f,p)=>(u?$e(u,0,p,r):void 0)??4294967295),map:c}}uniqueLabels(){return Array.from(new Set(this.labels.map(e=>e.toString())))}toTooltipString(e){return`${this.uniqueLabels().join(" ")}${this.labels.length?" ":""}${this.fullName} {${this.properties.length?`
264
264
  `:""}${this.properties.map(r=>r.toPrettyString(e)).join(`
265
265
  `)}${this.nodes.length?`
266
266
  ${this.nodes.map(r=>`${r.fullName}{ /* ... */ };`).join(`
@@ -279,10 +279,10 @@ ${" ".repeat(n)}${this.nodes.map(o=>o.toFullString(e,r,n+1)).join(`
279
279
  ${" ".repeat(n)}`)}`:""}
280
280
  ${" ".repeat(n-1)}};`}serialize(e){let r=this.mappedReg(e),n=[...this.definitions,...this.referencedBy],i=this.nodeType;return{nodeType:i instanceof Nt?{...this.nodeType,extends:Array.from(this.nodeType?.extends??[]),properties:i.properties.map(s=>({name:typeof s.name=="string"?s.name:s.name.toString(),nameIsRegex:typeof s.name!="string",allowedValues:s.allowedValues,type:s.type,description:s.description?.join(`
281
281
  `),required:s.required(this)==="required"}))}:void 0,issues:n.flatMap(s=>s.serializeIssues),path:this.pathString,disabled:this.disabled,name:this.fullName,labels:this.labels.map(s=>s.label.value),nodes:n.map(s=>s.serialize(e)),properties:this.properties.map(s=>({...s.ast.serialize(e),nexusMapEnty:s.nexusMapsTo.map(o=>({mappingValuesAst:o.mappingValuesAst.map(a=>a.serialize(e)),specifierSpace:o.specifierSpace,target:o.target.pathString,mapItem:o.mapItem?{parentValues:o.mapItem?.parentValues.map(a=>a.serialize(e)),target:o.mapItem.node.pathString,mappingValues:o.mapItem.mappingValues.map(a=>a.serialize(e))}:void 0}))})),childNodes:this.nodes.map(s=>s.serialize(e)),reg:r?.map(s=>({mappedStartAddress:s?.startAddress,mappedEndAddress:s?.endAddress,startAddress:s?.startAddressRaw,endAddress:s?.endAddressRaw,size:s?.size,inMappingRange:s?.inMappingRange})),interruptControllerMappings:this.interrupControlerMapping.map(s=>({cells:s.expressions.map(o=>o.serialize(e)),path:s.node.pathString,property:s.property.ast.serialize(e)})),specifierNexusMappings:this.spesifierNexusMapping.map(s=>({cells:s.expressions.map(o=>o.serialize(e)),path:s.node.pathString,property:s.property.ast.serialize(e)}))}}};var ia=$(U());var Ye=class{constructor(e,r){this.ast=e;this.parent=r;this.nexusMapsTo=[]}getDeepestAstNode(e,r){let n=ti(this.ast,e,r);return this.ast.assignOperatorToken&&qy(this.ast.assignOperatorToken,e,r)?{item:this,ast:n,beforeAst:vc(this.ast,e,r),afterAst:Tc(this.ast,e,r)}:{item:this,ast:n}}get name(){return this.ast.propertyName?.name??"[UNSET]"}get labels(){return this.ast.allDescendants.filter(e=>e instanceof Zi)}get labelsMapped(){return this.labels.map(e=>({label:e,owner:this.ast.labels.some(r=>r===e)?this:null}))}getArgumentIndex(e){if(!e)return;let r=this.ast.getFlatAstValues()?.findIndex(n=>n===e||n?.isAncestorOf(e));return r===-1?void 0:r}get issues(){return this.replacedIssues}get replacedIssues(){return[...this.replaces?.replacedIssues??[],...this.replaces?[Lt(0,this.replaces.ast.firstToken,this.replaces.ast.lastToken,this.replaces.ast,{severity:ia.DiagnosticSeverity.Hint,linkedTo:[this.ast],tags:[ia.DiagnosticTag.Unnecessary],templateStrings:[this.name]})]:[]]}onHover(){if(this.nexusMapsTo.length)return{kind:ia.MarkupKind.Markdown,value:["### Nexus mappings",...this.nexusMapsTo.filter(e=>!!e.mapItem).flatMap(e=>["```",`${this.name} = <... ${e.mappingValuesAst.map(r=>r.toString()).join(" ")} ...> maps to <... ${e.mapItem.mappingValues.map(r=>r.toString()).join(" ")} ...>;`,"```",`[Mapping (${e.mappingValuesAst.map(r=>r.toString()).join(" ")})](${`${e.mapItem.mappingValues[0].uri}#L${e.mapItem.mappingValues[0].firstToken.pos.line+1}`})`])].join(`
282
- `)}}get allReplaced(){return this.replaces?[this.replaces,...this.replaces.allReplaced]:[]}toString(){return this.ast.toString()}toPrettyString(e){return this.ast.toPrettyString(e)}};var ii=class t{constructor(e){this.context=e;this.comments=[];this.includes=[];this.roots=[];this.references=[];this.unlinkedDeletes=[];this.unlinkedRefNodes=[];this.globalDeletes=[];this.rootNode=new X(this.context.bindingLoader,"/");this.labelsUsedCache=new Map;this.fileTopMostAstCache=new Map}fileTopMostAsts(e){let r=this.fileTopMostAstCache.get(e);if(r)return r;let n=[...this.context.parser.cPreprocessorParser.allAstItems,...this.roots,...this.references,...this.unlinkedDeletes,...this.unlinkedRefNodes,...this.globalDeletes,...this.context.overlayParsers.flatMap(i=>[...i.cPreprocessorParser.allAstItems,...i.unhandledStatements.children]),...this.context.parser.unhandledStatements.children].flatMap(i=>i.getTopMostAstNodeForFile(e));return this.fileTopMostAstCache.set(e,n),n}getDeepestAstNode(e,r){let i=this.fileTopMostAsts(e).find(s=>an(s,e,r)||_w(Mr().requestTokens(e,!1),s,r));if(i instanceof lr){let o=this.rootNode.getReferenceBy(i)?.getDeepestAstNode(e,r);return o?{...o,runtime:this}:{item:null,runtime:this,ast:ti(i,e,r)}}else if(i instanceof Dt&&i.path){let s=this.rootNode.getDeepestAstNode(e,r);return s?{...s,runtime:this}:void 0}else if(i instanceof Ge&&i.path){let s=t.getNodeFromPath(i.path.slice(1),this.rootNode)?.getDeepestAstNode(e,r);return s?{...s,runtime:this}:void 0}else if(i)return{runtime:this,item:null,ast:ti(i,e,r)}}static getNodeFromPath(e,r,n=!0){if(e.length===0)return r;let i=e[0].split("@"),s=i[0],a=i.at(1)?.split(",").map(u=>Number.parseInt(u,16)),c=e.slice(1),l=r.getNode(s,a,n);return l?t.getNodeFromPath(c,l,n):void 0}resolvePath(e,r){if(!e.at(0)?.startsWith("&"))return e;let n=this.labelsUsedCache.get(e[0].slice(1));return n||(r??=this.rootNode.allDescendantsLabels,r.find(s=>s.label.value===e.at(0)?.slice(1)&&s.parentNode instanceof lt)?.lastLinkedTo?.path)}get issues(){return this.issuesCache??=[...this.labelIssues(),...this.rootNode.getIssues(this.context.macros)],this.issuesCache}labelIssues(){let e=[],r=new Map;return this.rootNode.allDescendantsLabelsMapped.forEach(n=>{r.has(n.label.label.value)?r.get(n.label.label.value)?.push(n):r.set(n.label.label.value,[n])}),Array.from(r).forEach(n=>{let i=n[1];if(i.length>1){let s=i.find(a=>a.owner instanceof X);if(!i.every(a=>a&&a.owner===s?.owner)||!s){let a=i[0].label;e.push(Lt(4,a.firstToken,a.lastToken,a,{linkedTo:i.slice(1).map(c=>c.label),templateStrings:[i.at(0).label.label.value]}))}}}),e}get typesIssues(){let e=r=>[...r.nodeType?.getIssue(this,r)??[],...r.nodes.flatMap(n=>e(n))];return this.typesIssuesCache??=e(this.rootNode),this.typesIssuesCache}getOrderedNodeAst(e){return Sw([...e.definitions,...e.referencedBy],this.context)}};var Ff=class t{constructor(e,r,n){this.settings=e;this.formattingOptions=r;this.bindingLoader=n;this._issues=[];this.overlayParsers=[];this.overlays=[];this.ctxNames_=new Set;this.sortKeys=new WeakMap;let i={includePaths:[],overlays:[],zephyrBindings:[],deviceOrgTreeBindings:[],deviceOrgBindingsMetaSchema:[],...e,ctxName:e.ctxName??(0,WD.basename)(e.dtsFile),lockRenameEdits:[],showFormattingErrorAsDiagnostics:e.showFormattingErrorAsDiagnostics??!0};this.overlays=i.overlays,this.overlays.filter(xc.existsSync),this.parser=new Ks(i.dtsFile,i.includePaths),this.ctxNames_.add(i.ctxName),this.id=ki(i),this.parser.stable.then(()=>{this.overlayParsers=this.overlays?.map(s=>new Ks(s,i.includePaths,this.parser.cPreprocessorParser.macros))??[]})}get macros(){return[this.parser,...this.overlayParsers].at(-1).cPreprocessorParser.macros}get ctxNames(){return Array.from(this.ctxNames_)}addCtxName(e){this.ctxNames_.add(e)}removeCtxName(e){this.ctxNames_.delete(e)}async getContextIssues(){return[...(await this.getRuntime()).issues,...this._issues]}async getFileTree(){let e=new Map,r=i=>({file:i,includes:(e.get(i)??[]).map(s=>r(s.resolvedPath??s.path))});return(await this.getRuntime()).includes.forEach(i=>{let s=e.get(i.uri);s||(s=[],e.set(i.uri,s)),s.push({path:i.path.path,resolvedPath:i.resolvedPath})}),{mainDtsPath:r(this.parser.uri),overlays:this.overlays.map(r)}}async stable(){await Promise.all([this.parser.stable,...this.overlayParsers.map(e=>e.stable)])}async getRuntime(){return await this.stable(),this._runtime??=this.evaluate(),this._runtime}getContextFiles(){return[...this.overlayParsers.flatMap(e=>e.getFiles()),...this.parser.getFiles()]}isInContext(e){return this.getContextFiles().some(r=>le(r,e))}getUriParser(e){let r=this.overlayParsers.find(n=>n.getFiles().some(i=>le(i,e)));return r??=this.parser.getFiles().some(n=>le(n,e))?this.parser:void 0,r}async getAllParsers(){return await this.stable(),[this.parser,...this.overlayParsers]}async getDocumentLinks(e,r){if(!this.isInContext(e))return[];let i=(await this.getRuntime()).rootNode.allBindingsProperties.filter(s=>le(s.ast.uri,e)&&(!r||an(s.ast,e,r))).flatMap(s=>s.ast.values?.values.flatMap(o=>{let c=s.parent?.nodeTypes.find(l=>o?.value instanceof ne&&l.compatible===o.value.value);return c?{range:pe(o.value),target:de(c.bindingsPath)}:void 0})).filter(s=>s)??[];return[...this.parser.cPreprocessorParser.dtsIncludes.filter(s=>le(s.uri,e)&&(!r||an(s,e,r))).map(s=>{let o=this.parser.cPreprocessorParser.resolveInclude(s);if(o)return{range:pe(s.path),target:de(o)}}).filter(s=>s)??[],...i]}linkPropertiesLabelsAndNodePaths(e){let r=s=>[...s.properties,...s.nodes.flatMap(r)],n=r(e.rootNode),i=e.rootNode.allDescendantsLabels;n.forEach(s=>s.ast.allDescendants.forEach(o=>{if(o instanceof ie){let a=e.resolvePath([`&${o.label?.value}`],i);if(a){let c=e.rootNode.getChild(a);o.linksTo=c,c?.linkedRefLabels.push(o)}else o.value&&this._issues.push(Lt(3,o.firstToken,o.lastToken,o,{templateStrings:[o.value]}))}else o instanceof xn&&this.linkNodePath(o,e.rootNode)}))}linkNodePath(e,r){let n=r,i=e.pathParts;for(let s=0;s<i.length&&i[s];s++){let o=!1,a=i[s];if(a){let c=s===0&&a.name==="/"?r:n?.getNode(a.name,a.fullAddress,!1);a.linksTo=c,!o&&!c&&(o=!0,this._issues.push(Lt(8,a.firstToken,a.lastToken,a,{templateStrings:[a.toString(),`${e.pathParts.filter(l=>l?.linksTo).map(l=>l?.toString()).join("/")}`]}))),c?.linkedNodeNamePaths.push(a),n=c}else break}}async reevaluate(e){let r=this.getUriParser(e);return r?(this.sortKeys=new WeakMap,await r.reparse(),this._runtime=this.evaluate(),this._runtime):this._runtime}getSortKey(e){if(e)return this.sortKeys.get(e.firstToken)}async evaluate(){let e=performance.now();await this.stable();let r=new ii(this);this._issues=[],this.parser.rootDocument.resetIssues(),this.processRoot(this.parser.rootDocument,r);for(let n=0;n<this.overlayParsers.length;n++)this.overlayParsers[n].rootDocument.resetIssues(),this.processRoot(this.overlayParsers[n].rootDocument,r);return r.includes=this.parser.includes,r.comments=this.parser.cPreprocessorParser.allAstItems.filter(n=>n instanceof un),(await this.getAllParsers()).flatMap(n=>n.tokens).forEach((n,i)=>this.sortKeys.set(n,i)),this.linkPropertiesLabelsAndNodePaths(r),this.reportNodeNameAndPropertyClashes(r),console.log(`(ID: ${this.id}) evaluate`,performance.now()-e),r}reportNodeNameAndPropertyClashes(e){let r=n=>{n.properties.forEach(i=>{n.nodes.filter(o=>o.address===void 0&&o.name===i.ast.propertyName?.name&&o.definitions.at(-1)?.name).forEach(o=>{let a=o.definitions[o.definitions.length-1].name;this._issues.push(Lt(2,a.firstToken,a.lastToken,a,{linkedTo:[i.ast,...i.allReplaced.map(c=>c.ast)]}))})}),n.nodes.forEach(r)};r(e.rootNode)}processRoot(e,r){for(let n=0;n<e.children.length;n++){let i=e.children[n];this.processChild(i,r.rootNode,r)}}processChild(e,r,n){e instanceof lt?this.processDtcBaseNode(e,r,n):e instanceof nt?this.processDtcProperty(e,r,n):e instanceof Or?this.processDeleteNode(e,r,n):e instanceof ht&&this.processDeleteProperty(e,r,n)}checkNodeUniqueNames(e,r){let n=(o,a)=>o.filter(c=>c.name===a.name&&(c.address===a.fullAddress&&c.address===void 0||on(c.address??[],a.fullAddress??[])===0)).map(c=>c.issueAst),i=r.nodes.map(o=>({name:o.name,address:o.address,issueAst:o.definitions[0].name??o.definitions[0]})),s=[];e.children.forEach(o=>{if(o instanceof Ge&&o.name){let a=n(s.map(c=>({name:c.name,address:c.fullAddress,issueAst:c})),o.name);a.length&&this._issues.push(Lt(2,o.name.firstToken,o.name.lastToken,o.name,{linkedTo:a})),s.push(o.name)}else if(o instanceof Or&&o.nodeNameOrRef instanceof Me){let a=o.nodeNameOrRef;n(i,a)&&(s=s.filter(c=>n(s.map(l=>({name:l.name,address:l.fullAddress,issueAst:l})),c).length))}})}getCompileCommands(){if(!(!this.settings.compileCommands||!(0,xc.existsSync)(this.settings.compileCommands)))return JSON.parse((0,xc.readFileSync)(this.settings.compileCommands).toString())}processDtcBaseNode(e,r,n){e instanceof Dt?this.processDtcRootNode(e,n):e instanceof Ge?this.processDtcChildNode(e,r,n):e instanceof lr&&this.processDtcRefNode(e,n)}processDtcRootNode(e,r){r.roots.push(e),r.rootNode.definitions.push(e),this.checkNodeUniqueNames(e,r.rootNode),e.children.forEach(n=>this.processChild(n,r.rootNode,r))}processDtcChildNode(e,r,n){if(e.name?.name){let i=e.path?n.resolvePath(e.path):void 0,o=(i?n.rootNode.getChild(i):void 0)??new X(this.bindingLoader,e.name.name,e.name.fullAddress,r);o.definitions.push(e),e.labels.forEach(a=>a.lastLinkedTo=o),r=o,this.checkNodeUniqueNames(e,o)}e.children.forEach(i=>this.processChild(i,r,n))}processDtcRefNodeLabelRef(e,r,n){let i,s=e.resolveNodePath??(e.pathName?n.resolvePath([e.pathName]):void 0);return s?(e.resolveNodePath??=[...s],i=n.rootNode.getChild(s),r.linksTo=i,e.labels.forEach(o=>o.lastLinkedTo=i),i?.linkedRefLabels.push(r),i?.referencedBy.push(e),e.labels.forEach(o=>{n.labelsUsedCache.set(o.label.value,s)}),i?(n.references.push(e),this.checkNodeUniqueNames(e,i)):n.unlinkedRefNodes.push(e)):(this._issues.push(Lt(3,r.firstToken,r.lastToken,r,{templateStrings:[r.label?.value??""]})),n.unlinkedRefNodes.push(e)),i}processDtcRefNodeNodePathRef(e,r,n){let i;r.path&&this.linkNodePath(r.path,n.rootNode);let o=r.path?.pathParts.at(-1)?.linksTo?.path;return o?(e.resolveNodePath??=o,i=n.rootNode.getChild(o),e.labels.forEach(a=>a.lastLinkedTo=i),i?.referencedBy.push(e),e.labels.forEach(a=>{n.labelsUsedCache.set(a.label.value,o)}),i?(n.references.push(e),this.checkNodeUniqueNames(e,i)):n.unlinkedRefNodes.push(e)):n.unlinkedRefNodes.push(e),i}processDtcRefNode(e,r){let n;e.reference?e.reference instanceof ie?n=this.processDtcRefNodeLabelRef(e,e.reference,r):n=this.processDtcRefNodeNodePathRef(e,e.reference,r):r.unlinkedRefNodes.push(e),e.children.forEach(i=>this.processChild(i,n??new X(this.bindingLoader,""),r))}processDtcProperty(e,r,n){e.propertyName?.name&&r.addProperty(new Ye(e,r)),e.children.forEach(i=>this.processChild(i,r,n))}processDeleteNode(e,r,n){if(e.nodeNameOrRef instanceof Me&&e.nodeNameOrRef.value){if(e.parentNode?.parentNode)if(!r.hasNode(e.nodeNameOrRef.name,e.nodeNameOrRef.fullAddress))this._issues.push(Lt(5,e.nodeNameOrRef.firstToken,e.nodeNameOrRef.lastToken,e.nodeNameOrRef));else{r.deletes.push(e);let i=r.getNode(e.nodeNameOrRef.name,e.nodeNameOrRef.fullAddress);e.nodeNameOrRef.linksTo=i,r.deleteNode(e.nodeNameOrRef.name,e,e.nodeNameOrRef.fullAddress),i?.labels.forEach(s=>{n.labelsUsedCache.delete(s.label.value)})}}else if(e.nodeNameOrRef instanceof ie&&e.nodeNameOrRef.value){let i=n.resolvePath([`&${e.nodeNameOrRef.value}`]),s;i?(s=n.rootNode.getChild(i),r.deletes.push(e),e.nodeNameOrRef.linksTo=s,s?.labels.forEach(o=>{n.labelsUsedCache.delete(o.label.value)}),s?.linkedRefLabels.push(e.nodeNameOrRef),s?.parent?.deleteNode(s.name,e,s.address),e.parentNode instanceof lt&&!e.parentNode.pathName&&n.globalDeletes.push(e)):(n.unlinkedDeletes.push(e),this._issues.push(Lt(3,e.nodeNameOrRef.firstToken,e.nodeNameOrRef.lastToken,e.nodeNameOrRef,{templateStrings:[e.nodeNameOrRef.value]})))}else if(e.nodeNameOrRef instanceof it&&e.nodeNameOrRef.path&&!e.nodeNameOrRef.path.pathParts.some(i=>!i)){let i=n.rootNode,s=e.nodeNameOrRef.path.pathParts;for(let c=0;c<s.length&&s[c];c++){let l=s[c];if(l){let u=i?.getNode(l.name,l.fullAddress,!1);l.linksTo=u,u?.linkedNodeNamePaths.push(l),i=u}}let o=e.nodeNameOrRef.path.pathParts.find(c=>c&&!c.linksTo),a=e.nodeNameOrRef.path.pathParts.at(-1)?.linksTo;a||(n.unlinkedDeletes.push(e),o&&this._issues.push(Lt(8,o.firstToken,o.lastToken,o,{templateStrings:[o.toString(),`${e.nodeNameOrRef.path.pathParts.filter(c=>c?.linksTo).map(c=>c?.toString()).join("/")}`]}))),r.deletes.push(e),a?.labels.forEach(c=>{n.labelsUsedCache.delete(c.label.value)}),a?.parent?.deleteNode(a.name,e,a.address),e.parentNode instanceof lt&&!e.parentNode.pathName&&n.globalDeletes.push(e)}else n.unlinkedDeletes.push(e);e.children.forEach(i=>this.processChild(i,r,n))}processDeleteProperty(e,r,n){e.propertyName?.name&&!r.hasProperty(e.propertyName.name)?this._issues.push(Lt(1,e.propertyName.firstToken,e.propertyName.lastToken,e.propertyName)):e.propertyName?.name&&(r.deletes.push(e),r.deleteProperty(e.propertyName.name,e)),e.children.forEach(i=>this.processChild(i,r,n))}static#e(e,r,n){let i=n.get(r);i||(i=[],n.set(r,i)),i.push(e)}async getSyntaxIssues(e=new Map,r){return(await this.getAllParsers()).forEach(n=>{r?n.issues.filter(i=>r(i.raw)).forEach(i=>t.#e(i.diagnostic(),i.raw.uri,e)):n.issues.forEach(i=>t.#e(i.diagnostic(),i.raw.uri,e))}),e}async getDiagnostics(){let e=new Map;try{return await this.getSyntaxIssues(e),(await this.getContextIssues()??[]).forEach(i=>{i.raw.severity===dT.DiagnosticSeverity.Hint&&i.raw.virtual||t.#e(i.diagnostic(),i.raw.uri,e)}),(await this.getRuntime())?.typesIssues.forEach(i=>{i.raw.severity===dT.DiagnosticSeverity.Hint&&i.raw.virtual||t.#e(i.diagnostic(),i.raw.uri,e)}),e}catch(r){throw console.error(r),r}}async toFullString(){return`/dts-v1/;
282
+ `)}}get allReplaced(){return this.replaces?[this.replaces,...this.replaces.allReplaced]:[]}toString(){return this.ast.toString()}toPrettyString(e){return this.ast.toPrettyString(e)}};var ii=class t{constructor(e){this.context=e;this.comments=[];this.includes=[];this.roots=[];this.references=[];this.unlinkedDeletes=[];this.unlinkedRefNodes=[];this.globalDeletes=[];this.rootNode=new X(this.context.bindingLoader,"/");this.labelsUsedCache=new Map;this.fileTopMostAstCache=new Map}fileTopMostAsts(e){let r=this.fileTopMostAstCache.get(e);if(r)return r;let n=[...this.context.parser.cPreprocessorParser.allAstItems,...this.roots,...this.references,...this.unlinkedDeletes,...this.unlinkedRefNodes,...this.globalDeletes,...this.context.overlayParsers.flatMap(i=>[...i.cPreprocessorParser.allAstItems,...i.unhandledStatements.children]),...this.context.parser.unhandledStatements.children].flatMap(i=>i.getTopMostAstNodeForFile(e));return this.fileTopMostAstCache.set(e,n),n}getDeepestAstNode(e,r){let i=this.fileTopMostAsts(e).find(s=>Ir(s,e,r)||_w(xr().requestTokens(e,!1),s,r));if(i instanceof lr){let o=this.rootNode.getReferenceBy(i)?.getDeepestAstNode(e,r);return o?{...o,runtime:this}:{item:null,runtime:this,ast:ti(i,e,r)}}else if(i instanceof Dt&&i.path){let s=this.rootNode.getDeepestAstNode(e,r);return s?{...s,runtime:this}:void 0}else if(i instanceof Ge&&i.path){let s=t.getNodeFromPath(i.path.slice(1),this.rootNode)?.getDeepestAstNode(e,r);return s?{...s,runtime:this}:void 0}else if(i)return{runtime:this,item:null,ast:ti(i,e,r)}}static getNodeFromPath(e,r,n=!0){if(e.length===0)return r;let i=e[0].split("@"),s=i[0],a=i.at(1)?.split(",").map(u=>Number.parseInt(u,16)),c=e.slice(1),l=r.getNode(s,a,n);return l?t.getNodeFromPath(c,l,n):void 0}resolvePath(e,r){if(!e.at(0)?.startsWith("&"))return e;let n=this.labelsUsedCache.get(e[0].slice(1));return n||(r??=this.rootNode.allDescendantsLabels,r.find(s=>s.label.value===e.at(0)?.slice(1)&&s.parentNode instanceof lt)?.lastLinkedTo?.path)}get issues(){return this.issuesCache??=[...this.labelIssues(),...this.rootNode.getIssues(this.context.macros)],this.issuesCache}labelIssues(){let e=[],r=new Map;return this.rootNode.allDescendantsLabelsMapped.forEach(n=>{r.has(n.label.label.value)?r.get(n.label.label.value)?.push(n):r.set(n.label.label.value,[n])}),Array.from(r).forEach(n=>{let i=n[1];if(i.length>1){let s=i.find(a=>a.owner instanceof X);if(!i.every(a=>a&&a.owner===s?.owner)||!s){let a=i[0].label;e.push(Lt(4,a.firstToken,a.lastToken,a,{linkedTo:i.slice(1).map(c=>c.label),templateStrings:[i.at(0).label.label.value]}))}}}),e}get typesIssues(){let e=r=>[...r.nodeType?.getIssue(this,r)??[],...r.nodes.flatMap(n=>e(n))];return this.typesIssuesCache??=e(this.rootNode),this.typesIssuesCache}getOrderedNodeAst(e){return Sw([...e.definitions,...e.referencedBy],this.context)}};var Ff=class t{constructor(e,r,n){this.settings=e;this.formattingOptions=r;this.bindingLoader=n;this._issues=[];this.overlayParsers=[];this.overlays=[];this.ctxNames_=new Set;this.sortKeys=new WeakMap;this.staleUri=new Set;let i={includePaths:[],overlays:[],zephyrBindings:[],deviceOrgTreeBindings:[],deviceOrgBindingsMetaSchema:[],...e,ctxName:e.ctxName??(0,WD.basename)(e.dtsFile),lockRenameEdits:[],showFormattingErrorAsDiagnostics:e.showFormattingErrorAsDiagnostics??!0};this.overlays=i.overlays,this.overlays.filter(xc.existsSync),this.parser=new Ks(i.dtsFile,i.includePaths),this.ctxNames_.add(i.ctxName),this.id=ki(i),this.parser.stable.then(()=>{this.overlayParsers=this.overlays?.map(s=>new Ks(s,i.includePaths,this.parser.cPreprocessorParser.macros))??[]})}get macros(){return[this.parser,...this.overlayParsers].at(-1).cPreprocessorParser.macros}get ctxNames(){return Array.from(this.ctxNames_)}addCtxName(e){this.ctxNames_.add(e)}removeCtxName(e){this.ctxNames_.delete(e)}async getContextIssues(){return[...(await this.getRuntime()).issues,...this._issues]}async getFileTree(){let e=new Map,r=i=>({file:i,includes:(e.get(i)??[]).map(s=>r(s.resolvedPath??s.path))});return(await this.getRuntime()).includes.forEach(i=>{let s=e.get(i.uri);s||(s=[],e.set(i.uri,s)),s.push({path:i.path.path,resolvedPath:i.resolvedPath})}),{mainDtsPath:r(this.parser.uri),overlays:this.overlays.map(r)}}async stable(){await Promise.all([this.parser.stable,...this.overlayParsers.map(e=>e.stable)])}async getRuntime(){return await this.stable(),this._runtime??=this.evaluate(),this._runtime}getContextFiles(){return[...this.overlayParsers.flatMap(e=>e.getFiles()),...this.parser.getFiles()]}isInContext(e){return this.getContextFiles().some(r=>le(r,e))}getUriParser(e){let r=this.overlayParsers.find(n=>n.getFiles().some(i=>le(i,e)));return r??=this.parser.getFiles().some(n=>le(n,e))?this.parser:void 0,r}async getAllParsers(){return await this.stable(),[this.parser,...this.overlayParsers]}async getDocumentLinks(e,r){if(!this.isInContext(e))return[];let i=(await this.getRuntime()).rootNode.allBindingsProperties.filter(s=>le(s.ast.uri,e)&&(!r||Ir(s.ast,e,r))).flatMap(s=>s.ast.values?.values.flatMap(o=>{let c=s.parent?.nodeTypes.find(l=>o?.value instanceof ne&&l.compatible===o.value.value);return c?{range:pe(o.value),target:de(c.bindingsPath)}:void 0})).filter(s=>s)??[];return[...this.parser.cPreprocessorParser.dtsIncludes.filter(s=>le(s.uri,e)&&(!r||Ir(s,e,r))).map(s=>{let o=this.parser.cPreprocessorParser.resolveInclude(s);if(o)return{range:pe(s.path),target:de(o)}}).filter(s=>s)??[],...i]}linkPropertiesLabelsAndNodePaths(e){let r=s=>[...s.properties,...s.nodes.flatMap(r)],n=r(e.rootNode),i=e.rootNode.allDescendantsLabels;n.forEach(s=>s.ast.allDescendants.forEach(o=>{if(o instanceof ie){let a=e.resolvePath([`&${o.label?.value}`],i);if(a){let c=e.rootNode.getChild(a);o.linksTo=c,c?.linkedRefLabels.push(o)}else o.value&&this._issues.push(Lt(3,o.firstToken,o.lastToken,o,{templateStrings:[o.value]}))}else o instanceof xn&&this.linkNodePath(o,e.rootNode)}))}linkNodePath(e,r){let n=r,i=e.pathParts;for(let s=0;s<i.length&&i[s];s++){let o=!1,a=i[s];if(a){let c=s===0&&a.name==="/"?r:n?.getNode(a.name,a.fullAddress,!1);a.linksTo=c,!o&&!c&&(o=!0,this._issues.push(Lt(8,a.firstToken,a.lastToken,a,{templateStrings:[a.toString(),`${e.pathParts.filter(l=>l?.linksTo).map(l=>l?.toString()).join("/")}`]}))),c?.linkedNodeNamePaths.push(a),n=c}else break}}setStaleUri(e){this.staleUri.add(e)}async reevaluate(e){this.setStaleUri(e);let r=new Set;return this.staleUri.forEach(n=>{let i=this.getUriParser(n);i&&r.add(i)}),r.size?(this.sortKeys=new WeakMap,await Promise.all(Array.from(r).map(n=>n.reparse())),this._runtime=this.evaluate(),this._runtime):this._runtime}getSortKey(e){if(e)return this.sortKeys.get(e.firstToken)}async evaluate(){let e=performance.now();await this.stable();let r=new ii(this);this.staleUri.clear(),this._issues=[],this.parser.rootDocument.resetIssues(),this.processRoot(this.parser.rootDocument,r);for(let n=0;n<this.overlayParsers.length;n++)this.overlayParsers[n].rootDocument.resetIssues(),this.processRoot(this.overlayParsers[n].rootDocument,r);return r.includes=this.parser.includes,r.comments=this.parser.cPreprocessorParser.allAstItems.filter(n=>n instanceof un),(await this.getAllParsers()).flatMap(n=>n.tokens).forEach((n,i)=>this.sortKeys.set(n,i)),this.linkPropertiesLabelsAndNodePaths(r),this.reportNodeNameAndPropertyClashes(r),console.log(`(ID: ${this.id}) evaluate`,performance.now()-e),r}reportNodeNameAndPropertyClashes(e){let r=n=>{n.properties.forEach(i=>{n.nodes.filter(o=>o.address===void 0&&o.name===i.ast.propertyName?.name&&o.definitions.at(-1)?.name).forEach(o=>{let a=o.definitions[o.definitions.length-1].name;this._issues.push(Lt(2,a.firstToken,a.lastToken,a,{linkedTo:[i.ast,...i.allReplaced.map(c=>c.ast)]}))})}),n.nodes.forEach(r)};r(e.rootNode)}processRoot(e,r){for(let n=0;n<e.children.length;n++){let i=e.children[n];this.processChild(i,r.rootNode,r)}}processChild(e,r,n){e instanceof lt?this.processDtcBaseNode(e,r,n):e instanceof nt?this.processDtcProperty(e,r,n):e instanceof Mr?this.processDeleteNode(e,r,n):e instanceof ht&&this.processDeleteProperty(e,r,n)}checkNodeUniqueNames(e,r){let n=(o,a)=>o.filter(c=>c.name===a.name&&(c.address===a.fullAddress&&c.address===void 0||an(c.address??[],a.fullAddress??[])===0)).map(c=>c.issueAst),i=r.nodes.map(o=>({name:o.name,address:o.address,issueAst:o.definitions[0].name??o.definitions[0]})),s=[];e.children.forEach(o=>{if(o instanceof Ge&&o.name){let a=n(s.map(c=>({name:c.name,address:c.fullAddress,issueAst:c})),o.name);a.length&&this._issues.push(Lt(2,o.name.firstToken,o.name.lastToken,o.name,{linkedTo:a})),s.push(o.name)}else if(o instanceof Mr&&o.nodeNameOrRef instanceof Me){let a=o.nodeNameOrRef;n(i,a)&&(s=s.filter(c=>n(s.map(l=>({name:l.name,address:l.fullAddress,issueAst:l})),c).length))}})}getCompileCommands(){if(!(!this.settings.compileCommands||!(0,xc.existsSync)(this.settings.compileCommands)))return JSON.parse((0,xc.readFileSync)(this.settings.compileCommands).toString())}processDtcBaseNode(e,r,n){e instanceof Dt?this.processDtcRootNode(e,n):e instanceof Ge?this.processDtcChildNode(e,r,n):e instanceof lr&&this.processDtcRefNode(e,n)}processDtcRootNode(e,r){r.roots.push(e),r.rootNode.definitions.push(e),this.checkNodeUniqueNames(e,r.rootNode),e.children.forEach(n=>this.processChild(n,r.rootNode,r))}processDtcChildNode(e,r,n){if(e.name?.name){let i=e.path?n.resolvePath(e.path):void 0,o=(i?n.rootNode.getChild(i):void 0)??new X(this.bindingLoader,e.name.name,e.name.fullAddress,r);o.definitions.push(e),e.labels.forEach(a=>a.lastLinkedTo=o),r=o,this.checkNodeUniqueNames(e,o)}e.children.forEach(i=>this.processChild(i,r,n))}processDtcRefNodeLabelRef(e,r,n){let i,s=e.resolveNodePath??(e.pathName?n.resolvePath([e.pathName]):void 0);return s?(e.resolveNodePath??=[...s],i=n.rootNode.getChild(s),r.linksTo=i,e.labels.forEach(o=>o.lastLinkedTo=i),i?.linkedRefLabels.push(r),i?.referencedBy.push(e),e.labels.forEach(o=>{n.labelsUsedCache.set(o.label.value,s)}),i?(n.references.push(e),this.checkNodeUniqueNames(e,i)):n.unlinkedRefNodes.push(e)):(this._issues.push(Lt(3,r.firstToken,r.lastToken,r,{templateStrings:[r.label?.value??""]})),n.unlinkedRefNodes.push(e)),i}processDtcRefNodeNodePathRef(e,r,n){let i;r.path&&this.linkNodePath(r.path,n.rootNode);let o=r.path?.pathParts.at(-1)?.linksTo?.path;return o?(e.resolveNodePath??=o,i=n.rootNode.getChild(o),e.labels.forEach(a=>a.lastLinkedTo=i),i?.referencedBy.push(e),e.labels.forEach(a=>{n.labelsUsedCache.set(a.label.value,o)}),i?(n.references.push(e),this.checkNodeUniqueNames(e,i)):n.unlinkedRefNodes.push(e)):n.unlinkedRefNodes.push(e),i}processDtcRefNode(e,r){let n;e.reference?e.reference instanceof ie?n=this.processDtcRefNodeLabelRef(e,e.reference,r):n=this.processDtcRefNodeNodePathRef(e,e.reference,r):r.unlinkedRefNodes.push(e),e.children.forEach(i=>this.processChild(i,n??new X(this.bindingLoader,""),r))}processDtcProperty(e,r,n){e.propertyName?.name&&r.addProperty(new Ye(e,r)),e.children.forEach(i=>this.processChild(i,r,n))}processDeleteNode(e,r,n){if(e.nodeNameOrRef instanceof Me&&e.nodeNameOrRef.value){if(e.parentNode?.parentNode)if(!r.hasNode(e.nodeNameOrRef.name,e.nodeNameOrRef.fullAddress))this._issues.push(Lt(5,e.nodeNameOrRef.firstToken,e.nodeNameOrRef.lastToken,e.nodeNameOrRef));else{r.deletes.push(e);let i=r.getNode(e.nodeNameOrRef.name,e.nodeNameOrRef.fullAddress);e.nodeNameOrRef.linksTo=i,r.deleteNode(e.nodeNameOrRef.name,e,e.nodeNameOrRef.fullAddress),i?.labels.forEach(s=>{n.labelsUsedCache.delete(s.label.value)})}}else if(e.nodeNameOrRef instanceof ie&&e.nodeNameOrRef.value){let i=n.resolvePath([`&${e.nodeNameOrRef.value}`]),s;i?(s=n.rootNode.getChild(i),r.deletes.push(e),e.nodeNameOrRef.linksTo=s,s?.labels.forEach(o=>{n.labelsUsedCache.delete(o.label.value)}),s?.linkedRefLabels.push(e.nodeNameOrRef),s?.parent?.deleteNode(s.name,e,s.address),e.parentNode instanceof lt&&!e.parentNode.pathName&&n.globalDeletes.push(e)):(n.unlinkedDeletes.push(e),this._issues.push(Lt(3,e.nodeNameOrRef.firstToken,e.nodeNameOrRef.lastToken,e.nodeNameOrRef,{templateStrings:[e.nodeNameOrRef.value]})))}else if(e.nodeNameOrRef instanceof it&&e.nodeNameOrRef.path&&!e.nodeNameOrRef.path.pathParts.some(i=>!i)){let i=n.rootNode,s=e.nodeNameOrRef.path.pathParts;for(let c=0;c<s.length&&s[c];c++){let l=s[c];if(l){let u=i?.getNode(l.name,l.fullAddress,!1);l.linksTo=u,u?.linkedNodeNamePaths.push(l),i=u}}let o=e.nodeNameOrRef.path.pathParts.find(c=>c&&!c.linksTo),a=e.nodeNameOrRef.path.pathParts.at(-1)?.linksTo;a||(n.unlinkedDeletes.push(e),o&&this._issues.push(Lt(8,o.firstToken,o.lastToken,o,{templateStrings:[o.toString(),`${e.nodeNameOrRef.path.pathParts.filter(c=>c?.linksTo).map(c=>c?.toString()).join("/")}`]}))),r.deletes.push(e),a?.labels.forEach(c=>{n.labelsUsedCache.delete(c.label.value)}),a?.parent?.deleteNode(a.name,e,a.address),e.parentNode instanceof lt&&!e.parentNode.pathName&&n.globalDeletes.push(e)}else n.unlinkedDeletes.push(e);e.children.forEach(i=>this.processChild(i,r,n))}processDeleteProperty(e,r,n){e.propertyName?.name&&!r.hasProperty(e.propertyName.name)?this._issues.push(Lt(1,e.propertyName.firstToken,e.propertyName.lastToken,e.propertyName)):e.propertyName?.name&&(r.deletes.push(e),r.deleteProperty(e.propertyName.name,e)),e.children.forEach(i=>this.processChild(i,r,n))}static#e(e,r,n){let i=n.get(r);i||(i=[],n.set(r,i)),i.push(e)}async getSyntaxIssues(e=new Map,r){return(await this.getAllParsers()).forEach(n=>{r?n.issues.filter(i=>r(i.raw)).forEach(i=>t.#e(i.diagnostic(),i.raw.uri,e)):n.issues.forEach(i=>t.#e(i.diagnostic(),i.raw.uri,e))}),e}async getDiagnostics(){let e=new Map;try{return await this.getSyntaxIssues(e),(await this.getContextIssues()??[]).forEach(i=>{i.raw.severity===dT.DiagnosticSeverity.Hint&&i.raw.virtual||t.#e(i.diagnostic(),i.raw.uri,e)}),(await this.getRuntime())?.typesIssues.forEach(i=>{i.raw.severity===dT.DiagnosticSeverity.Hint&&i.raw.virtual||t.#e(i.diagnostic(),i.raw.uri,e)}),e}catch(r){throw console.error(r),r}}async toFullString(){return`/dts-v1/;
283
283
  ${(await this.getRuntime()).rootNode.toFullString((await this.getAllParsers()).at(-1).cPreprocessorParser.macros,this.settings.cwd)}`}async serialize(){return await this.stable,await this.getDiagnostics(),(await this?.getRuntime())?.rootNode.serialize((await this.getAllParsers()).at(-1).cPreprocessorParser.macros)}};var GD=require("fs"),sa=require("path"),At=$(U());function CU(t){if(!t||!(t.ast instanceof Xo))return[];let e=n=>n.flatMap(i=>{try{return(0,GD.readdirSync)(i,{withFileTypes:!0,recursive:!0}).filter(s=>s.name.toLowerCase().endsWith(".dtsi")||s.name.toLowerCase().endsWith(".h")).map(s=>({label:`${(0,sa.join)((0,sa.relative)(i,s.parentPath),s.name)}`,kind:At.CompletionItemKind.File}))}catch{return[]}});if(t.ast.relative)return e([(0,sa.dirname)(t.ast.uri)]);let r=t.runtime.context.settings.includePaths??[];return e(r)}var jf=(t,e)=>[...t.labels.filter(e),...t.deletedNodes.filter(r=>!e(r.by)).flatMap(r=>jf(r.node,e)),...t.nodes.flatMap(r=>jf(r,e))],fT=(t,e)=>[...t.labels,...t.deletedNodes.filter(r=>!e(r.by)).flatMap(r=>fT(r.node,e)),...t.nodes.flatMap(r=>fT(r,e))];function AU(t,e){if(!t||!(t.item instanceof Ye)||!(t.ast instanceof ie))return[];let r=i=>fT(i,e),n=new Map;return r(t.runtime.rootNode).forEach(i=>n.set(i.label.value,i)),Array.from(n).map(([,i])=>({label:`${i.label.value}`,kind:At.CompletionItemKind.Method,documentation:i.lastLinkedTo?.toMarkupContent(t.runtime.context.macros)}))}function IU(t,e){if(!t||t.item!==null||!(t.ast instanceof ie)||!(t.ast.parentNode instanceof lr))return[];let r=n=>jf(n,e).filter(i=>e(i));return[...Array.from(new Set(r(t.runtime.rootNode).map(n=>n.label.value))).map(n=>({label:n,insertText:t.ast.lastToken.nextToken?.value==="{"?n:`${n} {
284
284
  $1
285
- };`,kind:At.CompletionItemKind.Value,insertTextFormat:At.InsertTextFormat.Snippet}))]}function OU(t,e){let r=s=>s?s.parentNode instanceof lr||s.parentNode instanceof Dt||s.parentNode instanceof Ge?!1:r(s.parentNode):!0;if(!t||t.item!==null||!Ut(t.ast)||!r(t.ast))return[];let n=s=>jf(s,e).filter(o=>e(o));if(t.ast instanceof ut)return n(t.runtime.rootNode).length?[{label:"/delete-node/",insertText:"/delete-node/ $1;",kind:At.CompletionItemKind.Keyword,insertTextFormat:At.InsertTextFormat.Snippet,sortText:"~"}]:t.runtime.rootNode.nodes.length?[{label:"/delete-node/ &{}",insertText:"/delete-node/ {/$1};",kind:At.CompletionItemKind.Keyword,insertTextFormat:At.InsertTextFormat.Snippet,sortText:"~"}]:[];let i=new Map;return n(t.runtime.rootNode).forEach(s=>i.set(s.label.value,s)),Array.from(i).map(([,s])=>({label:t.ast instanceof ie?`${s.label.value}`:`&${s.label.value}`,kind:At.CompletionItemKind.Variable,documentation:s.lastLinkedTo?.toMarkupContent(t.runtime.context.macros)}))}function MU(t,e){if(!t||!(t.item instanceof X)||t.item===null||t.beforeAst&&(!(t.beforeAst?.parentNode instanceof vr)||t.beforeAst?.parentNode instanceof ht))return[];let r=n=>[...n.nodes,...n.deletedNodes.filter(i=>!e(i.by)).map(i=>i.node)].flatMap(i=>({node:i,astNodes:i.definitions.filter(s=>s instanceof Ge)})).filter(i=>i.astNodes.some(e));return t.ast instanceof Me||t.ast instanceof Or||t.beforeAst?.parentNode instanceof Or?r(t.item).map(n=>({label:`${n.astNodes.at(0)?.name?.toString()}`,kind:At.CompletionItemKind.Variable,documentation:n.node.toMarkupContent(t.runtime.context.macros)})):r(t.item).length?[{label:"/delete-node/",kind:At.CompletionItemKind.Keyword,insertTextFormat:At.InsertTextFormat.Snippet,sortText:"~"}]:[]}function xU(t,e){if(!t||!(t.item instanceof X)||t.beforeAst&&(!(t.beforeAst?.parentNode instanceof vr)||t.beforeAst?.parentNode instanceof Or))return[];let r=n=>[...n.properties,...n.deletedProperties.filter(i=>!e(i.by)).map(i=>i.property)].flatMap(i=>[i,...i.allReplaced]).filter(i=>e(i.ast));if(t.ast instanceof Ze||t.ast instanceof ht||t.beforeAst?.parentNode instanceof ht){let n=new Map;return r(t.item).forEach(i=>n.set(i.name,i)),Array.from(n).map(([,i])=>({label:`${i.name}`,kind:At.CompletionItemKind.Variable,documentation:i.ast.toPrettyString(t.runtime.context.macros)}))}return r(t.item).length?[{label:"/delete-property/",insertText:"/delete-property/$1;",kind:At.CompletionItemKind.Keyword,sortText:"~",insertTextFormat:At.InsertTextFormat.Snippet}]:[]}function LU(t,e){let r=t?.ast instanceof xn?t.ast:t?.ast.parentNode;if(!t||!r||!(r instanceof xn))return[];let n=r.pathParts.slice(0,-1);if(n.some(o=>!o))return[];let i=n.map(o=>o.toString());return(()=>{let o=t.runtime.rootNode.getChildFromScope(["/",...i],e);return[...o?.nodes.filter(a=>!Ut(t.ast)||a.definitions.some(e))??[],...o?.deletedNodes.filter(a=>!e(a.by)).map(a=>a.node)??[]]})().map(o=>({label:`/${[...i,o.fullName].join("/")}`,kind:At.CompletionItemKind.Variable,documentation:o.toMarkupContent(t.runtime.context.macros)}))}function qU(t){return!t||!(t.item instanceof Ye&&t.item.ast.assignOperatorToken)||t.ast instanceof ne?[]:!Ws(t?.ast)&&!(t.ast instanceof nt&&t.item.ast.values===null)&&!Ws(t.beforeAst)&&!Ws(t.afterAst)?[]:t.item.parent.nodeType instanceof Nt?Array.from([t.runtime.context.parser,...t.runtime.context.overlayParsers].at(-1)?.cPreprocessorParser.macros??[]).map(([,n])=>n.macro.identifier instanceof ni?{label:`${n.macro.identifier.toString()}`,insertText:`${n.macro.name}(${n.macro.identifier.params.map((i,s)=>i instanceof St?`$${s+1}`:"").join(", ")})`,kind:At.CompletionItemKind.Function,sortText:`~${n.macro.name}`,insertTextFormat:At.InsertTextFormat.Snippet}:{label:n.macro.identifier.name,kind:At.CompletionItemKind.Variable,sortText:`~${n.macro.name}`}):[]}async function KD(t,e){return _t(t,e,(r,n)=>[...xU(r,n),...MU(r,n),...OU(r,n),...LU(r,n),...IU(r,n),...AU(r,n),...CU(r),...qU(r)])}var _p=$(U());var XD=require("child_process");var pT=t=>/[A-Za-z0-9_]/.test(t);function $U(t,e){let r=[];for(let n=0;n<e;n++){let i=t[n];i==="("?r.push(n):i===")"&&r.pop()}return r.length?r[r.length-1]:void 0}function YD(t,e){let r=1;for(let n=e+1;n<t.length;n++){let i=t[n];if(i==="(")r++;else if(i===")"&&(r--,r===0))return n}}function JD(t,e,r){let n=[],i=0,s=!1,o=!1,a=e;for(let f=e;f<r;f++){let p=t[f];if(p==="'"&&!o)s=!s;else if(p==='"'&&!s)o=!o;else if(!s&&!o){if(p==="(")i++;else if(p===")")i--;else if(p===","&&i===0){let g=a,h=f,T=g,S=h;for(;T<S&&/\s/.test(t[T]);)T++;for(;S>T&&/\s/.test(t[S-1]);)S--;n.push({start:g,end:h,text:t.slice(T,S)}),a=f+1}}}let c=a,l=r,u=c,d=l;for(;u<d&&/\s/.test(t[u]);)u++;for(;d>u&&/\s/.test(t[d-1]);)d--;return n.push({start:c,end:l,text:t.slice(u,d)}),n}function hT(t){let e=t.trim(),r=/^([A-Za-z_][A-Za-z0-9_]*)\s*\(([\s\S]*)\)$/.exec(e);if(!r)return{macro:e};let n=r[1],i=r[2],s=JD(i,0,i.length),o={macro:n,args:[]};return o.args=s.map(a=>{let c=hT(a.text);return c.parent=o,c}),o}function wi(t,e){let r=t.getText(),n=t.offsetAt(e),i=n,s=n;for(;i>0&&pT(r[i-1]);)i--;for(;s<r.length&&pT(r[s]);)s++;if(r[s]==="("){let T=YD(r,s);T!==void 0&&(s=T+1)}let o=r.slice(i,s),a=o.trim().length?hT(o):void 0,c=$U(r,n);if(c===void 0)return a;let l=YD(r,c);if(l===void 0||!(c<n&&n<=l))return a;let u=c,d=u;for(;d>0&&pT(r[d-1]);)d--;let f=r.slice(d,u);if(!f)return a;let p=JD(r,c+1,l),g={macro:f,args:[]};g.args=p.map(T=>{let S=hT(T.text);return S.parent=g,S});let h=-1;for(let T=0;T<p.length;T++){let S=p[T];if(n>=S.start&&n<=S.end){h=T;break}}if(h>=0){let T=g.args[h];return T.argIndexInParent=h,T}return g}function BU(t,e,r){let i=t.getText().split(/\r?\n/),s=new RegExp(`^\\s*#\\s*define\\s+(${e})\\b(\\s*\\([^)]*\\))?\\s*(.*)$`);for(let o=Math.min(r.line,i.length-1);o>=0;o--){let a=i[o],c=s.exec(a);if(c){let l=a.indexOf(c[0]),u=a.indexOf(c[3],l);return Kr.create(o,u>=0?u:a.length)}}}async function os(t,e,r,n){let i=QD(t,e,r);if(i)return i;let s=await jU(e,n,Se(t.uri));if(s)return[s,r]}function QD(t,e,r){if(e.startsWith("DT_"))return;let n=BU(t,e,r);if(!n)return;let i=wi(t,n);if(i)return[i,n]}var FU=(t,e)=>new Promise(r=>{let n=(0,XD.spawn)(t,e,{stdio:["ignore","pipe","pipe"]}),i="";n.stdout.on("data",s=>{i+=s.toString()}),n.on("close",s=>{r(s?"":i)})});async function jU(t,e,r){let n=e.getCompileCommands()?.find(s=>le(s.file,r));if(!n)return;let i=`${n.command.replace(/-(o|c)\s+\S+/g,"")} -E -dM ${n.file}`;try{let[s,...o]=i.split(" "),a=await FU(s,o.filter(u=>!!u)),c=Qn.create(`macros://${n.file}`,"devicetree",0,a),l=QD(c,t,c.positionAt(a.length-1));if(l)return l[0]}catch(s){console.error(s)}}function ee(t){return t.toLowerCase().replace(/[@,-\.]/g,"_")}var Lc=$(U());async function ZD({macro:t,context:e}){if(t.macro&&"DT_ALIAS".startsWith(t.macro))return[{label:"DT_ALIAS(...)",insertText:"DT_ALIAS($1)",kind:Lc.CompletionItemKind.Function,insertTextFormat:Lc.InsertTextFormat.Snippet}];if(t.parent?.macro!=="DT_ALIAS"||t.argIndexInParent!==0)return[];let r=await e.getRuntime();return r.rootNode.getNode("aliases")?.properties.map(n=>{let i=n.ast.getFlatAstValues()?.at(0),s;return i instanceof ie?s=i.linksTo:i instanceof xn&&(s=i.pathParts.at(-1)?.linksTo),{label:ee(n.name),kind:Lc.CompletionItemKind.Property,documentation:s?.toMarkupContent(r.context.macros)}})??[]}var qc=$(U());async function dr(t,e,r){if(!t)return;let i=t?.properties.find(s=>ee(s.name)===e)?.ast.getFlatAstValues();return i?.length===0?!0:i?.map(s=>{if(s instanceof it)return s.path?.pathParts.at(-1)?.linksTo;if(s instanceof ie)return s.linksTo;if(s instanceof ne)return s.value;if(s instanceof Ee){let o=s.evaluate(r.macros);return typeof o=="number"?o:s.toString()}})}async function Uf({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_PROP"||s?.length!==2)return;let o=await i({document:t,macro:s[0],context:r,position:n});return o?dr(o,s[1].macro,r):void 0}async function eC(t,e){let r=await Uf(t,e);if(typeof r=="boolean")return;let n=r?.at(0);if(r?.length===1&&n instanceof X)return n}async function tC(t,e,r,n){if(r=typeof r=="number"?r:De(r),typeof r!="number")return;let i=await dr(t,e,n);if(i===!0)return!0;if(!i)return;let s=i.at(r);if(s)return i.length===1&&i[0]instanceof X?i[0]:s}async function Hf({document:t,macro:e,context:r,position:n},i){if(!(e.macro!=="DT_PROP_BY_IDX"||e.args?.length!==3))return tC(await i({document:t,macro:e.args[0],context:r,position:n}),e.args[1].macro,e.args[2].macro,r)}async function rC(t,e){let r=await Hf(t,e);if(typeof r!="boolean"&&r instanceof X)return r}async function Lr(t,{document:e,context:r,macro:n,position:i},s){return t||(await s({document:e,macro:n,context:r,position:i})??n.macro)}async function Vf(t,e,r,n){return Lr(await dr(t,e,r.context),r,n)}async function oa({document:t,macro:e,context:r,position:n},i){if(e.macro!=="DT_PROP_OR"||e.args?.length!==3)return;let[s,o,a]=e.args,c=await i({document:t,macro:s,context:r,position:n});return await Vf(c,o.macro,{macro:a,document:t,context:r,position:n},i)}async function nC(t,e){let r=await oa(t,e);if(r instanceof X)return r;if(typeof r=="boolean")return;let n=r?.at(0);if(r?.length===1&&n instanceof X)return n}async function iC(t){let e=t?.nodeType?.onBus,r=t?.parent?.nodeType?.bus;return t&&r?.length&&r?.some(n=>n===e)?t.parent??void 0:void 0}async function zf(t,e){let r=t.macro.args;if(t.macro.macro!=="DT_BUS"||r?.length!==1)return;let n=await e({...t,macro:r[0]});return await iC(n)}async function Wf(t,e){let r=(await t.getRuntime()).rootNode.getChild(["/","chosen"]);if(!r)return;let s=r?.properties.find(o=>ee(o.name)===e)?.ast.getFlatAstValues()?.at(0);if(s instanceof ie)return s.linksTo;if(s instanceof it)return s.path?.pathParts.at(-1)?.linksTo}async function Gf(t){let e=t.macro.args;if(!(t.macro.macro!=="DT_CHOSEN"||e?.length!==1))return await Wf(t.context,e[0].macro)}async function Kf(t,e){let r=await e?.getRuntime();if(r){let n=ii.getNodeFromPath(["aliases"],r.rootNode,!0),i=n?.properties.find(o=>ee(o.name)===t);if(!i)return;let s=i.ast.getFlatAstValues();return s?.[0]instanceof ne?n=r.rootNode.getChild(s[0].value.split("/")):s?.[0]instanceof ie?n=s[0].linksTo:s?.[0]instanceof it&&(n=s[0].path?.pathParts.at(-1)?.linksTo),n}}async function Yf({macro:t,context:e}){if(!(t.macro!=="DT_ALIAS"||t.args?.length!==1))return Kf(t.args[0].macro,e)}async function sC(t,e){return t?.nodes.find(r=>ee(r.name)===e)}async function Xf({document:t,macro:e,context:r,position:n},i){if(e.macro!=="DT_CHILD"||e.args?.length!==2)return;let s=await i({document:t,macro:e.args[0],context:r,position:n});return sC(s,e.args[1].macro)}var mT=(t,e)=>t.nodes.filter(r=>!r.disabled&&r.nodeType).flatMap(r=>[r.nodeType.compatible,...Array.from(r.nodeType.extends)].filter(n=>!!n).map(n=>ee(n)).includes(e)?[r,...mT(r,e)]:mT(r,e));async function oC(t,e){let r=await e?.getRuntime();if(r)return mT(r.rootNode,t)}async function gT({macro:t,context:e}){if(!(t.macro!=="DT_COMPAT_GET_ANY_STATUS_OKAY"||t.args?.length!==1))return oC(t.args[0].macro,e)}async function aC(t){return(await gT(t))?.at(0)}async function cC(t){return t?.parent?.parent??void 0}async function Jf({document:t,macro:e,context:r,position:n},i){if(e.macro!=="DT_GPARENT"||e.args?.length!==1)return;let s=await i({document:t,macro:e.args[0],context:r,position:n});return cC(s)}var yT=(t,e)=>t.nodes.filter(r=>r.nodeType).sort((r,n)=>r.disabled===n.disabled?0:r.disabled?1:-1).flatMap(r=>[r.nodeType.compatible,...Array.from(r.nodeType.extends)].filter(n=>!!n).map(n=>ee(n)).includes(e)?[r,...yT(r,e)]:yT(r,e));async function lC(t,e,r){let n=await r?.getRuntime();if(n)return yT(n.rootNode,e).at(t)}async function Qf({macro:t,context:e}){if(t.macro!=="DT_INST"||t.args?.length!==2)return;let r=De(t.args[0].macro);if(typeof r=="number")return lC(r,t.args[1].macro,e)}async function uC(t,e){let r=await e?.getRuntime(),n=r?.resolvePath([`&${t.trim()}`]);if(r&&n)return ii.getNodeFromPath(n.slice(1),r.rootNode,!0)}async function Zf({macro:t,context:e}){if(!(t.macro!=="DT_NODELABEL"||t.args?.length!==1))return uC(t.args[0].macro,e)}async function dC(t){return t?.parent??void 0}async function ep({document:t,macro:e,context:r,position:n},i){if(e.macro!=="DT_PARENT"||e.args?.length!==1)return;let s=await i({document:t,macro:e.args[0],context:r,position:n});return dC(s)}var fC=(t,e)=>{if(!e.length)return t;let r=e.splice(0,1)[0],n=t.nodes.find(i=>ee(i.fullName)===r);return n?fC(n,e):void 0};async function tp(t,e){let r=await e?.getRuntime();if(r)return fC(r.rootNode,t)}async function rp({macro:t,context:e}){let r=t.args;if(!(t.macro!=="DT_PATH"||!r?.length))return tp(r.map(n=>n.macro),e)}async function np({macro:t,context:e}){let r=t.args;if(!(t.macro!=="DT_ROOT"||r?.length))return(await e.getRuntime()).rootNode}async function aa(t,e,r){let n=t?.properties.find(c=>ee(c.name)===e);if(!n)return;let i=n?.ast.quickValues?.at(r),s=n.parent.nodeType;if(Array.isArray(i)||!s||!(s instanceof Nt))return;let a=s.properties.find(c=>c.getNameMatch(n.name))?.values(n).findIndex(c=>c===i)??-1;return a===-1?void 0:a}async function ip(t,e,r,n,i){return Lr(await aa(t,e,r),n,i)}async function sp({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_ENUM_IDX_BY_IDX_OR"||s?.length!==4)return;let o=await i({document:t,macro:s[0],context:r,position:n}),a=De(s[2].macro);if(typeof a=="number")return await ip(o,s[1].macro,a,{macro:s[3],document:t,context:r,position:n},i)}async function op({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_ENUM_IDX_OR"||s?.length!==3)return;let o=await i({document:t,macro:s[0],context:r,position:n});return await ip(o,s[1].macro,0,{macro:s[2],document:t,context:r,position:n},i)}async function as(t,e,r,n,i){let s=t?.properties.find(d=>ee(d.name)===e),o=s?.parent.nodeType;if(!o||!(o instanceof Nt))return;if(typeof r=="string"){let d=s.nexusMapsTo.at(0)?.specifierSpace;if(r=(d?s.parent.getProperty(`${d}-names`)?.ast.quickValues:void 0)?.findIndex(p=>typeof p=="string"&&p.toLowerCase()===r)??-1,r===-1)return}let a=s.nexusMapsTo.at(r),l=a?.target.nodeType?.cellsValues?.find(d=>a.specifierSpace&&d.specifier===a.specifierSpace)?.values?.indexOf(n);if(l===void 0||l===-1)return;let u=a?.mappingValuesAst.at(l);if(u instanceof Ee){let d=u.evaluate(i.macros);return typeof d!="number"?u.toString():d}}async function ca(t,e,r,n,i,s){return Lr(await as(t,e,r,n,i.context),i,s)}async function ap({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_PHA_BY_IDX_OR"||s?.length!==5)return;let o=await i({document:t,macro:s[0],context:r,position:n}),a=De(s[2].macro);if(typeof a=="number")return ca(o,s[1].macro,a,s[3].macro,{macro:s[4],document:t,context:r,position:n},i)}async function cp({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_PHA_BY_NAME_OR"||s?.length!==5)return;let o=await i({document:t,macro:s[0],context:r,position:n});return ca(o,s[1].macro,s[2].macro,s[3].macro,{macro:s[4],document:t,context:r,position:n},i)}async function si(t,e,r=0){let n=t?.properties.find(s=>ee(s.name)===e);if(r=typeof r=="number"?r:De(r??"0"),typeof r!="number")return;let i=n?.ast.getFlatAstValues()?.at(r);if(i instanceof ie)return i.linksTo;if(i instanceof it)return i.path?.pathParts.at(-1)?.linksTo}async function cs({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_PHANDLE"||s?.length!==2)return;let o=await i({document:t,macro:s[0],context:r,position:n});return si(o,s[1].macro,0)}async function oi({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_PHANDLE_BY_IDX"||s?.length!==3)return;let o=await i({document:t,macro:s[0],context:r,position:n});return si(o,s[1].macro,s.at(2)?.macro)}async function pC(t,e,r){let n=t?.properties.find(l=>ee(l.name)===e);if(!n)return;let i=n.parent.nodeType;if(!i||!(i instanceof Nt))return;let s=n.nexusMapsTo.at(0)?.specifierSpace,a=(s?n.parent.getProperty(`${s}-names`)?.ast.quickValues:void 0)?.findIndex(l=>typeof l=="string"&&l.toLowerCase()===r)??-1;return a===-1?void 0:n.nexusMapsTo.at(a)?.target}async function lp({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_PHANDLE_BY_NAME"||s?.length!==3)return;let o=await i({document:t,macro:s[0],context:r,position:n});return await pC(o,s[1].macro,s[2].macro)}async function up({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_PHA_OR"||s?.length!==4)return;let o=await i({document:t,macro:s[0],context:r,position:n});return ca(o,s[1].macro,0,s[2].macro,{macro:s[3],document:t,context:r,position:n},i)}async function dp({document:t,macro:e,context:r,position:n},i){if(e.macro!=="DT_PROP_BY_PHANDLE_IDX_OR"||e.args?.length!==5)return;let s=await si(await i({document:t,macro:e.args[0],context:r,position:n}),e.args[1].macro,e.args[2].macro);return Vf(s,e.args[3].macro,{macro:e.args[4],document:t,context:r,position:n},i)}async function fp(t,e){if(!t)return;let r=t?.properties.find(n=>ee(n.name)===e);return r?.nexusMapsTo.length?r.nexusMapsTo.length:r?.ast.getFlatAstValues()?.length}async function hC(t,e,r,n){if(t)return Lr(await fp(t,e),r,n)}async function pp({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_PROP_LEN_OR"||s?.length!==3)return;let o=await i({document:t,macro:s[0],context:r,position:n});return o?hC(o,s[1].macro,{macro:s[2],document:t,context:r,position:n},i):void 0}async function la(t,e){if(!t)return;let n=t?.properties.find(i=>ee(i.name)===e)?.ast.getFlatAstValues();if(n?.length===1&&n[0]instanceof ne)return ee(n[0].value)}async function mC(t,e,r,n){if(t)return Lr(await la(t,e),r,n)}async function hp({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_STRING_TOKEN_OR"||s?.length!==3)return;let o=await i({document:t,macro:s[0],context:r,position:n});return mC(o,s[1].macro,{document:t,macro:s[2],context:r,position:n},i)}async function mp(t,e){if(!t)return;let n=t?.properties.find(i=>ee(i.name)===e)?.ast.getFlatAstValues();if(n?.length===1&&n[0]instanceof ne)return n[0].value}async function gC(t,e,r,n){if(t)return Lr(await mp(t,e),r,n)}async function gp({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_STRING_UNQUOTED_OR"||s?.length!==3)return;let o=await i({document:t,macro:s[0],context:r,position:n});return gC(o,s[1].macro,{document:t,macro:s[2],context:r,position:n},i)}async function yp(t,e){return(await la(t,e))?.toUpperCase()}async function yC(t,e,r,n){if(t)return Lr(await yp(t,e),r,n)}async function Tp({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_STRING_UPPER_TOKEN_OR"||s?.length!==3)return;let o=await i({document:t,macro:s[0],context:r,position:n});return yC(o,s[1].macro,{document:t,macro:s[2],context:r,position:n},i)}function Ln(t){return async(e,r)=>{let n=await t(e,r);if(n instanceof X)return n}}async function x({macro:t,document:e,context:r,position:n}){["DT_ALIAS","DT_NODELABEL"].some(a=>a===t.parent?.macro)||t.parent?.macro==="DT_CHILD"&&t.argIndexInParent===1?t=t.parent:t.parent?.macro==="DT_HAS_ALIAS"?(t=t.parent,t.macro="DT_ALIAS"):t.parent?.macro==="DT_PATH"&&(t.parent.args=t.parent.args?.slice(0,(t.argIndexInParent??0)+1)??[],t=t.parent);let s=await[zf,Gf,Yf,Xf,aC,Jf,Qf,Zf,ep,rp,cs,oi,lp,rC,eC,nC,np,Ln(sp),Ln(op),Ln(ap),Ln(cp),Ln(up),Ln(dp),Ln(pp),Ln(oa),Ln(hp),Ln(gp),Ln(Tp)].reduce((a,c)=>a.then(l=>l||c({macro:t,document:e,context:r,position:n},x)),Promise.resolve(void 0));if(s)return Array.isArray(s)?s.at(0):s;let o=await os(e,t.macro,n,r);if(o)return x({document:e,macro:o[0],context:r,position:n})}async function TC({macro:t,document:e,context:r,position:n}){return t.macro&&t.macro&&"DT_CHILD".startsWith(t.macro)?[{label:"DT_CHILD(...)",insertText:"DT_CHILD($1, $2)",kind:qc.CompletionItemKind.Function,insertTextFormat:qc.InsertTextFormat.Snippet}]:t.parent?.macro!=="DT_CHILD"||t.argIndexInParent!==1||!t.parent.args?.length?[]:(await x({document:e,macro:t.parent.args[0],context:r,position:n}))?.nodes.map(s=>({label:ee(s.fullName),kind:qc.CompletionItemKind.Class,documentation:s.toMarkupContent(r.macros)}))??[]}var $c=$(U());function vC({macro:t,context:e}){return t.macro&&"DT_COMPAT_GET_ANY_STATUS_OKAY".startsWith(t.macro)?[{label:"DT_COMPAT_GET_ANY_STATUS_OKAY(...)",insertText:"DT_COMPAT_GET_ANY_STATUS_OKAY($1)",kind:$c.CompletionItemKind.Function,insertTextFormat:$c.InsertTextFormat.Snippet}]:t.parent?.macro!=="DT_COMPAT_GET_ANY_STATUS_OKAY"||t.argIndexInParent!==0?[]:e.bindingLoader?.getBindings().map(r=>({label:ee(r),kind:$c.CompletionItemKind.Property}))??[]}var Bc=$(U());function bC({macro:t,context:e}){return t.macro&&"DT_INST".startsWith(t.macro)?[{label:"DT_INST(...)",insertText:"DT_INST($1, $2)",kind:Bc.CompletionItemKind.Function,insertTextFormat:Bc.InsertTextFormat.Snippet}]:t.parent?.macro!=="DT_INST"||t.argIndexInParent!==1?[]:e.bindingLoader?.getBindings().map(r=>({label:ee(r),kind:Bc.CompletionItemKind.Property}))??[]}var Fc=$(U());async function _C({macro:t,context:e}){if(t.macro&&"DT_NODELABEL".startsWith(t.macro))return[{label:"DT_NODELABEL(...)",insertText:"DT_NODELABEL($1)",kind:Fc.CompletionItemKind.Function,insertTextFormat:Fc.InsertTextFormat.Snippet}];let r=await e.getRuntime();return t.parent?.macro!=="DT_NODELABEL"||t.argIndexInParent!==0?[]:await Promise.all(r.rootNode.allDescendantsLabels.map(async n=>({label:n.label.value,kind:Fc.CompletionItemKind.Property,documentation:n.lastLinkedTo?.toMarkupContent(r.context.macros)}))??[])}var jc=$(U());async function SC({macro:t,context:e}){return t.macro&&t.macro&&"DT_PATH".startsWith(t.macro)?[{label:"DT_PATH(...)",insertText:"DT_PATH($1)",kind:jc.CompletionItemKind.Function,insertTextFormat:jc.InsertTextFormat.Snippet}]:t.parent?.macro!=="DT_PATH"||!t.parent.args?.length?[]:(await tp(t.parent.args.slice(0,-1).map(n=>n.macro),e))?.nodes.map(n=>({label:ee(n.fullName),kind:jc.CompletionItemKind.Class,documentation:n.toMarkupContent(e.macros)}))??[]}var NC=$(U());async function kC({macro:t,context:e}){if(t.macro&&t.macro&&"DT_ROOT".startsWith(t.macro)){let r=await e.getRuntime();return[{label:"DT_ROOT",kind:NC.CompletionItemKind.Class,documentation:r.rootNode.toMarkupContent(r.context.macros)}]}return[]}var vp=$(U());function RC({macro:t}){return t.macro&&t.macro&&"DT_SAME_NODE".startsWith(t.macro)?[{label:"DT_SAME_NODE(...)",insertText:"DT_SAME_NODE($1, $2)",kind:vp.CompletionItemKind.Snippet,insertTextFormat:vp.InsertTextFormat.Snippet}]:[]}var Uc=$(U());async function J({macro:t,document:e,position:r,context:n},i,s,o,a,c=l=>x({document:e,macro:l,context:n,position:r})){if(t.macro&&t.macro&&i.startsWith(t.macro))return[{label:`${i}(...)`,insertText:`${i}(${Array(o).map((d,f)=>`${f+1}`).join(", ")})`,kind:Uc.CompletionItemKind.Function,insertTextFormat:Uc.InsertTextFormat.Snippet}];if(t.parent?.macro!==i||t.argIndexInParent!==s||!t.parent.args?.length)return[];let l=await c(t.parent.args[0]);return(a?l?.properties.filter(a):l?.properties)?.map(d=>({label:ee(d.name),kind:Uc.CompletionItemKind.Property,documentation:d.toPrettyString(n.macros)}))??[]}async function PC(t){return J(t,"DT_ENUM_HAS_VALUE",1,3)}async function wC(t){return J(t,"DT_ENUM_HAS_VALUE_BY_IDX",1,4)}async function EC(t){return J(t,"DT_ENUM_IDX",1,2)}async function DC(t){return J(t,"DT_ENUM_IDX_BY_IDX",1,3)}async function CC(t){return J(t,"DT_ENUM_IDX_BY_IDX_OR",1,4)}async function AC(t){return J(t,"DT_ENUM_IDX_OR",1,3)}var IC=$(U());async function Ei({macro:t,document:e,context:r,position:n},i,s,o){if(t.parent?.macro!==i||t.argIndexInParent!==s||!t.parent.args?.length)return[];let c=(await x({document:e,macro:t.parent.args[0],context:r,position:n}))?.properties.find(f=>ee(f.name)===t.parent?.args?.at(1)?.macro),l=0;if(typeof o=="string"){let f=c?.nexusMapsTo.at(0)?.specifierSpace;if(l=(f?c.parent.getProperty(`${f}-names`)?.ast.quickValues:void 0)?.findIndex(g=>typeof g=="string"&&g.toLowerCase()===o)??-1,l===-1)return[]}let u=c?.nexusMapsTo.at(l);return u?.target.nodeType?.cellsValues?.find(f=>u.specifierSpace&&f.specifier===u.specifierSpace)?.values.map(f=>({label:ee(f),kind:IC.CompletionItemKind.Property}))??[]}async function OC(t){return t.macro.argIndexInParent===2?Ei(t,"DT_PHA",2,0):J(t,"DT_PHA",1,3,e=>!!e.nexusMapsTo.length)}var MC=$(U());async function UU({document:t,macro:e,position:r,context:n},i){if(e.parent?.macro!==i||!e.parent.args?.length)return[];let o=(await x({document:t,macro:e.parent.args[0],context:n,position:r}))?.properties.find(a=>ee(a.name)===e.parent?.args?.at(1)?.macro);return Array(o?.nexusMapsTo.length??0)?.map((a,c)=>({label:c.toString(),kind:MC.CompletionItemKind.Property}))??[]}async function xC(t){if(t.macro.argIndexInParent===2)return UU(t,"DT_PHA_BY_IDX");if(t.macro.argIndexInParent===3){let e=t.macro.parent?.args?De(t.macro.parent.args[2].macro):void 0;return typeof e!="number"?[]:Ei(t,"DT_PHA_BY_IDX",3,e)}return J(t,"DT_PHA_BY_IDX",1,3,e=>!!e.nexusMapsTo.length)}var LC=$(U());async function Hc({document:t,macro:e,context:r,position:n},i){if(e.parent?.macro!==i||!e.parent.args?.length)return[];let o=(await x({document:t,macro:e.parent.args[0],context:r,position:n}))?.properties.find(l=>ee(l.name)===e.parent?.args?.at(1)?.macro),a=o?.nexusMapsTo.at(0)?.specifierSpace;return(a?o.parent.getProperty(`${a}-names`)?.ast.quickValues:void 0)?.filter(l=>typeof l=="string")?.map(l=>({label:l,kind:LC.CompletionItemKind.Property}))??[]}async function qC(t){let{macro:e}=t;return e.argIndexInParent===2?Hc(t,"DT_PHA_BY_NAME"):e.argIndexInParent===3?e.parent?.args?.[2]?.macro?Ei(t,"DT_PHA_BY_NAME",3,e.parent.args[2].macro):[]:J(t,"DT_PHA_BY_NAME",1,3,r=>!!r.nexusMapsTo.length)}async function $C(t){let{macro:e}=t;return e.argIndexInParent===2?Hc(t,"DT_PHA_BY_NAME_OR"):e.argIndexInParent===3?e.parent?.args?.[2]?.macro?Ei(t,"DT_PHA_BY_NAME_OR",3,e.parent.args[2].macro):[]:J(t,"DT_PHA_BY_NAME_OR",1,3,r=>!!r.nexusMapsTo.length)}async function BC(t){let{macro:e}=t;return e.argIndexInParent===2?Ei(t,"DT_PHA_OR",2,0):J(t,"DT_PHA_OR",1,3,r=>!!r.nexusMapsTo.length)}async function bp(t){return J(t,"DT_PHANDLE",1,2,e=>!!e.ast.getFlatAstValues()?.some(r=>r instanceof ie||r instanceof it))}async function ua(t){return J(t,"DT_PHANDLE_BY_IDX",1,3,e=>!!e.ast.getFlatAstValues()?.some(r=>r instanceof ie||r instanceof it))}async function FC(t){let{macro:e}=t;return e.argIndexInParent===2?Hc(t,"DT_PHANDLE_BY_NAME"):J(t,"DT_PHANDLE_BY_NAME",1,3,r=>!!r.ast.getFlatAstValues()?.some(n=>n instanceof ie||n instanceof it))}async function jC(t){return J(t,"DT_PROP",1,2,e=>!e.nexusMapsTo.length)}async function UC(t){return J(t,"DT_PROP_BY_IDX",1,3,e=>!e.nexusMapsTo.length)}async function HC(t){let{macro:e}=t;return(e.argIndexInParent===1||e.argIndexInParent===2)&&e.parent?.macro==="DT_PROP_BY_PHANDLE_IDX"?ua({...t,macro:{...e,parent:e.parent?{...e.parent,macro:"DT_PHANDLE_BY_IDX"}:void 0}}):J(t,"DT_PROP_BY_PHANDLE_IDX",3,4,r=>!r.nexusMapsTo.length,()=>oi({...t,macro:{macro:"DT_PHANDLE_BY_IDX",args:e.parent?.args?.slice(0,3)}},x))}async function VC(t){let{macro:e}=t;return e.argIndexInParent===1&&e.parent?.macro==="DT_PROP_BY_PHANDLE"?bp({...t,macro:{...e,parent:e.parent?{...e.parent,macro:"DT_PHANDLE"}:void 0}}):J(t,"DT_PROP_BY_PHANDLE",2,3,r=>!r.nexusMapsTo.length,()=>cs({...t,macro:{macro:"DT_PHANDLE",args:e.parent?.args?.slice(0,2)}},x))}async function zC(t){let{macro:e}=t;return(e.argIndexInParent===1||e.argIndexInParent===2)&&e.parent?.macro==="DT_PROP_BY_PHANDLE_IDX_OR"?ua({...t,macro:{...e,parent:e.parent?{...e.parent,macro:"DT_PHANDLE_BY_IDX"}:void 0}}):J(t,"DT_PROP_BY_PHANDLE_IDX_OR",3,5,r=>!r.nexusMapsTo.length,()=>oi({...t,macro:{macro:"DT_PHANDLE_BY_IDX",args:e.parent?.args?.slice(0,3)}},x))}async function WC(t){return J(t,"DT_PROP_HAS_IDX",1,3,e=>!e.nexusMapsTo.length)}async function GC(t){return J(t,"DT_PROP_HAS_NAME",1,3,e=>!e.nexusMapsTo.length)}async function KC(t){return J(t,"DT_PROP_LAST",1,2,e=>!e.nexusMapsTo.length)}async function YC(t){return J(t,"DT_PROP_LEN",1,2,e=>!e.nexusMapsTo.length)}async function XC(t){return J(t,"DT_PROP_LEN_OR",1,2,e=>!e.nexusMapsTo.length)}async function JC(t){return J(t,"DT_PROP_OR",1,2,e=>!e.nexusMapsTo.length)}async function QC(t){return J(t,"DT_STRING_TOKEN",1,2,e=>{let r=e.ast.getFlatAstValues();return r?.length===1&&r[0]instanceof ne})}async function ZC(t){return J(t,"DT_STRING_TOKEN_BY_IDX",1,3,e=>{let r=e.ast.getFlatAstValues();return!!r?.length&&r.every(n=>n instanceof ne)})}async function eA(t){return J(t,"DT_STRING_TOKEN_OR",1,3,e=>{let r=e.ast.getFlatAstValues();return r?.length===1&&r[0]instanceof ne})}async function tA(t){return J(t,"DT_STRING_UNQUOTED",1,2,e=>{let r=e.ast.getFlatAstValues();return r?.length===1&&r[0]instanceof ne})}async function rA(t){return J(t,"DT_STRING_UNQUOTED_BY_IDX",1,3,e=>{let r=e.ast.getFlatAstValues();return!!r?.length&&r.every(n=>n instanceof ne)})}async function nA(t){return J(t,"DT_STRING_UNQUOTED_OR",1,3,e=>{let r=e.ast.getFlatAstValues();return r?.length===1&&r[0]instanceof ne})}async function iA(t){return J(t,"DT_STRING_UPPER_TOKEN",1,2,e=>{let r=e.ast.getFlatAstValues();return r?.length===1&&r[0]instanceof ne})}async function sA(t){return J(t,"DT_STRING_UPPER_TOKEN_BY_IDX",1,3,e=>{let r=e.ast.getFlatAstValues();return!!r?.length&&r.every(n=>n instanceof ne)})}async function oA(t){return J(t,"DT_STRING_UPPER_TOKEN_OR",1,3,e=>{let r=e.ast.getFlatAstValues();return r?.length===1&&r[0]instanceof ne})}var Vc=$(U());async function aA({macro:t,context:e}){return t.parent?.macro==="DT_ON_BUS"&&t.argIndexInParent===1?e.bindingLoader?.getBusTypes().map(r=>({label:ee(r),kind:Vc.CompletionItemKind.Enum}))??[]:t.macro&&"DT_ON_BUS".startsWith(t.macro)?[{label:"DT_ON_BUS(...)",insertText:"DT_ON_BUS($1, $2)",kind:Vc.CompletionItemKind.Function,insertTextFormat:Vc.InsertTextFormat.Snippet}]:[]}async function cA(t){return J(t,"DT_CHOSEN",0,1,void 0,async()=>(await t.context.getRuntime()).rootNode.getChild(["/","chosen"]))}async function lA(t){return J(t,"DT_HAS_CHOSEN",0,1,void 0,async()=>(await t.context.getRuntime()).rootNode.getChild(["/","chosen"]))}var HU=["DT_BUS","DT_CHILD_NUM","DT_CHILD_NUM_STATUS_OKAY","DT_GPARENT","DT_HAS_ALIAS","DT_NODE_CHILD_IDX","DT_NODE_FULL_NAME","DT_NODE_FULL_NAME_TOKEN","DT_NODE_FULL_NAME_UNQUOTED","DT_NODE_FULL_NAME_UPPER_TOKEN","DT_NODE_HASH","DT_NODE_PATH","DT_NODELABEL_STRING_ARRAY","DT_PARENT"];async function uA(t,e,r){if(!r)return[];let n=wi(r,t.position);return n?(await Promise.all([aA,cA,lA,ZD,TC,vC,bC,VU,_C,SC,kC,RC,wC,PC,DC,CC,EC,AC,xC,qC,$C,OC,ua,FC,bp,BC,UC,VC,HC,zC,jC,WC,GC,KC,YC,XC,JC,QC,ZC,eA,tA,rA,nA,iA,sA,oA].flatMap(async i=>await i({document:r,context:e,macro:n,position:t.position})))).flat():[]}function VU({macro:t}){return t.macro?HU.filter(e=>e.startsWith(t.macro)).map(e=>({label:`${e}(...)`,insertText:`${e}($1)`,kind:_p.CompletionItemKind.Function,insertTextFormat:_p.InsertTextFormat.Snippet})):[]}var pn=$(U());function zU(t){if(!t||t.item===null||!(t.ast instanceof Ze))return[];let e=n=>n.replacedBy?e(n.replacedBy):n,r=n=>{let i=n.parent.deletedProperties.find(s=>s.property===n)?.by;return[n.ast,...n.allReplaced.map(s=>s.ast),...i?[i]:[]].map(s=>{let o=Ar(s.uri);if(o)return pn.Location.create(de(o.docUri),o.range);if(s instanceof nt)return pn.Location.create(de(s.uri),pe(s.propertyName??s));if(s instanceof ht)return pn.Location.create(de(s.uri),pe(s.propertyName??s))}).filter(s=>s)};if(t.item instanceof Ye&&t.ast instanceof Ze)return r(e(t.item));if(t.item instanceof X&&t.ast instanceof Ze&&t.ast.parentNode instanceof ht){let n=t.item.deletedProperties.find(i=>i.by===t.ast.parentNode)?.property;if(n)return r(n)}return[]}function WU(t){if(!t)return[];let e=r=>{let i=t.runtime.rootNode.getNode("aliases")?.properties.filter(o=>{let a=o.ast.quickValues;if(a?.length===1&&typeof a[0]=="string"&&t.runtime.rootNode.getChild(a[0].split("/"))===r)return!0}).map(o=>o.ast)??[],s=r.parent?.deletedNodes.filter(o=>o.node===r&&(o.by.nodeNameOrRef instanceof Me?o.by.nodeNameOrRef!==t.ast:!r.linkedRefLabels.some(a=>a!==t.ast))).map(o=>o.by.nodeNameOrRef)??[];return[...i,...r.linkedRefLabels,...r.linkedNodeNamePaths,...r.definitions,...s].map(o=>{let a=o&&Ar(o?.uri);if(a)return pn.Location.create(de(a.docUri),a.range);if(o instanceof Dt)return pn.Location.create(de(o.uri),pe(o.name??o));if(o instanceof Ge)return pn.Location.create(de(o.uri),pe(o.name??o));if(o instanceof Me)return pn.Location.create(de(o.uri),pe(o));if(o instanceof Me)return pn.Location.create(de(o.uri),pe(o));if(o instanceof ie)return pn.Location.create(de(o.uri),pe(o.label??o));if(o instanceof nt)return pn.Location.create(de((o.values??o)?.uri),pe(o.values??o))}).filter(o=>o)};if(t.item instanceof X&&!Ut(t.ast))return e(t.item);if(t.ast instanceof Qt&&t.ast.parentNode instanceof ie&&t.ast.parentNode.linksTo)return e(t.ast.parentNode.linksTo);if(t.ast instanceof Me&&t.ast.linksTo)return Ut(t.ast)?[...e(t.ast.linksTo),pn.Location.create(de(t.ast.uri),pe(t.ast))]:e(t.ast.linksTo);if(t?.ast instanceof ne&&t.item instanceof Ye&&t.item.parent.name==="aliases"){let r=t.runtime.rootNode.getChild(t.ast.value.split("/"));if(r)return e(r)}return[]}async function dA(t,e){return _t(t,e,r=>[...WU(r),...zU(r)])}var Di=$(U());function fA(t){if(!t||t.item===null||!(t.ast instanceof Ze))return[];let e=n=>n.replacedBy?e(n.replacedBy):n,r=n=>[n.ast,...n.allReplaced.map(i=>i.ast),n.parent.deletedProperties.find(i=>i.property===n)?.by??[]].map(i=>{if((i instanceof nt||i instanceof ht)&&i.propertyName)return Di.Location.create(de(i.uri),pe(i.propertyName))}).filter(i=>i);if(t.item instanceof Ye&&t.ast instanceof Ze)return r(e(t.item));if(t.item instanceof X&&t.ast instanceof Ze&&t.ast.parentNode instanceof ht){let n=t.item.deletedProperties.find(i=>i.by===t.ast.parentNode)?.property;if(n)return r(n)}return[]}function pA(t,e){if(!e||!(e.ast instanceof Qt))return[];"newName"in t&&(e.ast.parentNode instanceof ie&&t.newName.startsWith("&")?t.newName=t.newName.slice(1):e.ast.parentNode instanceof Zi&&t.newName.endsWith(":")&&(t.newName=t.newName.slice(0,-1)));let r=e.ast.value,n=i=>[...i.definitions.filter(s=>s instanceof Ge).flatMap(s=>s.labels.map(o=>o.label)),...i.referencedBy.flatMap(s=>s.labels.map(o=>o.label)),...i.linkedRefLabels.map(s=>s.label)].filter(s=>s?.value===r).map(s=>{if(s)return Di.Location.create(de(s.uri),pe(s))}).filter(s=>s);return e.item instanceof X&&!Ut(e.ast)?n(e.item):e.ast instanceof Qt&&e.ast.parentNode instanceof ie&&e.ast.parentNode.linksTo?n(e.ast.parentNode.linksTo):[]}function hA(t){if(!t||!(t.ast instanceof Me)||t.ast instanceof Me&&t.ast.linksTo===t.runtime.rootNode)return[];let e=r=>{let i=t.runtime.rootNode.getNode("aliases")?.properties.filter(o=>{let a=o.ast.quickValues;if(a?.length===1&&typeof a[0]=="string"){let c=t.runtime.rootNode.getChild(a[0].split("/"));if(c?.isChildOf(r)||c===r)return!0}}).map(o=>o.ast)??[],s=r.parent?.deletedNodes.filter(o=>o.node===r&&o.by.nodeNameOrRef!==t.ast).map(o=>o.by.nodeNameOrRef)??[];return[...i,...r.linkedNodeNamePaths,...r.definitions,...s].map(o=>{if(o instanceof Ge&&o.name)return Di.Location.create(de(o.uri),pe(o.name));if(o instanceof Me)return Di.Location.create(de(o.uri),pe(o));if(o instanceof nt&&o.values?.values[0]?.value&&o.values?.values[0]?.value instanceof ne){let a=o.values.values[0].value,c=pe(a),l=a.value.split("/"),u=r.path,d=l.slice(0,u.length-1).join("/").length+1,f=a.value.length-l.slice(0,u.length).join("/").length;return c.start.character+=1+d,c.end.character-=1+f,Di.Location.create(de(o.values.values[0].uri),c)}}).filter(o=>o)};return t.item instanceof X&&!Ut(t.ast)?e(t.item):t.ast instanceof Me&&t.ast.linksTo?Ut(t.ast)?[...e(t.ast.linksTo),Di.Location.create(de(t.ast.uri),pe(t.ast))]:e(t.ast.linksTo):[]}async function mA(t,e){let r={};return(await _t(t,e,i=>[...hA(i),...pA(t,i),...fA(i)])).forEach(i=>{r[i.uri]??=[],r[i.uri].push(Di.TextEdit.replace(i.range,t.newName))}),{changes:r}}async function gA(t,e){let r=await _t(t,e,n=>[...hA(n),...pA(t,n),...fA(n)]);if(r.some(n=>e?.settings.lockRenameEdits?.some(i=>Se(n.uri).startsWith(i))))throw new Error('Path is locked by user setting "lockRenameEdits"');if(r.some(n=>$y(n.uri)))throw new Error("Item was generated using a MACRO.");return{defaultBehavior:!!r.length}}var da=$(U());var Sp=t=>[...t.definitions,...t.referencedBy].map(e=>{let r=Ar(e.uri);return r?da.Location.create(de(r.docUri),r.range):da.Location.create(de(e.uri),pe(e))}).filter(e=>e),TA=t=>t.replacedBy?TA(t.replacedBy):t,yA=t=>[t.ast,...t.allReplaced.map(e=>e.ast)].map(e=>{let r=Ar(e.uri);return r?da.Location.create(de(r.docUri),r.range):da.Location.create(de(e.uri),pe(e.propertyName??e))}).filter(e=>e);function GU(t){if(!t||t.item===null||!(t.ast instanceof Ze))return[];if(t.item instanceof Ye&&t.ast instanceof Ze)return yA(TA(t.item));if(t.item instanceof X&&t.ast instanceof Ze&&t.ast.parentNode instanceof ht){let e=t.item.deletedProperties.find(r=>r.by===t.ast.parentNode)?.property;if(e)return yA(e)}return[]}function KU(t){if(!t)return[];if(t.item instanceof X&&!Ut(t.ast))return Sp(t.item);if(t.ast instanceof Qt&&t.ast.parentNode instanceof ie&&t.ast.parentNode.linksTo)return Sp(t.ast.parentNode.linksTo);if(t.ast instanceof Me&&t.ast.linksTo)return Sp(t.ast.linksTo);if(t?.ast instanceof ne&&t.item instanceof Ye&&t.item.parent.name==="aliases"){let e=t.runtime.rootNode.getChild(t.ast.value.split("/"));if(e)return Sp(e)}return[]}function YU(t){if(t?.ast instanceof St||t?.ast instanceof ei){let e=t.runtime.context.parser.cPreprocessorParser.macros.get(t.ast instanceof St?t.ast.name:t.ast.value);if(e)return[da.Location.create(de(e.macro.uri),pe(e.macro.identifier))]}return[]}async function vA(t,e){return _t(t,e,r=>[...KU(r),...GU(r),...YU(r)])}var us=$(U());var ls=t=>{let e=t.definitions.at(0),r=e&&Ar(e.uri);return r?us.Location.create(de(r.docUri),r.range):e?us.Location.create(de(e.uri),pe(e)):void 0},Np=t=>t.replaces?Np(t.replaces):t,kp=t=>{let e=Np(t),r=Ar(e.ast.uri);return r?us.Location.create(de(r.docUri),r.range):e?us.Location.create(de(e.ast.uri),pe(e.ast)):void 0};function XU(t){if(!t||t.item===null||!(t.ast instanceof Ze))return;let e=r=>{let n=Ar(r.ast.uri);return n?us.Location.create(de(n.docUri),n.range):us.Location.create(de(r.ast.uri),pe(r.ast.propertyName??r.ast))};if(t.item instanceof Ye&&t.ast instanceof Ze)return e(Np(t.item));if(t.item instanceof X&&t.ast instanceof Ze&&t.ast.parentNode instanceof ht){let r=t.item.deletedProperties.find(n=>n.by===t.ast.parentNode)?.property;if(r)return e(Np(r))}}function JU(t){if(t){if(t.item instanceof X&&!Ut(t.ast))return ls(t.item);if(t.ast instanceof Qt&&t.ast.parentNode instanceof ie&&t.ast.parentNode.linksTo)return ls(t.ast.parentNode.linksTo);if(t.ast instanceof Me&&t.ast.linksTo)return ls(t.ast.linksTo);if(t?.ast instanceof ne&&t.item instanceof Ye&&t.item.parent.name==="aliases"){let e=t.runtime.rootNode.getChild(t.ast.value.split("/"));if(e)return ls(e)}}}function QU(t){if(t?.ast instanceof St||t?.ast instanceof ei){let e=t.runtime.context.parser.cPreprocessorParser.macros.get(t.ast instanceof St?t.ast.name:t.ast.value);if(e)return us.Location.create(de(e.macro.uri),pe(e.macro.identifier))}}async function bA(t,e){return(await _t(t,e,r=>[JU(r)||XU(r)||QU(r)])).at(0)}var ZU=["DT_PROP","DT_PROP_LEN","DT_PROP_LEN_OR","DT_PROP_HAS_IDX","DT_PROP_HAS_NAME","DT_PROP_BY_IDX","DT_PROP_LAST","DT_PROP_OR","DT_ENUM_IDX_BY_IDX","DT_ENUM_IDX","DT_ENUM_IDX_BY_IDX_OR","DT_ENUM_IDX_OR","DT_ENUM_HAS_VALUE_BY_IDX","DT_ENUM_HAS_VALUE","DT_STRING_TOKEN","DT_STRING_TOKEN_OR","DT_STRING_UPPER_TOKEN","DT_STRING_UPPER_TOKEN_OR","DT_STRING_UNQUOTED","DT_STRING_UNQUOTED_OR","DT_STRING_TOKEN_BY_IDX","DT_STRING_UPPER_TOKEN_BY_IDX","DT_STRING_UNQUOTED_BY_IDX","DT_PROP_BY_PHANDLE_IDX","DT_PROP_BY_PHANDLE_IDX_OR","DT_PROP_BY_PHANDLE","DT_PHA_BY_IDX","DT_PHA_BY_IDX_OR","DT_PHA","DT_PHA_OR","DT_PHA_BY_NAME","DT_PHA_BY_NAME_OR","DT_PHANDLE_BY_NAME","DT_PHANDLE_BY_IDX","DT_PHANDLE"];async function Rp({macro:t,document:e,context:r,position:n}){if(ZU.some(i=>i===t.parent?.macro)&&t.argIndexInParent===1&&t.parent?.args?.[0])return(await x({document:e,context:r,position:n,macro:t.parent.args[0]}))?.properties.find(s=>ee(s.name)===t.macro);if(["DT_PROP_BY_PHANDLE"].some(i=>i===t.parent?.macro)&&t.argIndexInParent===2&&t.parent?.args?.[0]&&t.parent?.args?.[1])return(await cs({document:e,context:r,position:n,macro:{macro:"DT_PHANDLE",args:t.parent.args.slice(0,2)}},x))?.properties.find(s=>ee(s.name)===t.macro);if(["DT_PROP_BY_PHANDLE_IDX","DT_PROP_BY_PHANDLE_IDX_OR"].some(i=>i===t.parent?.macro)&&t.argIndexInParent===3&&t.parent?.args?.[0]&&t.parent?.args?.[1]&&t.parent?.args?.[3])return(await oi({document:e,context:r,position:n,macro:{macro:"DT_PHANDLE_BY_IDX",args:t.parent.args.slice(0,3)}},x))?.properties.find(s=>ee(s.name)===t.macro);if(["DT_CHOSEN","DT_HAS_CHOSEN"].some(i=>i===t.parent?.macro)&&t.argIndexInParent===0&&t.parent?.args?.[0])return(await r.getRuntime()).rootNode.getChild(["/","chosen"])?.properties.find(i=>ee(i.name)===t.macro)}async function _A(t,e,r){if(!r)return;let n=wi(r,t.position);return SA(n,t.position,e,r)}async function SA(t,e,r,n){if(!t?.macro)return;let i=await x({document:n,macro:t,context:r,position:e});if(i)return ls(i);let s=await Rp({document:n,macro:t,context:r,position:e});if(s)return kp(s);let o=await os(n,t.macro,e,r);if(o)return SA(o[0],o[1],r,n)}async function NA(t,e,r){if(!r)return;let n=wi(r,t.position);return kA(n,t.position,e,r)}async function kA(t,e,r,n){if(!t?.macro)return;let i=await x({document:n,macro:t,context:r,position:e});if(i)return ls(i);let s=await Rp({document:n,macro:t,context:r,position:e});if(s)return kp(s);let o=await os(n,t.macro,e,r);if(o)return kA(o[0],o[1],r,n)}var ue=$(U());var eH=(t,e,r,n,i)=>{switch(r){case 1:return[{title:"Add semicolon",diagnostics:[n],kind:ue.CodeActionKind.SourceFixAll,isPreferred:!0,edit:{changes:{[i]:[ue.TextEdit.insert(ue.Position.create(n.range.end.line,n.range.end.character),";")]}}}];case 2:return[{title:"Add open curly",diagnostics:[n],kind:ue.CodeActionKind.SourceFixAll,isPreferred:!0,edit:{changes:{[i]:[ue.TextEdit.insert(ue.Position.create(n.range.end.line,n.range.end.character)," {")]}}}];case 29:return[{title:"Remove white space",diagnostics:[n],kind:ue.CodeActionKind.SourceFixAll,isPreferred:!0,edit:{changes:{[i]:[ue.TextEdit.replace(ue.Range.create(ue.Position.create(n.range.start.line,t.pos.colEnd),ue.Position.create(n.range.end.line,e.pos.col)),"")]}}}];case 3:return[{title:"Add close curly",diagnostics:[n],kind:ue.CodeActionKind.QuickFix,isPreferred:!0,edit:{changes:{[i]:[ue.TextEdit.insert(ue.Position.create(n.range.end.line,n.range.end.character),"}")]}}}];case 19:return[{title:"Add '/'",diagnostics:[n],kind:ue.CodeActionKind.QuickFix,isPreferred:!0,edit:{changes:{[i]:[ue.TextEdit.insert(ue.Position.create(n.range.end.line,n.range.end.character),"/")]}}}];case 28:return[{title:"Add comma",diagnostics:[n],kind:ue.CodeActionKind.SourceFixAll,isPreferred:!0,edit:{changes:{[i]:[ue.TextEdit.insert(ue.Position.create(n.range.end.line,n.range.end.character),",")]}}}];case 21:return[{title:"Add '/'",diagnostics:[n],kind:ue.CodeActionKind.SourceFixAll,isPreferred:!0,edit:{changes:{[i]:[ue.TextEdit.insert(ue.Position.create(n.range.end.line,n.range.end.character),"/")]}}}];case 23:return[{title:"Remove ';'",diagnostics:[n],kind:ue.CodeActionKind.SourceFixAll,isPreferred:!0,edit:{changes:{[i]:[ue.TextEdit.del(n.range)]}}}];case 34:return[{title:"Complete Keyword '/delete-node/",diagnostics:[n],kind:ue.CodeActionKind.SourceFixAll,isPreferred:!0,edit:{changes:{[i]:[ue.TextEdit.replace(n.range,"/delete-node/")]}}}];case 35:return[{title:"Complete Keyword '/delete-property/",diagnostics:[n],kind:ue.CodeActionKind.SourceFixAll,isPreferred:!0,edit:{changes:{[i]:[ue.TextEdit.replace(n.range,"/delete-property/")]}}}];case 25:return[{title:"Complete Keyword '/delete-property/",diagnostics:[n],kind:ue.CodeActionKind.QuickFix,isPreferred:!0,edit:{changes:{[i]:[ue.TextEdit.replace(n.range,"/delete-property/")]}}},{title:"Complete Keyword '/delete-node/",diagnostics:[n],kind:ue.CodeActionKind.QuickFix,isPreferred:!0,edit:{changes:{[i]:[ue.TextEdit.replace(n.range,"/delete-node/")]}}}];case 12:return[{title:"Add '>'",diagnostics:[n],kind:ue.CodeActionKind.SourceFixAll,isPreferred:!0,edit:{changes:{[i]:[ue.TextEdit.insert(ue.Position.create(n.range.end.line,n.range.end.character),">")]}}}];default:return}},tH=(t,e,r,n,i)=>{if(!n?.length)return[];switch(t){case 0:return[{title:i??`Add Property "${n[0].newText.split("=",1)[0].replace(";","").trim()}"`,diagnostics:[e],kind:ue.CodeActionKind.QuickFix,isPreferred:!0,edit:{changes:{[r]:n}}}];case 27:return[{title:i??"Remove Property",diagnostics:[e],kind:ue.CodeActionKind.QuickFix,isPreferred:!0,edit:{changes:{[r]:n}}}];case 26:return[{title:i??"TODO",diagnostics:[e],kind:ue.CodeActionKind.QuickFix,isPreferred:!0,edit:{changes:{[r]:n}}}];case 36:return[{title:i??"TODO",diagnostics:[e],kind:ue.CodeActionKind.QuickFix,isPreferred:!0,edit:{changes:{[r]:n}}}];case 25:return n?[{title:i??"TODO",diagnostics:[e],kind:ue.CodeActionKind.QuickFix,isPreferred:!0,edit:{changes:{[r]:n}}}]:[];default:return}},rH=(t,e,r,n)=>r?.length?[{title:n??"TODO",diagnostics:[t],kind:ue.CodeActionKind.QuickFix,isPreferred:!0,edit:{changes:{[e]:r}}}]:[];function RA(t){let e=t.context.diagnostics.flatMap(a=>{let c=a.data;if(c?.virtual)return[];switch(c?.type){case"FormattingIssues":return rH(a,t.textDocument.uri,c.edit?Array.isArray(c.edit)?c.edit:[c.edit]:void 0,c.codeActionTitle);case"SyntaxIssue":return c?.items.flatMap(l=>eH(c.firstToken,c.lastToken,l,a,t.textDocument.uri));case"StandardTypeIssue":return c?.items.flatMap(l=>tH(l,a,t.textDocument.uri,c.edit?Array.isArray(c.edit)?c.edit:[c.edit]:void 0,c.codeActionTitle))}}).filter(a=>!!a),r=e.filter(a=>a.kind===ue.CodeActionKind.SourceFixAll),n=e.filter(a=>a.title.startsWith("Add Property")),i=e.filter(a=>a.kind!==ue.CodeActionKind.SourceFixAll),s=r.flatMap(a=>a.edit?.changes?.[t.textDocument.uri]??[]),o=new Map;return n.forEach(a=>{let c=a.edit.changes[t.textDocument.uri][0],l=c.range.start.line,u=c.range.start.character;o.has(`${l}:${u}`)||o.set(`${l}:${u}`,[]),o.get(`${l}:${u}`)?.push(c)}),[...i,...r.map(a=>({...a,kind:ue.CodeActionKind.QuickFix})),...s.length?[{title:"Fix All",kind:ue.CodeActionKind.SourceFixAll,isPreferred:!0,edit:{changes:{[t.textDocument.uri]:s}}}]:[],...Array.from(o.values()).flatMap(a=>a.length>1?{title:"Add All Missing Properties",kind:ue.CodeActionKind.QuickFix,isPreferred:!0,edit:{changes:{[t.textDocument.uri]:a}}}:[])]}var PA=$(U());var Pp=t=>!t||t instanceof nt?!1:t instanceof br||Pp(t.parentNode);function nH(t){if(!t||!(t.item instanceof Ye&&t.item.ast.assignOperatorToken))return[];let e=Pp(t?.ast);if(!e&&!(t.ast instanceof nt&&t.item.ast.values===null)&&!Pp(t.beforeAst)&&!Pp(t.afterAst))return[];let r=-1;if(t.item.ast.values===null?r=0:r=(t.item.ast.values?.values.findIndex(i=>i&&Hy(i,t.beforeAst))??-1)+1,r===-1&&(r=0),t.item.name==="compatible"){let s=t.item.parent.nodeTypes.filter(c=>c).at(-1),o=t.item.ast.quickValues,a;return s instanceof Nt&&s.extends.size&&(a=Array.from(s.extends).filter(c=>!o||!o.includes(c))),o?.filter(c=>c)?.length&&!a?[]:(a??=t.runtime.context.bindingLoader?.getBindings()??[],a.filter(c=>!o||!o.includes(c)).map(c=>({label:`"${c}"`,kind:PA.CompletionItemKind.Variable,insertText:e?c:`"${c}"`})))}let n=t.item.parent.nodeType;return n instanceof Nt?n.properties.find(i=>i.name===t.item?.name)?.getPropertyCompletionItems(t.item,r,e)??[]:[]}function iH(t){if(!t||!(t.item instanceof Ye&&t.ast instanceof Ze&&t.item.ast.values==null||t.item instanceof X)||Ut(t.ast)||t.beforeAst?.parentNode instanceof vr)return[];let e=r=>r.nodeType?.getPropertyListCompletionItems(r)??[];return t.item instanceof Ye?e(t.item.parent):e(t.item)}async function wA(t,e){return _t(t,e,r=>[...nH(r),...iH(r)])}var wp=$(U());async function sH(t){if(t?.ast instanceof St||t?.ast instanceof ei){let e=t.runtime.context.parser.cPreprocessorParser.macros.get(t?.ast instanceof St?t.ast.name:t.ast.value);if(e){let r=bc(t.ast),n=(await t.runtime.context.getAllParsers()).at(-1);if(r){let i=r?.evaluate(n.cPreprocessorParser.macros);return{contents:{kind:wp.MarkupKind.Markdown,value:["```cpp",`#define ${e.macro.toString()} // = ${i}${typeof i=="number"?` (0x${i.toString(16)})`:""}`,"```"].join(`
285
+ };`,kind:At.CompletionItemKind.Value,insertTextFormat:At.InsertTextFormat.Snippet}))]}function OU(t,e){let r=s=>s?s.parentNode instanceof lr||s.parentNode instanceof Dt||s.parentNode instanceof Ge?!1:r(s.parentNode):!0;if(!t||t.item!==null||!Ut(t.ast)||!r(t.ast))return[];let n=s=>jf(s,e).filter(o=>e(o));if(t.ast instanceof ut)return n(t.runtime.rootNode).length?[{label:"/delete-node/",insertText:"/delete-node/ $1;",kind:At.CompletionItemKind.Keyword,insertTextFormat:At.InsertTextFormat.Snippet,sortText:"~"}]:t.runtime.rootNode.nodes.length?[{label:"/delete-node/ &{}",insertText:"/delete-node/ {/$1};",kind:At.CompletionItemKind.Keyword,insertTextFormat:At.InsertTextFormat.Snippet,sortText:"~"}]:[];let i=new Map;return n(t.runtime.rootNode).forEach(s=>i.set(s.label.value,s)),Array.from(i).map(([,s])=>({label:t.ast instanceof ie?`${s.label.value}`:`&${s.label.value}`,kind:At.CompletionItemKind.Variable,documentation:s.lastLinkedTo?.toMarkupContent(t.runtime.context.macros)}))}function MU(t,e){if(!t||!(t.item instanceof X)||t.item===null||t.beforeAst&&(!(t.beforeAst?.parentNode instanceof vr)||t.beforeAst?.parentNode instanceof ht))return[];let r=n=>[...n.nodes,...n.deletedNodes.filter(i=>!e(i.by)).map(i=>i.node)].flatMap(i=>({node:i,astNodes:i.definitions.filter(s=>s instanceof Ge)})).filter(i=>i.astNodes.some(e));return t.ast instanceof Me||t.ast instanceof Mr||t.beforeAst?.parentNode instanceof Mr?r(t.item).map(n=>({label:`${n.astNodes.at(0)?.name?.toString()}`,kind:At.CompletionItemKind.Variable,documentation:n.node.toMarkupContent(t.runtime.context.macros)})):r(t.item).length?[{label:"/delete-node/",kind:At.CompletionItemKind.Keyword,insertTextFormat:At.InsertTextFormat.Snippet,sortText:"~"}]:[]}function xU(t,e){if(!t||!(t.item instanceof X)||t.beforeAst&&(!(t.beforeAst?.parentNode instanceof vr)||t.beforeAst?.parentNode instanceof Mr))return[];let r=n=>[...n.properties,...n.deletedProperties.filter(i=>!e(i.by)).map(i=>i.property)].flatMap(i=>[i,...i.allReplaced]).filter(i=>e(i.ast));if(t.ast instanceof Ze||t.ast instanceof ht||t.beforeAst?.parentNode instanceof ht){let n=new Map;return r(t.item).forEach(i=>n.set(i.name,i)),Array.from(n).map(([,i])=>({label:`${i.name}`,kind:At.CompletionItemKind.Variable,documentation:i.ast.toPrettyString(t.runtime.context.macros)}))}return r(t.item).length?[{label:"/delete-property/",insertText:"/delete-property/$1;",kind:At.CompletionItemKind.Keyword,sortText:"~",insertTextFormat:At.InsertTextFormat.Snippet}]:[]}function LU(t,e){let r=t?.ast instanceof xn?t.ast:t?.ast.parentNode;if(!t||!r||!(r instanceof xn))return[];let n=r.pathParts.slice(0,-1);if(n.some(o=>!o))return[];let i=n.map(o=>o.toString());return(()=>{let o=t.runtime.rootNode.getChildFromScope(["/",...i],e);return[...o?.nodes.filter(a=>!Ut(t.ast)||a.definitions.some(e))??[],...o?.deletedNodes.filter(a=>!e(a.by)).map(a=>a.node)??[]]})().map(o=>({label:`/${[...i,o.fullName].join("/")}`,kind:At.CompletionItemKind.Variable,documentation:o.toMarkupContent(t.runtime.context.macros)}))}function qU(t){return!t||!(t.item instanceof Ye&&t.item.ast.assignOperatorToken)||t.ast instanceof ne?[]:!Ws(t?.ast)&&!(t.ast instanceof nt&&t.item.ast.values===null)&&!Ws(t.beforeAst)&&!Ws(t.afterAst)?[]:t.item.parent.nodeType instanceof Nt?Array.from([t.runtime.context.parser,...t.runtime.context.overlayParsers].at(-1)?.cPreprocessorParser.macros??[]).map(([,n])=>n.macro.identifier instanceof ni?{label:`${n.macro.identifier.toString()}`,insertText:`${n.macro.name}(${n.macro.identifier.params.map((i,s)=>i instanceof St?`$${s+1}`:"").join(", ")})`,kind:At.CompletionItemKind.Function,sortText:`~${n.macro.name}`,insertTextFormat:At.InsertTextFormat.Snippet}:{label:n.macro.identifier.name,kind:At.CompletionItemKind.Variable,sortText:`~${n.macro.name}`}):[]}async function KD(t,e){return _t(t,e,(r,n)=>[...xU(r,n),...MU(r,n),...OU(r,n),...LU(r,n),...IU(r,n),...AU(r,n),...CU(r),...qU(r)])}var _p=$(U());var XD=require("child_process");var pT=t=>/[A-Za-z0-9_]/.test(t);function $U(t,e){let r=[];for(let n=0;n<e;n++){let i=t[n];i==="("?r.push(n):i===")"&&r.pop()}return r.length?r[r.length-1]:void 0}function YD(t,e){let r=1;for(let n=e+1;n<t.length;n++){let i=t[n];if(i==="(")r++;else if(i===")"&&(r--,r===0))return n}}function JD(t,e,r){let n=[],i=0,s=!1,o=!1,a=e;for(let f=e;f<r;f++){let p=t[f];if(p==="'"&&!o)s=!s;else if(p==='"'&&!s)o=!o;else if(!s&&!o){if(p==="(")i++;else if(p===")")i--;else if(p===","&&i===0){let g=a,h=f,T=g,S=h;for(;T<S&&/\s/.test(t[T]);)T++;for(;S>T&&/\s/.test(t[S-1]);)S--;n.push({start:g,end:h,text:t.slice(T,S)}),a=f+1}}}let c=a,l=r,u=c,d=l;for(;u<d&&/\s/.test(t[u]);)u++;for(;d>u&&/\s/.test(t[d-1]);)d--;return n.push({start:c,end:l,text:t.slice(u,d)}),n}function hT(t){let e=t.trim(),r=/^([A-Za-z_][A-Za-z0-9_]*)\s*\(([\s\S]*)\)$/.exec(e);if(!r)return{macro:e};let n=r[1],i=r[2],s=JD(i,0,i.length),o={macro:n,args:[]};return o.args=s.map(a=>{let c=hT(a.text);return c.parent=o,c}),o}function wi(t,e){let r=t.getText(),n=t.offsetAt(e),i=n,s=n;for(;i>0&&pT(r[i-1]);)i--;for(;s<r.length&&pT(r[s]);)s++;if(r[s]==="("){let T=YD(r,s);T!==void 0&&(s=T+1)}let o=r.slice(i,s),a=o.trim().length?hT(o):void 0,c=$U(r,n);if(c===void 0)return a;let l=YD(r,c);if(l===void 0||!(c<n&&n<=l))return a;let u=c,d=u;for(;d>0&&pT(r[d-1]);)d--;let f=r.slice(d,u);if(!f)return a;let p=JD(r,c+1,l),g={macro:f,args:[]};g.args=p.map(T=>{let S=hT(T.text);return S.parent=g,S});let h=-1;for(let T=0;T<p.length;T++){let S=p[T];if(n>=S.start&&n<=S.end){h=T;break}}if(h>=0){let T=g.args[h];return T.argIndexInParent=h,T}return g}function BU(t,e,r){let i=t.getText().split(/\r?\n/),s=new RegExp(`^\\s*#\\s*define\\s+(${e})\\b(\\s*\\([^)]*\\))?\\s*(.*)$`);for(let o=Math.min(r.line,i.length-1);o>=0;o--){let a=i[o],c=s.exec(a);if(c){let l=a.indexOf(c[0]),u=a.indexOf(c[3],l);return Yr.create(o,u>=0?u:a.length)}}}async function os(t,e,r,n){let i=QD(t,e,r);if(i)return i;let s=await jU(e,n,Se(t.uri));if(s)return[s,r]}function QD(t,e,r){if(e.startsWith("DT_"))return;let n=BU(t,e,r);if(!n)return;let i=wi(t,n);if(i)return[i,n]}var FU=(t,e)=>new Promise(r=>{let n=(0,XD.spawn)(t,e,{stdio:["ignore","pipe","pipe"]}),i="";n.stdout.on("data",s=>{i+=s.toString()}),n.on("close",s=>{r(s?"":i)})});async function jU(t,e,r){let n=e.getCompileCommands()?.find(s=>le(s.file,r));if(!n)return;let i=`${n.command.replace(/-(o|c)\s+\S+/g,"")} -E -dM ${n.file}`;try{let[s,...o]=i.split(" "),a=await FU(s,o.filter(u=>!!u)),c=Qn.create(`macros://${n.file}`,"devicetree",0,a),l=QD(c,t,c.positionAt(a.length-1));if(l)return l[0]}catch(s){console.error(s)}}function ee(t){return t.toLowerCase().replace(/[@,-\.]/g,"_")}var Lc=$(U());async function ZD({macro:t,context:e}){if(t.macro&&"DT_ALIAS".startsWith(t.macro))return[{label:"DT_ALIAS(...)",insertText:"DT_ALIAS($1)",kind:Lc.CompletionItemKind.Function,insertTextFormat:Lc.InsertTextFormat.Snippet}];if(t.parent?.macro!=="DT_ALIAS"||t.argIndexInParent!==0)return[];let r=await e.getRuntime();return r.rootNode.getNode("aliases")?.properties.map(n=>{let i=n.ast.getFlatAstValues()?.at(0),s;return i instanceof ie?s=i.linksTo:i instanceof xn&&(s=i.pathParts.at(-1)?.linksTo),{label:ee(n.name),kind:Lc.CompletionItemKind.Property,documentation:s?.toMarkupContent(r.context.macros)}})??[]}var qc=$(U());async function dr(t,e,r){if(!t)return;let i=t?.properties.find(s=>ee(s.name)===e)?.ast.getFlatAstValues();return i?.length===0?!0:i?.map(s=>{if(s instanceof it)return s.path?.pathParts.at(-1)?.linksTo;if(s instanceof ie)return s.linksTo;if(s instanceof ne)return s.value;if(s instanceof Ee){let o=s.evaluate(r.macros);return typeof o=="number"?o:s.toString()}})}async function Uf({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_PROP"||s?.length!==2)return;let o=await i({document:t,macro:s[0],context:r,position:n});return o?dr(o,s[1].macro,r):void 0}async function eC(t,e){let r=await Uf(t,e);if(typeof r=="boolean")return;let n=r?.at(0);if(r?.length===1&&n instanceof X)return n}async function tC(t,e,r,n){if(r=typeof r=="number"?r:De(r),typeof r!="number")return;let i=await dr(t,e,n);if(i===!0)return!0;if(!i)return;let s=i.at(r);if(s)return i.length===1&&i[0]instanceof X?i[0]:s}async function Hf({document:t,macro:e,context:r,position:n},i){if(!(e.macro!=="DT_PROP_BY_IDX"||e.args?.length!==3))return tC(await i({document:t,macro:e.args[0],context:r,position:n}),e.args[1].macro,e.args[2].macro,r)}async function rC(t,e){let r=await Hf(t,e);if(typeof r!="boolean"&&r instanceof X)return r}async function qr(t,{document:e,context:r,macro:n,position:i},s){return t||(await s({document:e,macro:n,context:r,position:i})??n.macro)}async function Vf(t,e,r,n){return qr(await dr(t,e,r.context),r,n)}async function oa({document:t,macro:e,context:r,position:n},i){if(e.macro!=="DT_PROP_OR"||e.args?.length!==3)return;let[s,o,a]=e.args,c=await i({document:t,macro:s,context:r,position:n});return await Vf(c,o.macro,{macro:a,document:t,context:r,position:n},i)}async function nC(t,e){let r=await oa(t,e);if(r instanceof X)return r;if(typeof r=="boolean")return;let n=r?.at(0);if(r?.length===1&&n instanceof X)return n}async function iC(t){let e=t?.nodeType?.onBus,r=t?.parent?.nodeType?.bus;return t&&r?.length&&r?.some(n=>n===e)?t.parent??void 0:void 0}async function zf(t,e){let r=t.macro.args;if(t.macro.macro!=="DT_BUS"||r?.length!==1)return;let n=await e({...t,macro:r[0]});return await iC(n)}async function Wf(t,e){let r=(await t.getRuntime()).rootNode.getChild(["/","chosen"]);if(!r)return;let s=r?.properties.find(o=>ee(o.name)===e)?.ast.getFlatAstValues()?.at(0);if(s instanceof ie)return s.linksTo;if(s instanceof it)return s.path?.pathParts.at(-1)?.linksTo}async function Gf(t){let e=t.macro.args;if(!(t.macro.macro!=="DT_CHOSEN"||e?.length!==1))return await Wf(t.context,e[0].macro)}async function Kf(t,e){let r=await e?.getRuntime();if(r){let n=ii.getNodeFromPath(["aliases"],r.rootNode,!0),i=n?.properties.find(o=>ee(o.name)===t);if(!i)return;let s=i.ast.getFlatAstValues();return s?.[0]instanceof ne?n=r.rootNode.getChild(s[0].value.split("/")):s?.[0]instanceof ie?n=s[0].linksTo:s?.[0]instanceof it&&(n=s[0].path?.pathParts.at(-1)?.linksTo),n}}async function Yf({macro:t,context:e}){if(!(t.macro!=="DT_ALIAS"||t.args?.length!==1))return Kf(t.args[0].macro,e)}async function sC(t,e){return t?.nodes.find(r=>ee(r.name)===e)}async function Xf({document:t,macro:e,context:r,position:n},i){if(e.macro!=="DT_CHILD"||e.args?.length!==2)return;let s=await i({document:t,macro:e.args[0],context:r,position:n});return sC(s,e.args[1].macro)}var mT=(t,e)=>t.nodes.filter(r=>!r.disabled&&r.nodeType).flatMap(r=>[r.nodeType.compatible,...Array.from(r.nodeType.extends)].filter(n=>!!n).map(n=>ee(n)).includes(e)?[r,...mT(r,e)]:mT(r,e));async function oC(t,e){let r=await e?.getRuntime();if(r)return mT(r.rootNode,t)}async function gT({macro:t,context:e}){if(!(t.macro!=="DT_COMPAT_GET_ANY_STATUS_OKAY"||t.args?.length!==1))return oC(t.args[0].macro,e)}async function aC(t){return(await gT(t))?.at(0)}async function cC(t){return t?.parent?.parent??void 0}async function Jf({document:t,macro:e,context:r,position:n},i){if(e.macro!=="DT_GPARENT"||e.args?.length!==1)return;let s=await i({document:t,macro:e.args[0],context:r,position:n});return cC(s)}var yT=(t,e)=>t.nodes.filter(r=>r.nodeType).sort((r,n)=>r.disabled===n.disabled?0:r.disabled?1:-1).flatMap(r=>[r.nodeType.compatible,...Array.from(r.nodeType.extends)].filter(n=>!!n).map(n=>ee(n)).includes(e)?[r,...yT(r,e)]:yT(r,e));async function lC(t,e,r){let n=await r?.getRuntime();if(n)return yT(n.rootNode,e).at(t)}async function Qf({macro:t,context:e}){if(t.macro!=="DT_INST"||t.args?.length!==2)return;let r=De(t.args[0].macro);if(typeof r=="number")return lC(r,t.args[1].macro,e)}async function uC(t,e){let r=await e?.getRuntime(),n=r?.resolvePath([`&${t.trim()}`]);if(r&&n)return ii.getNodeFromPath(n.slice(1),r.rootNode,!0)}async function Zf({macro:t,context:e}){if(!(t.macro!=="DT_NODELABEL"||t.args?.length!==1))return uC(t.args[0].macro,e)}async function dC(t){return t?.parent??void 0}async function ep({document:t,macro:e,context:r,position:n},i){if(e.macro!=="DT_PARENT"||e.args?.length!==1)return;let s=await i({document:t,macro:e.args[0],context:r,position:n});return dC(s)}var fC=(t,e)=>{if(!e.length)return t;let r=e.splice(0,1)[0],n=t.nodes.find(i=>ee(i.fullName)===r);return n?fC(n,e):void 0};async function tp(t,e){let r=await e?.getRuntime();if(r)return fC(r.rootNode,t)}async function rp({macro:t,context:e}){let r=t.args;if(!(t.macro!=="DT_PATH"||!r?.length))return tp(r.map(n=>n.macro),e)}async function np({macro:t,context:e}){let r=t.args;if(!(t.macro!=="DT_ROOT"||r?.length))return(await e.getRuntime()).rootNode}async function aa(t,e,r){let n=t?.properties.find(c=>ee(c.name)===e);if(!n)return;let i=n?.ast.quickValues?.at(r),s=n.parent.nodeType;if(Array.isArray(i)||!s||!(s instanceof Nt))return;let a=s.properties.find(c=>c.getNameMatch(n.name))?.values(n).findIndex(c=>c===i)??-1;return a===-1?void 0:a}async function ip(t,e,r,n,i){return qr(await aa(t,e,r),n,i)}async function sp({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_ENUM_IDX_BY_IDX_OR"||s?.length!==4)return;let o=await i({document:t,macro:s[0],context:r,position:n}),a=De(s[2].macro);if(typeof a=="number")return await ip(o,s[1].macro,a,{macro:s[3],document:t,context:r,position:n},i)}async function op({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_ENUM_IDX_OR"||s?.length!==3)return;let o=await i({document:t,macro:s[0],context:r,position:n});return await ip(o,s[1].macro,0,{macro:s[2],document:t,context:r,position:n},i)}async function as(t,e,r,n,i){let s=t?.properties.find(d=>ee(d.name)===e),o=s?.parent.nodeType;if(!o||!(o instanceof Nt))return;if(typeof r=="string"){let d=s.nexusMapsTo.at(0)?.specifierSpace;if(r=(d?s.parent.getProperty(`${d}-names`)?.ast.quickValues:void 0)?.findIndex(p=>typeof p=="string"&&p.toLowerCase()===r)??-1,r===-1)return}let a=s.nexusMapsTo.at(r),l=a?.target.nodeType?.cellsValues?.find(d=>a.specifierSpace&&d.specifier===a.specifierSpace)?.values?.indexOf(n);if(l===void 0||l===-1)return;let u=a?.mappingValuesAst.at(l);if(u instanceof Ee){let d=u.evaluate(i.macros);return typeof d!="number"?u.toString():d}}async function ca(t,e,r,n,i,s){return qr(await as(t,e,r,n,i.context),i,s)}async function ap({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_PHA_BY_IDX_OR"||s?.length!==5)return;let o=await i({document:t,macro:s[0],context:r,position:n}),a=De(s[2].macro);if(typeof a=="number")return ca(o,s[1].macro,a,s[3].macro,{macro:s[4],document:t,context:r,position:n},i)}async function cp({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_PHA_BY_NAME_OR"||s?.length!==5)return;let o=await i({document:t,macro:s[0],context:r,position:n});return ca(o,s[1].macro,s[2].macro,s[3].macro,{macro:s[4],document:t,context:r,position:n},i)}async function si(t,e,r=0){let n=t?.properties.find(s=>ee(s.name)===e);if(r=typeof r=="number"?r:De(r??"0"),typeof r!="number")return;let i=n?.ast.getFlatAstValues()?.at(r);if(i instanceof ie)return i.linksTo;if(i instanceof it)return i.path?.pathParts.at(-1)?.linksTo}async function cs({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_PHANDLE"||s?.length!==2)return;let o=await i({document:t,macro:s[0],context:r,position:n});return si(o,s[1].macro,0)}async function oi({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_PHANDLE_BY_IDX"||s?.length!==3)return;let o=await i({document:t,macro:s[0],context:r,position:n});return si(o,s[1].macro,s.at(2)?.macro)}async function pC(t,e,r){let n=t?.properties.find(l=>ee(l.name)===e);if(!n)return;let i=n.parent.nodeType;if(!i||!(i instanceof Nt))return;let s=n.nexusMapsTo.at(0)?.specifierSpace,a=(s?n.parent.getProperty(`${s}-names`)?.ast.quickValues:void 0)?.findIndex(l=>typeof l=="string"&&l.toLowerCase()===r)??-1;return a===-1?void 0:n.nexusMapsTo.at(a)?.target}async function lp({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_PHANDLE_BY_NAME"||s?.length!==3)return;let o=await i({document:t,macro:s[0],context:r,position:n});return await pC(o,s[1].macro,s[2].macro)}async function up({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_PHA_OR"||s?.length!==4)return;let o=await i({document:t,macro:s[0],context:r,position:n});return ca(o,s[1].macro,0,s[2].macro,{macro:s[3],document:t,context:r,position:n},i)}async function dp({document:t,macro:e,context:r,position:n},i){if(e.macro!=="DT_PROP_BY_PHANDLE_IDX_OR"||e.args?.length!==5)return;let s=await si(await i({document:t,macro:e.args[0],context:r,position:n}),e.args[1].macro,e.args[2].macro);return Vf(s,e.args[3].macro,{macro:e.args[4],document:t,context:r,position:n},i)}async function fp(t,e){if(!t)return;let r=t?.properties.find(n=>ee(n.name)===e);return r?.nexusMapsTo.length?r.nexusMapsTo.length:r?.ast.getFlatAstValues()?.length}async function hC(t,e,r,n){if(t)return qr(await fp(t,e),r,n)}async function pp({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_PROP_LEN_OR"||s?.length!==3)return;let o=await i({document:t,macro:s[0],context:r,position:n});return o?hC(o,s[1].macro,{macro:s[2],document:t,context:r,position:n},i):void 0}async function la(t,e){if(!t)return;let n=t?.properties.find(i=>ee(i.name)===e)?.ast.getFlatAstValues();if(n?.length===1&&n[0]instanceof ne)return ee(n[0].value)}async function mC(t,e,r,n){if(t)return qr(await la(t,e),r,n)}async function hp({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_STRING_TOKEN_OR"||s?.length!==3)return;let o=await i({document:t,macro:s[0],context:r,position:n});return mC(o,s[1].macro,{document:t,macro:s[2],context:r,position:n},i)}async function mp(t,e){if(!t)return;let n=t?.properties.find(i=>ee(i.name)===e)?.ast.getFlatAstValues();if(n?.length===1&&n[0]instanceof ne)return n[0].value}async function gC(t,e,r,n){if(t)return qr(await mp(t,e),r,n)}async function gp({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_STRING_UNQUOTED_OR"||s?.length!==3)return;let o=await i({document:t,macro:s[0],context:r,position:n});return gC(o,s[1].macro,{document:t,macro:s[2],context:r,position:n},i)}async function yp(t,e){return(await la(t,e))?.toUpperCase()}async function yC(t,e,r,n){if(t)return qr(await yp(t,e),r,n)}async function Tp({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_STRING_UPPER_TOKEN_OR"||s?.length!==3)return;let o=await i({document:t,macro:s[0],context:r,position:n});return yC(o,s[1].macro,{document:t,macro:s[2],context:r,position:n},i)}function Ln(t){return async(e,r)=>{let n=await t(e,r);if(n instanceof X)return n}}async function x({macro:t,document:e,context:r,position:n}){["DT_ALIAS","DT_NODELABEL"].some(a=>a===t.parent?.macro)||t.parent?.macro==="DT_CHILD"&&t.argIndexInParent===1?t=t.parent:t.parent?.macro==="DT_HAS_ALIAS"?(t=t.parent,t.macro="DT_ALIAS"):t.parent?.macro==="DT_PATH"&&(t.parent.args=t.parent.args?.slice(0,(t.argIndexInParent??0)+1)??[],t=t.parent);let s=await[zf,Gf,Yf,Xf,aC,Jf,Qf,Zf,ep,rp,cs,oi,lp,rC,eC,nC,np,Ln(sp),Ln(op),Ln(ap),Ln(cp),Ln(up),Ln(dp),Ln(pp),Ln(oa),Ln(hp),Ln(gp),Ln(Tp)].reduce((a,c)=>a.then(l=>l||c({macro:t,document:e,context:r,position:n},x)),Promise.resolve(void 0));if(s)return Array.isArray(s)?s.at(0):s;let o=await os(e,t.macro,n,r);if(o)return x({document:e,macro:o[0],context:r,position:n})}async function TC({macro:t,document:e,context:r,position:n}){return t.macro&&t.macro&&"DT_CHILD".startsWith(t.macro)?[{label:"DT_CHILD(...)",insertText:"DT_CHILD($1, $2)",kind:qc.CompletionItemKind.Function,insertTextFormat:qc.InsertTextFormat.Snippet}]:t.parent?.macro!=="DT_CHILD"||t.argIndexInParent!==1||!t.parent.args?.length?[]:(await x({document:e,macro:t.parent.args[0],context:r,position:n}))?.nodes.map(s=>({label:ee(s.fullName),kind:qc.CompletionItemKind.Class,documentation:s.toMarkupContent(r.macros)}))??[]}var $c=$(U());function vC({macro:t,context:e}){return t.macro&&"DT_COMPAT_GET_ANY_STATUS_OKAY".startsWith(t.macro)?[{label:"DT_COMPAT_GET_ANY_STATUS_OKAY(...)",insertText:"DT_COMPAT_GET_ANY_STATUS_OKAY($1)",kind:$c.CompletionItemKind.Function,insertTextFormat:$c.InsertTextFormat.Snippet}]:t.parent?.macro!=="DT_COMPAT_GET_ANY_STATUS_OKAY"||t.argIndexInParent!==0?[]:e.bindingLoader?.getBindings().map(r=>({label:ee(r),kind:$c.CompletionItemKind.Property}))??[]}var Bc=$(U());function bC({macro:t,context:e}){return t.macro&&"DT_INST".startsWith(t.macro)?[{label:"DT_INST(...)",insertText:"DT_INST($1, $2)",kind:Bc.CompletionItemKind.Function,insertTextFormat:Bc.InsertTextFormat.Snippet}]:t.parent?.macro!=="DT_INST"||t.argIndexInParent!==1?[]:e.bindingLoader?.getBindings().map(r=>({label:ee(r),kind:Bc.CompletionItemKind.Property}))??[]}var Fc=$(U());async function _C({macro:t,context:e}){if(t.macro&&"DT_NODELABEL".startsWith(t.macro))return[{label:"DT_NODELABEL(...)",insertText:"DT_NODELABEL($1)",kind:Fc.CompletionItemKind.Function,insertTextFormat:Fc.InsertTextFormat.Snippet}];let r=await e.getRuntime();return t.parent?.macro!=="DT_NODELABEL"||t.argIndexInParent!==0?[]:await Promise.all(r.rootNode.allDescendantsLabels.map(async n=>({label:n.label.value,kind:Fc.CompletionItemKind.Property,documentation:n.lastLinkedTo?.toMarkupContent(r.context.macros)}))??[])}var jc=$(U());async function SC({macro:t,context:e}){return t.macro&&t.macro&&"DT_PATH".startsWith(t.macro)?[{label:"DT_PATH(...)",insertText:"DT_PATH($1)",kind:jc.CompletionItemKind.Function,insertTextFormat:jc.InsertTextFormat.Snippet}]:t.parent?.macro!=="DT_PATH"||!t.parent.args?.length?[]:(await tp(t.parent.args.slice(0,-1).map(n=>n.macro),e))?.nodes.map(n=>({label:ee(n.fullName),kind:jc.CompletionItemKind.Class,documentation:n.toMarkupContent(e.macros)}))??[]}var NC=$(U());async function kC({macro:t,context:e}){if(t.macro&&t.macro&&"DT_ROOT".startsWith(t.macro)){let r=await e.getRuntime();return[{label:"DT_ROOT",kind:NC.CompletionItemKind.Class,documentation:r.rootNode.toMarkupContent(r.context.macros)}]}return[]}var vp=$(U());function RC({macro:t}){return t.macro&&t.macro&&"DT_SAME_NODE".startsWith(t.macro)?[{label:"DT_SAME_NODE(...)",insertText:"DT_SAME_NODE($1, $2)",kind:vp.CompletionItemKind.Snippet,insertTextFormat:vp.InsertTextFormat.Snippet}]:[]}var Uc=$(U());async function J({macro:t,document:e,position:r,context:n},i,s,o,a,c=l=>x({document:e,macro:l,context:n,position:r})){if(t.macro&&t.macro&&i.startsWith(t.macro))return[{label:`${i}(...)`,insertText:`${i}(${Array(o).map((d,f)=>`${f+1}`).join(", ")})`,kind:Uc.CompletionItemKind.Function,insertTextFormat:Uc.InsertTextFormat.Snippet}];if(t.parent?.macro!==i||t.argIndexInParent!==s||!t.parent.args?.length)return[];let l=await c(t.parent.args[0]);return(a?l?.properties.filter(a):l?.properties)?.map(d=>({label:ee(d.name),kind:Uc.CompletionItemKind.Property,documentation:d.toPrettyString(n.macros)}))??[]}async function PC(t){return J(t,"DT_ENUM_HAS_VALUE",1,3)}async function wC(t){return J(t,"DT_ENUM_HAS_VALUE_BY_IDX",1,4)}async function EC(t){return J(t,"DT_ENUM_IDX",1,2)}async function DC(t){return J(t,"DT_ENUM_IDX_BY_IDX",1,3)}async function CC(t){return J(t,"DT_ENUM_IDX_BY_IDX_OR",1,4)}async function AC(t){return J(t,"DT_ENUM_IDX_OR",1,3)}var IC=$(U());async function Ei({macro:t,document:e,context:r,position:n},i,s,o){if(t.parent?.macro!==i||t.argIndexInParent!==s||!t.parent.args?.length)return[];let c=(await x({document:e,macro:t.parent.args[0],context:r,position:n}))?.properties.find(f=>ee(f.name)===t.parent?.args?.at(1)?.macro),l=0;if(typeof o=="string"){let f=c?.nexusMapsTo.at(0)?.specifierSpace;if(l=(f?c.parent.getProperty(`${f}-names`)?.ast.quickValues:void 0)?.findIndex(g=>typeof g=="string"&&g.toLowerCase()===o)??-1,l===-1)return[]}let u=c?.nexusMapsTo.at(l);return u?.target.nodeType?.cellsValues?.find(f=>u.specifierSpace&&f.specifier===u.specifierSpace)?.values.map(f=>({label:ee(f),kind:IC.CompletionItemKind.Property}))??[]}async function OC(t){return t.macro.argIndexInParent===2?Ei(t,"DT_PHA",2,0):J(t,"DT_PHA",1,3,e=>!!e.nexusMapsTo.length)}var MC=$(U());async function UU({document:t,macro:e,position:r,context:n},i){if(e.parent?.macro!==i||!e.parent.args?.length)return[];let o=(await x({document:t,macro:e.parent.args[0],context:n,position:r}))?.properties.find(a=>ee(a.name)===e.parent?.args?.at(1)?.macro);return Array(o?.nexusMapsTo.length??0)?.map((a,c)=>({label:c.toString(),kind:MC.CompletionItemKind.Property}))??[]}async function xC(t){if(t.macro.argIndexInParent===2)return UU(t,"DT_PHA_BY_IDX");if(t.macro.argIndexInParent===3){let e=t.macro.parent?.args?De(t.macro.parent.args[2].macro):void 0;return typeof e!="number"?[]:Ei(t,"DT_PHA_BY_IDX",3,e)}return J(t,"DT_PHA_BY_IDX",1,3,e=>!!e.nexusMapsTo.length)}var LC=$(U());async function Hc({document:t,macro:e,context:r,position:n},i){if(e.parent?.macro!==i||!e.parent.args?.length)return[];let o=(await x({document:t,macro:e.parent.args[0],context:r,position:n}))?.properties.find(l=>ee(l.name)===e.parent?.args?.at(1)?.macro),a=o?.nexusMapsTo.at(0)?.specifierSpace;return(a?o.parent.getProperty(`${a}-names`)?.ast.quickValues:void 0)?.filter(l=>typeof l=="string")?.map(l=>({label:l,kind:LC.CompletionItemKind.Property}))??[]}async function qC(t){let{macro:e}=t;return e.argIndexInParent===2?Hc(t,"DT_PHA_BY_NAME"):e.argIndexInParent===3?e.parent?.args?.[2]?.macro?Ei(t,"DT_PHA_BY_NAME",3,e.parent.args[2].macro):[]:J(t,"DT_PHA_BY_NAME",1,3,r=>!!r.nexusMapsTo.length)}async function $C(t){let{macro:e}=t;return e.argIndexInParent===2?Hc(t,"DT_PHA_BY_NAME_OR"):e.argIndexInParent===3?e.parent?.args?.[2]?.macro?Ei(t,"DT_PHA_BY_NAME_OR",3,e.parent.args[2].macro):[]:J(t,"DT_PHA_BY_NAME_OR",1,3,r=>!!r.nexusMapsTo.length)}async function BC(t){let{macro:e}=t;return e.argIndexInParent===2?Ei(t,"DT_PHA_OR",2,0):J(t,"DT_PHA_OR",1,3,r=>!!r.nexusMapsTo.length)}async function bp(t){return J(t,"DT_PHANDLE",1,2,e=>!!e.ast.getFlatAstValues()?.some(r=>r instanceof ie||r instanceof it))}async function ua(t){return J(t,"DT_PHANDLE_BY_IDX",1,3,e=>!!e.ast.getFlatAstValues()?.some(r=>r instanceof ie||r instanceof it))}async function FC(t){let{macro:e}=t;return e.argIndexInParent===2?Hc(t,"DT_PHANDLE_BY_NAME"):J(t,"DT_PHANDLE_BY_NAME",1,3,r=>!!r.ast.getFlatAstValues()?.some(n=>n instanceof ie||n instanceof it))}async function jC(t){return J(t,"DT_PROP",1,2,e=>!e.nexusMapsTo.length)}async function UC(t){return J(t,"DT_PROP_BY_IDX",1,3,e=>!e.nexusMapsTo.length)}async function HC(t){let{macro:e}=t;return(e.argIndexInParent===1||e.argIndexInParent===2)&&e.parent?.macro==="DT_PROP_BY_PHANDLE_IDX"?ua({...t,macro:{...e,parent:e.parent?{...e.parent,macro:"DT_PHANDLE_BY_IDX"}:void 0}}):J(t,"DT_PROP_BY_PHANDLE_IDX",3,4,r=>!r.nexusMapsTo.length,()=>oi({...t,macro:{macro:"DT_PHANDLE_BY_IDX",args:e.parent?.args?.slice(0,3)}},x))}async function VC(t){let{macro:e}=t;return e.argIndexInParent===1&&e.parent?.macro==="DT_PROP_BY_PHANDLE"?bp({...t,macro:{...e,parent:e.parent?{...e.parent,macro:"DT_PHANDLE"}:void 0}}):J(t,"DT_PROP_BY_PHANDLE",2,3,r=>!r.nexusMapsTo.length,()=>cs({...t,macro:{macro:"DT_PHANDLE",args:e.parent?.args?.slice(0,2)}},x))}async function zC(t){let{macro:e}=t;return(e.argIndexInParent===1||e.argIndexInParent===2)&&e.parent?.macro==="DT_PROP_BY_PHANDLE_IDX_OR"?ua({...t,macro:{...e,parent:e.parent?{...e.parent,macro:"DT_PHANDLE_BY_IDX"}:void 0}}):J(t,"DT_PROP_BY_PHANDLE_IDX_OR",3,5,r=>!r.nexusMapsTo.length,()=>oi({...t,macro:{macro:"DT_PHANDLE_BY_IDX",args:e.parent?.args?.slice(0,3)}},x))}async function WC(t){return J(t,"DT_PROP_HAS_IDX",1,3,e=>!e.nexusMapsTo.length)}async function GC(t){return J(t,"DT_PROP_HAS_NAME",1,3,e=>!e.nexusMapsTo.length)}async function KC(t){return J(t,"DT_PROP_LAST",1,2,e=>!e.nexusMapsTo.length)}async function YC(t){return J(t,"DT_PROP_LEN",1,2,e=>!e.nexusMapsTo.length)}async function XC(t){return J(t,"DT_PROP_LEN_OR",1,2,e=>!e.nexusMapsTo.length)}async function JC(t){return J(t,"DT_PROP_OR",1,2,e=>!e.nexusMapsTo.length)}async function QC(t){return J(t,"DT_STRING_TOKEN",1,2,e=>{let r=e.ast.getFlatAstValues();return r?.length===1&&r[0]instanceof ne})}async function ZC(t){return J(t,"DT_STRING_TOKEN_BY_IDX",1,3,e=>{let r=e.ast.getFlatAstValues();return!!r?.length&&r.every(n=>n instanceof ne)})}async function eA(t){return J(t,"DT_STRING_TOKEN_OR",1,3,e=>{let r=e.ast.getFlatAstValues();return r?.length===1&&r[0]instanceof ne})}async function tA(t){return J(t,"DT_STRING_UNQUOTED",1,2,e=>{let r=e.ast.getFlatAstValues();return r?.length===1&&r[0]instanceof ne})}async function rA(t){return J(t,"DT_STRING_UNQUOTED_BY_IDX",1,3,e=>{let r=e.ast.getFlatAstValues();return!!r?.length&&r.every(n=>n instanceof ne)})}async function nA(t){return J(t,"DT_STRING_UNQUOTED_OR",1,3,e=>{let r=e.ast.getFlatAstValues();return r?.length===1&&r[0]instanceof ne})}async function iA(t){return J(t,"DT_STRING_UPPER_TOKEN",1,2,e=>{let r=e.ast.getFlatAstValues();return r?.length===1&&r[0]instanceof ne})}async function sA(t){return J(t,"DT_STRING_UPPER_TOKEN_BY_IDX",1,3,e=>{let r=e.ast.getFlatAstValues();return!!r?.length&&r.every(n=>n instanceof ne)})}async function oA(t){return J(t,"DT_STRING_UPPER_TOKEN_OR",1,3,e=>{let r=e.ast.getFlatAstValues();return r?.length===1&&r[0]instanceof ne})}var Vc=$(U());async function aA({macro:t,context:e}){return t.parent?.macro==="DT_ON_BUS"&&t.argIndexInParent===1?e.bindingLoader?.getBusTypes().map(r=>({label:ee(r),kind:Vc.CompletionItemKind.Enum}))??[]:t.macro&&"DT_ON_BUS".startsWith(t.macro)?[{label:"DT_ON_BUS(...)",insertText:"DT_ON_BUS($1, $2)",kind:Vc.CompletionItemKind.Function,insertTextFormat:Vc.InsertTextFormat.Snippet}]:[]}async function cA(t){return J(t,"DT_CHOSEN",0,1,void 0,async()=>(await t.context.getRuntime()).rootNode.getChild(["/","chosen"]))}async function lA(t){return J(t,"DT_HAS_CHOSEN",0,1,void 0,async()=>(await t.context.getRuntime()).rootNode.getChild(["/","chosen"]))}var HU=["DT_BUS","DT_CHILD_NUM","DT_CHILD_NUM_STATUS_OKAY","DT_GPARENT","DT_HAS_ALIAS","DT_NODE_CHILD_IDX","DT_NODE_FULL_NAME","DT_NODE_FULL_NAME_TOKEN","DT_NODE_FULL_NAME_UNQUOTED","DT_NODE_FULL_NAME_UPPER_TOKEN","DT_NODE_HASH","DT_NODE_PATH","DT_NODELABEL_STRING_ARRAY","DT_PARENT"];async function uA(t,e,r){if(!r)return[];let n=wi(r,t.position);return n?(await Promise.all([aA,cA,lA,ZD,TC,vC,bC,VU,_C,SC,kC,RC,wC,PC,DC,CC,EC,AC,xC,qC,$C,OC,ua,FC,bp,BC,UC,VC,HC,zC,jC,WC,GC,KC,YC,XC,JC,QC,ZC,eA,tA,rA,nA,iA,sA,oA].flatMap(async i=>await i({document:r,context:e,macro:n,position:t.position})))).flat():[]}function VU({macro:t}){return t.macro?HU.filter(e=>e.startsWith(t.macro)).map(e=>({label:`${e}(...)`,insertText:`${e}($1)`,kind:_p.CompletionItemKind.Function,insertTextFormat:_p.InsertTextFormat.Snippet})):[]}var pn=$(U());function zU(t){if(!t||t.item===null||!(t.ast instanceof Ze))return[];let e=n=>n.replacedBy?e(n.replacedBy):n,r=n=>{let i=n.parent.deletedProperties.find(s=>s.property===n)?.by;return[n.ast,...n.allReplaced.map(s=>s.ast),...i?[i]:[]].map(s=>{let o=Ar(s.uri);if(o)return pn.Location.create(de(o.docUri),o.range);if(s instanceof nt)return pn.Location.create(de(s.uri),pe(s.propertyName??s));if(s instanceof ht)return pn.Location.create(de(s.uri),pe(s.propertyName??s))}).filter(s=>s)};if(t.item instanceof Ye&&t.ast instanceof Ze)return r(e(t.item));if(t.item instanceof X&&t.ast instanceof Ze&&t.ast.parentNode instanceof ht){let n=t.item.deletedProperties.find(i=>i.by===t.ast.parentNode)?.property;if(n)return r(n)}return[]}function WU(t){if(!t)return[];let e=r=>{let i=t.runtime.rootNode.getNode("aliases")?.properties.filter(o=>{let a=o.ast.quickValues;if(a?.length===1&&typeof a[0]=="string"&&t.runtime.rootNode.getChild(a[0].split("/"))===r)return!0}).map(o=>o.ast)??[],s=r.parent?.deletedNodes.filter(o=>o.node===r&&(o.by.nodeNameOrRef instanceof Me?o.by.nodeNameOrRef!==t.ast:!r.linkedRefLabels.some(a=>a!==t.ast))).map(o=>o.by.nodeNameOrRef)??[];return[...i,...r.linkedRefLabels,...r.linkedNodeNamePaths,...r.definitions,...s].map(o=>{let a=o&&Ar(o?.uri);if(a)return pn.Location.create(de(a.docUri),a.range);if(o instanceof Dt)return pn.Location.create(de(o.uri),pe(o.name??o));if(o instanceof Ge)return pn.Location.create(de(o.uri),pe(o.name??o));if(o instanceof Me)return pn.Location.create(de(o.uri),pe(o));if(o instanceof Me)return pn.Location.create(de(o.uri),pe(o));if(o instanceof ie)return pn.Location.create(de(o.uri),pe(o.label??o));if(o instanceof nt)return pn.Location.create(de((o.values??o)?.uri),pe(o.values??o))}).filter(o=>o)};if(t.item instanceof X&&!Ut(t.ast))return e(t.item);if(t.ast instanceof Qt&&t.ast.parentNode instanceof ie&&t.ast.parentNode.linksTo)return e(t.ast.parentNode.linksTo);if(t.ast instanceof Me&&t.ast.linksTo)return Ut(t.ast)?[...e(t.ast.linksTo),pn.Location.create(de(t.ast.uri),pe(t.ast))]:e(t.ast.linksTo);if(t?.ast instanceof ne&&t.item instanceof Ye&&t.item.parent.name==="aliases"){let r=t.runtime.rootNode.getChild(t.ast.value.split("/"));if(r)return e(r)}return[]}async function dA(t,e){return _t(t,e,r=>[...WU(r),...zU(r)])}var Di=$(U());function fA(t){if(!t||t.item===null||!(t.ast instanceof Ze))return[];let e=n=>n.replacedBy?e(n.replacedBy):n,r=n=>[n.ast,...n.allReplaced.map(i=>i.ast),n.parent.deletedProperties.find(i=>i.property===n)?.by??[]].map(i=>{if((i instanceof nt||i instanceof ht)&&i.propertyName)return Di.Location.create(de(i.uri),pe(i.propertyName))}).filter(i=>i);if(t.item instanceof Ye&&t.ast instanceof Ze)return r(e(t.item));if(t.item instanceof X&&t.ast instanceof Ze&&t.ast.parentNode instanceof ht){let n=t.item.deletedProperties.find(i=>i.by===t.ast.parentNode)?.property;if(n)return r(n)}return[]}function pA(t,e){if(!e||!(e.ast instanceof Qt))return[];"newName"in t&&(e.ast.parentNode instanceof ie&&t.newName.startsWith("&")?t.newName=t.newName.slice(1):e.ast.parentNode instanceof Zi&&t.newName.endsWith(":")&&(t.newName=t.newName.slice(0,-1)));let r=e.ast.value,n=i=>[...i.definitions.filter(s=>s instanceof Ge).flatMap(s=>s.labels.map(o=>o.label)),...i.referencedBy.flatMap(s=>s.labels.map(o=>o.label)),...i.linkedRefLabels.map(s=>s.label)].filter(s=>s?.value===r).map(s=>{if(s)return Di.Location.create(de(s.uri),pe(s))}).filter(s=>s);return e.item instanceof X&&!Ut(e.ast)?n(e.item):e.ast instanceof Qt&&e.ast.parentNode instanceof ie&&e.ast.parentNode.linksTo?n(e.ast.parentNode.linksTo):[]}function hA(t){if(!t||!(t.ast instanceof Me)||t.ast instanceof Me&&t.ast.linksTo===t.runtime.rootNode)return[];let e=r=>{let i=t.runtime.rootNode.getNode("aliases")?.properties.filter(o=>{let a=o.ast.quickValues;if(a?.length===1&&typeof a[0]=="string"){let c=t.runtime.rootNode.getChild(a[0].split("/"));if(c?.isChildOf(r)||c===r)return!0}}).map(o=>o.ast)??[],s=r.parent?.deletedNodes.filter(o=>o.node===r&&o.by.nodeNameOrRef!==t.ast).map(o=>o.by.nodeNameOrRef)??[];return[...i,...r.linkedNodeNamePaths,...r.definitions,...s].map(o=>{if(o instanceof Ge&&o.name)return Di.Location.create(de(o.uri),pe(o.name));if(o instanceof Me)return Di.Location.create(de(o.uri),pe(o));if(o instanceof nt&&o.values?.values[0]?.value&&o.values?.values[0]?.value instanceof ne){let a=o.values.values[0].value,c=pe(a),l=a.value.split("/"),u=r.path,d=l.slice(0,u.length-1).join("/").length+1,f=a.value.length-l.slice(0,u.length).join("/").length;return c.start.character+=1+d,c.end.character-=1+f,Di.Location.create(de(o.values.values[0].uri),c)}}).filter(o=>o)};return t.item instanceof X&&!Ut(t.ast)?e(t.item):t.ast instanceof Me&&t.ast.linksTo?Ut(t.ast)?[...e(t.ast.linksTo),Di.Location.create(de(t.ast.uri),pe(t.ast))]:e(t.ast.linksTo):[]}async function mA(t,e){let r={};return(await _t(t,e,i=>[...hA(i),...pA(t,i),...fA(i)])).forEach(i=>{r[i.uri]??=[],r[i.uri].push(Di.TextEdit.replace(i.range,t.newName))}),{changes:r}}async function gA(t,e){let r=await _t(t,e,n=>[...hA(n),...pA(t,n),...fA(n)]);if(r.some(n=>e?.settings.lockRenameEdits?.some(i=>Se(n.uri).startsWith(i))))throw new Error('Path is locked by user setting "lockRenameEdits"');if(r.some(n=>$y(n.uri)))throw new Error("Item was generated using a MACRO.");return{defaultBehavior:!!r.length}}var da=$(U());var Sp=t=>[...t.definitions,...t.referencedBy].map(e=>{let r=Ar(e.uri);return r?da.Location.create(de(r.docUri),r.range):da.Location.create(de(e.uri),pe(e))}).filter(e=>e),TA=t=>t.replacedBy?TA(t.replacedBy):t,yA=t=>[t.ast,...t.allReplaced.map(e=>e.ast)].map(e=>{let r=Ar(e.uri);return r?da.Location.create(de(r.docUri),r.range):da.Location.create(de(e.uri),pe(e.propertyName??e))}).filter(e=>e);function GU(t){if(!t||t.item===null||!(t.ast instanceof Ze))return[];if(t.item instanceof Ye&&t.ast instanceof Ze)return yA(TA(t.item));if(t.item instanceof X&&t.ast instanceof Ze&&t.ast.parentNode instanceof ht){let e=t.item.deletedProperties.find(r=>r.by===t.ast.parentNode)?.property;if(e)return yA(e)}return[]}function KU(t){if(!t)return[];if(t.item instanceof X&&!Ut(t.ast))return Sp(t.item);if(t.ast instanceof Qt&&t.ast.parentNode instanceof ie&&t.ast.parentNode.linksTo)return Sp(t.ast.parentNode.linksTo);if(t.ast instanceof Me&&t.ast.linksTo)return Sp(t.ast.linksTo);if(t?.ast instanceof ne&&t.item instanceof Ye&&t.item.parent.name==="aliases"){let e=t.runtime.rootNode.getChild(t.ast.value.split("/"));if(e)return Sp(e)}return[]}function YU(t){if(t?.ast instanceof St||t?.ast instanceof ei){let e=t.runtime.context.parser.cPreprocessorParser.macros.get(t.ast instanceof St?t.ast.name:t.ast.value);if(e)return[da.Location.create(de(e.macro.uri),pe(e.macro.identifier))]}return[]}async function vA(t,e){return _t(t,e,r=>[...KU(r),...GU(r),...YU(r)])}var us=$(U());var ls=t=>{let e=t.definitions.at(0),r=e&&Ar(e.uri);return r?us.Location.create(de(r.docUri),r.range):e?us.Location.create(de(e.uri),pe(e)):void 0},Np=t=>t.replaces?Np(t.replaces):t,kp=t=>{let e=Np(t),r=Ar(e.ast.uri);return r?us.Location.create(de(r.docUri),r.range):e?us.Location.create(de(e.ast.uri),pe(e.ast)):void 0};function XU(t){if(!t||t.item===null||!(t.ast instanceof Ze))return;let e=r=>{let n=Ar(r.ast.uri);return n?us.Location.create(de(n.docUri),n.range):us.Location.create(de(r.ast.uri),pe(r.ast.propertyName??r.ast))};if(t.item instanceof Ye&&t.ast instanceof Ze)return e(Np(t.item));if(t.item instanceof X&&t.ast instanceof Ze&&t.ast.parentNode instanceof ht){let r=t.item.deletedProperties.find(n=>n.by===t.ast.parentNode)?.property;if(r)return e(Np(r))}}function JU(t){if(t){if(t.item instanceof X&&!Ut(t.ast))return ls(t.item);if(t.ast instanceof Qt&&t.ast.parentNode instanceof ie&&t.ast.parentNode.linksTo)return ls(t.ast.parentNode.linksTo);if(t.ast instanceof Me&&t.ast.linksTo)return ls(t.ast.linksTo);if(t?.ast instanceof ne&&t.item instanceof Ye&&t.item.parent.name==="aliases"){let e=t.runtime.rootNode.getChild(t.ast.value.split("/"));if(e)return ls(e)}}}function QU(t){if(t?.ast instanceof St||t?.ast instanceof ei){let e=t.runtime.context.parser.cPreprocessorParser.macros.get(t.ast instanceof St?t.ast.name:t.ast.value);if(e)return us.Location.create(de(e.macro.uri),pe(e.macro.identifier))}}async function bA(t,e){return(await _t(t,e,r=>[JU(r)||XU(r)||QU(r)])).at(0)}var ZU=["DT_PROP","DT_PROP_LEN","DT_PROP_LEN_OR","DT_PROP_HAS_IDX","DT_PROP_HAS_NAME","DT_PROP_BY_IDX","DT_PROP_LAST","DT_PROP_OR","DT_ENUM_IDX_BY_IDX","DT_ENUM_IDX","DT_ENUM_IDX_BY_IDX_OR","DT_ENUM_IDX_OR","DT_ENUM_HAS_VALUE_BY_IDX","DT_ENUM_HAS_VALUE","DT_STRING_TOKEN","DT_STRING_TOKEN_OR","DT_STRING_UPPER_TOKEN","DT_STRING_UPPER_TOKEN_OR","DT_STRING_UNQUOTED","DT_STRING_UNQUOTED_OR","DT_STRING_TOKEN_BY_IDX","DT_STRING_UPPER_TOKEN_BY_IDX","DT_STRING_UNQUOTED_BY_IDX","DT_PROP_BY_PHANDLE_IDX","DT_PROP_BY_PHANDLE_IDX_OR","DT_PROP_BY_PHANDLE","DT_PHA_BY_IDX","DT_PHA_BY_IDX_OR","DT_PHA","DT_PHA_OR","DT_PHA_BY_NAME","DT_PHA_BY_NAME_OR","DT_PHANDLE_BY_NAME","DT_PHANDLE_BY_IDX","DT_PHANDLE"];async function Rp({macro:t,document:e,context:r,position:n}){if(ZU.some(i=>i===t.parent?.macro)&&t.argIndexInParent===1&&t.parent?.args?.[0])return(await x({document:e,context:r,position:n,macro:t.parent.args[0]}))?.properties.find(s=>ee(s.name)===t.macro);if(["DT_PROP_BY_PHANDLE"].some(i=>i===t.parent?.macro)&&t.argIndexInParent===2&&t.parent?.args?.[0]&&t.parent?.args?.[1])return(await cs({document:e,context:r,position:n,macro:{macro:"DT_PHANDLE",args:t.parent.args.slice(0,2)}},x))?.properties.find(s=>ee(s.name)===t.macro);if(["DT_PROP_BY_PHANDLE_IDX","DT_PROP_BY_PHANDLE_IDX_OR"].some(i=>i===t.parent?.macro)&&t.argIndexInParent===3&&t.parent?.args?.[0]&&t.parent?.args?.[1]&&t.parent?.args?.[3])return(await oi({document:e,context:r,position:n,macro:{macro:"DT_PHANDLE_BY_IDX",args:t.parent.args.slice(0,3)}},x))?.properties.find(s=>ee(s.name)===t.macro);if(["DT_CHOSEN","DT_HAS_CHOSEN"].some(i=>i===t.parent?.macro)&&t.argIndexInParent===0&&t.parent?.args?.[0])return(await r.getRuntime()).rootNode.getChild(["/","chosen"])?.properties.find(i=>ee(i.name)===t.macro)}async function _A(t,e,r){if(!r)return;let n=wi(r,t.position);return SA(n,t.position,e,r)}async function SA(t,e,r,n){if(!t?.macro)return;let i=await x({document:n,macro:t,context:r,position:e});if(i)return ls(i);let s=await Rp({document:n,macro:t,context:r,position:e});if(s)return kp(s);let o=await os(n,t.macro,e,r);if(o)return SA(o[0],o[1],r,n)}async function NA(t,e,r){if(!r)return;let n=wi(r,t.position);return kA(n,t.position,e,r)}async function kA(t,e,r,n){if(!t?.macro)return;let i=await x({document:n,macro:t,context:r,position:e});if(i)return ls(i);let s=await Rp({document:n,macro:t,context:r,position:e});if(s)return kp(s);let o=await os(n,t.macro,e,r);if(o)return kA(o[0],o[1],r,n)}var ue=$(U());var eH=(t,e,r,n,i)=>{switch(r){case 1:return[{title:"Add semicolon",diagnostics:[n],kind:ue.CodeActionKind.SourceFixAll,isPreferred:!0,edit:{changes:{[i]:[ue.TextEdit.insert(ue.Position.create(n.range.end.line,n.range.end.character),";")]}}}];case 2:return[{title:"Add open curly",diagnostics:[n],kind:ue.CodeActionKind.SourceFixAll,isPreferred:!0,edit:{changes:{[i]:[ue.TextEdit.insert(ue.Position.create(n.range.end.line,n.range.end.character)," {")]}}}];case 29:return[{title:"Remove white space",diagnostics:[n],kind:ue.CodeActionKind.SourceFixAll,isPreferred:!0,edit:{changes:{[i]:[ue.TextEdit.replace(ue.Range.create(ue.Position.create(n.range.start.line,t.pos.colEnd),ue.Position.create(n.range.end.line,e.pos.col)),"")]}}}];case 3:return[{title:"Add close curly",diagnostics:[n],kind:ue.CodeActionKind.QuickFix,isPreferred:!0,edit:{changes:{[i]:[ue.TextEdit.insert(ue.Position.create(n.range.end.line,n.range.end.character),"}")]}}}];case 19:return[{title:"Add '/'",diagnostics:[n],kind:ue.CodeActionKind.QuickFix,isPreferred:!0,edit:{changes:{[i]:[ue.TextEdit.insert(ue.Position.create(n.range.end.line,n.range.end.character),"/")]}}}];case 28:return[{title:"Add comma",diagnostics:[n],kind:ue.CodeActionKind.SourceFixAll,isPreferred:!0,edit:{changes:{[i]:[ue.TextEdit.insert(ue.Position.create(n.range.end.line,n.range.end.character),",")]}}}];case 21:return[{title:"Add '/'",diagnostics:[n],kind:ue.CodeActionKind.SourceFixAll,isPreferred:!0,edit:{changes:{[i]:[ue.TextEdit.insert(ue.Position.create(n.range.end.line,n.range.end.character),"/")]}}}];case 23:return[{title:"Remove ';'",diagnostics:[n],kind:ue.CodeActionKind.SourceFixAll,isPreferred:!0,edit:{changes:{[i]:[ue.TextEdit.del(n.range)]}}}];case 34:return[{title:"Complete Keyword '/delete-node/",diagnostics:[n],kind:ue.CodeActionKind.SourceFixAll,isPreferred:!0,edit:{changes:{[i]:[ue.TextEdit.replace(n.range,"/delete-node/")]}}}];case 35:return[{title:"Complete Keyword '/delete-property/",diagnostics:[n],kind:ue.CodeActionKind.SourceFixAll,isPreferred:!0,edit:{changes:{[i]:[ue.TextEdit.replace(n.range,"/delete-property/")]}}}];case 25:return[{title:"Complete Keyword '/delete-property/",diagnostics:[n],kind:ue.CodeActionKind.QuickFix,isPreferred:!0,edit:{changes:{[i]:[ue.TextEdit.replace(n.range,"/delete-property/")]}}},{title:"Complete Keyword '/delete-node/",diagnostics:[n],kind:ue.CodeActionKind.QuickFix,isPreferred:!0,edit:{changes:{[i]:[ue.TextEdit.replace(n.range,"/delete-node/")]}}}];case 12:return[{title:"Add '>'",diagnostics:[n],kind:ue.CodeActionKind.SourceFixAll,isPreferred:!0,edit:{changes:{[i]:[ue.TextEdit.insert(ue.Position.create(n.range.end.line,n.range.end.character),">")]}}}];default:return}},tH=(t,e,r,n,i)=>{if(!n?.length)return[];switch(t){case 0:return[{title:i??`Add Property "${n[0].newText.split("=",1)[0].replace(";","").trim()}"`,diagnostics:[e],kind:ue.CodeActionKind.QuickFix,isPreferred:!0,edit:{changes:{[r]:n}}}];case 27:return[{title:i??"Remove Property",diagnostics:[e],kind:ue.CodeActionKind.QuickFix,isPreferred:!0,edit:{changes:{[r]:n}}}];case 26:return[{title:i??"TODO",diagnostics:[e],kind:ue.CodeActionKind.QuickFix,isPreferred:!0,edit:{changes:{[r]:n}}}];case 36:return[{title:i??"TODO",diagnostics:[e],kind:ue.CodeActionKind.QuickFix,isPreferred:!0,edit:{changes:{[r]:n}}}];case 25:return n?[{title:i??"TODO",diagnostics:[e],kind:ue.CodeActionKind.QuickFix,isPreferred:!0,edit:{changes:{[r]:n}}}]:[];default:return}},rH=(t,e,r,n)=>r?.length?[{title:n??"TODO",diagnostics:[t],kind:ue.CodeActionKind.QuickFix,isPreferred:!0,edit:{changes:{[e]:r}}}]:[];function RA(t){let e=t.context.diagnostics.flatMap(a=>{let c=a.data;if(c?.virtual)return[];switch(c?.type){case"FormattingIssues":return rH(a,t.textDocument.uri,c.edit?Array.isArray(c.edit)?c.edit:[c.edit]:void 0,c.codeActionTitle);case"SyntaxIssue":return c?.items.flatMap(l=>eH(c.firstToken,c.lastToken,l,a,t.textDocument.uri));case"StandardTypeIssue":return c?.items.flatMap(l=>tH(l,a,t.textDocument.uri,c.edit?Array.isArray(c.edit)?c.edit:[c.edit]:void 0,c.codeActionTitle))}}).filter(a=>!!a),r=e.filter(a=>a.kind===ue.CodeActionKind.SourceFixAll),n=e.filter(a=>a.title.startsWith("Add Property")),i=e.filter(a=>a.kind!==ue.CodeActionKind.SourceFixAll),s=r.flatMap(a=>a.edit?.changes?.[t.textDocument.uri]??[]),o=new Map;return n.forEach(a=>{let c=a.edit.changes[t.textDocument.uri][0],l=c.range.start.line,u=c.range.start.character;o.has(`${l}:${u}`)||o.set(`${l}:${u}`,[]),o.get(`${l}:${u}`)?.push(c)}),[...i,...r.map(a=>({...a,kind:ue.CodeActionKind.QuickFix})),...s.length?[{title:"Fix All",kind:ue.CodeActionKind.SourceFixAll,isPreferred:!0,edit:{changes:{[t.textDocument.uri]:s}}}]:[],...Array.from(o.values()).flatMap(a=>a.length>1?{title:"Add All Missing Properties",kind:ue.CodeActionKind.QuickFix,isPreferred:!0,edit:{changes:{[t.textDocument.uri]:a}}}:[])]}var PA=$(U());var Pp=t=>!t||t instanceof nt?!1:t instanceof br||Pp(t.parentNode);function nH(t){if(!t||!(t.item instanceof Ye&&t.item.ast.assignOperatorToken))return[];let e=Pp(t?.ast);if(!e&&!(t.ast instanceof nt&&t.item.ast.values===null)&&!Pp(t.beforeAst)&&!Pp(t.afterAst))return[];let r=-1;if(t.item.ast.values===null?r=0:r=(t.item.ast.values?.values.findIndex(i=>i&&Hy(i,t.beforeAst))??-1)+1,r===-1&&(r=0),t.item.name==="compatible"){let s=t.item.parent.nodeTypes.filter(c=>c).at(-1),o=t.item.ast.quickValues,a;return s instanceof Nt&&s.extends.size&&(a=Array.from(s.extends).filter(c=>!o||!o.includes(c))),o?.filter(c=>c)?.length&&!a?[]:(a??=t.runtime.context.bindingLoader?.getBindings()??[],a.filter(c=>!o||!o.includes(c)).map(c=>({label:`"${c}"`,kind:PA.CompletionItemKind.Variable,insertText:e?c:`"${c}"`})))}let n=t.item.parent.nodeType;return n instanceof Nt?n.properties.find(i=>i.name===t.item?.name)?.getPropertyCompletionItems(t.item,r,e)??[]:[]}function iH(t){if(!t||!(t.item instanceof Ye&&t.ast instanceof Ze&&t.item.ast.values==null||t.item instanceof X)||Ut(t.ast)||t.beforeAst?.parentNode instanceof vr)return[];let e=r=>r.nodeType?.getPropertyListCompletionItems(r)??[];return t.item instanceof Ye?e(t.item.parent):e(t.item)}async function wA(t,e){return _t(t,e,r=>[...nH(r),...iH(r)])}var wp=$(U());async function sH(t){if(t?.ast instanceof St||t?.ast instanceof ei){let e=t.runtime.context.parser.cPreprocessorParser.macros.get(t?.ast instanceof St?t.ast.name:t.ast.value);if(e){let r=bc(t.ast),n=(await t.runtime.context.getAllParsers()).at(-1);if(r){let i=r?.evaluate(n.cPreprocessorParser.macros);return{contents:{kind:wp.MarkupKind.Markdown,value:["```cpp",`#define ${e.macro.toString()} // = ${i}${typeof i=="number"?` (0x${i.toString(16)})`:""}`,"```"].join(`
286
286
  `)},range:pe(t.ast)}}return{contents:{kind:wp.MarkupKind.Markdown,value:["```cpp",`#define ${e.macro.toString()} // = ${t.ast?.evaluate(n.cPreprocessorParser.macros)}`,"```"].join(`
287
287
  `)},range:pe(t.ast)}}}}async function oH(t){if(!t)return;let e=(await t.runtime.context.getAllParsers()).at(-1);if(t?.ast instanceof Me){let r=t.ast.linksTo;if(r)return{contents:r.toMarkupContent(e.cPreprocessorParser.macros),range:pe(t.ast)}}if(t?.ast.parentNode instanceof ie){let r=t.ast.parentNode.linksTo;if(r)return{contents:r.toMarkupContent(e.cPreprocessorParser.macros),range:pe(t.ast)}}if(t?.ast instanceof ne&&t.item instanceof Ye&&t.item.parent.name==="aliases"){let r=t.runtime.rootNode.getChild(t.ast.value.split("/"));if(r)return{contents:r.toMarkupContent(e.cPreprocessorParser.macros),range:pe(t.ast)}}if(t?.item instanceof X)return{contents:t.item.toMarkupContent(e.cPreprocessorParser.macros),range:pe(t.ast)}}function aH(t){if(t?.item instanceof Ye&&t.ast instanceof Ze){let e=t.item.onHover(),r=t.item.parent.nodeType?.getOnPropertyHover(t.item.name);if(e||r)return{contents:{kind:wp.MarkupKind.Markdown,value:`${e?.value??""}
288
288
  ${r?.value??""}`},range:pe(t.ast)}}}function EA(t,e){return _t(t,e,async r=>[await oH(r)||aH(r)||await sH(r)])}async function DA(t){let e=await Yf(t);if(e)return{contents:e.toMarkupContent(t.context.macros)}}async function CA(t){let e=await Xf(t,x);if(e)return{contents:e.toMarkupContent(t.context.macros)}}var OA=$(U());async function AA(t){return t?.nodes.length??0}async function IA({document:t,macro:e,context:r,position:n},i){if(e.macro!=="DT_CHILD_NUM"||e.args?.length!==1)return;let s=await i({document:t,macro:e.args[0],context:r,position:n});return AA(s)}async function MA(t){let e=await IA(t,x);return e!==void 0?{contents:{kind:OA.MarkupKind.Markdown,value:e.toString()}}:void 0}async function xA(t){let e=await gT(t);if(e)return e?.length?{contents:{kind:is.Markdown,value:e.map((r,n)=>{let i=r.toMarkupContent(t.context.macros);return`## Node ${n+1}
@@ -290,12 +290,12 @@ ${r?.value??""}`},range:pe(t.ast)}}}function EA(t,e){return _t(t,e,async r=>[awa
290
290
  ${i.value}
291
291
  `}).join(`
292
292
 
293
- `)}}:{contents:{kind:is.Markdown,value:`No node matched compat ${t.macro.args[0].macro}`}}}async function LA(t){let e=await Jf(t,x);if(e)return{contents:e.toMarkupContent(t.context.macros)}}async function qA(t,e){return!!await Kf(t,e)}async function $A({macro:t,context:e}){if(!(t.macro!=="DT_HAS_ALIAS"||t.args?.length!==1))return qA(t.args[0].macro,e)}async function BA(t){let e=await $A(t);if(e!==void 0)return{contents:{kind:is.Markdown,value:e?"1":"0"}}}var jA=$(U());async function zc(t,e){if(t)switch(e){case"Unquoted":return t.fullName;case"Quoted":return`"${t.fullName}"`;case"Token":return ee(t.fullName);case"Upper Token":return ee(t.fullName).toUpperCase()}}async function FA({document:t,macro:e,context:r,position:n},i){if(e.args?.length!==1)return;let s=await i({document:t,macro:e.args[0],context:r,position:n});switch(e.macro){case"DT_NODE_FULL_NAME":return zc(s,"Quoted");case"DT_NODE_FULL_NAME_TOKEN":return zc(s,"Token");case"DT_NODE_FULL_NAME_UNQUOTED":return zc(s,"Unquoted");case"DT_NODE_FULL_NAME_UPPER_TOKEN":return zc(s,"Upper Token")}}async function UA(t){let e=await FA(t,x);if(e)return{contents:{kind:jA.MarkupKind.Markdown,value:e}}}var zA=$(U());async function HA(t){return t?.pathString}async function VA({document:t,macro:e,context:r,position:n},i){if(e.macro!=="DT_NODE_PATH"||e.args?.length!==1)return;let s=await i({document:t,macro:e.args[0],context:r,position:n});return HA(s)}async function WA(t){let e=await VA(t,x);if(e)return{contents:{kind:zA.MarkupKind.Markdown,value:`"${e}"`}}}async function GA(t){let e=await Zf(t);if(e)return{contents:e.toMarkupContent(t.context.macros)}}var XA=$(U());async function KA(t){return t?.labels.map(e=>e.label)}async function YA({document:t,macro:e,context:r,position:n},i){if(e.macro!=="DT_NODELABEL_STRING_ARRAY"||e.args?.length!==1)return;let s=await i({document:t,macro:e.args[0],context:r,position:n});return KA(s)}async function JA(t){let e=await YA(t,x);if(e)return{contents:{kind:XA.MarkupKind.Markdown,value:`{ ${e.map(r=>`"${r}"`).join(", ")} }`}}}async function QA(t){let e=await ep(t,x);if(e)return{contents:e.toMarkupContent(t.context.macros)}}async function ZA(t){let e=await rp(t);if(e)return{contents:e.toMarkupContent(t.context.macros)}}var t0=$(U());async function e0({document:t,macro:e,context:r,position:n},i){if(e.macro!=="DT_SAME_NODE"||e.args?.length!==2)return;if(await r?.getRuntime()){let o=await i({document:t,macro:e.args[0],context:r,position:n}),a=await i({document:t,macro:e.args[1],context:r,position:n});return!!a&&!!o&&a===o}}async function r0(t){let e=await e0(t,x);if(e!==void 0)return{contents:{kind:t0.MarkupKind.Markdown,value:e?"1":"0"}}}var i0=$(U());async function n0({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_ENUM_IDX_BY_IDX"||s?.length!==3)return;let o=await i({document:t,macro:s[0],context:r,position:n}),a=De(s[2].macro);if(typeof a=="number")return await aa(o,s[1].macro,a)}async function s0(t){let e=await n0(t,x);return e?{contents:{kind:i0.MarkupKind.Markdown,value:e.toString()}}:void 0}var a0=$(U());async function o0({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_PHA_BY_IDX"||s?.length!==4)return;let o=await i({document:t,macro:s[0],context:r,position:n}),a=De(s[2].macro);if(typeof a=="number")return as(o,s[1].macro,a,s[3].macro,r)}async function c0(t){let e=await o0(t,x);return e?{contents:{kind:a0.MarkupKind.Markdown,value:e.toString()}}:void 0}async function l0(t){let e=await oi(t,x);if(e)return{contents:e.toMarkupContent(t.context.macros)}}async function u0(t){let e=await lp(t,x);if(e)return{contents:e.toMarkupContent(t.context.macros)}}var Wc=$(U());async function st(t,e){if(e){if(typeof e=="boolean")return{contents:{kind:Wc.MarkupKind.Markdown,value:e?"1":"0"}};if(typeof e=="string")return{contents:{kind:Wc.MarkupKind.Markdown,value:e}};if(e instanceof X)return{contents:e.toMarkupContent(t.macros)};if(e.length===1&&e[0]instanceof X)return{contents:e[0].toMarkupContent(t.macros)};if(e.every(r=>typeof r=="number"))return{contents:{kind:Wc.MarkupKind.Markdown,value:e.length===1?e[0].toString():`{${e.join(", ")}}`}};if(e.every(r=>typeof r=="string"))return{contents:{kind:Wc.MarkupKind.Markdown,value:e.length===1?`"${e[0]}"`:`{${e.map(r=>`"${r}"`).join(", ")}}`}}}}async function d0(t){let e=await Uf(t,x);return st(t.context,e)}var TT=$(U());async function f0(t){let e=await Hf(t,x);if(e===!0)return{contents:{kind:TT.MarkupKind.Markdown,value:"1"}};if(e)return e instanceof X?{contents:e.toMarkupContent(t.context.macros)}:{contents:{kind:TT.MarkupKind.Markdown,value:e.toString()}}}async function p0(t){let e=await oa(t,x);return st(t.context,e)}async function h0({document:t,macro:e,context:r,position:n},i){if(e.macro!=="DT_PROP_BY_PHANDLE_IDX"||e.args?.length!==4)return;let s=await si(await i({document:t,macro:e.args[0],context:r,position:n}),e.args[1].macro,e.args[2].macro);return await dr(s,e.args[3].macro,r)}async function m0(t){return st(t.context,await h0(t,x))}async function g0(t){let e=await np(t);if(e)return{contents:e.toMarkupContent(t.context.macros)}}var v0=$(U());async function y0(t){return t?.nodes.filter(e=>!e.disabled).length??0}async function T0({document:t,macro:e,context:r,position:n},i){if(e.macro!=="DT_CHILD_NUM_STATUS_OKAY"||e.args?.length!==1)return;let s=await i({document:t,macro:e.args[0],context:r,position:n});return y0(s)}async function b0(t){let e=await T0(t,x);return e!==void 0?{contents:{kind:v0.MarkupKind.Markdown,value:e.toString()}}:void 0}async function _0(t){let e=await cs(t,x);if(e)return{contents:e.toMarkupContent(t.context.macros)}}var N0=$(U());async function S0({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_PHA"||s?.length!==3)return;let o=await i({document:t,macro:s[0],context:r,position:n});return as(o,s[1].macro,0,s[2].macro,r)}async function k0(t){let e=await S0(t,x);return e?{contents:{kind:N0.MarkupKind.Markdown,value:e.toString()}}:void 0}var R0=$(U());async function P0(t){let e=await ap(t,x);return e instanceof X?st(t.context,e):e?{contents:{kind:R0.MarkupKind.Markdown,value:e.toString()}}:void 0}var E0=$(U());async function w0({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_PHA_BY_NAME"||s?.length!==4)return;let o=await i({document:t,macro:s[0],context:r,position:n});return as(o,s[1].macro,s[2].macro,s[3].macro,r)}async function D0(t){let e=await w0(t,x);return e?{contents:{kind:E0.MarkupKind.Markdown,value:e.toString()}}:void 0}var C0=$(U());async function A0(t){let e=await cp(t,x);return e instanceof X?st(t.context,e):e?{contents:{kind:C0.MarkupKind.Markdown,value:e.toString()}}:void 0}var I0=$(U());async function O0(t){let e=await up(t,x);return e instanceof X?st(t.context,e):e?{contents:{kind:I0.MarkupKind.Markdown,value:e.toString()}}:void 0}var M0=$(U());async function x0(t){let e=await sp(t,x);return e instanceof X?st(t.context,e):e?{contents:{kind:M0.MarkupKind.Markdown,value:e.toString()}}:void 0}var q0=$(U());async function L0({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_ENUM_IDX"||s?.length!==2)return;let o=await i({document:t,macro:s[0],context:r,position:n});return await aa(o,s[1].macro,0)}async function $0(t){let e=await L0(t,x);return e?{contents:{kind:q0.MarkupKind.Markdown,value:e.toString()}}:void 0}var B0=$(U());async function F0(t){let e=await op(t,x);return e instanceof X?st(t.context,e):e?{contents:{kind:B0.MarkupKind.Markdown,value:e.toString()}}:void 0}async function j0({document:t,macro:e,context:r,position:n},i){if(e.macro!=="DT_PROP_BY_PHANDLE"||e.args?.length!==3)return;let s=await si(await i({document:t,macro:e.args[0],context:r,position:n}),e.args[1].macro);return dr(s,e.args[2].macro,r)}async function U0(t){return st(t.context,await j0(t,x))}async function H0(t){return st(t.context,await dp(t,x))}var W0=$(U());var V0=$(require("util"));async function Ep(t,e,r,n){let i=t?.properties.find(o=>ee(o.name)===e);if(!i)return;let s=i?.ast.quickValues?.at(r);if(s!==void 0)return V0.default.isDeepStrictEqual(De(n),s)}async function z0({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_ENUM_HAS_VALUE"||s?.length!==3)return;let o=await i({document:t,macro:s[0],context:r,position:n});return await Ep(o,s[1].macro,0,s[2].macro)}async function G0(t){let e=await z0(t,x);return e!==void 0?{contents:{kind:W0.MarkupKind.Markdown,value:e?"1":"0"}}:void 0}var Y0=$(U());async function K0({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_ENUM_HAS_VALUE_BY_IDX"||s?.length!==4)return;let o=await i({document:t,macro:s[0],context:r,position:n}),a=De(s[2].macro);if(typeof a=="number")return await Ep(o,s[1].macro,a,s[3].macro)}async function X0(t){let e=await K0(t,x);return e!==void 0?{contents:{kind:Y0.MarkupKind.Markdown,value:e?"1":"0"}}:void 0}var Z0=$(U());async function J0(t,e,r,n){let i=await dr(t,e,n);if(i===void 0)return!1;if(r=typeof r=="number"?r:De(r??"0"),typeof r=="number")return Array.isArray(i)?i.length<r:r===0}async function Q0({document:t,macro:e,context:r,position:n},i){let s=e.args;return e.macro!=="DT_PROP_HAS_IDX"||s?.length!==3?void 0:!!await J0(await i({document:t,macro:s[0],context:r,position:n}),s[1].macro,s[2].macro,r)}async function eI(t){let e=await Q0(t,x);return e===void 0?void 0:{contents:{kind:Z0.MarkupKind.Markdown,value:e?"1":"0"}}}var nI=$(U());async function tI(t,e,r,n){let i=t?.properties.find(u=>ee(u.name)===e),s=i?.parent.nodeType;if(!s||!(s instanceof Nt)||await dr(t,e,n)===void 0)return;let a=i.nexusMapsTo.at(0)?.specifierSpace,l=(a?i.parent.getProperty(`${a}-names`)?.ast.quickValues:void 0)?.findIndex(u=>typeof u=="string"&&u.toLowerCase()===r)??-1;return l===-1?void 0:l}async function rI({document:t,macro:e,context:r,position:n},i){let s=e.args;return e.macro!=="DT_PROP_HAS_NAME"||s?.length!==3?void 0:!!await tI(await i({document:t,macro:s[0],context:r,position:n}),s[1].macro,s[2].macro,r)}async function iI(t){let e=await rI(t,x);return e===void 0?void 0:{contents:{kind:nI.MarkupKind.Markdown,value:e?"1":"0"}}}async function sI(t){let e=await Qf(t);if(e)return{contents:e.toMarkupContent(t.context.macros)}}var aI=$(U());async function oI({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_PROP_LEN"||s?.length!==2)return;let o=await i({document:t,macro:s[0],context:r,position:n});return o?fp(o,s[1].macro):void 0}async function cI(t){let e=await oI(t,x);return e?{contents:{kind:aI.MarkupKind.Markdown,value:e.toString()}}:void 0}var lI=$(U());async function uI(t){let e=await pp(t,x);return e instanceof X?st(t.context,e):e?{contents:{kind:lI.MarkupKind.Markdown,value:e.toString()}}:void 0}var vT=$(U());async function dI(t,e,r){let n=await dr(t,e,r);if(n===!0)return!0;if(!n)return;let i=n.at(-1);if(i)return n.length===1&&n[0]instanceof X?n[0]:i}async function fI({document:t,macro:e,context:r,position:n},i){if(!(e.macro!=="DT_PROP_LAST"||e.args?.length!==2))return dI(await i({document:t,macro:e.args[0],context:r,position:n}),e.args[1].macro,r)}async function pI(t){let e=await fI(t,x);if(e===!0)return{contents:{kind:vT.MarkupKind.Markdown,value:"1"}};if(e)return e instanceof X?{contents:e.toMarkupContent(t.context.macros)}:{contents:{kind:vT.MarkupKind.Markdown,value:e.toString()}}}var mI=$(U());async function hI({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_STRING_TOKEN"||s?.length!==2)return;let o=await i({document:t,macro:s[0],context:r,position:n});return o?la(o,s[1].macro):void 0}async function gI(t){let e=await hI(t,x);if(e)return{contents:{kind:mI.MarkupKind.Markdown,value:e.toString()}}}var TI=$(U());async function Dp(t,e,r){if(!t)return;let i=t?.properties.find(s=>ee(s.name)===e)?.ast.getFlatAstValues();if(!(!i||i.length<=1)&&i[r]instanceof ne)return ee(i[r].value)}async function yI({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_STRING_TOKEN_BY_IDX"||s?.length!==3)return;let o=await i({document:t,macro:s[0],context:r,position:n}),a=De(s[2].macro);if(typeof a=="number")return o?Dp(o,s[1].macro,a):void 0}async function vI(t){let e=await yI(t,x);if(e)return{contents:{kind:TI.MarkupKind.Markdown,value:e.toString()}}}var bI=$(U());async function _I(t){let e=await hp(t,x);if(e)return e instanceof X?st(t.context,e):{contents:{kind:bI.MarkupKind.Markdown,value:e.toString()}}}var kI=$(U());async function SI(t,e,r){if(!t)return;let i=t?.properties.find(s=>ee(s.name)===e)?.ast.getFlatAstValues();if(!(!i||i.length<=1)&&i[r]instanceof ne)return i[r].value}async function NI({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_STRING_UNQUOTED_BY_IDX"||s?.length!==3)return;let o=await i({document:t,macro:s[0],context:r,position:n}),a=De(s[2].macro);if(typeof a=="number")return o?SI(o,s[1].macro,a):void 0}async function RI(t){let e=await NI(t,x);if(e)return{contents:{kind:kI.MarkupKind.Markdown,value:e.toString()}}}var wI=$(U());async function PI({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_STRING_UNQUOTED"||s?.length!==2)return;let o=await i({document:t,macro:s[0],context:r,position:n});return o?mp(o,s[1].macro):void 0}async function EI(t){let e=await PI(t,x);if(e)return{contents:{kind:wI.MarkupKind.Markdown,value:e.toString()}}}var DI=$(U());async function CI(t){let e=await gp(t,x);if(e)return e instanceof X?st(t.context,e):{contents:{kind:DI.MarkupKind.Markdown,value:e.toString()}}}var OI=$(U());async function AI(t,e,r){return(await Dp(t,e,r))?.toUpperCase()}async function II({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_STRING_UPPER_TOKEN_BY_IDX"||s?.length!==3)return;let o=await i({document:t,macro:s[0],context:r,position:n}),a=De(s[2].macro);if(typeof a=="number")return o?AI(o,s[1].macro,a):void 0}async function MI(t){let e=await II(t,x);if(e)return{contents:{kind:OI.MarkupKind.Markdown,value:e.toString()}}}var LI=$(U());async function xI({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_STRING_UPPER_TOKEN"||s?.length!==2)return;let o=await i({document:t,macro:s[0],context:r,position:n});return o?yp(o,s[1].macro):void 0}async function qI(t){let e=await xI(t,x);if(e)return{contents:{kind:LI.MarkupKind.Markdown,value:e.toString()}}}var $I=$(U());async function BI(t){let e=await Tp(t,x);if(e)return e instanceof X?st(t.context,e):{contents:{kind:$I.MarkupKind.Markdown,value:e.toString()}}}async function FI(t){let e=await zf(t,x);return e?{contents:e.toMarkupContent(t.context.macros)}:void 0}var HI=$(U());async function jI(t,e){if(!t)return;let r=t.nodeType?.onBus;return r?ee(r)===e:!1}async function UI(t,e){let r=t.macro.args;if(t.macro.macro!=="DT_ON_BUS"||r?.length!==2)return;let n=await e({...t,macro:r[0]});return await jI(n,r[1].macro)}async function VI(t){let e=await UI(t,x);return e!==void 0?{contents:{kind:HI.MarkupKind.Markdown,value:e?"1":"0"}}:void 0}async function zI(t){let e=await Gf(t);return e?{contents:e.toMarkupContent(t.context.macros)}:void 0}var KI=$(U());async function WI(t,e){return!!await Wf(t,e)}async function GI(t){let e=t.macro.args;if(!(t.macro.macro!=="DT_HAS_CHOSEN"||e?.length!==1))return await WI(t.context,e[0].macro)}async function YI(t){let e=await GI(t);return e!==void 0?{contents:{kind:KI.MarkupKind.Markdown,value:e?"1":"0"}}:void 0}async function cH(t){return[FI,VI,zI,YI,DA,CA,MA,b0,xA,LA,BA,sI,g0,ZA,WA,UA,GA,JA,QA,r0].reduce((e,r)=>e.then(n=>n||r(t)),Promise.resolve(void 0))}async function lH(t){return[X0,G0,s0,x0,$0,F0,c0,P0,D0,A0,k0,l0,u0,_0,O0,f0,U0,m0,H0,eI,iI,d0,pI,cI,uI,p0,vI,gI,_I,RI,EI,CI,MI,qI,BI].reduce((e,r)=>e.then(n=>n||r(t)),Promise.resolve(void 0))}async function XI(t,e,r){if(!r)return;let n=wi(r,t.position);return JI(n,t.position,e,r)}async function JI(t,e,r,n){if(!t?.macro)return;let i=await cH({position:e,context:r,document:n,macro:t})||await lH({position:e,context:r,document:n,macro:t});if(i)return i;let s=await x({document:n,macro:t,context:r,position:e});if(s)return{contents:s.toMarkupContent(r.macros)};let o=await os(n,t.macro,e,r);if(o)return JI(o[0],o[1],r,n)}var vS=require("path"),bS=require("fs");var TO=$(uO(),1);var Kc=t=>{if(typeof t!="string")throw new TypeError("invalid pattern");if(t.length>65536)throw new TypeError("pattern is too long")};var yH={"[:alnum:]":["\\p{L}\\p{Nl}\\p{Nd}",!0],"[:alpha:]":["\\p{L}\\p{Nl}",!0],"[:ascii:]":["\\x00-\\x7f",!1],"[:blank:]":["\\p{Zs}\\t",!0],"[:cntrl:]":["\\p{Cc}",!0],"[:digit:]":["\\p{Nd}",!0],"[:graph:]":["\\p{Z}\\p{C}",!0,!0],"[:lower:]":["\\p{Ll}",!0],"[:print:]":["\\p{C}",!0],"[:punct:]":["\\p{P}",!0],"[:space:]":["\\p{Z}\\t\\r\\n\\v\\f",!0],"[:upper:]":["\\p{Lu}",!0],"[:word:]":["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}",!0],"[:xdigit:]":["A-Fa-f0-9",!1]},Yc=t=>t.replace(/[[\]\\-]/g,"\\$&"),TH=t=>t.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),dO=t=>t.join(""),fO=(t,e)=>{let r=e;if(t.charAt(r)!=="[")throw new Error("not in a brace expression");let n=[],i=[],s=r+1,o=!1,a=!1,c=!1,l=!1,u=r,d="";e:for(;s<t.length;){let h=t.charAt(s);if((h==="!"||h==="^")&&s===r+1){l=!0,s++;continue}if(h==="]"&&o&&!c){u=s+1;break}if(o=!0,h==="\\"&&!c){c=!0,s++;continue}if(h==="["&&!c){for(let[T,[S,_,v]]of Object.entries(yH))if(t.startsWith(T,s)){if(d)return["$.",!1,t.length-r,!0];s+=T.length,v?i.push(S):n.push(S),a=a||_;continue e}}if(c=!1,d){h>d?n.push(Yc(d)+"-"+Yc(h)):h===d&&n.push(Yc(h)),d="",s++;continue}if(t.startsWith("-]",s+1)){n.push(Yc(h+"-")),s+=2;continue}if(t.startsWith("-",s+1)){d=h,s+=2;continue}n.push(Yc(h)),s++}if(u<s)return["",!1,0,!1];if(!n.length&&!i.length)return["$.",!1,t.length-r,!0];if(i.length===0&&n.length===1&&/^\\?.$/.test(n[0])&&!l){let h=n[0].length===2?n[0].slice(-1):n[0];return[TH(h),!1,u-r,!1]}let f="["+(l?"^":"")+dO(n)+"]",p="["+(l?"":"^")+dO(i)+"]";return[n.length&&i.length?"("+f+"|"+p+")":n.length?f:p,a,u-r,!0]};var qn=(t,{windowsPathsNoEscape:e=!1}={})=>e?t.replace(/\[([^\/\\])\]/g,"$1"):t.replace(/((?!\\).|^)\[([^\/\\])\]/g,"$1$2").replace(/\\([^\/])/g,"$1");var vH=new Set(["!","?","+","*","@"]),pO=t=>vH.has(t),bH="(?!(?:^|/)\\.\\.?(?:$|/))",Cp="(?!\\.)",_H=new Set(["[","."]),SH=new Set(["..","."]),NH=new Set("().*{}+?[]^$\\!"),kH=t=>t.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),ST="[^/]",hO=ST+"*?",mO=ST+"+?",fa=class t{type;#e;#t;#n=!1;#r=[];#o;#f;#a;#d=!1;#c;#l;#s=!1;constructor(e,r,n={}){this.type=e,e&&(this.#t=!0),this.#o=r,this.#e=this.#o?this.#o.#e:this,this.#c=this.#e===this?n:this.#e.#c,this.#a=this.#e===this?[]:this.#e.#a,e==="!"&&!this.#e.#d&&this.#a.push(this),this.#f=this.#o?this.#o.#r.length:0}get hasMagic(){if(this.#t!==void 0)return this.#t;for(let e of this.#r)if(typeof e!="string"&&(e.type||e.hasMagic))return this.#t=!0;return this.#t}toString(){return this.#l!==void 0?this.#l:this.type?this.#l=this.type+"("+this.#r.map(e=>String(e)).join("|")+")":this.#l=this.#r.map(e=>String(e)).join("")}#y(){if(this!==this.#e)throw new Error("should only call on root");if(this.#d)return this;this.toString(),this.#d=!0;let e;for(;e=this.#a.pop();){if(e.type!=="!")continue;let r=e,n=r.#o;for(;n;){for(let i=r.#f+1;!n.type&&i<n.#r.length;i++)for(let s of e.#r){if(typeof s=="string")throw new Error("string part in extglob AST??");s.copyIn(n.#r[i])}r=n,n=r.#o}}return this}push(...e){for(let r of e)if(r!==""){if(typeof r!="string"&&!(r instanceof t&&r.#o===this))throw new Error("invalid part: "+r);this.#r.push(r)}}toJSON(){let e=this.type===null?this.#r.slice().map(r=>typeof r=="string"?r:r.toJSON()):[this.type,...this.#r.map(r=>r.toJSON())];return this.isStart()&&!this.type&&e.unshift([]),this.isEnd()&&(this===this.#e||this.#e.#d&&this.#o?.type==="!")&&e.push({}),e}isStart(){if(this.#e===this)return!0;if(!this.#o?.isStart())return!1;if(this.#f===0)return!0;let e=this.#o;for(let r=0;r<this.#f;r++){let n=e.#r[r];if(!(n instanceof t&&n.type==="!"))return!1}return!0}isEnd(){if(this.#e===this||this.#o?.type==="!")return!0;if(!this.#o?.isEnd())return!1;if(!this.type)return this.#o?.isEnd();let e=this.#o?this.#o.#r.length:0;return this.#f===e-1}copyIn(e){typeof e=="string"?this.push(e):this.push(e.clone(this))}clone(e){let r=new t(this.type,e);for(let n of this.#r)r.copyIn(n);return r}static#T(e,r,n,i){let s=!1,o=!1,a=-1,c=!1;if(r.type===null){let p=n,g="";for(;p<e.length;){let h=e.charAt(p++);if(s||h==="\\"){s=!s,g+=h;continue}if(o){p===a+1?(h==="^"||h==="!")&&(c=!0):h==="]"&&!(p===a+2&&c)&&(o=!1),g+=h;continue}else if(h==="["){o=!0,a=p,c=!1,g+=h;continue}if(!i.noext&&pO(h)&&e.charAt(p)==="("){r.push(g),g="";let T=new t(h,r);p=t.#T(e,T,p,i),r.push(T);continue}g+=h}return r.push(g),p}let l=n+1,u=new t(null,r),d=[],f="";for(;l<e.length;){let p=e.charAt(l++);if(s||p==="\\"){s=!s,f+=p;continue}if(o){l===a+1?(p==="^"||p==="!")&&(c=!0):p==="]"&&!(l===a+2&&c)&&(o=!1),f+=p;continue}else if(p==="["){o=!0,a=l,c=!1,f+=p;continue}if(pO(p)&&e.charAt(l)==="("){u.push(f),f="";let g=new t(p,u);u.push(g),l=t.#T(e,g,l,i);continue}if(p==="|"){u.push(f),f="",d.push(u),u=new t(null,r);continue}if(p===")")return f===""&&r.#r.length===0&&(r.#s=!0),u.push(f),f="",r.push(...d,u),l;f+=p}return r.type=null,r.#t=void 0,r.#r=[e.substring(n-1)],l}static fromGlob(e,r={}){let n=new t(null,void 0,r);return t.#T(e,n,0,r),n}toMMPattern(){if(this!==this.#e)return this.#e.toMMPattern();let e=this.toString(),[r,n,i,s]=this.toRegExpSource();if(!(i||this.#t||this.#c.nocase&&!this.#c.nocaseMagicOnly&&e.toUpperCase()!==e.toLowerCase()))return n;let a=(this.#c.nocase?"i":"")+(s?"u":"");return Object.assign(new RegExp(`^${r}$`,a),{_src:r,_glob:e})}get options(){return this.#c}toRegExpSource(e){let r=e??!!this.#c.dot;if(this.#e===this&&this.#y(),!this.type){let c=this.isStart()&&this.isEnd(),l=this.#r.map(p=>{let[g,h,T,S]=typeof p=="string"?t.#p(p,this.#t,c):p.toRegExpSource(e);return this.#t=this.#t||T,this.#n=this.#n||S,g}).join(""),u="";if(this.isStart()&&typeof this.#r[0]=="string"&&!(this.#r.length===1&&SH.has(this.#r[0]))){let g=_H,h=r&&g.has(l.charAt(0))||l.startsWith("\\.")&&g.has(l.charAt(2))||l.startsWith("\\.\\.")&&g.has(l.charAt(4)),T=!r&&!e&&g.has(l.charAt(0));u=h?bH:T?Cp:""}let d="";return this.isEnd()&&this.#e.#d&&this.#o?.type==="!"&&(d="(?:$|\\/)"),[u+l+d,qn(l),this.#t=!!this.#t,this.#n]}let n=this.type==="*"||this.type==="+",i=this.type==="!"?"(?:(?!(?:":"(?:",s=this.#h(r);if(this.isStart()&&this.isEnd()&&!s&&this.type!=="!"){let c=this.toString();return this.#r=[c],this.type=null,this.#t=void 0,[c,qn(this.toString()),!1,!1]}let o=!n||e||r||!Cp?"":this.#h(!0);o===s&&(o=""),o&&(s=`(?:${s})(?:${o})*?`);let a="";if(this.type==="!"&&this.#s)a=(this.isStart()&&!r?Cp:"")+mO;else{let c=this.type==="!"?"))"+(this.isStart()&&!r&&!e?Cp:"")+hO+")":this.type==="@"?")":this.type==="?"?")?":this.type==="+"&&o?")":this.type==="*"&&o?")?":`)${this.type}`;a=i+s+c}return[a,qn(s),this.#t=!!this.#t,this.#n]}#h(e){return this.#r.map(r=>{if(typeof r=="string")throw new Error("string type in extglob ast??");let[n,i,s,o]=r.toRegExpSource(e);return this.#n=this.#n||o,n}).filter(r=>!(this.isStart()&&this.isEnd())||!!r).join("|")}static#p(e,r,n=!1){let i=!1,s="",o=!1;for(let a=0;a<e.length;a++){let c=e.charAt(a);if(i){i=!1,s+=(NH.has(c)?"\\":"")+c;continue}if(c==="\\"){a===e.length-1?s+="\\\\":i=!0;continue}if(c==="["){let[l,u,d,f]=fO(e,a);if(d){s+=l,o=o||u,a+=d-1,r=r||f;continue}}if(c==="*"){n&&e==="*"?s+=mO:s+=hO,r=!0;continue}if(c==="?"){s+=ST,r=!0;continue}s+=kH(c)}return[s,qn(e),!!r,o]}};var pa=(t,{windowsPathsNoEscape:e=!1}={})=>e?t.replace(/[?*()[\]]/g,"[$&]"):t.replace(/[?*()[\]\\]/g,"\\$&");var _r=(t,e,r={})=>(Kc(e),!r.nocomment&&e.charAt(0)==="#"?!1:new Yr(e,r).match(t)),RH=/^\*+([^+@!?\*\[\(]*)$/,PH=t=>e=>!e.startsWith(".")&&e.endsWith(t),wH=t=>e=>e.endsWith(t),EH=t=>(t=t.toLowerCase(),e=>!e.startsWith(".")&&e.toLowerCase().endsWith(t)),DH=t=>(t=t.toLowerCase(),e=>e.toLowerCase().endsWith(t)),CH=/^\*+\.\*+$/,AH=t=>!t.startsWith(".")&&t.includes("."),IH=t=>t!=="."&&t!==".."&&t.includes("."),OH=/^\.\*+$/,MH=t=>t!=="."&&t!==".."&&t.startsWith("."),xH=/^\*+$/,LH=t=>t.length!==0&&!t.startsWith("."),qH=t=>t.length!==0&&t!=="."&&t!=="..",$H=/^\?+([^+@!?\*\[\(]*)?$/,BH=([t,e=""])=>{let r=vO([t]);return e?(e=e.toLowerCase(),n=>r(n)&&n.toLowerCase().endsWith(e)):r},FH=([t,e=""])=>{let r=bO([t]);return e?(e=e.toLowerCase(),n=>r(n)&&n.toLowerCase().endsWith(e)):r},jH=([t,e=""])=>{let r=bO([t]);return e?n=>r(n)&&n.endsWith(e):r},UH=([t,e=""])=>{let r=vO([t]);return e?n=>r(n)&&n.endsWith(e):r},vO=([t])=>{let e=t.length;return r=>r.length===e&&!r.startsWith(".")},bO=([t])=>{let e=t.length;return r=>r.length===e&&r!=="."&&r!==".."},_O=typeof process=="object"&&process?typeof process.env=="object"&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:"posix",gO={win32:{sep:"\\"},posix:{sep:"/"}},HH=_O==="win32"?gO.win32.sep:gO.posix.sep;_r.sep=HH;var Zt=Symbol("globstar **");_r.GLOBSTAR=Zt;var VH="[^/]",zH=VH+"*?",WH="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?",GH="(?:(?!(?:\\/|^)\\.).)*?",KH=(t,e={})=>r=>_r(r,t,e);_r.filter=KH;var hn=(t,e={})=>Object.assign({},t,e),YH=t=>{if(!t||typeof t!="object"||!Object.keys(t).length)return _r;let e=_r;return Object.assign((n,i,s={})=>e(n,i,hn(t,s)),{Minimatch:class extends e.Minimatch{constructor(i,s={}){super(i,hn(t,s))}static defaults(i){return e.defaults(hn(t,i)).Minimatch}},AST:class extends e.AST{constructor(i,s,o={}){super(i,s,hn(t,o))}static fromGlob(i,s={}){return e.AST.fromGlob(i,hn(t,s))}},unescape:(n,i={})=>e.unescape(n,hn(t,i)),escape:(n,i={})=>e.escape(n,hn(t,i)),filter:(n,i={})=>e.filter(n,hn(t,i)),defaults:n=>e.defaults(hn(t,n)),makeRe:(n,i={})=>e.makeRe(n,hn(t,i)),braceExpand:(n,i={})=>e.braceExpand(n,hn(t,i)),match:(n,i,s={})=>e.match(n,i,hn(t,s)),sep:e.sep,GLOBSTAR:Zt})};_r.defaults=YH;var SO=(t,e={})=>(Kc(t),e.nobrace||!/\{(?:(?!\{).)*\}/.test(t)?[t]:(0,TO.default)(t));_r.braceExpand=SO;var XH=(t,e={})=>new Yr(t,e).makeRe();_r.makeRe=XH;var JH=(t,e,r={})=>{let n=new Yr(e,r);return t=t.filter(i=>n.match(i)),n.options.nonull&&!t.length&&t.push(e),t};_r.match=JH;var yO=/[?*]|[+@!]\(.*?\)|\[|\]/,QH=t=>t.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),Yr=class{options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;nocase;isWindows;platform;windowsNoMagicRoot;regexp;constructor(e,r={}){Kc(e),r=r||{},this.options=r,this.pattern=e,this.platform=r.platform||_O,this.isWindows=this.platform==="win32",this.windowsPathsNoEscape=!!r.windowsPathsNoEscape||r.allowWindowsEscape===!1,this.windowsPathsNoEscape&&(this.pattern=this.pattern.replace(/\\/g,"/")),this.preserveMultipleSlashes=!!r.preserveMultipleSlashes,this.regexp=null,this.negate=!1,this.nonegate=!!r.nonegate,this.comment=!1,this.empty=!1,this.partial=!!r.partial,this.nocase=!!this.options.nocase,this.windowsNoMagicRoot=r.windowsNoMagicRoot!==void 0?r.windowsNoMagicRoot:!!(this.isWindows&&this.nocase),this.globSet=[],this.globParts=[],this.set=[],this.make()}hasMagic(){if(this.options.magicalBraces&&this.set.length>1)return!0;for(let e of this.set)for(let r of e)if(typeof r!="string")return!0;return!1}debug(...e){}make(){let e=this.pattern,r=this.options;if(!r.nocomment&&e.charAt(0)==="#"){this.comment=!0;return}if(!e){this.empty=!0;return}this.parseNegate(),this.globSet=[...new Set(this.braceExpand())],r.debug&&(this.debug=(...s)=>console.error(...s)),this.debug(this.pattern,this.globSet);let n=this.globSet.map(s=>this.slashSplit(s));this.globParts=this.preprocess(n),this.debug(this.pattern,this.globParts);let i=this.globParts.map((s,o,a)=>{if(this.isWindows&&this.windowsNoMagicRoot){let c=s[0]===""&&s[1]===""&&(s[2]==="?"||!yO.test(s[2]))&&!yO.test(s[3]),l=/^[a-z]:/i.test(s[0]);if(c)return[...s.slice(0,4),...s.slice(4).map(u=>this.parse(u))];if(l)return[s[0],...s.slice(1).map(u=>this.parse(u))]}return s.map(c=>this.parse(c))});if(this.debug(this.pattern,i),this.set=i.filter(s=>s.indexOf(!1)===-1),this.isWindows)for(let s=0;s<this.set.length;s++){let o=this.set[s];o[0]===""&&o[1]===""&&this.globParts[s][2]==="?"&&typeof o[3]=="string"&&/^[a-z]:$/i.test(o[3])&&(o[2]="?")}this.debug(this.pattern,this.set)}preprocess(e){if(this.options.noglobstar)for(let n=0;n<e.length;n++)for(let i=0;i<e[n].length;i++)e[n][i]==="**"&&(e[n][i]="*");let{optimizationLevel:r=1}=this.options;return r>=2?(e=this.firstPhasePreProcess(e),e=this.secondPhasePreProcess(e)):r>=1?e=this.levelOneOptimize(e):e=this.adjascentGlobstarOptimize(e),e}adjascentGlobstarOptimize(e){return e.map(r=>{let n=-1;for(;(n=r.indexOf("**",n+1))!==-1;){let i=n;for(;r[i+1]==="**";)i++;i!==n&&r.splice(n,i-n)}return r})}levelOneOptimize(e){return e.map(r=>(r=r.reduce((n,i)=>{let s=n[n.length-1];return i==="**"&&s==="**"?n:i===".."&&s&&s!==".."&&s!=="."&&s!=="**"?(n.pop(),n):(n.push(i),n)},[]),r.length===0?[""]:r))}levelTwoFileOptimize(e){Array.isArray(e)||(e=this.slashSplit(e));let r=!1;do{if(r=!1,!this.preserveMultipleSlashes){for(let i=1;i<e.length-1;i++){let s=e[i];i===1&&s===""&&e[0]===""||(s==="."||s==="")&&(r=!0,e.splice(i,1),i--)}e[0]==="."&&e.length===2&&(e[1]==="."||e[1]==="")&&(r=!0,e.pop())}let n=0;for(;(n=e.indexOf("..",n+1))!==-1;){let i=e[n-1];i&&i!=="."&&i!==".."&&i!=="**"&&(r=!0,e.splice(n-1,2),n-=2)}}while(r);return e.length===0?[""]:e}firstPhasePreProcess(e){let r=!1;do{r=!1;for(let n of e){let i=-1;for(;(i=n.indexOf("**",i+1))!==-1;){let o=i;for(;n[o+1]==="**";)o++;o>i&&n.splice(i+1,o-i);let a=n[i+1],c=n[i+2],l=n[i+3];if(a!==".."||!c||c==="."||c===".."||!l||l==="."||l==="..")continue;r=!0,n.splice(i,1);let u=n.slice(0);u[i]="**",e.push(u),i--}if(!this.preserveMultipleSlashes){for(let o=1;o<n.length-1;o++){let a=n[o];o===1&&a===""&&n[0]===""||(a==="."||a==="")&&(r=!0,n.splice(o,1),o--)}n[0]==="."&&n.length===2&&(n[1]==="."||n[1]==="")&&(r=!0,n.pop())}let s=0;for(;(s=n.indexOf("..",s+1))!==-1;){let o=n[s-1];if(o&&o!=="."&&o!==".."&&o!=="**"){r=!0;let c=s===1&&n[s+1]==="**"?["."]:[];n.splice(s-1,2,...c),n.length===0&&n.push(""),s-=2}}}}while(r);return e}secondPhasePreProcess(e){for(let r=0;r<e.length-1;r++)for(let n=r+1;n<e.length;n++){let i=this.partsMatch(e[r],e[n],!this.preserveMultipleSlashes);if(i){e[r]=[],e[n]=i;break}}return e.filter(r=>r.length)}partsMatch(e,r,n=!1){let i=0,s=0,o=[],a="";for(;i<e.length&&s<r.length;)if(e[i]===r[s])o.push(a==="b"?r[s]:e[i]),i++,s++;else if(n&&e[i]==="**"&&r[s]===e[i+1])o.push(e[i]),i++;else if(n&&r[s]==="**"&&e[i]===r[s+1])o.push(r[s]),s++;else if(e[i]==="*"&&r[s]&&(this.options.dot||!r[s].startsWith("."))&&r[s]!=="**"){if(a==="b")return!1;a="a",o.push(e[i]),i++,s++}else if(r[s]==="*"&&e[i]&&(this.options.dot||!e[i].startsWith("."))&&e[i]!=="**"){if(a==="a")return!1;a="b",o.push(r[s]),i++,s++}else return!1;return e.length===r.length&&o}parseNegate(){if(this.nonegate)return;let e=this.pattern,r=!1,n=0;for(let i=0;i<e.length&&e.charAt(i)==="!";i++)r=!r,n++;n&&(this.pattern=e.slice(n)),this.negate=r}matchOne(e,r,n=!1){let i=this.options;if(this.isWindows){let h=typeof e[0]=="string"&&/^[a-z]:$/i.test(e[0]),T=!h&&e[0]===""&&e[1]===""&&e[2]==="?"&&/^[a-z]:$/i.test(e[3]),S=typeof r[0]=="string"&&/^[a-z]:$/i.test(r[0]),_=!S&&r[0]===""&&r[1]===""&&r[2]==="?"&&typeof r[3]=="string"&&/^[a-z]:$/i.test(r[3]),v=T?3:h?0:void 0,R=_?3:S?0:void 0;if(typeof v=="number"&&typeof R=="number"){let[D,B]=[e[v],r[R]];D.toLowerCase()===B.toLowerCase()&&(r[R]=D,R>v?r=r.slice(R):v>R&&(e=e.slice(v)))}}let{optimizationLevel:s=1}=this.options;s>=2&&(e=this.levelTwoFileOptimize(e)),this.debug("matchOne",this,{file:e,pattern:r}),this.debug("matchOne",e.length,r.length);for(var o=0,a=0,c=e.length,l=r.length;o<c&&a<l;o++,a++){this.debug("matchOne loop");var u=r[a],d=e[o];if(this.debug(r,u,d),u===!1)return!1;if(u===Zt){this.debug("GLOBSTAR",[r,u,d]);var f=o,p=a+1;if(p===l){for(this.debug("** at the end");o<c;o++)if(e[o]==="."||e[o]===".."||!i.dot&&e[o].charAt(0)===".")return!1;return!0}for(;f<c;){var g=e[f];if(this.debug(`
293
+ `)}}:{contents:{kind:is.Markdown,value:`No node matched compat ${t.macro.args[0].macro}`}}}async function LA(t){let e=await Jf(t,x);if(e)return{contents:e.toMarkupContent(t.context.macros)}}async function qA(t,e){return!!await Kf(t,e)}async function $A({macro:t,context:e}){if(!(t.macro!=="DT_HAS_ALIAS"||t.args?.length!==1))return qA(t.args[0].macro,e)}async function BA(t){let e=await $A(t);if(e!==void 0)return{contents:{kind:is.Markdown,value:e?"1":"0"}}}var jA=$(U());async function zc(t,e){if(t)switch(e){case"Unquoted":return t.fullName;case"Quoted":return`"${t.fullName}"`;case"Token":return ee(t.fullName);case"Upper Token":return ee(t.fullName).toUpperCase()}}async function FA({document:t,macro:e,context:r,position:n},i){if(e.args?.length!==1)return;let s=await i({document:t,macro:e.args[0],context:r,position:n});switch(e.macro){case"DT_NODE_FULL_NAME":return zc(s,"Quoted");case"DT_NODE_FULL_NAME_TOKEN":return zc(s,"Token");case"DT_NODE_FULL_NAME_UNQUOTED":return zc(s,"Unquoted");case"DT_NODE_FULL_NAME_UPPER_TOKEN":return zc(s,"Upper Token")}}async function UA(t){let e=await FA(t,x);if(e)return{contents:{kind:jA.MarkupKind.Markdown,value:e}}}var zA=$(U());async function HA(t){return t?.pathString}async function VA({document:t,macro:e,context:r,position:n},i){if(e.macro!=="DT_NODE_PATH"||e.args?.length!==1)return;let s=await i({document:t,macro:e.args[0],context:r,position:n});return HA(s)}async function WA(t){let e=await VA(t,x);if(e)return{contents:{kind:zA.MarkupKind.Markdown,value:`"${e}"`}}}async function GA(t){let e=await Zf(t);if(e)return{contents:e.toMarkupContent(t.context.macros)}}var XA=$(U());async function KA(t){return t?.labels.map(e=>e.label)}async function YA({document:t,macro:e,context:r,position:n},i){if(e.macro!=="DT_NODELABEL_STRING_ARRAY"||e.args?.length!==1)return;let s=await i({document:t,macro:e.args[0],context:r,position:n});return KA(s)}async function JA(t){let e=await YA(t,x);if(e)return{contents:{kind:XA.MarkupKind.Markdown,value:`{ ${e.map(r=>`"${r}"`).join(", ")} }`}}}async function QA(t){let e=await ep(t,x);if(e)return{contents:e.toMarkupContent(t.context.macros)}}async function ZA(t){let e=await rp(t);if(e)return{contents:e.toMarkupContent(t.context.macros)}}var t0=$(U());async function e0({document:t,macro:e,context:r,position:n},i){if(e.macro!=="DT_SAME_NODE"||e.args?.length!==2)return;if(await r?.getRuntime()){let o=await i({document:t,macro:e.args[0],context:r,position:n}),a=await i({document:t,macro:e.args[1],context:r,position:n});return!!a&&!!o&&a===o}}async function r0(t){let e=await e0(t,x);if(e!==void 0)return{contents:{kind:t0.MarkupKind.Markdown,value:e?"1":"0"}}}var i0=$(U());async function n0({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_ENUM_IDX_BY_IDX"||s?.length!==3)return;let o=await i({document:t,macro:s[0],context:r,position:n}),a=De(s[2].macro);if(typeof a=="number")return await aa(o,s[1].macro,a)}async function s0(t){let e=await n0(t,x);return e?{contents:{kind:i0.MarkupKind.Markdown,value:e.toString()}}:void 0}var a0=$(U());async function o0({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_PHA_BY_IDX"||s?.length!==4)return;let o=await i({document:t,macro:s[0],context:r,position:n}),a=De(s[2].macro);if(typeof a=="number")return as(o,s[1].macro,a,s[3].macro,r)}async function c0(t){let e=await o0(t,x);return e?{contents:{kind:a0.MarkupKind.Markdown,value:e.toString()}}:void 0}async function l0(t){let e=await oi(t,x);if(e)return{contents:e.toMarkupContent(t.context.macros)}}async function u0(t){let e=await lp(t,x);if(e)return{contents:e.toMarkupContent(t.context.macros)}}var Wc=$(U());async function st(t,e){if(e){if(typeof e=="boolean")return{contents:{kind:Wc.MarkupKind.Markdown,value:e?"1":"0"}};if(typeof e=="string")return{contents:{kind:Wc.MarkupKind.Markdown,value:e}};if(e instanceof X)return{contents:e.toMarkupContent(t.macros)};if(e.length===1&&e[0]instanceof X)return{contents:e[0].toMarkupContent(t.macros)};if(e.every(r=>typeof r=="number"))return{contents:{kind:Wc.MarkupKind.Markdown,value:e.length===1?e[0].toString():`{${e.join(", ")}}`}};if(e.every(r=>typeof r=="string"))return{contents:{kind:Wc.MarkupKind.Markdown,value:e.length===1?`"${e[0]}"`:`{${e.map(r=>`"${r}"`).join(", ")}}`}}}}async function d0(t){let e=await Uf(t,x);return st(t.context,e)}var TT=$(U());async function f0(t){let e=await Hf(t,x);if(e===!0)return{contents:{kind:TT.MarkupKind.Markdown,value:"1"}};if(e)return e instanceof X?{contents:e.toMarkupContent(t.context.macros)}:{contents:{kind:TT.MarkupKind.Markdown,value:e.toString()}}}async function p0(t){let e=await oa(t,x);return st(t.context,e)}async function h0({document:t,macro:e,context:r,position:n},i){if(e.macro!=="DT_PROP_BY_PHANDLE_IDX"||e.args?.length!==4)return;let s=await si(await i({document:t,macro:e.args[0],context:r,position:n}),e.args[1].macro,e.args[2].macro);return await dr(s,e.args[3].macro,r)}async function m0(t){return st(t.context,await h0(t,x))}async function g0(t){let e=await np(t);if(e)return{contents:e.toMarkupContent(t.context.macros)}}var v0=$(U());async function y0(t){return t?.nodes.filter(e=>!e.disabled).length??0}async function T0({document:t,macro:e,context:r,position:n},i){if(e.macro!=="DT_CHILD_NUM_STATUS_OKAY"||e.args?.length!==1)return;let s=await i({document:t,macro:e.args[0],context:r,position:n});return y0(s)}async function b0(t){let e=await T0(t,x);return e!==void 0?{contents:{kind:v0.MarkupKind.Markdown,value:e.toString()}}:void 0}async function _0(t){let e=await cs(t,x);if(e)return{contents:e.toMarkupContent(t.context.macros)}}var N0=$(U());async function S0({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_PHA"||s?.length!==3)return;let o=await i({document:t,macro:s[0],context:r,position:n});return as(o,s[1].macro,0,s[2].macro,r)}async function k0(t){let e=await S0(t,x);return e?{contents:{kind:N0.MarkupKind.Markdown,value:e.toString()}}:void 0}var R0=$(U());async function P0(t){let e=await ap(t,x);return e instanceof X?st(t.context,e):e?{contents:{kind:R0.MarkupKind.Markdown,value:e.toString()}}:void 0}var E0=$(U());async function w0({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_PHA_BY_NAME"||s?.length!==4)return;let o=await i({document:t,macro:s[0],context:r,position:n});return as(o,s[1].macro,s[2].macro,s[3].macro,r)}async function D0(t){let e=await w0(t,x);return e?{contents:{kind:E0.MarkupKind.Markdown,value:e.toString()}}:void 0}var C0=$(U());async function A0(t){let e=await cp(t,x);return e instanceof X?st(t.context,e):e?{contents:{kind:C0.MarkupKind.Markdown,value:e.toString()}}:void 0}var I0=$(U());async function O0(t){let e=await up(t,x);return e instanceof X?st(t.context,e):e?{contents:{kind:I0.MarkupKind.Markdown,value:e.toString()}}:void 0}var M0=$(U());async function x0(t){let e=await sp(t,x);return e instanceof X?st(t.context,e):e?{contents:{kind:M0.MarkupKind.Markdown,value:e.toString()}}:void 0}var q0=$(U());async function L0({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_ENUM_IDX"||s?.length!==2)return;let o=await i({document:t,macro:s[0],context:r,position:n});return await aa(o,s[1].macro,0)}async function $0(t){let e=await L0(t,x);return e?{contents:{kind:q0.MarkupKind.Markdown,value:e.toString()}}:void 0}var B0=$(U());async function F0(t){let e=await op(t,x);return e instanceof X?st(t.context,e):e?{contents:{kind:B0.MarkupKind.Markdown,value:e.toString()}}:void 0}async function j0({document:t,macro:e,context:r,position:n},i){if(e.macro!=="DT_PROP_BY_PHANDLE"||e.args?.length!==3)return;let s=await si(await i({document:t,macro:e.args[0],context:r,position:n}),e.args[1].macro);return dr(s,e.args[2].macro,r)}async function U0(t){return st(t.context,await j0(t,x))}async function H0(t){return st(t.context,await dp(t,x))}var W0=$(U());var V0=$(require("util"));async function Ep(t,e,r,n){let i=t?.properties.find(o=>ee(o.name)===e);if(!i)return;let s=i?.ast.quickValues?.at(r);if(s!==void 0)return V0.default.isDeepStrictEqual(De(n),s)}async function z0({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_ENUM_HAS_VALUE"||s?.length!==3)return;let o=await i({document:t,macro:s[0],context:r,position:n});return await Ep(o,s[1].macro,0,s[2].macro)}async function G0(t){let e=await z0(t,x);return e!==void 0?{contents:{kind:W0.MarkupKind.Markdown,value:e?"1":"0"}}:void 0}var Y0=$(U());async function K0({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_ENUM_HAS_VALUE_BY_IDX"||s?.length!==4)return;let o=await i({document:t,macro:s[0],context:r,position:n}),a=De(s[2].macro);if(typeof a=="number")return await Ep(o,s[1].macro,a,s[3].macro)}async function X0(t){let e=await K0(t,x);return e!==void 0?{contents:{kind:Y0.MarkupKind.Markdown,value:e?"1":"0"}}:void 0}var Z0=$(U());async function J0(t,e,r,n){let i=await dr(t,e,n);if(i===void 0)return!1;if(r=typeof r=="number"?r:De(r??"0"),typeof r=="number")return Array.isArray(i)?i.length<r:r===0}async function Q0({document:t,macro:e,context:r,position:n},i){let s=e.args;return e.macro!=="DT_PROP_HAS_IDX"||s?.length!==3?void 0:!!await J0(await i({document:t,macro:s[0],context:r,position:n}),s[1].macro,s[2].macro,r)}async function eI(t){let e=await Q0(t,x);return e===void 0?void 0:{contents:{kind:Z0.MarkupKind.Markdown,value:e?"1":"0"}}}var nI=$(U());async function tI(t,e,r,n){let i=t?.properties.find(u=>ee(u.name)===e),s=i?.parent.nodeType;if(!s||!(s instanceof Nt)||await dr(t,e,n)===void 0)return;let a=i.nexusMapsTo.at(0)?.specifierSpace,l=(a?i.parent.getProperty(`${a}-names`)?.ast.quickValues:void 0)?.findIndex(u=>typeof u=="string"&&u.toLowerCase()===r)??-1;return l===-1?void 0:l}async function rI({document:t,macro:e,context:r,position:n},i){let s=e.args;return e.macro!=="DT_PROP_HAS_NAME"||s?.length!==3?void 0:!!await tI(await i({document:t,macro:s[0],context:r,position:n}),s[1].macro,s[2].macro,r)}async function iI(t){let e=await rI(t,x);return e===void 0?void 0:{contents:{kind:nI.MarkupKind.Markdown,value:e?"1":"0"}}}async function sI(t){let e=await Qf(t);if(e)return{contents:e.toMarkupContent(t.context.macros)}}var aI=$(U());async function oI({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_PROP_LEN"||s?.length!==2)return;let o=await i({document:t,macro:s[0],context:r,position:n});return o?fp(o,s[1].macro):void 0}async function cI(t){let e=await oI(t,x);return e?{contents:{kind:aI.MarkupKind.Markdown,value:e.toString()}}:void 0}var lI=$(U());async function uI(t){let e=await pp(t,x);return e instanceof X?st(t.context,e):e?{contents:{kind:lI.MarkupKind.Markdown,value:e.toString()}}:void 0}var vT=$(U());async function dI(t,e,r){let n=await dr(t,e,r);if(n===!0)return!0;if(!n)return;let i=n.at(-1);if(i)return n.length===1&&n[0]instanceof X?n[0]:i}async function fI({document:t,macro:e,context:r,position:n},i){if(!(e.macro!=="DT_PROP_LAST"||e.args?.length!==2))return dI(await i({document:t,macro:e.args[0],context:r,position:n}),e.args[1].macro,r)}async function pI(t){let e=await fI(t,x);if(e===!0)return{contents:{kind:vT.MarkupKind.Markdown,value:"1"}};if(e)return e instanceof X?{contents:e.toMarkupContent(t.context.macros)}:{contents:{kind:vT.MarkupKind.Markdown,value:e.toString()}}}var mI=$(U());async function hI({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_STRING_TOKEN"||s?.length!==2)return;let o=await i({document:t,macro:s[0],context:r,position:n});return o?la(o,s[1].macro):void 0}async function gI(t){let e=await hI(t,x);if(e)return{contents:{kind:mI.MarkupKind.Markdown,value:e.toString()}}}var TI=$(U());async function Dp(t,e,r){if(!t)return;let i=t?.properties.find(s=>ee(s.name)===e)?.ast.getFlatAstValues();if(!(!i||i.length<=1)&&i[r]instanceof ne)return ee(i[r].value)}async function yI({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_STRING_TOKEN_BY_IDX"||s?.length!==3)return;let o=await i({document:t,macro:s[0],context:r,position:n}),a=De(s[2].macro);if(typeof a=="number")return o?Dp(o,s[1].macro,a):void 0}async function vI(t){let e=await yI(t,x);if(e)return{contents:{kind:TI.MarkupKind.Markdown,value:e.toString()}}}var bI=$(U());async function _I(t){let e=await hp(t,x);if(e)return e instanceof X?st(t.context,e):{contents:{kind:bI.MarkupKind.Markdown,value:e.toString()}}}var kI=$(U());async function SI(t,e,r){if(!t)return;let i=t?.properties.find(s=>ee(s.name)===e)?.ast.getFlatAstValues();if(!(!i||i.length<=1)&&i[r]instanceof ne)return i[r].value}async function NI({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_STRING_UNQUOTED_BY_IDX"||s?.length!==3)return;let o=await i({document:t,macro:s[0],context:r,position:n}),a=De(s[2].macro);if(typeof a=="number")return o?SI(o,s[1].macro,a):void 0}async function RI(t){let e=await NI(t,x);if(e)return{contents:{kind:kI.MarkupKind.Markdown,value:e.toString()}}}var wI=$(U());async function PI({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_STRING_UNQUOTED"||s?.length!==2)return;let o=await i({document:t,macro:s[0],context:r,position:n});return o?mp(o,s[1].macro):void 0}async function EI(t){let e=await PI(t,x);if(e)return{contents:{kind:wI.MarkupKind.Markdown,value:e.toString()}}}var DI=$(U());async function CI(t){let e=await gp(t,x);if(e)return e instanceof X?st(t.context,e):{contents:{kind:DI.MarkupKind.Markdown,value:e.toString()}}}var OI=$(U());async function AI(t,e,r){return(await Dp(t,e,r))?.toUpperCase()}async function II({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_STRING_UPPER_TOKEN_BY_IDX"||s?.length!==3)return;let o=await i({document:t,macro:s[0],context:r,position:n}),a=De(s[2].macro);if(typeof a=="number")return o?AI(o,s[1].macro,a):void 0}async function MI(t){let e=await II(t,x);if(e)return{contents:{kind:OI.MarkupKind.Markdown,value:e.toString()}}}var LI=$(U());async function xI({document:t,macro:e,context:r,position:n},i){let s=e.args;if(e.macro!=="DT_STRING_UPPER_TOKEN"||s?.length!==2)return;let o=await i({document:t,macro:s[0],context:r,position:n});return o?yp(o,s[1].macro):void 0}async function qI(t){let e=await xI(t,x);if(e)return{contents:{kind:LI.MarkupKind.Markdown,value:e.toString()}}}var $I=$(U());async function BI(t){let e=await Tp(t,x);if(e)return e instanceof X?st(t.context,e):{contents:{kind:$I.MarkupKind.Markdown,value:e.toString()}}}async function FI(t){let e=await zf(t,x);return e?{contents:e.toMarkupContent(t.context.macros)}:void 0}var HI=$(U());async function jI(t,e){if(!t)return;let r=t.nodeType?.onBus;return r?ee(r)===e:!1}async function UI(t,e){let r=t.macro.args;if(t.macro.macro!=="DT_ON_BUS"||r?.length!==2)return;let n=await e({...t,macro:r[0]});return await jI(n,r[1].macro)}async function VI(t){let e=await UI(t,x);return e!==void 0?{contents:{kind:HI.MarkupKind.Markdown,value:e?"1":"0"}}:void 0}async function zI(t){let e=await Gf(t);return e?{contents:e.toMarkupContent(t.context.macros)}:void 0}var KI=$(U());async function WI(t,e){return!!await Wf(t,e)}async function GI(t){let e=t.macro.args;if(!(t.macro.macro!=="DT_HAS_CHOSEN"||e?.length!==1))return await WI(t.context,e[0].macro)}async function YI(t){let e=await GI(t);return e!==void 0?{contents:{kind:KI.MarkupKind.Markdown,value:e?"1":"0"}}:void 0}async function cH(t){return[FI,VI,zI,YI,DA,CA,MA,b0,xA,LA,BA,sI,g0,ZA,WA,UA,GA,JA,QA,r0].reduce((e,r)=>e.then(n=>n||r(t)),Promise.resolve(void 0))}async function lH(t){return[X0,G0,s0,x0,$0,F0,c0,P0,D0,A0,k0,l0,u0,_0,O0,f0,U0,m0,H0,eI,iI,d0,pI,cI,uI,p0,vI,gI,_I,RI,EI,CI,MI,qI,BI].reduce((e,r)=>e.then(n=>n||r(t)),Promise.resolve(void 0))}async function XI(t,e,r){if(!r)return;let n=wi(r,t.position);return JI(n,t.position,e,r)}async function JI(t,e,r,n){if(!t?.macro)return;let i=await cH({position:e,context:r,document:n,macro:t})||await lH({position:e,context:r,document:n,macro:t});if(i)return i;let s=await x({document:n,macro:t,context:r,position:e});if(s)return{contents:s.toMarkupContent(r.macros)};let o=await os(n,t.macro,e,r);if(o)return JI(o[0],o[1],r,n)}var vS=require("path"),bS=require("fs");var TO=$(uO(),1);var Kc=t=>{if(typeof t!="string")throw new TypeError("invalid pattern");if(t.length>65536)throw new TypeError("pattern is too long")};var yH={"[:alnum:]":["\\p{L}\\p{Nl}\\p{Nd}",!0],"[:alpha:]":["\\p{L}\\p{Nl}",!0],"[:ascii:]":["\\x00-\\x7f",!1],"[:blank:]":["\\p{Zs}\\t",!0],"[:cntrl:]":["\\p{Cc}",!0],"[:digit:]":["\\p{Nd}",!0],"[:graph:]":["\\p{Z}\\p{C}",!0,!0],"[:lower:]":["\\p{Ll}",!0],"[:print:]":["\\p{C}",!0],"[:punct:]":["\\p{P}",!0],"[:space:]":["\\p{Z}\\t\\r\\n\\v\\f",!0],"[:upper:]":["\\p{Lu}",!0],"[:word:]":["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}",!0],"[:xdigit:]":["A-Fa-f0-9",!1]},Yc=t=>t.replace(/[[\]\\-]/g,"\\$&"),TH=t=>t.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),dO=t=>t.join(""),fO=(t,e)=>{let r=e;if(t.charAt(r)!=="[")throw new Error("not in a brace expression");let n=[],i=[],s=r+1,o=!1,a=!1,c=!1,l=!1,u=r,d="";e:for(;s<t.length;){let h=t.charAt(s);if((h==="!"||h==="^")&&s===r+1){l=!0,s++;continue}if(h==="]"&&o&&!c){u=s+1;break}if(o=!0,h==="\\"&&!c){c=!0,s++;continue}if(h==="["&&!c){for(let[T,[S,_,v]]of Object.entries(yH))if(t.startsWith(T,s)){if(d)return["$.",!1,t.length-r,!0];s+=T.length,v?i.push(S):n.push(S),a=a||_;continue e}}if(c=!1,d){h>d?n.push(Yc(d)+"-"+Yc(h)):h===d&&n.push(Yc(h)),d="",s++;continue}if(t.startsWith("-]",s+1)){n.push(Yc(h+"-")),s+=2;continue}if(t.startsWith("-",s+1)){d=h,s+=2;continue}n.push(Yc(h)),s++}if(u<s)return["",!1,0,!1];if(!n.length&&!i.length)return["$.",!1,t.length-r,!0];if(i.length===0&&n.length===1&&/^\\?.$/.test(n[0])&&!l){let h=n[0].length===2?n[0].slice(-1):n[0];return[TH(h),!1,u-r,!1]}let f="["+(l?"^":"")+dO(n)+"]",p="["+(l?"":"^")+dO(i)+"]";return[n.length&&i.length?"("+f+"|"+p+")":n.length?f:p,a,u-r,!0]};var qn=(t,{windowsPathsNoEscape:e=!1}={})=>e?t.replace(/\[([^\/\\])\]/g,"$1"):t.replace(/((?!\\).|^)\[([^\/\\])\]/g,"$1$2").replace(/\\([^\/])/g,"$1");var vH=new Set(["!","?","+","*","@"]),pO=t=>vH.has(t),bH="(?!(?:^|/)\\.\\.?(?:$|/))",Cp="(?!\\.)",_H=new Set(["[","."]),SH=new Set(["..","."]),NH=new Set("().*{}+?[]^$\\!"),kH=t=>t.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),ST="[^/]",hO=ST+"*?",mO=ST+"+?",fa=class t{type;#e;#t;#n=!1;#r=[];#o;#f;#a;#d=!1;#c;#l;#s=!1;constructor(e,r,n={}){this.type=e,e&&(this.#t=!0),this.#o=r,this.#e=this.#o?this.#o.#e:this,this.#c=this.#e===this?n:this.#e.#c,this.#a=this.#e===this?[]:this.#e.#a,e==="!"&&!this.#e.#d&&this.#a.push(this),this.#f=this.#o?this.#o.#r.length:0}get hasMagic(){if(this.#t!==void 0)return this.#t;for(let e of this.#r)if(typeof e!="string"&&(e.type||e.hasMagic))return this.#t=!0;return this.#t}toString(){return this.#l!==void 0?this.#l:this.type?this.#l=this.type+"("+this.#r.map(e=>String(e)).join("|")+")":this.#l=this.#r.map(e=>String(e)).join("")}#y(){if(this!==this.#e)throw new Error("should only call on root");if(this.#d)return this;this.toString(),this.#d=!0;let e;for(;e=this.#a.pop();){if(e.type!=="!")continue;let r=e,n=r.#o;for(;n;){for(let i=r.#f+1;!n.type&&i<n.#r.length;i++)for(let s of e.#r){if(typeof s=="string")throw new Error("string part in extglob AST??");s.copyIn(n.#r[i])}r=n,n=r.#o}}return this}push(...e){for(let r of e)if(r!==""){if(typeof r!="string"&&!(r instanceof t&&r.#o===this))throw new Error("invalid part: "+r);this.#r.push(r)}}toJSON(){let e=this.type===null?this.#r.slice().map(r=>typeof r=="string"?r:r.toJSON()):[this.type,...this.#r.map(r=>r.toJSON())];return this.isStart()&&!this.type&&e.unshift([]),this.isEnd()&&(this===this.#e||this.#e.#d&&this.#o?.type==="!")&&e.push({}),e}isStart(){if(this.#e===this)return!0;if(!this.#o?.isStart())return!1;if(this.#f===0)return!0;let e=this.#o;for(let r=0;r<this.#f;r++){let n=e.#r[r];if(!(n instanceof t&&n.type==="!"))return!1}return!0}isEnd(){if(this.#e===this||this.#o?.type==="!")return!0;if(!this.#o?.isEnd())return!1;if(!this.type)return this.#o?.isEnd();let e=this.#o?this.#o.#r.length:0;return this.#f===e-1}copyIn(e){typeof e=="string"?this.push(e):this.push(e.clone(this))}clone(e){let r=new t(this.type,e);for(let n of this.#r)r.copyIn(n);return r}static#T(e,r,n,i){let s=!1,o=!1,a=-1,c=!1;if(r.type===null){let p=n,g="";for(;p<e.length;){let h=e.charAt(p++);if(s||h==="\\"){s=!s,g+=h;continue}if(o){p===a+1?(h==="^"||h==="!")&&(c=!0):h==="]"&&!(p===a+2&&c)&&(o=!1),g+=h;continue}else if(h==="["){o=!0,a=p,c=!1,g+=h;continue}if(!i.noext&&pO(h)&&e.charAt(p)==="("){r.push(g),g="";let T=new t(h,r);p=t.#T(e,T,p,i),r.push(T);continue}g+=h}return r.push(g),p}let l=n+1,u=new t(null,r),d=[],f="";for(;l<e.length;){let p=e.charAt(l++);if(s||p==="\\"){s=!s,f+=p;continue}if(o){l===a+1?(p==="^"||p==="!")&&(c=!0):p==="]"&&!(l===a+2&&c)&&(o=!1),f+=p;continue}else if(p==="["){o=!0,a=l,c=!1,f+=p;continue}if(pO(p)&&e.charAt(l)==="("){u.push(f),f="";let g=new t(p,u);u.push(g),l=t.#T(e,g,l,i);continue}if(p==="|"){u.push(f),f="",d.push(u),u=new t(null,r);continue}if(p===")")return f===""&&r.#r.length===0&&(r.#s=!0),u.push(f),f="",r.push(...d,u),l;f+=p}return r.type=null,r.#t=void 0,r.#r=[e.substring(n-1)],l}static fromGlob(e,r={}){let n=new t(null,void 0,r);return t.#T(e,n,0,r),n}toMMPattern(){if(this!==this.#e)return this.#e.toMMPattern();let e=this.toString(),[r,n,i,s]=this.toRegExpSource();if(!(i||this.#t||this.#c.nocase&&!this.#c.nocaseMagicOnly&&e.toUpperCase()!==e.toLowerCase()))return n;let a=(this.#c.nocase?"i":"")+(s?"u":"");return Object.assign(new RegExp(`^${r}$`,a),{_src:r,_glob:e})}get options(){return this.#c}toRegExpSource(e){let r=e??!!this.#c.dot;if(this.#e===this&&this.#y(),!this.type){let c=this.isStart()&&this.isEnd(),l=this.#r.map(p=>{let[g,h,T,S]=typeof p=="string"?t.#p(p,this.#t,c):p.toRegExpSource(e);return this.#t=this.#t||T,this.#n=this.#n||S,g}).join(""),u="";if(this.isStart()&&typeof this.#r[0]=="string"&&!(this.#r.length===1&&SH.has(this.#r[0]))){let g=_H,h=r&&g.has(l.charAt(0))||l.startsWith("\\.")&&g.has(l.charAt(2))||l.startsWith("\\.\\.")&&g.has(l.charAt(4)),T=!r&&!e&&g.has(l.charAt(0));u=h?bH:T?Cp:""}let d="";return this.isEnd()&&this.#e.#d&&this.#o?.type==="!"&&(d="(?:$|\\/)"),[u+l+d,qn(l),this.#t=!!this.#t,this.#n]}let n=this.type==="*"||this.type==="+",i=this.type==="!"?"(?:(?!(?:":"(?:",s=this.#h(r);if(this.isStart()&&this.isEnd()&&!s&&this.type!=="!"){let c=this.toString();return this.#r=[c],this.type=null,this.#t=void 0,[c,qn(this.toString()),!1,!1]}let o=!n||e||r||!Cp?"":this.#h(!0);o===s&&(o=""),o&&(s=`(?:${s})(?:${o})*?`);let a="";if(this.type==="!"&&this.#s)a=(this.isStart()&&!r?Cp:"")+mO;else{let c=this.type==="!"?"))"+(this.isStart()&&!r&&!e?Cp:"")+hO+")":this.type==="@"?")":this.type==="?"?")?":this.type==="+"&&o?")":this.type==="*"&&o?")?":`)${this.type}`;a=i+s+c}return[a,qn(s),this.#t=!!this.#t,this.#n]}#h(e){return this.#r.map(r=>{if(typeof r=="string")throw new Error("string type in extglob ast??");let[n,i,s,o]=r.toRegExpSource(e);return this.#n=this.#n||o,n}).filter(r=>!(this.isStart()&&this.isEnd())||!!r).join("|")}static#p(e,r,n=!1){let i=!1,s="",o=!1;for(let a=0;a<e.length;a++){let c=e.charAt(a);if(i){i=!1,s+=(NH.has(c)?"\\":"")+c;continue}if(c==="\\"){a===e.length-1?s+="\\\\":i=!0;continue}if(c==="["){let[l,u,d,f]=fO(e,a);if(d){s+=l,o=o||u,a+=d-1,r=r||f;continue}}if(c==="*"){n&&e==="*"?s+=mO:s+=hO,r=!0;continue}if(c==="?"){s+=ST,r=!0;continue}s+=kH(c)}return[s,qn(e),!!r,o]}};var pa=(t,{windowsPathsNoEscape:e=!1}={})=>e?t.replace(/[?*()[\]]/g,"[$&]"):t.replace(/[?*()[\]\\]/g,"\\$&");var _r=(t,e,r={})=>(Kc(e),!r.nocomment&&e.charAt(0)==="#"?!1:new Xr(e,r).match(t)),RH=/^\*+([^+@!?\*\[\(]*)$/,PH=t=>e=>!e.startsWith(".")&&e.endsWith(t),wH=t=>e=>e.endsWith(t),EH=t=>(t=t.toLowerCase(),e=>!e.startsWith(".")&&e.toLowerCase().endsWith(t)),DH=t=>(t=t.toLowerCase(),e=>e.toLowerCase().endsWith(t)),CH=/^\*+\.\*+$/,AH=t=>!t.startsWith(".")&&t.includes("."),IH=t=>t!=="."&&t!==".."&&t.includes("."),OH=/^\.\*+$/,MH=t=>t!=="."&&t!==".."&&t.startsWith("."),xH=/^\*+$/,LH=t=>t.length!==0&&!t.startsWith("."),qH=t=>t.length!==0&&t!=="."&&t!=="..",$H=/^\?+([^+@!?\*\[\(]*)?$/,BH=([t,e=""])=>{let r=vO([t]);return e?(e=e.toLowerCase(),n=>r(n)&&n.toLowerCase().endsWith(e)):r},FH=([t,e=""])=>{let r=bO([t]);return e?(e=e.toLowerCase(),n=>r(n)&&n.toLowerCase().endsWith(e)):r},jH=([t,e=""])=>{let r=bO([t]);return e?n=>r(n)&&n.endsWith(e):r},UH=([t,e=""])=>{let r=vO([t]);return e?n=>r(n)&&n.endsWith(e):r},vO=([t])=>{let e=t.length;return r=>r.length===e&&!r.startsWith(".")},bO=([t])=>{let e=t.length;return r=>r.length===e&&r!=="."&&r!==".."},_O=typeof process=="object"&&process?typeof process.env=="object"&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:"posix",gO={win32:{sep:"\\"},posix:{sep:"/"}},HH=_O==="win32"?gO.win32.sep:gO.posix.sep;_r.sep=HH;var Zt=Symbol("globstar **");_r.GLOBSTAR=Zt;var VH="[^/]",zH=VH+"*?",WH="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?",GH="(?:(?!(?:\\/|^)\\.).)*?",KH=(t,e={})=>r=>_r(r,t,e);_r.filter=KH;var hn=(t,e={})=>Object.assign({},t,e),YH=t=>{if(!t||typeof t!="object"||!Object.keys(t).length)return _r;let e=_r;return Object.assign((n,i,s={})=>e(n,i,hn(t,s)),{Minimatch:class extends e.Minimatch{constructor(i,s={}){super(i,hn(t,s))}static defaults(i){return e.defaults(hn(t,i)).Minimatch}},AST:class extends e.AST{constructor(i,s,o={}){super(i,s,hn(t,o))}static fromGlob(i,s={}){return e.AST.fromGlob(i,hn(t,s))}},unescape:(n,i={})=>e.unescape(n,hn(t,i)),escape:(n,i={})=>e.escape(n,hn(t,i)),filter:(n,i={})=>e.filter(n,hn(t,i)),defaults:n=>e.defaults(hn(t,n)),makeRe:(n,i={})=>e.makeRe(n,hn(t,i)),braceExpand:(n,i={})=>e.braceExpand(n,hn(t,i)),match:(n,i,s={})=>e.match(n,i,hn(t,s)),sep:e.sep,GLOBSTAR:Zt})};_r.defaults=YH;var SO=(t,e={})=>(Kc(t),e.nobrace||!/\{(?:(?!\{).)*\}/.test(t)?[t]:(0,TO.default)(t));_r.braceExpand=SO;var XH=(t,e={})=>new Xr(t,e).makeRe();_r.makeRe=XH;var JH=(t,e,r={})=>{let n=new Xr(e,r);return t=t.filter(i=>n.match(i)),n.options.nonull&&!t.length&&t.push(e),t};_r.match=JH;var yO=/[?*]|[+@!]\(.*?\)|\[|\]/,QH=t=>t.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),Xr=class{options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;nocase;isWindows;platform;windowsNoMagicRoot;regexp;constructor(e,r={}){Kc(e),r=r||{},this.options=r,this.pattern=e,this.platform=r.platform||_O,this.isWindows=this.platform==="win32",this.windowsPathsNoEscape=!!r.windowsPathsNoEscape||r.allowWindowsEscape===!1,this.windowsPathsNoEscape&&(this.pattern=this.pattern.replace(/\\/g,"/")),this.preserveMultipleSlashes=!!r.preserveMultipleSlashes,this.regexp=null,this.negate=!1,this.nonegate=!!r.nonegate,this.comment=!1,this.empty=!1,this.partial=!!r.partial,this.nocase=!!this.options.nocase,this.windowsNoMagicRoot=r.windowsNoMagicRoot!==void 0?r.windowsNoMagicRoot:!!(this.isWindows&&this.nocase),this.globSet=[],this.globParts=[],this.set=[],this.make()}hasMagic(){if(this.options.magicalBraces&&this.set.length>1)return!0;for(let e of this.set)for(let r of e)if(typeof r!="string")return!0;return!1}debug(...e){}make(){let e=this.pattern,r=this.options;if(!r.nocomment&&e.charAt(0)==="#"){this.comment=!0;return}if(!e){this.empty=!0;return}this.parseNegate(),this.globSet=[...new Set(this.braceExpand())],r.debug&&(this.debug=(...s)=>console.error(...s)),this.debug(this.pattern,this.globSet);let n=this.globSet.map(s=>this.slashSplit(s));this.globParts=this.preprocess(n),this.debug(this.pattern,this.globParts);let i=this.globParts.map((s,o,a)=>{if(this.isWindows&&this.windowsNoMagicRoot){let c=s[0]===""&&s[1]===""&&(s[2]==="?"||!yO.test(s[2]))&&!yO.test(s[3]),l=/^[a-z]:/i.test(s[0]);if(c)return[...s.slice(0,4),...s.slice(4).map(u=>this.parse(u))];if(l)return[s[0],...s.slice(1).map(u=>this.parse(u))]}return s.map(c=>this.parse(c))});if(this.debug(this.pattern,i),this.set=i.filter(s=>s.indexOf(!1)===-1),this.isWindows)for(let s=0;s<this.set.length;s++){let o=this.set[s];o[0]===""&&o[1]===""&&this.globParts[s][2]==="?"&&typeof o[3]=="string"&&/^[a-z]:$/i.test(o[3])&&(o[2]="?")}this.debug(this.pattern,this.set)}preprocess(e){if(this.options.noglobstar)for(let n=0;n<e.length;n++)for(let i=0;i<e[n].length;i++)e[n][i]==="**"&&(e[n][i]="*");let{optimizationLevel:r=1}=this.options;return r>=2?(e=this.firstPhasePreProcess(e),e=this.secondPhasePreProcess(e)):r>=1?e=this.levelOneOptimize(e):e=this.adjascentGlobstarOptimize(e),e}adjascentGlobstarOptimize(e){return e.map(r=>{let n=-1;for(;(n=r.indexOf("**",n+1))!==-1;){let i=n;for(;r[i+1]==="**";)i++;i!==n&&r.splice(n,i-n)}return r})}levelOneOptimize(e){return e.map(r=>(r=r.reduce((n,i)=>{let s=n[n.length-1];return i==="**"&&s==="**"?n:i===".."&&s&&s!==".."&&s!=="."&&s!=="**"?(n.pop(),n):(n.push(i),n)},[]),r.length===0?[""]:r))}levelTwoFileOptimize(e){Array.isArray(e)||(e=this.slashSplit(e));let r=!1;do{if(r=!1,!this.preserveMultipleSlashes){for(let i=1;i<e.length-1;i++){let s=e[i];i===1&&s===""&&e[0]===""||(s==="."||s==="")&&(r=!0,e.splice(i,1),i--)}e[0]==="."&&e.length===2&&(e[1]==="."||e[1]==="")&&(r=!0,e.pop())}let n=0;for(;(n=e.indexOf("..",n+1))!==-1;){let i=e[n-1];i&&i!=="."&&i!==".."&&i!=="**"&&(r=!0,e.splice(n-1,2),n-=2)}}while(r);return e.length===0?[""]:e}firstPhasePreProcess(e){let r=!1;do{r=!1;for(let n of e){let i=-1;for(;(i=n.indexOf("**",i+1))!==-1;){let o=i;for(;n[o+1]==="**";)o++;o>i&&n.splice(i+1,o-i);let a=n[i+1],c=n[i+2],l=n[i+3];if(a!==".."||!c||c==="."||c===".."||!l||l==="."||l==="..")continue;r=!0,n.splice(i,1);let u=n.slice(0);u[i]="**",e.push(u),i--}if(!this.preserveMultipleSlashes){for(let o=1;o<n.length-1;o++){let a=n[o];o===1&&a===""&&n[0]===""||(a==="."||a==="")&&(r=!0,n.splice(o,1),o--)}n[0]==="."&&n.length===2&&(n[1]==="."||n[1]==="")&&(r=!0,n.pop())}let s=0;for(;(s=n.indexOf("..",s+1))!==-1;){let o=n[s-1];if(o&&o!=="."&&o!==".."&&o!=="**"){r=!0;let c=s===1&&n[s+1]==="**"?["."]:[];n.splice(s-1,2,...c),n.length===0&&n.push(""),s-=2}}}}while(r);return e}secondPhasePreProcess(e){for(let r=0;r<e.length-1;r++)for(let n=r+1;n<e.length;n++){let i=this.partsMatch(e[r],e[n],!this.preserveMultipleSlashes);if(i){e[r]=[],e[n]=i;break}}return e.filter(r=>r.length)}partsMatch(e,r,n=!1){let i=0,s=0,o=[],a="";for(;i<e.length&&s<r.length;)if(e[i]===r[s])o.push(a==="b"?r[s]:e[i]),i++,s++;else if(n&&e[i]==="**"&&r[s]===e[i+1])o.push(e[i]),i++;else if(n&&r[s]==="**"&&e[i]===r[s+1])o.push(r[s]),s++;else if(e[i]==="*"&&r[s]&&(this.options.dot||!r[s].startsWith("."))&&r[s]!=="**"){if(a==="b")return!1;a="a",o.push(e[i]),i++,s++}else if(r[s]==="*"&&e[i]&&(this.options.dot||!e[i].startsWith("."))&&e[i]!=="**"){if(a==="a")return!1;a="b",o.push(r[s]),i++,s++}else return!1;return e.length===r.length&&o}parseNegate(){if(this.nonegate)return;let e=this.pattern,r=!1,n=0;for(let i=0;i<e.length&&e.charAt(i)==="!";i++)r=!r,n++;n&&(this.pattern=e.slice(n)),this.negate=r}matchOne(e,r,n=!1){let i=this.options;if(this.isWindows){let h=typeof e[0]=="string"&&/^[a-z]:$/i.test(e[0]),T=!h&&e[0]===""&&e[1]===""&&e[2]==="?"&&/^[a-z]:$/i.test(e[3]),S=typeof r[0]=="string"&&/^[a-z]:$/i.test(r[0]),_=!S&&r[0]===""&&r[1]===""&&r[2]==="?"&&typeof r[3]=="string"&&/^[a-z]:$/i.test(r[3]),v=T?3:h?0:void 0,R=_?3:S?0:void 0;if(typeof v=="number"&&typeof R=="number"){let[D,B]=[e[v],r[R]];D.toLowerCase()===B.toLowerCase()&&(r[R]=D,R>v?r=r.slice(R):v>R&&(e=e.slice(v)))}}let{optimizationLevel:s=1}=this.options;s>=2&&(e=this.levelTwoFileOptimize(e)),this.debug("matchOne",this,{file:e,pattern:r}),this.debug("matchOne",e.length,r.length);for(var o=0,a=0,c=e.length,l=r.length;o<c&&a<l;o++,a++){this.debug("matchOne loop");var u=r[a],d=e[o];if(this.debug(r,u,d),u===!1)return!1;if(u===Zt){this.debug("GLOBSTAR",[r,u,d]);var f=o,p=a+1;if(p===l){for(this.debug("** at the end");o<c;o++)if(e[o]==="."||e[o]===".."||!i.dot&&e[o].charAt(0)===".")return!1;return!0}for(;f<c;){var g=e[f];if(this.debug(`
294
294
  globstar while`,e,f,r,p,g),this.matchOne(e.slice(f),r.slice(p),n))return this.debug("globstar found match!",f,c,g),!0;if(g==="."||g===".."||!i.dot&&g.charAt(0)==="."){this.debug("dot detected!",e,f,r,p);break}this.debug("globstar swallow a segment, and continue"),f++}return!!(n&&(this.debug(`
295
- >>> no match, partial?`,e,f,r,p),f===c))}let h;if(typeof u=="string"?(h=d===u,this.debug("string match",u,d,h)):(h=u.test(d),this.debug("pattern match",u,d,h)),!h)return!1}if(o===c&&a===l)return!0;if(o===c)return n;if(a===l)return o===c-1&&e[o]==="";throw new Error("wtf?")}braceExpand(){return SO(this.pattern,this.options)}parse(e){Kc(e);let r=this.options;if(e==="**")return Zt;if(e==="")return"";let n,i=null;(n=e.match(xH))?i=r.dot?qH:LH:(n=e.match(RH))?i=(r.nocase?r.dot?DH:EH:r.dot?wH:PH)(n[1]):(n=e.match($H))?i=(r.nocase?r.dot?FH:BH:r.dot?jH:UH)(n):(n=e.match(CH))?i=r.dot?IH:AH:(n=e.match(OH))&&(i=MH);let s=fa.fromGlob(e,this.options).toMMPattern();return i&&typeof s=="object"&&Reflect.defineProperty(s,"test",{value:i}),s}makeRe(){if(this.regexp||this.regexp===!1)return this.regexp;let e=this.set;if(!e.length)return this.regexp=!1,this.regexp;let r=this.options,n=r.noglobstar?zH:r.dot?WH:GH,i=new Set(r.nocase?["i"]:[]),s=e.map(c=>{let l=c.map(u=>{if(u instanceof RegExp)for(let d of u.flags.split(""))i.add(d);return typeof u=="string"?QH(u):u===Zt?Zt:u._src});return l.forEach((u,d)=>{let f=l[d+1],p=l[d-1];u!==Zt||p===Zt||(p===void 0?f!==void 0&&f!==Zt?l[d+1]="(?:\\/|"+n+"\\/)?"+f:l[d]=n:f===void 0?l[d-1]=p+"(?:\\/|"+n+")?":f!==Zt&&(l[d-1]=p+"(?:\\/|\\/"+n+"\\/)"+f,l[d+1]=Zt))}),l.filter(u=>u!==Zt).join("/")}).join("|"),[o,a]=e.length>1?["(?:",")"]:["",""];s="^"+o+s+a+"$",this.negate&&(s="^(?!"+s+").+$");try{this.regexp=new RegExp(s,[...i].join(""))}catch{this.regexp=!1}return this.regexp}slashSplit(e){return this.preserveMultipleSlashes?e.split("/"):this.isWindows&&/^\/\/[^\/]+/.test(e)?["",...e.split(/\/+/)]:e.split(/\/+/)}match(e,r=this.partial){if(this.debug("match",e,this.pattern),this.comment)return!1;if(this.empty)return e==="";if(e==="/"&&r)return!0;let n=this.options;this.isWindows&&(e=e.split("\\").join("/"));let i=this.slashSplit(e);this.debug(this.pattern,"split",i);let s=this.set;this.debug(this.pattern,"set",s);let o=i[i.length-1];if(!o)for(let a=i.length-2;!o&&a>=0;a--)o=i[a];for(let a=0;a<s.length;a++){let c=s[a],l=i;if(n.matchBase&&c.length===1&&(l=[o]),this.matchOne(l,c,r))return n.flipNegate?!0:!this.negate}return n.flipNegate?!1:this.negate}static defaults(e){return _r.defaults(e).Minimatch}};_r.AST=fa;_r.Minimatch=Yr;_r.escape=pa;_r.unescape=qn;var WO=require("node:url");var ha=typeof performance=="object"&&performance&&typeof performance.now=="function"?performance:Date,kO=new Set,NT=typeof process=="object"&&process?process:{},RO=(t,e,r,n)=>{typeof NT.emitWarning=="function"?NT.emitWarning(t,e,r,n):console.error(`[${r}] ${e}: ${t}`)},Ap=globalThis.AbortController,NO=globalThis.AbortSignal;if(typeof Ap>"u"){NO=class{onabort;_onabort=[];reason;aborted=!1;addEventListener(n,i){this._onabort.push(i)}},Ap=class{constructor(){e()}signal=new NO;abort(n){if(!this.signal.aborted){this.signal.reason=n,this.signal.aborted=!0;for(let i of this.signal._onabort)i(n);this.signal.onabort?.(n)}}};let t=NT.env?.LRU_CACHE_IGNORE_AC_WARNING!=="1",e=()=>{t&&(t=!1,RO("AbortController is not defined. If using lru-cache in node 14, load an AbortController polyfill from the `node-abort-controller` package. A minimal polyfill is provided for use by LRUCache.fetch(), but it should not be relied upon in other contexts (eg, passing it to other APIs that use AbortController/AbortSignal might have undesirable effects). You may disable this with LRU_CACHE_IGNORE_AC_WARNING=1 in the env.","NO_ABORT_CONTROLLER","ENOTSUP",e))}}var ZH=t=>!kO.has(t),gNe=Symbol("type"),ds=t=>t&&t===Math.floor(t)&&t>0&&isFinite(t),PO=t=>ds(t)?t<=Math.pow(2,8)?Uint8Array:t<=Math.pow(2,16)?Uint16Array:t<=Math.pow(2,32)?Uint32Array:t<=Number.MAX_SAFE_INTEGER?ma:null:null,ma=class extends Array{constructor(e){super(e),this.fill(0)}},kT=class t{heap;length;static#e=!1;static create(e){let r=PO(e);if(!r)return[];t.#e=!0;let n=new t(e,r);return t.#e=!1,n}constructor(e,r){if(!t.#e)throw new TypeError("instantiate Stack using Stack.create(n)");this.heap=new r(e),this.length=0}push(e){this.heap[this.length++]=e}pop(){return this.heap[--this.length]}},Xc=class t{#e;#t;#n;#r;#o;#f;ttl;ttlResolution;ttlAutopurge;updateAgeOnGet;updateAgeOnHas;allowStale;noDisposeOnSet;noUpdateTTL;maxEntrySize;sizeCalculation;noDeleteOnFetchRejection;noDeleteOnStaleGet;allowStaleOnFetchAbort;allowStaleOnFetchRejection;ignoreFetchAbort;#a;#d;#c;#l;#s;#y;#T;#h;#p;#N;#g;#k;#R;#b;#_;#S;#m;static unsafeExposeInternals(e){return{starts:e.#R,ttls:e.#b,sizes:e.#k,keyMap:e.#c,keyList:e.#l,valList:e.#s,next:e.#y,prev:e.#T,get head(){return e.#h},get tail(){return e.#p},free:e.#N,isBackgroundFetch:r=>e.#u(r),backgroundFetch:(r,n,i,s)=>e.#$(r,n,i,s),moveToTail:r=>e.#F(r),indexes:r=>e.#w(r),rindexes:r=>e.#E(r),isStale:r=>e.#v(r)}}get max(){return this.#e}get maxSize(){return this.#t}get calculatedSize(){return this.#d}get size(){return this.#a}get fetchMethod(){return this.#o}get memoMethod(){return this.#f}get dispose(){return this.#n}get disposeAfter(){return this.#r}constructor(e){let{max:r=0,ttl:n,ttlResolution:i=1,ttlAutopurge:s,updateAgeOnGet:o,updateAgeOnHas:a,allowStale:c,dispose:l,disposeAfter:u,noDisposeOnSet:d,noUpdateTTL:f,maxSize:p=0,maxEntrySize:g=0,sizeCalculation:h,fetchMethod:T,memoMethod:S,noDeleteOnFetchRejection:_,noDeleteOnStaleGet:v,allowStaleOnFetchRejection:R,allowStaleOnFetchAbort:D,ignoreFetchAbort:B}=e;if(r!==0&&!ds(r))throw new TypeError("max option must be a nonnegative integer");let M=r?PO(r):Array;if(!M)throw new Error("invalid max value: "+r);if(this.#e=r,this.#t=p,this.maxEntrySize=g||this.#t,this.sizeCalculation=h,this.sizeCalculation){if(!this.#t&&!this.maxEntrySize)throw new TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize");if(typeof this.sizeCalculation!="function")throw new TypeError("sizeCalculation set to non-function")}if(S!==void 0&&typeof S!="function")throw new TypeError("memoMethod must be a function if defined");if(this.#f=S,T!==void 0&&typeof T!="function")throw new TypeError("fetchMethod must be a function if specified");if(this.#o=T,this.#S=!!T,this.#c=new Map,this.#l=new Array(r).fill(void 0),this.#s=new Array(r).fill(void 0),this.#y=new M(r),this.#T=new M(r),this.#h=0,this.#p=0,this.#N=kT.create(r),this.#a=0,this.#d=0,typeof l=="function"&&(this.#n=l),typeof u=="function"?(this.#r=u,this.#g=[]):(this.#r=void 0,this.#g=void 0),this.#_=!!this.#n,this.#m=!!this.#r,this.noDisposeOnSet=!!d,this.noUpdateTTL=!!f,this.noDeleteOnFetchRejection=!!_,this.allowStaleOnFetchRejection=!!R,this.allowStaleOnFetchAbort=!!D,this.ignoreFetchAbort=!!B,this.maxEntrySize!==0){if(this.#t!==0&&!ds(this.#t))throw new TypeError("maxSize must be a positive integer if specified");if(!ds(this.maxEntrySize))throw new TypeError("maxEntrySize must be a positive integer if specified");this.#C()}if(this.allowStale=!!c,this.noDeleteOnStaleGet=!!v,this.updateAgeOnGet=!!o,this.updateAgeOnHas=!!a,this.ttlResolution=ds(i)||i===0?i:1,this.ttlAutopurge=!!s,this.ttl=n||0,this.ttl){if(!ds(this.ttl))throw new TypeError("ttl must be a positive integer if specified");this.#D()}if(this.#e===0&&this.ttl===0&&this.#t===0)throw new TypeError("At least one of max, maxSize, or ttl is required");if(!this.ttlAutopurge&&!this.#e&&!this.#t){let F="LRU_CACHE_UNBOUNDED";ZH(F)&&(kO.add(F),RO("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning",F,t))}}getRemainingTTL(e){return this.#c.has(e)?1/0:0}#D(){let e=new ma(this.#e),r=new ma(this.#e);this.#b=e,this.#R=r,this.#I=(s,o,a=ha.now())=>{if(r[s]=o!==0?a:0,e[s]=o,o!==0&&this.ttlAutopurge){let c=setTimeout(()=>{this.#v(s)&&this.#A(this.#l[s],"expire")},o+1);c.unref&&c.unref()}},this.#P=s=>{r[s]=e[s]!==0?ha.now():0},this.#i=(s,o)=>{if(e[o]){let a=e[o],c=r[o];if(!a||!c)return;s.ttl=a,s.start=c,s.now=n||i();let l=s.now-c;s.remainingTTL=a-l}};let n=0,i=()=>{let s=ha.now();if(this.ttlResolution>0){n=s;let o=setTimeout(()=>n=0,this.ttlResolution);o.unref&&o.unref()}return s};this.getRemainingTTL=s=>{let o=this.#c.get(s);if(o===void 0)return 0;let a=e[o],c=r[o];if(!a||!c)return 1/0;let l=(n||i())-c;return a-l},this.#v=s=>{let o=r[s],a=e[s];return!!a&&!!o&&(n||i())-o>a}}#P=()=>{};#i=()=>{};#I=()=>{};#v=()=>!1;#C(){let e=new ma(this.#e);this.#d=0,this.#k=e,this.#O=r=>{this.#d-=e[r],e[r]=0},this.#x=(r,n,i,s)=>{if(this.#u(n))return 0;if(!ds(i))if(s){if(typeof s!="function")throw new TypeError("sizeCalculation must be a function");if(i=s(n,r),!ds(i))throw new TypeError("sizeCalculation return invalid (expect positive integer)")}else throw new TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set.");return i},this.#M=(r,n,i)=>{if(e[r]=n,this.#t){let s=this.#t-e[r];for(;this.#d>s;)this.#q(!0)}this.#d+=e[r],i&&(i.entrySize=n,i.totalCalculatedSize=this.#d)}}#O=e=>{};#M=(e,r,n)=>{};#x=(e,r,n,i)=>{if(n||i)throw new TypeError("cannot set size without setting maxSize or maxEntrySize on cache");return 0};*#w({allowStale:e=this.allowStale}={}){if(this.#a)for(let r=this.#p;!(!this.#L(r)||((e||!this.#v(r))&&(yield r),r===this.#h));)r=this.#T[r]}*#E({allowStale:e=this.allowStale}={}){if(this.#a)for(let r=this.#h;!(!this.#L(r)||((e||!this.#v(r))&&(yield r),r===this.#p));)r=this.#y[r]}#L(e){return e!==void 0&&this.#c.get(this.#l[e])===e}*entries(){for(let e of this.#w())this.#s[e]!==void 0&&this.#l[e]!==void 0&&!this.#u(this.#s[e])&&(yield[this.#l[e],this.#s[e]])}*rentries(){for(let e of this.#E())this.#s[e]!==void 0&&this.#l[e]!==void 0&&!this.#u(this.#s[e])&&(yield[this.#l[e],this.#s[e]])}*keys(){for(let e of this.#w()){let r=this.#l[e];r!==void 0&&!this.#u(this.#s[e])&&(yield r)}}*rkeys(){for(let e of this.#E()){let r=this.#l[e];r!==void 0&&!this.#u(this.#s[e])&&(yield r)}}*values(){for(let e of this.#w())this.#s[e]!==void 0&&!this.#u(this.#s[e])&&(yield this.#s[e])}*rvalues(){for(let e of this.#E())this.#s[e]!==void 0&&!this.#u(this.#s[e])&&(yield this.#s[e])}[Symbol.iterator](){return this.entries()}[Symbol.toStringTag]="LRUCache";find(e,r={}){for(let n of this.#w()){let i=this.#s[n],s=this.#u(i)?i.__staleWhileFetching:i;if(s!==void 0&&e(s,this.#l[n],this))return this.get(this.#l[n],r)}}forEach(e,r=this){for(let n of this.#w()){let i=this.#s[n],s=this.#u(i)?i.__staleWhileFetching:i;s!==void 0&&e.call(r,s,this.#l[n],this)}}rforEach(e,r=this){for(let n of this.#E()){let i=this.#s[n],s=this.#u(i)?i.__staleWhileFetching:i;s!==void 0&&e.call(r,s,this.#l[n],this)}}purgeStale(){let e=!1;for(let r of this.#E({allowStale:!0}))this.#v(r)&&(this.#A(this.#l[r],"expire"),e=!0);return e}info(e){let r=this.#c.get(e);if(r===void 0)return;let n=this.#s[r],i=this.#u(n)?n.__staleWhileFetching:n;if(i===void 0)return;let s={value:i};if(this.#b&&this.#R){let o=this.#b[r],a=this.#R[r];if(o&&a){let c=o-(ha.now()-a);s.ttl=c,s.start=Date.now()}}return this.#k&&(s.size=this.#k[r]),s}dump(){let e=[];for(let r of this.#w({allowStale:!0})){let n=this.#l[r],i=this.#s[r],s=this.#u(i)?i.__staleWhileFetching:i;if(s===void 0||n===void 0)continue;let o={value:s};if(this.#b&&this.#R){o.ttl=this.#b[r];let a=ha.now()-this.#R[r];o.start=Math.floor(Date.now()-a)}this.#k&&(o.size=this.#k[r]),e.unshift([n,o])}return e}load(e){this.clear();for(let[r,n]of e){if(n.start){let i=Date.now()-n.start;n.start=ha.now()-i}this.set(r,n.value,n)}}set(e,r,n={}){if(r===void 0)return this.delete(e),this;let{ttl:i=this.ttl,start:s,noDisposeOnSet:o=this.noDisposeOnSet,sizeCalculation:a=this.sizeCalculation,status:c}=n,{noUpdateTTL:l=this.noUpdateTTL}=n,u=this.#x(e,r,n.size||0,a);if(this.maxEntrySize&&u>this.maxEntrySize)return c&&(c.set="miss",c.maxEntrySizeExceeded=!0),this.#A(e,"set"),this;let d=this.#a===0?void 0:this.#c.get(e);if(d===void 0)d=this.#a===0?this.#p:this.#N.length!==0?this.#N.pop():this.#a===this.#e?this.#q(!1):this.#a,this.#l[d]=e,this.#s[d]=r,this.#c.set(e,d),this.#y[this.#p]=d,this.#T[d]=this.#p,this.#p=d,this.#a++,this.#M(d,u,c),c&&(c.set="add"),l=!1;else{this.#F(d);let f=this.#s[d];if(r!==f){if(this.#S&&this.#u(f)){f.__abortController.abort(new Error("replaced"));let{__staleWhileFetching:p}=f;p!==void 0&&!o&&(this.#_&&this.#n?.(p,e,"set"),this.#m&&this.#g?.push([p,e,"set"]))}else o||(this.#_&&this.#n?.(f,e,"set"),this.#m&&this.#g?.push([f,e,"set"]));if(this.#O(d),this.#M(d,u,c),this.#s[d]=r,c){c.set="replace";let p=f&&this.#u(f)?f.__staleWhileFetching:f;p!==void 0&&(c.oldValue=p)}}else c&&(c.set="update")}if(i!==0&&!this.#b&&this.#D(),this.#b&&(l||this.#I(d,i,s),c&&this.#i(c,d)),!o&&this.#m&&this.#g){let f=this.#g,p;for(;p=f?.shift();)this.#r?.(...p)}return this}pop(){try{for(;this.#a;){let e=this.#s[this.#h];if(this.#q(!0),this.#u(e)){if(e.__staleWhileFetching)return e.__staleWhileFetching}else if(e!==void 0)return e}}finally{if(this.#m&&this.#g){let e=this.#g,r;for(;r=e?.shift();)this.#r?.(...r)}}}#q(e){let r=this.#h,n=this.#l[r],i=this.#s[r];return this.#S&&this.#u(i)?i.__abortController.abort(new Error("evicted")):(this.#_||this.#m)&&(this.#_&&this.#n?.(i,n,"evict"),this.#m&&this.#g?.push([i,n,"evict"])),this.#O(r),e&&(this.#l[r]=void 0,this.#s[r]=void 0,this.#N.push(r)),this.#a===1?(this.#h=this.#p=0,this.#N.length=0):this.#h=this.#y[r],this.#c.delete(n),this.#a--,r}has(e,r={}){let{updateAgeOnHas:n=this.updateAgeOnHas,status:i}=r,s=this.#c.get(e);if(s!==void 0){let o=this.#s[s];if(this.#u(o)&&o.__staleWhileFetching===void 0)return!1;if(this.#v(s))i&&(i.has="stale",this.#i(i,s));else return n&&this.#P(s),i&&(i.has="hit",this.#i(i,s)),!0}else i&&(i.has="miss");return!1}peek(e,r={}){let{allowStale:n=this.allowStale}=r,i=this.#c.get(e);if(i===void 0||!n&&this.#v(i))return;let s=this.#s[i];return this.#u(s)?s.__staleWhileFetching:s}#$(e,r,n,i){let s=r===void 0?void 0:this.#s[r];if(this.#u(s))return s;let o=new Ap,{signal:a}=n;a?.addEventListener("abort",()=>o.abort(a.reason),{signal:o.signal});let c={signal:o.signal,options:n,context:i},l=(h,T=!1)=>{let{aborted:S}=o.signal,_=n.ignoreFetchAbort&&h!==void 0;if(n.status&&(S&&!T?(n.status.fetchAborted=!0,n.status.fetchError=o.signal.reason,_&&(n.status.fetchAbortIgnored=!0)):n.status.fetchResolved=!0),S&&!_&&!T)return d(o.signal.reason);let v=p;return this.#s[r]===p&&(h===void 0?v.__staleWhileFetching?this.#s[r]=v.__staleWhileFetching:this.#A(e,"fetch"):(n.status&&(n.status.fetchUpdated=!0),this.set(e,h,c.options))),h},u=h=>(n.status&&(n.status.fetchRejected=!0,n.status.fetchError=h),d(h)),d=h=>{let{aborted:T}=o.signal,S=T&&n.allowStaleOnFetchAbort,_=S||n.allowStaleOnFetchRejection,v=_||n.noDeleteOnFetchRejection,R=p;if(this.#s[r]===p&&(!v||R.__staleWhileFetching===void 0?this.#A(e,"fetch"):S||(this.#s[r]=R.__staleWhileFetching)),_)return n.status&&R.__staleWhileFetching!==void 0&&(n.status.returnedStale=!0),R.__staleWhileFetching;if(R.__returned===R)throw h},f=(h,T)=>{let S=this.#o?.(e,s,c);S&&S instanceof Promise&&S.then(_=>h(_===void 0?void 0:_),T),o.signal.addEventListener("abort",()=>{(!n.ignoreFetchAbort||n.allowStaleOnFetchAbort)&&(h(void 0),n.allowStaleOnFetchAbort&&(h=_=>l(_,!0)))})};n.status&&(n.status.fetchDispatched=!0);let p=new Promise(f).then(l,u),g=Object.assign(p,{__abortController:o,__staleWhileFetching:s,__returned:void 0});return r===void 0?(this.set(e,g,{...c.options,status:void 0}),r=this.#c.get(e)):this.#s[r]=g,g}#u(e){if(!this.#S)return!1;let r=e;return!!r&&r instanceof Promise&&r.hasOwnProperty("__staleWhileFetching")&&r.__abortController instanceof Ap}async fetch(e,r={}){let{allowStale:n=this.allowStale,updateAgeOnGet:i=this.updateAgeOnGet,noDeleteOnStaleGet:s=this.noDeleteOnStaleGet,ttl:o=this.ttl,noDisposeOnSet:a=this.noDisposeOnSet,size:c=0,sizeCalculation:l=this.sizeCalculation,noUpdateTTL:u=this.noUpdateTTL,noDeleteOnFetchRejection:d=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:f=this.allowStaleOnFetchRejection,ignoreFetchAbort:p=this.ignoreFetchAbort,allowStaleOnFetchAbort:g=this.allowStaleOnFetchAbort,context:h,forceRefresh:T=!1,status:S,signal:_}=r;if(!this.#S)return S&&(S.fetch="get"),this.get(e,{allowStale:n,updateAgeOnGet:i,noDeleteOnStaleGet:s,status:S});let v={allowStale:n,updateAgeOnGet:i,noDeleteOnStaleGet:s,ttl:o,noDisposeOnSet:a,size:c,sizeCalculation:l,noUpdateTTL:u,noDeleteOnFetchRejection:d,allowStaleOnFetchRejection:f,allowStaleOnFetchAbort:g,ignoreFetchAbort:p,status:S,signal:_},R=this.#c.get(e);if(R===void 0){S&&(S.fetch="miss");let D=this.#$(e,R,v,h);return D.__returned=D}else{let D=this.#s[R];if(this.#u(D)){let Xe=n&&D.__staleWhileFetching!==void 0;return S&&(S.fetch="inflight",Xe&&(S.returnedStale=!0)),Xe?D.__staleWhileFetching:D.__returned=D}let B=this.#v(R);if(!T&&!B)return S&&(S.fetch="hit"),this.#F(R),i&&this.#P(R),S&&this.#i(S,R),D;let M=this.#$(e,R,v,h),ge=M.__staleWhileFetching!==void 0&&n;return S&&(S.fetch=B?"stale":"refresh",ge&&B&&(S.returnedStale=!0)),ge?M.__staleWhileFetching:M.__returned=M}}async forceFetch(e,r={}){let n=await this.fetch(e,r);if(n===void 0)throw new Error("fetch() returned undefined");return n}memo(e,r={}){let n=this.#f;if(!n)throw new Error("no memoMethod provided to constructor");let{context:i,forceRefresh:s,...o}=r,a=this.get(e,o);if(!s&&a!==void 0)return a;let c=n(e,a,{options:o,context:i});return this.set(e,c,o),c}get(e,r={}){let{allowStale:n=this.allowStale,updateAgeOnGet:i=this.updateAgeOnGet,noDeleteOnStaleGet:s=this.noDeleteOnStaleGet,status:o}=r,a=this.#c.get(e);if(a!==void 0){let c=this.#s[a],l=this.#u(c);return o&&this.#i(o,a),this.#v(a)?(o&&(o.get="stale"),l?(o&&n&&c.__staleWhileFetching!==void 0&&(o.returnedStale=!0),n?c.__staleWhileFetching:void 0):(s||this.#A(e,"expire"),o&&n&&(o.returnedStale=!0),n?c:void 0)):(o&&(o.get="hit"),l?c.__staleWhileFetching:(this.#F(a),i&&this.#P(a),c))}else o&&(o.get="miss")}#B(e,r){this.#T[r]=e,this.#y[e]=r}#F(e){e!==this.#p&&(e===this.#h?this.#h=this.#y[e]:this.#B(this.#T[e],this.#y[e]),this.#B(this.#p,e),this.#p=e)}delete(e){return this.#A(e,"delete")}#A(e,r){let n=!1;if(this.#a!==0){let i=this.#c.get(e);if(i!==void 0)if(n=!0,this.#a===1)this.#j(r);else{this.#O(i);let s=this.#s[i];if(this.#u(s)?s.__abortController.abort(new Error("deleted")):(this.#_||this.#m)&&(this.#_&&this.#n?.(s,e,r),this.#m&&this.#g?.push([s,e,r])),this.#c.delete(e),this.#l[i]=void 0,this.#s[i]=void 0,i===this.#p)this.#p=this.#T[i];else if(i===this.#h)this.#h=this.#y[i];else{let o=this.#T[i];this.#y[o]=this.#y[i];let a=this.#y[i];this.#T[a]=this.#T[i]}this.#a--,this.#N.push(i)}}if(this.#m&&this.#g?.length){let i=this.#g,s;for(;s=i?.shift();)this.#r?.(...s)}return n}clear(){return this.#j("delete")}#j(e){for(let r of this.#E({allowStale:!0})){let n=this.#s[r];if(this.#u(n))n.__abortController.abort(new Error("deleted"));else{let i=this.#l[r];this.#_&&this.#n?.(n,i,e),this.#m&&this.#g?.push([n,i,e])}}if(this.#c.clear(),this.#s.fill(void 0),this.#l.fill(void 0),this.#b&&this.#R&&(this.#b.fill(0),this.#R.fill(0)),this.#k&&this.#k.fill(0),this.#h=0,this.#p=0,this.#N.length=0,this.#d=0,this.#a=0,this.#m&&this.#g){let r=this.#g,n;for(;n=r?.shift();)this.#r?.(...n)}}};var Ta=require("node:path"),LO=require("node:url"),li=require("fs"),lV=$(require("node:fs"),1),hs=require("node:fs/promises");var $p=require("node:events"),AT=$(require("node:stream"),1),AO=require("node:string_decoder"),wO=typeof process=="object"&&process?process:{stdout:null,stderr:null},eV=t=>!!t&&typeof t=="object"&&(t instanceof ps||t instanceof AT.default||tV(t)||rV(t)),tV=t=>!!t&&typeof t=="object"&&t instanceof $p.EventEmitter&&typeof t.pipe=="function"&&t.pipe!==AT.default.Writable.prototype.pipe,rV=t=>!!t&&typeof t=="object"&&t instanceof $p.EventEmitter&&typeof t.write=="function"&&typeof t.end=="function",Ci=Symbol("EOF"),Ai=Symbol("maybeEmitEnd"),fs=Symbol("emittedEnd"),Ip=Symbol("emittingEnd"),Jc=Symbol("emittedError"),Op=Symbol("closed"),EO=Symbol("read"),Mp=Symbol("flush"),DO=Symbol("flushChunk"),$n=Symbol("encoding"),ga=Symbol("decoder"),Wt=Symbol("flowing"),Qc=Symbol("paused"),ya=Symbol("resume"),Gt=Symbol("buffer"),Sr=Symbol("pipes"),Kt=Symbol("bufferLength"),RT=Symbol("bufferPush"),xp=Symbol("bufferShift"),fr=Symbol("objectMode"),It=Symbol("destroyed"),PT=Symbol("error"),wT=Symbol("emitData"),CO=Symbol("emitEnd"),ET=Symbol("emitEnd2"),ai=Symbol("async"),DT=Symbol("abort"),Lp=Symbol("aborted"),Zc=Symbol("signal"),Ys=Symbol("dataListeners"),Xr=Symbol("discarded"),el=t=>Promise.resolve().then(t),nV=t=>t(),iV=t=>t==="end"||t==="finish"||t==="prefinish",sV=t=>t instanceof ArrayBuffer||!!t&&typeof t=="object"&&t.constructor&&t.constructor.name==="ArrayBuffer"&&t.byteLength>=0,oV=t=>!Buffer.isBuffer(t)&&ArrayBuffer.isView(t),qp=class{src;dest;opts;ondrain;constructor(e,r,n){this.src=e,this.dest=r,this.opts=n,this.ondrain=()=>e[ya](),this.dest.on("drain",this.ondrain)}unpipe(){this.dest.removeListener("drain",this.ondrain)}proxyErrors(e){}end(){this.unpipe(),this.opts.end&&this.dest.end()}},CT=class extends qp{unpipe(){this.src.removeListener("error",this.proxyErrors),super.unpipe()}constructor(e,r,n){super(e,r,n),this.proxyErrors=i=>r.emit("error",i),e.on("error",this.proxyErrors)}},aV=t=>!!t.objectMode,cV=t=>!t.objectMode&&!!t.encoding&&t.encoding!=="buffer",ps=class extends $p.EventEmitter{[Wt]=!1;[Qc]=!1;[Sr]=[];[Gt]=[];[fr];[$n];[ai];[ga];[Ci]=!1;[fs]=!1;[Ip]=!1;[Op]=!1;[Jc]=null;[Kt]=0;[It]=!1;[Zc];[Lp]=!1;[Ys]=0;[Xr]=!1;writable=!0;readable=!0;constructor(...e){let r=e[0]||{};if(super(),r.objectMode&&typeof r.encoding=="string")throw new TypeError("Encoding and objectMode may not be used together");aV(r)?(this[fr]=!0,this[$n]=null):cV(r)?(this[$n]=r.encoding,this[fr]=!1):(this[fr]=!1,this[$n]=null),this[ai]=!!r.async,this[ga]=this[$n]?new AO.StringDecoder(this[$n]):null,r&&r.debugExposeBuffer===!0&&Object.defineProperty(this,"buffer",{get:()=>this[Gt]}),r&&r.debugExposePipes===!0&&Object.defineProperty(this,"pipes",{get:()=>this[Sr]});let{signal:n}=r;n&&(this[Zc]=n,n.aborted?this[DT]():n.addEventListener("abort",()=>this[DT]()))}get bufferLength(){return this[Kt]}get encoding(){return this[$n]}set encoding(e){throw new Error("Encoding must be set at instantiation time")}setEncoding(e){throw new Error("Encoding must be set at instantiation time")}get objectMode(){return this[fr]}set objectMode(e){throw new Error("objectMode must be set at instantiation time")}get async(){return this[ai]}set async(e){this[ai]=this[ai]||!!e}[DT](){this[Lp]=!0,this.emit("abort",this[Zc]?.reason),this.destroy(this[Zc]?.reason)}get aborted(){return this[Lp]}set aborted(e){}write(e,r,n){if(this[Lp])return!1;if(this[Ci])throw new Error("write after end");if(this[It])return this.emit("error",Object.assign(new Error("Cannot call write after a stream was destroyed"),{code:"ERR_STREAM_DESTROYED"})),!0;typeof r=="function"&&(n=r,r="utf8"),r||(r="utf8");let i=this[ai]?el:nV;if(!this[fr]&&!Buffer.isBuffer(e)){if(oV(e))e=Buffer.from(e.buffer,e.byteOffset,e.byteLength);else if(sV(e))e=Buffer.from(e);else if(typeof e!="string")throw new Error("Non-contiguous data written to non-objectMode stream")}return this[fr]?(this[Wt]&&this[Kt]!==0&&this[Mp](!0),this[Wt]?this.emit("data",e):this[RT](e),this[Kt]!==0&&this.emit("readable"),n&&i(n),this[Wt]):e.length?(typeof e=="string"&&!(r===this[$n]&&!this[ga]?.lastNeed)&&(e=Buffer.from(e,r)),Buffer.isBuffer(e)&&this[$n]&&(e=this[ga].write(e)),this[Wt]&&this[Kt]!==0&&this[Mp](!0),this[Wt]?this.emit("data",e):this[RT](e),this[Kt]!==0&&this.emit("readable"),n&&i(n),this[Wt]):(this[Kt]!==0&&this.emit("readable"),n&&i(n),this[Wt])}read(e){if(this[It])return null;if(this[Xr]=!1,this[Kt]===0||e===0||e&&e>this[Kt])return this[Ai](),null;this[fr]&&(e=null),this[Gt].length>1&&!this[fr]&&(this[Gt]=[this[$n]?this[Gt].join(""):Buffer.concat(this[Gt],this[Kt])]);let r=this[EO](e||null,this[Gt][0]);return this[Ai](),r}[EO](e,r){if(this[fr])this[xp]();else{let n=r;e===n.length||e===null?this[xp]():typeof n=="string"?(this[Gt][0]=n.slice(e),r=n.slice(0,e),this[Kt]-=e):(this[Gt][0]=n.subarray(e),r=n.subarray(0,e),this[Kt]-=e)}return this.emit("data",r),!this[Gt].length&&!this[Ci]&&this.emit("drain"),r}end(e,r,n){return typeof e=="function"&&(n=e,e=void 0),typeof r=="function"&&(n=r,r="utf8"),e!==void 0&&this.write(e,r),n&&this.once("end",n),this[Ci]=!0,this.writable=!1,(this[Wt]||!this[Qc])&&this[Ai](),this}[ya](){this[It]||(!this[Ys]&&!this[Sr].length&&(this[Xr]=!0),this[Qc]=!1,this[Wt]=!0,this.emit("resume"),this[Gt].length?this[Mp]():this[Ci]?this[Ai]():this.emit("drain"))}resume(){return this[ya]()}pause(){this[Wt]=!1,this[Qc]=!0,this[Xr]=!1}get destroyed(){return this[It]}get flowing(){return this[Wt]}get paused(){return this[Qc]}[RT](e){this[fr]?this[Kt]+=1:this[Kt]+=e.length,this[Gt].push(e)}[xp](){return this[fr]?this[Kt]-=1:this[Kt]-=this[Gt][0].length,this[Gt].shift()}[Mp](e=!1){do;while(this[DO](this[xp]())&&this[Gt].length);!e&&!this[Gt].length&&!this[Ci]&&this.emit("drain")}[DO](e){return this.emit("data",e),this[Wt]}pipe(e,r){if(this[It])return e;this[Xr]=!1;let n=this[fs];return r=r||{},e===wO.stdout||e===wO.stderr?r.end=!1:r.end=r.end!==!1,r.proxyErrors=!!r.proxyErrors,n?r.end&&e.end():(this[Sr].push(r.proxyErrors?new CT(this,e,r):new qp(this,e,r)),this[ai]?el(()=>this[ya]()):this[ya]()),e}unpipe(e){let r=this[Sr].find(n=>n.dest===e);r&&(this[Sr].length===1?(this[Wt]&&this[Ys]===0&&(this[Wt]=!1),this[Sr]=[]):this[Sr].splice(this[Sr].indexOf(r),1),r.unpipe())}addListener(e,r){return this.on(e,r)}on(e,r){let n=super.on(e,r);if(e==="data")this[Xr]=!1,this[Ys]++,!this[Sr].length&&!this[Wt]&&this[ya]();else if(e==="readable"&&this[Kt]!==0)super.emit("readable");else if(iV(e)&&this[fs])super.emit(e),this.removeAllListeners(e);else if(e==="error"&&this[Jc]){let i=r;this[ai]?el(()=>i.call(this,this[Jc])):i.call(this,this[Jc])}return n}removeListener(e,r){return this.off(e,r)}off(e,r){let n=super.off(e,r);return e==="data"&&(this[Ys]=this.listeners("data").length,this[Ys]===0&&!this[Xr]&&!this[Sr].length&&(this[Wt]=!1)),n}removeAllListeners(e){let r=super.removeAllListeners(e);return(e==="data"||e===void 0)&&(this[Ys]=0,!this[Xr]&&!this[Sr].length&&(this[Wt]=!1)),r}get emittedEnd(){return this[fs]}[Ai](){!this[Ip]&&!this[fs]&&!this[It]&&this[Gt].length===0&&this[Ci]&&(this[Ip]=!0,this.emit("end"),this.emit("prefinish"),this.emit("finish"),this[Op]&&this.emit("close"),this[Ip]=!1)}emit(e,...r){let n=r[0];if(e!=="error"&&e!=="close"&&e!==It&&this[It])return!1;if(e==="data")return!this[fr]&&!n?!1:this[ai]?(el(()=>this[wT](n)),!0):this[wT](n);if(e==="end")return this[CO]();if(e==="close"){if(this[Op]=!0,!this[fs]&&!this[It])return!1;let s=super.emit("close");return this.removeAllListeners("close"),s}else if(e==="error"){this[Jc]=n,super.emit(PT,n);let s=!this[Zc]||this.listeners("error").length?super.emit("error",n):!1;return this[Ai](),s}else if(e==="resume"){let s=super.emit("resume");return this[Ai](),s}else if(e==="finish"||e==="prefinish"){let s=super.emit(e);return this.removeAllListeners(e),s}let i=super.emit(e,...r);return this[Ai](),i}[wT](e){for(let n of this[Sr])n.dest.write(e)===!1&&this.pause();let r=this[Xr]?!1:super.emit("data",e);return this[Ai](),r}[CO](){return this[fs]?!1:(this[fs]=!0,this.readable=!1,this[ai]?(el(()=>this[ET]()),!0):this[ET]())}[ET](){if(this[ga]){let r=this[ga].end();if(r){for(let n of this[Sr])n.dest.write(r);this[Xr]||super.emit("data",r)}}for(let r of this[Sr])r.end();let e=super.emit("end");return this.removeAllListeners("end"),e}async collect(){let e=Object.assign([],{dataLength:0});this[fr]||(e.dataLength=0);let r=this.promise();return this.on("data",n=>{e.push(n),this[fr]||(e.dataLength+=n.length)}),await r,e}async concat(){if(this[fr])throw new Error("cannot concat in objectMode");let e=await this.collect();return this[$n]?e.join(""):Buffer.concat(e,e.dataLength)}async promise(){return new Promise((e,r)=>{this.on(It,()=>r(new Error("stream destroyed"))),this.on("error",n=>r(n)),this.on("end",()=>e())})}[Symbol.asyncIterator](){this[Xr]=!1;let e=!1,r=async()=>(this.pause(),e=!0,{value:void 0,done:!0});return{next:()=>{if(e)return r();let i=this.read();if(i!==null)return Promise.resolve({done:!1,value:i});if(this[Ci])return r();let s,o,a=d=>{this.off("data",c),this.off("end",l),this.off(It,u),r(),o(d)},c=d=>{this.off("error",a),this.off("end",l),this.off(It,u),this.pause(),s({value:d,done:!!this[Ci]})},l=()=>{this.off("error",a),this.off("data",c),this.off(It,u),r(),s({done:!0,value:void 0})},u=()=>a(new Error("stream destroyed"));return new Promise((d,f)=>{o=f,s=d,this.once(It,u),this.once("error",a),this.once("end",l),this.once("data",c)})},throw:r,return:r,[Symbol.asyncIterator](){return this}}}[Symbol.iterator](){this[Xr]=!1;let e=!1,r=()=>(this.pause(),this.off(PT,r),this.off(It,r),this.off("end",r),e=!0,{done:!0,value:void 0}),n=()=>{if(e)return r();let i=this.read();return i===null?r():{done:!1,value:i}};return this.once("end",r),this.once(PT,r),this.once(It,r),{next:n,throw:r,return:r,[Symbol.iterator](){return this}}}destroy(e){if(this[It])return e?this.emit("error",e):this.emit(It),this;this[It]=!0,this[Xr]=!0,this[Gt].length=0,this[Kt]=0;let r=this;return typeof r.close=="function"&&!this[Op]&&r.close(),e?this.emit("error",e):this.emit(It),this}static get isStream(){return eV}};var uV=li.realpathSync.native,rl={lstatSync:li.lstatSync,readdir:li.readdir,readdirSync:li.readdirSync,readlinkSync:li.readlinkSync,realpathSync:uV,promises:{lstat:hs.lstat,readdir:hs.readdir,readlink:hs.readlink,realpath:hs.realpath}},qO=t=>!t||t===rl||t===lV?rl:{...rl,...t,promises:{...rl.promises,...t.promises||{}}},$O=/^\\\\\?\\([a-z]:)\\?$/i,dV=t=>t.replace(/\//g,"\\").replace($O,"$1\\"),fV=/[\\\/]/,gn=0,BO=1,FO=2,ci=4,jO=6,UO=8,Xs=10,HO=12,mn=15,tl=~mn,IT=16,IO=32,nl=64,Bn=128,Bp=256,jp=512,OO=nl|Bn|jp,pV=1023,OT=t=>t.isFile()?UO:t.isDirectory()?ci:t.isSymbolicLink()?Xs:t.isCharacterDevice()?FO:t.isBlockDevice()?jO:t.isSocket()?HO:t.isFIFO()?BO:gn,MO=new Map,il=t=>{let e=MO.get(t);if(e)return e;let r=t.normalize("NFKD");return MO.set(t,r),r},xO=new Map,Fp=t=>{let e=xO.get(t);if(e)return e;let r=il(t.toLowerCase());return xO.set(t,r),r},Up=class extends Xc{constructor(){super({max:256})}},MT=class extends Xc{constructor(e=16*1024){super({maxSize:e,sizeCalculation:r=>r.length+1})}},VO=Symbol("PathScurry setAsCwd"),pr=class{name;root;roots;parent;nocase;isCWD=!1;#e;#t;get dev(){return this.#t}#n;get mode(){return this.#n}#r;get nlink(){return this.#r}#o;get uid(){return this.#o}#f;get gid(){return this.#f}#a;get rdev(){return this.#a}#d;get blksize(){return this.#d}#c;get ino(){return this.#c}#l;get size(){return this.#l}#s;get blocks(){return this.#s}#y;get atimeMs(){return this.#y}#T;get mtimeMs(){return this.#T}#h;get ctimeMs(){return this.#h}#p;get birthtimeMs(){return this.#p}#N;get atime(){return this.#N}#g;get mtime(){return this.#g}#k;get ctime(){return this.#k}#R;get birthtime(){return this.#R}#b;#_;#S;#m;#D;#P;#i;#I;#v;#C;get parentPath(){return(this.parent||this).fullpath()}get path(){return this.parentPath}constructor(e,r=gn,n,i,s,o,a){this.name=e,this.#b=s?Fp(e):il(e),this.#i=r&pV,this.nocase=s,this.roots=i,this.root=n||this,this.#I=o,this.#S=a.fullpath,this.#D=a.relative,this.#P=a.relativePosix,this.parent=a.parent,this.parent?this.#e=this.parent.#e:this.#e=qO(a.fs)}depth(){return this.#_!==void 0?this.#_:this.parent?this.#_=this.parent.depth()+1:this.#_=0}childrenCache(){return this.#I}resolve(e){if(!e)return this;let r=this.getRootString(e),i=e.substring(r.length).split(this.splitSep);return r?this.getRoot(r).#O(i):this.#O(i)}#O(e){let r=this;for(let n of e)r=r.child(n);return r}children(){let e=this.#I.get(this);if(e)return e;let r=Object.assign([],{provisional:0});return this.#I.set(this,r),this.#i&=~IT,r}child(e,r){if(e===""||e===".")return this;if(e==="..")return this.parent||this;let n=this.children(),i=this.nocase?Fp(e):il(e);for(let c of n)if(c.#b===i)return c;let s=this.parent?this.sep:"",o=this.#S?this.#S+s+e:void 0,a=this.newChild(e,gn,{...r,parent:this,fullpath:o});return this.canReaddir()||(a.#i|=Bn),n.push(a),a}relative(){if(this.isCWD)return"";if(this.#D!==void 0)return this.#D;let e=this.name,r=this.parent;if(!r)return this.#D=this.name;let n=r.relative();return n+(!n||!r.parent?"":this.sep)+e}relativePosix(){if(this.sep==="/")return this.relative();if(this.isCWD)return"";if(this.#P!==void 0)return this.#P;let e=this.name,r=this.parent;if(!r)return this.#P=this.fullpathPosix();let n=r.relativePosix();return n+(!n||!r.parent?"":"/")+e}fullpath(){if(this.#S!==void 0)return this.#S;let e=this.name,r=this.parent;if(!r)return this.#S=this.name;let i=r.fullpath()+(r.parent?this.sep:"")+e;return this.#S=i}fullpathPosix(){if(this.#m!==void 0)return this.#m;if(this.sep==="/")return this.#m=this.fullpath();if(!this.parent){let i=this.fullpath().replace(/\\/g,"/");return/^[a-z]:\//i.test(i)?this.#m=`//?/${i}`:this.#m=i}let e=this.parent,r=e.fullpathPosix(),n=r+(!r||!e.parent?"":"/")+this.name;return this.#m=n}isUnknown(){return(this.#i&mn)===gn}isType(e){return this[`is${e}`]()}getType(){return this.isUnknown()?"Unknown":this.isDirectory()?"Directory":this.isFile()?"File":this.isSymbolicLink()?"SymbolicLink":this.isFIFO()?"FIFO":this.isCharacterDevice()?"CharacterDevice":this.isBlockDevice()?"BlockDevice":this.isSocket()?"Socket":"Unknown"}isFile(){return(this.#i&mn)===UO}isDirectory(){return(this.#i&mn)===ci}isCharacterDevice(){return(this.#i&mn)===FO}isBlockDevice(){return(this.#i&mn)===jO}isFIFO(){return(this.#i&mn)===BO}isSocket(){return(this.#i&mn)===HO}isSymbolicLink(){return(this.#i&Xs)===Xs}lstatCached(){return this.#i&IO?this:void 0}readlinkCached(){return this.#v}realpathCached(){return this.#C}readdirCached(){let e=this.children();return e.slice(0,e.provisional)}canReadlink(){if(this.#v)return!0;if(!this.parent)return!1;let e=this.#i&mn;return!(e!==gn&&e!==Xs||this.#i&Bp||this.#i&Bn)}calledReaddir(){return!!(this.#i&IT)}isENOENT(){return!!(this.#i&Bn)}isNamed(e){return this.nocase?this.#b===Fp(e):this.#b===il(e)}async readlink(){let e=this.#v;if(e)return e;if(this.canReadlink()&&this.parent)try{let r=await this.#e.promises.readlink(this.fullpath()),n=(await this.parent.realpath())?.resolve(r);if(n)return this.#v=n}catch(r){this.#u(r.code);return}}readlinkSync(){let e=this.#v;if(e)return e;if(this.canReadlink()&&this.parent)try{let r=this.#e.readlinkSync(this.fullpath()),n=this.parent.realpathSync()?.resolve(r);if(n)return this.#v=n}catch(r){this.#u(r.code);return}}#M(e){this.#i|=IT;for(let r=e.provisional;r<e.length;r++){let n=e[r];n&&n.#x()}}#x(){this.#i&Bn||(this.#i=(this.#i|Bn)&tl,this.#w())}#w(){let e=this.children();e.provisional=0;for(let r of e)r.#x()}#E(){this.#i|=jp,this.#L()}#L(){if(this.#i&nl)return;let e=this.#i;(e&mn)===ci&&(e&=tl),this.#i=e|nl,this.#w()}#q(e=""){e==="ENOTDIR"||e==="EPERM"?this.#L():e==="ENOENT"?this.#x():this.children().provisional=0}#$(e=""){e==="ENOTDIR"?this.parent.#L():e==="ENOENT"&&this.#x()}#u(e=""){let r=this.#i;r|=Bp,e==="ENOENT"&&(r|=Bn),(e==="EINVAL"||e==="UNKNOWN")&&(r&=tl),this.#i=r,e==="ENOTDIR"&&this.parent&&this.parent.#L()}#B(e,r){return this.#A(e,r)||this.#F(e,r)}#F(e,r){let n=OT(e),i=this.newChild(e.name,n,{parent:this}),s=i.#i&mn;return s!==ci&&s!==Xs&&s!==gn&&(i.#i|=nl),r.unshift(i),r.provisional++,i}#A(e,r){for(let n=r.provisional;n<r.length;n++){let i=r[n];if((this.nocase?Fp(e.name):il(e.name))===i.#b)return this.#j(e,i,n,r)}}#j(e,r,n,i){let s=r.name;return r.#i=r.#i&tl|OT(e),s!==e.name&&(r.name=e.name),n!==i.provisional&&(n===i.length-1?i.pop():i.splice(n,1),i.unshift(r)),i.provisional++,r}async lstat(){if((this.#i&Bn)===0)try{return this.#z(await this.#e.promises.lstat(this.fullpath())),this}catch(e){this.#$(e.code)}}lstatSync(){if((this.#i&Bn)===0)try{return this.#z(this.#e.lstatSync(this.fullpath())),this}catch(e){this.#$(e.code)}}#z(e){let{atime:r,atimeMs:n,birthtime:i,birthtimeMs:s,blksize:o,blocks:a,ctime:c,ctimeMs:l,dev:u,gid:d,ino:f,mode:p,mtime:g,mtimeMs:h,nlink:T,rdev:S,size:_,uid:v}=e;this.#N=r,this.#y=n,this.#R=i,this.#p=s,this.#d=o,this.#s=a,this.#k=c,this.#h=l,this.#t=u,this.#f=d,this.#c=f,this.#n=p,this.#g=g,this.#T=h,this.#r=T,this.#a=S,this.#l=_,this.#o=v;let R=OT(e);this.#i=this.#i&tl|R|IO,R!==gn&&R!==ci&&R!==Xs&&(this.#i|=nl)}#H=[];#V=!1;#W(e){this.#V=!1;let r=this.#H.slice();this.#H.length=0,r.forEach(n=>n(null,e))}readdirCB(e,r=!1){if(!this.canReaddir()){r?e(null,[]):queueMicrotask(()=>e(null,[]));return}let n=this.children();if(this.calledReaddir()){let s=n.slice(0,n.provisional);r?e(null,s):queueMicrotask(()=>e(null,s));return}if(this.#H.push(e),this.#V)return;this.#V=!0;let i=this.fullpath();this.#e.readdir(i,{withFileTypes:!0},(s,o)=>{if(s)this.#q(s.code),n.provisional=0;else{for(let a of o)this.#B(a,n);this.#M(n)}this.#W(n.slice(0,n.provisional))})}#U;async readdir(){if(!this.canReaddir())return[];let e=this.children();if(this.calledReaddir())return e.slice(0,e.provisional);let r=this.fullpath();if(this.#U)await this.#U;else{let n=()=>{};this.#U=new Promise(i=>n=i);try{for(let i of await this.#e.promises.readdir(r,{withFileTypes:!0}))this.#B(i,e);this.#M(e)}catch(i){this.#q(i.code),e.provisional=0}this.#U=void 0,n()}return e.slice(0,e.provisional)}readdirSync(){if(!this.canReaddir())return[];let e=this.children();if(this.calledReaddir())return e.slice(0,e.provisional);let r=this.fullpath();try{for(let n of this.#e.readdirSync(r,{withFileTypes:!0}))this.#B(n,e);this.#M(e)}catch(n){this.#q(n.code),e.provisional=0}return e.slice(0,e.provisional)}canReaddir(){if(this.#i&OO)return!1;let e=mn&this.#i;return e===gn||e===ci||e===Xs}shouldWalk(e,r){return(this.#i&ci)===ci&&!(this.#i&OO)&&!e.has(this)&&(!r||r(this))}async realpath(){if(this.#C)return this.#C;if(!((jp|Bp|Bn)&this.#i))try{let e=await this.#e.promises.realpath(this.fullpath());return this.#C=this.resolve(e)}catch{this.#E()}}realpathSync(){if(this.#C)return this.#C;if(!((jp|Bp|Bn)&this.#i))try{let e=this.#e.realpathSync(this.fullpath());return this.#C=this.resolve(e)}catch{this.#E()}}[VO](e){if(e===this)return;e.isCWD=!1,this.isCWD=!0;let r=new Set([]),n=[],i=this;for(;i&&i.parent;)r.add(i),i.#D=n.join(this.sep),i.#P=n.join("/"),i=i.parent,n.push("..");for(i=e;i&&i.parent&&!r.has(i);)i.#D=void 0,i.#P=void 0,i=i.parent}},Hp=class t extends pr{sep="\\";splitSep=fV;constructor(e,r=gn,n,i,s,o,a){super(e,r,n,i,s,o,a)}newChild(e,r=gn,n={}){return new t(e,r,this.root,this.roots,this.nocase,this.childrenCache(),n)}getRootString(e){return Ta.win32.parse(e).root}getRoot(e){if(e=dV(e.toUpperCase()),e===this.root.name)return this.root;for(let[r,n]of Object.entries(this.roots))if(this.sameRoot(e,r))return this.roots[e]=n;return this.roots[e]=new va(e,this).root}sameRoot(e,r=this.root.name){return e=e.toUpperCase().replace(/\//g,"\\").replace($O,"$1\\"),e===r}},Vp=class t extends pr{splitSep="/";sep="/";constructor(e,r=gn,n,i,s,o,a){super(e,r,n,i,s,o,a)}getRootString(e){return e.startsWith("/")?"/":""}getRoot(e){return this.root}newChild(e,r=gn,n={}){return new t(e,r,this.root,this.roots,this.nocase,this.childrenCache(),n)}},zp=class{root;rootPath;roots;cwd;#e;#t;#n;nocase;#r;constructor(e=process.cwd(),r,n,{nocase:i,childrenCacheSize:s=16*1024,fs:o=rl}={}){this.#r=qO(o),(e instanceof URL||e.startsWith("file://"))&&(e=(0,LO.fileURLToPath)(e));let a=r.resolve(e);this.roots=Object.create(null),this.rootPath=this.parseRootPath(a),this.#e=new Up,this.#t=new Up,this.#n=new MT(s);let c=a.substring(this.rootPath.length).split(n);if(c.length===1&&!c[0]&&c.pop(),i===void 0)throw new TypeError("must provide nocase setting to PathScurryBase ctor");this.nocase=i,this.root=this.newRoot(this.#r),this.roots[this.rootPath]=this.root;let l=this.root,u=c.length-1,d=r.sep,f=this.rootPath,p=!1;for(let g of c){let h=u--;l=l.child(g,{relative:new Array(h).fill("..").join(d),relativePosix:new Array(h).fill("..").join("/"),fullpath:f+=(p?"":d)+g}),p=!0}this.cwd=l}depth(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),e.depth()}childrenCache(){return this.#n}resolve(...e){let r="";for(let s=e.length-1;s>=0;s--){let o=e[s];if(!(!o||o===".")&&(r=r?`${o}/${r}`:o,this.isAbsolute(o)))break}let n=this.#e.get(r);if(n!==void 0)return n;let i=this.cwd.resolve(r).fullpath();return this.#e.set(r,i),i}resolvePosix(...e){let r="";for(let s=e.length-1;s>=0;s--){let o=e[s];if(!(!o||o===".")&&(r=r?`${o}/${r}`:o,this.isAbsolute(o)))break}let n=this.#t.get(r);if(n!==void 0)return n;let i=this.cwd.resolve(r).fullpathPosix();return this.#t.set(r,i),i}relative(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),e.relative()}relativePosix(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),e.relativePosix()}basename(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),e.name}dirname(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),(e.parent||e).fullpath()}async readdir(e=this.cwd,r={withFileTypes:!0}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof pr||(r=e,e=this.cwd);let{withFileTypes:n}=r;if(e.canReaddir()){let i=await e.readdir();return n?i:i.map(s=>s.name)}else return[]}readdirSync(e=this.cwd,r={withFileTypes:!0}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof pr||(r=e,e=this.cwd);let{withFileTypes:n=!0}=r;return e.canReaddir()?n?e.readdirSync():e.readdirSync().map(i=>i.name):[]}async lstat(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),e.lstat()}lstatSync(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),e.lstatSync()}async readlink(e=this.cwd,{withFileTypes:r}={withFileTypes:!1}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof pr||(r=e.withFileTypes,e=this.cwd);let n=await e.readlink();return r?n:n?.fullpath()}readlinkSync(e=this.cwd,{withFileTypes:r}={withFileTypes:!1}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof pr||(r=e.withFileTypes,e=this.cwd);let n=e.readlinkSync();return r?n:n?.fullpath()}async realpath(e=this.cwd,{withFileTypes:r}={withFileTypes:!1}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof pr||(r=e.withFileTypes,e=this.cwd);let n=await e.realpath();return r?n:n?.fullpath()}realpathSync(e=this.cwd,{withFileTypes:r}={withFileTypes:!1}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof pr||(r=e.withFileTypes,e=this.cwd);let n=e.realpathSync();return r?n:n?.fullpath()}async walk(e=this.cwd,r={}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof pr||(r=e,e=this.cwd);let{withFileTypes:n=!0,follow:i=!1,filter:s,walkFilter:o}=r,a=[];(!s||s(e))&&a.push(n?e:e.fullpath());let c=new Set,l=(d,f)=>{c.add(d),d.readdirCB((p,g)=>{if(p)return f(p);let h=g.length;if(!h)return f();let T=()=>{--h===0&&f()};for(let S of g)(!s||s(S))&&a.push(n?S:S.fullpath()),i&&S.isSymbolicLink()?S.realpath().then(_=>_?.isUnknown()?_.lstat():_).then(_=>_?.shouldWalk(c,o)?l(_,T):T()):S.shouldWalk(c,o)?l(S,T):T()},!0)},u=e;return new Promise((d,f)=>{l(u,p=>{if(p)return f(p);d(a)})})}walkSync(e=this.cwd,r={}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof pr||(r=e,e=this.cwd);let{withFileTypes:n=!0,follow:i=!1,filter:s,walkFilter:o}=r,a=[];(!s||s(e))&&a.push(n?e:e.fullpath());let c=new Set([e]);for(let l of c){let u=l.readdirSync();for(let d of u){(!s||s(d))&&a.push(n?d:d.fullpath());let f=d;if(d.isSymbolicLink()){if(!(i&&(f=d.realpathSync())))continue;f.isUnknown()&&f.lstatSync()}f.shouldWalk(c,o)&&c.add(f)}}return a}[Symbol.asyncIterator](){return this.iterate()}iterate(e=this.cwd,r={}){return typeof e=="string"?e=this.cwd.resolve(e):e instanceof pr||(r=e,e=this.cwd),this.stream(e,r)[Symbol.asyncIterator]()}[Symbol.iterator](){return this.iterateSync()}*iterateSync(e=this.cwd,r={}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof pr||(r=e,e=this.cwd);let{withFileTypes:n=!0,follow:i=!1,filter:s,walkFilter:o}=r;(!s||s(e))&&(yield n?e:e.fullpath());let a=new Set([e]);for(let c of a){let l=c.readdirSync();for(let u of l){(!s||s(u))&&(yield n?u:u.fullpath());let d=u;if(u.isSymbolicLink()){if(!(i&&(d=u.realpathSync())))continue;d.isUnknown()&&d.lstatSync()}d.shouldWalk(a,o)&&a.add(d)}}}stream(e=this.cwd,r={}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof pr||(r=e,e=this.cwd);let{withFileTypes:n=!0,follow:i=!1,filter:s,walkFilter:o}=r,a=new ps({objectMode:!0});(!s||s(e))&&a.write(n?e:e.fullpath());let c=new Set,l=[e],u=0,d=()=>{let f=!1;for(;!f;){let p=l.shift();if(!p){u===0&&a.end();return}u++,c.add(p);let g=(T,S,_=!1)=>{if(T)return a.emit("error",T);if(i&&!_){let v=[];for(let R of S)R.isSymbolicLink()&&v.push(R.realpath().then(D=>D?.isUnknown()?D.lstat():D));if(v.length){Promise.all(v).then(()=>g(null,S,!0));return}}for(let v of S)v&&(!s||s(v))&&(a.write(n?v:v.fullpath())||(f=!0));u--;for(let v of S){let R=v.realpathCached()||v;R.shouldWalk(c,o)&&l.push(R)}f&&!a.flowing?a.once("drain",d):h||d()},h=!0;p.readdirCB(g,!0),h=!1}};return d(),a}streamSync(e=this.cwd,r={}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof pr||(r=e,e=this.cwd);let{withFileTypes:n=!0,follow:i=!1,filter:s,walkFilter:o}=r,a=new ps({objectMode:!0}),c=new Set;(!s||s(e))&&a.write(n?e:e.fullpath());let l=[e],u=0,d=()=>{let f=!1;for(;!f;){let p=l.shift();if(!p){u===0&&a.end();return}u++,c.add(p);let g=p.readdirSync();for(let h of g)(!s||s(h))&&(a.write(n?h:h.fullpath())||(f=!0));u--;for(let h of g){let T=h;if(h.isSymbolicLink()){if(!(i&&(T=h.realpathSync())))continue;T.isUnknown()&&T.lstatSync()}T.shouldWalk(c,o)&&l.push(T)}}f&&!a.flowing&&a.once("drain",d)};return d(),a}chdir(e=this.cwd){let r=this.cwd;this.cwd=typeof e=="string"?this.cwd.resolve(e):e,this.cwd[VO](r)}},va=class extends zp{sep="\\";constructor(e=process.cwd(),r={}){let{nocase:n=!0}=r;super(e,Ta.win32,"\\",{...r,nocase:n}),this.nocase=n;for(let i=this.cwd;i;i=i.parent)i.nocase=this.nocase}parseRootPath(e){return Ta.win32.parse(e).root.toUpperCase()}newRoot(e){return new Hp(this.rootPath,ci,void 0,this.roots,this.nocase,this.childrenCache(),{fs:e})}isAbsolute(e){return e.startsWith("/")||e.startsWith("\\")||/^[a-z]:(\/|\\)/i.test(e)}},ba=class extends zp{sep="/";constructor(e=process.cwd(),r={}){let{nocase:n=!1}=r;super(e,Ta.posix,"/",{...r,nocase:n}),this.nocase=n}parseRootPath(e){return"/"}newRoot(e){return new Vp(this.rootPath,ci,void 0,this.roots,this.nocase,this.childrenCache(),{fs:e})}isAbsolute(e){return e.startsWith("/")}},sl=class extends ba{constructor(e=process.cwd(),r={}){let{nocase:n=!0}=r;super(e,{...r,nocase:n})}},_Ne=process.platform==="win32"?Hp:Vp,zO=process.platform==="win32"?va:process.platform==="darwin"?sl:ba;var hV=t=>t.length>=1,mV=t=>t.length>=1,_a=class t{#e;#t;#n;length;#r;#o;#f;#a;#d;#c;#l=!0;constructor(e,r,n,i){if(!hV(e))throw new TypeError("empty pattern list");if(!mV(r))throw new TypeError("empty glob list");if(r.length!==e.length)throw new TypeError("mismatched pattern list and glob list lengths");if(this.length=e.length,n<0||n>=this.length)throw new TypeError("index out of range");if(this.#e=e,this.#t=r,this.#n=n,this.#r=i,this.#n===0){if(this.isUNC()){let[s,o,a,c,...l]=this.#e,[u,d,f,p,...g]=this.#t;l[0]===""&&(l.shift(),g.shift());let h=[s,o,a,c,""].join("/"),T=[u,d,f,p,""].join("/");this.#e=[h,...l],this.#t=[T,...g],this.length=this.#e.length}else if(this.isDrive()||this.isAbsolute()){let[s,...o]=this.#e,[a,...c]=this.#t;o[0]===""&&(o.shift(),c.shift());let l=s+"/",u=a+"/";this.#e=[l,...o],this.#t=[u,...c],this.length=this.#e.length}}}pattern(){return this.#e[this.#n]}isString(){return typeof this.#e[this.#n]=="string"}isGlobstar(){return this.#e[this.#n]===Zt}isRegExp(){return this.#e[this.#n]instanceof RegExp}globString(){return this.#f=this.#f||(this.#n===0?this.isAbsolute()?this.#t[0]+this.#t.slice(1).join("/"):this.#t.join("/"):this.#t.slice(this.#n).join("/"))}hasMore(){return this.length>this.#n+1}rest(){return this.#o!==void 0?this.#o:this.hasMore()?(this.#o=new t(this.#e,this.#t,this.#n+1,this.#r),this.#o.#c=this.#c,this.#o.#d=this.#d,this.#o.#a=this.#a,this.#o):this.#o=null}isUNC(){let e=this.#e;return this.#d!==void 0?this.#d:this.#d=this.#r==="win32"&&this.#n===0&&e[0]===""&&e[1]===""&&typeof e[2]=="string"&&!!e[2]&&typeof e[3]=="string"&&!!e[3]}isDrive(){let e=this.#e;return this.#a!==void 0?this.#a:this.#a=this.#r==="win32"&&this.#n===0&&this.length>1&&typeof e[0]=="string"&&/^[a-z]:$/i.test(e[0])}isAbsolute(){let e=this.#e;return this.#c!==void 0?this.#c:this.#c=e[0]===""&&e.length>1||this.isDrive()||this.isUNC()}root(){let e=this.#e[0];return typeof e=="string"&&this.isAbsolute()&&this.#n===0?e:""}checkFollowGlobstar(){return!(this.#n===0||!this.isGlobstar()||!this.#l)}markFollowGlobstar(){return this.#n===0||!this.isGlobstar()||!this.#l?!1:(this.#l=!1,!0)}};var gV=typeof process=="object"&&process&&typeof process.platform=="string"?process.platform:"linux",Sa=class{relative;relativeChildren;absolute;absoluteChildren;platform;mmopts;constructor(e,{nobrace:r,nocase:n,noext:i,noglobstar:s,platform:o=gV}){this.relative=[],this.absolute=[],this.relativeChildren=[],this.absoluteChildren=[],this.platform=o,this.mmopts={dot:!0,nobrace:r,nocase:n,noext:i,noglobstar:s,optimizationLevel:2,platform:o,nocomment:!0,nonegate:!0};for(let a of e)this.add(a)}add(e){let r=new Yr(e,this.mmopts);for(let n=0;n<r.set.length;n++){let i=r.set[n],s=r.globParts[n];if(!i||!s)throw new Error("invalid pattern object");for(;i[0]==="."&&s[0]===".";)i.shift(),s.shift();let o=new _a(i,s,0,this.platform),a=new Yr(o.globString(),this.mmopts),c=s[s.length-1]==="**",l=o.isAbsolute();l?this.absolute.push(a):this.relative.push(a),c&&(l?this.absoluteChildren.push(a):this.relativeChildren.push(a))}}ignored(e){let r=e.fullpath(),n=`${r}/`,i=e.relative()||".",s=`${i}/`;for(let o of this.relative)if(o.match(i)||o.match(s))return!0;for(let o of this.absolute)if(o.match(r)||o.match(n))return!0;return!1}childrenIgnored(e){let r=e.fullpath()+"/",n=(e.relative()||".")+"/";for(let i of this.relativeChildren)if(i.match(n))return!0;for(let i of this.absoluteChildren)if(i.match(r))return!0;return!1}};var xT=class t{store;constructor(e=new Map){this.store=e}copy(){return new t(new Map(this.store))}hasWalked(e,r){return this.store.get(e.fullpath())?.has(r.globString())}storeWalked(e,r){let n=e.fullpath(),i=this.store.get(n);i?i.add(r.globString()):this.store.set(n,new Set([r.globString()]))}},LT=class{store=new Map;add(e,r,n){let i=(r?2:0)|(n?1:0),s=this.store.get(e);this.store.set(e,s===void 0?i:i&s)}entries(){return[...this.store.entries()].map(([e,r])=>[e,!!(r&2),!!(r&1)])}},qT=class{store=new Map;add(e,r){if(!e.canReaddir())return;let n=this.store.get(e);n?n.find(i=>i.globString()===r.globString())||n.push(r):this.store.set(e,[r])}get(e){let r=this.store.get(e);if(!r)throw new Error("attempting to walk unknown path");return r}entries(){return this.keys().map(e=>[e,this.store.get(e)])}keys(){return[...this.store.keys()].filter(e=>e.canReaddir())}},ol=class t{hasWalkedCache;matches=new LT;subwalks=new qT;patterns;follow;dot;opts;constructor(e,r){this.opts=e,this.follow=!!e.follow,this.dot=!!e.dot,this.hasWalkedCache=r?r.copy():new xT}processPatterns(e,r){this.patterns=r;let n=r.map(i=>[e,i]);for(let[i,s]of n){this.hasWalkedCache.storeWalked(i,s);let o=s.root(),a=s.isAbsolute()&&this.opts.absolute!==!1;if(o){i=i.resolve(o==="/"&&this.opts.root!==void 0?this.opts.root:o);let d=s.rest();if(d)s=d;else{this.matches.add(i,!0,!1);continue}}if(i.isENOENT())continue;let c,l,u=!1;for(;typeof(c=s.pattern())=="string"&&(l=s.rest());)i=i.resolve(c),s=l,u=!0;if(c=s.pattern(),l=s.rest(),u){if(this.hasWalkedCache.hasWalked(i,s))continue;this.hasWalkedCache.storeWalked(i,s)}if(typeof c=="string"){let d=c===".."||c===""||c===".";this.matches.add(i.resolve(c),a,d);continue}else if(c===Zt){(!i.isSymbolicLink()||this.follow||s.checkFollowGlobstar())&&this.subwalks.add(i,s);let d=l?.pattern(),f=l?.rest();if(!l||(d===""||d===".")&&!f)this.matches.add(i,a,d===""||d===".");else if(d===".."){let p=i.parent||i;f?this.hasWalkedCache.hasWalked(p,f)||this.subwalks.add(p,f):this.matches.add(p,a,!0)}}else c instanceof RegExp&&this.subwalks.add(i,s)}return this}subwalkTargets(){return this.subwalks.keys()}child(){return new t(this.opts,this.hasWalkedCache)}filterEntries(e,r){let n=this.subwalks.get(e),i=this.child();for(let s of r)for(let o of n){let a=o.isAbsolute(),c=o.pattern(),l=o.rest();c===Zt?i.testGlobstar(s,o,l,a):c instanceof RegExp?i.testRegExp(s,c,l,a):i.testString(s,c,l,a)}return i}testGlobstar(e,r,n,i){if((this.dot||!e.name.startsWith("."))&&(r.hasMore()||this.matches.add(e,i,!1),e.canReaddir()&&(this.follow||!e.isSymbolicLink()?this.subwalks.add(e,r):e.isSymbolicLink()&&(n&&r.checkFollowGlobstar()?this.subwalks.add(e,n):r.markFollowGlobstar()&&this.subwalks.add(e,r)))),n){let s=n.pattern();if(typeof s=="string"&&s!==".."&&s!==""&&s!==".")this.testString(e,s,n.rest(),i);else if(s===".."){let o=e.parent||e;this.subwalks.add(o,n)}else s instanceof RegExp&&this.testRegExp(e,s,n.rest(),i)}}testRegExp(e,r,n,i){r.test(e.name)&&(n?this.subwalks.add(e,n):this.matches.add(e,i,!1))}testString(e,r,n,i){e.isNamed(r)&&(n?this.subwalks.add(e,n):this.matches.add(e,i,!1))}};var yV=(t,e)=>typeof t=="string"?new Sa([t],e):Array.isArray(t)?new Sa(t,e):t,Wp=class{path;patterns;opts;seen=new Set;paused=!1;aborted=!1;#e=[];#t;#n;signal;maxDepth;includeChildMatches;constructor(e,r,n){if(this.patterns=e,this.path=r,this.opts=n,this.#n=!n.posix&&n.platform==="win32"?"\\":"/",this.includeChildMatches=n.includeChildMatches!==!1,(n.ignore||!this.includeChildMatches)&&(this.#t=yV(n.ignore??[],n),!this.includeChildMatches&&typeof this.#t.add!="function")){let i="cannot ignore child matches, ignore lacks add() method.";throw new Error(i)}this.maxDepth=n.maxDepth||1/0,n.signal&&(this.signal=n.signal,this.signal.addEventListener("abort",()=>{this.#e.length=0}))}#r(e){return this.seen.has(e)||!!this.#t?.ignored?.(e)}#o(e){return!!this.#t?.childrenIgnored?.(e)}pause(){this.paused=!0}resume(){if(this.signal?.aborted)return;this.paused=!1;let e;for(;!this.paused&&(e=this.#e.shift());)e()}onResume(e){this.signal?.aborted||(this.paused?this.#e.push(e):e())}async matchCheck(e,r){if(r&&this.opts.nodir)return;let n;if(this.opts.realpath){if(n=e.realpathCached()||await e.realpath(),!n)return;e=n}let s=e.isUnknown()||this.opts.stat?await e.lstat():e;if(this.opts.follow&&this.opts.nodir&&s?.isSymbolicLink()){let o=await s.realpath();o&&(o.isUnknown()||this.opts.stat)&&await o.lstat()}return this.matchCheckTest(s,r)}matchCheckTest(e,r){return e&&(this.maxDepth===1/0||e.depth()<=this.maxDepth)&&(!r||e.canReaddir())&&(!this.opts.nodir||!e.isDirectory())&&(!this.opts.nodir||!this.opts.follow||!e.isSymbolicLink()||!e.realpathCached()?.isDirectory())&&!this.#r(e)?e:void 0}matchCheckSync(e,r){if(r&&this.opts.nodir)return;let n;if(this.opts.realpath){if(n=e.realpathCached()||e.realpathSync(),!n)return;e=n}let s=e.isUnknown()||this.opts.stat?e.lstatSync():e;if(this.opts.follow&&this.opts.nodir&&s?.isSymbolicLink()){let o=s.realpathSync();o&&(o?.isUnknown()||this.opts.stat)&&o.lstatSync()}return this.matchCheckTest(s,r)}matchFinish(e,r){if(this.#r(e))return;if(!this.includeChildMatches&&this.#t?.add){let s=`${e.relativePosix()}/**`;this.#t.add(s)}let n=this.opts.absolute===void 0?r:this.opts.absolute;this.seen.add(e);let i=this.opts.mark&&e.isDirectory()?this.#n:"";if(this.opts.withFileTypes)this.matchEmit(e);else if(n){let s=this.opts.posix?e.fullpathPosix():e.fullpath();this.matchEmit(s+i)}else{let s=this.opts.posix?e.relativePosix():e.relative(),o=this.opts.dotRelative&&!s.startsWith(".."+this.#n)?"."+this.#n:"";this.matchEmit(s?o+s+i:"."+i)}}async match(e,r,n){let i=await this.matchCheck(e,n);i&&this.matchFinish(i,r)}matchSync(e,r,n){let i=this.matchCheckSync(e,n);i&&this.matchFinish(i,r)}walkCB(e,r,n){this.signal?.aborted&&n(),this.walkCB2(e,r,new ol(this.opts),n)}walkCB2(e,r,n,i){if(this.#o(e))return i();if(this.signal?.aborted&&i(),this.paused){this.onResume(()=>this.walkCB2(e,r,n,i));return}n.processPatterns(e,r);let s=1,o=()=>{--s===0&&i()};for(let[a,c,l]of n.matches.entries())this.#r(a)||(s++,this.match(a,c,l).then(()=>o()));for(let a of n.subwalkTargets()){if(this.maxDepth!==1/0&&a.depth()>=this.maxDepth)continue;s++;let c=a.readdirCached();a.calledReaddir()?this.walkCB3(a,c,n,o):a.readdirCB((l,u)=>this.walkCB3(a,u,n,o),!0)}o()}walkCB3(e,r,n,i){n=n.filterEntries(e,r);let s=1,o=()=>{--s===0&&i()};for(let[a,c,l]of n.matches.entries())this.#r(a)||(s++,this.match(a,c,l).then(()=>o()));for(let[a,c]of n.subwalks.entries())s++,this.walkCB2(a,c,n.child(),o);o()}walkCBSync(e,r,n){this.signal?.aborted&&n(),this.walkCB2Sync(e,r,new ol(this.opts),n)}walkCB2Sync(e,r,n,i){if(this.#o(e))return i();if(this.signal?.aborted&&i(),this.paused){this.onResume(()=>this.walkCB2Sync(e,r,n,i));return}n.processPatterns(e,r);let s=1,o=()=>{--s===0&&i()};for(let[a,c,l]of n.matches.entries())this.#r(a)||this.matchSync(a,c,l);for(let a of n.subwalkTargets()){if(this.maxDepth!==1/0&&a.depth()>=this.maxDepth)continue;s++;let c=a.readdirSync();this.walkCB3Sync(a,c,n,o)}o()}walkCB3Sync(e,r,n,i){n=n.filterEntries(e,r);let s=1,o=()=>{--s===0&&i()};for(let[a,c,l]of n.matches.entries())this.#r(a)||this.matchSync(a,c,l);for(let[a,c]of n.subwalks.entries())s++,this.walkCB2Sync(a,c,n.child(),o);o()}},al=class extends Wp{matches=new Set;constructor(e,r,n){super(e,r,n)}matchEmit(e){this.matches.add(e)}async walk(){if(this.signal?.aborted)throw this.signal.reason;return this.path.isUnknown()&&await this.path.lstat(),await new Promise((e,r)=>{this.walkCB(this.path,this.patterns,()=>{this.signal?.aborted?r(this.signal.reason):e(this.matches)})}),this.matches}walkSync(){if(this.signal?.aborted)throw this.signal.reason;return this.path.isUnknown()&&this.path.lstatSync(),this.walkCBSync(this.path,this.patterns,()=>{if(this.signal?.aborted)throw this.signal.reason}),this.matches}},cl=class extends Wp{results;constructor(e,r,n){super(e,r,n),this.results=new ps({signal:this.signal,objectMode:!0}),this.results.on("drain",()=>this.resume()),this.results.on("resume",()=>this.resume())}matchEmit(e){this.results.write(e),this.results.flowing||this.pause()}stream(){let e=this.path;return e.isUnknown()?e.lstat().then(()=>{this.walkCB(e,this.patterns,()=>this.results.end())}):this.walkCB(e,this.patterns,()=>this.results.end()),this.results}streamSync(){return this.path.isUnknown()&&this.path.lstatSync(),this.walkCBSync(this.path,this.patterns,()=>this.results.end()),this.results}};var TV=typeof process=="object"&&process&&typeof process.platform=="string"?process.platform:"linux",Fn=class{absolute;cwd;root;dot;dotRelative;follow;ignore;magicalBraces;mark;matchBase;maxDepth;nobrace;nocase;nodir;noext;noglobstar;pattern;platform;realpath;scurry;stat;signal;windowsPathsNoEscape;withFileTypes;includeChildMatches;opts;patterns;constructor(e,r){if(!r)throw new TypeError("glob options required");if(this.withFileTypes=!!r.withFileTypes,this.signal=r.signal,this.follow=!!r.follow,this.dot=!!r.dot,this.dotRelative=!!r.dotRelative,this.nodir=!!r.nodir,this.mark=!!r.mark,r.cwd?(r.cwd instanceof URL||r.cwd.startsWith("file://"))&&(r.cwd=(0,WO.fileURLToPath)(r.cwd)):this.cwd="",this.cwd=r.cwd||"",this.root=r.root,this.magicalBraces=!!r.magicalBraces,this.nobrace=!!r.nobrace,this.noext=!!r.noext,this.realpath=!!r.realpath,this.absolute=r.absolute,this.includeChildMatches=r.includeChildMatches!==!1,this.noglobstar=!!r.noglobstar,this.matchBase=!!r.matchBase,this.maxDepth=typeof r.maxDepth=="number"?r.maxDepth:1/0,this.stat=!!r.stat,this.ignore=r.ignore,this.withFileTypes&&this.absolute!==void 0)throw new Error("cannot set absolute and withFileTypes:true");if(typeof e=="string"&&(e=[e]),this.windowsPathsNoEscape=!!r.windowsPathsNoEscape||r.allowWindowsEscape===!1,this.windowsPathsNoEscape&&(e=e.map(c=>c.replace(/\\/g,"/"))),this.matchBase){if(r.noglobstar)throw new TypeError("base matching requires globstar");e=e.map(c=>c.includes("/")?c:`./**/${c}`)}if(this.pattern=e,this.platform=r.platform||TV,this.opts={...r,platform:this.platform},r.scurry){if(this.scurry=r.scurry,r.nocase!==void 0&&r.nocase!==r.scurry.nocase)throw new Error("nocase option contradicts provided scurry option")}else{let c=r.platform==="win32"?va:r.platform==="darwin"?sl:r.platform?ba:zO;this.scurry=new c(this.cwd,{nocase:r.nocase,fs:r.fs})}this.nocase=this.scurry.nocase;let n=this.platform==="darwin"||this.platform==="win32",i={...r,dot:this.dot,matchBase:this.matchBase,nobrace:this.nobrace,nocase:this.nocase,nocaseMagicOnly:n,nocomment:!0,noext:this.noext,nonegate:!0,optimizationLevel:2,platform:this.platform,windowsPathsNoEscape:this.windowsPathsNoEscape,debug:!!this.opts.debug},s=this.pattern.map(c=>new Yr(c,i)),[o,a]=s.reduce((c,l)=>(c[0].push(...l.set),c[1].push(...l.globParts),c),[[],[]]);this.patterns=o.map((c,l)=>{let u=a[l];if(!u)throw new Error("invalid pattern object");return new _a(c,u,0,this.platform)})}async walk(){return[...await new al(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).walk()]}walkSync(){return[...new al(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).walkSync()]}stream(){return new cl(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).stream()}streamSync(){return new cl(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).streamSync()}iterateSync(){return this.streamSync()[Symbol.iterator]()}[Symbol.iterator](){return this.iterateSync()}iterate(){return this.stream()[Symbol.asyncIterator]()}[Symbol.asyncIterator](){return this.iterate()}};var $T=(t,e={})=>{Array.isArray(t)||(t=[t]);for(let r of t)if(new Yr(r,e).hasMagic())return!0;return!1};function Gp(t,e={}){return new Fn(t,e).streamSync()}function KO(t,e={}){return new Fn(t,e).stream()}function YO(t,e={}){return new Fn(t,e).walkSync()}async function GO(t,e={}){return new Fn(t,e).walk()}function Kp(t,e={}){return new Fn(t,e).iterateSync()}function XO(t,e={}){return new Fn(t,e).iterate()}var vV=Gp,bV=Object.assign(KO,{sync:Gp}),_V=Kp,SV=Object.assign(XO,{sync:Kp}),NV=Object.assign(YO,{stream:Gp,iterate:Kp}),Js=Object.assign(GO,{glob:GO,globSync:YO,sync:NV,globStream:KO,stream:bV,globStreamSync:Gp,streamSync:vV,globIterate:XO,iterate:SV,globIterateSync:Kp,iterateSync:_V,Glob:Fn,hasMagic:$T,escape:pa,unescape:qn});Js.glob=Js;var _S=$(vb()),j$=$($$());var TS={};IB(TS,{$id:()=>gJ,$schema:()=>mJ,default:()=>_J,definitions:()=>TJ,properties:()=>bJ,title:()=>yJ,type:()=>vJ});var mJ="http://json-schema.org/draft-07/schema#",gJ="http://json-schema.org/draft-07/schema#",yJ="Core schema meta-schema",TJ={schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},vJ=["object","boolean"],bJ={$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},_J={$schema:mJ,$id:gJ,title:yJ,definitions:TJ,type:vJ,properties:bJ,default:!0};var Jr=$(U());var Pm=class extends Ac{constructor(r,n){super();this.ajv=r;this.schemaKey=n;this.validate=this.ajv.getSchema(this.schemaKey)}getIssue(r,n){let i=[];if(n.disabled){let o=n.getProperty("status");return[...n.definitions,...n.referencedBy].forEach(a=>i.push(j(21,a.firstToken,a.lastToken,a,{severity:Jr.DiagnosticSeverity.Hint,linkedTo:[...o?.ast?[o?.ast]:[]],tags:[Jr.DiagnosticTag.Unnecessary]}))),i}let s=X.toJson(n);try{this.validate?(this.validate(s),this.validate.errors&&(this.validate.errors.forEach(o=>i.push(...SJ(r,o,n,this.schemaKey))),console.log(this.schemaKey,`${n.pathString}`,this.validate.errors,s))):console.log("no validate")}catch(o){console.log(this.schemaKey,`${n.pathString}`,this.schemaKey,o)}return i}getOnPropertyHover(r){let n=(this.validate?.schema).properties?.[r];if(n&&typeof n=="object"&&"description"in n)return{kind:Jr.MarkupKind.Markdown,value:[...n.description?["### Description",Array.isArray(n.description)?n.description.join(`
295
+ >>> no match, partial?`,e,f,r,p),f===c))}let h;if(typeof u=="string"?(h=d===u,this.debug("string match",u,d,h)):(h=u.test(d),this.debug("pattern match",u,d,h)),!h)return!1}if(o===c&&a===l)return!0;if(o===c)return n;if(a===l)return o===c-1&&e[o]==="";throw new Error("wtf?")}braceExpand(){return SO(this.pattern,this.options)}parse(e){Kc(e);let r=this.options;if(e==="**")return Zt;if(e==="")return"";let n,i=null;(n=e.match(xH))?i=r.dot?qH:LH:(n=e.match(RH))?i=(r.nocase?r.dot?DH:EH:r.dot?wH:PH)(n[1]):(n=e.match($H))?i=(r.nocase?r.dot?FH:BH:r.dot?jH:UH)(n):(n=e.match(CH))?i=r.dot?IH:AH:(n=e.match(OH))&&(i=MH);let s=fa.fromGlob(e,this.options).toMMPattern();return i&&typeof s=="object"&&Reflect.defineProperty(s,"test",{value:i}),s}makeRe(){if(this.regexp||this.regexp===!1)return this.regexp;let e=this.set;if(!e.length)return this.regexp=!1,this.regexp;let r=this.options,n=r.noglobstar?zH:r.dot?WH:GH,i=new Set(r.nocase?["i"]:[]),s=e.map(c=>{let l=c.map(u=>{if(u instanceof RegExp)for(let d of u.flags.split(""))i.add(d);return typeof u=="string"?QH(u):u===Zt?Zt:u._src});return l.forEach((u,d)=>{let f=l[d+1],p=l[d-1];u!==Zt||p===Zt||(p===void 0?f!==void 0&&f!==Zt?l[d+1]="(?:\\/|"+n+"\\/)?"+f:l[d]=n:f===void 0?l[d-1]=p+"(?:\\/|"+n+")?":f!==Zt&&(l[d-1]=p+"(?:\\/|\\/"+n+"\\/)"+f,l[d+1]=Zt))}),l.filter(u=>u!==Zt).join("/")}).join("|"),[o,a]=e.length>1?["(?:",")"]:["",""];s="^"+o+s+a+"$",this.negate&&(s="^(?!"+s+").+$");try{this.regexp=new RegExp(s,[...i].join(""))}catch{this.regexp=!1}return this.regexp}slashSplit(e){return this.preserveMultipleSlashes?e.split("/"):this.isWindows&&/^\/\/[^\/]+/.test(e)?["",...e.split(/\/+/)]:e.split(/\/+/)}match(e,r=this.partial){if(this.debug("match",e,this.pattern),this.comment)return!1;if(this.empty)return e==="";if(e==="/"&&r)return!0;let n=this.options;this.isWindows&&(e=e.split("\\").join("/"));let i=this.slashSplit(e);this.debug(this.pattern,"split",i);let s=this.set;this.debug(this.pattern,"set",s);let o=i[i.length-1];if(!o)for(let a=i.length-2;!o&&a>=0;a--)o=i[a];for(let a=0;a<s.length;a++){let c=s[a],l=i;if(n.matchBase&&c.length===1&&(l=[o]),this.matchOne(l,c,r))return n.flipNegate?!0:!this.negate}return n.flipNegate?!1:this.negate}static defaults(e){return _r.defaults(e).Minimatch}};_r.AST=fa;_r.Minimatch=Xr;_r.escape=pa;_r.unescape=qn;var WO=require("node:url");var ha=typeof performance=="object"&&performance&&typeof performance.now=="function"?performance:Date,kO=new Set,NT=typeof process=="object"&&process?process:{},RO=(t,e,r,n)=>{typeof NT.emitWarning=="function"?NT.emitWarning(t,e,r,n):console.error(`[${r}] ${e}: ${t}`)},Ap=globalThis.AbortController,NO=globalThis.AbortSignal;if(typeof Ap>"u"){NO=class{onabort;_onabort=[];reason;aborted=!1;addEventListener(n,i){this._onabort.push(i)}},Ap=class{constructor(){e()}signal=new NO;abort(n){if(!this.signal.aborted){this.signal.reason=n,this.signal.aborted=!0;for(let i of this.signal._onabort)i(n);this.signal.onabort?.(n)}}};let t=NT.env?.LRU_CACHE_IGNORE_AC_WARNING!=="1",e=()=>{t&&(t=!1,RO("AbortController is not defined. If using lru-cache in node 14, load an AbortController polyfill from the `node-abort-controller` package. A minimal polyfill is provided for use by LRUCache.fetch(), but it should not be relied upon in other contexts (eg, passing it to other APIs that use AbortController/AbortSignal might have undesirable effects). You may disable this with LRU_CACHE_IGNORE_AC_WARNING=1 in the env.","NO_ABORT_CONTROLLER","ENOTSUP",e))}}var ZH=t=>!kO.has(t),gNe=Symbol("type"),ds=t=>t&&t===Math.floor(t)&&t>0&&isFinite(t),PO=t=>ds(t)?t<=Math.pow(2,8)?Uint8Array:t<=Math.pow(2,16)?Uint16Array:t<=Math.pow(2,32)?Uint32Array:t<=Number.MAX_SAFE_INTEGER?ma:null:null,ma=class extends Array{constructor(e){super(e),this.fill(0)}},kT=class t{heap;length;static#e=!1;static create(e){let r=PO(e);if(!r)return[];t.#e=!0;let n=new t(e,r);return t.#e=!1,n}constructor(e,r){if(!t.#e)throw new TypeError("instantiate Stack using Stack.create(n)");this.heap=new r(e),this.length=0}push(e){this.heap[this.length++]=e}pop(){return this.heap[--this.length]}},Xc=class t{#e;#t;#n;#r;#o;#f;ttl;ttlResolution;ttlAutopurge;updateAgeOnGet;updateAgeOnHas;allowStale;noDisposeOnSet;noUpdateTTL;maxEntrySize;sizeCalculation;noDeleteOnFetchRejection;noDeleteOnStaleGet;allowStaleOnFetchAbort;allowStaleOnFetchRejection;ignoreFetchAbort;#a;#d;#c;#l;#s;#y;#T;#h;#p;#N;#g;#k;#R;#b;#_;#S;#m;static unsafeExposeInternals(e){return{starts:e.#R,ttls:e.#b,sizes:e.#k,keyMap:e.#c,keyList:e.#l,valList:e.#s,next:e.#y,prev:e.#T,get head(){return e.#h},get tail(){return e.#p},free:e.#N,isBackgroundFetch:r=>e.#u(r),backgroundFetch:(r,n,i,s)=>e.#$(r,n,i,s),moveToTail:r=>e.#F(r),indexes:r=>e.#w(r),rindexes:r=>e.#E(r),isStale:r=>e.#v(r)}}get max(){return this.#e}get maxSize(){return this.#t}get calculatedSize(){return this.#d}get size(){return this.#a}get fetchMethod(){return this.#o}get memoMethod(){return this.#f}get dispose(){return this.#n}get disposeAfter(){return this.#r}constructor(e){let{max:r=0,ttl:n,ttlResolution:i=1,ttlAutopurge:s,updateAgeOnGet:o,updateAgeOnHas:a,allowStale:c,dispose:l,disposeAfter:u,noDisposeOnSet:d,noUpdateTTL:f,maxSize:p=0,maxEntrySize:g=0,sizeCalculation:h,fetchMethod:T,memoMethod:S,noDeleteOnFetchRejection:_,noDeleteOnStaleGet:v,allowStaleOnFetchRejection:R,allowStaleOnFetchAbort:D,ignoreFetchAbort:B}=e;if(r!==0&&!ds(r))throw new TypeError("max option must be a nonnegative integer");let M=r?PO(r):Array;if(!M)throw new Error("invalid max value: "+r);if(this.#e=r,this.#t=p,this.maxEntrySize=g||this.#t,this.sizeCalculation=h,this.sizeCalculation){if(!this.#t&&!this.maxEntrySize)throw new TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize");if(typeof this.sizeCalculation!="function")throw new TypeError("sizeCalculation set to non-function")}if(S!==void 0&&typeof S!="function")throw new TypeError("memoMethod must be a function if defined");if(this.#f=S,T!==void 0&&typeof T!="function")throw new TypeError("fetchMethod must be a function if specified");if(this.#o=T,this.#S=!!T,this.#c=new Map,this.#l=new Array(r).fill(void 0),this.#s=new Array(r).fill(void 0),this.#y=new M(r),this.#T=new M(r),this.#h=0,this.#p=0,this.#N=kT.create(r),this.#a=0,this.#d=0,typeof l=="function"&&(this.#n=l),typeof u=="function"?(this.#r=u,this.#g=[]):(this.#r=void 0,this.#g=void 0),this.#_=!!this.#n,this.#m=!!this.#r,this.noDisposeOnSet=!!d,this.noUpdateTTL=!!f,this.noDeleteOnFetchRejection=!!_,this.allowStaleOnFetchRejection=!!R,this.allowStaleOnFetchAbort=!!D,this.ignoreFetchAbort=!!B,this.maxEntrySize!==0){if(this.#t!==0&&!ds(this.#t))throw new TypeError("maxSize must be a positive integer if specified");if(!ds(this.maxEntrySize))throw new TypeError("maxEntrySize must be a positive integer if specified");this.#C()}if(this.allowStale=!!c,this.noDeleteOnStaleGet=!!v,this.updateAgeOnGet=!!o,this.updateAgeOnHas=!!a,this.ttlResolution=ds(i)||i===0?i:1,this.ttlAutopurge=!!s,this.ttl=n||0,this.ttl){if(!ds(this.ttl))throw new TypeError("ttl must be a positive integer if specified");this.#D()}if(this.#e===0&&this.ttl===0&&this.#t===0)throw new TypeError("At least one of max, maxSize, or ttl is required");if(!this.ttlAutopurge&&!this.#e&&!this.#t){let F="LRU_CACHE_UNBOUNDED";ZH(F)&&(kO.add(F),RO("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning",F,t))}}getRemainingTTL(e){return this.#c.has(e)?1/0:0}#D(){let e=new ma(this.#e),r=new ma(this.#e);this.#b=e,this.#R=r,this.#I=(s,o,a=ha.now())=>{if(r[s]=o!==0?a:0,e[s]=o,o!==0&&this.ttlAutopurge){let c=setTimeout(()=>{this.#v(s)&&this.#A(this.#l[s],"expire")},o+1);c.unref&&c.unref()}},this.#P=s=>{r[s]=e[s]!==0?ha.now():0},this.#i=(s,o)=>{if(e[o]){let a=e[o],c=r[o];if(!a||!c)return;s.ttl=a,s.start=c,s.now=n||i();let l=s.now-c;s.remainingTTL=a-l}};let n=0,i=()=>{let s=ha.now();if(this.ttlResolution>0){n=s;let o=setTimeout(()=>n=0,this.ttlResolution);o.unref&&o.unref()}return s};this.getRemainingTTL=s=>{let o=this.#c.get(s);if(o===void 0)return 0;let a=e[o],c=r[o];if(!a||!c)return 1/0;let l=(n||i())-c;return a-l},this.#v=s=>{let o=r[s],a=e[s];return!!a&&!!o&&(n||i())-o>a}}#P=()=>{};#i=()=>{};#I=()=>{};#v=()=>!1;#C(){let e=new ma(this.#e);this.#d=0,this.#k=e,this.#O=r=>{this.#d-=e[r],e[r]=0},this.#x=(r,n,i,s)=>{if(this.#u(n))return 0;if(!ds(i))if(s){if(typeof s!="function")throw new TypeError("sizeCalculation must be a function");if(i=s(n,r),!ds(i))throw new TypeError("sizeCalculation return invalid (expect positive integer)")}else throw new TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set.");return i},this.#M=(r,n,i)=>{if(e[r]=n,this.#t){let s=this.#t-e[r];for(;this.#d>s;)this.#q(!0)}this.#d+=e[r],i&&(i.entrySize=n,i.totalCalculatedSize=this.#d)}}#O=e=>{};#M=(e,r,n)=>{};#x=(e,r,n,i)=>{if(n||i)throw new TypeError("cannot set size without setting maxSize or maxEntrySize on cache");return 0};*#w({allowStale:e=this.allowStale}={}){if(this.#a)for(let r=this.#p;!(!this.#L(r)||((e||!this.#v(r))&&(yield r),r===this.#h));)r=this.#T[r]}*#E({allowStale:e=this.allowStale}={}){if(this.#a)for(let r=this.#h;!(!this.#L(r)||((e||!this.#v(r))&&(yield r),r===this.#p));)r=this.#y[r]}#L(e){return e!==void 0&&this.#c.get(this.#l[e])===e}*entries(){for(let e of this.#w())this.#s[e]!==void 0&&this.#l[e]!==void 0&&!this.#u(this.#s[e])&&(yield[this.#l[e],this.#s[e]])}*rentries(){for(let e of this.#E())this.#s[e]!==void 0&&this.#l[e]!==void 0&&!this.#u(this.#s[e])&&(yield[this.#l[e],this.#s[e]])}*keys(){for(let e of this.#w()){let r=this.#l[e];r!==void 0&&!this.#u(this.#s[e])&&(yield r)}}*rkeys(){for(let e of this.#E()){let r=this.#l[e];r!==void 0&&!this.#u(this.#s[e])&&(yield r)}}*values(){for(let e of this.#w())this.#s[e]!==void 0&&!this.#u(this.#s[e])&&(yield this.#s[e])}*rvalues(){for(let e of this.#E())this.#s[e]!==void 0&&!this.#u(this.#s[e])&&(yield this.#s[e])}[Symbol.iterator](){return this.entries()}[Symbol.toStringTag]="LRUCache";find(e,r={}){for(let n of this.#w()){let i=this.#s[n],s=this.#u(i)?i.__staleWhileFetching:i;if(s!==void 0&&e(s,this.#l[n],this))return this.get(this.#l[n],r)}}forEach(e,r=this){for(let n of this.#w()){let i=this.#s[n],s=this.#u(i)?i.__staleWhileFetching:i;s!==void 0&&e.call(r,s,this.#l[n],this)}}rforEach(e,r=this){for(let n of this.#E()){let i=this.#s[n],s=this.#u(i)?i.__staleWhileFetching:i;s!==void 0&&e.call(r,s,this.#l[n],this)}}purgeStale(){let e=!1;for(let r of this.#E({allowStale:!0}))this.#v(r)&&(this.#A(this.#l[r],"expire"),e=!0);return e}info(e){let r=this.#c.get(e);if(r===void 0)return;let n=this.#s[r],i=this.#u(n)?n.__staleWhileFetching:n;if(i===void 0)return;let s={value:i};if(this.#b&&this.#R){let o=this.#b[r],a=this.#R[r];if(o&&a){let c=o-(ha.now()-a);s.ttl=c,s.start=Date.now()}}return this.#k&&(s.size=this.#k[r]),s}dump(){let e=[];for(let r of this.#w({allowStale:!0})){let n=this.#l[r],i=this.#s[r],s=this.#u(i)?i.__staleWhileFetching:i;if(s===void 0||n===void 0)continue;let o={value:s};if(this.#b&&this.#R){o.ttl=this.#b[r];let a=ha.now()-this.#R[r];o.start=Math.floor(Date.now()-a)}this.#k&&(o.size=this.#k[r]),e.unshift([n,o])}return e}load(e){this.clear();for(let[r,n]of e){if(n.start){let i=Date.now()-n.start;n.start=ha.now()-i}this.set(r,n.value,n)}}set(e,r,n={}){if(r===void 0)return this.delete(e),this;let{ttl:i=this.ttl,start:s,noDisposeOnSet:o=this.noDisposeOnSet,sizeCalculation:a=this.sizeCalculation,status:c}=n,{noUpdateTTL:l=this.noUpdateTTL}=n,u=this.#x(e,r,n.size||0,a);if(this.maxEntrySize&&u>this.maxEntrySize)return c&&(c.set="miss",c.maxEntrySizeExceeded=!0),this.#A(e,"set"),this;let d=this.#a===0?void 0:this.#c.get(e);if(d===void 0)d=this.#a===0?this.#p:this.#N.length!==0?this.#N.pop():this.#a===this.#e?this.#q(!1):this.#a,this.#l[d]=e,this.#s[d]=r,this.#c.set(e,d),this.#y[this.#p]=d,this.#T[d]=this.#p,this.#p=d,this.#a++,this.#M(d,u,c),c&&(c.set="add"),l=!1;else{this.#F(d);let f=this.#s[d];if(r!==f){if(this.#S&&this.#u(f)){f.__abortController.abort(new Error("replaced"));let{__staleWhileFetching:p}=f;p!==void 0&&!o&&(this.#_&&this.#n?.(p,e,"set"),this.#m&&this.#g?.push([p,e,"set"]))}else o||(this.#_&&this.#n?.(f,e,"set"),this.#m&&this.#g?.push([f,e,"set"]));if(this.#O(d),this.#M(d,u,c),this.#s[d]=r,c){c.set="replace";let p=f&&this.#u(f)?f.__staleWhileFetching:f;p!==void 0&&(c.oldValue=p)}}else c&&(c.set="update")}if(i!==0&&!this.#b&&this.#D(),this.#b&&(l||this.#I(d,i,s),c&&this.#i(c,d)),!o&&this.#m&&this.#g){let f=this.#g,p;for(;p=f?.shift();)this.#r?.(...p)}return this}pop(){try{for(;this.#a;){let e=this.#s[this.#h];if(this.#q(!0),this.#u(e)){if(e.__staleWhileFetching)return e.__staleWhileFetching}else if(e!==void 0)return e}}finally{if(this.#m&&this.#g){let e=this.#g,r;for(;r=e?.shift();)this.#r?.(...r)}}}#q(e){let r=this.#h,n=this.#l[r],i=this.#s[r];return this.#S&&this.#u(i)?i.__abortController.abort(new Error("evicted")):(this.#_||this.#m)&&(this.#_&&this.#n?.(i,n,"evict"),this.#m&&this.#g?.push([i,n,"evict"])),this.#O(r),e&&(this.#l[r]=void 0,this.#s[r]=void 0,this.#N.push(r)),this.#a===1?(this.#h=this.#p=0,this.#N.length=0):this.#h=this.#y[r],this.#c.delete(n),this.#a--,r}has(e,r={}){let{updateAgeOnHas:n=this.updateAgeOnHas,status:i}=r,s=this.#c.get(e);if(s!==void 0){let o=this.#s[s];if(this.#u(o)&&o.__staleWhileFetching===void 0)return!1;if(this.#v(s))i&&(i.has="stale",this.#i(i,s));else return n&&this.#P(s),i&&(i.has="hit",this.#i(i,s)),!0}else i&&(i.has="miss");return!1}peek(e,r={}){let{allowStale:n=this.allowStale}=r,i=this.#c.get(e);if(i===void 0||!n&&this.#v(i))return;let s=this.#s[i];return this.#u(s)?s.__staleWhileFetching:s}#$(e,r,n,i){let s=r===void 0?void 0:this.#s[r];if(this.#u(s))return s;let o=new Ap,{signal:a}=n;a?.addEventListener("abort",()=>o.abort(a.reason),{signal:o.signal});let c={signal:o.signal,options:n,context:i},l=(h,T=!1)=>{let{aborted:S}=o.signal,_=n.ignoreFetchAbort&&h!==void 0;if(n.status&&(S&&!T?(n.status.fetchAborted=!0,n.status.fetchError=o.signal.reason,_&&(n.status.fetchAbortIgnored=!0)):n.status.fetchResolved=!0),S&&!_&&!T)return d(o.signal.reason);let v=p;return this.#s[r]===p&&(h===void 0?v.__staleWhileFetching?this.#s[r]=v.__staleWhileFetching:this.#A(e,"fetch"):(n.status&&(n.status.fetchUpdated=!0),this.set(e,h,c.options))),h},u=h=>(n.status&&(n.status.fetchRejected=!0,n.status.fetchError=h),d(h)),d=h=>{let{aborted:T}=o.signal,S=T&&n.allowStaleOnFetchAbort,_=S||n.allowStaleOnFetchRejection,v=_||n.noDeleteOnFetchRejection,R=p;if(this.#s[r]===p&&(!v||R.__staleWhileFetching===void 0?this.#A(e,"fetch"):S||(this.#s[r]=R.__staleWhileFetching)),_)return n.status&&R.__staleWhileFetching!==void 0&&(n.status.returnedStale=!0),R.__staleWhileFetching;if(R.__returned===R)throw h},f=(h,T)=>{let S=this.#o?.(e,s,c);S&&S instanceof Promise&&S.then(_=>h(_===void 0?void 0:_),T),o.signal.addEventListener("abort",()=>{(!n.ignoreFetchAbort||n.allowStaleOnFetchAbort)&&(h(void 0),n.allowStaleOnFetchAbort&&(h=_=>l(_,!0)))})};n.status&&(n.status.fetchDispatched=!0);let p=new Promise(f).then(l,u),g=Object.assign(p,{__abortController:o,__staleWhileFetching:s,__returned:void 0});return r===void 0?(this.set(e,g,{...c.options,status:void 0}),r=this.#c.get(e)):this.#s[r]=g,g}#u(e){if(!this.#S)return!1;let r=e;return!!r&&r instanceof Promise&&r.hasOwnProperty("__staleWhileFetching")&&r.__abortController instanceof Ap}async fetch(e,r={}){let{allowStale:n=this.allowStale,updateAgeOnGet:i=this.updateAgeOnGet,noDeleteOnStaleGet:s=this.noDeleteOnStaleGet,ttl:o=this.ttl,noDisposeOnSet:a=this.noDisposeOnSet,size:c=0,sizeCalculation:l=this.sizeCalculation,noUpdateTTL:u=this.noUpdateTTL,noDeleteOnFetchRejection:d=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:f=this.allowStaleOnFetchRejection,ignoreFetchAbort:p=this.ignoreFetchAbort,allowStaleOnFetchAbort:g=this.allowStaleOnFetchAbort,context:h,forceRefresh:T=!1,status:S,signal:_}=r;if(!this.#S)return S&&(S.fetch="get"),this.get(e,{allowStale:n,updateAgeOnGet:i,noDeleteOnStaleGet:s,status:S});let v={allowStale:n,updateAgeOnGet:i,noDeleteOnStaleGet:s,ttl:o,noDisposeOnSet:a,size:c,sizeCalculation:l,noUpdateTTL:u,noDeleteOnFetchRejection:d,allowStaleOnFetchRejection:f,allowStaleOnFetchAbort:g,ignoreFetchAbort:p,status:S,signal:_},R=this.#c.get(e);if(R===void 0){S&&(S.fetch="miss");let D=this.#$(e,R,v,h);return D.__returned=D}else{let D=this.#s[R];if(this.#u(D)){let Xe=n&&D.__staleWhileFetching!==void 0;return S&&(S.fetch="inflight",Xe&&(S.returnedStale=!0)),Xe?D.__staleWhileFetching:D.__returned=D}let B=this.#v(R);if(!T&&!B)return S&&(S.fetch="hit"),this.#F(R),i&&this.#P(R),S&&this.#i(S,R),D;let M=this.#$(e,R,v,h),ge=M.__staleWhileFetching!==void 0&&n;return S&&(S.fetch=B?"stale":"refresh",ge&&B&&(S.returnedStale=!0)),ge?M.__staleWhileFetching:M.__returned=M}}async forceFetch(e,r={}){let n=await this.fetch(e,r);if(n===void 0)throw new Error("fetch() returned undefined");return n}memo(e,r={}){let n=this.#f;if(!n)throw new Error("no memoMethod provided to constructor");let{context:i,forceRefresh:s,...o}=r,a=this.get(e,o);if(!s&&a!==void 0)return a;let c=n(e,a,{options:o,context:i});return this.set(e,c,o),c}get(e,r={}){let{allowStale:n=this.allowStale,updateAgeOnGet:i=this.updateAgeOnGet,noDeleteOnStaleGet:s=this.noDeleteOnStaleGet,status:o}=r,a=this.#c.get(e);if(a!==void 0){let c=this.#s[a],l=this.#u(c);return o&&this.#i(o,a),this.#v(a)?(o&&(o.get="stale"),l?(o&&n&&c.__staleWhileFetching!==void 0&&(o.returnedStale=!0),n?c.__staleWhileFetching:void 0):(s||this.#A(e,"expire"),o&&n&&(o.returnedStale=!0),n?c:void 0)):(o&&(o.get="hit"),l?c.__staleWhileFetching:(this.#F(a),i&&this.#P(a),c))}else o&&(o.get="miss")}#B(e,r){this.#T[r]=e,this.#y[e]=r}#F(e){e!==this.#p&&(e===this.#h?this.#h=this.#y[e]:this.#B(this.#T[e],this.#y[e]),this.#B(this.#p,e),this.#p=e)}delete(e){return this.#A(e,"delete")}#A(e,r){let n=!1;if(this.#a!==0){let i=this.#c.get(e);if(i!==void 0)if(n=!0,this.#a===1)this.#j(r);else{this.#O(i);let s=this.#s[i];if(this.#u(s)?s.__abortController.abort(new Error("deleted")):(this.#_||this.#m)&&(this.#_&&this.#n?.(s,e,r),this.#m&&this.#g?.push([s,e,r])),this.#c.delete(e),this.#l[i]=void 0,this.#s[i]=void 0,i===this.#p)this.#p=this.#T[i];else if(i===this.#h)this.#h=this.#y[i];else{let o=this.#T[i];this.#y[o]=this.#y[i];let a=this.#y[i];this.#T[a]=this.#T[i]}this.#a--,this.#N.push(i)}}if(this.#m&&this.#g?.length){let i=this.#g,s;for(;s=i?.shift();)this.#r?.(...s)}return n}clear(){return this.#j("delete")}#j(e){for(let r of this.#E({allowStale:!0})){let n=this.#s[r];if(this.#u(n))n.__abortController.abort(new Error("deleted"));else{let i=this.#l[r];this.#_&&this.#n?.(n,i,e),this.#m&&this.#g?.push([n,i,e])}}if(this.#c.clear(),this.#s.fill(void 0),this.#l.fill(void 0),this.#b&&this.#R&&(this.#b.fill(0),this.#R.fill(0)),this.#k&&this.#k.fill(0),this.#h=0,this.#p=0,this.#N.length=0,this.#d=0,this.#a=0,this.#m&&this.#g){let r=this.#g,n;for(;n=r?.shift();)this.#r?.(...n)}}};var Ta=require("node:path"),LO=require("node:url"),li=require("fs"),lV=$(require("node:fs"),1),hs=require("node:fs/promises");var $p=require("node:events"),AT=$(require("node:stream"),1),AO=require("node:string_decoder"),wO=typeof process=="object"&&process?process:{stdout:null,stderr:null},eV=t=>!!t&&typeof t=="object"&&(t instanceof ps||t instanceof AT.default||tV(t)||rV(t)),tV=t=>!!t&&typeof t=="object"&&t instanceof $p.EventEmitter&&typeof t.pipe=="function"&&t.pipe!==AT.default.Writable.prototype.pipe,rV=t=>!!t&&typeof t=="object"&&t instanceof $p.EventEmitter&&typeof t.write=="function"&&typeof t.end=="function",Ci=Symbol("EOF"),Ai=Symbol("maybeEmitEnd"),fs=Symbol("emittedEnd"),Ip=Symbol("emittingEnd"),Jc=Symbol("emittedError"),Op=Symbol("closed"),EO=Symbol("read"),Mp=Symbol("flush"),DO=Symbol("flushChunk"),$n=Symbol("encoding"),ga=Symbol("decoder"),Wt=Symbol("flowing"),Qc=Symbol("paused"),ya=Symbol("resume"),Gt=Symbol("buffer"),Sr=Symbol("pipes"),Kt=Symbol("bufferLength"),RT=Symbol("bufferPush"),xp=Symbol("bufferShift"),fr=Symbol("objectMode"),It=Symbol("destroyed"),PT=Symbol("error"),wT=Symbol("emitData"),CO=Symbol("emitEnd"),ET=Symbol("emitEnd2"),ai=Symbol("async"),DT=Symbol("abort"),Lp=Symbol("aborted"),Zc=Symbol("signal"),Ys=Symbol("dataListeners"),Jr=Symbol("discarded"),el=t=>Promise.resolve().then(t),nV=t=>t(),iV=t=>t==="end"||t==="finish"||t==="prefinish",sV=t=>t instanceof ArrayBuffer||!!t&&typeof t=="object"&&t.constructor&&t.constructor.name==="ArrayBuffer"&&t.byteLength>=0,oV=t=>!Buffer.isBuffer(t)&&ArrayBuffer.isView(t),qp=class{src;dest;opts;ondrain;constructor(e,r,n){this.src=e,this.dest=r,this.opts=n,this.ondrain=()=>e[ya](),this.dest.on("drain",this.ondrain)}unpipe(){this.dest.removeListener("drain",this.ondrain)}proxyErrors(e){}end(){this.unpipe(),this.opts.end&&this.dest.end()}},CT=class extends qp{unpipe(){this.src.removeListener("error",this.proxyErrors),super.unpipe()}constructor(e,r,n){super(e,r,n),this.proxyErrors=i=>r.emit("error",i),e.on("error",this.proxyErrors)}},aV=t=>!!t.objectMode,cV=t=>!t.objectMode&&!!t.encoding&&t.encoding!=="buffer",ps=class extends $p.EventEmitter{[Wt]=!1;[Qc]=!1;[Sr]=[];[Gt]=[];[fr];[$n];[ai];[ga];[Ci]=!1;[fs]=!1;[Ip]=!1;[Op]=!1;[Jc]=null;[Kt]=0;[It]=!1;[Zc];[Lp]=!1;[Ys]=0;[Jr]=!1;writable=!0;readable=!0;constructor(...e){let r=e[0]||{};if(super(),r.objectMode&&typeof r.encoding=="string")throw new TypeError("Encoding and objectMode may not be used together");aV(r)?(this[fr]=!0,this[$n]=null):cV(r)?(this[$n]=r.encoding,this[fr]=!1):(this[fr]=!1,this[$n]=null),this[ai]=!!r.async,this[ga]=this[$n]?new AO.StringDecoder(this[$n]):null,r&&r.debugExposeBuffer===!0&&Object.defineProperty(this,"buffer",{get:()=>this[Gt]}),r&&r.debugExposePipes===!0&&Object.defineProperty(this,"pipes",{get:()=>this[Sr]});let{signal:n}=r;n&&(this[Zc]=n,n.aborted?this[DT]():n.addEventListener("abort",()=>this[DT]()))}get bufferLength(){return this[Kt]}get encoding(){return this[$n]}set encoding(e){throw new Error("Encoding must be set at instantiation time")}setEncoding(e){throw new Error("Encoding must be set at instantiation time")}get objectMode(){return this[fr]}set objectMode(e){throw new Error("objectMode must be set at instantiation time")}get async(){return this[ai]}set async(e){this[ai]=this[ai]||!!e}[DT](){this[Lp]=!0,this.emit("abort",this[Zc]?.reason),this.destroy(this[Zc]?.reason)}get aborted(){return this[Lp]}set aborted(e){}write(e,r,n){if(this[Lp])return!1;if(this[Ci])throw new Error("write after end");if(this[It])return this.emit("error",Object.assign(new Error("Cannot call write after a stream was destroyed"),{code:"ERR_STREAM_DESTROYED"})),!0;typeof r=="function"&&(n=r,r="utf8"),r||(r="utf8");let i=this[ai]?el:nV;if(!this[fr]&&!Buffer.isBuffer(e)){if(oV(e))e=Buffer.from(e.buffer,e.byteOffset,e.byteLength);else if(sV(e))e=Buffer.from(e);else if(typeof e!="string")throw new Error("Non-contiguous data written to non-objectMode stream")}return this[fr]?(this[Wt]&&this[Kt]!==0&&this[Mp](!0),this[Wt]?this.emit("data",e):this[RT](e),this[Kt]!==0&&this.emit("readable"),n&&i(n),this[Wt]):e.length?(typeof e=="string"&&!(r===this[$n]&&!this[ga]?.lastNeed)&&(e=Buffer.from(e,r)),Buffer.isBuffer(e)&&this[$n]&&(e=this[ga].write(e)),this[Wt]&&this[Kt]!==0&&this[Mp](!0),this[Wt]?this.emit("data",e):this[RT](e),this[Kt]!==0&&this.emit("readable"),n&&i(n),this[Wt]):(this[Kt]!==0&&this.emit("readable"),n&&i(n),this[Wt])}read(e){if(this[It])return null;if(this[Jr]=!1,this[Kt]===0||e===0||e&&e>this[Kt])return this[Ai](),null;this[fr]&&(e=null),this[Gt].length>1&&!this[fr]&&(this[Gt]=[this[$n]?this[Gt].join(""):Buffer.concat(this[Gt],this[Kt])]);let r=this[EO](e||null,this[Gt][0]);return this[Ai](),r}[EO](e,r){if(this[fr])this[xp]();else{let n=r;e===n.length||e===null?this[xp]():typeof n=="string"?(this[Gt][0]=n.slice(e),r=n.slice(0,e),this[Kt]-=e):(this[Gt][0]=n.subarray(e),r=n.subarray(0,e),this[Kt]-=e)}return this.emit("data",r),!this[Gt].length&&!this[Ci]&&this.emit("drain"),r}end(e,r,n){return typeof e=="function"&&(n=e,e=void 0),typeof r=="function"&&(n=r,r="utf8"),e!==void 0&&this.write(e,r),n&&this.once("end",n),this[Ci]=!0,this.writable=!1,(this[Wt]||!this[Qc])&&this[Ai](),this}[ya](){this[It]||(!this[Ys]&&!this[Sr].length&&(this[Jr]=!0),this[Qc]=!1,this[Wt]=!0,this.emit("resume"),this[Gt].length?this[Mp]():this[Ci]?this[Ai]():this.emit("drain"))}resume(){return this[ya]()}pause(){this[Wt]=!1,this[Qc]=!0,this[Jr]=!1}get destroyed(){return this[It]}get flowing(){return this[Wt]}get paused(){return this[Qc]}[RT](e){this[fr]?this[Kt]+=1:this[Kt]+=e.length,this[Gt].push(e)}[xp](){return this[fr]?this[Kt]-=1:this[Kt]-=this[Gt][0].length,this[Gt].shift()}[Mp](e=!1){do;while(this[DO](this[xp]())&&this[Gt].length);!e&&!this[Gt].length&&!this[Ci]&&this.emit("drain")}[DO](e){return this.emit("data",e),this[Wt]}pipe(e,r){if(this[It])return e;this[Jr]=!1;let n=this[fs];return r=r||{},e===wO.stdout||e===wO.stderr?r.end=!1:r.end=r.end!==!1,r.proxyErrors=!!r.proxyErrors,n?r.end&&e.end():(this[Sr].push(r.proxyErrors?new CT(this,e,r):new qp(this,e,r)),this[ai]?el(()=>this[ya]()):this[ya]()),e}unpipe(e){let r=this[Sr].find(n=>n.dest===e);r&&(this[Sr].length===1?(this[Wt]&&this[Ys]===0&&(this[Wt]=!1),this[Sr]=[]):this[Sr].splice(this[Sr].indexOf(r),1),r.unpipe())}addListener(e,r){return this.on(e,r)}on(e,r){let n=super.on(e,r);if(e==="data")this[Jr]=!1,this[Ys]++,!this[Sr].length&&!this[Wt]&&this[ya]();else if(e==="readable"&&this[Kt]!==0)super.emit("readable");else if(iV(e)&&this[fs])super.emit(e),this.removeAllListeners(e);else if(e==="error"&&this[Jc]){let i=r;this[ai]?el(()=>i.call(this,this[Jc])):i.call(this,this[Jc])}return n}removeListener(e,r){return this.off(e,r)}off(e,r){let n=super.off(e,r);return e==="data"&&(this[Ys]=this.listeners("data").length,this[Ys]===0&&!this[Jr]&&!this[Sr].length&&(this[Wt]=!1)),n}removeAllListeners(e){let r=super.removeAllListeners(e);return(e==="data"||e===void 0)&&(this[Ys]=0,!this[Jr]&&!this[Sr].length&&(this[Wt]=!1)),r}get emittedEnd(){return this[fs]}[Ai](){!this[Ip]&&!this[fs]&&!this[It]&&this[Gt].length===0&&this[Ci]&&(this[Ip]=!0,this.emit("end"),this.emit("prefinish"),this.emit("finish"),this[Op]&&this.emit("close"),this[Ip]=!1)}emit(e,...r){let n=r[0];if(e!=="error"&&e!=="close"&&e!==It&&this[It])return!1;if(e==="data")return!this[fr]&&!n?!1:this[ai]?(el(()=>this[wT](n)),!0):this[wT](n);if(e==="end")return this[CO]();if(e==="close"){if(this[Op]=!0,!this[fs]&&!this[It])return!1;let s=super.emit("close");return this.removeAllListeners("close"),s}else if(e==="error"){this[Jc]=n,super.emit(PT,n);let s=!this[Zc]||this.listeners("error").length?super.emit("error",n):!1;return this[Ai](),s}else if(e==="resume"){let s=super.emit("resume");return this[Ai](),s}else if(e==="finish"||e==="prefinish"){let s=super.emit(e);return this.removeAllListeners(e),s}let i=super.emit(e,...r);return this[Ai](),i}[wT](e){for(let n of this[Sr])n.dest.write(e)===!1&&this.pause();let r=this[Jr]?!1:super.emit("data",e);return this[Ai](),r}[CO](){return this[fs]?!1:(this[fs]=!0,this.readable=!1,this[ai]?(el(()=>this[ET]()),!0):this[ET]())}[ET](){if(this[ga]){let r=this[ga].end();if(r){for(let n of this[Sr])n.dest.write(r);this[Jr]||super.emit("data",r)}}for(let r of this[Sr])r.end();let e=super.emit("end");return this.removeAllListeners("end"),e}async collect(){let e=Object.assign([],{dataLength:0});this[fr]||(e.dataLength=0);let r=this.promise();return this.on("data",n=>{e.push(n),this[fr]||(e.dataLength+=n.length)}),await r,e}async concat(){if(this[fr])throw new Error("cannot concat in objectMode");let e=await this.collect();return this[$n]?e.join(""):Buffer.concat(e,e.dataLength)}async promise(){return new Promise((e,r)=>{this.on(It,()=>r(new Error("stream destroyed"))),this.on("error",n=>r(n)),this.on("end",()=>e())})}[Symbol.asyncIterator](){this[Jr]=!1;let e=!1,r=async()=>(this.pause(),e=!0,{value:void 0,done:!0});return{next:()=>{if(e)return r();let i=this.read();if(i!==null)return Promise.resolve({done:!1,value:i});if(this[Ci])return r();let s,o,a=d=>{this.off("data",c),this.off("end",l),this.off(It,u),r(),o(d)},c=d=>{this.off("error",a),this.off("end",l),this.off(It,u),this.pause(),s({value:d,done:!!this[Ci]})},l=()=>{this.off("error",a),this.off("data",c),this.off(It,u),r(),s({done:!0,value:void 0})},u=()=>a(new Error("stream destroyed"));return new Promise((d,f)=>{o=f,s=d,this.once(It,u),this.once("error",a),this.once("end",l),this.once("data",c)})},throw:r,return:r,[Symbol.asyncIterator](){return this}}}[Symbol.iterator](){this[Jr]=!1;let e=!1,r=()=>(this.pause(),this.off(PT,r),this.off(It,r),this.off("end",r),e=!0,{done:!0,value:void 0}),n=()=>{if(e)return r();let i=this.read();return i===null?r():{done:!1,value:i}};return this.once("end",r),this.once(PT,r),this.once(It,r),{next:n,throw:r,return:r,[Symbol.iterator](){return this}}}destroy(e){if(this[It])return e?this.emit("error",e):this.emit(It),this;this[It]=!0,this[Jr]=!0,this[Gt].length=0,this[Kt]=0;let r=this;return typeof r.close=="function"&&!this[Op]&&r.close(),e?this.emit("error",e):this.emit(It),this}static get isStream(){return eV}};var uV=li.realpathSync.native,rl={lstatSync:li.lstatSync,readdir:li.readdir,readdirSync:li.readdirSync,readlinkSync:li.readlinkSync,realpathSync:uV,promises:{lstat:hs.lstat,readdir:hs.readdir,readlink:hs.readlink,realpath:hs.realpath}},qO=t=>!t||t===rl||t===lV?rl:{...rl,...t,promises:{...rl.promises,...t.promises||{}}},$O=/^\\\\\?\\([a-z]:)\\?$/i,dV=t=>t.replace(/\//g,"\\").replace($O,"$1\\"),fV=/[\\\/]/,gn=0,BO=1,FO=2,ci=4,jO=6,UO=8,Xs=10,HO=12,mn=15,tl=~mn,IT=16,IO=32,nl=64,Bn=128,Bp=256,jp=512,OO=nl|Bn|jp,pV=1023,OT=t=>t.isFile()?UO:t.isDirectory()?ci:t.isSymbolicLink()?Xs:t.isCharacterDevice()?FO:t.isBlockDevice()?jO:t.isSocket()?HO:t.isFIFO()?BO:gn,MO=new Map,il=t=>{let e=MO.get(t);if(e)return e;let r=t.normalize("NFKD");return MO.set(t,r),r},xO=new Map,Fp=t=>{let e=xO.get(t);if(e)return e;let r=il(t.toLowerCase());return xO.set(t,r),r},Up=class extends Xc{constructor(){super({max:256})}},MT=class extends Xc{constructor(e=16*1024){super({maxSize:e,sizeCalculation:r=>r.length+1})}},VO=Symbol("PathScurry setAsCwd"),pr=class{name;root;roots;parent;nocase;isCWD=!1;#e;#t;get dev(){return this.#t}#n;get mode(){return this.#n}#r;get nlink(){return this.#r}#o;get uid(){return this.#o}#f;get gid(){return this.#f}#a;get rdev(){return this.#a}#d;get blksize(){return this.#d}#c;get ino(){return this.#c}#l;get size(){return this.#l}#s;get blocks(){return this.#s}#y;get atimeMs(){return this.#y}#T;get mtimeMs(){return this.#T}#h;get ctimeMs(){return this.#h}#p;get birthtimeMs(){return this.#p}#N;get atime(){return this.#N}#g;get mtime(){return this.#g}#k;get ctime(){return this.#k}#R;get birthtime(){return this.#R}#b;#_;#S;#m;#D;#P;#i;#I;#v;#C;get parentPath(){return(this.parent||this).fullpath()}get path(){return this.parentPath}constructor(e,r=gn,n,i,s,o,a){this.name=e,this.#b=s?Fp(e):il(e),this.#i=r&pV,this.nocase=s,this.roots=i,this.root=n||this,this.#I=o,this.#S=a.fullpath,this.#D=a.relative,this.#P=a.relativePosix,this.parent=a.parent,this.parent?this.#e=this.parent.#e:this.#e=qO(a.fs)}depth(){return this.#_!==void 0?this.#_:this.parent?this.#_=this.parent.depth()+1:this.#_=0}childrenCache(){return this.#I}resolve(e){if(!e)return this;let r=this.getRootString(e),i=e.substring(r.length).split(this.splitSep);return r?this.getRoot(r).#O(i):this.#O(i)}#O(e){let r=this;for(let n of e)r=r.child(n);return r}children(){let e=this.#I.get(this);if(e)return e;let r=Object.assign([],{provisional:0});return this.#I.set(this,r),this.#i&=~IT,r}child(e,r){if(e===""||e===".")return this;if(e==="..")return this.parent||this;let n=this.children(),i=this.nocase?Fp(e):il(e);for(let c of n)if(c.#b===i)return c;let s=this.parent?this.sep:"",o=this.#S?this.#S+s+e:void 0,a=this.newChild(e,gn,{...r,parent:this,fullpath:o});return this.canReaddir()||(a.#i|=Bn),n.push(a),a}relative(){if(this.isCWD)return"";if(this.#D!==void 0)return this.#D;let e=this.name,r=this.parent;if(!r)return this.#D=this.name;let n=r.relative();return n+(!n||!r.parent?"":this.sep)+e}relativePosix(){if(this.sep==="/")return this.relative();if(this.isCWD)return"";if(this.#P!==void 0)return this.#P;let e=this.name,r=this.parent;if(!r)return this.#P=this.fullpathPosix();let n=r.relativePosix();return n+(!n||!r.parent?"":"/")+e}fullpath(){if(this.#S!==void 0)return this.#S;let e=this.name,r=this.parent;if(!r)return this.#S=this.name;let i=r.fullpath()+(r.parent?this.sep:"")+e;return this.#S=i}fullpathPosix(){if(this.#m!==void 0)return this.#m;if(this.sep==="/")return this.#m=this.fullpath();if(!this.parent){let i=this.fullpath().replace(/\\/g,"/");return/^[a-z]:\//i.test(i)?this.#m=`//?/${i}`:this.#m=i}let e=this.parent,r=e.fullpathPosix(),n=r+(!r||!e.parent?"":"/")+this.name;return this.#m=n}isUnknown(){return(this.#i&mn)===gn}isType(e){return this[`is${e}`]()}getType(){return this.isUnknown()?"Unknown":this.isDirectory()?"Directory":this.isFile()?"File":this.isSymbolicLink()?"SymbolicLink":this.isFIFO()?"FIFO":this.isCharacterDevice()?"CharacterDevice":this.isBlockDevice()?"BlockDevice":this.isSocket()?"Socket":"Unknown"}isFile(){return(this.#i&mn)===UO}isDirectory(){return(this.#i&mn)===ci}isCharacterDevice(){return(this.#i&mn)===FO}isBlockDevice(){return(this.#i&mn)===jO}isFIFO(){return(this.#i&mn)===BO}isSocket(){return(this.#i&mn)===HO}isSymbolicLink(){return(this.#i&Xs)===Xs}lstatCached(){return this.#i&IO?this:void 0}readlinkCached(){return this.#v}realpathCached(){return this.#C}readdirCached(){let e=this.children();return e.slice(0,e.provisional)}canReadlink(){if(this.#v)return!0;if(!this.parent)return!1;let e=this.#i&mn;return!(e!==gn&&e!==Xs||this.#i&Bp||this.#i&Bn)}calledReaddir(){return!!(this.#i&IT)}isENOENT(){return!!(this.#i&Bn)}isNamed(e){return this.nocase?this.#b===Fp(e):this.#b===il(e)}async readlink(){let e=this.#v;if(e)return e;if(this.canReadlink()&&this.parent)try{let r=await this.#e.promises.readlink(this.fullpath()),n=(await this.parent.realpath())?.resolve(r);if(n)return this.#v=n}catch(r){this.#u(r.code);return}}readlinkSync(){let e=this.#v;if(e)return e;if(this.canReadlink()&&this.parent)try{let r=this.#e.readlinkSync(this.fullpath()),n=this.parent.realpathSync()?.resolve(r);if(n)return this.#v=n}catch(r){this.#u(r.code);return}}#M(e){this.#i|=IT;for(let r=e.provisional;r<e.length;r++){let n=e[r];n&&n.#x()}}#x(){this.#i&Bn||(this.#i=(this.#i|Bn)&tl,this.#w())}#w(){let e=this.children();e.provisional=0;for(let r of e)r.#x()}#E(){this.#i|=jp,this.#L()}#L(){if(this.#i&nl)return;let e=this.#i;(e&mn)===ci&&(e&=tl),this.#i=e|nl,this.#w()}#q(e=""){e==="ENOTDIR"||e==="EPERM"?this.#L():e==="ENOENT"?this.#x():this.children().provisional=0}#$(e=""){e==="ENOTDIR"?this.parent.#L():e==="ENOENT"&&this.#x()}#u(e=""){let r=this.#i;r|=Bp,e==="ENOENT"&&(r|=Bn),(e==="EINVAL"||e==="UNKNOWN")&&(r&=tl),this.#i=r,e==="ENOTDIR"&&this.parent&&this.parent.#L()}#B(e,r){return this.#A(e,r)||this.#F(e,r)}#F(e,r){let n=OT(e),i=this.newChild(e.name,n,{parent:this}),s=i.#i&mn;return s!==ci&&s!==Xs&&s!==gn&&(i.#i|=nl),r.unshift(i),r.provisional++,i}#A(e,r){for(let n=r.provisional;n<r.length;n++){let i=r[n];if((this.nocase?Fp(e.name):il(e.name))===i.#b)return this.#j(e,i,n,r)}}#j(e,r,n,i){let s=r.name;return r.#i=r.#i&tl|OT(e),s!==e.name&&(r.name=e.name),n!==i.provisional&&(n===i.length-1?i.pop():i.splice(n,1),i.unshift(r)),i.provisional++,r}async lstat(){if((this.#i&Bn)===0)try{return this.#z(await this.#e.promises.lstat(this.fullpath())),this}catch(e){this.#$(e.code)}}lstatSync(){if((this.#i&Bn)===0)try{return this.#z(this.#e.lstatSync(this.fullpath())),this}catch(e){this.#$(e.code)}}#z(e){let{atime:r,atimeMs:n,birthtime:i,birthtimeMs:s,blksize:o,blocks:a,ctime:c,ctimeMs:l,dev:u,gid:d,ino:f,mode:p,mtime:g,mtimeMs:h,nlink:T,rdev:S,size:_,uid:v}=e;this.#N=r,this.#y=n,this.#R=i,this.#p=s,this.#d=o,this.#s=a,this.#k=c,this.#h=l,this.#t=u,this.#f=d,this.#c=f,this.#n=p,this.#g=g,this.#T=h,this.#r=T,this.#a=S,this.#l=_,this.#o=v;let R=OT(e);this.#i=this.#i&tl|R|IO,R!==gn&&R!==ci&&R!==Xs&&(this.#i|=nl)}#H=[];#V=!1;#W(e){this.#V=!1;let r=this.#H.slice();this.#H.length=0,r.forEach(n=>n(null,e))}readdirCB(e,r=!1){if(!this.canReaddir()){r?e(null,[]):queueMicrotask(()=>e(null,[]));return}let n=this.children();if(this.calledReaddir()){let s=n.slice(0,n.provisional);r?e(null,s):queueMicrotask(()=>e(null,s));return}if(this.#H.push(e),this.#V)return;this.#V=!0;let i=this.fullpath();this.#e.readdir(i,{withFileTypes:!0},(s,o)=>{if(s)this.#q(s.code),n.provisional=0;else{for(let a of o)this.#B(a,n);this.#M(n)}this.#W(n.slice(0,n.provisional))})}#U;async readdir(){if(!this.canReaddir())return[];let e=this.children();if(this.calledReaddir())return e.slice(0,e.provisional);let r=this.fullpath();if(this.#U)await this.#U;else{let n=()=>{};this.#U=new Promise(i=>n=i);try{for(let i of await this.#e.promises.readdir(r,{withFileTypes:!0}))this.#B(i,e);this.#M(e)}catch(i){this.#q(i.code),e.provisional=0}this.#U=void 0,n()}return e.slice(0,e.provisional)}readdirSync(){if(!this.canReaddir())return[];let e=this.children();if(this.calledReaddir())return e.slice(0,e.provisional);let r=this.fullpath();try{for(let n of this.#e.readdirSync(r,{withFileTypes:!0}))this.#B(n,e);this.#M(e)}catch(n){this.#q(n.code),e.provisional=0}return e.slice(0,e.provisional)}canReaddir(){if(this.#i&OO)return!1;let e=mn&this.#i;return e===gn||e===ci||e===Xs}shouldWalk(e,r){return(this.#i&ci)===ci&&!(this.#i&OO)&&!e.has(this)&&(!r||r(this))}async realpath(){if(this.#C)return this.#C;if(!((jp|Bp|Bn)&this.#i))try{let e=await this.#e.promises.realpath(this.fullpath());return this.#C=this.resolve(e)}catch{this.#E()}}realpathSync(){if(this.#C)return this.#C;if(!((jp|Bp|Bn)&this.#i))try{let e=this.#e.realpathSync(this.fullpath());return this.#C=this.resolve(e)}catch{this.#E()}}[VO](e){if(e===this)return;e.isCWD=!1,this.isCWD=!0;let r=new Set([]),n=[],i=this;for(;i&&i.parent;)r.add(i),i.#D=n.join(this.sep),i.#P=n.join("/"),i=i.parent,n.push("..");for(i=e;i&&i.parent&&!r.has(i);)i.#D=void 0,i.#P=void 0,i=i.parent}},Hp=class t extends pr{sep="\\";splitSep=fV;constructor(e,r=gn,n,i,s,o,a){super(e,r,n,i,s,o,a)}newChild(e,r=gn,n={}){return new t(e,r,this.root,this.roots,this.nocase,this.childrenCache(),n)}getRootString(e){return Ta.win32.parse(e).root}getRoot(e){if(e=dV(e.toUpperCase()),e===this.root.name)return this.root;for(let[r,n]of Object.entries(this.roots))if(this.sameRoot(e,r))return this.roots[e]=n;return this.roots[e]=new va(e,this).root}sameRoot(e,r=this.root.name){return e=e.toUpperCase().replace(/\//g,"\\").replace($O,"$1\\"),e===r}},Vp=class t extends pr{splitSep="/";sep="/";constructor(e,r=gn,n,i,s,o,a){super(e,r,n,i,s,o,a)}getRootString(e){return e.startsWith("/")?"/":""}getRoot(e){return this.root}newChild(e,r=gn,n={}){return new t(e,r,this.root,this.roots,this.nocase,this.childrenCache(),n)}},zp=class{root;rootPath;roots;cwd;#e;#t;#n;nocase;#r;constructor(e=process.cwd(),r,n,{nocase:i,childrenCacheSize:s=16*1024,fs:o=rl}={}){this.#r=qO(o),(e instanceof URL||e.startsWith("file://"))&&(e=(0,LO.fileURLToPath)(e));let a=r.resolve(e);this.roots=Object.create(null),this.rootPath=this.parseRootPath(a),this.#e=new Up,this.#t=new Up,this.#n=new MT(s);let c=a.substring(this.rootPath.length).split(n);if(c.length===1&&!c[0]&&c.pop(),i===void 0)throw new TypeError("must provide nocase setting to PathScurryBase ctor");this.nocase=i,this.root=this.newRoot(this.#r),this.roots[this.rootPath]=this.root;let l=this.root,u=c.length-1,d=r.sep,f=this.rootPath,p=!1;for(let g of c){let h=u--;l=l.child(g,{relative:new Array(h).fill("..").join(d),relativePosix:new Array(h).fill("..").join("/"),fullpath:f+=(p?"":d)+g}),p=!0}this.cwd=l}depth(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),e.depth()}childrenCache(){return this.#n}resolve(...e){let r="";for(let s=e.length-1;s>=0;s--){let o=e[s];if(!(!o||o===".")&&(r=r?`${o}/${r}`:o,this.isAbsolute(o)))break}let n=this.#e.get(r);if(n!==void 0)return n;let i=this.cwd.resolve(r).fullpath();return this.#e.set(r,i),i}resolvePosix(...e){let r="";for(let s=e.length-1;s>=0;s--){let o=e[s];if(!(!o||o===".")&&(r=r?`${o}/${r}`:o,this.isAbsolute(o)))break}let n=this.#t.get(r);if(n!==void 0)return n;let i=this.cwd.resolve(r).fullpathPosix();return this.#t.set(r,i),i}relative(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),e.relative()}relativePosix(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),e.relativePosix()}basename(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),e.name}dirname(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),(e.parent||e).fullpath()}async readdir(e=this.cwd,r={withFileTypes:!0}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof pr||(r=e,e=this.cwd);let{withFileTypes:n}=r;if(e.canReaddir()){let i=await e.readdir();return n?i:i.map(s=>s.name)}else return[]}readdirSync(e=this.cwd,r={withFileTypes:!0}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof pr||(r=e,e=this.cwd);let{withFileTypes:n=!0}=r;return e.canReaddir()?n?e.readdirSync():e.readdirSync().map(i=>i.name):[]}async lstat(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),e.lstat()}lstatSync(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),e.lstatSync()}async readlink(e=this.cwd,{withFileTypes:r}={withFileTypes:!1}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof pr||(r=e.withFileTypes,e=this.cwd);let n=await e.readlink();return r?n:n?.fullpath()}readlinkSync(e=this.cwd,{withFileTypes:r}={withFileTypes:!1}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof pr||(r=e.withFileTypes,e=this.cwd);let n=e.readlinkSync();return r?n:n?.fullpath()}async realpath(e=this.cwd,{withFileTypes:r}={withFileTypes:!1}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof pr||(r=e.withFileTypes,e=this.cwd);let n=await e.realpath();return r?n:n?.fullpath()}realpathSync(e=this.cwd,{withFileTypes:r}={withFileTypes:!1}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof pr||(r=e.withFileTypes,e=this.cwd);let n=e.realpathSync();return r?n:n?.fullpath()}async walk(e=this.cwd,r={}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof pr||(r=e,e=this.cwd);let{withFileTypes:n=!0,follow:i=!1,filter:s,walkFilter:o}=r,a=[];(!s||s(e))&&a.push(n?e:e.fullpath());let c=new Set,l=(d,f)=>{c.add(d),d.readdirCB((p,g)=>{if(p)return f(p);let h=g.length;if(!h)return f();let T=()=>{--h===0&&f()};for(let S of g)(!s||s(S))&&a.push(n?S:S.fullpath()),i&&S.isSymbolicLink()?S.realpath().then(_=>_?.isUnknown()?_.lstat():_).then(_=>_?.shouldWalk(c,o)?l(_,T):T()):S.shouldWalk(c,o)?l(S,T):T()},!0)},u=e;return new Promise((d,f)=>{l(u,p=>{if(p)return f(p);d(a)})})}walkSync(e=this.cwd,r={}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof pr||(r=e,e=this.cwd);let{withFileTypes:n=!0,follow:i=!1,filter:s,walkFilter:o}=r,a=[];(!s||s(e))&&a.push(n?e:e.fullpath());let c=new Set([e]);for(let l of c){let u=l.readdirSync();for(let d of u){(!s||s(d))&&a.push(n?d:d.fullpath());let f=d;if(d.isSymbolicLink()){if(!(i&&(f=d.realpathSync())))continue;f.isUnknown()&&f.lstatSync()}f.shouldWalk(c,o)&&c.add(f)}}return a}[Symbol.asyncIterator](){return this.iterate()}iterate(e=this.cwd,r={}){return typeof e=="string"?e=this.cwd.resolve(e):e instanceof pr||(r=e,e=this.cwd),this.stream(e,r)[Symbol.asyncIterator]()}[Symbol.iterator](){return this.iterateSync()}*iterateSync(e=this.cwd,r={}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof pr||(r=e,e=this.cwd);let{withFileTypes:n=!0,follow:i=!1,filter:s,walkFilter:o}=r;(!s||s(e))&&(yield n?e:e.fullpath());let a=new Set([e]);for(let c of a){let l=c.readdirSync();for(let u of l){(!s||s(u))&&(yield n?u:u.fullpath());let d=u;if(u.isSymbolicLink()){if(!(i&&(d=u.realpathSync())))continue;d.isUnknown()&&d.lstatSync()}d.shouldWalk(a,o)&&a.add(d)}}}stream(e=this.cwd,r={}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof pr||(r=e,e=this.cwd);let{withFileTypes:n=!0,follow:i=!1,filter:s,walkFilter:o}=r,a=new ps({objectMode:!0});(!s||s(e))&&a.write(n?e:e.fullpath());let c=new Set,l=[e],u=0,d=()=>{let f=!1;for(;!f;){let p=l.shift();if(!p){u===0&&a.end();return}u++,c.add(p);let g=(T,S,_=!1)=>{if(T)return a.emit("error",T);if(i&&!_){let v=[];for(let R of S)R.isSymbolicLink()&&v.push(R.realpath().then(D=>D?.isUnknown()?D.lstat():D));if(v.length){Promise.all(v).then(()=>g(null,S,!0));return}}for(let v of S)v&&(!s||s(v))&&(a.write(n?v:v.fullpath())||(f=!0));u--;for(let v of S){let R=v.realpathCached()||v;R.shouldWalk(c,o)&&l.push(R)}f&&!a.flowing?a.once("drain",d):h||d()},h=!0;p.readdirCB(g,!0),h=!1}};return d(),a}streamSync(e=this.cwd,r={}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof pr||(r=e,e=this.cwd);let{withFileTypes:n=!0,follow:i=!1,filter:s,walkFilter:o}=r,a=new ps({objectMode:!0}),c=new Set;(!s||s(e))&&a.write(n?e:e.fullpath());let l=[e],u=0,d=()=>{let f=!1;for(;!f;){let p=l.shift();if(!p){u===0&&a.end();return}u++,c.add(p);let g=p.readdirSync();for(let h of g)(!s||s(h))&&(a.write(n?h:h.fullpath())||(f=!0));u--;for(let h of g){let T=h;if(h.isSymbolicLink()){if(!(i&&(T=h.realpathSync())))continue;T.isUnknown()&&T.lstatSync()}T.shouldWalk(c,o)&&l.push(T)}}f&&!a.flowing&&a.once("drain",d)};return d(),a}chdir(e=this.cwd){let r=this.cwd;this.cwd=typeof e=="string"?this.cwd.resolve(e):e,this.cwd[VO](r)}},va=class extends zp{sep="\\";constructor(e=process.cwd(),r={}){let{nocase:n=!0}=r;super(e,Ta.win32,"\\",{...r,nocase:n}),this.nocase=n;for(let i=this.cwd;i;i=i.parent)i.nocase=this.nocase}parseRootPath(e){return Ta.win32.parse(e).root.toUpperCase()}newRoot(e){return new Hp(this.rootPath,ci,void 0,this.roots,this.nocase,this.childrenCache(),{fs:e})}isAbsolute(e){return e.startsWith("/")||e.startsWith("\\")||/^[a-z]:(\/|\\)/i.test(e)}},ba=class extends zp{sep="/";constructor(e=process.cwd(),r={}){let{nocase:n=!1}=r;super(e,Ta.posix,"/",{...r,nocase:n}),this.nocase=n}parseRootPath(e){return"/"}newRoot(e){return new Vp(this.rootPath,ci,void 0,this.roots,this.nocase,this.childrenCache(),{fs:e})}isAbsolute(e){return e.startsWith("/")}},sl=class extends ba{constructor(e=process.cwd(),r={}){let{nocase:n=!0}=r;super(e,{...r,nocase:n})}},_Ne=process.platform==="win32"?Hp:Vp,zO=process.platform==="win32"?va:process.platform==="darwin"?sl:ba;var hV=t=>t.length>=1,mV=t=>t.length>=1,_a=class t{#e;#t;#n;length;#r;#o;#f;#a;#d;#c;#l=!0;constructor(e,r,n,i){if(!hV(e))throw new TypeError("empty pattern list");if(!mV(r))throw new TypeError("empty glob list");if(r.length!==e.length)throw new TypeError("mismatched pattern list and glob list lengths");if(this.length=e.length,n<0||n>=this.length)throw new TypeError("index out of range");if(this.#e=e,this.#t=r,this.#n=n,this.#r=i,this.#n===0){if(this.isUNC()){let[s,o,a,c,...l]=this.#e,[u,d,f,p,...g]=this.#t;l[0]===""&&(l.shift(),g.shift());let h=[s,o,a,c,""].join("/"),T=[u,d,f,p,""].join("/");this.#e=[h,...l],this.#t=[T,...g],this.length=this.#e.length}else if(this.isDrive()||this.isAbsolute()){let[s,...o]=this.#e,[a,...c]=this.#t;o[0]===""&&(o.shift(),c.shift());let l=s+"/",u=a+"/";this.#e=[l,...o],this.#t=[u,...c],this.length=this.#e.length}}}pattern(){return this.#e[this.#n]}isString(){return typeof this.#e[this.#n]=="string"}isGlobstar(){return this.#e[this.#n]===Zt}isRegExp(){return this.#e[this.#n]instanceof RegExp}globString(){return this.#f=this.#f||(this.#n===0?this.isAbsolute()?this.#t[0]+this.#t.slice(1).join("/"):this.#t.join("/"):this.#t.slice(this.#n).join("/"))}hasMore(){return this.length>this.#n+1}rest(){return this.#o!==void 0?this.#o:this.hasMore()?(this.#o=new t(this.#e,this.#t,this.#n+1,this.#r),this.#o.#c=this.#c,this.#o.#d=this.#d,this.#o.#a=this.#a,this.#o):this.#o=null}isUNC(){let e=this.#e;return this.#d!==void 0?this.#d:this.#d=this.#r==="win32"&&this.#n===0&&e[0]===""&&e[1]===""&&typeof e[2]=="string"&&!!e[2]&&typeof e[3]=="string"&&!!e[3]}isDrive(){let e=this.#e;return this.#a!==void 0?this.#a:this.#a=this.#r==="win32"&&this.#n===0&&this.length>1&&typeof e[0]=="string"&&/^[a-z]:$/i.test(e[0])}isAbsolute(){let e=this.#e;return this.#c!==void 0?this.#c:this.#c=e[0]===""&&e.length>1||this.isDrive()||this.isUNC()}root(){let e=this.#e[0];return typeof e=="string"&&this.isAbsolute()&&this.#n===0?e:""}checkFollowGlobstar(){return!(this.#n===0||!this.isGlobstar()||!this.#l)}markFollowGlobstar(){return this.#n===0||!this.isGlobstar()||!this.#l?!1:(this.#l=!1,!0)}};var gV=typeof process=="object"&&process&&typeof process.platform=="string"?process.platform:"linux",Sa=class{relative;relativeChildren;absolute;absoluteChildren;platform;mmopts;constructor(e,{nobrace:r,nocase:n,noext:i,noglobstar:s,platform:o=gV}){this.relative=[],this.absolute=[],this.relativeChildren=[],this.absoluteChildren=[],this.platform=o,this.mmopts={dot:!0,nobrace:r,nocase:n,noext:i,noglobstar:s,optimizationLevel:2,platform:o,nocomment:!0,nonegate:!0};for(let a of e)this.add(a)}add(e){let r=new Xr(e,this.mmopts);for(let n=0;n<r.set.length;n++){let i=r.set[n],s=r.globParts[n];if(!i||!s)throw new Error("invalid pattern object");for(;i[0]==="."&&s[0]===".";)i.shift(),s.shift();let o=new _a(i,s,0,this.platform),a=new Xr(o.globString(),this.mmopts),c=s[s.length-1]==="**",l=o.isAbsolute();l?this.absolute.push(a):this.relative.push(a),c&&(l?this.absoluteChildren.push(a):this.relativeChildren.push(a))}}ignored(e){let r=e.fullpath(),n=`${r}/`,i=e.relative()||".",s=`${i}/`;for(let o of this.relative)if(o.match(i)||o.match(s))return!0;for(let o of this.absolute)if(o.match(r)||o.match(n))return!0;return!1}childrenIgnored(e){let r=e.fullpath()+"/",n=(e.relative()||".")+"/";for(let i of this.relativeChildren)if(i.match(n))return!0;for(let i of this.absoluteChildren)if(i.match(r))return!0;return!1}};var xT=class t{store;constructor(e=new Map){this.store=e}copy(){return new t(new Map(this.store))}hasWalked(e,r){return this.store.get(e.fullpath())?.has(r.globString())}storeWalked(e,r){let n=e.fullpath(),i=this.store.get(n);i?i.add(r.globString()):this.store.set(n,new Set([r.globString()]))}},LT=class{store=new Map;add(e,r,n){let i=(r?2:0)|(n?1:0),s=this.store.get(e);this.store.set(e,s===void 0?i:i&s)}entries(){return[...this.store.entries()].map(([e,r])=>[e,!!(r&2),!!(r&1)])}},qT=class{store=new Map;add(e,r){if(!e.canReaddir())return;let n=this.store.get(e);n?n.find(i=>i.globString()===r.globString())||n.push(r):this.store.set(e,[r])}get(e){let r=this.store.get(e);if(!r)throw new Error("attempting to walk unknown path");return r}entries(){return this.keys().map(e=>[e,this.store.get(e)])}keys(){return[...this.store.keys()].filter(e=>e.canReaddir())}},ol=class t{hasWalkedCache;matches=new LT;subwalks=new qT;patterns;follow;dot;opts;constructor(e,r){this.opts=e,this.follow=!!e.follow,this.dot=!!e.dot,this.hasWalkedCache=r?r.copy():new xT}processPatterns(e,r){this.patterns=r;let n=r.map(i=>[e,i]);for(let[i,s]of n){this.hasWalkedCache.storeWalked(i,s);let o=s.root(),a=s.isAbsolute()&&this.opts.absolute!==!1;if(o){i=i.resolve(o==="/"&&this.opts.root!==void 0?this.opts.root:o);let d=s.rest();if(d)s=d;else{this.matches.add(i,!0,!1);continue}}if(i.isENOENT())continue;let c,l,u=!1;for(;typeof(c=s.pattern())=="string"&&(l=s.rest());)i=i.resolve(c),s=l,u=!0;if(c=s.pattern(),l=s.rest(),u){if(this.hasWalkedCache.hasWalked(i,s))continue;this.hasWalkedCache.storeWalked(i,s)}if(typeof c=="string"){let d=c===".."||c===""||c===".";this.matches.add(i.resolve(c),a,d);continue}else if(c===Zt){(!i.isSymbolicLink()||this.follow||s.checkFollowGlobstar())&&this.subwalks.add(i,s);let d=l?.pattern(),f=l?.rest();if(!l||(d===""||d===".")&&!f)this.matches.add(i,a,d===""||d===".");else if(d===".."){let p=i.parent||i;f?this.hasWalkedCache.hasWalked(p,f)||this.subwalks.add(p,f):this.matches.add(p,a,!0)}}else c instanceof RegExp&&this.subwalks.add(i,s)}return this}subwalkTargets(){return this.subwalks.keys()}child(){return new t(this.opts,this.hasWalkedCache)}filterEntries(e,r){let n=this.subwalks.get(e),i=this.child();for(let s of r)for(let o of n){let a=o.isAbsolute(),c=o.pattern(),l=o.rest();c===Zt?i.testGlobstar(s,o,l,a):c instanceof RegExp?i.testRegExp(s,c,l,a):i.testString(s,c,l,a)}return i}testGlobstar(e,r,n,i){if((this.dot||!e.name.startsWith("."))&&(r.hasMore()||this.matches.add(e,i,!1),e.canReaddir()&&(this.follow||!e.isSymbolicLink()?this.subwalks.add(e,r):e.isSymbolicLink()&&(n&&r.checkFollowGlobstar()?this.subwalks.add(e,n):r.markFollowGlobstar()&&this.subwalks.add(e,r)))),n){let s=n.pattern();if(typeof s=="string"&&s!==".."&&s!==""&&s!==".")this.testString(e,s,n.rest(),i);else if(s===".."){let o=e.parent||e;this.subwalks.add(o,n)}else s instanceof RegExp&&this.testRegExp(e,s,n.rest(),i)}}testRegExp(e,r,n,i){r.test(e.name)&&(n?this.subwalks.add(e,n):this.matches.add(e,i,!1))}testString(e,r,n,i){e.isNamed(r)&&(n?this.subwalks.add(e,n):this.matches.add(e,i,!1))}};var yV=(t,e)=>typeof t=="string"?new Sa([t],e):Array.isArray(t)?new Sa(t,e):t,Wp=class{path;patterns;opts;seen=new Set;paused=!1;aborted=!1;#e=[];#t;#n;signal;maxDepth;includeChildMatches;constructor(e,r,n){if(this.patterns=e,this.path=r,this.opts=n,this.#n=!n.posix&&n.platform==="win32"?"\\":"/",this.includeChildMatches=n.includeChildMatches!==!1,(n.ignore||!this.includeChildMatches)&&(this.#t=yV(n.ignore??[],n),!this.includeChildMatches&&typeof this.#t.add!="function")){let i="cannot ignore child matches, ignore lacks add() method.";throw new Error(i)}this.maxDepth=n.maxDepth||1/0,n.signal&&(this.signal=n.signal,this.signal.addEventListener("abort",()=>{this.#e.length=0}))}#r(e){return this.seen.has(e)||!!this.#t?.ignored?.(e)}#o(e){return!!this.#t?.childrenIgnored?.(e)}pause(){this.paused=!0}resume(){if(this.signal?.aborted)return;this.paused=!1;let e;for(;!this.paused&&(e=this.#e.shift());)e()}onResume(e){this.signal?.aborted||(this.paused?this.#e.push(e):e())}async matchCheck(e,r){if(r&&this.opts.nodir)return;let n;if(this.opts.realpath){if(n=e.realpathCached()||await e.realpath(),!n)return;e=n}let s=e.isUnknown()||this.opts.stat?await e.lstat():e;if(this.opts.follow&&this.opts.nodir&&s?.isSymbolicLink()){let o=await s.realpath();o&&(o.isUnknown()||this.opts.stat)&&await o.lstat()}return this.matchCheckTest(s,r)}matchCheckTest(e,r){return e&&(this.maxDepth===1/0||e.depth()<=this.maxDepth)&&(!r||e.canReaddir())&&(!this.opts.nodir||!e.isDirectory())&&(!this.opts.nodir||!this.opts.follow||!e.isSymbolicLink()||!e.realpathCached()?.isDirectory())&&!this.#r(e)?e:void 0}matchCheckSync(e,r){if(r&&this.opts.nodir)return;let n;if(this.opts.realpath){if(n=e.realpathCached()||e.realpathSync(),!n)return;e=n}let s=e.isUnknown()||this.opts.stat?e.lstatSync():e;if(this.opts.follow&&this.opts.nodir&&s?.isSymbolicLink()){let o=s.realpathSync();o&&(o?.isUnknown()||this.opts.stat)&&o.lstatSync()}return this.matchCheckTest(s,r)}matchFinish(e,r){if(this.#r(e))return;if(!this.includeChildMatches&&this.#t?.add){let s=`${e.relativePosix()}/**`;this.#t.add(s)}let n=this.opts.absolute===void 0?r:this.opts.absolute;this.seen.add(e);let i=this.opts.mark&&e.isDirectory()?this.#n:"";if(this.opts.withFileTypes)this.matchEmit(e);else if(n){let s=this.opts.posix?e.fullpathPosix():e.fullpath();this.matchEmit(s+i)}else{let s=this.opts.posix?e.relativePosix():e.relative(),o=this.opts.dotRelative&&!s.startsWith(".."+this.#n)?"."+this.#n:"";this.matchEmit(s?o+s+i:"."+i)}}async match(e,r,n){let i=await this.matchCheck(e,n);i&&this.matchFinish(i,r)}matchSync(e,r,n){let i=this.matchCheckSync(e,n);i&&this.matchFinish(i,r)}walkCB(e,r,n){this.signal?.aborted&&n(),this.walkCB2(e,r,new ol(this.opts),n)}walkCB2(e,r,n,i){if(this.#o(e))return i();if(this.signal?.aborted&&i(),this.paused){this.onResume(()=>this.walkCB2(e,r,n,i));return}n.processPatterns(e,r);let s=1,o=()=>{--s===0&&i()};for(let[a,c,l]of n.matches.entries())this.#r(a)||(s++,this.match(a,c,l).then(()=>o()));for(let a of n.subwalkTargets()){if(this.maxDepth!==1/0&&a.depth()>=this.maxDepth)continue;s++;let c=a.readdirCached();a.calledReaddir()?this.walkCB3(a,c,n,o):a.readdirCB((l,u)=>this.walkCB3(a,u,n,o),!0)}o()}walkCB3(e,r,n,i){n=n.filterEntries(e,r);let s=1,o=()=>{--s===0&&i()};for(let[a,c,l]of n.matches.entries())this.#r(a)||(s++,this.match(a,c,l).then(()=>o()));for(let[a,c]of n.subwalks.entries())s++,this.walkCB2(a,c,n.child(),o);o()}walkCBSync(e,r,n){this.signal?.aborted&&n(),this.walkCB2Sync(e,r,new ol(this.opts),n)}walkCB2Sync(e,r,n,i){if(this.#o(e))return i();if(this.signal?.aborted&&i(),this.paused){this.onResume(()=>this.walkCB2Sync(e,r,n,i));return}n.processPatterns(e,r);let s=1,o=()=>{--s===0&&i()};for(let[a,c,l]of n.matches.entries())this.#r(a)||this.matchSync(a,c,l);for(let a of n.subwalkTargets()){if(this.maxDepth!==1/0&&a.depth()>=this.maxDepth)continue;s++;let c=a.readdirSync();this.walkCB3Sync(a,c,n,o)}o()}walkCB3Sync(e,r,n,i){n=n.filterEntries(e,r);let s=1,o=()=>{--s===0&&i()};for(let[a,c,l]of n.matches.entries())this.#r(a)||this.matchSync(a,c,l);for(let[a,c]of n.subwalks.entries())s++,this.walkCB2Sync(a,c,n.child(),o);o()}},al=class extends Wp{matches=new Set;constructor(e,r,n){super(e,r,n)}matchEmit(e){this.matches.add(e)}async walk(){if(this.signal?.aborted)throw this.signal.reason;return this.path.isUnknown()&&await this.path.lstat(),await new Promise((e,r)=>{this.walkCB(this.path,this.patterns,()=>{this.signal?.aborted?r(this.signal.reason):e(this.matches)})}),this.matches}walkSync(){if(this.signal?.aborted)throw this.signal.reason;return this.path.isUnknown()&&this.path.lstatSync(),this.walkCBSync(this.path,this.patterns,()=>{if(this.signal?.aborted)throw this.signal.reason}),this.matches}},cl=class extends Wp{results;constructor(e,r,n){super(e,r,n),this.results=new ps({signal:this.signal,objectMode:!0}),this.results.on("drain",()=>this.resume()),this.results.on("resume",()=>this.resume())}matchEmit(e){this.results.write(e),this.results.flowing||this.pause()}stream(){let e=this.path;return e.isUnknown()?e.lstat().then(()=>{this.walkCB(e,this.patterns,()=>this.results.end())}):this.walkCB(e,this.patterns,()=>this.results.end()),this.results}streamSync(){return this.path.isUnknown()&&this.path.lstatSync(),this.walkCBSync(this.path,this.patterns,()=>this.results.end()),this.results}};var TV=typeof process=="object"&&process&&typeof process.platform=="string"?process.platform:"linux",Fn=class{absolute;cwd;root;dot;dotRelative;follow;ignore;magicalBraces;mark;matchBase;maxDepth;nobrace;nocase;nodir;noext;noglobstar;pattern;platform;realpath;scurry;stat;signal;windowsPathsNoEscape;withFileTypes;includeChildMatches;opts;patterns;constructor(e,r){if(!r)throw new TypeError("glob options required");if(this.withFileTypes=!!r.withFileTypes,this.signal=r.signal,this.follow=!!r.follow,this.dot=!!r.dot,this.dotRelative=!!r.dotRelative,this.nodir=!!r.nodir,this.mark=!!r.mark,r.cwd?(r.cwd instanceof URL||r.cwd.startsWith("file://"))&&(r.cwd=(0,WO.fileURLToPath)(r.cwd)):this.cwd="",this.cwd=r.cwd||"",this.root=r.root,this.magicalBraces=!!r.magicalBraces,this.nobrace=!!r.nobrace,this.noext=!!r.noext,this.realpath=!!r.realpath,this.absolute=r.absolute,this.includeChildMatches=r.includeChildMatches!==!1,this.noglobstar=!!r.noglobstar,this.matchBase=!!r.matchBase,this.maxDepth=typeof r.maxDepth=="number"?r.maxDepth:1/0,this.stat=!!r.stat,this.ignore=r.ignore,this.withFileTypes&&this.absolute!==void 0)throw new Error("cannot set absolute and withFileTypes:true");if(typeof e=="string"&&(e=[e]),this.windowsPathsNoEscape=!!r.windowsPathsNoEscape||r.allowWindowsEscape===!1,this.windowsPathsNoEscape&&(e=e.map(c=>c.replace(/\\/g,"/"))),this.matchBase){if(r.noglobstar)throw new TypeError("base matching requires globstar");e=e.map(c=>c.includes("/")?c:`./**/${c}`)}if(this.pattern=e,this.platform=r.platform||TV,this.opts={...r,platform:this.platform},r.scurry){if(this.scurry=r.scurry,r.nocase!==void 0&&r.nocase!==r.scurry.nocase)throw new Error("nocase option contradicts provided scurry option")}else{let c=r.platform==="win32"?va:r.platform==="darwin"?sl:r.platform?ba:zO;this.scurry=new c(this.cwd,{nocase:r.nocase,fs:r.fs})}this.nocase=this.scurry.nocase;let n=this.platform==="darwin"||this.platform==="win32",i={...r,dot:this.dot,matchBase:this.matchBase,nobrace:this.nobrace,nocase:this.nocase,nocaseMagicOnly:n,nocomment:!0,noext:this.noext,nonegate:!0,optimizationLevel:2,platform:this.platform,windowsPathsNoEscape:this.windowsPathsNoEscape,debug:!!this.opts.debug},s=this.pattern.map(c=>new Xr(c,i)),[o,a]=s.reduce((c,l)=>(c[0].push(...l.set),c[1].push(...l.globParts),c),[[],[]]);this.patterns=o.map((c,l)=>{let u=a[l];if(!u)throw new Error("invalid pattern object");return new _a(c,u,0,this.platform)})}async walk(){return[...await new al(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).walk()]}walkSync(){return[...new al(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).walkSync()]}stream(){return new cl(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).stream()}streamSync(){return new cl(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).streamSync()}iterateSync(){return this.streamSync()[Symbol.iterator]()}[Symbol.iterator](){return this.iterateSync()}iterate(){return this.stream()[Symbol.asyncIterator]()}[Symbol.asyncIterator](){return this.iterate()}};var $T=(t,e={})=>{Array.isArray(t)||(t=[t]);for(let r of t)if(new Xr(r,e).hasMagic())return!0;return!1};function Gp(t,e={}){return new Fn(t,e).streamSync()}function KO(t,e={}){return new Fn(t,e).stream()}function YO(t,e={}){return new Fn(t,e).walkSync()}async function GO(t,e={}){return new Fn(t,e).walk()}function Kp(t,e={}){return new Fn(t,e).iterateSync()}function XO(t,e={}){return new Fn(t,e).iterate()}var vV=Gp,bV=Object.assign(KO,{sync:Gp}),_V=Kp,SV=Object.assign(XO,{sync:Kp}),NV=Object.assign(YO,{stream:Gp,iterate:Kp}),Js=Object.assign(GO,{glob:GO,globSync:YO,sync:NV,globStream:KO,stream:bV,globStreamSync:Gp,streamSync:vV,globIterate:XO,iterate:SV,globIterateSync:Kp,iterateSync:_V,Glob:Fn,hasMagic:$T,escape:pa,unescape:qn});Js.glob=Js;var _S=$(vb()),j$=$($$());var TS={};IB(TS,{$id:()=>gJ,$schema:()=>mJ,default:()=>_J,definitions:()=>TJ,properties:()=>bJ,title:()=>yJ,type:()=>vJ});var mJ="http://json-schema.org/draft-07/schema#",gJ="http://json-schema.org/draft-07/schema#",yJ="Core schema meta-schema",TJ={schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},vJ=["object","boolean"],bJ={$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},_J={$schema:mJ,$id:gJ,title:yJ,definitions:TJ,type:vJ,properties:bJ,default:!0};var Qr=$(U());var Pm=class extends Ac{constructor(r,n){super();this.ajv=r;this.schemaKey=n;this.validate=this.ajv.getSchema(this.schemaKey)}getIssue(r,n){let i=[];if(n.disabled){let o=n.getProperty("status");return[...n.definitions,...n.referencedBy].forEach(a=>i.push(j(21,a.firstToken,a.lastToken,a,{severity:Qr.DiagnosticSeverity.Hint,linkedTo:[...o?.ast?[o?.ast]:[]],tags:[Qr.DiagnosticTag.Unnecessary]}))),i}let s=X.toJson(n);try{this.validate?(this.validate(s),this.validate.errors&&(this.validate.errors.forEach(o=>i.push(...SJ(r,o,n,this.schemaKey))),console.log(this.schemaKey,`${n.pathString}`,this.validate.errors,s))):console.log("no validate")}catch(o){console.log(this.schemaKey,`${n.pathString}`,this.schemaKey,o)}return i}getOnPropertyHover(r){let n=(this.validate?.schema).properties?.[r];if(n&&typeof n=="object"&&"description"in n)return{kind:Qr.MarkupKind.Markdown,value:[...n.description?["### Description",Array.isArray(n.description)?n.description.join(`
296
296
 
297
297
  `):n.description]:[]].join(`
298
- `)}}getSignatureHelp(){}getPropertyListCompletionItems(r){let n=Object.keys((this.validate?.schema).properties),i=(this.validate?.schema).required;return n.map(s=>{let o=r&&i.some(l=>l===s),a=!!r.properties.some(l=>s===l.name),c="a";return o?c=a?"Y":"!":c=a?"Z":"B",{label:`${s}`,kind:Jr.CompletionItemKind.Property,sortText:`${c}${s}`}})??[]}},SJ=(t,e,r,n)=>{let i=NJ(r,e.instancePath),s=i.node;if(e.keyword==="additionalProperties"){let a=s.getProperty(e.params.additionalProperty);return a?[j(25,a.ast.firstToken,a.ast.lastToken,a.ast,{templateStrings:[`Node "${s.name}" ${e.message}: ${a.name}`],edit:Jr.TextEdit.del(Wr(a.ast.firstToken.prevToken,a.ast.lastToken,!1)),codeActionTitle:"Remove property"})]:[]}else if(e.keyword==="type"){let a=s.getProperty(e.instancePath.split("/")[1]);return a?[j(25,a.ast.firstToken,a.ast.lastToken,a.ast,{templateStrings:[`"${a.name}" ${e.message??"NO MESSAGE"}`]})]:(console.warn("unable to find property in node",e),[])}else if(e.keyword==="required"){let a=e.params.missingProperty,c=t.getOrderedNodeAst(s),l=Yo(c);return c.map((u,d)=>{let f=l[d],p=u.openScope??f.lastToken;return j(0,f.firstToken,f.lastToken,f,{templateStrings:[a],edit:Jr.TextEdit.insert(Jr.Position.create(p.pos.line,p.pos.col+1),`
298
+ `)}}getSignatureHelp(){}getPropertyListCompletionItems(r){let n=Object.keys((this.validate?.schema).properties),i=(this.validate?.schema).required;return n.map(s=>{let o=r&&i.some(l=>l===s),a=!!r.properties.some(l=>s===l.name),c="a";return o?c=a?"Y":"!":c=a?"Z":"B",{label:`${s}`,kind:Qr.CompletionItemKind.Property,sortText:`${c}${s}`}})??[]}},SJ=(t,e,r,n)=>{let i=NJ(r,e.instancePath),s=i.node;if(e.keyword==="additionalProperties"){let a=s.getProperty(e.params.additionalProperty);return a?[j(25,a.ast.firstToken,a.ast.lastToken,a.ast,{templateStrings:[`Node "${s.name}" ${e.message}: ${a.name}`],edit:Qr.TextEdit.del(Gr(a.ast.firstToken.prevToken,a.ast.lastToken,!1)),codeActionTitle:"Remove property"})]:[]}else if(e.keyword==="type"){let a=s.getProperty(e.instancePath.split("/")[1]);return a?[j(25,a.ast.firstToken,a.ast.lastToken,a.ast,{templateStrings:[`"${a.name}" ${e.message??"NO MESSAGE"}`]})]:(console.warn("unable to find property in node",e),[])}else if(e.keyword==="required"){let a=e.params.missingProperty,c=t.getOrderedNodeAst(s),l=Yo(c);return c.map((u,d)=>{let f=l[d],p=u.openScope??f.lastToken;return j(0,f.firstToken,f.lastToken,f,{templateStrings:[a],edit:Qr.TextEdit.insert(Qr.Position.create(p.pos.line,p.pos.col+1),`
299
299
  ${"".padEnd(ea(f.uri,u),t.context.formattingOptions.insertSpaces?" ".repeat(t.context.formattingOptions.tabSize):" ")}${a};`)})})}else if(e.keyword==="const"){let a=i.property;return a?[j(25,a.ast.firstToken,a.ast.lastToken,a.ast,{templateStrings:[`Property "${a.name}" ${e.message}: ${e.params.allowedValue}`]})]:[]}else if(e.keyword==="enum"){let a=i.property;return a?[j(25,a.ast.firstToken,a.ast.lastToken,a.ast,{templateStrings:[`Property "${a.name}" ${e.message}:
300
300
  ${e.params.allowedValues.join(`
301
301
  `)}
@@ -303,4 +303,4 @@ ${n}`]})]:[]}else if(e.keyword==="maxItems"||e.keyword==="minItems"){let a=s.get
303
303
  ${JSON.stringify(e)}
304
304
  ${n}`]})];let o=i.node.definitions[0]instanceof Dt?i.node.definitions[0]:i.node.definitions[0].name??i.node.definitions[0];return[j(25,o.firstToken,o.lastToken,o,{templateStrings:[`${e.message??"NO MESSAGE"}:
305
305
  ${JSON.stringify(e)}
306
- ${n}`]})]},NJ=(t,e)=>B$(t,e.split("/").filter(r=>r)),B$=(t,e)=>{if(e.length===0)return{node:t,remainingInstancePath:""};let r=e[0].split("@"),n=r[0],i=r.at(1)?.split(",").map(o=>Number.parseInt(o,16)),s=t.getNode(n,i);return s?B$(s,e.slice(1)):{node:t,property:t.getProperty(e[0]),remainingInstancePath:e.slice(1).join("/")}};var SS=class t{constructor(){this.schemaIdValidators=new Map;this.ajvMap=new Map}static getNodeCompatible(e){let n=e.getProperty("compatible")?.ast.values;if(!n?.values.some(i=>!(i?.value instanceof ne)))return n?.values.map(i=>(i?.value).value)}parseMetaSchema(e,r){Js.sync("**/*.yaml",{cwd:e}).forEach(i=>{i=(0,vS.resolve)(e,i);try{let s=_S.default.parse((0,bS.readFileSync)(i,"utf-8"));r.addMetaSchema(s),this.schemaIdValidators.set(s.$id,i)}catch{}})}parseBindings(e,r){Js.sync("**/*.yaml",{cwd:e}).forEach(i=>{i=(0,vS.resolve)(e,i);try{let s=_S.default.parse((0,bS.readFileSync)(i,"utf-8"));r.addSchema(s),this.schemaIdValidators.set(s.$id,i)}catch(s){console.warn(i,s.message)}})}getNodeTypes(e,r,n){let i=`${e.join(";")}::${r.join(";")}`,s=this.ajvMap.get(i);return s||(s=new j$.default({strict:!1,strictSchema:!1,strictNumbers:!1}),s.addMetaSchema(TS),this.ajvMap.set(i,s),e.forEach(c=>this.parseMetaSchema(c,s)),r.forEach(c=>this.parseBindings(c,s))),t.getNodeCompatible(n)?.map(c=>{try{let l=Array.from(this.schemaIdValidators.keys()).find(f=>f.endsWith(`/${c}.yaml#`));if(!l)return;let u=new Pm(s,l);u.bindingsPath=this.schemaIdValidators.get(l),u.compatible=c;let d=s.getSchema(l);return u.description=(d?.schema).description,u.examples=(d?.schema).examples,u.maintainers=(d?.schema).maintainers,u}catch(l){console.warn(l.message)}}).filter(c=>c)??[]}getBindings(){return Array.from(this.schemaIdValidators.keys())}},F$,NS=()=>(F$??=new SS,F$);var gu=require("path"),K$=require("fs"),Y$=$(require("path")),X$=$(vb());var Nn=$(U());var U$=()=>{let t=new Y("nonposted-mmio",z("EMPTY"),"optional");return t.description=["Specifies that direct children of this bus should use non-posted memory accesses (i.e. a non-posted mapping mode) for MMIO ranges."],t};function H$(){let t=ur();t.noMismatchPropertiesAllowed=!0;let e=t.properties.find(n=>n.name==="compatible");e.required=()=>"required";let r=t.properties.find(n=>n.name==="ranges");return r.required=()=>"required",t.addProperty(U$()),t}var V$=t=>{switch(t){case"string":return z("STRING");case"int":return z("U32");case"boolean":return z("EMPTY");case"array":return z("PROP_ENCODED_ARRAY");case"uint8-array":return z("BYTESTRING");case"string-array":return z("STRINGLIST");case"phandle":return z("U32");case"phandles":return z("PROP_ENCODED_ARRAY");case"phandle-array":return z("PROP_ENCODED_ARRAY");case"path":return z(["STRING","U32"]);case"compound":return z("ANY");default:return z("ANY")}},z$=(t,e)=>{switch(t){case"string":return typeof e=="string"?e:void 0;case"int":return typeof e=="number"?e:void 0;case"boolean":return;case"array":return Array.isArray(e)&&e.every(r=>typeof r=="number")?e:void 0;case"uint8-array":return Array.isArray(e)&&e.every(r=>typeof r=="number")?e:void 0;case"string-array":return Array.isArray(e)&&e.every(r=>typeof r=="string")?e:void 0;case"phandle":return;case"phandles":return;case"phandle-array":return;case"path":return;case"compound":return}},wm=(t,e)=>{if(e.extends??=[],e=e.include.reduce((r,n)=>{let i=t.find(s=>(0,gu.basename)(s.filePath)===n.name);if(i){let s=n["property-blocklist"],o=n["property-allowlist"];return e.extends?.push(...r.include.map(a=>(0,gu.basename)(a.name,".yaml"))),r.include=r.include.filter(a=>a!==n),kJ(t,i,r,s,o)??r}return console.warn(`Unable to find ${n.name}`),r},e),e["child-binding"]&&(e["child-binding"].include=J$(e["child-binding"].include),e["child-binding"]=wm(t,e["child-binding"])),!e.include.length)return e},kJ=(t,e,r,n=[],i)=>{let s=wm(t,e),o=wm(t,r);if(!s||!o)return;let a=new Set;Object.keys(s?.properties??{}).forEach(f=>a.add(f)),Object.keys(o?.properties??{}).forEach(f=>a.add(f));let c={};Array.from(a).forEach(f=>{let p=n?.some(h=>h===f)||i&&!i.some(h=>h===f)?void 0:s.properties?.[f]??void 0,g=o.properties?.[f]??void 0;(p||g)&&(c={...c,[f]:{...p??g}})}),o.properties=c,o.extends??=[],o.extends.push(...s.extends??[]);let l=new Set;return Object.keys(s).filter(f=>f.endsWith("-cells")).forEach(f=>l.add(f)),Object.keys(s).filter(f=>f.endsWith("-cells")).forEach(f=>l.add(f)),Array.from(l).forEach(f=>{let p=s[f]??[],g=o[f]??[];o[f]=Array.from([...p,...g])}),o["on-bus"]??=s["on-bus"],o.bus?o.bus.push(...s.bus??[]):o.bus=s.bus,o},J$=t=>t?typeof t=="string"?[{name:t}]:t.map(e=>typeof e!="string"?e:{name:e}):[],kS=class t{constructor(){this.typeCache=new Map;this.processedFolders=new Set;this.zephyrBindingCache=new Map}static getCompatibleKeys(e,r){return!r||!r.nodeType?.bus?.length?[e]:[...r.nodeType.bus.map(n=>`${e}::${n}`),e]}static getNodeCompatible(e){let i=e.getProperty("compatible")?.ast.values?.values.filter(s=>s&&s.value instanceof ne);if(i?.length)return i.map(s=>s?.value?{name:s.value.value,ast:s.value}:void 0)}getNodeTypes(e,r){let n=t.getNodeCompatible(e)?.filter(a=>a);if(!n?.length){if(e.name==="zephyr,user"){let a=r.split(":"),l=Array.from(this.zephyrBindingCache.keys()).filter(d=>a.some(f=>d.startsWith(f))).flatMap(d=>this.zephyrBindingCache.get(d)).find(d=>d.filePath.endsWith("/base.yaml")),u=l?RS(l,e):void 0;if(u){u.warnMismatchProperties=!1;let d=u.properties.find(f=>f.name==="compatible");d&&(d.required=()=>"optional")}return{type:[u??ss(e)],issues:[]}}return{type:[ss(e)],issues:[]}}let i=n.flatMap(a=>t.getCompatibleKeys(a.name,e.parent).map(c=>this.typeCache.get(r)?.get(c)?.(e)).filter(c=>!!c)),s=this.getBusTypes(),o=n.flatMap(a=>{let c=t.getCompatibleKeys(a.name,e.parent).some(l=>this.typeCache.get(r)?.has(l));if(!c){let l=s.filter(u=>this.typeCache.get(r)?.has(`${a.name}::${u}`));if(l.length)return j(37,a.ast.firstToken,a.ast.lastToken,a.ast,{templateStrings:l})}return c?[]:[j(32,a.ast.firstToken,a.ast.lastToken,a.ast,{severity:Nn.DiagnosticSeverity.Hint,tags:[Nn.DiagnosticTag.Unnecessary],templateStrings:[a.name]})]});return{type:i.length?i:[ss(e)],issues:o}}loadTypeAndCache(e,r){e=Array.isArray(e)?e:[e];let n=e.filter(o=>this.processedFolders.has(o)).flatMap(o=>Array.from(this.zephyrBindingCache.entries()).flatMap(([a,c])=>a.startsWith(o)?[c]:[]));n.push(...e.filter(o=>!this.processedFolders.has(o)).flatMap(o=>(this.processedFolders.add(o),Js.sync("**/*.yaml",{cwd:o,ignore:"test/*"}).map(c=>{if(c=(0,gu.resolve)(o,c),this.zephyrBindingCache.has(c))return this.zephyrBindingCache.get(c);try{let l=X$.default.parse((0,K$.readFileSync)(c,"utf-8")),u=J$(l?.include),d={...l,bus:l.bus?Array.isArray(l.bus)?l.bus:[l.bus]:void 0,include:u,rawInclude:[...u],filePath:c};return this.zephyrBindingCache.set(c,d),d}catch(l){console.warn(l)}}).filter(c=>!!c))));let i=n.map(o=>wm(n,o)).filter(o=>!!o&&!o.include.length),s=this.typeCache.get(r);s||(s=new Map,s.set("simple-bus",()=>H$()),this.typeCache.set(r,s)),RJ(i,s)}getBindings(e){return Array.from(this.typeCache.get(e)?.keys()??[]).map(r=>r.split("::",1)[0])}getBusTypes(){let e=Array.from(this.zephyrBindingCache.values()).flatMap(r=>r.bus?.filter(n=>!!n)??[]).filter(r=>!!r);return Array.from(new Set(e))}getDocumentLinks(e,r){let n=this.zephyrBindingCache.get(Se(e.uri));if(!n)return[];let i=e.getText();return n.rawInclude.map(o=>{let c=new RegExp(o.name).exec(i);if(c){let l=e.positionAt(c.index),u=e.positionAt(c.index+c[0].length),d=Array.from(this.zephyrBindingCache.keys()).find(f=>f.endsWith(`${Y$.default.sep}${o.name}`)&&r.some(p=>f.startsWith(p)));return d?{range:Nn.Range.create(l,u),target:de(d)}:void 0}}).filter(o=>!!o)}},W$,Ga=()=>(W$??=new kS,W$),RJ=(t,e)=>t.forEach(r=>{r.compatible&&e.set(r["on-bus"]?`${r.compatible}::${r["on-bus"]}`:r.compatible,n=>RS(r,n))}),RS=(t,e)=>{let r=ss(e);r.compatible=t.compatible,r.description=t.description,r.bindingsPath=t.filePath,r.bus=typeof t.bus=="string"?[t.bus]:Array.from(new Set(t.bus)),r.onBus=t["on-bus"],t.extends?.forEach(s=>r.extends.add(s)),r.warnMismatchProperties=!0;let i=Object.keys(t).filter(s=>s.endsWith("-cells")).map(s=>({specifier:s.replace(/-cells$/,""),values:t[s]}));if(r.cellsValues=i,Object.keys(t.properties??{}).forEach(s=>{let o=t.properties[s];PJ(r,s,o)}),t["child-binding"]){let s=t["child-binding"];r.childNodeType=o=>RS(s,o)}return r},PJ=(t,e,r)=>{let n=t.properties.find(i=>i.getNameMatch(e));if(n&&typeof n.name=="string"){n.required=()=>r.required?"required":"optional",n.values=()=>r.enum??[],n.constValue=z$(r.type,r.const),n.bindingType=r.type;let i=n.additionalTypeCheck;n.additionalTypeCheck=(s,o)=>[...G$(r,e,n)(s,o),...i?.(s,o)??[]]}else{let i=r.type==="compound"?n?.type:V$(r.type);i??=V$(r.type);let s=new Y(e,i,r.required?"required":"optional",void 0,r.enum);s.additionalTypeCheck=(o,a)=>{let c=[...n?.additionalTypeCheck?.(o,a)??[],...G$(r,e,s)(o,a)];return s.signatureArgs??=n?.signatureArgs,s.signatureArgsCyclic??=!!n?.signatureArgsCyclic,c},s.description=r.description?[r.description]:n?.description,s.bindingType=r.type,s.constValue=z$(r.type,r.const),t.addProperty(s)}},G$=(t,e,r)=>{let n=t;return(i,s)=>{let o=i.parent.root,a=[];if(n.const){let l=i.ast.quickValues;if(l?.length==1){let u=Array.isArray(n.const)?n.const:[n.const];if(!(Array.isArray(l[0])&&u.length===l[0].length&&l[0].every((f,p)=>typeof f=="number"&&Number.isNaN(f)||u[p]===f))){let f=i.ast.values??i.ast;a.push(j(24,f.firstToken,f.lastToken,f,{templateStrings:[`Binding expects values to be "${n.type}" with value: ${n.const}`]}))}}}if(n.deprecated&&a.push(j(14,i.ast.firstToken,i.ast.lastToken,i.ast,{severity:Nn.DiagnosticSeverity.Warning,tags:[Nn.DiagnosticTag.Deprecated],templateStrings:[i.name]})),(n.type==="phandle"||n.type==="phandles"||n.type==="path")&&xe(i.ast.values)?.forEach(u=>{dn(u,o)||a.push(j(22,u.firstToken,u.lastToken,u))}),n.type==="path"&&i.ast.values?.values.at(0)?.value instanceof ne){let l=i.ast.values?.values.at(0)?.value,u=[];l.value.split("/").every(d=>{let f=o.getNode(d);return f?u.push(d):a.push(j(23,l.firstToken,l.lastToken,l,{templateStrings:[d,`/${u.join("/")}`]})),!f})}let c=i.name.match(/^(.*)-(\d+)$/);if(n.type==="phandles"&&c){let l="";e.endsWith("-gpios")?l="gpio":l=n["specifier-space"]??c[1];let u=Number.parseInt(c[2],10),d=i.parent.getProperty(`${l}-names`);d&&(d.ast.quickValues?.at(u)||a.push(j(33,i.ast.firstToken,i.ast.lastToken,i.ast,{severity:Nn.DiagnosticSeverity.Warning,linkedTo:[d.ast],templateStrings:[i.name,u.toString()]})))}if(n.type==="phandle-array"){let l=xe(i.ast.values),u=0,d=[],f=0;for(;l&&u<l.length;){let p=l.at(u),g=dn(p,o);if(!g){let M=p??i.ast;a.push(j(22,M.firstToken,M.lastToken,M));break}let h="";e.endsWith("-gpios")?h="gpio":h=n["specifier-space"]??e.slice(0,-1);let T=g.getProperty(`#${h}-cells`);if(!T){a.push(j(16,i.ast.firstToken,i.ast.lastToken,i.ast,{linkedTo:[...g.nodeNameOrLabelRef],templateStrings:[i.name,`#${h}-cells`,`/${g.path.slice(1).join("/")}`]}));break}let S=T?$e(T,0,0,s)??0:0,_=g.nodeType?.cellsValues?.find(M=>M.specifier===h)?.values;if(d.push([`${f}_phandle`,..._?.map(M=>`${f}_${M}`)??[],...Array.from({length:S-(_?.length??0)},(M,F)=>`${f}_cell${S-(_?.length??0)?F:""}`)]),1+S>l.length-u){let M=p??i.ast;a.push(j(19,M.firstToken,M.lastToken,M,{templateStrings:[i.name,`<${d.at(-1).join(" ")}>`]}));break}u+=1+S;let v=l.slice(u-S,u),R={mappingValuesAst:v,specifierSpace:h,target:g};i.nexusMapsTo.push(R);let D=g.getProperty(`${h}-map`);if(D){let M=g.getNexusMapEntryMatch(h,s,v);M?.match?R.mapItem=M.match:a.push(j(31,M.entry.firstToken,M.entry.lastToken,M.entry,{linkedTo:[D.ast]}))}v.every(M=>M instanceof Ee)&&g.spesifierNexusMapping.push({expressions:v,node:i.parent,property:i});let B=i.parent.getProperty(`${h}-names`);p&&B&&(B.ast.quickValues?.at(f)||a.push(j(33,p.firstToken,l[u-1]?.lastToken,i.ast,{severity:Nn.DiagnosticSeverity.Warning,linkedTo:[B.ast],templateStrings:[i.name,f.toString()]}))),f++}d.push([`${f}_phandle`,`${f}_cell...`]),r.signatureArgs=d.map(p=>p.map(g=>Nn.ParameterInformation.create(g)))}return a}};var Q$=(t,e)=>{let r=t.zephyrBindings.join(":");return e==="Zephyr"&&Ga().loadTypeAndCache(t.zephyrBindings,r),{files:t,type:e,getNodeTypes:n=>{switch(e){case"Zephyr":return Ga().getNodeTypes(n,r);case"DevicetreeOrg":return{type:NS().getNodeTypes(t.deviceOrgBindingsMetaSchema,t.deviceOrgTreeBindings,n),issues:[]}}},getBindings:()=>{switch(e){case"Zephyr":return Ga().getBindings(r);case"DevicetreeOrg":return NS().getBindings()}},getBusTypes:()=>{switch(e){case"Zephyr":return Ga().getBusTypes();case"DevicetreeOrg":return[]}},getDocumentLinks(n){if(!n)return[];switch(e){case"Zephyr":return Ga().getDocumentLinks(n,t.zephyrBindings);case"DevicetreeOrg":return[]}}}};var Em=$(U());var wJ=t=>!t.lastToken.prevToken||!t.lastToken.prevToken.prevToken?[]:[{startLine:t.firstToken.pos.line,startCharacter:t.firstToken.pos.col,endLine:t.lastToken.prevToken.prevToken.pos.line,endCharacter:t.lastToken.prevToken.prevToken.pos.col,kind:Em.FoldingRangeKind.Comment}],PS=t=>!t.openScope||!t.closeScope?.prevToken?t.nodes.flatMap(PS):[{startLine:t.openScope.pos.line,startCharacter:t.openScope.pos.col,endLine:t.closeScope.prevToken.pos.line,endCharacter:t.closeScope.prevToken.pos.col,kind:Em.FoldingRangeKind.Region},...t.nodes.flatMap(PS)],Z$=t=>{let e=[];return[...t instanceof ns?t.ifBlocks.map(r=>({start:(r.expression??r.keyword).lastToken,end:r.content?.lastToken??(r.expression??r.keyword).lastToken})):[{start:(t.ifDef.identifier??t.ifDef.keyword).lastToken,end:t.ifDef.content?.lastToken}],t.elseOption?{start:t.elseOption.keyword.lastToken,end:t.elseOption.content?.lastToken}:null].forEach(r=>{!r||!r.end||e.push({startLine:r.start.pos.line,startCharacter:r.start.pos.col,endLine:r.end.pos.line,endCharacter:r.end.pos.colEnd,kind:Em.FoldingRangeKind.Region})}),e},EJ=t=>t instanceof lt?PS(t):t instanceof rs||t instanceof ns?Z$(t):t instanceof ln?wJ(t):[];function eB(t,e){return e.allAstItems.flatMap(r=>[r,...r.allDescendants]).filter(r=>le(r.uri,t)).flatMap(EJ)}var To=$(U());function DJ(t){if(!t||!(t.ast instanceof Me)&&!(t.ast instanceof Qt))return[];let e=r=>r.nodeType?.bindingsPath?[To.Location.create(de(r.nodeType.bindingsPath),To.Range.create(To.Position.create(0,0),To.Position.create(0,0)))]:[];return t.item instanceof X&&!Ut(t.ast)?e(t.item):t.ast instanceof Qt&&t.ast.parentNode instanceof ie&&t.ast.parentNode.linksTo?e(t.ast.parentNode.linksTo):t.ast instanceof Me&&t.ast.linksTo?e(t.ast.linksTo):[]}async function tB(t,e){return _t(t,e,r=>[...DJ(r)])}var Cm=require("fs");var CJ=(t,e)=>{Mr().reset(t),Mr().requestTokens(t,!0),e(t)},Dm=class{constructor(e,r,n){this.file=e;this.cb=r;this.hasDocumentOpen=n}#e=0;watch(){if(this.count++,this.count===1){console.log("create watch for",this.file);let e=this.file,r=this.cb;this.onChange=()=>{if(this.hasDocumentOpen(e)){console.log("skipping on change document is open",e);return}console.log("onChange",e),CJ(e,r)},(0,Cm.watchFile)(e,this.onChange)}}unwatch(){this.count===1&&(console.log("dispose watch for",this.file),(0,Cm.unwatchFile)(this.file,this.onChange),this.onChange=void 0),this.count--}get count(){return this.#e}set count(e){this.#e=e,e<0&&(this.#e=0,console.warn("unwatching an un watched file",this.file))}};var Yt=$(require("path")),wS=require("fs");var Gn=t=>{if(t)return Array.isArray(t)?t:[t]},AJ=t=>({...t,deviceOrgBindingsMetaSchema:Gn(t.deviceOrgBindingsMetaSchema),deviceOrgTreeBindings:Gn(t.deviceOrgTreeBindings),includePaths:Gn(t.includePaths),lockRenameEdits:Gn(t.lockRenameEdits),zephyrBindings:Gn(t.zephyrBindings),overlays:Gn(t.overlays)}),rB=t=>({...t,defaultDeviceOrgBindingsMetaSchema:Gn(t.defaultDeviceOrgBindingsMetaSchema),defaultDeviceOrgTreeBindings:Gn(t.defaultDeviceOrgTreeBindings),defaultIncludePaths:Gn(t.defaultIncludePaths),defaultLockRenameEdits:Gn(t.defaultLockRenameEdits),defaultZephyrBindings:Gn(t.defaultZephyrBindings),contexts:t.contexts?.map(AJ)}),kn=async(t,e=[],r)=>{let n=r?e.map(s=>Se(s.uri)).find(s=>kw(s,r)):void 0;return[...e.at(0)?[{replace:"${workspaceFolder}",uri:n??Se(e[0].uri)}]:[],...e.map(s=>({replace:`\${workspaceFolder:${s.name}}`,uri:Se(s.uri)}))].forEach(s=>t=t.replaceAll(s.replace,s.uri)),t},Is={defaultBindingType:"Zephyr",defaultZephyrBindings:[],defaultIncludePaths:[],defaultDeviceOrgBindingsMetaSchema:[],defaultDeviceOrgTreeBindings:[],contexts:[],defaultLockRenameEdits:[],allowAdhocContexts:!0,autoChangeContext:!0,defaultShowFormattingErrorAsDiagnostics:!0},ES=async(t,e,r)=>{let n=await kn(t.cwd??"${workspaceFolder}",r,t.dtsFile)??e.cwd,i=await Promise.all((t.includePaths??e.defaultIncludePaths).map(p=>kn(p,r,t.dtsFile))),s=await Promise.all((t.zephyrBindings??e.defaultZephyrBindings).map(p=>kn(p,r,t.dtsFile))),o=t.bindingType??e.defaultBindingType,a=await Promise.all((t.deviceOrgTreeBindings??e.defaultDeviceOrgTreeBindings).map(p=>kn(p,r,t.dtsFile))),c=await Promise.all((t.deviceOrgBindingsMetaSchema??e.defaultDeviceOrgBindingsMetaSchema).map(p=>kn(p,r,t.dtsFile))),l=await Promise.all((t.lockRenameEdits??e.defaultLockRenameEdits).map(p=>kn(p,r,t.dtsFile)));n&&o==="Zephyr"&&(!s||s.length===0)&&(s=["./zephyr/dts/bindings"]);let u=t.dtsFile,d=t.overlays??[],f=t.compileCommands;return n&&(s=s.map(p=>(0,Yt.resolve)(n,p)).filter(p=>(0,wS.existsSync)(p)),a=a?.map(p=>(0,Yt.resolve)(n,p)),c=c.map(p=>(0,Yt.resolve)(n,p)),i=i.map(p=>(0,Yt.resolve)(n,p)),u=(0,Yt.resolve)(n,u),d=d.map(p=>(0,Yt.resolve)(n,p)),l=l.map(p=>(0,Yt.resolve)(n,p)),f=f?(0,Yt.resolve)(n,f):void 0),{ctxName:t.ctxName??(0,Yt.basename)(u),cwd:n?rt(n):void 0,includePaths:i.map(rt),zephyrBindings:s.map(rt),bindingType:o,deviceOrgTreeBindings:a.map(rt),deviceOrgBindingsMetaSchema:c.map(rt),dtsFile:rt(u),overlays:d.map(rt),lockRenameEdits:l.map(rt),compileCommands:f?rt(f):void 0,showFormattingErrorAsDiagnostics:t.showFormattingErrorAsDiagnostics??e.defaultShowFormattingErrorAsDiagnostics}},yu=async(t,e)=>{let r=t.cwd?await kn(t.cwd,e):void 0,n=t.defaultBindingType,i=t.defaultDeviceOrgBindingsMetaSchema=await Promise.all((t.defaultDeviceOrgBindingsMetaSchema??[]).map(d=>kn(d,e))),s=t.defaultDeviceOrgTreeBindings=await Promise.all((t.defaultDeviceOrgTreeBindings??[]).map(d=>kn(d,e))),o=t.defaultIncludePaths=await Promise.all((t.defaultIncludePaths??[]).map(d=>kn(d,e))),a=t.defaultZephyrBindings=await Promise.all((t.defaultZephyrBindings??[]).map(d=>kn(d,e))),c=t.defaultLockRenameEdits=await Promise.all((t.defaultLockRenameEdits??[]).map(d=>kn(d,e)));r&&(o=t.defaultIncludePaths=(t.defaultIncludePaths??[]).map(d=>(0,Yt.resolve)(r,d)),n==="Zephyr"&&!t.defaultZephyrBindings&&(a=["./zephyr/dts/bindings"]),a=a.map(d=>(0,Yt.resolve)(r,d)),i=i.map(d=>(0,Yt.resolve)(r,d)),s=(t.defaultDeviceOrgTreeBindings??[]).map(d=>(0,Yt.resolve)(r,d)),c=c.map(d=>(0,Yt.resolve)(r,d)));let l={cwd:r,defaultDeviceOrgBindingsMetaSchema:i,defaultDeviceOrgTreeBindings:s,defaultIncludePaths:o,defaultZephyrBindings:a,defaultLockRenameEdits:c,defaultBindingType:n,autoChangeContext:t.autoChangeContext??Is.autoChangeContext,allowAdhocContexts:t.allowAdhocContexts??Is.allowAdhocContexts,defaultShowFormattingErrorAsDiagnostics:t.defaultShowFormattingErrorAsDiagnostics??Is.defaultShowFormattingErrorAsDiagnostics},u=(await Promise.all(t.contexts?.map(d=>ES(d,l,e))??[])).filter(d=>[d.dtsFile,...d.overlays].every(f=>(0,wS.existsSync)(f)&&Yt.default.isAbsolute(f)));return{...l,contexts:u}};var nB=t=>`DT_PROP(${DS(t.parent)}, ${t.name.replaceAll("-","_")}))`,iB=t=>t.parent.labels.map(e=>`DT_PROP(DT_NODELABEL(${e.label.toString()}), ${t.name.replaceAll("-","_")})`);var DS=t=>`DT_PATH(${t.path.slice(1).map(e=>e.replace("@","_").replaceAll("-","_")).join(",")})`,sB=t=>t.labels.map(e=>`DT_NODELABEL(${e.label.toString()})`),oB=t=>{let e=[];return ii.getNodeFromPath(["aliases"],t.root)?.properties.filter(i=>{if(i.ast.quickValues?.at(0)===t.pathString)return!0;let s=i.ast.values?.values.at(0)?.value;if(s instanceof ie&&s.linksTo===t||s instanceof it&&s.path?.pathParts.at(-1)?.linksTo===t)return!0})?.forEach(i=>e.push(`DT_ALIAS(${i.name.replaceAll("-","_")})`)),e};function IJ(t,e){if(!t||!(t.item instanceof Ye)||!(t.ast instanceof Ze))return[];let r=[];return e.settings.bindingType==="Zephyr"&&(r.push({type:"dt_zephyr_macro_prop_node_path",data:nB(t.item)}),iB(t.item).forEach(n=>{r.push({type:"dt_zephyr_macro_prop_node_label",data:n})})),r}function OJ(t,e){if(!t||t.item===null)return[];let r;if(t.item instanceof X?r=t.item:t.ast.parentNode instanceof ie&&t.ast.parentNode.linksTo?r=t.ast.parentNode.linksTo:t.ast instanceof Me&&t.ast.linksTo&&(r=t.ast.linksTo),!r)return[];let n=[{type:"path",data:r.pathString}];return e.settings.bindingType==="Zephyr"&&(sB(r).forEach(i=>{n.push({type:"dt_zephyr_macro_node_label",data:i})}),n.push({type:"dt_zephyr_macro_node_path",data:DS(r)}),oB(r).forEach(i=>{n.push({type:"dt_zephyr_macro_prop_node_alias",data:i})})),n}async function aB(t,e){return e?_t(t,e,r=>[...OJ(r,e),...IJ(r,e)]):[]}var cB=$(U());function MJ(t){return!t||!(t.item instanceof Ye)?void 0:t.item.parent.nodeType?.getSignatureHelp?.(t.item,t.ast,t.beforeAst,t.afterAst)}async function xJ(t){let e=bc(t?.ast);if(!e||!e.params.length||!t?.ast||t.ast===e.functionName)return;let n=(await t.runtime.context.getAllParsers()).at(-1).cPreprocessorParser.macros.get(e.functionName.name)?.macro.identifier;if(!n||!(n instanceof ni))return;let i=n.params.map(o=>({label:o instanceof St?o.name:"..."})),s=e.params.find(o=>o&&(t.ast===o||o.isAncestorOf(t.ast)));return s??=t.afterAst?e.params.find(o=>o&&(t.afterAst===o||o.isAncestorOf(t.afterAst))):void 0,s??=t.beforeAst?e.params.find(o=>o&&(t.beforeAst===o||o.isAncestorOf(t.beforeAst))):void 0,{signatures:[cB.SignatureInformation.create(`${e.functionName.name}(${i.map(o=>o.label).join(", ")})`,void 0,...i.flat())],activeSignature:0,activeParameter:s?e.params.indexOf(s):void 0}}async function lB(t,e){if(e)return(await _t(t,e,async r=>[await xJ(r)||MJ(r)])).at(0)}var uB=require("timers"),dB=require("events");var CS=class extends dB.EventEmitter{constructor(e=3e3,r=1e3){super(),this.thresholdBytes=e*1024*1024,this.interval=(0,uB.setInterval)(()=>{let n=process.memoryUsage().heapUsed;n>this.thresholdBytes&&this.emit("thresholdExceeded",{usedMb:(n/1024/1024).toFixed(2),thresholdMb:e})},r)}stop(){clearInterval(this.interval)}},LJ=new CS(3e3),fB=()=>{LJ.on("thresholdExceeded",({usedMb:t,thresholdMb:e})=>{console.warn(`[HeapMonitor] Heap usage exceeded ${e}MB: ${t}MB used`),Ww(),zw()})};var He=[],ce,Ya,Am=new WeakMap,Tu=new Map;fB();var hB=t=>{t.getContextFiles().forEach(e=>{Tu.has(e)||Tu.set(e,new Dm(e,LS,r=>!!Om(r))),Tu.get(e)?.watch()})},MS=async t=>{let e=He.indexOf(t);if(e===-1)return;bu(t,void 0,!0),Am.delete(t),console.log(`(ID: ${t.id}) cleaning Context for [${t.ctxNames.join(",")}]`);let r=await Ms(t);if(te.sendNotification("devicetree/contextDeleted",{ctxNames:t.ctxNames.map(n=>n.toString()),id:t.id,...await t.getFileTree(),settings:t.settings,active:ce===t,type:r.type}),He.splice(e,1),await BS(),t===ce&&(ce=void 0,He.length)){let n=Ya?cn(He,{uri:Ya}):void 0;n??=He[0],console.log("Active context was deleted. Forcing active to",n.id),await Xt({id:n.id},!0)}t.getContextFiles().map(n=>Tu.get(n)?.unwatch())},qJ=t=>{let e=Am.get(t);if(!e?.abort.signal.aborted)return Promise.all([e?.promise,t.getRuntime()])},Fe=async()=>{await Promise.all(He.map(qJ))},xS=async t=>(await mB()).indexOf(t)!==-1,mB=async()=>{let t=await gB();return He.filter(e=>!t.some(r=>r===e))},gB=async()=>{let t=await OS();return He.filter(e=>t.contexts.find(r=>ki(r)===e.id))},$J=async()=>{let t=await VJ();return He.filter(e=>t.contexts.find(r=>ki(r)===e.id))},BJ=async t=>(await $J()).indexOf(t)!==-1,FJ=async(t,e)=>{if(t===e)return!0;let r=(await t.getAllParsers()).flatMap(i=>i.cPreprocessorParser.dtsIncludes).filter(i=>i.resolvedPath),n=(await e.getAllParsers()).flatMap(i=>i.cPreprocessorParser.dtsIncludes).filter(i=>i.resolvedPath);return n.some(i=>le(i.resolvedPath,t.parser.uri))&&r.length?r.every(i=>n.some(s=>s.resolvedPath===i.resolvedPath&&s.firstToken.pos.col===i.firstToken.pos.col&&s.firstToken.pos.len===i.firstToken.pos.len&&s.firstToken.pos.line===i.firstToken.pos.line&&s.lastToken.pos.col===i.lastToken.pos.col&&s.lastToken.pos.len===i.lastToken.pos.len&&s.lastToken.pos.line===i.lastToken.pos.line)):e.getContextFiles().some(i=>le(i,t.parser.uri))},jJ=async t=>{if(!await xS(t))return;let e=await mB(),r=await gB(),n=await df(e);if(He.indexOf(t)===-1)return;let i=await Promise.all(n.flatMap(a=>[...r,...e.filter(c=>c!==a.context)].map(async c=>({context:a.context,same:await FJ(a.context,c)})))),s=t.getContextFiles(),o=n.filter(a=>i.some(c=>c.context===a.context&&c.same)||a.context!==t&&le(a.context.parser.uri,t.parser.uri)&&s.some(c=>c&&a.files.indexOf(c)!==-1)).map(a=>a.context);o.length&&await Promise.all(o.map(MS))},te=(0,ze.createConnection)(ze.ProposedFeatures.all),yr=new ze.TextDocuments(Qn),yB=!1,Im=!1,TB=!1,vB=!1,bB=!1,AS;te.onInitialize(async t=>{AS=t.workspaceFolders??[],te.console.log(`[Server(${process.pid}) ${AS?.at(0)?.uri} Version 0.6.5 ] Started and initialize received`);let e=t.capabilities;yB=!!(e.workspace&&e.workspace.configuration),Im=!!(e.workspace&&e.workspace.workspaceFolders),TB=!!e.workspace?.diagnostics?.refreshSupport,vB=!!e.workspace?.semanticTokens?.refreshSupport,bB=!!e.workspace?.foldingRange?.refreshSupport;let r={capabilities:{typeDefinitionProvider:!0,workspaceSymbolProvider:!0,textDocumentSync:ze.TextDocumentSyncKind.Incremental,renameProvider:{prepareProvider:!0},completionProvider:{resolveProvider:!0,triggerCharacters:["&","="," ",'"',"(",","]},codeActionProvider:{codeActionKinds:[ze.CodeActionKind.QuickFix,ze.CodeActionKind.SourceFixAll]},documentSymbolProvider:!0,semanticTokensProvider:{legend:{tokenTypes:sf,tokenModifiers:of},full:!0},documentLinkProvider:{resolveProvider:!1},foldingRangeProvider:!0,definitionProvider:!0,declarationProvider:!0,referencesProvider:!0,documentFormattingProvider:!0,documentRangeFormattingProvider:!0,hoverProvider:!0,signatureHelpProvider:{triggerCharacters:["<","("],retriggerCharacters:[" ",","]}}};return Im&&(r.capabilities.workspace={workspaceFolders:{changeNotifications:!0,supported:!0}}),await kB(t.initializationOptions),r});var IS,UJ={tabSize:8,insertSpaces:!1,trimTrailingWhitespace:!0,insertFinalNewline:!0};te.onInitialized(async()=>{if(yB&&(te.client.register(ze.DidChangeConfigurationNotification.type,{}),!IS)){let t=await te.workspace.getConfiguration("editor").catch(()=>{}),e=await te.workspace.getConfiguration("[devicetree]").catch(()=>{}),r={tabSize:e?.["editor.tabSize"],insertSpaces:e?.["editor.insertSpaces"],trimFinalNewlines:e?.["editor.trimFinalNewlines"],trimTrailingWhitespace:e?.["editor.trimTrailingWhitespace"],insertFinalNewline:e?.["editor.insertFinalNewline"]};(t||r)&&(IS={...t,...r})}Im&&te.workspace.onDidChangeWorkspaceFolders(async t=>{te.console.log("Workspace folder change event received"),await Nu()})});te.onRequest("workspace/workspaceFolders",async()=>AS??null);var HJ=async()=>{let t=_B();return t={...Is,...t},yu(t,await Su())},OS=async()=>{let t=WJ();return t={...Is,...t},yu(t,await Su())},VJ=async()=>{let t=GJ();return t={...Is,...t},yu(t,await Su())},_u=async()=>{let t=zJ();return t={...Is,...t},yu(t,await Su())},Su=async()=>Im?await te.workspace.getWorkspaceFolders()??[]:[],pB=async t=>{let e=cn(He,{id:ki(t)});if(e)return e.ctxNames.includes(t.ctxName)||console.log(`(ID: ${e.id}) Adding name ${t.ctxName} for [${e.ctxNames.join(",")}]`),e.addCtxName(t.ctxName),e;let r=ki(t);console.log(`(ID: ${r}) New context [${t.ctxName}]`),console.log(`(ID: ${r}) Settings: ${JSON.stringify(t,void 0," ")}`);let n=(0,Xa.join)((0,Xa.dirname)(t.dtsFile),"dts","bindings"),i=new Ff(t,IS??UJ,t.bindingType?Q$({zephyrBindings:t.zephyrBindings?[n,...t.zephyrBindings]:[n],deviceOrgBindingsMetaSchema:t.deviceOrgBindingsMetaSchema??[],deviceOrgTreeBindings:t.deviceOrgTreeBindings??[]},t.bindingType):void 0);He.push(i),await i.stable(),hB(i);let s=await Ms(i);return te.sendNotification("devicetree/contextCreated",{ctxNames:i.ctxNames.map(o=>o.toString()),id:i.id,...await i.getFileTree(),settings:i.settings,active:i===ce,type:s.type}),await jJ(i),await BS(),i},Nu=async()=>{let t=await OS(),e=await _u();e.allowAdhocContexts||(e=await OS());let r=e.contexts.map(ki),n=He.filter(i=>!r.includes(i.id));await Promise.all(n.map(MS)),await t.contexts?.reduce((i,s)=>i.then(async()=>{await pB(s)}),Promise.resolve()),e.allowAdhocContexts&&await(await HJ()).contexts?.reduce((s,o)=>s.then(async()=>{cn(He,{uri:o.dtsFile})||await pB(o)}),Promise.resolve()),Ya?await Xt({uri:Ya}):!ce&&He.length&&(console.log(`No active context using first context (ID: ${He[0].id}) [${He[0].ctxNames.join(",")}]`),await Xt({id:He[0].id}))},Rn,Os,vu=new Map,Ka=new Map,zJ=()=>!Os&&!Rn?void 0:{...Os,...Rn,contexts:[...Rn?.contexts??[],...Array.from(Ka.values()),...Array.from(vu.values())]},_B=()=>!Os&&!Rn?void 0:{...Os,...Rn,contexts:[...Array.from(vu.values())]},WJ=()=>!Os&&!Rn?void 0:{...Os,...Rn,contexts:[...Rn?.contexts??[],...Array.from(Ka.values())]},GJ=()=>!Os&&!Rn?void 0:{...Rn,contexts:[...Rn?.contexts??[]]};function KJ(t){let e={...t};for(let r in e)e[r]===null&&delete e[r];return e}var SB=async()=>{let t=await _u();console.log("Resolved settings",JSON.stringify(t,void 0," ")),te.sendNotification("devicetree/settingsChanged",t),await Nu(),Fe().then(()=>{TB&&te.languages.diagnostics.refresh()})},YJ=async()=>{let t=ce?.getContextFiles();await Promise.all(Array.from(yr.keys()).filter(Bt).map(async e=>{t?.some(r=>le(r,Se(e)))||await te.sendDiagnostics({uri:e,version:yr.get(e)?.version,diagnostics:[{severity:ze.DiagnosticSeverity.Information,range:ze.Range.create(ze.Position.create(0,0),ze.Position.create(0,0)),message:"File not in active context",source:"devicetree"}]})}))},LS=async t=>{let e=Fy(He,t);if(e.length)e.sort((r,n)=>r===ce?-1:n===ce?1:0).forEach(r=>{Am.get(r)?.abort.abort();let n=new AbortController,i=new Promise(s=>{setTimeout(async()=>{if(n.signal.aborted){s();return}let o=performance.now(),a=ce===r,c=a?NB(r):[],l=r.getContextFiles();await r.reevaluate(t),hB(r),l.forEach(p=>Tu.get(p)?.unwatch()),a&&FS(r)?.length&&qS(r).then(p=>{let g=p.items.map(h=>({uri:h.uri,version:h.version??void 0,diagnostics:h.items}));bu(r,c.filter(h=>g.every(T=>T.uri!==h.uri))),g.forEach(h=>{te.sendDiagnostics(h)}),ku.set(r,!0)});let[u,d]=await Promise.all([Ms(r),r.getFileTree()]),f={ctxNames:r.ctxNames.map(p=>p.toString()),id:r.id,...d,settings:r.settings,active:a,type:u.type};ce===r&&te.sendNotification("devicetree/activeContextStableNotification",f),te.sendNotification("devicetree/contextStableNotification",f),s(),console.log("reevaluate",performance.now()-o)},50)});Am.set(r,{abort:n,promise:i})});else{if((await _u()).allowAdhocContexts===!1)return;await Nu(),await Xt({uri:t})}},XJ=t=>yr.keys().find(e=>le(Se(e),t)),Om=t=>{let e=XJ(t);if(e)return yr.get(e)},NB=t=>t.getContextFiles().map(e=>({uri:de(e),version:Om(e)?.version,diagnostics:[]})),ku=new WeakMap,bu=async(t,e=NB(t),r=!1)=>{if(!r&&t!==ce)return;let n=performance.now();await Promise.all(e.filter(i=>t===ce||!ce?.getContextFiles().some(s=>le(Se(i.uri),s))).map(i=>te.sendDiagnostics({uri:i.uri,version:yr.get(i.uri)?.version,diagnostics:[]}))),ku.delete(t),console.log(`(ID: ${t.id})`,"clear workspace diagnostics",`[${t.ctxNames.join(",")}]`,performance.now()-n)},qS=async t=>{await t.stable();let e=performance.now(),r=await t.getDiagnostics(),n=await Promise.all(t.getContextFiles().map(async i=>{let s=Om(i),o=[];return s&&t.settings.showFormattingErrorAsDiagnostics&&o.push(...(await wf({textDocument:s,options:t.formattingOptions},t,s?.getText(),"File Diagnostics")).map(a=>a.diagnostic())),{uri:de(i),kind:ze.DocumentDiagnosticReportKind.Full,items:[...r.get(i)??[],...o],version:s?.version??null}}));return console.log(`(ID: ${t.id})`,"workspace diagnostics",`[${t.ctxNames.join(",")}]`,performance.now()-e),{items:[...n]}},$S=async t=>{let{items:e}=await qS(t);e.map(r=>({uri:r.uri,version:r.version??void 0,diagnostics:r.items})).forEach(async r=>{te.sendDiagnostics(r)}),ku.set(t,!0)},BS=async()=>{let t=await Promise.all(He.map(Ms));console.log("======== Context List ========"),t.forEach(e=>{console.log(`(ID: ${e.ctx.id}) [${e.ctx.ctxNames.join(",")}]`,`[${e.type}]`,ce===e.ctx?" [ACTIVE]":"")}),console.log("==============================")},Ms=async t=>{let e=await xS(t),r=!e&&await BJ(t);return{ctx:t,type:e?"Ad Hoc":r?"User":"3rd Party"}},Xt=async(t,e=!1)=>{if("uri"in t){if(!Bt(t.uri))return!1;Ya=t.uri,console.log("Active File Uri",Ya)}let r=await _u();if(ce&&!e&&!r.autoChangeContext||(await Fe(),!e&&ce?.getContextFiles().find(o=>"uri"in t&&le(o,t.uri))))return!1;let n=ce,i=cn(He,t),s=n!==i;return s&&(n&&bu(n),ce=i,i?(Ms(i).then(async o=>{let a=await i.getFileTree();!i||i!==ce&&!He.includes(i)||te.sendNotification("devicetree/newActiveContext",{ctxNames:i.ctxNames.map(c=>c.toString()),id:i.id,...a,settings:i.settings,active:ce===i,type:o.type})}),FS(i)?.length&&$S(i),await BS()):te.sendNotification("devicetree/newActiveContext",void 0)),bB&&te.languages.foldingRange.refresh(),vB&&te.languages.semanticTokens.refresh(),s},Bt=t=>[".dts",".dtsi",".dtso",".overlay"].some(e=>t.endsWith(e));yr.listen(te);var FS=t=>t?.getContextFiles()?.filter(e=>Om(e));yr.onDidClose(async t=>{let e=Se(t.document.uri);if(!Bt(e))return;let r=Fy(He,e);if(r.length===0){vu.delete(e),te.sendDiagnostics({uri:t.document.uri,version:yr.get(t.document.uri)?.version,diagnostics:[]});return}await Promise.all(r.map(async n=>{!!FS(n)?.filter(s=>s!==e).length?ce?.getContextFiles().some(s=>le(s,e))?ce?.getContextFiles().some(s=>le(s,e))&&(await bu(ce),await $S(ce)):te.sendDiagnostics({uri:t.document.uri,version:yr.get(t.document.uri)?.version,diagnostics:[]}):await xS(n)?(await MS(n),vu.delete(n.settings.dtsFile)):bu(n)}))});yr.onDidOpen(async t=>{let e=Se(t.document.uri);if(!Bt(e))return;await Fe(),YJ();let r=cn(He,{uri:e});if(console.log("onDidOpen",r?.id,e),r)r!==ce?await Xt({id:r.id}):r===ce&&(!ku.get(r)||r.getContextFiles().some(n=>!le(n,e)))&&await $S(r);else{let n={ctxName:(0,Xa.basename)(e),dtsFile:e};vu.set(e,n),await LS(e)}});yr.onDidChangeContent(async t=>{let e=Se(t.document.uri);if(!Bt(e))return;let r=t.document.getText(),n=Mr();n.needsRenew(e,r)&&(console.log("Content changed"),n.renewLexer(e,r),await LS(e))});var kB=async t=>{t?.settings?.devicetree&&(Rn=rB(KJ(t.settings.devicetree)),console.log("Configuration changed",JSON.stringify(t,void 0," ")),await SB())};te.onDidChangeConfiguration(async t=>{await kB(t)});te.listen();te.languages.diagnostics.onWorkspace(async()=>{await Fe();let t=ce;return t?qS(t).finally(()=>{ku.set(t,!0)}):{items:[]}});te.onDidChangeWatchedFiles(t=>{te.console.log("We received a file change event")});te.onCompletion(async t=>{let e=Se(t.textDocument.uri);if((e.endsWith(".c")||e.endsWith(".cpp"))&&ce&&ce.bindingLoader?.type==="Zephyr")return uA(t,ce,yr.get(t.textDocument.uri));if(!Bt(e))return[];await Fe(),Xt({uri:e});let r=Tr(e);return r?[...await KD(t,r),...await wA(t,r)]:[]});te.onCompletionResolve(t=>t);var Tr=t=>{let e=_B();return cn(He,{uri:t},ce,e?.preferredContext)};te.onDocumentSymbol(async t=>{let e=Se(t.textDocument.uri);if(!Bt(e))return[];await Fe();let r=Tr(e);return r?r.getUriParser(e)?.getDocumentSymbols(e):[]});te.onWorkspaceSymbol(async()=>{await Fe();let t=ce;return t?(await t.getAllParsers()).flatMap(e=>e.getWorkspaceSymbols()):[]});te.languages.semanticTokens.on(async t=>{let e=Se(t.textDocument.uri);if(!Bt(e))return{data:[]};try{await Fe();let r=Tr(e),n=new ze.SemanticTokensBuilder,i=r?.isInContext(e);return!r||!i?{data:[]}:((await r.getAllParsers()).forEach(s=>s.buildSemanticTokens(n,e)),n.build())}catch(r){throw console.log(r),r}});te.onDocumentLinks(async t=>{await Fe();let e=Se(t.textDocument.uri);return Bt(e)?Tr(e)?.getDocumentLinks(e):e.endsWith(".yaml")&&ce?ce.bindingLoader?.getDocumentLinks?.(yr.get(t.textDocument.uri))??[]:[]});te.onPrepareRename(async t=>{let e=Se(t.textDocument.uri);if(!Bt(e))return;await Fe(),Xt({uri:e});let r=Tr(e);return gA(t,r)});te.onRenameRequest(async t=>{let e=Se(t.textDocument.uri);if(!Bt(e))return;await Fe(),Xt({uri:e});let r=Tr(e);return mA(t,r)});te.onReferences(async t=>{let e=Se(t.textDocument.uri);if(!Bt(e))return;await Fe(),Xt({uri:e});let r=Tr(e);return dA(t,r)});te.onDefinition(async t=>{let e=Se(t.textDocument.uri);if((e.endsWith(".c")||e.endsWith(".cpp"))&&ce&&ce.bindingLoader?.type==="Zephyr")return _A(t,ce,yr.get(t.textDocument.uri));if(!Bt(e))return;await Fe(),Xt({uri:e});let r=Tr(e),n=(await r?.getDocumentLinks(e,t.position))?.filter(i=>i.target).map(i=>ze.Location.create(i.target,i.range))??[];return n.length?n:vA(t,r)});te.onDeclaration(async t=>{let e=Se(t.textDocument.uri);if((e.endsWith(".c")||e.endsWith(".cpp"))&&ce&&ce.bindingLoader?.type==="Zephyr")return NA(t,ce,yr.get(t.textDocument.uri));if(!Bt(e))return;await Fe(),Xt({uri:e});let r=Tr(e);return bA(t,r)});te.onCodeAction(async t=>{let e=Se(t.textDocument.uri);if(Bt(e))return RA(t)});var RB=async t=>{let e=Se(t.textDocument.uri);if(!Bt(e))return;await Fe(),Xt({uri:e});let r=Tr(e);if(!r)return[];if((await r.getSyntaxIssues(void 0,l=>Ko(l,e,!1))).get(e)?.length)return[];let i=Mr().getDocument(e),s=i.getText(),o=await wf(t,r,s,"New Text");if(o===s)return[];let a=i.lineCount-1,c=i.getText({start:{line:a,character:0},end:{line:a+1,character:0}}).length;return[ze.TextEdit.replace(ze.Range.create(ze.Position.create(0,0),ze.Position.create(i.lineCount,c)),o)]};te.onDocumentRangeFormatting(RB);te.onDocumentFormatting(RB);te.onHover(async t=>{let e=Se(t.textDocument.uri);if((e.endsWith(".c")||e.endsWith(".cpp"))&&ce&&ce.bindingLoader?.type==="Zephyr")return XI(t,ce,yr.get(t.textDocument.uri));if(!Bt(e))return;await Fe();let r=Tr(e);return(await EA(t,r)).at(0)});te.onFoldingRanges(async t=>{let e=Se(t.textDocument.uri);if(!Bt(e))return;await Fe();let r=Tr(e),n=r?.isInContext(e);if(!r||!n)return[];let i=(await r.getAllParsers()).find(s=>s.getFiles().some(o=>o===e));return i?eB(e,i):[]});te.onTypeDefinition(async t=>{let e=Se(t.textDocument.uri);if(!Bt(e))return;await Fe(),Xt({uri:e});let r=Tr(e);return tB(t,r)});te.onSignatureHelp(async t=>{let e=Se(t.textDocument.uri);if(!Bt(e))return;await Fe(),Xt({uri:e});let r=Tr(e);return lB(t,r)});te.onRequest("devicetree/getContexts",async()=>(await Fe(),Promise.all(He.map(async t=>{let e=await Ms(t);return{ctxNames:t.ctxNames.map(r=>r.toString()),id:t.id,...await t.getFileTree(),settings:t.settings,active:ce===t,type:e.type}}))));te.onRequest("devicetree/setActive",async t=>(await Fe(),console.log("devicetree/setActive",t),await Xt(t,!0)));te.onRequest("devicetree/getActiveContext",async()=>{if(await Fe(),console.log("devicetree/getActiveContext"),!ce)return;let t=await Ms(ce);return ce?{ctxNames:ce.ctxNames.map(e=>e.toString()),id:ce.id,...await ce.getFileTree(),settings:ce.settings,active:!0,type:t.type}:void 0});te.onRequest("devicetree/setDefaultSettings",async t=>{await Fe(),Os=t,console.log("Integration Settings",t),await SB()});te.onRequest("devicetree/requestContext",async t=>{await Fe();let e=await _u(),r=await ES(t,e,await Su());console.log("devicetree/requestContext",r);let n=ki(r),i=Array.from(Ka).find(([,a])=>a.ctxName===t.ctxName);if(i){let a=i[0].split(":",1)[0];cn(He,{name:t.ctxName.toString()})?.removeCtxName(t.ctxName),console.log(`Removing integration context with ID ${a} and name ${t.ctxName}`),Ka.delete(i[0])}Ka.set(`${n}:${t.ctxName}`,t),await Nu();let s=He.find(a=>a.id===n);if(!s)throw new Error("Failed to create context");let o=await Ms(s);return{ctxNames:s.ctxNames.map(a=>a.toString()),id:n,...await s.getFileTree(),settings:s.settings,active:!0,type:o.type}});te.onRequest("devicetree/removeContext",async({id:t,name:e})=>{await Fe(),Ka.delete(`${t}:${e}`);let r=cn(He,{id:t});if(r){if(r.removeCtxName(e),r.ctxNames.length){console.log("Context will not be deleted as it is still in use by others");return}await Nu()}});te.onRequest("devicetree/compiledDtsOutput",async t=>{if(await Fe(),!t)return;let e=cn(He,{id:t});if(!e)return;let r=await e.toFullString();return Yy({textDocument:{uri:de(e.settings.dtsFile)},options:e.formattingOptions},r,"New Text")});te.onRequest("devicetree/serializedContext",async t=>(await Fe(),t?cn(He,{id:t})?.serialize():void 0));te.onRequest("devicetree/activePath",async t=>{if(await Fe(),!ce)return;let e=r=>{if(r?.item)return r.item instanceof X?{nodePath:r.item.pathString}:{nodePath:r.item.parent.pathString,propertyName:r.item.name}};return(await _t(t,ce,r=>[e(r)])).at(0)});te.onRequest("devicetree/customActions",async t=>(await Fe(),aB(t,ce)));te.onRequest("devicetree/activeFileUri",async t=>{await Fe(),Xt({uri:t})});var JJ=async(t,e,r)=>{if((await e.getSyntaxIssues(void 0,o=>Ko(o,r,!1))).get(r)?.length)throw new Error("Unable to format. Files has syntax issues.");let i=Mr().getDocument(r);return await wf(t,e,i.getText(),"New Text")};te.onRequest("devicetree/formattingText",async t=>{await Fe();let e=Se(t.textDocument.uri),r=Tr(e);if(r)return Xt({uri:e}),JJ(t,r,e);let n=Mr().getDocument(e,t.text),i=await Yy(t,n.getText(),"Both");return{text:i.text,diagnostics:i.diagnostic.map(s=>s.diagnostic())}});te.onRequest("devicetree/diagnosticIssues",async({uri:t,full:e})=>{await Fe();let r=Se(t);Xt({uri:r});let n=Tr(r);if(!n)return[];let i=e?(await n.getDiagnostics()).get(r):(await n.getSyntaxIssues(void 0,s=>Ko(s,r,!!e))).get(r);if(i?.length)return i});te.onRequest("devicetree/evalMacros",async({macros:t,ctxId:e})=>{await Fe();let r=cn(He,{id:e});return r?t.map(n=>{let i=af(n,r.macros),s=De(i);return{macro:n,evaluated:typeof s=="number"?s:i}}):[]});
306
+ ${n}`]})]},NJ=(t,e)=>B$(t,e.split("/").filter(r=>r)),B$=(t,e)=>{if(e.length===0)return{node:t,remainingInstancePath:""};let r=e[0].split("@"),n=r[0],i=r.at(1)?.split(",").map(o=>Number.parseInt(o,16)),s=t.getNode(n,i);return s?B$(s,e.slice(1)):{node:t,property:t.getProperty(e[0]),remainingInstancePath:e.slice(1).join("/")}};var SS=class t{constructor(){this.schemaIdValidators=new Map;this.ajvMap=new Map}static getNodeCompatible(e){let n=e.getProperty("compatible")?.ast.values;if(!n?.values.some(i=>!(i?.value instanceof ne)))return n?.values.map(i=>(i?.value).value)}parseMetaSchema(e,r){Js.sync("**/*.yaml",{cwd:e}).forEach(i=>{i=(0,vS.resolve)(e,i);try{let s=_S.default.parse((0,bS.readFileSync)(i,"utf-8"));r.addMetaSchema(s),this.schemaIdValidators.set(s.$id,i)}catch{}})}parseBindings(e,r){Js.sync("**/*.yaml",{cwd:e}).forEach(i=>{i=(0,vS.resolve)(e,i);try{let s=_S.default.parse((0,bS.readFileSync)(i,"utf-8"));r.addSchema(s),this.schemaIdValidators.set(s.$id,i)}catch(s){console.warn(i,s.message)}})}getNodeTypes(e,r,n){let i=`${e.join(";")}::${r.join(";")}`,s=this.ajvMap.get(i);return s||(s=new j$.default({strict:!1,strictSchema:!1,strictNumbers:!1}),s.addMetaSchema(TS),this.ajvMap.set(i,s),e.forEach(c=>this.parseMetaSchema(c,s)),r.forEach(c=>this.parseBindings(c,s))),t.getNodeCompatible(n)?.map(c=>{try{let l=Array.from(this.schemaIdValidators.keys()).find(f=>f.endsWith(`/${c}.yaml#`));if(!l)return;let u=new Pm(s,l);u.bindingsPath=this.schemaIdValidators.get(l),u.compatible=c;let d=s.getSchema(l);return u.description=(d?.schema).description,u.examples=(d?.schema).examples,u.maintainers=(d?.schema).maintainers,u}catch(l){console.warn(l.message)}}).filter(c=>c)??[]}getBindings(){return Array.from(this.schemaIdValidators.keys())}},F$,NS=()=>(F$??=new SS,F$);var gu=require("path"),K$=require("fs"),Y$=$(require("path")),X$=$(vb());var Nn=$(U());var U$=()=>{let t=new Y("nonposted-mmio",z("EMPTY"),"optional");return t.description=["Specifies that direct children of this bus should use non-posted memory accesses (i.e. a non-posted mapping mode) for MMIO ranges."],t};function H$(){let t=ur();t.noMismatchPropertiesAllowed=!0;let e=t.properties.find(n=>n.name==="compatible");e.required=()=>"required";let r=t.properties.find(n=>n.name==="ranges");return r.required=()=>"required",t.addProperty(U$()),t}var V$=t=>{switch(t){case"string":return z("STRING");case"int":return z("U32");case"boolean":return z("EMPTY");case"array":return z("PROP_ENCODED_ARRAY");case"uint8-array":return z("BYTESTRING");case"string-array":return z("STRINGLIST");case"phandle":return z("U32");case"phandles":return z("PROP_ENCODED_ARRAY");case"phandle-array":return z("PROP_ENCODED_ARRAY");case"path":return z(["STRING","U32"]);case"compound":return z("ANY");default:return z("ANY")}},z$=(t,e)=>{switch(t){case"string":return typeof e=="string"?e:void 0;case"int":return typeof e=="number"?e:void 0;case"boolean":return;case"array":return Array.isArray(e)&&e.every(r=>typeof r=="number")?e:void 0;case"uint8-array":return Array.isArray(e)&&e.every(r=>typeof r=="number")?e:void 0;case"string-array":return Array.isArray(e)&&e.every(r=>typeof r=="string")?e:void 0;case"phandle":return;case"phandles":return;case"phandle-array":return;case"path":return;case"compound":return}},wm=(t,e)=>{if(e.extends??=[],e=e.include.reduce((r,n)=>{let i=t.find(s=>(0,gu.basename)(s.filePath)===n.name);if(i){let s=n["property-blocklist"],o=n["property-allowlist"];return e.extends?.push(...r.include.map(a=>(0,gu.basename)(a.name,".yaml"))),r.include=r.include.filter(a=>a!==n),kJ(t,i,r,s,o)??r}return console.warn(`Unable to find ${n.name}`),r},e),e["child-binding"]&&(e["child-binding"].include=J$(e["child-binding"].include),e["child-binding"]=wm(t,e["child-binding"])),!e.include.length)return e},kJ=(t,e,r,n=[],i)=>{let s=wm(t,e),o=wm(t,r);if(!s||!o)return;let a=new Set;Object.keys(s?.properties??{}).forEach(f=>a.add(f)),Object.keys(o?.properties??{}).forEach(f=>a.add(f));let c={};Array.from(a).forEach(f=>{let p=n?.some(h=>h===f)||i&&!i.some(h=>h===f)?void 0:s.properties?.[f]??void 0,g=o.properties?.[f]??void 0;(p||g)&&(c={...c,[f]:{...p??g}})}),o.properties=c,o.extends??=[],o.extends.push(...s.extends??[]);let l=new Set;return Object.keys(s).filter(f=>f.endsWith("-cells")).forEach(f=>l.add(f)),Object.keys(s).filter(f=>f.endsWith("-cells")).forEach(f=>l.add(f)),Array.from(l).forEach(f=>{let p=s[f]??[],g=o[f]??[];o[f]=Array.from([...p,...g])}),o["on-bus"]??=s["on-bus"],o.bus?o.bus.push(...s.bus??[]):o.bus=s.bus,o},J$=t=>t?typeof t=="string"?[{name:t}]:t.map(e=>typeof e!="string"?e:{name:e}):[],kS=class t{constructor(){this.typeCache=new Map;this.processedFolders=new Set;this.zephyrBindingCache=new Map}static getCompatibleKeys(e,r){return!r||!r.nodeType?.bus?.length?[e]:[...r.nodeType.bus.map(n=>`${e}::${n}`),e]}static getNodeCompatible(e){let i=e.getProperty("compatible")?.ast.values?.values.filter(s=>s&&s.value instanceof ne);if(i?.length)return i.map(s=>s?.value?{name:s.value.value,ast:s.value}:void 0)}getNodeTypes(e,r){let n=t.getNodeCompatible(e)?.filter(a=>a);if(!n?.length){if(e.name==="zephyr,user"){let a=r.split(":"),l=Array.from(this.zephyrBindingCache.keys()).filter(d=>a.some(f=>d.startsWith(f))).flatMap(d=>this.zephyrBindingCache.get(d)).find(d=>d.filePath.endsWith("/base.yaml")),u=l?RS(l,e):void 0;if(u){u.warnMismatchProperties=!1;let d=u.properties.find(f=>f.name==="compatible");d&&(d.required=()=>"optional")}return{type:[u??ss(e)],issues:[]}}return{type:[ss(e)],issues:[]}}let i=n.flatMap(a=>t.getCompatibleKeys(a.name,e.parent).map(c=>this.typeCache.get(r)?.get(c)?.(e)).filter(c=>!!c)),s=this.getBusTypes(),o=n.flatMap(a=>{let c=t.getCompatibleKeys(a.name,e.parent).some(l=>this.typeCache.get(r)?.has(l));if(!c){let l=s.filter(u=>this.typeCache.get(r)?.has(`${a.name}::${u}`));if(l.length)return j(37,a.ast.firstToken,a.ast.lastToken,a.ast,{templateStrings:l})}return c?[]:[j(32,a.ast.firstToken,a.ast.lastToken,a.ast,{severity:Nn.DiagnosticSeverity.Hint,tags:[Nn.DiagnosticTag.Unnecessary],templateStrings:[a.name]})]});return{type:i.length?i:[ss(e)],issues:o}}loadTypeAndCache(e,r){e=Array.isArray(e)?e:[e];let n=e.filter(o=>this.processedFolders.has(o)).flatMap(o=>Array.from(this.zephyrBindingCache.entries()).flatMap(([a,c])=>a.startsWith(o)?[c]:[]));n.push(...e.filter(o=>!this.processedFolders.has(o)).flatMap(o=>(this.processedFolders.add(o),Js.sync("**/*.yaml",{cwd:o,ignore:"test/*"}).map(c=>{if(c=(0,gu.resolve)(o,c),this.zephyrBindingCache.has(c))return this.zephyrBindingCache.get(c);try{let l=X$.default.parse((0,K$.readFileSync)(c,"utf-8")),u=J$(l?.include),d={...l,bus:l.bus?Array.isArray(l.bus)?l.bus:[l.bus]:void 0,include:u,rawInclude:[...u],filePath:c};return this.zephyrBindingCache.set(c,d),d}catch(l){console.warn(l)}}).filter(c=>!!c))));let i=n.map(o=>wm(n,o)).filter(o=>!!o&&!o.include.length),s=this.typeCache.get(r);s||(s=new Map,s.set("simple-bus",()=>H$()),this.typeCache.set(r,s)),RJ(i,s)}getBindings(e){return Array.from(this.typeCache.get(e)?.keys()??[]).map(r=>r.split("::",1)[0])}getBusTypes(){let e=Array.from(this.zephyrBindingCache.values()).flatMap(r=>r.bus?.filter(n=>!!n)??[]).filter(r=>!!r);return Array.from(new Set(e))}getDocumentLinks(e,r){let n=this.zephyrBindingCache.get(Se(e.uri));if(!n)return[];let i=e.getText();return n.rawInclude.map(o=>{let c=new RegExp(o.name).exec(i);if(c){let l=e.positionAt(c.index),u=e.positionAt(c.index+c[0].length),d=Array.from(this.zephyrBindingCache.keys()).find(f=>f.endsWith(`${Y$.default.sep}${o.name}`)&&r.some(p=>f.startsWith(p)));return d?{range:Nn.Range.create(l,u),target:de(d)}:void 0}}).filter(o=>!!o)}},W$,Ga=()=>(W$??=new kS,W$),RJ=(t,e)=>t.forEach(r=>{r.compatible&&e.set(r["on-bus"]?`${r.compatible}::${r["on-bus"]}`:r.compatible,n=>RS(r,n))}),RS=(t,e)=>{let r=ss(e);r.compatible=t.compatible,r.description=t.description,r.bindingsPath=t.filePath,r.bus=typeof t.bus=="string"?[t.bus]:Array.from(new Set(t.bus)),r.onBus=t["on-bus"],t.extends?.forEach(s=>r.extends.add(s)),r.warnMismatchProperties=!0;let i=Object.keys(t).filter(s=>s.endsWith("-cells")).map(s=>({specifier:s.replace(/-cells$/,""),values:t[s]}));if(r.cellsValues=i,Object.keys(t.properties??{}).forEach(s=>{let o=t.properties[s];PJ(r,s,o)}),t["child-binding"]){let s=t["child-binding"];r.childNodeType=o=>RS(s,o)}return r},PJ=(t,e,r)=>{let n=t.properties.find(i=>i.getNameMatch(e));if(n&&typeof n.name=="string"){n.required=()=>r.required?"required":"optional",n.values=()=>r.enum??[],n.constValue=z$(r.type,r.const),n.bindingType=r.type;let i=n.additionalTypeCheck;n.additionalTypeCheck=(s,o)=>[...G$(r,e,n)(s,o),...i?.(s,o)??[]]}else{let i=r.type==="compound"?n?.type:V$(r.type);i??=V$(r.type);let s=new Y(e,i,r.required?"required":"optional",void 0,r.enum);s.additionalTypeCheck=(o,a)=>{let c=[...n?.additionalTypeCheck?.(o,a)??[],...G$(r,e,s)(o,a)];return s.signatureArgs??=n?.signatureArgs,s.signatureArgsCyclic??=!!n?.signatureArgsCyclic,c},s.description=r.description?[r.description]:n?.description,s.bindingType=r.type,s.constValue=z$(r.type,r.const),t.addProperty(s)}},G$=(t,e,r)=>{let n=t;return(i,s)=>{let o=i.parent.root,a=[];if(n.const){let l=i.ast.quickValues;if(l?.length==1){let u=Array.isArray(n.const)?n.const:[n.const];if(!(Array.isArray(l[0])&&u.length===l[0].length&&l[0].every((f,p)=>typeof f=="number"&&Number.isNaN(f)||u[p]===f))){let f=i.ast.values??i.ast;a.push(j(24,f.firstToken,f.lastToken,f,{templateStrings:[`Binding expects values to be "${n.type}" with value: ${n.const}`]}))}}}if(n.deprecated&&a.push(j(14,i.ast.firstToken,i.ast.lastToken,i.ast,{severity:Nn.DiagnosticSeverity.Warning,tags:[Nn.DiagnosticTag.Deprecated],templateStrings:[i.name]})),(n.type==="phandle"||n.type==="phandles"||n.type==="path")&&xe(i.ast.values)?.forEach(u=>{dn(u,o)||a.push(j(22,u.firstToken,u.lastToken,u))}),n.type==="path"&&i.ast.values?.values.at(0)?.value instanceof ne){let l=i.ast.values?.values.at(0)?.value,u=[];l.value.split("/").every(d=>{let f=o.getNode(d);return f?u.push(d):a.push(j(23,l.firstToken,l.lastToken,l,{templateStrings:[d,`/${u.join("/")}`]})),!f})}let c=i.name.match(/^(.*)-(\d+)$/);if(n.type==="phandles"&&c){let l="";e.endsWith("-gpios")?l="gpio":l=n["specifier-space"]??c[1];let u=Number.parseInt(c[2],10),d=i.parent.getProperty(`${l}-names`);d&&(d.ast.quickValues?.at(u)||a.push(j(33,i.ast.firstToken,i.ast.lastToken,i.ast,{severity:Nn.DiagnosticSeverity.Warning,linkedTo:[d.ast],templateStrings:[i.name,u.toString()]})))}if(n.type==="phandle-array"){let l=xe(i.ast.values),u=0,d=[],f=0;for(;l&&u<l.length;){let p=l.at(u),g=dn(p,o);if(!g){let M=p??i.ast;a.push(j(22,M.firstToken,M.lastToken,M));break}let h="";e.endsWith("-gpios")?h="gpio":h=n["specifier-space"]??e.slice(0,-1);let T=g.getProperty(`#${h}-cells`);if(!T){a.push(j(16,i.ast.firstToken,i.ast.lastToken,i.ast,{linkedTo:[...g.nodeNameOrLabelRef],templateStrings:[i.name,`#${h}-cells`,`/${g.path.slice(1).join("/")}`]}));break}let S=T?$e(T,0,0,s)??0:0,_=g.nodeType?.cellsValues?.find(M=>M.specifier===h)?.values;if(d.push([`${f}_phandle`,..._?.map(M=>`${f}_${M}`)??[],...Array.from({length:S-(_?.length??0)},(M,F)=>`${f}_cell${S-(_?.length??0)?F:""}`)]),1+S>l.length-u){let M=p??i.ast;a.push(j(19,M.firstToken,M.lastToken,M,{templateStrings:[i.name,`<${d.at(-1).join(" ")}>`]}));break}u+=1+S;let v=l.slice(u-S,u),R={mappingValuesAst:v,specifierSpace:h,target:g};i.nexusMapsTo.push(R);let D=g.getProperty(`${h}-map`);if(D){let M=g.getNexusMapEntryMatch(h,s,v);M?.match?R.mapItem=M.match:a.push(j(31,M.entry.firstToken,M.entry.lastToken,M.entry,{linkedTo:[D.ast]}))}v.every(M=>M instanceof Ee)&&g.spesifierNexusMapping.push({expressions:v,node:i.parent,property:i});let B=i.parent.getProperty(`${h}-names`);p&&B&&(B.ast.quickValues?.at(f)||a.push(j(33,p.firstToken,l[u-1]?.lastToken,i.ast,{severity:Nn.DiagnosticSeverity.Warning,linkedTo:[B.ast],templateStrings:[i.name,f.toString()]}))),f++}d.push([`${f}_phandle`,`${f}_cell...`]),r.signatureArgs=d.map(p=>p.map(g=>Nn.ParameterInformation.create(g)))}return a}};var Q$=(t,e)=>{let r=t.zephyrBindings.join(":");return e==="Zephyr"&&Ga().loadTypeAndCache(t.zephyrBindings,r),{files:t,type:e,getNodeTypes:n=>{switch(e){case"Zephyr":return Ga().getNodeTypes(n,r);case"DevicetreeOrg":return{type:NS().getNodeTypes(t.deviceOrgBindingsMetaSchema,t.deviceOrgTreeBindings,n),issues:[]}}},getBindings:()=>{switch(e){case"Zephyr":return Ga().getBindings(r);case"DevicetreeOrg":return NS().getBindings()}},getBusTypes:()=>{switch(e){case"Zephyr":return Ga().getBusTypes();case"DevicetreeOrg":return[]}},getDocumentLinks(n){if(!n)return[];switch(e){case"Zephyr":return Ga().getDocumentLinks(n,t.zephyrBindings);case"DevicetreeOrg":return[]}}}};var Em=$(U());var wJ=t=>!t.lastToken.prevToken||!t.lastToken.prevToken.prevToken?[]:[{startLine:t.firstToken.pos.line,startCharacter:t.firstToken.pos.col,endLine:t.lastToken.prevToken.prevToken.pos.line,endCharacter:t.lastToken.prevToken.prevToken.pos.col,kind:Em.FoldingRangeKind.Comment}],PS=t=>!t.openScope||!t.closeScope?.prevToken?t.nodes.flatMap(PS):[{startLine:t.openScope.pos.line,startCharacter:t.openScope.pos.col,endLine:t.closeScope.prevToken.pos.line,endCharacter:t.closeScope.prevToken.pos.col,kind:Em.FoldingRangeKind.Region},...t.nodes.flatMap(PS)],Z$=t=>{let e=[];return[...t instanceof ns?t.ifBlocks.map(r=>({start:(r.expression??r.keyword).lastToken,end:r.content?.lastToken??(r.expression??r.keyword).lastToken})):[{start:(t.ifDef.identifier??t.ifDef.keyword).lastToken,end:t.ifDef.content?.lastToken}],t.elseOption?{start:t.elseOption.keyword.lastToken,end:t.elseOption.content?.lastToken}:null].forEach(r=>{!r||!r.end||e.push({startLine:r.start.pos.line,startCharacter:r.start.pos.col,endLine:r.end.pos.line,endCharacter:r.end.pos.colEnd,kind:Em.FoldingRangeKind.Region})}),e},EJ=t=>t instanceof lt?PS(t):t instanceof rs||t instanceof ns?Z$(t):t instanceof ln?wJ(t):[];function eB(t,e){return e.allAstItems.flatMap(r=>[r,...r.allDescendants]).filter(r=>le(r.uri,t)).flatMap(EJ)}var To=$(U());function DJ(t){if(!t||!(t.ast instanceof Me)&&!(t.ast instanceof Qt))return[];let e=r=>r.nodeType?.bindingsPath?[To.Location.create(de(r.nodeType.bindingsPath),To.Range.create(To.Position.create(0,0),To.Position.create(0,0)))]:[];return t.item instanceof X&&!Ut(t.ast)?e(t.item):t.ast instanceof Qt&&t.ast.parentNode instanceof ie&&t.ast.parentNode.linksTo?e(t.ast.parentNode.linksTo):t.ast instanceof Me&&t.ast.linksTo?e(t.ast.linksTo):[]}async function tB(t,e){return _t(t,e,r=>[...DJ(r)])}var Cm=require("fs");var CJ=(t,e)=>{xr().reset(t),xr().requestTokens(t,!0),e(t)},Dm=class{constructor(e,r,n){this.file=e;this.cb=r;this.hasDocumentOpen=n}#e=0;watch(){if(this.count++,this.count===1){console.log("create watch for",this.file);let e=this.file,r=this.cb;this.onChange=()=>{if(this.hasDocumentOpen(e)){console.log("skipping on change document is open",e);return}console.log("onChange",e),CJ(e,r)},(0,Cm.watchFile)(e,this.onChange)}}unwatch(){this.count===1&&(console.log("dispose watch for",this.file),(0,Cm.unwatchFile)(this.file,this.onChange),this.onChange=void 0),this.count--}get count(){return this.#e}set count(e){this.#e=e,e<0&&(this.#e=0,console.warn("unwatching an un watched file",this.file))}};var Yt=$(require("path")),wS=require("fs");var Gn=t=>{if(t)return Array.isArray(t)?t:[t]},AJ=t=>({...t,deviceOrgBindingsMetaSchema:Gn(t.deviceOrgBindingsMetaSchema),deviceOrgTreeBindings:Gn(t.deviceOrgTreeBindings),includePaths:Gn(t.includePaths),lockRenameEdits:Gn(t.lockRenameEdits),zephyrBindings:Gn(t.zephyrBindings),overlays:Gn(t.overlays)}),rB=t=>({...t,defaultDeviceOrgBindingsMetaSchema:Gn(t.defaultDeviceOrgBindingsMetaSchema),defaultDeviceOrgTreeBindings:Gn(t.defaultDeviceOrgTreeBindings),defaultIncludePaths:Gn(t.defaultIncludePaths),defaultLockRenameEdits:Gn(t.defaultLockRenameEdits),defaultZephyrBindings:Gn(t.defaultZephyrBindings),contexts:t.contexts?.map(AJ)}),kn=async(t,e=[],r)=>{let n=r?e.map(s=>Se(s.uri)).find(s=>kw(s,r)):void 0;return[...e.at(0)?[{replace:"${workspaceFolder}",uri:n??Se(e[0].uri)}]:[],...e.map(s=>({replace:`\${workspaceFolder:${s.name}}`,uri:Se(s.uri)}))].forEach(s=>t=t.replaceAll(s.replace,s.uri)),t},Is={defaultBindingType:"Zephyr",defaultZephyrBindings:[],defaultIncludePaths:[],defaultDeviceOrgBindingsMetaSchema:[],defaultDeviceOrgTreeBindings:[],contexts:[],defaultLockRenameEdits:[],allowAdhocContexts:!0,autoChangeContext:!0,defaultShowFormattingErrorAsDiagnostics:!0},ES=async(t,e,r)=>{let n=await kn(t.cwd??"${workspaceFolder}",r,t.dtsFile)??e.cwd,i=await Promise.all((t.includePaths??e.defaultIncludePaths).map(p=>kn(p,r,t.dtsFile))),s=await Promise.all((t.zephyrBindings??e.defaultZephyrBindings).map(p=>kn(p,r,t.dtsFile))),o=t.bindingType??e.defaultBindingType,a=await Promise.all((t.deviceOrgTreeBindings??e.defaultDeviceOrgTreeBindings).map(p=>kn(p,r,t.dtsFile))),c=await Promise.all((t.deviceOrgBindingsMetaSchema??e.defaultDeviceOrgBindingsMetaSchema).map(p=>kn(p,r,t.dtsFile))),l=await Promise.all((t.lockRenameEdits??e.defaultLockRenameEdits).map(p=>kn(p,r,t.dtsFile)));n&&o==="Zephyr"&&(!s||s.length===0)&&(s=["./zephyr/dts/bindings"]);let u=t.dtsFile,d=t.overlays??[],f=t.compileCommands;return n&&(s=s.map(p=>(0,Yt.resolve)(n,p)).filter(p=>(0,wS.existsSync)(p)),a=a?.map(p=>(0,Yt.resolve)(n,p)),c=c.map(p=>(0,Yt.resolve)(n,p)),i=i.map(p=>(0,Yt.resolve)(n,p)),u=(0,Yt.resolve)(n,u),d=d.map(p=>(0,Yt.resolve)(n,p)),l=l.map(p=>(0,Yt.resolve)(n,p)),f=f?(0,Yt.resolve)(n,f):void 0),{ctxName:t.ctxName??(0,Yt.basename)(u),cwd:n?rt(n):void 0,includePaths:i.map(rt),zephyrBindings:s.map(rt),bindingType:o,deviceOrgTreeBindings:a.map(rt),deviceOrgBindingsMetaSchema:c.map(rt),dtsFile:rt(u),overlays:d.map(rt),lockRenameEdits:l.map(rt),compileCommands:f?rt(f):void 0,showFormattingErrorAsDiagnostics:t.showFormattingErrorAsDiagnostics??e.defaultShowFormattingErrorAsDiagnostics}},yu=async(t,e)=>{let r=t.cwd?await kn(t.cwd,e):void 0,n=t.defaultBindingType,i=t.defaultDeviceOrgBindingsMetaSchema=await Promise.all((t.defaultDeviceOrgBindingsMetaSchema??[]).map(d=>kn(d,e))),s=t.defaultDeviceOrgTreeBindings=await Promise.all((t.defaultDeviceOrgTreeBindings??[]).map(d=>kn(d,e))),o=t.defaultIncludePaths=await Promise.all((t.defaultIncludePaths??[]).map(d=>kn(d,e))),a=t.defaultZephyrBindings=await Promise.all((t.defaultZephyrBindings??[]).map(d=>kn(d,e))),c=t.defaultLockRenameEdits=await Promise.all((t.defaultLockRenameEdits??[]).map(d=>kn(d,e)));r&&(o=t.defaultIncludePaths=(t.defaultIncludePaths??[]).map(d=>(0,Yt.resolve)(r,d)),n==="Zephyr"&&!t.defaultZephyrBindings&&(a=["./zephyr/dts/bindings"]),a=a.map(d=>(0,Yt.resolve)(r,d)),i=i.map(d=>(0,Yt.resolve)(r,d)),s=(t.defaultDeviceOrgTreeBindings??[]).map(d=>(0,Yt.resolve)(r,d)),c=c.map(d=>(0,Yt.resolve)(r,d)));let l={cwd:r,defaultDeviceOrgBindingsMetaSchema:i,defaultDeviceOrgTreeBindings:s,defaultIncludePaths:o,defaultZephyrBindings:a,defaultLockRenameEdits:c,defaultBindingType:n,autoChangeContext:t.autoChangeContext??Is.autoChangeContext,allowAdhocContexts:t.allowAdhocContexts??Is.allowAdhocContexts,defaultShowFormattingErrorAsDiagnostics:t.defaultShowFormattingErrorAsDiagnostics??Is.defaultShowFormattingErrorAsDiagnostics},u=(await Promise.all(t.contexts?.map(d=>ES(d,l,e))??[])).filter(d=>[d.dtsFile,...d.overlays].every(f=>(0,wS.existsSync)(f)&&Yt.default.isAbsolute(f)));return{...l,contexts:u}};var nB=t=>`DT_PROP(${DS(t.parent)}, ${t.name.replaceAll("-","_")}))`,iB=t=>t.parent.labels.map(e=>`DT_PROP(DT_NODELABEL(${e.label.toString()}), ${t.name.replaceAll("-","_")})`);var DS=t=>`DT_PATH(${t.path.slice(1).map(e=>e.replace("@","_").replaceAll("-","_")).join(",")})`,sB=t=>t.labels.map(e=>`DT_NODELABEL(${e.label.toString()})`),oB=t=>{let e=[];return ii.getNodeFromPath(["aliases"],t.root)?.properties.filter(i=>{if(i.ast.quickValues?.at(0)===t.pathString)return!0;let s=i.ast.values?.values.at(0)?.value;if(s instanceof ie&&s.linksTo===t||s instanceof it&&s.path?.pathParts.at(-1)?.linksTo===t)return!0})?.forEach(i=>e.push(`DT_ALIAS(${i.name.replaceAll("-","_")})`)),e};function IJ(t,e){if(!t||!(t.item instanceof Ye)||!(t.ast instanceof Ze))return[];let r=[];return e.settings.bindingType==="Zephyr"&&(r.push({type:"dt_zephyr_macro_prop_node_path",data:nB(t.item)}),iB(t.item).forEach(n=>{r.push({type:"dt_zephyr_macro_prop_node_label",data:n})})),r}function OJ(t,e){if(!t||t.item===null)return[];let r;if(t.item instanceof X?r=t.item:t.ast.parentNode instanceof ie&&t.ast.parentNode.linksTo?r=t.ast.parentNode.linksTo:t.ast instanceof Me&&t.ast.linksTo&&(r=t.ast.linksTo),!r)return[];let n=[{type:"path",data:r.pathString}];return e.settings.bindingType==="Zephyr"&&(sB(r).forEach(i=>{n.push({type:"dt_zephyr_macro_node_label",data:i})}),n.push({type:"dt_zephyr_macro_node_path",data:DS(r)}),oB(r).forEach(i=>{n.push({type:"dt_zephyr_macro_prop_node_alias",data:i})})),n}async function aB(t,e){return e?_t(t,e,r=>[...OJ(r,e),...IJ(r,e)]):[]}var cB=$(U());function MJ(t){return!t||!(t.item instanceof Ye)?void 0:t.item.parent.nodeType?.getSignatureHelp?.(t.item,t.ast,t.beforeAst,t.afterAst)}async function xJ(t){let e=bc(t?.ast);if(!e||!e.params.length||!t?.ast||t.ast===e.functionName)return;let n=(await t.runtime.context.getAllParsers()).at(-1).cPreprocessorParser.macros.get(e.functionName.name)?.macro.identifier;if(!n||!(n instanceof ni))return;let i=n.params.map(o=>({label:o instanceof St?o.name:"..."})),s=e.params.find(o=>o&&(t.ast===o||o.isAncestorOf(t.ast)));return s??=t.afterAst?e.params.find(o=>o&&(t.afterAst===o||o.isAncestorOf(t.afterAst))):void 0,s??=t.beforeAst?e.params.find(o=>o&&(t.beforeAst===o||o.isAncestorOf(t.beforeAst))):void 0,{signatures:[cB.SignatureInformation.create(`${e.functionName.name}(${i.map(o=>o.label).join(", ")})`,void 0,...i.flat())],activeSignature:0,activeParameter:s?e.params.indexOf(s):void 0}}async function lB(t,e){if(e)return(await _t(t,e,async r=>[await xJ(r)||MJ(r)])).at(0)}var uB=require("timers"),dB=require("events");var CS=class extends dB.EventEmitter{constructor(e=3e3,r=1e3){super(),this.thresholdBytes=e*1024*1024,this.interval=(0,uB.setInterval)(()=>{let n=process.memoryUsage().heapUsed;n>this.thresholdBytes&&this.emit("thresholdExceeded",{usedMb:(n/1024/1024).toFixed(2),thresholdMb:e})},r)}stop(){clearInterval(this.interval)}},LJ=new CS(3e3),fB=()=>{LJ.on("thresholdExceeded",({usedMb:t,thresholdMb:e})=>{console.warn(`[HeapMonitor] Heap usage exceeded ${e}MB: ${t}MB used`),Ww(),zw()})};var He=[],ce,Ya,Am=new WeakMap,Tu=new Map;fB();var hB=t=>{t.getContextFiles().forEach(e=>{Tu.has(e)||Tu.set(e,new Dm(e,LS,r=>!!Om(r))),Tu.get(e)?.watch()})},MS=async t=>{let e=He.indexOf(t);if(e===-1)return;bu(t,void 0,!0),Am.delete(t),console.log(`(ID: ${t.id}) cleaning Context for [${t.ctxNames.join(",")}]`);let r=await Ms(t);if(te.sendNotification("devicetree/contextDeleted",{ctxNames:t.ctxNames.map(n=>n.toString()),id:t.id,...await t.getFileTree(),settings:t.settings,active:ce===t,type:r.type}),He.splice(e,1),await BS(),t===ce&&(ce=void 0,He.length)){let n=Ya?cn(He,{uri:Ya}):void 0;n??=He[0],console.log("Active context was deleted. Forcing active to",n.id),await Xt({id:n.id},!0)}t.getContextFiles().map(n=>Tu.get(n)?.unwatch())},qJ=t=>{let e=Am.get(t);if(!e?.abort.signal.aborted)return Promise.all([e?.promise,t.getRuntime()])},Fe=async()=>{await Promise.all(He.map(qJ))},xS=async t=>(await mB()).indexOf(t)!==-1,mB=async()=>{let t=await gB();return He.filter(e=>!t.some(r=>r===e))},gB=async()=>{let t=await OS();return He.filter(e=>t.contexts.find(r=>ki(r)===e.id))},$J=async()=>{let t=await VJ();return He.filter(e=>t.contexts.find(r=>ki(r)===e.id))},BJ=async t=>(await $J()).indexOf(t)!==-1,FJ=async(t,e)=>{if(t===e)return!0;let r=(await t.getAllParsers()).flatMap(i=>i.cPreprocessorParser.dtsIncludes).filter(i=>i.resolvedPath),n=(await e.getAllParsers()).flatMap(i=>i.cPreprocessorParser.dtsIncludes).filter(i=>i.resolvedPath);return n.some(i=>le(i.resolvedPath,t.parser.uri))&&r.length?r.every(i=>n.some(s=>s.resolvedPath===i.resolvedPath&&s.firstToken.pos.col===i.firstToken.pos.col&&s.firstToken.pos.len===i.firstToken.pos.len&&s.firstToken.pos.line===i.firstToken.pos.line&&s.lastToken.pos.col===i.lastToken.pos.col&&s.lastToken.pos.len===i.lastToken.pos.len&&s.lastToken.pos.line===i.lastToken.pos.line)):e.getContextFiles().some(i=>le(i,t.parser.uri))},jJ=async t=>{if(!await xS(t))return;let e=await mB(),r=await gB(),n=await df(e);if(He.indexOf(t)===-1)return;let i=await Promise.all(n.flatMap(a=>[...r,...e.filter(c=>c!==a.context)].map(async c=>({context:a.context,same:await FJ(a.context,c)})))),s=t.getContextFiles(),o=n.filter(a=>i.some(c=>c.context===a.context&&c.same)||a.context!==t&&le(a.context.parser.uri,t.parser.uri)&&s.some(c=>c&&a.files.indexOf(c)!==-1)).map(a=>a.context);o.length&&await Promise.all(o.map(MS))},te=(0,ze.createConnection)(ze.ProposedFeatures.all),yr=new ze.TextDocuments(Qn),yB=!1,Im=!1,TB=!1,vB=!1,bB=!1,AS;te.onInitialize(async t=>{AS=t.workspaceFolders??[],te.console.log(`[Server(${process.pid}) ${AS?.at(0)?.uri} Version 0.6.6 ] Started and initialize received`);let e=t.capabilities;yB=!!(e.workspace&&e.workspace.configuration),Im=!!(e.workspace&&e.workspace.workspaceFolders),TB=!!e.workspace?.diagnostics?.refreshSupport,vB=!!e.workspace?.semanticTokens?.refreshSupport,bB=!!e.workspace?.foldingRange?.refreshSupport;let r={capabilities:{typeDefinitionProvider:!0,workspaceSymbolProvider:!0,textDocumentSync:ze.TextDocumentSyncKind.Incremental,renameProvider:{prepareProvider:!0},completionProvider:{resolveProvider:!0,triggerCharacters:["&","="," ",'"',"(",","]},codeActionProvider:{codeActionKinds:[ze.CodeActionKind.QuickFix,ze.CodeActionKind.SourceFixAll]},documentSymbolProvider:!0,semanticTokensProvider:{legend:{tokenTypes:sf,tokenModifiers:of},full:!0},documentLinkProvider:{resolveProvider:!1},foldingRangeProvider:!0,definitionProvider:!0,declarationProvider:!0,referencesProvider:!0,documentFormattingProvider:!0,documentRangeFormattingProvider:!0,hoverProvider:!0,signatureHelpProvider:{triggerCharacters:["<","("],retriggerCharacters:[" ",","]}}};return Im&&(r.capabilities.workspace={workspaceFolders:{changeNotifications:!0,supported:!0}}),await kB(t.initializationOptions),r});var IS,UJ={tabSize:8,insertSpaces:!1,trimTrailingWhitespace:!0,insertFinalNewline:!0};te.onInitialized(async()=>{if(yB&&(te.client.register(ze.DidChangeConfigurationNotification.type,{}),!IS)){let t=await te.workspace.getConfiguration("editor").catch(()=>{}),e=await te.workspace.getConfiguration("[devicetree]").catch(()=>{}),r={tabSize:e?.["editor.tabSize"],insertSpaces:e?.["editor.insertSpaces"],trimFinalNewlines:e?.["editor.trimFinalNewlines"],trimTrailingWhitespace:e?.["editor.trimTrailingWhitespace"],insertFinalNewline:e?.["editor.insertFinalNewline"]};(t||r)&&(IS={...t,...r})}Im&&te.workspace.onDidChangeWorkspaceFolders(async t=>{te.console.log("Workspace folder change event received"),await Nu()})});te.onRequest("workspace/workspaceFolders",async()=>AS??null);var HJ=async()=>{let t=_B();return t={...Is,...t},yu(t,await Su())},OS=async()=>{let t=WJ();return t={...Is,...t},yu(t,await Su())},VJ=async()=>{let t=GJ();return t={...Is,...t},yu(t,await Su())},_u=async()=>{let t=zJ();return t={...Is,...t},yu(t,await Su())},Su=async()=>Im?await te.workspace.getWorkspaceFolders()??[]:[],pB=async t=>{let e=cn(He,{id:ki(t)});if(e)return e.ctxNames.includes(t.ctxName)||console.log(`(ID: ${e.id}) Adding name ${t.ctxName} for [${e.ctxNames.join(",")}]`),e.addCtxName(t.ctxName),e;let r=ki(t);console.log(`(ID: ${r}) New context [${t.ctxName}]`),console.log(`(ID: ${r}) Settings: ${JSON.stringify(t,void 0," ")}`);let n=(0,Xa.join)((0,Xa.dirname)(t.dtsFile),"dts","bindings"),i=new Ff(t,IS??UJ,t.bindingType?Q$({zephyrBindings:t.zephyrBindings?[n,...t.zephyrBindings]:[n],deviceOrgBindingsMetaSchema:t.deviceOrgBindingsMetaSchema??[],deviceOrgTreeBindings:t.deviceOrgTreeBindings??[]},t.bindingType):void 0);He.push(i),await i.stable(),hB(i);let s=await Ms(i);return te.sendNotification("devicetree/contextCreated",{ctxNames:i.ctxNames.map(o=>o.toString()),id:i.id,...await i.getFileTree(),settings:i.settings,active:i===ce,type:s.type}),await jJ(i),await BS(),i},Nu=async()=>{let t=await OS(),e=await _u();e.allowAdhocContexts||(e=await OS());let r=e.contexts.map(ki),n=He.filter(i=>!r.includes(i.id));await Promise.all(n.map(MS)),await t.contexts?.reduce((i,s)=>i.then(async()=>{await pB(s)}),Promise.resolve()),e.allowAdhocContexts&&await(await HJ()).contexts?.reduce((s,o)=>s.then(async()=>{cn(He,{uri:o.dtsFile})||await pB(o)}),Promise.resolve()),Ya?await Xt({uri:Ya}):!ce&&He.length&&(console.log(`No active context using first context (ID: ${He[0].id}) [${He[0].ctxNames.join(",")}]`),await Xt({id:He[0].id}))},Rn,Os,vu=new Map,Ka=new Map,zJ=()=>!Os&&!Rn?void 0:{...Os,...Rn,contexts:[...Rn?.contexts??[],...Array.from(Ka.values()),...Array.from(vu.values())]},_B=()=>!Os&&!Rn?void 0:{...Os,...Rn,contexts:[...Array.from(vu.values())]},WJ=()=>!Os&&!Rn?void 0:{...Os,...Rn,contexts:[...Rn?.contexts??[],...Array.from(Ka.values())]},GJ=()=>!Os&&!Rn?void 0:{...Rn,contexts:[...Rn?.contexts??[]]};function KJ(t){let e={...t};for(let r in e)e[r]===null&&delete e[r];return e}var SB=async()=>{let t=await _u();console.log("Resolved settings",JSON.stringify(t,void 0," ")),te.sendNotification("devicetree/settingsChanged",t),await Nu(),Fe().then(()=>{TB&&te.languages.diagnostics.refresh()})},YJ=async()=>{let t=ce?.getContextFiles();await Promise.all(Array.from(yr.keys()).filter(Bt).map(async e=>{t?.some(r=>le(r,Se(e)))||await te.sendDiagnostics({uri:e,version:yr.get(e)?.version,diagnostics:[{severity:ze.DiagnosticSeverity.Information,range:ze.Range.create(ze.Position.create(0,0),ze.Position.create(0,0)),message:"File not in active context",source:"devicetree"}]})}))},LS=async t=>{let e=Fy(He,t);if(e.length)e.sort((r,n)=>r===ce?-1:n===ce?1:0).forEach(r=>{Am.get(r)?.abort.abort();let n=new AbortController,i=new Promise(s=>{setTimeout(async()=>{if(r.setStaleUri(t),n.signal.aborted){s();return}let o=performance.now(),a=ce===r,c=a?NB(r):[],l=r.getContextFiles();await r.reevaluate(t),hB(r),l.forEach(p=>Tu.get(p)?.unwatch()),a&&FS(r)?.length&&qS(r).then(p=>{let g=p.items.map(h=>({uri:h.uri,version:h.version??void 0,diagnostics:h.items}));bu(r,c.filter(h=>g.every(T=>T.uri!==h.uri))),g.forEach(h=>{te.sendDiagnostics(h)}),ku.set(r,!0)});let[u,d]=await Promise.all([Ms(r),r.getFileTree()]),f={ctxNames:r.ctxNames.map(p=>p.toString()),id:r.id,...d,settings:r.settings,active:a,type:u.type};ce===r&&te.sendNotification("devicetree/activeContextStableNotification",f),te.sendNotification("devicetree/contextStableNotification",f),s(),console.log("reevaluate",performance.now()-o)},50)});Am.set(r,{abort:n,promise:i})});else{if((await _u()).allowAdhocContexts===!1)return;await Nu(),await Xt({uri:t})}},XJ=t=>yr.keys().find(e=>le(Se(e),t)),Om=t=>{let e=XJ(t);if(e)return yr.get(e)},NB=t=>t.getContextFiles().map(e=>({uri:de(e),version:Om(e)?.version,diagnostics:[]})),ku=new WeakMap,bu=async(t,e=NB(t),r=!1)=>{if(!r&&t!==ce)return;let n=performance.now();await Promise.all(e.filter(i=>t===ce||!ce?.getContextFiles().some(s=>le(Se(i.uri),s))).map(i=>te.sendDiagnostics({uri:i.uri,version:yr.get(i.uri)?.version,diagnostics:[]}))),ku.delete(t),console.log(`(ID: ${t.id})`,"clear workspace diagnostics",`[${t.ctxNames.join(",")}]`,performance.now()-n)},qS=async t=>{await t.stable();let e=performance.now(),r=await t.getDiagnostics(),n=await Promise.all(t.getContextFiles().map(async i=>{let s=Om(i),o=[];return s&&t.settings.showFormattingErrorAsDiagnostics&&o.push(...(await wf({textDocument:s,options:t.formattingOptions},t,s?.getText(),"File Diagnostics")).map(a=>a.diagnostic())),{uri:de(i),kind:ze.DocumentDiagnosticReportKind.Full,items:[...r.get(i)??[],...o],version:s?.version??null}}));return console.log(`(ID: ${t.id})`,"workspace diagnostics",`[${t.ctxNames.join(",")}]`,performance.now()-e),{items:[...n]}},$S=async t=>{let{items:e}=await qS(t);e.map(r=>({uri:r.uri,version:r.version??void 0,diagnostics:r.items})).forEach(async r=>{te.sendDiagnostics(r)}),ku.set(t,!0)},BS=async()=>{let t=await Promise.all(He.map(Ms));console.log("======== Context List ========"),t.forEach(e=>{console.log(`(ID: ${e.ctx.id}) [${e.ctx.ctxNames.join(",")}]`,`[${e.type}]`,ce===e.ctx?" [ACTIVE]":"")}),console.log("==============================")},Ms=async t=>{let e=await xS(t),r=!e&&await BJ(t);return{ctx:t,type:e?"Ad Hoc":r?"User":"3rd Party"}},Xt=async(t,e=!1)=>{if("uri"in t){if(!Bt(t.uri))return!1;Ya=t.uri,console.log("Active File Uri",Ya)}let r=await _u();if(ce&&!e&&!r.autoChangeContext||(await Fe(),!e&&ce?.getContextFiles().find(o=>"uri"in t&&le(o,t.uri))))return!1;let n=ce,i=cn(He,t),s=n!==i;return s&&(n&&bu(n),ce=i,i?(Ms(i).then(async o=>{let a=await i.getFileTree();!i||i!==ce&&!He.includes(i)||te.sendNotification("devicetree/newActiveContext",{ctxNames:i.ctxNames.map(c=>c.toString()),id:i.id,...a,settings:i.settings,active:ce===i,type:o.type})}),FS(i)?.length&&$S(i),await BS()):te.sendNotification("devicetree/newActiveContext",void 0)),bB&&te.languages.foldingRange.refresh(),vB&&te.languages.semanticTokens.refresh(),s},Bt=t=>[".dts",".dtsi",".dtso",".overlay"].some(e=>t.endsWith(e));yr.listen(te);var FS=t=>t?.getContextFiles()?.filter(e=>Om(e));yr.onDidClose(async t=>{let e=Se(t.document.uri);if(!Bt(e))return;let r=Fy(He,e);if(r.length===0){vu.delete(e),te.sendDiagnostics({uri:t.document.uri,version:yr.get(t.document.uri)?.version,diagnostics:[]});return}await Promise.all(r.map(async n=>{!!FS(n)?.filter(s=>s!==e).length?ce?.getContextFiles().some(s=>le(s,e))?ce?.getContextFiles().some(s=>le(s,e))&&(await bu(ce),await $S(ce)):te.sendDiagnostics({uri:t.document.uri,version:yr.get(t.document.uri)?.version,diagnostics:[]}):await xS(n)?(await MS(n),vu.delete(n.settings.dtsFile)):bu(n)}))});yr.onDidOpen(async t=>{let e=Se(t.document.uri);if(!Bt(e))return;await Fe(),YJ();let r=cn(He,{uri:e});if(console.log("onDidOpen",r?.id,e),r)r!==ce?await Xt({id:r.id}):r===ce&&(!ku.get(r)||r.getContextFiles().some(n=>!le(n,e)))&&await $S(r);else{let n={ctxName:(0,Xa.basename)(e),dtsFile:e};vu.set(e,n),await LS(e)}});yr.onDidChangeContent(async t=>{let e=Se(t.document.uri);if(!Bt(e))return;let r=t.document.getText(),n=xr();n.needsRenew(e,r)&&(console.log("Content changed"),n.renewLexer(e,r),await LS(e))});var kB=async t=>{t?.settings?.devicetree&&(Rn=rB(KJ(t.settings.devicetree)),console.log("Configuration changed",JSON.stringify(t,void 0," ")),await SB())};te.onDidChangeConfiguration(async t=>{await kB(t)});te.listen();te.languages.diagnostics.onWorkspace(async()=>{await Fe();let t=ce;return t?qS(t).finally(()=>{ku.set(t,!0)}):{items:[]}});te.onDidChangeWatchedFiles(t=>{te.console.log("We received a file change event")});te.onCompletion(async t=>{let e=Se(t.textDocument.uri);if((e.endsWith(".c")||e.endsWith(".cpp"))&&ce&&ce.bindingLoader?.type==="Zephyr")return uA(t,ce,yr.get(t.textDocument.uri));if(!Bt(e))return[];await Fe(),Xt({uri:e});let r=Tr(e);return r?[...await KD(t,r),...await wA(t,r)]:[]});te.onCompletionResolve(t=>t);var Tr=t=>{let e=_B();return cn(He,{uri:t},ce,e?.preferredContext)};te.onDocumentSymbol(async t=>{let e=Se(t.textDocument.uri);if(!Bt(e))return[];await Fe();let r=Tr(e);return r?r.getUriParser(e)?.getDocumentSymbols(e):[]});te.onWorkspaceSymbol(async()=>{await Fe();let t=ce;return t?(await t.getAllParsers()).flatMap(e=>e.getWorkspaceSymbols()):[]});te.languages.semanticTokens.on(async t=>{let e=Se(t.textDocument.uri);if(!Bt(e))return{data:[]};try{await Fe();let r=Tr(e),n=new ze.SemanticTokensBuilder,i=r?.isInContext(e);return!r||!i?{data:[]}:((await r.getAllParsers()).forEach(s=>s.buildSemanticTokens(n,e)),n.build())}catch(r){throw console.log(r),r}});te.onDocumentLinks(async t=>{await Fe();let e=Se(t.textDocument.uri);return Bt(e)?Tr(e)?.getDocumentLinks(e):e.endsWith(".yaml")&&ce?ce.bindingLoader?.getDocumentLinks?.(yr.get(t.textDocument.uri))??[]:[]});te.onPrepareRename(async t=>{let e=Se(t.textDocument.uri);if(!Bt(e))return;await Fe(),Xt({uri:e});let r=Tr(e);return gA(t,r)});te.onRenameRequest(async t=>{let e=Se(t.textDocument.uri);if(!Bt(e))return;await Fe(),Xt({uri:e});let r=Tr(e);return mA(t,r)});te.onReferences(async t=>{let e=Se(t.textDocument.uri);if(!Bt(e))return;await Fe(),Xt({uri:e});let r=Tr(e);return dA(t,r)});te.onDefinition(async t=>{let e=Se(t.textDocument.uri);if((e.endsWith(".c")||e.endsWith(".cpp"))&&ce&&ce.bindingLoader?.type==="Zephyr")return _A(t,ce,yr.get(t.textDocument.uri));if(!Bt(e))return;await Fe(),Xt({uri:e});let r=Tr(e),n=(await r?.getDocumentLinks(e,t.position))?.filter(i=>i.target).map(i=>ze.Location.create(i.target,i.range))??[];return n.length?n:vA(t,r)});te.onDeclaration(async t=>{let e=Se(t.textDocument.uri);if((e.endsWith(".c")||e.endsWith(".cpp"))&&ce&&ce.bindingLoader?.type==="Zephyr")return NA(t,ce,yr.get(t.textDocument.uri));if(!Bt(e))return;await Fe(),Xt({uri:e});let r=Tr(e);return bA(t,r)});te.onCodeAction(async t=>{let e=Se(t.textDocument.uri);if(Bt(e))return RA(t)});var RB=async t=>{let e=Se(t.textDocument.uri);if(!Bt(e))return;await Fe(),Xt({uri:e});let r=Tr(e);if(!r)return[];if((await r.getSyntaxIssues(void 0,l=>Ko(l,e,!1))).get(e)?.length)return[];let i=xr().getDocument(e),s=i.getText(),o=await wf(t,r,s,"New Text");if(o===s)return[];let a=i.lineCount-1,c=i.getText({start:{line:a,character:0},end:{line:a+1,character:0}}).length;return[ze.TextEdit.replace(ze.Range.create(ze.Position.create(0,0),ze.Position.create(i.lineCount,c)),o)]};te.onDocumentRangeFormatting(RB);te.onDocumentFormatting(RB);te.onHover(async t=>{let e=Se(t.textDocument.uri);if((e.endsWith(".c")||e.endsWith(".cpp"))&&ce&&ce.bindingLoader?.type==="Zephyr")return XI(t,ce,yr.get(t.textDocument.uri));if(!Bt(e))return;await Fe();let r=Tr(e);return(await EA(t,r)).at(0)});te.onFoldingRanges(async t=>{let e=Se(t.textDocument.uri);if(!Bt(e))return;await Fe();let r=Tr(e),n=r?.isInContext(e);if(!r||!n)return[];let i=(await r.getAllParsers()).find(s=>s.getFiles().some(o=>o===e));return i?eB(e,i):[]});te.onTypeDefinition(async t=>{let e=Se(t.textDocument.uri);if(!Bt(e))return;await Fe(),Xt({uri:e});let r=Tr(e);return tB(t,r)});te.onSignatureHelp(async t=>{let e=Se(t.textDocument.uri);if(!Bt(e))return;await Fe(),Xt({uri:e});let r=Tr(e);return lB(t,r)});te.onRequest("devicetree/getContexts",async()=>(await Fe(),Promise.all(He.map(async t=>{let e=await Ms(t);return{ctxNames:t.ctxNames.map(r=>r.toString()),id:t.id,...await t.getFileTree(),settings:t.settings,active:ce===t,type:e.type}}))));te.onRequest("devicetree/setActive",async t=>(await Fe(),console.log("devicetree/setActive",t),await Xt(t,!0)));te.onRequest("devicetree/getActiveContext",async()=>{if(await Fe(),console.log("devicetree/getActiveContext"),!ce)return;let t=await Ms(ce);return ce?{ctxNames:ce.ctxNames.map(e=>e.toString()),id:ce.id,...await ce.getFileTree(),settings:ce.settings,active:!0,type:t.type}:void 0});te.onRequest("devicetree/setDefaultSettings",async t=>{await Fe(),Os=t,console.log("Integration Settings",t),await SB()});te.onRequest("devicetree/requestContext",async t=>{await Fe();let e=await _u(),r=await ES(t,e,await Su());console.log("devicetree/requestContext",r);let n=ki(r),i=Array.from(Ka).find(([,a])=>a.ctxName===t.ctxName);if(i){let a=i[0].split(":",1)[0];cn(He,{name:t.ctxName.toString()})?.removeCtxName(t.ctxName),console.log(`Removing integration context with ID ${a} and name ${t.ctxName}`),Ka.delete(i[0])}Ka.set(`${n}:${t.ctxName}`,t),await Nu();let s=He.find(a=>a.id===n);if(!s)throw new Error("Failed to create context");let o=await Ms(s);return{ctxNames:s.ctxNames.map(a=>a.toString()),id:n,...await s.getFileTree(),settings:s.settings,active:!0,type:o.type}});te.onRequest("devicetree/removeContext",async({id:t,name:e})=>{await Fe(),Ka.delete(`${t}:${e}`);let r=cn(He,{id:t});if(r){if(r.removeCtxName(e),r.ctxNames.length){console.log("Context will not be deleted as it is still in use by others");return}await Nu()}});te.onRequest("devicetree/compiledDtsOutput",async t=>{if(await Fe(),!t)return;let e=cn(He,{id:t});if(!e)return;let r=await e.toFullString();return Yy({textDocument:{uri:de(e.settings.dtsFile)},options:e.formattingOptions},r,"New Text")});te.onRequest("devicetree/serializedContext",async t=>(await Fe(),t?cn(He,{id:t})?.serialize():void 0));te.onRequest("devicetree/activePath",async t=>{if(await Fe(),!ce)return;let e=r=>{if(r?.item)return r.item instanceof X?{nodePath:r.item.pathString}:{nodePath:r.item.parent.pathString,propertyName:r.item.name}};return(await _t(t,ce,r=>[e(r)])).at(0)});te.onRequest("devicetree/customActions",async t=>(await Fe(),aB(t,ce)));te.onRequest("devicetree/activeFileUri",async t=>{await Fe(),Xt({uri:t})});var JJ=async(t,e,r)=>{if((await e.getSyntaxIssues(void 0,o=>Ko(o,r,!1))).get(r)?.length)throw new Error("Unable to format. Files has syntax issues.");let i=xr().getDocument(r);return await wf(t,e,i.getText(),"New Text")};te.onRequest("devicetree/formattingText",async t=>{await Fe();let e=Se(t.textDocument.uri),r=Tr(e);if(r)return Xt({uri:e}),JJ(t,r,e);let n=xr().getDocument(e,t.text),i=await Yy(t,n.getText(),"Both");return{text:i.text,diagnostics:i.diagnostic.map(s=>s.diagnostic())}});te.onRequest("devicetree/diagnosticIssues",async({uri:t,full:e})=>{await Fe();let r=Se(t);Xt({uri:r});let n=Tr(r);if(!n)return[];let i=e?(await n.getDiagnostics()).get(r):(await n.getSyntaxIssues(void 0,s=>Ko(s,r,!!e))).get(r);if(i?.length)return i});te.onRequest("devicetree/evalMacros",async({macros:t,ctxId:e})=>{await Fe();let r=cn(He,{id:e});return r?t.map(n=>{let i=af(n,r.macros),s=De(i);return{macro:n,evaluated:typeof s=="number"?s:i}}):[]});