UNPKG

n8n-editor-ui

Version:

Workflow Editor UI for n8n

2 lines 588 kB
!function(){try{("undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{}).SENTRY_RELEASE={id:"n8n@2.13.4"}}catch(e){}}(),System.register(["./chunk-legacy-TXBRODOR.js","./vue.runtime.esm-bundler-legacy-IafOlCW8.js","./src-legacy-Dwzr7bD0.js","./_plugin-vue_export-helper-legacy-DEZAmQqp.js"],(function(e,t){var r,s,i,n,a,o,u,p,l,c,h,d,m,y,f,D,x,g,E,A,T,C,F,b,S,P,w,v,k,I,N,B,L,M,O,j,_,R,U,$,q,J,V,z,H,W,K,X,G,Y,Q,Z,ee,te,re,se,ie,ne,ae,oe,ue,pe,le,ce,he,de,me,ye,fe,De,xe,ge,Ee,Ae,Te,Ce,Fe,be,Se,Pe,we,ve,ke,Ie,Ne,Be,Le,Me,Oe,je,_e,Re,Ue,$e,qe,Je,Ve,ze,He,We,Ke,Xe,Ge,Ye,Qe,Ze,et,tt,rt,st,it,nt,at,ot,ut,pt,lt,ct,ht,dt,mt,yt,ft,Dt,xt,gt,Et,At,Tt,Ct,Ft,bt,St,Pt,wt,vt,kt,It,Nt,Bt,Lt,Mt,Ot,jt,_t,Rt,Ut,$t,qt,Jt,Vt,zt,Ht,Wt,Kt,Xt,Gt,Yt,Qt,Zt,er,tr,rr,sr,ir,nr,ar,or,ur,pr,lr,cr,hr,dr,mr,yr,fr,Dr,xr,gr,Er,Ar,Tr,Cr,Fr,br,Sr,Pr,wr,vr,kr,Ir,Nr,Br,Lr,Mr,Or,jr,_r,Rr,Ur,$r,qr,Jr,Vr,zr,Hr,Wr,Kr,Xr,Gr,Yr,Qr,Zr,es,ts,rs,ss,is,ns,as,os,us,ps,ls,cs,hs,ds,ms,ys,fs,Ds,xs,gs,Es,As,Ts,Cs,Fs,bs,Ss,Ps,ws,vs,ks,Is,Ns,Bs,Ls,Ms,Os,js,_s,Rs,Us,$s,qs,Js,Vs,zs,Hs,Ws,Ks,Xs,Gs,Ys,Qs,Zs,ei,ti,ri,si,ii,ni,ai,oi,ui,pi,li,ci,hi,di,mi,yi,fi,Di,xi,gi,Ei,Ai,Ti,Ci,Fi,bi,Si,Pi,wi,vi,ki,Ii,Ni,Bi,Li,Mi,Oi,ji,_i,Ri,Ui,$i,qi,Ji,Vi,zi,Hi,Wi,Ki,Xi,Gi,Yi,Qi,Zi,en,tn,rn,sn,nn,an,on,un,pn,ln,cn,hn,dn,mn,yn,fn,Dn,xn,gn,En,An,Tn,Cn,Fn,bn,Sn,Pn,wn,vn,kn,In,Nn,Bn,Ln,Mn,On,jn,_n,Rn,Un,$n,qn,Jn,Vn,zn,Hn,Wn,Kn,Xn,Gn,Yn,Qn,Zn,ea,ta,ra,sa,ia,na,aa,oa,ua,pa,la,ca,ha,da,ma,ya,fa,Da,xa,ga,Ea,Aa,Ta,Ca,Fa,ba,Sa,Pa,wa,va,ka,Ia,Na,Ba,La,Ma,Oa,ja,_a,Ra,Ua,$a,qa,Ja,Va,za,Ha,Wa,Ka,Xa,Ga,Ya,Qa,Za,eo,to,ro,so,io,no,ao,oo,uo,po,lo,co,ho,mo,yo,fo,Do,xo,go,Eo,Ao,To,Co,Fo,bo,So;function Po(){}function wo(e,t,r,s,i){for(var n,a=[];t;)a.push(t),n=t.previousComponent,delete t.previousComponent,t=n;a.reverse();for(var o=0,u=a.length,p=0,l=0;o<u;o++){var c=a[o];if(c.removed){if(c.value=e.join(s.slice(l,l+c.count)),l+=c.count,o&&a[o-1].added){var h=a[o-1];a[o-1]=a[o],a[o]=h}}else{if(!c.added&&i){var d=r.slice(p,p+c.count);d=d.map((function(e,t){var r=s[l+t];return r.length>e.length?r:e})),c.value=e.join(d)}else c.value=e.join(r.slice(p,p+c.count));p+=c.count,c.added||(l+=c.count)}}var m=a[u-1];return u>1&&"string"==typeof m.value&&(m.added||m.removed)&&e.equals("",m.value)&&(a[u-2].value+=m.value,a.pop()),a}function vo(e){return(vo="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function ko(e,t,r,s,i){var n,a;for(t=t||[],r=r||[],s&&(e=s(i,e)),n=0;n<t.length;n+=1)if(t[n]===e)return r[n];if("[object Array]"===z.call(e)){for(t.push(e),a=new Array(e.length),r.push(a),n=0;n<e.length;n+=1)a[n]=ko(e[n],t,r,s,i);return t.pop(),r.pop(),a}if(e&&e.toJSON&&(e=e.toJSON()),"object"===vo(e)&&null!==e){t.push(e),a={},r.push(a);var o,u=[];for(o in e)e.hasOwnProperty(o)&&u.push(o);for(u.sort(),n=0;n<u.length;n+=1)a[o=u[n]]=ko(e[o],t,r,s,o);t.pop(),r.pop()}else a=e;return a}function Io(e){switch(e){case"cr":return"\r";case"crlf":return"\r\n";default:return"\n"}}function No(e,t){let r;switch(t){case"\n":r=/\n/gu;break;case"\r":r=/\r/gu;break;case"\r\n":r=/\r\n/gu;break;default:throw new Error(`Unexpected "eol" ${JSON.stringify(t)}.`)}let s=e.match(r);return s?s.length:0}function Bo(e){if("string"==typeof e)return K;if(Array.isArray(e))return X;if(!e)return;let{type:t}=e;return pe.has(t)?t:void 0}function Lo(e,t,r,s){let i=[e];for(;i.length>0;){let e=i.pop();if(e===me){r(i.pop());continue}r&&i.push(e,me);let n=le(e);if(!n)throw new de(e);if(!1!==(null==t?void 0:t(e)))switch(n){case X:case te:{let t=n===X?e:e.parts;for(let e=t.length-1;e>=0;--e)i.push(t[e]);break}case re:i.push(e.flatContents,e.breakContents);break;case ee:if(s&&e.expandedStates)for(let t=e.expandedStates.length-1;t>=0;--t)i.push(e.expandedStates[t]);else i.push(e.contents);break;case Q:case Y:case se:case oe:case ie:i.push(e.contents);break;case K:case G:case Z:case ne:case ae:case ue:break;default:throw new de(e)}}}function Mo(e){return De(e),{type:Y,contents:e}}function Oo(e,t){return De(t),{type:Q,contents:t,n:e}}function jo(e,t={}){return De(e),xe(t.expandedStates,!0),{type:ee,id:t.id,contents:e,break:!!t.shouldBreak,expandedStates:t.expandedStates}}function _o(e){return Oo(Number.NEGATIVE_INFINITY,e)}function Ro(e){return Oo({type:"root"},e)}function Uo(e){return Oo(-1,e)}function $o(e,t){return jo(e[0],{...t,expandedStates:e})}function qo(e){return xe(e),{type:te,parts:e}}function Jo(e,t="",r={}){return De(e),""!==t&&De(t),{type:re,breakContents:e,flatContents:t,groupId:r.groupId}}function Vo(e,t){return De(e),{type:se,contents:e,groupId:t.groupId,negate:t.negate}}function zo(e){return De(e),{type:ie,contents:e}}function Ho(e,t){De(e),xe(t);let r=[];for(let s=0;s<t.length;s++)0!==s&&r.push(e),r.push(t[s]);return r}function Wo(e,t,r){De(e);let s=e;if(t>0){for(let e=0;e<Math.floor(t/r);++e)s=Mo(s);s=Oo(t%r,s),s=Oo(Number.NEGATIVE_INFINITY,s)}return s}function Ko(e,t){return De(t),e?{type:oe,label:e,contents:t}:t}function Xo(e){var t;if(!e)return"";if(Array.isArray(e)){let t=[];for(let r of e)if(Array.isArray(r))t.push(...Xo(r));else{let e=Xo(r);""!==e&&t.push(e)}return t}return e.type===re?{...e,breakContents:Xo(e.breakContents),flatContents:Xo(e.flatContents)}:e.type===ee?{...e,contents:Xo(e.contents),expandedStates:null==(t=e.expandedStates)?void 0:t.map(Xo)}:e.type===te?{type:"fill",parts:e.parts.map(Xo)}:e.contents?{...e,contents:Xo(e.contents)}:e}function Go(e){if(!e)return 0;if(!Be.test(e))return e.length;e=e.replace(Ie(),"  ");let t=0;for(let r of e){let e=r.codePointAt(0);e<=31||e>=127&&e<=159||e>=768&&e<=879||(t+=Ne(e)?1:2)}return t}function Yo(e,t){if("string"==typeof e)return t(e);let r=new Map;return s(e);function s(e){if(r.has(e))return r.get(e);let i=function(e){switch(le(e)){case X:return t(e.map(s));case te:return t({...e,parts:e.parts.map(s)});case re:return t({...e,breakContents:s(e.breakContents),flatContents:s(e.flatContents)});case ee:{let{expandedStates:r,contents:i}=e;return r?(r=r.map(s),i=r[0]):i=s(i),t({...e,contents:i,expandedStates:r})}case Q:case Y:case se:case oe:case ie:return t({...e,contents:s(e.contents)});case K:case G:case Z:case ne:case ae:case ue:return t(e);default:throw new de(e)}}(e);return r.set(e,i),i}}function Qo(e,t,r){let s=r,i=!1;return ye(e,(function(e){if(i)return!1;let r=t(e);void 0!==r&&(i=!0,s=r)})),s}function Zo(e){if(e.type===ee&&e.break||e.type===ae&&e.hard||e.type===ue)return!0}function eu(e){return Qo(e,Zo,!1)}function tu(e){if(e.length>0){let t=ke(!1,e,-1);!t.expandedStates&&!t.break&&(t.break="propagated")}return null}function ru(e){return e.type!==ae||e.hard?e.type===re?e.flatContents:e:e.soft?"":" "}function su(e){return Yo(e,ru)}function iu(e){for(e=[...e];e.length>=2&&ke(!1,e,-2).type===ae&&ke(!1,e,-1).type===ue;)e.length-=2;if(e.length>0){let t=nu(ke(!1,e,-1));e[e.length-1]=t}return e}function nu(e){switch(le(e)){case Y:case se:case ee:case ie:case oe:{let t=nu(e.contents);return{...e,contents:t}}case re:return{...e,breakContents:nu(e.breakContents),flatContents:nu(e.flatContents)};case te:return{...e,parts:iu(e.parts)};case X:return iu(e);case K:return e.replace(/[\n\r]*$/u,"");case Q:case G:case Z:case ne:case ae:case ue:break;default:throw new de(e)}return e}function au(e){return nu(function(e){return Yo(e,(e=>function(e){switch(le(e)){case te:if(e.parts.every((e=>""===e)))return"";break;case ee:if(!(e.contents||e.id||e.break||e.expandedStates))return"";if(e.contents.type===ee&&e.contents.id===e.id&&e.contents.break===e.break&&e.contents.expandedStates===e.expandedStates)return e.contents;break;case Q:case Y:case se:case ie:if(!e.contents)return"";break;case re:if(!e.flatContents&&!e.breakContents)return"";break;case X:{let t=[];for(let r of e){if(!r)continue;let[e,...s]=Array.isArray(r)?r:[r];"string"==typeof e&&"string"==typeof ke(!1,t,-1)?t[t.length-1]+=e:t.push(e),t.push(...s)}return 0===t.length?"":1===t.length?t[0]:t}case K:case G:case Z:case ne:case ae:case oe:case ue:break;default:throw new de(e)}return e}(e)))}(e))}function ou(e,t=Pe){return Yo(e,(e=>"string"==typeof e?Ho(t,e.split("\n")):e))}function uu(e){if(e.type===ae)return!0}function pu(e){return Qo(e,uu,!1)}function lu(e,t){return e.type===oe?{...e,contents:t(e.contents)}:t(e)}function cu(e,t){return du(e,{type:"indent"},t)}function hu(e,t,r){return t===Number.NEGATIVE_INFINITY?e.root||{value:"",length:0,queue:[]}:t<0?du(e,{type:"dedent"},r):t?"root"===t.type?{...e,root:e}:du(e,{type:"string"==typeof t?"stringAlign":"numberAlign",n:t},r):e}function du(e,t,r){let s="dedent"===t.type?e.queue.slice(0,-1):[...e.queue,t],i="",n=0,a=0,o=0;for(let d of s)switch(d.type){case"indent":l(),r.useTabs?u(1):p(r.tabWidth);break;case"stringAlign":l(),i+=d.n,n+=d.n.length;break;case"numberAlign":a+=1,o+=d.n;break;default:throw new Error(`Unexpected type '${d.type}'`)}return c(),{...e,value:i,length:n,queue:s};function u(e){i+="\t".repeat(e),n+=r.tabWidth*e}function p(e){i+=" ".repeat(e),n+=e}function l(){r.useTabs?(a>0&&u(a),h()):c()}function c(){o>0&&p(o),h()}function h(){a=0,o=0}}function mu(e){let t=0,r=0,s=e.length;e:for(;s--;){let i=e[s];if(i!==je)for(let r=i.length-1;r>=0;r--){let n=i[r];if(" "!==n&&"\t"!==n){e[s]=i.slice(0,r+1);break e}t++}else r++}if(t>0||r>0)for(e.length=s+1;r-- >0;)e.push(je);return t}function yu(e,t,r,s,i,n){if(r===Number.POSITIVE_INFINITY)return!0;let a=t.length,o=[e],u=[];for(;r>=0;){if(0===o.length){if(0===a)return!0;o.push(t[--a]);continue}let{mode:e,doc:p}=o.pop(),l=le(p);switch(l){case K:u.push(p),r-=Le(p);break;case X:case te:{let t=l===X?p:p.parts;for(let r=t.length-1;r>=0;r--)o.push({mode:e,doc:t[r]});break}case Y:case Q:case se:case oe:o.push({mode:e,doc:p.contents});break;case Z:r+=mu(u);break;case ee:{if(n&&p.break)return!1;let t=p.break?Me:e,r=p.expandedStates&&t===Me?ke(!1,p.expandedStates,-1):p.contents;o.push({mode:t,doc:r});break}case re:{let t=(p.groupId?i[p.groupId]||Oe:e)===Me?p.breakContents:p.flatContents;t&&o.push({mode:e,doc:t});break}case ae:if(e===Me||p.hard)return!0;p.soft||(u.push(" "),r--);break;case ie:s=!0;break;case ne:if(s)return!1}}return!1}function fu(e,t){let r={},s=t.printWidth,i=Io(t.endOfLine),n=0,a=[{ind:{value:"",length:0,queue:[]},mode:Me,doc:e}],o=[],u=!1,p=[],l=0;for(function(e){let t=new Set,r=[];ye(e,(function(e){if(e.type===ue&&tu(r),e.type===ee){if(r.push(e),t.has(e))return!1;t.add(e)}}),(function(e){e.type===ee&&r.pop().break&&tu(r)}),!0)}(e);a.length>0;){let{ind:e,mode:c,doc:h}=a.pop();switch(le(h)){case K:{let e="\n"!==i?U(!1,h,"\n",i):h;o.push(e),a.length>0&&(n+=Le(e));break}case X:for(let t=h.length-1;t>=0;t--)a.push({ind:e,mode:c,doc:h[t]});break;case G:if(l>=2)throw new Error("There are too many 'cursor' in doc.");o.push(je),l++;break;case Y:a.push({ind:cu(e,t),mode:c,doc:h.contents});break;case Q:a.push({ind:hu(e,h.n,t),mode:c,doc:h.contents});break;case Z:n-=mu(o);break;case ee:switch(c){case Oe:if(!u){a.push({ind:e,mode:h.break?Me:Oe,doc:h.contents});break}case Me:{u=!1;let t={ind:e,mode:Oe,doc:h.contents},i=s-n,o=p.length>0;if(!h.break&&yu(t,a,i,o,r))a.push(t);else if(h.expandedStates){let t=ke(!1,h.expandedStates,-1);if(h.break){a.push({ind:e,mode:Me,doc:t});break}for(let s=1;s<h.expandedStates.length+1;s++){if(s>=h.expandedStates.length){a.push({ind:e,mode:Me,doc:t});break}{let t={ind:e,mode:Oe,doc:h.expandedStates[s]};if(yu(t,a,i,o,r)){a.push(t);break}}}}else a.push({ind:e,mode:Me,doc:h.contents});break}}h.id&&(r[h.id]=ke(!1,a,-1).mode);break;case te:{let t=s-n,{parts:i}=h;if(0===i.length)break;let[o,u]=i,l={ind:e,mode:Oe,doc:o},d={ind:e,mode:Me,doc:o},m=yu(l,[],t,p.length>0,r,!0);if(1===i.length){m?a.push(l):a.push(d);break}let y={ind:e,mode:Oe,doc:u},f={ind:e,mode:Me,doc:u};if(2===i.length){m?a.push(y,l):a.push(f,d);break}i.splice(0,2);let D={ind:e,mode:c,doc:qo(i)},x=i[0];yu({ind:e,mode:Oe,doc:[o,u,x]},[],t,p.length>0,r,!0)?a.push(D,y,l):m?a.push(D,f,l):a.push(D,f,d);break}case re:case se:{let t=h.groupId?r[h.groupId]:c;if(t===Me){let t=h.type===re?h.breakContents:h.negate?h.contents:Mo(h.contents);t&&a.push({ind:e,mode:c,doc:t})}if(t===Oe){let t=h.type===re?h.flatContents:h.negate?Mo(h.contents):h.contents;t&&a.push({ind:e,mode:c,doc:t})}break}case ie:p.push({ind:e,mode:c,doc:h.contents});break;case ne:p.length>0&&a.push({ind:e,mode:c,doc:Te});break;case ae:switch(c){case Oe:if(!h.hard){h.soft||(o.push(" "),n+=1);break}u=!0;case Me:if(p.length>0){a.push({ind:e,mode:c,doc:h},...p.reverse()),p.length=0;break}h.literal?e.root?(o.push(i,e.root.value),n=e.root.length):(o.push(i),n=0):(n-=mu(o),o.push(i+e.value),n=e.length)}break;case oe:a.push({ind:e,mode:c,doc:h.contents});break;case ue:break;default:throw new de(h)}0===a.length&&p.length>0&&(a.push(...p.reverse()),p.length=0)}let c=o.indexOf(je);if(-1!==c){let e=o.indexOf(je,c+1),t=o.slice(0,c).join(""),r=o.slice(c+1,e).join("");return{formatted:t+r+o.slice(e+1).join(""),cursorNodeStart:t.length,cursorNodeText:r}}return{formatted:o.join("")}}function Du(e,t,r=0){let s=0;for(let i=r;i<e.length;++i)"\t"===e[i]?s=s+t-s%t:s++;return s}function xu(e){return null!==e&&"object"==typeof e}function*gu(e,t){let{getVisitorKeys:r,filter:s=(()=>!0)}=t,i=e=>He(e)&&s(e);for(let n of r(e)){let t=e[n];if(Array.isArray(t))for(let e of t)i(e)&&(yield e);else i(t)&&(yield t)}}function Eu(e){return(t,r,s)=>{let i=!(null==s||!s.backwards);if(!1===r)return!1;let{length:n}=t,a=r;for(;a>=0&&a<n;){let r=t.charAt(a);if(e instanceof RegExp){if(!e.test(r))return a}else if(!e.includes(r))return a;i?a--:a++}return(-1===a||a===n)&&a}}function Au(e,t,r){let s=!(null==r||!r.backwards);if(!1===t)return!1;let i=e.charAt(t);if(s){if("\r"===e.charAt(t-1)&&"\n"===i)return t-2;if("\n"===i||"\r"===i||"\u2028"===i||"\u2029"===i)return t-1}else{if("\r"===i&&"\n"===e.charAt(t+1))return t+2;if("\n"===i||"\r"===i||"\u2028"===i||"\u2029"===i)return t+1}return t}function Tu(e,t,r={}){let s=Ke(e,r.backwards?t-1:t,r);return s!==Ye(e,s,r)}function Cu(e){return Array.isArray(e)&&e.length>0}function Fu(e){return e?t=>e(t,et):tt}function bu(e,t){(e.comments??(e.comments=[])).push(t),t.printed=!1,t.nodeDescription=function(e){let t=e.type||e.kind||"(unknown type)",r=String(e.name||e.id&&("object"==typeof e.id?e.id.name:e.id)||e.key&&("object"==typeof e.key?e.key.name:e.key)||e.value&&("object"==typeof e.value?"":String(e.value))||e.operator||"");return r.length>20&&(r=r.slice(0,19)+"…"),t+(r?" "+r:"")}(e)}function Su(e,t){t.leading=!0,t.trailing=!1,bu(e,t)}function Pu(e,t,r){t.leading=!1,t.trailing=!1,r&&(t.marker=r),bu(e,t)}function wu(e,t){t.leading=!1,t.trailing=!0,bu(e,t)}function vu(e,t){if(st.has(e))return st.get(e);let{printer:{getCommentChildNodes:r,canAttachComment:s,getVisitorKeys:i},locStart:n,locEnd:a}=t;if(!s)return[];let o=((null==r?void 0:r(e,t))??[...gu(e,{getVisitorKeys:rt(i)})]).flatMap((e=>s(e)?[e]:vu(e,t)));return o.sort(((e,t)=>n(e)-n(t)||a(e)-a(t))),st.set(e,o),o}function ku(e,t,r,s){let i,n,{locStart:a,locEnd:o}=r,u=a(t),p=o(t),l=vu(e,r),c=0,h=l.length;for(;c<h;){let e=c+h>>1,s=l[e],d=a(s),m=o(s);if(d<=u&&p<=m)return ku(s,t,r,s);if(m<=u)i=s,c=e+1;else{if(!(p<=d))throw new Error("Comment location overlaps with node location");n=s,h=e}}if("TemplateLiteral"===(null==s?void 0:s.type)){let{quasis:e}=s,a=Lu(e,t,r);i&&Lu(e,i,r)!==a&&(i=null),n&&Lu(e,n,r)!==a&&(n=null)}return{enclosingNode:s,precedingNode:i,followingNode:n}}function Iu(e,t,r,s){let{comment:i,precedingNode:n}=r[s],{locStart:a,locEnd:o}=t,u=a(i);if(n)for(let p=s-1;p>=0;p--){let{comment:t,precedingNode:s}=r[p];if(s!==n||!nt(e.slice(o(t),u)))break;u=a(t)}return Qe(e,u,{backwards:!0})}function Nu(e,t,r,s){let{comment:i,followingNode:n}=r[s],{locStart:a,locEnd:o}=t,u=o(i);if(n)for(let p=s+1;p<r.length;p++){let{comment:t,followingNode:s}=r[p];if(s!==n||!nt(e.slice(u,a(t))))break;u=o(t)}return Qe(e,u)}function Bu(e,t){var r,s;let i=e.length;if(0===i)return;let n,{precedingNode:a,followingNode:o}=e[0],u=t.locStart(o);for(n=i;n>0;--n){let{comment:i,precedingNode:p,followingNode:l}=e[n-1];ze.strictEqual(p,a),ze.strictEqual(l,o);let c=t.originalText.slice(t.locEnd(i),u);if(!((null==(s=(r=t.printer).isGap)?void 0:s.call(r,c,t))??/^[\s(]*$/u.test(c)))break;u=t.locStart(i)}for(let[p,{comment:l}]of e.entries())p<n?wu(a,l):Su(o,l);for(let p of[a,o])p.comments&&p.comments.length>1&&p.comments.sort(((e,r)=>t.locStart(e)-t.locStart(r)));e.length=0}function Lu(e,t,r){let s=r.locStart(t)-1;for(let i=1;i<e.length;++i)if(s<r.locStart(e[i]))return i-1;return 0}function Mu(e,t){let r=t-1;return r=Ke(e,r,{backwards:!0}),r=Ye(e,r,{backwards:!0}),r=Ke(e,r,{backwards:!0}),r!==Ye(e,r,{backwards:!0})}function Ou(e,t){return e.node.printed=!0,t.printer.printComment(e,t)}function ju(e,t){let r=e.node;if(!r)return{};let s=t[Symbol.for("printedComments")];if(0===(r.comments||[]).filter((e=>!s.has(e))).length)return{leading:"",trailing:""};let i,n=[],a=[];return e.each((()=>{let r=e.node;if(null!=s&&s.has(r))return;let{leading:o,trailing:u}=r;o?n.push(function(e,t){var r;let s=e.node,i=[Ou(e,t)],{printer:n,originalText:a,locStart:o,locEnd:u}=t;if(null==(r=n.isBlockComment)?void 0:r.call(n,s)){let e=Qe(a,u(s))?Qe(a,o(s),{backwards:!0})?Se:Fe:" ";i.push(e)}else i.push(Se);let p=Ye(a,Ke(a,u(s)));return!1!==p&&Qe(a,p)&&i.push(Se),i}(e,t)):u&&(i=function(e,t,r){var s;let i=e.node,n=Ou(e,t),{printer:a,originalText:o,locStart:u}=t,p=null==(s=a.isBlockComment)?void 0:s.call(a,i);return null!=r&&r.hasLineSuffix&&(null==r||!r.isBlock)||Qe(o,u(i),{backwards:!0})?{doc:zo([Se,at(o,u(i))?Se:"",n]),isBlock:p,hasLineSuffix:!0}:!p||null!=r&&r.hasLineSuffix?{doc:[zo([" ",n]),Ee],isBlock:p,hasLineSuffix:!0}:{doc:[" ",n],isBlock:p,hasLineSuffix:!1}}(e,t,i),a.push(i.doc))}),"comments"),{leading:n,trailing:a}}function _u(e){return()=>{}}function Ru({plugins:e=[],showDeprecated:t=!1}={}){let r=e.flatMap((e=>e.languages??[])),s=[];for(let i of function(e){let t=[];for(let[r,s]of Object.entries(e)){let e={name:r,...s};Array.isArray(e.default)&&(e.default=ke(!1,e.default,-1).value),t.push(e)}return t}(Object.assign({},...e.map((({options:e})=>e)),lt)))!t&&i.deprecated||(Array.isArray(i.choices)&&(t||(i.choices=i.choices.filter((e=>!e.deprecated))),"parser"===i.name&&(i.choices=[...i.choices,...Uu(i.choices,r,e)])),i.pluginDefaults=Object.fromEntries(e.filter((e=>{var t;return void 0!==(null==(t=e.defaultOptions)?void 0:t[i.name])})).map((e=>[e.name,e.defaultOptions[i.name]]))),s.push(i));return{languages:r,options:s}}function*Uu(e,t,r){let s=new Set(e.map((e=>e.value)));for(let i of t)if(i.parsers)for(let e of i.parsers)if(!s.has(e)){s.add(e);let t=r.find((t=>t.parsers&&Object.prototype.hasOwnProperty.call(t.parsers,e))),n=i.name;null!=t&&t.name&&(n+=` (plugin: ${t.name})`),yield{value:e,description:n}}}function $u(e,t){if(!t)return;let r=ct(t).toLowerCase();return e.find((({filenames:e})=>null==e?void 0:e.some((e=>e.toLowerCase()===r))))??e.find((({extensions:e})=>null==e?void 0:e.some((e=>r.endsWith(e)))))}function qu(e,t){let r=e.plugins.flatMap((e=>e.languages??[])),s=function(e,t){if(t)return e.find((({name:e})=>e.toLowerCase()===t))??e.find((({aliases:e})=>null==e?void 0:e.includes(t)))??e.find((({extensions:e})=>null==e?void 0:e.includes(`.${t}`)))}(r,t.language)??$u(r,t.physicalFile)??$u(r,t.file)??void t.physicalFile;return null==s?void 0:s.parsers[0]}function Ju(e,t,r,s){return[`Invalid ${ft.default.red(s.key(e))} value.`,`Expected ${ft.default.blue(r)},`,`but received ${t===Dt?ft.default.gray("nothing"):ft.default.red(s.value(t))}.`].join(" ")}function Vu({text:e,list:t},r){let s=[];return e&&s.push(`- ${ft.default.blue(e)}`),t&&s.push([`- ${ft.default.blue(t.title)}:`].concat(t.values.map((e=>Vu(e,r-gt.length).replace(/^|\n/g,`$&${gt}`)))).join("\n")),zu(s,r)}function zu(e,t){if(1===e.length)return e[0];let[r,s]=e,[i,n]=e.map((e=>e.split("\n",1)[0].length));return i>t&&i>n?s:r}function Hu(e,t,r){return"function"==typeof e?(...s)=>e(...s.slice(0,r-1),t,...s.slice(r-1)):()=>e}function Wu({from:e,to:t}){return{from:[e],to:t}}function Ku(e,t){let r=Object.create(null);for(let s of e){let e=s[t];if(r[e])throw new Error(`Duplicate ${t} ${JSON.stringify(e)}`);r[e]=s}return r}function Xu(e,t){if(e===t)return 0;let r=typeof e,s=typeof t,i=["undefined","object","boolean","number","string"];return r!==s?i.indexOf(r)-i.indexOf(s):"string"!==r?Number(e)-Number(t):e.localeCompare(t)}function Gu(e){return void 0===e?{}:e}function Yu(e){if("string"==typeof e)return{text:e};let{text:t,list:r}=e;return function(e,t){if(!e)throw new Error(t)}(void 0!==(t||r),"Unexpected `expected` result, there should be at least one field."),r?{text:t,list:{title:r.title,values:r.values.map(Yu)}}:{text:t}}function Qu(e,t){return!0===e||(!1===e?{value:t}:e)}function Zu(e,t,r=!1){return!1!==e&&(!0===e?!!r||[{value:t}]:"value"in e?[e]:0!==e.length&&e)}function ep(e,t){return"string"==typeof e||"key"in e?{from:t,to:e}:"from"in e?{from:e.from,to:e.to}:{from:t,to:e.to}}function tp(e,t){return void 0===e?[]:Array.isArray(e)?e.map((e=>ep(e,t))):[ep(e,t)]}function rp(e,t){let r=tp("object"==typeof e&&"redirect"in e?e.redirect:e,t);return 0===r.length?{remain:t,redirect:r}:"object"==typeof e&&"remain"in e?{remain:e.remain,redirect:r}:{redirect:r}}function sp(e,t,{logger:r=!1,isCLI:s=!1,passThrough:i=!1,FlagSchema:n,descriptor:a}={}){if(s){if(!n)throw new Error("'FlagSchema' option is required.");if(!a)throw new Error("'descriptor' option is required.")}else a=dt;let o=i?Array.isArray(i)?(e,t)=>i.includes(e)?{[e]:t}:void 0:(e,t)=>({[e]:t}):(e,t,r)=>{let{_:s,...i}=r.schemas;return Ft(e,t,{...r,schemas:i})},u=new Rt(function(e,{isCLI:t,FlagSchema:r}){let s=[];t&&s.push(wt.create({name:"_"}));for(let i of e)s.push(ip(i,{isCLI:t,optionInfos:e,FlagSchema:r})),i.alias&&t&&s.push(Pt.create({name:i.alias,sourceName:i.name}));return s}(t,{isCLI:s,FlagSchema:n}),{logger:r,unknown:o,descriptor:a}),p=!1!==r;p&&Ut&&(u._hasDeprecationWarned=Ut);let l=u.normalize(e);return p&&(Ut=u._hasDeprecationWarned),l}function ip(e,{isCLI:t,optionInfos:r,FlagSchema:s}){let i,{name:n}=e,a={name:n},o={};switch(e.type){case"int":i=Bt,t&&(a.preprocess=Number);break;case"string":case"path":i=Lt;break;case"choice":i=It,a.choices=e.choices.map((t=>null!=t&&t.redirect?{...t,redirect:{to:{key:e.name,value:t.redirect}}}:t));break;case"boolean":i=kt;break;case"flag":i=s,a.flags=r.flatMap((e=>[e.alias,e.description&&e.name,e.oppositeDescription&&`no-${e.name}`].filter(Boolean)));break;default:throw new Error(`Unexpected type ${e.type}`)}if(e.exception?a.validate=(t,r,s)=>e.exception(t)||r.validate(t,s):a.validate=(e,t,r)=>void 0===e||t.validate(e,r),e.redirect&&(o.redirect=t=>t?{to:"string"==typeof e.redirect?e.redirect:{key:e.redirect.option,value:e.redirect.value}}:void 0),e.deprecated&&(o.deprecated=!0),t&&!e.array){let e=a.preprocess||(e=>e);a.preprocess=(t,r,s)=>r.preprocess(e(Array.isArray(t)?ke(!1,t,-1):t),s)}return e.array?vt.create({...t?{preprocess:e=>Array.isArray(e)?e:[e]}:{},...o,valueSchema:i.create(a)}):i.create({...a,...o})}function np(e,t){if(!t)throw new Error("parserName is required.");let r=Jt(!1,e,(e=>e.parsers&&Object.prototype.hasOwnProperty.call(e.parsers,t)));if(r)return r;let s=`Couldn't resolve parser "${t}".`;throw s+=" Plugins must be explicitly added to the standalone bundle.",new ut(s)}function ap({plugins:e,parser:t}){return op(np(e,t),t)}function op(e,t){let r=e.parsers[t];return"function"==typeof r?r():r}async function up(e,t={}){var r;let s={...e};if(!s.parser){if(!s.filepath)throw new pt("No parser and no file path given, couldn't infer a parser.");if(s.parser=ht(s,{physicalFile:s.filepath}),!s.parser)throw new pt(`No parser could be inferred for file "${s.filepath}".`)}let i=Ru({plugins:e.plugins,showDeprecated:!0}).options,n={...Vt,...Object.fromEntries(i.filter((e=>void 0!==e.default)).map((e=>[e.name,e.default])))},a=np(s.plugins,s.parser),o=await op(a,s.parser);s.astFormat=o.astFormat,s.locEnd=o.locEnd,s.locStart=o.locStart;let u=null!=(r=a.printers)&&r[o.astFormat]?a:function(e,t){if(!t)throw new Error("astFormat is required.");let r=Jt(!1,e,(e=>e.printers&&Object.prototype.hasOwnProperty.call(e.printers,t)));if(r)return r;let s=`Couldn't find plugin for AST format "${t}".`;throw s+=" Plugins must be explicitly added to the standalone bundle.",new ut(s)}(s.plugins,o.astFormat);s.printer=await function(e,t){let r=e.printers[t];return"function"==typeof r?r():r}(u,o.astFormat);let p={...n,...u.defaultOptions?Object.fromEntries(Object.entries(u.defaultOptions).filter((([,e])=>void 0!==e))):{}};for(let[l,c]of Object.entries(p))(null===s[l]||void 0===s[l])&&(s[l]=c);return"json"===s.parser&&(s.trailingComma="none"),$t(s,i,{passThrough:Object.keys(Vt),...t})}async function pp(e,t){let r,s=await ap(t),i=s.preprocess?s.preprocess(e,t):e;t.originalText=i;try{r=await s.parse(i,t,t)}catch(n){!function(e,t){let{loc:r}=e;if(r){let s=(0,Ht.codeFrameColumns)(t,r,{highlightCode:!0});throw e.message+="\n"+s,e.codeFrame=s,e}throw e}(n,e)}return{text:i,ast:r}}async function lp(e,t,r,s,i){let{embeddedLanguageFormatting:n,printer:{embed:a,hasPrettierIgnore:o=(()=>!1),getVisitorKeys:u}}=r;if(!a||"auto"!==n)return;if(a.length>2)throw new Error("printer.embed has too many parameters. The API changed in Prettier v3. Please update your plugin. See https://prettier.io/docs/en/plugins.html#optional-embed");let p=rt(a.getVisitorKeys??u),l=[];!function t(){let{node:s}=e;if(null===s||"object"!=typeof s||o(e))return;for(let r of p(s))Array.isArray(s[r])?e.each(t,r):e.call(t,r);let n=a(e,r);if(n){if("function"==typeof n)return void l.push({print:n,node:s,pathStack:[...e.stack]});i.set(s,n)}}();let c=e.stack;for(let{print:m,node:y,pathStack:f}of l)try{e.stack=f;let s=await m(h,t,e,r);s&&i.set(y,s)}catch(d){if(globalThis.PRETTIER_DEBUG)throw d}function h(e,t){return async function(e,t,r,s){let i=await zt({...r,...t,parentParser:r.parser,originalText:e},{passThrough:!0}),{ast:n}=await Wt(e,i);return au(await s(n,i))}(e,t,r,s)}e.stack=c}function cp(e,t){let{originalText:r,[Symbol.for("comments")]:s,locStart:i,locEnd:n,[Symbol.for("printedComments")]:a}=t,{node:o}=e,u=i(o),p=n(o);for(let l of s)i(l)>=u&&n(l)<=p&&a.add(l);return r.slice(u,p)}async function hp(e,t){({ast:e}=await mp(e,t));let r=new Map,s=new Je(e),i=ot(t),n=new Map;await lp(s,o,t,hp,n);let a=await dp(s,t,o,void 0,n);return function(e){let{[Symbol.for("comments")]:t,[Symbol.for("printedComments")]:r}=e;for(let s of t){if(!s.printed&&!r.has(s))throw new Error('Comment "'+s.value.trim()+'" was not printed. Please report this error!');delete s.printed}}(t),a;function o(e,t){return void 0===e||e===s?u(t):Array.isArray(e)?s.call((()=>u(t)),...e):s.call((()=>u(t)),e)}function u(e){i(s);let a=s.node;if(null==a)return"";let u=a&&"object"==typeof a&&void 0===e;if(u&&r.has(a))return r.get(a);let p=dp(s,t,o,e,n);return u&&r.set(a,p),p}}function dp(e,t,r,s,i){var n;let a,{node:o}=e,{printer:u}=t;return a=null!=(n=u.hasPrettierIgnore)&&n.call(u,e)?Kt(e,t):i.has(o)?i.get(o):u.print(e,t,r,s),o===t.cursorNode&&(a=lu(a,(e=>[we,e,we]))),u.printComment&&(!u.willPrintOwnComments||!u.willPrintOwnComments(e,t))&&(a=function(e,t,r){let{leading:s,trailing:i}=ju(e,r);return s||i?lu(t,(e=>[s,e,i])):t}(e,a,t)),a}async function mp(e,t){let r=e.comments??[];t[Symbol.for("comments")]=r,t[Symbol.for("tokens")]=e.tokens??[],t[Symbol.for("printedComments")]=new Set,function(e,t){let{comments:r}=e;if(delete e.comments,!Ze(r)||!t.printer.canAttachComment)return;let s=[],{locStart:i,locEnd:n,printer:{experimentalFeatures:{avoidAstMutation:a=!1}={},handleComments:o={}},originalText:u}=t,{ownLine:p=it,endOfLine:l=it,remaining:c=it}=o,h=r.map(((s,i)=>({...ku(e,s,t),comment:s,text:u,options:t,ast:e,isLastComment:r.length-1===i})));for(let[d,m]of h.entries()){let e,{comment:t,precedingNode:r,enclosingNode:o,followingNode:u,text:y,options:f,ast:D,isLastComment:x}=m;if("json"===f.parser||"json5"===f.parser||"jsonc"===f.parser||"__js_expression"===f.parser||"__ts_expression"===f.parser||"__vue_expression"===f.parser||"__vue_ts_expression"===f.parser){if(i(t)-i(D)<=0){Su(D,t);continue}if(n(t)-n(D)>=0){wu(D,t);continue}}if(a?e=[m]:(t.enclosingNode=o,t.precedingNode=r,t.followingNode=u,e=[t,y,f,D,x]),Iu(y,f,h,d))t.placement="ownLine",p(...e)||(u?Su(u,t):r?wu(r,t):Pu(o||D,t));else if(Nu(y,f,h,d))t.placement="endOfLine",l(...e)||(r?wu(r,t):u?Su(u,t):Pu(o||D,t));else if(t.placement="remaining",!c(...e))if(r&&u){let e=s.length;e>0&&s[e-1].followingNode!==u&&Bu(s,f),s.push(m)}else r?wu(r,t):u?Su(u,t):Pu(o||D,t)}if(Bu(s,t),!a)for(let d of r)delete d.precedingNode,delete d.enclosingNode,delete d.followingNode}(e,t);let{printer:{preprocess:s}}=t;return{ast:e=s?await s(e,t):e,comments:r}}function yp(e,t){let{cursorOffset:r,locStart:s,locEnd:i}=t,n=rt(t.printer.getVisitorKeys),a=e=>s(e)<=r&&i(e)>=r,o=e;for(let u of function*(e,t){let r=[e];for(let s=0;s<r.length;s++){let e=r[s];for(let s of gu(e,t))yield s,r.push(s)}}(e,{getVisitorKeys:n,filter:a}))o=u;return o}function fp(e,t){let{printer:{massageAstNode:r,getVisitorKeys:s}}=t;if(!r)return e;let i=rt(s),n=r.ignoredProperties??new Set;return function e(t,s){if(null===t||"object"!=typeof t)return t;if(Array.isArray(t))return t.map((t=>e(t,s))).filter(Boolean);let a={},o=new Set(i(t));for(let r in t)!Object.prototype.hasOwnProperty.call(t,r)||n.has(r)||(o.has(r)?a[r]=e(t[r],t):a[r]=t[r]);let u=r(t,a,s);return null!==u?u??a:void 0}(e)}function Dp(e){let t=Qt(!1,e,(e=>"Program"!==e.type&&"File"!==e.type));return-1===t?e:e.slice(0,t+1)}function xp(e,t,r,s,i=[],n){let{locStart:a,locEnd:o}=r,u=a(e),p=o(e);if(!(t>p||t<u||"rangeEnd"===n&&t===u||"rangeStart"===n&&t===p)){for(let a of vu(e,r)){let o=xp(a,t,r,s,[e,...i],n);if(o)return o}if(!s||s(e,i[0]))return{node:e,parentNodes:i}}}function gp(e,t,r){if(!t)return!1;switch(e.parser){case"flow":case"babel":case"babel-flow":case"babel-ts":case"typescript":case"acorn":case"espree":case"meriyah":case"__babel_estree":return function(e,t){return"DeclareExportDeclaration"!==t&&"TypeParameterDeclaration"!==e&&("Directive"===e||"TypeAlias"===e||"TSExportAssignment"===e||e.startsWith("Declare")||e.startsWith("TSDeclare")||e.endsWith("Statement")||e.endsWith("Declaration"))}(t.type,null==r?void 0:r.type);case"json":case"json5":case"jsonc":case"json-stringify":return er.has(t.type);case"graphql":return tr.has(t.kind);case"vue":return"root"!==t.tag}return!1}function Ep(e,t,r){let{rangeStart:s,rangeEnd:i,locStart:n,locEnd:a}=t;ze.ok(i>s);let o=e.slice(s,i).search(/\S/u),u=-1===o;if(!u)for(s+=o;i>s&&!/\S/u.test(e[i-1]);--i);let p,l,c=xp(r,s,t,((e,r)=>gp(t,e,r)),[],"rangeStart"),h=u?c:xp(r,i,t,(e=>gp(t,e)),[],"rangeEnd");if(!c||!h)return{rangeStart:0,rangeEnd:0};if(Zt(t)){let e=function(e,t){let r=[e.node,...e.parentNodes],s=new Set([t.node,...t.parentNodes]);return r.find((e=>er.has(e.type)&&s.has(e)))}(c,h);p=e,l=e}else({startNode:p,endNode:l}=function(e,t,{locStart:r,locEnd:s}){let i=e.node,n=t.node;if(i===n)return{startNode:i,endNode:n};let a=r(e.node);for(let u of Dp(t.parentNodes)){if(!(r(u)>=a))break;n=u}let o=s(t.node);for(let u of Dp(e.parentNodes)){if(!(s(u)<=o))break;if(i=u,i===n)break}return{startNode:i,endNode:n}}(c,h,t));return{rangeStart:Math.min(n(p),n(l)),rangeEnd:Math.max(a(p),a(l))}}async function Ap(e,t,r=0){if(!e||0===e.trim().length)return{formatted:"",cursorOffset:-1,comments:[]};let{ast:s,text:i}=await Wt(e,t);t.cursorOffset>=0&&(t.cursorNode=Xt(s,t));let n=await hp(s,t);r>0&&(n=Wo([Se,n],r,t.tabWidth));let a=fu(n,t);if(r>0){let e=a.formatted.trim();void 0!==a.cursorNodeStart&&(a.cursorNodeStart-=a.formatted.indexOf(e)),a.formatted=e+Io(t.endOfLine)}let o=t[Symbol.for("comments")];if(t.cursorOffset>=0){let e,r,s,n,u;if(t.cursorNode&&a.cursorNodeText?(e=t.locStart(t.cursorNode),r=i.slice(e,t.locEnd(t.cursorNode)),s=t.cursorOffset-e,n=a.cursorNodeStart,u=a.cursorNodeText):(e=0,r=i,s=t.cursorOffset,n=0,u=a.formatted),r===u)return{formatted:a.formatted,cursorOffset:n+s,comments:o};let p=r.split("");p.splice(s,0,sr);let l=function(e,t,r){return W.diff(e,t,r)}(p,u.split("")),c=n;for(let t of l)if(t.removed){if(t.value.includes(sr))break}else c+=t.count;return{formatted:a.formatted,cursorOffset:c,comments:o}}return{formatted:a.formatted,cursorOffset:-1,comments:o}}function Tp(e,t,r){return"number"!=typeof t||Number.isNaN(t)||t<0||t>e.length?r:t}function Cp(e,t){let{cursorOffset:r,rangeStart:s,rangeEnd:i}=t;return r=Tp(e,r,-1),s=Tp(e,s,0),i=Tp(e,i,e.length),{...t,cursorOffset:r,rangeStart:s,rangeEnd:i}}function Fp(e,t){let{cursorOffset:r,rangeStart:s,rangeEnd:i,endOfLine:n}=Cp(e,t),a=e.charAt(0)===rr;if(a&&(e=e.slice(1),r--,s--,i--),"auto"===n&&(n=function(e){let t=e.indexOf("\r");return t>=0?"\n"===e.charAt(t+1)?"crlf":"cr":"lf"}(e)),e.includes("\r")){let t=t=>No(e.slice(0,Math.max(t,0)),"\r\n");r-=t(r),s-=t(s),i-=t(i),e=function(e){return U(!1,e,/\r\n?/gu,"\n")}(e)}return{hasBOM:a,text:e,options:Cp(e,{...t,cursorOffset:r,rangeStart:s,rangeEnd:i,endOfLine:n})}}async function bp(e,t){let r=await ap(t);return!r.hasPragma||r.hasPragma(e)}async function Sp(e,t){let r,{hasBOM:s,text:i,options:n}=Fp(e,await zt(t));return n.rangeStart>=n.rangeEnd&&""!==i||n.requirePragma&&!(await bp(i,n))?{formatted:e,cursorOffset:t.cursorOffset,comments:[]}:(n.rangeStart>0||n.rangeEnd<i.length?r=await async function(e,t){let{ast:r,text:s}=await Wt(e,t),{rangeStart:i,rangeEnd:n}=Ep(s,t,r),a=s.slice(i,n),o=Math.min(i,s.lastIndexOf("\n",i)+1),u=s.slice(o,i).match(/^\s*/u)[0],p=_e(u,t.tabWidth),l=await Ap(a,{...t,rangeStart:0,rangeEnd:Number.POSITIVE_INFINITY,cursorOffset:t.cursorOffset>i&&t.cursorOffset<=n?t.cursorOffset-i:-1,endOfLine:"lf"},p),c=l.formatted.trimEnd(),{cursorOffset:h}=t;h>n?h+=c.length-a.length:l.cursorOffset>=0&&(h=l.cursorOffset+i);let d=s.slice(0,i)+c+s.slice(n);if("lf"!==t.endOfLine){let e=Io(t.endOfLine);h>=0&&"\r\n"===e&&(h+=No(d.slice(0,h),"\n")),d=U(!1,d,"\n",e)}return{formatted:d,cursorOffset:h,comments:l.comments}}(i,n):(!n.requirePragma&&n.insertPragma&&n.printer.insertPragma&&!(await bp(i,n))&&(i=n.printer.insertPragma(i)),r=await Ap(i,n)),s&&(r.formatted=rr+r.formatted,r.cursorOffset>=0&&r.cursorOffset++),r)}async function Pp(e,t,r){let{text:s,options:i}=Fp(e,await zt(t)),n=await Wt(s,i);return r&&(r.preprocessForPrint&&(n.ast=await mp(n.ast,i)),r.massage&&(n.ast=Gt(n.ast,i))),n}async function wp(e,t){return t=await zt(t),fu(await hp(e,t),t)}async function vp(e,t){let{formatted:r}=await Sp(function(e){let t=Object.create(null),r=new Set;return function e(t,r,i){var n,a;if("string"==typeof t)return JSON.stringify(t);if(Array.isArray(t)){let r=t.map(e).filter(Boolean);return 1===r.length?r[0]:`[${r.join(", ")}]`}if(t.type===ae){let e=(null==(n=null==i?void 0:i[r+1])?void 0:n.type)===ue;return t.literal?e?"literalline":"literallineWithoutBreakParent":t.hard?e?"hardline":"hardlineWithoutBreakParent":t.soft?"softline":"line"}if(t.type===ue)return(null==(a=null==i?void 0:i[r-1])?void 0:a.type)===ae&&i[r-1].hard?void 0:"breakParent";if(t.type===Z)return"trim";if(t.type===Y)return"indent("+e(t.contents)+")";if(t.type===Q)return t.n===Number.NEGATIVE_INFINITY?"dedentToRoot("+e(t.contents)+")":t.n<0?"dedent("+e(t.contents)+")":"root"===t.n.type?"markAsRoot("+e(t.contents)+")":"align("+JSON.stringify(t.n)+", "+e(t.contents)+")";if(t.type===re)return"ifBreak("+e(t.breakContents)+(t.flatContents?", "+e(t.flatContents):"")+(t.groupId?(t.flatContents?"":', ""')+`, { groupId: ${s(t.groupId)} }`:"")+")";if(t.type===se){let r=[];t.negate&&r.push("negate: true"),t.groupId&&r.push(`groupId: ${s(t.groupId)}`);let i=r.length>0?`, { ${r.join(", ")} }`:"";return`indentIfBreak(${e(t.contents)}${i})`}if(t.type===ee){let r=[];t.break&&"propagated"!==t.break&&r.push("shouldBreak: true"),t.id&&r.push(`id: ${s(t.id)}`);let i=r.length>0?`, { ${r.join(", ")} }`:"";return t.expandedStates?`conditionalGroup([${t.expandedStates.map((t=>e(t))).join(",")}]${i})`:`group(${e(t.contents)}${i})`}if(t.type===te)return`fill([${t.parts.map((t=>e(t))).join(", ")}])`;if(t.type===ie)return"lineSuffix("+e(t.contents)+")";if(t.type===ne)return"lineSuffixBoundary";if(t.type===oe)return`label(${JSON.stringify(t.label)}, ${e(t.contents)})`;throw new Error("Unknown doc type "+t.type)}(Xo(e));function s(e){if("symbol"!=typeof e)return JSON.stringify(String(e));if(e in t)return t[e];let s=e.description||"symbol";for(let i=0;;i++){let n=s+(i>0?` #${i}`:"");if(!r.has(n))return r.add(n),t[e]=`Symbol.for(${JSON.stringify(n)})`}}}(e),{...t,parser:"__js_expression"});return r}async function kp(e,t){t=await zt(t);let{ast:r}=await Wt(e,t);return hp(r,t)}async function Ip(e,t){return fu(e,await zt(t))}function Np(e,t){if(!1===t)return!1;if("/"===e.charAt(t)&&"*"===e.charAt(t+1))for(let r=t+2;r<e.length;++r)if("*"===e.charAt(r)&&"/"===e.charAt(r+1))return r+2;return t}function Bp(e,t){return!1!==t&&("/"===e.charAt(t)&&"/"===e.charAt(t+1)?Ge(e,t):t)}function Lp(e,t){let r=null,s=t;for(;s!==r;)r=s,s=Ke(e,s),s=lr(e,s),s=cr(e,s),s=Ye(e,s);return s}function Mp(e,t){let r=null,s=t;for(;s!==r;)r=s,s=Xe(e,s),s=lr(e,s),s=Ke(e,s);return s=cr(e,s),s=Ye(e,s),!1!==s&&Qe(e,s)}function Op(e,t){let r=e.lastIndexOf("\n");return-1===r?0:_e(e.slice(r+1).match(/^[\t ]*/u)[0],t)}function jp(e,t){let r=e.match(new RegExp(`(${function(e){if("string"!=typeof e)throw new TypeError("Expected a string");return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}(t)})+`,"gu"));return null===r?0:r.reduce(((e,r)=>Math.max(e,r.length/t.length)),0)}function _p(e,t){let r=hr(e,t);return!1===r?"":e.charAt(r)}function Rp(e,t,r){for(let s=t;s<r;++s)if("\n"===e.charAt(s))return!0;return!1}function Up(e,t,r={}){return Ke(e,r.backwards?t-1:t,r)!==t}function $p(e,t,r){let s='"'===t?"'":'"';return t+U(!1,e,/\\(.)|(["'])/gsu,((e,i,n)=>i===s?i:n===t?"\\"+n:n||(r&&/^[^\n\r"'0-7\\bfnrt-vx\u2028\u2029]$/u.test(i)?i:"\\"+i)))+t}function qp(e,t,r){return hr(e,r(t))}function Jp(e,t){return 2===arguments.length||"number"==typeof t?hr(e,t):qp(...arguments)}function Vp(e,t,r){return at(e,r(t))}function zp(e,t){return 2===arguments.length||"number"==typeof t?at(e,t):Vp(...arguments)}function Hp(e,t,r){return dr(e,r(t))}function Wp(e,t){return 2===arguments.length||"number"==typeof t?dr(e,t):Hp(...arguments)}function Kp(e,t=1){return async(...r)=>{let s=r[t]??{},i=s.plugins??[];return r[t]={...s,plugins:Array.isArray(i)?i:Object.values(i)},e(...r)}}async function Xp(e,t){let{formatted:r}=await Er(e,{...t,cursorOffset:-1});return r}async function Gp(e,t){return await Xp(e,t)===e}function Yp(e){return(t,r,s)=>{let i=!(null==s||!s.backwards);if(!1===r)return!1;let{length:n}=t,a=r;for(;a>=0&&a<n;){let r=t.charAt(a);if(e instanceof RegExp){if(!e.test(r))return a}else if(!e.includes(r))return a;i?a--:a++}return(-1===a||a===n)&&a}}function Qp(e,t){if(!1===t)return!1;if("/"===e.charAt(t)&&"*"===e.charAt(t+1))for(let r=t+2;r<e.length;++r)if("*"===e.charAt(r)&&"/"===e.charAt(r+1))return r+2;return t}function Zp(e,t,r){let s=!(null==r||!r.backwards);if(!1===t)return!1;let i=e.charAt(t);if(s){if("\r"===e.charAt(t-1)&&"\n"===i)return t-2;if("\n"===i||"\r"===i||"\u2028"===i||"\u2029"===i)return t-1}else{if("\r"===i&&"\n"===e.charAt(t+1))return t+2;if("\n"===i||"\r"===i||"\u2028"===i||"\u2029"===i)return t+1}return t}function el(e,t){return!1!==t&&("/"===e.charAt(t)&&"/"===e.charAt(t+1)?Or(e,t):t)}function tl(e,t){let r=null,s=t;for(;s!==r;)r=s,s=Mr(e,s),s=jr(e,s),s=Rr(e,s),s=_r(e,s);return s}function rl(e){let t=[];for(let s of e)try{return s()}catch(r){t.push(r)}throw Object.assign(new Error("All combinations failed"),{errors:t})}function sl(e){if(!e.startsWith("#!"))return"";let t=e.indexOf("\n");return-1===t?e:e.slice(0,t)}function il(e){return Array.isArray(e)&&e.length>0}function nl(e){var t,r,s;let i=(null==(t=e.range)?void 0:t[0])??e.start,n=null==(s=(null==(r=e.declaration)?void 0:r.decorators)??e.decorators)?void 0:s[0];return n?Math.min(nl(n),i):i}function al(e){var t;return(null==(t=e.range)?void 0:t[1])??e.end}function ol(e){let t=`*${e.value}*`.split("\n");return t.length>1&&t.every((e=>"*"===e.trimStart()[0]))}function ul(e){return Hr(e)&&"*"===e.value[0]&&/@(?:type|satisfies)\b/u.test(e.value)}function pl(e){if(null!==Xr&&(Xr.property,1)){let e=Xr;return Xr=pl.prototype=null,e}return Xr=pl.prototype=e??Object.create(null),new pl}function ll(e,t="type"){return function(e){pl(e)}(e),function(r){let s=r[t],i=e[s];if(!Array.isArray(i))throw Object.assign(new Error(`Missing visitor keys for '${s}'.`),{node:r});return i}}function cl(e,t){if(null===e||"object"!=typeof e)return e;if(Array.isArray(e)){for(let r=0;r<e.length;r++)e[r]=cl(e[r],t);return e}let r=Gr(e);for(let s=0;s<r.length;s++)e[r[s]]=cl(e[r[s]],t);return t(e)||e}function hl(e,t){let{parser:r,text:s}=t;if("File"===e.type&&e.program.interpreter){let{program:{interpreter:t},comments:r}=e;delete e.program.interpreter,r.unshift(t)}if("babel"===r){let t=new Set;e=Yr(e,(e=>{var r;null!=(r=e.leadingComments)&&r.some(Kr)&&t.add(nl(e))})),e=Yr(e,(e=>{if("ParenthesizedExpression"===e.type){let{expression:r}=e;if("TypeCastExpression"===r.type)return r.range=[...e.range],r;let s=nl(e);if(!t.has(s))return r.extra={...r.extra,parenthesized:!0},r}}))}if(e=Yr(e,(t=>{var i;switch(t.type){case"LogicalExpression":if(dl(t))return ml(t);break;case"VariableDeclaration":{let e=Vr(!1,t.declarations,-1);null!=e&&e.init&&";"!==s[al(e)]&&(t.range=[nl(t),al(e)]);break}case"TSParenthesizedType":return t.typeAnnotation;case"TSTypeParameter":if("string"==typeof t.name){let e=nl(t);t.name={type:"Identifier",name:t.name,range:[e,e+t.name.length]}}break;case"TopicReference":e.extra={...e.extra,__isUsingHackPipeline:!0};break;case"ExportAllDeclaration":if("meriyah"===r&&"Identifier"===(null==(i=t.exported)?void 0:i.type)){let{exported:e}=t,r=s.slice(nl(e),al(e));(r.startsWith('"')||r.startsWith("'"))&&(t.exported={...t.exported,type:"Literal",value:t.exported.name,raw:r})}break;case"TSUnionType":case"TSIntersectionType":if(1===t.types.length)return t.types[0]}})),zr(e.comments)){let t=Vr(!1,e.comments,-1);for(let r=e.comments.length-2;r>=0;r--){let s=e.comments[r];al(s)===nl(t)&&Hr(s)&&Hr(t)&&Wr(s)&&Wr(t)&&(e.comments.splice(r+1,1),s.value+="*//*"+t.value,s.range=[nl(s),al(t)]),t=s}}return"Program"===e.type&&(e.range=[0,s.length]),e}function dl(e){return"LogicalExpression"===e.type&&"LogicalExpression"===e.right.type&&e.operator===e.right.operator}function ml(e){return dl(e)?ml({type:"LogicalExpression",operator:e.operator,left:ml({type:"LogicalExpression",operator:e.operator,left:e.left,right:e.right.left,range:[nl(e.left),al(e.right.left)]}),right:e.right.right,range:[nl(e),al(e)]}):e}function yl(e,t){let r=new SyntaxError(e+" ("+t.loc.start.line+":"+t.loc.start.column+")");return Object.assign(r,t)}function fl(e){let{message:t,loc:{line:r,column:s},reasonCode:i}=e,n=e;("MissingPlugin"===i||"MissingOneOfPlugins"===i)&&(t="Unexpected token.",n=void 0);let a=` (${r}:${s})`;return t.endsWith(a)&&(t=t.slice(0,-a.length)),Zr(t,{loc:{start:{line:r,column:s+1}},cause:n})}function Dl(e){let t=qr(e);t&&(e=e.slice(t.length+1));let{pragmas:r,comments:s}=function(e){e=rs(!1,e.replace(is,"").replace(ss,""),ls,"$1");let t="";for(;t!==e;)t=e,e=rs(!1,e,us,"\n$1 $2\n");e=e.replace(os,"").trimEnd();let r,s=Object.create(null),i=rs(!1,e,ps,"").replace(os,"").trimEnd();for(;r=ps.exec(e);){let e=rs(!1,r[2],as,"");if("string"==typeof s[r[1]]||Array.isArray(s[r[1]])){let t=s[r[1]];s[r[1]]=[...cs,...Array.isArray(t)?t:[t],e]}else s[r[1]]=e}return{comments:i,pragmas:s}}(function(e){let t=e.match(ns);return t?t[0].trimStart():""}(e));return{shebang:t,text:e,pragmas:r,comments:s}}function xl(e){let{pragmas:t}=Dl(e);return Object.prototype.hasOwnProperty.call(t,"prettier")||Object.prototype.hasOwnProperty.call(t,"format")}function gl(e){return e="function"==typeof e?{parse:e}:e,{astFormat:"estree",hasPragma:xl,locStart:nl,locEnd:al,...e}}function El(e){let{filepath:t}=e;if(t){if(t=t.toLowerCase(),t.endsWith(".cjs"))return"script";if(t.endsWith(".mjs"))return"module"}}function Al(e,t){let{type:r="JsExpressionRoot",rootMarker:s,text:i}=t,{tokens:n,comments:a}=e;return delete e.tokens,delete e.comments,{tokens:n,comments:a,type:r,node:e,range:[0,i.length],rootMarker:s}}function Tl({isExpression:e=!1,optionsCombinations:t}){return(r,s={})=>{if(("babel"===s.parser||"__babel_estree"===s.parser)&&function(e,t){var r;if(null!=(r=t.filepath)&&r.endsWith(".js.flow"))return!0;let s=qr(e);s&&(e=e.slice(s.length));let i=Ur(e,0);return!1!==i&&(e=e.slice(0,i)),Es.test(e)}(r,s))return s.parser="babel-flow",Ps.parse(r,s);let i=t;"script"===(s.__babelSourceType??ds(s))&&(i=i.map((e=>({...e,sourceType:"script"}))));let n=/%[A-Z]/u.test(r);r.includes("|>")?i=(n?[...xs,Ds]:xs).flatMap((e=>i.map((t=>gs([e],t))))):n&&(i=i.map((e=>gs([Ds],e))));let a,o=e?Lr.parseExpression:Lr.parse;try{a=$r(i.map((e=>()=>function(e,t,r){let s=e(t,r),i=s.errors.find((e=>!As.has(e.reasonCode)));if(i)throw i;return s}(o,r,e))))}catch({errors:[u]}){throw es(u)}return e&&(a=ms(a,{text:r,rootMarker:s.rootMarker})),Qr(a,{parser:"babel",text:r})}}function Cl(e={}){let{allowComments:t=!0}=e;return function(e){let r;try{r=(0,ks.parseExpression)(e,{tokens:!0,ranges:!0,attachComment:!1})}catch(s){throw es(s)}if(!t&&zr(r.comments))throw Fl(r.comments[0],"Comment");return bl(r),ms(r,{type:"JsonRoot",text:e})}}function Fl(e,t){let[r,s]=[e.loc.start,e.loc.end].map((({line:e,column:t})=>({line:e,column:t+1})));return Zr(`${t} is not allowed in JSON.`,{loc:{start:r,end:s}})}function bl(e){switch(e.type){case"ArrayExpression":for(let t of e.elements)null!==t&&bl(t);return;case"ObjectExpression":for(let t of e.properties)bl(t);return;case"ObjectProperty":if(e.computed)throw Fl(e.key,"Computed key");if(e.shorthand)throw Fl(e.key,"Shorthand property");return"Identifier"!==e.key.type&&bl(e.key),void bl(e.value);case"UnaryExpression":{let{operator:t,argument:r}=e;if("+"!==t&&"-"!==t)throw Fl(e,`Operator '${e.operator}'`);if("NumericLiteral"===r.type||"Identifier"===r.type&&("Infinity"===r.name||"NaN"===r.name))return;throw Fl(r,`Operator '${t}' before '${r.type}'`)}case"Identifier":if("Infinity"!==e.name&&"NaN"!==e.name&&"undefined"!==e.name)throw Fl(e,`Identifier '${e.name}'`);return;case"TemplateLiteral":if(zr(e.expressions))throw Fl(e.expressions[0],"'TemplateLiteral' with expression");for(let t of e.quasis)bl(t);return;case"NullLiteral":case"BooleanLiteral":case"NumericLiteral":case"StringLiteral":case"TemplateElement":return;default:throw Fl(e,`'${e.type}'`)}}function Sl(e){return null!==e&&"object"==typeof e}function*Pl(e,t){let{getVisitorKeys:r,filter:s=(()=>!0)}=t,i=e=>Ks(e)&&s(e);for(let n of r(e)){let t=e[n];if(Array.isArray(t))for(let e of t)i(e)&&(yield e);else i(t)&&(yield t)}}function wl(e,{getVisitorKeys:t,predicate:r}){for(let s of function*(e,t){let r=[e];for(let s=0;s<r.length;s++){let e=r[s];for(let s of Pl(e,t))yield s,r.push(s)}}(e,{getVisitorKeys:t}))if(r(s))return!0;return!1}function vl(e){if(!e)return 0;if(!Ys.test(e))return e.length;e=e.replace(Xs(),"  ");let t=0;for(let r of e){let e=r.codePointAt(0);e<=31||e>=127&&e<=159||e>=768&&e<=879||(t+=Gs(e)?1:2)}return t}function kl(e){return(t,r,s)=>{let i=!(null==s||!s.backwards);if(!1===r)return!1;let{length:n}=t,a=r;for(;a>=0&&a<n;){let r=t.charAt(a);if(e instanceof RegExp){if(!e.test(r))return a}else if(!e.includes(r))return a;i?a--:a++}return(-1===a||a===n)&&a}}function Il(e,t,r){let s=!(null==r||!r.backwards);if(!1===t)return!1;let i=e.charAt(t);if(s){if("\r"===e.charAt(t-1)&&"\n"===i)return t-2;if("\n"===i||"\r"===i||"\u2028"===i||"\u2029"===i)return t-1}else{if("\r"===i&&"\n"===e.charAt(t+1))return t+2;if("\n"===i||"\r"===i||"\u2028"===i||"\u2029"===i)return t+1}return t}function Nl(e,t,r={}){let s=Zs(e,r.backwards?t-1:t,r);return s!==ri(e,s,r)}function Bl(e,t){if(!1===t)return!1;if("/"===e.charAt(t)&&"*"===e.charAt(t+1))for(let r=t+2;r<e.length;++r)if("*"===e.charAt(r)&&"/"===e.charAt(r+1))return r+2;return t}function Ll(e,t){return!1!==t&&("/"===e.charAt(t)&&"/"===e.charAt(t+1)?ti(e,t):t)}function Ml(e,t){let r=null,s=t;for(;s!==r;)r=s,s=ei(e,s),s=ii(e,s),s=Zs(e,s);return s=ni(e,s),s=ri(e,s),!1!==s&&si(e,s)}function Ol(e){return Array.isArray(e)&&e.length>0}function jl(e,t){let r=!0===t||t===ui?ui:pi,s=r===ui?pi:ui,i=0,n=0;for(let a of e)a===r?i++:a===s&&n++;return i>n?s:r}function _l(e,t,r){let s='"'===t?"'":'"';return t+zs(!1,e,/\\(.)|(["'])/gsu,((e,i,n)=>i===s?i:n===t?"\\"+n:n||(r&&/^[^\n\r"'0-7\\bfnrt-vx\u2028\u2029]$/u.test(i)?i:"\\"+i)))+t}function Rl(e,t){let r=e.slice(1,-1);return ci(r,"json"===t.parser||"jsonc"===t.parser||"json5"===t.parser&&"preserve"===t.quoteProps&&!t.singleQuote?'"':t.__isInHtmlAttribute?"'":li(r,t.singleQuote),!("css"===t.parser||"less"===t.parser||"scss"===t.parser||t.__embeddedInHtml))}function Ul(e){var t,r,s;let i=(null==(t=e.range)?void 0:t[0])??e.start,n=null==(s=(null==(r=e.declaration)?void 0:r.decorators)??e.decorators)?void 0:s[0];return n?Math.min(Ul(n),i):i}function $l(e){var t;return(null==(t=e.range)?void 0:t[1])??e.end}function ql(e,t){let r=Ul(e);return Number.isInteger(r)&&r===Ul(t)}function Jl(e,t){return ql(e,t)&&function(e,t){let r=$l(e);return Number.isInteger(r)&&r===$l(t)}(e,t)}function Vl(e){if(null!==di&&(di.property,1)){let e=di;return di=Vl.prototype=null,e}return di=Vl.prototype=e??Object.create(null),new Vl}function zl(e,t="type"){return function(e){Vl(e)}(e),function(r){let s=r[t],i=e[s];if(!Array.isArray(i))throw Object.assign(new Error(`Missing visitor keys for '${s}'.`),{node:r});return i}}function Hl(e){let t=new Set(e);return e=>t.has(null==e?void 0:e.type)}function Wl(e,t){return t.some((t=>function(e,t){let r=t.split(".");for(let s=r.length-1;s>=0;s--){let t=r[s];if(0===s)return"Identifier"===e.type&&e.name===t;if("MemberExpression"!==e.type||e.optional||e.computed||"Identifier"!==e.property.type||e.property.name!==t)return!1;e=e.object}}(e,t)))}function Kl({type:e}){return e.startsWith("TS")&&e.endsWith("Keyword")}function Xl(e,t){return t(e)||wl(e,{getVisitorKeys:yi,predicate:t})}function Gl(e){return"AssignmentExpression"===e.type||"BinaryExpression"===e.type||"LogicalExpression"===e.type||"NGPipeExpression"===e.type||"ConditionalExpression"===e.type||Li(e)||Mi(e)||"SequenceExpression"===e.type||"TaggedTemplateExpression"===e.type||"BindExpression"===e.type||"UpdateExpression"===e.type&&!e.prefix||Wi(e)||"TSNonNullExpression"===e.type||"ChainExpression"===e.type}function Yl(e){return e.expressions?e.expressions[0]:e.left??e.test??e.callee??e.object??e.tag??e.argument??e.expression}function Ql(e){if(e.expressions)return["expressions",0];if(e.left)return["left"];if(e.test)return["test"];if(e.object)return["object"];if(e.callee)return["callee"];if(e.tag)return["tag"];if(e.argument)return["argument"];if(e.expression)return["expression"];throw new Error("Unexpected node has no left side.")}function Zl(e){return"NumericLiteral"===e.type||"Literal"===e.type&&"number"==typeof e.value}function ec(e){return"UnaryExpression"===e.type&&("+"===e.operator||"-"===e.operator)&&Zl(e.argument)}function tc(e){return!(!e||"StringLiteral"!==e.type&&("Literal"!==e.type||"string"!=typeof e.value))}function rc(e){return"RegExpLiteral"===e.type||"Literal"===e.type&&!!e.regex}function sc(e){return Li(e)&&"Identifier"===e.callee.type&&["async","inject","fakeAsync","waitForAsync"].includes(e.callee.name)}function ic(e){return e.method&&"init"===e.kind||"get"===e.kind||"set"===e.kind}function nc(e){return!("ObjectTypeProperty"!==e.type&&"ObjectTypeInternalSlot"!==e.type||e.static||e.method||"get"===e.kind||"set"===e.kind||"FunctionTypeAnnotation"!==e.value.type)}function ac(e){return Mi(e)||"BindExpression"===e.type&&!!e.object}function oc(e){return Ei(e)||xi(e)||Ii(e)||("GenericTypeAnnotation"===e.type||"TSTypeReference"===e.type)&&!e.typeParameters&&!e.typeArguments}function uc(e,t){if("CallExpression"!==(null==e?void 0:e.type)||e.optional)return!1;let r=Sc(e);if(1===r.length){if(sc(e)&&uc(t))return wi(r[0]);if(function(e){return"Identifier"===e.type&&("beforeEach"===e.name||"beforeAll"===e.name||"afterEach"===e.name||"afterAll"===e.name)}(e.callee))return sc(r[0])}else if((2===r.length||3===r.length)&&("TemplateLiteral"===r[0].type||tc(r[0]))&&function(e){return gi(e,Ni)}(e.callee))return!(r[2]&&!Zl(r[2]))&&((2===r.length?wi(r[1]):function(e){return"FunctionExpression"===e.type||"ArrowFunctionExpression"===e.type&&"BlockStatement"===e.body.type}(r[1])&&bc(r[1]).length<=1)||sc(r[1]));return!1}function pc(e,t=5){return lc(e,t)<=t}function lc(e,t){let r=0;for(let s in e){let i=e[s];if(i&&"object"==typeof i&&"string"==typeof i.type&&(r++,r+=lc(i,t-r)),r>t)return r}return r}function cc(e,t){let{printWidth:r}=t;if(Ic(e))return!1;let s=r*Oi;if("ThisExpression"===e.type||"Identifier"===e.type&&e.name.length<=s||ec(e)&&!Ic(e.argument))return!0;let i="Literal"===e.type&&"regex"in e&&e.regex.pattern||"RegExpLiteral"===e.type&&e.pattern;return i?i.length<=s:tc(e)?hi(xc(e),t).length<=s:"TemplateLiteral"===e.type?0===e.expressions.length&&e.quasis[0].value.raw.length<=s&&!e.quasis[0].value.raw.includes("\n"):"UnaryExpression"===e.type?cc(e.argument,{printWidth:r}):"CallExpression"===e.type&&0===e.arguments.length&&"Identifier"===e.callee.type?e.callee.name.length<=s-2:bi(e)}function hc(e,t){return vi(t)?kc(t):Ic(t,Vi.Leading,(t=>si(e,$l(t))))}function dc(e){return e.quasis.some((e=>e.value.raw.includes("\n")))}function mc(e,t){return("TemplateLiteral"===e.type&&dc(e)||"TaggedTemplateExpression"===e.type&&dc(e.quasi))&&!si(t,Ul(e),{backwards:!0})}function yc(e){if(!Ic(e))return!1;let t=Ws(!1,Nc(e,Vi.Dangling),-1);return t&&!Di(t)}function fc(e){let{node:t,parent:r,key:s}=e;return"callee"===s&&Li(t)&&Li(r)&&r.arguments.length>0&&t.arguments.length>r.arguments.length}function Dc(e,t=2){if(t<=0)return!1;if("ChainExpression"===e.type||"TSNonNullExpression"===e.type)return Dc(e.expression,t);let r=e=>Dc(e,t-1);if(rc(e))return Qs(e.pattern??e.regex.pattern)<=5;if(bi(e)||Si(e)||"ArgumentPlaceholder"===e.type)return!0;if("TemplateLiteral"===e.type)return e.quasis.every((e=>!e.value.raw.includes("\n")))&&e.expressions.every(r);if(Fi(e))return e.properties.every((e=>!e.computed&&(e.shorthand||e.value&&r(e.value))));if(Ci(e))return e.elements.every((e=>null===e||r(e)));if(Bc(e)){if("ImportExpression"===e.type||Dc(e.callee,t)){let s=Sc(e);return s.length<=t&&s.every(r)}return!1}return Mi(e)?Dc(e.object,t)&&Dc(e.property,t):!!("UnaryExpression"===e.type&&ji.has(e.operator)||"UpdateExpression"===e.type)&&Dc(e.argument,t)}function xc(e){var t;return(null==(t=e.extra)?void 0:t.raw)??e.raw}function gc(e){return e}function Ec(e,t="es5"){return"es5"===e.trailingComma&&"es5"===t||"all"===e.trailingComma&&("all"===t||"es5"===t)}function Ac(e,t){switch(e.type){case"BinaryExpression":case"LogicalExpression":case"AssignmentExpression":case"NGPipeExpression":return Ac(e.left,t);case"MemberExpression":case"OptionalMemberExpression":return Ac(e.object,t);case"TaggedTemplateExpression":return"FunctionExpression"!==e.tag.type&&Ac(e.tag,t);case"CallExpression":case"OptionalCallExpression":return"FunctionExpression"!==e.callee.type&&Ac(e.callee,t);case"ConditionalExpression":return Ac(e.test,t);case"UpdateExpression":return!e.prefix&&Ac(e.argument,t);case"BindExpression":return e.object&&Ac(e.object,t);case"SequenceExpression":return Ac(e.expressions[0],t);case"ChainExpression":case"TSSatisfiesExpression":case"TSAsExpression":case"TSNonNullExpression":case"AsExpression":case"AsConstExpression":case"SatisfiesExpression":return Ac(e.expression,t);default:return t(e)}}function Tc(e,t){return!(Cc(t)!==Cc(e)||"**"===e||_i[e]&&_i[t]||"%"===t&&Ri[e]||"%"===e&&Ri[t]||t!==e&&Ri[t]&&Ri[e]||Ui[e]&&Ui[t])}function Cc(e){return $i.get(e)}function Fc(e){var t;return!!e.rest||"RestElement"===(null==(t=Ws(!1,bc(e),-1))?void 0:t.type)}function bc(e){if(qi.has(e))return qi.get(e);let t=[];return e.this&&t.push(e.this),Array.isArray(e.parameters)?t.push(...e.parameters):Array.isArray(e.params)&&t.push(...e.params),e.rest&&t.push(e.rest),qi.set(e,t),t}function Sc(e){if(Ji.has(e))return Ji.get(e);if("ChainExpression"===e.type)return Sc(e.expression);let t=e.arguments;return"ImportExpression"===e.type&&(t=[e.source],e.attributes&&t.push(e.attributes),e.options&&t.push(e.options)),Ji.set(e,t),t}function Pc(e,t){let{node:r}=e;if("ChainExpression"===r.type)return e.call((()=>Pc(e,t)),"expression");"ImportExpression"===r.type?(e.call((e=>t(e,0)),"source"),r.attributes&&e.call((e=>t(e,1)),"attributes"),r.options&&e.call((e=>t(e,1)),"options")):e.each(t,"arguments")}function wc(e,t){let r=[];if("ChainExpression"===e.type&&(e=e.expression,r.push("expression")),"ImportExpression"===e.type){if(0===t||t===(e.attributes||e.options?-2:-1))return[...r,"source"];if(e.attributes&&(1===t||-1===t))return[...r,"attributes"];if(e.options&&(1===t||-1===t))return[...r,"options"];throw new RangeError("Invalid argument index")}if(t<0&&(t=e.arguments.length+t),t<0||t>=e.arguments.length)throw new RangeError("Invalid argument index");return[...r,"arguments",t]}function vc(e){return"prettier-ignore"===e.value.trim()&&!e.unignore}function kc(e){return(null==e?void 0:e.prettierIgnore)||Ic(e,Vi.PrettierIgnore)}function Ic(e,t,r){if(!oi(null==e?void 0:e.comments))return!1;let s=zi(t,r);return!s||e.comments.some(s)}function Nc(e,t,r){if(!Array.isArray(null==e?void 0:e.comments))return[];let s=zi(t,r);return s?e.comments.filter(s):e.comments}function Bc(e){return Li(e)||"NewExpression"===e.type||"ImportExpression"===e.type}function Lc(e){return e&&("ObjectProperty"===e.type||"Property"===e.type&&!ic(e))}function Mc(e,t,r){var s,i;if("Program"===e.type&&delete t.sourceType,("BigIntLiteral"===e.type||"BigIntLiteralTypeAnnotation"===e.type)&&e.value&&(t.value=e.value.toLowerCase()),("BigIntLiteral"===e.type||"Literal"===e.type)&&e.bigint&&(t.bigint=e.bigint.toLowerCase()),"DecimalLiteral"===e.type&&(t.value=Number(e.value)),"Literal"===e.type&&t.decimal&&(t.decimal=Number(e.decimal)),"EmptyStatement"===e.type||"JSXText"===e.type||"JSXExpressionContainer"===e.type&&("Literal"===e.expression.type||"StringLiteral"===e.expression.type)&&" "===e.expression.value)return null;if(("Property"===e.type||"ObjectProperty"===e.type||"MethodDefinition"===e.type||"ClassProperty"===e.type||"ClassMethod"===e.type||"PropertyDefinition"===e.type||"TSDeclareMethod"===e.type||"TSPropertySignature"===e.type||"ObjectTypeProperty"===e.type||"ImportAttribute"===e.type)&&e.key&&!e.computed){let{key:r}=e;tc(r)||Zl(r)?t.key=String(r.value):"Identifier"===r.type&&(t.key=r.name)}if("JSXElement"===e.type&&"style"===e.openingElement.name.name&&e.openingElement.attributes.some((e=>"JSXAttribute"===e.type&&"jsx"===e.name.name)))for(let{type:a,expression:o}of t.children)"JSXExpressionContainer"===a&&"TemplateLiteral"===o.type&&Yi(o);"JSXAttribute"===e.type&&"css"===e.name.name&&"JSXExpressionContainer"===e.value.type&&"TemplateLiteral"===e.value.expression.type&&Yi(t.value.expression),"JSXAttribute"===e.type&&"Literal"===(null==(s=e.value)?void 0:s.type)&&/["']|&quot;|&apos;/u.test(e.value.value)&&(t.value.value=zs(!1,e.value.value,/["']|&quot;|&apos;/gu,'"'));let n=e.expression||e.callee;if("Decorator"===e.type&&"CallExpression"===n.type&&"Component"===n.callee.name&&1===n.arguments.length){let r=e.expression.arguments[0].properties;for(let[e,s]of t.expression.arguments[0].properties.entries())switch(r[e].key.name){case"styles":Ci(s.value)&&Yi(s.value.elements[0]);break;case"template":"TemplateLiteral"===s.value.type&&Yi(s.value)}}"TaggedTemplateExpression"===e.type&&("MemberExpression"===e.tag.type||"Identifier"===e.tag.type&&("gql"===e.tag.name||"graphql"===e.tag.name||"css"===e.tag.name||"md"===e.tag.name||"markdown"===e.tag.name||"html"===e.tag.name)||"CallExpression"===e.tag.type)&&Yi(t.quasi),"TemplateLiteral"===e.type&&(null!=(i=e.leadingComments)&&i.some((e=>Di(e)&&["GraphQL","HTML"].some((t=>e.value===` ${t} `))))||"CallExpression"===r.type&&"graphql"===r.callee.name||!e.leadingComments)&&Yi(t),"ChainExpression"===e.type&&"TSNonNullExpression"===e.expression.type&&(t.type="TSNonNullExpression",t.expression.type="ChainExpression"),"TSMappedType"===e.type&&(delete t.key,delete t.constraint),"TSEnumDeclaration"===e.type&&delete t.body}function Oc(e){if("string"==typeof e)return Zi;if(Array.isArray(e))return en;if(!e)return;let{type:t}=e;return yn.has(t)?t:void 0}function jc(e,t,r,s){let i=[e];for(;i.length>0;){let e=i.pop();if(e===En){r(i.pop());continue}r&&i.push(e,En);let n=fn(e);if(!n)throw new gn(e);if(!1!==(null==t?void 0:t(e)))switch(n){case en:case on:{let t=n===en?e:e.parts;for(let e=t.length-1;e>=0;--e)i.push(t[e]);break}case un:i.push(e.flatContents,e.breakContents);break;case an:if(s&&e.expandedStates)for(let t=e.expandedStates.length-1;t>=0;--t)i.push(e.expandedStates[t]);else i.push(e.contents);break;case sn:case rn:case pn:case dn:case ln:i.push(e.contents);break;case Zi:case tn:case nn:case cn:case hn:case mn:break;default:throw new gn(e)}}}function _c(e){return Cn(e),{type:rn,contents:e}}function Rc(e,t){return Cn(t),{type:sn,contents:t,n:e}}function Uc(e,t={}){return Cn(e),Fn(t.expandedStates,!0),{type:an,id:t.id,contents:e,break:!!t.shouldBreak,expandedStates:t.expandedStates}}function $c(e){return Rc(Number.NEGATIVE_INFINITY,e)}function qc(e){return Rc(-1,e)}function Jc(e,t){return Uc(e[0],{...t,expandedStates:e})}function Vc(e){return Fn(e),{type:on,parts:e}}function zc(e,t="",r={}){return Cn(e),""!==t&&Cn(t),{type:un,breakContents:e,flatContents:t,groupId:r.groupId}}function Hc(e,t){return Cn(e),{type:pn,contents:e,groupId:t.groupId,negate:t.negate}}function Wc(e){return Cn(e),{type:ln,contents:e}}function Kc(e,t){Cn(e),Fn(t);let r=[];for(let s=0;s<t.length;s++)0!==s&&r.push(e),r.push(t[s]);return r}function Xc(e,t){return Cn(t),e?{type:dn,label:e,contents:t}:t}function Gc(e,t){if("string"==typeof e)return t(e);let r=new Map;return s(e);function s(e){if(r.has(e))return r.get(e);let i=function(e){switch(fn(e)){case en:return t(e.map(s));case on:return t({...e,parts:e.parts.map(s)});case un:return t({...e,breakContents:s(e.breakContents),flatContents:s(e.flatContents)});case an:{let{expandedStates:r,contents:i}=e;return r?(r=r.map(s),i=r[0]):i=s(i),t({...e,contents:i,expandedStates:r})}case sn:case rn:case pn:case dn:case ln:return t({...e,contents:s(e.contents)});case Zi:case tn:case nn:case cn:case hn:case mn:return t(e);default:throw new gn(e)}}(e);return r.set(e,i),i}}function Yc(e,t,r){let s=r,i=!1;return An(e,(function(e){if(i)return!1;let r=t(e);void 0!==r&&(i=!0,s=r)})),s}function Qc(e){if(e.type===an&&e.break||e.type===hn&&e.hard||e.type===mn)return!0}function Zc(e){return Yc(e,Qc,!1)}function eh(e){if(e.length>0){let t=Ws(!1,e,-1);!t.expandedStates&&!t.break&&(t.break="propagated")}return null}function th(e){return e.type!==hn||e.hard?e.type===un?e.flatContents:e:e.soft?"":" "}function rh(e){return Gc(e,th)}function sh(e){return Gc(e,(e=>function(e){switch(fn(e)){case on:if(e.parts.every((e=>""===e)))return"";break;case an:if(!(e.contents||e.id||e.break||e.expandedStates))return"";if(e.contents.type===an&&e.contents.id===e.id&&e.contents.break===e.break&&e.contents.expandedStates===e.expandedStates)return e.contents;break;case sn:case rn:case pn:case ln:if(!e.contents)return"";break;case un:if(!e.flatContents&&!e.breakContents)return"";break;case en:{let t=[];for(let r of e){if(!r)continue;let[e,...s]=Array.isArray(r)?r:[r];"string"==typeof e&&"string"==typeof Ws(!1,t,-1)?t[t.length-1]+=e:t.push(e),t.push(...s)}return 0===t.length?"":1===t.length?t[0]:t}case Zi:case tn:case nn:case cn:case hn:case dn:case mn:break;default:throw new gn(e)}return e}(e)))}function ih(e,t=In){return Gc(e,(e=>"string"==typeof e?Kc(t,e.split("\n")):e))}function nh(e){if(e.type===hn)return!0}function ah(e,t){return e.type===dn?{...e,contents:t(e.contents)}:t(e)}function oh(e){let t=`*${e.value}*`.split("\n");return t.length>1&&t.every((e=>"*"===e.trimStart()[0]))}function uh(e,t){let r=e.node;if(Ai(r))return t.originalText.slice(Ul(r),$l(r)).trimEnd();if(Di(r))return Bn(r)?function(e){let t=e.value.split("\n");return["/*",Kc(kn,t.map(((e,r)=>0===r?e.trimEnd():" "+(r<t.length-1?e.trim():e.trimStart())))),"*/"]}(r):["/*",ih(r.value),"*/"];throw new Error("Not a comment: "+JSON.stringify(r))}function ph(e,t){(e.comments??(e.comments=[])).push(t),t.printed=!1,t.nodeDescription=function(e){let t=e.type||e.kind||"(unknown type)",r=String(e.name||e.id&&("object"==typeof e.id?e.id.name:e.id)||e.key&&("object"==typeof e.key?e.key.name:e.key)||e.value&&("object"==typeof e.value?"":String(e.value))||e.operator||"");return r.length>20&&(r=r.slice(0,19)+"…"),t+(r?" "+r:"")}(e)}function lh(e,t){t.leading=!0,t.trailing=!1,ph(e,t)}function ch(e,t,r){t.leading=!1,t.trailing=!1,r&&(t.marker=r),ph(e,t)}function hh(e,t){t.leading=!1,t.trailing=!0,ph(e,t)}function dh(e,t){let r=null,s=t;for(;s!==r;)r=s,s=Zs(e,s),s=ii(e,s),s=ni(e,s),s=ri(e,s);return s}function mh(e,t){let r=Mn(e,t);return!1===r?"":e.charAt(r)}function yh(e,t,r){for(let s=t;s<r;++s)if("\n"===e.charAt(s))return!0;return!1}function fh(e){return Di(e)&&"*"===e.value[0]&&/@(?:type|satisfies)\b/u.test(e.value)}function Dh(e){return[Kh,wh,Oh,Mh,Sh,Ch,Fh,bh,kh,Jh,Uh,qh,Vh,zh,Ih,jh,_h,Ph,Qh].some((t=>t(e)))}function xh(e){return[Th,Oh,wh,Vh,Ch,Fh,bh,kh,jh,Rh,$h,qh,Hh,_h,Gh,Yh].some((t=>t(e)))}function gh(e){return[Kh,Ch,Fh,vh,Lh,Ih,qh,Bh,Nh,Xh,_h,Wh].some((t=>t(e)))}function Eh(e,t){let r=(e.body||e.properties).find((({type:e})=>"EmptyStatement"!==e));r?lh(r,t):ch(e,t)}function Ah(e,t){"BlockStatement"===e.type?Eh(e,t):lh(e,t)}function Th({comment:e,followingNode:t}){return!(!t||!_n(e)||(lh(t,e),0))}function Ch({comment:e,precedingNode:t,enclosingNode:r,followingNode:s,text:i}){if("IfStatement"!==(null==r?void 0:r.type)||!s)return!1;if(")"===On(i,$l(e)))return hh(t,e),!0;if(t===r.consequent&&s===r.alternate){if("BlockStatement"===t.type)hh(t,e);else{let s=Ai(e)||e.loc.start.line===e.loc.end.line,i=e.loc.start.line===t.loc.start.line;s&&i?hh(t,e):ch(r,e)}return!0}return"BlockStatement"===s.type?(Eh(s,e),!0):"IfStatement"===s.type?(Ah(s.consequent,e),!0):r.consequent===s&&(lh(s,e),!0)}function Fh({comment:e,precedingNode:t,enclosingNode:r,followingNode:s,text:i}){return!("WhileStatement"!==(null==r?void 0:r.type)||!s||(")"===On(i,$l(e))?(hh(t,e),0):"BlockStatement"===s.type?(Eh(s,e),0):r.body!==s||(lh(s,e),0)))}function bh({comment:e,precedingNode:t,enclosingNode:r,followingNode:s}){return!("TryStatement"!==(null==r?void 0:r.type)&&"CatchClause"!==(null==r?void 0:r.type)||!s||("CatchClause"===r.type&&t?(hh(t,e),0):"BlockStatement"===s.type?(Eh(s,e),0):"TryStatement"===s.type?(Ah(s.finalizer,e),0):"CatchClause"!==s.type||(Ah(s.body,e),0)))}function Sh({comment:e,enclosingNode:t,followingNode:r}){return!(!Mi(t)||"Identifier"!==(null==r?void 0:r.type)||(lh(t,e),0))}function Ph({comment:e,enclosingNode:t,followingNode:r,options:s}){return!(!s.experimentalTernaries||"ConditionalExpression"!==(null==t?void 0:t.type)&&"ConditionalTypeAnnotation"!==(null==t?void 0:t.type)&&"TSConditionalType"!==(null==t?void 0:t.type)||"ConditionalExpression"!==(null==r?void 0:r.type)&&"ConditionalTypeAnnotation"!==(null==r?void 0:r.type)&&"TSConditionalType"!==(null==r?void 0:r.type)||(ch(t,e),0))}function wh({comment:e,precedingNode:t,enclosingNode:r,followingNode:s,text:i,options:n}){let a=t&&!jn(i,$l(t),Ul(e));return!(t&&a||"ConditionalExpression"!==(null==r?void 0:r.type)&&"ConditionalTypeAnnotation"!==(null==r?void 0:r.type)&&"TSConditionalType"!==(null==r?void 0:r.type)||!s||(!n.experimentalTernaries||r.alternate!==s||Di(e)&&!jn(n.originalText,Ul(e),$l(e))?(lh(s,e),0):(ch(r,e),0)))}function vh({comment:e,precedingNode:t,enclosingNode:r}){return!(!Lc(r)||!r.shorthand||r.key!==t||"AssignmentPattern"!==r.value.type||(hh(r.value.left,e),0))}function kh({comment:e,precedingNode:t,enclosingNode:r,followingNode:s}){if(Rn.has(null==r?void 0:r.type)){if(oi(r.decorators)&&"Decorator"!==(null==s?void 0:s.type))return hh(Ws(!1,r.decorators,-1),e),!0;if(r.body&&s===r.body)return Eh(r.body,e),!0;if(s){if(r.superClass&&s===r.superClass&&t&&(t===r.id||t===r.typeParameters))return hh(t,e),!0;for(let i of["implements","extends","mixins"])if(r[i]&&s===r[i][0])return!t||t!==r.id&&t!==r.typeParameters&&t!==r.superClass?ch(r,e,i):hh(t,e),!0}}return!1}function Ih({comment:e,precedingNode:t,enclosingNode:r,text:s}){return(r&&t&&"("===On(s,$l(e))&&("Property"===r.type||"TSDeclareMethod"===r.type||"TSAbstractMethodDefinition"===r.type)&&"Identifier"===t.type&&r.key===t&&":"!==On(s,$l(t))||!("Decorator"!==(null==t?void 0:t.type)||!Un.has(null==r?void 0:r.type)))&&(hh(t,e),!0)}function Nh({comment:e,precedingNode:t,enclosingNode:r,text:s}){return!("("!==On(s,$l(e))||!t||!$n.has(null==r?void 0:r.type)||(hh(t,e),0))}function Bh({comment:e,enclosingNode:t,text:r}){if("ArrowFunctionExpression"!==(null==t?void 0:t.type))return!1;let s=Mn(r,$l(e));return!1!==s&&"=>"===r.slice(s,s+2)&&(ch(t,e),!0)}function Lh({comment:e,enclosingNode:t,text:r}){return!(")"!==On(r,$l(e))||(t&&(Vn(t)&&0===bc(t).length||Bc(t)&&0===Sc(t).length)?(ch(t,e),0):"MethodDefinition"!==(null==t?void 0:t.type)&&"TSAbstractMethodDefinition"!==(null==t?void 0:t.type)||0!==bc(t.value).length||(ch(t.value,e),0)))}function Mh({comment:e,precedingNode:t,enclosingNode:r,followingNode:s,text:i}){return"ComponentTypeParameter"!==(null==t?void 0:t.type)||"DeclareComponent"!==(null==r?void 0:r.type)&&"ComponentTypeAnnotation"!==(null==r?void 0:r.type)||"ComponentTypeParameter"===(null==s?void 0:s.type)?("ComponentParameter"===(null==t?void 0:t.type)||"RestElement"===(null==t?void 0:t.type))&&"ComponentDeclaration"===(null==r?void 0:r.type)&&")"===On(i,$l(e))&&(hh(t,e),!0):(hh(t,e),!0)}function Oh({comment:e,precedingNode:t,enclosingNode:r,followingNode:s,text:i}){return"FunctionTypeParam"===(null==t?void 0:t.type)&&"FunctionTypeAnnotation"===(null==r?void 0:r.type)&&"FunctionTypeParam"!==(null==s?void 0:s.type)?(hh(t,e),!0):"Identifier"!==(null==t?void 0:t.type)&&"AssignmentPattern"!==(null==t?void 0:t.type)&&"ObjectPattern"!==(null==t?void 0:t.type)&&"ArrayPattern"!==(null==t?void 0:t.type)&&"RestElement"!==(null==t?void 0:t.type)&&"TSParameterProperty"!==(null==t?void 0:t.type)||!Vn(r)||")"!==On(i,$l(e))?!(Di(e)||"FunctionDeclaration"!==(null==r?void 0:r.type)&&"FunctionExpression"!==(null==r?void 0:r.type)&&"ObjectMethod"!==(null==r?void 0:r.type)||"BlockStatement"!==(null==s?void 0:s.type)||r.body!==s||Mn(i,$l(e))!==Ul(s)||(Eh(s,e),0)):(hh(t,e),!0)}function jh({comment:e,enclosingNode:t}){return"LabeledStatement"===(null==t?void 0:t.type)&&(lh(t,e),!0)}function _h({comment:e,enclosingNode:t}){return!("ContinueStatement"!==(null==t?void 0:t.type)&&"BreakStatement"!==(null==t?void 0:t.type)||t.label||(hh(t,e),0))}function Rh({comment:e,precedingNode:t,enclosingNode:r}){return!!(Li(r)&&t&&r.callee===t&&r.arguments.length>0)&&(lh(r.arguments[0],e),!0)}function Uh({comment:e,precedingNode:t,enclosingNode:r,followingNode:s}){return Ki(r)?(vc(e)&&(s.prettierIgnore=!0,e.unignore=!0),!!t&&(hh(t,e),!0)):(Ki(s)&&vc(e)&&(s.types[0].prettierIgnore=!0,e.unignore=!0),!1)}function $h({comment:e,enclosingNode:t}){return!!Lc(t)&&(lh(t,e),!0)}function qh({comment:e,enclosingNode:t,ast:r,isLastComment:s}){var i;return 0===(null==(i=null==r?void 0:r.body)?void 0:i.length)?(s?ch(r,e):lh(r,e),!0):"Program"===(null==t?void 0:t.type)&&0===t.body.length&&!oi(t.directives)&&(s?ch(t,e):lh(t,e),!0)}function Jh({comment:e,enclosingNode:t}){return("ForInStatement"===(null==t?void 0:t.type)||"ForOfStatement"===(null==t?void 0:t.type))&&(lh(t,e),!0)}function Vh({comment:e,precedingNode:t,enclosingNode:r,text:s}){if("ImportSpecifier"===(null==r?void 0:r.type)||"ExportSpecifier"===(null==r?void 0:r.type))return lh(r,e),!0;let i="ImportSpecifier"===(null==t?void 0:t.type)&&"ImportDeclaration"===(null==r?void 0:r.type),n="ExportSpecifier"===(null==t?void 0:t.type)&&"ExportNamedDeclaration"===(null==r?void 0:r.type);return!(!i&&!n||!si(s,$l(e))||(hh(t,e),0))}function zh({comment:e,enclosingNode:t}){return"AssignmentPattern"===(null==t?void 0:t.type)&&(lh(t,e),!0)}function Hh({comment:e,enclosingNode:t,followingNode:r}){return!(!qn.has(null==t?void 0:t.type)||!r||!Jn.has(r.type)&&!Di(e)||(lh(r,e),0))}function Wh({comment:e,enclosingNode:t,followingNode:r,text:s}){return!(r||"TSMethodSignature"!==(null==t?void 0:t.type)&&"TSDeclareFunction"!==(null==t?void 0:t.type)&&"TSAbstractMethodDefinition"!==(null==t?void 0:t.type)||";"!==On(s,$l(e))||(hh(t,e),0))}function Kh({comment:e,enclosingNode:t,followingNode:r}){if(vc(e)&&"TSMappedType"===(null==t?void 0:t.type)&&"TSTypeParameter"===(null==r?void 0:r.type)&&r.constraint)return t.prettierIgnore=!0,e.unignore=!0,!0}function Xh({comment:e,precedingNode:t,enclosingNode:r,followingNode:s}){return!("TSMappedType"!==(null==r?void 0:r.type)||("TSTypeParameter"===(null==s?void 0:s.type)&&s.name?(lh(s.name,e),0):"TSTypeParameter"!==(null==t?void 0:t.type)||!t.constraint||(hh(t.constraint,e),0)))}function Gh({comment:e,enclosingNode:t,followingNode:r}){return!(!t||"SwitchCase"!==t.type||t.test||!r||r!==t.consequent[0]||("BlockStatement"===r.type&&Ai(e)?Eh(r,e):ch(t,e),0))}function Yh({comment:e,precedingNode:t,enclosingNode:r,followingNode:s}){return!(!Ki(t)||("TSArrayType"!==r.type&&"ArrayTypeAnnotation"!==r.type||s)&&!Xi(r)||(hh(Ws(!1,t.types,-1),e),0))}function Qh({comment:e,enclosingNode:t,precedingNode:r,followingNode:s}){if(("ObjectPattern"===(null==t?void 0:t.type)||"ArrayPattern"===(null==t?void 0:t.type))&&"TSTypeAnnotation"===(null==s?void 0:s.type))return r?hh(r,e):ch(t,e),!0}function Zh(e){return!zn.has(e.type)}function ed(e,t){var r;if(("typescript"===t.parser||"flow"===t.parser||"acorn"===t.parser||"espree"===t.parser||"meriyah"===t.parser||"__babel_estree"===t.parser)&&"MethodDefinition"===e.type&&"FunctionExpression"===(null==(r=e.value)?void 0:r.type)&&0===bc(e.value).length&&!e.value.returnType&&!oi(e.value.typeParameters)&&e.value.body)return[...e.decorators||[],e.key,e.value.body]}function td(e){let{node:t,parent:r}=e;return(vi(t)||r&&("JSXSpreadAttribute"===r.type||"JSXSpreadChild"===r.type||Ki(r)||("ClassDeclaration"===r.type||"ClassExpression"===r.type)&&r.superClass===t))&&(!kc(t)||Ki(r))}function rd(e,{parser:t}){if("flow"===t||"babel-flow"===t)return""===(e=zs(!1,e,/[\s(]/gu,""))||"/*"===e||"/*::"===e}function sd(e,t){return nd(e,{type:"indent"},t)}function id(e,t,r){return t===Number.NEGATIVE_INFINITY?e.root||{value:"",length:0,queue:[]}:t<0?nd(e,{type:"dedent"},r):t?"root"===t.type?{...e,root:e}:nd(e,{type:"string"==typeof t?"stringAlign":"numberAlign",n:t},r):e}function nd(e,t,r){let s="dedent"===t.type?e.queue.slice(0,-1):[...e.queue,t],i="",n=0,a=0,o=0;for(let d of s)switch(d.type){case"indent":l(),r.useTabs?u(1):p(r.tabWidth);break;case"stringAlign":l(),i+=d.n,n+=d.n.length;break;case"numberAlign":a+=1,o+=d.n;break;default:throw new Error(`Unexpected type '${d.type}'`)}return c(),{...e,value:i,length:n,queue:s};function u(e){i+="\t".repeat(e),n+=r.tabWidth*e}function p(e){i+=" ".repeat(e),n+=e}function l(){r.useTabs?(a>0&&u(a),h()):c()}function c(){o>0&&p(o),h()}function h(){a=0,o=0}}function ad(e){let t=0,r=0,s=e.length;e:for(;s--;){let i=e[s];if(i!==Kn)for(let r=i.length-1;r>=0;r--){let n=i[r];if(" "!==n&&"\t"!==n){e[s]=i.slice(0,r+1);break e}t++}else r++}if(t>0||r>0)for(e.length=s+1;r-- >0;)e.push(Kn);return t}function od(e,t,r,s,i,n){if(r===Number.POSITIVE_INFINITY)return!0;let a=t.length,o=[e],u=[];for(;r>=0;){if(0===o.length){if(0===a)return!0;o.push(t[--a]);continue}let{mode:e,doc:p}=o.pop(),l=fn(p);switch(l){case Zi:u.push(p),r-=Qs(p);break;case en:case on:{let t=l===en?p:p.parts;for(let r=t.length-1;r>=0;r--)o.push({mode:e,doc:t[r]});break}case rn:case sn:case pn:case dn:o.push({mode:e,doc:p.contents});break;case nn:r+=ad(u);break;case an:{if(n&&p.break)return!1;let t=p.break?Hn:e,r=p.expandedStates&&t===Hn?Ws(!1,p.expandedStates,-1):p.contents;o.push({mode:t,doc:r});break}case un:{let t=(p.groupId?i[p.groupId]||Wn:e)===Hn?p.breakContents:p.flatContents;t&&o.push({mode:e,doc:t});break}case hn:if(e===Hn||p.hard)return!0;p.soft||(u.push(" "),r--);break;case ln:s=!0;break;case cn:if(s)return!1}}return!1}function ud(e,t){let r={},s=t.printWidth,i=function(e){switch(e){case"cr":return"\r";case"crlf":return"\r\n";default:return"\n"}}(t.endOfLine),n=0,a=[{ind:{value:"",length:0,queue:[]},mode:Hn,doc:e}],o=[],u=!1,p=[],l=0;for(function(e){let t=new Set,r=[];An(e,(function(e){if(e.type===mn&&eh(r),e.type===an){if(r.push(e),t.has(e))return!1;t.add(e)}}),(function(e){e.type===an&&r.pop().break&&eh(r)}),!0)}(e);a.length>0;){let{ind:e,mode:c,doc:h}=a.pop();switch(fn(h)){case Zi:{let e="\n"!==i?zs(!1,h,"\n",i):h;o.push(e),a.length>0&&(n+=Qs(e));break}case en:for(let t=h.length-1;t>=0;t--)a.push({ind:e,mode:c,doc:h[t]});break;case tn:if(l>=2)throw new Error("There are too many 'cursor' in doc.");o.push(Kn),l++;break;case rn:a.push({ind:sd(e,t),mode:c,doc:h.contents});break;case sn:a.push({ind:id(e,h.n,t),mode:c,doc:h.contents});break;case nn:n-=ad(o);break;case an:switch(c){case Wn:if(!u){a.push({ind:e,mode:h.break?Hn:Wn,doc:h.contents});break}case Hn:{u=!1;let t={ind:e,mode:Wn,doc:h.contents},i=s-n,o=p.length>0;if(!h.break&&od(t,a,i,o,r))a.push(t);else if(h.expandedStates){let t=Ws(!1,h.expandedStates,-1);if(h.break){a.push({ind:e,mode:Hn,doc:t});break}for(let s=1;s<h.expandedStates.length+1;s++){if(s>=h.expandedStates.length){a.push({ind:e,mode:Hn,doc:t});break}{let t={ind:e,mode:Wn,doc:h.expandedStates[s]};if(od(t,a,i,o,r)){a.push(t);break}}}}else a.push({ind:e,mode:Hn,doc:h.contents});break}}h.id&&(r[h.id]=Ws(!1,a,-1).mode);break;case on:{let t=s-n,{parts:i}=h;if(0===i.length)break;let[o,u]=i,l={ind:e,mode:Wn,doc:o},d={ind:e,mode:Hn,doc:o},m=od(l,[],t,p.length>0,r,!0);if(1===i.length){m?a.push(l):a.push(d);break}let y={ind:e,mode:Wn,doc:u},f={ind:e,mode:Hn,doc:u};if(2===i.length){m?a.push(y,l):a.push(f,d);break}i.splice(0,2);let D={ind:e,mode:c,doc:Vc(i)},x=i[0];od({ind:e,mode:Wn,doc:[o,u,x]},[],t,p.length>0,r,!0)?a.push(D,y,l):m?a.push(D,f,l):a.push(D,f,d);break}case un:case pn:{let t=h.groupId?r[h.groupId]:c;if(t===Hn){let t=h.type===un?h.breakContents:h.negate?h.contents:_c(h.contents);t&&a.push({ind:e,mode:c,doc:t})}if(t===Wn){let t=h.type===un?h.flatContents:h.negate?_c(h.contents):h.contents;t&&a.push({ind:e,mode:c,doc:t})}break}case ln:p.push({ind:e,mode:c,doc:h.contents});break;case cn:p.length>0&&a.push({ind:e,mode:c,doc:Pn});break;case hn:switch(c){case Wn:if(!h.hard){h.soft||(o.push(" "),n+=1);break}u=!0;case Hn:if(p.length>0){a.push({ind:e,mode:c,doc:h},...p.reverse()),p.length=0;break}h.literal?e.root?(o.push(i,e.root.value),n=e.root.length):(o.push(i),n=0):(n-=ad(o),o.push(i+e.value),n=e.length)}break;case dn:a.push({ind:e,mode:c,doc:h.contents});break;case mn:break;default:throw new gn(h)}0===a.length&&p.length>0&&(a.push(...p.reverse()),p.length=0)}let c=o.indexOf(Kn);if(-1!==c){let e=o.indexOf(Kn,c+1),t=o.slice(0,c).join(""),r=o.slice(c+1,e).join("");return{formatted:t+r+o.slice(e+1).join(""),cursorNodeStart:t.length,cursorNodeText:r}}return{formatted:o.join("")}}function pd(e,t,r=0){let s=0;for(let i=r;i<e.length;++i)"\t"===e[i]?s=s+t-s%t:s++;return s}function ld(e,t){let r=e.lastIndexOf("\n");return-1===r?0:Xn(e.slice(r+1).match(/^[\t ]*/u)[0],t)}function cd(e,t,r){let{node:s}=e;if("TemplateLiteral"===s.type&&function({node:e,parent:t}){let r=/^[fx]?(?:describe|it|test)$/u;return"TaggedTemplateExpression"===t.type&&t.quasi===e&&"MemberExpression"===t.tag.type&&"Identifier"===t.tag.property.type&&"each"===t.tag.property.name&&("Identifier"===t.tag.object.type&&r.test(t.tag.object.name)||"MemberExpression"===t.tag.object.type&&"Identifier"===t.tag.object.property.type&&("only"===t.tag.object.property.name||"skip"===t.tag.object.property.name)&&"Identifier"===t.tag.object.object.type&&r.test(t.tag.object.object.name))}(e)){let s=function(e,t,r){let{node:s}=e,i=s.quasis[0].value.raw.trim().split(/\s*\|\s*/u);if(i.length>1||i.some((e=>e.length>0))){t.__inJestEach=!0;let n=e.map(r,"expressions");t.__inJestEach=!1;let a=[],o=n.map((e=>"${"+ud(e,{...t,printWidth:Number.POSITIVE_INFINITY,endOfLine:"lf"}).formatted+"}")),u=[{hasLineBreak:!1,cells:[]}];for(let e=1;e<s.quasis.length;e++){let t=Ws(!1,u,-1),r=o[e-1];t.cells.push(r),r.includes("\n")&&(t.hasLineBreak=!0),s.quasis[e].value.raw.includes("\n")&&u.push({hasLineBreak:!1,cells:[]})}let p=Math.max(i.length,...u.map((e=>e.cells.length))),l=Array.from({length:p}).fill(0),c=[{cells:i},...u.filter((e=>e.cells.length>0))];for(let{cells:e}of c.filter((e=>!e.hasLineBreak)))for(let[t,r]of e.entries())l[t]=Math.max(l[t],Qs(r));return a.push(bn,"`",_c([kn,Kc(kn,c.map((e=>Kc(" | ",e.cells.map(((t,r)=>e.hasLineBreak?t:t+" ".repeat(l[r]-Qs(t))))))))]),kn,"`"),a}}(e,r,t);if(s)return s}let i="expressions";"TSTemplateLiteralType"===s.type&&(i="types");let n=[],a=e.map(t,i);n.push(bn,"`");let o=0;return e.each((({index:e,node:u})=>{if(n.push(t()),u.tail)return;let{tabWidth:p}=r,l=u.value.raw,c=l.includes("\n")?Gn(l,p):o;o=c;let h=a[e],d=s[i][e],m=jn(r.originalText,$l(u),Ul(s.quasis[e+1]));if(!m){let e=ud(h,{...r,printWidth:Number.POSITIVE_INFINITY}).formatted;e.includes("\n")?m=!0:h=e}m&&(Ic(d)||"Identifier"===d.type||Mi(d)||"ConditionalExpression"===d.type||"SequenceExpression"===d.type||Wi(d)||ki(d))&&(h=[_c([vn,h]),vn]);let y=0===c&&l.endsWith("\n")?Rc(Number.NEGATIVE_INFINITY,h):function(e,t,r){Cn(e);let s=e;if(t>0){for(let e=0;e<Math.floor(t/r);++e)s=_c(s);s=Rc(t%r,s),s=Rc(Number.NEGATIVE_INFINITY,s)}return s}(h,c,p);n.push(Uc(["${",y,bn,"}"]))}),"quasis"),n.push("`"),n}function hd(e,t){return e.map((e=>function(e,t){let{node:r}=e,s=t();return Ic(r)&&(s=Uc([_c([vn,s]),vn])),["${",s,bn,"}"]}(e,t)),"expressions")}function dd(e,t){return Gc(e,(e=>"string"==typeof e?t?zs(!1,e,/(\\*)`/gu,"$1$1\\`"):md(e):e))}function md(e){return zs(!1,e,/([\\`]|\$\{)/gu,String.raw`\$1`)}function yd(e,t){return Ic(e,Vi.Block|Vi.Leading,(({value:e})=>e===` ${t} `))}function fd({node:e,parent:t},r){return yd(e,r)||function(e){return"AsConstExpression"===e.type||"TSAsExpression"===e.type&&"TSTypeReference"===e.typeAnnotation.type&&"Identifier"===e.typeAnnotation.typeName.type&&"const"===e.typeAnnotation.typeName.name}(t)&&yd(t,r)||"ExpressionStatement"===t.type&&yd(t,r)}async function Dd(e,t,r){let{node:s}=r,i=s.quasis.map((e=>e.value.raw)),n=0,a=function(e,t){if(!oi(t))return e;let r=0,s=Gc(sh(e),(e=>"string"==typeof e&&e.includes("@prettier-placeholder")?e.split(/@prettier-placeholder-(\d+)-id/u).map(((e,s)=>s%2==0?ih(e):(r++,t[e]))):e));return t.length===r?s:null}(await e(i.reduce(((e,t,r)=>0===r?t:e+"@prettier-placeholder-"+n+++"-id"+t),""),{parser:"scss"}),hd(r,t));if(!a)throw new Error("Couldn't insert all the expressions");return["`",_c([kn,a]),vn,"`"]}function xd(e){return"Identifier"===e.type&&"styled"===e.name}function gd(e){return/^[A-Z]/u.test(e.object.name)&&"extend"===e.property.name}function Ed(e){if(function({node:e,parent:t,grandparent:r}){return r&&e.quasis&&"JSXExpressionContainer"===t.type&&"JSXElement"===r.type&&"style"===r.openingElement.name.name&&r.openingElement.attributes.some((e=>"JSXAttribute"===e.type&&"jsx"===e.name.name))||"TaggedTemplateExpression"===(null==t?void 0:t.type)&&"Identifier"===t.tag.type&&"css"===t.tag.name||"TaggedTemplateExpression"===(null==t?void 0:t.type)&&"MemberExpression"===t.tag.type&&"css"===t.tag.object.name&&("global"===t.tag.property.name||"resolve"===t.tag.property.name)}(e)||function({parent:e}){if(!e||"TaggedTemplateExpression"!==e.type)return!1;let t="ParenthesizedExpression"===e.tag.type?e.tag.expression:e.tag;switch(t.type){case"MemberExpression":return xd(t.object)||gd(t);case"CallExpression":return xd(t.callee)||"MemberExpression"===t.callee.type&&("MemberExpression"===t.callee.object.type&&(xd(t.callee.object.object)||gd(t.callee.object))||"CallExpression"===t.callee.object.type&&xd(t.callee.object.callee));case"Identifier":return"css"===t.name;default:return!1}}(e)||function({parent:e,grandparent:t}){return"JSXAttribute"===(null==t?void 0:t.type)&&"JSXExpressionContainer"===e.type&&"JSXIdentifier"===t.name.type&&"css"===t.name.name}(e)||function(e){let t=e=>"TemplateLiteral"===e.type,r=(e,t)=>Lc(e)&&!e.computed&&"Identifier"===e.key.type&&"styles"===e.key.name&&"value"===t;return e.match(t,((e,t)=>Ci(e)&&"elements"===t),r,...Yn)||e.match(t,r,...Yn)}(e))return Dd}async function Ad(e,t,r){let{node:s}=r,i=s.quasis.length,n=hd(r,t),a=[];for(let o=0;o<i;o++){let t=0===o,r=o===i-1,u=s.quasis[o].value.cooked,p=u.split("\n"),l=p.length,c=n[o],h=l>2&&""===p[0].trim()&&""===p[1].trim(),d=l>2&&""===p[l-1].trim()&&""===p[l-2].trim(),m=p.every((e=>/^\s*(?:#[^\n\r]*)?$/u.test(e)));if(!r&&/#[^\n\r]*$/u.test(p[l-1]))return null;let y=null;y=m?Td(p):await e(u,{parser:"graphql"}),y?(y=dd(y,!1),!t&&h&&a.push(""),a.push(y),!r&&d&&a.push("")):!t&&!r&&h&&a.push(""),c&&a.push(c)}return["`",_c([kn,Kc(kn,a)]),kn,"`"]}function Td(e){let t=[],r=!1,s=e.map((e=>e.trim()));for(let[i,n]of s.entries())""!==n&&(""===s[i-1]&&r?t.push([kn,n]):t.push(n),r=!0);return 0===t.length?null:Kc(kn,t)}function Cd(e){if(function({node:e,parent:t}){return fd({node:e,parent:t},"GraphQL")||t&&("TaggedTemplateExpression"===t.type&&("MemberExpression"===t.tag.type&&"graphql"===t.tag.object.name&&"experimental"===t.tag.property.name||"Identifier"===t.tag.type&&("gql"===t.tag.name||"graphql"===t.tag.name))||"CallExpression"===t.type&&"Identifier"===t.callee.type&&"graphql"===t.callee.name)}(e))return Ad}async function Fd(e,t,r,s,i){let{node:n}=s,a=ea;ea=ea+1>>>0;let o=e=>`PRETTIER_HTML_PLACEHOLDER_${e}_${a}_IN_JS`,u=n.quasis.map(((e,t,r)=>t===r.length-1?e.value.cooked:e.value.cooked+o(t))).join(""),p=hd(s,r),l=new RegExp(o(String.raw`(\d+)`),"gu"),c=0,h=Gc(await t(u,{parser:e,__onHtmlRoot(e){c=e.children.length}}),(e=>{if("string"!=typeof e)return e;let t=[],r=e.split(l);for(let s=0;s<r.length;s++){let e=r[s];if(s%2==0){e&&(e=md(e),i.__embeddedInHtml&&(e=zs(!1,e,/<\/(?=script\b)/giu,String.raw`<\/`)),t.push(e));continue}let n=Number(e);t.push(p[n])}return t})),d=/^\s/u.test(u)?" ":"",m=/\s$/u.test(u)?" ":"",y="ignore"===i.htmlWhitespaceSensitivity?kn:d&&m?wn:null;return y?Uc(["`",_c([y,Uc(h)]),y,"`"]):Xc({hug:!1},Uc(["`",d,c>1?_c(Uc(h)):Uc(h),m,"`"]))}function bd(e){return function(e){return fd(e,"HTML")||e.match((e=>"TemplateLiteral"===e.type),((e,t)=>"TaggedTemplateExpression"===e.type&&"Identifier"===e.tag.type&&"html"===e.tag.name&&"quasi"===t))}(e)?ta:function(e){return e.match((e=>"TemplateLiteral"===e.type),((e,t)=>Lc(e)&&!e.computed&&"Identifier"===e.key.type&&"template"===e.key.name&&"value"===t),...Yn)}(e)?ra:void 0}async function Sd(e,t,r){let{node:s}=r,i=zs(!1,s.quasis[0].value.raw,/((?:\\\\)*)\\`/gu,((e,t)=>"\\".repeat(t.length/2)+"`")),n=function(e){let t=e.match(/^([^\S\n]*)\S/mu);return null===t?"":t[1]}(i),a=""!==n;a&&(i=zs(!1,i,new RegExp(`^${n}`,"gmu"),""));let o=dd(await e(i,{parser:"markdown",__inJsTemplate:!0}),!0);return["`",a?_c([vn,o]):[In,$c(o)],vn,"`"]}function Pd(e){if(function({node:e,parent:t}){return"TaggedTemplateExpression"===(null==t?void 0:t.type)&&1===e.quasis.length&&"Identifier"===t.tag.type&&("md"===t.tag.name||"markdown"===t.tag.name)}(e))return Sd}function wd(e){let t,{node:r}=e;if("TemplateLiteral"===r.type&&!function({quasis:e}){return e.some((({value:{cooked:e}})=>null===e))}(r))for(let s of[Qn,Zn,sa,ia])if(t=s(e),t)return 1===r.quasis.length&&""===r.quasis[0].value.raw.trim()?"``":async(...e)=>{let r=await t(...e);return r&&Xc({embed:!0,...r.label},r)}}function vd(e,t){return[...ma,...Array.isArray(t)?t:[t]].map((t=>`@${e} ${t}`.trim()))}function kd(e){if(!e.startsWith("#!"))return"";let t=e.indexOf("\n");return-1===t?e:e.slice(0,t)}function Id(e){let t=ya(e);t&&(e=e.slice(t.length+1));let{pragmas:r,comments:s}=function(e){e=zs(!1,e.replace(oa,"").replace(aa,""),da,"$1");let t="";for(;t!==e;)t=e,e=zs(!1,e,ca,"\n$1 $2\n");e=e.replace(la,"").trimEnd();let r,s=Object.create(null),i=zs(!1,e,ha,"").replace(la,"").trimEnd();for(;r=ha.exec(e);){let e=zs(!1,r[2],pa,"");if("string"==typeof s[r[1]]||Array.isArray(s[r[1]])){let t=s[r[1]];s[r[1]]=[...ma,...Array.isArray(t)?t:[t],e]}else s[r[1]]=e}return{comments:i,pragmas:s}}(function(e){let t=e.match(ua);return t?t[0].trimStart():""}(e));return{shebang:t,text:e,pragmas:r,comments:s}}function Nd(e){let{shebang:t,text:r,pragmas:s,comments:i}=Id(e),n=function(e){let t=e.match(ua),r=null==t?void 0:t[0];return null==r?e:e.slice(r.length)}(r),a=function({comments:e="",pragmas:t={}}){let r="\n",s=" *",i=Object.keys(t),n=i.flatMap((e=>vd(e,t[e]))).map((e=>`${s} ${e}${r}`)).join("");if(!e){if(0===i.length)return"";if(1===i.length&&!Array.isArray(t[i[0]])){let e=t[i[0]];return`/** ${vd(i[0],e)[0]} */`}}let a=e.split(r).map((e=>`${s} ${e}`)).join(r)+r;return"/**\n"+(e?a:"")+(e&&i.length>0?s+r:"")+n+" */"}({pragmas:{format:"",...s},comments:i.trimStart()});return(t?`${t}\n`:"")+a+(n.startsWith("\n")?"\n":"\n\n")+n}function Bd(e,t){let{originalText:r,[Symbol.for("comments")]:s,locStart:i,locEnd:n,[Symbol.for("printedComments")]:a}=t,{node:o}=e,u=i(o),p=n(o);for(let l of s)i(l)>=u&&n(l)<=p&&a.add(l);return r.slice(u,p)}function Ld(e,t){var r,s,i,n,a,o,u,p,l;if(e.isRoot)return!1;let{node:c,key:h,parent:d}=e;if(t.__isInHtmlInterpolation&&!t.bracketSpacing&&function(e){return Fi(e)}(c)&&Md(e))return!0;if(Da(c))return!1;if("Identifier"===c.type){if(null!=(r=c.extra)&&r.parenthesized&&/^PRETTIER_HTML_PLACEHOLDER_\d+_\d+_IN_JS$/u.test(c.name)||"left"===h&&("async"===c.name&&!d.await||"let"===c.name)&&"ForOfStatement"===d.type)return!0;if("let"===c.name){let t=null==(s=e.findAncestor((e=>"ForOfStatement"===e.type)))?void 0:s.left;if(t&&Ac(t,(e=>e===c)))return!0}if("object"===h&&"let"===c.name&&"MemberExpression"===d.type&&d.computed&&!d.optional){let t=e.findAncestor((e=>"ExpressionStatement"===e.type||"ForStatement"===e.type||"ForInStatement"===e.type)),r=t?"ExpressionStatement"===t.type?t.expression:"ForStatement"===t.type?t.init:t.left:void 0;if(r&&Ac(r,(e=>e===c)))return!0}if("expression"===h)switch(c.name){case"await":case"interface":case"module":case"using":case"yield":case"let":case"component":case"hook":case"type":{let t=e.findAncestor((e=>!Wi(e)));if(t!==d&&"ExpressionStatement"===t.type)return!0}}return!1}if("ObjectExpression"===c.type||"FunctionExpression"===c.type||"ClassExpression"===c.type||"DoExpression"===c.type){let t=null==(i=e.findAncestor((e=>"ExpressionStatement"===e.type)))?void 0:i.expression;if(t&&Ac(t,(e=>e===c)))return!0}if("ObjectExpression"===c.type){let t=null==(n=e.findAncestor((e=>"ArrowFunctionExpression"===e.type)))?void 0:n.body;if(t&&"SequenceExpression"!==t.type&&"AssignmentExpression"!==t.type&&Ac(t,(e=>e===c)))return!0}switch(d.type){case"ParenthesizedExpression":return!1;case"ClassDeclaration":case"ClassExpression":if("superClass"===h&&("ArrowFunctionExpression"===c.type||"AssignmentExpression"===c.type||"AwaitExpression"===c.type||"BinaryExpression"===c.type||"ConditionalExpression"===c.type||"LogicalExpression"===c.type||"NewExpression"===c.type||"ObjectExpression"===c.type||"SequenceExpression"===c.type||"TaggedTemplateExpression"===c.type||"UnaryExpression"===c.type||"UpdateExpression"===c.type||"YieldExpression"===c.type||"TSNonNullExpression"===c.type||"ClassExpression"===c.type&&oi(c.decorators)))return!0;break;case"ExportDefaultDeclaration":return Od(e,t)||"SequenceExpression"===c.type;case"Decorator":if("expression"===h&&!function(e){return"ChainExpression"===e.type&&(e=e.expression),jd(e)||Li(e)&&!e.optional&&jd(e.callee)}(c))return!0;break;case"TypeAnnotation":if(e.match(void 0,void 0,((e,t)=>"returnType"===t&&"ArrowFunctionExpression"===e.type))&&function(e){return Xl(e,(e=>"ObjectTypeAnnotation"===e.type&&Xl(e,(e=>"FunctionTypeAnnotation"===e.type))))}(c))return!0;break;case"BinaryExpression":if("left"===h&&("in"===d.operator||"instanceof"===d.operator)&&"UnaryExpression"===c.type)return!0;break;case"VariableDeclarator":if("init"===h&&e.match(void 0,void 0,((e,t)=>"declarations"===t&&"VariableDeclaration"===e.type),((e,t)=>"left"===t&&"ForInStatement"===e.type)))return!0}switch(c.type){case"UpdateExpression":if("UnaryExpression"===d.type)return c.prefix&&("++"===c.operator&&"+"===d.operator||"--"===c.operator&&"-"===d.operator);case"UnaryExpression":switch(d.type){case"UnaryExpression":return c.operator===d.operator&&("+"===c.operator||"-"===c.operator);case"BindExpression":case"TaggedTemplateExpression":case"TSNonNullExpression":return!0;case"MemberExpression":case"OptionalMemberExpression":return"object"===h;case"NewExpression":case"CallExpression":case"OptionalCallExpression":return"callee"===h;case"BinaryExpression":return"left"===h&&"**"===d.operator;default:return!1}case"BinaryExpression":if("UpdateExpression"===d.type||"in"===c.operator&&function(e){let t=0,{node:r}=e;for(;r;){let s=e.getParentNode(t++);if("ForStatement"===(null==s?void 0:s.type)&&s.init===r)return!0;r=s}return!1}(e))return!0;if("|>"===c.operator&&null!=(a=c.extra)&&a.parenthesized){let t=e.grandparent;if("BinaryExpression"===t.type&&"|>"===t.operator)return!0}case"TSTypeAssertion":case"TSAsExpression":case"TSSatisfiesExpression":case"AsExpression":case"AsConstExpression":case"SatisfiesExpression":case"LogicalExpression":switch(d.type){case"TSAsExpression":case"TSSatisfiesExpression":case"AsExpression":case"AsConstExpression":case"SatisfiesExpression":return!Wi(c);case"ConditionalExpression":return Wi(c)||function(e){return"LogicalExpression"===e.type&&"??"===e.operator}(c);case"CallExpression":case"NewExpression":case"OptionalCallExpression":return"callee"===h;case"ClassExpression":case"ClassDeclaration":return"superClass"===h;case"TSTypeAssertion":case"TaggedTemplateExpression":case"UnaryExpression":case"JSXSpreadAttribute":case"SpreadElement":case"BindExpression":case"AwaitExpression":case"TSNonNullExpression":case"UpdateExpression":return!0;case"MemberExpression":case"OptionalMemberExpression":return"object"===h;case"AssignmentExpression":case"AssignmentPattern":return"left"===h&&("TSTypeAssertion"===c.type||Wi(c));case"LogicalExpression":if("LogicalExpression"===c.type)return d.operator!==c.operator;case"BinaryExpression":{let{operator:e,type:t}=c;if(!e&&"TSTypeAssertion"!==t)return!0;let r=Cc(e),s=d.operator,i=Cc(s);return i>r||"right"===h&&i===r||i===r&&!Tc(s,e)||(i<r&&"%"===e?"+"===s||"-"===s:!!function(e){return!!Ui[e]||"|"===e||"^"===e||"&"===e}(s))}default:return!1}case"SequenceExpression":switch(d.type){case"ReturnStatement":case"ForStatement":return!1;case"ExpressionStatement":return"expression"!==h;case"ArrowFunctionExpression":return"body"!==h;default:return!0}case"YieldExpression":if("AwaitExpression"===d.type||"TSTypeAssertion"===d.type)return!0;case"AwaitExpression":switch(d.type){case"TaggedTemplateExpression":case"UnaryExpression":case"LogicalExpression":case"SpreadElement":case"TSAsExpression":case"TSSatisfiesExpression":case"TSNonNullExpression":case"AsExpression":case"AsConstExpression":case"SatisfiesExpression":case"BindExpression":return!0;case"MemberExpression":case"OptionalMemberExpression":return"object"===h;case"NewExpression":case"CallExpression":case"OptionalCallExpression":return"callee"===h;case"ConditionalExpression":return"test"===h;case"BinaryExpression":return!(!c.argument&&"|>"===d.operator);default:return!1}case"TSFunctionType":if(e.match((e=>"TSFunctionType"===e.type),((e,t)=>"typeAnnotation"===t&&"TSTypeAnnotation"===e.type),((e,t)=>"returnType"===t&&"ArrowFunctionExpression"===e.type)))return!0;case"TSConditionalType":case"TSConstructorType":if("extendsType"===h&&"TSConditionalType"===d.type){if("TSConditionalType"===c.type)return!0;let{typeAnnotation:e}=c.returnType||c.typeAnnotation;if("TSTypePredicate"===e.type&&e.typeAnnotation&&(e=e.typeAnnotation.typeAnnotation),"TSInferType"===e.type&&e.typeParameter.constraint)return!0}if("checkType"===h&&"TSConditionalType"===d.type)return!0;case"TSUnionType":case"TSIntersectionType":if(("TSUnionType"===d.type||"TSIntersectionType"===d.type)&&d.types.length>1&&(!c.types||c.types.length>1))return!0;case"TSInferType":if("TSInferType"===c.type){if("TSRestType"===d.type)return!1;if("types"===h&&("TSUnionType"===d.type||"TSIntersectionType"===d.type)&&"TSTypeParameter"===c.typeParameter.type&&c.typeParameter.constraint)return!0}case"TSTypeOperator":return"TSArrayType"===d.type||"TSOptionalType"===d.type||"TSRestType"===d.type||"objectType"===h&&"TSIndexedAccessType"===d.type||"TSTypeOperator"===d.type||"TSTypeAnnotation"===d.type&&e.grandparent.type.startsWith("TSJSDoc");case"TSTypeQuery":return"objectType"===h&&"TSIndexedAccessType"===d.type||"elementType"===h&&"TSArrayType"===d.type;case"TypeOperator":return"ArrayTypeAnnotation"===d.type||"NullableTypeAnnotation"===d.type||"objectType"===h&&("IndexedAccessType"===d.type||"OptionalIndexedAccessType"===d.type)||"TypeOperator"===d.type;case"TypeofTypeAnnotation":return"objectType"===h&&("IndexedAccessType"===d.type||"OptionalIndexedAccessType"===d.type)||"elementType"===h&&"ArrayTypeAnnotation"===d.type;case"ArrayTypeAnnotation":return"NullableTypeAnnotation"===d.type;case"IntersectionTypeAnnotation":case"UnionTypeAnnotation":return"TypeOperator"===d.type||"ArrayTypeAnnotation"===d.type||"NullableTypeAnnotation"===d.type||"IntersectionTypeAnnotation"===d.type||"UnionTypeAnnotation"===d.type||"objectType"===h&&("IndexedAccessType"===d.type||"OptionalIndexedAccessType"===d.type);case"InferTypeAnnotation":case"NullableTypeAnnotation":return"ArrayTypeAnnotation"===d.type||"objectType"===h&&("IndexedAccessType"===d.type||"OptionalIndexedAccessType"===d.type);case"ComponentTypeAnnotation":case"FunctionTypeAnnotation":{if("ComponentTypeAnnotation"===c.type&&(null===c.rendersType||void 0===c.rendersType))return!1;if(e.match(void 0,((e,t)=>"typeAnnotation"===t&&"TypeAnnotation"===e.type),((e,t)=>"returnType"===t&&"ArrowFunctionExpression"===e.type))||e.match(void 0,((e,t)=>"typeAnnotation"===t&&"TypePredicate"===e.type),((e,t)=>"typeAnnotation"===t&&"TypeAnnotation"===e.type),((e,t)=>"returnType"===t&&"ArrowFunctionExpression"===e.type)))return!0;let t="NullableTypeAnnotation"===d.type?e.grandparent:d;return"UnionTypeAnnotation"===t.type||"IntersectionTypeAnnotation"===t.type||"ArrayTypeAnnotation"===t.type||"objectType"===h&&("IndexedAccessType"===t.type||"OptionalIndexedAccessType"===t.type)||"checkType"===h&&"ConditionalTypeAnnotation"===d.type||"extendsType"===h&&"ConditionalTypeAnnotation"===d.type&&"InferTypeAnnotation"===(null==(o=c.returnType)?void 0:o.type)&&(null==(u=c.returnType)?void 0:u.typeParameter.bound)||"NullableTypeAnnotation"===t.type||"FunctionTypeParam"===d.type&&null===d.name&&bc(c).some((e=>{var t;return"NullableTypeAnnotation"===(null==(t=e.typeAnnotation)?void 0:t.type)}))}case"ConditionalTypeAnnotation":if("extendsType"===h&&"ConditionalTypeAnnotation"===d.type&&"ConditionalTypeAnnotation"===c.type||"checkType"===h&&"ConditionalTypeAnnotation"===d.type)return!0;case"OptionalIndexedAccessType":return"objectType"===h&&"IndexedAccessType"===d.type;case"StringLiteral":case"NumericLiteral":case"Literal":if("string"==typeof c.value&&"ExpressionStatement"===d.type&&!d.directive){let t=e.grandparent;return"Program"===t.type||"BlockStatement"===t.type}return"object"===h&&"MemberExpression"===d.type&&"number"==typeof c.value;case"AssignmentExpression":{let t=e.grandparent;return"body"===h&&"ArrowFunctionExpression"===d.type||("key"!==h||"ClassProperty"!==d.type&&"PropertyDefinition"!==d.type||!d.computed)&&("init"!==h&&"update"!==h||"ForStatement"!==d.type)&&("ExpressionStatement"===d.type?"ObjectPattern"===c.left.type:!("key"===h&&"TSPropertySignature"===d.type||"AssignmentExpression"===d.type||"SequenceExpression"===d.type&&"ForStatement"===t.type&&(t.init===d||t.update===d)||"value"===h&&"Property"===d.type&&"ObjectPattern"===t.type&&t.properties.includes(d)||"NGChainedExpression"===d.type))}case"ConditionalExpression":switch(d.type){case"TaggedTemplateExpression":case"UnaryExpression":case"SpreadElement":case"BinaryExpression":case"LogicalExpression":case"NGPipeExpression":case"ExportDefaultDeclaration":case"AwaitExpression":case"JSXSpreadAttribute":case"TSTypeAssertion":case"TypeCastExpression":case"TSAsExpression":case"TSSatisfiesExpression":case"AsExpression":case"AsConstExpression":case"SatisfiesExpression":case"TSNonNullExpression":return!0;case"NewExpression":case"CallExpression":case"OptionalCallExpression":return"callee"===h;case"ConditionalExpression":return!t.experimentalTernaries&&"test"===h;case"MemberExpression":case"OptionalMemberExpression":return"object"===h;default:return!1}case"FunctionExpression":switch(d.type){case"NewExpression":case"CallExpression":case"OptionalCallExpression":return"callee"===h;case"TaggedTemplateExpression":return!0;default:return!1}case"ArrowFunctionExpression":switch(d.type){case"BinaryExpression":return"|>"!==d.operator||(null==(p=c.extra)?void 0:p.parenthesized);case"NewExpression":case"CallExpression":case"OptionalCallExpression":return"callee"===h;case"MemberExpression":case"OptionalMemberExpression":return"object"===h;case"TSAsExpression":case"TSSatisfiesExpression":case"AsExpression":case"AsConstExpression":case"SatisfiesExpression":case"TSNonNullExpression":case"BindExpression":case"TaggedTemplateExpression":case"UnaryExpression":case"LogicalExpression":case"AwaitExpression":case"TSTypeAssertion":return!0;case"ConditionalExpression":return"test"===h;default:return!1}case"ClassExpression":return"NewExpression"===d.type&&"callee"===h;case"OptionalMemberExpression":case"OptionalCallExpression":case"CallExpression":case"MemberExpression":if(function(e){let{node:t,parent:r,grandparent:s,key:i}=e;return!!(("OptionalMemberExpression"===t.type||"OptionalCallExpression"===t.type)&&("object"===i&&"MemberExpression"===r.type||"callee"===i&&("CallExpression"===r.type||"NewExpression"===r.type)||"TSNonNullExpression"===r.type&&"MemberExpression"===s.type&&s.object===r)||e.match((()=>"CallExpression"===t.type||"MemberExpression"===t.type),((e,t)=>"expression"===t&&"ChainExpression"===e.type))&&(e.match(void 0,void 0,((e,t)=>"callee"===t&&("CallExpression"===e.type&&!e.optional||"NewExpression"===e.type)||"object"===t&&"MemberExpression"===e.type&&!e.optional))||e.match(void 0,void 0,((e,t)=>"expression"===t&&"TSNonNullExpression"===e.type),((e,t)=>"object"===t&&"MemberExpression"===e.type)))||e.match((()=>"CallExpression"===t.type||"MemberExpression"===t.type),((e,t)=>"expression"===t&&"TSNonNullExpression"===e.type),((e,t)=>"expression"===t&&"ChainExpression"===e.type),((e,t)=>"object"===t&&"MemberExpression"===e.type)))}(e))return!0;case"TaggedTemplateExpression":case"TSNonNullExpression":if("callee"===h&&("BindExpression"===d.type||"NewExpression"===d.type)){let e=c;for(;e;)switch(e.type){case"CallExpression":case"OptionalCallExpression":return!0;case"MemberExpression":case"OptionalMemberExpression":case"BindExpression":e=e.object;break;case"TaggedTemplateExpression":e=e.tag;break;case"TSNonNullExpression":e=e.expression;break;default:return!1}}return!1;case"BindExpression":return"callee"===h&&("BindExpression"===d.type||"NewExpression"===d.type)||"object"===h&&Mi(d);case"NGPipeExpression":return!("NGRoot"===d.type||"NGMicrosyntaxExpression"===d.type||"ObjectProperty"===d.type&&(null==(l=c.extra)||!l.parenthesized)||Ci(d)||"arguments"===h&&Li(d)||"right"===h&&"NGPipeExpression"===d.type||"property"===h&&"MemberExpression"===d.type||"AssignmentExpression"===d.type);case"JSXFragment":case"JSXElement":return"callee"===h||"left"===h&&"BinaryExpression"===d.type&&"<"===d.operator||!Ci(d)&&"ArrowFunctionExpression"!==d.type&&"AssignmentExpression"!==d.type&&"AssignmentPattern"!==d.type&&"BinaryExpression"!==d.type&&"NewExpression"!==d.type&&"ConditionalExpression"!==d.type&&"ExpressionStatement"!==d.type&&"JsExpressionRoot"!==d.type&&"JSXAttribute"!==d.type&&"JSXElement"!==d.type&&"JSXExpressionContainer"!==d.type&&"JSXFragment"!==d.type&&"LogicalExpression"!==d.type&&!Li(d)&&!Lc(d)&&"ReturnStatement"!==d.type&&"ThrowStatement"!==d.type&&"TypeCastExpression"!==d.type&&"VariableDeclarator"!==d.type&&"YieldExpression"!==d.type;case"TSInstantiationExpression":return"object"===h&&Mi(d)}return!1}function Md(e){let{parent:t,key:r}=e;switch(t.type){case"NGPipeExpression":if("arguments"===r&&e.isLast)return e.callParent(Md);break;case"ObjectProperty":if("value"===r)return e.callParent((()=>"properties"===e.key&&e.isLast));break;case"BinaryExpression":case"LogicalExpression":if("right"===r)return e.callParent(Md);break;case"ConditionalExpression":if("alternate"===r)return e.callParent(Md);break;case"UnaryExpression":if(t.prefix)return e.callParent(Md)}return!1}function Od(e,t){let{node:r,parent:s}=e;return"FunctionExpression"===r.type||"ClassExpression"===r.type?"ExportDefaultDeclaration"===s.type||!Ld(e,t):!(!Gl(r)||"ExportDefaultDeclaration"!==s.type&&Ld(e,t))&&e.call((()=>Od(e,t)),...Ql(r))}function jd(e){return"Identifier"===e.type||!!Mi(e)&&!e.computed&&!e.optional&&"Identifier"===e.property.type&&jd(e.object)}function _d(e,t){let r=t-1;return r=Zs(e,r,{backwards:!0}),r=ri(e,r,{backwards:!0}),r=Zs(e,r,{backwards:!0}),r!==ri(e,r,{backwards:!0})}function Rd(e,t){return e.node.printed=!0,t.printer.printComment(e,t)}function Ud(e,t,r={}){let{node:s}=e;if(!oi(null==s?void 0:s.comments))return"";let{indent:i=!1,marker:n,filter:a=Ea}=r,o=[];if(e.each((({node:r})=>{r.leading||r.trailing||r.marker!==n||!a(r)||o.push(Rd(e,t))}),"comments"),0===o.length)return"";let u=Kc(kn,o);return i?_c([kn,u]):u}function $d(e,t){let r=e.node;if(!r)return{};let s=t[Symbol.for("printedComments")];if(0===(r.comments||[]).filter((e=>!s.has(e))).length)return{leading:"",trailing:""};let i,n=[],a=[];return e.each((()=>{let r=e.node;if(null!=s&&s.has(r))return;let{leading:o,trailing:u}=r;o?n.push(function(e,t){var r;let s=e.node,i=[Rd(e,t)],{printer:n,originalText:a,locStart:o,locEnd:u}=t;if(null==(r=n.isBlockComment)?void 0:r.call(n,s)){let e=si(a,u(s))?si(a,o(s),{backwards:!0})?kn:wn:" ";i.push(e)}else i.push(kn);let p=ri(a,Zs(a,u(s)));return!1!==p&&si(a,p)&&i.push(kn),i}(e,t)):u&&(i=function(e,t,r){var s;let i=e.node,n=Rd(e,t),{printer:a,originalText:o,locStart:u}=t,p=null==(s=a.isBlockComment)?void 0:s.call(a,i);return null!=r&&r.hasLineSuffix&&(null==r||!r.isBlock)||si(o,u(i),{backwards:!0})?{doc:Wc([kn,ga(o,u(i))?kn:"",n]),isBlock:p,hasLineSuffix:!0}:!p||null!=r&&r.hasLineSuffix?{doc:[Wc([" ",n]),Sn],isBlock:p,hasLineSuffix:!0}:{doc:[" ",n],isBlock:p,hasLineSuffix:!1}}(e,t,i),a.push(i.doc))}),"comments"),{leading:n,trailing:a}}function qd(e,t,r){let{leading:s,trailing:i}=$d(e,r);return s||i?ah(t,(e=>[s,e,i])):t}function Jd(e,t,r){var s,i,n;let{node:a}=e;if("JSXElement"===a.type&&function(e){if(0===e.children.length)return!0;if(e.children.length>1)return!1;let t=e.children[0];return"JSXText"===t.type&&!Xd(t)}(a))return[r("openingElement"),r("closingElement")];let o="JSXElement"===a.type?r("openingElement"):r("openingFragment"),u="JSXElement"===a.type?r("closingElement"):r("closingFragment");if(1===a.children.length&&"JSXExpressionContainer"===a.children[0].type&&("TemplateLiteral"===a.children[0].expression.type||"TaggedTemplateExpression"===a.children[0].expression.type))return[o,...e.map(r,"children"),u];a.children=a.children.map((e=>function(e){return"JSXExpressionContainer"===e.type&&tc(e.expression)&&" "===e.expression.value&&!Ic(e.expression)}(e)?{type:"JSXText",value:" ",raw:" "}:e));let p=a.children.some(vi),l=a.children.filter((e=>"JSXExpressionContainer"===e.type)).length>1,c="JSXElement"===a.type&&a.openingElement.attributes.length>1,h=Zc(o)||p||c||l,d="mdx"===e.parent.rootMarker,m=t.singleQuote?"{' '}":'{" "}',y=d?" ":zc([m,vn]," "),f=function(e,t,r,s,i){let n=[];return e.each((({node:e,next:t})=>{if("JSXText"===e.type){let r=xc(e);if(Xd(e)){let a,o=ba.split(r,!0);if(""===o[0]&&(n.push(""),o.shift(),/\n/u.test(o[0])?n.push(zd(i,o[1],e,t)):n.push(s),o.shift()),""===Ws(!1,o,-1)&&(o.pop(),a=o.pop()),0===o.length)return;for(let[e,t]of o.entries())e%2==1?n.push(wn):n.push(t);void 0!==a?/\n/u.test(a)?n.push(zd(i,Ws(!1,n,-1),e,t)):n.push(s):n.push(Vd(i,Ws(!1,n,-1),e,t))}else/\n/u.test(r)?r.match(/\n/gu).length>1&&n.push("",kn):n.push("",s)}else{let s=r();if(n.push(s),t&&Xd(t)){let r=ba.trim(xc(t)),[s]=ba.split(r);n.push(Vd(i,s,e,t))}else n.push(kn)}}),"children"),n}(e,0,r,y,"fbt"===(null==(i=null==(s=a.openingElement)?void 0:s.name)?void 0:i.name)),D=a.children.some((e=>Xd(e)));for(let A=f.length-2;A>=0;A--){let e=""===f[A]&&""===f[A+1],t=f[A]===kn&&""===f[A+1]&&f[A+2]===kn,r=(f[A]===vn||f[A]===kn)&&""===f[A+1]&&f[A+2]===y,s=f[A]===y&&""===f[A+1]&&(f[A+2]===vn||f[A+2]===kn),i=f[A]===y&&""===f[A+1]&&f[A+2]===y,n=f[A]===vn&&""===f[A+1]&&f[A+2]===kn||f[A]===kn&&""===f[A+1]&&f[A+2]===vn;t&&D||e||r||i||n?f.splice(A,2):s&&f.splice(A+1,2)}for(;f.length>0&&Sa(Ws(!1,f,-1));)f.pop();for(;f.length>1&&Sa(f[0])&&Sa(f[1]);)f.shift(),f.shift();let x=[];for(let[A,T]of f.entries()){if(T===y){if(1===A&&""===f[A-1]){if(2===f.length){x.push(m);continue}x.push([m,kn]);continue}if(A===f.length-1){x.push(m);continue}if(""===f[A-1]&&f[A-2]===kn){x.push(m);continue}}x.push(T),Zc(T)&&(h=!0)}let g=D?Vc(x):Uc(x,{shouldBreak:!0});if("JSXText"===(null==(n=t.cursorNode)?void 0:n.type)&&a.children.includes(t.cursorNode)&&(g=[Nn,g,Nn]),d)return g;let E=Uc([o,_c([kn,g]),kn,u]);return h?E:Jc([Uc([o,...f,u]),E])}function Vd(e,t,r,s){return e?"":"JSXElement"===r.type&&!r.closingElement||"JSXElement"===(null==s?void 0:s.type)&&!s.closingElement?1===t.length?vn:kn:vn}function zd(e,t,r,s){return e?kn:1===t.length?"JSXElement"===r.type&&!r.closingElement||"JSXElement"===(null==s?void 0:s.type)&&!s.closingElement?kn:vn:kn}function Hd(e,t,r){return e.selfClosing?[wn,"/>"]:function(e,t,r){let s=e.attributes.length>0&&Ic(Ws(!1,e.attributes,-1),Vi.Trailing);return 0===e.attributes.length&&!r||(t.bracketSameLine||t.jsxBracketSameLine)&&(!r||e.attributes.length>0)&&!s}(e,t,r)?[">"]:[vn,">"]}function Wd(e,t,r){return function(e,t,r){let{parent:s}=e;if(Pa.has(s.type))return t;let i=e.match(void 0,(e=>"ArrowFunctionExpression"===e.type),Li,(e=>"JSXExpressionContainer"===e.type)),n=xa(e,r);return Uc([n?"":zc("("),_c([vn,t]),vn,n?"":zc(")")],{shouldBreak:i})}(e,qd(e,Jd(e,t,r),t),t)}function Kd(e,t,r){let{node:s}=e;if(s.type.startsWith("JSX"))switch(s.type){case"JSXAttribute":return function(e,t,r){let{node:s}=e,i=[];if(i.push(r("name")),s.value){let n;if(tc(s.value)){let r=zs(!1,zs(!1,xc(s.value).slice(1,-1),"&apos;","'"),"&quot;",'"'),i=li(r,t.jsxSingleQuote);r='"'===i?zs(!1,r,'"',"&quot;"):zs(!1,r,"'","&apos;"),n=e.call((()=>qd(e,ih(i+r+i),t)),"value")}else n=r("value");i.push("=",n)}return i}(e,t,r);case"JSXIdentifier":return s.name;case"JSXNamespacedName":return Kc(":",[r("namespace"),r("name")]);case"JSXMemberExpression":return Kc(".",[r("object"),r("property")]);case"JSXSpreadAttribute":case"JSXSpreadChild":return function(e,t,r){let{node:s}=e;return["{",e.call((({node:s})=>{let i=["...",r()];return Ic(s)&&td(e)?[_c([vn,qd(e,i,t)]),vn]:i}),"JSXSpreadAttribute"===s.type?"argument":"expression"),"}"]}(e,t,r);case"JSXExpressionContainer":return function(e,t,r){let{node:s}=e,i=(e,t)=>"JSXEmptyExpression"===e.type||!Ic(e)&&(Ci(e)||Fi(e)||"ArrowFunctionExpression"===e.type||"AwaitExpression"===e.type&&(i(e.argument,e)||"JSXElement"===e.argument.type)||Li(e)||"ChainExpression"===e.type&&Li(e.expression)||"FunctionExpression"===e.type||"TemplateLiteral"===e.type||"TaggedTemplateExpression"===e.type||"DoExpression"===e.type||vi(t)&&("ConditionalExpression"===e.type||ki(e)));return i(s.expression,e.parent)?Uc(["{",r("expression"),bn,"}"]):Uc(["{",_c([vn,r("expression")]),vn,bn,"}"])}(e,0,r);case"JSXFragment":case"JSXElement":return Wd(e,t,r);case"JSXOpeningElement":return function(e,t,r){var s,i;let{node:n}=e,a=Ic(n.name)||Ic(n.typeParameters)||Ic(n.typeArguments);if(n.selfClosing&&0===n.attributes.length&&!a)return["<",r("name"),n.typeArguments?r("typeArguments"):r("typeParameters")," />"];if(1===(null==(s=n.attributes)?void 0:s.length)&&tc(n.attributes[0].value)&&!n.attributes[0].value.value.includes("\n")&&!a&&!Ic(n.attributes[0]))return Uc(["<",r("name"),n.typeArguments?r("typeArguments"):r("typeParameters")," ",...e.map(r,"attributes"),n.selfClosing?" />":">"]);let o=null==(i=n.attributes)?void 0:i.some((e=>tc(e.value)&&e.value.value.includes("\n"))),u=t.singleAttributePerLine&&n.attributes.length>1?kn:wn;return Uc(["<",r("name"),n.typeArguments?r("typeArguments"):r("typeParameters"),_c(e.map((()=>[u,r()]),"attributes")),...Hd(n,t,a)],{shouldBreak:o})}(e,t,r);case"JSXClosingElement":return function(e,t,r){let{node:s}=e,i=[];i.push("</");let n=r("name");return Ic(s.name,Vi.Leading|Vi.Line)?i.push(_c([kn,n]),kn):Ic(s.name,Vi.Leading|Vi.Block)?i.push(" ",n):i.push(n),i.push(">"),i}(e,0,r);case"JSXOpeningFragment":case"JSXClosingFragment":return function(e,t){let{node:r}=e,s=Ic(r),i=Ic(r,Vi.Line),n="JSXOpeningFragment"===r.type;return[n?"<":"</",_c([i?kn:s&&!n?" ":"",Ud(e,t)]),i?kn:"",">"]}(e,t);case"JSXEmptyExpression":return function(e,t){let{node:r}=e,s=Ic(r,Vi.Line);return[Ud(e,t,{indent:s}),s?kn:""]}(e,t);case"JSXText":throw new Error("JSXText should be handled by JSXElement");default:throw new Ta(s,"JSX")}}function Xd(e){return"JSXText"===e.type&&(ba.hasNonWhitespaceCharacter(xc(e))||!/\n/u.test(xc(e)))}function Gd(e){return kc(e.node)||function(e){let{node:t,parent:r}=e;if(!vi(t)||!vi(r))return!1;let s,{index:i,siblings:n}=e;for(let a=i;a>0;a--){let e=n[a-1];if("JSXText"!==e.type||Xd(e)){s=e;break}}return"JSXExpressionContainer"===(null==s?void 0:s.type)&&"JSXEmptyExpression"===s.expression.type&&kc(s.expression)}(e)}function Yd(e,t,r){var s;let{node:i,parent:n,grandparent:a,key:o}=e,u="body"!==o&&("IfStatement"===n.type||"WhileStatement"===n.type||"SwitchStatement"===n.type||"DoWhileStatement"===n.type),p="|>"===i.operator&&(null==(s=e.root.extra)?void 0:s.__isUsingHackPipeline),l=Qd(e,r,t,!1,u);if(u)return l;if(p)return Uc(l);if(Li(n)&&n.callee===i||"UnaryExpression"===n.type||Mi(n)&&!n.computed)return Uc([_c([vn,...l]),vn]);let c="ReturnStatement"===n.type||"ThrowStatement"===n.type||"JSXExpressionContainer"===n.type&&"JSXAttribute"===a.type||"|"!==i.operator&&"JsExpressionRoot"===n.type||"NGPipeExpression"!==i.type&&("NGRoot"===n.type&&"__ng_binding"===t.parser||"NGMicrosyntaxExpression"===n.type&&"NGMicrosyntax"===a.type&&1===a.body.length)||i===n.body&&"ArrowFunctionExpression"===n.type||i!==n.body&&"ForStatement"===n.type||"ConditionalExpression"===n.type&&"ReturnStatement"!==a.type&&"ThrowStatement"!==a.type&&!Li(a)||"TemplateLiteral"===n.type,h="AssignmentExpression"===n.type||"VariableDeclarator"===n.type||"ClassProperty"===n.type||"PropertyDefinition"===n.type||"TSAbstractPropertyDefinition"===n.type||"ClassPrivateProperty"===n.type||Lc(n),d=ki(i.left)&&Tc(i.operator,i.left.operator);if(c||Zd(i)&&!d||!Zd(i)&&h)return Uc(l);if(0===l.length)return"";let m=vi(i.right),y=l.findIndex((e=>"string"!=typeof e&&!Array.isArray(e)&&e.type===an)),f=l.slice(0,-1===y?1:y+1),D=l.slice(f.length,m?-1:void 0),x=Symbol("logicalChain-"+ ++va),g=Uc([...f,_c(D)],{id:x});return m?Uc([g,Hc(Ws(!1,l,-1),{groupId:x})]):g}function Qd(e,t,r,s,i){var n;let{node:a}=e;if(!ki(a))return[Uc(t())];let o=[];Tc(a.operator,a.left.operator)?o=e.call((e=>Qd(e,t,r,!0,i)),"left"):o.push(Uc(t("left")));let u,p=Zd(a),l=("|>"===a.operator||"NGPipeExpression"===a.type||function(e,t){return("__vue_expression"===t.parser||"__vue_ts_expression"===t.parser)&&ka(e.node)&&!e.hasAncestor((e=>!ka(e)&&"JsExpressionRoot"!==e.type))}(e,r))&&!hc(r.originalText,a.right),c="NGPipeExpression"===a.type?"|":a.operator,h="NGPipeExpression"===a.type&&a.arguments.length>0?Uc(_c([vn,": ",Kc([wn,": "],e.map((()=>Rc(2,Uc(t()))),"arguments"))])):"";if(p)u=[c," ",t("right"),h];else{let s="|>"===c&&(null==(n=e.root.extra)?void 0:n.__isUsingHackPipeline)?e.call((e=>Qd(e,t,r,!0,i)),"right"):t("right");u=[l?wn:"",c,l?" ":wn,s,h]}let{parent:d}=e,m=Ic(a.left,Vi.Trailing|Vi.Line),y=m||!(i&&"LogicalExpression"===a.type)&&d.type!==a.type&&a.left.type!==a.type&&a.right.type!==a.type;if(o.push(l?"":" ",y?Uc(u,{shouldBreak:m}):u),s&&Ic(a)){let t=sh(qd(e,o,r));return t.type===on?t.parts:Array.isArray(t)?t:[t]}return o}function Zd(e){return"LogicalExpression"===e.type&&!!(Fi(e.right)&&e.right.properties.length>0||Ci(e.right)&&e.right.elements.length>0||vi(e.right))}function em(e,t,r){let{node:s}=e;if(s.type.startsWith("NG"))switch(s.type){case"NGRoot":return[r("node"),Ic(s.node)?" //"+Nc(s.node)[0].value.trimEnd():""];case"NGPipeExpression":return Yd(e,t,r);case"NGChainedExpression":return Uc(Kc([";",wn],e.map((()=>function({node:e}){return Xl(e,Ia)}(e)?r():["(",r(),")"]),"expressions")));case"NGEmptyExpression":return"";case"NGMicrosyntax":return e.map((()=>[e.isFirst?"":tm(e)?" ":[";",wn],r()]),"body");case"NGMicrosyntaxKey":return/^[$_a-z][\w$]*(?:-[$_a-z][\w$])*$/iu.test(s.name)?s.name:JSON.stringify(s.name);case"NGMicrosyntaxExpression":return[r("expression"),null===s.alias?"":[" as ",r("alias")]];case"NGMicrosyntaxKeyedExpression":{let{index:t,parent:i}=e,n=tm(e)||(1===t&&("then"===s.key.name||"else"===s.key.name||"as"===s.key.name)||(2===t||3===t)&&("else"===s.key.name&&"NGMicrosyntaxKeyedExpression"===i.body[t-1].type&&"then"===i.body[t-1].key.name||"track"===s.key.name))&&"NGMicrosyntaxExpression"===i.body[0].type;return[r("key"),n?" ":": ",r("expression")]}case"NGMicrosyntaxLet":return["let ",r("key"),null===s.value?"":[" = ",r("value")]];case"NGMicrosyntaxAs":return[r("key")," as ",r("alias")];default:throw new Ta(s,"Angular")}}function tm({node:e,index:t}){return"NGMicrosyntaxKeyedExpression"===e.type&&"of"===e.key.name&&1===t}function rm(e,t,r){let{node:s}=e;return Uc([Kc(wn,e.map(r,"decorators")),im(s,t)?kn:wn])}function sm(e,t,r){return nm(e.node)?[Kc(kn,e.map(r,"declaration","decorators")),kn]:""}function im(e,t){return e.decorators.some((e=>si(t.originalText,$l(e))))}function nm(e){var t;if("ExportDefaultDeclaration"!==e.type&&"ExportNamedDeclaration"!==e.type&&"DeclareExportDeclaration"!==e.type)return!1;let r=null==(t=e.declaration)?void 0:t.decorators;return oi(r)&&ql(e,r[0])}function am(e,t,r){let{node:s}=e,i=Sc(s);if(0===i.length)return["(",Ud(e,t),")"];let n=i.length-1;if(function(e){return 2===e.length?pm(e,0):3===e.length&&"Identifier"===e[0].type&&pm(e,1)}(i)){let t=["("];return Pc(e,((e,s)=>{t.push(r()),s!==n&&t.push(", ")})),t.push(")"),t}let a=!1,o=[];Pc(e,(({node:e},s)=>{let i=r();s===n||(Hi(e,t)?(a=!0,i=[i,",",kn,kn]):i=[i,",",wn]),o.push(i)}));let u="ImportExpression"===s.type||"Import"===s.callee.type,p=t.parser.startsWith("__ng_")||u||!Ec(t,"all")?"":",";function l(){return Uc(["(",_c([wn,...o]),p,wn,")"],{shouldBreak:!0})}if(a||"Decorator"!==e.parent.type&&function(e){if(e.length<=1)return!1;let t=0;for(let r of e)if(wi(r)){if(t+=1,t>1)return!0}else if(Li(r))for(let e of Sc(r))if(wi(e))return!0;return!1}(i))return l();if(function(e){if(2!==e.length)return!1;let[t,r]=e;return!("ModuleExpression"!==t.type||!function(e){return"ObjectExpression"===e.type&&1===e.properties.length&&Lc(e.properties[0])&&"Identifier"===e.properties[0].key.type&&"type"===e.properties[0].key.name&&tc(e.properties[0].value)&&"module"===e.properties[0].value.value}(r))||!Ic(t)&&("FunctionExpression"===t.type||"ArrowFunctionExpression"===t.type&&"BlockStatement"===t.body.type)&&"FunctionExpression"!==r.type&&"ArrowFunctionExpression"!==r.type&&"ConditionalExpression"!==r.type&&um(r)&&!om(r)}(i)){let e,t=o.slice(1);if(t.some(Zc))return l();try{e=r(wc(s,0),{expandFirstArg:!0})}catch(h){if(h instanceof Na)return l();throw h}return Zc(e)?[Sn,Jc([["(",Uc(e,{shouldBreak:!0}),", ",...t,")"],l()])]:Jc([["(",e,", ",...t,")"],["(",Uc(e,{shouldBreak:!0}),", ",...t,")"],l()])}if(function(e,t,r){var s,i;let n=Ws(!1,e,-1);if(1===e.length){let e=Ws(!1,t,-1);if(null!=(s=e.label)&&s.embed&&!1!==(null==(i=e.label)?void 0:i.hug))return!0}let a=Ws(!1,e,-2);return!Ic(n,Vi.Leading)&&!Ic(n,Vi.Trailing)&&om(n)&&(!a||a.type!==n.type)&&(2!==e.length||"ArrowFunctionExpression"!==a.type||!Ci(n))&&!(e.length>1&&Km(n,r))}(i,o,t)){let e,t=o.slice(0,-1);if(t.some(Zc))return l();try{e=r(wc(s,-1),{expandLastArg:!0})}catch(h){if(h instanceof Na)return l();throw h}return Zc(e)?[Sn,Jc([["(",...t,Uc(e,{shouldBreak:!0}),")"],l()])]:Jc([["(",...t,e,")"],["(",...t,Uc(e,{shouldBreak:!0}),")"],l()])}let c=["(",_c([vn,...o]),zc(p),vn,")"];return fc(e)?c:Uc(c,{shouldBreak:o.some(Zc)||a})}function om(e,t=!1){return Fi(e)&&(e.properties.length>0||Ic(e))||Ci(e)&&(e.elements.length>0||Ic(e))||"TSTypeAssertion"===e.type&&om(e.expression)||Wi(e)&&om(e.expression)||"FunctionExpression"===e.type||"ArrowFunctionExpression"===e.type&&(!e.returnType||!e.returnType.typeAnnotation||"TSTypeReference"!==e.returnType.typeAnnotation.type||function(e){return"BlockStatement"===e.type&&(e.body.some((e=>"EmptyStatement"!==e.type))||Ic(e,Vi.Dangling))}(e.body))&&("BlockStatement"===e.body.type||"ArrowFunctionExpression"===e.body.type&&om(e.body,!0)||Fi(e.body)||Ci(e.body)||!t&&(Li(e.body)||"ConditionalExpression"===e.body.type)||vi(e.body))||"DoExpression"===e.type||"ModuleExpression"===e.type}function um(e){if("ParenthesizedExpression"===e.type)return um(e.expression);if(Wi(e)||"TypeCastExpression"===e.type){let{typeAnnotation:t}=e;if("TypeAnnotation"===t.type&&(t=t.typeAnnotation),"TSArrayType"===t.type&&(t=t.elementType,"TSArrayType"===t.type&&(t=t.elementType)),"GenericTypeAnnotation"===t.type||"TSTypeReference"===t.type){let e=t.typeArguments??t.typeParameters;1===(null==e?void 0:e.params.length)&&(t=e.params[0])}return oc(t)&&Dc(e.expression,1)}return!(Bc(e)&&Sc(e).length>1)&&(ki(e)?Dc(e.left,1)&&Dc(e.right,1):rc(e)||Dc(e))}function pm(e,t){let r=e[t],s=e[t+1];return"ArrowFunctionExpression"===r.type&&0===bc(r).length&&"BlockStatement"===r.body.type&&"ArrayExpression"===s.type&&!e.some((e=>Ic(e)))}function lm(e,t,r){let s=r("property"),{node:i}=e,n=_m(e);return i.computed?!i.property||Zl(i.property)?[n,"[",s,"]"]:Uc([n,"[",_c([vn,s]),vn,"]"]):[n,".",s]}function cm(e,t,r){if("ChainExpression"===e.node.type)return e.call((()=>cm(e,t,r)),"expression");let{parent:s}=e,i=!s||"ExpressionStatement"===s.type,n=[];function a(e){let{originalText:r}=t,s=Mn(r,$l(e));return")"===r.charAt(s)?!1!==s&&ai(r,s+1):Hi(e,t)}function o(e){let{node:s}=e;if("ChainExpression"===s.type)return e.call((()=>o(e)),"expression");if(Li(s)&&(ac(s.callee)||Li(s.callee))){let i=a(s);n.unshift({node:s,hasTrailingEmptyLine:i,printed:[qd(e,[_m(e),qm(e,0,r),Ba(e,t,r)],t),i?kn:""]}),e.call((e=>o(e)),"callee")}else ac(s)?(n.unshift({node:s,needsParens:xa(e,t),printed:qd(e,Mi(s)?lm(e,0,r):Jm(0,0,r),t)}),e.call((e=>o(e)),"object")):"TSNonNullExpression"===s.type?(n.unshift({node:s,printed:qd(e,"!",t)}),e.call((e=>o(e)),"expression")):n.unshift({node:s,printed:r()})}let{node:u}=e;n.unshift({node:u,printed:[_m(e),qm(e,0,r),Ba(e,t,r)]}),u.callee&&e.call((e=>o(e)),"callee");let p=[],l=[n[0]],c=1;for(;c<n.length&&("TSNonNullExpression"===n[c].node.type||Li(n[c].node)||Mi(n[c].node)&&n[c].node.computed&&Zl(n[c].node.property));++c)l.push(n[c]);if(!Li(n[0].node))for(;c+1<n.length&&ac(n[c].node)&&ac(n[c+1].node);++c)l.push(n[c]);p.push(l),l=[];let h=!1;for(;c<n.length;++c){if(h&&ac(n[c].node)){if(n[c].node.computed&&Zl(n[c].node.property)){l.push(n[c]);continue}p.push(l),l=[],h=!1}(Li(n[c].node)||"ImportExpression"===n[c].node.type)&&(h=!0),l.push(n[c]),Ic(n[c].node,Vi.Trailing)&&(p.push(l),l=[],h=!1)}function d(e){return/^[A-Z]|^[$_]+$/u.test(e)}l.length>0&&p.push(l);let m=p.length>=2&&!Ic(p[1][0].node)&&function(e){var r;let s=null==(r=e[1][0])?void 0:r.node.computed;if(1===e[0].length){let r=e[0][0].node;return"ThisExpression"===r.type||"Identifier"===r.type&&(d(r.name)||i&&function(e){return e.length<=t.tabWidth}(r.name)||s)}let n=Ws(!1,e[0],-1).node;return Mi(n)&&"Identifier"===n.property.type&&(d(n.property.name)||s)}(p);function y(e){let t=e.map((e=>e.printed));return e.length>0&&Ws(!1,e,-1).needsParens?["(",...t,")"]:t}let f=p.map(y),D=f,x=m?3:2,g=p.flat(),E=g.slice(1,-1).some((e=>Ic(e.node,Vi.Leading)))||g.slice(0,-1).some((e=>Ic(e.node,Vi.Trailing)))||p[x]&&Ic(p[x][0].node,Vi.Leading);if(p.length<=x&&!E&&!p.some((e=>Ws(!1,e,-1).hasTrailingEmptyLine)))return fc(e)?D:Uc(D);let A=Ws(!1,p[m?1:0],-1).node,T=!Li(A)&&a(A),C=[y(p[0]),m?p.slice(1,2).map(y):"",T?kn:"",(b=p.slice(m?2:1),0===b.length?"":_c([kn,Kc(kn,b.map(y))]))],F=n.map((({node:e})=>e)).filter(Li);var b;let S;return S=E||F.length>2&&F.some((e=>!e.arguments.every((e=>Dc(e)))))||f.slice(0,-1).some(Zc)||function(){let e=Ws(!1,Ws(!1,p,-1),-1).node,t=Ws(!1,f,-1);return Li(e)&&Zc(t)&&F.slice(0,-1).some((e=>e.arguments.some(wi)))}()?Uc(C):[Zc(D)||T?Sn:"",Jc([D,C])],Xc({memberChain:!0},S)}function hm(e,t,r){var s;let{node:i}=e,n="NewExpression"===i.type,a="ImportExpression"===i.type,o=_m(e),u=Sc(i),p=1===u.length&&mc(u[0],t.originalText);if(p||function(e){let{node:t}=e;if("CallExpression"!==t.type||t.optional||"Identifier"!==t.callee.type)return!1;let r=Sc(t);return"require"===t.callee.name?1===r.length&&tc(r[0])||r.length>1:"define"===t.callee.name&&"ExpressionStatement"===e.parent.type&&(1===r.length||2===r.length&&"ArrayExpression"===r[0].type||3===r.length&&tc(r[0])&&"ArrayExpression"===r[1].type)}(e)||uc(i,e.parent)){let t=[];if(Pc(e,(()=>{t.push(r())})),!p||null==(s=t[0].label)||!s.embed)return[n?"new ":"",dm(e,r),o,qm(e,0,r),"(",Kc(", ",t),")"]}if(!a&&!n&&ac(i.callee)&&!e.call((e=>xa(e,t)),"callee",..."ChainExpression"===i.callee.type?["expression"]:[]))return Ma(e,t,r);let l=[n?"new ":"",dm(e,r),o,qm(e,0,r),Ba(e,t,r)];return a||Li(i.callee)?Uc(l):l}function dm(e,t){let{node:r}=e;return"ImportExpression"===r.type?"import"+(r.phase?`.${r.phase}`:""):t("callee")}function mm(e,t,r,s,i,n){let a=function(e,t,r,s,i){let{node:n}=e,a=n[i];if(!a)return"only-left";let o=!ym(a);if(e.match(ym,fm,(e=>!o||"ExpressionStatement"!==e.type&&"VariableDeclaration"!==e.type)))return o?"ArrowFunctionExpression"===a.type&&"ArrowFunctionExpression"===a.body.type?"chain-tail-arrow-chain":"chain-tail":"chain";if(!o&&ym(a.right)||hc(t.originalText,a))return"break-after-operator";if("ImportAttribute"===n.type||"CallExpression"===a.type&&"require"===a.callee.name||"json5"===t.parser||"jsonc"===t.parser||"json"===t.parser)return"never-break-after-operator";let u=function(e){return Yc(e,nh,!1)}(s);if(function(e){if(fm(e)){let t=e.left||e.id;return"ObjectPattern"===t.type&&t.properties.length>2&&t.properties.some((e=>{var t;return Lc(e)&&(!e.shorthand||"AssignmentPattern"===(null==(t=e.value)?void 0:t.type))}))}return!1}(n)||function(e){if("VariableDeclarator"!==e.type)return!1;let{typeAnnotation:t}=e.id;if(!t||!t.typeAnnotation)return!1;let r=xm(t.typeAnnotation);return oi(r)&&r.length>1&&r.some((e=>oi(xm(e))||"TSConditionalType"===e.type))}(n)||Dm(n)&&u)return"break-lhs";let p=function(e,t,r){return!!Lc(e)&&("string"==typeof(t=sh(t))&&Qs(t)<r.tabWidth+3)}(n,s,t);return e.call((()=>function(e,t,r,s){let i=e.node;if(ki(i)&&!Zd(i))return!0;switch(i.type){case"StringLiteralTypeAnnotation":case"SequenceExpression":return!0;case"TSConditionalType":case"ConditionalTypeAnnotation":if(!t.experimentalTernaries&&!function(e){function t(e){switch(e.type){case"FunctionTypeAnnotation":case"GenericTypeAnnotation":case"TSFunctionType":return!!e.typeParameters;case"TSTypeReference":return!!(e.typeArguments??e.typeParameters);default:return!1}}return t(e.checkType)||t(e.extendsType)}(i))break;return!0;case"ConditionalExpression":{if(!t.experimentalTernaries){let{test:e}=i;return ki(e)&&!Zd(e)}let{consequent:e,alternate:r}=i;return"ConditionalExpression"===e.type||"ConditionalExpression"===r.type}case"ClassExpression":return oi(i.decorators)}if(s)return!1;let n=i,a=[];for(;;)if("UnaryExpression"===n.type||"AwaitExpression"===n.type||"YieldExpression"===n.type&&null!==n.argument)n=n.argument,a.push("argument");else{if("TSNonNullExpression"!==n.type)break;n=n.expression,a.push("expression")}return!(!tc(n)&&!e.call((()=>gm(e,t,r)),...a))}(e,t,r,p)),i)?"break-after-operator":function(e){let t=function(e){var t;if(Oa(e))return null==(t=e.typeParameters)?void 0:t.params}(e);if(oi(t)){let r="TSTypeAliasDeclaration"===e.type?"constraint":"bound";if(t.length>1&&t.some((e=>e[r]||e.default)))return!0}return!1}(n)?"break-lhs":u||!p&&"TemplateLiteral"!==a.type&&"TaggedTemplateExpression"!==a.type&&"BooleanLiteral"!==a.type&&!Zl(a)&&"ClassExpression"!==a.type?"fluid":"never-break-after-operator"}(e,t,r,s,n),o=n?r(n,{assignmentLayout:a}):"";switch(a){case"break-after-operator":return Uc([Uc(s),i,Uc(_c([wn,o]))]);case"never-break-after-operator":return Uc([Uc(s),i," ",o]);case"fluid":{let e=Symbol("assignment");return Uc([Uc(s),i,Uc(_c(wn),{id:e}),bn,Hc(o,{groupId:e})])}case"break-lhs":return Uc([s,i," ",Uc(o)]);case"chain":return[Uc(s),i,wn,o];case"chain-tail":return[Uc(s),i,_c([wn,o])];case"chain-tail-arrow-chain":return[Uc(s),i,o];case"only-left":return s}}function ym(e){return"AssignmentExpression"===e.type}function fm(e){return ym(e)||"VariableDeclarator"===e.type}function Dm(e){var t;return"VariableDeclarator"===e.type&&"ArrowFunctionExpression"===(null==(t=e.init)?void 0:t.type)}function xm(e){var t;if(ja(e))return null==(t=e.typeArguments??e.typeParameters)?void 0:t.params}function gm(e,t,r,s=!1){var i;let{node:n}=e,a=()=>gm(e,t,r,!0);if("ChainExpression"===n.type||"TSNonNullExpression"===n.type)return e.call(a,"expression");if(Li(n)){if(null!=(i=hm(e,t,r).label)&&i.memberChain)return!1;let s=Sc(n);return!(!(0===s.length||1===s.length&&cc(s[0],t))||function(e,t){let r=function(e){var t;return null==(t=e.typeParameters??e.typeArguments)?void 0:t.params}(e);if(oi(r)){if(r.length>1)return!0;if(1===r.length){let e=r[0];if(Ki(e)||Xi(e)||"TSTypeLiteral"===e.type||"ObjectTypeAnnotation"===e.type)return!0}if(Zc(t(e.typeParameters?"typeParameters":"typeArguments")))return!0}return!1}(n,r))&&e.call(a,"callee")}return Mi(n)?e.call(a,"object"):s&&("Identifier"===n.type||"ThisExpression"===n.type)}function Em(e,t,r,s,i){let n=e.node,a=bc(n),o=i?qm(e,0,t):"";if(0===a.length)return[o,"(",Ud(e,r,{filter:e=>")"===On(r.originalText,$l(e))}),")"];let{parent:u}=e,p=uc(u),l=Am(n),c=[];if(function(e,t){let{node:r}=e,s=0,i=e=>t(e,s++);r.this&&e.call(i,"this"),Array.isArray(r.parameters)?e.each(i,"parameters"):Array.isArray(r.params)&&e.each(i,"params"),r.rest&&e.call(i,"rest")}(e,((e,s)=>{let i=s===a.length-1;i&&n.rest&&c.push("..."),c.push(t()),!i&&(c.push(","),p||l?c.push(" "):Hi(a[s],r)?c.push(kn,kn):c.push(wn))})),s&&!function(e){return e.match((e=>"ArrowFunctionExpression"===e.type&&"BlockStatement"===e.body.type),((e,t)=>{if("CallExpression"===e.type&&"arguments"===t&&1===e.arguments.length&&"CallExpression"===e.callee.type){let t=e.callee.callee;return"Identifier"===t.type||"MemberExpression"===t.type&&!t.computed&&"Identifier"===t.object.type&&"Identifier"===t.property.type}return!1}),((e,t)=>"VariableDeclarator"===e.type&&"init"===t||"ExportDefaultDeclaration"===e.type&&"declaration"===t||"TSExportAssignment"===e.type&&"expression"===t||"AssignmentExpression"===e.type&&"right"===t&&"MemberExpression"===e.left.type&&"Identifier"===e.left.object.type&&"module"===e.left.object.name&&"Identifier"===e.left.property.type&&"exports"===e.left.property.name),(e=>"VariableDeclaration"!==e.type||"const"===e.kind&&1===e.declarations.length))}(e)){if(Zc(o)||Zc(c))throw new Na;return Uc([rh(o),"(",rh(c),")"])}let h=a.every((e=>!oi(e.decorators)));return l&&h||p?[o,"(",...c,")"]:(nc(u)||function(e){return!("TypeAnnotation"!==e.type&&"TSTypeAnnotation"!==e.type||"FunctionTypeAnnotation"!==e.typeAnnotation.type||e.static||ql(e,e.typeAnnotation))}(u)||"TypeAlias"===u.type||"UnionTypeAnnotation"===u.type||"IntersectionTypeAnnotation"===u.type||"FunctionTypeAnnotation"===u.type&&u.returnType===n)&&1===a.length&&null===a[0].name&&n.this!==a[0]&&a[0].typeAnnotation&&null===n.typeParameters&&oc(a[0].typeAnnotation)&&!n.rest?"always"===r.arrowParens||"HookTypeAnnotation"===n.type?["(",...c,")"]:c:[o,"(",_c([vn,...c]),zc(!Fc(n)&&Ec(r,"all")?",":""),vn,")"]}function Am(e){if(!e)return!1;let t=bc(e);if(1!==t.length)return!1;let[r]=t;return!Ic(r)&&("ObjectPattern"===r.type||"ArrayPattern"===r.type||"Identifier"===r.type&&r.typeAnnotation&&("TypeAnnotation"===r.typeAnnotation.type||"TSTypeAnnotation"===r.typeAnnotation.type)&&Pi(r.typeAnnotation.typeAnnotation)||"FunctionTypeParam"===r.type&&Pi(r.typeAnnotation)&&r!==e.rest||"AssignmentPattern"===r.type&&("ObjectPattern"===r.left.type||"ArrayPattern"===r.left.type)&&("Identifier"===r.right.type||Fi(r.right)&&0===r.right.properties.length||Ci(r.right)&&0===r.right.elements.length))}function Tm(e,t){var r;let s=function(e){let t;return e.returnType?(t=e.returnType,t.typeAnnotation&&(t=t.typeAnnotation)):e.typeAnnotation&&(t=e.typeAnnotation),t}(e);if(!s)return!1;let i=null==(r=e.typeParameters)?void 0:r.params;if(i){if(i.length>1)return!1;if(1===i.length){let e=i[0];if(e.constraint||e.default)return!1}}return 1===bc(e).length&&(Pi(s)||Zc(t))}function Cm(e){return!(!oc(e)&&!Pi(e))||!!Ki(e)&&function(e){let{types:t}=e;if(t.some((e=>Ic(e))))return!1;let r=t.find((e=>Ra(e)));return!!r&&t.every((e=>e===r||_a(e)))}(e)}function Fm(e,t,r){let s=t.semi?";":"",{node:i}=e,n=[Um(e)];return n.push("type ",r("id"),r("typeParameters")),[mm(e,t,r,n," =","TSTypeAliasDeclaration"===i.type?"typeAnnotation":"right"),s]}function bm(e,t,r){let s=!1;return Uc(e.map((({isFirst:e,previous:t,node:i,index:n})=>{let a=r();if(e)return a;let o=Pi(i),u=Pi(t);return u&&o?[" & ",s?_c(a):a]:u||o?(n>1&&(s=!0),[" & ",n>1?_c(a):a]):_c([" &",wn,a])}),"types"))}function Sm(e,t,r){let{node:s}=e,{parent:i}=e,n=!("TypeParameterInstantiation"===i.type||"TSConditionalType"===i.type&&t.experimentalTernaries||"ConditionalTypeAnnotation"===i.type&&t.experimentalTernaries||"TSTypeParameterInstantiation"===i.type||"GenericTypeAnnotation"===i.type||"TSTypeReference"===i.type||"TSTypeAssertion"===i.type||"TupleTypeAnnotation"===i.type||"TSTupleType"===i.type||"FunctionTypeParam"===i.type&&!i.name&&e.grandparent.this!==i||("TypeAlias"===i.type||"VariableDeclarator"===i.type||"TSTypeAliasDeclaration"===i.type)&&hc(t.originalText,s)),a=Cm(s),o=e.map((e=>{let s=r();return a||(s=Rc(2,s)),qd(e,s,t)}),"types");if(a)return Kc(" | ",o);let u=[zc([n&&!hc(t.originalText,s)?wn:"","| "]),Kc([wn,"| "],o)];return xa(e,t)?Uc([_c(u),vn]):("TupleTypeAnnotation"===i.type||"TSTupleType"===i.type)&&i["TupleTypeAnnotation"===i.type&&i.types?"types":"elementTypes"].length>1?Uc([_c([zc(["(",vn]),u]),vn,zc(")")]):Uc(n?_c(u):u)}function Pm(e,t,r){let{node:s}=e,i=[$m(e)];("TSConstructorType"===s.type||"TSConstructSignatureDeclaration"===s.type)&&i.push("new ");let n=Em(e,r,t,!1,!0),a=[];return"FunctionTypeAnnotation"===s.type?a.push(function(e){var t;let{node:r,parent:s}=e;return"FunctionTypeAnnotation"===r.type&&(nc(s)||!(("ObjectTypeProperty"===s.type||"ObjectTypeInternalSlot"===s.type)&&!s.variance&&!s.optional&&ql(s,r)||"ObjectTypeCallProperty"===s.type||"DeclareFunction"===(null==(t=e.getParentNode(2))?void 0:t.type)))}(e)?" => ":": ",r("returnType")):a.push(Bm(e,r,s.returnType?"returnType":"typeAnnotation")),Tm(s,a)&&(n=Uc(n)),i.push(n,a),Uc(i)}function wm(e,t,r){return[r("objectType"),_m(e),"[",r("indexType"),"]"]}function vm(e,t,r){return["infer ",r("typeParameter")]}function km(e,t,r){let{node:s}=e;return[s.postfix?"":r,Bm(e,t),s.postfix?r:""]}function Im(e,t,r){let{node:s}=e;return["...",..."TupleTypeSpreadElement"===s.type&&s.label?[r("label"),": "]:[],r("typeAnnotation")]}function Nm(e,t,r){let{node:s}=e;return[s.variance?r("variance"):"",r("label"),s.optional?"?":"",": ",r("elementType")]}function Bm(e,t,r="typeAnnotation"){let{node:{[r]:s}}=e;if(!s)return"";let i=!1;if("TSTypeAnnotation"===s.type||"TypeAnnotation"===s.type){let t=e.call($a,r);("=>"===t||":"===t&&Ic(s,Vi.Leading))&&(i=!0),Ua.add(s)}return i?[" ",t(r)]:t(r)}function Lm(e,t,r){let s=$a(e);return s?[s," ",r("typeAnnotation")]:r("typeAnnotation")}function Mm(e){return[e("elementType"),"[]"]}function Om({node:e},t){let r="TSTypeQuery"===e.type?"exprName":"argument",s="TypeofTypeAnnotation"===e.type||e.typeArguments?"typeArguments":"typeParameters";return["typeof ",t(r),t(s)]}function jm(e,t){let{node:r}=e;return["TSTypePredicate"===r.type&&r.asserts?"asserts ":"TypePredicate"===r.type&&r.kind?`${r.kind} `:"",t("parameterName"),r.typeAnnotation?[" is ",Bm(e,t)]:""]}function _m(e){let{node:t}=e;return!t.optional||"Identifier"===t.type&&t===e.parent.key?"":Li(t)||Mi(t)&&t.computed||"OptionalIndexedAccessType"===t.type?"?.":"?"}function Rm(e){return e.node.definite||e.match(void 0,((e,t)=>"id"===t&&"VariableDeclarator"===e.type&&e.definite))?"!":""}function Um(e){let{node:t}=e;return t.declare||qa.has(t.type)&&"DeclareExportDeclaration"!==e.parent.type?"declare ":""}function $m({node:e}){return e.abstract||Ja.has(e.type)?"abstract ":""}function qm(e,t,r){let s=e.node;return s.typeArguments?r("typeArguments"):s.typeParameters?r("typeParameters"):""}function Jm(e,t,r){return["::",r("callee")]}function Vm(e,t,r){return"EmptyStatement"===e.type?";":"BlockStatement"===e.type||r?[" ",t]:_c([wn,t])}function zm(e,t){return["...",t("argument"),Bm(e,t)]}function Hm(e){return e.accessibility?e.accessibility+" ":""}function Wm(e,t,r){let{node:s}=e,i=[],n="TupleExpression"===s.type?"#[":"[",a="TupleTypeAnnotation"===s.type&&s.types?"types":"TSTupleType"===s.type||"TupleTypeAnnotation"===s.type?"elementTypes":"elements",o=s[a];if(0===o.length)i.push(function(e,t,r,s){let{node:i}=e,n=i.inexact?"...":"";return Ic(i,Vi.Dangling)?Uc([r,n,Ud(e,t,{indent:!0}),vn,s]):[r,n,s]}(e,t,n,"]"));else{let u=Ws(!1,o,-1),p="RestElement"!==(null==u?void 0:u.type)&&!s.inexact,l=null===u,c=Symbol("array"),h=!t.__inJestEach&&o.length>1&&o.every(((e,t,r)=>{let s=null==e?void 0:e.type;if(!Ci(e)&&!Fi(e))return!1;let i=r[t+1];if(i&&s!==i.type)return!1;let n=Ci(e)?"elements":"properties";return e[n]&&e[n].length>1})),d=Km(s,t),m=p?l?",":Ec(t)?d?zc(",","",{groupId:c}):zc(","):"":"";i.push(Uc([n,_c([vn,d?Ym(e,t,r,m):[Gm(e,t,a,s.inexact,r),m],Ud(e,t)]),vn,"]"],{shouldBreak:h,id:c}))}return i.push(_m(e),Bm(e,r)),i}function Km(e,t){return Ci(e)&&e.elements.length>1&&e.elements.every((e=>e&&(Zl(e)||ec(e)&&!Ic(e.argument))&&!Ic(e,Vi.Trailing|Vi.Line,(e=>!si(t.originalText,Ul(e),{backwards:!0})))))}function Xm({node:e},{originalText:t}){let r=e=>","===t[e]?e:r((e=>ii(t,ni(t,e)))(e+1));return ai(t,r($l(e)))}function Gm(e,t,r,s,i){let n=[];return e.each((({node:r,isLast:a})=>{n.push(r?Uc(i()):""),(!a||s)&&n.push([",",wn,r&&Xm(e,t)?vn:""])}),r),s&&n.push("..."),n}function Ym(e,t,r,s){let i=[];return e.each((({isLast:n,next:a})=>{i.push([r(),n?s:","]),n||i.push(Xm(e,t)?[kn,kn]:Ic(a,Vi.Leading|Vi.Line)?kn:wn)}),"elements"),Vc(i)}function Qm(e){return 1===e.length?e:e.toLowerCase().replace(/^([+-]?[\d.]+e)(?:\+|(-))?0*(?=\d)/u,"$1$2").replace(/^([+-]?[\d.]+)e[+-]?0+$/u,"$1").replace(/^([+-])?\./u,"$10.").replace(/(\.\d+?)0+(?=e|$)/u,"$1").replace(/\.(?=e|$)/u,"")}function Zm(e){return/^(?:\d+|\d+\.\d+)$/u.test(e)}function ey(e,t){return!("json"===t.parser||"jsonc"===t.parser||!tc(e.key)||hi(xc(e.key),t).slice(1,-1)!==e.key.value||!(Ka(e.key.value)&&!("babel-ts"===t.parser&&"ClassProperty"===e.type||"typescript"===t.parser&&"PropertyDefinition"===e.type)||Zm(e.key.value)&&String(Number(e.key.value))===e.key.value&&"ImportAttribute"!==e.type&&("babel"===t.parser||"acorn"===t.parser||"espree"===t.parser||"meriyah"===t.parser||"__babel_estree"===t.parser)))}function ty(e,t,r){let{node:s}=e;if(s.computed)return["[",r("key"),"]"];let{parent:i}=e,{key:n}=s;if("consistent"===t.quoteProps&&!Ga.has(i)){let r=e.siblings.some((e=>!e.computed&&tc(e.key)&&!ey(e,t)));Ga.set(i,r)}if(function(e,t){let{key:r}=e.node;return("Identifier"===r.type||Zl(r)&&Zm(Xa(xc(r)))&&String(r.value)===Xa(xc(r))&&!("typescript"===t.parser||"babel-ts"===t.parser))&&("json"===t.parser||"jsonc"===t.parser||"consistent"===t.quoteProps&&Ga.get(e.parent))}(e,t)){let r=hi(JSON.stringify("Identifier"===n.type?n.name:n.value.toString()),t);return e.call((e=>qd(e,r,t)),"key")}return ey(s,t)&&("as-needed"===t.quoteProps||"consistent"===t.quoteProps&&!Ga.get(i))?e.call((e=>qd(e,/^\d/u.test(n.value)?Xa(n.value):n.value,t)),"key"):r("key")}function ry(e,t,r){let{node:s}=e;return s.shorthand?r("value"):mm(e,t,r,ty(e,t,r),":","value")}function sy(e,t,r,s){if(Ya(e))return ny(e,r,t);let{node:i}=e,n=!1;if(("FunctionDeclaration"===i.type||"FunctionExpression"===i.type)&&null!=s&&s.expandLastArg){let{parent:t}=e;Li(t)&&(Sc(t).length>1||bc(i).every((e=>"Identifier"===e.type&&!e.typeAnnotation)))&&(n=!0)}let a=[Um(e),i.async?"async ":"",`function${i.generator?"*":""} `,i.id?t("id"):""],o=Em(e,t,r,n),u=oy(e,t),p=Tm(i,u);return a.push(qm(e,0,t),Uc([p?Uc(o):o,u]),i.body?" ":"",t("body")),r.semi&&(i.declare||!i.body)&&a.push(";"),a}function iy(e,t,r){let{node:s}=e,{kind:i}=s,n=s.value||s,a=[];return i&&"init"!==i&&"method"!==i&&"constructor"!==i?(za.ok("get"===i||"set"===i),a.push(i," ")):n.async&&a.push("async "),n.generator&&a.push("*"),a.push(ty(e,t,r),s.optional||s.key.optional?"?":"",s===n?ny(e,t,r):r("value")),a}function ny(e,t,r){let{node:s}=e,i=Em(e,r,t),n=oy(e,r),a=function(e){let t=bc(e);return t.length>1&&t.some((e=>"TSParameterProperty"===e.type))}(s),o=Tm(s,n),u=[qm(e,0,r),Uc([a?Uc(i,{shouldBreak:!0}):o?Uc(i):i,n])];return s.body?u.push(" ",r("body")):u.push(t.semi?";":""),u}function ay(e,t){if("always"===t.arrowParens)return!1;if("avoid"===t.arrowParens){let{node:t}=e;return function(e){let t=bc(e);return!(1!==t.length||e.typeParameters||Ic(e,Vi.Dangling)||"Identifier"!==t[0].type||t[0].typeAnnotation||Ic(t[0])||t[0].optional||e.predicate||e.returnType)}(t)}return!1}function oy(e,t){let{node:r}=e,s=[Bm(e,t,"returnType")];return r.predicate&&s.push(t("predicate")),s}function uy(e,t,r){let{node:s}=e,i=t.semi?";":"",n=[];if(s.argument){let e=r("argument");!function(e,t){if(hc(e.originalText,t)||Ic(t,Vi.Leading,(t=>jn(e.originalText,Ul(t),$l(t))))&&!vi(t))return!0;if(Gl(t)){let r,s=t;for(;r=Yl(s);)if(s=r,hc(e.originalText,s))return!0}return!1}(t,s.argument)?(ki(s.argument)||"SequenceExpression"===s.argument.type||t.experimentalTernaries&&"ConditionalExpression"===s.argument.type&&("ConditionalExpression"===s.argument.consequent.type||"ConditionalExpression"===s.argument.alternate.type))&&(e=Uc([zc("("),_c([vn,e]),vn,zc(")")])):e=["(",_c([kn,e]),kn,")"],n.push(" ",e)}let a=Ic(s,Vi.Dangling),o=i&&a&&Ic(s,Vi.Last|Vi.Line);return o&&n.push(i),a&&n.push(" ",Ud(e,t)),o||n.push(i),n}function py(e){return Qa.has(e)||Qa.set(e,"ConditionalExpression"===e.type&&!Ac(e,(e=>"ObjectExpression"===e.type))),Qa.get(e)}function ly(e,t,r,s={}){let i,n,a=[],o=[],u=!1,p=!s.expandLastArg&&"ArrowFunctionExpression"===e.node.body.type;!function l(){let{node:c}=e,h=function(e,t,r,s){let{node:i}=e,n=[];if(i.async&&n.push("async "),ay(e,t))n.push(r(["params",0]));else{let i=s.expandLastArg||s.expandFirstArg,a=oy(e,r);if(i){if(Zc(a))throw new Na;a=Uc(rh(a))}n.push(Uc([Em(e,r,t,i,!0),a]))}let a=Ud(e,t,{filter(e){let r=Mn(t.originalText,$l(e));return!1!==r&&"=>"===t.originalText.slice(r,r+2)}});return a&&n.push(" ",a),n}(e,t,r,s);if(0===a.length)a.push(h);else{let{leading:r,trailing:s}=$d(e,t);a.push([r,h]),o.unshift(s)}p&&(u||(u=c.returnType&&bc(c).length>0||c.typeParameters||bc(c).some((e=>"Identifier"!==e.type)))),p&&"ArrowFunctionExpression"===c.body.type?e.call(l,"body"):(i=r("body",s),n=c.body)}();let l,c=!hc(t.originalText,n)&&(Za(n)||function(e,t,r){var s,i;return Ci(e)||Fi(e)||"ArrowFunctionExpression"===e.type||"DoExpression"===e.type||"BlockStatement"===e.type||vi(e)||!1!==(null==(s=t.label)?void 0:s.hug)&&((null==(i=t.label)?void 0:i.embed)||mc(e,r.originalText))}(n,i,t)||!u&&py(n)),h="callee"===e.key&&Bc(e.parent),d=Symbol("arrow-chain"),m=function(e,t,{signatureDocs:r,shouldBreak:s}){if(1===r.length)return r[0];let{parent:i,key:n}=e;return"callee"!==n&&Bc(i)||ki(i)?Uc([r[0]," =>",_c([wn,Kc([" =>",wn],r.slice(1))])],{shouldBreak:s}):"callee"===n&&Bc(i)||t.assignmentLayout?Uc(Kc([" =>",wn],r),{shouldBreak:s}):Uc(_c(Kc([" =>",wn],r)),{shouldBreak:s})}(e,s,{signatureDocs:a,shouldBreak:u}),y=!1;return p&&(h||s.assignmentLayout)&&(y=!0,l="chain-tail-arrow-chain"===s.assignmentLayout||h&&!c),i=function(e,t,r,{bodyDoc:s,bodyComments:i,functionBody:n,shouldPutBodyOnSameLine:a}){let{node:o,parent:u}=e,p=r.expandLastArg&&Ec(t,"all")?zc(","):"",l=!r.expandLastArg&&"JSXExpressionContainer"!==u.type||Ic(o)?"":vn;return a&&py(n)?[" ",Uc([zc("","("),_c([vn,s]),zc("",")"),p,l]),i]:(Za(n)&&(s=Uc(["(",_c([vn,s]),vn,")"])),a?[" ",s,i]:[_c([wn,s,i]),p,l])}(e,t,s,{bodyDoc:i,bodyComments:o,functionBody:n,shouldPutBodyOnSameLine:c}),Uc([Uc(y?_c([vn,m]):m,{shouldBreak:l,id:d})," =>",p?Hc(i,{groupId:d}):Uc(i),p&&h?zc(vn,"",{groupId:d}):""])}function cy(e,t,r,s){let{node:i}=e,n=[],a=to(!1,i[s],(e=>"EmptyStatement"!==e.type));return e.each((({node:e})=>{"EmptyStatement"!==e.type&&(n.push(r()),e!==a&&(n.push(kn),Hi(e,t)&&n.push(kn)))}),s),n}function hy(e,t,r){let s=function(e,t,r){let{node:s}=e,i=oi(s.directives),n=s.body.some((e=>"EmptyStatement"!==e.type)),a=Ic(s,Vi.Dangling);if(!i&&!n&&!a)return"";let o=[];return i&&(o.push(cy(e,t,r,"directives")),(n||a)&&(o.push(kn),Hi(Ws(!1,s.directives,-1),t)&&o.push(kn))),n&&o.push(cy(e,t,r,"body")),a&&o.push(Ud(e,t)),o}(e,t,r),{node:i,parent:n}=e;if("Program"===i.type&&"ModuleExpression"!==(null==n?void 0:n.type))return s?[s,kn]:"";let a=[];if("StaticBlock"===i.type&&a.push("static "),a.push("{"),s)a.push(_c([kn,s]),kn);else{let t=e.grandparent;"ArrowFunctionExpression"===n.type||"FunctionExpression"===n.type||"FunctionDeclaration"===n.type||"ComponentDeclaration"===n.type||"HookDeclaration"===n.type||"ObjectMethod"===n.type||"ClassMethod"===n.type||"ClassPrivateMethod"===n.type||"ForStatement"===n.type||"WhileStatement"===n.type||"DoWhileStatement"===n.type||"DoExpression"===n.type||"ModuleExpression"===n.type||"CatchClause"===n.type&&!t.finalizer||"TSModuleDeclaration"===n.type||"StaticBlock"===i.type||a.push(kn)}return a.push("}"),a}function dy(e){let t=new WeakMap;return function(r){return t.has(r)||t.set(r,Symbol(e)),t.get(r)}}function my(e){switch(e){case null:return"";case"PlusOptional":return"+?";case"MinusOptional":return"-?";case"Optional":return"?"}}function yy(e,t){return"+"===e||"-"===e?e+t:t}function fy(e,t,r,s){let{node:i}=e;if(!i[s])return"";if(!Array.isArray(i[s]))return r(s);let n=uc(e.grandparent),a=e.match((e=>!(1===e[s].length&&Pi(e[s][0]))),void 0,((e,t)=>"typeAnnotation"===t),(e=>"Identifier"===e.type),Dm);if(0===i[s].length||!a&&(n||1===i[s].length&&("NullableTypeAnnotation"===i[s][0].type||Cm(i[s][0]))))return["<",Kc(", ",e.map(r,s)),Dy(e,t),">"];let o="TSTypeParameterInstantiation"===i.type?"":function(e,t,r){let{node:s}=e;return 1===bc(s).length&&s.type.startsWith("TS")&&!s[r][0].constraint&&"ArrowFunctionExpression"===e.parent.type&&!(t.filepath&&/\.ts$/u.test(t.filepath))}(e,t,s)?",":Ec(t)?zc(","):"";return Uc(["<",_c([vn,Kc([",",wn],e.map(r,s))]),o,vn,">"],{id:so(i)})}function Dy(e,t){let{node:r}=e;if(!Ic(r,Vi.Dangling))return"";let s=!Ic(r,Vi.Line),i=Ud(e,t,{indent:!s});return s?i:[i,kn]}function xy(e,t,r){let{node:s,parent:i}=e,n=["TSTypeParameter"===s.type&&s.const?"const ":""],a="TSTypeParameter"===s.type?r("name"):s.name;if("TSMappedType"===i.type)return i.readonly&&n.push(yy(i.readonly,"readonly")," "),n.push("[",a),s.constraint&&n.push(" in ",r("constraint")),i.nameType&&n.push(" as ",e.callParent((()=>r("nameType")))),n.push("]"),n;if(s.variance&&n.push(r("variance")),s.in&&n.push("in "),s.out&&n.push("out "),n.push(a),s.bound&&(s.usesExtendsBound&&n.push(" extends "),n.push(Bm(e,r,"bound"))),s.constraint){let e=Symbol("constraint");n.push(" extends",Uc(_c(wn),{id:e}),bn,Hc(r("constraint"),{groupId:e}))}return s.default&&n.push(" = ",r("default")),Uc(n)}function gy(e,t,r){let{node:s}=e,i=[Um(e),$m(e),"class"],n=Ic(s.id,Vi.Trailing)||Ic(s.typeParameters,Vi.Trailing)||Ic(s.superClass)||oi(s.extends)||oi(s.mixins)||oi(s.implements),a=[],o=[];if(s.id&&a.push(" ",r("id")),a.push(r("typeParameters")),s.superClass){let i=[Cy(e,0,r),r(s.superTypeArguments?"superTypeArguments":"superTypeParameters")],a=e.call((e=>["extends ",qd(e,i,t)]),"superClass");n?o.push(wn,Uc(a)):o.push(" ",a)}else o.push(Ty(e,t,r,"extends"));if(o.push(Ty(e,t,r,"mixins"),Ty(e,t,r,"implements")),n){let e;e=Ay(s)?[...a,_c(o)]:_c([...a,o]),i.push(Uc(e,{id:no(s)}))}else i.push(...a,...o);return i.push(" ",r("body")),i}function Ey(e){return zc(kn,"",{groupId:no(e)})}function Ay(e){return e.typeParameters&&!Ic(e.typeParameters,Vi.Trailing|Vi.Line)&&!function(e){return["extends","mixins","implements"].reduce(((t,r)=>t+(Array.isArray(e[r])?e[r].length:0)),e.superClass?1:0)>1}(e)}function Ty(e,t,r,s){let{node:i}=e;if(!oi(i[s]))return"";let n=Ud(e,t,{marker:s});return[Ay(i)?zc(" ",wn,{groupId:so(i.typeParameters)}):wn,n,n&&kn,s,Uc(_c([wn,Kc([",",wn],e.map(r,s))]))]}function Cy(e,t,r){let s=r("superClass"),{parent:i}=e;return"AssignmentExpression"===i.type?Uc(zc(["(",_c([vn,s]),vn,")"],s)):s}function Fy(e,t,r){let{node:s}=e,i=[];return oi(s.decorators)&&i.push(rm(e,t,r)),i.push(Hm(s)),s.static&&i.push("static "),i.push($m(e)),s.override&&i.push("override "),i.push(iy(e,t,r)),i}function by(e,t,r){let{node:s}=e,i=[],n=t.semi?";":"";return oi(s.decorators)&&i.push(rm(e,t,r)),i.push(Hm(s),Um(e)),s.static&&i.push("static "),i.push($m(e)),s.override&&i.push("override "),s.readonly&&i.push("readonly "),s.variance&&i.push(r("variance")),("ClassAccessorProperty"===s.type||"AccessorProperty"===s.type||"TSAbstractAccessorProperty"===s.type)&&i.push("accessor "),i.push(ty(e,t,r),_m(e),Rm(e),Bm(e,r)),[mm(e,t,r,i," =","TSAbstractPropertyDefinition"===s.type||"TSAbstractAccessorProperty"===s.type?void 0:"value"),n]}function Sy(e,t,r){let{node:s}=e,i=[];return e.each((({node:e,next:s,isLast:n})=>{i.push(r()),!t.semi&&io(e)&&function(e,t){var r;let{type:s,name:i}=e.key;if(!(e.computed||"Identifier"!==s||"static"!==i&&"get"!==i&&"set"!==i||e.value||e.typeAnnotation))return!0;if(!t||t.static||t.accessibility||t.readonly)return!1;if(!t.computed){let e=null==(r=t.key)?void 0:r.name;if("in"===e||"instanceof"===e)return!0}if(io(t)&&t.variance&&!t.static&&!t.declare)return!0;switch(t.type){case"ClassProperty":case"PropertyDefinition":case"TSAbstractPropertyDefinition":return t.computed;case"MethodDefinition":case"TSAbstractMethodDefinition":case"ClassMethod":case"ClassPrivateMethod":{if((t.value?t.value.async:t.async)||"get"===t.kind||"set"===t.kind)return!1;let e=t.value?t.value.generator:t.generator;return!(!t.computed&&!e)}case"TSIndexSignature":return!0}return!1}(e,s)&&i.push(";"),n||(i.push(kn),Hi(e,t)&&i.push(kn))}),"body"),Ic(s,Vi.Dangling)&&i.push(Ud(e,t)),[oi(s.body)?Ey(e.parent):"","{",i.length>0?[_c([kn,i]),kn]:"","}"]}function Py(e,t){if(t.semi||vy(e,t)||Iy(e,t))return!1;let{node:r,key:s,parent:i}=e;return!("ExpressionStatement"!==r.type||("body"!==s||"Program"!==i.type&&"BlockStatement"!==i.type&&"StaticBlock"!==i.type&&"TSModuleBlock"!==i.type)&&("consequent"!==s||"SwitchCase"!==i.type)||!e.call((()=>wy(e,t)),"expression"))}function wy(e,t){let{node:r}=e;switch(r.type){case"ParenthesizedExpression":case"TypeCastExpression":case"ArrayExpression":case"ArrayPattern":case"TemplateLiteral":case"TemplateElement":case"RegExpLiteral":return!0;case"ArrowFunctionExpression":if(!ay(e,t))return!0;break;case"UnaryExpression":{let{prefix:e,operator:t}=r;if(e&&("+"===t||"-"===t))return!0;break}case"BindExpression":if(!r.object)return!0;break;case"Literal":if(r.regex)return!0;break;default:if(vi(r))return!0}return!!xa(e,t)||!!Gl(r)&&e.call((()=>wy(e,t)),...Ql(r))}function vy({node:e,parent:t},r){return("markdown"===r.parentParser||"mdx"===r.parentParser)&&"ExpressionStatement"===e.type&&vi(e.expression)&&"Program"===t.type&&1===t.body.length}function ky(e){switch(e.type){case"MemberExpression":switch(e.property.type){case"Identifier":case"NumericLiteral":case"StringLiteral":return ky(e.object)}return!1;case"Identifier":return!0;default:return!1}}function Iy({node:e,parent:t},r){return("__vue_event_binding"===r.parser||"__vue_ts_event_binding"===r.parser)&&"ExpressionStatement"===e.type&&"Program"===t.type&&1===t.body.length}function Ny(e,t,r){let s=[r("expression")];return Iy(e,t)?ky(e.node.expression)&&s.push(";"):vy(e,t)||t.semi&&s.push(";"),s}function By(e){return e.toLowerCase()}function Ly({pattern:e,flags:t}){return`/${e}/${t=[...t].sort().join("")}`}function My(e,t){let r=e.slice(1,-1);if(r.includes('"')||r.includes("'"))return e;let s=t.singleQuote?"'":'"';return s+r+s}function Oy(e,t,r){let s=e.originalText.slice(t,r);for(let i of e[Symbol.for("comments")]){let e=Ul(i);if(e>r)break;let n=$l(i);if(n<t)continue;let a=n-e;s=s.slice(0,e-t)+" ".repeat(a)+s.slice(n-t)}return s}function jy(e,t,r){let{node:s}=e,i=[sm(e,0,r),Um(e),"export",oo(s)?" default":""],{declaration:n,exported:a}=s;return Ic(s,Vi.Dangling)&&(i.push(" ",Ud(e,t)),yc(s)&&i.push(kn)),n?i.push(" ",r("declaration")):(i.push(function(e){return _y(e.exportKind)}(s)),"ExportAllDeclaration"===s.type||"DeclareExportAllDeclaration"===s.type?(i.push(" *"),a&&i.push(" as ",r("exported"))):i.push($y(e,t,r)),i.push(Uy(e,t,r),Jy(e,t,r))),i.push(function(e,t){return t.semi&&(!e.declaration||oo(e)&&!uo(e.declaration))?";":""}(s,t)),i}function _y(e,t=!0){return e&&"value"!==e?`${t?" ":""}${e}${t?"":" "}`:""}function Ry(e,t){return _y(e.importKind,t)}function Uy(e,t,r){let{node:s}=e;if(!s.source)return"";let i=[];return qy(s,t)&&i.push(" from"),i.push(" ",r("source")),i}function $y(e,t,r){let{node:s}=e;if(!qy(s,t))return"";let i=[" "];if(oi(s.specifiers)){let n=[],a=[];e.each((()=>{let t=e.node.type;if("ExportNamespaceSpecifier"===t||"ExportDefaultSpecifier"===t||"ImportNamespaceSpecifier"===t||"ImportDefaultSpecifier"===t)n.push(r());else{if("ExportSpecifier"!==t&&"ImportSpecifier"!==t)throw new Ta(s,"specifier");a.push(r())}}),"specifiers"),i.push(Kc(", ",n)),a.length>0&&(n.length>0&&i.push(", "),a.length>1||n.length>0||s.specifiers.some((e=>Ic(e)))?i.push(Uc(["{",_c([t.bracketSpacing?wn:vn,Kc([",",wn],a)]),zc(Ec(t)?",":""),t.bracketSpacing?wn:vn,"}"])):i.push(["{",t.bracketSpacing?" ":"",...a,t.bracketSpacing?" ":"","}"]))}else i.push("{}");return i}function qy(e,t){return!("ImportDeclaration"===e.type&&!oi(e.specifiers)&&"type"!==e.importKind)||ao(t,Ul(e),Ul(e.source)).trimEnd().endsWith("from")}function Jy(e,t,r){let{node:s}=e;if(!s.source)return"";let i=function(e,t){var r,s;if(null!=(r=e.extra)&&r.deprecatedAssertSyntax)return"assert";let i=ao(t,$l(e.source),null!=(s=e.attributes)&&s[0]?Ul(e.attributes[0]):$l(e)).trimStart();return i.startsWith("assert")?"assert":i.startsWith("with")||oi(e.attributes)?"with":void 0}(s,t);if(!i)return"";let n=[` ${i} {`];return oi(s.attributes)&&(t.bracketSpacing&&n.push(" "),n.push(Kc(", ",e.map(r,"attributes"))),t.bracketSpacing&&n.push(" ")),n.push("}"),n}function Vy(e,t,r){let{node:s}=e,{type:i}=s,n=i.startsWith("Import"),a=n?"imported":"local",o=n?"local":"exported",u=s[a],p=s[o],l="",c="";return"ExportNamespaceSpecifier"===i||"ImportNamespaceSpecifier"===i?l="*":u&&(l=r(a)),p&&!function(e){if("ImportSpecifier"!==e.type&&"ExportSpecifier"!==e.type)return!1;let{local:t,["ImportSpecifier"===e.type?"imported":"exported"]:r}=e;return!(t.type!==r.type||!Jl(t,r))&&(tc(t)?t.value===r.value&&xc(t)===xc(r):"Identifier"===t.type&&t.name===r.name)}(s)&&(c=r(o)),[_y("ImportSpecifier"===i?s.importKind:s.exportKind,!1),l,l&&c?" as ":"",c]}function zy(e,t,r){var s;let i=t.semi?";":"",{node:n}=e,a="ObjectTypeAnnotation"===n.type,o="TSEnumDeclaration"===n.type||"EnumBooleanBody"===n.type||"EnumNumberBody"===n.type||"EnumBigIntBody"===n.type||"EnumStringBody"===n.type||"EnumSymbolBody"===n.type,u=["TSTypeLiteral"===n.type||o?"members":"TSInterfaceBody"===n.type?"body":"properties"];a&&u.push("indexers","callProperties","internalSlots");let p=u.flatMap((t=>e.map((({node:e})=>({node:e,printed:r(),loc:Ul(e)})),t)));u.length>1&&p.sort(((e,t)=>e.loc-t.loc));let{parent:l,key:c}=e,h=a&&"body"===c&&("InterfaceDeclaration"===l.type||"DeclareInterface"===l.type||"DeclareClass"===l.type),d="TSInterfaceBody"===n.type||o||h||"ObjectPattern"===n.type&&"FunctionDeclaration"!==l.type&&"FunctionExpression"!==l.type&&"ArrowFunctionExpression"!==l.type&&"ObjectMethod"!==l.type&&"ClassMethod"!==l.type&&"ClassPrivateMethod"!==l.type&&"AssignmentPattern"!==l.type&&"CatchClause"!==l.type&&n.properties.some((e=>e.value&&("ObjectPattern"===e.value.type||"ArrayPattern"===e.value.type)))||"ObjectPattern"!==n.type&&p.length>0&&jn(t.originalText,Ul(n),p[0].loc),m=h?";":"TSInterfaceBody"===n.type||"TSTypeLiteral"===n.type?zc(i,";"):",",y="RecordExpression"===n.type?"#{":n.exact?"{|":"{",f=n.exact?"|}":"}",D=[],x=p.map((e=>{let r=[...D,Uc(e.printed)];return D=[m,wn],("TSPropertySignature"===e.node.type||"TSMethodSignature"===e.node.type||"TSConstructSignatureDeclaration"===e.node.type||"TSCallSignatureDeclaration"===e.node.type)&&Ic(e.node,Vi.PrettierIgnore)&&D.shift(),Hi(e.node,t)&&D.push(kn),r}));if(n.inexact||n.hasUnknownMembers){let r;if(Ic(n,Vi.Dangling)){let s=Ic(n,Vi.Line);r=[Ud(e,t),s||si(t.originalText,$l(Ws(!1,Nc(n),-1)))?kn:wn,"..."]}else r=["..."];x.push([...D,...r])}let g,E=null==(s=Ws(!1,p,-1))?void 0:s.node,A=!(n.inexact||n.hasUnknownMembers||E&&("RestElement"===E.type||("TSPropertySignature"===E.type||"TSCallSignatureDeclaration"===E.type||"TSMethodSignature"===E.type||"TSConstructSignatureDeclaration"===E.type)&&Ic(E,Vi.PrettierIgnore)));if(0===x.length){if(!Ic(n,Vi.Dangling))return[y,f,Bm(e,r)];g=Uc([y,Ud(e,t,{indent:!0}),vn,f,_m(e),Bm(e,r)])}else g=[h&&oi(n.properties)?Ey(l):"",y,_c([t.bracketSpacing?wn:vn,...x]),zc(A&&(","!==m||Ec(t))?m:""),t.bracketSpacing?wn:vn,f,_m(e),Bm(e,r)];return e.match((e=>"ObjectPattern"===e.type&&!oi(e.decorators)),Hy)||Pi(n)&&(e.match(void 0,((e,t)=>"typeAnnotation"===t),((e,t)=>"typeAnnotation"===t),Hy)||e.match(void 0,((e,t)=>"FunctionTypeParam"===e.type&&"typeAnnotation"===t),Hy))||!d&&e.match((e=>"ObjectPattern"===e.type),(e=>"AssignmentExpression"===e.type||"VariableDeclarator"===e.type))?g:Uc(g,{shouldBreak:d})}function Hy(e,t){return("params"===t||"parameters"===t||"this"===t||"rest"===t)&&Am(e)}function Wy(e,t,r){let{node:s}=e,i="ConditionalExpression"===s.type,n=i?"alternate":"falseType",{parent:a}=e,o=i?r("test"):[r("checkType")," ","extends"," ",r("extendsType")];return a.type===s.type&&a[n]===s?Rc(2,o):o}function Ky(e,t,r){let s,i,{node:n}=e,a="ConditionalExpression"===n.type,o=a?"consequent":"trueType",u=a?"alternate":"falseType",p=a?["test"]:["checkType","extendsType"],l=n[o],c=n[u],h=[],d=!1,{parent:m}=e,y=m.type===n.type&&p.some((e=>m[e]===n)),f=m.type===n.type&&!y,D=0;do{i=s||n,s=e.getParentNode(D),D++}while(s&&s.type===n.type&&p.every((e=>s[e]!==i)));let x=s||m,g=i;if(a&&(vi(n[p[0]])||vi(l)||vi(c)||function(e){let t=[e];for(let r=0;r<t.length;r++){let e=t[r];for(let r of["test","consequent","alternate"]){let s=e[r];if(vi(s))return!0;"ConditionalExpression"===s.type&&t.push(s)}}return!1}(g))){d=!0,f=!0;let e=e=>[zc("("),_c([vn,e]),vn,zc(")")],t=e=>"NullLiteral"===e.type||"Literal"===e.type&&null===e.value||"Identifier"===e.type&&"undefined"===e.name;h.push(" ? ",t(l)?r(o):e(r(o))," : ",c.type===n.type||t(c)?r(u):e(r(u)))}else{let e=e=>t.useTabs?_c(r(e)):Rc(2,r(e)),s=[wn,"? ",l.type===n.type?zc("","("):"",e(o),l.type===n.type?zc("",")"):"",wn,": ",e(u)];h.push(m.type!==n.type||m[u]===n||y?s:t.useTabs?qc(_c(s)):Rc(Math.max(0,t.tabWidth-2),s))}let E=[o,u,...p].some((e=>Ic(n[e],(e=>Di(e)&&jn(t.originalText,Ul(e),$l(e)))))),A=!d&&(Mi(m)||"NGPipeExpression"===m.type&&m.left===n)&&!m.computed,T=function(e){let{node:t}=e;if("ConditionalExpression"!==t.type)return!1;let r,s=t;for(let i=0;!r;i++){let t=e.getParentNode(i);"ChainExpression"===t.type&&t.expression===s||Li(t)&&t.callee===s||Mi(t)&&t.object===s||"TSNonNullExpression"===t.type&&t.expression===s?s=t:"NewExpression"===t.type&&t.callee===s||Wi(t)&&t.expression===s?(r=e.getParentNode(i+1),s=t):r=t}return s!==t&&r[po.get(r.type)]===s}(e),C=(F=[Wy(e,0,r),f?h:_c(h),a&&A&&!T?vn:""],m===x?Uc(F,{shouldBreak:E}):E?[F,Sn]:F);var F;return y||T?Uc([_c([vn,C]),vn]):C}function Xy(e,t,r,s){if(!t.experimentalTernaries)return Ky(e,t,r);let i,n,{node:a}=e,o="ConditionalExpression"===a.type,u="TSConditionalType"===a.type||"ConditionalTypeAnnotation"===a.type,p=o?"consequent":"trueType",l=o?"alternate":"falseType",c=o?["test"]:["checkType","extendsType"],h=a[p],d=a[l],m=c.map((e=>a[e])),{parent:y}=e,f=y.type===a.type,D=f&&c.some((e=>y[e]===a)),x=f&&y[l]===a,g=h.type===a.type,E=d.type===a.type,A=E||x,T=t.tabWidth>2||t.useTabs,C=0;do{n=i||a,i=e.getParentNode(C),C++}while(i&&i.type===a.type&&c.every((e=>i[e]!==n)));let F=i||y,b=s&&s.assignmentLayout&&"break-after-operator"!==s.assignmentLayout&&("AssignmentExpression"===y.type||"VariableDeclarator"===y.type||"ClassProperty"===y.type||"PropertyDefinition"===y.type||"ClassPrivateProperty"===y.type||"ObjectProperty"===y.type||"Property"===y.type),S=("ReturnStatement"===y.type||"ThrowStatement"===y.type)&&!(g||E),P=o&&"JSXExpressionContainer"===F.type&&"JSXAttribute"!==e.grandparent.type,w=function(e){let{node:t}=e;if("ConditionalExpression"!==t.type)return!1;let r,s=t;for(let i=0;!r;i++){let t=e.getParentNode(i);"ChainExpression"===t.type&&t.expression===s||Li(t)&&t.callee===s||Mi(t)&&t.object===s||"TSNonNullExpression"===t.type&&t.expression===s?s=t:"NewExpression"===t.type&&t.callee===s||Wi(t)&&t.expression===s?(r=e.getParentNode(i+1),s=t):r=t}return s!==t&&r[lo.get(r.type)]===s}(e),v=function(e,t){return(Mi(t)||"NGPipeExpression"===t.type&&t.left===e)&&!t.computed}(a,y),k=u&&xa(e,t),I=T?t.useTabs?"\t":" ".repeat(t.tabWidth-1):"",N=function(e,t,r,s){return[...e.map((e=>Nc(e))),Nc(t),Nc(r)].flat().some((e=>Di(e)&&jn(s.originalText,Ul(e),$l(e))))}(m,h,d,t)||g||E,B=!A&&!f&&!u&&(P?"NullLiteral"===h.type||"Literal"===h.type&&null===h.value:cc(h,t)&&pc(a.test,3)),L=A||x||u&&!f||f&&o&&pc(a.test,1)||B,M=[];!g&&Ic(h,Vi.Dangling)&&e.call((e=>{M.push(Ud(e,t),kn)}),"consequent");let O=[];Ic(a.test,Vi.Dangling)&&e.call((e=>{O.push(Ud(e,t))}),"test"),!E&&Ic(d,Vi.Dangling)&&e.call((e=>{O.push(Ud(e,t))}),"alternate"),Ic(a,Vi.Dangling)&&O.push(Ud(e,t));let j=Symbol("test"),_=Symbol("consequent"),R=Symbol("test-and-consequent"),U=Uc([o?[co(r("test")),"ConditionalExpression"===a.test.type?Sn:""]:[r("checkType")," ","extends"," ","TSConditionalType"===a.extendsType.type||"ConditionalTypeAnnotation"===a.extendsType.type||"TSMappedType"===a.extendsType.type?r("extendsType"):Uc(co(r("extendsType")))]," ?"],{id:j}),$=r(p),q=_c([g||P&&(vi(h)||f||A)?kn:wn,M,$]),J=L?Uc([U,A?q:zc(q,Uc(q,{id:_}),{groupId:j})],{id:R}):[U,q],V=r(l),z=B?zc(V,qc(co(V)),{groupId:R}):V,H=[J,O.length>0?[_c([kn,O]),kn]:E?kn:B?zc(wn," ",{groupId:R}):wn,":",E?" ":T?L?zc(I,zc(A||B?" ":I," "),{groupId:R}):zc(I," "):" ",E?z:Uc([_c(z),P&&!B?vn:""]),v&&!w?vn:"",N?Sn:""];return b&&!N?Uc(_c([vn,Uc(H)])):b||S?Uc(_c(H)):w||u&&D?Uc([_c([vn,H]),k?vn:""]):y===F?Uc(H):H}function Gy(e,t,r,s){let{node:i}=e;if(bi(i))return function(e,t){let{node:r}=e;switch(r.type){case"RegExpLiteral":return Ly(r);case"BigIntLiteral":return By(r.extra.raw);case"NumericLiteral":return Xa(r.extra.raw);case"StringLiteral":return ih(hi(r.extra.raw,t));case"NullLiteral":return"null";case"BooleanLiteral":return String(r.value);case"DecimalLiteral":return Xa(r.value)+"m";case"DirectiveLiteral":return My(r.extra.raw,t);case"Literal":{if(r.regex)return Ly(r.regex);if(r.bigint)return By(r.raw);if(r.decimal)return Xa(r.decimal)+"m";let{value:s}=r;return"number"==typeof s?Xa(r.raw):"string"==typeof s?function(e){if("expression"!==e.key)return;let{parent:t}=e;return"ExpressionStatement"===t.type&&t.directive}(e)?My(r.raw,t):ih(hi(r.raw,t)):String(s)}}}(e,t);let n=t.semi?";":"",a=[];switch(i.type){case"JsExpressionRoot":return r("node");case"JsonRoot":return[r("node"),kn];case"File":return function(e,t,r){if(t.__isVueBindings||t.__isVueForBindingLeft){let s=e.map(r,"program","body",0,"params");if(1===s.length)return s[0];let i=Kc([",",wn],s);return t.__isVueForBindingLeft?["(",_c([vn,Uc(i)]),vn,")"]:i}if(t.__isEmbeddedTypescriptGenericParameters){let t=e.map(r,"program","body",0,"typeParameters","params");return Kc([",",wn],t)}}(e,t,r)??r("program");case"EmptyStatement":return"";case"ExpressionStatement":return Ny(e,t,r);case"ChainExpression":return r("expression");case"ParenthesizedExpression":return Ic(i.expression)||!Fi(i.expression)&&!Ci(i.expression)?Uc(["(",_c([vn,r("expression")]),vn,")"]):["(",r("expression"),")"];case"AssignmentExpression":return function(e,t,r){let{node:s}=e;return mm(e,t,r,r("left"),[" ",s.operator],"right")}(e,t,r);case"VariableDeclarator":return function(e,t,r){return mm(e,t,r,r("id")," =","init")}(e,t,r);case"BinaryExpression":case"LogicalExpression":return Yd(e,t,r);case"AssignmentPattern":return[r("left")," = ",r("right")];case"OptionalMemberExpression":case"MemberExpression":return function(e,t,r){var s;let i=r("object"),n=lm(e,0,r),{node:a}=e,o=e.findAncestor((e=>!(Mi(e)||"TSNonNullExpression"===e.type))),u=e.findAncestor((e=>!("ChainExpression"===e.type||"TSNonNullExpression"===e.type))),p=o&&("NewExpression"===o.type||"BindExpression"===o.type||"AssignmentExpression"===o.type&&"Identifier"!==o.left.type)||a.computed||"Identifier"===a.object.type&&"Identifier"===a.property.type&&!Mi(u)||("AssignmentExpression"===u.type||"VariableDeclarator"===u.type)&&(La(a.object)||(null==(s=i.label)?void 0:s.memberChain));return Xc(i.label,[i,p?n:Uc(_c([vn,n]))])}(e,0,r);case"MetaProperty":return[r("meta"),".",r("property")];case"BindExpression":return i.object&&a.push(r("object")),a.push(Uc(_c([vn,Jm(0,0,r)]))),a;case"Identifier":return[i.name,_m(e),Rm(e),Bm(e,r)];case"V8IntrinsicIdentifier":return["%",i.name];case"SpreadElement":case"SpreadElementPattern":case"SpreadPropertyPattern":case"RestElement":return zm(e,r);case"FunctionDeclaration":case"FunctionExpression":return sy(e,r,t,s);case"ArrowFunctionExpression":return ly(e,t,r,s);case"YieldExpression":return a.push("yield"),i.delegate&&a.push("*"),i.argument&&a.push(" ",r("argument")),a;case"AwaitExpression":if(a.push("await"),i.argument){a.push(" ",r("argument"));let{parent:t}=e;if(Li(t)&&t.callee===i||Mi(t)&&t.object===i){a=[_c([vn,...a]),vn];let t=e.findAncestor((e=>"AwaitExpression"===e.type||"BlockStatement"===e.type));if("AwaitExpression"!==(null==t?void 0:t.type)||!Ac(t.argument,(e=>e===i)))return Uc(a)}}return a;case"ExportDefaultDeclaration":case"ExportNamedDeclaration":case"ExportAllDeclaration":return jy(e,t,r);case"ImportDeclaration":return function(e,t,r){let{node:s}=e;return["import",s.module?" module":"",s.phase?` ${s.phase}`:"",Ry(s),$y(e,t,r),Uy(e,t,r),Jy(e,t,r),t.semi?";":""]}(e,t,r);case"ImportSpecifier":case"ExportSpecifier":case"ImportNamespaceSpecifier":case"ExportNamespaceSpecifier":case"ImportDefaultSpecifier":case"ExportDefaultSpecifier":return Vy(e,0,r);case"ImportAttribute":case"ObjectProperty":return ry(e,t,r);case"Import":return"import";case"Program":case"BlockStatement":case"StaticBlock":return hy(e,t,r);case"ClassBody":return Sy(e,t,r);case"ThrowStatement":return function(e,t,r){return["throw",uy(e,t,r)]}(e,t,r);case"ReturnStatement":return function(e,t,r){return["return",uy(e,t,r)]}(e,t,r);case"NewExpression":case"ImportExpression":case"OptionalCallExpression":case"CallExpression":return hm(e,t,r);case"ObjectExpression":case"ObjectPattern":case"RecordExpression":return zy(e,t,r);case"Property":return ic(i)?iy(e,t,r):ry(e,t,r);case"ObjectMethod":return iy(e,t,r);case"Decorator":return["@",r("expression")];case"ArrayExpression":case"ArrayPattern":case"TupleExpression":return Wm(e,t,r);case"SequenceExpression":{let{parent:t}=e;if("ExpressionStatement"===t.type||"ForStatement"===t.type){let t=[];return e.each((({isFirst:e})=>{e?t.push(r()):t.push(",",_c([wn,r()]))}),"expressions"),Uc(t)}return Uc(Kc([",",wn],e.map(r,"expressions")))}case"ThisExpression":return"this";case"Super":return"super";case"Directive":return[r("value"),n];case"UnaryExpression":return a.push(i.operator),/[a-z]$/u.test(i.operator)&&a.push(" "),Ic(i.argument)?a.push(Uc(["(",_c([vn,r("argument")]),vn,")"])):a.push(r("argument")),a;case"UpdateExpression":return[i.prefix?i.operator:"",r("argument"),i.prefix?"":i.operator];case"ConditionalExpression":return Xy(e,t,r,s);case"VariableDeclaration":{let t,s=e.map(r,"declarations"),o=e.parent,u="ForStatement"===o.type||"ForInStatement"===o.type||"ForOfStatement"===o.type,p=i.declarations.some((e=>e.init));return 1!==s.length||Ic(i.declarations[0])?s.length>0&&(t=_c(s[0])):t=s[0],a=[Um(e),i.kind,t?[" ",t]:"",_c(s.slice(1).map((e=>[",",p&&!u?kn:wn,e])))],u&&o.body!==i||a.push(n),Uc(a)}case"WithStatement":return Uc(["with (",r("object"),")",Vm(i.body,r("body"))]);case"IfStatement":{let s=Vm(i.consequent,r("consequent")),n=Uc(["if (",Uc([_c([vn,r("test")]),vn]),")",s]);if(a.push(n),i.alternate){let s=Ic(i.consequent,Vi.Trailing|Vi.Line)||yc(i),n="BlockStatement"===i.consequent.type&&!s;a.push(n?" ":kn),Ic(i,Vi.Dangling)&&a.push(Ud(e,t),s?kn:" "),a.push("else",Uc(Vm(i.alternate,r("alternate"),"IfStatement"===i.alternate.type)))}return a}case"ForStatement":{let s=Vm(i.body,r("body")),n=Ud(e,t),a=n?[n,vn]:"";return i.init||i.test||i.update?[a,Uc(["for (",Uc([_c([vn,r("init"),";",wn,r("test"),";",wn,r("update")]),vn]),")",s])]:[a,Uc(["for (;;)",s])]}case"WhileStatement":return Uc(["while (",Uc([_c([vn,r("test")]),vn]),")",Vm(i.body,r("body"))]);case"ForInStatement":return Uc(["for (",r("left")," in ",r("right"),")",Vm(i.body,r("body"))]);case"ForOfStatement":return Uc(["for",i.await?" await":""," (",r("left")," of ",r("right"),")",Vm(i.body,r("body"))]);case"DoWhileStatement":return a=[Uc(["do",Vm(i.body,r("body"))])],"BlockStatement"===i.body.type?a.push(" "):a.push(kn),a.push("while (",Uc([_c([vn,r("test")]),vn]),")",n),a;case"DoExpression":return[i.async?"async ":"","do ",r("body")];case"BreakStatement":case"ContinueStatement":return a.push("BreakStatement"===i.type?"break":"continue"),i.label&&a.push(" ",r("label")),a.push(n),a;case"LabeledStatement":return"EmptyStatement"===i.body.type?[r("label"),":;"]:[r("label"),": ",r("body")];case"TryStatement":return["try ",r("block"),i.handler?[" ",r("handler")]:"",i.finalizer?[" finally ",r("finalizer")]:""];case"CatchClause":if(i.param){let e=Ic(i.param,(e=>!Di(e)||e.leading&&si(t.originalText,$l(e))||e.trailing&&si(t.originalText,Ul(e),{backwards:!0}))),s=r("param");return["catch ",e?["(",_c([vn,s]),vn,") "]:["(",s,") "],r("body")]}return["catch ",r("body")];case"SwitchStatement":return[Uc(["switch (",_c([vn,r("discriminant")]),vn,")"])," {",i.cases.length>0?_c([kn,Kc(kn,e.map((({node:e,isLast:s})=>[r(),!s&&Hi(e,t)?kn:""]),"cases"))]):"",kn,"}"];case"SwitchCase":{i.test?a.push("case ",r("test"),":"):a.push("default:"),Ic(i,Vi.Dangling)&&a.push(" ",Ud(e,t));let s=i.consequent.filter((e=>"EmptyStatement"!==e.type));if(s.length>0){let i=cy(e,t,r,"consequent");a.push(1===s.length&&"BlockStatement"===s[0].type?[" ",i]:_c([kn,i]))}return a}case"DebuggerStatement":return["debugger",n];case"ClassDeclaration":case"ClassExpression":return gy(e,t,r);case"ClassMethod":case"ClassPrivateMethod":case"MethodDefinition":return Fy(e,t,r);case"ClassProperty":case"PropertyDefinition":case"ClassPrivateProperty":case"ClassAccessorProperty":case"AccessorProperty":return by(e,t,r);case"TemplateElement":return ih(i.value.raw);case"TemplateLiteral":return cd(e,r,t);case"TaggedTemplateExpression":return function(e,t){let r=t("quasi");return Xc(r.label&&{tagged:!0,...r.label},[t("tag"),t(e.node.typeArguments?"typeArguments":"typeParameters"),bn,r])}(e,r);case"PrivateIdentifier":return["#",i.name];case"PrivateName":return["#",r("id")];case"TopicReference":return"%";case"ArgumentPlaceholder":return"?";case"ModuleExpression":return["module ",r("body")];default:throw new Ta(i,"ESTree")}}function Yy(e,t,r){let{parent:s,node:i,key:n}=e,a=[r("expression")];switch(i.type){case"AsConstExpression":a.push(" as const");break;case"AsExpression":case"TSAsExpression":a.push(" as ",r("typeAnnotation"));break;case"SatisfiesExpression":case"TSSatisfiesExpression":a.push(" satisfies ",r("typeAnnotation"))}return"callee"===n&&Li(s)||"object"===n&&Mi(s)?Uc([_c([vn,...a]),vn]):a}function Qy(e,t,r){let{node:s}=e,i=[Um(e),"component"];s.id&&i.push(" ",r("id")),i.push(r("typeParameters"));let n=function(e,t,r){let{node:s}=e,i=s.params;if(s.rest&&(i=[...i,s.rest]),0===i.length)return["(",Ud(e,r,{filter:e=>")"===On(r.originalText,$l(e))}),")"];let n=[];return function(e,t){let{node:r}=e,s=0,i=e=>t(e,s++);e.each(i,"params"),r.rest&&e.call(i,"rest")}(e,((e,a)=>{let o=a===i.length-1;o&&s.rest&&n.push("..."),n.push(t()),!o&&(n.push(","),Hi(i[a],r)?n.push(kn,kn):n.push(wn))})),["(",_c([vn,...n]),zc(Ec(r,"all")&&!Zy(s,i)?",":""),vn,")"]}(e,r,t);return s.rendersType?i.push(Uc([n," ",r("rendersType")])):i.push(Uc([n])),s.body&&i.push(" ",r("body")),t.semi&&"DeclareComponent"===s.type&&i.push(";"),i}function Zy(e,t){var r;return e.rest||"RestElement"===(null==(r=Ws(!1,t,-1))?void 0:r.type)}function ef(e,t,r){return zy(e,r,t)}function tf(e,t){let{node:r}=e,s=t("id");r.computed&&(s=["[",s,"]"]);let i="";return r.initializer&&(i=t("initializer")),r.init&&(i=t("init")),i?[s," = ",i]:s}function rf(e,t,r){let{node:s}=e;return[Um(e),s.const?"const ":"","enum ",t("id")," ","TSEnumDeclaration"===s.type?ef(e,t,r):t("body")]}function sf(e){var t;let{node:r}=e;return"HookTypeAnnotation"===r.type&&"DeclareHook"===(null==(t=e.getParentNode(2))?void 0:t.type)}function nf(e,t,r){let{node:s}=e,i=[Um(e),"interface"],n=[],a=[];"InterfaceTypeAnnotation"!==s.type&&n.push(" ",r("id"),r("typeParameters"));let o=s.typeParameters&&!Ic(s.typeParameters,Vi.Trailing|Vi.Line);return oi(s.extends)&&a.push(o?zc(" ",wn,{groupId:so(s.typeParameters)}):wn,"extends ",(1===s.extends.length?gc:_c)(Kc([",",wn],e.map(r,"extends")))),Ic(s.id,Vi.Trailing)||oi(s.extends)?o?i.push(Uc([...n,_c(a)])):i.push(Uc(_c([...n,...a]))):i.push(...n,...a),i.push(" ",r("body")),Uc(i)}function af(e,t,r){let{node:s}=e;if(xi(s))return s.type.slice(0,-14).toLowerCase();let i=t.semi?";":"";switch(s.type){case"ComponentDeclaration":case"DeclareComponent":case"ComponentTypeAnnotation":return Qy(e,t,r);case"ComponentParameter":return function(e,t,r){let{node:s}=e;return s.shorthand?r("local"):[r("name")," as ",r("local")]}(e,0,r);case"ComponentTypeParameter":return function(e,t,r){let{node:s}=e,i=[];return s.name&&i.push(r("name"),s.optional?"?: ":": "),i.push(r("typeAnnotation")),i}(e,0,r);case"HookDeclaration":return function(e,t,r){let{node:s}=e,i=["hook"];s.id&&i.push(" ",r("id"));let n=Em(e,r,t,!1,!0),a=oy(e,r),o=Tm(s,a);return i.push(Uc([o?Uc(n):n,a]),s.body?" ":"",r("body")),i}(e,t,r);case"DeclareHook":return function(e,t,r){let{node:s}=e,i=[Um(e),"hook"];return s.id&&i.push(" ",r("id")),t.semi&&i.push(";"),i}(e,t,r);case"HookTypeAnnotation":return function(e,t,r){let{node:s}=e,i=[];i.push(sf(e)?"":"hook ");let n=Em(e,r,t,!1,!0),a=[];return a.push(sf(e)?": ":" => ",r("returnType")),Tm(s,a)&&(n=Uc(n)),i.push(n,a),Uc(i)}(e,t,r);case"DeclareClass":return gy(e,t,r);case"DeclareFunction":return[Um(e),"function ",r("id"),r("predicate"),i];case"DeclareModule":return["declare module ",r("id")," ",r("body")];case"DeclareModuleExports":return["declare module.exports",Bm(e,r),i];case"DeclareNamespace":return["declare namespace ",r("id")," ",r("body")];case"DeclareVariable":return[Um(e),s.kind??"var"," ",r("id"),i];case"DeclareExportDeclaration":case"DeclareExportAllDeclaration":return jy(e,t,r);case"DeclareOpaqueType":case"OpaqueType":return function(e,t,r){let s=t.semi?";":"",{node:i}=e,n=[Um(e),"opaque type ",r("id"),r("typeParameters")];return i.supertype&&n.push(": ",r("supertype")),i.impltype&&n.push(" = ",r("impltype")),n.push(s),n}(e,t,r);case"DeclareTypeAlias":case"TypeAlias":return Fm(e,t,r);case"IntersectionTypeAnnotation":return bm(e,0,r);case"UnionTypeAnnotation":return Sm(e,t,r);case"ConditionalTypeAnnotation":return Xy(e,t,r);case"InferTypeAnnotation":return vm(0,0,r);case"FunctionTypeAnnotation":return Pm(e,t,r);case"TupleTypeAnnotation":return Wm(e,t,r);case"TupleTypeLabeledElement":return Nm(e,0,r);case"TupleTypeSpreadElement":return Im(e,0,r);case"GenericTypeAnnotation":return[r("id"),fy(e,t,r,"typeParameters")];case"IndexedAccessType":case"OptionalIndexedAccessType":return wm(e,0,r);case"TypeAnnotation":return Lm(e,0,r);case"TypeParameter":return xy(e,0,r);case"TypeofTypeAnnotation":return Om(e,r);case"ExistsTypeAnnotation":return"*";case"ArrayTypeAnnotation":return Mm(r);case"DeclareEnum":case"EnumDeclaration":return rf(e,r,t);case"EnumBooleanBody":case"EnumNumberBody":case"EnumBigIntBody":case"EnumStringBody":case"EnumSymbolBody":return function(e,t,r){let s,{node:i}=e;if("EnumSymbolBody"===i.type||i.explicitType)switch(i.type){case"EnumBooleanBody":s="boolean";break;case"EnumNumberBody":s="number";break;case"EnumBigIntBody":s="bigint";break;case"EnumStringBody":s="string";break;case"EnumSymbolBody":s="symbol"}return[s?`of ${s} `:"",ef(e,t,r)]}(e,r,t);case"EnumBooleanMember":case"EnumNumberMember":case"EnumBigIntMember":case"EnumStringMember":case"EnumDefaultedMember":return tf(e,r);case"FunctionTypeParam":{let t=s.name?r("name"):e.parent.this===s?"this":"";return[t,_m(e),t?": ":"",r("typeAnnotation")]}case"DeclareInterface":case"InterfaceDeclaration":case"InterfaceTypeAnnotation":return nf(e,0,r);case"ClassImplements":case"InterfaceExtends":return[r("id"),r("typeParameters")];case"NullableTypeAnnotation":return["?",r("typeAnnotation")];case"Variance":{let{kind:e}=s;return za.ok("plus"===e||"minus"===e),"plus"===e?"+":"-"}case"KeyofTypeAnnotation":return["keyof ",r("argument")];case"ObjectTypeCallProperty":return[s.static?"static ":"",r("value")];case"ObjectTypeMappedTypeProperty":return function(e,t,r){let{node:s}=e;return Uc([s.variance?r("variance"):"","[",_c([r("keyTparam")," in ",r("sourceType")]),"]",my(s.optional),": ",r("propType")])}(e,0,r);case"ObjectTypeIndexer":return[s.static?"static ":"",s.variance?r("variance"):"","[",r("id"),s.id?": ":"",r("key"),"]: ",r("value")];case"ObjectTypeProperty":{let i="";return s.proto?i="proto ":s.static&&(i="static "),[i,"init"!==s.kind?s.kind+" ":"",s.variance?r("variance"):"",ty(e,t,r),_m(e),ic(s)?"":": ",r("value")]}case"ObjectTypeAnnotation":return zy(e,t,r);case"ObjectTypeInternalSlot":return[s.static?"static ":"","[[",r("id"),"]]",_m(e),s.method?"":": ",r("value")];case"ObjectTypeSpreadProperty":return zm(e,r);case"QualifiedTypeofIdentifier":case"QualifiedTypeIdentifier":return[r("qualification"),".",r("id")];case"NullLiteralTypeAnnotation":return"null";case"BooleanLiteralTypeAnnotation":return String(s.value);case"StringLiteralTypeAnnotation":return ih(hi(xc(s),t));case"NumberLiteralTypeAnnotation":return Xa(s.raw??s.extra.raw);case"BigIntLiteralTypeAnnotation":return By(s.raw??s.extra.raw);case"TypeCastExpression":return["(",r("expression"),Bm(e,r),")"];case"TypePredicate":return jm(e,r);case"TypeOperator":return[s.operator," ",r("typeAnnotation")];case"TypeParameterDeclaration":case"TypeParameterInstantiation":return fy(e,t,r,"params");case"InferredPredicate":case"DeclaredPredicate":return["predicate"!==e.key||"DeclareFunction"===e.parent.type||e.parent.returnType?" ":": ","%checks",..."DeclaredPredicate"===s.type?["(",r("value"),")"]:[]];case"AsExpression":case"AsConstExpression":case"SatisfiesExpression":return Yy(e,0,r)}}function of(e,t,r){var s;let{node:i}=e;if(!i.type.startsWith("TS"))return;if(Ei(i))return i.type.slice(2,-7).toLowerCase();let n=t.semi?";":"",a=[];switch(i.type){case"TSThisType":return"this";case"TSTypeAssertion":{let e=!(Ci(i.expression)||Fi(i.expression)),t=Uc(["<",_c([vn,r("typeAnnotation")]),vn,">"]),s=[zc("("),_c([vn,r("expression")]),vn,zc(")")];return e?Jc([[t,r("expression")],[t,Uc(s,{shouldBreak:!0})],[t,r("expression")]]):Uc([t,r("expression")])}case"TSDeclareFunction":return sy(e,r,t);case"TSExportAssignment":return["export = ",r("expression"),n];case"TSModuleBlock":return hy(e,t,r);case"TSInterfaceBody":case"TSTypeLiteral":return zy(e,t,r);case"TSTypeAliasDeclaration":return Fm(e,t,r);case"TSQualifiedName":return[r("left"),".",r("right")];case"TSAbstractMethodDefinition":case"TSDeclareMethod":return Fy(e,t,r);case"TSAbstractAccessorProperty":case"TSAbstractPropertyDefinition":return by(e,t,r);case"TSInterfaceHeritage":case"TSClassImplements":case"TSExpressionWithTypeArguments":case"TSInstantiationExpression":return[r("expression"),r(i.typeArguments?"typeArguments":"typeParameters")];case"TSTemplateLiteralType":return cd(e,r,t);case"TSNamedTupleMember":return Nm(e,0,r);case"TSRestType":return Im(e,0,r);case"TSOptionalType":return[r("typeAnnotation"),"?"];case"TSInterfaceDeclaration":return nf(e,0,r);case"TSTypeParameterDeclaration":case"TSTypeParameterInstantiation":return fy(e,t,r,"params");case"TSTypeParameter":return xy(e,0,r);case"TSAsExpression":case"TSSatisfiesExpression":return Yy(e,0,r);case"TSArrayType":return Mm(r);case"TSPropertySignature":return[i.readonly?"readonly ":"",ty(e,t,r),_m(e),Bm(e,r)];case"TSParameterProperty":return[Hm(i),i.static?"static ":"",i.override?"override ":"",i.readonly?"readonly ":"",r("parameter")];case"TSTypeQuery":return Om(e,r);case"TSIndexSignature":{let s=i.parameters.length>1?zc(Ec(t)?",":""):"",a=Uc([_c([vn,Kc([", ",vn],e.map(r,"parameters"))]),s,vn]),o="ClassBody"===e.parent.type&&"body"===e.key;return[o&&i.static?"static ":"",i.readonly?"readonly ":"","[",i.parameters?a:"","]",Bm(e,r),o?n:""]}case"TSTypePredicate":return jm(e,r);case"TSNonNullExpression":return[r("expression"),"!"];case"TSImportType":return[i.isTypeOf?"typeof ":"","import(",r("argument"),")",i.qualifier?[".",r("qualifier")]:"",fy(e,t,r,i.typeArguments?"typeArguments":"typeParameters")];case"TSLiteralType":return r("literal");case"TSIndexedAccessType":return wm(e,0,r);case"TSTypeOperator":return[i.operator," ",r("typeAnnotation")];case"TSMappedType":return function(e,t,r){let{node:s}=e,i=jn(t.originalText,Ul(s),Ul(s.typeParameter));return Uc(["{",_c([t.bracketSpacing?wn:vn,Uc([r("typeParameter"),s.optional?yy(s.optional,"?"):"",s.typeAnnotation?": ":"",r("typeAnnotation")]),t.semi?zc(";"):""]),Ud(e,t),t.bracketSpacing?wn:vn,"}"],{shouldBreak:i})}(e,t,r);case"TSMethodSignature":{let s=i.kind&&"method"!==i.kind?`${i.kind} `:"";a.push(Hm(i),s,i.computed?"[":"",r("key"),i.computed?"]":"",_m(e));let n=Em(e,r,t,!1,!0),o=i.returnType?"returnType":"typeAnnotation",u=i[o],p=u?Bm(e,r,o):"",l=Tm(i,p);return a.push(l?Uc(n):n),u&&a.push(Uc(p)),Uc(a)}case"TSNamespaceExportDeclaration":return["export as namespace ",r("id"),t.semi?";":""];case"TSEnumDeclaration":return rf(e,r,t);case"TSEnumMember":return tf(e,r);case"TSImportEqualsDeclaration":return[i.isExport?"export ":"","import ",Ry(i,!1),r("id")," = ",r("moduleReference"),t.semi?";":""];case"TSExternalModuleReference":return["require(",r("expression"),")"];case"TSModuleDeclaration":{let{parent:o}=e,u="TSModuleDeclaration"===o.type,p="TSModuleDeclaration"===(null==(s=i.body)?void 0:s.type);if(u)a.push(".");else if(a.push(Um(e)),"global"!==i.kind&&!i.global){let e=i.kind??(tc(i.id)||ao(t,Ul(i),Ul(i.id)).trim().endsWith("module")?"module":"namespace");a.push(e," ")}return a.push(r("id")),p?a.push(r("body")):i.body?a.push(" ",Uc(r("body"))):a.push(n),a}case"TSConditionalType":return Xy(e,t,r);case"TSInferType":return vm(0,0,r);case"TSIntersectionType":return bm(e,0,r);case"TSUnionType":return Sm(e,t,r);case"TSFunctionType":case"TSCallSignatureDeclaration":case"TSConstructorType":case"TSConstructSignatureDeclaration":return Pm(e,t,r);case"TSTupleType":return Wm(e,t,r);case"TSTypeReference":return[r("typeName"),fy(e,t,r,i.typeArguments?"typeArguments":"typeParameters")];case"TSTypeAnnotation":return Lm(e,0,r);case"TSEmptyBodyFunctionExpression":return ny(e,t,r);case"TSJSDocAllType":return"*";case"TSJSDocUnknownType":return"?";case"TSJSDocNullableType":return km(e,r,"?");case"TSJSDocNonNullableType":return km(e,r,"!");default:throw new Ta(i,"TypeScript")}}function uf(e,t,r,s){var i;e.isRoot&&(null==(i=t.__onHtmlBindingRoot)||i.call(t,e.node,t));let n=function(e,t,r,s){if(wa(e))return fa(e,t);for(let i of[em,Kd,af,of,Gy]){let n=i(e,t,r,s);if(void 0!==n)return n}}(e,t,r,s);if(!n)return"";let{node:a}=e;if(ho(a))return n;let o=oi(a.decorators),u=function(e,t,r){let{node:s,parent:i}=e,{decorators:n}=s;if(!oi(n)||nm(i)||wa(e))return"";let a="ClassExpression"===s.type||"ClassDeclaration"===s.type||im(s,t);return["declaration"===e.key&&Ti(i)?kn:a?Sn:"",Kc(wn,e.map(r,"decorators")),wn]}(e,t,r),p="ClassExpression"===a.type;if(o&&!p)return ah(n,(e=>Uc([u,e])));let l=xa(e,t),c=Py(e,t);return u||l||c?ah(n,(e=>[c?";":"",l?"(":"",l&&p&&o?[_c([wn,u,e]),wn]:[u,e],l?")":""])):n}function pf(e,t,r){let{node:s}=e;switch(s.type){case"JsonRoot":return[r("node"),kn];case"ArrayExpression":{if(0===s.elements.length)return"[]";let t=e.map((()=>null===e.node?"null":r()),"elements");return["[",_c([kn,Kc([",",kn],t)]),kn,"]"]}case"ObjectExpression":return 0===s.properties.length?"{}":["{",_c([kn,Kc([",",kn],e.map(r,"properties"))]),kn,"}"];case"ObjectProperty":return[r("key"),": ",r("value")];case"UnaryExpression":return["+"===s.operator?"":s.operator,r("argument")];case"NullLiteral":return"null";case"BooleanLiteral":return s.value?"true":"false";case"StringLiteral":return JSON.stringify(s.value);case"NumericLiteral":return lf(e)?JSON.stringify(String(s.value)):JSON.stringify(s.value);case"Identifier":return lf(e)?JSON.stringify(s.name):s.name;case"TemplateLiteral":return r(["quasis",0]);case"TemplateElement":return JSON.stringify(s.value.cooked);default:throw new Ta(s,"JSON")}}function lf(e){return"key"===e.key&&"ObjectProperty"===e.parent.type}function cf(e,t){let{type:r}=e;if("ObjectProperty"!==r){if("UnaryExpression"===r&&"+"===e.operator)return t.argument;if("ArrayExpression"!==r)return"TemplateLiteral"===r?{type:"StringLiteral",value:e.quasis[0].value.cooked}:void 0;for(let[r,s]of e.elements.entries())null===s&&t.elements.splice(r,0,{type:"NullLiteral"})}else{let{key:r}=e;"Identifier"===r.type?t.key={type:"StringLiteral",value:r.name}:"NumericLiteral"===r.type&&(t.key={type:"StringLiteral",value:String(r.value)})}}return e("o",Xp),{setters:[function(e){r=e.r},function(e){s=e.$,i=e.C,n=e.E,a=e.N,o=e.Sn,u=e.T,p=e.Wt,l=e._n,c=e.it,h=e.w},function(e){d=e.$i},function(e){m=e.t}],execute:function(){(y=document.createElement("style")).textContent="._empty_ylpfe_2{justify-content:center;align-items:center;gap:var(--spacing--2xs);color:var(--color--text);flex-flow:column;line-height:2;display:flex}._title_ylpfe_13{font-size:var(--font-size--md);font-weight:var(--font-weight--bold);color:var(--color--text);margin:0;line-height:145%}._description_ylpfe_21{font-size:var(--font-size--sm);line-height:var(--line-height--xl);text-align:center;max-width:240px;margin:0}._wide_ylpfe_28 ._description_ylpfe_21{max-width:none}\n/*$vite$:1*/",document.head.appendChild(y);try{t="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},(Ut=(new t.Error).stack)&&(t._sentryDebugIds=t._sentryDebugIds||{},t._sentryDebugIds[Ut]="9869bd01-9f54-4751-9f88-d899242253ba",t._sentryDebugIdIdentifier="sentry-dbid-9869bd01-9f54-4751-9f88-d899242253ba")}catch(t){}var t,Ut,vo,Io;f=Object.create,D=Object.defineProperty,x=Object.getOwnPropertyDescriptor,g=Object.getOwnPropertyNames,E=Object.getPrototypeOf,A=Object.prototype.hasOwnProperty,T=e=>{throw TypeError(e)},C=(e,t)=>()=>(e&&(t=e(e=0)),t),F=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),b=(e,t)=>{for(var r in t)D(e,r,{get:t[r],enumerable:!0})},S=(e,t,r,s)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let i of g(t))!A.call(e,i)&&i!==r&&D(e,i,{get:()=>t[i],enumerable:!(s=x(t,i))||s.enumerable});return e},P=(e,t,r)=>(r=null!=e?f(E(e)):{},S(!t&&e&&e.__esModule?r:D(r,"default",{value:e,enumerable:!0}),e)),w=e=>S(D({},"__esModule",{value:!0}),e),v=(e,t,r)=>t.has(e)||T("Cannot "+r),k=(e,t,r)=>t.has(e)?T("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),I=(e,t,r)=>(v(e,t,"access private method"),r),N=F(((e,t)=>{var r=new Proxy(String,{get:()=>r});t.exports=r})),b(B={},{default:()=>M,shouldHighlight:()=>L}),O=C((()=>{L=()=>!1,M=String})),j=F(((e,t)=>{var r=String,s=function(){return{isColorSupported:!1,reset:r,bold:r,dim:r,italic:r,underline:r,inverse:r,hidden:r,strikethrough:r,black:r,red:r,green:r,yellow:r,blue:r,magenta:r,cyan:r,white:r,gray:r,bgBlack:r,bgRed:r,bgGreen:r,bgYellow:r,bgBlue:r,bgMagenta:r,bgCyan:r,bgWhite:r}};t.exports=s(),t.exports.createColors=s})),_=F((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.codeFrameColumns=p,e.default=function(e,t,r,s={}){if(!o){o=!0;let e="Passing lineNumber and colNumber is deprecated to @babel/code-frame. Please use `codeFrameColumns`.";new Error(e).name="DeprecationWarning",console.warn(new Error(e))}return r=Math.max(r,0),p(e,{start:{column:r,line:t}},s)};var t=(O(),w(B)),r=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var r=s(t);if(r&&r.has(e))return r.get(e);var i={__proto__:null},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var a in e)if("default"!==a&&{}.hasOwnProperty.call(e,a)){var o=n?Object.getOwnPropertyDescriptor(e,a):null;o&&(o.get||o.set)?Object.defineProperty(i,a,o):i[a]=e[a]}return i.default=e,r&&r.set(e,i),i}(j(),!0);function s(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,r=new WeakMap;return(s=function(e){return e?r:t})(e)}var i,n=r.default,a=(e,t)=>r=>e(t(r)),o=!1,u=/\r\n|[\n\r\u2028\u2029]/;function p(e,s,o={}){let p=(o.highlightCode||o.forceColor)&&(0,t.shouldHighlight)(o),l=function(e){return e?(i??=(0,r.createColors)(!0),i):n}(o.forceColor),c=function(e){return{gutter:e.gray,marker:a(e.red,e.bold),message:a(e.red,e.bold)}}(l),h=(e,t)=>p?e(t):t,{start:d,end:m,markerLines:y}=function(e,t,r){let s=Object.assign({column:0,line:-1},e.start),i=Object.assign({},s,e.end),{linesAbove:n=2,linesBelow:a=3}=r||{},o=s.line,u=s.column,p=i.line,l=i.column,c=Math.max(o-(n+1),0),h=Math.min(t.length,p+a);-1===o&&(c=0),-1===p&&(h=t.length);let d=p-o,m={};if(d)for(let y=0;y<=d;y++){let e=y+o;m[e]=!u||(0===y?[u,t[e-1].length-u+1]:y===d?[0,l]:[0,t[e-y].length])}else m[o]=u===l?!u||[u,0]:[u,l-u];return{start:c,end:h,markerLines:m}}(s,e.split(u),o),f=s.start&&"number"==typeof s.start.column,D=String(m).length,x=(p?(0,t.default)(e,o):e).split(u,m).slice(d,m).map(((e,t)=>{let r=d+1+t,s=` ${` ${r}`.slice(-D)} |`,i=y[r],n=!y[r+1];if(i){let t="";if(Array.isArray(i)){let r=e.slice(0,Math.max(i[0]-1,0)).replace(/[^\t]/g," "),a=i[1]||1;t=["\n ",h(c.gutter,s.replace(/\d/g," "))," ",r,h(c.marker,"^").repeat(a)].join(""),n&&o.message&&(t+=" "+h(c.message,o.message))}return[h(c.marker,">"),h(c.gutter,s),e.length>0?` ${e}`:"",t].join("")}return` ${h(c.gutter,s)}${e.length>0?` ${e}`:""}`})).join("\n");return o.message&&!f&&(x=`${" ".repeat(D+1)}${o.message}\n${x}`),p?l.reset(x):x}})),b({},{__debug:()=>Tr,check:()=>Gp,doc:()=>ir,format:()=>Xp,formatWithCursor:()=>Er,getSupportInfo:()=>Ar,util:()=>pr,version:()=>ur}),R=(e,t,r,s)=>{if(!e||null!=t)return t.replaceAll?t.replaceAll(r,s):r.global?t.replace(r,s):t.split(r).join(s)},U=R,Po.prototype={diff:function(e,t){var r,s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},i=s.callback;"function"==typeof s&&(i=s,s={}),this.options=s;var n=this;function a(e){return i?(setTimeout((function(){i(void 0,e)}),0),!0):e}e=this.castInput(e),t=this.castInput(t),e=this.removeEmpty(this.tokenize(e));var o=(t=this.removeEmpty(this.tokenize(t))).length,u=e.length,p=1,l=o+u;s.maxEditLength&&(l=Math.min(l,s.maxEditLength));var c=null!==(r=s.timeout)&&void 0!==r?r:1/0,h=Date.now()+c,d=[{oldPos:-1,lastComponent:void 0}],m=this.extractCommon(d[0],t,e,0);if(d[0].oldPos+1>=u&&m+1>=o)return a([{value:this.join(t),count:t.length}]);var y=-1/0,f=1/0;function D(){for(var r=Math.max(y,-p);r<=Math.min(f,p);r+=2){var s=void 0,i=d[r-1],l=d[r+1];i&&(d[r-1]=void 0);var c=!1;if(l){var h=l.oldPos-r;c=l&&0<=h&&h<o}var D=i&&i.oldPos+1<u;if(c||D){if(s=!D||c&&i.oldPos+1<l.oldPos?n.addToPath(l,!0,void 0,0):n.addToPath(i,void 0,!0,1),m=n.extractCommon(s,t,e,r),s.oldPos+1>=u&&m+1>=o)return a(wo(n,s.lastComponent,t,e,n.useLongestToken));d[r]=s,s.oldPos+1>=u&&(f=Math.min(f,r-1)),m+1>=o&&(y=Math.max(y,r+1))}else d[r]=void 0}p++}if(i)!function e(){setTimeout((function(){if(p>l||Date.now()>h)return i();D()||e()}),0)}();else for(;p<=l&&Date.now()<=h;){var x=D();if(x)return x}},addToPath:function(e,t,r,s){var i=e.lastComponent;return i&&i.added===t&&i.removed===r?{oldPos:e.oldPos+s,lastComponent:{count:i.count+1,added:t,removed:r,previousComponent:i.previousComponent}}:{oldPos:e.oldPos+s,lastComponent:{count:1,added:t,removed:r,previousComponent:i}}},extractCommon:function(e,t,r,s){for(var i=t.length,n=r.length,a=e.oldPos,o=a-s,u=0;o+1<i&&a+1<n&&this.equals(t[o+1],r[a+1]);)o++,a++,u++;return u&&(e.lastComponent={count:u,previousComponent:e.lastComponent}),e.oldPos=a,o},equals:function(e,t){return this.options.comparator?this.options.comparator(e,t):e===t||this.options.ignoreCase&&e.toLowerCase()===t.toLowerCase()},removeEmpty:function(e){for(var t=[],r=0;r<e.length;r++)e[r]&&t.push(e[r]);return t},castInput:function(e){return e},tokenize:function(e){return e.split("")},join:function(e){return e.join("")}},new Po,$=/^[A-Za-z\xC0-\u02C6\u02C8-\u02D7\u02DE-\u02FF\u1E00-\u1EFF]+$/,q=/\S/,(J=new Po).equals=function(e,t){return this.options.ignoreCase&&(e=e.toLowerCase(),t=t.toLowerCase()),e===t||this.options.ignoreWhitespace&&!q.test(e)&&!q.test(t)},J.tokenize=function(e){for(var t=e.split(/([^\S\r\n]+|[()[\]{}'"\r\n]|\b)/),r=0;r<t.length-1;r++)!t[r+1]&&t[r+2]&&$.test(t[r])&&$.test(t[r+2])&&(t[r]+=t[r+2],t.splice(r+1,2),r--);return t},(V=new Po).tokenize=function(e){this.options.stripTrailingCr&&(e=e.replace(/\r\n/g,"\n"));var t=[],r=e.split(/(\n|\r\n)/);r[r.length-1]||r.pop();for(var s=0;s<r.length;s++){var i=r[s];s%2&&!this.options.newlineIsToken?t[t.length-1]+=i:(this.options.ignoreWhitespace&&(i=i.trim()),t.push(i))}return t},(new Po).tokenize=function(e){return e.split(/(\S.+?[.!?])(?=\s+|$)/)},(new Po).tokenize=function(e){return e.split(/([{}:;,]|\s+)/)},z=Object.prototype.toString,(H=new Po).useLongestToken=!0,H.tokenize=V.tokenize,H.castInput=function(e){var t=this.options,r=t.undefinedReplacement,s=t.stringifyReplacer,i=void 0===s?function(e,t){return typeof t>"u"?r:t}:s;return"string"==typeof e?e:JSON.stringify(ko(e,null,null,i),i,"  ")},H.equals=function(e,t){return Po.prototype.equals.call(H,e.replace(/,([\r\n])/g,"$1"),t.replace(/,([\r\n])/g,"$1"))},(W=new Po).tokenize=function(e){return e.slice()},W.join=W.removeEmpty=function(e){return e},K="string",X="array",G="cursor",Y="indent",Q="align",Z="trim",ee="group",te="fill",re="if-break",se="indent-if-break",ie="line-suffix",ne="line-suffix-boundary",ae="line",oe="label",ue="break-parent",pe=new Set([G,Y,Q,Z,ee,te,re,se,ie,ne,ae,oe,ue]),le=Bo,ce=e=>new Intl.ListFormat("en-US",{type:"disjunction"}).format(e),he=class extends Error{name="InvalidDocError";constructor(e){super(function(e){let t=null===e?"null":typeof e;if("string"!==t&&"object"!==t)return`Unexpected doc '${t}', \nExpected it to be 'string' or 'object'.`;if(le(e))throw new Error("doc is valid.");let r=Object.prototype.toString.call(e);if("[object Object]"!==r)return`Unexpected doc '${r}'.`;let s=ce([...pe].map((e=>`'${e}'`)));return`Unexpected doc.type '${e.type}'.\nExpected it to be ${s}.`}(e)),this.doc=e}},de=he,me={},ye=Lo,De=fe=()=>{},xe=fe,ge={type:ne},Ae={type:Z},Fe={type:ae},be={type:ae,soft:!0},Se=[Te={type:ae,hard:!0},Ee={type:ue}],Pe=[Ce={type:ae,hard:!0,literal:!0},Ee],we={type:G},ve=(e,t,r)=>{if(!e||null!=t)return Array.isArray(t)||"string"==typeof t?t[r<0?t.length+r:r]:t.at(r)},ke=ve,Ie=()=>/[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE88\uDE90-\uDEBD\uDEBF-\uDEC2\uDECE-\uDEDB\uDEE0-\uDEE8]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g,Ne=e=>!(function(e){return 12288===e||e>=65281&&e<=65376||e>=65504&&e<=65510}(e)||function(e){return e>=4352&&e<=4447||8986===e||8987===e||9001===e||9002===e||e>=9193&&e<=9196||9200===e||9203===e||9725===e||9726===e||9748===e||9749===e||e>=9800&&e<=9811||9855===e||9875===e||9889===e||9898===e||9899===e||9917===e||9918===e||9924===e||9925===e||9934===e||9940===e||9962===e||9970===e||9971===e||9973===e||9978===e||9981===e||9989===e||9994===e||9995===e||10024===e||10060===e||10062===e||e>=10067&&e<=10069||10071===e||e>=10133&&e<=10135||10160===e||10175===e||11035===e||11036===e||11088===e||11093===e||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12771||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=19903||e>=19968&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=94176&&e<=94180||94192===e||94193===e||e>=94208&&e<=100343||e>=100352&&e<=101589||e>=101632&&e<=101640||e>=110576&&e<=110579||e>=110581&&e<=110587||110589===e||110590===e||e>=110592&&e<=110882||110898===e||e>=110928&&e<=110930||110933===e||e>=110948&&e<=110951||e>=110960&&e<=111355||126980===e||127183===e||127374===e||e>=127377&&e<=127386||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||127568===e||127569===e||e>=127584&&e<=127589||e>=127744&&e<=127776||e>=127789&&e<=127797||e>=127799&&e<=127868||e>=127870&&e<=127891||e>=127904&&e<=127946||e>=127951&&e<=127955||e>=127968&&e<=127984||127988===e||e>=127992&&e<=128062||128064===e||e>=128066&&e<=128252||e>=128255&&e<=128317||e>=128331&&e<=128334||e>=128336&&e<=128359||128378===e||128405===e||128406===e||128420===e||e>=128507&&e<=128591||e>=128640&&e<=128709||128716===e||e>=128720&&e<=128722||e>=128725&&e<=128727||e>=128732&&e<=128735||128747===e||128748===e||e>=128756&&e<=128764||e>=128992&&e<=129003||129008===e||e>=129292&&e<=129338||e>=129340&&e<=129349||e>=129351&&e<=129535||e>=129648&&e<=129660||e>=129664&&e<=129672||e>=129680&&e<=129725||e>=129727&&e<=129733||e>=129742&&e<=129755||e>=129760&&e<=129768||e>=129776&&e<=129784||e>=131072&&e<=196605||e>=196608&&e<=262141}(e)),Be=/[^\x20-\x7F]/u,Le=Go,Me=Symbol("MODE_BREAK"),Oe=Symbol("MODE_FLAT"),je=Symbol("cursor"),_e=Du,qe=class{constructor(e){k(this,Re),this.stack=[e]}get key(){let{stack:e,siblings:t}=this;return ke(!1,e,null===t?-2:-4)??null}get index(){return null===this.siblings?null:ke(!1,this.stack,-2)}get node(){return ke(!1,this.stack,-1)}get parent(){return this.getNode(1)}get grandparent(){return this.getNode(2)}get isInArray(){return null!==this.siblings}get siblings(){let{stack:e}=this,t=ke(!1,e,-3);return Array.isArray(t)?t:null}get next(){let{siblings:e}=this;return null===e?null:e[this.index+1]}get previous(){let{siblings:e}=this;return null===e?null:e[this.index-1]}get isFirst(){return 0===this.index}get isLast(){let{siblings:e,index:t}=this;return null!==e&&t===e.length-1}get isRoot(){return 1===this.stack.length}get root(){return this.stack[0]}get ancestors(){return[...I(this,Re,$e).call(this)]}getName(){let{stack:e}=this,{length:t}=e;return t>1?ke(!1,e,-2):null}getValue(){return ke(!1,this.stack,-1)}getNode(e=0){let t=I(this,Re,Ue).call(this,e);return-1===t?null:this.stack[t]}getParentNode(e=0){return this.getNode(e+1)}call(e,...t){let{stack:r}=this,{length:s}=r,i=ke(!1,r,-1);for(let n of t)i=i[n],r.push(n,i);try{return e(this)}finally{r.length=s}}callParent(e,t=0){let r=I(this,Re,Ue).call(this,t+1),s=this.stack.splice(r+1);try{return e(this)}finally{this.stack.push(...s)}}each(e,...t){let{stack:r}=this,{length:s}=r,i=ke(!1,r,-1);for(let n of t)i=i[n],r.push(n,i);try{for(let t=0;t<i.length;++t)r.push(t,i[t]),e(this,t,i),r.length-=2}finally{r.length=s}}map(e,...t){let r=[];return this.each(((t,s,i)=>{r[s]=e(t,s,i)}),...t),r}match(...e){let t=this.stack.length-1,r=null,s=this.stack[t--];for(let i of e){if(void 0===s)return!1;let e=null;if("number"==typeof r&&(e=r,r=this.stack[t--],s=this.stack[t--]),i&&!i(s,r,e))return!1;r=this.stack[t--],s=this.stack[t--]}return!0}findAncestor(e){for(let t of I(this,Re,$e).call(this))if(e(t))return t}hasAncestor(e){for(let t of I(this,Re,$e).call(this))if(e(t))return!0;return!1}},Re=new WeakSet,Ue=function(e){let{stack:t}=this;for(let r=t.length-1;r>=0;r-=2)if(!Array.isArray(t[r])&&--e<0)return r;return-1},$e=function*(){let{stack:e}=this;for(let t=e.length-3;t>=0;t-=2){let r=e[t];Array.isArray(r)||(yield r)}},Je=qe,Ve=new Proxy((()=>{}),{get:()=>Ve}),ze=Ve,He=xu,We=Eu(/\s/u),Ke=Eu(" \t"),Xe=Eu(",; \t"),Ge=Eu(/[^\n\r]/u),Ye=Au,Qe=Tu,Ze=Cu,et=new Set(["tokens","comments","parent","enclosingNode","precedingNode","followingNode"]),tt=e=>Object.keys(e).filter((e=>!et.has(e))),rt=Fu,st=new WeakMap,it=()=>!1,nt=e=>!/[\S\n\u2028\u2029]/u.test(e),at=Mu,ot=_u,ut=class extends Error{name="ConfigError"},pt=class extends Error{name="UndefinedParserError"},lt={cursorOffset:{category:"Special",type:"int",default:-1,range:{start:-1,end:1/0,step:1},description:"Print (to stderr) where a cursor at the given position would move to after formatting.",cliCategory:"Editor"},endOfLine:{category:"Global",type:"choice",default:"lf",description:"Which end of line characters to apply.",choices:[{value:"lf",description:"Line Feed only (\\n), common on Linux and macOS as well as inside git repos"},{value:"crlf",description:"Carriage Return + Line Feed characters (\\r\\n), common on Windows"},{value:"cr",description:"Carriage Return character only (\\r), used very rarely"},{value:"auto",description:"Maintain existing\n(mixed values within one file are normalised by looking at what's used after the first line)"}]},filepath:{category:"Special",type:"path",description:"Specify the input filepath. This will be used to do parser inference.",cliName:"stdin-filepath",cliCategory:"Other",cliDescription:"Path to the file to pretend that stdin comes from."},insertPragma:{category:"Special",type:"boolean",default:!1,description:"Insert @format pragma into file's first docblock comment.",cliCategory:"Other"},parser:{category:"Global",type:"choice",default:void 0,description:"Which parser to use.",exception:e=>"string"==typeof e||"function"==typeof e,choices:[{value:"flow",description:"Flow"},{value:"babel",description:"JavaScript"},{value:"babel-flow",description:"Flow"},{value:"babel-ts",description:"TypeScript"},{value:"typescript",description:"TypeScript"},{value:"acorn",description:"JavaScript"},{value:"espree",description:"JavaScript"},{value:"meriyah",description:"JavaScript"},{value:"css",description:"CSS"},{value:"less",description:"Less"},{value:"scss",description:"SCSS"},{value:"json",description:"JSON"},{value:"json5",description:"JSON5"},{value:"jsonc",description:"JSON with Comments"},{value:"json-stringify",description:"JSON.stringify"},{value:"graphql",description:"GraphQL"},{value:"markdown",description:"Markdown"},{value:"mdx",description:"MDX"},{value:"vue",description:"Vue"},{value:"yaml",description:"YAML"},{value:"glimmer",description:"Ember / Handlebars"},{value:"html",description:"HTML"},{value:"angular",description:"Angular"},{value:"lwc",description:"Lightning Web Components"}]},plugins:{type:"path",array:!0,default:[{value:[]}],category:"Global",description:"Add a plugin. Multiple plugins can be passed as separate `--plugin`s.",exception:e=>"string"==typeof e||"object"==typeof e,cliName:"plugin",cliCategory:"Config"},printWidth:{category:"Global",type:"int",default:80,description:"The line length where Prettier will try wrap.",range:{start:0,end:1/0,step:1}},rangeEnd:{category:"Special",type:"int",default:1/0,range:{start:0,end:1/0,step:1},description:"Format code ending at a given character offset (exclusive).\nThe range will extend forwards to the end of the selected statement.",cliCategory:"Editor"},rangeStart:{category:"Special",type:"int",default:0,range:{start:0,end:1/0,step:1},description:"Format code starting at a given character offset.\nThe range will extend backwards to the start of the first line containing the selected statement.",cliCategory:"Editor"},requirePragma:{category:"Special",type:"boolean",default:!1,description:"Require either '@prettier' or '@format' to be present in the file's first docblock comment\nin order for it to be formatted.",cliCategory:"Other"},tabWidth:{type:"int",category:"Global",default:2,description:"Number of spaces per indentation level.",range:{start:0,end:1/0,step:1}},useTabs:{category:"Global",type:"boolean",default:!1,description:"Indent with tabs instead of spaces."},embeddedLanguageFormatting:{category:"Global",type:"choice",default:"auto",description:"Control how Prettier formats quoted code embedded in the file.",choices:[{value:"auto",description:"Format embedded code if Prettier can automatically identify it."},{value:"off",description:"Never automatically format embedded code."}]}},ct=e=>String(e).split(/[/\\]/u).pop(),ht=qu,dt={key:e=>/^[$_a-zA-Z][$_a-zA-Z0-9]*$/.test(e)?e:JSON.stringify(e),value(e){if(null===e||"object"!=typeof e)return JSON.stringify(e);if(Array.isArray(e))return`[${e.map((e=>dt.value(e))).join(", ")}]`;let t=Object.keys(e);return 0===t.length?"{}":`{ ${t.map((t=>`${dt.key(t)}: ${dt.value(e[t])}`)).join(", ")} }`},pair:({key:e,value:t})=>dt.value({[e]:t})},mt=P(N(),1),yt=(e,t,{descriptor:r})=>{let s=[`${mt.default.yellow("string"==typeof e?r.key(e):r.pair(e))} is deprecated`];return t&&s.push(`we now treat it as ${mt.default.blue("string"==typeof t?r.key(t):r.pair(t))}`),s.join("; ")+"."},ft=P(N(),1),Dt=Symbol.for("vnopts.VALUE_NOT_EXIST"),xt=Symbol.for("vnopts.VALUE_UNCHANGED"),gt=" ".repeat(2),Et=(e,t,r)=>{let{text:s,list:i}=r.normalizeExpectedResult(r.schemas[e].expected(r)),n=[];return s&&n.push(Ju(e,t,s,r.descriptor)),i&&n.push([Ju(e,t,i.title,r.descriptor)].concat(i.values.map((e=>Vu(e,r.loggerPrintWidth)))).join("\n")),zu(n,r.loggerPrintWidth)},At=P(N(),1),Tt=[],Ct=[],Ft=(e,t,{descriptor:r,logger:s,schemas:i})=>{let n=[`Ignored unknown option ${At.default.yellow(r.pair({key:e,value:t}))}.`],a=Object.keys(i).sort().find((t=>function(e,t){if(e===t)return 0;let r=e;e.length>t.length&&(e=t,t=r);let s=e.length,i=t.length;for(;s>0&&e.charCodeAt(~-s)===t.charCodeAt(~-i);)s--,i--;let n=0;for(;n<s&&e.charCodeAt(n)===t.charCodeAt(n);)n++;if(s-=n,i-=n,0===s)return i;let a,o,u,p,l=0,c=0;for(;l<s;)Ct[l]=e.charCodeAt(n+l),Tt[l]=++l;for(;c<i;)for(a=t.charCodeAt(n+c),u=c++,o=c,l=0;l<s;l++)p=a===Ct[l]?u:u+1,u=Tt[l],o=Tt[l]=u>o?p>o?o+1:p:p>u?u+1:p;return o}(e,t)<3));a&&n.push(`Did you mean ${At.default.blue(r.key(a))}?`),s.warn(n.join(" "))},bt=["default","expected","validate","deprecated","forward","redirect","overlap","preprocess","postprocess"],St=class{static create(e){return function(e,t){let r=new e(t),s=Object.create(r);for(let i of bt)i in t&&(s[i]=Hu(t[i],r,St.prototype[i].length));return s}(this,e)}constructor(e){this.name=e.name}default(e){}expected(e){return"nothing"}validate(e,t){return!1}deprecated(e,t){return!1}forward(e,t){}redirect(e,t){}overlap(e,t,r){return e}preprocess(e,t){return e}postprocess(e,t){return xt}},Pt=class extends St{constructor(e){super(e),this._sourceName=e.sourceName}expected(e){return e.schemas[this._sourceName].expected(e)}validate(e,t){return t.schemas[this._sourceName].validate(e,t)}redirect(e,t){return this._sourceName}},wt=class extends St{expected(){return"anything"}validate(){return!0}},vt=class extends St{constructor({valueSchema:e,name:t=e.name,...r}){super({...r,name:t}),this._valueSchema=e}expected(e){let{text:t,list:r}=e.normalizeExpectedResult(this._valueSchema.expected(e));return{text:t&&`an array of ${t}`,list:r&&{title:"an array of the following values",values:[{list:r}]}}}validate(e,t){if(!Array.isArray(e))return!1;let r=[];for(let s of e){let e=t.normalizeValidateResult(this._valueSchema.validate(s,t),s);!0!==e&&r.push(e.value)}return 0===r.length||{value:r}}deprecated(e,t){let r=[];for(let s of e){let e=t.normalizeDeprecatedResult(this._valueSchema.deprecated(s,t),s);!1!==e&&r.push(...e.map((({value:e})=>({value:[e]}))))}return r}forward(e,t){let r=[];for(let s of e){let e=t.normalizeForwardResult(this._valueSchema.forward(s,t),s);r.push(...e.map(Wu))}return r}redirect(e,t){let r=[],s=[];for(let i of e){let e=t.normalizeRedirectResult(this._valueSchema.redirect(i,t),i);"remain"in e&&r.push(e.remain),s.push(...e.redirect.map(Wu))}return 0===r.length?{redirect:s}:{redirect:s,remain:r}}overlap(e,t){return e.concat(t)}},kt=class extends St{expected(){return"true or false"}validate(e){return"boolean"==typeof e}},It=class extends St{constructor(e){super(e),this._choices=function(e,t){let r=new Map;for(let s of e){let e=s[t];if(r.has(e))throw new Error(`Duplicate ${t} ${JSON.stringify(e)}`);r.set(e,s)}return r}(e.choices.map((e=>e&&"object"==typeof e?e:{value:e})),"value")}expected({descriptor:e}){let t=Array.from(this._choices.keys()).map((e=>this._choices.get(e))).filter((({hidden:e})=>!e)).map((e=>e.value)).sort(Xu).map(e.value),r=t.slice(0,-2),s=t.slice(-2);return{text:r.concat(s.join(" or ")).join(", "),list:{title:"one of the following values",values:t}}}validate(e){return this._choices.has(e)}deprecated(e){let t=this._choices.get(e);return!(!t||!t.deprecated)&&{value:e}}forward(e){let t=this._choices.get(e);return t?t.forward:void 0}redirect(e){let t=this._choices.get(e);return t?t.redirect:void 0}},Nt=class extends St{expected(){return"a number"}validate(e,t){return"number"==typeof e}},Bt=class extends Nt{expected(){return"an integer"}validate(e,t){return!0===t.normalizeValidateResult(super.validate(e,t),e)&&function(e){return e===Math.floor(e)}(e)}},Lt=class extends St{expected(){return"a string"}validate(e){return"string"==typeof e}},Mt=dt,Ot=Ft,jt=Et,_t=yt,Rt=class{constructor(e,t){let{logger:r=console,loggerPrintWidth:s=80,descriptor:i=Mt,unknown:n=Ot,invalid:a=jt,deprecated:o=_t,missing:u=(()=>!1),required:p=(()=>!1),preprocess:l=(e=>e),postprocess:c=(()=>xt)}=t||{};this._utils={descriptor:i,logger:r||{warn:()=>{}},loggerPrintWidth:s,schemas:Ku(e,"name"),normalizeDefaultResult:Gu,normalizeExpectedResult:Yu,normalizeDeprecatedResult:Zu,normalizeForwardResult:tp,normalizeRedirectResult:rp,normalizeValidateResult:Qu},this._unknownHandler=n,this._invalidHandler=function(e){return(...t)=>{let r=e(...t);return"string"==typeof r?new Error(r):r}}(a),this._deprecatedHandler=o,this._identifyMissing=(e,t)=>!(e in t)||u(e,t),this._identifyRequired=p,this._preprocess=l,this._postprocess=c,this.cleanHistory()}cleanHistory(){this._hasDeprecationWarned=function(){let e=Object.create(null);return t=>{let r=JSON.stringify(t);return!!e[r]||(e[r]=!0,!1)}}()}normalize(e){let t={},r=[this._preprocess(e,this._utils)],s=()=>{for(;0!==r.length;){let e=r.shift(),s=this._applyNormalization(e,t);r.push(...s)}};s();for(let i of Object.keys(this._utils.schemas)){let e=this._utils.schemas[i];if(!(i in t)){let t=Gu(e.default(this._utils));"value"in t&&r.push({[i]:t.value})}}s();for(let i of Object.keys(this._utils.schemas)){if(!(i in t))continue;let e=this._utils.schemas[i],r=t[i],s=e.postprocess(r,this._utils);s!==xt&&(this._applyValidation(s,i,e),t[i]=s)}return this._applyPostprocess(t),this._applyRequiredCheck(t),t}_applyNormalization(e,t){let r=[],{knownKeys:s,unknownKeys:i}=this._partitionOptionKeys(e);for(let n of s){let s=this._utils.schemas[n],i=s.preprocess(e[n],this._utils);this._applyValidation(i,n,s);let a=({from:e,to:t})=>{r.push("string"==typeof t?{[t]:e}:{[t.key]:t.value})},o=({value:e,redirectTo:t})=>{let r=Zu(s.deprecated(e,this._utils),i,!0);if(!1!==r)if(!0===r)this._hasDeprecationWarned(n)||this._utils.logger.warn(this._deprecatedHandler(n,t,this._utils));else for(let{value:s}of r){let e={key:n,value:s};if(!this._hasDeprecationWarned(e)){let r="string"==typeof t?{key:t,value:s}:t;this._utils.logger.warn(this._deprecatedHandler(e,r,this._utils))}}};tp(s.forward(i,this._utils),i).forEach(a);let u=rp(s.redirect(i,this._utils),i);if(u.redirect.forEach(a),"remain"in u){let e=u.remain;t[n]=n in t?s.overlap(t[n],e,this._utils):e,o({value:e})}for(let{from:e,to:t}of u.redirect)o({value:e,redirectTo:t})}for(let n of i){let s=e[n];this._applyUnknownHandler(n,s,t,((e,t)=>{r.push({[e]:t})}))}return r}_applyRequiredCheck(e){for(let t of Object.keys(this._utils.schemas))if(this._identifyMissing(t,e)&&this._identifyRequired(t))throw this._invalidHandler(t,Dt,this._utils)}_partitionOptionKeys(e){let[t,r]=function(e,t){let r=[],s=[];for(let i of e)t(i)?r.push(i):s.push(i);return[r,s]}(Object.keys(e).filter((t=>!this._identifyMissing(t,e))),(e=>e in this._utils.schemas));return{knownKeys:t,unknownKeys:r}}_applyValidation(e,t,r){let s=Qu(r.validate(e,this._utils),e);if(!0!==s)throw this._invalidHandler(t,s.value,this._utils)}_applyUnknownHandler(e,t,r,s){let i=this._unknownHandler(e,t,this._utils);if(i)for(let n of Object.keys(i)){if(this._identifyMissing(n,i))continue;let e=i[n];n in this._utils.schemas?s(n,e):r[n]=e}}_applyPostprocess(e){let t=this._postprocess(e,this._utils);if(t!==xt){if(t.delete)for(let r of t.delete)delete e[r];if(t.override){let{knownKeys:r,unknownKeys:s}=this._partitionOptionKeys(t.override);for(let i of r){let r=t.override[i];this._applyValidation(r,i,this._utils.schemas[i]),e[i]=r}for(let i of s){let r=t.override[i];this._applyUnknownHandler(i,r,e,((t,r)=>{let s=this._utils.schemas[t];this._applyValidation(r,t,s),e[t]=r}))}}}}},$t=sp,qt=(e,t,r)=>{if(!e||null!=t){if(t.findLast)return t.findLast(r);for(let e=t.length-1;e>=0;e--){let s=t[e];if(r(s,e,t))return s}}},Jt=qt,Vt={astFormat:"estree",printer:{},originalText:void 0,locStart:null,locEnd:null},zt=up,Ht=P(_(),1),Wt=pp,Kt=cp,Xt=yp,Gt=fp,Yt=(e,t,r)=>{if(!e||null!=t){if(t.findLastIndex)return t.findLastIndex(r);for(let e=t.length-1;e>=0;e--)if(r(t[e],e,t))return e;return-1}},Qt=Yt,Zt=({parser:e})=>"json"===e||"json5"===e||"jsonc"===e||"json-stringify"===e,er=new Set(["JsonRoot","ObjectExpression","ArrayExpression","StringLiteral","NumericLiteral","BooleanLiteral","NullLiteral","UnaryExpression","TemplateLiteral"]),tr=new Set(["OperationDefinition","FragmentDefinition","VariableDefinition","TypeExtensionDefinition","ObjectTypeDefinition","FieldDefinition","DirectiveDefinition","EnumTypeDefinition","EnumValueDefinition","InputValueDefinition","InputObjectTypeDefinition","SchemaDefinition","OperationTypeDefinition","InterfaceTypeDefinition","UnionTypeDefinition","ScalarTypeDefinition"]),rr="\ufeff",sr=Symbol("cursor"),b(ir={},{builders:()=>nr,printer:()=>ar,utils:()=>or}),nr={join:Ho,line:Fe,softline:be,hardline:Se,literalline:Pe,group:jo,conditionalGroup:$o,fill:qo,lineSuffix:zo,lineSuffixBoundary:ge,cursor:we,breakParent:Ee,ifBreak:Jo,trim:Ae,indent:Mo,indentIfBreak:Vo,align:Oo,addAlignmentToDoc:Wo,markAsRoot:Ro,dedentToRoot:_o,dedent:Uo,hardlineWithoutBreakParent:Te,literallineWithoutBreakParent:Ce,label:Ko,concat:e=>e},ar={printDocToString:fu},or={willBreak:eu,traverseDoc:ye,findInDoc:Qo,mapDoc:Yo,removeLines:su,stripTrailingHardline:au,replaceEndOfLine:ou,canBreak:pu},ur="3.3.3",b(pr={},{addDanglingComment:()=>Pu,addLeadingComment:()=>Su,addTrailingComment:()=>wu,getAlignmentSize:()=>_e,getIndentSize:()=>mr,getMaxContinuousCount:()=>yr,getNextNonSpaceNonCommentCharacter:()=>fr,getNextNonSpaceNonCommentCharacterIndex:()=>Jp,getStringWidth:()=>Le,hasNewline:()=>Qe,hasNewlineInRange:()=>Dr,hasSpaces:()=>xr,isNextLineEmpty:()=>Wp,isNextLineEmptyAfterIndex:()=>dr,isPreviousLineEmpty:()=>zp,makeString:()=>gr,skip:()=>Eu,skipEverythingButNewLine:()=>Ge,skipInlineComment:()=>lr,skipNewline:()=>Ye,skipSpaces:()=>Ke,skipToLineEnd:()=>Xe,skipTrailingComment:()=>cr,skipWhitespace:()=>We}),lr=Np,cr=Bp,hr=Lp,dr=Mp,mr=Op,yr=jp,fr=_p,Dr=Rp,xr=Up,gr=$p,e("a",Er=Kp(Sp)),Ar=Kp(Ru,0),Tr={parse:Kp(Pp),formatAST:Kp(wp),formatDoc:Kp(vp),printToDoc:Kp(kp),printDocToString:Kp(Ip)},Cr=Object.create,Fr=Object.defineProperty,br=Object.getOwnPropertyDescriptor,Sr=Object.getOwnPropertyNames,Pr=Object.getPrototypeOf,wr=Object.prototype.hasOwnProperty,vr=(e,t)=>{for(var r in t)Fr(e,r,{get:t[r],enumerable:!0})},kr=(e,t,r,s)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let i of Sr(t))!wr.call(e,i)&&i!==r&&Fr(e,i,{get:()=>t[i],enumerable:!(s=br(t,i))||s.enumerable});return e},Ir=(e,t,r)=>(r=null!=e?Cr(Pr(e)):{},kr(!t&&e&&e.__esModule?r:Fr(r,"default",{value:e,enumerable:!0}),e)),vo=e=>{function t(e,t){if(null==e)return{};var r,s,i={},n=Object.keys(e);for(s=0;s<n.length;s++)r=n[s],!(t.indexOf(r)>=0)&&(i[r]=e[r]);return i}Object.defineProperty(e,"__esModule",{value:!0});var r=class{constructor(e,t,r){this.line=void 0,this.column=void 0,this.index=void 0,this.line=e,this.column=t,this.index=r}},s=class{constructor(e,t){this.start=void 0,this.end=void 0,this.filename=void 0,this.identifierName=void 0,this.start=e,this.end=t}};function i(e,t){let{line:s,column:i,index:n}=e;return new r(s,i+t,n+t)}var n="BABEL_PARSER_SOURCETYPE_MODULE_REQUIRED",a={ImportMetaOutsideModule:{message:"import.meta may appear only with 'sourceType: \"module\"'",code:n},ImportOutsideModule:{message:"'import' and 'export' may appear only with 'sourceType: \"module\"'",code:n}},o={ArrayPattern:"array destructuring pattern",AssignmentExpression:"assignment expression",AssignmentPattern:"assignment expression",ArrowFunctionExpression:"arrow function expression",ConditionalExpression:"conditional expression",CatchClause:"catch clause",ForOfStatement:"for-of statement",ForInStatement:"for-in statement",ForStatement:"for-loop",FormalParameters:"function parameter list",Identifier:"identifier",ImportSpecifier:"import specifier",ImportDefaultSpecifier:"import default specifier",ImportNamespaceSpecifier:"import namespace specifier",ObjectPattern:"object destructuring pattern",ParenthesizedExpression:"parenthesized expression",RestElement:"rest element",UpdateExpression:{true:"prefix operation",false:"postfix operation"},VariableDeclarator:"variable declaration",YieldExpression:"yield expression"},u=e=>"UpdateExpression"===e.type?o.UpdateExpression[`${e.prefix}`]:o[e.type],p={AccessorIsGenerator:({kind:e})=>`A ${e}ter cannot be a generator.`,ArgumentsInClass:"'arguments' is only allowed in functions and class methods.",AsyncFunctionInSingleStatementContext:"Async functions can only be declared at the top level or inside a block.",AwaitBindingIdentifier:"Can not use 'await' as identifier inside an async function.",AwaitBindingIdentifierInStaticBlock:"Can not use 'await' as identifier inside a static block.",AwaitExpressionFormalParameter:"'await' is not allowed in async function parameters.",AwaitUsingNotInAsyncContext:"'await using' is only allowed within async functions and at the top levels of modules.",AwaitNotInAsyncContext:"'await' is only allowed within async functions and at the top levels of modules.",AwaitNotInAsyncFunction:"'await' is only allowed within async functions.",BadGetterArity:"A 'get' accessor must not have any formal parameters.",BadSetterArity:"A 'set' accessor must have exactly one formal parameter.",BadSetterRestParameter:"A 'set' accessor function argument must not be a rest parameter.",ConstructorClassField:"Classes may not have a field named 'constructor'.",ConstructorClassPrivateField:"Classes may not have a private field named '#constructor'.",ConstructorIsAccessor:"Class constructor may not be an accessor.",ConstructorIsAsync:"Constructor can't be an async function.",ConstructorIsGenerator:"Constructor can't be a generator.",DeclarationMissingInitializer:({kind:e})=>`Missing initializer in ${e} declaration.`,DecoratorArgumentsOutsideParentheses:"Decorator arguments must be moved inside parentheses: use '@(decorator(args))' instead of '@(decorator)(args)'.",DecoratorBeforeExport:"Decorators must be placed *before* the 'export' keyword. Remove the 'decoratorsBeforeExport: true' option to use the 'export @decorator class {}' syntax.",DecoratorsBeforeAfterExport:"Decorators can be placed *either* before or after the 'export' keyword, but not in both locations at the same time.",DecoratorConstructor:"Decorators can't be used with a constructor. Did you mean '@dec class { ... }'?",DecoratorExportClass:"Decorators must be placed *after* the 'export' keyword. Remove the 'decoratorsBeforeExport: false' option to use the '@decorator export class {}' syntax.",DecoratorSemicolon:"Decorators must not be followed by a semicolon.",DecoratorStaticBlock:"Decorators can't be used with a static block.",DeferImportRequiresNamespace:'Only `import defer * as x from "./module"` is valid.',DeletePrivateField:"Deleting a private field is not allowed.",DestructureNamedImport:"ES2015 named imports do not destructure. Use another statement for destructuring after the import.",DuplicateConstructor:"Duplicate constructor in the same class.",DuplicateDefaultExport:"Only one default export allowed per module.",DuplicateExport:({exportName:e})=>`\`${e}\` has already been exported. Exported identifiers must be unique.`,DuplicateProto:"Redefinition of __proto__ property.",DuplicateRegExpFlags:"Duplicate regular expression flag.",DynamicImportPhaseRequiresImportExpressions:({phase:e})=>`'import.${e}(...)' can only be parsed when using the 'createImportExpressions' option.`,ElementAfterRest:"Rest element must be last element.",EscapedCharNotAnIdentifier:"Invalid Unicode escape.",ExportBindingIsString:({localName:e,exportName:t})=>`A string literal cannot be used as an exported binding without \`from\`.\n- Did you mean \`export { '${e}' as '${t}' } from 'some-module'\`?`,ExportDefaultFromAsIdentifier:"'from' is not allowed as an identifier after 'export default'.",ForInOfLoopInitializer:({type:e})=>`'${"ForInStatement"===e?"for-in":"for-of"}' loop variable declaration may not have an initializer.`,ForInUsing:"For-in loop may not start with 'using' declaration.",ForOfAsync:"The left-hand side of a for-of loop may not be 'async'.",ForOfLet:"The left-hand side of a for-of loop may not start with 'let'.",GeneratorInSingleStatementContext:"Generators can only be declared at the top level or inside a block.",IllegalBreakContinue:({type:e})=>`Unsyntactic ${"BreakStatement"===e?"break":"continue"}.`,IllegalLanguageModeDirective:"Illegal 'use strict' directive in function with non-simple parameter list.",IllegalReturn:"'return' outside of function.",ImportAttributesUseAssert:"The `assert` keyword in import attributes is deprecated and it has been replaced by the `with` keyword. You can enable the `deprecatedAssertSyntax: true` option in the import attributes plugin to suppress this error.",ImportBindingIsString:({importName:e})=>`A string literal cannot be used as an imported binding.\n- Did you mean \`import { "${e}" as foo }\`?`,ImportCallArgumentTrailingComma:"Trailing comma is disallowed inside import(...) arguments.",ImportCallArity:({maxArgumentCount:e})=>`\`import()\` requires exactly ${1===e?"one argument":"one or two arguments"}.`,ImportCallNotNewExpression:"Cannot use new with import(...).",ImportCallSpreadArgument:"`...` is not allowed in `import()`.",ImportJSONBindingNotDefault:"A JSON module can only be imported with `default`.",ImportReflectionHasAssertion:"`import module x` cannot have assertions.",ImportReflectionNotBinding:'Only `import module x from "./module"` is valid.',IncompatibleRegExpUVFlags:"The 'u' and 'v' regular expression flags cannot be enabled at the same time.",InvalidBigIntLiteral:"Invalid BigIntLiteral.",InvalidCodePoint:"Code point out of bounds.",InvalidCoverInitializedName:"Invalid shorthand property initializer.",InvalidDecimal:"Invalid decimal.",InvalidDigit:({radix:e})=>`Expected number in radix ${e}.`,InvalidEscapeSequence:"Bad character escape sequence.",InvalidEscapeSequenceTemplate:"Invalid escape sequence in template.",InvalidEscapedReservedWord:({reservedWord:e})=>`Escape sequence in keyword ${e}.`,InvalidIdentifier:({identifierName:e})=>`Invalid identifier ${e}.`,InvalidLhs:({ancestor:e})=>`Invalid left-hand side in ${u(e)}.`,InvalidLhsBinding:({ancestor:e})=>`Binding invalid left-hand side in ${u(e)}.`,InvalidLhsOptionalChaining:({ancestor:e})=>`Invalid optional chaining in the left-hand side of ${u(e)}.`,InvalidNumber:"Invalid number.",InvalidOrMissingExponent:"Floating-point numbers require a valid exponent after the 'e'.",InvalidOrUnexpectedToken:({unexpected:e})=>`Unexpected character '${e}'.`,InvalidParenthesizedAssignment:"Invalid parenthesized assignment pattern.",InvalidPrivateFieldResolution:({identifierName:e})=>`Private name #${e} is not defined.`,InvalidPropertyBindingPattern:"Binding member expression.",InvalidRecordProperty:"Only properties and spread elements are allowed in record definitions.",InvalidRestAssignmentPattern:"Invalid rest operator's argument.",LabelRedeclaration:({labelName:e})=>`Label '${e}' is already declared.`,LetInLexicalBinding:"'let' is disallowed as a lexically bound name.",LineTerminatorBeforeArrow:"No line break is allowed before '=>'.",MalformedRegExpFlags:"Invalid regular expression flag.",MissingClassName:"A class name is required.",MissingEqInAssignment:"Only '=' operator can be used for specifying default value.",MissingSemicolon:"Missing semicolon.",MissingPlugin:({missingPlugin:e})=>`This experimental syntax requires enabling the parser plugin: ${e.map((e=>JSON.stringify(e))).join(", ")}.`,MissingOneOfPlugins:({missingPlugin:e})=>`This experimental syntax requires enabling one of the following parser plugin(s): ${e.map((e=>JSON.stringify(e))).join(", ")}.`,MissingUnicodeEscape:"Expecting Unicode escape sequence \\uXXXX.",MixingCoalesceWithLogical:"Nullish coalescing operator(??) requires parens when mixing with logical operators.",ModuleAttributeDifferentFromType:"The only accepted module attribute is `type`.",ModuleAttributeInvalidValue:"Only string literals are allowed as module attribute values.",ModuleAttributesWithDuplicateKeys:({key:e})=>`Duplicate key "${e}" is not allowed in module attributes.`,ModuleExportNameHasLoneSurrogate:({surrogateCharCode:e})=>`An export name cannot include a lone surrogate, found '\\u${e.toString(16)}'.`,ModuleExportUndefined:({localName:e})=>`Export '${e}' is not defined.`,MultipleDefaultsInSwitch:"Multiple default clauses.",NewlineAfterThrow:"Illegal newline after throw.",NoCatchOrFinally:"Missing catch or finally clause.",NumberIdentifier:"Identifier directly after number.",NumericSeparatorInEscapeSequence:"Numeric separators are not allowed inside unicode escape sequences or hex escape sequences.",ObsoleteAwaitStar:"'await*' has been removed from the async functions proposal. Use Promise.all() instead.",OptionalChainingNoNew:"Constructors in/after an Optional Chain are not allowed.",OptionalChainingNoTemplate:"Tagged Template Literals are not allowed in optionalChain.",OverrideOnConstructor:"'override' modifier cannot appear on a constructor declaration.",ParamDupe:"Argument name clash.",PatternHasAccessor:"Object pattern can't contain getter or setter.",PatternHasMethod:"Object pattern can't contain methods.",PrivateInExpectedIn:({identifierName:e})=>`Private names are only allowed in property accesses (\`obj.#${e}\`) or in \`in\` expressions (\`#${e} in obj\`).`,PrivateNameRedeclaration:({identifierName:e})=>`Duplicate private name #${e}.`,RecordExpressionBarIncorrectEndSyntaxType:"Record expressions ending with '|}' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",RecordExpressionBarIncorrectStartSyntaxType:"Record expressions starting with '{|' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",RecordExpressionHashIncorrectStartSyntaxType:"Record expressions starting with '#{' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'hash'.",RecordNoProto:"'__proto__' is not allowed in Record expressions.",RestTrailingComma:"Unexpected trailing comma after rest element.",SloppyFunction:"In non-strict mode code, functions can only be declared at top level or inside a block.",SloppyFunctionAnnexB:"In non-strict mode code, functions can only be declared at top level, inside a block, or as the body of an if statement.",SourcePhaseImportRequiresDefault:'Only `import source x from "./module"` is valid.',StaticPrototype:"Classes may not have static property named prototype.",SuperNotAllowed:"`super()` is only valid inside a class constructor of a subclass. Maybe a typo in the method name ('constructor') or not extending another class?",SuperPrivateField:"Private fields can't be accessed on super.",TrailingDecorator:"Decorators must be attached to a class element.",TupleExpressionBarIncorrectEndSyntaxType:"Tuple expressions ending with '|]' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",TupleExpressionBarIncorrectStartSyntaxType:"Tuple expressions starting with '[|' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",TupleExpressionHashIncorrectStartSyntaxType:"Tuple expressions starting with '#[' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'hash'.",UnexpectedArgumentPlaceholder:"Unexpected argument placeholder.",UnexpectedAwaitAfterPipelineBody:'Unexpected "await" after pipeline body; await must have parentheses in minimal proposal.',UnexpectedDigitAfterHash:"Unexpected digit after hash token.",UnexpectedImportExport:"'import' and 'export' may only appear at the top level.",UnexpectedKeyword:({keyword:e})=>`Unexpected keyword '${e}'.`,UnexpectedLeadingDecorator:"Leading decorators must be attached to a class declaration.",UnexpectedLexicalDeclaration:"Lexical declaration cannot appear in a single-statement context.",UnexpectedNewTarget:"`new.target` can only be used in functions or class properties.",UnexpectedNumericSeparator:"A numeric separator is only allowed between two digits.",UnexpectedPrivateField:"Unexpected private name.",UnexpectedReservedWord:({reservedWord:e})=>`Unexpected reserved word '${e}'.`,UnexpectedSuper:"'super' is only allowed in object methods and classes.",UnexpectedToken:({expected:e,unexpected:t})=>`Unexpected token${t?` '${t}'.`:""}${e?`, expected "${e}"`:""}`,UnexpectedTokenUnaryExponentiation:"Illegal expression. Wrap left hand side or entire exponentiation in parentheses.",UnexpectedUsingDeclaration:"Using declaration cannot appear in the top level when source type is `script`.",UnsupportedBind:"Binding should be performed on object property.",UnsupportedDecoratorExport:"A decorated export must export a class declaration.",UnsupportedDefaultExport:"Only expressions, functions or classes are allowed as the `default` export.",UnsupportedImport:"`import` can only be used in `import()` or `import.meta`.",UnsupportedMetaProperty:({target:e,onlyValidPropertyName:t})=>`The only valid meta property for ${e} is ${e}.${t}.`,UnsupportedParameterDecorator:"Decorators cannot be used to decorate parameters.",UnsupportedPropertyDecorator:"Decorators cannot be used to decorate object literal properties.",UnsupportedSuper:"'super' can only be used with function calls (i.e. super()) or in property accesses (i.e. super.prop or super[prop]).",UnterminatedComment:"Unterminated comment.",UnterminatedRegExp:"Unterminated regular expression.",UnterminatedString:"Unterminated string constant.",UnterminatedTemplate:"Unterminated template.",UsingDeclarationExport:"Using declaration cannot be exported.",UsingDeclarationHasBindingPattern:"Using declaration cannot have destructuring patterns.",VarRedeclaration:({identifierName:e})=>`Identifier '${e}' has already been declared.`,YieldBindingIdentifier:"Can not use 'yield' as identifier inside a generator.",YieldInParameter:"Yield expression is not allowed in formal parameters.",ZeroDigitNumericSeparator:"Numeric separator can not be used after leading 0."},l=new Set(["ArrowFunctionExpression","AssignmentExpression","ConditionalExpression","YieldExpression"]),c={PipeBodyIsTighter:"Unexpected yield after pipeline body; any yield expression acting as Hack-style pipe body must be parenthesized due to its loose operator precedence.",PipeTopicRequiresHackPipes:'Topic reference is used, but the pipelineOperator plugin was not passed a "proposal": "hack" or "smart" option.',PipeTopicUnbound:"Topic reference is unbound; it must be inside a pipe body.",PipeTopicUnconfiguredToken:({token:e})=>`Invalid topic token ${e}. In order to use ${e} as a topic reference, the pipelineOperator plugin must be configured with { "proposal": "hack", "topicToken": "${e}" }.`,PipeTopicUnused:"Hack-style pipe body does not contain a topic reference; Hack-style pipes must use topic at least once.",PipeUnparenthesizedBody:({type:e})=>`Hack-style pipe body cannot be an unparenthesized ${u({type:e})}; please wrap it in parentheses.`,PipelineBodyNoArrow:'Unexpected arrow "=>" after pipeline body; arrow function in pipeline body must be parenthesized.',PipelineBodySequenceExpression:"Pipeline body may not be a comma-separated sequence expression.",PipelineHeadSequenceExpression:"Pipeline head should not be a comma-separated sequence expression.",PipelineTopicUnused:"Pipeline is in topic style but does not use topic reference.",PrimaryTopicNotAllowed:"Topic reference was used in a lexical context without topic binding.",PrimaryTopicRequiresSmartPipeline:'Topic reference is used, but the pipelineOperator plugin was not passed a "proposal": "hack" or "smart" option.'},h=["toMessage"],d=["message"];function m(e,t,r){Object.defineProperty(e,t,{enumerable:!1,configurable:!0,value:r})}function y(e){let{toMessage:s}=e,i=t(e,h);return function e(t,n){let a=new SyntaxError;return Object.assign(a,i,{loc:t,pos:t.index}),"missingPlugin"in n&&Object.assign(a,{missingPlugin:n.missingPlugin}),m(a,"clone",(function(s={}){var i;let{line:a,column:o,index:u}=null!=(i=s.loc)?i:t;return e(new r(a,o,u),Object.assign({},n,s.details))})),m(a,"details",n),Object.defineProperty(a,"message",{configurable:!0,get(){let e=`${s(n)} (${t.line}:${t.column})`;return this.message=e,e},set(e){Object.defineProperty(this,"message",{value:e,writable:!0})}}),a}}function f(e,r){if(Array.isArray(e))return t=>f(t,e[0]);let s={};for(let i of Object.keys(e)){let n=e[i],a="string"==typeof n?{message:()=>n}:"function"==typeof n?{message:n}:n,{message:o}=a,u=t(a,d),p="string"==typeof o?()=>o:o;s[i]=y(Object.assign({code:"BABEL_PARSER_SYNTAX_ERROR",reasonCode:i,toMessage:p},r?{syntaxPlugin:r}:{},u))}return s}var D=Object.assign({},f(a),f(p),f({StrictDelete:"Deleting local variable in strict mode.",StrictEvalArguments:({referenceName:e})=>`Assigning to '${e}' in strict mode.`,StrictEvalArgumentsBinding:({bindingName:e})=>`Binding '${e}' in strict mode.`,StrictFunction:"In strict mode code, functions can only be declared at top level or inside a block.",StrictNumericEscape:"The only valid numeric escape in strict mode is '\\0'.",StrictOctalLiteral:"Legacy octal literals are not allowed in strict mode.",StrictWith:"'with' in strict mode."}),f`pipelineOperator`(c)),{defineProperty:x}=Object,g=(e,t)=>{e&&x(e,t,{enumerable:!1,value:e[t]})};function E(e){return g(e.loc.start,"index"),g(e.loc.end,"index"),e}var A=class{constructor(e,t){this.token=void 0,this.preserveSpace=void 0,this.token=e,this.preserveSpace=!!t}},T={brace:new A("{"),j_oTag:new A("<tag"),j_cTag:new A("</tag"),j_expr:new A("<tag>...</tag>",!0)};T.template=new A("`",!0);var C=!0,F=!0,b=!0,S=!0,P=!0,w=class{constructor(e,t={}){this.label=void 0,this.keyword=void 0,this.beforeExpr=void 0,this.startsExpr=void 0,this.rightAssociative=void 0,this.isLoop=void 0,this.isAssign=void 0,this.prefix=void 0,this.postfix=void 0,this.binop=void 0,this.label=e,this.keyword=t.keyword,this.beforeExpr=!!t.beforeExpr,this.startsExpr=!!t.startsExpr,this.rightAssociative=!!t.rightAssociative,this.isLoop=!!t.isLoop,this.isAssign=!!t.isAssign,this.prefix=!!t.prefix,this.postfix=!!t.postfix,this.binop=null!=t.binop?t.binop:null,this.updateContext=null}},v=new Map;function k(e,t={}){t.keyword=e;let r=R(e,t);return v.set(e,r),r}function I(e,t){return R(e,{beforeExpr:C,binop:t})}var N=-1,B=[],L=[],M=[],O=[],j=[],_=[];function R(e,t={}){var r,s,i,n;return++N,L.push(e),M.push(null!=(r=t.binop)?r:-1),O.push(null!=(s=t.beforeExpr)&&s),j.push(null!=(i=t.startsExpr)&&i),_.push(null!=(n=t.prefix)&&n),B.push(new w(e,t)),N}function U(e,t={}){var r,s,i,n;return++N,v.set(e,N),L.push(e),M.push(null!=(r=t.binop)?r:-1),O.push(null!=(s=t.beforeExpr)&&s),j.push(null!=(i=t.startsExpr)&&i),_.push(null!=(n=t.prefix)&&n),B.push(new w("name",t)),N}var $={bracketL:R("[",{beforeExpr:C,startsExpr:F}),bracketHashL:R("#[",{beforeExpr:C,startsExpr:F}),bracketBarL:R("[|",{beforeExpr:C,startsExpr:F}),bracketR:R("]"),bracketBarR:R("|]"),braceL:R("{",{beforeExpr:C,startsExpr:F}),braceBarL:R("{|",{beforeExpr:C,startsExpr:F}),braceHashL:R("#{",{beforeExpr:C,startsExpr:F}),braceR:R("}"),braceBarR:R("|}"),parenL:R("(",{beforeExpr:C,startsExpr:F}),parenR:R(")"),comma:R(",",{beforeExpr:C}),semi:R(";",{beforeExpr:C}),colon:R(":",{beforeExpr:C}),doubleColon:R("::",{beforeExpr:C}),dot:R("."),question:R("?",{beforeExpr:C}),questionDot:R("?."),arrow:R("=>",{beforeExpr:C}),template:R("template"),ellipsis:R("...",{beforeExpr:C}),backQuote:R("`",{startsExpr:F}),dollarBraceL:R("${",{beforeExpr:C,startsExpr:F}),templateTail:R("...`",{startsExpr:F}),templateNonTail:R("...${",{beforeExpr:C,startsExpr:F}),at:R("@"),hash:R("#",{startsExpr:F}),interpreterDirective:R("#!..."),eq:R("=",{beforeExpr:C,isAssign:S}),assign:R("_=",{beforeExpr:C,isAssign:S}),slashAssign:R("_=",{beforeExpr:C,isAssign:S}),xorAssign:R("_=",{beforeExpr:C,isAssign:S}),moduloAssign:R("_=",{beforeExpr:C,isAssign:S}),incDec:R("++/--",{prefix:P,postfix:!0,startsExpr:F}),bang:R("!",{beforeExpr:C,prefix:P,startsExpr:F}),tilde:R("~",{beforeExpr:C,prefix:P,startsExpr:F}),doubleCaret:R("^^",{startsExpr:F}),doubleAt:R("@@",{startsExpr:F}),pipeline:I("|>",0),nullishCoalescing:I("??",1),logicalOR:I("||",1),logicalAND:I("&&",2),bitwiseOR:I("|",3),bitwiseXOR:I("^",4),bitwiseAND:I("&",5),equality:I("==/!=/===/!==",6),lt:I("</>/<=/>=",7),gt:I("</>/<=/>=",7),relational:I("</>/<=/>=",7),bitShift:I("<</>>/>>>",8),bitShiftL:I("<</>>/>>>",8),bitShiftR:I("<</>>/>>>",8),plusMin:R("+/-",{beforeExpr:C,binop:9,prefix:P,startsExpr:F}),modulo:R("%",{binop:10,startsExpr:F}),star:R("*",{binop:10}),slash:I("/",10),exponent:R("**",{beforeExpr:C,binop:11,rightAssociative:!0}),_in:k("in",{beforeExpr:C,binop:7}),_instanceof:k("instanceof",{beforeExpr:C,binop:7}),_break:k("break"),_case:k("case",{beforeExpr:C}),_catch:k("catch"),_continue:k("continue"),_debugger:k("debugger"),_default:k("default",{beforeExpr:C}),_else:k("else",{beforeExpr:C}),_finally:k("finally"),_function:k("function",{startsExpr:F}),_if:k("if"),_return:k("return",{beforeExpr:C}),_switch:k("switch"),_throw:k("throw",{beforeExpr:C,prefix:P,startsExpr:F}),_try:k("try"),_var:k("var"),_const:k("const"),_with:k("with"),_new:k("new",{beforeExpr:C,startsExpr:F}),_this:k("this",{startsExpr:F}),_super:k("super",{startsExpr:F}),_class:k("class",{startsExpr:F}),_extends:k("extends",{beforeExpr:C}),_export:k("export"),_import:k("import",{startsExpr:F}),_null:k("null",{startsExpr:F}),_true:k("true",{startsExpr:F}),_false:k("false",{startsExpr:F}),_typeof:k("typeof",{beforeExpr:C,prefix:P,startsExpr:F}),_void:k("void",{beforeExpr:C,prefix:P,startsExpr:F}),_delete:k("delete",{beforeExpr:C,prefix:P,startsExpr:F}),_do:k("do",{isLoop:b,beforeExpr:C}),_for:k("for",{isLoop:b}),_while:k("while",{isLoop:b}),_as:U("as",{startsExpr:F}),_assert:U("assert",{startsExpr:F}),_async:U("async",{startsExpr:F}),_await:U("await",{startsExpr:F}),_defer:U("defer",{startsExpr:F}),_from:U("from",{startsExpr:F}),_get:U("get",{startsExpr:F}),_let:U("let",{startsExpr:F}),_meta:U("meta",{startsExpr:F}),_of:U("of",{startsExpr:F}),_sent:U("sent",{startsExpr:F}),_set:U("set",{startsExpr:F}),_source:U("source",{startsExpr:F}),_static:U("static",{startsExpr:F}),_using:U("using",{startsExpr:F}),_yield:U("yield",{startsExpr:F}),_asserts:U("asserts",{startsExpr:F}),_checks:U("checks",{startsExpr:F}),_exports:U("exports",{startsExpr:F}),_global:U("global",{startsExpr:F}),_implements:U("implements",{startsExpr:F}),_intrinsic:U("intrinsic",{startsExpr:F}),_infer:U("infer",{startsExpr:F}),_is:U("is",{startsExpr:F}),_mixins:U("mixins",{startsExpr:F}),_proto:U("proto",{startsExpr:F}),_require:U("require",{startsExpr:F}),_satisfies:U("satisfies",{startsExpr:F}),_keyof:U("keyof",{startsExpr:F}),_readonly:U("readonly",{startsExpr:F}),_unique:U("unique",{startsExpr:F}),_abstract:U("abstract",{startsExpr:F}),_declare:U("declare",{startsExpr:F}),_enum:U("enum",{startsExpr:F}),_module:U("module",{startsExpr:F}),_namespace:U("namespace",{startsExpr:F}),_interface:U("interface",{startsExpr:F}),_type:U("type",{startsExpr:F}),_opaque:U("opaque",{startsExpr:F}),name:R("name",{startsExpr:F}),string:R("string",{startsExpr:F}),num:R("num",{startsExpr:F}),bigint:R("bigint",{startsExpr:F}),decimal:R("decimal",{startsExpr:F}),regexp:R("regexp",{startsExpr:F}),privateName:R("#name",{startsExpr:F}),eof:R("eof"),jsxName:R("jsxName"),jsxText:R("jsxText",{beforeExpr:!0}),jsxTagStart:R("jsxTagStart",{startsExpr:!0}),jsxTagEnd:R("jsxTagEnd"),placeholder:R("%%",{startsExpr:!0})};function q(e){return e>=93&&e<=132}function J(e){return e>=58&&e<=132}function V(e){return e>=58&&e<=136}function z(e){return j[e]}function H(e){return e>=129&&e<=131}function W(e){return e>=58&&e<=92}function K(e){return L[e]}function X(e){return M[e]}function G(e){return e>=24&&e<=25}function Y(e){return B[e]}B[8].updateContext=e=>{e.pop()},B[5].updateContext=B[7].updateContext=B[23].updateContext=e=>{e.push(T.brace)},B[22].updateContext=e=>{e[e.length-1]===T.template?e.pop():e.push(T.template)},B[142].updateContext=e=>{e.push(T.j_expr,T.j_oTag)};var Q="ªµºÀ-ÖØ-öø-ˁˆ-ˑˠ-ˤˬˮͰ-ʹͶͷͺ-ͽͿΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁҊ-ԯԱ-Ֆՙՠ-ֈא-תׯ-ײؠ-يٮٯٱ-ۓەۥۦۮۯۺ-ۼۿܐܒ-ܯݍ-ޥޱߊ-ߪߴߵߺࠀ-ࠕࠚࠤࠨࡀ-ࡘࡠ-ࡪࡰ-ࢇࢉ-ࢎࢠ-ࣉऄ-हऽॐक़-ॡॱ-ঀঅ-ঌএঐও-নপ-রলশ-হঽৎড়ঢ়য়-ৡৰৱৼਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਖ਼-ੜਫ਼ੲ-ੴઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽૐૠૡૹଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽଡ଼ଢ଼ୟ-ୡୱஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹௐఅ-ఌఎ-ఐఒ-నప-హఽౘ-ౚౝౠౡಀಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽೝೞೠೡೱೲഄ-ഌഎ-ഐഒ-ഺഽൎൔ-ൖൟ-ൡൺ-ൿඅ-ඖක-නඳ-රලව-ෆก-ะาำเ-ๆກຂຄຆ-ຊຌ-ຣລວ-ະາຳຽເ-ໄໆໜ-ໟༀཀ-ཇཉ-ཬྈ-ྌက-ဪဿၐ-ၕၚ-ၝၡၥၦၮ-ၰၵ-ႁႎႠ-ჅჇჍა-ჺჼ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚᎀ-ᎏᎠ-Ᏽᏸ-ᏽᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛮ-ᛸᜀ-ᜑᜟ-ᜱᝀ-ᝑᝠ-ᝬᝮ-ᝰក-ឳៗៜᠠ-ᡸᢀ-ᢨᢪᢰ-ᣵᤀ-ᤞᥐ-ᥭᥰ-ᥴᦀ-ᦫᦰ-ᧉᨀ-ᨖᨠ-ᩔᪧᬅ-ᬳᭅ-ᭌᮃ-ᮠᮮᮯᮺ-ᯥᰀ-ᰣᱍ-ᱏᱚ-ᱽᲀ-ᲈᲐ-ᲺᲽ-Ჿᳩ-ᳬᳮ-ᳳᳵᳶᳺᴀ-ᶿḀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼⁱⁿₐ-ₜℂℇℊ-ℓℕ℘-ℝℤΩℨK-ℹℼ-ℿⅅ-ⅉⅎⅠ-ↈⰀ-ⳤⳫ-ⳮⳲⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞ々-〇〡-〩〱-〵〸-〼ぁ-ゖ゛-ゟァ-ヺー-ヿㄅ-ㄯㄱ-ㆎㆠ-ㆿㇰ-ㇿ㐀-䶿一-ꒌꓐ-ꓽꔀ-ꘌꘐ-ꘟꘪꘫꙀ-ꙮꙿ-ꚝꚠ-ꛯꜗ-ꜟꜢ-ꞈꞋ-ꟊꟐꟑꟓꟕ-ꟙꟲ-ꠁꠃ-ꠅꠇ-ꠊꠌ-ꠢꡀ-ꡳꢂ-ꢳꣲ-ꣷꣻꣽꣾꤊ-ꤥꤰ-ꥆꥠ-ꥼꦄ-ꦲꧏꧠ-ꧤꧦ-ꧯꧺ-ꧾꨀ-ꨨꩀ-ꩂꩄ-ꩋꩠ-ꩶꩺꩾ-ꪯꪱꪵꪶꪹ-ꪽꫀꫂꫛ-ꫝꫠ-ꫪꫲ-ꫴꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꬰ-ꭚꭜ-ꭩꭰ-ꯢ가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎ff-stﬓ-ﬗיִײַ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻﹰ-ﹴﹶ-ﻼA-Za-zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ",Z="‌‍·̀-ͯ·҃-֑҇-ׇֽֿׁׂׅׄؐ-ًؚ-٩ٰۖ-ۜ۟-۪ۤۧۨ-ۭ۰-۹ܑܰ-݊ަ-ް߀-߉߫-߽߳ࠖ-࠙ࠛ-ࠣࠥ-ࠧࠩ-࡙࠭-࡛࢘-࢟࣊-ࣣ࣡-ःऺ-़ा-ॏ॑-ॗॢॣ०-९ঁ-ঃ়া-ৄেৈো-্ৗৢৣ০-৯৾ਁ-ਃ਼ਾ-ੂੇੈੋ-੍ੑ੦-ੱੵઁ-ઃ઼ા-ૅે-ૉો-્ૢૣ૦-૯ૺ-૿ଁ-ଃ଼ା-ୄେୈୋ-୍୕-ୗୢୣ୦-୯ஂா-ூெ-ைொ-்ௗ௦-௯ఀ-ఄ఼ా-ౄె-ైొ-్ౕౖౢౣ౦-౯ಁ-ಃ಼ಾ-ೄೆ-ೈೊ-್ೕೖೢೣ೦-೯ೳഀ-ഃ഻഼ാ-ൄെ-ൈൊ-്ൗൢൣ൦-൯ඁ-ඃ්ා-ුූෘ-ෟ෦-෯ෲෳัิ-ฺ็-๎๐-๙ັິ-ຼ່-໎໐-໙༘༙༠-༩༹༵༷༾༿ཱ-྄྆྇ྍ-ྗྙ-ྼ࿆ါ-ှ၀-၉ၖ-ၙၞ-ၠၢ-ၤၧ-ၭၱ-ၴႂ-ႍႏ-ႝ፝-፟፩-፱ᜒ-᜕ᜲ-᜴ᝒᝓᝲᝳ឴-៓៝០-៩᠋-᠍᠏-᠙ᢩᤠ-ᤫᤰ-᤻᥆-᥏᧐-᧚ᨗ-ᨛᩕ-ᩞ᩠-᩿᩼-᪉᪐-᪙᪰-᪽ᪿ-ᫎᬀ-ᬄ᬴-᭄᭐-᭙᭫-᭳ᮀ-ᮂᮡ-ᮭ᮰-᮹᯦-᯳ᰤ-᰷᱀-᱉᱐-᱙᳐-᳔᳒-᳨᳭᳴᳷-᳹᷀-᷿‌‍‿⁀⁔⃐-⃥⃜⃡-⃰⳯-⵿⳱ⷠ-〪ⷿ-゙゚〯・꘠-꘩꙯ꙴ-꙽ꚞꚟ꛰꛱ꠂ꠆ꠋꠣ-ꠧ꠬ꢀꢁꢴ-ꣅ꣐-꣙꣠-꣱ꣿ-꤉ꤦ-꤭ꥇ-꥓ꦀ-ꦃ꦳-꧀꧐-꧙ꧥ꧰-꧹ꨩ-ꨶꩃꩌꩍ꩐-꩙ꩻ-ꩽꪰꪲ-ꪴꪷꪸꪾ꪿꫁ꫫ-ꫯꫵ꫶ꯣ-ꯪ꯬꯭꯰-꯹ﬞ︀-️︠-︯︳︴﹍-﹏0-9_・",ee=new RegExp("["+Q+"]"),te=new RegExp("["+Q+Z+"]");Q=Z=null;var re=[0,11,2,25,2,18,2,1,2,14,3,13,35,122,70,52,268,28,4,48,48,31,14,29,6,37,11,29,3,35,5,7,2,4,43,157,19,35,5,35,5,39,9,51,13,10,2,14,2,6,2,1,2,10,2,14,2,6,2,1,68,310,10,21,11,7,25,5,2,41,2,8,70,5,3,0,2,43,2,1,4,0,3,22,11,22,10,30,66,18,2,1,11,21,11,25,71,55,7,1,65,0,16,3,2,2,2,28,43,28,4,28,36,7,2,27,28,53,11,21,11,18,14,17,111,72,56,50,14,50,14,35,349,41,7,1,79,28,11,0,9,21,43,17,47,20,28,22,13,52,58,1,3,0,14,44,33,24,27,35,30,0,3,0,9,34,4,0,13,47,15,3,22,0,2,0,36,17,2,24,20,1,64,6,2,0,2,3,2,14,2,9,8,46,39,7,3,1,3,21,2,6,2,1,2,4,4,0,19,0,13,4,159,52,19,3,21,2,31,47,21,1,2,0,185,46,42,3,37,47,21,0,60,42,14,0,72,26,38,6,186,43,117,63,32,7,3,0,3,7,2,1,2,23,16,0,2,0,95,7,3,38,17,0,2,0,29,0,11,39,8,0,22,0,12,45,20,0,19,72,264,8,2,36,18,0,50,29,113,6,2,1,2,37,22,0,26,5,2,1,2,31,15,0,328,18,16,0,2,12,2,33,125,0,80,921,103,110,18,195,2637,96,16,1071,18,5,4026,582,8634,568,8,30,18,78,18,29,19,47,17,3,32,20,6,18,689,63,129,74,6,0,67,12,65,1,2,0,29,6135,9,1237,43,8,8936,3,2,6,2,1,2,290,16,0,30,2,3,0,15,3,9,395,2309,106,6,12,4,8,8,9,5991,84,2,70,2,1,3,0,3,1,3,3,2,11,2,0,2,6,2,64,2,3,3,7,2,6,2,27,2,3,2,4,2,0,4,6,2,339,3,24,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,7,1845,30,7,5,262,61,147,44,11,6,17,0,322,29,19,43,485,27,757,6,2,3,2,1,2,14,2,196,60,67,8,0,1205,3,2,26,2,1,2,0,3,0,2,9,2,3,2,0,2,0,7,0,5,0,2,0,2,0,2,2,2,1,2,0,3,0,2,0,2,0,2,0,2,0,2,1,2,0,3,3,2,6,2,3,2,3,2,0,2,9,2,16,6,2,2,4,2,16,4421,42719,33,4153,7,221,3,5761,15,7472,16,621,2467,541,1507,4938,6,4191],se=[509,0,227,0,150,4,294,9,1368,2,2,1,6,3,41,2,5,0,166,1,574,3,9,9,370,1,81,2,71,10,50,3,123,2,54,14,32,10,3,1,11,3,46,10,8,0,46,9,7,2,37,13,2,9,6,1,45,0,13,2,49,13,9,3,2,11,83,11,7,0,3,0,158,11,6,9,7,3,56,1,2,6,3,1,3,2,10,0,11,1,3,6,4,4,193,17,10,9,5,0,82,19,13,9,214,6,3,8,28,1,83,16,16,9,82,12,9,9,84,14,5,9,243,14,166,9,71,5,2,1,3,3,2,0,2,1,13,9,120,6,3,6,4,0,29,9,41,6,2,3,9,0,10,10,47,15,406,7,2,7,17,9,57,21,2,13,123,5,4,0,2,1,2,6,2,0,9,9,49,4,2,1,2,4,9,9,330,3,10,1,2,0,49,6,4,4,14,9,5351,0,7,14,13835,9,87,9,39,4,60,6,26,9,1014,0,2,54,8,3,82,0,12,1,19628,1,4706,45,3,22,543,4,4,5,9,7,3,6,31,3,149,2,1418,49,513,54,5,49,9,0,15,0,23,4,2,14,1361,6,2,16,3,6,2,1,2,4,101,0,161,6,10,9,357,0,62,13,499,13,983,6,110,6,6,9,4759,9,787719,239];function ie(e,t){let r=65536;for(let s=0,i=t.length;s<i;s+=2){if(r+=t[s],r>e)return!1;if(r+=t[s+1],r>=e)return!0}return!1}function ne(e){return e<65?36===e:e<=90||(e<97?95===e:e<=122||(e<=65535?e>=170&&ee.test(String.fromCharCode(e)):ie(e,re)))}function ae(e){return e<48?36===e:e<58||!(e<65)&&(e<=90||(e<97?95===e:e<=122||(e<=65535?e>=170&&te.test(String.fromCharCode(e)):ie(e,re)||ie(e,se))))}var oe=["implements","interface","let","package","private","protected","public","static","yield"],ue=["eval","arguments"],pe=new Set(["break","case","catch","continue","debugger","default","do","else","finally","for","function","if","return","switch","throw","try","var","const","while","with","new","this","super","class","extends","export","import","null","true","false","in","instanceof","typeof","void","delete"]),le=new Set(oe),ce=new Set(ue);function he(e,t){return t&&"await"===e||"enum"===e}function de(e,t){return he(e,t)||le.has(e)}function me(e){return ce.has(e)}function ye(e,t){return de(e,t)||me(e)}var fe=new Set(["break","case","catch","continue","debugger","default","do","else","finally","for","function","if","return","switch","throw","try","var","const","while","with","new","this","super","class","extends","export","import","null","true","false","in","instanceof","typeof","void","delete","implements","interface","let","package","private","protected","public","static","yield","eval","arguments","enum","await"]),De=class{constructor(e){this.flags=0,this.names=new Map,this.firstLexicalName="",this.flags=e}},xe=class{constructor(e,t){this.parser=void 0,this.scopeStack=[],this.inModule=void 0,this.undefinedExports=new Map,this.parser=e,this.inModule=t}get inTopLevel(){return(1&this.currentScope().flags)>0}get inFunction(){return(2&this.currentVarScopeFlags())>0}get allowSuper(){return(16&this.currentThisScopeFlags())>0}get allowDirectSuper(){return(32&this.currentThisScopeFlags())>0}get inClass(){return(64&this.currentThisScopeFlags())>0}get inClassAndNotInNonArrowFunction(){let e=this.currentThisScopeFlags();return(64&e)>0&&0==(2&e)}get inStaticBlock(){for(let e=this.scopeStack.length-1;;e--){let{flags:t}=this.scopeStack[e];if(128&t)return!0;if(451&t)return!1}}get inNonArrowFunction(){return(2&this.currentThisScopeFlags())>0}get treatFunctionsAsVar(){return this.treatFunctionsAsVarInScope(this.currentScope())}createScope(e){return new De(e)}enter(e){this.scopeStack.push(this.createScope(e))}exit(){return this.scopeStack.pop().flags}treatFunctionsAsVarInScope(e){return!!(130&e.flags||!this.parser.inModule&&1&e.flags)}declareName(e,t,r){let s=this.currentScope();if(8&t||16&t){this.checkRedeclarationInScope(s,e,t,r);let i=s.names.get(e)||0;16&t?i|=4:(s.firstLexicalName||(s.firstLexicalName=e),i|=2),s.names.set(e,i),8&t&&this.maybeExportDefined(s,e)}else if(4&t)for(let i=this.scopeStack.length-1;i>=0&&(s=this.scopeStack[i],this.checkRedeclarationInScope(s,e,t,r),s.names.set(e,1|(s.names.get(e)||0)),this.maybeExportDefined(s,e),!(387&s.flags));--i);this.parser.inModule&&1&s.flags&&this.undefinedExports.delete(e)}maybeExportDefined(e,t){this.parser.inModule&&1&e.flags&&this.undefinedExports.delete(t)}checkRedeclarationInScope(e,t,r,s){this.isRedeclaredInScope(e,t,r)&&this.parser.raise(D.VarRedeclaration,s,{identifierName:t})}isRedeclaredInScope(e,t,r){if(!(1&r))return!1;if(8&r)return e.names.has(t);let s=e.names.get(t);return 16&r?(2&s)>0||!this.treatFunctionsAsVarInScope(e)&&(1&s)>0:(2&s)>0&&!(8&e.flags&&e.firstLexicalName===t)||!this.treatFunctionsAsVarInScope(e)&&(4&s)>0}checkLocalExport(e){let{name:t}=e;this.scopeStack[0].names.has(t)||this.undefinedExports.set(t,e.loc.start)}currentScope(){return this.scopeStack[this.scopeStack.length-1]}currentVarScopeFlags(){for(let e=this.scopeStack.length-1;;e--){let{flags:t}=this.scopeStack[e];if(387&t)return t}}currentThisScopeFlags(){for(let e=this.scopeStack.length-1;;e--){let{flags:t}=this.scopeStack[e];if(451&t&&!(4&t))return t}}},ge=class extends De{constructor(...e){super(...e),this.declareFunctions=new Set}},Ee=class extends xe{createScope(e){return new ge(e)}declareName(e,t,r){let s=this.currentScope();if(2048&t)return this.checkRedeclarationInScope(s,e,t,r),this.maybeExportDefined(s,e),void s.declareFunctions.add(e);super.declareName(e,t,r)}isRedeclaredInScope(e,t,r){if(super.isRedeclaredInScope(e,t,r))return!0;if(2048&r&&!e.declareFunctions.has(t)){let r=e.names.get(t);return(4&r)>0||(2&r)>0}return!1}checkLocalExport(e){this.scopeStack[0].declareFunctions.has(e.name)||super.checkLocalExport(e)}},Ae=class{constructor(){this.sawUnambiguousESM=!1,this.ambiguousScriptDifferentAst=!1}hasPlugin(e){if("string"==typeof e)return this.plugins.has(e);{let[t,r]=e;if(!this.hasPlugin(t))return!1;let s=this.plugins.get(t);for(let e of Object.keys(r))if((null==s?void 0:s[e])!==r[e])return!1;return!0}}getPluginOption(e,t){var r;return null==(r=this.plugins.get(e))?void 0:r[t]}};function Te(e,t){void 0===e.trailingComments?e.trailingComments=t:e.trailingComments.unshift(...t)}function Ce(e,t){void 0===e.innerComments?e.innerComments=t:e.innerComments.unshift(...t)}function Fe(e,t,r){let s=null,i=t.length;for(;null===s&&i>0;)s=t[--i];null===s||s.start>r.start?Ce(e,r.comments):Te(s,r.comments)}var be=class extends Ae{addComment(e){this.filename&&(e.loc.filename=this.filename);let{commentsLen:t}=this.state;this.comments.length!==t&&(this.comments.length=t),this.comments.push(e),this.state.commentsLen++}processComment(e){let{commentStack:t}=this.state,r=t.length;if(0===r)return;let s=r-1,i=t[s];i.start===e.end&&(i.leadingNode=e,s--);let{start:n}=e;for(;s>=0;s--){let r=t[s],i=r.end;if(!(i>n)){i===n&&(r.trailingNode=e);break}r.containingNode=e,this.finalizeComment(r),t.splice(s,1)}}finalizeComment(e){let{comments:t}=e;if(null!==e.leadingNode||null!==e.trailingNode)null!==e.leadingNode&&Te(e.leadingNode,t),null!==e.trailingNode&&function(e,t){void 0===e.leadingComments?e.leadingComments=t:e.leadingComments.unshift(...t)}(e.trailingNode,t);else{let{containingNode:r,start:s}=e;if(44===this.input.charCodeAt(s-1))switch(r.type){case"ObjectExpression":case"ObjectPattern":case"RecordExpression":Fe(r,r.properties,e);break;case"CallExpression":case"OptionalCallExpression":Fe(r,r.arguments,e);break;case"FunctionDeclaration":case"FunctionExpression":case"ArrowFunctionExpression":case"ObjectMethod":case"ClassMethod":case"ClassPrivateMethod":Fe(r,r.params,e);break;case"ArrayExpression":case"ArrayPattern":case"TupleExpression":Fe(r,r.elements,e);break;case"ExportNamedDeclaration":case"ImportDeclaration":Fe(r,r.specifiers,e);break;default:Ce(r,t)}else Ce(r,t)}}finalizeRemainingComments(){let{commentStack:e}=this.state;for(let t=e.length-1;t>=0;t--)this.finalizeComment(e[t]);this.state.commentStack=[]}resetPreviousNodeTrailingComments(e){let{commentStack:t}=this.state,{length:r}=t;if(0===r)return;let s=t[r-1];s.leadingNode===e&&(s.leadingNode=null)}resetPreviousIdentifierLeadingComments(e){let{commentStack:t}=this.state,{length:r}=t;0!==r&&(t[r-1].trailingNode===e?t[r-1].trailingNode=null:r>=2&&t[r-2].trailingNode===e&&(t[r-2].trailingNode=null))}takeSurroundingComments(e,t,r){let{commentStack:s}=this.state,i=s.length;if(0===i)return;let n=i-1;for(;n>=0;n--){let i=s[n],a=i.end;if(i.start===r)i.leadingNode=e;else if(a===t)i.trailingNode=e;else if(a<t)break}}},Se=/\r\n?|[\n\u2028\u2029]/,Pe=new RegExp(Se.source,"g");function we(e){switch(e){case 10:case 13:case 8232:case 8233:return!0;default:return!1}}var ve=/(?:\s|\/\/.*|\/\*[^]*?\*\/)*/g,ke=/(?:[^\S\n\r\u2028\u2029]|\/\/.*|\/\*.*?\*\/)*/g,Ie=new RegExp("(?=("+ke.source+"))\\1"+/(?=[\n\r\u2028\u2029]|\/\*(?!.*?\*\/)|$)/.source,"y");function Ne(e){switch(e){case 9:case 11:case 12:case 32:case 160:case 5760:case 8192:case 8193:case 8194:case 8195:case 8196:case 8197:case 8198:case 8199:case 8200:case 8201:case 8202:case 8239:case 8287:case 12288:case 65279:return!0;default:return!1}}var Be=function(e){return e>=48&&e<=57},Le={decBinOct:new Set([46,66,69,79,95,98,101,111]),hex:new Set([46,88,95,120])},Me={bin:e=>48===e||49===e,oct:e=>e>=48&&e<=55,dec:e=>e>=48&&e<=57,hex:e=>e>=48&&e<=57||e>=65&&e<=70||e>=97&&e<=102};function Oe(e,t,r,s,i,n){let a=r,o=s,u=i,p="",l=null,c=r,{length:h}=t;for(;;){if(r>=h){n.unterminated(a,o,u),p+=t.slice(c,r);break}let d=t.charCodeAt(r);if(je(e,d,t,r)){p+=t.slice(c,r);break}if(92===d){p+=t.slice(c,r);let a=_e(t,r,s,i,"template"===e,n);null!==a.ch||l?p+=a.ch:l={pos:r,lineStart:s,curLine:i},({pos:r,lineStart:s,curLine:i}=a),c=r}else 8232===d||8233===d?(++i,s=++r):10===d||13===d?"template"===e?(p+=t.slice(c,r)+"\n",++r,13===d&&10===t.charCodeAt(r)&&++r,++i,c=s=r):n.unterminated(a,o,u):++r}return{pos:r,str:p,firstInvalidLoc:l,lineStart:s,curLine:i,containsInvalid:!!l}}function je(e,t,r,s){return"template"===e?96===t||36===t&&123===r.charCodeAt(s+1):t===("double"===e?34:39)}function _e(e,t,r,s,i,n){let a=!i;t++;let o=e=>({pos:t,ch:e,lineStart:r,curLine:s}),u=e.charCodeAt(t++);switch(u){case 110:return o("\n");case 114:return o("\r");case 120:{let i;return({code:i,pos:t}=Re(e,t,r,s,2,!1,a,n)),o(null===i?null:String.fromCharCode(i))}case 117:{let i;return({code:i,pos:t}=$e(e,t,r,s,a,n)),o(null===i?null:String.fromCodePoint(i))}case 116:return o("\t");case 98:return o("\b");case 118:return o("\v");case 102:return o("\f");case 13:10===e.charCodeAt(t)&&++t;case 10:r=t,++s;case 8232:case 8233:return o("");case 56:case 57:if(i)return o(null);n.strictNumericEscape(t-1,r,s);default:if(u>=48&&u<=55){let a=t-1,u=/^[0-7]+/.exec(e.slice(a,t+2))[0],p=parseInt(u,8);p>255&&(u=u.slice(0,-1),p=parseInt(u,8)),t+=u.length-1;let l=e.charCodeAt(t);if("0"!==u||56===l||57===l){if(i)return o(null);n.strictNumericEscape(a,r,s)}return o(String.fromCharCode(p))}return o(String.fromCharCode(u))}}function Re(e,t,r,s,i,n,a,o){let u,p=t;return({n:u,pos:t}=Ue(e,t,r,s,16,i,n,!1,o,!a)),null===u&&(a?o.invalidEscapeSequence(p,r,s):t=p-1),{code:u,pos:t}}function Ue(e,t,r,s,i,n,a,o,u,p){let l=t,c=16===i?Le.hex:Le.decBinOct,h=16===i?Me.hex:10===i?Me.dec:8===i?Me.oct:Me.bin,d=!1,m=0;for(let y=0,f=n??1/0;y<f;++y){let n,l=e.charCodeAt(t);if(95!==l||"bail"===o){if(n=l>=97?l-97+10:l>=65?l-65+10:Be(l)?l-48:1/0,n>=i){if(n<=9&&p)return{n:null,pos:t};if(n<=9&&u.invalidDigit(t,r,s,i))n=0;else{if(!a)break;n=0,d=!0}}++t,m=m*i+n}else{let i=e.charCodeAt(t-1),n=e.charCodeAt(t+1);if(o){if(Number.isNaN(n)||!h(n)||c.has(i)||c.has(n)){if(p)return{n:null,pos:t};u.unexpectedNumericSeparator(t,r,s)}}else{if(p)return{n:null,pos:t};u.numericSeparatorInEscapeSequence(t,r,s)}++t}}return t===l||null!=n&&t-l!==n||d?{n:null,pos:t}:{n:m,pos:t}}function $e(e,t,r,s,i,n){let a;if(123===e.charCodeAt(t)){if(++t,({code:a,pos:t}=Re(e,t,r,s,e.indexOf("}",t)-t,!0,i,n)),++t,null!==a&&a>1114111){if(!i)return{code:null,pos:t};n.invalidCodePoint(t,r,s)}}else({code:a,pos:t}=Re(e,t,r,s,4,!1,i,n));return{code:a,pos:t}}function qe(e,t,s){return new r(s,e-t,e)}var Je=new Set([103,109,115,105,121,117,100,118]),Ve=class{constructor(e){this.type=e.type,this.value=e.value,this.start=e.start,this.end=e.end,this.loc=new s(e.startLoc,e.endLoc)}},ze=class extends be{constructor(e,t){super(),this.isLookahead=void 0,this.tokens=[],this.errorHandlers_readInt={invalidDigit:(e,t,r,s)=>!!this.options.errorRecovery&&(this.raise(D.InvalidDigit,qe(e,t,r),{radix:s}),!0),numericSeparatorInEscapeSequence:this.errorBuilder(D.NumericSeparatorInEscapeSequence),unexpectedNumericSeparator:this.errorBuilder(D.UnexpectedNumericSeparator)},this.errorHandlers_readCodePoint=Object.assign({},this.errorHandlers_readInt,{invalidEscapeSequence:this.errorBuilder(D.InvalidEscapeSequence),invalidCodePoint:this.errorBuilder(D.InvalidCodePoint)}),this.errorHandlers_readStringContents_string=Object.assign({},this.errorHandlers_readCodePoint,{strictNumericEscape:(e,t,r)=>{this.recordStrictModeErrors(D.StrictNumericEscape,qe(e,t,r))},unterminated:(e,t,r)=>{throw this.raise(D.UnterminatedString,qe(e-1,t,r))}}),this.errorHandlers_readStringContents_template=Object.assign({},this.errorHandlers_readCodePoint,{strictNumericEscape:this.errorBuilder(D.StrictNumericEscape),unterminated:(e,t,r)=>{throw this.raise(D.UnterminatedTemplate,qe(e,t,r))}}),this.state=new class e{constructor(){this.flags=1024,this.curLine=void 0,this.lineStart=void 0,this.startLoc=void 0,this.endLoc=void 0,this.errors=[],this.potentialArrowAt=-1,this.noArrowAt=[],this.noArrowParamsConversionAt=[],this.topicContext={maxNumOfResolvableTopics:0,maxTopicIndex:null},this.labels=[],this.commentsLen=0,this.commentStack=[],this.pos=0,this.type=139,this.value=null,this.start=0,this.end=0,this.lastTokEndLoc=null,this.lastTokStartLoc=null,this.context=[T.brace],this.firstInvalidTemplateEscapePos=null,this.strictErrors=new Map,this.tokensLength=0}get strict(){return(1&this.flags)>0}set strict(e){e?this.flags|=1:this.flags&=-2}init({strictMode:e,sourceType:t,startLine:s,startColumn:i}){this.strict=!1!==e&&(!0===e||"module"===t),this.curLine=s,this.lineStart=-i,this.startLoc=this.endLoc=new r(s,i,0)}get maybeInArrowParameters(){return(2&this.flags)>0}set maybeInArrowParameters(e){e?this.flags|=2:this.flags&=-3}get inType(){return(4&this.flags)>0}set inType(e){e?this.flags|=4:this.flags&=-5}get noAnonFunctionType(){return(8&this.flags)>0}set noAnonFunctionType(e){e?this.flags|=8:this.flags&=-9}get hasFlowComment(){return(16&this.flags)>0}set hasFlowComment(e){e?this.flags|=16:this.flags&=-17}get isAmbientContext(){return(32&this.flags)>0}set isAmbientContext(e){e?this.flags|=32:this.flags&=-33}get inAbstractClass(){return(64&this.flags)>0}set inAbstractClass(e){e?this.flags|=64:this.flags&=-65}get inDisallowConditionalTypesContext(){return(128&this.flags)>0}set inDisallowConditionalTypesContext(e){e?this.flags|=128:this.flags&=-129}get soloAwait(){return(256&this.flags)>0}set soloAwait(e){e?this.flags|=256:this.flags&=-257}get inFSharpPipelineDirectBody(){return(512&this.flags)>0}set inFSharpPipelineDirectBody(e){e?this.flags|=512:this.flags&=-513}get canStartJSXElement(){return(1024&this.flags)>0}set canStartJSXElement(e){e?this.flags|=1024:this.flags&=-1025}get containsEsc(){return(2048&this.flags)>0}set containsEsc(e){e?this.flags|=2048:this.flags&=-2049}curPosition(){return new r(this.curLine,this.pos-this.lineStart,this.pos)}clone(){let t=new e;return t.flags=this.flags,t.curLine=this.curLine,t.lineStart=this.lineStart,t.startLoc=this.startLoc,t.endLoc=this.endLoc,t.errors=this.errors.slice(),t.potentialArrowAt=this.potentialArrowAt,t.noArrowAt=this.noArrowAt.slice(),t.noArrowParamsConversionAt=this.noArrowParamsConversionAt.slice(),t.topicContext=this.topicContext,t.labels=this.labels.slice(),t.commentsLen=this.commentsLen,t.commentStack=this.commentStack.slice(),t.pos=this.pos,t.type=this.type,t.value=this.value,t.start=this.start,t.end=this.end,t.lastTokEndLoc=this.lastTokEndLoc,t.lastTokStartLoc=this.lastTokStartLoc,t.context=this.context.slice(),t.firstInvalidTemplateEscapePos=this.firstInvalidTemplateEscapePos,t.strictErrors=this.strictErrors,t.tokensLength=this.tokensLength,t}},this.state.init(e),this.input=t,this.length=t.length,this.comments=[],this.isLookahead=!1}pushToken(e){this.tokens.length=this.state.tokensLength,this.tokens.push(e),++this.state.tokensLength}next(){this.checkKeywordEscapes(),this.options.tokens&&this.pushToken(new Ve(this.state)),this.state.lastTokEndLoc=this.state.endLoc,this.state.lastTokStartLoc=this.state.startLoc,this.nextToken()}eat(e){return!!this.match(e)&&(this.next(),!0)}match(e){return this.state.type===e}createLookaheadState(e){return{pos:e.pos,value:null,type:e.type,start:e.start,end:e.end,context:[this.curContext()],inType:e.inType,startLoc:e.startLoc,lastTokEndLoc:e.lastTokEndLoc,curLine:e.curLine,lineStart:e.lineStart,curPosition:e.curPosition}}lookahead(){let e=this.state;this.state=this.createLookaheadState(e),this.isLookahead=!0,this.nextToken(),this.isLookahead=!1;let t=this.state;return this.state=e,t}nextTokenStart(){return this.nextTokenStartSince(this.state.pos)}nextTokenStartSince(e){return ve.lastIndex=e,ve.test(this.input)?ve.lastIndex:e}lookaheadCharCode(){return this.input.charCodeAt(this.nextTokenStart())}nextTokenInLineStart(){return this.nextTokenInLineStartSince(this.state.pos)}nextTokenInLineStartSince(e){return ke.lastIndex=e,ke.test(this.input)?ke.lastIndex:e}lookaheadInLineCharCode(){return this.input.charCodeAt(this.nextTokenInLineStart())}codePointAtPos(e){let t=this.input.charCodeAt(e);if(55296==(64512&t)&&++e<this.input.length){let r=this.input.charCodeAt(e);56320==(64512&r)&&(t=65536+((1023&t)<<10)+(1023&r))}return t}setStrict(e){this.state.strict=e,e&&(this.state.strictErrors.forEach((([e,t])=>this.raise(e,t))),this.state.strictErrors.clear())}curContext(){return this.state.context[this.state.context.length-1]}nextToken(){this.skipSpace(),this.state.start=this.state.pos,this.isLookahead||(this.state.startLoc=this.state.curPosition()),this.state.pos>=this.length?this.finishToken(139):this.getTokenFromCode(this.codePointAtPos(this.state.pos))}skipBlockComment(e){let t;this.isLookahead||(t=this.state.curPosition());let r=this.state.pos,i=this.input.indexOf(e,r+2);if(-1===i)throw this.raise(D.UnterminatedComment,this.state.curPosition());for(this.state.pos=i+e.length,Pe.lastIndex=r+2;Pe.test(this.input)&&Pe.lastIndex<=i;)++this.state.curLine,this.state.lineStart=Pe.lastIndex;if(this.isLookahead)return;let n={type:"CommentBlock",value:this.input.slice(r+2,i),start:r,end:i+e.length,loc:new s(t,this.state.curPosition())};return this.options.tokens&&this.pushToken(n),n}skipLineComment(e){let t,r=this.state.pos;this.isLookahead||(t=this.state.curPosition());let i=this.input.charCodeAt(this.state.pos+=e);if(this.state.pos<this.length)for(;!we(i)&&++this.state.pos<this.length;)i=this.input.charCodeAt(this.state.pos);if(this.isLookahead)return;let n=this.state.pos,a={type:"CommentLine",value:this.input.slice(r+e,n),start:r,end:n,loc:new s(t,this.state.curPosition())};return this.options.tokens&&this.pushToken(a),a}skipSpace(){let e=this.state.pos,t=[];e:for(;this.state.pos<this.length;){let r=this.input.charCodeAt(this.state.pos);switch(r){case 32:case 160:case 9:++this.state.pos;break;case 13:10===this.input.charCodeAt(this.state.pos+1)&&++this.state.pos;case 10:case 8232:case 8233:++this.state.pos,++this.state.curLine,this.state.lineStart=this.state.pos;break;case 47:switch(this.input.charCodeAt(this.state.pos+1)){case 42:{let e=this.skipBlockComment("*/");void 0!==e&&(this.addComment(e),this.options.attachComment&&t.push(e));break}case 47:{let e=this.skipLineComment(2);void 0!==e&&(this.addComment(e),this.options.attachComment&&t.push(e));break}default:break e}break;default:if(Ne(r))++this.state.pos;else if(45===r&&!this.inModule&&this.options.annexB){let r=this.state.pos;if(45!==this.input.charCodeAt(r+1)||62!==this.input.charCodeAt(r+2)||!(0===e||this.state.lineStart>e))break e;{let e=this.skipLineComment(3);void 0!==e&&(this.addComment(e),this.options.attachComment&&t.push(e))}}else{if(60!==r||this.inModule||!this.options.annexB)break e;{let e=this.state.pos;if(33!==this.input.charCodeAt(e+1)||45!==this.input.charCodeAt(e+2)||45!==this.input.charCodeAt(e+3))break e;{let e=this.skipLineComment(4);void 0!==e&&(this.addComment(e),this.options.attachComment&&t.push(e))}}}}}if(t.length>0){let r={start:e,end:this.state.pos,comments:t,leadingNode:null,trailingNode:null,containingNode:null};this.state.commentStack.push(r)}}finishToken(e,t){this.state.end=this.state.pos,this.state.endLoc=this.state.curPosition();let r=this.state.type;this.state.type=e,this.state.value=t,this.isLookahead||this.updateContext(r)}replaceToken(e){this.state.type=e,this.updateContext()}readToken_numberSign(){if(0===this.state.pos&&this.readToken_interpreter())return;let e=this.state.pos+1,t=this.codePointAtPos(e);if(t>=48&&t<=57)throw this.raise(D.UnexpectedDigitAfterHash,this.state.curPosition());if(123===t||91===t&&this.hasPlugin("recordAndTuple")){if(this.expectPlugin("recordAndTuple"),"bar"===this.getPluginOption("recordAndTuple","syntaxType"))throw this.raise(123===t?D.RecordExpressionHashIncorrectStartSyntaxType:D.TupleExpressionHashIncorrectStartSyntaxType,this.state.curPosition());this.state.pos+=2,123===t?this.finishToken(7):this.finishToken(1)}else ne(t)?(++this.state.pos,this.finishToken(138,this.readWord1(t))):92===t?(++this.state.pos,this.finishToken(138,this.readWord1())):this.finishOp(27,1)}readToken_dot(){let e=this.input.charCodeAt(this.state.pos+1);e>=48&&e<=57?this.readNumber(!0):46===e&&46===this.input.charCodeAt(this.state.pos+2)?(this.state.pos+=3,this.finishToken(21)):(++this.state.pos,this.finishToken(16))}readToken_slash(){61===this.input.charCodeAt(this.state.pos+1)?this.finishOp(31,2):this.finishOp(56,1)}readToken_interpreter(){if(0!==this.state.pos||this.length<2)return!1;let e=this.input.charCodeAt(this.state.pos+1);if(33!==e)return!1;let t=this.state.pos;for(this.state.pos+=1;!we(e)&&++this.state.pos<this.length;)e=this.input.charCodeAt(this.state.pos);let r=this.input.slice(t+2,this.state.pos);return this.finishToken(28,r),!0}readToken_mult_modulo(e){let t=42===e?55:54,r=1,s=this.input.charCodeAt(this.state.pos+1);42===e&&42===s&&(r++,s=this.input.charCodeAt(this.state.pos+2),t=57),61===s&&!this.state.inType&&(r++,t=37===e?33:30),this.finishOp(t,r)}readToken_pipe_amp(e){let t=this.input.charCodeAt(this.state.pos+1);if(t!==e){if(124===e){if(62===t)return void this.finishOp(39,2);if(this.hasPlugin("recordAndTuple")&&125===t){if("bar"!==this.getPluginOption("recordAndTuple","syntaxType"))throw this.raise(D.RecordExpressionBarIncorrectEndSyntaxType,this.state.curPosition());return this.state.pos+=2,void this.finishToken(9)}if(this.hasPlugin("recordAndTuple")&&93===t){if("bar"!==this.getPluginOption("recordAndTuple","syntaxType"))throw this.raise(D.TupleExpressionBarIncorrectEndSyntaxType,this.state.curPosition());return this.state.pos+=2,void this.finishToken(4)}}61!==t?this.finishOp(124===e?43:45,1):this.finishOp(30,2)}else 61===this.input.charCodeAt(this.state.pos+2)?this.finishOp(30,3):this.finishOp(124===e?41:42,2)}readToken_caret(){let e=this.input.charCodeAt(this.state.pos+1);61!==e||this.state.inType?94===e&&this.hasPlugin(["pipelineOperator",{proposal:"hack",topicToken:"^^"}])?(this.finishOp(37,2),94===this.input.codePointAt(this.state.pos)&&this.unexpected()):this.finishOp(44,1):this.finishOp(32,2)}readToken_atSign(){64===this.input.charCodeAt(this.state.pos+1)&&this.hasPlugin(["pipelineOperator",{proposal:"hack",topicToken:"@@"}])?this.finishOp(38,2):this.finishOp(26,1)}readToken_plus_min(e){let t=this.input.charCodeAt(this.state.pos+1);t!==e?61===t?this.finishOp(30,2):this.finishOp(53,1):this.finishOp(34,2)}readToken_lt(){let{pos:e}=this.state,t=this.input.charCodeAt(e+1);if(60===t)return 61===this.input.charCodeAt(e+2)?void this.finishOp(30,3):void this.finishOp(51,2);61!==t?this.finishOp(47,1):this.finishOp(49,2)}readToken_gt(){let{pos:e}=this.state,t=this.input.charCodeAt(e+1);if(62===t){let t=62===this.input.charCodeAt(e+2)?3:2;return 61===this.input.charCodeAt(e+t)?void this.finishOp(30,t+1):void this.finishOp(52,t)}61!==t?this.finishOp(48,1):this.finishOp(49,2)}readToken_eq_excl(e){let t=this.input.charCodeAt(this.state.pos+1);if(61!==t)return 61===e&&62===t?(this.state.pos+=2,void this.finishToken(19)):void this.finishOp(61===e?29:35,1);this.finishOp(46,61===this.input.charCodeAt(this.state.pos+2)?3:2)}readToken_question(){let e=this.input.charCodeAt(this.state.pos+1),t=this.input.charCodeAt(this.state.pos+2);63===e?61===t?this.finishOp(30,3):this.finishOp(40,2):46!==e||t>=48&&t<=57?(++this.state.pos,this.finishToken(17)):(this.state.pos+=2,this.finishToken(18))}getTokenFromCode(e){switch(e){case 46:return void this.readToken_dot();case 40:return++this.state.pos,void this.finishToken(10);case 41:return++this.state.pos,void this.finishToken(11);case 59:return++this.state.pos,void this.finishToken(13);case 44:return++this.state.pos,void this.finishToken(12);case 91:if(this.hasPlugin("recordAndTuple")&&124===this.input.charCodeAt(this.state.pos+1)){if("bar"!==this.getPluginOption("recordAndTuple","syntaxType"))throw this.raise(D.TupleExpressionBarIncorrectStartSyntaxType,this.state.curPosition());this.state.pos+=2,this.finishToken(2)}else++this.state.pos,this.finishToken(0);return;case 93:return++this.state.pos,void this.finishToken(3);case 123:if(this.hasPlugin("recordAndTuple")&&124===this.input.charCodeAt(this.state.pos+1)){if("bar"!==this.getPluginOption("recordAndTuple","syntaxType"))throw this.raise(D.RecordExpressionBarIncorrectStartSyntaxType,this.state.curPosition());this.state.pos+=2,this.finishToken(6)}else++this.state.pos,this.finishToken(5);return;case 125:return++this.state.pos,void this.finishToken(8);case 58:return void(this.hasPlugin("functionBind")&&58===this.input.charCodeAt(this.state.pos+1)?this.finishOp(15,2):(++this.state.pos,this.finishToken(14)));case 63:return void this.readToken_question();case 96:return void this.readTemplateToken();case 48:{let e=this.input.charCodeAt(this.state.pos+1);if(120===e||88===e)return void this.readRadixNumber(16);if(111===e||79===e)return void this.readRadixNumber(8);if(98===e||66===e)return void this.readRadixNumber(2)}case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return void this.readNumber(!1);case 34:case 39:return void this.readString(e);case 47:return void this.readToken_slash();case 37:case 42:return void this.readToken_mult_modulo(e);case 124:case 38:return void this.readToken_pipe_amp(e);case 94:return void this.readToken_caret();case 43:case 45:return void this.readToken_plus_min(e);case 60:return void this.readToken_lt();case 62:return void this.readToken_gt();case 61:case 33:return void this.readToken_eq_excl(e);case 126:return void this.finishOp(36,1);case 64:return void this.readToken_atSign();case 35:return void this.readToken_numberSign();case 92:return void this.readWord();default:if(ne(e))return void this.readWord(e)}throw this.raise(D.InvalidOrUnexpectedToken,this.state.curPosition(),{unexpected:String.fromCodePoint(e)})}finishOp(e,t){let r=this.input.slice(this.state.pos,this.state.pos+t);this.state.pos+=t,this.finishToken(e,r)}readRegexp(){let e,t,r=this.state.startLoc,s=this.state.start+1,{pos:n}=this.state;for(;;++n){if(n>=this.length)throw this.raise(D.UnterminatedRegExp,i(r,1));let s=this.input.charCodeAt(n);if(we(s))throw this.raise(D.UnterminatedRegExp,i(r,1));if(e)e=!1;else{if(91===s)t=!0;else if(93===s&&t)t=!1;else if(47===s&&!t)break;e=92===s}}let a=this.input.slice(s,n);++n;let o="",u=()=>i(r,n+2-s);for(;n<this.length;){let e=this.codePointAtPos(n),t=String.fromCharCode(e);if(Je.has(e))118===e?o.includes("u")&&this.raise(D.IncompatibleRegExpUVFlags,u()):117===e&&o.includes("v")&&this.raise(D.IncompatibleRegExpUVFlags,u()),o.includes(t)&&this.raise(D.DuplicateRegExpFlags,u());else{if(!ae(e)&&92!==e)break;this.raise(D.MalformedRegExpFlags,u())}++n,o+=t}this.state.pos=n,this.finishToken(137,{pattern:a,flags:o})}readInt(e,t,r=!1,s=!0){let{n:i,pos:n}=Ue(this.input,this.state.pos,this.state.lineStart,this.state.curLine,e,t,r,s,this.errorHandlers_readInt,!1);return this.state.pos=n,i}readRadixNumber(e){let t=this.state.curPosition(),r=!1;this.state.pos+=2;let s=this.readInt(e);s??this.raise(D.InvalidDigit,i(t,2),{radix:e});let n=this.input.charCodeAt(this.state.pos);if(110===n)++this.state.pos,r=!0;else if(109===n)throw this.raise(D.InvalidDecimal,t);if(ne(this.codePointAtPos(this.state.pos)))throw this.raise(D.NumberIdentifier,this.state.curPosition());if(r){let e=this.input.slice(t.index,this.state.pos).replace(/[_n]/g,"");this.finishToken(135,e)}else this.finishToken(134,s)}readNumber(e){let t=this.state.pos,r=this.state.curPosition(),s=!1,n=!1,a=!1,o=!1,u=!1;!e&&null===this.readInt(10)&&this.raise(D.InvalidNumber,this.state.curPosition());let p=this.state.pos-t>=2&&48===this.input.charCodeAt(t);if(p){let e=this.input.slice(t,this.state.pos);if(this.recordStrictModeErrors(D.StrictOctalLiteral,r),!this.state.strict){let t=e.indexOf("_");t>0&&this.raise(D.ZeroDigitNumericSeparator,i(r,t))}u=p&&!/[89]/.test(e)}let l=this.input.charCodeAt(this.state.pos);if(46===l&&!u&&(++this.state.pos,this.readInt(10),s=!0,l=this.input.charCodeAt(this.state.pos)),(69===l||101===l)&&!u&&(l=this.input.charCodeAt(++this.state.pos),(43===l||45===l)&&++this.state.pos,null===this.readInt(10)&&this.raise(D.InvalidOrMissingExponent,r),s=!0,o=!0,l=this.input.charCodeAt(this.state.pos)),110===l&&((s||p)&&this.raise(D.InvalidBigIntLiteral,r),++this.state.pos,n=!0),109===l&&(this.expectPlugin("decimal",this.state.curPosition()),(o||p)&&this.raise(D.InvalidDecimal,r),++this.state.pos,a=!0),ne(this.codePointAtPos(this.state.pos)))throw this.raise(D.NumberIdentifier,this.state.curPosition());let c=this.input.slice(t,this.state.pos).replace(/[_mn]/g,"");if(n)return void this.finishToken(135,c);if(a)return void this.finishToken(136,c);let h=u?parseInt(c,8):parseFloat(c);this.finishToken(134,h)}readCodePoint(e){let{code:t,pos:r}=$e(this.input,this.state.pos,this.state.lineStart,this.state.curLine,e,this.errorHandlers_readCodePoint);return this.state.pos=r,t}readString(e){let{str:t,pos:r,curLine:s,lineStart:i}=Oe(34===e?"double":"single",this.input,this.state.pos+1,this.state.lineStart,this.state.curLine,this.errorHandlers_readStringContents_string);this.state.pos=r+1,this.state.lineStart=i,this.state.curLine=s,this.finishToken(133,t)}readTemplateContinuation(){this.match(8)||this.unexpected(null,8),this.state.pos--,this.readTemplateToken()}readTemplateToken(){let e=this.input[this.state.pos],{str:t,firstInvalidLoc:s,pos:i,curLine:n,lineStart:a}=Oe("template",this.input,this.state.pos+1,this.state.lineStart,this.state.curLine,this.errorHandlers_readStringContents_template);this.state.pos=i+1,this.state.lineStart=a,this.state.curLine=n,s&&(this.state.firstInvalidTemplateEscapePos=new r(s.curLine,s.pos-s.lineStart,s.pos)),96===this.input.codePointAt(i)?this.finishToken(24,s?null:e+t+"`"):(this.state.pos++,this.finishToken(25,s?null:e+t+"${"))}recordStrictModeErrors(e,t){let r=t.index;this.state.strict&&!this.state.strictErrors.has(r)?this.raise(e,t):this.state.strictErrors.set(r,[e,t])}readWord1(e){this.state.containsEsc=!1;let t="",r=this.state.pos,s=this.state.pos;for(void 0!==e&&(this.state.pos+=e<=65535?1:2);this.state.pos<this.length;){let e=this.codePointAtPos(this.state.pos);if(ae(e))this.state.pos+=e<=65535?1:2;else{if(92!==e)break;{this.state.containsEsc=!0,t+=this.input.slice(s,this.state.pos);let e=this.state.curPosition(),i=this.state.pos===r?ne:ae;if(117!==this.input.charCodeAt(++this.state.pos)){this.raise(D.MissingUnicodeEscape,this.state.curPosition()),s=this.state.pos-1;continue}++this.state.pos;let n=this.readCodePoint(!0);null!==n&&(i(n)||this.raise(D.EscapedCharNotAnIdentifier,e),t+=String.fromCodePoint(n)),s=this.state.pos}}}return t+this.input.slice(s,this.state.pos)}readWord(e){let t=this.readWord1(e),r=v.get(t);void 0!==r?this.finishToken(r,K(r)):this.finishToken(132,t)}checkKeywordEscapes(){let{type:e}=this.state;W(e)&&this.state.containsEsc&&this.raise(D.InvalidEscapedReservedWord,this.state.startLoc,{reservedWord:K(e)})}raise(e,t,s={}){let i=e(t instanceof r?t:t.loc.start,s);if(!this.options.errorRecovery)throw i;return this.isLookahead||this.state.errors.push(i),i}raiseOverwrite(e,t,s={}){let i=t instanceof r?t:t.loc.start,n=i.index,a=this.state.errors;for(let r=a.length-1;r>=0;r--){let t=a[r];if(t.loc.index===n)return a[r]=e(i,s);if(t.loc.index<n)break}return this.raise(e,t,s)}updateContext(e){}unexpected(e,t){throw this.raise(D.UnexpectedToken,e??this.state.startLoc,{expected:t?K(t):null})}expectPlugin(e,t){if(this.hasPlugin(e))return!0;throw this.raise(D.MissingPlugin,t??this.state.startLoc,{missingPlugin:[e]})}expectOnePlugin(e){if(!e.some((e=>this.hasPlugin(e))))throw this.raise(D.MissingOneOfPlugins,this.state.startLoc,{missingPlugin:e})}errorBuilder(e){return(t,r,s)=>{this.raise(e,qe(t,r,s))}}},He=class{constructor(e=0){this.type=e}canBeArrowParameterDeclaration(){return 2===this.type||1===this.type}isCertainlyParameterDeclaration(){return 3===this.type}},We=class extends He{constructor(e){super(e),this.declarationErrors=new Map}recordDeclarationError(e,t){let r=t.index;this.declarationErrors.set(r,[e,t])}clearDeclarationError(e){this.declarationErrors.delete(e)}iterateErrors(e){this.declarationErrors.forEach(e)}};function Ke(){return new He}function Xe(e,t){return(e?2:0)|(t?1:0)}var Ge=class extends ze{addExtra(e,t,r,s=!0){if(!e)return;let i=e.extra=e.extra||{};s?i[t]=r:Object.defineProperty(i,t,{enumerable:s,value:r})}isContextual(e){return this.state.type===e&&!this.state.containsEsc}isUnparsedContextual(e,t){let r=e+t.length;if(this.input.slice(e,r)===t){let e=this.input.charCodeAt(r);return!(ae(e)||55296==(64512&e))}return!1}isLookaheadContextual(e){let t=this.nextTokenStart();return this.isUnparsedContextual(t,e)}eatContextual(e){return!!this.isContextual(e)&&(this.next(),!0)}expectContextual(e,t){if(!this.eatContextual(e)){if(null!=t)throw this.raise(t,this.state.startLoc);this.unexpected(null,e)}}canInsertSemicolon(){return this.match(139)||this.match(8)||this.hasPrecedingLineBreak()}hasPrecedingLineBreak(){return Se.test(this.input.slice(this.state.lastTokEndLoc.index,this.state.start))}hasFollowingLineBreak(){return Ie.lastIndex=this.state.end,Ie.test(this.input)}isLineTerminator(){return this.eat(13)||this.canInsertSemicolon()}semicolon(e=!0){(e?this.isLineTerminator():this.eat(13))||this.raise(D.MissingSemicolon,this.state.lastTokEndLoc)}expect(e,t){this.eat(e)||this.unexpected(t,e)}tryParse(e,t=this.state.clone()){let r={node:null};try{let s=e(((e=null)=>{throw r.node=e,r}));if(this.state.errors.length>t.errors.length){let e=this.state;return this.state=t,this.state.tokensLength=e.tokensLength,{node:s,error:e.errors[t.errors.length],thrown:!1,aborted:!1,failState:e}}return{node:s,error:null,thrown:!1,aborted:!1,failState:null}}catch(s){let e=this.state;if(this.state=t,s instanceof SyntaxError)return{node:null,error:s,thrown:!0,aborted:!1,failState:e};if(s===r)return{node:r.node,error:null,thrown:!1,aborted:!0,failState:e};throw s}}checkExpressionErrors(e,t){if(!e)return!1;let{shorthandAssignLoc:r,doubleProtoLoc:s,privateKeyLoc:i,optionalParametersLoc:n}=e;if(!t)return!!(r||s||n||i);null!=r&&this.raise(D.InvalidCoverInitializedName,r),null!=s&&this.raise(D.DuplicateProto,s),null!=i&&this.raise(D.UnexpectedPrivateField,i),null!=n&&this.unexpected(n)}isLiteralPropertyName(){return V(this.state.type)}isPrivateName(e){return"PrivateName"===e.type}getPrivateNameSV(e){return e.id.name}hasPropertyAsPrivateName(e){return("MemberExpression"===e.type||"OptionalMemberExpression"===e.type)&&this.isPrivateName(e.property)}isObjectProperty(e){return"ObjectProperty"===e.type}isObjectMethod(e){return"ObjectMethod"===e.type}initializeScopes(e="module"===this.options.sourceType){let t=this.state.labels;this.state.labels=[];let r=this.exportedIdentifiers;this.exportedIdentifiers=new Set;let s=this.inModule;this.inModule=e;let i=this.scope;this.scope=new(this.getScopeHandler())(this,e);let n=this.prodParam;this.prodParam=new class{constructor(){this.stacks=[]}enter(e){this.stacks.push(e)}exit(){this.stacks.pop()}currentFlags(){return this.stacks[this.stacks.length-1]}get hasAwait(){return(2&this.currentFlags())>0}get hasYield(){return(1&this.currentFlags())>0}get hasReturn(){return(4&this.currentFlags())>0}get hasIn(){return(8&this.currentFlags())>0}};let a=this.classScope;this.classScope=new class{constructor(e){this.parser=void 0,this.stack=[],this.undefinedPrivateNames=new Map,this.parser=e}current(){return this.stack[this.stack.length-1]}enter(){this.stack.push(new class{constructor(){this.privateNames=new Set,this.loneAccessors=new Map,this.undefinedPrivateNames=new Map}})}exit(){let e=this.stack.pop(),t=this.current();for(let[r,s]of Array.from(e.undefinedPrivateNames))t?t.undefinedPrivateNames.has(r)||t.undefinedPrivateNames.set(r,s):this.parser.raise(D.InvalidPrivateFieldResolution,s,{identifierName:r})}declarePrivateName(e,t,r){let{privateNames:s,loneAccessors:i,undefinedPrivateNames:n}=this.current(),a=s.has(e);if(3&t){let r=a&&i.get(e);r?(a=(3&r)==(3&t)||(4&r)!=(4&t),a||i.delete(e)):a||i.set(e,t)}a&&this.parser.raise(D.PrivateNameRedeclaration,r,{identifierName:e}),s.add(e),n.delete(e)}usePrivateName(e,t){let r;for(r of this.stack)if(r.privateNames.has(e))return;r?r.undefinedPrivateNames.set(e,t):this.parser.raise(D.InvalidPrivateFieldResolution,t,{identifierName:e})}}(this);let o=this.expressionScope;return this.expressionScope=new class{constructor(e){this.parser=void 0,this.stack=[new He],this.parser=e}enter(e){this.stack.push(e)}exit(){this.stack.pop()}recordParameterInitializerError(e,t){let r=t.loc.start,{stack:s}=this,i=s.length-1,n=s[i];for(;!n.isCertainlyParameterDeclaration();){if(!n.canBeArrowParameterDeclaration())return;n.recordDeclarationError(e,r),n=s[--i]}this.parser.raise(e,r)}recordArrowParameterBindingError(e,t){let{stack:r}=this,s=r[r.length-1],i=t.loc.start;if(s.isCertainlyParameterDeclaration())this.parser.raise(e,i);else{if(!s.canBeArrowParameterDeclaration())return;s.recordDeclarationError(e,i)}}recordAsyncArrowParametersError(e){let{stack:t}=this,r=t.length-1,s=t[r];for(;s.canBeArrowParameterDeclaration();)2===s.type&&s.recordDeclarationError(D.AwaitBindingIdentifier,e),s=t[--r]}validateAsPattern(){let{stack:e}=this,t=e[e.length-1];t.canBeArrowParameterDeclaration()&&t.iterateErrors((([t,r])=>{this.parser.raise(t,r);let s=e.length-2,i=e[s];for(;i.canBeArrowParameterDeclaration();)i.clearDeclarationError(r.index),i=e[--s]}))}}(this),()=>{this.state.labels=t,this.exportedIdentifiers=r,this.inModule=s,this.scope=i,this.prodParam=n,this.classScope=a,this.expressionScope=o}}enterInitialScopes(){let e=0;this.inModule&&(e|=2),this.scope.enter(1),this.prodParam.enter(e)}checkDestructuringPrivate(e){let{privateKeyLoc:t}=e;null!==t&&this.expectPlugin("destructuringPrivate",t)}},Ye=class{constructor(){this.shorthandAssignLoc=null,this.doubleProtoLoc=null,this.privateKeyLoc=null,this.optionalParametersLoc=null}},Qe=class{constructor(e,t,r){this.type="",this.start=t,this.end=0,this.loc=new s(r),null!=e&&e.options.ranges&&(this.range=[t,0]),null!=e&&e.filename&&(this.loc.filename=e.filename)}},Ze=Qe.prototype;function et(e){let{type:t,start:r,end:s,loc:i,range:n,extra:a,name:o}=e,u=Object.create(Ze);return u.type=t,u.start=r,u.end=s,u.loc=i,u.range=n,u.extra=a,u.name=o,"Placeholder"===t&&(u.expectedNode=e.expectedNode),u}function tt(e){let{type:t,start:r,end:s,loc:i,range:n,extra:a}=e;if("Placeholder"===t)return function(e){return et(e)}(e);let o=Object.create(Ze);return o.type=t,o.start=r,o.end=s,o.loc=i,o.range=n,void 0!==e.raw?o.raw=e.raw:o.extra=a,o.value=e.value,o}Ze.__clone=function(){let e=new Qe(void 0,this.start,this.loc.start),t=Object.keys(this);for(let r=0,s=t.length;r<s;r++){let s=t[r];"leadingComments"!==s&&"trailingComments"!==s&&"innerComments"!==s&&(e[s]=this[s])}return e};var rt=class extends Ge{startNode(){let e=this.state.startLoc;return new Qe(this,e.index,e)}startNodeAt(e){return new Qe(this,e.index,e)}startNodeAtNode(e){return this.startNodeAt(e.loc.start)}finishNode(e,t){return this.finishNodeAt(e,t,this.state.lastTokEndLoc)}finishNodeAt(e,t,r){return e.type=t,e.end=r.index,e.loc.end=r,this.options.ranges&&(e.range[1]=r.index),this.options.attachComment&&this.processComment(e),e}resetStartLocation(e,t){e.start=t.index,e.loc.start=t,this.options.ranges&&(e.range[0]=t.index)}resetEndLocation(e,t=this.state.lastTokEndLoc){e.end=t.index,e.loc.end=t,this.options.ranges&&(e.range[1]=t.index)}resetStartLocationFromNode(e,t){this.resetStartLocation(e,t.loc.start)}},st=new Set(["_","any","bool","boolean","empty","extends","false","interface","mixed","null","number","static","string","true","typeof","void"]),it=f`flow`({AmbiguousConditionalArrow:"Ambiguous expression: wrap the arrow functions in parentheses to disambiguate.",AmbiguousDeclareModuleKind:"Found both `declare module.exports` and `declare export` in the same module. Modules can only have 1 since they are either an ES module or they are a CommonJS module.",AssignReservedType:({reservedType:e})=>`Cannot overwrite reserved type ${e}.`,DeclareClassElement:"The `declare` modifier can only appear on class fields.",DeclareClassFieldInitializer:"Initializers are not allowed in fields with the `declare` modifier.",DuplicateDeclareModuleExports:"Duplicate `declare module.exports` statement.",EnumBooleanMemberNotInitialized:({memberName:e,enumName:t})=>`Boolean enum members need to be initialized. Use either \`${e} = true,\` or \`${e} = false,\` in enum \`${t}\`.`,EnumDuplicateMemberName:({memberName:e,enumName:t})=>`Enum member names need to be unique, but the name \`${e}\` has already been used before in enum \`${t}\`.`,EnumInconsistentMemberValues:({enumName:e})=>`Enum \`${e}\` has inconsistent member initializers. Either use no initializers, or consistently use literals (either booleans, numbers, or strings) for all member initializers.`,EnumInvalidExplicitType:({invalidEnumType:e,enumName:t})=>`Enum type \`${e}\` is not valid. Use one of \`boolean\`, \`number\`, \`string\`, or \`symbol\` in enum \`${t}\`.`,EnumInvalidExplicitTypeUnknownSupplied:({enumName:e})=>`Supplied enum type is not valid. Use one of \`boolean\`, \`number\`, \`string\`, or \`symbol\` in enum \`${e}\`.`,EnumInvalidMemberInitializerPrimaryType:({enumName:e,memberName:t,explicitType:r})=>`Enum \`${e}\` has type \`${r}\`, so the initializer of \`${t}\` needs to be a ${r} literal.`,EnumInvalidMemberInitializerSymbolType:({enumName:e,memberName:t})=>`Symbol enum members cannot be initialized. Use \`${t},\` in enum \`${e}\`.`,EnumInvalidMemberInitializerUnknownType:({enumName:e,memberName:t})=>`The enum member initializer for \`${t}\` needs to be a literal (either a boolean, number, or string) in enum \`${e}\`.`,EnumInvalidMemberName:({enumName:e,memberName:t,suggestion:r})=>`Enum member names cannot start with lowercase 'a' through 'z'. Instead of using \`${t}\`, consider using \`${r}\`, in enum \`${e}\`.`,EnumNumberMemberNotInitialized:({enumName:e,memberName:t})=>`Number enum members need to be initialized, e.g. \`${t} = 1\` in enum \`${e}\`.`,EnumStringMemberInconsistentlyInitialized:({enumName:e})=>`String enum members need to consistently either all use initializers, or use no initializers, in enum \`${e}\`.`,GetterMayNotHaveThisParam:"A getter cannot have a `this` parameter.",ImportReflectionHasImportType:"An `import module` declaration can not use `type` or `typeof` keyword.",ImportTypeShorthandOnlyInPureImport:"The `type` and `typeof` keywords on named imports can only be used on regular `import` statements. It cannot be used with `import type` or `import typeof` statements.",InexactInsideExact:"Explicit inexact syntax cannot appear inside an explicit exact object type.",InexactInsideNonObject:"Explicit inexact syntax cannot appear in class or interface definitions.",InexactVariance:"Explicit inexact syntax cannot have variance.",InvalidNonTypeImportInDeclareModule:"Imports within a `declare module` body must always be `import type` or `import typeof`.",MissingTypeParamDefault:"Type parameter declaration needs a default, since a preceding type parameter declaration has a default.",NestedDeclareModule:"`declare module` cannot be used inside another `declare module`.",NestedFlowComment:"Cannot have a flow comment inside another flow comment.",PatternIsOptional:Object.assign({message:"A binding pattern parameter cannot be optional in an implementation signature."},{reasonCode:"OptionalBindingPattern"}),SetterMayNotHaveThisParam:"A setter cannot have a `this` parameter.",SpreadVariance:"Spread properties cannot have variance.",ThisParamAnnotationRequired:"A type annotation is required for the `this` parameter.",ThisParamBannedInConstructor:"Constructors cannot have a `this` parameter; constructors don't bind `this` like other functions.",ThisParamMayNotBeOptional:"The `this` parameter cannot be optional.",ThisParamMustBeFirst:"The `this` parameter must be the first function parameter.",ThisParamNoDefault:"The `this` parameter may not have a default value.",TypeBeforeInitializer:"Type annotations must come before default assignments, e.g. instead of `age = 25: number` use `age: number = 25`.",TypeCastInPattern:"The type cast expression is expected to be wrapped with parenthesis.",UnexpectedExplicitInexactInObject:"Explicit inexact syntax must appear at the end of an inexact object.",UnexpectedReservedType:({reservedType:e})=>`Unexpected reserved type ${e}.`,UnexpectedReservedUnderscore:"`_` is only allowed as a type argument to call or new.",UnexpectedSpaceBetweenModuloChecks:"Spaces between `%` and `checks` are not allowed here.",UnexpectedSpreadType:"Spread operator cannot appear in class or interface definitions.",UnexpectedSubtractionOperand:'Unexpected token, expected "number" or "bigint".',UnexpectedTokenAfterTypeParameter:"Expected an arrow function after this type parameter declaration.",UnexpectedTypeParameterBeforeAsyncArrowFunction:"Type parameters must come after the async keyword, e.g. instead of `<T> async () => {}`, use `async <T>() => {}`.",UnsupportedDeclareExportKind:({unsupportedExportKind:e,suggestion:t})=>`\`declare export ${e}\` is not supported. Use \`${t}\` instead.`,UnsupportedStatementInDeclareModule:"Only declares and type imports are allowed inside declare module.",UnterminatedFlowComment:"Unterminated flow-comment."});function nt(e){return"type"===e.importKind||"typeof"===e.importKind}var at={const:"declare export var",let:"declare export var",type:"export type",interface:"export interface"},ot=/\*?\s*@((?:no)?flow)\b/,ut=f`jsx`({AttributeIsEmpty:"JSX attributes must only be assigned a non-empty expression.",MissingClosingTagElement:({openingTagName:e})=>`Expected corresponding JSX closing tag for <${e}>.`,MissingClosingTagFragment:"Expected corresponding JSX closing tag for <>.",UnexpectedSequenceExpression:"Sequence expressions cannot be directly nested inside JSX. Did you mean to wrap it in parentheses (...)?",UnexpectedToken:({unexpected:e,HTMLEntity:t})=>`Unexpected token \`${e}\`. Did you mean \`${t}\` or \`{'${e}'}\`?`,UnsupportedJsxValue:"JSX value should be either an expression or a quoted JSX text.",UnterminatedJsxContent:"Unterminated JSX contents.",UnwrappedAdjacentJSXElements:"Adjacent JSX elements must be wrapped in an enclosing tag. Did you want a JSX fragment <>...</>?"});function pt(e){return!!e&&("JSXOpeningFragment"===e.type||"JSXClosingFragment"===e.type)}function lt(e){if("JSXIdentifier"===e.type)return e.name;if("JSXNamespacedName"===e.type)return e.namespace.name+":"+e.name.name;if("JSXMemberExpression"===e.type)return lt(e.object)+"."+lt(e.property);throw new Error("Node had unexpected type: "+e.type)}var ct=class extends De{constructor(...e){super(...e),this.tsNames=new Map}},ht=class extends xe{constructor(...e){super(...e),this.importsStack=[]}createScope(e){return this.importsStack.push(new Set),new ct(e)}enter(e){256===e&&this.importsStack.push(new Set),super.enter(e)}exit(){let e=super.exit();return 256===e&&this.importsStack.pop(),e}hasImport(e,t){let r=this.importsStack.length;if(this.importsStack[r-1].has(e))return!0;if(!t&&r>1)for(let s=0;s<r-1;s++)if(this.importsStack[s].has(e))return!0;return!1}declareName(e,t,r){if(4096&t)return this.hasImport(e,!0)&&this.parser.raise(D.VarRedeclaration,r,{identifierName:e}),void this.importsStack[this.importsStack.length-1].add(e);let s=this.currentScope(),i=s.tsNames.get(e)||0;if(1024&t)return this.maybeExportDefined(s,e),void s.tsNames.set(e,16|i);super.declareName(e,t,r),2&t&&(1&t||(this.checkRedeclarationInScope(s,e,t,r),this.maybeExportDefined(s,e)),i|=1),256&t&&(i|=2),512&t&&(i|=4),128&t&&(i|=8),i&&s.tsNames.set(e,i)}isRedeclaredInScope(e,t,r){let s=e.tsNames.get(t);return(2&s)>0?!(256&r)||!!(512&r)!=(4&s)>0:128&r&&(8&s)>0?!!(2&e.names.get(t))&&!!(1&r):!!(2&r&&(1&s)>0)||super.isRedeclaredInScope(e,t,r)}checkLocalExport(e){let{name:t}=e;if(!this.hasImport(t)){for(let e=this.scopeStack.length-1;e>=0;e--){let r=this.scopeStack[e].tsNames.get(t);if((1&r)>0||(16&r)>0)return}super.checkLocalExport(e)}}},dt=e=>"ParenthesizedExpression"===e.type?dt(e.expression):e,mt=class extends rt{toAssignable(e,t=!1){var r,s;let i;switch(("ParenthesizedExpression"===e.type||null!=(r=e.extra)&&r.parenthesized)&&(i=dt(e),t?"Identifier"===i.type?this.expressionScope.recordArrowParameterBindingError(D.InvalidParenthesizedAssignment,e):"MemberExpression"!==i.type&&!this.isOptionalMemberExpression(i)&&this.raise(D.InvalidParenthesizedAssignment,e):this.raise(D.InvalidParenthesizedAssignment,e)),e.type){case"Identifier":case"ObjectPattern":case"ArrayPattern":case"AssignmentPattern":case"RestElement":break;case"ObjectExpression":e.type="ObjectPattern";for(let r=0,s=e.properties.length,i=s-1;r<s;r++){var n;let s=e.properties[r],a=r===i;this.toAssignableObjectExpressionProp(s,a,t),a&&"RestElement"===s.type&&null!=(n=e.extra)&&n.trailingCommaLoc&&this.raise(D.RestTrailingComma,e.extra.trailingCommaLoc)}break;case"ObjectProperty":{let{key:r,value:s}=e;this.isPrivateName(r)&&this.classScope.usePrivateName(this.getPrivateNameSV(r),r.loc.start),this.toAssignable(s,t);break}case"SpreadElement":throw new Error("Internal @babel/parser error (this is a bug, please report it). SpreadElement should be converted by .toAssignable's caller.");case"ArrayExpression":e.type="ArrayPattern",this.toAssignableList(e.elements,null==(s=e.extra)?void 0:s.trailingCommaLoc,t);break;case"AssignmentExpression":"="!==e.operator&&this.raise(D.MissingEqInAssignment,e.left.loc.end),e.type="AssignmentPattern",delete e.operator,this.toAssignable(e.left,t);break;case"ParenthesizedExpression":this.toAssignable(i,t)}}toAssignableObjectExpressionProp(e,t,r){if("ObjectMethod"===e.type)this.raise("get"===e.kind||"set"===e.kind?D.PatternHasAccessor:D.PatternHasMethod,e.key);else if("SpreadElement"===e.type){e.type="RestElement";let s=e.argument;this.checkToRestConversion(s,!1),this.toAssignable(s,r),t||this.raise(D.RestTrailingComma,e)}else this.toAssignable(e,r)}toAssignableList(e,t,r){let s=e.length-1;for(let i=0;i<=s;i++){let n=e[i];if(n){if("SpreadElement"===n.type){n.type="RestElement";let e=n.argument;this.checkToRestConversion(e,!0),this.toAssignable(e,r)}else this.toAssignable(n,r);"RestElement"===n.type&&(i<s?this.raise(D.RestTrailingComma,n):t&&this.raise(D.RestTrailingComma,t))}}}isAssignable(e,t){switch(e.type){case"Identifier":case"ObjectPattern":case"ArrayPattern":case"AssignmentPattern":case"RestElement":return!0;case"ObjectExpression":{let t=e.properties.length-1;return e.properties.every(((e,r)=>"ObjectMethod"!==e.type&&(r===t||"SpreadElement"!==e.type)&&this.isAssignable(e)))}case"ObjectProperty":return this.isAssignable(e.value);case"SpreadElement":return this.isAssignable(e.argument);case"ArrayExpression":return e.elements.every((e=>null===e||this.isAssignable(e)));case"AssignmentExpression":return"="===e.operator;case"ParenthesizedExpression":return this.isAssignable(e.expression);case"MemberExpression":case"OptionalMemberExpression":return!t;default:return!1}}toReferencedList(e,t){return e}toReferencedListDeep(e,t){this.toReferencedList(e,t);for(let r of e)"ArrayExpression"===(null==r?void 0:r.type)&&this.toReferencedListDeep(r.elements)}parseSpread(e){let t=this.startNode();return this.next(),t.argument=this.parseMaybeAssignAllowIn(e,void 0),this.finishNode(t,"SpreadElement")}parseRestBinding(){let e=this.startNode();return this.next(),e.argument=this.parseBindingAtom(),this.finishNode(e,"RestElement")}parseBindingAtom(){switch(this.state.type){case 0:{let e=this.startNode();return this.next(),e.elements=this.parseBindingList(3,93,1),this.finishNode(e,"ArrayPattern")}case 5:return this.parseObjectLike(8,!0)}return this.parseIdentifier()}parseBindingList(e,t,r){let s=1&r,i=[],n=!0;for(;!this.eat(e);)if(n?n=!1:this.expect(12),s&&this.match(12))i.push(null);else{if(this.eat(e))break;if(this.match(21)){if(i.push(this.parseAssignableListItemTypes(this.parseRestBinding(),r)),!this.checkCommaAfterRest(t)){this.expect(e);break}}else{let e=[];for(this.match(26)&&this.hasPlugin("decorators")&&this.raise(D.UnsupportedParameterDecorator,this.state.startLoc);this.match(26);)e.push(this.parseDecorator());i.push(this.parseAssignableListItem(r,e))}}return i}parseBindingRestProperty(e){return this.next(),e.argument=this.parseIdentifier(),this.checkCommaAfterRest(125),this.finishNode(e,"RestElement")}parseBindingProperty(){let{type:e,startLoc:t}=this.state;if(21===e)return this.parseBindingRestProperty(this.startNode());let r=this.startNode();return 138===e?(this.expectPlugin("destructuringPrivate",t),this.classScope.usePrivateName(this.state.value,t),r.key=this.parsePrivateName()):this.parsePropertyName(r),r.method=!1,this.parseObjPropValue(r,t,!1,!1,!0,!1)}parseAssignableListItem(e,t){let r=this.parseMaybeDefault();this.parseAssignableListItemTypes(r,e);let s=this.parseMaybeDefault(r.loc.start,r);return t.length&&(r.decorators=t),s}parseAssignableListItemTypes(e,t){return e}parseMaybeDefault(e,t){var r;if(e??=this.state.startLoc,t=null!=(r=t)?r:this.parseBindingAtom(),!this.eat(29))return t;let s=this.startNodeAt(e);return s.left=t,s.right=this.parseMaybeAssignAllowIn(),this.finishNode(s,"AssignmentPattern")}isValidLVal(e,t,r){return((e,t)=>hasOwnProperty.call(e,t)&&e[t])({AssignmentPattern:"left",RestElement:"argument",ObjectProperty:"value",ParenthesizedExpression:"expression",ArrayPattern:"elements",ObjectPattern:"properties"},e)}isOptionalMemberExpression(e){return"OptionalMemberExpression"===e.type}checkLVal(e,{in:t,binding:r=64,checkClashes:s=!1,strictModeChanged:i=!1,hasParenthesizedAncestor:n=!1}){var a;let o=e.type;if(this.isObjectMethod(e))return;let u=this.isOptionalMemberExpression(e);if(u||"MemberExpression"===o)return u&&(this.expectPlugin("optionalChainingAssign",e.loc.start),"AssignmentExpression"!==t.type&&this.raise(D.InvalidLhsOptionalChaining,e,{ancestor:t})),void(64!==r&&this.raise(D.InvalidPropertyBindingPattern,e));if("Identifier"===o){this.checkIdentifier(e,r,i);let{name:t}=e;return void(s&&(s.has(t)?this.raise(D.ParamDupe,e):s.add(t)))}let p=this.isValidLVal(o,!(n||null!=(a=e.extra)&&a.parenthesized)&&"AssignmentExpression"===t.type,r);if(!0===p)return;if(!1===p){let s=64===r?D.InvalidLhs:D.InvalidLhsBinding;return void this.raise(s,e,{ancestor:t})}let[l,c]=Array.isArray(p)?p:[p,"ParenthesizedExpression"===o],h="ArrayPattern"===o||"ObjectPattern"===o?{type:o}:t;for(let d of[].concat(e[l]))d&&this.checkLVal(d,{in:h,binding:r,checkClashes:s,strictModeChanged:i,hasParenthesizedAncestor:c})}checkIdentifier(e,t,r=!1){this.state.strict&&(r?ye(e.name,this.inModule):me(e.name))&&(64===t?this.raise(D.StrictEvalArguments,e,{referenceName:e.name}):this.raise(D.StrictEvalArgumentsBinding,e,{bindingName:e.name})),8192&t&&"let"===e.name&&this.raise(D.LetInLexicalBinding,e),64&t||this.declareNameFromIdentifier(e,t)}declareNameFromIdentifier(e,t){this.scope.declareName(e.name,t,e.loc.start)}checkToRestConversion(e,t){switch(e.type){case"ParenthesizedExpression":this.checkToRestConversion(e.expression,t);break;case"Identifier":case"MemberExpression":break;case"ArrayExpression":case"ObjectExpression":if(t)break;default:this.raise(D.InvalidRestAssignmentPattern,e)}}checkCommaAfterRest(e){return!!this.match(12)&&(this.raise(this.lookaheadCharCode()===e?D.RestTrailingComma:D.ElementAfterRest,this.state.startLoc),!0)}};function yt(e){if(!e)throw new Error("Assert fail")}var ft=f`typescript`({AbstractMethodHasImplementation:({methodName:e})=>`Method '${e}' cannot have an implementation because it is marked abstract.`,AbstractPropertyHasInitializer:({propertyName:e})=>`Property '${e}' cannot have an initializer because it is marked abstract.`,AccesorCannotDeclareThisParameter:"'get' and 'set' accessors cannot declare 'this' parameters.",AccesorCannotHaveTypeParameters:"An accessor cannot have type parameters.",AccessorCannotBeOptional:"An 'accessor' property cannot be declared optional.",ClassMethodHasDeclare:"Class methods cannot have the 'declare' modifier.",ClassMethodHasReadonly:"Class methods cannot have the 'readonly' modifier.",ConstInitiailizerMustBeStringOrNumericLiteralOrLiteralEnumReference:"A 'const' initializer in an ambient context must be a string or numeric literal or literal enum reference.",ConstructorHasTypeParameters:"Type parameters cannot appear on a constructor declaration.",DeclareAccessor:({kind:e})=>`'declare' is not allowed in ${e}ters.`,DeclareClassFieldHasInitializer:"Initializers are not allowed in ambient contexts.",DeclareFunctionHasImplementation:"An implementation cannot be declared in ambient contexts.",DuplicateAccessibilityModifier:({modifier:e})=>"Accessibility modifier already seen.",DuplicateModifier:({modifier:e})=>`Duplicate modifier: '${e}'.`,EmptyHeritageClauseType:({token:e})=>`'${e}' list cannot be empty.`,EmptyTypeArguments:"Type argument list cannot be empty.",EmptyTypeParameters:"Type parameter list cannot be empty.",ExpectedAmbientAfterExportDeclare:"'export declare' must be followed by an ambient declaration.",ImportAliasHasImportType:"An import alias can not use 'import type'.",ImportReflectionHasImportType:"An `import module` declaration can not use `type` modifier",IncompatibleModifiers:({modifiers:e})=>`'${e[0]}' modifier cannot be used with '${e[1]}' modifier.`,IndexSignatureHasAbstract:"Index signatures cannot have the 'abstract' modifier.",IndexSignatureHasAccessibility:({modifier:e})=>`Index signatures cannot have an accessibility modifier ('${e}').`,IndexSignatureHasDeclare:"Index signatures cannot have the 'declare' modifier.",IndexSignatureHasOverride:"'override' modifier cannot appear on an index signature.",IndexSignatureHasStatic:"Index signatures cannot have the 'static' modifier.",InitializerNotAllowedInAmbientContext:"Initializers are not allowed in ambient contexts.",InvalidModifierOnTypeMember:({modifier:e})=>`'${e}' modifier cannot appear on a type member.`,InvalidModifierOnTypeParameter:({modifier:e})=>`'${e}' modifier cannot appear on a type parameter.`,InvalidModifierOnTypeParameterPositions:({modifier:e})=>`'${e}' modifier can only appear on a type parameter of a class, interface or type alias.`,InvalidModifiersOrder:({orderedModifiers:e})=>`'${e[0]}' modifier must precede '${e[1]}' modifier.`,InvalidPropertyAccessAfterInstantiationExpression:"Invalid property access after an instantiation expression. You can either wrap the instantiation expression in parentheses, or delete the type arguments.",InvalidTupleMemberLabel:"Tuple members must be labeled with a simple identifier.",MissingInterfaceName:"'interface' declarations must be followed by an identifier.",NonAbstractClassHasAbstractMethod:"Abstract methods can only appear within an abstract class.",NonClassMethodPropertyHasAbstractModifer:"'abstract' modifier can only appear on a class, method, or property declaration.",OptionalTypeBeforeRequired:"A required element cannot follow an optional element.",OverrideNotInSubClass:"This member cannot have an 'override' modifier because its containing class does not extend another class.",PatternIsOptional:"A binding pattern parameter cannot be optional in an implementation signature.",PrivateElementHasAbstract:"Private elements cannot have the 'abstract' modifier.",PrivateElementHasAccessibility:({modifier:e})=>`Private elements cannot have an accessibility modifier ('${e}').`,ReadonlyForMethodSignature:"'readonly' modifier can only appear on a property declaration or index signature.",ReservedArrowTypeParam:"This syntax is reserved in files with the .mts or .cts extension. Add a trailing comma, as in `<T,>() => ...`.",ReservedTypeAssertion:"This syntax is reserved in files with the .mts or .cts extension. Use an `as` expression instead.",SetAccesorCannotHaveOptionalParameter:"A 'set' accessor cannot have an optional parameter.",SetAccesorCannotHaveRestParameter:"A 'set' accessor cannot have rest parameter.",SetAccesorCannotHaveReturnType:"A 'set' accessor cannot have a return type annotation.",SingleTypeParameterWithoutTrailingComma:({typeParameterName:e})=>`Single type parameter ${e} should have a trailing comma. Example usage: <${e},>.`,StaticBlockCannotHaveModifier:"Static class blocks cannot have any modifier.",TupleOptionalAfterType:"A labeled tuple optional element must be declared using a question mark after the name and before the colon (`name?: type`), rather than after the type (`name: type?`).",TypeAnnotationAfterAssign:"Type annotations must come before default assignments, e.g. instead of `age = 25: number` use `age: number = 25`.",TypeImportCannotSpecifyDefaultAndNamed:"A type-only import can specify a default import or named bindings, but not both.",TypeModifierIsUsedInTypeExports:"The 'type' modifier cannot be used on a named export when 'export type' is used on its export statement.",TypeModifierIsUsedInTypeImports:"The 'type' modifier cannot be used on a named import when 'import type' is used on its import statement.",UnexpectedParameterModifier:"A parameter property is only allowed in a constructor implementation.",UnexpectedReadonly:"'readonly' type modifier is only permitted on array and tuple literal types.",UnexpectedTypeAnnotation:"Did not expect a type annotation here.",UnexpectedTypeCastInParameter:"Unexpected type cast in parameter position.",UnsupportedImportTypeArgument:"Argument in a type import must be a string literal.",UnsupportedParameterPropertyKind:"A parameter property may not be declared using a binding pattern.",UnsupportedSignatureParameterKind:({type:e})=>`Name in a signature must be an Identifier, ObjectPattern or ArrayPattern, instead got ${e}.`});function Dt(e){return"private"===e||"public"===e||"protected"===e}function xt(e){return"in"===e||"out"===e}function gt(e){if("MemberExpression"!==e.type)return!1;let{computed:t,property:r}=e;return(!t||"StringLiteral"===r.type||!("TemplateLiteral"!==r.type||r.expressions.length>0))&&Tt(e.object)}function Et(e,t){var r;let{type:s}=e;if(null!=(r=e.extra)&&r.parenthesized)return!1;if(t){if("Literal"===s){let{value:t}=e;if("string"==typeof t||"boolean"==typeof t)return!0}}else if("StringLiteral"===s||"BooleanLiteral"===s)return!0;return!!(At(e,t)||function(e,t){if("UnaryExpression"===e.type){let{operator:r,argument:s}=e;if("-"===r&&At(s,t))return!0}return!1}(e,t)||"TemplateLiteral"===s&&0===e.expressions.length||gt(e))}function At(e,t){return t?"Literal"===e.type&&("number"==typeof e.value||"bigint"in e):"NumericLiteral"===e.type||"BigIntLiteral"===e.type}function Tt(e){return"Identifier"===e.type||"MemberExpression"===e.type&&!e.computed&&Tt(e.object)}var Ct=f`placeholders`({ClassNameIsRequired:"A class name is required.",UnexpectedSpace:"Unexpected space in placeholder."});function Ft(e,t){let[r,s]="string"==typeof t?[t,{}]:t,i=Object.keys(s),n=0===i.length;return e.some((e=>{if("string"==typeof e)return n&&e===r;{let[t,n]=e;if(t!==r)return!1;for(let e of i)if(n[e]!==s[e])return!1;return!0}}))}function bt(e,t,r){let s=e.find((e=>Array.isArray(e)?e[0]===t:e===t));return s&&Array.isArray(s)&&s.length>1?s[1][r]:null}var St=["minimal","fsharp","hack","smart"],Pt=["^^","@@","^","%","#"],wt={estree:e=>class extends e{parse(){let e=E(super.parse());return this.options.tokens&&(e.tokens=e.tokens.map(E)),e}parseRegExpLiteral({pattern:e,flags:t}){let r=null;try{r=new RegExp(e,t)}catch{}let s=this.estreeParseLiteral(r);return s.regex={pattern:e,flags:t},s}parseBigIntLiteral(e){let t;try{t=BigInt(e)}catch{t=null}let r=this.estreeParseLiteral(t);return r.bigint=String(r.value||e),r}parseDecimalLiteral(e){let t=this.estreeParseLiteral(null);return t.decimal=String(t.value||e),t}estreeParseLiteral(e){return this.parseLiteral(e,"Literal")}parseStringLiteral(e){return this.estreeParseLiteral(e)}parseNumericLiteral(e){return this.estreeParseLiteral(e)}parseNullLiteral(){return this.estreeParseLiteral(null)}parseBooleanLiteral(e){return this.estreeParseLiteral(e)}directiveToStmt(e){let t=e.value;delete e.value,t.type="Literal",t.raw=t.extra.raw,t.value=t.extra.expressionValue;let r=e;return r.type="ExpressionStatement",r.expression=t,r.directive=t.extra.rawValue,delete t.extra,r}initFunction(e,t){super.initFunction(e,t),e.expression=!1}checkDeclaration(e){null!=e&&this.isObjectProperty(e)?this.checkDeclaration(e.value):super.checkDeclaration(e)}getObjectOrClassMethodParams(e){return e.value.params}isValidDirective(e){var t;return"ExpressionStatement"===e.type&&"Literal"===e.expression.type&&"string"==typeof e.expression.value&&!(null!=(t=e.expression.extra)&&t.parenthesized)}parseBlockBody(e,t,r,s,i){super.parseBlockBody(e,t,r,s,i),e.body=e.directives.map((e=>this.directiveToStmt(e))).concat(e.body),delete e.directives}pushClassMethod(e,t,r,s,i,n){this.parseMethod(t,r,s,i,n,"ClassMethod",!0),t.typeParameters&&(t.value.typeParameters=t.typeParameters,delete t.typeParameters),e.body.push(t)}parsePrivateName(){let e=super.parsePrivateName();return this.getPluginOption("estree","classFeatures")?this.convertPrivateNameToPrivateIdentifier(e):e}convertPrivateNameToPrivateIdentifier(e){let t=super.getPrivateNameSV(e);return delete e.id,e.name=t,e.type="PrivateIdentifier",e}isPrivateName(e){return this.getPluginOption("estree","classFeatures")?"PrivateIdentifier"===e.type:super.isPrivateName(e)}getPrivateNameSV(e){return this.getPluginOption("estree","classFeatures")?e.name:super.getPrivateNameSV(e)}parseLiteral(e,t){let r=super.parseLiteral(e,t);return r.raw=r.extra.raw,delete r.extra,r}parseFunctionBody(e,t,r=!1){super.parseFunctionBody(e,t,r),e.expression="BlockStatement"!==e.body.type}parseMethod(e,t,r,s,i,n,a=!1){let o=this.startNode();return o.kind=e.kind,o=super.parseMethod(o,t,r,s,i,n,a),o.type="FunctionExpression",delete o.kind,e.value=o,"ClassPrivateMethod"===n&&(e.computed=!1),this.finishNode(e,"MethodDefinition")}nameIsConstructor(e){return"Literal"===e.type?"constructor"===e.value:super.nameIsConstructor(e)}parseClassProperty(...e){let t=super.parseClassProperty(...e);return this.getPluginOption("estree","classFeatures")&&(t.type="PropertyDefinition"),t}parseClassPrivateProperty(...e){let t=super.parseClassPrivateProperty(...e);return this.getPluginOption("estree","classFeatures")&&(t.type="PropertyDefinition",t.computed=!1),t}parseObjectMethod(e,t,r,s,i){let n=super.parseObjectMethod(e,t,r,s,i);return n&&(n.type="Property","method"===n.kind&&(n.kind="init"),n.shorthand=!1),n}parseObjectProperty(e,t,r,s){let i=super.parseObjectProperty(e,t,r,s);return i&&(i.kind="init",i.type="Property"),i}isValidLVal(e,t,r){return"Property"===e?"value":super.isValidLVal(e,t,r)}isAssignable(e,t){return null!=e&&this.isObjectProperty(e)?this.isAssignable(e.value,t):super.isAssignable(e,t)}toAssignable(e,t=!1){if(null!=e&&this.isObjectProperty(e)){let{key:r,value:s}=e;this.isPrivateName(r)&&this.classScope.usePrivateName(this.getPrivateNameSV(r),r.loc.start),this.toAssignable(s,t)}else super.toAssignable(e,t)}toAssignableObjectExpressionProp(e,t,r){"Property"!==e.type||"get"!==e.kind&&"set"!==e.kind?"Property"===e.type&&e.method?this.raise(D.PatternHasMethod,e.key):super.toAssignableObjectExpressionProp(e,t,r):this.raise(D.PatternHasAccessor,e.key)}finishCallExpression(e,t){let r=super.finishCallExpression(e,t);var s,i;return"Import"===r.callee.type&&(r.type="ImportExpression",r.source=r.arguments[0],(this.hasPlugin("importAttributes")||this.hasPlugin("importAssertions"))&&(r.options=null!=(s=r.arguments[1])?s:null,r.attributes=null!=(i=r.arguments[1])?i:null),delete r.arguments,delete r.callee),r}toReferencedArguments(e){"ImportExpression"!==e.type&&super.toReferencedArguments(e)}parseExport(e,t){let r=this.state.lastTokStartLoc,s=super.parseExport(e,t);switch(s.type){case"ExportAllDeclaration":s.exported=null;break;case"ExportNamedDeclaration":1===s.specifiers.length&&"ExportNamespaceSpecifier"===s.specifiers[0].type&&(s.type="ExportAllDeclaration",s.exported=s.specifiers[0].exported,delete s.specifiers);case"ExportDefaultDeclaration":{var i;let{declaration:e}=s;"ClassDeclaration"===(null==e?void 0:e.type)&&(null==(i=e.decorators)?void 0:i.length)>0&&e.start===s.start&&this.resetStartLocation(s,r)}}return s}parseSubscript(e,t,r,s){let i=super.parseSubscript(e,t,r,s);if(s.optionalChainMember){if(("OptionalMemberExpression"===i.type||"OptionalCallExpression"===i.type)&&(i.type=i.type.substring(8)),s.stop){let e=this.startNodeAtNode(i);return e.expression=i,this.finishNode(e,"ChainExpression")}}else("MemberExpression"===i.type||"CallExpression"===i.type)&&(i.optional=!1);return i}isOptionalMemberExpression(e){return"ChainExpression"===e.type?"MemberExpression"===e.expression.type:super.isOptionalMemberExpression(e)}hasPropertyAsPrivateName(e){return"ChainExpression"===e.type&&(e=e.expression),super.hasPropertyAsPrivateName(e)}isObjectProperty(e){return"Property"===e.type&&"init"===e.kind&&!e.method}isObjectMethod(e){return"Property"===e.type&&(e.method||"get"===e.kind||"set"===e.kind)}finishNodeAt(e,t,r){return E(super.finishNodeAt(e,t,r))}resetStartLocation(e,t){super.resetStartLocation(e,t),E(e)}resetEndLocation(e,t=this.state.lastTokEndLoc){super.resetEndLocation(e,t),E(e)}},jsx:e=>class extends e{jsxReadToken(){let e="",t=this.state.pos;for(;;){if(this.state.pos>=this.length)throw this.raise(ut.UnterminatedJsxContent,this.state.startLoc);let r=this.input.charCodeAt(this.state.pos);switch(r){case 60:case 123:return this.state.pos===this.state.start?void(60===r&&this.state.canStartJSXElement?(++this.state.pos,this.finishToken(142)):super.getTokenFromCode(r)):(e+=this.input.slice(t,this.state.pos),void this.finishToken(141,e));case 38:e+=this.input.slice(t,this.state.pos),e+=this.jsxReadEntity(),t=this.state.pos;break;default:we(r)?(e+=this.input.slice(t,this.state.pos),e+=this.jsxReadNewLine(!0),t=this.state.pos):++this.state.pos}}}jsxReadNewLine(e){let t,r=this.input.charCodeAt(this.state.pos);return++this.state.pos,13===r&&10===this.input.charCodeAt(this.state.pos)?(++this.state.pos,t=e?"\n":"\r\n"):t=String.fromCharCode(r),++this.state.curLine,this.state.lineStart=this.state.pos,t}jsxReadString(e){let t="",r=++this.state.pos;for(;;){if(this.state.pos>=this.length)throw this.raise(D.UnterminatedString,this.state.startLoc);let s=this.input.charCodeAt(this.state.pos);if(s===e)break;38===s?(t+=this.input.slice(r,this.state.pos),t+=this.jsxReadEntity(),r=this.state.pos):we(s)?(t+=this.input.slice(r,this.state.pos),t+=this.jsxReadNewLine(!1),r=this.state.pos):++this.state.pos}t+=this.input.slice(r,this.state.pos++),this.finishToken(133,t)}jsxReadEntity(){let e=++this.state.pos;if(35===this.codePointAtPos(this.state.pos)){++this.state.pos;let e=10;120===this.codePointAtPos(this.state.pos)&&(e=16,++this.state.pos);let t=this.readInt(e,void 0,!1,"bail");if(null!==t&&59===this.codePointAtPos(this.state.pos))return++this.state.pos,String.fromCodePoint(t)}else{let t=0,r=!1;for(;t++<10&&this.state.pos<this.length&&!(r=59===this.codePointAtPos(this.state.pos));)++this.state.pos;r&&(this.input.slice(e,this.state.pos),++this.state.pos)}return this.state.pos=e,"&"}jsxReadWord(){let e,t=this.state.pos;do{e=this.input.charCodeAt(++this.state.pos)}while(ae(e)||45===e);this.finishToken(140,this.input.slice(t,this.state.pos))}jsxParseIdentifier(){let e=this.startNode();return this.match(140)?e.name=this.state.value:W(this.state.type)?e.name=K(this.state.type):this.unexpected(),this.next(),this.finishNode(e,"JSXIdentifier")}jsxParseNamespacedName(){let e=this.state.startLoc,t=this.jsxParseIdentifier();if(!this.eat(14))return t;let r=this.startNodeAt(e);return r.namespace=t,r.name=this.jsxParseIdentifier(),this.finishNode(r,"JSXNamespacedName")}jsxParseElementName(){let e=this.state.startLoc,t=this.jsxParseNamespacedName();if("JSXNamespacedName"===t.type)return t;for(;this.eat(16);){let r=this.startNodeAt(e);r.object=t,r.property=this.jsxParseIdentifier(),t=this.finishNode(r,"JSXMemberExpression")}return t}jsxParseAttributeValue(){let e;switch(this.state.type){case 5:return e=this.startNode(),this.setContext(T.brace),this.next(),e=this.jsxParseExpressionContainer(e,T.j_oTag),"JSXEmptyExpression"===e.expression.type&&this.raise(ut.AttributeIsEmpty,e),e;case 142:case 133:return this.parseExprAtom();default:throw this.raise(ut.UnsupportedJsxValue,this.state.startLoc)}}jsxParseEmptyExpression(){let e=this.startNodeAt(this.state.lastTokEndLoc);return this.finishNodeAt(e,"JSXEmptyExpression",this.state.startLoc)}jsxParseSpreadChild(e){return this.next(),e.expression=this.parseExpression(),this.setContext(T.j_expr),this.state.canStartJSXElement=!0,this.expect(8),this.finishNode(e,"JSXSpreadChild")}jsxParseExpressionContainer(e,t){return this.match(8)?e.expression=this.jsxParseEmptyExpression():e.expression=this.parseExpression(),this.setContext(t),this.state.canStartJSXElement=!0,this.expect(8),this.finishNode(e,"JSXExpressionContainer")}jsxParseAttribute(){let e=this.startNode();return this.match(5)?(this.setContext(T.brace),this.next(),this.expect(21),e.argument=this.parseMaybeAssignAllowIn(),this.setContext(T.j_oTag),this.state.canStartJSXElement=!0,this.expect(8),this.finishNode(e,"JSXSpreadAttribute")):(e.name=this.jsxParseNamespacedName(),e.value=this.eat(29)?this.jsxParseAttributeValue():null,this.finishNode(e,"JSXAttribute"))}jsxParseOpeningElementAt(e){let t=this.startNodeAt(e);return this.eat(143)?this.finishNode(t,"JSXOpeningFragment"):(t.name=this.jsxParseElementName(),this.jsxParseOpeningElementAfterName(t))}jsxParseOpeningElementAfterName(e){let t=[];for(;!this.match(56)&&!this.match(143);)t.push(this.jsxParseAttribute());return e.attributes=t,e.selfClosing=this.eat(56),this.expect(143),this.finishNode(e,"JSXOpeningElement")}jsxParseClosingElementAt(e){let t=this.startNodeAt(e);return this.eat(143)?this.finishNode(t,"JSXClosingFragment"):(t.name=this.jsxParseElementName(),this.expect(143),this.finishNode(t,"JSXClosingElement"))}jsxParseElementAt(e){let t=this.startNodeAt(e),r=[],s=this.jsxParseOpeningElementAt(e),i=null;if(!s.selfClosing){e:for(;;)switch(this.state.type){case 142:if(e=this.state.startLoc,this.next(),this.eat(56)){i=this.jsxParseClosingElementAt(e);break e}r.push(this.jsxParseElementAt(e));break;case 141:r.push(this.parseLiteral(this.state.value,"JSXText"));break;case 5:{let e=this.startNode();this.setContext(T.brace),this.next(),this.match(21)?r.push(this.jsxParseSpreadChild(e)):r.push(this.jsxParseExpressionContainer(e,T.j_expr));break}default:this.unexpected()}pt(s)&&!pt(i)&&null!==i?this.raise(ut.MissingClosingTagFragment,i):(!pt(s)&&pt(i)||!pt(s)&&!pt(i)&&lt(i.name)!==lt(s.name))&&this.raise(ut.MissingClosingTagElement,i,{openingTagName:lt(s.name)})}if(pt(s)?(t.openingFragment=s,t.closingFragment=i):(t.openingElement=s,t.closingElement=i),t.children=r,this.match(47))throw this.raise(ut.UnwrappedAdjacentJSXElements,this.state.startLoc);return pt(s)?this.finishNode(t,"JSXFragment"):this.finishNode(t,"JSXElement")}jsxParseElement(){let e=this.state.startLoc;return this.next(),this.jsxParseElementAt(e)}setContext(e){let{context:t}=this.state;t[t.length-1]=e}parseExprAtom(e){return this.match(142)?this.jsxParseElement():this.match(47)&&33!==this.input.charCodeAt(this.state.pos)?(this.replaceToken(142),this.jsxParseElement()):super.parseExprAtom(e)}skipSpace(){this.curContext().preserveSpace||super.skipSpace()}getTokenFromCode(e){let t=this.curContext();if(t!==T.j_expr){if(t===T.j_oTag||t===T.j_cTag){if(ne(e))return void this.jsxReadWord();if(62===e)return++this.state.pos,void this.finishToken(143);if((34===e||39===e)&&t===T.j_oTag)return void this.jsxReadString(e)}if(60===e&&this.state.canStartJSXElement&&33!==this.input.charCodeAt(this.state.pos+1))return++this.state.pos,void this.finishToken(142);super.getTokenFromCode(e)}else this.jsxReadToken()}updateContext(e){let{context:t,type:r}=this.state;if(56===r&&142===e)t.splice(-2,2,T.j_cTag),this.state.canStartJSXElement=!1;else if(142===r)t.push(T.j_oTag);else if(143===r){let r=t[t.length-1];r===T.j_oTag&&56===e||r===T.j_cTag?(t.pop(),this.state.canStartJSXElement=t[t.length-1]===T.j_expr):(this.setContext(T.j_expr),this.state.canStartJSXElement=!0)}else this.state.canStartJSXElement=function(e){return O[e]}(r)}},flow:e=>class extends e{constructor(...e){super(...e),this.flowPragma=void 0}getScopeHandler(){return Ee}shouldParseTypes(){return this.getPluginOption("flow","all")||"flow"===this.flowPragma}shouldParseEnums(){return!!this.getPluginOption("flow","enums")}finishToken(e,t){133!==e&&13!==e&&28!==e&&void 0===this.flowPragma&&(this.flowPragma=null),super.finishToken(e,t)}addComment(e){if(void 0===this.flowPragma){let t=ot.exec(e.value);if(t)if("flow"===t[1])this.flowPragma="flow";else{if("noflow"!==t[1])throw new Error("Unexpected flow pragma");this.flowPragma="noflow"}}super.addComment(e)}flowParseTypeInitialiser(e){let t=this.state.inType;this.state.inType=!0,this.expect(e||14);let r=this.flowParseType();return this.state.inType=t,r}flowParsePredicate(){let e=this.startNode(),t=this.state.startLoc;return this.next(),this.expectContextual(110),this.state.lastTokStartLoc.index>t.index+1&&this.raise(it.UnexpectedSpaceBetweenModuloChecks,t),this.eat(10)?(e.value=super.parseExpression(),this.expect(11),this.finishNode(e,"DeclaredPredicate")):this.finishNode(e,"InferredPredicate")}flowParseTypeAndPredicateInitialiser(){let e=this.state.inType;this.state.inType=!0,this.expect(14);let t=null,r=null;return this.match(54)?(this.state.inType=e,r=this.flowParsePredicate()):(t=this.flowParseType(),this.state.inType=e,this.match(54)&&(r=this.flowParsePredicate())),[t,r]}flowParseDeclareClass(e){return this.next(),this.flowParseInterfaceish(e,!0),this.finishNode(e,"DeclareClass")}flowParseDeclareFunction(e){this.next();let t=e.id=this.parseIdentifier(),r=this.startNode(),s=this.startNode();this.match(47)?r.typeParameters=this.flowParseTypeParameterDeclaration():r.typeParameters=null,this.expect(10);let i=this.flowParseFunctionTypeParams();return r.params=i.params,r.rest=i.rest,r.this=i._this,this.expect(11),[r.returnType,e.predicate]=this.flowParseTypeAndPredicateInitialiser(),s.typeAnnotation=this.finishNode(r,"FunctionTypeAnnotation"),t.typeAnnotation=this.finishNode(s,"TypeAnnotation"),this.resetEndLocation(t),this.semicolon(),this.scope.declareName(e.id.name,2048,e.id.loc.start),this.finishNode(e,"DeclareFunction")}flowParseDeclare(e,t){return this.match(80)?this.flowParseDeclareClass(e):this.match(68)?this.flowParseDeclareFunction(e):this.match(74)?this.flowParseDeclareVariable(e):this.eatContextual(127)?this.match(16)?this.flowParseDeclareModuleExports(e):(t&&this.raise(it.NestedDeclareModule,this.state.lastTokStartLoc),this.flowParseDeclareModule(e)):this.isContextual(130)?this.flowParseDeclareTypeAlias(e):this.isContextual(131)?this.flowParseDeclareOpaqueType(e):this.isContextual(129)?this.flowParseDeclareInterface(e):this.match(82)?this.flowParseDeclareExportDeclaration(e,t):void this.unexpected()}flowParseDeclareVariable(e){return this.next(),e.id=this.flowParseTypeAnnotatableIdentifier(!0),this.scope.declareName(e.id.name,5,e.id.loc.start),this.semicolon(),this.finishNode(e,"DeclareVariable")}flowParseDeclareModule(e){this.scope.enter(0),this.match(133)?e.id=super.parseExprAtom():e.id=this.parseIdentifier();let t=e.body=this.startNode(),r=t.body=[];for(this.expect(5);!this.match(8);){let e=this.startNode();this.match(83)?(this.next(),!this.isContextual(130)&&!this.match(87)&&this.raise(it.InvalidNonTypeImportInDeclareModule,this.state.lastTokStartLoc),super.parseImport(e)):(this.expectContextual(125,it.UnsupportedStatementInDeclareModule),e=this.flowParseDeclare(e,!0)),r.push(e)}this.scope.exit(),this.expect(8),this.finishNode(t,"BlockStatement");let s=null,i=!1;return r.forEach((e=>{!function(e){return"DeclareExportAllDeclaration"===e.type||"DeclareExportDeclaration"===e.type&&(!e.declaration||"TypeAlias"!==e.declaration.type&&"InterfaceDeclaration"!==e.declaration.type)}(e)?"DeclareModuleExports"===e.type&&(i&&this.raise(it.DuplicateDeclareModuleExports,e),"ES"===s&&this.raise(it.AmbiguousDeclareModuleKind,e),s="CommonJS",i=!0):("CommonJS"===s&&this.raise(it.AmbiguousDeclareModuleKind,e),s="ES")})),e.kind=s||"CommonJS",this.finishNode(e,"DeclareModule")}flowParseDeclareExportDeclaration(e,t){if(this.expect(82),this.eat(65))return this.match(68)||this.match(80)?e.declaration=this.flowParseDeclare(this.startNode()):(e.declaration=this.flowParseType(),this.semicolon()),e.default=!0,this.finishNode(e,"DeclareExportDeclaration");if(this.match(75)||this.isLet()||(this.isContextual(130)||this.isContextual(129))&&!t){let e=this.state.value;throw this.raise(it.UnsupportedDeclareExportKind,this.state.startLoc,{unsupportedExportKind:e,suggestion:at[e]})}return this.match(74)||this.match(68)||this.match(80)||this.isContextual(131)?(e.declaration=this.flowParseDeclare(this.startNode()),e.default=!1,this.finishNode(e,"DeclareExportDeclaration")):this.match(55)||this.match(5)||this.isContextual(129)||this.isContextual(130)||this.isContextual(131)?("ExportNamedDeclaration"===(e=this.parseExport(e,null)).type&&(e.type="ExportDeclaration",e.default=!1,delete e.exportKind),e.type="Declare"+e.type,e):void this.unexpected()}flowParseDeclareModuleExports(e){return this.next(),this.expectContextual(111),e.typeAnnotation=this.flowParseTypeAnnotation(),this.semicolon(),this.finishNode(e,"DeclareModuleExports")}flowParseDeclareTypeAlias(e){this.next();let t=this.flowParseTypeAlias(e);return t.type="DeclareTypeAlias",t}flowParseDeclareOpaqueType(e){this.next();let t=this.flowParseOpaqueType(e,!0);return t.type="DeclareOpaqueType",t}flowParseDeclareInterface(e){return this.next(),this.flowParseInterfaceish(e,!1),this.finishNode(e,"DeclareInterface")}flowParseInterfaceish(e,t){if(e.id=this.flowParseRestrictedIdentifier(!t,!0),this.scope.declareName(e.id.name,t?17:8201,e.id.loc.start),this.match(47)?e.typeParameters=this.flowParseTypeParameterDeclaration():e.typeParameters=null,e.extends=[],this.eat(81))do{e.extends.push(this.flowParseInterfaceExtends())}while(!t&&this.eat(12));if(t){if(e.implements=[],e.mixins=[],this.eatContextual(117))do{e.mixins.push(this.flowParseInterfaceExtends())}while(this.eat(12));if(this.eatContextual(113))do{e.implements.push(this.flowParseInterfaceExtends())}while(this.eat(12))}e.body=this.flowParseObjectType({allowStatic:t,allowExact:!1,allowSpread:!1,allowProto:t,allowInexact:!1})}flowParseInterfaceExtends(){let e=this.startNode();return e.id=this.flowParseQualifiedTypeIdentifier(),this.match(47)?e.typeParameters=this.flowParseTypeParameterInstantiation():e.typeParameters=null,this.finishNode(e,"InterfaceExtends")}flowParseInterface(e){return this.flowParseInterfaceish(e,!1),this.finishNode(e,"InterfaceDeclaration")}checkNotUnderscore(e){"_"===e&&this.raise(it.UnexpectedReservedUnderscore,this.state.startLoc)}checkReservedType(e,t,r){st.has(e)&&this.raise(r?it.AssignReservedType:it.UnexpectedReservedType,t,{reservedType:e})}flowParseRestrictedIdentifier(e,t){return this.checkReservedType(this.state.value,this.state.startLoc,t),this.parseIdentifier(e)}flowParseTypeAlias(e){return e.id=this.flowParseRestrictedIdentifier(!1,!0),this.scope.declareName(e.id.name,8201,e.id.loc.start),this.match(47)?e.typeParameters=this.flowParseTypeParameterDeclaration():e.typeParameters=null,e.right=this.flowParseTypeInitialiser(29),this.semicolon(),this.finishNode(e,"TypeAlias")}flowParseOpaqueType(e,t){return this.expectContextual(130),e.id=this.flowParseRestrictedIdentifier(!0,!0),this.scope.declareName(e.id.name,8201,e.id.loc.start),this.match(47)?e.typeParameters=this.flowParseTypeParameterDeclaration():e.typeParameters=null,e.supertype=null,this.match(14)&&(e.supertype=this.flowParseTypeInitialiser(14)),e.impltype=null,t||(e.impltype=this.flowParseTypeInitialiser(29)),this.semicolon(),this.finishNode(e,"OpaqueType")}flowParseTypeParameter(e=!1){let t=this.state.startLoc,r=this.startNode(),s=this.flowParseVariance(),i=this.flowParseTypeAnnotatableIdentifier();return r.name=i.name,r.variance=s,r.bound=i.typeAnnotation,this.match(29)?(this.eat(29),r.default=this.flowParseType()):e&&this.raise(it.MissingTypeParamDefault,t),this.finishNode(r,"TypeParameter")}flowParseTypeParameterDeclaration(){let e=this.state.inType,t=this.startNode();t.params=[],this.state.inType=!0,this.match(47)||this.match(142)?this.next():this.unexpected();let r=!1;do{let e=this.flowParseTypeParameter(r);t.params.push(e),e.default&&(r=!0),this.match(48)||this.expect(12)}while(!this.match(48));return this.expect(48),this.state.inType=e,this.finishNode(t,"TypeParameterDeclaration")}flowParseTypeParameterInstantiation(){let e=this.startNode(),t=this.state.inType;e.params=[],this.state.inType=!0,this.expect(47);let r=this.state.noAnonFunctionType;for(this.state.noAnonFunctionType=!1;!this.match(48);)e.params.push(this.flowParseType()),this.match(48)||this.expect(12);return this.state.noAnonFunctionType=r,this.expect(48),this.state.inType=t,this.finishNode(e,"TypeParameterInstantiation")}flowParseTypeParameterInstantiationCallOrNew(){let e=this.startNode(),t=this.state.inType;for(e.params=[],this.state.inType=!0,this.expect(47);!this.match(48);)e.params.push(this.flowParseTypeOrImplicitInstantiation()),this.match(48)||this.expect(12);return this.expect(48),this.state.inType=t,this.finishNode(e,"TypeParameterInstantiation")}flowParseInterfaceType(){let e=this.startNode();if(this.expectContextual(129),e.extends=[],this.eat(81))do{e.extends.push(this.flowParseInterfaceExtends())}while(this.eat(12));return e.body=this.flowParseObjectType({allowStatic:!1,allowExact:!1,allowSpread:!1,allowProto:!1,allowInexact:!1}),this.finishNode(e,"InterfaceTypeAnnotation")}flowParseObjectPropertyKey(){return this.match(134)||this.match(133)?super.parseExprAtom():this.parseIdentifier(!0)}flowParseObjectTypeIndexer(e,t,r){return e.static=t,14===this.lookahead().type?(e.id=this.flowParseObjectPropertyKey(),e.key=this.flowParseTypeInitialiser()):(e.id=null,e.key=this.flowParseType()),this.expect(3),e.value=this.flowParseTypeInitialiser(),e.variance=r,this.finishNode(e,"ObjectTypeIndexer")}flowParseObjectTypeInternalSlot(e,t){return e.static=t,e.id=this.flowParseObjectPropertyKey(),this.expect(3),this.expect(3),this.match(47)||this.match(10)?(e.method=!0,e.optional=!1,e.value=this.flowParseObjectTypeMethodish(this.startNodeAt(e.loc.start))):(e.method=!1,this.eat(17)&&(e.optional=!0),e.value=this.flowParseTypeInitialiser()),this.finishNode(e,"ObjectTypeInternalSlot")}flowParseObjectTypeMethodish(e){for(e.params=[],e.rest=null,e.typeParameters=null,e.this=null,this.match(47)&&(e.typeParameters=this.flowParseTypeParameterDeclaration()),this.expect(10),this.match(78)&&(e.this=this.flowParseFunctionTypeParam(!0),e.this.name=null,this.match(11)||this.expect(12));!this.match(11)&&!this.match(21);)e.params.push(this.flowParseFunctionTypeParam(!1)),this.match(11)||this.expect(12);return this.eat(21)&&(e.rest=this.flowParseFunctionTypeParam(!1)),this.expect(11),e.returnType=this.flowParseTypeInitialiser(),this.finishNode(e,"FunctionTypeAnnotation")}flowParseObjectTypeCallProperty(e,t){let r=this.startNode();return e.static=t,e.value=this.flowParseObjectTypeMethodish(r),this.finishNode(e,"ObjectTypeCallProperty")}flowParseObjectType({allowStatic:e,allowExact:t,allowSpread:r,allowProto:s,allowInexact:i}){let n=this.state.inType;this.state.inType=!0;let a=this.startNode();a.callProperties=[],a.properties=[],a.indexers=[],a.internalSlots=[];let o,u,p=!1;for(t&&this.match(6)?(this.expect(6),o=9,u=!0):(this.expect(5),o=8,u=!1),a.exact=u;!this.match(o);){let t=!1,n=null,o=null,l=this.startNode();if(s&&this.isContextual(118)){let t=this.lookahead();14!==t.type&&17!==t.type&&(this.next(),n=this.state.startLoc,e=!1)}if(e&&this.isContextual(106)){let e=this.lookahead();14!==e.type&&17!==e.type&&(this.next(),t=!0)}let c=this.flowParseVariance();if(this.eat(0))null!=n&&this.unexpected(n),this.eat(0)?(c&&this.unexpected(c.loc.start),a.internalSlots.push(this.flowParseObjectTypeInternalSlot(l,t))):a.indexers.push(this.flowParseObjectTypeIndexer(l,t,c));else if(this.match(10)||this.match(47))null!=n&&this.unexpected(n),c&&this.unexpected(c.loc.start),a.callProperties.push(this.flowParseObjectTypeCallProperty(l,t));else{let e="init";(this.isContextual(99)||this.isContextual(104))&&V(this.lookahead().type)&&(e=this.state.value,this.next());let s=this.flowParseObjectTypeProperty(l,t,n,c,e,r,i??!u);null===s?(p=!0,o=this.state.lastTokStartLoc):a.properties.push(s)}this.flowObjectTypeSemicolon(),o&&!this.match(8)&&!this.match(9)&&this.raise(it.UnexpectedExplicitInexactInObject,o)}this.expect(o),r&&(a.inexact=p);let l=this.finishNode(a,"ObjectTypeAnnotation");return this.state.inType=n,l}flowParseObjectTypeProperty(e,t,r,s,i,n,a){if(this.eat(21))return this.match(12)||this.match(13)||this.match(8)||this.match(9)?(n?a||this.raise(it.InexactInsideExact,this.state.lastTokStartLoc):this.raise(it.InexactInsideNonObject,this.state.lastTokStartLoc),s&&this.raise(it.InexactVariance,s),null):(n||this.raise(it.UnexpectedSpreadType,this.state.lastTokStartLoc),null!=r&&this.unexpected(r),s&&this.raise(it.SpreadVariance,s),e.argument=this.flowParseType(),this.finishNode(e,"ObjectTypeSpreadProperty"));{e.key=this.flowParseObjectPropertyKey(),e.static=t,e.proto=null!=r,e.kind=i;let a=!1;return this.match(47)||this.match(10)?(e.method=!0,null!=r&&this.unexpected(r),s&&this.unexpected(s.loc.start),e.value=this.flowParseObjectTypeMethodish(this.startNodeAt(e.loc.start)),("get"===i||"set"===i)&&this.flowCheckGetterSetterParams(e),!n&&"constructor"===e.key.name&&e.value.this&&this.raise(it.ThisParamBannedInConstructor,e.value.this)):("init"!==i&&this.unexpected(),e.method=!1,this.eat(17)&&(a=!0),e.value=this.flowParseTypeInitialiser(),e.variance=s),e.optional=a,this.finishNode(e,"ObjectTypeProperty")}}flowCheckGetterSetterParams(e){let t="get"===e.kind?0:1,r=e.value.params.length+(e.value.rest?1:0);e.value.this&&this.raise("get"===e.kind?it.GetterMayNotHaveThisParam:it.SetterMayNotHaveThisParam,e.value.this),r!==t&&this.raise("get"===e.kind?D.BadGetterArity:D.BadSetterArity,e),"set"===e.kind&&e.value.rest&&this.raise(D.BadSetterRestParameter,e)}flowObjectTypeSemicolon(){!this.eat(13)&&!this.eat(12)&&!this.match(8)&&!this.match(9)&&this.unexpected()}flowParseQualifiedTypeIdentifier(e,t){e??=this.state.startLoc;let r=t||this.flowParseRestrictedIdentifier(!0);for(;this.eat(16);){let t=this.startNodeAt(e);t.qualification=r,t.id=this.flowParseRestrictedIdentifier(!0),r=this.finishNode(t,"QualifiedTypeIdentifier")}return r}flowParseGenericType(e,t){let r=this.startNodeAt(e);return r.typeParameters=null,r.id=this.flowParseQualifiedTypeIdentifier(e,t),this.match(47)&&(r.typeParameters=this.flowParseTypeParameterInstantiation()),this.finishNode(r,"GenericTypeAnnotation")}flowParseTypeofType(){let e=this.startNode();return this.expect(87),e.argument=this.flowParsePrimaryType(),this.finishNode(e,"TypeofTypeAnnotation")}flowParseTupleType(){let e=this.startNode();for(e.types=[],this.expect(0);this.state.pos<this.length&&!this.match(3)&&(e.types.push(this.flowParseType()),!this.match(3));)this.expect(12);return this.expect(3),this.finishNode(e,"TupleTypeAnnotation")}flowParseFunctionTypeParam(e){let t=null,r=!1,s=null,i=this.startNode(),n=this.lookahead(),a=78===this.state.type;return 14===n.type||17===n.type?(a&&!e&&this.raise(it.ThisParamMustBeFirst,i),t=this.parseIdentifier(a),this.eat(17)&&(r=!0,a&&this.raise(it.ThisParamMayNotBeOptional,i)),s=this.flowParseTypeInitialiser()):s=this.flowParseType(),i.name=t,i.optional=r,i.typeAnnotation=s,this.finishNode(i,"FunctionTypeParam")}reinterpretTypeAsFunctionTypeParam(e){let t=this.startNodeAt(e.loc.start);return t.name=null,t.optional=!1,t.typeAnnotation=e,this.finishNode(t,"FunctionTypeParam")}flowParseFunctionTypeParams(e=[]){let t=null,r=null;for(this.match(78)&&(r=this.flowParseFunctionTypeParam(!0),r.name=null,this.match(11)||this.expect(12));!this.match(11)&&!this.match(21);)e.push(this.flowParseFunctionTypeParam(!1)),this.match(11)||this.expect(12);return this.eat(21)&&(t=this.flowParseFunctionTypeParam(!1)),{params:e,rest:t,_this:r}}flowIdentToTypeAnnotation(e,t,r){switch(r.name){case"any":return this.finishNode(t,"AnyTypeAnnotation");case"bool":case"boolean":return this.finishNode(t,"BooleanTypeAnnotation");case"mixed":return this.finishNode(t,"MixedTypeAnnotation");case"empty":return this.finishNode(t,"EmptyTypeAnnotation");case"number":return this.finishNode(t,"NumberTypeAnnotation");case"string":return this.finishNode(t,"StringTypeAnnotation");case"symbol":return this.finishNode(t,"SymbolTypeAnnotation");default:return this.checkNotUnderscore(r.name),this.flowParseGenericType(e,r)}}flowParsePrimaryType(){let e,t,r=this.state.startLoc,s=this.startNode(),i=!1,n=this.state.noAnonFunctionType;switch(this.state.type){case 5:return this.flowParseObjectType({allowStatic:!1,allowExact:!1,allowSpread:!0,allowProto:!1,allowInexact:!0});case 6:return this.flowParseObjectType({allowStatic:!1,allowExact:!0,allowSpread:!0,allowProto:!1,allowInexact:!1});case 0:return this.state.noAnonFunctionType=!1,t=this.flowParseTupleType(),this.state.noAnonFunctionType=n,t;case 47:{let t=this.startNode();return t.typeParameters=this.flowParseTypeParameterDeclaration(),this.expect(10),e=this.flowParseFunctionTypeParams(),t.params=e.params,t.rest=e.rest,t.this=e._this,this.expect(11),this.expect(19),t.returnType=this.flowParseType(),this.finishNode(t,"FunctionTypeAnnotation")}case 10:{let r=this.startNode();if(this.next(),!this.match(11)&&!this.match(21))if(q(this.state.type)||this.match(78)){let e=this.lookahead().type;i=17!==e&&14!==e}else i=!0;if(i){if(this.state.noAnonFunctionType=!1,t=this.flowParseType(),this.state.noAnonFunctionType=n,this.state.noAnonFunctionType||!(this.match(12)||this.match(11)&&19===this.lookahead().type))return this.expect(11),t;this.eat(12)}return e=t?this.flowParseFunctionTypeParams([this.reinterpretTypeAsFunctionTypeParam(t)]):this.flowParseFunctionTypeParams(),r.params=e.params,r.rest=e.rest,r.this=e._this,this.expect(11),this.expect(19),r.returnType=this.flowParseType(),r.typeParameters=null,this.finishNode(r,"FunctionTypeAnnotation")}case 133:return this.parseLiteral(this.state.value,"StringLiteralTypeAnnotation");case 85:case 86:return s.value=this.match(85),this.next(),this.finishNode(s,"BooleanLiteralTypeAnnotation");case 53:if("-"===this.state.value){if(this.next(),this.match(134))return this.parseLiteralAtNode(-this.state.value,"NumberLiteralTypeAnnotation",s);if(this.match(135))return this.parseLiteralAtNode(-this.state.value,"BigIntLiteralTypeAnnotation",s);throw this.raise(it.UnexpectedSubtractionOperand,this.state.startLoc)}return void this.unexpected();case 134:return this.parseLiteral(this.state.value,"NumberLiteralTypeAnnotation");case 135:return this.parseLiteral(this.state.value,"BigIntLiteralTypeAnnotation");case 88:return this.next(),this.finishNode(s,"VoidTypeAnnotation");case 84:return this.next(),this.finishNode(s,"NullLiteralTypeAnnotation");case 78:return this.next(),this.finishNode(s,"ThisTypeAnnotation");case 55:return this.next(),this.finishNode(s,"ExistsTypeAnnotation");case 87:return this.flowParseTypeofType();default:if(W(this.state.type)){let e=K(this.state.type);return this.next(),super.createIdentifier(s,e)}if(q(this.state.type))return this.isContextual(129)?this.flowParseInterfaceType():this.flowIdentToTypeAnnotation(r,s,this.parseIdentifier())}this.unexpected()}flowParsePostfixType(){let e=this.state.startLoc,t=this.flowParsePrimaryType(),r=!1;for(;(this.match(0)||this.match(18))&&!this.canInsertSemicolon();){let s=this.startNodeAt(e),i=this.eat(18);r=r||i,this.expect(0),!i&&this.match(3)?(s.elementType=t,this.next(),t=this.finishNode(s,"ArrayTypeAnnotation")):(s.objectType=t,s.indexType=this.flowParseType(),this.expect(3),r?(s.optional=i,t=this.finishNode(s,"OptionalIndexedAccessType")):t=this.finishNode(s,"IndexedAccessType"))}return t}flowParsePrefixType(){let e=this.startNode();return this.eat(17)?(e.typeAnnotation=this.flowParsePrefixType(),this.finishNode(e,"NullableTypeAnnotation")):this.flowParsePostfixType()}flowParseAnonFunctionWithoutParens(){let e=this.flowParsePrefixType();if(!this.state.noAnonFunctionType&&this.eat(19)){let t=this.startNodeAt(e.loc.start);return t.params=[this.reinterpretTypeAsFunctionTypeParam(e)],t.rest=null,t.this=null,t.returnType=this.flowParseType(),t.typeParameters=null,this.finishNode(t,"FunctionTypeAnnotation")}return e}flowParseIntersectionType(){let e=this.startNode();this.eat(45);let t=this.flowParseAnonFunctionWithoutParens();for(e.types=[t];this.eat(45);)e.types.push(this.flowParseAnonFunctionWithoutParens());return 1===e.types.length?t:this.finishNode(e,"IntersectionTypeAnnotation")}flowParseUnionType(){let e=this.startNode();this.eat(43);let t=this.flowParseIntersectionType();for(e.types=[t];this.eat(43);)e.types.push(this.flowParseIntersectionType());return 1===e.types.length?t:this.finishNode(e,"UnionTypeAnnotation")}flowParseType(){let e=this.state.inType;this.state.inType=!0;let t=this.flowParseUnionType();return this.state.inType=e,t}flowParseTypeOrImplicitInstantiation(){if(132===this.state.type&&"_"===this.state.value){let e=this.state.startLoc,t=this.parseIdentifier();return this.flowParseGenericType(e,t)}return this.flowParseType()}flowParseTypeAnnotation(){let e=this.startNode();return e.typeAnnotation=this.flowParseTypeInitialiser(),this.finishNode(e,"TypeAnnotation")}flowParseTypeAnnotatableIdentifier(e){let t=e?this.parseIdentifier():this.flowParseRestrictedIdentifier();return this.match(14)&&(t.typeAnnotation=this.flowParseTypeAnnotation(),this.resetEndLocation(t)),t}typeCastToParameter(e){return e.expression.typeAnnotation=e.typeAnnotation,this.resetEndLocation(e.expression,e.typeAnnotation.loc.end),e.expression}flowParseVariance(){let e=null;return this.match(53)?(e=this.startNode(),"+"===this.state.value?e.kind="plus":e.kind="minus",this.next(),this.finishNode(e,"Variance")):e}parseFunctionBody(e,t,r=!1){t?this.forwardNoArrowParamsConversionAt(e,(()=>super.parseFunctionBody(e,!0,r))):super.parseFunctionBody(e,!1,r)}parseFunctionBodyAndFinish(e,t,r=!1){if(this.match(14)){let t=this.startNode();[t.typeAnnotation,e.predicate]=this.flowParseTypeAndPredicateInitialiser(),e.returnType=t.typeAnnotation?this.finishNode(t,"TypeAnnotation"):null}return super.parseFunctionBodyAndFinish(e,t,r)}parseStatementLike(e){if(this.state.strict&&this.isContextual(129)){if(J(this.lookahead().type)){let e=this.startNode();return this.next(),this.flowParseInterface(e)}}else if(this.shouldParseEnums()&&this.isContextual(126)){let e=this.startNode();return this.next(),this.flowParseEnumDeclaration(e)}let t=super.parseStatementLike(e);return void 0===this.flowPragma&&!this.isValidDirective(t)&&(this.flowPragma=null),t}parseExpressionStatement(e,t,r){if("Identifier"===t.type)if("declare"===t.name){if(this.match(80)||q(this.state.type)||this.match(68)||this.match(74)||this.match(82))return this.flowParseDeclare(e)}else if(q(this.state.type)){if("interface"===t.name)return this.flowParseInterface(e);if("type"===t.name)return this.flowParseTypeAlias(e);if("opaque"===t.name)return this.flowParseOpaqueType(e,!1)}return super.parseExpressionStatement(e,t,r)}shouldParseExportDeclaration(){let{type:e}=this.state;return H(e)||this.shouldParseEnums()&&126===e?!this.state.containsEsc:super.shouldParseExportDeclaration()}isExportDefaultSpecifier(){let{type:e}=this.state;return H(e)||this.shouldParseEnums()&&126===e?this.state.containsEsc:super.isExportDefaultSpecifier()}parseExportDefaultExpression(){if(this.shouldParseEnums()&&this.isContextual(126)){let e=this.startNode();return this.next(),this.flowParseEnumDeclaration(e)}return super.parseExportDefaultExpression()}parseConditional(e,t,r){if(!this.match(17))return e;if(this.state.maybeInArrowParameters){let t=this.lookaheadCharCode();if(44===t||61===t||58===t||41===t)return this.setOptionalParametersError(r),e}this.expect(17);let s=this.state.clone(),i=this.state.noArrowAt,n=this.startNodeAt(t),{consequent:a,failed:o}=this.tryParseConditionalConsequent(),[u,p]=this.getArrowLikeExpressions(a);if(o||p.length>0){let e=[...i];if(p.length>0){this.state=s,this.state.noArrowAt=e;for(let t=0;t<p.length;t++)e.push(p[t].start);({consequent:a,failed:o}=this.tryParseConditionalConsequent()),[u,p]=this.getArrowLikeExpressions(a)}o&&u.length>1&&this.raise(it.AmbiguousConditionalArrow,s.startLoc),o&&1===u.length&&(this.state=s,e.push(u[0].start),this.state.noArrowAt=e,({consequent:a,failed:o}=this.tryParseConditionalConsequent()))}return this.getArrowLikeExpressions(a,!0),this.state.noArrowAt=i,this.expect(14),n.test=e,n.consequent=a,n.alternate=this.forwardNoArrowParamsConversionAt(n,(()=>this.parseMaybeAssign(void 0,void 0))),this.finishNode(n,"ConditionalExpression")}tryParseConditionalConsequent(){this.state.noArrowParamsConversionAt.push(this.state.start);let e=this.parseMaybeAssignAllowIn(),t=!this.match(14);return this.state.noArrowParamsConversionAt.pop(),{consequent:e,failed:t}}getArrowLikeExpressions(e,t){let r=[e],s=[];for(;0!==r.length;){let e=r.pop();"ArrowFunctionExpression"===e.type&&"BlockStatement"!==e.body.type?(e.typeParameters||!e.returnType?this.finishArrowValidation(e):s.push(e),r.push(e.body)):"ConditionalExpression"===e.type&&(r.push(e.consequent),r.push(e.alternate))}return t?(s.forEach((e=>this.finishArrowValidation(e))),[s,[]]):function(e,t){let r=[],s=[];for(let i=0;i<e.length;i++)(t(e[i],i,e)?r:s).push(e[i]);return[r,s]}(s,(e=>e.params.every((e=>this.isAssignable(e,!0)))))}finishArrowValidation(e){var t;this.toAssignableList(e.params,null==(t=e.extra)?void 0:t.trailingCommaLoc,!1),this.scope.enter(6),super.checkParams(e,!1,!0),this.scope.exit()}forwardNoArrowParamsConversionAt(e,t){let r;return this.state.noArrowParamsConversionAt.includes(e.start)?(this.state.noArrowParamsConversionAt.push(this.state.start),r=t(),this.state.noArrowParamsConversionAt.pop()):r=t(),r}parseParenItem(e,t){let r=super.parseParenItem(e,t);if(this.eat(17)&&(r.optional=!0,this.resetEndLocation(e)),this.match(14)){let e=this.startNodeAt(t);return e.expression=r,e.typeAnnotation=this.flowParseTypeAnnotation(),this.finishNode(e,"TypeCastExpression")}return r}assertModuleNodeAllowed(e){"ImportDeclaration"===e.type&&("type"===e.importKind||"typeof"===e.importKind)||"ExportNamedDeclaration"===e.type&&"type"===e.exportKind||"ExportAllDeclaration"===e.type&&"type"===e.exportKind||super.assertModuleNodeAllowed(e)}parseExportDeclaration(e){if(this.isContextual(130)){e.exportKind="type";let t=this.startNode();return this.next(),this.match(5)?(e.specifiers=this.parseExportSpecifiers(!0),super.parseExportFrom(e),null):this.flowParseTypeAlias(t)}if(this.isContextual(131)){e.exportKind="type";let t=this.startNode();return this.next(),this.flowParseOpaqueType(t,!1)}if(this.isContextual(129)){e.exportKind="type";let t=this.startNode();return this.next(),this.flowParseInterface(t)}if(this.shouldParseEnums()&&this.isContextual(126)){e.exportKind="value";let t=this.startNode();return this.next(),this.flowParseEnumDeclaration(t)}return super.parseExportDeclaration(e)}eatExportStar(e){return!!super.eatExportStar(e)||!(!this.isContextual(130)||55!==this.lookahead().type)&&(e.exportKind="type",this.next(),this.next(),!0)}maybeParseExportNamespaceSpecifier(e){let{startLoc:t}=this.state,r=super.maybeParseExportNamespaceSpecifier(e);return r&&"type"===e.exportKind&&this.unexpected(t),r}parseClassId(e,t,r){super.parseClassId(e,t,r),this.match(47)&&(e.typeParameters=this.flowParseTypeParameterDeclaration())}parseClassMember(e,t,r){let{startLoc:s}=this.state;if(this.isContextual(125)){if(super.parseClassMemberFromModifier(e,t))return;t.declare=!0}super.parseClassMember(e,t,r),t.declare&&("ClassProperty"!==t.type&&"ClassPrivateProperty"!==t.type&&"PropertyDefinition"!==t.type?this.raise(it.DeclareClassElement,s):t.value&&this.raise(it.DeclareClassFieldInitializer,t.value))}isIterator(e){return"iterator"===e||"asyncIterator"===e}readIterator(){let e=super.readWord1(),t="@@"+e;(!this.isIterator(e)||!this.state.inType)&&this.raise(D.InvalidIdentifier,this.state.curPosition(),{identifierName:t}),this.finishToken(132,t)}getTokenFromCode(e){let t=this.input.charCodeAt(this.state.pos+1);123===e&&124===t?this.finishOp(6,2):!this.state.inType||62!==e&&60!==e?this.state.inType&&63===e?46===t?this.finishOp(18,2):this.finishOp(17,1):function(e,t,r){return 64===e&&64===t&&ne(r)}(e,t,this.input.charCodeAt(this.state.pos+2))?(this.state.pos+=2,this.readIterator()):super.getTokenFromCode(e):this.finishOp(62===e?48:47,1)}isAssignable(e,t){return"TypeCastExpression"===e.type?this.isAssignable(e.expression,t):super.isAssignable(e,t)}toAssignable(e,t=!1){!t&&"AssignmentExpression"===e.type&&"TypeCastExpression"===e.left.type&&(e.left=this.typeCastToParameter(e.left)),super.toAssignable(e,t)}toAssignableList(e,t,r){for(let s=0;s<e.length;s++){let t=e[s];"TypeCastExpression"===(null==t?void 0:t.type)&&(e[s]=this.typeCastToParameter(t))}super.toAssignableList(e,t,r)}toReferencedList(e,t){for(let s=0;s<e.length;s++){var r;let i=e[s];i&&"TypeCastExpression"===i.type&&(null==(r=i.extra)||!r.parenthesized)&&(e.length>1||!t)&&this.raise(it.TypeCastInPattern,i.typeAnnotation)}return e}parseArrayLike(e,t,r,s){let i=super.parseArrayLike(e,t,r,s);return t&&!this.state.maybeInArrowParameters&&this.toReferencedList(i.elements),i}isValidLVal(e,t,r){return"TypeCastExpression"===e||super.isValidLVal(e,t,r)}parseClassProperty(e){return this.match(14)&&(e.typeAnnotation=this.flowParseTypeAnnotation()),super.parseClassProperty(e)}parseClassPrivateProperty(e){return this.match(14)&&(e.typeAnnotation=this.flowParseTypeAnnotation()),super.parseClassPrivateProperty(e)}isClassMethod(){return this.match(47)||super.isClassMethod()}isClassProperty(){return this.match(14)||super.isClassProperty()}isNonstaticConstructor(e){return!this.match(14)&&super.isNonstaticConstructor(e)}pushClassMethod(e,t,r,s,i,n){if(t.variance&&this.unexpected(t.variance.loc.start),delete t.variance,this.match(47)&&(t.typeParameters=this.flowParseTypeParameterDeclaration()),super.pushClassMethod(e,t,r,s,i,n),t.params&&i){let e=t.params;e.length>0&&this.isThisParam(e[0])&&this.raise(it.ThisParamBannedInConstructor,t)}else if("MethodDefinition"===t.type&&i&&t.value.params){let e=t.value.params;e.length>0&&this.isThisParam(e[0])&&this.raise(it.ThisParamBannedInConstructor,t)}}pushClassPrivateMethod(e,t,r,s){t.variance&&this.unexpected(t.variance.loc.start),delete t.variance,this.match(47)&&(t.typeParameters=this.flowParseTypeParameterDeclaration()),super.pushClassPrivateMethod(e,t,r,s)}parseClassSuper(e){if(super.parseClassSuper(e),e.superClass&&this.match(47)&&(e.superTypeParameters=this.flowParseTypeParameterInstantiation()),this.isContextual(113)){this.next();let t=e.implements=[];do{let e=this.startNode();e.id=this.flowParseRestrictedIdentifier(!0),this.match(47)?e.typeParameters=this.flowParseTypeParameterInstantiation():e.typeParameters=null,t.push(this.finishNode(e,"ClassImplements"))}while(this.eat(12))}}checkGetterSetterParams(e){super.checkGetterSetterParams(e);let t=this.getObjectOrClassMethodParams(e);if(t.length>0){let r=t[0];this.isThisParam(r)&&"get"===e.kind?this.raise(it.GetterMayNotHaveThisParam,r):this.isThisParam(r)&&this.raise(it.SetterMayNotHaveThisParam,r)}}parsePropertyNamePrefixOperator(e){e.variance=this.flowParseVariance()}parseObjPropValue(e,t,r,s,i,n,a){let o;e.variance&&this.unexpected(e.variance.loc.start),delete e.variance,this.match(47)&&!n&&(o=this.flowParseTypeParameterDeclaration(),this.match(10)||this.unexpected());let u=super.parseObjPropValue(e,t,r,s,i,n,a);return o&&((u.value||u).typeParameters=o),u}parseAssignableListItemTypes(e){return this.eat(17)&&("Identifier"!==e.type&&this.raise(it.PatternIsOptional,e),this.isThisParam(e)&&this.raise(it.ThisParamMayNotBeOptional,e),e.optional=!0),this.match(14)?e.typeAnnotation=this.flowParseTypeAnnotation():this.isThisParam(e)&&this.raise(it.ThisParamAnnotationRequired,e),this.match(29)&&this.isThisParam(e)&&this.raise(it.ThisParamNoDefault,e),this.resetEndLocation(e),e}parseMaybeDefault(e,t){let r=super.parseMaybeDefault(e,t);return"AssignmentPattern"===r.type&&r.typeAnnotation&&r.right.start<r.typeAnnotation.start&&this.raise(it.TypeBeforeInitializer,r.typeAnnotation),r}checkImportReflection(e){super.checkImportReflection(e),e.module&&"value"!==e.importKind&&this.raise(it.ImportReflectionHasImportType,e.specifiers[0].loc.start)}parseImportSpecifierLocal(e,t,r){t.local=nt(e)?this.flowParseRestrictedIdentifier(!0,!0):this.parseIdentifier(),e.specifiers.push(this.finishImportSpecifier(t,r))}isPotentialImportPhase(e){if(super.isPotentialImportPhase(e))return!0;if(this.isContextual(130)){if(!e)return!0;let t=this.lookaheadCharCode();return 123===t||42===t}return!e&&this.isContextual(87)}applyImportPhase(e,t,r,s){if(super.applyImportPhase(e,t,r,s),t){if(!r&&this.match(65))return;e.exportKind="type"===r?r:"value"}else"type"===r&&this.match(55)&&this.unexpected(),e.importKind="type"===r||"typeof"===r?r:"value"}parseImportSpecifier(e,t,r,s,i){let n=e.imported,a=null;"Identifier"===n.type&&("type"===n.name?a="type":"typeof"===n.name&&(a="typeof"));let o=!1;if(this.isContextual(93)&&!this.isLookaheadContextual("as")){let t=this.parseIdentifier(!0);null===a||J(this.state.type)?(e.imported=n,e.importKind=null,e.local=this.parseIdentifier()):(e.imported=t,e.importKind=a,e.local=et(t))}else{if(null!==a&&J(this.state.type))e.imported=this.parseIdentifier(!0),e.importKind=a;else{if(t)throw this.raise(D.ImportBindingIsString,e,{importName:n.value});e.imported=n,e.importKind=null}this.eatContextual(93)?e.local=this.parseIdentifier():(o=!0,e.local=et(e.imported))}let u=nt(e);return r&&u&&this.raise(it.ImportTypeShorthandOnlyInPureImport,e),(r||u)&&this.checkReservedType(e.local.name,e.local.loc.start,!0),o&&!r&&!u&&this.checkReservedWord(e.local.name,e.loc.start,!0,!0),this.finishImportSpecifier(e,"ImportSpecifier")}parseBindingAtom(){return 78===this.state.type?this.parseIdentifier(!0):super.parseBindingAtom()}parseFunctionParams(e,t){let r=e.kind;"get"!==r&&"set"!==r&&this.match(47)&&(e.typeParameters=this.flowParseTypeParameterDeclaration()),super.parseFunctionParams(e,t)}parseVarId(e,t){super.parseVarId(e,t),this.match(14)&&(e.id.typeAnnotation=this.flowParseTypeAnnotation(),this.resetEndLocation(e.id))}parseAsyncArrowFromCallExpression(e,t){if(this.match(14)){let t=this.state.noAnonFunctionType;this.state.noAnonFunctionType=!0,e.returnType=this.flowParseTypeAnnotation(),this.state.noAnonFunctionType=t}return super.parseAsyncArrowFromCallExpression(e,t)}shouldParseAsyncArrow(){return this.match(14)||super.shouldParseAsyncArrow()}parseMaybeAssign(e,t){var r;let s,i=null;if(this.hasPlugin("jsx")&&(this.match(142)||this.match(47))){if(i=this.state.clone(),s=this.tryParse((()=>super.parseMaybeAssign(e,t)),i),!s.error)return s.node;let{context:r}=this.state,n=r[r.length-1];(n===T.j_oTag||n===T.j_expr)&&r.pop()}if(null!=(r=s)&&r.error||this.match(47)){var n,a;i=i||this.state.clone();let r,o=this.tryParse((s=>{var i;r=this.flowParseTypeParameterDeclaration();let n=this.forwardNoArrowParamsConversionAt(r,(()=>{let s=super.parseMaybeAssign(e,t);return this.resetStartLocationFromNode(s,r),s}));null!=(i=n.extra)&&i.parenthesized&&s();let a=this.maybeUnwrapTypeCastExpression(n);return"ArrowFunctionExpression"!==a.type&&s(),a.typeParameters=r,this.resetStartLocationFromNode(a,r),n}),i),u=null;if(o.node&&"ArrowFunctionExpression"===this.maybeUnwrapTypeCastExpression(o.node).type){if(!o.error&&!o.aborted)return o.node.async&&this.raise(it.UnexpectedTypeParameterBeforeAsyncArrowFunction,r),o.node;u=o.node}if(null!=(n=s)&&n.node)return this.state=s.failState,s.node;if(u)return this.state=o.failState,u;throw null!=(a=s)&&a.thrown?s.error:o.thrown?o.error:this.raise(it.UnexpectedTokenAfterTypeParameter,r)}return super.parseMaybeAssign(e,t)}parseArrow(e){if(this.match(14)){let t=this.tryParse((()=>{let t=this.state.noAnonFunctionType;this.state.noAnonFunctionType=!0;let r=this.startNode();return[r.typeAnnotation,e.predicate]=this.flowParseTypeAndPredicateInitialiser(),this.state.noAnonFunctionType=t,this.canInsertSemicolon()&&this.unexpected(),this.match(19)||this.unexpected(),r}));if(t.thrown)return null;t.error&&(this.state=t.failState),e.returnType=t.node.typeAnnotation?this.finishNode(t.node,"TypeAnnotation"):null}return super.parseArrow(e)}shouldParseArrow(e){return this.match(14)||super.shouldParseArrow(e)}setArrowFunctionParameters(e,t){this.state.noArrowParamsConversionAt.includes(e.start)?e.params=t:super.setArrowFunctionParameters(e,t)}checkParams(e,t,r,s=!0){if(!r||!this.state.noArrowParamsConversionAt.includes(e.start)){for(let t=0;t<e.params.length;t++)this.isThisParam(e.params[t])&&t>0&&this.raise(it.ThisParamMustBeFirst,e.params[t]);super.checkParams(e,t,r,s)}}parseParenAndDistinguishExpression(e){return super.parseParenAndDistinguishExpression(e&&!this.state.noArrowAt.includes(this.state.start))}parseSubscripts(e,t,r){if("Identifier"===e.type&&"async"===e.name&&this.state.noArrowAt.includes(t.index)){this.next();let r=this.startNodeAt(t);r.callee=e,r.arguments=super.parseCallExpressionArguments(11,!1),e=this.finishNode(r,"CallExpression")}else if("Identifier"===e.type&&"async"===e.name&&this.match(47)){let s=this.state.clone(),i=this.tryParse((e=>this.parseAsyncArrowWithTypeParameters(t)||e()),s);if(!i.error&&!i.aborted)return i.node;let n=this.tryParse((()=>super.parseSubscripts(e,t,r)),s);if(n.node&&!n.error)return n.node;if(i.node)return this.state=i.failState,i.node;if(n.node)return this.state=n.failState,n.node;throw i.error||n.error}return super.parseSubscripts(e,t,r)}parseSubscript(e,t,r,s){if(this.match(18)&&this.isLookaheadToken_lt()){if(s.optionalChainMember=!0,r)return s.stop=!0,e;this.next();let i=this.startNodeAt(t);return i.callee=e,i.typeArguments=this.flowParseTypeParameterInstantiation(),this.expect(10),i.arguments=this.parseCallExpressionArguments(11,!1),i.optional=!0,this.finishCallExpression(i,!0)}if(!r&&this.shouldParseTypes()&&this.match(47)){let r=this.startNodeAt(t);r.callee=e;let i=this.tryParse((()=>(r.typeArguments=this.flowParseTypeParameterInstantiationCallOrNew(),this.expect(10),r.arguments=super.parseCallExpressionArguments(11,!1),s.optionalChainMember&&(r.optional=!1),this.finishCallExpression(r,s.optionalChainMember))));if(i.node)return i.error&&(this.state=i.failState),i.node}return super.parseSubscript(e,t,r,s)}parseNewCallee(e){super.parseNewCallee(e);let t=null;this.shouldParseTypes()&&this.match(47)&&(t=this.tryParse((()=>this.flowParseTypeParameterInstantiationCallOrNew())).node),e.typeArguments=t}parseAsyncArrowWithTypeParameters(e){let t=this.startNodeAt(e);if(this.parseFunctionParams(t,!1),this.parseArrow(t))return super.parseArrowExpression(t,void 0,!0)}readToken_mult_modulo(e){let t=this.input.charCodeAt(this.state.pos+1);if(42===e&&47===t&&this.state.hasFlowComment)return this.state.hasFlowComment=!1,this.state.pos+=2,void this.nextToken();super.readToken_mult_modulo(e)}readToken_pipe_amp(e){let t=this.input.charCodeAt(this.state.pos+1);124!==e||125!==t?super.readToken_pipe_amp(e):this.finishOp(9,2)}parseTopLevel(e,t){let r=super.parseTopLevel(e,t);return this.state.hasFlowComment&&this.raise(it.UnterminatedFlowComment,this.state.curPosition()),r}skipBlockComment(){if(!this.hasPlugin("flowComments")||!this.skipFlowComment())return super.skipBlockComment(this.state.hasFlowComment?"*-/":"*/");{if(this.state.hasFlowComment)throw this.raise(it.NestedFlowComment,this.state.startLoc);this.hasFlowCommentCompletion();let e=this.skipFlowComment();e&&(this.state.pos+=e,this.state.hasFlowComment=!0)}}skipFlowComment(){let{pos:e}=this.state,t=2;for(;[32,9].includes(this.input.charCodeAt(e+t));)t++;let r=this.input.charCodeAt(t+e),s=this.input.charCodeAt(t+e+1);return 58===r&&58===s?t+2:"flow-include"===this.input.slice(t+e,t+e+12)?t+12:58===r&&58!==s&&t}hasFlowCommentCompletion(){if(-1===this.input.indexOf("*/",this.state.pos))throw this.raise(D.UnterminatedComment,this.state.curPosition())}flowEnumErrorBooleanMemberNotInitialized(e,{enumName:t,memberName:r}){this.raise(it.EnumBooleanMemberNotInitialized,e,{memberName:r,enumName:t})}flowEnumErrorInvalidMemberInitializer(e,t){return this.raise(t.explicitType?"symbol"===t.explicitType?it.EnumInvalidMemberInitializerSymbolType:it.EnumInvalidMemberInitializerPrimaryType:it.EnumInvalidMemberInitializerUnknownType,e,t)}flowEnumErrorNumberMemberNotInitialized(e,t){this.raise(it.EnumNumberMemberNotInitialized,e,t)}flowEnumErrorStringMemberInconsistentlyInitialized(e,t){this.raise(it.EnumStringMemberInconsistentlyInitialized,e,t)}flowEnumMemberInit(){let e=this.state.startLoc,t=()=>this.match(12)||this.match(8);switch(this.state.type){case 134:{let r=this.parseNumericLiteral(this.state.value);return t()?{type:"number",loc:r.loc.start,value:r}:{type:"invalid",loc:e}}case 133:{let r=this.parseStringLiteral(this.state.value);return t()?{type:"string",loc:r.loc.start,value:r}:{type:"invalid",loc:e}}case 85:case 86:{let r=this.parseBooleanLiteral(this.match(85));return t()?{type:"boolean",loc:r.loc.start,value:r}:{type:"invalid",loc:e}}default:return{type:"invalid",loc:e}}}flowEnumMemberRaw(){let e=this.state.startLoc;return{id:this.parseIdentifier(!0),init:this.eat(29)?this.flowEnumMemberInit():{type:"none",loc:e}}}flowEnumCheckExplicitTypeMismatch(e,t,r){let{explicitType:s}=t;null!==s&&s!==r&&this.flowEnumErrorInvalidMemberInitializer(e,t)}flowEnumMembers({enumName:e,explicitType:t}){let r=new Set,s={booleanMembers:[],numberMembers:[],stringMembers:[],defaultedMembers:[]},i=!1;for(;!this.match(8);){if(this.eat(21)){i=!0;break}let n=this.startNode(),{id:a,init:o}=this.flowEnumMemberRaw(),u=a.name;if(""===u)continue;/^[a-z]/.test(u)&&this.raise(it.EnumInvalidMemberName,a,{memberName:u,suggestion:u[0].toUpperCase()+u.slice(1),enumName:e}),r.has(u)&&this.raise(it.EnumDuplicateMemberName,a,{memberName:u,enumName:e}),r.add(u);let p={enumName:e,explicitType:t,memberName:u};switch(n.id=a,o.type){case"boolean":this.flowEnumCheckExplicitTypeMismatch(o.loc,p,"boolean"),n.init=o.value,s.booleanMembers.push(this.finishNode(n,"EnumBooleanMember"));break;case"number":this.flowEnumCheckExplicitTypeMismatch(o.loc,p,"number"),n.init=o.value,s.numberMembers.push(this.finishNode(n,"EnumNumberMember"));break;case"string":this.flowEnumCheckExplicitTypeMismatch(o.loc,p,"string"),n.init=o.value,s.stringMembers.push(this.finishNode(n,"EnumStringMember"));break;case"invalid":throw this.flowEnumErrorInvalidMemberInitializer(o.loc,p);case"none":switch(t){case"boolean":this.flowEnumErrorBooleanMemberNotInitialized(o.loc,p);break;case"number":this.flowEnumErrorNumberMemberNotInitialized(o.loc,p);break;default:s.defaultedMembers.push(this.finishNode(n,"EnumDefaultedMember"))}}this.match(8)||this.expect(12)}return{members:s,hasUnknownMembers:i}}flowEnumStringMembers(e,t,{enumName:r}){if(0===e.length)return t;if(0===t.length)return e;if(t.length>e.length){for(let t of e)this.flowEnumErrorStringMemberInconsistentlyInitialized(t,{enumName:r});return t}for(let s of t)this.flowEnumErrorStringMemberInconsistentlyInitialized(s,{enumName:r});return e}flowEnumParseExplicitType({enumName:e}){if(!this.eatContextual(102))return null;if(!q(this.state.type))throw this.raise(it.EnumInvalidExplicitTypeUnknownSupplied,this.state.startLoc,{enumName:e});let{value:t}=this.state;return this.next(),"boolean"!==t&&"number"!==t&&"string"!==t&&"symbol"!==t&&this.raise(it.EnumInvalidExplicitType,this.state.startLoc,{enumName:e,invalidEnumType:t}),t}flowEnumBody(e,t){let r=t.name,s=t.loc.start,i=this.flowEnumParseExplicitType({enumName:r});this.expect(5);let{members:n,hasUnknownMembers:a}=this.flowEnumMembers({enumName:r,explicitType:i});switch(e.hasUnknownMembers=a,i){case"boolean":return e.explicitType=!0,e.members=n.booleanMembers,this.expect(8),this.finishNode(e,"EnumBooleanBody");case"number":return e.explicitType=!0,e.members=n.numberMembers,this.expect(8),this.finishNode(e,"EnumNumberBody");case"string":return e.explicitType=!0,e.members=this.flowEnumStringMembers(n.stringMembers,n.defaultedMembers,{enumName:r}),this.expect(8),this.finishNode(e,"EnumStringBody");case"symbol":return e.members=n.defaultedMembers,this.expect(8),this.finishNode(e,"EnumSymbolBody");default:{let t=()=>(e.members=[],this.expect(8),this.finishNode(e,"EnumStringBody"));e.explicitType=!1;let i=n.booleanMembers.length,a=n.numberMembers.length,o=n.stringMembers.length,u=n.defaultedMembers.length;if(!(i||a||o||u))return t();if(!i&&!a)return e.members=this.flowEnumStringMembers(n.stringMembers,n.defaultedMembers,{enumName:r}),this.expect(8),this.finishNode(e,"EnumStringBody");if(!a&&!o&&i>=u){for(let e of n.defaultedMembers)this.flowEnumErrorBooleanMemberNotInitialized(e.loc.start,{enumName:r,memberName:e.id.name});return e.members=n.booleanMembers,this.expect(8),this.finishNode(e,"EnumBooleanBody")}if(!i&&!o&&a>=u){for(let e of n.defaultedMembers)this.flowEnumErrorNumberMemberNotInitialized(e.loc.start,{enumName:r,memberName:e.id.name});return e.members=n.numberMembers,this.expect(8),this.finishNode(e,"EnumNumberBody")}return this.raise(it.EnumInconsistentMemberValues,s,{enumName:r}),t()}}}flowParseEnumDeclaration(e){let t=this.parseIdentifier();return e.id=t,e.body=this.flowEnumBody(this.startNode(),t),this.finishNode(e,"EnumDeclaration")}isLookaheadToken_lt(){let e=this.nextTokenStart();if(60===this.input.charCodeAt(e)){let t=this.input.charCodeAt(e+1);return 60!==t&&61!==t}return!1}maybeUnwrapTypeCastExpression(e){return"TypeCastExpression"===e.type?e.expression:e}},typescript:e=>class extends e{constructor(...e){super(...e),this.tsParseInOutModifiers=this.tsParseModifiers.bind(this,{allowedModifiers:["in","out"],disallowedModifiers:["const","public","private","protected","readonly","declare","abstract","override"],errorTemplate:ft.InvalidModifierOnTypeParameter}),this.tsParseConstModifier=this.tsParseModifiers.bind(this,{allowedModifiers:["const"],disallowedModifiers:["in","out"],errorTemplate:ft.InvalidModifierOnTypeParameterPositions}),this.tsParseInOutConstModifiers=this.tsParseModifiers.bind(this,{allowedModifiers:["in","out","const"],disallowedModifiers:["public","private","protected","readonly","declare","abstract","override"],errorTemplate:ft.InvalidModifierOnTypeParameter})}getScopeHandler(){return ht}tsIsIdentifier(){return q(this.state.type)}tsTokenCanFollowModifier(){return(this.match(0)||this.match(5)||this.match(55)||this.match(21)||this.match(138)||this.isLiteralPropertyName())&&!this.hasPrecedingLineBreak()}tsNextTokenCanFollowModifier(){return this.next(),this.tsTokenCanFollowModifier()}tsParseModifier(e,t){if(!q(this.state.type)&&58!==this.state.type&&75!==this.state.type)return;let r=this.state.value;if(e.includes(r)){if(t&&this.tsIsStartOfStaticBlocks())return;if(this.tsTryParse(this.tsNextTokenCanFollowModifier.bind(this)))return r}}tsParseModifiers({allowedModifiers:e,disallowedModifiers:t,stopOnStartOfClassStaticBlock:r,errorTemplate:s=ft.InvalidModifierOnTypeMember},i){let n=(e,t,r,s)=>{t===r&&i[s]&&this.raise(ft.InvalidModifiersOrder,e,{orderedModifiers:[r,s]})},a=(e,t,r,s)=>{(i[r]&&t===s||i[s]&&t===r)&&this.raise(ft.IncompatibleModifiers,e,{modifiers:[r,s]})};for(;;){let{startLoc:o}=this.state,u=this.tsParseModifier(e.concat(t??[]),r);if(!u)break;Dt(u)?i.accessibility?this.raise(ft.DuplicateAccessibilityModifier,o,{modifier:u}):(n(o,u,u,"override"),n(o,u,u,"static"),n(o,u,u,"readonly"),i.accessibility=u):xt(u)?(i[u]&&this.raise(ft.DuplicateModifier,o,{modifier:u}),i[u]=!0,n(o,u,"in","out")):(hasOwnProperty.call(i,u)?this.raise(ft.DuplicateModifier,o,{modifier:u}):(n(o,u,"static","readonly"),n(o,u,"static","override"),n(o,u,"override","readonly"),n(o,u,"abstract","override"),a(o,u,"declare","override"),a(o,u,"static","abstract")),i[u]=!0),null!=t&&t.includes(u)&&this.raise(s,o,{modifier:u})}}tsIsListTerminator(e){switch(e){case"EnumMembers":case"TypeMembers":return this.match(8);case"HeritageClauseElement":return this.match(5);case"TupleElementTypes":return this.match(3);case"TypeParametersOrArguments":return this.match(48)}}tsParseList(e,t){let r=[];for(;!this.tsIsListTerminator(e);)r.push(t());return r}tsParseDelimitedList(e,t,r){return function(e){if(null==e)throw new Error(`Unexpected ${e} value.`);return e}(this.tsParseDelimitedListWorker(e,t,!0,r))}tsParseDelimitedListWorker(e,t,r,s){let i=[],n=-1;for(;!this.tsIsListTerminator(e);){n=-1;let s=t();if(null==s)return;if(i.push(s),!this.eat(12)){if(this.tsIsListTerminator(e))break;return void(r&&this.expect(12))}n=this.state.lastTokStartLoc.index}return s&&(s.value=n),i}tsParseBracketedList(e,t,r,s,i){s||(r?this.expect(0):this.expect(47));let n=this.tsParseDelimitedList(e,t,i);return r?this.expect(3):this.expect(48),n}tsParseImportType(){let e=this.startNode();return this.expect(83),this.expect(10),this.match(133)||this.raise(ft.UnsupportedImportTypeArgument,this.state.startLoc),e.argument=super.parseExprAtom(),(this.hasPlugin("importAttributes")||this.hasPlugin("importAssertions"))&&(e.options=null),this.eat(12)&&(this.expectImportAttributesPlugin(),this.match(11)||(e.options=super.parseMaybeAssignAllowIn(),this.eat(12))),this.expect(11),this.eat(16)&&(e.qualifier=this.tsParseEntityName()),this.match(47)&&(e.typeParameters=this.tsParseTypeArguments()),this.finishNode(e,"TSImportType")}tsParseEntityName(e=!0){let t=this.parseIdentifier(e);for(;this.eat(16);){let r=this.startNodeAtNode(t);r.left=t,r.right=this.parseIdentifier(e),t=this.finishNode(r,"TSQualifiedName")}return t}tsParseTypeReference(){let e=this.startNode();return e.typeName=this.tsParseEntityName(),!this.hasPrecedingLineBreak()&&this.match(47)&&(e.typeParameters=this.tsParseTypeArguments()),this.finishNode(e,"TSTypeReference")}tsParseThisTypePredicate(e){this.next();let t=this.startNodeAtNode(e);return t.parameterName=e,t.typeAnnotation=this.tsParseTypeAnnotation(!1),t.asserts=!1,this.finishNode(t,"TSTypePredicate")}tsParseThisTypeNode(){let e=this.startNode();return this.next(),this.finishNode(e,"TSThisType")}tsParseTypeQuery(){let e=this.startNode();return this.expect(87),this.match(83)?e.exprName=this.tsParseImportType():e.exprName=this.tsParseEntityName(),!this.hasPrecedingLineBreak()&&this.match(47)&&(e.typeParameters=this.tsParseTypeArguments()),this.finishNode(e,"TSTypeQuery")}tsParseTypeParameter(e){let t=this.startNode();return e(t),t.name=this.tsParseTypeParameterName(),t.constraint=this.tsEatThenParseType(81),t.default=this.tsEatThenParseType(29),this.finishNode(t,"TSTypeParameter")}tsTryParseTypeParameters(e){if(this.match(47))return this.tsParseTypeParameters(e)}tsParseTypeParameters(e){let t=this.startNode();this.match(47)||this.match(142)?this.next():this.unexpected();let r={value:-1};return t.params=this.tsParseBracketedList("TypeParametersOrArguments",this.tsParseTypeParameter.bind(this,e),!1,!0,r),0===t.params.length&&this.raise(ft.EmptyTypeParameters,t),-1!==r.value&&this.addExtra(t,"trailingComma",r.value),this.finishNode(t,"TSTypeParameterDeclaration")}tsFillSignature(e,t){let r=19===e,s="typeAnnotation";t.typeParameters=this.tsTryParseTypeParameters(this.tsParseConstModifier),this.expect(10),t.parameters=this.tsParseBindingListForSignature(),(r||this.match(e))&&(t[s]=this.tsParseTypeOrTypePredicateAnnotation(e))}tsParseBindingListForSignature(){let e=super.parseBindingList(11,41,2);for(let t of e){let{type:e}=t;("AssignmentPattern"===e||"TSParameterProperty"===e)&&this.raise(ft.UnsupportedSignatureParameterKind,t,{type:e})}return e}tsParseTypeMemberSemicolon(){!this.eat(12)&&!this.isLineTerminator()&&this.expect(13)}tsParseSignatureMember(e,t){return this.tsFillSignature(14,t),this.tsParseTypeMemberSemicolon(),this.finishNode(t,e)}tsIsUnambiguouslyIndexSignature(){return this.next(),!!q(this.state.type)&&(this.next(),this.match(14))}tsTryParseIndexSignature(e){if(!this.match(0)||!this.tsLookAhead(this.tsIsUnambiguouslyIndexSignature.bind(this)))return;this.expect(0);let t=this.parseIdentifier();t.typeAnnotation=this.tsParseTypeAnnotation(),this.resetEndLocation(t),this.expect(3),e.parameters=[t];let r=this.tsTryParseTypeAnnotation();return r&&(e.typeAnnotation=r),this.tsParseTypeMemberSemicolon(),this.finishNode(e,"TSIndexSignature")}tsParsePropertyOrMethodSignature(e,t){this.eat(17)&&(e.optional=!0);let r=e;if(this.match(10)||this.match(47)){t&&this.raise(ft.ReadonlyForMethodSignature,e);let s=r;s.kind&&this.match(47)&&this.raise(ft.AccesorCannotHaveTypeParameters,this.state.curPosition()),this.tsFillSignature(14,s),this.tsParseTypeMemberSemicolon();let i="parameters",n="typeAnnotation";if("get"===s.kind)s[i].length>0&&(this.raise(D.BadGetterArity,this.state.curPosition()),this.isThisParam(s[i][0])&&this.raise(ft.AccesorCannotDeclareThisParameter,this.state.curPosition()));else if("set"===s.kind){if(1!==s[i].length)this.raise(D.BadSetterArity,this.state.curPosition());else{let e=s[i][0];this.isThisParam(e)&&this.raise(ft.AccesorCannotDeclareThisParameter,this.state.curPosition()),"Identifier"===e.type&&e.optional&&this.raise(ft.SetAccesorCannotHaveOptionalParameter,this.state.curPosition()),"RestElement"===e.type&&this.raise(ft.SetAccesorCannotHaveRestParameter,this.state.curPosition())}s[n]&&this.raise(ft.SetAccesorCannotHaveReturnType,s[n])}else s.kind="method";return this.finishNode(s,"TSMethodSignature")}{let e=r;t&&(e.readonly=!0);let s=this.tsTryParseTypeAnnotation();return s&&(e.typeAnnotation=s),this.tsParseTypeMemberSemicolon(),this.finishNode(e,"TSPropertySignature")}}tsParseTypeMember(){let e=this.startNode();if(this.match(10)||this.match(47))return this.tsParseSignatureMember("TSCallSignatureDeclaration",e);if(this.match(77)){let t=this.startNode();return this.next(),this.match(10)||this.match(47)?this.tsParseSignatureMember("TSConstructSignatureDeclaration",e):(e.key=this.createIdentifier(t,"new"),this.tsParsePropertyOrMethodSignature(e,!1))}return this.tsParseModifiers({allowedModifiers:["readonly"],disallowedModifiers:["declare","abstract","private","protected","public","static","override"]},e),this.tsTryParseIndexSignature(e)||(super.parsePropertyName(e),!e.computed&&"Identifier"===e.key.type&&("get"===e.key.name||"set"===e.key.name)&&this.tsTokenCanFollowModifier()&&(e.kind=e.key.name,super.parsePropertyName(e)),this.tsParsePropertyOrMethodSignature(e,!!e.readonly))}tsParseTypeLiteral(){let e=this.startNode();return e.members=this.tsParseObjectTypeMembers(),this.finishNode(e,"TSTypeLiteral")}tsParseObjectTypeMembers(){this.expect(5);let e=this.tsParseList("TypeMembers",this.tsParseTypeMember.bind(this));return this.expect(8),e}tsIsStartOfMappedType(){return this.next(),this.eat(53)?this.isContextual(122):(this.isContextual(122)&&this.next(),!(!this.match(0)||(this.next(),!this.tsIsIdentifier()))&&(this.next(),this.match(58)))}tsParseMappedTypeParameter(){let e=this.startNode();return e.name=this.tsParseTypeParameterName(),e.constraint=this.tsExpectThenParseType(58),this.finishNode(e,"TSTypeParameter")}tsParseMappedType(){let e=this.startNode();return this.expect(5),this.match(53)?(e.readonly=this.state.value,this.next(),this.expectContextual(122)):this.eatContextual(122)&&(e.readonly=!0),this.expect(0),e.typeParameter=this.tsParseMappedTypeParameter(),e.nameType=this.eatContextual(93)?this.tsParseType():null,this.expect(3),this.match(53)?(e.optional=this.state.value,this.next(),this.expect(17)):this.eat(17)&&(e.optional=!0),e.typeAnnotation=this.tsTryParseType(),this.semicolon(),this.expect(8),this.finishNode(e,"TSMappedType")}tsParseTupleType(){let e=this.startNode();e.elementTypes=this.tsParseBracketedList("TupleElementTypes",this.tsParseTupleElementType.bind(this),!0,!1);let t=!1;return e.elementTypes.forEach((e=>{let{type:r}=e;t&&"TSRestType"!==r&&"TSOptionalType"!==r&&!("TSNamedTupleMember"===r&&e.optional)&&this.raise(ft.OptionalTypeBeforeRequired,e),t||(t="TSNamedTupleMember"===r&&e.optional||"TSOptionalType"===r)})),this.finishNode(e,"TSTupleType")}tsParseTupleElementType(){let e,t,r,s,{startLoc:i}=this.state,n=this.eat(21),a=J(this.state.type)?this.lookaheadCharCode():null;if(58===a)e=!0,r=!1,t=this.parseIdentifier(!0),this.expect(14),s=this.tsParseType();else if(63===a){r=!0;let i=this.state.startLoc,n=this.state.value,a=this.tsParseNonArrayType();58===this.lookaheadCharCode()?(e=!0,t=this.createIdentifier(this.startNodeAt(i),n),this.expect(17),this.expect(14),s=this.tsParseType()):(e=!1,s=a,this.expect(17))}else s=this.tsParseType(),r=this.eat(17),e=this.eat(14);if(e){let e;t?(e=this.startNodeAtNode(t),e.optional=r,e.label=t,e.elementType=s,this.eat(17)&&(e.optional=!0,this.raise(ft.TupleOptionalAfterType,this.state.lastTokStartLoc))):(e=this.startNodeAtNode(s),e.optional=r,this.raise(ft.InvalidTupleMemberLabel,s),e.label=s,e.elementType=this.tsParseType()),s=this.finishNode(e,"TSNamedTupleMember")}else if(r){let e=this.startNodeAtNode(s);e.typeAnnotation=s,s=this.finishNode(e,"TSOptionalType")}if(n){let e=this.startNodeAt(i);e.typeAnnotation=s,s=this.finishNode(e,"TSRestType")}return s}tsParseParenthesizedType(){let e=this.startNode();return this.expect(10),e.typeAnnotation=this.tsParseType(),this.expect(11),this.finishNode(e,"TSParenthesizedType")}tsParseFunctionOrConstructorType(e,t){let r=this.startNode();return"TSConstructorType"===e&&(r.abstract=!!t,t&&this.next(),this.next()),this.tsInAllowConditionalTypesContext((()=>this.tsFillSignature(19,r))),this.finishNode(r,e)}tsParseLiteralTypeNode(){let e=this.startNode();switch(this.state.type){case 134:case 135:case 133:case 85:case 86:e.literal=super.parseExprAtom();break;default:this.unexpected()}return this.finishNode(e,"TSLiteralType")}tsParseTemplateLiteralType(){let e=this.startNode();return e.literal=super.parseTemplate(!1),this.finishNode(e,"TSLiteralType")}parseTemplateSubstitution(){return this.state.inType?this.tsParseType():super.parseTemplateSubstitution()}tsParseThisTypeOrThisTypePredicate(){let e=this.tsParseThisTypeNode();return this.isContextual(116)&&!this.hasPrecedingLineBreak()?this.tsParseThisTypePredicate(e):e}tsParseNonArrayType(){switch(this.state.type){case 133:case 134:case 135:case 85:case 86:return this.tsParseLiteralTypeNode();case 53:if("-"===this.state.value){let e=this.startNode(),t=this.lookahead();return 134!==t.type&&135!==t.type&&this.unexpected(),e.literal=this.parseMaybeUnary(),this.finishNode(e,"TSLiteralType")}break;case 78:return this.tsParseThisTypeOrThisTypePredicate();case 87:return this.tsParseTypeQuery();case 83:return this.tsParseImportType();case 5:return this.tsLookAhead(this.tsIsStartOfMappedType.bind(this))?this.tsParseMappedType():this.tsParseTypeLiteral();case 0:return this.tsParseTupleType();case 10:return this.tsParseParenthesizedType();case 25:case 24:return this.tsParseTemplateLiteralType();default:{let{type:e}=this.state;if(q(e)||88===e||84===e){let t=88===e?"TSVoidKeyword":84===e?"TSNullKeyword":function(e){switch(e){case"any":return"TSAnyKeyword";case"boolean":return"TSBooleanKeyword";case"bigint":return"TSBigIntKeyword";case"never":return"TSNeverKeyword";case"number":return"TSNumberKeyword";case"object":return"TSObjectKeyword";case"string":return"TSStringKeyword";case"symbol":return"TSSymbolKeyword";case"undefined":return"TSUndefinedKeyword";case"unknown":return"TSUnknownKeyword";default:return}}(this.state.value);if(void 0!==t&&46!==this.lookaheadCharCode()){let e=this.startNode();return this.next(),this.finishNode(e,t)}return this.tsParseTypeReference()}}}this.unexpected()}tsParseArrayTypeOrHigher(){let e=this.tsParseNonArrayType();for(;!this.hasPrecedingLineBreak()&&this.eat(0);)if(this.match(3)){let t=this.startNodeAtNode(e);t.elementType=e,this.expect(3),e=this.finishNode(t,"TSArrayType")}else{let t=this.startNodeAtNode(e);t.objectType=e,t.indexType=this.tsParseType(),this.expect(3),e=this.finishNode(t,"TSIndexedAccessType")}return e}tsParseTypeOperator(){let e=this.startNode(),t=this.state.value;return this.next(),e.operator=t,e.typeAnnotation=this.tsParseTypeOperatorOrHigher(),"readonly"===t&&this.tsCheckTypeAnnotationForReadOnly(e),this.finishNode(e,"TSTypeOperator")}tsCheckTypeAnnotationForReadOnly(e){switch(e.typeAnnotation.type){case"TSTupleType":case"TSArrayType":return;default:this.raise(ft.UnexpectedReadonly,e)}}tsParseInferType(){let e=this.startNode();this.expectContextual(115);let t=this.startNode();return t.name=this.tsParseTypeParameterName(),t.constraint=this.tsTryParse((()=>this.tsParseConstraintForInferType())),e.typeParameter=this.finishNode(t,"TSTypeParameter"),this.finishNode(e,"TSInferType")}tsParseConstraintForInferType(){if(this.eat(81)){let e=this.tsInDisallowConditionalTypesContext((()=>this.tsParseType()));if(this.state.inDisallowConditionalTypesContext||!this.match(17))return e}}tsParseTypeOperatorOrHigher(){return function(e){return e>=121&&e<=123}(this.state.type)&&!this.state.containsEsc?this.tsParseTypeOperator():this.isContextual(115)?this.tsParseInferType():this.tsInAllowConditionalTypesContext((()=>this.tsParseArrayTypeOrHigher()))}tsParseUnionOrIntersectionType(e,t,r){let s=this.startNode(),i=this.eat(r),n=[];do{n.push(t())}while(this.eat(r));return 1!==n.length||i?(s.types=n,this.finishNode(s,e)):n[0]}tsParseIntersectionTypeOrHigher(){return this.tsParseUnionOrIntersectionType("TSIntersectionType",this.tsParseTypeOperatorOrHigher.bind(this),45)}tsParseUnionTypeOrHigher(){return this.tsParseUnionOrIntersectionType("TSUnionType",this.tsParseIntersectionTypeOrHigher.bind(this),43)}tsIsStartOfFunctionType(){return!!this.match(47)||this.match(10)&&this.tsLookAhead(this.tsIsUnambiguouslyStartOfFunctionType.bind(this))}tsSkipParameterStart(){if(q(this.state.type)||this.match(78))return this.next(),!0;if(this.match(5)){let{errors:e}=this.state,t=e.length;try{return this.parseObjectLike(8,!0),e.length===t}catch{return!1}}if(this.match(0)){this.next();let{errors:e}=this.state,t=e.length;try{return super.parseBindingList(3,93,1),e.length===t}catch{return!1}}return!1}tsIsUnambiguouslyStartOfFunctionType(){return this.next(),!!(this.match(11)||this.match(21)||this.tsSkipParameterStart()&&(this.match(14)||this.match(12)||this.match(17)||this.match(29)||this.match(11)&&(this.next(),this.match(19))))}tsParseTypeOrTypePredicateAnnotation(e){return this.tsInType((()=>{let t=this.startNode();this.expect(e);let r=this.startNode(),s=!!this.tsTryParse(this.tsParseTypePredicateAsserts.bind(this));if(s&&this.match(78)){let e=this.tsParseThisTypeOrThisTypePredicate();return"TSThisType"===e.type?(r.parameterName=e,r.asserts=!0,r.typeAnnotation=null,e=this.finishNode(r,"TSTypePredicate")):(this.resetStartLocationFromNode(e,r),e.asserts=!0),t.typeAnnotation=e,this.finishNode(t,"TSTypeAnnotation")}let i=this.tsIsIdentifier()&&this.tsTryParse(this.tsParseTypePredicatePrefix.bind(this));if(!i)return s?(r.parameterName=this.parseIdentifier(),r.asserts=s,r.typeAnnotation=null,t.typeAnnotation=this.finishNode(r,"TSTypePredicate"),this.finishNode(t,"TSTypeAnnotation")):this.tsParseTypeAnnotation(!1,t);let n=this.tsParseTypeAnnotation(!1);return r.parameterName=i,r.typeAnnotation=n,r.asserts=s,t.typeAnnotation=this.finishNode(r,"TSTypePredicate"),this.finishNode(t,"TSTypeAnnotation")}))}tsTryParseTypeOrTypePredicateAnnotation(){if(this.match(14))return this.tsParseTypeOrTypePredicateAnnotation(14)}tsTryParseTypeAnnotation(){if(this.match(14))return this.tsParseTypeAnnotation()}tsTryParseType(){return this.tsEatThenParseType(14)}tsParseTypePredicatePrefix(){let e=this.parseIdentifier();if(this.isContextual(116)&&!this.hasPrecedingLineBreak())return this.next(),e}tsParseTypePredicateAsserts(){if(109!==this.state.type)return!1;let e=this.state.containsEsc;return this.next(),!(!q(this.state.type)&&!this.match(78)||(e&&this.raise(D.InvalidEscapedReservedWord,this.state.lastTokStartLoc,{reservedWord:"asserts"}),0))}tsParseTypeAnnotation(e=!0,t=this.startNode()){return this.tsInType((()=>{e&&this.expect(14),t.typeAnnotation=this.tsParseType()})),this.finishNode(t,"TSTypeAnnotation")}tsParseType(){yt(this.state.inType);let e=this.tsParseNonConditionalType();if(this.state.inDisallowConditionalTypesContext||this.hasPrecedingLineBreak()||!this.eat(81))return e;let t=this.startNodeAtNode(e);return t.checkType=e,t.extendsType=this.tsInDisallowConditionalTypesContext((()=>this.tsParseNonConditionalType())),this.expect(17),t.trueType=this.tsInAllowConditionalTypesContext((()=>this.tsParseType())),this.expect(14),t.falseType=this.tsInAllowConditionalTypesContext((()=>this.tsParseType())),this.finishNode(t,"TSConditionalType")}isAbstractConstructorSignature(){return this.isContextual(124)&&77===this.lookahead().type}tsParseNonConditionalType(){return this.tsIsStartOfFunctionType()?this.tsParseFunctionOrConstructorType("TSFunctionType"):this.match(77)?this.tsParseFunctionOrConstructorType("TSConstructorType"):this.isAbstractConstructorSignature()?this.tsParseFunctionOrConstructorType("TSConstructorType",!0):this.tsParseUnionTypeOrHigher()}tsParseTypeAssertion(){this.getPluginOption("typescript","disallowAmbiguousJSXLike")&&this.raise(ft.ReservedTypeAssertion,this.state.startLoc);let e=this.startNode();return e.typeAnnotation=this.tsInType((()=>(this.next(),this.match(75)?this.tsParseTypeReference():this.tsParseType()))),this.expect(48),e.expression=this.parseMaybeUnary(),this.finishNode(e,"TSTypeAssertion")}tsParseHeritageClause(e){let t=this.state.startLoc,r=this.tsParseDelimitedList("HeritageClauseElement",(()=>{let e=this.startNode();return e.expression=this.tsParseEntityName(),this.match(47)&&(e.typeParameters=this.tsParseTypeArguments()),this.finishNode(e,"TSExpressionWithTypeArguments")}));return r.length||this.raise(ft.EmptyHeritageClauseType,t,{token:e}),r}tsParseInterfaceDeclaration(e,t={}){if(this.hasFollowingLineBreak())return null;this.expectContextual(129),t.declare&&(e.declare=!0),q(this.state.type)?(e.id=this.parseIdentifier(),this.checkIdentifier(e.id,130)):(e.id=null,this.raise(ft.MissingInterfaceName,this.state.startLoc)),e.typeParameters=this.tsTryParseTypeParameters(this.tsParseInOutConstModifiers),this.eat(81)&&(e.extends=this.tsParseHeritageClause("extends"));let r=this.startNode();return r.body=this.tsInType(this.tsParseObjectTypeMembers.bind(this)),e.body=this.finishNode(r,"TSInterfaceBody"),this.finishNode(e,"TSInterfaceDeclaration")}tsParseTypeAliasDeclaration(e){return e.id=this.parseIdentifier(),this.checkIdentifier(e.id,2),e.typeAnnotation=this.tsInType((()=>{if(e.typeParameters=this.tsTryParseTypeParameters(this.tsParseInOutModifiers),this.expect(29),this.isContextual(114)&&16!==this.lookahead().type){let e=this.startNode();return this.next(),this.finishNode(e,"TSIntrinsicKeyword")}return this.tsParseType()})),this.semicolon(),this.finishNode(e,"TSTypeAliasDeclaration")}tsInNoContext(e){let t=this.state.context;this.state.context=[t[0]];try{return e()}finally{this.state.context=t}}tsInType(e){let t=this.state.inType;this.state.inType=!0;try{return e()}finally{this.state.inType=t}}tsInDisallowConditionalTypesContext(e){let t=this.state.inDisallowConditionalTypesContext;this.state.inDisallowConditionalTypesContext=!0;try{return e()}finally{this.state.inDisallowConditionalTypesContext=t}}tsInAllowConditionalTypesContext(e){let t=this.state.inDisallowConditionalTypesContext;this.state.inDisallowConditionalTypesContext=!1;try{return e()}finally{this.state.inDisallowConditionalTypesContext=t}}tsEatThenParseType(e){if(this.match(e))return this.tsNextThenParseType()}tsExpectThenParseType(e){return this.tsInType((()=>(this.expect(e),this.tsParseType())))}tsNextThenParseType(){return this.tsInType((()=>(this.next(),this.tsParseType())))}tsParseEnumMember(){let e=this.startNode();return e.id=this.match(133)?super.parseStringLiteral(this.state.value):this.parseIdentifier(!0),this.eat(29)&&(e.initializer=super.parseMaybeAssignAllowIn()),this.finishNode(e,"TSEnumMember")}tsParseEnumDeclaration(e,t={}){return t.const&&(e.const=!0),t.declare&&(e.declare=!0),this.expectContextual(126),e.id=this.parseIdentifier(),this.checkIdentifier(e.id,e.const?8971:8459),this.expect(5),e.members=this.tsParseDelimitedList("EnumMembers",this.tsParseEnumMember.bind(this)),this.expect(8),this.finishNode(e,"TSEnumDeclaration")}tsParseModuleBlock(){let e=this.startNode();return this.scope.enter(0),this.expect(5),super.parseBlockOrModuleBlockBody(e.body=[],void 0,!0,8),this.scope.exit(),this.finishNode(e,"TSModuleBlock")}tsParseModuleOrNamespaceDeclaration(e,t=!1){if(e.id=this.parseIdentifier(),t||this.checkIdentifier(e.id,1024),this.eat(16)){let t=this.startNode();this.tsParseModuleOrNamespaceDeclaration(t,!0),e.body=t}else this.scope.enter(256),this.prodParam.enter(0),e.body=this.tsParseModuleBlock(),this.prodParam.exit(),this.scope.exit();return this.finishNode(e,"TSModuleDeclaration")}tsParseAmbientExternalModuleDeclaration(e){return this.isContextual(112)?(e.global=!0,e.id=this.parseIdentifier()):this.match(133)?e.id=super.parseStringLiteral(this.state.value):this.unexpected(),this.match(5)?(this.scope.enter(256),this.prodParam.enter(0),e.body=this.tsParseModuleBlock(),this.prodParam.exit(),this.scope.exit()):this.semicolon(),this.finishNode(e,"TSModuleDeclaration")}tsParseImportEqualsDeclaration(e,t,r){e.isExport=r||!1,e.id=t||this.parseIdentifier(),this.checkIdentifier(e.id,4096),this.expect(29);let s=this.tsParseModuleReference();return"type"===e.importKind&&"TSExternalModuleReference"!==s.type&&this.raise(ft.ImportAliasHasImportType,s),e.moduleReference=s,this.semicolon(),this.finishNode(e,"TSImportEqualsDeclaration")}tsIsExternalModuleReference(){return this.isContextual(119)&&40===this.lookaheadCharCode()}tsParseModuleReference(){return this.tsIsExternalModuleReference()?this.tsParseExternalModuleReference():this.tsParseEntityName(!1)}tsParseExternalModuleReference(){let e=this.startNode();return this.expectContextual(119),this.expect(10),this.match(133)||this.unexpected(),e.expression=super.parseExprAtom(),this.expect(11),this.sawUnambiguousESM=!0,this.finishNode(e,"TSExternalModuleReference")}tsLookAhead(e){let t=this.state.clone(),r=e();return this.state=t,r}tsTryParseAndCatch(e){let t=this.tryParse((t=>e()||t()));if(!t.aborted&&t.node)return t.error&&(this.state=t.failState),t.node}tsTryParse(e){let t=this.state.clone(),r=e();if(void 0!==r&&!1!==r)return r;this.state=t}tsTryParseDeclare(e){if(this.isLineTerminator())return;let t,r=this.state.type;return this.isContextual(100)&&(r=74,t="let"),this.tsInAmbientContext((()=>{switch(r){case 68:return e.declare=!0,super.parseFunctionStatement(e,!1,!1);case 80:return e.declare=!0,this.parseClass(e,!0,!1);case 126:return this.tsParseEnumDeclaration(e,{declare:!0});case 112:return this.tsParseAmbientExternalModuleDeclaration(e);case 75:case 74:return this.match(75)&&this.isLookaheadContextual("enum")?(this.expect(75),this.tsParseEnumDeclaration(e,{const:!0,declare:!0})):(e.declare=!0,this.parseVarStatement(e,t||this.state.value,!0));case 129:{let t=this.tsParseInterfaceDeclaration(e,{declare:!0});if(t)return t}default:if(q(r))return this.tsParseDeclaration(e,this.state.value,!0,null)}}))}tsTryParseExportDeclaration(){return this.tsParseDeclaration(this.startNode(),this.state.value,!0,null)}tsParseExpressionStatement(e,t,r){switch(t.name){case"declare":{let t=this.tsTryParseDeclare(e);return t&&(t.declare=!0),t}case"global":if(this.match(5)){this.scope.enter(256),this.prodParam.enter(0);let r=e;return r.global=!0,r.id=t,r.body=this.tsParseModuleBlock(),this.scope.exit(),this.prodParam.exit(),this.finishNode(r,"TSModuleDeclaration")}break;default:return this.tsParseDeclaration(e,t.name,!1,r)}}tsParseDeclaration(e,t,r,s){switch(t){case"abstract":if(this.tsCheckLineTerminator(r)&&(this.match(80)||q(this.state.type)))return this.tsParseAbstractDeclaration(e,s);break;case"module":if(this.tsCheckLineTerminator(r)){if(this.match(133))return this.tsParseAmbientExternalModuleDeclaration(e);if(q(this.state.type))return this.tsParseModuleOrNamespaceDeclaration(e)}break;case"namespace":if(this.tsCheckLineTerminator(r)&&q(this.state.type))return this.tsParseModuleOrNamespaceDeclaration(e);break;case"type":if(this.tsCheckLineTerminator(r)&&q(this.state.type))return this.tsParseTypeAliasDeclaration(e)}}tsCheckLineTerminator(e){return e?!this.hasFollowingLineBreak()&&(this.next(),!0):!this.isLineTerminator()}tsTryParseGenericAsyncArrowFunction(e){if(!this.match(47))return;let t=this.state.maybeInArrowParameters;this.state.maybeInArrowParameters=!0;let r=this.tsTryParseAndCatch((()=>{let t=this.startNodeAt(e);return t.typeParameters=this.tsParseTypeParameters(this.tsParseConstModifier),super.parseFunctionParams(t),t.returnType=this.tsTryParseTypeOrTypePredicateAnnotation(),this.expect(19),t}));return this.state.maybeInArrowParameters=t,r?super.parseArrowExpression(r,null,!0):void 0}tsParseTypeArgumentsInExpression(){if(47===this.reScan_lt())return this.tsParseTypeArguments()}tsParseTypeArguments(){let e=this.startNode();return e.params=this.tsInType((()=>this.tsInNoContext((()=>(this.expect(47),this.tsParseDelimitedList("TypeParametersOrArguments",this.tsParseType.bind(this))))))),0===e.params.length?this.raise(ft.EmptyTypeArguments,e):!this.state.inType&&this.curContext()===T.brace&&this.reScan_lt_gt(),this.expect(48),this.finishNode(e,"TSTypeParameterInstantiation")}tsIsDeclarationStart(){return function(e){return e>=124&&e<=130}(this.state.type)}isExportDefaultSpecifier(){return!this.tsIsDeclarationStart()&&super.isExportDefaultSpecifier()}parseAssignableListItem(e,t){let r=this.state.startLoc,s={};this.tsParseModifiers({allowedModifiers:["public","private","protected","override","readonly"]},s);let i=s.accessibility,n=s.override,a=s.readonly;!(4&e)&&(i||a||n)&&this.raise(ft.UnexpectedParameterModifier,r);let o=this.parseMaybeDefault();this.parseAssignableListItemTypes(o,e);let u=this.parseMaybeDefault(o.loc.start,o);if(i||a||n){let e=this.startNodeAt(r);return t.length&&(e.decorators=t),i&&(e.accessibility=i),a&&(e.readonly=a),n&&(e.override=n),"Identifier"!==u.type&&"AssignmentPattern"!==u.type&&this.raise(ft.UnsupportedParameterPropertyKind,e),e.parameter=u,this.finishNode(e,"TSParameterProperty")}return t.length&&(o.decorators=t),u}isSimpleParameter(e){return"TSParameterProperty"===e.type&&super.isSimpleParameter(e.parameter)||super.isSimpleParameter(e)}tsDisallowOptionalPattern(e){for(let t of e.params)"Identifier"!==t.type&&t.optional&&!this.state.isAmbientContext&&this.raise(ft.PatternIsOptional,t)}setArrowFunctionParameters(e,t,r){super.setArrowFunctionParameters(e,t,r),this.tsDisallowOptionalPattern(e)}parseFunctionBodyAndFinish(e,t,r=!1){this.match(14)&&(e.returnType=this.tsParseTypeOrTypePredicateAnnotation(14));let s="FunctionDeclaration"===t?"TSDeclareFunction":"ClassMethod"===t||"ClassPrivateMethod"===t?"TSDeclareMethod":void 0;return s&&!this.match(5)&&this.isLineTerminator()?this.finishNode(e,s):"TSDeclareFunction"===s&&this.state.isAmbientContext&&(this.raise(ft.DeclareFunctionHasImplementation,e),e.declare)?super.parseFunctionBodyAndFinish(e,s,r):(this.tsDisallowOptionalPattern(e),super.parseFunctionBodyAndFinish(e,t,r))}registerFunctionStatementId(e){!e.body&&e.id?this.checkIdentifier(e.id,1024):super.registerFunctionStatementId(e)}tsCheckForInvalidTypeCasts(e){e.forEach((e=>{"TSTypeCastExpression"===(null==e?void 0:e.type)&&this.raise(ft.UnexpectedTypeAnnotation,e.typeAnnotation)}))}toReferencedList(e,t){return this.tsCheckForInvalidTypeCasts(e),e}parseArrayLike(e,t,r,s){let i=super.parseArrayLike(e,t,r,s);return"ArrayExpression"===i.type&&this.tsCheckForInvalidTypeCasts(i.elements),i}parseSubscript(e,t,r,s){if(!this.hasPrecedingLineBreak()&&this.match(35)){this.state.canStartJSXElement=!1,this.next();let r=this.startNodeAt(t);return r.expression=e,this.finishNode(r,"TSNonNullExpression")}let i=!1;if(this.match(18)&&60===this.lookaheadCharCode()){if(r)return s.stop=!0,e;s.optionalChainMember=i=!0,this.next()}if(this.match(47)||this.match(51)){let n,a=this.tsTryParseAndCatch((()=>{if(!r&&this.atPossibleAsyncArrow(e)){let e=this.tsTryParseGenericAsyncArrowFunction(t);if(e)return e}let a=this.tsParseTypeArgumentsInExpression();if(!a)return;if(i&&!this.match(10))return void(n=this.state.curPosition());if(G(this.state.type)){let r=super.parseTaggedTemplateExpression(e,t,s);return r.typeParameters=a,r}if(!r&&this.eat(10)){let r=this.startNodeAt(t);return r.callee=e,r.arguments=this.parseCallExpressionArguments(11,!1),this.tsCheckForInvalidTypeCasts(r.arguments),r.typeParameters=a,s.optionalChainMember&&(r.optional=i),this.finishCallExpression(r,s.optionalChainMember)}let o=this.state.type;if(48===o||52===o||10!==o&&z(o)&&!this.hasPrecedingLineBreak())return;let u=this.startNodeAt(t);return u.expression=e,u.typeParameters=a,this.finishNode(u,"TSInstantiationExpression")}));if(n&&this.unexpected(n,10),a)return"TSInstantiationExpression"===a.type&&(this.match(16)||this.match(18)&&40!==this.lookaheadCharCode())&&this.raise(ft.InvalidPropertyAccessAfterInstantiationExpression,this.state.startLoc),a}return super.parseSubscript(e,t,r,s)}parseNewCallee(e){var t;super.parseNewCallee(e);let{callee:r}=e;"TSInstantiationExpression"===r.type&&(null==(t=r.extra)||!t.parenthesized)&&(e.typeParameters=r.typeParameters,e.callee=r.expression)}parseExprOp(e,t,r){let s;if(X(58)>r&&!this.hasPrecedingLineBreak()&&(this.isContextual(93)||(s=this.isContextual(120)))){let i=this.startNodeAt(t);return i.expression=e,i.typeAnnotation=this.tsInType((()=>(this.next(),this.match(75)?(s&&this.raise(D.UnexpectedKeyword,this.state.startLoc,{keyword:"const"}),this.tsParseTypeReference()):this.tsParseType()))),this.finishNode(i,s?"TSSatisfiesExpression":"TSAsExpression"),this.reScan_lt_gt(),this.parseExprOp(i,t,r)}return super.parseExprOp(e,t,r)}checkReservedWord(e,t,r,s){this.state.isAmbientContext||super.checkReservedWord(e,t,r,s)}checkImportReflection(e){super.checkImportReflection(e),e.module&&"value"!==e.importKind&&this.raise(ft.ImportReflectionHasImportType,e.specifiers[0].loc.start)}checkDuplicateExports(){}isPotentialImportPhase(e){if(super.isPotentialImportPhase(e))return!0;if(this.isContextual(130)){let t=this.lookaheadCharCode();return e?123===t||42===t:61!==t}return!e&&this.isContextual(87)}applyImportPhase(e,t,r,s){super.applyImportPhase(e,t,r,s),t?e.exportKind="type"===r?"type":"value":e.importKind="type"===r||"typeof"===r?r:"value"}parseImport(e){if(this.match(133))return e.importKind="value",super.parseImport(e);let t;if(q(this.state.type)&&61===this.lookaheadCharCode())return e.importKind="value",this.tsParseImportEqualsDeclaration(e);if(this.isContextual(130)){let r=this.parseMaybeImportPhase(e,!1);if(61===this.lookaheadCharCode())return this.tsParseImportEqualsDeclaration(e,r);t=super.parseImportSpecifiersAndAfter(e,r)}else t=super.parseImport(e);return"type"===t.importKind&&t.specifiers.length>1&&"ImportDefaultSpecifier"===t.specifiers[0].type&&this.raise(ft.TypeImportCannotSpecifyDefaultAndNamed,t),t}parseExport(e,t){if(this.match(83)){this.next();let t=e,r=null;return this.isContextual(130)&&this.isPotentialImportPhase(!1)?r=this.parseMaybeImportPhase(t,!1):t.importKind="value",this.tsParseImportEqualsDeclaration(t,r,!0)}if(this.eat(29)){let t=e;return t.expression=super.parseExpression(),this.semicolon(),this.sawUnambiguousESM=!0,this.finishNode(t,"TSExportAssignment")}if(this.eatContextual(93)){let t=e;return this.expectContextual(128),t.id=this.parseIdentifier(),this.semicolon(),this.finishNode(t,"TSNamespaceExportDeclaration")}return super.parseExport(e,t)}isAbstractClass(){return this.isContextual(124)&&80===this.lookahead().type}parseExportDefaultExpression(){if(this.isAbstractClass()){let e=this.startNode();return this.next(),e.abstract=!0,this.parseClass(e,!0,!0)}if(this.match(129)){let e=this.tsParseInterfaceDeclaration(this.startNode());if(e)return e}return super.parseExportDefaultExpression()}parseVarStatement(e,t,r=!1){let{isAmbientContext:s}=this.state,i=super.parseVarStatement(e,t,r||s);if(!s)return i;for(let{id:n,init:a}of i.declarations)a&&("const"!==t||n.typeAnnotation?this.raise(ft.InitializerNotAllowedInAmbientContext,a):Et(a,this.hasPlugin("estree"))||this.raise(ft.ConstInitiailizerMustBeStringOrNumericLiteralOrLiteralEnumReference,a));return i}parseStatementContent(e,t){if(this.match(75)&&this.isLookaheadContextual("enum")){let e=this.startNode();return this.expect(75),this.tsParseEnumDeclaration(e,{const:!0})}if(this.isContextual(126))return this.tsParseEnumDeclaration(this.startNode());if(this.isContextual(129)){let e=this.tsParseInterfaceDeclaration(this.startNode());if(e)return e}return super.parseStatementContent(e,t)}parseAccessModifier(){return this.tsParseModifier(["public","protected","private"])}tsHasSomeModifiers(e,t){return t.some((t=>Dt(t)?e.accessibility===t:!!e[t]))}tsIsStartOfStaticBlocks(){return this.isContextual(106)&&123===this.lookaheadCharCode()}parseClassMember(e,t,r){let s=["declare","private","public","protected","override","abstract","readonly","static"];this.tsParseModifiers({allowedModifiers:s,disallowedModifiers:["in","out"],stopOnStartOfClassStaticBlock:!0,errorTemplate:ft.InvalidModifierOnTypeParameterPositions},t);let i=()=>{this.tsIsStartOfStaticBlocks()?(this.next(),this.next(),this.tsHasSomeModifiers(t,s)&&this.raise(ft.StaticBlockCannotHaveModifier,this.state.curPosition()),super.parseClassStaticBlock(e,t)):this.parseClassMemberWithIsStatic(e,t,r,!!t.static)};t.declare?this.tsInAmbientContext(i):i()}parseClassMemberWithIsStatic(e,t,r,s){let i=this.tsTryParseIndexSignature(t);if(i)return e.body.push(i),t.abstract&&this.raise(ft.IndexSignatureHasAbstract,t),t.accessibility&&this.raise(ft.IndexSignatureHasAccessibility,t,{modifier:t.accessibility}),t.declare&&this.raise(ft.IndexSignatureHasDeclare,t),void(t.override&&this.raise(ft.IndexSignatureHasOverride,t));!this.state.inAbstractClass&&t.abstract&&this.raise(ft.NonAbstractClassHasAbstractMethod,t),t.override&&(r.hadSuperClass||this.raise(ft.OverrideNotInSubClass,t)),super.parseClassMemberWithIsStatic(e,t,r,s)}parsePostMemberNameModifiers(e){this.eat(17)&&(e.optional=!0),e.readonly&&this.match(10)&&this.raise(ft.ClassMethodHasReadonly,e),e.declare&&this.match(10)&&this.raise(ft.ClassMethodHasDeclare,e)}parseExpressionStatement(e,t,r){return("Identifier"===t.type?this.tsParseExpressionStatement(e,t,r):void 0)||super.parseExpressionStatement(e,t,r)}shouldParseExportDeclaration(){return!!this.tsIsDeclarationStart()||super.shouldParseExportDeclaration()}parseConditional(e,t,r){if(!this.state.maybeInArrowParameters||!this.match(17))return super.parseConditional(e,t,r);let s=this.tryParse((()=>super.parseConditional(e,t)));return s.node?(s.error&&(this.state=s.failState),s.node):(s.error&&super.setOptionalParametersError(r,s.error),e)}parseParenItem(e,t){let r=super.parseParenItem(e,t);if(this.eat(17)&&(r.optional=!0,this.resetEndLocation(e)),this.match(14)){let r=this.startNodeAt(t);return r.expression=e,r.typeAnnotation=this.tsParseTypeAnnotation(),this.finishNode(r,"TSTypeCastExpression")}return e}parseExportDeclaration(e){if(!this.state.isAmbientContext&&this.isContextual(125))return this.tsInAmbientContext((()=>this.parseExportDeclaration(e)));let t=this.state.startLoc,r=this.eatContextual(125);if(r&&(this.isContextual(125)||!this.shouldParseExportDeclaration()))throw this.raise(ft.ExpectedAmbientAfterExportDeclare,this.state.startLoc);let s=q(this.state.type)&&this.tsTryParseExportDeclaration()||super.parseExportDeclaration(e);return s?(("TSInterfaceDeclaration"===s.type||"TSTypeAliasDeclaration"===s.type||r)&&(e.exportKind="type"),r&&(this.resetStartLocation(s,t),s.declare=!0),s):null}parseClassId(e,t,r,s){if((!t||r)&&this.isContextual(113))return;super.parseClassId(e,t,r,e.declare?1024:8331);let i=this.tsTryParseTypeParameters(this.tsParseInOutConstModifiers);i&&(e.typeParameters=i)}parseClassPropertyAnnotation(e){e.optional||(this.eat(35)?e.definite=!0:this.eat(17)&&(e.optional=!0));let t=this.tsTryParseTypeAnnotation();t&&(e.typeAnnotation=t)}parseClassProperty(e){if(this.parseClassPropertyAnnotation(e),this.state.isAmbientContext&&!(e.readonly&&!e.typeAnnotation)&&this.match(29)&&this.raise(ft.DeclareClassFieldHasInitializer,this.state.startLoc),e.abstract&&this.match(29)){let{key:t}=e;this.raise(ft.AbstractPropertyHasInitializer,this.state.startLoc,{propertyName:"Identifier"!==t.type||e.computed?`[${this.input.slice(t.start,t.end)}]`:t.name})}return super.parseClassProperty(e)}parseClassPrivateProperty(e){return e.abstract&&this.raise(ft.PrivateElementHasAbstract,e),e.accessibility&&this.raise(ft.PrivateElementHasAccessibility,e,{modifier:e.accessibility}),this.parseClassPropertyAnnotation(e),super.parseClassPrivateProperty(e)}parseClassAccessorProperty(e){return this.parseClassPropertyAnnotation(e),e.optional&&this.raise(ft.AccessorCannotBeOptional,e),super.parseClassAccessorProperty(e)}pushClassMethod(e,t,r,s,i,n){let a=this.tsTryParseTypeParameters(this.tsParseConstModifier);a&&i&&this.raise(ft.ConstructorHasTypeParameters,a);let{declare:o=!1,kind:u}=t;o&&("get"===u||"set"===u)&&this.raise(ft.DeclareAccessor,t,{kind:u}),a&&(t.typeParameters=a),super.pushClassMethod(e,t,r,s,i,n)}pushClassPrivateMethod(e,t,r,s){let i=this.tsTryParseTypeParameters(this.tsParseConstModifier);i&&(t.typeParameters=i),super.pushClassPrivateMethod(e,t,r,s)}declareClassPrivateMethodInScope(e,t){"TSDeclareMethod"!==e.type&&("MethodDefinition"===e.type&&!hasOwnProperty.call(e.value,"body")||super.declareClassPrivateMethodInScope(e,t))}parseClassSuper(e){super.parseClassSuper(e),e.superClass&&(this.match(47)||this.match(51))&&(e.superTypeParameters=this.tsParseTypeArgumentsInExpression()),this.eatContextual(113)&&(e.implements=this.tsParseHeritageClause("implements"))}parseObjPropValue(e,t,r,s,i,n,a){let o=this.tsTryParseTypeParameters(this.tsParseConstModifier);return o&&(e.typeParameters=o),super.parseObjPropValue(e,t,r,s,i,n,a)}parseFunctionParams(e,t){let r=this.tsTryParseTypeParameters(this.tsParseConstModifier);r&&(e.typeParameters=r),super.parseFunctionParams(e,t)}parseVarId(e,t){super.parseVarId(e,t),"Identifier"===e.id.type&&!this.hasPrecedingLineBreak()&&this.eat(35)&&(e.definite=!0);let r=this.tsTryParseTypeAnnotation();r&&(e.id.typeAnnotation=r,this.resetEndLocation(e.id))}parseAsyncArrowFromCallExpression(e,t){return this.match(14)&&(e.returnType=this.tsParseTypeAnnotation()),super.parseAsyncArrowFromCallExpression(e,t)}parseMaybeAssign(e,t){var r,s,i,n,a;let o,u,p;if(this.hasPlugin("jsx")&&(this.match(142)||this.match(47))){if(o=this.state.clone(),u=this.tryParse((()=>super.parseMaybeAssign(e,t)),o),!u.error)return u.node;let{context:r}=this.state,s=r[r.length-1];(s===T.j_oTag||s===T.j_expr)&&r.pop()}if(!(null!=(r=u)&&r.error||this.match(47)))return super.parseMaybeAssign(e,t);(!o||o===this.state)&&(o=this.state.clone());let l,c=this.tryParse((r=>{var s,i;l=this.tsParseTypeParameters(this.tsParseConstModifier);let n=super.parseMaybeAssign(e,t);return("ArrowFunctionExpression"!==n.type||null!=(s=n.extra)&&s.parenthesized)&&r(),0!==(null==(i=l)?void 0:i.params.length)&&this.resetStartLocationFromNode(n,l),n.typeParameters=l,n}),o);if(!c.error&&!c.aborted)return l&&this.reportReservedArrowTypeParam(l),c.node;if(!u&&(yt(!this.hasPlugin("jsx")),p=this.tryParse((()=>super.parseMaybeAssign(e,t)),o),!p.error))return p.node;if(null!=(s=u)&&s.node)return this.state=u.failState,u.node;if(c.node)return this.state=c.failState,l&&this.reportReservedArrowTypeParam(l),c.node;if(null!=(i=p)&&i.node)return this.state=p.failState,p.node;throw(null==(n=u)?void 0:n.error)||c.error||(null==(a=p)?void 0:a.error)}reportReservedArrowTypeParam(e){var t;1===e.params.length&&!e.params[0].constraint&&(null==(t=e.extra)||!t.trailingComma)&&this.getPluginOption("typescript","disallowAmbiguousJSXLike")&&this.raise(ft.ReservedArrowTypeParam,e)}parseMaybeUnary(e,t){return!this.hasPlugin("jsx")&&this.match(47)?this.tsParseTypeAssertion():super.parseMaybeUnary(e,t)}parseArrow(e){if(this.match(14)){let t=this.tryParse((e=>{let t=this.tsParseTypeOrTypePredicateAnnotation(14);return(this.canInsertSemicolon()||!this.match(19))&&e(),t}));if(t.aborted)return;t.thrown||(t.error&&(this.state=t.failState),e.returnType=t.node)}return super.parseArrow(e)}parseAssignableListItemTypes(e,t){if(!(2&t))return e;this.eat(17)&&(e.optional=!0);let r=this.tsTryParseTypeAnnotation();return r&&(e.typeAnnotation=r),this.resetEndLocation(e),e}isAssignable(e,t){switch(e.type){case"TSTypeCastExpression":return this.isAssignable(e.expression,t);case"TSParameterProperty":return!0;default:return super.isAssignable(e,t)}}toAssignable(e,t=!1){switch(e.type){case"ParenthesizedExpression":this.toAssignableParenthesizedExpression(e,t);break;case"TSAsExpression":case"TSSatisfiesExpression":case"TSNonNullExpression":case"TSTypeAssertion":t?this.expressionScope.recordArrowParameterBindingError(ft.UnexpectedTypeCastInParameter,e):this.raise(ft.UnexpectedTypeCastInParameter,e),this.toAssignable(e.expression,t);break;case"AssignmentExpression":!t&&"TSTypeCastExpression"===e.left.type&&(e.left=this.typeCastToParameter(e.left));default:super.toAssignable(e,t)}}toAssignableParenthesizedExpression(e,t){switch(e.expression.type){case"TSAsExpression":case"TSSatisfiesExpression":case"TSNonNullExpression":case"TSTypeAssertion":case"ParenthesizedExpression":this.toAssignable(e.expression,t);break;default:super.toAssignable(e,t)}}checkToRestConversion(e,t){switch(e.type){case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":case"TSNonNullExpression":this.checkToRestConversion(e.expression,!1);break;default:super.checkToRestConversion(e,t)}}isValidLVal(e,t,r){return((e,t)=>hasOwnProperty.call(e,t)&&e[t])({TSTypeCastExpression:!0,TSParameterProperty:"parameter",TSNonNullExpression:"expression",TSInstantiationExpression:"expression",TSAsExpression:(64!==r||!t)&&["expression",!0],TSSatisfiesExpression:(64!==r||!t)&&["expression",!0],TSTypeAssertion:(64!==r||!t)&&["expression",!0]},e)||super.isValidLVal(e,t,r)}parseBindingAtom(){return 78===this.state.type?this.parseIdentifier(!0):super.parseBindingAtom()}parseMaybeDecoratorArguments(e){if(this.match(47)||this.match(51)){let t=this.tsParseTypeArgumentsInExpression();if(this.match(10)){let r=super.parseMaybeDecoratorArguments(e);return r.typeParameters=t,r}this.unexpected(null,10)}return super.parseMaybeDecoratorArguments(e)}checkCommaAfterRest(e){return this.state.isAmbientContext&&this.match(12)&&this.lookaheadCharCode()===e?(this.next(),!1):super.checkCommaAfterRest(e)}isClassMethod(){return this.match(47)||super.isClassMethod()}isClassProperty(){return this.match(35)||this.match(14)||super.isClassProperty()}parseMaybeDefault(e,t){let r=super.parseMaybeDefault(e,t);return"AssignmentPattern"===r.type&&r.typeAnnotation&&r.right.start<r.typeAnnotation.start&&this.raise(ft.TypeAnnotationAfterAssign,r.typeAnnotation),r}getTokenFromCode(e){if(this.state.inType){if(62===e)return void this.finishOp(48,1);if(60===e)return void this.finishOp(47,1)}super.getTokenFromCode(e)}reScan_lt_gt(){let{type:e}=this.state;47===e?(this.state.pos-=1,this.readToken_lt()):48===e&&(this.state.pos-=1,this.readToken_gt())}reScan_lt(){let{type:e}=this.state;return 51===e?(this.state.pos-=2,this.finishOp(47,1),47):e}toAssignableList(e,t,r){for(let s=0;s<e.length;s++){let t=e[s];"TSTypeCastExpression"===(null==t?void 0:t.type)&&(e[s]=this.typeCastToParameter(t))}super.toAssignableList(e,t,r)}typeCastToParameter(e){return e.expression.typeAnnotation=e.typeAnnotation,this.resetEndLocation(e.expression,e.typeAnnotation.loc.end),e.expression}shouldParseArrow(e){return this.match(14)?e.every((e=>this.isAssignable(e,!0))):super.shouldParseArrow(e)}shouldParseAsyncArrow(){return this.match(14)||super.shouldParseAsyncArrow()}canHaveLeadingDecorator(){return super.canHaveLeadingDecorator()||this.isAbstractClass()}jsxParseOpeningElementAfterName(e){if(this.match(47)||this.match(51)){let t=this.tsTryParseAndCatch((()=>this.tsParseTypeArgumentsInExpression()));t&&(e.typeParameters=t)}return super.jsxParseOpeningElementAfterName(e)}getGetterSetterExpectedParamCount(e){let t=super.getGetterSetterExpectedParamCount(e),r=this.getObjectOrClassMethodParams(e)[0];return r&&this.isThisParam(r)?t+1:t}parseCatchClauseParam(){let e=super.parseCatchClauseParam(),t=this.tsTryParseTypeAnnotation();return t&&(e.typeAnnotation=t,this.resetEndLocation(e)),e}tsInAmbientContext(e){let{isAmbientContext:t,strict:r}=this.state;this.state.isAmbientContext=!0,this.state.strict=!1;try{return e()}finally{this.state.isAmbientContext=t,this.state.strict=r}}parseClass(e,t,r){let s=this.state.inAbstractClass;this.state.inAbstractClass=!!e.abstract;try{return super.parseClass(e,t,r)}finally{this.state.inAbstractClass=s}}tsParseAbstractDeclaration(e,t){if(this.match(80))return e.abstract=!0,this.maybeTakeDecorators(t,this.parseClass(e,!0,!1));if(this.isContextual(129)){if(!this.hasFollowingLineBreak())return e.abstract=!0,this.raise(ft.NonClassMethodPropertyHasAbstractModifer,e),this.tsParseInterfaceDeclaration(e)}else this.unexpected(null,80)}parseMethod(e,t,r,s,i,n,a){let o=super.parseMethod(e,t,r,s,i,n,a);if(o.abstract&&(this.hasPlugin("estree")?o.value.body:o.body)){let{key:e}=o;this.raise(ft.AbstractMethodHasImplementation,o,{methodName:"Identifier"!==e.type||o.computed?`[${this.input.slice(e.start,e.end)}]`:e.name})}return o}tsParseTypeParameterName(){return this.parseIdentifier().name}shouldParseAsAmbientContext(){return!!this.getPluginOption("typescript","dts")}parse(){return this.shouldParseAsAmbientContext()&&(this.state.isAmbientContext=!0),super.parse()}getExpression(){return this.shouldParseAsAmbientContext()&&(this.state.isAmbientContext=!0),super.getExpression()}parseExportSpecifier(e,t,r,s){return!t&&s?(this.parseTypeOnlyImportExportSpecifier(e,!1,r),this.finishNode(e,"ExportSpecifier")):(e.exportKind="value",super.parseExportSpecifier(e,t,r,s))}parseImportSpecifier(e,t,r,s,i){return!t&&s?(this.parseTypeOnlyImportExportSpecifier(e,!0,r),this.finishNode(e,"ImportSpecifier")):(e.importKind="value",super.parseImportSpecifier(e,t,r,s,r?4098:4096))}parseTypeOnlyImportExportSpecifier(e,t,r){let s,i=t?"imported":"local",n=t?"local":"exported",a=e[i],o=!1,u=!0,p=a.loc.start;if(this.isContextual(93)){let e=this.parseIdentifier();if(this.isContextual(93)){let r=this.parseIdentifier();J(this.state.type)?(o=!0,a=e,s=t?this.parseIdentifier():this.parseModuleExportName(),u=!1):(s=r,u=!1)}else J(this.state.type)?(u=!1,s=t?this.parseIdentifier():this.parseModuleExportName()):(o=!0,a=e)}else J(this.state.type)&&(o=!0,t?(a=this.parseIdentifier(!0),this.isContextual(93)||this.checkReservedWord(a.name,a.loc.start,!0,!0)):a=this.parseModuleExportName());o&&r&&this.raise(t?ft.TypeModifierIsUsedInTypeImports:ft.TypeModifierIsUsedInTypeExports,p),e[i]=a,e[n]=s,e[t?"importKind":"exportKind"]=o?"type":"value",u&&this.eatContextual(93)&&(e[n]=t?this.parseIdentifier():this.parseModuleExportName()),e[n]||(e[n]=et(e[i])),t&&this.checkIdentifier(e[n],o?4098:4096)}},v8intrinsic:e=>class extends e{parseV8Intrinsic(){if(this.match(54)){let e=this.state.startLoc,t=this.startNode();if(this.next(),q(this.state.type)){let e=this.parseIdentifierName(),r=this.createIdentifier(t,e);if(r.type="V8IntrinsicIdentifier",this.match(10))return r}this.unexpected(e)}}parseExprAtom(e){return this.parseV8Intrinsic()||super.parseExprAtom(e)}},placeholders:e=>class extends e{parsePlaceholder(e){if(this.match(144)){let t=this.startNode();return this.next(),this.assertNoSpace(),t.name=super.parseIdentifier(!0),this.assertNoSpace(),this.expect(144),this.finishPlaceholder(t,e)}}finishPlaceholder(e,t){let r=e;return(!r.expectedNode||!r.type)&&(r=this.finishNode(r,"Placeholder")),r.expectedNode=t,r}getTokenFromCode(e){37===e&&37===this.input.charCodeAt(this.state.pos+1)?this.finishOp(144,2):super.getTokenFromCode(e)}parseExprAtom(e){return this.parsePlaceholder("Expression")||super.parseExprAtom(e)}parseIdentifier(e){return this.parsePlaceholder("Identifier")||super.parseIdentifier(e)}checkReservedWord(e,t,r,s){void 0!==e&&super.checkReservedWord(e,t,r,s)}parseBindingAtom(){return this.parsePlaceholder("Pattern")||super.parseBindingAtom()}isValidLVal(e,t,r){return"Placeholder"===e||super.isValidLVal(e,t,r)}toAssignable(e,t){e&&"Placeholder"===e.type&&"Expression"===e.expectedNode?e.expectedNode="Pattern":super.toAssignable(e,t)}chStartsBindingIdentifier(e,t){return!(!super.chStartsBindingIdentifier(e,t)&&144!==this.lookahead().type)}verifyBreakContinue(e,t){e.label&&"Placeholder"===e.label.type||super.verifyBreakContinue(e,t)}parseExpressionStatement(e,t){var r;if("Placeholder"!==t.type||null!=(r=t.extra)&&r.parenthesized)return super.parseExpressionStatement(e,t);if(this.match(14)){let r=e;return r.label=this.finishPlaceholder(t,"Identifier"),this.next(),r.body=super.parseStatementOrSloppyAnnexBFunctionDeclaration(),this.finishNode(r,"LabeledStatement")}this.semicolon();let s=e;return s.name=t.name,this.finishPlaceholder(s,"Statement")}parseBlock(e,t,r){return this.parsePlaceholder("BlockStatement")||super.parseBlock(e,t,r)}parseFunctionId(e){return this.parsePlaceholder("Identifier")||super.parseFunctionId(e)}parseClass(e,t,r){let s=t?"ClassDeclaration":"ClassExpression";this.next();let i=this.state.strict,n=this.parsePlaceholder("Identifier");if(n){if(!(this.match(81)||this.match(144)||this.match(5))){if(r||!t)return e.id=null,e.body=this.finishPlaceholder(n,"ClassBody"),this.finishNode(e,s);throw this.raise(Ct.ClassNameIsRequired,this.state.startLoc)}e.id=n}else this.parseClassId(e,t,r);return super.parseClassSuper(e),e.body=this.parsePlaceholder("ClassBody")||super.parseClassBody(!!e.superClass,i),this.finishNode(e,s)}parseExport(e,t){let r=this.parsePlaceholder("Identifier");if(!r)return super.parseExport(e,t);let s=e;if(!this.isContextual(98)&&!this.match(12))return s.specifiers=[],s.source=null,s.declaration=this.finishPlaceholder(r,"Declaration"),this.finishNode(s,"ExportNamedDeclaration");this.expectPlugin("exportDefaultFrom");let i=this.startNode();return i.exported=r,s.specifiers=[this.finishNode(i,"ExportDefaultSpecifier")],super.parseExport(s,t)}isExportDefaultSpecifier(){if(this.match(65)){let e=this.nextTokenStart();if(this.isUnparsedContextual(e,"from")&&this.input.startsWith(K(144),this.nextTokenStartSince(e+4)))return!0}return super.isExportDefaultSpecifier()}maybeParseExportDefaultSpecifier(e,t){var r;return!(null==(r=e.specifiers)||!r.length)||super.maybeParseExportDefaultSpecifier(e,t)}checkExport(e){let{specifiers:t}=e;null!=t&&t.length&&(e.specifiers=t.filter((e=>"Placeholder"===e.exported.type))),super.checkExport(e),e.specifiers=t}parseImport(e){let t=this.parsePlaceholder("Identifier");if(!t)return super.parseImport(e);if(e.specifiers=[],!this.isContextual(98)&&!this.match(12))return e.source=this.finishPlaceholder(t,"StringLiteral"),this.semicolon(),this.finishNode(e,"ImportDeclaration");let r=this.startNodeAtNode(t);return r.local=t,e.specifiers.push(this.finishNode(r,"ImportDefaultSpecifier")),this.eat(12)&&(this.maybeParseStarImportSpecifier(e)||this.parseNamedImportSpecifiers(e)),this.expectContextual(98),e.source=this.parseImportSource(),this.semicolon(),this.finishNode(e,"ImportDeclaration")}parseImportSource(){return this.parsePlaceholder("StringLiteral")||super.parseImportSource()}assertNoSpace(){this.state.start>this.state.lastTokEndLoc.index&&this.raise(Ct.UnexpectedSpace,this.state.lastTokEndLoc)}}},vt=Object.keys(wt),kt={sourceType:"script",sourceFilename:void 0,startColumn:0,startLine:1,allowAwaitOutsideFunction:!1,allowReturnOutsideFunction:!1,allowNewTargetOutsideFunction:!1,allowImportExportEverywhere:!1,allowSuperOutsideMethod:!1,allowUndeclaredExports:!1,plugins:[],strictMode:null,ranges:!1,tokens:!1,createImportExpressions:!1,createParenthesizedExpressions:!1,errorRecovery:!1,attachComment:!0,annexB:!0},It=class extends mt{checkProto(e,t,r,s){if("SpreadElement"===e.type||this.isObjectMethod(e)||e.computed||e.shorthand)return;let i=e.key;if("__proto__"===("Identifier"===i.type?i.name:i.value)){if(t)return void this.raise(D.RecordNoProto,i);r.used&&(s?null===s.doubleProtoLoc&&(s.doubleProtoLoc=i.loc.start):this.raise(D.DuplicateProto,i)),r.used=!0}}shouldExitDescending(e,t){return"ArrowFunctionExpression"===e.type&&e.start===t}getExpression(){this.enterInitialScopes(),this.nextToken();let e=this.parseExpression();return this.match(139)||this.unexpected(),this.finalizeRemainingComments(),e.comments=this.comments,e.errors=this.state.errors,this.options.tokens&&(e.tokens=this.tokens),e}parseExpression(e,t){return e?this.disallowInAnd((()=>this.parseExpressionBase(t))):this.allowInAnd((()=>this.parseExpressionBase(t)))}parseExpressionBase(e){let t=this.state.startLoc,r=this.parseMaybeAssign(e);if(this.match(12)){let s=this.startNodeAt(t);for(s.expressions=[r];this.eat(12);)s.expressions.push(this.parseMaybeAssign(e));return this.toReferencedList(s.expressions),this.finishNode(s,"SequenceExpression")}return r}parseMaybeAssignDisallowIn(e,t){return this.disallowInAnd((()=>this.parseMaybeAssign(e,t)))}parseMaybeAssignAllowIn(e,t){return this.allowInAnd((()=>this.parseMaybeAssign(e,t)))}setOptionalParametersError(e,t){var r;e.optionalParametersLoc=null!=(r=null==t?void 0:t.loc)?r:this.state.startLoc}parseMaybeAssign(e,t){let r,s=this.state.startLoc;if(this.isContextual(108)&&this.prodParam.hasYield){let e=this.parseYield();return t&&(e=t.call(this,e,s)),e}e?r=!1:(e=new Ye,r=!0);let{type:i}=this.state;(10===i||q(i))&&(this.state.potentialArrowAt=this.state.start);let n=this.parseMaybeConditional(e);if(t&&(n=t.call(this,n,s)),(a=this.state.type)>=29&&a<=33){let t=this.startNodeAt(s);if(t.operator=this.state.value,this.match(29)){this.toAssignable(n,!0),t.left=n;let r=s.index;null!=e.doubleProtoLoc&&e.doubleProtoLoc.index>=r&&(e.doubleProtoLoc=null),null!=e.shorthandAssignLoc&&e.shorthandAssignLoc.index>=r&&(e.shorthandAssignLoc=null),null!=e.privateKeyLoc&&e.privateKeyLoc.index>=r&&(this.checkDestructuringPrivate(e),e.privateKeyLoc=null)}else t.left=n;return this.next(),t.right=this.parseMaybeAssign(),this.checkLVal(n,{in:this.finishNode(t,"AssignmentExpression")}),t}var a;return r&&this.checkExpressionErrors(e,!0),n}parseMaybeConditional(e){let t=this.state.startLoc,r=this.state.potentialArrowAt,s=this.parseExprOps(e);return this.shouldExitDescending(s,r)?s:this.parseConditional(s,t,e)}parseConditional(e,t,r){if(this.eat(17)){let r=this.startNodeAt(t);return r.test=e,r.consequent=this.parseMaybeAssignAllowIn(),this.expect(14),r.alternate=this.parseMaybeAssign(),this.finishNode(r,"ConditionalExpression")}return e}parseMaybeUnaryOrPrivate(e){return this.match(138)?this.parsePrivateName():this.parseMaybeUnary(e)}parseExprOps(e){let t=this.state.startLoc,r=this.state.potentialArrowAt,s=this.parseMaybeUnaryOrPrivate(e);return this.shouldExitDescending(s,r)?s:this.parseExprOp(s,t,-1)}parseExprOp(e,t,r){if(this.isPrivateName(e)){let t=this.getPrivateNameSV(e);(r>=X(58)||!this.prodParam.hasIn||!this.match(58))&&this.raise(D.PrivateInExpectedIn,e,{identifierName:t}),this.classScope.usePrivateName(t,e.loc.start)}let s=this.state.type;if((i=s)>=39&&i<=59&&(this.prodParam.hasIn||!this.match(58))){let i=X(s);if(i>r){if(39===s){if(this.expectPlugin("pipelineOperator"),this.state.inFSharpPipelineDirectBody)return e;this.checkPipelineAtInfixOperator(e,t)}let n=this.startNodeAt(t);n.left=e,n.operator=this.state.value;let a=41===s||42===s,o=40===s;if(o&&(i=X(42)),this.next(),39===s&&this.hasPlugin(["pipelineOperator",{proposal:"minimal"}])&&96===this.state.type&&this.prodParam.hasAwait)throw this.raise(D.UnexpectedAwaitAfterPipelineBody,this.state.startLoc);n.right=this.parseExprOpRightExpr(s,i);let u=this.finishNode(n,a||o?"LogicalExpression":"BinaryExpression"),p=this.state.type;if(o&&(41===p||42===p)||a&&40===p)throw this.raise(D.MixingCoalesceWithLogical,this.state.startLoc);return this.parseExprOp(u,t,r)}}var i;return e}parseExprOpRightExpr(e,t){let r=this.state.startLoc;if(39===e)switch(this.getPluginOption("pipelineOperator","proposal")){case"hack":return this.withTopicBindingContext((()=>this.parseHackPipeBody()));case"smart":return this.withTopicBindingContext((()=>{if(this.prodParam.hasYield&&this.isContextual(108))throw this.raise(D.PipeBodyIsTighter,this.state.startLoc);return this.parseSmartPipelineBodyInStyle(this.parseExprOpBaseRightExpr(e,t),r)}));case"fsharp":return this.withSoloAwaitPermittingContext((()=>this.parseFSharpPipelineBody(t)))}return this.parseExprOpBaseRightExpr(e,t)}parseExprOpBaseRightExpr(e,t){let r=this.state.startLoc;return this.parseExprOp(this.parseMaybeUnaryOrPrivate(),r,57===e?t-1:t)}parseHackPipeBody(){var e;let{startLoc:t}=this.state,r=this.parseMaybeAssign();return l.has(r.type)&&!(null!=(e=r.extra)&&e.parenthesized)&&this.raise(D.PipeUnparenthesizedBody,t,{type:r.type}),this.topicReferenceWasUsedInCurrentContext()||this.raise(D.PipeTopicUnused,t),r}checkExponentialAfterUnary(e){this.match(57)&&this.raise(D.UnexpectedTokenUnaryExponentiation,e.argument)}parseMaybeUnary(e,t){let r=this.state.startLoc,s=this.isContextual(96);if(s&&this.isAwaitAllowed()){this.next();let e=this.parseAwait(r);return t||this.checkExponentialAfterUnary(e),e}let i=this.match(34),n=this.startNode();if(a=this.state.type,_[a]){n.operator=this.state.value,n.prefix=!0,this.match(72)&&this.expectPlugin("throwExpressions");let r=this.match(89);if(this.next(),n.argument=this.parseMaybeUnary(null,!0),this.checkExpressionErrors(e,!0),this.state.strict&&r){let e=n.argument;"Identifier"===e.type?this.raise(D.StrictDelete,n):this.hasPropertyAsPrivateName(e)&&this.raise(D.DeletePrivateField,n)}if(!i)return t||this.checkExponentialAfterUnary(n),this.finishNode(n,"UnaryExpression")}var a;let o=this.parseUpdate(n,i,e);if(s){let{type:e}=this.state;if((this.hasPlugin("v8intrinsic")?z(e):z(e)&&!this.match(54))&&!this.isAmbiguousAwait())return this.raiseOverwrite(D.AwaitNotInAsyncContext,r),this.parseAwait(r)}return o}parseUpdate(e,t,r){if(t){let t=e;return this.checkLVal(t.argument,{in:this.finishNode(t,"UpdateExpression")}),e}let s=this.state.startLoc,i=this.parseExprSubscripts(r);if(this.checkExpressionErrors(r,!1))return i;for(;34===this.state.type&&!this.canInsertSemicolon();){let e=this.startNodeAt(s);e.operator=this.state.value,e.prefix=!1,e.argument=i,this.next(),this.checkLVal(i,{in:i=this.finishNode(e,"UpdateExpression")})}return i}parseExprSubscripts(e){let t=this.state.startLoc,r=this.state.potentialArrowAt,s=this.parseExprAtom(e);return this.shouldExitDescending(s,r)?s:this.parseSubscripts(s,t)}parseSubscripts(e,t,r){let s={optionalChainMember:!1,maybeAsyncArrow:this.atPossibleAsyncArrow(e),stop:!1};do{e=this.parseSubscript(e,t,r,s),s.maybeAsyncArrow=!1}while(!s.stop);return e}parseSubscript(e,t,r,s){let{type:i}=this.state;if(!r&&15===i)return this.parseBind(e,t,r,s);if(G(i))return this.parseTaggedTemplateExpression(e,t,s);let n=!1;if(18===i){if(r&&(this.raise(D.OptionalChainingNoNew,this.state.startLoc),40===this.lookaheadCharCode()))return s.stop=!0,e;s.optionalChainMember=n=!0,this.next()}if(!r&&this.match(10))return this.parseCoverCallAndAsyncArrowHead(e,t,s,n);{let r=this.eat(0);return r||n||this.eat(16)?this.parseMember(e,t,s,r,n):(s.stop=!0,e)}}parseMember(e,t,r,s,i){let n=this.startNodeAt(t);return n.object=e,n.computed=s,s?(n.property=this.parseExpression(),this.expect(3)):this.match(138)?("Super"===e.type&&this.raise(D.SuperPrivateField,t),this.classScope.usePrivateName(this.state.value,this.state.startLoc),n.property=this.parsePrivateName()):n.property=this.parseIdentifier(!0),r.optionalChainMember?(n.optional=i,this.finishNode(n,"OptionalMemberExpression")):this.finishNode(n,"MemberExpression")}parseBind(e,t,r,s){let i=this.startNodeAt(t);return i.object=e,this.next(),i.callee=this.parseNoCallExpr(),s.stop=!0,this.parseSubscripts(this.finishNode(i,"BindExpression"),t,r)}parseCoverCallAndAsyncArrowHead(e,t,r,s){let i=this.state.maybeInArrowParameters,n=null;this.state.maybeInArrowParameters=!0,this.next();let a=this.startNodeAt(t);a.callee=e;let{maybeAsyncArrow:o,optionalChainMember:u}=r;o&&(this.expressionScope.enter(new We(2)),n=new Ye),u&&(a.optional=s),a.arguments=s?this.parseCallExpressionArguments(11):this.parseCallExpressionArguments(11,"Import"===e.type,"Super"!==e.type,a,n);let p=this.finishCallExpression(a,u);return o&&this.shouldParseAsyncArrow()&&!s?(r.stop=!0,this.checkDestructuringPrivate(n),this.expressionScope.validateAsPattern(),this.expressionScope.exit(),p=this.parseAsyncArrowFromCallExpression(this.startNodeAt(t),p)):(o&&(this.checkExpressionErrors(n,!0),this.expressionScope.exit()),this.toReferencedArguments(p)),this.state.maybeInArrowParameters=i,p}toReferencedArguments(e,t){this.toReferencedListDeep(e.arguments,t)}parseTaggedTemplateExpression(e,t,r){let s=this.startNodeAt(t);return s.tag=e,s.quasi=this.parseTemplate(!0),r.optionalChainMember&&this.raise(D.OptionalChainingNoTemplate,t),this.finishNode(s,"TaggedTemplateExpression")}atPossibleAsyncArrow(e){return"Identifier"===e.type&&"async"===e.name&&this.state.lastTokEndLoc.index===e.end&&!this.canInsertSemicolon()&&e.end-e.start==5&&e.start===this.state.potentialArrowAt}expectImportAttributesPlugin(){this.hasPlugin("importAssertions")||this.expectPlugin("importAttributes")}finishCallExpression(e,t){if("Import"===e.callee.type)if(2===e.arguments.length&&(this.hasPlugin("moduleAttributes")||this.expectImportAttributesPlugin()),0===e.arguments.length||e.arguments.length>2)this.raise(D.ImportCallArity,e,{maxArgumentCount:this.hasPlugin("importAttributes")||this.hasPlugin("importAssertions")||this.hasPlugin("moduleAttributes")?2:1});else for(let r of e.arguments)"SpreadElement"===r.type&&this.raise(D.ImportCallSpreadArgument,r);return this.finishNode(e,t?"OptionalCallExpression":"CallExpression")}parseCallExpressionArguments(e,t,r,s,i){let n=[],a=!0,o=this.state.inFSharpPipelineDirectBody;for(this.state.inFSharpPipelineDirectBody=!1;!this.eat(e);){if(a)a=!1;else if(this.expect(12),this.match(e)){t&&!this.hasPlugin("importAttributes")&&!this.hasPlugin("importAssertions")&&!this.hasPlugin("moduleAttributes")&&this.raise(D.ImportCallArgumentTrailingComma,this.state.lastTokStartLoc),s&&this.addTrailingCommaExtraToNode(s),this.next();break}n.push(this.parseExprListItem(!1,i,r))}return this.state.inFSharpPipelineDirectBody=o,n}shouldParseAsyncArrow(){return this.match(19)&&!this.canInsertSemicolon()}parseAsyncArrowFromCallExpression(e,t){var r;return this.resetPreviousNodeTrailingComments(t),this.expect(19),this.parseArrowExpression(e,t.arguments,!0,null==(r=t.extra)?void 0:r.trailingCommaLoc),t.innerComments&&Ce(e,t.innerComments),t.callee.trailingComments&&Ce(e,t.callee.trailingComments),e}parseNoCallExpr(){let e=this.state.startLoc;return this.parseSubscripts(this.parseExprAtom(),e,!0)}parseExprAtom(e){let t,r=null,{type:s}=this.state;switch(s){case 79:return this.parseSuper();case 83:return t=this.startNode(),this.next(),this.match(16)?this.parseImportMetaProperty(t):this.match(10)?this.options.createImportExpressions?this.parseImportCall(t):this.finishNode(t,"Import"):(this.raise(D.UnsupportedImport,this.state.lastTokStartLoc),this.finishNode(t,"Import"));case 78:return t=this.startNode(),this.next(),this.finishNode(t,"ThisExpression");case 90:return this.parseDo(this.startNode(),!1);case 56:case 31:return this.readRegexp(),this.parseRegExpLiteral(this.state.value);case 134:return this.parseNumericLiteral(this.state.value);case 135:return this.parseBigIntLiteral(this.state.value);case 136:return this.parseDecimalLiteral(this.state.value);case 133:return this.parseStringLiteral(this.state.value);case 84:return this.parseNullLiteral();case 85:return this.parseBooleanLiteral(!0);case 86:return this.parseBooleanLiteral(!1);case 10:{let e=this.state.potentialArrowAt===this.state.start;return this.parseParenAndDistinguishExpression(e)}case 2:case 1:return this.parseArrayLike(2===this.state.type?4:3,!1,!0);case 0:return this.parseArrayLike(3,!0,!1,e);case 6:case 7:return this.parseObjectLike(6===this.state.type?9:8,!1,!0);case 5:return this.parseObjectLike(8,!1,!1,e);case 68:return this.parseFunctionOrFunctionSent();case 26:r=this.parseDecorators();case 80:return this.parseClass(this.maybeTakeDecorators(r,this.startNode()),!1);case 77:return this.parseNewOrNewTarget();case 25:case 24:return this.parseTemplate(!1);case 15:{t=this.startNode(),this.next(),t.object=null;let e=t.callee=this.parseNoCallExpr();if("MemberExpression"===e.type)return this.finishNode(t,"BindExpression");throw this.raise(D.UnsupportedBind,e)}case 138:return this.raise(D.PrivateInExpectedIn,this.state.startLoc,{identifierName:this.state.value}),this.parsePrivateName();case 33:return this.parseTopicReferenceThenEqualsSign(54,"%");case 32:return this.parseTopicReferenceThenEqualsSign(44,"^");case 37:case 38:return this.parseTopicReference("hack");case 44:case 54:case 27:{let e=this.getPluginOption("pipelineOperator","proposal");if(e)return this.parseTopicReference(e);this.unexpected();break}case 47:{let e=this.input.codePointAt(this.nextTokenStart());ne(e)||62===e?this.expectOnePlugin(["jsx","flow","typescript"]):this.unexpected();break}default:if(q(s)){if(this.isContextual(127)&&123===this.lookaheadInLineCharCode())return this.parseModuleExpression();let e=this.state.potentialArrowAt===this.state.start,t=this.state.containsEsc,r=this.parseIdentifier();if(!t&&"async"===r.name&&!this.canInsertSemicolon()){let{type:e}=this.state;if(68===e)return this.resetPreviousNodeTrailingComments(r),this.next(),this.parseAsyncFunctionExpression(this.startNodeAtNode(r));if(q(e))return 61===this.lookaheadCharCode()?this.parseAsyncArrowUnaryFunction(this.startNodeAtNode(r)):r;if(90===e)return this.resetPreviousNodeTrailingComments(r),this.parseDo(this.startNodeAtNode(r),!0)}return e&&this.match(19)&&!this.canInsertSemicolon()?(this.next(),this.parseArrowExpression(this.startNodeAtNode(r),[r],!1)):r}this.unexpected()}}parseTopicReferenceThenEqualsSign(e,t){let r=this.getPluginOption("pipelineOperator","proposal");if(r)return this.state.type=e,this.state.value=t,this.state.pos--,this.state.end--,this.state.endLoc=i(this.state.endLoc,-1),this.parseTopicReference(r);this.unexpected()}parseTopicReference(e){let t=this.startNode(),r=this.state.startLoc,s=this.state.type;return this.next(),this.finishTopicReference(t,r,e,s)}finishTopicReference(e,t,r,s){if(this.testTopicReferenceConfiguration(r,t,s)){let s="smart"===r?"PipelinePrimaryTopicReference":"TopicReference";return this.topicReferenceIsAllowedInCurrentContext()||this.raise("smart"===r?D.PrimaryTopicNotAllowed:D.PipeTopicUnbound,t),this.registerTopicReference(),this.finishNode(e,s)}throw this.raise(D.PipeTopicUnconfiguredToken,t,{token:K(s)})}testTopicReferenceConfiguration(e,t,r){switch(e){case"hack":return this.hasPlugin(["pipelineOperator",{topicToken:K(r)}]);case"smart":return 27===r;default:throw this.raise(D.PipeTopicRequiresHackPipes,t)}}parseAsyncArrowUnaryFunction(e){this.prodParam.enter(Xe(!0,this.prodParam.hasYield));let t=[this.parseIdentifier()];return this.prodParam.exit(),this.hasPrecedingLineBreak()&&this.raise(D.LineTerminatorBeforeArrow,this.state.curPosition()),this.expect(19),this.parseArrowExpression(e,t,!0)}parseDo(e,t){this.expectPlugin("doExpressions"),t&&this.expectPlugin("asyncDoExpressions"),e.async=t,this.next();let r=this.state.labels;return this.state.labels=[],t?(this.prodParam.enter(2),e.body=this.parseBlock(),this.prodParam.exit()):e.body=this.parseBlock(),this.state.labels=r,this.finishNode(e,"DoExpression")}parseSuper(){let e=this.startNode();return this.next(),!this.match(10)||this.scope.allowDirectSuper||this.options.allowSuperOutsideMethod?!this.scope.allowSuper&&!this.options.allowSuperOutsideMethod&&this.raise(D.UnexpectedSuper,e):this.raise(D.SuperNotAllowed,e),!this.match(10)&&!this.match(0)&&!this.match(16)&&this.raise(D.UnsupportedSuper,e),this.finishNode(e,"Super")}parsePrivateName(){let e=this.startNode(),t=this.startNodeAt(i(this.state.startLoc,1)),r=this.state.value;return this.next(),e.id=this.createIdentifier(t,r),this.finishNode(e,"PrivateName")}parseFunctionOrFunctionSent(){let e=this.startNode();if(this.next(),this.prodParam.hasYield&&this.match(16)){let t=this.createIdentifier(this.startNodeAtNode(e),"function");return this.next(),this.match(103)?this.expectPlugin("functionSent"):this.hasPlugin("functionSent")||this.unexpected(),this.parseMetaProperty(e,t,"sent")}return this.parseFunction(e)}parseMetaProperty(e,t,r){e.meta=t;let s=this.state.containsEsc;return e.property=this.parseIdentifier(!0),(e.property.name!==r||s)&&this.raise(D.UnsupportedMetaProperty,e.property,{target:t.name,onlyValidPropertyName:r}),this.finishNode(e,"MetaProperty")}parseImportMetaProperty(e){let t=this.createIdentifier(this.startNodeAtNode(e),"import");if(this.next(),this.isContextual(101))this.inModule||this.raise(D.ImportMetaOutsideModule,t),this.sawUnambiguousESM=!0;else if(this.isContextual(105)||this.isContextual(97)){let t=this.isContextual(105);if(t||this.unexpected(),this.expectPlugin(t?"sourcePhaseImports":"deferredImportEvaluation"),!this.options.createImportExpressions)throw this.raise(D.DynamicImportPhaseRequiresImportExpressions,this.state.startLoc,{phase:this.state.value});return this.next(),e.phase=t?"source":"defer",this.parseImportCall(e)}return this.parseMetaProperty(e,t,"meta")}parseLiteralAtNode(e,t,r){return this.addExtra(r,"rawValue",e),this.addExtra(r,"raw",this.input.slice(r.start,this.state.end)),r.value=e,this.next(),this.finishNode(r,t)}parseLiteral(e,t){let r=this.startNode();return this.parseLiteralAtNode(e,t,r)}parseStringLiteral(e){return this.parseLiteral(e,"StringLiteral")}parseNumericLiteral(e){return this.parseLiteral(e,"NumericLiteral")}parseBigIntLiteral(e){return this.parseLiteral(e,"BigIntLiteral")}parseDecimalLiteral(e){return this.parseLiteral(e,"DecimalLiteral")}parseRegExpLiteral(e){let t=this.startNode();return this.addExtra(t,"raw",this.input.slice(t.start,this.state.end)),t.pattern=e.pattern,t.flags=e.flags,this.next(),this.finishNode(t,"RegExpLiteral")}parseBooleanLiteral(e){let t=this.startNode();return t.value=e,this.next(),this.finishNode(t,"BooleanLiteral")}parseNullLiteral(){let e=this.startNode();return this.next(),this.finishNode(e,"NullLiteral")}parseParenAndDistinguishExpression(e){let t,r=this.state.startLoc;this.next(),this.expressionScope.enter(new We(1));let s=this.state.maybeInArrowParameters,i=this.state.inFSharpPipelineDirectBody;this.state.maybeInArrowParameters=!0,this.state.inFSharpPipelineDirectBody=!1;let n,a,o=this.state.startLoc,u=[],p=new Ye,l=!0;for(;!this.match(11);){if(l)l=!1;else if(this.expect(12,null===p.optionalParametersLoc?null:p.optionalParametersLoc),this.match(11)){a=this.state.startLoc;break}if(this.match(21)){let e=this.state.startLoc;if(n=this.state.startLoc,u.push(this.parseParenItem(this.parseRestBinding(),e)),!this.checkCommaAfterRest(41))break}else u.push(this.parseMaybeAssignAllowIn(p,this.parseParenItem))}let c=this.state.lastTokEndLoc;this.expect(11),this.state.maybeInArrowParameters=s,this.state.inFSharpPipelineDirectBody=i;let h=this.startNodeAt(r);return e&&this.shouldParseArrow(u)&&(h=this.parseArrow(h))?(this.checkDestructuringPrivate(p),this.expressionScope.validateAsPattern(),this.expressionScope.exit(),this.parseArrowExpression(h,u,!1),h):(this.expressionScope.exit(),u.length||this.unexpected(this.state.lastTokStartLoc),a&&this.unexpected(a),n&&this.unexpected(n),this.checkExpressionErrors(p,!0),this.toReferencedListDeep(u,!0),u.length>1?(t=this.startNodeAt(o),t.expressions=u,this.finishNode(t,"SequenceExpression"),this.resetEndLocation(t,c)):t=u[0],this.wrapParenthesis(r,t))}wrapParenthesis(e,t){if(!this.options.createParenthesizedExpressions)return this.addExtra(t,"parenthesized",!0),this.addExtra(t,"parenStart",e.index),this.takeSurroundingComments(t,e.index,this.state.lastTokEndLoc.index),t;let r=this.startNodeAt(e);return r.expression=t,this.finishNode(r,"ParenthesizedExpression")}shouldParseArrow(e){return!this.canInsertSemicolon()}parseArrow(e){if(this.eat(19))return e}parseParenItem(e,t){return e}parseNewOrNewTarget(){let e=this.startNode();if(this.next(),this.match(16)){let t=this.createIdentifier(this.startNodeAtNode(e),"new");this.next();let r=this.parseMetaProperty(e,t,"target");return!this.scope.inNonArrowFunction&&!this.scope.inClass&&!this.options.allowNewTargetOutsideFunction&&this.raise(D.UnexpectedNewTarget,r),r}return this.parseNew(e)}parseNew(e){if(this.parseNewCallee(e),this.eat(10)){let t=this.parseExprList(11);this.toReferencedList(t),e.arguments=t}else e.arguments=[];return this.finishNode(e,"NewExpression")}parseNewCallee(e){let t=this.match(83),r=this.parseNoCallExpr();e.callee=r,t&&("Import"===r.type||"ImportExpression"===r.type)&&this.raise(D.ImportCallNotNewExpression,r)}parseTemplateElement(e){let{start:t,startLoc:r,end:s,value:n}=this.state,a=t+1,o=this.startNodeAt(i(r,1));null===n&&(e||this.raise(D.InvalidEscapeSequenceTemplate,i(this.state.firstInvalidTemplateEscapePos,1)));let u=this.match(24),p=u?-1:-2,l=s+p;o.value={raw:this.input.slice(a,l).replace(/\r\n?/g,"\n"),cooked:null===n?null:n.slice(1,p)},o.tail=u,this.next();let c=this.finishNode(o,"TemplateElement");return this.resetEndLocation(c,i(this.state.lastTokEndLoc,p)),c}parseTemplate(e){let t=this.startNode(),r=this.parseTemplateElement(e),s=[r],i=[];for(;!r.tail;)i.push(this.parseTemplateSubstitution()),this.readTemplateContinuation(),s.push(r=this.parseTemplateElement(e));return t.expressions=i,t.quasis=s,this.finishNode(t,"TemplateLiteral")}parseTemplateSubstitution(){return this.parseExpression()}parseObjectLike(e,t,r,s){r&&this.expectPlugin("recordAndTuple");let i=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!1;let n=Object.create(null),a=!0,o=this.startNode();for(o.properties=[],this.next();!this.match(e);){if(a)a=!1;else if(this.expect(12),this.match(e)){this.addTrailingCommaExtraToNode(o);break}let i;t?i=this.parseBindingProperty():(i=this.parsePropertyDefinition(s),this.checkProto(i,r,n,s)),r&&!this.isObjectProperty(i)&&"SpreadElement"!==i.type&&this.raise(D.InvalidRecordProperty,i),i.shorthand&&this.addExtra(i,"shorthand",!0),o.properties.push(i)}this.next(),this.state.inFSharpPipelineDirectBody=i;let u="ObjectExpression";return t?u="ObjectPattern":r&&(u="RecordExpression"),this.finishNode(o,u)}addTrailingCommaExtraToNode(e){this.addExtra(e,"trailingComma",this.state.lastTokStartLoc.index),this.addExtra(e,"trailingCommaLoc",this.state.lastTokStartLoc,!1)}maybeAsyncOrAccessorProp(e){return!e.computed&&"Identifier"===e.key.type&&(this.isLiteralPropertyName()||this.match(0)||this.match(55))}parsePropertyDefinition(e){let t=[];if(this.match(26))for(this.hasPlugin("decorators")&&this.raise(D.UnsupportedPropertyDecorator,this.state.startLoc);this.match(26);)t.push(this.parseDecorator());let r,s=this.startNode(),i=!1,n=!1;if(this.match(21))return t.length&&this.unexpected(),this.parseSpread();t.length&&(s.decorators=t,t=[]),s.method=!1,e&&(r=this.state.startLoc);let a=this.eat(55);this.parsePropertyNamePrefixOperator(s);let o=this.state.containsEsc;if(this.parsePropertyName(s,e),!a&&!o&&this.maybeAsyncOrAccessorProp(s)){let{key:e}=s,t=e.name;"async"===t&&!this.hasPrecedingLineBreak()&&(i=!0,this.resetPreviousNodeTrailingComments(e),a=this.eat(55),this.parsePropertyName(s)),("get"===t||"set"===t)&&(n=!0,this.resetPreviousNodeTrailingComments(e),s.kind=t,this.match(55)&&(a=!0,this.raise(D.AccessorIsGenerator,this.state.curPosition(),{kind:t}),this.next()),this.parsePropertyName(s))}return this.parseObjPropValue(s,r,a,i,!1,n,e)}getGetterSetterExpectedParamCount(e){return"get"===e.kind?0:1}getObjectOrClassMethodParams(e){return e.params}checkGetterSetterParams(e){var t;let r=this.getGetterSetterExpectedParamCount(e),s=this.getObjectOrClassMethodParams(e);s.length!==r&&this.raise("get"===e.kind?D.BadGetterArity:D.BadSetterArity,e),"set"===e.kind&&"RestElement"===(null==(t=s[s.length-1])?void 0:t.type)&&this.raise(D.BadSetterRestParameter,e)}parseObjectMethod(e,t,r,s,i){if(i){let r=this.parseMethod(e,t,!1,!1,!1,"ObjectMethod");return this.checkGetterSetterParams(r),r}if(r||t||this.match(10))return s&&this.unexpected(),e.kind="method",e.method=!0,this.parseMethod(e,t,r,!1,!1,"ObjectMethod")}parseObjectProperty(e,t,r,s){if(e.shorthand=!1,this.eat(14))return e.value=r?this.parseMaybeDefault(this.state.startLoc):this.parseMaybeAssignAllowIn(s),this.finishNode(e,"ObjectProperty");if(!e.computed&&"Identifier"===e.key.type){if(this.checkReservedWord(e.key.name,e.key.loc.start,!0,!1),r)e.value=this.parseMaybeDefault(t,et(e.key));else if(this.match(29)){let r=this.state.startLoc;null!=s?null===s.shorthandAssignLoc&&(s.shorthandAssignLoc=r):this.raise(D.InvalidCoverInitializedName,r),e.value=this.parseMaybeDefault(t,et(e.key))}else e.value=et(e.key);return e.shorthand=!0,this.finishNode(e,"ObjectProperty")}}parseObjPropValue(e,t,r,s,i,n,a){let o=this.parseObjectMethod(e,r,s,i,n)||this.parseObjectProperty(e,t,i,a);return o||this.unexpected(),o}parsePropertyName(e,t){if(this.eat(0))e.computed=!0,e.key=this.parseMaybeAssignAllowIn(),this.expect(3);else{let r,{type:s,value:i}=this.state;if(J(s))r=this.parseIdentifier(!0);else switch(s){case 134:r=this.parseNumericLiteral(i);break;case 133:r=this.parseStringLiteral(i);break;case 135:r=this.parseBigIntLiteral(i);break;case 136:r=this.parseDecimalLiteral(i);break;case 138:{let e=this.state.startLoc;null!=t?null===t.privateKeyLoc&&(t.privateKeyLoc=e):this.raise(D.UnexpectedPrivateField,e),r=this.parsePrivateName();break}default:this.unexpected()}e.key=r,138!==s&&(e.computed=!1)}}initFunction(e,t){e.id=null,e.generator=!1,e.async=t}parseMethod(e,t,r,s,i,n,a=!1){this.initFunction(e,r),e.generator=t,this.scope.enter(18|(a?64:0)|(i?32:0)),this.prodParam.enter(Xe(r,e.generator)),this.parseFunctionParams(e,s);let o=this.parseFunctionBodyAndFinish(e,n,!0);return this.prodParam.exit(),this.scope.exit(),o}parseArrayLike(e,t,r,s){r&&this.expectPlugin("recordAndTuple");let i=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!1;let n=this.startNode();return this.next(),n.elements=this.parseExprList(e,!r,s,n),this.state.inFSharpPipelineDirectBody=i,this.finishNode(n,r?"TupleExpression":"ArrayExpression")}parseArrowExpression(e,t,r,s){this.scope.enter(6);let i=Xe(r,!1);!this.match(5)&&this.prodParam.hasIn&&(i|=8),this.prodParam.enter(i),this.initFunction(e,r);let n=this.state.maybeInArrowParameters;return t&&(this.state.maybeInArrowParameters=!0,this.setArrowFunctionParameters(e,t,s)),this.state.maybeInArrowParameters=!1,this.parseFunctionBody(e,!0),this.prodParam.exit(),this.scope.exit(),this.state.maybeInArrowParameters=n,this.finishNode(e,"ArrowFunctionExpression")}setArrowFunctionParameters(e,t,r){this.toAssignableList(t,r,!1),e.params=t}parseFunctionBodyAndFinish(e,t,r=!1){return this.parseFunctionBody(e,!1,r),this.finishNode(e,t)}parseFunctionBody(e,t,r=!1){let s=t&&!this.match(5);if(this.expressionScope.enter(Ke()),s)e.body=this.parseMaybeAssign(),this.checkParams(e,!1,t,!1);else{let s=this.state.strict,i=this.state.labels;this.state.labels=[],this.prodParam.enter(4|this.prodParam.currentFlags()),e.body=this.parseBlock(!0,!1,(i=>{let n=!this.isSimpleParamList(e.params);i&&n&&this.raise(D.IllegalLanguageModeDirective,"method"!==e.kind&&"constructor"!==e.kind||!e.key?e:e.key.loc.end);let a=!s&&this.state.strict;this.checkParams(e,!(this.state.strict||t||r||n),t,a),this.state.strict&&e.id&&this.checkIdentifier(e.id,65,a)})),this.prodParam.exit(),this.state.labels=i}this.expressionScope.exit()}isSimpleParameter(e){return"Identifier"===e.type}isSimpleParamList(e){for(let t=0,r=e.length;t<r;t++)if(!this.isSimpleParameter(e[t]))return!1;return!0}checkParams(e,t,r,s=!0){let i=!t&&new Set,n={type:"FormalParameters"};for(let a of e.params)this.checkLVal(a,{in:n,binding:5,checkClashes:i,strictModeChanged:s})}parseExprList(e,t,r,s){let i=[],n=!0;for(;!this.eat(e);){if(n)n=!1;else if(this.expect(12),this.match(e)){s&&this.addTrailingCommaExtraToNode(s),this.next();break}i.push(this.parseExprListItem(t,r))}return i}parseExprListItem(e,t,r){let s;if(this.match(12))e||this.raise(D.UnexpectedToken,this.state.curPosition(),{unexpected:","}),s=null;else if(this.match(21)){let e=this.state.startLoc;s=this.parseParenItem(this.parseSpread(t),e)}else if(this.match(17)){this.expectPlugin("partialApplication"),r||this.raise(D.UnexpectedArgumentPlaceholder,this.state.startLoc);let e=this.startNode();this.next(),s=this.finishNode(e,"ArgumentPlaceholder")}else s=this.parseMaybeAssignAllowIn(t,this.parseParenItem);return s}parseIdentifier(e){let t=this.startNode(),r=this.parseIdentifierName(e);return this.createIdentifier(t,r)}createIdentifier(e,t){return e.name=t,e.loc.identifierName=t,this.finishNode(e,"Identifier")}parseIdentifierName(e){let t,{startLoc:r,type:s}=this.state;J(s)?t=this.state.value:this.unexpected();let i=s<=92;return e?i&&this.replaceToken(132):this.checkReservedWord(t,r,i,!1),this.next(),t}checkReservedWord(e,t,r,s){var i;if(!(e.length>10)&&(i=e,fe.has(i)))if(r&&function(e){return pe.has(e)}(e))this.raise(D.UnexpectedKeyword,t,{keyword:e});else if((this.state.strict?s?ye:de:he)(e,this.inModule))this.raise(D.UnexpectedReservedWord,t,{reservedWord:e});else if("yield"===e){if(this.prodParam.hasYield)return void this.raise(D.YieldBindingIdentifier,t)}else if("await"===e){if(this.prodParam.hasAwait)return void this.raise(D.AwaitBindingIdentifier,t);if(this.scope.inStaticBlock)return void this.raise(D.AwaitBindingIdentifierInStaticBlock,t);this.expressionScope.recordAsyncArrowParametersError(t)}else if("arguments"===e&&this.scope.inClassAndNotInNonArrowFunction)return void this.raise(D.ArgumentsInClass,t)}isAwaitAllowed(){return!!(this.prodParam.hasAwait||this.options.allowAwaitOutsideFunction&&!this.scope.inFunction)}parseAwait(e){let t=this.startNodeAt(e);return this.expressionScope.recordParameterInitializerError(D.AwaitExpressionFormalParameter,t),this.eat(55)&&this.raise(D.ObsoleteAwaitStar,t),!this.scope.inFunction&&!this.options.allowAwaitOutsideFunction&&(this.isAmbiguousAwait()?this.ambiguousScriptDifferentAst=!0:this.sawUnambiguousESM=!0),this.state.soloAwait||(t.argument=this.parseMaybeUnary(null,!0)),this.finishNode(t,"AwaitExpression")}isAmbiguousAwait(){if(this.hasPrecedingLineBreak())return!0;let{type:e}=this.state;return 53===e||10===e||0===e||G(e)||102===e&&!this.state.containsEsc||137===e||56===e||this.hasPlugin("v8intrinsic")&&54===e}parseYield(){let e=this.startNode();this.expressionScope.recordParameterInitializerError(D.YieldInParameter,e),this.next();let t=!1,r=null;if(!this.hasPrecedingLineBreak())switch(t=this.eat(55),this.state.type){case 13:case 139:case 8:case 11:case 3:case 9:case 14:case 12:if(!t)break;default:r=this.parseMaybeAssign()}return e.delegate=t,e.argument=r,this.finishNode(e,"YieldExpression")}parseImportCall(e){return this.next(),e.source=this.parseMaybeAssignAllowIn(),(this.hasPlugin("importAttributes")||this.hasPlugin("importAssertions"))&&(e.options=null),this.eat(12)&&(this.expectImportAttributesPlugin(),this.match(11)||(e.options=this.parseMaybeAssignAllowIn(),this.eat(12))),this.expect(11),this.finishNode(e,"ImportExpression")}checkPipelineAtInfixOperator(e,t){this.hasPlugin(["pipelineOperator",{proposal:"smart"}])&&"SequenceExpression"===e.type&&this.raise(D.PipelineHeadSequenceExpression,t)}parseSmartPipelineBodyInStyle(e,t){if(this.isSimpleReference(e)){let r=this.startNodeAt(t);return r.callee=e,this.finishNode(r,"PipelineBareFunction")}{let r=this.startNodeAt(t);return this.checkSmartPipeTopicBodyEarlyErrors(t),r.expression=e,this.finishNode(r,"PipelineTopicExpression")}}isSimpleReference(e){switch(e.type){case"MemberExpression":return!e.computed&&this.isSimpleReference(e.object);case"Identifier":return!0;default:return!1}}checkSmartPipeTopicBodyEarlyErrors(e){if(this.match(19))throw this.raise(D.PipelineBodyNoArrow,this.state.startLoc);this.topicReferenceWasUsedInCurrentContext()||this.raise(D.PipelineTopicUnused,e)}withTopicBindingContext(e){let t=this.state.topicContext;this.state.topicContext={maxNumOfResolvableTopics:1,maxTopicIndex:null};try{return e()}finally{this.state.topicContext=t}}withSmartMixTopicForbiddingContext(e){if(!this.hasPlugin(["pipelineOperator",{proposal:"smart"}]))return e();{let t=this.state.topicContext;this.state.topicContext={maxNumOfResolvableTopics:0,maxTopicIndex:null};try{return e()}finally{this.state.topicContext=t}}}withSoloAwaitPermittingContext(e){let t=this.state.soloAwait;this.state.soloAwait=!0;try{return e()}finally{this.state.soloAwait=t}}allowInAnd(e){let t=this.prodParam.currentFlags();if(8&~t){this.prodParam.enter(8|t);try{return e()}finally{this.prodParam.exit()}}return e()}disallowInAnd(e){let t=this.prodParam.currentFlags();if(8&t){this.prodParam.enter(-9&t);try{return e()}finally{this.prodParam.exit()}}return e()}registerTopicReference(){this.state.topicContext.maxTopicIndex=0}topicReferenceIsAllowedInCurrentContext(){return this.state.topicContext.maxNumOfResolvableTopics>=1}topicReferenceWasUsedInCurrentContext(){return null!=this.state.topicContext.maxTopicIndex&&this.state.topicContext.maxTopicIndex>=0}parseFSharpPipelineBody(e){let t=this.state.startLoc;this.state.potentialArrowAt=this.state.start;let r=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!0;let s=this.parseExprOp(this.parseMaybeUnaryOrPrivate(),t,e);return this.state.inFSharpPipelineDirectBody=r,s}parseModuleExpression(){this.expectPlugin("moduleBlocks");let e=this.startNode();this.next(),this.match(5)||this.unexpected(null,5);let t=this.startNodeAt(this.state.endLoc);this.next();let r=this.initializeScopes(!0);this.enterInitialScopes();try{e.body=this.parseProgram(t,8,"module")}finally{r()}return this.finishNode(e,"ModuleExpression")}parsePropertyNamePrefixOperator(e){}},Nt={kind:1},Bt={kind:2},Lt=/[\uD800-\uDFFF]/u,Mt=/in(?:stanceof)?/y,Ot=class extends It{parseTopLevel(e,t){return e.program=this.parseProgram(t),e.comments=this.comments,this.options.tokens&&(e.tokens=function(e,t){for(let r=0;r<e.length;r++){let s=e[r],{type:n}=s;if("number"==typeof n){if(138===n){let{loc:t,start:n,value:a,end:o}=s,u=n+1,p=i(t.start,1);e.splice(r,1,new Ve({type:Y(27),value:"#",start:n,end:u,startLoc:t.start,endLoc:p}),new Ve({type:Y(132),value:a,start:u,end:o,startLoc:p,endLoc:t.end})),r++;continue}if(G(n)){let a,o,u,p,l,{loc:c,start:h,value:d,end:m}=s,y=h+1,f=i(c.start,1);a=96===t.charCodeAt(h)?new Ve({type:Y(22),value:"`",start:h,end:y,startLoc:c.start,endLoc:f}):new Ve({type:Y(8),value:"}",start:h,end:y,startLoc:c.start,endLoc:f}),24===n?(u=m-1,p=i(c.end,-1),o=null===d?null:d.slice(1,-1),l=new Ve({type:Y(22),value:"`",start:u,end:m,startLoc:p,endLoc:c.end})):(u=m-2,p=i(c.end,-2),o=null===d?null:d.slice(1,-2),l=new Ve({type:Y(23),value:"${",start:u,end:m,startLoc:p,endLoc:c.end})),e.splice(r,1,a,new Ve({type:Y(20),value:o,start:y,end:u,startLoc:f,endLoc:p}),l),r+=2;continue}s.type=Y(n)}}return e}(this.tokens,this.input)),this.finishNode(e,"File")}parseProgram(e,t=139,r=this.options.sourceType){if(e.sourceType=r,e.interpreter=this.parseInterpreterDirective(),this.parseBlockBody(e,!0,!0,t),this.inModule&&!this.options.allowUndeclaredExports&&this.scope.undefinedExports.size>0)for(let[i,n]of Array.from(this.scope.undefinedExports))this.raise(D.ModuleExportUndefined,n,{localName:i});let s;return s=139===t?this.finishNode(e,"Program"):this.finishNodeAt(e,"Program",i(this.state.startLoc,-1)),s}stmtToDirective(e){let t=e;t.type="Directive",t.value=t.expression,delete t.expression;let r=t.value,s=r.value,i=this.input.slice(r.start,r.end),n=r.value=i.slice(1,-1);return this.addExtra(r,"raw",i),this.addExtra(r,"rawValue",n),this.addExtra(r,"expressionValue",s),r.type="DirectiveLiteral",t}parseInterpreterDirective(){if(!this.match(28))return null;let e=this.startNode();return e.value=this.state.value,this.next(),this.finishNode(e,"InterpreterDirective")}isLet(){return!!this.isContextual(100)&&this.hasFollowingBindingAtom()}chStartsBindingIdentifier(e,t){if(ne(e)){if(Mt.lastIndex=t,Mt.test(this.input)){let e=this.codePointAtPos(Mt.lastIndex);if(!ae(e)&&92!==e)return!1}return!0}return 92===e}chStartsBindingPattern(e){return 91===e||123===e}hasFollowingBindingAtom(){let e=this.nextTokenStart(),t=this.codePointAtPos(e);return this.chStartsBindingPattern(t)||this.chStartsBindingIdentifier(t,e)}hasInLineFollowingBindingIdentifierOrBrace(){let e=this.nextTokenInLineStart(),t=this.codePointAtPos(e);return 123===t||this.chStartsBindingIdentifier(t,e)}startsUsingForOf(){let{type:e,containsEsc:t}=this.lookahead();return!(102===e&&!t)&&(q(e)&&!this.hasFollowingLineBreak()?(this.expectPlugin("explicitResourceManagement"),!0):void 0)}startsAwaitUsing(){let e=this.nextTokenInLineStart();if(this.isUnparsedContextual(e,"using")){e=this.nextTokenInLineStartSince(e+5);let t=this.codePointAtPos(e);if(this.chStartsBindingIdentifier(t,e))return this.expectPlugin("explicitResourceManagement"),!0}return!1}parseModuleItem(){return this.parseStatementLike(15)}parseStatementListItem(){return this.parseStatementLike(6|(!this.options.annexB||this.state.strict?0:8))}parseStatementOrSloppyAnnexBFunctionDeclaration(e=!1){let t=0;return this.options.annexB&&!this.state.strict&&(t|=4,e&&(t|=8)),this.parseStatementLike(t)}parseStatement(){return this.parseStatementLike(0)}parseStatementLike(e){let t=null;return this.match(26)&&(t=this.parseDecorators(!0)),this.parseStatementContent(e,t)}parseStatementContent(e,t){let r=this.state.type,s=this.startNode(),i=!!(2&e),n=!!(4&e),a=1&e;switch(r){case 60:return this.parseBreakContinueStatement(s,!0);case 63:return this.parseBreakContinueStatement(s,!1);case 64:return this.parseDebuggerStatement(s);case 90:return this.parseDoWhileStatement(s);case 91:return this.parseForStatement(s);case 68:if(46===this.lookaheadCharCode())break;return n||this.raise(this.state.strict?D.StrictFunction:this.options.annexB?D.SloppyFunctionAnnexB:D.SloppyFunction,this.state.startLoc),this.parseFunctionStatement(s,!1,!i&&n);case 80:return i||this.unexpected(),this.parseClass(this.maybeTakeDecorators(t,s),!0);case 69:return this.parseIfStatement(s);case 70:return this.parseReturnStatement(s);case 71:return this.parseSwitchStatement(s);case 72:return this.parseThrowStatement(s);case 73:return this.parseTryStatement(s);case 96:if(!this.state.containsEsc&&this.startsAwaitUsing())return this.isAwaitAllowed()?i||this.raise(D.UnexpectedLexicalDeclaration,s):this.raise(D.AwaitUsingNotInAsyncContext,s),this.next(),this.parseVarStatement(s,"await using");break;case 107:if(this.state.containsEsc||!this.hasInLineFollowingBindingIdentifierOrBrace())break;return this.expectPlugin("explicitResourceManagement"),!this.scope.inModule&&this.scope.inTopLevel?this.raise(D.UnexpectedUsingDeclaration,this.state.startLoc):i||this.raise(D.UnexpectedLexicalDeclaration,this.state.startLoc),this.parseVarStatement(s,"using");case 100:{if(this.state.containsEsc)break;let e=this.nextTokenStart(),t=this.codePointAtPos(e);if(91!==t&&(!i&&this.hasFollowingLineBreak()||!this.chStartsBindingIdentifier(t,e)&&123!==t))break}case 75:i||this.raise(D.UnexpectedLexicalDeclaration,this.state.startLoc);case 74:{let e=this.state.value;return this.parseVarStatement(s,e)}case 92:return this.parseWhileStatement(s);case 76:return this.parseWithStatement(s);case 5:return this.parseBlock();case 13:return this.parseEmptyStatement(s);case 83:{let e=this.lookaheadCharCode();if(40===e||46===e)break}case 82:{let e;return!this.options.allowImportExportEverywhere&&!a&&this.raise(D.UnexpectedImportExport,this.state.startLoc),this.next(),83===r?(e=this.parseImport(s),"ImportDeclaration"===e.type&&(!e.importKind||"value"===e.importKind)&&(this.sawUnambiguousESM=!0)):(e=this.parseExport(s,t),("ExportNamedDeclaration"===e.type&&(!e.exportKind||"value"===e.exportKind)||"ExportAllDeclaration"===e.type&&(!e.exportKind||"value"===e.exportKind)||"ExportDefaultDeclaration"===e.type)&&(this.sawUnambiguousESM=!0)),this.assertModuleNodeAllowed(e),e}default:if(this.isAsyncFunction())return i||this.raise(D.AsyncFunctionInSingleStatementContext,this.state.startLoc),this.next(),this.parseFunctionStatement(s,!0,!i&&n)}let o=this.state.value,u=this.parseExpression();return q(r)&&"Identifier"===u.type&&this.eat(14)?this.parseLabeledStatement(s,o,u,e):this.parseExpressionStatement(s,u,t)}assertModuleNodeAllowed(e){!this.options.allowImportExportEverywhere&&!this.inModule&&this.raise(D.ImportOutsideModule,e)}decoratorsEnabledBeforeExport(){return!!this.hasPlugin("decorators-legacy")||this.hasPlugin("decorators")&&!1!==this.getPluginOption("decorators","decoratorsBeforeExport")}maybeTakeDecorators(e,t,r){return e&&(t.decorators&&t.decorators.length>0?("boolean"!=typeof this.getPluginOption("decorators","decoratorsBeforeExport")&&this.raise(D.DecoratorsBeforeAfterExport,t.decorators[0]),t.decorators.unshift(...e)):t.decorators=e,this.resetStartLocationFromNode(t,e[0]),r&&this.resetStartLocationFromNode(r,t)),t}canHaveLeadingDecorator(){return this.match(80)}parseDecorators(e){let t=[];do{t.push(this.parseDecorator())}while(this.match(26));if(this.match(82))e||this.unexpected(),this.decoratorsEnabledBeforeExport()||this.raise(D.DecoratorExportClass,this.state.startLoc);else if(!this.canHaveLeadingDecorator())throw this.raise(D.UnexpectedLeadingDecorator,this.state.startLoc);return t}parseDecorator(){this.expectOnePlugin(["decorators","decorators-legacy"]);let e=this.startNode();if(this.next(),this.hasPlugin("decorators")){let t,r=this.state.startLoc;if(this.match(10)){let r=this.state.startLoc;this.next(),t=this.parseExpression(),this.expect(11),t=this.wrapParenthesis(r,t);let s=this.state.startLoc;e.expression=this.parseMaybeDecoratorArguments(t),!1===this.getPluginOption("decorators","allowCallParenthesized")&&e.expression!==t&&this.raise(D.DecoratorArgumentsOutsideParentheses,s)}else{for(t=this.parseIdentifier(!1);this.eat(16);){let e=this.startNodeAt(r);e.object=t,this.match(138)?(this.classScope.usePrivateName(this.state.value,this.state.startLoc),e.property=this.parsePrivateName()):e.property=this.parseIdentifier(!0),e.computed=!1,t=this.finishNode(e,"MemberExpression")}e.expression=this.parseMaybeDecoratorArguments(t)}}else e.expression=this.parseExprSubscripts();return this.finishNode(e,"Decorator")}parseMaybeDecoratorArguments(e){if(this.eat(10)){let t=this.startNodeAtNode(e);return t.callee=e,t.arguments=this.parseCallExpressionArguments(11,!1),this.toReferencedList(t.arguments),this.finishNode(t,"CallExpression")}return e}parseBreakContinueStatement(e,t){return this.next(),this.isLineTerminator()?e.label=null:(e.label=this.parseIdentifier(),this.semicolon()),this.verifyBreakContinue(e,t),this.finishNode(e,t?"BreakStatement":"ContinueStatement")}verifyBreakContinue(e,t){let r;for(r=0;r<this.state.labels.length;++r){let s=this.state.labels[r];if((null==e.label||s.name===e.label.name)&&(null!=s.kind&&(t||1===s.kind)||e.label&&t))break}if(r===this.state.labels.length){let r=t?"BreakStatement":"ContinueStatement";this.raise(D.IllegalBreakContinue,e,{type:r})}}parseDebuggerStatement(e){return this.next(),this.semicolon(),this.finishNode(e,"DebuggerStatement")}parseHeaderExpression(){this.expect(10);let e=this.parseExpression();return this.expect(11),e}parseDoWhileStatement(e){return this.next(),this.state.labels.push(Nt),e.body=this.withSmartMixTopicForbiddingContext((()=>this.parseStatement())),this.state.labels.pop(),this.expect(92),e.test=this.parseHeaderExpression(),this.eat(13),this.finishNode(e,"DoWhileStatement")}parseForStatement(e){this.next(),this.state.labels.push(Nt);let t=null;if(this.isAwaitAllowed()&&this.eatContextual(96)&&(t=this.state.lastTokStartLoc),this.scope.enter(0),this.expect(10),this.match(13))return null!==t&&this.unexpected(t),this.parseFor(e,null);let r=this.isContextual(100);{let s=this.isContextual(96)&&this.startsAwaitUsing(),i=s||this.isContextual(107)&&this.startsUsingForOf(),n=r&&this.hasFollowingBindingAtom()||i;if(this.match(74)||this.match(75)||n){let r,n=this.startNode();s?(r="await using",this.isAwaitAllowed()||this.raise(D.AwaitUsingNotInAsyncContext,this.state.startLoc),this.next()):r=this.state.value,this.next(),this.parseVar(n,!0,r);let a=this.finishNode(n,"VariableDeclaration"),o=this.match(58);return o&&i&&this.raise(D.ForInUsing,a),(o||this.isContextual(102))&&1===a.declarations.length?this.parseForIn(e,a,t):(null!==t&&this.unexpected(t),this.parseFor(e,a))}}let s=this.isContextual(95),i=new Ye,n=this.parseExpression(!0,i),a=this.isContextual(102);if(a&&(r&&this.raise(D.ForOfLet,n),null===t&&s&&"Identifier"===n.type&&this.raise(D.ForOfAsync,n)),a||this.match(58)){this.checkDestructuringPrivate(i),this.toAssignable(n,!0);let r=a?"ForOfStatement":"ForInStatement";return this.checkLVal(n,{in:{type:r}}),this.parseForIn(e,n,t)}return this.checkExpressionErrors(i,!0),null!==t&&this.unexpected(t),this.parseFor(e,n)}parseFunctionStatement(e,t,r){return this.next(),this.parseFunction(e,1|(r?2:0)|(t?8:0))}parseIfStatement(e){return this.next(),e.test=this.parseHeaderExpression(),e.consequent=this.parseStatementOrSloppyAnnexBFunctionDeclaration(),e.alternate=this.eat(66)?this.parseStatementOrSloppyAnnexBFunctionDeclaration():null,this.finishNode(e,"IfStatement")}parseReturnStatement(e){return!this.prodParam.hasReturn&&!this.options.allowReturnOutsideFunction&&this.raise(D.IllegalReturn,this.state.startLoc),this.next(),this.isLineTerminator()?e.argument=null:(e.argument=this.parseExpression(),this.semicolon()),this.finishNode(e,"ReturnStatement")}parseSwitchStatement(e){this.next(),e.discriminant=this.parseHeaderExpression();let t,r,s=e.cases=[];for(this.expect(5),this.state.labels.push(Bt),this.scope.enter(0);!this.match(8);)if(this.match(61)||this.match(65)){let e=this.match(61);t&&this.finishNode(t,"SwitchCase"),s.push(t=this.startNode()),t.consequent=[],this.next(),e?t.test=this.parseExpression():(r&&this.raise(D.MultipleDefaultsInSwitch,this.state.lastTokStartLoc),r=!0,t.test=null),this.expect(14)}else t?t.consequent.push(this.parseStatementListItem()):this.unexpected();return this.scope.exit(),t&&this.finishNode(t,"SwitchCase"),this.next(),this.state.labels.pop(),this.finishNode(e,"SwitchStatement")}parseThrowStatement(e){return this.next(),this.hasPrecedingLineBreak()&&this.raise(D.NewlineAfterThrow,this.state.lastTokEndLoc),e.argument=this.parseExpression(),this.semicolon(),this.finishNode(e,"ThrowStatement")}parseCatchClauseParam(){let e=this.parseBindingAtom();return this.scope.enter(this.options.annexB&&"Identifier"===e.type?8:0),this.checkLVal(e,{in:{type:"CatchClause"},binding:9}),e}parseTryStatement(e){if(this.next(),e.block=this.parseBlock(),e.handler=null,this.match(62)){let t=this.startNode();this.next(),this.match(10)?(this.expect(10),t.param=this.parseCatchClauseParam(),this.expect(11)):(t.param=null,this.scope.enter(0)),t.body=this.withSmartMixTopicForbiddingContext((()=>this.parseBlock(!1,!1))),this.scope.exit(),e.handler=this.finishNode(t,"CatchClause")}return e.finalizer=this.eat(67)?this.parseBlock():null,!e.handler&&!e.finalizer&&this.raise(D.NoCatchOrFinally,e),this.finishNode(e,"TryStatement")}parseVarStatement(e,t,r=!1){return this.next(),this.parseVar(e,!1,t,r),this.semicolon(),this.finishNode(e,"VariableDeclaration")}parseWhileStatement(e){return this.next(),e.test=this.parseHeaderExpression(),this.state.labels.push(Nt),e.body=this.withSmartMixTopicForbiddingContext((()=>this.parseStatement())),this.state.labels.pop(),this.finishNode(e,"WhileStatement")}parseWithStatement(e){return this.state.strict&&this.raise(D.StrictWith,this.state.startLoc),this.next(),e.object=this.parseHeaderExpression(),e.body=this.withSmartMixTopicForbiddingContext((()=>this.parseStatement())),this.finishNode(e,"WithStatement")}parseEmptyStatement(e){return this.next(),this.finishNode(e,"EmptyStatement")}parseLabeledStatement(e,t,r,s){for(let a of this.state.labels)a.name===t&&this.raise(D.LabelRedeclaration,r,{labelName:t});let i=(n=this.state.type)>=90&&n<=92?1:this.match(71)?2:null;var n;for(let a=this.state.labels.length-1;a>=0;a--){let t=this.state.labels[a];if(t.statementStart!==e.start)break;t.statementStart=this.state.start,t.kind=i}return this.state.labels.push({name:t,kind:i,statementStart:this.state.start}),e.body=8&s?this.parseStatementOrSloppyAnnexBFunctionDeclaration(!0):this.parseStatement(),this.state.labels.pop(),e.label=r,this.finishNode(e,"LabeledStatement")}parseExpressionStatement(e,t,r){return e.expression=t,this.semicolon(),this.finishNode(e,"ExpressionStatement")}parseBlock(e=!1,t=!0,r){let s=this.startNode();return e&&this.state.strictErrors.clear(),this.expect(5),t&&this.scope.enter(0),this.parseBlockBody(s,e,!1,8,r),t&&this.scope.exit(),this.finishNode(s,"BlockStatement")}isValidDirective(e){return"ExpressionStatement"===e.type&&"StringLiteral"===e.expression.type&&!e.expression.extra.parenthesized}parseBlockBody(e,t,r,s,i){let n=e.body=[],a=e.directives=[];this.parseBlockOrModuleBlockBody(n,t?a:void 0,r,s,i)}parseBlockOrModuleBlockBody(e,t,r,s,i){let n=this.state.strict,a=!1,o=!1;for(;!this.match(s);){let s=r?this.parseModuleItem():this.parseStatementListItem();if(t&&!o){if(this.isValidDirective(s)){let e=this.stmtToDirective(s);t.push(e),!a&&"use strict"===e.value.value&&(a=!0,this.setStrict(!0));continue}o=!0,this.state.strictErrors.clear()}e.push(s)}i?.call(this,a),n||this.setStrict(!1),this.next()}parseFor(e,t){return e.init=t,this.semicolon(!1),e.test=this.match(13)?null:this.parseExpression(),this.semicolon(!1),e.update=this.match(11)?null:this.parseExpression(),this.expect(11),e.body=this.withSmartMixTopicForbiddingContext((()=>this.parseStatement())),this.scope.exit(),this.state.labels.pop(),this.finishNode(e,"ForStatement")}parseForIn(e,t,r){let s=this.match(58);return this.next(),s?null!==r&&this.unexpected(r):e.await=null!==r,"VariableDeclaration"===t.type&&null!=t.declarations[0].init&&(!s||!this.options.annexB||this.state.strict||"var"!==t.kind||"Identifier"!==t.declarations[0].id.type)&&this.raise(D.ForInOfLoopInitializer,t,{type:s?"ForInStatement":"ForOfStatement"}),"AssignmentPattern"===t.type&&this.raise(D.InvalidLhs,t,{ancestor:{type:"ForStatement"}}),e.left=t,e.right=s?this.parseExpression():this.parseMaybeAssignAllowIn(),this.expect(11),e.body=this.withSmartMixTopicForbiddingContext((()=>this.parseStatement())),this.scope.exit(),this.state.labels.pop(),this.finishNode(e,s?"ForInStatement":"ForOfStatement")}parseVar(e,t,r,s=!1){let i=e.declarations=[];for(e.kind=r;;){let e=this.startNode();if(this.parseVarId(e,r),e.init=this.eat(29)?t?this.parseMaybeAssignDisallowIn():this.parseMaybeAssignAllowIn():null,null===e.init&&!s&&("Identifier"===e.id.type||t&&(this.match(58)||this.isContextual(102))?("const"===r||"using"===r||"await using"===r)&&!(this.match(58)||this.isContextual(102))&&this.raise(D.DeclarationMissingInitializer,this.state.lastTokEndLoc,{kind:r}):this.raise(D.DeclarationMissingInitializer,this.state.lastTokEndLoc,{kind:"destructuring"})),i.push(this.finishNode(e,"VariableDeclarator")),!this.eat(12))break}return e}parseVarId(e,t){let r=this.parseBindingAtom();("using"===t||"await using"===t)&&("ArrayPattern"===r.type||"ObjectPattern"===r.type)&&this.raise(D.UsingDeclarationHasBindingPattern,r.loc.start),this.checkLVal(r,{in:{type:"VariableDeclarator"},binding:"var"===t?5:8201}),e.id=r}parseAsyncFunctionExpression(e){return this.parseFunction(e,8)}parseFunction(e,t=0){let r=2&t,s=!!(1&t),i=s&&!(4&t),n=!!(8&t);this.initFunction(e,n),this.match(55)&&(r&&this.raise(D.GeneratorInSingleStatementContext,this.state.startLoc),this.next(),e.generator=!0),s&&(e.id=this.parseFunctionId(i));let a=this.state.maybeInArrowParameters;return this.state.maybeInArrowParameters=!1,this.scope.enter(2),this.prodParam.enter(Xe(n,e.generator)),s||(e.id=this.parseFunctionId()),this.parseFunctionParams(e,!1),this.withSmartMixTopicForbiddingContext((()=>{this.parseFunctionBodyAndFinish(e,s?"FunctionDeclaration":"FunctionExpression")})),this.prodParam.exit(),this.scope.exit(),s&&!r&&this.registerFunctionStatementId(e),this.state.maybeInArrowParameters=a,e}parseFunctionId(e){return e||q(this.state.type)?this.parseIdentifier():null}parseFunctionParams(e,t){this.expect(10),this.expressionScope.enter(new He(3)),e.params=this.parseBindingList(11,41,2|(t?4:0)),this.expressionScope.exit()}registerFunctionStatementId(e){e.id&&this.scope.declareName(e.id.name,!this.options.annexB||this.state.strict||e.generator||e.async?this.scope.treatFunctionsAsVar?5:8201:17,e.id.loc.start)}parseClass(e,t,r){this.next();let s=this.state.strict;return this.state.strict=!0,this.parseClassId(e,t,r),this.parseClassSuper(e),e.body=this.parseClassBody(!!e.superClass,s),this.finishNode(e,t?"ClassDeclaration":"ClassExpression")}isClassProperty(){return this.match(29)||this.match(13)||this.match(8)}isClassMethod(){return this.match(10)}nameIsConstructor(e){return"Identifier"===e.type&&"constructor"===e.name||"StringLiteral"===e.type&&"constructor"===e.value}isNonstaticConstructor(e){return!e.computed&&!e.static&&this.nameIsConstructor(e.key)}parseClassBody(e,t){this.classScope.enter();let r={hadConstructor:!1,hadSuperClass:e},s=[],i=this.startNode();if(i.body=[],this.expect(5),this.withSmartMixTopicForbiddingContext((()=>{for(;!this.match(8);){if(this.eat(13)){if(s.length>0)throw this.raise(D.DecoratorSemicolon,this.state.lastTokEndLoc);continue}if(this.match(26)){s.push(this.parseDecorator());continue}let e=this.startNode();s.length&&(e.decorators=s,this.resetStartLocationFromNode(e,s[0]),s=[]),this.parseClassMember(i,e,r),"constructor"===e.kind&&e.decorators&&e.decorators.length>0&&this.raise(D.DecoratorConstructor,e)}})),this.state.strict=t,this.next(),s.length)throw this.raise(D.TrailingDecorator,this.state.startLoc);return this.classScope.exit(),this.finishNode(i,"ClassBody")}parseClassMemberFromModifier(e,t){let r=this.parseIdentifier(!0);if(this.isClassMethod()){let s=t;return s.kind="method",s.computed=!1,s.key=r,s.static=!1,this.pushClassMethod(e,s,!1,!1,!1,!1),!0}if(this.isClassProperty()){let s=t;return s.computed=!1,s.key=r,s.static=!1,e.body.push(this.parseClassProperty(s)),!0}return this.resetPreviousNodeTrailingComments(r),!1}parseClassMember(e,t,r){let s=this.isContextual(106);if(s){if(this.parseClassMemberFromModifier(e,t))return;if(this.eat(5))return void this.parseClassStaticBlock(e,t)}this.parseClassMemberWithIsStatic(e,t,r,s)}parseClassMemberWithIsStatic(e,t,r,s){let i=t,n=t,a=t,o=t,u=t,p=i,l=i;if(t.static=s,this.parsePropertyNamePrefixOperator(t),this.eat(55)){p.kind="method";let t=this.match(138);return this.parseClassElementName(p),t?void this.pushClassPrivateMethod(e,n,!0,!1):(this.isNonstaticConstructor(i)&&this.raise(D.ConstructorIsGenerator,i.key),void this.pushClassMethod(e,i,!0,!1,!1,!1))}let c=!this.state.containsEsc&&q(this.state.type),h=this.parseClassElementName(t),d=c?h.name:null,m=this.isPrivateName(h),y=this.state.startLoc;if(this.parsePostMemberNameModifiers(l),this.isClassMethod()){if(p.kind="method",m)return void this.pushClassPrivateMethod(e,n,!1,!1);let s=this.isNonstaticConstructor(i),a=!1;s&&(i.kind="constructor",r.hadConstructor&&!this.hasPlugin("typescript")&&this.raise(D.DuplicateConstructor,h),s&&this.hasPlugin("typescript")&&t.override&&this.raise(D.OverrideOnConstructor,h),r.hadConstructor=!0,a=r.hadSuperClass),this.pushClassMethod(e,i,!1,!1,s,a)}else if(this.isClassProperty())m?this.pushClassPrivateProperty(e,o):this.pushClassProperty(e,a);else if("async"!==d||this.isLineTerminator())if("get"!==d&&"set"!==d||this.match(55)&&this.isLineTerminator())if("accessor"!==d||this.isLineTerminator())this.isLineTerminator()?m?this.pushClassPrivateProperty(e,o):this.pushClassProperty(e,a):this.unexpected();else{this.expectPlugin("decoratorAutoAccessors"),this.resetPreviousNodeTrailingComments(h);let t=this.match(138);this.parseClassElementName(a),this.pushClassAccessorProperty(e,u,t)}else{this.resetPreviousNodeTrailingComments(h),p.kind=d;let t=this.match(138);this.parseClassElementName(i),t?this.pushClassPrivateMethod(e,n,!1,!1):(this.isNonstaticConstructor(i)&&this.raise(D.ConstructorIsAccessor,i.key),this.pushClassMethod(e,i,!1,!1,!1,!1)),this.checkGetterSetterParams(i)}else{this.resetPreviousNodeTrailingComments(h);let t=this.eat(55);l.optional&&this.unexpected(y),p.kind="method";let r=this.match(138);this.parseClassElementName(p),this.parsePostMemberNameModifiers(l),r?this.pushClassPrivateMethod(e,n,t,!0):(this.isNonstaticConstructor(i)&&this.raise(D.ConstructorIsAsync,i.key),this.pushClassMethod(e,i,t,!0,!1,!1))}}parseClassElementName(e){let{type:t,value:r}=this.state;if((132===t||133===t)&&e.static&&"prototype"===r&&this.raise(D.StaticPrototype,this.state.startLoc),138===t){"constructor"===r&&this.raise(D.ConstructorClassPrivateField,this.state.startLoc);let t=this.parsePrivateName();return e.key=t,t}return this.parsePropertyName(e),e.key}parseClassStaticBlock(e,t){var r;this.scope.enter(208);let s=this.state.labels;this.state.labels=[],this.prodParam.enter(0);let i=t.body=[];this.parseBlockOrModuleBlockBody(i,void 0,!1,8),this.prodParam.exit(),this.scope.exit(),this.state.labels=s,e.body.push(this.finishNode(t,"StaticBlock")),null!=(r=t.decorators)&&r.length&&this.raise(D.DecoratorStaticBlock,t)}pushClassProperty(e,t){!t.computed&&this.nameIsConstructor(t.key)&&this.raise(D.ConstructorClassField,t.key),e.body.push(this.parseClassProperty(t))}pushClassPrivateProperty(e,t){let r=this.parseClassPrivateProperty(t);e.body.push(r),this.classScope.declarePrivateName(this.getPrivateNameSV(r.key),0,r.key.loc.start)}pushClassAccessorProperty(e,t,r){!r&&!t.computed&&this.nameIsConstructor(t.key)&&this.raise(D.ConstructorClassField,t.key);let s=this.parseClassAccessorProperty(t);e.body.push(s),r&&this.classScope.declarePrivateName(this.getPrivateNameSV(s.key),0,s.key.loc.start)}pushClassMethod(e,t,r,s,i,n){e.body.push(this.parseMethod(t,r,s,i,n,"ClassMethod",!0))}pushClassPrivateMethod(e,t,r,s){let i=this.parseMethod(t,r,s,!1,!1,"ClassPrivateMethod",!0);e.body.push(i);let n="get"===i.kind?i.static?6:2:"set"===i.kind?i.static?5:1:0;this.declareClassPrivateMethodInScope(i,n)}declareClassPrivateMethodInScope(e,t){this.classScope.declarePrivateName(this.getPrivateNameSV(e.key),t,e.key.loc.start)}parsePostMemberNameModifiers(e){}parseClassPrivateProperty(e){return this.parseInitializer(e),this.semicolon(),this.finishNode(e,"ClassPrivateProperty")}parseClassProperty(e){return this.parseInitializer(e),this.semicolon(),this.finishNode(e,"ClassProperty")}parseClassAccessorProperty(e){return this.parseInitializer(e),this.semicolon(),this.finishNode(e,"ClassAccessorProperty")}parseInitializer(e){this.scope.enter(80),this.expressionScope.enter(Ke()),this.prodParam.enter(0),e.value=this.eat(29)?this.parseMaybeAssignAllowIn():null,this.expressionScope.exit(),this.prodParam.exit(),this.scope.exit()}parseClassId(e,t,r,s=8331){if(q(this.state.type))e.id=this.parseIdentifier(),t&&this.declareNameFromIdentifier(e.id,s);else{if(!r&&t)throw this.raise(D.MissingClassName,this.state.startLoc);e.id=null}}parseClassSuper(e){e.superClass=this.eat(81)?this.parseExprSubscripts():null}parseExport(e,t){let r=this.parseMaybeImportPhase(e,!0),s=this.maybeParseExportDefaultSpecifier(e,r),i=!s||this.eat(12),n=i&&this.eatExportStar(e),a=n&&this.maybeParseExportNamespaceSpecifier(e),o=i&&(!a||this.eat(12)),u=s||n;if(n&&!a){if(s&&this.unexpected(),t)throw this.raise(D.UnsupportedDecoratorExport,e);return this.parseExportFrom(e,!0),this.finishNode(e,"ExportAllDeclaration")}let p,l=this.maybeParseExportNamedSpecifiers(e);if(s&&i&&!n&&!l&&this.unexpected(null,5),a&&o&&this.unexpected(null,98),u||l){if(p=!1,t)throw this.raise(D.UnsupportedDecoratorExport,e);this.parseExportFrom(e,u)}else p=this.maybeParseExportDeclaration(e);if(u||l||p){var c;let r=e;if(this.checkExport(r,!0,!1,!!r.source),"ClassDeclaration"===(null==(c=r.declaration)?void 0:c.type))this.maybeTakeDecorators(t,r.declaration,r);else if(t)throw this.raise(D.UnsupportedDecoratorExport,e);return this.finishNode(r,"ExportNamedDeclaration")}if(this.eat(65)){let r=e,s=this.parseExportDefaultExpression();if(r.declaration=s,"ClassDeclaration"===s.type)this.maybeTakeDecorators(t,s,r);else if(t)throw this.raise(D.UnsupportedDecoratorExport,e);return this.checkExport(r,!0,!0),this.finishNode(r,"ExportDefaultDeclaration")}this.unexpected(null,5)}eatExportStar(e){return this.eat(55)}maybeParseExportDefaultSpecifier(e,t){if(t||this.isExportDefaultSpecifier()){this.expectPlugin("exportDefaultFrom",null==t?void 0:t.loc.start);let r=t||this.parseIdentifier(!0),s=this.startNodeAtNode(r);return s.exported=r,e.specifiers=[this.finishNode(s,"ExportDefaultSpecifier")],!0}return!1}maybeParseExportNamespaceSpecifier(e){if(this.isContextual(93)){var t;(t=e).specifiers??(t.specifiers=[]);let r=this.startNodeAt(this.state.lastTokStartLoc);return this.next(),r.exported=this.parseModuleExportName(),e.specifiers.push(this.finishNode(r,"ExportNamespaceSpecifier")),!0}return!1}maybeParseExportNamedSpecifiers(e){if(this.match(5)){let t=e;t.specifiers||(t.specifiers=[]);let r="type"===t.exportKind;return t.specifiers.push(...this.parseExportSpecifiers(r)),t.source=null,t.declaration=null,this.hasPlugin("importAssertions")&&(t.assertions=[]),!0}return!1}maybeParseExportDeclaration(e){return!!this.shouldParseExportDeclaration()&&(e.specifiers=[],e.source=null,this.hasPlugin("importAssertions")&&(e.assertions=[]),e.declaration=this.parseExportDeclaration(e),!0)}isAsyncFunction(){if(!this.isContextual(95))return!1;let e=this.nextTokenInLineStart();return this.isUnparsedContextual(e,"function")}parseExportDefaultExpression(){let e=this.startNode();if(this.match(68))return this.next(),this.parseFunction(e,5);if(this.isAsyncFunction())return this.next(),this.next(),this.parseFunction(e,13);if(this.match(80))return this.parseClass(e,!0,!0);if(this.match(26))return this.hasPlugin("decorators")&&!0===this.getPluginOption("decorators","decoratorsBeforeExport")&&this.raise(D.DecoratorBeforeExport,this.state.startLoc),this.parseClass(this.maybeTakeDecorators(this.parseDecorators(!1),this.startNode()),!0,!0);if(this.match(75)||this.match(74)||this.isLet())throw this.raise(D.UnsupportedDefaultExport,this.state.startLoc);let t=this.parseMaybeAssignAllowIn();return this.semicolon(),t}parseExportDeclaration(e){return this.match(80)?this.parseClass(this.startNode(),!0,!1):this.parseStatementListItem()}isExportDefaultSpecifier(){let{type:e}=this.state;if(q(e)){if(95===e&&!this.state.containsEsc||100===e)return!1;if((130===e||129===e)&&!this.state.containsEsc){let{type:e}=this.lookahead();if(q(e)&&98!==e||5===e)return this.expectOnePlugin(["flow","typescript"]),!1}}else if(!this.match(65))return!1;let t=this.nextTokenStart(),r=this.isUnparsedContextual(t,"from");if(44===this.input.charCodeAt(t)||q(this.state.type)&&r)return!0;if(this.match(65)&&r){let e=this.input.charCodeAt(this.nextTokenStartSince(t+4));return 34===e||39===e}return!1}parseExportFrom(e,t){this.eatContextual(98)?(e.source=this.parseImportSource(),this.checkExport(e),this.maybeParseImportAttributes(e),this.checkJSONModuleImport(e)):t&&this.unexpected(),this.semicolon()}shouldParseExportDeclaration(){let{type:e}=this.state;return 26===e&&(this.expectOnePlugin(["decorators","decorators-legacy"]),this.hasPlugin("decorators"))?(!0===this.getPluginOption("decorators","decoratorsBeforeExport")&&this.raise(D.DecoratorBeforeExport,this.state.startLoc),!0):this.isContextual(107)||this.isContextual(96)&&this.startsAwaitUsing()?(this.raise(D.UsingDeclarationExport,this.state.startLoc),!0):74===e||75===e||68===e||80===e||this.isLet()||this.isAsyncFunction()}checkExport(e,t,r,s){var i;if(t)if(r){if(this.checkDuplicateExports(e,"default"),this.hasPlugin("exportDefaultFrom")){var n;let t=e.declaration;"Identifier"===t.type&&"from"===t.name&&t.end-t.start==4&&(null==(n=t.extra)||!n.parenthesized)&&this.raise(D.ExportDefaultFromAsIdentifier,t)}}else if(null!=(i=e.specifiers)&&i.length)for(let a of e.specifiers){let{exported:e}=a,t="Identifier"===e.type?e.name:e.value;if(this.checkDuplicateExports(a,t),!s&&a.local){let{local:e}=a;"Identifier"!==e.type?this.raise(D.ExportBindingIsString,a,{localName:e.value,exportName:t}):(this.checkReservedWord(e.name,e.loc.start,!0,!1),this.scope.checkLocalExport(e))}}else if(e.declaration){let t=e.declaration;if("FunctionDeclaration"===t.type||"ClassDeclaration"===t.type){let{id:r}=t;if(!r)throw new Error("Assertion failure");this.checkDuplicateExports(e,r.name)}else if("VariableDeclaration"===t.type)for(let e of t.declarations)this.checkDeclaration(e.id)}}checkDeclaration(e){if("Identifier"===e.type)this.checkDuplicateExports(e,e.name);else if("ObjectPattern"===e.type)for(let t of e.properties)this.checkDeclaration(t);else if("ArrayPattern"===e.type)for(let t of e.elements)t&&this.checkDeclaration(t);else"ObjectProperty"===e.type?this.checkDeclaration(e.value):"RestElement"===e.type?this.checkDeclaration(e.argument):"AssignmentPattern"===e.type&&this.checkDeclaration(e.left)}checkDuplicateExports(e,t){this.exportedIdentifiers.has(t)&&("default"===t?this.raise(D.DuplicateDefaultExport,e):this.raise(D.DuplicateExport,e,{exportName:t})),this.exportedIdentifiers.add(t)}parseExportSpecifiers(e){let t=[],r=!0;for(this.expect(5);!this.eat(8);){if(r)r=!1;else if(this.expect(12),this.eat(8))break;let s=this.isContextual(130),i=this.match(133),n=this.startNode();n.local=this.parseModuleExportName(),t.push(this.parseExportSpecifier(n,i,e,s))}return t}parseExportSpecifier(e,t,r,s){return this.eatContextual(93)?e.exported=this.parseModuleExportName():t?e.exported=tt(e.local):e.exported||(e.exported=et(e.local)),this.finishNode(e,"ExportSpecifier")}parseModuleExportName(){if(this.match(133)){let e=this.parseStringLiteral(this.state.value),t=Lt.exec(e.value);return t&&this.raise(D.ModuleExportNameHasLoneSurrogate,e,{surrogateCharCode:t[0].charCodeAt(0)}),e}return this.parseIdentifier(!0)}isJSONModuleImport(e){return null!=e.assertions&&e.assertions.some((({key:e,value:t})=>"json"===t.value&&("Identifier"===e.type?"type"===e.name:"type"===e.value)))}checkImportReflection(e){let{specifiers:t}=e,r=1===t.length?t[0].type:null;if("source"===e.phase)"ImportDefaultSpecifier"!==r&&this.raise(D.SourcePhaseImportRequiresDefault,t[0].loc.start);else if("defer"===e.phase)"ImportNamespaceSpecifier"!==r&&this.raise(D.DeferImportRequiresNamespace,t[0].loc.start);else if(e.module){var s;"ImportDefaultSpecifier"!==r&&this.raise(D.ImportReflectionNotBinding,t[0].loc.start),(null==(s=e.assertions)?void 0:s.length)>0&&this.raise(D.ImportReflectionHasAssertion,t[0].loc.start)}}checkJSONModuleImport(e){if(this.isJSONModuleImport(e)&&"ExportAllDeclaration"!==e.type){let{specifiers:t}=e;if(null!=t){let e=t.find((e=>{let t;if("ExportSpecifier"===e.type?t=e.local:"ImportSpecifier"===e.type&&(t=e.imported),void 0!==t)return"Identifier"===t.type?"default"!==t.name:"default"!==t.value}));void 0!==e&&this.raise(D.ImportJSONBindingNotDefault,e.loc.start)}}}isPotentialImportPhase(e){return!e&&(this.isContextual(105)||this.isContextual(97)||this.isContextual(127))}applyImportPhase(e,t,r,s){t||("module"===r?(this.expectPlugin("importReflection",s),e.module=!0):this.hasPlugin("importReflection")&&(e.module=!1),"source"===r?(this.expectPlugin("sourcePhaseImports",s),e.phase="source"):"defer"===r?(this.expectPlugin("deferredImportEvaluation",s),e.phase="defer"):this.hasPlugin("sourcePhaseImports")&&(e.phase=null))}parseMaybeImportPhase(e,t){if(!this.isPotentialImportPhase(t))return this.applyImportPhase(e,t,null),null;let r=this.parseIdentifier(!0),{type:s}=this.state;return(J(s)?98!==s||102===this.lookaheadCharCode():12!==s)?(this.resetPreviousIdentifierLeadingComments(r),this.applyImportPhase(e,t,r.name,r.loc.start),null):(this.applyImportPhase(e,t,null),r)}isPrecedingIdImportPhase(e){let{type:t}=this.state;return q(t)?98!==t||102===this.lookaheadCharCode():12!==t}parseImport(e){return this.match(133)?this.parseImportSourceAndAttributes(e):this.parseImportSpecifiersAndAfter(e,this.parseMaybeImportPhase(e,!1))}parseImportSpecifiersAndAfter(e,t){e.specifiers=[];let r=!this.maybeParseDefaultImportSpecifier(e,t)||this.eat(12),s=r&&this.maybeParseStarImportSpecifier(e);return r&&!s&&this.parseNamedImportSpecifiers(e),this.expectContextual(98),this.parseImportSourceAndAttributes(e)}parseImportSourceAndAttributes(e){return e.specifiers??=[],e.source=this.parseImportSource(),this.maybeParseImportAttributes(e),this.checkImportReflection(e),this.checkJSONModuleImport(e),this.semicolon(),this.finishNode(e,"ImportDeclaration")}parseImportSource(){return this.match(133)||this.unexpected(),this.parseExprAtom()}parseImportSpecifierLocal(e,t,r){t.local=this.parseIdentifier(),e.specifiers.push(this.finishImportSpecifier(t,r))}finishImportSpecifier(e,t,r=8201){return this.checkLVal(e.local,{in:{type:t},binding:r}),this.finishNode(e,t)}parseImportAttributes(){this.expect(5);let e=[],t=new Set;do{if(this.match(8))break;let r=this.startNode(),s=this.state.value;if(t.has(s)&&this.raise(D.ModuleAttributesWithDuplicateKeys,this.state.startLoc,{key:s}),t.add(s),this.match(133)?r.key=this.parseStringLiteral(s):r.key=this.parseIdentifier(!0),this.expect(14),!this.match(133))throw this.raise(D.ModuleAttributeInvalidValue,this.state.startLoc);r.value=this.parseStringLiteral(this.state.value),e.push(this.finishNode(r,"ImportAttribute"))}while(this.eat(12));return this.expect(8),e}parseModuleAttributes(){let e=[],t=new Set;do{let r=this.startNode();if(r.key=this.parseIdentifier(!0),"type"!==r.key.name&&this.raise(D.ModuleAttributeDifferentFromType,r.key),t.has(r.key.name)&&this.raise(D.ModuleAttributesWithDuplicateKeys,r.key,{key:r.key.name}),t.add(r.key.name),this.expect(14),!this.match(133))throw this.raise(D.ModuleAttributeInvalidValue,this.state.startLoc);r.value=this.parseStringLiteral(this.state.value),e.push(this.finishNode(r,"ImportAttribute"))}while(this.eat(12));return e}maybeParseImportAttributes(e){let t,r=!1;if(this.match(76)){if(this.hasPrecedingLineBreak()&&40===this.lookaheadCharCode())return;this.next(),this.hasPlugin("moduleAttributes")?t=this.parseModuleAttributes():(this.expectImportAttributesPlugin(),t=this.parseImportAttributes()),r=!0}else if(this.isContextual(94)&&!this.hasPrecedingLineBreak())this.hasPlugin("importAttributes")?(!0!==this.getPluginOption("importAttributes","deprecatedAssertSyntax")&&this.raise(D.ImportAttributesUseAssert,this.state.startLoc),this.addExtra(e,"deprecatedAssertSyntax",!0)):this.expectOnePlugin(["importAttributes","importAssertions"]),this.next(),t=this.parseImportAttributes();else if(this.hasPlugin("importAttributes")||this.hasPlugin("importAssertions"))t=[];else{if(!this.hasPlugin("moduleAttributes"))return;t=[]}!r&&this.hasPlugin("importAssertions")?e.assertions=t:e.attributes=t}maybeParseDefaultImportSpecifier(e,t){if(t){let r=this.startNodeAtNode(t);return r.local=t,e.specifiers.push(this.finishImportSpecifier(r,"ImportDefaultSpecifier")),!0}return!!J(this.state.type)&&(this.parseImportSpecifierLocal(e,this.startNode(),"ImportDefaultSpecifier"),!0)}maybeParseStarImportSpecifier(e){if(this.match(55)){let t=this.startNode();return this.next(),this.expectContextual(93),this.parseImportSpecifierLocal(e,t,"ImportNamespaceSpecifier"),!0}return!1}parseNamedImportSpecifiers(e){let t=!0;for(this.expect(5);!this.eat(8);){if(t)t=!1;else{if(this.eat(14))throw this.raise(D.DestructureNamedImport,this.state.startLoc);if(this.expect(12),this.eat(8))break}let r=this.startNode(),s=this.match(133),i=this.isContextual(130);r.imported=this.parseModuleExportName();let n=this.parseImportSpecifier(r,s,"type"===e.importKind||"typeof"===e.importKind,i,void 0);e.specifiers.push(n)}}parseImportSpecifier(e,t,r,s,i){if(this.eatContextual(93))e.local=this.parseIdentifier();else{let{imported:r}=e;if(t)throw this.raise(D.ImportBindingIsString,e,{importName:r.value});this.checkReservedWord(r.name,e.loc.start,!0,!0),e.local||(e.local=et(r))}return this.finishImportSpecifier(e,"ImportSpecifier",i)}isThisParam(e){return"Identifier"===e.type&&"this"===e.name}},jt=class extends Ot{constructor(e,t){e=function(e){if(null==e)return Object.assign({},kt);if(null!=e.annexB&&!1!==e.annexB)throw new Error("The `annexB` option can only be set to `false`.");let t={};for(let s of Object.keys(kt)){var r;t[s]=null!=(r=e[s])?r:kt[s]}return t}(e),super(e,t),this.options=e,this.initializeScopes(),this.plugins=function(e){let t=new Map;for(let r of e){let[e,s]=Array.isArray(r)?r:[r,{}];t.has(e)||t.set(e,s||{})}return t}(this.options.plugins),this.filename=e.sourceFilename}getScopeHandler(){return xe}parse(){this.enterInitialScopes();let e=this.startNode(),t=this.startNode();return this.nextToken(),e.errors=null,this.parseTopLevel(e,t),e.errors=this.state.errors,e.comments.length=this.state.commentsLen,e}},_t=function(e){let t={};for(let r of Object.keys(e))t[r]=Y(e[r]);return t}($);function Rt(e,t){let r=jt;return null!=e&&e.plugins&&(function(e){if(Ft(e,"decorators")){if(Ft(e,"decorators-legacy"))throw new Error("Cannot use the decorators and decorators-legacy plugin together");let t=bt(e,"decorators","decoratorsBeforeExport");if(null!=t&&"boolean"!=typeof t)throw new Error("'decoratorsBeforeExport' must be a boolean, if specified.");let r=bt(e,"decorators","allowCallParenthesized");if(null!=r&&"boolean"!=typeof r)throw new Error("'allowCallParenthesized' must be a boolean.")}if(Ft(e,"flow")&&Ft(e,"typescript"))throw new Error("Cannot combine flow and typescript plugins.");if(Ft(e,"placeholders")&&Ft(e,"v8intrinsic"))throw new Error("Cannot combine placeholders and v8intrinsic plugins.");if(Ft(e,"pipelineOperator")){let t=bt(e,"pipelineOperator","proposal");if(!St.includes(t)){let e=St.map((e=>`"${e}"`)).join(", ");throw new Error(`"pipelineOperator" requires "proposal" option whose value must be one of: ${e}.`)}let r=["recordAndTuple",{syntaxType:"hash"}],s=Ft(e,r);if("hack"===t){if(Ft(e,"placeholders"))throw new Error("Cannot combine placeholders plugin and Hack-style pipes.");if(Ft(e,"v8intrinsic"))throw new Error("Cannot combine v8intrinsic plugin and Hack-style pipes.");let t=bt(e,"pipelineOperator","topicToken");if(!Pt.includes(t)){let e=Pt.map((e=>`"${e}"`)).join(", ");throw new Error(`"pipelineOperator" in "proposal": "hack" mode also requires a "topicToken" option whose value must be one of: ${e}.`)}if("#"===t&&s)throw new Error(`Plugin conflict between \`["pipelineOperator", { proposal: "hack", topicToken: "#" }]\` and \`${JSON.stringify(r)}\`.`)}else if("smart"===t&&s)throw new Error(`Plugin conflict between \`["pipelineOperator", { proposal: "smart" }]\` and \`${JSON.stringify(r)}\`.`)}if(Ft(e,"moduleAttributes")){if(Ft(e,"importAssertions")||Ft(e,"importAttributes"))throw new Error("Cannot combine importAssertions, importAttributes and moduleAttributes plugins.");if("may-2020"!==bt(e,"moduleAttributes","version"))throw new Error("The 'moduleAttributes' plugin requires a 'version' option, representing the last proposal update. Currently, the only supported value is 'may-2020'.")}if(Ft(e,"importAssertions")&&Ft(e,"importAttributes"))throw new Error("Cannot combine importAssertions and importAttributes plugins.");if(Ft(e,"recordAndTuple")){let t=bt(e,"recordAndTuple","syntaxType");if(null!=t){let e=["hash","bar"];if(!e.includes(t))throw new Error("The 'syntaxType' option of the 'recordAndTuple' plugin must be one of: "+e.map((e=>`'${e}'`)).join(", "))}}if(Ft(e,"asyncDoExpressions")&&!Ft(e,"doExpressions")){let e=new Error("'asyncDoExpressions' requires 'doExpressions', please add 'doExpressions' to parser plugins.");throw e.missingPlugins="doExpressions",e}if(Ft(e,"optionalChainingAssign")&&"2023-07"!==bt(e,"optionalChainingAssign","version"))throw new Error("The 'optionalChainingAssign' plugin requires a 'version' option, representing the last proposal update. Currently, the only supported value is '2023-07'.")}(e.plugins),r=function(e){let t=vt.filter((t=>Ft(e,t))),r=t.join("/"),s=Ut[r];if(!s){s=jt;for(let e of t)s=wt[e](s);Ut[r]=s}return s}(e.plugins)),new r(e,t)}var Ut={};e.parse=function(e,t){var r;if("unambiguous"!==(null==(r=t)?void 0:r.sourceType))return Rt(t,e).parse();t=Object.assign({},t);try{t.sourceType="module";let r=Rt(t,e),s=r.parse();if(r.sawUnambiguousESM)return s;if(r.ambiguousScriptDifferentAst)try{return t.sourceType="script",Rt(t,e).parse()}catch{}else s.program.sourceType="script";return s}catch(s){try{return t.sourceType="script",Rt(t,e).parse()}catch{}throw s}},e.parseExpression=function(e,t){let r=Rt(t,e);return r.options.strictMode&&(r.state.strict=!0),r.getExpression()},e.tokTypes=_t},Nr=()=>(Io||vo((Io={exports:{}}).exports,Io),Io.exports),vr(Br={},{parsers:()=>Bs}),Lr=Ir(Nr(),1),Yp(/\s/u),Mr=Yp(" \t"),Yp(",; \t"),Or=Yp(/[^\n\r]/u),jr=Qp,_r=Zp,Rr=el,Ur=tl,$r=rl,qr=sl,Jr=(e,t,r)=>{if(!e||null!=t)return Array.isArray(t)||"string"==typeof t?t[r<0?t.length+r:r]:t.at(r)},Vr=Jr,zr=il,Hr=function(e){let t=new Set(e);return e=>t.has(null==e?void 0:e.type)}(["Block","CommentBlock","MultiLine"]),Wr=ol,Kr=ul,Xr=null;for(let e=0;e<=10;e++)pl();Gr=ll({ArrayExpression:["elements"],AssignmentExpression:["left","right"],BinaryExpression:["left","right"],InterpreterDirective:[],Directive:["value"],DirectiveLiteral:[],BlockStatement:["directives","body"],BreakStatement:["label"],CallExpression:["callee","arguments","typeParameters","typeArguments"],CatchClause:["param","body"],ConditionalExpression:["test","consequent","alternate"],ContinueStatement:["label"],DebuggerStatement:[],DoWhileStatement:["test","body"],EmptyStatement:[],ExpressionStatement:["expression"],File:["program"],ForInStatement:["left","right","body"],ForStatement:["init","test","update","body"],FunctionDeclaration:["id","params","body","returnType","typeParameters","predicate"],FunctionExpression:["id","params","body","returnType","typeParameters"],Identifier:["typeAnnotation","decorators"],IfStatement:["test","consequent","alternate"],LabeledStatement:["label","body"],StringLiteral:[],NumericLiteral:[],NullLiteral:[],BooleanLiteral:[],RegExpLiteral:[],LogicalExpression:["left","right"],MemberExpression:["object","property"],NewExpression:["callee","arguments","typeParameters","typeArguments"],Program:["directives","body"],ObjectExpression:["properties"],ObjectMethod:["key","params","body","decorators","returnType","typeParameters"],ObjectProperty:["key","value","decorators"],RestElement:["argument","typeAnnotation","decorators"],ReturnStatement:["argument"],SequenceExpression:["expressions"],ParenthesizedExpression:["expression"],SwitchCase:["test","consequent"],SwitchStatement:["discriminant","cases"],ThisExpression:[],ThrowStatement:["argument"],TryStatement:["block","handler","finalizer"],UnaryExpression:["argument"],UpdateExpression:["argument"],VariableDeclaration:["declarations"],VariableDeclarator:["id","init"],WhileStatement:["test","body"],WithStatement:["object","body"],AssignmentPattern:["left","right","decorators","typeAnnotation"],ArrayPattern:["elements","typeAnnotation","decorators"],ArrowFunctionExpression:["params","body","returnType","typeParameters","predicate"],ClassBody:["body"],ClassExpression:["id","body","superClass","mixins","typeParameters","superTypeParameters","implements","decorators","superTypeArguments"],ClassDeclaration:["id","body","superClass","mixins","typeParameters","superTypeParameters","implements","decorators","superTypeArguments"],ExportAllDeclaration:["source","attributes","exported"],ExportDefaultDeclaration:["declaration"],ExportNamedDeclaration:["declaration","specifiers","source","attributes"],ExportSpecifier:["local","exported"],ForOfStatement:["left","right","body"],ImportDeclaration:["specifiers","source","attributes"],ImportDefaultSpecifier:["local"],ImportNamespaceSpecifier:["local"],ImportSpecifier:["local","imported"],ImportExpression:["source","options","attributes"],MetaProperty:["meta","property"],ClassMethod:["key","params","body","decorators","returnType","typeParameters"],ObjectPattern:["properties","typeAnnotation","decorators"],SpreadElement:["argument"],Super:[],TaggedTemplateExpression:["tag","quasi","typeParameters","typeArguments"],TemplateElement:[],TemplateLiteral:["quasis","expressions"],YieldExpression:["argument"],AwaitExpression:["argument"],Import:[],BigIntLiteral:[],ExportNamespaceSpecifier:["exported"],OptionalMemberExpression:["object","property"],OptionalCallExpression:["callee","arguments","typeParameters","typeArguments"],ClassProperty:["key","value","typeAnnotation","decorators","variance"],ClassAccessorProperty:["key","value","typeAnnotation","decorators"],ClassPrivateProperty:["key","value","decorators","typeAnnotation","variance"],ClassPrivateMethod:["key","params","body","decorators","returnType","typeParameters"],PrivateName:["id"],StaticBlock:["body"],AnyTypeAnnotation:[],ArrayTypeAnnotation:["elementType"],BooleanTypeAnnotation:[],BooleanLiteralTypeAnnotation:[],NullLiteralTypeAnnotation:[],ClassImplements:["id","typeParameters"],DeclareClass:["id","typeParameters","extends","mixins","implements","body"],DeclareFunction:["id","predicate"],DeclareInterface:["id","typeParameters","extends","body"],DeclareModule:["id","body"],DeclareModuleExports:["typeAnnotation"],DeclareTypeAlias:["id","typeParameters","right"],DeclareOpaqueType:["id","typeParameters","supertype"],DeclareVariable:["id"],DeclareExportDeclaration:["declaration","specifiers","source"],DeclareExportAllDeclaration:["source"],DeclaredPredicate:["value"],ExistsTypeAnnotation:[],FunctionTypeAnnotation:["typeParameters","params","rest","returnType","this"],FunctionTypeParam:["name","typeAnnotation"],GenericTypeAnnotation:["id","typeParameters"],InferredPredicate:[],InterfaceExtends:["id","typeParameters"],InterfaceDeclaration:["id","typeParameters","extends","body"],InterfaceTypeAnnotation:["extends","body"],IntersectionTypeAnnotation:["types"],MixedTypeAnnotation:[],EmptyTypeAnnotation:[],NullableTypeAnnotation:["typeAnnotation"],NumberLiteralTypeAnnotation:[],NumberTypeAnnotation:[],ObjectTypeAnnotation:["properties","indexers","callProperties","internalSlots"],ObjectTypeInternalSlot:["id","value"],ObjectTypeCallProperty:["value"],ObjectTypeIndexer:["id","key","value","variance"],ObjectTypeProperty:["key","value","variance"],ObjectTypeSpreadProperty:["argument"],OpaqueType:["id","typeParameters","supertype","impltype"],QualifiedTypeIdentifier:["id","qualification"],StringLiteralTypeAnnotation:[],StringTypeAnnotation:[],SymbolTypeAnnotation:[],ThisTypeAnnotation:[],TupleTypeAnnotation:["types","elementTypes"],TypeofTypeAnnotation:["argument","typeArguments"],TypeAlias:["id","typeParameters","right"],TypeAnnotation:["typeAnnotation"],TypeCastExpression:["expression","typeAnnotation"],TypeParameter:["bound","default","variance"],TypeParameterDeclaration:["params"],TypeParameterInstantiation:["params"],UnionTypeAnnotation:["types"],Variance:[],VoidTypeAnnotation:[],EnumDeclaration:["id","body"],EnumBooleanBody:["members"],EnumNumberBody:["members"],EnumStringBody:["members"],EnumSymbolBody:["members"],EnumBooleanMember:["id","init"],EnumNumberMember:["id","init"],EnumStringMember:["id","init"],EnumDefaultedMember:["id"],IndexedAccessType:["objectType","indexType"],OptionalIndexedAccessType:["objectType","indexType"],JSXAttribute:["name","value"],JSXClosingElement:["name"],JSXElement:["openingElement","children","closingElement"],JSXEmptyExpression:[],JSXExpressionContainer:["expression"],JSXSpreadChild:["expression"],JSXIdentifier:[],JSXMemberExpression:["object","property"],JSXNamespacedName:["namespace","name"],JSXOpeningElement:["name","attributes","typeArguments","typeParameters"],JSXSpreadAttribute:["argument"],JSXText:[],JSXFragment:["openingFragment","children","closingFragment"],JSXOpeningFragment:[],JSXClosingFragment:[],Noop:[],Placeholder:[],V8IntrinsicIdentifier:[],ArgumentPlaceholder:[],BindExpression:["object","callee"],ImportAttribute:["key","value"],Decorator:["expression"],DoExpression:["body"],ExportDefaultSpecifier:["exported"],RecordExpression:["properties"],TupleExpression:["elements"],DecimalLiteral:[],ModuleExpression:["body"],TopicReference:[],PipelineTopicExpression:["expression"],PipelineBareFunction:["callee"],PipelinePrimaryTopicReference:[],TSParameterProperty:["parameter","decorators"],TSDeclareFunction:["id","typeParameters","params","returnType","body"],TSDeclareMethod:["decorators","key","typeParameters","params","returnType"],TSQualifiedName:["left","right"],TSCallSignatureDeclaration:["typeParameters","parameters","typeAnnotation","params","returnType"],TSConstructSignatureDeclaration:["typeParameters","parameters","typeAnnotation","params","returnType"],TSPropertySignature:["key","typeAnnotation"],TSMethodSignature:["key","typeParameters","parameters","typeAnnotation","params","returnType"],TSIndexSignature:["parameters","typeAnnotation"],TSAnyKeyword:[],TSBooleanKeyword:[],TSBigIntKeyword:[],TSIntrinsicKeyword:[],TSNeverKeyword:[],TSNullKeyword:[],TSNumberKeyword:[],TSObjectKeyword:[],TSStringKeyword:[],TSSymbolKeyword:[],TSUndefinedKeyword:[],TSUnknownKeyword:[],TSVoidKeyword:[],TSThisType:[],TSFunctionType:["typeParameters","parameters","typeAnnotation","params","returnType"],TSConstructorType:["typeParameters","parameters","typeAnnotation","params","returnType"],TSTypeReference:["typeName","typeParameters","typeArguments"],TSTypePredicate:["parameterName","typeAnnotation"],TSTypeQuery:["exprName","typeParameters","typeArguments"],TSTypeLiteral:["members"],TSArrayType:["elementType"],TSTupleType:["elementTypes"],TSOptionalType:["typeAnnotation"],TSRestType:["typeAnnotation"],TSNamedTupleMember:["label","elementType"],TSUnionType:["types"],TSIntersectionType:["types"],TSConditionalType:["checkType","extendsType","trueType","falseType"],TSInferType:["typeParameter"],TSParenthesizedType:["typeAnnotation"],TSTypeOperator:["typeAnnotation"],TSIndexedAccessType:["objectType","indexType"],TSMappedType:["typeParameter","typeAnnotation","nameType"],TSLiteralType:["literal"],TSExpressionWithTypeArguments:["expression","typeParameters"],TSInterfaceDeclaration:["id","typeParameters","extends","body"],TSInterfaceBody:["body"],TSTypeAliasDeclaration:["id","typeParameters","typeAnnotation"],TSInstantiationExpression:["expression","typeParameters","typeArguments"],TSAsExpression:["expression","typeAnnotation"],TSSatisfiesExpression:["expression","typeAnnotation"],TSTypeAssertion:["typeAnnotation","expression"],TSEnumDeclaration:["id","members"],TSEnumMember:["id","initializer"],TSModuleDeclaration:["id","body"],TSModuleBlock:["body"],TSImportType:["argument","qualifier","typeParameters","typeArguments"],TSImportEqualsDeclaration:["id","moduleReference"],TSExternalModuleReference:["expression"],TSNonNullExpression:["expression"],TSExportAssignment:["expression"],TSNamespaceExportDeclaration:["id"],TSTypeAnnotation:["typeAnnotation"],TSTypeParameterInstantiation:["params"],TSTypeParameterDeclaration:["params"],TSTypeParameter:["constraint","default","name"],ChainExpression:["expression"],ExperimentalRestProperty:["argument"],ExperimentalSpreadProperty:["argument"],Literal:[],MethodDefinition:["decorators","key","value"],PrivateIdentifier:[],Property:["key","value"],PropertyDefinition:["decorators","key","typeAnnotation","value","variance"],AccessorProperty:["decorators","key","typeAnnotation","value"],TSAbstractAccessorProperty:["decorators","key","typeAnnotation"],TSAbstractKeyword:[],TSAbstractMethodDefinition:["key","value"],TSAbstractPropertyDefinition:["decorators","key","typeAnnotation"],TSAsyncKeyword:[],TSClassImplements:["expression","typeArguments","typeParameters"],TSDeclareKeyword:[],TSEmptyBodyFunctionExpression:["id","typeParameters","params","returnType"],TSEnumBody:["members"],TSExportKeyword:[],TSInterfaceHeritage:["expression","typeArguments","typeParameters"],TSPrivateKeyword:[],TSProtectedKeyword:[],TSPublicKeyword:[],TSReadonlyKeyword:[],TSStaticKeyword:[],TSTemplateLiteralType:["quasis","types"],AsConstExpression:["expression"],AsExpression:["expression","typeAnnotation"],BigIntLiteralTypeAnnotation:[],BigIntTypeAnnotation:[],ComponentDeclaration:["id","params","body","typeParameters","rendersType"],ComponentParameter:["name","local"],ComponentTypeAnnotation:["params","rest","typeParameters","rendersType"],ComponentTypeParameter:["name","typeAnnotation"],ConditionalTypeAnnotation:["checkType","extendsType","trueType","falseType"],DeclareComponent:["id","params","rest","typeParameters","rendersType"],DeclareEnum:["id","body"],DeclareHook:["id"],DeclareNamespace:["id","body"],EnumBigIntBody:["members"],EnumBigIntMember:["id","init"],HookDeclaration:["id","params","body","typeParameters","returnType"],HookTypeAnnotation:["params","returnType","rest","typeParameters"],InferTypeAnnotation:["typeParameter"],KeyofTypeAnnotation:["argument"],ObjectTypeMappedTypeProperty:["keyTparam","propType","sourceType","variance"],QualifiedTypeofIdentifier:["qualification","id"],TupleTypeLabeledElement:["label","elementType","variance"],TupleTypeSpreadElement:["label","typeAnnotation"],TypeOperator:["typeAnnotation"],TypePredicate:["parameterName","typeAnnotation","asserts"],NGRoot:["node"],NGPipeExpression:["left","right","arguments"],NGChainedExpression:["expressions"],NGEmptyExpression:[],NGMicrosyntax:["body"],NGMicrosyntaxKey:[],NGMicrosyntaxExpression:["expression","alias"],NGMicrosyntaxKeyedExpression:["key","expression"],NGMicrosyntaxLet:["key","value"],NGMicrosyntaxAs:["key","alias"],JsExpressionRoot:["node"],JsonRoot:["node"],TSJSDocAllType:[],TSJSDocUnknownType:[],TSJSDocNullableType:["typeAnnotation"],TSJSDocNonNullableType:["typeAnnotation"],NeverTypeAnnotation:[],UndefinedTypeAnnotation:[],UnknownTypeAnnotation:[],SatisfiesExpression:["expression","typeAnnotation"]}),Yr=cl,Qr=hl,Zr=yl,es=fl,ts=(e,t,r,s)=>{if(!e||null!=t)return t.replaceAll?t.replaceAll(r,s):r.global?t.replace(r,s):t.split(r).join(s)},rs=ts,ss=/\*\/$/,is=/^\/\*\*?/,ns=/^\s*(\/\*\*?(.|\r?\n)*?\*\/)/,as=/(^|\s+)\/\/([^\n\r]*)/g,os=/^(\r?\n)+/,us=/(?:^|\r?\n) *(@[^\n\r]*?) *\r?\n *(?![^\n\r@]*\/\/[^]*)([^\s@][^\n\r@]+?) *\r?\n/g,ps=/(?:^|\r?\n) *@(\S+) *([^\n\r]*)/g,ls=/(\r?\n|^) *\* ?/g,cs=[],hs=gl,ds=El,ms=Al,ys=e=>hs(Tl(e)),fs={sourceType:"module",allowImportExportEverywhere:!0,allowReturnOutsideFunction:!0,allowNewTargetOutsideFunction:!0,allowSuperOutsideMethod:!0,allowUndeclaredExports:!0,errorRecovery:!0,createParenthesizedExpressions:!0,createImportExpressions:!0,plugins:["doExpressions","exportDefaultFrom","functionBind","functionSent","throwExpressions","partialApplication","decorators","decimal","moduleBlocks","asyncDoExpressions","destructuringPrivate","decoratorAutoAccessors","importReflection","explicitResourceManagement",["importAttributes",{deprecatedAssertSyntax:!0}],"sourcePhaseImports","deferredImportEvaluation",["optionalChainingAssign",{version:"2023-07"}],"recordAndTuple"],tokens:!0,ranges:!0},Ds="v8intrinsic",xs=[["pipelineOperator",{proposal:"hack",topicToken:"%"}],["pipelineOperator",{proposal:"minimal"}],["pipelineOperator",{proposal:"fsharp"}]],gs=(e,t=fs)=>({...t,plugins:[...t.plugins,...e]}),Es=/@(?:no)?flow\b/u,As=new Set(["StrictNumericEscape","StrictWith","StrictOctalLiteral","StrictDelete","StrictEvalArguments","StrictEvalArgumentsBinding","StrictFunction","ForInOfLoopInitializer","EmptyTypeArguments","EmptyTypeParameters","ConstructorHasTypeParameters","UnsupportedParameterPropertyKind","DecoratorExportClass","ParamDupe","InvalidDecimal","RestTrailingComma","UnsupportedParameterDecorator","UnterminatedJsxContent","UnexpectedReservedWord","ModuleAttributesWithDuplicateKeys","LineTerminatorBeforeArrow","InvalidEscapeSequenceTemplate","NonAbstractClassHasAbstractMethod","OptionalTypeBeforeRequired","PatternIsOptional","OptionalBindingPattern","DeclareClassFieldHasInitializer","TypeImportCannotSpecifyDefaultAndNamed","ConstructorClassField","VarRedeclaration","InvalidPrivateFieldResolution","DuplicateExport"]),Ts=[gs(["jsx"])],Cs=ys({optionsCombinations:Ts}),Fs=ys({optionsCombinations:[gs(["jsx","typescript"]),gs(["typescript"])]}),bs=ys({isExpression:!0,optionsCombinations:[gs(["jsx"])]}),Ss=ys({isExpression:!0,optionsCombinations:[gs(["typescript"])]}),Ps=ys({optionsCombinations:[gs(["jsx",["flow",{all:!0,enums:!0}],"flowComments"])]}),ws=ys({optionsCombinations:Ts.map((e=>gs(["estree"],e)))}),vs={babel:Cs,"babel-flow":Ps,"babel-ts":Fs,__js_expression:bs,__ts_expression:Ss,__vue_expression:bs,__vue_ts_expression:Ss,__vue_event_binding:Cs,__vue_ts_event_binding:Fs,__babel_estree:ws},ks=Ir(Nr(),1),Is=Cl(),Ns={json:hs({parse:Is,hasPragma:()=>!0}),json5:hs(Is),jsonc:hs(Is),"json-stringify":hs({parse:Cl({allowComments:!1}),astFormat:"estree-json"})},Bs={...vs,...Ns},e("i",Br),e("r",r({default:()=>bo,languages:()=>Fo,options:()=>To,printers:()=>Co},1)),Ls=Object.defineProperty,Ms=e=>{throw TypeError(e)},Os=(e,t)=>{for(var r in t)Ls(e,r,{get:t[r],enumerable:!0})},js=(e,t,r)=>t.has(e)||Ms("Cannot "+r),_s=(e,t,r)=>(js(e,t,"read from private field"),r?r.call(e):t.get(e)),Rs=(e,t,r)=>t.has(e)?Ms("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),Us=(e,t,r,s)=>(js(e,t,"write to private field"),s?s.call(e,r):t.set(e,r),r),Os($s={},{languages:()=>Fo,options:()=>To,printers:()=>Co}),qs=[{linguistLanguageId:183,name:"JavaScript",type:"programming",tmScope:"source.js",aceMode:"javascript",codemirrorMode:"javascript",codemirrorMimeType:"text/javascript",color:"#f1e05a",aliases:["js","node"],extensions:[".js","._js",".bones",".cjs",".es",".es6",".frag",".gs",".jake",".javascript",".jsb",".jscad",".jsfl",".jslib",".jsm",".jspre",".jss",".mjs",".njs",".pac",".sjs",".ssjs",".xsjs",".xsjslib",".wxs"],filenames:["Jakefile"],interpreters:["chakra","d8","gjs","js","node","nodejs","qjs","rhino","v8","v8-shell","zx"],parsers:["babel","acorn","espree","meriyah","babel-flow","babel-ts","flow","typescript"],vscodeLanguageIds:["javascript","mongo"]},{linguistLanguageId:183,name:"Flow",type:"programming",tmScope:"source.js",aceMode:"javascript",codemirrorMode:"javascript",codemirrorMimeType:"text/javascript",color:"#f1e05a",aliases:[],extensions:[".js.flow"],filenames:[],interpreters:["chakra","d8","gjs","js","node","nodejs","qjs","rhino","v8","v8-shell"],parsers:["flow","babel-flow"],vscodeLanguageIds:["javascript"]},{linguistLanguageId:183,name:"JSX",type:"programming",tmScope:"source.js.jsx",aceMode:"javascript",codemirrorMode:"jsx",codemirrorMimeType:"text/jsx",color:void 0,aliases:void 0,extensions:[".jsx"],filenames:void 0,interpreters:void 0,parsers:["babel","babel-flow","babel-ts","flow","typescript","espree","meriyah"],vscodeLanguageIds:["javascriptreact"],group:"JavaScript"},{linguistLanguageId:378,name:"TypeScript",type:"programming",color:"#3178c6",aliases:["ts"],interpreters:["deno","ts-node"],extensions:[".ts",".cts",".mts"],tmScope:"source.ts",aceMode:"typescript",codemirrorMode:"javascript",codemirrorMimeType:"application/typescript",parsers:["typescript","babel-ts"],vscodeLanguageIds:["typescript"]},{linguistLanguageId:94901924,name:"TSX",type:"programming",color:"#3178c6",group:"TypeScript",extensions:[".tsx"],tmScope:"source.tsx",aceMode:"javascript",codemirrorMode:"jsx",codemirrorMimeType:"text/jsx",parsers:["typescript","babel-ts"],vscodeLanguageIds:["typescriptreact"]}],Os(Js={},{canAttachComment:()=>Zh,embed:()=>na,experimentalFeatures:()=>yo,getCommentChildNodes:()=>ed,getVisitorKeys:()=>yi,handleComments:()=>Ln,insertPragma:()=>Nd,isBlockComment:()=>Di,isGap:()=>rd,massageAstNode:()=>Qi,print:()=>mo,printComment:()=>uh,willPrintOwnComments:()=>td}),Vs=(e,t,r,s)=>{if(!e||null!=t)return t.replaceAll?t.replaceAll(r,s):r.global?t.replace(r,s):t.split(r).join(s)},zs=Vs,Hs=(e,t,r)=>{if(!e||null!=t)return Array.isArray(t)||"string"==typeof t?t[r<0?t.length+r:r]:t.at(r)},Ws=Hs,Ks=Sl,Xs=()=>/[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE88\uDE90-\uDEBD\uDEBF-\uDEC2\uDECE-\uDEDB\uDEE0-\uDEE8]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g,Gs=e=>!(function(e){return 12288===e||e>=65281&&e<=65376||e>=65504&&e<=65510}(e)||function(e){return e>=4352&&e<=4447||8986===e||8987===e||9001===e||9002===e||e>=9193&&e<=9196||9200===e||9203===e||9725===e||9726===e||9748===e||9749===e||e>=9800&&e<=9811||9855===e||9875===e||9889===e||9898===e||9899===e||9917===e||9918===e||9924===e||9925===e||9934===e||9940===e||9962===e||9970===e||9971===e||9973===e||9978===e||9981===e||9989===e||9994===e||9995===e||10024===e||10060===e||10062===e||e>=10067&&e<=10069||10071===e||e>=10133&&e<=10135||10160===e||10175===e||11035===e||11036===e||11088===e||11093===e||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12771||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=19903||e>=19968&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=94176&&e<=94180||94192===e||94193===e||e>=94208&&e<=100343||e>=100352&&e<=101589||e>=101632&&e<=101640||e>=110576&&e<=110579||e>=110581&&e<=110587||110589===e||110590===e||e>=110592&&e<=110882||110898===e||e>=110928&&e<=110930||110933===e||e>=110948&&e<=110951||e>=110960&&e<=111355||126980===e||127183===e||127374===e||e>=127377&&e<=127386||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||127568===e||127569===e||e>=127584&&e<=127589||e>=127744&&e<=127776||e>=127789&&e<=127797||e>=127799&&e<=127868||e>=127870&&e<=127891||e>=127904&&e<=127946||e>=127951&&e<=127955||e>=127968&&e<=127984||127988===e||e>=127992&&e<=128062||128064===e||e>=128066&&e<=128252||e>=128255&&e<=128317||e>=128331&&e<=128334||e>=128336&&e<=128359||128378===e||128405===e||128406===e||128420===e||e>=128507&&e<=128591||e>=128640&&e<=128709||128716===e||e>=128720&&e<=128722||e>=128725&&e<=128727||e>=128732&&e<=128735||128747===e||128748===e||e>=128756&&e<=128764||e>=128992&&e<=129003||129008===e||e>=129292&&e<=129338||e>=129340&&e<=129349||e>=129351&&e<=129535||e>=129648&&e<=129660||e>=129664&&e<=129672||e>=129680&&e<=129725||e>=129727&&e<=129733||e>=129742&&e<=129755||e>=129760&&e<=129768||e>=129776&&e<=129784||e>=131072&&e<=196605||e>=196608&&e<=262141}(e)),Ys=/[^\x20-\x7F]/u,Qs=vl,kl(/\s/u),Zs=kl(" \t"),ei=kl(",; \t"),ti=kl(/[^\n\r]/u),ri=Il,si=Nl,ii=Bl,ni=Ll,ai=Ml,oi=Ol,ui="'",pi='"',li=jl,ci=_l,hi=Rl,di=null;for(let e=0;e<=10;e++)Vl();yi=(mi=zl)({ArrayExpression:["elements"],AssignmentExpression:["left","right"],BinaryExpression:["left","right"],InterpreterDirective:[],Directive:["value"],DirectiveLiteral:[],BlockStatement:["directives","body"],BreakStatement:["label"],CallExpression:["callee","arguments","typeParameters","typeArguments"],CatchClause:["param","body"],ConditionalExpression:["test","consequent","alternate"],ContinueStatement:["label"],DebuggerStatement:[],DoWhileStatement:["test","body"],EmptyStatement:[],ExpressionStatement:["expression"],File:["program"],ForInStatement:["left","right","body"],ForStatement:["init","test","update","body"],FunctionDeclaration:["id","params","body","returnType","typeParameters","predicate"],FunctionExpression:["id","params","body","returnType","typeParameters"],Identifier:["typeAnnotation","decorators"],IfStatement:["test","consequent","alternate"],LabeledStatement:["label","body"],StringLiteral:[],NumericLiteral:[],NullLiteral:[],BooleanLiteral:[],RegExpLiteral:[],LogicalExpression:["left","right"],MemberExpression:["object","property"],NewExpression:["callee","arguments","typeParameters","typeArguments"],Program:["directives","body"],ObjectExpression:["properties"],ObjectMethod:["key","params","body","decorators","returnType","typeParameters"],ObjectProperty:["key","value","decorators"],RestElement:["argument","typeAnnotation","decorators"],ReturnStatement:["argument"],SequenceExpression:["expressions"],ParenthesizedExpression:["expression"],SwitchCase:["test","consequent"],SwitchStatement:["discriminant","cases"],ThisExpression:[],ThrowStatement:["argument"],TryStatement:["block","handler","finalizer"],UnaryExpression:["argument"],UpdateExpression:["argument"],VariableDeclaration:["declarations"],VariableDeclarator:["id","init"],WhileStatement:["test","body"],WithStatement:["object","body"],AssignmentPattern:["left","right","decorators","typeAnnotation"],ArrayPattern:["elements","typeAnnotation","decorators"],ArrowFunctionExpression:["params","body","returnType","typeParameters","predicate"],ClassBody:["body"],ClassExpression:["id","body","superClass","mixins","typeParameters","superTypeParameters","implements","decorators","superTypeArguments"],ClassDeclaration:["id","body","superClass","mixins","typeParameters","superTypeParameters","implements","decorators","superTypeArguments"],ExportAllDeclaration:["source","attributes","exported"],ExportDefaultDeclaration:["declaration"],ExportNamedDeclaration:["declaration","specifiers","source","attributes"],ExportSpecifier:["local","exported"],ForOfStatement:["left","right","body"],ImportDeclaration:["specifiers","source","attributes"],ImportDefaultSpecifier:["local"],ImportNamespaceSpecifier:["local"],ImportSpecifier:["local","imported"],ImportExpression:["source","options","attributes"],MetaProperty:["meta","property"],ClassMethod:["key","params","body","decorators","returnType","typeParameters"],ObjectPattern:["properties","typeAnnotation","decorators"],SpreadElement:["argument"],Super:[],TaggedTemplateExpression:["tag","quasi","typeParameters","typeArguments"],TemplateElement:[],TemplateLiteral:["quasis","expressions"],YieldExpression:["argument"],AwaitExpression:["argument"],Import:[],BigIntLiteral:[],ExportNamespaceSpecifier:["exported"],OptionalMemberExpression:["object","property"],OptionalCallExpression:["callee","arguments","typeParameters","typeArguments"],ClassProperty:["key","value","typeAnnotation","decorators","variance"],ClassAccessorProperty:["key","value","typeAnnotation","decorators"],ClassPrivateProperty:["key","value","decorators","typeAnnotation","variance"],ClassPrivateMethod:["key","params","body","decorators","returnType","typeParameters"],PrivateName:["id"],StaticBlock:["body"],AnyTypeAnnotation:[],ArrayTypeAnnotation:["elementType"],BooleanTypeAnnotation:[],BooleanLiteralTypeAnnotation:[],NullLiteralTypeAnnotation:[],ClassImplements:["id","typeParameters"],DeclareClass:["id","typeParameters","extends","mixins","implements","body"],DeclareFunction:["id","predicate"],DeclareInterface:["id","typeParameters","extends","body"],DeclareModule:["id","body"],DeclareModuleExports:["typeAnnotation"],DeclareTypeAlias:["id","typeParameters","right"],DeclareOpaqueType:["id","typeParameters","supertype"],DeclareVariable:["id"],DeclareExportDeclaration:["declaration","specifiers","source"],DeclareExportAllDeclaration:["source"],DeclaredPredicate:["value"],ExistsTypeAnnotation:[],FunctionTypeAnnotation:["typeParameters","params","rest","returnType","this"],FunctionTypeParam:["name","typeAnnotation"],GenericTypeAnnotation:["id","typeParameters"],InferredPredicate:[],InterfaceExtends:["id","typeParameters"],InterfaceDeclaration:["id","typeParameters","extends","body"],InterfaceTypeAnnotation:["extends","body"],IntersectionTypeAnnotation:["types"],MixedTypeAnnotation:[],EmptyTypeAnnotation:[],NullableTypeAnnotation:["typeAnnotation"],NumberLiteralTypeAnnotation:[],NumberTypeAnnotation:[],ObjectTypeAnnotation:["properties","indexers","callProperties","internalSlots"],ObjectTypeInternalSlot:["id","value"],ObjectTypeCallProperty:["value"],ObjectTypeIndexer:["id","key","value","variance"],ObjectTypeProperty:["key","value","variance"],ObjectTypeSpreadProperty:["argument"],OpaqueType:["id","typeParameters","supertype","impltype"],QualifiedTypeIdentifier:["id","qualification"],StringLiteralTypeAnnotation:[],StringTypeAnnotation:[],SymbolTypeAnnotation:[],ThisTypeAnnotation:[],TupleTypeAnnotation:["types","elementTypes"],TypeofTypeAnnotation:["argument","typeArguments"],TypeAlias:["id","typeParameters","right"],TypeAnnotation:["typeAnnotation"],TypeCastExpression:["expression","typeAnnotation"],TypeParameter:["bound","default","variance"],TypeParameterDeclaration:["params"],TypeParameterInstantiation:["params"],UnionTypeAnnotation:["types"],Variance:[],VoidTypeAnnotation:[],EnumDeclaration:["id","body"],EnumBooleanBody:["members"],EnumNumberBody:["members"],EnumStringBody:["members"],EnumSymbolBody:["members"],EnumBooleanMember:["id","init"],EnumNumberMember:["id","init"],EnumStringMember:["id","init"],EnumDefaultedMember:["id"],IndexedAccessType:["objectType","indexType"],OptionalIndexedAccessType:["objectType","indexType"],JSXAttribute:["name","value"],JSXClosingElement:["name"],JSXElement:["openingElement","children","closingElement"],JSXEmptyExpression:[],JSXExpressionContainer:["expression"],JSXSpreadChild:["expression"],JSXIdentifier:[],JSXMemberExpression:["object","property"],JSXNamespacedName:["namespace","name"],JSXOpeningElement:["name","attributes","typeArguments","typeParameters"],JSXSpreadAttribute:["argument"],JSXText:[],JSXFragment:["openingFragment","children","closingFragment"],JSXOpeningFragment:[],JSXClosingFragment:[],Noop:[],Placeholder:[],V8IntrinsicIdentifier:[],ArgumentPlaceholder:[],BindExpression:["object","callee"],ImportAttribute:["key","value"],Decorator:["expression"],DoExpression:["body"],ExportDefaultSpecifier:["exported"],RecordExpression:["properties"],TupleExpression:["elements"],DecimalLiteral:[],ModuleExpression:["body"],TopicReference:[],PipelineTopicExpression:["expression"],PipelineBareFunction:["callee"],PipelinePrimaryTopicReference:[],TSParameterProperty:["parameter","decorators"],TSDeclareFunction:["id","typeParameters","params","returnType","body"],TSDeclareMethod:["decorators","key","typeParameters","params","returnType"],TSQualifiedName:["left","right"],TSCallSignatureDeclaration:["typeParameters","parameters","typeAnnotation","params","returnType"],TSConstructSignatureDeclaration:["typeParameters","parameters","typeAnnotation","params","returnType"],TSPropertySignature:["key","typeAnnotation"],TSMethodSignature:["key","typeParameters","parameters","typeAnnotation","params","returnType"],TSIndexSignature:["parameters","typeAnnotation"],TSAnyKeyword:[],TSBooleanKeyword:[],TSBigIntKeyword:[],TSIntrinsicKeyword:[],TSNeverKeyword:[],TSNullKeyword:[],TSNumberKeyword:[],TSObjectKeyword:[],TSStringKeyword:[],TSSymbolKeyword:[],TSUndefinedKeyword:[],TSUnknownKeyword:[],TSVoidKeyword:[],TSThisType:[],TSFunctionType:["typeParameters","parameters","typeAnnotation","params","returnType"],TSConstructorType:["typeParameters","parameters","typeAnnotation","params","returnType"],TSTypeReference:["typeName","typeParameters","typeArguments"],TSTypePredicate:["parameterName","typeAnnotation"],TSTypeQuery:["exprName","typeParameters","typeArguments"],TSTypeLiteral:["members"],TSArrayType:["elementType"],TSTupleType:["elementTypes"],TSOptionalType:["typeAnnotation"],TSRestType:["typeAnnotation"],TSNamedTupleMember:["label","elementType"],TSUnionType:["types"],TSIntersectionType:["types"],TSConditionalType:["checkType","extendsType","trueType","falseType"],TSInferType:["typeParameter"],TSParenthesizedType:["typeAnnotation"],TSTypeOperator:["typeAnnotation"],TSIndexedAccessType:["objectType","indexType"],TSMappedType:["typeParameter","typeAnnotation","nameType"],TSLiteralType:["literal"],TSExpressionWithTypeArguments:["expression","typeParameters"],TSInterfaceDeclaration:["id","typeParameters","extends","body"],TSInterfaceBody:["body"],TSTypeAliasDeclaration:["id","typeParameters","typeAnnotation"],TSInstantiationExpression:["expression","typeParameters","typeArguments"],TSAsExpression:["expression","typeAnnotation"],TSSatisfiesExpression:["expression","typeAnnotation"],TSTypeAssertion:["typeAnnotation","expression"],TSEnumDeclaration:["id","members"],TSEnumMember:["id","initializer"],TSModuleDeclaration:["id","body"],TSModuleBlock:["body"],TSImportType:["argument","qualifier","typeParameters","typeArguments"],TSImportEqualsDeclaration:["id","moduleReference"],TSExternalModuleReference:["expression"],TSNonNullExpression:["expression"],TSExportAssignment:["expression"],TSNamespaceExportDeclaration:["id"],TSTypeAnnotation:["typeAnnotation"],TSTypeParameterInstantiation:["params"],TSTypeParameterDeclaration:["params"],TSTypeParameter:["constraint","default","name"],ChainExpression:["expression"],ExperimentalRestProperty:["argument"],ExperimentalSpreadProperty:["argument"],Literal:[],MethodDefinition:["decorators","key","value"],PrivateIdentifier:[],Property:["key","value"],PropertyDefinition:["decorators","key","typeAnnotation","value","variance"],AccessorProperty:["decorators","key","typeAnnotation","value"],TSAbstractAccessorProperty:["decorators","key","typeAnnotation"],TSAbstractKeyword:[],TSAbstractMethodDefinition:["key","value"],TSAbstractPropertyDefinition:["decorators","key","typeAnnotation"],TSAsyncKeyword:[],TSClassImplements:["expression","typeArguments","typeParameters"],TSDeclareKeyword:[],TSEmptyBodyFunctionExpression:["id","typeParameters","params","returnType"],TSEnumBody:["members"],TSExportKeyword:[],TSInterfaceHeritage:["expression","typeArguments","typeParameters"],TSPrivateKeyword:[],TSProtectedKeyword:[],TSPublicKeyword:[],TSReadonlyKeyword:[],TSStaticKeyword:[],TSTemplateLiteralType:["quasis","types"],AsConstExpression:["expression"],AsExpression:["expression","typeAnnotation"],BigIntLiteralTypeAnnotation:[],BigIntTypeAnnotation:[],ComponentDeclaration:["id","params","body","typeParameters","rendersType"],ComponentParameter:["name","local"],ComponentTypeAnnotation:["params","rest","typeParameters","rendersType"],ComponentTypeParameter:["name","typeAnnotation"],ConditionalTypeAnnotation:["checkType","extendsType","trueType","falseType"],DeclareComponent:["id","params","rest","typeParameters","rendersType"],DeclareEnum:["id","body"],DeclareHook:["id"],DeclareNamespace:["id","body"],EnumBigIntBody:["members"],EnumBigIntMember:["id","init"],HookDeclaration:["id","params","body","typeParameters","returnType"],HookTypeAnnotation:["params","returnType","rest","typeParameters"],InferTypeAnnotation:["typeParameter"],KeyofTypeAnnotation:["argument"],ObjectTypeMappedTypeProperty:["keyTparam","propType","sourceType","variance"],QualifiedTypeofIdentifier:["qualification","id"],TupleTypeLabeledElement:["label","elementType","variance"],TupleTypeSpreadElement:["label","typeAnnotation"],TypeOperator:["typeAnnotation"],TypePredicate:["parameterName","typeAnnotation","asserts"],NGRoot:["node"],NGPipeExpression:["left","right","arguments"],NGChainedExpression:["expressions"],NGEmptyExpression:[],NGMicrosyntax:["body"],NGMicrosyntaxKey:[],NGMicrosyntaxExpression:["expression","alias"],NGMicrosyntaxKeyedExpression:["key","expression"],NGMicrosyntaxLet:["key","value"],NGMicrosyntaxAs:["key","alias"],JsExpressionRoot:["node"],JsonRoot:["node"],TSJSDocAllType:[],TSJSDocUnknownType:[],TSJSDocNullableType:["typeAnnotation"],TSJSDocNonNullableType:["typeAnnotation"],NeverTypeAnnotation:[],UndefinedTypeAnnotation:[],UnknownTypeAnnotation:[],SatisfiesExpression:["expression","typeAnnotation"]}),Di=(fi=Hl)(["Block","CommentBlock","MultiLine"]),xi=fi(["AnyTypeAnnotation","ThisTypeAnnotation","NumberTypeAnnotation","VoidTypeAnnotation","BooleanTypeAnnotation","BigIntTypeAnnotation","SymbolTypeAnnotation","StringTypeAnnotation","NeverTypeAnnotation","UndefinedTypeAnnotation","UnknownTypeAnnotation","EmptyTypeAnnotation","MixedTypeAnnotation"]),gi=Wl,Ei=Kl,Ai=fi(["Line","CommentLine","SingleLine","HashbangComment","HTMLOpen","HTMLClose","Hashbang","InterpreterDirective"]),Ti=fi(["ExportDefaultDeclaration","DeclareExportDeclaration","ExportNamedDeclaration","ExportAllDeclaration","DeclareExportAllDeclaration"]),Ci=fi(["ArrayExpression","TupleExpression"]),Fi=fi(["ObjectExpression","RecordExpression"]),bi=fi(["Literal","BooleanLiteral","BigIntLiteral","DecimalLiteral","DirectiveLiteral","NullLiteral","NumericLiteral","RegExpLiteral","StringLiteral"]),Si=fi(["Identifier","ThisExpression","Super","PrivateName","PrivateIdentifier","Import"]),Pi=fi(["ObjectTypeAnnotation","TSTypeLiteral","TSMappedType"]),wi=fi(["FunctionExpression","ArrowFunctionExpression"]),vi=fi(["JSXElement","JSXFragment"]),ki=fi(["BinaryExpression","LogicalExpression","NGPipeExpression"]),Ii=fi(["TSThisType","NullLiteralTypeAnnotation","BooleanLiteralTypeAnnotation","StringLiteralTypeAnnotation","BigIntLiteralTypeAnnotation","NumberLiteralTypeAnnotation","TSLiteralType","TSTemplateLiteralType"]),Ni=["it","it.only","it.skip","describe","describe.only","describe.skip","test","test.only","test.skip","test.step","test.describe","test.describe.only","test.describe.parallel","test.describe.parallel.only","test.describe.serial","test.describe.serial.only","skip","xit","xdescribe","xtest","fit","fdescribe","ftest"],Bi=e=>t=>("ChainExpression"===(null==t?void 0:t.type)&&(t=t.expression),e(t)),Li=Bi(fi(["CallExpression","OptionalCallExpression"])),Mi=Bi(fi(["MemberExpression","OptionalMemberExpression"])),Oi=.25,ji=new Set(["!","-","+","~"]),_i={"==":!0,"!=":!0,"===":!0,"!==":!0},Ri={"*":!0,"/":!0,"%":!0},Ui={">>":!0,">>>":!0,"<<":!0},$i=new Map([["|>"],["??"],["||"],["&&"],["|"],["^"],["&"],["==","===","!=","!=="],["<",">","<=",">=","in","instanceof"],[">>","<<",">>>"],["+","-"],["*","/","%"],["**"]].flatMap(((e,t)=>e.map((e=>[e,t]))))),qi=new WeakMap,Ji=new WeakMap,Vi={Leading:2,Trailing:4,Dangling:8,Block:16,Line:32,PrettierIgnore:64,First:128,Last:256},zi=(e,t)=>{if("function"==typeof e&&(t=e,e=0),e||t)return(r,s,i)=>!(e&Vi.Leading&&!r.leading||e&Vi.Trailing&&!r.trailing||e&Vi.Dangling&&(r.leading||r.trailing)||e&Vi.Block&&!Di(r)||e&Vi.Line&&!Ai(r)||e&Vi.First&&0!==s||e&Vi.Last&&s!==i.length-1||e&Vi.PrettierIgnore&&!vc(r)||t&&!t(r))},Hi=(e,{originalText:t})=>ai(t,$l(e)),Wi=fi(["TSAsExpression","TSSatisfiesExpression","AsExpression","AsConstExpression","SatisfiesExpression"]),Ki=fi(["UnionTypeAnnotation","TSUnionType"]),Xi=fi(["IntersectionTypeAnnotation","TSIntersectionType"]),Gi=new Set(["range","raw","comments","leadingComments","trailingComments","innerComments","extra","start","end","loc","flags","errors","tokens"]),Yi=e=>{for(let t of e.quasis)delete t.value},Mc.ignoredProperties=Gi,Qi=Mc,Zi="string",en="array",tn="cursor",rn="indent",sn="align",nn="trim",an="group",on="fill",un="if-break",pn="indent-if-break",ln="line-suffix",cn="line-suffix-boundary",hn="line",dn="label",mn="break-parent",yn=new Set([tn,rn,sn,nn,an,on,un,pn,ln,cn,hn,dn,mn]),fn=Oc,Dn=e=>new Intl.ListFormat("en-US",{type:"disjunction"}).format(e),xn=class extends Error{name="InvalidDocError";constructor(e){super(function(e){let t=null===e?"null":typeof e;if("string"!==t&&"object"!==t)return`Unexpected doc '${t}', \nExpected it to be 'string' or 'object'.`;if(fn(e))throw new Error("doc is valid.");let r=Object.prototype.toString.call(e);if("[object Object]"!==r)return`Unexpected doc '${r}'.`;let s=Dn([...yn].map((e=>`'${e}'`)));return`Unexpected doc.type '${e.type}'.\nExpected it to be ${s}.`}(e)),this.doc=e}},gn=xn,En={},An=jc,Cn=Tn=()=>{},Fn=Tn,bn={type:cn},wn={type:hn},vn={type:hn,soft:!0},kn=[Pn={type:hn,hard:!0},Sn={type:mn}],In=[{type:hn,hard:!0,literal:!0},Sn],Nn={type:tn},Bn=oh,Os(Ln={},{endOfLine:()=>xh,ownLine:()=>Dh,remaining:()=>gh}),Mn=dh,On=mh,jn=yh,_n=fh,Rn=new Set(["ClassDeclaration","ClassExpression","DeclareClass","DeclareInterface","InterfaceDeclaration","TSInterfaceDeclaration"]),Un=new Set(["ClassMethod","ClassProperty","PropertyDefinition","TSAbstractPropertyDefinition","TSAbstractMethodDefinition","TSDeclareMethod","MethodDefinition","ClassAccessorProperty","AccessorProperty","TSAbstractAccessorProperty"]),$n=new Set(["FunctionDeclaration","FunctionExpression","ClassMethod","MethodDefinition","ObjectMethod"]),qn=new Set(["VariableDeclarator","AssignmentExpression","TypeAlias","TSTypeAliasDeclaration"]),Jn=new Set(["ObjectExpression","RecordExpression","ArrayExpression","TupleExpression","TemplateLiteral","TaggedTemplateExpression","ObjectTypeAnnotation","TSTypeLiteral"]),Vn=fi(["ArrowFunctionExpression","FunctionExpression","FunctionDeclaration","ObjectMethod","ClassMethod","TSDeclareFunction","TSCallSignatureDeclaration","TSConstructSignatureDeclaration","TSMethodSignature","TSConstructorType","TSFunctionType","TSDeclareMethod"]),zn=new Set(["EmptyStatement","TemplateElement","Import","TSEmptyBodyFunctionExpression","ChainExpression"]),Hn=Symbol("MODE_BREAK"),Wn=Symbol("MODE_FLAT"),Kn=Symbol("cursor"),Xn=pd,Gn=ld,Yn=[(e,t)=>"ObjectExpression"===e.type&&"properties"===t,(e,t)=>"CallExpression"===e.type&&"Identifier"===e.callee.type&&"Component"===e.callee.name&&"arguments"===t,(e,t)=>"Decorator"===e.type&&"expression"===t],Qn=Ed,Zn=Cd,ea=0,ta=Fd.bind(void 0,"html"),ra=Fd.bind(void 0,"angular"),sa=bd,ia=Pd,na=wd,aa=/\*\/$/,oa=/^\/\*\*?/,ua=/^\s*(\/\*\*?(.|\r?\n)*?\*\/)/,pa=/(^|\s+)\/\/([^\n\r]*)/g,la=/^(\r?\n)+/,ca=/(?:^|\r?\n) *(@[^\n\r]*?) *\r?\n *(?![^\n\r@]*\/\/[^]*)([^\s@][^\n\r@]+?) *\r?\n/g,ha=/(?:^|\r?\n) *@(\S+) *([^\n\r]*)/g,da=/(\r?\n|^) *\* ?/g,ma=[],ya=kd,fa=Bd,Da=fi(["BlockStatement","BreakStatement","ComponentDeclaration","ClassBody","ClassDeclaration","ClassMethod","ClassProperty","PropertyDefinition","ClassPrivateProperty","ContinueStatement","DebuggerStatement","DeclareComponent","DeclareClass","DeclareExportAllDeclaration","DeclareExportDeclaration","DeclareFunction","DeclareHook","DeclareInterface","DeclareModule","DeclareModuleExports","DeclareNamespace","DeclareVariable","DeclareEnum","DoWhileStatement","EnumDeclaration","ExportAllDeclaration","ExportDefaultDeclaration","ExportNamedDeclaration","ExpressionStatement","ForInStatement","ForOfStatement","ForStatement","FunctionDeclaration","HookDeclaration","IfStatement","ImportDeclaration","InterfaceDeclaration","LabeledStatement","MethodDefinition","ReturnStatement","SwitchStatement","ThrowStatement","TryStatement","TSDeclareFunction","TSEnumDeclaration","TSImportEqualsDeclaration","TSInterfaceDeclaration","TSModuleDeclaration","TSNamespaceExportDeclaration","TypeAlias","VariableDeclaration","WhileStatement","WithStatement"]),xa=Ld,ga=_d,Ea=()=>!0,Aa=class extends Error{name="UnexpectedNodeError";constructor(e,t,r="type"){super(`Unexpected ${t} node ${r}: ${JSON.stringify(e[r])}.`),this.node=e}},Ta=Aa,Fa=class{constructor(e){Rs(this,Ca),Us(this,Ca,new Set(e))}getLeadingWhitespaceCount(e){let t=_s(this,Ca),r=0;for(let s=0;s<e.length&&t.has(e.charAt(s));s++)r++;return r}getTrailingWhitespaceCount(e){let t=_s(this,Ca),r=0;for(let s=e.length-1;s>=0&&t.has(e.charAt(s));s--)r++;return r}getLeadingWhitespace(e){let t=this.getLeadingWhitespaceCount(e);return e.slice(0,t)}getTrailingWhitespace(e){let t=this.getTrailingWhitespaceCount(e);return e.slice(e.length-t)}hasLeadingWhitespace(e){return _s(this,Ca).has(e.charAt(0))}hasTrailingWhitespace(e){return _s(this,Ca).has(Ws(!1,e,-1))}trimStart(e){let t=this.getLeadingWhitespaceCount(e);return e.slice(t)}trimEnd(e){let t=this.getTrailingWhitespaceCount(e);return e.slice(0,e.length-t)}trim(e){return this.trimEnd(this.trimStart(e))}split(e,t=!1){let r=`[${function(e){if("string"!=typeof e)throw new TypeError("Expected a string");return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}([..._s(this,Ca)].join(""))}]+`,s=new RegExp(t?`(${r})`:r,"u");return e.split(s)}hasWhitespaceCharacter(e){let t=_s(this,Ca);return Array.prototype.some.call(e,(e=>t.has(e)))}hasNonWhitespaceCharacter(e){let t=_s(this,Ca);return Array.prototype.some.call(e,(e=>!t.has(e)))}isWhitespaceOnly(e){let t=_s(this,Ca);return Array.prototype.every.call(e,(e=>t.has(e)))}},Ca=new WeakMap,ba=new Fa(" \n\r\t"),Sa=e=>""===e||e===wn||e===kn||e===vn,Pa=new Set(["ArrayExpression","TupleExpression","JSXAttribute","JSXElement","JSXExpressionContainer","JSXFragment","ExpressionStatement","CallExpression","OptionalCallExpression","ConditionalExpression","JsExpressionRoot"]),wa=Gd,va=0,ka=e=>"BinaryExpression"===e.type&&"|"===e.operator,Ia=fi(["CallExpression","OptionalCallExpression","AssignmentExpression"]),Na=class extends Error{name="ArgExpansionBailout"},Ba=am,La=e=>(("ChainExpression"===e.type||"TSNonNullExpression"===e.type)&&(e=e.expression),Li(e)&&Sc(e).length>0),Ma=cm,Oa=fi(["TSTypeAliasDeclaration","TypeAlias"]),ja=fi(["TSTypeReference","GenericTypeAnnotation"]),_a=fi(["VoidTypeAnnotation","TSVoidKeyword","NullLiteralTypeAnnotation","TSNullKeyword"]),Ra=fi(["ObjectTypeAnnotation","TSTypeLiteral","GenericTypeAnnotation","TSTypeReference"]),Ua=new WeakSet,$a=e=>e.match((e=>"TSTypeAnnotation"===e.type),((e,t)=>!("returnType"!==t&&"typeAnnotation"!==t||"TSFunctionType"!==e.type&&"TSConstructorType"!==e.type)))?"=>":e.match((e=>"TSTypeAnnotation"===e.type),((e,t)=>"typeAnnotation"===t&&("TSJSDocNullableType"===e.type||"TSJSDocNonNullableType"===e.type||"TSTypePredicate"===e.type)))||e.match((e=>"TypeAnnotation"===e.type),((e,t)=>"typeAnnotation"===t&&"Identifier"===e.type),((e,t)=>"id"===t&&"DeclareFunction"===e.type))||e.match((e=>"TypeAnnotation"===e.type),((e,t)=>"typeAnnotation"===t&&"Identifier"===e.type),((e,t)=>"id"===t&&"DeclareHook"===e.type))||e.match((e=>"TypeAnnotation"===e.type),((e,t)=>"bound"===t&&"TypeParameter"===e.type&&e.usesExtendsBound))?"":":",qa=new Set(["DeclareClass","DeclareComponent","DeclareFunction","DeclareHook","DeclareVariable","DeclareExportDeclaration","DeclareExportAllDeclaration","DeclareOpaqueType","DeclareTypeAlias","DeclareEnum","DeclareInterface"]),Ja=new Set(["TSAbstractMethodDefinition","TSAbstractPropertyDefinition","TSAbstractAccessorProperty"]),Va=new Proxy((()=>{}),{get:()=>Va}),za=Va,Ha=/^[\$A-Z_a-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC][\$0-9A-Z_a-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u08A0-\u08B4\u08B6-\u08BD\u08D4-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D01-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19D9\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1CD0-\u1CD2\u1CD4-\u1CF6\u1CF8\u1CF9\u1D00-\u1DF5\u1DFB-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u200C\u200D\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u2E2F\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099\u309A\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]*$/,Wa=e=>Ha.test(e),Ka=Wa,Xa=Qm,Ga=new WeakMap,Ya=({node:e,key:t,parent:r})=>"value"===t&&"FunctionExpression"===e.type&&("ObjectMethod"===r.type||"ClassMethod"===r.type||"ClassPrivateMethod"===r.type||"MethodDefinition"===r.type||"TSAbstractMethodDefinition"===r.type||"TSDeclareMethod"===r.type||"Property"===r.type&&ic(r)),Qa=new WeakMap,Za=e=>"SequenceExpression"===e.type,eo=(e,t,r)=>{if(!e||null!=t){if(t.findLast)return t.findLast(r);for(let e=t.length-1;e>=0;e--){let s=t[e];if(r(s,e,t))return s}}},to=eo,so=(ro=dy)("typeParameters"),io=fi(["ClassProperty","PropertyDefinition","ClassPrivateProperty","ClassAccessorProperty","AccessorProperty","TSAbstractPropertyDefinition","TSAbstractAccessorProperty"]),no=ro("heritageGroup"),ao=Oy,oo=e=>"ExportDefaultDeclaration"===e.type||"DeclareExportDeclaration"===e.type&&e.default,uo=fi(["ClassDeclaration","ComponentDeclaration","FunctionDeclaration","TSInterfaceDeclaration","DeclareClass","DeclareComponent","DeclareFunction","DeclareHook","HookDeclaration","TSDeclareFunction","EnumDeclaration"]),po=new Map([["AssignmentExpression","right"],["VariableDeclarator","init"],["ReturnStatement","argument"],["ThrowStatement","argument"],["UnaryExpression","argument"],["YieldExpression","argument"],["AwaitExpression","argument"]]),lo=new Map([["AssignmentExpression","right"],["VariableDeclarator","init"],["ReturnStatement","argument"],["ThrowStatement","argument"],["UnaryExpression","argument"],["YieldExpression","argument"],["AwaitExpression","argument"]]),co=e=>[zc("("),_c([vn,e]),vn,zc(")")],ho=fi(["ClassMethod","ClassPrivateMethod","ClassProperty","ClassAccessorProperty","AccessorProperty","TSAbstractAccessorProperty","PropertyDefinition","TSAbstractPropertyDefinition","ClassPrivateProperty","MethodDefinition","TSAbstractMethodDefinition","TSDeclareMethod"]),mo=uf,yo={avoidAstMutation:!0},fo=[{linguistLanguageId:174,name:"JSON.stringify",type:"data",color:"#292929",tmScope:"source.json",aceMode:"json",codemirrorMode:"javascript",codemirrorMimeType:"application/json",aliases:["geojson","jsonl","topojson"],extensions:[".importmap"],filenames:["package.json","package-lock.json","composer.json"],parsers:["json-stringify"],vscodeLanguageIds:["json"]},{linguistLanguageId:174,name:"JSON",type:"data",color:"#292929",tmScope:"source.json",aceMode:"json",codemirrorMode:"javascript",codemirrorMimeType:"application/json",aliases:["geojson","jsonl","topojson"],extensions:[".json",".4DForm",".4DProject",".avsc",".geojson",".gltf",".har",".ice",".JSON-tmLanguage",".mcmeta",".tfstate",".tfstate.backup",".topojson",".webapp",".webmanifest",".yy",".yyp"],filenames:[".all-contributorsrc",".arcconfig",".auto-changelog",".c8rc",".htmlhintrc",".imgbotconfig",".nycrc",".tern-config",".tern-project",".watchmanconfig","Pipfile.lock","composer.lock","flake.lock","mcmod.info",".babelrc",".jscsrc",".jshintrc",".jslintrc",".swcrc"],parsers:["json"],vscodeLanguageIds:["json"]},{linguistLanguageId:423,name:"JSON with Comments",type:"data",color:"#292929",group:"JSON",tmScope:"source.js",aceMode:"javascript",codemirrorMode:"javascript",codemirrorMimeType:"text/javascript",aliases:["jsonc"],extensions:[".jsonc",".code-snippets",".code-workspace",".sublime-build",".sublime-commands",".sublime-completions",".sublime-keymap",".sublime-macro",".sublime-menu",".sublime-mousemap",".sublime-project",".sublime-settings",".sublime-theme",".sublime-workspace",".sublime_metrics",".sublime_session"],filenames:[],parsers:["jsonc"],vscodeLanguageIds:["jsonc"]},{linguistLanguageId:175,name:"JSON5",type:"data",color:"#267CB9",extensions:[".json5"],tmScope:"source.js",aceMode:"javascript",codemirrorMode:"javascript",codemirrorMimeType:"application/json",parsers:["json5"],vscodeLanguageIds:["json5"]}],Os(Do={},{getVisitorKeys:()=>xo,massageAstNode:()=>cf,print:()=>pf}),xo=mi({JsonRoot:["node"],ArrayExpression:["elements"],ObjectExpression:["properties"],ObjectProperty:["key","value"],UnaryExpression:["argument"],NullLiteral:[],BooleanLiteral:[],StringLiteral:[],NumericLiteral:[],Identifier:[],TemplateLiteral:["quasis"],TemplateElement:[]}),go=new Set(["start","end","extra","loc","comments","leadingComments","trailingComments","innerComments","errors","range","tokens"]),cf.ignoredProperties=go,To={arrowParens:{category:Ao="JavaScript",type:"choice",default:"always",description:"Include parentheses around a sole arrow function parameter.",choices:[{value:"always",description:"Always include parens. Example: `(x) => x`"},{value:"avoid",description:"Omit parens when possible. Example: `x => x`"}]},bracketSameLine:(Eo={bracketSpacing:{category:"Common",type:"boolean",default:!0,description:"Print spaces between brackets.",oppositeDescription:"Do not print spaces between brackets."},singleQuote:{category:"Common",type:"boolean",default:!1,description:"Use single quotes instead of double quotes."},proseWrap:{category:"Common",type:"choice",default:"preserve",description:"How to wrap prose.",choices:[{value:"always",description:"Wrap prose if it exceeds the print width."},{value:"never",description:"Do not wrap prose."},{value:"preserve",description:"Wrap prose as-is."}]},bracketSameLine:{category:"Common",type:"boolean",default:!1,description:"Put > of opening tags on the last line instead of on a new line."},singleAttributePerLine:{category:"Common",type:"boolean",default:!1,description:"Enforce single attribute per line in HTML, Vue and JSX."}}).bracketSameLine,bracketSpacing:Eo.bracketSpacing,jsxBracketSameLine:{category:Ao,type:"boolean",description:"Put > on the last line instead of at a new line.",deprecated:"2.4.0"},semi:{category:Ao,type:"boolean",default:!0,description:"Print semicolons.",oppositeDescription:"Do not print semicolons, except at the beginning of lines which may need them."},experimentalTernaries:{category:Ao,type:"boolean",default:!1,description:"Use curious ternaries, with the question mark after the condition.",oppositeDescription:"Default behavior of ternaries; keep question marks on the same line as the consequent."},singleQuote:Eo.singleQuote,jsxSingleQuote:{category:Ao,type:"boolean",default:!1,description:"Use single quotes in JSX."},quoteProps:{category:Ao,type:"choice",default:"as-needed",description:"Change when properties in objects are quoted.",choices:[{value:"as-needed",description:"Only add quotes around object properties where required."},{value:"consistent",description:"If at least one property in an object requires quotes, quote all properties."},{value:"preserve",description:"Respect the input use of quotes in object properties."}]},trailingComma:{category:Ao,type:"choice",default:"all",description:"Print trailing commas wherever possible when multi-line.",choices:[{value:"all",description:"Trailing commas wherever possible (including function arguments)."},{value:"es5",description:"Trailing commas where valid in ES5 (objects, arrays, etc.)"},{value:"none",description:"No trailing commas."}]},singleAttributePerLine:Eo.singleAttributePerLine},Co={estree:Js,"estree-json":Do},Fo=[...qs,...fo],e("n",bo=$s),So=a({__name:"NDVEmptyState",props:{title:{},wide:{type:Boolean},icon:{}},setup:e=>(t,r)=>(s(),n("article",{class:l([t.$style.empty,{[t.$style.wide]:e.wide}])},[c(t.$slots,"icon",{},(()=>[e.icon?(s(),h(p(d),{key:0,icon:e.icon,size:"xlarge"},null,8,["icon"])):u("",!0)])),e.title?(s(),n("h1",{key:0,class:l(t.$style.title)},o(e.title),3)):u("",!0),i("p",{class:l(t.$style.description)},[c(t.$slots,"default")],2)],2))}),e("t",m(So,[["__cssModules",{$style:{empty:"_empty_ylpfe_2",title:"_title_ylpfe_13",description:"_description_ylpfe_21",wide:"_wide_ylpfe_28"}}]]))}}}));
//# sourceMappingURL=NDVEmptyState-legacy-CfqV96iU.js.map