Last active
February 25, 2025 03:45
-
-
Save Infinitay/0dcaf8bdc6ab0bde7a935be7a6d3b0fe to your computer and use it in GitHub Desktop.
Compiled webpack of ben-sb/obfuscator-io-deobfuscator (https://github.com/ben-sb/obfuscator-io-deobfuscator)
This file has been truncated, but you can view the full file.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/*! For license information please see deobfuscator.js.LICENSE.txt */ | |
var e={41:(e,t,r)=>{var n=r(655),i=r(8068),s=r(9675),a=r(5795);e.exports=function(e,t,r){if(!e||"object"!=typeof e&&"function"!=typeof e)throw new s("`obj` must be an object or a function`");if("string"!=typeof t&&"symbol"!=typeof t)throw new s("`property` must be a string or a symbol`");if(arguments.length>3&&"boolean"!=typeof arguments[3]&&null!==arguments[3])throw new s("`nonEnumerable`, if provided, must be a boolean or null");if(arguments.length>4&&"boolean"!=typeof arguments[4]&&null!==arguments[4])throw new s("`nonWritable`, if provided, must be a boolean or null");if(arguments.length>5&&"boolean"!=typeof arguments[5]&&null!==arguments[5])throw new s("`nonConfigurable`, if provided, must be a boolean or null");if(arguments.length>6&&"boolean"!=typeof arguments[6])throw new s("`loose`, if provided, must be a boolean");var o=arguments.length>3?arguments[3]:null,l=arguments.length>4?arguments[4]:null,c=arguments.length>5?arguments[5]:null,u=arguments.length>6&&arguments[6],p=!!a&&a(e,t);if(n)n(e,t,{configurable:null===c&&p?p.configurable:!c,enumerable:null===o&&p?p.enumerable:!o,value:r,writable:null===l&&p?p.writable:!l});else{if(!u&&(o||l||c))throw new i("This environment does not support defining a property as non-configurable, non-writable, or non-enumerable.");e[t]=r}}},76:e=>{e.exports=Function.prototype.call},122:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.oneOf=t.OneOfMatcher=void 0;const n=r(8305);class i extends n.Matcher{constructor(e){super(),this.matcher=e}matchValue(e,t){return!!Array.isArray(e)&&(1===e.length&&this.matcher.matchValue(e[0],[...t,0]))}}t.OneOfMatcher=i,t.oneOf=function(e){return new i(e)}},130:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"OptionValidator",{enumerable:!0,get:function(){return n.OptionValidator}}),Object.defineProperty(t,"findSuggestion",{enumerable:!0,get:function(){return i.findSuggestion}});var n=r(3380),i=r(8500)},228:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.prettifyTargets=function(e){return Object.keys(e).reduce(((t,r)=>{let n=e[r];const a=i.unreleasedLabels[r];return"string"==typeof n&&a!==n&&(n=s(n)),t[r]=n,t}),{})},t.prettifyVersion=s;var n=r(5345),i=r(1884);function s(e){if("string"!=typeof e)return e;const{major:t,minor:r,patch:i}=n.parse(e),s=[t];return(r||i)&&s.push(r),i&&s.push(i),s.join(".")}},245:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,n.default)(e)};var n=r(5279)},259:e=>{e.exports=function(e){e.prototype[Symbol.iterator]=function*(){for(let e=this.head;e;e=e.next)yield e.value}}},299:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.evaluate=function(){const e={confident:!0,deoptPath:null,seen:new Map};let t=c(this,e);e.confident||(t=void 0);return{confident:e.confident,deopt:e.deoptPath,value:t}},t.evaluateTruthy=function(){const e=this.evaluate();if(e.confident)return!!e.value};const n=["Number","String","Math"],i=["isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent",null,null],s=["random"];function a(e){return n.includes(e)}function o(e,t){t.confident&&(t.deoptPath=e,t.confident=!1)}const l=new Map([["undefined",void 0],["Infinity",1/0],["NaN",NaN]]);function c(e,t){const{node:n}=e,{seen:p}=t;if(p.has(n)){const r=p.get(n);return r.resolved?r.value:void o(e,t)}{const d={resolved:!1};p.set(n,d);const f=function(e,t){if(!t.confident)return;if(e.isSequenceExpression()){const r=e.get("expressions");return c(r[r.length-1],t)}if(e.isStringLiteral()||e.isNumericLiteral()||e.isBooleanLiteral())return e.node.value;if(e.isNullLiteral())return null;if(e.isTemplateLiteral())return u(e,e.node.quasis,t);if(e.isTaggedTemplateExpression()&&e.get("tag").isMemberExpression()){const r=e.get("tag.object"),{node:{name:n}}=r,i=e.get("tag.property");if(r.isIdentifier()&&"String"===n&&!e.scope.getBinding(n)&&i.isIdentifier()&&"raw"===i.node.name)return u(e,e.node.quasi.quasis,t,!0)}if(e.isConditionalExpression()){const r=c(e.get("test"),t);if(!t.confident)return;return c(r?e.get("consequent"):e.get("alternate"),t)}if(e.isExpressionWrapper())return c(e.get("expression"),t);if(e.isMemberExpression()&&!e.parentPath.isCallExpression({callee:e.node})){const r=e.get("property"),n=e.get("object");if(n.isLiteral()){const i=n.node.value,s=typeof i;let a=null;if(e.node.computed){if(a=c(r,t),!t.confident)return}else r.isIdentifier()&&(a=r.node.name);if(!("number"!==s&&"string"!==s||null==a||"number"!=typeof a&&"string"!=typeof a))return i[a]}}if(e.isReferencedIdentifier()){const r=e.scope.getBinding(e.node.name);if(r){if(r.constantViolations.length>0||e.node.start<r.path.node.end)return void o(r.path,t);if(r.hasValue)return r.value}const n=e.node.name;if(l.has(n))return r?void o(r.path,t):l.get(n);const i=e.resolve();return i===e?void o(e,t):c(i,t)}if(e.isUnaryExpression({prefix:!0})){if("void"===e.node.operator)return;const r=e.get("argument");if("typeof"===e.node.operator&&(r.isFunction()||r.isClass()))return"function";const n=c(r,t);if(!t.confident)return;switch(e.node.operator){case"!":return!n;case"+":return+n;case"-":return-n;case"~":return~n;case"typeof":return typeof n}}if(e.isArrayExpression()){const r=[],n=e.get("elements");for(const e of n){const n=e.evaluate();if(!n.confident)return void o(n.deopt,t);r.push(n.value)}return r}if(e.isObjectExpression()){const r={},n=e.get("properties");for(const e of n){if(e.isObjectMethod()||e.isSpreadElement())return void o(e,t);const n=e.get("key");let i;if(e.node.computed){if(i=n.evaluate(),!i.confident)return void o(i.deopt,t);i=i.value}else i=n.isIdentifier()?n.node.name:n.node.value;let s=e.get("value").evaluate();if(!s.confident)return void o(s.deopt,t);s=s.value,r[i]=s}return r}if(e.isLogicalExpression()){const r=t.confident,n=c(e.get("left"),t),i=t.confident;t.confident=r;const s=c(e.get("right"),t),a=t.confident;switch(e.node.operator){case"||":if(t.confident=i&&(!!n||a),!t.confident)return;return n||s;case"&&":if(t.confident=i&&(!n||a),!t.confident)return;return n&&s;case"??":if(t.confident=i&&(null!=n||a),!t.confident)return;return null!=n?n:s}}if(e.isBinaryExpression()){const r=c(e.get("left"),t);if(!t.confident)return;const n=c(e.get("right"),t);if(!t.confident)return;switch(e.node.operator){case"-":return r-n;case"+":return r+n;case"/":return r/n;case"*":return r*n;case"%":return r%n;case"**":return Math.pow(r,n);case"<":return r<n;case">":return r>n;case"<=":return r<=n;case">=":return r>=n;case"==":return r==n;case"!=":return r!=n;case"===":return r===n;case"!==":return r!==n;case"|":return r|n;case"&":return r&n;case"^":return r^n;case"<<":return r<<n;case">>":return r>>n;case">>>":return r>>>n}}if(e.isCallExpression()){const n=e.get("callee");let o,l;if(n.isIdentifier()&&!e.scope.getBinding(n.node.name)&&(a(n.node.name)||function(e){return i.includes(e)}(n.node.name))&&(l=r.g[n.node.name]),n.isMemberExpression()){const e=n.get("object"),t=n.get("property");if(e.isIdentifier()&&t.isIdentifier()&&a(e.node.name)&&!function(e){return s.includes(e)}(t.node.name)){o=r.g[e.node.name];const n=t.node.name;hasOwnProperty.call(o,n)&&(l=o[n])}if(e.isLiteral()&&t.isIdentifier()){const r=typeof e.node.value;"string"!==r&&"number"!==r||(o=e.node.value,l=o[t.node.name])}}if(l){const r=e.get("arguments").map((e=>c(e,t)));if(!t.confident)return;return l.apply(o,r)}}o(e,t)}(e,t);return t.confident&&(d.resolved=!0,d.value=f),f}}function u(e,t,r,n=!1){let i="",s=0;const a=e.isTemplateLiteral()?e.get("expressions"):e.get("quasi.expressions");for(const e of t){if(!r.confident)break;i+=n?e.value.raw:e.value.cooked;const t=a[s++];t&&(i+=String(c(t,r)))}if(r.confident)return i}},311:function(e,t,r){var n,i=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),s=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||(n=function(e){return n=Object.getOwnPropertyNames||function(e){var t=[];for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[t.length]=r);return t},n(e)},function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r=n(e),a=0;a<r.length;a++)"default"!==r[a]&&i(t,e,r[a]);return s(t,e),t}),o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.ProxyFunctionVariable=t.ProxyFunction=t.isProxyFunctionExpression=void 0;const l=a(r(2352)),c=r(2624),u=o(r(5781));t.isProxyFunctionExpression=e=>l.isFunction(e)&&e.params.every((e=>l.isIdentifier(e)))&&(l.isBlockStatement(e.body)&&1==e.body.body.length&&l.isReturnStatement(e.body.body[0])&&(null==e.body.body[0].argument||l.isExpression(e.body.body[0].argument)&&p(e.body.body[0].argument))||l.isArrowFunctionExpression(e)&&l.isExpression(e.body)&&p(e.body));const p=e=>{if(l.isFunction(e)||l.isBlockStatement(e)||l.isSequenceExpression(e))return!1;let t=!0;return(0,u.default)(e,{"SequenceExpression|BlockStatement|Function|AssignmentExpression"(e){t=!1,e.stop()},noScope:!0}),t};class d{constructor(e){this.expression=e}getReplacement(e){const t=l.isExpression(this.expression.body)?(0,c.copyExpression)(this.expression.body):this.expression.body.body[0].argument?(0,c.copyExpression)(this.expression.body.body[0].argument):l.identifier("undefined");return this.replaceParameters(t,e),t}replaceParameters(e,t){const r=new Map(this.expression.params.map(((e,r)=>[e.name,t[r]||l.identifier("undefined")]))),n=[];(0,u.default)(e,{enter(e){if(l.isIdentifier(e.node)&&(!e.parentPath||!e.parentPath.isMemberExpression()||"property"!=e.key)&&r.has(e.node.name)){const t=r.get(e.node.name);n.push([e,t])}},noScope:!0});for(const[e,t]of n)e.replaceWith(t)}}t.ProxyFunction=d;t.ProxyFunctionVariable=class extends d{constructor(e){super(e.expression),this.variable=e}getCalls(){return this.variable.binding.referencePaths}replaceCall(e){if(e.parentPath&&e.parentPath.isCallExpression()&&"callee"==e.key){const t=this.getReplacement(e.parentPath.node.arguments);return e.parentPath.replaceWith(t),!0}return!1}}},322:(e,t,r)=>{function n(){const e=r(4092);return n=function(){return e},e}function i(){const e=r(8992);return i=function(){return e},e}function s(){const e=r(2485);return s=function(){return e},e}function a(){const e=r(2352);return a=function(){return e},e}Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t="global"){let r;const n={global:O,module:C,umd:I,var:N}[t];if(!n)throw new Error(`Unsupported output type ${t}`);r=n(e);return(0,i().default)(r).code};const{arrayExpression:o,assignmentExpression:l,binaryExpression:c,blockStatement:u,callExpression:p,cloneNode:d,conditionalExpression:f,exportNamedDeclaration:h,exportSpecifier:m,expressionStatement:y,functionExpression:b,identifier:g,memberExpression:v,objectExpression:x,program:T,stringLiteral:S,unaryExpression:E,variableDeclaration:P,variableDeclarator:A}=a(),w=e=>s().default.statement` | |
(function (root, factory) { | |
if (typeof define === "function" && define.amd) { | |
define(AMD_ARGUMENTS, factory); | |
} else if (typeof exports === "object") { | |
factory(COMMON_ARGUMENTS); | |
} else { | |
factory(BROWSER_ARGUMENTS); | |
} | |
})(UMD_ROOT, function (FACTORY_PARAMETERS) { | |
FACTORY_BODY | |
}); | |
`(e);function O(e){const t=g("babelHelpers"),r=[],n=b(null,[g("global")],u(r)),i=T([y(p(n,[f(c("===",E("typeof",g("global")),S("undefined")),g("self"),g("global"))]))]);return r.push(P("var",[A(t,l("=",v(g("global"),t),x([])))])),_(r,t,e),i}function C(e){const t=[],r=_(t,null,e);return t.unshift(h(null,Object.keys(r).map((e=>m(d(r[e]),g(e)))))),T(t,[],"module")}function I(e){const t=g("babelHelpers"),r=[];return r.push(P("var",[A(t,g("global"))])),_(r,t,e),T([w({FACTORY_PARAMETERS:g("global"),BROWSER_ARGUMENTS:l("=",v(g("root"),t),x([])),COMMON_ARGUMENTS:g("exports"),AMD_ARGUMENTS:o([S("exports")]),FACTORY_BODY:r,UMD_ROOT:g("this")})])}function N(e){const t=g("babelHelpers"),r=[];r.push(P("var",[A(t,x([]))]));const n=T(r);return _(r,t,e),r.push(y(t)),n}function _(e,t,r){const i=e=>t?v(t,g(e)):g(`_${e}`),s={};return n().list.forEach((function(a){if(r&&!r.includes(a))return;const o=s[a]=i(a),{nodes:c}=n().get(a,i,t?null:`_${a}`,[],t?(e,t,r)=>{r((e=>l("=",o,e))),e.body.push(y(l("=",o,g(t))))}:null);e.push(...c)})),s}},324:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.getEnv=function(e="development"){return{NODE_ENV:"production"}.BABEL_ENV||"production"}},329:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=i;var n=r(8960);function i(e,t,r,s){const a=[].concat(e),o=Object.create(null);for(;a.length;){const e=a.shift();if(!e)continue;if(s&&((0,n.isAssignmentExpression)(e)||(0,n.isUnaryExpression)(e)||(0,n.isUpdateExpression)(e)))continue;if((0,n.isIdentifier)(e)){if(t){(o[e.name]=o[e.name]||[]).push(e)}else o[e.name]=e;continue}if((0,n.isExportDeclaration)(e)&&!(0,n.isExportAllDeclaration)(e)){(0,n.isDeclaration)(e.declaration)&&a.push(e.declaration);continue}if(r){if((0,n.isFunctionDeclaration)(e)){a.push(e.id);continue}if((0,n.isFunctionExpression)(e))continue}const l=i.keys[e.type];if(l)for(let t=0;t<l.length;t++){const r=e[l[t]];r&&(Array.isArray(r)?a.push(...r):a.push(r))}}return o}i.keys={DeclareClass:["id"],DeclareFunction:["id"],DeclareModule:["id"],DeclareVariable:["id"],DeclareInterface:["id"],DeclareTypeAlias:["id"],DeclareOpaqueType:["id"],InterfaceDeclaration:["id"],TypeAlias:["id"],OpaqueType:["id"],CatchClause:["param"],LabeledStatement:["label"],UnaryExpression:["argument"],AssignmentExpression:["left"],ImportSpecifier:["local"],ImportNamespaceSpecifier:["local"],ImportDefaultSpecifier:["local"],ImportDeclaration:["specifiers"],TSImportEqualsDeclaration:["id"],ExportSpecifier:["exported"],ExportNamespaceSpecifier:["exported"],ExportDefaultSpecifier:["exported"],FunctionDeclaration:["id","params"],FunctionExpression:["id","params"],ArrowFunctionExpression:["params"],ObjectMethod:["params"],ClassMethod:["params"],ClassPrivateMethod:["params"],ForInStatement:["left"],ForOfStatement:["left"],ClassDeclaration:["id"],ClassExpression:["id"],RestElement:["argument"],UpdateExpression:["argument"],ObjectProperty:["value"],AssignmentPattern:["left"],ArrayPattern:["elements"],ObjectPattern:["properties"],VariableDeclaration:["declarations"],VariableDeclarator:["id"]}},354:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){if(!this.isReferenced())return;const t=this.scope.getBinding(e.name);if(t)return t.identifier.typeAnnotation?t.identifier.typeAnnotation:function(e,t,r){const n=[],s=[];let a=c(e,t,s);const o=p(e,t,r);if(o){const t=c(e,o.ifStatement);a=a.filter((e=>!t.includes(e))),n.push(o.typeAnnotation)}if(a.length){a.push(...s);for(const e of a)n.push(e.getTypeAnnotation())}if(!n.length)return;return(0,i.createUnionType)(n)}(t,this,e.name);if("undefined"===e.name)return l();if("NaN"===e.name||"Infinity"===e.name)return o();e.name};var n=r(2352),i=r(3141);const{BOOLEAN_NUMBER_BINARY_OPERATORS:s,createTypeAnnotationBasedOnTypeof:a,numberTypeAnnotation:o,voidTypeAnnotation:l}=n;function c(e,t,r){const n=e.constantViolations.slice();return n.unshift(e.path),n.filter((e=>{const n=(e=e.resolve())._guessExecutionStatusRelativeTo(t);return r&&"unknown"===n&&r.push(e),"before"===n}))}function u(e,t){const r=t.node.operator,n=t.get("right").resolve(),i=t.get("left").resolve();let l,c,u;if(i.isIdentifier({name:e})?l=n:n.isIdentifier({name:e})&&(l=i),l)return"==="===r?l.getTypeAnnotation():s.includes(r)?o():void 0;if("==="!==r&&"=="!==r)return;if(i.isUnaryExpression({operator:"typeof"})?(c=i,u=n):n.isUnaryExpression({operator:"typeof"})&&(c=n,u=i),!c)return;if(!c.get("argument").isIdentifier({name:e}))return;if(u=u.resolve(),!u.isLiteral())return;const p=u.node.value;return"string"==typeof p?a(p):void 0}function p(e,t,r){const n=function(e,t,r){let n;for(;n=t.parentPath;){if(n.isIfStatement()||n.isConditionalExpression()){if("test"===t.key)return;return n}if(n.isFunction()&&n.parentPath.scope.getBinding(r)!==e)return;t=n}}(e,t,r);if(!n)return;const s=[n.get("test")],a=[];for(let e=0;e<s.length;e++){const t=s[e];if(t.isLogicalExpression())"&&"===t.node.operator&&(s.push(t.get("left")),s.push(t.get("right")));else if(t.isBinaryExpression()){const e=u(r,t);e&&a.push(e)}}return a.length?{typeAnnotation:(0,i.createUnionType)(a),ifStatement:n}:p(e,n,r)}},414:e=>{e.exports=Math.round},421:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.or=t.OrMatcher=void 0;const n=r(8305);class i extends n.Matcher{constructor(...e){super(),this.matchersOrValues=e}matchValue(e,t){for(const r of this.matchersOrValues)if(r instanceof n.Matcher){if(r.matchValue(e,t))return!0}else if(r===e)return!0;return!1}}t.OrMatcher=i,t.or=function(...e){return new i(...e)}},439:e=>{e.exports=JSON.parse('{"transform-duplicate-named-capturing-groups-regex":{"chrome":"126","opera":"112","edge":"126","firefox":"129","safari":"17.4","node":"23","ios":"17.4","electron":"31.0"},"transform-regexp-modifiers":{"chrome":"125","opera":"111","edge":"125","firefox":"132","node":"23","electron":"31.0"},"transform-unicode-sets-regex":{"chrome":"112","opera":"98","edge":"112","firefox":"116","safari":"17","node":"20","deno":"1.32","ios":"17","opera_mobile":"75","electron":"24.0"},"bugfix/transform-v8-static-class-fields-redefine-readonly":{"chrome":"98","opera":"84","edge":"98","firefox":"75","safari":"15","node":"12","deno":"1.18","ios":"15","samsung":"11","opera_mobile":"52","electron":"17.0"},"bugfix/transform-firefox-class-in-computed-class-key":{"chrome":"74","opera":"62","edge":"79","safari":"16","node":"12","deno":"1","ios":"16","samsung":"11","opera_mobile":"53","electron":"6.0"},"bugfix/transform-safari-class-field-initializer-scope":{"chrome":"74","opera":"62","edge":"79","firefox":"69","safari":"16","node":"12","deno":"1","ios":"16","samsung":"11","opera_mobile":"53","electron":"6.0"},"transform-class-static-block":{"chrome":"94","opera":"80","edge":"94","firefox":"93","safari":"16.4","node":"16.11","deno":"1.14","ios":"16.4","samsung":"17","opera_mobile":"66","electron":"15.0"},"proposal-class-static-block":{"chrome":"94","opera":"80","edge":"94","firefox":"93","safari":"16.4","node":"16.11","deno":"1.14","ios":"16.4","samsung":"17","opera_mobile":"66","electron":"15.0"},"transform-private-property-in-object":{"chrome":"91","opera":"77","edge":"91","firefox":"90","safari":"15","node":"16.9","deno":"1.9","ios":"15","samsung":"16","opera_mobile":"64","electron":"13.0"},"proposal-private-property-in-object":{"chrome":"91","opera":"77","edge":"91","firefox":"90","safari":"15","node":"16.9","deno":"1.9","ios":"15","samsung":"16","opera_mobile":"64","electron":"13.0"},"transform-class-properties":{"chrome":"74","opera":"62","edge":"79","firefox":"90","safari":"14.1","node":"12","deno":"1","ios":"14.5","samsung":"11","opera_mobile":"53","electron":"6.0"},"proposal-class-properties":{"chrome":"74","opera":"62","edge":"79","firefox":"90","safari":"14.1","node":"12","deno":"1","ios":"14.5","samsung":"11","opera_mobile":"53","electron":"6.0"},"transform-private-methods":{"chrome":"84","opera":"70","edge":"84","firefox":"90","safari":"15","node":"14.6","deno":"1","ios":"15","samsung":"14","opera_mobile":"60","electron":"10.0"},"proposal-private-methods":{"chrome":"84","opera":"70","edge":"84","firefox":"90","safari":"15","node":"14.6","deno":"1","ios":"15","samsung":"14","opera_mobile":"60","electron":"10.0"},"transform-numeric-separator":{"chrome":"75","opera":"62","edge":"79","firefox":"70","safari":"13","node":"12.5","deno":"1","ios":"13","samsung":"11","rhino":"1.7.14","opera_mobile":"54","electron":"6.0"},"proposal-numeric-separator":{"chrome":"75","opera":"62","edge":"79","firefox":"70","safari":"13","node":"12.5","deno":"1","ios":"13","samsung":"11","rhino":"1.7.14","opera_mobile":"54","electron":"6.0"},"transform-logical-assignment-operators":{"chrome":"85","opera":"71","edge":"85","firefox":"79","safari":"14","node":"15","deno":"1.2","ios":"14","samsung":"14","opera_mobile":"60","electron":"10.0"},"proposal-logical-assignment-operators":{"chrome":"85","opera":"71","edge":"85","firefox":"79","safari":"14","node":"15","deno":"1.2","ios":"14","samsung":"14","opera_mobile":"60","electron":"10.0"},"transform-nullish-coalescing-operator":{"chrome":"80","opera":"67","edge":"80","firefox":"72","safari":"13.1","node":"14","deno":"1","ios":"13.4","samsung":"13","opera_mobile":"57","electron":"8.0"},"proposal-nullish-coalescing-operator":{"chrome":"80","opera":"67","edge":"80","firefox":"72","safari":"13.1","node":"14","deno":"1","ios":"13.4","samsung":"13","opera_mobile":"57","electron":"8.0"},"transform-optional-chaining":{"chrome":"91","opera":"77","edge":"91","firefox":"74","safari":"13.1","node":"16.9","deno":"1.9","ios":"13.4","samsung":"16","opera_mobile":"64","electron":"13.0"},"proposal-optional-chaining":{"chrome":"91","opera":"77","edge":"91","firefox":"74","safari":"13.1","node":"16.9","deno":"1.9","ios":"13.4","samsung":"16","opera_mobile":"64","electron":"13.0"},"transform-json-strings":{"chrome":"66","opera":"53","edge":"79","firefox":"62","safari":"12","node":"10","deno":"1","ios":"12","samsung":"9","rhino":"1.7.14","opera_mobile":"47","electron":"3.0"},"proposal-json-strings":{"chrome":"66","opera":"53","edge":"79","firefox":"62","safari":"12","node":"10","deno":"1","ios":"12","samsung":"9","rhino":"1.7.14","opera_mobile":"47","electron":"3.0"},"transform-optional-catch-binding":{"chrome":"66","opera":"53","edge":"79","firefox":"58","safari":"11.1","node":"10","deno":"1","ios":"11.3","samsung":"9","opera_mobile":"47","electron":"3.0"},"proposal-optional-catch-binding":{"chrome":"66","opera":"53","edge":"79","firefox":"58","safari":"11.1","node":"10","deno":"1","ios":"11.3","samsung":"9","opera_mobile":"47","electron":"3.0"},"transform-parameters":{"chrome":"49","opera":"36","edge":"18","firefox":"53","safari":"16.3","node":"6","deno":"1","ios":"16.3","samsung":"5","opera_mobile":"36","electron":"0.37"},"transform-async-generator-functions":{"chrome":"63","opera":"50","edge":"79","firefox":"57","safari":"12","node":"10","deno":"1","ios":"12","samsung":"8","opera_mobile":"46","electron":"3.0"},"proposal-async-generator-functions":{"chrome":"63","opera":"50","edge":"79","firefox":"57","safari":"12","node":"10","deno":"1","ios":"12","samsung":"8","opera_mobile":"46","electron":"3.0"},"transform-object-rest-spread":{"chrome":"60","opera":"47","edge":"79","firefox":"55","safari":"11.1","node":"8.3","deno":"1","ios":"11.3","samsung":"8","opera_mobile":"44","electron":"2.0"},"proposal-object-rest-spread":{"chrome":"60","opera":"47","edge":"79","firefox":"55","safari":"11.1","node":"8.3","deno":"1","ios":"11.3","samsung":"8","opera_mobile":"44","electron":"2.0"},"transform-dotall-regex":{"chrome":"62","opera":"49","edge":"79","firefox":"78","safari":"11.1","node":"8.10","deno":"1","ios":"11.3","samsung":"8","rhino":"1.7.15","opera_mobile":"46","electron":"3.0"},"transform-unicode-property-regex":{"chrome":"64","opera":"51","edge":"79","firefox":"78","safari":"11.1","node":"10","deno":"1","ios":"11.3","samsung":"9","opera_mobile":"47","electron":"3.0"},"proposal-unicode-property-regex":{"chrome":"64","opera":"51","edge":"79","firefox":"78","safari":"11.1","node":"10","deno":"1","ios":"11.3","samsung":"9","opera_mobile":"47","electron":"3.0"},"transform-named-capturing-groups-regex":{"chrome":"64","opera":"51","edge":"79","firefox":"78","safari":"11.1","node":"10","deno":"1","ios":"11.3","samsung":"9","opera_mobile":"47","electron":"3.0"},"transform-async-to-generator":{"chrome":"55","opera":"42","edge":"15","firefox":"52","safari":"11","node":"7.6","deno":"1","ios":"11","samsung":"6","opera_mobile":"42","electron":"1.6"},"transform-exponentiation-operator":{"chrome":"52","opera":"39","edge":"14","firefox":"52","safari":"10.1","node":"7","deno":"1","ios":"10.3","samsung":"6","rhino":"1.7.14","opera_mobile":"41","electron":"1.3"},"transform-template-literals":{"chrome":"41","opera":"28","edge":"13","firefox":"34","safari":"13","node":"4","deno":"1","ios":"13","samsung":"3.4","opera_mobile":"28","electron":"0.21"},"transform-literals":{"chrome":"44","opera":"31","edge":"12","firefox":"53","safari":"9","node":"4","deno":"1","ios":"9","samsung":"4","rhino":"1.7.15","opera_mobile":"32","electron":"0.30"},"transform-function-name":{"chrome":"51","opera":"38","edge":"79","firefox":"53","safari":"10","node":"6.5","deno":"1","ios":"10","samsung":"5","opera_mobile":"41","electron":"1.2"},"transform-arrow-functions":{"chrome":"47","opera":"34","edge":"13","firefox":"43","safari":"10","node":"6","deno":"1","ios":"10","samsung":"5","rhino":"1.7.13","opera_mobile":"34","electron":"0.36"},"transform-block-scoped-functions":{"chrome":"41","opera":"28","edge":"12","firefox":"46","safari":"10","node":"4","deno":"1","ie":"11","ios":"10","samsung":"3.4","opera_mobile":"28","electron":"0.21"},"transform-classes":{"chrome":"46","opera":"33","edge":"13","firefox":"45","safari":"10","node":"5","deno":"1","ios":"10","samsung":"5","opera_mobile":"33","electron":"0.36"},"transform-object-super":{"chrome":"46","opera":"33","edge":"13","firefox":"45","safari":"10","node":"5","deno":"1","ios":"10","samsung":"5","opera_mobile":"33","electron":"0.36"},"transform-shorthand-properties":{"chrome":"43","opera":"30","edge":"12","firefox":"33","safari":"9","node":"4","deno":"1","ios":"9","samsung":"4","rhino":"1.7.14","opera_mobile":"30","electron":"0.27"},"transform-duplicate-keys":{"chrome":"42","opera":"29","edge":"12","firefox":"34","safari":"9","node":"4","deno":"1","ios":"9","samsung":"3.4","opera_mobile":"29","electron":"0.25"},"transform-computed-properties":{"chrome":"44","opera":"31","edge":"12","firefox":"34","safari":"7.1","node":"4","deno":"1","ios":"8","samsung":"4","opera_mobile":"32","electron":"0.30"},"transform-for-of":{"chrome":"51","opera":"38","edge":"15","firefox":"53","safari":"10","node":"6.5","deno":"1","ios":"10","samsung":"5","opera_mobile":"41","electron":"1.2"},"transform-sticky-regex":{"chrome":"49","opera":"36","edge":"13","firefox":"3","safari":"10","node":"6","deno":"1","ios":"10","samsung":"5","rhino":"1.7.15","opera_mobile":"36","electron":"0.37"},"transform-unicode-escapes":{"chrome":"44","opera":"31","edge":"12","firefox":"53","safari":"9","node":"4","deno":"1","ios":"9","samsung":"4","rhino":"1.7.15","opera_mobile":"32","electron":"0.30"},"transform-unicode-regex":{"chrome":"50","opera":"37","edge":"13","firefox":"46","safari":"12","node":"6","deno":"1","ios":"12","samsung":"5","opera_mobile":"37","electron":"1.1"},"transform-spread":{"chrome":"46","opera":"33","edge":"13","firefox":"45","safari":"10","node":"5","deno":"1","ios":"10","samsung":"5","opera_mobile":"33","electron":"0.36"},"transform-destructuring":{"chrome":"51","opera":"38","edge":"15","firefox":"53","safari":"10","node":"6.5","deno":"1","ios":"10","samsung":"5","opera_mobile":"41","electron":"1.2"},"transform-block-scoping":{"chrome":"50","opera":"37","edge":"14","firefox":"53","safari":"11","node":"6","deno":"1","ios":"11","samsung":"5","opera_mobile":"37","electron":"1.1"},"transform-typeof-symbol":{"chrome":"48","opera":"35","edge":"12","firefox":"36","safari":"9","node":"6","deno":"1","ios":"9","samsung":"5","opera_mobile":"35","electron":"0.37"},"transform-new-target":{"chrome":"46","opera":"33","edge":"14","firefox":"41","safari":"10","node":"5","deno":"1","ios":"10","samsung":"5","opera_mobile":"33","electron":"0.36"},"transform-regenerator":{"chrome":"50","opera":"37","edge":"13","firefox":"53","safari":"10","node":"6","deno":"1","ios":"10","samsung":"5","opera_mobile":"37","electron":"1.1"},"transform-member-expression-literals":{"chrome":"7","opera":"12","edge":"12","firefox":"2","safari":"5.1","node":"0.4","deno":"1","ie":"9","android":"4","ios":"6","phantom":"1.9","samsung":"1","rhino":"1.7.13","opera_mobile":"12","electron":"0.20"},"transform-property-literals":{"chrome":"7","opera":"12","edge":"12","firefox":"2","safari":"5.1","node":"0.4","deno":"1","ie":"9","android":"4","ios":"6","phantom":"1.9","samsung":"1","rhino":"1.7.13","opera_mobile":"12","electron":"0.20"},"transform-reserved-words":{"chrome":"13","opera":"10.50","edge":"12","firefox":"2","safari":"3.1","node":"0.6","deno":"1","ie":"9","android":"4.4","ios":"6","phantom":"1.9","samsung":"1","rhino":"1.7.13","opera_mobile":"10.1","electron":"0.20"},"transform-export-namespace-from":{"chrome":"72","deno":"1.0","edge":"79","firefox":"80","node":"13.2","opera":"60","opera_mobile":"51","safari":"14.1","ios":"14.5","samsung":"11.0","android":"72","electron":"5.0"},"proposal-export-namespace-from":{"chrome":"72","deno":"1.0","edge":"79","firefox":"80","node":"13.2","opera":"60","opera_mobile":"51","safari":"14.1","ios":"14.5","samsung":"11.0","android":"72","electron":"5.0"}}')},451:function(e,t,r){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.Deobfuscator=void 0;const i=n(r(8992)),s=n(r(5781)),a=r(7187),o=r(7615),l=r(8626),c=r(2767),u=r(3054),p=r(3781),d=r(8709),f=r(647),h=r(8925),m=r(6922),y=r(9023),b=r(1643),g=r(6113),v=r(5978);class x{constructor(e,t=a.defaultConfig){this.transformationTypes=[c.UnusedVariableRemover,u.ConstantPropgator,p.ReassignmentRemover,f.DeadBranchRemover,g.ObjectPacker,l.ProxyFunctionInliner,y.ExpressionSimplifier,h.SequenceSplitter,b.ControlFlowRecoverer,m.PropertySimplifier,v.AntiTamperRemover,o.ObjectSimplifier,d.StringRevealer],this.ast=e,this.config=t}execute(){let e=this.transformationTypes.filter((e=>this.config[e.properties.key].isEnabled)),t=0;for(;t<x.MAX_ITERATIONS;){let r=!1;this.config.silent||console.log(`\n[${(new Date).toISOString()}]: Starting pass ${t+1}`);for(const t of e){const e=this.config[t.properties.key],n=new t(this.ast,e);this.config.silent||console.log(`[${(new Date).toISOString()}]: Executing ${n.constructor.name}`);let i=!1;try{i=n.execute(console.log.bind(console,`[${n.constructor.name}]:`))}catch(e){console.error(e)}i&&(r=!0),this.config.silent||console.log(`[${(new Date).toISOString()}]: Executed ${n.constructor.name}, modified ${i}`),t.properties.rebuildScopeTree&&this.clearCache()}if(t++,!r)break}return(0,i.default)(this.ast,{jsescOption:{minimal:!0}}).code}clearCache(){s.default.cache.clear()}}t.Deobfuscator=x,x.MAX_ITERATIONS=50},453:(e,t,r)=>{var n,i=r(9612),s=r(9383),a=r(1237),o=r(9290),l=r(9538),c=r(8068),u=r(9675),p=r(7726),d=r(1514),f=r(8968),h=r(6188),m=r(8002),y=r(5880),b=r(414),g=r(3093),v=Function,x=function(e){try{return v('"use strict"; return ('+e+").constructor;")()}catch(e){}},T=r(5795),S=r(655),E=function(){throw new u},P=T?function(){try{return E}catch(e){try{return T(arguments,"callee").get}catch(e){return E}}}():E,A=r(4039)(),w=r(3628),O=r(1064),C=r(8648),I=r(1002),N=r(76),_={},M="undefined"!=typeof Uint8Array&&w?w(Uint8Array):n,k={__proto__:null,"%AggregateError%":"undefined"==typeof AggregateError?n:AggregateError,"%Array%":Array,"%ArrayBuffer%":"undefined"==typeof ArrayBuffer?n:ArrayBuffer,"%ArrayIteratorPrototype%":A&&w?w([][Symbol.iterator]()):n,"%AsyncFromSyncIteratorPrototype%":n,"%AsyncFunction%":_,"%AsyncGenerator%":_,"%AsyncGeneratorFunction%":_,"%AsyncIteratorPrototype%":_,"%Atomics%":"undefined"==typeof Atomics?n:Atomics,"%BigInt%":"undefined"==typeof BigInt?n:BigInt,"%BigInt64Array%":"undefined"==typeof BigInt64Array?n:BigInt64Array,"%BigUint64Array%":"undefined"==typeof BigUint64Array?n:BigUint64Array,"%Boolean%":Boolean,"%DataView%":"undefined"==typeof DataView?n:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":s,"%eval%":eval,"%EvalError%":a,"%Float16Array%":"undefined"==typeof Float16Array?n:Float16Array,"%Float32Array%":"undefined"==typeof Float32Array?n:Float32Array,"%Float64Array%":"undefined"==typeof Float64Array?n:Float64Array,"%FinalizationRegistry%":"undefined"==typeof FinalizationRegistry?n:FinalizationRegistry,"%Function%":v,"%GeneratorFunction%":_,"%Int8Array%":"undefined"==typeof Int8Array?n:Int8Array,"%Int16Array%":"undefined"==typeof Int16Array?n:Int16Array,"%Int32Array%":"undefined"==typeof Int32Array?n:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":A&&w?w(w([][Symbol.iterator]())):n,"%JSON%":"object"==typeof JSON?JSON:n,"%Map%":"undefined"==typeof Map?n:Map,"%MapIteratorPrototype%":"undefined"!=typeof Map&&A&&w?w((new Map)[Symbol.iterator]()):n,"%Math%":Math,"%Number%":Number,"%Object%":i,"%Object.getOwnPropertyDescriptor%":T,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":"undefined"==typeof Promise?n:Promise,"%Proxy%":"undefined"==typeof Proxy?n:Proxy,"%RangeError%":o,"%ReferenceError%":l,"%Reflect%":"undefined"==typeof Reflect?n:Reflect,"%RegExp%":RegExp,"%Set%":"undefined"==typeof Set?n:Set,"%SetIteratorPrototype%":"undefined"!=typeof Set&&A&&w?w((new Set)[Symbol.iterator]()):n,"%SharedArrayBuffer%":"undefined"==typeof SharedArrayBuffer?n:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":A&&w?w(""[Symbol.iterator]()):n,"%Symbol%":A?Symbol:n,"%SyntaxError%":c,"%ThrowTypeError%":P,"%TypedArray%":M,"%TypeError%":u,"%Uint8Array%":"undefined"==typeof Uint8Array?n:Uint8Array,"%Uint8ClampedArray%":"undefined"==typeof Uint8ClampedArray?n:Uint8ClampedArray,"%Uint16Array%":"undefined"==typeof Uint16Array?n:Uint16Array,"%Uint32Array%":"undefined"==typeof Uint32Array?n:Uint32Array,"%URIError%":p,"%WeakMap%":"undefined"==typeof WeakMap?n:WeakMap,"%WeakRef%":"undefined"==typeof WeakRef?n:WeakRef,"%WeakSet%":"undefined"==typeof WeakSet?n:WeakSet,"%Function.prototype.call%":N,"%Function.prototype.apply%":I,"%Object.defineProperty%":S,"%Object.getPrototypeOf%":O,"%Math.abs%":d,"%Math.floor%":f,"%Math.max%":h,"%Math.min%":m,"%Math.pow%":y,"%Math.round%":b,"%Math.sign%":g,"%Reflect.getPrototypeOf%":C};if(w)try{null.error}catch(e){var D=w(w(e));k["%Error.prototype%"]=D}var j=function e(t){var r;if("%AsyncFunction%"===t)r=x("async function () {}");else if("%GeneratorFunction%"===t)r=x("function* () {}");else if("%AsyncGeneratorFunction%"===t)r=x("async function* () {}");else if("%AsyncGenerator%"===t){var n=e("%AsyncGeneratorFunction%");n&&(r=n.prototype)}else if("%AsyncIteratorPrototype%"===t){var i=e("%AsyncGenerator%");i&&w&&(r=w(i.prototype))}return k[t]=r,r},B={__proto__:null,"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},L=r(6743),F=r(9957),R=L.call(N,Array.prototype.concat),V=L.call(I,Array.prototype.splice),U=L.call(N,String.prototype.replace),q=L.call(N,String.prototype.slice),K=L.call(N,RegExp.prototype.exec),$=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,W=/\\(\\)?/g,G=function(e,t){var r,n=e;if(F(B,n)&&(n="%"+(r=B[n])[0]+"%"),F(k,n)){var i=k[n];if(i===_&&(i=j(n)),void 0===i&&!t)throw new u("intrinsic "+e+" exists, but is not available. Please file an issue!");return{alias:r,name:n,value:i}}throw new c("intrinsic "+e+" does not exist!")};e.exports=function(e,t){if("string"!=typeof e||0===e.length)throw new u("intrinsic name must be a non-empty string");if(arguments.length>1&&"boolean"!=typeof t)throw new u('"allowMissing" argument must be a boolean');if(null===K(/^%?[^%]*%?$/,e))throw new c("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var r=function(e){var t=q(e,0,1),r=q(e,-1);if("%"===t&&"%"!==r)throw new c("invalid intrinsic syntax, expected closing `%`");if("%"===r&&"%"!==t)throw new c("invalid intrinsic syntax, expected opening `%`");var n=[];return U(e,$,(function(e,t,r,i){n[n.length]=r?U(i,W,"$1"):t||e})),n}(e),n=r.length>0?r[0]:"",i=G("%"+n+"%",t),s=i.name,a=i.value,o=!1,l=i.alias;l&&(n=l[0],V(r,R([0,1],l)));for(var p=1,d=!0;p<r.length;p+=1){var f=r[p],h=q(f,0,1),m=q(f,-1);if(('"'===h||"'"===h||"`"===h||'"'===m||"'"===m||"`"===m)&&h!==m)throw new c("property names with quotes must have matching quotes");if("constructor"!==f&&d||(o=!0),F(k,s="%"+(n+="."+f)+"%"))a=k[s];else if(null!=a){if(!(f in a)){if(!t)throw new u("base intrinsic for "+e+" exists, but the property is not available.");return}if(T&&p+1>=r.length){var y=T(a,f);a=(d=!!y)&&"get"in y&&!("originalValue"in y.get)?y.get:a[f]}else d=F(a,f),a=a[f];d&&!o&&(k[s]=a)}}return a}},487:(e,t,r)=>{var n=r(6897),i=r(655),s=r(3126),a=r(2205);e.exports=function(e){var t=s(arguments),r=e.length-(arguments.length-1);return n(t,1+(r>0?r:0),!0)},i?i(e.exports,"apply",{value:a}):e.exports.apply=a},499:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,n.isVariableDeclaration)(e,{kind:"var"})&&!e[i.BLOCK_SCOPED_SYMBOL]};var n=r(8960),i=r(3422)},521:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.BreakStatement=function(e){this.word("break"),p(this,e.label)},t.CatchClause=function(e){this.word("catch"),this.space(),e.param&&(this.tokenChar(40),this.print(e.param),this.print(e.param.typeAnnotation),this.tokenChar(41),this.space());this.print(e.body)},t.ContinueStatement=function(e){this.word("continue"),p(this,e.label)},t.DebuggerStatement=function(){this.word("debugger"),this.semicolon()},t.DoWhileStatement=function(e){this.word("do"),this.space(),this.print(e.body),this.space(),this.word("while"),this.space(),this.tokenChar(40),this.print(e.test),this.tokenChar(41),this.semicolon()},t.ForOfStatement=t.ForInStatement=void 0,t.ForStatement=function(e){this.word("for"),this.space(),this.tokenChar(40);{const t=this.enterForStatementInit();this.tokenContext|=i.TokenContext.forHead,this.print(e.init),t()}this.tokenChar(59),e.test&&(this.space(),this.print(e.test));this.token(";",!1,1),e.update&&(this.space(),this.print(e.update));this.tokenChar(41),this.printBlock(e)},t.IfStatement=function(e){this.word("if"),this.space(),this.tokenChar(40),this.print(e.test),this.tokenChar(41),this.space();const t=e.alternate&&o(c(e.consequent));t&&(this.tokenChar(123),this.newline(),this.indent());this.printAndIndentOnComments(e.consequent),t&&(this.dedent(),this.newline(),this.tokenChar(125));e.alternate&&(this.endsWith(125)&&this.space(),this.word("else"),this.space(),this.printAndIndentOnComments(e.alternate))},t.LabeledStatement=function(e){this.print(e.label),this.tokenChar(58),this.space(),this.print(e.body)},t.ReturnStatement=function(e){this.word("return"),p(this,e.argument)},t.SwitchCase=function(e){e.test?(this.word("case"),this.space(),this.print(e.test),this.tokenChar(58)):(this.word("default"),this.tokenChar(58));e.consequent.length&&(this.newline(),this.printSequence(e.consequent,!0))},t.SwitchStatement=function(e){this.word("switch"),this.space(),this.tokenChar(40),this.print(e.discriminant),this.tokenChar(41),this.space(),this.tokenChar(123),this.printSequence(e.cases,!0,void 0,(function(t,r){if(!t&&e.cases[e.cases.length-1]===r)return-1})),this.rightBrace(e)},t.ThrowStatement=function(e){this.word("throw"),p(this,e.argument)},t.TryStatement=function(e){this.word("try"),this.space(),this.print(e.block),this.space(),e.handlers?this.print(e.handlers[0]):this.print(e.handler);e.finalizer&&(this.space(),this.word("finally"),this.space(),this.print(e.finalizer))},t.VariableDeclaration=function(e,t){e.declare&&(this.word("declare"),this.space());const{kind:r}=e;"await using"===r?(this.word("await"),this.space(),this.word("using",!0)):this.word(r,"using"===r);this.space();let n=!1;if(!s(t))for(const t of e.declarations)t.init&&(n=!0);if(this.printList(e.declarations,void 0,void 0,e.declarations.length>1,n?function(e){this.token(",",!1,e),this.newline()}:void 0),s(t))if(a(t)){if(t.init===e)return}else if(t.left===e)return;this.semicolon()},t.VariableDeclarator=function(e){this.print(e.id),e.definite&&this.tokenChar(33);this.print(e.id.typeAnnotation),e.init&&(this.space(),this.tokenChar(61),this.space(),this.print(e.init))},t.WhileStatement=function(e){this.word("while"),this.space(),this.tokenChar(40),this.print(e.test),this.tokenChar(41),this.printBlock(e)},t.WithStatement=function(e){this.word("with"),this.space(),this.tokenChar(40),this.print(e.object),this.tokenChar(41),this.printBlock(e)};var n=r(2352),i=r(1373);const{isFor:s,isForStatement:a,isIfStatement:o,isStatement:l}=n;function c(e){const{body:t}=e;return!1===l(t)?e:c(t)}function u(e){this.word("for"),this.space();const t="ForOfStatement"===e.type;t&&e.await&&(this.word("await"),this.space()),this.noIndentInnerCommentsHere(),this.tokenChar(40);{const r=t?null:this.enterForStatementInit();this.tokenContext|=t?i.TokenContext.forOfHead:i.TokenContext.forInHead,this.print(e.left),null==r||r()}this.space(),this.word(t?"of":"in"),this.space(),this.print(e.right),this.tokenChar(41),this.printBlock(e)}t.ForInStatement=u,t.ForOfStatement=u;function p(e,t){t&&(e.space(),e.printTerminatorless(t)),e.semicolon()}},537:(e,t,r)=>{var n=Object.getOwnPropertyDescriptors||function(e){for(var t=Object.keys(e),r={},n=0;n<t.length;n++)r[t[n]]=Object.getOwnPropertyDescriptor(e,t[n]);return r},i=/%[sdj%]/g;t.format=function(e){if(!g(e)){for(var t=[],r=0;r<arguments.length;r++)t.push(l(arguments[r]));return t.join(" ")}r=1;for(var n=arguments,s=n.length,a=String(e).replace(i,(function(e){if("%%"===e)return"%";if(r>=s)return e;switch(e){case"%s":return String(n[r++]);case"%d":return Number(n[r++]);case"%j":try{return JSON.stringify(n[r++])}catch(e){return"[Circular]"}default:return e}})),o=n[r];r<s;o=n[++r])y(o)||!T(o)?a+=" "+o:a+=" "+l(o);return a},t.deprecate=function(e,r){if("undefined"!=typeof process&&!0===process.noDeprecation)return e;if("undefined"==typeof process)return function(){return t.deprecate(e,r).apply(this,arguments)};var n=!1;return function(){if(!n){if(process.throwDeprecation)throw new Error(r);process.traceDeprecation?console.trace(r):console.error(r),n=!0}return e.apply(this,arguments)}};var s={},a=/^$/;if({NODE_ENV:"production"}.NODE_DEBUG){var o={NODE_ENV:"production"}.NODE_DEBUG;o=o.replace(/[|\\{}()[\]^$+?.]/g,"\\$&").replace(/\*/g,".*").replace(/,/g,"$|^").toUpperCase(),a=new RegExp("^"+o+"$","i")}function l(e,r){var n={seen:[],stylize:u};return arguments.length>=3&&(n.depth=arguments[2]),arguments.length>=4&&(n.colors=arguments[3]),m(r)?n.showHidden=r:r&&t._extend(n,r),v(n.showHidden)&&(n.showHidden=!1),v(n.depth)&&(n.depth=2),v(n.colors)&&(n.colors=!1),v(n.customInspect)&&(n.customInspect=!0),n.colors&&(n.stylize=c),p(n,e,n.depth)}function c(e,t){var r=l.styles[t];return r?"\x1b["+l.colors[r][0]+"m"+e+"\x1b["+l.colors[r][1]+"m":e}function u(e,t){return e}function p(e,r,n){if(e.customInspect&&r&&P(r.inspect)&&r.inspect!==t.inspect&&(!r.constructor||r.constructor.prototype!==r)){var i=r.inspect(n,e);return g(i)||(i=p(e,i,n)),i}var s=function(e,t){if(v(t))return e.stylize("undefined","undefined");if(g(t)){var r="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(r,"string")}if(b(t))return e.stylize(""+t,"number");if(m(t))return e.stylize(""+t,"boolean");if(y(t))return e.stylize("null","null")}(e,r);if(s)return s;var a=Object.keys(r),o=function(e){var t={};return e.forEach((function(e,r){t[e]=!0})),t}(a);if(e.showHidden&&(a=Object.getOwnPropertyNames(r)),E(r)&&(a.indexOf("message")>=0||a.indexOf("description")>=0))return d(r);if(0===a.length){if(P(r)){var l=r.name?": "+r.name:"";return e.stylize("[Function"+l+"]","special")}if(x(r))return e.stylize(RegExp.prototype.toString.call(r),"regexp");if(S(r))return e.stylize(Date.prototype.toString.call(r),"date");if(E(r))return d(r)}var c,u="",T=!1,A=["{","}"];(h(r)&&(T=!0,A=["[","]"]),P(r))&&(u=" [Function"+(r.name?": "+r.name:"")+"]");return x(r)&&(u=" "+RegExp.prototype.toString.call(r)),S(r)&&(u=" "+Date.prototype.toUTCString.call(r)),E(r)&&(u=" "+d(r)),0!==a.length||T&&0!=r.length?n<0?x(r)?e.stylize(RegExp.prototype.toString.call(r),"regexp"):e.stylize("[Object]","special"):(e.seen.push(r),c=T?function(e,t,r,n,i){for(var s=[],a=0,o=t.length;a<o;++a)C(t,String(a))?s.push(f(e,t,r,n,String(a),!0)):s.push("");return i.forEach((function(i){i.match(/^\d+$/)||s.push(f(e,t,r,n,i,!0))})),s}(e,r,n,o,a):a.map((function(t){return f(e,r,n,o,t,T)})),e.seen.pop(),function(e,t,r){var n=e.reduce((function(e,t){return t.indexOf("\n")>=0&&0,e+t.replace(/\u001b\[\d\d?m/g,"").length+1}),0);if(n>60)return r[0]+(""===t?"":t+"\n ")+" "+e.join(",\n ")+" "+r[1];return r[0]+t+" "+e.join(", ")+" "+r[1]}(c,u,A)):A[0]+u+A[1]}function d(e){return"["+Error.prototype.toString.call(e)+"]"}function f(e,t,r,n,i,s){var a,o,l;if((l=Object.getOwnPropertyDescriptor(t,i)||{value:t[i]}).get?o=l.set?e.stylize("[Getter/Setter]","special"):e.stylize("[Getter]","special"):l.set&&(o=e.stylize("[Setter]","special")),C(n,i)||(a="["+i+"]"),o||(e.seen.indexOf(l.value)<0?(o=y(r)?p(e,l.value,null):p(e,l.value,r-1)).indexOf("\n")>-1&&(o=s?o.split("\n").map((function(e){return" "+e})).join("\n").slice(2):"\n"+o.split("\n").map((function(e){return" "+e})).join("\n")):o=e.stylize("[Circular]","special")),v(a)){if(s&&i.match(/^\d+$/))return o;(a=JSON.stringify(""+i)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(a=a.slice(1,-1),a=e.stylize(a,"name")):(a=a.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),a=e.stylize(a,"string"))}return a+": "+o}function h(e){return Array.isArray(e)}function m(e){return"boolean"==typeof e}function y(e){return null===e}function b(e){return"number"==typeof e}function g(e){return"string"==typeof e}function v(e){return void 0===e}function x(e){return T(e)&&"[object RegExp]"===A(e)}function T(e){return"object"==typeof e&&null!==e}function S(e){return T(e)&&"[object Date]"===A(e)}function E(e){return T(e)&&("[object Error]"===A(e)||e instanceof Error)}function P(e){return"function"==typeof e}function A(e){return Object.prototype.toString.call(e)}function w(e){return e<10?"0"+e.toString(10):e.toString(10)}t.debuglog=function(e){if(e=e.toUpperCase(),!s[e])if(a.test(e)){var r=process.pid;s[e]=function(){var n=t.format.apply(t,arguments);console.error("%s %d: %s",e,r,n)}}else s[e]=function(){};return s[e]},t.inspect=l,l.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},l.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},t.types=r(9032),t.isArray=h,t.isBoolean=m,t.isNull=y,t.isNullOrUndefined=function(e){return null==e},t.isNumber=b,t.isString=g,t.isSymbol=function(e){return"symbol"==typeof e},t.isUndefined=v,t.isRegExp=x,t.types.isRegExp=x,t.isObject=T,t.isDate=S,t.types.isDate=S,t.isError=E,t.types.isNativeError=E,t.isFunction=P,t.isPrimitive=function(e){return null===e||"boolean"==typeof e||"number"==typeof e||"string"==typeof e||"symbol"==typeof e||void 0===e},t.isBuffer=r(1135);var O=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function C(e,t){return Object.prototype.hasOwnProperty.call(e,t)}t.log=function(){var e,r;console.log("%s - %s",(e=new Date,r=[w(e.getHours()),w(e.getMinutes()),w(e.getSeconds())].join(":"),[e.getDate(),O[e.getMonth()],r].join(" ")),t.format.apply(t,arguments))},t.inherits=r(6698),t._extend=function(e,t){if(!t||!T(t))return e;for(var r=Object.keys(t),n=r.length;n--;)e[r[n]]=t[r[n]];return e};var I="undefined"!=typeof Symbol?Symbol("util.promisify.custom"):void 0;function N(e,t){if(!e){var r=new Error("Promise was rejected with a falsy value");r.reason=e,e=r}return t(e)}t.promisify=function(e){if("function"!=typeof e)throw new TypeError('The "original" argument must be of type Function');if(I&&e[I]){var t;if("function"!=typeof(t=e[I]))throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(t,I,{value:t,enumerable:!1,writable:!1,configurable:!0}),t}function t(){for(var t,r,n=new Promise((function(e,n){t=e,r=n})),i=[],s=0;s<arguments.length;s++)i.push(arguments[s]);i.push((function(e,n){e?r(e):t(n)}));try{e.apply(this,i)}catch(e){r(e)}return n}return Object.setPrototypeOf(t,Object.getPrototypeOf(e)),I&&Object.defineProperty(t,I,{value:t,enumerable:!1,writable:!1,configurable:!0}),Object.defineProperties(t,n(e))},t.promisify.custom=I,t.callbackify=function(e){if("function"!=typeof e)throw new TypeError('The "original" argument must be of type Function');function t(){for(var t=[],r=0;r<arguments.length;r++)t.push(arguments[r]);var n=t.pop();if("function"!=typeof n)throw new TypeError("The last argument must be of type Function");var i=this,s=function(){return n.apply(i,arguments)};e.apply(this,t).then((function(e){process.nextTick(s.bind(null,null,e))}),(function(e){process.nextTick(N.bind(null,e,s))}))}return Object.setPrototypeOf(t,Object.getPrototypeOf(e)),Object.defineProperties(t,n(e)),t}},546:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.BlockStatement=function(e){var t;this.tokenChar(123);const r=this.enterDelimited(),n=null==(t=e.directives)?void 0:t.length;if(n){var i;const t=e.body.length?2:1;this.printSequence(e.directives,!0,t),null!=(i=e.directives[n-1].trailingComments)&&i.length||this.newline(t)}this.printSequence(e.body,!0),r(),this.rightBrace(e)},t.Directive=function(e){this.print(e.value),this.semicolon()},t.DirectiveLiteral=function(e){const t=this.getPossibleRaw(e);if(!this.format.minified&&void 0!==t)return void this.token(t);const{value:i}=e;if(n.test(i)){if(r.test(i))throw new Error("Malformed AST: it is not possible to print a directive containing both unescaped single and double quotes.");this.token(`'${i}'`)}else this.token(`"${i}"`)},t.File=function(e){e.program&&this.print(e.program.interpreter);this.print(e.program)},t.InterpreterDirective=function(e){this.token(`#!${e.value}`),this.newline(1,!0)},t.Placeholder=function(e){this.token("%%"),this.print(e.name),this.token("%%"),"Statement"===e.expectedNode&&this.semicolon()},t.Program=function(e){var t;this.noIndentInnerCommentsHere(),this.printInnerComments();const r=null==(t=e.directives)?void 0:t.length;if(r){var n;const t=e.body.length?2:1;this.printSequence(e.directives,void 0,t),null!=(n=e.directives[r-1].trailingComments)&&n.length||this.newline(t)}this.printSequence(e.body)};const r=/(?:^|[^\\])(?:\\\\)*'/,n=/(?:^|[^\\])(?:\\\\)*"/},562:e=>{e.exports={A:"ie",B:"edge",C:"firefox",D:"chrome",E:"safari",F:"opera",G:"ios_saf",H:"op_mini",I:"android",J:"bb",K:"op_mob",L:"and_chr",M:"and_ff",N:"ie_mob",O:"and_uc",P:"samsung",Q:"and_qq",R:"baidu",S:"kaios"}},592:(e,t,r)=>{var n=r(655),i=function(){return!!n};i.hasArrayLengthDefineBug=function(){if(!n)return null;try{return 1!==n([],"length",{value:1}).length}catch(e){return!0}},e.exports=i},640:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if(null==e||!e.length)return;const r=[],i=(0,n.default)(e,r);if(!i)return;for(const e of r)t.push(e);return i};var n=r(4089)},647:function(e,t,r){var n,i=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),s=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||(n=function(e){return n=Object.getOwnPropertyNames||function(e){var t=[];for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[t.length]=r);return t},n(e)},function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r=n(e),a=0;a<r.length;a++)"default"!==r[a]&&i(t,e,r[a]);return s(t,e),t}),o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.DeadBranchRemover=void 0;const l=a(r(2352)),c=o(r(5781)),u=r(5132);class p extends u.Transformation{execute(e){const t=this;return(0,c.default)(this.ast,{IfStatement(e){if(t.isSemiLiteral(e.node.test))if(t.isTruthy(e.node.test)){const r=l.isBlockStatement(e.node.consequent)?e.node.consequent.body:[e.node.consequent];e.replaceWithMultiple(r),t.setChanged()}else e.node.alternate?l.isBlockStatement(e.node.alternate)?e.replaceWithMultiple(e.node.alternate.body):e.replaceWith(e.node.alternate):e.remove(),t.setChanged()},ConditionalExpression(e){if(t.isSemiLiteral(e.node.test)){const r=t.isTruthy(e.node.test)?e.node.consequent:e.node.alternate;e.replaceWith(r),t.setChanged()}else if(l.isBooleanLiteral(e.node.consequent)&&l.isBooleanLiteral(e.node.alternate)){const r=e.node.consequent.value,n=e.node.alternate.value;let i;i=r&&!n?l.unaryExpression("!",l.unaryExpression("!",e.node.test)):!r&&n?l.unaryExpression("!",e.node.test):r&&n?l.sequenceExpression([e.node.test,l.booleanLiteral(!0)]):l.sequenceExpression([e.node.test,l.booleanLiteral(!1)]),e.replaceWith(i),t.setChanged()}}}),this.hasChanged()}isSemiLiteral(e){return l.isLiteral(e)||l.isArrayExpression(e)||l.isObjectExpression(e)}isTruthy(e){return!(l.isBooleanLiteral(e)||l.isNumericLiteral(e)||l.isStringLiteral(e))||!!e.value}}t.DeadBranchRemover=p,p.properties={key:"deadBranchRemoval",rebuildScopeTree:!0}},655:e=>{var t=Object.defineProperty||!1;if(t)try{t({},"a",{value:1})}catch(e){t=!1}e.exports=t},662:function(e,t,r){var n,i=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),s=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||(n=function(e){return n=Object.getOwnPropertyNames||function(e){var t=[];for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[t.length]=r);return t},n(e)},function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r=n(e),a=0;a<r.length;a++)"default"!==r[a]&&i(t,e,r[a]);return s(t,e),t});Object.defineProperty(t,"__esModule",{value:!0}),t.rotateStringArray=function(e,t,r,n){const i=d(t,r);let s=0;for(;;){try{if(f(i)==n)break;e.push(e.shift())}catch(t){e.push(e.shift())}if(s++>1e5)throw new Error("Max number of string rotation iterations reached")}};const o=a(r(2352)),l=r(770),c=new Set(["+","-","*","/","%"]),u=new Set(["-"]),p=new Set(["CallExpression","UnaryExpression","BinaryExpression","NumericLiteral"]);function d(e,t){switch(e.type){case"CallExpression":return function(e,t){if(!o.isIdentifier(e.callee)||"parseInt"!=e.callee.name||1!=e.arguments.length||!o.isCallExpression(e.arguments[0]))throw new Error("Unsupported string call operation");const r=e.arguments[0];if(!o.isIdentifier(r.callee)||!r.arguments.every((e=>o.isNumericLiteral(e)||(0,l.isNegativeNumericLiteral)(e)||o.isStringLiteral(e))))throw new Error("Unsupported string call operation");const n=r.arguments.map((e=>o.isNumericLiteral(e)||o.isStringLiteral(e)?e.value:-e.argument.value)),i=r.callee.name;if(!t.has(i))throw new Error(`Unknown string decoder ${i}`);const s=t.get(i);return{type:"CallOperation",decoder:s,args:n}}(e,t);case"UnaryExpression":return function(e,t){if(!u.has(e.operator))throw new Error(`Unsupported unary operator ${e.operator}`);if(!p.has(e.argument.type))throw new Error(`Unsupported string rotation operation type ${e.argument.type}`);const r=d(e.argument,t);return{type:"UnaryOperation",operator:e.operator,argument:r}}(e,t);case"BinaryExpression":return function(e,t){if(!c.has(e.operator))throw new Error(`Unsupported binary operator ${e.operator}`);if(!p.has(e.left.type))throw new Error(`Unsupported string rotation operation type ${e.left.type}`);if(!p.has(e.right.type))throw new Error(`Unsupported string rotation operation type ${e.right.type}`);const r=d(e.left,t),n=d(e.right,t);return{type:"BinaryOperation",operator:e.operator,left:r,right:n}}(e,t);case"NumericLiteral":return e}}function f(e){switch(e.type){case"CallOperation":return t=e,parseInt(t.decoder.getStringForRotation(...t.args));case"UnaryOperation":return function(e){const t=f(e.argument);if("-"===e.operator)return-t}(e);case"BinaryOperation":return function(e){const t=f(e.left),r=f(e.right);switch(e.operator){case"+":return t+r;case"-":return t-r;case"*":return t*r;case"/":return t/r;case"%":return t%r}}(e);case"NumericLiteral":return e.value}var t}},682:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ROOT_CONFIG_FILENAMES=void 0,t.findConfigUpwards=function(e){return null},t.findPackageData=function*(e){return{filepath:e,directories:[],pkg:null,isPackage:!1}},t.findRelativeConfig=function*(e,t,r){return{config:null,ignore:null}},t.findRootConfig=function*(e,t,r){return null},t.loadConfig=function*(e,t,r,n){throw new Error(`Cannot load ${e} relative to ${t} in a browser`)},t.loadPlugin=function(e,t){throw new Error(`Cannot load plugin ${e} relative to ${t} in a browser`)},t.loadPreset=function(e,t){throw new Error(`Cannot load preset ${e} relative to ${t} in a browser`)},t.resolvePlugin=function(e,t){return null},t.resolvePreset=function(e,t){return null},t.resolveShowConfigPath=function*(e){return null};t.ROOT_CONFIG_FILENAMES=[]},736:(e,t,r)=>{e.exports=function(e){function t(e){let r,i,s,a=null;function o(...e){if(!o.enabled)return;const n=o,i=Number(new Date),s=i-(r||i);n.diff=s,n.prev=r,n.curr=i,r=i,e[0]=t.coerce(e[0]),"string"!=typeof e[0]&&e.unshift("%O");let a=0;e[0]=e[0].replace(/%([a-zA-Z%])/g,((r,i)=>{if("%%"===r)return"%";a++;const s=t.formatters[i];if("function"==typeof s){const t=e[a];r=s.call(n,t),e.splice(a,1),a--}return r})),t.formatArgs.call(n,e);(n.log||t.log).apply(n,e)}return o.namespace=e,o.useColors=t.useColors(),o.color=t.selectColor(e),o.extend=n,o.destroy=t.destroy,Object.defineProperty(o,"enabled",{enumerable:!0,configurable:!1,get:()=>null!==a?a:(i!==t.namespaces&&(i=t.namespaces,s=t.enabled(e)),s),set:e=>{a=e}}),"function"==typeof t.init&&t.init(o),o}function n(e,r){const n=t(this.namespace+(void 0===r?":":r)+e);return n.log=this.log,n}function i(e,t){let r=0,n=0,i=-1,s=0;for(;r<e.length;)if(n<t.length&&(t[n]===e[r]||"*"===t[n]))"*"===t[n]?(i=n,s=r,n++):(r++,n++);else{if(-1===i)return!1;n=i+1,s++,r=s}for(;n<t.length&&"*"===t[n];)n++;return n===t.length}return t.debug=t,t.default=t,t.coerce=function(e){if(e instanceof Error)return e.stack||e.message;return e},t.disable=function(){const e=[...t.names,...t.skips.map((e=>"-"+e))].join(",");return t.enable(""),e},t.enable=function(e){t.save(e),t.namespaces=e,t.names=[],t.skips=[];const r=("string"==typeof e?e:"").trim().replace(" ",",").split(",").filter(Boolean);for(const e of r)"-"===e[0]?t.skips.push(e.slice(1)):t.names.push(e)},t.enabled=function(e){for(const r of t.skips)if(i(e,r))return!1;for(const r of t.names)if(i(e,r))return!0;return!1},t.humanize=r(6585),t.destroy=function(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")},Object.keys(e).forEach((r=>{t[r]=e[r]})),t.names=[],t.skips=[],t.formatters={},t.selectColor=function(e){let r=0;for(let t=0;t<e.length;t++)r=(r<<5)-r+e.charCodeAt(t),r|=0;return t.colors[Math.abs(r)%t.colors.length]},t.enable(t.load()),t}},770:function(e,t,r){var n,i=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),s=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||(n=function(e){return n=Object.getOwnPropertyNames||function(e){var t=[];for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[t.length]=r);return t},n(e)},function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r=n(e),a=0;a<r.length;a++)"default"!==r[a]&&i(t,e,r[a]);return s(t,e),t});Object.defineProperty(t,"__esModule",{value:!0}),t.isNegativeNumericLiteral=function(e){return o.isUnaryExpression(e)&&"-"==e.operator&&o.isNumericLiteral(e.argument)};const o=a(r(2352))},786:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.transformFile=void 0,t.transformFileAsync=function(){return Promise.reject(new Error("Transforming files is not supported in browsers"))},t.transformFileSync=function(){throw new Error("Transforming files is not supported in browsers")};t.transformFile=function(e,t,r){"function"==typeof t&&(r=t),r(new Error("Transforming files is not supported in browsers"),null)}},826:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.statements=t.statement=t.smart=t.program=t.expression=void 0;var n=r(2352);const{assertExpressionStatement:i}=n;function s(e){return{code:e=>`/* @babel/template */;\n${e}`,validate:()=>{},unwrap:t=>e(t.program.body.slice(1))}}t.smart=s((e=>e.length>1?e:e[0])),t.statements=s((e=>e)),t.statement=s((e=>{if(0===e.length)throw new Error("Found nothing to return.");if(e.length>1)throw new Error("Found multiple statements but wanted one");return e[0]}));const a=t.expression={code:e=>`(\n${e}\n)`,validate:e=>{if(e.program.body.length>1)throw new Error("Found multiple statements but wanted one");if(0===a.unwrap(e).start)throw new Error("Parse result included parens.")},unwrap:({program:e})=>{const[t]=e.body;return i(t),t.expression}};t.program={code:e=>e,validate:()=>{},unwrap:e=>e.program}},854:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t._guessExecutionStatusRelativeTo=function(e){return b(this,e,new Map)},t._resolve=g,t.canHaveVariableDeclarationOrExpression=function(){return("init"===this.key||"left"===this.key)&&this.parentPath.isFor()},t.canSwapBetweenExpressionAndStatement=function(e){if("body"!==this.key||!this.parentPath.isArrowFunctionExpression())return!1;if(this.isExpression())return a(e);if(this.isBlockStatement())return o(e);return!1},t.getSource=function(){const e=this.node;if(e.end){const t=this.hub.getCode();if(t)return t.slice(e.start,e.end)}return""},t.isCompletionRecord=function(e){let t=this,r=!0;do{const{type:n,container:i}=t;if(!r&&(t.isFunction()||"StaticBlock"===n))return!!e;if(r=!1,Array.isArray(i)&&t.key!==i.length-1)return!1}while((t=t.parentPath)&&!t.isProgram()&&!t.isDoExpression());return!0},t.isConstantExpression=function(){if(this.isIdentifier()){const e=this.scope.getBinding(this.node.name);return!!e&&e.constant}if(this.isLiteral())return!this.isRegExpLiteral()&&(!this.isTemplateLiteral()||this.get("expressions").every((e=>e.isConstantExpression())));if(this.isUnaryExpression())return"void"===this.node.operator&&this.get("argument").isConstantExpression();if(this.isBinaryExpression()){const{operator:e}=this.node;return"in"!==e&&"instanceof"!==e&&this.get("left").isConstantExpression()&&this.get("right").isConstantExpression()}if(this.isMemberExpression())return!this.node.computed&&this.get("object").isIdentifier({name:"Symbol"})&&!this.scope.hasBinding("Symbol",{noGlobals:!0});if(this.isCallExpression())return 1===this.node.arguments.length&&this.get("callee").matchesPattern("Symbol.for")&&!this.scope.hasBinding("Symbol",{noGlobals:!0})&&this.get("arguments")[0].isStringLiteral();return!1},t.isInStrictMode=function(){const e=this.isProgram()?this:this.parentPath;return!!e.find((e=>{if(e.isProgram({sourceType:"module"}))return!0;if(e.isClass())return!0;if(e.isArrowFunctionExpression()&&!e.get("body").isBlockStatement())return!1;let t;if(e.isFunction())t=e.node.body;else{if(!e.isProgram())return!1;t=e.node}for(const e of t.directives)if("use strict"===e.value.value)return!0}))},t.isNodeType=function(e){return p(this.type,e)},t.isStatementOrBlock=function(){return!this.parentPath.isLabeledStatement()&&!a(this.container)&&i.includes(this.key)},t.isStatic=function(){return this.scope.isStatic(this.node)},t.matchesPattern=function(e,t){return d(this.node,e,t)},t.referencesImport=function(e,t){if(!this.isReferencedIdentifier()){if(this.isJSXMemberExpression()&&this.node.property.name===t||(this.isMemberExpression()||this.isOptionalMemberExpression())&&(this.node.computed?u(this.node.property,{value:t}):this.node.property.name===t)){const t=this.get("object");return t.isReferencedIdentifier()&&t.referencesImport(e,"*")}return!1}const r=this.scope.getBinding(this.node.name);if(!r||"module"!==r.kind)return!1;const n=r.path,i=n.parentPath;if(!i.isImportDeclaration())return!1;if(i.node.source.value!==e)return!1;if(!t)return!0;if(n.isImportDefaultSpecifier()&&"default"===t)return!0;if(n.isImportNamespaceSpecifier()&&"*"===t)return!0;if(n.isImportSpecifier()&&l(n.node.imported,{name:t}))return!0;return!1},t.resolve=function(e,t){return g.call(this,e,t)||this},t.willIMaybeExecuteBefore=function(e){return"after"!==this._guessExecutionStatusRelativeTo(e)};var n=r(2352);const{STATEMENT_OR_BLOCK_KEYS:i,VISITOR_KEYS:s,isBlockStatement:a,isExpression:o,isIdentifier:l,isLiteral:c,isStringLiteral:u,isType:p,matchesPattern:d}=n;function f(e){return e.isProgram()?e:(e.parentPath.scope.getFunctionParent()||e.parentPath.scope.getProgramParent()).path}function h(e,t){switch(e){case"LogicalExpression":case"AssignmentPattern":return"right"===t;case"ConditionalExpression":case"IfStatement":return"consequent"===t||"alternate"===t;case"WhileStatement":case"DoWhileStatement":case"ForInStatement":case"ForOfStatement":return"body"===t;case"ForStatement":return"body"===t||"update"===t;case"SwitchStatement":return"cases"===t;case"TryStatement":return"handler"===t;case"OptionalMemberExpression":return"property"===t;case"OptionalCallExpression":return"arguments"===t;default:return!1}}function m(e,t){for(let r=0;r<t;r++){const t=e[r];if(h(t.parent.type,t.parentKey))return!0}return!1}t.has=function(e){var t;const r=null==(t=this.node)?void 0:t[e];return r&&Array.isArray(r)?!!r.length:!!r},t.is=t.has,t.isnt=function(e){return!this.has(e)},t.equals=function(e,t){return this.node[e]===t};const y=Symbol();function b(e,t,r){const n={this:f(e),target:f(t)};if(n.target.node!==n.this.node)return function(e,t,r){let n,i=r.get(e.node);if(i){if(n=i.get(t.node))return n===y?"unknown":n}else r.set(e.node,i=new Map);i.set(t.node,y);const s=function(e,t,r){if(!t.isFunctionDeclaration())return"before"===b(e,t,r)?"before":"unknown";if(t.parentPath.isExportDeclaration())return"unknown";const n=t.scope.getBinding(t.node.id.name);if(!n.references)return"before";const i=n.referencePaths;let s;for(const n of i){if(!!n.find((e=>e.node===t.node)))continue;if("callee"!==n.key||!n.parentPath.isCallExpression())return"unknown";const i=b(e,n,r);if(s&&s!==i)return"unknown";s=i}return s}(e,t,r);return i.set(t.node,s),s}(e,n.target,r);const i={target:t.getAncestry(),this:e.getAncestry()};if(i.target.includes(e))return"after";if(i.this.includes(t))return"before";let a;const o={target:0,this:0};for(;!a&&o.this<i.this.length;){const e=i.this[o.this];o.target=i.target.indexOf(e),o.target>=0?a=e:o.this++}if(!a)throw new Error("Internal Babel error - The two compared nodes don't appear to belong to the same program.");if(m(i.this,o.this-1)||m(i.target,o.target-1))return"unknown";const l={this:i.this[o.this-1],target:i.target[o.target-1]};if(l.target.listKey&&l.this.listKey&&l.target.container===l.this.container)return l.target.key>l.this.key?"before":"after";const c=s[a.type],u=c.indexOf(l.this.parentKey);return c.indexOf(l.target.parentKey)>u?"before":"after"}function g(e,t){var r;if(null==(r=t)||!r.includes(this))if((t=t||[]).push(this),this.isVariableDeclarator()){if(this.get("id").isIdentifier())return this.get("init").resolve(e,t)}else if(this.isReferencedIdentifier()){const r=this.scope.getBinding(this.node.name);if(!r)return;if(!r.constant)return;if("module"===r.kind)return;if(r.path!==this){const n=r.path.resolve(e,t);if(this.find((e=>e.node===n.node)))return;return n}}else{if(this.isTypeCastExpression())return this.get("expression").resolve(e,t);if(e&&this.isMemberExpression()){const r=this.toComputedKey();if(!c(r))return;const n=r.value,i=this.get("object").resolve(e,t);if(i.isObjectExpression()){const r=i.get("properties");for(const i of r){if(!i.isProperty())continue;const r=i.get("key");let s=i.isnt("computed")&&r.isIdentifier({name:n});if(s=s||r.isLiteral({value:n}),s)return i.get("value").resolve(e,t)}}else if(i.isArrayExpression()&&!isNaN(+n)){const r=i.get("elements")[n];if(r)return r.resolve(e,t)}}}}},906:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"TargetNames",{enumerable:!0,get:function(){return c.TargetNames}}),t.default=function(e={},t={}){var r,s;let{browsers:a,esmodules:u}=e;const{configPath:p=".",onBrowserslistConfigFound:d}=t;!function(e){h.invariant(void 0===e||m(e),`'${String(e)}' is not a valid browserslist query`)}(a);let y=function(e){const t=Object.keys(c.TargetNames);for(const r of Object.keys(e))if(!(r in c.TargetNames))throw new Error(h.formatMessage(`'${r}' is not a valid target\n- Did you mean '${(0,i.findSuggestion)(r,t)}'?`));return e}(function(e){const t=Object.assign({},e);return delete t.esmodules,delete t.browsers,t}(e));const x=!!a||Object.keys(y).length>0,T=!t.ignoreBrowserslistConfig&&!x;if(!a&&T){if(a={NODE_ENV:"production"}.BROWSERSLIST,!a){const e=t.configFile||{NODE_ENV:"production"}.BROWSERSLIST_CONFIG||n.findConfigFile(p);null!=e&&(null==d||d(e),a=n.loadConfig({config:e,env:t.browserslistEnv}))}null==a&&(a=[])}!u||"intersect"===u&&null!=(r=a)&&r.length||(a=Object.keys(f).map((e=>`${e} >= ${f[e]}`)).join(", "),u=!1);if(null!=(s=a)&&s.length){const e=function(e,t){const r="string"==typeof e?e:e.join()+t;let i=v.get(r);i||(i=function(e,t){const r=n(e,{mobileToDesktop:!0,env:t});return function(e){return e.reduce(((e,t)=>{const[r,n]=t.split(" "),i=l.browserNameMap[r];if(!i)return e;try{const t=n.split("-")[0].toLowerCase(),r=(0,o.isUnreleasedVersion)(t,i);if(!e[i])return e[i]=r?t:(0,o.semverify)(t),e;const s=e[i],a=(0,o.isUnreleasedVersion)(s,i);if(a&&r)e[i]=(0,o.getLowestUnreleased)(s,t,i);else if(a)e[i]=(0,o.semverify)(t);else if(!a&&!r){const r=(0,o.semverify)(t);e[i]=(0,o.semverMin)(s,r)}}catch(e){}return e}),{})}(r)}(e,t),v.set(r,i));return Object.assign({},i)}(a,t.browserslistEnv);if("intersect"===u)for(const t of Object.keys(e))if("deno"!==t&&"ie"!==t){const r=f["opera_mobile"===t?"op_mob":t];if(r){const n=e[t];e[t]=(0,o.getHighestUnreleased)(n,(0,o.semverify)(r),t)}else delete e[t]}else delete e[t];y=Object.assign(e,y)}const S={},E=[];for(const e of Object.keys(y).sort()){const t=y[e];"number"==typeof t&&t%1!=0&&E.push({target:e,value:t});const[r,n]="node"===e?b(t):g(e,t);n&&(S[r]=n)}return function(e){if(!e.length)return;console.warn("Warning, the following targets are using a decimal version:\n"),e.forEach((({target:e,value:t})=>console.warn(` ${e}: ${t}`))),console.warn("\nWe recommend using a string for minor/patch versions to avoid numbers like 6.10\ngetting parsed as 6.1, which can lead to unexpected behavior.\n")}(E),S},Object.defineProperty(t,"filterItems",{enumerable:!0,get:function(){return d.default}}),Object.defineProperty(t,"getInclusionReasons",{enumerable:!0,get:function(){return p.getInclusionReasons}}),t.isBrowsersQueryValid=m,Object.defineProperty(t,"isRequired",{enumerable:!0,get:function(){return d.isRequired}}),Object.defineProperty(t,"prettifyTargets",{enumerable:!0,get:function(){return u.prettifyTargets}}),Object.defineProperty(t,"unreleasedLabels",{enumerable:!0,get:function(){return l.unreleasedLabels}});var n=r(4364),i=r(130),s=r(8761),a=r(9749),o=r(6299),l=r(1884),c=r(8404),u=r(228),p=r(2253),d=r(3347);const f=s["es6.module"],h=new i.OptionValidator("@babel/helper-compilation-targets");function m(e){return"string"==typeof e||Array.isArray(e)&&e.every((e=>"string"==typeof e))}function y(e,t){try{return(0,o.semverify)(t)}catch(r){throw new Error(h.formatMessage(`'${t}' is not a valid value for 'targets.${e}'.`))}}function b(e){return["node",!0===e||"current"===e?process.versions.node.split("-")[0]:y("node",e)]}function g(e,t){return[e,(0,o.isUnreleasedVersion)(t,e)?t.toLowerCase():y(e,t)]}const v=new a({max:64})},940:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.find=function(e){let t=this;do{if(e(t))return t}while(t=t.parentPath);return null},t.findParent=function(e){let t=this;for(;t=t.parentPath;)if(e(t))return t;return null},t.getAncestry=function(){let e=this;const t=[];do{t.push(e)}while(e=e.parentPath);return t},t.getDeepestCommonAncestorFrom=function(e,t){if(!e.length)return this;if(1===e.length)return e[0];let r,n,i=1/0;const s=e.map((e=>{const t=[];do{t.unshift(e)}while((e=e.parentPath)&&e!==this);return t.length<i&&(i=t.length),t})),a=s[0];e:for(let e=0;e<i;e++){const t=a[e];for(const r of s)if(r[e]!==t)break e;r=e,n=t}if(n)return t?t(n,r,s):n;throw new Error("Couldn't find intersection")},t.getEarliestCommonAncestorFrom=function(e){return this.getDeepestCommonAncestorFrom(e,(function(e,t,r){let n;const s=i[e.type];for(const e of r){const r=e[t+1];if(!n){n=r;continue}if(r.listKey&&n.listKey===r.listKey&&r.key<n.key){n=r;continue}s.indexOf(n.parentKey)>s.indexOf(r.parentKey)&&(n=r)}return n}))},t.getFunctionParent=function(){return this.findParent((e=>e.isFunction()))},t.getStatementParent=function(){let e=this;do{if(!e.parentPath||Array.isArray(e.container)&&e.isStatement())break;e=e.parentPath}while(e);if(e&&(e.isProgram()||e.isFile()))throw new Error("File/Program node, we can't possibly find a statement parent to this");return e},t.inType=function(...e){let t=this;for(;t;){for(const r of e)if(t.node.type===r)return!0;t=t.parentPath}return!1},t.isAncestor=function(e){return e.isDescendant(this)},t.isDescendant=function(e){return!!this.findParent((t=>t===e))};var n=r(2352);const{VISITOR_KEYS:i}=n},947:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.finalize=function(e){return Object.freeze(e)},t.flattenToSet=function(e){const t=new Set,r=[e];for(;r.length>0;)for(const e of r.pop())Array.isArray(e)?r.push(e):t.add(e);return t}},983:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t=!0){if("string"!=typeof e)return!1;if(t&&((0,n.isKeyword)(e)||(0,n.isStrictReservedWord)(e,!0)))return!1;return(0,n.isIdentifierName)(e)};var n=r(1e3)},985:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.buildUndefinedNode=function(){return(0,n.unaryExpression)("void",(0,n.numericLiteral)(0),!0)};var n=r(8079)},1e3:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"isIdentifierChar",{enumerable:!0,get:function(){return n.isIdentifierChar}}),Object.defineProperty(t,"isIdentifierName",{enumerable:!0,get:function(){return n.isIdentifierName}}),Object.defineProperty(t,"isIdentifierStart",{enumerable:!0,get:function(){return n.isIdentifierStart}}),Object.defineProperty(t,"isKeyword",{enumerable:!0,get:function(){return i.isKeyword}}),Object.defineProperty(t,"isReservedWord",{enumerable:!0,get:function(){return i.isReservedWord}}),Object.defineProperty(t,"isStrictBindOnlyReservedWord",{enumerable:!0,get:function(){return i.isStrictBindOnlyReservedWord}}),Object.defineProperty(t,"isStrictBindReservedWord",{enumerable:!0,get:function(){return i.isStrictBindReservedWord}}),Object.defineProperty(t,"isStrictReservedWord",{enumerable:!0,get:function(){return i.isStrictReservedWord}});var n=r(8721),i=r(3115)},1002:e=>{e.exports=Function.prototype.apply},1009:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){const t=(0,i.default)(e);return 1===t.length?t[0]:(0,n.unionTypeAnnotation)(t)};var n=r(8079),i=r(5237)},1064:(e,t,r)=>{var n=r(9612);e.exports=n.getPrototypeOf||null},1093:e=>{var t=Object.prototype.toString;e.exports=function(e){var r=t.call(e),n="[object Arguments]"===r;return n||(n="[object Array]"!==r&&null!==e&&"object"==typeof e&&"number"==typeof e.length&&e.length>=0&&"[object Function]"===t.call(e.callee)),n}},1135:e=>{e.exports=function(e){return e&&"object"==typeof e&&"function"==typeof e.copy&&"function"==typeof e.fill&&"function"==typeof e.readUInt8}},1156:(e,t,r)=>{t.getModuleName=()=>r(1792).ug},1189:(e,t,r)=>{var n=Array.prototype.slice,i=r(1093),s=Object.keys,a=s?function(e){return s(e)}:r(8875),o=Object.keys;a.shim=function(){if(Object.keys){var e=function(){var e=Object.keys(arguments);return e&&e.length===arguments.length}(1,2);e||(Object.keys=function(e){return i(e)?o(n.call(e)):o(e)})}else Object.keys=a;return Object.keys||a},e.exports=a},1237:e=>{e.exports=EvalError},1257:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.fromCapture=t.FromCaptureMatcher=void 0;const n=r(2975),i=r(8305);class s extends i.Matcher{constructor(e){super(),this.capturedMatcher=e}matchValue(e){return n.t.isNode(this.capturedMatcher.current)&&n.t.isNode(e)?(0,n.nodesEquivalent)(this.capturedMatcher.current,e):this.capturedMatcher.current===e}}t.FromCaptureMatcher=s,t.fromCapture=function(e){return new s(e)}},1310:(e,t,r)=>{function n(){const e=r(3878);return n=function(){return e},e}Object.defineProperty(t,"__esModule",{value:!0}),t.assertSimpleType=h,t.makeStrongCache=c,t.makeStrongCacheSync=function(e){return a(c(e))},t.makeWeakCache=l,t.makeWeakCacheSync=function(e){return a(l(e))};var i=r(3310),s=r(9923);const a=e=>n()(e).sync;function*o(){return!0}function l(e){return u(WeakMap,e)}function c(e){return u(Map,e)}function u(e,t){const r=new e,n=new e,a=new e;return function*(e,o){const l=yield*(0,i.isAsync)(),c=l?n:r,u=yield*function*(e,t,r,n,s){const a=yield*p(t,n,s);if(a.valid)return a;if(e){const e=yield*p(r,n,s);if(e.valid){return{valid:!0,value:yield*(0,i.waitFor)(e.value.promise)}}}return{valid:!1,value:null}}(l,c,a,e,o);if(u.valid)return u.value;const h=new f(o),y=t(e,h);let b,g;return g=(0,s.isIterableIterator)(y)?yield*(0,i.onFirstPause)(y,(()=>{b=function(e,t,r){const n=new m;return d(t,e,r,n),n}(h,a,e)})):y,d(c,h,e,g),b&&(a.delete(e),b.release(g)),g}}function*p(e,t,r){const n=e.get(t);if(n)for(const{value:e,valid:t}of n)if(yield*t(r))return{valid:!0,value:e};return{valid:!1,value:null}}function d(e,t,r,n){t.configured()||t.forever();let i=e.get(r);switch(t.deactivate(),t.mode()){case"forever":i=[{value:n,valid:o}],e.set(r,i);break;case"invalidate":i=[{value:n,valid:t.validator()}],e.set(r,i);break;case"valid":i?i.push({value:n,valid:t.validator()}):(i=[{value:n,valid:t.validator()}],e.set(r,i))}}class f{constructor(e){this._active=!0,this._never=!1,this._forever=!1,this._invalidate=!1,this._configured=!1,this._pairs=[],this._data=void 0,this._data=e}simple(){return function(e){function t(t){if("boolean"!=typeof t)return e.using((()=>h(t())));t?e.forever():e.never()}return t.forever=()=>e.forever(),t.never=()=>e.never(),t.using=t=>e.using((()=>h(t()))),t.invalidate=t=>e.invalidate((()=>h(t()))),t}(this)}mode(){return this._never?"never":this._forever?"forever":this._invalidate?"invalidate":"valid"}forever(){if(!this._active)throw new Error("Cannot change caching after evaluation has completed.");if(this._never)throw new Error("Caching has already been configured with .never()");this._forever=!0,this._configured=!0}never(){if(!this._active)throw new Error("Cannot change caching after evaluation has completed.");if(this._forever)throw new Error("Caching has already been configured with .forever()");this._never=!0,this._configured=!0}using(e){if(!this._active)throw new Error("Cannot change caching after evaluation has completed.");if(this._never||this._forever)throw new Error("Caching has already been configured with .never or .forever()");this._configured=!0;const t=e(this._data),r=(0,i.maybeAsync)(e,"You appear to be using an async cache handler, but Babel has been called synchronously");return(0,i.isThenable)(t)?t.then((e=>(this._pairs.push([e,r]),e))):(this._pairs.push([t,r]),t)}invalidate(e){return this._invalidate=!0,this.using(e)}validator(){const e=this._pairs;return function*(t){for(const[r,n]of e)if(r!==(yield*n(t)))return!1;return!0}}deactivate(){this._active=!1}configured(){return this._configured}}function h(e){if((0,i.isThenable)(e))throw new Error("You appear to be using an async cache handler, which your current version of Babel does not support. We may add support for this in the future, but if you're on the most recent version of @babel/core and still seeing this error, then you'll need to synchronously handle your caching logic.");if(null!=e&&"string"!=typeof e&&"boolean"!=typeof e&&"number"!=typeof e)throw new Error("Cache keys must be either string, boolean, number, null, or undefined.");return e}class m{constructor(){this.released=!1,this.promise=void 0,this._resolve=void 0,this.promise=new Promise((e=>{this._resolve=e}))}release(e){this.released=!0,this._resolve(e)}}},1333:e=>{e.exports=function(){if("function"!=typeof Symbol||"function"!=typeof Object.getOwnPropertySymbols)return!1;if("symbol"==typeof Symbol.iterator)return!0;var e={},t=Symbol("test"),r=Object(t);if("string"==typeof t)return!1;if("[object Symbol]"!==Object.prototype.toString.call(t))return!1;if("[object Symbol]"!==Object.prototype.toString.call(r))return!1;for(var n in e[t]=42,e)return!1;if("function"==typeof Object.keys&&0!==Object.keys(e).length)return!1;if("function"==typeof Object.getOwnPropertyNames&&0!==Object.getOwnPropertyNames(e).length)return!1;var i=Object.getOwnPropertySymbols(e);if(1!==i.length||i[0]!==t)return!1;if(!Object.prototype.propertyIsEnumerable.call(e,t))return!1;if("function"==typeof Object.getOwnPropertyDescriptor){var s=Object.getOwnPropertyDescriptor(e,t);if(42!==s.value||!0!==s.enumerable)return!1}return!0}},1339:(e,t)=>{var r;Object.defineProperty(t,"__esModule",{value:!0}),t.beginHiddenCallStack=function(e){return i?Object.defineProperty((function(...t){return c(),e(...t)}),"name",{value:a}):e},t.endHiddenCallStack=function(e){return i?Object.defineProperty((function(...t){return e(...t)}),"name",{value:s}):e},t.expectedError=function(e){if(!i)return;return o.add(e),e},t.injectVirtualStackFrame=function(e,t){if(!i)return;let r=l.get(e);r||l.set(e,r=[]);return r.push(function(e){return Object.create({isNative:()=>!1,isConstructor:()=>!1,isToplevel:()=>!0,getFileName:()=>e,getLineNumber:()=>{},getColumnNumber:()=>{},getFunctionName:()=>{},getMethodName:()=>{},getTypeName:()=>{},toString:()=>e})}(t)),e};const n=Function.call.bind(Error.prototype.toString),i=!!Error.captureStackTrace&&!0===(null==(r=Object.getOwnPropertyDescriptor(Error,"stackTraceLimit"))?void 0:r.writable),s="startHiding - secret - don't use this - v1",a="stopHiding - secret - don't use this - v1",o=new WeakSet,l=new WeakMap;function c(){c=()=>{};const{prepareStackTrace:e=u}=Error;Error.stackTraceLimit&&(Error.stackTraceLimit=Math.max(Error.stackTraceLimit,50)),Error.prepareStackTrace=function(t,r){let n=[];let i=o.has(t)?"hiding":"unknown";for(let e=0;e<r.length;e++){const o=r[e].getFunctionName();if(o===s)i="hiding";else if(o===a){if("hiding"===i)i="showing",l.has(t)&&n.unshift(...l.get(t));else if("unknown"===i){n=r;break}}else"hiding"!==i&&n.push(r[e])}return e(t,n)}}function u(e,t){return 0===t.length?n(e):`${n(e)}\n at ${t.join("\n at ")}`}},1343:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){const t=[].concat(e),r=Object.create(null);for(;t.length;){const e=t.pop();if(e)switch(e.type){case"ArrayPattern":t.push(...e.elements);break;case"AssignmentExpression":case"AssignmentPattern":case"ForInStatement":case"ForOfStatement":t.push(e.left);break;case"ObjectPattern":t.push(...e.properties);break;case"ObjectProperty":t.push(e.value);break;case"RestElement":case"UpdateExpression":t.push(e.argument);break;case"UnaryExpression":"delete"===e.operator&&t.push(e.argument);break;case"Identifier":r[e.name]=e}}return r}},1346:function(e,t,r){var n,i=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),s=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&i(t,e,r);return s(t,e),t};Object.defineProperty(t,"__esModule",{value:!0}),t.NODE_FIELDS=t.BUILDER_KEYS=void 0;n=a(r(2352)),t.BUILDER_KEYS=n.BUILDER_KEYS,t.NODE_FIELDS=n.NODE_FIELDS},1373:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.TokenContext=void 0,t.isLastChild=function(e,t){const r=o[e.type];for(let n=r.length-1;n>=0;n--){const i=e[r[n]];if(i===t)return!0;if(Array.isArray(i)){let e=i.length-1;for(;e>=0&&null===i[e];)e--;return e>=0&&i[e]===t}if(i)return!1}return!1},t.needsParens=function(e,t,r,n,i){var s;if(!t)return!1;if(d(t)&&t.callee===e&&b(e))return!0;if(c(t))return!(v(e)||l(e)&&v(e.callee)||f(e));return null==(s=m.get(e.type))?void 0:s(e,t,r,n,i)},t.needsWhitespace=g,t.needsWhitespaceAfter=function(e,t){return g(e,t,2)},t.needsWhitespaceBefore=function(e,t){return g(e,t,1)};var n=r(2716),i=r(1773),s=r(2352);const{FLIPPED_ALIAS_KEYS:a,VISITOR_KEYS:o,isCallExpression:l,isDecorator:c,isExpressionStatement:u,isMemberExpression:p,isNewExpression:d,isParenthesizedExpression:f}=s;t.TokenContext={expressionStatement:1,arrowBody:2,exportDefault:4,forHead:8,forInHead:16,forOfHead:32,arrowFlowReturnType:64};function h(e){const t=new Map;function r(e,r){const n=t.get(e);t.set(e,n?function(e,t,i,s,a){var o;return null!=(o=n(e,t,i,s,a))?o:r(e,t,i,s,a)}:r)}for(const t of Object.keys(e)){const n=a[t];if(n)for(const i of n)r(i,e[t]);else r(t,e[t])}return t}const m=h(i),y=h(n.nodes);function b(e){return!!l(e)||p(e)&&b(e.object)}function g(e,t,r){var n;if(!e)return!1;u(e)&&(e=e.expression);const i=null==(n=y.get(e.type))?void 0:n(e,t);return"number"==typeof i&&!!(i&r)}function v(e){switch(e.type){case"Identifier":return!0;case"MemberExpression":return!e.computed&&"Identifier"===e.property.type&&v(e.object);default:return!1}}},1384:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,n.default)(e)&&!i.has(e)};var n=r(983);const i=new Set(["abstract","boolean","byte","char","double","enum","final","float","goto","implements","int","interface","long","native","package","private","protected","public","short","static","synchronized","throws","transient","volatile"])},1514:e=>{e.exports=Math.abs},1602:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=r(9709),i=r(2352),s=r(9578);const{VISITOR_KEYS:a}=i;t.default=class{constructor(e,t,r,n){this.queue=null,this.priorityQueue=null,this.parentPath=n,this.scope=e,this.state=r,this.opts=t}shouldVisit(e){const t=this.opts;if(t.enter||t.exit)return!0;if(t[e.type])return!0;const r=a[e.type];if(null==r||!r.length)return!1;for(const t of r)if(e[t])return!0;return!1}create(e,t,r,i){return n.default.get({parentPath:this.parentPath,parent:e,container:t,key:r,listKey:i})}maybeQueue(e,t){this.queue&&(t?this.queue.push(e):this.priorityQueue.push(e))}visitMultiple(e,t,r){if(0===e.length)return!1;const n=[];for(let i=0;i<e.length;i++){const s=e[i];s&&this.shouldVisit(s)&&n.push(this.create(t,e,i,r))}return this.visitQueue(n)}visitSingle(e,t){return!!this.shouldVisit(e[t])&&this.visitQueue([this.create(e,e,t)])}visitQueue(e){this.queue=e,this.priorityQueue=[];const t=new WeakSet;let r=!1,n=0;for(;n<e.length;){const i=e[n];if(n++,s.resync.call(i),0!==i.contexts.length&&i.contexts[i.contexts.length-1]===this||s.pushContext.call(i,this),null===i.key)continue;const{node:a}=i;if(!t.has(a)){if(a&&t.add(a),i.visit()){r=!0;break}if(this.priorityQueue.length&&(r=this.visitQueue(this.priorityQueue),this.priorityQueue=[],this.queue=e,r))break}}for(let t=0;t<n;t++)s.popContext.call(e[t]);return this.queue=null,r}visit(e,t){const r=e[t];return!!r&&(Array.isArray(r)?this.visitMultiple(r,e,t):this.visitSingle(e,t))}}},1643:function(e,t,r){var n,i=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),s=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||(n=function(e){return n=Object.getOwnPropertyNames||function(e){var t=[];for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[t.length]=r);return t},n(e)},function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r=n(e),a=0;a<r.length;a++)"default"!==r[a]&&i(t,e,r[a]);return s(t,e),t}),o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.ControlFlowRecoverer=void 0;const l=a(r(2352)),c=o(r(5781)),u=r(5132),p=r(9676),d=r(1994);class f extends u.Transformation{execute(e){const t=this;return(0,c.default)(this.ast,{enter(e){const r=(0,p.findConstantVariable)(e,h);if(!r)return;const n=r.expression.callee.object.value.split(r.expression.arguments[0].value),i=e.getStatementParent();if(!i)return;let s,a=i.getNextSibling();if(y(a.node,r.name))s=l.isAssignmentExpression(a.node.init)?a.node.init.right.value:a.node.init.declarations[0].init.value;else{if(!(0,d.isDeclarationOrAssignmentExpression)(a.node,l.isIdentifier,l.isNumericLiteral))return;{const e=l.isAssignmentExpression(a.node)?a.node.left.name:a.node.declarations[0].id.name;if(s=l.isAssignmentExpression(a.node)?a.node.right.value:a.node.declarations[0].init.value,a=a.getNextSibling(),!b(a.node,r.name,e))return}}const o=a.node.body.body[0].cases,c=new Map(o.map((e=>[e.test.value,e.consequent]))),u=[];for(let e=s;;e++){const t=n[e];if(!c.has(t))break;const r=c.get(t);if(u.push(...r.filter((e=>!l.isContinueStatement(e)))),r.length>0&&l.isReturnStatement(r[r.length-1]))break}e.remove(),a.replaceWithMultiple(u),t.setChanged()}}),this.hasChanged()}}t.ControlFlowRecoverer=f,f.properties={key:"controlFlowRecovery",rebuildScopeTree:!0};const h=e=>l.isCallExpression(e)&&l.isMemberExpression(e.callee)&&l.isStringLiteral(e.callee.object)&&(l.isStringLiteral(e.callee.property)&&"split"==e.callee.property.value||l.isIdentifier(e.callee.property)&&"split"==e.callee.property.name)&&1==e.arguments.length&&l.isStringLiteral(e.arguments[0]),m=(e,t,r)=>l.isBlockStatement(e)&&2==e.body.length&&l.isBreakStatement(e.body[1])&&l.isSwitchStatement(e.body[0])&&l.isMemberExpression(e.body[0].discriminant)&&l.isIdentifier(e.body[0].discriminant.object)&&e.body[0].discriminant.object.name==t&&l.isUpdateExpression(e.body[0].discriminant.property)&&l.isIdentifier(e.body[0].discriminant.property.argument)&&e.body[0].discriminant.property.argument.name==r&&e.body[0].cases.every((e=>e.test&&l.isStringLiteral(e.test))),y=(e,t)=>l.isForStatement(e)&&null!=e.init&&(0,d.isDeclarationOrAssignmentExpression)(e.init,l.isIdentifier,l.isNumericLiteral)&&m(e.body,t,l.isAssignmentExpression(e.init)?e.init.left.name:e.init.declarations[0].id.name),b=(e,t,r)=>l.isWhileStatement(e)&&l.isBooleanLiteral(e.test)&&1==e.test.value&&m(e.body,t,r)},1715:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.validatePluginObject=function(e){const t={type:"root",source:"plugin"};return Object.keys(e).forEach((r=>{const n=i[r];if(!n){const e=new Error(`.${r} is not a valid Plugin property`);throw e.code="BABEL_UNKNOWN_PLUGIN_PROPERTY",e}n({type:"option",name:r,parent:t},e[r])})),e};var n=r(4374);const i={name:n.assertString,manipulateOptions:n.assertFunction,pre:n.assertFunction,post:n.assertFunction,inherits:n.assertFunction,visitor:function(e,t){const r=(0,n.assertObject)(e,t);if(r&&(Object.keys(r).forEach((e=>{"_exploded"!==e&&"_verified"!==e&&function(e,t){if(t&&"object"==typeof t)Object.keys(t).forEach((t=>{if("enter"!==t&&"exit"!==t)throw new Error(`.visitor["${e}"] may only have .enter and/or .exit handlers.`)}));else if("function"!=typeof t)throw new Error(`.visitor["${e}"] must be a function`)}(e,r[e])})),r.enter||r.exit))throw new Error(`${(0,n.msg)(e)} cannot contain catch-all "enter" or "exit" handlers. Please target individual nodes.`);return r},parserOverride:n.assertFunction,generatorOverride:n.assertFunction}},1773:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.AssignmentExpression=function(e,t,r){return!(!x(r)||!p(e.left))||E(e,t)},t.Binary=T,t.BinaryExpression=function(e,t,r,n){return"in"===e.operator&&n},t.ClassExpression=function(e,t,r){return Boolean(r&(i.TokenContext.expressionStatement|i.TokenContext.exportDefault))},t.ArrowFunctionExpression=t.ConditionalExpression=E,t.DoExpression=function(e,t,r){return!e.async&&Boolean(r&i.TokenContext.expressionStatement)},t.FunctionExpression=function(e,t,r){return Boolean(r&(i.TokenContext.expressionStatement|i.TokenContext.exportDefault))},t.FunctionTypeAnnotation=function(e,t,r){const n=t.type;return"UnionTypeAnnotation"===n||"IntersectionTypeAnnotation"===n||"ArrayTypeAnnotation"===n||Boolean(r&i.TokenContext.arrowFlowReturnType)},t.Identifier=function(e,t,r,n,s){var a;const o=t.type;if(null!=(a=e.extra)&&a.parenthesized&&"AssignmentExpression"===o&&t.left===e){const e=t.right.type;if(("FunctionExpression"===e||"ClassExpression"===e)&&null==t.right.id)return!0}if(s&&s(e)!==e.name)return!1;if("let"===e.name){return!!((u(t,{object:e,computed:!0})||d(t,{object:e,computed:!0,optional:!1}))&&r&(i.TokenContext.expressionStatement|i.TokenContext.forHead|i.TokenContext.forInHead))||Boolean(r&i.TokenContext.forOfHead)}return"async"===e.name&&l(t,{left:e,await:!1})},t.LogicalExpression=function(e,t){const r=t.type;if(b(r))return!0;if("LogicalExpression"!==r)return!1;switch(e.operator){case"||":return"??"===t.operator||"&&"===t.operator;case"&&":return"??"===t.operator;case"??":return"??"!==t.operator}},t.NullableTypeAnnotation=function(e,t){return s(t)},t.ObjectExpression=function(e,t,r){return x(r)},t.OptionalIndexedAccessType=function(e,t){return c(t)&&t.objectType===e},t.OptionalCallExpression=t.OptionalMemberExpression=function(e,t){return o(t)&&t.callee===e||u(t)&&t.object===e},t.SequenceExpression=function(e,t){const r=t.type;if("SequenceExpression"===r||"ParenthesizedExpression"===r||"MemberExpression"===r&&t.property===e||"OptionalMemberExpression"===r&&t.property===e||"TemplateLiteral"===r)return!1;if("ClassDeclaration"===r)return!0;if("ForOfStatement"===r)return t.right===e;if("ExportDefaultDeclaration"===r)return!0;return!h(t)},t.TSSatisfiesExpression=t.TSAsExpression=function(e,t){if(("AssignmentExpression"===t.type||"AssignmentPattern"===t.type)&&t.left===e)return!0;if("BinaryExpression"===t.type&&("|"===t.operator||"&"===t.operator)&&e===t.left)return!0;return T(e,t)},t.TSConditionalType=function(e,t){const r=t.type;if("TSArrayType"===r||"TSIndexedAccessType"===r&&t.objectType===e||"TSOptionalType"===r||"TSTypeOperator"===r||"TSTypeParameter"===r)return!0;if(("TSIntersectionType"===r||"TSUnionType"===r)&&t.types[0]===e)return!0;if("TSConditionalType"===r&&(t.checkType===e||t.extendsType===e))return!0;return!1},t.TSConstructorType=t.TSFunctionType=function(e,t){const r=t.type;return"TSIntersectionType"===r||"TSUnionType"===r||"TSTypeOperator"===r||"TSOptionalType"===r||"TSArrayType"===r||"TSIndexedAccessType"===r&&t.objectType===e||"TSConditionalType"===r&&(t.checkType===e||t.extendsType===e)},t.TSInferType=function(e,t){const r=t.type;if("TSArrayType"===r||"TSIndexedAccessType"===r&&t.objectType===e||"TSOptionalType"===r)return!0;if(e.typeParameter.constraint&&("TSIntersectionType"===r||"TSUnionType"===r)&&t.types[0]===e)return!0;return!1},t.TSInstantiationExpression=function(e,t){const r=t.type;return("CallExpression"===r||"OptionalCallExpression"===r||"NewExpression"===r||"TSInstantiationExpression"===r)&&!!t.typeParameters},t.TSIntersectionType=function(e,t){const r=t.type;return"TSTypeOperator"===r||"TSArrayType"===r||"TSIndexedAccessType"===r&&t.objectType===e||"TSOptionalType"===r},t.UnaryLike=t.TSTypeAssertion=S,t.TSTypeOperator=function(e,t){const r=t.type;return"TSArrayType"===r||"TSIndexedAccessType"===r&&t.objectType===e||"TSOptionalType"===r},t.TSUnionType=function(e,t){const r=t.type;return"TSIntersectionType"===r||"TSTypeOperator"===r||"TSArrayType"===r||"TSIndexedAccessType"===r&&t.objectType===e||"TSOptionalType"===r},t.IntersectionTypeAnnotation=t.UnionTypeAnnotation=function(e,t){const r=t.type;return"ArrayTypeAnnotation"===r||"NullableTypeAnnotation"===r||"IntersectionTypeAnnotation"===r||"UnionTypeAnnotation"===r},t.UpdateExpression=function(e,t){return v(e,t)||g(e,t)},t.AwaitExpression=t.YieldExpression=function(e,t){const r=t.type;return"BinaryExpression"===r||"LogicalExpression"===r||"UnaryExpression"===r||"SpreadElement"===r||v(e,t)||"AwaitExpression"===r&&f(e)||"ConditionalExpression"===r&&e===t.test||g(e,t)||b(r)};var n=r(2352),i=r(1373);const{isArrayTypeAnnotation:s,isBinaryExpression:a,isCallExpression:o,isForOfStatement:l,isIndexedAccessType:c,isMemberExpression:u,isObjectPattern:p,isOptionalMemberExpression:d,isYieldExpression:f,isStatement:h}=n,m=new Map([["||",0],["??",0],["|>",0],["&&",1],["|",2],["^",3],["&",4],["==",5],["===",5],["!=",5],["!==",5],["<",6],[">",6],["<=",6],[">=",6],["in",6],["instanceof",6],[">>",7],["<<",7],[">>>",7],["+",8],["-",8],["*",9],["/",9],["%",9],["**",10]]);function y(e,t){return"BinaryExpression"===t||"LogicalExpression"===t?m.get(e.operator):"TSAsExpression"===t||"TSSatisfiesExpression"===t?m.get("in"):void 0}function b(e){return"TSAsExpression"===e||"TSSatisfiesExpression"===e||"TSTypeAssertion"===e}const g=(e,t)=>{const r=t.type;return("ClassDeclaration"===r||"ClassExpression"===r)&&t.superClass===e},v=(e,t)=>{const r=t.type;return("MemberExpression"===r||"OptionalMemberExpression"===r)&&t.object===e||("CallExpression"===r||"OptionalCallExpression"===r||"NewExpression"===r)&&t.callee===e||"TaggedTemplateExpression"===r&&t.tag===e||"TSNonNullExpression"===r};function x(e){return Boolean(e&(i.TokenContext.expressionStatement|i.TokenContext.arrowBody))}function T(e,t){const r=t.type;if("BinaryExpression"===e.type&&"**"===e.operator&&"BinaryExpression"===r&&"**"===t.operator)return t.left===e;if(g(e,t))return!0;if(v(e,t)||"UnaryExpression"===r||"SpreadElement"===r||"AwaitExpression"===r)return!0;const n=y(t,r);if(null!=n){const i=y(e,e.type);if(n===i&&"BinaryExpression"===r&&t.right===e||n>i)return!0}}function S(e,t){return v(e,t)||a(t)&&"**"===t.operator&&t.left===e||g(e,t)}function E(e,t){const r=t.type;return!!("UnaryExpression"===r||"SpreadElement"===r||"BinaryExpression"===r||"LogicalExpression"===r||"ConditionalExpression"===r&&t.test===e||"AwaitExpression"===r||b(r))||S(e,t)}},1783:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.Base64StringDecoder=void 0;const n=r(8958),i=r(4742);class s extends i.StringDecoder{constructor(e,t){super(e,t),this.stringCache=new Map}get type(){return i.DecoderType.BASE_64}getString(e){const t=e+this.stringArray[0];if(this.stringCache.has(t))return this.stringCache.get(t);const r=this.stringArray[e+this.indexOffset],i=(0,n.base64Transform)(r);return this.stringCache.set(t,i),i}getStringForRotation(e){if(this.isFirstCall)throw this.isFirstCall=!1,new Error;return this.getString(e)}}t.Base64StringDecoder=s},1792:(e,t,r)=>{Object.defineProperty(t,"ug",{enumerable:!0,get:function(){return p.default}});var n=r(4148),i=r(6416),s=r(4865),a=r(3817),o=r(8274),l=r(7372),c=r(4184),u=r(6871),p=r(4777);r(6871).getDynamicImportSource;const d={constant:({exports:e,exportName:t,namespaceImport:r})=>i.template.statement.ast` | |
${e}.${t} = ${r}; | |
`,constantComputed:({exports:e,exportName:t,namespaceImport:r})=>i.template.statement.ast` | |
${e}["${t}"] = ${r}; | |
`,spec:({exports:e,exportName:t,namespaceImport:r})=>i.template.statement.ast` | |
Object.defineProperty(${e}, "${t}", { | |
enumerable: true, | |
get: function() { | |
return ${r}; | |
}, | |
}); | |
`};function f(e,t,r,n){var s;let a=i.types.identifier(t.name);a=null!=(s=n(a,t.wrap))?s:a;const{stringSpecifiers:o}=e;return Array.from(t.reexports,(([n,s])=>{let l=i.types.cloneNode(a);"default"===s&&"node-default"===t.interop||(l=o.has(s)?i.types.memberExpression(l,i.types.stringLiteral(s),!0):i.types.memberExpression(l,i.types.identifier(s)));const c={exports:e.exportName,exportName:n,namespaceImport:l};return r||i.types.isIdentifier(l)?o.has(n)?d.constantComputed(c):d.constant(c):d.spec(c)}))}const h={computed:({exports:e,name:t,value:r})=>i.template.expression.ast`${e}["${t}"] = ${r}`,default:({exports:e,name:t,value:r})=>i.template.expression.ast`${e}.${t} = ${r}`,define:({exports:e,name:t,value:r})=>i.template.expression.ast` | |
Object.defineProperty(${e}, "${t}", { | |
enumerable: true, | |
value: void 0, | |
writable: true | |
})["${t}"] = ${r}`};function m(e,t,r){const{stringSpecifiers:n,exportName:s}=e;return i.types.expressionStatement(t.reduce(((e,t)=>{const r={exports:s,name:t,value:e};return"__proto__"===t?h.define(r):n.has(t)?h.computed(r):h.default(r)}),r))}},1884:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.unreleasedLabels=t.browserNameMap=void 0;t.unreleasedLabels={safari:"tp"},t.browserNameMap={and_chr:"chrome",and_ff:"firefox",android:"android",chrome:"chrome",edge:"edge",firefox:"firefox",ie:"ie",ie_mob:"ie",ios_saf:"ios",node:"node",deno:"deno",op_mob:"opera_mobile",opera:"opera",safari:"safari",samsung:"samsung"}},1914:function(e,t,r){var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),s=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&n(t,e,r);return i(t,e),t};Object.defineProperty(t,"__esModule",{value:!0}),t.nodesEquivalent=void 0;const a=s(r(2352)),o=r(1346);t.nodesEquivalent=function e(t,r){if(t===r)return!0;if(t.type!==r.type)return!1;const n=o.NODE_FIELDS[t.type],i=t,s=r;for(const[t,r]of Object.entries(n)){const n=t;if(r.optional&&null==i[n]&&null==s[n])continue;const o=i[n],l=s[n];if(o!==l){if(null==o||null==l)return!1;if(Array.isArray(o)&&Array.isArray(l)){if(o.length!==l.length)return!1;for(let t=0;t<o.length;t++)if(!e(o[t],l[t]))return!1}else{if(!a.isNode(o)||!a.isNode(l))return!1;if(!e(o,l))return!1}}}return!0}},1994:function(e,t,r){var n,i=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),s=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||(n=function(e){return n=Object.getOwnPropertyNames||function(e){var t=[];for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[t.length]=r);return t},n(e)},function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r=n(e),a=0;a<r.length;a++)"default"!==r[a]&&i(t,e,r[a]);return s(t,e),t});Object.defineProperty(t,"__esModule",{value:!0}),t.isDeclarationOrAssignmentStatement=function(e,t,r){return o.isVariableDeclaration(e)&&1==e.declarations.length&&t(e.declarations[0].id)&&e.declarations[0].init&&r(e.declarations[0].init)||o.isExpressionStatement(e)&&o.isAssignmentExpression(e.expression)&&t(e.expression.left)&&r(e.expression.right)},t.isDeclarationOrAssignmentExpression=function(e,t,r){return o.isVariableDeclaration(e)&&1==e.declarations.length&&t(e.declarations[0].id)&&e.declarations[0].init&&r(e.declarations[0].init)||o.isAssignmentExpression(e)&&t(e.left)&&r(e.right)};const o=a(r(2352))},2001:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.Rc4StringDecoder=void 0;const n=r(8958),i=r(4742);class s extends i.StringDecoder{constructor(e,t){super(e,t),this.stringCache=new Map}get type(){return i.DecoderType.RC4}getString(e,t){const r=e+this.stringArray[0];if(this.stringCache.has(r))return this.stringCache.get(r);const n=this.stringArray[e+this.indexOffset],i=this.rc4Decode(n,t);return this.stringCache.set(r,i),i}getStringForRotation(e,t){if(this.isFirstCall)throw this.isFirstCall=!1,new Error;return this.getString(e,t)}rc4Decode(e,t){const r=[];let i=0,s="";e=(0,n.base64Transform)(e);for(var a=0;a<256;a++)r[a]=a;for(a=0;a<256;a++)i=(i+r[a]+t.charCodeAt(a%t.length))%256,[r[a],r[i]]=[r[i],r[a]];a=0,i=0;for(let t=0;t<e.length;t++)i=(i+r[a=(a+1)%256])%256,[r[a],r[i]]=[r[i],r[a]],s+=String.fromCharCode(e.charCodeAt(t)^r[(r[a]+r[i])%256]);return s}}t.Rc4StringDecoder=s},2037:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t._replaceWith=R,t.replaceExpressionWithStatements=function(e){u.resync.call(this);const t=[],r=V(e,t);if(r){for(const e of t)this.scope.push({id:e});return this.replaceWith(r)[0].get("expressions")}const n=this.getFunctionParent(),s=null==n?void 0:n.node.async,a=null==n?void 0:n.node.generator,o=d([],m(e));this.replaceWith(b(o,[]));const l=this.get("callee");l.get("body").scope.hoistVariables((e=>this.scope.push({id:e})));const c=l.getCompletionRecords();for(const e of c){if(!e.isExpressionStatement())continue;const t=e.findParent((e=>e.isLoop()));if(t){let r=t.getData("expressionReplacementReturnUid");r?r=S(r.name):(r=l.scope.generateDeclaredUidIdentifier("ret"),l.get("body").pushContainer("body",j(g(r))),t.setData("expressionReplacementReturnUid",r)),e.get("expression").replaceWith(f("=",g(r),e.node.expression))}else e.replaceWith(j(e.node.expression))}l.arrowFunctionToExpression();const y=l,v=s&&i.default.hasType(this.get("callee.body").node,"AwaitExpression",p),x=a&&i.default.hasType(this.get("callee.body").node,"YieldExpression",p);v&&(y.set("async",!0),x||this.replaceWith(h(this.node)));x&&(y.set("generator",!0),this.replaceWith(F(this.node,!0)));return y.get("body.body")},t.replaceInline=function(e){if(u.resync.call(this),Array.isArray(e)){if(Array.isArray(this.container)){e=o._verifyNodeList.call(this,e);const t=o._containerInsertAfter.call(this,e);return this.remove(),t}return this.replaceWithMultiple(e)}return this.replaceWith(e)},t.replaceWith=function(e){if(u.resync.call(this),this.removed)throw new Error("You can't replace this node, we've already removed it");let t=e instanceof s.default?e.node:e;if(!t)throw new Error("You passed `path.replaceWith()` a falsy node, use `path.remove()` instead");if(this.node===t)return[this];if(this.isProgram()&&!_(t))throw new Error("You can only replace a Program root node with another Program node");if(Array.isArray(t))throw new Error("Don't use `path.replaceWith()` with an array of nodes, use `path.replaceWithMultiple()`");if("string"==typeof t)throw new Error("Don't use `path.replaceWith()` with a source string, use `path.replaceWithSourceString()`");let r="";this.isNodeType("Statement")&&C(t)&&(this.canHaveVariableDeclarationOrExpression()||this.canSwapBetweenExpressionAndStatement(t)||this.parentPath.isExportDefaultDeclaration()||(t=x(t),r="expression"));if(this.isNodeType("Expression")&&M(t)&&!this.canHaveVariableDeclarationOrExpression()&&!this.canSwapBetweenExpressionAndStatement(t))return this.replaceExpressionWithStatements([t]);const n=this.node;n&&(A(t,n),D(n));return R.call(this,t),this.type=t.type,u.setScope.call(this),this.requeue(),[r?this.get(r):this]},t.replaceWithMultiple=function(e){var t;u.resync.call(this),e=o._verifyNodeList.call(this,e),E(e[0],this.node),P(e[e.length-1],this.node),null==(t=(0,a.getCachedPaths)(this.hub,this.parent))||t.delete(this.node),this.node=this.container[this.key]=null;const r=this.insertAfter(e);this.node?this.requeue():this.remove();return r},t.replaceWithSourceString=function(e){let t;u.resync.call(this);try{e=`(${e})`,t=(0,l.parse)(e)}catch(t){const r=t.loc;throw r&&(t.message+=" - make sure this is an expression.\n"+(0,n.codeFrameColumns)(e,{start:{line:r.line,column:r.column+1}}),t.code="BABEL_REPLACE_SOURCE_ERROR"),t}const r=t.program.body[0].expression;return i.default.removeProperties(r),this.replaceWith(r)};var n=r(2882),i=r(5781),s=r(9709),a=r(7411),o=r(8345),l=r(2172),c=r(2352),u=r(9578);const{FUNCTION_TYPES:p,arrowFunctionExpression:d,assignmentExpression:f,awaitExpression:h,blockStatement:m,buildUndefinedNode:y,callExpression:b,cloneNode:g,conditionalExpression:v,expressionStatement:x,getBindingIdentifiers:T,identifier:S,inheritLeadingComments:E,inheritTrailingComments:P,inheritsComments:A,isBlockStatement:w,isEmptyStatement:O,isExpression:C,isExpressionStatement:I,isIfStatement:N,isProgram:_,isStatement:M,isVariableDeclaration:k,removeComments:D,returnStatement:j,sequenceExpression:B,validate:L,yieldExpression:F}=c;function R(e){var t;if(!this.container)throw new ReferenceError("Container is falsy");this.inList?L(this.parent,this.key,[e]):L(this.parent,this.key,e),this.debug(`Replace with ${null==e?void 0:e.type}`),null==(t=(0,a.getCachedPaths)(this.hub,this.parent))||t.set(e,this).delete(this.node),this.node=this.container[this.key]=e}function V(e,t){const r=[];let n=!0;for(const i of e)if(O(i)||(n=!1),C(i))r.push(i);else if(I(i))r.push(i.expression);else if(k(i)){if("var"!==i.kind)return;for(const e of i.declarations){const n=T(e);for(const e of Object.keys(n))t.push(g(n[e]));e.init&&r.push(f("=",e.id,e.init))}n=!0}else if(N(i)){const e=i.consequent?V([i.consequent],t):y(),n=i.alternate?V([i.alternate],t):y();if(!e||!n)return;r.push(v(i.test,e,n))}else if(w(i)){const e=V(i.body,t);if(!e)return;r.push(e)}else{if(!O(i))return;0===e.indexOf(i)&&(n=!0)}return n&&r.push(y()),1===r.length?r[0]:B(r)}},2071:function(e,t,r){var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),t.tupleOf=t.matcher=t.or=t.oneOf=t.Matcher=t.function=t.Function=t.fromCapture=t.containerOf=t.CapturedMatcher=t.capture=t.arrayOf=t.anything=t.anyString=t.anyStatement=t.anyNumber=t.anyNode=t.anyList=t.anyExpression=void 0;var s=r(7579);Object.defineProperty(t,"anyExpression",{enumerable:!0,get:function(){return s.anyExpression}});var a=r(7061);Object.defineProperty(t,"anyList",{enumerable:!0,get:function(){return a.anyList}});var o=r(8101);Object.defineProperty(t,"anyNode",{enumerable:!0,get:function(){return o.anyNode}});var l=r(8456);Object.defineProperty(t,"anyNumber",{enumerable:!0,get:function(){return l.anyNumber}});var c=r(4396);Object.defineProperty(t,"anyStatement",{enumerable:!0,get:function(){return c.anyStatement}});var u=r(9708);Object.defineProperty(t,"anyString",{enumerable:!0,get:function(){return u.anyString}});var p=r(6161);Object.defineProperty(t,"anything",{enumerable:!0,get:function(){return p.anything}});var d=r(6227);Object.defineProperty(t,"arrayOf",{enumerable:!0,get:function(){return d.arrayOf}});var f=r(2873);Object.defineProperty(t,"capture",{enumerable:!0,get:function(){return f.capture}}),Object.defineProperty(t,"CapturedMatcher",{enumerable:!0,get:function(){return f.CapturedMatcher}});var h=r(2481);Object.defineProperty(t,"containerOf",{enumerable:!0,get:function(){return h.containerOf}});var m=r(1257);Object.defineProperty(t,"fromCapture",{enumerable:!0,get:function(){return m.fromCapture}});var y=r(3307);Object.defineProperty(t,"Function",{enumerable:!0,get:function(){return y.Function}}),Object.defineProperty(t,"function",{enumerable:!0,get:function(){return y.function}}),i(r(7038),t);var b=r(8305);Object.defineProperty(t,"Matcher",{enumerable:!0,get:function(){return b.Matcher}});var g=r(122);Object.defineProperty(t,"oneOf",{enumerable:!0,get:function(){return g.oneOf}});var v=r(421);Object.defineProperty(t,"or",{enumerable:!0,get:function(){return v.or}});var x=r(8622);Object.defineProperty(t,"matcher",{enumerable:!0,get:function(){return x.predicate}}),i(r(9369),t);var T=r(2760);Object.defineProperty(t,"tupleOf",{enumerable:!0,get:function(){return T.tupleOf}})},2107:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,n.default)(e,!1)};var n=r(5279)},2110:(e,t,r)=>{function n(){const e=r(3878);return n=function(){return e},e}Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(3310),s=r(9923),a=r(6416),o=r(5856),l=r(6140),c=r(3045),u=r(947);function p(){const e=r(5781);return p=function(){return e},e}var d=r(1310),f=r(7165),h=r(1715),m=r(6890),y=r(2610),b=r(7445);t.default=n()((function*(e){var t;const r=yield*(0,y.default)(e);if(!r)return null;const{options:n,context:i,fileHandling:a}=r;if("ignored"===a)return null;const o={},{plugins:c,presets:p}=n;if(!c||!p)throw new Error("Assertion failure - plugins and presets exist");const d=Object.assign({},i,{targets:n.targets}),h=e=>{const t=(0,l.getItemDescriptor)(e);if(!t)throw new Error("Assertion failure - must be config item");return t},m=p.map(h),b=c.map(h),v=[[]],x=[],T=[],S=yield*g(i,(function*e(t,r){const n=[];for(let e=0;e<t.length;e++){const s=t[e];if(!1!==s.options){try{var i=yield*C(s,d)}catch(r){throw"BABEL_UNKNOWN_OPTION"===r.code&&(0,f.checkNoUnwrappedItemOptionPairs)(t,e,"preset",r),r}T.push(i.externalDependencies),s.ownPass?n.push({preset:i.chain,pass:[]}):n.unshift({preset:i.chain,pass:r})}}if(n.length>0){v.splice(1,0,...n.map((e=>e.pass)).filter((e=>e!==r)));for(const{preset:t,pass:r}of n){if(!t)return!0;r.push(...t.plugins);if(yield*e(t.presets,r))return!0;t.options.forEach((e=>{(0,s.mergeOptions)(o,e)}))}}}))(m,v[0]);if(S)return null;const P=o;(0,s.mergeOptions)(P,n);const A=Object.assign({},d,{assumptions:null!=(t=P.assumptions)?t:{}});return yield*g(i,(function*(){v[0].unshift(...b);for(const t of v){const r=[];x.push(r);for(let n=0;n<t.length;n++){const i=t[n];if(!1!==i.options){try{var e=yield*E(i,A)}catch(e){throw"BABEL_UNKNOWN_PLUGIN_PROPERTY"===e.code&&(0,f.checkNoUnwrappedItemOptionPairs)(t,n,"plugin",e),e}r.push(e),T.push(e.externalDependencies)}}}}))(),P.plugins=x[0],P.presets=x.slice(1).filter((e=>e.length>0)).map((e=>({plugins:e}))),P.passPerPreset=P.presets.length>0,{options:P,passes:x,externalDependencies:(0,u.finalize)(T)}}));function g(e,t){return function*(r,n){try{return yield*t(r,n)}catch(t){var i;if(!/^\[BABEL\]/.test(t.message))t.message=`[BABEL] ${null!=(i=e.filename)?i:"unknown file"}: ${t.message}`;throw t}}}const v=e=>(0,d.makeWeakCache)((function*({value:t,options:r,dirname:n,alias:s},o){if(!1===r)throw new Error("Assertion failure");r=r||{};const l=[];let c=t;if("function"==typeof t){const u=(0,i.maybeAsync)(t,"You appear to be using an async plugin/preset, but Babel has been called synchronously"),p=Object.assign({},a,e(o,l));try{c=yield*u(p,r,n)}catch(e){throw s&&(e.message+=` (While processing: ${JSON.stringify(s)})`),e}}if(!c||"object"!=typeof c)throw new Error("Plugin/Preset did not return an object.");if((0,i.isThenable)(c))throw yield*[],new Error(`You appear to be using a promise as a plugin, which your current version of Babel does not support. If you're using a published plugin, you may need to upgrade your @babel/core version. As an alternative, you can prefix the promise with "await". (While processing: ${JSON.stringify(s)})`);if(l.length>0&&(!o.configured()||"forever"===o.mode())){let e=`A plugin/preset has external untracked dependencies (${l[0]}), but the cache `;throw o.configured()?e+=" has been configured to never be invalidated. ":e+="has not been configured to be invalidated when the external dependencies change. ",e+=`Plugins/presets should configure their cache to be invalidated when the external dependencies change, for example using \`api.cache.invalidate(() => statSync(filepath).mtimeMs)\` or \`api.cache.never()\`\n(While processing: ${JSON.stringify(s)})`,new Error(e)}return{value:c,options:r,dirname:n,alias:s,externalDependencies:(0,u.finalize)(l)}})),x=v(m.makePluginAPI),T=v(m.makePresetAPI),S=(0,d.makeWeakCache)((function*({value:e,options:t,dirname:r,alias:n,externalDependencies:s},a){const l=(0,h.validatePluginObject)(e),c=Object.assign({},l);if(c.visitor&&(c.visitor=p().default.explode(Object.assign({},c.visitor))),c.inherits){const e={name:void 0,alias:`${n}$inherits`,value:c.inherits,options:t,dirname:r},o=yield*(0,i.forwardAsync)(E,(t=>a.invalidate((r=>t(e,r)))));c.pre=I(o.pre,c.pre),c.post=I(o.post,c.post),c.manipulateOptions=I(o.manipulateOptions,c.manipulateOptions),c.visitor=p().default.visitors.merge([o.visitor||{},c.visitor||{}]),o.externalDependencies.length>0&&(s=0===s.length?o.externalDependencies:(0,u.finalize)([s,o.externalDependencies]))}return new o.default(c,t,n,s)}));function*E(e,t){if(e.value instanceof o.default){if(e.options)throw new Error("Passed options to an existing Plugin instance will not work.");return e.value}return yield*S(yield*x(e,t),t)}const P=e=>e&&"function"!=typeof e,A=(e,t)=>{if(P(e.test)||P(e.include)||P(e.exclude)){const e=t.name?`"${t.name}"`:"/* your preset */";throw new b.default([`Preset ${e} requires a filename to be set when babel is called directly,`,"```",`babel.transformSync(code, { filename: 'file.ts', presets: [${e}] });`,"```","See https://babeljs.io/docs/en/options#filename for more information."].join("\n"))}},w=(e,t,r)=>{if(!t.filename){var n;const{options:t}=e;A(t,r),null==(n=t.overrides)||n.forEach((e=>A(e,r)))}},O=(0,d.makeWeakCacheSync)((({value:e,dirname:t,alias:r,externalDependencies:n})=>({options:(0,f.validate)("preset",e),alias:r,dirname:t,externalDependencies:n})));function*C(e,t){const r=O(yield*T(e,t));return w(r,t,e),{chain:yield*(0,c.buildPresetChain)(r,t),externalDependencies:r.externalDependencies}}function I(e,t){return e?t?function(...r){const n=e.apply(this,r);return n&&"function"==typeof n.then?n.then((()=>t.apply(this,r))):t.apply(this,r)}:e:t}},2120:(e,t,r)=>{function n(){const e=r(5913);return n=function(){return e},e}function i(){const e=r(8992);return i=function(){return e},e}Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){const{opts:r,ast:a,code:o,inputMap:l}=t,{generatorOpts:c}=r;c.inputSourceMap=null==l?void 0:l.toObject();const u=[];for(const t of e)for(const e of t){const{generatorOverride:t}=e;if(t){const e=t(a,c,o,i().default);void 0!==e&&u.push(e)}}let p;if(0===u.length)p=(0,i().default)(a,c,o);else{if(1!==u.length)throw new Error("More than one plugin attempted to override codegen.");if(p=u[0],"function"==typeof p.then)throw new Error("You appear to be using an async codegen plugin, which your current version of Babel does not support. If you're using a published plugin, you may need to upgrade your @babel/core version.")}let{code:d,decodedMap:f=p.map}=p;p.__mergedMap?f=Object.assign({},p.map):f&&(f=l?(0,s.default)(l.toObject(),f,c.sourceFileName):p.map);"inline"!==r.sourceMaps&&"both"!==r.sourceMaps||(d+="\n"+n().fromObject(f).toComment());"inline"===r.sourceMaps&&(f=null);return{outputCode:d,outputMap:f}};var s=r(6884)},2172:(e,t)=>{function r(e,t){if(null==e)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.includes(n))continue;r[n]=e[n]}return r}Object.defineProperty(t,"__esModule",{value:!0});class n{constructor(e,t,r){this.line=void 0,this.column=void 0,this.index=void 0,this.line=e,this.column=t,this.index=r}}class i{constructor(e,t){this.start=void 0,this.end=void 0,this.filename=void 0,this.identifierName=void 0,this.start=e,this.end=t}}function s(e,t){const{line:r,column:i,index:s}=e;return new n(r,i+t,s+t)}const a="BABEL_PARSER_SOURCETYPE_MODULE_REQUIRED";var o={ImportMetaOutsideModule:{message:"import.meta may appear only with 'sourceType: \"module\"'",code:a},ImportOutsideModule:{message:"'import' and 'export' may appear only with 'sourceType: \"module\"'",code:a}};const l={ArrayPattern:"array destructuring pattern",AssignmentExpression:"assignment expression",AssignmentPattern:"assignment expression",ArrowFunctionExpression:"arrow function expression",ConditionalExpression:"conditional expression",CatchClause:"catch clause",ForOfStatement:"for-of statement",ForInStatement:"for-in statement",ForStatement:"for-loop",FormalParameters:"function parameter list",Identifier:"identifier",ImportSpecifier:"import specifier",ImportDefaultSpecifier:"import default specifier",ImportNamespaceSpecifier:"import namespace specifier",ObjectPattern:"object destructuring pattern",ParenthesizedExpression:"parenthesized expression",RestElement:"rest element",UpdateExpression:{true:"prefix operation",false:"postfix operation"},VariableDeclarator:"variable declaration",YieldExpression:"yield expression"},c=e=>"UpdateExpression"===e.type?l.UpdateExpression[`${e.prefix}`]:l[e.type];var u={AccessorIsGenerator:({kind:e})=>`A ${e}ter cannot be a generator.`,ArgumentsInClass:"'arguments' is only allowed in functions and class methods.",AsyncFunctionInSingleStatementContext:"Async functions can only be declared at the top level or inside a block.",AwaitBindingIdentifier:"Can not use 'await' as identifier inside an async function.",AwaitBindingIdentifierInStaticBlock:"Can not use 'await' as identifier inside a static block.",AwaitExpressionFormalParameter:"'await' is not allowed in async function parameters.",AwaitUsingNotInAsyncContext:"'await using' is only allowed within async functions and at the top levels of modules.",AwaitNotInAsyncContext:"'await' is only allowed within async functions and at the top levels of modules.",AwaitNotInAsyncFunction:"'await' is only allowed within async functions.",BadGetterArity:"A 'get' accessor must not have any formal parameters.",BadSetterArity:"A 'set' accessor must have exactly one formal parameter.",BadSetterRestParameter:"A 'set' accessor function argument must not be a rest parameter.",ConstructorClassField:"Classes may not have a field named 'constructor'.",ConstructorClassPrivateField:"Classes may not have a private field named '#constructor'.",ConstructorIsAccessor:"Class constructor may not be an accessor.",ConstructorIsAsync:"Constructor can't be an async function.",ConstructorIsGenerator:"Constructor can't be a generator.",DeclarationMissingInitializer:({kind:e})=>`Missing initializer in ${e} declaration.`,DecoratorArgumentsOutsideParentheses:"Decorator arguments must be moved inside parentheses: use '@(decorator(args))' instead of '@(decorator)(args)'.",DecoratorBeforeExport:"Decorators must be placed *before* the 'export' keyword. Remove the 'decoratorsBeforeExport: true' option to use the 'export @decorator class {}' syntax.",DecoratorsBeforeAfterExport:"Decorators can be placed *either* before or after the 'export' keyword, but not in both locations at the same time.",DecoratorConstructor:"Decorators can't be used with a constructor. Did you mean '@dec class { ... }'?",DecoratorExportClass:"Decorators must be placed *after* the 'export' keyword. Remove the 'decoratorsBeforeExport: false' option to use the '@decorator export class {}' syntax.",DecoratorSemicolon:"Decorators must not be followed by a semicolon.",DecoratorStaticBlock:"Decorators can't be used with a static block.",DeferImportRequiresNamespace:'Only `import defer * as x from "./module"` is valid.',DeletePrivateField:"Deleting a private field is not allowed.",DestructureNamedImport:"ES2015 named imports do not destructure. Use another statement for destructuring after the import.",DuplicateConstructor:"Duplicate constructor in the same class.",DuplicateDefaultExport:"Only one default export allowed per module.",DuplicateExport:({exportName:e})=>`\`${e}\` has already been exported. Exported identifiers must be unique.`,DuplicateProto:"Redefinition of __proto__ property.",DuplicateRegExpFlags:"Duplicate regular expression flag.",DynamicImportPhaseRequiresImportExpressions:({phase:e})=>`'import.${e}(...)' can only be parsed when using the 'createImportExpressions' option.`,ElementAfterRest:"Rest element must be last element.",EscapedCharNotAnIdentifier:"Invalid Unicode escape.",ExportBindingIsString:({localName:e,exportName:t})=>`A string literal cannot be used as an exported binding without \`from\`.\n- Did you mean \`export { '${e}' as '${t}' } from 'some-module'\`?`,ExportDefaultFromAsIdentifier:"'from' is not allowed as an identifier after 'export default'.",ForInOfLoopInitializer:({type:e})=>`'${"ForInStatement"===e?"for-in":"for-of"}' loop variable declaration may not have an initializer.`,ForInUsing:"For-in loop may not start with 'using' declaration.",ForOfAsync:"The left-hand side of a for-of loop may not be 'async'.",ForOfLet:"The left-hand side of a for-of loop may not start with 'let'.",GeneratorInSingleStatementContext:"Generators can only be declared at the top level or inside a block.",IllegalBreakContinue:({type:e})=>`Unsyntactic ${"BreakStatement"===e?"break":"continue"}.`,IllegalLanguageModeDirective:"Illegal 'use strict' directive in function with non-simple parameter list.",IllegalReturn:"'return' outside of function.",ImportAttributesUseAssert:"The `assert` keyword in import attributes is deprecated and it has been replaced by the `with` keyword. You can enable the `deprecatedImportAssert` parser plugin to suppress this error.",ImportBindingIsString:({importName:e})=>`A string literal cannot be used as an imported binding.\n- Did you mean \`import { "${e}" as foo }\`?`,ImportCallArity:"`import()` requires exactly one or two arguments.",ImportCallNotNewExpression:"Cannot use new with import(...).",ImportCallSpreadArgument:"`...` is not allowed in `import()`.",ImportJSONBindingNotDefault:"A JSON module can only be imported with `default`.",ImportReflectionHasAssertion:"`import module x` cannot have assertions.",ImportReflectionNotBinding:'Only `import module x from "./module"` is valid.',IncompatibleRegExpUVFlags:"The 'u' and 'v' regular expression flags cannot be enabled at the same time.",InvalidBigIntLiteral:"Invalid BigIntLiteral.",InvalidCodePoint:"Code point out of bounds.",InvalidCoverInitializedName:"Invalid shorthand property initializer.",InvalidDecimal:"Invalid decimal.",InvalidDigit:({radix:e})=>`Expected number in radix ${e}.`,InvalidEscapeSequence:"Bad character escape sequence.",InvalidEscapeSequenceTemplate:"Invalid escape sequence in template.",InvalidEscapedReservedWord:({reservedWord:e})=>`Escape sequence in keyword ${e}.`,InvalidIdentifier:({identifierName:e})=>`Invalid identifier ${e}.`,InvalidLhs:({ancestor:e})=>`Invalid left-hand side in ${c(e)}.`,InvalidLhsBinding:({ancestor:e})=>`Binding invalid left-hand side in ${c(e)}.`,InvalidLhsOptionalChaining:({ancestor:e})=>`Invalid optional chaining in the left-hand side of ${c(e)}.`,InvalidNumber:"Invalid number.",InvalidOrMissingExponent:"Floating-point numbers require a valid exponent after the 'e'.",InvalidOrUnexpectedToken:({unexpected:e})=>`Unexpected character '${e}'.`,InvalidParenthesizedAssignment:"Invalid parenthesized assignment pattern.",InvalidPrivateFieldResolution:({identifierName:e})=>`Private name #${e} is not defined.`,InvalidPropertyBindingPattern:"Binding member expression.",InvalidRecordProperty:"Only properties and spread elements are allowed in record definitions.",InvalidRestAssignmentPattern:"Invalid rest operator's argument.",LabelRedeclaration:({labelName:e})=>`Label '${e}' is already declared.`,LetInLexicalBinding:"'let' is disallowed as a lexically bound name.",LineTerminatorBeforeArrow:"No line break is allowed before '=>'.",MalformedRegExpFlags:"Invalid regular expression flag.",MissingClassName:"A class name is required.",MissingEqInAssignment:"Only '=' operator can be used for specifying default value.",MissingSemicolon:"Missing semicolon.",MissingPlugin:({missingPlugin:e})=>`This experimental syntax requires enabling the parser plugin: ${e.map((e=>JSON.stringify(e))).join(", ")}.`,MissingOneOfPlugins:({missingPlugin:e})=>`This experimental syntax requires enabling one of the following parser plugin(s): ${e.map((e=>JSON.stringify(e))).join(", ")}.`,MissingUnicodeEscape:"Expecting Unicode escape sequence \\uXXXX.",MixingCoalesceWithLogical:"Nullish coalescing operator(??) requires parens when mixing with logical operators.",ModuleAttributeDifferentFromType:"The only accepted module attribute is `type`.",ModuleAttributeInvalidValue:"Only string literals are allowed as module attribute values.",ModuleAttributesWithDuplicateKeys:({key:e})=>`Duplicate key "${e}" is not allowed in module attributes.`,ModuleExportNameHasLoneSurrogate:({surrogateCharCode:e})=>`An export name cannot include a lone surrogate, found '\\u${e.toString(16)}'.`,ModuleExportUndefined:({localName:e})=>`Export '${e}' is not defined.`,MultipleDefaultsInSwitch:"Multiple default clauses.",NewlineAfterThrow:"Illegal newline after throw.",NoCatchOrFinally:"Missing catch or finally clause.",NumberIdentifier:"Identifier directly after number.",NumericSeparatorInEscapeSequence:"Numeric separators are not allowed inside unicode escape sequences or hex escape sequences.",ObsoleteAwaitStar:"'await*' has been removed from the async functions proposal. Use Promise.all() instead.",OptionalChainingNoNew:"Constructors in/after an Optional Chain are not allowed.",OptionalChainingNoTemplate:"Tagged Template Literals are not allowed in optionalChain.",OverrideOnConstructor:"'override' modifier cannot appear on a constructor declaration.",ParamDupe:"Argument name clash.",PatternHasAccessor:"Object pattern can't contain getter or setter.",PatternHasMethod:"Object pattern can't contain methods.",PrivateInExpectedIn:({identifierName:e})=>`Private names are only allowed in property accesses (\`obj.#${e}\`) or in \`in\` expressions (\`#${e} in obj\`).`,PrivateNameRedeclaration:({identifierName:e})=>`Duplicate private name #${e}.`,RecordExpressionBarIncorrectEndSyntaxType:"Record expressions ending with '|}' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",RecordExpressionBarIncorrectStartSyntaxType:"Record expressions starting with '{|' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",RecordExpressionHashIncorrectStartSyntaxType:"Record expressions starting with '#{' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'hash'.",RecordNoProto:"'__proto__' is not allowed in Record expressions.",RestTrailingComma:"Unexpected trailing comma after rest element.",SloppyFunction:"In non-strict mode code, functions can only be declared at top level or inside a block.",SloppyFunctionAnnexB:"In non-strict mode code, functions can only be declared at top level, inside a block, or as the body of an if statement.",SourcePhaseImportRequiresDefault:'Only `import source x from "./module"` is valid.',StaticPrototype:"Classes may not have static property named prototype.",SuperNotAllowed:"`super()` is only valid inside a class constructor of a subclass. Maybe a typo in the method name ('constructor') or not extending another class?",SuperPrivateField:"Private fields can't be accessed on super.",TrailingDecorator:"Decorators must be attached to a class element.",TupleExpressionBarIncorrectEndSyntaxType:"Tuple expressions ending with '|]' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",TupleExpressionBarIncorrectStartSyntaxType:"Tuple expressions starting with '[|' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",TupleExpressionHashIncorrectStartSyntaxType:"Tuple expressions starting with '#[' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'hash'.",UnexpectedArgumentPlaceholder:"Unexpected argument placeholder.",UnexpectedAwaitAfterPipelineBody:'Unexpected "await" after pipeline body; await must have parentheses in minimal proposal.',UnexpectedDigitAfterHash:"Unexpected digit after hash token.",UnexpectedImportExport:"'import' and 'export' may only appear at the top level.",UnexpectedKeyword:({keyword:e})=>`Unexpected keyword '${e}'.`,UnexpectedLeadingDecorator:"Leading decorators must be attached to a class declaration.",UnexpectedLexicalDeclaration:"Lexical declaration cannot appear in a single-statement context.",UnexpectedNewTarget:"`new.target` can only be used in functions or class properties.",UnexpectedNumericSeparator:"A numeric separator is only allowed between two digits.",UnexpectedPrivateField:"Unexpected private name.",UnexpectedReservedWord:({reservedWord:e})=>`Unexpected reserved word '${e}'.`,UnexpectedSuper:"'super' is only allowed in object methods and classes.",UnexpectedToken:({expected:e,unexpected:t})=>`Unexpected token${t?` '${t}'.`:""}${e?`, expected "${e}"`:""}`,UnexpectedTokenUnaryExponentiation:"Illegal expression. Wrap left hand side or entire exponentiation in parentheses.",UnexpectedUsingDeclaration:"Using declaration cannot appear in the top level when source type is `script`.",UnsupportedBind:"Binding should be performed on object property.",UnsupportedDecoratorExport:"A decorated export must export a class declaration.",UnsupportedDefaultExport:"Only expressions, functions or classes are allowed as the `default` export.",UnsupportedImport:"`import` can only be used in `import()` or `import.meta`.",UnsupportedMetaProperty:({target:e,onlyValidPropertyName:t})=>`The only valid meta property for ${e} is ${e}.${t}.`,UnsupportedParameterDecorator:"Decorators cannot be used to decorate parameters.",UnsupportedPropertyDecorator:"Decorators cannot be used to decorate object literal properties.",UnsupportedSuper:"'super' can only be used with function calls (i.e. super()) or in property accesses (i.e. super.prop or super[prop]).",UnterminatedComment:"Unterminated comment.",UnterminatedRegExp:"Unterminated regular expression.",UnterminatedString:"Unterminated string constant.",UnterminatedTemplate:"Unterminated template.",UsingDeclarationExport:"Using declaration cannot be exported.",UsingDeclarationHasBindingPattern:"Using declaration cannot have destructuring patterns.",VarRedeclaration:({identifierName:e})=>`Identifier '${e}' has already been declared.`,YieldBindingIdentifier:"Can not use 'yield' as identifier inside a generator.",YieldInParameter:"Yield expression is not allowed in formal parameters.",ZeroDigitNumericSeparator:"Numeric separator can not be used after leading 0."};const p=new Set(["ArrowFunctionExpression","AssignmentExpression","ConditionalExpression","YieldExpression"]);var d=Object.assign({PipeBodyIsTighter:"Unexpected yield after pipeline body; any yield expression acting as Hack-style pipe body must be parenthesized due to its loose operator precedence.",PipeTopicRequiresHackPipes:'Topic reference is used, but the pipelineOperator plugin was not passed a "proposal": "hack" or "smart" option.',PipeTopicUnbound:"Topic reference is unbound; it must be inside a pipe body.",PipeTopicUnconfiguredToken:({token:e})=>`Invalid topic token ${e}. In order to use ${e} as a topic reference, the pipelineOperator plugin must be configured with { "proposal": "hack", "topicToken": "${e}" }.`,PipeTopicUnused:"Hack-style pipe body does not contain a topic reference; Hack-style pipes must use topic at least once.",PipeUnparenthesizedBody:({type:e})=>`Hack-style pipe body cannot be an unparenthesized ${c({type:e})}; please wrap it in parentheses.`},{PipelineBodyNoArrow:'Unexpected arrow "=>" after pipeline body; arrow function in pipeline body must be parenthesized.',PipelineBodySequenceExpression:"Pipeline body may not be a comma-separated sequence expression.",PipelineHeadSequenceExpression:"Pipeline head should not be a comma-separated sequence expression.",PipelineTopicUnused:"Pipeline is in topic style but does not use topic reference.",PrimaryTopicNotAllowed:"Topic reference was used in a lexical context without topic binding.",PrimaryTopicRequiresSmartPipeline:'Topic reference is used, but the pipelineOperator plugin was not passed a "proposal": "hack" or "smart" option.'});const f=["message"];function h(e,t,r){Object.defineProperty(e,t,{enumerable:!1,configurable:!0,value:r})}function m({toMessage:e,code:t,reasonCode:r,syntaxPlugin:i}){const s="MissingPlugin"===r||"MissingOneOfPlugins"===r;{const e={AccessorCannotDeclareThisParameter:"AccesorCannotDeclareThisParameter",AccessorCannotHaveTypeParameters:"AccesorCannotHaveTypeParameters",ConstInitializerMustBeStringOrNumericLiteralOrLiteralEnumReference:"ConstInitiailizerMustBeStringOrNumericLiteralOrLiteralEnumReference",SetAccessorCannotHaveOptionalParameter:"SetAccesorCannotHaveOptionalParameter",SetAccessorCannotHaveRestParameter:"SetAccesorCannotHaveRestParameter",SetAccessorCannotHaveReturnType:"SetAccesorCannotHaveReturnType"};e[r]&&(r=e[r])}return function a(o,l){const c=new SyntaxError;return c.code=t,c.reasonCode=r,c.loc=o,c.pos=o.index,c.syntaxPlugin=i,s&&(c.missingPlugin=l.missingPlugin),h(c,"clone",(function(e={}){var t;const{line:r,column:i,index:s}=null!=(t=e.loc)?t:o;return a(new n(r,i,s),Object.assign({},l,e.details))})),h(c,"details",l),Object.defineProperty(c,"message",{configurable:!0,get(){const t=`${e(l)} (${o.line}:${o.column})`;return this.message=t,t},set(e){Object.defineProperty(this,"message",{value:e,writable:!0})}}),c}}function y(e,t){if(Array.isArray(e))return t=>y(t,e[0]);const n={};for(const i of Object.keys(e)){const s=e[i],a="string"==typeof s?{message:()=>s}:"function"==typeof s?{message:s}:s,{message:o}=a,l=r(a,f),c="string"==typeof o?()=>o:o;n[i]=m(Object.assign({code:"BABEL_PARSER_SYNTAX_ERROR",reasonCode:i,toMessage:c},t?{syntaxPlugin:t}:{},l))}return n}const b=Object.assign({},y(o),y(u),y({StrictDelete:"Deleting local variable in strict mode.",StrictEvalArguments:({referenceName:e})=>`Assigning to '${e}' in strict mode.`,StrictEvalArgumentsBinding:({bindingName:e})=>`Binding '${e}' in strict mode.`,StrictFunction:"In strict mode code, functions can only be declared at top level or inside a block.",StrictNumericEscape:"The only valid numeric escape in strict mode is '\\0'.",StrictOctalLiteral:"Legacy octal literals are not allowed in strict mode.",StrictWith:"'with' in strict mode."}),y`pipelineOperator`(d));const{defineProperty:g}=Object,v=(e,t)=>{e&&g(e,t,{enumerable:!1,value:e[t]})};function x(e){return v(e.loc.start,"index"),v(e.loc.end,"index"),e}class T{constructor(e,t){this.token=void 0,this.preserveSpace=void 0,this.token=e,this.preserveSpace=!!t}}const S={brace:new T("{"),j_oTag:new T("<tag"),j_cTag:new T("</tag"),j_expr:new T("<tag>...</tag>",!0)};S.template=new T("`",!0);const E=!0,P=!0,A=!0,w=!0,O=!0;class C{constructor(e,t={}){this.label=void 0,this.keyword=void 0,this.beforeExpr=void 0,this.startsExpr=void 0,this.rightAssociative=void 0,this.isLoop=void 0,this.isAssign=void 0,this.prefix=void 0,this.postfix=void 0,this.binop=void 0,this.label=e,this.keyword=t.keyword,this.beforeExpr=!!t.beforeExpr,this.startsExpr=!!t.startsExpr,this.rightAssociative=!!t.rightAssociative,this.isLoop=!!t.isLoop,this.isAssign=!!t.isAssign,this.prefix=!!t.prefix,this.postfix=!!t.postfix,this.binop=null!=t.binop?t.binop:null,this.updateContext=null}}const I=new Map;function N(e,t={}){t.keyword=e;const r=R(e,t);return I.set(e,r),r}function _(e,t){return R(e,{beforeExpr:E,binop:t})}let M=-1;const k=[],D=[],j=[],B=[],L=[],F=[];function R(e,t={}){var r,n,i,s;return++M,D.push(e),j.push(null!=(r=t.binop)?r:-1),B.push(null!=(n=t.beforeExpr)&&n),L.push(null!=(i=t.startsExpr)&&i),F.push(null!=(s=t.prefix)&&s),k.push(new C(e,t)),M}function V(e,t={}){var r,n,i,s;return++M,I.set(e,M),D.push(e),j.push(null!=(r=t.binop)?r:-1),B.push(null!=(n=t.beforeExpr)&&n),L.push(null!=(i=t.startsExpr)&&i),F.push(null!=(s=t.prefix)&&s),k.push(new C("name",t)),M}const U={bracketL:R("[",{beforeExpr:E,startsExpr:P}),bracketHashL:R("#[",{beforeExpr:E,startsExpr:P}),bracketBarL:R("[|",{beforeExpr:E,startsExpr:P}),bracketR:R("]"),bracketBarR:R("|]"),braceL:R("{",{beforeExpr:E,startsExpr:P}),braceBarL:R("{|",{beforeExpr:E,startsExpr:P}),braceHashL:R("#{",{beforeExpr:E,startsExpr:P}),braceR:R("}"),braceBarR:R("|}"),parenL:R("(",{beforeExpr:E,startsExpr:P}),parenR:R(")"),comma:R(",",{beforeExpr:E}),semi:R(";",{beforeExpr:E}),colon:R(":",{beforeExpr:E}),doubleColon:R("::",{beforeExpr:E}),dot:R("."),question:R("?",{beforeExpr:E}),questionDot:R("?."),arrow:R("=>",{beforeExpr:E}),template:R("template"),ellipsis:R("...",{beforeExpr:E}),backQuote:R("`",{startsExpr:P}),dollarBraceL:R("${",{beforeExpr:E,startsExpr:P}),templateTail:R("...`",{startsExpr:P}),templateNonTail:R("...${",{beforeExpr:E,startsExpr:P}),at:R("@"),hash:R("#",{startsExpr:P}),interpreterDirective:R("#!..."),eq:R("=",{beforeExpr:E,isAssign:w}),assign:R("_=",{beforeExpr:E,isAssign:w}),slashAssign:R("_=",{beforeExpr:E,isAssign:w}),xorAssign:R("_=",{beforeExpr:E,isAssign:w}),moduloAssign:R("_=",{beforeExpr:E,isAssign:w}),incDec:R("++/--",{prefix:O,postfix:!0,startsExpr:P}),bang:R("!",{beforeExpr:E,prefix:O,startsExpr:P}),tilde:R("~",{beforeExpr:E,prefix:O,startsExpr:P}),doubleCaret:R("^^",{startsExpr:P}),doubleAt:R("@@",{startsExpr:P}),pipeline:_("|>",0),nullishCoalescing:_("??",1),logicalOR:_("||",1),logicalAND:_("&&",2),bitwiseOR:_("|",3),bitwiseXOR:_("^",4),bitwiseAND:_("&",5),equality:_("==/!=/===/!==",6),lt:_("</>/<=/>=",7),gt:_("</>/<=/>=",7),relational:_("</>/<=/>=",7),bitShift:_("<</>>/>>>",8),bitShiftL:_("<</>>/>>>",8),bitShiftR:_("<</>>/>>>",8),plusMin:R("+/-",{beforeExpr:E,binop:9,prefix:O,startsExpr:P}),modulo:R("%",{binop:10,startsExpr:P}),star:R("*",{binop:10}),slash:_("/",10),exponent:R("**",{beforeExpr:E,binop:11,rightAssociative:!0}),_in:N("in",{beforeExpr:E,binop:7}),_instanceof:N("instanceof",{beforeExpr:E,binop:7}),_break:N("break"),_case:N("case",{beforeExpr:E}),_catch:N("catch"),_continue:N("continue"),_debugger:N("debugger"),_default:N("default",{beforeExpr:E}),_else:N("else",{beforeExpr:E}),_finally:N("finally"),_function:N("function",{startsExpr:P}),_if:N("if"),_return:N("return",{beforeExpr:E}),_switch:N("switch"),_throw:N("throw",{beforeExpr:E,prefix:O,startsExpr:P}),_try:N("try"),_var:N("var"),_const:N("const"),_with:N("with"),_new:N("new",{beforeExpr:E,startsExpr:P}),_this:N("this",{startsExpr:P}),_super:N("super",{startsExpr:P}),_class:N("class",{startsExpr:P}),_extends:N("extends",{beforeExpr:E}),_export:N("export"),_import:N("import",{startsExpr:P}),_null:N("null",{startsExpr:P}),_true:N("true",{startsExpr:P}),_false:N("false",{startsExpr:P}),_typeof:N("typeof",{beforeExpr:E,prefix:O,startsExpr:P}),_void:N("void",{beforeExpr:E,prefix:O,startsExpr:P}),_delete:N("delete",{beforeExpr:E,prefix:O,startsExpr:P}),_do:N("do",{isLoop:A,beforeExpr:E}),_for:N("for",{isLoop:A}),_while:N("while",{isLoop:A}),_as:V("as",{startsExpr:P}),_assert:V("assert",{startsExpr:P}),_async:V("async",{startsExpr:P}),_await:V("await",{startsExpr:P}),_defer:V("defer",{startsExpr:P}),_from:V("from",{startsExpr:P}),_get:V("get",{startsExpr:P}),_let:V("let",{startsExpr:P}),_meta:V("meta",{startsExpr:P}),_of:V("of",{startsExpr:P}),_sent:V("sent",{startsExpr:P}),_set:V("set",{startsExpr:P}),_source:V("source",{startsExpr:P}),_static:V("static",{startsExpr:P}),_using:V("using",{startsExpr:P}),_yield:V("yield",{startsExpr:P}),_asserts:V("asserts",{startsExpr:P}),_checks:V("checks",{startsExpr:P}),_exports:V("exports",{startsExpr:P}),_global:V("global",{startsExpr:P}),_implements:V("implements",{startsExpr:P}),_intrinsic:V("intrinsic",{startsExpr:P}),_infer:V("infer",{startsExpr:P}),_is:V("is",{startsExpr:P}),_mixins:V("mixins",{startsExpr:P}),_proto:V("proto",{startsExpr:P}),_require:V("require",{startsExpr:P}),_satisfies:V("satisfies",{startsExpr:P}),_keyof:V("keyof",{startsExpr:P}),_readonly:V("readonly",{startsExpr:P}),_unique:V("unique",{startsExpr:P}),_abstract:V("abstract",{startsExpr:P}),_declare:V("declare",{startsExpr:P}),_enum:V("enum",{startsExpr:P}),_module:V("module",{startsExpr:P}),_namespace:V("namespace",{startsExpr:P}),_interface:V("interface",{startsExpr:P}),_type:V("type",{startsExpr:P}),_opaque:V("opaque",{startsExpr:P}),name:R("name",{startsExpr:P}),placeholder:R("%%",{startsExpr:!0}),string:R("string",{startsExpr:P}),num:R("num",{startsExpr:P}),bigint:R("bigint",{startsExpr:P}),decimal:R("decimal",{startsExpr:P}),regexp:R("regexp",{startsExpr:P}),privateName:R("#name",{startsExpr:P}),eof:R("eof"),jsxName:R("jsxName"),jsxText:R("jsxText",{beforeExpr:!0}),jsxTagStart:R("jsxTagStart",{startsExpr:!0}),jsxTagEnd:R("jsxTagEnd")};function q(e){return e>=93&&e<=133}function K(e){return e>=58&&e<=133}function $(e){return e>=58&&e<=137}function W(e){return L[e]}function G(e){return e>=129&&e<=131}function H(e){return e>=58&&e<=92}function J(e){return D[e]}function z(e){return j[e]}function X(e){return e>=24&&e<=25}function Y(e){return k[e]}k[8].updateContext=e=>{e.pop()},k[5].updateContext=k[7].updateContext=k[23].updateContext=e=>{e.push(S.brace)},k[22].updateContext=e=>{e[e.length-1]===S.template?e.pop():e.push(S.template)},k[143].updateContext=e=>{e.push(S.j_expr,S.j_oTag)};let Q="\xaa\xb5\xba\xc0-\xd6\xd8-\xf6\xf8-\u02c1\u02c6-\u02d1\u02e0-\u02e4\u02ec\u02ee\u0370-\u0374\u0376\u0377\u037a-\u037d\u037f\u0386\u0388-\u038a\u038c\u038e-\u03a1\u03a3-\u03f5\u03f7-\u0481\u048a-\u052f\u0531-\u0556\u0559\u0560-\u0588\u05d0-\u05ea\u05ef-\u05f2\u0620-\u064a\u066e\u066f\u0671-\u06d3\u06d5\u06e5\u06e6\u06ee\u06ef\u06fa-\u06fc\u06ff\u0710\u0712-\u072f\u074d-\u07a5\u07b1\u07ca-\u07ea\u07f4\u07f5\u07fa\u0800-\u0815\u081a\u0824\u0828\u0840-\u0858\u0860-\u086a\u0870-\u0887\u0889-\u088e\u08a0-\u08c9\u0904-\u0939\u093d\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098c\u098f\u0990\u0993-\u09a8\u09aa-\u09b0\u09b2\u09b6-\u09b9\u09bd\u09ce\u09dc\u09dd\u09df-\u09e1\u09f0\u09f1\u09fc\u0a05-\u0a0a\u0a0f\u0a10\u0a13-\u0a28\u0a2a-\u0a30\u0a32\u0a33\u0a35\u0a36\u0a38\u0a39\u0a59-\u0a5c\u0a5e\u0a72-\u0a74\u0a85-\u0a8d\u0a8f-\u0a91\u0a93-\u0aa8\u0aaa-\u0ab0\u0ab2\u0ab3\u0ab5-\u0ab9\u0abd\u0ad0\u0ae0\u0ae1\u0af9\u0b05-\u0b0c\u0b0f\u0b10\u0b13-\u0b28\u0b2a-\u0b30\u0b32\u0b33\u0b35-\u0b39\u0b3d\u0b5c\u0b5d\u0b5f-\u0b61\u0b71\u0b83\u0b85-\u0b8a\u0b8e-\u0b90\u0b92-\u0b95\u0b99\u0b9a\u0b9c\u0b9e\u0b9f\u0ba3\u0ba4\u0ba8-\u0baa\u0bae-\u0bb9\u0bd0\u0c05-\u0c0c\u0c0e-\u0c10\u0c12-\u0c28\u0c2a-\u0c39\u0c3d\u0c58-\u0c5a\u0c5d\u0c60\u0c61\u0c80\u0c85-\u0c8c\u0c8e-\u0c90\u0c92-\u0ca8\u0caa-\u0cb3\u0cb5-\u0cb9\u0cbd\u0cdd\u0cde\u0ce0\u0ce1\u0cf1\u0cf2\u0d04-\u0d0c\u0d0e-\u0d10\u0d12-\u0d3a\u0d3d\u0d4e\u0d54-\u0d56\u0d5f-\u0d61\u0d7a-\u0d7f\u0d85-\u0d96\u0d9a-\u0db1\u0db3-\u0dbb\u0dbd\u0dc0-\u0dc6\u0e01-\u0e30\u0e32\u0e33\u0e40-\u0e46\u0e81\u0e82\u0e84\u0e86-\u0e8a\u0e8c-\u0ea3\u0ea5\u0ea7-\u0eb0\u0eb2\u0eb3\u0ebd\u0ec0-\u0ec4\u0ec6\u0edc-\u0edf\u0f00\u0f40-\u0f47\u0f49-\u0f6c\u0f88-\u0f8c\u1000-\u102a\u103f\u1050-\u1055\u105a-\u105d\u1061\u1065\u1066\u106e-\u1070\u1075-\u1081\u108e\u10a0-\u10c5\u10c7\u10cd\u10d0-\u10fa\u10fc-\u1248\u124a-\u124d\u1250-\u1256\u1258\u125a-\u125d\u1260-\u1288\u128a-\u128d\u1290-\u12b0\u12b2-\u12b5\u12b8-\u12be\u12c0\u12c2-\u12c5\u12c8-\u12d6\u12d8-\u1310\u1312-\u1315\u1318-\u135a\u1380-\u138f\u13a0-\u13f5\u13f8-\u13fd\u1401-\u166c\u166f-\u167f\u1681-\u169a\u16a0-\u16ea\u16ee-\u16f8\u1700-\u1711\u171f-\u1731\u1740-\u1751\u1760-\u176c\u176e-\u1770\u1780-\u17b3\u17d7\u17dc\u1820-\u1878\u1880-\u18a8\u18aa\u18b0-\u18f5\u1900-\u191e\u1950-\u196d\u1970-\u1974\u1980-\u19ab\u19b0-\u19c9\u1a00-\u1a16\u1a20-\u1a54\u1aa7\u1b05-\u1b33\u1b45-\u1b4c\u1b83-\u1ba0\u1bae\u1baf\u1bba-\u1be5\u1c00-\u1c23\u1c4d-\u1c4f\u1c5a-\u1c7d\u1c80-\u1c8a\u1c90-\u1cba\u1cbd-\u1cbf\u1ce9-\u1cec\u1cee-\u1cf3\u1cf5\u1cf6\u1cfa\u1d00-\u1dbf\u1e00-\u1f15\u1f18-\u1f1d\u1f20-\u1f45\u1f48-\u1f4d\u1f50-\u1f57\u1f59\u1f5b\u1f5d\u1f5f-\u1f7d\u1f80-\u1fb4\u1fb6-\u1fbc\u1fbe\u1fc2-\u1fc4\u1fc6-\u1fcc\u1fd0-\u1fd3\u1fd6-\u1fdb\u1fe0-\u1fec\u1ff2-\u1ff4\u1ff6-\u1ffc\u2071\u207f\u2090-\u209c\u2102\u2107\u210a-\u2113\u2115\u2118-\u211d\u2124\u2126\u2128\u212a-\u2139\u213c-\u213f\u2145-\u2149\u214e\u2160-\u2188\u2c00-\u2ce4\u2ceb-\u2cee\u2cf2\u2cf3\u2d00-\u2d25\u2d27\u2d2d\u2d30-\u2d67\u2d6f\u2d80-\u2d96\u2da0-\u2da6\u2da8-\u2dae\u2db0-\u2db6\u2db8-\u2dbe\u2dc0-\u2dc6\u2dc8-\u2dce\u2dd0-\u2dd6\u2dd8-\u2dde\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303c\u3041-\u3096\u309b-\u309f\u30a1-\u30fa\u30fc-\u30ff\u3105-\u312f\u3131-\u318e\u31a0-\u31bf\u31f0-\u31ff\u3400-\u4dbf\u4e00-\ua48c\ua4d0-\ua4fd\ua500-\ua60c\ua610-\ua61f\ua62a\ua62b\ua640-\ua66e\ua67f-\ua69d\ua6a0-\ua6ef\ua717-\ua71f\ua722-\ua788\ua78b-\ua7cd\ua7d0\ua7d1\ua7d3\ua7d5-\ua7dc\ua7f2-\ua801\ua803-\ua805\ua807-\ua80a\ua80c-\ua822\ua840-\ua873\ua882-\ua8b3\ua8f2-\ua8f7\ua8fb\ua8fd\ua8fe\ua90a-\ua925\ua930-\ua946\ua960-\ua97c\ua984-\ua9b2\ua9cf\ua9e0-\ua9e4\ua9e6-\ua9ef\ua9fa-\ua9fe\uaa00-\uaa28\uaa40-\uaa42\uaa44-\uaa4b\uaa60-\uaa76\uaa7a\uaa7e-\uaaaf\uaab1\uaab5\uaab6\uaab9-\uaabd\uaac0\uaac2\uaadb-\uaadd\uaae0-\uaaea\uaaf2-\uaaf4\uab01-\uab06\uab09-\uab0e\uab11-\uab16\uab20-\uab26\uab28-\uab2e\uab30-\uab5a\uab5c-\uab69\uab70-\uabe2\uac00-\ud7a3\ud7b0-\ud7c6\ud7cb-\ud7fb\uf900-\ufa6d\ufa70-\ufad9\ufb00-\ufb06\ufb13-\ufb17\ufb1d\ufb1f-\ufb28\ufb2a-\ufb36\ufb38-\ufb3c\ufb3e\ufb40\ufb41\ufb43\ufb44\ufb46-\ufbb1\ufbd3-\ufd3d\ufd50-\ufd8f\ufd92-\ufdc7\ufdf0-\ufdfb\ufe70-\ufe74\ufe76-\ufefc\uff21-\uff3a\uff41-\uff5a\uff66-\uffbe\uffc2-\uffc7\uffca-\uffcf\uffd2-\uffd7\uffda-\uffdc",Z="\xb7\u0300-\u036f\u0387\u0483-\u0487\u0591-\u05bd\u05bf\u05c1\u05c2\u05c4\u05c5\u05c7\u0610-\u061a\u064b-\u0669\u0670\u06d6-\u06dc\u06df-\u06e4\u06e7\u06e8\u06ea-\u06ed\u06f0-\u06f9\u0711\u0730-\u074a\u07a6-\u07b0\u07c0-\u07c9\u07eb-\u07f3\u07fd\u0816-\u0819\u081b-\u0823\u0825-\u0827\u0829-\u082d\u0859-\u085b\u0897-\u089f\u08ca-\u08e1\u08e3-\u0903\u093a-\u093c\u093e-\u094f\u0951-\u0957\u0962\u0963\u0966-\u096f\u0981-\u0983\u09bc\u09be-\u09c4\u09c7\u09c8\u09cb-\u09cd\u09d7\u09e2\u09e3\u09e6-\u09ef\u09fe\u0a01-\u0a03\u0a3c\u0a3e-\u0a42\u0a47\u0a48\u0a4b-\u0a4d\u0a51\u0a66-\u0a71\u0a75\u0a81-\u0a83\u0abc\u0abe-\u0ac5\u0ac7-\u0ac9\u0acb-\u0acd\u0ae2\u0ae3\u0ae6-\u0aef\u0afa-\u0aff\u0b01-\u0b03\u0b3c\u0b3e-\u0b44\u0b47\u0b48\u0b4b-\u0b4d\u0b55-\u0b57\u0b62\u0b63\u0b66-\u0b6f\u0b82\u0bbe-\u0bc2\u0bc6-\u0bc8\u0bca-\u0bcd\u0bd7\u0be6-\u0bef\u0c00-\u0c04\u0c3c\u0c3e-\u0c44\u0c46-\u0c48\u0c4a-\u0c4d\u0c55\u0c56\u0c62\u0c63\u0c66-\u0c6f\u0c81-\u0c83\u0cbc\u0cbe-\u0cc4\u0cc6-\u0cc8\u0cca-\u0ccd\u0cd5\u0cd6\u0ce2\u0ce3\u0ce6-\u0cef\u0cf3\u0d00-\u0d03\u0d3b\u0d3c\u0d3e-\u0d44\u0d46-\u0d48\u0d4a-\u0d4d\u0d57\u0d62\u0d63\u0d66-\u0d6f\u0d81-\u0d83\u0dca\u0dcf-\u0dd4\u0dd6\u0dd8-\u0ddf\u0de6-\u0def\u0df2\u0df3\u0e31\u0e34-\u0e3a\u0e47-\u0e4e\u0e50-\u0e59\u0eb1\u0eb4-\u0ebc\u0ec8-\u0ece\u0ed0-\u0ed9\u0f18\u0f19\u0f20-\u0f29\u0f35\u0f37\u0f39\u0f3e\u0f3f\u0f71-\u0f84\u0f86\u0f87\u0f8d-\u0f97\u0f99-\u0fbc\u0fc6\u102b-\u103e\u1040-\u1049\u1056-\u1059\u105e-\u1060\u1062-\u1064\u1067-\u106d\u1071-\u1074\u1082-\u108d\u108f-\u109d\u135d-\u135f\u1369-\u1371\u1712-\u1715\u1732-\u1734\u1752\u1753\u1772\u1773\u17b4-\u17d3\u17dd\u17e0-\u17e9\u180b-\u180d\u180f-\u1819\u18a9\u1920-\u192b\u1930-\u193b\u1946-\u194f\u19d0-\u19da\u1a17-\u1a1b\u1a55-\u1a5e\u1a60-\u1a7c\u1a7f-\u1a89\u1a90-\u1a99\u1ab0-\u1abd\u1abf-\u1ace\u1b00-\u1b04\u1b34-\u1b44\u1b50-\u1b59\u1b6b-\u1b73\u1b80-\u1b82\u1ba1-\u1bad\u1bb0-\u1bb9\u1be6-\u1bf3\u1c24-\u1c37\u1c40-\u1c49\u1c50-\u1c59\u1cd0-\u1cd2\u1cd4-\u1ce8\u1ced\u1cf4\u1cf7-\u1cf9\u1dc0-\u1dff\u200c\u200d\u203f\u2040\u2054\u20d0-\u20dc\u20e1\u20e5-\u20f0\u2cef-\u2cf1\u2d7f\u2de0-\u2dff\u302a-\u302f\u3099\u309a\u30fb\ua620-\ua629\ua66f\ua674-\ua67d\ua69e\ua69f\ua6f0\ua6f1\ua802\ua806\ua80b\ua823-\ua827\ua82c\ua880\ua881\ua8b4-\ua8c5\ua8d0-\ua8d9\ua8e0-\ua8f1\ua8ff-\ua909\ua926-\ua92d\ua947-\ua953\ua980-\ua983\ua9b3-\ua9c0\ua9d0-\ua9d9\ua9e5\ua9f0-\ua9f9\uaa29-\uaa36\uaa43\uaa4c\uaa4d\uaa50-\uaa59\uaa7b-\uaa7d\uaab0\uaab2-\uaab4\uaab7\uaab8\uaabe\uaabf\uaac1\uaaeb-\uaaef\uaaf5\uaaf6\uabe3-\uabea\uabec\uabed\uabf0-\uabf9\ufb1e\ufe00-\ufe0f\ufe20-\ufe2f\ufe33\ufe34\ufe4d-\ufe4f\uff10-\uff19\uff3f\uff65";const ee=new RegExp("["+Q+"]"),te=new RegExp("["+Q+Z+"]");Q=Z=null;const re=[0,11,2,25,2,18,2,1,2,14,3,13,35,122,70,52,268,28,4,48,48,31,14,29,6,37,11,29,3,35,5,7,2,4,43,157,19,35,5,35,5,39,9,51,13,10,2,14,2,6,2,1,2,10,2,14,2,6,2,1,4,51,13,310,10,21,11,7,25,5,2,41,2,8,70,5,3,0,2,43,2,1,4,0,3,22,11,22,10,30,66,18,2,1,11,21,11,25,71,55,7,1,65,0,16,3,2,2,2,28,43,28,4,28,36,7,2,27,28,53,11,21,11,18,14,17,111,72,56,50,14,50,14,35,39,27,10,22,251,41,7,1,17,2,60,28,11,0,9,21,43,17,47,20,28,22,13,52,58,1,3,0,14,44,33,24,27,35,30,0,3,0,9,34,4,0,13,47,15,3,22,0,2,0,36,17,2,24,20,1,64,6,2,0,2,3,2,14,2,9,8,46,39,7,3,1,3,21,2,6,2,1,2,4,4,0,19,0,13,4,31,9,2,0,3,0,2,37,2,0,26,0,2,0,45,52,19,3,21,2,31,47,21,1,2,0,185,46,42,3,37,47,21,0,60,42,14,0,72,26,38,6,186,43,117,63,32,7,3,0,3,7,2,1,2,23,16,0,2,0,95,7,3,38,17,0,2,0,29,0,11,39,8,0,22,0,12,45,20,0,19,72,200,32,32,8,2,36,18,0,50,29,113,6,2,1,2,37,22,0,26,5,2,1,2,31,15,0,328,18,16,0,2,12,2,33,125,0,80,921,103,110,18,195,2637,96,16,1071,18,5,26,3994,6,582,6842,29,1763,568,8,30,18,78,18,29,19,47,17,3,32,20,6,18,433,44,212,63,129,74,6,0,67,12,65,1,2,0,29,6135,9,1237,42,9,8936,3,2,6,2,1,2,290,16,0,30,2,3,0,15,3,9,395,2309,106,6,12,4,8,8,9,5991,84,2,70,2,1,3,0,3,1,3,3,2,11,2,0,2,6,2,64,2,3,3,7,2,6,2,27,2,3,2,4,2,0,4,6,2,339,3,24,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,7,1845,30,7,5,262,61,147,44,11,6,17,0,322,29,19,43,485,27,229,29,3,0,496,6,2,3,2,1,2,14,2,196,60,67,8,0,1205,3,2,26,2,1,2,0,3,0,2,9,2,3,2,0,2,0,7,0,5,0,2,0,2,0,2,2,2,1,2,0,3,0,2,0,2,0,2,0,2,0,2,1,2,0,3,3,2,6,2,3,2,3,2,0,2,9,2,16,6,2,2,4,2,16,4421,42719,33,4153,7,221,3,5761,15,7472,16,621,2467,541,1507,4938,6,4191],ne=[509,0,227,0,150,4,294,9,1368,2,2,1,6,3,41,2,5,0,166,1,574,3,9,9,7,9,32,4,318,1,80,3,71,10,50,3,123,2,54,14,32,10,3,1,11,3,46,10,8,0,46,9,7,2,37,13,2,9,6,1,45,0,13,2,49,13,9,3,2,11,83,11,7,0,3,0,158,11,6,9,7,3,56,1,2,6,3,1,3,2,10,0,11,1,3,6,4,4,68,8,2,0,3,0,2,3,2,4,2,0,15,1,83,17,10,9,5,0,82,19,13,9,214,6,3,8,28,1,83,16,16,9,82,12,9,9,7,19,58,14,5,9,243,14,166,9,71,5,2,1,3,3,2,0,2,1,13,9,120,6,3,6,4,0,29,9,41,6,2,3,9,0,10,10,47,15,343,9,54,7,2,7,17,9,57,21,2,13,123,5,4,0,2,1,2,6,2,0,9,9,49,4,2,1,2,4,9,9,330,3,10,1,2,0,49,6,4,4,14,10,5350,0,7,14,11465,27,2343,9,87,9,39,4,60,6,26,9,535,9,470,0,2,54,8,3,82,0,12,1,19628,1,4178,9,519,45,3,22,543,4,4,5,9,7,3,6,31,3,149,2,1418,49,513,54,5,49,9,0,15,0,23,4,2,14,1361,6,2,16,3,6,2,1,2,4,101,0,161,6,10,9,357,0,62,13,499,13,245,1,2,9,726,6,110,6,6,9,4759,9,787719,239];function ie(e,t){let r=65536;for(let n=0,i=t.length;n<i;n+=2){if(r+=t[n],r>e)return!1;if(r+=t[n+1],r>=e)return!0}return!1}function se(e){return e<65?36===e:e<=90||(e<97?95===e:e<=122||(e<=65535?e>=170&&ee.test(String.fromCharCode(e)):ie(e,re)))}function ae(e){return e<48?36===e:e<58||!(e<65)&&(e<=90||(e<97?95===e:e<=122||(e<=65535?e>=170&&te.test(String.fromCharCode(e)):ie(e,re)||ie(e,ne))))}const oe=["implements","interface","let","package","private","protected","public","static","yield"],le=["eval","arguments"],ce=new Set(["break","case","catch","continue","debugger","default","do","else","finally","for","function","if","return","switch","throw","try","var","const","while","with","new","this","super","class","extends","export","import","null","true","false","in","instanceof","typeof","void","delete"]),ue=new Set(oe),pe=new Set(le);function de(e,t){return t&&"await"===e||"enum"===e}function fe(e,t){return de(e,t)||ue.has(e)}function he(e){return pe.has(e)}function me(e,t){return fe(e,t)||he(e)}const ye=new Set(["break","case","catch","continue","debugger","default","do","else","finally","for","function","if","return","switch","throw","try","var","const","while","with","new","this","super","class","extends","export","import","null","true","false","in","instanceof","typeof","void","delete","implements","interface","let","package","private","protected","public","static","yield","eval","arguments","enum","await"]);class be{constructor(e){this.flags=0,this.names=new Map,this.firstLexicalName="",this.flags=e}}class ge{constructor(e,t){this.parser=void 0,this.scopeStack=[],this.inModule=void 0,this.undefinedExports=new Map,this.parser=e,this.inModule=t}get inTopLevel(){return(1&this.currentScope().flags)>0}get inFunction(){return(2&this.currentVarScopeFlags())>0}get allowSuper(){return(16&this.currentThisScopeFlags())>0}get allowDirectSuper(){return(32&this.currentThisScopeFlags())>0}get inClass(){return(64&this.currentThisScopeFlags())>0}get inClassAndNotInNonArrowFunction(){const e=this.currentThisScopeFlags();return(64&e)>0&&!(2&e)}get inStaticBlock(){for(let e=this.scopeStack.length-1;;e--){const{flags:t}=this.scopeStack[e];if(128&t)return!0;if(451&t)return!1}}get inNonArrowFunction(){return(2&this.currentThisScopeFlags())>0}get treatFunctionsAsVar(){return this.treatFunctionsAsVarInScope(this.currentScope())}createScope(e){return new be(e)}enter(e){this.scopeStack.push(this.createScope(e))}exit(){return this.scopeStack.pop().flags}treatFunctionsAsVarInScope(e){return!!(130&e.flags||!this.parser.inModule&&1&e.flags)}declareName(e,t,r){let n=this.currentScope();if(8&t||16&t){this.checkRedeclarationInScope(n,e,t,r);let i=n.names.get(e)||0;16&t?i|=4:(n.firstLexicalName||(n.firstLexicalName=e),i|=2),n.names.set(e,i),8&t&&this.maybeExportDefined(n,e)}else if(4&t)for(let i=this.scopeStack.length-1;i>=0&&(n=this.scopeStack[i],this.checkRedeclarationInScope(n,e,t,r),n.names.set(e,1|(n.names.get(e)||0)),this.maybeExportDefined(n,e),!(387&n.flags));--i);this.parser.inModule&&1&n.flags&&this.undefinedExports.delete(e)}maybeExportDefined(e,t){this.parser.inModule&&1&e.flags&&this.undefinedExports.delete(t)}checkRedeclarationInScope(e,t,r,n){this.isRedeclaredInScope(e,t,r)&&this.parser.raise(b.VarRedeclaration,n,{identifierName:t})}isRedeclaredInScope(e,t,r){if(!(1&r))return!1;if(8&r)return e.names.has(t);const n=e.names.get(t);return 16&r?(2&n)>0||!this.treatFunctionsAsVarInScope(e)&&(1&n)>0:(2&n)>0&&!(8&e.flags&&e.firstLexicalName===t)||!this.treatFunctionsAsVarInScope(e)&&(4&n)>0}checkLocalExport(e){const{name:t}=e;this.scopeStack[0].names.has(t)||this.undefinedExports.set(t,e.loc.start)}currentScope(){return this.scopeStack[this.scopeStack.length-1]}currentVarScopeFlags(){for(let e=this.scopeStack.length-1;;e--){const{flags:t}=this.scopeStack[e];if(387&t)return t}}currentThisScopeFlags(){for(let e=this.scopeStack.length-1;;e--){const{flags:t}=this.scopeStack[e];if(451&t&&!(4&t))return t}}}class ve extends be{constructor(...e){super(...e),this.declareFunctions=new Set}}class xe extends ge{createScope(e){return new ve(e)}declareName(e,t,r){const n=this.currentScope();if(2048&t)return this.checkRedeclarationInScope(n,e,t,r),this.maybeExportDefined(n,e),void n.declareFunctions.add(e);super.declareName(e,t,r)}isRedeclaredInScope(e,t,r){if(super.isRedeclaredInScope(e,t,r))return!0;if(2048&r&&!e.declareFunctions.has(t)){const r=e.names.get(t);return(4&r)>0||(2&r)>0}return!1}checkLocalExport(e){this.scopeStack[0].declareFunctions.has(e.name)||super.checkLocalExport(e)}}class Te{constructor(){this.sawUnambiguousESM=!1,this.ambiguousScriptDifferentAst=!1}sourceToOffsetPos(e){return e+this.startIndex}offsetToSourcePos(e){return e-this.startIndex}hasPlugin(e){if("string"==typeof e)return this.plugins.has(e);{const[t,r]=e;if(!this.hasPlugin(t))return!1;const n=this.plugins.get(t);for(const e of Object.keys(r))if((null==n?void 0:n[e])!==r[e])return!1;return!0}}getPluginOption(e,t){var r;return null==(r=this.plugins.get(e))?void 0:r[t]}}function Se(e,t){void 0===e.trailingComments?e.trailingComments=t:e.trailingComments.unshift(...t)}function Ee(e,t){void 0===e.innerComments?e.innerComments=t:e.innerComments.unshift(...t)}function Pe(e,t,r){let n=null,i=t.length;for(;null===n&&i>0;)n=t[--i];null===n||n.start>r.start?Ee(e,r.comments):Se(n,r.comments)}class Ae extends Te{addComment(e){this.filename&&(e.loc.filename=this.filename);const{commentsLen:t}=this.state;this.comments.length!==t&&(this.comments.length=t),this.comments.push(e),this.state.commentsLen++}processComment(e){const{commentStack:t}=this.state,r=t.length;if(0===r)return;let n=r-1;const i=t[n];i.start===e.end&&(i.leadingNode=e,n--);const{start:s}=e;for(;n>=0;n--){const r=t[n],i=r.end;if(!(i>s)){i===s&&(r.trailingNode=e);break}r.containingNode=e,this.finalizeComment(r),t.splice(n,1)}}finalizeComment(e){const{comments:t}=e;if(null!==e.leadingNode||null!==e.trailingNode)null!==e.leadingNode&&Se(e.leadingNode,t),null!==e.trailingNode&&function(e,t){void 0===e.leadingComments?e.leadingComments=t:e.leadingComments.unshift(...t)}(e.trailingNode,t);else{const{containingNode:r,start:n}=e;if(44===this.input.charCodeAt(this.offsetToSourcePos(n)-1))switch(r.type){case"ObjectExpression":case"ObjectPattern":case"RecordExpression":Pe(r,r.properties,e);break;case"CallExpression":case"OptionalCallExpression":Pe(r,r.arguments,e);break;case"FunctionDeclaration":case"FunctionExpression":case"ArrowFunctionExpression":case"ObjectMethod":case"ClassMethod":case"ClassPrivateMethod":Pe(r,r.params,e);break;case"ArrayExpression":case"ArrayPattern":case"TupleExpression":Pe(r,r.elements,e);break;case"ExportNamedDeclaration":case"ImportDeclaration":Pe(r,r.specifiers,e);break;case"TSEnumDeclaration":case"TSEnumBody":Pe(r,r.members,e);break;default:Ee(r,t)}else Ee(r,t)}}finalizeRemainingComments(){const{commentStack:e}=this.state;for(let t=e.length-1;t>=0;t--)this.finalizeComment(e[t]);this.state.commentStack=[]}resetPreviousNodeTrailingComments(e){const{commentStack:t}=this.state,{length:r}=t;if(0===r)return;const n=t[r-1];n.leadingNode===e&&(n.leadingNode=null)}resetPreviousIdentifierLeadingComments(e){const{commentStack:t}=this.state,{length:r}=t;0!==r&&(t[r-1].trailingNode===e?t[r-1].trailingNode=null:r>=2&&t[r-2].trailingNode===e&&(t[r-2].trailingNode=null))}takeSurroundingComments(e,t,r){const{commentStack:n}=this.state,i=n.length;if(0===i)return;let s=i-1;for(;s>=0;s--){const i=n[s],a=i.end;if(i.start===r)i.leadingNode=e;else if(a===t)i.trailingNode=e;else if(a<t)break}}}const we=new RegExp(/\r\n|[\r\n\u2028\u2029]/.source,"g");function Oe(e){switch(e){case 10:case 13:case 8232:case 8233:return!0;default:return!1}}function Ce(e,t,r){for(let n=t;n<r;n++)if(Oe(e.charCodeAt(n)))return!0;return!1}const Ie=/(?:\s|\/\/.*|\/\*[^]*?\*\/)*/g,Ne=/(?:[^\S\n\r\u2028\u2029]|\/\/.*|\/\*.*?\*\/)*/g;function _e(e){switch(e){case 9:case 11:case 12:case 32:case 160:case 5760:case 8192:case 8193:case 8194:case 8195:case 8196:case 8197:case 8198:case 8199:case 8200:case 8201:case 8202:case 8239:case 8287:case 12288:case 65279:return!0;default:return!1}}class Me{constructor(){this.flags=1024,this.startIndex=void 0,this.curLine=void 0,this.lineStart=void 0,this.startLoc=void 0,this.endLoc=void 0,this.errors=[],this.potentialArrowAt=-1,this.noArrowAt=[],this.noArrowParamsConversionAt=[],this.topicContext={maxNumOfResolvableTopics:0,maxTopicIndex:null},this.labels=[],this.commentsLen=0,this.commentStack=[],this.pos=0,this.type=140,this.value=null,this.start=0,this.end=0,this.lastTokEndLoc=null,this.lastTokStartLoc=null,this.context=[S.brace],this.firstInvalidTemplateEscapePos=null,this.strictErrors=new Map,this.tokensLength=0}get strict(){return(1&this.flags)>0}set strict(e){e?this.flags|=1:this.flags&=-2}init({strictMode:e,sourceType:t,startIndex:r,startLine:i,startColumn:s}){this.strict=!1!==e&&(!0===e||"module"===t),this.startIndex=r,this.curLine=i,this.lineStart=-s,this.startLoc=this.endLoc=new n(i,s,r)}get maybeInArrowParameters(){return(2&this.flags)>0}set maybeInArrowParameters(e){e?this.flags|=2:this.flags&=-3}get inType(){return(4&this.flags)>0}set inType(e){e?this.flags|=4:this.flags&=-5}get noAnonFunctionType(){return(8&this.flags)>0}set noAnonFunctionType(e){e?this.flags|=8:this.flags&=-9}get hasFlowComment(){return(16&this.flags)>0}set hasFlowComment(e){e?this.flags|=16:this.flags&=-17}get isAmbientContext(){return(32&this.flags)>0}set isAmbientContext(e){e?this.flags|=32:this.flags&=-33}get inAbstractClass(){return(64&this.flags)>0}set inAbstractClass(e){e?this.flags|=64:this.flags&=-65}get inDisallowConditionalTypesContext(){return(128&this.flags)>0}set inDisallowConditionalTypesContext(e){e?this.flags|=128:this.flags&=-129}get soloAwait(){return(256&this.flags)>0}set soloAwait(e){e?this.flags|=256:this.flags&=-257}get inFSharpPipelineDirectBody(){return(512&this.flags)>0}set inFSharpPipelineDirectBody(e){e?this.flags|=512:this.flags&=-513}get canStartJSXElement(){return(1024&this.flags)>0}set canStartJSXElement(e){e?this.flags|=1024:this.flags&=-1025}get containsEsc(){return(2048&this.flags)>0}set containsEsc(e){e?this.flags|=2048:this.flags&=-2049}get hasTopLevelAwait(){return(4096&this.flags)>0}set hasTopLevelAwait(e){e?this.flags|=4096:this.flags&=-4097}curPosition(){return new n(this.curLine,this.pos-this.lineStart,this.pos+this.startIndex)}clone(){const e=new Me;return e.flags=this.flags,e.startIndex=this.startIndex,e.curLine=this.curLine,e.lineStart=this.lineStart,e.startLoc=this.startLoc,e.endLoc=this.endLoc,e.errors=this.errors.slice(),e.potentialArrowAt=this.potentialArrowAt,e.noArrowAt=this.noArrowAt.slice(),e.noArrowParamsConversionAt=this.noArrowParamsConversionAt.slice(),e.topicContext=this.topicContext,e.labels=this.labels.slice(),e.commentsLen=this.commentsLen,e.commentStack=this.commentStack.slice(),e.pos=this.pos,e.type=this.type,e.value=this.value,e.start=this.start,e.end=this.end,e.lastTokEndLoc=this.lastTokEndLoc,e.lastTokStartLoc=this.lastTokStartLoc,e.context=this.context.slice(),e.firstInvalidTemplateEscapePos=this.firstInvalidTemplateEscapePos,e.strictErrors=this.strictErrors,e.tokensLength=this.tokensLength,e}}var ke=function(e){return e>=48&&e<=57};const De={decBinOct:new Set([46,66,69,79,95,98,101,111]),hex:new Set([46,88,95,120])},je={bin:e=>48===e||49===e,oct:e=>e>=48&&e<=55,dec:e=>e>=48&&e<=57,hex:e=>e>=48&&e<=57||e>=65&&e<=70||e>=97&&e<=102};function Be(e,t,r,n,i,s){const a=r,o=n,l=i;let c="",u=null,p=r;const{length:d}=t;for(;;){if(r>=d){s.unterminated(a,o,l),c+=t.slice(p,r);break}const f=t.charCodeAt(r);if(Le(e,f,t,r)){c+=t.slice(p,r);break}if(92===f){c+=t.slice(p,r);const a=Fe(t,r,n,i,"template"===e,s);null!==a.ch||u?c+=a.ch:u={pos:r,lineStart:n,curLine:i},({pos:r,lineStart:n,curLine:i}=a),p=r}else 8232===f||8233===f?(++i,n=++r):10===f||13===f?"template"===e?(c+=t.slice(p,r)+"\n",++r,13===f&&10===t.charCodeAt(r)&&++r,++i,p=n=r):s.unterminated(a,o,l):++r}return{pos:r,str:c,firstInvalidLoc:u,lineStart:n,curLine:i,containsInvalid:!!u}}function Le(e,t,r,n){return"template"===e?96===t||36===t&&123===r.charCodeAt(n+1):t===("double"===e?34:39)}function Fe(e,t,r,n,i,s){const a=!i;t++;const o=e=>({pos:t,ch:e,lineStart:r,curLine:n}),l=e.charCodeAt(t++);switch(l){case 110:return o("\n");case 114:return o("\r");case 120:{let i;return({code:i,pos:t}=Re(e,t,r,n,2,!1,a,s)),o(null===i?null:String.fromCharCode(i))}case 117:{let i;return({code:i,pos:t}=Ue(e,t,r,n,a,s)),o(null===i?null:String.fromCodePoint(i))}case 116:return o("\t");case 98:return o("\b");case 118:return o("\v");case 102:return o("\f");case 13:10===e.charCodeAt(t)&&++t;case 10:r=t,++n;case 8232:case 8233:return o("");case 56:case 57:if(i)return o(null);s.strictNumericEscape(t-1,r,n);default:if(l>=48&&l<=55){const a=t-1;let l=/^[0-7]+/.exec(e.slice(a,t+2))[0],c=parseInt(l,8);c>255&&(l=l.slice(0,-1),c=parseInt(l,8)),t+=l.length-1;const u=e.charCodeAt(t);if("0"!==l||56===u||57===u){if(i)return o(null);s.strictNumericEscape(a,r,n)}return o(String.fromCharCode(c))}return o(String.fromCharCode(l))}}function Re(e,t,r,n,i,s,a,o){const l=t;let c;return({n:c,pos:t}=Ve(e,t,r,n,16,i,s,!1,o,!a)),null===c&&(a?o.invalidEscapeSequence(l,r,n):t=l-1),{code:c,pos:t}}function Ve(e,t,r,n,i,s,a,o,l,c){const u=t,p=16===i?De.hex:De.decBinOct,d=16===i?je.hex:10===i?je.dec:8===i?je.oct:je.bin;let f=!1,h=0;for(let u=0,m=null==s?1/0:s;u<m;++u){const s=e.charCodeAt(t);let u;if(95!==s||"bail"===o){if(u=s>=97?s-97+10:s>=65?s-65+10:ke(s)?s-48:1/0,u>=i){if(u<=9&&c)return{n:null,pos:t};if(u<=9&&l.invalidDigit(t,r,n,i))u=0;else{if(!a)break;u=0,f=!0}}++t,h=h*i+u}else{const i=e.charCodeAt(t-1),s=e.charCodeAt(t+1);if(o){if(Number.isNaN(s)||!d(s)||p.has(i)||p.has(s)){if(c)return{n:null,pos:t};l.unexpectedNumericSeparator(t,r,n)}}else{if(c)return{n:null,pos:t};l.numericSeparatorInEscapeSequence(t,r,n)}++t}}return t===u||null!=s&&t-u!==s||f?{n:null,pos:t}:{n:h,pos:t}}function Ue(e,t,r,n,i,s){let a;if(123===e.charCodeAt(t)){if(++t,({code:a,pos:t}=Re(e,t,r,n,e.indexOf("}",t)-t,!0,i,s)),++t,null!==a&&a>1114111){if(!i)return{code:null,pos:t};s.invalidCodePoint(t,r,n)}}else({code:a,pos:t}=Re(e,t,r,n,4,!1,i,s));return{code:a,pos:t}}function qe(e,t,r){return new n(r,e-t,e)}const Ke=new Set([103,109,115,105,121,117,100,118]);class $e{constructor(e){const t=e.startIndex||0;this.type=e.type,this.value=e.value,this.start=t+e.start,this.end=t+e.end,this.loc=new i(e.startLoc,e.endLoc)}}class We extends Ae{constructor(e,t){super(),this.isLookahead=void 0,this.tokens=[],this.errorHandlers_readInt={invalidDigit:(e,t,r,n)=>!!(1024&this.optionFlags)&&(this.raise(b.InvalidDigit,qe(e,t,r),{radix:n}),!0),numericSeparatorInEscapeSequence:this.errorBuilder(b.NumericSeparatorInEscapeSequence),unexpectedNumericSeparator:this.errorBuilder(b.UnexpectedNumericSeparator)},this.errorHandlers_readCodePoint=Object.assign({},this.errorHandlers_readInt,{invalidEscapeSequence:this.errorBuilder(b.InvalidEscapeSequence),invalidCodePoint:this.errorBuilder(b.InvalidCodePoint)}),this.errorHandlers_readStringContents_string=Object.assign({},this.errorHandlers_readCodePoint,{strictNumericEscape:(e,t,r)=>{this.recordStrictModeErrors(b.StrictNumericEscape,qe(e,t,r))},unterminated:(e,t,r)=>{throw this.raise(b.UnterminatedString,qe(e-1,t,r))}}),this.errorHandlers_readStringContents_template=Object.assign({},this.errorHandlers_readCodePoint,{strictNumericEscape:this.errorBuilder(b.StrictNumericEscape),unterminated:(e,t,r)=>{throw this.raise(b.UnterminatedTemplate,qe(e,t,r))}}),this.state=new Me,this.state.init(e),this.input=t,this.length=t.length,this.comments=[],this.isLookahead=!1}pushToken(e){this.tokens.length=this.state.tokensLength,this.tokens.push(e),++this.state.tokensLength}next(){this.checkKeywordEscapes(),128&this.optionFlags&&this.pushToken(new $e(this.state)),this.state.lastTokEndLoc=this.state.endLoc,this.state.lastTokStartLoc=this.state.startLoc,this.nextToken()}eat(e){return!!this.match(e)&&(this.next(),!0)}match(e){return this.state.type===e}createLookaheadState(e){return{pos:e.pos,value:null,type:e.type,start:e.start,end:e.end,context:[this.curContext()],inType:e.inType,startLoc:e.startLoc,lastTokEndLoc:e.lastTokEndLoc,curLine:e.curLine,lineStart:e.lineStart,curPosition:e.curPosition}}lookahead(){const e=this.state;this.state=this.createLookaheadState(e),this.isLookahead=!0,this.nextToken(),this.isLookahead=!1;const t=this.state;return this.state=e,t}nextTokenStart(){return this.nextTokenStartSince(this.state.pos)}nextTokenStartSince(e){return Ie.lastIndex=e,Ie.test(this.input)?Ie.lastIndex:e}lookaheadCharCode(){return this.input.charCodeAt(this.nextTokenStart())}nextTokenInLineStart(){return this.nextTokenInLineStartSince(this.state.pos)}nextTokenInLineStartSince(e){return Ne.lastIndex=e,Ne.test(this.input)?Ne.lastIndex:e}lookaheadInLineCharCode(){return this.input.charCodeAt(this.nextTokenInLineStart())}codePointAtPos(e){let t=this.input.charCodeAt(e);if(55296==(64512&t)&&++e<this.input.length){const r=this.input.charCodeAt(e);56320==(64512&r)&&(t=65536+((1023&t)<<10)+(1023&r))}return t}setStrict(e){this.state.strict=e,e&&(this.state.strictErrors.forEach((([e,t])=>this.raise(e,t))),this.state.strictErrors.clear())}curContext(){return this.state.context[this.state.context.length-1]}nextToken(){this.skipSpace(),this.state.start=this.state.pos,this.isLookahead||(this.state.startLoc=this.state.curPosition()),this.state.pos>=this.length?this.finishToken(140):this.getTokenFromCode(this.codePointAtPos(this.state.pos))}skipBlockComment(e){let t;this.isLookahead||(t=this.state.curPosition());const r=this.state.pos,n=this.input.indexOf(e,r+2);if(-1===n)throw this.raise(b.UnterminatedComment,this.state.curPosition());for(this.state.pos=n+e.length,we.lastIndex=r+2;we.test(this.input)&&we.lastIndex<=n;)++this.state.curLine,this.state.lineStart=we.lastIndex;if(this.isLookahead)return;const s={type:"CommentBlock",value:this.input.slice(r+2,n),start:this.sourceToOffsetPos(r),end:this.sourceToOffsetPos(n+e.length),loc:new i(t,this.state.curPosition())};return 128&this.optionFlags&&this.pushToken(s),s}skipLineComment(e){const t=this.state.pos;let r;this.isLookahead||(r=this.state.curPosition());let n=this.input.charCodeAt(this.state.pos+=e);if(this.state.pos<this.length)for(;!Oe(n)&&++this.state.pos<this.length;)n=this.input.charCodeAt(this.state.pos);if(this.isLookahead)return;const s=this.state.pos,a={type:"CommentLine",value:this.input.slice(t+e,s),start:this.sourceToOffsetPos(t),end:this.sourceToOffsetPos(s),loc:new i(r,this.state.curPosition())};return 128&this.optionFlags&&this.pushToken(a),a}skipSpace(){const e=this.state.pos,t=2048&this.optionFlags?[]:null;e:for(;this.state.pos<this.length;){const r=this.input.charCodeAt(this.state.pos);switch(r){case 32:case 160:case 9:++this.state.pos;break;case 13:10===this.input.charCodeAt(this.state.pos+1)&&++this.state.pos;case 10:case 8232:case 8233:++this.state.pos,++this.state.curLine,this.state.lineStart=this.state.pos;break;case 47:switch(this.input.charCodeAt(this.state.pos+1)){case 42:{const e=this.skipBlockComment("*/");void 0!==e&&(this.addComment(e),null==t||t.push(e));break}case 47:{const e=this.skipLineComment(2);void 0!==e&&(this.addComment(e),null==t||t.push(e));break}default:break e}break;default:if(_e(r))++this.state.pos;else if(45===r&&!this.inModule&&4096&this.optionFlags){const r=this.state.pos;if(45!==this.input.charCodeAt(r+1)||62!==this.input.charCodeAt(r+2)||!(0===e||this.state.lineStart>e))break e;{const e=this.skipLineComment(3);void 0!==e&&(this.addComment(e),null==t||t.push(e))}}else{if(60!==r||this.inModule||!(4096&this.optionFlags))break e;{const e=this.state.pos;if(33!==this.input.charCodeAt(e+1)||45!==this.input.charCodeAt(e+2)||45!==this.input.charCodeAt(e+3))break e;{const e=this.skipLineComment(4);void 0!==e&&(this.addComment(e),null==t||t.push(e))}}}}}if((null==t?void 0:t.length)>0){const r=this.state.pos,n={start:this.sourceToOffsetPos(e),end:this.sourceToOffsetPos(r),comments:t,leadingNode:null,trailingNode:null,containingNode:null};this.state.commentStack.push(n)}}finishToken(e,t){this.state.end=this.state.pos,this.state.endLoc=this.state.curPosition();const r=this.state.type;this.state.type=e,this.state.value=t,this.isLookahead||this.updateContext(r)}replaceToken(e){this.state.type=e,this.updateContext()}readToken_numberSign(){if(0===this.state.pos&&this.readToken_interpreter())return;const e=this.state.pos+1,t=this.codePointAtPos(e);if(t>=48&&t<=57)throw this.raise(b.UnexpectedDigitAfterHash,this.state.curPosition());if(123===t||91===t&&this.hasPlugin("recordAndTuple")){if(this.expectPlugin("recordAndTuple"),"bar"===this.getPluginOption("recordAndTuple","syntaxType"))throw this.raise(123===t?b.RecordExpressionHashIncorrectStartSyntaxType:b.TupleExpressionHashIncorrectStartSyntaxType,this.state.curPosition());this.state.pos+=2,123===t?this.finishToken(7):this.finishToken(1)}else se(t)?(++this.state.pos,this.finishToken(139,this.readWord1(t))):92===t?(++this.state.pos,this.finishToken(139,this.readWord1())):this.finishOp(27,1)}readToken_dot(){const e=this.input.charCodeAt(this.state.pos+1);e>=48&&e<=57?this.readNumber(!0):46===e&&46===this.input.charCodeAt(this.state.pos+2)?(this.state.pos+=3,this.finishToken(21)):(++this.state.pos,this.finishToken(16))}readToken_slash(){61===this.input.charCodeAt(this.state.pos+1)?this.finishOp(31,2):this.finishOp(56,1)}readToken_interpreter(){if(0!==this.state.pos||this.length<2)return!1;let e=this.input.charCodeAt(this.state.pos+1);if(33!==e)return!1;const t=this.state.pos;for(this.state.pos+=1;!Oe(e)&&++this.state.pos<this.length;)e=this.input.charCodeAt(this.state.pos);const r=this.input.slice(t+2,this.state.pos);return this.finishToken(28,r),!0}readToken_mult_modulo(e){let t=42===e?55:54,r=1,n=this.input.charCodeAt(this.state.pos+1);42===e&&42===n&&(r++,n=this.input.charCodeAt(this.state.pos+2),t=57),61!==n||this.state.inType||(r++,t=37===e?33:30),this.finishOp(t,r)}readToken_pipe_amp(e){const t=this.input.charCodeAt(this.state.pos+1);if(t!==e){if(124===e){if(62===t)return void this.finishOp(39,2);if(this.hasPlugin("recordAndTuple")&&125===t){if("bar"!==this.getPluginOption("recordAndTuple","syntaxType"))throw this.raise(b.RecordExpressionBarIncorrectEndSyntaxType,this.state.curPosition());return this.state.pos+=2,void this.finishToken(9)}if(this.hasPlugin("recordAndTuple")&&93===t){if("bar"!==this.getPluginOption("recordAndTuple","syntaxType"))throw this.raise(b.TupleExpressionBarIncorrectEndSyntaxType,this.state.curPosition());return this.state.pos+=2,void this.finishToken(4)}}61!==t?this.finishOp(124===e?43:45,1):this.finishOp(30,2)}else 61===this.input.charCodeAt(this.state.pos+2)?this.finishOp(30,3):this.finishOp(124===e?41:42,2)}readToken_caret(){const e=this.input.charCodeAt(this.state.pos+1);if(61!==e||this.state.inType)if(94===e&&this.hasPlugin(["pipelineOperator",{proposal:"hack",topicToken:"^^"}])){this.finishOp(37,2);94===this.input.codePointAt(this.state.pos)&&this.unexpected()}else this.finishOp(44,1);else this.finishOp(32,2)}readToken_atSign(){64===this.input.charCodeAt(this.state.pos+1)&&this.hasPlugin(["pipelineOperator",{proposal:"hack",topicToken:"@@"}])?this.finishOp(38,2):this.finishOp(26,1)}readToken_plus_min(e){const t=this.input.charCodeAt(this.state.pos+1);t!==e?61===t?this.finishOp(30,2):this.finishOp(53,1):this.finishOp(34,2)}readToken_lt(){const{pos:e}=this.state,t=this.input.charCodeAt(e+1);if(60===t)return 61===this.input.charCodeAt(e+2)?void this.finishOp(30,3):void this.finishOp(51,2);61!==t?this.finishOp(47,1):this.finishOp(49,2)}readToken_gt(){const{pos:e}=this.state,t=this.input.charCodeAt(e+1);if(62===t){const t=62===this.input.charCodeAt(e+2)?3:2;return 61===this.input.charCodeAt(e+t)?void this.finishOp(30,t+1):void this.finishOp(52,t)}61!==t?this.finishOp(48,1):this.finishOp(49,2)}readToken_eq_excl(e){const t=this.input.charCodeAt(this.state.pos+1);if(61!==t)return 61===e&&62===t?(this.state.pos+=2,void this.finishToken(19)):void this.finishOp(61===e?29:35,1);this.finishOp(46,61===this.input.charCodeAt(this.state.pos+2)?3:2)}readToken_question(){const e=this.input.charCodeAt(this.state.pos+1),t=this.input.charCodeAt(this.state.pos+2);63===e?61===t?this.finishOp(30,3):this.finishOp(40,2):46!==e||t>=48&&t<=57?(++this.state.pos,this.finishToken(17)):(this.state.pos+=2,this.finishToken(18))}getTokenFromCode(e){switch(e){case 46:return void this.readToken_dot();case 40:return++this.state.pos,void this.finishToken(10);case 41:return++this.state.pos,void this.finishToken(11);case 59:return++this.state.pos,void this.finishToken(13);case 44:return++this.state.pos,void this.finishToken(12);case 91:if(this.hasPlugin("recordAndTuple")&&124===this.input.charCodeAt(this.state.pos+1)){if("bar"!==this.getPluginOption("recordAndTuple","syntaxType"))throw this.raise(b.TupleExpressionBarIncorrectStartSyntaxType,this.state.curPosition());this.state.pos+=2,this.finishToken(2)}else++this.state.pos,this.finishToken(0);return;case 93:return++this.state.pos,void this.finishToken(3);case 123:if(this.hasPlugin("recordAndTuple")&&124===this.input.charCodeAt(this.state.pos+1)){if("bar"!==this.getPluginOption("recordAndTuple","syntaxType"))throw this.raise(b.RecordExpressionBarIncorrectStartSyntaxType,this.state.curPosition());this.state.pos+=2,this.finishToken(6)}else++this.state.pos,this.finishToken(5);return;case 125:return++this.state.pos,void this.finishToken(8);case 58:return void(this.hasPlugin("functionBind")&&58===this.input.charCodeAt(this.state.pos+1)?this.finishOp(15,2):(++this.state.pos,this.finishToken(14)));case 63:return void this.readToken_question();case 96:return void this.readTemplateToken();case 48:{const e=this.input.charCodeAt(this.state.pos+1);if(120===e||88===e)return void this.readRadixNumber(16);if(111===e||79===e)return void this.readRadixNumber(8);if(98===e||66===e)return void this.readRadixNumber(2)}case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return void this.readNumber(!1);case 34:case 39:return void this.readString(e);case 47:return void this.readToken_slash();case 37:case 42:return void this.readToken_mult_modulo(e);case 124:case 38:return void this.readToken_pipe_amp(e);case 94:return void this.readToken_caret();case 43:case 45:return void this.readToken_plus_min(e);case 60:return void this.readToken_lt();case 62:return void this.readToken_gt();case 61:case 33:return void this.readToken_eq_excl(e);case 126:return void this.finishOp(36,1);case 64:return void this.readToken_atSign();case 35:return void this.readToken_numberSign();case 92:return void this.readWord();default:if(se(e))return void this.readWord(e)}throw this.raise(b.InvalidOrUnexpectedToken,this.state.curPosition(),{unexpected:String.fromCodePoint(e)})}finishOp(e,t){const r=this.input.slice(this.state.pos,this.state.pos+t);this.state.pos+=t,this.finishToken(e,r)}readRegexp(){const e=this.state.startLoc,t=this.state.start+1;let r,n,{pos:i}=this.state;for(;;++i){if(i>=this.length)throw this.raise(b.UnterminatedRegExp,s(e,1));const t=this.input.charCodeAt(i);if(Oe(t))throw this.raise(b.UnterminatedRegExp,s(e,1));if(r)r=!1;else{if(91===t)n=!0;else if(93===t&&n)n=!1;else if(47===t&&!n)break;r=92===t}}const a=this.input.slice(t,i);++i;let o="";const l=()=>s(e,i+2-t);for(;i<this.length;){const e=this.codePointAtPos(i),t=String.fromCharCode(e);if(Ke.has(e))118===e?o.includes("u")&&this.raise(b.IncompatibleRegExpUVFlags,l()):117===e&&o.includes("v")&&this.raise(b.IncompatibleRegExpUVFlags,l()),o.includes(t)&&this.raise(b.DuplicateRegExpFlags,l());else{if(!ae(e)&&92!==e)break;this.raise(b.MalformedRegExpFlags,l())}++i,o+=t}this.state.pos=i,this.finishToken(138,{pattern:a,flags:o})}readInt(e,t,r=!1,n=!0){const{n:i,pos:s}=Ve(this.input,this.state.pos,this.state.lineStart,this.state.curLine,e,t,r,n,this.errorHandlers_readInt,!1);return this.state.pos=s,i}readRadixNumber(e){const t=this.state.pos,r=this.state.curPosition();let n=!1;this.state.pos+=2;const i=this.readInt(e);null==i&&this.raise(b.InvalidDigit,s(r,2),{radix:e});const a=this.input.charCodeAt(this.state.pos);if(110===a)++this.state.pos,n=!0;else if(109===a)throw this.raise(b.InvalidDecimal,r);if(se(this.codePointAtPos(this.state.pos)))throw this.raise(b.NumberIdentifier,this.state.curPosition());if(n){const e=this.input.slice(t,this.state.pos).replace(/[_n]/g,"");this.finishToken(136,e)}else this.finishToken(135,i)}readNumber(e){const t=this.state.pos,r=this.state.curPosition();let n=!1,i=!1,a=!1,o=!1;e||null!==this.readInt(10)||this.raise(b.InvalidNumber,this.state.curPosition());const l=this.state.pos-t>=2&&48===this.input.charCodeAt(t);if(l){const e=this.input.slice(t,this.state.pos);if(this.recordStrictModeErrors(b.StrictOctalLiteral,r),!this.state.strict){const t=e.indexOf("_");t>0&&this.raise(b.ZeroDigitNumericSeparator,s(r,t))}o=l&&!/[89]/.test(e)}let c=this.input.charCodeAt(this.state.pos);if(46!==c||o||(++this.state.pos,this.readInt(10),n=!0,c=this.input.charCodeAt(this.state.pos)),69!==c&&101!==c||o||(c=this.input.charCodeAt(++this.state.pos),43!==c&&45!==c||++this.state.pos,null===this.readInt(10)&&this.raise(b.InvalidOrMissingExponent,r),n=!0,a=!0,c=this.input.charCodeAt(this.state.pos)),110===c&&((n||l)&&this.raise(b.InvalidBigIntLiteral,r),++this.state.pos,i=!0),109===c){this.expectPlugin("decimal",this.state.curPosition()),(a||l)&&this.raise(b.InvalidDecimal,r),++this.state.pos;var u=!0}if(se(this.codePointAtPos(this.state.pos)))throw this.raise(b.NumberIdentifier,this.state.curPosition());const p=this.input.slice(t,this.state.pos).replace(/[_mn]/g,"");if(i)return void this.finishToken(136,p);if(u)return void this.finishToken(137,p);const d=o?parseInt(p,8):parseFloat(p);this.finishToken(135,d)}readCodePoint(e){const{code:t,pos:r}=Ue(this.input,this.state.pos,this.state.lineStart,this.state.curLine,e,this.errorHandlers_readCodePoint);return this.state.pos=r,t}readString(e){const{str:t,pos:r,curLine:n,lineStart:i}=Be(34===e?"double":"single",this.input,this.state.pos+1,this.state.lineStart,this.state.curLine,this.errorHandlers_readStringContents_string);this.state.pos=r+1,this.state.lineStart=i,this.state.curLine=n,this.finishToken(134,t)}readTemplateContinuation(){this.match(8)||this.unexpected(null,8),this.state.pos--,this.readTemplateToken()}readTemplateToken(){const e=this.input[this.state.pos],{str:t,firstInvalidLoc:r,pos:i,curLine:s,lineStart:a}=Be("template",this.input,this.state.pos+1,this.state.lineStart,this.state.curLine,this.errorHandlers_readStringContents_template);this.state.pos=i+1,this.state.lineStart=a,this.state.curLine=s,r&&(this.state.firstInvalidTemplateEscapePos=new n(r.curLine,r.pos-r.lineStart,this.sourceToOffsetPos(r.pos))),96===this.input.codePointAt(i)?this.finishToken(24,r?null:e+t+"`"):(this.state.pos++,this.finishToken(25,r?null:e+t+"${"))}recordStrictModeErrors(e,t){const r=t.index;this.state.strict&&!this.state.strictErrors.has(r)?this.raise(e,t):this.state.strictErrors.set(r,[e,t])}readWord1(e){this.state.containsEsc=!1;let t="";const r=this.state.pos;let n=this.state.pos;for(void 0!==e&&(this.state.pos+=e<=65535?1:2);this.state.pos<this.length;){const e=this.codePointAtPos(this.state.pos);if(ae(e))this.state.pos+=e<=65535?1:2;else{if(92!==e)break;{this.state.containsEsc=!0,t+=this.input.slice(n,this.state.pos);const e=this.state.curPosition(),i=this.state.pos===r?se:ae;if(117!==this.input.charCodeAt(++this.state.pos)){this.raise(b.MissingUnicodeEscape,this.state.curPosition()),n=this.state.pos-1;continue}++this.state.pos;const s=this.readCodePoint(!0);null!==s&&(i(s)||this.raise(b.EscapedCharNotAnIdentifier,e),t+=String.fromCodePoint(s)),n=this.state.pos}}}return t+this.input.slice(n,this.state.pos)}readWord(e){const t=this.readWord1(e),r=I.get(t);void 0!==r?this.finishToken(r,J(r)):this.finishToken(132,t)}checkKeywordEscapes(){const{type:e}=this.state;H(e)&&this.state.containsEsc&&this.raise(b.InvalidEscapedReservedWord,this.state.startLoc,{reservedWord:J(e)})}raise(e,t,r={}){const i=e(t instanceof n?t:t.loc.start,r);if(!(1024&this.optionFlags))throw i;return this.isLookahead||this.state.errors.push(i),i}raiseOverwrite(e,t,r={}){const i=t instanceof n?t:t.loc.start,s=i.index,a=this.state.errors;for(let t=a.length-1;t>=0;t--){const n=a[t];if(n.loc.index===s)return a[t]=e(i,r);if(n.loc.index<s)break}return this.raise(e,t,r)}updateContext(e){}unexpected(e,t){throw this.raise(b.UnexpectedToken,null!=e?e:this.state.startLoc,{expected:t?J(t):null})}expectPlugin(e,t){if(this.hasPlugin(e))return!0;throw this.raise(b.MissingPlugin,null!=t?t:this.state.startLoc,{missingPlugin:[e]})}expectOnePlugin(e){if(!e.some((e=>this.hasPlugin(e))))throw this.raise(b.MissingOneOfPlugins,this.state.startLoc,{missingPlugin:e})}errorBuilder(e){return(t,r,n)=>{this.raise(e,qe(t,r,n))}}}class Ge{constructor(){this.privateNames=new Set,this.loneAccessors=new Map,this.undefinedPrivateNames=new Map}}class He{constructor(e){this.parser=void 0,this.stack=[],this.undefinedPrivateNames=new Map,this.parser=e}current(){return this.stack[this.stack.length-1]}enter(){this.stack.push(new Ge)}exit(){const e=this.stack.pop(),t=this.current();for(const[r,n]of Array.from(e.undefinedPrivateNames))t?t.undefinedPrivateNames.has(r)||t.undefinedPrivateNames.set(r,n):this.parser.raise(b.InvalidPrivateFieldResolution,n,{identifierName:r})}declarePrivateName(e,t,r){const{privateNames:n,loneAccessors:i,undefinedPrivateNames:s}=this.current();let a=n.has(e);if(3&t){const r=a&&i.get(e);if(r){a=(3&r)===(3&t)||(4&r)!==(4&t),a||i.delete(e)}else a||i.set(e,t)}a&&this.parser.raise(b.PrivateNameRedeclaration,r,{identifierName:e}),n.add(e),s.delete(e)}usePrivateName(e,t){let r;for(r of this.stack)if(r.privateNames.has(e))return;r?r.undefinedPrivateNames.set(e,t):this.parser.raise(b.InvalidPrivateFieldResolution,t,{identifierName:e})}}class Je{constructor(e=0){this.type=e}canBeArrowParameterDeclaration(){return 2===this.type||1===this.type}isCertainlyParameterDeclaration(){return 3===this.type}}class ze extends Je{constructor(e){super(e),this.declarationErrors=new Map}recordDeclarationError(e,t){const r=t.index;this.declarationErrors.set(r,[e,t])}clearDeclarationError(e){this.declarationErrors.delete(e)}iterateErrors(e){this.declarationErrors.forEach(e)}}class Xe{constructor(e){this.parser=void 0,this.stack=[new Je],this.parser=e}enter(e){this.stack.push(e)}exit(){this.stack.pop()}recordParameterInitializerError(e,t){const r=t.loc.start,{stack:n}=this;let i=n.length-1,s=n[i];for(;!s.isCertainlyParameterDeclaration();){if(!s.canBeArrowParameterDeclaration())return;s.recordDeclarationError(e,r),s=n[--i]}this.parser.raise(e,r)}recordArrowParameterBindingError(e,t){const{stack:r}=this,n=r[r.length-1],i=t.loc.start;if(n.isCertainlyParameterDeclaration())this.parser.raise(e,i);else{if(!n.canBeArrowParameterDeclaration())return;n.recordDeclarationError(e,i)}}recordAsyncArrowParametersError(e){const{stack:t}=this;let r=t.length-1,n=t[r];for(;n.canBeArrowParameterDeclaration();)2===n.type&&n.recordDeclarationError(b.AwaitBindingIdentifier,e),n=t[--r]}validateAsPattern(){const{stack:e}=this,t=e[e.length-1];t.canBeArrowParameterDeclaration()&&t.iterateErrors((([t,r])=>{this.parser.raise(t,r);let n=e.length-2,i=e[n];for(;i.canBeArrowParameterDeclaration();)i.clearDeclarationError(r.index),i=e[--n]}))}}function Ye(){return new Je}class Qe{constructor(){this.stacks=[]}enter(e){this.stacks.push(e)}exit(){this.stacks.pop()}currentFlags(){return this.stacks[this.stacks.length-1]}get hasAwait(){return(2&this.currentFlags())>0}get hasYield(){return(1&this.currentFlags())>0}get hasReturn(){return(4&this.currentFlags())>0}get hasIn(){return(8&this.currentFlags())>0}}function Ze(e,t){return(e?2:0)|(t?1:0)}class et extends We{addExtra(e,t,r,n=!0){if(!e)return;let{extra:i}=e;null==i&&(i={},e.extra=i),n?i[t]=r:Object.defineProperty(i,t,{enumerable:n,value:r})}isContextual(e){return this.state.type===e&&!this.state.containsEsc}isUnparsedContextual(e,t){const r=e+t.length;if(this.input.slice(e,r)===t){const e=this.input.charCodeAt(r);return!(ae(e)||55296==(64512&e))}return!1}isLookaheadContextual(e){const t=this.nextTokenStart();return this.isUnparsedContextual(t,e)}eatContextual(e){return!!this.isContextual(e)&&(this.next(),!0)}expectContextual(e,t){if(!this.eatContextual(e)){if(null!=t)throw this.raise(t,this.state.startLoc);this.unexpected(null,e)}}canInsertSemicolon(){return this.match(140)||this.match(8)||this.hasPrecedingLineBreak()}hasPrecedingLineBreak(){return Ce(this.input,this.offsetToSourcePos(this.state.lastTokEndLoc.index),this.state.start)}hasFollowingLineBreak(){return Ce(this.input,this.state.end,this.nextTokenStart())}isLineTerminator(){return this.eat(13)||this.canInsertSemicolon()}semicolon(e=!0){(e?this.isLineTerminator():this.eat(13))||this.raise(b.MissingSemicolon,this.state.lastTokEndLoc)}expect(e,t){this.eat(e)||this.unexpected(t,e)}tryParse(e,t=this.state.clone()){const r={node:null};try{const n=e(((e=null)=>{throw r.node=e,r}));if(this.state.errors.length>t.errors.length){const e=this.state;return this.state=t,this.state.tokensLength=e.tokensLength,{node:n,error:e.errors[t.errors.length],thrown:!1,aborted:!1,failState:e}}return{node:n,error:null,thrown:!1,aborted:!1,failState:null}}catch(e){const n=this.state;if(this.state=t,e instanceof SyntaxError)return{node:null,error:e,thrown:!0,aborted:!1,failState:n};if(e===r)return{node:r.node,error:null,thrown:!1,aborted:!0,failState:n};throw e}}checkExpressionErrors(e,t){if(!e)return!1;const{shorthandAssignLoc:r,doubleProtoLoc:n,privateKeyLoc:i,optionalParametersLoc:s}=e;if(!t)return!!(r||n||s||i);null!=r&&this.raise(b.InvalidCoverInitializedName,r),null!=n&&this.raise(b.DuplicateProto,n),null!=i&&this.raise(b.UnexpectedPrivateField,i),null!=s&&this.unexpected(s)}isLiteralPropertyName(){return $(this.state.type)}isPrivateName(e){return"PrivateName"===e.type}getPrivateNameSV(e){return e.id.name}hasPropertyAsPrivateName(e){return("MemberExpression"===e.type||"OptionalMemberExpression"===e.type)&&this.isPrivateName(e.property)}isObjectProperty(e){return"ObjectProperty"===e.type}isObjectMethod(e){return"ObjectMethod"===e.type}initializeScopes(e="module"===this.options.sourceType){const t=this.state.labels;this.state.labels=[];const r=this.exportedIdentifiers;this.exportedIdentifiers=new Set;const n=this.inModule;this.inModule=e;const i=this.scope,s=this.getScopeHandler();this.scope=new s(this,e);const a=this.prodParam;this.prodParam=new Qe;const o=this.classScope;this.classScope=new He(this);const l=this.expressionScope;return this.expressionScope=new Xe(this),()=>{this.state.labels=t,this.exportedIdentifiers=r,this.inModule=n,this.scope=i,this.prodParam=a,this.classScope=o,this.expressionScope=l}}enterInitialScopes(){let e=0;this.inModule&&(e|=2),this.scope.enter(1),this.prodParam.enter(e)}checkDestructuringPrivate(e){const{privateKeyLoc:t}=e;null!==t&&this.expectPlugin("destructuringPrivate",t)}}class tt{constructor(){this.shorthandAssignLoc=null,this.doubleProtoLoc=null,this.privateKeyLoc=null,this.optionalParametersLoc=null}}class rt{constructor(e,t,r){this.type="",this.start=t,this.end=0,this.loc=new i(r),64&(null==e?void 0:e.optionFlags)&&(this.range=[t,0]),null!=e&&e.filename&&(this.loc.filename=e.filename)}}const nt=rt.prototype;function it(e){const{type:t,start:r,end:n,loc:i,range:s,extra:a,name:o}=e,l=Object.create(nt);return l.type=t,l.start=r,l.end=n,l.loc=i,l.range=s,l.extra=a,l.name=o,"Placeholder"===t&&(l.expectedNode=e.expectedNode),l}function st(e){const{type:t,start:r,end:n,loc:i,range:s,extra:a}=e;if("Placeholder"===t)return function(e){return it(e)}(e);const o=Object.create(nt);return o.type=t,o.start=r,o.end=n,o.loc=i,o.range=s,void 0!==e.raw?o.raw=e.raw:o.extra=a,o.value=e.value,o}nt.__clone=function(){const e=new rt(void 0,this.start,this.loc.start),t=Object.keys(this);for(let r=0,n=t.length;r<n;r++){const n=t[r];"leadingComments"!==n&&"trailingComments"!==n&&"innerComments"!==n&&(e[n]=this[n])}return e};class at extends et{startNode(){const e=this.state.startLoc;return new rt(this,e.index,e)}startNodeAt(e){return new rt(this,e.index,e)}startNodeAtNode(e){return this.startNodeAt(e.loc.start)}finishNode(e,t){return this.finishNodeAt(e,t,this.state.lastTokEndLoc)}finishNodeAt(e,t,r){return e.type=t,e.end=r.index,e.loc.end=r,64&this.optionFlags&&(e.range[1]=r.index),2048&this.optionFlags&&this.processComment(e),e}resetStartLocation(e,t){e.start=t.index,e.loc.start=t,64&this.optionFlags&&(e.range[0]=t.index)}resetEndLocation(e,t=this.state.lastTokEndLoc){e.end=t.index,e.loc.end=t,64&this.optionFlags&&(e.range[1]=t.index)}resetStartLocationFromNode(e,t){this.resetStartLocation(e,t.loc.start)}}const ot=new Set(["_","any","bool","boolean","empty","extends","false","interface","mixed","null","number","static","string","true","typeof","void"]),lt=y`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 ct(e){return"type"===e.importKind||"typeof"===e.importKind}const ut={const:"declare export var",let:"declare export var",type:"export type",interface:"export interface"};const pt=/\*?\s*@((?:no)?flow)\b/;const dt={__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"},ft=y`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 ht(e){return!!e&&("JSXOpeningFragment"===e.type||"JSXClosingFragment"===e.type)}function mt(e){if("JSXIdentifier"===e.type)return e.name;if("JSXNamespacedName"===e.type)return e.namespace.name+":"+e.name.name;if("JSXMemberExpression"===e.type)return mt(e.object)+"."+mt(e.property);throw new Error("Node had unexpected type: "+e.type)}class yt extends be{constructor(...e){super(...e),this.tsNames=new Map}}class bt extends ge{constructor(...e){super(...e),this.importsStack=[]}createScope(e){return this.importsStack.push(new Set),new yt(e)}enter(e){256===e&&this.importsStack.push(new Set),super.enter(e)}exit(){const e=super.exit();return 256===e&&this.importsStack.pop(),e}hasImport(e,t){const r=this.importsStack.length;if(this.importsStack[r-1].has(e))return!0;if(!t&&r>1)for(let t=0;t<r-1;t++)if(this.importsStack[t].has(e))return!0;return!1}declareName(e,t,r){if(4096&t)return this.hasImport(e,!0)&&this.parser.raise(b.VarRedeclaration,r,{identifierName:e}),void this.importsStack[this.importsStack.length-1].add(e);const n=this.currentScope();let i=n.tsNames.get(e)||0;if(1024&t)return this.maybeExportDefined(n,e),void n.tsNames.set(e,16|i);super.declareName(e,t,r),2&t&&(1&t||(this.checkRedeclarationInScope(n,e,t,r),this.maybeExportDefined(n,e)),i|=1),256&t&&(i|=2),512&t&&(i|=4),128&t&&(i|=8),i&&n.tsNames.set(e,i)}isRedeclaredInScope(e,t,r){const n=e.tsNames.get(t);if((2&n)>0){if(256&r){return!!(512&r)!==(4&n)>0}return!0}return 128&r&&(8&n)>0?!!(2&e.names.get(t))&&!!(1&r):!!(2&r&&(1&n)>0)||super.isRedeclaredInScope(e,t,r)}checkLocalExport(e){const{name:t}=e;if(this.hasImport(t))return;for(let e=this.scopeStack.length-1;e>=0;e--){const r=this.scopeStack[e].tsNames.get(t);if((1&r)>0||(16&r)>0)return}super.checkLocalExport(e)}}const gt=e=>"ParenthesizedExpression"===e.type?gt(e.expression):e;class vt extends at{toAssignable(e,t=!1){var r,n;let i;switch(("ParenthesizedExpression"===e.type||null!=(r=e.extra)&&r.parenthesized)&&(i=gt(e),t?"Identifier"===i.type?this.expressionScope.recordArrowParameterBindingError(b.InvalidParenthesizedAssignment,e):"MemberExpression"===i.type||this.isOptionalMemberExpression(i)||this.raise(b.InvalidParenthesizedAssignment,e):this.raise(b.InvalidParenthesizedAssignment,e)),e.type){case"Identifier":case"ObjectPattern":case"ArrayPattern":case"AssignmentPattern":case"RestElement":break;case"ObjectExpression":e.type="ObjectPattern";for(let r=0,n=e.properties.length,i=n-1;r<n;r++){var s;const n=e.properties[r],a=r===i;this.toAssignableObjectExpressionProp(n,a,t),a&&"RestElement"===n.type&&null!=(s=e.extra)&&s.trailingCommaLoc&&this.raise(b.RestTrailingComma,e.extra.trailingCommaLoc)}break;case"ObjectProperty":{const{key:r,value:n}=e;this.isPrivateName(r)&&this.classScope.usePrivateName(this.getPrivateNameSV(r),r.loc.start),this.toAssignable(n,t);break}case"SpreadElement":throw new Error("Internal @babel/parser error (this is a bug, please report it). SpreadElement should be converted by .toAssignable's caller.");case"ArrayExpression":e.type="ArrayPattern",this.toAssignableList(e.elements,null==(n=e.extra)?void 0:n.trailingCommaLoc,t);break;case"AssignmentExpression":"="!==e.operator&&this.raise(b.MissingEqInAssignment,e.left.loc.end),e.type="AssignmentPattern",delete e.operator,this.toAssignable(e.left,t);break;case"ParenthesizedExpression":this.toAssignable(i,t)}}toAssignableObjectExpressionProp(e,t,r){if("ObjectMethod"===e.type)this.raise("get"===e.kind||"set"===e.kind?b.PatternHasAccessor:b.PatternHasMethod,e.key);else if("SpreadElement"===e.type){e.type="RestElement";const n=e.argument;this.checkToRestConversion(n,!1),this.toAssignable(n,r),t||this.raise(b.RestTrailingComma,e)}else this.toAssignable(e,r)}toAssignableList(e,t,r){const n=e.length-1;for(let i=0;i<=n;i++){const s=e[i];if(s){if("SpreadElement"===s.type){s.type="RestElement";const e=s.argument;this.checkToRestConversion(e,!0),this.toAssignable(e,r)}else this.toAssignable(s,r);"RestElement"===s.type&&(i<n?this.raise(b.RestTrailingComma,s):t&&this.raise(b.RestTrailingComma,t))}}}isAssignable(e,t){switch(e.type){case"Identifier":case"ObjectPattern":case"ArrayPattern":case"AssignmentPattern":case"RestElement":return!0;case"ObjectExpression":{const t=e.properties.length-1;return e.properties.every(((e,r)=>"ObjectMethod"!==e.type&&(r===t||"SpreadElement"!==e.type)&&this.isAssignable(e)))}case"ObjectProperty":return this.isAssignable(e.value);case"SpreadElement":return this.isAssignable(e.argument);case"ArrayExpression":return e.elements.every((e=>null===e||this.isAssignable(e)));case"AssignmentExpression":return"="===e.operator;case"ParenthesizedExpression":return this.isAssignable(e.expression);case"MemberExpression":case"OptionalMemberExpression":return!t;default:return!1}}toReferencedList(e,t){return e}toReferencedListDeep(e,t){this.toReferencedList(e,t);for(const t of e)"ArrayExpression"===(null==t?void 0:t.type)&&this.toReferencedListDeep(t.elements)}parseSpread(e){const t=this.startNode();return this.next(),t.argument=this.parseMaybeAssignAllowIn(e,void 0),this.finishNode(t,"SpreadElement")}parseRestBinding(){const e=this.startNode();return this.next(),e.argument=this.parseBindingAtom(),this.finishNode(e,"RestElement")}parseBindingAtom(){switch(this.state.type){case 0:{const e=this.startNode();return this.next(),e.elements=this.parseBindingList(3,93,1),this.finishNode(e,"ArrayPattern")}case 5:return this.parseObjectLike(8,!0)}return this.parseIdentifier()}parseBindingList(e,t,r){const n=1&r,i=[];let s=!0;for(;!this.eat(e);)if(s?s=!1:this.expect(12),n&&this.match(12))i.push(null);else{if(this.eat(e))break;if(this.match(21)){let n=this.parseRestBinding();if((this.hasPlugin("flow")||2&r)&&(n=this.parseFunctionParamType(n)),i.push(n),!this.checkCommaAfterRest(t)){this.expect(e);break}}else{const e=[];for(this.match(26)&&this.hasPlugin("decorators")&&this.raise(b.UnsupportedParameterDecorator,this.state.startLoc);this.match(26);)e.push(this.parseDecorator());i.push(this.parseAssignableListItem(r,e))}}return i}parseBindingRestProperty(e){return this.next(),e.argument=this.parseIdentifier(),this.checkCommaAfterRest(125),this.finishNode(e,"RestElement")}parseBindingProperty(){const{type:e,startLoc:t}=this.state;if(21===e)return this.parseBindingRestProperty(this.startNode());const r=this.startNode();return 139===e?(this.expectPlugin("destructuringPrivate",t),this.classScope.usePrivateName(this.state.value,t),r.key=this.parsePrivateName()):this.parsePropertyName(r),r.method=!1,this.parseObjPropValue(r,t,!1,!1,!0,!1)}parseAssignableListItem(e,t){const r=this.parseMaybeDefault();(this.hasPlugin("flow")||2&e)&&this.parseFunctionParamType(r);const n=this.parseMaybeDefault(r.loc.start,r);return t.length&&(r.decorators=t),n}parseFunctionParamType(e){return e}parseMaybeDefault(e,t){var r;if(null!=e||(e=this.state.startLoc),t=null!=(r=t)?r:this.parseBindingAtom(),!this.eat(29))return t;const n=this.startNodeAt(e);return n.left=t,n.right=this.parseMaybeAssignAllowIn(),this.finishNode(n,"AssignmentPattern")}isValidLVal(e,t,r){switch(e){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(e){return"OptionalMemberExpression"===e.type}checkLVal(e,t,r=64,n=!1,i=!1,s=!1){var a;const o=e.type;if(this.isObjectMethod(e))return;const l=this.isOptionalMemberExpression(e);if(l||"MemberExpression"===o)return l&&(this.expectPlugin("optionalChainingAssign",e.loc.start),"AssignmentExpression"!==t.type&&this.raise(b.InvalidLhsOptionalChaining,e,{ancestor:t})),void(64!==r&&this.raise(b.InvalidPropertyBindingPattern,e));if("Identifier"===o){this.checkIdentifier(e,r,i);const{name:t}=e;return void(n&&(n.has(t)?this.raise(b.ParamDupe,e):n.add(t)))}const c=this.isValidLVal(o,!(s||null!=(a=e.extra)&&a.parenthesized)&&"AssignmentExpression"===t.type,r);if(!0===c)return;if(!1===c){const n=64===r?b.InvalidLhs:b.InvalidLhsBinding;return void this.raise(n,e,{ancestor:t})}let u,p;"string"==typeof c?(u=c,p="ParenthesizedExpression"===o):[u,p]=c;const d="ArrayPattern"===o||"ObjectPattern"===o?{type:o}:t,f=e[u];if(Array.isArray(f))for(const e of f)e&&this.checkLVal(e,d,r,n,i,p);else f&&this.checkLVal(f,d,r,n,i,p)}checkIdentifier(e,t,r=!1){this.state.strict&&(r?me(e.name,this.inModule):he(e.name))&&(64===t?this.raise(b.StrictEvalArguments,e,{referenceName:e.name}):this.raise(b.StrictEvalArgumentsBinding,e,{bindingName:e.name})),8192&t&&"let"===e.name&&this.raise(b.LetInLexicalBinding,e),64&t||this.declareNameFromIdentifier(e,t)}declareNameFromIdentifier(e,t){this.scope.declareName(e.name,t,e.loc.start)}checkToRestConversion(e,t){switch(e.type){case"ParenthesizedExpression":this.checkToRestConversion(e.expression,t);break;case"Identifier":case"MemberExpression":break;case"ArrayExpression":case"ObjectExpression":if(t)break;default:this.raise(b.InvalidRestAssignmentPattern,e)}}checkCommaAfterRest(e){return!!this.match(12)&&(this.raise(this.lookaheadCharCode()===e?b.RestTrailingComma:b.ElementAfterRest,this.state.startLoc),!0)}}function xt(e){if(!e)throw new Error("Assert fail")}const Tt=y`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 St(e){return"private"===e||"public"===e||"protected"===e}function Et(e){return"in"===e||"out"===e}function Pt(e){if("MemberExpression"!==e.type)return!1;const{computed:t,property:r}=e;return(!t||"StringLiteral"===r.type||!("TemplateLiteral"!==r.type||r.expressions.length>0))&&Ot(e.object)}function At(e,t){var r;const{type:n}=e;if(null!=(r=e.extra)&&r.parenthesized)return!1;if(t){if("Literal"===n){const{value:t}=e;if("string"==typeof t||"boolean"==typeof t)return!0}}else if("StringLiteral"===n||"BooleanLiteral"===n)return!0;return!(!wt(e,t)&&!function(e,t){if("UnaryExpression"===e.type){const{operator:r,argument:n}=e;if("-"===r&&wt(n,t))return!0}return!1}(e,t))||("TemplateLiteral"===n&&0===e.expressions.length||!!Pt(e))}function wt(e,t){return t?"Literal"===e.type&&("number"==typeof e.value||"bigint"in e):"NumericLiteral"===e.type||"BigIntLiteral"===e.type}function Ot(e){return"Identifier"===e.type||"MemberExpression"===e.type&&!e.computed&&Ot(e.object)}const Ct=y`placeholders`({ClassNameIsRequired:"A class name is required.",UnexpectedSpace:"Unexpected space in placeholder."});const It=["minimal","fsharp","hack","smart"],Nt=["^^","@@","^","%","#"];const _t={estree:e=>class extends e{parse(){const e=x(super.parse());return 128&this.optionFlags&&(e.tokens=e.tokens.map(x)),e}parseRegExpLiteral({pattern:e,flags:t}){let r=null;try{r=new RegExp(e,t)}catch(e){}const n=this.estreeParseLiteral(r);return n.regex={pattern:e,flags:t},n}parseBigIntLiteral(e){let t;try{t=BigInt(e)}catch(e){t=null}const r=this.estreeParseLiteral(t);return r.bigint=String(r.value||e),r}parseDecimalLiteral(e){const t=this.estreeParseLiteral(null);return t.decimal=String(t.value||e),t}estreeParseLiteral(e){return this.parseLiteral(e,"Literal")}parseStringLiteral(e){return this.estreeParseLiteral(e)}parseNumericLiteral(e){return this.estreeParseLiteral(e)}parseNullLiteral(){return this.estreeParseLiteral(null)}parseBooleanLiteral(e){return this.estreeParseLiteral(e)}directiveToStmt(e){const t=e.value;delete e.value,t.type="Literal",t.raw=t.extra.raw,t.value=t.extra.expressionValue;const r=e;return r.type="ExpressionStatement",r.expression=t,r.directive=t.extra.rawValue,delete t.extra,r}initFunction(e,t){super.initFunction(e,t),e.expression=!1}checkDeclaration(e){null!=e&&this.isObjectProperty(e)?this.checkDeclaration(e.value):super.checkDeclaration(e)}getObjectOrClassMethodParams(e){return e.value.params}isValidDirective(e){var t;return"ExpressionStatement"===e.type&&"Literal"===e.expression.type&&"string"==typeof e.expression.value&&!(null!=(t=e.expression.extra)&&t.parenthesized)}parseBlockBody(e,t,r,n,i){super.parseBlockBody(e,t,r,n,i);const s=e.directives.map((e=>this.directiveToStmt(e)));e.body=s.concat(e.body),delete e.directives}parsePrivateName(){const e=super.parsePrivateName();return this.getPluginOption("estree","classFeatures")?this.convertPrivateNameToPrivateIdentifier(e):e}convertPrivateNameToPrivateIdentifier(e){const t=super.getPrivateNameSV(e);return delete e.id,e.name=t,e.type="PrivateIdentifier",e}isPrivateName(e){return this.getPluginOption("estree","classFeatures")?"PrivateIdentifier"===e.type:super.isPrivateName(e)}getPrivateNameSV(e){return this.getPluginOption("estree","classFeatures")?e.name:super.getPrivateNameSV(e)}parseLiteral(e,t){const r=super.parseLiteral(e,t);return r.raw=r.extra.raw,delete r.extra,r}parseFunctionBody(e,t,r=!1){super.parseFunctionBody(e,t,r),e.expression="BlockStatement"!==e.body.type}parseMethod(e,t,r,n,i,s,a=!1){let o=this.startNode();o.kind=e.kind,o=super.parseMethod(o,t,r,n,i,s,a),o.type="FunctionExpression",delete o.kind,e.value=o;const{typeParameters:l}=e;return l&&(delete e.typeParameters,o.typeParameters=l,this.resetStartLocationFromNode(o,l)),"ClassPrivateMethod"===s&&(e.computed=!1),this.finishNode(e,"MethodDefinition")}nameIsConstructor(e){return"Literal"===e.type?"constructor"===e.value:super.nameIsConstructor(e)}parseClassProperty(...e){const t=super.parseClassProperty(...e);return this.getPluginOption("estree","classFeatures")?(t.type="PropertyDefinition",t):t}parseClassPrivateProperty(...e){const t=super.parseClassPrivateProperty(...e);return this.getPluginOption("estree","classFeatures")?(t.type="PropertyDefinition",t.computed=!1,t):t}parseObjectMethod(e,t,r,n,i){const s=super.parseObjectMethod(e,t,r,n,i);return s&&(s.type="Property","method"===s.kind&&(s.kind="init"),s.shorthand=!1),s}parseObjectProperty(e,t,r,n){const i=super.parseObjectProperty(e,t,r,n);return i&&(i.kind="init",i.type="Property"),i}isValidLVal(e,t,r){return"Property"===e?"value":super.isValidLVal(e,t,r)}isAssignable(e,t){return null!=e&&this.isObjectProperty(e)?this.isAssignable(e.value,t):super.isAssignable(e,t)}toAssignable(e,t=!1){if(null!=e&&this.isObjectProperty(e)){const{key:r,value:n}=e;this.isPrivateName(r)&&this.classScope.usePrivateName(this.getPrivateNameSV(r),r.loc.start),this.toAssignable(n,t)}else super.toAssignable(e,t)}toAssignableObjectExpressionProp(e,t,r){"Property"!==e.type||"get"!==e.kind&&"set"!==e.kind?"Property"===e.type&&e.method?this.raise(b.PatternHasMethod,e.key):super.toAssignableObjectExpressionProp(e,t,r):this.raise(b.PatternHasAccessor,e.key)}finishCallExpression(e,t){const r=super.finishCallExpression(e,t);var n,i;"Import"===r.callee.type&&(r.type="ImportExpression",r.source=r.arguments[0],r.options=null!=(n=r.arguments[1])?n:null,r.attributes=null!=(i=r.arguments[1])?i:null,delete r.arguments,delete r.callee);return r}toReferencedArguments(e){"ImportExpression"!==e.type&&super.toReferencedArguments(e)}parseExport(e,t){const r=this.state.lastTokStartLoc,n=super.parseExport(e,t);switch(n.type){case"ExportAllDeclaration":n.exported=null;break;case"ExportNamedDeclaration":1===n.specifiers.length&&"ExportNamespaceSpecifier"===n.specifiers[0].type&&(n.type="ExportAllDeclaration",n.exported=n.specifiers[0].exported,delete n.specifiers);case"ExportDefaultDeclaration":{var i;const{declaration:e}=n;"ClassDeclaration"===(null==e?void 0:e.type)&&(null==(i=e.decorators)?void 0:i.length)>0&&e.start===n.start&&this.resetStartLocation(n,r)}}return n}parseSubscript(e,t,r,n){const i=super.parseSubscript(e,t,r,n);if(n.optionalChainMember){if("OptionalMemberExpression"!==i.type&&"OptionalCallExpression"!==i.type||(i.type=i.type.substring(8)),n.stop){const e=this.startNodeAtNode(i);return e.expression=i,this.finishNode(e,"ChainExpression")}}else"MemberExpression"!==i.type&&"CallExpression"!==i.type||(i.optional=!1);return i}isOptionalMemberExpression(e){return"ChainExpression"===e.type?"MemberExpression"===e.expression.type:super.isOptionalMemberExpression(e)}hasPropertyAsPrivateName(e){return"ChainExpression"===e.type&&(e=e.expression),super.hasPropertyAsPrivateName(e)}isObjectProperty(e){return"Property"===e.type&&"init"===e.kind&&!e.method}isObjectMethod(e){return"Property"===e.type&&(e.method||"get"===e.kind||"set"===e.kind)}finishNodeAt(e,t,r){return x(super.finishNodeAt(e,t,r))}resetStartLocation(e,t){super.resetStartLocation(e,t),x(e)}resetEndLocation(e,t=this.state.lastTokEndLoc){super.resetEndLocation(e,t),x(e)}},jsx:e=>class extends e{jsxReadToken(){let e="",t=this.state.pos;for(;;){if(this.state.pos>=this.length)throw this.raise(ft.UnterminatedJsxContent,this.state.startLoc);const r=this.input.charCodeAt(this.state.pos);switch(r){case 60:case 123:return this.state.pos===this.state.start?void(60===r&&this.state.canStartJSXElement?(++this.state.pos,this.finishToken(143)):super.getTokenFromCode(r)):(e+=this.input.slice(t,this.state.pos),void this.finishToken(142,e));case 38:e+=this.input.slice(t,this.state.pos),e+=this.jsxReadEntity(),t=this.state.pos;break;default:Oe(r)?(e+=this.input.slice(t,this.state.pos),e+=this.jsxReadNewLine(!0),t=this.state.pos):++this.state.pos}}}jsxReadNewLine(e){const t=this.input.charCodeAt(this.state.pos);let r;return++this.state.pos,13===t&&10===this.input.charCodeAt(this.state.pos)?(++this.state.pos,r=e?"\n":"\r\n"):r=String.fromCharCode(t),++this.state.curLine,this.state.lineStart=this.state.pos,r}jsxReadString(e){let t="",r=++this.state.pos;for(;;){if(this.state.pos>=this.length)throw this.raise(b.UnterminatedString,this.state.startLoc);const n=this.input.charCodeAt(this.state.pos);if(n===e)break;38===n?(t+=this.input.slice(r,this.state.pos),t+=this.jsxReadEntity(),r=this.state.pos):Oe(n)?(t+=this.input.slice(r,this.state.pos),t+=this.jsxReadNewLine(!1),r=this.state.pos):++this.state.pos}t+=this.input.slice(r,this.state.pos++),this.finishToken(134,t)}jsxReadEntity(){const e=++this.state.pos;if(35===this.codePointAtPos(this.state.pos)){++this.state.pos;let e=10;120===this.codePointAtPos(this.state.pos)&&(e=16,++this.state.pos);const t=this.readInt(e,void 0,!1,"bail");if(null!==t&&59===this.codePointAtPos(this.state.pos))return++this.state.pos,String.fromCodePoint(t)}else{let t=0,r=!1;for(;t++<10&&this.state.pos<this.length&&!(r=59===this.codePointAtPos(this.state.pos));)++this.state.pos;if(r){const t=this.input.slice(e,this.state.pos),r=dt[t];if(++this.state.pos,r)return r}}return this.state.pos=e,"&"}jsxReadWord(){let e;const t=this.state.pos;do{e=this.input.charCodeAt(++this.state.pos)}while(ae(e)||45===e);this.finishToken(141,this.input.slice(t,this.state.pos))}jsxParseIdentifier(){const e=this.startNode();return this.match(141)?e.name=this.state.value:H(this.state.type)?e.name=J(this.state.type):this.unexpected(),this.next(),this.finishNode(e,"JSXIdentifier")}jsxParseNamespacedName(){const e=this.state.startLoc,t=this.jsxParseIdentifier();if(!this.eat(14))return t;const r=this.startNodeAt(e);return r.namespace=t,r.name=this.jsxParseIdentifier(),this.finishNode(r,"JSXNamespacedName")}jsxParseElementName(){const e=this.state.startLoc;let t=this.jsxParseNamespacedName();if("JSXNamespacedName"===t.type)return t;for(;this.eat(16);){const r=this.startNodeAt(e);r.object=t,r.property=this.jsxParseIdentifier(),t=this.finishNode(r,"JSXMemberExpression")}return t}jsxParseAttributeValue(){let e;switch(this.state.type){case 5:return e=this.startNode(),this.setContext(S.brace),this.next(),e=this.jsxParseExpressionContainer(e,S.j_oTag),"JSXEmptyExpression"===e.expression.type&&this.raise(ft.AttributeIsEmpty,e),e;case 143:case 134:return this.parseExprAtom();default:throw this.raise(ft.UnsupportedJsxValue,this.state.startLoc)}}jsxParseEmptyExpression(){const e=this.startNodeAt(this.state.lastTokEndLoc);return this.finishNodeAt(e,"JSXEmptyExpression",this.state.startLoc)}jsxParseSpreadChild(e){return this.next(),e.expression=this.parseExpression(),this.setContext(S.j_expr),this.state.canStartJSXElement=!0,this.expect(8),this.finishNode(e,"JSXSpreadChild")}jsxParseExpressionContainer(e,t){if(this.match(8))e.expression=this.jsxParseEmptyExpression();else{const t=this.parseExpression();e.expression=t}return this.setContext(t),this.state.canStartJSXElement=!0,this.expect(8),this.finishNode(e,"JSXExpressionContainer")}jsxParseAttribute(){const e=this.startNode();return this.match(5)?(this.setContext(S.brace),this.next(),this.expect(21),e.argument=this.parseMaybeAssignAllowIn(),this.setContext(S.j_oTag),this.state.canStartJSXElement=!0,this.expect(8),this.finishNode(e,"JSXSpreadAttribute")):(e.name=this.jsxParseNamespacedName(),e.value=this.eat(29)?this.jsxParseAttributeValue():null,this.finishNode(e,"JSXAttribute"))}jsxParseOpeningElementAt(e){const t=this.startNodeAt(e);return this.eat(144)?this.finishNode(t,"JSXOpeningFragment"):(t.name=this.jsxParseElementName(),this.jsxParseOpeningElementAfterName(t))}jsxParseOpeningElementAfterName(e){const t=[];for(;!this.match(56)&&!this.match(144);)t.push(this.jsxParseAttribute());return e.attributes=t,e.selfClosing=this.eat(56),this.expect(144),this.finishNode(e,"JSXOpeningElement")}jsxParseClosingElementAt(e){const t=this.startNodeAt(e);return this.eat(144)?this.finishNode(t,"JSXClosingFragment"):(t.name=this.jsxParseElementName(),this.expect(144),this.finishNode(t,"JSXClosingElement"))}jsxParseElementAt(e){const t=this.startNodeAt(e),r=[],n=this.jsxParseOpeningElementAt(e);let i=null;if(!n.selfClosing){e:for(;;)switch(this.state.type){case 143:if(e=this.state.startLoc,this.next(),this.eat(56)){i=this.jsxParseClosingElementAt(e);break e}r.push(this.jsxParseElementAt(e));break;case 142:r.push(this.parseLiteral(this.state.value,"JSXText"));break;case 5:{const e=this.startNode();this.setContext(S.brace),this.next(),this.match(21)?r.push(this.jsxParseSpreadChild(e)):r.push(this.jsxParseExpressionContainer(e,S.j_expr));break}default:this.unexpected()}ht(n)&&!ht(i)&&null!==i?this.raise(ft.MissingClosingTagFragment,i):!ht(n)&&ht(i)?this.raise(ft.MissingClosingTagElement,i,{openingTagName:mt(n.name)}):ht(n)||ht(i)||mt(i.name)!==mt(n.name)&&this.raise(ft.MissingClosingTagElement,i,{openingTagName:mt(n.name)})}if(ht(n)?(t.openingFragment=n,t.closingFragment=i):(t.openingElement=n,t.closingElement=i),t.children=r,this.match(47))throw this.raise(ft.UnwrappedAdjacentJSXElements,this.state.startLoc);return ht(n)?this.finishNode(t,"JSXFragment"):this.finishNode(t,"JSXElement")}jsxParseElement(){const e=this.state.startLoc;return this.next(),this.jsxParseElementAt(e)}setContext(e){const{context:t}=this.state;t[t.length-1]=e}parseExprAtom(e){return this.match(143)?this.jsxParseElement():this.match(47)&&33!==this.input.charCodeAt(this.state.pos)?(this.replaceToken(143),this.jsxParseElement()):super.parseExprAtom(e)}skipSpace(){this.curContext().preserveSpace||super.skipSpace()}getTokenFromCode(e){const t=this.curContext();if(t!==S.j_expr){if(t===S.j_oTag||t===S.j_cTag){if(se(e))return void this.jsxReadWord();if(62===e)return++this.state.pos,void this.finishToken(144);if((34===e||39===e)&&t===S.j_oTag)return void this.jsxReadString(e)}if(60===e&&this.state.canStartJSXElement&&33!==this.input.charCodeAt(this.state.pos+1))return++this.state.pos,void this.finishToken(143);super.getTokenFromCode(e)}else this.jsxReadToken()}updateContext(e){const{context:t,type:r}=this.state;if(56===r&&143===e)t.splice(-2,2,S.j_cTag),this.state.canStartJSXElement=!1;else if(143===r)t.push(S.j_oTag);else if(144===r){const r=t[t.length-1];r===S.j_oTag&&56===e||r===S.j_cTag?(t.pop(),this.state.canStartJSXElement=t[t.length-1]===S.j_expr):(this.setContext(S.j_expr),this.state.canStartJSXElement=!0)}else this.state.canStartJSXElement=B[r]}},flow:e=>class extends e{constructor(...e){super(...e),this.flowPragma=void 0}getScopeHandler(){return xe}shouldParseTypes(){return this.getPluginOption("flow","all")||"flow"===this.flowPragma}finishToken(e,t){134!==e&&13!==e&&28!==e&&void 0===this.flowPragma&&(this.flowPragma=null),super.finishToken(e,t)}addComment(e){if(void 0===this.flowPragma){const t=pt.exec(e.value);if(t)if("flow"===t[1])this.flowPragma="flow";else{if("noflow"!==t[1])throw new Error("Unexpected flow pragma");this.flowPragma="noflow"}else;}super.addComment(e)}flowParseTypeInitialiser(e){const t=this.state.inType;this.state.inType=!0,this.expect(e||14);const r=this.flowParseType();return this.state.inType=t,r}flowParsePredicate(){const e=this.startNode(),t=this.state.startLoc;return this.next(),this.expectContextual(110),this.state.lastTokStartLoc.index>t.index+1&&this.raise(lt.UnexpectedSpaceBetweenModuloChecks,t),this.eat(10)?(e.value=super.parseExpression(),this.expect(11),this.finishNode(e,"DeclaredPredicate")):this.finishNode(e,"InferredPredicate")}flowParseTypeAndPredicateInitialiser(){const e=this.state.inType;this.state.inType=!0,this.expect(14);let t=null,r=null;return this.match(54)?(this.state.inType=e,r=this.flowParsePredicate()):(t=this.flowParseType(),this.state.inType=e,this.match(54)&&(r=this.flowParsePredicate())),[t,r]}flowParseDeclareClass(e){return this.next(),this.flowParseInterfaceish(e,!0),this.finishNode(e,"DeclareClass")}flowParseDeclareFunction(e){this.next();const t=e.id=this.parseIdentifier(),r=this.startNode(),n=this.startNode();this.match(47)?r.typeParameters=this.flowParseTypeParameterDeclaration():r.typeParameters=null,this.expect(10);const i=this.flowParseFunctionTypeParams();return r.params=i.params,r.rest=i.rest,r.this=i._this,this.expect(11),[r.returnType,e.predicate]=this.flowParseTypeAndPredicateInitialiser(),n.typeAnnotation=this.finishNode(r,"FunctionTypeAnnotation"),t.typeAnnotation=this.finishNode(n,"TypeAnnotation"),this.resetEndLocation(t),this.semicolon(),this.scope.declareName(e.id.name,2048,e.id.loc.start),this.finishNode(e,"DeclareFunction")}flowParseDeclare(e,t){return this.match(80)?this.flowParseDeclareClass(e):this.match(68)?this.flowParseDeclareFunction(e):this.match(74)?this.flowParseDeclareVariable(e):this.eatContextual(127)?this.match(16)?this.flowParseDeclareModuleExports(e):(t&&this.raise(lt.NestedDeclareModule,this.state.lastTokStartLoc),this.flowParseDeclareModule(e)):this.isContextual(130)?this.flowParseDeclareTypeAlias(e):this.isContextual(131)?this.flowParseDeclareOpaqueType(e):this.isContextual(129)?this.flowParseDeclareInterface(e):this.match(82)?this.flowParseDeclareExportDeclaration(e,t):void this.unexpected()}flowParseDeclareVariable(e){return this.next(),e.id=this.flowParseTypeAnnotatableIdentifier(!0),this.scope.declareName(e.id.name,5,e.id.loc.start),this.semicolon(),this.finishNode(e,"DeclareVariable")}flowParseDeclareModule(e){this.scope.enter(0),this.match(134)?e.id=super.parseExprAtom():e.id=this.parseIdentifier();const t=e.body=this.startNode(),r=t.body=[];for(this.expect(5);!this.match(8);){let e=this.startNode();this.match(83)?(this.next(),this.isContextual(130)||this.match(87)||this.raise(lt.InvalidNonTypeImportInDeclareModule,this.state.lastTokStartLoc),super.parseImport(e)):(this.expectContextual(125,lt.UnsupportedStatementInDeclareModule),e=this.flowParseDeclare(e,!0)),r.push(e)}this.scope.exit(),this.expect(8),this.finishNode(t,"BlockStatement");let n=null,i=!1;return r.forEach((e=>{!function(e){return"DeclareExportAllDeclaration"===e.type||"DeclareExportDeclaration"===e.type&&(!e.declaration||"TypeAlias"!==e.declaration.type&&"InterfaceDeclaration"!==e.declaration.type)}(e)?"DeclareModuleExports"===e.type&&(i&&this.raise(lt.DuplicateDeclareModuleExports,e),"ES"===n&&this.raise(lt.AmbiguousDeclareModuleKind,e),n="CommonJS",i=!0):("CommonJS"===n&&this.raise(lt.AmbiguousDeclareModuleKind,e),n="ES")})),e.kind=n||"CommonJS",this.finishNode(e,"DeclareModule")}flowParseDeclareExportDeclaration(e,t){if(this.expect(82),this.eat(65))return this.match(68)||this.match(80)?e.declaration=this.flowParseDeclare(this.startNode()):(e.declaration=this.flowParseType(),this.semicolon()),e.default=!0,this.finishNode(e,"DeclareExportDeclaration");if(this.match(75)||this.isLet()||(this.isContextual(130)||this.isContextual(129))&&!t){const e=this.state.value;throw this.raise(lt.UnsupportedDeclareExportKind,this.state.startLoc,{unsupportedExportKind:e,suggestion:ut[e]})}return this.match(74)||this.match(68)||this.match(80)||this.isContextual(131)?(e.declaration=this.flowParseDeclare(this.startNode()),e.default=!1,this.finishNode(e,"DeclareExportDeclaration")):this.match(55)||this.match(5)||this.isContextual(129)||this.isContextual(130)||this.isContextual(131)?("ExportNamedDeclaration"===(e=this.parseExport(e,null)).type&&(e.type="ExportDeclaration",e.default=!1,delete e.exportKind),e.type="Declare"+e.type,e):void this.unexpected()}flowParseDeclareModuleExports(e){return this.next(),this.expectContextual(111),e.typeAnnotation=this.flowParseTypeAnnotation(),this.semicolon(),this.finishNode(e,"DeclareModuleExports")}flowParseDeclareTypeAlias(e){this.next();const t=this.flowParseTypeAlias(e);return t.type="DeclareTypeAlias",t}flowParseDeclareOpaqueType(e){this.next();const t=this.flowParseOpaqueType(e,!0);return t.type="DeclareOpaqueType",t}flowParseDeclareInterface(e){return this.next(),this.flowParseInterfaceish(e,!1),this.finishNode(e,"DeclareInterface")}flowParseInterfaceish(e,t){if(e.id=this.flowParseRestrictedIdentifier(!t,!0),this.scope.declareName(e.id.name,t?17:8201,e.id.loc.start),this.match(47)?e.typeParameters=this.flowParseTypeParameterDeclaration():e.typeParameters=null,e.extends=[],this.eat(81))do{e.extends.push(this.flowParseInterfaceExtends())}while(!t&&this.eat(12));if(t){if(e.implements=[],e.mixins=[],this.eatContextual(117))do{e.mixins.push(this.flowParseInterfaceExtends())}while(this.eat(12));if(this.eatContextual(113))do{e.implements.push(this.flowParseInterfaceExtends())}while(this.eat(12))}e.body=this.flowParseObjectType({allowStatic:t,allowExact:!1,allowSpread:!1,allowProto:t,allowInexact:!1})}flowParseInterfaceExtends(){const e=this.startNode();return e.id=this.flowParseQualifiedTypeIdentifier(),this.match(47)?e.typeParameters=this.flowParseTypeParameterInstantiation():e.typeParameters=null,this.finishNode(e,"InterfaceExtends")}flowParseInterface(e){return this.flowParseInterfaceish(e,!1),this.finishNode(e,"InterfaceDeclaration")}checkNotUnderscore(e){"_"===e&&this.raise(lt.UnexpectedReservedUnderscore,this.state.startLoc)}checkReservedType(e,t,r){ot.has(e)&&this.raise(r?lt.AssignReservedType:lt.UnexpectedReservedType,t,{reservedType:e})}flowParseRestrictedIdentifier(e,t){return this.checkReservedType(this.state.value,this.state.startLoc,t),this.parseIdentifier(e)}flowParseTypeAlias(e){return e.id=this.flowParseRestrictedIdentifier(!1,!0),this.scope.declareName(e.id.name,8201,e.id.loc.start),this.match(47)?e.typeParameters=this.flowParseTypeParameterDeclaration():e.typeParameters=null,e.right=this.flowParseTypeInitialiser(29),this.semicolon(),this.finishNode(e,"TypeAlias")}flowParseOpaqueType(e,t){return this.expectContextual(130),e.id=this.flowParseRestrictedIdentifier(!0,!0),this.scope.declareName(e.id.name,8201,e.id.loc.start),this.match(47)?e.typeParameters=this.flowParseTypeParameterDeclaration():e.typeParameters=null,e.supertype=null,this.match(14)&&(e.supertype=this.flowParseTypeInitialiser(14)),e.impltype=null,t||(e.impltype=this.flowParseTypeInitialiser(29)),this.semicolon(),this.finishNode(e,"OpaqueType")}flowParseTypeParameter(e=!1){const t=this.state.startLoc,r=this.startNode(),n=this.flowParseVariance(),i=this.flowParseTypeAnnotatableIdentifier();return r.name=i.name,r.variance=n,r.bound=i.typeAnnotation,this.match(29)?(this.eat(29),r.default=this.flowParseType()):e&&this.raise(lt.MissingTypeParamDefault,t),this.finishNode(r,"TypeParameter")}flowParseTypeParameterDeclaration(){const e=this.state.inType,t=this.startNode();t.params=[],this.state.inType=!0,this.match(47)||this.match(143)?this.next():this.unexpected();let r=!1;do{const e=this.flowParseTypeParameter(r);t.params.push(e),e.default&&(r=!0),this.match(48)||this.expect(12)}while(!this.match(48));return this.expect(48),this.state.inType=e,this.finishNode(t,"TypeParameterDeclaration")}flowInTopLevelContext(e){if(this.curContext()===S.brace)return e();{const t=this.state.context;this.state.context=[t[0]];try{return e()}finally{this.state.context=t}}}flowParseTypeParameterInstantiationInExpression(){if(47===this.reScan_lt())return this.flowParseTypeParameterInstantiation()}flowParseTypeParameterInstantiation(){const e=this.startNode(),t=this.state.inType;return this.state.inType=!0,e.params=[],this.flowInTopLevelContext((()=>{this.expect(47);const t=this.state.noAnonFunctionType;for(this.state.noAnonFunctionType=!1;!this.match(48);)e.params.push(this.flowParseType()),this.match(48)||this.expect(12);this.state.noAnonFunctionType=t})),this.state.inType=t,this.state.inType||this.curContext()!==S.brace||this.reScan_lt_gt(),this.expect(48),this.finishNode(e,"TypeParameterInstantiation")}flowParseTypeParameterInstantiationCallOrNew(){if(47!==this.reScan_lt())return;const e=this.startNode(),t=this.state.inType;for(e.params=[],this.state.inType=!0,this.expect(47);!this.match(48);)e.params.push(this.flowParseTypeOrImplicitInstantiation()),this.match(48)||this.expect(12);return this.expect(48),this.state.inType=t,this.finishNode(e,"TypeParameterInstantiation")}flowParseInterfaceType(){const e=this.startNode();if(this.expectContextual(129),e.extends=[],this.eat(81))do{e.extends.push(this.flowParseInterfaceExtends())}while(this.eat(12));return e.body=this.flowParseObjectType({allowStatic:!1,allowExact:!1,allowSpread:!1,allowProto:!1,allowInexact:!1}),this.finishNode(e,"InterfaceTypeAnnotation")}flowParseObjectPropertyKey(){return this.match(135)||this.match(134)?super.parseExprAtom():this.parseIdentifier(!0)}flowParseObjectTypeIndexer(e,t,r){return e.static=t,14===this.lookahead().type?(e.id=this.flowParseObjectPropertyKey(),e.key=this.flowParseTypeInitialiser()):(e.id=null,e.key=this.flowParseType()),this.expect(3),e.value=this.flowParseTypeInitialiser(),e.variance=r,this.finishNode(e,"ObjectTypeIndexer")}flowParseObjectTypeInternalSlot(e,t){return e.static=t,e.id=this.flowParseObjectPropertyKey(),this.expect(3),this.expect(3),this.match(47)||this.match(10)?(e.method=!0,e.optional=!1,e.value=this.flowParseObjectTypeMethodish(this.startNodeAt(e.loc.start))):(e.method=!1,this.eat(17)&&(e.optional=!0),e.value=this.flowParseTypeInitialiser()),this.finishNode(e,"ObjectTypeInternalSlot")}flowParseObjectTypeMethodish(e){for(e.params=[],e.rest=null,e.typeParameters=null,e.this=null,this.match(47)&&(e.typeParameters=this.flowParseTypeParameterDeclaration()),this.expect(10),this.match(78)&&(e.this=this.flowParseFunctionTypeParam(!0),e.this.name=null,this.match(11)||this.expect(12));!this.match(11)&&!this.match(21);)e.params.push(this.flowParseFunctionTypeParam(!1)),this.match(11)||this.expect(12);return this.eat(21)&&(e.rest=this.flowParseFunctionTypeParam(!1)),this.expect(11),e.returnType=this.flowParseTypeInitialiser(),this.finishNode(e,"FunctionTypeAnnotation")}flowParseObjectTypeCallProperty(e,t){const r=this.startNode();return e.static=t,e.value=this.flowParseObjectTypeMethodish(r),this.finishNode(e,"ObjectTypeCallProperty")}flowParseObjectType({allowStatic:e,allowExact:t,allowSpread:r,allowProto:n,allowInexact:i}){const s=this.state.inType;this.state.inType=!0;const a=this.startNode();let o,l;a.callProperties=[],a.properties=[],a.indexers=[],a.internalSlots=[];let c=!1;for(t&&this.match(6)?(this.expect(6),o=9,l=!0):(this.expect(5),o=8,l=!1),a.exact=l;!this.match(o);){let t=!1,s=null,o=null;const u=this.startNode();if(n&&this.isContextual(118)){const t=this.lookahead();14!==t.type&&17!==t.type&&(this.next(),s=this.state.startLoc,e=!1)}if(e&&this.isContextual(106)){const e=this.lookahead();14!==e.type&&17!==e.type&&(this.next(),t=!0)}const p=this.flowParseVariance();if(this.eat(0))null!=s&&this.unexpected(s),this.eat(0)?(p&&this.unexpected(p.loc.start),a.internalSlots.push(this.flowParseObjectTypeInternalSlot(u,t))):a.indexers.push(this.flowParseObjectTypeIndexer(u,t,p));else if(this.match(10)||this.match(47))null!=s&&this.unexpected(s),p&&this.unexpected(p.loc.start),a.callProperties.push(this.flowParseObjectTypeCallProperty(u,t));else{let e="init";if(this.isContextual(99)||this.isContextual(104)){$(this.lookahead().type)&&(e=this.state.value,this.next())}const n=this.flowParseObjectTypeProperty(u,t,s,p,e,r,null!=i?i:!l);null===n?(c=!0,o=this.state.lastTokStartLoc):a.properties.push(n)}this.flowObjectTypeSemicolon(),!o||this.match(8)||this.match(9)||this.raise(lt.UnexpectedExplicitInexactInObject,o)}this.expect(o),r&&(a.inexact=c);const u=this.finishNode(a,"ObjectTypeAnnotation");return this.state.inType=s,u}flowParseObjectTypeProperty(e,t,r,n,i,s,a){if(this.eat(21)){return this.match(12)||this.match(13)||this.match(8)||this.match(9)?(s?a||this.raise(lt.InexactInsideExact,this.state.lastTokStartLoc):this.raise(lt.InexactInsideNonObject,this.state.lastTokStartLoc),n&&this.raise(lt.InexactVariance,n),null):(s||this.raise(lt.UnexpectedSpreadType,this.state.lastTokStartLoc),null!=r&&this.unexpected(r),n&&this.raise(lt.SpreadVariance,n),e.argument=this.flowParseType(),this.finishNode(e,"ObjectTypeSpreadProperty"))}{e.key=this.flowParseObjectPropertyKey(),e.static=t,e.proto=null!=r,e.kind=i;let a=!1;return this.match(47)||this.match(10)?(e.method=!0,null!=r&&this.unexpected(r),n&&this.unexpected(n.loc.start),e.value=this.flowParseObjectTypeMethodish(this.startNodeAt(e.loc.start)),"get"!==i&&"set"!==i||this.flowCheckGetterSetterParams(e),!s&&"constructor"===e.key.name&&e.value.this&&this.raise(lt.ThisParamBannedInConstructor,e.value.this)):("init"!==i&&this.unexpected(),e.method=!1,this.eat(17)&&(a=!0),e.value=this.flowParseTypeInitialiser(),e.variance=n),e.optional=a,this.finishNode(e,"ObjectTypeProperty")}}flowCheckGetterSetterParams(e){const t="get"===e.kind?0:1,r=e.value.params.length+(e.value.rest?1:0);e.value.this&&this.raise("get"===e.kind?lt.GetterMayNotHaveThisParam:lt.SetterMayNotHaveThisParam,e.value.this),r!==t&&this.raise("get"===e.kind?b.BadGetterArity:b.BadSetterArity,e),"set"===e.kind&&e.value.rest&&this.raise(b.BadSetterRestParameter,e)}flowObjectTypeSemicolon(){this.eat(13)||this.eat(12)||this.match(8)||this.match(9)||this.unexpected()}flowParseQualifiedTypeIdentifier(e,t){null!=e||(e=this.state.startLoc);let r=t||this.flowParseRestrictedIdentifier(!0);for(;this.eat(16);){const t=this.startNodeAt(e);t.qualification=r,t.id=this.flowParseRestrictedIdentifier(!0),r=this.finishNode(t,"QualifiedTypeIdentifier")}return r}flowParseGenericType(e,t){const r=this.startNodeAt(e);return r.typeParameters=null,r.id=this.flowParseQualifiedTypeIdentifier(e,t),this.match(47)&&(r.typeParameters=this.flowParseTypeParameterInstantiation()),this.finishNode(r,"GenericTypeAnnotation")}flowParseTypeofType(){const e=this.startNode();return this.expect(87),e.argument=this.flowParsePrimaryType(),this.finishNode(e,"TypeofTypeAnnotation")}flowParseTupleType(){const e=this.startNode();for(e.types=[],this.expect(0);this.state.pos<this.length&&!this.match(3)&&(e.types.push(this.flowParseType()),!this.match(3));)this.expect(12);return this.expect(3),this.finishNode(e,"TupleTypeAnnotation")}flowParseFunctionTypeParam(e){let t=null,r=!1,n=null;const i=this.startNode(),s=this.lookahead(),a=78===this.state.type;return 14===s.type||17===s.type?(a&&!e&&this.raise(lt.ThisParamMustBeFirst,i),t=this.parseIdentifier(a),this.eat(17)&&(r=!0,a&&this.raise(lt.ThisParamMayNotBeOptional,i)),n=this.flowParseTypeInitialiser()):n=this.flowParseType(),i.name=t,i.optional=r,i.typeAnnotation=n,this.finishNode(i,"FunctionTypeParam")}reinterpretTypeAsFunctionTypeParam(e){const t=this.startNodeAt(e.loc.start);return t.name=null,t.optional=!1,t.typeAnnotation=e,this.finishNode(t,"FunctionTypeParam")}flowParseFunctionTypeParams(e=[]){let t=null,r=null;for(this.match(78)&&(r=this.flowParseFunctionTypeParam(!0),r.name=null,this.match(11)||this.expect(12));!this.match(11)&&!this.match(21);)e.push(this.flowParseFunctionTypeParam(!1)),this.match(11)||this.expect(12);return this.eat(21)&&(t=this.flowParseFunctionTypeParam(!1)),{params:e,rest:t,_this:r}}flowIdentToTypeAnnotation(e,t,r){switch(r.name){case"any":return this.finishNode(t,"AnyTypeAnnotation");case"bool":case"boolean":return this.finishNode(t,"BooleanTypeAnnotation");case"mixed":return this.finishNode(t,"MixedTypeAnnotation");case"empty":return this.finishNode(t,"EmptyTypeAnnotation");case"number":return this.finishNode(t,"NumberTypeAnnotation");case"string":return this.finishNode(t,"StringTypeAnnotation");case"symbol":return this.finishNode(t,"SymbolTypeAnnotation");default:return this.checkNotUnderscore(r.name),this.flowParseGenericType(e,r)}}flowParsePrimaryType(){const e=this.state.startLoc,t=this.startNode();let r,n,i=!1;const s=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,n=this.flowParseTupleType(),this.state.noAnonFunctionType=s,n;case 47:{const e=this.startNode();return e.typeParameters=this.flowParseTypeParameterDeclaration(),this.expect(10),r=this.flowParseFunctionTypeParams(),e.params=r.params,e.rest=r.rest,e.this=r._this,this.expect(11),this.expect(19),e.returnType=this.flowParseType(),this.finishNode(e,"FunctionTypeAnnotation")}case 10:{const e=this.startNode();if(this.next(),!this.match(11)&&!this.match(21))if(q(this.state.type)||this.match(78)){const e=this.lookahead().type;i=17!==e&&14!==e}else i=!0;if(i){if(this.state.noAnonFunctionType=!1,n=this.flowParseType(),this.state.noAnonFunctionType=s,this.state.noAnonFunctionType||!(this.match(12)||this.match(11)&&19===this.lookahead().type))return this.expect(11),n;this.eat(12)}return r=n?this.flowParseFunctionTypeParams([this.reinterpretTypeAsFunctionTypeParam(n)]):this.flowParseFunctionTypeParams(),e.params=r.params,e.rest=r.rest,e.this=r._this,this.expect(11),this.expect(19),e.returnType=this.flowParseType(),e.typeParameters=null,this.finishNode(e,"FunctionTypeAnnotation")}case 134:return this.parseLiteral(this.state.value,"StringLiteralTypeAnnotation");case 85:case 86:return t.value=this.match(85),this.next(),this.finishNode(t,"BooleanLiteralTypeAnnotation");case 53:if("-"===this.state.value){if(this.next(),this.match(135))return this.parseLiteralAtNode(-this.state.value,"NumberLiteralTypeAnnotation",t);if(this.match(136))return this.parseLiteralAtNode(-this.state.value,"BigIntLiteralTypeAnnotation",t);throw this.raise(lt.UnexpectedSubtractionOperand,this.state.startLoc)}return void this.unexpected();case 135:return this.parseLiteral(this.state.value,"NumberLiteralTypeAnnotation");case 136:return this.parseLiteral(this.state.value,"BigIntLiteralTypeAnnotation");case 88:return this.next(),this.finishNode(t,"VoidTypeAnnotation");case 84:return this.next(),this.finishNode(t,"NullLiteralTypeAnnotation");case 78:return this.next(),this.finishNode(t,"ThisTypeAnnotation");case 55:return this.next(),this.finishNode(t,"ExistsTypeAnnotation");case 87:return this.flowParseTypeofType();default:if(H(this.state.type)){const e=J(this.state.type);return this.next(),super.createIdentifier(t,e)}if(q(this.state.type))return this.isContextual(129)?this.flowParseInterfaceType():this.flowIdentToTypeAnnotation(e,t,this.parseIdentifier())}this.unexpected()}flowParsePostfixType(){const e=this.state.startLoc;let t=this.flowParsePrimaryType(),r=!1;for(;(this.match(0)||this.match(18))&&!this.canInsertSemicolon();){const n=this.startNodeAt(e),i=this.eat(18);r=r||i,this.expect(0),!i&&this.match(3)?(n.elementType=t,this.next(),t=this.finishNode(n,"ArrayTypeAnnotation")):(n.objectType=t,n.indexType=this.flowParseType(),this.expect(3),r?(n.optional=i,t=this.finishNode(n,"OptionalIndexedAccessType")):t=this.finishNode(n,"IndexedAccessType"))}return t}flowParsePrefixType(){const e=this.startNode();return this.eat(17)?(e.typeAnnotation=this.flowParsePrefixType(),this.finishNode(e,"NullableTypeAnnotation")):this.flowParsePostfixType()}flowParseAnonFunctionWithoutParens(){const e=this.flowParsePrefixType();if(!this.state.noAnonFunctionType&&this.eat(19)){const t=this.startNodeAt(e.loc.start);return t.params=[this.reinterpretTypeAsFunctionTypeParam(e)],t.rest=null,t.this=null,t.returnType=this.flowParseType(),t.typeParameters=null,this.finishNode(t,"FunctionTypeAnnotation")}return e}flowParseIntersectionType(){const e=this.startNode();this.eat(45);const t=this.flowParseAnonFunctionWithoutParens();for(e.types=[t];this.eat(45);)e.types.push(this.flowParseAnonFunctionWithoutParens());return 1===e.types.length?t:this.finishNode(e,"IntersectionTypeAnnotation")}flowParseUnionType(){const e=this.startNode();this.eat(43);const t=this.flowParseIntersectionType();for(e.types=[t];this.eat(43);)e.types.push(this.flowParseIntersectionType());return 1===e.types.length?t:this.finishNode(e,"UnionTypeAnnotation")}flowParseType(){const e=this.state.inType;this.state.inType=!0;const t=this.flowParseUnionType();return this.state.inType=e,t}flowParseTypeOrImplicitInstantiation(){if(132===this.state.type&&"_"===this.state.value){const e=this.state.startLoc,t=this.parseIdentifier();return this.flowParseGenericType(e,t)}return this.flowParseType()}flowParseTypeAnnotation(){const e=this.startNode();return e.typeAnnotation=this.flowParseTypeInitialiser(),this.finishNode(e,"TypeAnnotation")}flowParseTypeAnnotatableIdentifier(e){const t=e?this.parseIdentifier():this.flowParseRestrictedIdentifier();return this.match(14)&&(t.typeAnnotation=this.flowParseTypeAnnotation(),this.resetEndLocation(t)),t}typeCastToParameter(e){return e.expression.typeAnnotation=e.typeAnnotation,this.resetEndLocation(e.expression,e.typeAnnotation.loc.end),e.expression}flowParseVariance(){let e=null;return this.match(53)?(e=this.startNode(),"+"===this.state.value?e.kind="plus":e.kind="minus",this.next(),this.finishNode(e,"Variance")):e}parseFunctionBody(e,t,r=!1){t?this.forwardNoArrowParamsConversionAt(e,(()=>super.parseFunctionBody(e,!0,r))):super.parseFunctionBody(e,!1,r)}parseFunctionBodyAndFinish(e,t,r=!1){if(this.match(14)){const t=this.startNode();[t.typeAnnotation,e.predicate]=this.flowParseTypeAndPredicateInitialiser(),e.returnType=t.typeAnnotation?this.finishNode(t,"TypeAnnotation"):null}return super.parseFunctionBodyAndFinish(e,t,r)}parseStatementLike(e){if(this.state.strict&&this.isContextual(129)){if(K(this.lookahead().type)){const e=this.startNode();return this.next(),this.flowParseInterface(e)}}else if(this.isContextual(126)){const e=this.startNode();return this.next(),this.flowParseEnumDeclaration(e)}const t=super.parseStatementLike(e);return void 0!==this.flowPragma||this.isValidDirective(t)||(this.flowPragma=null),t}parseExpressionStatement(e,t,r){if("Identifier"===t.type)if("declare"===t.name){if(this.match(80)||q(this.state.type)||this.match(68)||this.match(74)||this.match(82))return this.flowParseDeclare(e)}else if(q(this.state.type)){if("interface"===t.name)return this.flowParseInterface(e);if("type"===t.name)return this.flowParseTypeAlias(e);if("opaque"===t.name)return this.flowParseOpaqueType(e,!1)}return super.parseExpressionStatement(e,t,r)}shouldParseExportDeclaration(){const{type:e}=this.state;return 126===e||G(e)?!this.state.containsEsc:super.shouldParseExportDeclaration()}isExportDefaultSpecifier(){const{type:e}=this.state;return 126===e||G(e)?this.state.containsEsc:super.isExportDefaultSpecifier()}parseExportDefaultExpression(){if(this.isContextual(126)){const e=this.startNode();return this.next(),this.flowParseEnumDeclaration(e)}return super.parseExportDefaultExpression()}parseConditional(e,t,r){if(!this.match(17))return e;if(this.state.maybeInArrowParameters){const t=this.lookaheadCharCode();if(44===t||61===t||58===t||41===t)return this.setOptionalParametersError(r),e}this.expect(17);const n=this.state.clone(),i=this.state.noArrowAt,s=this.startNodeAt(t);let{consequent:a,failed:o}=this.tryParseConditionalConsequent(),[l,c]=this.getArrowLikeExpressions(a);if(o||c.length>0){const e=[...i];if(c.length>0){this.state=n,this.state.noArrowAt=e;for(let t=0;t<c.length;t++)e.push(c[t].start);({consequent:a,failed:o}=this.tryParseConditionalConsequent()),[l,c]=this.getArrowLikeExpressions(a)}o&&l.length>1&&this.raise(lt.AmbiguousConditionalArrow,n.startLoc),o&&1===l.length&&(this.state=n,e.push(l[0].start),this.state.noArrowAt=e,({consequent:a,failed:o}=this.tryParseConditionalConsequent()))}return this.getArrowLikeExpressions(a,!0),this.state.noArrowAt=i,this.expect(14),s.test=e,s.consequent=a,s.alternate=this.forwardNoArrowParamsConversionAt(s,(()=>this.parseMaybeAssign(void 0,void 0))),this.finishNode(s,"ConditionalExpression")}tryParseConditionalConsequent(){this.state.noArrowParamsConversionAt.push(this.state.start);const e=this.parseMaybeAssignAllowIn(),t=!this.match(14);return this.state.noArrowParamsConversionAt.pop(),{consequent:e,failed:t}}getArrowLikeExpressions(e,t){const r=[e],n=[];for(;0!==r.length;){const e=r.pop();"ArrowFunctionExpression"===e.type&&"BlockStatement"!==e.body.type?(e.typeParameters||!e.returnType?this.finishArrowValidation(e):n.push(e),r.push(e.body)):"ConditionalExpression"===e.type&&(r.push(e.consequent),r.push(e.alternate))}return t?(n.forEach((e=>this.finishArrowValidation(e))),[n,[]]):function(e,t){const r=[],n=[];for(let i=0;i<e.length;i++)(t(e[i],i,e)?r:n).push(e[i]);return[r,n]}(n,(e=>e.params.every((e=>this.isAssignable(e,!0)))))}finishArrowValidation(e){var t;this.toAssignableList(e.params,null==(t=e.extra)?void 0:t.trailingCommaLoc,!1),this.scope.enter(6),super.checkParams(e,!1,!0),this.scope.exit()}forwardNoArrowParamsConversionAt(e,t){let r;return this.state.noArrowParamsConversionAt.includes(this.offsetToSourcePos(e.start))?(this.state.noArrowParamsConversionAt.push(this.state.start),r=t(),this.state.noArrowParamsConversionAt.pop()):r=t(),r}parseParenItem(e,t){const r=super.parseParenItem(e,t);if(this.eat(17)&&(r.optional=!0,this.resetEndLocation(e)),this.match(14)){const e=this.startNodeAt(t);return e.expression=r,e.typeAnnotation=this.flowParseTypeAnnotation(),this.finishNode(e,"TypeCastExpression")}return r}assertModuleNodeAllowed(e){"ImportDeclaration"===e.type&&("type"===e.importKind||"typeof"===e.importKind)||"ExportNamedDeclaration"===e.type&&"type"===e.exportKind||"ExportAllDeclaration"===e.type&&"type"===e.exportKind||super.assertModuleNodeAllowed(e)}parseExportDeclaration(e){if(this.isContextual(130)){e.exportKind="type";const t=this.startNode();return this.next(),this.match(5)?(e.specifiers=this.parseExportSpecifiers(!0),super.parseExportFrom(e),null):this.flowParseTypeAlias(t)}if(this.isContextual(131)){e.exportKind="type";const t=this.startNode();return this.next(),this.flowParseOpaqueType(t,!1)}if(this.isContextual(129)){e.exportKind="type";const t=this.startNode();return this.next(),this.flowParseInterface(t)}if(this.isContextual(126)){e.exportKind="value";const t=this.startNode();return this.next(),this.flowParseEnumDeclaration(t)}return super.parseExportDeclaration(e)}eatExportStar(e){return!!super.eatExportStar(e)||!(!this.isContextual(130)||55!==this.lookahead().type)&&(e.exportKind="type",this.next(),this.next(),!0)}maybeParseExportNamespaceSpecifier(e){const{startLoc:t}=this.state,r=super.maybeParseExportNamespaceSpecifier(e);return r&&"type"===e.exportKind&&this.unexpected(t),r}parseClassId(e,t,r){super.parseClassId(e,t,r),this.match(47)&&(e.typeParameters=this.flowParseTypeParameterDeclaration())}parseClassMember(e,t,r){const{startLoc:n}=this.state;if(this.isContextual(125)){if(super.parseClassMemberFromModifier(e,t))return;t.declare=!0}super.parseClassMember(e,t,r),t.declare&&("ClassProperty"!==t.type&&"ClassPrivateProperty"!==t.type&&"PropertyDefinition"!==t.type?this.raise(lt.DeclareClassElement,n):t.value&&this.raise(lt.DeclareClassFieldInitializer,t.value))}isIterator(e){return"iterator"===e||"asyncIterator"===e}readIterator(){const e=super.readWord1(),t="@@"+e;this.isIterator(e)&&this.state.inType||this.raise(b.InvalidIdentifier,this.state.curPosition(),{identifierName:t}),this.finishToken(132,t)}getTokenFromCode(e){const t=this.input.charCodeAt(this.state.pos+1);123===e&&124===t?this.finishOp(6,2):!this.state.inType||62!==e&&60!==e?this.state.inType&&63===e?46===t?this.finishOp(18,2):this.finishOp(17,1):!function(e,t,r){return 64===e&&64===t&&se(r)}(e,t,this.input.charCodeAt(this.state.pos+2))?super.getTokenFromCode(e):(this.state.pos+=2,this.readIterator()):this.finishOp(62===e?48:47,1)}isAssignable(e,t){return"TypeCastExpression"===e.type?this.isAssignable(e.expression,t):super.isAssignable(e,t)}toAssignable(e,t=!1){t||"AssignmentExpression"!==e.type||"TypeCastExpression"!==e.left.type||(e.left=this.typeCastToParameter(e.left)),super.toAssignable(e,t)}toAssignableList(e,t,r){for(let t=0;t<e.length;t++){const r=e[t];"TypeCastExpression"===(null==r?void 0:r.type)&&(e[t]=this.typeCastToParameter(r))}super.toAssignableList(e,t,r)}toReferencedList(e,t){for(let n=0;n<e.length;n++){var r;const i=e[n];!i||"TypeCastExpression"!==i.type||null!=(r=i.extra)&&r.parenthesized||!(e.length>1)&&t||this.raise(lt.TypeCastInPattern,i.typeAnnotation)}return e}parseArrayLike(e,t,r,n){const i=super.parseArrayLike(e,t,r,n);return t&&!this.state.maybeInArrowParameters&&this.toReferencedList(i.elements),i}isValidLVal(e,t,r){return"TypeCastExpression"===e||super.isValidLVal(e,t,r)}parseClassProperty(e){return this.match(14)&&(e.typeAnnotation=this.flowParseTypeAnnotation()),super.parseClassProperty(e)}parseClassPrivateProperty(e){return this.match(14)&&(e.typeAnnotation=this.flowParseTypeAnnotation()),super.parseClassPrivateProperty(e)}isClassMethod(){return this.match(47)||super.isClassMethod()}isClassProperty(){return this.match(14)||super.isClassProperty()}isNonstaticConstructor(e){return!this.match(14)&&super.isNonstaticConstructor(e)}pushClassMethod(e,t,r,n,i,s){if(t.variance&&this.unexpected(t.variance.loc.start),delete t.variance,this.match(47)&&(t.typeParameters=this.flowParseTypeParameterDeclaration()),super.pushClassMethod(e,t,r,n,i,s),t.params&&i){const e=t.params;e.length>0&&this.isThisParam(e[0])&&this.raise(lt.ThisParamBannedInConstructor,t)}else if("MethodDefinition"===t.type&&i&&t.value.params){const e=t.value.params;e.length>0&&this.isThisParam(e[0])&&this.raise(lt.ThisParamBannedInConstructor,t)}}pushClassPrivateMethod(e,t,r,n){t.variance&&this.unexpected(t.variance.loc.start),delete t.variance,this.match(47)&&(t.typeParameters=this.flowParseTypeParameterDeclaration()),super.pushClassPrivateMethod(e,t,r,n)}parseClassSuper(e){if(super.parseClassSuper(e),e.superClass&&(this.match(47)||this.match(51))&&(e.superTypeParameters=this.flowParseTypeParameterInstantiationInExpression()),this.isContextual(113)){this.next();const t=e.implements=[];do{const e=this.startNode();e.id=this.flowParseRestrictedIdentifier(!0),this.match(47)?e.typeParameters=this.flowParseTypeParameterInstantiation():e.typeParameters=null,t.push(this.finishNode(e,"ClassImplements"))}while(this.eat(12))}}checkGetterSetterParams(e){super.checkGetterSetterParams(e);const t=this.getObjectOrClassMethodParams(e);if(t.length>0){const r=t[0];this.isThisParam(r)&&"get"===e.kind?this.raise(lt.GetterMayNotHaveThisParam,r):this.isThisParam(r)&&this.raise(lt.SetterMayNotHaveThisParam,r)}}parsePropertyNamePrefixOperator(e){e.variance=this.flowParseVariance()}parseObjPropValue(e,t,r,n,i,s,a){let o;e.variance&&this.unexpected(e.variance.loc.start),delete e.variance,this.match(47)&&!s&&(o=this.flowParseTypeParameterDeclaration(),this.match(10)||this.unexpected());const l=super.parseObjPropValue(e,t,r,n,i,s,a);return o&&((l.value||l).typeParameters=o),l}parseFunctionParamType(e){return this.eat(17)&&("Identifier"!==e.type&&this.raise(lt.PatternIsOptional,e),this.isThisParam(e)&&this.raise(lt.ThisParamMayNotBeOptional,e),e.optional=!0),this.match(14)?e.typeAnnotation=this.flowParseTypeAnnotation():this.isThisParam(e)&&this.raise(lt.ThisParamAnnotationRequired,e),this.match(29)&&this.isThisParam(e)&&this.raise(lt.ThisParamNoDefault,e),this.resetEndLocation(e),e}parseMaybeDefault(e,t){const r=super.parseMaybeDefault(e,t);return"AssignmentPattern"===r.type&&r.typeAnnotation&&r.right.start<r.typeAnnotation.start&&this.raise(lt.TypeBeforeInitializer,r.typeAnnotation),r}checkImportReflection(e){super.checkImportReflection(e),e.module&&"value"!==e.importKind&&this.raise(lt.ImportReflectionHasImportType,e.specifiers[0].loc.start)}parseImportSpecifierLocal(e,t,r){t.local=ct(e)?this.flowParseRestrictedIdentifier(!0,!0):this.parseIdentifier(),e.specifiers.push(this.finishImportSpecifier(t,r))}isPotentialImportPhase(e){if(super.isPotentialImportPhase(e))return!0;if(this.isContextual(130)){if(!e)return!0;const t=this.lookaheadCharCode();return 123===t||42===t}return!e&&this.isContextual(87)}applyImportPhase(e,t,r,n){if(super.applyImportPhase(e,t,r,n),t){if(!r&&this.match(65))return;e.exportKind="type"===r?r:"value"}else"type"===r&&this.match(55)&&this.unexpected(),e.importKind="type"===r||"typeof"===r?r:"value"}parseImportSpecifier(e,t,r,n,i){const s=e.imported;let a=null;"Identifier"===s.type&&("type"===s.name?a="type":"typeof"===s.name&&(a="typeof"));let o=!1;if(this.isContextual(93)&&!this.isLookaheadContextual("as")){const t=this.parseIdentifier(!0);null===a||K(this.state.type)?(e.imported=s,e.importKind=null,e.local=this.parseIdentifier()):(e.imported=t,e.importKind=a,e.local=it(t))}else{if(null!==a&&K(this.state.type))e.imported=this.parseIdentifier(!0),e.importKind=a;else{if(t)throw this.raise(b.ImportBindingIsString,e,{importName:s.value});e.imported=s,e.importKind=null}this.eatContextual(93)?e.local=this.parseIdentifier():(o=!0,e.local=it(e.imported))}const l=ct(e);return r&&l&&this.raise(lt.ImportTypeShorthandOnlyInPureImport,e),(r||l)&&this.checkReservedType(e.local.name,e.local.loc.start,!0),!o||r||l||this.checkReservedWord(e.local.name,e.loc.start,!0,!0),this.finishImportSpecifier(e,"ImportSpecifier")}parseBindingAtom(){return 78===this.state.type?this.parseIdentifier(!0):super.parseBindingAtom()}parseFunctionParams(e,t){const r=e.kind;"get"!==r&&"set"!==r&&this.match(47)&&(e.typeParameters=this.flowParseTypeParameterDeclaration()),super.parseFunctionParams(e,t)}parseVarId(e,t){super.parseVarId(e,t),this.match(14)&&(e.id.typeAnnotation=this.flowParseTypeAnnotation(),this.resetEndLocation(e.id))}parseAsyncArrowFromCallExpression(e,t){if(this.match(14)){const t=this.state.noAnonFunctionType;this.state.noAnonFunctionType=!0,e.returnType=this.flowParseTypeAnnotation(),this.state.noAnonFunctionType=t}return super.parseAsyncArrowFromCallExpression(e,t)}shouldParseAsyncArrow(){return this.match(14)||super.shouldParseAsyncArrow()}parseMaybeAssign(e,t){var r;let n,i=null;if(this.hasPlugin("jsx")&&(this.match(143)||this.match(47))){if(i=this.state.clone(),n=this.tryParse((()=>super.parseMaybeAssign(e,t)),i),!n.error)return n.node;const{context:r}=this.state,s=r[r.length-1];s!==S.j_oTag&&s!==S.j_expr||r.pop()}if(null!=(r=n)&&r.error||this.match(47)){var s,a;let r;i=i||this.state.clone();const o=this.tryParse((n=>{var i;r=this.flowParseTypeParameterDeclaration();const s=this.forwardNoArrowParamsConversionAt(r,(()=>{const n=super.parseMaybeAssign(e,t);return this.resetStartLocationFromNode(n,r),n}));null!=(i=s.extra)&&i.parenthesized&&n();const a=this.maybeUnwrapTypeCastExpression(s);return"ArrowFunctionExpression"!==a.type&&n(),a.typeParameters=r,this.resetStartLocationFromNode(a,r),s}),i);let l=null;if(o.node&&"ArrowFunctionExpression"===this.maybeUnwrapTypeCastExpression(o.node).type){if(!o.error&&!o.aborted)return o.node.async&&this.raise(lt.UnexpectedTypeParameterBeforeAsyncArrowFunction,r),o.node;l=o.node}if(null!=(s=n)&&s.node)return this.state=n.failState,n.node;if(l)return this.state=o.failState,l;if(null!=(a=n)&&a.thrown)throw n.error;if(o.thrown)throw o.error;throw this.raise(lt.UnexpectedTokenAfterTypeParameter,r)}return super.parseMaybeAssign(e,t)}parseArrow(e){if(this.match(14)){const t=this.tryParse((()=>{const t=this.state.noAnonFunctionType;this.state.noAnonFunctionType=!0;const r=this.startNode();return[r.typeAnnotation,e.predicate]=this.flowParseTypeAndPredicateInitialiser(),this.state.noAnonFunctionType=t,this.canInsertSemicolon()&&this.unexpected(),this.match(19)||this.unexpected(),r}));if(t.thrown)return null;t.error&&(this.state=t.failState),e.returnType=t.node.typeAnnotation?this.finishNode(t.node,"TypeAnnotation"):null}return super.parseArrow(e)}shouldParseArrow(e){return this.match(14)||super.shouldParseArrow(e)}setArrowFunctionParameters(e,t){this.state.noArrowParamsConversionAt.includes(this.offsetToSourcePos(e.start))?e.params=t:super.setArrowFunctionParameters(e,t)}checkParams(e,t,r,n=!0){if(!r||!this.state.noArrowParamsConversionAt.includes(this.offsetToSourcePos(e.start))){for(let t=0;t<e.params.length;t++)this.isThisParam(e.params[t])&&t>0&&this.raise(lt.ThisParamMustBeFirst,e.params[t]);super.checkParams(e,t,r,n)}}parseParenAndDistinguishExpression(e){return super.parseParenAndDistinguishExpression(e&&!this.state.noArrowAt.includes(this.sourceToOffsetPos(this.state.start)))}parseSubscripts(e,t,r){if("Identifier"===e.type&&"async"===e.name&&this.state.noArrowAt.includes(t.index)){this.next();const r=this.startNodeAt(t);r.callee=e,r.arguments=super.parseCallExpressionArguments(11),e=this.finishNode(r,"CallExpression")}else if("Identifier"===e.type&&"async"===e.name&&this.match(47)){const n=this.state.clone(),i=this.tryParse((e=>this.parseAsyncArrowWithTypeParameters(t)||e()),n);if(!i.error&&!i.aborted)return i.node;const s=this.tryParse((()=>super.parseSubscripts(e,t,r)),n);if(s.node&&!s.error)return s.node;if(i.node)return this.state=i.failState,i.node;if(s.node)return this.state=s.failState,s.node;throw i.error||s.error}return super.parseSubscripts(e,t,r)}parseSubscript(e,t,r,n){if(this.match(18)&&this.isLookaheadToken_lt()){if(n.optionalChainMember=!0,r)return n.stop=!0,e;this.next();const i=this.startNodeAt(t);return i.callee=e,i.typeArguments=this.flowParseTypeParameterInstantiationInExpression(),this.expect(10),i.arguments=this.parseCallExpressionArguments(11),i.optional=!0,this.finishCallExpression(i,!0)}if(!r&&this.shouldParseTypes()&&(this.match(47)||this.match(51))){const r=this.startNodeAt(t);r.callee=e;const i=this.tryParse((()=>(r.typeArguments=this.flowParseTypeParameterInstantiationCallOrNew(),this.expect(10),r.arguments=super.parseCallExpressionArguments(11),n.optionalChainMember&&(r.optional=!1),this.finishCallExpression(r,n.optionalChainMember))));if(i.node)return i.error&&(this.state=i.failState),i.node}return super.parseSubscript(e,t,r,n)}parseNewCallee(e){super.parseNewCallee(e);let t=null;this.shouldParseTypes()&&this.match(47)&&(t=this.tryParse((()=>this.flowParseTypeParameterInstantiationCallOrNew())).node),e.typeArguments=t}parseAsyncArrowWithTypeParameters(e){const t=this.startNodeAt(e);if(this.parseFunctionParams(t,!1),this.parseArrow(t))return super.parseArrowExpression(t,void 0,!0)}readToken_mult_modulo(e){const t=this.input.charCodeAt(this.state.pos+1);if(42===e&&47===t&&this.state.hasFlowComment)return this.state.hasFlowComment=!1,this.state.pos+=2,void this.nextToken();super.readToken_mult_modulo(e)}readToken_pipe_amp(e){const t=this.input.charCodeAt(this.state.pos+1);124!==e||125!==t?super.readToken_pipe_amp(e):this.finishOp(9,2)}parseTopLevel(e,t){const r=super.parseTopLevel(e,t);return this.state.hasFlowComment&&this.raise(lt.UnterminatedFlowComment,this.state.curPosition()),r}skipBlockComment(){if(!this.hasPlugin("flowComments")||!this.skipFlowComment())return super.skipBlockComment(this.state.hasFlowComment?"*-/":"*/");{if(this.state.hasFlowComment)throw this.raise(lt.NestedFlowComment,this.state.startLoc);this.hasFlowCommentCompletion();const e=this.skipFlowComment();e&&(this.state.pos+=e,this.state.hasFlowComment=!0)}}skipFlowComment(){const{pos:e}=this.state;let t=2;for(;[32,9].includes(this.input.charCodeAt(e+t));)t++;const r=this.input.charCodeAt(t+e),n=this.input.charCodeAt(t+e+1);return 58===r&&58===n?t+2:"flow-include"===this.input.slice(t+e,t+e+12)?t+12:58===r&&58!==n&&t}hasFlowCommentCompletion(){if(-1===this.input.indexOf("*/",this.state.pos))throw this.raise(b.UnterminatedComment,this.state.curPosition())}flowEnumErrorBooleanMemberNotInitialized(e,{enumName:t,memberName:r}){this.raise(lt.EnumBooleanMemberNotInitialized,e,{memberName:r,enumName:t})}flowEnumErrorInvalidMemberInitializer(e,t){return this.raise(t.explicitType?"symbol"===t.explicitType?lt.EnumInvalidMemberInitializerSymbolType:lt.EnumInvalidMemberInitializerPrimaryType:lt.EnumInvalidMemberInitializerUnknownType,e,t)}flowEnumErrorNumberMemberNotInitialized(e,t){this.raise(lt.EnumNumberMemberNotInitialized,e,t)}flowEnumErrorStringMemberInconsistentlyInitialized(e,t){this.raise(lt.EnumStringMemberInconsistentlyInitialized,e,t)}flowEnumMemberInit(){const e=this.state.startLoc,t=()=>this.match(12)||this.match(8);switch(this.state.type){case 135:{const r=this.parseNumericLiteral(this.state.value);return t()?{type:"number",loc:r.loc.start,value:r}:{type:"invalid",loc:e}}case 134:{const r=this.parseStringLiteral(this.state.value);return t()?{type:"string",loc:r.loc.start,value:r}:{type:"invalid",loc:e}}case 85:case 86:{const r=this.parseBooleanLiteral(this.match(85));return t()?{type:"boolean",loc:r.loc.start,value:r}:{type:"invalid",loc:e}}default:return{type:"invalid",loc:e}}}flowEnumMemberRaw(){const e=this.state.startLoc;return{id:this.parseIdentifier(!0),init:this.eat(29)?this.flowEnumMemberInit():{type:"none",loc:e}}}flowEnumCheckExplicitTypeMismatch(e,t,r){const{explicitType:n}=t;null!==n&&n!==r&&this.flowEnumErrorInvalidMemberInitializer(e,t)}flowEnumMembers({enumName:e,explicitType:t}){const r=new Set,n={booleanMembers:[],numberMembers:[],stringMembers:[],defaultedMembers:[]};let i=!1;for(;!this.match(8);){if(this.eat(21)){i=!0;break}const s=this.startNode(),{id:a,init:o}=this.flowEnumMemberRaw(),l=a.name;if(""===l)continue;/^[a-z]/.test(l)&&this.raise(lt.EnumInvalidMemberName,a,{memberName:l,suggestion:l[0].toUpperCase()+l.slice(1),enumName:e}),r.has(l)&&this.raise(lt.EnumDuplicateMemberName,a,{memberName:l,enumName:e}),r.add(l);const c={enumName:e,explicitType:t,memberName:l};switch(s.id=a,o.type){case"boolean":this.flowEnumCheckExplicitTypeMismatch(o.loc,c,"boolean"),s.init=o.value,n.booleanMembers.push(this.finishNode(s,"EnumBooleanMember"));break;case"number":this.flowEnumCheckExplicitTypeMismatch(o.loc,c,"number"),s.init=o.value,n.numberMembers.push(this.finishNode(s,"EnumNumberMember"));break;case"string":this.flowEnumCheckExplicitTypeMismatch(o.loc,c,"string"),s.init=o.value,n.stringMembers.push(this.finishNode(s,"EnumStringMember"));break;case"invalid":throw this.flowEnumErrorInvalidMemberInitializer(o.loc,c);case"none":switch(t){case"boolean":this.flowEnumErrorBooleanMemberNotInitialized(o.loc,c);break;case"number":this.flowEnumErrorNumberMemberNotInitialized(o.loc,c);break;default:n.defaultedMembers.push(this.finishNode(s,"EnumDefaultedMember"))}}this.match(8)||this.expect(12)}return{members:n,hasUnknownMembers:i}}flowEnumStringMembers(e,t,{enumName:r}){if(0===e.length)return t;if(0===t.length)return e;if(t.length>e.length){for(const t of e)this.flowEnumErrorStringMemberInconsistentlyInitialized(t,{enumName:r});return t}for(const e of t)this.flowEnumErrorStringMemberInconsistentlyInitialized(e,{enumName:r});return e}flowEnumParseExplicitType({enumName:e}){if(!this.eatContextual(102))return null;if(!q(this.state.type))throw this.raise(lt.EnumInvalidExplicitTypeUnknownSupplied,this.state.startLoc,{enumName:e});const{value:t}=this.state;return this.next(),"boolean"!==t&&"number"!==t&&"string"!==t&&"symbol"!==t&&this.raise(lt.EnumInvalidExplicitType,this.state.startLoc,{enumName:e,invalidEnumType:t}),t}flowEnumBody(e,t){const r=t.name,n=t.loc.start,i=this.flowEnumParseExplicitType({enumName:r});this.expect(5);const{members:s,hasUnknownMembers:a}=this.flowEnumMembers({enumName:r,explicitType:i});switch(e.hasUnknownMembers=a,i){case"boolean":return e.explicitType=!0,e.members=s.booleanMembers,this.expect(8),this.finishNode(e,"EnumBooleanBody");case"number":return e.explicitType=!0,e.members=s.numberMembers,this.expect(8),this.finishNode(e,"EnumNumberBody");case"string":return e.explicitType=!0,e.members=this.flowEnumStringMembers(s.stringMembers,s.defaultedMembers,{enumName:r}),this.expect(8),this.finishNode(e,"EnumStringBody");case"symbol":return e.members=s.defaultedMembers,this.expect(8),this.finishNode(e,"EnumSymbolBody");default:{const t=()=>(e.members=[],this.expect(8),this.finishNode(e,"EnumStringBody"));e.explicitType=!1;const i=s.booleanMembers.length,a=s.numberMembers.length,o=s.stringMembers.length,l=s.defaultedMembers.length;if(i||a||o||l){if(i||a){if(!a&&!o&&i>=l){for(const e of s.defaultedMembers)this.flowEnumErrorBooleanMemberNotInitialized(e.loc.start,{enumName:r,memberName:e.id.name});return e.members=s.booleanMembers,this.expect(8),this.finishNode(e,"EnumBooleanBody")}if(!i&&!o&&a>=l){for(const e of s.defaultedMembers)this.flowEnumErrorNumberMemberNotInitialized(e.loc.start,{enumName:r,memberName:e.id.name});return e.members=s.numberMembers,this.expect(8),this.finishNode(e,"EnumNumberBody")}return this.raise(lt.EnumInconsistentMemberValues,n,{enumName:r}),t()}return e.members=this.flowEnumStringMembers(s.stringMembers,s.defaultedMembers,{enumName:r}),this.expect(8),this.finishNode(e,"EnumStringBody")}return t()}}}flowParseEnumDeclaration(e){const t=this.parseIdentifier();return e.id=t,e.body=this.flowEnumBody(this.startNode(),t),this.finishNode(e,"EnumDeclaration")}jsxParseOpeningElementAfterName(e){return this.shouldParseTypes()&&(this.match(47)||this.match(51))&&(e.typeArguments=this.flowParseTypeParameterInstantiationInExpression()),super.jsxParseOpeningElementAfterName(e)}isLookaheadToken_lt(){const e=this.nextTokenStart();if(60===this.input.charCodeAt(e)){const t=this.input.charCodeAt(e+1);return 60!==t&&61!==t}return!1}reScan_lt_gt(){const{type:e}=this.state;47===e?(this.state.pos-=1,this.readToken_lt()):48===e&&(this.state.pos-=1,this.readToken_gt())}reScan_lt(){const{type:e}=this.state;return 51===e?(this.state.pos-=2,this.finishOp(47,1),47):e}maybeUnwrapTypeCastExpression(e){return"TypeCastExpression"===e.type?e.expression:e}},typescript:e=>class extends e{constructor(...e){super(...e),this.tsParseInOutModifiers=this.tsParseModifiers.bind(this,{allowedModifiers:["in","out"],disallowedModifiers:["const","public","private","protected","readonly","declare","abstract","override"],errorTemplate:Tt.InvalidModifierOnTypeParameter}),this.tsParseConstModifier=this.tsParseModifiers.bind(this,{allowedModifiers:["const"],disallowedModifiers:["in","out"],errorTemplate:Tt.InvalidModifierOnTypeParameterPositions}),this.tsParseInOutConstModifiers=this.tsParseModifiers.bind(this,{allowedModifiers:["in","out","const"],disallowedModifiers:["public","private","protected","readonly","declare","abstract","override"],errorTemplate:Tt.InvalidModifierOnTypeParameter})}getScopeHandler(){return bt}tsIsIdentifier(){return q(this.state.type)}tsTokenCanFollowModifier(){return this.match(0)||this.match(5)||this.match(55)||this.match(21)||this.match(139)||this.isLiteralPropertyName()}tsNextTokenOnSameLineAndCanFollowModifier(){return this.next(),!this.hasPrecedingLineBreak()&&this.tsTokenCanFollowModifier()}tsNextTokenCanFollowModifier(){return this.match(106)?(this.next(),this.tsTokenCanFollowModifier()):this.tsNextTokenOnSameLineAndCanFollowModifier()}tsParseModifier(e,t){if(!q(this.state.type)&&58!==this.state.type&&75!==this.state.type)return;const r=this.state.value;if(e.includes(r)){if(t&&this.tsIsStartOfStaticBlocks())return;if(this.tsTryParse(this.tsNextTokenCanFollowModifier.bind(this)))return r}}tsParseModifiers({allowedModifiers:e,disallowedModifiers:t,stopOnStartOfClassStaticBlock:r,errorTemplate:n=Tt.InvalidModifierOnTypeMember},i){const s=(e,t,r,n)=>{t===r&&i[n]&&this.raise(Tt.InvalidModifiersOrder,e,{orderedModifiers:[r,n]})},a=(e,t,r,n)=>{(i[r]&&t===n||i[n]&&t===r)&&this.raise(Tt.IncompatibleModifiers,e,{modifiers:[r,n]})};for(;;){const{startLoc:o}=this.state,l=this.tsParseModifier(e.concat(null!=t?t:[]),r);if(!l)break;St(l)?i.accessibility?this.raise(Tt.DuplicateAccessibilityModifier,o,{modifier:l}):(s(o,l,l,"override"),s(o,l,l,"static"),s(o,l,l,"readonly"),i.accessibility=l):Et(l)?(i[l]&&this.raise(Tt.DuplicateModifier,o,{modifier:l}),i[l]=!0,s(o,l,"in","out")):(hasOwnProperty.call(i,l)?this.raise(Tt.DuplicateModifier,o,{modifier:l}):(s(o,l,"static","readonly"),s(o,l,"static","override"),s(o,l,"override","readonly"),s(o,l,"abstract","override"),a(o,l,"declare","override"),a(o,l,"static","abstract")),i[l]=!0),null!=t&&t.includes(l)&&this.raise(n,o,{modifier:l})}}tsIsListTerminator(e){switch(e){case"EnumMembers":case"TypeMembers":return this.match(8);case"HeritageClauseElement":return this.match(5);case"TupleElementTypes":return this.match(3);case"TypeParametersOrArguments":return this.match(48)}}tsParseList(e,t){const r=[];for(;!this.tsIsListTerminator(e);)r.push(t());return r}tsParseDelimitedList(e,t,r){return function(e){if(null==e)throw new Error(`Unexpected ${e} value.`);return e}(this.tsParseDelimitedListWorker(e,t,!0,r))}tsParseDelimitedListWorker(e,t,r,n){const i=[];let s=-1;for(;!this.tsIsListTerminator(e);){s=-1;const n=t();if(null==n)return;if(i.push(n),!this.eat(12)){if(this.tsIsListTerminator(e))break;return void(r&&this.expect(12))}s=this.state.lastTokStartLoc.index}return n&&(n.value=s),i}tsParseBracketedList(e,t,r,n,i){n||(r?this.expect(0):this.expect(47));const s=this.tsParseDelimitedList(e,t,i);return r?this.expect(3):this.expect(48),s}tsParseImportType(){const e=this.startNode();return this.expect(83),this.expect(10),this.match(134)?e.argument=this.parseStringLiteral(this.state.value):(this.raise(Tt.UnsupportedImportTypeArgument,this.state.startLoc),e.argument=super.parseExprAtom()),this.eat(12)&&!this.match(11)?(e.options=super.parseMaybeAssignAllowIn(),this.eat(12)):e.options=null,this.expect(11),this.eat(16)&&(e.qualifier=this.tsParseEntityName(3)),this.match(47)&&(e.typeParameters=this.tsParseTypeArguments()),this.finishNode(e,"TSImportType")}tsParseEntityName(e){let t;if(1&e&&this.match(78))if(2&e)t=this.parseIdentifier(!0);else{const e=this.startNode();this.next(),t=this.finishNode(e,"ThisExpression")}else t=this.parseIdentifier(!!(1&e));for(;this.eat(16);){const r=this.startNodeAtNode(t);r.left=t,r.right=this.parseIdentifier(!!(1&e)),t=this.finishNode(r,"TSQualifiedName")}return t}tsParseTypeReference(){const e=this.startNode();return e.typeName=this.tsParseEntityName(1),!this.hasPrecedingLineBreak()&&this.match(47)&&(e.typeParameters=this.tsParseTypeArguments()),this.finishNode(e,"TSTypeReference")}tsParseThisTypePredicate(e){this.next();const t=this.startNodeAtNode(e);return t.parameterName=e,t.typeAnnotation=this.tsParseTypeAnnotation(!1),t.asserts=!1,this.finishNode(t,"TSTypePredicate")}tsParseThisTypeNode(){const e=this.startNode();return this.next(),this.finishNode(e,"TSThisType")}tsParseTypeQuery(){const e=this.startNode();return this.expect(87),this.match(83)?e.exprName=this.tsParseImportType():e.exprName=this.tsParseEntityName(3),!this.hasPrecedingLineBreak()&&this.match(47)&&(e.typeParameters=this.tsParseTypeArguments()),this.finishNode(e,"TSTypeQuery")}tsParseTypeParameter(e){const t=this.startNode();return e(t),t.name=this.tsParseTypeParameterName(),t.constraint=this.tsEatThenParseType(81),t.default=this.tsEatThenParseType(29),this.finishNode(t,"TSTypeParameter")}tsTryParseTypeParameters(e){if(this.match(47))return this.tsParseTypeParameters(e)}tsParseTypeParameters(e){const t=this.startNode();this.match(47)||this.match(143)?this.next():this.unexpected();const r={value:-1};return t.params=this.tsParseBracketedList("TypeParametersOrArguments",this.tsParseTypeParameter.bind(this,e),!1,!0,r),0===t.params.length&&this.raise(Tt.EmptyTypeParameters,t),-1!==r.value&&this.addExtra(t,"trailingComma",r.value),this.finishNode(t,"TSTypeParameterDeclaration")}tsFillSignature(e,t){const r=19===e,n="typeAnnotation";t.typeParameters=this.tsTryParseTypeParameters(this.tsParseConstModifier),this.expect(10),t.parameters=this.tsParseBindingListForSignature(),(r||this.match(e))&&(t[n]=this.tsParseTypeOrTypePredicateAnnotation(e))}tsParseBindingListForSignature(){const e=super.parseBindingList(11,41,2);for(const t of e){const{type:e}=t;"AssignmentPattern"!==e&&"TSParameterProperty"!==e||this.raise(Tt.UnsupportedSignatureParameterKind,t,{type:e})}return e}tsParseTypeMemberSemicolon(){this.eat(12)||this.isLineTerminator()||this.expect(13)}tsParseSignatureMember(e,t){return this.tsFillSignature(14,t),this.tsParseTypeMemberSemicolon(),this.finishNode(t,e)}tsIsUnambiguouslyIndexSignature(){return this.next(),!!q(this.state.type)&&(this.next(),this.match(14))}tsTryParseIndexSignature(e){if(!this.match(0)||!this.tsLookAhead(this.tsIsUnambiguouslyIndexSignature.bind(this)))return;this.expect(0);const t=this.parseIdentifier();t.typeAnnotation=this.tsParseTypeAnnotation(),this.resetEndLocation(t),this.expect(3),e.parameters=[t];const r=this.tsTryParseTypeAnnotation();return r&&(e.typeAnnotation=r),this.tsParseTypeMemberSemicolon(),this.finishNode(e,"TSIndexSignature")}tsParsePropertyOrMethodSignature(e,t){this.eat(17)&&(e.optional=!0);const r=e;if(this.match(10)||this.match(47)){t&&this.raise(Tt.ReadonlyForMethodSignature,e);const n=r;n.kind&&this.match(47)&&this.raise(Tt.AccessorCannotHaveTypeParameters,this.state.curPosition()),this.tsFillSignature(14,n),this.tsParseTypeMemberSemicolon();const i="parameters",s="typeAnnotation";if("get"===n.kind)n[i].length>0&&(this.raise(b.BadGetterArity,this.state.curPosition()),this.isThisParam(n[i][0])&&this.raise(Tt.AccessorCannotDeclareThisParameter,this.state.curPosition()));else if("set"===n.kind){if(1!==n[i].length)this.raise(b.BadSetterArity,this.state.curPosition());else{const e=n[i][0];this.isThisParam(e)&&this.raise(Tt.AccessorCannotDeclareThisParameter,this.state.curPosition()),"Identifier"===e.type&&e.optional&&this.raise(Tt.SetAccessorCannotHaveOptionalParameter,this.state.curPosition()),"RestElement"===e.type&&this.raise(Tt.SetAccessorCannotHaveRestParameter,this.state.curPosition())}n[s]&&this.raise(Tt.SetAccessorCannotHaveReturnType,n[s])}else n.kind="method";return this.finishNode(n,"TSMethodSignature")}{const e=r;t&&(e.readonly=!0);const n=this.tsTryParseTypeAnnotation();return n&&(e.typeAnnotation=n),this.tsParseTypeMemberSemicolon(),this.finishNode(e,"TSPropertySignature")}}tsParseTypeMember(){const e=this.startNode();if(this.match(10)||this.match(47))return this.tsParseSignatureMember("TSCallSignatureDeclaration",e);if(this.match(77)){const t=this.startNode();return this.next(),this.match(10)||this.match(47)?this.tsParseSignatureMember("TSConstructSignatureDeclaration",e):(e.key=this.createIdentifier(t,"new"),this.tsParsePropertyOrMethodSignature(e,!1))}this.tsParseModifiers({allowedModifiers:["readonly"],disallowedModifiers:["declare","abstract","private","protected","public","static","override"]},e);const t=this.tsTryParseIndexSignature(e);return t||(super.parsePropertyName(e),e.computed||"Identifier"!==e.key.type||"get"!==e.key.name&&"set"!==e.key.name||!this.tsTokenCanFollowModifier()||(e.kind=e.key.name,super.parsePropertyName(e)),this.tsParsePropertyOrMethodSignature(e,!!e.readonly))}tsParseTypeLiteral(){const e=this.startNode();return e.members=this.tsParseObjectTypeMembers(),this.finishNode(e,"TSTypeLiteral")}tsParseObjectTypeMembers(){this.expect(5);const e=this.tsParseList("TypeMembers",this.tsParseTypeMember.bind(this));return this.expect(8),e}tsIsStartOfMappedType(){return this.next(),this.eat(53)?this.isContextual(122):(this.isContextual(122)&&this.next(),!!this.match(0)&&(this.next(),!!this.tsIsIdentifier()&&(this.next(),this.match(58))))}tsParseMappedType(){const e=this.startNode();this.expect(5),this.match(53)?(e.readonly=this.state.value,this.next(),this.expectContextual(122)):this.eatContextual(122)&&(e.readonly=!0),this.expect(0);{const t=this.startNode();t.name=this.tsParseTypeParameterName(),t.constraint=this.tsExpectThenParseType(58),e.typeParameter=this.finishNode(t,"TSTypeParameter")}return e.nameType=this.eatContextual(93)?this.tsParseType():null,this.expect(3),this.match(53)?(e.optional=this.state.value,this.next(),this.expect(17)):this.eat(17)&&(e.optional=!0),e.typeAnnotation=this.tsTryParseType(),this.semicolon(),this.expect(8),this.finishNode(e,"TSMappedType")}tsParseTupleType(){const e=this.startNode();e.elementTypes=this.tsParseBracketedList("TupleElementTypes",this.tsParseTupleElementType.bind(this),!0,!1);let t=!1;return e.elementTypes.forEach((e=>{const{type:r}=e;!t||"TSRestType"===r||"TSOptionalType"===r||"TSNamedTupleMember"===r&&e.optional||this.raise(Tt.OptionalTypeBeforeRequired,e),t||(t="TSNamedTupleMember"===r&&e.optional||"TSOptionalType"===r)})),this.finishNode(e,"TSTupleType")}tsParseTupleElementType(){const e=this.state.startLoc,t=this.eat(21),{startLoc:r}=this.state;let n,i,s,a;const o=K(this.state.type)?this.lookaheadCharCode():null;if(58===o)n=!0,s=!1,i=this.parseIdentifier(!0),this.expect(14),a=this.tsParseType();else if(63===o){s=!0;const e=this.state.value,t=this.tsParseNonArrayType();58===this.lookaheadCharCode()?(n=!0,i=this.createIdentifier(this.startNodeAt(r),e),this.expect(17),this.expect(14),a=this.tsParseType()):(n=!1,a=t,this.expect(17))}else a=this.tsParseType(),s=this.eat(17),n=this.eat(14);if(n){let e;i?(e=this.startNodeAt(r),e.optional=s,e.label=i,e.elementType=a,this.eat(17)&&(e.optional=!0,this.raise(Tt.TupleOptionalAfterType,this.state.lastTokStartLoc))):(e=this.startNodeAt(r),e.optional=s,this.raise(Tt.InvalidTupleMemberLabel,a),e.label=a,e.elementType=this.tsParseType()),a=this.finishNode(e,"TSNamedTupleMember")}else if(s){const e=this.startNodeAt(r);e.typeAnnotation=a,a=this.finishNode(e,"TSOptionalType")}if(t){const t=this.startNodeAt(e);t.typeAnnotation=a,a=this.finishNode(t,"TSRestType")}return a}tsParseParenthesizedType(){const e=this.startNode();return this.expect(10),e.typeAnnotation=this.tsParseType(),this.expect(11),this.finishNode(e,"TSParenthesizedType")}tsParseFunctionOrConstructorType(e,t){const r=this.startNode();return"TSConstructorType"===e&&(r.abstract=!!t,t&&this.next(),this.next()),this.tsInAllowConditionalTypesContext((()=>this.tsFillSignature(19,r))),this.finishNode(r,e)}tsParseLiteralTypeNode(){const e=this.startNode();switch(this.state.type){case 135:case 136:case 134:case 85:case 86:e.literal=super.parseExprAtom();break;default:this.unexpected()}return this.finishNode(e,"TSLiteralType")}tsParseTemplateLiteralType(){{const e=this.startNode();return e.literal=super.parseTemplate(!1),this.finishNode(e,"TSLiteralType")}}parseTemplateSubstitution(){return this.state.inType?this.tsParseType():super.parseTemplateSubstitution()}tsParseThisTypeOrThisTypePredicate(){const e=this.tsParseThisTypeNode();return this.isContextual(116)&&!this.hasPrecedingLineBreak()?this.tsParseThisTypePredicate(e):e}tsParseNonArrayType(){switch(this.state.type){case 134:case 135:case 136:case 85:case 86:return this.tsParseLiteralTypeNode();case 53:if("-"===this.state.value){const e=this.startNode(),t=this.lookahead();return 135!==t.type&&136!==t.type&&this.unexpected(),e.literal=this.parseMaybeUnary(),this.finishNode(e,"TSLiteralType")}break;case 78:return this.tsParseThisTypeOrThisTypePredicate();case 87:return this.tsParseTypeQuery();case 83:return this.tsParseImportType();case 5:return this.tsLookAhead(this.tsIsStartOfMappedType.bind(this))?this.tsParseMappedType():this.tsParseTypeLiteral();case 0:return this.tsParseTupleType();case 10:return this.tsParseParenthesizedType();case 25:case 24:return this.tsParseTemplateLiteralType();default:{const{type:e}=this.state;if(q(e)||88===e||84===e){const t=88===e?"TSVoidKeyword":84===e?"TSNullKeyword":function(e){switch(e){case"any":return"TSAnyKeyword";case"boolean":return"TSBooleanKeyword";case"bigint":return"TSBigIntKeyword";case"never":return"TSNeverKeyword";case"number":return"TSNumberKeyword";case"object":return"TSObjectKeyword";case"string":return"TSStringKeyword";case"symbol":return"TSSymbolKeyword";case"undefined":return"TSUndefinedKeyword";case"unknown":return"TSUnknownKeyword";default:return}}(this.state.value);if(void 0!==t&&46!==this.lookaheadCharCode()){const e=this.startNode();return this.next(),this.finishNode(e,t)}return this.tsParseTypeReference()}}}this.unexpected()}tsParseArrayTypeOrHigher(){const{startLoc:e}=this.state;let t=this.tsParseNonArrayType();for(;!this.hasPrecedingLineBreak()&&this.eat(0);)if(this.match(3)){const r=this.startNodeAt(e);r.elementType=t,this.expect(3),t=this.finishNode(r,"TSArrayType")}else{const r=this.startNodeAt(e);r.objectType=t,r.indexType=this.tsParseType(),this.expect(3),t=this.finishNode(r,"TSIndexedAccessType")}return t}tsParseTypeOperator(){const e=this.startNode(),t=this.state.value;return this.next(),e.operator=t,e.typeAnnotation=this.tsParseTypeOperatorOrHigher(),"readonly"===t&&this.tsCheckTypeAnnotationForReadOnly(e),this.finishNode(e,"TSTypeOperator")}tsCheckTypeAnnotationForReadOnly(e){switch(e.typeAnnotation.type){case"TSTupleType":case"TSArrayType":return;default:this.raise(Tt.UnexpectedReadonly,e)}}tsParseInferType(){const e=this.startNode();this.expectContextual(115);const t=this.startNode();return t.name=this.tsParseTypeParameterName(),t.constraint=this.tsTryParse((()=>this.tsParseConstraintForInferType())),e.typeParameter=this.finishNode(t,"TSTypeParameter"),this.finishNode(e,"TSInferType")}tsParseConstraintForInferType(){if(this.eat(81)){const e=this.tsInDisallowConditionalTypesContext((()=>this.tsParseType()));if(this.state.inDisallowConditionalTypesContext||!this.match(17))return e}}tsParseTypeOperatorOrHigher(){var e;return(e=this.state.type)>=121&&e<=123&&!this.state.containsEsc?this.tsParseTypeOperator():this.isContextual(115)?this.tsParseInferType():this.tsInAllowConditionalTypesContext((()=>this.tsParseArrayTypeOrHigher()))}tsParseUnionOrIntersectionType(e,t,r){const n=this.startNode(),i=this.eat(r),s=[];do{s.push(t())}while(this.eat(r));return 1!==s.length||i?(n.types=s,this.finishNode(n,e)):s[0]}tsParseIntersectionTypeOrHigher(){return this.tsParseUnionOrIntersectionType("TSIntersectionType",this.tsParseTypeOperatorOrHigher.bind(this),45)}tsParseUnionTypeOrHigher(){return this.tsParseUnionOrIntersectionType("TSUnionType",this.tsParseIntersectionTypeOrHigher.bind(this),43)}tsIsStartOfFunctionType(){return!!this.match(47)||this.match(10)&&this.tsLookAhead(this.tsIsUnambiguouslyStartOfFunctionType.bind(this))}tsSkipParameterStart(){if(q(this.state.type)||this.match(78))return this.next(),!0;if(this.match(5)){const{errors:e}=this.state,t=e.length;try{return this.parseObjectLike(8,!0),e.length===t}catch(e){return!1}}if(this.match(0)){this.next();const{errors:e}=this.state,t=e.length;try{return super.parseBindingList(3,93,1),e.length===t}catch(e){return!1}}return!1}tsIsUnambiguouslyStartOfFunctionType(){if(this.next(),this.match(11)||this.match(21))return!0;if(this.tsSkipParameterStart()){if(this.match(14)||this.match(12)||this.match(17)||this.match(29))return!0;if(this.match(11)&&(this.next(),this.match(19)))return!0}return!1}tsParseTypeOrTypePredicateAnnotation(e){return this.tsInType((()=>{const t=this.startNode();this.expect(e);const r=this.startNode(),n=!!this.tsTryParse(this.tsParseTypePredicateAsserts.bind(this));if(n&&this.match(78)){let e=this.tsParseThisTypeOrThisTypePredicate();return"TSThisType"===e.type?(r.parameterName=e,r.asserts=!0,r.typeAnnotation=null,e=this.finishNode(r,"TSTypePredicate")):(this.resetStartLocationFromNode(e,r),e.asserts=!0),t.typeAnnotation=e,this.finishNode(t,"TSTypeAnnotation")}const i=this.tsIsIdentifier()&&this.tsTryParse(this.tsParseTypePredicatePrefix.bind(this));if(!i)return n?(r.parameterName=this.parseIdentifier(),r.asserts=n,r.typeAnnotation=null,t.typeAnnotation=this.finishNode(r,"TSTypePredicate"),this.finishNode(t,"TSTypeAnnotation")):this.tsParseTypeAnnotation(!1,t);const s=this.tsParseTypeAnnotation(!1);return r.parameterName=i,r.typeAnnotation=s,r.asserts=n,t.typeAnnotation=this.finishNode(r,"TSTypePredicate"),this.finishNode(t,"TSTypeAnnotation")}))}tsTryParseTypeOrTypePredicateAnnotation(){if(this.match(14))return this.tsParseTypeOrTypePredicateAnnotation(14)}tsTryParseTypeAnnotation(){if(this.match(14))return this.tsParseTypeAnnotation()}tsTryParseType(){return this.tsEatThenParseType(14)}tsParseTypePredicatePrefix(){const e=this.parseIdentifier();if(this.isContextual(116)&&!this.hasPrecedingLineBreak())return this.next(),e}tsParseTypePredicateAsserts(){if(109!==this.state.type)return!1;const e=this.state.containsEsc;return this.next(),!(!q(this.state.type)&&!this.match(78))&&(e&&this.raise(b.InvalidEscapedReservedWord,this.state.lastTokStartLoc,{reservedWord:"asserts"}),!0)}tsParseTypeAnnotation(e=!0,t=this.startNode()){return this.tsInType((()=>{e&&this.expect(14),t.typeAnnotation=this.tsParseType()})),this.finishNode(t,"TSTypeAnnotation")}tsParseType(){xt(this.state.inType);const e=this.tsParseNonConditionalType();if(this.state.inDisallowConditionalTypesContext||this.hasPrecedingLineBreak()||!this.eat(81))return e;const t=this.startNodeAtNode(e);return t.checkType=e,t.extendsType=this.tsInDisallowConditionalTypesContext((()=>this.tsParseNonConditionalType())),this.expect(17),t.trueType=this.tsInAllowConditionalTypesContext((()=>this.tsParseType())),this.expect(14),t.falseType=this.tsInAllowConditionalTypesContext((()=>this.tsParseType())),this.finishNode(t,"TSConditionalType")}isAbstractConstructorSignature(){return this.isContextual(124)&&77===this.lookahead().type}tsParseNonConditionalType(){return this.tsIsStartOfFunctionType()?this.tsParseFunctionOrConstructorType("TSFunctionType"):this.match(77)?this.tsParseFunctionOrConstructorType("TSConstructorType"):this.isAbstractConstructorSignature()?this.tsParseFunctionOrConstructorType("TSConstructorType",!0):this.tsParseUnionTypeOrHigher()}tsParseTypeAssertion(){this.getPluginOption("typescript","disallowAmbiguousJSXLike")&&this.raise(Tt.ReservedTypeAssertion,this.state.startLoc);const e=this.startNode();return e.typeAnnotation=this.tsInType((()=>(this.next(),this.match(75)?this.tsParseTypeReference():this.tsParseType()))),this.expect(48),e.expression=this.parseMaybeUnary(),this.finishNode(e,"TSTypeAssertion")}tsParseHeritageClause(e){const t=this.state.startLoc,r=this.tsParseDelimitedList("HeritageClauseElement",(()=>{const e=this.startNode();return e.expression=this.tsParseEntityName(3),this.match(47)&&(e.typeParameters=this.tsParseTypeArguments()),this.finishNode(e,"TSExpressionWithTypeArguments")}));return r.length||this.raise(Tt.EmptyHeritageClauseType,t,{token:e}),r}tsParseInterfaceDeclaration(e,t={}){if(this.hasFollowingLineBreak())return null;this.expectContextual(129),t.declare&&(e.declare=!0),q(this.state.type)?(e.id=this.parseIdentifier(),this.checkIdentifier(e.id,130)):(e.id=null,this.raise(Tt.MissingInterfaceName,this.state.startLoc)),e.typeParameters=this.tsTryParseTypeParameters(this.tsParseInOutConstModifiers),this.eat(81)&&(e.extends=this.tsParseHeritageClause("extends"));const r=this.startNode();return r.body=this.tsInType(this.tsParseObjectTypeMembers.bind(this)),e.body=this.finishNode(r,"TSInterfaceBody"),this.finishNode(e,"TSInterfaceDeclaration")}tsParseTypeAliasDeclaration(e){return e.id=this.parseIdentifier(),this.checkIdentifier(e.id,2),e.typeAnnotation=this.tsInType((()=>{if(e.typeParameters=this.tsTryParseTypeParameters(this.tsParseInOutModifiers),this.expect(29),this.isContextual(114)&&16!==this.lookahead().type){const e=this.startNode();return this.next(),this.finishNode(e,"TSIntrinsicKeyword")}return this.tsParseType()})),this.semicolon(),this.finishNode(e,"TSTypeAliasDeclaration")}tsInTopLevelContext(e){if(this.curContext()===S.brace)return e();{const t=this.state.context;this.state.context=[t[0]];try{return e()}finally{this.state.context=t}}}tsInType(e){const t=this.state.inType;this.state.inType=!0;try{return e()}finally{this.state.inType=t}}tsInDisallowConditionalTypesContext(e){const t=this.state.inDisallowConditionalTypesContext;this.state.inDisallowConditionalTypesContext=!0;try{return e()}finally{this.state.inDisallowConditionalTypesContext=t}}tsInAllowConditionalTypesContext(e){const t=this.state.inDisallowConditionalTypesContext;this.state.inDisallowConditionalTypesContext=!1;try{return e()}finally{this.state.inDisallowConditionalTypesContext=t}}tsEatThenParseType(e){if(this.match(e))return this.tsNextThenParseType()}tsExpectThenParseType(e){return this.tsInType((()=>(this.expect(e),this.tsParseType())))}tsNextThenParseType(){return this.tsInType((()=>(this.next(),this.tsParseType())))}tsParseEnumMember(){const e=this.startNode();return e.id=this.match(134)?super.parseStringLiteral(this.state.value):this.parseIdentifier(!0),this.eat(29)&&(e.initializer=super.parseMaybeAssignAllowIn()),this.finishNode(e,"TSEnumMember")}tsParseEnumDeclaration(e,t={}){return t.const&&(e.const=!0),t.declare&&(e.declare=!0),this.expectContextual(126),e.id=this.parseIdentifier(),this.checkIdentifier(e.id,e.const?8971:8459),this.expect(5),e.members=this.tsParseDelimitedList("EnumMembers",this.tsParseEnumMember.bind(this)),this.expect(8),this.finishNode(e,"TSEnumDeclaration")}tsParseEnumBody(){const e=this.startNode();return this.expect(5),e.members=this.tsParseDelimitedList("EnumMembers",this.tsParseEnumMember.bind(this)),this.expect(8),this.finishNode(e,"TSEnumBody")}tsParseModuleBlock(){const e=this.startNode();return this.scope.enter(0),this.expect(5),super.parseBlockOrModuleBlockBody(e.body=[],void 0,!0,8),this.scope.exit(),this.finishNode(e,"TSModuleBlock")}tsParseModuleOrNamespaceDeclaration(e,t=!1){if(e.id=this.parseIdentifier(),t||this.checkIdentifier(e.id,1024),this.eat(16)){const t=this.startNode();this.tsParseModuleOrNamespaceDeclaration(t,!0),e.body=t}else this.scope.enter(256),this.prodParam.enter(0),e.body=this.tsParseModuleBlock(),this.prodParam.exit(),this.scope.exit();return this.finishNode(e,"TSModuleDeclaration")}tsParseAmbientExternalModuleDeclaration(e){return this.isContextual(112)?(e.kind="global",e.global=!0,e.id=this.parseIdentifier()):this.match(134)?(e.kind="module",e.id=super.parseStringLiteral(this.state.value)):this.unexpected(),this.match(5)?(this.scope.enter(256),this.prodParam.enter(0),e.body=this.tsParseModuleBlock(),this.prodParam.exit(),this.scope.exit()):this.semicolon(),this.finishNode(e,"TSModuleDeclaration")}tsParseImportEqualsDeclaration(e,t,r){e.isExport=r||!1,e.id=t||this.parseIdentifier(),this.checkIdentifier(e.id,4096),this.expect(29);const n=this.tsParseModuleReference();return"type"===e.importKind&&"TSExternalModuleReference"!==n.type&&this.raise(Tt.ImportAliasHasImportType,n),e.moduleReference=n,this.semicolon(),this.finishNode(e,"TSImportEqualsDeclaration")}tsIsExternalModuleReference(){return this.isContextual(119)&&40===this.lookaheadCharCode()}tsParseModuleReference(){return this.tsIsExternalModuleReference()?this.tsParseExternalModuleReference():this.tsParseEntityName(0)}tsParseExternalModuleReference(){const e=this.startNode();return this.expectContextual(119),this.expect(10),this.match(134)||this.unexpected(),e.expression=super.parseExprAtom(),this.expect(11),this.sawUnambiguousESM=!0,this.finishNode(e,"TSExternalModuleReference")}tsLookAhead(e){const t=this.state.clone(),r=e();return this.state=t,r}tsTryParseAndCatch(e){const t=this.tryParse((t=>e()||t()));if(!t.aborted&&t.node)return t.error&&(this.state=t.failState),t.node}tsTryParse(e){const t=this.state.clone(),r=e();if(void 0!==r&&!1!==r)return r;this.state=t}tsTryParseDeclare(e){if(this.isLineTerminator())return;let t,r=this.state.type;return this.isContextual(100)&&(r=74,t="let"),this.tsInAmbientContext((()=>{switch(r){case 68:return e.declare=!0,super.parseFunctionStatement(e,!1,!1);case 80:return e.declare=!0,this.parseClass(e,!0,!1);case 126:return this.tsParseEnumDeclaration(e,{declare:!0});case 112:return this.tsParseAmbientExternalModuleDeclaration(e);case 75:case 74:return this.match(75)&&this.isLookaheadContextual("enum")?(this.expect(75),this.tsParseEnumDeclaration(e,{const:!0,declare:!0})):(e.declare=!0,this.parseVarStatement(e,t||this.state.value,!0));case 129:{const t=this.tsParseInterfaceDeclaration(e,{declare:!0});if(t)return t}default:if(q(r))return this.tsParseDeclaration(e,this.state.value,!0,null)}}))}tsTryParseExportDeclaration(){return this.tsParseDeclaration(this.startNode(),this.state.value,!0,null)}tsParseExpressionStatement(e,t,r){switch(t.name){case"declare":{const t=this.tsTryParseDeclare(e);return t&&(t.declare=!0),t}case"global":if(this.match(5)){this.scope.enter(256),this.prodParam.enter(0);const r=e;return r.kind="global",e.global=!0,r.id=t,r.body=this.tsParseModuleBlock(),this.scope.exit(),this.prodParam.exit(),this.finishNode(r,"TSModuleDeclaration")}break;default:return this.tsParseDeclaration(e,t.name,!1,r)}}tsParseDeclaration(e,t,r,n){switch(t){case"abstract":if(this.tsCheckLineTerminator(r)&&(this.match(80)||q(this.state.type)))return this.tsParseAbstractDeclaration(e,n);break;case"module":if(this.tsCheckLineTerminator(r)){if(this.match(134))return this.tsParseAmbientExternalModuleDeclaration(e);if(q(this.state.type))return e.kind="module",this.tsParseModuleOrNamespaceDeclaration(e)}break;case"namespace":if(this.tsCheckLineTerminator(r)&&q(this.state.type))return e.kind="namespace",this.tsParseModuleOrNamespaceDeclaration(e);break;case"type":if(this.tsCheckLineTerminator(r)&&q(this.state.type))return this.tsParseTypeAliasDeclaration(e)}}tsCheckLineTerminator(e){return e?!this.hasFollowingLineBreak()&&(this.next(),!0):!this.isLineTerminator()}tsTryParseGenericAsyncArrowFunction(e){if(!this.match(47))return;const t=this.state.maybeInArrowParameters;this.state.maybeInArrowParameters=!0;const r=this.tsTryParseAndCatch((()=>{const t=this.startNodeAt(e);return t.typeParameters=this.tsParseTypeParameters(this.tsParseConstModifier),super.parseFunctionParams(t),t.returnType=this.tsTryParseTypeOrTypePredicateAnnotation(),this.expect(19),t}));return this.state.maybeInArrowParameters=t,r?super.parseArrowExpression(r,null,!0):void 0}tsParseTypeArgumentsInExpression(){if(47===this.reScan_lt())return this.tsParseTypeArguments()}tsParseTypeArguments(){const e=this.startNode();return e.params=this.tsInType((()=>this.tsInTopLevelContext((()=>(this.expect(47),this.tsParseDelimitedList("TypeParametersOrArguments",this.tsParseType.bind(this))))))),0===e.params.length?this.raise(Tt.EmptyTypeArguments,e):this.state.inType||this.curContext()!==S.brace||this.reScan_lt_gt(),this.expect(48),this.finishNode(e,"TSTypeParameterInstantiation")}tsIsDeclarationStart(){return(e=this.state.type)>=124&&e<=130;var e}isExportDefaultSpecifier(){return!this.tsIsDeclarationStart()&&super.isExportDefaultSpecifier()}parseAssignableListItem(e,t){const r=this.state.startLoc,n={};this.tsParseModifiers({allowedModifiers:["public","private","protected","override","readonly"]},n);const i=n.accessibility,s=n.override,a=n.readonly;4&e||!(i||a||s)||this.raise(Tt.UnexpectedParameterModifier,r);const o=this.parseMaybeDefault();2&e&&this.parseFunctionParamType(o);const l=this.parseMaybeDefault(o.loc.start,o);if(i||a||s){const e=this.startNodeAt(r);return t.length&&(e.decorators=t),i&&(e.accessibility=i),a&&(e.readonly=a),s&&(e.override=s),"Identifier"!==l.type&&"AssignmentPattern"!==l.type&&this.raise(Tt.UnsupportedParameterPropertyKind,e),e.parameter=l,this.finishNode(e,"TSParameterProperty")}return t.length&&(o.decorators=t),l}isSimpleParameter(e){return"TSParameterProperty"===e.type&&super.isSimpleParameter(e.parameter)||super.isSimpleParameter(e)}tsDisallowOptionalPattern(e){for(const t of e.params)"Identifier"!==t.type&&t.optional&&!this.state.isAmbientContext&&this.raise(Tt.PatternIsOptional,t)}setArrowFunctionParameters(e,t,r){super.setArrowFunctionParameters(e,t,r),this.tsDisallowOptionalPattern(e)}parseFunctionBodyAndFinish(e,t,r=!1){this.match(14)&&(e.returnType=this.tsParseTypeOrTypePredicateAnnotation(14));const n="FunctionDeclaration"===t?"TSDeclareFunction":"ClassMethod"===t||"ClassPrivateMethod"===t?"TSDeclareMethod":void 0;return n&&!this.match(5)&&this.isLineTerminator()?this.finishNode(e,n):"TSDeclareFunction"===n&&this.state.isAmbientContext&&(this.raise(Tt.DeclareFunctionHasImplementation,e),e.declare)?super.parseFunctionBodyAndFinish(e,n,r):(this.tsDisallowOptionalPattern(e),super.parseFunctionBodyAndFinish(e,t,r))}registerFunctionStatementId(e){!e.body&&e.id?this.checkIdentifier(e.id,1024):super.registerFunctionStatementId(e)}tsCheckForInvalidTypeCasts(e){e.forEach((e=>{"TSTypeCastExpression"===(null==e?void 0:e.type)&&this.raise(Tt.UnexpectedTypeAnnotation,e.typeAnnotation)}))}toReferencedList(e,t){return this.tsCheckForInvalidTypeCasts(e),e}parseArrayLike(e,t,r,n){const i=super.parseArrayLike(e,t,r,n);return"ArrayExpression"===i.type&&this.tsCheckForInvalidTypeCasts(i.elements),i}parseSubscript(e,t,r,n){if(!this.hasPrecedingLineBreak()&&this.match(35)){this.state.canStartJSXElement=!1,this.next();const r=this.startNodeAt(t);return r.expression=e,this.finishNode(r,"TSNonNullExpression")}let i=!1;if(this.match(18)&&60===this.lookaheadCharCode()){if(r)return n.stop=!0,e;n.optionalChainMember=i=!0,this.next()}if(this.match(47)||this.match(51)){let s;const a=this.tsTryParseAndCatch((()=>{if(!r&&this.atPossibleAsyncArrow(e)){const e=this.tsTryParseGenericAsyncArrowFunction(t);if(e)return e}const a=this.tsParseTypeArgumentsInExpression();if(!a)return;if(i&&!this.match(10))return void(s=this.state.curPosition());if(X(this.state.type)){const r=super.parseTaggedTemplateExpression(e,t,n);return r.typeParameters=a,r}if(!r&&this.eat(10)){const r=this.startNodeAt(t);return r.callee=e,r.arguments=this.parseCallExpressionArguments(11),this.tsCheckForInvalidTypeCasts(r.arguments),r.typeParameters=a,n.optionalChainMember&&(r.optional=i),this.finishCallExpression(r,n.optionalChainMember)}const o=this.state.type;if(48===o||52===o||10!==o&&W(o)&&!this.hasPrecedingLineBreak())return;const l=this.startNodeAt(t);return l.expression=e,l.typeParameters=a,this.finishNode(l,"TSInstantiationExpression")}));if(s&&this.unexpected(s,10),a)return"TSInstantiationExpression"===a.type&&(this.match(16)||this.match(18)&&40!==this.lookaheadCharCode())&&this.raise(Tt.InvalidPropertyAccessAfterInstantiationExpression,this.state.startLoc),a}return super.parseSubscript(e,t,r,n)}parseNewCallee(e){var t;super.parseNewCallee(e);const{callee:r}=e;"TSInstantiationExpression"!==r.type||null!=(t=r.extra)&&t.parenthesized||(e.typeParameters=r.typeParameters,e.callee=r.expression)}parseExprOp(e,t,r){let n;if(z(58)>r&&!this.hasPrecedingLineBreak()&&(this.isContextual(93)||(n=this.isContextual(120)))){const i=this.startNodeAt(t);return i.expression=e,i.typeAnnotation=this.tsInType((()=>(this.next(),this.match(75)?(n&&this.raise(b.UnexpectedKeyword,this.state.startLoc,{keyword:"const"}),this.tsParseTypeReference()):this.tsParseType()))),this.finishNode(i,n?"TSSatisfiesExpression":"TSAsExpression"),this.reScan_lt_gt(),this.parseExprOp(i,t,r)}return super.parseExprOp(e,t,r)}checkReservedWord(e,t,r,n){this.state.isAmbientContext||super.checkReservedWord(e,t,r,n)}checkImportReflection(e){super.checkImportReflection(e),e.module&&"value"!==e.importKind&&this.raise(Tt.ImportReflectionHasImportType,e.specifiers[0].loc.start)}checkDuplicateExports(){}isPotentialImportPhase(e){if(super.isPotentialImportPhase(e))return!0;if(this.isContextual(130)){const t=this.lookaheadCharCode();return e?123===t||42===t:61!==t}return!e&&this.isContextual(87)}applyImportPhase(e,t,r,n){super.applyImportPhase(e,t,r,n),t?e.exportKind="type"===r?"type":"value":e.importKind="type"===r||"typeof"===r?r:"value"}parseImport(e){if(this.match(134))return e.importKind="value",super.parseImport(e);let t;if(q(this.state.type)&&61===this.lookaheadCharCode())return e.importKind="value",this.tsParseImportEqualsDeclaration(e);if(this.isContextual(130)){const r=this.parseMaybeImportPhase(e,!1);if(61===this.lookaheadCharCode())return this.tsParseImportEqualsDeclaration(e,r);t=super.parseImportSpecifiersAndAfter(e,r)}else t=super.parseImport(e);return"type"===t.importKind&&t.specifiers.length>1&&"ImportDefaultSpecifier"===t.specifiers[0].type&&this.raise(Tt.TypeImportCannotSpecifyDefaultAndNamed,t),t}parseExport(e,t){if(this.match(83)){const t=e;this.next();let r=null;this.isContextual(130)&&this.isPotentialImportPhase(!1)?r=this.parseMaybeImportPhase(t,!1):t.importKind="value";return this.tsParseImportEqualsDeclaration(t,r,!0)}if(this.eat(29)){const t=e;return t.expression=super.parseExpression(),this.semicolon(),this.sawUnambiguousESM=!0,this.finishNode(t,"TSExportAssignment")}if(this.eatContextual(93)){const t=e;return this.expectContextual(128),t.id=this.parseIdentifier(),this.semicolon(),this.finishNode(t,"TSNamespaceExportDeclaration")}return super.parseExport(e,t)}isAbstractClass(){return this.isContextual(124)&&80===this.lookahead().type}parseExportDefaultExpression(){if(this.isAbstractClass()){const e=this.startNode();return this.next(),e.abstract=!0,this.parseClass(e,!0,!0)}if(this.match(129)){const e=this.tsParseInterfaceDeclaration(this.startNode());if(e)return e}return super.parseExportDefaultExpression()}parseVarStatement(e,t,r=!1){const{isAmbientContext:n}=this.state,i=super.parseVarStatement(e,t,r||n);if(!n)return i;for(const{id:e,init:r}of i.declarations)r&&("const"!==t||e.typeAnnotation?this.raise(Tt.InitializerNotAllowedInAmbientContext,r):At(r,this.hasPlugin("estree"))||this.raise(Tt.ConstInitializerMustBeStringOrNumericLiteralOrLiteralEnumReference,r));return i}parseStatementContent(e,t){if(this.match(75)&&this.isLookaheadContextual("enum")){const e=this.startNode();return this.expect(75),this.tsParseEnumDeclaration(e,{const:!0})}if(this.isContextual(126))return this.tsParseEnumDeclaration(this.startNode());if(this.isContextual(129)){const e=this.tsParseInterfaceDeclaration(this.startNode());if(e)return e}return super.parseStatementContent(e,t)}parseAccessModifier(){return this.tsParseModifier(["public","protected","private"])}tsHasSomeModifiers(e,t){return t.some((t=>St(t)?e.accessibility===t:!!e[t]))}tsIsStartOfStaticBlocks(){return this.isContextual(106)&&123===this.lookaheadCharCode()}parseClassMember(e,t,r){const n=["declare","private","public","protected","override","abstract","readonly","static"];this.tsParseModifiers({allowedModifiers:n,disallowedModifiers:["in","out"],stopOnStartOfClassStaticBlock:!0,errorTemplate:Tt.InvalidModifierOnTypeParameterPositions},t);const i=()=>{this.tsIsStartOfStaticBlocks()?(this.next(),this.next(),this.tsHasSomeModifiers(t,n)&&this.raise(Tt.StaticBlockCannotHaveModifier,this.state.curPosition()),super.parseClassStaticBlock(e,t)):this.parseClassMemberWithIsStatic(e,t,r,!!t.static)};t.declare?this.tsInAmbientContext(i):i()}parseClassMemberWithIsStatic(e,t,r,n){const i=this.tsTryParseIndexSignature(t);if(i)return e.body.push(i),t.abstract&&this.raise(Tt.IndexSignatureHasAbstract,t),t.accessibility&&this.raise(Tt.IndexSignatureHasAccessibility,t,{modifier:t.accessibility}),t.declare&&this.raise(Tt.IndexSignatureHasDeclare,t),void(t.override&&this.raise(Tt.IndexSignatureHasOverride,t));!this.state.inAbstractClass&&t.abstract&&this.raise(Tt.NonAbstractClassHasAbstractMethod,t),t.override&&(r.hadSuperClass||this.raise(Tt.OverrideNotInSubClass,t)),super.parseClassMemberWithIsStatic(e,t,r,n)}parsePostMemberNameModifiers(e){this.eat(17)&&(e.optional=!0),e.readonly&&this.match(10)&&this.raise(Tt.ClassMethodHasReadonly,e),e.declare&&this.match(10)&&this.raise(Tt.ClassMethodHasDeclare,e)}parseExpressionStatement(e,t,r){return("Identifier"===t.type?this.tsParseExpressionStatement(e,t,r):void 0)||super.parseExpressionStatement(e,t,r)}shouldParseExportDeclaration(){return!!this.tsIsDeclarationStart()||super.shouldParseExportDeclaration()}parseConditional(e,t,r){if(!this.state.maybeInArrowParameters||!this.match(17))return super.parseConditional(e,t,r);const n=this.tryParse((()=>super.parseConditional(e,t)));return n.node?(n.error&&(this.state=n.failState),n.node):(n.error&&super.setOptionalParametersError(r,n.error),e)}parseParenItem(e,t){const r=super.parseParenItem(e,t);if(this.eat(17)&&(r.optional=!0,this.resetEndLocation(e)),this.match(14)){const r=this.startNodeAt(t);return r.expression=e,r.typeAnnotation=this.tsParseTypeAnnotation(),this.finishNode(r,"TSTypeCastExpression")}return e}parseExportDeclaration(e){if(!this.state.isAmbientContext&&this.isContextual(125))return this.tsInAmbientContext((()=>this.parseExportDeclaration(e)));const t=this.state.startLoc,r=this.eatContextual(125);if(r&&(this.isContextual(125)||!this.shouldParseExportDeclaration()))throw this.raise(Tt.ExpectedAmbientAfterExportDeclare,this.state.startLoc);const n=q(this.state.type)&&this.tsTryParseExportDeclaration()||super.parseExportDeclaration(e);return n?(("TSInterfaceDeclaration"===n.type||"TSTypeAliasDeclaration"===n.type||r)&&(e.exportKind="type"),r&&"TSImportEqualsDeclaration"!==n.type&&(this.resetStartLocation(n,t),n.declare=!0),n):null}parseClassId(e,t,r,n){if((!t||r)&&this.isContextual(113))return;super.parseClassId(e,t,r,e.declare?1024:8331);const i=this.tsTryParseTypeParameters(this.tsParseInOutConstModifiers);i&&(e.typeParameters=i)}parseClassPropertyAnnotation(e){e.optional||(this.eat(35)?e.definite=!0:this.eat(17)&&(e.optional=!0));const t=this.tsTryParseTypeAnnotation();t&&(e.typeAnnotation=t)}parseClassProperty(e){if(this.parseClassPropertyAnnotation(e),this.state.isAmbientContext&&(!e.readonly||e.typeAnnotation)&&this.match(29)&&this.raise(Tt.DeclareClassFieldHasInitializer,this.state.startLoc),e.abstract&&this.match(29)){const{key:t}=e;this.raise(Tt.AbstractPropertyHasInitializer,this.state.startLoc,{propertyName:"Identifier"!==t.type||e.computed?`[${this.input.slice(this.offsetToSourcePos(t.start),this.offsetToSourcePos(t.end))}]`:t.name})}return super.parseClassProperty(e)}parseClassPrivateProperty(e){return e.abstract&&this.raise(Tt.PrivateElementHasAbstract,e),e.accessibility&&this.raise(Tt.PrivateElementHasAccessibility,e,{modifier:e.accessibility}),this.parseClassPropertyAnnotation(e),super.parseClassPrivateProperty(e)}parseClassAccessorProperty(e){return this.parseClassPropertyAnnotation(e),e.optional&&this.raise(Tt.AccessorCannotBeOptional,e),super.parseClassAccessorProperty(e)}pushClassMethod(e,t,r,n,i,s){const a=this.tsTryParseTypeParameters(this.tsParseConstModifier);a&&i&&this.raise(Tt.ConstructorHasTypeParameters,a);const{declare:o=!1,kind:l}=t;!o||"get"!==l&&"set"!==l||this.raise(Tt.DeclareAccessor,t,{kind:l}),a&&(t.typeParameters=a),super.pushClassMethod(e,t,r,n,i,s)}pushClassPrivateMethod(e,t,r,n){const i=this.tsTryParseTypeParameters(this.tsParseConstModifier);i&&(t.typeParameters=i),super.pushClassPrivateMethod(e,t,r,n)}declareClassPrivateMethodInScope(e,t){"TSDeclareMethod"!==e.type&&("MethodDefinition"!==e.type||hasOwnProperty.call(e.value,"body"))&&super.declareClassPrivateMethodInScope(e,t)}parseClassSuper(e){super.parseClassSuper(e),e.superClass&&(this.match(47)||this.match(51))&&(e.superTypeParameters=this.tsParseTypeArgumentsInExpression()),this.eatContextual(113)&&(e.implements=this.tsParseHeritageClause("implements"))}parseObjPropValue(e,t,r,n,i,s,a){const o=this.tsTryParseTypeParameters(this.tsParseConstModifier);return o&&(e.typeParameters=o),super.parseObjPropValue(e,t,r,n,i,s,a)}parseFunctionParams(e,t){const r=this.tsTryParseTypeParameters(this.tsParseConstModifier);r&&(e.typeParameters=r),super.parseFunctionParams(e,t)}parseVarId(e,t){super.parseVarId(e,t),"Identifier"===e.id.type&&!this.hasPrecedingLineBreak()&&this.eat(35)&&(e.definite=!0);const r=this.tsTryParseTypeAnnotation();r&&(e.id.typeAnnotation=r,this.resetEndLocation(e.id))}parseAsyncArrowFromCallExpression(e,t){return this.match(14)&&(e.returnType=this.tsParseTypeAnnotation()),super.parseAsyncArrowFromCallExpression(e,t)}parseMaybeAssign(e,t){var r,n,i,s,a;let o,l,c,u;if(this.hasPlugin("jsx")&&(this.match(143)||this.match(47))){if(o=this.state.clone(),l=this.tryParse((()=>super.parseMaybeAssign(e,t)),o),!l.error)return l.node;const{context:r}=this.state,n=r[r.length-1];n!==S.j_oTag&&n!==S.j_expr||r.pop()}if(!(null!=(r=l)&&r.error||this.match(47)))return super.parseMaybeAssign(e,t);o&&o!==this.state||(o=this.state.clone());const p=this.tryParse((r=>{var n,i;u=this.tsParseTypeParameters(this.tsParseConstModifier);const s=super.parseMaybeAssign(e,t);return("ArrowFunctionExpression"!==s.type||null!=(n=s.extra)&&n.parenthesized)&&r(),0!==(null==(i=u)?void 0:i.params.length)&&this.resetStartLocationFromNode(s,u),s.typeParameters=u,s}),o);if(!p.error&&!p.aborted)return u&&this.reportReservedArrowTypeParam(u),p.node;if(!l&&(xt(!this.hasPlugin("jsx")),c=this.tryParse((()=>super.parseMaybeAssign(e,t)),o),!c.error))return c.node;if(null!=(n=l)&&n.node)return this.state=l.failState,l.node;if(p.node)return this.state=p.failState,u&&this.reportReservedArrowTypeParam(u),p.node;if(null!=(i=c)&&i.node)return this.state=c.failState,c.node;throw(null==(s=l)?void 0:s.error)||p.error||(null==(a=c)?void 0:a.error)}reportReservedArrowTypeParam(e){var t;1!==e.params.length||e.params[0].constraint||null!=(t=e.extra)&&t.trailingComma||!this.getPluginOption("typescript","disallowAmbiguousJSXLike")||this.raise(Tt.ReservedArrowTypeParam,e)}parseMaybeUnary(e,t){return!this.hasPlugin("jsx")&&this.match(47)?this.tsParseTypeAssertion():super.parseMaybeUnary(e,t)}parseArrow(e){if(this.match(14)){const t=this.tryParse((e=>{const t=this.tsParseTypeOrTypePredicateAnnotation(14);return!this.canInsertSemicolon()&&this.match(19)||e(),t}));if(t.aborted)return;t.thrown||(t.error&&(this.state=t.failState),e.returnType=t.node)}return super.parseArrow(e)}parseFunctionParamType(e){this.eat(17)&&(e.optional=!0);const t=this.tsTryParseTypeAnnotation();return t&&(e.typeAnnotation=t),this.resetEndLocation(e),e}isAssignable(e,t){switch(e.type){case"TSTypeCastExpression":return this.isAssignable(e.expression,t);case"TSParameterProperty":return!0;default:return super.isAssignable(e,t)}}toAssignable(e,t=!1){switch(e.type){case"ParenthesizedExpression":this.toAssignableParenthesizedExpression(e,t);break;case"TSAsExpression":case"TSSatisfiesExpression":case"TSNonNullExpression":case"TSTypeAssertion":t?this.expressionScope.recordArrowParameterBindingError(Tt.UnexpectedTypeCastInParameter,e):this.raise(Tt.UnexpectedTypeCastInParameter,e),this.toAssignable(e.expression,t);break;case"AssignmentExpression":t||"TSTypeCastExpression"!==e.left.type||(e.left=this.typeCastToParameter(e.left));default:super.toAssignable(e,t)}}toAssignableParenthesizedExpression(e,t){switch(e.expression.type){case"TSAsExpression":case"TSSatisfiesExpression":case"TSNonNullExpression":case"TSTypeAssertion":case"ParenthesizedExpression":this.toAssignable(e.expression,t);break;default:super.toAssignable(e,t)}}checkToRestConversion(e,t){switch(e.type){case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":case"TSNonNullExpression":this.checkToRestConversion(e.expression,!1);break;default:super.checkToRestConversion(e,t)}}isValidLVal(e,t,r){switch(e){case"TSTypeCastExpression":return!0;case"TSParameterProperty":return"parameter";case"TSNonNullExpression":case"TSInstantiationExpression":return"expression";case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":return(64!==r||!t)&&["expression",!0];default:return super.isValidLVal(e,t,r)}}parseBindingAtom(){return 78===this.state.type?this.parseIdentifier(!0):super.parseBindingAtom()}parseMaybeDecoratorArguments(e,t){if(this.match(47)||this.match(51)){const r=this.tsParseTypeArgumentsInExpression();if(this.match(10)){const n=super.parseMaybeDecoratorArguments(e,t);return n.typeParameters=r,n}this.unexpected(null,10)}return super.parseMaybeDecoratorArguments(e,t)}checkCommaAfterRest(e){return this.state.isAmbientContext&&this.match(12)&&this.lookaheadCharCode()===e?(this.next(),!1):super.checkCommaAfterRest(e)}isClassMethod(){return this.match(47)||super.isClassMethod()}isClassProperty(){return this.match(35)||this.match(14)||super.isClassProperty()}parseMaybeDefault(e,t){const r=super.parseMaybeDefault(e,t);return"AssignmentPattern"===r.type&&r.typeAnnotation&&r.right.start<r.typeAnnotation.start&&this.raise(Tt.TypeAnnotationAfterAssign,r.typeAnnotation),r}getTokenFromCode(e){if(this.state.inType){if(62===e)return void this.finishOp(48,1);if(60===e)return void this.finishOp(47,1)}super.getTokenFromCode(e)}reScan_lt_gt(){const{type:e}=this.state;47===e?(this.state.pos-=1,this.readToken_lt()):48===e&&(this.state.pos-=1,this.readToken_gt())}reScan_lt(){const{type:e}=this.state;return 51===e?(this.state.pos-=2,this.finishOp(47,1),47):e}toAssignableList(e,t,r){for(let t=0;t<e.length;t++){const r=e[t];"TSTypeCastExpression"===(null==r?void 0:r.type)&&(e[t]=this.typeCastToParameter(r))}super.toAssignableList(e,t,r)}typeCastToParameter(e){return e.expression.typeAnnotation=e.typeAnnotation,this.resetEndLocation(e.expression,e.typeAnnotation.loc.end),e.expression}shouldParseArrow(e){return this.match(14)?e.every((e=>this.isAssignable(e,!0))):super.shouldParseArrow(e)}shouldParseAsyncArrow(){return this.match(14)||super.shouldParseAsyncArrow()}canHaveLeadingDecorator(){return super.canHaveLeadingDecorator()||this.isAbstractClass()}jsxParseOpeningElementAfterName(e){if(this.match(47)||this.match(51)){const t=this.tsTryParseAndCatch((()=>this.tsParseTypeArgumentsInExpression()));t&&(e.typeParameters=t)}return super.jsxParseOpeningElementAfterName(e)}getGetterSetterExpectedParamCount(e){const t=super.getGetterSetterExpectedParamCount(e),r=this.getObjectOrClassMethodParams(e)[0];return r&&this.isThisParam(r)?t+1:t}parseCatchClauseParam(){const e=super.parseCatchClauseParam(),t=this.tsTryParseTypeAnnotation();return t&&(e.typeAnnotation=t,this.resetEndLocation(e)),e}tsInAmbientContext(e){const{isAmbientContext:t,strict:r}=this.state;this.state.isAmbientContext=!0,this.state.strict=!1;try{return e()}finally{this.state.isAmbientContext=t,this.state.strict=r}}parseClass(e,t,r){const n=this.state.inAbstractClass;this.state.inAbstractClass=!!e.abstract;try{return super.parseClass(e,t,r)}finally{this.state.inAbstractClass=n}}tsParseAbstractDeclaration(e,t){if(this.match(80))return e.abstract=!0,this.maybeTakeDecorators(t,this.parseClass(e,!0,!1));if(this.isContextual(129)){if(!this.hasFollowingLineBreak())return e.abstract=!0,this.raise(Tt.NonClassMethodPropertyHasAbstractModifer,e),this.tsParseInterfaceDeclaration(e)}else this.unexpected(null,80)}parseMethod(e,t,r,n,i,s,a){const o=super.parseMethod(e,t,r,n,i,s,a);if(o.abstract){if((this.hasPlugin("estree")?o.value:o).body){const{key:e}=o;this.raise(Tt.AbstractMethodHasImplementation,o,{methodName:"Identifier"!==e.type||o.computed?`[${this.input.slice(this.offsetToSourcePos(e.start),this.offsetToSourcePos(e.end))}]`:e.name})}}return o}tsParseTypeParameterName(){return this.parseIdentifier().name}shouldParseAsAmbientContext(){return!!this.getPluginOption("typescript","dts")}parse(){return this.shouldParseAsAmbientContext()&&(this.state.isAmbientContext=!0),super.parse()}getExpression(){return this.shouldParseAsAmbientContext()&&(this.state.isAmbientContext=!0),super.getExpression()}parseExportSpecifier(e,t,r,n){return!t&&n?(this.parseTypeOnlyImportExportSpecifier(e,!1,r),this.finishNode(e,"ExportSpecifier")):(e.exportKind="value",super.parseExportSpecifier(e,t,r,n))}parseImportSpecifier(e,t,r,n,i){return!t&&n?(this.parseTypeOnlyImportExportSpecifier(e,!0,r),this.finishNode(e,"ImportSpecifier")):(e.importKind="value",super.parseImportSpecifier(e,t,r,n,r?4098:4096))}parseTypeOnlyImportExportSpecifier(e,t,r){const n=t?"imported":"local",i=t?"local":"exported";let s,a=e[n],o=!1,l=!0;const c=a.loc.start;if(this.isContextual(93)){const e=this.parseIdentifier();if(this.isContextual(93)){const r=this.parseIdentifier();K(this.state.type)?(o=!0,a=e,s=t?this.parseIdentifier():this.parseModuleExportName(),l=!1):(s=r,l=!1)}else K(this.state.type)?(l=!1,s=t?this.parseIdentifier():this.parseModuleExportName()):(o=!0,a=e)}else K(this.state.type)&&(o=!0,t?(a=this.parseIdentifier(!0),this.isContextual(93)||this.checkReservedWord(a.name,a.loc.start,!0,!0)):a=this.parseModuleExportName());o&&r&&this.raise(t?Tt.TypeModifierIsUsedInTypeImports:Tt.TypeModifierIsUsedInTypeExports,c),e[n]=a,e[i]=s;e[t?"importKind":"exportKind"]=o?"type":"value",l&&this.eatContextual(93)&&(e[i]=t?this.parseIdentifier():this.parseModuleExportName()),e[i]||(e[i]=it(e[n])),t&&this.checkIdentifier(e[i],o?4098:4096)}},v8intrinsic:e=>class extends e{parseV8Intrinsic(){if(this.match(54)){const e=this.state.startLoc,t=this.startNode();if(this.next(),q(this.state.type)){const e=this.parseIdentifierName(),r=this.createIdentifier(t,e);if(r.type="V8IntrinsicIdentifier",this.match(10))return r}this.unexpected(e)}}parseExprAtom(e){return this.parseV8Intrinsic()||super.parseExprAtom(e)}},placeholders:e=>class extends e{parsePlaceholder(e){if(this.match(133)){const t=this.startNode();return this.next(),this.assertNoSpace(),t.name=super.parseIdentifier(!0),this.assertNoSpace(),this.expect(133),this.finishPlaceholder(t,e)}}finishPlaceholder(e,t){let r=e;return r.expectedNode&&r.type||(r=this.finishNode(r,"Placeholder")),r.expectedNode=t,r}getTokenFromCode(e){37===e&&37===this.input.charCodeAt(this.state.pos+1)?this.finishOp(133,2):super.getTokenFromCode(e)}parseExprAtom(e){return this.parsePlaceholder("Expression")||super.parseExprAtom(e)}parseIdentifier(e){return this.parsePlaceholder("Identifier")||super.parseIdentifier(e)}checkReservedWord(e,t,r,n){void 0!==e&&super.checkReservedWord(e,t,r,n)}parseBindingAtom(){return this.parsePlaceholder("Pattern")||super.parseBindingAtom()}isValidLVal(e,t,r){return"Placeholder"===e||super.isValidLVal(e,t,r)}toAssignable(e,t){e&&"Placeholder"===e.type&&"Expression"===e.expectedNode?e.expectedNode="Pattern":super.toAssignable(e,t)}chStartsBindingIdentifier(e,t){if(super.chStartsBindingIdentifier(e,t))return!0;return 133===this.lookahead().type}verifyBreakContinue(e,t){e.label&&"Placeholder"===e.label.type||super.verifyBreakContinue(e,t)}parseExpressionStatement(e,t){var r;if("Placeholder"!==t.type||null!=(r=t.extra)&&r.parenthesized)return super.parseExpressionStatement(e,t);if(this.match(14)){const r=e;return r.label=this.finishPlaceholder(t,"Identifier"),this.next(),r.body=super.parseStatementOrSloppyAnnexBFunctionDeclaration(),this.finishNode(r,"LabeledStatement")}this.semicolon();const n=e;return n.name=t.name,this.finishPlaceholder(n,"Statement")}parseBlock(e,t,r){return this.parsePlaceholder("BlockStatement")||super.parseBlock(e,t,r)}parseFunctionId(e){return this.parsePlaceholder("Identifier")||super.parseFunctionId(e)}parseClass(e,t,r){const n=t?"ClassDeclaration":"ClassExpression";this.next();const i=this.state.strict,s=this.parsePlaceholder("Identifier");if(s){if(!(this.match(81)||this.match(133)||this.match(5))){if(r||!t)return e.id=null,e.body=this.finishPlaceholder(s,"ClassBody"),this.finishNode(e,n);throw this.raise(Ct.ClassNameIsRequired,this.state.startLoc)}e.id=s}else this.parseClassId(e,t,r);return super.parseClassSuper(e),e.body=this.parsePlaceholder("ClassBody")||super.parseClassBody(!!e.superClass,i),this.finishNode(e,n)}parseExport(e,t){const r=this.parsePlaceholder("Identifier");if(!r)return super.parseExport(e,t);const n=e;if(!this.isContextual(98)&&!this.match(12))return n.specifiers=[],n.source=null,n.declaration=this.finishPlaceholder(r,"Declaration"),this.finishNode(n,"ExportNamedDeclaration");this.expectPlugin("exportDefaultFrom");const i=this.startNode();return i.exported=r,n.specifiers=[this.finishNode(i,"ExportDefaultSpecifier")],super.parseExport(n,t)}isExportDefaultSpecifier(){if(this.match(65)){const e=this.nextTokenStart();if(this.isUnparsedContextual(e,"from")&&this.input.startsWith(J(133),this.nextTokenStartSince(e+4)))return!0}return super.isExportDefaultSpecifier()}maybeParseExportDefaultSpecifier(e,t){var r;return!(null==(r=e.specifiers)||!r.length)||super.maybeParseExportDefaultSpecifier(e,t)}checkExport(e){const{specifiers:t}=e;null!=t&&t.length&&(e.specifiers=t.filter((e=>"Placeholder"===e.exported.type))),super.checkExport(e),e.specifiers=t}parseImport(e){const t=this.parsePlaceholder("Identifier");if(!t)return super.parseImport(e);if(e.specifiers=[],!this.isContextual(98)&&!this.match(12))return e.source=this.finishPlaceholder(t,"StringLiteral"),this.semicolon(),this.finishNode(e,"ImportDeclaration");const r=this.startNodeAtNode(t);if(r.local=t,e.specifiers.push(this.finishNode(r,"ImportDefaultSpecifier")),this.eat(12)){this.maybeParseStarImportSpecifier(e)||this.parseNamedImportSpecifiers(e)}return this.expectContextual(98),e.source=this.parseImportSource(),this.semicolon(),this.finishNode(e,"ImportDeclaration")}parseImportSource(){return this.parsePlaceholder("StringLiteral")||super.parseImportSource()}assertNoSpace(){this.state.start>this.offsetToSourcePos(this.state.lastTokEndLoc.index)&&this.raise(Ct.UnexpectedSpace,this.state.lastTokEndLoc)}}},Mt=Object.keys(_t);class kt extends vt{checkProto(e,t,r,n){if("SpreadElement"===e.type||this.isObjectMethod(e)||e.computed||e.shorthand)return;const i=e.key;if("__proto__"===("Identifier"===i.type?i.name:i.value)){if(t)return void this.raise(b.RecordNoProto,i);r.used&&(n?null===n.doubleProtoLoc&&(n.doubleProtoLoc=i.loc.start):this.raise(b.DuplicateProto,i)),r.used=!0}}shouldExitDescending(e,t){return"ArrowFunctionExpression"===e.type&&this.offsetToSourcePos(e.start)===t}getExpression(){this.enterInitialScopes(),this.nextToken();const e=this.parseExpression();return this.match(140)||this.unexpected(),this.finalizeRemainingComments(),e.comments=this.comments,e.errors=this.state.errors,128&this.optionFlags&&(e.tokens=this.tokens),e}parseExpression(e,t){return e?this.disallowInAnd((()=>this.parseExpressionBase(t))):this.allowInAnd((()=>this.parseExpressionBase(t)))}parseExpressionBase(e){const t=this.state.startLoc,r=this.parseMaybeAssign(e);if(this.match(12)){const n=this.startNodeAt(t);for(n.expressions=[r];this.eat(12);)n.expressions.push(this.parseMaybeAssign(e));return this.toReferencedList(n.expressions),this.finishNode(n,"SequenceExpression")}return r}parseMaybeAssignDisallowIn(e,t){return this.disallowInAnd((()=>this.parseMaybeAssign(e,t)))}parseMaybeAssignAllowIn(e,t){return this.allowInAnd((()=>this.parseMaybeAssign(e,t)))}setOptionalParametersError(e,t){var r;e.optionalParametersLoc=null!=(r=null==t?void 0:t.loc)?r:this.state.startLoc}parseMaybeAssign(e,t){const r=this.state.startLoc;if(this.isContextual(108)&&this.prodParam.hasYield){let e=this.parseYield();return t&&(e=t.call(this,e,r)),e}let n;e?n=!1:(e=new tt,n=!0);const{type:i}=this.state;(10===i||q(i))&&(this.state.potentialArrowAt=this.state.start);let s=this.parseMaybeConditional(e);if(t&&(s=t.call(this,s,r)),(a=this.state.type)>=29&&a<=33){const t=this.startNodeAt(r),n=this.state.value;if(t.operator=n,this.match(29)){this.toAssignable(s,!0),t.left=s;const n=r.index;null!=e.doubleProtoLoc&&e.doubleProtoLoc.index>=n&&(e.doubleProtoLoc=null),null!=e.shorthandAssignLoc&&e.shorthandAssignLoc.index>=n&&(e.shorthandAssignLoc=null),null!=e.privateKeyLoc&&e.privateKeyLoc.index>=n&&(this.checkDestructuringPrivate(e),e.privateKeyLoc=null)}else t.left=s;return this.next(),t.right=this.parseMaybeAssign(),this.checkLVal(s,this.finishNode(t,"AssignmentExpression")),t}var a;return n&&this.checkExpressionErrors(e,!0),s}parseMaybeConditional(e){const t=this.state.startLoc,r=this.state.potentialArrowAt,n=this.parseExprOps(e);return this.shouldExitDescending(n,r)?n:this.parseConditional(n,t,e)}parseConditional(e,t,r){if(this.eat(17)){const r=this.startNodeAt(t);return r.test=e,r.consequent=this.parseMaybeAssignAllowIn(),this.expect(14),r.alternate=this.parseMaybeAssign(),this.finishNode(r,"ConditionalExpression")}return e}parseMaybeUnaryOrPrivate(e){return this.match(139)?this.parsePrivateName():this.parseMaybeUnary(e)}parseExprOps(e){const t=this.state.startLoc,r=this.state.potentialArrowAt,n=this.parseMaybeUnaryOrPrivate(e);return this.shouldExitDescending(n,r)?n:this.parseExprOp(n,t,-1)}parseExprOp(e,t,r){if(this.isPrivateName(e)){const t=this.getPrivateNameSV(e);(r>=z(58)||!this.prodParam.hasIn||!this.match(58))&&this.raise(b.PrivateInExpectedIn,e,{identifierName:t}),this.classScope.usePrivateName(t,e.loc.start)}const n=this.state.type;if((i=n)>=39&&i<=59&&(this.prodParam.hasIn||!this.match(58))){let i=z(n);if(i>r){if(39===n){if(this.expectPlugin("pipelineOperator"),this.state.inFSharpPipelineDirectBody)return e;this.checkPipelineAtInfixOperator(e,t)}const s=this.startNodeAt(t);s.left=e,s.operator=this.state.value;const a=41===n||42===n,o=40===n;if(o&&(i=z(42)),this.next(),39===n&&this.hasPlugin(["pipelineOperator",{proposal:"minimal"}])&&96===this.state.type&&this.prodParam.hasAwait)throw this.raise(b.UnexpectedAwaitAfterPipelineBody,this.state.startLoc);s.right=this.parseExprOpRightExpr(n,i);const l=this.finishNode(s,a||o?"LogicalExpression":"BinaryExpression"),c=this.state.type;if(o&&(41===c||42===c)||a&&40===c)throw this.raise(b.MixingCoalesceWithLogical,this.state.startLoc);return this.parseExprOp(l,t,r)}}var i;return e}parseExprOpRightExpr(e,t){const r=this.state.startLoc;if(39===e){switch(this.getPluginOption("pipelineOperator","proposal")){case"hack":return this.withTopicBindingContext((()=>this.parseHackPipeBody()));case"fsharp":return this.withSoloAwaitPermittingContext((()=>this.parseFSharpPipelineBody(t)))}if("smart"===this.getPluginOption("pipelineOperator","proposal"))return this.withTopicBindingContext((()=>{if(this.prodParam.hasYield&&this.isContextual(108))throw this.raise(b.PipeBodyIsTighter,this.state.startLoc);return this.parseSmartPipelineBodyInStyle(this.parseExprOpBaseRightExpr(e,t),r)}))}return this.parseExprOpBaseRightExpr(e,t)}parseExprOpBaseRightExpr(e,t){const r=this.state.startLoc;return this.parseExprOp(this.parseMaybeUnaryOrPrivate(),r,57===e?t-1:t)}parseHackPipeBody(){var e;const{startLoc:t}=this.state,r=this.parseMaybeAssign();return!p.has(r.type)||null!=(e=r.extra)&&e.parenthesized||this.raise(b.PipeUnparenthesizedBody,t,{type:r.type}),this.topicReferenceWasUsedInCurrentContext()||this.raise(b.PipeTopicUnused,t),r}checkExponentialAfterUnary(e){this.match(57)&&this.raise(b.UnexpectedTokenUnaryExponentiation,e.argument)}parseMaybeUnary(e,t){const r=this.state.startLoc,n=this.isContextual(96);if(n&&this.recordAwaitIfAllowed()){this.next();const e=this.parseAwait(r);return t||this.checkExponentialAfterUnary(e),e}const i=this.match(34),s=this.startNode();if(a=this.state.type,F[a]){s.operator=this.state.value,s.prefix=!0,this.match(72)&&this.expectPlugin("throwExpressions");const r=this.match(89);if(this.next(),s.argument=this.parseMaybeUnary(null,!0),this.checkExpressionErrors(e,!0),this.state.strict&&r){const e=s.argument;"Identifier"===e.type?this.raise(b.StrictDelete,s):this.hasPropertyAsPrivateName(e)&&this.raise(b.DeletePrivateField,s)}if(!i)return t||this.checkExponentialAfterUnary(s),this.finishNode(s,"UnaryExpression")}var a;const o=this.parseUpdate(s,i,e);if(n){const{type:e}=this.state;if((this.hasPlugin("v8intrinsic")?W(e):W(e)&&!this.match(54))&&!this.isAmbiguousAwait())return this.raiseOverwrite(b.AwaitNotInAsyncContext,r),this.parseAwait(r)}return o}parseUpdate(e,t,r){if(t){const t=e;return this.checkLVal(t.argument,this.finishNode(t,"UpdateExpression")),e}const n=this.state.startLoc;let i=this.parseExprSubscripts(r);if(this.checkExpressionErrors(r,!1))return i;for(;34===this.state.type&&!this.canInsertSemicolon();){const e=this.startNodeAt(n);e.operator=this.state.value,e.prefix=!1,e.argument=i,this.next(),this.checkLVal(i,i=this.finishNode(e,"UpdateExpression"))}return i}parseExprSubscripts(e){const t=this.state.startLoc,r=this.state.potentialArrowAt,n=this.parseExprAtom(e);return this.shouldExitDescending(n,r)?n:this.parseSubscripts(n,t)}parseSubscripts(e,t,r){const n={optionalChainMember:!1,maybeAsyncArrow:this.atPossibleAsyncArrow(e),stop:!1};do{e=this.parseSubscript(e,t,r,n),n.maybeAsyncArrow=!1}while(!n.stop);return e}parseSubscript(e,t,r,n){const{type:i}=this.state;if(!r&&15===i)return this.parseBind(e,t,r,n);if(X(i))return this.parseTaggedTemplateExpression(e,t,n);let s=!1;if(18===i){if(r&&(this.raise(b.OptionalChainingNoNew,this.state.startLoc),40===this.lookaheadCharCode()))return n.stop=!0,e;n.optionalChainMember=s=!0,this.next()}if(!r&&this.match(10))return this.parseCoverCallAndAsyncArrowHead(e,t,n,s);{const r=this.eat(0);return r||s||this.eat(16)?this.parseMember(e,t,n,r,s):(n.stop=!0,e)}}parseMember(e,t,r,n,i){const s=this.startNodeAt(t);return s.object=e,s.computed=n,n?(s.property=this.parseExpression(),this.expect(3)):this.match(139)?("Super"===e.type&&this.raise(b.SuperPrivateField,t),this.classScope.usePrivateName(this.state.value,this.state.startLoc),s.property=this.parsePrivateName()):s.property=this.parseIdentifier(!0),r.optionalChainMember?(s.optional=i,this.finishNode(s,"OptionalMemberExpression")):this.finishNode(s,"MemberExpression")}parseBind(e,t,r,n){const i=this.startNodeAt(t);return i.object=e,this.next(),i.callee=this.parseNoCallExpr(),n.stop=!0,this.parseSubscripts(this.finishNode(i,"BindExpression"),t,r)}parseCoverCallAndAsyncArrowHead(e,t,r,n){const i=this.state.maybeInArrowParameters;let s=null;this.state.maybeInArrowParameters=!0,this.next();const a=this.startNodeAt(t);a.callee=e;const{maybeAsyncArrow:o,optionalChainMember:l}=r;o&&(this.expressionScope.enter(new ze(2)),s=new tt),l&&(a.optional=n),a.arguments=n?this.parseCallExpressionArguments(11):this.parseCallExpressionArguments(11,"Super"!==e.type,a,s);let c=this.finishCallExpression(a,l);return o&&this.shouldParseAsyncArrow()&&!n?(r.stop=!0,this.checkDestructuringPrivate(s),this.expressionScope.validateAsPattern(),this.expressionScope.exit(),c=this.parseAsyncArrowFromCallExpression(this.startNodeAt(t),c)):(o&&(this.checkExpressionErrors(s,!0),this.expressionScope.exit()),this.toReferencedArguments(c)),this.state.maybeInArrowParameters=i,c}toReferencedArguments(e,t){this.toReferencedListDeep(e.arguments,t)}parseTaggedTemplateExpression(e,t,r){const n=this.startNodeAt(t);return n.tag=e,n.quasi=this.parseTemplate(!0),r.optionalChainMember&&this.raise(b.OptionalChainingNoTemplate,t),this.finishNode(n,"TaggedTemplateExpression")}atPossibleAsyncArrow(e){return"Identifier"===e.type&&"async"===e.name&&this.state.lastTokEndLoc.index===e.end&&!this.canInsertSemicolon()&&e.end-e.start==5&&this.offsetToSourcePos(e.start)===this.state.potentialArrowAt}finishCallExpression(e,t){if("Import"===e.callee.type)if(0===e.arguments.length||e.arguments.length>2)this.raise(b.ImportCallArity,e);else for(const t of e.arguments)"SpreadElement"===t.type&&this.raise(b.ImportCallSpreadArgument,t);return this.finishNode(e,t?"OptionalCallExpression":"CallExpression")}parseCallExpressionArguments(e,t,r,n){const i=[];let s=!0;const a=this.state.inFSharpPipelineDirectBody;for(this.state.inFSharpPipelineDirectBody=!1;!this.eat(e);){if(s)s=!1;else if(this.expect(12),this.match(e)){r&&this.addTrailingCommaExtraToNode(r),this.next();break}i.push(this.parseExprListItem(!1,n,t))}return this.state.inFSharpPipelineDirectBody=a,i}shouldParseAsyncArrow(){return this.match(19)&&!this.canInsertSemicolon()}parseAsyncArrowFromCallExpression(e,t){var r;return this.resetPreviousNodeTrailingComments(t),this.expect(19),this.parseArrowExpression(e,t.arguments,!0,null==(r=t.extra)?void 0:r.trailingCommaLoc),t.innerComments&&Ee(e,t.innerComments),t.callee.trailingComments&&Ee(e,t.callee.trailingComments),e}parseNoCallExpr(){const e=this.state.startLoc;return this.parseSubscripts(this.parseExprAtom(),e,!0)}parseExprAtom(e){let t,r=null;const{type:n}=this.state;switch(n){case 79:return this.parseSuper();case 83:return t=this.startNode(),this.next(),this.match(16)?this.parseImportMetaProperty(t):this.match(10)?256&this.optionFlags?this.parseImportCall(t):this.finishNode(t,"Import"):(this.raise(b.UnsupportedImport,this.state.lastTokStartLoc),this.finishNode(t,"Import"));case 78:return t=this.startNode(),this.next(),this.finishNode(t,"ThisExpression");case 90:return this.parseDo(this.startNode(),!1);case 56:case 31:return this.readRegexp(),this.parseRegExpLiteral(this.state.value);case 135:return this.parseNumericLiteral(this.state.value);case 136:return this.parseBigIntLiteral(this.state.value);case 134: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:{const e=this.state.potentialArrowAt===this.state.start;return this.parseParenAndDistinguishExpression(e)}case 2:case 1:return this.parseArrayLike(2===this.state.type?4:3,!1,!0);case 0:return this.parseArrayLike(3,!0,!1,e);case 6:case 7:return this.parseObjectLike(6===this.state.type?9:8,!1,!0);case 5:return this.parseObjectLike(8,!1,!1,e);case 68:return this.parseFunctionOrFunctionSent();case 26:r=this.parseDecorators();case 80:return this.parseClass(this.maybeTakeDecorators(r,this.startNode()),!1);case 77:return this.parseNewOrNewTarget();case 25:case 24:return this.parseTemplate(!1);case 15:{t=this.startNode(),this.next(),t.object=null;const e=t.callee=this.parseNoCallExpr();if("MemberExpression"===e.type)return this.finishNode(t,"BindExpression");throw this.raise(b.UnsupportedBind,e)}case 139:return this.raise(b.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:{const e=this.getPluginOption("pipelineOperator","proposal");if(e)return this.parseTopicReference(e);this.unexpected();break}case 47:{const e=this.input.codePointAt(this.nextTokenStart());se(e)||62===e?this.expectOnePlugin(["jsx","flow","typescript"]):this.unexpected();break}default:if(137===n)return this.parseDecimalLiteral(this.state.value);if(q(n)){if(this.isContextual(127)&&123===this.lookaheadInLineCharCode())return this.parseModuleExpression();const e=this.state.potentialArrowAt===this.state.start,t=this.state.containsEsc,r=this.parseIdentifier();if(!t&&"async"===r.name&&!this.canInsertSemicolon()){const{type:e}=this.state;if(68===e)return this.resetPreviousNodeTrailingComments(r),this.next(),this.parseAsyncFunctionExpression(this.startNodeAtNode(r));if(q(e))return 61===this.lookaheadCharCode()?this.parseAsyncArrowUnaryFunction(this.startNodeAtNode(r)):r;if(90===e)return this.resetPreviousNodeTrailingComments(r),this.parseDo(this.startNodeAtNode(r),!0)}return e&&this.match(19)&&!this.canInsertSemicolon()?(this.next(),this.parseArrowExpression(this.startNodeAtNode(r),[r],!1)):r}this.unexpected()}}parseTopicReferenceThenEqualsSign(e,t){const r=this.getPluginOption("pipelineOperator","proposal");if(r)return this.state.type=e,this.state.value=t,this.state.pos--,this.state.end--,this.state.endLoc=s(this.state.endLoc,-1),this.parseTopicReference(r);this.unexpected()}parseTopicReference(e){const t=this.startNode(),r=this.state.startLoc,n=this.state.type;return this.next(),this.finishTopicReference(t,r,e,n)}finishTopicReference(e,t,r,n){if(this.testTopicReferenceConfiguration(r,t,n))return"hack"===r?(this.topicReferenceIsAllowedInCurrentContext()||this.raise(b.PipeTopicUnbound,t),this.registerTopicReference(),this.finishNode(e,"TopicReference")):(this.topicReferenceIsAllowedInCurrentContext()||this.raise(b.PrimaryTopicNotAllowed,t),this.registerTopicReference(),this.finishNode(e,"PipelinePrimaryTopicReference"));throw this.raise(b.PipeTopicUnconfiguredToken,t,{token:J(n)})}testTopicReferenceConfiguration(e,t,r){switch(e){case"hack":return this.hasPlugin(["pipelineOperator",{topicToken:J(r)}]);case"smart":return 27===r;default:throw this.raise(b.PipeTopicRequiresHackPipes,t)}}parseAsyncArrowUnaryFunction(e){this.prodParam.enter(Ze(!0,this.prodParam.hasYield));const t=[this.parseIdentifier()];return this.prodParam.exit(),this.hasPrecedingLineBreak()&&this.raise(b.LineTerminatorBeforeArrow,this.state.curPosition()),this.expect(19),this.parseArrowExpression(e,t,!0)}parseDo(e,t){this.expectPlugin("doExpressions"),t&&this.expectPlugin("asyncDoExpressions"),e.async=t,this.next();const r=this.state.labels;return this.state.labels=[],t?(this.prodParam.enter(2),e.body=this.parseBlock(),this.prodParam.exit()):e.body=this.parseBlock(),this.state.labels=r,this.finishNode(e,"DoExpression")}parseSuper(){const e=this.startNode();return this.next(),!this.match(10)||this.scope.allowDirectSuper||16&this.optionFlags?this.scope.allowSuper||16&this.optionFlags||this.raise(b.UnexpectedSuper,e):this.raise(b.SuperNotAllowed,e),this.match(10)||this.match(0)||this.match(16)||this.raise(b.UnsupportedSuper,e),this.finishNode(e,"Super")}parsePrivateName(){const e=this.startNode(),t=this.startNodeAt(s(this.state.startLoc,1)),r=this.state.value;return this.next(),e.id=this.createIdentifier(t,r),this.finishNode(e,"PrivateName")}parseFunctionOrFunctionSent(){const e=this.startNode();if(this.next(),this.prodParam.hasYield&&this.match(16)){const t=this.createIdentifier(this.startNodeAtNode(e),"function");return this.next(),this.match(103)?this.expectPlugin("functionSent"):this.hasPlugin("functionSent")||this.unexpected(),this.parseMetaProperty(e,t,"sent")}return this.parseFunction(e)}parseMetaProperty(e,t,r){e.meta=t;const n=this.state.containsEsc;return e.property=this.parseIdentifier(!0),(e.property.name!==r||n)&&this.raise(b.UnsupportedMetaProperty,e.property,{target:t.name,onlyValidPropertyName:r}),this.finishNode(e,"MetaProperty")}parseImportMetaProperty(e){const t=this.createIdentifier(this.startNodeAtNode(e),"import");if(this.next(),this.isContextual(101))this.inModule||this.raise(b.ImportMetaOutsideModule,t),this.sawUnambiguousESM=!0;else if(this.isContextual(105)||this.isContextual(97)){const t=this.isContextual(105);if(this.expectPlugin(t?"sourcePhaseImports":"deferredImportEvaluation"),!(256&this.optionFlags))throw this.raise(b.DynamicImportPhaseRequiresImportExpressions,this.state.startLoc,{phase:this.state.value});return this.next(),e.phase=t?"source":"defer",this.parseImportCall(e)}return this.parseMetaProperty(e,t,"meta")}parseLiteralAtNode(e,t,r){return this.addExtra(r,"rawValue",e),this.addExtra(r,"raw",this.input.slice(this.offsetToSourcePos(r.start),this.state.end)),r.value=e,this.next(),this.finishNode(r,t)}parseLiteral(e,t){const r=this.startNode();return this.parseLiteralAtNode(e,t,r)}parseStringLiteral(e){return this.parseLiteral(e,"StringLiteral")}parseNumericLiteral(e){return this.parseLiteral(e,"NumericLiteral")}parseBigIntLiteral(e){return this.parseLiteral(e,"BigIntLiteral")}parseDecimalLiteral(e){return this.parseLiteral(e,"DecimalLiteral")}parseRegExpLiteral(e){const t=this.startNode();return this.addExtra(t,"raw",this.input.slice(this.offsetToSourcePos(t.start),this.state.end)),t.pattern=e.pattern,t.flags=e.flags,this.next(),this.finishNode(t,"RegExpLiteral")}parseBooleanLiteral(e){const t=this.startNode();return t.value=e,this.next(),this.finishNode(t,"BooleanLiteral")}parseNullLiteral(){const e=this.startNode();return this.next(),this.finishNode(e,"NullLiteral")}parseParenAndDistinguishExpression(e){const t=this.state.startLoc;let r;this.next(),this.expressionScope.enter(new ze(1));const n=this.state.maybeInArrowParameters,i=this.state.inFSharpPipelineDirectBody;this.state.maybeInArrowParameters=!0,this.state.inFSharpPipelineDirectBody=!1;const s=this.state.startLoc,a=[],o=new tt;let l,c,u=!0;for(;!this.match(11);){if(u)u=!1;else if(this.expect(12,null===o.optionalParametersLoc?null:o.optionalParametersLoc),this.match(11)){c=this.state.startLoc;break}if(this.match(21)){const e=this.state.startLoc;if(l=this.state.startLoc,a.push(this.parseParenItem(this.parseRestBinding(),e)),!this.checkCommaAfterRest(41))break}else a.push(this.parseMaybeAssignAllowIn(o,this.parseParenItem))}const p=this.state.lastTokEndLoc;this.expect(11),this.state.maybeInArrowParameters=n,this.state.inFSharpPipelineDirectBody=i;let d=this.startNodeAt(t);return e&&this.shouldParseArrow(a)&&(d=this.parseArrow(d))?(this.checkDestructuringPrivate(o),this.expressionScope.validateAsPattern(),this.expressionScope.exit(),this.parseArrowExpression(d,a,!1),d):(this.expressionScope.exit(),a.length||this.unexpected(this.state.lastTokStartLoc),c&&this.unexpected(c),l&&this.unexpected(l),this.checkExpressionErrors(o,!0),this.toReferencedListDeep(a,!0),a.length>1?(r=this.startNodeAt(s),r.expressions=a,this.finishNode(r,"SequenceExpression"),this.resetEndLocation(r,p)):r=a[0],this.wrapParenthesis(t,r))}wrapParenthesis(e,t){if(!(512&this.optionFlags))return this.addExtra(t,"parenthesized",!0),this.addExtra(t,"parenStart",e.index),this.takeSurroundingComments(t,e.index,this.state.lastTokEndLoc.index),t;const r=this.startNodeAt(e);return r.expression=t,this.finishNode(r,"ParenthesizedExpression")}shouldParseArrow(e){return!this.canInsertSemicolon()}parseArrow(e){if(this.eat(19))return e}parseParenItem(e,t){return e}parseNewOrNewTarget(){const e=this.startNode();if(this.next(),this.match(16)){const t=this.createIdentifier(this.startNodeAtNode(e),"new");this.next();const r=this.parseMetaProperty(e,t,"target");return this.scope.inNonArrowFunction||this.scope.inClass||4&this.optionFlags||this.raise(b.UnexpectedNewTarget,r),r}return this.parseNew(e)}parseNew(e){if(this.parseNewCallee(e),this.eat(10)){const t=this.parseExprList(11);this.toReferencedList(t),e.arguments=t}else e.arguments=[];return this.finishNode(e,"NewExpression")}parseNewCallee(e){const t=this.match(83),r=this.parseNoCallExpr();e.callee=r,!t||"Import"!==r.type&&"ImportExpression"!==r.type||this.raise(b.ImportCallNotNewExpression,r)}parseTemplateElement(e){const{start:t,startLoc:r,end:n,value:i}=this.state,a=t+1,o=this.startNodeAt(s(r,1));null===i&&(e||this.raise(b.InvalidEscapeSequenceTemplate,s(this.state.firstInvalidTemplateEscapePos,1)));const l=this.match(24),c=l?-1:-2,u=n+c;o.value={raw:this.input.slice(a,u).replace(/\r\n?/g,"\n"),cooked:null===i?null:i.slice(1,c)},o.tail=l,this.next();const p=this.finishNode(o,"TemplateElement");return this.resetEndLocation(p,s(this.state.lastTokEndLoc,c)),p}parseTemplate(e){const t=this.startNode();let r=this.parseTemplateElement(e);const n=[r],i=[];for(;!r.tail;)i.push(this.parseTemplateSubstitution()),this.readTemplateContinuation(),n.push(r=this.parseTemplateElement(e));return t.expressions=i,t.quasis=n,this.finishNode(t,"TemplateLiteral")}parseTemplateSubstitution(){return this.parseExpression()}parseObjectLike(e,t,r,n){r&&this.expectPlugin("recordAndTuple");const i=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!1;const s=Object.create(null);let a=!0;const o=this.startNode();for(o.properties=[],this.next();!this.match(e);){if(a)a=!1;else if(this.expect(12),this.match(e)){this.addTrailingCommaExtraToNode(o);break}let i;t?i=this.parseBindingProperty():(i=this.parsePropertyDefinition(n),this.checkProto(i,r,s,n)),r&&!this.isObjectProperty(i)&&"SpreadElement"!==i.type&&this.raise(b.InvalidRecordProperty,i),i.shorthand&&this.addExtra(i,"shorthand",!0),o.properties.push(i)}this.next(),this.state.inFSharpPipelineDirectBody=i;let l="ObjectExpression";return t?l="ObjectPattern":r&&(l="RecordExpression"),this.finishNode(o,l)}addTrailingCommaExtraToNode(e){this.addExtra(e,"trailingComma",this.state.lastTokStartLoc.index),this.addExtra(e,"trailingCommaLoc",this.state.lastTokStartLoc,!1)}maybeAsyncOrAccessorProp(e){return!e.computed&&"Identifier"===e.key.type&&(this.isLiteralPropertyName()||this.match(0)||this.match(55))}parsePropertyDefinition(e){let t=[];if(this.match(26))for(this.hasPlugin("decorators")&&this.raise(b.UnsupportedPropertyDecorator,this.state.startLoc);this.match(26);)t.push(this.parseDecorator());const r=this.startNode();let n,i=!1,s=!1;if(this.match(21))return t.length&&this.unexpected(),this.parseSpread();t.length&&(r.decorators=t,t=[]),r.method=!1,e&&(n=this.state.startLoc);let a=this.eat(55);this.parsePropertyNamePrefixOperator(r);const o=this.state.containsEsc;if(this.parsePropertyName(r,e),!a&&!o&&this.maybeAsyncOrAccessorProp(r)){const{key:e}=r,t=e.name;"async"!==t||this.hasPrecedingLineBreak()||(i=!0,this.resetPreviousNodeTrailingComments(e),a=this.eat(55),this.parsePropertyName(r)),"get"!==t&&"set"!==t||(s=!0,this.resetPreviousNodeTrailingComments(e),r.kind=t,this.match(55)&&(a=!0,this.raise(b.AccessorIsGenerator,this.state.curPosition(),{kind:t}),this.next()),this.parsePropertyName(r))}return this.parseObjPropValue(r,n,a,i,!1,s,e)}getGetterSetterExpectedParamCount(e){return"get"===e.kind?0:1}getObjectOrClassMethodParams(e){return e.params}checkGetterSetterParams(e){var t;const r=this.getGetterSetterExpectedParamCount(e),n=this.getObjectOrClassMethodParams(e);n.length!==r&&this.raise("get"===e.kind?b.BadGetterArity:b.BadSetterArity,e),"set"===e.kind&&"RestElement"===(null==(t=n[n.length-1])?void 0:t.type)&&this.raise(b.BadSetterRestParameter,e)}parseObjectMethod(e,t,r,n,i){if(i){const r=this.parseMethod(e,t,!1,!1,!1,"ObjectMethod");return this.checkGetterSetterParams(r),r}if(r||t||this.match(10))return n&&this.unexpected(),e.kind="method",e.method=!0,this.parseMethod(e,t,r,!1,!1,"ObjectMethod")}parseObjectProperty(e,t,r,n){if(e.shorthand=!1,this.eat(14))return e.value=r?this.parseMaybeDefault(this.state.startLoc):this.parseMaybeAssignAllowIn(n),this.finishNode(e,"ObjectProperty");if(!e.computed&&"Identifier"===e.key.type){if(this.checkReservedWord(e.key.name,e.key.loc.start,!0,!1),r)e.value=this.parseMaybeDefault(t,it(e.key));else if(this.match(29)){const r=this.state.startLoc;null!=n?null===n.shorthandAssignLoc&&(n.shorthandAssignLoc=r):this.raise(b.InvalidCoverInitializedName,r),e.value=this.parseMaybeDefault(t,it(e.key))}else e.value=it(e.key);return e.shorthand=!0,this.finishNode(e,"ObjectProperty")}}parseObjPropValue(e,t,r,n,i,s,a){const o=this.parseObjectMethod(e,r,n,i,s)||this.parseObjectProperty(e,t,i,a);return o||this.unexpected(),o}parsePropertyName(e,t){if(this.eat(0))e.computed=!0,e.key=this.parseMaybeAssignAllowIn(),this.expect(3);else{const{type:r,value:n}=this.state;let i;if(K(r))i=this.parseIdentifier(!0);else switch(r){case 135:i=this.parseNumericLiteral(n);break;case 134:i=this.parseStringLiteral(n);break;case 136:i=this.parseBigIntLiteral(n);break;case 139:{const e=this.state.startLoc;null!=t?null===t.privateKeyLoc&&(t.privateKeyLoc=e):this.raise(b.UnexpectedPrivateField,e),i=this.parsePrivateName();break}default:if(137===r){i=this.parseDecimalLiteral(n);break}this.unexpected()}e.key=i,139!==r&&(e.computed=!1)}}initFunction(e,t){e.id=null,e.generator=!1,e.async=t}parseMethod(e,t,r,n,i,s,a=!1){this.initFunction(e,r),e.generator=t,this.scope.enter(18|(a?64:0)|(i?32:0)),this.prodParam.enter(Ze(r,e.generator)),this.parseFunctionParams(e,n);const o=this.parseFunctionBodyAndFinish(e,s,!0);return this.prodParam.exit(),this.scope.exit(),o}parseArrayLike(e,t,r,n){r&&this.expectPlugin("recordAndTuple");const i=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!1;const s=this.startNode();return this.next(),s.elements=this.parseExprList(e,!r,n,s),this.state.inFSharpPipelineDirectBody=i,this.finishNode(s,r?"TupleExpression":"ArrayExpression")}parseArrowExpression(e,t,r,n){this.scope.enter(6);let i=Ze(r,!1);!this.match(5)&&this.prodParam.hasIn&&(i|=8),this.prodParam.enter(i),this.initFunction(e,r);const s=this.state.maybeInArrowParameters;return t&&(this.state.maybeInArrowParameters=!0,this.setArrowFunctionParameters(e,t,n)),this.state.maybeInArrowParameters=!1,this.parseFunctionBody(e,!0),this.prodParam.exit(),this.scope.exit(),this.state.maybeInArrowParameters=s,this.finishNode(e,"ArrowFunctionExpression")}setArrowFunctionParameters(e,t,r){this.toAssignableList(t,r,!1),e.params=t}parseFunctionBodyAndFinish(e,t,r=!1){return this.parseFunctionBody(e,!1,r),this.finishNode(e,t)}parseFunctionBody(e,t,r=!1){const n=t&&!this.match(5);if(this.expressionScope.enter(Ye()),n)e.body=this.parseMaybeAssign(),this.checkParams(e,!1,t,!1);else{const n=this.state.strict,i=this.state.labels;this.state.labels=[],this.prodParam.enter(4|this.prodParam.currentFlags()),e.body=this.parseBlock(!0,!1,(i=>{const s=!this.isSimpleParamList(e.params);i&&s&&this.raise(b.IllegalLanguageModeDirective,"method"!==e.kind&&"constructor"!==e.kind||!e.key?e:e.key.loc.end);const a=!n&&this.state.strict;this.checkParams(e,!(this.state.strict||t||r||s),t,a),this.state.strict&&e.id&&this.checkIdentifier(e.id,65,a)})),this.prodParam.exit(),this.state.labels=i}this.expressionScope.exit()}isSimpleParameter(e){return"Identifier"===e.type}isSimpleParamList(e){for(let t=0,r=e.length;t<r;t++)if(!this.isSimpleParameter(e[t]))return!1;return!0}checkParams(e,t,r,n=!0){const i=!t&&new Set,s={type:"FormalParameters"};for(const t of e.params)this.checkLVal(t,s,5,i,n)}parseExprList(e,t,r,n){const i=[];let s=!0;for(;!this.eat(e);){if(s)s=!1;else if(this.expect(12),this.match(e)){n&&this.addTrailingCommaExtraToNode(n),this.next();break}i.push(this.parseExprListItem(t,r))}return i}parseExprListItem(e,t,r){let n;if(this.match(12))e||this.raise(b.UnexpectedToken,this.state.curPosition(),{unexpected:","}),n=null;else if(this.match(21)){const e=this.state.startLoc;n=this.parseParenItem(this.parseSpread(t),e)}else if(this.match(17)){this.expectPlugin("partialApplication"),r||this.raise(b.UnexpectedArgumentPlaceholder,this.state.startLoc);const e=this.startNode();this.next(),n=this.finishNode(e,"ArgumentPlaceholder")}else n=this.parseMaybeAssignAllowIn(t,this.parseParenItem);return n}parseIdentifier(e){const t=this.startNode(),r=this.parseIdentifierName(e);return this.createIdentifier(t,r)}createIdentifier(e,t){return e.name=t,e.loc.identifierName=t,this.finishNode(e,"Identifier")}parseIdentifierName(e){let t;const{startLoc:r,type:n}=this.state;K(n)?t=this.state.value:this.unexpected();const i=n<=92;return e?i&&this.replaceToken(132):this.checkReservedWord(t,r,i,!1),this.next(),t}checkReservedWord(e,t,r,n){if(e.length>10)return;if(!function(e){return ye.has(e)}(e))return;if(r&&function(e){return ce.has(e)}(e))return void this.raise(b.UnexpectedKeyword,t,{keyword:e});if((this.state.strict?n?me:fe:de)(e,this.inModule))this.raise(b.UnexpectedReservedWord,t,{reservedWord:e});else if("yield"===e){if(this.prodParam.hasYield)return void this.raise(b.YieldBindingIdentifier,t)}else if("await"===e){if(this.prodParam.hasAwait)return void this.raise(b.AwaitBindingIdentifier,t);if(this.scope.inStaticBlock)return void this.raise(b.AwaitBindingIdentifierInStaticBlock,t);this.expressionScope.recordAsyncArrowParametersError(t)}else if("arguments"===e&&this.scope.inClassAndNotInNonArrowFunction)return void this.raise(b.ArgumentsInClass,t)}recordAwaitIfAllowed(){const e=this.prodParam.hasAwait||1&this.optionFlags&&!this.scope.inFunction;return e&&!this.scope.inFunction&&(this.state.hasTopLevelAwait=!0),e}parseAwait(e){const t=this.startNodeAt(e);return this.expressionScope.recordParameterInitializerError(b.AwaitExpressionFormalParameter,t),this.eat(55)&&this.raise(b.ObsoleteAwaitStar,t),this.scope.inFunction||1&this.optionFlags||(this.isAmbiguousAwait()?this.ambiguousScriptDifferentAst=!0:this.sawUnambiguousESM=!0),this.state.soloAwait||(t.argument=this.parseMaybeUnary(null,!0)),this.finishNode(t,"AwaitExpression")}isAmbiguousAwait(){if(this.hasPrecedingLineBreak())return!0;const{type:e}=this.state;return 53===e||10===e||0===e||X(e)||102===e&&!this.state.containsEsc||138===e||56===e||this.hasPlugin("v8intrinsic")&&54===e}parseYield(){const e=this.startNode();this.expressionScope.recordParameterInitializerError(b.YieldInParameter,e),this.next();let t=!1,r=null;if(!this.hasPrecedingLineBreak())switch(t=this.eat(55),this.state.type){case 13:case 140:case 8:case 11:case 3:case 9:case 14:case 12:if(!t)break;default:r=this.parseMaybeAssign()}return e.delegate=t,e.argument=r,this.finishNode(e,"YieldExpression")}parseImportCall(e){if(this.next(),e.source=this.parseMaybeAssignAllowIn(),e.options=null,this.eat(12)&&!this.match(11)&&(e.options=this.parseMaybeAssignAllowIn(),this.eat(12)&&!this.match(11))){do{this.parseMaybeAssignAllowIn()}while(this.eat(12)&&!this.match(11));this.raise(b.ImportCallArity,e)}return this.expect(11),this.finishNode(e,"ImportExpression")}checkPipelineAtInfixOperator(e,t){this.hasPlugin(["pipelineOperator",{proposal:"smart"}])&&"SequenceExpression"===e.type&&this.raise(b.PipelineHeadSequenceExpression,t)}parseSmartPipelineBodyInStyle(e,t){if(this.isSimpleReference(e)){const r=this.startNodeAt(t);return r.callee=e,this.finishNode(r,"PipelineBareFunction")}{const r=this.startNodeAt(t);return this.checkSmartPipeTopicBodyEarlyErrors(t),r.expression=e,this.finishNode(r,"PipelineTopicExpression")}}isSimpleReference(e){switch(e.type){case"MemberExpression":return!e.computed&&this.isSimpleReference(e.object);case"Identifier":return!0;default:return!1}}checkSmartPipeTopicBodyEarlyErrors(e){if(this.match(19))throw this.raise(b.PipelineBodyNoArrow,this.state.startLoc);this.topicReferenceWasUsedInCurrentContext()||this.raise(b.PipelineTopicUnused,e)}withTopicBindingContext(e){const t=this.state.topicContext;this.state.topicContext={maxNumOfResolvableTopics:1,maxTopicIndex:null};try{return e()}finally{this.state.topicContext=t}}withSmartMixTopicForbiddingContext(e){if(!this.hasPlugin(["pipelineOperator",{proposal:"smart"}]))return e();{const t=this.state.topicContext;this.state.topicContext={maxNumOfResolvableTopics:0,maxTopicIndex:null};try{return e()}finally{this.state.topicContext=t}}}withSoloAwaitPermittingContext(e){const t=this.state.soloAwait;this.state.soloAwait=!0;try{return e()}finally{this.state.soloAwait=t}}allowInAnd(e){const t=this.prodParam.currentFlags();if(8&~t){this.prodParam.enter(8|t);try{return e()}finally{this.prodParam.exit()}}return e()}disallowInAnd(e){const t=this.prodParam.currentFlags();if(8&t){this.prodParam.enter(-9&t);try{return e()}finally{this.prodParam.exit()}}return e()}registerTopicReference(){this.state.topicContext.maxTopicIndex=0}topicReferenceIsAllowedInCurrentContext(){return this.state.topicContext.maxNumOfResolvableTopics>=1}topicReferenceWasUsedInCurrentContext(){return null!=this.state.topicContext.maxTopicIndex&&this.state.topicContext.maxTopicIndex>=0}parseFSharpPipelineBody(e){const t=this.state.startLoc;this.state.potentialArrowAt=this.state.start;const r=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!0;const n=this.parseExprOp(this.parseMaybeUnaryOrPrivate(),t,e);return this.state.inFSharpPipelineDirectBody=r,n}parseModuleExpression(){this.expectPlugin("moduleBlocks");const e=this.startNode();this.next(),this.match(5)||this.unexpected(null,5);const t=this.startNodeAt(this.state.endLoc);this.next();const r=this.initializeScopes(!0);this.enterInitialScopes();try{e.body=this.parseProgram(t,8,"module")}finally{r()}return this.finishNode(e,"ModuleExpression")}parsePropertyNamePrefixOperator(e){}}const Dt={kind:1},jt={kind:2},Bt=/[\uD800-\uDFFF]/u,Lt=/in(?:stanceof)?/y;class Ft extends kt{parseTopLevel(e,t){return e.program=this.parseProgram(t),e.comments=this.comments,128&this.optionFlags&&(e.tokens=function(e,t,r){for(let n=0;n<e.length;n++){const i=e[n],{type:a}=i;if("number"==typeof a){if(139===a){const{loc:t,start:r,value:a,end:o}=i,l=r+1,c=s(t.start,1);e.splice(n,1,new $e({type:Y(27),value:"#",start:r,end:l,startLoc:t.start,endLoc:c}),new $e({type:Y(132),value:a,start:l,end:o,startLoc:c,endLoc:t.end})),n++;continue}if(X(a)){const{loc:o,start:l,value:c,end:u}=i,p=l+1,d=s(o.start,1);let f,h,m,y,b;f=96===t.charCodeAt(l-r)?new $e({type:Y(22),value:"`",start:l,end:p,startLoc:o.start,endLoc:d}):new $e({type:Y(8),value:"}",start:l,end:p,startLoc:o.start,endLoc:d}),24===a?(m=u-1,y=s(o.end,-1),h=null===c?null:c.slice(1,-1),b=new $e({type:Y(22),value:"`",start:m,end:u,startLoc:y,endLoc:o.end})):(m=u-2,y=s(o.end,-2),h=null===c?null:c.slice(1,-2),b=new $e({type:Y(23),value:"${",start:m,end:u,startLoc:y,endLoc:o.end})),e.splice(n,1,f,new $e({type:Y(20),value:h,start:p,end:m,startLoc:d,endLoc:y}),b),n+=2;continue}i.type=Y(a)}}return e}(this.tokens,this.input,this.startIndex)),this.finishNode(e,"File")}parseProgram(e,t=140,r=this.options.sourceType){if(e.sourceType=r,e.interpreter=this.parseInterpreterDirective(),this.parseBlockBody(e,!0,!0,t),this.inModule){if(!(32&this.optionFlags)&&this.scope.undefinedExports.size>0)for(const[e,t]of Array.from(this.scope.undefinedExports))this.raise(b.ModuleExportUndefined,t,{localName:e});this.addExtra(e,"topLevelAwait",this.state.hasTopLevelAwait)}let n;return n=140===t?this.finishNode(e,"Program"):this.finishNodeAt(e,"Program",s(this.state.startLoc,-1)),n}stmtToDirective(e){const t=e;t.type="Directive",t.value=t.expression,delete t.expression;const r=t.value,n=r.value,i=this.input.slice(this.offsetToSourcePos(r.start),this.offsetToSourcePos(r.end)),s=r.value=i.slice(1,-1);return this.addExtra(r,"raw",i),this.addExtra(r,"rawValue",s),this.addExtra(r,"expressionValue",n),r.type="DirectiveLiteral",t}parseInterpreterDirective(){if(!this.match(28))return null;const e=this.startNode();return e.value=this.state.value,this.next(),this.finishNode(e,"InterpreterDirective")}isLet(){return!!this.isContextual(100)&&this.hasFollowingBindingAtom()}chStartsBindingIdentifier(e,t){if(se(e)){if(Lt.lastIndex=t,Lt.test(this.input)){const e=this.codePointAtPos(Lt.lastIndex);if(!ae(e)&&92!==e)return!1}return!0}return 92===e}chStartsBindingPattern(e){return 91===e||123===e}hasFollowingBindingAtom(){const e=this.nextTokenStart(),t=this.codePointAtPos(e);return this.chStartsBindingPattern(t)||this.chStartsBindingIdentifier(t,e)}hasInLineFollowingBindingIdentifierOrBrace(){const e=this.nextTokenInLineStart(),t=this.codePointAtPos(e);return 123===t||this.chStartsBindingIdentifier(t,e)}startsUsingForOf(){const{type:e,containsEsc:t}=this.lookahead();return!(102===e&&!t)&&(q(e)&&!this.hasFollowingLineBreak()?(this.expectPlugin("explicitResourceManagement"),!0):void 0)}startsAwaitUsing(){let e=this.nextTokenInLineStart();if(this.isUnparsedContextual(e,"using")){e=this.nextTokenInLineStartSince(e+5);const t=this.codePointAtPos(e);if(this.chStartsBindingIdentifier(t,e))return this.expectPlugin("explicitResourceManagement"),!0}return!1}parseModuleItem(){return this.parseStatementLike(15)}parseStatementListItem(){return this.parseStatementLike(6|(!this.options.annexB||this.state.strict?0:8))}parseStatementOrSloppyAnnexBFunctionDeclaration(e=!1){let t=0;return this.options.annexB&&!this.state.strict&&(t|=4,e&&(t|=8)),this.parseStatementLike(t)}parseStatement(){return this.parseStatementLike(0)}parseStatementLike(e){let t=null;return this.match(26)&&(t=this.parseDecorators(!0)),this.parseStatementContent(e,t)}parseStatementContent(e,t){const r=this.state.type,n=this.startNode(),i=!!(2&e),s=!!(4&e),a=1&e;switch(r){case 60:return this.parseBreakContinueStatement(n,!0);case 63:return this.parseBreakContinueStatement(n,!1);case 64:return this.parseDebuggerStatement(n);case 90:return this.parseDoWhileStatement(n);case 91:return this.parseForStatement(n);case 68:if(46===this.lookaheadCharCode())break;return s||this.raise(this.state.strict?b.StrictFunction:this.options.annexB?b.SloppyFunctionAnnexB:b.SloppyFunction,this.state.startLoc),this.parseFunctionStatement(n,!1,!i&&s);case 80:return i||this.unexpected(),this.parseClass(this.maybeTakeDecorators(t,n),!0);case 69:return this.parseIfStatement(n);case 70:return this.parseReturnStatement(n);case 71:return this.parseSwitchStatement(n);case 72:return this.parseThrowStatement(n);case 73:return this.parseTryStatement(n);case 96:if(!this.state.containsEsc&&this.startsAwaitUsing())return this.recordAwaitIfAllowed()?i||this.raise(b.UnexpectedLexicalDeclaration,n):this.raise(b.AwaitUsingNotInAsyncContext,n),this.next(),this.parseVarStatement(n,"await using");break;case 107:if(this.state.containsEsc||!this.hasInLineFollowingBindingIdentifierOrBrace())break;return this.expectPlugin("explicitResourceManagement"),!this.scope.inModule&&this.scope.inTopLevel?this.raise(b.UnexpectedUsingDeclaration,this.state.startLoc):i||this.raise(b.UnexpectedLexicalDeclaration,this.state.startLoc),this.parseVarStatement(n,"using");case 100:{if(this.state.containsEsc)break;const e=this.nextTokenStart(),t=this.codePointAtPos(e);if(91!==t){if(!i&&this.hasFollowingLineBreak())break;if(!this.chStartsBindingIdentifier(t,e)&&123!==t)break}}case 75:i||this.raise(b.UnexpectedLexicalDeclaration,this.state.startLoc);case 74:{const e=this.state.value;return this.parseVarStatement(n,e)}case 92:return this.parseWhileStatement(n);case 76:return this.parseWithStatement(n);case 5:return this.parseBlock();case 13:return this.parseEmptyStatement(n);case 83:{const e=this.lookaheadCharCode();if(40===e||46===e)break}case 82:{let e;return 8&this.optionFlags||a||this.raise(b.UnexpectedImportExport,this.state.startLoc),this.next(),83===r?(e=this.parseImport(n),"ImportDeclaration"!==e.type||e.importKind&&"value"!==e.importKind||(this.sawUnambiguousESM=!0)):(e=this.parseExport(n,t),("ExportNamedDeclaration"!==e.type||e.exportKind&&"value"!==e.exportKind)&&("ExportAllDeclaration"!==e.type||e.exportKind&&"value"!==e.exportKind)&&"ExportDefaultDeclaration"!==e.type||(this.sawUnambiguousESM=!0)),this.assertModuleNodeAllowed(e),e}default:if(this.isAsyncFunction())return i||this.raise(b.AsyncFunctionInSingleStatementContext,this.state.startLoc),this.next(),this.parseFunctionStatement(n,!0,!i&&s)}const o=this.state.value,l=this.parseExpression();return q(r)&&"Identifier"===l.type&&this.eat(14)?this.parseLabeledStatement(n,o,l,e):this.parseExpressionStatement(n,l,t)}assertModuleNodeAllowed(e){8&this.optionFlags||this.inModule||this.raise(b.ImportOutsideModule,e)}decoratorsEnabledBeforeExport(){return!!this.hasPlugin("decorators-legacy")||this.hasPlugin("decorators")&&!1!==this.getPluginOption("decorators","decoratorsBeforeExport")}maybeTakeDecorators(e,t,r){var n;e&&(null!=(n=t.decorators)&&n.length?("boolean"!=typeof this.getPluginOption("decorators","decoratorsBeforeExport")&&this.raise(b.DecoratorsBeforeAfterExport,t.decorators[0]),t.decorators.unshift(...e)):t.decorators=e,this.resetStartLocationFromNode(t,e[0]),r&&this.resetStartLocationFromNode(r,t));return t}canHaveLeadingDecorator(){return this.match(80)}parseDecorators(e){const t=[];do{t.push(this.parseDecorator())}while(this.match(26));if(this.match(82))e||this.unexpected(),this.decoratorsEnabledBeforeExport()||this.raise(b.DecoratorExportClass,this.state.startLoc);else if(!this.canHaveLeadingDecorator())throw this.raise(b.UnexpectedLeadingDecorator,this.state.startLoc);return t}parseDecorator(){this.expectOnePlugin(["decorators","decorators-legacy"]);const e=this.startNode();if(this.next(),this.hasPlugin("decorators")){const t=this.state.startLoc;let r;if(this.match(10)){const t=this.state.startLoc;this.next(),r=this.parseExpression(),this.expect(11),r=this.wrapParenthesis(t,r);const n=this.state.startLoc;e.expression=this.parseMaybeDecoratorArguments(r,t),!1===this.getPluginOption("decorators","allowCallParenthesized")&&e.expression!==r&&this.raise(b.DecoratorArgumentsOutsideParentheses,n)}else{for(r=this.parseIdentifier(!1);this.eat(16);){const e=this.startNodeAt(t);e.object=r,this.match(139)?(this.classScope.usePrivateName(this.state.value,this.state.startLoc),e.property=this.parsePrivateName()):e.property=this.parseIdentifier(!0),e.computed=!1,r=this.finishNode(e,"MemberExpression")}e.expression=this.parseMaybeDecoratorArguments(r,t)}}else e.expression=this.parseExprSubscripts();return this.finishNode(e,"Decorator")}parseMaybeDecoratorArguments(e,t){if(this.eat(10)){const r=this.startNodeAt(t);return r.callee=e,r.arguments=this.parseCallExpressionArguments(11),this.toReferencedList(r.arguments),this.finishNode(r,"CallExpression")}return e}parseBreakContinueStatement(e,t){return this.next(),this.isLineTerminator()?e.label=null:(e.label=this.parseIdentifier(),this.semicolon()),this.verifyBreakContinue(e,t),this.finishNode(e,t?"BreakStatement":"ContinueStatement")}verifyBreakContinue(e,t){let r;for(r=0;r<this.state.labels.length;++r){const n=this.state.labels[r];if(null==e.label||n.name===e.label.name){if(null!=n.kind&&(t||1===n.kind))break;if(e.label&&t)break}}if(r===this.state.labels.length){const r=t?"BreakStatement":"ContinueStatement";this.raise(b.IllegalBreakContinue,e,{type:r})}}parseDebuggerStatement(e){return this.next(),this.semicolon(),this.finishNode(e,"DebuggerStatement")}parseHeaderExpression(){this.expect(10);const e=this.parseExpression();return this.expect(11),e}parseDoWhileStatement(e){return this.next(),this.state.labels.push(Dt),e.body=this.withSmartMixTopicForbiddingContext((()=>this.parseStatement())),this.state.labels.pop(),this.expect(92),e.test=this.parseHeaderExpression(),this.eat(13),this.finishNode(e,"DoWhileStatement")}parseForStatement(e){this.next(),this.state.labels.push(Dt);let t=null;if(this.isContextual(96)&&this.recordAwaitIfAllowed()&&(t=this.state.startLoc,this.next()),this.scope.enter(0),this.expect(10),this.match(13))return null!==t&&this.unexpected(t),this.parseFor(e,null);const r=this.isContextual(100);{const n=this.isContextual(96)&&this.startsAwaitUsing(),i=n||this.isContextual(107)&&this.startsUsingForOf(),s=r&&this.hasFollowingBindingAtom()||i;if(this.match(74)||this.match(75)||s){const r=this.startNode();let s;n?(s="await using",this.recordAwaitIfAllowed()||this.raise(b.AwaitUsingNotInAsyncContext,this.state.startLoc),this.next()):s=this.state.value,this.next(),this.parseVar(r,!0,s);const a=this.finishNode(r,"VariableDeclaration"),o=this.match(58);return o&&i&&this.raise(b.ForInUsing,a),(o||this.isContextual(102))&&1===a.declarations.length?this.parseForIn(e,a,t):(null!==t&&this.unexpected(t),this.parseFor(e,a))}}const n=this.isContextual(95),i=new tt,s=this.parseExpression(!0,i),a=this.isContextual(102);if(a&&(r&&this.raise(b.ForOfLet,s),null===t&&n&&"Identifier"===s.type&&this.raise(b.ForOfAsync,s)),a||this.match(58)){this.checkDestructuringPrivate(i),this.toAssignable(s,!0);const r=a?"ForOfStatement":"ForInStatement";return this.checkLVal(s,{type:r}),this.parseForIn(e,s,t)}return this.checkExpressionErrors(i,!0),null!==t&&this.unexpected(t),this.parseFor(e,s)}parseFunctionStatement(e,t,r){return this.next(),this.parseFunction(e,1|(r?2:0)|(t?8:0))}parseIfStatement(e){return this.next(),e.test=this.parseHeaderExpression(),e.consequent=this.parseStatementOrSloppyAnnexBFunctionDeclaration(),e.alternate=this.eat(66)?this.parseStatementOrSloppyAnnexBFunctionDeclaration():null,this.finishNode(e,"IfStatement")}parseReturnStatement(e){return this.prodParam.hasReturn||2&this.optionFlags||this.raise(b.IllegalReturn,this.state.startLoc),this.next(),this.isLineTerminator()?e.argument=null:(e.argument=this.parseExpression(),this.semicolon()),this.finishNode(e,"ReturnStatement")}parseSwitchStatement(e){this.next(),e.discriminant=this.parseHeaderExpression();const t=e.cases=[];let r;this.expect(5),this.state.labels.push(jt),this.scope.enter(0);for(let e;!this.match(8);)if(this.match(61)||this.match(65)){const n=this.match(61);r&&this.finishNode(r,"SwitchCase"),t.push(r=this.startNode()),r.consequent=[],this.next(),n?r.test=this.parseExpression():(e&&this.raise(b.MultipleDefaultsInSwitch,this.state.lastTokStartLoc),e=!0,r.test=null),this.expect(14)}else r?r.consequent.push(this.parseStatementListItem()):this.unexpected();return this.scope.exit(),r&&this.finishNode(r,"SwitchCase"),this.next(),this.state.labels.pop(),this.finishNode(e,"SwitchStatement")}parseThrowStatement(e){return this.next(),this.hasPrecedingLineBreak()&&this.raise(b.NewlineAfterThrow,this.state.lastTokEndLoc),e.argument=this.parseExpression(),this.semicolon(),this.finishNode(e,"ThrowStatement")}parseCatchClauseParam(){const e=this.parseBindingAtom();return this.scope.enter(this.options.annexB&&"Identifier"===e.type?8:0),this.checkLVal(e,{type:"CatchClause"},9),e}parseTryStatement(e){if(this.next(),e.block=this.parseBlock(),e.handler=null,this.match(62)){const t=this.startNode();this.next(),this.match(10)?(this.expect(10),t.param=this.parseCatchClauseParam(),this.expect(11)):(t.param=null,this.scope.enter(0)),t.body=this.withSmartMixTopicForbiddingContext((()=>this.parseBlock(!1,!1))),this.scope.exit(),e.handler=this.finishNode(t,"CatchClause")}return e.finalizer=this.eat(67)?this.parseBlock():null,e.handler||e.finalizer||this.raise(b.NoCatchOrFinally,e),this.finishNode(e,"TryStatement")}parseVarStatement(e,t,r=!1){return this.next(),this.parseVar(e,!1,t,r),this.semicolon(),this.finishNode(e,"VariableDeclaration")}parseWhileStatement(e){return this.next(),e.test=this.parseHeaderExpression(),this.state.labels.push(Dt),e.body=this.withSmartMixTopicForbiddingContext((()=>this.parseStatement())),this.state.labels.pop(),this.finishNode(e,"WhileStatement")}parseWithStatement(e){return this.state.strict&&this.raise(b.StrictWith,this.state.startLoc),this.next(),e.object=this.parseHeaderExpression(),e.body=this.withSmartMixTopicForbiddingContext((()=>this.parseStatement())),this.finishNode(e,"WithStatement")}parseEmptyStatement(e){return this.next(),this.finishNode(e,"EmptyStatement")}parseLabeledStatement(e,t,r,n){for(const e of this.state.labels)e.name===t&&this.raise(b.LabelRedeclaration,r,{labelName:t});const i=(s=this.state.type)>=90&&s<=92?1:this.match(71)?2:null;var s;for(let t=this.state.labels.length-1;t>=0;t--){const r=this.state.labels[t];if(r.statementStart!==e.start)break;r.statementStart=this.sourceToOffsetPos(this.state.start),r.kind=i}return this.state.labels.push({name:t,kind:i,statementStart:this.sourceToOffsetPos(this.state.start)}),e.body=8&n?this.parseStatementOrSloppyAnnexBFunctionDeclaration(!0):this.parseStatement(),this.state.labels.pop(),e.label=r,this.finishNode(e,"LabeledStatement")}parseExpressionStatement(e,t,r){return e.expression=t,this.semicolon(),this.finishNode(e,"ExpressionStatement")}parseBlock(e=!1,t=!0,r){const n=this.startNode();return e&&this.state.strictErrors.clear(),this.expect(5),t&&this.scope.enter(0),this.parseBlockBody(n,e,!1,8,r),t&&this.scope.exit(),this.finishNode(n,"BlockStatement")}isValidDirective(e){return"ExpressionStatement"===e.type&&"StringLiteral"===e.expression.type&&!e.expression.extra.parenthesized}parseBlockBody(e,t,r,n,i){const s=e.body=[],a=e.directives=[];this.parseBlockOrModuleBlockBody(s,t?a:void 0,r,n,i)}parseBlockOrModuleBlockBody(e,t,r,n,i){const s=this.state.strict;let a=!1,o=!1;for(;!this.match(n);){const n=r?this.parseModuleItem():this.parseStatementListItem();if(t&&!o){if(this.isValidDirective(n)){const e=this.stmtToDirective(n);t.push(e),a||"use strict"!==e.value.value||(a=!0,this.setStrict(!0));continue}o=!0,this.state.strictErrors.clear()}e.push(n)}null==i||i.call(this,a),s||this.setStrict(!1),this.next()}parseFor(e,t){return e.init=t,this.semicolon(!1),e.test=this.match(13)?null:this.parseExpression(),this.semicolon(!1),e.update=this.match(11)?null:this.parseExpression(),this.expect(11),e.body=this.withSmartMixTopicForbiddingContext((()=>this.parseStatement())),this.scope.exit(),this.state.labels.pop(),this.finishNode(e,"ForStatement")}parseForIn(e,t,r){const n=this.match(58);return this.next(),n?null!==r&&this.unexpected(r):e.await=null!==r,"VariableDeclaration"!==t.type||null==t.declarations[0].init||n&&this.options.annexB&&!this.state.strict&&"var"===t.kind&&"Identifier"===t.declarations[0].id.type||this.raise(b.ForInOfLoopInitializer,t,{type:n?"ForInStatement":"ForOfStatement"}),"AssignmentPattern"===t.type&&this.raise(b.InvalidLhs,t,{ancestor:{type:"ForStatement"}}),e.left=t,e.right=n?this.parseExpression():this.parseMaybeAssignAllowIn(),this.expect(11),e.body=this.withSmartMixTopicForbiddingContext((()=>this.parseStatement())),this.scope.exit(),this.state.labels.pop(),this.finishNode(e,n?"ForInStatement":"ForOfStatement")}parseVar(e,t,r,n=!1){const i=e.declarations=[];for(e.kind=r;;){const e=this.startNode();if(this.parseVarId(e,r),e.init=this.eat(29)?t?this.parseMaybeAssignDisallowIn():this.parseMaybeAssignAllowIn():null,null!==e.init||n||("Identifier"===e.id.type||t&&(this.match(58)||this.isContextual(102))?"const"!==r&&"using"!==r&&"await using"!==r||this.match(58)||this.isContextual(102)||this.raise(b.DeclarationMissingInitializer,this.state.lastTokEndLoc,{kind:r}):this.raise(b.DeclarationMissingInitializer,this.state.lastTokEndLoc,{kind:"destructuring"})),i.push(this.finishNode(e,"VariableDeclarator")),!this.eat(12))break}return e}parseVarId(e,t){const r=this.parseBindingAtom();"using"!==t&&"await using"!==t||"ArrayPattern"!==r.type&&"ObjectPattern"!==r.type||this.raise(b.UsingDeclarationHasBindingPattern,r.loc.start),this.checkLVal(r,{type:"VariableDeclarator"},"var"===t?5:8201),e.id=r}parseAsyncFunctionExpression(e){return this.parseFunction(e,8)}parseFunction(e,t=0){const r=2&t,n=!!(1&t),i=n&&!(4&t),s=!!(8&t);this.initFunction(e,s),this.match(55)&&(r&&this.raise(b.GeneratorInSingleStatementContext,this.state.startLoc),this.next(),e.generator=!0),n&&(e.id=this.parseFunctionId(i));const a=this.state.maybeInArrowParameters;return this.state.maybeInArrowParameters=!1,this.scope.enter(2),this.prodParam.enter(Ze(s,e.generator)),n||(e.id=this.parseFunctionId()),this.parseFunctionParams(e,!1),this.withSmartMixTopicForbiddingContext((()=>{this.parseFunctionBodyAndFinish(e,n?"FunctionDeclaration":"FunctionExpression")})),this.prodParam.exit(),this.scope.exit(),n&&!r&&this.registerFunctionStatementId(e),this.state.maybeInArrowParameters=a,e}parseFunctionId(e){return e||q(this.state.type)?this.parseIdentifier():null}parseFunctionParams(e,t){this.expect(10),this.expressionScope.enter(new Je(3)),e.params=this.parseBindingList(11,41,2|(t?4:0)),this.expressionScope.exit()}registerFunctionStatementId(e){e.id&&this.scope.declareName(e.id.name,!this.options.annexB||this.state.strict||e.generator||e.async?this.scope.treatFunctionsAsVar?5:8201:17,e.id.loc.start)}parseClass(e,t,r){this.next();const n=this.state.strict;return this.state.strict=!0,this.parseClassId(e,t,r),this.parseClassSuper(e),e.body=this.parseClassBody(!!e.superClass,n),this.finishNode(e,t?"ClassDeclaration":"ClassExpression")}isClassProperty(){return this.match(29)||this.match(13)||this.match(8)}isClassMethod(){return this.match(10)}nameIsConstructor(e){return"Identifier"===e.type&&"constructor"===e.name||"StringLiteral"===e.type&&"constructor"===e.value}isNonstaticConstructor(e){return!e.computed&&!e.static&&this.nameIsConstructor(e.key)}parseClassBody(e,t){this.classScope.enter();const r={hadConstructor:!1,hadSuperClass:e};let n=[];const i=this.startNode();if(i.body=[],this.expect(5),this.withSmartMixTopicForbiddingContext((()=>{for(;!this.match(8);){if(this.eat(13)){if(n.length>0)throw this.raise(b.DecoratorSemicolon,this.state.lastTokEndLoc);continue}if(this.match(26)){n.push(this.parseDecorator());continue}const e=this.startNode();n.length&&(e.decorators=n,this.resetStartLocationFromNode(e,n[0]),n=[]),this.parseClassMember(i,e,r),"constructor"===e.kind&&e.decorators&&e.decorators.length>0&&this.raise(b.DecoratorConstructor,e)}})),this.state.strict=t,this.next(),n.length)throw this.raise(b.TrailingDecorator,this.state.startLoc);return this.classScope.exit(),this.finishNode(i,"ClassBody")}parseClassMemberFromModifier(e,t){const r=this.parseIdentifier(!0);if(this.isClassMethod()){const n=t;return n.kind="method",n.computed=!1,n.key=r,n.static=!1,this.pushClassMethod(e,n,!1,!1,!1,!1),!0}if(this.isClassProperty()){const n=t;return n.computed=!1,n.key=r,n.static=!1,e.body.push(this.parseClassProperty(n)),!0}return this.resetPreviousNodeTrailingComments(r),!1}parseClassMember(e,t,r){const n=this.isContextual(106);if(n){if(this.parseClassMemberFromModifier(e,t))return;if(this.eat(5))return void this.parseClassStaticBlock(e,t)}this.parseClassMemberWithIsStatic(e,t,r,n)}parseClassMemberWithIsStatic(e,t,r,n){const i=t,s=t,a=t,o=t,l=t,c=i,u=i;if(t.static=n,this.parsePropertyNamePrefixOperator(t),this.eat(55)){c.kind="method";const t=this.match(139);return this.parseClassElementName(c),t?void this.pushClassPrivateMethod(e,s,!0,!1):(this.isNonstaticConstructor(i)&&this.raise(b.ConstructorIsGenerator,i.key),void this.pushClassMethod(e,i,!0,!1,!1,!1))}const p=!this.state.containsEsc&&q(this.state.type),d=this.parseClassElementName(t),f=p?d.name:null,h=this.isPrivateName(d),m=this.state.startLoc;if(this.parsePostMemberNameModifiers(u),this.isClassMethod()){if(c.kind="method",h)return void this.pushClassPrivateMethod(e,s,!1,!1);const n=this.isNonstaticConstructor(i);let a=!1;n&&(i.kind="constructor",r.hadConstructor&&!this.hasPlugin("typescript")&&this.raise(b.DuplicateConstructor,d),n&&this.hasPlugin("typescript")&&t.override&&this.raise(b.OverrideOnConstructor,d),r.hadConstructor=!0,a=r.hadSuperClass),this.pushClassMethod(e,i,!1,!1,n,a)}else if(this.isClassProperty())h?this.pushClassPrivateProperty(e,o):this.pushClassProperty(e,a);else if("async"!==f||this.isLineTerminator())if("get"!==f&&"set"!==f||this.match(55)&&this.isLineTerminator())if("accessor"!==f||this.isLineTerminator())this.isLineTerminator()?h?this.pushClassPrivateProperty(e,o):this.pushClassProperty(e,a):this.unexpected();else{this.expectPlugin("decoratorAutoAccessors"),this.resetPreviousNodeTrailingComments(d);const t=this.match(139);this.parseClassElementName(a),this.pushClassAccessorProperty(e,l,t)}else{this.resetPreviousNodeTrailingComments(d),c.kind=f;const t=this.match(139);this.parseClassElementName(i),t?this.pushClassPrivateMethod(e,s,!1,!1):(this.isNonstaticConstructor(i)&&this.raise(b.ConstructorIsAccessor,i.key),this.pushClassMethod(e,i,!1,!1,!1,!1)),this.checkGetterSetterParams(i)}else{this.resetPreviousNodeTrailingComments(d);const t=this.eat(55);u.optional&&this.unexpected(m),c.kind="method";const r=this.match(139);this.parseClassElementName(c),this.parsePostMemberNameModifiers(u),r?this.pushClassPrivateMethod(e,s,t,!0):(this.isNonstaticConstructor(i)&&this.raise(b.ConstructorIsAsync,i.key),this.pushClassMethod(e,i,t,!0,!1,!1))}}parseClassElementName(e){const{type:t,value:r}=this.state;if(132!==t&&134!==t||!e.static||"prototype"!==r||this.raise(b.StaticPrototype,this.state.startLoc),139===t){"constructor"===r&&this.raise(b.ConstructorClassPrivateField,this.state.startLoc);const t=this.parsePrivateName();return e.key=t,t}return this.parsePropertyName(e),e.key}parseClassStaticBlock(e,t){var r;this.scope.enter(208);const n=this.state.labels;this.state.labels=[],this.prodParam.enter(0);const i=t.body=[];this.parseBlockOrModuleBlockBody(i,void 0,!1,8),this.prodParam.exit(),this.scope.exit(),this.state.labels=n,e.body.push(this.finishNode(t,"StaticBlock")),null!=(r=t.decorators)&&r.length&&this.raise(b.DecoratorStaticBlock,t)}pushClassProperty(e,t){!t.computed&&this.nameIsConstructor(t.key)&&this.raise(b.ConstructorClassField,t.key),e.body.push(this.parseClassProperty(t))}pushClassPrivateProperty(e,t){const r=this.parseClassPrivateProperty(t);e.body.push(r),this.classScope.declarePrivateName(this.getPrivateNameSV(r.key),0,r.key.loc.start)}pushClassAccessorProperty(e,t,r){r||t.computed||!this.nameIsConstructor(t.key)||this.raise(b.ConstructorClassField,t.key);const n=this.parseClassAccessorProperty(t);e.body.push(n),r&&this.classScope.declarePrivateName(this.getPrivateNameSV(n.key),0,n.key.loc.start)}pushClassMethod(e,t,r,n,i,s){e.body.push(this.parseMethod(t,r,n,i,s,"ClassMethod",!0))}pushClassPrivateMethod(e,t,r,n){const i=this.parseMethod(t,r,n,!1,!1,"ClassPrivateMethod",!0);e.body.push(i);const s="get"===i.kind?i.static?6:2:"set"===i.kind?i.static?5:1:0;this.declareClassPrivateMethodInScope(i,s)}declareClassPrivateMethodInScope(e,t){this.classScope.declarePrivateName(this.getPrivateNameSV(e.key),t,e.key.loc.start)}parsePostMemberNameModifiers(e){}parseClassPrivateProperty(e){return this.parseInitializer(e),this.semicolon(),this.finishNode(e,"ClassPrivateProperty")}parseClassProperty(e){return this.parseInitializer(e),this.semicolon(),this.finishNode(e,"ClassProperty")}parseClassAccessorProperty(e){return this.parseInitializer(e),this.semicolon(),this.finishNode(e,"ClassAccessorProperty")}parseInitializer(e){this.scope.enter(80),this.expressionScope.enter(Ye()),this.prodParam.enter(0),e.value=this.eat(29)?this.parseMaybeAssignAllowIn():null,this.expressionScope.exit(),this.prodParam.exit(),this.scope.exit()}parseClassId(e,t,r,n=8331){if(q(this.state.type))e.id=this.parseIdentifier(),t&&this.declareNameFromIdentifier(e.id,n);else{if(!r&&t)throw this.raise(b.MissingClassName,this.state.startLoc);e.id=null}}parseClassSuper(e){e.superClass=this.eat(81)?this.parseExprSubscripts():null}parseExport(e,t){const r=this.parseMaybeImportPhase(e,!0),n=this.maybeParseExportDefaultSpecifier(e,r),i=!n||this.eat(12),s=i&&this.eatExportStar(e),a=s&&this.maybeParseExportNamespaceSpecifier(e),o=i&&(!a||this.eat(12)),l=n||s;if(s&&!a){if(n&&this.unexpected(),t)throw this.raise(b.UnsupportedDecoratorExport,e);return this.parseExportFrom(e,!0),this.finishNode(e,"ExportAllDeclaration")}const c=this.maybeParseExportNamedSpecifiers(e);let u;if(n&&i&&!s&&!c&&this.unexpected(null,5),a&&o&&this.unexpected(null,98),l||c){if(u=!1,t)throw this.raise(b.UnsupportedDecoratorExport,e);this.parseExportFrom(e,l)}else u=this.maybeParseExportDeclaration(e);if(l||c||u){var p;const r=e;if(this.checkExport(r,!0,!1,!!r.source),"ClassDeclaration"===(null==(p=r.declaration)?void 0:p.type))this.maybeTakeDecorators(t,r.declaration,r);else if(t)throw this.raise(b.UnsupportedDecoratorExport,e);return this.finishNode(r,"ExportNamedDeclaration")}if(this.eat(65)){const r=e,n=this.parseExportDefaultExpression();if(r.declaration=n,"ClassDeclaration"===n.type)this.maybeTakeDecorators(t,n,r);else if(t)throw this.raise(b.UnsupportedDecoratorExport,e);return this.checkExport(r,!0,!0),this.finishNode(r,"ExportDefaultDeclaration")}this.unexpected(null,5)}eatExportStar(e){return this.eat(55)}maybeParseExportDefaultSpecifier(e,t){if(t||this.isExportDefaultSpecifier()){this.expectPlugin("exportDefaultFrom",null==t?void 0:t.loc.start);const r=t||this.parseIdentifier(!0),n=this.startNodeAtNode(r);return n.exported=r,e.specifiers=[this.finishNode(n,"ExportDefaultSpecifier")],!0}return!1}maybeParseExportNamespaceSpecifier(e){if(this.isContextual(93)){var t;null!=(t=e).specifiers||(t.specifiers=[]);const r=this.startNodeAt(this.state.lastTokStartLoc);return this.next(),r.exported=this.parseModuleExportName(),e.specifiers.push(this.finishNode(r,"ExportNamespaceSpecifier")),!0}return!1}maybeParseExportNamedSpecifiers(e){if(this.match(5)){const t=e;t.specifiers||(t.specifiers=[]);const r="type"===t.exportKind;return t.specifiers.push(...this.parseExportSpecifiers(r)),t.source=null,t.declaration=null,this.hasPlugin("importAssertions")&&(t.assertions=[]),!0}return!1}maybeParseExportDeclaration(e){return!!this.shouldParseExportDeclaration()&&(e.specifiers=[],e.source=null,this.hasPlugin("importAssertions")&&(e.assertions=[]),e.declaration=this.parseExportDeclaration(e),!0)}isAsyncFunction(){if(!this.isContextual(95))return!1;const e=this.nextTokenInLineStart();return this.isUnparsedContextual(e,"function")}parseExportDefaultExpression(){const e=this.startNode();if(this.match(68))return this.next(),this.parseFunction(e,5);if(this.isAsyncFunction())return this.next(),this.next(),this.parseFunction(e,13);if(this.match(80))return this.parseClass(e,!0,!0);if(this.match(26))return this.hasPlugin("decorators")&&!0===this.getPluginOption("decorators","decoratorsBeforeExport")&&this.raise(b.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(b.UnsupportedDefaultExport,this.state.startLoc);const t=this.parseMaybeAssignAllowIn();return this.semicolon(),t}parseExportDeclaration(e){if(this.match(80)){return this.parseClass(this.startNode(),!0,!1)}return this.parseStatementListItem()}isExportDefaultSpecifier(){const{type:e}=this.state;if(q(e)){if(95===e&&!this.state.containsEsc||100===e)return!1;if((130===e||129===e)&&!this.state.containsEsc){const{type:e}=this.lookahead();if(q(e)&&98!==e||5===e)return this.expectOnePlugin(["flow","typescript"]),!1}}else if(!this.match(65))return!1;const t=this.nextTokenStart(),r=this.isUnparsedContextual(t,"from");if(44===this.input.charCodeAt(t)||q(this.state.type)&&r)return!0;if(this.match(65)&&r){const e=this.input.charCodeAt(this.nextTokenStartSince(t+4));return 34===e||39===e}return!1}parseExportFrom(e,t){this.eatContextual(98)?(e.source=this.parseImportSource(),this.checkExport(e),this.maybeParseImportAttributes(e),this.checkJSONModuleImport(e)):t&&this.unexpected(),this.semicolon()}shouldParseExportDeclaration(){const{type:e}=this.state;return 26===e&&(this.expectOnePlugin(["decorators","decorators-legacy"]),this.hasPlugin("decorators"))?(!0===this.getPluginOption("decorators","decoratorsBeforeExport")&&this.raise(b.DecoratorBeforeExport,this.state.startLoc),!0):this.isContextual(107)||this.isContextual(96)&&this.startsAwaitUsing()?(this.raise(b.UsingDeclarationExport,this.state.startLoc),!0):74===e||75===e||68===e||80===e||this.isLet()||this.isAsyncFunction()}checkExport(e,t,r,n){var i;if(t)if(r){if(this.checkDuplicateExports(e,"default"),this.hasPlugin("exportDefaultFrom")){var s;const t=e.declaration;"Identifier"!==t.type||"from"!==t.name||t.end-t.start!=4||null!=(s=t.extra)&&s.parenthesized||this.raise(b.ExportDefaultFromAsIdentifier,t)}}else if(null!=(i=e.specifiers)&&i.length)for(const t of e.specifiers){const{exported:e}=t,r="Identifier"===e.type?e.name:e.value;if(this.checkDuplicateExports(t,r),!n&&t.local){const{local:e}=t;"Identifier"!==e.type?this.raise(b.ExportBindingIsString,t,{localName:e.value,exportName:r}):(this.checkReservedWord(e.name,e.loc.start,!0,!1),this.scope.checkLocalExport(e))}}else if(e.declaration){const t=e.declaration;if("FunctionDeclaration"===t.type||"ClassDeclaration"===t.type){const{id:r}=t;if(!r)throw new Error("Assertion failure");this.checkDuplicateExports(e,r.name)}else if("VariableDeclaration"===t.type)for(const e of t.declarations)this.checkDeclaration(e.id)}}checkDeclaration(e){if("Identifier"===e.type)this.checkDuplicateExports(e,e.name);else if("ObjectPattern"===e.type)for(const t of e.properties)this.checkDeclaration(t);else if("ArrayPattern"===e.type)for(const t of e.elements)t&&this.checkDeclaration(t);else"ObjectProperty"===e.type?this.checkDeclaration(e.value):"RestElement"===e.type?this.checkDeclaration(e.argument):"AssignmentPattern"===e.type&&this.checkDeclaration(e.left)}checkDuplicateExports(e,t){this.exportedIdentifiers.has(t)&&("default"===t?this.raise(b.DuplicateDefaultExport,e):this.raise(b.DuplicateExport,e,{exportName:t})),this.exportedIdentifiers.add(t)}parseExportSpecifiers(e){const t=[];let r=!0;for(this.expect(5);!this.eat(8);){if(r)r=!1;else if(this.expect(12),this.eat(8))break;const n=this.isContextual(130),i=this.match(134),s=this.startNode();s.local=this.parseModuleExportName(),t.push(this.parseExportSpecifier(s,i,e,n))}return t}parseExportSpecifier(e,t,r,n){return this.eatContextual(93)?e.exported=this.parseModuleExportName():t?e.exported=st(e.local):e.exported||(e.exported=it(e.local)),this.finishNode(e,"ExportSpecifier")}parseModuleExportName(){if(this.match(134)){const e=this.parseStringLiteral(this.state.value),t=Bt.exec(e.value);return t&&this.raise(b.ModuleExportNameHasLoneSurrogate,e,{surrogateCharCode:t[0].charCodeAt(0)}),e}return this.parseIdentifier(!0)}isJSONModuleImport(e){return null!=e.assertions&&e.assertions.some((({key:e,value:t})=>"json"===t.value&&("Identifier"===e.type?"type"===e.name:"type"===e.value)))}checkImportReflection(e){const{specifiers:t}=e,r=1===t.length?t[0].type:null;if("source"===e.phase)"ImportDefaultSpecifier"!==r&&this.raise(b.SourcePhaseImportRequiresDefault,t[0].loc.start);else if("defer"===e.phase)"ImportNamespaceSpecifier"!==r&&this.raise(b.DeferImportRequiresNamespace,t[0].loc.start);else if(e.module){var n;"ImportDefaultSpecifier"!==r&&this.raise(b.ImportReflectionNotBinding,t[0].loc.start),(null==(n=e.assertions)?void 0:n.length)>0&&this.raise(b.ImportReflectionHasAssertion,t[0].loc.start)}}checkJSONModuleImport(e){if(this.isJSONModuleImport(e)&&"ExportAllDeclaration"!==e.type){const{specifiers:t}=e;if(null!=t){const e=t.find((e=>{let t;if("ExportSpecifier"===e.type?t=e.local:"ImportSpecifier"===e.type&&(t=e.imported),void 0!==t)return"Identifier"===t.type?"default"!==t.name:"default"!==t.value}));void 0!==e&&this.raise(b.ImportJSONBindingNotDefault,e.loc.start)}}}isPotentialImportPhase(e){return!e&&(this.isContextual(105)||this.isContextual(97)||this.isContextual(127))}applyImportPhase(e,t,r,n){t||("module"===r?(this.expectPlugin("importReflection",n),e.module=!0):this.hasPlugin("importReflection")&&(e.module=!1),"source"===r?(this.expectPlugin("sourcePhaseImports",n),e.phase="source"):"defer"===r?(this.expectPlugin("deferredImportEvaluation",n),e.phase="defer"):this.hasPlugin("sourcePhaseImports")&&(e.phase=null))}parseMaybeImportPhase(e,t){if(!this.isPotentialImportPhase(t))return this.applyImportPhase(e,t,null),null;const r=this.parseIdentifier(!0),{type:n}=this.state;return(K(n)?98!==n||102===this.lookaheadCharCode():12!==n)?(this.resetPreviousIdentifierLeadingComments(r),this.applyImportPhase(e,t,r.name,r.loc.start),null):(this.applyImportPhase(e,t,null),r)}isPrecedingIdImportPhase(e){const{type:t}=this.state;return q(t)?98!==t||102===this.lookaheadCharCode():12!==t}parseImport(e){return this.match(134)?this.parseImportSourceAndAttributes(e):this.parseImportSpecifiersAndAfter(e,this.parseMaybeImportPhase(e,!1))}parseImportSpecifiersAndAfter(e,t){e.specifiers=[];const r=!this.maybeParseDefaultImportSpecifier(e,t)||this.eat(12),n=r&&this.maybeParseStarImportSpecifier(e);return r&&!n&&this.parseNamedImportSpecifiers(e),this.expectContextual(98),this.parseImportSourceAndAttributes(e)}parseImportSourceAndAttributes(e){return null!=e.specifiers||(e.specifiers=[]),e.source=this.parseImportSource(),this.maybeParseImportAttributes(e),this.checkImportReflection(e),this.checkJSONModuleImport(e),this.semicolon(),this.finishNode(e,"ImportDeclaration")}parseImportSource(){return this.match(134)||this.unexpected(),this.parseExprAtom()}parseImportSpecifierLocal(e,t,r){t.local=this.parseIdentifier(),e.specifiers.push(this.finishImportSpecifier(t,r))}finishImportSpecifier(e,t,r=8201){return this.checkLVal(e.local,{type:t},r),this.finishNode(e,t)}parseImportAttributes(){this.expect(5);const e=[],t=new Set;do{if(this.match(8))break;const r=this.startNode(),n=this.state.value;if(t.has(n)&&this.raise(b.ModuleAttributesWithDuplicateKeys,this.state.startLoc,{key:n}),t.add(n),this.match(134)?r.key=this.parseStringLiteral(n):r.key=this.parseIdentifier(!0),this.expect(14),!this.match(134))throw this.raise(b.ModuleAttributeInvalidValue,this.state.startLoc);r.value=this.parseStringLiteral(this.state.value),e.push(this.finishNode(r,"ImportAttribute"))}while(this.eat(12));return this.expect(8),e}parseModuleAttributes(){const e=[],t=new Set;do{const r=this.startNode();if(r.key=this.parseIdentifier(!0),"type"!==r.key.name&&this.raise(b.ModuleAttributeDifferentFromType,r.key),t.has(r.key.name)&&this.raise(b.ModuleAttributesWithDuplicateKeys,r.key,{key:r.key.name}),t.add(r.key.name),this.expect(14),!this.match(134))throw this.raise(b.ModuleAttributeInvalidValue,this.state.startLoc);r.value=this.parseStringLiteral(this.state.value),e.push(this.finishNode(r,"ImportAttribute"))}while(this.eat(12));return e}maybeParseImportAttributes(e){let t;var r=!1;if(this.match(76)){if(this.hasPrecedingLineBreak()&&40===this.lookaheadCharCode())return;this.next(),t=this.hasPlugin("moduleAttributes")?this.parseModuleAttributes():this.parseImportAttributes(),r=!0}else this.isContextual(94)&&!this.hasPrecedingLineBreak()?(this.hasPlugin("deprecatedImportAssert")||this.hasPlugin("importAssertions")||this.raise(b.ImportAttributesUseAssert,this.state.startLoc),this.hasPlugin("importAssertions")||this.addExtra(e,"deprecatedAssertSyntax",!0),this.next(),t=this.parseImportAttributes()):t=[];!r&&this.hasPlugin("importAssertions")?e.assertions=t:e.attributes=t}maybeParseDefaultImportSpecifier(e,t){if(t){const r=this.startNodeAtNode(t);return r.local=t,e.specifiers.push(this.finishImportSpecifier(r,"ImportDefaultSpecifier")),!0}return!!K(this.state.type)&&(this.parseImportSpecifierLocal(e,this.startNode(),"ImportDefaultSpecifier"),!0)}maybeParseStarImportSpecifier(e){if(this.match(55)){const t=this.startNode();return this.next(),this.expectContextual(93),this.parseImportSpecifierLocal(e,t,"ImportNamespaceSpecifier"),!0}return!1}parseNamedImportSpecifiers(e){let t=!0;for(this.expect(5);!this.eat(8);){if(t)t=!1;else{if(this.eat(14))throw this.raise(b.DestructureNamedImport,this.state.startLoc);if(this.expect(12),this.eat(8))break}const r=this.startNode(),n=this.match(134),i=this.isContextual(130);r.imported=this.parseModuleExportName();const s=this.parseImportSpecifier(r,n,"type"===e.importKind||"typeof"===e.importKind,i,void 0);e.specifiers.push(s)}}parseImportSpecifier(e,t,r,n,i){if(this.eatContextual(93))e.local=this.parseIdentifier();else{const{imported:r}=e;if(t)throw this.raise(b.ImportBindingIsString,e,{importName:r.value});this.checkReservedWord(r.name,e.loc.start,!0,!0),e.local||(e.local=it(r))}return this.finishImportSpecifier(e,"ImportSpecifier",i)}isThisParam(e){return"Identifier"===e.type&&"this"===e.name}}class Rt extends Ft{constructor(e,t,r){super(e=function(e){const t={sourceType:"script",sourceFilename:void 0,startIndex: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};if(null==e)return t;if(null!=e.annexB&&!1!==e.annexB)throw new Error("The `annexB` option can only be set to `false`.");for(const r of Object.keys(t))null!=e[r]&&(t[r]=e[r]);if(1===t.startLine)null==e.startIndex&&t.startColumn>0?t.startIndex=t.startColumn:null==e.startColumn&&t.startIndex>0&&(t.startColumn=t.startIndex);else if((null==e.startColumn||null==e.startIndex)&&null!=e.startIndex)throw new Error("With a `startLine > 1` you must also specify `startIndex` and `startColumn`.");return t}(e),t),this.options=e,this.initializeScopes(),this.plugins=r,this.filename=e.sourceFilename,this.startIndex=e.startIndex;let n=0;e.allowAwaitOutsideFunction&&(n|=1),e.allowReturnOutsideFunction&&(n|=2),e.allowImportExportEverywhere&&(n|=8),e.allowSuperOutsideMethod&&(n|=16),e.allowUndeclaredExports&&(n|=32),e.allowNewTargetOutsideFunction&&(n|=4),e.ranges&&(n|=64),e.tokens&&(n|=128),e.createImportExpressions&&(n|=256),e.createParenthesizedExpressions&&(n|=512),e.errorRecovery&&(n|=1024),e.attachComment&&(n|=2048),e.annexB&&(n|=4096),this.optionFlags=n}getScopeHandler(){return ge}parse(){this.enterInitialScopes();const e=this.startNode(),t=this.startNode();return this.nextToken(),e.errors=null,this.parseTopLevel(e,t),e.errors=this.state.errors,e.comments.length=this.state.commentsLen,e}}const Vt=function(e){const t={};for(const r of Object.keys(e))t[r]=Y(e[r]);return t}(U);function Ut(e,t){let r=Rt;const n=new Map;if(null!=e&&e.plugins){for(const t of e.plugins){let e,r;"string"==typeof t?e=t:[e,r]=t,n.has(e)||n.set(e,r||{})}!function(e){if(e.has("decorators")){if(e.has("decorators-legacy"))throw new Error("Cannot use the decorators and decorators-legacy plugin together");const t=e.get("decorators").decoratorsBeforeExport;if(null!=t&&"boolean"!=typeof t)throw new Error("'decoratorsBeforeExport' must be a boolean, if specified.");const r=e.get("decorators").allowCallParenthesized;if(null!=r&&"boolean"!=typeof r)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;const r=e.get("pipelineOperator").proposal;if(!It.includes(r)){const e=It.map((e=>`"${e}"`)).join(", ");throw new Error(`"pipelineOperator" requires "proposal" option whose value must be one of: ${e}.`)}const n="hash"===(null==(t=e.get("recordAndTuple"))?void 0:t.syntaxType);if("hack"===r){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.");const t=e.get("pipelineOperator").topicToken;if(!Nt.includes(t)){const e=Nt.map((e=>`"${e}"`)).join(", ");throw new Error(`"pipelineOperator" in "proposal": "hack" mode also requires a "topicToken" option whose value must be one of: ${e}.`)}if("#"===t&&n)throw new Error(`Plugin conflict between \`["pipelineOperator", { proposal: "hack", topicToken: "#" }]\` and \`${JSON.stringify(["recordAndTuple",e.get("recordAndTuple")])}\`.`)}else if("smart"===r&&n)throw new Error(`Plugin conflict between \`["pipelineOperator", { proposal: "smart" }]\` and \`${JSON.stringify(["recordAndTuple",e.get("recordAndTuple")])}\`.`)}if(e.has("moduleAttributes")){if(e.has("deprecatedImportAssert")||e.has("importAssertions"))throw new Error("Cannot combine importAssertions, deprecatedImportAssert and moduleAttributes plugins.");if("may-2020"!==e.get("moduleAttributes").version)throw new Error("The 'moduleAttributes' plugin requires a 'version' option, representing the last proposal update. Currently, the only supported value is 'may-2020'.")}if(e.has("importAssertions")&&e.has("deprecatedImportAssert"))throw new Error("Cannot combine importAssertions and deprecatedImportAssert plugins.");if(!e.has("deprecatedImportAssert")&&e.has("importAttributes")&&e.get("importAttributes").deprecatedAssertSyntax&&e.set("deprecatedImportAssert",{}),e.has("recordAndTuple")){const t=e.get("recordAndTuple").syntaxType;if(null!=t){const e=["hash","bar"];if(!e.includes(t))throw new Error("The 'syntaxType' option of the 'recordAndTuple' plugin must be one of: "+e.map((e=>`'${e}'`)).join(", "))}}if(e.has("asyncDoExpressions")&&!e.has("doExpressions")){const e=new Error("'asyncDoExpressions' requires 'doExpressions', please add 'doExpressions' to parser plugins.");throw e.missingPlugins="doExpressions",e}if(e.has("optionalChainingAssign")&&"2023-07"!==e.get("optionalChainingAssign").version)throw new Error("The 'optionalChainingAssign' plugin requires a 'version' option, representing the last proposal update. Currently, the only supported value is '2023-07'.")}(n),r=function(e){const t=[];for(const r of Mt)e.has(r)&&t.push(r);const r=t.join("|");let n=qt.get(r);if(!n){n=Rt;for(const e of t)n=_t[e](n);qt.set(r,n)}return n}(n)}return new r(e,t,n)}const qt=new Map;t.parse=function(e,t){var r;if("unambiguous"!==(null==(r=t)?void 0:r.sourceType))return Ut(t,e).parse();t=Object.assign({},t);try{t.sourceType="module";const r=Ut(t,e),n=r.parse();if(r.sawUnambiguousESM)return n;if(r.ambiguousScriptDifferentAst)try{return t.sourceType="script",Ut(t,e).parse()}catch(e){}else n.program.sourceType="script";return n}catch(r){try{return t.sourceType="script",Ut(t,e).parse()}catch(e){}throw r}},t.parseExpression=function(e,t){const r=Ut(t,e);return r.options.strictMode&&(r.state.strict=!0),r.getExpression()},t.tokTypes=Vt},2191:(e,t)=>{function r(e,t){let r=e;for(const[e,n]of t.entries())if("string"==typeof n){if(Array.isArray(r))throw new Error(`failed to get '${t.join(".")}'; at '${t.slice(0,e+1).join(".")}' expected a NodePath but got an array`);r=r.get(n)}else{if("number"!=typeof n)throw new Error(`failed to get '${t.join(".")}'; key '${String(n)}' is neither a string nor a number, not ${typeof n}`);if(!Array.isArray(r))throw new Error(`failed to get '${t.join(".")}'; at '${t.slice(0,e+1).join(".")}' expected an array but got a NodePath`);r=r[n]}return Array.isArray(r)||"object"==typeof r.node?r:r.node}Object.defineProperty(t,"__esModule",{value:!0}),t.matchPath=void 0,t.matchPath=function(e,t,n,i){const s=Array.isArray(n)?n.map((e=>e.node)):n.node;if(e.match(s)){const e={};for(const i in t)if(Object.prototype.hasOwnProperty.call(t,i)){const{current:s,currentKeys:a}=t[i];void 0!==s&&void 0!==a&&(e[i]=r(n,a))}i(e)}}},2205:(e,t,r)=>{var n=r(6743),i=r(1002),s=r(3144);e.exports=function(){return s(n,i,arguments)}},2226:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.TaggedTemplateExpression=function(e){this.print(e.tag),this.print(e.typeParameters),this.print(e.quasi)},t.TemplateElement=function(){throw new Error("TemplateElement printing is handled in TemplateLiteral")},t.TemplateLiteral=function(e){this._printTemplate(e,e.expressions)},t._printTemplate=function(e,t){const r=e.quasis;let n="`";for(let i=0;i<r.length-1;i++)if(n+=r[i].value.raw,this.token(n+"${",!0),this.print(t[i]),n="}",this.tokenMap){const t=this.tokenMap.findMatching(e,"}",i);t&&this._catchUpTo(t.loc.start)}n+=r[r.length-1].value.raw,this.token(n+"`",!0)}},2234:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){"eval"!==(e=(0,n.default)(e))&&"arguments"!==e||(e="_"+e);return e};var n=r(6744)},2246:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.assertAccessor=function(e,t){s("Accessor",e,t)},t.assertAnyTypeAnnotation=function(e,t){s("AnyTypeAnnotation",e,t)},t.assertArgumentPlaceholder=function(e,t){s("ArgumentPlaceholder",e,t)},t.assertArrayExpression=function(e,t){s("ArrayExpression",e,t)},t.assertArrayPattern=function(e,t){s("ArrayPattern",e,t)},t.assertArrayTypeAnnotation=function(e,t){s("ArrayTypeAnnotation",e,t)},t.assertArrowFunctionExpression=function(e,t){s("ArrowFunctionExpression",e,t)},t.assertAssignmentExpression=function(e,t){s("AssignmentExpression",e,t)},t.assertAssignmentPattern=function(e,t){s("AssignmentPattern",e,t)},t.assertAwaitExpression=function(e,t){s("AwaitExpression",e,t)},t.assertBigIntLiteral=function(e,t){s("BigIntLiteral",e,t)},t.assertBinary=function(e,t){s("Binary",e,t)},t.assertBinaryExpression=function(e,t){s("BinaryExpression",e,t)},t.assertBindExpression=function(e,t){s("BindExpression",e,t)},t.assertBlock=function(e,t){s("Block",e,t)},t.assertBlockParent=function(e,t){s("BlockParent",e,t)},t.assertBlockStatement=function(e,t){s("BlockStatement",e,t)},t.assertBooleanLiteral=function(e,t){s("BooleanLiteral",e,t)},t.assertBooleanLiteralTypeAnnotation=function(e,t){s("BooleanLiteralTypeAnnotation",e,t)},t.assertBooleanTypeAnnotation=function(e,t){s("BooleanTypeAnnotation",e,t)},t.assertBreakStatement=function(e,t){s("BreakStatement",e,t)},t.assertCallExpression=function(e,t){s("CallExpression",e,t)},t.assertCatchClause=function(e,t){s("CatchClause",e,t)},t.assertClass=function(e,t){s("Class",e,t)},t.assertClassAccessorProperty=function(e,t){s("ClassAccessorProperty",e,t)},t.assertClassBody=function(e,t){s("ClassBody",e,t)},t.assertClassDeclaration=function(e,t){s("ClassDeclaration",e,t)},t.assertClassExpression=function(e,t){s("ClassExpression",e,t)},t.assertClassImplements=function(e,t){s("ClassImplements",e,t)},t.assertClassMethod=function(e,t){s("ClassMethod",e,t)},t.assertClassPrivateMethod=function(e,t){s("ClassPrivateMethod",e,t)},t.assertClassPrivateProperty=function(e,t){s("ClassPrivateProperty",e,t)},t.assertClassProperty=function(e,t){s("ClassProperty",e,t)},t.assertCompletionStatement=function(e,t){s("CompletionStatement",e,t)},t.assertConditional=function(e,t){s("Conditional",e,t)},t.assertConditionalExpression=function(e,t){s("ConditionalExpression",e,t)},t.assertContinueStatement=function(e,t){s("ContinueStatement",e,t)},t.assertDebuggerStatement=function(e,t){s("DebuggerStatement",e,t)},t.assertDecimalLiteral=function(e,t){s("DecimalLiteral",e,t)},t.assertDeclaration=function(e,t){s("Declaration",e,t)},t.assertDeclareClass=function(e,t){s("DeclareClass",e,t)},t.assertDeclareExportAllDeclaration=function(e,t){s("DeclareExportAllDeclaration",e,t)},t.assertDeclareExportDeclaration=function(e,t){s("DeclareExportDeclaration",e,t)},t.assertDeclareFunction=function(e,t){s("DeclareFunction",e,t)},t.assertDeclareInterface=function(e,t){s("DeclareInterface",e,t)},t.assertDeclareModule=function(e,t){s("DeclareModule",e,t)},t.assertDeclareModuleExports=function(e,t){s("DeclareModuleExports",e,t)},t.assertDeclareOpaqueType=function(e,t){s("DeclareOpaqueType",e,t)},t.assertDeclareTypeAlias=function(e,t){s("DeclareTypeAlias",e,t)},t.assertDeclareVariable=function(e,t){s("DeclareVariable",e,t)},t.assertDeclaredPredicate=function(e,t){s("DeclaredPredicate",e,t)},t.assertDecorator=function(e,t){s("Decorator",e,t)},t.assertDirective=function(e,t){s("Directive",e,t)},t.assertDirectiveLiteral=function(e,t){s("DirectiveLiteral",e,t)},t.assertDoExpression=function(e,t){s("DoExpression",e,t)},t.assertDoWhileStatement=function(e,t){s("DoWhileStatement",e,t)},t.assertEmptyStatement=function(e,t){s("EmptyStatement",e,t)},t.assertEmptyTypeAnnotation=function(e,t){s("EmptyTypeAnnotation",e,t)},t.assertEnumBody=function(e,t){s("EnumBody",e,t)},t.assertEnumBooleanBody=function(e,t){s("EnumBooleanBody",e,t)},t.assertEnumBooleanMember=function(e,t){s("EnumBooleanMember",e,t)},t.assertEnumDeclaration=function(e,t){s("EnumDeclaration",e,t)},t.assertEnumDefaultedMember=function(e,t){s("EnumDefaultedMember",e,t)},t.assertEnumMember=function(e,t){s("EnumMember",e,t)},t.assertEnumNumberBody=function(e,t){s("EnumNumberBody",e,t)},t.assertEnumNumberMember=function(e,t){s("EnumNumberMember",e,t)},t.assertEnumStringBody=function(e,t){s("EnumStringBody",e,t)},t.assertEnumStringMember=function(e,t){s("EnumStringMember",e,t)},t.assertEnumSymbolBody=function(e,t){s("EnumSymbolBody",e,t)},t.assertExistsTypeAnnotation=function(e,t){s("ExistsTypeAnnotation",e,t)},t.assertExportAllDeclaration=function(e,t){s("ExportAllDeclaration",e,t)},t.assertExportDeclaration=function(e,t){s("ExportDeclaration",e,t)},t.assertExportDefaultDeclaration=function(e,t){s("ExportDefaultDeclaration",e,t)},t.assertExportDefaultSpecifier=function(e,t){s("ExportDefaultSpecifier",e,t)},t.assertExportNamedDeclaration=function(e,t){s("ExportNamedDeclaration",e,t)},t.assertExportNamespaceSpecifier=function(e,t){s("ExportNamespaceSpecifier",e,t)},t.assertExportSpecifier=function(e,t){s("ExportSpecifier",e,t)},t.assertExpression=function(e,t){s("Expression",e,t)},t.assertExpressionStatement=function(e,t){s("ExpressionStatement",e,t)},t.assertExpressionWrapper=function(e,t){s("ExpressionWrapper",e,t)},t.assertFile=function(e,t){s("File",e,t)},t.assertFlow=function(e,t){s("Flow",e,t)},t.assertFlowBaseAnnotation=function(e,t){s("FlowBaseAnnotation",e,t)},t.assertFlowDeclaration=function(e,t){s("FlowDeclaration",e,t)},t.assertFlowPredicate=function(e,t){s("FlowPredicate",e,t)},t.assertFlowType=function(e,t){s("FlowType",e,t)},t.assertFor=function(e,t){s("For",e,t)},t.assertForInStatement=function(e,t){s("ForInStatement",e,t)},t.assertForOfStatement=function(e,t){s("ForOfStatement",e,t)},t.assertForStatement=function(e,t){s("ForStatement",e,t)},t.assertForXStatement=function(e,t){s("ForXStatement",e,t)},t.assertFunction=function(e,t){s("Function",e,t)},t.assertFunctionDeclaration=function(e,t){s("FunctionDeclaration",e,t)},t.assertFunctionExpression=function(e,t){s("FunctionExpression",e,t)},t.assertFunctionParent=function(e,t){s("FunctionParent",e,t)},t.assertFunctionTypeAnnotation=function(e,t){s("FunctionTypeAnnotation",e,t)},t.assertFunctionTypeParam=function(e,t){s("FunctionTypeParam",e,t)},t.assertGenericTypeAnnotation=function(e,t){s("GenericTypeAnnotation",e,t)},t.assertIdentifier=function(e,t){s("Identifier",e,t)},t.assertIfStatement=function(e,t){s("IfStatement",e,t)},t.assertImmutable=function(e,t){s("Immutable",e,t)},t.assertImport=function(e,t){s("Import",e,t)},t.assertImportAttribute=function(e,t){s("ImportAttribute",e,t)},t.assertImportDeclaration=function(e,t){s("ImportDeclaration",e,t)},t.assertImportDefaultSpecifier=function(e,t){s("ImportDefaultSpecifier",e,t)},t.assertImportExpression=function(e,t){s("ImportExpression",e,t)},t.assertImportNamespaceSpecifier=function(e,t){s("ImportNamespaceSpecifier",e,t)},t.assertImportOrExportDeclaration=function(e,t){s("ImportOrExportDeclaration",e,t)},t.assertImportSpecifier=function(e,t){s("ImportSpecifier",e,t)},t.assertIndexedAccessType=function(e,t){s("IndexedAccessType",e,t)},t.assertInferredPredicate=function(e,t){s("InferredPredicate",e,t)},t.assertInterfaceDeclaration=function(e,t){s("InterfaceDeclaration",e,t)},t.assertInterfaceExtends=function(e,t){s("InterfaceExtends",e,t)},t.assertInterfaceTypeAnnotation=function(e,t){s("InterfaceTypeAnnotation",e,t)},t.assertInterpreterDirective=function(e,t){s("InterpreterDirective",e,t)},t.assertIntersectionTypeAnnotation=function(e,t){s("IntersectionTypeAnnotation",e,t)},t.assertJSX=function(e,t){s("JSX",e,t)},t.assertJSXAttribute=function(e,t){s("JSXAttribute",e,t)},t.assertJSXClosingElement=function(e,t){s("JSXClosingElement",e,t)},t.assertJSXClosingFragment=function(e,t){s("JSXClosingFragment",e,t)},t.assertJSXElement=function(e,t){s("JSXElement",e,t)},t.assertJSXEmptyExpression=function(e,t){s("JSXEmptyExpression",e,t)},t.assertJSXExpressionContainer=function(e,t){s("JSXExpressionContainer",e,t)},t.assertJSXFragment=function(e,t){s("JSXFragment",e,t)},t.assertJSXIdentifier=function(e,t){s("JSXIdentifier",e,t)},t.assertJSXMemberExpression=function(e,t){s("JSXMemberExpression",e,t)},t.assertJSXNamespacedName=function(e,t){s("JSXNamespacedName",e,t)},t.assertJSXOpeningElement=function(e,t){s("JSXOpeningElement",e,t)},t.assertJSXOpeningFragment=function(e,t){s("JSXOpeningFragment",e,t)},t.assertJSXSpreadAttribute=function(e,t){s("JSXSpreadAttribute",e,t)},t.assertJSXSpreadChild=function(e,t){s("JSXSpreadChild",e,t)},t.assertJSXText=function(e,t){s("JSXText",e,t)},t.assertLVal=function(e,t){s("LVal",e,t)},t.assertLabeledStatement=function(e,t){s("LabeledStatement",e,t)},t.assertLiteral=function(e,t){s("Literal",e,t)},t.assertLogicalExpression=function(e,t){s("LogicalExpression",e,t)},t.assertLoop=function(e,t){s("Loop",e,t)},t.assertMemberExpression=function(e,t){s("MemberExpression",e,t)},t.assertMetaProperty=function(e,t){s("MetaProperty",e,t)},t.assertMethod=function(e,t){s("Method",e,t)},t.assertMiscellaneous=function(e,t){s("Miscellaneous",e,t)},t.assertMixedTypeAnnotation=function(e,t){s("MixedTypeAnnotation",e,t)},t.assertModuleDeclaration=function(e,t){(0,i.default)("assertModuleDeclaration","assertImportOrExportDeclaration"),s("ModuleDeclaration",e,t)},t.assertModuleExpression=function(e,t){s("ModuleExpression",e,t)},t.assertModuleSpecifier=function(e,t){s("ModuleSpecifier",e,t)},t.assertNewExpression=function(e,t){s("NewExpression",e,t)},t.assertNoop=function(e,t){s("Noop",e,t)},t.assertNullLiteral=function(e,t){s("NullLiteral",e,t)},t.assertNullLiteralTypeAnnotation=function(e,t){s("NullLiteralTypeAnnotation",e,t)},t.assertNullableTypeAnnotation=function(e,t){s("NullableTypeAnnotation",e,t)},t.assertNumberLiteral=function(e,t){(0,i.default)("assertNumberLiteral","assertNumericLiteral"),s("NumberLiteral",e,t)},t.assertNumberLiteralTypeAnnotation=function(e,t){s("NumberLiteralTypeAnnotation",e,t)},t.assertNumberTypeAnnotation=function(e,t){s("NumberTypeAnnotation",e,t)},t.assertNumericLiteral=function(e,t){s("NumericLiteral",e,t)},t.assertObjectExpression=function(e,t){s("ObjectExpression",e,t)},t.assertObjectMember=function(e,t){s("ObjectMember",e,t)},t.assertObjectMethod=function(e,t){s("ObjectMethod",e,t)},t.assertObjectPattern=function(e,t){s("ObjectPattern",e,t)},t.assertObjectProperty=function(e,t){s("ObjectProperty",e,t)},t.assertObjectTypeAnnotation=function(e,t){s("ObjectTypeAnnotation",e,t)},t.assertObjectTypeCallProperty=function(e,t){s("ObjectTypeCallProperty",e,t)},t.assertObjectTypeIndexer=function(e,t){s("ObjectTypeIndexer",e,t)},t.assertObjectTypeInternalSlot=function(e,t){s("ObjectTypeInternalSlot",e,t)},t.assertObjectTypeProperty=function(e,t){s("ObjectTypeProperty",e,t)},t.assertObjectTypeSpreadProperty=function(e,t){s("ObjectTypeSpreadProperty",e,t)},t.assertOpaqueType=function(e,t){s("OpaqueType",e,t)},t.assertOptionalCallExpression=function(e,t){s("OptionalCallExpression",e,t)},t.assertOptionalIndexedAccessType=function(e,t){s("OptionalIndexedAccessType",e,t)},t.assertOptionalMemberExpression=function(e,t){s("OptionalMemberExpression",e,t)},t.assertParenthesizedExpression=function(e,t){s("ParenthesizedExpression",e,t)},t.assertPattern=function(e,t){s("Pattern",e,t)},t.assertPatternLike=function(e,t){s("PatternLike",e,t)},t.assertPipelineBareFunction=function(e,t){s("PipelineBareFunction",e,t)},t.assertPipelinePrimaryTopicReference=function(e,t){s("PipelinePrimaryTopicReference",e,t)},t.assertPipelineTopicExpression=function(e,t){s("PipelineTopicExpression",e,t)},t.assertPlaceholder=function(e,t){s("Placeholder",e,t)},t.assertPrivate=function(e,t){s("Private",e,t)},t.assertPrivateName=function(e,t){s("PrivateName",e,t)},t.assertProgram=function(e,t){s("Program",e,t)},t.assertProperty=function(e,t){s("Property",e,t)},t.assertPureish=function(e,t){s("Pureish",e,t)},t.assertQualifiedTypeIdentifier=function(e,t){s("QualifiedTypeIdentifier",e,t)},t.assertRecordExpression=function(e,t){s("RecordExpression",e,t)},t.assertRegExpLiteral=function(e,t){s("RegExpLiteral",e,t)},t.assertRegexLiteral=function(e,t){(0,i.default)("assertRegexLiteral","assertRegExpLiteral"),s("RegexLiteral",e,t)},t.assertRestElement=function(e,t){s("RestElement",e,t)},t.assertRestProperty=function(e,t){(0,i.default)("assertRestProperty","assertRestElement"),s("RestProperty",e,t)},t.assertReturnStatement=function(e,t){s("ReturnStatement",e,t)},t.assertScopable=function(e,t){s("Scopable",e,t)},t.assertSequenceExpression=function(e,t){s("SequenceExpression",e,t)},t.assertSpreadElement=function(e,t){s("SpreadElement",e,t)},t.assertSpreadProperty=function(e,t){(0,i.default)("assertSpreadProperty","assertSpreadElement"),s("SpreadProperty",e,t)},t.assertStandardized=function(e,t){s("Standardized",e,t)},t.assertStatement=function(e,t){s("Statement",e,t)},t.assertStaticBlock=function(e,t){s("StaticBlock",e,t)},t.assertStringLiteral=function(e,t){s("StringLiteral",e,t)},t.assertStringLiteralTypeAnnotation=function(e,t){s("StringLiteralTypeAnnotation",e,t)},t.assertStringTypeAnnotation=function(e,t){s("StringTypeAnnotation",e,t)},t.assertSuper=function(e,t){s("Super",e,t)},t.assertSwitchCase=function(e,t){s("SwitchCase",e,t)},t.assertSwitchStatement=function(e,t){s("SwitchStatement",e,t)},t.assertSymbolTypeAnnotation=function(e,t){s("SymbolTypeAnnotation",e,t)},t.assertTSAnyKeyword=function(e,t){s("TSAnyKeyword",e,t)},t.assertTSArrayType=function(e,t){s("TSArrayType",e,t)},t.assertTSAsExpression=function(e,t){s("TSAsExpression",e,t)},t.assertTSBaseType=function(e,t){s("TSBaseType",e,t)},t.assertTSBigIntKeyword=function(e,t){s("TSBigIntKeyword",e,t)},t.assertTSBooleanKeyword=function(e,t){s("TSBooleanKeyword",e,t)},t.assertTSCallSignatureDeclaration=function(e,t){s("TSCallSignatureDeclaration",e,t)},t.assertTSConditionalType=function(e,t){s("TSConditionalType",e,t)},t.assertTSConstructSignatureDeclaration=function(e,t){s("TSConstructSignatureDeclaration",e,t)},t.assertTSConstructorType=function(e,t){s("TSConstructorType",e,t)},t.assertTSDeclareFunction=function(e,t){s("TSDeclareFunction",e,t)},t.assertTSDeclareMethod=function(e,t){s("TSDeclareMethod",e,t)},t.assertTSEntityName=function(e,t){s("TSEntityName",e,t)},t.assertTSEnumBody=function(e,t){s("TSEnumBody",e,t)},t.assertTSEnumDeclaration=function(e,t){s("TSEnumDeclaration",e,t)},t.assertTSEnumMember=function(e,t){s("TSEnumMember",e,t)},t.assertTSExportAssignment=function(e,t){s("TSExportAssignment",e,t)},t.assertTSExpressionWithTypeArguments=function(e,t){s("TSExpressionWithTypeArguments",e,t)},t.assertTSExternalModuleReference=function(e,t){s("TSExternalModuleReference",e,t)},t.assertTSFunctionType=function(e,t){s("TSFunctionType",e,t)},t.assertTSImportEqualsDeclaration=function(e,t){s("TSImportEqualsDeclaration",e,t)},t.assertTSImportType=function(e,t){s("TSImportType",e,t)},t.assertTSIndexSignature=function(e,t){s("TSIndexSignature",e,t)},t.assertTSIndexedAccessType=function(e,t){s("TSIndexedAccessType",e,t)},t.assertTSInferType=function(e,t){s("TSInferType",e,t)},t.assertTSInstantiationExpression=function(e,t){s("TSInstantiationExpression",e,t)},t.assertTSInterfaceBody=function(e,t){s("TSInterfaceBody",e,t)},t.assertTSInterfaceDeclaration=function(e,t){s("TSInterfaceDeclaration",e,t)},t.assertTSIntersectionType=function(e,t){s("TSIntersectionType",e,t)},t.assertTSIntrinsicKeyword=function(e,t){s("TSIntrinsicKeyword",e,t)},t.assertTSLiteralType=function(e,t){s("TSLiteralType",e,t)},t.assertTSMappedType=function(e,t){s("TSMappedType",e,t)},t.assertTSMethodSignature=function(e,t){s("TSMethodSignature",e,t)},t.assertTSModuleBlock=function(e,t){s("TSModuleBlock",e,t)},t.assertTSModuleDeclaration=function(e,t){s("TSModuleDeclaration",e,t)},t.assertTSNamedTupleMember=function(e,t){s("TSNamedTupleMember",e,t)},t.assertTSNamespaceExportDeclaration=function(e,t){s("TSNamespaceExportDeclaration",e,t)},t.assertTSNeverKeyword=function(e,t){s("TSNeverKeyword",e,t)},t.assertTSNonNullExpression=function(e,t){s("TSNonNullExpression",e,t)},t.assertTSNullKeyword=function(e,t){s("TSNullKeyword",e,t)},t.assertTSNumberKeyword=function(e,t){s("TSNumberKeyword",e,t)},t.assertTSObjectKeyword=function(e,t){s("TSObjectKeyword",e,t)},t.assertTSOptionalType=function(e,t){s("TSOptionalType",e,t)},t.assertTSParameterProperty=function(e,t){s("TSParameterProperty",e,t)},t.assertTSParenthesizedType=function(e,t){s("TSParenthesizedType",e,t)},t.assertTSPropertySignature=function(e,t){s("TSPropertySignature",e,t)},t.assertTSQualifiedName=function(e,t){s("TSQualifiedName",e,t)},t.assertTSRestType=function(e,t){s("TSRestType",e,t)},t.assertTSSatisfiesExpression=function(e,t){s("TSSatisfiesExpression",e,t)},t.assertTSStringKeyword=function(e,t){s("TSStringKeyword",e,t)},t.assertTSSymbolKeyword=function(e,t){s("TSSymbolKeyword",e,t)},t.assertTSTemplateLiteralType=function(e,t){s("TSTemplateLiteralType",e,t)},t.assertTSThisType=function(e,t){s("TSThisType",e,t)},t.assertTSTupleType=function(e,t){s("TSTupleType",e,t)},t.assertTSType=function(e,t){s("TSType",e,t)},t.assertTSTypeAliasDeclaration=function(e,t){s("TSTypeAliasDeclaration",e,t)},t.assertTSTypeAnnotation=function(e,t){s("TSTypeAnnotation",e,t)},t.assertTSTypeAssertion=function(e,t){s("TSTypeAssertion",e,t)},t.assertTSTypeElement=function(e,t){s("TSTypeElement",e,t)},t.assertTSTypeLiteral=function(e,t){s("TSTypeLiteral",e,t)},t.assertTSTypeOperator=function(e,t){s("TSTypeOperator",e,t)},t.assertTSTypeParameter=function(e,t){s("TSTypeParameter",e,t)},t.assertTSTypeParameterDeclaration=function(e,t){s("TSTypeParameterDeclaration",e,t)},t.assertTSTypeParameterInstantiation=function(e,t){s("TSTypeParameterInstantiation",e,t)},t.assertTSTypePredicate=function(e,t){s("TSTypePredicate",e,t)},t.assertTSTypeQuery=function(e,t){s("TSTypeQuery",e,t)},t.assertTSTypeReference=function(e,t){s("TSTypeReference",e,t)},t.assertTSUndefinedKeyword=function(e,t){s("TSUndefinedKeyword",e,t)},t.assertTSUnionType=function(e,t){s("TSUnionType",e,t)},t.assertTSUnknownKeyword=function(e,t){s("TSUnknownKeyword",e,t)},t.assertTSVoidKeyword=function(e,t){s("TSVoidKeyword",e,t)},t.assertTaggedTemplateExpression=function(e,t){s("TaggedTemplateExpression",e,t)},t.assertTemplateElement=function(e,t){s("TemplateElement",e,t)},t.assertTemplateLiteral=function(e,t){s("TemplateLiteral",e,t)},t.assertTerminatorless=function(e,t){s("Terminatorless",e,t)},t.assertThisExpression=function(e,t){s("ThisExpression",e,t)},t.assertThisTypeAnnotation=function(e,t){s("ThisTypeAnnotation",e,t)},t.assertThrowStatement=function(e,t){s("ThrowStatement",e,t)},t.assertTopicReference=function(e,t){s("TopicReference",e,t)},t.assertTryStatement=function(e,t){s("TryStatement",e,t)},t.assertTupleExpression=function(e,t){s("TupleExpression",e,t)},t.assertTupleTypeAnnotation=function(e,t){s("TupleTypeAnnotation",e,t)},t.assertTypeAlias=function(e,t){s("TypeAlias",e,t)},t.assertTypeAnnotation=function(e,t){s("TypeAnnotation",e,t)},t.assertTypeCastExpression=function(e,t){s("TypeCastExpression",e,t)},t.assertTypeParameter=function(e,t){s("TypeParameter",e,t)},t.assertTypeParameterDeclaration=function(e,t){s("TypeParameterDeclaration",e,t)},t.assertTypeParameterInstantiation=function(e,t){s("TypeParameterInstantiation",e,t)},t.assertTypeScript=function(e,t){s("TypeScript",e,t)},t.assertTypeofTypeAnnotation=function(e,t){s("TypeofTypeAnnotation",e,t)},t.assertUnaryExpression=function(e,t){s("UnaryExpression",e,t)},t.assertUnaryLike=function(e,t){s("UnaryLike",e,t)},t.assertUnionTypeAnnotation=function(e,t){s("UnionTypeAnnotation",e,t)},t.assertUpdateExpression=function(e,t){s("UpdateExpression",e,t)},t.assertUserWhitespacable=function(e,t){s("UserWhitespacable",e,t)},t.assertV8IntrinsicIdentifier=function(e,t){s("V8IntrinsicIdentifier",e,t)},t.assertVariableDeclaration=function(e,t){s("VariableDeclaration",e,t)},t.assertVariableDeclarator=function(e,t){s("VariableDeclarator",e,t)},t.assertVariance=function(e,t){s("Variance",e,t)},t.assertVoidTypeAnnotation=function(e,t){s("VoidTypeAnnotation",e,t)},t.assertWhile=function(e,t){s("While",e,t)},t.assertWhileStatement=function(e,t){s("WhileStatement",e,t)},t.assertWithStatement=function(e,t){s("WithStatement",e,t)},t.assertYieldExpression=function(e,t){s("YieldExpression",e,t)};var n=r(3828),i=r(3762);function s(e,t,r){if(!(0,n.default)(e,t,r))throw new Error(`Expected type "${e}" with option ${JSON.stringify(r)}, but instead got "${t.type}".`)}},2253:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.getInclusionReasons=function(e,t,r){const a=r[e]||{};return Object.keys(t).reduce(((e,r)=>{const o=(0,s.getLowestImplementedVersion)(a,r),l=t[r];if(o){const t=(0,s.isUnreleasedVersion)(o,r);(0,s.isUnreleasedVersion)(l,r)||!t&&!n.lt(l.toString(),(0,s.semverify)(o))||(e[r]=(0,i.prettifyVersion)(l))}else e[r]=(0,i.prettifyVersion)(l);return e}),{})};var n=r(5345),i=r(228),s=r(6299)},2257:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.arrowFunctionToExpression=function({allowInsertArrow:e=!0,allowInsertArrowWithRest:t=e,noNewArrows:r=!(e=>null==(e=arguments[0])?void 0:e.specCompliant)()}={}){if(!this.isArrowFunctionExpression())throw this.buildCodeFrameError("Cannot convert non-arrow function to a function expression.");let n=this;var i;r||(n=null!=(i=n.ensureFunctionName(!1))?i:n);const{thisBinding:s,fnPath:a}=$(n,r,e,t);if(a.ensureBlock(),function(e,t){e.node.type=t}(a,"FunctionExpression"),!r){const e=s?null:a.scope.generateUidIdentifier("arrowCheckId");return e&&a.parentPath.scope.push({id:e,init:S([])}),a.get("body").unshiftContainer("body",f(p(this.hub.addHelper("newArrowCheck"),[I(),h(e?e.name:s)]))),a.replaceWith(p(v(a.node,h("bind")),[e?h(e.name):I()])),a.get("callee.object")}return a},t.ensureBlock=function(){const e=this.get("body"),t=e.node;if(Array.isArray(e))throw new Error("Can't convert array path to a block statement");if(!t)throw new Error("Can't convert node without a body");if(e.isBlockStatement())return t;const r=[];let n,i,s="body";e.isStatement()?(i="body",n=0,r.push(e.node)):(s+=".body.0",this.isFunction()?(n="argument",r.push(P(e.node))):(n="expression",r.push(f(e.node))));this.node.body=u(r);const o=this.get(s);return a.setup.call(e,o,i?o.node[i]:o.node,i,n),this.node},t.ensureFunctionName=function(e){if(this.node.id)return this;const t=B(this.node,this.parent);if(null==t)return this;let{name:r}=t;if(!e&&/[\uD800-\uDFFF]/.test(r))return null;if(r.startsWith("get ")||r.startsWith("set "))return null;r=M(r.replace(/[/ ]/g,"_"));const n=h(r);q(n,t.originalNode);const s={needsRename:!1,name:r},{scope:a}=this,o=a.getOwnBinding(r);o?"param"===o.kind&&(s.needsRename=!0):(a.parent.hasBinding(r)||a.hasGlobal(r))&&this.traverse(z,s);if(!s.needsRename)return this.node.id=n,a.getProgramParent().references[n.name]=!0,this;if(a.hasBinding(n.name)&&!a.hasGlobal(n.name))return a.rename(n.name),this.node.id=n,a.getProgramParent().references[n.name]=!0,this;if(!k(this.node))return null;const l=a.generateUidIdentifier(n.name),c=[];for(let e=0,t=function(e){const t=e.params.findIndex((e=>D(e)||j(e)));return-1===t?e.params.length:t}(this.node);e<t;e++)c.push(a.generateUidIdentifier("x"));const u=i.default.expression.ast` | |
(function (${l}) { | |
function ${n}(${c}) { | |
return ${L(l)}.apply(this, arguments); | |
} | |
${L(n)}.toString = function () { | |
return ${L(l)}.toString(); | |
} | |
return ${L(n)}; | |
})(${N(this.node)}) |
View raw
(Sorry about that, but we can’t show files that are this big right now.)
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment