@junobuild/config-loader 0.1.0 → 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/node/index.mjs +1 -1
- package/dist/node/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/node/index.mjs
CHANGED
|
@@ -17,7 +17,7 @@ ${e}
|
|
|
17
17
|
`);case 114:return o("\r");case 120:{let u;return{code:u,pos:t}=Rm(e,t,r,n,2,!1,a,i),o(u===null?null:String.fromCharCode(u))}case 117:{let u;return{code:u,pos:t}=YS(e,t,r,n,a,i),o(u===null?null:String.fromCodePoint(u))}case 116:return o(" ");case 98:return o("\b");case 118:return o("\v");case 102:return o("\f");case 13:e.charCodeAt(t)===10&&++t;case 10:r=t,++n;case 8232:case 8233:return o("");case 56:case 57:if(s)return o(null);i.strictNumericEscape(t-1,r,n);default:if(l>=48&&l<=55){let u=t-1,f=/^[0-7]+/.exec(e.slice(u,t+2))[0],p=parseInt(f,8);p>255&&(f=f.slice(0,-1),p=parseInt(f,8)),t+=f.length-1;let h=e.charCodeAt(t);if(f!=="0"||h===56||h===57){if(s)return o(null);i.strictNumericEscape(u,r,n)}return o(String.fromCharCode(p))}return o(String.fromCharCode(l))}}function Rm(e,t,r,n,s,i,a,o){let l=t,u;return{n:u,pos:t}=XS(e,t,r,n,16,s,i,!1,o,!a),u===null&&(a?o.invalidEscapeSequence(l,r,n):t=l-1),{code:u,pos:t}}function XS(e,t,r,n,s,i,a,o,l,u){let c=t,f=s===16?_S.hex:_S.decBinOct,p=s===16?Vu.hex:s===10?Vu.dec:s===8?Vu.oct:Vu.bin,h=!1,b=0;for(let d=0,y=i??1/0;d<y;++d){let P=e.charCodeAt(t),D;if(P===95&&o!=="bail"){let N=e.charCodeAt(t-1),B=e.charCodeAt(t+1);if(o){if(Number.isNaN(B)||!p(B)||f.has(N)||f.has(B)){if(u)return{n:null,pos:t};l.unexpectedNumericSeparator(t,r,n)}}else{if(u)return{n:null,pos:t};l.numericSeparatorInEscapeSequence(t,r,n)}++t;continue}if(P>=97?D=P-97+10:P>=65?D=P-65+10:oX(P)?D=P-48:D=1/0,D>=s){if(D<=9&&u)return{n:null,pos:t};if(D<=9&&l.invalidDigit(t,r,n,s))D=0;else if(a)D=0,h=!0;else break}++t,b=b*s+D}return t===c||i!=null&&t-c!==i||h?{n:null,pos:t}:{n:b,pos:t}}function YS(e,t,r,n,s,i){let a=e.charCodeAt(t),o;if(a===123){if(++t,{code:o,pos:t}=Rm(e,t,r,n,e.indexOf("}",t)-t,!0,s,i),++t,o!==null&&o>1114111)if(s)i.invalidCodePoint(t,r,n);else return{code:null,pos:t}}else({code:o,pos:t}=Rm(e,t,r,n,4,!1,s,i));return{code:o,pos:t}}function $o(e,t,r){return new Un(r,e-t,e)}var cX=new Set([103,109,115,105,121,117,100,118]),qn=class{constructor(t){this.type=t.type,this.value=t.value,this.start=t.start,this.end=t.end,this.loc=new ba(t.startLoc,t.endLoc)}},jm=class extends km{constructor(t,r){super(),this.isLookahead=void 0,this.tokens=[],this.errorHandlers_readInt={invalidDigit:(n,s,i,a)=>this.options.errorRecovery?(this.raise(I.InvalidDigit,$o(n,s,i),{radix:a}),!0):!1,numericSeparatorInEscapeSequence:this.errorBuilder(I.NumericSeparatorInEscapeSequence),unexpectedNumericSeparator:this.errorBuilder(I.UnexpectedNumericSeparator)},this.errorHandlers_readCodePoint=Object.assign({},this.errorHandlers_readInt,{invalidEscapeSequence:this.errorBuilder(I.InvalidEscapeSequence),invalidCodePoint:this.errorBuilder(I.InvalidCodePoint)}),this.errorHandlers_readStringContents_string=Object.assign({},this.errorHandlers_readCodePoint,{strictNumericEscape:(n,s,i)=>{this.recordStrictModeErrors(I.StrictNumericEscape,$o(n,s,i))},unterminated:(n,s,i)=>{throw this.raise(I.UnterminatedString,$o(n-1,s,i))}}),this.errorHandlers_readStringContents_template=Object.assign({},this.errorHandlers_readCodePoint,{strictNumericEscape:this.errorBuilder(I.StrictNumericEscape),unterminated:(n,s,i)=>{throw this.raise(I.UnterminatedTemplate,$o(n,s,i))}}),this.state=new Lm,this.state.init(t),this.input=r,this.length=r.length,this.comments=[],this.isLookahead=!1}pushToken(t){this.tokens.length=this.state.tokensLength,this.tokens.push(t),++this.state.tokensLength}next(){this.checkKeywordEscapes(),this.options.tokens&&this.pushToken(new qn(this.state)),this.state.lastTokEndLoc=this.state.endLoc,this.state.lastTokStartLoc=this.state.startLoc,this.nextToken()}eat(t){return this.match(t)?(this.next(),!0):!1}match(t){return this.state.type===t}createLookaheadState(t){return{pos:t.pos,value:null,type:t.type,start:t.start,end:t.end,context:[this.curContext()],inType:t.inType,startLoc:t.startLoc,lastTokEndLoc:t.lastTokEndLoc,curLine:t.curLine,lineStart:t.lineStart,curPosition:t.curPosition}}lookahead(){let t=this.state;this.state=this.createLookaheadState(t),this.isLookahead=!0,this.nextToken(),this.isLookahead=!1;let r=this.state;return this.state=t,r}nextTokenStart(){return this.nextTokenStartSince(this.state.pos)}nextTokenStartSince(t){return Am.lastIndex=t,Am.test(this.input)?Am.lastIndex:t}lookaheadCharCode(){return this.input.charCodeAt(this.nextTokenStart())}nextTokenInLineStart(){return this.nextTokenInLineStartSince(this.state.pos)}nextTokenInLineStartSince(t){return Cm.lastIndex=t,Cm.test(this.input)?Cm.lastIndex:t}lookaheadInLineCharCode(){return this.input.charCodeAt(this.nextTokenInLineStart())}codePointAtPos(t){let r=this.input.charCodeAt(t);if((r&64512)===55296&&++t<this.input.length){let n=this.input.charCodeAt(t);(n&64512)===56320&&(r=65536+((r&1023)<<10)+(n&1023))}return r}setStrict(t){this.state.strict=t,t&&(this.state.strictErrors.forEach(([r,n])=>this.raise(r,n)),this.state.strictErrors.clear())}curContext(){return this.state.context[this.state.context.length-1]}nextToken(){if(this.skipSpace(),this.state.start=this.state.pos,this.isLookahead||(this.state.startLoc=this.state.curPosition()),this.state.pos>=this.length){this.finishToken(139);return}this.getTokenFromCode(this.codePointAtPos(this.state.pos))}skipBlockComment(t){let r;this.isLookahead||(r=this.state.curPosition());let n=this.state.pos,s=this.input.indexOf(t,n+2);if(s===-1)throw this.raise(I.UnterminatedComment,this.state.curPosition());for(this.state.pos=s+t.length,Uu.lastIndex=n+2;Uu.test(this.input)&&Uu.lastIndex<=s;)++this.state.curLine,this.state.lineStart=Uu.lastIndex;if(this.isLookahead)return;let i={type:"CommentBlock",value:this.input.slice(n+2,s),start:n,end:s+t.length,loc:new ba(r,this.state.curPosition())};return this.options.tokens&&this.pushToken(i),i}skipLineComment(t){let r=this.state.pos,n;this.isLookahead||(n=this.state.curPosition());let s=this.input.charCodeAt(this.state.pos+=t);if(this.state.pos<this.length)for(;!ya(s)&&++this.state.pos<this.length;)s=this.input.charCodeAt(this.state.pos);if(this.isLookahead)return;let i=this.state.pos,o={type:"CommentLine",value:this.input.slice(r+t,i),start:r,end:i,loc:new ba(n,this.state.curPosition())};return this.options.tokens&&this.pushToken(o),o}skipSpace(){let t=this.state.pos,r=[];e:for(;this.state.pos<this.length;){let n=this.input.charCodeAt(this.state.pos);switch(n){case 32:case 160:case 9:++this.state.pos;break;case 13:this.input.charCodeAt(this.state.pos+1)===10&&++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 s=this.skipBlockComment("*/");s!==void 0&&(this.addComment(s),this.options.attachComment&&r.push(s));break}case 47:{let s=this.skipLineComment(2);s!==void 0&&(this.addComment(s),this.options.attachComment&&r.push(s));break}default:break e}break;default:if(aX(n))++this.state.pos;else if(n===45&&!this.inModule&&this.options.annexB){let s=this.state.pos;if(this.input.charCodeAt(s+1)===45&&this.input.charCodeAt(s+2)===62&&(t===0||this.state.lineStart>t)){let i=this.skipLineComment(3);i!==void 0&&(this.addComment(i),this.options.attachComment&&r.push(i))}else break e}else if(n===60&&!this.inModule&&this.options.annexB){let s=this.state.pos;if(this.input.charCodeAt(s+1)===33&&this.input.charCodeAt(s+2)===45&&this.input.charCodeAt(s+3)===45){let i=this.skipLineComment(4);i!==void 0&&(this.addComment(i),this.options.attachComment&&r.push(i))}else break e}else break e}}if(r.length>0){let n=this.state.pos,s={start:t,end:n,comments:r,leadingNode:null,trailingNode:null,containingNode:null};this.state.commentStack.push(s)}}finishToken(t,r){this.state.end=this.state.pos,this.state.endLoc=this.state.curPosition();let n=this.state.type;this.state.type=t,this.state.value=r,this.isLookahead||this.updateContext(n)}replaceToken(t){this.state.type=t,this.updateContext()}readToken_numberSign(){if(this.state.pos===0&&this.readToken_interpreter())return;let t=this.state.pos+1,r=this.codePointAtPos(t);if(r>=48&&r<=57)throw this.raise(I.UnexpectedDigitAfterHash,this.state.curPosition());if(r===123||r===91&&this.hasPlugin("recordAndTuple")){if(this.expectPlugin("recordAndTuple"),this.getPluginOption("recordAndTuple","syntaxType")==="bar")throw this.raise(r===123?I.RecordExpressionHashIncorrectStartSyntaxType:I.TupleExpressionHashIncorrectStartSyntaxType,this.state.curPosition());this.state.pos+=2,r===123?this.finishToken(7):this.finishToken(1)}else ls(r)?(++this.state.pos,this.finishToken(138,this.readWord1(r))):r===92?(++this.state.pos,this.finishToken(138,this.readWord1())):this.finishOp(27,1)}readToken_dot(){let t=this.input.charCodeAt(this.state.pos+1);if(t>=48&&t<=57){this.readNumber(!0);return}t===46&&this.input.charCodeAt(this.state.pos+2)===46?(this.state.pos+=3,this.finishToken(21)):(++this.state.pos,this.finishToken(16))}readToken_slash(){this.input.charCodeAt(this.state.pos+1)===61?this.finishOp(31,2):this.finishOp(56,1)}readToken_interpreter(){if(this.state.pos!==0||this.length<2)return!1;let t=this.input.charCodeAt(this.state.pos+1);if(t!==33)return!1;let r=this.state.pos;for(this.state.pos+=1;!ya(t)&&++this.state.pos<this.length;)t=this.input.charCodeAt(this.state.pos);let n=this.input.slice(r+2,this.state.pos);return this.finishToken(28,n),!0}readToken_mult_modulo(t){let r=t===42?55:54,n=1,s=this.input.charCodeAt(this.state.pos+1);t===42&&s===42&&(n++,s=this.input.charCodeAt(this.state.pos+2),r=57),s===61&&!this.state.inType&&(n++,r=t===37?33:30),this.finishOp(r,n)}readToken_pipe_amp(t){let r=this.input.charCodeAt(this.state.pos+1);if(r===t){this.input.charCodeAt(this.state.pos+2)===61?this.finishOp(30,3):this.finishOp(t===124?41:42,2);return}if(t===124){if(r===62){this.finishOp(39,2);return}if(this.hasPlugin("recordAndTuple")&&r===125){if(this.getPluginOption("recordAndTuple","syntaxType")!=="bar")throw this.raise(I.RecordExpressionBarIncorrectEndSyntaxType,this.state.curPosition());this.state.pos+=2,this.finishToken(9);return}if(this.hasPlugin("recordAndTuple")&&r===93){if(this.getPluginOption("recordAndTuple","syntaxType")!=="bar")throw this.raise(I.TupleExpressionBarIncorrectEndSyntaxType,this.state.curPosition());this.state.pos+=2,this.finishToken(4);return}}if(r===61){this.finishOp(30,2);return}this.finishOp(t===124?43:45,1)}readToken_caret(){let t=this.input.charCodeAt(this.state.pos+1);t===61&&!this.state.inType?this.finishOp(32,2):t===94&&this.hasPlugin(["pipelineOperator",{proposal:"hack",topicToken:"^^"}])?(this.finishOp(37,2),this.input.codePointAt(this.state.pos)===94&&this.unexpected()):this.finishOp(44,1)}readToken_atSign(){this.input.charCodeAt(this.state.pos+1)===64&&this.hasPlugin(["pipelineOperator",{proposal:"hack",topicToken:"@@"}])?this.finishOp(38,2):this.finishOp(26,1)}readToken_plus_min(t){let r=this.input.charCodeAt(this.state.pos+1);if(r===t){this.finishOp(34,2);return}r===61?this.finishOp(30,2):this.finishOp(53,1)}readToken_lt(){let{pos:t}=this.state,r=this.input.charCodeAt(t+1);if(r===60){if(this.input.charCodeAt(t+2)===61){this.finishOp(30,3);return}this.finishOp(51,2);return}if(r===61){this.finishOp(49,2);return}this.finishOp(47,1)}readToken_gt(){let{pos:t}=this.state,r=this.input.charCodeAt(t+1);if(r===62){let n=this.input.charCodeAt(t+2)===62?3:2;if(this.input.charCodeAt(t+n)===61){this.finishOp(30,n+1);return}this.finishOp(52,n);return}if(r===61){this.finishOp(49,2);return}this.finishOp(48,1)}readToken_eq_excl(t){let r=this.input.charCodeAt(this.state.pos+1);if(r===61){this.finishOp(46,this.input.charCodeAt(this.state.pos+2)===61?3:2);return}if(t===61&&r===62){this.state.pos+=2,this.finishToken(19);return}this.finishOp(t===61?29:35,1)}readToken_question(){let t=this.input.charCodeAt(this.state.pos+1),r=this.input.charCodeAt(this.state.pos+2);t===63?r===61?this.finishOp(30,3):this.finishOp(40,2):t===46&&!(r>=48&&r<=57)?(this.state.pos+=2,this.finishToken(18)):(++this.state.pos,this.finishToken(17))}getTokenFromCode(t){switch(t){case 46:this.readToken_dot();return;case 40:++this.state.pos,this.finishToken(10);return;case 41:++this.state.pos,this.finishToken(11);return;case 59:++this.state.pos,this.finishToken(13);return;case 44:++this.state.pos,this.finishToken(12);return;case 91:if(this.hasPlugin("recordAndTuple")&&this.input.charCodeAt(this.state.pos+1)===124){if(this.getPluginOption("recordAndTuple","syntaxType")!=="bar")throw this.raise(I.TupleExpressionBarIncorrectStartSyntaxType,this.state.curPosition());this.state.pos+=2,this.finishToken(2)}else++this.state.pos,this.finishToken(0);return;case 93:++this.state.pos,this.finishToken(3);return;case 123:if(this.hasPlugin("recordAndTuple")&&this.input.charCodeAt(this.state.pos+1)===124){if(this.getPluginOption("recordAndTuple","syntaxType")!=="bar")throw this.raise(I.RecordExpressionBarIncorrectStartSyntaxType,this.state.curPosition());this.state.pos+=2,this.finishToken(6)}else++this.state.pos,this.finishToken(5);return;case 125:++this.state.pos,this.finishToken(8);return;case 58:this.hasPlugin("functionBind")&&this.input.charCodeAt(this.state.pos+1)===58?this.finishOp(15,2):(++this.state.pos,this.finishToken(14));return;case 63:this.readToken_question();return;case 96:this.readTemplateToken();return;case 48:{let r=this.input.charCodeAt(this.state.pos+1);if(r===120||r===88){this.readRadixNumber(16);return}if(r===111||r===79){this.readRadixNumber(8);return}if(r===98||r===66){this.readRadixNumber(2);return}}case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:this.readNumber(!1);return;case 34:case 39:this.readString(t);return;case 47:this.readToken_slash();return;case 37:case 42:this.readToken_mult_modulo(t);return;case 124:case 38:this.readToken_pipe_amp(t);return;case 94:this.readToken_caret();return;case 43:case 45:this.readToken_plus_min(t);return;case 60:this.readToken_lt();return;case 62:this.readToken_gt();return;case 61:case 33:this.readToken_eq_excl(t);return;case 126:this.finishOp(36,1);return;case 64:this.readToken_atSign();return;case 35:this.readToken_numberSign();return;case 92:this.readWord();return;default:if(ls(t)){this.readWord(t);return}}throw this.raise(I.InvalidOrUnexpectedToken,this.state.curPosition(),{unexpected:String.fromCodePoint(t)})}finishOp(t,r){let n=this.input.slice(this.state.pos,this.state.pos+r);this.state.pos+=r,this.finishToken(t,n)}readRegexp(){let t=this.state.startLoc,r=this.state.start+1,n,s,{pos:i}=this.state;for(;;++i){if(i>=this.length)throw this.raise(I.UnterminatedRegExp,Br(t,1));let u=this.input.charCodeAt(i);if(ya(u))throw this.raise(I.UnterminatedRegExp,Br(t,1));if(n)n=!1;else{if(u===91)s=!0;else if(u===93&&s)s=!1;else if(u===47&&!s)break;n=u===92}}let a=this.input.slice(r,i);++i;let o="",l=()=>Br(t,i+2-r);for(;i<this.length;){let u=this.codePointAtPos(i),c=String.fromCharCode(u);if(cX.has(u))u===118?o.includes("u")&&this.raise(I.IncompatibleRegExpUVFlags,l()):u===117&&o.includes("v")&&this.raise(I.IncompatibleRegExpUVFlags,l()),o.includes(c)&&this.raise(I.DuplicateRegExpFlags,l());else if(ma(u)||u===92)this.raise(I.MalformedRegExpFlags,l());else break;++i,o+=c}this.state.pos=i,this.finishToken(137,{pattern:a,flags:o})}readInt(t,r,n=!1,s=!0){let{n:i,pos:a}=XS(this.input,this.state.pos,this.state.lineStart,this.state.curLine,t,r,n,s,this.errorHandlers_readInt,!1);return this.state.pos=a,i}readRadixNumber(t){let r=this.state.curPosition(),n=!1;this.state.pos+=2;let s=this.readInt(t);s==null&&this.raise(I.InvalidDigit,Br(r,2),{radix:t});let i=this.input.charCodeAt(this.state.pos);if(i===110)++this.state.pos,n=!0;else if(i===109)throw this.raise(I.InvalidDecimal,r);if(ls(this.codePointAtPos(this.state.pos)))throw this.raise(I.NumberIdentifier,this.state.curPosition());if(n){let a=this.input.slice(r.index,this.state.pos).replace(/[_n]/g,"");this.finishToken(135,a);return}this.finishToken(134,s)}readNumber(t){let r=this.state.pos,n=this.state.curPosition(),s=!1,i=!1,a=!1,o=!1,l=!1;!t&&this.readInt(10)===null&&this.raise(I.InvalidNumber,this.state.curPosition());let u=this.state.pos-r>=2&&this.input.charCodeAt(r)===48;if(u){let h=this.input.slice(r,this.state.pos);if(this.recordStrictModeErrors(I.StrictOctalLiteral,n),!this.state.strict){let b=h.indexOf("_");b>0&&this.raise(I.ZeroDigitNumericSeparator,Br(n,b))}l=u&&!/[89]/.test(h)}let c=this.input.charCodeAt(this.state.pos);if(c===46&&!l&&(++this.state.pos,this.readInt(10),s=!0,c=this.input.charCodeAt(this.state.pos)),(c===69||c===101)&&!l&&(c=this.input.charCodeAt(++this.state.pos),(c===43||c===45)&&++this.state.pos,this.readInt(10)===null&&this.raise(I.InvalidOrMissingExponent,n),s=!0,o=!0,c=this.input.charCodeAt(this.state.pos)),c===110&&((s||u)&&this.raise(I.InvalidBigIntLiteral,n),++this.state.pos,i=!0),c===109&&(this.expectPlugin("decimal",this.state.curPosition()),(o||u)&&this.raise(I.InvalidDecimal,n),++this.state.pos,a=!0),ls(this.codePointAtPos(this.state.pos)))throw this.raise(I.NumberIdentifier,this.state.curPosition());let f=this.input.slice(r,this.state.pos).replace(/[_mn]/g,"");if(i){this.finishToken(135,f);return}if(a){this.finishToken(136,f);return}let p=l?parseInt(f,8):parseFloat(f);this.finishToken(134,p)}readCodePoint(t){let{code:r,pos:n}=YS(this.input,this.state.pos,this.state.lineStart,this.state.curLine,t,this.errorHandlers_readCodePoint);return this.state.pos=n,r}readString(t){let{str:r,pos:n,curLine:s,lineStart:i}=NS(t===34?"double":"single",this.input,this.state.pos+1,this.state.lineStart,this.state.curLine,this.errorHandlers_readStringContents_string);this.state.pos=n+1,this.state.lineStart=i,this.state.curLine=s,this.finishToken(133,r)}readTemplateContinuation(){this.match(8)||this.unexpected(null,8),this.state.pos--,this.readTemplateToken()}readTemplateToken(){let t=this.input[this.state.pos],{str:r,firstInvalidLoc:n,pos:s,curLine:i,lineStart:a}=NS("template",this.input,this.state.pos+1,this.state.lineStart,this.state.curLine,this.errorHandlers_readStringContents_template);this.state.pos=s+1,this.state.lineStart=a,this.state.curLine=i,n&&(this.state.firstInvalidTemplateEscapePos=new Un(n.curLine,n.pos-n.lineStart,n.pos)),this.input.codePointAt(s)===96?this.finishToken(24,n?null:t+r+"`"):(this.state.pos++,this.finishToken(25,n?null:t+r+"${"))}recordStrictModeErrors(t,r){let n=r.index;this.state.strict&&!this.state.strictErrors.has(n)?this.raise(t,r):this.state.strictErrors.set(n,[t,r])}readWord1(t){this.state.containsEsc=!1;let r="",n=this.state.pos,s=this.state.pos;for(t!==void 0&&(this.state.pos+=t<=65535?1:2);this.state.pos<this.length;){let i=this.codePointAtPos(this.state.pos);if(ma(i))this.state.pos+=i<=65535?1:2;else if(i===92){this.state.containsEsc=!0,r+=this.input.slice(s,this.state.pos);let a=this.state.curPosition(),o=this.state.pos===n?ls:ma;if(this.input.charCodeAt(++this.state.pos)!==117){this.raise(I.MissingUnicodeEscape,this.state.curPosition()),s=this.state.pos-1;continue}++this.state.pos;let l=this.readCodePoint(!0);l!==null&&(o(l)||this.raise(I.EscapedCharNotAnIdentifier,a),r+=String.fromCodePoint(l)),s=this.state.pos}else break}return r+this.input.slice(s,this.state.pos)}readWord(t){let r=this.readWord1(t),n=Jm.get(r);n!==void 0?this.finishToken(n,Vs(n)):this.finishToken(132,r)}checkKeywordEscapes(){let{type:t}=this.state;ry(t)&&this.state.containsEsc&&this.raise(I.InvalidEscapedReservedWord,this.state.startLoc,{reservedWord:Vs(t)})}raise(t,r,n={}){let s=r instanceof Un?r:r.loc.start,i=t(s,n);if(!this.options.errorRecovery)throw i;return this.isLookahead||this.state.errors.push(i),i}raiseOverwrite(t,r,n={}){let s=r instanceof Un?r:r.loc.start,i=s.index,a=this.state.errors;for(let o=a.length-1;o>=0;o--){let l=a[o];if(l.loc.index===i)return a[o]=t(s,n);if(l.loc.index<i)break}return this.raise(t,r,n)}updateContext(t){}unexpected(t,r){throw this.raise(I.UnexpectedToken,t??this.state.startLoc,{expected:r?Vs(r):null})}expectPlugin(t,r){if(this.hasPlugin(t))return!0;throw this.raise(I.MissingPlugin,r??this.state.startLoc,{missingPlugin:[t]})}expectOnePlugin(t){if(!t.some(r=>this.hasPlugin(r)))throw this.raise(I.MissingOneOfPlugins,this.state.startLoc,{missingPlugin:t})}errorBuilder(t){return(r,n,s)=>{this.raise(t,$o(r,n,s))}}},Mm=class{constructor(){this.privateNames=new Set,this.loneAccessors=new Map,this.undefinedPrivateNames=new Map}},qm=class{constructor(t){this.parser=void 0,this.stack=[],this.undefinedPrivateNames=new Map,this.parser=t}current(){return this.stack[this.stack.length-1]}enter(){this.stack.push(new Mm)}exit(){let t=this.stack.pop(),r=this.current();for(let[n,s]of Array.from(t.undefinedPrivateNames))r?r.undefinedPrivateNames.has(n)||r.undefinedPrivateNames.set(n,s):this.parser.raise(I.InvalidPrivateFieldResolution,s,{identifierName:n})}declarePrivateName(t,r,n){let{privateNames:s,loneAccessors:i,undefinedPrivateNames:a}=this.current(),o=s.has(t);if(r&3){let l=o&&i.get(t);if(l){let u=l&4,c=r&4,f=l&3,p=r&3;o=f===p||u!==c,o||i.delete(t)}else o||i.set(t,r)}o&&this.parser.raise(I.PrivateNameRedeclaration,n,{identifierName:t}),s.add(t),a.delete(t)}usePrivateName(t,r){let n;for(n of this.stack)if(n.privateNames.has(t))return;n?n.undefinedPrivateNames.set(t,r):this.parser.raise(I.InvalidPrivateFieldResolution,r,{identifierName:t})}},Ea=class{constructor(t=0){this.type=t}canBeArrowParameterDeclaration(){return this.type===2||this.type===1}isCertainlyParameterDeclaration(){return this.type===3}},Xu=class extends Ea{constructor(t){super(t),this.declarationErrors=new Map}recordDeclarationError(t,r){let n=r.index;this.declarationErrors.set(n,[t,r])}clearDeclarationError(t){this.declarationErrors.delete(t)}iterateErrors(t){this.declarationErrors.forEach(t)}},Um=class{constructor(t){this.parser=void 0,this.stack=[new Ea],this.parser=t}enter(t){this.stack.push(t)}exit(){this.stack.pop()}recordParameterInitializerError(t,r){let n=r.loc.start,{stack:s}=this,i=s.length-1,a=s[i];for(;!a.isCertainlyParameterDeclaration();){if(a.canBeArrowParameterDeclaration())a.recordDeclarationError(t,n);else return;a=s[--i]}this.parser.raise(t,n)}recordArrowParameterBindingError(t,r){let{stack:n}=this,s=n[n.length-1],i=r.loc.start;if(s.isCertainlyParameterDeclaration())this.parser.raise(t,i);else if(s.canBeArrowParameterDeclaration())s.recordDeclarationError(t,i);else return}recordAsyncArrowParametersError(t){let{stack:r}=this,n=r.length-1,s=r[n];for(;s.canBeArrowParameterDeclaration();)s.type===2&&s.recordDeclarationError(I.AwaitBindingIdentifier,t),s=r[--n]}validateAsPattern(){let{stack:t}=this,r=t[t.length-1];r.canBeArrowParameterDeclaration()&&r.iterateErrors(([n,s])=>{this.parser.raise(n,s);let i=t.length-2,a=t[i];for(;a.canBeArrowParameterDeclaration();)a.clearDeclarationError(s.index),a=t[--i]})}};function fX(){return new Ea(3)}function pX(){return new Xu(1)}function dX(){return new Xu(2)}function JS(){return new Ea}var Vm=class{constructor(){this.stacks=[]}enter(t){this.stacks.push(t)}exit(){this.stacks.pop()}currentFlags(){return this.stacks[this.stacks.length-1]}get hasAwait(){return(this.currentFlags()&2)>0}get hasYield(){return(this.currentFlags()&1)>0}get hasReturn(){return(this.currentFlags()&4)>0}get hasIn(){return(this.currentFlags()&8)>0}};function Ku(e,t){return(e?2:0)|(t?1:0)}var $m=class extends jm{addExtra(t,r,n,s=!0){if(!t)return;let{extra:i}=t;i==null&&(i={},t.extra=i),s?i[r]=n:Object.defineProperty(i,r,{enumerable:s,value:n})}isContextual(t){return this.state.type===t&&!this.state.containsEsc}isUnparsedContextual(t,r){let n=t+r.length;if(this.input.slice(t,n)===r){let s=this.input.charCodeAt(n);return!(ma(s)||(s&64512)===55296)}return!1}isLookaheadContextual(t){let r=this.nextTokenStart();return this.isUnparsedContextual(r,t)}eatContextual(t){return this.isContextual(t)?(this.next(),!0):!1}expectContextual(t,r){if(!this.eatContextual(t)){if(r!=null)throw this.raise(r,this.state.startLoc);this.unexpected(null,t)}}canInsertSemicolon(){return this.match(139)||this.match(8)||this.hasPrecedingLineBreak()}hasPrecedingLineBreak(){return OS(this.input,this.state.lastTokEndLoc.index,this.state.start)}hasFollowingLineBreak(){return OS(this.input,this.state.end,this.nextTokenStart())}isLineTerminator(){return this.eat(13)||this.canInsertSemicolon()}semicolon(t=!0){(t?this.isLineTerminator():this.eat(13))||this.raise(I.MissingSemicolon,this.state.lastTokEndLoc)}expect(t,r){this.eat(t)||this.unexpected(r,t)}tryParse(t,r=this.state.clone()){let n={node:null};try{let s=t((i=null)=>{throw n.node=i,n});if(this.state.errors.length>r.errors.length){let i=this.state;return this.state=r,this.state.tokensLength=i.tokensLength,{node:s,error:i.errors[r.errors.length],thrown:!1,aborted:!1,failState:i}}return{node:s,error:null,thrown:!1,aborted:!1,failState:null}}catch(s){let i=this.state;if(this.state=r,s instanceof SyntaxError)return{node:null,error:s,thrown:!0,aborted:!1,failState:i};if(s===n)return{node:n.node,error:null,thrown:!1,aborted:!0,failState:i};throw s}}checkExpressionErrors(t,r){if(!t)return!1;let{shorthandAssignLoc:n,doubleProtoLoc:s,privateKeyLoc:i,optionalParametersLoc:a}=t,o=!!n||!!s||!!a||!!i;if(!r)return o;n!=null&&this.raise(I.InvalidCoverInitializedName,n),s!=null&&this.raise(I.DuplicateProto,s),i!=null&&this.raise(I.UnexpectedPrivateField,i),a!=null&&this.unexpected(a)}isLiteralPropertyName(){return qS(this.state.type)}isPrivateName(t){return t.type==="PrivateName"}getPrivateNameSV(t){return t.id.name}hasPropertyAsPrivateName(t){return(t.type==="MemberExpression"||t.type==="OptionalMemberExpression")&&this.isPrivateName(t.property)}isObjectProperty(t){return t.type==="ObjectProperty"}isObjectMethod(t){return t.type==="ObjectMethod"}initializeScopes(t=this.options.sourceType==="module"){let r=this.state.labels;this.state.labels=[];let n=this.exportedIdentifiers;this.exportedIdentifiers=new Set;let s=this.inModule;this.inModule=t;let i=this.scope,a=this.getScopeHandler();this.scope=new a(this,t);let o=this.prodParam;this.prodParam=new Vm;let l=this.classScope;this.classScope=new qm(this);let u=this.expressionScope;return this.expressionScope=new Um(this),()=>{this.state.labels=r,this.exportedIdentifiers=n,this.inModule=s,this.scope=i,this.prodParam=o,this.classScope=l,this.expressionScope=u}}enterInitialScopes(){let t=0;this.inModule&&(t|=2),this.scope.enter(1),this.prodParam.enter(t)}checkDestructuringPrivate(t){let{privateKeyLoc:r}=t;r!==null&&this.expectPlugin("destructuringPrivate",r)}},ga=class{constructor(){this.shorthandAssignLoc=null,this.doubleProtoLoc=null,this.privateKeyLoc=null,this.optionalParametersLoc=null}},va=class{constructor(t,r,n){this.type="",this.start=r,this.end=0,this.loc=new ba(n),t!=null&&t.options.ranges&&(this.range=[r,0]),t!=null&&t.filename&&(this.loc.filename=t.filename)}},iy=va.prototype;iy.__clone=function(){let e=new va(void 0,this.start,this.loc.start),t=Object.keys(this);for(let r=0,n=t.length;r<n;r++){let s=t[r];s!=="leadingComments"&&s!=="trailingComments"&&s!=="innerComments"&&(e[s]=this[s])}return e};function hX(e){return cs(e)}function cs(e){let{type:t,start:r,end:n,loc:s,range:i,extra:a,name:o}=e,l=Object.create(iy);return l.type=t,l.start=r,l.end=n,l.loc=s,l.range=i,l.extra=a,l.name=o,t==="Placeholder"&&(l.expectedNode=e.expectedNode),l}function mX(e){let{type:t,start:r,end:n,loc:s,range:i,extra:a}=e;if(t==="Placeholder")return hX(e);let o=Object.create(iy);return o.type=t,o.start=r,o.end=n,o.loc=s,o.range=i,e.raw!==void 0?o.raw=e.raw:o.extra=a,o.value=e.value,o}var Wm=class extends $m{startNode(){let t=this.state.startLoc;return new va(this,t.index,t)}startNodeAt(t){return new va(this,t.index,t)}startNodeAtNode(t){return this.startNodeAt(t.loc.start)}finishNode(t,r){return this.finishNodeAt(t,r,this.state.lastTokEndLoc)}finishNodeAt(t,r,n){return t.type=r,t.end=n.index,t.loc.end=n,this.options.ranges&&(t.range[1]=n.index),this.options.attachComment&&this.processComment(t),t}resetStartLocation(t,r){t.start=r.index,t.loc.start=r,this.options.ranges&&(t.range[0]=r.index)}resetEndLocation(t,r=this.state.lastTokEndLoc){t.end=r.index,t.loc.end=r,this.options.ranges&&(t.range[1]=r.index)}resetStartLocationFromNode(t,r){this.resetStartLocation(t,r.loc.start)}},yX=new Set(["_","any","bool","boolean","empty","extends","false","interface","mixed","null","number","static","string","true","typeof","void"]),Oe=us`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 gX(e){return e.type==="DeclareExportAllDeclaration"||e.type==="DeclareExportDeclaration"&&(!e.declaration||e.declaration.type!=="TypeAlias"&&e.declaration.type!=="InterfaceDeclaration")}function BS(e){return e.importKind==="type"||e.importKind==="typeof"}var bX={const:"declare export var",let:"declare export var",type:"export type",interface:"export interface"};function EX(e,t){let r=[],n=[];for(let s=0;s<e.length;s++)(t(e[s],s,e)?r:n).push(e[s]);return[r,n]}var vX=/\*?\s*@((?:no)?flow)\b/,TX=e=>class extends e{constructor(...r){super(...r),this.flowPragma=void 0}getScopeHandler(){return Bm}shouldParseTypes(){return this.getPluginOption("flow","all")||this.flowPragma==="flow"}shouldParseEnums(){return!!this.getPluginOption("flow","enums")}finishToken(r,n){r!==133&&r!==13&&r!==28&&this.flowPragma===void 0&&(this.flowPragma=null),super.finishToken(r,n)}addComment(r){if(this.flowPragma===void 0){let n=vX.exec(r.value);if(n)if(n[1]==="flow")this.flowPragma="flow";else if(n[1]==="noflow")this.flowPragma="noflow";else throw new Error("Unexpected flow pragma")}super.addComment(r)}flowParseTypeInitialiser(r){let n=this.state.inType;this.state.inType=!0,this.expect(r||14);let s=this.flowParseType();return this.state.inType=n,s}flowParsePredicate(){let r=this.startNode(),n=this.state.startLoc;return this.next(),this.expectContextual(110),this.state.lastTokStartLoc.index>n.index+1&&this.raise(Oe.UnexpectedSpaceBetweenModuloChecks,n),this.eat(10)?(r.value=super.parseExpression(),this.expect(11),this.finishNode(r,"DeclaredPredicate")):this.finishNode(r,"InferredPredicate")}flowParseTypeAndPredicateInitialiser(){let r=this.state.inType;this.state.inType=!0,this.expect(14);let n=null,s=null;return this.match(54)?(this.state.inType=r,s=this.flowParsePredicate()):(n=this.flowParseType(),this.state.inType=r,this.match(54)&&(s=this.flowParsePredicate())),[n,s]}flowParseDeclareClass(r){return this.next(),this.flowParseInterfaceish(r,!0),this.finishNode(r,"DeclareClass")}flowParseDeclareFunction(r){this.next();let n=r.id=this.parseIdentifier(),s=this.startNode(),i=this.startNode();this.match(47)?s.typeParameters=this.flowParseTypeParameterDeclaration():s.typeParameters=null,this.expect(10);let a=this.flowParseFunctionTypeParams();return s.params=a.params,s.rest=a.rest,s.this=a._this,this.expect(11),[s.returnType,r.predicate]=this.flowParseTypeAndPredicateInitialiser(),i.typeAnnotation=this.finishNode(s,"FunctionTypeAnnotation"),n.typeAnnotation=this.finishNode(i,"TypeAnnotation"),this.resetEndLocation(n),this.semicolon(),this.scope.declareName(r.id.name,2048,r.id.loc.start),this.finishNode(r,"DeclareFunction")}flowParseDeclare(r,n){if(this.match(80))return this.flowParseDeclareClass(r);if(this.match(68))return this.flowParseDeclareFunction(r);if(this.match(74))return this.flowParseDeclareVariable(r);if(this.eatContextual(127))return this.match(16)?this.flowParseDeclareModuleExports(r):(n&&this.raise(Oe.NestedDeclareModule,this.state.lastTokStartLoc),this.flowParseDeclareModule(r));if(this.isContextual(130))return this.flowParseDeclareTypeAlias(r);if(this.isContextual(131))return this.flowParseDeclareOpaqueType(r);if(this.isContextual(129))return this.flowParseDeclareInterface(r);if(this.match(82))return this.flowParseDeclareExportDeclaration(r,n);this.unexpected()}flowParseDeclareVariable(r){return this.next(),r.id=this.flowParseTypeAnnotatableIdentifier(!0),this.scope.declareName(r.id.name,5,r.id.loc.start),this.semicolon(),this.finishNode(r,"DeclareVariable")}flowParseDeclareModule(r){this.scope.enter(0),this.match(133)?r.id=super.parseExprAtom():r.id=this.parseIdentifier();let n=r.body=this.startNode(),s=n.body=[];for(this.expect(5);!this.match(8);){let o=this.startNode();this.match(83)?(this.next(),!this.isContextual(130)&&!this.match(87)&&this.raise(Oe.InvalidNonTypeImportInDeclareModule,this.state.lastTokStartLoc),super.parseImport(o)):(this.expectContextual(125,Oe.UnsupportedStatementInDeclareModule),o=this.flowParseDeclare(o,!0)),s.push(o)}this.scope.exit(),this.expect(8),this.finishNode(n,"BlockStatement");let i=null,a=!1;return s.forEach(o=>{gX(o)?(i==="CommonJS"&&this.raise(Oe.AmbiguousDeclareModuleKind,o),i="ES"):o.type==="DeclareModuleExports"&&(a&&this.raise(Oe.DuplicateDeclareModuleExports,o),i==="ES"&&this.raise(Oe.AmbiguousDeclareModuleKind,o),i="CommonJS",a=!0)}),r.kind=i||"CommonJS",this.finishNode(r,"DeclareModule")}flowParseDeclareExportDeclaration(r,n){if(this.expect(82),this.eat(65))return this.match(68)||this.match(80)?r.declaration=this.flowParseDeclare(this.startNode()):(r.declaration=this.flowParseType(),this.semicolon()),r.default=!0,this.finishNode(r,"DeclareExportDeclaration");if(this.match(75)||this.isLet()||(this.isContextual(130)||this.isContextual(129))&&!n){let s=this.state.value;throw this.raise(Oe.UnsupportedDeclareExportKind,this.state.startLoc,{unsupportedExportKind:s,suggestion:bX[s]})}if(this.match(74)||this.match(68)||this.match(80)||this.isContextual(131))return r.declaration=this.flowParseDeclare(this.startNode()),r.default=!1,this.finishNode(r,"DeclareExportDeclaration");if(this.match(55)||this.match(5)||this.isContextual(129)||this.isContextual(130)||this.isContextual(131))return r=this.parseExport(r,null),r.type==="ExportNamedDeclaration"&&(r.type="ExportDeclaration",r.default=!1,delete r.exportKind),r.type="Declare"+r.type,r;this.unexpected()}flowParseDeclareModuleExports(r){return this.next(),this.expectContextual(111),r.typeAnnotation=this.flowParseTypeAnnotation(),this.semicolon(),this.finishNode(r,"DeclareModuleExports")}flowParseDeclareTypeAlias(r){this.next();let n=this.flowParseTypeAlias(r);return n.type="DeclareTypeAlias",n}flowParseDeclareOpaqueType(r){this.next();let n=this.flowParseOpaqueType(r,!0);return n.type="DeclareOpaqueType",n}flowParseDeclareInterface(r){return this.next(),this.flowParseInterfaceish(r,!1),this.finishNode(r,"DeclareInterface")}flowParseInterfaceish(r,n){if(r.id=this.flowParseRestrictedIdentifier(!n,!0),this.scope.declareName(r.id.name,n?17:8201,r.id.loc.start),this.match(47)?r.typeParameters=this.flowParseTypeParameterDeclaration():r.typeParameters=null,r.extends=[],this.eat(81))do r.extends.push(this.flowParseInterfaceExtends());while(!n&&this.eat(12));if(n){if(r.implements=[],r.mixins=[],this.eatContextual(117))do r.mixins.push(this.flowParseInterfaceExtends());while(this.eat(12));if(this.eatContextual(113))do r.implements.push(this.flowParseInterfaceExtends());while(this.eat(12))}r.body=this.flowParseObjectType({allowStatic:n,allowExact:!1,allowSpread:!1,allowProto:n,allowInexact:!1})}flowParseInterfaceExtends(){let r=this.startNode();return r.id=this.flowParseQualifiedTypeIdentifier(),this.match(47)?r.typeParameters=this.flowParseTypeParameterInstantiation():r.typeParameters=null,this.finishNode(r,"InterfaceExtends")}flowParseInterface(r){return this.flowParseInterfaceish(r,!1),this.finishNode(r,"InterfaceDeclaration")}checkNotUnderscore(r){r==="_"&&this.raise(Oe.UnexpectedReservedUnderscore,this.state.startLoc)}checkReservedType(r,n,s){yX.has(r)&&this.raise(s?Oe.AssignReservedType:Oe.UnexpectedReservedType,n,{reservedType:r})}flowParseRestrictedIdentifier(r,n){return this.checkReservedType(this.state.value,this.state.startLoc,n),this.parseIdentifier(r)}flowParseTypeAlias(r){return r.id=this.flowParseRestrictedIdentifier(!1,!0),this.scope.declareName(r.id.name,8201,r.id.loc.start),this.match(47)?r.typeParameters=this.flowParseTypeParameterDeclaration():r.typeParameters=null,r.right=this.flowParseTypeInitialiser(29),this.semicolon(),this.finishNode(r,"TypeAlias")}flowParseOpaqueType(r,n){return this.expectContextual(130),r.id=this.flowParseRestrictedIdentifier(!0,!0),this.scope.declareName(r.id.name,8201,r.id.loc.start),this.match(47)?r.typeParameters=this.flowParseTypeParameterDeclaration():r.typeParameters=null,r.supertype=null,this.match(14)&&(r.supertype=this.flowParseTypeInitialiser(14)),r.impltype=null,n||(r.impltype=this.flowParseTypeInitialiser(29)),this.semicolon(),this.finishNode(r,"OpaqueType")}flowParseTypeParameter(r=!1){let n=this.state.startLoc,s=this.startNode(),i=this.flowParseVariance(),a=this.flowParseTypeAnnotatableIdentifier();return s.name=a.name,s.variance=i,s.bound=a.typeAnnotation,this.match(29)?(this.eat(29),s.default=this.flowParseType()):r&&this.raise(Oe.MissingTypeParamDefault,n),this.finishNode(s,"TypeParameter")}flowParseTypeParameterDeclaration(){let r=this.state.inType,n=this.startNode();n.params=[],this.state.inType=!0,this.match(47)||this.match(142)?this.next():this.unexpected();let s=!1;do{let i=this.flowParseTypeParameter(s);n.params.push(i),i.default&&(s=!0),this.match(48)||this.expect(12)}while(!this.match(48));return this.expect(48),this.state.inType=r,this.finishNode(n,"TypeParameterDeclaration")}flowParseTypeParameterInstantiation(){let r=this.startNode(),n=this.state.inType;r.params=[],this.state.inType=!0,this.expect(47);let s=this.state.noAnonFunctionType;for(this.state.noAnonFunctionType=!1;!this.match(48);)r.params.push(this.flowParseType()),this.match(48)||this.expect(12);return this.state.noAnonFunctionType=s,this.expect(48),this.state.inType=n,this.finishNode(r,"TypeParameterInstantiation")}flowParseTypeParameterInstantiationCallOrNew(){let r=this.startNode(),n=this.state.inType;for(r.params=[],this.state.inType=!0,this.expect(47);!this.match(48);)r.params.push(this.flowParseTypeOrImplicitInstantiation()),this.match(48)||this.expect(12);return this.expect(48),this.state.inType=n,this.finishNode(r,"TypeParameterInstantiation")}flowParseInterfaceType(){let r=this.startNode();if(this.expectContextual(129),r.extends=[],this.eat(81))do r.extends.push(this.flowParseInterfaceExtends());while(this.eat(12));return r.body=this.flowParseObjectType({allowStatic:!1,allowExact:!1,allowSpread:!1,allowProto:!1,allowInexact:!1}),this.finishNode(r,"InterfaceTypeAnnotation")}flowParseObjectPropertyKey(){return this.match(134)||this.match(133)?super.parseExprAtom():this.parseIdentifier(!0)}flowParseObjectTypeIndexer(r,n,s){return r.static=n,this.lookahead().type===14?(r.id=this.flowParseObjectPropertyKey(),r.key=this.flowParseTypeInitialiser()):(r.id=null,r.key=this.flowParseType()),this.expect(3),r.value=this.flowParseTypeInitialiser(),r.variance=s,this.finishNode(r,"ObjectTypeIndexer")}flowParseObjectTypeInternalSlot(r,n){return r.static=n,r.id=this.flowParseObjectPropertyKey(),this.expect(3),this.expect(3),this.match(47)||this.match(10)?(r.method=!0,r.optional=!1,r.value=this.flowParseObjectTypeMethodish(this.startNodeAt(r.loc.start))):(r.method=!1,this.eat(17)&&(r.optional=!0),r.value=this.flowParseTypeInitialiser()),this.finishNode(r,"ObjectTypeInternalSlot")}flowParseObjectTypeMethodish(r){for(r.params=[],r.rest=null,r.typeParameters=null,r.this=null,this.match(47)&&(r.typeParameters=this.flowParseTypeParameterDeclaration()),this.expect(10),this.match(78)&&(r.this=this.flowParseFunctionTypeParam(!0),r.this.name=null,this.match(11)||this.expect(12));!this.match(11)&&!this.match(21);)r.params.push(this.flowParseFunctionTypeParam(!1)),this.match(11)||this.expect(12);return this.eat(21)&&(r.rest=this.flowParseFunctionTypeParam(!1)),this.expect(11),r.returnType=this.flowParseTypeInitialiser(),this.finishNode(r,"FunctionTypeAnnotation")}flowParseObjectTypeCallProperty(r,n){let s=this.startNode();return r.static=n,r.value=this.flowParseObjectTypeMethodish(s),this.finishNode(r,"ObjectTypeCallProperty")}flowParseObjectType({allowStatic:r,allowExact:n,allowSpread:s,allowProto:i,allowInexact:a}){let o=this.state.inType;this.state.inType=!0;let l=this.startNode();l.callProperties=[],l.properties=[],l.indexers=[],l.internalSlots=[];let u,c,f=!1;for(n&&this.match(6)?(this.expect(6),u=9,c=!0):(this.expect(5),u=8,c=!1),l.exact=c;!this.match(u);){let h=!1,b=null,d=null,y=this.startNode();if(i&&this.isContextual(118)){let D=this.lookahead();D.type!==14&&D.type!==17&&(this.next(),b=this.state.startLoc,r=!1)}if(r&&this.isContextual(106)){let D=this.lookahead();D.type!==14&&D.type!==17&&(this.next(),h=!0)}let P=this.flowParseVariance();if(this.eat(0))b!=null&&this.unexpected(b),this.eat(0)?(P&&this.unexpected(P.loc.start),l.internalSlots.push(this.flowParseObjectTypeInternalSlot(y,h))):l.indexers.push(this.flowParseObjectTypeIndexer(y,h,P));else if(this.match(10)||this.match(47))b!=null&&this.unexpected(b),P&&this.unexpected(P.loc.start),l.callProperties.push(this.flowParseObjectTypeCallProperty(y,h));else{let D="init";if(this.isContextual(99)||this.isContextual(104)){let B=this.lookahead();qS(B.type)&&(D=this.state.value,this.next())}let N=this.flowParseObjectTypeProperty(y,h,b,P,D,s,a??!c);N===null?(f=!0,d=this.state.lastTokStartLoc):l.properties.push(N)}this.flowObjectTypeSemicolon(),d&&!this.match(8)&&!this.match(9)&&this.raise(Oe.UnexpectedExplicitInexactInObject,d)}this.expect(u),s&&(l.inexact=f);let p=this.finishNode(l,"ObjectTypeAnnotation");return this.state.inType=o,p}flowParseObjectTypeProperty(r,n,s,i,a,o,l){if(this.eat(21))return this.match(12)||this.match(13)||this.match(8)||this.match(9)?(o?l||this.raise(Oe.InexactInsideExact,this.state.lastTokStartLoc):this.raise(Oe.InexactInsideNonObject,this.state.lastTokStartLoc),i&&this.raise(Oe.InexactVariance,i),null):(o||this.raise(Oe.UnexpectedSpreadType,this.state.lastTokStartLoc),s!=null&&this.unexpected(s),i&&this.raise(Oe.SpreadVariance,i),r.argument=this.flowParseType(),this.finishNode(r,"ObjectTypeSpreadProperty"));{r.key=this.flowParseObjectPropertyKey(),r.static=n,r.proto=s!=null,r.kind=a;let u=!1;return this.match(47)||this.match(10)?(r.method=!0,s!=null&&this.unexpected(s),i&&this.unexpected(i.loc.start),r.value=this.flowParseObjectTypeMethodish(this.startNodeAt(r.loc.start)),(a==="get"||a==="set")&&this.flowCheckGetterSetterParams(r),!o&&r.key.name==="constructor"&&r.value.this&&this.raise(Oe.ThisParamBannedInConstructor,r.value.this)):(a!=="init"&&this.unexpected(),r.method=!1,this.eat(17)&&(u=!0),r.value=this.flowParseTypeInitialiser(),r.variance=i),r.optional=u,this.finishNode(r,"ObjectTypeProperty")}}flowCheckGetterSetterParams(r){let n=r.kind==="get"?0:1,s=r.value.params.length+(r.value.rest?1:0);r.value.this&&this.raise(r.kind==="get"?Oe.GetterMayNotHaveThisParam:Oe.SetterMayNotHaveThisParam,r.value.this),s!==n&&this.raise(r.kind==="get"?I.BadGetterArity:I.BadSetterArity,r),r.kind==="set"&&r.value.rest&&this.raise(I.BadSetterRestParameter,r)}flowObjectTypeSemicolon(){!this.eat(13)&&!this.eat(12)&&!this.match(8)&&!this.match(9)&&this.unexpected()}flowParseQualifiedTypeIdentifier(r,n){var s;(s=r)!=null||(r=this.state.startLoc);let i=n||this.flowParseRestrictedIdentifier(!0);for(;this.eat(16);){let a=this.startNodeAt(r);a.qualification=i,a.id=this.flowParseRestrictedIdentifier(!0),i=this.finishNode(a,"QualifiedTypeIdentifier")}return i}flowParseGenericType(r,n){let s=this.startNodeAt(r);return s.typeParameters=null,s.id=this.flowParseQualifiedTypeIdentifier(r,n),this.match(47)&&(s.typeParameters=this.flowParseTypeParameterInstantiation()),this.finishNode(s,"GenericTypeAnnotation")}flowParseTypeofType(){let r=this.startNode();return this.expect(87),r.argument=this.flowParsePrimaryType(),this.finishNode(r,"TypeofTypeAnnotation")}flowParseTupleType(){let r=this.startNode();for(r.types=[],this.expect(0);this.state.pos<this.length&&!this.match(3)&&(r.types.push(this.flowParseType()),!this.match(3));)this.expect(12);return this.expect(3),this.finishNode(r,"TupleTypeAnnotation")}flowParseFunctionTypeParam(r){let n=null,s=!1,i=null,a=this.startNode(),o=this.lookahead(),l=this.state.type===78;return o.type===14||o.type===17?(l&&!r&&this.raise(Oe.ThisParamMustBeFirst,a),n=this.parseIdentifier(l),this.eat(17)&&(s=!0,l&&this.raise(Oe.ThisParamMayNotBeOptional,a)),i=this.flowParseTypeInitialiser()):i=this.flowParseType(),a.name=n,a.optional=s,a.typeAnnotation=i,this.finishNode(a,"FunctionTypeParam")}reinterpretTypeAsFunctionTypeParam(r){let n=this.startNodeAt(r.loc.start);return n.name=null,n.optional=!1,n.typeAnnotation=r,this.finishNode(n,"FunctionTypeParam")}flowParseFunctionTypeParams(r=[]){let n=null,s=null;for(this.match(78)&&(s=this.flowParseFunctionTypeParam(!0),s.name=null,this.match(11)||this.expect(12));!this.match(11)&&!this.match(21);)r.push(this.flowParseFunctionTypeParam(!1)),this.match(11)||this.expect(12);return this.eat(21)&&(n=this.flowParseFunctionTypeParam(!1)),{params:r,rest:n,_this:s}}flowIdentToTypeAnnotation(r,n,s){switch(s.name){case"any":return this.finishNode(n,"AnyTypeAnnotation");case"bool":case"boolean":return this.finishNode(n,"BooleanTypeAnnotation");case"mixed":return this.finishNode(n,"MixedTypeAnnotation");case"empty":return this.finishNode(n,"EmptyTypeAnnotation");case"number":return this.finishNode(n,"NumberTypeAnnotation");case"string":return this.finishNode(n,"StringTypeAnnotation");case"symbol":return this.finishNode(n,"SymbolTypeAnnotation");default:return this.checkNotUnderscore(s.name),this.flowParseGenericType(r,s)}}flowParsePrimaryType(){let r=this.state.startLoc,n=this.startNode(),s,i,a=!1,o=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,i=this.flowParseTupleType(),this.state.noAnonFunctionType=o,i;case 47:{let l=this.startNode();return l.typeParameters=this.flowParseTypeParameterDeclaration(),this.expect(10),s=this.flowParseFunctionTypeParams(),l.params=s.params,l.rest=s.rest,l.this=s._this,this.expect(11),this.expect(19),l.returnType=this.flowParseType(),this.finishNode(l,"FunctionTypeAnnotation")}case 10:{let l=this.startNode();if(this.next(),!this.match(11)&&!this.match(21))if(ht(this.state.type)||this.match(78)){let u=this.lookahead().type;a=u!==17&&u!==14}else a=!0;if(a){if(this.state.noAnonFunctionType=!1,i=this.flowParseType(),this.state.noAnonFunctionType=o,this.state.noAnonFunctionType||!(this.match(12)||this.match(11)&&this.lookahead().type===19))return this.expect(11),i;this.eat(12)}return i?s=this.flowParseFunctionTypeParams([this.reinterpretTypeAsFunctionTypeParam(i)]):s=this.flowParseFunctionTypeParams(),l.params=s.params,l.rest=s.rest,l.this=s._this,this.expect(11),this.expect(19),l.returnType=this.flowParseType(),l.typeParameters=null,this.finishNode(l,"FunctionTypeAnnotation")}case 133:return this.parseLiteral(this.state.value,"StringLiteralTypeAnnotation");case 85:case 86:return n.value=this.match(85),this.next(),this.finishNode(n,"BooleanLiteralTypeAnnotation");case 53:if(this.state.value==="-"){if(this.next(),this.match(134))return this.parseLiteralAtNode(-this.state.value,"NumberLiteralTypeAnnotation",n);if(this.match(135))return this.parseLiteralAtNode(-this.state.value,"BigIntLiteralTypeAnnotation",n);throw this.raise(Oe.UnexpectedSubtractionOperand,this.state.startLoc)}this.unexpected();return;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(n,"VoidTypeAnnotation");case 84:return this.next(),this.finishNode(n,"NullLiteralTypeAnnotation");case 78:return this.next(),this.finishNode(n,"ThisTypeAnnotation");case 55:return this.next(),this.finishNode(n,"ExistsTypeAnnotation");case 87:return this.flowParseTypeofType();default:if(ry(this.state.type)){let l=Vs(this.state.type);return this.next(),super.createIdentifier(n,l)}else if(ht(this.state.type))return this.isContextual(129)?this.flowParseInterfaceType():this.flowIdentToTypeAnnotation(r,n,this.parseIdentifier())}this.unexpected()}flowParsePostfixType(){let r=this.state.startLoc,n=this.flowParsePrimaryType(),s=!1;for(;(this.match(0)||this.match(18))&&!this.canInsertSemicolon();){let i=this.startNodeAt(r),a=this.eat(18);s=s||a,this.expect(0),!a&&this.match(3)?(i.elementType=n,this.next(),n=this.finishNode(i,"ArrayTypeAnnotation")):(i.objectType=n,i.indexType=this.flowParseType(),this.expect(3),s?(i.optional=a,n=this.finishNode(i,"OptionalIndexedAccessType")):n=this.finishNode(i,"IndexedAccessType"))}return n}flowParsePrefixType(){let r=this.startNode();return this.eat(17)?(r.typeAnnotation=this.flowParsePrefixType(),this.finishNode(r,"NullableTypeAnnotation")):this.flowParsePostfixType()}flowParseAnonFunctionWithoutParens(){let r=this.flowParsePrefixType();if(!this.state.noAnonFunctionType&&this.eat(19)){let n=this.startNodeAt(r.loc.start);return n.params=[this.reinterpretTypeAsFunctionTypeParam(r)],n.rest=null,n.this=null,n.returnType=this.flowParseType(),n.typeParameters=null,this.finishNode(n,"FunctionTypeAnnotation")}return r}flowParseIntersectionType(){let r=this.startNode();this.eat(45);let n=this.flowParseAnonFunctionWithoutParens();for(r.types=[n];this.eat(45);)r.types.push(this.flowParseAnonFunctionWithoutParens());return r.types.length===1?n:this.finishNode(r,"IntersectionTypeAnnotation")}flowParseUnionType(){let r=this.startNode();this.eat(43);let n=this.flowParseIntersectionType();for(r.types=[n];this.eat(43);)r.types.push(this.flowParseIntersectionType());return r.types.length===1?n:this.finishNode(r,"UnionTypeAnnotation")}flowParseType(){let r=this.state.inType;this.state.inType=!0;let n=this.flowParseUnionType();return this.state.inType=r,n}flowParseTypeOrImplicitInstantiation(){if(this.state.type===132&&this.state.value==="_"){let r=this.state.startLoc,n=this.parseIdentifier();return this.flowParseGenericType(r,n)}else return this.flowParseType()}flowParseTypeAnnotation(){let r=this.startNode();return r.typeAnnotation=this.flowParseTypeInitialiser(),this.finishNode(r,"TypeAnnotation")}flowParseTypeAnnotatableIdentifier(r){let n=r?this.parseIdentifier():this.flowParseRestrictedIdentifier();return this.match(14)&&(n.typeAnnotation=this.flowParseTypeAnnotation(),this.resetEndLocation(n)),n}typeCastToParameter(r){return r.expression.typeAnnotation=r.typeAnnotation,this.resetEndLocation(r.expression,r.typeAnnotation.loc.end),r.expression}flowParseVariance(){let r=null;return this.match(53)?(r=this.startNode(),this.state.value==="+"?r.kind="plus":r.kind="minus",this.next(),this.finishNode(r,"Variance")):r}parseFunctionBody(r,n,s=!1){if(n){this.forwardNoArrowParamsConversionAt(r,()=>super.parseFunctionBody(r,!0,s));return}super.parseFunctionBody(r,!1,s)}parseFunctionBodyAndFinish(r,n,s=!1){if(this.match(14)){let i=this.startNode();[i.typeAnnotation,r.predicate]=this.flowParseTypeAndPredicateInitialiser(),r.returnType=i.typeAnnotation?this.finishNode(i,"TypeAnnotation"):null}return super.parseFunctionBodyAndFinish(r,n,s)}parseStatementLike(r){if(this.state.strict&&this.isContextual(129)){let s=this.lookahead();if(xn(s.type)){let i=this.startNode();return this.next(),this.flowParseInterface(i)}}else if(this.shouldParseEnums()&&this.isContextual(126)){let s=this.startNode();return this.next(),this.flowParseEnumDeclaration(s)}let n=super.parseStatementLike(r);return this.flowPragma===void 0&&!this.isValidDirective(n)&&(this.flowPragma=null),n}parseExpressionStatement(r,n,s){if(n.type==="Identifier"){if(n.name==="declare"){if(this.match(80)||ht(this.state.type)||this.match(68)||this.match(74)||this.match(82))return this.flowParseDeclare(r)}else if(ht(this.state.type)){if(n.name==="interface")return this.flowParseInterface(r);if(n.name==="type")return this.flowParseTypeAlias(r);if(n.name==="opaque")return this.flowParseOpaqueType(r,!1)}}return super.parseExpressionStatement(r,n,s)}shouldParseExportDeclaration(){let{type:r}=this.state;return IS(r)||this.shouldParseEnums()&&r===126?!this.state.containsEsc:super.shouldParseExportDeclaration()}isExportDefaultSpecifier(){let{type:r}=this.state;return IS(r)||this.shouldParseEnums()&&r===126?this.state.containsEsc:super.isExportDefaultSpecifier()}parseExportDefaultExpression(){if(this.shouldParseEnums()&&this.isContextual(126)){let r=this.startNode();return this.next(),this.flowParseEnumDeclaration(r)}return super.parseExportDefaultExpression()}parseConditional(r,n,s){if(!this.match(17))return r;if(this.state.maybeInArrowParameters){let p=this.lookaheadCharCode();if(p===44||p===61||p===58||p===41)return this.setOptionalParametersError(s),r}this.expect(17);let i=this.state.clone(),a=this.state.noArrowAt,o=this.startNodeAt(n),{consequent:l,failed:u}=this.tryParseConditionalConsequent(),[c,f]=this.getArrowLikeExpressions(l);if(u||f.length>0){let p=[...a];if(f.length>0){this.state=i,this.state.noArrowAt=p;for(let h=0;h<f.length;h++)p.push(f[h].start);({consequent:l,failed:u}=this.tryParseConditionalConsequent()),[c,f]=this.getArrowLikeExpressions(l)}u&&c.length>1&&this.raise(Oe.AmbiguousConditionalArrow,i.startLoc),u&&c.length===1&&(this.state=i,p.push(c[0].start),this.state.noArrowAt=p,{consequent:l,failed:u}=this.tryParseConditionalConsequent())}return this.getArrowLikeExpressions(l,!0),this.state.noArrowAt=a,this.expect(14),o.test=r,o.consequent=l,o.alternate=this.forwardNoArrowParamsConversionAt(o,()=>this.parseMaybeAssign(void 0,void 0)),this.finishNode(o,"ConditionalExpression")}tryParseConditionalConsequent(){this.state.noArrowParamsConversionAt.push(this.state.start);let r=this.parseMaybeAssignAllowIn(),n=!this.match(14);return this.state.noArrowParamsConversionAt.pop(),{consequent:r,failed:n}}getArrowLikeExpressions(r,n){let s=[r],i=[];for(;s.length!==0;){let a=s.pop();a.type==="ArrowFunctionExpression"&&a.body.type!=="BlockStatement"?(a.typeParameters||!a.returnType?this.finishArrowValidation(a):i.push(a),s.push(a.body)):a.type==="ConditionalExpression"&&(s.push(a.consequent),s.push(a.alternate))}return n?(i.forEach(a=>this.finishArrowValidation(a)),[i,[]]):EX(i,a=>a.params.every(o=>this.isAssignable(o,!0)))}finishArrowValidation(r){var n;this.toAssignableList(r.params,(n=r.extra)==null?void 0:n.trailingCommaLoc,!1),this.scope.enter(6),super.checkParams(r,!1,!0),this.scope.exit()}forwardNoArrowParamsConversionAt(r,n){let s;return this.state.noArrowParamsConversionAt.includes(r.start)?(this.state.noArrowParamsConversionAt.push(this.state.start),s=n(),this.state.noArrowParamsConversionAt.pop()):s=n(),s}parseParenItem(r,n){let s=super.parseParenItem(r,n);if(this.eat(17)&&(s.optional=!0,this.resetEndLocation(r)),this.match(14)){let i=this.startNodeAt(n);return i.expression=s,i.typeAnnotation=this.flowParseTypeAnnotation(),this.finishNode(i,"TypeCastExpression")}return s}assertModuleNodeAllowed(r){r.type==="ImportDeclaration"&&(r.importKind==="type"||r.importKind==="typeof")||r.type==="ExportNamedDeclaration"&&r.exportKind==="type"||r.type==="ExportAllDeclaration"&&r.exportKind==="type"||super.assertModuleNodeAllowed(r)}parseExportDeclaration(r){if(this.isContextual(130)){r.exportKind="type";let n=this.startNode();return this.next(),this.match(5)?(r.specifiers=this.parseExportSpecifiers(!0),super.parseExportFrom(r),null):this.flowParseTypeAlias(n)}else if(this.isContextual(131)){r.exportKind="type";let n=this.startNode();return this.next(),this.flowParseOpaqueType(n,!1)}else if(this.isContextual(129)){r.exportKind="type";let n=this.startNode();return this.next(),this.flowParseInterface(n)}else if(this.shouldParseEnums()&&this.isContextual(126)){r.exportKind="value";let n=this.startNode();return this.next(),this.flowParseEnumDeclaration(n)}else return super.parseExportDeclaration(r)}eatExportStar(r){return super.eatExportStar(r)?!0:this.isContextual(130)&&this.lookahead().type===55?(r.exportKind="type",this.next(),this.next(),!0):!1}maybeParseExportNamespaceSpecifier(r){let{startLoc:n}=this.state,s=super.maybeParseExportNamespaceSpecifier(r);return s&&r.exportKind==="type"&&this.unexpected(n),s}parseClassId(r,n,s){super.parseClassId(r,n,s),this.match(47)&&(r.typeParameters=this.flowParseTypeParameterDeclaration())}parseClassMember(r,n,s){let{startLoc:i}=this.state;if(this.isContextual(125)){if(super.parseClassMemberFromModifier(r,n))return;n.declare=!0}super.parseClassMember(r,n,s),n.declare&&(n.type!=="ClassProperty"&&n.type!=="ClassPrivateProperty"&&n.type!=="PropertyDefinition"?this.raise(Oe.DeclareClassElement,i):n.value&&this.raise(Oe.DeclareClassFieldInitializer,n.value))}isIterator(r){return r==="iterator"||r==="asyncIterator"}readIterator(){let r=super.readWord1(),n="@@"+r;(!this.isIterator(r)||!this.state.inType)&&this.raise(I.InvalidIdentifier,this.state.curPosition(),{identifierName:n}),this.finishToken(132,n)}getTokenFromCode(r){let n=this.input.charCodeAt(this.state.pos+1);r===123&&n===124?this.finishOp(6,2):this.state.inType&&(r===62||r===60)?this.finishOp(r===62?48:47,1):this.state.inType&&r===63?n===46?this.finishOp(18,2):this.finishOp(17,1):tX(r,n,this.input.charCodeAt(this.state.pos+2))?(this.state.pos+=2,this.readIterator()):super.getTokenFromCode(r)}isAssignable(r,n){return r.type==="TypeCastExpression"?this.isAssignable(r.expression,n):super.isAssignable(r,n)}toAssignable(r,n=!1){!n&&r.type==="AssignmentExpression"&&r.left.type==="TypeCastExpression"&&(r.left=this.typeCastToParameter(r.left)),super.toAssignable(r,n)}toAssignableList(r,n,s){for(let i=0;i<r.length;i++){let a=r[i];a?.type==="TypeCastExpression"&&(r[i]=this.typeCastToParameter(a))}super.toAssignableList(r,n,s)}toReferencedList(r,n){for(let i=0;i<r.length;i++){var s;let a=r[i];a&&a.type==="TypeCastExpression"&&!((s=a.extra)!=null&&s.parenthesized)&&(r.length>1||!n)&&this.raise(Oe.TypeCastInPattern,a.typeAnnotation)}return r}parseArrayLike(r,n,s,i){let a=super.parseArrayLike(r,n,s,i);return n&&!this.state.maybeInArrowParameters&&this.toReferencedList(a.elements),a}isValidLVal(r,n,s){return r==="TypeCastExpression"||super.isValidLVal(r,n,s)}parseClassProperty(r){return this.match(14)&&(r.typeAnnotation=this.flowParseTypeAnnotation()),super.parseClassProperty(r)}parseClassPrivateProperty(r){return this.match(14)&&(r.typeAnnotation=this.flowParseTypeAnnotation()),super.parseClassPrivateProperty(r)}isClassMethod(){return this.match(47)||super.isClassMethod()}isClassProperty(){return this.match(14)||super.isClassProperty()}isNonstaticConstructor(r){return!this.match(14)&&super.isNonstaticConstructor(r)}pushClassMethod(r,n,s,i,a,o){if(n.variance&&this.unexpected(n.variance.loc.start),delete n.variance,this.match(47)&&(n.typeParameters=this.flowParseTypeParameterDeclaration()),super.pushClassMethod(r,n,s,i,a,o),n.params&&a){let l=n.params;l.length>0&&this.isThisParam(l[0])&&this.raise(Oe.ThisParamBannedInConstructor,n)}else if(n.type==="MethodDefinition"&&a&&n.value.params){let l=n.value.params;l.length>0&&this.isThisParam(l[0])&&this.raise(Oe.ThisParamBannedInConstructor,n)}}pushClassPrivateMethod(r,n,s,i){n.variance&&this.unexpected(n.variance.loc.start),delete n.variance,this.match(47)&&(n.typeParameters=this.flowParseTypeParameterDeclaration()),super.pushClassPrivateMethod(r,n,s,i)}parseClassSuper(r){if(super.parseClassSuper(r),r.superClass&&this.match(47)&&(r.superTypeParameters=this.flowParseTypeParameterInstantiation()),this.isContextual(113)){this.next();let n=r.implements=[];do{let s=this.startNode();s.id=this.flowParseRestrictedIdentifier(!0),this.match(47)?s.typeParameters=this.flowParseTypeParameterInstantiation():s.typeParameters=null,n.push(this.finishNode(s,"ClassImplements"))}while(this.eat(12))}}checkGetterSetterParams(r){super.checkGetterSetterParams(r);let n=this.getObjectOrClassMethodParams(r);if(n.length>0){let s=n[0];this.isThisParam(s)&&r.kind==="get"?this.raise(Oe.GetterMayNotHaveThisParam,s):this.isThisParam(s)&&this.raise(Oe.SetterMayNotHaveThisParam,s)}}parsePropertyNamePrefixOperator(r){r.variance=this.flowParseVariance()}parseObjPropValue(r,n,s,i,a,o,l){r.variance&&this.unexpected(r.variance.loc.start),delete r.variance;let u;this.match(47)&&!o&&(u=this.flowParseTypeParameterDeclaration(),this.match(10)||this.unexpected());let c=super.parseObjPropValue(r,n,s,i,a,o,l);return u&&((c.value||c).typeParameters=u),c}parseAssignableListItemTypes(r){return this.eat(17)&&(r.type!=="Identifier"&&this.raise(Oe.PatternIsOptional,r),this.isThisParam(r)&&this.raise(Oe.ThisParamMayNotBeOptional,r),r.optional=!0),this.match(14)?r.typeAnnotation=this.flowParseTypeAnnotation():this.isThisParam(r)&&this.raise(Oe.ThisParamAnnotationRequired,r),this.match(29)&&this.isThisParam(r)&&this.raise(Oe.ThisParamNoDefault,r),this.resetEndLocation(r),r}parseMaybeDefault(r,n){let s=super.parseMaybeDefault(r,n);return s.type==="AssignmentPattern"&&s.typeAnnotation&&s.right.start<s.typeAnnotation.start&&this.raise(Oe.TypeBeforeInitializer,s.typeAnnotation),s}checkImportReflection(r){super.checkImportReflection(r),r.module&&r.importKind!=="value"&&this.raise(Oe.ImportReflectionHasImportType,r.specifiers[0].loc.start)}parseImportSpecifierLocal(r,n,s){n.local=BS(r)?this.flowParseRestrictedIdentifier(!0,!0):this.parseIdentifier(),r.specifiers.push(this.finishImportSpecifier(n,s))}isPotentialImportPhase(r){if(super.isPotentialImportPhase(r))return!0;if(this.isContextual(130)){if(!r)return!0;let n=this.lookaheadCharCode();return n===123||n===42}return!r&&this.isContextual(87)}applyImportPhase(r,n,s,i){if(super.applyImportPhase(r,n,s,i),n){if(!s&&this.match(65))return;r.exportKind=s==="type"?s:"value"}else s==="type"&&this.match(55)&&this.unexpected(),r.importKind=s==="type"||s==="typeof"?s:"value"}parseImportSpecifier(r,n,s,i,a){let o=r.imported,l=null;o.type==="Identifier"&&(o.name==="type"?l="type":o.name==="typeof"&&(l="typeof"));let u=!1;if(this.isContextual(93)&&!this.isLookaheadContextual("as")){let f=this.parseIdentifier(!0);l!==null&&!xn(this.state.type)?(r.imported=f,r.importKind=l,r.local=cs(f)):(r.imported=o,r.importKind=null,r.local=this.parseIdentifier())}else{if(l!==null&&xn(this.state.type))r.imported=this.parseIdentifier(!0),r.importKind=l;else{if(n)throw this.raise(I.ImportBindingIsString,r,{importName:o.value});r.imported=o,r.importKind=null}this.eatContextual(93)?r.local=this.parseIdentifier():(u=!0,r.local=cs(r.imported))}let c=BS(r);return s&&c&&this.raise(Oe.ImportTypeShorthandOnlyInPureImport,r),(s||c)&&this.checkReservedType(r.local.name,r.local.loc.start,!0),u&&!s&&!c&&this.checkReservedWord(r.local.name,r.loc.start,!0,!0),this.finishImportSpecifier(r,"ImportSpecifier")}parseBindingAtom(){switch(this.state.type){case 78:return this.parseIdentifier(!0);default:return super.parseBindingAtom()}}parseFunctionParams(r,n){let s=r.kind;s!=="get"&&s!=="set"&&this.match(47)&&(r.typeParameters=this.flowParseTypeParameterDeclaration()),super.parseFunctionParams(r,n)}parseVarId(r,n){super.parseVarId(r,n),this.match(14)&&(r.id.typeAnnotation=this.flowParseTypeAnnotation(),this.resetEndLocation(r.id))}parseAsyncArrowFromCallExpression(r,n){if(this.match(14)){let s=this.state.noAnonFunctionType;this.state.noAnonFunctionType=!0,r.returnType=this.flowParseTypeAnnotation(),this.state.noAnonFunctionType=s}return super.parseAsyncArrowFromCallExpression(r,n)}shouldParseAsyncArrow(){return this.match(14)||super.shouldParseAsyncArrow()}parseMaybeAssign(r,n){var s;let i=null,a;if(this.hasPlugin("jsx")&&(this.match(142)||this.match(47))){if(i=this.state.clone(),a=this.tryParse(()=>super.parseMaybeAssign(r,n),i),!a.error)return a.node;let{context:u}=this.state,c=u[u.length-1];(c===At.j_oTag||c===At.j_expr)&&u.pop()}if((s=a)!=null&&s.error||this.match(47)){var o,l;i=i||this.state.clone();let u,c=this.tryParse(p=>{var h;u=this.flowParseTypeParameterDeclaration();let b=this.forwardNoArrowParamsConversionAt(u,()=>{let y=super.parseMaybeAssign(r,n);return this.resetStartLocationFromNode(y,u),y});(h=b.extra)!=null&&h.parenthesized&&p();let d=this.maybeUnwrapTypeCastExpression(b);return d.type!=="ArrowFunctionExpression"&&p(),d.typeParameters=u,this.resetStartLocationFromNode(d,u),b},i),f=null;if(c.node&&this.maybeUnwrapTypeCastExpression(c.node).type==="ArrowFunctionExpression"){if(!c.error&&!c.aborted)return c.node.async&&this.raise(Oe.UnexpectedTypeParameterBeforeAsyncArrowFunction,u),c.node;f=c.node}if((o=a)!=null&&o.node)return this.state=a.failState,a.node;if(f)return this.state=c.failState,f;throw(l=a)!=null&&l.thrown?a.error:c.thrown?c.error:this.raise(Oe.UnexpectedTokenAfterTypeParameter,u)}return super.parseMaybeAssign(r,n)}parseArrow(r){if(this.match(14)){let n=this.tryParse(()=>{let s=this.state.noAnonFunctionType;this.state.noAnonFunctionType=!0;let i=this.startNode();return[i.typeAnnotation,r.predicate]=this.flowParseTypeAndPredicateInitialiser(),this.state.noAnonFunctionType=s,this.canInsertSemicolon()&&this.unexpected(),this.match(19)||this.unexpected(),i});if(n.thrown)return null;n.error&&(this.state=n.failState),r.returnType=n.node.typeAnnotation?this.finishNode(n.node,"TypeAnnotation"):null}return super.parseArrow(r)}shouldParseArrow(r){return this.match(14)||super.shouldParseArrow(r)}setArrowFunctionParameters(r,n){this.state.noArrowParamsConversionAt.includes(r.start)?r.params=n:super.setArrowFunctionParameters(r,n)}checkParams(r,n,s,i=!0){if(!(s&&this.state.noArrowParamsConversionAt.includes(r.start))){for(let a=0;a<r.params.length;a++)this.isThisParam(r.params[a])&&a>0&&this.raise(Oe.ThisParamMustBeFirst,r.params[a]);super.checkParams(r,n,s,i)}}parseParenAndDistinguishExpression(r){return super.parseParenAndDistinguishExpression(r&&!this.state.noArrowAt.includes(this.state.start))}parseSubscripts(r,n,s){if(r.type==="Identifier"&&r.name==="async"&&this.state.noArrowAt.includes(n.index)){this.next();let i=this.startNodeAt(n);i.callee=r,i.arguments=super.parseCallExpressionArguments(11,!1),r=this.finishNode(i,"CallExpression")}else if(r.type==="Identifier"&&r.name==="async"&&this.match(47)){let i=this.state.clone(),a=this.tryParse(l=>this.parseAsyncArrowWithTypeParameters(n)||l(),i);if(!a.error&&!a.aborted)return a.node;let o=this.tryParse(()=>super.parseSubscripts(r,n,s),i);if(o.node&&!o.error)return o.node;if(a.node)return this.state=a.failState,a.node;if(o.node)return this.state=o.failState,o.node;throw a.error||o.error}return super.parseSubscripts(r,n,s)}parseSubscript(r,n,s,i){if(this.match(18)&&this.isLookaheadToken_lt()){if(i.optionalChainMember=!0,s)return i.stop=!0,r;this.next();let a=this.startNodeAt(n);return a.callee=r,a.typeArguments=this.flowParseTypeParameterInstantiation(),this.expect(10),a.arguments=this.parseCallExpressionArguments(11,!1),a.optional=!0,this.finishCallExpression(a,!0)}else if(!s&&this.shouldParseTypes()&&this.match(47)){let a=this.startNodeAt(n);a.callee=r;let o=this.tryParse(()=>(a.typeArguments=this.flowParseTypeParameterInstantiationCallOrNew(),this.expect(10),a.arguments=super.parseCallExpressionArguments(11,!1),i.optionalChainMember&&(a.optional=!1),this.finishCallExpression(a,i.optionalChainMember)));if(o.node)return o.error&&(this.state=o.failState),o.node}return super.parseSubscript(r,n,s,i)}parseNewCallee(r){super.parseNewCallee(r);let n=null;this.shouldParseTypes()&&this.match(47)&&(n=this.tryParse(()=>this.flowParseTypeParameterInstantiationCallOrNew()).node),r.typeArguments=n}parseAsyncArrowWithTypeParameters(r){let n=this.startNodeAt(r);if(this.parseFunctionParams(n,!1),!!this.parseArrow(n))return super.parseArrowExpression(n,void 0,!0)}readToken_mult_modulo(r){let n=this.input.charCodeAt(this.state.pos+1);if(r===42&&n===47&&this.state.hasFlowComment){this.state.hasFlowComment=!1,this.state.pos+=2,this.nextToken();return}super.readToken_mult_modulo(r)}readToken_pipe_amp(r){let n=this.input.charCodeAt(this.state.pos+1);if(r===124&&n===125){this.finishOp(9,2);return}super.readToken_pipe_amp(r)}parseTopLevel(r,n){let s=super.parseTopLevel(r,n);return this.state.hasFlowComment&&this.raise(Oe.UnterminatedFlowComment,this.state.curPosition()),s}skipBlockComment(){if(this.hasPlugin("flowComments")&&this.skipFlowComment()){if(this.state.hasFlowComment)throw this.raise(Oe.NestedFlowComment,this.state.startLoc);this.hasFlowCommentCompletion();let r=this.skipFlowComment();r&&(this.state.pos+=r,this.state.hasFlowComment=!0);return}return super.skipBlockComment(this.state.hasFlowComment?"*-/":"*/")}skipFlowComment(){let{pos:r}=this.state,n=2;for(;[32,9].includes(this.input.charCodeAt(r+n));)n++;let s=this.input.charCodeAt(n+r),i=this.input.charCodeAt(n+r+1);return s===58&&i===58?n+2:this.input.slice(n+r,n+r+12)==="flow-include"?n+12:s===58&&i!==58?n:!1}hasFlowCommentCompletion(){if(this.input.indexOf("*/",this.state.pos)===-1)throw this.raise(I.UnterminatedComment,this.state.curPosition())}flowEnumErrorBooleanMemberNotInitialized(r,{enumName:n,memberName:s}){this.raise(Oe.EnumBooleanMemberNotInitialized,r,{memberName:s,enumName:n})}flowEnumErrorInvalidMemberInitializer(r,n){return this.raise(n.explicitType?n.explicitType==="symbol"?Oe.EnumInvalidMemberInitializerSymbolType:Oe.EnumInvalidMemberInitializerPrimaryType:Oe.EnumInvalidMemberInitializerUnknownType,r,n)}flowEnumErrorNumberMemberNotInitialized(r,n){this.raise(Oe.EnumNumberMemberNotInitialized,r,n)}flowEnumErrorStringMemberInconsistentlyInitialized(r,n){this.raise(Oe.EnumStringMemberInconsistentlyInitialized,r,n)}flowEnumMemberInit(){let r=this.state.startLoc,n=()=>this.match(12)||this.match(8);switch(this.state.type){case 134:{let s=this.parseNumericLiteral(this.state.value);return n()?{type:"number",loc:s.loc.start,value:s}:{type:"invalid",loc:r}}case 133:{let s=this.parseStringLiteral(this.state.value);return n()?{type:"string",loc:s.loc.start,value:s}:{type:"invalid",loc:r}}case 85:case 86:{let s=this.parseBooleanLiteral(this.match(85));return n()?{type:"boolean",loc:s.loc.start,value:s}:{type:"invalid",loc:r}}default:return{type:"invalid",loc:r}}}flowEnumMemberRaw(){let r=this.state.startLoc,n=this.parseIdentifier(!0),s=this.eat(29)?this.flowEnumMemberInit():{type:"none",loc:r};return{id:n,init:s}}flowEnumCheckExplicitTypeMismatch(r,n,s){let{explicitType:i}=n;i!==null&&i!==s&&this.flowEnumErrorInvalidMemberInitializer(r,n)}flowEnumMembers({enumName:r,explicitType:n}){let s=new Set,i={booleanMembers:[],numberMembers:[],stringMembers:[],defaultedMembers:[]},a=!1;for(;!this.match(8);){if(this.eat(21)){a=!0;break}let o=this.startNode(),{id:l,init:u}=this.flowEnumMemberRaw(),c=l.name;if(c==="")continue;/^[a-z]/.test(c)&&this.raise(Oe.EnumInvalidMemberName,l,{memberName:c,suggestion:c[0].toUpperCase()+c.slice(1),enumName:r}),s.has(c)&&this.raise(Oe.EnumDuplicateMemberName,l,{memberName:c,enumName:r}),s.add(c);let f={enumName:r,explicitType:n,memberName:c};switch(o.id=l,u.type){case"boolean":{this.flowEnumCheckExplicitTypeMismatch(u.loc,f,"boolean"),o.init=u.value,i.booleanMembers.push(this.finishNode(o,"EnumBooleanMember"));break}case"number":{this.flowEnumCheckExplicitTypeMismatch(u.loc,f,"number"),o.init=u.value,i.numberMembers.push(this.finishNode(o,"EnumNumberMember"));break}case"string":{this.flowEnumCheckExplicitTypeMismatch(u.loc,f,"string"),o.init=u.value,i.stringMembers.push(this.finishNode(o,"EnumStringMember"));break}case"invalid":throw this.flowEnumErrorInvalidMemberInitializer(u.loc,f);case"none":switch(n){case"boolean":this.flowEnumErrorBooleanMemberNotInitialized(u.loc,f);break;case"number":this.flowEnumErrorNumberMemberNotInitialized(u.loc,f);break;default:i.defaultedMembers.push(this.finishNode(o,"EnumDefaultedMember"))}}this.match(8)||this.expect(12)}return{members:i,hasUnknownMembers:a}}flowEnumStringMembers(r,n,{enumName:s}){if(r.length===0)return n;if(n.length===0)return r;if(n.length>r.length){for(let i of r)this.flowEnumErrorStringMemberInconsistentlyInitialized(i,{enumName:s});return n}else{for(let i of n)this.flowEnumErrorStringMemberInconsistentlyInitialized(i,{enumName:s});return r}}flowEnumParseExplicitType({enumName:r}){if(!this.eatContextual(102))return null;if(!ht(this.state.type))throw this.raise(Oe.EnumInvalidExplicitTypeUnknownSupplied,this.state.startLoc,{enumName:r});let{value:n}=this.state;return this.next(),n!=="boolean"&&n!=="number"&&n!=="string"&&n!=="symbol"&&this.raise(Oe.EnumInvalidExplicitType,this.state.startLoc,{enumName:r,invalidEnumType:n}),n}flowEnumBody(r,n){let s=n.name,i=n.loc.start,a=this.flowEnumParseExplicitType({enumName:s});this.expect(5);let{members:o,hasUnknownMembers:l}=this.flowEnumMembers({enumName:s,explicitType:a});switch(r.hasUnknownMembers=l,a){case"boolean":return r.explicitType=!0,r.members=o.booleanMembers,this.expect(8),this.finishNode(r,"EnumBooleanBody");case"number":return r.explicitType=!0,r.members=o.numberMembers,this.expect(8),this.finishNode(r,"EnumNumberBody");case"string":return r.explicitType=!0,r.members=this.flowEnumStringMembers(o.stringMembers,o.defaultedMembers,{enumName:s}),this.expect(8),this.finishNode(r,"EnumStringBody");case"symbol":return r.members=o.defaultedMembers,this.expect(8),this.finishNode(r,"EnumSymbolBody");default:{let u=()=>(r.members=[],this.expect(8),this.finishNode(r,"EnumStringBody"));r.explicitType=!1;let c=o.booleanMembers.length,f=o.numberMembers.length,p=o.stringMembers.length,h=o.defaultedMembers.length;if(!c&&!f&&!p&&!h)return u();if(!c&&!f)return r.members=this.flowEnumStringMembers(o.stringMembers,o.defaultedMembers,{enumName:s}),this.expect(8),this.finishNode(r,"EnumStringBody");if(!f&&!p&&c>=h){for(let b of o.defaultedMembers)this.flowEnumErrorBooleanMemberNotInitialized(b.loc.start,{enumName:s,memberName:b.id.name});return r.members=o.booleanMembers,this.expect(8),this.finishNode(r,"EnumBooleanBody")}else if(!c&&!p&&f>=h){for(let b of o.defaultedMembers)this.flowEnumErrorNumberMemberNotInitialized(b.loc.start,{enumName:s,memberName:b.id.name});return r.members=o.numberMembers,this.expect(8),this.finishNode(r,"EnumNumberBody")}else return this.raise(Oe.EnumInconsistentMemberValues,i,{enumName:s}),u()}}}flowParseEnumDeclaration(r){let n=this.parseIdentifier();return r.id=n,r.body=this.flowEnumBody(this.startNode(),n),this.finishNode(r,"EnumDeclaration")}isLookaheadToken_lt(){let r=this.nextTokenStart();if(this.input.charCodeAt(r)===60){let n=this.input.charCodeAt(r+1);return n!==60&&n!==61}return!1}maybeUnwrapTypeCastExpression(r){return r.type==="TypeCastExpression"?r.expression:r}},SX={__proto__:null,quot:'"',amp:"&",apos:"'",lt:"<",gt:">",nbsp:"\xA0",iexcl:"\xA1",cent:"\xA2",pound:"\xA3",curren:"\xA4",yen:"\xA5",brvbar:"\xA6",sect:"\xA7",uml:"\xA8",copy:"\xA9",ordf:"\xAA",laquo:"\xAB",not:"\xAC",shy:"\xAD",reg:"\xAE",macr:"\xAF",deg:"\xB0",plusmn:"\xB1",sup2:"\xB2",sup3:"\xB3",acute:"\xB4",micro:"\xB5",para:"\xB6",middot:"\xB7",cedil:"\xB8",sup1:"\xB9",ordm:"\xBA",raquo:"\xBB",frac14:"\xBC",frac12:"\xBD",frac34:"\xBE",iquest:"\xBF",Agrave:"\xC0",Aacute:"\xC1",Acirc:"\xC2",Atilde:"\xC3",Auml:"\xC4",Aring:"\xC5",AElig:"\xC6",Ccedil:"\xC7",Egrave:"\xC8",Eacute:"\xC9",Ecirc:"\xCA",Euml:"\xCB",Igrave:"\xCC",Iacute:"\xCD",Icirc:"\xCE",Iuml:"\xCF",ETH:"\xD0",Ntilde:"\xD1",Ograve:"\xD2",Oacute:"\xD3",Ocirc:"\xD4",Otilde:"\xD5",Ouml:"\xD6",times:"\xD7",Oslash:"\xD8",Ugrave:"\xD9",Uacute:"\xDA",Ucirc:"\xDB",Uuml:"\xDC",Yacute:"\xDD",THORN:"\xDE",szlig:"\xDF",agrave:"\xE0",aacute:"\xE1",acirc:"\xE2",atilde:"\xE3",auml:"\xE4",aring:"\xE5",aelig:"\xE6",ccedil:"\xE7",egrave:"\xE8",eacute:"\xE9",ecirc:"\xEA",euml:"\xEB",igrave:"\xEC",iacute:"\xED",icirc:"\xEE",iuml:"\xEF",eth:"\xF0",ntilde:"\xF1",ograve:"\xF2",oacute:"\xF3",ocirc:"\xF4",otilde:"\xF5",ouml:"\xF6",divide:"\xF7",oslash:"\xF8",ugrave:"\xF9",uacute:"\xFA",ucirc:"\xFB",uuml:"\xFC",yacute:"\xFD",thorn:"\xFE",yuml:"\xFF",OElig:"\u0152",oelig:"\u0153",Scaron:"\u0160",scaron:"\u0161",Yuml:"\u0178",fnof:"\u0192",circ:"\u02C6",tilde:"\u02DC",Alpha:"\u0391",Beta:"\u0392",Gamma:"\u0393",Delta:"\u0394",Epsilon:"\u0395",Zeta:"\u0396",Eta:"\u0397",Theta:"\u0398",Iota:"\u0399",Kappa:"\u039A",Lambda:"\u039B",Mu:"\u039C",Nu:"\u039D",Xi:"\u039E",Omicron:"\u039F",Pi:"\u03A0",Rho:"\u03A1",Sigma:"\u03A3",Tau:"\u03A4",Upsilon:"\u03A5",Phi:"\u03A6",Chi:"\u03A7",Psi:"\u03A8",Omega:"\u03A9",alpha:"\u03B1",beta:"\u03B2",gamma:"\u03B3",delta:"\u03B4",epsilon:"\u03B5",zeta:"\u03B6",eta:"\u03B7",theta:"\u03B8",iota:"\u03B9",kappa:"\u03BA",lambda:"\u03BB",mu:"\u03BC",nu:"\u03BD",xi:"\u03BE",omicron:"\u03BF",pi:"\u03C0",rho:"\u03C1",sigmaf:"\u03C2",sigma:"\u03C3",tau:"\u03C4",upsilon:"\u03C5",phi:"\u03C6",chi:"\u03C7",psi:"\u03C8",omega:"\u03C9",thetasym:"\u03D1",upsih:"\u03D2",piv:"\u03D6",ensp:"\u2002",emsp:"\u2003",thinsp:"\u2009",zwnj:"\u200C",zwj:"\u200D",lrm:"\u200E",rlm:"\u200F",ndash:"\u2013",mdash:"\u2014",lsquo:"\u2018",rsquo:"\u2019",sbquo:"\u201A",ldquo:"\u201C",rdquo:"\u201D",bdquo:"\u201E",dagger:"\u2020",Dagger:"\u2021",bull:"\u2022",hellip:"\u2026",permil:"\u2030",prime:"\u2032",Prime:"\u2033",lsaquo:"\u2039",rsaquo:"\u203A",oline:"\u203E",frasl:"\u2044",euro:"\u20AC",image:"\u2111",weierp:"\u2118",real:"\u211C",trade:"\u2122",alefsym:"\u2135",larr:"\u2190",uarr:"\u2191",rarr:"\u2192",darr:"\u2193",harr:"\u2194",crarr:"\u21B5",lArr:"\u21D0",uArr:"\u21D1",rArr:"\u21D2",dArr:"\u21D3",hArr:"\u21D4",forall:"\u2200",part:"\u2202",exist:"\u2203",empty:"\u2205",nabla:"\u2207",isin:"\u2208",notin:"\u2209",ni:"\u220B",prod:"\u220F",sum:"\u2211",minus:"\u2212",lowast:"\u2217",radic:"\u221A",prop:"\u221D",infin:"\u221E",ang:"\u2220",and:"\u2227",or:"\u2228",cap:"\u2229",cup:"\u222A",int:"\u222B",there4:"\u2234",sim:"\u223C",cong:"\u2245",asymp:"\u2248",ne:"\u2260",equiv:"\u2261",le:"\u2264",ge:"\u2265",sub:"\u2282",sup:"\u2283",nsub:"\u2284",sube:"\u2286",supe:"\u2287",oplus:"\u2295",otimes:"\u2297",perp:"\u22A5",sdot:"\u22C5",lceil:"\u2308",rceil:"\u2309",lfloor:"\u230A",rfloor:"\u230B",lang:"\u2329",rang:"\u232A",loz:"\u25CA",spades:"\u2660",clubs:"\u2663",hearts:"\u2665",diams:"\u2666"},vi=us`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 Us(e){return e?e.type==="JSXOpeningFragment"||e.type==="JSXClosingFragment":!1}function ha(e){if(e.type==="JSXIdentifier")return e.name;if(e.type==="JSXNamespacedName")return e.namespace.name+":"+e.name.name;if(e.type==="JSXMemberExpression")return ha(e.object)+"."+ha(e.property);throw new Error("Node had unexpected type: "+e.type)}var xX=e=>class extends e{jsxReadToken(){let r="",n=this.state.pos;for(;;){if(this.state.pos>=this.length)throw this.raise(vi.UnterminatedJsxContent,this.state.startLoc);let s=this.input.charCodeAt(this.state.pos);switch(s){case 60:case 123:if(this.state.pos===this.state.start){s===60&&this.state.canStartJSXElement?(++this.state.pos,this.finishToken(142)):super.getTokenFromCode(s);return}r+=this.input.slice(n,this.state.pos),this.finishToken(141,r);return;case 38:r+=this.input.slice(n,this.state.pos),r+=this.jsxReadEntity(),n=this.state.pos;break;case 62:case 125:default:ya(s)?(r+=this.input.slice(n,this.state.pos),r+=this.jsxReadNewLine(!0),n=this.state.pos):++this.state.pos}}}jsxReadNewLine(r){let n=this.input.charCodeAt(this.state.pos),s;return++this.state.pos,n===13&&this.input.charCodeAt(this.state.pos)===10?(++this.state.pos,s=r?`
|
|
18
18
|
`:`\r
|
|
19
19
|
`):s=String.fromCharCode(n),++this.state.curLine,this.state.lineStart=this.state.pos,s}jsxReadString(r){let n="",s=++this.state.pos;for(;;){if(this.state.pos>=this.length)throw this.raise(I.UnterminatedString,this.state.startLoc);let i=this.input.charCodeAt(this.state.pos);if(i===r)break;i===38?(n+=this.input.slice(s,this.state.pos),n+=this.jsxReadEntity(),s=this.state.pos):ya(i)?(n+=this.input.slice(s,this.state.pos),n+=this.jsxReadNewLine(!1),s=this.state.pos):++this.state.pos}n+=this.input.slice(s,this.state.pos++),this.finishToken(133,n)}jsxReadEntity(){let r=++this.state.pos;if(this.codePointAtPos(this.state.pos)===35){++this.state.pos;let n=10;this.codePointAtPos(this.state.pos)===120&&(n=16,++this.state.pos);let s=this.readInt(n,void 0,!1,"bail");if(s!==null&&this.codePointAtPos(this.state.pos)===59)return++this.state.pos,String.fromCodePoint(s)}else{let n=0,s=!1;for(;n++<10&&this.state.pos<this.length&&!(s=this.codePointAtPos(this.state.pos)===59);)++this.state.pos;if(s){let i=this.input.slice(r,this.state.pos),a=SX[i];if(++this.state.pos,a)return a}}return this.state.pos=r,"&"}jsxReadWord(){let r,n=this.state.pos;do r=this.input.charCodeAt(++this.state.pos);while(ma(r)||r===45);this.finishToken(140,this.input.slice(n,this.state.pos))}jsxParseIdentifier(){let r=this.startNode();return this.match(140)?r.name=this.state.value:ry(this.state.type)?r.name=Vs(this.state.type):this.unexpected(),this.next(),this.finishNode(r,"JSXIdentifier")}jsxParseNamespacedName(){let r=this.state.startLoc,n=this.jsxParseIdentifier();if(!this.eat(14))return n;let s=this.startNodeAt(r);return s.namespace=n,s.name=this.jsxParseIdentifier(),this.finishNode(s,"JSXNamespacedName")}jsxParseElementName(){let r=this.state.startLoc,n=this.jsxParseNamespacedName();if(n.type==="JSXNamespacedName")return n;for(;this.eat(16);){let s=this.startNodeAt(r);s.object=n,s.property=this.jsxParseIdentifier(),n=this.finishNode(s,"JSXMemberExpression")}return n}jsxParseAttributeValue(){let r;switch(this.state.type){case 5:return r=this.startNode(),this.setContext(At.brace),this.next(),r=this.jsxParseExpressionContainer(r,At.j_oTag),r.expression.type==="JSXEmptyExpression"&&this.raise(vi.AttributeIsEmpty,r),r;case 142:case 133:return this.parseExprAtom();default:throw this.raise(vi.UnsupportedJsxValue,this.state.startLoc)}}jsxParseEmptyExpression(){let r=this.startNodeAt(this.state.lastTokEndLoc);return this.finishNodeAt(r,"JSXEmptyExpression",this.state.startLoc)}jsxParseSpreadChild(r){return this.next(),r.expression=this.parseExpression(),this.setContext(At.j_expr),this.state.canStartJSXElement=!0,this.expect(8),this.finishNode(r,"JSXSpreadChild")}jsxParseExpressionContainer(r,n){if(this.match(8))r.expression=this.jsxParseEmptyExpression();else{let s=this.parseExpression();r.expression=s}return this.setContext(n),this.state.canStartJSXElement=!0,this.expect(8),this.finishNode(r,"JSXExpressionContainer")}jsxParseAttribute(){let r=this.startNode();return this.match(5)?(this.setContext(At.brace),this.next(),this.expect(21),r.argument=this.parseMaybeAssignAllowIn(),this.setContext(At.j_oTag),this.state.canStartJSXElement=!0,this.expect(8),this.finishNode(r,"JSXSpreadAttribute")):(r.name=this.jsxParseNamespacedName(),r.value=this.eat(29)?this.jsxParseAttributeValue():null,this.finishNode(r,"JSXAttribute"))}jsxParseOpeningElementAt(r){let n=this.startNodeAt(r);return this.eat(143)?this.finishNode(n,"JSXOpeningFragment"):(n.name=this.jsxParseElementName(),this.jsxParseOpeningElementAfterName(n))}jsxParseOpeningElementAfterName(r){let n=[];for(;!this.match(56)&&!this.match(143);)n.push(this.jsxParseAttribute());return r.attributes=n,r.selfClosing=this.eat(56),this.expect(143),this.finishNode(r,"JSXOpeningElement")}jsxParseClosingElementAt(r){let n=this.startNodeAt(r);return this.eat(143)?this.finishNode(n,"JSXClosingFragment"):(n.name=this.jsxParseElementName(),this.expect(143),this.finishNode(n,"JSXClosingElement"))}jsxParseElementAt(r){let n=this.startNodeAt(r),s=[],i=this.jsxParseOpeningElementAt(r),a=null;if(!i.selfClosing){e:for(;;)switch(this.state.type){case 142:if(r=this.state.startLoc,this.next(),this.eat(56)){a=this.jsxParseClosingElementAt(r);break e}s.push(this.jsxParseElementAt(r));break;case 141:s.push(this.parseLiteral(this.state.value,"JSXText"));break;case 5:{let o=this.startNode();this.setContext(At.brace),this.next(),this.match(21)?s.push(this.jsxParseSpreadChild(o)):s.push(this.jsxParseExpressionContainer(o,At.j_expr));break}default:this.unexpected()}Us(i)&&!Us(a)&&a!==null?this.raise(vi.MissingClosingTagFragment,a):!Us(i)&&Us(a)?this.raise(vi.MissingClosingTagElement,a,{openingTagName:ha(i.name)}):!Us(i)&&!Us(a)&&ha(a.name)!==ha(i.name)&&this.raise(vi.MissingClosingTagElement,a,{openingTagName:ha(i.name)})}if(Us(i)?(n.openingFragment=i,n.closingFragment=a):(n.openingElement=i,n.closingElement=a),n.children=s,this.match(47))throw this.raise(vi.UnwrappedAdjacentJSXElements,this.state.startLoc);return Us(i)?this.finishNode(n,"JSXFragment"):this.finishNode(n,"JSXElement")}jsxParseElement(){let r=this.state.startLoc;return this.next(),this.jsxParseElementAt(r)}setContext(r){let{context:n}=this.state;n[n.length-1]=r}parseExprAtom(r){return this.match(142)?this.jsxParseElement():this.match(47)&&this.input.charCodeAt(this.state.pos)!==33?(this.replaceToken(142),this.jsxParseElement()):super.parseExprAtom(r)}skipSpace(){this.curContext().preserveSpace||super.skipSpace()}getTokenFromCode(r){let n=this.curContext();if(n===At.j_expr){this.jsxReadToken();return}if(n===At.j_oTag||n===At.j_cTag){if(ls(r)){this.jsxReadWord();return}if(r===62){++this.state.pos,this.finishToken(143);return}if((r===34||r===39)&&n===At.j_oTag){this.jsxReadString(r);return}}if(r===60&&this.state.canStartJSXElement&&this.input.charCodeAt(this.state.pos+1)!==33){++this.state.pos,this.finishToken(142);return}super.getTokenFromCode(r)}updateContext(r){let{context:n,type:s}=this.state;if(s===56&&r===142)n.splice(-2,2,At.j_cTag),this.state.canStartJSXElement=!1;else if(s===142)n.push(At.j_oTag);else if(s===143){let i=n[n.length-1];i===At.j_oTag&&r===56||i===At.j_cTag?(n.pop(),this.state.canStartJSXElement=n[n.length-1]===At.j_expr):(this.setContext(At.j_expr),this.state.canStartJSXElement=!0)}else this.state.canStartJSXElement=MH(s)}},Km=class extends Go{constructor(...t){super(...t),this.tsNames=new Map}},Gm=class extends Ho{constructor(...t){super(...t),this.importsStack=[]}createScope(t){return this.importsStack.push(new Set),new Km(t)}enter(t){t===256&&this.importsStack.push(new Set),super.enter(t)}exit(){let t=super.exit();return t===256&&this.importsStack.pop(),t}hasImport(t,r){let n=this.importsStack.length;if(this.importsStack[n-1].has(t))return!0;if(!r&&n>1){for(let s=0;s<n-1;s++)if(this.importsStack[s].has(t))return!0}return!1}declareName(t,r,n){if(r&4096){this.hasImport(t,!0)&&this.parser.raise(I.VarRedeclaration,n,{identifierName:t}),this.importsStack[this.importsStack.length-1].add(t);return}let s=this.currentScope(),i=s.tsNames.get(t)||0;if(r&1024){this.maybeExportDefined(s,t),s.tsNames.set(t,i|16);return}super.declareName(t,r,n),r&2&&(r&1||(this.checkRedeclarationInScope(s,t,r,n),this.maybeExportDefined(s,t)),i=i|1),r&256&&(i=i|2),r&512&&(i=i|4),r&128&&(i=i|8),i&&s.tsNames.set(t,i)}isRedeclaredInScope(t,r,n){let s=t.tsNames.get(r);if((s&2)>0){if(n&256){let i=!!(n&512),a=(s&4)>0;return i!==a}return!0}return n&128&&(s&8)>0?t.names.get(r)&2?!!(n&1):!1:n&2&&(s&1)>0?!0:super.isRedeclaredInScope(t,r,n)}checkLocalExport(t){let{name:r}=t;if(this.hasImport(r))return;let n=this.scopeStack.length;for(let s=n-1;s>=0;s--){let a=this.scopeStack[s].tsNames.get(r);if((a&1)>0||(a&16)>0)return}super.checkLocalExport(t)}},zS=e=>e.type==="ParenthesizedExpression"?zS(e.expression):e,Hm=class extends Wm{toAssignable(t,r=!1){var n,s;let i;switch((t.type==="ParenthesizedExpression"||(n=t.extra)!=null&&n.parenthesized)&&(i=zS(t),r?i.type==="Identifier"?this.expressionScope.recordArrowParameterBindingError(I.InvalidParenthesizedAssignment,t):i.type!=="MemberExpression"&&!this.isOptionalMemberExpression(i)&&this.raise(I.InvalidParenthesizedAssignment,t):this.raise(I.InvalidParenthesizedAssignment,t)),t.type){case"Identifier":case"ObjectPattern":case"ArrayPattern":case"AssignmentPattern":case"RestElement":break;case"ObjectExpression":t.type="ObjectPattern";for(let o=0,l=t.properties.length,u=l-1;o<l;o++){var a;let c=t.properties[o],f=o===u;this.toAssignableObjectExpressionProp(c,f,r),f&&c.type==="RestElement"&&(a=t.extra)!=null&&a.trailingCommaLoc&&this.raise(I.RestTrailingComma,t.extra.trailingCommaLoc)}break;case"ObjectProperty":{let{key:o,value:l}=t;this.isPrivateName(o)&&this.classScope.usePrivateName(this.getPrivateNameSV(o),o.loc.start),this.toAssignable(l,r);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":t.type="ArrayPattern",this.toAssignableList(t.elements,(s=t.extra)==null?void 0:s.trailingCommaLoc,r);break;case"AssignmentExpression":t.operator!=="="&&this.raise(I.MissingEqInAssignment,t.left.loc.end),t.type="AssignmentPattern",delete t.operator,this.toAssignable(t.left,r);break;case"ParenthesizedExpression":this.toAssignable(i,r);break}}toAssignableObjectExpressionProp(t,r,n){if(t.type==="ObjectMethod")this.raise(t.kind==="get"||t.kind==="set"?I.PatternHasAccessor:I.PatternHasMethod,t.key);else if(t.type==="SpreadElement"){t.type="RestElement";let s=t.argument;this.checkToRestConversion(s,!1),this.toAssignable(s,n),r||this.raise(I.RestTrailingComma,t)}else this.toAssignable(t,n)}toAssignableList(t,r,n){let s=t.length-1;for(let i=0;i<=s;i++){let a=t[i];if(a){if(a.type==="SpreadElement"){a.type="RestElement";let o=a.argument;this.checkToRestConversion(o,!0),this.toAssignable(o,n)}else this.toAssignable(a,n);a.type==="RestElement"&&(i<s?this.raise(I.RestTrailingComma,a):r&&this.raise(I.RestTrailingComma,r))}}}isAssignable(t,r){switch(t.type){case"Identifier":case"ObjectPattern":case"ArrayPattern":case"AssignmentPattern":case"RestElement":return!0;case"ObjectExpression":{let n=t.properties.length-1;return t.properties.every((s,i)=>s.type!=="ObjectMethod"&&(i===n||s.type!=="SpreadElement")&&this.isAssignable(s))}case"ObjectProperty":return this.isAssignable(t.value);case"SpreadElement":return this.isAssignable(t.argument);case"ArrayExpression":return t.elements.every(n=>n===null||this.isAssignable(n));case"AssignmentExpression":return t.operator==="=";case"ParenthesizedExpression":return this.isAssignable(t.expression);case"MemberExpression":case"OptionalMemberExpression":return!r;default:return!1}}toReferencedList(t,r){return t}toReferencedListDeep(t,r){this.toReferencedList(t,r);for(let n of t)n?.type==="ArrayExpression"&&this.toReferencedListDeep(n.elements)}parseSpread(t){let r=this.startNode();return this.next(),r.argument=this.parseMaybeAssignAllowIn(t,void 0),this.finishNode(r,"SpreadElement")}parseRestBinding(){let t=this.startNode();return this.next(),t.argument=this.parseBindingAtom(),this.finishNode(t,"RestElement")}parseBindingAtom(){switch(this.state.type){case 0:{let t=this.startNode();return this.next(),t.elements=this.parseBindingList(3,93,1),this.finishNode(t,"ArrayPattern")}case 5:return this.parseObjectLike(8,!0)}return this.parseIdentifier()}parseBindingList(t,r,n){let s=n&1,i=[],a=!0;for(;!this.eat(t);)if(a?a=!1:this.expect(12),s&&this.match(12))i.push(null);else{if(this.eat(t))break;if(this.match(21)){if(i.push(this.parseAssignableListItemTypes(this.parseRestBinding(),n)),!this.checkCommaAfterRest(r)){this.expect(t);break}}else{let o=[];for(this.match(26)&&this.hasPlugin("decorators")&&this.raise(I.UnsupportedParameterDecorator,this.state.startLoc);this.match(26);)o.push(this.parseDecorator());i.push(this.parseAssignableListItem(n,o))}}return i}parseBindingRestProperty(t){return this.next(),t.argument=this.parseIdentifier(),this.checkCommaAfterRest(125),this.finishNode(t,"RestElement")}parseBindingProperty(){let{type:t,startLoc:r}=this.state;if(t===21)return this.parseBindingRestProperty(this.startNode());let n=this.startNode();return t===138?(this.expectPlugin("destructuringPrivate",r),this.classScope.usePrivateName(this.state.value,r),n.key=this.parsePrivateName()):this.parsePropertyName(n),n.method=!1,this.parseObjPropValue(n,r,!1,!1,!0,!1)}parseAssignableListItem(t,r){let n=this.parseMaybeDefault();this.parseAssignableListItemTypes(n,t);let s=this.parseMaybeDefault(n.loc.start,n);return r.length&&(n.decorators=r),s}parseAssignableListItemTypes(t,r){return t}parseMaybeDefault(t,r){var n,s;if((n=t)!=null||(t=this.state.startLoc),r=(s=r)!=null?s:this.parseBindingAtom(),!this.eat(29))return r;let i=this.startNodeAt(t);return i.left=r,i.right=this.parseMaybeAssignAllowIn(),this.finishNode(i,"AssignmentPattern")}isValidLVal(t,r,n){switch(t){case"AssignmentPattern":return"left";case"RestElement":return"argument";case"ObjectProperty":return"value";case"ParenthesizedExpression":return"expression";case"ArrayPattern":return"elements";case"ObjectPattern":return"properties"}return!1}isOptionalMemberExpression(t){return t.type==="OptionalMemberExpression"}checkLVal(t,r,n=64,s=!1,i=!1,a=!1){var o;let l=t.type;if(this.isObjectMethod(t))return;let u=this.isOptionalMemberExpression(t);if(u||l==="MemberExpression"){u&&(this.expectPlugin("optionalChainingAssign",t.loc.start),r.type!=="AssignmentExpression"&&this.raise(I.InvalidLhsOptionalChaining,t,{ancestor:r})),n!==64&&this.raise(I.InvalidPropertyBindingPattern,t);return}if(l==="Identifier"){this.checkIdentifier(t,n,i);let{name:d}=t;s&&(s.has(d)?this.raise(I.ParamDupe,t):s.add(d));return}let c=this.isValidLVal(l,!(a||(o=t.extra)!=null&&o.parenthesized)&&r.type==="AssignmentExpression",n);if(c===!0)return;if(c===!1){let d=n===64?I.InvalidLhs:I.InvalidLhsBinding;this.raise(d,t,{ancestor:r});return}let f,p;typeof c=="string"?(f=c,p=l==="ParenthesizedExpression"):[f,p]=c;let h=l==="ArrayPattern"||l==="ObjectPattern"?{type:l}:r,b=t[f];if(Array.isArray(b))for(let d of b)d&&this.checkLVal(d,h,n,s,i,p);else b&&this.checkLVal(b,h,n,s,i,p)}checkIdentifier(t,r,n=!1){this.state.strict&&(n?GS(t.name,this.inModule):KS(t.name))&&(r===64?this.raise(I.StrictEvalArguments,t,{referenceName:t.name}):this.raise(I.StrictEvalArgumentsBinding,t,{bindingName:t.name})),r&8192&&t.name==="let"&&this.raise(I.LetInLexicalBinding,t),r&64||this.declareNameFromIdentifier(t,r)}declareNameFromIdentifier(t,r){this.scope.declareName(t.name,r,t.loc.start)}checkToRestConversion(t,r){switch(t.type){case"ParenthesizedExpression":this.checkToRestConversion(t.expression,r);break;case"Identifier":case"MemberExpression":break;case"ArrayExpression":case"ObjectExpression":if(r)break;default:this.raise(I.InvalidRestAssignmentPattern,t)}}checkCommaAfterRest(t){return this.match(12)?(this.raise(this.lookaheadCharCode()===t?I.RestTrailingComma:I.ElementAfterRest,this.state.startLoc),!0):!1}};function PX(e){if(e==null)throw new Error(`Unexpected ${e} value.`);return e}function FS(e){if(!e)throw new Error("Assert fail")}var ve=us`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.`,AccessorCannotBeOptional:"An 'accessor' property cannot be declared optional.",AccessorCannotDeclareThisParameter:"'get' and 'set' accessors cannot declare 'this' parameters.",AccessorCannotHaveTypeParameters:"An accessor cannot have type parameters.",ClassMethodHasDeclare:"Class methods cannot have the 'declare' modifier.",ClassMethodHasReadonly:"Class methods cannot have the 'readonly' modifier.",ConstInitializerMustBeStringOrNumericLiteralOrLiteralEnumReference:"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.",SetAccessorCannotHaveOptionalParameter:"A 'set' accessor cannot have an optional parameter.",SetAccessorCannotHaveRestParameter:"A 'set' accessor cannot have rest parameter.",SetAccessorCannotHaveReturnType:"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 AX(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}}function kS(e){return e==="private"||e==="public"||e==="protected"}function CX(e){return e==="in"||e==="out"}var wX=e=>class extends e{constructor(...r){super(...r),this.tsParseInOutModifiers=this.tsParseModifiers.bind(this,{allowedModifiers:["in","out"],disallowedModifiers:["const","public","private","protected","readonly","declare","abstract","override"],errorTemplate:ve.InvalidModifierOnTypeParameter}),this.tsParseConstModifier=this.tsParseModifiers.bind(this,{allowedModifiers:["const"],disallowedModifiers:["in","out"],errorTemplate:ve.InvalidModifierOnTypeParameterPositions}),this.tsParseInOutConstModifiers=this.tsParseModifiers.bind(this,{allowedModifiers:["in","out","const"],disallowedModifiers:["public","private","protected","readonly","declare","abstract","override"],errorTemplate:ve.InvalidModifierOnTypeParameter})}getScopeHandler(){return Gm}tsIsIdentifier(){return ht(this.state.type)}tsTokenCanFollowModifier(){return this.match(0)||this.match(5)||this.match(55)||this.match(21)||this.match(138)||this.isLiteralPropertyName()}tsNextTokenOnSameLineAndCanFollowModifier(){return this.next(),this.hasPrecedingLineBreak()?!1:this.tsTokenCanFollowModifier()}tsNextTokenCanFollowModifier(){return this.match(106)?(this.next(),this.tsTokenCanFollowModifier()):this.tsNextTokenOnSameLineAndCanFollowModifier()}tsParseModifier(r,n){if(!ht(this.state.type)&&this.state.type!==58&&this.state.type!==75)return;let s=this.state.value;if(r.includes(s)){if(n&&this.tsIsStartOfStaticBlocks())return;if(this.tsTryParse(this.tsNextTokenCanFollowModifier.bind(this)))return s}}tsParseModifiers({allowedModifiers:r,disallowedModifiers:n,stopOnStartOfClassStaticBlock:s,errorTemplate:i=ve.InvalidModifierOnTypeMember},a){let o=(u,c,f,p)=>{c===f&&a[p]&&this.raise(ve.InvalidModifiersOrder,u,{orderedModifiers:[f,p]})},l=(u,c,f,p)=>{(a[f]&&c===p||a[p]&&c===f)&&this.raise(ve.IncompatibleModifiers,u,{modifiers:[f,p]})};for(;;){let{startLoc:u}=this.state,c=this.tsParseModifier(r.concat(n??[]),s);if(!c)break;kS(c)?a.accessibility?this.raise(ve.DuplicateAccessibilityModifier,u,{modifier:c}):(o(u,c,c,"override"),o(u,c,c,"static"),o(u,c,c,"readonly"),a.accessibility=c):CX(c)?(a[c]&&this.raise(ve.DuplicateModifier,u,{modifier:c}),a[c]=!0,o(u,c,"in","out")):(hasOwnProperty.call(a,c)?this.raise(ve.DuplicateModifier,u,{modifier:c}):(o(u,c,"static","readonly"),o(u,c,"static","override"),o(u,c,"override","readonly"),o(u,c,"abstract","override"),l(u,c,"declare","override"),l(u,c,"static","abstract")),a[c]=!0),n!=null&&n.includes(c)&&this.raise(i,u,{modifier:c})}}tsIsListTerminator(r){switch(r){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(r,n){let s=[];for(;!this.tsIsListTerminator(r);)s.push(n());return s}tsParseDelimitedList(r,n,s){return PX(this.tsParseDelimitedListWorker(r,n,!0,s))}tsParseDelimitedListWorker(r,n,s,i){let a=[],o=-1;for(;!this.tsIsListTerminator(r);){o=-1;let l=n();if(l==null)return;if(a.push(l),this.eat(12)){o=this.state.lastTokStartLoc.index;continue}if(this.tsIsListTerminator(r))break;s&&this.expect(12);return}return i&&(i.value=o),a}tsParseBracketedList(r,n,s,i,a){i||(s?this.expect(0):this.expect(47));let o=this.tsParseDelimitedList(r,n,a);return s?this.expect(3):this.expect(48),o}tsParseImportType(){let r=this.startNode();return this.expect(83),this.expect(10),this.match(133)||this.raise(ve.UnsupportedImportTypeArgument,this.state.startLoc),r.argument=super.parseExprAtom(),(this.hasPlugin("importAttributes")||this.hasPlugin("importAssertions"))&&(r.options=null),this.eat(12)&&(this.expectImportAttributesPlugin(),this.match(11)||(r.options=super.parseMaybeAssignAllowIn(),this.eat(12))),this.expect(11),this.eat(16)&&(r.qualifier=this.tsParseEntityName()),this.match(47)&&(r.typeParameters=this.tsParseTypeArguments()),this.finishNode(r,"TSImportType")}tsParseEntityName(r=!0){let n=this.parseIdentifier(r);for(;this.eat(16);){let s=this.startNodeAtNode(n);s.left=n,s.right=this.parseIdentifier(r),n=this.finishNode(s,"TSQualifiedName")}return n}tsParseTypeReference(){let r=this.startNode();return r.typeName=this.tsParseEntityName(),!this.hasPrecedingLineBreak()&&this.match(47)&&(r.typeParameters=this.tsParseTypeArguments()),this.finishNode(r,"TSTypeReference")}tsParseThisTypePredicate(r){this.next();let n=this.startNodeAtNode(r);return n.parameterName=r,n.typeAnnotation=this.tsParseTypeAnnotation(!1),n.asserts=!1,this.finishNode(n,"TSTypePredicate")}tsParseThisTypeNode(){let r=this.startNode();return this.next(),this.finishNode(r,"TSThisType")}tsParseTypeQuery(){let r=this.startNode();return this.expect(87),this.match(83)?r.exprName=this.tsParseImportType():r.exprName=this.tsParseEntityName(),!this.hasPrecedingLineBreak()&&this.match(47)&&(r.typeParameters=this.tsParseTypeArguments()),this.finishNode(r,"TSTypeQuery")}tsParseTypeParameter(r){let n=this.startNode();return r(n),n.name=this.tsParseTypeParameterName(),n.constraint=this.tsEatThenParseType(81),n.default=this.tsEatThenParseType(29),this.finishNode(n,"TSTypeParameter")}tsTryParseTypeParameters(r){if(this.match(47))return this.tsParseTypeParameters(r)}tsParseTypeParameters(r){let n=this.startNode();this.match(47)||this.match(142)?this.next():this.unexpected();let s={value:-1};return n.params=this.tsParseBracketedList("TypeParametersOrArguments",this.tsParseTypeParameter.bind(this,r),!1,!0,s),n.params.length===0&&this.raise(ve.EmptyTypeParameters,n),s.value!==-1&&this.addExtra(n,"trailingComma",s.value),this.finishNode(n,"TSTypeParameterDeclaration")}tsFillSignature(r,n){let s=r===19,i="parameters",a="typeAnnotation";n.typeParameters=this.tsTryParseTypeParameters(this.tsParseConstModifier),this.expect(10),n[i]=this.tsParseBindingListForSignature(),s?n[a]=this.tsParseTypeOrTypePredicateAnnotation(r):this.match(r)&&(n[a]=this.tsParseTypeOrTypePredicateAnnotation(r))}tsParseBindingListForSignature(){let r=super.parseBindingList(11,41,2);for(let n of r){let{type:s}=n;(s==="AssignmentPattern"||s==="TSParameterProperty")&&this.raise(ve.UnsupportedSignatureParameterKind,n,{type:s})}return r}tsParseTypeMemberSemicolon(){!this.eat(12)&&!this.isLineTerminator()&&this.expect(13)}tsParseSignatureMember(r,n){return this.tsFillSignature(14,n),this.tsParseTypeMemberSemicolon(),this.finishNode(n,r)}tsIsUnambiguouslyIndexSignature(){return this.next(),ht(this.state.type)?(this.next(),this.match(14)):!1}tsTryParseIndexSignature(r){if(!(this.match(0)&&this.tsLookAhead(this.tsIsUnambiguouslyIndexSignature.bind(this))))return;this.expect(0);let n=this.parseIdentifier();n.typeAnnotation=this.tsParseTypeAnnotation(),this.resetEndLocation(n),this.expect(3),r.parameters=[n];let s=this.tsTryParseTypeAnnotation();return s&&(r.typeAnnotation=s),this.tsParseTypeMemberSemicolon(),this.finishNode(r,"TSIndexSignature")}tsParsePropertyOrMethodSignature(r,n){this.eat(17)&&(r.optional=!0);let s=r;if(this.match(10)||this.match(47)){n&&this.raise(ve.ReadonlyForMethodSignature,r);let i=s;i.kind&&this.match(47)&&this.raise(ve.AccessorCannotHaveTypeParameters,this.state.curPosition()),this.tsFillSignature(14,i),this.tsParseTypeMemberSemicolon();let a="parameters",o="typeAnnotation";if(i.kind==="get")i[a].length>0&&(this.raise(I.BadGetterArity,this.state.curPosition()),this.isThisParam(i[a][0])&&this.raise(ve.AccessorCannotDeclareThisParameter,this.state.curPosition()));else if(i.kind==="set"){if(i[a].length!==1)this.raise(I.BadSetterArity,this.state.curPosition());else{let l=i[a][0];this.isThisParam(l)&&this.raise(ve.AccessorCannotDeclareThisParameter,this.state.curPosition()),l.type==="Identifier"&&l.optional&&this.raise(ve.SetAccessorCannotHaveOptionalParameter,this.state.curPosition()),l.type==="RestElement"&&this.raise(ve.SetAccessorCannotHaveRestParameter,this.state.curPosition())}i[o]&&this.raise(ve.SetAccessorCannotHaveReturnType,i[o])}else i.kind="method";return this.finishNode(i,"TSMethodSignature")}else{let i=s;n&&(i.readonly=!0);let a=this.tsTryParseTypeAnnotation();return a&&(i.typeAnnotation=a),this.tsParseTypeMemberSemicolon(),this.finishNode(i,"TSPropertySignature")}}tsParseTypeMember(){let r=this.startNode();if(this.match(10)||this.match(47))return this.tsParseSignatureMember("TSCallSignatureDeclaration",r);if(this.match(77)){let s=this.startNode();return this.next(),this.match(10)||this.match(47)?this.tsParseSignatureMember("TSConstructSignatureDeclaration",r):(r.key=this.createIdentifier(s,"new"),this.tsParsePropertyOrMethodSignature(r,!1))}this.tsParseModifiers({allowedModifiers:["readonly"],disallowedModifiers:["declare","abstract","private","protected","public","static","override"]},r);let n=this.tsTryParseIndexSignature(r);return n||(super.parsePropertyName(r),!r.computed&&r.key.type==="Identifier"&&(r.key.name==="get"||r.key.name==="set")&&this.tsTokenCanFollowModifier()&&(r.kind=r.key.name,super.parsePropertyName(r)),this.tsParsePropertyOrMethodSignature(r,!!r.readonly))}tsParseTypeLiteral(){let r=this.startNode();return r.members=this.tsParseObjectTypeMembers(),this.finishNode(r,"TSTypeLiteral")}tsParseObjectTypeMembers(){this.expect(5);let r=this.tsParseList("TypeMembers",this.tsParseTypeMember.bind(this));return this.expect(8),r}tsIsStartOfMappedType(){return this.next(),this.eat(53)?this.isContextual(122):(this.isContextual(122)&&this.next(),!this.match(0)||(this.next(),!this.tsIsIdentifier())?!1:(this.next(),this.match(58)))}tsParseMappedType(){let r=this.startNode();this.expect(5),this.match(53)?(r.readonly=this.state.value,this.next(),this.expectContextual(122)):this.eatContextual(122)&&(r.readonly=!0),this.expect(0);{let n=this.startNode();n.name=this.tsParseTypeParameterName(),n.constraint=this.tsExpectThenParseType(58),r.typeParameter=this.finishNode(n,"TSTypeParameter")}return r.nameType=this.eatContextual(93)?this.tsParseType():null,this.expect(3),this.match(53)?(r.optional=this.state.value,this.next(),this.expect(17)):this.eat(17)&&(r.optional=!0),r.typeAnnotation=this.tsTryParseType(),this.semicolon(),this.expect(8),this.finishNode(r,"TSMappedType")}tsParseTupleType(){let r=this.startNode();r.elementTypes=this.tsParseBracketedList("TupleElementTypes",this.tsParseTupleElementType.bind(this),!0,!1);let n=!1;return r.elementTypes.forEach(s=>{let{type:i}=s;n&&i!=="TSRestType"&&i!=="TSOptionalType"&&!(i==="TSNamedTupleMember"&&s.optional)&&this.raise(ve.OptionalTypeBeforeRequired,s),n||(n=i==="TSNamedTupleMember"&&s.optional||i==="TSOptionalType")}),this.finishNode(r,"TSTupleType")}tsParseTupleElementType(){let{startLoc:r}=this.state,n=this.eat(21),s,i,a,o,u=xn(this.state.type)?this.lookaheadCharCode():null;if(u===58)s=!0,a=!1,i=this.parseIdentifier(!0),this.expect(14),o=this.tsParseType();else if(u===63){a=!0;let c=this.state.startLoc,f=this.state.value,p=this.tsParseNonArrayType();this.lookaheadCharCode()===58?(s=!0,i=this.createIdentifier(this.startNodeAt(c),f),this.expect(17),this.expect(14),o=this.tsParseType()):(s=!1,o=p,this.expect(17))}else o=this.tsParseType(),a=this.eat(17),s=this.eat(14);if(s){let c;i?(c=this.startNodeAtNode(i),c.optional=a,c.label=i,c.elementType=o,this.eat(17)&&(c.optional=!0,this.raise(ve.TupleOptionalAfterType,this.state.lastTokStartLoc))):(c=this.startNodeAtNode(o),c.optional=a,this.raise(ve.InvalidTupleMemberLabel,o),c.label=o,c.elementType=this.tsParseType()),o=this.finishNode(c,"TSNamedTupleMember")}else if(a){let c=this.startNodeAtNode(o);c.typeAnnotation=o,o=this.finishNode(c,"TSOptionalType")}if(n){let c=this.startNodeAt(r);c.typeAnnotation=o,o=this.finishNode(c,"TSRestType")}return o}tsParseParenthesizedType(){let r=this.startNode();return this.expect(10),r.typeAnnotation=this.tsParseType(),this.expect(11),this.finishNode(r,"TSParenthesizedType")}tsParseFunctionOrConstructorType(r,n){let s=this.startNode();return r==="TSConstructorType"&&(s.abstract=!!n,n&&this.next(),this.next()),this.tsInAllowConditionalTypesContext(()=>this.tsFillSignature(19,s)),this.finishNode(s,r)}tsParseLiteralTypeNode(){let r=this.startNode();switch(this.state.type){case 134:case 135:case 133:case 85:case 86:r.literal=super.parseExprAtom();break;default:this.unexpected()}return this.finishNode(r,"TSLiteralType")}tsParseTemplateLiteralType(){let r=this.startNode();return r.literal=super.parseTemplate(!1),this.finishNode(r,"TSLiteralType")}parseTemplateSubstitution(){return this.state.inType?this.tsParseType():super.parseTemplateSubstitution()}tsParseThisTypeOrThisTypePredicate(){let r=this.tsParseThisTypeNode();return this.isContextual(116)&&!this.hasPrecedingLineBreak()?this.tsParseThisTypePredicate(r):r}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 r=this.startNode(),n=this.lookahead();return n.type!==134&&n.type!==135&&this.unexpected(),r.literal=this.parseMaybeUnary(),this.finishNode(r,"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:r}=this.state;if(ht(r)||r===88||r===84){let n=r===88?"TSVoidKeyword":r===84?"TSNullKeyword":AX(this.state.value);if(n!==void 0&&this.lookaheadCharCode()!==46){let s=this.startNode();return this.next(),this.finishNode(s,n)}return this.tsParseTypeReference()}}}this.unexpected()}tsParseArrayTypeOrHigher(){let r=this.tsParseNonArrayType();for(;!this.hasPrecedingLineBreak()&&this.eat(0);)if(this.match(3)){let n=this.startNodeAtNode(r);n.elementType=r,this.expect(3),r=this.finishNode(n,"TSArrayType")}else{let n=this.startNodeAtNode(r);n.objectType=r,n.indexType=this.tsParseType(),this.expect(3),r=this.finishNode(n,"TSIndexedAccessType")}return r}tsParseTypeOperator(){let r=this.startNode(),n=this.state.value;return this.next(),r.operator=n,r.typeAnnotation=this.tsParseTypeOperatorOrHigher(),n==="readonly"&&this.tsCheckTypeAnnotationForReadOnly(r),this.finishNode(r,"TSTypeOperator")}tsCheckTypeAnnotationForReadOnly(r){switch(r.typeAnnotation.type){case"TSTupleType":case"TSArrayType":return;default:this.raise(ve.UnexpectedReadonly,r)}}tsParseInferType(){let r=this.startNode();this.expectContextual(115);let n=this.startNode();return n.name=this.tsParseTypeParameterName(),n.constraint=this.tsTryParse(()=>this.tsParseConstraintForInferType()),r.typeParameter=this.finishNode(n,"TSTypeParameter"),this.finishNode(r,"TSInferType")}tsParseConstraintForInferType(){if(this.eat(81)){let r=this.tsInDisallowConditionalTypesContext(()=>this.tsParseType());if(this.state.inDisallowConditionalTypesContext||!this.match(17))return r}}tsParseTypeOperatorOrHigher(){return KH(this.state.type)&&!this.state.containsEsc?this.tsParseTypeOperator():this.isContextual(115)?this.tsParseInferType():this.tsInAllowConditionalTypesContext(()=>this.tsParseArrayTypeOrHigher())}tsParseUnionOrIntersectionType(r,n,s){let i=this.startNode(),a=this.eat(s),o=[];do o.push(n());while(this.eat(s));return o.length===1&&!a?o[0]:(i.types=o,this.finishNode(i,r))}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)?!0:this.match(10)&&this.tsLookAhead(this.tsIsUnambiguouslyStartOfFunctionType.bind(this))}tsSkipParameterStart(){if(ht(this.state.type)||this.match(78))return this.next(),!0;if(this.match(5)){let{errors:r}=this.state,n=r.length;try{return this.parseObjectLike(8,!0),r.length===n}catch{return!1}}if(this.match(0)){this.next();let{errors:r}=this.state,n=r.length;try{return super.parseBindingList(3,93,1),r.length===n}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(r){return this.tsInType(()=>{let n=this.startNode();this.expect(r);let s=this.startNode(),i=!!this.tsTryParse(this.tsParseTypePredicateAsserts.bind(this));if(i&&this.match(78)){let l=this.tsParseThisTypeOrThisTypePredicate();return l.type==="TSThisType"?(s.parameterName=l,s.asserts=!0,s.typeAnnotation=null,l=this.finishNode(s,"TSTypePredicate")):(this.resetStartLocationFromNode(l,s),l.asserts=!0),n.typeAnnotation=l,this.finishNode(n,"TSTypeAnnotation")}let a=this.tsIsIdentifier()&&this.tsTryParse(this.tsParseTypePredicatePrefix.bind(this));if(!a)return i?(s.parameterName=this.parseIdentifier(),s.asserts=i,s.typeAnnotation=null,n.typeAnnotation=this.finishNode(s,"TSTypePredicate"),this.finishNode(n,"TSTypeAnnotation")):this.tsParseTypeAnnotation(!1,n);let o=this.tsParseTypeAnnotation(!1);return s.parameterName=a,s.typeAnnotation=o,s.asserts=i,n.typeAnnotation=this.finishNode(s,"TSTypePredicate"),this.finishNode(n,"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 r=this.parseIdentifier();if(this.isContextual(116)&&!this.hasPrecedingLineBreak())return this.next(),r}tsParseTypePredicateAsserts(){if(this.state.type!==109)return!1;let r=this.state.containsEsc;return this.next(),!ht(this.state.type)&&!this.match(78)?!1:(r&&this.raise(I.InvalidEscapedReservedWord,this.state.lastTokStartLoc,{reservedWord:"asserts"}),!0)}tsParseTypeAnnotation(r=!0,n=this.startNode()){return this.tsInType(()=>{r&&this.expect(14),n.typeAnnotation=this.tsParseType()}),this.finishNode(n,"TSTypeAnnotation")}tsParseType(){FS(this.state.inType);let r=this.tsParseNonConditionalType();if(this.state.inDisallowConditionalTypesContext||this.hasPrecedingLineBreak()||!this.eat(81))return r;let n=this.startNodeAtNode(r);return n.checkType=r,n.extendsType=this.tsInDisallowConditionalTypesContext(()=>this.tsParseNonConditionalType()),this.expect(17),n.trueType=this.tsInAllowConditionalTypesContext(()=>this.tsParseType()),this.expect(14),n.falseType=this.tsInAllowConditionalTypesContext(()=>this.tsParseType()),this.finishNode(n,"TSConditionalType")}isAbstractConstructorSignature(){return this.isContextual(124)&&this.lookahead().type===77}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(ve.ReservedTypeAssertion,this.state.startLoc);let r=this.startNode();return r.typeAnnotation=this.tsInType(()=>(this.next(),this.match(75)?this.tsParseTypeReference():this.tsParseType())),this.expect(48),r.expression=this.parseMaybeUnary(),this.finishNode(r,"TSTypeAssertion")}tsParseHeritageClause(r){let n=this.state.startLoc,s=this.tsParseDelimitedList("HeritageClauseElement",()=>{let i=this.startNode();return i.expression=this.tsParseEntityName(),this.match(47)&&(i.typeParameters=this.tsParseTypeArguments()),this.finishNode(i,"TSExpressionWithTypeArguments")});return s.length||this.raise(ve.EmptyHeritageClauseType,n,{token:r}),s}tsParseInterfaceDeclaration(r,n={}){if(this.hasFollowingLineBreak())return null;this.expectContextual(129),n.declare&&(r.declare=!0),ht(this.state.type)?(r.id=this.parseIdentifier(),this.checkIdentifier(r.id,130)):(r.id=null,this.raise(ve.MissingInterfaceName,this.state.startLoc)),r.typeParameters=this.tsTryParseTypeParameters(this.tsParseInOutConstModifiers),this.eat(81)&&(r.extends=this.tsParseHeritageClause("extends"));let s=this.startNode();return s.body=this.tsInType(this.tsParseObjectTypeMembers.bind(this)),r.body=this.finishNode(s,"TSInterfaceBody"),this.finishNode(r,"TSInterfaceDeclaration")}tsParseTypeAliasDeclaration(r){return r.id=this.parseIdentifier(),this.checkIdentifier(r.id,2),r.typeAnnotation=this.tsInType(()=>{if(r.typeParameters=this.tsTryParseTypeParameters(this.tsParseInOutModifiers),this.expect(29),this.isContextual(114)&&this.lookahead().type!==16){let n=this.startNode();return this.next(),this.finishNode(n,"TSIntrinsicKeyword")}return this.tsParseType()}),this.semicolon(),this.finishNode(r,"TSTypeAliasDeclaration")}tsInNoContext(r){let n=this.state.context;this.state.context=[n[0]];try{return r()}finally{this.state.context=n}}tsInType(r){let n=this.state.inType;this.state.inType=!0;try{return r()}finally{this.state.inType=n}}tsInDisallowConditionalTypesContext(r){let n=this.state.inDisallowConditionalTypesContext;this.state.inDisallowConditionalTypesContext=!0;try{return r()}finally{this.state.inDisallowConditionalTypesContext=n}}tsInAllowConditionalTypesContext(r){let n=this.state.inDisallowConditionalTypesContext;this.state.inDisallowConditionalTypesContext=!1;try{return r()}finally{this.state.inDisallowConditionalTypesContext=n}}tsEatThenParseType(r){if(this.match(r))return this.tsNextThenParseType()}tsExpectThenParseType(r){return this.tsInType(()=>(this.expect(r),this.tsParseType()))}tsNextThenParseType(){return this.tsInType(()=>(this.next(),this.tsParseType()))}tsParseEnumMember(){let r=this.startNode();return r.id=this.match(133)?super.parseStringLiteral(this.state.value):this.parseIdentifier(!0),this.eat(29)&&(r.initializer=super.parseMaybeAssignAllowIn()),this.finishNode(r,"TSEnumMember")}tsParseEnumDeclaration(r,n={}){return n.const&&(r.const=!0),n.declare&&(r.declare=!0),this.expectContextual(126),r.id=this.parseIdentifier(),this.checkIdentifier(r.id,r.const?8971:8459),this.expect(5),r.members=this.tsParseDelimitedList("EnumMembers",this.tsParseEnumMember.bind(this)),this.expect(8),this.finishNode(r,"TSEnumDeclaration")}tsParseModuleBlock(){let r=this.startNode();return this.scope.enter(0),this.expect(5),super.parseBlockOrModuleBlockBody(r.body=[],void 0,!0,8),this.scope.exit(),this.finishNode(r,"TSModuleBlock")}tsParseModuleOrNamespaceDeclaration(r,n=!1){if(r.id=this.parseIdentifier(),n||this.checkIdentifier(r.id,1024),this.eat(16)){let s=this.startNode();this.tsParseModuleOrNamespaceDeclaration(s,!0),r.body=s}else this.scope.enter(256),this.prodParam.enter(0),r.body=this.tsParseModuleBlock(),this.prodParam.exit(),this.scope.exit();return this.finishNode(r,"TSModuleDeclaration")}tsParseAmbientExternalModuleDeclaration(r){return this.isContextual(112)?(r.global=!0,r.id=this.parseIdentifier()):this.match(133)?r.id=super.parseStringLiteral(this.state.value):this.unexpected(),this.match(5)?(this.scope.enter(256),this.prodParam.enter(0),r.body=this.tsParseModuleBlock(),this.prodParam.exit(),this.scope.exit()):this.semicolon(),this.finishNode(r,"TSModuleDeclaration")}tsParseImportEqualsDeclaration(r,n,s){r.isExport=s||!1,r.id=n||this.parseIdentifier(),this.checkIdentifier(r.id,4096),this.expect(29);let i=this.tsParseModuleReference();return r.importKind==="type"&&i.type!=="TSExternalModuleReference"&&this.raise(ve.ImportAliasHasImportType,i),r.moduleReference=i,this.semicolon(),this.finishNode(r,"TSImportEqualsDeclaration")}tsIsExternalModuleReference(){return this.isContextual(119)&&this.lookaheadCharCode()===40}tsParseModuleReference(){return this.tsIsExternalModuleReference()?this.tsParseExternalModuleReference():this.tsParseEntityName(!1)}tsParseExternalModuleReference(){let r=this.startNode();return this.expectContextual(119),this.expect(10),this.match(133)||this.unexpected(),r.expression=super.parseExprAtom(),this.expect(11),this.sawUnambiguousESM=!0,this.finishNode(r,"TSExternalModuleReference")}tsLookAhead(r){let n=this.state.clone(),s=r();return this.state=n,s}tsTryParseAndCatch(r){let n=this.tryParse(s=>r()||s());if(!(n.aborted||!n.node))return n.error&&(this.state=n.failState),n.node}tsTryParse(r){let n=this.state.clone(),s=r();if(s!==void 0&&s!==!1)return s;this.state=n}tsTryParseDeclare(r){if(this.isLineTerminator())return;let n=this.state.type,s;return this.isContextual(100)&&(n=74,s="let"),this.tsInAmbientContext(()=>{switch(n){case 68:return r.declare=!0,super.parseFunctionStatement(r,!1,!1);case 80:return r.declare=!0,this.parseClass(r,!0,!1);case 126:return this.tsParseEnumDeclaration(r,{declare:!0});case 112:return this.tsParseAmbientExternalModuleDeclaration(r);case 75:case 74:return!this.match(75)||!this.isLookaheadContextual("enum")?(r.declare=!0,this.parseVarStatement(r,s||this.state.value,!0)):(this.expect(75),this.tsParseEnumDeclaration(r,{const:!0,declare:!0}));case 129:{let i=this.tsParseInterfaceDeclaration(r,{declare:!0});if(i)return i}default:if(ht(n))return this.tsParseDeclaration(r,this.state.value,!0,null)}})}tsTryParseExportDeclaration(){return this.tsParseDeclaration(this.startNode(),this.state.value,!0,null)}tsParseExpressionStatement(r,n,s){switch(n.name){case"declare":{let i=this.tsTryParseDeclare(r);return i&&(i.declare=!0),i}case"global":if(this.match(5)){this.scope.enter(256),this.prodParam.enter(0);let i=r;return i.global=!0,i.id=n,i.body=this.tsParseModuleBlock(),this.scope.exit(),this.prodParam.exit(),this.finishNode(i,"TSModuleDeclaration")}break;default:return this.tsParseDeclaration(r,n.name,!1,s)}}tsParseDeclaration(r,n,s,i){switch(n){case"abstract":if(this.tsCheckLineTerminator(s)&&(this.match(80)||ht(this.state.type)))return this.tsParseAbstractDeclaration(r,i);break;case"module":if(this.tsCheckLineTerminator(s)){if(this.match(133))return this.tsParseAmbientExternalModuleDeclaration(r);if(ht(this.state.type))return this.tsParseModuleOrNamespaceDeclaration(r)}break;case"namespace":if(this.tsCheckLineTerminator(s)&&ht(this.state.type))return this.tsParseModuleOrNamespaceDeclaration(r);break;case"type":if(this.tsCheckLineTerminator(s)&&ht(this.state.type))return this.tsParseTypeAliasDeclaration(r);break}}tsCheckLineTerminator(r){return r?this.hasFollowingLineBreak()?!1:(this.next(),!0):!this.isLineTerminator()}tsTryParseGenericAsyncArrowFunction(r){if(!this.match(47))return;let n=this.state.maybeInArrowParameters;this.state.maybeInArrowParameters=!0;let s=this.tsTryParseAndCatch(()=>{let i=this.startNodeAt(r);return i.typeParameters=this.tsParseTypeParameters(this.tsParseConstModifier),super.parseFunctionParams(i),i.returnType=this.tsTryParseTypeOrTypePredicateAnnotation(),this.expect(19),i});if(this.state.maybeInArrowParameters=n,!!s)return super.parseArrowExpression(s,null,!0)}tsParseTypeArgumentsInExpression(){if(this.reScan_lt()===47)return this.tsParseTypeArguments()}tsParseTypeArguments(){let r=this.startNode();return r.params=this.tsInType(()=>this.tsInNoContext(()=>(this.expect(47),this.tsParseDelimitedList("TypeParametersOrArguments",this.tsParseType.bind(this))))),r.params.length===0?this.raise(ve.EmptyTypeArguments,r):!this.state.inType&&this.curContext()===At.brace&&this.reScan_lt_gt(),this.expect(48),this.finishNode(r,"TSTypeParameterInstantiation")}tsIsDeclarationStart(){return GH(this.state.type)}isExportDefaultSpecifier(){return this.tsIsDeclarationStart()?!1:super.isExportDefaultSpecifier()}parseAssignableListItem(r,n){let s=this.state.startLoc,i={};this.tsParseModifiers({allowedModifiers:["public","private","protected","override","readonly"]},i);let a=i.accessibility,o=i.override,l=i.readonly;!(r&4)&&(a||l||o)&&this.raise(ve.UnexpectedParameterModifier,s);let u=this.parseMaybeDefault();this.parseAssignableListItemTypes(u,r);let c=this.parseMaybeDefault(u.loc.start,u);if(a||l||o){let f=this.startNodeAt(s);return n.length&&(f.decorators=n),a&&(f.accessibility=a),l&&(f.readonly=l),o&&(f.override=o),c.type!=="Identifier"&&c.type!=="AssignmentPattern"&&this.raise(ve.UnsupportedParameterPropertyKind,f),f.parameter=c,this.finishNode(f,"TSParameterProperty")}return n.length&&(u.decorators=n),c}isSimpleParameter(r){return r.type==="TSParameterProperty"&&super.isSimpleParameter(r.parameter)||super.isSimpleParameter(r)}tsDisallowOptionalPattern(r){for(let n of r.params)n.type!=="Identifier"&&n.optional&&!this.state.isAmbientContext&&this.raise(ve.PatternIsOptional,n)}setArrowFunctionParameters(r,n,s){super.setArrowFunctionParameters(r,n,s),this.tsDisallowOptionalPattern(r)}parseFunctionBodyAndFinish(r,n,s=!1){this.match(14)&&(r.returnType=this.tsParseTypeOrTypePredicateAnnotation(14));let i=n==="FunctionDeclaration"?"TSDeclareFunction":n==="ClassMethod"||n==="ClassPrivateMethod"?"TSDeclareMethod":void 0;return i&&!this.match(5)&&this.isLineTerminator()?this.finishNode(r,i):i==="TSDeclareFunction"&&this.state.isAmbientContext&&(this.raise(ve.DeclareFunctionHasImplementation,r),r.declare)?super.parseFunctionBodyAndFinish(r,i,s):(this.tsDisallowOptionalPattern(r),super.parseFunctionBodyAndFinish(r,n,s))}registerFunctionStatementId(r){!r.body&&r.id?this.checkIdentifier(r.id,1024):super.registerFunctionStatementId(r)}tsCheckForInvalidTypeCasts(r){r.forEach(n=>{n?.type==="TSTypeCastExpression"&&this.raise(ve.UnexpectedTypeAnnotation,n.typeAnnotation)})}toReferencedList(r,n){return this.tsCheckForInvalidTypeCasts(r),r}parseArrayLike(r,n,s,i){let a=super.parseArrayLike(r,n,s,i);return a.type==="ArrayExpression"&&this.tsCheckForInvalidTypeCasts(a.elements),a}parseSubscript(r,n,s,i){if(!this.hasPrecedingLineBreak()&&this.match(35)){this.state.canStartJSXElement=!1,this.next();let o=this.startNodeAt(n);return o.expression=r,this.finishNode(o,"TSNonNullExpression")}let a=!1;if(this.match(18)&&this.lookaheadCharCode()===60){if(s)return i.stop=!0,r;i.optionalChainMember=a=!0,this.next()}if(this.match(47)||this.match(51)){let o,l=this.tsTryParseAndCatch(()=>{if(!s&&this.atPossibleAsyncArrow(r)){let p=this.tsTryParseGenericAsyncArrowFunction(n);if(p)return p}let u=this.tsParseTypeArgumentsInExpression();if(!u)return;if(a&&!this.match(10)){o=this.state.curPosition();return}if(Hu(this.state.type)){let p=super.parseTaggedTemplateExpression(r,n,i);return p.typeParameters=u,p}if(!s&&this.eat(10)){let p=this.startNodeAt(n);return p.callee=r,p.arguments=this.parseCallExpressionArguments(11,!1),this.tsCheckForInvalidTypeCasts(p.arguments),p.typeParameters=u,i.optionalChainMember&&(p.optional=a),this.finishCallExpression(p,i.optionalChainMember)}let c=this.state.type;if(c===48||c===52||c!==10&&Om(c)&&!this.hasPrecedingLineBreak())return;let f=this.startNodeAt(n);return f.expression=r,f.typeParameters=u,this.finishNode(f,"TSInstantiationExpression")});if(o&&this.unexpected(o,10),l)return l.type==="TSInstantiationExpression"&&(this.match(16)||this.match(18)&&this.lookaheadCharCode()!==40)&&this.raise(ve.InvalidPropertyAccessAfterInstantiationExpression,this.state.startLoc),l}return super.parseSubscript(r,n,s,i)}parseNewCallee(r){var n;super.parseNewCallee(r);let{callee:s}=r;s.type==="TSInstantiationExpression"&&!((n=s.extra)!=null&&n.parenthesized)&&(r.typeParameters=s.typeParameters,r.callee=s.expression)}parseExprOp(r,n,s){let i;if(Wu(58)>s&&!this.hasPrecedingLineBreak()&&(this.isContextual(93)||(i=this.isContextual(120)))){let a=this.startNodeAt(n);return a.expression=r,a.typeAnnotation=this.tsInType(()=>(this.next(),this.match(75)?(i&&this.raise(I.UnexpectedKeyword,this.state.startLoc,{keyword:"const"}),this.tsParseTypeReference()):this.tsParseType())),this.finishNode(a,i?"TSSatisfiesExpression":"TSAsExpression"),this.reScan_lt_gt(),this.parseExprOp(a,n,s)}return super.parseExprOp(r,n,s)}checkReservedWord(r,n,s,i){this.state.isAmbientContext||super.checkReservedWord(r,n,s,i)}checkImportReflection(r){super.checkImportReflection(r),r.module&&r.importKind!=="value"&&this.raise(ve.ImportReflectionHasImportType,r.specifiers[0].loc.start)}checkDuplicateExports(){}isPotentialImportPhase(r){if(super.isPotentialImportPhase(r))return!0;if(this.isContextual(130)){let n=this.lookaheadCharCode();return r?n===123||n===42:n!==61}return!r&&this.isContextual(87)}applyImportPhase(r,n,s,i){super.applyImportPhase(r,n,s,i),n?r.exportKind=s==="type"?"type":"value":r.importKind=s==="type"||s==="typeof"?s:"value"}parseImport(r){if(this.match(133))return r.importKind="value",super.parseImport(r);let n;if(ht(this.state.type)&&this.lookaheadCharCode()===61)return r.importKind="value",this.tsParseImportEqualsDeclaration(r);if(this.isContextual(130)){let s=this.parseMaybeImportPhase(r,!1);if(this.lookaheadCharCode()===61)return this.tsParseImportEqualsDeclaration(r,s);n=super.parseImportSpecifiersAndAfter(r,s)}else n=super.parseImport(r);return n.importKind==="type"&&n.specifiers.length>1&&n.specifiers[0].type==="ImportDefaultSpecifier"&&this.raise(ve.TypeImportCannotSpecifyDefaultAndNamed,n),n}parseExport(r,n){if(this.match(83)){this.next();let s=r,i=null;return this.isContextual(130)&&this.isPotentialImportPhase(!1)?i=this.parseMaybeImportPhase(s,!1):s.importKind="value",this.tsParseImportEqualsDeclaration(s,i,!0)}else if(this.eat(29)){let s=r;return s.expression=super.parseExpression(),this.semicolon(),this.sawUnambiguousESM=!0,this.finishNode(s,"TSExportAssignment")}else if(this.eatContextual(93)){let s=r;return this.expectContextual(128),s.id=this.parseIdentifier(),this.semicolon(),this.finishNode(s,"TSNamespaceExportDeclaration")}else return super.parseExport(r,n)}isAbstractClass(){return this.isContextual(124)&&this.lookahead().type===80}parseExportDefaultExpression(){if(this.isAbstractClass()){let r=this.startNode();return this.next(),r.abstract=!0,this.parseClass(r,!0,!0)}if(this.match(129)){let r=this.tsParseInterfaceDeclaration(this.startNode());if(r)return r}return super.parseExportDefaultExpression()}parseVarStatement(r,n,s=!1){let{isAmbientContext:i}=this.state,a=super.parseVarStatement(r,n,s||i);if(!i)return a;for(let{id:o,init:l}of a.declarations)l&&(n!=="const"||o.typeAnnotation?this.raise(ve.InitializerNotAllowedInAmbientContext,l):IX(l,this.hasPlugin("estree"))||this.raise(ve.ConstInitializerMustBeStringOrNumericLiteralOrLiteralEnumReference,l));return a}parseStatementContent(r,n){if(this.match(75)&&this.isLookaheadContextual("enum")){let s=this.startNode();return this.expect(75),this.tsParseEnumDeclaration(s,{const:!0})}if(this.isContextual(126))return this.tsParseEnumDeclaration(this.startNode());if(this.isContextual(129)){let s=this.tsParseInterfaceDeclaration(this.startNode());if(s)return s}return super.parseStatementContent(r,n)}parseAccessModifier(){return this.tsParseModifier(["public","protected","private"])}tsHasSomeModifiers(r,n){return n.some(s=>kS(s)?r.accessibility===s:!!r[s])}tsIsStartOfStaticBlocks(){return this.isContextual(106)&&this.lookaheadCharCode()===123}parseClassMember(r,n,s){let i=["declare","private","public","protected","override","abstract","readonly","static"];this.tsParseModifiers({allowedModifiers:i,disallowedModifiers:["in","out"],stopOnStartOfClassStaticBlock:!0,errorTemplate:ve.InvalidModifierOnTypeParameterPositions},n);let a=()=>{this.tsIsStartOfStaticBlocks()?(this.next(),this.next(),this.tsHasSomeModifiers(n,i)&&this.raise(ve.StaticBlockCannotHaveModifier,this.state.curPosition()),super.parseClassStaticBlock(r,n)):this.parseClassMemberWithIsStatic(r,n,s,!!n.static)};n.declare?this.tsInAmbientContext(a):a()}parseClassMemberWithIsStatic(r,n,s,i){let a=this.tsTryParseIndexSignature(n);if(a){r.body.push(a),n.abstract&&this.raise(ve.IndexSignatureHasAbstract,n),n.accessibility&&this.raise(ve.IndexSignatureHasAccessibility,n,{modifier:n.accessibility}),n.declare&&this.raise(ve.IndexSignatureHasDeclare,n),n.override&&this.raise(ve.IndexSignatureHasOverride,n);return}!this.state.inAbstractClass&&n.abstract&&this.raise(ve.NonAbstractClassHasAbstractMethod,n),n.override&&(s.hadSuperClass||this.raise(ve.OverrideNotInSubClass,n)),super.parseClassMemberWithIsStatic(r,n,s,i)}parsePostMemberNameModifiers(r){this.eat(17)&&(r.optional=!0),r.readonly&&this.match(10)&&this.raise(ve.ClassMethodHasReadonly,r),r.declare&&this.match(10)&&this.raise(ve.ClassMethodHasDeclare,r)}parseExpressionStatement(r,n,s){return(n.type==="Identifier"?this.tsParseExpressionStatement(r,n,s):void 0)||super.parseExpressionStatement(r,n,s)}shouldParseExportDeclaration(){return this.tsIsDeclarationStart()?!0:super.shouldParseExportDeclaration()}parseConditional(r,n,s){if(!this.state.maybeInArrowParameters||!this.match(17))return super.parseConditional(r,n,s);let i=this.tryParse(()=>super.parseConditional(r,n));return i.node?(i.error&&(this.state=i.failState),i.node):(i.error&&super.setOptionalParametersError(s,i.error),r)}parseParenItem(r,n){let s=super.parseParenItem(r,n);if(this.eat(17)&&(s.optional=!0,this.resetEndLocation(r)),this.match(14)){let i=this.startNodeAt(n);return i.expression=r,i.typeAnnotation=this.tsParseTypeAnnotation(),this.finishNode(i,"TSTypeCastExpression")}return r}parseExportDeclaration(r){if(!this.state.isAmbientContext&&this.isContextual(125))return this.tsInAmbientContext(()=>this.parseExportDeclaration(r));let n=this.state.startLoc,s=this.eatContextual(125);if(s&&(this.isContextual(125)||!this.shouldParseExportDeclaration()))throw this.raise(ve.ExpectedAmbientAfterExportDeclare,this.state.startLoc);let a=ht(this.state.type)&&this.tsTryParseExportDeclaration()||super.parseExportDeclaration(r);return a?((a.type==="TSInterfaceDeclaration"||a.type==="TSTypeAliasDeclaration"||s)&&(r.exportKind="type"),s&&(this.resetStartLocation(a,n),a.declare=!0),a):null}parseClassId(r,n,s,i){if((!n||s)&&this.isContextual(113))return;super.parseClassId(r,n,s,r.declare?1024:8331);let a=this.tsTryParseTypeParameters(this.tsParseInOutConstModifiers);a&&(r.typeParameters=a)}parseClassPropertyAnnotation(r){r.optional||(this.eat(35)?r.definite=!0:this.eat(17)&&(r.optional=!0));let n=this.tsTryParseTypeAnnotation();n&&(r.typeAnnotation=n)}parseClassProperty(r){if(this.parseClassPropertyAnnotation(r),this.state.isAmbientContext&&!(r.readonly&&!r.typeAnnotation)&&this.match(29)&&this.raise(ve.DeclareClassFieldHasInitializer,this.state.startLoc),r.abstract&&this.match(29)){let{key:n}=r;this.raise(ve.AbstractPropertyHasInitializer,this.state.startLoc,{propertyName:n.type==="Identifier"&&!r.computed?n.name:`[${this.input.slice(n.start,n.end)}]`})}return super.parseClassProperty(r)}parseClassPrivateProperty(r){return r.abstract&&this.raise(ve.PrivateElementHasAbstract,r),r.accessibility&&this.raise(ve.PrivateElementHasAccessibility,r,{modifier:r.accessibility}),this.parseClassPropertyAnnotation(r),super.parseClassPrivateProperty(r)}parseClassAccessorProperty(r){return this.parseClassPropertyAnnotation(r),r.optional&&this.raise(ve.AccessorCannotBeOptional,r),super.parseClassAccessorProperty(r)}pushClassMethod(r,n,s,i,a,o){let l=this.tsTryParseTypeParameters(this.tsParseConstModifier);l&&a&&this.raise(ve.ConstructorHasTypeParameters,l);let{declare:u=!1,kind:c}=n;u&&(c==="get"||c==="set")&&this.raise(ve.DeclareAccessor,n,{kind:c}),l&&(n.typeParameters=l),super.pushClassMethod(r,n,s,i,a,o)}pushClassPrivateMethod(r,n,s,i){let a=this.tsTryParseTypeParameters(this.tsParseConstModifier);a&&(n.typeParameters=a),super.pushClassPrivateMethod(r,n,s,i)}declareClassPrivateMethodInScope(r,n){r.type!=="TSDeclareMethod"&&(r.type==="MethodDefinition"&&!hasOwnProperty.call(r.value,"body")||super.declareClassPrivateMethodInScope(r,n))}parseClassSuper(r){super.parseClassSuper(r),r.superClass&&(this.match(47)||this.match(51))&&(r.superTypeParameters=this.tsParseTypeArgumentsInExpression()),this.eatContextual(113)&&(r.implements=this.tsParseHeritageClause("implements"))}parseObjPropValue(r,n,s,i,a,o,l){let u=this.tsTryParseTypeParameters(this.tsParseConstModifier);return u&&(r.typeParameters=u),super.parseObjPropValue(r,n,s,i,a,o,l)}parseFunctionParams(r,n){let s=this.tsTryParseTypeParameters(this.tsParseConstModifier);s&&(r.typeParameters=s),super.parseFunctionParams(r,n)}parseVarId(r,n){super.parseVarId(r,n),r.id.type==="Identifier"&&!this.hasPrecedingLineBreak()&&this.eat(35)&&(r.definite=!0);let s=this.tsTryParseTypeAnnotation();s&&(r.id.typeAnnotation=s,this.resetEndLocation(r.id))}parseAsyncArrowFromCallExpression(r,n){return this.match(14)&&(r.returnType=this.tsParseTypeAnnotation()),super.parseAsyncArrowFromCallExpression(r,n)}parseMaybeAssign(r,n){var s,i,a,o,l;let u,c,f;if(this.hasPlugin("jsx")&&(this.match(142)||this.match(47))){if(u=this.state.clone(),c=this.tryParse(()=>super.parseMaybeAssign(r,n),u),!c.error)return c.node;let{context:b}=this.state,d=b[b.length-1];(d===At.j_oTag||d===At.j_expr)&&b.pop()}if(!((s=c)!=null&&s.error)&&!this.match(47))return super.parseMaybeAssign(r,n);(!u||u===this.state)&&(u=this.state.clone());let p,h=this.tryParse(b=>{var d,y;p=this.tsParseTypeParameters(this.tsParseConstModifier);let P=super.parseMaybeAssign(r,n);return(P.type!=="ArrowFunctionExpression"||(d=P.extra)!=null&&d.parenthesized)&&b(),((y=p)==null?void 0:y.params.length)!==0&&this.resetStartLocationFromNode(P,p),P.typeParameters=p,P},u);if(!h.error&&!h.aborted)return p&&this.reportReservedArrowTypeParam(p),h.node;if(!c&&(FS(!this.hasPlugin("jsx")),f=this.tryParse(()=>super.parseMaybeAssign(r,n),u),!f.error))return f.node;if((i=c)!=null&&i.node)return this.state=c.failState,c.node;if(h.node)return this.state=h.failState,p&&this.reportReservedArrowTypeParam(p),h.node;if((a=f)!=null&&a.node)return this.state=f.failState,f.node;throw((o=c)==null?void 0:o.error)||h.error||((l=f)==null?void 0:l.error)}reportReservedArrowTypeParam(r){var n;r.params.length===1&&!r.params[0].constraint&&!((n=r.extra)!=null&&n.trailingComma)&&this.getPluginOption("typescript","disallowAmbiguousJSXLike")&&this.raise(ve.ReservedArrowTypeParam,r)}parseMaybeUnary(r,n){return!this.hasPlugin("jsx")&&this.match(47)?this.tsParseTypeAssertion():super.parseMaybeUnary(r,n)}parseArrow(r){if(this.match(14)){let n=this.tryParse(s=>{let i=this.tsParseTypeOrTypePredicateAnnotation(14);return(this.canInsertSemicolon()||!this.match(19))&&s(),i});if(n.aborted)return;n.thrown||(n.error&&(this.state=n.failState),r.returnType=n.node)}return super.parseArrow(r)}parseAssignableListItemTypes(r,n){if(!(n&2))return r;this.eat(17)&&(r.optional=!0);let s=this.tsTryParseTypeAnnotation();return s&&(r.typeAnnotation=s),this.resetEndLocation(r),r}isAssignable(r,n){switch(r.type){case"TSTypeCastExpression":return this.isAssignable(r.expression,n);case"TSParameterProperty":return!0;default:return super.isAssignable(r,n)}}toAssignable(r,n=!1){switch(r.type){case"ParenthesizedExpression":this.toAssignableParenthesizedExpression(r,n);break;case"TSAsExpression":case"TSSatisfiesExpression":case"TSNonNullExpression":case"TSTypeAssertion":n?this.expressionScope.recordArrowParameterBindingError(ve.UnexpectedTypeCastInParameter,r):this.raise(ve.UnexpectedTypeCastInParameter,r),this.toAssignable(r.expression,n);break;case"AssignmentExpression":!n&&r.left.type==="TSTypeCastExpression"&&(r.left=this.typeCastToParameter(r.left));default:super.toAssignable(r,n)}}toAssignableParenthesizedExpression(r,n){switch(r.expression.type){case"TSAsExpression":case"TSSatisfiesExpression":case"TSNonNullExpression":case"TSTypeAssertion":case"ParenthesizedExpression":this.toAssignable(r.expression,n);break;default:super.toAssignable(r,n)}}checkToRestConversion(r,n){switch(r.type){case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":case"TSNonNullExpression":this.checkToRestConversion(r.expression,!1);break;default:super.checkToRestConversion(r,n)}}isValidLVal(r,n,s){switch(r){case"TSTypeCastExpression":return!0;case"TSParameterProperty":return"parameter";case"TSNonNullExpression":case"TSInstantiationExpression":return"expression";case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":return(s!==64||!n)&&["expression",!0];default:return super.isValidLVal(r,n,s)}}parseBindingAtom(){return this.state.type===78?this.parseIdentifier(!0):super.parseBindingAtom()}parseMaybeDecoratorArguments(r){if(this.match(47)||this.match(51)){let n=this.tsParseTypeArgumentsInExpression();if(this.match(10)){let s=super.parseMaybeDecoratorArguments(r);return s.typeParameters=n,s}this.unexpected(null,10)}return super.parseMaybeDecoratorArguments(r)}checkCommaAfterRest(r){return this.state.isAmbientContext&&this.match(12)&&this.lookaheadCharCode()===r?(this.next(),!1):super.checkCommaAfterRest(r)}isClassMethod(){return this.match(47)||super.isClassMethod()}isClassProperty(){return this.match(35)||this.match(14)||super.isClassProperty()}parseMaybeDefault(r,n){let s=super.parseMaybeDefault(r,n);return s.type==="AssignmentPattern"&&s.typeAnnotation&&s.right.start<s.typeAnnotation.start&&this.raise(ve.TypeAnnotationAfterAssign,s.typeAnnotation),s}getTokenFromCode(r){if(this.state.inType){if(r===62){this.finishOp(48,1);return}if(r===60){this.finishOp(47,1);return}}super.getTokenFromCode(r)}reScan_lt_gt(){let{type:r}=this.state;r===47?(this.state.pos-=1,this.readToken_lt()):r===48&&(this.state.pos-=1,this.readToken_gt())}reScan_lt(){let{type:r}=this.state;return r===51?(this.state.pos-=2,this.finishOp(47,1),47):r}toAssignableList(r,n,s){for(let i=0;i<r.length;i++){let a=r[i];a?.type==="TSTypeCastExpression"&&(r[i]=this.typeCastToParameter(a))}super.toAssignableList(r,n,s)}typeCastToParameter(r){return r.expression.typeAnnotation=r.typeAnnotation,this.resetEndLocation(r.expression,r.typeAnnotation.loc.end),r.expression}shouldParseArrow(r){return this.match(14)?r.every(n=>this.isAssignable(n,!0)):super.shouldParseArrow(r)}shouldParseAsyncArrow(){return this.match(14)||super.shouldParseAsyncArrow()}canHaveLeadingDecorator(){return super.canHaveLeadingDecorator()||this.isAbstractClass()}jsxParseOpeningElementAfterName(r){if(this.match(47)||this.match(51)){let n=this.tsTryParseAndCatch(()=>this.tsParseTypeArgumentsInExpression());n&&(r.typeParameters=n)}return super.jsxParseOpeningElementAfterName(r)}getGetterSetterExpectedParamCount(r){let n=super.getGetterSetterExpectedParamCount(r),i=this.getObjectOrClassMethodParams(r)[0];return i&&this.isThisParam(i)?n+1:n}parseCatchClauseParam(){let r=super.parseCatchClauseParam(),n=this.tsTryParseTypeAnnotation();return n&&(r.typeAnnotation=n,this.resetEndLocation(r)),r}tsInAmbientContext(r){let{isAmbientContext:n,strict:s}=this.state;this.state.isAmbientContext=!0,this.state.strict=!1;try{return r()}finally{this.state.isAmbientContext=n,this.state.strict=s}}parseClass(r,n,s){let i=this.state.inAbstractClass;this.state.inAbstractClass=!!r.abstract;try{return super.parseClass(r,n,s)}finally{this.state.inAbstractClass=i}}tsParseAbstractDeclaration(r,n){if(this.match(80))return r.abstract=!0,this.maybeTakeDecorators(n,this.parseClass(r,!0,!1));if(this.isContextual(129)){if(!this.hasFollowingLineBreak())return r.abstract=!0,this.raise(ve.NonClassMethodPropertyHasAbstractModifer,r),this.tsParseInterfaceDeclaration(r)}else this.unexpected(null,80)}parseMethod(r,n,s,i,a,o,l){let u=super.parseMethod(r,n,s,i,a,o,l);if(u.abstract&&(this.hasPlugin("estree")?!!u.value.body:!!u.body)){let{key:f}=u;this.raise(ve.AbstractMethodHasImplementation,u,{methodName:f.type==="Identifier"&&!u.computed?f.name:`[${this.input.slice(f.start,f.end)}]`})}return u}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(r,n,s,i){return!n&&i?(this.parseTypeOnlyImportExportSpecifier(r,!1,s),this.finishNode(r,"ExportSpecifier")):(r.exportKind="value",super.parseExportSpecifier(r,n,s,i))}parseImportSpecifier(r,n,s,i,a){return!n&&i?(this.parseTypeOnlyImportExportSpecifier(r,!0,s),this.finishNode(r,"ImportSpecifier")):(r.importKind="value",super.parseImportSpecifier(r,n,s,i,s?4098:4096))}parseTypeOnlyImportExportSpecifier(r,n,s){let i=n?"imported":"local",a=n?"local":"exported",o=r[i],l,u=!1,c=!0,f=o.loc.start;if(this.isContextual(93)){let h=this.parseIdentifier();if(this.isContextual(93)){let b=this.parseIdentifier();xn(this.state.type)?(u=!0,o=h,l=n?this.parseIdentifier():this.parseModuleExportName(),c=!1):(l=b,c=!1)}else xn(this.state.type)?(c=!1,l=n?this.parseIdentifier():this.parseModuleExportName()):(u=!0,o=h)}else xn(this.state.type)&&(u=!0,n?(o=this.parseIdentifier(!0),this.isContextual(93)||this.checkReservedWord(o.name,o.loc.start,!0,!0)):o=this.parseModuleExportName());u&&s&&this.raise(n?ve.TypeModifierIsUsedInTypeImports:ve.TypeModifierIsUsedInTypeExports,f),r[i]=o,r[a]=l;let p=n?"importKind":"exportKind";r[p]=u?"type":"value",c&&this.eatContextual(93)&&(r[a]=n?this.parseIdentifier():this.parseModuleExportName()),r[a]||(r[a]=cs(r[i])),n&&this.checkIdentifier(r[a],u?4098:4096)}};function DX(e){if(e.type!=="MemberExpression")return!1;let{computed:t,property:r}=e;return t&&r.type!=="StringLiteral"&&(r.type!=="TemplateLiteral"||r.expressions.length>0)?!1:ZS(e.object)}function IX(e,t){var r;let{type:n}=e;if((r=e.extra)!=null&&r.parenthesized)return!1;if(t){if(n==="Literal"){let{value:s}=e;if(typeof s=="string"||typeof s=="boolean")return!0}}else if(n==="StringLiteral"||n==="BooleanLiteral")return!0;return!!(QS(e,t)||OX(e,t)||n==="TemplateLiteral"&&e.expressions.length===0||DX(e))}function QS(e,t){return t?e.type==="Literal"&&(typeof e.value=="number"||"bigint"in e):e.type==="NumericLiteral"||e.type==="BigIntLiteral"}function OX(e,t){if(e.type==="UnaryExpression"){let{operator:r,argument:n}=e;if(r==="-"&&QS(n,t))return!0}return!1}function ZS(e){return e.type==="Identifier"?!0:e.type!=="MemberExpression"||e.computed?!1:ZS(e.object)}var LS=us`placeholders`({ClassNameIsRequired:"A class name is required.",UnexpectedSpace:"Unexpected space in placeholder."}),_X=e=>class extends e{parsePlaceholder(r){if(this.match(144)){let n=this.startNode();return this.next(),this.assertNoSpace(),n.name=super.parseIdentifier(!0),this.assertNoSpace(),this.expect(144),this.finishPlaceholder(n,r)}}finishPlaceholder(r,n){let s=r;return(!s.expectedNode||!s.type)&&(s=this.finishNode(s,"Placeholder")),s.expectedNode=n,s}getTokenFromCode(r){r===37&&this.input.charCodeAt(this.state.pos+1)===37?this.finishOp(144,2):super.getTokenFromCode(r)}parseExprAtom(r){return this.parsePlaceholder("Expression")||super.parseExprAtom(r)}parseIdentifier(r){return this.parsePlaceholder("Identifier")||super.parseIdentifier(r)}checkReservedWord(r,n,s,i){r!==void 0&&super.checkReservedWord(r,n,s,i)}parseBindingAtom(){return this.parsePlaceholder("Pattern")||super.parseBindingAtom()}isValidLVal(r,n,s){return r==="Placeholder"||super.isValidLVal(r,n,s)}toAssignable(r,n){r&&r.type==="Placeholder"&&r.expectedNode==="Expression"?r.expectedNode="Pattern":super.toAssignable(r,n)}chStartsBindingIdentifier(r,n){return!!(super.chStartsBindingIdentifier(r,n)||this.lookahead().type===144)}verifyBreakContinue(r,n){r.label&&r.label.type==="Placeholder"||super.verifyBreakContinue(r,n)}parseExpressionStatement(r,n){var s;if(n.type!=="Placeholder"||(s=n.extra)!=null&&s.parenthesized)return super.parseExpressionStatement(r,n);if(this.match(14)){let a=r;return a.label=this.finishPlaceholder(n,"Identifier"),this.next(),a.body=super.parseStatementOrSloppyAnnexBFunctionDeclaration(),this.finishNode(a,"LabeledStatement")}this.semicolon();let i=r;return i.name=n.name,this.finishPlaceholder(i,"Statement")}parseBlock(r,n,s){return this.parsePlaceholder("BlockStatement")||super.parseBlock(r,n,s)}parseFunctionId(r){return this.parsePlaceholder("Identifier")||super.parseFunctionId(r)}parseClass(r,n,s){let i=n?"ClassDeclaration":"ClassExpression";this.next();let a=this.state.strict,o=this.parsePlaceholder("Identifier");if(o)if(this.match(81)||this.match(144)||this.match(5))r.id=o;else{if(s||!n)return r.id=null,r.body=this.finishPlaceholder(o,"ClassBody"),this.finishNode(r,i);throw this.raise(LS.ClassNameIsRequired,this.state.startLoc)}else this.parseClassId(r,n,s);return super.parseClassSuper(r),r.body=this.parsePlaceholder("ClassBody")||super.parseClassBody(!!r.superClass,a),this.finishNode(r,i)}parseExport(r,n){let s=this.parsePlaceholder("Identifier");if(!s)return super.parseExport(r,n);let i=r;if(!this.isContextual(98)&&!this.match(12))return i.specifiers=[],i.source=null,i.declaration=this.finishPlaceholder(s,"Declaration"),this.finishNode(i,"ExportNamedDeclaration");this.expectPlugin("exportDefaultFrom");let a=this.startNode();return a.exported=s,i.specifiers=[this.finishNode(a,"ExportDefaultSpecifier")],super.parseExport(i,n)}isExportDefaultSpecifier(){if(this.match(65)){let r=this.nextTokenStart();if(this.isUnparsedContextual(r,"from")&&this.input.startsWith(Vs(144),this.nextTokenStartSince(r+4)))return!0}return super.isExportDefaultSpecifier()}maybeParseExportDefaultSpecifier(r,n){var s;return(s=r.specifiers)!=null&&s.length?!0:super.maybeParseExportDefaultSpecifier(r,n)}checkExport(r){let{specifiers:n}=r;n!=null&&n.length&&(r.specifiers=n.filter(s=>s.exported.type==="Placeholder")),super.checkExport(r),r.specifiers=n}parseImport(r){let n=this.parsePlaceholder("Identifier");if(!n)return super.parseImport(r);if(r.specifiers=[],!this.isContextual(98)&&!this.match(12))return r.source=this.finishPlaceholder(n,"StringLiteral"),this.semicolon(),this.finishNode(r,"ImportDeclaration");let s=this.startNodeAtNode(n);return s.local=n,r.specifiers.push(this.finishNode(s,"ImportDefaultSpecifier")),this.eat(12)&&(this.maybeParseStarImportSpecifier(r)||this.parseNamedImportSpecifiers(r)),this.expectContextual(98),r.source=this.parseImportSource(),this.semicolon(),this.finishNode(r,"ImportDeclaration")}parseImportSource(){return this.parsePlaceholder("StringLiteral")||super.parseImportSource()}assertNoSpace(){this.state.start>this.state.lastTokEndLoc.index&&this.raise(LS.UnexpectedSpace,this.state.lastTokEndLoc)}},NX=e=>class extends e{parseV8Intrinsic(){if(this.match(54)){let r=this.state.startLoc,n=this.startNode();if(this.next(),ht(this.state.type)){let s=this.parseIdentifierName(),i=this.createIdentifier(n,s);if(i.type="V8IntrinsicIdentifier",this.match(10))return i}this.unexpected(r)}}parseExprAtom(r){return this.parseV8Intrinsic()||super.parseExprAtom(r)}},RS=["minimal","fsharp","hack","smart"],jS=["^^","@@","^","%","#"];function BX(e){if(e.has("decorators")){if(e.has("decorators-legacy"))throw new Error("Cannot use the decorators and decorators-legacy plugin together");let r=e.get("decorators").decoratorsBeforeExport;if(r!=null&&typeof r!="boolean")throw new Error("'decoratorsBeforeExport' must be a boolean, if specified.");let n=e.get("decorators").allowCallParenthesized;if(n!=null&&typeof n!="boolean")throw new Error("'allowCallParenthesized' must be a boolean.")}if(e.has("flow")&&e.has("typescript"))throw new Error("Cannot combine flow and typescript plugins.");if(e.has("placeholders")&&e.has("v8intrinsic"))throw new Error("Cannot combine placeholders and v8intrinsic plugins.");if(e.has("pipelineOperator")){var t;let r=e.get("pipelineOperator").proposal;if(!RS.includes(r)){let s=RS.map(i=>`"${i}"`).join(", ");throw new Error(`"pipelineOperator" requires "proposal" option whose value must be one of: ${s}.`)}let n=((t=e.get("recordAndTuple"))==null?void 0:t.syntaxType)==="hash";if(r==="hack"){if(e.has("placeholders"))throw new Error("Cannot combine placeholders plugin and Hack-style pipes.");if(e.has("v8intrinsic"))throw new Error("Cannot combine v8intrinsic plugin and Hack-style pipes.");let s=e.get("pipelineOperator").topicToken;if(!jS.includes(s)){let i=jS.map(a=>`"${a}"`).join(", ");throw new Error(`"pipelineOperator" in "proposal": "hack" mode also requires a "topicToken" option whose value must be one of: ${i}.`)}if(s==="#"&&n)throw new Error(`Plugin conflict between \`["pipelineOperator", { proposal: "hack", topicToken: "#" }]\` and \`${JSON.stringify(["recordAndTuple",e.get("recordAndTuple")])}\`.`)}else if(r==="smart"&&n)throw new Error(`Plugin conflict between \`["pipelineOperator", { proposal: "smart" }]\` and \`${JSON.stringify(["recordAndTuple",e.get("recordAndTuple")])}\`.`)}if(e.has("moduleAttributes")){if(e.has("importAttributes")||e.has("importAssertions"))throw new Error("Cannot combine importAssertions, importAttributes and moduleAttributes plugins.");if(e.get("moduleAttributes").version!=="may-2020")throw new Error("The 'moduleAttributes' plugin requires a 'version' option, representing the last proposal update. Currently, the only supported value is 'may-2020'.")}if(e.has("importAttributes")&&e.has("importAssertions"))throw new Error("Cannot combine importAssertions and importAttributes plugins.");if(e.has("recordAndTuple")){let r=e.get("recordAndTuple").syntaxType;if(r!=null){let n=["hash","bar"];if(!n.includes(r))throw new Error("The 'syntaxType' option of the 'recordAndTuple' plugin must be one of: "+n.map(s=>`'${s}'`).join(", "))}}if(e.has("asyncDoExpressions")&&!e.has("doExpressions")){let r=new Error("'asyncDoExpressions' requires 'doExpressions', please add 'doExpressions' to parser plugins.");throw r.missingPlugins="doExpressions",r}if(e.has("optionalChainingAssign")&&e.get("optionalChainingAssign").version!=="2023-07")throw new Error("The 'optionalChainingAssign' plugin requires a 'version' option, representing the last proposal update. Currently, the only supported value is '2023-07'.")}var ex={estree:kH,jsx:xX,flow:TX,typescript:wX,v8intrinsic:NX,placeholders:_X},FX=Object.keys(ex),wm={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};function kX(e){if(e==null)return Object.assign({},wm);if(e.annexB!=null&&e.annexB!==!1)throw new Error("The `annexB` option can only be set to `false`.");let t={};for(let n of Object.keys(wm)){var r;t[n]=(r=e[n])!=null?r:wm[n]}return t}var Xm=class extends Hm{checkProto(t,r,n,s){if(t.type==="SpreadElement"||this.isObjectMethod(t)||t.computed||t.shorthand)return;let i=t.key;if((i.type==="Identifier"?i.name:i.value)==="__proto__"){if(r){this.raise(I.RecordNoProto,i);return}n.used&&(s?s.doubleProtoLoc===null&&(s.doubleProtoLoc=i.loc.start):this.raise(I.DuplicateProto,i)),n.used=!0}}shouldExitDescending(t,r){return t.type==="ArrowFunctionExpression"&&t.start===r}getExpression(){this.enterInitialScopes(),this.nextToken();let t=this.parseExpression();return this.match(139)||this.unexpected(),this.finalizeRemainingComments(),t.comments=this.comments,t.errors=this.state.errors,this.options.tokens&&(t.tokens=this.tokens),t}parseExpression(t,r){return t?this.disallowInAnd(()=>this.parseExpressionBase(r)):this.allowInAnd(()=>this.parseExpressionBase(r))}parseExpressionBase(t){let r=this.state.startLoc,n=this.parseMaybeAssign(t);if(this.match(12)){let s=this.startNodeAt(r);for(s.expressions=[n];this.eat(12);)s.expressions.push(this.parseMaybeAssign(t));return this.toReferencedList(s.expressions),this.finishNode(s,"SequenceExpression")}return n}parseMaybeAssignDisallowIn(t,r){return this.disallowInAnd(()=>this.parseMaybeAssign(t,r))}parseMaybeAssignAllowIn(t,r){return this.allowInAnd(()=>this.parseMaybeAssign(t,r))}setOptionalParametersError(t,r){var n;t.optionalParametersLoc=(n=r?.loc)!=null?n:this.state.startLoc}parseMaybeAssign(t,r){let n=this.state.startLoc;if(this.isContextual(108)&&this.prodParam.hasYield){let o=this.parseYield();return r&&(o=r.call(this,o,n)),o}let s;t?s=!1:(t=new ga,s=!0);let{type:i}=this.state;(i===10||ht(i))&&(this.state.potentialArrowAt=this.state.start);let a=this.parseMaybeConditional(t);if(r&&(a=r.call(this,a,n)),qH(this.state.type)){let o=this.startNodeAt(n),l=this.state.value;if(o.operator=l,this.match(29)){this.toAssignable(a,!0),o.left=a;let u=n.index;t.doubleProtoLoc!=null&&t.doubleProtoLoc.index>=u&&(t.doubleProtoLoc=null),t.shorthandAssignLoc!=null&&t.shorthandAssignLoc.index>=u&&(t.shorthandAssignLoc=null),t.privateKeyLoc!=null&&t.privateKeyLoc.index>=u&&(this.checkDestructuringPrivate(t),t.privateKeyLoc=null)}else o.left=a;return this.next(),o.right=this.parseMaybeAssign(),this.checkLVal(a,this.finishNode(o,"AssignmentExpression")),o}else s&&this.checkExpressionErrors(t,!0);return a}parseMaybeConditional(t){let r=this.state.startLoc,n=this.state.potentialArrowAt,s=this.parseExprOps(t);return this.shouldExitDescending(s,n)?s:this.parseConditional(s,r,t)}parseConditional(t,r,n){if(this.eat(17)){let s=this.startNodeAt(r);return s.test=t,s.consequent=this.parseMaybeAssignAllowIn(),this.expect(14),s.alternate=this.parseMaybeAssign(),this.finishNode(s,"ConditionalExpression")}return t}parseMaybeUnaryOrPrivate(t){return this.match(138)?this.parsePrivateName():this.parseMaybeUnary(t)}parseExprOps(t){let r=this.state.startLoc,n=this.state.potentialArrowAt,s=this.parseMaybeUnaryOrPrivate(t);return this.shouldExitDescending(s,n)?s:this.parseExprOp(s,r,-1)}parseExprOp(t,r,n){if(this.isPrivateName(t)){let i=this.getPrivateNameSV(t);(n>=Wu(58)||!this.prodParam.hasIn||!this.match(58))&&this.raise(I.PrivateInExpectedIn,t,{identifierName:i}),this.classScope.usePrivateName(i,t.loc.start)}let s=this.state.type;if(VH(s)&&(this.prodParam.hasIn||!this.match(58))){let i=Wu(s);if(i>n){if(s===39){if(this.expectPlugin("pipelineOperator"),this.state.inFSharpPipelineDirectBody)return t;this.checkPipelineAtInfixOperator(t,r)}let a=this.startNodeAt(r);a.left=t,a.operator=this.state.value;let o=s===41||s===42,l=s===40;if(l&&(i=Wu(42)),this.next(),s===39&&this.hasPlugin(["pipelineOperator",{proposal:"minimal"}])&&this.state.type===96&&this.prodParam.hasAwait)throw this.raise(I.UnexpectedAwaitAfterPipelineBody,this.state.startLoc);a.right=this.parseExprOpRightExpr(s,i);let u=this.finishNode(a,o||l?"LogicalExpression":"BinaryExpression"),c=this.state.type;if(l&&(c===41||c===42)||o&&c===40)throw this.raise(I.MixingCoalesceWithLogical,this.state.startLoc);return this.parseExprOp(u,r,n)}}return t}parseExprOpRightExpr(t,r){let n=this.state.startLoc;switch(t){case 39: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(I.PipeBodyIsTighter,this.state.startLoc);return this.parseSmartPipelineBodyInStyle(this.parseExprOpBaseRightExpr(t,r),n)});case"fsharp":return this.withSoloAwaitPermittingContext(()=>this.parseFSharpPipelineBody(r))}default:return this.parseExprOpBaseRightExpr(t,r)}}parseExprOpBaseRightExpr(t,r){let n=this.state.startLoc;return this.parseExprOp(this.parseMaybeUnaryOrPrivate(),n,HH(t)?r-1:r)}parseHackPipeBody(){var t;let{startLoc:r}=this.state,n=this.parseMaybeAssign();return OH.has(n.type)&&!((t=n.extra)!=null&&t.parenthesized)&&this.raise(I.PipeUnparenthesizedBody,r,{type:n.type}),this.topicReferenceWasUsedInCurrentContext()||this.raise(I.PipeTopicUnused,r),n}checkExponentialAfterUnary(t){this.match(57)&&this.raise(I.UnexpectedTokenUnaryExponentiation,t.argument)}parseMaybeUnary(t,r){let n=this.state.startLoc,s=this.isContextual(96);if(s&&this.recordAwaitIfAllowed()){this.next();let l=this.parseAwait(n);return r||this.checkExponentialAfterUnary(l),l}let i=this.match(34),a=this.startNode();if(WH(this.state.type)){a.operator=this.state.value,a.prefix=!0,this.match(72)&&this.expectPlugin("throwExpressions");let l=this.match(89);if(this.next(),a.argument=this.parseMaybeUnary(null,!0),this.checkExpressionErrors(t,!0),this.state.strict&&l){let u=a.argument;u.type==="Identifier"?this.raise(I.StrictDelete,a):this.hasPropertyAsPrivateName(u)&&this.raise(I.DeletePrivateField,a)}if(!i)return r||this.checkExponentialAfterUnary(a),this.finishNode(a,"UnaryExpression")}let o=this.parseUpdate(a,i,t);if(s){let{type:l}=this.state;if((this.hasPlugin("v8intrinsic")?Om(l):Om(l)&&!this.match(54))&&!this.isAmbiguousAwait())return this.raiseOverwrite(I.AwaitNotInAsyncContext,n),this.parseAwait(n)}return o}parseUpdate(t,r,n){if(r){let a=t;return this.checkLVal(a.argument,this.finishNode(a,"UpdateExpression")),t}let s=this.state.startLoc,i=this.parseExprSubscripts(n);if(this.checkExpressionErrors(n,!1))return i;for(;$H(this.state.type)&&!this.canInsertSemicolon();){let a=this.startNodeAt(s);a.operator=this.state.value,a.prefix=!1,a.argument=i,this.next(),this.checkLVal(i,i=this.finishNode(a,"UpdateExpression"))}return i}parseExprSubscripts(t){let r=this.state.startLoc,n=this.state.potentialArrowAt,s=this.parseExprAtom(t);return this.shouldExitDescending(s,n)?s:this.parseSubscripts(s,r)}parseSubscripts(t,r,n){let s={optionalChainMember:!1,maybeAsyncArrow:this.atPossibleAsyncArrow(t),stop:!1};do t=this.parseSubscript(t,r,n,s),s.maybeAsyncArrow=!1;while(!s.stop);return t}parseSubscript(t,r,n,s){let{type:i}=this.state;if(!n&&i===15)return this.parseBind(t,r,n,s);if(Hu(i))return this.parseTaggedTemplateExpression(t,r,s);let a=!1;if(i===18){if(n&&(this.raise(I.OptionalChainingNoNew,this.state.startLoc),this.lookaheadCharCode()===40))return s.stop=!0,t;s.optionalChainMember=a=!0,this.next()}if(!n&&this.match(10))return this.parseCoverCallAndAsyncArrowHead(t,r,s,a);{let o=this.eat(0);return o||a||this.eat(16)?this.parseMember(t,r,s,o,a):(s.stop=!0,t)}}parseMember(t,r,n,s,i){let a=this.startNodeAt(r);return a.object=t,a.computed=s,s?(a.property=this.parseExpression(),this.expect(3)):this.match(138)?(t.type==="Super"&&this.raise(I.SuperPrivateField,r),this.classScope.usePrivateName(this.state.value,this.state.startLoc),a.property=this.parsePrivateName()):a.property=this.parseIdentifier(!0),n.optionalChainMember?(a.optional=i,this.finishNode(a,"OptionalMemberExpression")):this.finishNode(a,"MemberExpression")}parseBind(t,r,n,s){let i=this.startNodeAt(r);return i.object=t,this.next(),i.callee=this.parseNoCallExpr(),s.stop=!0,this.parseSubscripts(this.finishNode(i,"BindExpression"),r,n)}parseCoverCallAndAsyncArrowHead(t,r,n,s){let i=this.state.maybeInArrowParameters,a=null;this.state.maybeInArrowParameters=!0,this.next();let o=this.startNodeAt(r);o.callee=t;let{maybeAsyncArrow:l,optionalChainMember:u}=n;l&&(this.expressionScope.enter(dX()),a=new ga),u&&(o.optional=s),s?o.arguments=this.parseCallExpressionArguments(11):o.arguments=this.parseCallExpressionArguments(11,t.type==="Import",t.type!=="Super",o,a);let c=this.finishCallExpression(o,u);return l&&this.shouldParseAsyncArrow()&&!s?(n.stop=!0,this.checkDestructuringPrivate(a),this.expressionScope.validateAsPattern(),this.expressionScope.exit(),c=this.parseAsyncArrowFromCallExpression(this.startNodeAt(r),c)):(l&&(this.checkExpressionErrors(a,!0),this.expressionScope.exit()),this.toReferencedArguments(c)),this.state.maybeInArrowParameters=i,c}toReferencedArguments(t,r){this.toReferencedListDeep(t.arguments,r)}parseTaggedTemplateExpression(t,r,n){let s=this.startNodeAt(r);return s.tag=t,s.quasi=this.parseTemplate(!0),n.optionalChainMember&&this.raise(I.OptionalChainingNoTemplate,r),this.finishNode(s,"TaggedTemplateExpression")}atPossibleAsyncArrow(t){return t.type==="Identifier"&&t.name==="async"&&this.state.lastTokEndLoc.index===t.end&&!this.canInsertSemicolon()&&t.end-t.start===5&&t.start===this.state.potentialArrowAt}expectImportAttributesPlugin(){this.hasPlugin("importAssertions")||this.expectPlugin("importAttributes")}finishCallExpression(t,r){if(t.callee.type==="Import")if(t.arguments.length===2&&(this.hasPlugin("moduleAttributes")||this.expectImportAttributesPlugin()),t.arguments.length===0||t.arguments.length>2)this.raise(I.ImportCallArity,t,{maxArgumentCount:this.hasPlugin("importAttributes")||this.hasPlugin("importAssertions")||this.hasPlugin("moduleAttributes")?2:1});else for(let n of t.arguments)n.type==="SpreadElement"&&this.raise(I.ImportCallSpreadArgument,n);return this.finishNode(t,r?"OptionalCallExpression":"CallExpression")}parseCallExpressionArguments(t,r,n,s,i){let a=[],o=!0,l=this.state.inFSharpPipelineDirectBody;for(this.state.inFSharpPipelineDirectBody=!1;!this.eat(t);){if(o)o=!1;else if(this.expect(12),this.match(t)){r&&!this.hasPlugin("importAttributes")&&!this.hasPlugin("importAssertions")&&!this.hasPlugin("moduleAttributes")&&this.raise(I.ImportCallArgumentTrailingComma,this.state.lastTokStartLoc),s&&this.addTrailingCommaExtraToNode(s),this.next();break}a.push(this.parseExprListItem(!1,i,n))}return this.state.inFSharpPipelineDirectBody=l,a}shouldParseAsyncArrow(){return this.match(19)&&!this.canInsertSemicolon()}parseAsyncArrowFromCallExpression(t,r){var n;return this.resetPreviousNodeTrailingComments(r),this.expect(19),this.parseArrowExpression(t,r.arguments,!0,(n=r.extra)==null?void 0:n.trailingCommaLoc),r.innerComments&&Xo(t,r.innerComments),r.callee.trailingComments&&Xo(t,r.callee.trailingComments),t}parseNoCallExpr(){let t=this.state.startLoc;return this.parseSubscripts(this.parseExprAtom(),t,!0)}parseExprAtom(t){let r,n=null,{type:s}=this.state;switch(s){case 79:return this.parseSuper();case 83:return r=this.startNode(),this.next(),this.match(16)?this.parseImportMetaProperty(r):this.match(10)?this.options.createImportExpressions?this.parseImportCall(r):this.finishNode(r,"Import"):(this.raise(I.UnsupportedImport,this.state.lastTokStartLoc),this.finishNode(r,"Import"));case 78:return r=this.startNode(),this.next(),this.finishNode(r,"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 i=this.state.potentialArrowAt===this.state.start;return this.parseParenAndDistinguishExpression(i)}case 2:case 1:return this.parseArrayLike(this.state.type===2?4:3,!1,!0);case 0:return this.parseArrayLike(3,!0,!1,t);case 6:case 7:return this.parseObjectLike(this.state.type===6?9:8,!1,!0);case 5:return this.parseObjectLike(8,!1,!1,t);case 68:return this.parseFunctionOrFunctionSent();case 26:n=this.parseDecorators();case 80:return this.parseClass(this.maybeTakeDecorators(n,this.startNode()),!1);case 77:return this.parseNewOrNewTarget();case 25:case 24:return this.parseTemplate(!1);case 15:{r=this.startNode(),this.next(),r.object=null;let i=r.callee=this.parseNoCallExpr();if(i.type==="MemberExpression")return this.finishNode(r,"BindExpression");throw this.raise(I.UnsupportedBind,i)}case 138:return this.raise(I.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 i=this.getPluginOption("pipelineOperator","proposal");if(i)return this.parseTopicReference(i);this.unexpected();break}case 47:{let i=this.input.codePointAt(this.nextTokenStart());ls(i)||i===62?this.expectOnePlugin(["jsx","flow","typescript"]):this.unexpected();break}default:if(ht(s)){if(this.isContextual(127)&&this.lookaheadInLineCharCode()===123)return this.parseModuleExpression();let i=this.state.potentialArrowAt===this.state.start,a=this.state.containsEsc,o=this.parseIdentifier();if(!a&&o.name==="async"&&!this.canInsertSemicolon()){let{type:l}=this.state;if(l===68)return this.resetPreviousNodeTrailingComments(o),this.next(),this.parseAsyncFunctionExpression(this.startNodeAtNode(o));if(ht(l))return this.lookaheadCharCode()===61?this.parseAsyncArrowUnaryFunction(this.startNodeAtNode(o)):o;if(l===90)return this.resetPreviousNodeTrailingComments(o),this.parseDo(this.startNodeAtNode(o),!0)}return i&&this.match(19)&&!this.canInsertSemicolon()?(this.next(),this.parseArrowExpression(this.startNodeAtNode(o),[o],!1)):o}else this.unexpected()}}parseTopicReferenceThenEqualsSign(t,r){let n=this.getPluginOption("pipelineOperator","proposal");if(n)return this.state.type=t,this.state.value=r,this.state.pos--,this.state.end--,this.state.endLoc=Br(this.state.endLoc,-1),this.parseTopicReference(n);this.unexpected()}parseTopicReference(t){let r=this.startNode(),n=this.state.startLoc,s=this.state.type;return this.next(),this.finishTopicReference(r,n,t,s)}finishTopicReference(t,r,n,s){if(this.testTopicReferenceConfiguration(n,r,s)){let i=n==="smart"?"PipelinePrimaryTopicReference":"TopicReference";return this.topicReferenceIsAllowedInCurrentContext()||this.raise(n==="smart"?I.PrimaryTopicNotAllowed:I.PipeTopicUnbound,r),this.registerTopicReference(),this.finishNode(t,i)}else throw this.raise(I.PipeTopicUnconfiguredToken,r,{token:Vs(s)})}testTopicReferenceConfiguration(t,r,n){switch(t){case"hack":return this.hasPlugin(["pipelineOperator",{topicToken:Vs(n)}]);case"smart":return n===27;default:throw this.raise(I.PipeTopicRequiresHackPipes,r)}}parseAsyncArrowUnaryFunction(t){this.prodParam.enter(Ku(!0,this.prodParam.hasYield));let r=[this.parseIdentifier()];return this.prodParam.exit(),this.hasPrecedingLineBreak()&&this.raise(I.LineTerminatorBeforeArrow,this.state.curPosition()),this.expect(19),this.parseArrowExpression(t,r,!0)}parseDo(t,r){this.expectPlugin("doExpressions"),r&&this.expectPlugin("asyncDoExpressions"),t.async=r,this.next();let n=this.state.labels;return this.state.labels=[],r?(this.prodParam.enter(2),t.body=this.parseBlock(),this.prodParam.exit()):t.body=this.parseBlock(),this.state.labels=n,this.finishNode(t,"DoExpression")}parseSuper(){let t=this.startNode();return this.next(),this.match(10)&&!this.scope.allowDirectSuper&&!this.options.allowSuperOutsideMethod?this.raise(I.SuperNotAllowed,t):!this.scope.allowSuper&&!this.options.allowSuperOutsideMethod&&this.raise(I.UnexpectedSuper,t),!this.match(10)&&!this.match(0)&&!this.match(16)&&this.raise(I.UnsupportedSuper,t),this.finishNode(t,"Super")}parsePrivateName(){let t=this.startNode(),r=this.startNodeAt(Br(this.state.startLoc,1)),n=this.state.value;return this.next(),t.id=this.createIdentifier(r,n),this.finishNode(t,"PrivateName")}parseFunctionOrFunctionSent(){let t=this.startNode();if(this.next(),this.prodParam.hasYield&&this.match(16)){let r=this.createIdentifier(this.startNodeAtNode(t),"function");return this.next(),this.match(103)?this.expectPlugin("functionSent"):this.hasPlugin("functionSent")||this.unexpected(),this.parseMetaProperty(t,r,"sent")}return this.parseFunction(t)}parseMetaProperty(t,r,n){t.meta=r;let s=this.state.containsEsc;return t.property=this.parseIdentifier(!0),(t.property.name!==n||s)&&this.raise(I.UnsupportedMetaProperty,t.property,{target:r.name,onlyValidPropertyName:n}),this.finishNode(t,"MetaProperty")}parseImportMetaProperty(t){let r=this.createIdentifier(this.startNodeAtNode(t),"import");if(this.next(),this.isContextual(101))this.inModule||this.raise(I.ImportMetaOutsideModule,r),this.sawUnambiguousESM=!0;else if(this.isContextual(105)||this.isContextual(97)){let n=this.isContextual(105);if(n||this.unexpected(),this.expectPlugin(n?"sourcePhaseImports":"deferredImportEvaluation"),!this.options.createImportExpressions)throw this.raise(I.DynamicImportPhaseRequiresImportExpressions,this.state.startLoc,{phase:this.state.value});return this.next(),t.phase=n?"source":"defer",this.parseImportCall(t)}return this.parseMetaProperty(t,r,"meta")}parseLiteralAtNode(t,r,n){return this.addExtra(n,"rawValue",t),this.addExtra(n,"raw",this.input.slice(n.start,this.state.end)),n.value=t,this.next(),this.finishNode(n,r)}parseLiteral(t,r){let n=this.startNode();return this.parseLiteralAtNode(t,r,n)}parseStringLiteral(t){return this.parseLiteral(t,"StringLiteral")}parseNumericLiteral(t){return this.parseLiteral(t,"NumericLiteral")}parseBigIntLiteral(t){return this.parseLiteral(t,"BigIntLiteral")}parseDecimalLiteral(t){return this.parseLiteral(t,"DecimalLiteral")}parseRegExpLiteral(t){let r=this.startNode();return this.addExtra(r,"raw",this.input.slice(r.start,this.state.end)),r.pattern=t.pattern,r.flags=t.flags,this.next(),this.finishNode(r,"RegExpLiteral")}parseBooleanLiteral(t){let r=this.startNode();return r.value=t,this.next(),this.finishNode(r,"BooleanLiteral")}parseNullLiteral(){let t=this.startNode();return this.next(),this.finishNode(t,"NullLiteral")}parseParenAndDistinguishExpression(t){let r=this.state.startLoc,n;this.next(),this.expressionScope.enter(pX());let s=this.state.maybeInArrowParameters,i=this.state.inFSharpPipelineDirectBody;this.state.maybeInArrowParameters=!0,this.state.inFSharpPipelineDirectBody=!1;let a=this.state.startLoc,o=[],l=new ga,u=!0,c,f;for(;!this.match(11);){if(u)u=!1;else if(this.expect(12,l.optionalParametersLoc===null?null:l.optionalParametersLoc),this.match(11)){f=this.state.startLoc;break}if(this.match(21)){let b=this.state.startLoc;if(c=this.state.startLoc,o.push(this.parseParenItem(this.parseRestBinding(),b)),!this.checkCommaAfterRest(41))break}else o.push(this.parseMaybeAssignAllowIn(l,this.parseParenItem))}let p=this.state.lastTokEndLoc;this.expect(11),this.state.maybeInArrowParameters=s,this.state.inFSharpPipelineDirectBody=i;let h=this.startNodeAt(r);return t&&this.shouldParseArrow(o)&&(h=this.parseArrow(h))?(this.checkDestructuringPrivate(l),this.expressionScope.validateAsPattern(),this.expressionScope.exit(),this.parseArrowExpression(h,o,!1),h):(this.expressionScope.exit(),o.length||this.unexpected(this.state.lastTokStartLoc),f&&this.unexpected(f),c&&this.unexpected(c),this.checkExpressionErrors(l,!0),this.toReferencedListDeep(o,!0),o.length>1?(n=this.startNodeAt(a),n.expressions=o,this.finishNode(n,"SequenceExpression"),this.resetEndLocation(n,p)):n=o[0],this.wrapParenthesis(r,n))}wrapParenthesis(t,r){if(!this.options.createParenthesizedExpressions)return this.addExtra(r,"parenthesized",!0),this.addExtra(r,"parenStart",t.index),this.takeSurroundingComments(r,t.index,this.state.lastTokEndLoc.index),r;let n=this.startNodeAt(t);return n.expression=r,this.finishNode(n,"ParenthesizedExpression")}shouldParseArrow(t){return!this.canInsertSemicolon()}parseArrow(t){if(this.eat(19))return t}parseParenItem(t,r){return t}parseNewOrNewTarget(){let t=this.startNode();if(this.next(),this.match(16)){let r=this.createIdentifier(this.startNodeAtNode(t),"new");this.next();let n=this.parseMetaProperty(t,r,"target");return!this.scope.inNonArrowFunction&&!this.scope.inClass&&!this.options.allowNewTargetOutsideFunction&&this.raise(I.UnexpectedNewTarget,n),n}return this.parseNew(t)}parseNew(t){if(this.parseNewCallee(t),this.eat(10)){let r=this.parseExprList(11);this.toReferencedList(r),t.arguments=r}else t.arguments=[];return this.finishNode(t,"NewExpression")}parseNewCallee(t){let r=this.match(83),n=this.parseNoCallExpr();t.callee=n,r&&(n.type==="Import"||n.type==="ImportExpression")&&this.raise(I.ImportCallNotNewExpression,n)}parseTemplateElement(t){let{start:r,startLoc:n,end:s,value:i}=this.state,a=r+1,o=this.startNodeAt(Br(n,1));i===null&&(t||this.raise(I.InvalidEscapeSequenceTemplate,Br(this.state.firstInvalidTemplateEscapePos,1)));let l=this.match(24),u=l?-1:-2,c=s+u;o.value={raw:this.input.slice(a,c).replace(/\r\n?/g,`
|
|
20
|
-
`),cooked:i===null?null:i.slice(1,u)},o.tail=l,this.next();let f=this.finishNode(o,"TemplateElement");return this.resetEndLocation(f,Br(this.state.lastTokEndLoc,u)),f}parseTemplate(t){let r=this.startNode(),n=this.parseTemplateElement(t),s=[n],i=[];for(;!n.tail;)i.push(this.parseTemplateSubstitution()),this.readTemplateContinuation(),s.push(n=this.parseTemplateElement(t));return r.expressions=i,r.quasis=s,this.finishNode(r,"TemplateLiteral")}parseTemplateSubstitution(){return this.parseExpression()}parseObjectLike(t,r,n,s){n&&this.expectPlugin("recordAndTuple");let i=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!1;let a=Object.create(null),o=!0,l=this.startNode();for(l.properties=[],this.next();!this.match(t);){if(o)o=!1;else if(this.expect(12),this.match(t)){this.addTrailingCommaExtraToNode(l);break}let c;r?c=this.parseBindingProperty():(c=this.parsePropertyDefinition(s),this.checkProto(c,n,a,s)),n&&!this.isObjectProperty(c)&&c.type!=="SpreadElement"&&this.raise(I.InvalidRecordProperty,c),c.shorthand&&this.addExtra(c,"shorthand",!0),l.properties.push(c)}this.next(),this.state.inFSharpPipelineDirectBody=i;let u="ObjectExpression";return r?u="ObjectPattern":n&&(u="RecordExpression"),this.finishNode(l,u)}addTrailingCommaExtraToNode(t){this.addExtra(t,"trailingComma",this.state.lastTokStartLoc.index),this.addExtra(t,"trailingCommaLoc",this.state.lastTokStartLoc,!1)}maybeAsyncOrAccessorProp(t){return!t.computed&&t.key.type==="Identifier"&&(this.isLiteralPropertyName()||this.match(0)||this.match(55))}parsePropertyDefinition(t){let r=[];if(this.match(26))for(this.hasPlugin("decorators")&&this.raise(I.UnsupportedPropertyDecorator,this.state.startLoc);this.match(26);)r.push(this.parseDecorator());let n=this.startNode(),s=!1,i=!1,a;if(this.match(21))return r.length&&this.unexpected(),this.parseSpread();r.length&&(n.decorators=r,r=[]),n.method=!1,t&&(a=this.state.startLoc);let o=this.eat(55);this.parsePropertyNamePrefixOperator(n);let l=this.state.containsEsc;if(this.parsePropertyName(n,t),!o&&!l&&this.maybeAsyncOrAccessorProp(n)){let{key:u}=n,c=u.name;c==="async"&&!this.hasPrecedingLineBreak()&&(s=!0,this.resetPreviousNodeTrailingComments(u),o=this.eat(55),this.parsePropertyName(n)),(c==="get"||c==="set")&&(i=!0,this.resetPreviousNodeTrailingComments(u),n.kind=c,this.match(55)&&(o=!0,this.raise(I.AccessorIsGenerator,this.state.curPosition(),{kind:c}),this.next()),this.parsePropertyName(n))}return this.parseObjPropValue(n,a,o,s,!1,i,t)}getGetterSetterExpectedParamCount(t){return t.kind==="get"?0:1}getObjectOrClassMethodParams(t){return t.params}checkGetterSetterParams(t){var r;let n=this.getGetterSetterExpectedParamCount(t),s=this.getObjectOrClassMethodParams(t);s.length!==n&&this.raise(t.kind==="get"?I.BadGetterArity:I.BadSetterArity,t),t.kind==="set"&&((r=s[s.length-1])==null?void 0:r.type)==="RestElement"&&this.raise(I.BadSetterRestParameter,t)}parseObjectMethod(t,r,n,s,i){if(i){let a=this.parseMethod(t,r,!1,!1,!1,"ObjectMethod");return this.checkGetterSetterParams(a),a}if(n||r||this.match(10))return s&&this.unexpected(),t.kind="method",t.method=!0,this.parseMethod(t,r,n,!1,!1,"ObjectMethod")}parseObjectProperty(t,r,n,s){if(t.shorthand=!1,this.eat(14))return t.value=n?this.parseMaybeDefault(this.state.startLoc):this.parseMaybeAssignAllowIn(s),this.finishNode(t,"ObjectProperty");if(!t.computed&&t.key.type==="Identifier"){if(this.checkReservedWord(t.key.name,t.key.loc.start,!0,!1),n)t.value=this.parseMaybeDefault(r,cs(t.key));else if(this.match(29)){let i=this.state.startLoc;s!=null?s.shorthandAssignLoc===null&&(s.shorthandAssignLoc=i):this.raise(I.InvalidCoverInitializedName,i),t.value=this.parseMaybeDefault(r,cs(t.key))}else t.value=cs(t.key);return t.shorthand=!0,this.finishNode(t,"ObjectProperty")}}parseObjPropValue(t,r,n,s,i,a,o){let l=this.parseObjectMethod(t,n,s,i,a)||this.parseObjectProperty(t,r,i,o);return l||this.unexpected(),l}parsePropertyName(t,r){if(this.eat(0))t.computed=!0,t.key=this.parseMaybeAssignAllowIn(),this.expect(3);else{let{type:n,value:s}=this.state,i;if(xn(n))i=this.parseIdentifier(!0);else switch(n){case 134:i=this.parseNumericLiteral(s);break;case 133:i=this.parseStringLiteral(s);break;case 135:i=this.parseBigIntLiteral(s);break;case 136:i=this.parseDecimalLiteral(s);break;case 138:{let a=this.state.startLoc;r!=null?r.privateKeyLoc===null&&(r.privateKeyLoc=a):this.raise(I.UnexpectedPrivateField,a),i=this.parsePrivateName();break}default:this.unexpected()}t.key=i,n!==138&&(t.computed=!1)}}initFunction(t,r){t.id=null,t.generator=!1,t.async=r}parseMethod(t,r,n,s,i,a,o=!1){this.initFunction(t,n),t.generator=r,this.scope.enter(18|(o?64:0)|(i?32:0)),this.prodParam.enter(Ku(n,t.generator)),this.parseFunctionParams(t,s);let l=this.parseFunctionBodyAndFinish(t,a,!0);return this.prodParam.exit(),this.scope.exit(),l}parseArrayLike(t,r,n,s){n&&this.expectPlugin("recordAndTuple");let i=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!1;let a=this.startNode();return this.next(),a.elements=this.parseExprList(t,!n,s,a),this.state.inFSharpPipelineDirectBody=i,this.finishNode(a,n?"TupleExpression":"ArrayExpression")}parseArrowExpression(t,r,n,s){this.scope.enter(6);let i=Ku(n,!1);!this.match(5)&&this.prodParam.hasIn&&(i|=8),this.prodParam.enter(i),this.initFunction(t,n);let a=this.state.maybeInArrowParameters;return r&&(this.state.maybeInArrowParameters=!0,this.setArrowFunctionParameters(t,r,s)),this.state.maybeInArrowParameters=!1,this.parseFunctionBody(t,!0),this.prodParam.exit(),this.scope.exit(),this.state.maybeInArrowParameters=a,this.finishNode(t,"ArrowFunctionExpression")}setArrowFunctionParameters(t,r,n){this.toAssignableList(r,n,!1),t.params=r}parseFunctionBodyAndFinish(t,r,n=!1){return this.parseFunctionBody(t,!1,n),this.finishNode(t,r)}parseFunctionBody(t,r,n=!1){let s=r&&!this.match(5);if(this.expressionScope.enter(JS()),s)t.body=this.parseMaybeAssign(),this.checkParams(t,!1,r,!1);else{let i=this.state.strict,a=this.state.labels;this.state.labels=[],this.prodParam.enter(this.prodParam.currentFlags()|4),t.body=this.parseBlock(!0,!1,o=>{let l=!this.isSimpleParamList(t.params);o&&l&&this.raise(I.IllegalLanguageModeDirective,(t.kind==="method"||t.kind==="constructor")&&t.key?t.key.loc.end:t);let u=!i&&this.state.strict;this.checkParams(t,!this.state.strict&&!r&&!n&&!l,r,u),this.state.strict&&t.id&&this.checkIdentifier(t.id,65,u)}),this.prodParam.exit(),this.state.labels=a}this.expressionScope.exit()}isSimpleParameter(t){return t.type==="Identifier"}isSimpleParamList(t){for(let r=0,n=t.length;r<n;r++)if(!this.isSimpleParameter(t[r]))return!1;return!0}checkParams(t,r,n,s=!0){let i=!r&&new Set,a={type:"FormalParameters"};for(let o of t.params)this.checkLVal(o,a,5,i,s)}parseExprList(t,r,n,s){let i=[],a=!0;for(;!this.eat(t);){if(a)a=!1;else if(this.expect(12),this.match(t)){s&&this.addTrailingCommaExtraToNode(s),this.next();break}i.push(this.parseExprListItem(r,n))}return i}parseExprListItem(t,r,n){let s;if(this.match(12))t||this.raise(I.UnexpectedToken,this.state.curPosition(),{unexpected:","}),s=null;else if(this.match(21)){let i=this.state.startLoc;s=this.parseParenItem(this.parseSpread(r),i)}else if(this.match(17)){this.expectPlugin("partialApplication"),n||this.raise(I.UnexpectedArgumentPlaceholder,this.state.startLoc);let i=this.startNode();this.next(),s=this.finishNode(i,"ArgumentPlaceholder")}else s=this.parseMaybeAssignAllowIn(r,this.parseParenItem);return s}parseIdentifier(t){let r=this.startNode(),n=this.parseIdentifierName(t);return this.createIdentifier(r,n)}createIdentifier(t,r){return t.name=r,t.loc.identifierName=r,this.finishNode(t,"Identifier")}parseIdentifierName(t){let r,{startLoc:n,type:s}=this.state;xn(s)?r=this.state.value:this.unexpected();let i=jH(s);return t?i&&this.replaceToken(132):this.checkReservedWord(r,n,i,!1),this.next(),r}checkReservedWord(t,r,n,s){if(t.length>10||!nX(t))return;if(n&&eX(t)){this.raise(I.UnexpectedKeyword,r,{keyword:t});return}if((this.state.strict?s?GS:WS:$S)(t,this.inModule)){this.raise(I.UnexpectedReservedWord,r,{reservedWord:t});return}else if(t==="yield"){if(this.prodParam.hasYield){this.raise(I.YieldBindingIdentifier,r);return}}else if(t==="await"){if(this.prodParam.hasAwait){this.raise(I.AwaitBindingIdentifier,r);return}if(this.scope.inStaticBlock){this.raise(I.AwaitBindingIdentifierInStaticBlock,r);return}this.expressionScope.recordAsyncArrowParametersError(r)}else if(t==="arguments"&&this.scope.inClassAndNotInNonArrowFunction){this.raise(I.ArgumentsInClass,r);return}}recordAwaitIfAllowed(){let t=this.prodParam.hasAwait||this.options.allowAwaitOutsideFunction&&!this.scope.inFunction;return t&&!this.scope.inFunction&&(this.state.hasTopLevelAwait=!0),t}parseAwait(t){let r=this.startNodeAt(t);return this.expressionScope.recordParameterInitializerError(I.AwaitExpressionFormalParameter,r),this.eat(55)&&this.raise(I.ObsoleteAwaitStar,r),!this.scope.inFunction&&!this.options.allowAwaitOutsideFunction&&(this.isAmbiguousAwait()?this.ambiguousScriptDifferentAst=!0:this.sawUnambiguousESM=!0),this.state.soloAwait||(r.argument=this.parseMaybeUnary(null,!0)),this.finishNode(r,"AwaitExpression")}isAmbiguousAwait(){if(this.hasPrecedingLineBreak())return!0;let{type:t}=this.state;return t===53||t===10||t===0||Hu(t)||t===102&&!this.state.containsEsc||t===137||t===56||this.hasPlugin("v8intrinsic")&&t===54}parseYield(){let t=this.startNode();this.expressionScope.recordParameterInitializerError(I.YieldInParameter,t),this.next();let r=!1,n=null;if(!this.hasPrecedingLineBreak())switch(r=this.eat(55),this.state.type){case 13:case 139:case 8:case 11:case 3:case 9:case 14:case 12:if(!r)break;default:n=this.parseMaybeAssign()}return t.delegate=r,t.argument=n,this.finishNode(t,"YieldExpression")}parseImportCall(t){return this.next(),t.source=this.parseMaybeAssignAllowIn(),(this.hasPlugin("importAttributes")||this.hasPlugin("importAssertions"))&&(t.options=null),this.eat(12)&&(this.expectImportAttributesPlugin(),this.match(11)||(t.options=this.parseMaybeAssignAllowIn(),this.eat(12))),this.expect(11),this.finishNode(t,"ImportExpression")}checkPipelineAtInfixOperator(t,r){this.hasPlugin(["pipelineOperator",{proposal:"smart"}])&&t.type==="SequenceExpression"&&this.raise(I.PipelineHeadSequenceExpression,r)}parseSmartPipelineBodyInStyle(t,r){if(this.isSimpleReference(t)){let n=this.startNodeAt(r);return n.callee=t,this.finishNode(n,"PipelineBareFunction")}else{let n=this.startNodeAt(r);return this.checkSmartPipeTopicBodyEarlyErrors(r),n.expression=t,this.finishNode(n,"PipelineTopicExpression")}}isSimpleReference(t){switch(t.type){case"MemberExpression":return!t.computed&&this.isSimpleReference(t.object);case"Identifier":return!0;default:return!1}}checkSmartPipeTopicBodyEarlyErrors(t){if(this.match(19))throw this.raise(I.PipelineBodyNoArrow,this.state.startLoc);this.topicReferenceWasUsedInCurrentContext()||this.raise(I.PipelineTopicUnused,t)}withTopicBindingContext(t){let r=this.state.topicContext;this.state.topicContext={maxNumOfResolvableTopics:1,maxTopicIndex:null};try{return t()}finally{this.state.topicContext=r}}withSmartMixTopicForbiddingContext(t){if(this.hasPlugin(["pipelineOperator",{proposal:"smart"}])){let r=this.state.topicContext;this.state.topicContext={maxNumOfResolvableTopics:0,maxTopicIndex:null};try{return t()}finally{this.state.topicContext=r}}else return t()}withSoloAwaitPermittingContext(t){let r=this.state.soloAwait;this.state.soloAwait=!0;try{return t()}finally{this.state.soloAwait=r}}allowInAnd(t){let r=this.prodParam.currentFlags();if(8&~r){this.prodParam.enter(r|8);try{return t()}finally{this.prodParam.exit()}}return t()}disallowInAnd(t){let r=this.prodParam.currentFlags();if(8&r){this.prodParam.enter(r&-9);try{return t()}finally{this.prodParam.exit()}}return t()}registerTopicReference(){this.state.topicContext.maxTopicIndex=0}topicReferenceIsAllowedInCurrentContext(){return this.state.topicContext.maxNumOfResolvableTopics>=1}topicReferenceWasUsedInCurrentContext(){return this.state.topicContext.maxTopicIndex!=null&&this.state.topicContext.maxTopicIndex>=0}parseFSharpPipelineBody(t){let r=this.state.startLoc;this.state.potentialArrowAt=this.state.start;let n=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!0;let s=this.parseExprOp(this.parseMaybeUnaryOrPrivate(),r,t);return this.state.inFSharpPipelineDirectBody=n,s}parseModuleExpression(){this.expectPlugin("moduleBlocks");let t=this.startNode();this.next(),this.match(5)||this.unexpected(null,5);let r=this.startNodeAt(this.state.endLoc);this.next();let n=this.initializeScopes(!0);this.enterInitialScopes();try{t.body=this.parseProgram(r,8,"module")}finally{n()}return this.finishNode(t,"ModuleExpression")}parsePropertyNamePrefixOperator(t){}},Dm={kind:1},LX={kind:2},RX=/[\uD800-\uDFFF]/u,Im=/in(?:stanceof)?/y;function jX(e,t){for(let r=0;r<e.length;r++){let n=e[r],{type:s}=n;if(typeof s=="number"){{if(s===138){let{loc:i,start:a,value:o,end:l}=n,u=a+1,c=Br(i.start,1);e.splice(r,1,new qn({type:as(27),value:"#",start:a,end:u,startLoc:i.start,endLoc:c}),new qn({type:as(132),value:o,start:u,end:l,startLoc:c,endLoc:i.end})),r++;continue}if(Hu(s)){let{loc:i,start:a,value:o,end:l}=n,u=a+1,c=Br(i.start,1),f;t.charCodeAt(a)===96?f=new qn({type:as(22),value:"`",start:a,end:u,startLoc:i.start,endLoc:c}):f=new qn({type:as(8),value:"}",start:a,end:u,startLoc:i.start,endLoc:c});let p,h,b,d;s===24?(h=l-1,b=Br(i.end,-1),p=o===null?null:o.slice(1,-1),d=new qn({type:as(22),value:"`",start:h,end:l,startLoc:b,endLoc:i.end})):(h=l-2,b=Br(i.end,-2),p=o===null?null:o.slice(1,-2),d=new qn({type:as(23),value:"${",start:h,end:l,startLoc:b,endLoc:i.end})),e.splice(r,1,f,new qn({type:as(20),value:p,start:u,end:h,startLoc:c,endLoc:b}),d),r+=2;continue}}n.type=as(s)}}return e}var Ym=class extends Xm{parseTopLevel(t,r){return t.program=this.parseProgram(r),t.comments=this.comments,this.options.tokens&&(t.tokens=jX(this.tokens,this.input)),this.finishNode(t,"File")}parseProgram(t,r=139,n=this.options.sourceType){if(t.sourceType=n,t.interpreter=this.parseInterpreterDirective(),this.parseBlockBody(t,!0,!0,r),this.inModule){if(!this.options.allowUndeclaredExports&&this.scope.undefinedExports.size>0)for(let[i,a]of Array.from(this.scope.undefinedExports))this.raise(I.ModuleExportUndefined,a,{localName:i});this.addExtra(t,"topLevelAwait",this.state.hasTopLevelAwait)}let s;return r===139?s=this.finishNode(t,"Program"):s=this.finishNodeAt(t,"Program",Br(this.state.startLoc,-1)),s}stmtToDirective(t){let r=t;r.type="Directive",r.value=r.expression,delete r.expression;let n=r.value,s=n.value,i=this.input.slice(n.start,n.end),a=n.value=i.slice(1,-1);return this.addExtra(n,"raw",i),this.addExtra(n,"rawValue",a),this.addExtra(n,"expressionValue",s),n.type="DirectiveLiteral",r}parseInterpreterDirective(){if(!this.match(28))return null;let t=this.startNode();return t.value=this.state.value,this.next(),this.finishNode(t,"InterpreterDirective")}isLet(){return this.isContextual(100)?this.hasFollowingBindingAtom():!1}chStartsBindingIdentifier(t,r){if(ls(t)){if(Im.lastIndex=r,Im.test(this.input)){let n=this.codePointAtPos(Im.lastIndex);if(!ma(n)&&n!==92)return!1}return!0}else return t===92}chStartsBindingPattern(t){return t===91||t===123}hasFollowingBindingAtom(){let t=this.nextTokenStart(),r=this.codePointAtPos(t);return this.chStartsBindingPattern(r)||this.chStartsBindingIdentifier(r,t)}hasInLineFollowingBindingIdentifierOrBrace(){let t=this.nextTokenInLineStart(),r=this.codePointAtPos(t);return r===123||this.chStartsBindingIdentifier(r,t)}startsUsingForOf(){let{type:t,containsEsc:r}=this.lookahead();if(t===102&&!r)return!1;if(ht(t)&&!this.hasFollowingLineBreak())return this.expectPlugin("explicitResourceManagement"),!0}startsAwaitUsing(){let t=this.nextTokenInLineStart();if(this.isUnparsedContextual(t,"using")){t=this.nextTokenInLineStartSince(t+5);let r=this.codePointAtPos(t);if(this.chStartsBindingIdentifier(r,t))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(t=!1){let r=0;return this.options.annexB&&!this.state.strict&&(r|=4,t&&(r|=8)),this.parseStatementLike(r)}parseStatement(){return this.parseStatementLike(0)}parseStatementLike(t){let r=null;return this.match(26)&&(r=this.parseDecorators(!0)),this.parseStatementContent(t,r)}parseStatementContent(t,r){let n=this.state.type,s=this.startNode(),i=!!(t&2),a=!!(t&4),o=t&1;switch(n){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(this.lookaheadCharCode()===46)break;return a||this.raise(this.state.strict?I.StrictFunction:this.options.annexB?I.SloppyFunctionAnnexB:I.SloppyFunction,this.state.startLoc),this.parseFunctionStatement(s,!1,!i&&a);case 80:return i||this.unexpected(),this.parseClass(this.maybeTakeDecorators(r,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.recordAwaitIfAllowed()?i||this.raise(I.UnexpectedLexicalDeclaration,s):this.raise(I.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(I.UnexpectedUsingDeclaration,this.state.startLoc):i||this.raise(I.UnexpectedLexicalDeclaration,this.state.startLoc),this.parseVarStatement(s,"using");case 100:{if(this.state.containsEsc)break;let c=this.nextTokenStart(),f=this.codePointAtPos(c);if(f!==91&&(!i&&this.hasFollowingLineBreak()||!this.chStartsBindingIdentifier(f,c)&&f!==123))break}case 75:i||this.raise(I.UnexpectedLexicalDeclaration,this.state.startLoc);case 74:{let c=this.state.value;return this.parseVarStatement(s,c)}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 c=this.lookaheadCharCode();if(c===40||c===46)break}case 82:{!this.options.allowImportExportEverywhere&&!o&&this.raise(I.UnexpectedImportExport,this.state.startLoc),this.next();let c;return n===83?(c=this.parseImport(s),c.type==="ImportDeclaration"&&(!c.importKind||c.importKind==="value")&&(this.sawUnambiguousESM=!0)):(c=this.parseExport(s,r),(c.type==="ExportNamedDeclaration"&&(!c.exportKind||c.exportKind==="value")||c.type==="ExportAllDeclaration"&&(!c.exportKind||c.exportKind==="value")||c.type==="ExportDefaultDeclaration")&&(this.sawUnambiguousESM=!0)),this.assertModuleNodeAllowed(c),c}default:if(this.isAsyncFunction())return i||this.raise(I.AsyncFunctionInSingleStatementContext,this.state.startLoc),this.next(),this.parseFunctionStatement(s,!0,!i&&a)}let l=this.state.value,u=this.parseExpression();return ht(n)&&u.type==="Identifier"&&this.eat(14)?this.parseLabeledStatement(s,l,u,t):this.parseExpressionStatement(s,u,r)}assertModuleNodeAllowed(t){!this.options.allowImportExportEverywhere&&!this.inModule&&this.raise(I.ImportOutsideModule,t)}decoratorsEnabledBeforeExport(){return this.hasPlugin("decorators-legacy")?!0:this.hasPlugin("decorators")&&this.getPluginOption("decorators","decoratorsBeforeExport")!==!1}maybeTakeDecorators(t,r,n){return t&&(r.decorators&&r.decorators.length>0?(typeof this.getPluginOption("decorators","decoratorsBeforeExport")!="boolean"&&this.raise(I.DecoratorsBeforeAfterExport,r.decorators[0]),r.decorators.unshift(...t)):r.decorators=t,this.resetStartLocationFromNode(r,t[0]),n&&this.resetStartLocationFromNode(n,r)),r}canHaveLeadingDecorator(){return this.match(80)}parseDecorators(t){let r=[];do r.push(this.parseDecorator());while(this.match(26));if(this.match(82))t||this.unexpected(),this.decoratorsEnabledBeforeExport()||this.raise(I.DecoratorExportClass,this.state.startLoc);else if(!this.canHaveLeadingDecorator())throw this.raise(I.UnexpectedLeadingDecorator,this.state.startLoc);return r}parseDecorator(){this.expectOnePlugin(["decorators","decorators-legacy"]);let t=this.startNode();if(this.next(),this.hasPlugin("decorators")){let r=this.state.startLoc,n;if(this.match(10)){let s=this.state.startLoc;this.next(),n=this.parseExpression(),this.expect(11),n=this.wrapParenthesis(s,n);let i=this.state.startLoc;t.expression=this.parseMaybeDecoratorArguments(n),this.getPluginOption("decorators","allowCallParenthesized")===!1&&t.expression!==n&&this.raise(I.DecoratorArgumentsOutsideParentheses,i)}else{for(n=this.parseIdentifier(!1);this.eat(16);){let s=this.startNodeAt(r);s.object=n,this.match(138)?(this.classScope.usePrivateName(this.state.value,this.state.startLoc),s.property=this.parsePrivateName()):s.property=this.parseIdentifier(!0),s.computed=!1,n=this.finishNode(s,"MemberExpression")}t.expression=this.parseMaybeDecoratorArguments(n)}}else t.expression=this.parseExprSubscripts();return this.finishNode(t,"Decorator")}parseMaybeDecoratorArguments(t){if(this.eat(10)){let r=this.startNodeAtNode(t);return r.callee=t,r.arguments=this.parseCallExpressionArguments(11,!1),this.toReferencedList(r.arguments),this.finishNode(r,"CallExpression")}return t}parseBreakContinueStatement(t,r){return this.next(),this.isLineTerminator()?t.label=null:(t.label=this.parseIdentifier(),this.semicolon()),this.verifyBreakContinue(t,r),this.finishNode(t,r?"BreakStatement":"ContinueStatement")}verifyBreakContinue(t,r){let n;for(n=0;n<this.state.labels.length;++n){let s=this.state.labels[n];if((t.label==null||s.name===t.label.name)&&(s.kind!=null&&(r||s.kind===1)||t.label&&r))break}if(n===this.state.labels.length){let s=r?"BreakStatement":"ContinueStatement";this.raise(I.IllegalBreakContinue,t,{type:s})}}parseDebuggerStatement(t){return this.next(),this.semicolon(),this.finishNode(t,"DebuggerStatement")}parseHeaderExpression(){this.expect(10);let t=this.parseExpression();return this.expect(11),t}parseDoWhileStatement(t){return this.next(),this.state.labels.push(Dm),t.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.state.labels.pop(),this.expect(92),t.test=this.parseHeaderExpression(),this.eat(13),this.finishNode(t,"DoWhileStatement")}parseForStatement(t){this.next(),this.state.labels.push(Dm);let r=null;if(this.isContextual(96)&&this.recordAwaitIfAllowed()&&(r=this.state.startLoc,this.next()),this.scope.enter(0),this.expect(10),this.match(13))return r!==null&&this.unexpected(r),this.parseFor(t,null);let n=this.isContextual(100);{let l=this.isContextual(96)&&this.startsAwaitUsing(),u=l||this.isContextual(107)&&this.startsUsingForOf(),c=n&&this.hasFollowingBindingAtom()||u;if(this.match(74)||this.match(75)||c){let f=this.startNode(),p;l?(p="await using",this.recordAwaitIfAllowed()||this.raise(I.AwaitUsingNotInAsyncContext,this.state.startLoc),this.next()):p=this.state.value,this.next(),this.parseVar(f,!0,p);let h=this.finishNode(f,"VariableDeclaration"),b=this.match(58);return b&&u&&this.raise(I.ForInUsing,h),(b||this.isContextual(102))&&h.declarations.length===1?this.parseForIn(t,h,r):(r!==null&&this.unexpected(r),this.parseFor(t,h))}}let s=this.isContextual(95),i=new ga,a=this.parseExpression(!0,i),o=this.isContextual(102);if(o&&(n&&this.raise(I.ForOfLet,a),r===null&&s&&a.type==="Identifier"&&this.raise(I.ForOfAsync,a)),o||this.match(58)){this.checkDestructuringPrivate(i),this.toAssignable(a,!0);let l=o?"ForOfStatement":"ForInStatement";return this.checkLVal(a,{type:l}),this.parseForIn(t,a,r)}else this.checkExpressionErrors(i,!0);return r!==null&&this.unexpected(r),this.parseFor(t,a)}parseFunctionStatement(t,r,n){return this.next(),this.parseFunction(t,1|(n?2:0)|(r?8:0))}parseIfStatement(t){return this.next(),t.test=this.parseHeaderExpression(),t.consequent=this.parseStatementOrSloppyAnnexBFunctionDeclaration(),t.alternate=this.eat(66)?this.parseStatementOrSloppyAnnexBFunctionDeclaration():null,this.finishNode(t,"IfStatement")}parseReturnStatement(t){return!this.prodParam.hasReturn&&!this.options.allowReturnOutsideFunction&&this.raise(I.IllegalReturn,this.state.startLoc),this.next(),this.isLineTerminator()?t.argument=null:(t.argument=this.parseExpression(),this.semicolon()),this.finishNode(t,"ReturnStatement")}parseSwitchStatement(t){this.next(),t.discriminant=this.parseHeaderExpression();let r=t.cases=[];this.expect(5),this.state.labels.push(LX),this.scope.enter(0);let n;for(let s;!this.match(8);)if(this.match(61)||this.match(65)){let i=this.match(61);n&&this.finishNode(n,"SwitchCase"),r.push(n=this.startNode()),n.consequent=[],this.next(),i?n.test=this.parseExpression():(s&&this.raise(I.MultipleDefaultsInSwitch,this.state.lastTokStartLoc),s=!0,n.test=null),this.expect(14)}else n?n.consequent.push(this.parseStatementListItem()):this.unexpected();return this.scope.exit(),n&&this.finishNode(n,"SwitchCase"),this.next(),this.state.labels.pop(),this.finishNode(t,"SwitchStatement")}parseThrowStatement(t){return this.next(),this.hasPrecedingLineBreak()&&this.raise(I.NewlineAfterThrow,this.state.lastTokEndLoc),t.argument=this.parseExpression(),this.semicolon(),this.finishNode(t,"ThrowStatement")}parseCatchClauseParam(){let t=this.parseBindingAtom();return this.scope.enter(this.options.annexB&&t.type==="Identifier"?8:0),this.checkLVal(t,{type:"CatchClause"},9),t}parseTryStatement(t){if(this.next(),t.block=this.parseBlock(),t.handler=null,this.match(62)){let r=this.startNode();this.next(),this.match(10)?(this.expect(10),r.param=this.parseCatchClauseParam(),this.expect(11)):(r.param=null,this.scope.enter(0)),r.body=this.withSmartMixTopicForbiddingContext(()=>this.parseBlock(!1,!1)),this.scope.exit(),t.handler=this.finishNode(r,"CatchClause")}return t.finalizer=this.eat(67)?this.parseBlock():null,!t.handler&&!t.finalizer&&this.raise(I.NoCatchOrFinally,t),this.finishNode(t,"TryStatement")}parseVarStatement(t,r,n=!1){return this.next(),this.parseVar(t,!1,r,n),this.semicolon(),this.finishNode(t,"VariableDeclaration")}parseWhileStatement(t){return this.next(),t.test=this.parseHeaderExpression(),this.state.labels.push(Dm),t.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.state.labels.pop(),this.finishNode(t,"WhileStatement")}parseWithStatement(t){return this.state.strict&&this.raise(I.StrictWith,this.state.startLoc),this.next(),t.object=this.parseHeaderExpression(),t.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.finishNode(t,"WithStatement")}parseEmptyStatement(t){return this.next(),this.finishNode(t,"EmptyStatement")}parseLabeledStatement(t,r,n,s){for(let a of this.state.labels)a.name===r&&this.raise(I.LabelRedeclaration,n,{labelName:r});let i=UH(this.state.type)?1:this.match(71)?2:null;for(let a=this.state.labels.length-1;a>=0;a--){let o=this.state.labels[a];if(o.statementStart===t.start)o.statementStart=this.state.start,o.kind=i;else break}return this.state.labels.push({name:r,kind:i,statementStart:this.state.start}),t.body=s&8?this.parseStatementOrSloppyAnnexBFunctionDeclaration(!0):this.parseStatement(),this.state.labels.pop(),t.label=n,this.finishNode(t,"LabeledStatement")}parseExpressionStatement(t,r,n){return t.expression=r,this.semicolon(),this.finishNode(t,"ExpressionStatement")}parseBlock(t=!1,r=!0,n){let s=this.startNode();return t&&this.state.strictErrors.clear(),this.expect(5),r&&this.scope.enter(0),this.parseBlockBody(s,t,!1,8,n),r&&this.scope.exit(),this.finishNode(s,"BlockStatement")}isValidDirective(t){return t.type==="ExpressionStatement"&&t.expression.type==="StringLiteral"&&!t.expression.extra.parenthesized}parseBlockBody(t,r,n,s,i){let a=t.body=[],o=t.directives=[];this.parseBlockOrModuleBlockBody(a,r?o:void 0,n,s,i)}parseBlockOrModuleBlockBody(t,r,n,s,i){let a=this.state.strict,o=!1,l=!1;for(;!this.match(s);){let u=n?this.parseModuleItem():this.parseStatementListItem();if(r&&!l){if(this.isValidDirective(u)){let c=this.stmtToDirective(u);r.push(c),!o&&c.value.value==="use strict"&&(o=!0,this.setStrict(!0));continue}l=!0,this.state.strictErrors.clear()}t.push(u)}i?.call(this,o),a||this.setStrict(!1),this.next()}parseFor(t,r){return t.init=r,this.semicolon(!1),t.test=this.match(13)?null:this.parseExpression(),this.semicolon(!1),t.update=this.match(11)?null:this.parseExpression(),this.expect(11),t.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.scope.exit(),this.state.labels.pop(),this.finishNode(t,"ForStatement")}parseForIn(t,r,n){let s=this.match(58);return this.next(),s?n!==null&&this.unexpected(n):t.await=n!==null,r.type==="VariableDeclaration"&&r.declarations[0].init!=null&&(!s||!this.options.annexB||this.state.strict||r.kind!=="var"||r.declarations[0].id.type!=="Identifier")&&this.raise(I.ForInOfLoopInitializer,r,{type:s?"ForInStatement":"ForOfStatement"}),r.type==="AssignmentPattern"&&this.raise(I.InvalidLhs,r,{ancestor:{type:"ForStatement"}}),t.left=r,t.right=s?this.parseExpression():this.parseMaybeAssignAllowIn(),this.expect(11),t.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.scope.exit(),this.state.labels.pop(),this.finishNode(t,s?"ForInStatement":"ForOfStatement")}parseVar(t,r,n,s=!1){let i=t.declarations=[];for(t.kind=n;;){let a=this.startNode();if(this.parseVarId(a,n),a.init=this.eat(29)?r?this.parseMaybeAssignDisallowIn():this.parseMaybeAssignAllowIn():null,a.init===null&&!s&&(a.id.type!=="Identifier"&&!(r&&(this.match(58)||this.isContextual(102)))?this.raise(I.DeclarationMissingInitializer,this.state.lastTokEndLoc,{kind:"destructuring"}):(n==="const"||n==="using"||n==="await using")&&!(this.match(58)||this.isContextual(102))&&this.raise(I.DeclarationMissingInitializer,this.state.lastTokEndLoc,{kind:n})),i.push(this.finishNode(a,"VariableDeclarator")),!this.eat(12))break}return t}parseVarId(t,r){let n=this.parseBindingAtom();(r==="using"||r==="await using")&&(n.type==="ArrayPattern"||n.type==="ObjectPattern")&&this.raise(I.UsingDeclarationHasBindingPattern,n.loc.start),this.checkLVal(n,{type:"VariableDeclarator"},r==="var"?5:8201),t.id=n}parseAsyncFunctionExpression(t){return this.parseFunction(t,8)}parseFunction(t,r=0){let n=r&2,s=!!(r&1),i=s&&!(r&4),a=!!(r&8);this.initFunction(t,a),this.match(55)&&(n&&this.raise(I.GeneratorInSingleStatementContext,this.state.startLoc),this.next(),t.generator=!0),s&&(t.id=this.parseFunctionId(i));let o=this.state.maybeInArrowParameters;return this.state.maybeInArrowParameters=!1,this.scope.enter(2),this.prodParam.enter(Ku(a,t.generator)),s||(t.id=this.parseFunctionId()),this.parseFunctionParams(t,!1),this.withSmartMixTopicForbiddingContext(()=>{this.parseFunctionBodyAndFinish(t,s?"FunctionDeclaration":"FunctionExpression")}),this.prodParam.exit(),this.scope.exit(),s&&!n&&this.registerFunctionStatementId(t),this.state.maybeInArrowParameters=o,t}parseFunctionId(t){return t||ht(this.state.type)?this.parseIdentifier():null}parseFunctionParams(t,r){this.expect(10),this.expressionScope.enter(fX()),t.params=this.parseBindingList(11,41,2|(r?4:0)),this.expressionScope.exit()}registerFunctionStatementId(t){t.id&&this.scope.declareName(t.id.name,!this.options.annexB||this.state.strict||t.generator||t.async?this.scope.treatFunctionsAsVar?5:8201:17,t.id.loc.start)}parseClass(t,r,n){this.next();let s=this.state.strict;return this.state.strict=!0,this.parseClassId(t,r,n),this.parseClassSuper(t),t.body=this.parseClassBody(!!t.superClass,s),this.finishNode(t,r?"ClassDeclaration":"ClassExpression")}isClassProperty(){return this.match(29)||this.match(13)||this.match(8)}isClassMethod(){return this.match(10)}nameIsConstructor(t){return t.type==="Identifier"&&t.name==="constructor"||t.type==="StringLiteral"&&t.value==="constructor"}isNonstaticConstructor(t){return!t.computed&&!t.static&&this.nameIsConstructor(t.key)}parseClassBody(t,r){this.classScope.enter();let n={hadConstructor:!1,hadSuperClass:t},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(I.DecoratorSemicolon,this.state.lastTokEndLoc);continue}if(this.match(26)){s.push(this.parseDecorator());continue}let a=this.startNode();s.length&&(a.decorators=s,this.resetStartLocationFromNode(a,s[0]),s=[]),this.parseClassMember(i,a,n),a.kind==="constructor"&&a.decorators&&a.decorators.length>0&&this.raise(I.DecoratorConstructor,a)}}),this.state.strict=r,this.next(),s.length)throw this.raise(I.TrailingDecorator,this.state.startLoc);return this.classScope.exit(),this.finishNode(i,"ClassBody")}parseClassMemberFromModifier(t,r){let n=this.parseIdentifier(!0);if(this.isClassMethod()){let s=r;return s.kind="method",s.computed=!1,s.key=n,s.static=!1,this.pushClassMethod(t,s,!1,!1,!1,!1),!0}else if(this.isClassProperty()){let s=r;return s.computed=!1,s.key=n,s.static=!1,t.body.push(this.parseClassProperty(s)),!0}return this.resetPreviousNodeTrailingComments(n),!1}parseClassMember(t,r,n){let s=this.isContextual(106);if(s){if(this.parseClassMemberFromModifier(t,r))return;if(this.eat(5)){this.parseClassStaticBlock(t,r);return}}this.parseClassMemberWithIsStatic(t,r,n,s)}parseClassMemberWithIsStatic(t,r,n,s){let i=r,a=r,o=r,l=r,u=r,c=i,f=i;if(r.static=s,this.parsePropertyNamePrefixOperator(r),this.eat(55)){c.kind="method";let P=this.match(138);if(this.parseClassElementName(c),P){this.pushClassPrivateMethod(t,a,!0,!1);return}this.isNonstaticConstructor(i)&&this.raise(I.ConstructorIsGenerator,i.key),this.pushClassMethod(t,i,!0,!1,!1,!1);return}let p=!this.state.containsEsc&&ht(this.state.type),h=this.parseClassElementName(r),b=p?h.name:null,d=this.isPrivateName(h),y=this.state.startLoc;if(this.parsePostMemberNameModifiers(f),this.isClassMethod()){if(c.kind="method",d){this.pushClassPrivateMethod(t,a,!1,!1);return}let P=this.isNonstaticConstructor(i),D=!1;P&&(i.kind="constructor",n.hadConstructor&&!this.hasPlugin("typescript")&&this.raise(I.DuplicateConstructor,h),P&&this.hasPlugin("typescript")&&r.override&&this.raise(I.OverrideOnConstructor,h),n.hadConstructor=!0,D=n.hadSuperClass),this.pushClassMethod(t,i,!1,!1,P,D)}else if(this.isClassProperty())d?this.pushClassPrivateProperty(t,l):this.pushClassProperty(t,o);else if(b==="async"&&!this.isLineTerminator()){this.resetPreviousNodeTrailingComments(h);let P=this.eat(55);f.optional&&this.unexpected(y),c.kind="method";let D=this.match(138);this.parseClassElementName(c),this.parsePostMemberNameModifiers(f),D?this.pushClassPrivateMethod(t,a,P,!0):(this.isNonstaticConstructor(i)&&this.raise(I.ConstructorIsAsync,i.key),this.pushClassMethod(t,i,P,!0,!1,!1))}else if((b==="get"||b==="set")&&!(this.match(55)&&this.isLineTerminator())){this.resetPreviousNodeTrailingComments(h),c.kind=b;let P=this.match(138);this.parseClassElementName(i),P?this.pushClassPrivateMethod(t,a,!1,!1):(this.isNonstaticConstructor(i)&&this.raise(I.ConstructorIsAccessor,i.key),this.pushClassMethod(t,i,!1,!1,!1,!1)),this.checkGetterSetterParams(i)}else if(b==="accessor"&&!this.isLineTerminator()){this.expectPlugin("decoratorAutoAccessors"),this.resetPreviousNodeTrailingComments(h);let P=this.match(138);this.parseClassElementName(o),this.pushClassAccessorProperty(t,u,P)}else this.isLineTerminator()?d?this.pushClassPrivateProperty(t,l):this.pushClassProperty(t,o):this.unexpected()}parseClassElementName(t){let{type:r,value:n}=this.state;if((r===132||r===133)&&t.static&&n==="prototype"&&this.raise(I.StaticPrototype,this.state.startLoc),r===138){n==="constructor"&&this.raise(I.ConstructorClassPrivateField,this.state.startLoc);let s=this.parsePrivateName();return t.key=s,s}return this.parsePropertyName(t),t.key}parseClassStaticBlock(t,r){var n;this.scope.enter(208);let s=this.state.labels;this.state.labels=[],this.prodParam.enter(0);let i=r.body=[];this.parseBlockOrModuleBlockBody(i,void 0,!1,8),this.prodParam.exit(),this.scope.exit(),this.state.labels=s,t.body.push(this.finishNode(r,"StaticBlock")),(n=r.decorators)!=null&&n.length&&this.raise(I.DecoratorStaticBlock,r)}pushClassProperty(t,r){!r.computed&&this.nameIsConstructor(r.key)&&this.raise(I.ConstructorClassField,r.key),t.body.push(this.parseClassProperty(r))}pushClassPrivateProperty(t,r){let n=this.parseClassPrivateProperty(r);t.body.push(n),this.classScope.declarePrivateName(this.getPrivateNameSV(n.key),0,n.key.loc.start)}pushClassAccessorProperty(t,r,n){!n&&!r.computed&&this.nameIsConstructor(r.key)&&this.raise(I.ConstructorClassField,r.key);let s=this.parseClassAccessorProperty(r);t.body.push(s),n&&this.classScope.declarePrivateName(this.getPrivateNameSV(s.key),0,s.key.loc.start)}pushClassMethod(t,r,n,s,i,a){t.body.push(this.parseMethod(r,n,s,i,a,"ClassMethod",!0))}pushClassPrivateMethod(t,r,n,s){let i=this.parseMethod(r,n,s,!1,!1,"ClassPrivateMethod",!0);t.body.push(i);let a=i.kind==="get"?i.static?6:2:i.kind==="set"?i.static?5:1:0;this.declareClassPrivateMethodInScope(i,a)}declareClassPrivateMethodInScope(t,r){this.classScope.declarePrivateName(this.getPrivateNameSV(t.key),r,t.key.loc.start)}parsePostMemberNameModifiers(t){}parseClassPrivateProperty(t){return this.parseInitializer(t),this.semicolon(),this.finishNode(t,"ClassPrivateProperty")}parseClassProperty(t){return this.parseInitializer(t),this.semicolon(),this.finishNode(t,"ClassProperty")}parseClassAccessorProperty(t){return this.parseInitializer(t),this.semicolon(),this.finishNode(t,"ClassAccessorProperty")}parseInitializer(t){this.scope.enter(80),this.expressionScope.enter(JS()),this.prodParam.enter(0),t.value=this.eat(29)?this.parseMaybeAssignAllowIn():null,this.expressionScope.exit(),this.prodParam.exit(),this.scope.exit()}parseClassId(t,r,n,s=8331){if(ht(this.state.type))t.id=this.parseIdentifier(),r&&this.declareNameFromIdentifier(t.id,s);else if(n||!r)t.id=null;else throw this.raise(I.MissingClassName,this.state.startLoc)}parseClassSuper(t){t.superClass=this.eat(81)?this.parseExprSubscripts():null}parseExport(t,r){let n=this.parseMaybeImportPhase(t,!0),s=this.maybeParseExportDefaultSpecifier(t,n),i=!s||this.eat(12),a=i&&this.eatExportStar(t),o=a&&this.maybeParseExportNamespaceSpecifier(t),l=i&&(!o||this.eat(12)),u=s||a;if(a&&!o){if(s&&this.unexpected(),r)throw this.raise(I.UnsupportedDecoratorExport,t);return this.parseExportFrom(t,!0),this.finishNode(t,"ExportAllDeclaration")}let c=this.maybeParseExportNamedSpecifiers(t);s&&i&&!a&&!c&&this.unexpected(null,5),o&&l&&this.unexpected(null,98);let f;if(u||c){if(f=!1,r)throw this.raise(I.UnsupportedDecoratorExport,t);this.parseExportFrom(t,u)}else f=this.maybeParseExportDeclaration(t);if(u||c||f){var p;let h=t;if(this.checkExport(h,!0,!1,!!h.source),((p=h.declaration)==null?void 0:p.type)==="ClassDeclaration")this.maybeTakeDecorators(r,h.declaration,h);else if(r)throw this.raise(I.UnsupportedDecoratorExport,t);return this.finishNode(h,"ExportNamedDeclaration")}if(this.eat(65)){let h=t,b=this.parseExportDefaultExpression();if(h.declaration=b,b.type==="ClassDeclaration")this.maybeTakeDecorators(r,b,h);else if(r)throw this.raise(I.UnsupportedDecoratorExport,t);return this.checkExport(h,!0,!0),this.finishNode(h,"ExportDefaultDeclaration")}this.unexpected(null,5)}eatExportStar(t){return this.eat(55)}maybeParseExportDefaultSpecifier(t,r){if(r||this.isExportDefaultSpecifier()){this.expectPlugin("exportDefaultFrom",r?.loc.start);let n=r||this.parseIdentifier(!0),s=this.startNodeAtNode(n);return s.exported=n,t.specifiers=[this.finishNode(s,"ExportDefaultSpecifier")],!0}return!1}maybeParseExportNamespaceSpecifier(t){if(this.isContextual(93)){var r,n;(n=(r=t).specifiers)!=null||(r.specifiers=[]);let s=this.startNodeAt(this.state.lastTokStartLoc);return this.next(),s.exported=this.parseModuleExportName(),t.specifiers.push(this.finishNode(s,"ExportNamespaceSpecifier")),!0}return!1}maybeParseExportNamedSpecifiers(t){if(this.match(5)){let r=t;r.specifiers||(r.specifiers=[]);let n=r.exportKind==="type";return r.specifiers.push(...this.parseExportSpecifiers(n)),r.source=null,r.declaration=null,this.hasPlugin("importAssertions")&&(r.assertions=[]),!0}return!1}maybeParseExportDeclaration(t){return this.shouldParseExportDeclaration()?(t.specifiers=[],t.source=null,this.hasPlugin("importAssertions")&&(t.assertions=[]),t.declaration=this.parseExportDeclaration(t),!0):!1}isAsyncFunction(){if(!this.isContextual(95))return!1;let t=this.nextTokenInLineStart();return this.isUnparsedContextual(t,"function")}parseExportDefaultExpression(){let t=this.startNode();if(this.match(68))return this.next(),this.parseFunction(t,5);if(this.isAsyncFunction())return this.next(),this.next(),this.parseFunction(t,13);if(this.match(80))return this.parseClass(t,!0,!0);if(this.match(26))return this.hasPlugin("decorators")&&this.getPluginOption("decorators","decoratorsBeforeExport")===!0&&this.raise(I.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(I.UnsupportedDefaultExport,this.state.startLoc);let r=this.parseMaybeAssignAllowIn();return this.semicolon(),r}parseExportDeclaration(t){return this.match(80)?this.parseClass(this.startNode(),!0,!1):this.parseStatementListItem()}isExportDefaultSpecifier(){let{type:t}=this.state;if(ht(t)){if(t===95&&!this.state.containsEsc||t===100)return!1;if((t===130||t===129)&&!this.state.containsEsc){let{type:s}=this.lookahead();if(ht(s)&&s!==98||s===5)return this.expectOnePlugin(["flow","typescript"]),!1}}else if(!this.match(65))return!1;let r=this.nextTokenStart(),n=this.isUnparsedContextual(r,"from");if(this.input.charCodeAt(r)===44||ht(this.state.type)&&n)return!0;if(this.match(65)&&n){let s=this.input.charCodeAt(this.nextTokenStartSince(r+4));return s===34||s===39}return!1}parseExportFrom(t,r){this.eatContextual(98)?(t.source=this.parseImportSource(),this.checkExport(t),this.maybeParseImportAttributes(t),this.checkJSONModuleImport(t)):r&&this.unexpected(),this.semicolon()}shouldParseExportDeclaration(){let{type:t}=this.state;return t===26&&(this.expectOnePlugin(["decorators","decorators-legacy"]),this.hasPlugin("decorators"))?(this.getPluginOption("decorators","decoratorsBeforeExport")===!0&&this.raise(I.DecoratorBeforeExport,this.state.startLoc),!0):this.isContextual(107)?(this.raise(I.UsingDeclarationExport,this.state.startLoc),!0):this.isContextual(96)&&this.startsAwaitUsing()?(this.raise(I.UsingDeclarationExport,this.state.startLoc),!0):t===74||t===75||t===68||t===80||this.isLet()||this.isAsyncFunction()}checkExport(t,r,n,s){if(r){var i;if(n){if(this.checkDuplicateExports(t,"default"),this.hasPlugin("exportDefaultFrom")){var a;let o=t.declaration;o.type==="Identifier"&&o.name==="from"&&o.end-o.start===4&&!((a=o.extra)!=null&&a.parenthesized)&&this.raise(I.ExportDefaultFromAsIdentifier,o)}}else if((i=t.specifiers)!=null&&i.length)for(let o of t.specifiers){let{exported:l}=o,u=l.type==="Identifier"?l.name:l.value;if(this.checkDuplicateExports(o,u),!s&&o.local){let{local:c}=o;c.type!=="Identifier"?this.raise(I.ExportBindingIsString,o,{localName:c.value,exportName:u}):(this.checkReservedWord(c.name,c.loc.start,!0,!1),this.scope.checkLocalExport(c))}}else if(t.declaration){let o=t.declaration;if(o.type==="FunctionDeclaration"||o.type==="ClassDeclaration"){let{id:l}=o;if(!l)throw new Error("Assertion failure");this.checkDuplicateExports(t,l.name)}else if(o.type==="VariableDeclaration")for(let l of o.declarations)this.checkDeclaration(l.id)}}}checkDeclaration(t){if(t.type==="Identifier")this.checkDuplicateExports(t,t.name);else if(t.type==="ObjectPattern")for(let r of t.properties)this.checkDeclaration(r);else if(t.type==="ArrayPattern")for(let r of t.elements)r&&this.checkDeclaration(r);else t.type==="ObjectProperty"?this.checkDeclaration(t.value):t.type==="RestElement"?this.checkDeclaration(t.argument):t.type==="AssignmentPattern"&&this.checkDeclaration(t.left)}checkDuplicateExports(t,r){this.exportedIdentifiers.has(r)&&(r==="default"?this.raise(I.DuplicateDefaultExport,t):this.raise(I.DuplicateExport,t,{exportName:r})),this.exportedIdentifiers.add(r)}parseExportSpecifiers(t){let r=[],n=!0;for(this.expect(5);!this.eat(8);){if(n)n=!1;else if(this.expect(12),this.eat(8))break;let s=this.isContextual(130),i=this.match(133),a=this.startNode();a.local=this.parseModuleExportName(),r.push(this.parseExportSpecifier(a,i,t,s))}return r}parseExportSpecifier(t,r,n,s){return this.eatContextual(93)?t.exported=this.parseModuleExportName():r?t.exported=mX(t.local):t.exported||(t.exported=cs(t.local)),this.finishNode(t,"ExportSpecifier")}parseModuleExportName(){if(this.match(133)){let t=this.parseStringLiteral(this.state.value),r=RX.exec(t.value);return r&&this.raise(I.ModuleExportNameHasLoneSurrogate,t,{surrogateCharCode:r[0].charCodeAt(0)}),t}return this.parseIdentifier(!0)}isJSONModuleImport(t){return t.assertions!=null?t.assertions.some(({key:r,value:n})=>n.value==="json"&&(r.type==="Identifier"?r.name==="type":r.value==="type")):!1}checkImportReflection(t){let{specifiers:r}=t,n=r.length===1?r[0].type:null;if(t.phase==="source")n!=="ImportDefaultSpecifier"&&this.raise(I.SourcePhaseImportRequiresDefault,r[0].loc.start);else if(t.phase==="defer")n!=="ImportNamespaceSpecifier"&&this.raise(I.DeferImportRequiresNamespace,r[0].loc.start);else if(t.module){var s;n!=="ImportDefaultSpecifier"&&this.raise(I.ImportReflectionNotBinding,r[0].loc.start),((s=t.assertions)==null?void 0:s.length)>0&&this.raise(I.ImportReflectionHasAssertion,r[0].loc.start)}}checkJSONModuleImport(t){if(this.isJSONModuleImport(t)&&t.type!=="ExportAllDeclaration"){let{specifiers:r}=t;if(r!=null){let n=r.find(s=>{let i;if(s.type==="ExportSpecifier"?i=s.local:s.type==="ImportSpecifier"&&(i=s.imported),i!==void 0)return i.type==="Identifier"?i.name!=="default":i.value!=="default"});n!==void 0&&this.raise(I.ImportJSONBindingNotDefault,n.loc.start)}}}isPotentialImportPhase(t){return t?!1:this.isContextual(105)||this.isContextual(97)||this.isContextual(127)}applyImportPhase(t,r,n,s){r||(n==="module"?(this.expectPlugin("importReflection",s),t.module=!0):this.hasPlugin("importReflection")&&(t.module=!1),n==="source"?(this.expectPlugin("sourcePhaseImports",s),t.phase="source"):n==="defer"?(this.expectPlugin("deferredImportEvaluation",s),t.phase="defer"):this.hasPlugin("sourcePhaseImports")&&(t.phase=null))}parseMaybeImportPhase(t,r){if(!this.isPotentialImportPhase(r))return this.applyImportPhase(t,r,null),null;let n=this.parseIdentifier(!0),{type:s}=this.state;return(xn(s)?s!==98||this.lookaheadCharCode()===102:s!==12)?(this.resetPreviousIdentifierLeadingComments(n),this.applyImportPhase(t,r,n.name,n.loc.start),null):(this.applyImportPhase(t,r,null),n)}isPrecedingIdImportPhase(t){let{type:r}=this.state;return ht(r)?r!==98||this.lookaheadCharCode()===102:r!==12}parseImport(t){return this.match(133)?this.parseImportSourceAndAttributes(t):this.parseImportSpecifiersAndAfter(t,this.parseMaybeImportPhase(t,!1))}parseImportSpecifiersAndAfter(t,r){t.specifiers=[];let s=!this.maybeParseDefaultImportSpecifier(t,r)||this.eat(12),i=s&&this.maybeParseStarImportSpecifier(t);return s&&!i&&this.parseNamedImportSpecifiers(t),this.expectContextual(98),this.parseImportSourceAndAttributes(t)}parseImportSourceAndAttributes(t){var r;return(r=t.specifiers)!=null||(t.specifiers=[]),t.source=this.parseImportSource(),this.maybeParseImportAttributes(t),this.checkImportReflection(t),this.checkJSONModuleImport(t),this.semicolon(),this.finishNode(t,"ImportDeclaration")}parseImportSource(){return this.match(133)||this.unexpected(),this.parseExprAtom()}parseImportSpecifierLocal(t,r,n){r.local=this.parseIdentifier(),t.specifiers.push(this.finishImportSpecifier(r,n))}finishImportSpecifier(t,r,n=8201){return this.checkLVal(t.local,{type:r},n),this.finishNode(t,r)}parseImportAttributes(){this.expect(5);let t=[],r=new Set;do{if(this.match(8))break;let n=this.startNode(),s=this.state.value;if(r.has(s)&&this.raise(I.ModuleAttributesWithDuplicateKeys,this.state.startLoc,{key:s}),r.add(s),this.match(133)?n.key=this.parseStringLiteral(s):n.key=this.parseIdentifier(!0),this.expect(14),!this.match(133))throw this.raise(I.ModuleAttributeInvalidValue,this.state.startLoc);n.value=this.parseStringLiteral(this.state.value),t.push(this.finishNode(n,"ImportAttribute"))}while(this.eat(12));return this.expect(8),t}parseModuleAttributes(){let t=[],r=new Set;do{let n=this.startNode();if(n.key=this.parseIdentifier(!0),n.key.name!=="type"&&this.raise(I.ModuleAttributeDifferentFromType,n.key),r.has(n.key.name)&&this.raise(I.ModuleAttributesWithDuplicateKeys,n.key,{key:n.key.name}),r.add(n.key.name),this.expect(14),!this.match(133))throw this.raise(I.ModuleAttributeInvalidValue,this.state.startLoc);n.value=this.parseStringLiteral(this.state.value),t.push(this.finishNode(n,"ImportAttribute"))}while(this.eat(12));return t}maybeParseImportAttributes(t){let r,n=!1;if(this.match(76)){if(this.hasPrecedingLineBreak()&&this.lookaheadCharCode()===40)return;this.next(),this.hasPlugin("moduleAttributes")?r=this.parseModuleAttributes():(this.expectImportAttributesPlugin(),r=this.parseImportAttributes()),n=!0}else if(this.isContextual(94)&&!this.hasPrecedingLineBreak())this.hasPlugin("importAttributes")?(this.getPluginOption("importAttributes","deprecatedAssertSyntax")!==!0&&this.raise(I.ImportAttributesUseAssert,this.state.startLoc),this.addExtra(t,"deprecatedAssertSyntax",!0)):this.expectOnePlugin(["importAttributes","importAssertions"]),this.next(),r=this.parseImportAttributes();else if(this.hasPlugin("importAttributes")||this.hasPlugin("importAssertions"))r=[];else if(this.hasPlugin("moduleAttributes"))r=[];else return;!n&&this.hasPlugin("importAssertions")?t.assertions=r:t.attributes=r}maybeParseDefaultImportSpecifier(t,r){if(r){let n=this.startNodeAtNode(r);return n.local=r,t.specifiers.push(this.finishImportSpecifier(n,"ImportDefaultSpecifier")),!0}else if(xn(this.state.type))return this.parseImportSpecifierLocal(t,this.startNode(),"ImportDefaultSpecifier"),!0;return!1}maybeParseStarImportSpecifier(t){if(this.match(55)){let r=this.startNode();return this.next(),this.expectContextual(93),this.parseImportSpecifierLocal(t,r,"ImportNamespaceSpecifier"),!0}return!1}parseNamedImportSpecifiers(t){let r=!0;for(this.expect(5);!this.eat(8);){if(r)r=!1;else{if(this.eat(14))throw this.raise(I.DestructureNamedImport,this.state.startLoc);if(this.expect(12),this.eat(8))break}let n=this.startNode(),s=this.match(133),i=this.isContextual(130);n.imported=this.parseModuleExportName();let a=this.parseImportSpecifier(n,s,t.importKind==="type"||t.importKind==="typeof",i,void 0);t.specifiers.push(a)}}parseImportSpecifier(t,r,n,s,i){if(this.eatContextual(93))t.local=this.parseIdentifier();else{let{imported:a}=t;if(r)throw this.raise(I.ImportBindingIsString,t,{importName:a.value});this.checkReservedWord(a.name,t.loc.start,!0,!0),t.local||(t.local=cs(a))}return this.finishImportSpecifier(t,"ImportSpecifier",i)}isThisParam(t){return t.type==="Identifier"&&t.name==="this"}},Yu=class extends Ym{constructor(t,r,n){t=kX(t),super(t,r),this.options=t,this.initializeScopes(),this.plugins=n,this.filename=t.sourceFilename}getScopeHandler(){return Ho}parse(){this.enterInitialScopes();let t=this.startNode(),r=this.startNode();return this.nextToken(),t.errors=null,this.parseTopLevel(t,r),t.errors=this.state.errors,t.comments.length=this.state.commentsLen,t}};function MX(e,t){var r;if(((r=t)==null?void 0:r.sourceType)==="unambiguous"){t=Object.assign({},t);try{t.sourceType="module";let n=Wo(t,e),s=n.parse();if(n.sawUnambiguousESM)return s;if(n.ambiguousScriptDifferentAst)try{return t.sourceType="script",Wo(t,e).parse()}catch{}else s.program.sourceType="script";return s}catch(n){try{return t.sourceType="script",Wo(t,e).parse()}catch{}throw n}}else return Wo(t,e).parse()}function qX(e,t){let r=Wo(t,e);return r.options.strictMode&&(r.state.strict=!0),r.getExpression()}function UX(e){let t={};for(let r of Object.keys(e))t[r]=as(e[r]);return t}var VX=UX(RH);function Wo(e,t){let r=Yu,n=new Map;if(e!=null&&e.plugins){for(let s of e.plugins){let i,a;typeof s=="string"?i=s:[i,a]=s,n.has(i)||n.set(i,a||{})}BX(n),r=$X(n)}return new r(e,t,n)}var MS=new Map;function $X(e){let t=[];for(let s of FX)e.has(s)&&t.push(s);let r=t.join("|"),n=MS.get(r);if(!n){n=Yu;for(let s of t)n=ex[s](n);MS.set(r,n)}return n}Yo.parse=MX;Yo.parseExpression=qX;Yo.tokTypes=VX});var tx=E(Ju=>{Object.defineProperty(Ju,"__esModule",{value:!0});Ju.default=/((['"])(?:(?!\2|\\).|\\(?:\r\n|[\s\S]))*(\2)?|`(?:[^`\\$]|\\[\s\S]|\$(?!\{)|\$\{(?:[^{}]|\{[^}]*\}?)*\}?)*(`)?)|(\/\/.*)|(\/\*(?:[^*]|\*(?!\/))*(\*\/)?)|(\/(?!\*)(?:\[(?:(?![\]\\]).|\\.)*\]|(?![\/\]\\]).|\\.)+\/(?:(?!\s*(?:\b|[\u0080-\uFFFF$\\'"~({]|[+\-!](?!=)|\.?\d))|[gmiyus]{1,6}\b(?![\u0080-\uFFFF$\\]|\s*(?:[+\-*%&|^<>!=?({]|\/(?![\/*])))))|(0[xX][\da-fA-F]+|0[oO][0-7]+|0[bB][01]+|(?:\d*\.\d+|\d+\.?)(?:[eE][+-]?\d+)?)|((?!\d)(?:(?!\s)[$\w\u0080-\uFFFF]|\\u[\da-fA-F]{4}|\\u\{[\da-fA-F]+\})+)|(--|\+\+|&&|\|\||=>|\.{3}|(?:[+\-\/%&|^]|\*{1,2}|<{1,2}|>{1,3}|!=?|={1,2})=?|[?~.,:;[\](){}])|(\s+)|(^$|[\s\S])/g;Ju.matchToToken=function(e){var t={type:"invalid",value:e[0],closed:void 0};return e[1]?(t.type="string",t.closed=!!(e[3]||e[4])):e[5]?t.type="comment":e[6]?(t.type="comment",t.closed=!!e[7]):e[8]?t.type="regex":e[9]?t.type="number":e[10]?t.type="name":e[11]?t.type="punctuator":e[12]&&(t.type="whitespace"),t}});var oy=E((NAe,ay)=>{var Qu=process||{},rx=Qu.argv||[],zu=Qu.env||{},WX=!(zu.NO_COLOR||rx.includes("--no-color"))&&(!!zu.FORCE_COLOR||rx.includes("--color")||Qu.platform==="win32"||(Qu.stdout||{}).isTTY&&zu.TERM!=="dumb"||!!zu.CI),KX=(e,t,r=e)=>n=>{let s=""+n,i=s.indexOf(t,e.length);return~i?e+GX(s,t,r,i)+t:e+s+t},GX=(e,t,r,n)=>{let s="",i=0;do s+=e.substring(i,n)+r,i=n+t.length,n=e.indexOf(t,i);while(~n);return s+e.substring(i)},nx=(e=WX)=>{let t=e?KX:()=>String;return{isColorSupported:e,reset:t("\x1B[0m","\x1B[0m"),bold:t("\x1B[1m","\x1B[22m","\x1B[22m\x1B[1m"),dim:t("\x1B[2m","\x1B[22m","\x1B[22m\x1B[2m"),italic:t("\x1B[3m","\x1B[23m"),underline:t("\x1B[4m","\x1B[24m"),inverse:t("\x1B[7m","\x1B[27m"),hidden:t("\x1B[8m","\x1B[28m"),strikethrough:t("\x1B[9m","\x1B[29m"),black:t("\x1B[30m","\x1B[39m"),red:t("\x1B[31m","\x1B[39m"),green:t("\x1B[32m","\x1B[39m"),yellow:t("\x1B[33m","\x1B[39m"),blue:t("\x1B[34m","\x1B[39m"),magenta:t("\x1B[35m","\x1B[39m"),cyan:t("\x1B[36m","\x1B[39m"),white:t("\x1B[37m","\x1B[39m"),gray:t("\x1B[90m","\x1B[39m"),bgBlack:t("\x1B[40m","\x1B[49m"),bgRed:t("\x1B[41m","\x1B[49m"),bgGreen:t("\x1B[42m","\x1B[49m"),bgYellow:t("\x1B[43m","\x1B[49m"),bgBlue:t("\x1B[44m","\x1B[49m"),bgMagenta:t("\x1B[45m","\x1B[49m"),bgCyan:t("\x1B[46m","\x1B[49m"),bgWhite:t("\x1B[47m","\x1B[49m"),blackBright:t("\x1B[90m","\x1B[39m"),redBright:t("\x1B[91m","\x1B[39m"),greenBright:t("\x1B[92m","\x1B[39m"),yellowBright:t("\x1B[93m","\x1B[39m"),blueBright:t("\x1B[94m","\x1B[39m"),magentaBright:t("\x1B[95m","\x1B[39m"),cyanBright:t("\x1B[96m","\x1B[39m"),whiteBright:t("\x1B[97m","\x1B[39m"),bgBlackBright:t("\x1B[100m","\x1B[49m"),bgRedBright:t("\x1B[101m","\x1B[49m"),bgGreenBright:t("\x1B[102m","\x1B[49m"),bgYellowBright:t("\x1B[103m","\x1B[49m"),bgBlueBright:t("\x1B[104m","\x1B[49m"),bgMagentaBright:t("\x1B[105m","\x1B[49m"),bgCyanBright:t("\x1B[106m","\x1B[49m"),bgWhiteBright:t("\x1B[107m","\x1B[49m")}};ay.exports=nx();ay.exports.createColors=nx});var ix=E((BAe,sx)=>{"use strict";var HX=/[|\\{}()[\]^$+*?.]/g;sx.exports=function(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(HX,"\\$&")}});var ox=E((FAe,ax)=>{"use strict";ax.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}});var ly=E((kAe,fx)=>{var Si=ox(),cx={};for(Zu in Si)Si.hasOwnProperty(Zu)&&(cx[Si[Zu]]=Zu);var Zu,Pe=fx.exports={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},lch:{channels:3,labels:"lch"},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}};for(Fr in Pe)if(Pe.hasOwnProperty(Fr)){if(!("channels"in Pe[Fr]))throw new Error("missing channels property: "+Fr);if(!("labels"in Pe[Fr]))throw new Error("missing channel labels property: "+Fr);if(Pe[Fr].labels.length!==Pe[Fr].channels)throw new Error("channel and label counts mismatch: "+Fr);lx=Pe[Fr].channels,ux=Pe[Fr].labels,delete Pe[Fr].channels,delete Pe[Fr].labels,Object.defineProperty(Pe[Fr],"channels",{value:lx}),Object.defineProperty(Pe[Fr],"labels",{value:ux})}var lx,ux,Fr;Pe.rgb.hsl=function(e){var t=e[0]/255,r=e[1]/255,n=e[2]/255,s=Math.min(t,r,n),i=Math.max(t,r,n),a=i-s,o,l,u;return i===s?o=0:t===i?o=(r-n)/a:r===i?o=2+(n-t)/a:n===i&&(o=4+(t-r)/a),o=Math.min(o*60,360),o<0&&(o+=360),u=(s+i)/2,i===s?l=0:u<=.5?l=a/(i+s):l=a/(2-i-s),[o,l*100,u*100]};Pe.rgb.hsv=function(e){var t,r,n,s,i,a=e[0]/255,o=e[1]/255,l=e[2]/255,u=Math.max(a,o,l),c=u-Math.min(a,o,l),f=function(p){return(u-p)/6/c+1/2};return c===0?s=i=0:(i=c/u,t=f(a),r=f(o),n=f(l),a===u?s=n-r:o===u?s=1/3+t-n:l===u&&(s=2/3+r-t),s<0?s+=1:s>1&&(s-=1)),[s*360,i*100,u*100]};Pe.rgb.hwb=function(e){var t=e[0],r=e[1],n=e[2],s=Pe.rgb.hsl(e)[0],i=1/255*Math.min(t,Math.min(r,n));return n=1-1/255*Math.max(t,Math.max(r,n)),[s,i*100,n*100]};Pe.rgb.cmyk=function(e){var t=e[0]/255,r=e[1]/255,n=e[2]/255,s,i,a,o;return o=Math.min(1-t,1-r,1-n),s=(1-t-o)/(1-o)||0,i=(1-r-o)/(1-o)||0,a=(1-n-o)/(1-o)||0,[s*100,i*100,a*100,o*100]};function XX(e,t){return Math.pow(e[0]-t[0],2)+Math.pow(e[1]-t[1],2)+Math.pow(e[2]-t[2],2)}Pe.rgb.keyword=function(e){var t=cx[e];if(t)return t;var r=1/0,n;for(var s in Si)if(Si.hasOwnProperty(s)){var i=Si[s],a=XX(e,i);a<r&&(r=a,n=s)}return n};Pe.keyword.rgb=function(e){return Si[e]};Pe.rgb.xyz=function(e){var t=e[0]/255,r=e[1]/255,n=e[2]/255;t=t>.04045?Math.pow((t+.055)/1.055,2.4):t/12.92,r=r>.04045?Math.pow((r+.055)/1.055,2.4):r/12.92,n=n>.04045?Math.pow((n+.055)/1.055,2.4):n/12.92;var s=t*.4124+r*.3576+n*.1805,i=t*.2126+r*.7152+n*.0722,a=t*.0193+r*.1192+n*.9505;return[s*100,i*100,a*100]};Pe.rgb.lab=function(e){var t=Pe.rgb.xyz(e),r=t[0],n=t[1],s=t[2],i,a,o;return r/=95.047,n/=100,s/=108.883,r=r>.008856?Math.pow(r,1/3):7.787*r+16/116,n=n>.008856?Math.pow(n,1/3):7.787*n+16/116,s=s>.008856?Math.pow(s,1/3):7.787*s+16/116,i=116*n-16,a=500*(r-n),o=200*(n-s),[i,a,o]};Pe.hsl.rgb=function(e){var t=e[0]/360,r=e[1]/100,n=e[2]/100,s,i,a,o,l;if(r===0)return l=n*255,[l,l,l];n<.5?i=n*(1+r):i=n+r-n*r,s=2*n-i,o=[0,0,0];for(var u=0;u<3;u++)a=t+1/3*-(u-1),a<0&&a++,a>1&&a--,6*a<1?l=s+(i-s)*6*a:2*a<1?l=i:3*a<2?l=s+(i-s)*(2/3-a)*6:l=s,o[u]=l*255;return o};Pe.hsl.hsv=function(e){var t=e[0],r=e[1]/100,n=e[2]/100,s=r,i=Math.max(n,.01),a,o;return n*=2,r*=n<=1?n:2-n,s*=i<=1?i:2-i,o=(n+r)/2,a=n===0?2*s/(i+s):2*r/(n+r),[t,a*100,o*100]};Pe.hsv.rgb=function(e){var t=e[0]/60,r=e[1]/100,n=e[2]/100,s=Math.floor(t)%6,i=t-Math.floor(t),a=255*n*(1-r),o=255*n*(1-r*i),l=255*n*(1-r*(1-i));switch(n*=255,s){case 0:return[n,l,a];case 1:return[o,n,a];case 2:return[a,n,l];case 3:return[a,o,n];case 4:return[l,a,n];case 5:return[n,a,o]}};Pe.hsv.hsl=function(e){var t=e[0],r=e[1]/100,n=e[2]/100,s=Math.max(n,.01),i,a,o;return o=(2-r)*n,i=(2-r)*s,a=r*s,a/=i<=1?i:2-i,a=a||0,o/=2,[t,a*100,o*100]};Pe.hwb.rgb=function(e){var t=e[0]/360,r=e[1]/100,n=e[2]/100,s=r+n,i,a,o,l;s>1&&(r/=s,n/=s),i=Math.floor(6*t),a=1-n,o=6*t-i,i&1&&(o=1-o),l=r+o*(a-r);var u,c,f;switch(i){default:case 6:case 0:u=a,c=l,f=r;break;case 1:u=l,c=a,f=r;break;case 2:u=r,c=a,f=l;break;case 3:u=r,c=l,f=a;break;case 4:u=l,c=r,f=a;break;case 5:u=a,c=r,f=l;break}return[u*255,c*255,f*255]};Pe.cmyk.rgb=function(e){var t=e[0]/100,r=e[1]/100,n=e[2]/100,s=e[3]/100,i,a,o;return i=1-Math.min(1,t*(1-s)+s),a=1-Math.min(1,r*(1-s)+s),o=1-Math.min(1,n*(1-s)+s),[i*255,a*255,o*255]};Pe.xyz.rgb=function(e){var t=e[0]/100,r=e[1]/100,n=e[2]/100,s,i,a;return s=t*3.2406+r*-1.5372+n*-.4986,i=t*-.9689+r*1.8758+n*.0415,a=t*.0557+r*-.204+n*1.057,s=s>.0031308?1.055*Math.pow(s,1/2.4)-.055:s*12.92,i=i>.0031308?1.055*Math.pow(i,1/2.4)-.055:i*12.92,a=a>.0031308?1.055*Math.pow(a,1/2.4)-.055:a*12.92,s=Math.min(Math.max(0,s),1),i=Math.min(Math.max(0,i),1),a=Math.min(Math.max(0,a),1),[s*255,i*255,a*255]};Pe.xyz.lab=function(e){var t=e[0],r=e[1],n=e[2],s,i,a;return t/=95.047,r/=100,n/=108.883,t=t>.008856?Math.pow(t,1/3):7.787*t+16/116,r=r>.008856?Math.pow(r,1/3):7.787*r+16/116,n=n>.008856?Math.pow(n,1/3):7.787*n+16/116,s=116*r-16,i=500*(t-r),a=200*(r-n),[s,i,a]};Pe.lab.xyz=function(e){var t=e[0],r=e[1],n=e[2],s,i,a;i=(t+16)/116,s=r/500+i,a=i-n/200;var o=Math.pow(i,3),l=Math.pow(s,3),u=Math.pow(a,3);return i=o>.008856?o:(i-16/116)/7.787,s=l>.008856?l:(s-16/116)/7.787,a=u>.008856?u:(a-16/116)/7.787,s*=95.047,i*=100,a*=108.883,[s,i,a]};Pe.lab.lch=function(e){var t=e[0],r=e[1],n=e[2],s,i,a;return s=Math.atan2(n,r),i=s*360/2/Math.PI,i<0&&(i+=360),a=Math.sqrt(r*r+n*n),[t,a,i]};Pe.lch.lab=function(e){var t=e[0],r=e[1],n=e[2],s,i,a;return a=n/360*2*Math.PI,s=r*Math.cos(a),i=r*Math.sin(a),[t,s,i]};Pe.rgb.ansi16=function(e){var t=e[0],r=e[1],n=e[2],s=1 in arguments?arguments[1]:Pe.rgb.hsv(e)[2];if(s=Math.round(s/50),s===0)return 30;var i=30+(Math.round(n/255)<<2|Math.round(r/255)<<1|Math.round(t/255));return s===2&&(i+=60),i};Pe.hsv.ansi16=function(e){return Pe.rgb.ansi16(Pe.hsv.rgb(e),e[2])};Pe.rgb.ansi256=function(e){var t=e[0],r=e[1],n=e[2];if(t===r&&r===n)return t<8?16:t>248?231:Math.round((t-8)/247*24)+232;var s=16+36*Math.round(t/255*5)+6*Math.round(r/255*5)+Math.round(n/255*5);return s};Pe.ansi16.rgb=function(e){var t=e%10;if(t===0||t===7)return e>50&&(t+=3.5),t=t/10.5*255,[t,t,t];var r=(~~(e>50)+1)*.5,n=(t&1)*r*255,s=(t>>1&1)*r*255,i=(t>>2&1)*r*255;return[n,s,i]};Pe.ansi256.rgb=function(e){if(e>=232){var t=(e-232)*10+8;return[t,t,t]}e-=16;var r,n=Math.floor(e/36)/5*255,s=Math.floor((r=e%36)/6)/5*255,i=r%6/5*255;return[n,s,i]};Pe.rgb.hex=function(e){var t=((Math.round(e[0])&255)<<16)+((Math.round(e[1])&255)<<8)+(Math.round(e[2])&255),r=t.toString(16).toUpperCase();return"000000".substring(r.length)+r};Pe.hex.rgb=function(e){var t=e.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!t)return[0,0,0];var r=t[0];t[0].length===3&&(r=r.split("").map(function(o){return o+o}).join(""));var n=parseInt(r,16),s=n>>16&255,i=n>>8&255,a=n&255;return[s,i,a]};Pe.rgb.hcg=function(e){var t=e[0]/255,r=e[1]/255,n=e[2]/255,s=Math.max(Math.max(t,r),n),i=Math.min(Math.min(t,r),n),a=s-i,o,l;return a<1?o=i/(1-a):o=0,a<=0?l=0:s===t?l=(r-n)/a%6:s===r?l=2+(n-t)/a:l=4+(t-r)/a+4,l/=6,l%=1,[l*360,a*100,o*100]};Pe.hsl.hcg=function(e){var t=e[1]/100,r=e[2]/100,n=1,s=0;return r<.5?n=2*t*r:n=2*t*(1-r),n<1&&(s=(r-.5*n)/(1-n)),[e[0],n*100,s*100]};Pe.hsv.hcg=function(e){var t=e[1]/100,r=e[2]/100,n=t*r,s=0;return n<1&&(s=(r-n)/(1-n)),[e[0],n*100,s*100]};Pe.hcg.rgb=function(e){var t=e[0]/360,r=e[1]/100,n=e[2]/100;if(r===0)return[n*255,n*255,n*255];var s=[0,0,0],i=t%1*6,a=i%1,o=1-a,l=0;switch(Math.floor(i)){case 0:s[0]=1,s[1]=a,s[2]=0;break;case 1:s[0]=o,s[1]=1,s[2]=0;break;case 2:s[0]=0,s[1]=1,s[2]=a;break;case 3:s[0]=0,s[1]=o,s[2]=1;break;case 4:s[0]=a,s[1]=0,s[2]=1;break;default:s[0]=1,s[1]=0,s[2]=o}return l=(1-r)*n,[(r*s[0]+l)*255,(r*s[1]+l)*255,(r*s[2]+l)*255]};Pe.hcg.hsv=function(e){var t=e[1]/100,r=e[2]/100,n=t+r*(1-t),s=0;return n>0&&(s=t/n),[e[0],s*100,n*100]};Pe.hcg.hsl=function(e){var t=e[1]/100,r=e[2]/100,n=r*(1-t)+.5*t,s=0;return n>0&&n<.5?s=t/(2*n):n>=.5&&n<1&&(s=t/(2*(1-n))),[e[0],s*100,n*100]};Pe.hcg.hwb=function(e){var t=e[1]/100,r=e[2]/100,n=t+r*(1-t);return[e[0],(n-t)*100,(1-n)*100]};Pe.hwb.hcg=function(e){var t=e[1]/100,r=e[2]/100,n=1-r,s=n-t,i=0;return s<1&&(i=(n-s)/(1-s)),[e[0],s*100,i*100]};Pe.apple.rgb=function(e){return[e[0]/65535*255,e[1]/65535*255,e[2]/65535*255]};Pe.rgb.apple=function(e){return[e[0]/255*65535,e[1]/255*65535,e[2]/255*65535]};Pe.gray.rgb=function(e){return[e[0]/100*255,e[0]/100*255,e[0]/100*255]};Pe.gray.hsl=Pe.gray.hsv=function(e){return[0,0,e[0]]};Pe.gray.hwb=function(e){return[0,100,e[0]]};Pe.gray.cmyk=function(e){return[0,0,0,e[0]]};Pe.gray.lab=function(e){return[e[0],0,0]};Pe.gray.hex=function(e){var t=Math.round(e[0]/100*255)&255,r=(t<<16)+(t<<8)+t,n=r.toString(16).toUpperCase();return"000000".substring(n.length)+n};Pe.rgb.gray=function(e){var t=(e[0]+e[1]+e[2])/3;return[t/255*100]}});var dx=E((LAe,px)=>{var ec=ly();function YX(){for(var e={},t=Object.keys(ec),r=t.length,n=0;n<r;n++)e[t[n]]={distance:-1,parent:null};return e}function JX(e){var t=YX(),r=[e];for(t[e].distance=0;r.length;)for(var n=r.pop(),s=Object.keys(ec[n]),i=s.length,a=0;a<i;a++){var o=s[a],l=t[o];l.distance===-1&&(l.distance=t[n].distance+1,l.parent=n,r.unshift(o))}return t}function zX(e,t){return function(r){return t(e(r))}}function QX(e,t){for(var r=[t[e].parent,e],n=ec[t[e].parent][e],s=t[e].parent;t[s].parent;)r.unshift(t[s].parent),n=zX(ec[t[s].parent][s],n),s=t[s].parent;return n.conversion=r,n}px.exports=function(e){for(var t=JX(e),r={},n=Object.keys(t),s=n.length,i=0;i<s;i++){var a=n[i],o=t[a];o.parent!==null&&(r[a]=QX(a,t))}return r}});var mx=E((RAe,hx)=>{var uy=ly(),ZX=dx(),Ta={},eY=Object.keys(uy);function tY(e){var t=function(r){return r==null?r:(arguments.length>1&&(r=Array.prototype.slice.call(arguments)),e(r))};return"conversion"in e&&(t.conversion=e.conversion),t}function rY(e){var t=function(r){if(r==null)return r;arguments.length>1&&(r=Array.prototype.slice.call(arguments));var n=e(r);if(typeof n=="object")for(var s=n.length,i=0;i<s;i++)n[i]=Math.round(n[i]);return n};return"conversion"in e&&(t.conversion=e.conversion),t}eY.forEach(function(e){Ta[e]={},Object.defineProperty(Ta[e],"channels",{value:uy[e].channels}),Object.defineProperty(Ta[e],"labels",{value:uy[e].labels});var t=ZX(e),r=Object.keys(t);r.forEach(function(n){var s=t[n];Ta[e][n]=rY(s),Ta[e][n].raw=tY(s)})});hx.exports=Ta});var gx=E((jAe,yx)=>{"use strict";var Sa=mx(),tc=(e,t)=>function(){return`\x1B[${e.apply(Sa,arguments)+t}m`},rc=(e,t)=>function(){let r=e.apply(Sa,arguments);return`\x1B[${38+t};5;${r}m`},nc=(e,t)=>function(){let r=e.apply(Sa,arguments);return`\x1B[${38+t};2;${r[0]};${r[1]};${r[2]}m`};function nY(){let e=new Map,t={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],gray:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}};t.color.grey=t.color.gray;for(let s of Object.keys(t)){let i=t[s];for(let a of Object.keys(i)){let o=i[a];t[a]={open:`\x1B[${o[0]}m`,close:`\x1B[${o[1]}m`},i[a]=t[a],e.set(o[0],o[1])}Object.defineProperty(t,s,{value:i,enumerable:!1}),Object.defineProperty(t,"codes",{value:e,enumerable:!1})}let r=s=>s,n=(s,i,a)=>[s,i,a];t.color.close="\x1B[39m",t.bgColor.close="\x1B[49m",t.color.ansi={ansi:tc(r,0)},t.color.ansi256={ansi256:rc(r,0)},t.color.ansi16m={rgb:nc(n,0)},t.bgColor.ansi={ansi:tc(r,10)},t.bgColor.ansi256={ansi256:rc(r,10)},t.bgColor.ansi16m={rgb:nc(n,10)};for(let s of Object.keys(Sa)){if(typeof Sa[s]!="object")continue;let i=Sa[s];s==="ansi16"&&(s="ansi"),"ansi16"in i&&(t.color.ansi[s]=tc(i.ansi16,0),t.bgColor.ansi[s]=tc(i.ansi16,10)),"ansi256"in i&&(t.color.ansi256[s]=rc(i.ansi256,0),t.bgColor.ansi256[s]=rc(i.ansi256,10)),"rgb"in i&&(t.color.ansi16m[s]=nc(i.rgb,0),t.bgColor.ansi16m[s]=nc(i.rgb,10))}return t}Object.defineProperty(yx,"exports",{enumerable:!0,get:nY})});var Ex=E((MAe,bx)=>{"use strict";bx.exports=(e,t)=>{t=t||process.argv;let r=e.startsWith("-")?"":e.length===1?"-":"--",n=t.indexOf(r+e),s=t.indexOf("--");return n!==-1&&(s===-1?!0:n<s)}});var Tx=E((qAe,vx)=>{"use strict";var sY=me("os"),Pn=Ex(),vr=process.env,xa;Pn("no-color")||Pn("no-colors")||Pn("color=false")?xa=!1:(Pn("color")||Pn("colors")||Pn("color=true")||Pn("color=always"))&&(xa=!0);"FORCE_COLOR"in vr&&(xa=vr.FORCE_COLOR.length===0||parseInt(vr.FORCE_COLOR,10)!==0);function iY(e){return e===0?!1:{level:e,hasBasic:!0,has256:e>=2,has16m:e>=3}}function aY(e){if(xa===!1)return 0;if(Pn("color=16m")||Pn("color=full")||Pn("color=truecolor"))return 3;if(Pn("color=256"))return 2;if(e&&!e.isTTY&&xa!==!0)return 0;let t=xa?1:0;if(process.platform==="win32"){let r=sY.release().split(".");return Number(process.versions.node.split(".")[0])>=8&&Number(r[0])>=10&&Number(r[2])>=10586?Number(r[2])>=14931?3:2:1}if("CI"in vr)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI"].some(r=>r in vr)||vr.CI_NAME==="codeship"?1:t;if("TEAMCITY_VERSION"in vr)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(vr.TEAMCITY_VERSION)?1:0;if(vr.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in vr){let r=parseInt((vr.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(vr.TERM_PROGRAM){case"iTerm.app":return r>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(vr.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(vr.TERM)||"COLORTERM"in vr?1:(vr.TERM==="dumb",t)}function cy(e){let t=aY(e);return iY(t)}vx.exports={supportsColor:cy,stdout:cy(process.stdout),stderr:cy(process.stderr)}});var Cx=E((UAe,Ax)=>{"use strict";var oY=/(?:\\(u[a-f\d]{4}|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi,Sx=/(?:^|\.)(\w+)(?:\(([^)]*)\))?/g,lY=/^(['"])((?:\\.|(?!\1)[^\\])*)\1$/,uY=/\\(u[a-f\d]{4}|x[a-f\d]{2}|.)|([^\\])/gi,cY=new Map([["n",`
|
|
20
|
+
`),cooked:i===null?null:i.slice(1,u)},o.tail=l,this.next();let f=this.finishNode(o,"TemplateElement");return this.resetEndLocation(f,Br(this.state.lastTokEndLoc,u)),f}parseTemplate(t){let r=this.startNode(),n=this.parseTemplateElement(t),s=[n],i=[];for(;!n.tail;)i.push(this.parseTemplateSubstitution()),this.readTemplateContinuation(),s.push(n=this.parseTemplateElement(t));return r.expressions=i,r.quasis=s,this.finishNode(r,"TemplateLiteral")}parseTemplateSubstitution(){return this.parseExpression()}parseObjectLike(t,r,n,s){n&&this.expectPlugin("recordAndTuple");let i=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!1;let a=Object.create(null),o=!0,l=this.startNode();for(l.properties=[],this.next();!this.match(t);){if(o)o=!1;else if(this.expect(12),this.match(t)){this.addTrailingCommaExtraToNode(l);break}let c;r?c=this.parseBindingProperty():(c=this.parsePropertyDefinition(s),this.checkProto(c,n,a,s)),n&&!this.isObjectProperty(c)&&c.type!=="SpreadElement"&&this.raise(I.InvalidRecordProperty,c),c.shorthand&&this.addExtra(c,"shorthand",!0),l.properties.push(c)}this.next(),this.state.inFSharpPipelineDirectBody=i;let u="ObjectExpression";return r?u="ObjectPattern":n&&(u="RecordExpression"),this.finishNode(l,u)}addTrailingCommaExtraToNode(t){this.addExtra(t,"trailingComma",this.state.lastTokStartLoc.index),this.addExtra(t,"trailingCommaLoc",this.state.lastTokStartLoc,!1)}maybeAsyncOrAccessorProp(t){return!t.computed&&t.key.type==="Identifier"&&(this.isLiteralPropertyName()||this.match(0)||this.match(55))}parsePropertyDefinition(t){let r=[];if(this.match(26))for(this.hasPlugin("decorators")&&this.raise(I.UnsupportedPropertyDecorator,this.state.startLoc);this.match(26);)r.push(this.parseDecorator());let n=this.startNode(),s=!1,i=!1,a;if(this.match(21))return r.length&&this.unexpected(),this.parseSpread();r.length&&(n.decorators=r,r=[]),n.method=!1,t&&(a=this.state.startLoc);let o=this.eat(55);this.parsePropertyNamePrefixOperator(n);let l=this.state.containsEsc;if(this.parsePropertyName(n,t),!o&&!l&&this.maybeAsyncOrAccessorProp(n)){let{key:u}=n,c=u.name;c==="async"&&!this.hasPrecedingLineBreak()&&(s=!0,this.resetPreviousNodeTrailingComments(u),o=this.eat(55),this.parsePropertyName(n)),(c==="get"||c==="set")&&(i=!0,this.resetPreviousNodeTrailingComments(u),n.kind=c,this.match(55)&&(o=!0,this.raise(I.AccessorIsGenerator,this.state.curPosition(),{kind:c}),this.next()),this.parsePropertyName(n))}return this.parseObjPropValue(n,a,o,s,!1,i,t)}getGetterSetterExpectedParamCount(t){return t.kind==="get"?0:1}getObjectOrClassMethodParams(t){return t.params}checkGetterSetterParams(t){var r;let n=this.getGetterSetterExpectedParamCount(t),s=this.getObjectOrClassMethodParams(t);s.length!==n&&this.raise(t.kind==="get"?I.BadGetterArity:I.BadSetterArity,t),t.kind==="set"&&((r=s[s.length-1])==null?void 0:r.type)==="RestElement"&&this.raise(I.BadSetterRestParameter,t)}parseObjectMethod(t,r,n,s,i){if(i){let a=this.parseMethod(t,r,!1,!1,!1,"ObjectMethod");return this.checkGetterSetterParams(a),a}if(n||r||this.match(10))return s&&this.unexpected(),t.kind="method",t.method=!0,this.parseMethod(t,r,n,!1,!1,"ObjectMethod")}parseObjectProperty(t,r,n,s){if(t.shorthand=!1,this.eat(14))return t.value=n?this.parseMaybeDefault(this.state.startLoc):this.parseMaybeAssignAllowIn(s),this.finishNode(t,"ObjectProperty");if(!t.computed&&t.key.type==="Identifier"){if(this.checkReservedWord(t.key.name,t.key.loc.start,!0,!1),n)t.value=this.parseMaybeDefault(r,cs(t.key));else if(this.match(29)){let i=this.state.startLoc;s!=null?s.shorthandAssignLoc===null&&(s.shorthandAssignLoc=i):this.raise(I.InvalidCoverInitializedName,i),t.value=this.parseMaybeDefault(r,cs(t.key))}else t.value=cs(t.key);return t.shorthand=!0,this.finishNode(t,"ObjectProperty")}}parseObjPropValue(t,r,n,s,i,a,o){let l=this.parseObjectMethod(t,n,s,i,a)||this.parseObjectProperty(t,r,i,o);return l||this.unexpected(),l}parsePropertyName(t,r){if(this.eat(0))t.computed=!0,t.key=this.parseMaybeAssignAllowIn(),this.expect(3);else{let{type:n,value:s}=this.state,i;if(xn(n))i=this.parseIdentifier(!0);else switch(n){case 134:i=this.parseNumericLiteral(s);break;case 133:i=this.parseStringLiteral(s);break;case 135:i=this.parseBigIntLiteral(s);break;case 136:i=this.parseDecimalLiteral(s);break;case 138:{let a=this.state.startLoc;r!=null?r.privateKeyLoc===null&&(r.privateKeyLoc=a):this.raise(I.UnexpectedPrivateField,a),i=this.parsePrivateName();break}default:this.unexpected()}t.key=i,n!==138&&(t.computed=!1)}}initFunction(t,r){t.id=null,t.generator=!1,t.async=r}parseMethod(t,r,n,s,i,a,o=!1){this.initFunction(t,n),t.generator=r,this.scope.enter(18|(o?64:0)|(i?32:0)),this.prodParam.enter(Ku(n,t.generator)),this.parseFunctionParams(t,s);let l=this.parseFunctionBodyAndFinish(t,a,!0);return this.prodParam.exit(),this.scope.exit(),l}parseArrayLike(t,r,n,s){n&&this.expectPlugin("recordAndTuple");let i=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!1;let a=this.startNode();return this.next(),a.elements=this.parseExprList(t,!n,s,a),this.state.inFSharpPipelineDirectBody=i,this.finishNode(a,n?"TupleExpression":"ArrayExpression")}parseArrowExpression(t,r,n,s){this.scope.enter(6);let i=Ku(n,!1);!this.match(5)&&this.prodParam.hasIn&&(i|=8),this.prodParam.enter(i),this.initFunction(t,n);let a=this.state.maybeInArrowParameters;return r&&(this.state.maybeInArrowParameters=!0,this.setArrowFunctionParameters(t,r,s)),this.state.maybeInArrowParameters=!1,this.parseFunctionBody(t,!0),this.prodParam.exit(),this.scope.exit(),this.state.maybeInArrowParameters=a,this.finishNode(t,"ArrowFunctionExpression")}setArrowFunctionParameters(t,r,n){this.toAssignableList(r,n,!1),t.params=r}parseFunctionBodyAndFinish(t,r,n=!1){return this.parseFunctionBody(t,!1,n),this.finishNode(t,r)}parseFunctionBody(t,r,n=!1){let s=r&&!this.match(5);if(this.expressionScope.enter(JS()),s)t.body=this.parseMaybeAssign(),this.checkParams(t,!1,r,!1);else{let i=this.state.strict,a=this.state.labels;this.state.labels=[],this.prodParam.enter(this.prodParam.currentFlags()|4),t.body=this.parseBlock(!0,!1,o=>{let l=!this.isSimpleParamList(t.params);o&&l&&this.raise(I.IllegalLanguageModeDirective,(t.kind==="method"||t.kind==="constructor")&&t.key?t.key.loc.end:t);let u=!i&&this.state.strict;this.checkParams(t,!this.state.strict&&!r&&!n&&!l,r,u),this.state.strict&&t.id&&this.checkIdentifier(t.id,65,u)}),this.prodParam.exit(),this.state.labels=a}this.expressionScope.exit()}isSimpleParameter(t){return t.type==="Identifier"}isSimpleParamList(t){for(let r=0,n=t.length;r<n;r++)if(!this.isSimpleParameter(t[r]))return!1;return!0}checkParams(t,r,n,s=!0){let i=!r&&new Set,a={type:"FormalParameters"};for(let o of t.params)this.checkLVal(o,a,5,i,s)}parseExprList(t,r,n,s){let i=[],a=!0;for(;!this.eat(t);){if(a)a=!1;else if(this.expect(12),this.match(t)){s&&this.addTrailingCommaExtraToNode(s),this.next();break}i.push(this.parseExprListItem(r,n))}return i}parseExprListItem(t,r,n){let s;if(this.match(12))t||this.raise(I.UnexpectedToken,this.state.curPosition(),{unexpected:","}),s=null;else if(this.match(21)){let i=this.state.startLoc;s=this.parseParenItem(this.parseSpread(r),i)}else if(this.match(17)){this.expectPlugin("partialApplication"),n||this.raise(I.UnexpectedArgumentPlaceholder,this.state.startLoc);let i=this.startNode();this.next(),s=this.finishNode(i,"ArgumentPlaceholder")}else s=this.parseMaybeAssignAllowIn(r,this.parseParenItem);return s}parseIdentifier(t){let r=this.startNode(),n=this.parseIdentifierName(t);return this.createIdentifier(r,n)}createIdentifier(t,r){return t.name=r,t.loc.identifierName=r,this.finishNode(t,"Identifier")}parseIdentifierName(t){let r,{startLoc:n,type:s}=this.state;xn(s)?r=this.state.value:this.unexpected();let i=jH(s);return t?i&&this.replaceToken(132):this.checkReservedWord(r,n,i,!1),this.next(),r}checkReservedWord(t,r,n,s){if(t.length>10||!nX(t))return;if(n&&eX(t)){this.raise(I.UnexpectedKeyword,r,{keyword:t});return}if((this.state.strict?s?GS:WS:$S)(t,this.inModule)){this.raise(I.UnexpectedReservedWord,r,{reservedWord:t});return}else if(t==="yield"){if(this.prodParam.hasYield){this.raise(I.YieldBindingIdentifier,r);return}}else if(t==="await"){if(this.prodParam.hasAwait){this.raise(I.AwaitBindingIdentifier,r);return}if(this.scope.inStaticBlock){this.raise(I.AwaitBindingIdentifierInStaticBlock,r);return}this.expressionScope.recordAsyncArrowParametersError(r)}else if(t==="arguments"&&this.scope.inClassAndNotInNonArrowFunction){this.raise(I.ArgumentsInClass,r);return}}recordAwaitIfAllowed(){let t=this.prodParam.hasAwait||this.options.allowAwaitOutsideFunction&&!this.scope.inFunction;return t&&!this.scope.inFunction&&(this.state.hasTopLevelAwait=!0),t}parseAwait(t){let r=this.startNodeAt(t);return this.expressionScope.recordParameterInitializerError(I.AwaitExpressionFormalParameter,r),this.eat(55)&&this.raise(I.ObsoleteAwaitStar,r),!this.scope.inFunction&&!this.options.allowAwaitOutsideFunction&&(this.isAmbiguousAwait()?this.ambiguousScriptDifferentAst=!0:this.sawUnambiguousESM=!0),this.state.soloAwait||(r.argument=this.parseMaybeUnary(null,!0)),this.finishNode(r,"AwaitExpression")}isAmbiguousAwait(){if(this.hasPrecedingLineBreak())return!0;let{type:t}=this.state;return t===53||t===10||t===0||Hu(t)||t===102&&!this.state.containsEsc||t===137||t===56||this.hasPlugin("v8intrinsic")&&t===54}parseYield(){let t=this.startNode();this.expressionScope.recordParameterInitializerError(I.YieldInParameter,t),this.next();let r=!1,n=null;if(!this.hasPrecedingLineBreak())switch(r=this.eat(55),this.state.type){case 13:case 139:case 8:case 11:case 3:case 9:case 14:case 12:if(!r)break;default:n=this.parseMaybeAssign()}return t.delegate=r,t.argument=n,this.finishNode(t,"YieldExpression")}parseImportCall(t){return this.next(),t.source=this.parseMaybeAssignAllowIn(),(this.hasPlugin("importAttributes")||this.hasPlugin("importAssertions"))&&(t.options=null),this.eat(12)&&(this.expectImportAttributesPlugin(),this.match(11)||(t.options=this.parseMaybeAssignAllowIn(),this.eat(12))),this.expect(11),this.finishNode(t,"ImportExpression")}checkPipelineAtInfixOperator(t,r){this.hasPlugin(["pipelineOperator",{proposal:"smart"}])&&t.type==="SequenceExpression"&&this.raise(I.PipelineHeadSequenceExpression,r)}parseSmartPipelineBodyInStyle(t,r){if(this.isSimpleReference(t)){let n=this.startNodeAt(r);return n.callee=t,this.finishNode(n,"PipelineBareFunction")}else{let n=this.startNodeAt(r);return this.checkSmartPipeTopicBodyEarlyErrors(r),n.expression=t,this.finishNode(n,"PipelineTopicExpression")}}isSimpleReference(t){switch(t.type){case"MemberExpression":return!t.computed&&this.isSimpleReference(t.object);case"Identifier":return!0;default:return!1}}checkSmartPipeTopicBodyEarlyErrors(t){if(this.match(19))throw this.raise(I.PipelineBodyNoArrow,this.state.startLoc);this.topicReferenceWasUsedInCurrentContext()||this.raise(I.PipelineTopicUnused,t)}withTopicBindingContext(t){let r=this.state.topicContext;this.state.topicContext={maxNumOfResolvableTopics:1,maxTopicIndex:null};try{return t()}finally{this.state.topicContext=r}}withSmartMixTopicForbiddingContext(t){if(this.hasPlugin(["pipelineOperator",{proposal:"smart"}])){let r=this.state.topicContext;this.state.topicContext={maxNumOfResolvableTopics:0,maxTopicIndex:null};try{return t()}finally{this.state.topicContext=r}}else return t()}withSoloAwaitPermittingContext(t){let r=this.state.soloAwait;this.state.soloAwait=!0;try{return t()}finally{this.state.soloAwait=r}}allowInAnd(t){let r=this.prodParam.currentFlags();if(8&~r){this.prodParam.enter(r|8);try{return t()}finally{this.prodParam.exit()}}return t()}disallowInAnd(t){let r=this.prodParam.currentFlags();if(8&r){this.prodParam.enter(r&-9);try{return t()}finally{this.prodParam.exit()}}return t()}registerTopicReference(){this.state.topicContext.maxTopicIndex=0}topicReferenceIsAllowedInCurrentContext(){return this.state.topicContext.maxNumOfResolvableTopics>=1}topicReferenceWasUsedInCurrentContext(){return this.state.topicContext.maxTopicIndex!=null&&this.state.topicContext.maxTopicIndex>=0}parseFSharpPipelineBody(t){let r=this.state.startLoc;this.state.potentialArrowAt=this.state.start;let n=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!0;let s=this.parseExprOp(this.parseMaybeUnaryOrPrivate(),r,t);return this.state.inFSharpPipelineDirectBody=n,s}parseModuleExpression(){this.expectPlugin("moduleBlocks");let t=this.startNode();this.next(),this.match(5)||this.unexpected(null,5);let r=this.startNodeAt(this.state.endLoc);this.next();let n=this.initializeScopes(!0);this.enterInitialScopes();try{t.body=this.parseProgram(r,8,"module")}finally{n()}return this.finishNode(t,"ModuleExpression")}parsePropertyNamePrefixOperator(t){}},Dm={kind:1},LX={kind:2},RX=/[\uD800-\uDFFF]/u,Im=/in(?:stanceof)?/y;function jX(e,t){for(let r=0;r<e.length;r++){let n=e[r],{type:s}=n;if(typeof s=="number"){{if(s===138){let{loc:i,start:a,value:o,end:l}=n,u=a+1,c=Br(i.start,1);e.splice(r,1,new qn({type:as(27),value:"#",start:a,end:u,startLoc:i.start,endLoc:c}),new qn({type:as(132),value:o,start:u,end:l,startLoc:c,endLoc:i.end})),r++;continue}if(Hu(s)){let{loc:i,start:a,value:o,end:l}=n,u=a+1,c=Br(i.start,1),f;t.charCodeAt(a)===96?f=new qn({type:as(22),value:"`",start:a,end:u,startLoc:i.start,endLoc:c}):f=new qn({type:as(8),value:"}",start:a,end:u,startLoc:i.start,endLoc:c});let p,h,b,d;s===24?(h=l-1,b=Br(i.end,-1),p=o===null?null:o.slice(1,-1),d=new qn({type:as(22),value:"`",start:h,end:l,startLoc:b,endLoc:i.end})):(h=l-2,b=Br(i.end,-2),p=o===null?null:o.slice(1,-2),d=new qn({type:as(23),value:"${",start:h,end:l,startLoc:b,endLoc:i.end})),e.splice(r,1,f,new qn({type:as(20),value:p,start:u,end:h,startLoc:c,endLoc:b}),d),r+=2;continue}}n.type=as(s)}}return e}var Ym=class extends Xm{parseTopLevel(t,r){return t.program=this.parseProgram(r),t.comments=this.comments,this.options.tokens&&(t.tokens=jX(this.tokens,this.input)),this.finishNode(t,"File")}parseProgram(t,r=139,n=this.options.sourceType){if(t.sourceType=n,t.interpreter=this.parseInterpreterDirective(),this.parseBlockBody(t,!0,!0,r),this.inModule){if(!this.options.allowUndeclaredExports&&this.scope.undefinedExports.size>0)for(let[i,a]of Array.from(this.scope.undefinedExports))this.raise(I.ModuleExportUndefined,a,{localName:i});this.addExtra(t,"topLevelAwait",this.state.hasTopLevelAwait)}let s;return r===139?s=this.finishNode(t,"Program"):s=this.finishNodeAt(t,"Program",Br(this.state.startLoc,-1)),s}stmtToDirective(t){let r=t;r.type="Directive",r.value=r.expression,delete r.expression;let n=r.value,s=n.value,i=this.input.slice(n.start,n.end),a=n.value=i.slice(1,-1);return this.addExtra(n,"raw",i),this.addExtra(n,"rawValue",a),this.addExtra(n,"expressionValue",s),n.type="DirectiveLiteral",r}parseInterpreterDirective(){if(!this.match(28))return null;let t=this.startNode();return t.value=this.state.value,this.next(),this.finishNode(t,"InterpreterDirective")}isLet(){return this.isContextual(100)?this.hasFollowingBindingAtom():!1}chStartsBindingIdentifier(t,r){if(ls(t)){if(Im.lastIndex=r,Im.test(this.input)){let n=this.codePointAtPos(Im.lastIndex);if(!ma(n)&&n!==92)return!1}return!0}else return t===92}chStartsBindingPattern(t){return t===91||t===123}hasFollowingBindingAtom(){let t=this.nextTokenStart(),r=this.codePointAtPos(t);return this.chStartsBindingPattern(r)||this.chStartsBindingIdentifier(r,t)}hasInLineFollowingBindingIdentifierOrBrace(){let t=this.nextTokenInLineStart(),r=this.codePointAtPos(t);return r===123||this.chStartsBindingIdentifier(r,t)}startsUsingForOf(){let{type:t,containsEsc:r}=this.lookahead();if(t===102&&!r)return!1;if(ht(t)&&!this.hasFollowingLineBreak())return this.expectPlugin("explicitResourceManagement"),!0}startsAwaitUsing(){let t=this.nextTokenInLineStart();if(this.isUnparsedContextual(t,"using")){t=this.nextTokenInLineStartSince(t+5);let r=this.codePointAtPos(t);if(this.chStartsBindingIdentifier(r,t))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(t=!1){let r=0;return this.options.annexB&&!this.state.strict&&(r|=4,t&&(r|=8)),this.parseStatementLike(r)}parseStatement(){return this.parseStatementLike(0)}parseStatementLike(t){let r=null;return this.match(26)&&(r=this.parseDecorators(!0)),this.parseStatementContent(t,r)}parseStatementContent(t,r){let n=this.state.type,s=this.startNode(),i=!!(t&2),a=!!(t&4),o=t&1;switch(n){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(this.lookaheadCharCode()===46)break;return a||this.raise(this.state.strict?I.StrictFunction:this.options.annexB?I.SloppyFunctionAnnexB:I.SloppyFunction,this.state.startLoc),this.parseFunctionStatement(s,!1,!i&&a);case 80:return i||this.unexpected(),this.parseClass(this.maybeTakeDecorators(r,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.recordAwaitIfAllowed()?i||this.raise(I.UnexpectedLexicalDeclaration,s):this.raise(I.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(I.UnexpectedUsingDeclaration,this.state.startLoc):i||this.raise(I.UnexpectedLexicalDeclaration,this.state.startLoc),this.parseVarStatement(s,"using");case 100:{if(this.state.containsEsc)break;let c=this.nextTokenStart(),f=this.codePointAtPos(c);if(f!==91&&(!i&&this.hasFollowingLineBreak()||!this.chStartsBindingIdentifier(f,c)&&f!==123))break}case 75:i||this.raise(I.UnexpectedLexicalDeclaration,this.state.startLoc);case 74:{let c=this.state.value;return this.parseVarStatement(s,c)}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 c=this.lookaheadCharCode();if(c===40||c===46)break}case 82:{!this.options.allowImportExportEverywhere&&!o&&this.raise(I.UnexpectedImportExport,this.state.startLoc),this.next();let c;return n===83?(c=this.parseImport(s),c.type==="ImportDeclaration"&&(!c.importKind||c.importKind==="value")&&(this.sawUnambiguousESM=!0)):(c=this.parseExport(s,r),(c.type==="ExportNamedDeclaration"&&(!c.exportKind||c.exportKind==="value")||c.type==="ExportAllDeclaration"&&(!c.exportKind||c.exportKind==="value")||c.type==="ExportDefaultDeclaration")&&(this.sawUnambiguousESM=!0)),this.assertModuleNodeAllowed(c),c}default:if(this.isAsyncFunction())return i||this.raise(I.AsyncFunctionInSingleStatementContext,this.state.startLoc),this.next(),this.parseFunctionStatement(s,!0,!i&&a)}let l=this.state.value,u=this.parseExpression();return ht(n)&&u.type==="Identifier"&&this.eat(14)?this.parseLabeledStatement(s,l,u,t):this.parseExpressionStatement(s,u,r)}assertModuleNodeAllowed(t){!this.options.allowImportExportEverywhere&&!this.inModule&&this.raise(I.ImportOutsideModule,t)}decoratorsEnabledBeforeExport(){return this.hasPlugin("decorators-legacy")?!0:this.hasPlugin("decorators")&&this.getPluginOption("decorators","decoratorsBeforeExport")!==!1}maybeTakeDecorators(t,r,n){return t&&(r.decorators&&r.decorators.length>0?(typeof this.getPluginOption("decorators","decoratorsBeforeExport")!="boolean"&&this.raise(I.DecoratorsBeforeAfterExport,r.decorators[0]),r.decorators.unshift(...t)):r.decorators=t,this.resetStartLocationFromNode(r,t[0]),n&&this.resetStartLocationFromNode(n,r)),r}canHaveLeadingDecorator(){return this.match(80)}parseDecorators(t){let r=[];do r.push(this.parseDecorator());while(this.match(26));if(this.match(82))t||this.unexpected(),this.decoratorsEnabledBeforeExport()||this.raise(I.DecoratorExportClass,this.state.startLoc);else if(!this.canHaveLeadingDecorator())throw this.raise(I.UnexpectedLeadingDecorator,this.state.startLoc);return r}parseDecorator(){this.expectOnePlugin(["decorators","decorators-legacy"]);let t=this.startNode();if(this.next(),this.hasPlugin("decorators")){let r=this.state.startLoc,n;if(this.match(10)){let s=this.state.startLoc;this.next(),n=this.parseExpression(),this.expect(11),n=this.wrapParenthesis(s,n);let i=this.state.startLoc;t.expression=this.parseMaybeDecoratorArguments(n),this.getPluginOption("decorators","allowCallParenthesized")===!1&&t.expression!==n&&this.raise(I.DecoratorArgumentsOutsideParentheses,i)}else{for(n=this.parseIdentifier(!1);this.eat(16);){let s=this.startNodeAt(r);s.object=n,this.match(138)?(this.classScope.usePrivateName(this.state.value,this.state.startLoc),s.property=this.parsePrivateName()):s.property=this.parseIdentifier(!0),s.computed=!1,n=this.finishNode(s,"MemberExpression")}t.expression=this.parseMaybeDecoratorArguments(n)}}else t.expression=this.parseExprSubscripts();return this.finishNode(t,"Decorator")}parseMaybeDecoratorArguments(t){if(this.eat(10)){let r=this.startNodeAtNode(t);return r.callee=t,r.arguments=this.parseCallExpressionArguments(11,!1),this.toReferencedList(r.arguments),this.finishNode(r,"CallExpression")}return t}parseBreakContinueStatement(t,r){return this.next(),this.isLineTerminator()?t.label=null:(t.label=this.parseIdentifier(),this.semicolon()),this.verifyBreakContinue(t,r),this.finishNode(t,r?"BreakStatement":"ContinueStatement")}verifyBreakContinue(t,r){let n;for(n=0;n<this.state.labels.length;++n){let s=this.state.labels[n];if((t.label==null||s.name===t.label.name)&&(s.kind!=null&&(r||s.kind===1)||t.label&&r))break}if(n===this.state.labels.length){let s=r?"BreakStatement":"ContinueStatement";this.raise(I.IllegalBreakContinue,t,{type:s})}}parseDebuggerStatement(t){return this.next(),this.semicolon(),this.finishNode(t,"DebuggerStatement")}parseHeaderExpression(){this.expect(10);let t=this.parseExpression();return this.expect(11),t}parseDoWhileStatement(t){return this.next(),this.state.labels.push(Dm),t.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.state.labels.pop(),this.expect(92),t.test=this.parseHeaderExpression(),this.eat(13),this.finishNode(t,"DoWhileStatement")}parseForStatement(t){this.next(),this.state.labels.push(Dm);let r=null;if(this.isContextual(96)&&this.recordAwaitIfAllowed()&&(r=this.state.startLoc,this.next()),this.scope.enter(0),this.expect(10),this.match(13))return r!==null&&this.unexpected(r),this.parseFor(t,null);let n=this.isContextual(100);{let l=this.isContextual(96)&&this.startsAwaitUsing(),u=l||this.isContextual(107)&&this.startsUsingForOf(),c=n&&this.hasFollowingBindingAtom()||u;if(this.match(74)||this.match(75)||c){let f=this.startNode(),p;l?(p="await using",this.recordAwaitIfAllowed()||this.raise(I.AwaitUsingNotInAsyncContext,this.state.startLoc),this.next()):p=this.state.value,this.next(),this.parseVar(f,!0,p);let h=this.finishNode(f,"VariableDeclaration"),b=this.match(58);return b&&u&&this.raise(I.ForInUsing,h),(b||this.isContextual(102))&&h.declarations.length===1?this.parseForIn(t,h,r):(r!==null&&this.unexpected(r),this.parseFor(t,h))}}let s=this.isContextual(95),i=new ga,a=this.parseExpression(!0,i),o=this.isContextual(102);if(o&&(n&&this.raise(I.ForOfLet,a),r===null&&s&&a.type==="Identifier"&&this.raise(I.ForOfAsync,a)),o||this.match(58)){this.checkDestructuringPrivate(i),this.toAssignable(a,!0);let l=o?"ForOfStatement":"ForInStatement";return this.checkLVal(a,{type:l}),this.parseForIn(t,a,r)}else this.checkExpressionErrors(i,!0);return r!==null&&this.unexpected(r),this.parseFor(t,a)}parseFunctionStatement(t,r,n){return this.next(),this.parseFunction(t,1|(n?2:0)|(r?8:0))}parseIfStatement(t){return this.next(),t.test=this.parseHeaderExpression(),t.consequent=this.parseStatementOrSloppyAnnexBFunctionDeclaration(),t.alternate=this.eat(66)?this.parseStatementOrSloppyAnnexBFunctionDeclaration():null,this.finishNode(t,"IfStatement")}parseReturnStatement(t){return!this.prodParam.hasReturn&&!this.options.allowReturnOutsideFunction&&this.raise(I.IllegalReturn,this.state.startLoc),this.next(),this.isLineTerminator()?t.argument=null:(t.argument=this.parseExpression(),this.semicolon()),this.finishNode(t,"ReturnStatement")}parseSwitchStatement(t){this.next(),t.discriminant=this.parseHeaderExpression();let r=t.cases=[];this.expect(5),this.state.labels.push(LX),this.scope.enter(0);let n;for(let s;!this.match(8);)if(this.match(61)||this.match(65)){let i=this.match(61);n&&this.finishNode(n,"SwitchCase"),r.push(n=this.startNode()),n.consequent=[],this.next(),i?n.test=this.parseExpression():(s&&this.raise(I.MultipleDefaultsInSwitch,this.state.lastTokStartLoc),s=!0,n.test=null),this.expect(14)}else n?n.consequent.push(this.parseStatementListItem()):this.unexpected();return this.scope.exit(),n&&this.finishNode(n,"SwitchCase"),this.next(),this.state.labels.pop(),this.finishNode(t,"SwitchStatement")}parseThrowStatement(t){return this.next(),this.hasPrecedingLineBreak()&&this.raise(I.NewlineAfterThrow,this.state.lastTokEndLoc),t.argument=this.parseExpression(),this.semicolon(),this.finishNode(t,"ThrowStatement")}parseCatchClauseParam(){let t=this.parseBindingAtom();return this.scope.enter(this.options.annexB&&t.type==="Identifier"?8:0),this.checkLVal(t,{type:"CatchClause"},9),t}parseTryStatement(t){if(this.next(),t.block=this.parseBlock(),t.handler=null,this.match(62)){let r=this.startNode();this.next(),this.match(10)?(this.expect(10),r.param=this.parseCatchClauseParam(),this.expect(11)):(r.param=null,this.scope.enter(0)),r.body=this.withSmartMixTopicForbiddingContext(()=>this.parseBlock(!1,!1)),this.scope.exit(),t.handler=this.finishNode(r,"CatchClause")}return t.finalizer=this.eat(67)?this.parseBlock():null,!t.handler&&!t.finalizer&&this.raise(I.NoCatchOrFinally,t),this.finishNode(t,"TryStatement")}parseVarStatement(t,r,n=!1){return this.next(),this.parseVar(t,!1,r,n),this.semicolon(),this.finishNode(t,"VariableDeclaration")}parseWhileStatement(t){return this.next(),t.test=this.parseHeaderExpression(),this.state.labels.push(Dm),t.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.state.labels.pop(),this.finishNode(t,"WhileStatement")}parseWithStatement(t){return this.state.strict&&this.raise(I.StrictWith,this.state.startLoc),this.next(),t.object=this.parseHeaderExpression(),t.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.finishNode(t,"WithStatement")}parseEmptyStatement(t){return this.next(),this.finishNode(t,"EmptyStatement")}parseLabeledStatement(t,r,n,s){for(let a of this.state.labels)a.name===r&&this.raise(I.LabelRedeclaration,n,{labelName:r});let i=UH(this.state.type)?1:this.match(71)?2:null;for(let a=this.state.labels.length-1;a>=0;a--){let o=this.state.labels[a];if(o.statementStart===t.start)o.statementStart=this.state.start,o.kind=i;else break}return this.state.labels.push({name:r,kind:i,statementStart:this.state.start}),t.body=s&8?this.parseStatementOrSloppyAnnexBFunctionDeclaration(!0):this.parseStatement(),this.state.labels.pop(),t.label=n,this.finishNode(t,"LabeledStatement")}parseExpressionStatement(t,r,n){return t.expression=r,this.semicolon(),this.finishNode(t,"ExpressionStatement")}parseBlock(t=!1,r=!0,n){let s=this.startNode();return t&&this.state.strictErrors.clear(),this.expect(5),r&&this.scope.enter(0),this.parseBlockBody(s,t,!1,8,n),r&&this.scope.exit(),this.finishNode(s,"BlockStatement")}isValidDirective(t){return t.type==="ExpressionStatement"&&t.expression.type==="StringLiteral"&&!t.expression.extra.parenthesized}parseBlockBody(t,r,n,s,i){let a=t.body=[],o=t.directives=[];this.parseBlockOrModuleBlockBody(a,r?o:void 0,n,s,i)}parseBlockOrModuleBlockBody(t,r,n,s,i){let a=this.state.strict,o=!1,l=!1;for(;!this.match(s);){let u=n?this.parseModuleItem():this.parseStatementListItem();if(r&&!l){if(this.isValidDirective(u)){let c=this.stmtToDirective(u);r.push(c),!o&&c.value.value==="use strict"&&(o=!0,this.setStrict(!0));continue}l=!0,this.state.strictErrors.clear()}t.push(u)}i?.call(this,o),a||this.setStrict(!1),this.next()}parseFor(t,r){return t.init=r,this.semicolon(!1),t.test=this.match(13)?null:this.parseExpression(),this.semicolon(!1),t.update=this.match(11)?null:this.parseExpression(),this.expect(11),t.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.scope.exit(),this.state.labels.pop(),this.finishNode(t,"ForStatement")}parseForIn(t,r,n){let s=this.match(58);return this.next(),s?n!==null&&this.unexpected(n):t.await=n!==null,r.type==="VariableDeclaration"&&r.declarations[0].init!=null&&(!s||!this.options.annexB||this.state.strict||r.kind!=="var"||r.declarations[0].id.type!=="Identifier")&&this.raise(I.ForInOfLoopInitializer,r,{type:s?"ForInStatement":"ForOfStatement"}),r.type==="AssignmentPattern"&&this.raise(I.InvalidLhs,r,{ancestor:{type:"ForStatement"}}),t.left=r,t.right=s?this.parseExpression():this.parseMaybeAssignAllowIn(),this.expect(11),t.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.scope.exit(),this.state.labels.pop(),this.finishNode(t,s?"ForInStatement":"ForOfStatement")}parseVar(t,r,n,s=!1){let i=t.declarations=[];for(t.kind=n;;){let a=this.startNode();if(this.parseVarId(a,n),a.init=this.eat(29)?r?this.parseMaybeAssignDisallowIn():this.parseMaybeAssignAllowIn():null,a.init===null&&!s&&(a.id.type!=="Identifier"&&!(r&&(this.match(58)||this.isContextual(102)))?this.raise(I.DeclarationMissingInitializer,this.state.lastTokEndLoc,{kind:"destructuring"}):(n==="const"||n==="using"||n==="await using")&&!(this.match(58)||this.isContextual(102))&&this.raise(I.DeclarationMissingInitializer,this.state.lastTokEndLoc,{kind:n})),i.push(this.finishNode(a,"VariableDeclarator")),!this.eat(12))break}return t}parseVarId(t,r){let n=this.parseBindingAtom();(r==="using"||r==="await using")&&(n.type==="ArrayPattern"||n.type==="ObjectPattern")&&this.raise(I.UsingDeclarationHasBindingPattern,n.loc.start),this.checkLVal(n,{type:"VariableDeclarator"},r==="var"?5:8201),t.id=n}parseAsyncFunctionExpression(t){return this.parseFunction(t,8)}parseFunction(t,r=0){let n=r&2,s=!!(r&1),i=s&&!(r&4),a=!!(r&8);this.initFunction(t,a),this.match(55)&&(n&&this.raise(I.GeneratorInSingleStatementContext,this.state.startLoc),this.next(),t.generator=!0),s&&(t.id=this.parseFunctionId(i));let o=this.state.maybeInArrowParameters;return this.state.maybeInArrowParameters=!1,this.scope.enter(2),this.prodParam.enter(Ku(a,t.generator)),s||(t.id=this.parseFunctionId()),this.parseFunctionParams(t,!1),this.withSmartMixTopicForbiddingContext(()=>{this.parseFunctionBodyAndFinish(t,s?"FunctionDeclaration":"FunctionExpression")}),this.prodParam.exit(),this.scope.exit(),s&&!n&&this.registerFunctionStatementId(t),this.state.maybeInArrowParameters=o,t}parseFunctionId(t){return t||ht(this.state.type)?this.parseIdentifier():null}parseFunctionParams(t,r){this.expect(10),this.expressionScope.enter(fX()),t.params=this.parseBindingList(11,41,2|(r?4:0)),this.expressionScope.exit()}registerFunctionStatementId(t){t.id&&this.scope.declareName(t.id.name,!this.options.annexB||this.state.strict||t.generator||t.async?this.scope.treatFunctionsAsVar?5:8201:17,t.id.loc.start)}parseClass(t,r,n){this.next();let s=this.state.strict;return this.state.strict=!0,this.parseClassId(t,r,n),this.parseClassSuper(t),t.body=this.parseClassBody(!!t.superClass,s),this.finishNode(t,r?"ClassDeclaration":"ClassExpression")}isClassProperty(){return this.match(29)||this.match(13)||this.match(8)}isClassMethod(){return this.match(10)}nameIsConstructor(t){return t.type==="Identifier"&&t.name==="constructor"||t.type==="StringLiteral"&&t.value==="constructor"}isNonstaticConstructor(t){return!t.computed&&!t.static&&this.nameIsConstructor(t.key)}parseClassBody(t,r){this.classScope.enter();let n={hadConstructor:!1,hadSuperClass:t},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(I.DecoratorSemicolon,this.state.lastTokEndLoc);continue}if(this.match(26)){s.push(this.parseDecorator());continue}let a=this.startNode();s.length&&(a.decorators=s,this.resetStartLocationFromNode(a,s[0]),s=[]),this.parseClassMember(i,a,n),a.kind==="constructor"&&a.decorators&&a.decorators.length>0&&this.raise(I.DecoratorConstructor,a)}}),this.state.strict=r,this.next(),s.length)throw this.raise(I.TrailingDecorator,this.state.startLoc);return this.classScope.exit(),this.finishNode(i,"ClassBody")}parseClassMemberFromModifier(t,r){let n=this.parseIdentifier(!0);if(this.isClassMethod()){let s=r;return s.kind="method",s.computed=!1,s.key=n,s.static=!1,this.pushClassMethod(t,s,!1,!1,!1,!1),!0}else if(this.isClassProperty()){let s=r;return s.computed=!1,s.key=n,s.static=!1,t.body.push(this.parseClassProperty(s)),!0}return this.resetPreviousNodeTrailingComments(n),!1}parseClassMember(t,r,n){let s=this.isContextual(106);if(s){if(this.parseClassMemberFromModifier(t,r))return;if(this.eat(5)){this.parseClassStaticBlock(t,r);return}}this.parseClassMemberWithIsStatic(t,r,n,s)}parseClassMemberWithIsStatic(t,r,n,s){let i=r,a=r,o=r,l=r,u=r,c=i,f=i;if(r.static=s,this.parsePropertyNamePrefixOperator(r),this.eat(55)){c.kind="method";let P=this.match(138);if(this.parseClassElementName(c),P){this.pushClassPrivateMethod(t,a,!0,!1);return}this.isNonstaticConstructor(i)&&this.raise(I.ConstructorIsGenerator,i.key),this.pushClassMethod(t,i,!0,!1,!1,!1);return}let p=!this.state.containsEsc&&ht(this.state.type),h=this.parseClassElementName(r),b=p?h.name:null,d=this.isPrivateName(h),y=this.state.startLoc;if(this.parsePostMemberNameModifiers(f),this.isClassMethod()){if(c.kind="method",d){this.pushClassPrivateMethod(t,a,!1,!1);return}let P=this.isNonstaticConstructor(i),D=!1;P&&(i.kind="constructor",n.hadConstructor&&!this.hasPlugin("typescript")&&this.raise(I.DuplicateConstructor,h),P&&this.hasPlugin("typescript")&&r.override&&this.raise(I.OverrideOnConstructor,h),n.hadConstructor=!0,D=n.hadSuperClass),this.pushClassMethod(t,i,!1,!1,P,D)}else if(this.isClassProperty())d?this.pushClassPrivateProperty(t,l):this.pushClassProperty(t,o);else if(b==="async"&&!this.isLineTerminator()){this.resetPreviousNodeTrailingComments(h);let P=this.eat(55);f.optional&&this.unexpected(y),c.kind="method";let D=this.match(138);this.parseClassElementName(c),this.parsePostMemberNameModifiers(f),D?this.pushClassPrivateMethod(t,a,P,!0):(this.isNonstaticConstructor(i)&&this.raise(I.ConstructorIsAsync,i.key),this.pushClassMethod(t,i,P,!0,!1,!1))}else if((b==="get"||b==="set")&&!(this.match(55)&&this.isLineTerminator())){this.resetPreviousNodeTrailingComments(h),c.kind=b;let P=this.match(138);this.parseClassElementName(i),P?this.pushClassPrivateMethod(t,a,!1,!1):(this.isNonstaticConstructor(i)&&this.raise(I.ConstructorIsAccessor,i.key),this.pushClassMethod(t,i,!1,!1,!1,!1)),this.checkGetterSetterParams(i)}else if(b==="accessor"&&!this.isLineTerminator()){this.expectPlugin("decoratorAutoAccessors"),this.resetPreviousNodeTrailingComments(h);let P=this.match(138);this.parseClassElementName(o),this.pushClassAccessorProperty(t,u,P)}else this.isLineTerminator()?d?this.pushClassPrivateProperty(t,l):this.pushClassProperty(t,o):this.unexpected()}parseClassElementName(t){let{type:r,value:n}=this.state;if((r===132||r===133)&&t.static&&n==="prototype"&&this.raise(I.StaticPrototype,this.state.startLoc),r===138){n==="constructor"&&this.raise(I.ConstructorClassPrivateField,this.state.startLoc);let s=this.parsePrivateName();return t.key=s,s}return this.parsePropertyName(t),t.key}parseClassStaticBlock(t,r){var n;this.scope.enter(208);let s=this.state.labels;this.state.labels=[],this.prodParam.enter(0);let i=r.body=[];this.parseBlockOrModuleBlockBody(i,void 0,!1,8),this.prodParam.exit(),this.scope.exit(),this.state.labels=s,t.body.push(this.finishNode(r,"StaticBlock")),(n=r.decorators)!=null&&n.length&&this.raise(I.DecoratorStaticBlock,r)}pushClassProperty(t,r){!r.computed&&this.nameIsConstructor(r.key)&&this.raise(I.ConstructorClassField,r.key),t.body.push(this.parseClassProperty(r))}pushClassPrivateProperty(t,r){let n=this.parseClassPrivateProperty(r);t.body.push(n),this.classScope.declarePrivateName(this.getPrivateNameSV(n.key),0,n.key.loc.start)}pushClassAccessorProperty(t,r,n){!n&&!r.computed&&this.nameIsConstructor(r.key)&&this.raise(I.ConstructorClassField,r.key);let s=this.parseClassAccessorProperty(r);t.body.push(s),n&&this.classScope.declarePrivateName(this.getPrivateNameSV(s.key),0,s.key.loc.start)}pushClassMethod(t,r,n,s,i,a){t.body.push(this.parseMethod(r,n,s,i,a,"ClassMethod",!0))}pushClassPrivateMethod(t,r,n,s){let i=this.parseMethod(r,n,s,!1,!1,"ClassPrivateMethod",!0);t.body.push(i);let a=i.kind==="get"?i.static?6:2:i.kind==="set"?i.static?5:1:0;this.declareClassPrivateMethodInScope(i,a)}declareClassPrivateMethodInScope(t,r){this.classScope.declarePrivateName(this.getPrivateNameSV(t.key),r,t.key.loc.start)}parsePostMemberNameModifiers(t){}parseClassPrivateProperty(t){return this.parseInitializer(t),this.semicolon(),this.finishNode(t,"ClassPrivateProperty")}parseClassProperty(t){return this.parseInitializer(t),this.semicolon(),this.finishNode(t,"ClassProperty")}parseClassAccessorProperty(t){return this.parseInitializer(t),this.semicolon(),this.finishNode(t,"ClassAccessorProperty")}parseInitializer(t){this.scope.enter(80),this.expressionScope.enter(JS()),this.prodParam.enter(0),t.value=this.eat(29)?this.parseMaybeAssignAllowIn():null,this.expressionScope.exit(),this.prodParam.exit(),this.scope.exit()}parseClassId(t,r,n,s=8331){if(ht(this.state.type))t.id=this.parseIdentifier(),r&&this.declareNameFromIdentifier(t.id,s);else if(n||!r)t.id=null;else throw this.raise(I.MissingClassName,this.state.startLoc)}parseClassSuper(t){t.superClass=this.eat(81)?this.parseExprSubscripts():null}parseExport(t,r){let n=this.parseMaybeImportPhase(t,!0),s=this.maybeParseExportDefaultSpecifier(t,n),i=!s||this.eat(12),a=i&&this.eatExportStar(t),o=a&&this.maybeParseExportNamespaceSpecifier(t),l=i&&(!o||this.eat(12)),u=s||a;if(a&&!o){if(s&&this.unexpected(),r)throw this.raise(I.UnsupportedDecoratorExport,t);return this.parseExportFrom(t,!0),this.finishNode(t,"ExportAllDeclaration")}let c=this.maybeParseExportNamedSpecifiers(t);s&&i&&!a&&!c&&this.unexpected(null,5),o&&l&&this.unexpected(null,98);let f;if(u||c){if(f=!1,r)throw this.raise(I.UnsupportedDecoratorExport,t);this.parseExportFrom(t,u)}else f=this.maybeParseExportDeclaration(t);if(u||c||f){var p;let h=t;if(this.checkExport(h,!0,!1,!!h.source),((p=h.declaration)==null?void 0:p.type)==="ClassDeclaration")this.maybeTakeDecorators(r,h.declaration,h);else if(r)throw this.raise(I.UnsupportedDecoratorExport,t);return this.finishNode(h,"ExportNamedDeclaration")}if(this.eat(65)){let h=t,b=this.parseExportDefaultExpression();if(h.declaration=b,b.type==="ClassDeclaration")this.maybeTakeDecorators(r,b,h);else if(r)throw this.raise(I.UnsupportedDecoratorExport,t);return this.checkExport(h,!0,!0),this.finishNode(h,"ExportDefaultDeclaration")}this.unexpected(null,5)}eatExportStar(t){return this.eat(55)}maybeParseExportDefaultSpecifier(t,r){if(r||this.isExportDefaultSpecifier()){this.expectPlugin("exportDefaultFrom",r?.loc.start);let n=r||this.parseIdentifier(!0),s=this.startNodeAtNode(n);return s.exported=n,t.specifiers=[this.finishNode(s,"ExportDefaultSpecifier")],!0}return!1}maybeParseExportNamespaceSpecifier(t){if(this.isContextual(93)){var r,n;(n=(r=t).specifiers)!=null||(r.specifiers=[]);let s=this.startNodeAt(this.state.lastTokStartLoc);return this.next(),s.exported=this.parseModuleExportName(),t.specifiers.push(this.finishNode(s,"ExportNamespaceSpecifier")),!0}return!1}maybeParseExportNamedSpecifiers(t){if(this.match(5)){let r=t;r.specifiers||(r.specifiers=[]);let n=r.exportKind==="type";return r.specifiers.push(...this.parseExportSpecifiers(n)),r.source=null,r.declaration=null,this.hasPlugin("importAssertions")&&(r.assertions=[]),!0}return!1}maybeParseExportDeclaration(t){return this.shouldParseExportDeclaration()?(t.specifiers=[],t.source=null,this.hasPlugin("importAssertions")&&(t.assertions=[]),t.declaration=this.parseExportDeclaration(t),!0):!1}isAsyncFunction(){if(!this.isContextual(95))return!1;let t=this.nextTokenInLineStart();return this.isUnparsedContextual(t,"function")}parseExportDefaultExpression(){let t=this.startNode();if(this.match(68))return this.next(),this.parseFunction(t,5);if(this.isAsyncFunction())return this.next(),this.next(),this.parseFunction(t,13);if(this.match(80))return this.parseClass(t,!0,!0);if(this.match(26))return this.hasPlugin("decorators")&&this.getPluginOption("decorators","decoratorsBeforeExport")===!0&&this.raise(I.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(I.UnsupportedDefaultExport,this.state.startLoc);let r=this.parseMaybeAssignAllowIn();return this.semicolon(),r}parseExportDeclaration(t){return this.match(80)?this.parseClass(this.startNode(),!0,!1):this.parseStatementListItem()}isExportDefaultSpecifier(){let{type:t}=this.state;if(ht(t)){if(t===95&&!this.state.containsEsc||t===100)return!1;if((t===130||t===129)&&!this.state.containsEsc){let{type:s}=this.lookahead();if(ht(s)&&s!==98||s===5)return this.expectOnePlugin(["flow","typescript"]),!1}}else if(!this.match(65))return!1;let r=this.nextTokenStart(),n=this.isUnparsedContextual(r,"from");if(this.input.charCodeAt(r)===44||ht(this.state.type)&&n)return!0;if(this.match(65)&&n){let s=this.input.charCodeAt(this.nextTokenStartSince(r+4));return s===34||s===39}return!1}parseExportFrom(t,r){this.eatContextual(98)?(t.source=this.parseImportSource(),this.checkExport(t),this.maybeParseImportAttributes(t),this.checkJSONModuleImport(t)):r&&this.unexpected(),this.semicolon()}shouldParseExportDeclaration(){let{type:t}=this.state;return t===26&&(this.expectOnePlugin(["decorators","decorators-legacy"]),this.hasPlugin("decorators"))?(this.getPluginOption("decorators","decoratorsBeforeExport")===!0&&this.raise(I.DecoratorBeforeExport,this.state.startLoc),!0):this.isContextual(107)?(this.raise(I.UsingDeclarationExport,this.state.startLoc),!0):this.isContextual(96)&&this.startsAwaitUsing()?(this.raise(I.UsingDeclarationExport,this.state.startLoc),!0):t===74||t===75||t===68||t===80||this.isLet()||this.isAsyncFunction()}checkExport(t,r,n,s){if(r){var i;if(n){if(this.checkDuplicateExports(t,"default"),this.hasPlugin("exportDefaultFrom")){var a;let o=t.declaration;o.type==="Identifier"&&o.name==="from"&&o.end-o.start===4&&!((a=o.extra)!=null&&a.parenthesized)&&this.raise(I.ExportDefaultFromAsIdentifier,o)}}else if((i=t.specifiers)!=null&&i.length)for(let o of t.specifiers){let{exported:l}=o,u=l.type==="Identifier"?l.name:l.value;if(this.checkDuplicateExports(o,u),!s&&o.local){let{local:c}=o;c.type!=="Identifier"?this.raise(I.ExportBindingIsString,o,{localName:c.value,exportName:u}):(this.checkReservedWord(c.name,c.loc.start,!0,!1),this.scope.checkLocalExport(c))}}else if(t.declaration){let o=t.declaration;if(o.type==="FunctionDeclaration"||o.type==="ClassDeclaration"){let{id:l}=o;if(!l)throw new Error("Assertion failure");this.checkDuplicateExports(t,l.name)}else if(o.type==="VariableDeclaration")for(let l of o.declarations)this.checkDeclaration(l.id)}}}checkDeclaration(t){if(t.type==="Identifier")this.checkDuplicateExports(t,t.name);else if(t.type==="ObjectPattern")for(let r of t.properties)this.checkDeclaration(r);else if(t.type==="ArrayPattern")for(let r of t.elements)r&&this.checkDeclaration(r);else t.type==="ObjectProperty"?this.checkDeclaration(t.value):t.type==="RestElement"?this.checkDeclaration(t.argument):t.type==="AssignmentPattern"&&this.checkDeclaration(t.left)}checkDuplicateExports(t,r){this.exportedIdentifiers.has(r)&&(r==="default"?this.raise(I.DuplicateDefaultExport,t):this.raise(I.DuplicateExport,t,{exportName:r})),this.exportedIdentifiers.add(r)}parseExportSpecifiers(t){let r=[],n=!0;for(this.expect(5);!this.eat(8);){if(n)n=!1;else if(this.expect(12),this.eat(8))break;let s=this.isContextual(130),i=this.match(133),a=this.startNode();a.local=this.parseModuleExportName(),r.push(this.parseExportSpecifier(a,i,t,s))}return r}parseExportSpecifier(t,r,n,s){return this.eatContextual(93)?t.exported=this.parseModuleExportName():r?t.exported=mX(t.local):t.exported||(t.exported=cs(t.local)),this.finishNode(t,"ExportSpecifier")}parseModuleExportName(){if(this.match(133)){let t=this.parseStringLiteral(this.state.value),r=RX.exec(t.value);return r&&this.raise(I.ModuleExportNameHasLoneSurrogate,t,{surrogateCharCode:r[0].charCodeAt(0)}),t}return this.parseIdentifier(!0)}isJSONModuleImport(t){return t.assertions!=null?t.assertions.some(({key:r,value:n})=>n.value==="json"&&(r.type==="Identifier"?r.name==="type":r.value==="type")):!1}checkImportReflection(t){let{specifiers:r}=t,n=r.length===1?r[0].type:null;if(t.phase==="source")n!=="ImportDefaultSpecifier"&&this.raise(I.SourcePhaseImportRequiresDefault,r[0].loc.start);else if(t.phase==="defer")n!=="ImportNamespaceSpecifier"&&this.raise(I.DeferImportRequiresNamespace,r[0].loc.start);else if(t.module){var s;n!=="ImportDefaultSpecifier"&&this.raise(I.ImportReflectionNotBinding,r[0].loc.start),((s=t.assertions)==null?void 0:s.length)>0&&this.raise(I.ImportReflectionHasAssertion,r[0].loc.start)}}checkJSONModuleImport(t){if(this.isJSONModuleImport(t)&&t.type!=="ExportAllDeclaration"){let{specifiers:r}=t;if(r!=null){let n=r.find(s=>{let i;if(s.type==="ExportSpecifier"?i=s.local:s.type==="ImportSpecifier"&&(i=s.imported),i!==void 0)return i.type==="Identifier"?i.name!=="default":i.value!=="default"});n!==void 0&&this.raise(I.ImportJSONBindingNotDefault,n.loc.start)}}}isPotentialImportPhase(t){return t?!1:this.isContextual(105)||this.isContextual(97)||this.isContextual(127)}applyImportPhase(t,r,n,s){r||(n==="module"?(this.expectPlugin("importReflection",s),t.module=!0):this.hasPlugin("importReflection")&&(t.module=!1),n==="source"?(this.expectPlugin("sourcePhaseImports",s),t.phase="source"):n==="defer"?(this.expectPlugin("deferredImportEvaluation",s),t.phase="defer"):this.hasPlugin("sourcePhaseImports")&&(t.phase=null))}parseMaybeImportPhase(t,r){if(!this.isPotentialImportPhase(r))return this.applyImportPhase(t,r,null),null;let n=this.parseIdentifier(!0),{type:s}=this.state;return(xn(s)?s!==98||this.lookaheadCharCode()===102:s!==12)?(this.resetPreviousIdentifierLeadingComments(n),this.applyImportPhase(t,r,n.name,n.loc.start),null):(this.applyImportPhase(t,r,null),n)}isPrecedingIdImportPhase(t){let{type:r}=this.state;return ht(r)?r!==98||this.lookaheadCharCode()===102:r!==12}parseImport(t){return this.match(133)?this.parseImportSourceAndAttributes(t):this.parseImportSpecifiersAndAfter(t,this.parseMaybeImportPhase(t,!1))}parseImportSpecifiersAndAfter(t,r){t.specifiers=[];let s=!this.maybeParseDefaultImportSpecifier(t,r)||this.eat(12),i=s&&this.maybeParseStarImportSpecifier(t);return s&&!i&&this.parseNamedImportSpecifiers(t),this.expectContextual(98),this.parseImportSourceAndAttributes(t)}parseImportSourceAndAttributes(t){var r;return(r=t.specifiers)!=null||(t.specifiers=[]),t.source=this.parseImportSource(),this.maybeParseImportAttributes(t),this.checkImportReflection(t),this.checkJSONModuleImport(t),this.semicolon(),this.finishNode(t,"ImportDeclaration")}parseImportSource(){return this.match(133)||this.unexpected(),this.parseExprAtom()}parseImportSpecifierLocal(t,r,n){r.local=this.parseIdentifier(),t.specifiers.push(this.finishImportSpecifier(r,n))}finishImportSpecifier(t,r,n=8201){return this.checkLVal(t.local,{type:r},n),this.finishNode(t,r)}parseImportAttributes(){this.expect(5);let t=[],r=new Set;do{if(this.match(8))break;let n=this.startNode(),s=this.state.value;if(r.has(s)&&this.raise(I.ModuleAttributesWithDuplicateKeys,this.state.startLoc,{key:s}),r.add(s),this.match(133)?n.key=this.parseStringLiteral(s):n.key=this.parseIdentifier(!0),this.expect(14),!this.match(133))throw this.raise(I.ModuleAttributeInvalidValue,this.state.startLoc);n.value=this.parseStringLiteral(this.state.value),t.push(this.finishNode(n,"ImportAttribute"))}while(this.eat(12));return this.expect(8),t}parseModuleAttributes(){let t=[],r=new Set;do{let n=this.startNode();if(n.key=this.parseIdentifier(!0),n.key.name!=="type"&&this.raise(I.ModuleAttributeDifferentFromType,n.key),r.has(n.key.name)&&this.raise(I.ModuleAttributesWithDuplicateKeys,n.key,{key:n.key.name}),r.add(n.key.name),this.expect(14),!this.match(133))throw this.raise(I.ModuleAttributeInvalidValue,this.state.startLoc);n.value=this.parseStringLiteral(this.state.value),t.push(this.finishNode(n,"ImportAttribute"))}while(this.eat(12));return t}maybeParseImportAttributes(t){let r,n=!1;if(this.match(76)){if(this.hasPrecedingLineBreak()&&this.lookaheadCharCode()===40)return;this.next(),this.hasPlugin("moduleAttributes")?r=this.parseModuleAttributes():(this.expectImportAttributesPlugin(),r=this.parseImportAttributes()),n=!0}else if(this.isContextual(94)&&!this.hasPrecedingLineBreak())this.hasPlugin("importAttributes")?(this.getPluginOption("importAttributes","deprecatedAssertSyntax")!==!0&&this.raise(I.ImportAttributesUseAssert,this.state.startLoc),this.addExtra(t,"deprecatedAssertSyntax",!0)):this.expectOnePlugin(["importAttributes","importAssertions"]),this.next(),r=this.parseImportAttributes();else if(this.hasPlugin("importAttributes")||this.hasPlugin("importAssertions"))r=[];else if(this.hasPlugin("moduleAttributes"))r=[];else return;!n&&this.hasPlugin("importAssertions")?t.assertions=r:t.attributes=r}maybeParseDefaultImportSpecifier(t,r){if(r){let n=this.startNodeAtNode(r);return n.local=r,t.specifiers.push(this.finishImportSpecifier(n,"ImportDefaultSpecifier")),!0}else if(xn(this.state.type))return this.parseImportSpecifierLocal(t,this.startNode(),"ImportDefaultSpecifier"),!0;return!1}maybeParseStarImportSpecifier(t){if(this.match(55)){let r=this.startNode();return this.next(),this.expectContextual(93),this.parseImportSpecifierLocal(t,r,"ImportNamespaceSpecifier"),!0}return!1}parseNamedImportSpecifiers(t){let r=!0;for(this.expect(5);!this.eat(8);){if(r)r=!1;else{if(this.eat(14))throw this.raise(I.DestructureNamedImport,this.state.startLoc);if(this.expect(12),this.eat(8))break}let n=this.startNode(),s=this.match(133),i=this.isContextual(130);n.imported=this.parseModuleExportName();let a=this.parseImportSpecifier(n,s,t.importKind==="type"||t.importKind==="typeof",i,void 0);t.specifiers.push(a)}}parseImportSpecifier(t,r,n,s,i){if(this.eatContextual(93))t.local=this.parseIdentifier();else{let{imported:a}=t;if(r)throw this.raise(I.ImportBindingIsString,t,{importName:a.value});this.checkReservedWord(a.name,t.loc.start,!0,!0),t.local||(t.local=cs(a))}return this.finishImportSpecifier(t,"ImportSpecifier",i)}isThisParam(t){return t.type==="Identifier"&&t.name==="this"}},Yu=class extends Ym{constructor(t,r,n){t=kX(t),super(t,r),this.options=t,this.initializeScopes(),this.plugins=n,this.filename=t.sourceFilename}getScopeHandler(){return Ho}parse(){this.enterInitialScopes();let t=this.startNode(),r=this.startNode();return this.nextToken(),t.errors=null,this.parseTopLevel(t,r),t.errors=this.state.errors,t.comments.length=this.state.commentsLen,t}};function MX(e,t){var r;if(((r=t)==null?void 0:r.sourceType)==="unambiguous"){t=Object.assign({},t);try{t.sourceType="module";let n=Wo(t,e),s=n.parse();if(n.sawUnambiguousESM)return s;if(n.ambiguousScriptDifferentAst)try{return t.sourceType="script",Wo(t,e).parse()}catch{}else s.program.sourceType="script";return s}catch(n){try{return t.sourceType="script",Wo(t,e).parse()}catch{}throw n}}else return Wo(t,e).parse()}function qX(e,t){let r=Wo(t,e);return r.options.strictMode&&(r.state.strict=!0),r.getExpression()}function UX(e){let t={};for(let r of Object.keys(e))t[r]=as(e[r]);return t}var VX=UX(RH);function Wo(e,t){let r=Yu,n=new Map;if(e!=null&&e.plugins){for(let s of e.plugins){let i,a;typeof s=="string"?i=s:[i,a]=s,n.has(i)||n.set(i,a||{})}BX(n),r=$X(n)}return new r(e,t,n)}var MS=new Map;function $X(e){let t=[];for(let s of FX)e.has(s)&&t.push(s);let r=t.join("|"),n=MS.get(r);if(!n){n=Yu;for(let s of t)n=ex[s](n);MS.set(r,n)}return n}Yo.parse=MX;Yo.parseExpression=qX;Yo.tokTypes=VX});var tx=E(Ju=>{Object.defineProperty(Ju,"__esModule",{value:!0});Ju.default=/((['"])(?:(?!\2|\\).|\\(?:\r\n|[\s\S]))*(\2)?|`(?:[^`\\$]|\\[\s\S]|\$(?!\{)|\$\{(?:[^{}]|\{[^}]*\}?)*\}?)*(`)?)|(\/\/.*)|(\/\*(?:[^*]|\*(?!\/))*(\*\/)?)|(\/(?!\*)(?:\[(?:(?![\]\\]).|\\.)*\]|(?![\/\]\\]).|\\.)+\/(?:(?!\s*(?:\b|[\u0080-\uFFFF$\\'"~({]|[+\-!](?!=)|\.?\d))|[gmiyus]{1,6}\b(?![\u0080-\uFFFF$\\]|\s*(?:[+\-*%&|^<>!=?({]|\/(?![\/*])))))|(0[xX][\da-fA-F]+|0[oO][0-7]+|0[bB][01]+|(?:\d*\.\d+|\d+\.?)(?:[eE][+-]?\d+)?)|((?!\d)(?:(?!\s)[$\w\u0080-\uFFFF]|\\u[\da-fA-F]{4}|\\u\{[\da-fA-F]+\})+)|(--|\+\+|&&|\|\||=>|\.{3}|(?:[+\-\/%&|^]|\*{1,2}|<{1,2}|>{1,3}|!=?|={1,2})=?|[?~.,:;[\](){}])|(\s+)|(^$|[\s\S])/g;Ju.matchToToken=function(e){var t={type:"invalid",value:e[0],closed:void 0};return e[1]?(t.type="string",t.closed=!!(e[3]||e[4])):e[5]?t.type="comment":e[6]?(t.type="comment",t.closed=!!e[7]):e[8]?t.type="regex":e[9]?t.type="number":e[10]?t.type="name":e[11]?t.type="punctuator":e[12]&&(t.type="whitespace"),t}});var oy=E((NAe,ay)=>{var Qu=process||{},rx=Qu.argv||[],zu=Qu.env||{},WX=!(zu.NO_COLOR||rx.includes("--no-color"))&&(!!zu.FORCE_COLOR||rx.includes("--color")||Qu.platform==="win32"||(Qu.stdout||{}).isTTY&&zu.TERM!=="dumb"||!!zu.CI),KX=(e,t,r=e)=>n=>{let s=""+n,i=s.indexOf(t,e.length);return~i?e+GX(s,t,r,i)+t:e+s+t},GX=(e,t,r,n)=>{let s="",i=0;do s+=e.substring(i,n)+r,i=n+t.length,n=e.indexOf(t,i);while(~n);return s+e.substring(i)},nx=(e=WX)=>{let t=e?KX:()=>String;return{isColorSupported:e,reset:t("\x1B[0m","\x1B[0m"),bold:t("\x1B[1m","\x1B[22m","\x1B[22m\x1B[1m"),dim:t("\x1B[2m","\x1B[22m","\x1B[22m\x1B[2m"),italic:t("\x1B[3m","\x1B[23m"),underline:t("\x1B[4m","\x1B[24m"),inverse:t("\x1B[7m","\x1B[27m"),hidden:t("\x1B[8m","\x1B[28m"),strikethrough:t("\x1B[9m","\x1B[29m"),black:t("\x1B[30m","\x1B[39m"),red:t("\x1B[31m","\x1B[39m"),green:t("\x1B[32m","\x1B[39m"),yellow:t("\x1B[33m","\x1B[39m"),blue:t("\x1B[34m","\x1B[39m"),magenta:t("\x1B[35m","\x1B[39m"),cyan:t("\x1B[36m","\x1B[39m"),white:t("\x1B[37m","\x1B[39m"),gray:t("\x1B[90m","\x1B[39m"),bgBlack:t("\x1B[40m","\x1B[49m"),bgRed:t("\x1B[41m","\x1B[49m"),bgGreen:t("\x1B[42m","\x1B[49m"),bgYellow:t("\x1B[43m","\x1B[49m"),bgBlue:t("\x1B[44m","\x1B[49m"),bgMagenta:t("\x1B[45m","\x1B[49m"),bgCyan:t("\x1B[46m","\x1B[49m"),bgWhite:t("\x1B[47m","\x1B[49m"),blackBright:t("\x1B[90m","\x1B[39m"),redBright:t("\x1B[91m","\x1B[39m"),greenBright:t("\x1B[92m","\x1B[39m"),yellowBright:t("\x1B[93m","\x1B[39m"),blueBright:t("\x1B[94m","\x1B[39m"),magentaBright:t("\x1B[95m","\x1B[39m"),cyanBright:t("\x1B[96m","\x1B[39m"),whiteBright:t("\x1B[97m","\x1B[39m"),bgBlackBright:t("\x1B[100m","\x1B[49m"),bgRedBright:t("\x1B[101m","\x1B[49m"),bgGreenBright:t("\x1B[102m","\x1B[49m"),bgYellowBright:t("\x1B[103m","\x1B[49m"),bgBlueBright:t("\x1B[104m","\x1B[49m"),bgMagentaBright:t("\x1B[105m","\x1B[49m"),bgCyanBright:t("\x1B[106m","\x1B[49m"),bgWhiteBright:t("\x1B[107m","\x1B[49m")}};ay.exports=nx();ay.exports.createColors=nx});var ix=E((BAe,sx)=>{"use strict";var HX=/[|\\{}()[\]^$+*?.]/g;sx.exports=function(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(HX,"\\$&")}});var ox=E((FAe,ax)=>{"use strict";ax.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}});var ly=E((kAe,fx)=>{var Si=ox(),cx={};for(Zu in Si)Si.hasOwnProperty(Zu)&&(cx[Si[Zu]]=Zu);var Zu,Pe=fx.exports={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},lch:{channels:3,labels:"lch"},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}};for(Fr in Pe)if(Pe.hasOwnProperty(Fr)){if(!("channels"in Pe[Fr]))throw new Error("missing channels property: "+Fr);if(!("labels"in Pe[Fr]))throw new Error("missing channel labels property: "+Fr);if(Pe[Fr].labels.length!==Pe[Fr].channels)throw new Error("channel and label counts mismatch: "+Fr);lx=Pe[Fr].channels,ux=Pe[Fr].labels,delete Pe[Fr].channels,delete Pe[Fr].labels,Object.defineProperty(Pe[Fr],"channels",{value:lx}),Object.defineProperty(Pe[Fr],"labels",{value:ux})}var lx,ux,Fr;Pe.rgb.hsl=function(e){var t=e[0]/255,r=e[1]/255,n=e[2]/255,s=Math.min(t,r,n),i=Math.max(t,r,n),a=i-s,o,l,u;return i===s?o=0:t===i?o=(r-n)/a:r===i?o=2+(n-t)/a:n===i&&(o=4+(t-r)/a),o=Math.min(o*60,360),o<0&&(o+=360),u=(s+i)/2,i===s?l=0:u<=.5?l=a/(i+s):l=a/(2-i-s),[o,l*100,u*100]};Pe.rgb.hsv=function(e){var t,r,n,s,i,a=e[0]/255,o=e[1]/255,l=e[2]/255,u=Math.max(a,o,l),c=u-Math.min(a,o,l),f=function(p){return(u-p)/6/c+1/2};return c===0?s=i=0:(i=c/u,t=f(a),r=f(o),n=f(l),a===u?s=n-r:o===u?s=1/3+t-n:l===u&&(s=2/3+r-t),s<0?s+=1:s>1&&(s-=1)),[s*360,i*100,u*100]};Pe.rgb.hwb=function(e){var t=e[0],r=e[1],n=e[2],s=Pe.rgb.hsl(e)[0],i=1/255*Math.min(t,Math.min(r,n));return n=1-1/255*Math.max(t,Math.max(r,n)),[s,i*100,n*100]};Pe.rgb.cmyk=function(e){var t=e[0]/255,r=e[1]/255,n=e[2]/255,s,i,a,o;return o=Math.min(1-t,1-r,1-n),s=(1-t-o)/(1-o)||0,i=(1-r-o)/(1-o)||0,a=(1-n-o)/(1-o)||0,[s*100,i*100,a*100,o*100]};function XX(e,t){return Math.pow(e[0]-t[0],2)+Math.pow(e[1]-t[1],2)+Math.pow(e[2]-t[2],2)}Pe.rgb.keyword=function(e){var t=cx[e];if(t)return t;var r=1/0,n;for(var s in Si)if(Si.hasOwnProperty(s)){var i=Si[s],a=XX(e,i);a<r&&(r=a,n=s)}return n};Pe.keyword.rgb=function(e){return Si[e]};Pe.rgb.xyz=function(e){var t=e[0]/255,r=e[1]/255,n=e[2]/255;t=t>.04045?Math.pow((t+.055)/1.055,2.4):t/12.92,r=r>.04045?Math.pow((r+.055)/1.055,2.4):r/12.92,n=n>.04045?Math.pow((n+.055)/1.055,2.4):n/12.92;var s=t*.4124+r*.3576+n*.1805,i=t*.2126+r*.7152+n*.0722,a=t*.0193+r*.1192+n*.9505;return[s*100,i*100,a*100]};Pe.rgb.lab=function(e){var t=Pe.rgb.xyz(e),r=t[0],n=t[1],s=t[2],i,a,o;return r/=95.047,n/=100,s/=108.883,r=r>.008856?Math.pow(r,1/3):7.787*r+16/116,n=n>.008856?Math.pow(n,1/3):7.787*n+16/116,s=s>.008856?Math.pow(s,1/3):7.787*s+16/116,i=116*n-16,a=500*(r-n),o=200*(n-s),[i,a,o]};Pe.hsl.rgb=function(e){var t=e[0]/360,r=e[1]/100,n=e[2]/100,s,i,a,o,l;if(r===0)return l=n*255,[l,l,l];n<.5?i=n*(1+r):i=n+r-n*r,s=2*n-i,o=[0,0,0];for(var u=0;u<3;u++)a=t+1/3*-(u-1),a<0&&a++,a>1&&a--,6*a<1?l=s+(i-s)*6*a:2*a<1?l=i:3*a<2?l=s+(i-s)*(2/3-a)*6:l=s,o[u]=l*255;return o};Pe.hsl.hsv=function(e){var t=e[0],r=e[1]/100,n=e[2]/100,s=r,i=Math.max(n,.01),a,o;return n*=2,r*=n<=1?n:2-n,s*=i<=1?i:2-i,o=(n+r)/2,a=n===0?2*s/(i+s):2*r/(n+r),[t,a*100,o*100]};Pe.hsv.rgb=function(e){var t=e[0]/60,r=e[1]/100,n=e[2]/100,s=Math.floor(t)%6,i=t-Math.floor(t),a=255*n*(1-r),o=255*n*(1-r*i),l=255*n*(1-r*(1-i));switch(n*=255,s){case 0:return[n,l,a];case 1:return[o,n,a];case 2:return[a,n,l];case 3:return[a,o,n];case 4:return[l,a,n];case 5:return[n,a,o]}};Pe.hsv.hsl=function(e){var t=e[0],r=e[1]/100,n=e[2]/100,s=Math.max(n,.01),i,a,o;return o=(2-r)*n,i=(2-r)*s,a=r*s,a/=i<=1?i:2-i,a=a||0,o/=2,[t,a*100,o*100]};Pe.hwb.rgb=function(e){var t=e[0]/360,r=e[1]/100,n=e[2]/100,s=r+n,i,a,o,l;s>1&&(r/=s,n/=s),i=Math.floor(6*t),a=1-n,o=6*t-i,(i&1)!==0&&(o=1-o),l=r+o*(a-r);var u,c,f;switch(i){default:case 6:case 0:u=a,c=l,f=r;break;case 1:u=l,c=a,f=r;break;case 2:u=r,c=a,f=l;break;case 3:u=r,c=l,f=a;break;case 4:u=l,c=r,f=a;break;case 5:u=a,c=r,f=l;break}return[u*255,c*255,f*255]};Pe.cmyk.rgb=function(e){var t=e[0]/100,r=e[1]/100,n=e[2]/100,s=e[3]/100,i,a,o;return i=1-Math.min(1,t*(1-s)+s),a=1-Math.min(1,r*(1-s)+s),o=1-Math.min(1,n*(1-s)+s),[i*255,a*255,o*255]};Pe.xyz.rgb=function(e){var t=e[0]/100,r=e[1]/100,n=e[2]/100,s,i,a;return s=t*3.2406+r*-1.5372+n*-.4986,i=t*-.9689+r*1.8758+n*.0415,a=t*.0557+r*-.204+n*1.057,s=s>.0031308?1.055*Math.pow(s,1/2.4)-.055:s*12.92,i=i>.0031308?1.055*Math.pow(i,1/2.4)-.055:i*12.92,a=a>.0031308?1.055*Math.pow(a,1/2.4)-.055:a*12.92,s=Math.min(Math.max(0,s),1),i=Math.min(Math.max(0,i),1),a=Math.min(Math.max(0,a),1),[s*255,i*255,a*255]};Pe.xyz.lab=function(e){var t=e[0],r=e[1],n=e[2],s,i,a;return t/=95.047,r/=100,n/=108.883,t=t>.008856?Math.pow(t,1/3):7.787*t+16/116,r=r>.008856?Math.pow(r,1/3):7.787*r+16/116,n=n>.008856?Math.pow(n,1/3):7.787*n+16/116,s=116*r-16,i=500*(t-r),a=200*(r-n),[s,i,a]};Pe.lab.xyz=function(e){var t=e[0],r=e[1],n=e[2],s,i,a;i=(t+16)/116,s=r/500+i,a=i-n/200;var o=Math.pow(i,3),l=Math.pow(s,3),u=Math.pow(a,3);return i=o>.008856?o:(i-16/116)/7.787,s=l>.008856?l:(s-16/116)/7.787,a=u>.008856?u:(a-16/116)/7.787,s*=95.047,i*=100,a*=108.883,[s,i,a]};Pe.lab.lch=function(e){var t=e[0],r=e[1],n=e[2],s,i,a;return s=Math.atan2(n,r),i=s*360/2/Math.PI,i<0&&(i+=360),a=Math.sqrt(r*r+n*n),[t,a,i]};Pe.lch.lab=function(e){var t=e[0],r=e[1],n=e[2],s,i,a;return a=n/360*2*Math.PI,s=r*Math.cos(a),i=r*Math.sin(a),[t,s,i]};Pe.rgb.ansi16=function(e){var t=e[0],r=e[1],n=e[2],s=1 in arguments?arguments[1]:Pe.rgb.hsv(e)[2];if(s=Math.round(s/50),s===0)return 30;var i=30+(Math.round(n/255)<<2|Math.round(r/255)<<1|Math.round(t/255));return s===2&&(i+=60),i};Pe.hsv.ansi16=function(e){return Pe.rgb.ansi16(Pe.hsv.rgb(e),e[2])};Pe.rgb.ansi256=function(e){var t=e[0],r=e[1],n=e[2];if(t===r&&r===n)return t<8?16:t>248?231:Math.round((t-8)/247*24)+232;var s=16+36*Math.round(t/255*5)+6*Math.round(r/255*5)+Math.round(n/255*5);return s};Pe.ansi16.rgb=function(e){var t=e%10;if(t===0||t===7)return e>50&&(t+=3.5),t=t/10.5*255,[t,t,t];var r=(~~(e>50)+1)*.5,n=(t&1)*r*255,s=(t>>1&1)*r*255,i=(t>>2&1)*r*255;return[n,s,i]};Pe.ansi256.rgb=function(e){if(e>=232){var t=(e-232)*10+8;return[t,t,t]}e-=16;var r,n=Math.floor(e/36)/5*255,s=Math.floor((r=e%36)/6)/5*255,i=r%6/5*255;return[n,s,i]};Pe.rgb.hex=function(e){var t=((Math.round(e[0])&255)<<16)+((Math.round(e[1])&255)<<8)+(Math.round(e[2])&255),r=t.toString(16).toUpperCase();return"000000".substring(r.length)+r};Pe.hex.rgb=function(e){var t=e.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!t)return[0,0,0];var r=t[0];t[0].length===3&&(r=r.split("").map(function(o){return o+o}).join(""));var n=parseInt(r,16),s=n>>16&255,i=n>>8&255,a=n&255;return[s,i,a]};Pe.rgb.hcg=function(e){var t=e[0]/255,r=e[1]/255,n=e[2]/255,s=Math.max(Math.max(t,r),n),i=Math.min(Math.min(t,r),n),a=s-i,o,l;return a<1?o=i/(1-a):o=0,a<=0?l=0:s===t?l=(r-n)/a%6:s===r?l=2+(n-t)/a:l=4+(t-r)/a+4,l/=6,l%=1,[l*360,a*100,o*100]};Pe.hsl.hcg=function(e){var t=e[1]/100,r=e[2]/100,n=1,s=0;return r<.5?n=2*t*r:n=2*t*(1-r),n<1&&(s=(r-.5*n)/(1-n)),[e[0],n*100,s*100]};Pe.hsv.hcg=function(e){var t=e[1]/100,r=e[2]/100,n=t*r,s=0;return n<1&&(s=(r-n)/(1-n)),[e[0],n*100,s*100]};Pe.hcg.rgb=function(e){var t=e[0]/360,r=e[1]/100,n=e[2]/100;if(r===0)return[n*255,n*255,n*255];var s=[0,0,0],i=t%1*6,a=i%1,o=1-a,l=0;switch(Math.floor(i)){case 0:s[0]=1,s[1]=a,s[2]=0;break;case 1:s[0]=o,s[1]=1,s[2]=0;break;case 2:s[0]=0,s[1]=1,s[2]=a;break;case 3:s[0]=0,s[1]=o,s[2]=1;break;case 4:s[0]=a,s[1]=0,s[2]=1;break;default:s[0]=1,s[1]=0,s[2]=o}return l=(1-r)*n,[(r*s[0]+l)*255,(r*s[1]+l)*255,(r*s[2]+l)*255]};Pe.hcg.hsv=function(e){var t=e[1]/100,r=e[2]/100,n=t+r*(1-t),s=0;return n>0&&(s=t/n),[e[0],s*100,n*100]};Pe.hcg.hsl=function(e){var t=e[1]/100,r=e[2]/100,n=r*(1-t)+.5*t,s=0;return n>0&&n<.5?s=t/(2*n):n>=.5&&n<1&&(s=t/(2*(1-n))),[e[0],s*100,n*100]};Pe.hcg.hwb=function(e){var t=e[1]/100,r=e[2]/100,n=t+r*(1-t);return[e[0],(n-t)*100,(1-n)*100]};Pe.hwb.hcg=function(e){var t=e[1]/100,r=e[2]/100,n=1-r,s=n-t,i=0;return s<1&&(i=(n-s)/(1-s)),[e[0],s*100,i*100]};Pe.apple.rgb=function(e){return[e[0]/65535*255,e[1]/65535*255,e[2]/65535*255]};Pe.rgb.apple=function(e){return[e[0]/255*65535,e[1]/255*65535,e[2]/255*65535]};Pe.gray.rgb=function(e){return[e[0]/100*255,e[0]/100*255,e[0]/100*255]};Pe.gray.hsl=Pe.gray.hsv=function(e){return[0,0,e[0]]};Pe.gray.hwb=function(e){return[0,100,e[0]]};Pe.gray.cmyk=function(e){return[0,0,0,e[0]]};Pe.gray.lab=function(e){return[e[0],0,0]};Pe.gray.hex=function(e){var t=Math.round(e[0]/100*255)&255,r=(t<<16)+(t<<8)+t,n=r.toString(16).toUpperCase();return"000000".substring(n.length)+n};Pe.rgb.gray=function(e){var t=(e[0]+e[1]+e[2])/3;return[t/255*100]}});var dx=E((LAe,px)=>{var ec=ly();function YX(){for(var e={},t=Object.keys(ec),r=t.length,n=0;n<r;n++)e[t[n]]={distance:-1,parent:null};return e}function JX(e){var t=YX(),r=[e];for(t[e].distance=0;r.length;)for(var n=r.pop(),s=Object.keys(ec[n]),i=s.length,a=0;a<i;a++){var o=s[a],l=t[o];l.distance===-1&&(l.distance=t[n].distance+1,l.parent=n,r.unshift(o))}return t}function zX(e,t){return function(r){return t(e(r))}}function QX(e,t){for(var r=[t[e].parent,e],n=ec[t[e].parent][e],s=t[e].parent;t[s].parent;)r.unshift(t[s].parent),n=zX(ec[t[s].parent][s],n),s=t[s].parent;return n.conversion=r,n}px.exports=function(e){for(var t=JX(e),r={},n=Object.keys(t),s=n.length,i=0;i<s;i++){var a=n[i],o=t[a];o.parent!==null&&(r[a]=QX(a,t))}return r}});var mx=E((RAe,hx)=>{var uy=ly(),ZX=dx(),Ta={},eY=Object.keys(uy);function tY(e){var t=function(r){return r==null?r:(arguments.length>1&&(r=Array.prototype.slice.call(arguments)),e(r))};return"conversion"in e&&(t.conversion=e.conversion),t}function rY(e){var t=function(r){if(r==null)return r;arguments.length>1&&(r=Array.prototype.slice.call(arguments));var n=e(r);if(typeof n=="object")for(var s=n.length,i=0;i<s;i++)n[i]=Math.round(n[i]);return n};return"conversion"in e&&(t.conversion=e.conversion),t}eY.forEach(function(e){Ta[e]={},Object.defineProperty(Ta[e],"channels",{value:uy[e].channels}),Object.defineProperty(Ta[e],"labels",{value:uy[e].labels});var t=ZX(e),r=Object.keys(t);r.forEach(function(n){var s=t[n];Ta[e][n]=rY(s),Ta[e][n].raw=tY(s)})});hx.exports=Ta});var gx=E((jAe,yx)=>{"use strict";var Sa=mx(),tc=(e,t)=>function(){return`\x1B[${e.apply(Sa,arguments)+t}m`},rc=(e,t)=>function(){let r=e.apply(Sa,arguments);return`\x1B[${38+t};5;${r}m`},nc=(e,t)=>function(){let r=e.apply(Sa,arguments);return`\x1B[${38+t};2;${r[0]};${r[1]};${r[2]}m`};function nY(){let e=new Map,t={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],gray:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}};t.color.grey=t.color.gray;for(let s of Object.keys(t)){let i=t[s];for(let a of Object.keys(i)){let o=i[a];t[a]={open:`\x1B[${o[0]}m`,close:`\x1B[${o[1]}m`},i[a]=t[a],e.set(o[0],o[1])}Object.defineProperty(t,s,{value:i,enumerable:!1}),Object.defineProperty(t,"codes",{value:e,enumerable:!1})}let r=s=>s,n=(s,i,a)=>[s,i,a];t.color.close="\x1B[39m",t.bgColor.close="\x1B[49m",t.color.ansi={ansi:tc(r,0)},t.color.ansi256={ansi256:rc(r,0)},t.color.ansi16m={rgb:nc(n,0)},t.bgColor.ansi={ansi:tc(r,10)},t.bgColor.ansi256={ansi256:rc(r,10)},t.bgColor.ansi16m={rgb:nc(n,10)};for(let s of Object.keys(Sa)){if(typeof Sa[s]!="object")continue;let i=Sa[s];s==="ansi16"&&(s="ansi"),"ansi16"in i&&(t.color.ansi[s]=tc(i.ansi16,0),t.bgColor.ansi[s]=tc(i.ansi16,10)),"ansi256"in i&&(t.color.ansi256[s]=rc(i.ansi256,0),t.bgColor.ansi256[s]=rc(i.ansi256,10)),"rgb"in i&&(t.color.ansi16m[s]=nc(i.rgb,0),t.bgColor.ansi16m[s]=nc(i.rgb,10))}return t}Object.defineProperty(yx,"exports",{enumerable:!0,get:nY})});var Ex=E((MAe,bx)=>{"use strict";bx.exports=(e,t)=>{t=t||process.argv;let r=e.startsWith("-")?"":e.length===1?"-":"--",n=t.indexOf(r+e),s=t.indexOf("--");return n!==-1&&(s===-1?!0:n<s)}});var Tx=E((qAe,vx)=>{"use strict";var sY=me("os"),Pn=Ex(),vr=process.env,xa;Pn("no-color")||Pn("no-colors")||Pn("color=false")?xa=!1:(Pn("color")||Pn("colors")||Pn("color=true")||Pn("color=always"))&&(xa=!0);"FORCE_COLOR"in vr&&(xa=vr.FORCE_COLOR.length===0||parseInt(vr.FORCE_COLOR,10)!==0);function iY(e){return e===0?!1:{level:e,hasBasic:!0,has256:e>=2,has16m:e>=3}}function aY(e){if(xa===!1)return 0;if(Pn("color=16m")||Pn("color=full")||Pn("color=truecolor"))return 3;if(Pn("color=256"))return 2;if(e&&!e.isTTY&&xa!==!0)return 0;let t=xa?1:0;if(process.platform==="win32"){let r=sY.release().split(".");return Number(process.versions.node.split(".")[0])>=8&&Number(r[0])>=10&&Number(r[2])>=10586?Number(r[2])>=14931?3:2:1}if("CI"in vr)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI"].some(r=>r in vr)||vr.CI_NAME==="codeship"?1:t;if("TEAMCITY_VERSION"in vr)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(vr.TEAMCITY_VERSION)?1:0;if(vr.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in vr){let r=parseInt((vr.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(vr.TERM_PROGRAM){case"iTerm.app":return r>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(vr.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(vr.TERM)||"COLORTERM"in vr?1:(vr.TERM==="dumb",t)}function cy(e){let t=aY(e);return iY(t)}vx.exports={supportsColor:cy,stdout:cy(process.stdout),stderr:cy(process.stderr)}});var Cx=E((UAe,Ax)=>{"use strict";var oY=/(?:\\(u[a-f\d]{4}|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi,Sx=/(?:^|\.)(\w+)(?:\(([^)]*)\))?/g,lY=/^(['"])((?:\\.|(?!\1)[^\\])*)\1$/,uY=/\\(u[a-f\d]{4}|x[a-f\d]{2}|.)|([^\\])/gi,cY=new Map([["n",`
|
|
21
21
|
`],["r","\r"],["t"," "],["b","\b"],["f","\f"],["v","\v"],["0","\0"],["\\","\\"],["e","\x1B"],["a","\x07"]]);function Px(e){return e[0]==="u"&&e.length===5||e[0]==="x"&&e.length===3?String.fromCharCode(parseInt(e.slice(1),16)):cY.get(e)||e}function fY(e,t){let r=[],n=t.trim().split(/\s*,\s*/g),s;for(let i of n)if(!isNaN(i))r.push(Number(i));else if(s=i.match(lY))r.push(s[2].replace(uY,(a,o,l)=>o?Px(o):l));else throw new Error(`Invalid Chalk template style argument: ${i} (in style '${e}')`);return r}function pY(e){Sx.lastIndex=0;let t=[],r;for(;(r=Sx.exec(e))!==null;){let n=r[1];if(r[2]){let s=fY(n,r[2]);t.push([n].concat(s))}else t.push([n])}return t}function xx(e,t){let r={};for(let s of t)for(let i of s.styles)r[i[0]]=s.inverse?null:i.slice(1);let n=e;for(let s of Object.keys(r))if(Array.isArray(r[s])){if(!(s in n))throw new Error(`Unknown Chalk style: ${s}`);r[s].length>0?n=n[s].apply(n,r[s]):n=n[s]}return n}Ax.exports=(e,t)=>{let r=[],n=[],s=[];if(t.replace(oY,(i,a,o,l,u,c)=>{if(a)s.push(Px(a));else if(l){let f=s.join("");s=[],n.push(r.length===0?f:xx(e,r)(f)),r.push({inverse:o,styles:pY(l)})}else if(u){if(r.length===0)throw new Error("Found extraneous } in Chalk template literal");n.push(xx(e,r)(s.join(""))),s=[],r.pop()}else s.push(c)}),n.push(s.join("")),r.length>0){let i=`Chalk template literal is missing ${r.length} closing bracket${r.length===1?"":"s"} (\`}\`)`;throw new Error(i)}return n.join("")}});var _x=E((VAe,Qo)=>{"use strict";var py=ix(),er=gx(),fy=Tx().stdout,dY=Cx(),Dx=process.platform==="win32"&&!(process.env.TERM||"").toLowerCase().startsWith("xterm"),Ix=["ansi","ansi","ansi256","ansi16m"],Ox=new Set(["gray"]),Pa=Object.create(null);function wx(e,t){t=t||{};let r=fy?fy.level:0;e.level=t.level===void 0?r:t.level,e.enabled="enabled"in t?t.enabled:e.level>0}function zo(e){if(!this||!(this instanceof zo)||this.template){let t={};return wx(t,e),t.template=function(){let r=[].slice.call(arguments);return yY.apply(null,[t.template].concat(r))},Object.setPrototypeOf(t,zo.prototype),Object.setPrototypeOf(t.template,t),t.template.constructor=zo,t.template}wx(this,e)}Dx&&(er.blue.open="\x1B[94m");for(let e of Object.keys(er))er[e].closeRe=new RegExp(py(er[e].close),"g"),Pa[e]={get(){let t=er[e];return sc.call(this,this._styles?this._styles.concat(t):[t],this._empty,e)}};Pa.visible={get(){return sc.call(this,this._styles||[],!0,"visible")}};er.color.closeRe=new RegExp(py(er.color.close),"g");for(let e of Object.keys(er.color.ansi))Ox.has(e)||(Pa[e]={get(){let t=this.level;return function(){let n={open:er.color[Ix[t]][e].apply(null,arguments),close:er.color.close,closeRe:er.color.closeRe};return sc.call(this,this._styles?this._styles.concat(n):[n],this._empty,e)}}});er.bgColor.closeRe=new RegExp(py(er.bgColor.close),"g");for(let e of Object.keys(er.bgColor.ansi)){if(Ox.has(e))continue;let t="bg"+e[0].toUpperCase()+e.slice(1);Pa[t]={get(){let r=this.level;return function(){let s={open:er.bgColor[Ix[r]][e].apply(null,arguments),close:er.bgColor.close,closeRe:er.bgColor.closeRe};return sc.call(this,this._styles?this._styles.concat(s):[s],this._empty,e)}}}}var hY=Object.defineProperties(()=>{},Pa);function sc(e,t,r){let n=function(){return mY.apply(n,arguments)};n._styles=e,n._empty=t;let s=this;return Object.defineProperty(n,"level",{enumerable:!0,get(){return s.level},set(i){s.level=i}}),Object.defineProperty(n,"enabled",{enumerable:!0,get(){return s.enabled},set(i){s.enabled=i}}),n.hasGrey=this.hasGrey||r==="gray"||r==="grey",n.__proto__=hY,n}function mY(){let e=arguments,t=e.length,r=String(arguments[0]);if(t===0)return"";if(t>1)for(let s=1;s<t;s++)r+=" "+e[s];if(!this.enabled||this.level<=0||!r)return this._empty?"":r;let n=er.dim.open;Dx&&this.hasGrey&&(er.dim.open="");for(let s of this._styles.slice().reverse())r=s.open+r.replace(s.closeRe,s.open)+s.close,r=r.replace(/\r?\n/g,`${s.close}$&${s.open}`);return er.dim.open=n,r}function yY(e,t){if(!Array.isArray(t))return[].slice.call(arguments,1).join(" ");let r=[].slice.call(arguments,2),n=[t.raw[0]];for(let s=1;s<t.length;s++)n.push(String(r[s-1]).replace(/[{}\\]/g,"\\$&")),n.push(String(t.raw[s]));return dY(e,n.join(""))}Object.defineProperties(zo.prototype,Pa);Qo.exports=zo();Qo.exports.supportsColor=fy;Qo.exports.default=Qo.exports});var Mx=E(Zo=>{"use strict";Object.defineProperty(Zo,"__esModule",{value:!0});Zo.default=PY;Zo.shouldHighlight=jx;var Nx=tx(),Bx=ca(),hy=gY(oy(),!0);function kx(e){if(typeof WeakMap!="function")return null;var t=new WeakMap,r=new WeakMap;return(kx=function(n){return n?r:t})(e)}function gY(e,t){if(!t&&e&&e.__esModule)return e;if(e===null||typeof e!="object"&&typeof e!="function")return{default:e};var r=kx(t);if(r&&r.has(e))return r.get(e);var n={__proto__:null},s=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if(i!=="default"&&{}.hasOwnProperty.call(e,i)){var a=s?Object.getOwnPropertyDescriptor(e,i):null;a&&(a.get||a.set)?Object.defineProperty(n,i,a):n[i]=e[i]}return n.default=e,r&&r.set(e,n),n}var Lx=typeof process=="object"&&(process.env.FORCE_COLOR==="0"||process.env.FORCE_COLOR==="false")?(0,hy.createColors)(!1):hy.default,Fx=(e,t)=>r=>e(t(r)),bY=new Set(["as","async","from","get","of","set"]);function EY(e){return{keyword:e.cyan,capitalized:e.yellow,jsxIdentifier:e.yellow,punctuator:e.yellow,number:e.magenta,string:e.green,regex:e.magenta,comment:e.gray,invalid:Fx(Fx(e.white,e.bgRed),e.bold)}}var vY=/\r\n|[\n\r\u2028\u2029]/,TY=/^[()[\]{}]$/,Rx;{let e=/^[a-z][\w-]*$/i,t=function(r,n,s){if(r.type==="name"){if((0,Bx.isKeyword)(r.value)||(0,Bx.isStrictReservedWord)(r.value,!0)||bY.has(r.value))return"keyword";if(e.test(r.value)&&(s[n-1]==="<"||s.slice(n-2,n)==="</"))return"jsxIdentifier";if(r.value[0]!==r.value[0].toLowerCase())return"capitalized"}return r.type==="punctuator"&&TY.test(r.value)?"bracket":r.type==="invalid"&&(r.value==="@"||r.value==="#")?"punctuator":r.type};Rx=function*(r){let n;for(;n=Nx.default.exec(r);){let s=Nx.matchToToken(n);yield{type:t(s,n.index,r),value:s.value}}}}function SY(e,t){let r="";for(let{type:n,value:s}of Rx(t)){let i=e[n];i?r+=s.split(vY).map(a=>i(a)).join(`
|
|
22
22
|
`):r+=s}return r}function jx(e){return Lx.isColorSupported||e.forceColor}var dy;function xY(e){if(e){var t;return(t=dy)!=null||(dy=(0,hy.createColors)(!0)),dy}return Lx}function PY(e,t={}){if(e!==""&&jx(t)){let r=EY(xY(t.forceColor));return SY(r,e)}else return e}{let e,t;Zo.getChalk=({forceColor:r})=>{var n;if((n=e)!=null||(e=_x()),r){var s;return(s=t)!=null||(t=new e.constructor({enabled:!0,level:1})),t}return e}}});var el=E(ic=>{"use strict";Object.defineProperty(ic,"__esModule",{value:!0});ic.codeFrameColumns=Kx;ic.default=OY;var qx=Mx(),yy=AY(oy(),!0);function Wx(e){if(typeof WeakMap!="function")return null;var t=new WeakMap,r=new WeakMap;return(Wx=function(n){return n?r:t})(e)}function AY(e,t){if(!t&&e&&e.__esModule)return e;if(e===null||typeof e!="object"&&typeof e!="function")return{default:e};var r=Wx(t);if(r&&r.has(e))return r.get(e);var n={__proto__:null},s=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if(i!=="default"&&{}.hasOwnProperty.call(e,i)){var a=s?Object.getOwnPropertyDescriptor(e,i):null;a&&(a.get||a.set)?Object.defineProperty(n,i,a):n[i]=e[i]}return n.default=e,r&&r.set(e,n),n}var CY=typeof process=="object"&&(process.env.FORCE_COLOR==="0"||process.env.FORCE_COLOR==="false")?(0,yy.createColors)(!1):yy.default,Ux=(e,t)=>r=>e(t(r)),my;function wY(e){if(e){var t;return(t=my)!=null||(my=(0,yy.createColors)(!0)),my}return CY}var Vx=!1;function DY(e){return{gutter:e.gray,marker:Ux(e.red,e.bold),message:Ux(e.red,e.bold)}}var $x=/\r\n|[\n\r\u2028\u2029]/;function IY(e,t,r){let n=Object.assign({column:0,line:-1},e.start),s=Object.assign({},n,e.end),{linesAbove:i=2,linesBelow:a=3}=r||{},o=n.line,l=n.column,u=s.line,c=s.column,f=Math.max(o-(i+1),0),p=Math.min(t.length,u+a);o===-1&&(f=0),u===-1&&(p=t.length);let h=u-o,b={};if(h)for(let d=0;d<=h;d++){let y=d+o;if(!l)b[y]=!0;else if(d===0){let P=t[y-1].length;b[y]=[l,P-l+1]}else if(d===h)b[y]=[0,c];else{let P=t[y-d].length;b[y]=[0,P]}}else l===c?l?b[o]=[l,0]:b[o]=!0:b[o]=[l,c-l];return{start:f,end:p,markerLines:b}}function Kx(e,t,r={}){let n=(r.highlightCode||r.forceColor)&&(0,qx.shouldHighlight)(r),s=wY(r.forceColor),i=DY(s),a=(d,y)=>n?d(y):y,o=e.split($x),{start:l,end:u,markerLines:c}=IY(t,o,r),f=t.start&&typeof t.start.column=="number",p=String(u).length,b=(n?(0,qx.default)(e,r):e).split($x,u).slice(l,u).map((d,y)=>{let P=l+1+y,N=` ${` ${P}`.slice(-p)} |`,B=c[P],F=!c[P+1];if(B){let j="";if(Array.isArray(B)){let W=d.slice(0,Math.max(B[0]-1,0)).replace(/[^\t]/g," "),re=B[1]||1;j=[`
|
|
23
23
|
`,a(i.gutter,N.replace(/\d/g," "))," ",W,a(i.marker,"^").repeat(re)].join(""),F&&r.message&&(j+=" "+a(i.message,r.message))}return[a(i.marker,">"),a(i.gutter,N),d.length>0?` ${d}`:"",j].join("")}else return` ${a(i.gutter,N)}${d.length>0?` ${d}`:""}`}).join(`
|