diff --git a/.gitignore b/.gitignore index 58cff5e30..cc779f988 100644 --- a/.gitignore +++ b/.gitignore @@ -24,4 +24,6 @@ thumbs.db android-runtime.iml test-app/build-tools/*.log test-app/analytics/build-statistics.json -package-lock.json \ No newline at end of file +package-lock.json +test-app/build-tools/jsparser/tests/cases/*/internal/livesync.js +test-app/build-tools/*.jar diff --git a/build-artifacts/project-template-gradle/settings.gradle b/build-artifacts/project-template-gradle/settings.gradle index e1226cf41..8f5284692 100644 --- a/build-artifacts/project-template-gradle/settings.gradle +++ b/build-artifacts/project-template-gradle/settings.gradle @@ -1,3 +1,10 @@ +pluginManagement { + repositories { + gradlePluginPortal() + mavenLocal() + } +} + rootProject.name = "__PROJECT_NAME__" include ':app'//, ':runtime', ':runtime-binding-generator' diff --git a/build.gradle b/build.gradle index 93be4ace6..630c1eb5a 100644 --- a/build.gradle +++ b/build.gradle @@ -252,14 +252,18 @@ task copyFilesToProjectTemeplate { copy { from "$TEST_APP_PATH/app/src/main/java/com/tns/" include "*.java" - exclude "NativeScriptApplication.java" - exclude "NativeScriptActivity.java" + exclude "TestNativeScriptApplication.java" + exclude "TestNativeScriptActivity.java" into "$DIST_FRAMEWORK_PATH/app/src/main/java/com/tns" } copy { from "$TEST_APP_PATH/app/src/main/java/com/tns/internal" into "$DIST_FRAMEWORK_PATH/app/src/main/java/com/tns/internal" } + copy { + from "$TEST_APP_PATH/app/src/main/java/com/tns/embedding" + into "$DIST_FRAMEWORK_PATH/app/src/main/java/com/tns/embedding" + } copy { from "$BUILD_TOOLS_PATH/static-binding-generator/build/libs/static-binding-generator.jar" into "$DIST_FRAMEWORK_PATH/build-tools" @@ -295,6 +299,10 @@ task copyFilesToProjectTemeplate { from "$TEST_APP_PATH/app/build.gradle" into "$DIST_FRAMEWORK_PATH/app" } + copy { + from "$TEST_APP_PATH/app/nativescript.gradle" + into "$DIST_FRAMEWORK_PATH/app" + } copy { from "$TEST_APP_PATH/build.gradle" into "$DIST_FRAMEWORK_PATH" diff --git a/test-app/.gitignore b/test-app/.gitignore index e94ad2aa9..8af3c8451 100644 --- a/test-app/.gitignore +++ b/test-app/.gitignore @@ -21,6 +21,4 @@ app/app.iml treeNodeStream.dat treeStringsStream.dat treeValueStream.dat -NativeScriptActivity.java -NativeScriptApplication.java **/com/tns/gen \ No newline at end of file diff --git a/test-app/app/src/main/AndroidManifest.xml b/test-app/app/src/main/AndroidManifest.xml index b0a7d50b3..b4cc52093 100644 --- a/test-app/app/src/main/AndroidManifest.xml +++ b/test-app/app/src/main/AndroidManifest.xml @@ -9,14 +9,14 @@ - + diff --git a/test-app/app/src/main/assets/app/MyActivity.js b/test-app/app/src/main/assets/app/MyActivity.js index fbea5688e..cb15d6d32 100644 --- a/test-app/app/src/main/assets/app/MyActivity.js +++ b/test-app/app/src/main/assets/app/MyActivity.js @@ -12,7 +12,7 @@ } } - @JavaProxy("com.tns.NativeScriptActivity") + @JavaProxy("com.tns.TestNativeScriptActivity") class MyActivity extends android.app.Activity { onCreate(bundle: android.os.Bundle) @@ -62,7 +62,7 @@ var MyActivity = (function (_super) { }; MyActivity = __decorate([ - JavaProxy("com.tns.NativeScriptActivity") + JavaProxy("com.tns.TestNativeScriptActivity") ], MyActivity); return MyActivity; })(android.app.Activity); \ No newline at end of file diff --git a/test-app/app/src/main/assets/app/MyApp.js b/test-app/app/src/main/assets/app/MyApp.js index 4de284a15..e65e8e910 100644 --- a/test-app/app/src/main/assets/app/MyApp.js +++ b/test-app/app/src/main/assets/app/MyApp.js @@ -1,5 +1,5 @@ // demonstrates how to extend class in JavaScript with prebuilt Java proxy -var MyApp = android.app.Application.extend("com.tns.NativeScriptApplication", +var MyApp = android.app.Application.extend("com.tns.TestNativeScriptApplication", { onCreate: function() { diff --git a/test-app/app/src/main/java/com/tns/tests/StringConversionTest.java b/test-app/app/src/main/java/com/tns/tests/StringConversionTest.java index b78f1f802..56c01da90 100644 --- a/test-app/app/src/main/java/com/tns/tests/StringConversionTest.java +++ b/test-app/app/src/main/java/com/tns/tests/StringConversionTest.java @@ -71,7 +71,7 @@ public void callback(String str) { private String readString() throws Exception { String str = null; - Context context = com.tns.NativeScriptApplication.getInstance(); + Context context = com.tns.TestNativeScriptApplication.getInstance(); InputStream inputStream = null; try { diff --git a/test-app/app/src/main/res/layout/main.xml b/test-app/app/src/main/res/layout/main.xml new file mode 100644 index 000000000..77d9ef65f --- /dev/null +++ b/test-app/app/src/main/res/layout/main.xml @@ -0,0 +1,6 @@ + + + + \ No newline at end of file diff --git a/test-app/build-tools/static-binding-generator/src/main/java/org/nativescript/staticbindinggenerator/Main.java b/test-app/build-tools/static-binding-generator/src/main/java/org/nativescript/staticbindinggenerator/Main.java index c4b96d920..d171507f9 100644 --- a/test-app/build-tools/static-binding-generator/src/main/java/org/nativescript/staticbindinggenerator/Main.java +++ b/test-app/build-tools/static-binding-generator/src/main/java/org/nativescript/staticbindinggenerator/Main.java @@ -1,6 +1,7 @@ package org.nativescript.staticbindinggenerator; import org.apache.commons.io.FileUtils; +import org.apache.commons.io.IOUtils; import org.json.JSONArray; import org.json.JSONException; import org.json.JSONObject; @@ -11,8 +12,10 @@ import java.io.File; import java.io.IOException; +import java.io.InputStream; import java.io.PrintWriter; import java.nio.charset.Charset; +import java.nio.file.Path; import java.nio.file.Paths; import java.util.ArrayList; import java.util.List; @@ -112,6 +115,10 @@ private static void validateInput() throws IOException { List inputFile = Generator.getRows(SBG_INPUT_FILE); inputDir = new File(inputFile.get(0).getRow()); + Path assetsInternalDirPath = inputDir.getParentFile().toPath().resolve("internal"); + extractResource(assetsInternalDirPath.resolve("ts_helpers.js"), "ts_helpers.js"); + extractResource(assetsInternalDirPath.resolve("livesync.js"), "livesync.js"); + webpackWorkersExcludePath = Paths.get(inputDir.getAbsolutePath(), "__worker-chunks.json").toString(); if (!inputDir.exists() || !inputDir.isDirectory()) { @@ -132,7 +139,9 @@ private static void validateInput() throws IOException { * This output file should contain all the information needed to generate java counterparts to the traversed js classes. * */ private static void runJsParser() { - String parserPath = Paths.get(System.getProperty("user.dir"), "jsparser", "js_parser.js").toString(); + Path jsParserPath = Paths.get(System.getProperty("user.dir"), "jsparser", "js_parser.js"); + extractResource(jsParserPath, "js_parser.js"); + String parserPath = jsParserPath.toString(); NodeJSProcess nodeJSProcess = new NodeJSProcessImpl(new ProcessExecutorImpl(), new EnvironmentVariablesReaderImpl()); int exitCode = nodeJSProcess.runScript(parserPath); @@ -141,6 +150,40 @@ private static void runJsParser() { } } + private static void extractResource(Path savePath, String resourceName) { + File jsParserFile = savePath.toFile(); + if (!jsParserFile.exists()) { + try { + jsParserFile.getParentFile().mkdirs(); + jsParserFile.createNewFile(); + InputStream source = Main.class.getResourceAsStream("/" + resourceName); + if (source == null) { + throw new RuntimeException(resourceName + " not found in resources"); + } + FileUtils.copyInputStreamToFile(source, jsParserFile); + } catch (IOException e) { + throw new RuntimeException(e); + } + } + } + + private static void maybeExtractJsParserSource(Path jsParserPath) { + File jsParserFile = jsParserPath.toFile(); + if (!jsParserFile.exists()) { + try { + jsParserFile.getParentFile().mkdirs(); + jsParserFile.createNewFile(); + InputStream source = Main.class.getResourceAsStream("/js_parser.js"); + if (source == null) { + throw new RuntimeException("js_parser.js not found in resources"); + } + FileUtils.copyInputStreamToFile(source, jsParserFile); + } catch (IOException e) { + throw new RuntimeException(e); + } + } + } + private static Boolean rootTraversed = false; private static void traverseDirectory(File currentDir, boolean traverseExplicitly) throws IOException, JSONException { diff --git a/test-app/build-tools/static-binding-generator/src/main/resources/js_parser.js b/test-app/build-tools/static-binding-generator/src/main/resources/js_parser.js new file mode 100644 index 000000000..b0a70a7cb --- /dev/null +++ b/test-app/build-tools/static-binding-generator/src/main/resources/js_parser.js @@ -0,0 +1 @@ +(()=>{var e={11858:(e,t,n)=>{var r=n(57147),a=n(71017);e.exports=function(e){function t(t){r.truncateSync(t,0),e&&e.logger&&e.logger.info("+cleared out file: "+t)}function n(e){var t=a.dirname(e);return r.existsSync(t)||(n(t),r.mkdirSync(t)),!0}return{cleanOutFile:t,createFile:function(a){n(a)&&(r.writeFileSync(a,""),e&&e.logger&&e.logger.info("+created ast output file: ")),t(a)},ensureDirectories:n}}},92758:(e,t,n)=>{n(57147);var r=n(71017);n(22037),n(11858)(),e.exports=function(e){r.dirname(e.logPath);var t=function(e,t,n){var r={};function a(e){return(t=new Date).getFullYear()+"-"+t.getMonth()+"-"+t.getDate()+"/"+t.getHours()+":"+t.getMinutes()+":"+t.getSeconds()+"\t"+e;var t}return r.log=function(e){console.log(a(e))},r.info=r.log,r.warn=function(e){console.warn(a(e))},r.error=function(e){console.error(a(e))},r}(e.APP_NAME);if(e.disable)for(var n in t)("error"!=n&&"warn"!=n||!e.showErrorsAndWarnings)&&(t[n]=function(){});return t}},73834:(e,t)=>{"use strict";function n(e,t){if(null==e)return{};var n,r,a={},i=Object.keys(e);for(r=0;r=0||(a[n]=e[n]);return a}Object.defineProperty(t,"__esModule",{value:!0});class r{constructor(e,t,n){this.line=void 0,this.column=void 0,this.index=void 0,this.line=e,this.column=t,this.index=n}}class a{constructor(e,t){this.start=void 0,this.end=void 0,this.filename=void 0,this.identifierName=void 0,this.start=e,this.end=t}}function i(e,t){const{line:n,column:a,index:i}=e;return new r(n,a+t,i+t)}const s=Object.freeze({SyntaxError:"BABEL_PARSER_SYNTAX_ERROR",SourceTypeModuleError:"BABEL_PARSER_SOURCETYPE_MODULE_REQUIRED"}),o=(e,t=e.length-1)=>({get(){return e.reduce(((e,t)=>e[t]),this)},set(n){e.reduce(((e,r,a)=>a===t?e[r]=n:e[r]),this)}}),l=(e,t,n)=>Object.keys(n).map((e=>[e,n[e]])).filter((([,e])=>!!e)).map((([e,t])=>[e,"function"==typeof t?{value:t,enumerable:!1}:"string"==typeof t.reflect?Object.assign({},t,o(t.reflect.split("."))):t])).reduce(((e,[t,n])=>Object.defineProperty(e,t,Object.assign({configurable:!0},n))),Object.assign(new e,t)),p={ArrayPattern:"array destructuring pattern",AssignmentExpression:"assignment expression",AssignmentPattern:"assignment expression",ArrowFunctionExpression:"arrow function expression",ConditionalExpression:"conditional expression",ForOfStatement:"for-of statement",ForInStatement:"for-in statement",ForStatement:"for-loop",FormalParameters:"function parameter list",Identifier:"identifier",ObjectPattern:"object destructuring pattern",ParenthesizedExpression:"parenthesized expression",RestElement:"rest element",UpdateExpression:{true:"prefix operation",false:"postfix operation"},VariableDeclarator:"variable declaration",YieldExpression:"yield expression"},c=({type:e,prefix:t})=>"UpdateExpression"===e?p.UpdateExpression[String(t)]:p[e],u=new Set(["ArrowFunctionExpression","AssignmentExpression","ConditionalExpression","YieldExpression"]),d=["toMessage"];function f(e){let{toMessage:t}=e,a=n(e,d);return function e({loc:n,details:i}){return l(SyntaxError,Object.assign({},a,{loc:n}),{clone(t={}){const n=t.loc||{};return e({loc:new r("line"in n?n.line:this.loc.line,"column"in n?n.column:this.loc.column,"index"in n?n.index:this.loc.index),details:Object.assign({},this.details,t.details)})},details:{value:i,enumerable:!1},message:{get(){return`${t(this.details)} (${this.loc.line}:${this.loc.column})`},set(e){Object.defineProperty(this,"message",{value:e})}},pos:{reflect:"loc.index",enumerable:!0},missingPlugin:"missingPlugin"in i&&{reflect:"details.missingPlugin",enumerable:!0}})}}function y(e,t){return Object.assign({toMessage:"string"==typeof e?()=>e:e},t)}function m(e,t){if(Array.isArray(e))return t=>m(t,e[0]);const n=e(y),r={};for(const e of Object.keys(n))r[e]=f(Object.assign({code:s.SyntaxError,reasonCode:e},t?{syntaxPlugin:t}:{},n[e]));return r}const h=Object.assign({},m((e=>({ImportMetaOutsideModule:e("import.meta may appear only with 'sourceType: \"module\"'",{code:s.SourceTypeModuleError}),ImportOutsideModule:e("'import' and 'export' may appear only with 'sourceType: \"module\"'",{code:s.SourceTypeModuleError})}))),m((e=>({AccessorIsGenerator:e((({kind:e})=>`A ${e}ter cannot be a generator.`)),ArgumentsInClass:e("'arguments' is only allowed in functions and class methods."),AsyncFunctionInSingleStatementContext:e("Async functions can only be declared at the top level or inside a block."),AwaitBindingIdentifier:e("Can not use 'await' as identifier inside an async function."),AwaitBindingIdentifierInStaticBlock:e("Can not use 'await' as identifier inside a static block."),AwaitExpressionFormalParameter:e("'await' is not allowed in async function parameters."),AwaitNotInAsyncContext:e("'await' is only allowed within async functions and at the top levels of modules."),AwaitNotInAsyncFunction:e("'await' is only allowed within async functions."),BadGetterArity:e("A 'get' accesor must not have any formal parameters."),BadSetterArity:e("A 'set' accesor must have exactly one formal parameter."),BadSetterRestParameter:e("A 'set' accesor function argument must not be a rest parameter."),ConstructorClassField:e("Classes may not have a field named 'constructor'."),ConstructorClassPrivateField:e("Classes may not have a private field named '#constructor'."),ConstructorIsAccessor:e("Class constructor may not be an accessor."),ConstructorIsAsync:e("Constructor can't be an async function."),ConstructorIsGenerator:e("Constructor can't be a generator."),DeclarationMissingInitializer:e((({kind:e})=>`Missing initializer in ${e} declaration.`)),DecoratorBeforeExport:e("Decorators must be placed *before* the 'export' keyword. You can set the 'decoratorsBeforeExport' option to false to use the 'export @decorator class {}' syntax."),DecoratorConstructor:e("Decorators can't be used with a constructor. Did you mean '@dec class { ... }'?"),DecoratorExportClass:e("Using the export keyword between a decorator and a class is not allowed. Please use `export @dec class` instead."),DecoratorSemicolon:e("Decorators must not be followed by a semicolon."),DecoratorStaticBlock:e("Decorators can't be used with a static block."),DeletePrivateField:e("Deleting a private field is not allowed."),DestructureNamedImport:e("ES2015 named imports do not destructure. Use another statement for destructuring after the import."),DuplicateConstructor:e("Duplicate constructor in the same class."),DuplicateDefaultExport:e("Only one default export allowed per module."),DuplicateExport:e((({exportName:e})=>`\`${e}\` has already been exported. Exported identifiers must be unique.`)),DuplicateProto:e("Redefinition of __proto__ property."),DuplicateRegExpFlags:e("Duplicate regular expression flag."),ElementAfterRest:e("Rest element must be last element."),EscapedCharNotAnIdentifier:e("Invalid Unicode escape."),ExportBindingIsString:e((({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:e("'from' is not allowed as an identifier after 'export default'."),ForInOfLoopInitializer:e((({type:e})=>`'${"ForInStatement"===e?"for-in":"for-of"}' loop variable declaration may not have an initializer.`)),ForOfAsync:e("The left-hand side of a for-of loop may not be 'async'."),ForOfLet:e("The left-hand side of a for-of loop may not start with 'let'."),GeneratorInSingleStatementContext:e("Generators can only be declared at the top level or inside a block."),IllegalBreakContinue:e((({type:e})=>`Unsyntactic ${"BreakStatement"===e?"break":"continue"}.`)),IllegalLanguageModeDirective:e("Illegal 'use strict' directive in function with non-simple parameter list."),IllegalReturn:e("'return' outside of function."),ImportBindingIsString:e((({importName:e})=>`A string literal cannot be used as an imported binding.\n- Did you mean \`import { "${e}" as foo }\`?`)),ImportCallArgumentTrailingComma:e("Trailing comma is disallowed inside import(...) arguments."),ImportCallArity:e((({maxArgumentCount:e})=>`\`import()\` requires exactly ${1===e?"one argument":"one or two arguments"}.`)),ImportCallNotNewExpression:e("Cannot use new with import(...)."),ImportCallSpreadArgument:e("`...` is not allowed in `import()`."),IncompatibleRegExpUVFlags:e("The 'u' and 'v' regular expression flags cannot be enabled at the same time."),InvalidBigIntLiteral:e("Invalid BigIntLiteral."),InvalidCodePoint:e("Code point out of bounds."),InvalidCoverInitializedName:e("Invalid shorthand property initializer."),InvalidDecimal:e("Invalid decimal."),InvalidDigit:e((({radix:e})=>`Expected number in radix ${e}.`)),InvalidEscapeSequence:e("Bad character escape sequence."),InvalidEscapeSequenceTemplate:e("Invalid escape sequence in template."),InvalidEscapedReservedWord:e((({reservedWord:e})=>`Escape sequence in keyword ${e}.`)),InvalidIdentifier:e((({identifierName:e})=>`Invalid identifier ${e}.`)),InvalidLhs:e((({ancestor:e})=>`Invalid left-hand side in ${c(e)}.`)),InvalidLhsBinding:e((({ancestor:e})=>`Binding invalid left-hand side in ${c(e)}.`)),InvalidNumber:e("Invalid number."),InvalidOrMissingExponent:e("Floating-point numbers require a valid exponent after the 'e'."),InvalidOrUnexpectedToken:e((({unexpected:e})=>`Unexpected character '${e}'.`)),InvalidParenthesizedAssignment:e("Invalid parenthesized assignment pattern."),InvalidPrivateFieldResolution:e((({identifierName:e})=>`Private name #${e} is not defined.`)),InvalidPropertyBindingPattern:e("Binding member expression."),InvalidRecordProperty:e("Only properties and spread elements are allowed in record definitions."),InvalidRestAssignmentPattern:e("Invalid rest operator's argument."),LabelRedeclaration:e((({labelName:e})=>`Label '${e}' is already declared.`)),LetInLexicalBinding:e("'let' is not allowed to be used as a name in 'let' or 'const' declarations."),LineTerminatorBeforeArrow:e("No line break is allowed before '=>'."),MalformedRegExpFlags:e("Invalid regular expression flag."),MissingClassName:e("A class name is required."),MissingEqInAssignment:e("Only '=' operator can be used for specifying default value."),MissingSemicolon:e("Missing semicolon."),MissingPlugin:e((({missingPlugin:e})=>`This experimental syntax requires enabling the parser plugin: ${e.map((e=>JSON.stringify(e))).join(", ")}.`)),MissingOneOfPlugins:e((({missingPlugin:e})=>`This experimental syntax requires enabling one of the following parser plugin(s): ${e.map((e=>JSON.stringify(e))).join(", ")}.`)),MissingUnicodeEscape:e("Expecting Unicode escape sequence \\uXXXX."),MixingCoalesceWithLogical:e("Nullish coalescing operator(??) requires parens when mixing with logical operators."),ModuleAttributeDifferentFromType:e("The only accepted module attribute is `type`."),ModuleAttributeInvalidValue:e("Only string literals are allowed as module attribute values."),ModuleAttributesWithDuplicateKeys:e((({key:e})=>`Duplicate key "${e}" is not allowed in module attributes.`)),ModuleExportNameHasLoneSurrogate:e((({surrogateCharCode:e})=>`An export name cannot include a lone surrogate, found '\\u${e.toString(16)}'.`)),ModuleExportUndefined:e((({localName:e})=>`Export '${e}' is not defined.`)),MultipleDefaultsInSwitch:e("Multiple default clauses."),NewlineAfterThrow:e("Illegal newline after throw."),NoCatchOrFinally:e("Missing catch or finally clause."),NumberIdentifier:e("Identifier directly after number."),NumericSeparatorInEscapeSequence:e("Numeric separators are not allowed inside unicode escape sequences or hex escape sequences."),ObsoleteAwaitStar:e("'await*' has been removed from the async functions proposal. Use Promise.all() instead."),OptionalChainingNoNew:e("Constructors in/after an Optional Chain are not allowed."),OptionalChainingNoTemplate:e("Tagged Template Literals are not allowed in optionalChain."),OverrideOnConstructor:e("'override' modifier cannot appear on a constructor declaration."),ParamDupe:e("Argument name clash."),PatternHasAccessor:e("Object pattern can't contain getter or setter."),PatternHasMethod:e("Object pattern can't contain methods."),PrivateInExpectedIn:e((({identifierName:e})=>`Private names are only allowed in property accesses (\`obj.#${e}\`) or in \`in\` expressions (\`#${e} in obj\`).`)),PrivateNameRedeclaration:e((({identifierName:e})=>`Duplicate private name #${e}.`)),RecordExpressionBarIncorrectEndSyntaxType:e("Record expressions ending with '|}' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'."),RecordExpressionBarIncorrectStartSyntaxType:e("Record expressions starting with '{|' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'."),RecordExpressionHashIncorrectStartSyntaxType:e("Record expressions starting with '#{' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'hash'."),RecordNoProto:e("'__proto__' is not allowed in Record expressions."),RestTrailingComma:e("Unexpected trailing comma after rest element."),SloppyFunction:e("In non-strict mode code, functions can only be declared at top level, inside a block, or as the body of an if statement."),StaticPrototype:e("Classes may not have static property named prototype."),SuperNotAllowed:e("`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:e("Private fields can't be accessed on super."),TrailingDecorator:e("Decorators must be attached to a class element."),TupleExpressionBarIncorrectEndSyntaxType:e("Tuple expressions ending with '|]' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'."),TupleExpressionBarIncorrectStartSyntaxType:e("Tuple expressions starting with '[|' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'."),TupleExpressionHashIncorrectStartSyntaxType:e("Tuple expressions starting with '#[' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'hash'."),UnexpectedArgumentPlaceholder:e("Unexpected argument placeholder."),UnexpectedAwaitAfterPipelineBody:e('Unexpected "await" after pipeline body; await must have parentheses in minimal proposal.'),UnexpectedDigitAfterHash:e("Unexpected digit after hash token."),UnexpectedImportExport:e("'import' and 'export' may only appear at the top level."),UnexpectedKeyword:e((({keyword:e})=>`Unexpected keyword '${e}'.`)),UnexpectedLeadingDecorator:e("Leading decorators must be attached to a class declaration."),UnexpectedLexicalDeclaration:e("Lexical declaration cannot appear in a single-statement context."),UnexpectedNewTarget:e("`new.target` can only be used in functions or class properties."),UnexpectedNumericSeparator:e("A numeric separator is only allowed between two digits."),UnexpectedPrivateField:e("Unexpected private name."),UnexpectedReservedWord:e((({reservedWord:e})=>`Unexpected reserved word '${e}'.`)),UnexpectedSuper:e("'super' is only allowed in object methods and classes."),UnexpectedToken:e((({expected:e,unexpected:t})=>`Unexpected token${t?` '${t}'.`:""}${e?`, expected "${e}"`:""}`)),UnexpectedTokenUnaryExponentiation:e("Illegal expression. Wrap left hand side or entire exponentiation in parentheses."),UnsupportedBind:e("Binding should be performed on object property."),UnsupportedDecoratorExport:e("A decorated export must export a class declaration."),UnsupportedDefaultExport:e("Only expressions, functions or classes are allowed as the `default` export."),UnsupportedImport:e("`import` can only be used in `import()` or `import.meta`."),UnsupportedMetaProperty:e((({target:e,onlyValidPropertyName:t})=>`The only valid meta property for ${e} is ${e}.${t}.`)),UnsupportedParameterDecorator:e("Decorators cannot be used to decorate parameters."),UnsupportedPropertyDecorator:e("Decorators cannot be used to decorate object literal properties."),UnsupportedSuper:e("'super' can only be used with function calls (i.e. super()) or in property accesses (i.e. super.prop or super[prop])."),UnterminatedComment:e("Unterminated comment."),UnterminatedRegExp:e("Unterminated regular expression."),UnterminatedString:e("Unterminated string constant."),UnterminatedTemplate:e("Unterminated template."),VarRedeclaration:e((({identifierName:e})=>`Identifier '${e}' has already been declared.`)),YieldBindingIdentifier:e("Can not use 'yield' as identifier inside a generator."),YieldInParameter:e("Yield expression is not allowed in formal parameters."),ZeroDigitNumericSeparator:e("Numeric separator can not be used after leading 0.")}))),m((e=>({StrictDelete:e("Deleting local variable in strict mode."),StrictEvalArguments:e((({referenceName:e})=>`Assigning to '${e}' in strict mode.`)),StrictEvalArgumentsBinding:e((({bindingName:e})=>`Binding '${e}' in strict mode.`)),StrictFunction:e("In strict mode code, functions can only be declared at top level or inside a block."),StrictNumericEscape:e("The only valid numeric escape in strict mode is '\\0'."),StrictOctalLiteral:e("Legacy octal literals are not allowed in strict mode."),StrictWith:e("'with' in strict mode.")}))),m`pipelineOperator`((e=>({PipeBodyIsTighter:e("Unexpected yield after pipeline body; any yield expression acting as Hack-style pipe body must be parenthesized due to its loose operator precedence."),PipeTopicRequiresHackPipes:e('Topic reference is used, but the pipelineOperator plugin was not passed a "proposal": "hack" or "smart" option.'),PipeTopicUnbound:e("Topic reference is unbound; it must be inside a pipe body."),PipeTopicUnconfiguredToken:e((({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:e("Hack-style pipe body does not contain a topic reference; Hack-style pipes must use topic at least once."),PipeUnparenthesizedBody:e((({type:e})=>`Hack-style pipe body cannot be an unparenthesized ${c({type:e})}; please wrap it in parentheses.`)),PipelineBodyNoArrow:e('Unexpected arrow "=>" after pipeline body; arrow function in pipeline body must be parenthesized.'),PipelineBodySequenceExpression:e("Pipeline body may not be a comma-separated sequence expression."),PipelineHeadSequenceExpression:e("Pipeline head should not be a comma-separated sequence expression."),PipelineTopicUnused:e("Pipeline is in topic style but does not use topic reference."),PrimaryTopicNotAllowed:e("Topic reference was used in a lexical context without topic binding."),PrimaryTopicRequiresSmartPipeline:e('Topic reference is used, but the pipelineOperator plugin was not passed a "proposal": "hack" or "smart" option.')})))),{defineProperty:T}=Object,S=(e,t)=>T(e,t,{enumerable:!1,value:e[t]});function b(e){return S(e.loc.start,"index"),S(e.loc.end,"index"),e}class E{constructor(e,t){this.token=void 0,this.preserveSpace=void 0,this.token=e,this.preserveSpace=!!t}}const P={brace:new E("{"),j_oTag:new E("...",!0)};P.template=new E("`",!0);const x=!0,g=!0,A=!0,v=!0,O=!0;class I{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 N=new Map;function D(e,t={}){t.keyword=e;const n=F(e,t);return N.set(e,n),n}function C(e,t){return F(e,{beforeExpr:x,binop:t})}let w=-1;const L=[],j=[],_=[],M=[],k=[],B=[];function F(e,t={}){var n,r,a,i;return++w,j.push(e),_.push(null!=(n=t.binop)?n:-1),M.push(null!=(r=t.beforeExpr)&&r),k.push(null!=(a=t.startsExpr)&&a),B.push(null!=(i=t.prefix)&&i),L.push(new I(e,t)),w}function R(e,t={}){var n,r,a,i;return++w,N.set(e,w),j.push(e),_.push(null!=(n=t.binop)?n:-1),M.push(null!=(r=t.beforeExpr)&&r),k.push(null!=(a=t.startsExpr)&&a),B.push(null!=(i=t.prefix)&&i),L.push(new I("name",t)),w}const K={bracketL:F("[",{beforeExpr:x,startsExpr:g}),bracketHashL:F("#[",{beforeExpr:x,startsExpr:g}),bracketBarL:F("[|",{beforeExpr:x,startsExpr:g}),bracketR:F("]"),bracketBarR:F("|]"),braceL:F("{",{beforeExpr:x,startsExpr:g}),braceBarL:F("{|",{beforeExpr:x,startsExpr:g}),braceHashL:F("#{",{beforeExpr:x,startsExpr:g}),braceR:F("}",{beforeExpr:x}),braceBarR:F("|}"),parenL:F("(",{beforeExpr:x,startsExpr:g}),parenR:F(")"),comma:F(",",{beforeExpr:x}),semi:F(";",{beforeExpr:x}),colon:F(":",{beforeExpr:x}),doubleColon:F("::",{beforeExpr:x}),dot:F("."),question:F("?",{beforeExpr:x}),questionDot:F("?."),arrow:F("=>",{beforeExpr:x}),template:F("template"),ellipsis:F("...",{beforeExpr:x}),backQuote:F("`",{startsExpr:g}),dollarBraceL:F("${",{beforeExpr:x,startsExpr:g}),templateTail:F("...`",{startsExpr:g}),templateNonTail:F("...${",{beforeExpr:x,startsExpr:g}),at:F("@"),hash:F("#",{startsExpr:g}),interpreterDirective:F("#!..."),eq:F("=",{beforeExpr:x,isAssign:v}),assign:F("_=",{beforeExpr:x,isAssign:v}),slashAssign:F("_=",{beforeExpr:x,isAssign:v}),xorAssign:F("_=",{beforeExpr:x,isAssign:v}),moduloAssign:F("_=",{beforeExpr:x,isAssign:v}),incDec:F("++/--",{prefix:O,postfix:!0,startsExpr:g}),bang:F("!",{beforeExpr:x,prefix:O,startsExpr:g}),tilde:F("~",{beforeExpr:x,prefix:O,startsExpr:g}),doubleCaret:F("^^",{startsExpr:g}),doubleAt:F("@@",{startsExpr:g}),pipeline:C("|>",0),nullishCoalescing:C("??",1),logicalOR:C("||",1),logicalAND:C("&&",2),bitwiseOR:C("|",3),bitwiseXOR:C("^",4),bitwiseAND:C("&",5),equality:C("==/!=/===/!==",6),lt:C("/<=/>=",7),gt:C("/<=/>=",7),relational:C("/<=/>=",7),bitShift:C("<>/>>>",8),bitShiftL:C("<>/>>>",8),bitShiftR:C("<>/>>>",8),plusMin:F("+/-",{beforeExpr:x,binop:9,prefix:O,startsExpr:g}),modulo:F("%",{binop:10,startsExpr:g}),star:F("*",{binop:10}),slash:C("/",10),exponent:F("**",{beforeExpr:x,binop:11,rightAssociative:!0}),_in:D("in",{beforeExpr:x,binop:7}),_instanceof:D("instanceof",{beforeExpr:x,binop:7}),_break:D("break"),_case:D("case",{beforeExpr:x}),_catch:D("catch"),_continue:D("continue"),_debugger:D("debugger"),_default:D("default",{beforeExpr:x}),_else:D("else",{beforeExpr:x}),_finally:D("finally"),_function:D("function",{startsExpr:g}),_if:D("if"),_return:D("return",{beforeExpr:x}),_switch:D("switch"),_throw:D("throw",{beforeExpr:x,prefix:O,startsExpr:g}),_try:D("try"),_var:D("var"),_const:D("const"),_with:D("with"),_new:D("new",{beforeExpr:x,startsExpr:g}),_this:D("this",{startsExpr:g}),_super:D("super",{startsExpr:g}),_class:D("class",{startsExpr:g}),_extends:D("extends",{beforeExpr:x}),_export:D("export"),_import:D("import",{startsExpr:g}),_null:D("null",{startsExpr:g}),_true:D("true",{startsExpr:g}),_false:D("false",{startsExpr:g}),_typeof:D("typeof",{beforeExpr:x,prefix:O,startsExpr:g}),_void:D("void",{beforeExpr:x,prefix:O,startsExpr:g}),_delete:D("delete",{beforeExpr:x,prefix:O,startsExpr:g}),_do:D("do",{isLoop:A,beforeExpr:x}),_for:D("for",{isLoop:A}),_while:D("while",{isLoop:A}),_as:R("as",{startsExpr:g}),_assert:R("assert",{startsExpr:g}),_async:R("async",{startsExpr:g}),_await:R("await",{startsExpr:g}),_from:R("from",{startsExpr:g}),_get:R("get",{startsExpr:g}),_let:R("let",{startsExpr:g}),_meta:R("meta",{startsExpr:g}),_of:R("of",{startsExpr:g}),_sent:R("sent",{startsExpr:g}),_set:R("set",{startsExpr:g}),_static:R("static",{startsExpr:g}),_yield:R("yield",{startsExpr:g}),_asserts:R("asserts",{startsExpr:g}),_checks:R("checks",{startsExpr:g}),_exports:R("exports",{startsExpr:g}),_global:R("global",{startsExpr:g}),_implements:R("implements",{startsExpr:g}),_intrinsic:R("intrinsic",{startsExpr:g}),_infer:R("infer",{startsExpr:g}),_is:R("is",{startsExpr:g}),_mixins:R("mixins",{startsExpr:g}),_proto:R("proto",{startsExpr:g}),_require:R("require",{startsExpr:g}),_keyof:R("keyof",{startsExpr:g}),_readonly:R("readonly",{startsExpr:g}),_unique:R("unique",{startsExpr:g}),_abstract:R("abstract",{startsExpr:g}),_declare:R("declare",{startsExpr:g}),_enum:R("enum",{startsExpr:g}),_module:R("module",{startsExpr:g}),_namespace:R("namespace",{startsExpr:g}),_interface:R("interface",{startsExpr:g}),_type:R("type",{startsExpr:g}),_opaque:R("opaque",{startsExpr:g}),name:F("name",{startsExpr:g}),string:F("string",{startsExpr:g}),num:F("num",{startsExpr:g}),bigint:F("bigint",{startsExpr:g}),decimal:F("decimal",{startsExpr:g}),regexp:F("regexp",{startsExpr:g}),privateName:F("#name",{startsExpr:g}),eof:F("eof"),jsxName:F("jsxName"),jsxText:F("jsxText",{beforeExpr:!0}),jsxTagStart:F("jsxTagStart",{startsExpr:!0}),jsxTagEnd:F("jsxTagEnd"),placeholder:F("%%",{startsExpr:!0})};function V(e){return e>=93&&e<=128}function Y(e){return e>=58&&e<=128}function U(e){return e>=58&&e<=132}function X(e){return k[e]}function J(e){return e>=125&&e<=127}function W(e){return e>=58&&e<=92}function q(e){return j[e]}function $(e){return _[e]}function G(e){return e>=24&&e<=25}function z(e){return L[e]}L[8].updateContext=e=>{e.pop()},L[5].updateContext=L[7].updateContext=L[23].updateContext=e=>{e.push(P.brace)},L[22].updateContext=e=>{e[e.length-1]===P.template?e.pop():e.push(P.template)},L[138].updateContext=e=>{e.push(P.j_expr,P.j_oTag)};let H="ªµºÀ-ÖØ-öø-ˁˆ-ˑˠ-ˤˬˮͰ-ʹͶͷͺ-ͽͿΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁҊ-ԯԱ-Ֆՙՠ-ֈא-תׯ-ײؠ-يٮٯٱ-ۓەۥۦۮۯۺ-ۼۿܐܒ-ܯݍ-ޥޱߊ-ߪߴߵߺࠀ-ࠕࠚࠤࠨࡀ-ࡘࡠ-ࡪࡰ-ࢇࢉ-ࢎࢠ-ࣉऄ-हऽॐक़-ॡॱ-ঀঅ-ঌএঐও-নপ-রলশ-হঽৎড়ঢ়য়-ৡৰৱৼਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਖ਼-ੜਫ਼ੲ-ੴઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽૐૠૡૹଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽଡ଼ଢ଼ୟ-ୡୱஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹௐఅ-ఌఎ-ఐఒ-నప-హఽౘ-ౚౝౠౡಀಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽೝೞೠೡೱೲഄ-ഌഎ-ഐഒ-ഺഽൎൔ-ൖൟ-ൡൺ-ൿඅ-ඖක-නඳ-රලව-ෆก-ะาำเ-ๆກຂຄຆ-ຊຌ-ຣລວ-ະາຳຽເ-ໄໆໜ-ໟༀཀ-ཇཉ-ཬྈ-ྌက-ဪဿၐ-ၕၚ-ၝၡၥၦၮ-ၰၵ-ႁႎႠ-ჅჇჍა-ჺჼ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚᎀ-ᎏᎠ-Ᏽᏸ-ᏽᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛮ-ᛸᜀ-ᜑᜟ-ᜱᝀ-ᝑᝠ-ᝬᝮ-ᝰក-ឳៗៜᠠ-ᡸᢀ-ᢨᢪᢰ-ᣵᤀ-ᤞᥐ-ᥭᥰ-ᥴᦀ-ᦫᦰ-ᧉᨀ-ᨖᨠ-ᩔᪧᬅ-ᬳᭅ-ᭌᮃ-ᮠᮮᮯᮺ-ᯥᰀ-ᰣᱍ-ᱏᱚ-ᱽᲀ-ᲈᲐ-ᲺᲽ-Ჿᳩ-ᳬᳮ-ᳳᳵᳶᳺᴀ-ᶿḀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼⁱⁿₐ-ₜℂℇℊ-ℓℕ℘-ℝℤΩℨK-ℹℼ-ℿⅅ-ⅉⅎⅠ-ↈⰀ-ⳤⳫ-ⳮⳲⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞ々-〇〡-〩〱-〵〸-〼ぁ-ゖ゛-ゟァ-ヺー-ヿㄅ-ㄯㄱ-ㆎㆠ-ㆿㇰ-ㇿ㐀-䶿一-ꒌꓐ-ꓽꔀ-ꘌꘐ-ꘟꘪꘫꙀ-ꙮꙿ-ꚝꚠ-ꛯꜗ-ꜟꜢ-ꞈꞋ-ꟊꟐꟑꟓꟕ-ꟙꟲ-ꠁꠃ-ꠅꠇ-ꠊꠌ-ꠢꡀ-ꡳꢂ-ꢳꣲ-ꣷꣻꣽꣾꤊ-ꤥꤰ-ꥆꥠ-ꥼꦄ-ꦲꧏꧠ-ꧤꧦ-ꧯꧺ-ꧾꨀ-ꨨꩀ-ꩂꩄ-ꩋꩠ-ꩶꩺꩾ-ꪯꪱꪵꪶꪹ-ꪽꫀꫂꫛ-ꫝꫠ-ꫪꫲ-ꫴꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꬰ-ꭚꭜ-ꭩꭰ-ꯢ가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎ff-stﬓ-ﬗיִײַ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻﹰ-ﹴﹶ-ﻼA-Za-zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ",Q="‌‍·̀-ͯ·҃-֑҇-ׇֽֿׁׂׅׄؐ-ًؚ-٩ٰۖ-ۜ۟-۪ۤۧۨ-ۭ۰-۹ܑܰ-݊ަ-ް߀-߉߫-߽߳ࠖ-࠙ࠛ-ࠣࠥ-ࠧࠩ-࡙࠭-࡛࢘-࢟࣊-ࣣ࣡-ःऺ-़ा-ॏ॑-ॗॢॣ०-९ঁ-ঃ়া-ৄেৈো-্ৗৢৣ০-৯৾ਁ-ਃ਼ਾ-ੂੇੈੋ-੍ੑ੦-ੱੵઁ-ઃ઼ા-ૅે-ૉો-્ૢૣ૦-૯ૺ-૿ଁ-ଃ଼ା-ୄେୈୋ-୍୕-ୗୢୣ୦-୯ஂா-ூெ-ைொ-்ௗ௦-௯ఀ-ఄ఼ా-ౄె-ైొ-్ౕౖౢౣ౦-౯ಁ-ಃ಼ಾ-ೄೆ-ೈೊ-್ೕೖೢೣ೦-೯ഀ-ഃ഻഼ാ-ൄെ-ൈൊ-്ൗൢൣ൦-൯ඁ-ඃ්ා-ුූෘ-ෟ෦-෯ෲෳัิ-ฺ็-๎๐-๙ັິ-ຼ່-ໍ໐-໙༘༙༠-༩༹༵༷༾༿ཱ-྄྆྇ྍ-ྗྙ-ྼ࿆ါ-ှ၀-၉ၖ-ၙၞ-ၠၢ-ၤၧ-ၭၱ-ၴႂ-ႍႏ-ႝ፝-፟፩-፱ᜒ-᜕ᜲ-᜴ᝒᝓᝲᝳ឴-៓៝០-៩᠋-᠍᠏-᠙ᢩᤠ-ᤫᤰ-᤻᥆-᥏᧐-᧚ᨗ-ᨛᩕ-ᩞ᩠-᩿᩼-᪉᪐-᪙᪰-᪽ᪿ-ᫎᬀ-ᬄ᬴-᭄᭐-᭙᭫-᭳ᮀ-ᮂᮡ-ᮭ᮰-᮹᯦-᯳ᰤ-᰷᱀-᱉᱐-᱙᳐-᳔᳒-᳨᳭᳴᳷-᳹᷀-᷿‿⁀⁔⃐-⃥⃜⃡-⃰⳯-⵿⳱ⷠ-〪ⷿ-゙゚〯꘠-꘩꙯ꙴ-꙽ꚞꚟ꛰꛱ꠂ꠆ꠋꠣ-ꠧ꠬ꢀꢁꢴ-ꣅ꣐-꣙꣠-꣱ꣿ-꤉ꤦ-꤭ꥇ-꥓ꦀ-ꦃ꦳-꧀꧐-꧙ꧥ꧰-꧹ꨩ-ꨶꩃꩌꩍ꩐-꩙ꩻ-ꩽꪰꪲ-ꪴꪷꪸꪾ꪿꫁ꫫ-ꫯꫵ꫶ꯣ-ꯪ꯬꯭꯰-꯹ﬞ︀-️︠-︯︳︴﹍-﹏0-9_";const Z=new RegExp("["+H+"]"),ee=new RegExp("["+H+Q+"]");H=Q=null;const te=[0,11,2,25,2,18,2,1,2,14,3,13,35,122,70,52,268,28,4,48,48,31,14,29,6,37,11,29,3,35,5,7,2,4,43,157,19,35,5,35,5,39,9,51,13,10,2,14,2,6,2,1,2,10,2,14,2,6,2,1,68,310,10,21,11,7,25,5,2,41,2,8,70,5,3,0,2,43,2,1,4,0,3,22,11,22,10,30,66,18,2,1,11,21,11,25,71,55,7,1,65,0,16,3,2,2,2,28,43,28,4,28,36,7,2,27,28,53,11,21,11,18,14,17,111,72,56,50,14,50,14,35,349,41,7,1,79,28,11,0,9,21,43,17,47,20,28,22,13,52,58,1,3,0,14,44,33,24,27,35,30,0,3,0,9,34,4,0,13,47,15,3,22,0,2,0,36,17,2,24,85,6,2,0,2,3,2,14,2,9,8,46,39,7,3,1,3,21,2,6,2,1,2,4,4,0,19,0,13,4,159,52,19,3,21,2,31,47,21,1,2,0,185,46,42,3,37,47,21,0,60,42,14,0,72,26,38,6,186,43,117,63,32,7,3,0,3,7,2,1,2,23,16,0,2,0,95,7,3,38,17,0,2,0,29,0,11,39,8,0,22,0,12,45,20,0,19,72,264,8,2,36,18,0,50,29,113,6,2,1,2,37,22,0,26,5,2,1,2,31,15,0,328,18,190,0,80,921,103,110,18,195,2637,96,16,1070,4050,582,8634,568,8,30,18,78,18,29,19,47,17,3,32,20,6,18,689,63,129,74,6,0,67,12,65,1,2,0,29,6135,9,1237,43,8,8936,3,2,6,2,1,2,290,46,2,18,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,482,44,11,6,17,0,322,29,19,43,1269,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,4152,8,221,3,5761,15,7472,3104,541,1507,4938],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,370,1,154,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,161,11,6,9,7,3,56,1,2,6,3,1,3,2,10,0,11,1,3,6,4,4,193,17,10,9,5,0,82,19,13,9,214,6,3,8,28,1,83,16,16,9,82,12,9,9,84,14,5,9,243,14,166,9,71,5,2,1,3,3,2,0,2,1,13,9,120,6,3,6,4,0,29,9,41,6,2,3,9,0,10,10,47,15,406,7,2,7,17,9,57,21,2,13,123,5,4,0,2,1,2,6,2,0,9,9,49,4,2,1,2,4,9,9,330,3,19306,9,87,9,39,4,60,6,26,9,1014,0,2,54,8,3,82,0,12,1,19628,1,4706,45,3,22,543,4,4,5,9,7,3,6,31,3,149,2,1418,49,513,54,5,49,9,0,15,0,23,4,2,14,1361,6,2,16,3,6,2,1,2,4,262,6,10,9,357,0,62,13,1495,6,110,6,6,9,4759,9,787719,239];function re(e,t){let n=65536;for(let r=0,a=t.length;re)return!1;if(n+=t[r+1],n>=e)return!0}return!1}function ae(e){return e<65?36===e:e<=90||(e<97?95===e:e<=122||(e<=65535?e>=170&&Z.test(String.fromCharCode(e)):re(e,te)))}function ie(e){return e<48?36===e:e<58||!(e<65)&&(e<=90||(e<97?95===e:e<=122||(e<=65535?e>=170&&ee.test(String.fromCharCode(e)):re(e,te)||re(e,ne))))}const se=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"]),oe=new Set(["implements","interface","let","package","private","protected","public","static","yield"]),le=new Set(["eval","arguments"]);function pe(e,t){return t&&"await"===e||"enum"===e}function ce(e,t){return pe(e,t)||oe.has(e)}function ue(e){return le.has(e)}function de(e,t){return ce(e,t)||ue(e)}const fe=new Set(["break","case","catch","continue","debugger","default","do","else","finally","for","function","if","return","switch","throw","try","var","const","while","with","new","this","super","class","extends","export","import","null","true","false","in","instanceof","typeof","void","delete","implements","interface","let","package","private","protected","public","static","yield","eval","arguments","enum","await"]),ye=64;class me{constructor(){this.sawUnambiguousESM=!1,this.ambiguousScriptDifferentAst=!1}hasPlugin(e){if("string"==typeof e)return this.plugins.has(e);{const[t,n]=e;if(!this.hasPlugin(t))return!1;const r=this.plugins.get(t);for(const e of Object.keys(n))if((null==r?void 0:r[e])!==n[e])return!1;return!0}}getPluginOption(e,t){var n;return null==(n=this.plugins.get(e))?void 0:n[t]}}function he(e,t){void 0===e.trailingComments?e.trailingComments=t:e.trailingComments.unshift(...t)}function Te(e,t){void 0===e.innerComments?e.innerComments=t:e.innerComments.unshift(...t)}function Se(e,t,n){let r=null,a=t.length;for(;null===r&&a>0;)r=t[--a];null===r||r.start>n.start?Te(e,n.comments):he(r,n.comments)}class be extends me{addComment(e){this.filename&&(e.loc.filename=this.filename),this.state.comments.push(e)}processComment(e){const{commentStack:t}=this.state,n=t.length;if(0===n)return;let r=n-1;const a=t[r];a.start===e.end&&(a.leadingNode=e,r--);const{start:i}=e;for(;r>=0;r--){const n=t[r],a=n.end;if(!(a>i)){a===i&&(n.trailingNode=e);break}n.containingNode=e,this.finalizeComment(n),t.splice(r,1)}}finalizeComment(e){const{comments:t}=e;if(null!==e.leadingNode||null!==e.trailingNode)null!==e.leadingNode&&he(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:n,start:r}=e;if(44===this.input.charCodeAt(r-1))switch(n.type){case"ObjectExpression":case"ObjectPattern":case"RecordExpression":Se(n,n.properties,e);break;case"CallExpression":case"OptionalCallExpression":Se(n,n.arguments,e);break;case"FunctionDeclaration":case"FunctionExpression":case"ArrowFunctionExpression":case"ObjectMethod":case"ClassMethod":case"ClassPrivateMethod":Se(n,n.params,e);break;case"ArrayExpression":case"ArrayPattern":case"TupleExpression":Se(n,n.elements,e);break;case"ExportNamedDeclaration":case"ImportDeclaration":Se(n,n.specifiers,e);break;default:Te(n,t)}else Te(n,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:n}=t;if(0===n)return;const r=t[n-1];r.leadingNode===e&&(r.leadingNode=null)}takeSurroundingComments(e,t,n){const{commentStack:r}=this.state,a=r.length;if(0===a)return;let i=a-1;for(;i>=0;i--){const a=r[i],s=a.end;if(a.start===n)a.leadingNode=e;else if(s===t)a.trailingNode=e;else if(s=48&&e<=57};const Ce=new Set([103,109,115,105,121,117,100,118]),we={decBinOct:new Set([46,66,69,79,95,98,101,111]),hex:new Set([46,88,95,120])},Le={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};class je{constructor(e){this.type=e.type,this.value=e.value,this.start=e.start,this.end=e.end,this.loc=new a(e.startLoc,e.endLoc)}}class _e extends be{constructor(e,t){super(),this.isLookahead=void 0,this.tokens=[],this.state=new Oe,this.state.init(e),this.input=t,this.length=t.length,this.isLookahead=!1}pushToken(e){this.tokens.length=this.state.tokensLength,this.tokens.push(e),++this.state.tokensLength}next(){this.checkKeywordEscapes(),this.options.tokens&&this.pushToken(new je(this.state)),this.state.lastTokStart=this.state.start,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 ge.lastIndex=e,ge.test(this.input)?ge.lastIndex:e}lookaheadCharCode(){return this.input.charCodeAt(this.nextTokenStart())}codePointAtPos(e){let t=this.input.charCodeAt(e);if(55296==(64512&t)&&++ethis.raise(e,{at: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(135):this.getTokenFromCode(this.codePointAtPos(this.state.pos))}skipBlockComment(){let e;this.isLookahead||(e=this.state.curPosition());const t=this.state.pos,n=this.input.indexOf("*/",t+2);if(-1===n)throw this.raise(h.UnterminatedComment,{at:this.state.curPosition()});for(this.state.pos=n+2,Pe.lastIndex=t+2;Pe.test(this.input)&&Pe.lastIndex<=n;)++this.state.curLine,this.state.lineStart=Pe.lastIndex;if(this.isLookahead)return;const r={type:"CommentBlock",value:this.input.slice(t+2,n),start:t,end:n+2,loc:new a(e,this.state.curPosition())};return this.options.tokens&&this.pushToken(r),r}skipLineComment(e){const t=this.state.pos;let n;this.isLookahead||(n=this.state.curPosition());let r=this.input.charCodeAt(this.state.pos+=e);if(this.state.pose))break e;{const e=this.skipLineComment(3);void 0!==e&&(this.addComment(e),this.options.attachComment&&t.push(e))}}}}if(t.length>0){const n={start:e,end:this.state.pos,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 n=this.state.type;this.state.type=e,this.state.value=t,this.isLookahead||this.updateContext(n)}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(h.UnexpectedDigitAfterHash,{at:this.state.curPosition()});if(123===t||91===t&&this.hasPlugin("recordAndTuple")){if(this.expectPlugin("recordAndTuple"),"hash"!==this.getPluginOption("recordAndTuple","syntaxType"))throw this.raise(123===t?h.RecordExpressionHashIncorrectStartSyntaxType:h.TupleExpressionHashIncorrectStartSyntaxType,{at:this.state.curPosition()});this.state.pos+=2,123===t?this.finishToken(7):this.finishToken(1)}else ae(t)?(++this.state.pos,this.finishToken(134,this.readWord1(t))):92===t?(++this.state.pos,this.finishToken(134,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;!xe(e)&&++this.state.pos=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(h.TupleExpressionBarIncorrectStartSyntaxType,{at: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(h.RecordExpressionBarIncorrectStartSyntaxType,{at: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(ae(e))return void this.readWord(e)}throw this.raise(h.InvalidOrUnexpectedToken,{at:this.state.curPosition(),unexpected:String.fromCodePoint(e)})}finishOp(e,t){const n=this.input.slice(this.state.pos,this.state.pos+t);this.state.pos+=t,this.finishToken(e,n)}readRegexp(){const e=this.state.startLoc,t=this.state.start+1;let n,r,{pos:a}=this.state;for(;;++a){if(a>=this.length)throw this.raise(h.UnterminatedRegExp,{at:i(e,1)});const t=this.input.charCodeAt(a);if(xe(t))throw this.raise(h.UnterminatedRegExp,{at:i(e,1)});if(n)n=!1;else{if(91===t)r=!0;else if(93===t&&r)r=!1;else if(47===t&&!r)break;n=92===t}}const s=this.input.slice(t,a);++a;let o="";const l=()=>i(e,a+2-t);for(;a=97?t-97+10:t>=65?t-65+10:De(t)?t-48:1/0,a>=e)if(this.options.errorRecovery&&a<=9)a=0,this.raise(h.InvalidDigit,{at:this.state.curPosition(),radix:e});else{if(!n)break;a=0,o=!0}++this.state.pos,l=l*e+a}else{const e=this.input.charCodeAt(this.state.pos-1),t=this.input.charCodeAt(this.state.pos+1);r?(Number.isNaN(t)||!s(t)||i.has(e)||i.has(t))&&this.raise(h.UnexpectedNumericSeparator,{at:this.state.curPosition()}):this.raise(h.NumericSeparatorInEscapeSequence,{at:this.state.curPosition()}),++this.state.pos}}return this.state.pos===a||null!=t&&this.state.pos-a!==t||o?null:l}readRadixNumber(e){const t=this.state.curPosition();let n=!1;this.state.pos+=2;const r=this.readInt(e);null==r&&this.raise(h.InvalidDigit,{at:i(t,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(h.InvalidDecimal,{at:t});if(ae(this.codePointAtPos(this.state.pos)))throw this.raise(h.NumberIdentifier,{at:this.state.curPosition()});if(n){const e=this.input.slice(t.index,this.state.pos).replace(/[_n]/g,"");this.finishToken(131,e)}else this.finishToken(130,r)}readNumber(e){const t=this.state.pos,n=this.state.curPosition();let r=!1,a=!1,s=!1,o=!1,l=!1;e||null!==this.readInt(10)||this.raise(h.InvalidNumber,{at:this.state.curPosition()});const p=this.state.pos-t>=2&&48===this.input.charCodeAt(t);if(p){const e=this.input.slice(t,this.state.pos);if(this.recordStrictModeErrors(h.StrictOctalLiteral,{at:n}),!this.state.strict){const t=e.indexOf("_");t>0&&this.raise(h.ZeroDigitNumericSeparator,{at:i(n,t)})}l=p&&!/[89]/.test(e)}let c=this.input.charCodeAt(this.state.pos);if(46!==c||l||(++this.state.pos,this.readInt(10),r=!0,c=this.input.charCodeAt(this.state.pos)),69!==c&&101!==c||l||(c=this.input.charCodeAt(++this.state.pos),43!==c&&45!==c||++this.state.pos,null===this.readInt(10)&&this.raise(h.InvalidOrMissingExponent,{at:n}),r=!0,o=!0,c=this.input.charCodeAt(this.state.pos)),110===c&&((r||p)&&this.raise(h.InvalidBigIntLiteral,{at:n}),++this.state.pos,a=!0),109===c&&(this.expectPlugin("decimal",this.state.curPosition()),(o||p)&&this.raise(h.InvalidDecimal,{at:n}),++this.state.pos,s=!0),ae(this.codePointAtPos(this.state.pos)))throw this.raise(h.NumberIdentifier,{at:this.state.curPosition()});const u=this.input.slice(t,this.state.pos).replace(/[_mn]/g,"");if(a)return void this.finishToken(131,u);if(s)return void this.finishToken(132,u);const d=l?parseInt(u,8):parseFloat(u);this.finishToken(130,d)}readCodePoint(e){let t;if(123===this.input.charCodeAt(this.state.pos)){if(++this.state.pos,t=this.readHexChar(this.input.indexOf("}",this.state.pos)-this.state.pos,!0,e),++this.state.pos,null!==t&&t>1114111){if(!e)return null;this.raise(h.InvalidCodePoint,{at:this.state.curPosition()})}}else t=this.readHexChar(4,!1,e);return t}readString(e){let t="",n=++this.state.pos;for(;;){if(this.state.pos>=this.length)throw this.raise(h.UnterminatedString,{at:this.state.startLoc});const r=this.input.charCodeAt(this.state.pos);if(r===e)break;if(92===r)t+=this.input.slice(n,this.state.pos),t+=this.readEscapedChar(!1),n=this.state.pos;else if(8232===r||8233===r)++this.state.pos,++this.state.curLine,this.state.lineStart=this.state.pos;else{if(xe(r))throw this.raise(h.UnterminatedString,{at:this.state.startLoc});++this.state.pos}}t+=this.input.slice(n,this.state.pos++),this.finishToken(129,t)}readTemplateContinuation(){this.match(8)||this.unexpected(null,8),this.state.pos--,this.readTemplateToken()}readTemplateToken(){let e="",t=this.state.pos,n=!1;for(++this.state.pos;;){if(this.state.pos>=this.length)throw this.raise(h.UnterminatedTemplate,{at:i(this.state.startLoc,1)});const r=this.input.charCodeAt(this.state.pos);if(96===r)return++this.state.pos,e+=this.input.slice(t,this.state.pos),void this.finishToken(24,n?null:e);if(36===r&&123===this.input.charCodeAt(this.state.pos+1))return this.state.pos+=2,e+=this.input.slice(t,this.state.pos),void this.finishToken(25,n?null:e);if(92===r){e+=this.input.slice(t,this.state.pos);const r=this.readEscapedChar(!0);null===r?n=!0:e+=r,t=this.state.pos}else if(xe(r)){switch(e+=this.input.slice(t,this.state.pos),++this.state.pos,r){case 13:10===this.input.charCodeAt(this.state.pos)&&++this.state.pos;case 10:e+="\n";break;default:e+=String.fromCharCode(r)}++this.state.curLine,this.state.lineStart=this.state.pos,t=this.state.pos}else++this.state.pos}}recordStrictModeErrors(e,{at:t}){const n=t.index;this.state.strict&&!this.state.strictErrors.has(n)?this.raise(e,{at:t}):this.state.strictErrors.set(n,[e,t])}readEscapedChar(e){const t=!e,n=this.input.charCodeAt(++this.state.pos);switch(++this.state.pos,n){case 110:return"\n";case 114:return"\r";case 120:{const e=this.readHexChar(2,!1,t);return null===e?null:String.fromCharCode(e)}case 117:{const e=this.readCodePoint(t);return null===e?null:String.fromCodePoint(e)}case 116:return"\t";case 98:return"\b";case 118:return"\v";case 102:return"\f";case 13:10===this.input.charCodeAt(this.state.pos)&&++this.state.pos;case 10:this.state.lineStart=this.state.pos,++this.state.curLine;case 8232:case 8233:return"";case 56:case 57:if(e)return null;this.recordStrictModeErrors(h.StrictNumericEscape,{at:i(this.state.curPosition(),-1)});default:if(n>=48&&n<=55){const t=i(this.state.curPosition(),-1);let n=this.input.slice(this.state.pos-1,this.state.pos+2).match(/^[0-7]+/)[0],r=parseInt(n,8);r>255&&(n=n.slice(0,-1),r=parseInt(n,8)),this.state.pos+=n.length-1;const a=this.input.charCodeAt(this.state.pos);if("0"!==n||56===a||57===a){if(e)return null;this.recordStrictModeErrors(h.StrictNumericEscape,{at:t})}return String.fromCharCode(r)}return String.fromCharCode(n)}}readHexChar(e,t,n){const r=this.state.curPosition(),a=this.readInt(16,e,t,!1);return null===a&&(n?this.raise(h.InvalidEscapeSequence,{at:r}):this.state.pos=r.index-1),a}readWord1(e){this.state.containsEsc=!1;let t="";const n=this.state.pos;let r=this.state.pos;for(void 0!==e&&(this.state.pos+=e<=65535?1:2);this.state.pos=0;t--){const n=l[t];if(n.loc.index===o)return l[t]=e({loc:s,details:i});if(n.loc.indexthis.hasPlugin(e))))throw this.raise(h.MissingOneOfPlugins,{at:this.state.startLoc,missingPlugin:e})}}class Me{constructor(e){this.var=new Set,this.lexical=new Set,this.functions=new Set,this.flags=e}}class ke{constructor(e,t){this.parser=void 0,this.scopeStack=[],this.inModule=void 0,this.undefinedExports=new Map,this.parser=e,this.inModule=t}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&&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(323&t)return!1}}get inNonArrowFunction(){return(2&this.currentThisScopeFlags())>0}get treatFunctionsAsVar(){return this.treatFunctionsAsVarInScope(this.currentScope())}createScope(e){return new Me(e)}enter(e){this.scopeStack.push(this.createScope(e))}exit(){this.scopeStack.pop()}treatFunctionsAsVarInScope(e){return!!(130&e.flags||!this.parser.inModule&&1&e.flags)}declareName(e,t,n){let r=this.currentScope();if(8&t||16&t)this.checkRedeclarationInScope(r,e,t,n),16&t?r.functions.add(e):r.lexical.add(e),8&t&&this.maybeExportDefined(r,e);else if(4&t)for(let a=this.scopeStack.length-1;a>=0&&(r=this.scopeStack[a],this.checkRedeclarationInScope(r,e,t,n),r.var.add(e),this.maybeExportDefined(r,e),!(259&r.flags));--a);this.parser.inModule&&1&r.flags&&this.undefinedExports.delete(e)}maybeExportDefined(e,t){this.parser.inModule&&1&e.flags&&this.undefinedExports.delete(t)}checkRedeclarationInScope(e,t,n,r){this.isRedeclaredInScope(e,t,n)&&this.parser.raise(h.VarRedeclaration,{at:r,identifierName:t})}isRedeclaredInScope(e,t,n){return!!(1&n)&&(8&n?e.lexical.has(t)||e.functions.has(t)||e.var.has(t):16&n?e.lexical.has(t)||!this.treatFunctionsAsVarInScope(e)&&e.var.has(t):e.lexical.has(t)&&!(8&e.flags&&e.lexical.values().next().value===t)||!this.treatFunctionsAsVarInScope(e)&&e.functions.has(t))}checkLocalExport(e){const{name:t}=e,n=this.scopeStack[0];n.lexical.has(t)||n.var.has(t)||n.functions.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(259&t)return t}}currentThisScopeFlags(){for(let e=this.scopeStack.length-1;;e--){const{flags:t}=this.scopeStack[e];if(323&t&&!(4&t))return t}}}class Be extends Me{constructor(...e){super(...e),this.declareFunctions=new Set}}class Fe extends ke{createScope(e){return new Be(e)}declareName(e,t,n){const r=this.currentScope();if(2048&t)return this.checkRedeclarationInScope(r,e,t,n),this.maybeExportDefined(r,e),void r.declareFunctions.add(e);super.declareName(...arguments)}isRedeclaredInScope(e,t,n){return!!super.isRedeclaredInScope(...arguments)||!!(2048&n)&&!e.declareFunctions.has(t)&&(e.lexical.has(t)||e.functions.has(t))}checkLocalExport(e){this.scopeStack[0].declareFunctions.has(e.name)||super.checkLocalExport(e)}}class Re{constructor(){this.privateNames=new Set,this.loneAccessors=new Map,this.undefinedPrivateNames=new Map}}class Ke{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 Re)}exit(){const e=this.stack.pop(),t=this.current();for(const[n,r]of Array.from(e.undefinedPrivateNames))t?t.undefinedPrivateNames.has(n)||t.undefinedPrivateNames.set(n,r):this.parser.raise(h.InvalidPrivateFieldResolution,{at:r,identifierName:n})}declarePrivateName(e,t,n){const{privateNames:r,loneAccessors:a,undefinedPrivateNames:i}=this.current();let s=r.has(e);if(3&t){const n=s&&a.get(e);n?(s=(3&n)==(3&t)||(4&n)!=(4&t),s||a.delete(e)):s||a.set(e,t)}s&&this.parser.raise(h.PrivateNameRedeclaration,{at:n,identifierName:e}),r.add(e),i.delete(e)}usePrivateName(e,t){let n;for(n of this.stack)if(n.privateNames.has(e))return;n?n.undefinedPrivateNames.set(e,t):this.parser.raise(h.InvalidPrivateFieldResolution,{at:t,identifierName:e})}}class Ve{constructor(e=0){this.type=void 0,this.type=e}canBeArrowParameterDeclaration(){return 2===this.type||1===this.type}isCertainlyParameterDeclaration(){return 3===this.type}}class Ye extends Ve{constructor(e){super(e),this.declarationErrors=new Map}recordDeclarationError(e,{at:t}){const n=t.index;this.declarationErrors.set(n,[e,t])}clearDeclarationError(e){this.declarationErrors.delete(e)}iterateErrors(e){this.declarationErrors.forEach(e)}}class Ue{constructor(e){this.parser=void 0,this.stack=[new Ve],this.parser=e}enter(e){this.stack.push(e)}exit(){this.stack.pop()}recordParameterInitializerError(e,{at:t}){const n={at:t.loc.start},{stack:r}=this;let a=r.length-1,i=r[a];for(;!i.isCertainlyParameterDeclaration();){if(!i.canBeArrowParameterDeclaration())return;i.recordDeclarationError(e,n),i=r[--a]}this.parser.raise(e,n)}recordArrowParemeterBindingError(e,{at:t}){const{stack:n}=this,r=n[n.length-1],a={at:t.loc.start};if(r.isCertainlyParameterDeclaration())this.parser.raise(e,a);else{if(!r.canBeArrowParameterDeclaration())return;r.recordDeclarationError(e,a)}}recordAsyncArrowParametersError({at:e}){const{stack:t}=this;let n=t.length-1,r=t[n];for(;r.canBeArrowParameterDeclaration();)2===r.type&&r.recordDeclarationError(h.AwaitBindingIdentifier,{at:e}),r=t[--n]}validateAsPattern(){const{stack:e}=this,t=e[e.length-1];t.canBeArrowParameterDeclaration()&&t.iterateErrors((([t,n])=>{this.parser.raise(t,{at:n});let r=e.length-2,a=e[r];for(;a.canBeArrowParameterDeclaration();)a.clearDeclarationError(n.index),a=e[--r]}))}}function Xe(){return new Ve}class Je{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 We(e,t){return(e?2:0)|(t?1:0)}class qe extends _e{addExtra(e,t,n,r=!0){if(!e)return;const a=e.extra=e.extra||{};r?a[t]=n:Object.defineProperty(a,t,{enumerable:r,value:n})}isContextual(e){return this.state.type===e&&!this.state.containsEsc}isUnparsedContextual(e,t){const n=e+t.length;if(this.input.slice(e,n)===t){const e=this.input.charCodeAt(n);return!(ie(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,{at:this.state.startLoc});throw this.unexpected(null,e)}}canInsertSemicolon(){return this.match(135)||this.match(8)||this.hasPrecedingLineBreak()}hasPrecedingLineBreak(){return Ee.test(this.input.slice(this.state.lastTokEndLoc.index,this.state.start))}hasFollowingLineBreak(){return Ae.lastIndex=this.state.end,Ae.test(this.input)}isLineTerminator(){return this.eat(13)||this.canInsertSemicolon()}semicolon(e=!0){(e?this.isLineTerminator():this.eat(13))||this.raise(h.MissingSemicolon,{at:this.state.lastTokEndLoc})}expect(e,t){this.eat(e)||this.unexpected(t,e)}tryParse(e,t=this.state.clone()){const n={node:null};try{const r=e(((e=null)=>{throw n.node=e,n}));if(this.state.errors.length>t.errors.length){const e=this.state;return this.state=t,this.state.tokensLength=e.tokensLength,{node:r,error:e.errors[t.errors.length],thrown:!1,aborted:!1,failState:e}}return{node:r,error:null,thrown:!1,aborted:!1,failState:null}}catch(e){const r=this.state;if(this.state=t,e instanceof SyntaxError)return{node:null,error:e,thrown:!0,aborted:!1,failState:r};if(e===n)return{node:n.node,error:null,thrown:!1,aborted:!0,failState:r};throw e}}checkExpressionErrors(e,t){if(!e)return!1;const{shorthandAssignLoc:n,doubleProtoLoc:r,privateKeyLoc:a,optionalParametersLoc:i}=e;if(!t)return!!(n||r||i||a);null!=n&&this.raise(h.InvalidCoverInitializedName,{at:n}),null!=r&&this.raise(h.DuplicateProto,{at:r}),null!=a&&this.raise(h.UnexpectedPrivateField,{at:a}),null!=i&&this.unexpected(i)}isLiteralPropertyName(){return U(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)}isOptionalChain(e){return"OptionalMemberExpression"===e.type||"OptionalCallExpression"===e.type}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 n=this.exportedIdentifiers;this.exportedIdentifiers=new Set;const r=this.inModule;this.inModule=e;const a=this.scope,i=this.getScopeHandler();this.scope=new i(this,e);const s=this.prodParam;this.prodParam=new Je;const o=this.classScope;this.classScope=new Ke(this);const l=this.expressionScope;return this.expressionScope=new Ue(this),()=>{this.state.labels=t,this.exportedIdentifiers=n,this.inModule=r,this.scope=a,this.prodParam=s,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 $e{constructor(){this.shorthandAssignLoc=null,this.doubleProtoLoc=null,this.privateKeyLoc=null,this.optionalParametersLoc=null}}class Ge{constructor(e,t,n){this.type="",this.start=t,this.end=0,this.loc=new a(n),null!=e&&e.options.ranges&&(this.range=[t,0]),null!=e&&e.filename&&(this.loc.filename=e.filename)}}const ze=Ge.prototype;function He(e){const{type:t,start:n,end:r,loc:a,range:i,extra:s,name:o}=e,l=Object.create(ze);return l.type=t,l.start=n,l.end=r,l.loc=a,l.range=i,l.extra=s,l.name=o,"Placeholder"===t&&(l.expectedNode=e.expectedNode),l}ze.__clone=function(){const e=new Ge,t=Object.keys(this);for(let n=0,r=t.length;n({AmbiguousConditionalArrow:e("Ambiguous expression: wrap the arrow functions in parentheses to disambiguate."),AmbiguousDeclareModuleKind:e("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:e((({reservedType:e})=>`Cannot overwrite reserved type ${e}.`)),DeclareClassElement:e("The `declare` modifier can only appear on class fields."),DeclareClassFieldInitializer:e("Initializers are not allowed in fields with the `declare` modifier."),DuplicateDeclareModuleExports:e("Duplicate `declare module.exports` statement."),EnumBooleanMemberNotInitialized:e((({memberName:e,enumName:t})=>`Boolean enum members need to be initialized. Use either \`${e} = true,\` or \`${e} = false,\` in enum \`${t}\`.`)),EnumDuplicateMemberName:e((({memberName:e,enumName:t})=>`Enum member names need to be unique, but the name \`${e}\` has already been used before in enum \`${t}\`.`)),EnumInconsistentMemberValues:e((({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:e((({invalidEnumType:e,enumName:t})=>`Enum type \`${e}\` is not valid. Use one of \`boolean\`, \`number\`, \`string\`, or \`symbol\` in enum \`${t}\`.`)),EnumInvalidExplicitTypeUnknownSupplied:e((({enumName:e})=>`Supplied enum type is not valid. Use one of \`boolean\`, \`number\`, \`string\`, or \`symbol\` in enum \`${e}\`.`)),EnumInvalidMemberInitializerPrimaryType:e((({enumName:e,memberName:t,explicitType:n})=>`Enum \`${e}\` has type \`${n}\`, so the initializer of \`${t}\` needs to be a ${n} literal.`)),EnumInvalidMemberInitializerSymbolType:e((({enumName:e,memberName:t})=>`Symbol enum members cannot be initialized. Use \`${t},\` in enum \`${e}\`.`)),EnumInvalidMemberInitializerUnknownType:e((({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:e((({enumName:e,memberName:t,suggestion:n})=>`Enum member names cannot start with lowercase 'a' through 'z'. Instead of using \`${t}\`, consider using \`${n}\`, in enum \`${e}\`.`)),EnumNumberMemberNotInitialized:e((({enumName:e,memberName:t})=>`Number enum members need to be initialized, e.g. \`${t} = 1\` in enum \`${e}\`.`)),EnumStringMemberInconsistentlyInitailized:e((({enumName:e})=>`String enum members need to consistently either all use initializers, or use no initializers, in enum \`${e}\`.`)),GetterMayNotHaveThisParam:e("A getter cannot have a `this` parameter."),ImportTypeShorthandOnlyInPureImport:e("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:e("Explicit inexact syntax cannot appear inside an explicit exact object type."),InexactInsideNonObject:e("Explicit inexact syntax cannot appear in class or interface definitions."),InexactVariance:e("Explicit inexact syntax cannot have variance."),InvalidNonTypeImportInDeclareModule:e("Imports within a `declare module` body must always be `import type` or `import typeof`."),MissingTypeParamDefault:e("Type parameter declaration needs a default, since a preceding type parameter declaration has a default."),NestedDeclareModule:e("`declare module` cannot be used inside another `declare module`."),NestedFlowComment:e("Cannot have a flow comment inside another flow comment."),PatternIsOptional:e("A binding pattern parameter cannot be optional in an implementation signature.",{reasonCode:"OptionalBindingPattern"}),SetterMayNotHaveThisParam:e("A setter cannot have a `this` parameter."),SpreadVariance:e("Spread properties cannot have variance."),ThisParamAnnotationRequired:e("A type annotation is required for the `this` parameter."),ThisParamBannedInConstructor:e("Constructors cannot have a `this` parameter; constructors don't bind `this` like other functions."),ThisParamMayNotBeOptional:e("The `this` parameter cannot be optional."),ThisParamMustBeFirst:e("The `this` parameter must be the first function parameter."),ThisParamNoDefault:e("The `this` parameter may not have a default value."),TypeBeforeInitializer:e("Type annotations must come before default assignments, e.g. instead of `age = 25: number` use `age: number = 25`."),TypeCastInPattern:e("The type cast expression is expected to be wrapped with parenthesis."),UnexpectedExplicitInexactInObject:e("Explicit inexact syntax must appear at the end of an inexact object."),UnexpectedReservedType:e((({reservedType:e})=>`Unexpected reserved type ${e}.`)),UnexpectedReservedUnderscore:e("`_` is only allowed as a type argument to call or new."),UnexpectedSpaceBetweenModuloChecks:e("Spaces between `%` and `checks` are not allowed here."),UnexpectedSpreadType:e("Spread operator cannot appear in class or interface definitions."),UnexpectedSubtractionOperand:e('Unexpected token, expected "number" or "bigint".'),UnexpectedTokenAfterTypeParameter:e("Expected an arrow function after this type parameter declaration."),UnexpectedTypeParameterBeforeAsyncArrowFunction:e("Type parameters must come after the async keyword, e.g. instead of ` async () => {}`, use `async () => {}`."),UnsupportedDeclareExportKind:e((({unsupportedExportKind:e,suggestion:t})=>`\`declare export ${e}\` is not supported. Use \`${t}\` instead.`)),UnsupportedStatementInDeclareModule:e("Only declares and type imports are allowed inside declare module."),UnterminatedFlowComment:e("Unterminated flow-comment.")})));function tt(e){return"type"===e.importKind||"typeof"===e.importKind}function nt(e){return Y(e)&&97!==e}const rt={const:"declare export var",let:"declare export var",type:"export type",interface:"export interface"},at=/\*?\s*@((?:no)?flow)\b/,it={__proto__:null,quot:'"',amp:"&",apos:"'",lt:"<",gt:">",nbsp:" ",iexcl:"¡",cent:"¢",pound:"£",curren:"¤",yen:"¥",brvbar:"¦",sect:"§",uml:"¨",copy:"©",ordf:"ª",laquo:"«",not:"¬",shy:"­",reg:"®",macr:"¯",deg:"°",plusmn:"±",sup2:"²",sup3:"³",acute:"´",micro:"µ",para:"¶",middot:"·",cedil:"¸",sup1:"¹",ordm:"º",raquo:"»",frac14:"¼",frac12:"½",frac34:"¾",iquest:"¿",Agrave:"À",Aacute:"Á",Acirc:"Â",Atilde:"Ã",Auml:"Ä",Aring:"Å",AElig:"Æ",Ccedil:"Ç",Egrave:"È",Eacute:"É",Ecirc:"Ê",Euml:"Ë",Igrave:"Ì",Iacute:"Í",Icirc:"Î",Iuml:"Ï",ETH:"Ð",Ntilde:"Ñ",Ograve:"Ò",Oacute:"Ó",Ocirc:"Ô",Otilde:"Õ",Ouml:"Ö",times:"×",Oslash:"Ø",Ugrave:"Ù",Uacute:"Ú",Ucirc:"Û",Uuml:"Ü",Yacute:"Ý",THORN:"Þ",szlig:"ß",agrave:"à",aacute:"á",acirc:"â",atilde:"ã",auml:"ä",aring:"å",aelig:"æ",ccedil:"ç",egrave:"è",eacute:"é",ecirc:"ê",euml:"ë",igrave:"ì",iacute:"í",icirc:"î",iuml:"ï",eth:"ð",ntilde:"ñ",ograve:"ò",oacute:"ó",ocirc:"ô",otilde:"õ",ouml:"ö",divide:"÷",oslash:"ø",ugrave:"ù",uacute:"ú",ucirc:"û",uuml:"ü",yacute:"ý",thorn:"þ",yuml:"ÿ",OElig:"Œ",oelig:"œ",Scaron:"Š",scaron:"š",Yuml:"Ÿ",fnof:"ƒ",circ:"ˆ",tilde:"˜",Alpha:"Α",Beta:"Β",Gamma:"Γ",Delta:"Δ",Epsilon:"Ε",Zeta:"Ζ",Eta:"Η",Theta:"Θ",Iota:"Ι",Kappa:"Κ",Lambda:"Λ",Mu:"Μ",Nu:"Ν",Xi:"Ξ",Omicron:"Ο",Pi:"Π",Rho:"Ρ",Sigma:"Σ",Tau:"Τ",Upsilon:"Υ",Phi:"Φ",Chi:"Χ",Psi:"Ψ",Omega:"Ω",alpha:"α",beta:"β",gamma:"γ",delta:"δ",epsilon:"ε",zeta:"ζ",eta:"η",theta:"θ",iota:"ι",kappa:"κ",lambda:"λ",mu:"μ",nu:"ν",xi:"ξ",omicron:"ο",pi:"π",rho:"ρ",sigmaf:"ς",sigma:"σ",tau:"τ",upsilon:"υ",phi:"φ",chi:"χ",psi:"ψ",omega:"ω",thetasym:"ϑ",upsih:"ϒ",piv:"ϖ",ensp:" ",emsp:" ",thinsp:" ",zwnj:"‌",zwj:"‍",lrm:"‎",rlm:"‏",ndash:"–",mdash:"—",lsquo:"‘",rsquo:"’",sbquo:"‚",ldquo:"“",rdquo:"”",bdquo:"„",dagger:"†",Dagger:"‡",bull:"•",hellip:"…",permil:"‰",prime:"′",Prime:"″",lsaquo:"‹",rsaquo:"›",oline:"‾",frasl:"⁄",euro:"€",image:"ℑ",weierp:"℘",real:"ℜ",trade:"™",alefsym:"ℵ",larr:"←",uarr:"↑",rarr:"→",darr:"↓",harr:"↔",crarr:"↵",lArr:"⇐",uArr:"⇑",rArr:"⇒",dArr:"⇓",hArr:"⇔",forall:"∀",part:"∂",exist:"∃",empty:"∅",nabla:"∇",isin:"∈",notin:"∉",ni:"∋",prod:"∏",sum:"∑",minus:"−",lowast:"∗",radic:"√",prop:"∝",infin:"∞",ang:"∠",and:"∧",or:"∨",cap:"∩",cup:"∪",int:"∫",there4:"∴",sim:"∼",cong:"≅",asymp:"≈",ne:"≠",equiv:"≡",le:"≤",ge:"≥",sub:"⊂",sup:"⊃",nsub:"⊄",sube:"⊆",supe:"⊇",oplus:"⊕",otimes:"⊗",perp:"⊥",sdot:"⋅",lceil:"⌈",rceil:"⌉",lfloor:"⌊",rfloor:"⌋",lang:"〈",rang:"〉",loz:"◊",spades:"♠",clubs:"♣",hearts:"♥",diams:"♦"},st=m`jsx`((e=>({AttributeIsEmpty:e("JSX attributes must only be assigned a non-empty expression."),MissingClosingTagElement:e((({openingTagName:e})=>`Expected corresponding JSX closing tag for <${e}>.`)),MissingClosingTagFragment:e("Expected corresponding JSX closing tag for <>."),UnexpectedSequenceExpression:e("Sequence expressions cannot be directly nested inside JSX. Did you mean to wrap it in parentheses (...)?"),UnexpectedToken:e((({unexpected:e,HTMLEntity:t})=>`Unexpected token \`${e}\`. Did you mean \`${t}\` or \`{'${e}'}\`?`)),UnsupportedJsxValue:e("JSX value should be either an expression or a quoted JSX text."),UnterminatedJsxContent:e("Unterminated JSX contents."),UnwrappedAdjacentJSXElements:e("Adjacent JSX elements must be wrapped in an enclosing tag. Did you want a JSX fragment <>...?")})));function ot(e){return!!e&&("JSXOpeningFragment"===e.type||"JSXClosingFragment"===e.type)}function lt(e){if("JSXIdentifier"===e.type)return e.name;if("JSXNamespacedName"===e.type)return e.namespace.name+":"+e.name.name;if("JSXMemberExpression"===e.type)return lt(e.object)+"."+lt(e.property);throw new Error("Node had unexpected type: "+e.type)}class pt extends Me{constructor(...e){super(...e),this.types=new Set,this.enums=new Set,this.constEnums=new Set,this.classes=new Set,this.exportOnlyBindings=new Set}}class ct extends ke{createScope(e){return new pt(e)}declareName(e,t,n){const r=this.currentScope();if(1024&t)return this.maybeExportDefined(r,e),void r.exportOnlyBindings.add(e);super.declareName(...arguments),2&t&&(1&t||(this.checkRedeclarationInScope(r,e,t,n),this.maybeExportDefined(r,e)),r.types.add(e)),256&t&&r.enums.add(e),512&t&&r.constEnums.add(e),128&t&&r.classes.add(e)}isRedeclaredInScope(e,t,n){return e.enums.has(t)?!(256&n)||!!(512&n)!==e.constEnums.has(t):128&n&&e.classes.has(t)?!!e.lexical.has(t)&&!!(1&n):!!(2&n&&e.types.has(t))||super.isRedeclaredInScope(...arguments)}checkLocalExport(e){const t=this.scopeStack[0],{name:n}=e;t.types.has(n)||t.exportOnlyBindings.has(n)||super.checkLocalExport(e)}}function ut(e){if(!e)throw new Error("Assert fail")}const dt=m`typescript`((e=>({AbstractMethodHasImplementation:e((({methodName:e})=>`Method '${e}' cannot have an implementation because it is marked abstract.`)),AbstractPropertyHasInitializer:e((({propertyName:e})=>`Property '${e}' cannot have an initializer because it is marked abstract.`)),AccesorCannotDeclareThisParameter:e("'get' and 'set' accessors cannot declare 'this' parameters."),AccesorCannotHaveTypeParameters:e("An accessor cannot have type parameters."),CannotFindName:e((({name:e})=>`Cannot find name '${e}'.`)),ClassMethodHasDeclare:e("Class methods cannot have the 'declare' modifier."),ClassMethodHasReadonly:e("Class methods cannot have the 'readonly' modifier."),ConstInitiailizerMustBeStringOrNumericLiteralOrLiteralEnumReference:e("A 'const' initializer in an ambient context must be a string or numeric literal or literal enum reference."),ConstructorHasTypeParameters:e("Type parameters cannot appear on a constructor declaration."),DeclareAccessor:e((({kind:e})=>`'declare' is not allowed in ${e}ters.`)),DeclareClassFieldHasInitializer:e("Initializers are not allowed in ambient contexts."),DeclareFunctionHasImplementation:e("An implementation cannot be declared in ambient contexts."),DuplicateAccessibilityModifier:e((({modifier:e})=>"Accessibility modifier already seen.")),DuplicateModifier:e((({modifier:e})=>`Duplicate modifier: '${e}'.`)),EmptyHeritageClauseType:e((({token:e})=>`'${e}' list cannot be empty.`)),EmptyTypeArguments:e("Type argument list cannot be empty."),EmptyTypeParameters:e("Type parameter list cannot be empty."),ExpectedAmbientAfterExportDeclare:e("'export declare' must be followed by an ambient declaration."),ImportAliasHasImportType:e("An import alias can not use 'import type'."),IncompatibleModifiers:e((({modifiers:e})=>`'${e[0]}' modifier cannot be used with '${e[1]}' modifier.`)),IndexSignatureHasAbstract:e("Index signatures cannot have the 'abstract' modifier."),IndexSignatureHasAccessibility:e((({modifier:e})=>`Index signatures cannot have an accessibility modifier ('${e}').`)),IndexSignatureHasDeclare:e("Index signatures cannot have the 'declare' modifier."),IndexSignatureHasOverride:e("'override' modifier cannot appear on an index signature."),IndexSignatureHasStatic:e("Index signatures cannot have the 'static' modifier."),InitializerNotAllowedInAmbientContext:e("Initializers are not allowed in ambient contexts."),InvalidModifierOnTypeMember:e((({modifier:e})=>`'${e}' modifier cannot appear on a type member.`)),InvalidModifiersOrder:e((({orderedModifiers:e})=>`'${e[0]}' modifier must precede '${e[1]}' modifier.`)),InvalidTupleMemberLabel:e("Tuple members must be labeled with a simple identifier."),MissingInterfaceName:e("'interface' declarations must be followed by an identifier."),MixedLabeledAndUnlabeledElements:e("Tuple members must all have names or all not have names."),NonAbstractClassHasAbstractMethod:e("Abstract methods can only appear within an abstract class."),NonClassMethodPropertyHasAbstractModifer:e("'abstract' modifier can only appear on a class, method, or property declaration."),OptionalTypeBeforeRequired:e("A required element cannot follow an optional element."),OverrideNotInSubClass:e("This member cannot have an 'override' modifier because its containing class does not extend another class."),PatternIsOptional:e("A binding pattern parameter cannot be optional in an implementation signature."),PrivateElementHasAbstract:e("Private elements cannot have the 'abstract' modifier."),PrivateElementHasAccessibility:e((({modifier:e})=>`Private elements cannot have an accessibility modifier ('${e}').`)),ReadonlyForMethodSignature:e("'readonly' modifier can only appear on a property declaration or index signature."),ReservedArrowTypeParam:e("This syntax is reserved in files with the .mts or .cts extension. Add a trailing comma, as in `() => ...`."),ReservedTypeAssertion:e("This syntax is reserved in files with the .mts or .cts extension. Use an `as` expression instead."),SetAccesorCannotHaveOptionalParameter:e("A 'set' accessor cannot have an optional parameter."),SetAccesorCannotHaveRestParameter:e("A 'set' accessor cannot have rest parameter."),SetAccesorCannotHaveReturnType:e("A 'set' accessor cannot have a return type annotation."),SingleTypeParameterWithoutTrailingComma:e((({typeParameterName:e})=>`Single type parameter ${e} should have a trailing comma. Example usage: <${e},>.`)),StaticBlockCannotHaveModifier:e("Static class blocks cannot have any modifier."),TypeAnnotationAfterAssign:e("Type annotations must come before default assignments, e.g. instead of `age = 25: number` use `age: number = 25`."),TypeImportCannotSpecifyDefaultAndNamed:e("A type-only import can specify a default import or named bindings, but not both."),TypeModifierIsUsedInTypeExports:e("The 'type' modifier cannot be used on a named export when 'export type' is used on its export statement."),TypeModifierIsUsedInTypeImports:e("The 'type' modifier cannot be used on a named import when 'import type' is used on its import statement."),UnexpectedParameterModifier:e("A parameter property is only allowed in a constructor implementation."),UnexpectedReadonly:e("'readonly' type modifier is only permitted on array and tuple literal types."),UnexpectedTypeAnnotation:e("Did not expect a type annotation here."),UnexpectedTypeCastInParameter:e("Unexpected type cast in parameter position."),UnsupportedImportTypeArgument:e("Argument in a type import must be a string literal."),UnsupportedParameterPropertyKind:e("A parameter property may not be declared using a binding pattern."),UnsupportedSignatureParameterKind:e((({type:e})=>`Name in a signature must be an Identifier, ObjectPattern or ArrayPattern, instead got ${e}.`))})));function ft(e){return"private"===e||"public"===e||"protected"===e}function yt(e){if("MemberExpression"!==e.type)return!1;const{computed:t,property:n}=e;return(!t||"StringLiteral"===n.type||!("TemplateLiteral"!==n.type||n.expressions.length>0))&&mt(e.object)}function mt(e){return"Identifier"===e.type||"MemberExpression"===e.type&&!e.computed&&mt(e.object)}const ht=m`placeholders`((e=>({ClassNameIsRequired:e("A class name is required."),UnexpectedSpace:e("Unexpected space in placeholder.")})));function Tt(e,t){const[n,r]="string"==typeof t?[t,{}]:t,a=Object.keys(r),i=0===a.length;return e.some((e=>{if("string"==typeof e)return i&&e===n;{const[t,i]=e;if(t!==n)return!1;for(const e of a)if(i[e]!==r[e])return!1;return!0}}))}function St(e,t,n){const r=e.find((e=>Array.isArray(e)?e[0]===t:e===t));return r&&Array.isArray(r)?r[1][n]:null}const bt=["minimal","fsharp","hack","smart"],Et=["^^","@@","^","%","#"],Pt=["hash","bar"],xt={estree:e=>class extends e{parse(){const e=b(super.parse());return this.options.tokens&&(e.tokens=e.tokens.map(b)),e}parseRegExpLiteral({pattern:e,flags:t}){let n=null;try{n=new RegExp(e,t)}catch(e){}const r=this.estreeParseLiteral(n);return r.regex={pattern:e,flags:t},r}parseBigIntLiteral(e){let t;try{t=BigInt(e)}catch(e){t=null}const n=this.estreeParseLiteral(t);return n.bigint=String(n.value||e),n}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,n=this.startNodeAt(e.start,e.loc.start),r=this.startNodeAt(t.start,t.loc.start);return r.value=t.extra.expressionValue,r.raw=t.extra.raw,n.expression=this.finishNodeAt(r,"Literal",t.loc.end),n.directive=t.extra.raw.slice(1,-1),this.finishNodeAt(n,"ExpressionStatement",e.loc.end)}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){super.parseBlockBody(e,...t);const n=e.directives.map((e=>this.directiveToStmt(e)));e.body=n.concat(e.body),delete e.directives}pushClassMethod(e,t,n,r,a,i){this.parseMethod(t,n,r,a,i,"ClassMethod",!0),t.typeParameters&&(t.value.typeParameters=t.typeParameters,delete t.typeParameters),e.body.push(t)}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 n=super.parseLiteral(e,t);return n.raw=n.extra.raw,delete n.extra,n}parseFunctionBody(e,t,n=!1){super.parseFunctionBody(e,t,n),e.expression="BlockStatement"!==e.body.type}parseMethod(e,t,n,r,a,i,s=!1){let o=this.startNode();return o.kind=e.kind,o=super.parseMethod(o,t,n,r,a,i,s),o.type="FunctionExpression",delete o.kind,e.value=o,"ClassPrivateMethod"===i&&(e.computed=!1),i="MethodDefinition",this.finishNode(e,i)}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,n,r,a){const i=super.parseObjectMethod(e,t,n,r,a);return i&&(i.type="Property","method"===i.kind&&(i.kind="init"),i.shorthand=!1),i}parseObjectProperty(e,t,n,r,a){const i=super.parseObjectProperty(e,t,n,r,a);return i&&(i.kind="init",i.type="Property"),i}isValidLVal(e,...t){return"Property"===e?"value":super.isValidLVal(e,...t)}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:n,value:r}=e;this.isPrivateName(n)&&this.classScope.usePrivateName(this.getPrivateNameSV(n),n.loc.start),this.toAssignable(r,t)}else super.toAssignable(e,t)}toAssignableObjectExpressionProp(e){"get"===e.kind||"set"===e.kind?this.raise(h.PatternHasAccessor,{at:e.key}):e.method?this.raise(h.PatternHasMethod,{at:e.key}):super.toAssignableObjectExpressionProp(...arguments)}finishCallExpression(e,t){var n;(super.finishCallExpression(e,t),"Import"===e.callee.type)&&(e.type="ImportExpression",e.source=e.arguments[0],this.hasPlugin("importAssertions")&&(e.attributes=null!=(n=e.arguments[1])?n:null),delete e.arguments,delete e.callee);return e}toReferencedArguments(e){"ImportExpression"!==e.type&&super.toReferencedArguments(e)}parseExport(e){switch(super.parseExport(e),e.type){case"ExportAllDeclaration":e.exported=null;break;case"ExportNamedDeclaration":1===e.specifiers.length&&"ExportNamespaceSpecifier"===e.specifiers[0].type&&(e.type="ExportAllDeclaration",e.exported=e.specifiers[0].exported,delete e.specifiers)}return e}parseSubscript(e,t,n,r,a){const i=super.parseSubscript(e,t,n,r,a);if(a.optionalChainMember){if("OptionalMemberExpression"!==i.type&&"OptionalCallExpression"!==i.type||(i.type=i.type.substring(8)),a.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}hasPropertyAsPrivateName(e){return"ChainExpression"===e.type&&(e=e.expression),super.hasPropertyAsPrivateName(e)}isOptionalChain(e){return"ChainExpression"===e.type}isObjectProperty(e){return"Property"===e.type&&"init"===e.kind&&!e.method}isObjectMethod(e){return e.method||"get"===e.kind||"set"===e.kind}finishNodeAt(e,t,n){return b(super.finishNodeAt(e,t,n))}resetEndLocation(e,t=this.state.lastTokEndLoc){super.resetEndLocation(e,t),b(e)}},jsx:e=>class extends e{jsxReadToken(){let e="",t=this.state.pos;for(;;){if(this.state.pos>=this.length)throw this.raise(st.UnterminatedJsxContent,{at:this.state.startLoc});const n=this.input.charCodeAt(this.state.pos);switch(n){case 60:case 123:return this.state.pos===this.state.start?60===n&&this.state.canStartJSXElement?(++this.state.pos,this.finishToken(138)):super.getTokenFromCode(n):(e+=this.input.slice(t,this.state.pos),this.finishToken(137,e));case 38:e+=this.input.slice(t,this.state.pos),e+=this.jsxReadEntity(),t=this.state.pos;break;default:xe(n)?(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 n;return++this.state.pos,13===t&&10===this.input.charCodeAt(this.state.pos)?(++this.state.pos,n=e?"\n":"\r\n"):n=String.fromCharCode(t),++this.state.curLine,this.state.lineStart=this.state.pos,n}jsxReadString(e){let t="",n=++this.state.pos;for(;;){if(this.state.pos>=this.length)throw this.raise(h.UnterminatedString,{at:this.state.startLoc});const r=this.input.charCodeAt(this.state.pos);if(r===e)break;38===r?(t+=this.input.slice(n,this.state.pos),t+=this.jsxReadEntity(),n=this.state.pos):xe(r)?(t+=this.input.slice(n,this.state.pos),t+=this.jsxReadNewLine(!1),n=this.state.pos):++this.state.pos}return t+=this.input.slice(n,this.state.pos++),this.finishToken(129,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,n=!1;for(;t++<10&&this.state.posclass extends e{constructor(...e){super(...e),this.flowPragma=void 0}getScopeHandler(){return Fe}shouldParseTypes(){return this.getPluginOption("flow","all")||"flow"===this.flowPragma}shouldParseEnums(){return!!this.getPluginOption("flow","enums")}finishToken(e,t){return 129!==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=at.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"}}return super.addComment(e)}flowParseTypeInitialiser(e){const t=this.state.inType;this.state.inType=!0,this.expect(e||14);const n=this.flowParseType();return this.state.inType=t,n}flowParsePredicate(){const e=this.startNode(),t=this.state.startLoc;return this.next(),this.expectContextual(107),this.state.lastTokStart>t.index+1&&this.raise(et.UnexpectedSpaceBetweenModuloChecks,{at:t}),this.eat(10)?(e.value=this.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,n=null;return this.match(54)?(this.state.inType=e,n=this.flowParsePredicate()):(t=this.flowParseType(),this.state.inType=e,this.match(54)&&(n=this.flowParsePredicate())),[t,n]}flowParseDeclareClass(e){return this.next(),this.flowParseInterfaceish(e,!0),this.finishNode(e,"DeclareClass")}flowParseDeclareFunction(e){this.next();const t=e.id=this.parseIdentifier(),n=this.startNode(),r=this.startNode();this.match(47)?n.typeParameters=this.flowParseTypeParameterDeclaration():n.typeParameters=null,this.expect(10);const a=this.flowParseFunctionTypeParams();return n.params=a.params,n.rest=a.rest,n.this=a._this,this.expect(11),[n.returnType,e.predicate]=this.flowParseTypeAndPredicateInitialiser(),r.typeAnnotation=this.finishNode(n,"FunctionTypeAnnotation"),t.typeAnnotation=this.finishNode(r,"TypeAnnotation"),this.resetEndLocation(t),this.semicolon(),this.scope.declareName(e.id.name,2048,e.id.loc.start),this.finishNode(e,"DeclareFunction")}flowParseDeclare(e,t){if(this.match(80))return this.flowParseDeclareClass(e);if(this.match(68))return this.flowParseDeclareFunction(e);if(this.match(74))return this.flowParseDeclareVariable(e);if(this.eatContextual(123))return this.match(16)?this.flowParseDeclareModuleExports(e):(t&&this.raise(et.NestedDeclareModule,{at:this.state.lastTokStartLoc}),this.flowParseDeclareModule(e));if(this.isContextual(126))return this.flowParseDeclareTypeAlias(e);if(this.isContextual(127))return this.flowParseDeclareOpaqueType(e);if(this.isContextual(125))return this.flowParseDeclareInterface(e);if(this.match(82))return this.flowParseDeclareExportDeclaration(e,t);throw 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(129)?e.id=this.parseExprAtom():e.id=this.parseIdentifier();const t=e.body=this.startNode(),n=t.body=[];for(this.expect(5);!this.match(8);){let e=this.startNode();this.match(83)?(this.next(),this.isContextual(126)||this.match(87)||this.raise(et.InvalidNonTypeImportInDeclareModule,{at:this.state.lastTokStartLoc}),this.parseImport(e)):(this.expectContextual(121,et.UnsupportedStatementInDeclareModule),e=this.flowParseDeclare(e,!0)),n.push(e)}this.scope.exit(),this.expect(8),this.finishNode(t,"BlockStatement");let r=null,a=!1;return n.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&&(a&&this.raise(et.DuplicateDeclareModuleExports,{at:e}),"ES"===r&&this.raise(et.AmbiguousDeclareModuleKind,{at:e}),r="CommonJS",a=!0):("CommonJS"===r&&this.raise(et.AmbiguousDeclareModuleKind,{at:e}),r="ES")})),e.kind=r||"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(126)||this.isContextual(125))&&!t){const e=this.state.value;throw this.raise(et.UnsupportedDeclareExportKind,{at:this.state.startLoc,unsupportedExportKind:e,suggestion:rt[e]})}if(this.match(74)||this.match(68)||this.match(80)||this.isContextual(127))return e.declaration=this.flowParseDeclare(this.startNode()),e.default=!1,this.finishNode(e,"DeclareExportDeclaration");if(this.match(55)||this.match(5)||this.isContextual(125)||this.isContextual(126)||this.isContextual(127))return"ExportNamedDeclaration"===(e=this.parseExport(e)).type&&(e.type="ExportDeclaration",e.default=!1,delete e.exportKind),e.type="Declare"+e.type,e;throw this.unexpected()}flowParseDeclareModuleExports(e){return this.next(),this.expectContextual(108),e.typeAnnotation=this.flowParseTypeAnnotation(),this.semicolon(),this.finishNode(e,"DeclareModuleExports")}flowParseDeclareTypeAlias(e){return this.next(),this.flowParseTypeAlias(e),e.type="DeclareTypeAlias",e}flowParseDeclareOpaqueType(e){return this.next(),this.flowParseOpaqueType(e,!0),e.type="DeclareOpaqueType",e}flowParseDeclareInterface(e){return this.next(),this.flowParseInterfaceish(e),this.finishNode(e,"DeclareInterface")}flowParseInterfaceish(e,t=!1){if(e.id=this.flowParseRestrictedIdentifier(!t,!0),this.scope.declareName(e.id.name,t?17:9,e.id.loc.start),this.match(47)?e.typeParameters=this.flowParseTypeParameterDeclaration():e.typeParameters=null,e.extends=[],e.implements=[],e.mixins=[],this.eat(81))do{e.extends.push(this.flowParseInterfaceExtends())}while(!t&&this.eat(12));if(this.isContextual(114)){this.next();do{e.mixins.push(this.flowParseInterfaceExtends())}while(this.eat(12))}if(this.isContextual(110)){this.next();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),this.finishNode(e,"InterfaceDeclaration")}checkNotUnderscore(e){"_"===e&&this.raise(et.UnexpectedReservedUnderscore,{at:this.state.startLoc})}checkReservedType(e,t,n){Ze.has(e)&&this.raise(n?et.AssignReservedType:et.UnexpectedReservedType,{at: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,9,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(126),e.id=this.flowParseRestrictedIdentifier(!0,!0),this.scope.declareName(e.id.name,9,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,n=this.startNode(),r=this.flowParseVariance(),a=this.flowParseTypeAnnotatableIdentifier();return n.name=a.name,n.variance=r,n.bound=a.typeAnnotation,this.match(29)?(this.eat(29),n.default=this.flowParseType()):e&&this.raise(et.MissingTypeParamDefault,{at:t}),this.finishNode(n,"TypeParameter")}flowParseTypeParameterDeclaration(){const e=this.state.inType,t=this.startNode();t.params=[],this.state.inType=!0,this.match(47)||this.match(138)?this.next():this.unexpected();let n=!1;do{const e=this.flowParseTypeParameter(n);t.params.push(e),e.default&&(n=!0),this.match(48)||this.expect(12)}while(!this.match(48));return this.expect(48),this.state.inType=e,this.finishNode(t,"TypeParameterDeclaration")}flowParseTypeParameterInstantiation(){const e=this.startNode(),t=this.state.inType;e.params=[],this.state.inType=!0,this.expect(47);const n=this.state.noAnonFunctionType;for(this.state.noAnonFunctionType=!1;!this.match(48);)e.params.push(this.flowParseType()),this.match(48)||this.expect(12);return this.state.noAnonFunctionType=n,this.expect(48),this.state.inType=t,this.finishNode(e,"TypeParameterInstantiation")}flowParseTypeParameterInstantiationCallOrNew(){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(125),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(130)||this.match(129)?this.parseExprAtom():this.parseIdentifier(!0)}flowParseObjectTypeIndexer(e,t,n){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=n,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.start,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 n=this.startNode();return e.static=t,e.value=this.flowParseObjectTypeMethodish(n),this.finishNode(e,"ObjectTypeCallProperty")}flowParseObjectType({allowStatic:e,allowExact:t,allowSpread:n,allowProto:r,allowInexact:a}){const i=this.state.inType;this.state.inType=!0;const s=this.startNode();let o,l;s.callProperties=[],s.properties=[],s.indexers=[],s.internalSlots=[];let p=!1;for(t&&this.match(6)?(this.expect(6),o=9,l=!0):(this.expect(5),o=8,l=!1),s.exact=l;!this.match(o);){let t=!1,i=null,o=null;const c=this.startNode();if(r&&this.isContextual(115)){const t=this.lookahead();14!==t.type&&17!==t.type&&(this.next(),i=this.state.startLoc,e=!1)}if(e&&this.isContextual(104)){const e=this.lookahead();14!==e.type&&17!==e.type&&(this.next(),t=!0)}const u=this.flowParseVariance();if(this.eat(0))null!=i&&this.unexpected(i),this.eat(0)?(u&&this.unexpected(u.loc.start),s.internalSlots.push(this.flowParseObjectTypeInternalSlot(c,t))):s.indexers.push(this.flowParseObjectTypeIndexer(c,t,u));else if(this.match(10)||this.match(47))null!=i&&this.unexpected(i),u&&this.unexpected(u.loc.start),s.callProperties.push(this.flowParseObjectTypeCallProperty(c,t));else{let e="init";(this.isContextual(98)||this.isContextual(103))&&U(this.lookahead().type)&&(e=this.state.value,this.next());const r=this.flowParseObjectTypeProperty(c,t,i,u,e,n,null!=a?a:!l);null===r?(p=!0,o=this.state.lastTokStartLoc):s.properties.push(r)}this.flowObjectTypeSemicolon(),!o||this.match(8)||this.match(9)||this.raise(et.UnexpectedExplicitInexactInObject,{at:o})}this.expect(o),n&&(s.inexact=p);const c=this.finishNode(s,"ObjectTypeAnnotation");return this.state.inType=i,c}flowParseObjectTypeProperty(e,t,n,r,a,i,s){if(this.eat(21))return this.match(12)||this.match(13)||this.match(8)||this.match(9)?(i?s||this.raise(et.InexactInsideExact,{at:this.state.lastTokStartLoc}):this.raise(et.InexactInsideNonObject,{at:this.state.lastTokStartLoc}),r&&this.raise(et.InexactVariance,{at:r}),null):(i||this.raise(et.UnexpectedSpreadType,{at:this.state.lastTokStartLoc}),null!=n&&this.unexpected(n),r&&this.raise(et.SpreadVariance,{at:r}),e.argument=this.flowParseType(),this.finishNode(e,"ObjectTypeSpreadProperty"));{e.key=this.flowParseObjectPropertyKey(),e.static=t,e.proto=null!=n,e.kind=a;let s=!1;return this.match(47)||this.match(10)?(e.method=!0,null!=n&&this.unexpected(n),r&&this.unexpected(r.loc.start),e.value=this.flowParseObjectTypeMethodish(this.startNodeAt(e.start,e.loc.start)),"get"!==a&&"set"!==a||this.flowCheckGetterSetterParams(e),!i&&"constructor"===e.key.name&&e.value.this&&this.raise(et.ThisParamBannedInConstructor,{at:e.value.this})):("init"!==a&&this.unexpected(),e.method=!1,this.eat(17)&&(s=!0),e.value=this.flowParseTypeInitialiser(),e.variance=r),e.optional=s,this.finishNode(e,"ObjectTypeProperty")}}flowCheckGetterSetterParams(e){const t="get"===e.kind?0:1,n=e.value.params.length+(e.value.rest?1:0);e.value.this&&this.raise("get"===e.kind?et.GetterMayNotHaveThisParam:et.SetterMayNotHaveThisParam,{at:e.value.this}),n!==t&&this.raise("get"===e.kind?h.BadGetterArity:h.BadSetterArity,{at:e}),"set"===e.kind&&e.value.rest&&this.raise(h.BadSetterRestParameter,{at:e})}flowObjectTypeSemicolon(){this.eat(13)||this.eat(12)||this.match(8)||this.match(9)||this.unexpected()}flowParseQualifiedTypeIdentifier(e,t,n){e=e||this.state.start,t=t||this.state.startLoc;let r=n||this.flowParseRestrictedIdentifier(!0);for(;this.eat(16);){const n=this.startNodeAt(e,t);n.qualification=r,n.id=this.flowParseRestrictedIdentifier(!0),r=this.finishNode(n,"QualifiedTypeIdentifier")}return r}flowParseGenericType(e,t,n){const r=this.startNodeAt(e,t);return r.typeParameters=null,r.id=this.flowParseQualifiedTypeIdentifier(e,t,n),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.possuper.parseFunctionBody(e,!0,n))):super.parseFunctionBody(e,!1,n)}parseFunctionBodyAndFinish(e,t,n=!1){if(this.match(14)){const t=this.startNode();[t.typeAnnotation,e.predicate]=this.flowParseTypeAndPredicateInitialiser(),e.returnType=t.typeAnnotation?this.finishNode(t,"TypeAnnotation"):null}super.parseFunctionBodyAndFinish(e,t,n)}parseStatement(e,t){if(this.state.strict&&this.isContextual(125)){if(Y(this.lookahead().type)){const e=this.startNode();return this.next(),this.flowParseInterface(e)}}else if(this.shouldParseEnums()&&this.isContextual(122)){const e=this.startNode();return this.next(),this.flowParseEnumDeclaration(e)}const n=super.parseStatement(e,t);return void 0!==this.flowPragma||this.isValidDirective(n)||(this.flowPragma=null),n}parseExpressionStatement(e,t){if("Identifier"===t.type)if("declare"===t.name){if(this.match(80)||V(this.state.type)||this.match(68)||this.match(74)||this.match(82))return this.flowParseDeclare(e)}else if(V(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)}shouldParseExportDeclaration(){const{type:e}=this.state;return J(e)||this.shouldParseEnums()&&122===e?!this.state.containsEsc:super.shouldParseExportDeclaration()}isExportDefaultSpecifier(){const{type:e}=this.state;return J(e)||this.shouldParseEnums()&&122===e?this.state.containsEsc:super.isExportDefaultSpecifier()}parseExportDefaultExpression(){if(this.shouldParseEnums()&&this.isContextual(122)){const e=this.startNode();return this.next(),this.flowParseEnumDeclaration(e)}return super.parseExportDefaultExpression()}parseConditional(e,t,n,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 a=this.state.clone(),i=this.state.noArrowAt,s=this.startNodeAt(t,n);let{consequent:o,failed:l}=this.tryParseConditionalConsequent(),[p,c]=this.getArrowLikeExpressions(o);if(l||c.length>0){const e=[...i];if(c.length>0){this.state=a,this.state.noArrowAt=e;for(let t=0;t1&&this.raise(et.AmbiguousConditionalArrow,{at:a.startLoc}),l&&1===p.length&&(this.state=a,e.push(p[0].start),this.state.noArrowAt=e,({consequent:o,failed:l}=this.tryParseConditionalConsequent()))}return this.getArrowLikeExpressions(o,!0),this.state.noArrowAt=i,this.expect(14),s.test=e,s.consequent=o,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 n=[e],r=[];for(;0!==n.length;){const e=n.pop();"ArrowFunctionExpression"===e.type?(e.typeParameters||!e.returnType?this.finishArrowValidation(e):r.push(e),n.push(e.body)):"ConditionalExpression"===e.type&&(n.push(e.consequent),n.push(e.alternate))}return t?(r.forEach((e=>this.finishArrowValidation(e))),[r,[]]):function(e,t){const n=[],r=[];for(let a=0;ae.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 n;return-1!==this.state.noArrowParamsConversionAt.indexOf(e.start)?(this.state.noArrowParamsConversionAt.push(this.state.start),n=t(),this.state.noArrowParamsConversionAt.pop()):n=t(),n}parseParenItem(e,t,n){if(e=super.parseParenItem(e,t,n),this.eat(17)&&(e.optional=!0,this.resetEndLocation(e)),this.match(14)){const r=this.startNodeAt(t,n);return r.expression=e,r.typeAnnotation=this.flowParseTypeAnnotation(),this.finishNode(r,"TypeCastExpression")}return e}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)}parseExport(e){const t=super.parseExport(e);return"ExportNamedDeclaration"!==t.type&&"ExportAllDeclaration"!==t.type||(t.exportKind=t.exportKind||"value"),t}parseExportDeclaration(e){if(this.isContextual(126)){e.exportKind="type";const t=this.startNode();return this.next(),this.match(5)?(e.specifiers=this.parseExportSpecifiers(!0),this.parseExportFrom(e),null):this.flowParseTypeAlias(t)}if(this.isContextual(127)){e.exportKind="type";const t=this.startNode();return this.next(),this.flowParseOpaqueType(t,!1)}if(this.isContextual(125)){e.exportKind="type";const t=this.startNode();return this.next(),this.flowParseInterface(t)}if(this.shouldParseEnums()&&this.isContextual(122)){e.exportKind="value";const t=this.startNode();return this.next(),this.flowParseEnumDeclaration(t)}return super.parseExportDeclaration(e)}eatExportStar(e){return!!super.eatExportStar(...arguments)||!(!this.isContextual(126)||55!==this.lookahead().type)&&(e.exportKind="type",this.next(),this.next(),!0)}maybeParseExportNamespaceSpecifier(e){const{startLoc:t}=this.state,n=super.maybeParseExportNamespaceSpecifier(e);return n&&"type"===e.exportKind&&this.unexpected(t),n}parseClassId(e,t,n){super.parseClassId(e,t,n),this.match(47)&&(e.typeParameters=this.flowParseTypeParameterDeclaration())}parseClassMember(e,t,n){const{startLoc:r}=this.state;if(this.isContextual(121)){if(this.parseClassMemberFromModifier(e,t))return;t.declare=!0}super.parseClassMember(e,t,n),t.declare&&("ClassProperty"!==t.type&&"ClassPrivateProperty"!==t.type&&"PropertyDefinition"!==t.type?this.raise(et.DeclareClassElement,{at:r}):t.value&&this.raise(et.DeclareClassFieldInitializer,{at:t.value}))}isIterator(e){return"iterator"===e||"asyncIterator"===e}readIterator(){const e=super.readWord1(),t="@@"+e;this.isIterator(e)&&this.state.inType||this.raise(h.InvalidIdentifier,{at:this.state.curPosition(),identifierName:t}),this.finishToken(128,t)}getTokenFromCode(e){const t=this.input.charCodeAt(this.state.pos+1);return 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,n){return 64===e&&64===t&&ae(n)}(e,t,this.input.charCodeAt(this.state.pos+2))?(this.state.pos+=2,this.readIterator()):super.getTokenFromCode(e):this.finishOp(62===e?48:47,1)}isAssignable(e,t){return"TypeCastExpression"===e.type?this.isAssignable(e.expression,t):super.isAssignable(e,t)}toAssignable(e,t=!1){t||"AssignmentExpression"!==e.type||"TypeCastExpression"!==e.left.type||(e.left=this.typeCastToParameter(e.left)),super.toAssignable(...arguments)}toAssignableList(e,t,n){for(let t=0;t1)&&t||this.raise(et.TypeCastInPattern,{at:a.typeAnnotation})}return e}parseArrayLike(e,t,n,r){const a=super.parseArrayLike(e,t,n,r);return t&&!this.state.maybeInArrowParameters&&this.toReferencedList(a.elements),a}isValidLVal(e,...t){return"TypeCastExpression"===e||super.isValidLVal(e,...t)}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,n,r,a,i){if(t.variance&&this.unexpected(t.variance.loc.start),delete t.variance,this.match(47)&&(t.typeParameters=this.flowParseTypeParameterDeclaration()),super.pushClassMethod(e,t,n,r,a,i),t.params&&a){const e=t.params;e.length>0&&this.isThisParam(e[0])&&this.raise(et.ThisParamBannedInConstructor,{at:t})}else if("MethodDefinition"===t.type&&a&&t.value.params){const e=t.value.params;e.length>0&&this.isThisParam(e[0])&&this.raise(et.ThisParamBannedInConstructor,{at:t})}}pushClassPrivateMethod(e,t,n,r){t.variance&&this.unexpected(t.variance.loc.start),delete t.variance,this.match(47)&&(t.typeParameters=this.flowParseTypeParameterDeclaration()),super.pushClassPrivateMethod(e,t,n,r)}parseClassSuper(e){if(super.parseClassSuper(e),e.superClass&&this.match(47)&&(e.superTypeParameters=this.flowParseTypeParameterInstantiation()),this.isContextual(110)){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 n=t[0];this.isThisParam(n)&&"get"===e.kind?this.raise(et.GetterMayNotHaveThisParam,{at:n}):this.isThisParam(n)&&this.raise(et.SetterMayNotHaveThisParam,{at:n})}}parsePropertyNamePrefixOperator(e){e.variance=this.flowParseVariance()}parseObjPropValue(e,t,n,r,a,i,s,o){let l;e.variance&&this.unexpected(e.variance.loc.start),delete e.variance,this.match(47)&&!s&&(l=this.flowParseTypeParameterDeclaration(),this.match(10)||this.unexpected()),super.parseObjPropValue(e,t,n,r,a,i,s,o),l&&((e.value||e).typeParameters=l)}parseAssignableListItemTypes(e){return this.eat(17)&&("Identifier"!==e.type&&this.raise(et.PatternIsOptional,{at:e}),this.isThisParam(e)&&this.raise(et.ThisParamMayNotBeOptional,{at:e}),e.optional=!0),this.match(14)?e.typeAnnotation=this.flowParseTypeAnnotation():this.isThisParam(e)&&this.raise(et.ThisParamAnnotationRequired,{at:e}),this.match(29)&&this.isThisParam(e)&&this.raise(et.ThisParamNoDefault,{at:e}),this.resetEndLocation(e),e}parseMaybeDefault(e,t,n){const r=super.parseMaybeDefault(e,t,n);return"AssignmentPattern"===r.type&&r.typeAnnotation&&r.right.startsuper.parseMaybeAssign(e,t)),a),!r.error)return r.node;const{context:n}=this.state,i=n[n.length-1];i!==P.j_oTag&&i!==P.j_expr||n.pop()}if(null!=(n=r)&&n.error||this.match(47)){var i,s;let n;a=a||this.state.clone();const o=this.tryParse((r=>{var a;n=this.flowParseTypeParameterDeclaration();const i=this.forwardNoArrowParamsConversionAt(n,(()=>{const r=super.parseMaybeAssign(e,t);return this.resetStartLocationFromNode(r,n),r}));null!=(a=i.extra)&&a.parenthesized&&r();const s=this.maybeUnwrapTypeCastExpression(i);return"ArrowFunctionExpression"!==s.type&&r(),s.typeParameters=n,this.resetStartLocationFromNode(s,n),i}),a);let l=null;if(o.node&&"ArrowFunctionExpression"===this.maybeUnwrapTypeCastExpression(o.node).type){if(!o.error&&!o.aborted)return o.node.async&&this.raise(et.UnexpectedTypeParameterBeforeAsyncArrowFunction,{at:n}),o.node;l=o.node}if(null!=(i=r)&&i.node)return this.state=r.failState,r.node;if(l)return this.state=o.failState,l;if(null!=(s=r)&&s.thrown)throw r.error;if(o.thrown)throw o.error;throw this.raise(et.UnexpectedTokenAfterTypeParameter,{at:n})}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 n=this.startNode();return[n.typeAnnotation,e.predicate]=this.flowParseTypeAndPredicateInitialiser(),this.state.noAnonFunctionType=t,this.canInsertSemicolon()&&this.unexpected(),this.match(19)||this.unexpected(),n}));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){-1!==this.state.noArrowParamsConversionAt.indexOf(e.start)?e.params=t:super.setArrowFunctionParameters(e,t)}checkParams(e,t,n){if(!n||-1===this.state.noArrowParamsConversionAt.indexOf(e.start)){for(let t=0;t0&&this.raise(et.ThisParamMustBeFirst,{at:e.params[t]});return super.checkParams(...arguments)}}parseParenAndDistinguishExpression(e){return super.parseParenAndDistinguishExpression(e&&-1===this.state.noArrowAt.indexOf(this.state.start))}parseSubscripts(e,t,n,r){if("Identifier"===e.type&&"async"===e.name&&-1!==this.state.noArrowAt.indexOf(t)){this.next();const r=this.startNodeAt(t,n);r.callee=e,r.arguments=this.parseCallExpressionArguments(11,!1),e=this.finishNode(r,"CallExpression")}else if("Identifier"===e.type&&"async"===e.name&&this.match(47)){const a=this.state.clone(),i=this.tryParse((e=>this.parseAsyncArrowWithTypeParameters(t,n)||e()),a);if(!i.error&&!i.aborted)return i.node;const s=this.tryParse((()=>super.parseSubscripts(e,t,n,r)),a);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,n,r)}parseSubscript(e,t,n,r,a){if(this.match(18)&&this.isLookaheadToken_lt()){if(a.optionalChainMember=!0,r)return a.stop=!0,e;this.next();const i=this.startNodeAt(t,n);return i.callee=e,i.typeArguments=this.flowParseTypeParameterInstantiation(),this.expect(10),i.arguments=this.parseCallExpressionArguments(11,!1),i.optional=!0,this.finishCallExpression(i,!0)}if(!r&&this.shouldParseTypes()&&this.match(47)){const r=this.startNodeAt(t,n);r.callee=e;const i=this.tryParse((()=>(r.typeArguments=this.flowParseTypeParameterInstantiationCallOrNew(),this.expect(10),r.arguments=this.parseCallExpressionArguments(11,!1),a.optionalChainMember&&(r.optional=!1),this.finishCallExpression(r,a.optionalChainMember))));if(i.node)return i.error&&(this.state=i.failState),i.node}return super.parseSubscript(e,t,n,r,a)}parseNewArguments(e){let t=null;this.shouldParseTypes()&&this.match(47)&&(t=this.tryParse((()=>this.flowParseTypeParameterInstantiationCallOrNew())).node),e.typeArguments=t,super.parseNewArguments(e)}parseAsyncArrowWithTypeParameters(e,t){const n=this.startNodeAt(e,t);if(this.parseFunctionParams(n),this.parseArrow(n))return this.parseArrowExpression(n,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 n=super.parseTopLevel(e,t);return this.state.hasFlowComment&&this.raise(et.UnterminatedFlowComment,{at:this.state.curPosition()}),n}skipBlockComment(){if(this.hasPlugin("flowComments")&&this.skipFlowComment()){if(this.state.hasFlowComment)throw this.raise(et.NestedFlowComment,{at:this.state.startLoc});return this.hasFlowCommentCompletion(),this.state.pos+=this.skipFlowComment(),void(this.state.hasFlowComment=!0)}if(!this.state.hasFlowComment)return super.skipBlockComment();{const e=this.input.indexOf("*-/",this.state.pos+2);if(-1===e)throw this.raise(h.UnterminatedComment,{at:this.state.curPosition()});this.state.pos=e+2+3}}skipFlowComment(){const{pos:e}=this.state;let t=2;for(;[32,9].includes(this.input.charCodeAt(e+t));)t++;const n=this.input.charCodeAt(t+e),r=this.input.charCodeAt(t+e+1);return 58===n&&58===r?t+2:"flow-include"===this.input.slice(t+e,t+e+12)?t+12:58===n&&58!==r&&t}hasFlowCommentCompletion(){if(-1===this.input.indexOf("*/",this.state.pos))throw this.raise(h.UnterminatedComment,{at:this.state.curPosition()})}flowEnumErrorBooleanMemberNotInitialized(e,{enumName:t,memberName:n}){this.raise(et.EnumBooleanMemberNotInitialized,{at:e,memberName:n,enumName:t})}flowEnumErrorInvalidMemberInitializer(e,t){return this.raise(t.explicitType?"symbol"===t.explicitType?et.EnumInvalidMemberInitializerSymbolType:et.EnumInvalidMemberInitializerPrimaryType:et.EnumInvalidMemberInitializerUnknownType,Object.assign({at:e},t))}flowEnumErrorNumberMemberNotInitialized(e,{enumName:t,memberName:n}){this.raise(et.EnumNumberMemberNotInitialized,{at:e,enumName:t,memberName:n})}flowEnumErrorStringMemberInconsistentlyInitailized(e,{enumName:t}){this.raise(et.EnumStringMemberInconsistentlyInitailized,{at:e,enumName:t})}flowEnumMemberInit(){const e=this.state.startLoc,t=()=>this.match(12)||this.match(8);switch(this.state.type){case 130:{const n=this.parseNumericLiteral(this.state.value);return t()?{type:"number",loc:n.loc.start,value:n}:{type:"invalid",loc:e}}case 129:{const n=this.parseStringLiteral(this.state.value);return t()?{type:"string",loc:n.loc.start,value:n}:{type:"invalid",loc:e}}case 85:case 86:{const n=this.parseBooleanLiteral(this.match(85));return t()?{type:"boolean",loc:n.loc.start,value:n}:{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,n){const{explicitType:r}=t;null!==r&&r!==n&&this.flowEnumErrorInvalidMemberInitializer(e,t)}flowEnumMembers({enumName:e,explicitType:t}){const n=new Set,r={booleanMembers:[],numberMembers:[],stringMembers:[],defaultedMembers:[]};let a=!1;for(;!this.match(8);){if(this.eat(21)){a=!0;break}const i=this.startNode(),{id:s,init:o}=this.flowEnumMemberRaw(),l=s.name;if(""===l)continue;/^[a-z]/.test(l)&&this.raise(et.EnumInvalidMemberName,{at:s,memberName:l,suggestion:l[0].toUpperCase()+l.slice(1),enumName:e}),n.has(l)&&this.raise(et.EnumDuplicateMemberName,{at:s,memberName:l,enumName:e}),n.add(l);const p={enumName:e,explicitType:t,memberName:l};switch(i.id=s,o.type){case"boolean":this.flowEnumCheckExplicitTypeMismatch(o.loc,p,"boolean"),i.init=o.value,r.booleanMembers.push(this.finishNode(i,"EnumBooleanMember"));break;case"number":this.flowEnumCheckExplicitTypeMismatch(o.loc,p,"number"),i.init=o.value,r.numberMembers.push(this.finishNode(i,"EnumNumberMember"));break;case"string":this.flowEnumCheckExplicitTypeMismatch(o.loc,p,"string"),i.init=o.value,r.stringMembers.push(this.finishNode(i,"EnumStringMember"));break;case"invalid":throw this.flowEnumErrorInvalidMemberInitializer(o.loc,p);case"none":switch(t){case"boolean":this.flowEnumErrorBooleanMemberNotInitialized(o.loc,p);break;case"number":this.flowEnumErrorNumberMemberNotInitialized(o.loc,p);break;default:r.defaultedMembers.push(this.finishNode(i,"EnumDefaultedMember"))}}this.match(8)||this.expect(12)}return{members:r,hasUnknownMembers:a}}flowEnumStringMembers(e,t,{enumName:n}){if(0===e.length)return t;if(0===t.length)return e;if(t.length>e.length){for(const t of e)this.flowEnumErrorStringMemberInconsistentlyInitailized(t,{enumName:n});return t}for(const e of t)this.flowEnumErrorStringMemberInconsistentlyInitailized(e,{enumName:n});return e}flowEnumParseExplicitType({enumName:e}){if(!this.eatContextual(101))return null;if(!V(this.state.type))throw this.raise(et.EnumInvalidExplicitTypeUnknownSupplied,{at:this.state.startLoc,enumName:e});const{value:t}=this.state;return this.next(),"boolean"!==t&&"number"!==t&&"string"!==t&&"symbol"!==t&&this.raise(et.EnumInvalidExplicitType,{at:this.state.startLoc,enumName:e,invalidEnumType:t}),t}flowEnumBody(e,t){const n=t.name,r=t.loc.start,a=this.flowEnumParseExplicitType({enumName:n});this.expect(5);const{members:i,hasUnknownMembers:s}=this.flowEnumMembers({enumName:n,explicitType:a});switch(e.hasUnknownMembers=s,a){case"boolean":return e.explicitType=!0,e.members=i.booleanMembers,this.expect(8),this.finishNode(e,"EnumBooleanBody");case"number":return e.explicitType=!0,e.members=i.numberMembers,this.expect(8),this.finishNode(e,"EnumNumberBody");case"string":return e.explicitType=!0,e.members=this.flowEnumStringMembers(i.stringMembers,i.defaultedMembers,{enumName:n}),this.expect(8),this.finishNode(e,"EnumStringBody");case"symbol":return e.members=i.defaultedMembers,this.expect(8),this.finishNode(e,"EnumSymbolBody");default:{const t=()=>(e.members=[],this.expect(8),this.finishNode(e,"EnumStringBody"));e.explicitType=!1;const a=i.booleanMembers.length,s=i.numberMembers.length,o=i.stringMembers.length,l=i.defaultedMembers.length;if(a||s||o||l){if(a||s){if(!s&&!o&&a>=l){for(const e of i.defaultedMembers)this.flowEnumErrorBooleanMemberNotInitialized(e.loc.start,{enumName:n,memberName:e.id.name});return e.members=i.booleanMembers,this.expect(8),this.finishNode(e,"EnumBooleanBody")}if(!a&&!o&&s>=l){for(const e of i.defaultedMembers)this.flowEnumErrorNumberMemberNotInitialized(e.loc.start,{enumName:n,memberName:e.id.name});return e.members=i.numberMembers,this.expect(8),this.finishNode(e,"EnumNumberBody")}return this.raise(et.EnumInconsistentMemberValues,{at:r,enumName:n}),t()}return e.members=this.flowEnumStringMembers(i.stringMembers,i.defaultedMembers,{enumName:n}),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")}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}maybeUnwrapTypeCastExpression(e){return"TypeCastExpression"===e.type?e.expression:e}},typescript:e=>class extends e{getScopeHandler(){return ct}tsIsIdentifier(){return V(this.state.type)}tsTokenCanFollowModifier(){return(this.match(0)||this.match(5)||this.match(55)||this.match(21)||this.match(134)||this.isLiteralPropertyName())&&!this.hasPrecedingLineBreak()}tsNextTokenCanFollowModifier(){return this.next(),this.tsTokenCanFollowModifier()}tsParseModifier(e,t){if(!V(this.state.type))return;const n=this.state.value;if(-1!==e.indexOf(n)){if(t&&this.tsIsStartOfStaticBlocks())return;if(this.tsTryParse(this.tsNextTokenCanFollowModifier.bind(this)))return n}}tsParseModifiers({modified:e,allowedModifiers:t,disallowedModifiers:n,stopOnStartOfClassStaticBlock:r}){const a=(t,n,r,a)=>{n===r&&e[a]&&this.raise(dt.InvalidModifiersOrder,{at:t,orderedModifiers:[r,a]})},i=(t,n,r,a)=>{(e[r]&&n===a||e[a]&&n===r)&&this.raise(dt.IncompatibleModifiers,{at:t,modifiers:[r,a]})};for(;;){const{startLoc:s}=this.state,o=this.tsParseModifier(t.concat(null!=n?n:[]),r);if(!o)break;ft(o)?e.accessibility?this.raise(dt.DuplicateAccessibilityModifier,{at:s,modifier:o}):(a(s,o,o,"override"),a(s,o,o,"static"),a(s,o,o,"readonly"),e.accessibility=o):(Object.hasOwnProperty.call(e,o)?this.raise(dt.DuplicateModifier,{at:s,modifier:o}):(a(s,o,"static","readonly"),a(s,o,"static","override"),a(s,o,"override","readonly"),a(s,o,"abstract","override"),i(s,o,"declare","override"),i(s,o,"static","abstract")),e[o]=!0),null!=n&&n.includes(o)&&this.raise(dt.InvalidModifierOnTypeMember,{at:s,modifier:o})}}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)}throw new Error("Unreachable")}tsParseList(e,t){const n=[];for(;!this.tsIsListTerminator(e);)n.push(t());return n}tsParseDelimitedList(e,t,n){return function(e){if(null==e)throw new Error(`Unexpected ${e} value.`);return e}(this.tsParseDelimitedListWorker(e,t,!0,n))}tsParseDelimitedListWorker(e,t,n,r){const a=[];let i=-1;for(;!this.tsIsListTerminator(e);){i=-1;const r=t();if(null==r)return;if(a.push(r),!this.eat(12)){if(this.tsIsListTerminator(e))break;return void(n&&this.expect(12))}i=this.state.lastTokStart}return r&&(r.value=i),a}tsParseBracketedList(e,t,n,r,a){r||(n?this.expect(0):this.expect(47));const i=this.tsParseDelimitedList(e,t,a);return n?this.expect(3):this.expect(48),i}tsParseImportType(){const e=this.startNode();return this.expect(83),this.expect(10),this.match(129)||this.raise(dt.UnsupportedImportTypeArgument,{at:this.state.startLoc}),e.argument=this.parseExprAtom(),this.expect(11),this.eat(16)&&(e.qualifier=this.tsParseEntityName()),this.match(47)&&(e.typeParameters=this.tsParseTypeArguments()),this.finishNode(e,"TSImportType")}tsParseEntityName(e=!0){let t=this.parseIdentifier(e);for(;this.eat(16);){const n=this.startNodeAtNode(t);n.left=t,n.right=this.parseIdentifier(e),t=this.finishNode(n,"TSQualifiedName")}return t}tsParseTypeReference(){const e=this.startNode();return e.typeName=this.tsParseEntityName(),!this.hasPrecedingLineBreak()&&this.match(47)&&(e.typeParameters=this.tsParseTypeArguments()),this.finishNode(e,"TSTypeReference")}tsParseThisTypePredicate(e){this.next();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(),this.finishNode(e,"TSTypeQuery")}tsParseTypeParameter(){const e=this.startNode();return e.name=this.tsParseTypeParameterName(),e.constraint=this.tsEatThenParseType(81),e.default=this.tsEatThenParseType(29),this.finishNode(e,"TSTypeParameter")}tsTryParseTypeParameters(){if(this.match(47))return this.tsParseTypeParameters()}tsParseTypeParameters(){const e=this.startNode();this.match(47)||this.match(138)?this.next():this.unexpected();const t={value:-1};return e.params=this.tsParseBracketedList("TypeParametersOrArguments",this.tsParseTypeParameter.bind(this),!1,!0,t),0===e.params.length&&this.raise(dt.EmptyTypeParameters,{at:e}),-1!==t.value&&this.addExtra(e,"trailingComma",t.value),this.finishNode(e,"TSTypeParameterDeclaration")}tsTryNextParseConstantContext(){if(75!==this.lookahead().type)return null;this.next();const e=this.tsParseTypeReference();return e.typeParameters&&this.raise(dt.CannotFindName,{at:e.typeName,name:"const"}),e}tsFillSignature(e,t){const n=19===e;t.typeParameters=this.tsTryParseTypeParameters(),this.expect(10),t.parameters=this.tsParseBindingListForSignature(),(n||this.match(e))&&(t.typeAnnotation=this.tsParseTypeOrTypePredicateAnnotation(e))}tsParseBindingListForSignature(){return this.parseBindingList(11,41).map((e=>("Identifier"!==e.type&&"RestElement"!==e.type&&"ObjectPattern"!==e.type&&"ArrayPattern"!==e.type&&this.raise(dt.UnsupportedSignatureParameterKind,{at:e,type:e.type}),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(),!!V(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 n=this.tsTryParseTypeAnnotation();return n&&(e.typeAnnotation=n),this.tsParseTypeMemberSemicolon(),this.finishNode(e,"TSIndexSignature")}tsParsePropertyOrMethodSignature(e,t){this.eat(17)&&(e.optional=!0);const n=e;if(this.match(10)||this.match(47)){t&&this.raise(dt.ReadonlyForMethodSignature,{at:e});const r=n;r.kind&&this.match(47)&&this.raise(dt.AccesorCannotHaveTypeParameters,{at:this.state.curPosition()}),this.tsFillSignature(14,r),this.tsParseTypeMemberSemicolon();const a="parameters",i="typeAnnotation";if("get"===r.kind)r[a].length>0&&(this.raise(h.BadGetterArity,{at:this.state.curPosition()}),this.isThisParam(r[a][0])&&this.raise(dt.AccesorCannotDeclareThisParameter,{at:this.state.curPosition()}));else if("set"===r.kind){if(1!==r[a].length)this.raise(h.BadSetterArity,{at:this.state.curPosition()});else{const e=r[a][0];this.isThisParam(e)&&this.raise(dt.AccesorCannotDeclareThisParameter,{at:this.state.curPosition()}),"Identifier"===e.type&&e.optional&&this.raise(dt.SetAccesorCannotHaveOptionalParameter,{at:this.state.curPosition()}),"RestElement"===e.type&&this.raise(dt.SetAccesorCannotHaveRestParameter,{at:this.state.curPosition()})}r[i]&&this.raise(dt.SetAccesorCannotHaveReturnType,{at:r[i]})}else r.kind="method";return this.finishNode(r,"TSMethodSignature")}{const e=n;t&&(e.readonly=!0);const r=this.tsTryParseTypeAnnotation();return r&&(e.typeAnnotation=r),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({modified:e,allowedModifiers:["readonly"],disallowedModifiers:["declare","abstract","private","protected","public","static","override"]});return this.tsTryParseIndexSignature(e)||(this.parsePropertyName(e),e.computed||"Identifier"!==e.key.type||"get"!==e.key.name&&"set"!==e.key.name||!this.tsTokenCanFollowModifier()||(e.kind=e.key.name,this.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(118):(this.isContextual(118)&&this.next(),!!this.match(0)&&(this.next(),!!this.tsIsIdentifier()&&(this.next(),this.match(58))))}tsParseMappedTypeParameter(){const e=this.startNode();return e.name=this.tsParseTypeParameterName(),e.constraint=this.tsExpectThenParseType(58),this.finishNode(e,"TSTypeParameter")}tsParseMappedType(){const e=this.startNode();return this.expect(5),this.match(53)?(e.readonly=this.state.value,this.next(),this.expectContextual(118)):this.eatContextual(118)&&(e.readonly=!0),this.expect(0),e.typeParameter=this.tsParseMappedTypeParameter(),e.nameType=this.eatContextual(93)?this.tsParseType():null,this.expect(3),this.match(53)?(e.optional=this.state.value,this.next(),this.expect(17)):this.eat(17)&&(e.optional=!0),e.typeAnnotation=this.tsTryParseType(),this.semicolon(),this.expect(8),this.finishNode(e,"TSMappedType")}tsParseTupleType(){const e=this.startNode();e.elementTypes=this.tsParseBracketedList("TupleElementTypes",this.tsParseTupleElementType.bind(this),!0,!1);let t=!1,n=null;return e.elementTypes.forEach((e=>{var r;let{type:a}=e;!t||"TSRestType"===a||"TSOptionalType"===a||"TSNamedTupleMember"===a&&e.optional||this.raise(dt.OptionalTypeBeforeRequired,{at:e}),t=t||"TSNamedTupleMember"===a&&e.optional||"TSOptionalType"===a,"TSRestType"===a&&(a=(e=e.typeAnnotation).type);const i="TSNamedTupleMember"===a;n=null!=(r=n)?r:i,n!==i&&this.raise(dt.MixedLabeledAndUnlabeledElements,{at:e})})),this.finishNode(e,"TSTupleType")}tsParseTupleElementType(){const{start:e,startLoc:t}=this.state,n=this.eat(21);let r=this.tsParseType();const a=this.eat(17);if(this.eat(14)){const e=this.startNodeAtNode(r);e.optional=a,"TSTypeReference"!==r.type||r.typeParameters||"Identifier"!==r.typeName.type?(this.raise(dt.InvalidTupleMemberLabel,{at:r}),e.label=r):e.label=r.typeName,e.elementType=this.tsParseType(),r=this.finishNode(e,"TSNamedTupleMember")}else if(a){const e=this.startNodeAtNode(r);e.typeAnnotation=r,r=this.finishNode(e,"TSOptionalType")}if(n){const n=this.startNodeAt(e,t);n.typeAnnotation=r,r=this.finishNode(n,"TSRestType")}return r}tsParseParenthesizedType(){const e=this.startNode();return this.expect(10),e.typeAnnotation=this.tsParseType(),this.expect(11),this.finishNode(e,"TSParenthesizedType")}tsParseFunctionOrConstructorType(e,t){const n=this.startNode();return"TSConstructorType"===e&&(n.abstract=!!t,t&&this.next(),this.next()),this.tsFillSignature(19,n),this.finishNode(n,e)}tsParseLiteralTypeNode(){const e=this.startNode();return e.literal=(()=>{switch(this.state.type){case 130:case 131:case 129:case 85:case 86:return this.parseExprAtom();default:throw this.unexpected()}})(),this.finishNode(e,"TSLiteralType")}tsParseTemplateLiteralType(){const e=this.startNode();return e.literal=this.parseTemplate(!1),this.finishNode(e,"TSLiteralType")}parseTemplateSubstitution(){return this.state.inType?this.tsParseType():super.parseTemplateSubstitution()}tsParseThisTypeOrThisTypePredicate(){const e=this.tsParseThisTypeNode();return this.isContextual(113)&&!this.hasPrecedingLineBreak()?this.tsParseThisTypePredicate(e):e}tsParseNonArrayType(){switch(this.state.type){case 129:case 130:case 131:case 85:case 86:return this.tsParseLiteralTypeNode();case 53:if("-"===this.state.value){const e=this.startNode(),t=this.lookahead();if(130!==t.type&&131!==t.type)throw this.unexpected();return 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(V(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()}}}throw this.unexpected()}tsParseArrayTypeOrHigher(){let e=this.tsParseNonArrayType();for(;!this.hasPrecedingLineBreak()&&this.eat(0);)if(this.match(3)){const t=this.startNodeAtNode(e);t.elementType=e,this.expect(3),e=this.finishNode(t,"TSArrayType")}else{const t=this.startNodeAtNode(e);t.objectType=e,t.indexType=this.tsParseType(),this.expect(3),e=this.finishNode(t,"TSIndexedAccessType")}return e}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(dt.UnexpectedReadonly,{at:e})}}tsParseInferType(){const e=this.startNode();this.expectContextual(112);const t=this.startNode();return t.name=this.tsParseTypeParameterName(),e.typeParameter=this.finishNode(t,"TSTypeParameter"),this.finishNode(e,"TSInferType")}tsParseTypeOperatorOrHigher(){var e;return(e=this.state.type)>=117&&e<=119&&!this.state.containsEsc?this.tsParseTypeOperator():this.isContextual(112)?this.tsParseInferType():this.tsParseArrayTypeOrHigher()}tsParseUnionOrIntersectionType(e,t,n){const r=this.startNode(),a=this.eat(n),i=[];do{i.push(t())}while(this.eat(n));return 1!==i.length||a?(r.types=i,this.finishNode(r,e)):i[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(V(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 this.parseBindingList(3,93,!0),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 n=this.startNode(),r=!!this.tsTryParse(this.tsParseTypePredicateAsserts.bind(this));if(r&&this.match(78)){let e=this.tsParseThisTypeOrThisTypePredicate();return"TSThisType"===e.type?(n.parameterName=e,n.asserts=!0,n.typeAnnotation=null,e=this.finishNode(n,"TSTypePredicate")):(this.resetStartLocationFromNode(e,n),e.asserts=!0),t.typeAnnotation=e,this.finishNode(t,"TSTypeAnnotation")}const a=this.tsIsIdentifier()&&this.tsTryParse(this.tsParseTypePredicatePrefix.bind(this));if(!a)return r?(n.parameterName=this.parseIdentifier(),n.asserts=r,n.typeAnnotation=null,t.typeAnnotation=this.finishNode(n,"TSTypePredicate"),this.finishNode(t,"TSTypeAnnotation")):this.tsParseTypeAnnotation(!1,t);const i=this.tsParseTypeAnnotation(!1);return n.parameterName=a,n.typeAnnotation=i,n.asserts=r,t.typeAnnotation=this.finishNode(n,"TSTypePredicate"),this.finishNode(t,"TSTypeAnnotation")}))}tsTryParseTypeOrTypePredicateAnnotation(){return this.match(14)?this.tsParseTypeOrTypePredicateAnnotation(14):void 0}tsTryParseTypeAnnotation(){return this.match(14)?this.tsParseTypeAnnotation():void 0}tsTryParseType(){return this.tsEatThenParseType(14)}tsParseTypePredicatePrefix(){const e=this.parseIdentifier();if(this.isContextual(113)&&!this.hasPrecedingLineBreak())return this.next(),e}tsParseTypePredicateAsserts(){if(106!==this.state.type)return!1;const e=this.state.containsEsc;return this.next(),!(!V(this.state.type)&&!this.match(78)||(e&&this.raise(h.InvalidEscapedReservedWord,{at: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(){ut(this.state.inType);const e=this.tsParseNonConditionalType();if(this.hasPrecedingLineBreak()||!this.eat(81))return e;const t=this.startNodeAtNode(e);return t.checkType=e,t.extendsType=this.tsParseNonConditionalType(),this.expect(17),t.trueType=this.tsParseType(),this.expect(14),t.falseType=this.tsParseType(),this.finishNode(t,"TSConditionalType")}isAbstractConstructorSignature(){return this.isContextual(120)&&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(dt.ReservedTypeAssertion,{at:this.state.startLoc});const e=this.startNode(),t=this.tsTryNextParseConstantContext();return e.typeAnnotation=t||this.tsNextThenParseType(),this.expect(48),e.expression=this.parseMaybeUnary(),this.finishNode(e,"TSTypeAssertion")}tsParseHeritageClause(e){const t=this.state.startLoc,n=this.tsParseDelimitedList("HeritageClauseElement",this.tsParseExpressionWithTypeArguments.bind(this));return n.length||this.raise(dt.EmptyHeritageClauseType,{at:t,token:e}),n}tsParseExpressionWithTypeArguments(){const e=this.startNode();return e.expression=this.tsParseEntityName(),this.match(47)&&(e.typeParameters=this.tsParseTypeArguments()),this.finishNode(e,"TSExpressionWithTypeArguments")}tsParseInterfaceDeclaration(e,t={}){if(this.hasFollowingLineBreak())return null;this.expectContextual(125),t.declare&&(e.declare=!0),V(this.state.type)?(e.id=this.parseIdentifier(),this.checkIdentifier(e.id,130)):(e.id=null,this.raise(dt.MissingInterfaceName,{at:this.state.startLoc})),e.typeParameters=this.tsTryParseTypeParameters(),this.eat(81)&&(e.extends=this.tsParseHeritageClause("extends"));const n=this.startNode();return n.body=this.tsInType(this.tsParseObjectTypeMembers.bind(this)),e.body=this.finishNode(n,"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.expect(29),this.isContextual(111)&&16!==this.lookahead().type){const e=this.startNode();return this.next(),this.finishNode(e,"TSIntrinsicKeyword")}return this.tsParseType()})),this.semicolon(),this.finishNode(e,"TSTypeAliasDeclaration")}tsInNoContext(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}}tsEatThenParseType(e){return this.match(e)?this.tsNextThenParseType():void 0}tsExpectThenParseType(e){return this.tsDoThenParseType((()=>this.expect(e)))}tsNextThenParseType(){return this.tsDoThenParseType((()=>this.next()))}tsDoThenParseType(e){return this.tsInType((()=>(e(),this.tsParseType())))}tsParseEnumMember(){const e=this.startNode();return e.id=this.match(129)?this.parseExprAtom():this.parseIdentifier(!0),this.eat(29)&&(e.initializer=this.parseMaybeAssignAllowIn()),this.finishNode(e,"TSEnumMember")}tsParseEnumDeclaration(e,t={}){return t.const&&(e.const=!0),t.declare&&(e.declare=!0),this.expectContextual(122),e.id=this.parseIdentifier(),this.checkIdentifier(e.id,e.const?779:267),this.expect(5),e.members=this.tsParseDelimitedList("EnumMembers",this.tsParseEnumMember.bind(this)),this.expect(8),this.finishNode(e,"TSEnumDeclaration")}tsParseModuleBlock(){const e=this.startNode();return this.scope.enter(0),this.expect(5),this.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(109)?(e.global=!0,e.id=this.parseIdentifier()):this.match(129)?e.id=this.parseExprAtom():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){e.isExport=t||!1,e.id=this.parseIdentifier(),this.checkIdentifier(e.id,9),this.expect(29);const n=this.tsParseModuleReference();return"type"===e.importKind&&"TSExternalModuleReference"!==n.type&&this.raise(dt.ImportAliasHasImportType,{at:n}),e.moduleReference=n,this.semicolon(),this.finishNode(e,"TSImportEqualsDeclaration")}tsIsExternalModuleReference(){return this.isContextual(116)&&40===this.lookaheadCharCode()}tsParseModuleReference(){return this.tsIsExternalModuleReference()?this.tsParseExternalModuleReference():this.tsParseEntityName(!1)}tsParseExternalModuleReference(){const e=this.startNode();if(this.expectContextual(116),this.expect(10),!this.match(129))throw this.unexpected();return e.expression=this.parseExprAtom(),this.expect(11),this.finishNode(e,"TSExternalModuleReference")}tsLookAhead(e){const t=this.state.clone(),n=e();return this.state=t,n}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(),n=e();return void 0!==n&&!1!==n?n:void(this.state=t)}tsTryParseDeclare(e){if(this.isLineTerminator())return;let t,n=this.state.type;return this.isContextual(99)&&(n=74,t="let"),this.tsInAmbientContext((()=>{if(68===n)return e.declare=!0,this.parseFunctionStatement(e,!1,!0);if(80===n)return e.declare=!0,this.parseClass(e,!0,!1);if(122===n)return this.tsParseEnumDeclaration(e,{declare:!0});if(109===n)return this.tsParseAmbientExternalModuleDeclaration(e);if(75===n||74===n)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));if(125===n){const t=this.tsParseInterfaceDeclaration(e,{declare:!0});if(t)return t}return V(n)?this.tsParseDeclaration(e,this.state.value,!0):void 0}))}tsTryParseExportDeclaration(){return this.tsParseDeclaration(this.startNode(),this.state.value,!0)}tsParseExpressionStatement(e,t){switch(t.name){case"declare":{const t=this.tsTryParseDeclare(e);if(t)return t.declare=!0,t;break}case"global":if(this.match(5)){this.scope.enter(256),this.prodParam.enter(0);const n=e;return n.global=!0,n.id=t,n.body=this.tsParseModuleBlock(),this.scope.exit(),this.prodParam.exit(),this.finishNode(n,"TSModuleDeclaration")}break;default:return this.tsParseDeclaration(e,t.name,!1)}}tsParseDeclaration(e,t,n){switch(t){case"abstract":if(this.tsCheckLineTerminator(n)&&(this.match(80)||V(this.state.type)))return this.tsParseAbstractDeclaration(e);break;case"module":if(this.tsCheckLineTerminator(n)){if(this.match(129))return this.tsParseAmbientExternalModuleDeclaration(e);if(V(this.state.type))return this.tsParseModuleOrNamespaceDeclaration(e)}break;case"namespace":if(this.tsCheckLineTerminator(n)&&V(this.state.type))return this.tsParseModuleOrNamespaceDeclaration(e);break;case"type":if(this.tsCheckLineTerminator(n)&&V(this.state.type))return this.tsParseTypeAliasDeclaration(e)}}tsCheckLineTerminator(e){return e?!this.hasFollowingLineBreak()&&(this.next(),!0):!this.isLineTerminator()}tsTryParseGenericAsyncArrowFunction(e,t){if(!this.match(47))return;const n=this.state.maybeInArrowParameters;this.state.maybeInArrowParameters=!0;const r=this.tsTryParseAndCatch((()=>{const n=this.startNodeAt(e,t);return n.typeParameters=this.tsParseTypeParameters(),super.parseFunctionParams(n),n.returnType=this.tsTryParseTypeOrTypePredicateAnnotation(),this.expect(19),n}));return this.state.maybeInArrowParameters=n,r?this.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.tsInNoContext((()=>(this.expect(47),this.tsParseDelimitedList("TypeParametersOrArguments",this.tsParseType.bind(this))))))),0===e.params.length&&this.raise(dt.EmptyTypeArguments,{at:e}),this.expect(48),this.finishNode(e,"TSTypeParameterInstantiation")}tsIsDeclarationStart(){return(e=this.state.type)>=120&&e<=126;var e}isExportDefaultSpecifier(){return!this.tsIsDeclarationStart()&&super.isExportDefaultSpecifier()}parseAssignableListItem(e,t){const n=this.state.start,r=this.state.startLoc;let a,i=!1,s=!1;if(void 0!==e){const t={};this.tsParseModifiers({modified:t,allowedModifiers:["public","private","protected","override","readonly"]}),a=t.accessibility,s=t.override,i=t.readonly,!1===e&&(a||i||s)&&this.raise(dt.UnexpectedParameterModifier,{at:r})}const o=this.parseMaybeDefault();this.parseAssignableListItemTypes(o);const l=this.parseMaybeDefault(o.start,o.loc.start,o);if(a||i||s){const e=this.startNodeAt(n,r);return t.length&&(e.decorators=t),a&&(e.accessibility=a),i&&(e.readonly=i),s&&(e.override=s),"Identifier"!==l.type&&"AssignmentPattern"!==l.type&&this.raise(dt.UnsupportedParameterPropertyKind,{at: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)}parseFunctionBodyAndFinish(e,t,n=!1){this.match(14)&&(e.returnType=this.tsParseTypeOrTypePredicateAnnotation(14));const r="FunctionDeclaration"===t?"TSDeclareFunction":"ClassMethod"===t||"ClassPrivateMethod"===t?"TSDeclareMethod":void 0;r&&!this.match(5)&&this.isLineTerminator()?this.finishNode(e,r):"TSDeclareFunction"===r&&this.state.isAmbientContext&&(this.raise(dt.DeclareFunctionHasImplementation,{at:e}),e.declare)?super.parseFunctionBodyAndFinish(e,r,n):super.parseFunctionBodyAndFinish(e,t,n)}registerFunctionStatementId(e){!e.body&&e.id?this.checkIdentifier(e.id,1024):super.registerFunctionStatementId(...arguments)}tsCheckForInvalidTypeCasts(e){e.forEach((e=>{"TSTypeCastExpression"===(null==e?void 0:e.type)&&this.raise(dt.UnexpectedTypeAnnotation,{at:e.typeAnnotation})}))}toReferencedList(e,t){return this.tsCheckForInvalidTypeCasts(e),e}parseArrayLike(...e){const t=super.parseArrayLike(...e);return"ArrayExpression"===t.type&&this.tsCheckForInvalidTypeCasts(t.elements),t}parseSubscript(e,t,n,r,a){if(!this.hasPrecedingLineBreak()&&this.match(35)){this.state.canStartJSXElement=!1,this.next();const r=this.startNodeAt(t,n);return r.expression=e,this.finishNode(r,"TSNonNullExpression")}let i=!1;if(this.match(18)&&60===this.lookaheadCharCode()){if(r)return a.stop=!0,e;a.optionalChainMember=i=!0,this.next()}if(this.match(47)||this.match(51)){let s;const o=this.tsTryParseAndCatch((()=>{if(!r&&this.atPossibleAsyncArrow(e)){const e=this.tsTryParseGenericAsyncArrowFunction(t,n);if(e)return e}const o=this.startNodeAt(t,n);o.callee=e;const l=this.tsParseTypeArgumentsInExpression();if(l){if(i&&!this.match(10)&&(s=this.state.curPosition(),this.unexpected()),!r&&this.eat(10))return o.arguments=this.parseCallExpressionArguments(11,!1),this.tsCheckForInvalidTypeCasts(o.arguments),o.typeParameters=l,a.optionalChainMember&&(o.optional=i),this.finishCallExpression(o,a.optionalChainMember);if(G(this.state.type)){const r=this.parseTaggedTemplateExpression(e,t,n,a);return r.typeParameters=l,r}}this.unexpected()}));if(s&&this.unexpected(s,10),o)return o}return super.parseSubscript(e,t,n,r,a)}parseNewArguments(e){if(this.match(47)||this.match(51)){const t=this.tsTryParseAndCatch((()=>{const e=this.tsParseTypeArgumentsInExpression();return this.match(10)||this.unexpected(),e}));t&&(e.typeParameters=t)}super.parseNewArguments(e)}parseExprOp(e,t,n,r){if($(58)>r&&!this.hasPrecedingLineBreak()&&this.isContextual(93)){const a=this.startNodeAt(t,n);a.expression=e;const i=this.tsTryNextParseConstantContext();return a.typeAnnotation=i||this.tsNextThenParseType(),this.finishNode(a,"TSAsExpression"),this.reScan_lt_gt(),this.parseExprOp(a,t,n,r)}return super.parseExprOp(e,t,n,r)}checkReservedWord(e,t,n,r){this.state.isAmbientContext||super.checkReservedWord(e,t,n,r)}checkDuplicateExports(){}parseImport(e){if(e.importKind="value",V(this.state.type)||this.match(55)||this.match(5)){let t=this.lookahead();if(this.isContextual(126)&&12!==t.type&&97!==t.type&&29!==t.type&&(e.importKind="type",this.next(),t=this.lookahead()),V(this.state.type)&&29===t.type)return this.tsParseImportEqualsDeclaration(e)}const t=super.parseImport(e);return"type"===t.importKind&&t.specifiers.length>1&&"ImportDefaultSpecifier"===t.specifiers[0].type&&this.raise(dt.TypeImportCannotSpecifyDefaultAndNamed,{at:t}),t}parseExport(e){if(this.match(83))return this.next(),this.isContextual(126)&&61!==this.lookaheadCharCode()?(e.importKind="type",this.next()):e.importKind="value",this.tsParseImportEqualsDeclaration(e,!0);if(this.eat(29)){const t=e;return t.expression=this.parseExpression(),this.semicolon(),this.finishNode(t,"TSExportAssignment")}if(this.eatContextual(93)){const t=e;return this.expectContextual(124),t.id=this.parseIdentifier(),this.semicolon(),this.finishNode(t,"TSNamespaceExportDeclaration")}return this.isContextual(126)&&5===this.lookahead().type?(this.next(),e.exportKind="type"):e.exportKind="value",super.parseExport(e)}isAbstractClass(){return this.isContextual(120)&&80===this.lookahead().type}parseExportDefaultExpression(){if(this.isAbstractClass()){const e=this.startNode();return this.next(),e.abstract=!0,this.parseClass(e,!0,!0),e}if(this.match(125)){const e=this.tsParseInterfaceDeclaration(this.startNode());if(e)return e}return super.parseExportDefaultExpression()}parseVarStatement(e,t,n=!1){const{isAmbientContext:r}=this.state,a=super.parseVarStatement(e,t,n||r);if(!r)return a;for(const{id:e,init:n}of a.declarations)n&&("const"!==t||e.typeAnnotation?this.raise(dt.InitializerNotAllowedInAmbientContext,{at:n}):"StringLiteral"!==n.type&&"BooleanLiteral"!==n.type&&"NumericLiteral"!==n.type&&"BigIntLiteral"!==n.type&&("TemplateLiteral"!==n.type||n.expressions.length>0)&&!yt(n)&&this.raise(dt.ConstInitiailizerMustBeStringOrNumericLiteralOrLiteralEnumReference,{at:n}));return a}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(122))return this.tsParseEnumDeclaration(this.startNode());if(this.isContextual(125)){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=>ft(t)?e.accessibility===t:!!e[t]))}tsIsStartOfStaticBlocks(){return this.isContextual(104)&&123===this.lookaheadCharCode()}parseClassMember(e,t,n){const r=["declare","private","public","protected","override","abstract","readonly","static"];this.tsParseModifiers({modified:t,allowedModifiers:r,stopOnStartOfClassStaticBlock:!0});const a=()=>{this.tsIsStartOfStaticBlocks()?(this.next(),this.next(),this.tsHasSomeModifiers(t,r)&&this.raise(dt.StaticBlockCannotHaveModifier,{at:this.state.curPosition()}),this.parseClassStaticBlock(e,t)):this.parseClassMemberWithIsStatic(e,t,n,!!t.static)};t.declare?this.tsInAmbientContext(a):a()}parseClassMemberWithIsStatic(e,t,n,r){const a=this.tsTryParseIndexSignature(t);if(a)return e.body.push(a),t.abstract&&this.raise(dt.IndexSignatureHasAbstract,{at:t}),t.accessibility&&this.raise(dt.IndexSignatureHasAccessibility,{at:t,modifier:t.accessibility}),t.declare&&this.raise(dt.IndexSignatureHasDeclare,{at:t}),void(t.override&&this.raise(dt.IndexSignatureHasOverride,{at:t}));!this.state.inAbstractClass&&t.abstract&&this.raise(dt.NonAbstractClassHasAbstractMethod,{at:t}),t.override&&(n.hadSuperClass||this.raise(dt.OverrideNotInSubClass,{at:t})),super.parseClassMemberWithIsStatic(e,t,n,r)}parsePostMemberNameModifiers(e){this.eat(17)&&(e.optional=!0),e.readonly&&this.match(10)&&this.raise(dt.ClassMethodHasReadonly,{at:e}),e.declare&&this.match(10)&&this.raise(dt.ClassMethodHasDeclare,{at:e})}parseExpressionStatement(e,t){return("Identifier"===t.type?this.tsParseExpressionStatement(e,t):void 0)||super.parseExpressionStatement(e,t)}shouldParseExportDeclaration(){return!!this.tsIsDeclarationStart()||super.shouldParseExportDeclaration()}parseConditional(e,t,n,r){if(!this.state.maybeInArrowParameters||!this.match(17))return super.parseConditional(e,t,n,r);const a=this.tryParse((()=>super.parseConditional(e,t,n)));return a.node?(a.error&&(this.state=a.failState),a.node):(a.error&&super.setOptionalParametersError(r,a.error),e)}parseParenItem(e,t,n){if(e=super.parseParenItem(e,t,n),this.eat(17)&&(e.optional=!0,this.resetEndLocation(e)),this.match(14)){const r=this.startNodeAt(t,n);return r.expression=e,r.typeAnnotation=this.tsParseTypeAnnotation(),this.finishNode(r,"TSTypeCastExpression")}return e}parseExportDeclaration(e){if(!this.state.isAmbientContext&&this.isContextual(121))return this.tsInAmbientContext((()=>this.parseExportDeclaration(e)));const t=this.state.start,n=this.state.startLoc,r=this.eatContextual(121);if(r&&(this.isContextual(121)||!this.shouldParseExportDeclaration()))throw this.raise(dt.ExpectedAmbientAfterExportDeclare,{at:this.state.startLoc});const a=V(this.state.type)&&this.tsTryParseExportDeclaration()||super.parseExportDeclaration(e);return a?(("TSInterfaceDeclaration"===a.type||"TSTypeAliasDeclaration"===a.type||r)&&(e.exportKind="type"),r&&(this.resetStartLocation(a,t,n),a.declare=!0),a):null}parseClassId(e,t,n){if((!t||n)&&this.isContextual(110))return;super.parseClassId(e,t,n,e.declare?1024:139);const r=this.tsTryParseTypeParameters();r&&(e.typeParameters=r)}parseClassPropertyAnnotation(e){!e.optional&&this.eat(35)&&(e.definite=!0);const t=this.tsTryParseTypeAnnotation();t&&(e.typeAnnotation=t)}parseClassProperty(e){if(this.parseClassPropertyAnnotation(e),this.state.isAmbientContext&&this.match(29)&&this.raise(dt.DeclareClassFieldHasInitializer,{at:this.state.startLoc}),e.abstract&&this.match(29)){const{key:t}=e;this.raise(dt.AbstractPropertyHasInitializer,{at:this.state.startLoc,propertyName:"Identifier"!==t.type||e.computed?`[${this.input.slice(t.start,t.end)}]`:t.name})}return super.parseClassProperty(e)}parseClassPrivateProperty(e){return e.abstract&&this.raise(dt.PrivateElementHasAbstract,{at:e}),e.accessibility&&this.raise(dt.PrivateElementHasAccessibility,{at:e,modifier:e.accessibility}),this.parseClassPropertyAnnotation(e),super.parseClassPrivateProperty(e)}pushClassMethod(e,t,n,r,a,i){const s=this.tsTryParseTypeParameters();s&&a&&this.raise(dt.ConstructorHasTypeParameters,{at:s});const{declare:o=!1,kind:l}=t;!o||"get"!==l&&"set"!==l||this.raise(dt.DeclareAccessor,{at:t,kind:l}),s&&(t.typeParameters=s),super.pushClassMethod(e,t,n,r,a,i)}pushClassPrivateMethod(e,t,n,r){const a=this.tsTryParseTypeParameters();a&&(t.typeParameters=a),super.pushClassPrivateMethod(e,t,n,r)}declareClassPrivateMethodInScope(e,t){"TSDeclareMethod"!==e.type&&("MethodDefinition"!==e.type||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(110)&&(e.implements=this.tsParseHeritageClause("implements"))}parseObjPropValue(e,...t){const n=this.tsTryParseTypeParameters();n&&(e.typeParameters=n),super.parseObjPropValue(e,...t)}parseFunctionParams(e,t){const n=this.tsTryParseTypeParameters();n&&(e.typeParameters=n),super.parseFunctionParams(e,t)}parseVarId(e,t){super.parseVarId(e,t),"Identifier"===e.id.type&&!this.hasPrecedingLineBreak()&&this.eat(35)&&(e.definite=!0);const n=this.tsTryParseTypeAnnotation();n&&(e.id.typeAnnotation=n,this.resetEndLocation(e.id))}parseAsyncArrowFromCallExpression(e,t){return this.match(14)&&(e.returnType=this.tsParseTypeAnnotation()),super.parseAsyncArrowFromCallExpression(e,t)}parseMaybeAssign(...e){var t,n,r,a,i,s,o;let l,p,c,u;if(this.hasPlugin("jsx")&&(this.match(138)||this.match(47))){if(l=this.state.clone(),p=this.tryParse((()=>super.parseMaybeAssign(...e)),l),!p.error)return p.node;const{context:t}=this.state,n=t[t.length-1];n!==P.j_oTag&&n!==P.j_expr||t.pop()}if(!(null!=(t=p)&&t.error||this.match(47)))return super.parseMaybeAssign(...e);l=l||this.state.clone();const d=this.tryParse((t=>{var n,r,a;u=this.tsParseTypeParameters();const i=super.parseMaybeAssign(...e);return("ArrowFunctionExpression"!==i.type||null!=(n=i.extra)&&n.parenthesized)&&t(),0!==(null==(r=u)?void 0:r.params.length)&&this.resetStartLocationFromNode(i,u),i.typeParameters=u,!this.hasPlugin("jsx")||1!==i.typeParameters.params.length||null!=(a=i.typeParameters.extra)&&a.trailingComma||i.typeParameters.params[0].constraint,i}),l);if(!d.error&&!d.aborted)return u&&this.reportReservedArrowTypeParam(u),d.node;if(!p&&(ut(!this.hasPlugin("jsx")),c=this.tryParse((()=>super.parseMaybeAssign(...e)),l),!c.error))return c.node;if(null!=(n=p)&&n.node)return this.state=p.failState,p.node;if(d.node)return this.state=d.failState,u&&this.reportReservedArrowTypeParam(u),d.node;if(null!=(r=c)&&r.node)return this.state=c.failState,c.node;if(null!=(a=p)&&a.thrown)throw p.error;if(d.thrown)throw d.error;if(null!=(i=c)&&i.thrown)throw c.error;throw(null==(s=p)?void 0:s.error)||d.error||(null==(o=c)?void 0:o.error)}reportReservedArrowTypeParam(e){var t;1!==e.params.length||null!=(t=e.extra)&&t.trailingComma||!this.getPluginOption("typescript","disallowAmbiguousJSXLike")||this.raise(dt.ReservedArrowTypeParam,{at:e})}parseMaybeUnary(e){return!this.hasPlugin("jsx")&&this.match(47)?this.tsParseTypeAssertion():super.parseMaybeUnary(e)}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)}parseAssignableListItemTypes(e){this.eat(17)&&("Identifier"===e.type||this.state.isAmbientContext||this.state.inType||this.raise(dt.PatternIsOptional,{at:e}),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"TSNonNullExpression":case"TSTypeAssertion":t?this.expressionScope.recordArrowParemeterBindingError(dt.UnexpectedTypeCastInParameter,{at:e}):this.raise(dt.UnexpectedTypeCastInParameter,{at: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"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"TSTypeAssertion":case"TSNonNullExpression":this.checkToRestConversion(e.expression,!1);break;default:super.checkToRestConversion(e,t)}}isValidLVal(e,t,n){return r={TSTypeCastExpression:!0,TSParameterProperty:"parameter",TSNonNullExpression:"expression",TSAsExpression:(n!==ye||!t)&&["expression",!0],TSTypeAssertion:(n!==ye||!t)&&["expression",!0]},a=e,Object.hasOwnProperty.call(r,a)&&r[a]||super.isValidLVal(e,t,n);var r,a}parseBindingAtom(){return 78===this.state.type?this.parseIdentifier(!0):super.parseBindingAtom()}parseMaybeDecoratorArguments(e){if(this.match(47)||this.match(51)){const t=this.tsParseTypeArgumentsInExpression();if(this.match(10)){const n=super.parseMaybeDecoratorArguments(e);return n.typeParameters=t,n}this.unexpected(null,10)}return super.parseMaybeDecoratorArguments(e)}checkCommaAfterRest(e){return this.state.isAmbientContext&&this.match(12)&&this.lookaheadCharCode()===e?(this.next(),!1):super.checkCommaAfterRest(e)}isClassMethod(){return this.match(47)||super.isClassMethod()}isClassProperty(){return this.match(35)||this.match(14)||super.isClassProperty()}parseMaybeDefault(...e){const t=super.parseMaybeDefault(...e);return"AssignmentPattern"===t.type&&t.typeAnnotation&&t.right.startthis.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),n=this.getObjectOrClassMethodParams(e)[0];return n&&this.isThisParam(n)?t+1:t}parseCatchClauseParam(){const e=super.parseCatchClauseParam(),t=this.tsTryParseTypeAnnotation();return t&&(e.typeAnnotation=t,this.resetEndLocation(e)),e}tsInAmbientContext(e){const t=this.state.isAmbientContext;this.state.isAmbientContext=!0;try{return e()}finally{this.state.isAmbientContext=t}}parseClass(e,...t){const n=this.state.inAbstractClass;this.state.inAbstractClass=!!e.abstract;try{return super.parseClass(e,...t)}finally{this.state.inAbstractClass=n}}tsParseAbstractDeclaration(e){if(this.match(80))return e.abstract=!0,this.parseClass(e,!0,!1);if(this.isContextual(125)){if(!this.hasFollowingLineBreak())return e.abstract=!0,this.raise(dt.NonClassMethodPropertyHasAbstractModifer,{at:e}),this.tsParseInterfaceDeclaration(e)}else this.unexpected(null,80)}parseMethod(...e){const t=super.parseMethod(...e);if(t.abstract&&(this.hasPlugin("estree")?t.value.body:t.body)){const{key:e}=t;this.raise(dt.AbstractMethodHasImplementation,{at:t,methodName:"Identifier"!==e.type||t.computed?`[${this.input.slice(e.start,e.end)}]`:e.name})}return t}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,n,r){return!t&&r?(this.parseTypeOnlyImportExportSpecifier(e,!1,n),this.finishNode(e,"ExportSpecifier")):(e.exportKind="value",super.parseExportSpecifier(e,t,n,r))}parseImportSpecifier(e,t,n,r){return!t&&r?(this.parseTypeOnlyImportExportSpecifier(e,!0,n),this.finishNode(e,"ImportSpecifier")):(e.importKind="value",super.parseImportSpecifier(e,t,n,r))}parseTypeOnlyImportExportSpecifier(e,t,n){const r=t?"imported":"local",a=t?"local":"exported";let i,s=e[r],o=!1,l=!0;const p=s.loc.start;if(this.isContextual(93)){const e=this.parseIdentifier();if(this.isContextual(93)){const n=this.parseIdentifier();Y(this.state.type)?(o=!0,s=e,i=t?this.parseIdentifier():this.parseModuleExportName(),l=!1):(i=n,l=!1)}else Y(this.state.type)?(l=!1,i=t?this.parseIdentifier():this.parseModuleExportName()):(o=!0,s=e)}else Y(this.state.type)&&(o=!0,t?(s=this.parseIdentifier(!0),this.isContextual(93)||this.checkReservedWord(s.name,s.loc.start,!0,!0)):s=this.parseModuleExportName());o&&n&&this.raise(t?dt.TypeModifierIsUsedInTypeImports:dt.TypeModifierIsUsedInTypeExports,{at:p}),e[r]=s,e[a]=i,e[t?"importKind":"exportKind"]=o?"type":"value",l&&this.eatContextual(93)&&(e[a]=t?this.parseIdentifier():this.parseModuleExportName()),e[a]||(e[a]=He(e[r])),t&&this.checkIdentifier(e[a],9)}},v8intrinsic:e=>class extends e{parseV8Intrinsic(){if(this.match(54)){const e=this.state.startLoc,t=this.startNode();if(this.next(),V(this.state.type)){const e=this.parseIdentifierName(this.state.start),n=this.createIdentifier(t,e);if(n.type="V8IntrinsicIdentifier",this.match(10))return n}this.unexpected(e)}}parseExprAtom(){return this.parseV8Intrinsic()||super.parseExprAtom(...arguments)}},placeholders:e=>class extends e{parsePlaceholder(e){if(this.match(140)){const t=this.startNode();return this.next(),this.assertNoSpace(),t.name=super.parseIdentifier(!0),this.assertNoSpace(),this.expect(140),this.finishPlaceholder(t,e)}}finishPlaceholder(e,t){const n=!(!e.expectedNode||"Placeholder"!==e.type);return e.expectedNode=t,n?e:this.finishNode(e,"Placeholder")}getTokenFromCode(e){return 37===e&&37===this.input.charCodeAt(this.state.pos+1)?this.finishOp(140,2):super.getTokenFromCode(...arguments)}parseExprAtom(){return this.parsePlaceholder("Expression")||super.parseExprAtom(...arguments)}parseIdentifier(){return this.parsePlaceholder("Identifier")||super.parseIdentifier(...arguments)}checkReservedWord(e){void 0!==e&&super.checkReservedWord(...arguments)}parseBindingAtom(){return this.parsePlaceholder("Pattern")||super.parseBindingAtom(...arguments)}isValidLVal(e,...t){return"Placeholder"===e||super.isValidLVal(e,...t)}toAssignable(e){e&&"Placeholder"===e.type&&"Expression"===e.expectedNode?e.expectedNode="Pattern":super.toAssignable(...arguments)}isLet(e){return!!super.isLet(e)||!!this.isContextual(99)&&(!e&&140===this.lookahead().type)}verifyBreakContinue(e){e.label&&"Placeholder"===e.label.type||super.verifyBreakContinue(...arguments)}parseExpressionStatement(e,t){if("Placeholder"!==t.type||t.extra&&t.extra.parenthesized)return super.parseExpressionStatement(...arguments);if(this.match(14)){const n=e;return n.label=this.finishPlaceholder(t,"Identifier"),this.next(),n.body=this.parseStatement("label"),this.finishNode(n,"LabeledStatement")}return this.semicolon(),e.name=t.name,this.finishPlaceholder(e,"Statement")}parseBlock(){return this.parsePlaceholder("BlockStatement")||super.parseBlock(...arguments)}parseFunctionId(){return this.parsePlaceholder("Identifier")||super.parseFunctionId(...arguments)}parseClass(e,t,n){const r=t?"ClassDeclaration":"ClassExpression";this.next(),this.takeDecorators(e);const a=this.state.strict,i=this.parsePlaceholder("Identifier");if(i){if(!(this.match(81)||this.match(140)||this.match(5))){if(n||!t)return e.id=null,e.body=this.finishPlaceholder(i,"ClassBody"),this.finishNode(e,r);throw this.raise(ht.ClassNameIsRequired,{at:this.state.startLoc})}e.id=i}else this.parseClassId(e,t,n);return this.parseClassSuper(e),e.body=this.parsePlaceholder("ClassBody")||this.parseClassBody(!!e.superClass,a),this.finishNode(e,r)}parseExport(e){const t=this.parsePlaceholder("Identifier");if(!t)return super.parseExport(...arguments);if(!this.isContextual(97)&&!this.match(12))return e.specifiers=[],e.source=null,e.declaration=this.finishPlaceholder(t,"Declaration"),this.finishNode(e,"ExportNamedDeclaration");this.expectPlugin("exportDefaultFrom");const n=this.startNode();return n.exported=t,e.specifiers=[this.finishNode(n,"ExportDefaultSpecifier")],super.parseExport(e)}isExportDefaultSpecifier(){if(this.match(65)){const e=this.nextTokenStart();if(this.isUnparsedContextual(e,"from")&&this.input.startsWith(q(140),this.nextTokenStartSince(e+4)))return!0}return super.isExportDefaultSpecifier()}maybeParseExportDefaultSpecifier(e){return!!(e.specifiers&&e.specifiers.length>0)||super.maybeParseExportDefaultSpecifier(...arguments)}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(...arguments);if(e.specifiers=[],!this.isContextual(97)&&!this.match(12))return e.source=this.finishPlaceholder(t,"StringLiteral"),this.semicolon(),this.finishNode(e,"ImportDeclaration");const n=this.startNodeAtNode(t);return n.local=t,this.finishNode(n,"ImportDefaultSpecifier"),e.specifiers.push(n),this.eat(12)&&(this.maybeParseStarImportSpecifier(e)||this.parseNamedImportSpecifiers(e)),this.expectContextual(97),e.source=this.parseImportSource(),this.semicolon(),this.finishNode(e,"ImportDeclaration")}parseImportSource(){return this.parsePlaceholder("StringLiteral")||super.parseImportSource(...arguments)}assertNoSpace(){this.state.start>this.state.lastTokEndLoc.index&&this.raise(ht.UnexpectedSpace,{at:this.state.lastTokEndLoc})}}},gt=Object.keys(xt),At={sourceType:"script",sourceFilename:void 0,startColumn:0,startLine:1,allowAwaitOutsideFunction:!1,allowReturnOutsideFunction:!1,allowImportExportEverywhere:!1,allowSuperOutsideMethod:!1,allowUndeclaredExports:!1,plugins:[],strictMode:null,ranges:!1,tokens:!1,createParenthesizedExpressions:!1,errorRecovery:!1,attachComment:!0},vt=e=>"ParenthesizedExpression"===e.type?vt(e.expression):e;class Ot extends Qe{toAssignable(e,t=!1){var n,r;let a;switch(("ParenthesizedExpression"===e.type||null!=(n=e.extra)&&n.parenthesized)&&(a=vt(e),t?"Identifier"===a.type?this.expressionScope.recordArrowParemeterBindingError(h.InvalidParenthesizedAssignment,{at:e}):"MemberExpression"!==a.type&&this.raise(h.InvalidParenthesizedAssignment,{at:e}):this.raise(h.InvalidParenthesizedAssignment,{at:e})),e.type){case"Identifier":case"ObjectPattern":case"ArrayPattern":case"AssignmentPattern":case"RestElement":break;case"ObjectExpression":e.type="ObjectPattern";for(let n=0,r=e.properties.length,a=r-1;n"ObjectMethod"!==e.type&&(n===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,t){const n=this.startNode();return this.next(),n.argument=this.parseMaybeAssignAllowIn(e,void 0,t),this.finishNode(n,"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,!0),this.finishNode(e,"ArrayPattern")}case 5:return this.parseObjectLike(8,!0)}return this.parseIdentifier()}parseBindingList(e,t,n,r){const a=[];let i=!0;for(;!this.eat(e);)if(i?i=!1:this.expect(12),n&&this.match(12))a.push(null);else{if(this.eat(e))break;if(this.match(21)){if(a.push(this.parseAssignableListItemTypes(this.parseRestBinding())),!this.checkCommaAfterRest(t)){this.expect(e);break}}else{const e=[];for(this.match(26)&&this.hasPlugin("decorators")&&this.raise(h.UnsupportedParameterDecorator,{at:this.state.startLoc});this.match(26);)e.push(this.parseDecorator());a.push(this.parseAssignableListItem(r,e))}}return a}parseBindingRestProperty(e){return this.next(),e.argument=this.parseIdentifier(),this.checkCommaAfterRest(125),this.finishNode(e,"RestElement")}parseBindingProperty(){const e=this.startNode(),{type:t,start:n,startLoc:r}=this.state;return 21===t?this.parseBindingRestProperty(e):(134===t?(this.expectPlugin("destructuringPrivate",r),this.classScope.usePrivateName(this.state.value,r),e.key=this.parsePrivateName()):this.parsePropertyName(e),e.method=!1,this.parseObjPropValue(e,n,r,!1,!1,!0,!1),e)}parseAssignableListItem(e,t){const n=this.parseMaybeDefault();this.parseAssignableListItemTypes(n);const r=this.parseMaybeDefault(n.start,n.loc.start,n);return t.length&&(n.decorators=t),r}parseAssignableListItemTypes(e){return e}parseMaybeDefault(e,t,n){var r,a,i;if(t=null!=(r=t)?r:this.state.startLoc,e=null!=(a=e)?a:this.state.start,n=null!=(i=n)?i:this.parseBindingAtom(),!this.eat(29))return n;const s=this.startNodeAt(e,t);return s.left=n,s.right=this.parseMaybeAssignAllowIn(),this.finishNode(s,"AssignmentPattern")}isValidLVal(e,t,n){return r={AssignmentPattern:"left",RestElement:"argument",ObjectProperty:"value",ParenthesizedExpression:"expression",ArrayPattern:"elements",ObjectPattern:"properties"},a=e,Object.hasOwnProperty.call(r,a)&&r[a];var r,a}checkLVal(e,{in:t,binding:n=64,checkClashes:r=!1,strictModeChanged:a=!1,allowingSloppyLetBinding:i=!(8&n),hasParenthesizedAncestor:s=!1}){var o;const l=e.type;if(this.isObjectMethod(e))return;if("MemberExpression"===l)return void(n!==ye&&this.raise(h.InvalidPropertyBindingPattern,{at:e}));if("Identifier"===e.type){this.checkIdentifier(e,n,a,i);const{name:t}=e;return void(r&&(r.has(t)?this.raise(h.ParamDupe,{at:e}):r.add(t)))}const p=this.isValidLVal(e.type,!(s||null!=(o=e.extra)&&o.parenthesized)&&"AssignmentExpression"===t.type,n);if(!0===p)return;if(!1===p){const r=n===ye?h.InvalidLhs:h.InvalidLhsBinding;return void this.raise(r,{at:e,ancestor:"UpdateExpression"===t.type?{type:"UpdateExpression",prefix:t.prefix}:{type:t.type}})}const[c,u]=Array.isArray(p)?p:[p,"ParenthesizedExpression"===l],d="ArrayPattern"===e.type||"ObjectPattern"===e.type||"ParenthesizedExpression"===e.type?e:t;for(const t of[].concat(e[c]))t&&this.checkLVal(t,{in:d,binding:n,checkClashes:r,allowingSloppyLetBinding:i,strictModeChanged:a,hasParenthesizedAncestor:u})}checkIdentifier(e,t,n=!1,r=!(8&t)){this.state.strict&&(n?de(e.name,this.inModule):ue(e.name))&&(t===ye?this.raise(h.StrictEvalArguments,{at:e,referenceName:e.name}):this.raise(h.StrictEvalArgumentsBinding,{at:e,bindingName:e.name})),r||"let"!==e.name||this.raise(h.LetInLexicalBinding,{at:e}),t&ye||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(h.InvalidRestAssignmentPattern,{at:e})}}checkCommaAfterRest(e){return!!this.match(12)&&(this.raise(this.lookaheadCharCode()===e?h.RestTrailingComma:h.ElementAfterRest,{at:this.state.startLoc}),!0)}}class It extends Ot{checkProto(e,t,n,r){if("SpreadElement"===e.type||this.isObjectMethod(e)||e.computed||e.shorthand)return;const a=e.key;if("__proto__"===("Identifier"===a.type?a.name:a.value)){if(t)return void this.raise(h.RecordNoProto,{at:a});n.used&&(r?null===r.doubleProtoLoc&&(r.doubleProtoLoc=a.loc.start):this.raise(h.DuplicateProto,{at:a})),n.used=!0}}shouldExitDescending(e,t){return"ArrowFunctionExpression"===e.type&&e.start===t}getExpression(){this.enterInitialScopes(),this.nextToken();const e=this.parseExpression();return this.match(135)||this.unexpected(),this.finalizeRemainingComments(),e.comments=this.state.comments,e.errors=this.state.errors,this.options.tokens&&(e.tokens=this.tokens),e}parseExpression(e,t){return e?this.disallowInAnd((()=>this.parseExpressionBase(t))):this.allowInAnd((()=>this.parseExpressionBase(t)))}parseExpressionBase(e){const t=this.state.start,n=this.state.startLoc,r=this.parseMaybeAssign(e);if(this.match(12)){const a=this.startNodeAt(t,n);for(a.expressions=[r];this.eat(12);)a.expressions.push(this.parseMaybeAssign(e));return this.toReferencedList(a.expressions),this.finishNode(a,"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 n;e.optionalParametersLoc=null!=(n=null==t?void 0:t.loc)?n:this.state.startLoc}parseMaybeAssign(e,t){const n=this.state.start,r=this.state.startLoc;if(this.isContextual(105)&&this.prodParam.hasYield){let e=this.parseYield();return t&&(e=t.call(this,e,n,r)),e}let a;e?a=!1:(e=new $e,a=!0);const{type:i}=this.state;(10===i||V(i))&&(this.state.potentialArrowAt=this.state.start);let s=this.parseMaybeConditional(e);if(t&&(s=t.call(this,s,n,r)),(o=this.state.type)>=29&&o<=33){const t=this.startNodeAt(n,r),a=this.state.value;return t.operator=a,this.match(29)?(this.toAssignable(s,!0),t.left=s,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)):t.left=s,this.next(),t.right=this.parseMaybeAssign(),this.checkLVal(s,{in:this.finishNode(t,"AssignmentExpression")}),t}var o;return a&&this.checkExpressionErrors(e,!0),s}parseMaybeConditional(e){const t=this.state.start,n=this.state.startLoc,r=this.state.potentialArrowAt,a=this.parseExprOps(e);return this.shouldExitDescending(a,r)?a:this.parseConditional(a,t,n,e)}parseConditional(e,t,n,r){if(this.eat(17)){const r=this.startNodeAt(t,n);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(134)?this.parsePrivateName():this.parseMaybeUnary(e)}parseExprOps(e){const t=this.state.start,n=this.state.startLoc,r=this.state.potentialArrowAt,a=this.parseMaybeUnaryOrPrivate(e);return this.shouldExitDescending(a,r)?a:this.parseExprOp(a,t,n,-1)}parseExprOp(e,t,n,r){if(this.isPrivateName(e)){const t=this.getPrivateNameSV(e);(r>=$(58)||!this.prodParam.hasIn||!this.match(58))&&this.raise(h.PrivateInExpectedIn,{at:e,identifierName:t}),this.classScope.usePrivateName(t,e.loc.start)}const a=this.state.type;if((i=a)>=39&&i<=59&&(this.prodParam.hasIn||!this.match(58))){let i=$(a);if(i>r){if(39===a){if(this.expectPlugin("pipelineOperator"),this.state.inFSharpPipelineDirectBody)return e;this.checkPipelineAtInfixOperator(e,n)}const s=this.startNodeAt(t,n);s.left=e,s.operator=this.state.value;const o=41===a||42===a,l=40===a;if(l&&(i=$(42)),this.next(),39===a&&this.hasPlugin(["pipelineOperator",{proposal:"minimal"}])&&96===this.state.type&&this.prodParam.hasAwait)throw this.raise(h.UnexpectedAwaitAfterPipelineBody,{at:this.state.startLoc});s.right=this.parseExprOpRightExpr(a,i),this.finishNode(s,o||l?"LogicalExpression":"BinaryExpression");const p=this.state.type;if(l&&(41===p||42===p)||o&&40===p)throw this.raise(h.MixingCoalesceWithLogical,{at:this.state.startLoc});return this.parseExprOp(s,t,n,r)}}var i;return e}parseExprOpRightExpr(e,t){const n=this.state.start,r=this.state.startLoc;if(39===e)switch(this.getPluginOption("pipelineOperator","proposal")){case"hack":return this.withTopicBindingContext((()=>this.parseHackPipeBody()));case"smart":return this.withTopicBindingContext((()=>{if(this.prodParam.hasYield&&this.isContextual(105))throw this.raise(h.PipeBodyIsTighter,{at:this.state.startLoc});return this.parseSmartPipelineBodyInStyle(this.parseExprOpBaseRightExpr(e,t),n,r)}));case"fsharp":return this.withSoloAwaitPermittingContext((()=>this.parseFSharpPipelineBody(t)))}return this.parseExprOpBaseRightExpr(e,t)}parseExprOpBaseRightExpr(e,t){const n=this.state.start,r=this.state.startLoc;return this.parseExprOp(this.parseMaybeUnaryOrPrivate(),n,r,57===e?t-1:t)}parseHackPipeBody(){var e;const{startLoc:t}=this.state,n=this.parseMaybeAssign();return!u.has(n.type)||null!=(e=n.extra)&&e.parenthesized||this.raise(h.PipeUnparenthesizedBody,{at:t,type:n.type}),this.topicReferenceWasUsedInCurrentContext()||this.raise(h.PipeTopicUnused,{at:t}),n}checkExponentialAfterUnary(e){this.match(57)&&this.raise(h.UnexpectedTokenUnaryExponentiation,{at:e.argument})}parseMaybeUnary(e,t){const n=this.state.start,r=this.state.startLoc,a=this.isContextual(96);if(a&&this.isAwaitAllowed()){this.next();const e=this.parseAwait(n,r);return t||this.checkExponentialAfterUnary(e),e}const i=this.match(34),s=this.startNode();if(o=this.state.type,B[o]){s.operator=this.state.value,s.prefix=!0,this.match(72)&&this.expectPlugin("throwExpressions");const n=this.match(89);if(this.next(),s.argument=this.parseMaybeUnary(null,!0),this.checkExpressionErrors(e,!0),this.state.strict&&n){const e=s.argument;"Identifier"===e.type?this.raise(h.StrictDelete,{at:s}):this.hasPropertyAsPrivateName(e)&&this.raise(h.DeletePrivateField,{at:s})}if(!i)return t||this.checkExponentialAfterUnary(s),this.finishNode(s,"UnaryExpression")}var o;const l=this.parseUpdate(s,i,e);if(a){const{type:e}=this.state;if((this.hasPlugin("v8intrinsic")?X(e):X(e)&&!this.match(54))&&!this.isAmbiguousAwait())return this.raiseOverwrite(h.AwaitNotInAsyncContext,{at:r}),this.parseAwait(n,r)}return l}parseUpdate(e,t,n){if(t)return this.checkLVal(e.argument,{in:this.finishNode(e,"UpdateExpression")}),e;const r=this.state.start,a=this.state.startLoc;let i=this.parseExprSubscripts(n);if(this.checkExpressionErrors(n,!1))return i;for(;34===this.state.type&&!this.canInsertSemicolon();){const e=this.startNodeAt(r,a);e.operator=this.state.value,e.prefix=!1,e.argument=i,this.next(),this.checkLVal(i,{in:i=this.finishNode(e,"UpdateExpression")})}return i}parseExprSubscripts(e){const t=this.state.start,n=this.state.startLoc,r=this.state.potentialArrowAt,a=this.parseExprAtom(e);return this.shouldExitDescending(a,r)?a:this.parseSubscripts(a,t,n)}parseSubscripts(e,t,n,r){const a={optionalChainMember:!1,maybeAsyncArrow:this.atPossibleAsyncArrow(e),stop:!1};do{e=this.parseSubscript(e,t,n,r,a),a.maybeAsyncArrow=!1}while(!a.stop);return e}parseSubscript(e,t,n,r,a){const{type:i}=this.state;if(!r&&15===i)return this.parseBind(e,t,n,r,a);if(G(i))return this.parseTaggedTemplateExpression(e,t,n,a);let s=!1;if(18===i){if(r&&40===this.lookaheadCharCode())return a.stop=!0,e;a.optionalChainMember=s=!0,this.next()}if(!r&&this.match(10))return this.parseCoverCallAndAsyncArrowHead(e,t,n,a,s);{const r=this.eat(0);return r||s||this.eat(16)?this.parseMember(e,t,n,a,r,s):(a.stop=!0,e)}}parseMember(e,t,n,r,a,i){const s=this.startNodeAt(t,n);return s.object=e,s.computed=a,a?(s.property=this.parseExpression(),this.expect(3)):this.match(134)?("Super"===e.type&&this.raise(h.SuperPrivateField,{at:n}),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,n,r,a){const i=this.startNodeAt(t,n);return i.object=e,this.next(),i.callee=this.parseNoCallExpr(),a.stop=!0,this.parseSubscripts(this.finishNode(i,"BindExpression"),t,n,r)}parseCoverCallAndAsyncArrowHead(e,t,n,r,a){const i=this.state.maybeInArrowParameters;let s=null;this.state.maybeInArrowParameters=!0,this.next();let o=this.startNodeAt(t,n);o.callee=e;const{maybeAsyncArrow:l,optionalChainMember:p}=r;return l&&(this.expressionScope.enter(new Ye(2)),s=new $e),p&&(o.optional=a),o.arguments=a?this.parseCallExpressionArguments(11):this.parseCallExpressionArguments(11,"Import"===e.type,"Super"!==e.type,o,s),this.finishCallExpression(o,p),l&&this.shouldParseAsyncArrow()&&!a?(r.stop=!0,this.checkDestructuringPrivate(s),this.expressionScope.validateAsPattern(),this.expressionScope.exit(),o=this.parseAsyncArrowFromCallExpression(this.startNodeAt(t,n),o)):(l&&(this.checkExpressionErrors(s,!0),this.expressionScope.exit()),this.toReferencedArguments(o)),this.state.maybeInArrowParameters=i,o}toReferencedArguments(e,t){this.toReferencedListDeep(e.arguments,t)}parseTaggedTemplateExpression(e,t,n,r){const a=this.startNodeAt(t,n);return a.tag=e,a.quasi=this.parseTemplate(!0),r.optionalChainMember&&this.raise(h.OptionalChainingNoTemplate,{at:n}),this.finishNode(a,"TaggedTemplateExpression")}atPossibleAsyncArrow(e){return"Identifier"===e.type&&"async"===e.name&&this.state.lastTokEndLoc.index===e.end&&!this.canInsertSemicolon()&&e.end-e.start==5&&e.start===this.state.potentialArrowAt}finishCallExpression(e,t){if("Import"===e.callee.type)if(2===e.arguments.length&&(this.hasPlugin("moduleAttributes")||this.expectPlugin("importAssertions")),0===e.arguments.length||e.arguments.length>2)this.raise(h.ImportCallArity,{at:e,maxArgumentCount:this.hasPlugin("importAssertions")||this.hasPlugin("moduleAttributes")?2:1});else for(const t of e.arguments)"SpreadElement"===t.type&&this.raise(h.ImportCallSpreadArgument,{at:t});return this.finishNode(e,t?"OptionalCallExpression":"CallExpression")}parseCallExpressionArguments(e,t,n,r,a){const i=[];let s=!0;const o=this.state.inFSharpPipelineDirectBody;for(this.state.inFSharpPipelineDirectBody=!1;!this.eat(e);){if(s)s=!1;else if(this.expect(12),this.match(e)){!t||this.hasPlugin("importAssertions")||this.hasPlugin("moduleAttributes")||this.raise(h.ImportCallArgumentTrailingComma,{at:this.state.lastTokStartLoc}),r&&this.addTrailingCommaExtraToNode(r),this.next();break}i.push(this.parseExprListItem(!1,a,n))}return this.state.inFSharpPipelineDirectBody=o,i}shouldParseAsyncArrow(){return this.match(19)&&!this.canInsertSemicolon()}parseAsyncArrowFromCallExpression(e,t){var n;return this.resetPreviousNodeTrailingComments(t),this.expect(19),this.parseArrowExpression(e,t.arguments,!0,null==(n=t.extra)?void 0:n.trailingCommaLoc),t.innerComments&&Te(e,t.innerComments),t.callee.trailingComments&&Te(e,t.callee.trailingComments),e}parseNoCallExpr(){const e=this.state.start,t=this.state.startLoc;return this.parseSubscripts(this.parseExprAtom(),e,t,!0)}parseExprAtom(e){let t;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)||this.raise(h.UnsupportedImport,{at: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 130:return this.parseNumericLiteral(this.state.value);case 131:return this.parseBigIntLiteral(this.state.value);case 132:return this.parseDecimalLiteral(this.state.value);case 129: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:this.parseDecorators();case 80:return t=this.startNode(),this.takeDecorators(t),this.parseClass(t,!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(h.UnsupportedBind,{at:e})}case 134:return this.raise(h.PrivateInExpectedIn,{at: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);throw this.unexpected()}case 47:{const e=this.input.codePointAt(this.nextTokenStart());if(ae(e)||62===e){this.expectOnePlugin(["jsx","flow","typescript"]);break}throw this.unexpected()}default:if(V(n)){if(this.isContextual(123)&&123===this.lookaheadCharCode()&&!this.hasFollowingLineBreak())return this.parseModuleExpression();const e=this.state.potentialArrowAt===this.state.start,t=this.state.containsEsc,n=this.parseIdentifier();if(!t&&"async"===n.name&&!this.canInsertSemicolon()){const{type:e}=this.state;if(68===e)return this.resetPreviousNodeTrailingComments(n),this.next(),this.parseFunction(this.startNodeAtNode(n),void 0,!0);if(V(e))return 61===this.lookaheadCharCode()?this.parseAsyncArrowUnaryFunction(this.startNodeAtNode(n)):n;if(90===e)return this.resetPreviousNodeTrailingComments(n),this.parseDo(this.startNodeAtNode(n),!0)}return e&&this.match(19)&&!this.canInsertSemicolon()?(this.next(),this.parseArrowExpression(this.startNodeAtNode(n),[n],!1)):n}throw this.unexpected()}}parseTopicReferenceThenEqualsSign(e,t){const n=this.getPluginOption("pipelineOperator","proposal");if(n)return this.state.type=e,this.state.value=t,this.state.pos--,this.state.end--,this.state.endLoc=i(this.state.endLoc,-1),this.parseTopicReference(n);throw this.unexpected()}parseTopicReference(e){const t=this.startNode(),n=this.state.startLoc,r=this.state.type;return this.next(),this.finishTopicReference(t,n,e,r)}finishTopicReference(e,t,n,r){if(this.testTopicReferenceConfiguration(n,t,r)){const r="smart"===n?"PipelinePrimaryTopicReference":"TopicReference";return this.topicReferenceIsAllowedInCurrentContext()||this.raise("smart"===n?h.PrimaryTopicNotAllowed:h.PipeTopicUnbound,{at:t}),this.registerTopicReference(),this.finishNode(e,r)}throw this.raise(h.PipeTopicUnconfiguredToken,{at:t,token:q(r)})}testTopicReferenceConfiguration(e,t,n){switch(e){case"hack":return this.hasPlugin(["pipelineOperator",{topicToken:q(n)}]);case"smart":return 27===n;default:throw this.raise(h.PipeTopicRequiresHackPipes,{at:t})}}parseAsyncArrowUnaryFunction(e){this.prodParam.enter(We(!0,this.prodParam.hasYield));const t=[this.parseIdentifier()];return this.prodParam.exit(),this.hasPrecedingLineBreak()&&this.raise(h.LineTerminatorBeforeArrow,{at:this.state.curPosition()}),this.expect(19),this.parseArrowExpression(e,t,!0),e}parseDo(e,t){this.expectPlugin("doExpressions"),t&&this.expectPlugin("asyncDoExpressions"),e.async=t,this.next();const n=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=n,this.finishNode(e,"DoExpression")}parseSuper(){const e=this.startNode();return this.next(),!this.match(10)||this.scope.allowDirectSuper||this.options.allowSuperOutsideMethod?this.scope.allowSuper||this.options.allowSuperOutsideMethod||this.raise(h.UnexpectedSuper,{at:e}):this.raise(h.SuperNotAllowed,{at:e}),this.match(10)||this.match(0)||this.match(16)||this.raise(h.UnsupportedSuper,{at:e}),this.finishNode(e,"Super")}parsePrivateName(){const e=this.startNode(),t=this.startNodeAt(this.state.start+1,new r(this.state.curLine,this.state.start+1-this.state.lineStart,this.state.start+1)),n=this.state.value;return this.next(),e.id=this.createIdentifier(t,n),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(102)?this.expectPlugin("functionSent"):this.hasPlugin("functionSent")||this.unexpected(),this.parseMetaProperty(e,t,"sent")}return this.parseFunction(e)}parseMetaProperty(e,t,n){e.meta=t;const r=this.state.containsEsc;return e.property=this.parseIdentifier(!0),(e.property.name!==n||r)&&this.raise(h.UnsupportedMetaProperty,{at:e.property,target:t.name,onlyValidPropertyName:n}),this.finishNode(e,"MetaProperty")}parseImportMetaProperty(e){const t=this.createIdentifier(this.startNodeAtNode(e),"import");return this.next(),this.isContextual(100)&&(this.inModule||this.raise(h.ImportMetaOutsideModule,{at:t}),this.sawUnambiguousESM=!0),this.parseMetaProperty(e,t,"meta")}parseLiteralAtNode(e,t,n){return this.addExtra(n,"rawValue",e),this.addExtra(n,"raw",this.input.slice(n.start,this.state.end)),n.value=e,this.next(),this.finishNode(n,t)}parseLiteral(e,t){const n=this.startNode();return this.parseLiteralAtNode(e,t,n)}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.parseLiteral(e.value,"RegExpLiteral");return t.pattern=e.pattern,t.flags=e.flags,t}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.start,n=this.state.startLoc;let r;this.next(),this.expressionScope.enter(new Ye(1));const a=this.state.maybeInArrowParameters,i=this.state.inFSharpPipelineDirectBody;this.state.maybeInArrowParameters=!0,this.state.inFSharpPipelineDirectBody=!1;const s=this.state.start,o=this.state.startLoc,l=[],p=new $e;let c,u,d=!0;for(;!this.match(11);){if(d)d=!1;else if(this.expect(12,null===p.optionalParametersLoc?null:p.optionalParametersLoc),this.match(11)){u=this.state.startLoc;break}if(this.match(21)){const e=this.state.start,t=this.state.startLoc;if(c=this.state.startLoc,l.push(this.parseParenItem(this.parseRestBinding(),e,t)),!this.checkCommaAfterRest(41))break}else l.push(this.parseMaybeAssignAllowIn(p,this.parseParenItem))}const f=this.state.lastTokEndLoc;this.expect(11),this.state.maybeInArrowParameters=a,this.state.inFSharpPipelineDirectBody=i;let y=this.startNodeAt(t,n);return e&&this.shouldParseArrow(l)&&(y=this.parseArrow(y))?(this.checkDestructuringPrivate(p),this.expressionScope.validateAsPattern(),this.expressionScope.exit(),this.parseArrowExpression(y,l,!1),y):(this.expressionScope.exit(),l.length||this.unexpected(this.state.lastTokStartLoc),u&&this.unexpected(u),c&&this.unexpected(c),this.checkExpressionErrors(p,!0),this.toReferencedListDeep(l,!0),l.length>1?(r=this.startNodeAt(s,o),r.expressions=l,this.finishNode(r,"SequenceExpression"),this.resetEndLocation(r,f)):r=l[0],this.wrapParenthesis(t,n,r))}wrapParenthesis(e,t,n){if(!this.options.createParenthesizedExpressions)return this.addExtra(n,"parenthesized",!0),this.addExtra(n,"parenStart",e),this.takeSurroundingComments(n,e,this.state.lastTokEndLoc.index),n;const r=this.startNodeAt(e,t);return r.expression=n,this.finishNode(r,"ParenthesizedExpression"),r}shouldParseArrow(e){return!this.canInsertSemicolon()}parseArrow(e){if(this.eat(19))return e}parseParenItem(e,t,n){return e}parseNewOrNewTarget(){const e=this.startNode();if(this.next(),this.match(16)){const t=this.createIdentifier(this.startNodeAtNode(e),"new");this.next();const n=this.parseMetaProperty(e,t,"target");return this.scope.inNonArrowFunction||this.scope.inClass||this.raise(h.UnexpectedNewTarget,{at:n}),n}return this.parseNew(e)}parseNew(e){return e.callee=this.parseNoCallExpr(),"Import"===e.callee.type?this.raise(h.ImportCallNotNewExpression,{at:e.callee}):this.isOptionalChain(e.callee)?this.raise(h.OptionalChainingNoNew,{at:this.state.lastTokEndLoc}):this.eat(18)&&this.raise(h.OptionalChainingNoNew,{at:this.state.startLoc}),this.parseNewArguments(e),this.finishNode(e,"NewExpression")}parseNewArguments(e){if(this.eat(10)){const t=this.parseExprList(11);this.toReferencedList(t),e.arguments=t}else e.arguments=[]}parseTemplateElement(e){const{start:t,startLoc:n,end:r,value:a}=this.state,s=t+1,o=this.startNodeAt(s,i(n,1));null===a&&(e||this.raise(h.InvalidEscapeSequenceTemplate,{at:i(n,2)}));const l=this.match(24),p=l?-1:-2,c=r+p;return o.value={raw:this.input.slice(s,c).replace(/\r\n?/g,"\n"),cooked:null===a?null:a.slice(1,p)},o.tail=l,this.next(),this.finishNode(o,"TemplateElement"),this.resetEndLocation(o,i(this.state.lastTokEndLoc,p)),o}parseTemplate(e){const t=this.startNode();t.expressions=[];let n=this.parseTemplateElement(e);for(t.quasis=[n];!n.tail;)t.expressions.push(this.parseTemplateSubstitution()),this.readTemplateContinuation(),t.quasis.push(n=this.parseTemplateElement(e));return this.finishNode(t,"TemplateLiteral")}parseTemplateSubstitution(){return this.parseExpression()}parseObjectLike(e,t,n,r){n&&this.expectPlugin("recordAndTuple");const a=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!1;const i=Object.create(null);let s=!0;const o=this.startNode();for(o.properties=[],this.next();!this.match(e);){if(s)s=!1;else if(this.expect(12),this.match(e)){this.addTrailingCommaExtraToNode(o);break}let a;t?a=this.parseBindingProperty():(a=this.parsePropertyDefinition(r),this.checkProto(a,n,i,r)),n&&!this.isObjectProperty(a)&&"SpreadElement"!==a.type&&this.raise(h.InvalidRecordProperty,{at:a}),a.shorthand&&this.addExtra(a,"shorthand",!0),o.properties.push(a)}this.next(),this.state.inFSharpPipelineDirectBody=a;let l="ObjectExpression";return t?l="ObjectPattern":n&&(l="RecordExpression"),this.finishNode(o,l)}addTrailingCommaExtraToNode(e){this.addExtra(e,"trailingComma",this.state.lastTokStart),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(h.UnsupportedPropertyDecorator,{at:this.state.startLoc});this.match(26);)t.push(this.parseDecorator());const n=this.startNode();let r,a,i=!1,s=!1;if(this.match(21))return t.length&&this.unexpected(),this.parseSpread();t.length&&(n.decorators=t,t=[]),n.method=!1,e&&(r=this.state.start,a=this.state.startLoc);let o=this.eat(55);this.parsePropertyNamePrefixOperator(n);const l=this.state.containsEsc,p=this.parsePropertyName(n,e);if(!o&&!l&&this.maybeAsyncOrAccessorProp(n)){const e=p.name;"async"!==e||this.hasPrecedingLineBreak()||(i=!0,this.resetPreviousNodeTrailingComments(p),o=this.eat(55),this.parsePropertyName(n)),"get"!==e&&"set"!==e||(s=!0,this.resetPreviousNodeTrailingComments(p),n.kind=e,this.match(55)&&(o=!0,this.raise(h.AccessorIsGenerator,{at:this.state.curPosition(),kind:e}),this.next()),this.parsePropertyName(n))}return this.parseObjPropValue(n,r,a,o,i,!1,s,e),n}getGetterSetterExpectedParamCount(e){return"get"===e.kind?0:1}getObjectOrClassMethodParams(e){return e.params}checkGetterSetterParams(e){var t;const n=this.getGetterSetterExpectedParamCount(e),r=this.getObjectOrClassMethodParams(e);r.length!==n&&this.raise("get"===e.kind?h.BadGetterArity:h.BadSetterArity,{at:e}),"set"===e.kind&&"RestElement"===(null==(t=r[r.length-1])?void 0:t.type)&&this.raise(h.BadSetterRestParameter,{at:e})}parseObjectMethod(e,t,n,r,a){return a?(this.parseMethod(e,t,!1,!1,!1,"ObjectMethod"),this.checkGetterSetterParams(e),e):n||t||this.match(10)?(r&&this.unexpected(),e.kind="method",e.method=!0,this.parseMethod(e,t,n,!1,!1,"ObjectMethod")):void 0}parseObjectProperty(e,t,n,r,a){if(e.shorthand=!1,this.eat(14))return e.value=r?this.parseMaybeDefault(this.state.start,this.state.startLoc):this.parseMaybeAssignAllowIn(a),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,n,He(e.key));else if(this.match(29)){const r=this.state.startLoc;null!=a?null===a.shorthandAssignLoc&&(a.shorthandAssignLoc=r):this.raise(h.InvalidCoverInitializedName,{at:r}),e.value=this.parseMaybeDefault(t,n,He(e.key))}else e.value=He(e.key);return e.shorthand=!0,this.finishNode(e,"ObjectProperty")}}parseObjPropValue(e,t,n,r,a,i,s,o){const l=this.parseObjectMethod(e,r,a,i,s)||this.parseObjectProperty(e,t,n,i,o);return l||this.unexpected(),l}parsePropertyName(e,t){if(this.eat(0))e.computed=!0,e.key=this.parseMaybeAssignAllowIn(),this.expect(3);else{const{type:n,value:r}=this.state;let a;if(Y(n))a=this.parseIdentifier(!0);else switch(n){case 130:a=this.parseNumericLiteral(r);break;case 129:a=this.parseStringLiteral(r);break;case 131:a=this.parseBigIntLiteral(r);break;case 132:a=this.parseDecimalLiteral(r);break;case 134:{const e=this.state.startLoc;null!=t?null===t.privateKeyLoc&&(t.privateKeyLoc=e):this.raise(h.UnexpectedPrivateField,{at:e}),a=this.parsePrivateName();break}default:throw this.unexpected()}e.key=a,134!==n&&(e.computed=!1)}return e.key}initFunction(e,t){e.id=null,e.generator=!1,e.async=!!t}parseMethod(e,t,n,r,a,i,s=!1){this.initFunction(e,n),e.generator=!!t;const o=r;return this.scope.enter(18|(s?64:0)|(a?32:0)),this.prodParam.enter(We(n,e.generator)),this.parseFunctionParams(e,o),this.parseFunctionBodyAndFinish(e,i,!0),this.prodParam.exit(),this.scope.exit(),e}parseArrayLike(e,t,n,r){n&&this.expectPlugin("recordAndTuple");const a=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!1;const i=this.startNode();return this.next(),i.elements=this.parseExprList(e,!n,r,i),this.state.inFSharpPipelineDirectBody=a,this.finishNode(i,n?"TupleExpression":"ArrayExpression")}parseArrowExpression(e,t,n,r){this.scope.enter(6);let a=We(n,!1);!this.match(5)&&this.prodParam.hasIn&&(a|=8),this.prodParam.enter(a),this.initFunction(e,n);const i=this.state.maybeInArrowParameters;return t&&(this.state.maybeInArrowParameters=!0,this.setArrowFunctionParameters(e,t,r)),this.state.maybeInArrowParameters=!1,this.parseFunctionBody(e,!0),this.prodParam.exit(),this.scope.exit(),this.state.maybeInArrowParameters=i,this.finishNode(e,"ArrowFunctionExpression")}setArrowFunctionParameters(e,t,n){this.toAssignableList(t,n,!1),e.params=t}parseFunctionBodyAndFinish(e,t,n=!1){this.parseFunctionBody(e,!1,n),this.finishNode(e,t)}parseFunctionBody(e,t,n=!1){const r=t&&!this.match(5);if(this.expressionScope.enter(Xe()),r)e.body=this.parseMaybeAssign(),this.checkParams(e,!1,t,!1);else{const r=this.state.strict,a=this.state.labels;this.state.labels=[],this.prodParam.enter(4|this.prodParam.currentFlags()),e.body=this.parseBlock(!0,!1,(a=>{const i=!this.isSimpleParamList(e.params);a&&i&&this.raise(h.IllegalLanguageModeDirective,{at:"method"!==e.kind&&"constructor"!==e.kind||!e.key?e:e.key.loc.end});const s=!r&&this.state.strict;this.checkParams(e,!(this.state.strict||t||n||i),t,s),this.state.strict&&e.id&&this.checkIdentifier(e.id,65,s)})),this.prodParam.exit(),this.state.labels=a}this.expressionScope.exit()}isSimpleParameter(e){return"Identifier"===e.type}isSimpleParamList(e){for(let t=0,n=e.length;t10)&&function(e){return fe.has(e)}(e)){if("yield"===e){if(this.prodParam.hasYield)return void this.raise(h.YieldBindingIdentifier,{at:t})}else if("await"===e){if(this.prodParam.hasAwait)return void this.raise(h.AwaitBindingIdentifier,{at:t});if(this.scope.inStaticBlock)return void this.raise(h.AwaitBindingIdentifierInStaticBlock,{at:t});this.expressionScope.recordAsyncArrowParametersError({at:t})}else if("arguments"===e&&this.scope.inClassAndNotInNonArrowFunction)return void this.raise(h.ArgumentsInClass,{at:t});n&&function(e){return se.has(e)}(e)?this.raise(h.UnexpectedKeyword,{at:t,keyword:e}):(this.state.strict?r?de:ce:pe)(e,this.inModule)&&this.raise(h.UnexpectedReservedWord,{at:t,reservedWord:e})}}isAwaitAllowed(){return!!this.prodParam.hasAwait||!(!this.options.allowAwaitOutsideFunction||this.scope.inFunction)}parseAwait(e,t){const n=this.startNodeAt(e,t);return this.expressionScope.recordParameterInitializerError(h.AwaitExpressionFormalParameter,{at:n}),this.eat(55)&&this.raise(h.ObsoleteAwaitStar,{at:n}),this.scope.inFunction||this.options.allowAwaitOutsideFunction||(this.isAmbiguousAwait()?this.ambiguousScriptDifferentAst=!0:this.sawUnambiguousESM=!0),this.state.soloAwait||(n.argument=this.parseMaybeUnary(null,!0)),this.finishNode(n,"AwaitExpression")}isAmbiguousAwait(){if(this.hasPrecedingLineBreak())return!0;const{type:e}=this.state;return 53===e||10===e||0===e||G(e)||133===e||56===e||this.hasPlugin("v8intrinsic")&&54===e}parseYield(){const e=this.startNode();this.expressionScope.recordParameterInitializerError(h.YieldInParameter,{at:e}),this.next();let t=!1,n=null;if(!this.hasPrecedingLineBreak())switch(t=this.eat(55),this.state.type){case 13:case 135:case 8:case 11:case 3:case 9:case 14:case 12:if(!t)break;default:n=this.parseMaybeAssign()}return e.delegate=t,e.argument=n,this.finishNode(e,"YieldExpression")}checkPipelineAtInfixOperator(e,t){this.hasPlugin(["pipelineOperator",{proposal:"smart"}])&&"SequenceExpression"===e.type&&this.raise(h.PipelineHeadSequenceExpression,{at:t})}parseSmartPipelineBodyInStyle(e,t,n){const r=this.startNodeAt(t,n);return this.isSimpleReference(e)?(r.callee=e,this.finishNode(r,"PipelineBareFunction")):(this.checkSmartPipeTopicBodyEarlyErrors(n),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(h.PipelineBodyNoArrow,{at:this.state.startLoc});this.topicReferenceWasUsedInCurrentContext()||this.raise(h.PipelineTopicUnused,{at: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.start,n=this.state.startLoc;this.state.potentialArrowAt=this.state.start;const r=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!0;const a=this.parseExprOp(this.parseMaybeUnaryOrPrivate(),t,n,e);return this.state.inFSharpPipelineDirectBody=r,a}parseModuleExpression(){this.expectPlugin("moduleBlocks");const e=this.startNode();this.next(),this.eat(5);const t=this.initializeScopes(!0);this.enterInitialScopes();const n=this.startNode();try{e.body=this.parseProgram(n,8,"module")}finally{t()}return this.eat(8),this.finishNode(e,"ModuleExpression")}parsePropertyNamePrefixOperator(e){}}const Nt={kind:"loop"},Dt={kind:"switch"},Ct=/[\uD800-\uDFFF]/u,wt=/in(?:stanceof)?/y;class Lt extends It{parseTopLevel(e,t){return e.program=this.parseProgram(t),e.comments=this.state.comments,this.options.tokens&&(e.tokens=function(e,t){for(let n=0;n0)for(const[e,t]of Array.from(this.scope.undefinedExports))this.raise(h.ModuleExportUndefined,{at:t,localName:e});return this.finishNode(e,"Program")}stmtToDirective(e){const t=e;t.type="Directive",t.value=t.expression,delete t.expression;const n=t.value,r=n.value,a=this.input.slice(n.start,n.end),i=n.value=a.slice(1,-1);return this.addExtra(n,"raw",a),this.addExtra(n,"rawValue",i),this.addExtra(n,"expressionValue",r),n.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(e){return!!this.isContextual(99)&&this.isLetKeyword(e)}isLetKeyword(e){const t=this.nextTokenStart(),n=this.codePointAtPos(t);if(92===n||91===n)return!0;if(e)return!1;if(123===n)return!0;if(ae(n)){if(wt.lastIndex=t,wt.test(this.input)){const e=this.codePointAtPos(wt.lastIndex);if(!ie(e)&&92!==e)return!1}return!0}return!1}parseStatement(e,t){return this.match(26)&&this.parseDecorators(!0),this.parseStatementContent(e,t)}parseStatementContent(e,t){let n=this.state.type;const r=this.startNode();let a;switch(this.isLet(e)&&(n=74,a="let"),n){case 60:return this.parseBreakContinueStatement(r,!0);case 63:return this.parseBreakContinueStatement(r,!1);case 64:return this.parseDebuggerStatement(r);case 90:return this.parseDoStatement(r);case 91:return this.parseForStatement(r);case 68:if(46===this.lookaheadCharCode())break;return e&&(this.state.strict?this.raise(h.StrictFunction,{at:this.state.startLoc}):"if"!==e&&"label"!==e&&this.raise(h.SloppyFunction,{at:this.state.startLoc})),this.parseFunctionStatement(r,!1,!e);case 80:return e&&this.unexpected(),this.parseClass(r,!0);case 69:return this.parseIfStatement(r);case 70:return this.parseReturnStatement(r);case 71:return this.parseSwitchStatement(r);case 72:return this.parseThrowStatement(r);case 73:return this.parseTryStatement(r);case 75:case 74:return a=a||this.state.value,e&&"var"!==a&&this.raise(h.UnexpectedLexicalDeclaration,{at:this.state.startLoc}),this.parseVarStatement(r,a);case 92:return this.parseWhileStatement(r);case 76:return this.parseWithStatement(r);case 5:return this.parseBlock();case 13:return this.parseEmptyStatement(r);case 83:{const e=this.lookaheadCharCode();if(40===e||46===e)break}case 82:{let e;return this.options.allowImportExportEverywhere||t||this.raise(h.UnexpectedImportExport,{at:this.state.startLoc}),this.next(),83===n?(e=this.parseImport(r),"ImportDeclaration"!==e.type||e.importKind&&"value"!==e.importKind||(this.sawUnambiguousESM=!0)):(e=this.parseExport(r),("ExportNamedDeclaration"!==e.type||e.exportKind&&"value"!==e.exportKind)&&("ExportAllDeclaration"!==e.type||e.exportKind&&"value"!==e.exportKind)&&"ExportDefaultDeclaration"!==e.type||(this.sawUnambiguousESM=!0)),this.assertModuleNodeAllowed(r),e}default:if(this.isAsyncFunction())return e&&this.raise(h.AsyncFunctionInSingleStatementContext,{at:this.state.startLoc}),this.next(),this.parseFunctionStatement(r,!0,!e)}const i=this.state.value,s=this.parseExpression();return V(n)&&"Identifier"===s.type&&this.eat(14)?this.parseLabeledStatement(r,i,s,e):this.parseExpressionStatement(r,s)}assertModuleNodeAllowed(e){this.options.allowImportExportEverywhere||this.inModule||this.raise(h.ImportOutsideModule,{at:e})}takeDecorators(e){const t=this.state.decoratorStack[this.state.decoratorStack.length-1];t.length&&(e.decorators=t,this.resetStartLocationFromNode(e,t[0]),this.state.decoratorStack[this.state.decoratorStack.length-1]=[])}canHaveLeadingDecorator(){return this.match(80)}parseDecorators(e){const t=this.state.decoratorStack[this.state.decoratorStack.length-1];for(;this.match(26);){const e=this.parseDecorator();t.push(e)}if(this.match(82))e||this.unexpected(),this.hasPlugin("decorators")&&!this.getPluginOption("decorators","decoratorsBeforeExport")&&this.raise(h.DecoratorExportClass,{at:this.state.startLoc});else if(!this.canHaveLeadingDecorator())throw this.raise(h.UnexpectedLeadingDecorator,{at:this.state.startLoc})}parseDecorator(){this.expectOnePlugin(["decorators-legacy","decorators"]);const e=this.startNode();if(this.next(),this.hasPlugin("decorators")){this.state.decoratorStack.push([]);const t=this.state.start,n=this.state.startLoc;let r;if(this.match(10)){const e=this.state.start,t=this.state.startLoc;this.next(),r=this.parseExpression(),this.expect(11),r=this.wrapParenthesis(e,t,r)}else for(r=this.parseIdentifier(!1);this.eat(16);){const e=this.startNodeAt(t,n);e.object=r,e.property=this.parseIdentifier(!0),e.computed=!1,r=this.finishNode(e,"MemberExpression")}e.expression=this.parseMaybeDecoratorArguments(r),this.state.decoratorStack.pop()}else e.expression=this.parseExprSubscripts();return this.finishNode(e,"Decorator")}parseMaybeDecoratorArguments(e){if(this.eat(10)){const t=this.startNodeAtNode(e);return t.callee=e,t.arguments=this.parseCallExpressionArguments(11,!1),this.toReferencedList(t.arguments),this.finishNode(t,"CallExpression")}return e}parseBreakContinueStatement(e,t){return this.next(),this.isLineTerminator()?e.label=null:(e.label=this.parseIdentifier(),this.semicolon()),this.verifyBreakContinue(e,t),this.finishNode(e,t?"BreakStatement":"ContinueStatement")}verifyBreakContinue(e,t){let n;for(n=0;nthis.parseStatement("do"))),this.state.labels.pop(),this.expect(92),e.test=this.parseHeaderExpression(),this.eat(13),this.finishNode(e,"DoWhileStatement")}parseForStatement(e){this.next(),this.state.labels.push(Nt);let t=null;if(this.isAwaitAllowed()&&this.eatContextual(96)&&(t=this.state.lastTokStartLoc),this.scope.enter(0),this.expect(10),this.match(13))return null!==t&&this.unexpected(t),this.parseFor(e,null);const n=this.isContextual(99),r=n&&this.isLetKeyword();if(this.match(74)||this.match(75)||r){const n=this.startNode(),a=r?"let":this.state.value;return this.next(),this.parseVar(n,!0,a),this.finishNode(n,"VariableDeclaration"),(this.match(58)||this.isContextual(101))&&1===n.declarations.length?this.parseForIn(e,n,t):(null!==t&&this.unexpected(t),this.parseFor(e,n))}const a=this.isContextual(95),i=new $e,s=this.parseExpression(!0,i),o=this.isContextual(101);if(o&&(n&&this.raise(h.ForOfLet,{at:s}),null===t&&a&&"Identifier"===s.type&&this.raise(h.ForOfAsync,{at:s})),o||this.match(58)){this.checkDestructuringPrivate(i),this.toAssignable(s,!0);const n=o?"ForOfStatement":"ForInStatement";return this.checkLVal(s,{in:{type:n}}),this.parseForIn(e,s,t)}return this.checkExpressionErrors(i,!0),null!==t&&this.unexpected(t),this.parseFor(e,s)}parseFunctionStatement(e,t,n){return this.next(),this.parseFunction(e,1|(n?0:2),t)}parseIfStatement(e){return this.next(),e.test=this.parseHeaderExpression(),e.consequent=this.parseStatement("if"),e.alternate=this.eat(66)?this.parseStatement("if"):null,this.finishNode(e,"IfStatement")}parseReturnStatement(e){return this.prodParam.hasReturn||this.options.allowReturnOutsideFunction||this.raise(h.IllegalReturn,{at: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 n;this.expect(5),this.state.labels.push(Dt),this.scope.enter(0);for(let e;!this.match(8);)if(this.match(61)||this.match(65)){const r=this.match(61);n&&this.finishNode(n,"SwitchCase"),t.push(n=this.startNode()),n.consequent=[],this.next(),r?n.test=this.parseExpression():(e&&this.raise(h.MultipleDefaultsInSwitch,{at:this.state.lastTokStartLoc}),e=!0,n.test=null),this.expect(14)}else n?n.consequent.push(this.parseStatement(null)):this.unexpected();return this.scope.exit(),n&&this.finishNode(n,"SwitchCase"),this.next(),this.state.labels.pop(),this.finishNode(e,"SwitchStatement")}parseThrowStatement(e){return this.next(),this.hasPrecedingLineBreak()&&this.raise(h.NewlineAfterThrow,{at:this.state.lastTokEndLoc}),e.argument=this.parseExpression(),this.semicolon(),this.finishNode(e,"ThrowStatement")}parseCatchClauseParam(){const e=this.parseBindingAtom(),t="Identifier"===e.type;return this.scope.enter(t?8:0),this.checkLVal(e,{in:{type:"CatchClause"},binding:9,allowingSloppyLetBinding:!0}),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(h.NoCatchOrFinally,{at:e}),this.finishNode(e,"TryStatement")}parseVarStatement(e,t,n=!1){return this.next(),this.parseVar(e,!1,t,n),this.semicolon(),this.finishNode(e,"VariableDeclaration")}parseWhileStatement(e){return this.next(),e.test=this.parseHeaderExpression(),this.state.labels.push(Nt),e.body=this.withSmartMixTopicForbiddingContext((()=>this.parseStatement("while"))),this.state.labels.pop(),this.finishNode(e,"WhileStatement")}parseWithStatement(e){return this.state.strict&&this.raise(h.StrictWith,{at:this.state.startLoc}),this.next(),e.object=this.parseHeaderExpression(),e.body=this.withSmartMixTopicForbiddingContext((()=>this.parseStatement("with"))),this.finishNode(e,"WithStatement")}parseEmptyStatement(e){return this.next(),this.finishNode(e,"EmptyStatement")}parseLabeledStatement(e,t,n,r){for(const e of this.state.labels)e.name===t&&this.raise(h.LabelRedeclaration,{at:n,labelName:t});const a=(i=this.state.type)>=90&&i<=92?"loop":this.match(71)?"switch":null;var i;for(let t=this.state.labels.length-1;t>=0;t--){const n=this.state.labels[t];if(n.statementStart!==e.start)break;n.statementStart=this.state.start,n.kind=a}return this.state.labels.push({name:t,kind:a,statementStart:this.state.start}),e.body=this.parseStatement(r?-1===r.indexOf("label")?r+"label":r:"label"),this.state.labels.pop(),e.label=n,this.finishNode(e,"LabeledStatement")}parseExpressionStatement(e,t){return e.expression=t,this.semicolon(),this.finishNode(e,"ExpressionStatement")}parseBlock(e=!1,t=!0,n){const r=this.startNode();return e&&this.state.strictErrors.clear(),this.expect(5),t&&this.scope.enter(0),this.parseBlockBody(r,e,!1,8,n),t&&this.scope.exit(),this.finishNode(r,"BlockStatement")}isValidDirective(e){return"ExpressionStatement"===e.type&&"StringLiteral"===e.expression.type&&!e.expression.extra.parenthesized}parseBlockBody(e,t,n,r,a){const i=e.body=[],s=e.directives=[];this.parseBlockOrModuleBlockBody(i,t?s:void 0,n,r,a)}parseBlockOrModuleBlockBody(e,t,n,r,a){const i=this.state.strict;let s=!1,o=!1;for(;!this.match(r);){const r=this.parseStatement(null,n);if(t&&!o){if(this.isValidDirective(r)){const e=this.stmtToDirective(r);t.push(e),s||"use strict"!==e.value.value||(s=!0,this.setStrict(!0));continue}o=!0,this.state.strictErrors.clear()}e.push(r)}a&&a.call(this,s),i||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("for"))),this.scope.exit(),this.state.labels.pop(),this.finishNode(e,"ForStatement")}parseForIn(e,t,n){const r=this.match(58);return this.next(),r?null!==n&&this.unexpected(n):e.await=null!==n,"VariableDeclaration"!==t.type||null==t.declarations[0].init||r&&!this.state.strict&&"var"===t.kind&&"Identifier"===t.declarations[0].id.type||this.raise(h.ForInOfLoopInitializer,{at:t,type:r?"ForInStatement":"ForOfStatement"}),"AssignmentPattern"===t.type&&this.raise(h.InvalidLhs,{at:t,ancestor:{type:"ForStatement"}}),e.left=t,e.right=r?this.parseExpression():this.parseMaybeAssignAllowIn(),this.expect(11),e.body=this.withSmartMixTopicForbiddingContext((()=>this.parseStatement("for"))),this.scope.exit(),this.state.labels.pop(),this.finishNode(e,r?"ForInStatement":"ForOfStatement")}parseVar(e,t,n,r=!1){const a=e.declarations=[];for(e.kind=n;;){const e=this.startNode();if(this.parseVarId(e,n),e.init=this.eat(29)?t?this.parseMaybeAssignDisallowIn():this.parseMaybeAssignAllowIn():null,null!==e.init||r||("Identifier"===e.id.type||t&&(this.match(58)||this.isContextual(101))?"const"!==n||this.match(58)||this.isContextual(101)||this.raise(h.DeclarationMissingInitializer,{at:this.state.lastTokEndLoc,kind:"const"}):this.raise(h.DeclarationMissingInitializer,{at:this.state.lastTokEndLoc,kind:"destructuring"})),a.push(this.finishNode(e,"VariableDeclarator")),!this.eat(12))break}return e}parseVarId(e,t){e.id=this.parseBindingAtom(),this.checkLVal(e.id,{in:{type:"VariableDeclarator"},binding:"var"===t?5:9})}parseFunction(e,t=0,n=!1){const r=1&t,a=2&t,i=!(!r||4&t);this.initFunction(e,n),this.match(55)&&a&&this.raise(h.GeneratorInSingleStatementContext,{at:this.state.startLoc}),e.generator=this.eat(55),r&&(e.id=this.parseFunctionId(i));const s=this.state.maybeInArrowParameters;return this.state.maybeInArrowParameters=!1,this.scope.enter(2),this.prodParam.enter(We(n,e.generator)),r||(e.id=this.parseFunctionId()),this.parseFunctionParams(e,!1),this.withSmartMixTopicForbiddingContext((()=>{this.parseFunctionBodyAndFinish(e,r?"FunctionDeclaration":"FunctionExpression")})),this.prodParam.exit(),this.scope.exit(),r&&!a&&this.registerFunctionStatementId(e),this.state.maybeInArrowParameters=s,e}parseFunctionId(e){return e||V(this.state.type)?this.parseIdentifier():null}parseFunctionParams(e,t){this.expect(10),this.expressionScope.enter(new Ve(3)),e.params=this.parseBindingList(11,41,!1,t),this.expressionScope.exit()}registerFunctionStatementId(e){e.id&&this.scope.declareName(e.id.name,this.state.strict||e.generator||e.async?this.scope.treatFunctionsAsVar?5:9:17,e.id.loc.start)}parseClass(e,t,n){this.next(),this.takeDecorators(e);const r=this.state.strict;return this.state.strict=!0,this.parseClassId(e,t,n),this.parseClassSuper(e),e.body=this.parseClassBody(!!e.superClass,r),this.finishNode(e,t?"ClassDeclaration":"ClassExpression")}isClassProperty(){return this.match(29)||this.match(13)||this.match(8)}isClassMethod(){return this.match(10)}isNonstaticConstructor(e){return!(e.computed||e.static||"constructor"!==e.key.name&&"constructor"!==e.key.value)}parseClassBody(e,t){this.classScope.enter();const n={hadConstructor:!1,hadSuperClass:e};let r=[];const a=this.startNode();if(a.body=[],this.expect(5),this.withSmartMixTopicForbiddingContext((()=>{for(;!this.match(8);){if(this.eat(13)){if(r.length>0)throw this.raise(h.DecoratorSemicolon,{at:this.state.lastTokEndLoc});continue}if(this.match(26)){r.push(this.parseDecorator());continue}const e=this.startNode();r.length&&(e.decorators=r,this.resetStartLocationFromNode(e,r[0]),r=[]),this.parseClassMember(a,e,n),"constructor"===e.kind&&e.decorators&&e.decorators.length>0&&this.raise(h.DecoratorConstructor,{at:e})}})),this.state.strict=t,this.next(),r.length)throw this.raise(h.TrailingDecorator,{at:this.state.startLoc});return this.classScope.exit(),this.finishNode(a,"ClassBody")}parseClassMemberFromModifier(e,t){const n=this.parseIdentifier(!0);if(this.isClassMethod()){const r=t;return r.kind="method",r.computed=!1,r.key=n,r.static=!1,this.pushClassMethod(e,r,!1,!1,!1,!1),!0}if(this.isClassProperty()){const r=t;return r.computed=!1,r.key=n,r.static=!1,e.body.push(this.parseClassProperty(r)),!0}return this.resetPreviousNodeTrailingComments(n),!1}parseClassMember(e,t,n){const r=this.isContextual(104);if(r){if(this.parseClassMemberFromModifier(e,t))return;if(this.eat(5))return void this.parseClassStaticBlock(e,t)}this.parseClassMemberWithIsStatic(e,t,n,r)}parseClassMemberWithIsStatic(e,t,n,r){const a=t,i=t,s=t,o=t,l=t,p=a,c=a;if(t.static=r,this.parsePropertyNamePrefixOperator(t),this.eat(55)){p.kind="method";const t=this.match(134);return this.parseClassElementName(p),t?void this.pushClassPrivateMethod(e,i,!0,!1):(this.isNonstaticConstructor(a)&&this.raise(h.ConstructorIsGenerator,{at:a.key}),void this.pushClassMethod(e,a,!0,!1,!1,!1))}const u=V(this.state.type)&&!this.state.containsEsc,d=this.match(134),f=this.parseClassElementName(t),y=this.state.startLoc;if(this.parsePostMemberNameModifiers(c),this.isClassMethod()){if(p.kind="method",d)return void this.pushClassPrivateMethod(e,i,!1,!1);const r=this.isNonstaticConstructor(a);let s=!1;r&&(a.kind="constructor",n.hadConstructor&&!this.hasPlugin("typescript")&&this.raise(h.DuplicateConstructor,{at:f}),r&&this.hasPlugin("typescript")&&t.override&&this.raise(h.OverrideOnConstructor,{at:f}),n.hadConstructor=!0,s=n.hadSuperClass),this.pushClassMethod(e,a,!1,!1,r,s)}else if(this.isClassProperty())d?this.pushClassPrivateProperty(e,o):this.pushClassProperty(e,s);else if(u&&"async"===f.name&&!this.isLineTerminator()){this.resetPreviousNodeTrailingComments(f);const t=this.eat(55);c.optional&&this.unexpected(y),p.kind="method";const n=this.match(134);this.parseClassElementName(p),this.parsePostMemberNameModifiers(c),n?this.pushClassPrivateMethod(e,i,t,!0):(this.isNonstaticConstructor(a)&&this.raise(h.ConstructorIsAsync,{at:a.key}),this.pushClassMethod(e,a,t,!0,!1,!1))}else if(!u||"get"!==f.name&&"set"!==f.name||this.match(55)&&this.isLineTerminator())if(u&&"accessor"===f.name&&!this.isLineTerminator()){this.expectPlugin("decoratorAutoAccessors"),this.resetPreviousNodeTrailingComments(f);const t=this.match(134);this.parseClassElementName(s),this.pushClassAccessorProperty(e,l,t)}else this.isLineTerminator()?d?this.pushClassPrivateProperty(e,o):this.pushClassProperty(e,s):this.unexpected();else{this.resetPreviousNodeTrailingComments(f),p.kind=f.name;const t=this.match(134);this.parseClassElementName(a),t?this.pushClassPrivateMethod(e,i,!1,!1):(this.isNonstaticConstructor(a)&&this.raise(h.ConstructorIsAccessor,{at:a.key}),this.pushClassMethod(e,a,!1,!1,!1,!1)),this.checkGetterSetterParams(a)}}parseClassElementName(e){const{type:t,value:n}=this.state;if(128!==t&&129!==t||!e.static||"prototype"!==n||this.raise(h.StaticPrototype,{at:this.state.startLoc}),134===t){"constructor"===n&&this.raise(h.ConstructorClassPrivateField,{at:this.state.startLoc});const t=this.parsePrivateName();return e.key=t,t}return this.parsePropertyName(e)}parseClassStaticBlock(e,t){var n;this.scope.enter(208);const r=this.state.labels;this.state.labels=[],this.prodParam.enter(0);const a=t.body=[];this.parseBlockOrModuleBlockBody(a,void 0,!1,8),this.prodParam.exit(),this.scope.exit(),this.state.labels=r,e.body.push(this.finishNode(t,"StaticBlock")),null!=(n=t.decorators)&&n.length&&this.raise(h.DecoratorStaticBlock,{at:t})}pushClassProperty(e,t){t.computed||"constructor"!==t.key.name&&"constructor"!==t.key.value||this.raise(h.ConstructorClassField,{at:t.key}),e.body.push(this.parseClassProperty(t))}pushClassPrivateProperty(e,t){const n=this.parseClassPrivateProperty(t);e.body.push(n),this.classScope.declarePrivateName(this.getPrivateNameSV(n.key),0,n.key.loc.start)}pushClassAccessorProperty(e,t,n){if(!n&&!t.computed){const e=t.key;"constructor"!==e.name&&"constructor"!==e.value||this.raise(h.ConstructorClassField,{at:e})}const r=this.parseClassAccessorProperty(t);e.body.push(r),n&&this.classScope.declarePrivateName(this.getPrivateNameSV(r.key),0,r.key.loc.start)}pushClassMethod(e,t,n,r,a,i){e.body.push(this.parseMethod(t,n,r,a,i,"ClassMethod",!0))}pushClassPrivateMethod(e,t,n,r){const a=this.parseMethod(t,n,r,!1,!1,"ClassPrivateMethod",!0);e.body.push(a);const i="get"===a.kind?a.static?6:2:"set"===a.kind?a.static?5:1:0;this.declareClassPrivateMethodInScope(a,i)}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(Xe()),this.prodParam.enter(0),e.value=this.eat(29)?this.parseMaybeAssignAllowIn():null,this.expressionScope.exit(),this.prodParam.exit(),this.scope.exit()}parseClassId(e,t,n,r=139){if(V(this.state.type))e.id=this.parseIdentifier(),t&&this.declareNameFromIdentifier(e.id,r);else{if(!n&&t)throw this.raise(h.MissingClassName,{at:this.state.startLoc});e.id=null}}parseClassSuper(e){e.superClass=this.eat(81)?this.parseExprSubscripts():null}parseExport(e){const t=this.maybeParseExportDefaultSpecifier(e),n=!t||this.eat(12),r=n&&this.eatExportStar(e),a=r&&this.maybeParseExportNamespaceSpecifier(e),i=n&&(!a||this.eat(12)),s=t||r;if(r&&!a)return t&&this.unexpected(),this.parseExportFrom(e,!0),this.finishNode(e,"ExportAllDeclaration");const o=this.maybeParseExportNamedSpecifiers(e);if(t&&n&&!r&&!o||a&&i&&!o)throw this.unexpected(null,5);let l;if(s||o?(l=!1,this.parseExportFrom(e,s)):l=this.maybeParseExportDeclaration(e),s||o||l)return this.checkExport(e,!0,!1,!!e.source),this.finishNode(e,"ExportNamedDeclaration");if(this.eat(65))return e.declaration=this.parseExportDefaultExpression(),this.checkExport(e,!0,!0),this.finishNode(e,"ExportDefaultDeclaration");throw this.unexpected(null,5)}eatExportStar(e){return this.eat(55)}maybeParseExportDefaultSpecifier(e){if(this.isExportDefaultSpecifier()){this.expectPlugin("exportDefaultFrom");const t=this.startNode();return t.exported=this.parseIdentifier(!0),e.specifiers=[this.finishNode(t,"ExportDefaultSpecifier")],!0}return!1}maybeParseExportNamespaceSpecifier(e){if(this.isContextual(93)){e.specifiers||(e.specifiers=[]);const t=this.startNodeAt(this.state.lastTokStart,this.state.lastTokStartLoc);return this.next(),t.exported=this.parseModuleExportName(),e.specifiers.push(this.finishNode(t,"ExportNamespaceSpecifier")),!0}return!1}maybeParseExportNamedSpecifiers(e){if(this.match(5)){e.specifiers||(e.specifiers=[]);const t="type"===e.exportKind;return e.specifiers.push(...this.parseExportSpecifiers(t)),e.source=null,e.declaration=null,this.hasPlugin("importAssertions")&&(e.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.nextTokenStart();return!Ee.test(this.input.slice(this.state.pos,e))&&this.isUnparsedContextual(e,"function")}parseExportDefaultExpression(){const e=this.startNode(),t=this.isAsyncFunction();if(this.match(68)||t)return this.next(),t&&this.next(),this.parseFunction(e,5,t);if(this.match(80))return this.parseClass(e,!0,!0);if(this.match(26))return this.hasPlugin("decorators")&&this.getPluginOption("decorators","decoratorsBeforeExport")&&this.raise(h.DecoratorBeforeExport,{at:this.state.startLoc}),this.parseDecorators(!1),this.parseClass(e,!0,!0);if(this.match(75)||this.match(74)||this.isLet())throw this.raise(h.UnsupportedDefaultExport,{at:this.state.startLoc});const n=this.parseMaybeAssignAllowIn();return this.semicolon(),n}parseExportDeclaration(e){return this.parseStatement(null)}isExportDefaultSpecifier(){const{type:e}=this.state;if(V(e)){if(95===e&&!this.state.containsEsc||99===e)return!1;if((126===e||125===e)&&!this.state.containsEsc){const{type:e}=this.lookahead();if(V(e)&&97!==e||5===e)return this.expectOnePlugin(["flow","typescript"]),!1}}else if(!this.match(65))return!1;const t=this.nextTokenStart(),n=this.isUnparsedContextual(t,"from");if(44===this.input.charCodeAt(t)||V(this.state.type)&&n)return!0;if(this.match(65)&&n){const e=this.input.charCodeAt(this.nextTokenStartSince(t+4));return 34===e||39===e}return!1}parseExportFrom(e,t){if(this.eatContextual(97)){e.source=this.parseImportSource(),this.checkExport(e);const t=this.maybeParseImportAssertions();t&&(e.assertions=t)}else t&&this.unexpected();this.semicolon()}shouldParseExportDeclaration(){const{type:e}=this.state;if(26===e&&(this.expectOnePlugin(["decorators","decorators-legacy"]),this.hasPlugin("decorators"))){if(this.getPluginOption("decorators","decoratorsBeforeExport"))throw this.raise(h.DecoratorBeforeExport,{at:this.state.startLoc});return!0}return 74===e||75===e||68===e||80===e||this.isLet()||this.isAsyncFunction()}checkExport(e,t,n,r){if(t)if(n){if(this.checkDuplicateExports(e,"default"),this.hasPlugin("exportDefaultFrom")){var a;const t=e.declaration;"Identifier"!==t.type||"from"!==t.name||t.end-t.start!=4||null!=(a=t.extra)&&a.parenthesized||this.raise(h.ExportDefaultFromAsIdentifier,{at:t})}}else if(e.specifiers&&e.specifiers.length)for(const t of e.specifiers){const{exported:e}=t,n="Identifier"===e.type?e.name:e.value;if(this.checkDuplicateExports(t,n),!r&&t.local){const{local:e}=t;"Identifier"!==e.type?this.raise(h.ExportBindingIsString,{at:t,localName:e.value,exportName:n}):(this.checkReservedWord(e.name,e.loc.start,!0,!1),this.scope.checkLocalExport(e))}}else if(e.declaration)if("FunctionDeclaration"===e.declaration.type||"ClassDeclaration"===e.declaration.type){const t=e.declaration.id;if(!t)throw new Error("Assertion failure");this.checkDuplicateExports(e,t.name)}else if("VariableDeclaration"===e.declaration.type)for(const t of e.declaration.declarations)this.checkDeclaration(t.id);if(this.state.decoratorStack[this.state.decoratorStack.length-1].length)throw this.raise(h.UnsupportedDecoratorExport,{at:e})}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(h.DuplicateDefaultExport,{at:e}):this.raise(h.DuplicateExport,{at:e,exportName:t})),this.exportedIdentifiers.add(t)}parseExportSpecifiers(e){const t=[];let n=!0;for(this.expect(5);!this.eat(8);){if(n)n=!1;else if(this.expect(12),this.eat(8))break;const r=this.isContextual(126),a=this.match(129),i=this.startNode();i.local=this.parseModuleExportName(),t.push(this.parseExportSpecifier(i,a,e,r))}return t}parseExportSpecifier(e,t,n,r){return this.eatContextual(93)?e.exported=this.parseModuleExportName():t?e.exported=function(e){const{type:t,start:n,end:r,loc:a,range:i,extra:s}=e;if("Placeholder"===t)return function(e){return He(e)}(e);const o=Object.create(ze);return o.type=t,o.start=n,o.end=r,o.loc=a,o.range=i,void 0!==e.raw?o.raw=e.raw:o.extra=s,o.value=e.value,o}(e.local):e.exported||(e.exported=He(e.local)),this.finishNode(e,"ExportSpecifier")}parseModuleExportName(){if(this.match(129)){const e=this.parseStringLiteral(this.state.value),t=e.value.match(Ct);return t&&this.raise(h.ModuleExportNameHasLoneSurrogate,{at:e,surrogateCharCode:t[0].charCodeAt(0)}),e}return this.parseIdentifier(!0)}parseImport(e){if(e.specifiers=[],!this.match(129)){const t=!this.maybeParseDefaultImportSpecifier(e)||this.eat(12),n=t&&this.maybeParseStarImportSpecifier(e);t&&!n&&this.parseNamedImportSpecifiers(e),this.expectContextual(97)}e.source=this.parseImportSource();const t=this.maybeParseImportAssertions();if(t)e.assertions=t;else{const t=this.maybeParseModuleAttributes();t&&(e.attributes=t)}return this.semicolon(),this.finishNode(e,"ImportDeclaration")}parseImportSource(){return this.match(129)||this.unexpected(),this.parseExprAtom()}shouldParseDefaultImport(e){return V(this.state.type)}parseImportSpecifierLocal(e,t,n){t.local=this.parseIdentifier(),e.specifiers.push(this.finishImportSpecifier(t,n))}finishImportSpecifier(e,t){return this.checkLVal(e.local,{in:e,binding:9}),this.finishNode(e,t)}parseAssertEntries(){const e=[],t=new Set;do{if(this.match(8))break;const n=this.startNode(),r=this.state.value;if(t.has(r)&&this.raise(h.ModuleAttributesWithDuplicateKeys,{at:this.state.startLoc,key:r}),t.add(r),this.match(129)?n.key=this.parseStringLiteral(r):n.key=this.parseIdentifier(!0),this.expect(14),!this.match(129))throw this.raise(h.ModuleAttributeInvalidValue,{at:this.state.startLoc});n.value=this.parseStringLiteral(this.state.value),this.finishNode(n,"ImportAttribute"),e.push(n)}while(this.eat(12));return e}maybeParseModuleAttributes(){if(!this.match(76)||this.hasPrecedingLineBreak())return this.hasPlugin("moduleAttributes")?[]:null;this.expectPlugin("moduleAttributes"),this.next();const e=[],t=new Set;do{const n=this.startNode();if(n.key=this.parseIdentifier(!0),"type"!==n.key.name&&this.raise(h.ModuleAttributeDifferentFromType,{at:n.key}),t.has(n.key.name)&&this.raise(h.ModuleAttributesWithDuplicateKeys,{at:n.key,key:n.key.name}),t.add(n.key.name),this.expect(14),!this.match(129))throw this.raise(h.ModuleAttributeInvalidValue,{at:this.state.startLoc});n.value=this.parseStringLiteral(this.state.value),this.finishNode(n,"ImportAttribute"),e.push(n)}while(this.eat(12));return e}maybeParseImportAssertions(){if(!this.isContextual(94)||this.hasPrecedingLineBreak())return this.hasPlugin("importAssertions")?[]:null;this.expectPlugin("importAssertions"),this.next(),this.eat(5);const e=this.parseAssertEntries();return this.eat(8),e}maybeParseDefaultImportSpecifier(e){return!!this.shouldParseDefaultImport(e)&&(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(h.DestructureNamedImport,{at:this.state.startLoc});if(this.expect(12),this.eat(8))break}const n=this.startNode(),r=this.match(129),a=this.isContextual(126);n.imported=this.parseModuleExportName();const i=this.parseImportSpecifier(n,r,"type"===e.importKind||"typeof"===e.importKind,a);e.specifiers.push(i)}}parseImportSpecifier(e,t,n,r){if(this.eatContextual(93))e.local=this.parseIdentifier();else{const{imported:n}=e;if(t)throw this.raise(h.ImportBindingIsString,{at:e,importName:n.value});this.checkReservedWord(n.name,e.loc.start,!0,!0),e.local||(e.local=He(n))}return this.finishImportSpecifier(e,"ImportSpecifier")}isThisParam(e){return"Identifier"===e.type&&"this"===e.name}}class jt extends Lt{constructor(e,t){super(e=function(e){const t={};for(const n of Object.keys(At))t[n]=e&&null!=e[n]?e[n]:At[n];return t}(e),t),this.options=e,this.initializeScopes(),this.plugins=function(e){const t=new Map;for(const n of e){const[e,r]=Array.isArray(n)?n:[n,{}];t.has(e)||t.set(e,r||{})}return t}(this.options.plugins),this.filename=e.sourceFilename}getScopeHandler(){return ke}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}}const _t=function(e){const t={};for(const n of Object.keys(e))t[n]=z(e[n]);return t}(K);function Mt(e,t){let n=jt;return null!=e&&e.plugins&&(function(e){if(Tt(e,"decorators")){if(Tt(e,"decorators-legacy"))throw new Error("Cannot use the decorators and decorators-legacy plugin together");const t=St(e,"decorators","decoratorsBeforeExport");if(null==t)throw new Error("The 'decorators' plugin requires a 'decoratorsBeforeExport' option, whose value must be a boolean. If you are migrating from Babylon/Babel 6 or want to use the old decorators proposal, you should use the 'decorators-legacy' plugin instead of 'decorators'.");if("boolean"!=typeof t)throw new Error("'decoratorsBeforeExport' must be a boolean.")}if(Tt(e,"flow")&&Tt(e,"typescript"))throw new Error("Cannot combine flow and typescript plugins.");if(Tt(e,"placeholders")&&Tt(e,"v8intrinsic"))throw new Error("Cannot combine placeholders and v8intrinsic plugins.");if(Tt(e,"pipelineOperator")){const t=St(e,"pipelineOperator","proposal");if(!bt.includes(t)){const e=bt.map((e=>`"${e}"`)).join(", ");throw new Error(`"pipelineOperator" requires "proposal" option whose value must be one of: ${e}.`)}const n=Tt(e,["recordAndTuple",{syntaxType:"hash"}]);if("hack"===t){if(Tt(e,"placeholders"))throw new Error("Cannot combine placeholders plugin and Hack-style pipes.");if(Tt(e,"v8intrinsic"))throw new Error("Cannot combine v8intrinsic plugin and Hack-style pipes.");const t=St(e,"pipelineOperator","topicToken");if(!Et.includes(t)){const e=Et.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 `["recordAndtuple", { syntaxType: "hash"}]`.')}else if("smart"===t&&n)throw new Error('Plugin conflict between `["pipelineOperator", { proposal: "smart" }]` and `["recordAndtuple", { syntaxType: "hash"}]`.')}if(Tt(e,"moduleAttributes")){if(Tt(e,"importAssertions"))throw new Error("Cannot combine importAssertions and moduleAttributes plugins.");if("may-2020"!==St(e,"moduleAttributes","version"))throw new Error("The 'moduleAttributes' plugin requires a 'version' option, representing the last proposal update. Currently, the only supported value is 'may-2020'.")}if(Tt(e,"recordAndTuple")&&!Pt.includes(St(e,"recordAndTuple","syntaxType")))throw new Error("'recordAndTuple' requires 'syntaxType' option whose value should be one of: "+Pt.map((e=>`'${e}'`)).join(", "));if(Tt(e,"asyncDoExpressions")&&!Tt(e,"doExpressions")){const e=new Error("'asyncDoExpressions' requires 'doExpressions', please add 'doExpressions' to parser plugins.");throw e.missingPlugins="doExpressions",e}}(e.plugins),n=function(e){const t=gt.filter((t=>Tt(e,t))),n=t.join("/");let r=kt[n];if(!r){r=jt;for(const e of t)r=xt[e](r);kt[n]=r}return r}(e.plugins)),new n(e,t)}const kt={};t.parse=function(e,t){var n;if("unambiguous"!==(null==(n=t)?void 0:n.sourceType))return Mt(t,e).parse();t=Object.assign({},t);try{t.sourceType="module";const n=Mt(t,e),r=n.parse();if(n.sawUnambiguousESM)return r;if(n.ambiguousScriptDifferentAst)try{return t.sourceType="script",Mt(t,e).parse()}catch(e){}else r.program.sourceType="script";return r}catch(n){try{return t.sourceType="script",Mt(t,e).parse()}catch(e){}throw n}},t.parseExpression=function(e,t){const n=Mt(t,e);return n.options.strictMode&&(n.state.strict=!0),n.getExpression()},t.tokTypes=_t},732:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.clear=function(){a(),i()},t.clearPath=a,t.clearScope=i,t.scope=t.path=void 0;let n=new WeakMap;t.path=n;let r=new WeakMap;function a(){t.path=n=new WeakMap}function i(){t.scope=r=new WeakMap}t.scope=r},66617:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(72969),a=n(38218);const{VISITOR_KEYS:i}=a;t.default=class{constructor(e,t,n,r){this.queue=null,this.priorityQueue=null,this.parentPath=r,this.scope=e,this.state=n,this.opts=t}shouldVisit(e){const t=this.opts;if(t.enter||t.exit)return!0;if(t[e.type])return!0;const n=i[e.type];if(null==n||!n.length)return!1;for(const t of n)if(e[t])return!0;return!1}create(e,t,n,a){return r.default.get({parentPath:this.parentPath,parent:e,container:t,key:n,listKey:a})}maybeQueue(e,t){this.queue&&(t?this.queue.push(e):this.priorityQueue.push(e))}visitMultiple(e,t,n){if(0===e.length)return!1;const r=[];for(let a=0;a{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0,t.default=class{getCode(){}getScope(){}addHelper(){throw new Error("Helpers are not supported by the default hub.")}buildError(e,t,n=TypeError){return new n(t)}}},49838:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"Hub",{enumerable:!0,get:function(){return p.default}}),Object.defineProperty(t,"NodePath",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(t,"Scope",{enumerable:!0,get:function(){return l.default}}),t.visitors=t.default=void 0;var r=n(41169);t.visitors=r;var a=n(38218),i=n(732),s=n(46033),o=n(72969),l=n(82570),p=n(2180);const{VISITOR_KEYS:c,removeProperties:u,traverseFast:d}=a;function f(e,t={},n,a,i){if(e){if(!t.noScope&&!n&&"Program"!==e.type&&"File"!==e.type)throw new Error(`You must pass a scope and parentPath unless traversing a Program/File. Instead of that you tried to traverse a ${e.type} node without passing scope and parentPath.`);c[e.type]&&(r.explode(t),(0,s.traverseNode)(e,t,n,a,i))}}var y=f;function m(e,t){e.node.type===t.type&&(t.has=!0,e.stop())}t.default=y,f.visitors=r,f.verify=r.verify,f.explode=r.explode,f.cheap=function(e,t){return d(e,t)},f.node=function(e,t,n,r,a,i){(0,s.traverseNode)(e,t,n,r,a,i)},f.clearNode=function(e,t){u(e,t),i.path.delete(e)},f.removeProperties=function(e,t){return d(e,f.clearNode,t),e},f.hasType=function(e,t,n){if(null!=n&&n.includes(e.type))return!1;if(e.type===t)return!0;const r={has:!1,type:t};return f(e,{noScope:!0,denylist:n,enter:m},null,r),r.has},f.cache=i},26576:(e,t,n)=>{"use strict";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 n,r,a=1/0;const i=e.map((e=>{const t=[];do{t.unshift(e)}while((e=e.parentPath)&&e!==this);return t.lengthi.indexOf(n.parentKey))&&(r=n):r=n}return r}))},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 n of e)if(t.node.type===n)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 r=n(38218);n(72969);const{VISITOR_KEYS:a}=r},91483:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.addComment=function(e,t,n){a(this.node,e,t,n)},t.addComments=function(e,t){i(this.node,e,t)},t.shareCommentsWithSiblings=function(){if("string"==typeof this.key)return;const e=this.node;if(!e)return;const t=e.trailingComments,n=e.leadingComments;if(!t&&!n)return;const r=this.getSibling(this.key-1),a=this.getSibling(this.key+1),i=Boolean(r.node),s=Boolean(a.node);i&&!s?r.addComments("trailing",t):s&&!i&&a.addComments("leading",n)};var r=n(38218);const{addComment:a,addComments:i}=r},72523:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t._call=function(e){if(!e)return!1;for(const t of e){if(!t)continue;const e=this.node;if(!e)return!0;const n=t.call(this.state,this,this.state);if(n&&"object"==typeof n&&"function"==typeof n.then)throw new Error("You appear to be using a plugin with an async traversal visitor, 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.");if(n)throw new Error(`Unexpected return value from visitor method ${t}`);if(this.node!==e)return!0;if(this._traverseFlags>0)return!0}return!1},t._getQueueContexts=function(){let e=this,t=this.contexts;for(;!t.length&&(e=e.parentPath,e);)t=e.contexts;return t},t._resyncKey=function(){if(this.container&&this.node!==this.container[this.key]){if(Array.isArray(this.container)){for(let e=0;e-1},t.popContext=function(){this.contexts.pop(),this.contexts.length>0?this.setContext(this.contexts[this.contexts.length-1]):this.setContext(void 0)},t.pushContext=function(e){this.contexts.push(e),this.setContext(e)},t.requeue=function(e=this){if(e.removed)return;const t=this.contexts;for(const n of t)n.maybeQueue(e)},t.resync=function(){this.removed||(this._resyncParent(),this._resyncList(),this._resyncKey())},t.setContext=function(e){return null!=this.skipKeys&&(this.skipKeys={}),this._traverseFlags=0,e&&(this.context=e,this.state=e.state,this.opts=e.opts),this.setScope(),this},t.setKey=function(e){var t;this.key=e,this.node=this.container[this.key],this.type=null==(t=this.node)?void 0:t.type},t.setScope=function(){if(this.opts&&this.opts.noScope)return;let e,t=this.parentPath;for("key"===this.key&&t.isMethod()&&(t=t.parentPath);t&&!e;){if(t.opts&&t.opts.noScope)return;e=t.scope,t=t.parentPath}this.scope=this.getScope(e),this.scope&&this.scope.init()},t.setup=function(e,t,n,r){this.listKey=n,this.container=t,this.parentPath=e||this.parentPath,this.setKey(r)},t.skip=function(){this.shouldSkip=!0},t.skipKey=function(e){null==this.skipKeys&&(this.skipKeys={}),this.skipKeys[e]=!0},t.stop=function(){this._traverseFlags|=a.SHOULD_SKIP|a.SHOULD_STOP},t.visit=function(){if(!this.node)return!1;if(this.isDenylisted())return!1;if(this.opts.shouldSkip&&this.opts.shouldSkip(this))return!1;const e=this.context;return this.shouldSkip||this.call("enter")?(this.debug("Skip..."),this.shouldStop):(i(this,e),this.debug("Recursing into..."),this.shouldStop=(0,r.traverseNode)(this.node,this.opts,this.scope,this.state,this,this.skipKeys),i(this,e),this.call("exit"),this.shouldStop)};var r=n(46033),a=n(72969);function i(e,t){e.context!==t&&(e.context=t,e.state=t.state,e.opts=t.opts)}},64249:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.arrowFunctionToExpression=function({allowInsertArrow:e=!0,specCompliant:t=!1,noNewArrows:n=!t}={}){if(!this.isArrowFunctionExpression())throw this.buildCodeFrameError("Cannot convert non-arrow function to a function expression.");const{thisBinding:r,fnPath:a}=j(this,n,e);if(a.ensureBlock(),a.node.type="FunctionExpression",!n){const e=r?null:a.scope.generateUidIdentifier("arrowCheckId");e&&a.parentPath.scope.push({id:e,init:x([])}),a.get("body").unshiftContainer("body",f(u(this.hub.addHelper("newArrowCheck"),[D(),y(e?e.name:r)]))),a.replaceWith(u(b((0,i.default)(this,!0)||a.node,y("bind")),[e?y(e.name):D()]))}},t.arrowFunctionToShadowed=function(){this.isArrowFunctionExpression()&&this.arrowFunctionToExpression()},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 n=[];let r,a,i="body";e.isStatement()?(a="body",r=0,n.push(e.node)):(i+=".body.0",this.isFunction()?(r="argument",n.push(A(e.node))):(r="expression",n.push(f(e.node)))),this.node.body=c(n);const s=this.get(i);return e.setup(s,a?s.node[a]:s.node,a,r),this.node},t.toComputedKey=function(){let e;if(this.isMemberExpression())e=this.node.property;else{if(!this.isProperty()&&!this.isMethod())throw new ReferenceError("todo");e=this.node.key}return this.node.computed||m(e)&&(e=I(e.name)),e},t.unwrapFunctionEnvironment=function(){if(!this.isArrowFunctionExpression()&&!this.isFunctionExpression()&&!this.isFunctionDeclaration())throw this.buildCodeFrameError("Can only unwrap the environment of a function.");j(this)};var r=n(38218),a=n(34705),i=n(22023),s=n(41169);const{arrowFunctionExpression:o,assignmentExpression:l,binaryExpression:p,blockStatement:c,callExpression:u,conditionalExpression:d,expressionStatement:f,identifier:y,isIdentifier:m,jsxIdentifier:h,logicalExpression:T,LOGICAL_OPERATORS:S,memberExpression:b,metaProperty:E,numericLiteral:P,objectExpression:x,restElement:g,returnStatement:A,sequenceExpression:v,spreadElement:O,stringLiteral:I,super:N,thisExpression:D,toExpression:C,unaryExpression:w}=r,L=(0,s.merge)([{CallExpression(e,{allSuperCalls:t}){e.get("callee").isSuper()&&t.push(e)}},a.default]);function j(e,t=!0,n=!0){let r,a=e.findParent((e=>e.isArrowFunctionExpression()?(null!=r||(r=e),!1):e.isFunction()||e.isProgram()||e.isClassProperty({static:!1})||e.isClassPrivateProperty({static:!1})));const i=a.isClassMethod({kind:"constructor"});if(a.isClassProperty()||a.isClassPrivateProperty())if(r)a=r;else{if(!n)throw e.buildCodeFrameError("Unable to transform arrow inside class property");e.replaceWith(u(o([],C(e.node)),[])),a=e.get("callee"),e=a.get("body")}const{thisPaths:s,argumentsPaths:c,newTargetPaths:f,superProps:m,superCalls:x}=function(e){const t=[],n=[],r=[],a=[],i=[];return e.traverse(B,{thisPaths:t,argumentsPaths:n,newTargetPaths:r,superProps:a,superCalls:i}),{thisPaths:t,argumentsPaths:n,newTargetPaths:r,superProps:a,superCalls:i}}(e);if(i&&x.length>0){if(!n)throw x[0].buildCodeFrameError("Unable to handle nested super() usage in arrow");const e=[];a.traverse(L,{allSuperCalls:e});const t=function(e){return k(e,"supercall",(()=>{const t=e.scope.generateUidIdentifier("args");return o([g(t)],u(N(),[O(y(t.name))]))}))}(a);e.forEach((e=>{const n=y(t);n.loc=e.node.callee.loc,e.get("callee").replaceWith(n)}))}if(c.length>0){const e=k(a,"arguments",(()=>{const e=()=>y("arguments");return a.scope.path.isProgram()?d(p("===",w("typeof",e()),I("undefined")),a.scope.buildUndefinedNode(),e()):e()}));c.forEach((t=>{const n=y(e);n.loc=t.node.loc,t.replaceWith(n)}))}if(f.length>0){const e=k(a,"newtarget",(()=>E(y("new"),y("target"))));f.forEach((t=>{const n=y(e);n.loc=t.node.loc,t.replaceWith(n)}))}if(m.length>0){if(!n)throw m[0].buildCodeFrameError("Unable to handle nested super.prop usage");m.reduce(((e,t)=>e.concat(function(e){if(e.parentPath.isAssignmentExpression()&&"="!==e.parentPath.node.operator){const n=e.parentPath,r=n.node.operator.slice(0,-1),a=n.node.right,i=function(e){return S.includes(e)}(r);if(e.node.computed){const s=e.scope.generateDeclaredUidIdentifier("tmp"),o=e.node.object,p=e.node.property;n.get("left").replaceWith(b(o,l("=",s,p),!0)),n.get("right").replaceWith(t(i?"=":r,b(o,y(s.name),!0),a))}else{const s=e.node.object,o=e.node.property;n.get("left").replaceWith(b(s,o)),n.get("right").replaceWith(t(i?"=":r,b(s,y(o.name)),a))}return i?n.replaceWith(T(r,n.node.left,n.node.right)):n.node.operator="=",[n.get("left"),n.get("right").get("left")]}if(e.parentPath.isUpdateExpression()){const t=e.parentPath,n=e.scope.generateDeclaredUidIdentifier("tmp"),r=e.node.computed?e.scope.generateDeclaredUidIdentifier("prop"):null,a=[l("=",n,b(e.node.object,r?l("=",r,e.node.property):e.node.property,e.node.computed)),l("=",b(e.node.object,r?y(r.name):e.node.property,e.node.computed),p(e.parentPath.node.operator[0],y(n.name),P(1)))];return e.parentPath.node.prefix||a.push(y(n.name)),t.replaceWith(v(a)),[t.get("expressions.0.right"),t.get("expressions.1.left")]}return[e];function t(e,t,n){return"="===e?l("=",t,n):p(e,t,n)}}(t))),[]).forEach((e=>{const t=e.node.computed?"":e.get("property").node.name,n=e.parentPath.isAssignmentExpression({left:e.node}),r=e.parentPath.isCallExpression({callee:e.node}),i=function(e,t,n){return k(e,`superprop_${t?"set":"get"}:${n||""}`,(()=>{const r=[];let a;if(n)a=b(N(),y(n));else{const t=e.scope.generateUidIdentifier("prop");r.unshift(t),a=b(N(),y(t.name),!0)}if(t){const t=e.scope.generateUidIdentifier("value");r.push(t),a=l("=",a,y(t.name))}return o(r,a)}))}(a,n,t),p=[];if(e.node.computed&&p.push(e.get("property").node),n){const t=e.parentPath.node.right;p.push(t)}const c=u(y(i),p);r?(e.parentPath.unshiftContainer("arguments",D()),e.replaceWith(b(c,y("call"))),s.push(e.parentPath.get("arguments.0"))):n?e.parentPath.replaceWith(c):e.replaceWith(c)}))}let A;return(s.length>0||!t)&&(A=function(e,t){return k(e,"this",(n=>{if(!t||!_(e))return D();e.traverse(M,{supers:new WeakSet,thisBinding:n})}))}(a,i),(t||i&&_(a))&&(s.forEach((e=>{const t=e.isJSX()?h(A):y(A);t.loc=e.node.loc,e.replaceWith(t)})),t||(A=null))),{thisBinding:A,fnPath:e}}function _(e){return e.isClassMethod()&&!!e.parentPath.parentPath.node.superClass}const M=(0,s.merge)([{CallExpression(e,{supers:t,thisBinding:n}){e.get("callee").isSuper()&&(t.has(e.node)||(t.add(e.node),e.replaceWithMultiple([e.node,l("=",y(n),y("this"))])))}},a.default]);function k(e,t,n){const r="binding:"+t;let a=e.getData(r);if(!a){const i=e.scope.generateUidIdentifier(t);a=i.name,e.setData(r,a),e.scope.push({id:i,init:n(a)})}return a}const B=(0,s.merge)([{ThisExpression(e,{thisPaths:t}){t.push(e)},JSXIdentifier(e,{thisPaths:t}){"this"===e.node.name&&(e.parentPath.isJSXMemberExpression({object:e.node})||e.parentPath.isJSXOpeningElement({name:e.node}))&&t.push(e)},CallExpression(e,{superCalls:t}){e.get("callee").isSuper()&&t.push(e)},MemberExpression(e,{superProps:t}){e.get("object").isSuper()&&t.push(e)},Identifier(e,{argumentsPaths:t}){if(!e.isReferencedIdentifier({name:"arguments"}))return;let n=e.scope;do{if(n.hasOwnBinding("arguments"))return void n.rename("arguments");if(n.path.isFunction()&&!n.path.isArrowFunctionExpression())break}while(n=n.parent);t.push(e)},MetaProperty(e,{newTargetPaths:t}){e.get("meta").isIdentifier({name:"new"})&&e.get("property").isIdentifier({name:"target"})&&t.push(e)}},a.default])},63456:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.evaluate=function(){const e={confident:!0,deoptPath:null,seen:new Map};let t=i(this,e);return e.confident||(t=void 0),{confident:e.confident,deopt:e.deoptPath,value:t}},t.evaluateTruthy=function(){const e=this.evaluate();if(e.confident)return!!e.value};const n=["String","Number","Math"],r=["random"];function a(e,t){t.confident&&(t.deoptPath=e,t.confident=!1)}function i(e,t){const{node:o}=e,{seen:l}=t;if(l.has(o)){const n=l.get(o);return n.resolved?n.value:void a(e,t)}{const p={resolved:!1};l.set(o,p);const c=function(e,t){if(t.confident){if(e.isSequenceExpression()){const n=e.get("expressions");return i(n[n.length-1],t)}if(e.isStringLiteral()||e.isNumericLiteral()||e.isBooleanLiteral())return e.node.value;if(e.isNullLiteral())return null;if(e.isTemplateLiteral())return s(e,e.node.quasis,t);if(e.isTaggedTemplateExpression()&&e.get("tag").isMemberExpression()){const n=e.get("tag.object"),{node:{name:r}}=n,a=e.get("tag.property");if(n.isIdentifier()&&"String"===r&&!e.scope.getBinding(r)&&a.isIdentifier()&&"raw"===a.node.name)return s(e,e.node.quasi.quasis,t,!0)}if(e.isConditionalExpression()){const n=i(e.get("test"),t);if(!t.confident)return;return i(n?e.get("consequent"):e.get("alternate"),t)}if(e.isExpressionWrapper())return i(e.get("expression"),t);if(e.isMemberExpression()&&!e.parentPath.isCallExpression({callee:e.node})){const t=e.get("property"),n=e.get("object");if(n.isLiteral()&&t.isIdentifier()){const e=n.node.value,r=typeof e;if("number"===r||"string"===r)return e[t.node.name]}}if(e.isReferencedIdentifier()){const n=e.scope.getBinding(e.node.name);if(n&&n.constantViolations.length>0)return a(n.path,t);if(n&&e.node.start":return n>r;case"<=":return n<=r;case">=":return n>=r;case"==":return n==r;case"!=":return n!=r;case"===":return n===r;case"!==":return n!==r;case"|":return n|r;case"&":return n&r;case"^":return n^r;case"<<":return n<>":return n>>r;case">>>":return n>>>r}}if(e.isCallExpression()){const a=e.get("callee");let s,o;if(a.isIdentifier()&&!e.scope.getBinding(a.node.name)&&n.indexOf(a.node.name)>=0&&(o=global[a.node.name]),a.isMemberExpression()){const e=a.get("object"),t=a.get("property");if(e.isIdentifier()&&t.isIdentifier()&&n.indexOf(e.node.name)>=0&&r.indexOf(t.node.name)<0&&(s=global[e.node.name],o=s[t.node.name]),e.isLiteral()&&t.isIdentifier()){const n=typeof e.node.value;"string"!==n&&"number"!==n||(s=e.node.value,o=s[t.node.name])}}if(o){const n=e.get("arguments").map((e=>i(e,t)));if(!t.confident)return;return o.apply(s,n)}}a(e,t)}}(e,t);return t.confident&&(p.resolved=!0,p.value=c),c}}function s(e,t,n,r=!1){let a="",s=0;const o=e.get("expressions");for(const e of t){if(!n.confident)break;a+=r?e.value.raw:e.value.cooked;const t=o[s++];t&&(a+=String(i(t,n)))}if(n.confident)return a}},39463:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t._getKey=function(e,t){const n=this.node,a=n[e];return Array.isArray(a)?a.map(((i,s)=>r.default.get({listKey:e,parentPath:this,parent:n,container:a,key:s}).setContext(t))):r.default.get({parentPath:this,parent:n,container:n,key:e}).setContext(t)},t._getPattern=function(e,t){let n=this;for(const r of e)n="."===r?n.parentPath:Array.isArray(n)?n[r]:n.get(r,t);return n},t.get=function(e,t=!0){!0===t&&(t=this.context);const n=e.split(".");return 1===n.length?this._getKey(e,t):this._getPattern(n,t)},t.getAllNextSiblings=function(){let e=this.key,t=this.getSibling(++e);const n=[];for(;t.node;)n.push(t),t=this.getSibling(++e);return n},t.getAllPrevSiblings=function(){let e=this.key,t=this.getSibling(--e);const n=[];for(;t.node;)n.push(t),t=this.getSibling(--e);return n},t.getBindingIdentifierPaths=function(e=!1,t=!1){const n=[this],r=Object.create(null);for(;n.length;){const a=n.shift();if(!a)continue;if(!a.node)continue;const s=i.keys[a.node.type];if(a.isIdentifier())e?(r[a.node.name]=r[a.node.name]||[]).push(a):r[a.node.name]=a;else if(a.isExportDeclaration()){const e=a.get("declaration");o(e)&&n.push(e)}else{if(t){if(a.isFunctionDeclaration()){n.push(a.get("id"));continue}if(a.isFunctionExpression())continue}if(s)for(let e=0;ee.path))},t.getNextSibling=function(){return this.getSibling(this.key+1)},t.getOpposite=function(){return"left"===this.key?this.getSibling("right"):"right"===this.key?this.getSibling("left"):null},t.getOuterBindingIdentifierPaths=function(e){return this.getBindingIdentifierPaths(e,!0)},t.getOuterBindingIdentifiers=function(e){return s(this.node,e)},t.getPrevSibling=function(){return this.getSibling(this.key-1)},t.getSibling=function(e){return r.default.get({parentPath:this.parentPath,parent:this.parent,container:this.container,listKey:this.listKey,key:e}).setContext(this.context)};var r=n(72969),a=n(38218);const{getBindingIdentifiers:i,getOuterBindingIdentifiers:s,isDeclaration:o,numericLiteral:l,unaryExpression:p}=a,c=0,u=1;function d(e,t,n){return e&&t.push(...h(e,n)),t}function f(e){e.forEach((e=>{e.type=u}))}function y(e,t){e.forEach((e=>{e.path.isBreakStatement({label:null})&&(t?e.path.replaceWith(p("void",l(0))):e.path.remove())}))}function m(e,t){const n=[];if(t.canHaveBreak){let r=[];for(let a=0;a0&&o.every((e=>e.type===u))){r.length>0&&o.every((e=>e.path.isBreakStatement({label:null})))?(f(r),n.push(...r),r.some((e=>e.path.isDeclaration()))&&(n.push(...o),y(o,!0)),y(o,!1)):(n.push(...o),t.shouldPopulateBreak||y(o,!0));break}if(a===e.length-1)n.push(...o);else{r=[];for(let e=0;e=0;r--){const a=h(e[r],t);if(a.length>1||1===a.length&&!a[0].path.isVariableDeclaration()){n.push(...a);break}}return n}function h(e,t){let n=[];if(e.isIfStatement())n=d(e.get("consequent"),n,t),n=d(e.get("alternate"),n,t);else{if(e.isDoExpression()||e.isFor()||e.isWhile()||e.isLabeledStatement())return d(e.get("body"),n,t);if(e.isProgram()||e.isBlockStatement())return m(e.get("body"),t);if(e.isFunction())return h(e.get("body"),t);if(e.isTryStatement())n=d(e.get("block"),n,t),n=d(e.get("handler"),n,t);else{if(e.isCatchClause())return d(e.get("body"),n,t);if(e.isSwitchStatement())return function(e,t,n){let r=[];for(let a=0;a{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.SHOULD_STOP=t.SHOULD_SKIP=t.REMOVED=void 0;var r=n(24387),a=n(15158),i=n(49838),s=n(82570),o=n(38218),l=o,p=n(732),c=n(27848),u=n(26576),d=n(10863),f=n(30023),y=n(63456),m=n(64249),h=n(77743),T=n(72523),S=n(92052),b=n(68129),E=n(39463),P=n(91483);const{validate:x}=o,g=a("babel");t.REMOVED=1,t.SHOULD_STOP=2,t.SHOULD_SKIP=4;class A{constructor(e,t){this.contexts=[],this.state=null,this.opts=null,this._traverseFlags=0,this.skipKeys=null,this.parentPath=null,this.container=null,this.listKey=null,this.key=null,this.node=null,this.type=null,this.parent=t,this.hub=e,this.data=null,this.context=null,this.scope=null}static get({hub:e,parentPath:t,parent:n,container:r,listKey:a,key:i}){if(!e&&t&&(e=t.hub),!n)throw new Error("To get a node path the parent needs to exist");const s=r[i];let o=p.path.get(n);o||(o=new Map,p.path.set(n,o));let l=o.get(s);return l||(l=new A(e,n),s&&o.set(s,l)),l.setup(t,r,a,i),l}getScope(e){return this.isScope()?new s.default(this):e}setData(e,t){return null==this.data&&(this.data=Object.create(null)),this.data[e]=t}getData(e,t){null==this.data&&(this.data=Object.create(null));let n=this.data[e];return void 0===n&&void 0!==t&&(n=this.data[e]=t),n}hasNode(){return null!=this.node}buildCodeFrameError(e,t=SyntaxError){return this.hub.buildError(this.node,e,t)}traverse(e,t){(0,i.default)(this.node,e,this.scope,t,this)}set(e,t){x(this.node,e,t),this.node[e]=t}getPathLocation(){const e=[];let t=this;do{let n=t.key;t.inList&&(n=`${t.listKey}[${n}]`),e.unshift(n)}while(t=t.parentPath);return e.join(".")}debug(e){g.enabled&&g(`${this.getPathLocation()} ${this.type}: ${e}`)}toString(){return(0,c.default)(this.node).code}get inList(){return!!this.listKey}set inList(e){e||(this.listKey=null)}get parentKey(){return this.listKey||this.key}get shouldSkip(){return!!(4&this._traverseFlags)}set shouldSkip(e){e?this._traverseFlags|=4:this._traverseFlags&=-5}get shouldStop(){return!!(2&this._traverseFlags)}set shouldStop(e){e?this._traverseFlags|=2:this._traverseFlags&=-3}get removed(){return!!(1&this._traverseFlags)}set removed(e){e?this._traverseFlags|=1:this._traverseFlags&=-2}}Object.assign(A.prototype,u,d,f,y,m,h,T,S,b,E,P);for(const e of l.TYPES){const t=`is${e}`,n=l[t];A.prototype[t]=function(e){return n(this.node,e)},A.prototype[`assert${e}`]=function(t){if(!n(this.node,t))throw new TypeError(`Expected node path of type ${e}`)}}for(const e of Object.keys(r)){if("_"===e[0])continue;l.TYPES.indexOf(e)<0&&l.TYPES.push(e);const t=r[e];A.prototype[`is${e}`]=function(e){return t.checkPath(this,e)}}var v=A;t.default=v},10863:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t._getTypeAnnotation=function(){const e=this.node;if(e){if(e.typeAnnotation)return e.typeAnnotation;if(!E.has(e)){E.add(e);try{var t;let n=r[e.type];if(n)return n.call(this,e);if(n=r[this.parentPath.type],null!=(t=n)&&t.validParent)return this.parentPath.getTypeAnnotation()}finally{E.delete(e)}}}else if("init"===this.key&&this.parentPath.isVariableDeclarator()){const e=this.parentPath.parentPath,t=e.parentPath;return"left"===e.key&&t.isForInStatement()?S():"left"===e.key&&t.isForOfStatement()?i():b()}},t.baseTypeStrictlyMatches=function(e){const t=this.getTypeAnnotation(),n=e.getTypeAnnotation();return!(s(t)||!p(t))&&n.type===t.type},t.couldBeBaseType=function(e){const t=this.getTypeAnnotation();if(s(t))return!0;if(h(t)){for(const n of t.types)if(s(n)||P(e,n,!0))return!0;return!1}return P(e,t,!0)},t.getTypeAnnotation=function(){if(this.typeAnnotation)return this.typeAnnotation;let e=this._getTypeAnnotation()||i();return m(e)&&(e=e.typeAnnotation),this.typeAnnotation=e},t.isBaseType=function(e,t){return P(e,this.getTypeAnnotation(),t)},t.isGenericType=function(e){const t=this.getTypeAnnotation();return c(t)&&u(t.id,{name:e})};var r=n(75081),a=n(38218);const{anyTypeAnnotation:i,isAnyTypeAnnotation:s,isBooleanTypeAnnotation:o,isEmptyTypeAnnotation:l,isFlowBaseAnnotation:p,isGenericTypeAnnotation:c,isIdentifier:u,isMixedTypeAnnotation:d,isNumberTypeAnnotation:f,isStringTypeAnnotation:y,isTypeAnnotation:m,isUnionTypeAnnotation:h,isVoidTypeAnnotation:T,stringTypeAnnotation:S,voidTypeAnnotation:b}=a,E=new WeakSet;function P(e,t,n){if("string"===e)return y(t);if("number"===e)return f(t);if("boolean"===e)return o(t);if("any"===e)return s(t);if("mixed"===e)return d(t);if("empty"===e)return l(t);if("void"===e)return T(t);if(n)return!1;throw new Error(`Unknown base type ${e}`)}},31674:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){if(!this.isReferenced())return;const t=this.scope.getBinding(e.name);return t?t.identifier.typeAnnotation?t.identifier.typeAnnotation:function(e,t,n){const r=[],a=[];let o=d(e,t,a);const c=y(e,t,n);if(c){const t=d(e,c.ifStatement);o=o.filter((e=>t.indexOf(e)<0)),r.push(c.typeAnnotation)}if(o.length){o.push(...a);for(const e of o)r.push(e.getTypeAnnotation())}if(r.length)return p(r[0])&&s?s(r):i?i(r):l(r)}(t,this,e.name):"undefined"===e.name?u():"NaN"===e.name||"Infinity"===e.name?c():void e.name};var r=n(38218);const{BOOLEAN_NUMBER_BINARY_OPERATORS:a,createFlowUnionType:i,createTSUnionType:s,createTypeAnnotationBasedOnTypeof:o,createUnionTypeAnnotation:l,isTSTypeAnnotation:p,numberTypeAnnotation:c,voidTypeAnnotation:u}=r;function d(e,t,n){const r=e.constantViolations.slice();return r.unshift(e.path),r.filter((e=>{const r=(e=e.resolve())._guessExecutionStatusRelativeTo(t);return n&&"unknown"===r&&n.push(e),"before"===r}))}function f(e,t){const n=t.node.operator,r=t.get("right").resolve(),i=t.get("left").resolve();let s,l,p;if(i.isIdentifier({name:e})?s=r:r.isIdentifier({name:e})&&(s=i),s)return"==="===n?s.getTypeAnnotation():a.indexOf(n)>=0?c():void 0;if("==="!==n&&"=="!==n)return;if(i.isUnaryExpression({operator:"typeof"})?(l=i,p=r):r.isUnaryExpression({operator:"typeof"})&&(l=r,p=i),!l)return;if(!l.get("argument").isIdentifier({name:e}))return;if(p=p.resolve(),!p.isLiteral())return;const u=p.node.value;return"string"==typeof u?o(u):void 0}function y(e,t,n){const r=function(e,t,n){let r;for(;r=t.parentPath;){if(r.isIfStatement()||r.isConditionalExpression()){if("test"===t.key)return;return r}if(r.isFunction()&&r.parentPath.scope.getBinding(n)!==e)return;t=r}}(e,t,n);if(!r)return;const a=[r.get("test")],o=[];for(let e=0;e{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ArrayExpression=I,t.AssignmentExpression=function(){return this.get("right").getTypeAnnotation()},t.BinaryExpression=function(e){const t=e.operator;if(o.indexOf(t)>=0)return P();if(i.indexOf(t)>=0)return d();if("+"===t){const e=this.get("right"),t=this.get("left");return t.isBaseType("number")&&e.isBaseType("number")?P():t.isBaseType("string")||e.isBaseType("string")?x():A([x(),P()])}},t.BooleanLiteral=function(){return d()},t.CallExpression=function(){const{callee:e}=this.node;return C(e)?u(x()):D(e)||w(e)?u(c()):L(e)?u(g([x(),c()])):j(this.get("callee"))},t.ConditionalExpression=function(){const e=[this.get("consequent").getTypeAnnotation(),this.get("alternate").getTypeAnnotation()];return b(e[0])&&m?m(e):y?y(e):h(e)},t.ClassDeclaration=t.ClassExpression=t.FunctionDeclaration=t.ArrowFunctionExpression=t.FunctionExpression=function(){return T(S("Function"))},Object.defineProperty(t,"Identifier",{enumerable:!0,get:function(){return a.default}}),t.LogicalExpression=function(){const e=[this.get("left").getTypeAnnotation(),this.get("right").getTypeAnnotation()];return b(e[0])&&m?m(e):y?y(e):h(e)},t.NewExpression=function(e){if(this.get("callee").isIdentifier())return T(e.callee)},t.NullLiteral=function(){return E()},t.NumericLiteral=function(){return P()},t.ObjectExpression=function(){return T(S("Object"))},t.ParenthesizedExpression=function(){return this.get("expression").getTypeAnnotation()},t.RegExpLiteral=function(){return T(S("RegExp"))},t.RestElement=N,t.SequenceExpression=function(){return this.get("expressions").pop().getTypeAnnotation()},t.StringLiteral=function(){return x()},t.TaggedTemplateExpression=function(){return j(this.get("tag"))},t.TemplateLiteral=function(){return x()},t.TypeCastExpression=O,t.UnaryExpression=function(e){const t=e.operator;return"void"===t?v():l.indexOf(t)>=0?P():p.indexOf(t)>=0?x():s.indexOf(t)>=0?d():void 0},t.UpdateExpression=function(e){const t=e.operator;if("++"===t||"--"===t)return P()},t.VariableDeclarator=function(){var e;if(!this.get("id").isIdentifier())return;const t=this.get("init");let n=t.getTypeAnnotation();return"AnyTypeAnnotation"===(null==(e=n)?void 0:e.type)&&t.isCallExpression()&&t.get("callee").isIdentifier({name:"Array"})&&!t.scope.hasBinding("Array",!0)&&(n=I()),n};var r=n(38218),a=n(31674);const{BOOLEAN_BINARY_OPERATORS:i,BOOLEAN_UNARY_OPERATORS:s,NUMBER_BINARY_OPERATORS:o,NUMBER_UNARY_OPERATORS:l,STRING_UNARY_OPERATORS:p,anyTypeAnnotation:c,arrayTypeAnnotation:u,booleanTypeAnnotation:d,buildMatchMemberExpression:f,createFlowUnionType:y,createTSUnionType:m,createUnionTypeAnnotation:h,genericTypeAnnotation:T,identifier:S,isTSTypeAnnotation:b,nullLiteralTypeAnnotation:E,numberTypeAnnotation:P,stringTypeAnnotation:x,tupleTypeAnnotation:g,unionTypeAnnotation:A,voidTypeAnnotation:v}=r;function O(e){return e.typeAnnotation}function I(){return T(S("Array"))}function N(){return I()}O.validParent=!0,N.validParent=!0;const D=f("Array.from"),C=f("Object.keys"),w=f("Object.values"),L=f("Object.entries");function j(e){if((e=e.resolve()).isFunction()){if(e.is("async"))return e.is("generator")?T(S("AsyncIterator")):T(S("Promise"));if(e.node.returnType)return e.node.returnType}}},77743:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t._guessExecutionStatusRelativeTo=function(e){const t={this:m(this),target:m(e)};if(t.target.node!==t.this.node)return this._guessExecutionStatusRelativeToDifferentFunctions(t.target);const n={target:e.getAncestry(),this:this.getAncestry()};if(n.target.indexOf(this)>=0)return"after";if(n.this.indexOf(e)>=0)return"before";let r;const a={target:0,this:0};for(;!r&&a.this=0?r=e:a.this++}if(!r)throw new Error("Internal Babel error - The two compared nodes don't appear to belong to the same program.");if(T(n.this,a.this-1)||T(n.target,a.target-1))return"unknown";const s={this:n.this[a.this-1],target:n.target[a.target-1]};if(s.target.listKey&&s.this.listKey&&s.target.container===s.this.container)return s.target.key>s.this.key?"before":"after";const o=i[r.type],l=o.indexOf(s.this.parentKey);return o.indexOf(s.target.parentKey)>l?"before":"after"},t._guessExecutionStatusRelativeToDifferentFunctions=function(e){if(!e.isFunctionDeclaration()||e.parentPath.isExportDeclaration())return"unknown";const t=e.scope.getBinding(e.node.id.name);if(!t.references)return"before";const n=t.referencePaths;let r;for(const t of n){if(t.find((t=>t.node===e.node)))continue;if("callee"!==t.key||!t.parentPath.isCallExpression())return"unknown";if(S.has(t.node))continue;S.add(t.node);const n=this._guessExecutionStatusRelativeTo(t);if(S.delete(t.node),r&&r!==n)return"unknown";r=n}return r},t._resolve=function(e,t){if(!(t&&t.indexOf(this)>=0))if((t=t||[]).push(this),this.isVariableDeclarator()){if(this.get("id").isIdentifier())return this.get("init").resolve(e,t)}else if(this.isReferencedIdentifier()){const n=this.scope.getBinding(this.node.name);if(!n)return;if(!n.constant)return;if("module"===n.kind)return;if(n.path!==this){const r=n.path.resolve(e,t);if(this.find((e=>e.node===r.node)))return;return r}}else{if(this.isTypeCastExpression())return this.get("expression").resolve(e,t);if(e&&this.isMemberExpression()){const n=this.toComputedKey();if(!p(n))return;const r=n.value,a=this.get("object").resolve(e,t);if(a.isObjectExpression()){const n=a.get("properties");for(const a of n){if(!a.isProperty())continue;const n=a.get("key");let i=a.isnt("computed")&&n.isIdentifier({name:r});if(i=i||n.isLiteral({value:r}),i)return a.get("value").resolve(e,t)}}else if(a.isArrayExpression()&&!isNaN(+r)){const n=a.get("elements")[r];if(n)return n.resolve(e,t)}}}},t.canHaveVariableDeclarationOrExpression=function(){return("init"===this.key||"left"===this.key)&&this.parentPath.isFor()},t.canSwapBetweenExpressionAndStatement=function(e){return!("body"!==this.key||!this.parentPath.isArrowFunctionExpression())&&(this.isExpression()?s(e):!!this.isBlockStatement()&&o(e))},t.equals=function(e,t){return this.node[e]===t},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.has=f,t.is=void 0,t.isCompletionRecord=function(e){let t=this,n=!0;do{const r=t.container;if(t.isFunction()&&!n)return!!e;if(n=!1,Array.isArray(r)&&t.key!==r.length-1)return!1}while((t=t.parentPath)&&!t.isProgram());return!0},t.isConstantExpression=function(){if(this.isIdentifier()){const e=this.scope.getBinding(this.node.name);return!!e&&e.constant}return this.isLiteral()?!this.isRegExpLiteral()&&(!this.isTemplateLiteral()||this.get("expressions").every((e=>e.isConstantExpression()))):this.isUnaryExpression()?"void"===this.node.operator&&this.get("argument").isConstantExpression():!!this.isBinaryExpression()&&(this.get("left").isConstantExpression()&&this.get("right").isConstantExpression())},t.isInStrictMode=function(){return!!(this.isProgram()?this:this.parentPath).find((e=>{if(e.isProgram({sourceType:"module"}))return!0;if(e.isClass())return!0;if(!e.isProgram()&&!e.isFunction())return!1;if(e.isArrowFunctionExpression()&&!e.get("body").isBlockStatement())return!1;const t=e.isFunction()?e.node.body:e.node;for(const e of t.directives)if("use strict"===e.value.value)return!0}))},t.isNodeType=function(e){return u(this.type,e)},t.isStatementOrBlock=function(){return!this.parentPath.isLabeledStatement()&&!s(this.container)&&a.includes(this.key)},t.isStatic=function(){return this.scope.isStatic(this.node)},t.isnt=function(e){return!this.has(e)},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?c(this.node.property,{value:t}):this.node.property.name===t)){const t=this.get("object");return t.isReferencedIdentifier()&&t.referencesImport(e,"*")}return!1}const n=this.scope.getBinding(this.node.name);if(!n||"module"!==n.kind)return!1;const r=n.path,a=r.parentPath;return!!a.isImportDeclaration()&&(a.node.source.value===e&&(!t||(!(!r.isImportDefaultSpecifier()||"default"!==t)||(!(!r.isImportNamespaceSpecifier()||"*"!==t)||!(!r.isImportSpecifier()||!l(r.node.imported,{name:t}))))))},t.resolve=function(e,t){return this._resolve(e,t)||this},t.willIMaybeExecuteBefore=function(e){return"after"!==this._guessExecutionStatusRelativeTo(e)};var r=n(38218);const{STATEMENT_OR_BLOCK_KEYS:a,VISITOR_KEYS:i,isBlockStatement:s,isExpression:o,isIdentifier:l,isLiteral:p,isStringLiteral:c,isType:u,matchesPattern:d}=r;function f(e){const t=this.node&&this.node[e];return t&&Array.isArray(t)?!!t.length:!!t}const y=f;function m(e){return(e.scope.getFunctionParent()||e.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 T(e,t){for(let n=0;n{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(38218),a=r;const{react:i}=r,{cloneNode:s,jsxExpressionContainer:o,variableDeclaration:l,variableDeclarator:p}=a,c={ReferencedIdentifier(e,t){if(e.isJSXIdentifier()&&i.isCompatTag(e.node.name)&&!e.parentPath.isJSXMemberExpression())return;if("this"===e.node.name){let n=e.scope;do{if(n.path.isFunction()&&!n.path.isArrowFunctionExpression())break}while(n=n.parent);n&&t.breakOnScopePaths.push(n.path)}const n=e.scope.getBinding(e.node.name);if(n){for(const r of n.constantViolations)if(r.scope!==n.path.scope)return t.mutableBinding=!0,void e.stop();n===t.scope.getBinding(e.node.name)&&(t.bindings[e.node.name]=n)}}};t.default=class{constructor(e,t){this.breakOnScopePaths=void 0,this.bindings=void 0,this.mutableBinding=void 0,this.scopes=void 0,this.scope=void 0,this.path=void 0,this.attachAfter=void 0,this.breakOnScopePaths=[],this.bindings={},this.mutableBinding=!1,this.scopes=[],this.scope=t,this.path=e,this.attachAfter=!1}isCompatibleScope(e){for(const t of Object.keys(this.bindings)){const n=this.bindings[t];if(!e.bindingIdentifierEquals(t,n.identifier))return!1}return!0}getCompatibleScopes(){let e=this.path.scope;do{if(!this.isCompatibleScope(e))break;if(this.scopes.push(e),this.breakOnScopePaths.indexOf(e.path)>=0)break}while(e=e.parent)}getAttachmentPath(){let e=this._getAttachmentPath();if(!e)return;let t=e.scope;if(t.path===e&&(t=e.scope.parent),t.path.isProgram()||t.path.isFunction())for(const n of Object.keys(this.bindings)){if(!t.hasOwnBinding(n))continue;const r=this.bindings[n];if("param"!==r.kind&&"params"!==r.path.parentKey&&this.getAttachmentParentForPath(r.path).key>=e.key){this.attachAfter=!0,e=r.path;for(const t of r.constantViolations)this.getAttachmentParentForPath(t).key>e.key&&(e=t)}}return e}_getAttachmentPath(){const e=this.scopes.pop();if(e)if(e.path.isFunction()){if(!this.hasOwnParamBindings(e))return this.getNextScopeAttachmentParent();{if(this.scope===e)return;const t=e.path.get("body").get("body");for(let e=0;e{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.hooks=void 0,t.hooks=[function(e,t){if("test"===e.key&&(t.isWhile()||t.isSwitchCase())||"declaration"===e.key&&t.isExportDeclaration()||"body"===e.key&&t.isLabeledStatement()||"declarations"===e.listKey&&t.isVariableDeclaration()&&1===t.node.declarations.length||"expression"===e.key&&t.isExpressionStatement())return t.remove(),!0},function(e,t){if(t.isSequenceExpression()&&1===t.node.expressions.length)return t.replaceWith(t.node.expressions[0]),!0},function(e,t){if(t.isBinary())return"left"===e.key?t.replaceWith(t.node.right):t.replaceWith(t.node.left),!0},function(e,t){if(t.isIfStatement()&&("consequent"===e.key||"alternate"===e.key)||"body"===e.key&&(t.isLoop()||t.isArrowFunctionExpression()))return e.replaceWith({type:"BlockStatement",body:[]}),!0}]},24387:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Var=t.User=t.Statement=t.SpreadProperty=t.Scope=t.RestProperty=t.ReferencedMemberExpression=t.ReferencedIdentifier=t.Referenced=t.Pure=t.NumericLiteralTypeAnnotation=t.Generated=t.ForAwaitStatement=t.Flow=t.Expression=t.ExistentialTypeParam=t.BlockScoped=t.BindingIdentifier=void 0;var r=n(38218);const{isBinding:a,isBlockScoped:i,isExportDeclaration:s,isExpression:o,isFlow:l,isForStatement:p,isForXStatement:c,isIdentifier:u,isImportDeclaration:d,isImportSpecifier:f,isJSXIdentifier:y,isJSXMemberExpression:m,isMemberExpression:h,isReferenced:T,isScope:S,isStatement:b,isVar:E,isVariableDeclaration:P,react:x}=r,{isCompatTag:g}=x,A={types:["Identifier","JSXIdentifier"],checkPath(e,t){const{node:n,parent:r}=e;if(!u(n,t)&&!m(r,t)){if(!y(n,t))return!1;if(g(n.name))return!1}return T(n,r,e.parentPath.parent)}};t.ReferencedIdentifier=A;const v={types:["MemberExpression"],checkPath:({node:e,parent:t})=>h(e)&&T(e,t)};t.ReferencedMemberExpression=v;const O={types:["Identifier"],checkPath(e){const{node:t,parent:n}=e,r=e.parentPath.parent;return u(t)&&a(t,n,r)}};t.BindingIdentifier=O;const I={types:["Statement"],checkPath({node:e,parent:t}){if(b(e)){if(P(e)){if(c(t,{left:e}))return!1;if(p(t,{init:e}))return!1}return!0}return!1}};t.Statement=I;const N={types:["Expression"],checkPath:e=>e.isIdentifier()?e.isReferencedIdentifier():o(e.node)};t.Expression=N;const D={types:["Scopable","Pattern"],checkPath:e=>S(e.node,e.parent)};t.Scope=D;const C={checkPath:e=>T(e.node,e.parent)};t.Referenced=C;const w={checkPath:e=>i(e.node)};t.BlockScoped=w;const L={types:["VariableDeclaration"],checkPath:e=>E(e.node)};t.Var=L;t.User={checkPath:e=>e.node&&!!e.node.loc};t.Generated={checkPath:e=>!e.isUser()};t.Pure={checkPath:(e,t)=>e.scope.isPure(e.node,t)};const j={types:["Flow","ImportDeclaration","ExportDeclaration","ImportSpecifier"],checkPath:({node:e})=>!(!l(e)&&(d(e)?"type"!==e.importKind&&"typeof"!==e.importKind:s(e)?"type"!==e.exportKind:!f(e)||"type"!==e.importKind&&"typeof"!==e.importKind))};t.Flow=j;t.RestProperty={types:["RestElement"],checkPath:e=>e.parentPath&&e.parentPath.isObjectPattern()};t.SpreadProperty={types:["RestElement"],checkPath:e=>e.parentPath&&e.parentPath.isObjectExpression()},t.ExistentialTypeParam={types:["ExistsTypeAnnotation"]},t.NumericLiteralTypeAnnotation={types:["NumberLiteralTypeAnnotation"]};t.ForAwaitStatement={types:["ForOfStatement"],checkPath:({node:e})=>!0===e.await}},68129:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t._containerInsert=function(e,t){this.updateSiblingKeys(e,t.length);const n=[];this.container.splice(e,0,...t);for(let r=0;rh(e)?f(e):e)));if(this.isNodeType("Expression")&&!this.isJSXElement()&&!n.isJSXElement()||n.isForStatement()&&"init"===this.key){if(this.node){const e=this.node;let{scope:r}=this;if(r.path.isPattern())return l(e),this.replaceWith(u(o([],e),[])),this.get("callee.body").insertAfter(t),[this];if(x(this))t.unshift(e);else if(m(e)&&b(e.callee))t.unshift(e),t.push(E());else if(function(e,t){if(!y(e)||!T(e.left))return!1;const n=t.getBlockParent();return n.hasOwnBinding(e.left.name)&&n.getOwnBinding(e.left.name).constantViolations.length<=1}(e,r))t.unshift(e),t.push(d(e.left));else if(r.isPure(e,!0))t.push(e);else{n.isMethod({computed:!0,key:e})&&(r=r.parent);const a=r.generateDeclaredUidIdentifier();t.unshift(f(p("=",d(a),e))),t.push(f(d(a)))}}return this.replaceExpressionWithStatements(t)}if(Array.isArray(this.container))return this._containerInsertAfter(t);if(this.isStatementOrBlock()){const e=this.node,n=e&&(!this.isExpressionStatement()||null!=e.expression);return this.replaceWith(c(n?[e]:[])),this.pushContainer("body",t)}throw new Error("We don't know what to do with this node type. We were previously a Statement but we can't fit in here?")},t.insertBefore=function(e){this._assertUnremoved();const t=this._verifyNodeList(e),{parentPath:n}=this;if(n.isExpressionStatement()||n.isLabeledStatement()||n.isExportNamedDeclaration()||n.isExportDefaultDeclaration()&&this.isDeclaration())return n.insertBefore(t);if(this.isNodeType("Expression")&&!this.isJSXElement()||n.isForStatement()&&"init"===this.key)return this.node&&t.push(this.node),this.replaceExpressionWithStatements(t);if(Array.isArray(this.container))return this._containerInsertBefore(t);if(this.isStatementOrBlock()){const e=this.node,n=e&&(!this.isExpressionStatement()||null!=e.expression);return this.replaceWith(c(n?[e]:[])),this.unshiftContainer("body",t)}throw new Error("We don't know what to do with this node type. We were previously a Statement but we can't fit in here?")},t.pushContainer=function(e,t){this._assertUnremoved();const n=this._verifyNodeList(t),r=this.node[e];return i.default.get({parentPath:this,parent:this.node,container:r,listKey:e,key:r.length}).setContext(this.context).replaceWithMultiple(n)},t.unshiftContainer=function(e,t){return this._assertUnremoved(),t=this._verifyNodeList(t),i.default.get({parentPath:this,parent:this.node,container:this.node[e],listKey:e,key:0}).setContext(this.context)._containerInsertBefore(t)},t.updateSiblingKeys=function(e,t){if(!this.parent)return;const n=r.path.get(this.parent);for(const[,r]of n)r.key>=e&&(r.key+=t)};var r=n(732),a=n(79380),i=n(72969),s=n(38218);const{arrowFunctionExpression:o,assertExpression:l,assignmentExpression:p,blockStatement:c,callExpression:u,cloneNode:d,expressionStatement:f,isAssignmentExpression:y,isCallExpression:m,isExpression:h,isIdentifier:T,isSequenceExpression:S,isSuper:b,thisExpression:E}=s,P=e=>e[e.length-1];function x(e){return S(e.parent)&&(P(e.parent.expressions)!==e.node||x(e.parentPath))}},92052:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t._assertUnremoved=function(){if(this.removed)throw this.buildCodeFrameError("NodePath has been removed so is read-only.")},t._callRemovalHooks=function(){for(const e of r.hooks)if(e(this,this.parentPath))return!0},t._markRemoved=function(){this._traverseFlags|=i.SHOULD_SKIP|i.REMOVED,this.parent&&a.path.get(this.parent).delete(this.node),this.node=null},t._remove=function(){Array.isArray(this.container)?(this.container.splice(this.key,1),this.updateSiblingKeys(this.key,-1)):this._replaceWith(null)},t._removeFromScope=function(){const e=this.getBindingIdentifiers();Object.keys(e).forEach((e=>this.scope.removeBinding(e)))},t.remove=function(){var e;this._assertUnremoved(),this.resync(),null!=(e=this.opts)&&e.noScope||this._removeFromScope(),this._callRemovalHooks()||(this.shareCommentsWithSiblings(),this._remove()),this._markRemoved()};var r=n(41233),a=n(732),i=n(72969)},30023:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t._replaceWith=function(e){var t;if(!this.container)throw new ReferenceError("Container is falsy");this.inList?N(this.parent,this.key,[e]):N(this.parent,this.key,e),this.debug(`Replace with ${null==e?void 0:e.type}`),null==(t=s.path.get(this.parent))||t.set(e,this).delete(this.node),this.node=this.container[this.key]=e},t.replaceExpressionWithStatements=function(e){this.resync();const t=I(e,this.scope);if(t)return this.replaceWith(t)[0].get("expressions");const n=this.getFunctionParent(),r=null==n?void 0:n.is("async"),i=null==n?void 0:n.is("generator"),s=u([],y(e));this.replaceWith(m(s,[]));const o=this.get("callee");(0,p.default)(o.get("body"),(e=>{this.scope.push({id:e})}),"var");const l=this.get("callee").getCompletionRecords();for(const e of l){if(!e.isExpressionStatement())continue;const t=e.findParent((e=>e.isLoop()));if(t){let n=t.getData("expressionReplacementReturnUid");n?n=S(n.name):(n=o.scope.generateDeclaredUidIdentifier("ret"),o.get("body").pushContainer("body",O(h(n))),t.setData("expressionReplacementReturnUid",n)),e.get("expression").replaceWith(d("=",h(n),e.node.expression))}else e.replaceWith(O(e.node.expression))}o.arrowFunctionToExpression();const T=o,b=r&&a.default.hasType(this.get("callee.body").node,"AwaitExpression",c),E=i&&a.default.hasType(this.get("callee.body").node,"YieldExpression",c);return b&&(T.set("async",!0),E||this.replaceWith(f(this.node))),E&&(T.set("generator",!0),this.replaceWith(D(this.node,!0))),T.get("body.body")},t.replaceInline=function(e){if(this.resync(),Array.isArray(e)){if(Array.isArray(this.container)){e=this._verifyNodeList(e);const t=this._containerInsertAfter(e);return this.remove(),t}return this.replaceWithMultiple(e)}return this.replaceWith(e)},t.replaceWith=function(e){if(this.resync(),this.removed)throw new Error("You can't replace this node, we've already removed it");if(e instanceof i.default&&(e=e.node),!e)throw new Error("You passed `path.replaceWith()` a falsy node, use `path.remove()` instead");if(this.node===e)return[this];if(this.isProgram()&&!g(e))throw new Error("You can only replace a Program root node with another Program node");if(Array.isArray(e))throw new Error("Don't use `path.replaceWith()` with an array of nodes, use `path.replaceWithMultiple()`");if("string"==typeof e)throw new Error("Don't use `path.replaceWith()` with a source string, use `path.replaceWithSourceString()`");let t="";if(this.isNodeType("Statement")&&x(e)&&(this.canHaveVariableDeclarationOrExpression()||this.canSwapBetweenExpressionAndStatement(e)||this.parentPath.isExportDefaultDeclaration()||(e=T(e),t="expression")),this.isNodeType("Expression")&&A(e)&&!this.canHaveVariableDeclarationOrExpression()&&!this.canSwapBetweenExpressionAndStatement(e))return this.replaceExpressionWithStatements([e]);const n=this.node;return n&&(P(e,n),v(n)),this._replaceWith(e),this.type=e.type,this.setScope(),this.requeue(),[t?this.get(t):this]},t.replaceWithMultiple=function(e){var t;this.resync(),e=this._verifyNodeList(e),b(e[0],this.node),E(e[e.length-1],this.node),null==(t=s.path.get(this.parent))||t.delete(this.node),this.node=this.container[this.key]=null;const n=this.insertAfter(e);return this.node?this.requeue():this.remove(),n},t.replaceWithSourceString=function(e){this.resync();try{e=`(${e})`,e=(0,o.parse)(e)}catch(t){const n=t.loc;throw n&&(t.message+=" - make sure this is an expression.\n"+(0,r.codeFrameColumns)(e,{start:{line:n.line,column:n.column+1}}),t.code="BABEL_REPLACE_SOURCE_ERROR"),t}return e=e.program.body[0].expression,a.default.removeProperties(e),this.replaceWith(e)};var r=n(4704),a=n(49838),i=n(72969),s=n(732),o=n(73834),l=n(38218),p=n(47438);const{FUNCTION_TYPES:c,arrowFunctionExpression:u,assignmentExpression:d,awaitExpression:f,blockStatement:y,callExpression:m,cloneNode:h,expressionStatement:T,identifier:S,inheritLeadingComments:b,inheritTrailingComments:E,inheritsComments:P,isExpression:x,isProgram:g,isStatement:A,removeComments:v,returnStatement:O,toSequenceExpression:I,validate:N,yieldExpression:D}=l},48287:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0,t.default=class{constructor({identifier:e,scope:t,path:n,kind:r}){this.identifier=void 0,this.scope=void 0,this.path=void 0,this.kind=void 0,this.constantViolations=[],this.constant=!0,this.referencePaths=[],this.referenced=!1,this.references=0,this.identifier=e,this.scope=t,this.path=n,this.kind=r,this.clearValue()}deoptValue(){this.clearValue(),this.hasDeoptedValue=!0}setValue(e){this.hasDeoptedValue||(this.hasValue=!0,this.value=e)}clearValue(){this.hasDeoptedValue=!1,this.hasValue=!1,this.value=null}reassign(e){this.constant=!1,-1===this.constantViolations.indexOf(e)&&this.constantViolations.push(e)}reference(e){-1===this.referencePaths.indexOf(e)&&(this.referenced=!0,this.references++,this.referencePaths.push(e))}dereference(){this.references--,this.referenced=!!this.references}}},82570:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(81669),a=n(49838),i=n(48287),s=n(11272),o=n(38218),l=n(732);const{NOT_LOCAL_BINDING:p,callExpression:c,cloneNode:u,getBindingIdentifiers:d,identifier:f,isArrayExpression:y,isBinary:m,isClass:h,isClassBody:T,isClassDeclaration:S,isExportAllDeclaration:b,isExportDefaultDeclaration:E,isExportNamedDeclaration:P,isFunctionDeclaration:x,isIdentifier:g,isImportDeclaration:A,isLiteral:v,isMethod:O,isModuleDeclaration:I,isModuleSpecifier:N,isObjectExpression:D,isProperty:C,isPureish:w,isSuper:L,isTaggedTemplateExpression:j,isTemplateLiteral:_,isThisExpression:M,isUnaryExpression:k,isVariableDeclaration:B,matchesPattern:F,memberExpression:R,numericLiteral:K,toIdentifier:V,unaryExpression:Y,variableDeclaration:U,variableDeclarator:X,isRecordExpression:J,isTupleExpression:W,isObjectProperty:q,isTopicReference:$,isMetaProperty:G,isPrivateName:z}=o;function H(e,t){switch(null==e?void 0:e.type){default:if(I(e))if((b(e)||P(e)||A(e))&&e.source)H(e.source,t);else if((P(e)||A(e))&&e.specifiers&&e.specifiers.length)for(const n of e.specifiers)H(n,t);else(E(e)||P(e))&&e.declaration&&H(e.declaration,t);else N(e)?H(e.local,t):v(e)&&t.push(e.value);break;case"MemberExpression":case"OptionalMemberExpression":case"JSXMemberExpression":H(e.object,t),H(e.property,t);break;case"Identifier":case"JSXIdentifier":case"JSXOpeningElement":t.push(e.name);break;case"CallExpression":case"OptionalCallExpression":case"NewExpression":H(e.callee,t);break;case"ObjectExpression":case"ObjectPattern":for(const n of e.properties)H(n,t);break;case"SpreadElement":case"RestElement":case"UnaryExpression":case"UpdateExpression":H(e.argument,t);break;case"ObjectProperty":case"ObjectMethod":case"ClassProperty":case"ClassMethod":case"ClassPrivateProperty":case"ClassPrivateMethod":H(e.key,t);break;case"ThisExpression":t.push("this");break;case"Super":t.push("super");break;case"Import":t.push("import");break;case"DoExpression":t.push("do");break;case"YieldExpression":t.push("yield"),H(e.argument,t);break;case"AwaitExpression":t.push("await"),H(e.argument,t);break;case"AssignmentExpression":H(e.left,t);break;case"VariableDeclarator":case"FunctionExpression":case"FunctionDeclaration":case"ClassExpression":case"ClassDeclaration":case"PrivateName":H(e.id,t);break;case"ParenthesizedExpression":H(e.expression,t);break;case"MetaProperty":H(e.meta,t),H(e.property,t);break;case"JSXElement":H(e.openingElement,t);break;case"JSXFragment":H(e.openingFragment,t);break;case"JSXOpeningFragment":t.push("Fragment");break;case"JSXNamespacedName":H(e.namespace,t),H(e.name,t)}}const Q={ForStatement(e){const t=e.get("init");if(t.isVar()){const{scope:n}=e;(n.getFunctionParent()||n.getProgramParent()).registerBinding("var",t)}},Declaration(e){e.isBlockScoped()||e.isImportDeclaration()||e.isExportDeclaration()||(e.scope.getFunctionParent()||e.scope.getProgramParent()).registerDeclaration(e)},ImportDeclaration(e){e.scope.getBlockParent().registerDeclaration(e)},ReferencedIdentifier(e,t){t.references.push(e)},ForXStatement(e,t){const n=e.get("left");if(n.isPattern()||n.isIdentifier())t.constantViolations.push(e);else if(n.isVar()){const{scope:t}=e;(t.getFunctionParent()||t.getProgramParent()).registerBinding("var",n)}},ExportDeclaration:{exit(e){const{node:t,scope:n}=e;if(b(t))return;const r=t.declaration;if(S(r)||x(r)){const t=r.id;if(!t)return;const a=n.getBinding(t.name);null==a||a.reference(e)}else if(B(r))for(const t of r.declarations)for(const r of Object.keys(d(t))){const t=n.getBinding(r);null==t||t.reference(e)}}},LabeledStatement(e){e.scope.getBlockParent().registerDeclaration(e)},AssignmentExpression(e,t){t.assignments.push(e)},UpdateExpression(e,t){t.constantViolations.push(e)},UnaryExpression(e,t){"delete"===e.node.operator&&t.constantViolations.push(e)},BlockScoped(e){let t=e.scope;if(t.path===e&&(t=t.parent),t.getBlockParent().registerDeclaration(e),e.isClassDeclaration()&&e.node.id){const t=e.node.id.name;e.scope.bindings[t]=e.scope.parent.getBinding(t)}},CatchClause(e){e.scope.registerBinding("let",e)},Function(e){const t=e.get("params");for(const n of t)e.scope.registerBinding("param",n);e.isFunctionExpression()&&e.has("id")&&!e.get("id").node[p]&&e.scope.registerBinding("local",e.get("id"),e)},ClassExpression(e){e.has("id")&&!e.get("id").node[p]&&e.scope.registerBinding("local",e)}};let Z=0;class ee{constructor(e){this.uid=void 0,this.path=void 0,this.block=void 0,this.labels=void 0,this.inited=void 0,this.bindings=void 0,this.references=void 0,this.globals=void 0,this.uids=void 0,this.data=void 0,this.crawling=void 0;const{node:t}=e,n=l.scope.get(t);if((null==n?void 0:n.path)===e)return n;l.scope.set(t,this),this.uid=Z++,this.block=t,this.path=e,this.labels=new Map,this.inited=!1}get parent(){var e;let t,n=this.path;do{const e="key"===n.key;n=n.parentPath,e&&n.isMethod()&&(n=n.parentPath),n&&n.isScope()&&(t=n)}while(n&&!t);return null==(e=t)?void 0:e.scope}get parentBlock(){return this.path.parent}get hub(){return this.path.hub}traverse(e,t,n){(0,a.default)(e,t,this,n,this.path)}generateDeclaredUidIdentifier(e){const t=this.generateUidIdentifier(e);return this.push({id:t}),u(t)}generateUidIdentifier(e){return f(this.generateUid(e))}generateUid(e="temp"){let t;e=V(e).replace(/^_+/,"").replace(/[0-9]+$/g,"");let n=1;do{t=this._generateUid(e,n),n++}while(this.hasLabel(t)||this.hasBinding(t)||this.hasGlobal(t)||this.hasReference(t));const r=this.getProgramParent();return r.references[t]=!0,r.uids[t]=!0,t}_generateUid(e,t){let n=e;return t>1&&(n+=t),`_${n}`}generateUidBasedOnNode(e,t){const n=[];H(e,n);let r=n.join("$");return r=r.replace(/^_/,"")||t||"ref",this.generateUid(r.slice(0,20))}generateUidIdentifierBasedOnNode(e,t){return f(this.generateUidBasedOnNode(e,t))}isStatic(e){if(M(e)||L(e)||$(e))return!0;if(g(e)){const t=this.getBinding(e.name);return t?t.constant:this.hasBinding(e.name)}return!1}maybeGenerateMemoised(e,t){if(this.isStatic(e))return null;{const n=this.generateUidIdentifierBasedOnNode(e);return t?n:(this.push({id:n}),u(n))}}checkBlockScopedCollisions(e,t,n,r){if("param"!==t&&"local"!==e.kind&&("let"===t||"let"===e.kind||"const"===e.kind||"module"===e.kind||"param"===e.kind&&"const"===t))throw this.hub.buildError(r,`Duplicate declaration "${n}"`,TypeError)}rename(e,t,n){const a=this.getBinding(e);if(a)return t=t||this.generateUidIdentifier(e).name,new r.default(a,e,t).rename(n)}_renameFromMap(e,t,n,r){e[t]&&(e[n]=r,e[t]=null)}dump(){const e="-".repeat(60);console.log(e);let t=this;do{console.log("#",t.block.type);for(const e of Object.keys(t.bindings)){const n=t.bindings[e];console.log(" -",e,{constant:n.constant,references:n.references,violations:n.constantViolations.length,kind:n.kind})}}while(t=t.parent);console.log(e)}toArray(e,t,n){if(g(e)){const t=this.getBinding(e.name);if(null!=t&&t.constant&&t.path.isGenericType("Array"))return e}if(y(e))return e;if(g(e,{name:"arguments"}))return c(R(R(R(f("Array"),f("prototype")),f("slice")),f("call")),[e]);let r;const a=[e];return!0===t?r="toConsumableArray":t?(a.push(K(t)),r="slicedToArray"):r="toArray",n&&(a.unshift(this.hub.addHelper(r)),r="maybeArrayLike"),c(this.hub.addHelper(r),a)}hasLabel(e){return!!this.getLabel(e)}getLabel(e){return this.labels.get(e)}registerLabel(e){this.labels.set(e.node.label.name,e)}registerDeclaration(e){if(e.isLabeledStatement())this.registerLabel(e);else if(e.isFunctionDeclaration())this.registerBinding("hoisted",e.get("id"),e);else if(e.isVariableDeclaration()){const t=e.get("declarations");for(const n of t)this.registerBinding(e.node.kind,n)}else if(e.isClassDeclaration()){if(e.node.declare)return;this.registerBinding("let",e)}else if(e.isImportDeclaration()){const t=e.get("specifiers");for(const e of t)this.registerBinding("module",e)}else if(e.isExportDeclaration()){const t=e.get("declaration");(t.isClassDeclaration()||t.isFunctionDeclaration()||t.isVariableDeclaration())&&this.registerDeclaration(t)}else this.registerBinding("unknown",e)}buildUndefinedNode(){return Y("void",K(0),!0)}registerConstantViolation(e){const t=e.getBindingIdentifiers();for(const n of Object.keys(t)){const t=this.getBinding(n);t&&t.reassign(e)}}registerBinding(e,t,n=t){if(!e)throw new ReferenceError("no `kind`");if(t.isVariableDeclaration()){const n=t.get("declarations");for(const t of n)this.registerBinding(e,t);return}const r=this.getProgramParent(),a=t.getOuterBindingIdentifiers(!0);for(const t of Object.keys(a)){r.references[t]=!0;for(const r of a[t]){const a=this.getOwnBinding(t);if(a){if(a.identifier===r)continue;this.checkBlockScopedCollisions(a,e,t,r)}a?this.registerConstantViolation(n):this.bindings[t]=new i.default({identifier:r,scope:this,path:n,kind:e})}}}addGlobal(e){this.globals[e.name]=e}hasUid(e){let t=this;do{if(t.uids[e])return!0}while(t=t.parent);return!1}hasGlobal(e){let t=this;do{if(t.globals[e])return!0}while(t=t.parent);return!1}hasReference(e){return!!this.getProgramParent().references[e]}isPure(e,t){if(g(e)){const n=this.getBinding(e.name);return!!n&&(!t||n.constant)}if(M(e)||G(e)||$(e)||z(e))return!0;var n,r,a;if(h(e))return!(e.superClass&&!this.isPure(e.superClass,t))&&!((null==(n=e.decorators)?void 0:n.length)>0)&&this.isPure(e.body,t);if(T(e)){for(const n of e.body)if(!this.isPure(n,t))return!1;return!0}if(m(e))return this.isPure(e.left,t)&&this.isPure(e.right,t);if(y(e)||W(e)){for(const n of e.elements)if(null!==n&&!this.isPure(n,t))return!1;return!0}if(D(e)||J(e)){for(const n of e.properties)if(!this.isPure(n,t))return!1;return!0}if(O(e))return!(e.computed&&!this.isPure(e.key,t)||(null==(r=e.decorators)?void 0:r.length)>0);if(C(e))return!(e.computed&&!this.isPure(e.key,t)||(null==(a=e.decorators)?void 0:a.length)>0||(q(e)||e.static)&&null!==e.value&&!this.isPure(e.value,t));if(k(e))return this.isPure(e.argument,t);if(j(e))return F(e.tag,"String.raw")&&!this.hasBinding("String",!0)&&this.isPure(e.quasi,t);if(_(e)){for(const n of e.expressions)if(!this.isPure(n,t))return!1;return!0}return w(e)}setData(e,t){return this.data[e]=t}getData(e){let t=this;do{const n=t.data[e];if(null!=n)return n}while(t=t.parent)}removeData(e){let t=this;do{null!=t.data[e]&&(t.data[e]=null)}while(t=t.parent)}init(){this.inited||(this.inited=!0,this.crawl())}crawl(){const e=this.path;this.references=Object.create(null),this.bindings=Object.create(null),this.globals=Object.create(null),this.uids=Object.create(null),this.data=Object.create(null);const t=this.getProgramParent();if(t.crawling)return;const n={references:[],constantViolations:[],assignments:[]};if(this.crawling=!0,"Program"!==e.type&&Q._exploded){for(const t of Q.enter)t(e,n);const t=Q[e.type];if(t)for(const r of t.enter)r(e,n)}e.traverse(Q,n),this.crawling=!1;for(const e of n.assignments){const n=e.getBindingIdentifiers();for(const r of Object.keys(n))e.scope.getBinding(r)||t.addGlobal(n[r]);e.scope.registerConstantViolation(e)}for(const e of n.references){const n=e.scope.getBinding(e.node.name);n?n.reference(e):t.addGlobal(e.node)}for(const e of n.constantViolations)e.scope.registerConstantViolation(e)}push(e){let t=this.path;t.isBlockStatement()||t.isProgram()||(t=this.getBlockParent().path),t.isSwitchStatement()&&(t=(this.getFunctionParent()||this.getProgramParent()).path),(t.isLoop()||t.isCatchClause()||t.isFunction())&&(t.ensureBlock(),t=t.get("body"));const n=e.unique,r=e.kind||"var",a=null==e._blockHoist?2:e._blockHoist,i=`declaration:${r}:${a}`;let s=!n&&t.getData(i);if(!s){const e=U(r,[]);e._blockHoist=a,[s]=t.unshiftContainer("body",[e]),n||t.setData(i,s)}const o=X(e.id,e.init),l=s.node.declarations.push(o);t.scope.registerBinding(r,s.get("declarations")[l-1])}getProgramParent(){let e=this;do{if(e.path.isProgram())return e}while(e=e.parent);throw new Error("Couldn't find a Program")}getFunctionParent(){let e=this;do{if(e.path.isFunctionParent())return e}while(e=e.parent);return null}getBlockParent(){let e=this;do{if(e.path.isBlockParent())return e}while(e=e.parent);throw new Error("We couldn't find a BlockStatement, For, Switch, Function, Loop or Program...")}getAllBindings(){const e=Object.create(null);let t=this;do{for(const n of Object.keys(t.bindings))n in e==0&&(e[n]=t.bindings[n]);t=t.parent}while(t);return e}getAllBindingsOfKind(...e){const t=Object.create(null);for(const n of e){let e=this;do{for(const r of Object.keys(e.bindings)){const a=e.bindings[r];a.kind===n&&(t[r]=a)}e=e.parent}while(e)}return t}bindingIdentifierEquals(e,t){return this.getBindingIdentifier(e)===t}getBinding(e){let t,n=this;do{const a=n.getOwnBinding(e);var r;if(a){if(null==(r=t)||!r.isPattern()||"param"===a.kind||"local"===a.kind)return a}else if(!a&&"arguments"===e&&n.path.isFunction()&&!n.path.isArrowFunctionExpression())break;t=n.path}while(n=n.parent)}getOwnBinding(e){return this.bindings[e]}getBindingIdentifier(e){var t;return null==(t=this.getBinding(e))?void 0:t.identifier}getOwnBindingIdentifier(e){const t=this.bindings[e];return null==t?void 0:t.identifier}hasOwnBinding(e){return!!this.getOwnBinding(e)}hasBinding(e,t){return!(!e||!this.hasOwnBinding(e)&&!this.parentHasBinding(e,t)&&!this.hasUid(e)&&(t||!ee.globals.includes(e))&&(t||!ee.contextVariables.includes(e)))}parentHasBinding(e,t){var n;return null==(n=this.parent)?void 0:n.hasBinding(e,t)}moveBindingTo(e,t){const n=this.getBinding(e);n&&(n.scope.removeOwnBinding(e),n.scope=t,t.bindings[e]=n)}removeOwnBinding(e){delete this.bindings[e]}removeBinding(e){var t;null==(t=this.getBinding(e))||t.scope.removeOwnBinding(e);let n=this;do{n.uids[e]&&(n.uids[e]=!1)}while(n=n.parent)}}t.default=ee,ee.globals=Object.keys(s.builtin),ee.contextVariables=["arguments","undefined","Infinity","NaN"]},81669:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0,n(48287);var r=n(53472),a=n(38218);const{VISITOR_KEYS:i,assignmentExpression:s,identifier:o,toExpression:l,variableDeclaration:p,variableDeclarator:c}=a,u={ReferencedIdentifier({node:e},t){e.name===t.oldName&&(e.name=t.newName)},Scope(e,t){e.scope.bindingIdentifierEquals(t.oldName,t.binding.identifier)||function(e){if(!e.isMethod()||!e.node.computed)return void e.skip();const t=i[e.type];for(const n of t)"key"!==n&&e.skipKey(n)}(e)},"AssignmentExpression|Declaration|VariableDeclarator"(e,t){if(e.isVariableDeclaration())return;const n=e.getOuterBindingIdentifiers();for(const e in n)e===t.oldName&&(n[e].name=t.newName)}};t.default=class{constructor(e,t,n){this.newName=n,this.oldName=t,this.binding=e}maybeConvertFromExportDeclaration(e){const t=e.parentPath;t.isExportDeclaration()&&(t.isExportDefaultDeclaration()&&!t.get("declaration").node.id||(0,r.default)(t))}maybeConvertFromClassFunctionDeclaration(e){}maybeConvertFromClassFunctionExpression(e){}rename(e){const{binding:t,oldName:n,newName:r}=this,{scope:a,path:i}=t,s=i.find((e=>e.isDeclaration()||e.isFunctionExpression()||e.isClassExpression()));s&&s.getOuterBindingIdentifiers()[n]===t.identifier&&this.maybeConvertFromExportDeclaration(s);const o=e||a.block;"SwitchStatement"===(null==o?void 0:o.type)?o.cases.forEach((e=>{a.traverse(e,u,this)})):a.traverse(o,u,this),e||(a.removeOwnBinding(n),a.bindings[r]=t,this.binding.identifier.name=r),s&&(this.maybeConvertFromClassFunctionDeclaration(s),this.maybeConvertFromClassFunctionExpression(s))}}},46033:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.traverseNode=function(e,t,n,a,s,o){const l=i[e.type];if(!l)return!1;const p=new r.default(n,t,a,s);for(const t of l)if((!o||!o[t])&&p.visit(e,t))return!0;return!1};var r=n(66617),a=n(38218);const{VISITOR_KEYS:i}=a},41169:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.explode=l,t.merge=function(e,t=[],n){const r={};for(let a=0;ae.toString()),r})),r[a]=i)}return r}function d(e){e.enter&&!Array.isArray(e.enter)&&(e.enter=[e.enter]),e.exit&&!Array.isArray(e.exit)&&(e.exit=[e.exit])}function f(e,t){const n=function(n){if(e.checkPath(n))return t.apply(this,arguments)};return n.toString=()=>t.toString(),n}function y(e){return"_"===e[0]||"enter"===e||"exit"===e||"shouldSkip"===e||"denylist"===e||"noScope"===e||"skipKeys"===e||"blacklist"===e}function m(e,t){for(const n of Object.keys(t))e[n]=[].concat(e[n]||[],t[n])}},60245:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){if(!(0,r.default)(e)){var t;const n=null!=(t=null==e?void 0:e.type)?t:JSON.stringify(e);throw new TypeError(`Not a valid node of type "${n}"`)}};var r=n(8523)},27133:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.assertAccessor=function(e,t){a("Accessor",e,t)},t.assertAnyTypeAnnotation=function(e,t){a("AnyTypeAnnotation",e,t)},t.assertArgumentPlaceholder=function(e,t){a("ArgumentPlaceholder",e,t)},t.assertArrayExpression=function(e,t){a("ArrayExpression",e,t)},t.assertArrayPattern=function(e,t){a("ArrayPattern",e,t)},t.assertArrayTypeAnnotation=function(e,t){a("ArrayTypeAnnotation",e,t)},t.assertArrowFunctionExpression=function(e,t){a("ArrowFunctionExpression",e,t)},t.assertAssignmentExpression=function(e,t){a("AssignmentExpression",e,t)},t.assertAssignmentPattern=function(e,t){a("AssignmentPattern",e,t)},t.assertAwaitExpression=function(e,t){a("AwaitExpression",e,t)},t.assertBigIntLiteral=function(e,t){a("BigIntLiteral",e,t)},t.assertBinary=function(e,t){a("Binary",e,t)},t.assertBinaryExpression=function(e,t){a("BinaryExpression",e,t)},t.assertBindExpression=function(e,t){a("BindExpression",e,t)},t.assertBlock=function(e,t){a("Block",e,t)},t.assertBlockParent=function(e,t){a("BlockParent",e,t)},t.assertBlockStatement=function(e,t){a("BlockStatement",e,t)},t.assertBooleanLiteral=function(e,t){a("BooleanLiteral",e,t)},t.assertBooleanLiteralTypeAnnotation=function(e,t){a("BooleanLiteralTypeAnnotation",e,t)},t.assertBooleanTypeAnnotation=function(e,t){a("BooleanTypeAnnotation",e,t)},t.assertBreakStatement=function(e,t){a("BreakStatement",e,t)},t.assertCallExpression=function(e,t){a("CallExpression",e,t)},t.assertCatchClause=function(e,t){a("CatchClause",e,t)},t.assertClass=function(e,t){a("Class",e,t)},t.assertClassAccessorProperty=function(e,t){a("ClassAccessorProperty",e,t)},t.assertClassBody=function(e,t){a("ClassBody",e,t)},t.assertClassDeclaration=function(e,t){a("ClassDeclaration",e,t)},t.assertClassExpression=function(e,t){a("ClassExpression",e,t)},t.assertClassImplements=function(e,t){a("ClassImplements",e,t)},t.assertClassMethod=function(e,t){a("ClassMethod",e,t)},t.assertClassPrivateMethod=function(e,t){a("ClassPrivateMethod",e,t)},t.assertClassPrivateProperty=function(e,t){a("ClassPrivateProperty",e,t)},t.assertClassProperty=function(e,t){a("ClassProperty",e,t)},t.assertCompletionStatement=function(e,t){a("CompletionStatement",e,t)},t.assertConditional=function(e,t){a("Conditional",e,t)},t.assertConditionalExpression=function(e,t){a("ConditionalExpression",e,t)},t.assertContinueStatement=function(e,t){a("ContinueStatement",e,t)},t.assertDebuggerStatement=function(e,t){a("DebuggerStatement",e,t)},t.assertDecimalLiteral=function(e,t){a("DecimalLiteral",e,t)},t.assertDeclaration=function(e,t){a("Declaration",e,t)},t.assertDeclareClass=function(e,t){a("DeclareClass",e,t)},t.assertDeclareExportAllDeclaration=function(e,t){a("DeclareExportAllDeclaration",e,t)},t.assertDeclareExportDeclaration=function(e,t){a("DeclareExportDeclaration",e,t)},t.assertDeclareFunction=function(e,t){a("DeclareFunction",e,t)},t.assertDeclareInterface=function(e,t){a("DeclareInterface",e,t)},t.assertDeclareModule=function(e,t){a("DeclareModule",e,t)},t.assertDeclareModuleExports=function(e,t){a("DeclareModuleExports",e,t)},t.assertDeclareOpaqueType=function(e,t){a("DeclareOpaqueType",e,t)},t.assertDeclareTypeAlias=function(e,t){a("DeclareTypeAlias",e,t)},t.assertDeclareVariable=function(e,t){a("DeclareVariable",e,t)},t.assertDeclaredPredicate=function(e,t){a("DeclaredPredicate",e,t)},t.assertDecorator=function(e,t){a("Decorator",e,t)},t.assertDirective=function(e,t){a("Directive",e,t)},t.assertDirectiveLiteral=function(e,t){a("DirectiveLiteral",e,t)},t.assertDoExpression=function(e,t){a("DoExpression",e,t)},t.assertDoWhileStatement=function(e,t){a("DoWhileStatement",e,t)},t.assertEmptyStatement=function(e,t){a("EmptyStatement",e,t)},t.assertEmptyTypeAnnotation=function(e,t){a("EmptyTypeAnnotation",e,t)},t.assertEnumBody=function(e,t){a("EnumBody",e,t)},t.assertEnumBooleanBody=function(e,t){a("EnumBooleanBody",e,t)},t.assertEnumBooleanMember=function(e,t){a("EnumBooleanMember",e,t)},t.assertEnumDeclaration=function(e,t){a("EnumDeclaration",e,t)},t.assertEnumDefaultedMember=function(e,t){a("EnumDefaultedMember",e,t)},t.assertEnumMember=function(e,t){a("EnumMember",e,t)},t.assertEnumNumberBody=function(e,t){a("EnumNumberBody",e,t)},t.assertEnumNumberMember=function(e,t){a("EnumNumberMember",e,t)},t.assertEnumStringBody=function(e,t){a("EnumStringBody",e,t)},t.assertEnumStringMember=function(e,t){a("EnumStringMember",e,t)},t.assertEnumSymbolBody=function(e,t){a("EnumSymbolBody",e,t)},t.assertExistsTypeAnnotation=function(e,t){a("ExistsTypeAnnotation",e,t)},t.assertExportAllDeclaration=function(e,t){a("ExportAllDeclaration",e,t)},t.assertExportDeclaration=function(e,t){a("ExportDeclaration",e,t)},t.assertExportDefaultDeclaration=function(e,t){a("ExportDefaultDeclaration",e,t)},t.assertExportDefaultSpecifier=function(e,t){a("ExportDefaultSpecifier",e,t)},t.assertExportNamedDeclaration=function(e,t){a("ExportNamedDeclaration",e,t)},t.assertExportNamespaceSpecifier=function(e,t){a("ExportNamespaceSpecifier",e,t)},t.assertExportSpecifier=function(e,t){a("ExportSpecifier",e,t)},t.assertExpression=function(e,t){a("Expression",e,t)},t.assertExpressionStatement=function(e,t){a("ExpressionStatement",e,t)},t.assertExpressionWrapper=function(e,t){a("ExpressionWrapper",e,t)},t.assertFile=function(e,t){a("File",e,t)},t.assertFlow=function(e,t){a("Flow",e,t)},t.assertFlowBaseAnnotation=function(e,t){a("FlowBaseAnnotation",e,t)},t.assertFlowDeclaration=function(e,t){a("FlowDeclaration",e,t)},t.assertFlowPredicate=function(e,t){a("FlowPredicate",e,t)},t.assertFlowType=function(e,t){a("FlowType",e,t)},t.assertFor=function(e,t){a("For",e,t)},t.assertForInStatement=function(e,t){a("ForInStatement",e,t)},t.assertForOfStatement=function(e,t){a("ForOfStatement",e,t)},t.assertForStatement=function(e,t){a("ForStatement",e,t)},t.assertForXStatement=function(e,t){a("ForXStatement",e,t)},t.assertFunction=function(e,t){a("Function",e,t)},t.assertFunctionDeclaration=function(e,t){a("FunctionDeclaration",e,t)},t.assertFunctionExpression=function(e,t){a("FunctionExpression",e,t)},t.assertFunctionParent=function(e,t){a("FunctionParent",e,t)},t.assertFunctionTypeAnnotation=function(e,t){a("FunctionTypeAnnotation",e,t)},t.assertFunctionTypeParam=function(e,t){a("FunctionTypeParam",e,t)},t.assertGenericTypeAnnotation=function(e,t){a("GenericTypeAnnotation",e,t)},t.assertIdentifier=function(e,t){a("Identifier",e,t)},t.assertIfStatement=function(e,t){a("IfStatement",e,t)},t.assertImmutable=function(e,t){a("Immutable",e,t)},t.assertImport=function(e,t){a("Import",e,t)},t.assertImportAttribute=function(e,t){a("ImportAttribute",e,t)},t.assertImportDeclaration=function(e,t){a("ImportDeclaration",e,t)},t.assertImportDefaultSpecifier=function(e,t){a("ImportDefaultSpecifier",e,t)},t.assertImportNamespaceSpecifier=function(e,t){a("ImportNamespaceSpecifier",e,t)},t.assertImportSpecifier=function(e,t){a("ImportSpecifier",e,t)},t.assertIndexedAccessType=function(e,t){a("IndexedAccessType",e,t)},t.assertInferredPredicate=function(e,t){a("InferredPredicate",e,t)},t.assertInterfaceDeclaration=function(e,t){a("InterfaceDeclaration",e,t)},t.assertInterfaceExtends=function(e,t){a("InterfaceExtends",e,t)},t.assertInterfaceTypeAnnotation=function(e,t){a("InterfaceTypeAnnotation",e,t)},t.assertInterpreterDirective=function(e,t){a("InterpreterDirective",e,t)},t.assertIntersectionTypeAnnotation=function(e,t){a("IntersectionTypeAnnotation",e,t)},t.assertJSX=function(e,t){a("JSX",e,t)},t.assertJSXAttribute=function(e,t){a("JSXAttribute",e,t)},t.assertJSXClosingElement=function(e,t){a("JSXClosingElement",e,t)},t.assertJSXClosingFragment=function(e,t){a("JSXClosingFragment",e,t)},t.assertJSXElement=function(e,t){a("JSXElement",e,t)},t.assertJSXEmptyExpression=function(e,t){a("JSXEmptyExpression",e,t)},t.assertJSXExpressionContainer=function(e,t){a("JSXExpressionContainer",e,t)},t.assertJSXFragment=function(e,t){a("JSXFragment",e,t)},t.assertJSXIdentifier=function(e,t){a("JSXIdentifier",e,t)},t.assertJSXMemberExpression=function(e,t){a("JSXMemberExpression",e,t)},t.assertJSXNamespacedName=function(e,t){a("JSXNamespacedName",e,t)},t.assertJSXOpeningElement=function(e,t){a("JSXOpeningElement",e,t)},t.assertJSXOpeningFragment=function(e,t){a("JSXOpeningFragment",e,t)},t.assertJSXSpreadAttribute=function(e,t){a("JSXSpreadAttribute",e,t)},t.assertJSXSpreadChild=function(e,t){a("JSXSpreadChild",e,t)},t.assertJSXText=function(e,t){a("JSXText",e,t)},t.assertLVal=function(e,t){a("LVal",e,t)},t.assertLabeledStatement=function(e,t){a("LabeledStatement",e,t)},t.assertLiteral=function(e,t){a("Literal",e,t)},t.assertLogicalExpression=function(e,t){a("LogicalExpression",e,t)},t.assertLoop=function(e,t){a("Loop",e,t)},t.assertMemberExpression=function(e,t){a("MemberExpression",e,t)},t.assertMetaProperty=function(e,t){a("MetaProperty",e,t)},t.assertMethod=function(e,t){a("Method",e,t)},t.assertMiscellaneous=function(e,t){a("Miscellaneous",e,t)},t.assertMixedTypeAnnotation=function(e,t){a("MixedTypeAnnotation",e,t)},t.assertModuleDeclaration=function(e,t){a("ModuleDeclaration",e,t)},t.assertModuleExpression=function(e,t){a("ModuleExpression",e,t)},t.assertModuleSpecifier=function(e,t){a("ModuleSpecifier",e,t)},t.assertNewExpression=function(e,t){a("NewExpression",e,t)},t.assertNoop=function(e,t){a("Noop",e,t)},t.assertNullLiteral=function(e,t){a("NullLiteral",e,t)},t.assertNullLiteralTypeAnnotation=function(e,t){a("NullLiteralTypeAnnotation",e,t)},t.assertNullableTypeAnnotation=function(e,t){a("NullableTypeAnnotation",e,t)},t.assertNumberLiteral=function(e,t){console.trace("The node type NumberLiteral has been renamed to NumericLiteral"),a("NumberLiteral",e,t)},t.assertNumberLiteralTypeAnnotation=function(e,t){a("NumberLiteralTypeAnnotation",e,t)},t.assertNumberTypeAnnotation=function(e,t){a("NumberTypeAnnotation",e,t)},t.assertNumericLiteral=function(e,t){a("NumericLiteral",e,t)},t.assertObjectExpression=function(e,t){a("ObjectExpression",e,t)},t.assertObjectMember=function(e,t){a("ObjectMember",e,t)},t.assertObjectMethod=function(e,t){a("ObjectMethod",e,t)},t.assertObjectPattern=function(e,t){a("ObjectPattern",e,t)},t.assertObjectProperty=function(e,t){a("ObjectProperty",e,t)},t.assertObjectTypeAnnotation=function(e,t){a("ObjectTypeAnnotation",e,t)},t.assertObjectTypeCallProperty=function(e,t){a("ObjectTypeCallProperty",e,t)},t.assertObjectTypeIndexer=function(e,t){a("ObjectTypeIndexer",e,t)},t.assertObjectTypeInternalSlot=function(e,t){a("ObjectTypeInternalSlot",e,t)},t.assertObjectTypeProperty=function(e,t){a("ObjectTypeProperty",e,t)},t.assertObjectTypeSpreadProperty=function(e,t){a("ObjectTypeSpreadProperty",e,t)},t.assertOpaqueType=function(e,t){a("OpaqueType",e,t)},t.assertOptionalCallExpression=function(e,t){a("OptionalCallExpression",e,t)},t.assertOptionalIndexedAccessType=function(e,t){a("OptionalIndexedAccessType",e,t)},t.assertOptionalMemberExpression=function(e,t){a("OptionalMemberExpression",e,t)},t.assertParenthesizedExpression=function(e,t){a("ParenthesizedExpression",e,t)},t.assertPattern=function(e,t){a("Pattern",e,t)},t.assertPatternLike=function(e,t){a("PatternLike",e,t)},t.assertPipelineBareFunction=function(e,t){a("PipelineBareFunction",e,t)},t.assertPipelinePrimaryTopicReference=function(e,t){a("PipelinePrimaryTopicReference",e,t)},t.assertPipelineTopicExpression=function(e,t){a("PipelineTopicExpression",e,t)},t.assertPlaceholder=function(e,t){a("Placeholder",e,t)},t.assertPrivate=function(e,t){a("Private",e,t)},t.assertPrivateName=function(e,t){a("PrivateName",e,t)},t.assertProgram=function(e,t){a("Program",e,t)},t.assertProperty=function(e,t){a("Property",e,t)},t.assertPureish=function(e,t){a("Pureish",e,t)},t.assertQualifiedTypeIdentifier=function(e,t){a("QualifiedTypeIdentifier",e,t)},t.assertRecordExpression=function(e,t){a("RecordExpression",e,t)},t.assertRegExpLiteral=function(e,t){a("RegExpLiteral",e,t)},t.assertRegexLiteral=function(e,t){console.trace("The node type RegexLiteral has been renamed to RegExpLiteral"),a("RegexLiteral",e,t)},t.assertRestElement=function(e,t){a("RestElement",e,t)},t.assertRestProperty=function(e,t){console.trace("The node type RestProperty has been renamed to RestElement"),a("RestProperty",e,t)},t.assertReturnStatement=function(e,t){a("ReturnStatement",e,t)},t.assertScopable=function(e,t){a("Scopable",e,t)},t.assertSequenceExpression=function(e,t){a("SequenceExpression",e,t)},t.assertSpreadElement=function(e,t){a("SpreadElement",e,t)},t.assertSpreadProperty=function(e,t){console.trace("The node type SpreadProperty has been renamed to SpreadElement"),a("SpreadProperty",e,t)},t.assertStandardized=function(e,t){a("Standardized",e,t)},t.assertStatement=function(e,t){a("Statement",e,t)},t.assertStaticBlock=function(e,t){a("StaticBlock",e,t)},t.assertStringLiteral=function(e,t){a("StringLiteral",e,t)},t.assertStringLiteralTypeAnnotation=function(e,t){a("StringLiteralTypeAnnotation",e,t)},t.assertStringTypeAnnotation=function(e,t){a("StringTypeAnnotation",e,t)},t.assertSuper=function(e,t){a("Super",e,t)},t.assertSwitchCase=function(e,t){a("SwitchCase",e,t)},t.assertSwitchStatement=function(e,t){a("SwitchStatement",e,t)},t.assertSymbolTypeAnnotation=function(e,t){a("SymbolTypeAnnotation",e,t)},t.assertTSAnyKeyword=function(e,t){a("TSAnyKeyword",e,t)},t.assertTSArrayType=function(e,t){a("TSArrayType",e,t)},t.assertTSAsExpression=function(e,t){a("TSAsExpression",e,t)},t.assertTSBaseType=function(e,t){a("TSBaseType",e,t)},t.assertTSBigIntKeyword=function(e,t){a("TSBigIntKeyword",e,t)},t.assertTSBooleanKeyword=function(e,t){a("TSBooleanKeyword",e,t)},t.assertTSCallSignatureDeclaration=function(e,t){a("TSCallSignatureDeclaration",e,t)},t.assertTSConditionalType=function(e,t){a("TSConditionalType",e,t)},t.assertTSConstructSignatureDeclaration=function(e,t){a("TSConstructSignatureDeclaration",e,t)},t.assertTSConstructorType=function(e,t){a("TSConstructorType",e,t)},t.assertTSDeclareFunction=function(e,t){a("TSDeclareFunction",e,t)},t.assertTSDeclareMethod=function(e,t){a("TSDeclareMethod",e,t)},t.assertTSEntityName=function(e,t){a("TSEntityName",e,t)},t.assertTSEnumDeclaration=function(e,t){a("TSEnumDeclaration",e,t)},t.assertTSEnumMember=function(e,t){a("TSEnumMember",e,t)},t.assertTSExportAssignment=function(e,t){a("TSExportAssignment",e,t)},t.assertTSExpressionWithTypeArguments=function(e,t){a("TSExpressionWithTypeArguments",e,t)},t.assertTSExternalModuleReference=function(e,t){a("TSExternalModuleReference",e,t)},t.assertTSFunctionType=function(e,t){a("TSFunctionType",e,t)},t.assertTSImportEqualsDeclaration=function(e,t){a("TSImportEqualsDeclaration",e,t)},t.assertTSImportType=function(e,t){a("TSImportType",e,t)},t.assertTSIndexSignature=function(e,t){a("TSIndexSignature",e,t)},t.assertTSIndexedAccessType=function(e,t){a("TSIndexedAccessType",e,t)},t.assertTSInferType=function(e,t){a("TSInferType",e,t)},t.assertTSInterfaceBody=function(e,t){a("TSInterfaceBody",e,t)},t.assertTSInterfaceDeclaration=function(e,t){a("TSInterfaceDeclaration",e,t)},t.assertTSIntersectionType=function(e,t){a("TSIntersectionType",e,t)},t.assertTSIntrinsicKeyword=function(e,t){a("TSIntrinsicKeyword",e,t)},t.assertTSLiteralType=function(e,t){a("TSLiteralType",e,t)},t.assertTSMappedType=function(e,t){a("TSMappedType",e,t)},t.assertTSMethodSignature=function(e,t){a("TSMethodSignature",e,t)},t.assertTSModuleBlock=function(e,t){a("TSModuleBlock",e,t)},t.assertTSModuleDeclaration=function(e,t){a("TSModuleDeclaration",e,t)},t.assertTSNamedTupleMember=function(e,t){a("TSNamedTupleMember",e,t)},t.assertTSNamespaceExportDeclaration=function(e,t){a("TSNamespaceExportDeclaration",e,t)},t.assertTSNeverKeyword=function(e,t){a("TSNeverKeyword",e,t)},t.assertTSNonNullExpression=function(e,t){a("TSNonNullExpression",e,t)},t.assertTSNullKeyword=function(e,t){a("TSNullKeyword",e,t)},t.assertTSNumberKeyword=function(e,t){a("TSNumberKeyword",e,t)},t.assertTSObjectKeyword=function(e,t){a("TSObjectKeyword",e,t)},t.assertTSOptionalType=function(e,t){a("TSOptionalType",e,t)},t.assertTSParameterProperty=function(e,t){a("TSParameterProperty",e,t)},t.assertTSParenthesizedType=function(e,t){a("TSParenthesizedType",e,t)},t.assertTSPropertySignature=function(e,t){a("TSPropertySignature",e,t)},t.assertTSQualifiedName=function(e,t){a("TSQualifiedName",e,t)},t.assertTSRestType=function(e,t){a("TSRestType",e,t)},t.assertTSStringKeyword=function(e,t){a("TSStringKeyword",e,t)},t.assertTSSymbolKeyword=function(e,t){a("TSSymbolKeyword",e,t)},t.assertTSThisType=function(e,t){a("TSThisType",e,t)},t.assertTSTupleType=function(e,t){a("TSTupleType",e,t)},t.assertTSType=function(e,t){a("TSType",e,t)},t.assertTSTypeAliasDeclaration=function(e,t){a("TSTypeAliasDeclaration",e,t)},t.assertTSTypeAnnotation=function(e,t){a("TSTypeAnnotation",e,t)},t.assertTSTypeAssertion=function(e,t){a("TSTypeAssertion",e,t)},t.assertTSTypeElement=function(e,t){a("TSTypeElement",e,t)},t.assertTSTypeLiteral=function(e,t){a("TSTypeLiteral",e,t)},t.assertTSTypeOperator=function(e,t){a("TSTypeOperator",e,t)},t.assertTSTypeParameter=function(e,t){a("TSTypeParameter",e,t)},t.assertTSTypeParameterDeclaration=function(e,t){a("TSTypeParameterDeclaration",e,t)},t.assertTSTypeParameterInstantiation=function(e,t){a("TSTypeParameterInstantiation",e,t)},t.assertTSTypePredicate=function(e,t){a("TSTypePredicate",e,t)},t.assertTSTypeQuery=function(e,t){a("TSTypeQuery",e,t)},t.assertTSTypeReference=function(e,t){a("TSTypeReference",e,t)},t.assertTSUndefinedKeyword=function(e,t){a("TSUndefinedKeyword",e,t)},t.assertTSUnionType=function(e,t){a("TSUnionType",e,t)},t.assertTSUnknownKeyword=function(e,t){a("TSUnknownKeyword",e,t)},t.assertTSVoidKeyword=function(e,t){a("TSVoidKeyword",e,t)},t.assertTaggedTemplateExpression=function(e,t){a("TaggedTemplateExpression",e,t)},t.assertTemplateElement=function(e,t){a("TemplateElement",e,t)},t.assertTemplateLiteral=function(e,t){a("TemplateLiteral",e,t)},t.assertTerminatorless=function(e,t){a("Terminatorless",e,t)},t.assertThisExpression=function(e,t){a("ThisExpression",e,t)},t.assertThisTypeAnnotation=function(e,t){a("ThisTypeAnnotation",e,t)},t.assertThrowStatement=function(e,t){a("ThrowStatement",e,t)},t.assertTopicReference=function(e,t){a("TopicReference",e,t)},t.assertTryStatement=function(e,t){a("TryStatement",e,t)},t.assertTupleExpression=function(e,t){a("TupleExpression",e,t)},t.assertTupleTypeAnnotation=function(e,t){a("TupleTypeAnnotation",e,t)},t.assertTypeAlias=function(e,t){a("TypeAlias",e,t)},t.assertTypeAnnotation=function(e,t){a("TypeAnnotation",e,t)},t.assertTypeCastExpression=function(e,t){a("TypeCastExpression",e,t)},t.assertTypeParameter=function(e,t){a("TypeParameter",e,t)},t.assertTypeParameterDeclaration=function(e,t){a("TypeParameterDeclaration",e,t)},t.assertTypeParameterInstantiation=function(e,t){a("TypeParameterInstantiation",e,t)},t.assertTypeScript=function(e,t){a("TypeScript",e,t)},t.assertTypeofTypeAnnotation=function(e,t){a("TypeofTypeAnnotation",e,t)},t.assertUnaryExpression=function(e,t){a("UnaryExpression",e,t)},t.assertUnaryLike=function(e,t){a("UnaryLike",e,t)},t.assertUnionTypeAnnotation=function(e,t){a("UnionTypeAnnotation",e,t)},t.assertUpdateExpression=function(e,t){a("UpdateExpression",e,t)},t.assertUserWhitespacable=function(e,t){a("UserWhitespacable",e,t)},t.assertV8IntrinsicIdentifier=function(e,t){a("V8IntrinsicIdentifier",e,t)},t.assertVariableDeclaration=function(e,t){a("VariableDeclaration",e,t)},t.assertVariableDeclarator=function(e,t){a("VariableDeclarator",e,t)},t.assertVariance=function(e,t){a("Variance",e,t)},t.assertVoidTypeAnnotation=function(e,t){a("VoidTypeAnnotation",e,t)},t.assertWhile=function(e,t){a("While",e,t)},t.assertWhileStatement=function(e,t){a("WhileStatement",e,t)},t.assertWithStatement=function(e,t){a("WithStatement",e,t)},t.assertYieldExpression=function(e,t){a("YieldExpression",e,t)};var r=n(67275);function a(e,t,n){if(!(0,r.default)(e,t,n))throw new Error(`Expected type "${e}" with option ${JSON.stringify(n)}, but instead got "${t.type}".`)}},91585:()=>{},29983:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){const t=(0,a.default)(e);return 1===t.length?t[0]:(0,r.unionTypeAnnotation)(t)};var r=n(34391),a=n(17321)},40949:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(34391);t.default=function(e){switch(e){case"string":return(0,r.stringTypeAnnotation)();case"number":return(0,r.numberTypeAnnotation)();case"undefined":return(0,r.voidTypeAnnotation)();case"boolean":return(0,r.booleanTypeAnnotation)();case"function":return(0,r.genericTypeAnnotation)((0,r.identifier)("Function"));case"object":return(0,r.genericTypeAnnotation)((0,r.identifier)("Object"));case"symbol":return(0,r.genericTypeAnnotation)((0,r.identifier)("Symbol"));case"bigint":return(0,r.anyTypeAnnotation)()}throw new Error("Invalid typeof value: "+e)}},34391:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.anyTypeAnnotation=function(){return{type:"AnyTypeAnnotation"}},t.argumentPlaceholder=function(){return{type:"ArgumentPlaceholder"}},t.arrayExpression=function(e=[]){return(0,r.default)({type:"ArrayExpression",elements:e})},t.arrayPattern=function(e){return(0,r.default)({type:"ArrayPattern",elements:e})},t.arrayTypeAnnotation=function(e){return(0,r.default)({type:"ArrayTypeAnnotation",elementType:e})},t.arrowFunctionExpression=function(e,t,n=!1){return(0,r.default)({type:"ArrowFunctionExpression",params:e,body:t,async:n,expression:null})},t.assignmentExpression=function(e,t,n){return(0,r.default)({type:"AssignmentExpression",operator:e,left:t,right:n})},t.assignmentPattern=function(e,t){return(0,r.default)({type:"AssignmentPattern",left:e,right:t})},t.awaitExpression=function(e){return(0,r.default)({type:"AwaitExpression",argument:e})},t.bigIntLiteral=function(e){return(0,r.default)({type:"BigIntLiteral",value:e})},t.binaryExpression=function(e,t,n){return(0,r.default)({type:"BinaryExpression",operator:e,left:t,right:n})},t.bindExpression=function(e,t){return(0,r.default)({type:"BindExpression",object:e,callee:t})},t.blockStatement=function(e,t=[]){return(0,r.default)({type:"BlockStatement",body:e,directives:t})},t.booleanLiteral=function(e){return(0,r.default)({type:"BooleanLiteral",value:e})},t.booleanLiteralTypeAnnotation=function(e){return(0,r.default)({type:"BooleanLiteralTypeAnnotation",value:e})},t.booleanTypeAnnotation=function(){return{type:"BooleanTypeAnnotation"}},t.breakStatement=function(e=null){return(0,r.default)({type:"BreakStatement",label:e})},t.callExpression=function(e,t){return(0,r.default)({type:"CallExpression",callee:e,arguments:t})},t.catchClause=function(e=null,t){return(0,r.default)({type:"CatchClause",param:e,body:t})},t.classAccessorProperty=function(e,t=null,n=null,a=null,i=!1,s=!1){return(0,r.default)({type:"ClassAccessorProperty",key:e,value:t,typeAnnotation:n,decorators:a,computed:i,static:s})},t.classBody=function(e){return(0,r.default)({type:"ClassBody",body:e})},t.classDeclaration=function(e,t=null,n,a=null){return(0,r.default)({type:"ClassDeclaration",id:e,superClass:t,body:n,decorators:a})},t.classExpression=function(e=null,t=null,n,a=null){return(0,r.default)({type:"ClassExpression",id:e,superClass:t,body:n,decorators:a})},t.classImplements=function(e,t=null){return(0,r.default)({type:"ClassImplements",id:e,typeParameters:t})},t.classMethod=function(e="method",t,n,a,i=!1,s=!1,o=!1,l=!1){return(0,r.default)({type:"ClassMethod",kind:e,key:t,params:n,body:a,computed:i,static:s,generator:o,async:l})},t.classPrivateMethod=function(e="method",t,n,a,i=!1){return(0,r.default)({type:"ClassPrivateMethod",kind:e,key:t,params:n,body:a,static:i})},t.classPrivateProperty=function(e,t=null,n=null,a){return(0,r.default)({type:"ClassPrivateProperty",key:e,value:t,decorators:n,static:a})},t.classProperty=function(e,t=null,n=null,a=null,i=!1,s=!1){return(0,r.default)({type:"ClassProperty",key:e,value:t,typeAnnotation:n,decorators:a,computed:i,static:s})},t.conditionalExpression=function(e,t,n){return(0,r.default)({type:"ConditionalExpression",test:e,consequent:t,alternate:n})},t.continueStatement=function(e=null){return(0,r.default)({type:"ContinueStatement",label:e})},t.debuggerStatement=function(){return{type:"DebuggerStatement"}},t.decimalLiteral=function(e){return(0,r.default)({type:"DecimalLiteral",value:e})},t.declareClass=function(e,t=null,n=null,a){return(0,r.default)({type:"DeclareClass",id:e,typeParameters:t,extends:n,body:a})},t.declareExportAllDeclaration=function(e){return(0,r.default)({type:"DeclareExportAllDeclaration",source:e})},t.declareExportDeclaration=function(e=null,t=null,n=null){return(0,r.default)({type:"DeclareExportDeclaration",declaration:e,specifiers:t,source:n})},t.declareFunction=function(e){return(0,r.default)({type:"DeclareFunction",id:e})},t.declareInterface=function(e,t=null,n=null,a){return(0,r.default)({type:"DeclareInterface",id:e,typeParameters:t,extends:n,body:a})},t.declareModule=function(e,t,n=null){return(0,r.default)({type:"DeclareModule",id:e,body:t,kind:n})},t.declareModuleExports=function(e){return(0,r.default)({type:"DeclareModuleExports",typeAnnotation:e})},t.declareOpaqueType=function(e,t=null,n=null){return(0,r.default)({type:"DeclareOpaqueType",id:e,typeParameters:t,supertype:n})},t.declareTypeAlias=function(e,t=null,n){return(0,r.default)({type:"DeclareTypeAlias",id:e,typeParameters:t,right:n})},t.declareVariable=function(e){return(0,r.default)({type:"DeclareVariable",id:e})},t.declaredPredicate=function(e){return(0,r.default)({type:"DeclaredPredicate",value:e})},t.decorator=function(e){return(0,r.default)({type:"Decorator",expression:e})},t.directive=function(e){return(0,r.default)({type:"Directive",value:e})},t.directiveLiteral=function(e){return(0,r.default)({type:"DirectiveLiteral",value:e})},t.doExpression=function(e,t=!1){return(0,r.default)({type:"DoExpression",body:e,async:t})},t.doWhileStatement=function(e,t){return(0,r.default)({type:"DoWhileStatement",test:e,body:t})},t.emptyStatement=function(){return{type:"EmptyStatement"}},t.emptyTypeAnnotation=function(){return{type:"EmptyTypeAnnotation"}},t.enumBooleanBody=function(e){return(0,r.default)({type:"EnumBooleanBody",members:e,explicitType:null,hasUnknownMembers:null})},t.enumBooleanMember=function(e){return(0,r.default)({type:"EnumBooleanMember",id:e,init:null})},t.enumDeclaration=function(e,t){return(0,r.default)({type:"EnumDeclaration",id:e,body:t})},t.enumDefaultedMember=function(e){return(0,r.default)({type:"EnumDefaultedMember",id:e})},t.enumNumberBody=function(e){return(0,r.default)({type:"EnumNumberBody",members:e,explicitType:null,hasUnknownMembers:null})},t.enumNumberMember=function(e,t){return(0,r.default)({type:"EnumNumberMember",id:e,init:t})},t.enumStringBody=function(e){return(0,r.default)({type:"EnumStringBody",members:e,explicitType:null,hasUnknownMembers:null})},t.enumStringMember=function(e,t){return(0,r.default)({type:"EnumStringMember",id:e,init:t})},t.enumSymbolBody=function(e){return(0,r.default)({type:"EnumSymbolBody",members:e,hasUnknownMembers:null})},t.existsTypeAnnotation=function(){return{type:"ExistsTypeAnnotation"}},t.exportAllDeclaration=function(e){return(0,r.default)({type:"ExportAllDeclaration",source:e})},t.exportDefaultDeclaration=function(e){return(0,r.default)({type:"ExportDefaultDeclaration",declaration:e})},t.exportDefaultSpecifier=function(e){return(0,r.default)({type:"ExportDefaultSpecifier",exported:e})},t.exportNamedDeclaration=function(e=null,t=[],n=null){return(0,r.default)({type:"ExportNamedDeclaration",declaration:e,specifiers:t,source:n})},t.exportNamespaceSpecifier=function(e){return(0,r.default)({type:"ExportNamespaceSpecifier",exported:e})},t.exportSpecifier=function(e,t){return(0,r.default)({type:"ExportSpecifier",local:e,exported:t})},t.expressionStatement=function(e){return(0,r.default)({type:"ExpressionStatement",expression:e})},t.file=function(e,t=null,n=null){return(0,r.default)({type:"File",program:e,comments:t,tokens:n})},t.forInStatement=function(e,t,n){return(0,r.default)({type:"ForInStatement",left:e,right:t,body:n})},t.forOfStatement=function(e,t,n,a=!1){return(0,r.default)({type:"ForOfStatement",left:e,right:t,body:n,await:a})},t.forStatement=function(e=null,t=null,n=null,a){return(0,r.default)({type:"ForStatement",init:e,test:t,update:n,body:a})},t.functionDeclaration=function(e=null,t,n,a=!1,i=!1){return(0,r.default)({type:"FunctionDeclaration",id:e,params:t,body:n,generator:a,async:i})},t.functionExpression=function(e=null,t,n,a=!1,i=!1){return(0,r.default)({type:"FunctionExpression",id:e,params:t,body:n,generator:a,async:i})},t.functionTypeAnnotation=function(e=null,t,n=null,a){return(0,r.default)({type:"FunctionTypeAnnotation",typeParameters:e,params:t,rest:n,returnType:a})},t.functionTypeParam=function(e=null,t){return(0,r.default)({type:"FunctionTypeParam",name:e,typeAnnotation:t})},t.genericTypeAnnotation=function(e,t=null){return(0,r.default)({type:"GenericTypeAnnotation",id:e,typeParameters:t})},t.identifier=function(e){return(0,r.default)({type:"Identifier",name:e})},t.ifStatement=function(e,t,n=null){return(0,r.default)({type:"IfStatement",test:e,consequent:t,alternate:n})},t.import=function(){return{type:"Import"}},t.importAttribute=function(e,t){return(0,r.default)({type:"ImportAttribute",key:e,value:t})},t.importDeclaration=function(e,t){return(0,r.default)({type:"ImportDeclaration",specifiers:e,source:t})},t.importDefaultSpecifier=function(e){return(0,r.default)({type:"ImportDefaultSpecifier",local:e})},t.importNamespaceSpecifier=function(e){return(0,r.default)({type:"ImportNamespaceSpecifier",local:e})},t.importSpecifier=function(e,t){return(0,r.default)({type:"ImportSpecifier",local:e,imported:t})},t.indexedAccessType=function(e,t){return(0,r.default)({type:"IndexedAccessType",objectType:e,indexType:t})},t.inferredPredicate=function(){return{type:"InferredPredicate"}},t.interfaceDeclaration=function(e,t=null,n=null,a){return(0,r.default)({type:"InterfaceDeclaration",id:e,typeParameters:t,extends:n,body:a})},t.interfaceExtends=function(e,t=null){return(0,r.default)({type:"InterfaceExtends",id:e,typeParameters:t})},t.interfaceTypeAnnotation=function(e=null,t){return(0,r.default)({type:"InterfaceTypeAnnotation",extends:e,body:t})},t.interpreterDirective=function(e){return(0,r.default)({type:"InterpreterDirective",value:e})},t.intersectionTypeAnnotation=function(e){return(0,r.default)({type:"IntersectionTypeAnnotation",types:e})},t.jSXAttribute=t.jsxAttribute=function(e,t=null){return(0,r.default)({type:"JSXAttribute",name:e,value:t})},t.jSXClosingElement=t.jsxClosingElement=function(e){return(0,r.default)({type:"JSXClosingElement",name:e})},t.jSXClosingFragment=t.jsxClosingFragment=function(){return{type:"JSXClosingFragment"}},t.jSXElement=t.jsxElement=function(e,t=null,n,a=null){return(0,r.default)({type:"JSXElement",openingElement:e,closingElement:t,children:n,selfClosing:a})},t.jSXEmptyExpression=t.jsxEmptyExpression=function(){return{type:"JSXEmptyExpression"}},t.jSXExpressionContainer=t.jsxExpressionContainer=function(e){return(0,r.default)({type:"JSXExpressionContainer",expression:e})},t.jSXFragment=t.jsxFragment=function(e,t,n){return(0,r.default)({type:"JSXFragment",openingFragment:e,closingFragment:t,children:n})},t.jSXIdentifier=t.jsxIdentifier=function(e){return(0,r.default)({type:"JSXIdentifier",name:e})},t.jSXMemberExpression=t.jsxMemberExpression=function(e,t){return(0,r.default)({type:"JSXMemberExpression",object:e,property:t})},t.jSXNamespacedName=t.jsxNamespacedName=function(e,t){return(0,r.default)({type:"JSXNamespacedName",namespace:e,name:t})},t.jSXOpeningElement=t.jsxOpeningElement=function(e,t,n=!1){return(0,r.default)({type:"JSXOpeningElement",name:e,attributes:t,selfClosing:n})},t.jSXOpeningFragment=t.jsxOpeningFragment=function(){return{type:"JSXOpeningFragment"}},t.jSXSpreadAttribute=t.jsxSpreadAttribute=function(e){return(0,r.default)({type:"JSXSpreadAttribute",argument:e})},t.jSXSpreadChild=t.jsxSpreadChild=function(e){return(0,r.default)({type:"JSXSpreadChild",expression:e})},t.jSXText=t.jsxText=function(e){return(0,r.default)({type:"JSXText",value:e})},t.labeledStatement=function(e,t){return(0,r.default)({type:"LabeledStatement",label:e,body:t})},t.logicalExpression=function(e,t,n){return(0,r.default)({type:"LogicalExpression",operator:e,left:t,right:n})},t.memberExpression=function(e,t,n=!1,a=null){return(0,r.default)({type:"MemberExpression",object:e,property:t,computed:n,optional:a})},t.metaProperty=function(e,t){return(0,r.default)({type:"MetaProperty",meta:e,property:t})},t.mixedTypeAnnotation=function(){return{type:"MixedTypeAnnotation"}},t.moduleExpression=function(e){return(0,r.default)({type:"ModuleExpression",body:e})},t.newExpression=function(e,t){return(0,r.default)({type:"NewExpression",callee:e,arguments:t})},t.noop=function(){return{type:"Noop"}},t.nullLiteral=function(){return{type:"NullLiteral"}},t.nullLiteralTypeAnnotation=function(){return{type:"NullLiteralTypeAnnotation"}},t.nullableTypeAnnotation=function(e){return(0,r.default)({type:"NullableTypeAnnotation",typeAnnotation:e})},t.numberLiteral=function(e){return console.trace("The node type NumberLiteral has been renamed to NumericLiteral"),a(e)},t.numberLiteralTypeAnnotation=function(e){return(0,r.default)({type:"NumberLiteralTypeAnnotation",value:e})},t.numberTypeAnnotation=function(){return{type:"NumberTypeAnnotation"}},t.numericLiteral=a,t.objectExpression=function(e){return(0,r.default)({type:"ObjectExpression",properties:e})},t.objectMethod=function(e="method",t,n,a,i=!1,s=!1,o=!1){return(0,r.default)({type:"ObjectMethod",kind:e,key:t,params:n,body:a,computed:i,generator:s,async:o})},t.objectPattern=function(e){return(0,r.default)({type:"ObjectPattern",properties:e})},t.objectProperty=function(e,t,n=!1,a=!1,i=null){return(0,r.default)({type:"ObjectProperty",key:e,value:t,computed:n,shorthand:a,decorators:i})},t.objectTypeAnnotation=function(e,t=[],n=[],a=[],i=!1){return(0,r.default)({type:"ObjectTypeAnnotation",properties:e,indexers:t,callProperties:n,internalSlots:a,exact:i})},t.objectTypeCallProperty=function(e){return(0,r.default)({type:"ObjectTypeCallProperty",value:e,static:null})},t.objectTypeIndexer=function(e=null,t,n,a=null){return(0,r.default)({type:"ObjectTypeIndexer",id:e,key:t,value:n,variance:a,static:null})},t.objectTypeInternalSlot=function(e,t,n,a,i){return(0,r.default)({type:"ObjectTypeInternalSlot",id:e,value:t,optional:n,static:a,method:i})},t.objectTypeProperty=function(e,t,n=null){return(0,r.default)({type:"ObjectTypeProperty",key:e,value:t,variance:n,kind:null,method:null,optional:null,proto:null,static:null})},t.objectTypeSpreadProperty=function(e){return(0,r.default)({type:"ObjectTypeSpreadProperty",argument:e})},t.opaqueType=function(e,t=null,n=null,a){return(0,r.default)({type:"OpaqueType",id:e,typeParameters:t,supertype:n,impltype:a})},t.optionalCallExpression=function(e,t,n){return(0,r.default)({type:"OptionalCallExpression",callee:e,arguments:t,optional:n})},t.optionalIndexedAccessType=function(e,t){return(0,r.default)({type:"OptionalIndexedAccessType",objectType:e,indexType:t,optional:null})},t.optionalMemberExpression=function(e,t,n=!1,a){return(0,r.default)({type:"OptionalMemberExpression",object:e,property:t,computed:n,optional:a})},t.parenthesizedExpression=function(e){return(0,r.default)({type:"ParenthesizedExpression",expression:e})},t.pipelineBareFunction=function(e){return(0,r.default)({type:"PipelineBareFunction",callee:e})},t.pipelinePrimaryTopicReference=function(){return{type:"PipelinePrimaryTopicReference"}},t.pipelineTopicExpression=function(e){return(0,r.default)({type:"PipelineTopicExpression",expression:e})},t.placeholder=function(e,t){return(0,r.default)({type:"Placeholder",expectedNode:e,name:t})},t.privateName=function(e){return(0,r.default)({type:"PrivateName",id:e})},t.program=function(e,t=[],n="script",a=null){return(0,r.default)({type:"Program",body:e,directives:t,sourceType:n,interpreter:a,sourceFile:null})},t.qualifiedTypeIdentifier=function(e,t){return(0,r.default)({type:"QualifiedTypeIdentifier",id:e,qualification:t})},t.recordExpression=function(e){return(0,r.default)({type:"RecordExpression",properties:e})},t.regExpLiteral=i,t.regexLiteral=function(e,t=""){return console.trace("The node type RegexLiteral has been renamed to RegExpLiteral"),i(e,t)},t.restElement=s,t.restProperty=function(e){return console.trace("The node type RestProperty has been renamed to RestElement"),s(e)},t.returnStatement=function(e=null){return(0,r.default)({type:"ReturnStatement",argument:e})},t.sequenceExpression=function(e){return(0,r.default)({type:"SequenceExpression",expressions:e})},t.spreadElement=o,t.spreadProperty=function(e){return console.trace("The node type SpreadProperty has been renamed to SpreadElement"),o(e)},t.staticBlock=function(e){return(0,r.default)({type:"StaticBlock",body:e})},t.stringLiteral=function(e){return(0,r.default)({type:"StringLiteral",value:e})},t.stringLiteralTypeAnnotation=function(e){return(0,r.default)({type:"StringLiteralTypeAnnotation",value:e})},t.stringTypeAnnotation=function(){return{type:"StringTypeAnnotation"}},t.super=function(){return{type:"Super"}},t.switchCase=function(e=null,t){return(0,r.default)({type:"SwitchCase",test:e,consequent:t})},t.switchStatement=function(e,t){return(0,r.default)({type:"SwitchStatement",discriminant:e,cases:t})},t.symbolTypeAnnotation=function(){return{type:"SymbolTypeAnnotation"}},t.taggedTemplateExpression=function(e,t){return(0,r.default)({type:"TaggedTemplateExpression",tag:e,quasi:t})},t.templateElement=function(e,t=!1){return(0,r.default)({type:"TemplateElement",value:e,tail:t})},t.templateLiteral=function(e,t){return(0,r.default)({type:"TemplateLiteral",quasis:e,expressions:t})},t.thisExpression=function(){return{type:"ThisExpression"}},t.thisTypeAnnotation=function(){return{type:"ThisTypeAnnotation"}},t.throwStatement=function(e){return(0,r.default)({type:"ThrowStatement",argument:e})},t.topicReference=function(){return{type:"TopicReference"}},t.tryStatement=function(e,t=null,n=null){return(0,r.default)({type:"TryStatement",block:e,handler:t,finalizer:n})},t.tSAnyKeyword=t.tsAnyKeyword=function(){return{type:"TSAnyKeyword"}},t.tSArrayType=t.tsArrayType=function(e){return(0,r.default)({type:"TSArrayType",elementType:e})},t.tSAsExpression=t.tsAsExpression=function(e,t){return(0,r.default)({type:"TSAsExpression",expression:e,typeAnnotation:t})},t.tSBigIntKeyword=t.tsBigIntKeyword=function(){return{type:"TSBigIntKeyword"}},t.tSBooleanKeyword=t.tsBooleanKeyword=function(){return{type:"TSBooleanKeyword"}},t.tSCallSignatureDeclaration=t.tsCallSignatureDeclaration=function(e=null,t,n=null){return(0,r.default)({type:"TSCallSignatureDeclaration",typeParameters:e,parameters:t,typeAnnotation:n})},t.tSConditionalType=t.tsConditionalType=function(e,t,n,a){return(0,r.default)({type:"TSConditionalType",checkType:e,extendsType:t,trueType:n,falseType:a})},t.tSConstructSignatureDeclaration=t.tsConstructSignatureDeclaration=function(e=null,t,n=null){return(0,r.default)({type:"TSConstructSignatureDeclaration",typeParameters:e,parameters:t,typeAnnotation:n})},t.tSConstructorType=t.tsConstructorType=function(e=null,t,n=null){return(0,r.default)({type:"TSConstructorType",typeParameters:e,parameters:t,typeAnnotation:n})},t.tSDeclareFunction=t.tsDeclareFunction=function(e=null,t=null,n,a=null){return(0,r.default)({type:"TSDeclareFunction",id:e,typeParameters:t,params:n,returnType:a})},t.tSDeclareMethod=t.tsDeclareMethod=function(e=null,t,n=null,a,i=null){return(0,r.default)({type:"TSDeclareMethod",decorators:e,key:t,typeParameters:n,params:a,returnType:i})},t.tSEnumDeclaration=t.tsEnumDeclaration=function(e,t){return(0,r.default)({type:"TSEnumDeclaration",id:e,members:t})},t.tSEnumMember=t.tsEnumMember=function(e,t=null){return(0,r.default)({type:"TSEnumMember",id:e,initializer:t})},t.tSExportAssignment=t.tsExportAssignment=function(e){return(0,r.default)({type:"TSExportAssignment",expression:e})},t.tSExpressionWithTypeArguments=t.tsExpressionWithTypeArguments=function(e,t=null){return(0,r.default)({type:"TSExpressionWithTypeArguments",expression:e,typeParameters:t})},t.tSExternalModuleReference=t.tsExternalModuleReference=function(e){return(0,r.default)({type:"TSExternalModuleReference",expression:e})},t.tSFunctionType=t.tsFunctionType=function(e=null,t,n=null){return(0,r.default)({type:"TSFunctionType",typeParameters:e,parameters:t,typeAnnotation:n})},t.tSImportEqualsDeclaration=t.tsImportEqualsDeclaration=function(e,t){return(0,r.default)({type:"TSImportEqualsDeclaration",id:e,moduleReference:t,isExport:null})},t.tSImportType=t.tsImportType=function(e,t=null,n=null){return(0,r.default)({type:"TSImportType",argument:e,qualifier:t,typeParameters:n})},t.tSIndexSignature=t.tsIndexSignature=function(e,t=null){return(0,r.default)({type:"TSIndexSignature",parameters:e,typeAnnotation:t})},t.tSIndexedAccessType=t.tsIndexedAccessType=function(e,t){return(0,r.default)({type:"TSIndexedAccessType",objectType:e,indexType:t})},t.tSInferType=t.tsInferType=function(e){return(0,r.default)({type:"TSInferType",typeParameter:e})},t.tSInterfaceBody=t.tsInterfaceBody=function(e){return(0,r.default)({type:"TSInterfaceBody",body:e})},t.tSInterfaceDeclaration=t.tsInterfaceDeclaration=function(e,t=null,n=null,a){return(0,r.default)({type:"TSInterfaceDeclaration",id:e,typeParameters:t,extends:n,body:a})},t.tSIntersectionType=t.tsIntersectionType=function(e){return(0,r.default)({type:"TSIntersectionType",types:e})},t.tSIntrinsicKeyword=t.tsIntrinsicKeyword=function(){return{type:"TSIntrinsicKeyword"}},t.tSLiteralType=t.tsLiteralType=function(e){return(0,r.default)({type:"TSLiteralType",literal:e})},t.tSMappedType=t.tsMappedType=function(e,t=null,n=null){return(0,r.default)({type:"TSMappedType",typeParameter:e,typeAnnotation:t,nameType:n})},t.tSMethodSignature=t.tsMethodSignature=function(e,t=null,n,a=null){return(0,r.default)({type:"TSMethodSignature",key:e,typeParameters:t,parameters:n,typeAnnotation:a,kind:null})},t.tSModuleBlock=t.tsModuleBlock=function(e){return(0,r.default)({type:"TSModuleBlock",body:e})},t.tSModuleDeclaration=t.tsModuleDeclaration=function(e,t){return(0,r.default)({type:"TSModuleDeclaration",id:e,body:t})},t.tSNamedTupleMember=t.tsNamedTupleMember=function(e,t,n=!1){return(0,r.default)({type:"TSNamedTupleMember",label:e,elementType:t,optional:n})},t.tSNamespaceExportDeclaration=t.tsNamespaceExportDeclaration=function(e){return(0,r.default)({type:"TSNamespaceExportDeclaration",id:e})},t.tSNeverKeyword=t.tsNeverKeyword=function(){return{type:"TSNeverKeyword"}},t.tSNonNullExpression=t.tsNonNullExpression=function(e){return(0,r.default)({type:"TSNonNullExpression",expression:e})},t.tSNullKeyword=t.tsNullKeyword=function(){return{type:"TSNullKeyword"}},t.tSNumberKeyword=t.tsNumberKeyword=function(){return{type:"TSNumberKeyword"}},t.tSObjectKeyword=t.tsObjectKeyword=function(){return{type:"TSObjectKeyword"}},t.tSOptionalType=t.tsOptionalType=function(e){return(0,r.default)({type:"TSOptionalType",typeAnnotation:e})},t.tSParameterProperty=t.tsParameterProperty=function(e){return(0,r.default)({type:"TSParameterProperty",parameter:e})},t.tSParenthesizedType=t.tsParenthesizedType=function(e){return(0,r.default)({type:"TSParenthesizedType",typeAnnotation:e})},t.tSPropertySignature=t.tsPropertySignature=function(e,t=null,n=null){return(0,r.default)({type:"TSPropertySignature",key:e,typeAnnotation:t,initializer:n,kind:null})},t.tSQualifiedName=t.tsQualifiedName=function(e,t){return(0,r.default)({type:"TSQualifiedName",left:e,right:t})},t.tSRestType=t.tsRestType=function(e){return(0,r.default)({type:"TSRestType",typeAnnotation:e})},t.tSStringKeyword=t.tsStringKeyword=function(){return{type:"TSStringKeyword"}},t.tSSymbolKeyword=t.tsSymbolKeyword=function(){return{type:"TSSymbolKeyword"}},t.tSThisType=t.tsThisType=function(){return{type:"TSThisType"}},t.tSTupleType=t.tsTupleType=function(e){return(0,r.default)({type:"TSTupleType",elementTypes:e})},t.tSTypeAliasDeclaration=t.tsTypeAliasDeclaration=function(e,t=null,n){return(0,r.default)({type:"TSTypeAliasDeclaration",id:e,typeParameters:t,typeAnnotation:n})},t.tSTypeAnnotation=t.tsTypeAnnotation=function(e){return(0,r.default)({type:"TSTypeAnnotation",typeAnnotation:e})},t.tSTypeAssertion=t.tsTypeAssertion=function(e,t){return(0,r.default)({type:"TSTypeAssertion",typeAnnotation:e,expression:t})},t.tSTypeLiteral=t.tsTypeLiteral=function(e){return(0,r.default)({type:"TSTypeLiteral",members:e})},t.tSTypeOperator=t.tsTypeOperator=function(e){return(0,r.default)({type:"TSTypeOperator",typeAnnotation:e,operator:null})},t.tSTypeParameter=t.tsTypeParameter=function(e=null,t=null,n){return(0,r.default)({type:"TSTypeParameter",constraint:e,default:t,name:n})},t.tSTypeParameterDeclaration=t.tsTypeParameterDeclaration=function(e){return(0,r.default)({type:"TSTypeParameterDeclaration",params:e})},t.tSTypeParameterInstantiation=t.tsTypeParameterInstantiation=function(e){return(0,r.default)({type:"TSTypeParameterInstantiation",params:e})},t.tSTypePredicate=t.tsTypePredicate=function(e,t=null,n=null){return(0,r.default)({type:"TSTypePredicate",parameterName:e,typeAnnotation:t,asserts:n})},t.tSTypeQuery=t.tsTypeQuery=function(e){return(0,r.default)({type:"TSTypeQuery",exprName:e})},t.tSTypeReference=t.tsTypeReference=function(e,t=null){return(0,r.default)({type:"TSTypeReference",typeName:e,typeParameters:t})},t.tSUndefinedKeyword=t.tsUndefinedKeyword=function(){return{type:"TSUndefinedKeyword"}},t.tSUnionType=t.tsUnionType=function(e){return(0,r.default)({type:"TSUnionType",types:e})},t.tSUnknownKeyword=t.tsUnknownKeyword=function(){return{type:"TSUnknownKeyword"}},t.tSVoidKeyword=t.tsVoidKeyword=function(){return{type:"TSVoidKeyword"}},t.tupleExpression=function(e=[]){return(0,r.default)({type:"TupleExpression",elements:e})},t.tupleTypeAnnotation=function(e){return(0,r.default)({type:"TupleTypeAnnotation",types:e})},t.typeAlias=function(e,t=null,n){return(0,r.default)({type:"TypeAlias",id:e,typeParameters:t,right:n})},t.typeAnnotation=function(e){return(0,r.default)({type:"TypeAnnotation",typeAnnotation:e})},t.typeCastExpression=function(e,t){return(0,r.default)({type:"TypeCastExpression",expression:e,typeAnnotation:t})},t.typeParameter=function(e=null,t=null,n=null){return(0,r.default)({type:"TypeParameter",bound:e,default:t,variance:n,name:null})},t.typeParameterDeclaration=function(e){return(0,r.default)({type:"TypeParameterDeclaration",params:e})},t.typeParameterInstantiation=function(e){return(0,r.default)({type:"TypeParameterInstantiation",params:e})},t.typeofTypeAnnotation=function(e){return(0,r.default)({type:"TypeofTypeAnnotation",argument:e})},t.unaryExpression=function(e,t,n=!0){return(0,r.default)({type:"UnaryExpression",operator:e,argument:t,prefix:n})},t.unionTypeAnnotation=function(e){return(0,r.default)({type:"UnionTypeAnnotation",types:e})},t.updateExpression=function(e,t,n=!1){return(0,r.default)({type:"UpdateExpression",operator:e,argument:t,prefix:n})},t.v8IntrinsicIdentifier=function(e){return(0,r.default)({type:"V8IntrinsicIdentifier",name:e})},t.variableDeclaration=function(e,t){return(0,r.default)({type:"VariableDeclaration",kind:e,declarations:t})},t.variableDeclarator=function(e,t=null){return(0,r.default)({type:"VariableDeclarator",id:e,init:t})},t.variance=function(e){return(0,r.default)({type:"Variance",kind:e})},t.voidTypeAnnotation=function(){return{type:"VoidTypeAnnotation"}},t.whileStatement=function(e,t){return(0,r.default)({type:"WhileStatement",test:e,body:t})},t.withStatement=function(e,t){return(0,r.default)({type:"WithStatement",object:e,body:t})},t.yieldExpression=function(e=null,t=!1){return(0,r.default)({type:"YieldExpression",argument:e,delegate:t})};var r=n(59969);function a(e){return(0,r.default)({type:"NumericLiteral",value:e})}function i(e,t=""){return(0,r.default)({type:"RegExpLiteral",pattern:e,flags:t})}function s(e){return(0,r.default)({type:"RestElement",argument:e})}function o(e){return(0,r.default)({type:"SpreadElement",argument:e})}},86104:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"AnyTypeAnnotation",{enumerable:!0,get:function(){return r.anyTypeAnnotation}}),Object.defineProperty(t,"ArgumentPlaceholder",{enumerable:!0,get:function(){return r.argumentPlaceholder}}),Object.defineProperty(t,"ArrayExpression",{enumerable:!0,get:function(){return r.arrayExpression}}),Object.defineProperty(t,"ArrayPattern",{enumerable:!0,get:function(){return r.arrayPattern}}),Object.defineProperty(t,"ArrayTypeAnnotation",{enumerable:!0,get:function(){return r.arrayTypeAnnotation}}),Object.defineProperty(t,"ArrowFunctionExpression",{enumerable:!0,get:function(){return r.arrowFunctionExpression}}),Object.defineProperty(t,"AssignmentExpression",{enumerable:!0,get:function(){return r.assignmentExpression}}),Object.defineProperty(t,"AssignmentPattern",{enumerable:!0,get:function(){return r.assignmentPattern}}),Object.defineProperty(t,"AwaitExpression",{enumerable:!0,get:function(){return r.awaitExpression}}),Object.defineProperty(t,"BigIntLiteral",{enumerable:!0,get:function(){return r.bigIntLiteral}}),Object.defineProperty(t,"BinaryExpression",{enumerable:!0,get:function(){return r.binaryExpression}}),Object.defineProperty(t,"BindExpression",{enumerable:!0,get:function(){return r.bindExpression}}),Object.defineProperty(t,"BlockStatement",{enumerable:!0,get:function(){return r.blockStatement}}),Object.defineProperty(t,"BooleanLiteral",{enumerable:!0,get:function(){return r.booleanLiteral}}),Object.defineProperty(t,"BooleanLiteralTypeAnnotation",{enumerable:!0,get:function(){return r.booleanLiteralTypeAnnotation}}),Object.defineProperty(t,"BooleanTypeAnnotation",{enumerable:!0,get:function(){return r.booleanTypeAnnotation}}),Object.defineProperty(t,"BreakStatement",{enumerable:!0,get:function(){return r.breakStatement}}),Object.defineProperty(t,"CallExpression",{enumerable:!0,get:function(){return r.callExpression}}),Object.defineProperty(t,"CatchClause",{enumerable:!0,get:function(){return r.catchClause}}),Object.defineProperty(t,"ClassAccessorProperty",{enumerable:!0,get:function(){return r.classAccessorProperty}}),Object.defineProperty(t,"ClassBody",{enumerable:!0,get:function(){return r.classBody}}),Object.defineProperty(t,"ClassDeclaration",{enumerable:!0,get:function(){return r.classDeclaration}}),Object.defineProperty(t,"ClassExpression",{enumerable:!0,get:function(){return r.classExpression}}),Object.defineProperty(t,"ClassImplements",{enumerable:!0,get:function(){return r.classImplements}}),Object.defineProperty(t,"ClassMethod",{enumerable:!0,get:function(){return r.classMethod}}),Object.defineProperty(t,"ClassPrivateMethod",{enumerable:!0,get:function(){return r.classPrivateMethod}}),Object.defineProperty(t,"ClassPrivateProperty",{enumerable:!0,get:function(){return r.classPrivateProperty}}),Object.defineProperty(t,"ClassProperty",{enumerable:!0,get:function(){return r.classProperty}}),Object.defineProperty(t,"ConditionalExpression",{enumerable:!0,get:function(){return r.conditionalExpression}}),Object.defineProperty(t,"ContinueStatement",{enumerable:!0,get:function(){return r.continueStatement}}),Object.defineProperty(t,"DebuggerStatement",{enumerable:!0,get:function(){return r.debuggerStatement}}),Object.defineProperty(t,"DecimalLiteral",{enumerable:!0,get:function(){return r.decimalLiteral}}),Object.defineProperty(t,"DeclareClass",{enumerable:!0,get:function(){return r.declareClass}}),Object.defineProperty(t,"DeclareExportAllDeclaration",{enumerable:!0,get:function(){return r.declareExportAllDeclaration}}),Object.defineProperty(t,"DeclareExportDeclaration",{enumerable:!0,get:function(){return r.declareExportDeclaration}}),Object.defineProperty(t,"DeclareFunction",{enumerable:!0,get:function(){return r.declareFunction}}),Object.defineProperty(t,"DeclareInterface",{enumerable:!0,get:function(){return r.declareInterface}}),Object.defineProperty(t,"DeclareModule",{enumerable:!0,get:function(){return r.declareModule}}),Object.defineProperty(t,"DeclareModuleExports",{enumerable:!0,get:function(){return r.declareModuleExports}}),Object.defineProperty(t,"DeclareOpaqueType",{enumerable:!0,get:function(){return r.declareOpaqueType}}),Object.defineProperty(t,"DeclareTypeAlias",{enumerable:!0,get:function(){return r.declareTypeAlias}}),Object.defineProperty(t,"DeclareVariable",{enumerable:!0,get:function(){return r.declareVariable}}),Object.defineProperty(t,"DeclaredPredicate",{enumerable:!0,get:function(){return r.declaredPredicate}}),Object.defineProperty(t,"Decorator",{enumerable:!0,get:function(){return r.decorator}}),Object.defineProperty(t,"Directive",{enumerable:!0,get:function(){return r.directive}}),Object.defineProperty(t,"DirectiveLiteral",{enumerable:!0,get:function(){return r.directiveLiteral}}),Object.defineProperty(t,"DoExpression",{enumerable:!0,get:function(){return r.doExpression}}),Object.defineProperty(t,"DoWhileStatement",{enumerable:!0,get:function(){return r.doWhileStatement}}),Object.defineProperty(t,"EmptyStatement",{enumerable:!0,get:function(){return r.emptyStatement}}),Object.defineProperty(t,"EmptyTypeAnnotation",{enumerable:!0,get:function(){return r.emptyTypeAnnotation}}),Object.defineProperty(t,"EnumBooleanBody",{enumerable:!0,get:function(){return r.enumBooleanBody}}),Object.defineProperty(t,"EnumBooleanMember",{enumerable:!0,get:function(){return r.enumBooleanMember}}),Object.defineProperty(t,"EnumDeclaration",{enumerable:!0,get:function(){return r.enumDeclaration}}),Object.defineProperty(t,"EnumDefaultedMember",{enumerable:!0,get:function(){return r.enumDefaultedMember}}),Object.defineProperty(t,"EnumNumberBody",{enumerable:!0,get:function(){return r.enumNumberBody}}),Object.defineProperty(t,"EnumNumberMember",{enumerable:!0,get:function(){return r.enumNumberMember}}),Object.defineProperty(t,"EnumStringBody",{enumerable:!0,get:function(){return r.enumStringBody}}),Object.defineProperty(t,"EnumStringMember",{enumerable:!0,get:function(){return r.enumStringMember}}),Object.defineProperty(t,"EnumSymbolBody",{enumerable:!0,get:function(){return r.enumSymbolBody}}),Object.defineProperty(t,"ExistsTypeAnnotation",{enumerable:!0,get:function(){return r.existsTypeAnnotation}}),Object.defineProperty(t,"ExportAllDeclaration",{enumerable:!0,get:function(){return r.exportAllDeclaration}}),Object.defineProperty(t,"ExportDefaultDeclaration",{enumerable:!0,get:function(){return r.exportDefaultDeclaration}}),Object.defineProperty(t,"ExportDefaultSpecifier",{enumerable:!0,get:function(){return r.exportDefaultSpecifier}}),Object.defineProperty(t,"ExportNamedDeclaration",{enumerable:!0,get:function(){return r.exportNamedDeclaration}}),Object.defineProperty(t,"ExportNamespaceSpecifier",{enumerable:!0,get:function(){return r.exportNamespaceSpecifier}}),Object.defineProperty(t,"ExportSpecifier",{enumerable:!0,get:function(){return r.exportSpecifier}}),Object.defineProperty(t,"ExpressionStatement",{enumerable:!0,get:function(){return r.expressionStatement}}),Object.defineProperty(t,"File",{enumerable:!0,get:function(){return r.file}}),Object.defineProperty(t,"ForInStatement",{enumerable:!0,get:function(){return r.forInStatement}}),Object.defineProperty(t,"ForOfStatement",{enumerable:!0,get:function(){return r.forOfStatement}}),Object.defineProperty(t,"ForStatement",{enumerable:!0,get:function(){return r.forStatement}}),Object.defineProperty(t,"FunctionDeclaration",{enumerable:!0,get:function(){return r.functionDeclaration}}),Object.defineProperty(t,"FunctionExpression",{enumerable:!0,get:function(){return r.functionExpression}}),Object.defineProperty(t,"FunctionTypeAnnotation",{enumerable:!0,get:function(){return r.functionTypeAnnotation}}),Object.defineProperty(t,"FunctionTypeParam",{enumerable:!0,get:function(){return r.functionTypeParam}}),Object.defineProperty(t,"GenericTypeAnnotation",{enumerable:!0,get:function(){return r.genericTypeAnnotation}}),Object.defineProperty(t,"Identifier",{enumerable:!0,get:function(){return r.identifier}}),Object.defineProperty(t,"IfStatement",{enumerable:!0,get:function(){return r.ifStatement}}),Object.defineProperty(t,"Import",{enumerable:!0,get:function(){return r.import}}),Object.defineProperty(t,"ImportAttribute",{enumerable:!0,get:function(){return r.importAttribute}}),Object.defineProperty(t,"ImportDeclaration",{enumerable:!0,get:function(){return r.importDeclaration}}),Object.defineProperty(t,"ImportDefaultSpecifier",{enumerable:!0,get:function(){return r.importDefaultSpecifier}}),Object.defineProperty(t,"ImportNamespaceSpecifier",{enumerable:!0,get:function(){return r.importNamespaceSpecifier}}),Object.defineProperty(t,"ImportSpecifier",{enumerable:!0,get:function(){return r.importSpecifier}}),Object.defineProperty(t,"IndexedAccessType",{enumerable:!0,get:function(){return r.indexedAccessType}}),Object.defineProperty(t,"InferredPredicate",{enumerable:!0,get:function(){return r.inferredPredicate}}),Object.defineProperty(t,"InterfaceDeclaration",{enumerable:!0,get:function(){return r.interfaceDeclaration}}),Object.defineProperty(t,"InterfaceExtends",{enumerable:!0,get:function(){return r.interfaceExtends}}),Object.defineProperty(t,"InterfaceTypeAnnotation",{enumerable:!0,get:function(){return r.interfaceTypeAnnotation}}),Object.defineProperty(t,"InterpreterDirective",{enumerable:!0,get:function(){return r.interpreterDirective}}),Object.defineProperty(t,"IntersectionTypeAnnotation",{enumerable:!0,get:function(){return r.intersectionTypeAnnotation}}),Object.defineProperty(t,"JSXAttribute",{enumerable:!0,get:function(){return r.jsxAttribute}}),Object.defineProperty(t,"JSXClosingElement",{enumerable:!0,get:function(){return r.jsxClosingElement}}),Object.defineProperty(t,"JSXClosingFragment",{enumerable:!0,get:function(){return r.jsxClosingFragment}}),Object.defineProperty(t,"JSXElement",{enumerable:!0,get:function(){return r.jsxElement}}),Object.defineProperty(t,"JSXEmptyExpression",{enumerable:!0,get:function(){return r.jsxEmptyExpression}}),Object.defineProperty(t,"JSXExpressionContainer",{enumerable:!0,get:function(){return r.jsxExpressionContainer}}),Object.defineProperty(t,"JSXFragment",{enumerable:!0,get:function(){return r.jsxFragment}}),Object.defineProperty(t,"JSXIdentifier",{enumerable:!0,get:function(){return r.jsxIdentifier}}),Object.defineProperty(t,"JSXMemberExpression",{enumerable:!0,get:function(){return r.jsxMemberExpression}}),Object.defineProperty(t,"JSXNamespacedName",{enumerable:!0,get:function(){return r.jsxNamespacedName}}),Object.defineProperty(t,"JSXOpeningElement",{enumerable:!0,get:function(){return r.jsxOpeningElement}}),Object.defineProperty(t,"JSXOpeningFragment",{enumerable:!0,get:function(){return r.jsxOpeningFragment}}),Object.defineProperty(t,"JSXSpreadAttribute",{enumerable:!0,get:function(){return r.jsxSpreadAttribute}}),Object.defineProperty(t,"JSXSpreadChild",{enumerable:!0,get:function(){return r.jsxSpreadChild}}),Object.defineProperty(t,"JSXText",{enumerable:!0,get:function(){return r.jsxText}}),Object.defineProperty(t,"LabeledStatement",{enumerable:!0,get:function(){return r.labeledStatement}}),Object.defineProperty(t,"LogicalExpression",{enumerable:!0,get:function(){return r.logicalExpression}}),Object.defineProperty(t,"MemberExpression",{enumerable:!0,get:function(){return r.memberExpression}}),Object.defineProperty(t,"MetaProperty",{enumerable:!0,get:function(){return r.metaProperty}}),Object.defineProperty(t,"MixedTypeAnnotation",{enumerable:!0,get:function(){return r.mixedTypeAnnotation}}),Object.defineProperty(t,"ModuleExpression",{enumerable:!0,get:function(){return r.moduleExpression}}),Object.defineProperty(t,"NewExpression",{enumerable:!0,get:function(){return r.newExpression}}),Object.defineProperty(t,"Noop",{enumerable:!0,get:function(){return r.noop}}),Object.defineProperty(t,"NullLiteral",{enumerable:!0,get:function(){return r.nullLiteral}}),Object.defineProperty(t,"NullLiteralTypeAnnotation",{enumerable:!0,get:function(){return r.nullLiteralTypeAnnotation}}),Object.defineProperty(t,"NullableTypeAnnotation",{enumerable:!0,get:function(){return r.nullableTypeAnnotation}}),Object.defineProperty(t,"NumberLiteral",{enumerable:!0,get:function(){return r.numberLiteral}}),Object.defineProperty(t,"NumberLiteralTypeAnnotation",{enumerable:!0,get:function(){return r.numberLiteralTypeAnnotation}}),Object.defineProperty(t,"NumberTypeAnnotation",{enumerable:!0,get:function(){return r.numberTypeAnnotation}}),Object.defineProperty(t,"NumericLiteral",{enumerable:!0,get:function(){return r.numericLiteral}}),Object.defineProperty(t,"ObjectExpression",{enumerable:!0,get:function(){return r.objectExpression}}),Object.defineProperty(t,"ObjectMethod",{enumerable:!0,get:function(){return r.objectMethod}}),Object.defineProperty(t,"ObjectPattern",{enumerable:!0,get:function(){return r.objectPattern}}),Object.defineProperty(t,"ObjectProperty",{enumerable:!0,get:function(){return r.objectProperty}}),Object.defineProperty(t,"ObjectTypeAnnotation",{enumerable:!0,get:function(){return r.objectTypeAnnotation}}),Object.defineProperty(t,"ObjectTypeCallProperty",{enumerable:!0,get:function(){return r.objectTypeCallProperty}}),Object.defineProperty(t,"ObjectTypeIndexer",{enumerable:!0,get:function(){return r.objectTypeIndexer}}),Object.defineProperty(t,"ObjectTypeInternalSlot",{enumerable:!0,get:function(){return r.objectTypeInternalSlot}}),Object.defineProperty(t,"ObjectTypeProperty",{enumerable:!0,get:function(){return r.objectTypeProperty}}),Object.defineProperty(t,"ObjectTypeSpreadProperty",{enumerable:!0,get:function(){return r.objectTypeSpreadProperty}}),Object.defineProperty(t,"OpaqueType",{enumerable:!0,get:function(){return r.opaqueType}}),Object.defineProperty(t,"OptionalCallExpression",{enumerable:!0,get:function(){return r.optionalCallExpression}}),Object.defineProperty(t,"OptionalIndexedAccessType",{enumerable:!0,get:function(){return r.optionalIndexedAccessType}}),Object.defineProperty(t,"OptionalMemberExpression",{enumerable:!0,get:function(){return r.optionalMemberExpression}}),Object.defineProperty(t,"ParenthesizedExpression",{enumerable:!0,get:function(){return r.parenthesizedExpression}}),Object.defineProperty(t,"PipelineBareFunction",{enumerable:!0,get:function(){return r.pipelineBareFunction}}),Object.defineProperty(t,"PipelinePrimaryTopicReference",{enumerable:!0,get:function(){return r.pipelinePrimaryTopicReference}}),Object.defineProperty(t,"PipelineTopicExpression",{enumerable:!0,get:function(){return r.pipelineTopicExpression}}),Object.defineProperty(t,"Placeholder",{enumerable:!0,get:function(){return r.placeholder}}),Object.defineProperty(t,"PrivateName",{enumerable:!0,get:function(){return r.privateName}}),Object.defineProperty(t,"Program",{enumerable:!0,get:function(){return r.program}}),Object.defineProperty(t,"QualifiedTypeIdentifier",{enumerable:!0,get:function(){return r.qualifiedTypeIdentifier}}),Object.defineProperty(t,"RecordExpression",{enumerable:!0,get:function(){return r.recordExpression}}),Object.defineProperty(t,"RegExpLiteral",{enumerable:!0,get:function(){return r.regExpLiteral}}),Object.defineProperty(t,"RegexLiteral",{enumerable:!0,get:function(){return r.regexLiteral}}),Object.defineProperty(t,"RestElement",{enumerable:!0,get:function(){return r.restElement}}),Object.defineProperty(t,"RestProperty",{enumerable:!0,get:function(){return r.restProperty}}),Object.defineProperty(t,"ReturnStatement",{enumerable:!0,get:function(){return r.returnStatement}}),Object.defineProperty(t,"SequenceExpression",{enumerable:!0,get:function(){return r.sequenceExpression}}),Object.defineProperty(t,"SpreadElement",{enumerable:!0,get:function(){return r.spreadElement}}),Object.defineProperty(t,"SpreadProperty",{enumerable:!0,get:function(){return r.spreadProperty}}),Object.defineProperty(t,"StaticBlock",{enumerable:!0,get:function(){return r.staticBlock}}),Object.defineProperty(t,"StringLiteral",{enumerable:!0,get:function(){return r.stringLiteral}}),Object.defineProperty(t,"StringLiteralTypeAnnotation",{enumerable:!0,get:function(){return r.stringLiteralTypeAnnotation}}),Object.defineProperty(t,"StringTypeAnnotation",{enumerable:!0,get:function(){return r.stringTypeAnnotation}}),Object.defineProperty(t,"Super",{enumerable:!0,get:function(){return r.super}}),Object.defineProperty(t,"SwitchCase",{enumerable:!0,get:function(){return r.switchCase}}),Object.defineProperty(t,"SwitchStatement",{enumerable:!0,get:function(){return r.switchStatement}}),Object.defineProperty(t,"SymbolTypeAnnotation",{enumerable:!0,get:function(){return r.symbolTypeAnnotation}}),Object.defineProperty(t,"TSAnyKeyword",{enumerable:!0,get:function(){return r.tsAnyKeyword}}),Object.defineProperty(t,"TSArrayType",{enumerable:!0,get:function(){return r.tsArrayType}}),Object.defineProperty(t,"TSAsExpression",{enumerable:!0,get:function(){return r.tsAsExpression}}),Object.defineProperty(t,"TSBigIntKeyword",{enumerable:!0,get:function(){return r.tsBigIntKeyword}}),Object.defineProperty(t,"TSBooleanKeyword",{enumerable:!0,get:function(){return r.tsBooleanKeyword}}),Object.defineProperty(t,"TSCallSignatureDeclaration",{enumerable:!0,get:function(){return r.tsCallSignatureDeclaration}}),Object.defineProperty(t,"TSConditionalType",{enumerable:!0,get:function(){return r.tsConditionalType}}),Object.defineProperty(t,"TSConstructSignatureDeclaration",{enumerable:!0,get:function(){return r.tsConstructSignatureDeclaration}}),Object.defineProperty(t,"TSConstructorType",{enumerable:!0,get:function(){return r.tsConstructorType}}),Object.defineProperty(t,"TSDeclareFunction",{enumerable:!0,get:function(){return r.tsDeclareFunction}}),Object.defineProperty(t,"TSDeclareMethod",{enumerable:!0,get:function(){return r.tsDeclareMethod}}),Object.defineProperty(t,"TSEnumDeclaration",{enumerable:!0,get:function(){return r.tsEnumDeclaration}}),Object.defineProperty(t,"TSEnumMember",{enumerable:!0,get:function(){return r.tsEnumMember}}),Object.defineProperty(t,"TSExportAssignment",{enumerable:!0,get:function(){return r.tsExportAssignment}}),Object.defineProperty(t,"TSExpressionWithTypeArguments",{enumerable:!0,get:function(){return r.tsExpressionWithTypeArguments}}),Object.defineProperty(t,"TSExternalModuleReference",{enumerable:!0,get:function(){return r.tsExternalModuleReference}}),Object.defineProperty(t,"TSFunctionType",{enumerable:!0,get:function(){return r.tsFunctionType}}),Object.defineProperty(t,"TSImportEqualsDeclaration",{enumerable:!0,get:function(){return r.tsImportEqualsDeclaration}}),Object.defineProperty(t,"TSImportType",{enumerable:!0,get:function(){return r.tsImportType}}),Object.defineProperty(t,"TSIndexSignature",{enumerable:!0,get:function(){return r.tsIndexSignature}}),Object.defineProperty(t,"TSIndexedAccessType",{enumerable:!0,get:function(){return r.tsIndexedAccessType}}),Object.defineProperty(t,"TSInferType",{enumerable:!0,get:function(){return r.tsInferType}}),Object.defineProperty(t,"TSInterfaceBody",{enumerable:!0,get:function(){return r.tsInterfaceBody}}),Object.defineProperty(t,"TSInterfaceDeclaration",{enumerable:!0,get:function(){return r.tsInterfaceDeclaration}}),Object.defineProperty(t,"TSIntersectionType",{enumerable:!0,get:function(){return r.tsIntersectionType}}),Object.defineProperty(t,"TSIntrinsicKeyword",{enumerable:!0,get:function(){return r.tsIntrinsicKeyword}}),Object.defineProperty(t,"TSLiteralType",{enumerable:!0,get:function(){return r.tsLiteralType}}),Object.defineProperty(t,"TSMappedType",{enumerable:!0,get:function(){return r.tsMappedType}}),Object.defineProperty(t,"TSMethodSignature",{enumerable:!0,get:function(){return r.tsMethodSignature}}),Object.defineProperty(t,"TSModuleBlock",{enumerable:!0,get:function(){return r.tsModuleBlock}}),Object.defineProperty(t,"TSModuleDeclaration",{enumerable:!0,get:function(){return r.tsModuleDeclaration}}),Object.defineProperty(t,"TSNamedTupleMember",{enumerable:!0,get:function(){return r.tsNamedTupleMember}}),Object.defineProperty(t,"TSNamespaceExportDeclaration",{enumerable:!0,get:function(){return r.tsNamespaceExportDeclaration}}),Object.defineProperty(t,"TSNeverKeyword",{enumerable:!0,get:function(){return r.tsNeverKeyword}}),Object.defineProperty(t,"TSNonNullExpression",{enumerable:!0,get:function(){return r.tsNonNullExpression}}),Object.defineProperty(t,"TSNullKeyword",{enumerable:!0,get:function(){return r.tsNullKeyword}}),Object.defineProperty(t,"TSNumberKeyword",{enumerable:!0,get:function(){return r.tsNumberKeyword}}),Object.defineProperty(t,"TSObjectKeyword",{enumerable:!0,get:function(){return r.tsObjectKeyword}}),Object.defineProperty(t,"TSOptionalType",{enumerable:!0,get:function(){return r.tsOptionalType}}),Object.defineProperty(t,"TSParameterProperty",{enumerable:!0,get:function(){return r.tsParameterProperty}}),Object.defineProperty(t,"TSParenthesizedType",{enumerable:!0,get:function(){return r.tsParenthesizedType}}),Object.defineProperty(t,"TSPropertySignature",{enumerable:!0,get:function(){return r.tsPropertySignature}}),Object.defineProperty(t,"TSQualifiedName",{enumerable:!0,get:function(){return r.tsQualifiedName}}),Object.defineProperty(t,"TSRestType",{enumerable:!0,get:function(){return r.tsRestType}}),Object.defineProperty(t,"TSStringKeyword",{enumerable:!0,get:function(){return r.tsStringKeyword}}),Object.defineProperty(t,"TSSymbolKeyword",{enumerable:!0,get:function(){return r.tsSymbolKeyword}}),Object.defineProperty(t,"TSThisType",{enumerable:!0,get:function(){return r.tsThisType}}),Object.defineProperty(t,"TSTupleType",{enumerable:!0,get:function(){return r.tsTupleType}}),Object.defineProperty(t,"TSTypeAliasDeclaration",{enumerable:!0,get:function(){return r.tsTypeAliasDeclaration}}),Object.defineProperty(t,"TSTypeAnnotation",{enumerable:!0,get:function(){return r.tsTypeAnnotation}}),Object.defineProperty(t,"TSTypeAssertion",{enumerable:!0,get:function(){return r.tsTypeAssertion}}),Object.defineProperty(t,"TSTypeLiteral",{enumerable:!0,get:function(){return r.tsTypeLiteral}}),Object.defineProperty(t,"TSTypeOperator",{enumerable:!0,get:function(){return r.tsTypeOperator}}),Object.defineProperty(t,"TSTypeParameter",{enumerable:!0,get:function(){return r.tsTypeParameter}}),Object.defineProperty(t,"TSTypeParameterDeclaration",{enumerable:!0,get:function(){return r.tsTypeParameterDeclaration}}),Object.defineProperty(t,"TSTypeParameterInstantiation",{enumerable:!0,get:function(){return r.tsTypeParameterInstantiation}}),Object.defineProperty(t,"TSTypePredicate",{enumerable:!0,get:function(){return r.tsTypePredicate}}),Object.defineProperty(t,"TSTypeQuery",{enumerable:!0,get:function(){return r.tsTypeQuery}}),Object.defineProperty(t,"TSTypeReference",{enumerable:!0,get:function(){return r.tsTypeReference}}),Object.defineProperty(t,"TSUndefinedKeyword",{enumerable:!0,get:function(){return r.tsUndefinedKeyword}}),Object.defineProperty(t,"TSUnionType",{enumerable:!0,get:function(){return r.tsUnionType}}),Object.defineProperty(t,"TSUnknownKeyword",{enumerable:!0,get:function(){return r.tsUnknownKeyword}}),Object.defineProperty(t,"TSVoidKeyword",{enumerable:!0,get:function(){return r.tsVoidKeyword}}),Object.defineProperty(t,"TaggedTemplateExpression",{enumerable:!0,get:function(){return r.taggedTemplateExpression}}),Object.defineProperty(t,"TemplateElement",{enumerable:!0,get:function(){return r.templateElement}}),Object.defineProperty(t,"TemplateLiteral",{enumerable:!0,get:function(){return r.templateLiteral}}),Object.defineProperty(t,"ThisExpression",{enumerable:!0,get:function(){return r.thisExpression}}),Object.defineProperty(t,"ThisTypeAnnotation",{enumerable:!0,get:function(){return r.thisTypeAnnotation}}),Object.defineProperty(t,"ThrowStatement",{enumerable:!0,get:function(){return r.throwStatement}}),Object.defineProperty(t,"TopicReference",{enumerable:!0,get:function(){return r.topicReference}}),Object.defineProperty(t,"TryStatement",{enumerable:!0,get:function(){return r.tryStatement}}),Object.defineProperty(t,"TupleExpression",{enumerable:!0,get:function(){return r.tupleExpression}}),Object.defineProperty(t,"TupleTypeAnnotation",{enumerable:!0,get:function(){return r.tupleTypeAnnotation}}),Object.defineProperty(t,"TypeAlias",{enumerable:!0,get:function(){return r.typeAlias}}),Object.defineProperty(t,"TypeAnnotation",{enumerable:!0,get:function(){return r.typeAnnotation}}),Object.defineProperty(t,"TypeCastExpression",{enumerable:!0,get:function(){return r.typeCastExpression}}),Object.defineProperty(t,"TypeParameter",{enumerable:!0,get:function(){return r.typeParameter}}),Object.defineProperty(t,"TypeParameterDeclaration",{enumerable:!0,get:function(){return r.typeParameterDeclaration}}),Object.defineProperty(t,"TypeParameterInstantiation",{enumerable:!0,get:function(){return r.typeParameterInstantiation}}),Object.defineProperty(t,"TypeofTypeAnnotation",{enumerable:!0,get:function(){return r.typeofTypeAnnotation}}),Object.defineProperty(t,"UnaryExpression",{enumerable:!0,get:function(){return r.unaryExpression}}),Object.defineProperty(t,"UnionTypeAnnotation",{enumerable:!0,get:function(){return r.unionTypeAnnotation}}),Object.defineProperty(t,"UpdateExpression",{enumerable:!0,get:function(){return r.updateExpression}}),Object.defineProperty(t,"V8IntrinsicIdentifier",{enumerable:!0,get:function(){return r.v8IntrinsicIdentifier}}),Object.defineProperty(t,"VariableDeclaration",{enumerable:!0,get:function(){return r.variableDeclaration}}),Object.defineProperty(t,"VariableDeclarator",{enumerable:!0,get:function(){return r.variableDeclarator}}),Object.defineProperty(t,"Variance",{enumerable:!0,get:function(){return r.variance}}),Object.defineProperty(t,"VoidTypeAnnotation",{enumerable:!0,get:function(){return r.voidTypeAnnotation}}),Object.defineProperty(t,"WhileStatement",{enumerable:!0,get:function(){return r.whileStatement}}),Object.defineProperty(t,"WithStatement",{enumerable:!0,get:function(){return r.withStatement}}),Object.defineProperty(t,"YieldExpression",{enumerable:!0,get:function(){return r.yieldExpression}});var r=n(34391)},88478:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){const t=[];for(let n=0;n{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){const t=e.map((e=>e.typeAnnotation)),n=(0,a.default)(t);return 1===n.length?n[0]:(0,r.tsUnionType)(n)};var r=n(34391),a=n(71954)},59969:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){const t=a.BUILDER_KEYS[e.type];for(const n of t)(0,r.default)(e,n,e[n]);return e};var r=n(43804),a=n(38218)},92363:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.default)(e,!1)};var r=n(46209)},96953:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.default)(e)};var r=n(46209)},90863:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.default)(e,!0,!0)};var r=n(46209)},46209:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=l;var r=n(46507),a=n(94746);const i=Function.call.bind(Object.prototype.hasOwnProperty);function s(e,t,n){return e&&"string"==typeof e.type?l(e,t,n):e}function o(e,t,n){return Array.isArray(e)?e.map((e=>s(e,t,n))):s(e,t,n)}function l(e,t=!0,n=!1){if(!e)return e;const{type:s}=e,l={type:e.type};if((0,a.isIdentifier)(e))l.name=e.name,i(e,"optional")&&"boolean"==typeof e.optional&&(l.optional=e.optional),i(e,"typeAnnotation")&&(l.typeAnnotation=t?o(e.typeAnnotation,!0,n):e.typeAnnotation);else{if(!i(r.NODE_FIELDS,s))throw new Error(`Unknown node type: "${s}"`);for(const c of Object.keys(r.NODE_FIELDS[s]))i(e,c)&&(l[c]=t?(0,a.isFile)(e)&&"comments"===c?p(e.comments,t,n):o(e[c],!0,n):e[c])}return i(e,"loc")&&(l.loc=n?null:e.loc),i(e,"leadingComments")&&(l.leadingComments=p(e.leadingComments,t,n)),i(e,"innerComments")&&(l.innerComments=p(e.innerComments,t,n)),i(e,"trailingComments")&&(l.trailingComments=p(e.trailingComments,t,n)),i(e,"extra")&&(l.extra=Object.assign({},e.extra)),l}function p(e,t,n){return e&&t?e.map((({type:e,value:t,loc:r})=>n?{type:e,value:t,loc:null}:{type:e,value:t,loc:r})):e}},30748:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.default)(e,!1,!0)};var r=n(46209)},99529:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n,a){return(0,r.default)(e,t,[{type:a?"CommentLine":"CommentBlock",value:n}])};var r=n(96182)},96182:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){if(!n||!e)return e;const r=`${t}Comments`;return e[r]?"leading"===t?e[r]=n.concat(e[r]):e[r].push(...n):e[r]=n,e}},6455:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){(0,r.default)("innerComments",e,t)};var r=n(8834)},91835:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){(0,r.default)("leadingComments",e,t)};var r=n(8834)},59653:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){(0,r.default)("trailingComments",e,t)};var r=n(8834)},29564:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){return(0,r.default)(e,t),(0,a.default)(e,t),(0,i.default)(e,t),e};var r=n(59653),a=n(91835),i=n(6455)},91200:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return r.COMMENT_KEYS.forEach((t=>{e[t]=null})),e};var r=n(36325)},18267:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WHILE_TYPES=t.USERWHITESPACABLE_TYPES=t.UNARYLIKE_TYPES=t.TYPESCRIPT_TYPES=t.TSTYPE_TYPES=t.TSTYPEELEMENT_TYPES=t.TSENTITYNAME_TYPES=t.TSBASETYPE_TYPES=t.TERMINATORLESS_TYPES=t.STATEMENT_TYPES=t.STANDARDIZED_TYPES=t.SCOPABLE_TYPES=t.PUREISH_TYPES=t.PROPERTY_TYPES=t.PRIVATE_TYPES=t.PATTERN_TYPES=t.PATTERNLIKE_TYPES=t.OBJECTMEMBER_TYPES=t.MODULESPECIFIER_TYPES=t.MODULEDECLARATION_TYPES=t.MISCELLANEOUS_TYPES=t.METHOD_TYPES=t.LVAL_TYPES=t.LOOP_TYPES=t.LITERAL_TYPES=t.JSX_TYPES=t.IMMUTABLE_TYPES=t.FUNCTION_TYPES=t.FUNCTIONPARENT_TYPES=t.FOR_TYPES=t.FORXSTATEMENT_TYPES=t.FLOW_TYPES=t.FLOWTYPE_TYPES=t.FLOWPREDICATE_TYPES=t.FLOWDECLARATION_TYPES=t.FLOWBASEANNOTATION_TYPES=t.EXPRESSION_TYPES=t.EXPRESSIONWRAPPER_TYPES=t.EXPORTDECLARATION_TYPES=t.ENUMMEMBER_TYPES=t.ENUMBODY_TYPES=t.DECLARATION_TYPES=t.CONDITIONAL_TYPES=t.COMPLETIONSTATEMENT_TYPES=t.CLASS_TYPES=t.BLOCK_TYPES=t.BLOCKPARENT_TYPES=t.BINARY_TYPES=t.ACCESSOR_TYPES=void 0;var r=n(46507);const a=r.FLIPPED_ALIAS_KEYS.Standardized;t.STANDARDIZED_TYPES=a;const i=r.FLIPPED_ALIAS_KEYS.Expression;t.EXPRESSION_TYPES=i;const s=r.FLIPPED_ALIAS_KEYS.Binary;t.BINARY_TYPES=s;const o=r.FLIPPED_ALIAS_KEYS.Scopable;t.SCOPABLE_TYPES=o;const l=r.FLIPPED_ALIAS_KEYS.BlockParent;t.BLOCKPARENT_TYPES=l;const p=r.FLIPPED_ALIAS_KEYS.Block;t.BLOCK_TYPES=p;const c=r.FLIPPED_ALIAS_KEYS.Statement;t.STATEMENT_TYPES=c;const u=r.FLIPPED_ALIAS_KEYS.Terminatorless;t.TERMINATORLESS_TYPES=u;const d=r.FLIPPED_ALIAS_KEYS.CompletionStatement;t.COMPLETIONSTATEMENT_TYPES=d;const f=r.FLIPPED_ALIAS_KEYS.Conditional;t.CONDITIONAL_TYPES=f;const y=r.FLIPPED_ALIAS_KEYS.Loop;t.LOOP_TYPES=y;const m=r.FLIPPED_ALIAS_KEYS.While;t.WHILE_TYPES=m;const h=r.FLIPPED_ALIAS_KEYS.ExpressionWrapper;t.EXPRESSIONWRAPPER_TYPES=h;const T=r.FLIPPED_ALIAS_KEYS.For;t.FOR_TYPES=T;const S=r.FLIPPED_ALIAS_KEYS.ForXStatement;t.FORXSTATEMENT_TYPES=S;const b=r.FLIPPED_ALIAS_KEYS.Function;t.FUNCTION_TYPES=b;const E=r.FLIPPED_ALIAS_KEYS.FunctionParent;t.FUNCTIONPARENT_TYPES=E;const P=r.FLIPPED_ALIAS_KEYS.Pureish;t.PUREISH_TYPES=P;const x=r.FLIPPED_ALIAS_KEYS.Declaration;t.DECLARATION_TYPES=x;const g=r.FLIPPED_ALIAS_KEYS.PatternLike;t.PATTERNLIKE_TYPES=g;const A=r.FLIPPED_ALIAS_KEYS.LVal;t.LVAL_TYPES=A;const v=r.FLIPPED_ALIAS_KEYS.TSEntityName;t.TSENTITYNAME_TYPES=v;const O=r.FLIPPED_ALIAS_KEYS.Literal;t.LITERAL_TYPES=O;const I=r.FLIPPED_ALIAS_KEYS.Immutable;t.IMMUTABLE_TYPES=I;const N=r.FLIPPED_ALIAS_KEYS.UserWhitespacable;t.USERWHITESPACABLE_TYPES=N;const D=r.FLIPPED_ALIAS_KEYS.Method;t.METHOD_TYPES=D;const C=r.FLIPPED_ALIAS_KEYS.ObjectMember;t.OBJECTMEMBER_TYPES=C;const w=r.FLIPPED_ALIAS_KEYS.Property;t.PROPERTY_TYPES=w;const L=r.FLIPPED_ALIAS_KEYS.UnaryLike;t.UNARYLIKE_TYPES=L;const j=r.FLIPPED_ALIAS_KEYS.Pattern;t.PATTERN_TYPES=j;const _=r.FLIPPED_ALIAS_KEYS.Class;t.CLASS_TYPES=_;const M=r.FLIPPED_ALIAS_KEYS.ModuleDeclaration;t.MODULEDECLARATION_TYPES=M;const k=r.FLIPPED_ALIAS_KEYS.ExportDeclaration;t.EXPORTDECLARATION_TYPES=k;const B=r.FLIPPED_ALIAS_KEYS.ModuleSpecifier;t.MODULESPECIFIER_TYPES=B;const F=r.FLIPPED_ALIAS_KEYS.Accessor;t.ACCESSOR_TYPES=F;const R=r.FLIPPED_ALIAS_KEYS.Private;t.PRIVATE_TYPES=R;const K=r.FLIPPED_ALIAS_KEYS.Flow;t.FLOW_TYPES=K;const V=r.FLIPPED_ALIAS_KEYS.FlowType;t.FLOWTYPE_TYPES=V;const Y=r.FLIPPED_ALIAS_KEYS.FlowBaseAnnotation;t.FLOWBASEANNOTATION_TYPES=Y;const U=r.FLIPPED_ALIAS_KEYS.FlowDeclaration;t.FLOWDECLARATION_TYPES=U;const X=r.FLIPPED_ALIAS_KEYS.FlowPredicate;t.FLOWPREDICATE_TYPES=X;const J=r.FLIPPED_ALIAS_KEYS.EnumBody;t.ENUMBODY_TYPES=J;const W=r.FLIPPED_ALIAS_KEYS.EnumMember;t.ENUMMEMBER_TYPES=W;const q=r.FLIPPED_ALIAS_KEYS.JSX;t.JSX_TYPES=q;const $=r.FLIPPED_ALIAS_KEYS.Miscellaneous;t.MISCELLANEOUS_TYPES=$;const G=r.FLIPPED_ALIAS_KEYS.TypeScript;t.TYPESCRIPT_TYPES=G;const z=r.FLIPPED_ALIAS_KEYS.TSTypeElement;t.TSTYPEELEMENT_TYPES=z;const H=r.FLIPPED_ALIAS_KEYS.TSType;t.TSTYPE_TYPES=H;const Q=r.FLIPPED_ALIAS_KEYS.TSBaseType;t.TSBASETYPE_TYPES=Q},36325:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.UPDATE_OPERATORS=t.UNARY_OPERATORS=t.STRING_UNARY_OPERATORS=t.STATEMENT_OR_BLOCK_KEYS=t.NUMBER_UNARY_OPERATORS=t.NUMBER_BINARY_OPERATORS=t.NOT_LOCAL_BINDING=t.LOGICAL_OPERATORS=t.INHERIT_KEYS=t.FOR_INIT_KEYS=t.FLATTENABLE_KEYS=t.EQUALITY_BINARY_OPERATORS=t.COMPARISON_BINARY_OPERATORS=t.COMMENT_KEYS=t.BOOLEAN_UNARY_OPERATORS=t.BOOLEAN_NUMBER_BINARY_OPERATORS=t.BOOLEAN_BINARY_OPERATORS=t.BLOCK_SCOPED_SYMBOL=t.BINARY_OPERATORS=t.ASSIGNMENT_OPERATORS=void 0,t.STATEMENT_OR_BLOCK_KEYS=["consequent","body","alternate"],t.FLATTENABLE_KEYS=["body","expressions"],t.FOR_INIT_KEYS=["left","init"],t.COMMENT_KEYS=["leadingComments","trailingComments","innerComments"];const n=["||","&&","??"];t.LOGICAL_OPERATORS=n,t.UPDATE_OPERATORS=["++","--"];const r=[">","<",">=","<="];t.BOOLEAN_NUMBER_BINARY_OPERATORS=r;const a=["==","===","!=","!=="];t.EQUALITY_BINARY_OPERATORS=a;const i=[...a,"in","instanceof"];t.COMPARISON_BINARY_OPERATORS=i;const s=[...i,...r];t.BOOLEAN_BINARY_OPERATORS=s;const o=["-","/","%","*","**","&","|",">>",">>>","<<","^"];t.NUMBER_BINARY_OPERATORS=o;const l=["+",...o,...s,"|>"];t.BINARY_OPERATORS=l;const p=["=","+=",...o.map((e=>e+"=")),...n.map((e=>e+"="))];t.ASSIGNMENT_OPERATORS=p;const c=["delete","!"];t.BOOLEAN_UNARY_OPERATORS=c;const u=["+","-","~"];t.NUMBER_UNARY_OPERATORS=u;const d=["typeof"];t.STRING_UNARY_OPERATORS=d;const f=["void","throw",...c,...u,...d];t.UNARY_OPERATORS=f,t.INHERIT_KEYS={optional:["typeAnnotation","typeParameters","returnType"],force:["start","loc","end"]};const y=Symbol.for("var used to be block scoped");t.BLOCK_SCOPED_SYMBOL=y;const m=Symbol.for("should not be considered a local binding");t.NOT_LOCAL_BINDING=m},44315:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t="body"){return e[t]=(0,r.default)(e[t],e)};var r=n(19276)},20696:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function e(t,n,o){const l=[];let p=!0;for(const c of t)if((0,a.isEmptyStatement)(c)||(p=!1),(0,a.isExpression)(c))l.push(c);else if((0,a.isExpressionStatement)(c))l.push(c.expression);else if((0,a.isVariableDeclaration)(c)){if("var"!==c.kind)return;for(const e of c.declarations){const t=(0,r.default)(e);for(const e of Object.keys(t))o.push({kind:c.kind,id:(0,s.default)(t[e])});e.init&&l.push((0,i.assignmentExpression)("=",e.id,e.init))}p=!0}else if((0,a.isIfStatement)(c)){const t=c.consequent?e([c.consequent],n,o):n.buildUndefinedNode(),r=c.alternate?e([c.alternate],n,o):n.buildUndefinedNode();if(!t||!r)return;l.push((0,i.conditionalExpression)(c.test,t,r))}else if((0,a.isBlockStatement)(c)){const t=e(c.body,n,o);if(!t)return;l.push(t)}else{if(!(0,a.isEmptyStatement)(c))return;0===t.indexOf(c)&&(p=!0)}return p&&l.push(n.buildUndefinedNode()),1===l.length?l[0]:(0,i.sequenceExpression)(l)};var r=n(1477),a=n(94746),i=n(34391),s=n(46209)},28316:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return"eval"!==(e=(0,r.default)(e))&&"arguments"!==e||(e="_"+e),e};var r=n(71309)},19276:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if((0,r.isBlockStatement)(e))return e;let n=[];return(0,r.isEmptyStatement)(e)?n=[]:((0,r.isStatement)(e)||(e=(0,r.isFunction)(t)?(0,a.returnStatement)(e):(0,a.expressionStatement)(e)),n=[e]),(0,a.blockStatement)(n)};var r=n(94746),a=n(34391)},59434:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t=e.key||e.property){return!e.computed&&(0,r.isIdentifier)(t)&&(t=(0,a.stringLiteral)(t.name)),t};var r=n(94746),a=n(34391)},33348:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(94746);t.default=function(e){if((0,r.isExpressionStatement)(e)&&(e=e.expression),(0,r.isExpression)(e))return e;if((0,r.isClass)(e)?e.type="ClassExpression":(0,r.isFunction)(e)&&(e.type="FunctionExpression"),!(0,r.isExpression)(e))throw new Error(`cannot turn ${e.type} to an expression`);return e}},71309:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){e+="";let t="";for(const n of e)t+=(0,a.isIdentifierChar)(n.codePointAt(0))?n:"-";return t=t.replace(/^[-0-9]+/,""),t=t.replace(/[-\s]+(.)?/g,(function(e,t){return t?t.toUpperCase():""})),(0,r.default)(t)||(t=`_${t}`),t||"_"};var r=n(93045),a=n(29649)},510:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=s;var r=n(94746),a=n(46209),i=n(94936);function s(e,t=e.key){let n;return"method"===e.kind?s.increment()+"":(n=(0,r.isIdentifier)(t)?t.name:(0,r.isStringLiteral)(t)?JSON.stringify(t.value):JSON.stringify((0,i.default)((0,a.default)(t))),e.computed&&(n=`[${n}]`),e.static&&(n=`static:${n}`),n)}s.uid=0,s.increment=function(){return s.uid>=Number.MAX_SAFE_INTEGER?s.uid=0:s.uid++}},41435:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if(null==e||!e.length)return;const n=[],a=(0,r.default)(e,t,n);if(a){for(const e of n)t.push(e);return a}};var r=n(20696)},22307:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(94746),a=n(34391);t.default=function(e,t){if((0,r.isStatement)(e))return e;let n,i=!1;if((0,r.isClass)(e))i=!0,n="ClassDeclaration";else if((0,r.isFunction)(e))i=!0,n="FunctionDeclaration";else if((0,r.isAssignmentExpression)(e))return(0,a.expressionStatement)(e);if(i&&!e.id&&(n=!1),!n){if(t)return!1;throw new Error(`cannot turn ${e.type} to a statement`)}return e.type=n,e}},46794:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(93045),a=n(34391);t.default=function e(t){if(void 0===t)return(0,a.identifier)("undefined");if(!0===t||!1===t)return(0,a.booleanLiteral)(t);if(null===t)return(0,a.nullLiteral)();if("string"==typeof t)return(0,a.stringLiteral)(t);if("number"==typeof t){let e;if(Number.isFinite(t))e=(0,a.numericLiteral)(Math.abs(t));else{let n;n=Number.isNaN(t)?(0,a.numericLiteral)(0):(0,a.numericLiteral)(1),e=(0,a.binaryExpression)("/",n,(0,a.numericLiteral)(0))}return(t<0||Object.is(t,-0))&&(e=(0,a.unaryExpression)("-",e)),e}if(function(e){return"[object RegExp]"===i(e)}(t)){const e=t.source,n=t.toString().match(/\/([a-z]+|)$/)[1];return(0,a.regExpLiteral)(e,n)}if(Array.isArray(t))return(0,a.arrayExpression)(t.map(e));if(function(e){if("object"!=typeof e||null===e||"[object Object]"!==Object.prototype.toString.call(e))return!1;const t=Object.getPrototypeOf(e);return null===t||null===Object.getPrototypeOf(t)}(t)){const n=[];for(const i of Object.keys(t)){let s;s=(0,r.default)(i)?(0,a.identifier)(i):(0,a.stringLiteral)(i),n.push((0,a.objectProperty)(s,e(t[i])))}return(0,a.objectExpression)(n)}throw new Error("don't know how to turn this value into a node")};const i=Function.call.bind(Object.prototype.toString)},34457:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.patternLikeCommon=t.functionTypeAnnotationCommon=t.functionDeclarationCommon=t.functionCommon=t.classMethodOrPropertyCommon=t.classMethodOrDeclareMethodCommon=void 0;var r=n(67275),a=n(93045),i=n(29649),s=n(36325),o=n(54913);const l=(0,o.defineAliasedType)("Standardized");l("ArrayExpression",{fields:{elements:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeOrValueType)("null","Expression","SpreadElement"))),default:process.env.BABEL_TYPES_8_BREAKING?void 0:[]}},visitor:["elements"],aliases:["Expression"]}),l("AssignmentExpression",{fields:{operator:{validate:function(){if(!process.env.BABEL_TYPES_8_BREAKING)return(0,o.assertValueType)("string");const e=(0,o.assertOneOf)(...s.ASSIGNMENT_OPERATORS),t=(0,o.assertOneOf)("=");return function(n,a,i){((0,r.default)("Pattern",n.left)?t:e)(n,a,i)}}()},left:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,o.assertNodeType)("Identifier","MemberExpression","ArrayPattern","ObjectPattern","TSAsExpression","TSTypeAssertion","TSNonNullExpression"):(0,o.assertNodeType)("LVal")},right:{validate:(0,o.assertNodeType)("Expression")}},builder:["operator","left","right"],visitor:["left","right"],aliases:["Expression"]}),l("BinaryExpression",{builder:["operator","left","right"],fields:{operator:{validate:(0,o.assertOneOf)(...s.BINARY_OPERATORS)},left:{validate:function(){const e=(0,o.assertNodeType)("Expression"),t=(0,o.assertNodeType)("Expression","PrivateName"),n=function(n,r,a){("in"===n.operator?t:e)(n,r,a)};return n.oneOfNodeTypes=["Expression","PrivateName"],n}()},right:{validate:(0,o.assertNodeType)("Expression")}},visitor:["left","right"],aliases:["Binary","Expression"]}),l("InterpreterDirective",{builder:["value"],fields:{value:{validate:(0,o.assertValueType)("string")}}}),l("Directive",{visitor:["value"],fields:{value:{validate:(0,o.assertNodeType)("DirectiveLiteral")}}}),l("DirectiveLiteral",{builder:["value"],fields:{value:{validate:(0,o.assertValueType)("string")}}}),l("BlockStatement",{builder:["body","directives"],visitor:["directives","body"],fields:{directives:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("Directive"))),default:[]},body:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("Statement")))}},aliases:["Scopable","BlockParent","Block","Statement"]}),l("BreakStatement",{visitor:["label"],fields:{label:{validate:(0,o.assertNodeType)("Identifier"),optional:!0}},aliases:["Statement","Terminatorless","CompletionStatement"]}),l("CallExpression",{visitor:["callee","arguments","typeParameters","typeArguments"],builder:["callee","arguments"],aliases:["Expression"],fields:Object.assign({callee:{validate:(0,o.assertNodeType)("Expression","V8IntrinsicIdentifier")},arguments:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("Expression","SpreadElement","JSXNamespacedName","ArgumentPlaceholder")))}},process.env.BABEL_TYPES_8_BREAKING?{}:{optional:{validate:(0,o.assertOneOf)(!0,!1),optional:!0}},{typeArguments:{validate:(0,o.assertNodeType)("TypeParameterInstantiation"),optional:!0},typeParameters:{validate:(0,o.assertNodeType)("TSTypeParameterInstantiation"),optional:!0}})}),l("CatchClause",{visitor:["param","body"],fields:{param:{validate:(0,o.assertNodeType)("Identifier","ArrayPattern","ObjectPattern"),optional:!0},body:{validate:(0,o.assertNodeType)("BlockStatement")}},aliases:["Scopable","BlockParent"]}),l("ConditionalExpression",{visitor:["test","consequent","alternate"],fields:{test:{validate:(0,o.assertNodeType)("Expression")},consequent:{validate:(0,o.assertNodeType)("Expression")},alternate:{validate:(0,o.assertNodeType)("Expression")}},aliases:["Expression","Conditional"]}),l("ContinueStatement",{visitor:["label"],fields:{label:{validate:(0,o.assertNodeType)("Identifier"),optional:!0}},aliases:["Statement","Terminatorless","CompletionStatement"]}),l("DebuggerStatement",{aliases:["Statement"]}),l("DoWhileStatement",{visitor:["test","body"],fields:{test:{validate:(0,o.assertNodeType)("Expression")},body:{validate:(0,o.assertNodeType)("Statement")}},aliases:["Statement","BlockParent","Loop","While","Scopable"]}),l("EmptyStatement",{aliases:["Statement"]}),l("ExpressionStatement",{visitor:["expression"],fields:{expression:{validate:(0,o.assertNodeType)("Expression")}},aliases:["Statement","ExpressionWrapper"]}),l("File",{builder:["program","comments","tokens"],visitor:["program"],fields:{program:{validate:(0,o.assertNodeType)("Program")},comments:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,o.assertEach)((0,o.assertNodeType)("CommentBlock","CommentLine")):Object.assign((()=>{}),{each:{oneOfNodeTypes:["CommentBlock","CommentLine"]}}),optional:!0},tokens:{validate:(0,o.assertEach)(Object.assign((()=>{}),{type:"any"})),optional:!0}}}),l("ForInStatement",{visitor:["left","right","body"],aliases:["Scopable","Statement","For","BlockParent","Loop","ForXStatement"],fields:{left:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,o.assertNodeType)("VariableDeclaration","Identifier","MemberExpression","ArrayPattern","ObjectPattern","TSAsExpression","TSTypeAssertion","TSNonNullExpression"):(0,o.assertNodeType)("VariableDeclaration","LVal")},right:{validate:(0,o.assertNodeType)("Expression")},body:{validate:(0,o.assertNodeType)("Statement")}}}),l("ForStatement",{visitor:["init","test","update","body"],aliases:["Scopable","Statement","For","BlockParent","Loop"],fields:{init:{validate:(0,o.assertNodeType)("VariableDeclaration","Expression"),optional:!0},test:{validate:(0,o.assertNodeType)("Expression"),optional:!0},update:{validate:(0,o.assertNodeType)("Expression"),optional:!0},body:{validate:(0,o.assertNodeType)("Statement")}}});const p={params:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("Identifier","Pattern","RestElement")))},generator:{default:!1},async:{default:!1}};t.functionCommon=p;const c={returnType:{validate:(0,o.assertNodeType)("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},typeParameters:{validate:(0,o.assertNodeType)("TypeParameterDeclaration","TSTypeParameterDeclaration","Noop"),optional:!0}};t.functionTypeAnnotationCommon=c;const u=Object.assign({},p,{declare:{validate:(0,o.assertValueType)("boolean"),optional:!0},id:{validate:(0,o.assertNodeType)("Identifier"),optional:!0}});t.functionDeclarationCommon=u,l("FunctionDeclaration",{builder:["id","params","body","generator","async"],visitor:["id","params","body","returnType","typeParameters"],fields:Object.assign({},u,c,{body:{validate:(0,o.assertNodeType)("BlockStatement")},predicate:{validate:(0,o.assertNodeType)("DeclaredPredicate","InferredPredicate"),optional:!0}}),aliases:["Scopable","Function","BlockParent","FunctionParent","Statement","Pureish","Declaration"],validate:function(){if(!process.env.BABEL_TYPES_8_BREAKING)return()=>{};const e=(0,o.assertNodeType)("Identifier");return function(t,n,a){(0,r.default)("ExportDefaultDeclaration",t)||e(a,"id",a.id)}}()}),l("FunctionExpression",{inherits:"FunctionDeclaration",aliases:["Scopable","Function","BlockParent","FunctionParent","Expression","Pureish"],fields:Object.assign({},p,c,{id:{validate:(0,o.assertNodeType)("Identifier"),optional:!0},body:{validate:(0,o.assertNodeType)("BlockStatement")},predicate:{validate:(0,o.assertNodeType)("DeclaredPredicate","InferredPredicate"),optional:!0}})});const d={typeAnnotation:{validate:(0,o.assertNodeType)("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},decorators:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("Decorator")))}};t.patternLikeCommon=d,l("Identifier",{builder:["name"],visitor:["typeAnnotation","decorators"],aliases:["Expression","PatternLike","LVal","TSEntityName"],fields:Object.assign({},d,{name:{validate:(0,o.chain)((0,o.assertValueType)("string"),Object.assign((function(e,t,n){if(process.env.BABEL_TYPES_8_BREAKING&&!(0,a.default)(n,!1))throw new TypeError(`"${n}" is not a valid identifier name`)}),{type:"string"}))},optional:{validate:(0,o.assertValueType)("boolean"),optional:!0}}),validate(e,t,n){if(!process.env.BABEL_TYPES_8_BREAKING)return;const a=/\.(\w+)$/.exec(t);if(!a)return;const[,s]=a,o={computed:!1};if("property"===s){if((0,r.default)("MemberExpression",e,o))return;if((0,r.default)("OptionalMemberExpression",e,o))return}else if("key"===s){if((0,r.default)("Property",e,o))return;if((0,r.default)("Method",e,o))return}else if("exported"===s){if((0,r.default)("ExportSpecifier",e))return}else if("imported"===s){if((0,r.default)("ImportSpecifier",e,{imported:n}))return}else if("meta"===s&&(0,r.default)("MetaProperty",e,{meta:n}))return;if(((0,i.isKeyword)(n.name)||(0,i.isReservedWord)(n.name,!1))&&"this"!==n.name)throw new TypeError(`"${n.name}" is not a valid identifier`)}}),l("IfStatement",{visitor:["test","consequent","alternate"],aliases:["Statement","Conditional"],fields:{test:{validate:(0,o.assertNodeType)("Expression")},consequent:{validate:(0,o.assertNodeType)("Statement")},alternate:{optional:!0,validate:(0,o.assertNodeType)("Statement")}}}),l("LabeledStatement",{visitor:["label","body"],aliases:["Statement"],fields:{label:{validate:(0,o.assertNodeType)("Identifier")},body:{validate:(0,o.assertNodeType)("Statement")}}}),l("StringLiteral",{builder:["value"],fields:{value:{validate:(0,o.assertValueType)("string")}},aliases:["Expression","Pureish","Literal","Immutable"]}),l("NumericLiteral",{builder:["value"],deprecatedAlias:"NumberLiteral",fields:{value:{validate:(0,o.assertValueType)("number")}},aliases:["Expression","Pureish","Literal","Immutable"]}),l("NullLiteral",{aliases:["Expression","Pureish","Literal","Immutable"]}),l("BooleanLiteral",{builder:["value"],fields:{value:{validate:(0,o.assertValueType)("boolean")}},aliases:["Expression","Pureish","Literal","Immutable"]}),l("RegExpLiteral",{builder:["pattern","flags"],deprecatedAlias:"RegexLiteral",aliases:["Expression","Pureish","Literal"],fields:{pattern:{validate:(0,o.assertValueType)("string")},flags:{validate:(0,o.chain)((0,o.assertValueType)("string"),Object.assign((function(e,t,n){if(!process.env.BABEL_TYPES_8_BREAKING)return;const r=/[^gimsuy]/.exec(n);if(r)throw new TypeError(`"${r[0]}" is not a valid RegExp flag`)}),{type:"string"})),default:""}}}),l("LogicalExpression",{builder:["operator","left","right"],visitor:["left","right"],aliases:["Binary","Expression"],fields:{operator:{validate:(0,o.assertOneOf)(...s.LOGICAL_OPERATORS)},left:{validate:(0,o.assertNodeType)("Expression")},right:{validate:(0,o.assertNodeType)("Expression")}}}),l("MemberExpression",{builder:["object","property","computed",...process.env.BABEL_TYPES_8_BREAKING?[]:["optional"]],visitor:["object","property"],aliases:["Expression","LVal"],fields:Object.assign({object:{validate:(0,o.assertNodeType)("Expression")},property:{validate:function(){const e=(0,o.assertNodeType)("Identifier","PrivateName"),t=(0,o.assertNodeType)("Expression"),n=function(n,r,a){(n.computed?t:e)(n,r,a)};return n.oneOfNodeTypes=["Expression","Identifier","PrivateName"],n}()},computed:{default:!1}},process.env.BABEL_TYPES_8_BREAKING?{}:{optional:{validate:(0,o.assertOneOf)(!0,!1),optional:!0}})}),l("NewExpression",{inherits:"CallExpression"}),l("Program",{visitor:["directives","body"],builder:["body","directives","sourceType","interpreter"],fields:{sourceFile:{validate:(0,o.assertValueType)("string")},sourceType:{validate:(0,o.assertOneOf)("script","module"),default:"script"},interpreter:{validate:(0,o.assertNodeType)("InterpreterDirective"),default:null,optional:!0},directives:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("Directive"))),default:[]},body:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("Statement")))}},aliases:["Scopable","BlockParent","Block"]}),l("ObjectExpression",{visitor:["properties"],aliases:["Expression"],fields:{properties:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("ObjectMethod","ObjectProperty","SpreadElement")))}}}),l("ObjectMethod",{builder:["kind","key","params","body","computed","generator","async"],fields:Object.assign({},p,c,{kind:Object.assign({validate:(0,o.assertOneOf)("method","get","set")},process.env.BABEL_TYPES_8_BREAKING?{}:{default:"method"}),computed:{default:!1},key:{validate:function(){const e=(0,o.assertNodeType)("Identifier","StringLiteral","NumericLiteral"),t=(0,o.assertNodeType)("Expression"),n=function(n,r,a){(n.computed?t:e)(n,r,a)};return n.oneOfNodeTypes=["Expression","Identifier","StringLiteral","NumericLiteral"],n}()},decorators:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("Decorator"))),optional:!0},body:{validate:(0,o.assertNodeType)("BlockStatement")}}),visitor:["key","params","body","decorators","returnType","typeParameters"],aliases:["UserWhitespacable","Function","Scopable","BlockParent","FunctionParent","Method","ObjectMember"]}),l("ObjectProperty",{builder:["key","value","computed","shorthand",...process.env.BABEL_TYPES_8_BREAKING?[]:["decorators"]],fields:{computed:{default:!1},key:{validate:function(){const e=(0,o.assertNodeType)("Identifier","StringLiteral","NumericLiteral"),t=(0,o.assertNodeType)("Expression"),n=function(n,r,a){(n.computed?t:e)(n,r,a)};return n.oneOfNodeTypes=["Expression","Identifier","StringLiteral","NumericLiteral"],n}()},value:{validate:(0,o.assertNodeType)("Expression","PatternLike")},shorthand:{validate:(0,o.chain)((0,o.assertValueType)("boolean"),Object.assign((function(e,t,n){if(process.env.BABEL_TYPES_8_BREAKING&&n&&e.computed)throw new TypeError("Property shorthand of ObjectProperty cannot be true if computed is true")}),{type:"boolean"}),(function(e,t,n){if(process.env.BABEL_TYPES_8_BREAKING&&n&&!(0,r.default)("Identifier",e.key))throw new TypeError("Property shorthand of ObjectProperty cannot be true if key is not an Identifier")})),default:!1},decorators:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("Decorator"))),optional:!0}},visitor:["key","value","decorators"],aliases:["UserWhitespacable","Property","ObjectMember"],validate:function(){const e=(0,o.assertNodeType)("Identifier","Pattern","TSAsExpression","TSNonNullExpression","TSTypeAssertion"),t=(0,o.assertNodeType)("Expression");return function(n,a,i){process.env.BABEL_TYPES_8_BREAKING&&((0,r.default)("ObjectPattern",n)?e:t)(i,"value",i.value)}}()}),l("RestElement",{visitor:["argument","typeAnnotation"],builder:["argument"],aliases:["LVal","PatternLike"],deprecatedAlias:"RestProperty",fields:Object.assign({},d,{argument:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,o.assertNodeType)("Identifier","ArrayPattern","ObjectPattern","MemberExpression","TSAsExpression","TSTypeAssertion","TSNonNullExpression"):(0,o.assertNodeType)("LVal")},optional:{validate:(0,o.assertValueType)("boolean"),optional:!0}}),validate(e,t){if(!process.env.BABEL_TYPES_8_BREAKING)return;const n=/(\w+)\[(\d+)\]/.exec(t);if(!n)throw new Error("Internal Babel error: malformed key.");const[,r,a]=n;if(e[r].length>a+1)throw new TypeError(`RestElement must be last element of ${r}`)}}),l("ReturnStatement",{visitor:["argument"],aliases:["Statement","Terminatorless","CompletionStatement"],fields:{argument:{validate:(0,o.assertNodeType)("Expression"),optional:!0}}}),l("SequenceExpression",{visitor:["expressions"],fields:{expressions:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("Expression")))}},aliases:["Expression"]}),l("ParenthesizedExpression",{visitor:["expression"],aliases:["Expression","ExpressionWrapper"],fields:{expression:{validate:(0,o.assertNodeType)("Expression")}}}),l("SwitchCase",{visitor:["test","consequent"],fields:{test:{validate:(0,o.assertNodeType)("Expression"),optional:!0},consequent:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("Statement")))}}}),l("SwitchStatement",{visitor:["discriminant","cases"],aliases:["Statement","BlockParent","Scopable"],fields:{discriminant:{validate:(0,o.assertNodeType)("Expression")},cases:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("SwitchCase")))}}}),l("ThisExpression",{aliases:["Expression"]}),l("ThrowStatement",{visitor:["argument"],aliases:["Statement","Terminatorless","CompletionStatement"],fields:{argument:{validate:(0,o.assertNodeType)("Expression")}}}),l("TryStatement",{visitor:["block","handler","finalizer"],aliases:["Statement"],fields:{block:{validate:(0,o.chain)((0,o.assertNodeType)("BlockStatement"),Object.assign((function(e){if(process.env.BABEL_TYPES_8_BREAKING&&!e.handler&&!e.finalizer)throw new TypeError("TryStatement expects either a handler or finalizer, or both")}),{oneOfNodeTypes:["BlockStatement"]}))},handler:{optional:!0,validate:(0,o.assertNodeType)("CatchClause")},finalizer:{optional:!0,validate:(0,o.assertNodeType)("BlockStatement")}}}),l("UnaryExpression",{builder:["operator","argument","prefix"],fields:{prefix:{default:!0},argument:{validate:(0,o.assertNodeType)("Expression")},operator:{validate:(0,o.assertOneOf)(...s.UNARY_OPERATORS)}},visitor:["argument"],aliases:["UnaryLike","Expression"]}),l("UpdateExpression",{builder:["operator","argument","prefix"],fields:{prefix:{default:!1},argument:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,o.assertNodeType)("Identifier","MemberExpression"):(0,o.assertNodeType)("Expression")},operator:{validate:(0,o.assertOneOf)(...s.UPDATE_OPERATORS)}},visitor:["argument"],aliases:["Expression"]}),l("VariableDeclaration",{builder:["kind","declarations"],visitor:["declarations"],aliases:["Statement","Declaration"],fields:{declare:{validate:(0,o.assertValueType)("boolean"),optional:!0},kind:{validate:(0,o.assertOneOf)("var","let","const")},declarations:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("VariableDeclarator")))}},validate(e,t,n){if(process.env.BABEL_TYPES_8_BREAKING&&(0,r.default)("ForXStatement",e,{left:n})&&1!==n.declarations.length)throw new TypeError(`Exactly one VariableDeclarator is required in the VariableDeclaration of a ${e.type}`)}}),l("VariableDeclarator",{visitor:["id","init"],fields:{id:{validate:function(){if(!process.env.BABEL_TYPES_8_BREAKING)return(0,o.assertNodeType)("LVal");const e=(0,o.assertNodeType)("Identifier","ArrayPattern","ObjectPattern"),t=(0,o.assertNodeType)("Identifier");return function(n,r,a){(n.init?e:t)(n,r,a)}}()},definite:{optional:!0,validate:(0,o.assertValueType)("boolean")},init:{optional:!0,validate:(0,o.assertNodeType)("Expression")}}}),l("WhileStatement",{visitor:["test","body"],aliases:["Statement","BlockParent","Loop","While","Scopable"],fields:{test:{validate:(0,o.assertNodeType)("Expression")},body:{validate:(0,o.assertNodeType)("Statement")}}}),l("WithStatement",{visitor:["object","body"],aliases:["Statement"],fields:{object:{validate:(0,o.assertNodeType)("Expression")},body:{validate:(0,o.assertNodeType)("Statement")}}}),l("AssignmentPattern",{visitor:["left","right","decorators"],builder:["left","right"],aliases:["Pattern","PatternLike","LVal"],fields:Object.assign({},d,{left:{validate:(0,o.assertNodeType)("Identifier","ObjectPattern","ArrayPattern","MemberExpression","TSAsExpression","TSTypeAssertion","TSNonNullExpression")},right:{validate:(0,o.assertNodeType)("Expression")},decorators:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("Decorator"))),optional:!0}})}),l("ArrayPattern",{visitor:["elements","typeAnnotation"],builder:["elements"],aliases:["Pattern","PatternLike","LVal"],fields:Object.assign({},d,{elements:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeOrValueType)("null","PatternLike")))},decorators:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("Decorator"))),optional:!0},optional:{validate:(0,o.assertValueType)("boolean"),optional:!0}})}),l("ArrowFunctionExpression",{builder:["params","body","async"],visitor:["params","body","returnType","typeParameters"],aliases:["Scopable","Function","BlockParent","FunctionParent","Expression","Pureish"],fields:Object.assign({},p,c,{expression:{validate:(0,o.assertValueType)("boolean")},body:{validate:(0,o.assertNodeType)("BlockStatement","Expression")},predicate:{validate:(0,o.assertNodeType)("DeclaredPredicate","InferredPredicate"),optional:!0}})}),l("ClassBody",{visitor:["body"],fields:{body:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("ClassMethod","ClassPrivateMethod","ClassProperty","ClassPrivateProperty","ClassAccessorProperty","TSDeclareMethod","TSIndexSignature","StaticBlock")))}}}),l("ClassExpression",{builder:["id","superClass","body","decorators"],visitor:["id","body","superClass","mixins","typeParameters","superTypeParameters","implements","decorators"],aliases:["Scopable","Class","Expression"],fields:{id:{validate:(0,o.assertNodeType)("Identifier"),optional:!0},typeParameters:{validate:(0,o.assertNodeType)("TypeParameterDeclaration","TSTypeParameterDeclaration","Noop"),optional:!0},body:{validate:(0,o.assertNodeType)("ClassBody")},superClass:{optional:!0,validate:(0,o.assertNodeType)("Expression")},superTypeParameters:{validate:(0,o.assertNodeType)("TypeParameterInstantiation","TSTypeParameterInstantiation"),optional:!0},implements:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("TSExpressionWithTypeArguments","ClassImplements"))),optional:!0},decorators:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("Decorator"))),optional:!0},mixins:{validate:(0,o.assertNodeType)("InterfaceExtends"),optional:!0}}}),l("ClassDeclaration",{inherits:"ClassExpression",aliases:["Scopable","Class","Statement","Declaration"],fields:{id:{validate:(0,o.assertNodeType)("Identifier")},typeParameters:{validate:(0,o.assertNodeType)("TypeParameterDeclaration","TSTypeParameterDeclaration","Noop"),optional:!0},body:{validate:(0,o.assertNodeType)("ClassBody")},superClass:{optional:!0,validate:(0,o.assertNodeType)("Expression")},superTypeParameters:{validate:(0,o.assertNodeType)("TypeParameterInstantiation","TSTypeParameterInstantiation"),optional:!0},implements:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("TSExpressionWithTypeArguments","ClassImplements"))),optional:!0},decorators:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("Decorator"))),optional:!0},mixins:{validate:(0,o.assertNodeType)("InterfaceExtends"),optional:!0},declare:{validate:(0,o.assertValueType)("boolean"),optional:!0},abstract:{validate:(0,o.assertValueType)("boolean"),optional:!0}},validate:function(){const e=(0,o.assertNodeType)("Identifier");return function(t,n,a){process.env.BABEL_TYPES_8_BREAKING&&((0,r.default)("ExportDefaultDeclaration",t)||e(a,"id",a.id))}}()}),l("ExportAllDeclaration",{visitor:["source"],aliases:["Statement","Declaration","ModuleDeclaration","ExportDeclaration"],fields:{source:{validate:(0,o.assertNodeType)("StringLiteral")},exportKind:(0,o.validateOptional)((0,o.assertOneOf)("type","value")),assertions:{optional:!0,validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("ImportAttribute")))}}}),l("ExportDefaultDeclaration",{visitor:["declaration"],aliases:["Statement","Declaration","ModuleDeclaration","ExportDeclaration"],fields:{declaration:{validate:(0,o.assertNodeType)("FunctionDeclaration","TSDeclareFunction","ClassDeclaration","Expression")},exportKind:(0,o.validateOptional)((0,o.assertOneOf)("value"))}}),l("ExportNamedDeclaration",{visitor:["declaration","specifiers","source"],aliases:["Statement","Declaration","ModuleDeclaration","ExportDeclaration"],fields:{declaration:{optional:!0,validate:(0,o.chain)((0,o.assertNodeType)("Declaration"),Object.assign((function(e,t,n){if(process.env.BABEL_TYPES_8_BREAKING&&n&&e.specifiers.length)throw new TypeError("Only declaration or specifiers is allowed on ExportNamedDeclaration")}),{oneOfNodeTypes:["Declaration"]}),(function(e,t,n){if(process.env.BABEL_TYPES_8_BREAKING&&n&&e.source)throw new TypeError("Cannot export a declaration from a source")}))},assertions:{optional:!0,validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("ImportAttribute")))},specifiers:{default:[],validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)(function(){const e=(0,o.assertNodeType)("ExportSpecifier","ExportDefaultSpecifier","ExportNamespaceSpecifier"),t=(0,o.assertNodeType)("ExportSpecifier");return process.env.BABEL_TYPES_8_BREAKING?function(n,r,a){(n.source?e:t)(n,r,a)}:e}()))},source:{validate:(0,o.assertNodeType)("StringLiteral"),optional:!0},exportKind:(0,o.validateOptional)((0,o.assertOneOf)("type","value"))}}),l("ExportSpecifier",{visitor:["local","exported"],aliases:["ModuleSpecifier"],fields:{local:{validate:(0,o.assertNodeType)("Identifier")},exported:{validate:(0,o.assertNodeType)("Identifier","StringLiteral")},exportKind:{validate:(0,o.assertOneOf)("type","value"),optional:!0}}}),l("ForOfStatement",{visitor:["left","right","body"],builder:["left","right","body","await"],aliases:["Scopable","Statement","For","BlockParent","Loop","ForXStatement"],fields:{left:{validate:function(){if(!process.env.BABEL_TYPES_8_BREAKING)return(0,o.assertNodeType)("VariableDeclaration","LVal");const e=(0,o.assertNodeType)("VariableDeclaration"),t=(0,o.assertNodeType)("Identifier","MemberExpression","ArrayPattern","ObjectPattern","TSAsExpression","TSTypeAssertion","TSNonNullExpression");return function(n,a,i){(0,r.default)("VariableDeclaration",i)?e(n,a,i):t(n,a,i)}}()},right:{validate:(0,o.assertNodeType)("Expression")},body:{validate:(0,o.assertNodeType)("Statement")},await:{default:!1}}}),l("ImportDeclaration",{visitor:["specifiers","source"],aliases:["Statement","Declaration","ModuleDeclaration"],fields:{assertions:{optional:!0,validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("ImportAttribute")))},specifiers:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("ImportSpecifier","ImportDefaultSpecifier","ImportNamespaceSpecifier")))},source:{validate:(0,o.assertNodeType)("StringLiteral")},importKind:{validate:(0,o.assertOneOf)("type","typeof","value"),optional:!0}}}),l("ImportDefaultSpecifier",{visitor:["local"],aliases:["ModuleSpecifier"],fields:{local:{validate:(0,o.assertNodeType)("Identifier")}}}),l("ImportNamespaceSpecifier",{visitor:["local"],aliases:["ModuleSpecifier"],fields:{local:{validate:(0,o.assertNodeType)("Identifier")}}}),l("ImportSpecifier",{visitor:["local","imported"],aliases:["ModuleSpecifier"],fields:{local:{validate:(0,o.assertNodeType)("Identifier")},imported:{validate:(0,o.assertNodeType)("Identifier","StringLiteral")},importKind:{validate:(0,o.assertOneOf)("type","typeof","value"),optional:!0}}}),l("MetaProperty",{visitor:["meta","property"],aliases:["Expression"],fields:{meta:{validate:(0,o.chain)((0,o.assertNodeType)("Identifier"),Object.assign((function(e,t,n){if(!process.env.BABEL_TYPES_8_BREAKING)return;let a;switch(n.name){case"function":a="sent";break;case"new":a="target";break;case"import":a="meta"}if(!(0,r.default)("Identifier",e.property,{name:a}))throw new TypeError("Unrecognised MetaProperty")}),{oneOfNodeTypes:["Identifier"]}))},property:{validate:(0,o.assertNodeType)("Identifier")}}});const f={abstract:{validate:(0,o.assertValueType)("boolean"),optional:!0},accessibility:{validate:(0,o.assertOneOf)("public","private","protected"),optional:!0},static:{default:!1},override:{default:!1},computed:{default:!1},optional:{validate:(0,o.assertValueType)("boolean"),optional:!0},key:{validate:(0,o.chain)(function(){const e=(0,o.assertNodeType)("Identifier","StringLiteral","NumericLiteral"),t=(0,o.assertNodeType)("Expression");return function(n,r,a){(n.computed?t:e)(n,r,a)}}(),(0,o.assertNodeType)("Identifier","StringLiteral","NumericLiteral","Expression"))}};t.classMethodOrPropertyCommon=f;const y=Object.assign({},p,f,{params:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("Identifier","Pattern","RestElement","TSParameterProperty")))},kind:{validate:(0,o.assertOneOf)("get","set","method","constructor"),default:"method"},access:{validate:(0,o.chain)((0,o.assertValueType)("string"),(0,o.assertOneOf)("public","private","protected")),optional:!0},decorators:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("Decorator"))),optional:!0}});t.classMethodOrDeclareMethodCommon=y,l("ClassMethod",{aliases:["Function","Scopable","BlockParent","FunctionParent","Method"],builder:["kind","key","params","body","computed","static","generator","async"],visitor:["key","params","body","decorators","returnType","typeParameters"],fields:Object.assign({},y,c,{body:{validate:(0,o.assertNodeType)("BlockStatement")}})}),l("ObjectPattern",{visitor:["properties","typeAnnotation","decorators"],builder:["properties"],aliases:["Pattern","PatternLike","LVal"],fields:Object.assign({},d,{properties:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("RestElement","ObjectProperty")))}})}),l("SpreadElement",{visitor:["argument"],aliases:["UnaryLike"],deprecatedAlias:"SpreadProperty",fields:{argument:{validate:(0,o.assertNodeType)("Expression")}}}),l("Super",{aliases:["Expression"]}),l("TaggedTemplateExpression",{visitor:["tag","quasi","typeParameters"],builder:["tag","quasi"],aliases:["Expression"],fields:{tag:{validate:(0,o.assertNodeType)("Expression")},quasi:{validate:(0,o.assertNodeType)("TemplateLiteral")},typeParameters:{validate:(0,o.assertNodeType)("TypeParameterInstantiation","TSTypeParameterInstantiation"),optional:!0}}}),l("TemplateElement",{builder:["value","tail"],fields:{value:{validate:(0,o.assertShape)({raw:{validate:(0,o.assertValueType)("string")},cooked:{validate:(0,o.assertValueType)("string"),optional:!0}})},tail:{default:!1}}}),l("TemplateLiteral",{visitor:["quasis","expressions"],aliases:["Expression","Literal"],fields:{quasis:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("TemplateElement")))},expressions:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("Expression","TSType")),(function(e,t,n){if(e.quasis.length!==n.length+1)throw new TypeError(`Number of ${e.type} quasis should be exactly one more than the number of expressions.\nExpected ${n.length+1} quasis but got ${e.quasis.length}`)}))}}}),l("YieldExpression",{builder:["argument","delegate"],visitor:["argument"],aliases:["Expression","Terminatorless"],fields:{delegate:{validate:(0,o.chain)((0,o.assertValueType)("boolean"),Object.assign((function(e,t,n){if(process.env.BABEL_TYPES_8_BREAKING&&n&&!e.argument)throw new TypeError("Property delegate of YieldExpression cannot be true if there is no argument")}),{type:"boolean"})),default:!1},argument:{optional:!0,validate:(0,o.assertNodeType)("Expression")}}}),l("AwaitExpression",{builder:["argument"],visitor:["argument"],aliases:["Expression","Terminatorless"],fields:{argument:{validate:(0,o.assertNodeType)("Expression")}}}),l("Import",{aliases:["Expression"]}),l("BigIntLiteral",{builder:["value"],fields:{value:{validate:(0,o.assertValueType)("string")}},aliases:["Expression","Pureish","Literal","Immutable"]}),l("ExportNamespaceSpecifier",{visitor:["exported"],aliases:["ModuleSpecifier"],fields:{exported:{validate:(0,o.assertNodeType)("Identifier")}}}),l("OptionalMemberExpression",{builder:["object","property","computed","optional"],visitor:["object","property"],aliases:["Expression"],fields:{object:{validate:(0,o.assertNodeType)("Expression")},property:{validate:function(){const e=(0,o.assertNodeType)("Identifier"),t=(0,o.assertNodeType)("Expression"),n=function(n,r,a){(n.computed?t:e)(n,r,a)};return n.oneOfNodeTypes=["Expression","Identifier"],n}()},computed:{default:!1},optional:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,o.chain)((0,o.assertValueType)("boolean"),(0,o.assertOptionalChainStart)()):(0,o.assertValueType)("boolean")}}}),l("OptionalCallExpression",{visitor:["callee","arguments","typeParameters","typeArguments"],builder:["callee","arguments","optional"],aliases:["Expression"],fields:{callee:{validate:(0,o.assertNodeType)("Expression")},arguments:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("Expression","SpreadElement","JSXNamespacedName","ArgumentPlaceholder")))},optional:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,o.chain)((0,o.assertValueType)("boolean"),(0,o.assertOptionalChainStart)()):(0,o.assertValueType)("boolean")},typeArguments:{validate:(0,o.assertNodeType)("TypeParameterInstantiation"),optional:!0},typeParameters:{validate:(0,o.assertNodeType)("TSTypeParameterInstantiation"),optional:!0}}}),l("ClassProperty",{visitor:["key","value","typeAnnotation","decorators"],builder:["key","value","typeAnnotation","decorators","computed","static"],aliases:["Property"],fields:Object.assign({},f,{value:{validate:(0,o.assertNodeType)("Expression"),optional:!0},definite:{validate:(0,o.assertValueType)("boolean"),optional:!0},typeAnnotation:{validate:(0,o.assertNodeType)("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},decorators:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("Decorator"))),optional:!0},readonly:{validate:(0,o.assertValueType)("boolean"),optional:!0},declare:{validate:(0,o.assertValueType)("boolean"),optional:!0},variance:{validate:(0,o.assertNodeType)("Variance"),optional:!0}})}),l("ClassAccessorProperty",{visitor:["key","value","typeAnnotation","decorators"],builder:["key","value","typeAnnotation","decorators","computed","static"],aliases:["Property","Accessor"],fields:Object.assign({},f,{key:{validate:(0,o.chain)(function(){const e=(0,o.assertNodeType)("Identifier","StringLiteral","NumericLiteral","PrivateName"),t=(0,o.assertNodeType)("Expression");return function(n,r,a){(n.computed?t:e)(n,r,a)}}(),(0,o.assertNodeType)("Identifier","StringLiteral","NumericLiteral","Expression","PrivateName"))},value:{validate:(0,o.assertNodeType)("Expression"),optional:!0},definite:{validate:(0,o.assertValueType)("boolean"),optional:!0},typeAnnotation:{validate:(0,o.assertNodeType)("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},decorators:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("Decorator"))),optional:!0},readonly:{validate:(0,o.assertValueType)("boolean"),optional:!0},declare:{validate:(0,o.assertValueType)("boolean"),optional:!0},variance:{validate:(0,o.assertNodeType)("Variance"),optional:!0}})}),l("ClassPrivateProperty",{visitor:["key","value","decorators","typeAnnotation"],builder:["key","value","decorators","static"],aliases:["Property","Private"],fields:{key:{validate:(0,o.assertNodeType)("PrivateName")},value:{validate:(0,o.assertNodeType)("Expression"),optional:!0},typeAnnotation:{validate:(0,o.assertNodeType)("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},decorators:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("Decorator"))),optional:!0},readonly:{validate:(0,o.assertValueType)("boolean"),optional:!0},definite:{validate:(0,o.assertValueType)("boolean"),optional:!0},variance:{validate:(0,o.assertNodeType)("Variance"),optional:!0}}}),l("ClassPrivateMethod",{builder:["kind","key","params","body","static"],visitor:["key","params","body","decorators","returnType","typeParameters"],aliases:["Function","Scopable","BlockParent","FunctionParent","Method","Private"],fields:Object.assign({},y,c,{key:{validate:(0,o.assertNodeType)("PrivateName")},body:{validate:(0,o.assertNodeType)("BlockStatement")}})}),l("PrivateName",{visitor:["id"],aliases:["Private"],fields:{id:{validate:(0,o.assertNodeType)("Identifier")}}}),l("StaticBlock",{visitor:["body"],fields:{body:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("Statement")))}},aliases:["Scopable","BlockParent","FunctionParent"]})},71456:(e,t,n)=>{"use strict";var r=n(54913);(0,r.default)("ArgumentPlaceholder",{}),(0,r.default)("BindExpression",{visitor:["object","callee"],aliases:["Expression"],fields:process.env.BABEL_TYPES_8_BREAKING?{object:{validate:(0,r.assertNodeType)("Expression")},callee:{validate:(0,r.assertNodeType)("Expression")}}:{object:{validate:Object.assign((()=>{}),{oneOfNodeTypes:["Expression"]})},callee:{validate:Object.assign((()=>{}),{oneOfNodeTypes:["Expression"]})}}}),(0,r.default)("ImportAttribute",{visitor:["key","value"],fields:{key:{validate:(0,r.assertNodeType)("Identifier","StringLiteral")},value:{validate:(0,r.assertNodeType)("StringLiteral")}}}),(0,r.default)("Decorator",{visitor:["expression"],fields:{expression:{validate:(0,r.assertNodeType)("Expression")}}}),(0,r.default)("DoExpression",{visitor:["body"],builder:["body","async"],aliases:["Expression"],fields:{body:{validate:(0,r.assertNodeType)("BlockStatement")},async:{validate:(0,r.assertValueType)("boolean"),default:!1}}}),(0,r.default)("ExportDefaultSpecifier",{visitor:["exported"],aliases:["ModuleSpecifier"],fields:{exported:{validate:(0,r.assertNodeType)("Identifier")}}}),(0,r.default)("RecordExpression",{visitor:["properties"],aliases:["Expression"],fields:{properties:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("ObjectProperty","SpreadElement")))}}}),(0,r.default)("TupleExpression",{fields:{elements:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("Expression","SpreadElement"))),default:[]}},visitor:["elements"],aliases:["Expression"]}),(0,r.default)("DecimalLiteral",{builder:["value"],fields:{value:{validate:(0,r.assertValueType)("string")}},aliases:["Expression","Pureish","Literal","Immutable"]}),(0,r.default)("ModuleExpression",{visitor:["body"],fields:{body:{validate:(0,r.assertNodeType)("Program")}},aliases:["Expression"]}),(0,r.default)("TopicReference",{aliases:["Expression"]}),(0,r.default)("PipelineTopicExpression",{builder:["expression"],visitor:["expression"],fields:{expression:{validate:(0,r.assertNodeType)("Expression")}},aliases:["Expression"]}),(0,r.default)("PipelineBareFunction",{builder:["callee"],visitor:["callee"],fields:{callee:{validate:(0,r.assertNodeType)("Expression")}},aliases:["Expression"]}),(0,r.default)("PipelinePrimaryTopicReference",{aliases:["Expression"]})},85391:(e,t,n)=>{"use strict";var r=n(54913);const a=(0,r.defineAliasedType)("Flow"),i=(e,t="TypeParameterDeclaration")=>{a(e,{builder:["id","typeParameters","extends","body"],visitor:["id","typeParameters","extends","mixins","implements","body"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)(t),extends:(0,r.validateOptional)((0,r.arrayOfType)("InterfaceExtends")),mixins:(0,r.validateOptional)((0,r.arrayOfType)("InterfaceExtends")),implements:(0,r.validateOptional)((0,r.arrayOfType)("ClassImplements")),body:(0,r.validateType)("ObjectTypeAnnotation")}})};a("AnyTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("ArrayTypeAnnotation",{visitor:["elementType"],aliases:["FlowType"],fields:{elementType:(0,r.validateType)("FlowType")}}),a("BooleanTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("BooleanLiteralTypeAnnotation",{builder:["value"],aliases:["FlowType"],fields:{value:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("NullLiteralTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("ClassImplements",{visitor:["id","typeParameters"],fields:{id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TypeParameterInstantiation")}}),i("DeclareClass"),a("DeclareFunction",{visitor:["id"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,r.validateType)("Identifier"),predicate:(0,r.validateOptionalType)("DeclaredPredicate")}}),i("DeclareInterface"),a("DeclareModule",{builder:["id","body","kind"],visitor:["id","body"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,r.validateType)(["Identifier","StringLiteral"]),body:(0,r.validateType)("BlockStatement"),kind:(0,r.validateOptional)((0,r.assertOneOf)("CommonJS","ES"))}}),a("DeclareModuleExports",{visitor:["typeAnnotation"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{typeAnnotation:(0,r.validateType)("TypeAnnotation")}}),a("DeclareTypeAlias",{visitor:["id","typeParameters","right"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TypeParameterDeclaration"),right:(0,r.validateType)("FlowType")}}),a("DeclareOpaqueType",{visitor:["id","typeParameters","supertype"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TypeParameterDeclaration"),supertype:(0,r.validateOptionalType)("FlowType"),impltype:(0,r.validateOptionalType)("FlowType")}}),a("DeclareVariable",{visitor:["id"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,r.validateType)("Identifier")}}),a("DeclareExportDeclaration",{visitor:["declaration","specifiers","source"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{declaration:(0,r.validateOptionalType)("Flow"),specifiers:(0,r.validateOptional)((0,r.arrayOfType)(["ExportSpecifier","ExportNamespaceSpecifier"])),source:(0,r.validateOptionalType)("StringLiteral"),default:(0,r.validateOptional)((0,r.assertValueType)("boolean"))}}),a("DeclareExportAllDeclaration",{visitor:["source"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{source:(0,r.validateType)("StringLiteral"),exportKind:(0,r.validateOptional)((0,r.assertOneOf)("type","value"))}}),a("DeclaredPredicate",{visitor:["value"],aliases:["FlowPredicate"],fields:{value:(0,r.validateType)("Flow")}}),a("ExistsTypeAnnotation",{aliases:["FlowType"]}),a("FunctionTypeAnnotation",{visitor:["typeParameters","params","rest","returnType"],aliases:["FlowType"],fields:{typeParameters:(0,r.validateOptionalType)("TypeParameterDeclaration"),params:(0,r.validate)((0,r.arrayOfType)("FunctionTypeParam")),rest:(0,r.validateOptionalType)("FunctionTypeParam"),this:(0,r.validateOptionalType)("FunctionTypeParam"),returnType:(0,r.validateType)("FlowType")}}),a("FunctionTypeParam",{visitor:["name","typeAnnotation"],fields:{name:(0,r.validateOptionalType)("Identifier"),typeAnnotation:(0,r.validateType)("FlowType"),optional:(0,r.validateOptional)((0,r.assertValueType)("boolean"))}}),a("GenericTypeAnnotation",{visitor:["id","typeParameters"],aliases:["FlowType"],fields:{id:(0,r.validateType)(["Identifier","QualifiedTypeIdentifier"]),typeParameters:(0,r.validateOptionalType)("TypeParameterInstantiation")}}),a("InferredPredicate",{aliases:["FlowPredicate"]}),a("InterfaceExtends",{visitor:["id","typeParameters"],fields:{id:(0,r.validateType)(["Identifier","QualifiedTypeIdentifier"]),typeParameters:(0,r.validateOptionalType)("TypeParameterInstantiation")}}),i("InterfaceDeclaration"),a("InterfaceTypeAnnotation",{visitor:["extends","body"],aliases:["FlowType"],fields:{extends:(0,r.validateOptional)((0,r.arrayOfType)("InterfaceExtends")),body:(0,r.validateType)("ObjectTypeAnnotation")}}),a("IntersectionTypeAnnotation",{visitor:["types"],aliases:["FlowType"],fields:{types:(0,r.validate)((0,r.arrayOfType)("FlowType"))}}),a("MixedTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("EmptyTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("NullableTypeAnnotation",{visitor:["typeAnnotation"],aliases:["FlowType"],fields:{typeAnnotation:(0,r.validateType)("FlowType")}}),a("NumberLiteralTypeAnnotation",{builder:["value"],aliases:["FlowType"],fields:{value:(0,r.validate)((0,r.assertValueType)("number"))}}),a("NumberTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("ObjectTypeAnnotation",{visitor:["properties","indexers","callProperties","internalSlots"],aliases:["FlowType"],builder:["properties","indexers","callProperties","internalSlots","exact"],fields:{properties:(0,r.validate)((0,r.arrayOfType)(["ObjectTypeProperty","ObjectTypeSpreadProperty"])),indexers:{validate:(0,r.arrayOfType)("ObjectTypeIndexer"),optional:!0,default:[]},callProperties:{validate:(0,r.arrayOfType)("ObjectTypeCallProperty"),optional:!0,default:[]},internalSlots:{validate:(0,r.arrayOfType)("ObjectTypeInternalSlot"),optional:!0,default:[]},exact:{validate:(0,r.assertValueType)("boolean"),default:!1},inexact:(0,r.validateOptional)((0,r.assertValueType)("boolean"))}}),a("ObjectTypeInternalSlot",{visitor:["id","value","optional","static","method"],aliases:["UserWhitespacable"],fields:{id:(0,r.validateType)("Identifier"),value:(0,r.validateType)("FlowType"),optional:(0,r.validate)((0,r.assertValueType)("boolean")),static:(0,r.validate)((0,r.assertValueType)("boolean")),method:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("ObjectTypeCallProperty",{visitor:["value"],aliases:["UserWhitespacable"],fields:{value:(0,r.validateType)("FlowType"),static:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("ObjectTypeIndexer",{visitor:["id","key","value","variance"],aliases:["UserWhitespacable"],fields:{id:(0,r.validateOptionalType)("Identifier"),key:(0,r.validateType)("FlowType"),value:(0,r.validateType)("FlowType"),static:(0,r.validate)((0,r.assertValueType)("boolean")),variance:(0,r.validateOptionalType)("Variance")}}),a("ObjectTypeProperty",{visitor:["key","value","variance"],aliases:["UserWhitespacable"],fields:{key:(0,r.validateType)(["Identifier","StringLiteral"]),value:(0,r.validateType)("FlowType"),kind:(0,r.validate)((0,r.assertOneOf)("init","get","set")),static:(0,r.validate)((0,r.assertValueType)("boolean")),proto:(0,r.validate)((0,r.assertValueType)("boolean")),optional:(0,r.validate)((0,r.assertValueType)("boolean")),variance:(0,r.validateOptionalType)("Variance"),method:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("ObjectTypeSpreadProperty",{visitor:["argument"],aliases:["UserWhitespacable"],fields:{argument:(0,r.validateType)("FlowType")}}),a("OpaqueType",{visitor:["id","typeParameters","supertype","impltype"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TypeParameterDeclaration"),supertype:(0,r.validateOptionalType)("FlowType"),impltype:(0,r.validateType)("FlowType")}}),a("QualifiedTypeIdentifier",{visitor:["id","qualification"],fields:{id:(0,r.validateType)("Identifier"),qualification:(0,r.validateType)(["Identifier","QualifiedTypeIdentifier"])}}),a("StringLiteralTypeAnnotation",{builder:["value"],aliases:["FlowType"],fields:{value:(0,r.validate)((0,r.assertValueType)("string"))}}),a("StringTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("SymbolTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("ThisTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("TupleTypeAnnotation",{visitor:["types"],aliases:["FlowType"],fields:{types:(0,r.validate)((0,r.arrayOfType)("FlowType"))}}),a("TypeofTypeAnnotation",{visitor:["argument"],aliases:["FlowType"],fields:{argument:(0,r.validateType)("FlowType")}}),a("TypeAlias",{visitor:["id","typeParameters","right"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TypeParameterDeclaration"),right:(0,r.validateType)("FlowType")}}),a("TypeAnnotation",{visitor:["typeAnnotation"],fields:{typeAnnotation:(0,r.validateType)("FlowType")}}),a("TypeCastExpression",{visitor:["expression","typeAnnotation"],aliases:["ExpressionWrapper","Expression"],fields:{expression:(0,r.validateType)("Expression"),typeAnnotation:(0,r.validateType)("TypeAnnotation")}}),a("TypeParameter",{visitor:["bound","default","variance"],fields:{name:(0,r.validate)((0,r.assertValueType)("string")),bound:(0,r.validateOptionalType)("TypeAnnotation"),default:(0,r.validateOptionalType)("FlowType"),variance:(0,r.validateOptionalType)("Variance")}}),a("TypeParameterDeclaration",{visitor:["params"],fields:{params:(0,r.validate)((0,r.arrayOfType)("TypeParameter"))}}),a("TypeParameterInstantiation",{visitor:["params"],fields:{params:(0,r.validate)((0,r.arrayOfType)("FlowType"))}}),a("UnionTypeAnnotation",{visitor:["types"],aliases:["FlowType"],fields:{types:(0,r.validate)((0,r.arrayOfType)("FlowType"))}}),a("Variance",{builder:["kind"],fields:{kind:(0,r.validate)((0,r.assertOneOf)("minus","plus"))}}),a("VoidTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("EnumDeclaration",{aliases:["Statement","Declaration"],visitor:["id","body"],fields:{id:(0,r.validateType)("Identifier"),body:(0,r.validateType)(["EnumBooleanBody","EnumNumberBody","EnumStringBody","EnumSymbolBody"])}}),a("EnumBooleanBody",{aliases:["EnumBody"],visitor:["members"],fields:{explicitType:(0,r.validate)((0,r.assertValueType)("boolean")),members:(0,r.validateArrayOfType)("EnumBooleanMember"),hasUnknownMembers:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("EnumNumberBody",{aliases:["EnumBody"],visitor:["members"],fields:{explicitType:(0,r.validate)((0,r.assertValueType)("boolean")),members:(0,r.validateArrayOfType)("EnumNumberMember"),hasUnknownMembers:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("EnumStringBody",{aliases:["EnumBody"],visitor:["members"],fields:{explicitType:(0,r.validate)((0,r.assertValueType)("boolean")),members:(0,r.validateArrayOfType)(["EnumStringMember","EnumDefaultedMember"]),hasUnknownMembers:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("EnumSymbolBody",{aliases:["EnumBody"],visitor:["members"],fields:{members:(0,r.validateArrayOfType)("EnumDefaultedMember"),hasUnknownMembers:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("EnumBooleanMember",{aliases:["EnumMember"],visitor:["id"],fields:{id:(0,r.validateType)("Identifier"),init:(0,r.validateType)("BooleanLiteral")}}),a("EnumNumberMember",{aliases:["EnumMember"],visitor:["id","init"],fields:{id:(0,r.validateType)("Identifier"),init:(0,r.validateType)("NumericLiteral")}}),a("EnumStringMember",{aliases:["EnumMember"],visitor:["id","init"],fields:{id:(0,r.validateType)("Identifier"),init:(0,r.validateType)("StringLiteral")}}),a("EnumDefaultedMember",{aliases:["EnumMember"],visitor:["id"],fields:{id:(0,r.validateType)("Identifier")}}),a("IndexedAccessType",{visitor:["objectType","indexType"],aliases:["FlowType"],fields:{objectType:(0,r.validateType)("FlowType"),indexType:(0,r.validateType)("FlowType")}}),a("OptionalIndexedAccessType",{visitor:["objectType","indexType"],aliases:["FlowType"],fields:{objectType:(0,r.validateType)("FlowType"),indexType:(0,r.validateType)("FlowType"),optional:(0,r.validate)((0,r.assertValueType)("boolean"))}})},46507:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"ALIAS_KEYS",{enumerable:!0,get:function(){return a.ALIAS_KEYS}}),Object.defineProperty(t,"BUILDER_KEYS",{enumerable:!0,get:function(){return a.BUILDER_KEYS}}),Object.defineProperty(t,"DEPRECATED_KEYS",{enumerable:!0,get:function(){return a.DEPRECATED_KEYS}}),Object.defineProperty(t,"FLIPPED_ALIAS_KEYS",{enumerable:!0,get:function(){return a.FLIPPED_ALIAS_KEYS}}),Object.defineProperty(t,"NODE_FIELDS",{enumerable:!0,get:function(){return a.NODE_FIELDS}}),Object.defineProperty(t,"NODE_PARENT_VALIDATIONS",{enumerable:!0,get:function(){return a.NODE_PARENT_VALIDATIONS}}),Object.defineProperty(t,"PLACEHOLDERS",{enumerable:!0,get:function(){return i.PLACEHOLDERS}}),Object.defineProperty(t,"PLACEHOLDERS_ALIAS",{enumerable:!0,get:function(){return i.PLACEHOLDERS_ALIAS}}),Object.defineProperty(t,"PLACEHOLDERS_FLIPPED_ALIAS",{enumerable:!0,get:function(){return i.PLACEHOLDERS_FLIPPED_ALIAS}}),t.TYPES=void 0,Object.defineProperty(t,"VISITOR_KEYS",{enumerable:!0,get:function(){return a.VISITOR_KEYS}});var r=n(53164);n(34457),n(85391),n(38565),n(55030),n(71456),n(20045);var a=n(54913),i=n(29488);r(a.VISITOR_KEYS),r(a.ALIAS_KEYS),r(a.FLIPPED_ALIAS_KEYS),r(a.NODE_FIELDS),r(a.BUILDER_KEYS),r(a.DEPRECATED_KEYS),r(i.PLACEHOLDERS_ALIAS),r(i.PLACEHOLDERS_FLIPPED_ALIAS);const s=[].concat(Object.keys(a.VISITOR_KEYS),Object.keys(a.FLIPPED_ALIAS_KEYS),Object.keys(a.DEPRECATED_KEYS));t.TYPES=s},38565:(e,t,n)=>{"use strict";var r=n(54913);const a=(0,r.defineAliasedType)("JSX");a("JSXAttribute",{visitor:["name","value"],aliases:["Immutable"],fields:{name:{validate:(0,r.assertNodeType)("JSXIdentifier","JSXNamespacedName")},value:{optional:!0,validate:(0,r.assertNodeType)("JSXElement","JSXFragment","StringLiteral","JSXExpressionContainer")}}}),a("JSXClosingElement",{visitor:["name"],aliases:["Immutable"],fields:{name:{validate:(0,r.assertNodeType)("JSXIdentifier","JSXMemberExpression","JSXNamespacedName")}}}),a("JSXElement",{builder:["openingElement","closingElement","children","selfClosing"],visitor:["openingElement","children","closingElement"],aliases:["Immutable","Expression"],fields:Object.assign({openingElement:{validate:(0,r.assertNodeType)("JSXOpeningElement")},closingElement:{optional:!0,validate:(0,r.assertNodeType)("JSXClosingElement")},children:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("JSXText","JSXExpressionContainer","JSXSpreadChild","JSXElement","JSXFragment")))}},{selfClosing:{validate:(0,r.assertValueType)("boolean"),optional:!0}})}),a("JSXEmptyExpression",{}),a("JSXExpressionContainer",{visitor:["expression"],aliases:["Immutable"],fields:{expression:{validate:(0,r.assertNodeType)("Expression","JSXEmptyExpression")}}}),a("JSXSpreadChild",{visitor:["expression"],aliases:["Immutable"],fields:{expression:{validate:(0,r.assertNodeType)("Expression")}}}),a("JSXIdentifier",{builder:["name"],fields:{name:{validate:(0,r.assertValueType)("string")}}}),a("JSXMemberExpression",{visitor:["object","property"],fields:{object:{validate:(0,r.assertNodeType)("JSXMemberExpression","JSXIdentifier")},property:{validate:(0,r.assertNodeType)("JSXIdentifier")}}}),a("JSXNamespacedName",{visitor:["namespace","name"],fields:{namespace:{validate:(0,r.assertNodeType)("JSXIdentifier")},name:{validate:(0,r.assertNodeType)("JSXIdentifier")}}}),a("JSXOpeningElement",{builder:["name","attributes","selfClosing"],visitor:["name","attributes"],aliases:["Immutable"],fields:{name:{validate:(0,r.assertNodeType)("JSXIdentifier","JSXMemberExpression","JSXNamespacedName")},selfClosing:{default:!1},attributes:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("JSXAttribute","JSXSpreadAttribute")))},typeParameters:{validate:(0,r.assertNodeType)("TypeParameterInstantiation","TSTypeParameterInstantiation"),optional:!0}}}),a("JSXSpreadAttribute",{visitor:["argument"],fields:{argument:{validate:(0,r.assertNodeType)("Expression")}}}),a("JSXText",{aliases:["Immutable"],builder:["value"],fields:{value:{validate:(0,r.assertValueType)("string")}}}),a("JSXFragment",{builder:["openingFragment","closingFragment","children"],visitor:["openingFragment","children","closingFragment"],aliases:["Immutable","Expression"],fields:{openingFragment:{validate:(0,r.assertNodeType)("JSXOpeningFragment")},closingFragment:{validate:(0,r.assertNodeType)("JSXClosingFragment")},children:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("JSXText","JSXExpressionContainer","JSXSpreadChild","JSXElement","JSXFragment")))}}}),a("JSXOpeningFragment",{aliases:["Immutable"]}),a("JSXClosingFragment",{aliases:["Immutable"]})},55030:(e,t,n)=>{"use strict";var r=n(54913),a=n(29488);const i=(0,r.defineAliasedType)("Miscellaneous");i("Noop",{visitor:[]}),i("Placeholder",{visitor:[],builder:["expectedNode","name"],fields:{name:{validate:(0,r.assertNodeType)("Identifier")},expectedNode:{validate:(0,r.assertOneOf)(...a.PLACEHOLDERS)}}}),i("V8IntrinsicIdentifier",{builder:["name"],fields:{name:{validate:(0,r.assertValueType)("string")}}})},29488:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PLACEHOLDERS_FLIPPED_ALIAS=t.PLACEHOLDERS_ALIAS=t.PLACEHOLDERS=void 0;var r=n(54913);const a=["Identifier","StringLiteral","Expression","Statement","Declaration","BlockStatement","ClassBody","Pattern"];t.PLACEHOLDERS=a;const i={Declaration:["Statement"],Pattern:["PatternLike","LVal"]};t.PLACEHOLDERS_ALIAS=i;for(const e of a){const t=r.ALIAS_KEYS[e];null!=t&&t.length&&(i[e]=t)}const s={};t.PLACEHOLDERS_FLIPPED_ALIAS=s,Object.keys(i).forEach((e=>{i[e].forEach((t=>{Object.hasOwnProperty.call(s,t)||(s[t]=[]),s[t].push(e)}))}))},20045:(e,t,n)=>{"use strict";var r=n(54913),a=n(34457),i=n(67275);const s=(0,r.defineAliasedType)("TypeScript"),o=(0,r.assertValueType)("boolean"),l={returnType:{validate:(0,r.assertNodeType)("TSTypeAnnotation","Noop"),optional:!0},typeParameters:{validate:(0,r.assertNodeType)("TSTypeParameterDeclaration","Noop"),optional:!0}};s("TSParameterProperty",{aliases:["LVal"],visitor:["parameter"],fields:{accessibility:{validate:(0,r.assertOneOf)("public","private","protected"),optional:!0},readonly:{validate:(0,r.assertValueType)("boolean"),optional:!0},parameter:{validate:(0,r.assertNodeType)("Identifier","AssignmentPattern")},override:{validate:(0,r.assertValueType)("boolean"),optional:!0},decorators:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("Decorator"))),optional:!0}}}),s("TSDeclareFunction",{aliases:["Statement","Declaration"],visitor:["id","typeParameters","params","returnType"],fields:Object.assign({},a.functionDeclarationCommon,l)}),s("TSDeclareMethod",{visitor:["decorators","key","typeParameters","params","returnType"],fields:Object.assign({},a.classMethodOrDeclareMethodCommon,l)}),s("TSQualifiedName",{aliases:["TSEntityName"],visitor:["left","right"],fields:{left:(0,r.validateType)("TSEntityName"),right:(0,r.validateType)("Identifier")}});const p={typeParameters:(0,r.validateOptionalType)("TSTypeParameterDeclaration"),parameters:(0,r.validateArrayOfType)(["Identifier","RestElement"]),typeAnnotation:(0,r.validateOptionalType)("TSTypeAnnotation")},c={aliases:["TSTypeElement"],visitor:["typeParameters","parameters","typeAnnotation"],fields:p};s("TSCallSignatureDeclaration",c),s("TSConstructSignatureDeclaration",c);const u={key:(0,r.validateType)("Expression"),computed:(0,r.validate)(o),optional:(0,r.validateOptional)(o)};s("TSPropertySignature",{aliases:["TSTypeElement"],visitor:["key","typeAnnotation","initializer"],fields:Object.assign({},u,{readonly:(0,r.validateOptional)(o),typeAnnotation:(0,r.validateOptionalType)("TSTypeAnnotation"),initializer:(0,r.validateOptionalType)("Expression"),kind:{validate:(0,r.assertOneOf)("get","set")}})}),s("TSMethodSignature",{aliases:["TSTypeElement"],visitor:["key","typeParameters","parameters","typeAnnotation"],fields:Object.assign({},p,u,{kind:{validate:(0,r.assertOneOf)("method","get","set")}})}),s("TSIndexSignature",{aliases:["TSTypeElement"],visitor:["parameters","typeAnnotation"],fields:{readonly:(0,r.validateOptional)(o),static:(0,r.validateOptional)(o),parameters:(0,r.validateArrayOfType)("Identifier"),typeAnnotation:(0,r.validateOptionalType)("TSTypeAnnotation")}});const d=["TSAnyKeyword","TSBooleanKeyword","TSBigIntKeyword","TSIntrinsicKeyword","TSNeverKeyword","TSNullKeyword","TSNumberKeyword","TSObjectKeyword","TSStringKeyword","TSSymbolKeyword","TSUndefinedKeyword","TSUnknownKeyword","TSVoidKeyword"];for(const e of d)s(e,{aliases:["TSType","TSBaseType"],visitor:[],fields:{}});s("TSThisType",{aliases:["TSType","TSBaseType"],visitor:[],fields:{}});const f={aliases:["TSType"],visitor:["typeParameters","parameters","typeAnnotation"]};s("TSFunctionType",Object.assign({},f,{fields:p})),s("TSConstructorType",Object.assign({},f,{fields:Object.assign({},p,{abstract:(0,r.validateOptional)(o)})})),s("TSTypeReference",{aliases:["TSType"],visitor:["typeName","typeParameters"],fields:{typeName:(0,r.validateType)("TSEntityName"),typeParameters:(0,r.validateOptionalType)("TSTypeParameterInstantiation")}}),s("TSTypePredicate",{aliases:["TSType"],visitor:["parameterName","typeAnnotation"],builder:["parameterName","typeAnnotation","asserts"],fields:{parameterName:(0,r.validateType)(["Identifier","TSThisType"]),typeAnnotation:(0,r.validateOptionalType)("TSTypeAnnotation"),asserts:(0,r.validateOptional)(o)}}),s("TSTypeQuery",{aliases:["TSType"],visitor:["exprName"],fields:{exprName:(0,r.validateType)(["TSEntityName","TSImportType"])}}),s("TSTypeLiteral",{aliases:["TSType"],visitor:["members"],fields:{members:(0,r.validateArrayOfType)("TSTypeElement")}}),s("TSArrayType",{aliases:["TSType"],visitor:["elementType"],fields:{elementType:(0,r.validateType)("TSType")}}),s("TSTupleType",{aliases:["TSType"],visitor:["elementTypes"],fields:{elementTypes:(0,r.validateArrayOfType)(["TSType","TSNamedTupleMember"])}}),s("TSOptionalType",{aliases:["TSType"],visitor:["typeAnnotation"],fields:{typeAnnotation:(0,r.validateType)("TSType")}}),s("TSRestType",{aliases:["TSType"],visitor:["typeAnnotation"],fields:{typeAnnotation:(0,r.validateType)("TSType")}}),s("TSNamedTupleMember",{visitor:["label","elementType"],builder:["label","elementType","optional"],fields:{label:(0,r.validateType)("Identifier"),optional:{validate:o,default:!1},elementType:(0,r.validateType)("TSType")}});const y={aliases:["TSType"],visitor:["types"],fields:{types:(0,r.validateArrayOfType)("TSType")}};s("TSUnionType",y),s("TSIntersectionType",y),s("TSConditionalType",{aliases:["TSType"],visitor:["checkType","extendsType","trueType","falseType"],fields:{checkType:(0,r.validateType)("TSType"),extendsType:(0,r.validateType)("TSType"),trueType:(0,r.validateType)("TSType"),falseType:(0,r.validateType)("TSType")}}),s("TSInferType",{aliases:["TSType"],visitor:["typeParameter"],fields:{typeParameter:(0,r.validateType)("TSTypeParameter")}}),s("TSParenthesizedType",{aliases:["TSType"],visitor:["typeAnnotation"],fields:{typeAnnotation:(0,r.validateType)("TSType")}}),s("TSTypeOperator",{aliases:["TSType"],visitor:["typeAnnotation"],fields:{operator:(0,r.validate)((0,r.assertValueType)("string")),typeAnnotation:(0,r.validateType)("TSType")}}),s("TSIndexedAccessType",{aliases:["TSType"],visitor:["objectType","indexType"],fields:{objectType:(0,r.validateType)("TSType"),indexType:(0,r.validateType)("TSType")}}),s("TSMappedType",{aliases:["TSType"],visitor:["typeParameter","typeAnnotation","nameType"],fields:{readonly:(0,r.validateOptional)(o),typeParameter:(0,r.validateType)("TSTypeParameter"),optional:(0,r.validateOptional)(o),typeAnnotation:(0,r.validateOptionalType)("TSType"),nameType:(0,r.validateOptionalType)("TSType")}}),s("TSLiteralType",{aliases:["TSType","TSBaseType"],visitor:["literal"],fields:{literal:{validate:function(){const e=(0,r.assertNodeType)("NumericLiteral","BigIntLiteral"),t=(0,r.assertOneOf)("-"),n=(0,r.assertNodeType)("NumericLiteral","StringLiteral","BooleanLiteral","BigIntLiteral");function a(r,a,s){(0,i.default)("UnaryExpression",s)?(t(s,"operator",s.operator),e(s,"argument",s.argument)):n(r,a,s)}return a.oneOfNodeTypes=["NumericLiteral","StringLiteral","BooleanLiteral","BigIntLiteral","UnaryExpression"],a}()}}}),s("TSExpressionWithTypeArguments",{aliases:["TSType"],visitor:["expression","typeParameters"],fields:{expression:(0,r.validateType)("TSEntityName"),typeParameters:(0,r.validateOptionalType)("TSTypeParameterInstantiation")}}),s("TSInterfaceDeclaration",{aliases:["Statement","Declaration"],visitor:["id","typeParameters","extends","body"],fields:{declare:(0,r.validateOptional)(o),id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TSTypeParameterDeclaration"),extends:(0,r.validateOptional)((0,r.arrayOfType)("TSExpressionWithTypeArguments")),body:(0,r.validateType)("TSInterfaceBody")}}),s("TSInterfaceBody",{visitor:["body"],fields:{body:(0,r.validateArrayOfType)("TSTypeElement")}}),s("TSTypeAliasDeclaration",{aliases:["Statement","Declaration"],visitor:["id","typeParameters","typeAnnotation"],fields:{declare:(0,r.validateOptional)(o),id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TSTypeParameterDeclaration"),typeAnnotation:(0,r.validateType)("TSType")}}),s("TSAsExpression",{aliases:["Expression","LVal","PatternLike"],visitor:["expression","typeAnnotation"],fields:{expression:(0,r.validateType)("Expression"),typeAnnotation:(0,r.validateType)("TSType")}}),s("TSTypeAssertion",{aliases:["Expression","LVal","PatternLike"],visitor:["typeAnnotation","expression"],fields:{typeAnnotation:(0,r.validateType)("TSType"),expression:(0,r.validateType)("Expression")}}),s("TSEnumDeclaration",{aliases:["Statement","Declaration"],visitor:["id","members"],fields:{declare:(0,r.validateOptional)(o),const:(0,r.validateOptional)(o),id:(0,r.validateType)("Identifier"),members:(0,r.validateArrayOfType)("TSEnumMember"),initializer:(0,r.validateOptionalType)("Expression")}}),s("TSEnumMember",{visitor:["id","initializer"],fields:{id:(0,r.validateType)(["Identifier","StringLiteral"]),initializer:(0,r.validateOptionalType)("Expression")}}),s("TSModuleDeclaration",{aliases:["Statement","Declaration"],visitor:["id","body"],fields:{declare:(0,r.validateOptional)(o),global:(0,r.validateOptional)(o),id:(0,r.validateType)(["Identifier","StringLiteral"]),body:(0,r.validateType)(["TSModuleBlock","TSModuleDeclaration"])}}),s("TSModuleBlock",{aliases:["Scopable","Block","BlockParent"],visitor:["body"],fields:{body:(0,r.validateArrayOfType)("Statement")}}),s("TSImportType",{aliases:["TSType"],visitor:["argument","qualifier","typeParameters"],fields:{argument:(0,r.validateType)("StringLiteral"),qualifier:(0,r.validateOptionalType)("TSEntityName"),typeParameters:(0,r.validateOptionalType)("TSTypeParameterInstantiation")}}),s("TSImportEqualsDeclaration",{aliases:["Statement"],visitor:["id","moduleReference"],fields:{isExport:(0,r.validate)(o),id:(0,r.validateType)("Identifier"),moduleReference:(0,r.validateType)(["TSEntityName","TSExternalModuleReference"]),importKind:{validate:(0,r.assertOneOf)("type","value"),optional:!0}}}),s("TSExternalModuleReference",{visitor:["expression"],fields:{expression:(0,r.validateType)("StringLiteral")}}),s("TSNonNullExpression",{aliases:["Expression","LVal","PatternLike"],visitor:["expression"],fields:{expression:(0,r.validateType)("Expression")}}),s("TSExportAssignment",{aliases:["Statement"],visitor:["expression"],fields:{expression:(0,r.validateType)("Expression")}}),s("TSNamespaceExportDeclaration",{aliases:["Statement"],visitor:["id"],fields:{id:(0,r.validateType)("Identifier")}}),s("TSTypeAnnotation",{visitor:["typeAnnotation"],fields:{typeAnnotation:{validate:(0,r.assertNodeType)("TSType")}}}),s("TSTypeParameterInstantiation",{visitor:["params"],fields:{params:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("TSType")))}}}),s("TSTypeParameterDeclaration",{visitor:["params"],fields:{params:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("TSTypeParameter")))}}}),s("TSTypeParameter",{builder:["constraint","default","name"],visitor:["constraint","default"],fields:{name:{validate:(0,r.assertValueType)("string")},constraint:{validate:(0,r.assertNodeType)("TSType"),optional:!0},default:{validate:(0,r.assertNodeType)("TSType"),optional:!0}}})},54913:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.VISITOR_KEYS=t.NODE_PARENT_VALIDATIONS=t.NODE_FIELDS=t.FLIPPED_ALIAS_KEYS=t.DEPRECATED_KEYS=t.BUILDER_KEYS=t.ALIAS_KEYS=void 0,t.arrayOf=m,t.arrayOfType=h,t.assertEach=T,t.assertNodeOrValueType=function(...e){function t(t,n,i){for(const s of e)if(d(i)===s||(0,r.default)(s,i))return void(0,a.validateChild)(t,n,i);throw new TypeError(`Property ${n} of ${t.type} expected node to be of a type ${JSON.stringify(e)} but instead got ${JSON.stringify(null==i?void 0:i.type)}`)}return t.oneOfNodeOrValueTypes=e,t},t.assertNodeType=S,t.assertOneOf=function(...e){function t(t,n,r){if(e.indexOf(r)<0)throw new TypeError(`Property ${n} expected value to be one of ${JSON.stringify(e)} but got ${JSON.stringify(r)}`)}return t.oneOf=e,t},t.assertOptionalChainStart=function(){return function(e){var t;let n=e;for(;e;){const{type:e}=n;if("OptionalCallExpression"!==e){if("OptionalMemberExpression"!==e)break;if(n.optional)return;n=n.object}else{if(n.optional)return;n=n.callee}}throw new TypeError(`Non-optional ${e.type} must chain from an optional OptionalMemberExpression or OptionalCallExpression. Found chain from ${null==(t=n)?void 0:t.type}`)}},t.assertShape=function(e){function t(t,n,r){const i=[];for(const n of Object.keys(e))try{(0,a.validateField)(t,n,r[n],e[n])}catch(e){if(e instanceof TypeError){i.push(e.message);continue}throw e}if(i.length)throw new TypeError(`Property ${n} of ${t.type} expected to have the following:\n${i.join("\n")}`)}return t.shapeOf=e,t},t.assertValueType=b,t.chain=E,t.default=g,t.defineAliasedType=function(...e){return(t,n={})=>{let r=n.aliases;var a;r||(n.inherits&&(r=null==(a=A[n.inherits].aliases)?void 0:a.slice()),null!=r||(r=[]),n.aliases=r);const i=e.filter((e=>!r.includes(e)));return r.unshift(...i),g(t,n)}},t.typeIs=y,t.validate=f,t.validateArrayOfType=function(e){return f(h(e))},t.validateOptional=function(e){return{validate:e,optional:!0}},t.validateOptionalType=function(e){return{validate:y(e),optional:!0}},t.validateType=function(e){return f(y(e))};var r=n(67275),a=n(43804);const i={};t.VISITOR_KEYS=i;const s={};t.ALIAS_KEYS=s;const o={};t.FLIPPED_ALIAS_KEYS=o;const l={};t.NODE_FIELDS=l;const p={};t.BUILDER_KEYS=p;const c={};t.DEPRECATED_KEYS=c;const u={};function d(e){return Array.isArray(e)?"array":null===e?"null":typeof e}function f(e){return{validate:e}}function y(e){return"string"==typeof e?S(e):S(...e)}function m(e){return E(b("array"),T(e))}function h(e){return m(y(e))}function T(e){function t(t,n,r){if(Array.isArray(r))for(let i=0;i=2&&"type"in e[0]&&"array"===e[0].type&&!("each"in e[1]))throw new Error('An assertValueType("array") validator can only be followed by an assertEach(...) validator.');return t}t.NODE_PARENT_VALIDATIONS=u;const P=["aliases","builder","deprecatedAlias","fields","inherits","visitor","validate"],x=["default","optional","validate"];function g(e,t={}){const n=t.inherits&&A[t.inherits]||{};let r=t.fields;if(!r&&(r={},n.fields)){const e=Object.getOwnPropertyNames(n.fields);for(const t of e){const e=n.fields[t],a=e.default;if(Array.isArray(a)?a.length>0:a&&"object"==typeof a)throw new Error("field defaults can only be primitives or empty arrays currently");r[t]={default:Array.isArray(a)?[]:a,optional:e.optional,validate:e.validate}}}const a=t.visitor||n.visitor||[],f=t.aliases||n.aliases||[],y=t.builder||n.builder||t.visitor||[];for(const n of Object.keys(t))if(-1===P.indexOf(n))throw new Error(`Unknown type option "${n}" on ${e}`);t.deprecatedAlias&&(c[t.deprecatedAlias]=e);for(const e of a.concat(y))r[e]=r[e]||{};for(const t of Object.keys(r)){const n=r[t];void 0!==n.default&&-1===y.indexOf(t)&&(n.optional=!0),void 0===n.default?n.default=null:n.validate||null==n.default||(n.validate=b(d(n.default)));for(const r of Object.keys(n))if(-1===x.indexOf(r))throw new Error(`Unknown field key "${r}" on ${e}.${t}`)}i[e]=t.visitor=a,p[e]=t.builder=y,l[e]=t.fields=r,s[e]=t.aliases=f,f.forEach((t=>{o[t]=o[t]||[],o[t].push(e)})),t.validate&&(u[e]=t.validate),A[e]=t}const A={}},38218:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r={react:!0,assertNode:!0,createTypeAnnotationBasedOnTypeof:!0,createUnionTypeAnnotation:!0,createFlowUnionType:!0,createTSUnionType:!0,cloneNode:!0,clone:!0,cloneDeep:!0,cloneDeepWithoutLoc:!0,cloneWithoutLoc:!0,addComment:!0,addComments:!0,inheritInnerComments:!0,inheritLeadingComments:!0,inheritsComments:!0,inheritTrailingComments:!0,removeComments:!0,ensureBlock:!0,toBindingIdentifierName:!0,toBlock:!0,toComputedKey:!0,toExpression:!0,toIdentifier:!0,toKeyAlias:!0,toSequenceExpression:!0,toStatement:!0,valueToNode:!0,appendToMemberExpression:!0,inherits:!0,prependToMemberExpression:!0,removeProperties:!0,removePropertiesDeep:!0,removeTypeDuplicates:!0,getBindingIdentifiers:!0,getOuterBindingIdentifiers:!0,traverse:!0,traverseFast:!0,shallowEqual:!0,is:!0,isBinding:!0,isBlockScoped:!0,isImmutable:!0,isLet:!0,isNode:!0,isNodesEquivalent:!0,isPlaceholderType:!0,isReferenced:!0,isScope:!0,isSpecifierDefault:!0,isType:!0,isValidES3Identifier:!0,isValidIdentifier:!0,isVar:!0,matchesPattern:!0,validate:!0,buildMatchMemberExpression:!0};Object.defineProperty(t,"addComment",{enumerable:!0,get:function(){return b.default}}),Object.defineProperty(t,"addComments",{enumerable:!0,get:function(){return E.default}}),Object.defineProperty(t,"appendToMemberExpression",{enumerable:!0,get:function(){return R.default}}),Object.defineProperty(t,"assertNode",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(t,"buildMatchMemberExpression",{enumerable:!0,get:function(){return fe.default}}),Object.defineProperty(t,"clone",{enumerable:!0,get:function(){return m.default}}),Object.defineProperty(t,"cloneDeep",{enumerable:!0,get:function(){return h.default}}),Object.defineProperty(t,"cloneDeepWithoutLoc",{enumerable:!0,get:function(){return T.default}}),Object.defineProperty(t,"cloneNode",{enumerable:!0,get:function(){return y.default}}),Object.defineProperty(t,"cloneWithoutLoc",{enumerable:!0,get:function(){return S.default}}),Object.defineProperty(t,"createFlowUnionType",{enumerable:!0,get:function(){return c.default}}),Object.defineProperty(t,"createTSUnionType",{enumerable:!0,get:function(){return u.default}}),Object.defineProperty(t,"createTypeAnnotationBasedOnTypeof",{enumerable:!0,get:function(){return p.default}}),Object.defineProperty(t,"createUnionTypeAnnotation",{enumerable:!0,get:function(){return c.default}}),Object.defineProperty(t,"ensureBlock",{enumerable:!0,get:function(){return N.default}}),Object.defineProperty(t,"getBindingIdentifiers",{enumerable:!0,get:function(){return J.default}}),Object.defineProperty(t,"getOuterBindingIdentifiers",{enumerable:!0,get:function(){return W.default}}),Object.defineProperty(t,"inheritInnerComments",{enumerable:!0,get:function(){return P.default}}),Object.defineProperty(t,"inheritLeadingComments",{enumerable:!0,get:function(){return x.default}}),Object.defineProperty(t,"inheritTrailingComments",{enumerable:!0,get:function(){return A.default}}),Object.defineProperty(t,"inherits",{enumerable:!0,get:function(){return K.default}}),Object.defineProperty(t,"inheritsComments",{enumerable:!0,get:function(){return g.default}}),Object.defineProperty(t,"is",{enumerable:!0,get:function(){return z.default}}),Object.defineProperty(t,"isBinding",{enumerable:!0,get:function(){return H.default}}),Object.defineProperty(t,"isBlockScoped",{enumerable:!0,get:function(){return Q.default}}),Object.defineProperty(t,"isImmutable",{enumerable:!0,get:function(){return Z.default}}),Object.defineProperty(t,"isLet",{enumerable:!0,get:function(){return ee.default}}),Object.defineProperty(t,"isNode",{enumerable:!0,get:function(){return te.default}}),Object.defineProperty(t,"isNodesEquivalent",{enumerable:!0,get:function(){return ne.default}}),Object.defineProperty(t,"isPlaceholderType",{enumerable:!0,get:function(){return re.default}}),Object.defineProperty(t,"isReferenced",{enumerable:!0,get:function(){return ae.default}}),Object.defineProperty(t,"isScope",{enumerable:!0,get:function(){return ie.default}}),Object.defineProperty(t,"isSpecifierDefault",{enumerable:!0,get:function(){return se.default}}),Object.defineProperty(t,"isType",{enumerable:!0,get:function(){return oe.default}}),Object.defineProperty(t,"isValidES3Identifier",{enumerable:!0,get:function(){return le.default}}),Object.defineProperty(t,"isValidIdentifier",{enumerable:!0,get:function(){return pe.default}}),Object.defineProperty(t,"isVar",{enumerable:!0,get:function(){return ce.default}}),Object.defineProperty(t,"matchesPattern",{enumerable:!0,get:function(){return ue.default}}),Object.defineProperty(t,"prependToMemberExpression",{enumerable:!0,get:function(){return V.default}}),t.react=void 0,Object.defineProperty(t,"removeComments",{enumerable:!0,get:function(){return v.default}}),Object.defineProperty(t,"removeProperties",{enumerable:!0,get:function(){return Y.default}}),Object.defineProperty(t,"removePropertiesDeep",{enumerable:!0,get:function(){return U.default}}),Object.defineProperty(t,"removeTypeDuplicates",{enumerable:!0,get:function(){return X.default}}),Object.defineProperty(t,"shallowEqual",{enumerable:!0,get:function(){return G.default}}),Object.defineProperty(t,"toBindingIdentifierName",{enumerable:!0,get:function(){return D.default}}),Object.defineProperty(t,"toBlock",{enumerable:!0,get:function(){return C.default}}),Object.defineProperty(t,"toComputedKey",{enumerable:!0,get:function(){return w.default}}),Object.defineProperty(t,"toExpression",{enumerable:!0,get:function(){return L.default}}),Object.defineProperty(t,"toIdentifier",{enumerable:!0,get:function(){return j.default}}),Object.defineProperty(t,"toKeyAlias",{enumerable:!0,get:function(){return _.default}}),Object.defineProperty(t,"toSequenceExpression",{enumerable:!0,get:function(){return M.default}}),Object.defineProperty(t,"toStatement",{enumerable:!0,get:function(){return k.default}}),Object.defineProperty(t,"traverse",{enumerable:!0,get:function(){return q.default}}),Object.defineProperty(t,"traverseFast",{enumerable:!0,get:function(){return $.default}}),Object.defineProperty(t,"validate",{enumerable:!0,get:function(){return de.default}}),Object.defineProperty(t,"valueToNode",{enumerable:!0,get:function(){return B.default}});var a=n(86035),i=n(13193),s=n(88478),o=n(60245),l=n(27133);Object.keys(l).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===l[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return l[e]}}))}));var p=n(40949),c=n(29983),u=n(4571),d=n(34391);Object.keys(d).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===d[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return d[e]}}))}));var f=n(86104);Object.keys(f).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===f[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return f[e]}}))}));var y=n(46209),m=n(92363),h=n(96953),T=n(90863),S=n(30748),b=n(99529),E=n(96182),P=n(6455),x=n(91835),g=n(29564),A=n(59653),v=n(91200),O=n(18267);Object.keys(O).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===O[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return O[e]}}))}));var I=n(36325);Object.keys(I).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===I[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return I[e]}}))}));var N=n(44315),D=n(28316),C=n(19276),w=n(59434),L=n(33348),j=n(71309),_=n(510),M=n(41435),k=n(22307),B=n(46794),F=n(46507);Object.keys(F).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===F[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return F[e]}}))}));var R=n(47899),K=n(13633),V=n(73094),Y=n(92714),U=n(94936),X=n(17321),J=n(1477),W=n(92812),q=n(98880);Object.keys(q).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===q[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return q[e]}}))}));var $=n(92862),G=n(87610),z=n(67275),H=n(86971),Q=n(60443),Z=n(49268),ee=n(77182),te=n(8523),ne=n(4635),re=n(50015),ae=n(24837),ie=n(46400),se=n(52800),oe=n(11452),le=n(38917),pe=n(93045),ce=n(90830),ue=n(92205),de=n(43804),fe=n(88847),ye=n(94746);Object.keys(ye).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===ye[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return ye[e]}}))}));var me=n(91585);Object.keys(me).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===me[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return me[e]}}))}));const he={isReactComponent:a.default,isCompatTag:i.default,buildChildren:s.default};t.react=he},47899:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n=!1){return e.object=(0,r.memberExpression)(e.object,e.property,e.computed),e.property=t,e.computed=!!n,e};var r=n(34391)},17321:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function e(t){const n={},i={},s=new Set,o=[];for(let l=0;l=0)){if((0,r.isAnyTypeAnnotation)(p))return[p];if((0,r.isFlowBaseAnnotation)(p))i[p.type]=p;else if((0,r.isUnionTypeAnnotation)(p))s.has(p.types)||(t=t.concat(p.types),s.add(p.types));else if((0,r.isGenericTypeAnnotation)(p)){const t=a(p.id);if(n[t]){let r=n[t];r.typeParameters?p.typeParameters&&(r.typeParameters.params=e(r.typeParameters.params.concat(p.typeParameters.params))):r=p.typeParameters}else n[t]=p}else o.push(p)}}for(const e of Object.keys(i))o.push(i[e]);for(const e of Object.keys(n))o.push(n[e]);return o};var r=n(94746);function a(e){return(0,r.isIdentifier)(e)?e.name:`${e.id.name}.${a(e.qualification)}`}},13633:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if(!e||!t)return e;for(const n of r.INHERIT_KEYS.optional)null==e[n]&&(e[n]=t[n]);for(const n of Object.keys(t))"_"===n[0]&&"__clone"!==n&&(e[n]=t[n]);for(const n of r.INHERIT_KEYS.force)e[n]=t[n];return(0,a.default)(e,t),e};var r=n(36325),a=n(29564)},73094:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){return e.object=(0,r.memberExpression)(t,e.object),e};var r=n(34391)},92714:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t={}){const n=t.preserveComments?a:i;for(const t of n)null!=e[t]&&(e[t]=void 0);for(const t of Object.keys(e))"_"===t[0]&&null!=e[t]&&(e[t]=void 0);const r=Object.getOwnPropertySymbols(e);for(const t of r)e[t]=null};var r=n(36325);const a=["tokens","start","end","loc","raw","rawValue"],i=r.COMMENT_KEYS.concat(["comments"]).concat(a)},94936:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){return(0,r.default)(e,a.default,t),e};var r=n(92862),a=n(92714)},71954:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){const t={},n={},a=new Set,i=[];for(let t=0;t=0)){if((0,r.isTSAnyKeyword)(s))return[s];(0,r.isTSBaseType)(s)?n[s.type]=s:(0,r.isTSUnionType)(s)?a.has(s.types)||(e.push(...s.types),a.add(s.types)):i.push(s)}}for(const e of Object.keys(n))i.push(n[e]);for(const e of Object.keys(t))i.push(t[e]);return i};var r=n(94746)},1477:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=a;var r=n(94746);function a(e,t,n){let i=[].concat(e);const s=Object.create(null);for(;i.length;){const e=i.shift();if(!e)continue;const o=a.keys[e.type];if((0,r.isIdentifier)(e))t?(s[e.name]=s[e.name]||[]).push(e):s[e.name]=e;else if(!(0,r.isExportDeclaration)(e)||(0,r.isExportAllDeclaration)(e)){if(n){if((0,r.isFunctionDeclaration)(e)){i.push(e.id);continue}if((0,r.isFunctionExpression)(e))continue}if(o)for(let t=0;t{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(1477);t.default=function(e,t){return(0,r.default)(e,t,!0)}},98880:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){"function"==typeof t&&(t={enter:t});const{enter:r,exit:i}=t;a(e,r,i,n,[])};var r=n(46507);function a(e,t,n,i,s){const o=r.VISITOR_KEYS[e.type];if(o){t&&t(e,s,i);for(const r of o){const o=e[r];if(Array.isArray(o))for(let l=0;l{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function e(t,n,a){if(!t)return;const i=r.VISITOR_KEYS[t.type];if(i){n(t,a=a||{});for(const r of i){const i=t[r];if(Array.isArray(i))for(const t of i)e(t,n,a);else e(i,n,a)}}};var r=n(46507)},8834:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){t&&n&&(t[e]=Array.from(new Set([].concat(t[e],n[e]).filter(Boolean))))}},15835:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){const n=e.value.split(/\r\n|\n|\r/);let a=0;for(let e=0;e{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){const n=Object.keys(t);for(const r of n)if(e[r]!==t[r])return!1;return!0}},88847:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){const n=e.split(".");return e=>(0,r.default)(e,n,t)};var r=n(92205)},94746:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isAccessor=function(e,t){return!!e&&("ClassAccessorProperty"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isAnyTypeAnnotation=function(e,t){return!!e&&("AnyTypeAnnotation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isArgumentPlaceholder=function(e,t){return!!e&&("ArgumentPlaceholder"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isArrayExpression=function(e,t){return!!e&&("ArrayExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isArrayPattern=function(e,t){return!!e&&("ArrayPattern"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isArrayTypeAnnotation=function(e,t){return!!e&&("ArrayTypeAnnotation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isArrowFunctionExpression=function(e,t){return!!e&&("ArrowFunctionExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isAssignmentExpression=function(e,t){return!!e&&("AssignmentExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isAssignmentPattern=function(e,t){return!!e&&("AssignmentPattern"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isAwaitExpression=function(e,t){return!!e&&("AwaitExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isBigIntLiteral=function(e,t){return!!e&&("BigIntLiteral"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isBinary=function(e,t){if(!e)return!1;const n=e.type;return("BinaryExpression"===n||"LogicalExpression"===n)&&(void 0===t||(0,r.default)(e,t))},t.isBinaryExpression=function(e,t){return!!e&&("BinaryExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isBindExpression=function(e,t){return!!e&&("BindExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isBlock=function(e,t){if(!e)return!1;const n=e.type;return("BlockStatement"===n||"Program"===n||"TSModuleBlock"===n||"Placeholder"===n&&"BlockStatement"===e.expectedNode)&&(void 0===t||(0,r.default)(e,t))},t.isBlockParent=function(e,t){if(!e)return!1;const n=e.type;return("BlockStatement"===n||"CatchClause"===n||"DoWhileStatement"===n||"ForInStatement"===n||"ForStatement"===n||"FunctionDeclaration"===n||"FunctionExpression"===n||"Program"===n||"ObjectMethod"===n||"SwitchStatement"===n||"WhileStatement"===n||"ArrowFunctionExpression"===n||"ForOfStatement"===n||"ClassMethod"===n||"ClassPrivateMethod"===n||"StaticBlock"===n||"TSModuleBlock"===n||"Placeholder"===n&&"BlockStatement"===e.expectedNode)&&(void 0===t||(0,r.default)(e,t))},t.isBlockStatement=function(e,t){return!!e&&("BlockStatement"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isBooleanLiteral=function(e,t){return!!e&&("BooleanLiteral"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isBooleanLiteralTypeAnnotation=function(e,t){return!!e&&("BooleanLiteralTypeAnnotation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isBooleanTypeAnnotation=function(e,t){return!!e&&("BooleanTypeAnnotation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isBreakStatement=function(e,t){return!!e&&("BreakStatement"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isCallExpression=function(e,t){return!!e&&("CallExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isCatchClause=function(e,t){return!!e&&("CatchClause"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isClass=function(e,t){if(!e)return!1;const n=e.type;return("ClassExpression"===n||"ClassDeclaration"===n)&&(void 0===t||(0,r.default)(e,t))},t.isClassAccessorProperty=function(e,t){return!!e&&("ClassAccessorProperty"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isClassBody=function(e,t){return!!e&&("ClassBody"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isClassDeclaration=function(e,t){return!!e&&("ClassDeclaration"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isClassExpression=function(e,t){return!!e&&("ClassExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isClassImplements=function(e,t){return!!e&&("ClassImplements"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isClassMethod=function(e,t){return!!e&&("ClassMethod"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isClassPrivateMethod=function(e,t){return!!e&&("ClassPrivateMethod"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isClassPrivateProperty=function(e,t){return!!e&&("ClassPrivateProperty"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isClassProperty=function(e,t){return!!e&&("ClassProperty"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isCompletionStatement=function(e,t){if(!e)return!1;const n=e.type;return("BreakStatement"===n||"ContinueStatement"===n||"ReturnStatement"===n||"ThrowStatement"===n)&&(void 0===t||(0,r.default)(e,t))},t.isConditional=function(e,t){if(!e)return!1;const n=e.type;return("ConditionalExpression"===n||"IfStatement"===n)&&(void 0===t||(0,r.default)(e,t))},t.isConditionalExpression=function(e,t){return!!e&&("ConditionalExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isContinueStatement=function(e,t){return!!e&&("ContinueStatement"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isDebuggerStatement=function(e,t){return!!e&&("DebuggerStatement"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isDecimalLiteral=function(e,t){return!!e&&("DecimalLiteral"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isDeclaration=function(e,t){if(!e)return!1;const n=e.type;return("FunctionDeclaration"===n||"VariableDeclaration"===n||"ClassDeclaration"===n||"ExportAllDeclaration"===n||"ExportDefaultDeclaration"===n||"ExportNamedDeclaration"===n||"ImportDeclaration"===n||"DeclareClass"===n||"DeclareFunction"===n||"DeclareInterface"===n||"DeclareModule"===n||"DeclareModuleExports"===n||"DeclareTypeAlias"===n||"DeclareOpaqueType"===n||"DeclareVariable"===n||"DeclareExportDeclaration"===n||"DeclareExportAllDeclaration"===n||"InterfaceDeclaration"===n||"OpaqueType"===n||"TypeAlias"===n||"EnumDeclaration"===n||"TSDeclareFunction"===n||"TSInterfaceDeclaration"===n||"TSTypeAliasDeclaration"===n||"TSEnumDeclaration"===n||"TSModuleDeclaration"===n||"Placeholder"===n&&"Declaration"===e.expectedNode)&&(void 0===t||(0,r.default)(e,t))},t.isDeclareClass=function(e,t){return!!e&&("DeclareClass"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isDeclareExportAllDeclaration=function(e,t){return!!e&&("DeclareExportAllDeclaration"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isDeclareExportDeclaration=function(e,t){return!!e&&("DeclareExportDeclaration"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isDeclareFunction=function(e,t){return!!e&&("DeclareFunction"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isDeclareInterface=function(e,t){return!!e&&("DeclareInterface"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isDeclareModule=function(e,t){return!!e&&("DeclareModule"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isDeclareModuleExports=function(e,t){return!!e&&("DeclareModuleExports"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isDeclareOpaqueType=function(e,t){return!!e&&("DeclareOpaqueType"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isDeclareTypeAlias=function(e,t){return!!e&&("DeclareTypeAlias"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isDeclareVariable=function(e,t){return!!e&&("DeclareVariable"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isDeclaredPredicate=function(e,t){return!!e&&("DeclaredPredicate"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isDecorator=function(e,t){return!!e&&("Decorator"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isDirective=function(e,t){return!!e&&("Directive"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isDirectiveLiteral=function(e,t){return!!e&&("DirectiveLiteral"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isDoExpression=function(e,t){return!!e&&("DoExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isDoWhileStatement=function(e,t){return!!e&&("DoWhileStatement"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isEmptyStatement=function(e,t){return!!e&&("EmptyStatement"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isEmptyTypeAnnotation=function(e,t){return!!e&&("EmptyTypeAnnotation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isEnumBody=function(e,t){if(!e)return!1;const n=e.type;return("EnumBooleanBody"===n||"EnumNumberBody"===n||"EnumStringBody"===n||"EnumSymbolBody"===n)&&(void 0===t||(0,r.default)(e,t))},t.isEnumBooleanBody=function(e,t){return!!e&&("EnumBooleanBody"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isEnumBooleanMember=function(e,t){return!!e&&("EnumBooleanMember"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isEnumDeclaration=function(e,t){return!!e&&("EnumDeclaration"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isEnumDefaultedMember=function(e,t){return!!e&&("EnumDefaultedMember"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isEnumMember=function(e,t){if(!e)return!1;const n=e.type;return("EnumBooleanMember"===n||"EnumNumberMember"===n||"EnumStringMember"===n||"EnumDefaultedMember"===n)&&(void 0===t||(0,r.default)(e,t))},t.isEnumNumberBody=function(e,t){return!!e&&("EnumNumberBody"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isEnumNumberMember=function(e,t){return!!e&&("EnumNumberMember"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isEnumStringBody=function(e,t){return!!e&&("EnumStringBody"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isEnumStringMember=function(e,t){return!!e&&("EnumStringMember"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isEnumSymbolBody=function(e,t){return!!e&&("EnumSymbolBody"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isExistsTypeAnnotation=function(e,t){return!!e&&("ExistsTypeAnnotation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isExportAllDeclaration=function(e,t){return!!e&&("ExportAllDeclaration"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isExportDeclaration=function(e,t){if(!e)return!1;const n=e.type;return("ExportAllDeclaration"===n||"ExportDefaultDeclaration"===n||"ExportNamedDeclaration"===n)&&(void 0===t||(0,r.default)(e,t))},t.isExportDefaultDeclaration=function(e,t){return!!e&&("ExportDefaultDeclaration"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isExportDefaultSpecifier=function(e,t){return!!e&&("ExportDefaultSpecifier"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isExportNamedDeclaration=function(e,t){return!!e&&("ExportNamedDeclaration"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isExportNamespaceSpecifier=function(e,t){return!!e&&("ExportNamespaceSpecifier"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isExportSpecifier=function(e,t){return!!e&&("ExportSpecifier"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isExpression=function(e,t){if(!e)return!1;const n=e.type;return("ArrayExpression"===n||"AssignmentExpression"===n||"BinaryExpression"===n||"CallExpression"===n||"ConditionalExpression"===n||"FunctionExpression"===n||"Identifier"===n||"StringLiteral"===n||"NumericLiteral"===n||"NullLiteral"===n||"BooleanLiteral"===n||"RegExpLiteral"===n||"LogicalExpression"===n||"MemberExpression"===n||"NewExpression"===n||"ObjectExpression"===n||"SequenceExpression"===n||"ParenthesizedExpression"===n||"ThisExpression"===n||"UnaryExpression"===n||"UpdateExpression"===n||"ArrowFunctionExpression"===n||"ClassExpression"===n||"MetaProperty"===n||"Super"===n||"TaggedTemplateExpression"===n||"TemplateLiteral"===n||"YieldExpression"===n||"AwaitExpression"===n||"Import"===n||"BigIntLiteral"===n||"OptionalMemberExpression"===n||"OptionalCallExpression"===n||"TypeCastExpression"===n||"JSXElement"===n||"JSXFragment"===n||"BindExpression"===n||"DoExpression"===n||"RecordExpression"===n||"TupleExpression"===n||"DecimalLiteral"===n||"ModuleExpression"===n||"TopicReference"===n||"PipelineTopicExpression"===n||"PipelineBareFunction"===n||"PipelinePrimaryTopicReference"===n||"TSAsExpression"===n||"TSTypeAssertion"===n||"TSNonNullExpression"===n||"Placeholder"===n&&("Expression"===e.expectedNode||"Identifier"===e.expectedNode||"StringLiteral"===e.expectedNode))&&(void 0===t||(0,r.default)(e,t))},t.isExpressionStatement=function(e,t){return!!e&&("ExpressionStatement"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isExpressionWrapper=function(e,t){if(!e)return!1;const n=e.type;return("ExpressionStatement"===n||"ParenthesizedExpression"===n||"TypeCastExpression"===n)&&(void 0===t||(0,r.default)(e,t))},t.isFile=function(e,t){return!!e&&("File"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isFlow=function(e,t){if(!e)return!1;const n=e.type;return("AnyTypeAnnotation"===n||"ArrayTypeAnnotation"===n||"BooleanTypeAnnotation"===n||"BooleanLiteralTypeAnnotation"===n||"NullLiteralTypeAnnotation"===n||"ClassImplements"===n||"DeclareClass"===n||"DeclareFunction"===n||"DeclareInterface"===n||"DeclareModule"===n||"DeclareModuleExports"===n||"DeclareTypeAlias"===n||"DeclareOpaqueType"===n||"DeclareVariable"===n||"DeclareExportDeclaration"===n||"DeclareExportAllDeclaration"===n||"DeclaredPredicate"===n||"ExistsTypeAnnotation"===n||"FunctionTypeAnnotation"===n||"FunctionTypeParam"===n||"GenericTypeAnnotation"===n||"InferredPredicate"===n||"InterfaceExtends"===n||"InterfaceDeclaration"===n||"InterfaceTypeAnnotation"===n||"IntersectionTypeAnnotation"===n||"MixedTypeAnnotation"===n||"EmptyTypeAnnotation"===n||"NullableTypeAnnotation"===n||"NumberLiteralTypeAnnotation"===n||"NumberTypeAnnotation"===n||"ObjectTypeAnnotation"===n||"ObjectTypeInternalSlot"===n||"ObjectTypeCallProperty"===n||"ObjectTypeIndexer"===n||"ObjectTypeProperty"===n||"ObjectTypeSpreadProperty"===n||"OpaqueType"===n||"QualifiedTypeIdentifier"===n||"StringLiteralTypeAnnotation"===n||"StringTypeAnnotation"===n||"SymbolTypeAnnotation"===n||"ThisTypeAnnotation"===n||"TupleTypeAnnotation"===n||"TypeofTypeAnnotation"===n||"TypeAlias"===n||"TypeAnnotation"===n||"TypeCastExpression"===n||"TypeParameter"===n||"TypeParameterDeclaration"===n||"TypeParameterInstantiation"===n||"UnionTypeAnnotation"===n||"Variance"===n||"VoidTypeAnnotation"===n||"EnumDeclaration"===n||"EnumBooleanBody"===n||"EnumNumberBody"===n||"EnumStringBody"===n||"EnumSymbolBody"===n||"EnumBooleanMember"===n||"EnumNumberMember"===n||"EnumStringMember"===n||"EnumDefaultedMember"===n||"IndexedAccessType"===n||"OptionalIndexedAccessType"===n)&&(void 0===t||(0,r.default)(e,t))},t.isFlowBaseAnnotation=function(e,t){if(!e)return!1;const n=e.type;return("AnyTypeAnnotation"===n||"BooleanTypeAnnotation"===n||"NullLiteralTypeAnnotation"===n||"MixedTypeAnnotation"===n||"EmptyTypeAnnotation"===n||"NumberTypeAnnotation"===n||"StringTypeAnnotation"===n||"SymbolTypeAnnotation"===n||"ThisTypeAnnotation"===n||"VoidTypeAnnotation"===n)&&(void 0===t||(0,r.default)(e,t))},t.isFlowDeclaration=function(e,t){if(!e)return!1;const n=e.type;return("DeclareClass"===n||"DeclareFunction"===n||"DeclareInterface"===n||"DeclareModule"===n||"DeclareModuleExports"===n||"DeclareTypeAlias"===n||"DeclareOpaqueType"===n||"DeclareVariable"===n||"DeclareExportDeclaration"===n||"DeclareExportAllDeclaration"===n||"InterfaceDeclaration"===n||"OpaqueType"===n||"TypeAlias"===n)&&(void 0===t||(0,r.default)(e,t))},t.isFlowPredicate=function(e,t){if(!e)return!1;const n=e.type;return("DeclaredPredicate"===n||"InferredPredicate"===n)&&(void 0===t||(0,r.default)(e,t))},t.isFlowType=function(e,t){if(!e)return!1;const n=e.type;return("AnyTypeAnnotation"===n||"ArrayTypeAnnotation"===n||"BooleanTypeAnnotation"===n||"BooleanLiteralTypeAnnotation"===n||"NullLiteralTypeAnnotation"===n||"ExistsTypeAnnotation"===n||"FunctionTypeAnnotation"===n||"GenericTypeAnnotation"===n||"InterfaceTypeAnnotation"===n||"IntersectionTypeAnnotation"===n||"MixedTypeAnnotation"===n||"EmptyTypeAnnotation"===n||"NullableTypeAnnotation"===n||"NumberLiteralTypeAnnotation"===n||"NumberTypeAnnotation"===n||"ObjectTypeAnnotation"===n||"StringLiteralTypeAnnotation"===n||"StringTypeAnnotation"===n||"SymbolTypeAnnotation"===n||"ThisTypeAnnotation"===n||"TupleTypeAnnotation"===n||"TypeofTypeAnnotation"===n||"UnionTypeAnnotation"===n||"VoidTypeAnnotation"===n||"IndexedAccessType"===n||"OptionalIndexedAccessType"===n)&&(void 0===t||(0,r.default)(e,t))},t.isFor=function(e,t){if(!e)return!1;const n=e.type;return("ForInStatement"===n||"ForStatement"===n||"ForOfStatement"===n)&&(void 0===t||(0,r.default)(e,t))},t.isForInStatement=function(e,t){return!!e&&("ForInStatement"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isForOfStatement=function(e,t){return!!e&&("ForOfStatement"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isForStatement=function(e,t){return!!e&&("ForStatement"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isForXStatement=function(e,t){if(!e)return!1;const n=e.type;return("ForInStatement"===n||"ForOfStatement"===n)&&(void 0===t||(0,r.default)(e,t))},t.isFunction=function(e,t){if(!e)return!1;const n=e.type;return("FunctionDeclaration"===n||"FunctionExpression"===n||"ObjectMethod"===n||"ArrowFunctionExpression"===n||"ClassMethod"===n||"ClassPrivateMethod"===n)&&(void 0===t||(0,r.default)(e,t))},t.isFunctionDeclaration=function(e,t){return!!e&&("FunctionDeclaration"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isFunctionExpression=function(e,t){return!!e&&("FunctionExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isFunctionParent=function(e,t){if(!e)return!1;const n=e.type;return("FunctionDeclaration"===n||"FunctionExpression"===n||"ObjectMethod"===n||"ArrowFunctionExpression"===n||"ClassMethod"===n||"ClassPrivateMethod"===n||"StaticBlock"===n)&&(void 0===t||(0,r.default)(e,t))},t.isFunctionTypeAnnotation=function(e,t){return!!e&&("FunctionTypeAnnotation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isFunctionTypeParam=function(e,t){return!!e&&("FunctionTypeParam"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isGenericTypeAnnotation=function(e,t){return!!e&&("GenericTypeAnnotation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isIdentifier=function(e,t){return!!e&&("Identifier"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isIfStatement=function(e,t){return!!e&&("IfStatement"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isImmutable=function(e,t){if(!e)return!1;const n=e.type;return("StringLiteral"===n||"NumericLiteral"===n||"NullLiteral"===n||"BooleanLiteral"===n||"BigIntLiteral"===n||"JSXAttribute"===n||"JSXClosingElement"===n||"JSXElement"===n||"JSXExpressionContainer"===n||"JSXSpreadChild"===n||"JSXOpeningElement"===n||"JSXText"===n||"JSXFragment"===n||"JSXOpeningFragment"===n||"JSXClosingFragment"===n||"DecimalLiteral"===n||"Placeholder"===n&&"StringLiteral"===e.expectedNode)&&(void 0===t||(0,r.default)(e,t))},t.isImport=function(e,t){return!!e&&("Import"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isImportAttribute=function(e,t){return!!e&&("ImportAttribute"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isImportDeclaration=function(e,t){return!!e&&("ImportDeclaration"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isImportDefaultSpecifier=function(e,t){return!!e&&("ImportDefaultSpecifier"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isImportNamespaceSpecifier=function(e,t){return!!e&&("ImportNamespaceSpecifier"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isImportSpecifier=function(e,t){return!!e&&("ImportSpecifier"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isIndexedAccessType=function(e,t){return!!e&&("IndexedAccessType"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isInferredPredicate=function(e,t){return!!e&&("InferredPredicate"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isInterfaceDeclaration=function(e,t){return!!e&&("InterfaceDeclaration"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isInterfaceExtends=function(e,t){return!!e&&("InterfaceExtends"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isInterfaceTypeAnnotation=function(e,t){return!!e&&("InterfaceTypeAnnotation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isInterpreterDirective=function(e,t){return!!e&&("InterpreterDirective"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isIntersectionTypeAnnotation=function(e,t){return!!e&&("IntersectionTypeAnnotation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isJSX=function(e,t){if(!e)return!1;const n=e.type;return("JSXAttribute"===n||"JSXClosingElement"===n||"JSXElement"===n||"JSXEmptyExpression"===n||"JSXExpressionContainer"===n||"JSXSpreadChild"===n||"JSXIdentifier"===n||"JSXMemberExpression"===n||"JSXNamespacedName"===n||"JSXOpeningElement"===n||"JSXSpreadAttribute"===n||"JSXText"===n||"JSXFragment"===n||"JSXOpeningFragment"===n||"JSXClosingFragment"===n)&&(void 0===t||(0,r.default)(e,t))},t.isJSXAttribute=function(e,t){return!!e&&("JSXAttribute"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isJSXClosingElement=function(e,t){return!!e&&("JSXClosingElement"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isJSXClosingFragment=function(e,t){return!!e&&("JSXClosingFragment"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isJSXElement=function(e,t){return!!e&&("JSXElement"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isJSXEmptyExpression=function(e,t){return!!e&&("JSXEmptyExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isJSXExpressionContainer=function(e,t){return!!e&&("JSXExpressionContainer"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isJSXFragment=function(e,t){return!!e&&("JSXFragment"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isJSXIdentifier=function(e,t){return!!e&&("JSXIdentifier"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isJSXMemberExpression=function(e,t){return!!e&&("JSXMemberExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isJSXNamespacedName=function(e,t){return!!e&&("JSXNamespacedName"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isJSXOpeningElement=function(e,t){return!!e&&("JSXOpeningElement"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isJSXOpeningFragment=function(e,t){return!!e&&("JSXOpeningFragment"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isJSXSpreadAttribute=function(e,t){return!!e&&("JSXSpreadAttribute"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isJSXSpreadChild=function(e,t){return!!e&&("JSXSpreadChild"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isJSXText=function(e,t){return!!e&&("JSXText"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isLVal=function(e,t){if(!e)return!1;const n=e.type;return("Identifier"===n||"MemberExpression"===n||"RestElement"===n||"AssignmentPattern"===n||"ArrayPattern"===n||"ObjectPattern"===n||"TSParameterProperty"===n||"TSAsExpression"===n||"TSTypeAssertion"===n||"TSNonNullExpression"===n||"Placeholder"===n&&("Pattern"===e.expectedNode||"Identifier"===e.expectedNode))&&(void 0===t||(0,r.default)(e,t))},t.isLabeledStatement=function(e,t){return!!e&&("LabeledStatement"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isLiteral=function(e,t){if(!e)return!1;const n=e.type;return("StringLiteral"===n||"NumericLiteral"===n||"NullLiteral"===n||"BooleanLiteral"===n||"RegExpLiteral"===n||"TemplateLiteral"===n||"BigIntLiteral"===n||"DecimalLiteral"===n||"Placeholder"===n&&"StringLiteral"===e.expectedNode)&&(void 0===t||(0,r.default)(e,t))},t.isLogicalExpression=function(e,t){return!!e&&("LogicalExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isLoop=function(e,t){if(!e)return!1;const n=e.type;return("DoWhileStatement"===n||"ForInStatement"===n||"ForStatement"===n||"WhileStatement"===n||"ForOfStatement"===n)&&(void 0===t||(0,r.default)(e,t))},t.isMemberExpression=function(e,t){return!!e&&("MemberExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isMetaProperty=function(e,t){return!!e&&("MetaProperty"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isMethod=function(e,t){if(!e)return!1;const n=e.type;return("ObjectMethod"===n||"ClassMethod"===n||"ClassPrivateMethod"===n)&&(void 0===t||(0,r.default)(e,t))},t.isMiscellaneous=function(e,t){if(!e)return!1;const n=e.type;return("Noop"===n||"Placeholder"===n||"V8IntrinsicIdentifier"===n)&&(void 0===t||(0,r.default)(e,t))},t.isMixedTypeAnnotation=function(e,t){return!!e&&("MixedTypeAnnotation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isModuleDeclaration=function(e,t){if(!e)return!1;const n=e.type;return("ExportAllDeclaration"===n||"ExportDefaultDeclaration"===n||"ExportNamedDeclaration"===n||"ImportDeclaration"===n)&&(void 0===t||(0,r.default)(e,t))},t.isModuleExpression=function(e,t){return!!e&&("ModuleExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isModuleSpecifier=function(e,t){if(!e)return!1;const n=e.type;return("ExportSpecifier"===n||"ImportDefaultSpecifier"===n||"ImportNamespaceSpecifier"===n||"ImportSpecifier"===n||"ExportNamespaceSpecifier"===n||"ExportDefaultSpecifier"===n)&&(void 0===t||(0,r.default)(e,t))},t.isNewExpression=function(e,t){return!!e&&("NewExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isNoop=function(e,t){return!!e&&("Noop"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isNullLiteral=function(e,t){return!!e&&("NullLiteral"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isNullLiteralTypeAnnotation=function(e,t){return!!e&&("NullLiteralTypeAnnotation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isNullableTypeAnnotation=function(e,t){return!!e&&("NullableTypeAnnotation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isNumberLiteral=function(e,t){return console.trace("The node type NumberLiteral has been renamed to NumericLiteral"),!!e&&("NumberLiteral"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isNumberLiteralTypeAnnotation=function(e,t){return!!e&&("NumberLiteralTypeAnnotation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isNumberTypeAnnotation=function(e,t){return!!e&&("NumberTypeAnnotation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isNumericLiteral=function(e,t){return!!e&&("NumericLiteral"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isObjectExpression=function(e,t){return!!e&&("ObjectExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isObjectMember=function(e,t){if(!e)return!1;const n=e.type;return("ObjectMethod"===n||"ObjectProperty"===n)&&(void 0===t||(0,r.default)(e,t))},t.isObjectMethod=function(e,t){return!!e&&("ObjectMethod"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isObjectPattern=function(e,t){return!!e&&("ObjectPattern"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isObjectProperty=function(e,t){return!!e&&("ObjectProperty"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isObjectTypeAnnotation=function(e,t){return!!e&&("ObjectTypeAnnotation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isObjectTypeCallProperty=function(e,t){return!!e&&("ObjectTypeCallProperty"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isObjectTypeIndexer=function(e,t){return!!e&&("ObjectTypeIndexer"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isObjectTypeInternalSlot=function(e,t){return!!e&&("ObjectTypeInternalSlot"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isObjectTypeProperty=function(e,t){return!!e&&("ObjectTypeProperty"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isObjectTypeSpreadProperty=function(e,t){return!!e&&("ObjectTypeSpreadProperty"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isOpaqueType=function(e,t){return!!e&&("OpaqueType"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isOptionalCallExpression=function(e,t){return!!e&&("OptionalCallExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isOptionalIndexedAccessType=function(e,t){return!!e&&("OptionalIndexedAccessType"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isOptionalMemberExpression=function(e,t){return!!e&&("OptionalMemberExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isParenthesizedExpression=function(e,t){return!!e&&("ParenthesizedExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isPattern=function(e,t){if(!e)return!1;const n=e.type;return("AssignmentPattern"===n||"ArrayPattern"===n||"ObjectPattern"===n||"Placeholder"===n&&"Pattern"===e.expectedNode)&&(void 0===t||(0,r.default)(e,t))},t.isPatternLike=function(e,t){if(!e)return!1;const n=e.type;return("Identifier"===n||"RestElement"===n||"AssignmentPattern"===n||"ArrayPattern"===n||"ObjectPattern"===n||"TSAsExpression"===n||"TSTypeAssertion"===n||"TSNonNullExpression"===n||"Placeholder"===n&&("Pattern"===e.expectedNode||"Identifier"===e.expectedNode))&&(void 0===t||(0,r.default)(e,t))},t.isPipelineBareFunction=function(e,t){return!!e&&("PipelineBareFunction"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isPipelinePrimaryTopicReference=function(e,t){return!!e&&("PipelinePrimaryTopicReference"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isPipelineTopicExpression=function(e,t){return!!e&&("PipelineTopicExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isPlaceholder=function(e,t){return!!e&&("Placeholder"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isPrivate=function(e,t){if(!e)return!1;const n=e.type;return("ClassPrivateProperty"===n||"ClassPrivateMethod"===n||"PrivateName"===n)&&(void 0===t||(0,r.default)(e,t))},t.isPrivateName=function(e,t){return!!e&&("PrivateName"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isProgram=function(e,t){return!!e&&("Program"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isProperty=function(e,t){if(!e)return!1;const n=e.type;return("ObjectProperty"===n||"ClassProperty"===n||"ClassAccessorProperty"===n||"ClassPrivateProperty"===n)&&(void 0===t||(0,r.default)(e,t))},t.isPureish=function(e,t){if(!e)return!1;const n=e.type;return("FunctionDeclaration"===n||"FunctionExpression"===n||"StringLiteral"===n||"NumericLiteral"===n||"NullLiteral"===n||"BooleanLiteral"===n||"RegExpLiteral"===n||"ArrowFunctionExpression"===n||"BigIntLiteral"===n||"DecimalLiteral"===n||"Placeholder"===n&&"StringLiteral"===e.expectedNode)&&(void 0===t||(0,r.default)(e,t))},t.isQualifiedTypeIdentifier=function(e,t){return!!e&&("QualifiedTypeIdentifier"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isRecordExpression=function(e,t){return!!e&&("RecordExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isRegExpLiteral=function(e,t){return!!e&&("RegExpLiteral"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isRegexLiteral=function(e,t){return console.trace("The node type RegexLiteral has been renamed to RegExpLiteral"),!!e&&("RegexLiteral"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isRestElement=function(e,t){return!!e&&("RestElement"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isRestProperty=function(e,t){return console.trace("The node type RestProperty has been renamed to RestElement"),!!e&&("RestProperty"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isReturnStatement=function(e,t){return!!e&&("ReturnStatement"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isScopable=function(e,t){if(!e)return!1;const n=e.type;return("BlockStatement"===n||"CatchClause"===n||"DoWhileStatement"===n||"ForInStatement"===n||"ForStatement"===n||"FunctionDeclaration"===n||"FunctionExpression"===n||"Program"===n||"ObjectMethod"===n||"SwitchStatement"===n||"WhileStatement"===n||"ArrowFunctionExpression"===n||"ClassExpression"===n||"ClassDeclaration"===n||"ForOfStatement"===n||"ClassMethod"===n||"ClassPrivateMethod"===n||"StaticBlock"===n||"TSModuleBlock"===n||"Placeholder"===n&&"BlockStatement"===e.expectedNode)&&(void 0===t||(0,r.default)(e,t))},t.isSequenceExpression=function(e,t){return!!e&&("SequenceExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isSpreadElement=function(e,t){return!!e&&("SpreadElement"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isSpreadProperty=function(e,t){return console.trace("The node type SpreadProperty has been renamed to SpreadElement"),!!e&&("SpreadProperty"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isStandardized=function(e,t){if(!e)return!1;const n=e.type;return("ArrayExpression"===n||"AssignmentExpression"===n||"BinaryExpression"===n||"InterpreterDirective"===n||"Directive"===n||"DirectiveLiteral"===n||"BlockStatement"===n||"BreakStatement"===n||"CallExpression"===n||"CatchClause"===n||"ConditionalExpression"===n||"ContinueStatement"===n||"DebuggerStatement"===n||"DoWhileStatement"===n||"EmptyStatement"===n||"ExpressionStatement"===n||"File"===n||"ForInStatement"===n||"ForStatement"===n||"FunctionDeclaration"===n||"FunctionExpression"===n||"Identifier"===n||"IfStatement"===n||"LabeledStatement"===n||"StringLiteral"===n||"NumericLiteral"===n||"NullLiteral"===n||"BooleanLiteral"===n||"RegExpLiteral"===n||"LogicalExpression"===n||"MemberExpression"===n||"NewExpression"===n||"Program"===n||"ObjectExpression"===n||"ObjectMethod"===n||"ObjectProperty"===n||"RestElement"===n||"ReturnStatement"===n||"SequenceExpression"===n||"ParenthesizedExpression"===n||"SwitchCase"===n||"SwitchStatement"===n||"ThisExpression"===n||"ThrowStatement"===n||"TryStatement"===n||"UnaryExpression"===n||"UpdateExpression"===n||"VariableDeclaration"===n||"VariableDeclarator"===n||"WhileStatement"===n||"WithStatement"===n||"AssignmentPattern"===n||"ArrayPattern"===n||"ArrowFunctionExpression"===n||"ClassBody"===n||"ClassExpression"===n||"ClassDeclaration"===n||"ExportAllDeclaration"===n||"ExportDefaultDeclaration"===n||"ExportNamedDeclaration"===n||"ExportSpecifier"===n||"ForOfStatement"===n||"ImportDeclaration"===n||"ImportDefaultSpecifier"===n||"ImportNamespaceSpecifier"===n||"ImportSpecifier"===n||"MetaProperty"===n||"ClassMethod"===n||"ObjectPattern"===n||"SpreadElement"===n||"Super"===n||"TaggedTemplateExpression"===n||"TemplateElement"===n||"TemplateLiteral"===n||"YieldExpression"===n||"AwaitExpression"===n||"Import"===n||"BigIntLiteral"===n||"ExportNamespaceSpecifier"===n||"OptionalMemberExpression"===n||"OptionalCallExpression"===n||"ClassProperty"===n||"ClassAccessorProperty"===n||"ClassPrivateProperty"===n||"ClassPrivateMethod"===n||"PrivateName"===n||"StaticBlock"===n||"Placeholder"===n&&("Identifier"===e.expectedNode||"StringLiteral"===e.expectedNode||"BlockStatement"===e.expectedNode||"ClassBody"===e.expectedNode))&&(void 0===t||(0,r.default)(e,t))},t.isStatement=function(e,t){if(!e)return!1;const n=e.type;return("BlockStatement"===n||"BreakStatement"===n||"ContinueStatement"===n||"DebuggerStatement"===n||"DoWhileStatement"===n||"EmptyStatement"===n||"ExpressionStatement"===n||"ForInStatement"===n||"ForStatement"===n||"FunctionDeclaration"===n||"IfStatement"===n||"LabeledStatement"===n||"ReturnStatement"===n||"SwitchStatement"===n||"ThrowStatement"===n||"TryStatement"===n||"VariableDeclaration"===n||"WhileStatement"===n||"WithStatement"===n||"ClassDeclaration"===n||"ExportAllDeclaration"===n||"ExportDefaultDeclaration"===n||"ExportNamedDeclaration"===n||"ForOfStatement"===n||"ImportDeclaration"===n||"DeclareClass"===n||"DeclareFunction"===n||"DeclareInterface"===n||"DeclareModule"===n||"DeclareModuleExports"===n||"DeclareTypeAlias"===n||"DeclareOpaqueType"===n||"DeclareVariable"===n||"DeclareExportDeclaration"===n||"DeclareExportAllDeclaration"===n||"InterfaceDeclaration"===n||"OpaqueType"===n||"TypeAlias"===n||"EnumDeclaration"===n||"TSDeclareFunction"===n||"TSInterfaceDeclaration"===n||"TSTypeAliasDeclaration"===n||"TSEnumDeclaration"===n||"TSModuleDeclaration"===n||"TSImportEqualsDeclaration"===n||"TSExportAssignment"===n||"TSNamespaceExportDeclaration"===n||"Placeholder"===n&&("Statement"===e.expectedNode||"Declaration"===e.expectedNode||"BlockStatement"===e.expectedNode))&&(void 0===t||(0,r.default)(e,t))},t.isStaticBlock=function(e,t){return!!e&&("StaticBlock"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isStringLiteral=function(e,t){return!!e&&("StringLiteral"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isStringLiteralTypeAnnotation=function(e,t){return!!e&&("StringLiteralTypeAnnotation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isStringTypeAnnotation=function(e,t){return!!e&&("StringTypeAnnotation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isSuper=function(e,t){return!!e&&("Super"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isSwitchCase=function(e,t){return!!e&&("SwitchCase"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isSwitchStatement=function(e,t){return!!e&&("SwitchStatement"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isSymbolTypeAnnotation=function(e,t){return!!e&&("SymbolTypeAnnotation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSAnyKeyword=function(e,t){return!!e&&("TSAnyKeyword"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSArrayType=function(e,t){return!!e&&("TSArrayType"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSAsExpression=function(e,t){return!!e&&("TSAsExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSBaseType=function(e,t){if(!e)return!1;const n=e.type;return("TSAnyKeyword"===n||"TSBooleanKeyword"===n||"TSBigIntKeyword"===n||"TSIntrinsicKeyword"===n||"TSNeverKeyword"===n||"TSNullKeyword"===n||"TSNumberKeyword"===n||"TSObjectKeyword"===n||"TSStringKeyword"===n||"TSSymbolKeyword"===n||"TSUndefinedKeyword"===n||"TSUnknownKeyword"===n||"TSVoidKeyword"===n||"TSThisType"===n||"TSLiteralType"===n)&&(void 0===t||(0,r.default)(e,t))},t.isTSBigIntKeyword=function(e,t){return!!e&&("TSBigIntKeyword"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSBooleanKeyword=function(e,t){return!!e&&("TSBooleanKeyword"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSCallSignatureDeclaration=function(e,t){return!!e&&("TSCallSignatureDeclaration"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSConditionalType=function(e,t){return!!e&&("TSConditionalType"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSConstructSignatureDeclaration=function(e,t){return!!e&&("TSConstructSignatureDeclaration"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSConstructorType=function(e,t){return!!e&&("TSConstructorType"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSDeclareFunction=function(e,t){return!!e&&("TSDeclareFunction"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSDeclareMethod=function(e,t){return!!e&&("TSDeclareMethod"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSEntityName=function(e,t){if(!e)return!1;const n=e.type;return("Identifier"===n||"TSQualifiedName"===n||"Placeholder"===n&&"Identifier"===e.expectedNode)&&(void 0===t||(0,r.default)(e,t))},t.isTSEnumDeclaration=function(e,t){return!!e&&("TSEnumDeclaration"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSEnumMember=function(e,t){return!!e&&("TSEnumMember"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSExportAssignment=function(e,t){return!!e&&("TSExportAssignment"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSExpressionWithTypeArguments=function(e,t){return!!e&&("TSExpressionWithTypeArguments"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSExternalModuleReference=function(e,t){return!!e&&("TSExternalModuleReference"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSFunctionType=function(e,t){return!!e&&("TSFunctionType"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSImportEqualsDeclaration=function(e,t){return!!e&&("TSImportEqualsDeclaration"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSImportType=function(e,t){return!!e&&("TSImportType"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSIndexSignature=function(e,t){return!!e&&("TSIndexSignature"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSIndexedAccessType=function(e,t){return!!e&&("TSIndexedAccessType"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSInferType=function(e,t){return!!e&&("TSInferType"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSInterfaceBody=function(e,t){return!!e&&("TSInterfaceBody"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSInterfaceDeclaration=function(e,t){return!!e&&("TSInterfaceDeclaration"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSIntersectionType=function(e,t){return!!e&&("TSIntersectionType"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSIntrinsicKeyword=function(e,t){return!!e&&("TSIntrinsicKeyword"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSLiteralType=function(e,t){return!!e&&("TSLiteralType"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSMappedType=function(e,t){return!!e&&("TSMappedType"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSMethodSignature=function(e,t){return!!e&&("TSMethodSignature"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSModuleBlock=function(e,t){return!!e&&("TSModuleBlock"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSModuleDeclaration=function(e,t){return!!e&&("TSModuleDeclaration"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSNamedTupleMember=function(e,t){return!!e&&("TSNamedTupleMember"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSNamespaceExportDeclaration=function(e,t){return!!e&&("TSNamespaceExportDeclaration"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSNeverKeyword=function(e,t){return!!e&&("TSNeverKeyword"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSNonNullExpression=function(e,t){return!!e&&("TSNonNullExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSNullKeyword=function(e,t){return!!e&&("TSNullKeyword"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSNumberKeyword=function(e,t){return!!e&&("TSNumberKeyword"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSObjectKeyword=function(e,t){return!!e&&("TSObjectKeyword"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSOptionalType=function(e,t){return!!e&&("TSOptionalType"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSParameterProperty=function(e,t){return!!e&&("TSParameterProperty"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSParenthesizedType=function(e,t){return!!e&&("TSParenthesizedType"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSPropertySignature=function(e,t){return!!e&&("TSPropertySignature"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSQualifiedName=function(e,t){return!!e&&("TSQualifiedName"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSRestType=function(e,t){return!!e&&("TSRestType"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSStringKeyword=function(e,t){return!!e&&("TSStringKeyword"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSSymbolKeyword=function(e,t){return!!e&&("TSSymbolKeyword"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSThisType=function(e,t){return!!e&&("TSThisType"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSTupleType=function(e,t){return!!e&&("TSTupleType"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSType=function(e,t){if(!e)return!1;const n=e.type;return("TSAnyKeyword"===n||"TSBooleanKeyword"===n||"TSBigIntKeyword"===n||"TSIntrinsicKeyword"===n||"TSNeverKeyword"===n||"TSNullKeyword"===n||"TSNumberKeyword"===n||"TSObjectKeyword"===n||"TSStringKeyword"===n||"TSSymbolKeyword"===n||"TSUndefinedKeyword"===n||"TSUnknownKeyword"===n||"TSVoidKeyword"===n||"TSThisType"===n||"TSFunctionType"===n||"TSConstructorType"===n||"TSTypeReference"===n||"TSTypePredicate"===n||"TSTypeQuery"===n||"TSTypeLiteral"===n||"TSArrayType"===n||"TSTupleType"===n||"TSOptionalType"===n||"TSRestType"===n||"TSUnionType"===n||"TSIntersectionType"===n||"TSConditionalType"===n||"TSInferType"===n||"TSParenthesizedType"===n||"TSTypeOperator"===n||"TSIndexedAccessType"===n||"TSMappedType"===n||"TSLiteralType"===n||"TSExpressionWithTypeArguments"===n||"TSImportType"===n)&&(void 0===t||(0,r.default)(e,t))},t.isTSTypeAliasDeclaration=function(e,t){return!!e&&("TSTypeAliasDeclaration"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSTypeAnnotation=function(e,t){return!!e&&("TSTypeAnnotation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSTypeAssertion=function(e,t){return!!e&&("TSTypeAssertion"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSTypeElement=function(e,t){if(!e)return!1;const n=e.type;return("TSCallSignatureDeclaration"===n||"TSConstructSignatureDeclaration"===n||"TSPropertySignature"===n||"TSMethodSignature"===n||"TSIndexSignature"===n)&&(void 0===t||(0,r.default)(e,t))},t.isTSTypeLiteral=function(e,t){return!!e&&("TSTypeLiteral"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSTypeOperator=function(e,t){return!!e&&("TSTypeOperator"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSTypeParameter=function(e,t){return!!e&&("TSTypeParameter"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSTypeParameterDeclaration=function(e,t){return!!e&&("TSTypeParameterDeclaration"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSTypeParameterInstantiation=function(e,t){return!!e&&("TSTypeParameterInstantiation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSTypePredicate=function(e,t){return!!e&&("TSTypePredicate"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSTypeQuery=function(e,t){return!!e&&("TSTypeQuery"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSTypeReference=function(e,t){return!!e&&("TSTypeReference"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSUndefinedKeyword=function(e,t){return!!e&&("TSUndefinedKeyword"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSUnionType=function(e,t){return!!e&&("TSUnionType"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSUnknownKeyword=function(e,t){return!!e&&("TSUnknownKeyword"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSVoidKeyword=function(e,t){return!!e&&("TSVoidKeyword"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTaggedTemplateExpression=function(e,t){return!!e&&("TaggedTemplateExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTemplateElement=function(e,t){return!!e&&("TemplateElement"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTemplateLiteral=function(e,t){return!!e&&("TemplateLiteral"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTerminatorless=function(e,t){if(!e)return!1;const n=e.type;return("BreakStatement"===n||"ContinueStatement"===n||"ReturnStatement"===n||"ThrowStatement"===n||"YieldExpression"===n||"AwaitExpression"===n)&&(void 0===t||(0,r.default)(e,t))},t.isThisExpression=function(e,t){return!!e&&("ThisExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isThisTypeAnnotation=function(e,t){return!!e&&("ThisTypeAnnotation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isThrowStatement=function(e,t){return!!e&&("ThrowStatement"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTopicReference=function(e,t){return!!e&&("TopicReference"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTryStatement=function(e,t){return!!e&&("TryStatement"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTupleExpression=function(e,t){return!!e&&("TupleExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTupleTypeAnnotation=function(e,t){return!!e&&("TupleTypeAnnotation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTypeAlias=function(e,t){return!!e&&("TypeAlias"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTypeAnnotation=function(e,t){return!!e&&("TypeAnnotation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTypeCastExpression=function(e,t){return!!e&&("TypeCastExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTypeParameter=function(e,t){return!!e&&("TypeParameter"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTypeParameterDeclaration=function(e,t){return!!e&&("TypeParameterDeclaration"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTypeParameterInstantiation=function(e,t){return!!e&&("TypeParameterInstantiation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTypeScript=function(e,t){if(!e)return!1;const n=e.type;return("TSParameterProperty"===n||"TSDeclareFunction"===n||"TSDeclareMethod"===n||"TSQualifiedName"===n||"TSCallSignatureDeclaration"===n||"TSConstructSignatureDeclaration"===n||"TSPropertySignature"===n||"TSMethodSignature"===n||"TSIndexSignature"===n||"TSAnyKeyword"===n||"TSBooleanKeyword"===n||"TSBigIntKeyword"===n||"TSIntrinsicKeyword"===n||"TSNeverKeyword"===n||"TSNullKeyword"===n||"TSNumberKeyword"===n||"TSObjectKeyword"===n||"TSStringKeyword"===n||"TSSymbolKeyword"===n||"TSUndefinedKeyword"===n||"TSUnknownKeyword"===n||"TSVoidKeyword"===n||"TSThisType"===n||"TSFunctionType"===n||"TSConstructorType"===n||"TSTypeReference"===n||"TSTypePredicate"===n||"TSTypeQuery"===n||"TSTypeLiteral"===n||"TSArrayType"===n||"TSTupleType"===n||"TSOptionalType"===n||"TSRestType"===n||"TSNamedTupleMember"===n||"TSUnionType"===n||"TSIntersectionType"===n||"TSConditionalType"===n||"TSInferType"===n||"TSParenthesizedType"===n||"TSTypeOperator"===n||"TSIndexedAccessType"===n||"TSMappedType"===n||"TSLiteralType"===n||"TSExpressionWithTypeArguments"===n||"TSInterfaceDeclaration"===n||"TSInterfaceBody"===n||"TSTypeAliasDeclaration"===n||"TSAsExpression"===n||"TSTypeAssertion"===n||"TSEnumDeclaration"===n||"TSEnumMember"===n||"TSModuleDeclaration"===n||"TSModuleBlock"===n||"TSImportType"===n||"TSImportEqualsDeclaration"===n||"TSExternalModuleReference"===n||"TSNonNullExpression"===n||"TSExportAssignment"===n||"TSNamespaceExportDeclaration"===n||"TSTypeAnnotation"===n||"TSTypeParameterInstantiation"===n||"TSTypeParameterDeclaration"===n||"TSTypeParameter"===n)&&(void 0===t||(0,r.default)(e,t))},t.isTypeofTypeAnnotation=function(e,t){return!!e&&("TypeofTypeAnnotation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isUnaryExpression=function(e,t){return!!e&&("UnaryExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isUnaryLike=function(e,t){if(!e)return!1;const n=e.type;return("UnaryExpression"===n||"SpreadElement"===n)&&(void 0===t||(0,r.default)(e,t))},t.isUnionTypeAnnotation=function(e,t){return!!e&&("UnionTypeAnnotation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isUpdateExpression=function(e,t){return!!e&&("UpdateExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isUserWhitespacable=function(e,t){if(!e)return!1;const n=e.type;return("ObjectMethod"===n||"ObjectProperty"===n||"ObjectTypeInternalSlot"===n||"ObjectTypeCallProperty"===n||"ObjectTypeIndexer"===n||"ObjectTypeProperty"===n||"ObjectTypeSpreadProperty"===n)&&(void 0===t||(0,r.default)(e,t))},t.isV8IntrinsicIdentifier=function(e,t){return!!e&&("V8IntrinsicIdentifier"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isVariableDeclaration=function(e,t){return!!e&&("VariableDeclaration"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isVariableDeclarator=function(e,t){return!!e&&("VariableDeclarator"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isVariance=function(e,t){return!!e&&("Variance"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isVoidTypeAnnotation=function(e,t){return!!e&&("VoidTypeAnnotation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isWhile=function(e,t){if(!e)return!1;const n=e.type;return("DoWhileStatement"===n||"WhileStatement"===n)&&(void 0===t||(0,r.default)(e,t))},t.isWhileStatement=function(e,t){return!!e&&("WhileStatement"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isWithStatement=function(e,t){return!!e&&("WithStatement"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isYieldExpression=function(e,t){return!!e&&("YieldExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))};var r=n(87610)},67275:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){return!!t&&((0,a.default)(t.type,e)?void 0===n||(0,r.default)(t,n):!n&&"Placeholder"===t.type&&e in s.FLIPPED_ALIAS_KEYS&&(0,i.default)(t.expectedNode,e))};var r=n(87610),a=n(11452),i=n(50015),s=n(46507)},86971:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){if(n&&"Identifier"===e.type&&"ObjectProperty"===t.type&&"ObjectExpression"===n.type)return!1;const a=r.default.keys[t.type];if(a)for(let n=0;n=0)return!0}else if(r===e)return!0}return!1};var r=n(1477)},60443:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.isFunctionDeclaration)(e)||(0,r.isClassDeclaration)(e)||(0,a.default)(e)};var r=n(94746),a=n(77182)},49268:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return!!(0,r.default)(e.type,"Immutable")||!!(0,a.isIdentifier)(e)&&"undefined"===e.name};var r=n(11452),a=n(94746)},77182:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.isVariableDeclaration)(e)&&("var"!==e.kind||e[a.BLOCK_SCOPED_SYMBOL])};var r=n(94746),a=n(36325)},8523:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return!(!e||!r.VISITOR_KEYS[e.type])};var r=n(46507)},4635:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function e(t,n){if("object"!=typeof t||"object"!=typeof n||null==t||null==n)return t===n;if(t.type!==n.type)return!1;const a=Object.keys(r.NODE_FIELDS[t.type]||t.type),i=r.VISITOR_KEYS[t.type];for(const r of a){if(typeof t[r]!=typeof n[r])return!1;if(null!=t[r]||null!=n[r]){if(null==t[r]||null==n[r])return!1;if(Array.isArray(t[r])){if(!Array.isArray(n[r]))return!1;if(t[r].length!==n[r].length)return!1;for(let a=0;a{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if(e===t)return!0;const n=r.PLACEHOLDERS_ALIAS[e];if(n)for(const e of n)if(t===e)return!0;return!1};var r=n(46507)},24837:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){switch(t.type){case"MemberExpression":case"OptionalMemberExpression":return t.property===e?!!t.computed:t.object===e;case"JSXMemberExpression":return t.object===e;case"VariableDeclarator":return t.init===e;case"ArrowFunctionExpression":return t.body===e;case"PrivateName":case"LabeledStatement":case"CatchClause":case"RestElement":case"BreakStatement":case"ContinueStatement":case"FunctionDeclaration":case"FunctionExpression":case"ExportNamespaceSpecifier":case"ExportDefaultSpecifier":case"ImportDefaultSpecifier":case"ImportNamespaceSpecifier":case"ImportSpecifier":case"ImportAttribute":case"JSXAttribute":case"ObjectPattern":case"ArrayPattern":case"MetaProperty":return!1;case"ClassMethod":case"ClassPrivateMethod":case"ObjectMethod":return t.key===e&&!!t.computed;case"ObjectProperty":return t.key===e?!!t.computed:!n||"ObjectPattern"!==n.type;case"ClassProperty":case"ClassAccessorProperty":case"TSPropertySignature":return t.key!==e||!!t.computed;case"ClassPrivateProperty":case"ObjectTypeProperty":return t.key!==e;case"ClassDeclaration":case"ClassExpression":return t.superClass===e;case"AssignmentExpression":case"AssignmentPattern":return t.right===e;case"ExportSpecifier":return(null==n||!n.source)&&t.local===e;case"TSEnumMember":return t.id!==e}return!0}},46400:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){return(!(0,r.isBlockStatement)(e)||!(0,r.isFunction)(t)&&!(0,r.isCatchClause)(t))&&(!(!(0,r.isPattern)(e)||!(0,r.isFunction)(t)&&!(0,r.isCatchClause)(t))||(0,r.isScopable)(e))};var r=n(94746)},52800:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.isImportDefaultSpecifier)(e)||(0,r.isIdentifier)(e.imported||e.exported,{name:"default"})};var r=n(94746)},11452:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if(e===t)return!0;if(r.ALIAS_KEYS[t])return!1;const n=r.FLIPPED_ALIAS_KEYS[t];if(n){if(n[0]===e)return!0;for(const t of n)if(e===t)return!0}return!1};var r=n(46507)},38917:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.default)(e)&&!a.has(e)};var r=n(93045);const a=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"])},93045:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t=!0){return"string"==typeof e&&((!t||!(0,r.isKeyword)(e)&&!(0,r.isStrictReservedWord)(e,!0))&&(0,r.isIdentifierName)(e))};var r=n(29649)},90830:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.isVariableDeclaration)(e,{kind:"var"})&&!e[a.BLOCK_SCOPED_SYMBOL]};var r=n(94746),a=n(36325)},92205:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){if(!(0,r.isMemberExpression)(e))return!1;const a=Array.isArray(t)?t:t.split("."),i=[];let s;for(s=e;(0,r.isMemberExpression)(s);s=s.object)i.push(s.property);if(i.push(s),i.lengtha.length)return!1;for(let e=0,t=i.length-1;e{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return!!e&&/^[a-z]/.test(e)}},86035:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=(0,n(88847).default)("React.Component");t.default=r},43804:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){if(!e)return;const s=r.NODE_FIELDS[e.type];if(!s)return;a(e,t,n,s[t]),i(e,t,n)},t.validateChild=i,t.validateField=a;var r=n(46507);function a(e,t,n,r){null!=r&&r.validate&&(r.optional&&null==n||r.validate(e,t,n))}function i(e,t,n){if(null==n)return;const a=r.NODE_PARENT_VALIDATIONS[n.type];a&&a(e,t,n)}},92509:function(e,t,n){!function(e,t,n,r){"use strict";let a;e.addSegment=void 0,e.addMapping=void 0,e.maybeAddSegment=void 0,e.maybeAddMapping=void 0,e.setSourceContent=void 0,e.toDecodedMap=void 0,e.toEncodedMap=void 0,e.fromMap=void 0,e.allMappings=void 0;class i{constructor({file:e,sourceRoot:n}={}){this._names=new t.SetArray,this._sources=new t.SetArray,this._sourcesContent=[],this._mappings=[],this.file=e,this.sourceRoot=n}}function s(e,t,n){for(let n=e.length;n>t;n--)e[n]=e[n-1];e[t]=n}function o(e,n){for(let r=0;ra(!1,e,t,n,r,i,s,o,l),e.maybeAddSegment=(e,t,n,r,i,s,o,l)=>a(!0,e,t,n,r,i,s,o,l),e.addMapping=(e,t)=>l(!1,e,t),e.maybeAddMapping=(e,t)=>l(!0,e,t),e.setSourceContent=(e,n,r)=>{const{_sources:a,_sourcesContent:i}=e;i[t.put(a,n)]=r},e.toDecodedMap=e=>{const{file:t,sourceRoot:n,_mappings:r,_sources:a,_sourcesContent:i,_names:s}=e;return function(e){const{length:t}=e;let n=t;for(let t=n-1;t>=0&&!(e[t].length>0);n=t,t--);n{const r=e.toDecodedMap(t);return Object.assign(Object.assign({},r),{mappings:n.encode(r.mappings)})},e.allMappings=e=>{const t=[],{_mappings:n,_sources:r,_names:a}=e;for(let e=0;e{const t=new r.TraceMap(e),n=new i({file:t.file,sourceRoot:t.sourceRoot});return o(n._names,t.names),o(n._sources,t.sources),n._sourcesContent=t.sourcesContent||t.sources.map((()=>null)),n._mappings=r.decodedMappings(t),n},a=(e,n,r,a,i,o,l,p,c)=>{const{_mappings:u,_sources:d,_sourcesContent:f,_names:y}=n,m=function(e,t){for(let n=e.length;n<=t;n++)e[n]=[];return e[t]}(u,r),h=function(e,t){let n=e.length;for(let r=n-1;r>=0&&!(t>=e[r][0]);n=r--);return n}(m,a);if(!i){if(e&&function(e,t){return 0===t||1===e[t-1].length}(m,h))return;return s(m,h,[a])}const T=t.put(d,i),S=p?t.put(y,p):-1;if(T===f.length&&(f[T]=null!=c?c:null),!e||!function(e,t,n,r,a,i){if(0===t)return!1;const s=e[t-1];return 1!==s.length&&n===s[1]&&r===s[2]&&a===s[3]&&i===(5===s.length?s[4]:-1)}(m,h,T,o,l,S))return s(m,h,p?[a,T,o,l,S]:[a,T,o,l])},e.GenMapping=i,Object.defineProperty(e,"__esModule",{value:!0})}(t,n(22208),n(92297),n(83446))},48435:function(e){e.exports=function(){"use strict";const e=/^[\w+.-]+:\/\//,t=/^([\w+.-]+:)\/\/([^@/#?]*@)?([^:/#?]*)(:\d+)?(\/[^#?]*)?(\?[^#]*)?(#.*)?/,n=/^file:(?:\/\/((?![a-z]:)[^/#?]*)?)?(\/?[^#?]*)(\?[^#]*)?(#.*)?/i;var r;function a(e){return e.startsWith("/")}function i(e){return/^[.?#]/.test(e)}function s(e){const n=t.exec(e);return o(n[1],n[2]||"",n[3],n[4]||"",n[5]||"/",n[6]||"",n[7]||"")}function o(e,t,n,a,i,s,o){return{scheme:e,user:t,host:n,port:a,path:i,query:s,hash:o,type:r.Absolute}}function l(t){if(function(e){return e.startsWith("//")}(t)){const e=s("http:"+t);return e.scheme="",e.type=r.SchemeRelative,e}if(a(t)){const e=s("http://foo.com"+t);return e.scheme="",e.host="",e.type=r.AbsolutePath,e}if(function(e){return e.startsWith("file:")}(t))return function(e){const t=n.exec(e),r=t[2];return o("file:","",t[1]||"","",a(r)?r:"/"+r,t[3]||"",t[4]||"")}(t);if(function(t){return e.test(t)}(t))return s(t);const i=s("http://foo.com/"+t);return i.scheme="",i.host="",i.type=t?t.startsWith("?")?r.Query:t.startsWith("#")?r.Hash:r.RelativePath:r.Empty,i}function p(e,t){const n=t<=r.RelativePath,a=e.path.split("/");let i=1,s=0,o=!1;for(let e=1;ea&&(a=i)}p(n,a);const s=n.query+n.hash;switch(a){case r.Hash:case r.Query:return s;case r.RelativePath:{const r=n.path.slice(1);return r?i(t||e)&&!i(r)?"./"+r+s:r+s:s||"."}case r.AbsolutePath:return n.path+s;default:return n.scheme+"//"+n.user+n.host+n.port+n.path+s}}}()},22208:function(e,t){!function(e){"use strict";e.get=void 0,e.put=void 0,e.pop=void 0;e.get=(e,t)=>e._indexes[t],e.put=(t,n)=>{const r=e.get(t,n);if(void 0!==r)return r;const{array:a,_indexes:i}=t;return i[n]=a.push(n)-1},e.pop=e=>{const{array:t,_indexes:n}=e;0!==t.length&&(n[t.pop()]=void 0)},e.SetArray=class{constructor(){this._indexes={__proto__:null},this.array=[]}},Object.defineProperty(e,"__esModule",{value:!0})}(t)},92297:function(e,t){!function(e){"use strict";const t=",".charCodeAt(0),n=";".charCodeAt(0),r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",a=new Uint8Array(64),i=new Uint8Array(128);for(let e=0;e<64;e++){const t=r.charCodeAt(e);a[e]=t,i[t]=e}const s="undefined"!=typeof TextDecoder?new TextDecoder:"undefined"!=typeof Buffer?{decode:e=>Buffer.from(e.buffer,e.byteOffset,e.byteLength).toString()}:{decode(e){let t="";for(let n=0;n>>=1,l&&(a=-2147483648|-a),n[r]+=a,t}function p(e,n,r){return!(n>=r)&&e.charCodeAt(n)!==t}function c(e){e.sort(u)}function u(e,t){return e[0]-t[0]}function d(e,t,n,r,i){const s=r[i];let o=s-n[i];n[i]=s,o=o<0?-o<<1|1:o<<1;do{let n=31&o;o>>>=5,o>0&&(n|=32),e[t++]=a[n]}while(o>0);return t}e.decode=function(e){const t=new Int32Array(5),n=[];let r=0;do{const a=o(e,r),i=[];let s=!0,u=0;t[0]=0;for(let n=r;n0&&(p===a&&(c+=s.decode(o),p=0),o[p++]=n),0!==f.length){r[0]=0;for(let e=0;ei&&(c+=s.decode(l),o.copyWithin(0,i,p),p-=i),e>0&&(o[p++]=t),p=d(o,p,r,n,0),1!==n.length&&(p=d(o,p,r,n,1),p=d(o,p,r,n,2),p=d(o,p,r,n,3),4!==n.length&&(p=d(o,p,r,n,4)))}}}return c+s.decode(o.subarray(0,p))},Object.defineProperty(e,"__esModule",{value:!0})}(t)},83446:function(e,t,n){!function(e,t,n){"use strict";function r(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var a=r(n);function i(e,t){return t&&!t.endsWith("/")&&(t+="/"),a.default(e,t)}const s=0,o=1,l=2,p=3,c=4;function u(e,t){for(let n=t;n=0&&e[r][s]===t;n=r--);return n}function S(){return{lastKey:-1,lastNeedle:-1,lastIndex:-1}}function b(e,t,n,r){const{lastKey:a,lastNeedle:i,lastIndex:o}=n;let l=0,p=e.length-1;if(r===a){if(t===i)return m=-1!==o&&e[o][s]===t,o;t>=i?l=-1===o?0:o:p=o}return n.lastKey=r,n.lastNeedle=t,n.lastIndex=function(e,t,n,r){for(;n<=r;){const a=n+(r-n>>1),i=e[a][s]-t;if(0===i)return m=!0,a;i<0?n=a+1:r=a-1}return m=!1,n-1}(e,t,l,p)}function E(e,t,n){for(let n=e.length;n>t;n--)e[n]=e[n-1];e[t]=n}function P(){return{__proto__:null}}function x(e,t,n,r,a,i,s,o,l,p){const{sections:c}=e;for(let e=0;ey)return;const n=v(r,t),a=0===e?f:0,i=b[e];for(let e=0;e=m)return;if(1===r.length){n.push([u]);continue}const d=T+r[o],f=r[l],h=r[p];n.push(4===r.length?[u,d,f,h]:[u,d,f,h,S+r[c]])}}}function A(e,t){for(let n=0;ni(e||"",d)));const{mappings:y}=r;"string"==typeof y?(this._encoded=y,this._decoded=void 0):(this._encoded=void 0,this._decoded=function(e,t){const n=u(e,0);if(n===e.length)return e;t||(e=e.slice());for(let r=n;r{function n(t,n,r,a,i,c){if(--r<0)throw new Error(O);if(a<0)throw new Error(I);const{sources:u,resolvedSources:d}=t;let f=u.indexOf(n);if(-1===f&&(f=d.indexOf(n)),-1===f)return c?[]:L(null,null);const y=(t._bySources||(t._bySources=function(e,t){const n=t.map(P);for(let r=0;r{var n;return null!==(n=e._encoded)&&void 0!==n?n:e._encoded=t.encode(e._decoded)},e.decodedMappings=e=>e._decoded||(e._decoded=t.decode(e._encoded)),e.traceSegment=(t,n,r)=>{const a=e.decodedMappings(t);if(n>=a.length)return null;const i=a[n],s=j(i,t._decodedMemo,n,r,1);return-1===s?null:i[s]},e.originalPositionFor=(t,{line:n,column:r,bias:a})=>{if(--n<0)throw new Error(O);if(r<0)throw new Error(I);const i=e.decodedMappings(t);if(n>=i.length)return w(null,null,null,null);const s=i[n],u=j(s,t._decodedMemo,n,r,a||1);if(-1===u)return w(null,null,null,null);const d=s[u];if(1===d.length)return w(null,null,null,null);const{names:f,resolvedSources:y}=t;return w(y[d[o]],d[l]+1,d[p],5===d.length?f[d[c]]:null)},e.allGeneratedPositionsFor=(e,{source:t,line:r,column:a,bias:i})=>n(e,t,r,a,i||N,!0),e.generatedPositionFor=(e,{source:t,line:r,column:a,bias:i})=>n(e,t,r,a,i||1,!1),e.eachMapping=(t,n)=>{const r=e.decodedMappings(t),{names:a,resolvedSources:i}=t;for(let e=0;e{const{sources:n,resolvedSources:r,sourcesContent:a}=e;if(null==a)return null;let i=n.indexOf(t);return-1===i&&(i=r.indexOf(t)),-1===i?null:a[i]},e.presortedDecodedMap=(e,t)=>{const n=new D(C(e,[]),t);return n._decoded=e.mappings,n},e.decodedMap=t=>C(t,e.decodedMappings(t)),e.encodedMap=t=>C(t,e.encodedMappings(t))})(),e.AnyMap=function(t,n){const r="string"==typeof t?JSON.parse(t):t;if(!("sections"in r))return new D(r,n);const a=[],i=[],s=[],o=[];x(r,n,a,i,s,o,0,0,1/0,1/0);const l={version:3,file:r.file,names:o,sources:i,sourcesContent:s,mappings:a};return e.presortedDecodedMap(l)},e.GREATEST_LOWER_BOUND=1,e.LEAST_UPPER_BOUND=N,e.TraceMap=D,Object.defineProperty(e,"__esModule",{value:!0})}(t,n(92297),n(48435))},26434:(e,t,n)=>{"use strict";e=n.nmd(e);const r=n(12085),a=(e,t)=>function(){return`[${e.apply(r,arguments)+t}m`},i=(e,t)=>function(){const n=e.apply(r,arguments);return`[${38+t};5;${n}m`},s=(e,t)=>function(){const n=e.apply(r,arguments);return`[${38+t};2;${n[0]};${n[1]};${n[2]}m`};Object.defineProperty(e,"exports",{enumerable:!0,get:function(){const e=new Map,t={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],gray:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}};t.color.grey=t.color.gray;for(const n of Object.keys(t)){const r=t[n];for(const n of Object.keys(r)){const a=r[n];t[n]={open:`[${a[0]}m`,close:`[${a[1]}m`},r[n]=t[n],e.set(a[0],a[1])}Object.defineProperty(t,n,{value:r,enumerable:!1}),Object.defineProperty(t,"codes",{value:e,enumerable:!1})}const n=e=>e,o=(e,t,n)=>[e,t,n];t.color.close="",t.bgColor.close="",t.color.ansi={ansi:a(n,0)},t.color.ansi256={ansi256:i(n,0)},t.color.ansi16m={rgb:s(o,0)},t.bgColor.ansi={ansi:a(n,10)},t.bgColor.ansi256={ansi256:i(n,10)},t.bgColor.ansi16m={rgb:s(o,10)};for(let e of Object.keys(r)){if("object"!=typeof r[e])continue;const n=r[e];"ansi16"===e&&(e="ansi"),"ansi16"in n&&(t.color.ansi[e]=a(n.ansi16,0),t.bgColor.ansi[e]=a(n.ansi16,10)),"ansi256"in n&&(t.color.ansi256[e]=i(n.ansi256,0),t.bgColor.ansi256[e]=i(n.ansi256,10)),"rgb"in n&&(t.color.ansi16m[e]=s(n.rgb,0),t.bgColor.ansi16m[e]=s(n.rgb,10))}return t}})},32589:(e,t,n)=>{"use strict";const r=n(63150),a=n(26434),i=n(92130).stdout,s=n(56864),o="win32"===process.platform&&!(process.env.TERM||"").toLowerCase().startsWith("xterm"),l=["ansi","ansi","ansi256","ansi16m"],p=new Set(["gray"]),c=Object.create(null);function u(e,t){t=t||{};const n=i?i.level:0;e.level=void 0===t.level?n:t.level,e.enabled="enabled"in t?t.enabled:e.level>0}function d(e){if(!this||!(this instanceof d)||this.template){const t={};return u(t,e),t.template=function(){const e=[].slice.call(arguments);return h.apply(null,[t.template].concat(e))},Object.setPrototypeOf(t,d.prototype),Object.setPrototypeOf(t.template,t),t.template.constructor=d,t.template}u(this,e)}o&&(a.blue.open="");for(const e of Object.keys(a))a[e].closeRe=new RegExp(r(a[e].close),"g"),c[e]={get(){const t=a[e];return y.call(this,this._styles?this._styles.concat(t):[t],this._empty,e)}};c.visible={get(){return y.call(this,this._styles||[],!0,"visible")}},a.color.closeRe=new RegExp(r(a.color.close),"g");for(const e of Object.keys(a.color.ansi))p.has(e)||(c[e]={get(){const t=this.level;return function(){const n={open:a.color[l[t]][e].apply(null,arguments),close:a.color.close,closeRe:a.color.closeRe};return y.call(this,this._styles?this._styles.concat(n):[n],this._empty,e)}}});a.bgColor.closeRe=new RegExp(r(a.bgColor.close),"g");for(const e of Object.keys(a.bgColor.ansi))p.has(e)||(c["bg"+e[0].toUpperCase()+e.slice(1)]={get(){const t=this.level;return function(){const n={open:a.bgColor[l[t]][e].apply(null,arguments),close:a.bgColor.close,closeRe:a.bgColor.closeRe};return y.call(this,this._styles?this._styles.concat(n):[n],this._empty,e)}}});const f=Object.defineProperties((()=>{}),c);function y(e,t,n){const r=function(){return m.apply(r,arguments)};r._styles=e,r._empty=t;const a=this;return Object.defineProperty(r,"level",{enumerable:!0,get:()=>a.level,set(e){a.level=e}}),Object.defineProperty(r,"enabled",{enumerable:!0,get:()=>a.enabled,set(e){a.enabled=e}}),r.hasGrey=this.hasGrey||"gray"===n||"grey"===n,r.__proto__=f,r}function m(){const e=arguments,t=e.length;let n=String(arguments[0]);if(0===t)return"";if(t>1)for(let r=1;r{"use strict";const t=/(?:\\(u[a-f\d]{4}|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi,n=/(?:^|\.)(\w+)(?:\(([^)]*)\))?/g,r=/^(['"])((?:\\.|(?!\1)[^\\])*)\1$/,a=/\\(u[a-f\d]{4}|x[a-f\d]{2}|.)|([^\\])/gi,i=new Map([["n","\n"],["r","\r"],["t","\t"],["b","\b"],["f","\f"],["v","\v"],["0","\0"],["\\","\\"],["e",""],["a",""]]);function s(e){return"u"===e[0]&&5===e.length||"x"===e[0]&&3===e.length?String.fromCharCode(parseInt(e.slice(1),16)):i.get(e)||e}function o(e,t){const n=[],i=t.trim().split(/\s*,\s*/g);let o;for(const t of i)if(isNaN(t)){if(!(o=t.match(r)))throw new Error(`Invalid Chalk template style argument: ${t} (in style '${e}')`);n.push(o[2].replace(a,((e,t,n)=>t?s(t):n)))}else n.push(Number(t));return n}function l(e){n.lastIndex=0;const t=[];let r;for(;null!==(r=n.exec(e));){const e=r[1];if(r[2]){const n=o(e,r[2]);t.push([e].concat(n))}else t.push([e])}return t}function p(e,t){const n={};for(const e of t)for(const t of e.styles)n[t[0]]=e.inverse?null:t.slice(1);let r=e;for(const e of Object.keys(n))if(Array.isArray(n[e])){if(!(e in r))throw new Error(`Unknown Chalk style: ${e}`);r=n[e].length>0?r[e].apply(r,n[e]):r[e]}return r}e.exports=(e,n)=>{const r=[],a=[];let i=[];if(n.replace(t,((t,n,o,c,u,d)=>{if(n)i.push(s(n));else if(c){const t=i.join("");i=[],a.push(0===r.length?t:p(e,r)(t)),r.push({inverse:o,styles:l(c)})}else if(u){if(0===r.length)throw new Error("Found extraneous } in Chalk template literal");a.push(p(e,r)(i.join(""))),i=[],r.pop()}else i.push(d)})),a.push(i.join("")),r.length>0){const e=`Chalk template literal is missing ${r.length} closing bracket${1===r.length?"":"s"} (\`}\`)`;throw new Error(e)}return a.join("")}},48168:(e,t,n)=>{var r=n(8874),a={};for(var i in r)r.hasOwnProperty(i)&&(a[r[i]]=i);var s=e.exports={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},lch:{channels:3,labels:"lch"},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}};for(var o in s)if(s.hasOwnProperty(o)){if(!("channels"in s[o]))throw new Error("missing channels property: "+o);if(!("labels"in s[o]))throw new Error("missing channel labels property: "+o);if(s[o].labels.length!==s[o].channels)throw new Error("channel and label counts mismatch: "+o);var l=s[o].channels,p=s[o].labels;delete s[o].channels,delete s[o].labels,Object.defineProperty(s[o],"channels",{value:l}),Object.defineProperty(s[o],"labels",{value:p})}s.rgb.hsl=function(e){var t,n,r=e[0]/255,a=e[1]/255,i=e[2]/255,s=Math.min(r,a,i),o=Math.max(r,a,i),l=o-s;return o===s?t=0:r===o?t=(a-i)/l:a===o?t=2+(i-r)/l:i===o&&(t=4+(r-a)/l),(t=Math.min(60*t,360))<0&&(t+=360),n=(s+o)/2,[t,100*(o===s?0:n<=.5?l/(o+s):l/(2-o-s)),100*n]},s.rgb.hsv=function(e){var t,n,r,a,i,s=e[0]/255,o=e[1]/255,l=e[2]/255,p=Math.max(s,o,l),c=p-Math.min(s,o,l),u=function(e){return(p-e)/6/c+.5};return 0===c?a=i=0:(i=c/p,t=u(s),n=u(o),r=u(l),s===p?a=r-n:o===p?a=1/3+t-r:l===p&&(a=2/3+n-t),a<0?a+=1:a>1&&(a-=1)),[360*a,100*i,100*p]},s.rgb.hwb=function(e){var t=e[0],n=e[1],r=e[2];return[s.rgb.hsl(e)[0],1/255*Math.min(t,Math.min(n,r))*100,100*(r=1-1/255*Math.max(t,Math.max(n,r)))]},s.rgb.cmyk=function(e){var t,n=e[0]/255,r=e[1]/255,a=e[2]/255;return[100*((1-n-(t=Math.min(1-n,1-r,1-a)))/(1-t)||0),100*((1-r-t)/(1-t)||0),100*((1-a-t)/(1-t)||0),100*t]},s.rgb.keyword=function(e){var t=a[e];if(t)return t;var n,i,s,o=1/0;for(var l in r)if(r.hasOwnProperty(l)){var p=(i=e,s=r[l],Math.pow(i[0]-s[0],2)+Math.pow(i[1]-s[1],2)+Math.pow(i[2]-s[2],2));p.04045?Math.pow((t+.055)/1.055,2.4):t/12.92)+.3576*(n=n>.04045?Math.pow((n+.055)/1.055,2.4):n/12.92)+.1805*(r=r>.04045?Math.pow((r+.055)/1.055,2.4):r/12.92)),100*(.2126*t+.7152*n+.0722*r),100*(.0193*t+.1192*n+.9505*r)]},s.rgb.lab=function(e){var t=s.rgb.xyz(e),n=t[0],r=t[1],a=t[2];return r/=100,a/=108.883,n=(n/=95.047)>.008856?Math.pow(n,1/3):7.787*n+16/116,[116*(r=r>.008856?Math.pow(r,1/3):7.787*r+16/116)-16,500*(n-r),200*(r-(a=a>.008856?Math.pow(a,1/3):7.787*a+16/116))]},s.hsl.rgb=function(e){var t,n,r,a,i,s=e[0]/360,o=e[1]/100,l=e[2]/100;if(0===o)return[i=255*l,i,i];t=2*l-(n=l<.5?l*(1+o):l+o-l*o),a=[0,0,0];for(var p=0;p<3;p++)(r=s+1/3*-(p-1))<0&&r++,r>1&&r--,i=6*r<1?t+6*(n-t)*r:2*r<1?n:3*r<2?t+(n-t)*(2/3-r)*6:t,a[p]=255*i;return a},s.hsl.hsv=function(e){var t=e[0],n=e[1]/100,r=e[2]/100,a=n,i=Math.max(r,.01);return n*=(r*=2)<=1?r:2-r,a*=i<=1?i:2-i,[t,100*(0===r?2*a/(i+a):2*n/(r+n)),(r+n)/2*100]},s.hsv.rgb=function(e){var t=e[0]/60,n=e[1]/100,r=e[2]/100,a=Math.floor(t)%6,i=t-Math.floor(t),s=255*r*(1-n),o=255*r*(1-n*i),l=255*r*(1-n*(1-i));switch(r*=255,a){case 0:return[r,l,s];case 1:return[o,r,s];case 2:return[s,r,l];case 3:return[s,o,r];case 4:return[l,s,r];case 5:return[r,s,o]}},s.hsv.hsl=function(e){var t,n,r,a=e[0],i=e[1]/100,s=e[2]/100,o=Math.max(s,.01);return r=(2-i)*s,n=i*o,[a,100*(n=(n/=(t=(2-i)*o)<=1?t:2-t)||0),100*(r/=2)]},s.hwb.rgb=function(e){var t,n,r,a,i,s,o,l=e[0]/360,p=e[1]/100,c=e[2]/100,u=p+c;switch(u>1&&(p/=u,c/=u),r=6*l-(t=Math.floor(6*l)),0!=(1&t)&&(r=1-r),a=p+r*((n=1-c)-p),t){default:case 6:case 0:i=n,s=a,o=p;break;case 1:i=a,s=n,o=p;break;case 2:i=p,s=n,o=a;break;case 3:i=p,s=a,o=n;break;case 4:i=a,s=p,o=n;break;case 5:i=n,s=p,o=a}return[255*i,255*s,255*o]},s.cmyk.rgb=function(e){var t=e[0]/100,n=e[1]/100,r=e[2]/100,a=e[3]/100;return[255*(1-Math.min(1,t*(1-a)+a)),255*(1-Math.min(1,n*(1-a)+a)),255*(1-Math.min(1,r*(1-a)+a))]},s.xyz.rgb=function(e){var t,n,r,a=e[0]/100,i=e[1]/100,s=e[2]/100;return n=-.9689*a+1.8758*i+.0415*s,r=.0557*a+-.204*i+1.057*s,t=(t=3.2406*a+-1.5372*i+-.4986*s)>.0031308?1.055*Math.pow(t,1/2.4)-.055:12.92*t,n=n>.0031308?1.055*Math.pow(n,1/2.4)-.055:12.92*n,r=r>.0031308?1.055*Math.pow(r,1/2.4)-.055:12.92*r,[255*(t=Math.min(Math.max(0,t),1)),255*(n=Math.min(Math.max(0,n),1)),255*(r=Math.min(Math.max(0,r),1))]},s.xyz.lab=function(e){var t=e[0],n=e[1],r=e[2];return n/=100,r/=108.883,t=(t/=95.047)>.008856?Math.pow(t,1/3):7.787*t+16/116,[116*(n=n>.008856?Math.pow(n,1/3):7.787*n+16/116)-16,500*(t-n),200*(n-(r=r>.008856?Math.pow(r,1/3):7.787*r+16/116))]},s.lab.xyz=function(e){var t,n,r,a=e[0];t=e[1]/500+(n=(a+16)/116),r=n-e[2]/200;var i=Math.pow(n,3),s=Math.pow(t,3),o=Math.pow(r,3);return n=i>.008856?i:(n-16/116)/7.787,t=s>.008856?s:(t-16/116)/7.787,r=o>.008856?o:(r-16/116)/7.787,[t*=95.047,n*=100,r*=108.883]},s.lab.lch=function(e){var t,n=e[0],r=e[1],a=e[2];return(t=360*Math.atan2(a,r)/2/Math.PI)<0&&(t+=360),[n,Math.sqrt(r*r+a*a),t]},s.lch.lab=function(e){var t,n=e[0],r=e[1];return t=e[2]/360*2*Math.PI,[n,r*Math.cos(t),r*Math.sin(t)]},s.rgb.ansi16=function(e){var t=e[0],n=e[1],r=e[2],a=1 in arguments?arguments[1]:s.rgb.hsv(e)[2];if(0===(a=Math.round(a/50)))return 30;var i=30+(Math.round(r/255)<<2|Math.round(n/255)<<1|Math.round(t/255));return 2===a&&(i+=60),i},s.hsv.ansi16=function(e){return s.rgb.ansi16(s.hsv.rgb(e),e[2])},s.rgb.ansi256=function(e){var t=e[0],n=e[1],r=e[2];return t===n&&n===r?t<8?16:t>248?231:Math.round((t-8)/247*24)+232:16+36*Math.round(t/255*5)+6*Math.round(n/255*5)+Math.round(r/255*5)},s.ansi16.rgb=function(e){var t=e%10;if(0===t||7===t)return e>50&&(t+=3.5),[t=t/10.5*255,t,t];var n=.5*(1+~~(e>50));return[(1&t)*n*255,(t>>1&1)*n*255,(t>>2&1)*n*255]},s.ansi256.rgb=function(e){if(e>=232){var t=10*(e-232)+8;return[t,t,t]}var n;return e-=16,[Math.floor(e/36)/5*255,Math.floor((n=e%36)/6)/5*255,n%6/5*255]},s.rgb.hex=function(e){var t=(((255&Math.round(e[0]))<<16)+((255&Math.round(e[1]))<<8)+(255&Math.round(e[2]))).toString(16).toUpperCase();return"000000".substring(t.length)+t},s.hex.rgb=function(e){var t=e.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!t)return[0,0,0];var n=t[0];3===t[0].length&&(n=n.split("").map((function(e){return e+e})).join(""));var r=parseInt(n,16);return[r>>16&255,r>>8&255,255&r]},s.rgb.hcg=function(e){var t,n=e[0]/255,r=e[1]/255,a=e[2]/255,i=Math.max(Math.max(n,r),a),s=Math.min(Math.min(n,r),a),o=i-s;return t=o<=0?0:i===n?(r-a)/o%6:i===r?2+(a-n)/o:4+(n-r)/o+4,t/=6,[360*(t%=1),100*o,100*(o<1?s/(1-o):0)]},s.hsl.hcg=function(e){var t,n=e[1]/100,r=e[2]/100,a=0;return(t=r<.5?2*n*r:2*n*(1-r))<1&&(a=(r-.5*t)/(1-t)),[e[0],100*t,100*a]},s.hsv.hcg=function(e){var t=e[1]/100,n=e[2]/100,r=t*n,a=0;return r<1&&(a=(n-r)/(1-r)),[e[0],100*r,100*a]},s.hcg.rgb=function(e){var t=e[0]/360,n=e[1]/100,r=e[2]/100;if(0===n)return[255*r,255*r,255*r];var a,i=[0,0,0],s=t%1*6,o=s%1,l=1-o;switch(Math.floor(s)){case 0:i[0]=1,i[1]=o,i[2]=0;break;case 1:i[0]=l,i[1]=1,i[2]=0;break;case 2:i[0]=0,i[1]=1,i[2]=o;break;case 3:i[0]=0,i[1]=l,i[2]=1;break;case 4:i[0]=o,i[1]=0,i[2]=1;break;default:i[0]=1,i[1]=0,i[2]=l}return a=(1-n)*r,[255*(n*i[0]+a),255*(n*i[1]+a),255*(n*i[2]+a)]},s.hcg.hsv=function(e){var t=e[1]/100,n=t+e[2]/100*(1-t),r=0;return n>0&&(r=t/n),[e[0],100*r,100*n]},s.hcg.hsl=function(e){var t=e[1]/100,n=e[2]/100*(1-t)+.5*t,r=0;return n>0&&n<.5?r=t/(2*n):n>=.5&&n<1&&(r=t/(2*(1-n))),[e[0],100*r,100*n]},s.hcg.hwb=function(e){var t=e[1]/100,n=t+e[2]/100*(1-t);return[e[0],100*(n-t),100*(1-n)]},s.hwb.hcg=function(e){var t=e[1]/100,n=1-e[2]/100,r=n-t,a=0;return r<1&&(a=(n-r)/(1-r)),[e[0],100*r,100*a]},s.apple.rgb=function(e){return[e[0]/65535*255,e[1]/65535*255,e[2]/65535*255]},s.rgb.apple=function(e){return[e[0]/255*65535,e[1]/255*65535,e[2]/255*65535]},s.gray.rgb=function(e){return[e[0]/100*255,e[0]/100*255,e[0]/100*255]},s.gray.hsl=s.gray.hsv=function(e){return[0,0,e[0]]},s.gray.hwb=function(e){return[0,100,e[0]]},s.gray.cmyk=function(e){return[0,0,0,e[0]]},s.gray.lab=function(e){return[e[0],0,0]},s.gray.hex=function(e){var t=255&Math.round(e[0]/100*255),n=((t<<16)+(t<<8)+t).toString(16).toUpperCase();return"000000".substring(n.length)+n},s.rgb.gray=function(e){return[(e[0]+e[1]+e[2])/3/255*100]}},12085:(e,t,n)=>{var r=n(48168),a=n(4111),i={};Object.keys(r).forEach((function(e){i[e]={},Object.defineProperty(i[e],"channels",{value:r[e].channels}),Object.defineProperty(i[e],"labels",{value:r[e].labels});var t=a(e);Object.keys(t).forEach((function(n){var r=t[n];i[e][n]=function(e){var t=function(t){if(null==t)return t;arguments.length>1&&(t=Array.prototype.slice.call(arguments));var n=e(t);if("object"==typeof n)for(var r=n.length,a=0;a1&&(t=Array.prototype.slice.call(arguments)),e(t))};return"conversion"in e&&(t.conversion=e.conversion),t}(r)}))})),e.exports=i},4111:(e,t,n)=>{var r=n(48168);function a(e,t){return function(n){return t(e(n))}}function i(e,t){for(var n=[t[e].parent,e],i=r[t[e].parent][e],s=t[e].parent;t[s].parent;)n.unshift(t[s].parent),i=a(r[t[s].parent][s],i),s=t[s].parent;return i.conversion=n,i}e.exports=function(e){for(var t=function(e){var t=function(){for(var e={},t=Object.keys(r),n=t.length,a=0;a{"use strict";e.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}},11227:(e,t,n)=>{t.formatArgs=function(t){if(t[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+t[0]+(this.useColors?"%c ":" ")+"+"+e.exports.humanize(this.diff),!this.useColors)return;const n="color: "+this.color;t.splice(1,0,n,"color: inherit");let r=0,a=0;t[0].replace(/%[a-zA-Z%]/g,(e=>{"%%"!==e&&(r++,"%c"===e&&(a=r))})),t.splice(a,0,n)},t.save=function(e){try{e?t.storage.setItem("debug",e):t.storage.removeItem("debug")}catch(e){}},t.load=function(){let e;try{e=t.storage.getItem("debug")}catch(e){}return!e&&"undefined"!=typeof process&&"env"in process&&(e=process.env.DEBUG),e},t.useColors=function(){return!("undefined"==typeof window||!window.process||"renderer"!==window.process.type&&!window.process.__nwjs)||("undefined"==typeof navigator||!navigator.userAgent||!navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))&&("undefined"!=typeof document&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||"undefined"!=typeof window&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/))},t.storage=function(){try{return localStorage}catch(e){}}(),t.destroy=(()=>{let e=!1;return()=>{e||(e=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})(),t.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"],t.log=console.debug||console.log||(()=>{}),e.exports=n(82447)(t);const{formatters:r}=e.exports;r.j=function(e){try{return JSON.stringify(e)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}},82447:(e,t,n)=>{e.exports=function(e){function t(e){let n,a,i,s=null;function o(...e){if(!o.enabled)return;const r=o,a=Number(new Date),i=a-(n||a);r.diff=i,r.prev=n,r.curr=a,n=a,e[0]=t.coerce(e[0]),"string"!=typeof e[0]&&e.unshift("%O");let s=0;e[0]=e[0].replace(/%([a-zA-Z%])/g,((n,a)=>{if("%%"===n)return"%";s++;const i=t.formatters[a];if("function"==typeof i){const t=e[s];n=i.call(r,t),e.splice(s,1),s--}return n})),t.formatArgs.call(r,e),(r.log||t.log).apply(r,e)}return o.namespace=e,o.useColors=t.useColors(),o.color=t.selectColor(e),o.extend=r,o.destroy=t.destroy,Object.defineProperty(o,"enabled",{enumerable:!0,configurable:!1,get:()=>null!==s?s:(a!==t.namespaces&&(a=t.namespaces,i=t.enabled(e)),i),set:e=>{s=e}}),"function"==typeof t.init&&t.init(o),o}function r(e,n){const r=t(this.namespace+(void 0===n?":":n)+e);return r.log=this.log,r}function a(e){return e.toString().substring(2,e.toString().length-2).replace(/\.\*\?$/,"*")}return t.debug=t,t.default=t,t.coerce=function(e){return e instanceof Error?e.stack||e.message:e},t.disable=function(){const e=[...t.names.map(a),...t.skips.map(a).map((e=>"-"+e))].join(",");return t.enable(""),e},t.enable=function(e){let n;t.save(e),t.namespaces=e,t.names=[],t.skips=[];const r=("string"==typeof e?e:"").split(/[\s,]+/),a=r.length;for(n=0;n{t[n]=e[n]})),t.names=[],t.skips=[],t.formatters={},t.selectColor=function(e){let n=0;for(let t=0;t{"undefined"==typeof process||"renderer"===process.type||!0===process.browser||process.__nwjs?e.exports=n(11227):e.exports=n(39)},39:(e,t,n)=>{const r=n(76224),a=n(73837);t.init=function(e){e.inspectOpts={};const n=Object.keys(t.inspectOpts);for(let r=0;r{}),"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."),t.colors=[6,2,3,4,5,1];try{const e=n(92130);e&&(e.stderr||e).level>=2&&(t.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch(e){}t.inspectOpts=Object.keys(process.env).filter((e=>/^debug_/i.test(e))).reduce(((e,t)=>{const n=t.substring(6).toLowerCase().replace(/_([a-z])/g,((e,t)=>t.toUpperCase()));let r=process.env[t];return r=!!/^(yes|on|true|enabled)$/i.test(r)||!/^(no|off|false|disabled)$/i.test(r)&&("null"===r?null:Number(r)),e[n]=r,e}),{}),e.exports=n(82447)(t);const{formatters:i}=e.exports;i.o=function(e){return this.inspectOpts.colors=this.useColors,a.inspect(e,this.inspectOpts).split("\n").map((e=>e.trim())).join(" ")},i.O=function(e){return this.inspectOpts.colors=this.useColors,a.inspect(e,this.inspectOpts)}},63150:e=>{"use strict";var t=/[|\\{}()[\]^$+*?.]/g;e.exports=function(e){if("string"!=typeof e)throw new TypeError("Expected a string");return e.replace(t,"\\$&")}},11272:(e,t,n)=>{"use strict";e.exports=n(38487)},86560:e=>{"use strict";e.exports=(e,t)=>{t=t||process.argv;const n=e.startsWith("-")?"":1===e.length?"-":"--",r=t.indexOf(n+e),a=t.indexOf("--");return-1!==r&&(-1===a||r{Object.defineProperty(t,"__esModule",{value:!0}),t.default=/((['"])(?:(?!\2|\\).|\\(?:\r\n|[\s\S]))*(\2)?|`(?:[^`\\$]|\\[\s\S]|\$(?!\{)|\$\{(?:[^{}]|\{[^}]*\}?)*\}?)*(`)?)|(\/\/.*)|(\/\*(?:[^*]|\*(?!\/))*(\*\/)?)|(\/(?!\*)(?:\[(?:(?![\]\\]).|\\.)*\]|(?![\/\]\\]).|\\.)+\/(?:(?!\s*(?:\b|[\u0080-\uFFFF$\\'"~({]|[+\-!](?!=)|\.?\d))|[gmiyus]{1,6}\b(?![\u0080-\uFFFF$\\]|\s*(?:[+\-*%&|^<>!=?({]|\/(?![\/*])))))|(0[xX][\da-fA-F]+|0[oO][0-7]+|0[bB][01]+|(?:\d*\.\d+|\d+\.?)(?:[eE][+-]?\d+)?)|((?!\d)(?:(?!\s)[$\w\u0080-\uFFFF]|\\u[\da-fA-F]{4}|\\u\{[\da-fA-F]+\})+)|(--|\+\+|&&|\|\||=>|\.{3}|(?:[+\-\/%&|^]|\*{1,2}|<{1,2}|>{1,3}|!=?|={1,2})=?|[?~.,:;[\](){}])|(\s+)|(^$|[\s\S])/g,t.matchToToken=function(e){var t={type:"invalid",value:e[0],closed:void 0};return e[1]?(t.type="string",t.closed=!(!e[3]&&!e[4])):e[5]?t.type="comment":e[6]?(t.type="comment",t.closed=!!e[7]):e[8]?t.type="regex":e[9]?t.type="number":e[10]?t.type="name":e[11]?t.type="punctuator":e[12]&&(t.type="whitespace"),t}},3312:e=>{"use strict";const t={},n=t.hasOwnProperty,r=(e,t)=>{for(const r in e)n.call(e,r)&&t(r,e[r])},a=t.toString,i=Array.isArray,s=Buffer.isBuffer,o={'"':'\\"',"'":"\\'","\\":"\\\\","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r","\t":"\\t"},l=/["'\\\b\f\n\r\t]/,p=/[0-9]/,c=/[ !#-&\(-\[\]-_a-~]/,u=(e,t)=>{const n=()=>{E=b,++t.indentLevel,b=t.indent.repeat(t.indentLevel)},d={escapeEverything:!1,minimal:!1,isScriptContext:!1,quotes:"single",wrap:!1,es6:!1,json:!1,compact:!0,lowercaseHex:!1,numbers:"decimal",indent:"\t",indentLevel:0,__inline1__:!1,__inline2__:!1},f=t&&t.json;var y,m;f&&(d.quotes="double",d.wrap=!0),y=d,t=(m=t)?(r(m,((e,t)=>{y[e]=t})),y):y,"single"!=t.quotes&&"double"!=t.quotes&&"backtick"!=t.quotes&&(t.quotes="single");const h="double"==t.quotes?'"':"backtick"==t.quotes?"`":"'",T=t.compact,S=t.lowercaseHex;let b=t.indent.repeat(t.indentLevel),E="";const P=t.__inline1__,x=t.__inline2__,g=T?"":"\n";let A,v=!0;const O="binary"==t.numbers,I="octal"==t.numbers,N="decimal"==t.numbers,D="hexadecimal"==t.numbers;if(f&&e&&"function"==typeof e.toJSON&&(e=e.toJSON()),"string"!=typeof(C=e)&&"[object String]"!=a.call(C)){if((e=>"[object Map]"==a.call(e))(e))return 0==e.size?"new Map()":(T||(t.__inline1__=!0,t.__inline2__=!1),"new Map("+u(Array.from(e),t)+")");if((e=>"[object Set]"==a.call(e))(e))return 0==e.size?"new Set()":"new Set("+u(Array.from(e),t)+")";if(s(e))return 0==e.length?"Buffer.from([])":"Buffer.from("+u(Array.from(e),t)+")";if(i(e))return A=[],t.wrap=!0,P&&(t.__inline1__=!1,t.__inline2__=!0),x||n(),((e,t)=>{const n=e.length;let r=-1;for(;++r{v=!1,x&&(t.__inline2__=!1),A.push((T||x?"":b)+u(e,t))})),v?"[]":x?"["+A.join(", ")+"]":"["+g+A.join(","+g)+g+(T?"":E)+"]";if(!(e=>"number"==typeof e||"[object Number]"==a.call(e))(e))return(e=>"[object Object]"==a.call(e))(e)?(A=[],t.wrap=!0,n(),r(e,((e,n)=>{v=!1,A.push((T?"":b)+u(e,t)+":"+(T?"":" ")+u(n,t))})),v?"{}":"{"+g+A.join(","+g)+g+(T?"":E)+"}"):f?JSON.stringify(e)||"null":String(e);if(f)return JSON.stringify(e);if(N)return String(e);if(D){let t=e.toString(16);return S||(t=t.toUpperCase()),"0x"+t}if(O)return"0b"+e.toString(2);if(I)return"0o"+e.toString(8)}var C;const w=e;let L=-1;const j=w.length;for(A="";++L=55296&&e<=56319&&j>L+1){const t=w.charCodeAt(L+1);if(t>=56320&&t<=57343){let n=(1024*(e-55296)+t-56320+65536).toString(16);S||(n=n.toUpperCase()),A+="\\u{"+n+"}",++L;continue}}}if(!t.escapeEverything){if(c.test(e)){A+=e;continue}if('"'==e){A+=h==e?'\\"':e;continue}if("`"==e){A+=h==e?"\\`":e;continue}if("'"==e){A+=h==e?"\\'":e;continue}}if("\0"==e&&!f&&!p.test(w.charAt(L+1))){A+="\\0";continue}if(l.test(e)){A+=o[e];continue}const n=e.charCodeAt(0);if(t.minimal&&8232!=n&&8233!=n){A+=e;continue}let r=n.toString(16);S||(r=r.toUpperCase());const a=r.length>2||f,i="\\"+(a?"u":"x")+("0000"+r).slice(a?-4:-2);A+=i}return t.wrap&&(A=h+A+h),"`"==h&&(A=A.replace(/\$\{/g,"\\${")),t.isScriptContext?A.replace(/<\/(script|style)/gi,"<\\/$1").replace(/