bunli 0.1.0 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/cli.js CHANGED
@@ -1,4 +1,137 @@
1
1
  #!/usr/bin/env bun
2
2
  // @bun
3
- var U0=Object.defineProperty;var F=(B,L)=>{for(var O in L)U0(B,O,{get:L[O],enumerable:!0,configurable:!0,set:(I)=>L[O]=()=>I})};var x=(B,L)=>()=>(B&&(L=B(B=0)),L);import{z as K}from"zod";import X0 from"path";import{existsSync as Y0}from"fs";async function J(B=process.cwd()){for(let L of j0){let O=X0.join(B,L);if(Y0(O))try{let I=await import(O),q=I.default||I;return Z0.parse(q)}catch(I){throw console.error(`Error loading config from ${O}:`,I),I}}return{}}var Z0,j0;var T=x(()=>{Z0=K.object({name:K.string().optional(),version:K.string().optional(),description:K.string().optional(),commands:K.object({manifest:K.string().optional(),directory:K.string().optional()}).optional(),build:K.object({entry:K.string().or(K.array(K.string())).optional(),outdir:K.string().optional(),targets:K.array(K.string()).optional(),compress:K.boolean().optional(),external:K.array(K.string()).optional(),minify:K.boolean().optional(),sourcemap:K.boolean().optional()}).optional(),dev:K.object({watch:K.boolean().optional(),inspect:K.boolean().optional(),port:K.number().optional()}).optional(),test:K.object({pattern:K.string().or(K.array(K.string())).optional(),coverage:K.boolean().optional(),watch:K.boolean().optional()}).optional(),release:K.object({npm:K.boolean().optional(),github:K.boolean().optional(),tagFormat:K.string().optional(),conventionalCommits:K.boolean().optional()}).optional(),workspace:K.object({packages:K.array(K.string()).optional(),shared:K.any().optional(),versionStrategy:K.enum(["fixed","independent"]).optional()}).optional()}),j0=["bunli.config.ts","bunli.config.js","bunli.config.mjs"]});import{existsSync as p}from"fs";import c from"path";async function h(B=process.cwd()){for(let O of E0){let I=c.join(B,O);if(p(I))return O}let L=c.join(B,"package.json");if(p(L))try{let O=await Bun.file(L).json();if(O.bin){if(typeof O.bin==="string")return O.bin;else if(typeof O.bin==="object"){let I=Object.values(O.bin)[0];if(typeof I==="string")return I}}}catch{}return}var E0;var u=x(()=>{E0=["src/cli.ts","src/index.ts","src/main.ts","cli.ts","index.ts","main.ts","src/cli.js","src/index.js","src/main.js","cli.js","index.js","main.js"]});var f={};F(f,{default:()=>W0});import{defineCommand as H0,option as k}from"@bunli/core";import{z as m}from"zod";import{spawn as J0}from"child_process";var W0;var t=x(()=>{T();u();W0=H0({name:"dev",description:"Run your CLI in development mode with hot reload",alias:"d",options:{entry:k(m.string().optional(),{short:"e",description:"Entry file (defaults to auto-detect)"}),watch:k(m.boolean().default(!0),{short:"w",description:"Watch for changes"}),inspect:k(m.boolean().default(!1),{short:"i",description:"Enable debugger"}),port:k(m.number().int().min(1).max(65535).optional(),{short:"p",description:"Debugger port"})},handler:async({flags:B,positional:L,spinner:O,colors:I})=>{let q=await J(),M=B.entry||q.build?.entry||await h();if(!M)console.error(I.red("No entry file found. Please specify with --entry or in bunli.config.ts")),process.exit(1);let Q=Array.isArray(M)?M[0]:M;if(!Q)console.error(I.red("Entry file is required")),process.exit(1);let Y=["run"];if(B.watch??q.dev?.watch??!0)Y.push("--hot");if(B.inspect??q.dev?.inspect){let U=B.port||q.dev?.port||9229;Y.push(`--inspect=${U}`)}if(Y.push(Q),L.length>0)Y.push("--",...L);console.log(I.cyan("Starting dev server...")),console.log(I.dim(`> bun ${Y.join(" ")}`)),console.log(),J0("bun",Y,{stdio:"inherit",env:{...process.env,NODE_ENV:"development"}}).on("exit",(U)=>{process.exit(U||0)})}})});var i={};F(i,{default:()=>R0});import{defineCommand as _0,option as _}from"@bunli/core";import{z as R}from"zod";var{$:G}=globalThis.Bun;import $ from"path";var R0;var n=x(()=>{T();u();R0=_0({name:"build",description:"Build your CLI for production",alias:"b",options:{entry:_(R.string().optional(),{short:"e",description:"Entry file (defaults to auto-detect)"}),outdir:_(R.string().optional(),{short:"o",description:"Output directory"}),outfile:_(R.string().optional(),{description:"Output filename (for single executable)"}),minify:_(R.boolean().optional(),{short:"m",description:"Minify output"}),sourcemap:_(R.boolean().optional(),{short:"s",description:"Generate sourcemaps"}),bytecode:_(R.boolean().default(!1),{description:"Enable bytecode compilation (experimental)"}),runtime:_(R.enum(["bun","node"]).optional(),{short:"r",description:"Runtime target (for non-compiled builds)"}),targets:_(R.string().optional().transform((B)=>{if(!B)return;return B.split(",").map((L)=>L.trim())}),{short:"t",description:"Target platforms for compilation (e.g., darwin-arm64,linux-x64)"}),watch:_(R.boolean().default(!1),{short:"w",description:"Watch for changes"})},handler:async({flags:B,spinner:L,colors:O})=>{let I=await J(),q=B.entry||I.build?.entry||await h();if(!q)console.error(O.red("No entry file found. Please specify with --entry or in bunli.config.ts")),process.exit(1);let M=B.targets||I.build?.targets,Q=M&&M.length>0;if(Q&&Array.isArray(q))console.error(O.red("Compiled builds only support a single entry file")),process.exit(1);let Y=Array.isArray(q)?q[0]:q;if(!Y)console.error(O.red("Entry file is undefined")),process.exit(1);let Z=B.outdir||I.build?.outdir||"./dist",U=L("Building CLI...");U.start();try{if(await G`rm -rf ${Z}`,await G`mkdir -p ${Z}`,Q){U.update("Compiling to standalone executable...");let X=[];if(M.includes("all"))X=["darwin-arm64","darwin-x64","linux-arm64","linux-x64","windows-x64"];else if(M.includes("native"))X=[`${process.platform}-${process.arch}`];else X=M;for(let E of X){U.update(`Compiling for ${E}...`);let W=X.length>1?$.join(Z,E):Z;await G`mkdir -p ${W}`;let y=$.extname(Y),d=y?Y.slice(0,-y.length):Y,b=$.basename(d),q0=E.includes("windows"),K0=B.outfile||$.join(W,q0?`${b}.exe`:b),V=["build",Y,"--compile","--outfile",K0,"--target",`bun-${E}`];if(B.minify??I.build?.minify??!0)V.push("--minify");if(B.sourcemap??I.build?.sourcemap??!1)V.push("--sourcemap");if(B.bytecode)V.push("--bytecode");let M0=I.build?.external||[];for(let Q0 of M0)V.push("--external",Q0);if((await G`bun ${V}`.quiet()).exitCode!==0)throw new Error(`Compilation failed for ${E}`)}if(I.build?.compress&&X.length>1){U.update("Compressing builds...");for(let E of X)await G`cd ${Z} && tar -czf ${E}.tar.gz ${E}`,await G`rm -rf ${Z}/${E}`}}else{let E={entrypoints:Array.isArray(q)?q:[q],outdir:Z,target:B.runtime||"bun",format:"esm",minify:B.minify??I.build?.minify??!0,sourcemap:B.sourcemap??I.build?.sourcemap??!1,external:I.build?.external||[]},A=await Bun.build(E);if(!A.success)throw new Error(`Build failed: ${A.logs.join("\\n")}`);for(let W of A.outputs)if(W.path.endsWith(".js")){let y=await W.text(),b=`#!/usr/bin/env ${B.runtime==="node"?"node":"bun"}
4
- ${y}`;await Bun.write(W.path,b),await G`chmod +x ${W.path}`}}U.succeed("Build complete!");let j=await G`du -sh ${Z}`.text();console.log(O.dim(`Output size: ${j.trim()}`))}catch(j){U.fail("Build failed"),console.error(O.red(j instanceof Error?j.message:String(j))),process.exit(1)}}})});var a={};F(a,{default:()=>S0});import{defineCommand as G0,option as P}from"@bunli/core";import{z as N}from"zod";import{spawn as N0}from"child_process";import{readdir as x0}from"fs/promises";import{existsSync as g}from"fs";import e from"path";async function l(B,L,O){return new Promise((I,q)=>{let M=["test"],Q=L.pattern||O.test?.pattern||"**/*.test.ts",Y=Array.isArray(Q)?Q:[Q];if(M.push(...Y),L.watch??O.test?.watch)M.push("--watch");if(L.coverage??O.test?.coverage)M.push("--coverage");if(L.bail)M.push("--bail");if(L.timeout)M.push("--timeout",L.timeout.toString());let Z=N0("bun",M,{cwd:B,stdio:["inherit","pipe","pipe"],env:{...process.env,NODE_ENV:"test"}}),U="",j="";Z.stdout?.on("data",(X)=>{U+=X.toString(),process.stdout.write(X)}),Z.stderr?.on("data",(X)=>{j+=X.toString(),process.stderr.write(X)}),Z.on("exit",(X)=>{let E=(U.match(/\u2713/g)||[]).length,A=(U.match(/\u2717/g)||[]).length,W=(U.match(/\u229D/g)||[]).length;I({success:X===0,passed:E,failed:A,skipped:W})}),Z.on("error",q)})}async function A0(B){if(B.endsWith("/*")){let L=B.slice(0,-2);if(g(L))return(await x0(L,{withFileTypes:!0})).filter((I)=>I.isDirectory()&&g(e.join(L,I.name,"package.json"))).map((I)=>e.join(L,I.name))}return[]}var S0;var r=x(()=>{T();S0=G0({name:"test",description:"Run tests for your CLI",alias:"t",options:{pattern:P(N.string().or(N.array(N.string())).optional(),{short:"p",description:"Test file patterns"}),watch:P(N.boolean().default(!1),{short:"w",description:"Watch for changes"}),coverage:P(N.boolean().default(!1),{short:"c",description:"Generate coverage report"}),bail:P(N.boolean().default(!1),{short:"b",description:"Stop on first failure"}),timeout:P(N.number().int().positive().optional(),{description:"Test timeout in milliseconds"}),all:P(N.boolean().default(!1),{description:"Run tests in all packages (workspace mode)"})},handler:async({flags:B,positional:L,spinner:O,colors:I})=>{let q=await J();if(B.all&&q.workspace?.packages){let M=q.workspace.packages,Q=!0;for(let Y of M){let Z=await A0(Y);for(let U of Z){let j=O(`Testing ${U}...`);j.start();try{if((await l(U,B,q)).success)j.succeed(`${U} tests passed`);else if(j.fail(`${U} tests failed`),Q=!1,B.bail)break}catch(X){if(j.fail(`${U} tests failed`),console.error(I.red(X instanceof Error?X.message:String(X))),Q=!1,B.bail)break}}if(!Q&&B.bail)break}if(!Q)process.exit(1)}else{let M=O("Running tests...");M.start();try{let Q=await l(".",B,q);if(Q.success){if(M.succeed("All tests passed!"),console.log(I.green(`\u2713 ${Q.passed} tests passed`)),Q.skipped>0)console.log(I.yellow(`\u229D ${Q.skipped} tests skipped`))}else M.fail("Tests failed"),console.log(I.red(`\u2717 ${Q.failed} tests failed`)),process.exit(1)}catch(Q){M.fail("Tests failed"),console.error(I.red(Q instanceof Error?Q.message:String(Q))),process.exit(1)}}}})});var o={};F(o,{default:()=>P0});import{defineCommand as T0,option as w}from"@bunli/core";import{z as S}from"zod";var{$:H}=globalThis.Bun;async function w0(B,L,O,I,q){let M=await z(),Q=M.version||"0.0.0",Y=await D0(B.version,Q,O);if(console.log(q.bold(`Releasing ${M.name||"CLI"}`)),console.log(q.dim(` Current: ${Q}`)),console.log(q.dim(` New: ${Y}`)),console.log(),!B.dry){if(!await O.confirm("Continue with release?",{default:!0})){console.log(q.yellow("Release cancelled"));return}}let Z=[{name:"Running tests",cmd:()=>H`bun test`},{name:"Building project",cmd:()=>H`bun run build`},{name:"Updating version",cmd:()=>V0(Y)},{name:"Creating git tag",cmd:()=>F0(Y,L,B)},{name:"Publishing to npm",cmd:()=>$0(B,L)},{name:"Creating GitHub release",cmd:()=>v0(Y,B,L)}];for(let U of Z){if(U.name.includes("npm")&&!(B.npm??L.release?.npm??!0))continue;if(U.name.includes("GitHub")&&!(B.github??L.release?.github??!0))continue;let j=I(U.name);j.start();try{if(!B.dry)await U.cmd();j.succeed(U.name)}catch(X){if(j.fail(U.name),console.error(q.red(X instanceof Error?X.message:String(X))),!B.dry)process.exit(1)}}if(console.log(),console.log(q.green(`\u2728 Released ${M.name||"CLI"} v${Y}!`)),B.github??L.release?.github??!0)console.log(q.dim(`GitHub: https://github.com/${await s()}/releases/tag/v${Y}`));if(B.npm??L.release?.npm??!0)console.log(q.dim(`NPM: https://npmjs.com/package/${M.name}`))}async function C0(B,L,O,I,q){if(console.log(q.bold("Workspace Release")),L.workspace?.versionStrategy==="independent")console.log("Using independent versioning...");else console.log("Using fixed versioning...")}async function z(){return await Bun.file("package.json").json()}async function D0(B,L,O){if(B)if(["patch","minor","major"].includes(B))return v(L,B);else return B;let I=await O.select("Select version bump:",{choices:[{name:`patch (${v(L,"patch")})`,value:"patch"},{name:`minor (${v(L,"minor")})`,value:"minor"},{name:`major (${v(L,"major")})`,value:"major"},{name:"custom",value:"custom"}]});if(I==="custom")return await O("Enter version:");return v(L,I)}function v(B,L){let O=B.split(".").map(Number),[I=0,q=0,M=0]=O;switch(L){case"patch":return`${I}.${q}.${M+1}`;case"minor":return`${I}.${q+1}.0`;case"major":return`${I+1}.0.0`}}async function V0(B){let L=await z();L.version=B,await Bun.write("package.json",JSON.stringify(L,null,2)+"\\n")}async function F0(B,L,O){let q=(O.tag||L.release?.tagFormat||"v${version}").replace("${version}",B);await H`git add package.json`,await H`git commit -m "chore: release v${B}"`,await H`git tag ${q}`,await H`git push origin main --tags`}async function $0(B,L){if(!(B.npm??L.release?.npm??!0))return;if((await z()).private)throw new Error("Cannot publish private package to npm");await H`npm publish`}async function v0(B,L,O){if(!(L.github??O.release?.github??!0))return;let I=`v${B}`,q=await s();try{await H`gh --version`.quiet()}catch{console.warn("GitHub CLI not found, skipping GitHub release");return}await H`gh release create ${I} --title "Release ${I}" --generate-notes`}async function s(){return(await H`git remote get-url origin`.text()).match(/github\.com[:/]([^\s/]+\/[^\s/]+?)(?:\.git)?(?:\s|$)/)?.[1]??"unknown/repo"}var P0;var B0=x(()=>{T();P0=T0({name:"release",description:"Create a release of your CLI",alias:"r",options:{version:w(S.enum(["patch","minor","major"]).or(S.string()).optional(),{short:"v",description:"Version to release (patch/minor/major/x.y.z)"}),tag:w(S.string().optional(),{short:"t",description:"Git tag format"}),npm:w(S.boolean().optional(),{description:"Publish to npm"}),github:w(S.boolean().optional(),{description:"Create GitHub release"}),dry:w(S.boolean().default(!1),{short:"d",description:"Dry run - show what would be done"}),all:w(S.boolean().default(!1),{description:"Release all packages (workspace mode)"})},handler:async({flags:B,prompt:L,spinner:O,colors:I})=>{let q=await J();try{if((await H`git status --porcelain`.text()).trim()&&!B.dry)console.error(I.red("Working directory is not clean. Please commit or stash changes first.")),process.exit(1)}catch{console.error(I.red("Not a git repository")),process.exit(1)}if(B.all&&q.workspace?.packages)await C0(B,q,L,O,I);else await w0(B,q,L,O,I)}})});var I0={};F(I0,{default:()=>h0});import{defineCommand as y0,option as C}from"@bunli/core";import{z as D}from"zod";import{spawn as b0}from"child_process";var h0;var L0=x(()=>{h0=y0({name:"init",description:"Initialize a new Bunli CLI project",alias:"i",options:{name:C(D.string().optional(),{short:"n",description:"Project name"}),template:C(D.enum(["basic","advanced","monorepo"]).default("basic"),{short:"t",description:"Project template"}),dir:C(D.string().optional(),{short:"d",description:"Directory to create project in"}),git:C(D.boolean().default(!0),{short:"g",description:"Initialize git repository"}),install:C(D.boolean().default(!0),{description:"Install dependencies"}),"package-manager":C(D.enum(["bun","pnpm","yarn","npm"]).default("bun"),{short:"p",description:"Package manager to use"})},handler:async({flags:B,positional:L,colors:O})=>{console.log(O.cyan("\uD83D\uDE80 Creating new Bunli CLI project...")),console.log();let I=["create-bunli"];if(L[0])I.push(L[0]);else if(B.name)I.push(B.name);if(B.template!=="basic")I.push("--template",B.template);if(B.dir)I.push("--dir",B.dir);if(!B.git)I.push("--no-git");if(!B.install)I.push("--no-install");if(B["package-manager"]!=="bun")I.push("--package-manager",B["package-manager"]);console.log(O.dim(`> bunx ${I.join(" ")}`)),console.log();let q=b0("bunx",I,{stdio:"inherit",env:process.env});q.on("exit",(M)=>{if(M===0){console.log(),console.log(O.green("\uD83C\uDF89 Project created successfully!")),console.log(),console.log("Next steps:");let Q=L[0]||B.name||"your-project";console.log(O.gray(` cd ${Q}`)),console.log(O.gray(" bunli dev"))}else console.error(O.red("Failed to create project")),process.exit(M||1)}),q.on("error",(M)=>{console.error(O.red("Failed to run create-bunli:"),M.message),console.log(),console.log("Make sure create-bunli is available:"),console.log(O.gray(" bunx create-bunli --help")),process.exit(1)})}})});T();import{createCLI as k0}from"@bunli/core";var O0=k0({name:"bunli",version:"0.1.0",description:"The Bunli CLI toolchain for developing, building, and distributing CLIs"}),GB=await J();await O0.load({dev:()=>Promise.resolve().then(() => (t(),f)),build:()=>Promise.resolve().then(() => (n(),i)),test:()=>Promise.resolve().then(() => (r(),a)),release:()=>Promise.resolve().then(() => (B0(),o)),init:()=>Promise.resolve().then(() => (L0(),I0))});await O0.run();
3
+ var AV=Object.create;var{getPrototypeOf:CV,defineProperty:S2,getOwnPropertyNames:DV}=Object;var IV=Object.prototype.hasOwnProperty;var P2=(J,X,Z)=>{Z=J!=null?AV(CV(J)):{};let Q=X||!J||!J.__esModule?S2(Z,"default",{value:J,enumerable:!0}):Z;for(let Y of DV(J))if(!IV.call(Q,Y))S2(Q,Y,{get:()=>J[Y],enumerable:!0});return Q};var I=(J,X)=>()=>(X||J((X={exports:{}}).exports,X),X.exports);var yJ=(J,X)=>{for(var Z in X)S2(J,Z,{get:X[Z],enumerable:!0,configurable:!0,set:(Q)=>X[Z]=()=>Q})};var G0=(J,X)=>()=>(J&&(X=J(J=0)),X);var q9=import.meta.require;import{bunliConfigSchema as NV}from"@bunli/core";import wV from"path";import{existsSync as SV}from"fs";async function R0(J=process.cwd()){for(let X of PV){let Z=wV.join(J,X);if(SV(Z))try{let Q=await import(Z),Y=NV.parse(Q.default||Q);return{...Y,build:{targets:["native"],compress:!1,minify:!1,sourcemap:!0,...Y.build},dev:{watch:!0,inspect:!1,...Y.dev},test:{pattern:["**/*.test.ts","**/*.spec.ts"],coverage:!1,watch:!1,...Y.test},workspace:{versionStrategy:"fixed",...Y.workspace},release:{npm:!0,github:!1,tagFormat:"v{{version}}",conventionalCommits:!0,...Y.release}}}catch(Q){throw console.error(`Error loading config from ${Z}:`,Q),Q}}return{build:{targets:["native"],compress:!1,minify:!1,sourcemap:!0},dev:{watch:!0,inspect:!1},test:{pattern:["**/*.test.ts","**/*.spec.ts"],coverage:!1,watch:!1},workspace:{versionStrategy:"fixed"},release:{npm:!0,github:!1,tagFormat:"v{{version}}",conventionalCommits:!0}}}var PV;var $J=G0(()=>{PV=["bunli.config.ts","bunli.config.js","bunli.config.mjs"]});import{join as TV,extname as y8}from"path";class UX{transpiler;constructor(){this.transpiler=new Bun.Transpiler({loader:"tsx",target:"bun"})}async scanCommands(J){try{let X=new Bun.Glob("**/*.{ts,tsx,js,jsx}"),Z=await Array.fromAsync(X.scan({cwd:J})),Q=[],Y=Z.map(async(G)=>{let z=TV(J,G),W=y8(G);if(![".ts",".tsx",".js",".jsx"].includes(W))return null;if(this.isNonCommandFile(G))return null;if(await this.isCommandFile(z))return z;return null}),H=await Promise.all(Y);for(let G of H)if(G)Q.push(G);return Q}catch(X){return console.warn(`Warning: Could not scan commands directory: ${J}`),[]}}async isCommandFile(J){try{let Z=await Bun.file(J).text(),Q=this.transpiler.scan(Z),Y=Q.exports.some((z)=>z==="default"||z.includes("Command")||z.includes("defineCommand")),H=Q.imports.some((z)=>z.path.includes("@bunli/core")||z.path.includes("defineCommand")),G=Z.includes("defineCommand(");return Y&&(H||G)}catch(X){return!1}}isNonCommandFile(J){return J.includes(".test.")||J.includes(".spec.")||J.includes("__tests__")||J.includes("node_modules")||J.includes("dist")||J.includes(".bunli")||J.includes(".d.ts")||J.includes(".config.")||J.includes(".setup.")||J.includes("commands.gen.")}getCommandName(J,X){let Q=J.replace(X+"/","").replace(/\.[^.]+$/,"");if(Q.endsWith("/index"))return Q.slice(0,-6);return Q}getExportPath(J,X){return`./commands/${J.replace(X+"/","").replace(/\.[^.]+$/,"")}`}}function T2(J){let X=y8(J);return[".ts",".tsx",".js",".jsx"].includes(X)&&!J.includes(".test.")&&!J.includes(".spec.")&&!J.includes("__tests__")&&!J.includes("commands.gen.")&&!J.includes(".bunli/")}var L2=()=>{};var AX=I((v4)=>{Object.defineProperty(v4,"__esModule",{value:!0});function LV(J,X){if(J==null)return{};var Z={};for(var Q in J)if({}.hasOwnProperty.call(J,Q)){if(X.indexOf(Q)!==-1)continue;Z[Q]=J[Q]}return Z}class i0{constructor(J,X,Z){this.line=void 0,this.column=void 0,this.index=void 0,this.line=J,this.column=X,this.index=Z}}class I9{constructor(J,X){this.start=void 0,this.end=void 0,this.filename=void 0,this.identifierName=void 0,this.start=J,this.end=X}}function a1(J,X){let{line:Z,column:Q,index:Y}=J;return new i0(Z,Q+X,Y+X)}var u8="BABEL_PARSER_SOURCETYPE_MODULE_REQUIRED",kV={ImportMetaOutsideModule:{message:`import.meta may appear only with 'sourceType: "module"'`,code:u8},ImportOutsideModule:{message:`'import' and 'export' may appear only with 'sourceType: "module"'`,code:u8}},m8={ArrayPattern:"array destructuring pattern",AssignmentExpression:"assignment expression",AssignmentPattern:"assignment expression",ArrowFunctionExpression:"arrow function expression",ConditionalExpression:"conditional expression",CatchClause:"catch clause",ForOfStatement:"for-of statement",ForInStatement:"for-in statement",ForStatement:"for-loop",FormalParameters:"function parameter list",Identifier:"identifier",ImportSpecifier:"import specifier",ImportDefaultSpecifier:"import default specifier",ImportNamespaceSpecifier:"import namespace specifier",ObjectPattern:"object destructuring pattern",ParenthesizedExpression:"parenthesized expression",RestElement:"rest element",UpdateExpression:{true:"prefix operation",false:"postfix operation"},VariableDeclarator:"variable declaration",YieldExpression:"yield expression"},$X=(J)=>J.type==="UpdateExpression"?m8.UpdateExpression[`${J.prefix}`]:m8[J.type],bV={AccessorIsGenerator:({kind:J})=>`A ${J}ter cannot be a generator.`,ArgumentsInClass:"'arguments' is only allowed in functions and class methods.",AsyncFunctionInSingleStatementContext:"Async functions can only be declared at the top level or inside a block.",AwaitBindingIdentifier:"Can not use 'await' as identifier inside an async function.",AwaitBindingIdentifierInStaticBlock:"Can not use 'await' as identifier inside a static block.",AwaitExpressionFormalParameter:"'await' is not allowed in async function parameters.",AwaitUsingNotInAsyncContext:"'await using' is only allowed within async functions and at the top levels of modules.",AwaitNotInAsyncContext:"'await' is only allowed within async functions and at the top levels of modules.",BadGetterArity:"A 'get' accessor must not have any formal parameters.",BadSetterArity:"A 'set' accessor must have exactly one formal parameter.",BadSetterRestParameter:"A 'set' accessor function argument must not be a rest parameter.",ConstructorClassField:"Classes may not have a field named 'constructor'.",ConstructorClassPrivateField:"Classes may not have a private field named '#constructor'.",ConstructorIsAccessor:"Class constructor may not be an accessor.",ConstructorIsAsync:"Constructor can't be an async function.",ConstructorIsGenerator:"Constructor can't be a generator.",DeclarationMissingInitializer:({kind:J})=>`Missing initializer in ${J} declaration.`,DecoratorArgumentsOutsideParentheses:"Decorator arguments must be moved inside parentheses: use '@(decorator(args))' instead of '@(decorator)(args)'.",DecoratorBeforeExport:"Decorators must be placed *before* the 'export' keyword. Remove the 'decoratorsBeforeExport: true' option to use the 'export @decorator class {}' syntax.",DecoratorsBeforeAfterExport:"Decorators can be placed *either* before or after the 'export' keyword, but not in both locations at the same time.",DecoratorConstructor:"Decorators can't be used with a constructor. Did you mean '@dec class { ... }'?",DecoratorExportClass:"Decorators must be placed *after* the 'export' keyword. Remove the 'decoratorsBeforeExport: false' option to use the '@decorator export class {}' syntax.",DecoratorSemicolon:"Decorators must not be followed by a semicolon.",DecoratorStaticBlock:"Decorators can't be used with a static block.",DeferImportRequiresNamespace:'Only `import defer * as x from "./module"` is valid.',DeletePrivateField:"Deleting a private field is not allowed.",DestructureNamedImport:"ES2015 named imports do not destructure. Use another statement for destructuring after the import.",DuplicateConstructor:"Duplicate constructor in the same class.",DuplicateDefaultExport:"Only one default export allowed per module.",DuplicateExport:({exportName:J})=>`\`${J}\` has already been exported. Exported identifiers must be unique.`,DuplicateProto:"Redefinition of __proto__ property.",DuplicateRegExpFlags:"Duplicate regular expression flag.",ElementAfterRest:"Rest element must be last element.",EscapedCharNotAnIdentifier:"Invalid Unicode escape.",ExportBindingIsString:({localName:J,exportName:X})=>`A string literal cannot be used as an exported binding without \`from\`.
4
+ - Did you mean \`export { '${J}' as '${X}' } from 'some-module'\`?`,ExportDefaultFromAsIdentifier:"'from' is not allowed as an identifier after 'export default'.",ForInOfLoopInitializer:({type:J})=>`'${J==="ForInStatement"?"for-in":"for-of"}' loop variable declaration may not have an initializer.`,ForInUsing:"For-in loop may not start with 'using' declaration.",ForOfAsync:"The left-hand side of a for-of loop may not be 'async'.",ForOfLet:"The left-hand side of a for-of loop may not start with 'let'.",GeneratorInSingleStatementContext:"Generators can only be declared at the top level or inside a block.",IllegalBreakContinue:({type:J})=>`Unsyntactic ${J==="BreakStatement"?"break":"continue"}.`,IllegalLanguageModeDirective:"Illegal 'use strict' directive in function with non-simple parameter list.",IllegalReturn:"'return' outside of function.",ImportAttributesUseAssert:"The `assert` keyword in import attributes is deprecated and it has been replaced by the `with` keyword. You can enable the `deprecatedImportAssert` parser plugin to suppress this error.",ImportBindingIsString:({importName:J})=>`A string literal cannot be used as an imported binding.
5
+ - Did you mean \`import { "${J}" as foo }\`?`,ImportCallArity:"`import()` requires exactly one or two arguments.",ImportCallNotNewExpression:"Cannot use new with import(...).",ImportCallSpreadArgument:"`...` is not allowed in `import()`.",ImportJSONBindingNotDefault:"A JSON module can only be imported with `default`.",ImportReflectionHasAssertion:"`import module x` cannot have assertions.",ImportReflectionNotBinding:'Only `import module x from "./module"` is valid.',IncompatibleRegExpUVFlags:"The 'u' and 'v' regular expression flags cannot be enabled at the same time.",InvalidBigIntLiteral:"Invalid BigIntLiteral.",InvalidCodePoint:"Code point out of bounds.",InvalidCoverDiscardElement:"'void' must be followed by an expression when not used in a binding position.",InvalidCoverInitializedName:"Invalid shorthand property initializer.",InvalidDecimal:"Invalid decimal.",InvalidDigit:({radix:J})=>`Expected number in radix ${J}.`,InvalidEscapeSequence:"Bad character escape sequence.",InvalidEscapeSequenceTemplate:"Invalid escape sequence in template.",InvalidEscapedReservedWord:({reservedWord:J})=>`Escape sequence in keyword ${J}.`,InvalidIdentifier:({identifierName:J})=>`Invalid identifier ${J}.`,InvalidLhs:({ancestor:J})=>`Invalid left-hand side in ${$X(J)}.`,InvalidLhsBinding:({ancestor:J})=>`Binding invalid left-hand side in ${$X(J)}.`,InvalidLhsOptionalChaining:({ancestor:J})=>`Invalid optional chaining in the left-hand side of ${$X(J)}.`,InvalidNumber:"Invalid number.",InvalidOrMissingExponent:"Floating-point numbers require a valid exponent after the 'e'.",InvalidOrUnexpectedToken:({unexpected:J})=>`Unexpected character '${J}'.`,InvalidParenthesizedAssignment:"Invalid parenthesized assignment pattern.",InvalidPrivateFieldResolution:({identifierName:J})=>`Private name #${J} is not defined.`,InvalidPropertyBindingPattern:"Binding member expression.",InvalidRecordProperty:"Only properties and spread elements are allowed in record definitions.",InvalidRestAssignmentPattern:"Invalid rest operator's argument.",LabelRedeclaration:({labelName:J})=>`Label '${J}' is already declared.`,LetInLexicalBinding:"'let' is disallowed as a lexically bound name.",LineTerminatorBeforeArrow:"No line break is allowed before '=>'.",MalformedRegExpFlags:"Invalid regular expression flag.",MissingClassName:"A class name is required.",MissingEqInAssignment:"Only '=' operator can be used for specifying default value.",MissingSemicolon:"Missing semicolon.",MissingPlugin:({missingPlugin:J})=>`This experimental syntax requires enabling the parser plugin: ${J.map((X)=>JSON.stringify(X)).join(", ")}.`,MissingOneOfPlugins:({missingPlugin:J})=>`This experimental syntax requires enabling one of the following parser plugin(s): ${J.map((X)=>JSON.stringify(X)).join(", ")}.`,MissingUnicodeEscape:"Expecting Unicode escape sequence \\uXXXX.",MixingCoalesceWithLogical:"Nullish coalescing operator(??) requires parens when mixing with logical operators.",ModuleAttributeDifferentFromType:"The only accepted module attribute is `type`.",ModuleAttributeInvalidValue:"Only string literals are allowed as module attribute values.",ModuleAttributesWithDuplicateKeys:({key:J})=>`Duplicate key "${J}" is not allowed in module attributes.`,ModuleExportNameHasLoneSurrogate:({surrogateCharCode:J})=>`An export name cannot include a lone surrogate, found '\\u${J.toString(16)}'.`,ModuleExportUndefined:({localName:J})=>`Export '${J}' is not defined.`,MultipleDefaultsInSwitch:"Multiple default clauses.",NewlineAfterThrow:"Illegal newline after throw.",NoCatchOrFinally:"Missing catch or finally clause.",NumberIdentifier:"Identifier directly after number.",NumericSeparatorInEscapeSequence:"Numeric separators are not allowed inside unicode escape sequences or hex escape sequences.",ObsoleteAwaitStar:"'await*' has been removed from the async functions proposal. Use Promise.all() instead.",OptionalChainingNoNew:"Constructors in/after an Optional Chain are not allowed.",OptionalChainingNoTemplate:"Tagged Template Literals are not allowed in optionalChain.",OverrideOnConstructor:"'override' modifier cannot appear on a constructor declaration.",ParamDupe:"Argument name clash.",PatternHasAccessor:"Object pattern can't contain getter or setter.",PatternHasMethod:"Object pattern can't contain methods.",PrivateInExpectedIn:({identifierName:J})=>`Private names are only allowed in property accesses (\`obj.#${J}\`) or in \`in\` expressions (\`#${J} in obj\`).`,PrivateNameRedeclaration:({identifierName:J})=>`Duplicate private name #${J}.`,RecordExpressionBarIncorrectEndSyntaxType:"Record expressions ending with '|}' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",RecordExpressionBarIncorrectStartSyntaxType:"Record expressions starting with '{|' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",RecordExpressionHashIncorrectStartSyntaxType:"Record expressions starting with '#{' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'hash'.",RecordNoProto:"'__proto__' is not allowed in Record expressions.",RestTrailingComma:"Unexpected trailing comma after rest element.",SloppyFunction:"In non-strict mode code, functions can only be declared at top level or inside a block.",SloppyFunctionAnnexB:"In non-strict mode code, functions can only be declared at top level, inside a block, or as the body of an if statement.",SourcePhaseImportRequiresDefault:'Only `import source x from "./module"` is valid.',StaticPrototype:"Classes may not have static property named prototype.",SuperNotAllowed:"`super()` is only valid inside a class constructor of a subclass. Maybe a typo in the method name ('constructor') or not extending another class?",SuperPrivateField:"Private fields can't be accessed on super.",TrailingDecorator:"Decorators must be attached to a class element.",TupleExpressionBarIncorrectEndSyntaxType:"Tuple expressions ending with '|]' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",TupleExpressionBarIncorrectStartSyntaxType:"Tuple expressions starting with '[|' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",TupleExpressionHashIncorrectStartSyntaxType:"Tuple expressions starting with '#[' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'hash'.",UnexpectedArgumentPlaceholder:"Unexpected argument placeholder.",UnexpectedAwaitAfterPipelineBody:'Unexpected "await" after pipeline body; await must have parentheses in minimal proposal.',UnexpectedDigitAfterHash:"Unexpected digit after hash token.",UnexpectedImportExport:"'import' and 'export' may only appear at the top level.",UnexpectedKeyword:({keyword:J})=>`Unexpected keyword '${J}'.`,UnexpectedLeadingDecorator:"Leading decorators must be attached to a class declaration.",UnexpectedLexicalDeclaration:"Lexical declaration cannot appear in a single-statement context.",UnexpectedNewTarget:"`new.target` can only be used in functions or class properties.",UnexpectedNumericSeparator:"A numeric separator is only allowed between two digits.",UnexpectedPrivateField:"Unexpected private name.",UnexpectedReservedWord:({reservedWord:J})=>`Unexpected reserved word '${J}'.`,UnexpectedSuper:"'super' is only allowed in object methods and classes.",UnexpectedToken:({expected:J,unexpected:X})=>`Unexpected token${X?` '${X}'.`:""}${J?`, expected "${J}"`:""}`,UnexpectedTokenUnaryExponentiation:"Illegal expression. Wrap left hand side or entire exponentiation in parentheses.",UnexpectedUsingDeclaration:"Using declaration cannot appear in the top level when source type is `script` or in the bare case statement.",UnexpectedVoidPattern:"Unexpected void binding.",UnsupportedBind:"Binding should be performed on object property.",UnsupportedDecoratorExport:"A decorated export must export a class declaration.",UnsupportedDefaultExport:"Only expressions, functions or classes are allowed as the `default` export.",UnsupportedImport:"`import` can only be used in `import()` or `import.meta`.",UnsupportedMetaProperty:({target:J,onlyValidPropertyName:X})=>`The only valid meta property for ${J} is ${J}.${X}.`,UnsupportedParameterDecorator:"Decorators cannot be used to decorate parameters.",UnsupportedPropertyDecorator:"Decorators cannot be used to decorate object literal properties.",UnsupportedSuper:"'super' can only be used with function calls (i.e. super()) or in property accesses (i.e. super.prop or super[prop]).",UnterminatedComment:"Unterminated comment.",UnterminatedRegExp:"Unterminated regular expression.",UnterminatedString:"Unterminated string constant.",UnterminatedTemplate:"Unterminated template.",UsingDeclarationExport:"Using declaration cannot be exported.",UsingDeclarationHasBindingPattern:"Using declaration cannot have destructuring patterns.",VarRedeclaration:({identifierName:J})=>`Identifier '${J}' has already been declared.`,VoidPatternCatchClauseParam:"A void binding can not be the catch clause parameter. Use `try { ... } catch { ... }` if you want to discard the caught error.",VoidPatternInitializer:"A void binding may not have an initializer.",YieldBindingIdentifier:"Can not use 'yield' as identifier inside a generator.",YieldInParameter:"Yield expression is not allowed in formal parameters.",YieldNotInGeneratorFunction:"'yield' is only allowed within generator functions.",ZeroDigitNumericSeparator:"Numeric separator can not be used after leading 0."},vV={StrictDelete:"Deleting local variable in strict mode.",StrictEvalArguments:({referenceName:J})=>`Assigning to '${J}' in strict mode.`,StrictEvalArgumentsBinding:({bindingName:J})=>`Binding '${J}' in strict mode.`,StrictFunction:"In strict mode code, functions can only be declared at top level or inside a block.",StrictNumericEscape:"The only valid numeric escape in strict mode is '\\0'.",StrictOctalLiteral:"Legacy octal literals are not allowed in strict mode.",StrictWith:"'with' in strict mode."},EV={ParseExpressionEmptyInput:"Unexpected parseExpression() input: The input is empty or contains only comments.",ParseExpressionExpectsEOF:({unexpected:J})=>`Unexpected parseExpression() input: The input should contain exactly one expression, but the first expression is followed by the unexpected character \`${String.fromCodePoint(J)}\`.`},_V=new Set(["ArrowFunctionExpression","AssignmentExpression","ConditionalExpression","YieldExpression"]),gV=Object.assign({PipeBodyIsTighter:"Unexpected yield after pipeline body; any yield expression acting as Hack-style pipe body must be parenthesized due to its loose operator precedence.",PipeTopicRequiresHackPipes:'Topic reference is used, but the pipelineOperator plugin was not passed a "proposal": "hack" or "smart" option.',PipeTopicUnbound:"Topic reference is unbound; it must be inside a pipe body.",PipeTopicUnconfiguredToken:({token:J})=>`Invalid topic token ${J}. In order to use ${J} as a topic reference, the pipelineOperator plugin must be configured with { "proposal": "hack", "topicToken": "${J}" }.`,PipeTopicUnused:"Hack-style pipe body does not contain a topic reference; Hack-style pipes must use topic at least once.",PipeUnparenthesizedBody:({type:J})=>`Hack-style pipe body cannot be an unparenthesized ${$X({type:J})}; please wrap it in parentheses.`},{PipelineBodyNoArrow:'Unexpected arrow "=>" after pipeline body; arrow function in pipeline body must be parenthesized.',PipelineBodySequenceExpression:"Pipeline body may not be a comma-separated sequence expression.",PipelineHeadSequenceExpression:"Pipeline head should not be a comma-separated sequence expression.",PipelineTopicUnused:"Pipeline is in topic style but does not use topic reference.",PrimaryTopicNotAllowed:"Topic reference was used in a lexical context without topic binding.",PrimaryTopicRequiresSmartPipeline:'Topic reference is used, but the pipelineOperator plugin was not passed a "proposal": "hack" or "smart" option.'}),fV=["message"];function c8(J,X,Z){Object.defineProperty(J,X,{enumerable:!1,configurable:!0,value:Z})}function hV({toMessage:J,code:X,reasonCode:Z,syntaxPlugin:Q}){let Y=Z==="MissingPlugin"||Z==="MissingOneOfPlugins";{let H={AccessorCannotDeclareThisParameter:"AccesorCannotDeclareThisParameter",AccessorCannotHaveTypeParameters:"AccesorCannotHaveTypeParameters",ConstInitializerMustBeStringOrNumericLiteralOrLiteralEnumReference:"ConstInitiailizerMustBeStringOrNumericLiteralOrLiteralEnumReference",SetAccessorCannotHaveOptionalParameter:"SetAccesorCannotHaveOptionalParameter",SetAccessorCannotHaveRestParameter:"SetAccesorCannotHaveRestParameter",SetAccessorCannotHaveReturnType:"SetAccesorCannotHaveReturnType"};if(H[Z])Z=H[Z]}return function H(G,z){let W=SyntaxError();if(W.code=X,W.reasonCode=Z,W.loc=G,W.pos=G.index,W.syntaxPlugin=Q,Y)W.missingPlugin=z.missingPlugin;return c8(W,"clone",function(U={}){var $;let{line:j,column:C,index:A}=($=U.loc)!=null?$:G;return H(new i0(j,C,A),Object.assign({},z,U.details))}),c8(W,"details",z),Object.defineProperty(W,"message",{configurable:!0,get(){let V=`${J(z)} (${G.line}:${G.column})`;return this.message=V,V},set(V){Object.defineProperty(this,"message",{value:V,writable:!0})}}),W}}function T0(J,X){if(Array.isArray(J))return(Q)=>T0(Q,J[0]);let Z={};for(let Q of Object.keys(J)){let Y=J[Q],H=typeof Y==="string"?{message:()=>Y}:typeof Y==="function"?{message:Y}:Y,{message:G}=H,z=LV(H,fV),W=typeof G==="string"?()=>G:G;Z[Q]=hV(Object.assign({code:"BABEL_PARSER_SYNTAX_ERROR",reasonCode:Q,toMessage:W},X?{syntaxPlugin:X}:{},z))}return Z}var M=Object.assign({},T0(kV),T0(bV),T0(vV),T0(EV),T0`pipelineOperator`(gV));function xV(){return{sourceType:"script",sourceFilename:void 0,startIndex:0,startColumn:0,startLine:1,allowAwaitOutsideFunction:!1,allowReturnOutsideFunction:!1,allowNewTargetOutsideFunction:!1,allowImportExportEverywhere:!1,allowSuperOutsideMethod:!1,allowUndeclaredExports:!1,allowYieldOutsideFunction:!1,plugins:[],strictMode:null,ranges:!1,tokens:!1,createImportExpressions:!1,createParenthesizedExpressions:!1,errorRecovery:!1,attachComment:!0,annexB:!0}}function yV(J){let X=xV();if(J==null)return X;if(J.annexB!=null&&J.annexB!==!1)throw Error("The `annexB` option can only be set to `false`.");for(let Z of Object.keys(X))if(J[Z]!=null)X[Z]=J[Z];if(X.startLine===1){if(J.startIndex==null&&X.startColumn>0)X.startIndex=X.startColumn;else if(J.startColumn==null&&X.startIndex>0)X.startColumn=X.startIndex}else if(J.startColumn==null||J.startIndex==null){if(J.startIndex!=null)throw Error("With a `startLine > 1` you must also specify `startIndex` and `startColumn`.")}if(X.sourceType==="commonjs"){if(J.allowAwaitOutsideFunction!=null)throw Error("The `allowAwaitOutsideFunction` option cannot be used with `sourceType: 'commonjs'`.");if(J.allowReturnOutsideFunction!=null)throw Error("`sourceType: 'commonjs'` implies `allowReturnOutsideFunction: true`, please remove the `allowReturnOutsideFunction` option or use `sourceType: 'script'`.");if(J.allowNewTargetOutsideFunction!=null)throw Error("`sourceType: 'commonjs'` implies `allowNewTargetOutsideFunction: true`, please remove the `allowNewTargetOutsideFunction` option or use `sourceType: 'script'`.")}return X}var{defineProperty:uV}=Object,l8=(J,X)=>{if(J)uV(J,X,{enumerable:!1,value:J[X]})};function F9(J){return l8(J.loc.start,"index"),l8(J.loc.end,"index"),J}var mV=(J)=>class extends J{parse(){let Z=F9(super.parse());if(this.optionFlags&256)Z.tokens=Z.tokens.map(F9);return Z}parseRegExpLiteral({pattern:Z,flags:Q}){let Y=null;try{Y=new RegExp(Z,Q)}catch(G){}let H=this.estreeParseLiteral(Y);return H.regex={pattern:Z,flags:Q},H}parseBigIntLiteral(Z){let Q;try{Q=BigInt(Z)}catch(H){Q=null}let Y=this.estreeParseLiteral(Q);return Y.bigint=String(Y.value||Z),Y}parseDecimalLiteral(Z){let Y=this.estreeParseLiteral(null);return Y.decimal=String(Y.value||Z),Y}estreeParseLiteral(Z){return this.parseLiteral(Z,"Literal")}parseStringLiteral(Z){return this.estreeParseLiteral(Z)}parseNumericLiteral(Z){return this.estreeParseLiteral(Z)}parseNullLiteral(){return this.estreeParseLiteral(null)}parseBooleanLiteral(Z){return this.estreeParseLiteral(Z)}estreeParseChainExpression(Z,Q){let Y=this.startNodeAtNode(Z);return Y.expression=Z,this.finishNodeAt(Y,"ChainExpression",Q)}directiveToStmt(Z){let Q=Z.value;delete Z.value,this.castNodeTo(Q,"Literal"),Q.raw=Q.extra.raw,Q.value=Q.extra.expressionValue;let Y=this.castNodeTo(Z,"ExpressionStatement");return Y.expression=Q,Y.directive=Q.extra.rawValue,delete Q.extra,Y}fillOptionalPropertiesForTSESLint(Z){}cloneEstreeStringLiteral(Z){let{start:Q,end:Y,loc:H,range:G,raw:z,value:W}=Z,V=Object.create(Z.constructor.prototype);return V.type="Literal",V.start=Q,V.end=Y,V.loc=H,V.range=G,V.raw=z,V.value=W,V}initFunction(Z,Q){super.initFunction(Z,Q),Z.expression=!1}checkDeclaration(Z){if(Z!=null&&this.isObjectProperty(Z))this.checkDeclaration(Z.value);else super.checkDeclaration(Z)}getObjectOrClassMethodParams(Z){return Z.value.params}isValidDirective(Z){var Q;return Z.type==="ExpressionStatement"&&Z.expression.type==="Literal"&&typeof Z.expression.value==="string"&&!((Q=Z.expression.extra)!=null&&Q.parenthesized)}parseBlockBody(Z,Q,Y,H,G){super.parseBlockBody(Z,Q,Y,H,G);let z=Z.directives.map((W)=>this.directiveToStmt(W));Z.body=z.concat(Z.body),delete Z.directives}parsePrivateName(){let Z=super.parsePrivateName();if(!this.getPluginOption("estree","classFeatures"))return Z;return this.convertPrivateNameToPrivateIdentifier(Z)}convertPrivateNameToPrivateIdentifier(Z){let Q=super.getPrivateNameSV(Z);return Z=Z,delete Z.id,Z.name=Q,this.castNodeTo(Z,"PrivateIdentifier")}isPrivateName(Z){if(!this.getPluginOption("estree","classFeatures"))return super.isPrivateName(Z);return Z.type==="PrivateIdentifier"}getPrivateNameSV(Z){if(!this.getPluginOption("estree","classFeatures"))return super.getPrivateNameSV(Z);return Z.name}parseLiteral(Z,Q){let Y=super.parseLiteral(Z,Q);return Y.raw=Y.extra.raw,delete Y.extra,Y}parseFunctionBody(Z,Q,Y=!1){super.parseFunctionBody(Z,Q,Y),Z.expression=Z.body.type!=="BlockStatement"}parseMethod(Z,Q,Y,H,G,z,W=!1){let V=this.startNode();V.kind=Z.kind,V=super.parseMethod(V,Q,Y,H,G,z,W),delete V.kind;let{typeParameters:U}=Z;if(U)delete Z.typeParameters,V.typeParameters=U,this.resetStartLocationFromNode(V,U);let $=this.castNodeTo(V,"FunctionExpression");if(Z.value=$,z==="ClassPrivateMethod")Z.computed=!1;if(z==="ObjectMethod"){if(Z.kind==="method")Z.kind="init";return Z.shorthand=!1,this.finishNode(Z,"Property")}else return this.finishNode(Z,"MethodDefinition")}nameIsConstructor(Z){if(Z.type==="Literal")return Z.value==="constructor";return super.nameIsConstructor(Z)}parseClassProperty(...Z){let Q=super.parseClassProperty(...Z);if(!this.getPluginOption("estree","classFeatures"))return Q;return this.castNodeTo(Q,"PropertyDefinition"),Q}parseClassPrivateProperty(...Z){let Q=super.parseClassPrivateProperty(...Z);if(!this.getPluginOption("estree","classFeatures"))return Q;return this.castNodeTo(Q,"PropertyDefinition"),Q.computed=!1,Q}parseClassAccessorProperty(Z){let Q=super.parseClassAccessorProperty(Z);if(!this.getPluginOption("estree","classFeatures"))return Q;if(Q.abstract&&this.hasPlugin("typescript"))delete Q.abstract,this.castNodeTo(Q,"TSAbstractAccessorProperty");else this.castNodeTo(Q,"AccessorProperty");return Q}parseObjectProperty(Z,Q,Y,H){let G=super.parseObjectProperty(Z,Q,Y,H);if(G)G.kind="init",this.castNodeTo(G,"Property");return G}finishObjectProperty(Z){return Z.kind="init",this.finishNode(Z,"Property")}isValidLVal(Z,Q,Y){return Z==="Property"?"value":super.isValidLVal(Z,Q,Y)}isAssignable(Z,Q){if(Z!=null&&this.isObjectProperty(Z))return this.isAssignable(Z.value,Q);return super.isAssignable(Z,Q)}toAssignable(Z,Q=!1){if(Z!=null&&this.isObjectProperty(Z)){let{key:Y,value:H}=Z;if(this.isPrivateName(Y))this.classScope.usePrivateName(this.getPrivateNameSV(Y),Y.loc.start);this.toAssignable(H,Q)}else super.toAssignable(Z,Q)}toAssignableObjectExpressionProp(Z,Q,Y){if(Z.type==="Property"&&(Z.kind==="get"||Z.kind==="set"))this.raise(M.PatternHasAccessor,Z.key);else if(Z.type==="Property"&&Z.method)this.raise(M.PatternHasMethod,Z.key);else super.toAssignableObjectExpressionProp(Z,Q,Y)}finishCallExpression(Z,Q){let Y=super.finishCallExpression(Z,Q);if(Y.callee.type==="Import"){var H;this.castNodeTo(Y,"ImportExpression"),Y.source=Y.arguments[0],Y.options=(H=Y.arguments[1])!=null?H:null;{var G;Y.attributes=(G=Y.arguments[1])!=null?G:null}delete Y.arguments,delete Y.callee}else if(Y.type==="OptionalCallExpression")this.castNodeTo(Y,"CallExpression");else Y.optional=!1;return Y}toReferencedArguments(Z){if(Z.type==="ImportExpression")return;super.toReferencedArguments(Z)}parseExport(Z,Q){let Y=this.state.lastTokStartLoc,H=super.parseExport(Z,Q);switch(H.type){case"ExportAllDeclaration":H.exported=null;break;case"ExportNamedDeclaration":if(H.specifiers.length===1&&H.specifiers[0].type==="ExportNamespaceSpecifier")this.castNodeTo(H,"ExportAllDeclaration"),H.exported=H.specifiers[0].exported,delete H.specifiers;case"ExportDefaultDeclaration":{var G;let{declaration:z}=H;if((z==null?void 0:z.type)==="ClassDeclaration"&&((G=z.decorators)==null?void 0:G.length)>0&&z.start===H.start)this.resetStartLocation(H,Y)}break}return H}stopParseSubscript(Z,Q){let Y=super.stopParseSubscript(Z,Q);if(Q.optionalChainMember)return this.estreeParseChainExpression(Y,Z.loc.end);return Y}parseMember(Z,Q,Y,H,G){let z=super.parseMember(Z,Q,Y,H,G);if(z.type==="OptionalMemberExpression")this.castNodeTo(z,"MemberExpression");else z.optional=!1;return z}isOptionalMemberExpression(Z){if(Z.type==="ChainExpression")return Z.expression.type==="MemberExpression";return super.isOptionalMemberExpression(Z)}hasPropertyAsPrivateName(Z){if(Z.type==="ChainExpression")Z=Z.expression;return super.hasPropertyAsPrivateName(Z)}isObjectProperty(Z){return Z.type==="Property"&&Z.kind==="init"&&!Z.method}isObjectMethod(Z){return Z.type==="Property"&&(Z.method||Z.kind==="get"||Z.kind==="set")}castNodeTo(Z,Q){let Y=super.castNodeTo(Z,Q);return this.fillOptionalPropertiesForTSESLint(Y),Y}cloneIdentifier(Z){let Q=super.cloneIdentifier(Z);return this.fillOptionalPropertiesForTSESLint(Q),Q}cloneStringLiteral(Z){if(Z.type==="Literal")return this.cloneEstreeStringLiteral(Z);return super.cloneStringLiteral(Z)}finishNodeAt(Z,Q,Y){return F9(super.finishNodeAt(Z,Q,Y))}finishNode(Z,Q){let Y=super.finishNode(Z,Q);return this.fillOptionalPropertiesForTSESLint(Y),Y}resetStartLocation(Z,Q){super.resetStartLocation(Z,Q),F9(Z)}resetEndLocation(Z,Q=this.state.lastTokEndLoc){super.resetEndLocation(Z,Q),F9(Z)}};class uJ{constructor(J,X){this.token=void 0,this.preserveSpace=void 0,this.token=J,this.preserveSpace=!!X}}var j1={brace:new uJ("{"),j_oTag:new uJ("<tag"),j_cTag:new uJ("</tag"),j_expr:new uJ("<tag>...</tag>",!0)};j1.template=new uJ("`",!0);var Y1=!0,y=!0,k2=!0,j9=!0,o0=!0,cV=!0;class x2{constructor(J,X={}){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=J,this.keyword=X.keyword,this.beforeExpr=!!X.beforeExpr,this.startsExpr=!!X.startsExpr,this.rightAssociative=!!X.rightAssociative,this.isLoop=!!X.isLoop,this.isAssign=!!X.isAssign,this.prefix=!!X.prefix,this.postfix=!!X.postfix,this.binop=X.binop!=null?X.binop:null,this.updateContext=null}}var y2=new Map;function B1(J,X={}){X.keyword=J;let Z=s(J,X);return y2.set(J,Z),Z}function d1(J,X){return s(J,{beforeExpr:Y1,binop:X})}var C9=-1,c0=[],u2=[],m2=[],c2=[],l2=[],i2=[];function s(J,X={}){var Z,Q,Y,H;return++C9,u2.push(J),m2.push((Z=X.binop)!=null?Z:-1),c2.push((Q=X.beforeExpr)!=null?Q:!1),l2.push((Y=X.startsExpr)!=null?Y:!1),i2.push((H=X.prefix)!=null?H:!1),c0.push(new x2(J,X)),C9}function G1(J,X={}){var Z,Q,Y,H;return++C9,y2.set(J,C9),u2.push(J),m2.push((Z=X.binop)!=null?Z:-1),c2.push((Q=X.beforeExpr)!=null?Q:!1),l2.push((Y=X.startsExpr)!=null?Y:!1),i2.push((H=X.prefix)!=null?H:!1),c0.push(new x2("name",X)),C9}var lV={bracketL:s("[",{beforeExpr:Y1,startsExpr:y}),bracketHashL:s("#[",{beforeExpr:Y1,startsExpr:y}),bracketBarL:s("[|",{beforeExpr:Y1,startsExpr:y}),bracketR:s("]"),bracketBarR:s("|]"),braceL:s("{",{beforeExpr:Y1,startsExpr:y}),braceBarL:s("{|",{beforeExpr:Y1,startsExpr:y}),braceHashL:s("#{",{beforeExpr:Y1,startsExpr:y}),braceR:s("}"),braceBarR:s("|}"),parenL:s("(",{beforeExpr:Y1,startsExpr:y}),parenR:s(")"),comma:s(",",{beforeExpr:Y1}),semi:s(";",{beforeExpr:Y1}),colon:s(":",{beforeExpr:Y1}),doubleColon:s("::",{beforeExpr:Y1}),dot:s("."),question:s("?",{beforeExpr:Y1}),questionDot:s("?."),arrow:s("=>",{beforeExpr:Y1}),template:s("template"),ellipsis:s("...",{beforeExpr:Y1}),backQuote:s("`",{startsExpr:y}),dollarBraceL:s("${",{beforeExpr:Y1,startsExpr:y}),templateTail:s("...`",{startsExpr:y}),templateNonTail:s("...${",{beforeExpr:Y1,startsExpr:y}),at:s("@"),hash:s("#",{startsExpr:y}),interpreterDirective:s("#!..."),eq:s("=",{beforeExpr:Y1,isAssign:j9}),assign:s("_=",{beforeExpr:Y1,isAssign:j9}),slashAssign:s("_=",{beforeExpr:Y1,isAssign:j9}),xorAssign:s("_=",{beforeExpr:Y1,isAssign:j9}),moduloAssign:s("_=",{beforeExpr:Y1,isAssign:j9}),incDec:s("++/--",{prefix:o0,postfix:cV,startsExpr:y}),bang:s("!",{beforeExpr:Y1,prefix:o0,startsExpr:y}),tilde:s("~",{beforeExpr:Y1,prefix:o0,startsExpr:y}),doubleCaret:s("^^",{startsExpr:y}),doubleAt:s("@@",{startsExpr:y}),pipeline:d1("|>",0),nullishCoalescing:d1("??",1),logicalOR:d1("||",1),logicalAND:d1("&&",2),bitwiseOR:d1("|",3),bitwiseXOR:d1("^",4),bitwiseAND:d1("&",5),equality:d1("==/!=/===/!==",6),lt:d1("</>/<=/>=",7),gt:d1("</>/<=/>=",7),relational:d1("</>/<=/>=",7),bitShift:d1("<</>>/>>>",8),bitShiftL:d1("<</>>/>>>",8),bitShiftR:d1("<</>>/>>>",8),plusMin:s("+/-",{beforeExpr:Y1,binop:9,prefix:o0,startsExpr:y}),modulo:s("%",{binop:10,startsExpr:y}),star:s("*",{binop:10}),slash:d1("/",10),exponent:s("**",{beforeExpr:Y1,binop:11,rightAssociative:!0}),_in:B1("in",{beforeExpr:Y1,binop:7}),_instanceof:B1("instanceof",{beforeExpr:Y1,binop:7}),_break:B1("break"),_case:B1("case",{beforeExpr:Y1}),_catch:B1("catch"),_continue:B1("continue"),_debugger:B1("debugger"),_default:B1("default",{beforeExpr:Y1}),_else:B1("else",{beforeExpr:Y1}),_finally:B1("finally"),_function:B1("function",{startsExpr:y}),_if:B1("if"),_return:B1("return",{beforeExpr:Y1}),_switch:B1("switch"),_throw:B1("throw",{beforeExpr:Y1,prefix:o0,startsExpr:y}),_try:B1("try"),_var:B1("var"),_const:B1("const"),_with:B1("with"),_new:B1("new",{beforeExpr:Y1,startsExpr:y}),_this:B1("this",{startsExpr:y}),_super:B1("super",{startsExpr:y}),_class:B1("class",{startsExpr:y}),_extends:B1("extends",{beforeExpr:Y1}),_export:B1("export"),_import:B1("import",{startsExpr:y}),_null:B1("null",{startsExpr:y}),_true:B1("true",{startsExpr:y}),_false:B1("false",{startsExpr:y}),_typeof:B1("typeof",{beforeExpr:Y1,prefix:o0,startsExpr:y}),_void:B1("void",{beforeExpr:Y1,prefix:o0,startsExpr:y}),_delete:B1("delete",{beforeExpr:Y1,prefix:o0,startsExpr:y}),_do:B1("do",{isLoop:k2,beforeExpr:Y1}),_for:B1("for",{isLoop:k2}),_while:B1("while",{isLoop:k2}),_as:G1("as",{startsExpr:y}),_assert:G1("assert",{startsExpr:y}),_async:G1("async",{startsExpr:y}),_await:G1("await",{startsExpr:y}),_defer:G1("defer",{startsExpr:y}),_from:G1("from",{startsExpr:y}),_get:G1("get",{startsExpr:y}),_let:G1("let",{startsExpr:y}),_meta:G1("meta",{startsExpr:y}),_of:G1("of",{startsExpr:y}),_sent:G1("sent",{startsExpr:y}),_set:G1("set",{startsExpr:y}),_source:G1("source",{startsExpr:y}),_static:G1("static",{startsExpr:y}),_using:G1("using",{startsExpr:y}),_yield:G1("yield",{startsExpr:y}),_asserts:G1("asserts",{startsExpr:y}),_checks:G1("checks",{startsExpr:y}),_exports:G1("exports",{startsExpr:y}),_global:G1("global",{startsExpr:y}),_implements:G1("implements",{startsExpr:y}),_intrinsic:G1("intrinsic",{startsExpr:y}),_infer:G1("infer",{startsExpr:y}),_is:G1("is",{startsExpr:y}),_mixins:G1("mixins",{startsExpr:y}),_proto:G1("proto",{startsExpr:y}),_require:G1("require",{startsExpr:y}),_satisfies:G1("satisfies",{startsExpr:y}),_keyof:G1("keyof",{startsExpr:y}),_readonly:G1("readonly",{startsExpr:y}),_unique:G1("unique",{startsExpr:y}),_abstract:G1("abstract",{startsExpr:y}),_declare:G1("declare",{startsExpr:y}),_enum:G1("enum",{startsExpr:y}),_module:G1("module",{startsExpr:y}),_namespace:G1("namespace",{startsExpr:y}),_interface:G1("interface",{startsExpr:y}),_type:G1("type",{startsExpr:y}),_opaque:G1("opaque",{startsExpr:y}),name:s("name",{startsExpr:y}),placeholder:s("%%",{startsExpr:y}),string:s("string",{startsExpr:y}),num:s("num",{startsExpr:y}),bigint:s("bigint",{startsExpr:y}),decimal:s("decimal",{startsExpr:y}),regexp:s("regexp",{startsExpr:y}),privateName:s("#name",{startsExpr:y}),eof:s("eof"),jsxName:s("jsxName"),jsxText:s("jsxText",{beforeExpr:Y1}),jsxTagStart:s("jsxTagStart",{startsExpr:y}),jsxTagEnd:s("jsxTagEnd")};function O1(J){return J>=93&&J<=133}function iV(J){return J<=92}function M0(J){return J>=58&&J<=133}function X4(J){return J>=58&&J<=137}function pV(J){return c2[J]}function O9(J){return l2[J]}function rV(J){return J>=29&&J<=33}function i8(J){return J>=129&&J<=131}function dV(J){return J>=90&&J<=92}function p2(J){return J>=58&&J<=92}function aV(J){return J>=39&&J<=59}function sV(J){return J===34}function tV(J){return i2[J]}function nV(J){return J>=121&&J<=123}function oV(J){return J>=124&&J<=130}function XJ(J){return u2[J]}function qX(J){return m2[J]}function eV(J){return J===57}function jX(J){return J>=24&&J<=25}function u0(J){return c0[J]}c0[8].updateContext=(J)=>{J.pop()},c0[5].updateContext=c0[7].updateContext=c0[23].updateContext=(J)=>{J.push(j1.brace)},c0[22].updateContext=(J)=>{if(J[J.length-1]===j1.template)J.pop();else J.push(j1.template)},c0[143].updateContext=(J)=>{J.push(j1.j_expr,j1.j_oTag)};var r2="\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C8A\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CD\uA7D0\uA7D1\uA7D3\uA7D5-\uA7DC\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC",Z4="\xB7\u0300-\u036F\u0387\u0483-\u0487\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u0669\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u06F0-\u06F9\u0711\u0730-\u074A\u07A6-\u07B0\u07C0-\u07C9\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u0897-\u089F\u08CA-\u08E1\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0966-\u096F\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u09E6-\u09EF\u09FE\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A66-\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0AE6-\u0AEF\u0AFA-\u0AFF\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B55-\u0B57\u0B62\u0B63\u0B66-\u0B6F\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0BE6-\u0BEF\u0C00-\u0C04\u0C3C\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C66-\u0C6F\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0CE6-\u0CEF\u0CF3\u0D00-\u0D03\u0D3B\u0D3C\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D66-\u0D6F\u0D81-\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0E50-\u0E59\u0EB1\u0EB4-\u0EBC\u0EC8-\u0ECE\u0ED0-\u0ED9\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1040-\u1049\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F-\u109D\u135D-\u135F\u1369-\u1371\u1712-\u1715\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u17E0-\u17E9\u180B-\u180D\u180F-\u1819\u18A9\u1920-\u192B\u1930-\u193B\u1946-\u194F\u19D0-\u19DA\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AB0-\u1ABD\u1ABF-\u1ACE\u1B00-\u1B04\u1B34-\u1B44\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BB0-\u1BB9\u1BE6-\u1BF3\u1C24-\u1C37\u1C40-\u1C49\u1C50-\u1C59\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF4\u1CF7-\u1CF9\u1DC0-\u1DFF\u200C\u200D\u203F\u2040\u2054\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\u30FB\uA620-\uA629\uA66F\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA82C\uA880\uA881\uA8B4-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F1\uA8FF-\uA909\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9D0-\uA9D9\uA9E5\uA9F0-\uA9F9\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA50-\uAA59\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uABF0-\uABF9\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFF10-\uFF19\uFF3F\uFF65",JK=new RegExp("["+r2+"]"),XK=new RegExp("["+r2+Z4+"]");r2=Z4=null;var Q4=[0,11,2,25,2,18,2,1,2,14,3,13,35,122,70,52,268,28,4,48,48,31,14,29,6,37,11,29,3,35,5,7,2,4,43,157,19,35,5,35,5,39,9,51,13,10,2,14,2,6,2,1,2,10,2,14,2,6,2,1,4,51,13,310,10,21,11,7,25,5,2,41,2,8,70,5,3,0,2,43,2,1,4,0,3,22,11,22,10,30,66,18,2,1,11,21,11,25,71,55,7,1,65,0,16,3,2,2,2,28,43,28,4,28,36,7,2,27,28,53,11,21,11,18,14,17,111,72,56,50,14,50,14,35,39,27,10,22,251,41,7,1,17,2,60,28,11,0,9,21,43,17,47,20,28,22,13,52,58,1,3,0,14,44,33,24,27,35,30,0,3,0,9,34,4,0,13,47,15,3,22,0,2,0,36,17,2,24,20,1,64,6,2,0,2,3,2,14,2,9,8,46,39,7,3,1,3,21,2,6,2,1,2,4,4,0,19,0,13,4,31,9,2,0,3,0,2,37,2,0,26,0,2,0,45,52,19,3,21,2,31,47,21,1,2,0,185,46,42,3,37,47,21,0,60,42,14,0,72,26,38,6,186,43,117,63,32,7,3,0,3,7,2,1,2,23,16,0,2,0,95,7,3,38,17,0,2,0,29,0,11,39,8,0,22,0,12,45,20,0,19,72,200,32,32,8,2,36,18,0,50,29,113,6,2,1,2,37,22,0,26,5,2,1,2,31,15,0,328,18,16,0,2,12,2,33,125,0,80,921,103,110,18,195,2637,96,16,1071,18,5,26,3994,6,582,6842,29,1763,568,8,30,18,78,18,29,19,47,17,3,32,20,6,18,433,44,212,63,129,74,6,0,67,12,65,1,2,0,29,6135,9,1237,42,9,8936,3,2,6,2,1,2,290,16,0,30,2,3,0,15,3,9,395,2309,106,6,12,4,8,8,9,5991,84,2,70,2,1,3,0,3,1,3,3,2,11,2,0,2,6,2,64,2,3,3,7,2,6,2,27,2,3,2,4,2,0,4,6,2,339,3,24,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,7,1845,30,7,5,262,61,147,44,11,6,17,0,322,29,19,43,485,27,229,29,3,0,496,6,2,3,2,1,2,14,2,196,60,67,8,0,1205,3,2,26,2,1,2,0,3,0,2,9,2,3,2,0,2,0,7,0,5,0,2,0,2,0,2,2,2,1,2,0,3,0,2,0,2,0,2,0,2,0,2,1,2,0,3,3,2,6,2,3,2,3,2,0,2,9,2,16,6,2,2,4,2,16,4421,42719,33,4153,7,221,3,5761,15,7472,16,621,2467,541,1507,4938,6,4191],ZK=[509,0,227,0,150,4,294,9,1368,2,2,1,6,3,41,2,5,0,166,1,574,3,9,9,7,9,32,4,318,1,80,3,71,10,50,3,123,2,54,14,32,10,3,1,11,3,46,10,8,0,46,9,7,2,37,13,2,9,6,1,45,0,13,2,49,13,9,3,2,11,83,11,7,0,3,0,158,11,6,9,7,3,56,1,2,6,3,1,3,2,10,0,11,1,3,6,4,4,68,8,2,0,3,0,2,3,2,4,2,0,15,1,83,17,10,9,5,0,82,19,13,9,214,6,3,8,28,1,83,16,16,9,82,12,9,9,7,19,58,14,5,9,243,14,166,9,71,5,2,1,3,3,2,0,2,1,13,9,120,6,3,6,4,0,29,9,41,6,2,3,9,0,10,10,47,15,343,9,54,7,2,7,17,9,57,21,2,13,123,5,4,0,2,1,2,6,2,0,9,9,49,4,2,1,2,4,9,9,330,3,10,1,2,0,49,6,4,4,14,10,5350,0,7,14,11465,27,2343,9,87,9,39,4,60,6,26,9,535,9,470,0,2,54,8,3,82,0,12,1,19628,1,4178,9,519,45,3,22,543,4,4,5,9,7,3,6,31,3,149,2,1418,49,513,54,5,49,9,0,15,0,23,4,2,14,1361,6,2,16,3,6,2,1,2,4,101,0,161,6,10,9,357,0,62,13,499,13,245,1,2,9,726,6,110,6,6,9,4759,9,787719,239];function g2(J,X){let Z=65536;for(let Q=0,Y=X.length;Q<Y;Q+=2){if(Z+=X[Q],Z>J)return!1;if(Z+=X[Q+1],Z>=J)return!0}return!1}function l0(J){if(J<65)return J===36;if(J<=90)return!0;if(J<97)return J===95;if(J<=122)return!0;if(J<=65535)return J>=170&&JK.test(String.fromCharCode(J));return g2(J,Q4)}function cJ(J){if(J<48)return J===36;if(J<58)return!0;if(J<65)return!1;if(J<=90)return!0;if(J<97)return J===95;if(J<=122)return!0;if(J<=65535)return J>=170&&XK.test(String.fromCharCode(J));return g2(J,Q4)||g2(J,ZK)}var d2={keyword:["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"],strict:["implements","interface","let","package","private","protected","public","static","yield"],strictBind:["eval","arguments"]},QK=new Set(d2.keyword),YK=new Set(d2.strict),HK=new Set(d2.strictBind);function Y4(J,X){return X&&J==="await"||J==="enum"}function H4(J,X){return Y4(J,X)||YK.has(J)}function G4(J){return HK.has(J)}function z4(J,X){return H4(J,X)||G4(J)}function GK(J){return QK.has(J)}function zK(J,X,Z){return J===64&&X===64&&l0(Z)}var WK=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"]);function VK(J){return WK.has(J)}class MX{constructor(J){this.flags=0,this.names=new Map,this.firstLexicalName="",this.flags=J}}class OX{constructor(J,X){this.parser=void 0,this.scopeStack=[],this.inModule=void 0,this.undefinedExports=new Map,this.parser=J,this.inModule=X}get inTopLevel(){return(this.currentScope().flags&1)>0}get inFunction(){return(this.currentVarScopeFlags()&2)>0}get allowSuper(){return(this.currentThisScopeFlags()&16)>0}get allowDirectSuper(){return(this.currentThisScopeFlags()&32)>0}get allowNewTarget(){return(this.currentThisScopeFlags()&512)>0}get inClass(){return(this.currentThisScopeFlags()&64)>0}get inClassAndNotInNonArrowFunction(){let J=this.currentThisScopeFlags();return(J&64)>0&&(J&2)===0}get inStaticBlock(){for(let J=this.scopeStack.length-1;;J--){let{flags:X}=this.scopeStack[J];if(X&128)return!0;if(X&1731)return!1}}get inNonArrowFunction(){return(this.currentThisScopeFlags()&2)>0}get inBareCaseStatement(){return(this.currentScope().flags&256)>0}get treatFunctionsAsVar(){return this.treatFunctionsAsVarInScope(this.currentScope())}createScope(J){return new MX(J)}enter(J){this.scopeStack.push(this.createScope(J))}exit(){return this.scopeStack.pop().flags}treatFunctionsAsVarInScope(J){return!!(J.flags&130||!this.parser.inModule&&J.flags&1)}declareName(J,X,Z){let Q=this.currentScope();if(X&8||X&16){this.checkRedeclarationInScope(Q,J,X,Z);let Y=Q.names.get(J)||0;if(X&16)Y=Y|4;else{if(!Q.firstLexicalName)Q.firstLexicalName=J;Y=Y|2}if(Q.names.set(J,Y),X&8)this.maybeExportDefined(Q,J)}else if(X&4){for(let Y=this.scopeStack.length-1;Y>=0;--Y)if(Q=this.scopeStack[Y],this.checkRedeclarationInScope(Q,J,X,Z),Q.names.set(J,(Q.names.get(J)||0)|1),this.maybeExportDefined(Q,J),Q.flags&1667)break}if(this.parser.inModule&&Q.flags&1)this.undefinedExports.delete(J)}maybeExportDefined(J,X){if(this.parser.inModule&&J.flags&1)this.undefinedExports.delete(X)}checkRedeclarationInScope(J,X,Z,Q){if(this.isRedeclaredInScope(J,X,Z))this.parser.raise(M.VarRedeclaration,Q,{identifierName:X})}isRedeclaredInScope(J,X,Z){if(!(Z&1))return!1;if(Z&8)return J.names.has(X);let Q=J.names.get(X);if(Z&16)return(Q&2)>0||!this.treatFunctionsAsVarInScope(J)&&(Q&1)>0;return(Q&2)>0&&!(J.flags&8&&J.firstLexicalName===X)||!this.treatFunctionsAsVarInScope(J)&&(Q&4)>0}checkLocalExport(J){let{name:X}=J;if(!this.scopeStack[0].names.has(X))this.undefinedExports.set(X,J.loc.start)}currentScope(){return this.scopeStack[this.scopeStack.length-1]}currentVarScopeFlags(){for(let J=this.scopeStack.length-1;;J--){let{flags:X}=this.scopeStack[J];if(X&1667)return X}}currentThisScopeFlags(){for(let J=this.scopeStack.length-1;;J--){let{flags:X}=this.scopeStack[J];if(X&1731&&!(X&4))return X}}}class W4 extends MX{constructor(...J){super(...J);this.declareFunctions=new Set}}class V4 extends OX{createScope(J){return new W4(J)}declareName(J,X,Z){let Q=this.currentScope();if(X&2048){this.checkRedeclarationInScope(Q,J,X,Z),this.maybeExportDefined(Q,J),Q.declareFunctions.add(J);return}super.declareName(J,X,Z)}isRedeclaredInScope(J,X,Z){if(super.isRedeclaredInScope(J,X,Z))return!0;if(Z&2048&&!J.declareFunctions.has(X)){let Q=J.names.get(X);return(Q&4)>0||(Q&2)>0}return!1}checkLocalExport(J){if(!this.scopeStack[0].declareFunctions.has(J.name))super.checkLocalExport(J)}}var KK=new Set(["_","any","bool","boolean","empty","extends","false","interface","mixed","null","number","static","string","true","typeof","void"]),n=T0`flow`({AmbiguousConditionalArrow:"Ambiguous expression: wrap the arrow functions in parentheses to disambiguate.",AmbiguousDeclareModuleKind:"Found both `declare module.exports` and `declare export` in the same module. Modules can only have 1 since they are either an ES module or they are a CommonJS module.",AssignReservedType:({reservedType:J})=>`Cannot overwrite reserved type ${J}.`,DeclareClassElement:"The `declare` modifier can only appear on class fields.",DeclareClassFieldInitializer:"Initializers are not allowed in fields with the `declare` modifier.",DuplicateDeclareModuleExports:"Duplicate `declare module.exports` statement.",EnumBooleanMemberNotInitialized:({memberName:J,enumName:X})=>`Boolean enum members need to be initialized. Use either \`${J} = true,\` or \`${J} = false,\` in enum \`${X}\`.`,EnumDuplicateMemberName:({memberName:J,enumName:X})=>`Enum member names need to be unique, but the name \`${J}\` has already been used before in enum \`${X}\`.`,EnumInconsistentMemberValues:({enumName:J})=>`Enum \`${J}\` has inconsistent member initializers. Either use no initializers, or consistently use literals (either booleans, numbers, or strings) for all member initializers.`,EnumInvalidExplicitType:({invalidEnumType:J,enumName:X})=>`Enum type \`${J}\` is not valid. Use one of \`boolean\`, \`number\`, \`string\`, or \`symbol\` in enum \`${X}\`.`,EnumInvalidExplicitTypeUnknownSupplied:({enumName:J})=>`Supplied enum type is not valid. Use one of \`boolean\`, \`number\`, \`string\`, or \`symbol\` in enum \`${J}\`.`,EnumInvalidMemberInitializerPrimaryType:({enumName:J,memberName:X,explicitType:Z})=>`Enum \`${J}\` has type \`${Z}\`, so the initializer of \`${X}\` needs to be a ${Z} literal.`,EnumInvalidMemberInitializerSymbolType:({enumName:J,memberName:X})=>`Symbol enum members cannot be initialized. Use \`${X},\` in enum \`${J}\`.`,EnumInvalidMemberInitializerUnknownType:({enumName:J,memberName:X})=>`The enum member initializer for \`${X}\` needs to be a literal (either a boolean, number, or string) in enum \`${J}\`.`,EnumInvalidMemberName:({enumName:J,memberName:X,suggestion:Z})=>`Enum member names cannot start with lowercase 'a' through 'z'. Instead of using \`${X}\`, consider using \`${Z}\`, in enum \`${J}\`.`,EnumNumberMemberNotInitialized:({enumName:J,memberName:X})=>`Number enum members need to be initialized, e.g. \`${X} = 1\` in enum \`${J}\`.`,EnumStringMemberInconsistentlyInitialized:({enumName:J})=>`String enum members need to consistently either all use initializers, or use no initializers, in enum \`${J}\`.`,GetterMayNotHaveThisParam:"A getter cannot have a `this` parameter.",ImportReflectionHasImportType:"An `import module` declaration can not use `type` or `typeof` keyword.",ImportTypeShorthandOnlyInPureImport:"The `type` and `typeof` keywords on named imports can only be used on regular `import` statements. It cannot be used with `import type` or `import typeof` statements.",InexactInsideExact:"Explicit inexact syntax cannot appear inside an explicit exact object type.",InexactInsideNonObject:"Explicit inexact syntax cannot appear in class or interface definitions.",InexactVariance:"Explicit inexact syntax cannot have variance.",InvalidNonTypeImportInDeclareModule:"Imports within a `declare module` body must always be `import type` or `import typeof`.",MissingTypeParamDefault:"Type parameter declaration needs a default, since a preceding type parameter declaration has a default.",NestedDeclareModule:"`declare module` cannot be used inside another `declare module`.",NestedFlowComment:"Cannot have a flow comment inside another flow comment.",PatternIsOptional:Object.assign({message:"A binding pattern parameter cannot be optional in an implementation signature."},{reasonCode:"OptionalBindingPattern"}),SetterMayNotHaveThisParam:"A setter cannot have a `this` parameter.",SpreadVariance:"Spread properties cannot have variance.",ThisParamAnnotationRequired:"A type annotation is required for the `this` parameter.",ThisParamBannedInConstructor:"Constructors cannot have a `this` parameter; constructors don't bind `this` like other functions.",ThisParamMayNotBeOptional:"The `this` parameter cannot be optional.",ThisParamMustBeFirst:"The `this` parameter must be the first function parameter.",ThisParamNoDefault:"The `this` parameter may not have a default value.",TypeBeforeInitializer:"Type annotations must come before default assignments, e.g. instead of `age = 25: number` use `age: number = 25`.",TypeCastInPattern:"The type cast expression is expected to be wrapped with parenthesis.",UnexpectedExplicitInexactInObject:"Explicit inexact syntax must appear at the end of an inexact object.",UnexpectedReservedType:({reservedType:J})=>`Unexpected reserved type ${J}.`,UnexpectedReservedUnderscore:"`_` is only allowed as a type argument to call or new.",UnexpectedSpaceBetweenModuloChecks:"Spaces between `%` and `checks` are not allowed here.",UnexpectedSpreadType:"Spread operator cannot appear in class or interface definitions.",UnexpectedSubtractionOperand:'Unexpected token, expected "number" or "bigint".',UnexpectedTokenAfterTypeParameter:"Expected an arrow function after this type parameter declaration.",UnexpectedTypeParameterBeforeAsyncArrowFunction:"Type parameters must come after the async keyword, e.g. instead of `<T> async () => {}`, use `async <T>() => {}`.",UnsupportedDeclareExportKind:({unsupportedExportKind:J,suggestion:X})=>`\`declare export ${J}\` is not supported. Use \`${X}\` instead.`,UnsupportedStatementInDeclareModule:"Only declares and type imports are allowed inside declare module.",UnterminatedFlowComment:"Unterminated flow-comment."});function UK(J){return J.type==="DeclareExportAllDeclaration"||J.type==="DeclareExportDeclaration"&&(!J.declaration||J.declaration.type!=="TypeAlias"&&J.declaration.type!=="InterfaceDeclaration")}function p8(J){return J.importKind==="type"||J.importKind==="typeof"}var BK={const:"declare export var",let:"declare export var",type:"export type",interface:"export interface"};function RK(J,X){let Z=[],Q=[];for(let Y=0;Y<J.length;Y++)(X(J[Y],Y,J)?Z:Q).push(J[Y]);return[Z,Q]}var $K=/\*?\s*@((?:no)?flow)\b/,qK=(J)=>class extends J{constructor(...Z){super(...Z);this.flowPragma=void 0}getScopeHandler(){return V4}shouldParseTypes(){return this.getPluginOption("flow","all")||this.flowPragma==="flow"}finishToken(Z,Q){if(Z!==134&&Z!==13&&Z!==28){if(this.flowPragma===void 0)this.flowPragma=null}super.finishToken(Z,Q)}addComment(Z){if(this.flowPragma===void 0){let Q=$K.exec(Z.value);if(!Q);else if(Q[1]==="flow")this.flowPragma="flow";else if(Q[1]==="noflow")this.flowPragma="noflow";else throw Error("Unexpected flow pragma")}super.addComment(Z)}flowParseTypeInitialiser(Z){let Q=this.state.inType;this.state.inType=!0,this.expect(Z||14);let Y=this.flowParseType();return this.state.inType=Q,Y}flowParsePredicate(){let Z=this.startNode(),Q=this.state.startLoc;if(this.next(),this.expectContextual(110),this.state.lastTokStartLoc.index>Q.index+1)this.raise(n.UnexpectedSpaceBetweenModuloChecks,Q);if(this.eat(10))return Z.value=super.parseExpression(),this.expect(11),this.finishNode(Z,"DeclaredPredicate");else return this.finishNode(Z,"InferredPredicate")}flowParseTypeAndPredicateInitialiser(){let Z=this.state.inType;this.state.inType=!0,this.expect(14);let Q=null,Y=null;if(this.match(54))this.state.inType=Z,Y=this.flowParsePredicate();else if(Q=this.flowParseType(),this.state.inType=Z,this.match(54))Y=this.flowParsePredicate();return[Q,Y]}flowParseDeclareClass(Z){return this.next(),this.flowParseInterfaceish(Z,!0),this.finishNode(Z,"DeclareClass")}flowParseDeclareFunction(Z){this.next();let Q=Z.id=this.parseIdentifier(),Y=this.startNode(),H=this.startNode();if(this.match(47))Y.typeParameters=this.flowParseTypeParameterDeclaration();else Y.typeParameters=null;this.expect(10);let G=this.flowParseFunctionTypeParams();return Y.params=G.params,Y.rest=G.rest,Y.this=G._this,this.expect(11),[Y.returnType,Z.predicate]=this.flowParseTypeAndPredicateInitialiser(),H.typeAnnotation=this.finishNode(Y,"FunctionTypeAnnotation"),Q.typeAnnotation=this.finishNode(H,"TypeAnnotation"),this.resetEndLocation(Q),this.semicolon(),this.scope.declareName(Z.id.name,2048,Z.id.loc.start),this.finishNode(Z,"DeclareFunction")}flowParseDeclare(Z,Q){if(this.match(80))return this.flowParseDeclareClass(Z);else if(this.match(68))return this.flowParseDeclareFunction(Z);else if(this.match(74))return this.flowParseDeclareVariable(Z);else if(this.eatContextual(127))if(this.match(16))return this.flowParseDeclareModuleExports(Z);else{if(Q)this.raise(n.NestedDeclareModule,this.state.lastTokStartLoc);return this.flowParseDeclareModule(Z)}else if(this.isContextual(130))return this.flowParseDeclareTypeAlias(Z);else if(this.isContextual(131))return this.flowParseDeclareOpaqueType(Z);else if(this.isContextual(129))return this.flowParseDeclareInterface(Z);else if(this.match(82))return this.flowParseDeclareExportDeclaration(Z,Q);else this.unexpected()}flowParseDeclareVariable(Z){return this.next(),Z.id=this.flowParseTypeAnnotatableIdentifier(!0),this.scope.declareName(Z.id.name,5,Z.id.loc.start),this.semicolon(),this.finishNode(Z,"DeclareVariable")}flowParseDeclareModule(Z){if(this.scope.enter(0),this.match(134))Z.id=super.parseExprAtom();else Z.id=this.parseIdentifier();let Q=Z.body=this.startNode(),Y=Q.body=[];this.expect(5);while(!this.match(8)){let z=this.startNode();if(this.match(83)){if(this.next(),!this.isContextual(130)&&!this.match(87))this.raise(n.InvalidNonTypeImportInDeclareModule,this.state.lastTokStartLoc);super.parseImport(z)}else this.expectContextual(125,n.UnsupportedStatementInDeclareModule),z=this.flowParseDeclare(z,!0);Y.push(z)}this.scope.exit(),this.expect(8),this.finishNode(Q,"BlockStatement");let H=null,G=!1;return Y.forEach((z)=>{if(UK(z)){if(H==="CommonJS")this.raise(n.AmbiguousDeclareModuleKind,z);H="ES"}else if(z.type==="DeclareModuleExports"){if(G)this.raise(n.DuplicateDeclareModuleExports,z);if(H==="ES")this.raise(n.AmbiguousDeclareModuleKind,z);H="CommonJS",G=!0}}),Z.kind=H||"CommonJS",this.finishNode(Z,"DeclareModule")}flowParseDeclareExportDeclaration(Z,Q){if(this.expect(82),this.eat(65)){if(this.match(68)||this.match(80))Z.declaration=this.flowParseDeclare(this.startNode());else Z.declaration=this.flowParseType(),this.semicolon();return Z.default=!0,this.finishNode(Z,"DeclareExportDeclaration")}else{if(this.match(75)||this.isLet()||(this.isContextual(130)||this.isContextual(129))&&!Q){let Y=this.state.value;throw this.raise(n.UnsupportedDeclareExportKind,this.state.startLoc,{unsupportedExportKind:Y,suggestion:BK[Y]})}if(this.match(74)||this.match(68)||this.match(80)||this.isContextual(131))return Z.declaration=this.flowParseDeclare(this.startNode()),Z.default=!1,this.finishNode(Z,"DeclareExportDeclaration");else if(this.match(55)||this.match(5)||this.isContextual(129)||this.isContextual(130)||this.isContextual(131))if(Z=this.parseExport(Z,null),Z.type==="ExportNamedDeclaration")return Z.default=!1,delete Z.exportKind,this.castNodeTo(Z,"DeclareExportDeclaration");else return this.castNodeTo(Z,"DeclareExportAllDeclaration")}this.unexpected()}flowParseDeclareModuleExports(Z){return this.next(),this.expectContextual(111),Z.typeAnnotation=this.flowParseTypeAnnotation(),this.semicolon(),this.finishNode(Z,"DeclareModuleExports")}flowParseDeclareTypeAlias(Z){this.next();let Q=this.flowParseTypeAlias(Z);return this.castNodeTo(Q,"DeclareTypeAlias"),Q}flowParseDeclareOpaqueType(Z){this.next();let Q=this.flowParseOpaqueType(Z,!0);return this.castNodeTo(Q,"DeclareOpaqueType"),Q}flowParseDeclareInterface(Z){return this.next(),this.flowParseInterfaceish(Z,!1),this.finishNode(Z,"DeclareInterface")}flowParseInterfaceish(Z,Q){if(Z.id=this.flowParseRestrictedIdentifier(!Q,!0),this.scope.declareName(Z.id.name,Q?17:8201,Z.id.loc.start),this.match(47))Z.typeParameters=this.flowParseTypeParameterDeclaration();else Z.typeParameters=null;if(Z.extends=[],this.eat(81))do Z.extends.push(this.flowParseInterfaceExtends());while(!Q&&this.eat(12));if(Q){if(Z.implements=[],Z.mixins=[],this.eatContextual(117))do Z.mixins.push(this.flowParseInterfaceExtends());while(this.eat(12));if(this.eatContextual(113))do Z.implements.push(this.flowParseInterfaceExtends());while(this.eat(12))}Z.body=this.flowParseObjectType({allowStatic:Q,allowExact:!1,allowSpread:!1,allowProto:Q,allowInexact:!1})}flowParseInterfaceExtends(){let Z=this.startNode();if(Z.id=this.flowParseQualifiedTypeIdentifier(),this.match(47))Z.typeParameters=this.flowParseTypeParameterInstantiation();else Z.typeParameters=null;return this.finishNode(Z,"InterfaceExtends")}flowParseInterface(Z){return this.flowParseInterfaceish(Z,!1),this.finishNode(Z,"InterfaceDeclaration")}checkNotUnderscore(Z){if(Z==="_")this.raise(n.UnexpectedReservedUnderscore,this.state.startLoc)}checkReservedType(Z,Q,Y){if(!KK.has(Z))return;this.raise(Y?n.AssignReservedType:n.UnexpectedReservedType,Q,{reservedType:Z})}flowParseRestrictedIdentifier(Z,Q){return this.checkReservedType(this.state.value,this.state.startLoc,Q),this.parseIdentifier(Z)}flowParseTypeAlias(Z){if(Z.id=this.flowParseRestrictedIdentifier(!1,!0),this.scope.declareName(Z.id.name,8201,Z.id.loc.start),this.match(47))Z.typeParameters=this.flowParseTypeParameterDeclaration();else Z.typeParameters=null;return Z.right=this.flowParseTypeInitialiser(29),this.semicolon(),this.finishNode(Z,"TypeAlias")}flowParseOpaqueType(Z,Q){if(this.expectContextual(130),Z.id=this.flowParseRestrictedIdentifier(!0,!0),this.scope.declareName(Z.id.name,8201,Z.id.loc.start),this.match(47))Z.typeParameters=this.flowParseTypeParameterDeclaration();else Z.typeParameters=null;if(Z.supertype=null,this.match(14))Z.supertype=this.flowParseTypeInitialiser(14);if(Z.impltype=null,!Q)Z.impltype=this.flowParseTypeInitialiser(29);return this.semicolon(),this.finishNode(Z,"OpaqueType")}flowParseTypeParameter(Z=!1){let Q=this.state.startLoc,Y=this.startNode(),H=this.flowParseVariance(),G=this.flowParseTypeAnnotatableIdentifier();if(Y.name=G.name,Y.variance=H,Y.bound=G.typeAnnotation,this.match(29))this.eat(29),Y.default=this.flowParseType();else if(Z)this.raise(n.MissingTypeParamDefault,Q);return this.finishNode(Y,"TypeParameter")}flowParseTypeParameterDeclaration(){let Z=this.state.inType,Q=this.startNode();if(Q.params=[],this.state.inType=!0,this.match(47)||this.match(143))this.next();else this.unexpected();let Y=!1;do{let H=this.flowParseTypeParameter(Y);if(Q.params.push(H),H.default)Y=!0;if(!this.match(48))this.expect(12)}while(!this.match(48));return this.expect(48),this.state.inType=Z,this.finishNode(Q,"TypeParameterDeclaration")}flowInTopLevelContext(Z){if(this.curContext()!==j1.brace){let Q=this.state.context;this.state.context=[Q[0]];try{return Z()}finally{this.state.context=Q}}else return Z()}flowParseTypeParameterInstantiationInExpression(){if(this.reScan_lt()!==47)return;return this.flowParseTypeParameterInstantiation()}flowParseTypeParameterInstantiation(){let Z=this.startNode(),Q=this.state.inType;if(this.state.inType=!0,Z.params=[],this.flowInTopLevelContext(()=>{this.expect(47);let Y=this.state.noAnonFunctionType;this.state.noAnonFunctionType=!1;while(!this.match(48))if(Z.params.push(this.flowParseType()),!this.match(48))this.expect(12);this.state.noAnonFunctionType=Y}),this.state.inType=Q,!this.state.inType&&this.curContext()===j1.brace)this.reScan_lt_gt();return this.expect(48),this.finishNode(Z,"TypeParameterInstantiation")}flowParseTypeParameterInstantiationCallOrNew(){if(this.reScan_lt()!==47)return;let Z=this.startNode(),Q=this.state.inType;Z.params=[],this.state.inType=!0,this.expect(47);while(!this.match(48))if(Z.params.push(this.flowParseTypeOrImplicitInstantiation()),!this.match(48))this.expect(12);return this.expect(48),this.state.inType=Q,this.finishNode(Z,"TypeParameterInstantiation")}flowParseInterfaceType(){let Z=this.startNode();if(this.expectContextual(129),Z.extends=[],this.eat(81))do Z.extends.push(this.flowParseInterfaceExtends());while(this.eat(12));return Z.body=this.flowParseObjectType({allowStatic:!1,allowExact:!1,allowSpread:!1,allowProto:!1,allowInexact:!1}),this.finishNode(Z,"InterfaceTypeAnnotation")}flowParseObjectPropertyKey(){return this.match(135)||this.match(134)?super.parseExprAtom():this.parseIdentifier(!0)}flowParseObjectTypeIndexer(Z,Q,Y){if(Z.static=Q,this.lookahead().type===14)Z.id=this.flowParseObjectPropertyKey(),Z.key=this.flowParseTypeInitialiser();else Z.id=null,Z.key=this.flowParseType();return this.expect(3),Z.value=this.flowParseTypeInitialiser(),Z.variance=Y,this.finishNode(Z,"ObjectTypeIndexer")}flowParseObjectTypeInternalSlot(Z,Q){if(Z.static=Q,Z.id=this.flowParseObjectPropertyKey(),this.expect(3),this.expect(3),this.match(47)||this.match(10))Z.method=!0,Z.optional=!1,Z.value=this.flowParseObjectTypeMethodish(this.startNodeAt(Z.loc.start));else{if(Z.method=!1,this.eat(17))Z.optional=!0;Z.value=this.flowParseTypeInitialiser()}return this.finishNode(Z,"ObjectTypeInternalSlot")}flowParseObjectTypeMethodish(Z){if(Z.params=[],Z.rest=null,Z.typeParameters=null,Z.this=null,this.match(47))Z.typeParameters=this.flowParseTypeParameterDeclaration();if(this.expect(10),this.match(78)){if(Z.this=this.flowParseFunctionTypeParam(!0),Z.this.name=null,!this.match(11))this.expect(12)}while(!this.match(11)&&!this.match(21))if(Z.params.push(this.flowParseFunctionTypeParam(!1)),!this.match(11))this.expect(12);if(this.eat(21))Z.rest=this.flowParseFunctionTypeParam(!1);return this.expect(11),Z.returnType=this.flowParseTypeInitialiser(),this.finishNode(Z,"FunctionTypeAnnotation")}flowParseObjectTypeCallProperty(Z,Q){let Y=this.startNode();return Z.static=Q,Z.value=this.flowParseObjectTypeMethodish(Y),this.finishNode(Z,"ObjectTypeCallProperty")}flowParseObjectType({allowStatic:Z,allowExact:Q,allowSpread:Y,allowProto:H,allowInexact:G}){let z=this.state.inType;this.state.inType=!0;let W=this.startNode();W.callProperties=[],W.properties=[],W.indexers=[],W.internalSlots=[];let V,U,$=!1;if(Q&&this.match(6))this.expect(6),V=9,U=!0;else this.expect(5),V=8,U=!1;W.exact=U;while(!this.match(V)){let C=!1,A=null,S=null,w=this.startNode();if(H&&this.isContextual(118)){let b=this.lookahead();if(b.type!==14&&b.type!==17)this.next(),A=this.state.startLoc,Z=!1}if(Z&&this.isContextual(106)){let b=this.lookahead();if(b.type!==14&&b.type!==17)this.next(),C=!0}let P=this.flowParseVariance();if(this.eat(0)){if(A!=null)this.unexpected(A);if(this.eat(0)){if(P)this.unexpected(P.loc.start);W.internalSlots.push(this.flowParseObjectTypeInternalSlot(w,C))}else W.indexers.push(this.flowParseObjectTypeIndexer(w,C,P))}else if(this.match(10)||this.match(47)){if(A!=null)this.unexpected(A);if(P)this.unexpected(P.loc.start);W.callProperties.push(this.flowParseObjectTypeCallProperty(w,C))}else{let b="init";if(this.isContextual(99)||this.isContextual(104)){let m=this.lookahead();if(X4(m.type))b=this.state.value,this.next()}let t=this.flowParseObjectTypeProperty(w,C,A,P,b,Y,G!=null?G:!U);if(t===null)$=!0,S=this.state.lastTokStartLoc;else W.properties.push(t)}if(this.flowObjectTypeSemicolon(),S&&!this.match(8)&&!this.match(9))this.raise(n.UnexpectedExplicitInexactInObject,S)}if(this.expect(V),Y)W.inexact=$;let j=this.finishNode(W,"ObjectTypeAnnotation");return this.state.inType=z,j}flowParseObjectTypeProperty(Z,Q,Y,H,G,z,W){if(this.eat(21)){if(this.match(12)||this.match(13)||this.match(8)||this.match(9)){if(!z)this.raise(n.InexactInsideNonObject,this.state.lastTokStartLoc);else if(!W)this.raise(n.InexactInsideExact,this.state.lastTokStartLoc);if(H)this.raise(n.InexactVariance,H);return null}if(!z)this.raise(n.UnexpectedSpreadType,this.state.lastTokStartLoc);if(Y!=null)this.unexpected(Y);if(H)this.raise(n.SpreadVariance,H);return Z.argument=this.flowParseType(),this.finishNode(Z,"ObjectTypeSpreadProperty")}else{Z.key=this.flowParseObjectPropertyKey(),Z.static=Q,Z.proto=Y!=null,Z.kind=G;let V=!1;if(this.match(47)||this.match(10)){if(Z.method=!0,Y!=null)this.unexpected(Y);if(H)this.unexpected(H.loc.start);if(Z.value=this.flowParseObjectTypeMethodish(this.startNodeAt(Z.loc.start)),G==="get"||G==="set")this.flowCheckGetterSetterParams(Z);if(!z&&Z.key.name==="constructor"&&Z.value.this)this.raise(n.ThisParamBannedInConstructor,Z.value.this)}else{if(G!=="init")this.unexpected();if(Z.method=!1,this.eat(17))V=!0;Z.value=this.flowParseTypeInitialiser(),Z.variance=H}return Z.optional=V,this.finishNode(Z,"ObjectTypeProperty")}}flowCheckGetterSetterParams(Z){let Q=Z.kind==="get"?0:1,Y=Z.value.params.length+(Z.value.rest?1:0);if(Z.value.this)this.raise(Z.kind==="get"?n.GetterMayNotHaveThisParam:n.SetterMayNotHaveThisParam,Z.value.this);if(Y!==Q)this.raise(Z.kind==="get"?M.BadGetterArity:M.BadSetterArity,Z);if(Z.kind==="set"&&Z.value.rest)this.raise(M.BadSetterRestParameter,Z)}flowObjectTypeSemicolon(){if(!this.eat(13)&&!this.eat(12)&&!this.match(8)&&!this.match(9))this.unexpected()}flowParseQualifiedTypeIdentifier(Z,Q){Z!=null||(Z=this.state.startLoc);let Y=Q||this.flowParseRestrictedIdentifier(!0);while(this.eat(16)){let H=this.startNodeAt(Z);H.qualification=Y,H.id=this.flowParseRestrictedIdentifier(!0),Y=this.finishNode(H,"QualifiedTypeIdentifier")}return Y}flowParseGenericType(Z,Q){let Y=this.startNodeAt(Z);if(Y.typeParameters=null,Y.id=this.flowParseQualifiedTypeIdentifier(Z,Q),this.match(47))Y.typeParameters=this.flowParseTypeParameterInstantiation();return this.finishNode(Y,"GenericTypeAnnotation")}flowParseTypeofType(){let Z=this.startNode();return this.expect(87),Z.argument=this.flowParsePrimaryType(),this.finishNode(Z,"TypeofTypeAnnotation")}flowParseTupleType(){let Z=this.startNode();Z.types=[],this.expect(0);while(this.state.pos<this.length&&!this.match(3)){if(Z.types.push(this.flowParseType()),this.match(3))break;this.expect(12)}return this.expect(3),this.finishNode(Z,"TupleTypeAnnotation")}flowParseFunctionTypeParam(Z){let Q=null,Y=!1,H=null,G=this.startNode(),z=this.lookahead(),W=this.state.type===78;if(z.type===14||z.type===17){if(W&&!Z)this.raise(n.ThisParamMustBeFirst,G);if(Q=this.parseIdentifier(W),this.eat(17)){if(Y=!0,W)this.raise(n.ThisParamMayNotBeOptional,G)}H=this.flowParseTypeInitialiser()}else H=this.flowParseType();return G.name=Q,G.optional=Y,G.typeAnnotation=H,this.finishNode(G,"FunctionTypeParam")}reinterpretTypeAsFunctionTypeParam(Z){let Q=this.startNodeAt(Z.loc.start);return Q.name=null,Q.optional=!1,Q.typeAnnotation=Z,this.finishNode(Q,"FunctionTypeParam")}flowParseFunctionTypeParams(Z=[]){let Q=null,Y=null;if(this.match(78)){if(Y=this.flowParseFunctionTypeParam(!0),Y.name=null,!this.match(11))this.expect(12)}while(!this.match(11)&&!this.match(21))if(Z.push(this.flowParseFunctionTypeParam(!1)),!this.match(11))this.expect(12);if(this.eat(21))Q=this.flowParseFunctionTypeParam(!1);return{params:Z,rest:Q,_this:Y}}flowIdentToTypeAnnotation(Z,Q,Y){switch(Y.name){case"any":return this.finishNode(Q,"AnyTypeAnnotation");case"bool":case"boolean":return this.finishNode(Q,"BooleanTypeAnnotation");case"mixed":return this.finishNode(Q,"MixedTypeAnnotation");case"empty":return this.finishNode(Q,"EmptyTypeAnnotation");case"number":return this.finishNode(Q,"NumberTypeAnnotation");case"string":return this.finishNode(Q,"StringTypeAnnotation");case"symbol":return this.finishNode(Q,"SymbolTypeAnnotation");default:return this.checkNotUnderscore(Y.name),this.flowParseGenericType(Z,Y)}}flowParsePrimaryType(){let Z=this.state.startLoc,Q=this.startNode(),Y,H,G=!1,z=this.state.noAnonFunctionType;switch(this.state.type){case 5:return this.flowParseObjectType({allowStatic:!1,allowExact:!1,allowSpread:!0,allowProto:!1,allowInexact:!0});case 6:return this.flowParseObjectType({allowStatic:!1,allowExact:!0,allowSpread:!0,allowProto:!1,allowInexact:!1});case 0:return this.state.noAnonFunctionType=!1,H=this.flowParseTupleType(),this.state.noAnonFunctionType=z,H;case 47:{let W=this.startNode();return W.typeParameters=this.flowParseTypeParameterDeclaration(),this.expect(10),Y=this.flowParseFunctionTypeParams(),W.params=Y.params,W.rest=Y.rest,W.this=Y._this,this.expect(11),this.expect(19),W.returnType=this.flowParseType(),this.finishNode(W,"FunctionTypeAnnotation")}case 10:{let W=this.startNode();if(this.next(),!this.match(11)&&!this.match(21))if(O1(this.state.type)||this.match(78)){let V=this.lookahead().type;G=V!==17&&V!==14}else G=!0;if(G)if(this.state.noAnonFunctionType=!1,H=this.flowParseType(),this.state.noAnonFunctionType=z,this.state.noAnonFunctionType||!(this.match(12)||this.match(11)&&this.lookahead().type===19))return this.expect(11),H;else this.eat(12);if(H)Y=this.flowParseFunctionTypeParams([this.reinterpretTypeAsFunctionTypeParam(H)]);else Y=this.flowParseFunctionTypeParams();return W.params=Y.params,W.rest=Y.rest,W.this=Y._this,this.expect(11),this.expect(19),W.returnType=this.flowParseType(),W.typeParameters=null,this.finishNode(W,"FunctionTypeAnnotation")}case 134:return this.parseLiteral(this.state.value,"StringLiteralTypeAnnotation");case 85:case 86:return Q.value=this.match(85),this.next(),this.finishNode(Q,"BooleanLiteralTypeAnnotation");case 53:if(this.state.value==="-"){if(this.next(),this.match(135))return this.parseLiteralAtNode(-this.state.value,"NumberLiteralTypeAnnotation",Q);if(this.match(136))return this.parseLiteralAtNode(-this.state.value,"BigIntLiteralTypeAnnotation",Q);throw this.raise(n.UnexpectedSubtractionOperand,this.state.startLoc)}this.unexpected();return;case 135:return this.parseLiteral(this.state.value,"NumberLiteralTypeAnnotation");case 136:return this.parseLiteral(this.state.value,"BigIntLiteralTypeAnnotation");case 88:return this.next(),this.finishNode(Q,"VoidTypeAnnotation");case 84:return this.next(),this.finishNode(Q,"NullLiteralTypeAnnotation");case 78:return this.next(),this.finishNode(Q,"ThisTypeAnnotation");case 55:return this.next(),this.finishNode(Q,"ExistsTypeAnnotation");case 87:return this.flowParseTypeofType();default:if(p2(this.state.type)){let W=XJ(this.state.type);return this.next(),super.createIdentifier(Q,W)}else if(O1(this.state.type)){if(this.isContextual(129))return this.flowParseInterfaceType();return this.flowIdentToTypeAnnotation(Z,Q,this.parseIdentifier())}}this.unexpected()}flowParsePostfixType(){let Z=this.state.startLoc,Q=this.flowParsePrimaryType(),Y=!1;while((this.match(0)||this.match(18))&&!this.canInsertSemicolon()){let H=this.startNodeAt(Z),G=this.eat(18);if(Y=Y||G,this.expect(0),!G&&this.match(3))H.elementType=Q,this.next(),Q=this.finishNode(H,"ArrayTypeAnnotation");else if(H.objectType=Q,H.indexType=this.flowParseType(),this.expect(3),Y)H.optional=G,Q=this.finishNode(H,"OptionalIndexedAccessType");else Q=this.finishNode(H,"IndexedAccessType")}return Q}flowParsePrefixType(){let Z=this.startNode();if(this.eat(17))return Z.typeAnnotation=this.flowParsePrefixType(),this.finishNode(Z,"NullableTypeAnnotation");else return this.flowParsePostfixType()}flowParseAnonFunctionWithoutParens(){let Z=this.flowParsePrefixType();if(!this.state.noAnonFunctionType&&this.eat(19)){let Q=this.startNodeAt(Z.loc.start);return Q.params=[this.reinterpretTypeAsFunctionTypeParam(Z)],Q.rest=null,Q.this=null,Q.returnType=this.flowParseType(),Q.typeParameters=null,this.finishNode(Q,"FunctionTypeAnnotation")}return Z}flowParseIntersectionType(){let Z=this.startNode();this.eat(45);let Q=this.flowParseAnonFunctionWithoutParens();Z.types=[Q];while(this.eat(45))Z.types.push(this.flowParseAnonFunctionWithoutParens());return Z.types.length===1?Q:this.finishNode(Z,"IntersectionTypeAnnotation")}flowParseUnionType(){let Z=this.startNode();this.eat(43);let Q=this.flowParseIntersectionType();Z.types=[Q];while(this.eat(43))Z.types.push(this.flowParseIntersectionType());return Z.types.length===1?Q:this.finishNode(Z,"UnionTypeAnnotation")}flowParseType(){let Z=this.state.inType;this.state.inType=!0;let Q=this.flowParseUnionType();return this.state.inType=Z,Q}flowParseTypeOrImplicitInstantiation(){if(this.state.type===132&&this.state.value==="_"){let Z=this.state.startLoc,Q=this.parseIdentifier();return this.flowParseGenericType(Z,Q)}else return this.flowParseType()}flowParseTypeAnnotation(){let Z=this.startNode();return Z.typeAnnotation=this.flowParseTypeInitialiser(),this.finishNode(Z,"TypeAnnotation")}flowParseTypeAnnotatableIdentifier(Z){let Q=Z?this.parseIdentifier():this.flowParseRestrictedIdentifier();if(this.match(14))Q.typeAnnotation=this.flowParseTypeAnnotation(),this.resetEndLocation(Q);return Q}typeCastToParameter(Z){return Z.expression.typeAnnotation=Z.typeAnnotation,this.resetEndLocation(Z.expression,Z.typeAnnotation.loc.end),Z.expression}flowParseVariance(){let Z=null;if(this.match(53)){if(Z=this.startNode(),this.state.value==="+")Z.kind="plus";else Z.kind="minus";return this.next(),this.finishNode(Z,"Variance")}return Z}parseFunctionBody(Z,Q,Y=!1){if(Q){this.forwardNoArrowParamsConversionAt(Z,()=>super.parseFunctionBody(Z,!0,Y));return}super.parseFunctionBody(Z,!1,Y)}parseFunctionBodyAndFinish(Z,Q,Y=!1){if(this.match(14)){let H=this.startNode();[H.typeAnnotation,Z.predicate]=this.flowParseTypeAndPredicateInitialiser(),Z.returnType=H.typeAnnotation?this.finishNode(H,"TypeAnnotation"):null}return super.parseFunctionBodyAndFinish(Z,Q,Y)}parseStatementLike(Z){if(this.state.strict&&this.isContextual(129)){let Y=this.lookahead();if(M0(Y.type)){let H=this.startNode();return this.next(),this.flowParseInterface(H)}}else if(this.isContextual(126)){let Y=this.startNode();return this.next(),this.flowParseEnumDeclaration(Y)}let Q=super.parseStatementLike(Z);if(this.flowPragma===void 0&&!this.isValidDirective(Q))this.flowPragma=null;return Q}parseExpressionStatement(Z,Q,Y){if(Q.type==="Identifier"){if(Q.name==="declare"){if(this.match(80)||O1(this.state.type)||this.match(68)||this.match(74)||this.match(82))return this.flowParseDeclare(Z)}else if(O1(this.state.type)){if(Q.name==="interface")return this.flowParseInterface(Z);else if(Q.name==="type")return this.flowParseTypeAlias(Z);else if(Q.name==="opaque")return this.flowParseOpaqueType(Z,!1)}}return super.parseExpressionStatement(Z,Q,Y)}shouldParseExportDeclaration(){let{type:Z}=this.state;if(Z===126||i8(Z))return!this.state.containsEsc;return super.shouldParseExportDeclaration()}isExportDefaultSpecifier(){let{type:Z}=this.state;if(Z===126||i8(Z))return this.state.containsEsc;return super.isExportDefaultSpecifier()}parseExportDefaultExpression(){if(this.isContextual(126)){let Z=this.startNode();return this.next(),this.flowParseEnumDeclaration(Z)}return super.parseExportDefaultExpression()}parseConditional(Z,Q,Y){if(!this.match(17))return Z;if(this.state.maybeInArrowParameters){let j=this.lookaheadCharCode();if(j===44||j===61||j===58||j===41)return this.setOptionalParametersError(Y),Z}this.expect(17);let H=this.state.clone(),G=this.state.noArrowAt,z=this.startNodeAt(Q),{consequent:W,failed:V}=this.tryParseConditionalConsequent(),[U,$]=this.getArrowLikeExpressions(W);if(V||$.length>0){let j=[...G];if($.length>0){this.state=H,this.state.noArrowAt=j;for(let C=0;C<$.length;C++)j.push($[C].start);({consequent:W,failed:V}=this.tryParseConditionalConsequent()),[U,$]=this.getArrowLikeExpressions(W)}if(V&&U.length>1)this.raise(n.AmbiguousConditionalArrow,H.startLoc);if(V&&U.length===1)this.state=H,j.push(U[0].start),this.state.noArrowAt=j,{consequent:W,failed:V}=this.tryParseConditionalConsequent()}return this.getArrowLikeExpressions(W,!0),this.state.noArrowAt=G,this.expect(14),z.test=Z,z.consequent=W,z.alternate=this.forwardNoArrowParamsConversionAt(z,()=>this.parseMaybeAssign(void 0,void 0)),this.finishNode(z,"ConditionalExpression")}tryParseConditionalConsequent(){this.state.noArrowParamsConversionAt.push(this.state.start);let Z=this.parseMaybeAssignAllowIn(),Q=!this.match(14);return this.state.noArrowParamsConversionAt.pop(),{consequent:Z,failed:Q}}getArrowLikeExpressions(Z,Q){let Y=[Z],H=[];while(Y.length!==0){let G=Y.pop();if(G.type==="ArrowFunctionExpression"&&G.body.type!=="BlockStatement"){if(G.typeParameters||!G.returnType)this.finishArrowValidation(G);else H.push(G);Y.push(G.body)}else if(G.type==="ConditionalExpression")Y.push(G.consequent),Y.push(G.alternate)}if(Q)return H.forEach((G)=>this.finishArrowValidation(G)),[H,[]];return RK(H,(G)=>G.params.every((z)=>this.isAssignable(z,!0)))}finishArrowValidation(Z){var Q;this.toAssignableList(Z.params,(Q=Z.extra)==null?void 0:Q.trailingCommaLoc,!1),this.scope.enter(518),super.checkParams(Z,!1,!0),this.scope.exit()}forwardNoArrowParamsConversionAt(Z,Q){let Y;if(this.state.noArrowParamsConversionAt.includes(this.offsetToSourcePos(Z.start)))this.state.noArrowParamsConversionAt.push(this.state.start),Y=Q(),this.state.noArrowParamsConversionAt.pop();else Y=Q();return Y}parseParenItem(Z,Q){let Y=super.parseParenItem(Z,Q);if(this.eat(17))Y.optional=!0,this.resetEndLocation(Z);if(this.match(14)){let H=this.startNodeAt(Q);return H.expression=Y,H.typeAnnotation=this.flowParseTypeAnnotation(),this.finishNode(H,"TypeCastExpression")}return Y}assertModuleNodeAllowed(Z){if(Z.type==="ImportDeclaration"&&(Z.importKind==="type"||Z.importKind==="typeof")||Z.type==="ExportNamedDeclaration"&&Z.exportKind==="type"||Z.type==="ExportAllDeclaration"&&Z.exportKind==="type")return;super.assertModuleNodeAllowed(Z)}parseExportDeclaration(Z){if(this.isContextual(130)){Z.exportKind="type";let Q=this.startNode();if(this.next(),this.match(5))return Z.specifiers=this.parseExportSpecifiers(!0),super.parseExportFrom(Z),null;else return this.flowParseTypeAlias(Q)}else if(this.isContextual(131)){Z.exportKind="type";let Q=this.startNode();return this.next(),this.flowParseOpaqueType(Q,!1)}else if(this.isContextual(129)){Z.exportKind="type";let Q=this.startNode();return this.next(),this.flowParseInterface(Q)}else if(this.isContextual(126)){Z.exportKind="value";let Q=this.startNode();return this.next(),this.flowParseEnumDeclaration(Q)}else return super.parseExportDeclaration(Z)}eatExportStar(Z){if(super.eatExportStar(Z))return!0;if(this.isContextual(130)&&this.lookahead().type===55)return Z.exportKind="type",this.next(),this.next(),!0;return!1}maybeParseExportNamespaceSpecifier(Z){let{startLoc:Q}=this.state,Y=super.maybeParseExportNamespaceSpecifier(Z);if(Y&&Z.exportKind==="type")this.unexpected(Q);return Y}parseClassId(Z,Q,Y){if(super.parseClassId(Z,Q,Y),this.match(47))Z.typeParameters=this.flowParseTypeParameterDeclaration()}parseClassMember(Z,Q,Y){let{startLoc:H}=this.state;if(this.isContextual(125)){if(super.parseClassMemberFromModifier(Z,Q))return;Q.declare=!0}if(super.parseClassMember(Z,Q,Y),Q.declare){if(Q.type!=="ClassProperty"&&Q.type!=="ClassPrivateProperty"&&Q.type!=="PropertyDefinition")this.raise(n.DeclareClassElement,H);else if(Q.value)this.raise(n.DeclareClassFieldInitializer,Q.value)}}isIterator(Z){return Z==="iterator"||Z==="asyncIterator"}readIterator(){let Z=super.readWord1(),Q="@@"+Z;if(!this.isIterator(Z)||!this.state.inType)this.raise(M.InvalidIdentifier,this.state.curPosition(),{identifierName:Q});this.finishToken(132,Q)}getTokenFromCode(Z){let Q=this.input.charCodeAt(this.state.pos+1);if(Z===123&&Q===124)this.finishOp(6,2);else if(this.state.inType&&(Z===62||Z===60))this.finishOp(Z===62?48:47,1);else if(this.state.inType&&Z===63)if(Q===46)this.finishOp(18,2);else this.finishOp(17,1);else if(zK(Z,Q,this.input.charCodeAt(this.state.pos+2)))this.state.pos+=2,this.readIterator();else super.getTokenFromCode(Z)}isAssignable(Z,Q){if(Z.type==="TypeCastExpression")return this.isAssignable(Z.expression,Q);else return super.isAssignable(Z,Q)}toAssignable(Z,Q=!1){if(!Q&&Z.type==="AssignmentExpression"&&Z.left.type==="TypeCastExpression")Z.left=this.typeCastToParameter(Z.left);super.toAssignable(Z,Q)}toAssignableList(Z,Q,Y){for(let H=0;H<Z.length;H++){let G=Z[H];if((G==null?void 0:G.type)==="TypeCastExpression")Z[H]=this.typeCastToParameter(G)}super.toAssignableList(Z,Q,Y)}toReferencedList(Z,Q){for(let H=0;H<Z.length;H++){var Y;let G=Z[H];if(G&&G.type==="TypeCastExpression"&&!((Y=G.extra)!=null&&Y.parenthesized)&&(Z.length>1||!Q))this.raise(n.TypeCastInPattern,G.typeAnnotation)}return Z}parseArrayLike(Z,Q,Y,H){let G=super.parseArrayLike(Z,Q,Y,H);if(Q&&!this.state.maybeInArrowParameters)this.toReferencedList(G.elements);return G}isValidLVal(Z,Q,Y){return Z==="TypeCastExpression"||super.isValidLVal(Z,Q,Y)}parseClassProperty(Z){if(this.match(14))Z.typeAnnotation=this.flowParseTypeAnnotation();return super.parseClassProperty(Z)}parseClassPrivateProperty(Z){if(this.match(14))Z.typeAnnotation=this.flowParseTypeAnnotation();return super.parseClassPrivateProperty(Z)}isClassMethod(){return this.match(47)||super.isClassMethod()}isClassProperty(){return this.match(14)||super.isClassProperty()}isNonstaticConstructor(Z){return!this.match(14)&&super.isNonstaticConstructor(Z)}pushClassMethod(Z,Q,Y,H,G,z){if(Q.variance)this.unexpected(Q.variance.loc.start);if(delete Q.variance,this.match(47))Q.typeParameters=this.flowParseTypeParameterDeclaration();if(super.pushClassMethod(Z,Q,Y,H,G,z),Q.params&&G){let W=Q.params;if(W.length>0&&this.isThisParam(W[0]))this.raise(n.ThisParamBannedInConstructor,Q)}else if(Q.type==="MethodDefinition"&&G&&Q.value.params){let W=Q.value.params;if(W.length>0&&this.isThisParam(W[0]))this.raise(n.ThisParamBannedInConstructor,Q)}}pushClassPrivateMethod(Z,Q,Y,H){if(Q.variance)this.unexpected(Q.variance.loc.start);if(delete Q.variance,this.match(47))Q.typeParameters=this.flowParseTypeParameterDeclaration();super.pushClassPrivateMethod(Z,Q,Y,H)}parseClassSuper(Z){if(super.parseClassSuper(Z),Z.superClass&&(this.match(47)||this.match(51)))Z.superTypeParameters=this.flowParseTypeParameterInstantiationInExpression();if(this.isContextual(113)){this.next();let Q=Z.implements=[];do{let Y=this.startNode();if(Y.id=this.flowParseRestrictedIdentifier(!0),this.match(47))Y.typeParameters=this.flowParseTypeParameterInstantiation();else Y.typeParameters=null;Q.push(this.finishNode(Y,"ClassImplements"))}while(this.eat(12))}}checkGetterSetterParams(Z){super.checkGetterSetterParams(Z);let Q=this.getObjectOrClassMethodParams(Z);if(Q.length>0){let Y=Q[0];if(this.isThisParam(Y)&&Z.kind==="get")this.raise(n.GetterMayNotHaveThisParam,Y);else if(this.isThisParam(Y))this.raise(n.SetterMayNotHaveThisParam,Y)}}parsePropertyNamePrefixOperator(Z){Z.variance=this.flowParseVariance()}parseObjPropValue(Z,Q,Y,H,G,z,W){if(Z.variance)this.unexpected(Z.variance.loc.start);delete Z.variance;let V;if(this.match(47)&&!z){if(V=this.flowParseTypeParameterDeclaration(),!this.match(10))this.unexpected()}let U=super.parseObjPropValue(Z,Q,Y,H,G,z,W);if(V)(U.value||U).typeParameters=V;return U}parseFunctionParamType(Z){if(this.eat(17)){if(Z.type!=="Identifier")this.raise(n.PatternIsOptional,Z);if(this.isThisParam(Z))this.raise(n.ThisParamMayNotBeOptional,Z);Z.optional=!0}if(this.match(14))Z.typeAnnotation=this.flowParseTypeAnnotation();else if(this.isThisParam(Z))this.raise(n.ThisParamAnnotationRequired,Z);if(this.match(29)&&this.isThisParam(Z))this.raise(n.ThisParamNoDefault,Z);return this.resetEndLocation(Z),Z}parseMaybeDefault(Z,Q){let Y=super.parseMaybeDefault(Z,Q);if(Y.type==="AssignmentPattern"&&Y.typeAnnotation&&Y.right.start<Y.typeAnnotation.start)this.raise(n.TypeBeforeInitializer,Y.typeAnnotation);return Y}checkImportReflection(Z){if(super.checkImportReflection(Z),Z.module&&Z.importKind!=="value")this.raise(n.ImportReflectionHasImportType,Z.specifiers[0].loc.start)}parseImportSpecifierLocal(Z,Q,Y){Q.local=p8(Z)?this.flowParseRestrictedIdentifier(!0,!0):this.parseIdentifier(),Z.specifiers.push(this.finishImportSpecifier(Q,Y))}isPotentialImportPhase(Z){if(super.isPotentialImportPhase(Z))return!0;if(this.isContextual(130)){if(!Z)return!0;let Q=this.lookaheadCharCode();return Q===123||Q===42}return!Z&&this.isContextual(87)}applyImportPhase(Z,Q,Y,H){if(super.applyImportPhase(Z,Q,Y,H),Q){if(!Y&&this.match(65))return;Z.exportKind=Y==="type"?Y:"value"}else{if(Y==="type"&&this.match(55))this.unexpected();Z.importKind=Y==="type"||Y==="typeof"?Y:"value"}}parseImportSpecifier(Z,Q,Y,H,G){let z=Z.imported,W=null;if(z.type==="Identifier"){if(z.name==="type")W="type";else if(z.name==="typeof")W="typeof"}let V=!1;if(this.isContextual(93)&&!this.isLookaheadContextual("as")){let $=this.parseIdentifier(!0);if(W!==null&&!M0(this.state.type))Z.imported=$,Z.importKind=W,Z.local=this.cloneIdentifier($);else Z.imported=z,Z.importKind=null,Z.local=this.parseIdentifier()}else{if(W!==null&&M0(this.state.type))Z.imported=this.parseIdentifier(!0),Z.importKind=W;else{if(Q)throw this.raise(M.ImportBindingIsString,Z,{importName:z.value});Z.imported=z,Z.importKind=null}if(this.eatContextual(93))Z.local=this.parseIdentifier();else V=!0,Z.local=this.cloneIdentifier(Z.imported)}let U=p8(Z);if(Y&&U)this.raise(n.ImportTypeShorthandOnlyInPureImport,Z);if(Y||U)this.checkReservedType(Z.local.name,Z.local.loc.start,!0);if(V&&!Y&&!U)this.checkReservedWord(Z.local.name,Z.loc.start,!0,!0);return this.finishImportSpecifier(Z,"ImportSpecifier")}parseBindingAtom(){switch(this.state.type){case 78:return this.parseIdentifier(!0);default:return super.parseBindingAtom()}}parseFunctionParams(Z,Q){let Y=Z.kind;if(Y!=="get"&&Y!=="set"&&this.match(47))Z.typeParameters=this.flowParseTypeParameterDeclaration();super.parseFunctionParams(Z,Q)}parseVarId(Z,Q){if(super.parseVarId(Z,Q),this.match(14))Z.id.typeAnnotation=this.flowParseTypeAnnotation(),this.resetEndLocation(Z.id)}parseAsyncArrowFromCallExpression(Z,Q){if(this.match(14)){let Y=this.state.noAnonFunctionType;this.state.noAnonFunctionType=!0,Z.returnType=this.flowParseTypeAnnotation(),this.state.noAnonFunctionType=Y}return super.parseAsyncArrowFromCallExpression(Z,Q)}shouldParseAsyncArrow(){return this.match(14)||super.shouldParseAsyncArrow()}parseMaybeAssign(Z,Q){var Y;let H=null,G;if(this.hasPlugin("jsx")&&(this.match(143)||this.match(47))){if(H=this.state.clone(),G=this.tryParse(()=>super.parseMaybeAssign(Z,Q),H),!G.error)return G.node;let{context:V}=this.state,U=V[V.length-1];if(U===j1.j_oTag||U===j1.j_expr)V.pop()}if((Y=G)!=null&&Y.error||this.match(47)){var z,W;H=H||this.state.clone();let V,U=this.tryParse((j)=>{var C;V=this.flowParseTypeParameterDeclaration();let A=this.forwardNoArrowParamsConversionAt(V,()=>{let w=super.parseMaybeAssign(Z,Q);return this.resetStartLocationFromNode(w,V),w});if((C=A.extra)!=null&&C.parenthesized)j();let S=this.maybeUnwrapTypeCastExpression(A);if(S.type!=="ArrowFunctionExpression")j();return S.typeParameters=V,this.resetStartLocationFromNode(S,V),A},H),$=null;if(U.node&&this.maybeUnwrapTypeCastExpression(U.node).type==="ArrowFunctionExpression"){if(!U.error&&!U.aborted){if(U.node.async)this.raise(n.UnexpectedTypeParameterBeforeAsyncArrowFunction,V);return U.node}$=U.node}if((z=G)!=null&&z.node)return this.state=G.failState,G.node;if($)return this.state=U.failState,$;if((W=G)!=null&&W.thrown)throw G.error;if(U.thrown)throw U.error;throw this.raise(n.UnexpectedTokenAfterTypeParameter,V)}return super.parseMaybeAssign(Z,Q)}parseArrow(Z){if(this.match(14)){let Q=this.tryParse(()=>{let Y=this.state.noAnonFunctionType;this.state.noAnonFunctionType=!0;let H=this.startNode();if([H.typeAnnotation,Z.predicate]=this.flowParseTypeAndPredicateInitialiser(),this.state.noAnonFunctionType=Y,this.canInsertSemicolon())this.unexpected();if(!this.match(19))this.unexpected();return H});if(Q.thrown)return null;if(Q.error)this.state=Q.failState;Z.returnType=Q.node.typeAnnotation?this.finishNode(Q.node,"TypeAnnotation"):null}return super.parseArrow(Z)}shouldParseArrow(Z){return this.match(14)||super.shouldParseArrow(Z)}setArrowFunctionParameters(Z,Q){if(this.state.noArrowParamsConversionAt.includes(this.offsetToSourcePos(Z.start)))Z.params=Q;else super.setArrowFunctionParameters(Z,Q)}checkParams(Z,Q,Y,H=!0){if(Y&&this.state.noArrowParamsConversionAt.includes(this.offsetToSourcePos(Z.start)))return;for(let G=0;G<Z.params.length;G++)if(this.isThisParam(Z.params[G])&&G>0)this.raise(n.ThisParamMustBeFirst,Z.params[G]);super.checkParams(Z,Q,Y,H)}parseParenAndDistinguishExpression(Z){return super.parseParenAndDistinguishExpression(Z&&!this.state.noArrowAt.includes(this.sourceToOffsetPos(this.state.start)))}parseSubscripts(Z,Q,Y){if(Z.type==="Identifier"&&Z.name==="async"&&this.state.noArrowAt.includes(Q.index)){this.next();let H=this.startNodeAt(Q);H.callee=Z,H.arguments=super.parseCallExpressionArguments(),Z=this.finishNode(H,"CallExpression")}else if(Z.type==="Identifier"&&Z.name==="async"&&this.match(47)){let H=this.state.clone(),G=this.tryParse((W)=>this.parseAsyncArrowWithTypeParameters(Q)||W(),H);if(!G.error&&!G.aborted)return G.node;let z=this.tryParse(()=>super.parseSubscripts(Z,Q,Y),H);if(z.node&&!z.error)return z.node;if(G.node)return this.state=G.failState,G.node;if(z.node)return this.state=z.failState,z.node;throw G.error||z.error}return super.parseSubscripts(Z,Q,Y)}parseSubscript(Z,Q,Y,H){if(this.match(18)&&this.isLookaheadToken_lt()){if(H.optionalChainMember=!0,Y)return H.stop=!0,Z;this.next();let G=this.startNodeAt(Q);return G.callee=Z,G.typeArguments=this.flowParseTypeParameterInstantiationInExpression(),this.expect(10),G.arguments=this.parseCallExpressionArguments(),G.optional=!0,this.finishCallExpression(G,!0)}else if(!Y&&this.shouldParseTypes()&&(this.match(47)||this.match(51))){let G=this.startNodeAt(Q);G.callee=Z;let z=this.tryParse(()=>{if(G.typeArguments=this.flowParseTypeParameterInstantiationCallOrNew(),this.expect(10),G.arguments=super.parseCallExpressionArguments(),H.optionalChainMember)G.optional=!1;return this.finishCallExpression(G,H.optionalChainMember)});if(z.node){if(z.error)this.state=z.failState;return z.node}}return super.parseSubscript(Z,Q,Y,H)}parseNewCallee(Z){super.parseNewCallee(Z);let Q=null;if(this.shouldParseTypes()&&this.match(47))Q=this.tryParse(()=>this.flowParseTypeParameterInstantiationCallOrNew()).node;Z.typeArguments=Q}parseAsyncArrowWithTypeParameters(Z){let Q=this.startNodeAt(Z);if(this.parseFunctionParams(Q,!1),!this.parseArrow(Q))return;return super.parseArrowExpression(Q,void 0,!0)}readToken_mult_modulo(Z){let Q=this.input.charCodeAt(this.state.pos+1);if(Z===42&&Q===47&&this.state.hasFlowComment){this.state.hasFlowComment=!1,this.state.pos+=2,this.nextToken();return}super.readToken_mult_modulo(Z)}readToken_pipe_amp(Z){let Q=this.input.charCodeAt(this.state.pos+1);if(Z===124&&Q===125){this.finishOp(9,2);return}super.readToken_pipe_amp(Z)}parseTopLevel(Z,Q){let Y=super.parseTopLevel(Z,Q);if(this.state.hasFlowComment)this.raise(n.UnterminatedFlowComment,this.state.curPosition());return Y}skipBlockComment(){if(this.hasPlugin("flowComments")&&this.skipFlowComment()){if(this.state.hasFlowComment)throw this.raise(n.NestedFlowComment,this.state.startLoc);this.hasFlowCommentCompletion();let Z=this.skipFlowComment();if(Z)this.state.pos+=Z,this.state.hasFlowComment=!0;return}return super.skipBlockComment(this.state.hasFlowComment?"*-/":"*/")}skipFlowComment(){let{pos:Z}=this.state,Q=2;while([32,9].includes(this.input.charCodeAt(Z+Q)))Q++;let Y=this.input.charCodeAt(Q+Z),H=this.input.charCodeAt(Q+Z+1);if(Y===58&&H===58)return Q+2;if(this.input.slice(Q+Z,Q+Z+12)==="flow-include")return Q+12;if(Y===58&&H!==58)return Q;return!1}hasFlowCommentCompletion(){if(this.input.indexOf("*/",this.state.pos)===-1)throw this.raise(M.UnterminatedComment,this.state.curPosition())}flowEnumErrorBooleanMemberNotInitialized(Z,{enumName:Q,memberName:Y}){this.raise(n.EnumBooleanMemberNotInitialized,Z,{memberName:Y,enumName:Q})}flowEnumErrorInvalidMemberInitializer(Z,Q){return this.raise(!Q.explicitType?n.EnumInvalidMemberInitializerUnknownType:Q.explicitType==="symbol"?n.EnumInvalidMemberInitializerSymbolType:n.EnumInvalidMemberInitializerPrimaryType,Z,Q)}flowEnumErrorNumberMemberNotInitialized(Z,Q){this.raise(n.EnumNumberMemberNotInitialized,Z,Q)}flowEnumErrorStringMemberInconsistentlyInitialized(Z,Q){this.raise(n.EnumStringMemberInconsistentlyInitialized,Z,Q)}flowEnumMemberInit(){let Z=this.state.startLoc,Q=()=>this.match(12)||this.match(8);switch(this.state.type){case 135:{let Y=this.parseNumericLiteral(this.state.value);if(Q())return{type:"number",loc:Y.loc.start,value:Y};return{type:"invalid",loc:Z}}case 134:{let Y=this.parseStringLiteral(this.state.value);if(Q())return{type:"string",loc:Y.loc.start,value:Y};return{type:"invalid",loc:Z}}case 85:case 86:{let Y=this.parseBooleanLiteral(this.match(85));if(Q())return{type:"boolean",loc:Y.loc.start,value:Y};return{type:"invalid",loc:Z}}default:return{type:"invalid",loc:Z}}}flowEnumMemberRaw(){let Z=this.state.startLoc,Q=this.parseIdentifier(!0),Y=this.eat(29)?this.flowEnumMemberInit():{type:"none",loc:Z};return{id:Q,init:Y}}flowEnumCheckExplicitTypeMismatch(Z,Q,Y){let{explicitType:H}=Q;if(H===null)return;if(H!==Y)this.flowEnumErrorInvalidMemberInitializer(Z,Q)}flowEnumMembers({enumName:Z,explicitType:Q}){let Y=new Set,H={booleanMembers:[],numberMembers:[],stringMembers:[],defaultedMembers:[]},G=!1;while(!this.match(8)){if(this.eat(21)){G=!0;break}let z=this.startNode(),{id:W,init:V}=this.flowEnumMemberRaw(),U=W.name;if(U==="")continue;if(/^[a-z]/.test(U))this.raise(n.EnumInvalidMemberName,W,{memberName:U,suggestion:U[0].toUpperCase()+U.slice(1),enumName:Z});if(Y.has(U))this.raise(n.EnumDuplicateMemberName,W,{memberName:U,enumName:Z});Y.add(U);let $={enumName:Z,explicitType:Q,memberName:U};switch(z.id=W,V.type){case"boolean":{this.flowEnumCheckExplicitTypeMismatch(V.loc,$,"boolean"),z.init=V.value,H.booleanMembers.push(this.finishNode(z,"EnumBooleanMember"));break}case"number":{this.flowEnumCheckExplicitTypeMismatch(V.loc,$,"number"),z.init=V.value,H.numberMembers.push(this.finishNode(z,"EnumNumberMember"));break}case"string":{this.flowEnumCheckExplicitTypeMismatch(V.loc,$,"string"),z.init=V.value,H.stringMembers.push(this.finishNode(z,"EnumStringMember"));break}case"invalid":throw this.flowEnumErrorInvalidMemberInitializer(V.loc,$);case"none":switch(Q){case"boolean":this.flowEnumErrorBooleanMemberNotInitialized(V.loc,$);break;case"number":this.flowEnumErrorNumberMemberNotInitialized(V.loc,$);break;default:H.defaultedMembers.push(this.finishNode(z,"EnumDefaultedMember"))}}if(!this.match(8))this.expect(12)}return{members:H,hasUnknownMembers:G}}flowEnumStringMembers(Z,Q,{enumName:Y}){if(Z.length===0)return Q;else if(Q.length===0)return Z;else if(Q.length>Z.length){for(let H of Z)this.flowEnumErrorStringMemberInconsistentlyInitialized(H,{enumName:Y});return Q}else{for(let H of Q)this.flowEnumErrorStringMemberInconsistentlyInitialized(H,{enumName:Y});return Z}}flowEnumParseExplicitType({enumName:Z}){if(!this.eatContextual(102))return null;if(!O1(this.state.type))throw this.raise(n.EnumInvalidExplicitTypeUnknownSupplied,this.state.startLoc,{enumName:Z});let{value:Q}=this.state;if(this.next(),Q!=="boolean"&&Q!=="number"&&Q!=="string"&&Q!=="symbol")this.raise(n.EnumInvalidExplicitType,this.state.startLoc,{enumName:Z,invalidEnumType:Q});return Q}flowEnumBody(Z,Q){let Y=Q.name,H=Q.loc.start,G=this.flowEnumParseExplicitType({enumName:Y});this.expect(5);let{members:z,hasUnknownMembers:W}=this.flowEnumMembers({enumName:Y,explicitType:G});switch(Z.hasUnknownMembers=W,G){case"boolean":return Z.explicitType=!0,Z.members=z.booleanMembers,this.expect(8),this.finishNode(Z,"EnumBooleanBody");case"number":return Z.explicitType=!0,Z.members=z.numberMembers,this.expect(8),this.finishNode(Z,"EnumNumberBody");case"string":return Z.explicitType=!0,Z.members=this.flowEnumStringMembers(z.stringMembers,z.defaultedMembers,{enumName:Y}),this.expect(8),this.finishNode(Z,"EnumStringBody");case"symbol":return Z.members=z.defaultedMembers,this.expect(8),this.finishNode(Z,"EnumSymbolBody");default:{let V=()=>{return Z.members=[],this.expect(8),this.finishNode(Z,"EnumStringBody")};Z.explicitType=!1;let U=z.booleanMembers.length,$=z.numberMembers.length,j=z.stringMembers.length,C=z.defaultedMembers.length;if(!U&&!$&&!j&&!C)return V();else if(!U&&!$)return Z.members=this.flowEnumStringMembers(z.stringMembers,z.defaultedMembers,{enumName:Y}),this.expect(8),this.finishNode(Z,"EnumStringBody");else if(!$&&!j&&U>=C){for(let A of z.defaultedMembers)this.flowEnumErrorBooleanMemberNotInitialized(A.loc.start,{enumName:Y,memberName:A.id.name});return Z.members=z.booleanMembers,this.expect(8),this.finishNode(Z,"EnumBooleanBody")}else if(!U&&!j&&$>=C){for(let A of z.defaultedMembers)this.flowEnumErrorNumberMemberNotInitialized(A.loc.start,{enumName:Y,memberName:A.id.name});return Z.members=z.numberMembers,this.expect(8),this.finishNode(Z,"EnumNumberBody")}else return this.raise(n.EnumInconsistentMemberValues,H,{enumName:Y}),V()}}}flowParseEnumDeclaration(Z){let Q=this.parseIdentifier();return Z.id=Q,Z.body=this.flowEnumBody(this.startNode(),Q),this.finishNode(Z,"EnumDeclaration")}jsxParseOpeningElementAfterName(Z){if(this.shouldParseTypes()){if(this.match(47)||this.match(51))Z.typeArguments=this.flowParseTypeParameterInstantiationInExpression()}return super.jsxParseOpeningElementAfterName(Z)}isLookaheadToken_lt(){let Z=this.nextTokenStart();if(this.input.charCodeAt(Z)===60){let Q=this.input.charCodeAt(Z+1);return Q!==60&&Q!==61}return!1}reScan_lt_gt(){let{type:Z}=this.state;if(Z===47)this.state.pos-=1,this.readToken_lt();else if(Z===48)this.state.pos-=1,this.readToken_gt()}reScan_lt(){let{type:Z}=this.state;if(Z===51)return this.state.pos-=2,this.finishOp(47,1),47;return Z}maybeUnwrapTypeCastExpression(Z){return Z.type==="TypeCastExpression"?Z.expression:Z}},FK={__proto__:null,quot:'"',amp:"&",apos:"'",lt:"<",gt:">",nbsp:"\xA0",iexcl:"\xA1",cent:"\xA2",pound:"\xA3",curren:"\xA4",yen:"\xA5",brvbar:"\xA6",sect:"\xA7",uml:"\xA8",copy:"\xA9",ordf:"\xAA",laquo:"\xAB",not:"\xAC",shy:"\xAD",reg:"\xAE",macr:"\xAF",deg:"\xB0",plusmn:"\xB1",sup2:"\xB2",sup3:"\xB3",acute:"\xB4",micro:"\xB5",para:"\xB6",middot:"\xB7",cedil:"\xB8",sup1:"\xB9",ordm:"\xBA",raquo:"\xBB",frac14:"\xBC",frac12:"\xBD",frac34:"\xBE",iquest:"\xBF",Agrave:"\xC0",Aacute:"\xC1",Acirc:"\xC2",Atilde:"\xC3",Auml:"\xC4",Aring:"\xC5",AElig:"\xC6",Ccedil:"\xC7",Egrave:"\xC8",Eacute:"\xC9",Ecirc:"\xCA",Euml:"\xCB",Igrave:"\xCC",Iacute:"\xCD",Icirc:"\xCE",Iuml:"\xCF",ETH:"\xD0",Ntilde:"\xD1",Ograve:"\xD2",Oacute:"\xD3",Ocirc:"\xD4",Otilde:"\xD5",Ouml:"\xD6",times:"\xD7",Oslash:"\xD8",Ugrave:"\xD9",Uacute:"\xDA",Ucirc:"\xDB",Uuml:"\xDC",Yacute:"\xDD",THORN:"\xDE",szlig:"\xDF",agrave:"\xE0",aacute:"\xE1",acirc:"\xE2",atilde:"\xE3",auml:"\xE4",aring:"\xE5",aelig:"\xE6",ccedil:"\xE7",egrave:"\xE8",eacute:"\xE9",ecirc:"\xEA",euml:"\xEB",igrave:"\xEC",iacute:"\xED",icirc:"\xEE",iuml:"\xEF",eth:"\xF0",ntilde:"\xF1",ograve:"\xF2",oacute:"\xF3",ocirc:"\xF4",otilde:"\xF5",ouml:"\xF6",divide:"\xF7",oslash:"\xF8",ugrave:"\xF9",uacute:"\xFA",ucirc:"\xFB",uuml:"\xFC",yacute:"\xFD",thorn:"\xFE",yuml:"\xFF",OElig:"\u0152",oelig:"\u0153",Scaron:"\u0160",scaron:"\u0161",Yuml:"\u0178",fnof:"\u0192",circ:"\u02C6",tilde:"\u02DC",Alpha:"\u0391",Beta:"\u0392",Gamma:"\u0393",Delta:"\u0394",Epsilon:"\u0395",Zeta:"\u0396",Eta:"\u0397",Theta:"\u0398",Iota:"\u0399",Kappa:"\u039A",Lambda:"\u039B",Mu:"\u039C",Nu:"\u039D",Xi:"\u039E",Omicron:"\u039F",Pi:"\u03A0",Rho:"\u03A1",Sigma:"\u03A3",Tau:"\u03A4",Upsilon:"\u03A5",Phi:"\u03A6",Chi:"\u03A7",Psi:"\u03A8",Omega:"\u03A9",alpha:"\u03B1",beta:"\u03B2",gamma:"\u03B3",delta:"\u03B4",epsilon:"\u03B5",zeta:"\u03B6",eta:"\u03B7",theta:"\u03B8",iota:"\u03B9",kappa:"\u03BA",lambda:"\u03BB",mu:"\u03BC",nu:"\u03BD",xi:"\u03BE",omicron:"\u03BF",pi:"\u03C0",rho:"\u03C1",sigmaf:"\u03C2",sigma:"\u03C3",tau:"\u03C4",upsilon:"\u03C5",phi:"\u03C6",chi:"\u03C7",psi:"\u03C8",omega:"\u03C9",thetasym:"\u03D1",upsih:"\u03D2",piv:"\u03D6",ensp:"\u2002",emsp:"\u2003",thinsp:"\u2009",zwnj:"\u200C",zwj:"\u200D",lrm:"\u200E",rlm:"\u200F",ndash:"\u2013",mdash:"\u2014",lsquo:"\u2018",rsquo:"\u2019",sbquo:"\u201A",ldquo:"\u201C",rdquo:"\u201D",bdquo:"\u201E",dagger:"\u2020",Dagger:"\u2021",bull:"\u2022",hellip:"\u2026",permil:"\u2030",prime:"\u2032",Prime:"\u2033",lsaquo:"\u2039",rsaquo:"\u203A",oline:"\u203E",frasl:"\u2044",euro:"\u20AC",image:"\u2111",weierp:"\u2118",real:"\u211C",trade:"\u2122",alefsym:"\u2135",larr:"\u2190",uarr:"\u2191",rarr:"\u2192",darr:"\u2193",harr:"\u2194",crarr:"\u21B5",lArr:"\u21D0",uArr:"\u21D1",rArr:"\u21D2",dArr:"\u21D3",hArr:"\u21D4",forall:"\u2200",part:"\u2202",exist:"\u2203",empty:"\u2205",nabla:"\u2207",isin:"\u2208",notin:"\u2209",ni:"\u220B",prod:"\u220F",sum:"\u2211",minus:"\u2212",lowast:"\u2217",radic:"\u221A",prop:"\u221D",infin:"\u221E",ang:"\u2220",and:"\u2227",or:"\u2228",cap:"\u2229",cup:"\u222A",int:"\u222B",there4:"\u2234",sim:"\u223C",cong:"\u2245",asymp:"\u2248",ne:"\u2260",equiv:"\u2261",le:"\u2264",ge:"\u2265",sub:"\u2282",sup:"\u2283",nsub:"\u2284",sube:"\u2286",supe:"\u2287",oplus:"\u2295",otimes:"\u2297",perp:"\u22A5",sdot:"\u22C5",lceil:"\u2308",rceil:"\u2309",lfloor:"\u230A",rfloor:"\u230B",lang:"\u2329",rang:"\u232A",loz:"\u25CA",spades:"\u2660",clubs:"\u2663",hearts:"\u2665",diams:"\u2666"},jK=/\r\n|[\r\n\u2028\u2029]/,BX=new RegExp(jK.source,"g");function lJ(J){switch(J){case 10:case 13:case 8232:case 8233:return!0;default:return!1}}function r8(J,X,Z){for(let Q=X;Q<Z;Q++)if(lJ(J.charCodeAt(Q)))return!0;return!1}var b2=/(?:\s|\/\/.*|\/\*[^]*?\*\/)*/g,v2=/(?:[^\S\n\r\u2028\u2029]|\/\/.*|\/\*.*?\*\/)*/g;function MK(J){switch(J){case 9:case 11:case 12:case 32:case 160:case 5760:case 8192:case 8193:case 8194:case 8195:case 8196:case 8197:case 8198:case 8199:case 8200:case 8201:case 8202:case 8239:case 8287:case 12288:case 65279:return!0;default:return!1}}var qJ=T0`jsx`({AttributeIsEmpty:"JSX attributes must only be assigned a non-empty expression.",MissingClosingTagElement:({openingTagName:J})=>`Expected corresponding JSX closing tag for <${J}>.`,MissingClosingTagFragment:"Expected corresponding JSX closing tag for <>.",UnexpectedSequenceExpression:"Sequence expressions cannot be directly nested inside JSX. Did you mean to wrap it in parentheses (...)?",UnexpectedToken:({unexpected:J,HTMLEntity:X})=>`Unexpected token \`${J}\`. Did you mean \`${X}\` or \`{'${J}'}\`?`,UnsupportedJsxValue:"JSX value should be either an expression or a quoted JSX text.",UnterminatedJsxContent:"Unterminated JSX contents.",UnwrappedAdjacentJSXElements:"Adjacent JSX elements must be wrapped in an enclosing tag. Did you want a JSX fragment <>...</>?"});function e0(J){return J?J.type==="JSXOpeningFragment"||J.type==="JSXClosingFragment":!1}function mJ(J){if(J.type==="JSXIdentifier")return J.name;if(J.type==="JSXNamespacedName")return J.namespace.name+":"+J.name.name;if(J.type==="JSXMemberExpression")return mJ(J.object)+"."+mJ(J.property);throw Error("Node had unexpected type: "+J.type)}var OK=(J)=>class extends J{jsxReadToken(){let Z="",Q=this.state.pos;for(;;){if(this.state.pos>=this.length)throw this.raise(qJ.UnterminatedJsxContent,this.state.startLoc);let Y=this.input.charCodeAt(this.state.pos);switch(Y){case 60:case 123:if(this.state.pos===this.state.start){if(Y===60&&this.state.canStartJSXElement)++this.state.pos,this.finishToken(143);else super.getTokenFromCode(Y);return}Z+=this.input.slice(Q,this.state.pos),this.finishToken(142,Z);return;case 38:Z+=this.input.slice(Q,this.state.pos),Z+=this.jsxReadEntity(),Q=this.state.pos;break;case 62:case 125:default:if(lJ(Y))Z+=this.input.slice(Q,this.state.pos),Z+=this.jsxReadNewLine(!0),Q=this.state.pos;else++this.state.pos}}}jsxReadNewLine(Z){let Q=this.input.charCodeAt(this.state.pos),Y;if(++this.state.pos,Q===13&&this.input.charCodeAt(this.state.pos)===10)++this.state.pos,Y=Z?`
6
+ `:`\r
7
+ `;else Y=String.fromCharCode(Q);return++this.state.curLine,this.state.lineStart=this.state.pos,Y}jsxReadString(Z){let Q="",Y=++this.state.pos;for(;;){if(this.state.pos>=this.length)throw this.raise(M.UnterminatedString,this.state.startLoc);let H=this.input.charCodeAt(this.state.pos);if(H===Z)break;if(H===38)Q+=this.input.slice(Y,this.state.pos),Q+=this.jsxReadEntity(),Y=this.state.pos;else if(lJ(H))Q+=this.input.slice(Y,this.state.pos),Q+=this.jsxReadNewLine(!1),Y=this.state.pos;else++this.state.pos}Q+=this.input.slice(Y,this.state.pos++),this.finishToken(134,Q)}jsxReadEntity(){let Z=++this.state.pos;if(this.codePointAtPos(this.state.pos)===35){++this.state.pos;let Q=10;if(this.codePointAtPos(this.state.pos)===120)Q=16,++this.state.pos;let Y=this.readInt(Q,void 0,!1,"bail");if(Y!==null&&this.codePointAtPos(this.state.pos)===59)return++this.state.pos,String.fromCodePoint(Y)}else{let Q=0,Y=!1;while(Q++<10&&this.state.pos<this.length&&!(Y=this.codePointAtPos(this.state.pos)===59))++this.state.pos;if(Y){let H=this.input.slice(Z,this.state.pos),G=FK[H];if(++this.state.pos,G)return G}}return this.state.pos=Z,"&"}jsxReadWord(){let Z,Q=this.state.pos;do Z=this.input.charCodeAt(++this.state.pos);while(cJ(Z)||Z===45);this.finishToken(141,this.input.slice(Q,this.state.pos))}jsxParseIdentifier(){let Z=this.startNode();if(this.match(141))Z.name=this.state.value;else if(p2(this.state.type))Z.name=XJ(this.state.type);else this.unexpected();return this.next(),this.finishNode(Z,"JSXIdentifier")}jsxParseNamespacedName(){let Z=this.state.startLoc,Q=this.jsxParseIdentifier();if(!this.eat(14))return Q;let Y=this.startNodeAt(Z);return Y.namespace=Q,Y.name=this.jsxParseIdentifier(),this.finishNode(Y,"JSXNamespacedName")}jsxParseElementName(){let Z=this.state.startLoc,Q=this.jsxParseNamespacedName();if(Q.type==="JSXNamespacedName")return Q;while(this.eat(16)){let Y=this.startNodeAt(Z);Y.object=Q,Y.property=this.jsxParseIdentifier(),Q=this.finishNode(Y,"JSXMemberExpression")}return Q}jsxParseAttributeValue(){let Z;switch(this.state.type){case 5:if(Z=this.startNode(),this.setContext(j1.brace),this.next(),Z=this.jsxParseExpressionContainer(Z,j1.j_oTag),Z.expression.type==="JSXEmptyExpression")this.raise(qJ.AttributeIsEmpty,Z);return Z;case 143:case 134:return this.parseExprAtom();default:throw this.raise(qJ.UnsupportedJsxValue,this.state.startLoc)}}jsxParseEmptyExpression(){let Z=this.startNodeAt(this.state.lastTokEndLoc);return this.finishNodeAt(Z,"JSXEmptyExpression",this.state.startLoc)}jsxParseSpreadChild(Z){return this.next(),Z.expression=this.parseExpression(),this.setContext(j1.j_expr),this.state.canStartJSXElement=!0,this.expect(8),this.finishNode(Z,"JSXSpreadChild")}jsxParseExpressionContainer(Z,Q){if(this.match(8))Z.expression=this.jsxParseEmptyExpression();else{let Y=this.parseExpression();Z.expression=Y}return this.setContext(Q),this.state.canStartJSXElement=!0,this.expect(8),this.finishNode(Z,"JSXExpressionContainer")}jsxParseAttribute(){let Z=this.startNode();if(this.match(5))return this.setContext(j1.brace),this.next(),this.expect(21),Z.argument=this.parseMaybeAssignAllowIn(),this.setContext(j1.j_oTag),this.state.canStartJSXElement=!0,this.expect(8),this.finishNode(Z,"JSXSpreadAttribute");return Z.name=this.jsxParseNamespacedName(),Z.value=this.eat(29)?this.jsxParseAttributeValue():null,this.finishNode(Z,"JSXAttribute")}jsxParseOpeningElementAt(Z){let Q=this.startNodeAt(Z);if(this.eat(144))return this.finishNode(Q,"JSXOpeningFragment");return Q.name=this.jsxParseElementName(),this.jsxParseOpeningElementAfterName(Q)}jsxParseOpeningElementAfterName(Z){let Q=[];while(!this.match(56)&&!this.match(144))Q.push(this.jsxParseAttribute());return Z.attributes=Q,Z.selfClosing=this.eat(56),this.expect(144),this.finishNode(Z,"JSXOpeningElement")}jsxParseClosingElementAt(Z){let Q=this.startNodeAt(Z);if(this.eat(144))return this.finishNode(Q,"JSXClosingFragment");return Q.name=this.jsxParseElementName(),this.expect(144),this.finishNode(Q,"JSXClosingElement")}jsxParseElementAt(Z){let Q=this.startNodeAt(Z),Y=[],H=this.jsxParseOpeningElementAt(Z),G=null;if(!H.selfClosing){J:for(;;)switch(this.state.type){case 143:if(Z=this.state.startLoc,this.next(),this.eat(56)){G=this.jsxParseClosingElementAt(Z);break J}Y.push(this.jsxParseElementAt(Z));break;case 142:Y.push(this.parseLiteral(this.state.value,"JSXText"));break;case 5:{let z=this.startNode();if(this.setContext(j1.brace),this.next(),this.match(21))Y.push(this.jsxParseSpreadChild(z));else Y.push(this.jsxParseExpressionContainer(z,j1.j_expr));break}default:this.unexpected()}if(e0(H)&&!e0(G)&&G!==null)this.raise(qJ.MissingClosingTagFragment,G);else if(!e0(H)&&e0(G))this.raise(qJ.MissingClosingTagElement,G,{openingTagName:mJ(H.name)});else if(!e0(H)&&!e0(G)){if(mJ(G.name)!==mJ(H.name))this.raise(qJ.MissingClosingTagElement,G,{openingTagName:mJ(H.name)})}}if(e0(H))Q.openingFragment=H,Q.closingFragment=G;else Q.openingElement=H,Q.closingElement=G;if(Q.children=Y,this.match(47))throw this.raise(qJ.UnwrappedAdjacentJSXElements,this.state.startLoc);return e0(H)?this.finishNode(Q,"JSXFragment"):this.finishNode(Q,"JSXElement")}jsxParseElement(){let Z=this.state.startLoc;return this.next(),this.jsxParseElementAt(Z)}setContext(Z){let{context:Q}=this.state;Q[Q.length-1]=Z}parseExprAtom(Z){if(this.match(143))return this.jsxParseElement();else if(this.match(47)&&this.input.charCodeAt(this.state.pos)!==33)return this.replaceToken(143),this.jsxParseElement();else return super.parseExprAtom(Z)}skipSpace(){if(!this.curContext().preserveSpace)super.skipSpace()}getTokenFromCode(Z){let Q=this.curContext();if(Q===j1.j_expr){this.jsxReadToken();return}if(Q===j1.j_oTag||Q===j1.j_cTag){if(l0(Z)){this.jsxReadWord();return}if(Z===62){++this.state.pos,this.finishToken(144);return}if((Z===34||Z===39)&&Q===j1.j_oTag){this.jsxReadString(Z);return}}if(Z===60&&this.state.canStartJSXElement&&this.input.charCodeAt(this.state.pos+1)!==33){++this.state.pos,this.finishToken(143);return}super.getTokenFromCode(Z)}updateContext(Z){let{context:Q,type:Y}=this.state;if(Y===56&&Z===143)Q.splice(-2,2,j1.j_cTag),this.state.canStartJSXElement=!1;else if(Y===143)Q.push(j1.j_oTag);else if(Y===144){let H=Q[Q.length-1];if(H===j1.j_oTag&&Z===56||H===j1.j_cTag)Q.pop(),this.state.canStartJSXElement=Q[Q.length-1]===j1.j_expr;else this.setContext(j1.j_expr),this.state.canStartJSXElement=!0}else this.state.canStartJSXElement=pV(Y)}};class K4 extends MX{constructor(...J){super(...J);this.tsNames=new Map}}class U4 extends OX{constructor(...J){super(...J);this.importsStack=[]}createScope(J){return this.importsStack.push(new Set),new K4(J)}enter(J){if(J===1024)this.importsStack.push(new Set);super.enter(J)}exit(){let J=super.exit();if(J===1024)this.importsStack.pop();return J}hasImport(J,X){let Z=this.importsStack.length;if(this.importsStack[Z-1].has(J))return!0;if(!X&&Z>1){for(let Q=0;Q<Z-1;Q++)if(this.importsStack[Q].has(J))return!0}return!1}declareName(J,X,Z){if(X&4096){if(this.hasImport(J,!0))this.parser.raise(M.VarRedeclaration,Z,{identifierName:J});this.importsStack[this.importsStack.length-1].add(J);return}let Q=this.currentScope(),Y=Q.tsNames.get(J)||0;if(X&1024){this.maybeExportDefined(Q,J),Q.tsNames.set(J,Y|16);return}if(super.declareName(J,X,Z),X&2){if(!(X&1))this.checkRedeclarationInScope(Q,J,X,Z),this.maybeExportDefined(Q,J);Y=Y|1}if(X&256)Y=Y|2;if(X&512)Y=Y|4;if(X&128)Y=Y|8;if(Y)Q.tsNames.set(J,Y)}isRedeclaredInScope(J,X,Z){let Q=J.tsNames.get(X);if((Q&2)>0){if(Z&256){let Y=!!(Z&512),H=(Q&4)>0;return Y!==H}return!0}if(Z&128&&(Q&8)>0)if(J.names.get(X)&2)return!!(Z&1);else return!1;if(Z&2&&(Q&1)>0)return!0;return super.isRedeclaredInScope(J,X,Z)}checkLocalExport(J){let{name:X}=J;if(this.hasImport(X))return;let Z=this.scopeStack.length;for(let Q=Z-1;Q>=0;Q--){let H=this.scopeStack[Q].tsNames.get(X);if((H&1)>0||(H&16)>0)return}super.checkLocalExport(J)}}class B4{constructor(){this.stacks=[]}enter(J){this.stacks.push(J)}exit(){this.stacks.pop()}currentFlags(){return this.stacks[this.stacks.length-1]}get hasAwait(){return(this.currentFlags()&2)>0}get hasYield(){return(this.currentFlags()&1)>0}get hasReturn(){return(this.currentFlags()&4)>0}get hasIn(){return(this.currentFlags()&8)>0}}function FX(J,X){return(J?2:0)|(X?1:0)}class R4{constructor(){this.sawUnambiguousESM=!1,this.ambiguousScriptDifferentAst=!1}sourceToOffsetPos(J){return J+this.startIndex}offsetToSourcePos(J){return J-this.startIndex}hasPlugin(J){if(typeof J==="string")return this.plugins.has(J);else{let[X,Z]=J;if(!this.hasPlugin(X))return!1;let Q=this.plugins.get(X);for(let Y of Object.keys(Z))if((Q==null?void 0:Q[Y])!==Z[Y])return!1;return!0}}getPluginOption(J,X){var Z;return(Z=this.plugins.get(J))==null?void 0:Z[X]}}function $4(J,X){if(J.trailingComments===void 0)J.trailingComments=X;else J.trailingComments.unshift(...X)}function AK(J,X){if(J.leadingComments===void 0)J.leadingComments=X;else J.leadingComments.unshift(...X)}function N9(J,X){if(J.innerComments===void 0)J.innerComments=X;else J.innerComments.unshift(...X)}function JJ(J,X,Z){let Q=null,Y=X.length;while(Q===null&&Y>0)Q=X[--Y];if(Q===null||Q.start>Z.start)N9(J,Z.comments);else $4(Q,Z.comments)}class q4 extends R4{addComment(J){if(this.filename)J.loc.filename=this.filename;let{commentsLen:X}=this.state;if(this.comments.length!==X)this.comments.length=X;this.comments.push(J),this.state.commentsLen++}processComment(J){let{commentStack:X}=this.state,Z=X.length;if(Z===0)return;let Q=Z-1,Y=X[Q];if(Y.start===J.end)Y.leadingNode=J,Q--;let{start:H}=J;for(;Q>=0;Q--){let G=X[Q],z=G.end;if(z>H)G.containingNode=J,this.finalizeComment(G),X.splice(Q,1);else{if(z===H)G.trailingNode=J;break}}}finalizeComment(J){var X;let{comments:Z}=J;if(J.leadingNode!==null||J.trailingNode!==null){if(J.leadingNode!==null)$4(J.leadingNode,Z);if(J.trailingNode!==null)AK(J.trailingNode,Z)}else{let{containingNode:Q,start:Y}=J;if(this.input.charCodeAt(this.offsetToSourcePos(Y)-1)===44)switch(Q.type){case"ObjectExpression":case"ObjectPattern":case"RecordExpression":JJ(Q,Q.properties,J);break;case"CallExpression":case"OptionalCallExpression":JJ(Q,Q.arguments,J);break;case"ImportExpression":JJ(Q,[Q.source,(X=Q.options)!=null?X:null],J);break;case"FunctionDeclaration":case"FunctionExpression":case"ArrowFunctionExpression":case"ObjectMethod":case"ClassMethod":case"ClassPrivateMethod":JJ(Q,Q.params,J);break;case"ArrayExpression":case"ArrayPattern":case"TupleExpression":JJ(Q,Q.elements,J);break;case"ExportNamedDeclaration":case"ImportDeclaration":JJ(Q,Q.specifiers,J);break;case"TSEnumDeclaration":JJ(Q,Q.members,J);break;case"TSEnumBody":JJ(Q,Q.members,J);break;default:N9(Q,Z)}else N9(Q,Z)}}finalizeRemainingComments(){let{commentStack:J}=this.state;for(let X=J.length-1;X>=0;X--)this.finalizeComment(J[X]);this.state.commentStack=[]}resetPreviousNodeTrailingComments(J){let{commentStack:X}=this.state,{length:Z}=X;if(Z===0)return;let Q=X[Z-1];if(Q.leadingNode===J)Q.leadingNode=null}takeSurroundingComments(J,X,Z){let{commentStack:Q}=this.state,Y=Q.length;if(Y===0)return;let H=Y-1;for(;H>=0;H--){let G=Q[H],z=G.end;if(G.start===Z)G.leadingNode=J;else if(z===X)G.trailingNode=J;else if(z<X)break}}}class a2{constructor(){this.flags=1024,this.startIndex=void 0,this.curLine=void 0,this.lineStart=void 0,this.startLoc=void 0,this.endLoc=void 0,this.errors=[],this.potentialArrowAt=-1,this.noArrowAt=[],this.noArrowParamsConversionAt=[],this.topicContext={maxNumOfResolvableTopics:0,maxTopicIndex:null},this.labels=[],this.commentsLen=0,this.commentStack=[],this.pos=0,this.type=140,this.value=null,this.start=0,this.end=0,this.lastTokEndLoc=null,this.lastTokStartLoc=null,this.context=[j1.brace],this.firstInvalidTemplateEscapePos=null,this.strictErrors=new Map,this.tokensLength=0}get strict(){return(this.flags&1)>0}set strict(J){if(J)this.flags|=1;else this.flags&=-2}init({strictMode:J,sourceType:X,startIndex:Z,startLine:Q,startColumn:Y}){this.strict=J===!1?!1:J===!0?!0:X==="module",this.startIndex=Z,this.curLine=Q,this.lineStart=-Y,this.startLoc=this.endLoc=new i0(Q,Y,Z)}get maybeInArrowParameters(){return(this.flags&2)>0}set maybeInArrowParameters(J){if(J)this.flags|=2;else this.flags&=-3}get inType(){return(this.flags&4)>0}set inType(J){if(J)this.flags|=4;else this.flags&=-5}get noAnonFunctionType(){return(this.flags&8)>0}set noAnonFunctionType(J){if(J)this.flags|=8;else this.flags&=-9}get hasFlowComment(){return(this.flags&16)>0}set hasFlowComment(J){if(J)this.flags|=16;else this.flags&=-17}get isAmbientContext(){return(this.flags&32)>0}set isAmbientContext(J){if(J)this.flags|=32;else this.flags&=-33}get inAbstractClass(){return(this.flags&64)>0}set inAbstractClass(J){if(J)this.flags|=64;else this.flags&=-65}get inDisallowConditionalTypesContext(){return(this.flags&128)>0}set inDisallowConditionalTypesContext(J){if(J)this.flags|=128;else this.flags&=-129}get soloAwait(){return(this.flags&256)>0}set soloAwait(J){if(J)this.flags|=256;else this.flags&=-257}get inFSharpPipelineDirectBody(){return(this.flags&512)>0}set inFSharpPipelineDirectBody(J){if(J)this.flags|=512;else this.flags&=-513}get canStartJSXElement(){return(this.flags&1024)>0}set canStartJSXElement(J){if(J)this.flags|=1024;else this.flags&=-1025}get containsEsc(){return(this.flags&2048)>0}set containsEsc(J){if(J)this.flags|=2048;else this.flags&=-2049}get hasTopLevelAwait(){return(this.flags&4096)>0}set hasTopLevelAwait(J){if(J)this.flags|=4096;else this.flags&=-4097}curPosition(){return new i0(this.curLine,this.pos-this.lineStart,this.pos+this.startIndex)}clone(){let J=new a2;return J.flags=this.flags,J.startIndex=this.startIndex,J.curLine=this.curLine,J.lineStart=this.lineStart,J.startLoc=this.startLoc,J.endLoc=this.endLoc,J.errors=this.errors.slice(),J.potentialArrowAt=this.potentialArrowAt,J.noArrowAt=this.noArrowAt.slice(),J.noArrowParamsConversionAt=this.noArrowParamsConversionAt.slice(),J.topicContext=this.topicContext,J.labels=this.labels.slice(),J.commentsLen=this.commentsLen,J.commentStack=this.commentStack.slice(),J.pos=this.pos,J.type=this.type,J.value=this.value,J.start=this.start,J.end=this.end,J.lastTokEndLoc=this.lastTokEndLoc,J.lastTokStartLoc=this.lastTokStartLoc,J.context=this.context.slice(),J.firstInvalidTemplateEscapePos=this.firstInvalidTemplateEscapePos,J.strictErrors=this.strictErrors,J.tokensLength=this.tokensLength,J}}var CK=function(X){return X>=48&&X<=57},d8={decBinOct:new Set([46,66,69,79,95,98,101,111]),hex:new Set([46,88,95,120])},RX={bin:(J)=>J===48||J===49,oct:(J)=>J>=48&&J<=55,dec:(J)=>J>=48&&J<=57,hex:(J)=>J>=48&&J<=57||J>=65&&J<=70||J>=97&&J<=102};function a8(J,X,Z,Q,Y,H){let G=Z,z=Q,W=Y,V="",U=null,$=Z,{length:j}=X;for(;;){if(Z>=j){H.unterminated(G,z,W),V+=X.slice($,Z);break}let C=X.charCodeAt(Z);if(DK(J,C,X,Z)){V+=X.slice($,Z);break}if(C===92){V+=X.slice($,Z);let A=IK(X,Z,Q,Y,J==="template",H);if(A.ch===null&&!U)U={pos:Z,lineStart:Q,curLine:Y};else V+=A.ch;({pos:Z,lineStart:Q,curLine:Y}=A),$=Z}else if(C===8232||C===8233)++Z,++Y,Q=Z;else if(C===10||C===13)if(J==="template"){if(V+=X.slice($,Z)+`
8
+ `,++Z,C===13&&X.charCodeAt(Z)===10)++Z;++Y,$=Q=Z}else H.unterminated(G,z,W);else++Z}return{pos:Z,str:V,firstInvalidLoc:U,lineStart:Q,curLine:Y,containsInvalid:!!U}}function DK(J,X,Z,Q){if(J==="template")return X===96||X===36&&Z.charCodeAt(Q+1)===123;return X===(J==="double"?34:39)}function IK(J,X,Z,Q,Y,H){let G=!Y;X++;let z=(V)=>({pos:X,ch:V,lineStart:Z,curLine:Q}),W=J.charCodeAt(X++);switch(W){case 110:return z(`
9
+ `);case 114:return z("\r");case 120:{let V;return{code:V,pos:X}=f2(J,X,Z,Q,2,!1,G,H),z(V===null?null:String.fromCharCode(V))}case 117:{let V;return{code:V,pos:X}=j4(J,X,Z,Q,G,H),z(V===null?null:String.fromCodePoint(V))}case 116:return z("\t");case 98:return z("\b");case 118:return z("\v");case 102:return z("\f");case 13:if(J.charCodeAt(X)===10)++X;case 10:Z=X,++Q;case 8232:case 8233:return z("");case 56:case 57:if(Y)return z(null);else H.strictNumericEscape(X-1,Z,Q);default:if(W>=48&&W<=55){let V=X-1,$=/^[0-7]+/.exec(J.slice(V,X+2))[0],j=parseInt($,8);if(j>255)$=$.slice(0,-1),j=parseInt($,8);X+=$.length-1;let C=J.charCodeAt(X);if($!=="0"||C===56||C===57)if(Y)return z(null);else H.strictNumericEscape(V,Z,Q);return z(String.fromCharCode(j))}return z(String.fromCharCode(W))}}function f2(J,X,Z,Q,Y,H,G,z){let W=X,V;if({n:V,pos:X}=F4(J,X,Z,Q,16,Y,H,!1,z,!G),V===null)if(G)z.invalidEscapeSequence(W,Z,Q);else X=W-1;return{code:V,pos:X}}function F4(J,X,Z,Q,Y,H,G,z,W,V){let U=X,$=Y===16?d8.hex:d8.decBinOct,j=Y===16?RX.hex:Y===10?RX.dec:Y===8?RX.oct:RX.bin,C=!1,A=0;for(let S=0,w=H==null?1/0:H;S<w;++S){let P=J.charCodeAt(X),b;if(P===95&&z!=="bail"){let t=J.charCodeAt(X-1),m=J.charCodeAt(X+1);if(!z){if(V)return{n:null,pos:X};W.numericSeparatorInEscapeSequence(X,Z,Q)}else if(Number.isNaN(m)||!j(m)||$.has(t)||$.has(m)){if(V)return{n:null,pos:X};W.unexpectedNumericSeparator(X,Z,Q)}++X;continue}if(P>=97)b=P-97+10;else if(P>=65)b=P-65+10;else if(CK(P))b=P-48;else b=1/0;if(b>=Y)if(b<=9&&V)return{n:null,pos:X};else if(b<=9&&W.invalidDigit(X,Z,Q,Y))b=0;else if(G)b=0,C=!0;else break;++X,A=A*Y+b}if(X===U||H!=null&&X-U!==H||C)return{n:null,pos:X};return{n:A,pos:X}}function j4(J,X,Z,Q,Y,H){let G=J.charCodeAt(X),z;if(G===123){if(++X,{code:z,pos:X}=f2(J,X,Z,Q,J.indexOf("}",X)-X,!0,Y,H),++X,z!==null&&z>1114111)if(Y)H.invalidCodePoint(X,Z,Q);else return{code:null,pos:X}}else({code:z,pos:X}=f2(J,X,Z,Q,4,!1,Y,H));return{code:z,pos:X}}function M9(J,X,Z){return new i0(Z,J-X,J)}var NK=new Set([103,109,115,105,121,117,100,118]);class m0{constructor(J){let X=J.startIndex||0;this.type=J.type,this.value=J.value,this.start=X+J.start,this.end=X+J.end,this.loc=new I9(J.startLoc,J.endLoc)}}class M4 extends q4{constructor(J,X){super();this.isLookahead=void 0,this.tokens=[],this.errorHandlers_readInt={invalidDigit:(Z,Q,Y,H)=>{if(!(this.optionFlags&2048))return!1;return this.raise(M.InvalidDigit,M9(Z,Q,Y),{radix:H}),!0},numericSeparatorInEscapeSequence:this.errorBuilder(M.NumericSeparatorInEscapeSequence),unexpectedNumericSeparator:this.errorBuilder(M.UnexpectedNumericSeparator)},this.errorHandlers_readCodePoint=Object.assign({},this.errorHandlers_readInt,{invalidEscapeSequence:this.errorBuilder(M.InvalidEscapeSequence),invalidCodePoint:this.errorBuilder(M.InvalidCodePoint)}),this.errorHandlers_readStringContents_string=Object.assign({},this.errorHandlers_readCodePoint,{strictNumericEscape:(Z,Q,Y)=>{this.recordStrictModeErrors(M.StrictNumericEscape,M9(Z,Q,Y))},unterminated:(Z,Q,Y)=>{throw this.raise(M.UnterminatedString,M9(Z-1,Q,Y))}}),this.errorHandlers_readStringContents_template=Object.assign({},this.errorHandlers_readCodePoint,{strictNumericEscape:this.errorBuilder(M.StrictNumericEscape),unterminated:(Z,Q,Y)=>{throw this.raise(M.UnterminatedTemplate,M9(Z,Q,Y))}}),this.state=new a2,this.state.init(J),this.input=X,this.length=X.length,this.comments=[],this.isLookahead=!1}pushToken(J){this.tokens.length=this.state.tokensLength,this.tokens.push(J),++this.state.tokensLength}next(){if(this.checkKeywordEscapes(),this.optionFlags&256)this.pushToken(new m0(this.state));this.state.lastTokEndLoc=this.state.endLoc,this.state.lastTokStartLoc=this.state.startLoc,this.nextToken()}eat(J){if(this.match(J))return this.next(),!0;else return!1}match(J){return this.state.type===J}createLookaheadState(J){return{pos:J.pos,value:null,type:J.type,start:J.start,end:J.end,context:[this.curContext()],inType:J.inType,startLoc:J.startLoc,lastTokEndLoc:J.lastTokEndLoc,curLine:J.curLine,lineStart:J.lineStart,curPosition:J.curPosition}}lookahead(){let J=this.state;this.state=this.createLookaheadState(J),this.isLookahead=!0,this.nextToken(),this.isLookahead=!1;let X=this.state;return this.state=J,X}nextTokenStart(){return this.nextTokenStartSince(this.state.pos)}nextTokenStartSince(J){return b2.lastIndex=J,b2.test(this.input)?b2.lastIndex:J}lookaheadCharCode(){return this.lookaheadCharCodeSince(this.state.pos)}lookaheadCharCodeSince(J){return this.input.charCodeAt(this.nextTokenStartSince(J))}nextTokenInLineStart(){return this.nextTokenInLineStartSince(this.state.pos)}nextTokenInLineStartSince(J){return v2.lastIndex=J,v2.test(this.input)?v2.lastIndex:J}lookaheadInLineCharCode(){return this.input.charCodeAt(this.nextTokenInLineStart())}codePointAtPos(J){let X=this.input.charCodeAt(J);if((X&64512)===55296&&++J<this.input.length){let Z=this.input.charCodeAt(J);if((Z&64512)===56320)X=65536+((X&1023)<<10)+(Z&1023)}return X}setStrict(J){if(this.state.strict=J,J)this.state.strictErrors.forEach(([X,Z])=>this.raise(X,Z)),this.state.strictErrors.clear()}curContext(){return this.state.context[this.state.context.length-1]}nextToken(){if(this.skipSpace(),this.state.start=this.state.pos,!this.isLookahead)this.state.startLoc=this.state.curPosition();if(this.state.pos>=this.length){this.finishToken(140);return}this.getTokenFromCode(this.codePointAtPos(this.state.pos))}skipBlockComment(J){let X;if(!this.isLookahead)X=this.state.curPosition();let Z=this.state.pos,Q=this.input.indexOf(J,Z+2);if(Q===-1)throw this.raise(M.UnterminatedComment,this.state.curPosition());this.state.pos=Q+J.length,BX.lastIndex=Z+2;while(BX.test(this.input)&&BX.lastIndex<=Q)++this.state.curLine,this.state.lineStart=BX.lastIndex;if(this.isLookahead)return;let Y={type:"CommentBlock",value:this.input.slice(Z+2,Q),start:this.sourceToOffsetPos(Z),end:this.sourceToOffsetPos(Q+J.length),loc:new I9(X,this.state.curPosition())};if(this.optionFlags&256)this.pushToken(Y);return Y}skipLineComment(J){let X=this.state.pos,Z;if(!this.isLookahead)Z=this.state.curPosition();let Q=this.input.charCodeAt(this.state.pos+=J);if(this.state.pos<this.length)while(!lJ(Q)&&++this.state.pos<this.length)Q=this.input.charCodeAt(this.state.pos);if(this.isLookahead)return;let Y=this.state.pos,G={type:"CommentLine",value:this.input.slice(X+J,Y),start:this.sourceToOffsetPos(X),end:this.sourceToOffsetPos(Y),loc:new I9(Z,this.state.curPosition())};if(this.optionFlags&256)this.pushToken(G);return G}skipSpace(){let J=this.state.pos,X=this.optionFlags&4096?[]:null;J:while(this.state.pos<this.length){let Z=this.input.charCodeAt(this.state.pos);switch(Z){case 32:case 160:case 9:++this.state.pos;break;case 13:if(this.input.charCodeAt(this.state.pos+1)===10)++this.state.pos;case 10:case 8232:case 8233:++this.state.pos,++this.state.curLine,this.state.lineStart=this.state.pos;break;case 47:switch(this.input.charCodeAt(this.state.pos+1)){case 42:{let Q=this.skipBlockComment("*/");if(Q!==void 0)this.addComment(Q),X==null||X.push(Q);break}case 47:{let Q=this.skipLineComment(2);if(Q!==void 0)this.addComment(Q),X==null||X.push(Q);break}default:break J}break;default:if(MK(Z))++this.state.pos;else if(Z===45&&!this.inModule&&this.optionFlags&8192){let Q=this.state.pos;if(this.input.charCodeAt(Q+1)===45&&this.input.charCodeAt(Q+2)===62&&(J===0||this.state.lineStart>J)){let Y=this.skipLineComment(3);if(Y!==void 0)this.addComment(Y),X==null||X.push(Y)}else break J}else if(Z===60&&!this.inModule&&this.optionFlags&8192){let Q=this.state.pos;if(this.input.charCodeAt(Q+1)===33&&this.input.charCodeAt(Q+2)===45&&this.input.charCodeAt(Q+3)===45){let Y=this.skipLineComment(4);if(Y!==void 0)this.addComment(Y),X==null||X.push(Y)}else break J}else break J}}if((X==null?void 0:X.length)>0){let Z=this.state.pos,Q={start:this.sourceToOffsetPos(J),end:this.sourceToOffsetPos(Z),comments:X,leadingNode:null,trailingNode:null,containingNode:null};this.state.commentStack.push(Q)}}finishToken(J,X){this.state.end=this.state.pos,this.state.endLoc=this.state.curPosition();let Z=this.state.type;if(this.state.type=J,this.state.value=X,!this.isLookahead)this.updateContext(Z)}replaceToken(J){this.state.type=J,this.updateContext()}readToken_numberSign(){if(this.state.pos===0&&this.readToken_interpreter())return;let J=this.state.pos+1,X=this.codePointAtPos(J);if(X>=48&&X<=57)throw this.raise(M.UnexpectedDigitAfterHash,this.state.curPosition());if(X===123||X===91&&this.hasPlugin("recordAndTuple")){if(this.expectPlugin("recordAndTuple"),this.getPluginOption("recordAndTuple","syntaxType")==="bar")throw this.raise(X===123?M.RecordExpressionHashIncorrectStartSyntaxType:M.TupleExpressionHashIncorrectStartSyntaxType,this.state.curPosition());if(this.state.pos+=2,X===123)this.finishToken(7);else this.finishToken(1)}else if(l0(X))++this.state.pos,this.finishToken(139,this.readWord1(X));else if(X===92)++this.state.pos,this.finishToken(139,this.readWord1());else this.finishOp(27,1)}readToken_dot(){let J=this.input.charCodeAt(this.state.pos+1);if(J>=48&&J<=57){this.readNumber(!0);return}if(J===46&&this.input.charCodeAt(this.state.pos+2)===46)this.state.pos+=3,this.finishToken(21);else++this.state.pos,this.finishToken(16)}readToken_slash(){if(this.input.charCodeAt(this.state.pos+1)===61)this.finishOp(31,2);else this.finishOp(56,1)}readToken_interpreter(){if(this.state.pos!==0||this.length<2)return!1;let J=this.input.charCodeAt(this.state.pos+1);if(J!==33)return!1;let X=this.state.pos;this.state.pos+=1;while(!lJ(J)&&++this.state.pos<this.length)J=this.input.charCodeAt(this.state.pos);let Z=this.input.slice(X+2,this.state.pos);return this.finishToken(28,Z),!0}readToken_mult_modulo(J){let X=J===42?55:54,Z=1,Q=this.input.charCodeAt(this.state.pos+1);if(J===42&&Q===42)Z++,Q=this.input.charCodeAt(this.state.pos+2),X=57;if(Q===61&&!this.state.inType)Z++,X=J===37?33:30;this.finishOp(X,Z)}readToken_pipe_amp(J){let X=this.input.charCodeAt(this.state.pos+1);if(X===J){if(this.input.charCodeAt(this.state.pos+2)===61)this.finishOp(30,3);else this.finishOp(J===124?41:42,2);return}if(J===124){if(X===62){this.finishOp(39,2);return}if(this.hasPlugin("recordAndTuple")&&X===125){if(this.getPluginOption("recordAndTuple","syntaxType")!=="bar")throw this.raise(M.RecordExpressionBarIncorrectEndSyntaxType,this.state.curPosition());this.state.pos+=2,this.finishToken(9);return}if(this.hasPlugin("recordAndTuple")&&X===93){if(this.getPluginOption("recordAndTuple","syntaxType")!=="bar")throw this.raise(M.TupleExpressionBarIncorrectEndSyntaxType,this.state.curPosition());this.state.pos+=2,this.finishToken(4);return}}if(X===61){this.finishOp(30,2);return}this.finishOp(J===124?43:45,1)}readToken_caret(){let J=this.input.charCodeAt(this.state.pos+1);if(J===61&&!this.state.inType)this.finishOp(32,2);else if(J===94&&this.hasPlugin(["pipelineOperator",{proposal:"hack",topicToken:"^^"}])){if(this.finishOp(37,2),this.input.codePointAt(this.state.pos)===94)this.unexpected()}else this.finishOp(44,1)}readToken_atSign(){if(this.input.charCodeAt(this.state.pos+1)===64&&this.hasPlugin(["pipelineOperator",{proposal:"hack",topicToken:"@@"}]))this.finishOp(38,2);else this.finishOp(26,1)}readToken_plus_min(J){let X=this.input.charCodeAt(this.state.pos+1);if(X===J){this.finishOp(34,2);return}if(X===61)this.finishOp(30,2);else this.finishOp(53,1)}readToken_lt(){let{pos:J}=this.state,X=this.input.charCodeAt(J+1);if(X===60){if(this.input.charCodeAt(J+2)===61){this.finishOp(30,3);return}this.finishOp(51,2);return}if(X===61){this.finishOp(49,2);return}this.finishOp(47,1)}readToken_gt(){let{pos:J}=this.state,X=this.input.charCodeAt(J+1);if(X===62){let Z=this.input.charCodeAt(J+2)===62?3:2;if(this.input.charCodeAt(J+Z)===61){this.finishOp(30,Z+1);return}this.finishOp(52,Z);return}if(X===61){this.finishOp(49,2);return}this.finishOp(48,1)}readToken_eq_excl(J){let X=this.input.charCodeAt(this.state.pos+1);if(X===61){this.finishOp(46,this.input.charCodeAt(this.state.pos+2)===61?3:2);return}if(J===61&&X===62){this.state.pos+=2,this.finishToken(19);return}this.finishOp(J===61?29:35,1)}readToken_question(){let J=this.input.charCodeAt(this.state.pos+1),X=this.input.charCodeAt(this.state.pos+2);if(J===63)if(X===61)this.finishOp(30,3);else this.finishOp(40,2);else if(J===46&&!(X>=48&&X<=57))this.state.pos+=2,this.finishToken(18);else++this.state.pos,this.finishToken(17)}getTokenFromCode(J){switch(J){case 46:this.readToken_dot();return;case 40:++this.state.pos,this.finishToken(10);return;case 41:++this.state.pos,this.finishToken(11);return;case 59:++this.state.pos,this.finishToken(13);return;case 44:++this.state.pos,this.finishToken(12);return;case 91:if(this.hasPlugin("recordAndTuple")&&this.input.charCodeAt(this.state.pos+1)===124){if(this.getPluginOption("recordAndTuple","syntaxType")!=="bar")throw this.raise(M.TupleExpressionBarIncorrectStartSyntaxType,this.state.curPosition());this.state.pos+=2,this.finishToken(2)}else++this.state.pos,this.finishToken(0);return;case 93:++this.state.pos,this.finishToken(3);return;case 123:if(this.hasPlugin("recordAndTuple")&&this.input.charCodeAt(this.state.pos+1)===124){if(this.getPluginOption("recordAndTuple","syntaxType")!=="bar")throw this.raise(M.RecordExpressionBarIncorrectStartSyntaxType,this.state.curPosition());this.state.pos+=2,this.finishToken(6)}else++this.state.pos,this.finishToken(5);return;case 125:++this.state.pos,this.finishToken(8);return;case 58:if(this.hasPlugin("functionBind")&&this.input.charCodeAt(this.state.pos+1)===58)this.finishOp(15,2);else++this.state.pos,this.finishToken(14);return;case 63:this.readToken_question();return;case 96:this.readTemplateToken();return;case 48:{let X=this.input.charCodeAt(this.state.pos+1);if(X===120||X===88){this.readRadixNumber(16);return}if(X===111||X===79){this.readRadixNumber(8);return}if(X===98||X===66){this.readRadixNumber(2);return}}case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:this.readNumber(!1);return;case 34:case 39:this.readString(J);return;case 47:this.readToken_slash();return;case 37:case 42:this.readToken_mult_modulo(J);return;case 124:case 38:this.readToken_pipe_amp(J);return;case 94:this.readToken_caret();return;case 43:case 45:this.readToken_plus_min(J);return;case 60:this.readToken_lt();return;case 62:this.readToken_gt();return;case 61:case 33:this.readToken_eq_excl(J);return;case 126:this.finishOp(36,1);return;case 64:this.readToken_atSign();return;case 35:this.readToken_numberSign();return;case 92:this.readWord();return;default:if(l0(J)){this.readWord(J);return}}throw this.raise(M.InvalidOrUnexpectedToken,this.state.curPosition(),{unexpected:String.fromCodePoint(J)})}finishOp(J,X){let Z=this.input.slice(this.state.pos,this.state.pos+X);this.state.pos+=X,this.finishToken(J,Z)}readRegexp(){let J=this.state.startLoc,X=this.state.start+1,Z,Q,{pos:Y}=this.state;for(;;++Y){if(Y>=this.length)throw this.raise(M.UnterminatedRegExp,a1(J,1));let W=this.input.charCodeAt(Y);if(lJ(W))throw this.raise(M.UnterminatedRegExp,a1(J,1));if(Z)Z=!1;else{if(W===91)Q=!0;else if(W===93&&Q)Q=!1;else if(W===47&&!Q)break;Z=W===92}}let H=this.input.slice(X,Y);++Y;let G="",z=()=>a1(J,Y+2-X);while(Y<this.length){let W=this.codePointAtPos(Y),V=String.fromCharCode(W);if(NK.has(W)){if(W===118){if(G.includes("u"))this.raise(M.IncompatibleRegExpUVFlags,z())}else if(W===117){if(G.includes("v"))this.raise(M.IncompatibleRegExpUVFlags,z())}if(G.includes(V))this.raise(M.DuplicateRegExpFlags,z())}else if(cJ(W)||W===92)this.raise(M.MalformedRegExpFlags,z());else break;++Y,G+=V}this.state.pos=Y,this.finishToken(138,{pattern:H,flags:G})}readInt(J,X,Z=!1,Q=!0){let{n:Y,pos:H}=F4(this.input,this.state.pos,this.state.lineStart,this.state.curLine,J,X,Z,Q,this.errorHandlers_readInt,!1);return this.state.pos=H,Y}readRadixNumber(J){let X=this.state.pos,Z=this.state.curPosition(),Q=!1;this.state.pos+=2;let Y=this.readInt(J);if(Y==null)this.raise(M.InvalidDigit,a1(Z,2),{radix:J});let H=this.input.charCodeAt(this.state.pos);if(H===110)++this.state.pos,Q=!0;else if(H===109)throw this.raise(M.InvalidDecimal,Z);if(l0(this.codePointAtPos(this.state.pos)))throw this.raise(M.NumberIdentifier,this.state.curPosition());if(Q){let G=this.input.slice(X,this.state.pos).replace(/[_n]/g,"");this.finishToken(136,G);return}this.finishToken(135,Y)}readNumber(J){let X=this.state.pos,Z=this.state.curPosition(),Q=!1,Y=!1,H=!1,G=!1;if(!J&&this.readInt(10)===null)this.raise(M.InvalidNumber,this.state.curPosition());let z=this.state.pos-X>=2&&this.input.charCodeAt(X)===48;if(z){let j=this.input.slice(X,this.state.pos);if(this.recordStrictModeErrors(M.StrictOctalLiteral,Z),!this.state.strict){let C=j.indexOf("_");if(C>0)this.raise(M.ZeroDigitNumericSeparator,a1(Z,C))}G=z&&!/[89]/.test(j)}let W=this.input.charCodeAt(this.state.pos);if(W===46&&!G)++this.state.pos,this.readInt(10),Q=!0,W=this.input.charCodeAt(this.state.pos);if((W===69||W===101)&&!G){if(W=this.input.charCodeAt(++this.state.pos),W===43||W===45)++this.state.pos;if(this.readInt(10)===null)this.raise(M.InvalidOrMissingExponent,Z);Q=!0,H=!0,W=this.input.charCodeAt(this.state.pos)}if(W===110){if(Q||z)this.raise(M.InvalidBigIntLiteral,Z);++this.state.pos,Y=!0}if(W===109){if(this.expectPlugin("decimal",this.state.curPosition()),H||z)this.raise(M.InvalidDecimal,Z);++this.state.pos;var V=!0}if(l0(this.codePointAtPos(this.state.pos)))throw this.raise(M.NumberIdentifier,this.state.curPosition());let U=this.input.slice(X,this.state.pos).replace(/[_mn]/g,"");if(Y){this.finishToken(136,U);return}if(V){this.finishToken(137,U);return}let $=G?parseInt(U,8):parseFloat(U);this.finishToken(135,$)}readCodePoint(J){let{code:X,pos:Z}=j4(this.input,this.state.pos,this.state.lineStart,this.state.curLine,J,this.errorHandlers_readCodePoint);return this.state.pos=Z,X}readString(J){let{str:X,pos:Z,curLine:Q,lineStart:Y}=a8(J===34?"double":"single",this.input,this.state.pos+1,this.state.lineStart,this.state.curLine,this.errorHandlers_readStringContents_string);this.state.pos=Z+1,this.state.lineStart=Y,this.state.curLine=Q,this.finishToken(134,X)}readTemplateContinuation(){if(!this.match(8))this.unexpected(null,8);this.state.pos--,this.readTemplateToken()}readTemplateToken(){let J=this.input[this.state.pos],{str:X,firstInvalidLoc:Z,pos:Q,curLine:Y,lineStart:H}=a8("template",this.input,this.state.pos+1,this.state.lineStart,this.state.curLine,this.errorHandlers_readStringContents_template);if(this.state.pos=Q+1,this.state.lineStart=H,this.state.curLine=Y,Z)this.state.firstInvalidTemplateEscapePos=new i0(Z.curLine,Z.pos-Z.lineStart,this.sourceToOffsetPos(Z.pos));if(this.input.codePointAt(Q)===96)this.finishToken(24,Z?null:J+X+"`");else this.state.pos++,this.finishToken(25,Z?null:J+X+"${")}recordStrictModeErrors(J,X){let Z=X.index;if(this.state.strict&&!this.state.strictErrors.has(Z))this.raise(J,X);else this.state.strictErrors.set(Z,[J,X])}readWord1(J){this.state.containsEsc=!1;let X="",Z=this.state.pos,Q=this.state.pos;if(J!==void 0)this.state.pos+=J<=65535?1:2;while(this.state.pos<this.length){let Y=this.codePointAtPos(this.state.pos);if(cJ(Y))this.state.pos+=Y<=65535?1:2;else if(Y===92){this.state.containsEsc=!0,X+=this.input.slice(Q,this.state.pos);let H=this.state.curPosition(),G=this.state.pos===Z?l0:cJ;if(this.input.charCodeAt(++this.state.pos)!==117){this.raise(M.MissingUnicodeEscape,this.state.curPosition()),Q=this.state.pos-1;continue}++this.state.pos;let z=this.readCodePoint(!0);if(z!==null){if(!G(z))this.raise(M.EscapedCharNotAnIdentifier,H);X+=String.fromCodePoint(z)}Q=this.state.pos}else break}return X+this.input.slice(Q,this.state.pos)}readWord(J){let X=this.readWord1(J),Z=y2.get(X);if(Z!==void 0)this.finishToken(Z,XJ(Z));else this.finishToken(132,X)}checkKeywordEscapes(){let{type:J}=this.state;if(p2(J)&&this.state.containsEsc)this.raise(M.InvalidEscapedReservedWord,this.state.startLoc,{reservedWord:XJ(J)})}raise(J,X,Z={}){let Q=X instanceof i0?X:X.loc.start,Y=J(Q,Z);if(!(this.optionFlags&2048))throw Y;if(!this.isLookahead)this.state.errors.push(Y);return Y}raiseOverwrite(J,X,Z={}){let Q=X instanceof i0?X:X.loc.start,Y=Q.index,H=this.state.errors;for(let G=H.length-1;G>=0;G--){let z=H[G];if(z.loc.index===Y)return H[G]=J(Q,Z);if(z.loc.index<Y)break}return this.raise(J,X,Z)}updateContext(J){}unexpected(J,X){throw this.raise(M.UnexpectedToken,J!=null?J:this.state.startLoc,{expected:X?XJ(X):null})}expectPlugin(J,X){if(this.hasPlugin(J))return!0;throw this.raise(M.MissingPlugin,X!=null?X:this.state.startLoc,{missingPlugin:[J]})}expectOnePlugin(J){if(!J.some((X)=>this.hasPlugin(X)))throw this.raise(M.MissingOneOfPlugins,this.state.startLoc,{missingPlugin:J})}errorBuilder(J){return(X,Z,Q)=>{this.raise(J,M9(X,Z,Q))}}}class O4{constructor(){this.privateNames=new Set,this.loneAccessors=new Map,this.undefinedPrivateNames=new Map}}class A4{constructor(J){this.parser=void 0,this.stack=[],this.undefinedPrivateNames=new Map,this.parser=J}current(){return this.stack[this.stack.length-1]}enter(){this.stack.push(new O4)}exit(){let J=this.stack.pop(),X=this.current();for(let[Z,Q]of Array.from(J.undefinedPrivateNames))if(X){if(!X.undefinedPrivateNames.has(Z))X.undefinedPrivateNames.set(Z,Q)}else this.parser.raise(M.InvalidPrivateFieldResolution,Q,{identifierName:Z})}declarePrivateName(J,X,Z){let{privateNames:Q,loneAccessors:Y,undefinedPrivateNames:H}=this.current(),G=Q.has(J);if(X&3){let z=G&&Y.get(J);if(z){let W=z&4,V=X&4,U=z&3,$=X&3;if(G=U===$||W!==V,!G)Y.delete(J)}else if(!G)Y.set(J,X)}if(G)this.parser.raise(M.PrivateNameRedeclaration,Z,{identifierName:J});Q.add(J),H.delete(J)}usePrivateName(J,X){let Z;for(Z of this.stack)if(Z.privateNames.has(J))return;if(Z)Z.undefinedPrivateNames.set(J,X);else this.parser.raise(M.InvalidPrivateFieldResolution,X,{identifierName:J})}}class S9{constructor(J=0){this.type=J}canBeArrowParameterDeclaration(){return this.type===2||this.type===1}isCertainlyParameterDeclaration(){return this.type===3}}class s2 extends S9{constructor(J){super(J);this.declarationErrors=new Map}recordDeclarationError(J,X){let Z=X.index;this.declarationErrors.set(Z,[J,X])}clearDeclarationError(J){this.declarationErrors.delete(J)}iterateErrors(J){this.declarationErrors.forEach(J)}}class C4{constructor(J){this.parser=void 0,this.stack=[new S9],this.parser=J}enter(J){this.stack.push(J)}exit(){this.stack.pop()}recordParameterInitializerError(J,X){let Z=X.loc.start,{stack:Q}=this,Y=Q.length-1,H=Q[Y];while(!H.isCertainlyParameterDeclaration()){if(H.canBeArrowParameterDeclaration())H.recordDeclarationError(J,Z);else return;H=Q[--Y]}this.parser.raise(J,Z)}recordArrowParameterBindingError(J,X){let{stack:Z}=this,Q=Z[Z.length-1],Y=X.loc.start;if(Q.isCertainlyParameterDeclaration())this.parser.raise(J,Y);else if(Q.canBeArrowParameterDeclaration())Q.recordDeclarationError(J,Y);else return}recordAsyncArrowParametersError(J){let{stack:X}=this,Z=X.length-1,Q=X[Z];while(Q.canBeArrowParameterDeclaration()){if(Q.type===2)Q.recordDeclarationError(M.AwaitBindingIdentifier,J);Q=X[--Z]}}validateAsPattern(){let{stack:J}=this,X=J[J.length-1];if(!X.canBeArrowParameterDeclaration())return;X.iterateErrors(([Z,Q])=>{this.parser.raise(Z,Q);let Y=J.length-2,H=J[Y];while(H.canBeArrowParameterDeclaration())H.clearDeclarationError(Q.index),H=J[--Y]})}}function wK(){return new S9(3)}function SK(){return new s2(1)}function PK(){return new s2(2)}function D4(){return new S9}class I4 extends M4{addExtra(J,X,Z,Q=!0){if(!J)return;let{extra:Y}=J;if(Y==null)Y={},J.extra=Y;if(Q)Y[X]=Z;else Object.defineProperty(Y,X,{enumerable:Q,value:Z})}isContextual(J){return this.state.type===J&&!this.state.containsEsc}isUnparsedContextual(J,X){if(this.input.startsWith(X,J)){let Z=this.input.charCodeAt(J+X.length);return!(cJ(Z)||(Z&64512)===55296)}return!1}isLookaheadContextual(J){let X=this.nextTokenStart();return this.isUnparsedContextual(X,J)}eatContextual(J){if(this.isContextual(J))return this.next(),!0;return!1}expectContextual(J,X){if(!this.eatContextual(J)){if(X!=null)throw this.raise(X,this.state.startLoc);this.unexpected(null,J)}}canInsertSemicolon(){return this.match(140)||this.match(8)||this.hasPrecedingLineBreak()}hasPrecedingLineBreak(){return r8(this.input,this.offsetToSourcePos(this.state.lastTokEndLoc.index),this.state.start)}hasFollowingLineBreak(){return r8(this.input,this.state.end,this.nextTokenStart())}isLineTerminator(){return this.eat(13)||this.canInsertSemicolon()}semicolon(J=!0){if(J?this.isLineTerminator():this.eat(13))return;this.raise(M.MissingSemicolon,this.state.lastTokEndLoc)}expect(J,X){if(!this.eat(J))this.unexpected(X,J)}tryParse(J,X=this.state.clone()){let Z={node:null};try{let Q=J((Y=null)=>{throw Z.node=Y,Z});if(this.state.errors.length>X.errors.length){let Y=this.state;return this.state=X,this.state.tokensLength=Y.tokensLength,{node:Q,error:Y.errors[X.errors.length],thrown:!1,aborted:!1,failState:Y}}return{node:Q,error:null,thrown:!1,aborted:!1,failState:null}}catch(Q){let Y=this.state;if(this.state=X,Q instanceof SyntaxError)return{node:null,error:Q,thrown:!0,aborted:!1,failState:Y};if(Q===Z)return{node:Z.node,error:null,thrown:!1,aborted:!0,failState:Y};throw Q}}checkExpressionErrors(J,X){if(!J)return!1;let{shorthandAssignLoc:Z,doubleProtoLoc:Q,privateKeyLoc:Y,optionalParametersLoc:H,voidPatternLoc:G}=J,z=!!Z||!!Q||!!H||!!Y||!!G;if(!X)return z;if(Z!=null)this.raise(M.InvalidCoverInitializedName,Z);if(Q!=null)this.raise(M.DuplicateProto,Q);if(Y!=null)this.raise(M.UnexpectedPrivateField,Y);if(H!=null)this.unexpected(H);if(G!=null)this.raise(M.InvalidCoverDiscardElement,G)}isLiteralPropertyName(){return X4(this.state.type)}isPrivateName(J){return J.type==="PrivateName"}getPrivateNameSV(J){return J.id.name}hasPropertyAsPrivateName(J){return(J.type==="MemberExpression"||J.type==="OptionalMemberExpression")&&this.isPrivateName(J.property)}isObjectProperty(J){return J.type==="ObjectProperty"}isObjectMethod(J){return J.type==="ObjectMethod"}initializeScopes(J=this.options.sourceType==="module"){let X=this.state.labels;this.state.labels=[];let Z=this.exportedIdentifiers;this.exportedIdentifiers=new Set;let Q=this.inModule;this.inModule=J;let Y=this.scope,H=this.getScopeHandler();this.scope=new H(this,J);let G=this.prodParam;this.prodParam=new B4;let z=this.classScope;this.classScope=new A4(this);let W=this.expressionScope;return this.expressionScope=new C4(this),()=>{this.state.labels=X,this.exportedIdentifiers=Z,this.inModule=Q,this.scope=Y,this.prodParam=G,this.classScope=z,this.expressionScope=W}}enterInitialScopes(){let J=0;if(this.inModule||this.optionFlags&1)J|=2;if(this.optionFlags&32)J|=1;let X=!this.inModule&&this.options.sourceType==="commonjs";if(X||this.optionFlags&2)J|=4;this.prodParam.enter(J);let Z=X?514:1;if(this.optionFlags&4)Z|=512;this.scope.enter(Z)}checkDestructuringPrivate(J){let{privateKeyLoc:X}=J;if(X!==null)this.expectPlugin("destructuringPrivate",X)}}class D9{constructor(){this.shorthandAssignLoc=null,this.doubleProtoLoc=null,this.privateKeyLoc=null,this.optionalParametersLoc=null,this.voidPatternLoc=null}}class w9{constructor(J,X,Z){if(this.type="",this.start=X,this.end=0,this.loc=new I9(Z),(J==null?void 0:J.optionFlags)&128)this.range=[X,0];if(J!=null&&J.filename)this.loc.filename=J.filename}}var h2=w9.prototype;h2.__clone=function(){let J=new w9(void 0,this.start,this.loc.start),X=Object.keys(this);for(let Z=0,Q=X.length;Z<Q;Z++){let Y=X[Z];if(Y!=="leadingComments"&&Y!=="trailingComments"&&Y!=="innerComments")J[Y]=this[Y]}return J};class N4 extends I4{startNode(){let J=this.state.startLoc;return new w9(this,J.index,J)}startNodeAt(J){return new w9(this,J.index,J)}startNodeAtNode(J){return this.startNodeAt(J.loc.start)}finishNode(J,X){return this.finishNodeAt(J,X,this.state.lastTokEndLoc)}finishNodeAt(J,X,Z){if(J.type=X,J.end=Z.index,J.loc.end=Z,this.optionFlags&128)J.range[1]=Z.index;if(this.optionFlags&4096)this.processComment(J);return J}resetStartLocation(J,X){if(J.start=X.index,J.loc.start=X,this.optionFlags&128)J.range[0]=X.index}resetEndLocation(J,X=this.state.lastTokEndLoc){if(J.end=X.index,J.loc.end=X,this.optionFlags&128)J.range[1]=X.index}resetStartLocationFromNode(J,X){this.resetStartLocation(J,X.loc.start)}castNodeTo(J,X){return J.type=X,J}cloneIdentifier(J){let{type:X,start:Z,end:Q,loc:Y,range:H,name:G}=J,z=Object.create(h2);if(z.type=X,z.start=Z,z.end=Q,z.loc=Y,z.range=H,z.name=G,J.extra)z.extra=J.extra;return z}cloneStringLiteral(J){let{type:X,start:Z,end:Q,loc:Y,range:H,extra:G}=J,z=Object.create(h2);return z.type=X,z.start=Z,z.end=Q,z.loc=Y,z.range=H,z.extra=G,z.value=J.value,z}}var w4=(J)=>{return J.type==="ParenthesizedExpression"?w4(J.expression):J};class S4 extends N4{toAssignable(J,X=!1){var Z,Q;let Y=void 0;if(J.type==="ParenthesizedExpression"||(Z=J.extra)!=null&&Z.parenthesized)if(Y=w4(J),X){if(Y.type==="Identifier")this.expressionScope.recordArrowParameterBindingError(M.InvalidParenthesizedAssignment,J);else if(Y.type!=="MemberExpression"&&!this.isOptionalMemberExpression(Y))this.raise(M.InvalidParenthesizedAssignment,J)}else this.raise(M.InvalidParenthesizedAssignment,J);switch(J.type){case"Identifier":case"ObjectPattern":case"ArrayPattern":case"AssignmentPattern":case"RestElement":case"VoidPattern":break;case"ObjectExpression":this.castNodeTo(J,"ObjectPattern");for(let G=0,z=J.properties.length,W=z-1;G<z;G++){var H;let V=J.properties[G],U=G===W;if(this.toAssignableObjectExpressionProp(V,U,X),U&&V.type==="RestElement"&&(H=J.extra)!=null&&H.trailingCommaLoc)this.raise(M.RestTrailingComma,J.extra.trailingCommaLoc)}break;case"ObjectProperty":{let{key:G,value:z}=J;if(this.isPrivateName(G))this.classScope.usePrivateName(this.getPrivateNameSV(G),G.loc.start);this.toAssignable(z,X);break}case"SpreadElement":throw Error("Internal @babel/parser error (this is a bug, please report it). SpreadElement should be converted by .toAssignable's caller.");case"ArrayExpression":this.castNodeTo(J,"ArrayPattern"),this.toAssignableList(J.elements,(Q=J.extra)==null?void 0:Q.trailingCommaLoc,X);break;case"AssignmentExpression":if(J.operator!=="=")this.raise(M.MissingEqInAssignment,J.left.loc.end);if(this.castNodeTo(J,"AssignmentPattern"),delete J.operator,J.left.type==="VoidPattern")this.raise(M.VoidPatternInitializer,J.left);this.toAssignable(J.left,X);break;case"ParenthesizedExpression":this.toAssignable(Y,X);break}}toAssignableObjectExpressionProp(J,X,Z){if(J.type==="ObjectMethod")this.raise(J.kind==="get"||J.kind==="set"?M.PatternHasAccessor:M.PatternHasMethod,J.key);else if(J.type==="SpreadElement"){this.castNodeTo(J,"RestElement");let Q=J.argument;if(this.checkToRestConversion(Q,!1),this.toAssignable(Q,Z),!X)this.raise(M.RestTrailingComma,J)}else this.toAssignable(J,Z)}toAssignableList(J,X,Z){let Q=J.length-1;for(let Y=0;Y<=Q;Y++){let H=J[Y];if(!H)continue;if(this.toAssignableListItem(J,Y,Z),H.type==="RestElement"){if(Y<Q)this.raise(M.RestTrailingComma,H);else if(X)this.raise(M.RestTrailingComma,X)}}}toAssignableListItem(J,X,Z){let Q=J[X];if(Q.type==="SpreadElement"){this.castNodeTo(Q,"RestElement");let Y=Q.argument;this.checkToRestConversion(Y,!0),this.toAssignable(Y,Z)}else this.toAssignable(Q,Z)}isAssignable(J,X){switch(J.type){case"Identifier":case"ObjectPattern":case"ArrayPattern":case"AssignmentPattern":case"RestElement":case"VoidPattern":return!0;case"ObjectExpression":{let Z=J.properties.length-1;return J.properties.every((Q,Y)=>{return Q.type!=="ObjectMethod"&&(Y===Z||Q.type!=="SpreadElement")&&this.isAssignable(Q)})}case"ObjectProperty":return this.isAssignable(J.value);case"SpreadElement":return this.isAssignable(J.argument);case"ArrayExpression":return J.elements.every((Z)=>Z===null||this.isAssignable(Z));case"AssignmentExpression":return J.operator==="=";case"ParenthesizedExpression":return this.isAssignable(J.expression);case"MemberExpression":case"OptionalMemberExpression":return!X;default:return!1}}toReferencedList(J,X){return J}toReferencedListDeep(J,X){this.toReferencedList(J,X);for(let Z of J)if((Z==null?void 0:Z.type)==="ArrayExpression")this.toReferencedListDeep(Z.elements)}parseSpread(J){let X=this.startNode();return this.next(),X.argument=this.parseMaybeAssignAllowIn(J,void 0),this.finishNode(X,"SpreadElement")}parseRestBinding(){let J=this.startNode();this.next();let X=this.parseBindingAtom();if(X.type==="VoidPattern")this.raise(M.UnexpectedVoidPattern,X);return J.argument=X,this.finishNode(J,"RestElement")}parseBindingAtom(){switch(this.state.type){case 0:{let J=this.startNode();return this.next(),J.elements=this.parseBindingList(3,93,1),this.finishNode(J,"ArrayPattern")}case 5:return this.parseObjectLike(8,!0);case 88:return this.parseVoidPattern(null)}return this.parseIdentifier()}parseBindingList(J,X,Z){let Q=Z&1,Y=[],H=!0;while(!this.eat(J)){if(H)H=!1;else this.expect(12);if(Q&&this.match(12))Y.push(null);else if(this.eat(J))break;else if(this.match(21)){let G=this.parseRestBinding();if(this.hasPlugin("flow")||Z&2)G=this.parseFunctionParamType(G);if(Y.push(G),!this.checkCommaAfterRest(X)){this.expect(J);break}}else{let G=[];if(Z&2){if(this.match(26)&&this.hasPlugin("decorators"))this.raise(M.UnsupportedParameterDecorator,this.state.startLoc);while(this.match(26))G.push(this.parseDecorator())}Y.push(this.parseBindingElement(Z,G))}}return Y}parseBindingRestProperty(J){if(this.next(),this.hasPlugin("discardBinding")&&this.match(88))J.argument=this.parseVoidPattern(null),this.raise(M.UnexpectedVoidPattern,J.argument);else J.argument=this.parseIdentifier();return this.checkCommaAfterRest(125),this.finishNode(J,"RestElement")}parseBindingProperty(){let{type:J,startLoc:X}=this.state;if(J===21)return this.parseBindingRestProperty(this.startNode());let Z=this.startNode();if(J===139)this.expectPlugin("destructuringPrivate",X),this.classScope.usePrivateName(this.state.value,X),Z.key=this.parsePrivateName();else this.parsePropertyName(Z);return Z.method=!1,this.parseObjPropValue(Z,X,!1,!1,!0,!1)}parseBindingElement(J,X){let Z=this.parseMaybeDefault();if(this.hasPlugin("flow")||J&2)this.parseFunctionParamType(Z);if(X.length)Z.decorators=X,this.resetStartLocationFromNode(Z,X[0]);return this.parseMaybeDefault(Z.loc.start,Z)}parseFunctionParamType(J){return J}parseMaybeDefault(J,X){if(J!=null||(J=this.state.startLoc),X=X!=null?X:this.parseBindingAtom(),!this.eat(29))return X;let Z=this.startNodeAt(J);if(X.type==="VoidPattern")this.raise(M.VoidPatternInitializer,X);return Z.left=X,Z.right=this.parseMaybeAssignAllowIn(),this.finishNode(Z,"AssignmentPattern")}isValidLVal(J,X,Z){switch(J){case"AssignmentPattern":return"left";case"RestElement":return"argument";case"ObjectProperty":return"value";case"ParenthesizedExpression":return"expression";case"ArrayPattern":return"elements";case"ObjectPattern":return"properties";case"VoidPattern":return!0}return!1}isOptionalMemberExpression(J){return J.type==="OptionalMemberExpression"}checkLVal(J,X,Z=64,Q=!1,Y=!1,H=!1){var G;let z=J.type;if(this.isObjectMethod(J))return;let W=this.isOptionalMemberExpression(J);if(W||z==="MemberExpression"){if(W){if(this.expectPlugin("optionalChainingAssign",J.loc.start),X.type!=="AssignmentExpression")this.raise(M.InvalidLhsOptionalChaining,J,{ancestor:X})}if(Z!==64)this.raise(M.InvalidPropertyBindingPattern,J);return}if(z==="Identifier"){this.checkIdentifier(J,Z,Y);let{name:A}=J;if(Q)if(Q.has(A))this.raise(M.ParamDupe,J);else Q.add(A);return}else if(z==="VoidPattern"&&X.type==="CatchClause")this.raise(M.VoidPatternCatchClauseParam,J);let V=this.isValidLVal(z,!(H||(G=J.extra)!=null&&G.parenthesized)&&X.type==="AssignmentExpression",Z);if(V===!0)return;if(V===!1){let A=Z===64?M.InvalidLhs:M.InvalidLhsBinding;this.raise(A,J,{ancestor:X});return}let U,$;if(typeof V==="string")U=V,$=z==="ParenthesizedExpression";else[U,$]=V;let j=z==="ArrayPattern"||z==="ObjectPattern"?{type:z}:X,C=J[U];if(Array.isArray(C)){for(let A of C)if(A)this.checkLVal(A,j,Z,Q,Y,$)}else if(C)this.checkLVal(C,j,Z,Q,Y,$)}checkIdentifier(J,X,Z=!1){if(this.state.strict&&(Z?z4(J.name,this.inModule):G4(J.name)))if(X===64)this.raise(M.StrictEvalArguments,J,{referenceName:J.name});else this.raise(M.StrictEvalArgumentsBinding,J,{bindingName:J.name});if(X&8192&&J.name==="let")this.raise(M.LetInLexicalBinding,J);if(!(X&64))this.declareNameFromIdentifier(J,X)}declareNameFromIdentifier(J,X){this.scope.declareName(J.name,X,J.loc.start)}checkToRestConversion(J,X){switch(J.type){case"ParenthesizedExpression":this.checkToRestConversion(J.expression,X);break;case"Identifier":case"MemberExpression":break;case"ArrayExpression":case"ObjectExpression":if(X)break;default:this.raise(M.InvalidRestAssignmentPattern,J)}}checkCommaAfterRest(J){if(!this.match(12))return!1;return this.raise(this.lookaheadCharCode()===J?M.RestTrailingComma:M.ElementAfterRest,this.state.startLoc),!0}}function TK(J){if(J==null)throw Error(`Unexpected ${J} value.`);return J}function s8(J){if(!J)throw Error("Assert fail")}var i=T0`typescript`({AbstractMethodHasImplementation:({methodName:J})=>`Method '${J}' cannot have an implementation because it is marked abstract.`,AbstractPropertyHasInitializer:({propertyName:J})=>`Property '${J}' cannot have an initializer because it is marked abstract.`,AccessorCannotBeOptional:"An 'accessor' property cannot be declared optional.",AccessorCannotDeclareThisParameter:"'get' and 'set' accessors cannot declare 'this' parameters.",AccessorCannotHaveTypeParameters:"An accessor cannot have type parameters.",ClassMethodHasDeclare:"Class methods cannot have the 'declare' modifier.",ClassMethodHasReadonly:"Class methods cannot have the 'readonly' modifier.",ConstInitializerMustBeStringOrNumericLiteralOrLiteralEnumReference:"A 'const' initializer in an ambient context must be a string or numeric literal or literal enum reference.",ConstructorHasTypeParameters:"Type parameters cannot appear on a constructor declaration.",DeclareAccessor:({kind:J})=>`'declare' is not allowed in ${J}ters.`,DeclareClassFieldHasInitializer:"Initializers are not allowed in ambient contexts.",DeclareFunctionHasImplementation:"An implementation cannot be declared in ambient contexts.",DuplicateAccessibilityModifier:({modifier:J})=>`Accessibility modifier already seen: '${J}'.`,DuplicateModifier:({modifier:J})=>`Duplicate modifier: '${J}'.`,EmptyHeritageClauseType:({token:J})=>`'${J}' list cannot be empty.`,EmptyTypeArguments:"Type argument list cannot be empty.",EmptyTypeParameters:"Type parameter list cannot be empty.",ExpectedAmbientAfterExportDeclare:"'export declare' must be followed by an ambient declaration.",ImportAliasHasImportType:"An import alias can not use 'import type'.",ImportReflectionHasImportType:"An `import module` declaration can not use `type` modifier",IncompatibleModifiers:({modifiers:J})=>`'${J[0]}' modifier cannot be used with '${J[1]}' modifier.`,IndexSignatureHasAbstract:"Index signatures cannot have the 'abstract' modifier.",IndexSignatureHasAccessibility:({modifier:J})=>`Index signatures cannot have an accessibility modifier ('${J}').`,IndexSignatureHasDeclare:"Index signatures cannot have the 'declare' modifier.",IndexSignatureHasOverride:"'override' modifier cannot appear on an index signature.",IndexSignatureHasStatic:"Index signatures cannot have the 'static' modifier.",InitializerNotAllowedInAmbientContext:"Initializers are not allowed in ambient contexts.",InvalidHeritageClauseType:({token:J})=>`'${J}' list can only include identifiers or qualified-names with optional type arguments.`,InvalidModifierOnAwaitUsingDeclaration:(J)=>`'${J}' modifier cannot appear on an await using declaration.`,InvalidModifierOnTypeMember:({modifier:J})=>`'${J}' modifier cannot appear on a type member.`,InvalidModifierOnTypeParameter:({modifier:J})=>`'${J}' modifier cannot appear on a type parameter.`,InvalidModifierOnTypeParameterPositions:({modifier:J})=>`'${J}' modifier can only appear on a type parameter of a class, interface or type alias.`,InvalidModifierOnUsingDeclaration:(J)=>`'${J}' modifier cannot appear on a using declaration.`,InvalidModifiersOrder:({orderedModifiers:J})=>`'${J[0]}' modifier must precede '${J[1]}' modifier.`,InvalidPropertyAccessAfterInstantiationExpression:"Invalid property access after an instantiation expression. You can either wrap the instantiation expression in parentheses, or delete the type arguments.",InvalidTupleMemberLabel:"Tuple members must be labeled with a simple identifier.",MissingInterfaceName:"'interface' declarations must be followed by an identifier.",NonAbstractClassHasAbstractMethod:"Abstract methods can only appear within an abstract class.",NonClassMethodPropertyHasAbstractModifier:"'abstract' modifier can only appear on a class, method, or property declaration.",OptionalTypeBeforeRequired:"A required element cannot follow an optional element.",OverrideNotInSubClass:"This member cannot have an 'override' modifier because its containing class does not extend another class.",PatternIsOptional:"A binding pattern parameter cannot be optional in an implementation signature.",PrivateElementHasAbstract:"Private elements cannot have the 'abstract' modifier.",PrivateElementHasAccessibility:({modifier:J})=>`Private elements cannot have an accessibility modifier ('${J}').`,ReadonlyForMethodSignature:"'readonly' modifier can only appear on a property declaration or index signature.",ReservedArrowTypeParam:"This syntax is reserved in files with the .mts or .cts extension. Add a trailing comma, as in `<T,>() => ...`.",ReservedTypeAssertion:"This syntax is reserved in files with the .mts or .cts extension. Use an `as` expression instead.",SetAccessorCannotHaveOptionalParameter:"A 'set' accessor cannot have an optional parameter.",SetAccessorCannotHaveRestParameter:"A 'set' accessor cannot have rest parameter.",SetAccessorCannotHaveReturnType:"A 'set' accessor cannot have a return type annotation.",SingleTypeParameterWithoutTrailingComma:({typeParameterName:J})=>`Single type parameter ${J} should have a trailing comma. Example usage: <${J},>.`,StaticBlockCannotHaveModifier:"Static class blocks cannot have any modifier.",TupleOptionalAfterType:"A labeled tuple optional element must be declared using a question mark after the name and before the colon (`name?: type`), rather than after the type (`name: type?`).",TypeAnnotationAfterAssign:"Type annotations must come before default assignments, e.g. instead of `age = 25: number` use `age: number = 25`.",TypeImportCannotSpecifyDefaultAndNamed:"A type-only import can specify a default import or named bindings, but not both.",TypeModifierIsUsedInTypeExports:"The 'type' modifier cannot be used on a named export when 'export type' is used on its export statement.",TypeModifierIsUsedInTypeImports:"The 'type' modifier cannot be used on a named import when 'import type' is used on its import statement.",UnexpectedParameterModifier:"A parameter property is only allowed in a constructor implementation.",UnexpectedReadonly:"'readonly' type modifier is only permitted on array and tuple literal types.",UnexpectedTypeAnnotation:"Did not expect a type annotation here.",UnexpectedTypeCastInParameter:"Unexpected type cast in parameter position.",UnsupportedImportTypeArgument:"Argument in a type import must be a string literal.",UnsupportedParameterPropertyKind:"A parameter property may not be declared using a binding pattern.",UnsupportedSignatureParameterKind:({type:J})=>`Name in a signature must be an Identifier, ObjectPattern or ArrayPattern, instead got ${J}.`,UsingDeclarationInAmbientContext:(J)=>`'${J}' declarations are not allowed in ambient contexts.`});function LK(J){switch(J){case"any":return"TSAnyKeyword";case"boolean":return"TSBooleanKeyword";case"bigint":return"TSBigIntKeyword";case"never":return"TSNeverKeyword";case"number":return"TSNumberKeyword";case"object":return"TSObjectKeyword";case"string":return"TSStringKeyword";case"symbol":return"TSSymbolKeyword";case"undefined":return"TSUndefinedKeyword";case"unknown":return"TSUnknownKeyword";default:return}}function t8(J){return J==="private"||J==="public"||J==="protected"}function kK(J){return J==="in"||J==="out"}var bK=(J)=>class extends J{constructor(...Z){super(...Z);this.tsParseInOutModifiers=this.tsParseModifiers.bind(this,{allowedModifiers:["in","out"],disallowedModifiers:["const","public","private","protected","readonly","declare","abstract","override"],errorTemplate:i.InvalidModifierOnTypeParameter}),this.tsParseConstModifier=this.tsParseModifiers.bind(this,{allowedModifiers:["const"],disallowedModifiers:["in","out"],errorTemplate:i.InvalidModifierOnTypeParameterPositions}),this.tsParseInOutConstModifiers=this.tsParseModifiers.bind(this,{allowedModifiers:["in","out","const"],disallowedModifiers:["public","private","protected","readonly","declare","abstract","override"],errorTemplate:i.InvalidModifierOnTypeParameter})}getScopeHandler(){return U4}tsIsIdentifier(){return O1(this.state.type)}tsTokenCanFollowModifier(){return this.match(0)||this.match(5)||this.match(55)||this.match(21)||this.match(139)||this.isLiteralPropertyName()}tsNextTokenOnSameLineAndCanFollowModifier(){if(this.next(),this.hasPrecedingLineBreak())return!1;return this.tsTokenCanFollowModifier()}tsNextTokenCanFollowModifier(){if(this.match(106))return this.next(),this.tsTokenCanFollowModifier();return this.tsNextTokenOnSameLineAndCanFollowModifier()}tsParseModifier(Z,Q,Y){if(!O1(this.state.type)&&this.state.type!==58&&this.state.type!==75)return;let H=this.state.value;if(Z.includes(H)){if(Y&&this.match(106))return;if(Q&&this.tsIsStartOfStaticBlocks())return;if(this.tsTryParse(this.tsNextTokenCanFollowModifier.bind(this)))return H}return}tsParseModifiers({allowedModifiers:Z,disallowedModifiers:Q,stopOnStartOfClassStaticBlock:Y,errorTemplate:H=i.InvalidModifierOnTypeMember},G){let z=(V,U,$,j)=>{if(U===$&&G[j])this.raise(i.InvalidModifiersOrder,V,{orderedModifiers:[$,j]})},W=(V,U,$,j)=>{if(G[$]&&U===j||G[j]&&U===$)this.raise(i.IncompatibleModifiers,V,{modifiers:[$,j]})};for(;;){let{startLoc:V}=this.state,U=this.tsParseModifier(Z.concat(Q!=null?Q:[]),Y,G.static);if(!U)break;if(t8(U))if(G.accessibility)this.raise(i.DuplicateAccessibilityModifier,V,{modifier:U});else z(V,U,U,"override"),z(V,U,U,"static"),z(V,U,U,"readonly"),G.accessibility=U;else if(kK(U)){if(G[U])this.raise(i.DuplicateModifier,V,{modifier:U});G[U]=!0,z(V,U,"in","out")}else{if(hasOwnProperty.call(G,U))this.raise(i.DuplicateModifier,V,{modifier:U});else z(V,U,"static","readonly"),z(V,U,"static","override"),z(V,U,"override","readonly"),z(V,U,"abstract","override"),W(V,U,"declare","override"),W(V,U,"static","abstract");G[U]=!0}if(Q!=null&&Q.includes(U))this.raise(H,V,{modifier:U})}}tsIsListTerminator(Z){switch(Z){case"EnumMembers":case"TypeMembers":return this.match(8);case"HeritageClauseElement":return this.match(5);case"TupleElementTypes":return this.match(3);case"TypeParametersOrArguments":return this.match(48)}}tsParseList(Z,Q){let Y=[];while(!this.tsIsListTerminator(Z))Y.push(Q());return Y}tsParseDelimitedList(Z,Q,Y){return TK(this.tsParseDelimitedListWorker(Z,Q,!0,Y))}tsParseDelimitedListWorker(Z,Q,Y,H){let G=[],z=-1;for(;;){if(this.tsIsListTerminator(Z))break;z=-1;let W=Q();if(W==null)return;if(G.push(W),this.eat(12)){z=this.state.lastTokStartLoc.index;continue}if(this.tsIsListTerminator(Z))break;if(Y)this.expect(12);return}if(H)H.value=z;return G}tsParseBracketedList(Z,Q,Y,H,G){if(!H)if(Y)this.expect(0);else this.expect(47);let z=this.tsParseDelimitedList(Z,Q,G);if(Y)this.expect(3);else this.expect(48);return z}tsParseImportType(){let Z=this.startNode();if(this.expect(83),this.expect(10),!this.match(134))this.raise(i.UnsupportedImportTypeArgument,this.state.startLoc),Z.argument=super.parseExprAtom();else Z.argument=this.parseStringLiteral(this.state.value);if(this.eat(12))Z.options=this.tsParseImportTypeOptions();else Z.options=null;if(this.expect(11),this.eat(16))Z.qualifier=this.tsParseEntityName(3);if(this.match(47))Z.typeParameters=this.tsParseTypeArguments();return this.finishNode(Z,"TSImportType")}tsParseImportTypeOptions(){let Z=this.startNode();this.expect(5);let Q=this.startNode();if(this.isContextual(76))Q.method=!1,Q.key=this.parseIdentifier(!0),Q.computed=!1,Q.shorthand=!1;else this.unexpected(null,76);return this.expect(14),Q.value=this.tsParseImportTypeWithPropertyValue(),Z.properties=[this.finishObjectProperty(Q)],this.eat(12),this.expect(8),this.finishNode(Z,"ObjectExpression")}tsParseImportTypeWithPropertyValue(){let Z=this.startNode(),Q=[];this.expect(5);while(!this.match(8)){let Y=this.state.type;if(O1(Y)||Y===134)Q.push(super.parsePropertyDefinition(null));else this.unexpected();this.eat(12)}return Z.properties=Q,this.next(),this.finishNode(Z,"ObjectExpression")}tsParseEntityName(Z){let Q;if(Z&1&&this.match(78))if(Z&2)Q=this.parseIdentifier(!0);else{let Y=this.startNode();this.next(),Q=this.finishNode(Y,"ThisExpression")}else Q=this.parseIdentifier(!!(Z&1));while(this.eat(16)){let Y=this.startNodeAtNode(Q);Y.left=Q,Y.right=this.parseIdentifier(!!(Z&1)),Q=this.finishNode(Y,"TSQualifiedName")}return Q}tsParseTypeReference(){let Z=this.startNode();if(Z.typeName=this.tsParseEntityName(1),!this.hasPrecedingLineBreak()&&this.match(47))Z.typeParameters=this.tsParseTypeArguments();return this.finishNode(Z,"TSTypeReference")}tsParseThisTypePredicate(Z){this.next();let Q=this.startNodeAtNode(Z);return Q.parameterName=Z,Q.typeAnnotation=this.tsParseTypeAnnotation(!1),Q.asserts=!1,this.finishNode(Q,"TSTypePredicate")}tsParseThisTypeNode(){let Z=this.startNode();return this.next(),this.finishNode(Z,"TSThisType")}tsParseTypeQuery(){let Z=this.startNode();if(this.expect(87),this.match(83))Z.exprName=this.tsParseImportType();else Z.exprName=this.tsParseEntityName(3);if(!this.hasPrecedingLineBreak()&&this.match(47))Z.typeParameters=this.tsParseTypeArguments();return this.finishNode(Z,"TSTypeQuery")}tsParseTypeParameter(Z){let Q=this.startNode();return Z(Q),Q.name=this.tsParseTypeParameterName(),Q.constraint=this.tsEatThenParseType(81),Q.default=this.tsEatThenParseType(29),this.finishNode(Q,"TSTypeParameter")}tsTryParseTypeParameters(Z){if(this.match(47))return this.tsParseTypeParameters(Z)}tsParseTypeParameters(Z){let Q=this.startNode();if(this.match(47)||this.match(143))this.next();else this.unexpected();let Y={value:-1};if(Q.params=this.tsParseBracketedList("TypeParametersOrArguments",this.tsParseTypeParameter.bind(this,Z),!1,!0,Y),Q.params.length===0)this.raise(i.EmptyTypeParameters,Q);if(Y.value!==-1)this.addExtra(Q,"trailingComma",Y.value);return this.finishNode(Q,"TSTypeParameterDeclaration")}tsFillSignature(Z,Q){let Y=Z===19,H="parameters",G="typeAnnotation";if(Q.typeParameters=this.tsTryParseTypeParameters(this.tsParseConstModifier),this.expect(10),Q.parameters=this.tsParseBindingListForSignature(),Y)Q.typeAnnotation=this.tsParseTypeOrTypePredicateAnnotation(Z);else if(this.match(Z))Q.typeAnnotation=this.tsParseTypeOrTypePredicateAnnotation(Z)}tsParseBindingListForSignature(){let Z=super.parseBindingList(11,41,2);for(let Q of Z){let{type:Y}=Q;if(Y==="AssignmentPattern"||Y==="TSParameterProperty")this.raise(i.UnsupportedSignatureParameterKind,Q,{type:Y})}return Z}tsParseTypeMemberSemicolon(){if(!this.eat(12)&&!this.isLineTerminator())this.expect(13)}tsParseSignatureMember(Z,Q){return this.tsFillSignature(14,Q),this.tsParseTypeMemberSemicolon(),this.finishNode(Q,Z)}tsIsUnambiguouslyIndexSignature(){if(this.next(),O1(this.state.type))return this.next(),this.match(14);return!1}tsTryParseIndexSignature(Z){if(!(this.match(0)&&this.tsLookAhead(this.tsIsUnambiguouslyIndexSignature.bind(this))))return;this.expect(0);let Q=this.parseIdentifier();Q.typeAnnotation=this.tsParseTypeAnnotation(),this.resetEndLocation(Q),this.expect(3),Z.parameters=[Q];let Y=this.tsTryParseTypeAnnotation();if(Y)Z.typeAnnotation=Y;return this.tsParseTypeMemberSemicolon(),this.finishNode(Z,"TSIndexSignature")}tsParsePropertyOrMethodSignature(Z,Q){if(this.eat(17))Z.optional=!0;if(this.match(10)||this.match(47)){if(Q)this.raise(i.ReadonlyForMethodSignature,Z);let Y=Z;if(Y.kind&&this.match(47))this.raise(i.AccessorCannotHaveTypeParameters,this.state.curPosition());this.tsFillSignature(14,Y),this.tsParseTypeMemberSemicolon();let H="parameters",G="typeAnnotation";if(Y.kind==="get"){if(Y[H].length>0){if(this.raise(M.BadGetterArity,this.state.curPosition()),this.isThisParam(Y[H][0]))this.raise(i.AccessorCannotDeclareThisParameter,this.state.curPosition())}}else if(Y.kind==="set"){if(Y[H].length!==1)this.raise(M.BadSetterArity,this.state.curPosition());else{let z=Y[H][0];if(this.isThisParam(z))this.raise(i.AccessorCannotDeclareThisParameter,this.state.curPosition());if(z.type==="Identifier"&&z.optional)this.raise(i.SetAccessorCannotHaveOptionalParameter,this.state.curPosition());if(z.type==="RestElement")this.raise(i.SetAccessorCannotHaveRestParameter,this.state.curPosition())}if(Y[G])this.raise(i.SetAccessorCannotHaveReturnType,Y[G])}else Y.kind="method";return this.finishNode(Y,"TSMethodSignature")}else{let Y=Z;if(Q)Y.readonly=!0;let H=this.tsTryParseTypeAnnotation();if(H)Y.typeAnnotation=H;return this.tsParseTypeMemberSemicolon(),this.finishNode(Y,"TSPropertySignature")}}tsParseTypeMember(){let Z=this.startNode();if(this.match(10)||this.match(47))return this.tsParseSignatureMember("TSCallSignatureDeclaration",Z);if(this.match(77)){let Y=this.startNode();if(this.next(),this.match(10)||this.match(47))return this.tsParseSignatureMember("TSConstructSignatureDeclaration",Z);else return Z.key=this.createIdentifier(Y,"new"),this.tsParsePropertyOrMethodSignature(Z,!1)}this.tsParseModifiers({allowedModifiers:["readonly"],disallowedModifiers:["declare","abstract","private","protected","public","static","override"]},Z);let Q=this.tsTryParseIndexSignature(Z);if(Q)return Q;if(super.parsePropertyName(Z),!Z.computed&&Z.key.type==="Identifier"&&(Z.key.name==="get"||Z.key.name==="set")&&this.tsTokenCanFollowModifier()){if(Z.kind=Z.key.name,super.parsePropertyName(Z),!this.match(10)&&!this.match(47))this.unexpected(null,10)}return this.tsParsePropertyOrMethodSignature(Z,!!Z.readonly)}tsParseTypeLiteral(){let Z=this.startNode();return Z.members=this.tsParseObjectTypeMembers(),this.finishNode(Z,"TSTypeLiteral")}tsParseObjectTypeMembers(){this.expect(5);let Z=this.tsParseList("TypeMembers",this.tsParseTypeMember.bind(this));return this.expect(8),Z}tsIsStartOfMappedType(){if(this.next(),this.eat(53))return this.isContextual(122);if(this.isContextual(122))this.next();if(!this.match(0))return!1;if(this.next(),!this.tsIsIdentifier())return!1;return this.next(),this.match(58)}tsParseMappedType(){let Z=this.startNode();if(this.expect(5),this.match(53))Z.readonly=this.state.value,this.next(),this.expectContextual(122);else if(this.eatContextual(122))Z.readonly=!0;this.expect(0);{let Q=this.startNode();Q.name=this.tsParseTypeParameterName(),Q.constraint=this.tsExpectThenParseType(58),Z.typeParameter=this.finishNode(Q,"TSTypeParameter")}if(Z.nameType=this.eatContextual(93)?this.tsParseType():null,this.expect(3),this.match(53))Z.optional=this.state.value,this.next(),this.expect(17);else if(this.eat(17))Z.optional=!0;return Z.typeAnnotation=this.tsTryParseType(),this.semicolon(),this.expect(8),this.finishNode(Z,"TSMappedType")}tsParseTupleType(){let Z=this.startNode();Z.elementTypes=this.tsParseBracketedList("TupleElementTypes",this.tsParseTupleElementType.bind(this),!0,!1);let Q=!1;return Z.elementTypes.forEach((Y)=>{let{type:H}=Y;if(Q&&H!=="TSRestType"&&H!=="TSOptionalType"&&!(H==="TSNamedTupleMember"&&Y.optional))this.raise(i.OptionalTypeBeforeRequired,Y);Q||(Q=H==="TSNamedTupleMember"&&Y.optional||H==="TSOptionalType")}),this.finishNode(Z,"TSTupleType")}tsParseTupleElementType(){let Z=this.state.startLoc,Q=this.eat(21),{startLoc:Y}=this.state,H,G,z,W,U=M0(this.state.type)?this.lookaheadCharCode():null;if(U===58)H=!0,z=!1,G=this.parseIdentifier(!0),this.expect(14),W=this.tsParseType();else if(U===63){z=!0;let $=this.state.value,j=this.tsParseNonArrayType();if(this.lookaheadCharCode()===58)H=!0,G=this.createIdentifier(this.startNodeAt(Y),$),this.expect(17),this.expect(14),W=this.tsParseType();else H=!1,W=j,this.expect(17)}else W=this.tsParseType(),z=this.eat(17),H=this.eat(14);if(H){let $;if(G){if($=this.startNodeAt(Y),$.optional=z,$.label=G,$.elementType=W,this.eat(17))$.optional=!0,this.raise(i.TupleOptionalAfterType,this.state.lastTokStartLoc)}else $=this.startNodeAt(Y),$.optional=z,this.raise(i.InvalidTupleMemberLabel,W),$.label=W,$.elementType=this.tsParseType();W=this.finishNode($,"TSNamedTupleMember")}else if(z){let $=this.startNodeAt(Y);$.typeAnnotation=W,W=this.finishNode($,"TSOptionalType")}if(Q){let $=this.startNodeAt(Z);$.typeAnnotation=W,W=this.finishNode($,"TSRestType")}return W}tsParseParenthesizedType(){let Z=this.startNode();return this.expect(10),Z.typeAnnotation=this.tsParseType(),this.expect(11),this.finishNode(Z,"TSParenthesizedType")}tsParseFunctionOrConstructorType(Z,Q){let Y=this.startNode();if(Z==="TSConstructorType"){if(Y.abstract=!!Q,Q)this.next();this.next()}return this.tsInAllowConditionalTypesContext(()=>this.tsFillSignature(19,Y)),this.finishNode(Y,Z)}tsParseLiteralTypeNode(){let Z=this.startNode();switch(this.state.type){case 135:case 136:case 134:case 85:case 86:Z.literal=super.parseExprAtom();break;default:this.unexpected()}return this.finishNode(Z,"TSLiteralType")}tsParseTemplateLiteralType(){{let Z=this.startNode();return Z.literal=super.parseTemplate(!1),this.finishNode(Z,"TSLiteralType")}}parseTemplateSubstitution(){if(this.state.inType)return this.tsParseType();return super.parseTemplateSubstitution()}tsParseThisTypeOrThisTypePredicate(){let Z=this.tsParseThisTypeNode();if(this.isContextual(116)&&!this.hasPrecedingLineBreak())return this.tsParseThisTypePredicate(Z);else return Z}tsParseNonArrayType(){switch(this.state.type){case 134:case 135:case 136:case 85:case 86:return this.tsParseLiteralTypeNode();case 53:if(this.state.value==="-"){let Z=this.startNode(),Q=this.lookahead();if(Q.type!==135&&Q.type!==136)this.unexpected();return Z.literal=this.parseMaybeUnary(),this.finishNode(Z,"TSLiteralType")}break;case 78:return this.tsParseThisTypeOrThisTypePredicate();case 87:return this.tsParseTypeQuery();case 83:return this.tsParseImportType();case 5:return this.tsLookAhead(this.tsIsStartOfMappedType.bind(this))?this.tsParseMappedType():this.tsParseTypeLiteral();case 0:return this.tsParseTupleType();case 10:return this.tsParseParenthesizedType();case 25:case 24:return this.tsParseTemplateLiteralType();default:{let{type:Z}=this.state;if(O1(Z)||Z===88||Z===84){let Q=Z===88?"TSVoidKeyword":Z===84?"TSNullKeyword":LK(this.state.value);if(Q!==void 0&&this.lookaheadCharCode()!==46){let Y=this.startNode();return this.next(),this.finishNode(Y,Q)}return this.tsParseTypeReference()}}}this.unexpected()}tsParseArrayTypeOrHigher(){let{startLoc:Z}=this.state,Q=this.tsParseNonArrayType();while(!this.hasPrecedingLineBreak()&&this.eat(0))if(this.match(3)){let Y=this.startNodeAt(Z);Y.elementType=Q,this.expect(3),Q=this.finishNode(Y,"TSArrayType")}else{let Y=this.startNodeAt(Z);Y.objectType=Q,Y.indexType=this.tsParseType(),this.expect(3),Q=this.finishNode(Y,"TSIndexedAccessType")}return Q}tsParseTypeOperator(){let Z=this.startNode(),Q=this.state.value;if(this.next(),Z.operator=Q,Z.typeAnnotation=this.tsParseTypeOperatorOrHigher(),Q==="readonly")this.tsCheckTypeAnnotationForReadOnly(Z);return this.finishNode(Z,"TSTypeOperator")}tsCheckTypeAnnotationForReadOnly(Z){switch(Z.typeAnnotation.type){case"TSTupleType":case"TSArrayType":return;default:this.raise(i.UnexpectedReadonly,Z)}}tsParseInferType(){let Z=this.startNode();this.expectContextual(115);let Q=this.startNode();return Q.name=this.tsParseTypeParameterName(),Q.constraint=this.tsTryParse(()=>this.tsParseConstraintForInferType()),Z.typeParameter=this.finishNode(Q,"TSTypeParameter"),this.finishNode(Z,"TSInferType")}tsParseConstraintForInferType(){if(this.eat(81)){let Z=this.tsInDisallowConditionalTypesContext(()=>this.tsParseType());if(this.state.inDisallowConditionalTypesContext||!this.match(17))return Z}}tsParseTypeOperatorOrHigher(){return nV(this.state.type)&&!this.state.containsEsc?this.tsParseTypeOperator():this.isContextual(115)?this.tsParseInferType():this.tsInAllowConditionalTypesContext(()=>this.tsParseArrayTypeOrHigher())}tsParseUnionOrIntersectionType(Z,Q,Y){let H=this.startNode(),G=this.eat(Y),z=[];do z.push(Q());while(this.eat(Y));if(z.length===1&&!G)return z[0];return H.types=z,this.finishNode(H,Z)}tsParseIntersectionTypeOrHigher(){return this.tsParseUnionOrIntersectionType("TSIntersectionType",this.tsParseTypeOperatorOrHigher.bind(this),45)}tsParseUnionTypeOrHigher(){return this.tsParseUnionOrIntersectionType("TSUnionType",this.tsParseIntersectionTypeOrHigher.bind(this),43)}tsIsStartOfFunctionType(){if(this.match(47))return!0;return this.match(10)&&this.tsLookAhead(this.tsIsUnambiguouslyStartOfFunctionType.bind(this))}tsSkipParameterStart(){if(O1(this.state.type)||this.match(78))return this.next(),!0;if(this.match(5)){let{errors:Z}=this.state,Q=Z.length;try{return this.parseObjectLike(8,!0),Z.length===Q}catch(Y){return!1}}if(this.match(0)){this.next();let{errors:Z}=this.state,Q=Z.length;try{return super.parseBindingList(3,93,1),Z.length===Q}catch(Y){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)){if(this.next(),this.match(19))return!0}}return!1}tsParseTypeOrTypePredicateAnnotation(Z){return this.tsInType(()=>{let Q=this.startNode();this.expect(Z);let Y=this.startNode(),H=!!this.tsTryParse(this.tsParseTypePredicateAsserts.bind(this));if(H&&this.match(78)){let W=this.tsParseThisTypeOrThisTypePredicate();if(W.type==="TSThisType")Y.parameterName=W,Y.asserts=!0,Y.typeAnnotation=null,W=this.finishNode(Y,"TSTypePredicate");else this.resetStartLocationFromNode(W,Y),W.asserts=!0;return Q.typeAnnotation=W,this.finishNode(Q,"TSTypeAnnotation")}let G=this.tsIsIdentifier()&&this.tsTryParse(this.tsParseTypePredicatePrefix.bind(this));if(!G){if(!H)return this.tsParseTypeAnnotation(!1,Q);return Y.parameterName=this.parseIdentifier(),Y.asserts=H,Y.typeAnnotation=null,Q.typeAnnotation=this.finishNode(Y,"TSTypePredicate"),this.finishNode(Q,"TSTypeAnnotation")}let z=this.tsParseTypeAnnotation(!1);return Y.parameterName=G,Y.typeAnnotation=z,Y.asserts=H,Q.typeAnnotation=this.finishNode(Y,"TSTypePredicate"),this.finishNode(Q,"TSTypeAnnotation")})}tsTryParseTypeOrTypePredicateAnnotation(){if(this.match(14))return this.tsParseTypeOrTypePredicateAnnotation(14)}tsTryParseTypeAnnotation(){if(this.match(14))return this.tsParseTypeAnnotation()}tsTryParseType(){return this.tsEatThenParseType(14)}tsParseTypePredicatePrefix(){let Z=this.parseIdentifier();if(this.isContextual(116)&&!this.hasPrecedingLineBreak())return this.next(),Z}tsParseTypePredicateAsserts(){if(this.state.type!==109)return!1;let Z=this.state.containsEsc;if(this.next(),!O1(this.state.type)&&!this.match(78))return!1;if(Z)this.raise(M.InvalidEscapedReservedWord,this.state.lastTokStartLoc,{reservedWord:"asserts"});return!0}tsParseTypeAnnotation(Z=!0,Q=this.startNode()){return this.tsInType(()=>{if(Z)this.expect(14);Q.typeAnnotation=this.tsParseType()}),this.finishNode(Q,"TSTypeAnnotation")}tsParseType(){s8(this.state.inType);let Z=this.tsParseNonConditionalType();if(this.state.inDisallowConditionalTypesContext||this.hasPrecedingLineBreak()||!this.eat(81))return Z;let Q=this.startNodeAtNode(Z);return Q.checkType=Z,Q.extendsType=this.tsInDisallowConditionalTypesContext(()=>this.tsParseNonConditionalType()),this.expect(17),Q.trueType=this.tsInAllowConditionalTypesContext(()=>this.tsParseType()),this.expect(14),Q.falseType=this.tsInAllowConditionalTypesContext(()=>this.tsParseType()),this.finishNode(Q,"TSConditionalType")}isAbstractConstructorSignature(){return this.isContextual(124)&&this.isLookaheadContextual("new")}tsParseNonConditionalType(){if(this.tsIsStartOfFunctionType())return this.tsParseFunctionOrConstructorType("TSFunctionType");if(this.match(77))return this.tsParseFunctionOrConstructorType("TSConstructorType");else if(this.isAbstractConstructorSignature())return this.tsParseFunctionOrConstructorType("TSConstructorType",!0);return this.tsParseUnionTypeOrHigher()}tsParseTypeAssertion(){if(this.getPluginOption("typescript","disallowAmbiguousJSXLike"))this.raise(i.ReservedTypeAssertion,this.state.startLoc);let Z=this.startNode();return Z.typeAnnotation=this.tsInType(()=>{return this.next(),this.match(75)?this.tsParseTypeReference():this.tsParseType()}),this.expect(48),Z.expression=this.parseMaybeUnary(),this.finishNode(Z,"TSTypeAssertion")}tsParseHeritageClause(Z){let Q=this.state.startLoc,Y=this.tsParseDelimitedList("HeritageClauseElement",()=>{{let H=this.startNode();if(H.expression=this.tsParseEntityName(3),this.match(47))H.typeParameters=this.tsParseTypeArguments();return this.finishNode(H,"TSExpressionWithTypeArguments")}});if(!Y.length)this.raise(i.EmptyHeritageClauseType,Q,{token:Z});return Y}tsParseInterfaceDeclaration(Z,Q={}){if(this.hasFollowingLineBreak())return null;if(this.expectContextual(129),Q.declare)Z.declare=!0;if(O1(this.state.type))Z.id=this.parseIdentifier(),this.checkIdentifier(Z.id,130);else Z.id=null,this.raise(i.MissingInterfaceName,this.state.startLoc);if(Z.typeParameters=this.tsTryParseTypeParameters(this.tsParseInOutConstModifiers),this.eat(81))Z.extends=this.tsParseHeritageClause("extends");let Y=this.startNode();return Y.body=this.tsInType(this.tsParseObjectTypeMembers.bind(this)),Z.body=this.finishNode(Y,"TSInterfaceBody"),this.finishNode(Z,"TSInterfaceDeclaration")}tsParseTypeAliasDeclaration(Z){return Z.id=this.parseIdentifier(),this.checkIdentifier(Z.id,2),Z.typeAnnotation=this.tsInType(()=>{if(Z.typeParameters=this.tsTryParseTypeParameters(this.tsParseInOutModifiers),this.expect(29),this.isContextual(114)&&this.lookaheadCharCode()!==46){let Q=this.startNode();return this.next(),this.finishNode(Q,"TSIntrinsicKeyword")}return this.tsParseType()}),this.semicolon(),this.finishNode(Z,"TSTypeAliasDeclaration")}tsInTopLevelContext(Z){if(this.curContext()!==j1.brace){let Q=this.state.context;this.state.context=[Q[0]];try{return Z()}finally{this.state.context=Q}}else return Z()}tsInType(Z){let Q=this.state.inType;this.state.inType=!0;try{return Z()}finally{this.state.inType=Q}}tsInDisallowConditionalTypesContext(Z){let Q=this.state.inDisallowConditionalTypesContext;this.state.inDisallowConditionalTypesContext=!0;try{return Z()}finally{this.state.inDisallowConditionalTypesContext=Q}}tsInAllowConditionalTypesContext(Z){let Q=this.state.inDisallowConditionalTypesContext;this.state.inDisallowConditionalTypesContext=!1;try{return Z()}finally{this.state.inDisallowConditionalTypesContext=Q}}tsEatThenParseType(Z){if(this.match(Z))return this.tsNextThenParseType()}tsExpectThenParseType(Z){return this.tsInType(()=>{return this.expect(Z),this.tsParseType()})}tsNextThenParseType(){return this.tsInType(()=>{return this.next(),this.tsParseType()})}tsParseEnumMember(){let Z=this.startNode();if(Z.id=this.match(134)?super.parseStringLiteral(this.state.value):this.parseIdentifier(!0),this.eat(29))Z.initializer=super.parseMaybeAssignAllowIn();return this.finishNode(Z,"TSEnumMember")}tsParseEnumDeclaration(Z,Q={}){if(Q.const)Z.const=!0;if(Q.declare)Z.declare=!0;return this.expectContextual(126),Z.id=this.parseIdentifier(),this.checkIdentifier(Z.id,Z.const?8971:8459),this.expect(5),Z.members=this.tsParseDelimitedList("EnumMembers",this.tsParseEnumMember.bind(this)),this.expect(8),this.finishNode(Z,"TSEnumDeclaration")}tsParseEnumBody(){let Z=this.startNode();return this.expect(5),Z.members=this.tsParseDelimitedList("EnumMembers",this.tsParseEnumMember.bind(this)),this.expect(8),this.finishNode(Z,"TSEnumBody")}tsParseModuleBlock(){let Z=this.startNode();return this.scope.enter(0),this.expect(5),super.parseBlockOrModuleBlockBody(Z.body=[],void 0,!0,8),this.scope.exit(),this.finishNode(Z,"TSModuleBlock")}tsParseModuleOrNamespaceDeclaration(Z,Q=!1){if(Z.id=this.parseIdentifier(),!Q)this.checkIdentifier(Z.id,1024);if(this.eat(16)){let Y=this.startNode();this.tsParseModuleOrNamespaceDeclaration(Y,!0),Z.body=Y}else this.scope.enter(1024),this.prodParam.enter(0),Z.body=this.tsParseModuleBlock(),this.prodParam.exit(),this.scope.exit();return this.finishNode(Z,"TSModuleDeclaration")}tsParseAmbientExternalModuleDeclaration(Z){if(this.isContextual(112))Z.kind="global",Z.global=!0,Z.id=this.parseIdentifier();else if(this.match(134))Z.kind="module",Z.id=super.parseStringLiteral(this.state.value);else this.unexpected();if(this.match(5))this.scope.enter(1024),this.prodParam.enter(0),Z.body=this.tsParseModuleBlock(),this.prodParam.exit(),this.scope.exit();else this.semicolon();return this.finishNode(Z,"TSModuleDeclaration")}tsParseImportEqualsDeclaration(Z,Q,Y){Z.isExport=Y||!1,Z.id=Q||this.parseIdentifier(),this.checkIdentifier(Z.id,4096),this.expect(29);let H=this.tsParseModuleReference();if(Z.importKind==="type"&&H.type!=="TSExternalModuleReference")this.raise(i.ImportAliasHasImportType,H);return Z.moduleReference=H,this.semicolon(),this.finishNode(Z,"TSImportEqualsDeclaration")}tsIsExternalModuleReference(){return this.isContextual(119)&&this.lookaheadCharCode()===40}tsParseModuleReference(){return this.tsIsExternalModuleReference()?this.tsParseExternalModuleReference():this.tsParseEntityName(0)}tsParseExternalModuleReference(){let Z=this.startNode();if(this.expectContextual(119),this.expect(10),!this.match(134))this.unexpected();return Z.expression=super.parseExprAtom(),this.expect(11),this.sawUnambiguousESM=!0,this.finishNode(Z,"TSExternalModuleReference")}tsLookAhead(Z){let Q=this.state.clone(),Y=Z();return this.state=Q,Y}tsTryParseAndCatch(Z){let Q=this.tryParse((Y)=>Z()||Y());if(Q.aborted||!Q.node)return;if(Q.error)this.state=Q.failState;return Q.node}tsTryParse(Z){let Q=this.state.clone(),Y=Z();if(Y!==void 0&&Y!==!1)return Y;this.state=Q}tsTryParseDeclare(Z){if(this.isLineTerminator())return;let Q=this.state.type;return this.tsInAmbientContext(()=>{switch(Q){case 68:return Z.declare=!0,super.parseFunctionStatement(Z,!1,!1);case 80:return Z.declare=!0,this.parseClass(Z,!0,!1);case 126:return this.tsParseEnumDeclaration(Z,{declare:!0});case 112:return this.tsParseAmbientExternalModuleDeclaration(Z);case 100:if(this.state.containsEsc)return;case 75:case 74:if(!this.match(75)||!this.isLookaheadContextual("enum"))return Z.declare=!0,this.parseVarStatement(Z,this.state.value,!0);return this.expect(75),this.tsParseEnumDeclaration(Z,{const:!0,declare:!0});case 107:if(this.isUsing())return this.raise(i.InvalidModifierOnUsingDeclaration,this.state.startLoc,"declare"),Z.declare=!0,this.parseVarStatement(Z,"using",!0);break;case 96:if(this.isAwaitUsing())return this.raise(i.InvalidModifierOnAwaitUsingDeclaration,this.state.startLoc,"declare"),Z.declare=!0,this.next(),this.parseVarStatement(Z,"await using",!0);break;case 129:{let Y=this.tsParseInterfaceDeclaration(Z,{declare:!0});if(Y)return Y}default:if(O1(Q))return this.tsParseDeclaration(Z,this.state.value,!0,null)}})}tsTryParseExportDeclaration(){return this.tsParseDeclaration(this.startNode(),this.state.value,!0,null)}tsParseExpressionStatement(Z,Q,Y){switch(Q.name){case"declare":{let H=this.tsTryParseDeclare(Z);if(H)H.declare=!0;return H}case"global":if(this.match(5)){this.scope.enter(1024),this.prodParam.enter(0);let H=Z;return H.kind="global",Z.global=!0,H.id=Q,H.body=this.tsParseModuleBlock(),this.scope.exit(),this.prodParam.exit(),this.finishNode(H,"TSModuleDeclaration")}break;default:return this.tsParseDeclaration(Z,Q.name,!1,Y)}}tsParseDeclaration(Z,Q,Y,H){switch(Q){case"abstract":if(this.tsCheckLineTerminator(Y)&&(this.match(80)||O1(this.state.type)))return this.tsParseAbstractDeclaration(Z,H);break;case"module":if(this.tsCheckLineTerminator(Y)){if(this.match(134))return this.tsParseAmbientExternalModuleDeclaration(Z);else if(O1(this.state.type))return Z.kind="module",this.tsParseModuleOrNamespaceDeclaration(Z)}break;case"namespace":if(this.tsCheckLineTerminator(Y)&&O1(this.state.type))return Z.kind="namespace",this.tsParseModuleOrNamespaceDeclaration(Z);break;case"type":if(this.tsCheckLineTerminator(Y)&&O1(this.state.type))return this.tsParseTypeAliasDeclaration(Z);break}}tsCheckLineTerminator(Z){if(Z){if(this.hasFollowingLineBreak())return!1;return this.next(),!0}return!this.isLineTerminator()}tsTryParseGenericAsyncArrowFunction(Z){if(!this.match(47))return;let Q=this.state.maybeInArrowParameters;this.state.maybeInArrowParameters=!0;let Y=this.tsTryParseAndCatch(()=>{let H=this.startNodeAt(Z);return H.typeParameters=this.tsParseTypeParameters(this.tsParseConstModifier),super.parseFunctionParams(H),H.returnType=this.tsTryParseTypeOrTypePredicateAnnotation(),this.expect(19),H});if(this.state.maybeInArrowParameters=Q,!Y)return;return super.parseArrowExpression(Y,null,!0)}tsParseTypeArgumentsInExpression(){if(this.reScan_lt()!==47)return;return this.tsParseTypeArguments()}tsParseTypeArguments(){let Z=this.startNode();if(Z.params=this.tsInType(()=>this.tsInTopLevelContext(()=>{return this.expect(47),this.tsParseDelimitedList("TypeParametersOrArguments",this.tsParseType.bind(this))})),Z.params.length===0)this.raise(i.EmptyTypeArguments,Z);else if(!this.state.inType&&this.curContext()===j1.brace)this.reScan_lt_gt();return this.expect(48),this.finishNode(Z,"TSTypeParameterInstantiation")}tsIsDeclarationStart(){return oV(this.state.type)}isExportDefaultSpecifier(){if(this.tsIsDeclarationStart())return!1;return super.isExportDefaultSpecifier()}parseBindingElement(Z,Q){let Y=Q.length?Q[0].loc.start:this.state.startLoc,H={};this.tsParseModifiers({allowedModifiers:["public","private","protected","override","readonly"]},H);let{accessibility:G,override:z,readonly:W}=H;if(!(Z&4)&&(G||W||z))this.raise(i.UnexpectedParameterModifier,Y);let V=this.parseMaybeDefault();if(Z&2)this.parseFunctionParamType(V);let U=this.parseMaybeDefault(V.loc.start,V);if(G||W||z){let $=this.startNodeAt(Y);if(Q.length)$.decorators=Q;if(G)$.accessibility=G;if(W)$.readonly=W;if(z)$.override=z;if(U.type!=="Identifier"&&U.type!=="AssignmentPattern")this.raise(i.UnsupportedParameterPropertyKind,$);return $.parameter=U,this.finishNode($,"TSParameterProperty")}if(Q.length)V.decorators=Q;return U}isSimpleParameter(Z){return Z.type==="TSParameterProperty"&&super.isSimpleParameter(Z.parameter)||super.isSimpleParameter(Z)}tsDisallowOptionalPattern(Z){for(let Q of Z.params)if(Q.type!=="Identifier"&&Q.optional&&!this.state.isAmbientContext)this.raise(i.PatternIsOptional,Q)}setArrowFunctionParameters(Z,Q,Y){super.setArrowFunctionParameters(Z,Q,Y),this.tsDisallowOptionalPattern(Z)}parseFunctionBodyAndFinish(Z,Q,Y=!1){if(this.match(14))Z.returnType=this.tsParseTypeOrTypePredicateAnnotation(14);let H=Q==="FunctionDeclaration"?"TSDeclareFunction":Q==="ClassMethod"||Q==="ClassPrivateMethod"?"TSDeclareMethod":void 0;if(H&&!this.match(5)&&this.isLineTerminator())return this.finishNode(Z,H);if(H==="TSDeclareFunction"&&this.state.isAmbientContext){if(this.raise(i.DeclareFunctionHasImplementation,Z),Z.declare)return super.parseFunctionBodyAndFinish(Z,H,Y)}return this.tsDisallowOptionalPattern(Z),super.parseFunctionBodyAndFinish(Z,Q,Y)}registerFunctionStatementId(Z){if(!Z.body&&Z.id)this.checkIdentifier(Z.id,1024);else super.registerFunctionStatementId(Z)}tsCheckForInvalidTypeCasts(Z){Z.forEach((Q)=>{if((Q==null?void 0:Q.type)==="TSTypeCastExpression")this.raise(i.UnexpectedTypeAnnotation,Q.typeAnnotation)})}toReferencedList(Z,Q){return this.tsCheckForInvalidTypeCasts(Z),Z}parseArrayLike(Z,Q,Y,H){let G=super.parseArrayLike(Z,Q,Y,H);if(G.type==="ArrayExpression")this.tsCheckForInvalidTypeCasts(G.elements);return G}parseSubscript(Z,Q,Y,H){if(!this.hasPrecedingLineBreak()&&this.match(35)){this.state.canStartJSXElement=!1,this.next();let z=this.startNodeAt(Q);return z.expression=Z,this.finishNode(z,"TSNonNullExpression")}let G=!1;if(this.match(18)&&this.lookaheadCharCode()===60){if(Y)return H.stop=!0,Z;H.optionalChainMember=G=!0,this.next()}if(this.match(47)||this.match(51)){let z,W=this.tsTryParseAndCatch(()=>{if(!Y&&this.atPossibleAsyncArrow(Z)){let j=this.tsTryParseGenericAsyncArrowFunction(Q);if(j)return H.stop=!0,j}let V=this.tsParseTypeArgumentsInExpression();if(!V)return;if(G&&!this.match(10)){z=this.state.curPosition();return}if(jX(this.state.type)){let j=super.parseTaggedTemplateExpression(Z,Q,H);return j.typeParameters=V,j}if(!Y&&this.eat(10)){let j=this.startNodeAt(Q);if(j.callee=Z,j.arguments=this.parseCallExpressionArguments(),this.tsCheckForInvalidTypeCasts(j.arguments),j.typeParameters=V,H.optionalChainMember)j.optional=G;return this.finishCallExpression(j,H.optionalChainMember)}let U=this.state.type;if(U===48||U===52||U!==10&&O9(U)&&!this.hasPrecedingLineBreak())return;let $=this.startNodeAt(Q);return $.expression=Z,$.typeParameters=V,this.finishNode($,"TSInstantiationExpression")});if(z)this.unexpected(z,10);if(W){if(W.type==="TSInstantiationExpression"){if(this.match(16)||this.match(18)&&this.lookaheadCharCode()!==40)this.raise(i.InvalidPropertyAccessAfterInstantiationExpression,this.state.startLoc);if(!this.match(16)&&!this.match(18))W.expression=super.stopParseSubscript(Z,H)}return W}}return super.parseSubscript(Z,Q,Y,H)}parseNewCallee(Z){var Q;super.parseNewCallee(Z);let{callee:Y}=Z;if(Y.type==="TSInstantiationExpression"&&!((Q=Y.extra)!=null&&Q.parenthesized))Z.typeParameters=Y.typeParameters,Z.callee=Y.expression}parseExprOp(Z,Q,Y){let H;if(qX(58)>Y&&!this.hasPrecedingLineBreak()&&(this.isContextual(93)||(H=this.isContextual(120)))){let G=this.startNodeAt(Q);return G.expression=Z,G.typeAnnotation=this.tsInType(()=>{if(this.next(),this.match(75)){if(H)this.raise(M.UnexpectedKeyword,this.state.startLoc,{keyword:"const"});return this.tsParseTypeReference()}return this.tsParseType()}),this.finishNode(G,H?"TSSatisfiesExpression":"TSAsExpression"),this.reScan_lt_gt(),this.parseExprOp(G,Q,Y)}return super.parseExprOp(Z,Q,Y)}checkReservedWord(Z,Q,Y,H){if(!this.state.isAmbientContext)super.checkReservedWord(Z,Q,Y,H)}checkImportReflection(Z){if(super.checkImportReflection(Z),Z.module&&Z.importKind!=="value")this.raise(i.ImportReflectionHasImportType,Z.specifiers[0].loc.start)}checkDuplicateExports(){}isPotentialImportPhase(Z){if(super.isPotentialImportPhase(Z))return!0;if(this.isContextual(130)){let Q=this.lookaheadCharCode();return Z?Q===123||Q===42:Q!==61}return!Z&&this.isContextual(87)}applyImportPhase(Z,Q,Y,H){if(super.applyImportPhase(Z,Q,Y,H),Q)Z.exportKind=Y==="type"?"type":"value";else Z.importKind=Y==="type"||Y==="typeof"?Y:"value"}parseImport(Z){if(this.match(134))return Z.importKind="value",super.parseImport(Z);let Q;if(O1(this.state.type)&&this.lookaheadCharCode()===61)return Z.importKind="value",this.tsParseImportEqualsDeclaration(Z);else if(this.isContextual(130)){let Y=this.parseMaybeImportPhase(Z,!1);if(this.lookaheadCharCode()===61)return this.tsParseImportEqualsDeclaration(Z,Y);else Q=super.parseImportSpecifiersAndAfter(Z,Y)}else Q=super.parseImport(Z);if(Q.importKind==="type"&&Q.specifiers.length>1&&Q.specifiers[0].type==="ImportDefaultSpecifier")this.raise(i.TypeImportCannotSpecifyDefaultAndNamed,Q);return Q}parseExport(Z,Q){if(this.match(83)){let Y=Z;this.next();let H=null;if(this.isContextual(130)&&this.isPotentialImportPhase(!1))H=this.parseMaybeImportPhase(Y,!1);else Y.importKind="value";return this.tsParseImportEqualsDeclaration(Y,H,!0)}else if(this.eat(29)){let Y=Z;return Y.expression=super.parseExpression(),this.semicolon(),this.sawUnambiguousESM=!0,this.finishNode(Y,"TSExportAssignment")}else if(this.eatContextual(93)){let Y=Z;return this.expectContextual(128),Y.id=this.parseIdentifier(),this.semicolon(),this.finishNode(Y,"TSNamespaceExportDeclaration")}else return super.parseExport(Z,Q)}isAbstractClass(){return this.isContextual(124)&&this.isLookaheadContextual("class")}parseExportDefaultExpression(){if(this.isAbstractClass()){let Z=this.startNode();return this.next(),Z.abstract=!0,this.parseClass(Z,!0,!0)}if(this.match(129)){let Z=this.tsParseInterfaceDeclaration(this.startNode());if(Z)return Z}return super.parseExportDefaultExpression()}parseVarStatement(Z,Q,Y=!1){let{isAmbientContext:H}=this.state,G=super.parseVarStatement(Z,Q,Y||H);if(!H)return G;if(!Z.declare&&(Q==="using"||Q==="await using"))return this.raiseOverwrite(i.UsingDeclarationInAmbientContext,Z,Q),G;for(let{id:z,init:W}of G.declarations){if(!W)continue;if(Q==="var"||Q==="let"||!!z.typeAnnotation)this.raise(i.InitializerNotAllowedInAmbientContext,W);else if(!EK(W,this.hasPlugin("estree")))this.raise(i.ConstInitializerMustBeStringOrNumericLiteralOrLiteralEnumReference,W)}return G}parseStatementContent(Z,Q){if(this.match(75)&&this.isLookaheadContextual("enum")){let Y=this.startNode();return this.expect(75),this.tsParseEnumDeclaration(Y,{const:!0})}if(this.isContextual(126))return this.tsParseEnumDeclaration(this.startNode());if(this.isContextual(129)){let Y=this.tsParseInterfaceDeclaration(this.startNode());if(Y)return Y}return super.parseStatementContent(Z,Q)}parseAccessModifier(){return this.tsParseModifier(["public","protected","private"])}tsHasSomeModifiers(Z,Q){return Q.some((Y)=>{if(t8(Y))return Z.accessibility===Y;return!!Z[Y]})}tsIsStartOfStaticBlocks(){return this.isContextual(106)&&this.lookaheadCharCode()===123}parseClassMember(Z,Q,Y){let H=["declare","private","public","protected","override","abstract","readonly","static"];this.tsParseModifiers({allowedModifiers:H,disallowedModifiers:["in","out"],stopOnStartOfClassStaticBlock:!0,errorTemplate:i.InvalidModifierOnTypeParameterPositions},Q);let G=()=>{if(this.tsIsStartOfStaticBlocks()){if(this.next(),this.next(),this.tsHasSomeModifiers(Q,H))this.raise(i.StaticBlockCannotHaveModifier,this.state.curPosition());super.parseClassStaticBlock(Z,Q)}else this.parseClassMemberWithIsStatic(Z,Q,Y,!!Q.static)};if(Q.declare)this.tsInAmbientContext(G);else G()}parseClassMemberWithIsStatic(Z,Q,Y,H){let G=this.tsTryParseIndexSignature(Q);if(G){if(Z.body.push(G),Q.abstract)this.raise(i.IndexSignatureHasAbstract,Q);if(Q.accessibility)this.raise(i.IndexSignatureHasAccessibility,Q,{modifier:Q.accessibility});if(Q.declare)this.raise(i.IndexSignatureHasDeclare,Q);if(Q.override)this.raise(i.IndexSignatureHasOverride,Q);return}if(!this.state.inAbstractClass&&Q.abstract)this.raise(i.NonAbstractClassHasAbstractMethod,Q);if(Q.override){if(!Y.hadSuperClass)this.raise(i.OverrideNotInSubClass,Q)}super.parseClassMemberWithIsStatic(Z,Q,Y,H)}parsePostMemberNameModifiers(Z){if(this.eat(17))Z.optional=!0;if(Z.readonly&&this.match(10))this.raise(i.ClassMethodHasReadonly,Z);if(Z.declare&&this.match(10))this.raise(i.ClassMethodHasDeclare,Z)}parseExpressionStatement(Z,Q,Y){return(Q.type==="Identifier"?this.tsParseExpressionStatement(Z,Q,Y):void 0)||super.parseExpressionStatement(Z,Q,Y)}shouldParseExportDeclaration(){if(this.tsIsDeclarationStart())return!0;return super.shouldParseExportDeclaration()}parseConditional(Z,Q,Y){if(!this.match(17))return Z;if(this.state.maybeInArrowParameters){let H=this.lookaheadCharCode();if(H===44||H===61||H===58||H===41)return this.setOptionalParametersError(Y),Z}return super.parseConditional(Z,Q,Y)}parseParenItem(Z,Q){let Y=super.parseParenItem(Z,Q);if(this.eat(17))Y.optional=!0,this.resetEndLocation(Z);if(this.match(14)){let H=this.startNodeAt(Q);return H.expression=Z,H.typeAnnotation=this.tsParseTypeAnnotation(),this.finishNode(H,"TSTypeCastExpression")}return Z}parseExportDeclaration(Z){if(!this.state.isAmbientContext&&this.isContextual(125))return this.tsInAmbientContext(()=>this.parseExportDeclaration(Z));let Q=this.state.startLoc,Y=this.eatContextual(125);if(Y&&(this.isContextual(125)||!this.shouldParseExportDeclaration()))throw this.raise(i.ExpectedAmbientAfterExportDeclare,this.state.startLoc);let G=O1(this.state.type)&&this.tsTryParseExportDeclaration()||super.parseExportDeclaration(Z);if(!G)return null;if(G.type==="TSInterfaceDeclaration"||G.type==="TSTypeAliasDeclaration"||Y)Z.exportKind="type";if(Y&&G.type!=="TSImportEqualsDeclaration")this.resetStartLocation(G,Q),G.declare=!0;return G}parseClassId(Z,Q,Y,H){if((!Q||Y)&&this.isContextual(113))return;super.parseClassId(Z,Q,Y,Z.declare?1024:8331);let G=this.tsTryParseTypeParameters(this.tsParseInOutConstModifiers);if(G)Z.typeParameters=G}parseClassPropertyAnnotation(Z){if(!Z.optional){if(this.eat(35))Z.definite=!0;else if(this.eat(17))Z.optional=!0}let Q=this.tsTryParseTypeAnnotation();if(Q)Z.typeAnnotation=Q}parseClassProperty(Z){if(this.parseClassPropertyAnnotation(Z),this.state.isAmbientContext&&!(Z.readonly&&!Z.typeAnnotation)&&this.match(29))this.raise(i.DeclareClassFieldHasInitializer,this.state.startLoc);if(Z.abstract&&this.match(29)){let{key:Q}=Z;this.raise(i.AbstractPropertyHasInitializer,this.state.startLoc,{propertyName:Q.type==="Identifier"&&!Z.computed?Q.name:`[${this.input.slice(this.offsetToSourcePos(Q.start),this.offsetToSourcePos(Q.end))}]`})}return super.parseClassProperty(Z)}parseClassPrivateProperty(Z){if(Z.abstract)this.raise(i.PrivateElementHasAbstract,Z);if(Z.accessibility)this.raise(i.PrivateElementHasAccessibility,Z,{modifier:Z.accessibility});return this.parseClassPropertyAnnotation(Z),super.parseClassPrivateProperty(Z)}parseClassAccessorProperty(Z){if(this.parseClassPropertyAnnotation(Z),Z.optional)this.raise(i.AccessorCannotBeOptional,Z);return super.parseClassAccessorProperty(Z)}pushClassMethod(Z,Q,Y,H,G,z){let W=this.tsTryParseTypeParameters(this.tsParseConstModifier);if(W&&G)this.raise(i.ConstructorHasTypeParameters,W);let{declare:V=!1,kind:U}=Q;if(V&&(U==="get"||U==="set"))this.raise(i.DeclareAccessor,Q,{kind:U});if(W)Q.typeParameters=W;super.pushClassMethod(Z,Q,Y,H,G,z)}pushClassPrivateMethod(Z,Q,Y,H){let G=this.tsTryParseTypeParameters(this.tsParseConstModifier);if(G)Q.typeParameters=G;super.pushClassPrivateMethod(Z,Q,Y,H)}declareClassPrivateMethodInScope(Z,Q){if(Z.type==="TSDeclareMethod")return;if(Z.type==="MethodDefinition"&&Z.value.body==null)return;super.declareClassPrivateMethodInScope(Z,Q)}parseClassSuper(Z){if(super.parseClassSuper(Z),Z.superClass&&(this.match(47)||this.match(51)))Z.superTypeParameters=this.tsParseTypeArgumentsInExpression();if(this.eatContextual(113))Z.implements=this.tsParseHeritageClause("implements")}parseObjPropValue(Z,Q,Y,H,G,z,W){let V=this.tsTryParseTypeParameters(this.tsParseConstModifier);if(V)Z.typeParameters=V;return super.parseObjPropValue(Z,Q,Y,H,G,z,W)}parseFunctionParams(Z,Q){let Y=this.tsTryParseTypeParameters(this.tsParseConstModifier);if(Y)Z.typeParameters=Y;super.parseFunctionParams(Z,Q)}parseVarId(Z,Q){if(super.parseVarId(Z,Q),Z.id.type==="Identifier"&&!this.hasPrecedingLineBreak()&&this.eat(35))Z.definite=!0;let Y=this.tsTryParseTypeAnnotation();if(Y)Z.id.typeAnnotation=Y,this.resetEndLocation(Z.id)}parseAsyncArrowFromCallExpression(Z,Q){if(this.match(14))Z.returnType=this.tsParseTypeAnnotation();return super.parseAsyncArrowFromCallExpression(Z,Q)}parseMaybeAssign(Z,Q){var Y,H,G,z,W;let V,U,$;if(this.hasPlugin("jsx")&&(this.match(143)||this.match(47))){if(V=this.state.clone(),U=this.tryParse(()=>super.parseMaybeAssign(Z,Q),V),!U.error)return U.node;let{context:A}=this.state,S=A[A.length-1];if(S===j1.j_oTag||S===j1.j_expr)A.pop()}if(!((Y=U)!=null&&Y.error)&&!this.match(47))return super.parseMaybeAssign(Z,Q);if(!V||V===this.state)V=this.state.clone();let j,C=this.tryParse((A)=>{var S,w;j=this.tsParseTypeParameters(this.tsParseConstModifier);let P=super.parseMaybeAssign(Z,Q);if(P.type!=="ArrowFunctionExpression"||(S=P.extra)!=null&&S.parenthesized)A();if(((w=j)==null?void 0:w.params.length)!==0)this.resetStartLocationFromNode(P,j);return P.typeParameters=j,P},V);if(!C.error&&!C.aborted){if(j)this.reportReservedArrowTypeParam(j);return C.node}if(!U){if(s8(!this.hasPlugin("jsx")),$=this.tryParse(()=>super.parseMaybeAssign(Z,Q),V),!$.error)return $.node}if((H=U)!=null&&H.node)return this.state=U.failState,U.node;if(C.node){if(this.state=C.failState,j)this.reportReservedArrowTypeParam(j);return C.node}if((G=$)!=null&&G.node)return this.state=$.failState,$.node;throw((z=U)==null?void 0:z.error)||C.error||((W=$)==null?void 0:W.error)}reportReservedArrowTypeParam(Z){var Q;if(Z.params.length===1&&!Z.params[0].constraint&&!((Q=Z.extra)!=null&&Q.trailingComma)&&this.getPluginOption("typescript","disallowAmbiguousJSXLike"))this.raise(i.ReservedArrowTypeParam,Z)}parseMaybeUnary(Z,Q){if(!this.hasPlugin("jsx")&&this.match(47))return this.tsParseTypeAssertion();return super.parseMaybeUnary(Z,Q)}parseArrow(Z){if(this.match(14)){let Q=this.tryParse((Y)=>{let H=this.tsParseTypeOrTypePredicateAnnotation(14);if(this.canInsertSemicolon()||!this.match(19))Y();return H});if(Q.aborted)return;if(!Q.thrown){if(Q.error)this.state=Q.failState;Z.returnType=Q.node}}return super.parseArrow(Z)}parseFunctionParamType(Z){if(this.eat(17))Z.optional=!0;let Q=this.tsTryParseTypeAnnotation();if(Q)Z.typeAnnotation=Q;return this.resetEndLocation(Z),Z}isAssignable(Z,Q){switch(Z.type){case"TSTypeCastExpression":return this.isAssignable(Z.expression,Q);case"TSParameterProperty":return!0;default:return super.isAssignable(Z,Q)}}toAssignable(Z,Q=!1){switch(Z.type){case"ParenthesizedExpression":this.toAssignableParenthesizedExpression(Z,Q);break;case"TSAsExpression":case"TSSatisfiesExpression":case"TSNonNullExpression":case"TSTypeAssertion":if(Q)this.expressionScope.recordArrowParameterBindingError(i.UnexpectedTypeCastInParameter,Z);else this.raise(i.UnexpectedTypeCastInParameter,Z);this.toAssignable(Z.expression,Q);break;case"AssignmentExpression":if(!Q&&Z.left.type==="TSTypeCastExpression")Z.left=this.typeCastToParameter(Z.left);default:super.toAssignable(Z,Q)}}toAssignableParenthesizedExpression(Z,Q){switch(Z.expression.type){case"TSAsExpression":case"TSSatisfiesExpression":case"TSNonNullExpression":case"TSTypeAssertion":case"ParenthesizedExpression":this.toAssignable(Z.expression,Q);break;default:super.toAssignable(Z,Q)}}checkToRestConversion(Z,Q){switch(Z.type){case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":case"TSNonNullExpression":this.checkToRestConversion(Z.expression,!1);break;default:super.checkToRestConversion(Z,Q)}}isValidLVal(Z,Q,Y){switch(Z){case"TSTypeCastExpression":return!0;case"TSParameterProperty":return"parameter";case"TSNonNullExpression":return"expression";case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":return(Y!==64||!Q)&&["expression",!0];default:return super.isValidLVal(Z,Q,Y)}}parseBindingAtom(){if(this.state.type===78)return this.parseIdentifier(!0);return super.parseBindingAtom()}parseMaybeDecoratorArguments(Z,Q){if(this.match(47)||this.match(51)){let Y=this.tsParseTypeArgumentsInExpression();if(this.match(10)){let H=super.parseMaybeDecoratorArguments(Z,Q);return H.typeParameters=Y,H}this.unexpected(null,10)}return super.parseMaybeDecoratorArguments(Z,Q)}checkCommaAfterRest(Z){if(this.state.isAmbientContext&&this.match(12)&&this.lookaheadCharCode()===Z)return this.next(),!1;return super.checkCommaAfterRest(Z)}isClassMethod(){return this.match(47)||super.isClassMethod()}isClassProperty(){return this.match(35)||this.match(14)||super.isClassProperty()}parseMaybeDefault(Z,Q){let Y=super.parseMaybeDefault(Z,Q);if(Y.type==="AssignmentPattern"&&Y.typeAnnotation&&Y.right.start<Y.typeAnnotation.start)this.raise(i.TypeAnnotationAfterAssign,Y.typeAnnotation);return Y}getTokenFromCode(Z){if(this.state.inType){if(Z===62){this.finishOp(48,1);return}if(Z===60){this.finishOp(47,1);return}}super.getTokenFromCode(Z)}reScan_lt_gt(){let{type:Z}=this.state;if(Z===47)this.state.pos-=1,this.readToken_lt();else if(Z===48)this.state.pos-=1,this.readToken_gt()}reScan_lt(){let{type:Z}=this.state;if(Z===51)return this.state.pos-=2,this.finishOp(47,1),47;return Z}toAssignableListItem(Z,Q,Y){let H=Z[Q];if(H.type==="TSTypeCastExpression")Z[Q]=this.typeCastToParameter(H);super.toAssignableListItem(Z,Q,Y)}typeCastToParameter(Z){return Z.expression.typeAnnotation=Z.typeAnnotation,this.resetEndLocation(Z.expression,Z.typeAnnotation.loc.end),Z.expression}shouldParseArrow(Z){if(this.match(14))return Z.every((Q)=>this.isAssignable(Q,!0));return super.shouldParseArrow(Z)}shouldParseAsyncArrow(){return this.match(14)||super.shouldParseAsyncArrow()}canHaveLeadingDecorator(){return super.canHaveLeadingDecorator()||this.isAbstractClass()}jsxParseOpeningElementAfterName(Z){if(this.match(47)||this.match(51)){let Q=this.tsTryParseAndCatch(()=>this.tsParseTypeArgumentsInExpression());if(Q)Z.typeParameters=Q}return super.jsxParseOpeningElementAfterName(Z)}getGetterSetterExpectedParamCount(Z){let Q=super.getGetterSetterExpectedParamCount(Z),H=this.getObjectOrClassMethodParams(Z)[0];return H&&this.isThisParam(H)?Q+1:Q}parseCatchClauseParam(){let Z=super.parseCatchClauseParam(),Q=this.tsTryParseTypeAnnotation();if(Q)Z.typeAnnotation=Q,this.resetEndLocation(Z);return Z}tsInAmbientContext(Z){let{isAmbientContext:Q,strict:Y}=this.state;this.state.isAmbientContext=!0,this.state.strict=!1;try{return Z()}finally{this.state.isAmbientContext=Q,this.state.strict=Y}}parseClass(Z,Q,Y){let H=this.state.inAbstractClass;this.state.inAbstractClass=!!Z.abstract;try{return super.parseClass(Z,Q,Y)}finally{this.state.inAbstractClass=H}}tsParseAbstractDeclaration(Z,Q){if(this.match(80))return Z.abstract=!0,this.maybeTakeDecorators(Q,this.parseClass(Z,!0,!1));else if(this.isContextual(129)){if(!this.hasFollowingLineBreak())return Z.abstract=!0,this.raise(i.NonClassMethodPropertyHasAbstractModifier,Z),this.tsParseInterfaceDeclaration(Z)}else this.unexpected(null,80)}parseMethod(Z,Q,Y,H,G,z,W){let V=super.parseMethod(Z,Q,Y,H,G,z,W);if(V.abstract||V.type==="TSAbstractMethodDefinition"){if((this.hasPlugin("estree")?V.value:V).body){let{key:j}=V;this.raise(i.AbstractMethodHasImplementation,V,{methodName:j.type==="Identifier"&&!V.computed?j.name:`[${this.input.slice(this.offsetToSourcePos(j.start),this.offsetToSourcePos(j.end))}]`})}}return V}tsParseTypeParameterName(){return this.parseIdentifier().name}shouldParseAsAmbientContext(){return!!this.getPluginOption("typescript","dts")}parse(){if(this.shouldParseAsAmbientContext())this.state.isAmbientContext=!0;return super.parse()}getExpression(){if(this.shouldParseAsAmbientContext())this.state.isAmbientContext=!0;return super.getExpression()}parseExportSpecifier(Z,Q,Y,H){if(!Q&&H)return this.parseTypeOnlyImportExportSpecifier(Z,!1,Y),this.finishNode(Z,"ExportSpecifier");return Z.exportKind="value",super.parseExportSpecifier(Z,Q,Y,H)}parseImportSpecifier(Z,Q,Y,H,G){if(!Q&&H)return this.parseTypeOnlyImportExportSpecifier(Z,!0,Y),this.finishNode(Z,"ImportSpecifier");return Z.importKind="value",super.parseImportSpecifier(Z,Q,Y,H,Y?4098:4096)}parseTypeOnlyImportExportSpecifier(Z,Q,Y){let H=Q?"imported":"local",G=Q?"local":"exported",z=Z[H],W,V=!1,U=!0,$=z.loc.start;if(this.isContextual(93)){let C=this.parseIdentifier();if(this.isContextual(93)){let A=this.parseIdentifier();if(M0(this.state.type))V=!0,z=C,W=Q?this.parseIdentifier():this.parseModuleExportName(),U=!1;else W=A,U=!1}else if(M0(this.state.type))U=!1,W=Q?this.parseIdentifier():this.parseModuleExportName();else V=!0,z=C}else if(M0(this.state.type))if(V=!0,Q){if(z=this.parseIdentifier(!0),!this.isContextual(93))this.checkReservedWord(z.name,z.loc.start,!0,!0)}else z=this.parseModuleExportName();if(V&&Y)this.raise(Q?i.TypeModifierIsUsedInTypeImports:i.TypeModifierIsUsedInTypeExports,$);Z[H]=z,Z[G]=W;let j=Q?"importKind":"exportKind";if(Z[j]=V?"type":"value",U&&this.eatContextual(93))Z[G]=Q?this.parseIdentifier():this.parseModuleExportName();if(!Z[G])Z[G]=this.cloneIdentifier(Z[H]);if(Q)this.checkIdentifier(Z[G],V?4098:4096)}fillOptionalPropertiesForTSESLint(Z){var Q,Y,H,G,z,W,V,U,$,j,C,A,S,w,P,b,t,m,d,U1,D1,L1,f1,e1,J0,Y0,V0,w0,l1,f0,u,_,L,c,J1,z1,A1,$1,I1,M1,q1,N1,k1,V1,S1,v1,p1,r1;switch(Z.type){case"ExpressionStatement":(Q=Z.directive)!=null||(Z.directive=void 0);return;case"RestElement":Z.value=void 0;case"Identifier":case"ArrayPattern":case"AssignmentPattern":case"ObjectPattern":(Y=Z.decorators)!=null||(Z.decorators=[]),(H=Z.optional)!=null||(Z.optional=!1),(G=Z.typeAnnotation)!=null||(Z.typeAnnotation=void 0);return;case"TSParameterProperty":(z=Z.accessibility)!=null||(Z.accessibility=void 0),(W=Z.decorators)!=null||(Z.decorators=[]),(V=Z.override)!=null||(Z.override=!1),(U=Z.readonly)!=null||(Z.readonly=!1),($=Z.static)!=null||(Z.static=!1);return;case"TSEmptyBodyFunctionExpression":Z.body=null;case"TSDeclareFunction":case"FunctionDeclaration":case"FunctionExpression":case"ClassMethod":case"ClassPrivateMethod":(j=Z.declare)!=null||(Z.declare=!1),(C=Z.returnType)!=null||(Z.returnType=void 0),(A=Z.typeParameters)!=null||(Z.typeParameters=void 0);return;case"Property":(S=Z.optional)!=null||(Z.optional=!1);return;case"TSMethodSignature":case"TSPropertySignature":(w=Z.optional)!=null||(Z.optional=!1);case"TSIndexSignature":(P=Z.accessibility)!=null||(Z.accessibility=void 0),(b=Z.readonly)!=null||(Z.readonly=!1),(t=Z.static)!=null||(Z.static=!1);return;case"TSAbstractPropertyDefinition":case"PropertyDefinition":case"TSAbstractAccessorProperty":case"AccessorProperty":(m=Z.declare)!=null||(Z.declare=!1),(d=Z.definite)!=null||(Z.definite=!1),(U1=Z.readonly)!=null||(Z.readonly=!1),(D1=Z.typeAnnotation)!=null||(Z.typeAnnotation=void 0);case"TSAbstractMethodDefinition":case"MethodDefinition":(L1=Z.accessibility)!=null||(Z.accessibility=void 0),(f1=Z.decorators)!=null||(Z.decorators=[]),(e1=Z.override)!=null||(Z.override=!1),(J0=Z.optional)!=null||(Z.optional=!1);return;case"ClassExpression":(Y0=Z.id)!=null||(Z.id=null);case"ClassDeclaration":(V0=Z.abstract)!=null||(Z.abstract=!1),(w0=Z.declare)!=null||(Z.declare=!1),(l1=Z.decorators)!=null||(Z.decorators=[]),(f0=Z.implements)!=null||(Z.implements=[]),(u=Z.superTypeArguments)!=null||(Z.superTypeArguments=void 0),(_=Z.typeParameters)!=null||(Z.typeParameters=void 0);return;case"TSTypeAliasDeclaration":case"VariableDeclaration":(L=Z.declare)!=null||(Z.declare=!1);return;case"VariableDeclarator":(c=Z.definite)!=null||(Z.definite=!1);return;case"TSEnumDeclaration":(J1=Z.const)!=null||(Z.const=!1),(z1=Z.declare)!=null||(Z.declare=!1);return;case"TSEnumMember":(A1=Z.computed)!=null||(Z.computed=!1);return;case"TSImportType":($1=Z.qualifier)!=null||(Z.qualifier=null),(I1=Z.options)!=null||(Z.options=null);return;case"TSInterfaceDeclaration":(M1=Z.declare)!=null||(Z.declare=!1),(q1=Z.extends)!=null||(Z.extends=[]);return;case"TSMappedType":(N1=Z.optional)!=null||(Z.optional=!1),(k1=Z.readonly)!=null||(Z.readonly=void 0);return;case"TSModuleDeclaration":(V1=Z.declare)!=null||(Z.declare=!1),(S1=Z.global)!=null||(Z.global=Z.kind==="global");return;case"TSTypeParameter":(v1=Z.const)!=null||(Z.const=!1),(p1=Z.in)!=null||(Z.in=!1),(r1=Z.out)!=null||(Z.out=!1);return}}};function vK(J){if(J.type!=="MemberExpression")return!1;let{computed:X,property:Z}=J;if(X&&Z.type!=="StringLiteral"&&(Z.type!=="TemplateLiteral"||Z.expressions.length>0))return!1;return T4(J.object)}function EK(J,X){var Z;let{type:Q}=J;if((Z=J.extra)!=null&&Z.parenthesized)return!1;if(X){if(Q==="Literal"){let{value:Y}=J;if(typeof Y==="string"||typeof Y==="boolean")return!0}}else if(Q==="StringLiteral"||Q==="BooleanLiteral")return!0;if(P4(J,X)||_K(J,X))return!0;if(Q==="TemplateLiteral"&&J.expressions.length===0)return!0;if(vK(J))return!0;return!1}function P4(J,X){if(X)return J.type==="Literal"&&(typeof J.value==="number"||("bigint"in J));return J.type==="NumericLiteral"||J.type==="BigIntLiteral"}function _K(J,X){if(J.type==="UnaryExpression"){let{operator:Z,argument:Q}=J;if(Z==="-"&&P4(Q,X))return!0}return!1}function T4(J){if(J.type==="Identifier")return!0;if(J.type!=="MemberExpression"||J.computed)return!1;return T4(J.object)}var n8=T0`placeholders`({ClassNameIsRequired:"A class name is required.",UnexpectedSpace:"Unexpected space in placeholder."}),gK=(J)=>class extends J{parsePlaceholder(Z){if(this.match(133)){let Q=this.startNode();return this.next(),this.assertNoSpace(),Q.name=super.parseIdentifier(!0),this.assertNoSpace(),this.expect(133),this.finishPlaceholder(Q,Z)}}finishPlaceholder(Z,Q){let Y=Z;if(!Y.expectedNode||!Y.type)Y=this.finishNode(Y,"Placeholder");return Y.expectedNode=Q,Y}getTokenFromCode(Z){if(Z===37&&this.input.charCodeAt(this.state.pos+1)===37)this.finishOp(133,2);else super.getTokenFromCode(Z)}parseExprAtom(Z){return this.parsePlaceholder("Expression")||super.parseExprAtom(Z)}parseIdentifier(Z){return this.parsePlaceholder("Identifier")||super.parseIdentifier(Z)}checkReservedWord(Z,Q,Y,H){if(Z!==void 0)super.checkReservedWord(Z,Q,Y,H)}cloneIdentifier(Z){let Q=super.cloneIdentifier(Z);if(Q.type==="Placeholder")Q.expectedNode=Z.expectedNode;return Q}cloneStringLiteral(Z){if(Z.type==="Placeholder")return this.cloneIdentifier(Z);return super.cloneStringLiteral(Z)}parseBindingAtom(){return this.parsePlaceholder("Pattern")||super.parseBindingAtom()}isValidLVal(Z,Q,Y){return Z==="Placeholder"||super.isValidLVal(Z,Q,Y)}toAssignable(Z,Q){if(Z&&Z.type==="Placeholder"&&Z.expectedNode==="Expression")Z.expectedNode="Pattern";else super.toAssignable(Z,Q)}chStartsBindingIdentifier(Z,Q){if(super.chStartsBindingIdentifier(Z,Q))return!0;let Y=this.nextTokenStart();if(this.input.charCodeAt(Y)===37&&this.input.charCodeAt(Y+1)===37)return!0;return!1}verifyBreakContinue(Z,Q){if(Z.label&&Z.label.type==="Placeholder")return;super.verifyBreakContinue(Z,Q)}parseExpressionStatement(Z,Q){var Y;if(Q.type!=="Placeholder"||(Y=Q.extra)!=null&&Y.parenthesized)return super.parseExpressionStatement(Z,Q);if(this.match(14)){let G=Z;return G.label=this.finishPlaceholder(Q,"Identifier"),this.next(),G.body=super.parseStatementOrSloppyAnnexBFunctionDeclaration(),this.finishNode(G,"LabeledStatement")}this.semicolon();let H=Z;return H.name=Q.name,this.finishPlaceholder(H,"Statement")}parseBlock(Z,Q,Y){return this.parsePlaceholder("BlockStatement")||super.parseBlock(Z,Q,Y)}parseFunctionId(Z){return this.parsePlaceholder("Identifier")||super.parseFunctionId(Z)}parseClass(Z,Q,Y){let H=Q?"ClassDeclaration":"ClassExpression";this.next();let G=this.state.strict,z=this.parsePlaceholder("Identifier");if(z)if(this.match(81)||this.match(133)||this.match(5))Z.id=z;else if(Y||!Q)return Z.id=null,Z.body=this.finishPlaceholder(z,"ClassBody"),this.finishNode(Z,H);else throw this.raise(n8.ClassNameIsRequired,this.state.startLoc);else this.parseClassId(Z,Q,Y);return super.parseClassSuper(Z),Z.body=this.parsePlaceholder("ClassBody")||super.parseClassBody(!!Z.superClass,G),this.finishNode(Z,H)}parseExport(Z,Q){let Y=this.parsePlaceholder("Identifier");if(!Y)return super.parseExport(Z,Q);let H=Z;if(!this.isContextual(98)&&!this.match(12))return H.specifiers=[],H.source=null,H.declaration=this.finishPlaceholder(Y,"Declaration"),this.finishNode(H,"ExportNamedDeclaration");this.expectPlugin("exportDefaultFrom");let G=this.startNode();return G.exported=Y,H.specifiers=[this.finishNode(G,"ExportDefaultSpecifier")],super.parseExport(H,Q)}isExportDefaultSpecifier(){if(this.match(65)){let Z=this.nextTokenStart();if(this.isUnparsedContextual(Z,"from")){if(this.input.startsWith(XJ(133),this.nextTokenStartSince(Z+4)))return!0}}return super.isExportDefaultSpecifier()}maybeParseExportDefaultSpecifier(Z,Q){var Y;if((Y=Z.specifiers)!=null&&Y.length)return!0;return super.maybeParseExportDefaultSpecifier(Z,Q)}checkExport(Z){let{specifiers:Q}=Z;if(Q!=null&&Q.length)Z.specifiers=Q.filter((Y)=>Y.exported.type==="Placeholder");super.checkExport(Z),Z.specifiers=Q}parseImport(Z){let Q=this.parsePlaceholder("Identifier");if(!Q)return super.parseImport(Z);if(Z.specifiers=[],!this.isContextual(98)&&!this.match(12))return Z.source=this.finishPlaceholder(Q,"StringLiteral"),this.semicolon(),this.finishNode(Z,"ImportDeclaration");let Y=this.startNodeAtNode(Q);if(Y.local=Q,Z.specifiers.push(this.finishNode(Y,"ImportDefaultSpecifier")),this.eat(12)){if(!this.maybeParseStarImportSpecifier(Z))this.parseNamedImportSpecifiers(Z)}return this.expectContextual(98),Z.source=this.parseImportSource(),this.semicolon(),this.finishNode(Z,"ImportDeclaration")}parseImportSource(){return this.parsePlaceholder("StringLiteral")||super.parseImportSource()}assertNoSpace(){if(this.state.start>this.offsetToSourcePos(this.state.lastTokEndLoc.index))this.raise(n8.UnexpectedSpace,this.state.lastTokEndLoc)}},fK=(J)=>class extends J{parseV8Intrinsic(){if(this.match(54)){let Z=this.state.startLoc,Q=this.startNode();if(this.next(),O1(this.state.type)){let Y=this.parseIdentifierName(),H=this.createIdentifier(Q,Y);if(this.castNodeTo(H,"V8IntrinsicIdentifier"),this.match(10))return H}this.unexpected(Z)}}parseExprAtom(Z){return this.parseV8Intrinsic()||super.parseExprAtom(Z)}},o8=["minimal","fsharp","hack","smart"],e8=["^^","@@","^","%","#"];function hK(J){if(J.has("decorators")){if(J.has("decorators-legacy"))throw Error("Cannot use the decorators and decorators-legacy plugin together");let Q=J.get("decorators").decoratorsBeforeExport;if(Q!=null&&typeof Q!=="boolean")throw Error("'decoratorsBeforeExport' must be a boolean, if specified.");let Y=J.get("decorators").allowCallParenthesized;if(Y!=null&&typeof Y!=="boolean")throw Error("'allowCallParenthesized' must be a boolean.")}if(J.has("flow")&&J.has("typescript"))throw Error("Cannot combine flow and typescript plugins.");if(J.has("placeholders")&&J.has("v8intrinsic"))throw Error("Cannot combine placeholders and v8intrinsic plugins.");if(J.has("pipelineOperator")){var X;let Q=J.get("pipelineOperator").proposal;if(!o8.includes(Q)){let Y=o8.map((H)=>`"${H}"`).join(", ");throw Error(`"pipelineOperator" requires "proposal" option whose value must be one of: ${Y}.`)}if(Q==="hack"){if(J.has("placeholders"))throw Error("Cannot combine placeholders plugin and Hack-style pipes.");if(J.has("v8intrinsic"))throw Error("Cannot combine v8intrinsic plugin and Hack-style pipes.");let Y=J.get("pipelineOperator").topicToken;if(!e8.includes(Y)){let H=e8.map((G)=>`"${G}"`).join(", ");throw Error(`"pipelineOperator" in "proposal": "hack" mode also requires a "topicToken" option whose value must be one of: ${H}.`)}{var Z;if(Y==="#"&&((Z=J.get("recordAndTuple"))==null?void 0:Z.syntaxType)==="hash")throw Error(`Plugin conflict between \`["pipelineOperator", { proposal: "hack", topicToken: "#" }]\` and \`${JSON.stringify(["recordAndTuple",J.get("recordAndTuple")])}\`.`)}}else if(Q==="smart"&&((X=J.get("recordAndTuple"))==null?void 0:X.syntaxType)==="hash")throw Error(`Plugin conflict between \`["pipelineOperator", { proposal: "smart" }]\` and \`${JSON.stringify(["recordAndTuple",J.get("recordAndTuple")])}\`.`)}if(J.has("moduleAttributes")){if(J.has("deprecatedImportAssert")||J.has("importAssertions"))throw Error("Cannot combine importAssertions, deprecatedImportAssert and moduleAttributes plugins.");if(J.get("moduleAttributes").version!=="may-2020")throw Error("The 'moduleAttributes' plugin requires a 'version' option, representing the last proposal update. Currently, the only supported value is 'may-2020'.")}if(J.has("importAssertions")){if(J.has("deprecatedImportAssert"))throw Error("Cannot combine importAssertions and deprecatedImportAssert plugins.")}if(!J.has("deprecatedImportAssert")&&J.has("importAttributes")&&J.get("importAttributes").deprecatedAssertSyntax)J.set("deprecatedImportAssert",{});if(J.has("recordAndTuple")){let Q=J.get("recordAndTuple").syntaxType;if(Q!=null){let Y=["hash","bar"];if(!Y.includes(Q))throw Error("The 'syntaxType' option of the 'recordAndTuple' plugin must be one of: "+Y.map((H)=>`'${H}'`).join(", "))}}if(J.has("asyncDoExpressions")&&!J.has("doExpressions")){let Q=Error("'asyncDoExpressions' requires 'doExpressions', please add 'doExpressions' to parser plugins.");throw Q.missingPlugins="doExpressions",Q}if(J.has("optionalChainingAssign")&&J.get("optionalChainingAssign").version!=="2023-07")throw Error("The 'optionalChainingAssign' plugin requires a 'version' option, representing the last proposal update. Currently, the only supported value is '2023-07'.");if(J.has("discardBinding")&&J.get("discardBinding").syntaxType!=="void")throw Error("The 'discardBinding' plugin requires a 'syntaxType' option. Currently the only supported value is 'void'.")}var L4={estree:mV,jsx:OK,flow:qK,typescript:bK,v8intrinsic:fK,placeholders:gK},xK=Object.keys(L4);class k4 extends S4{checkProto(J,X,Z,Q){if(J.type==="SpreadElement"||this.isObjectMethod(J)||J.computed||J.shorthand)return Z;let Y=J.key;if((Y.type==="Identifier"?Y.name:Y.value)==="__proto__"){if(X)return this.raise(M.RecordNoProto,Y),!0;if(Z)if(Q){if(Q.doubleProtoLoc===null)Q.doubleProtoLoc=Y.loc.start}else this.raise(M.DuplicateProto,Y);return!0}return Z}shouldExitDescending(J,X){return J.type==="ArrowFunctionExpression"&&this.offsetToSourcePos(J.start)===X}getExpression(){if(this.enterInitialScopes(),this.nextToken(),this.match(140))throw this.raise(M.ParseExpressionEmptyInput,this.state.startLoc);let J=this.parseExpression();if(!this.match(140))throw this.raise(M.ParseExpressionExpectsEOF,this.state.startLoc,{unexpected:this.input.codePointAt(this.state.start)});if(this.finalizeRemainingComments(),J.comments=this.comments,J.errors=this.state.errors,this.optionFlags&256)J.tokens=this.tokens;return J}parseExpression(J,X){if(J)return this.disallowInAnd(()=>this.parseExpressionBase(X));return this.allowInAnd(()=>this.parseExpressionBase(X))}parseExpressionBase(J){let X=this.state.startLoc,Z=this.parseMaybeAssign(J);if(this.match(12)){let Q=this.startNodeAt(X);Q.expressions=[Z];while(this.eat(12))Q.expressions.push(this.parseMaybeAssign(J));return this.toReferencedList(Q.expressions),this.finishNode(Q,"SequenceExpression")}return Z}parseMaybeAssignDisallowIn(J,X){return this.disallowInAnd(()=>this.parseMaybeAssign(J,X))}parseMaybeAssignAllowIn(J,X){return this.allowInAnd(()=>this.parseMaybeAssign(J,X))}setOptionalParametersError(J){J.optionalParametersLoc=this.state.startLoc}parseMaybeAssign(J,X){let Z=this.state.startLoc,Q=this.isContextual(108);if(Q){if(this.prodParam.hasYield){this.next();let z=this.parseYield(Z);if(X)z=X.call(this,z,Z);return z}}let Y;if(J)Y=!1;else J=new D9,Y=!0;let{type:H}=this.state;if(H===10||O1(H))this.state.potentialArrowAt=this.state.start;let G=this.parseMaybeConditional(J);if(X)G=X.call(this,G,Z);if(rV(this.state.type)){let z=this.startNodeAt(Z),W=this.state.value;if(z.operator=W,this.match(29)){this.toAssignable(G,!0),z.left=G;let V=Z.index;if(J.doubleProtoLoc!=null&&J.doubleProtoLoc.index>=V)J.doubleProtoLoc=null;if(J.shorthandAssignLoc!=null&&J.shorthandAssignLoc.index>=V)J.shorthandAssignLoc=null;if(J.privateKeyLoc!=null&&J.privateKeyLoc.index>=V)this.checkDestructuringPrivate(J),J.privateKeyLoc=null;if(J.voidPatternLoc!=null&&J.voidPatternLoc.index>=V)J.voidPatternLoc=null}else z.left=G;return this.next(),z.right=this.parseMaybeAssign(),this.checkLVal(G,this.finishNode(z,"AssignmentExpression")),z}else if(Y)this.checkExpressionErrors(J,!0);if(Q){let{type:z}=this.state;if((this.hasPlugin("v8intrinsic")?O9(z):O9(z)&&!this.match(54))&&!this.isAmbiguousPrefixOrIdentifier())return this.raiseOverwrite(M.YieldNotInGeneratorFunction,Z),this.parseYield(Z)}return G}parseMaybeConditional(J){let X=this.state.startLoc,Z=this.state.potentialArrowAt,Q=this.parseExprOps(J);if(this.shouldExitDescending(Q,Z))return Q;return this.parseConditional(Q,X,J)}parseConditional(J,X,Z){if(this.eat(17)){let Q=this.startNodeAt(X);return Q.test=J,Q.consequent=this.parseMaybeAssignAllowIn(),this.expect(14),Q.alternate=this.parseMaybeAssign(),this.finishNode(Q,"ConditionalExpression")}return J}parseMaybeUnaryOrPrivate(J){return this.match(139)?this.parsePrivateName():this.parseMaybeUnary(J)}parseExprOps(J){let X=this.state.startLoc,Z=this.state.potentialArrowAt,Q=this.parseMaybeUnaryOrPrivate(J);if(this.shouldExitDescending(Q,Z))return Q;return this.parseExprOp(Q,X,-1)}parseExprOp(J,X,Z){if(this.isPrivateName(J)){let Y=this.getPrivateNameSV(J);if(Z>=qX(58)||!this.prodParam.hasIn||!this.match(58))this.raise(M.PrivateInExpectedIn,J,{identifierName:Y});this.classScope.usePrivateName(Y,J.loc.start)}let Q=this.state.type;if(aV(Q)&&(this.prodParam.hasIn||!this.match(58))){let Y=qX(Q);if(Y>Z){if(Q===39){if(this.expectPlugin("pipelineOperator"),this.state.inFSharpPipelineDirectBody)return J;this.checkPipelineAtInfixOperator(J,X)}let H=this.startNodeAt(X);H.left=J,H.operator=this.state.value;let G=Q===41||Q===42,z=Q===40;if(z)Y=qX(42);if(this.next(),Q===39&&this.hasPlugin(["pipelineOperator",{proposal:"minimal"}])){if(this.state.type===96&&this.prodParam.hasAwait)throw this.raise(M.UnexpectedAwaitAfterPipelineBody,this.state.startLoc)}H.right=this.parseExprOpRightExpr(Q,Y);let W=this.finishNode(H,G||z?"LogicalExpression":"BinaryExpression"),V=this.state.type;if(z&&(V===41||V===42)||G&&V===40)throw this.raise(M.MixingCoalesceWithLogical,this.state.startLoc);return this.parseExprOp(W,X,Z)}}return J}parseExprOpRightExpr(J,X){let Z=this.state.startLoc;switch(J){case 39:switch(this.getPluginOption("pipelineOperator","proposal")){case"hack":return this.withTopicBindingContext(()=>{return this.parseHackPipeBody()});case"fsharp":return this.withSoloAwaitPermittingContext(()=>{return this.parseFSharpPipelineBody(X)})}if(this.getPluginOption("pipelineOperator","proposal")==="smart")return this.withTopicBindingContext(()=>{if(this.prodParam.hasYield&&this.isContextual(108))throw this.raise(M.PipeBodyIsTighter,this.state.startLoc);return this.parseSmartPipelineBodyInStyle(this.parseExprOpBaseRightExpr(J,X),Z)});default:return this.parseExprOpBaseRightExpr(J,X)}}parseExprOpBaseRightExpr(J,X){let Z=this.state.startLoc;return this.parseExprOp(this.parseMaybeUnaryOrPrivate(),Z,eV(J)?X-1:X)}parseHackPipeBody(){var J;let{startLoc:X}=this.state,Z=this.parseMaybeAssign();if(_V.has(Z.type)&&!((J=Z.extra)!=null&&J.parenthesized))this.raise(M.PipeUnparenthesizedBody,X,{type:Z.type});if(!this.topicReferenceWasUsedInCurrentContext())this.raise(M.PipeTopicUnused,X);return Z}checkExponentialAfterUnary(J){if(this.match(57))this.raise(M.UnexpectedTokenUnaryExponentiation,J.argument)}parseMaybeUnary(J,X){let Z=this.state.startLoc,Q=this.isContextual(96);if(Q&&this.recordAwaitIfAllowed()){this.next();let z=this.parseAwait(Z);if(!X)this.checkExponentialAfterUnary(z);return z}let Y=this.match(34),H=this.startNode();if(tV(this.state.type)){if(H.operator=this.state.value,H.prefix=!0,this.match(72))this.expectPlugin("throwExpressions");let z=this.match(89);if(this.next(),H.argument=this.parseMaybeUnary(null,!0),this.checkExpressionErrors(J,!0),this.state.strict&&z){let W=H.argument;if(W.type==="Identifier")this.raise(M.StrictDelete,H);else if(this.hasPropertyAsPrivateName(W))this.raise(M.DeletePrivateField,H)}if(!Y){if(!X)this.checkExponentialAfterUnary(H);return this.finishNode(H,"UnaryExpression")}}let G=this.parseUpdate(H,Y,J);if(Q){let{type:z}=this.state;if((this.hasPlugin("v8intrinsic")?O9(z):O9(z)&&!this.match(54))&&!this.isAmbiguousPrefixOrIdentifier())return this.raiseOverwrite(M.AwaitNotInAsyncContext,Z),this.parseAwait(Z)}return G}parseUpdate(J,X,Z){if(X){let H=J;return this.checkLVal(H.argument,this.finishNode(H,"UpdateExpression")),J}let Q=this.state.startLoc,Y=this.parseExprSubscripts(Z);if(this.checkExpressionErrors(Z,!1))return Y;while(sV(this.state.type)&&!this.canInsertSemicolon()){let H=this.startNodeAt(Q);H.operator=this.state.value,H.prefix=!1,H.argument=Y,this.next(),this.checkLVal(Y,Y=this.finishNode(H,"UpdateExpression"))}return Y}parseExprSubscripts(J){let X=this.state.startLoc,Z=this.state.potentialArrowAt,Q=this.parseExprAtom(J);if(this.shouldExitDescending(Q,Z))return Q;return this.parseSubscripts(Q,X)}parseSubscripts(J,X,Z){let Q={optionalChainMember:!1,maybeAsyncArrow:this.atPossibleAsyncArrow(J),stop:!1};do J=this.parseSubscript(J,X,Z,Q),Q.maybeAsyncArrow=!1;while(!Q.stop);return J}parseSubscript(J,X,Z,Q){let{type:Y}=this.state;if(!Z&&Y===15)return this.parseBind(J,X,Z,Q);else if(jX(Y))return this.parseTaggedTemplateExpression(J,X,Q);let H=!1;if(Y===18){if(Z){if(this.raise(M.OptionalChainingNoNew,this.state.startLoc),this.lookaheadCharCode()===40)return this.stopParseSubscript(J,Q)}Q.optionalChainMember=H=!0,this.next()}if(!Z&&this.match(10))return this.parseCoverCallAndAsyncArrowHead(J,X,Q,H);else{let G=this.eat(0);if(G||H||this.eat(16))return this.parseMember(J,X,Q,G,H);else return this.stopParseSubscript(J,Q)}}stopParseSubscript(J,X){return X.stop=!0,J}parseMember(J,X,Z,Q,Y){let H=this.startNodeAt(X);if(H.object=J,H.computed=Q,Q)H.property=this.parseExpression(),this.expect(3);else if(this.match(139)){if(J.type==="Super")this.raise(M.SuperPrivateField,X);this.classScope.usePrivateName(this.state.value,this.state.startLoc),H.property=this.parsePrivateName()}else H.property=this.parseIdentifier(!0);if(Z.optionalChainMember)return H.optional=Y,this.finishNode(H,"OptionalMemberExpression");else return this.finishNode(H,"MemberExpression")}parseBind(J,X,Z,Q){let Y=this.startNodeAt(X);return Y.object=J,this.next(),Y.callee=this.parseNoCallExpr(),Q.stop=!0,this.parseSubscripts(this.finishNode(Y,"BindExpression"),X,Z)}parseCoverCallAndAsyncArrowHead(J,X,Z,Q){let Y=this.state.maybeInArrowParameters,H=null;this.state.maybeInArrowParameters=!0,this.next();let G=this.startNodeAt(X);G.callee=J;let{maybeAsyncArrow:z,optionalChainMember:W}=Z;if(z)this.expressionScope.enter(PK()),H=new D9;if(W)G.optional=Q;if(Q)G.arguments=this.parseCallExpressionArguments();else G.arguments=this.parseCallExpressionArguments(J.type!=="Super",G,H);let V=this.finishCallExpression(G,W);if(z&&this.shouldParseAsyncArrow()&&!Q)Z.stop=!0,this.checkDestructuringPrivate(H),this.expressionScope.validateAsPattern(),this.expressionScope.exit(),V=this.parseAsyncArrowFromCallExpression(this.startNodeAt(X),V);else{if(z)this.checkExpressionErrors(H,!0),this.expressionScope.exit();this.toReferencedArguments(V)}return this.state.maybeInArrowParameters=Y,V}toReferencedArguments(J,X){this.toReferencedListDeep(J.arguments,X)}parseTaggedTemplateExpression(J,X,Z){let Q=this.startNodeAt(X);if(Q.tag=J,Q.quasi=this.parseTemplate(!0),Z.optionalChainMember)this.raise(M.OptionalChainingNoTemplate,X);return this.finishNode(Q,"TaggedTemplateExpression")}atPossibleAsyncArrow(J){return J.type==="Identifier"&&J.name==="async"&&this.state.lastTokEndLoc.index===J.end&&!this.canInsertSemicolon()&&J.end-J.start===5&&this.offsetToSourcePos(J.start)===this.state.potentialArrowAt}finishCallExpression(J,X){if(J.callee.type==="Import"){if(J.arguments.length===0||J.arguments.length>2)this.raise(M.ImportCallArity,J);else for(let Z of J.arguments)if(Z.type==="SpreadElement")this.raise(M.ImportCallSpreadArgument,Z)}return this.finishNode(J,X?"OptionalCallExpression":"CallExpression")}parseCallExpressionArguments(J,X,Z){let Q=[],Y=!0,H=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!1;while(!this.eat(11)){if(Y)Y=!1;else if(this.expect(12),this.match(11)){if(X)this.addTrailingCommaExtraToNode(X);this.next();break}Q.push(this.parseExprListItem(11,!1,Z,J))}return this.state.inFSharpPipelineDirectBody=H,Q}shouldParseAsyncArrow(){return this.match(19)&&!this.canInsertSemicolon()}parseAsyncArrowFromCallExpression(J,X){var Z;if(this.resetPreviousNodeTrailingComments(X),this.expect(19),this.parseArrowExpression(J,X.arguments,!0,(Z=X.extra)==null?void 0:Z.trailingCommaLoc),X.innerComments)N9(J,X.innerComments);if(X.callee.trailingComments)N9(J,X.callee.trailingComments);return J}parseNoCallExpr(){let J=this.state.startLoc;return this.parseSubscripts(this.parseExprAtom(),J,!0)}parseExprAtom(J){let X,Z=null,{type:Q}=this.state;switch(Q){case 79:return this.parseSuper();case 83:if(X=this.startNode(),this.next(),this.match(16))return this.parseImportMetaPropertyOrPhaseCall(X);if(this.match(10))if(this.optionFlags&512)return this.parseImportCall(X);else return this.finishNode(X,"Import");else return this.raise(M.UnsupportedImport,this.state.lastTokStartLoc),this.finishNode(X,"Import");case 78:return X=this.startNode(),this.next(),this.finishNode(X,"ThisExpression");case 90:return this.parseDo(this.startNode(),!1);case 56:case 31:return this.readRegexp(),this.parseRegExpLiteral(this.state.value);case 135:return this.parseNumericLiteral(this.state.value);case 136:return this.parseBigIntLiteral(this.state.value);case 134:return this.parseStringLiteral(this.state.value);case 84:return this.parseNullLiteral();case 85:return this.parseBooleanLiteral(!0);case 86:return this.parseBooleanLiteral(!1);case 10:{let Y=this.state.potentialArrowAt===this.state.start;return this.parseParenAndDistinguishExpression(Y)}case 0:return this.parseArrayLike(3,!0,!1,J);case 5:return this.parseObjectLike(8,!1,!1,J);case 68:return this.parseFunctionOrFunctionSent();case 26:Z=this.parseDecorators();case 80:return this.parseClass(this.maybeTakeDecorators(Z,this.startNode()),!1);case 77:return this.parseNewOrNewTarget();case 25:case 24:return this.parseTemplate(!1);case 15:{X=this.startNode(),this.next(),X.object=null;let Y=X.callee=this.parseNoCallExpr();if(Y.type==="MemberExpression")return this.finishNode(X,"BindExpression");else throw this.raise(M.UnsupportedBind,Y)}case 139:return this.raise(M.PrivateInExpectedIn,this.state.startLoc,{identifierName:this.state.value}),this.parsePrivateName();case 33:return this.parseTopicReferenceThenEqualsSign(54,"%");case 32:return this.parseTopicReferenceThenEqualsSign(44,"^");case 37:case 38:return this.parseTopicReference("hack");case 44:case 54:case 27:{let Y=this.getPluginOption("pipelineOperator","proposal");if(Y)return this.parseTopicReference(Y);this.unexpected();break}case 47:{let Y=this.input.codePointAt(this.nextTokenStart());if(l0(Y)||Y===62)this.expectOnePlugin(["jsx","flow","typescript"]);else this.unexpected();break}default:if(Q===137)return this.parseDecimalLiteral(this.state.value);else if(Q===2||Q===1)return this.parseArrayLike(this.state.type===2?4:3,!1,!0);else if(Q===6||Q===7)return this.parseObjectLike(this.state.type===6?9:8,!1,!0);if(O1(Q)){if(this.isContextual(127)&&this.lookaheadInLineCharCode()===123)return this.parseModuleExpression();let Y=this.state.potentialArrowAt===this.state.start,H=this.state.containsEsc,G=this.parseIdentifier();if(!H&&G.name==="async"&&!this.canInsertSemicolon()){let{type:z}=this.state;if(z===68)return this.resetPreviousNodeTrailingComments(G),this.next(),this.parseAsyncFunctionExpression(this.startNodeAtNode(G));else if(O1(z))if(this.lookaheadCharCode()===61)return this.parseAsyncArrowUnaryFunction(this.startNodeAtNode(G));else return G;else if(z===90)return this.resetPreviousNodeTrailingComments(G),this.parseDo(this.startNodeAtNode(G),!0)}if(Y&&this.match(19)&&!this.canInsertSemicolon())return this.next(),this.parseArrowExpression(this.startNodeAtNode(G),[G],!1);return G}else this.unexpected()}}parseTopicReferenceThenEqualsSign(J,X){let Z=this.getPluginOption("pipelineOperator","proposal");if(Z)return this.state.type=J,this.state.value=X,this.state.pos--,this.state.end--,this.state.endLoc=a1(this.state.endLoc,-1),this.parseTopicReference(Z);else this.unexpected()}parseTopicReference(J){let X=this.startNode(),Z=this.state.startLoc,Q=this.state.type;return this.next(),this.finishTopicReference(X,Z,J,Q)}finishTopicReference(J,X,Z,Q){if(this.testTopicReferenceConfiguration(Z,X,Q))if(Z==="hack"){if(!this.topicReferenceIsAllowedInCurrentContext())this.raise(M.PipeTopicUnbound,X);return this.registerTopicReference(),this.finishNode(J,"TopicReference")}else{if(!this.topicReferenceIsAllowedInCurrentContext())this.raise(M.PrimaryTopicNotAllowed,X);return this.registerTopicReference(),this.finishNode(J,"PipelinePrimaryTopicReference")}else throw this.raise(M.PipeTopicUnconfiguredToken,X,{token:XJ(Q)})}testTopicReferenceConfiguration(J,X,Z){switch(J){case"hack":return this.hasPlugin(["pipelineOperator",{topicToken:XJ(Z)}]);case"smart":return Z===27;default:throw this.raise(M.PipeTopicRequiresHackPipes,X)}}parseAsyncArrowUnaryFunction(J){this.prodParam.enter(FX(!0,this.prodParam.hasYield));let X=[this.parseIdentifier()];if(this.prodParam.exit(),this.hasPrecedingLineBreak())this.raise(M.LineTerminatorBeforeArrow,this.state.curPosition());return this.expect(19),this.parseArrowExpression(J,X,!0)}parseDo(J,X){if(this.expectPlugin("doExpressions"),X)this.expectPlugin("asyncDoExpressions");J.async=X,this.next();let Z=this.state.labels;if(this.state.labels=[],X)this.prodParam.enter(2),J.body=this.parseBlock(),this.prodParam.exit();else J.body=this.parseBlock();return this.state.labels=Z,this.finishNode(J,"DoExpression")}parseSuper(){let J=this.startNode();if(this.next(),this.match(10)&&!this.scope.allowDirectSuper&&!(this.optionFlags&16))this.raise(M.SuperNotAllowed,J);else if(!this.scope.allowSuper&&!(this.optionFlags&16))this.raise(M.UnexpectedSuper,J);if(!this.match(10)&&!this.match(0)&&!this.match(16))this.raise(M.UnsupportedSuper,J);return this.finishNode(J,"Super")}parsePrivateName(){let J=this.startNode(),X=this.startNodeAt(a1(this.state.startLoc,1)),Z=this.state.value;return this.next(),J.id=this.createIdentifier(X,Z),this.finishNode(J,"PrivateName")}parseFunctionOrFunctionSent(){let J=this.startNode();if(this.next(),this.prodParam.hasYield&&this.match(16)){let X=this.createIdentifier(this.startNodeAtNode(J),"function");if(this.next(),this.match(103))this.expectPlugin("functionSent");else if(!this.hasPlugin("functionSent"))this.unexpected();return this.parseMetaProperty(J,X,"sent")}return this.parseFunction(J)}parseMetaProperty(J,X,Z){J.meta=X;let Q=this.state.containsEsc;if(J.property=this.parseIdentifier(!0),J.property.name!==Z||Q)this.raise(M.UnsupportedMetaProperty,J.property,{target:X.name,onlyValidPropertyName:Z});return this.finishNode(J,"MetaProperty")}parseImportMetaPropertyOrPhaseCall(J){if(this.next(),this.isContextual(105)||this.isContextual(97)){let X=this.isContextual(105);return this.expectPlugin(X?"sourcePhaseImports":"deferredImportEvaluation"),this.next(),J.phase=X?"source":"defer",this.parseImportCall(J)}else{let X=this.createIdentifierAt(this.startNodeAtNode(J),"import",this.state.lastTokStartLoc);if(this.isContextual(101)){if(!this.inModule)this.raise(M.ImportMetaOutsideModule,X);this.sawUnambiguousESM=!0}return this.parseMetaProperty(J,X,"meta")}}parseLiteralAtNode(J,X,Z){return this.addExtra(Z,"rawValue",J),this.addExtra(Z,"raw",this.input.slice(this.offsetToSourcePos(Z.start),this.state.end)),Z.value=J,this.next(),this.finishNode(Z,X)}parseLiteral(J,X){let Z=this.startNode();return this.parseLiteralAtNode(J,X,Z)}parseStringLiteral(J){return this.parseLiteral(J,"StringLiteral")}parseNumericLiteral(J){return this.parseLiteral(J,"NumericLiteral")}parseBigIntLiteral(J){return this.parseLiteral(J,"BigIntLiteral")}parseDecimalLiteral(J){return this.parseLiteral(J,"DecimalLiteral")}parseRegExpLiteral(J){let X=this.startNode();return this.addExtra(X,"raw",this.input.slice(this.offsetToSourcePos(X.start),this.state.end)),X.pattern=J.pattern,X.flags=J.flags,this.next(),this.finishNode(X,"RegExpLiteral")}parseBooleanLiteral(J){let X=this.startNode();return X.value=J,this.next(),this.finishNode(X,"BooleanLiteral")}parseNullLiteral(){let J=this.startNode();return this.next(),this.finishNode(J,"NullLiteral")}parseParenAndDistinguishExpression(J){let X=this.state.startLoc,Z;this.next(),this.expressionScope.enter(SK());let Q=this.state.maybeInArrowParameters,Y=this.state.inFSharpPipelineDirectBody;this.state.maybeInArrowParameters=!0,this.state.inFSharpPipelineDirectBody=!1;let H=this.state.startLoc,G=[],z=new D9,W=!0,V,U;while(!this.match(11)){if(W)W=!1;else if(this.expect(12,z.optionalParametersLoc===null?null:z.optionalParametersLoc),this.match(11)){U=this.state.startLoc;break}if(this.match(21)){let C=this.state.startLoc;if(V=this.state.startLoc,G.push(this.parseParenItem(this.parseRestBinding(),C)),!this.checkCommaAfterRest(41))break}else G.push(this.parseMaybeAssignAllowInOrVoidPattern(11,z,this.parseParenItem))}let $=this.state.lastTokEndLoc;this.expect(11),this.state.maybeInArrowParameters=Q,this.state.inFSharpPipelineDirectBody=Y;let j=this.startNodeAt(X);if(J&&this.shouldParseArrow(G)&&(j=this.parseArrow(j)))return this.checkDestructuringPrivate(z),this.expressionScope.validateAsPattern(),this.expressionScope.exit(),this.parseArrowExpression(j,G,!1),j;if(this.expressionScope.exit(),!G.length)this.unexpected(this.state.lastTokStartLoc);if(U)this.unexpected(U);if(V)this.unexpected(V);if(this.checkExpressionErrors(z,!0),this.toReferencedListDeep(G,!0),G.length>1)Z=this.startNodeAt(H),Z.expressions=G,this.finishNode(Z,"SequenceExpression"),this.resetEndLocation(Z,$);else Z=G[0];return this.wrapParenthesis(X,Z)}wrapParenthesis(J,X){if(!(this.optionFlags&1024))return this.addExtra(X,"parenthesized",!0),this.addExtra(X,"parenStart",J.index),this.takeSurroundingComments(X,J.index,this.state.lastTokEndLoc.index),X;let Z=this.startNodeAt(J);return Z.expression=X,this.finishNode(Z,"ParenthesizedExpression")}shouldParseArrow(J){return!this.canInsertSemicolon()}parseArrow(J){if(this.eat(19))return J}parseParenItem(J,X){return J}parseNewOrNewTarget(){let J=this.startNode();if(this.next(),this.match(16)){let X=this.createIdentifier(this.startNodeAtNode(J),"new");this.next();let Z=this.parseMetaProperty(J,X,"target");if(!this.scope.allowNewTarget)this.raise(M.UnexpectedNewTarget,Z);return Z}return this.parseNew(J)}parseNew(J){if(this.parseNewCallee(J),this.eat(10)){let X=this.parseExprList(11);this.toReferencedList(X),J.arguments=X}else J.arguments=[];return this.finishNode(J,"NewExpression")}parseNewCallee(J){let X=this.match(83),Z=this.parseNoCallExpr();if(J.callee=Z,X&&(Z.type==="Import"||Z.type==="ImportExpression"))this.raise(M.ImportCallNotNewExpression,Z)}parseTemplateElement(J){let{start:X,startLoc:Z,end:Q,value:Y}=this.state,H=X+1,G=this.startNodeAt(a1(Z,1));if(Y===null){if(!J)this.raise(M.InvalidEscapeSequenceTemplate,a1(this.state.firstInvalidTemplateEscapePos,1))}let z=this.match(24),W=z?-1:-2,V=Q+W;G.value={raw:this.input.slice(H,V).replace(/\r\n?/g,`
10
+ `),cooked:Y===null?null:Y.slice(1,W)},G.tail=z,this.next();let U=this.finishNode(G,"TemplateElement");return this.resetEndLocation(U,a1(this.state.lastTokEndLoc,W)),U}parseTemplate(J){let X=this.startNode(),Z=this.parseTemplateElement(J),Q=[Z],Y=[];while(!Z.tail)Y.push(this.parseTemplateSubstitution()),this.readTemplateContinuation(),Q.push(Z=this.parseTemplateElement(J));return X.expressions=Y,X.quasis=Q,this.finishNode(X,"TemplateLiteral")}parseTemplateSubstitution(){return this.parseExpression()}parseObjectLike(J,X,Z,Q){if(Z)this.expectPlugin("recordAndTuple");let Y=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!1;let H=!1,G=!0,z=this.startNode();z.properties=[],this.next();while(!this.match(J)){if(G)G=!1;else if(this.expect(12),this.match(J)){this.addTrailingCommaExtraToNode(z);break}let V;if(X)V=this.parseBindingProperty();else V=this.parsePropertyDefinition(Q),H=this.checkProto(V,Z,H,Q);if(Z&&!this.isObjectProperty(V)&&V.type!=="SpreadElement")this.raise(M.InvalidRecordProperty,V);if(V.shorthand)this.addExtra(V,"shorthand",!0);z.properties.push(V)}this.next(),this.state.inFSharpPipelineDirectBody=Y;let W="ObjectExpression";if(X)W="ObjectPattern";else if(Z)W="RecordExpression";return this.finishNode(z,W)}addTrailingCommaExtraToNode(J){this.addExtra(J,"trailingComma",this.state.lastTokStartLoc.index),this.addExtra(J,"trailingCommaLoc",this.state.lastTokStartLoc,!1)}maybeAsyncOrAccessorProp(J){return!J.computed&&J.key.type==="Identifier"&&(this.isLiteralPropertyName()||this.match(0)||this.match(55))}parsePropertyDefinition(J){let X=[];if(this.match(26)){if(this.hasPlugin("decorators"))this.raise(M.UnsupportedPropertyDecorator,this.state.startLoc);while(this.match(26))X.push(this.parseDecorator())}let Z=this.startNode(),Q=!1,Y=!1,H;if(this.match(21)){if(X.length)this.unexpected();return this.parseSpread()}if(X.length)Z.decorators=X,X=[];if(Z.method=!1,J)H=this.state.startLoc;let G=this.eat(55);this.parsePropertyNamePrefixOperator(Z);let z=this.state.containsEsc;if(this.parsePropertyName(Z,J),!G&&!z&&this.maybeAsyncOrAccessorProp(Z)){let{key:W}=Z,V=W.name;if(V==="async"&&!this.hasPrecedingLineBreak())Q=!0,this.resetPreviousNodeTrailingComments(W),G=this.eat(55),this.parsePropertyName(Z);if(V==="get"||V==="set"){if(Y=!0,this.resetPreviousNodeTrailingComments(W),Z.kind=V,this.match(55))G=!0,this.raise(M.AccessorIsGenerator,this.state.curPosition(),{kind:V}),this.next();this.parsePropertyName(Z)}}return this.parseObjPropValue(Z,H,G,Q,!1,Y,J)}getGetterSetterExpectedParamCount(J){return J.kind==="get"?0:1}getObjectOrClassMethodParams(J){return J.params}checkGetterSetterParams(J){var X;let Z=this.getGetterSetterExpectedParamCount(J),Q=this.getObjectOrClassMethodParams(J);if(Q.length!==Z)this.raise(J.kind==="get"?M.BadGetterArity:M.BadSetterArity,J);if(J.kind==="set"&&((X=Q[Q.length-1])==null?void 0:X.type)==="RestElement")this.raise(M.BadSetterRestParameter,J)}parseObjectMethod(J,X,Z,Q,Y){if(Y){let H=this.parseMethod(J,X,!1,!1,!1,"ObjectMethod");return this.checkGetterSetterParams(H),H}if(Z||X||this.match(10)){if(Q)this.unexpected();return J.kind="method",J.method=!0,this.parseMethod(J,X,Z,!1,!1,"ObjectMethod")}}parseObjectProperty(J,X,Z,Q){if(J.shorthand=!1,this.eat(14))return J.value=Z?this.parseMaybeDefault(this.state.startLoc):this.parseMaybeAssignAllowInOrVoidPattern(8,Q),this.finishObjectProperty(J);if(!J.computed&&J.key.type==="Identifier"){if(this.checkReservedWord(J.key.name,J.key.loc.start,!0,!1),Z)J.value=this.parseMaybeDefault(X,this.cloneIdentifier(J.key));else if(this.match(29)){let Y=this.state.startLoc;if(Q!=null){if(Q.shorthandAssignLoc===null)Q.shorthandAssignLoc=Y}else this.raise(M.InvalidCoverInitializedName,Y);J.value=this.parseMaybeDefault(X,this.cloneIdentifier(J.key))}else J.value=this.cloneIdentifier(J.key);return J.shorthand=!0,this.finishObjectProperty(J)}}finishObjectProperty(J){return this.finishNode(J,"ObjectProperty")}parseObjPropValue(J,X,Z,Q,Y,H,G){let z=this.parseObjectMethod(J,Z,Q,Y,H)||this.parseObjectProperty(J,X,Y,G);if(!z)this.unexpected();return z}parsePropertyName(J,X){if(this.eat(0))J.computed=!0,J.key=this.parseMaybeAssignAllowIn(),this.expect(3);else{let{type:Z,value:Q}=this.state,Y;if(M0(Z))Y=this.parseIdentifier(!0);else switch(Z){case 135:Y=this.parseNumericLiteral(Q);break;case 134:Y=this.parseStringLiteral(Q);break;case 136:Y=this.parseBigIntLiteral(Q);break;case 139:{let H=this.state.startLoc;if(X!=null){if(X.privateKeyLoc===null)X.privateKeyLoc=H}else this.raise(M.UnexpectedPrivateField,H);Y=this.parsePrivateName();break}default:if(Z===137){Y=this.parseDecimalLiteral(Q);break}this.unexpected()}if(J.key=Y,Z!==139)J.computed=!1}}initFunction(J,X){J.id=null,J.generator=!1,J.async=X}parseMethod(J,X,Z,Q,Y,H,G=!1){this.initFunction(J,Z),J.generator=X,this.scope.enter(530|(G?576:0)|(Y?32:0)),this.prodParam.enter(FX(Z,J.generator)),this.parseFunctionParams(J,Q);let z=this.parseFunctionBodyAndFinish(J,H,!0);return this.prodParam.exit(),this.scope.exit(),z}parseArrayLike(J,X,Z,Q){if(Z)this.expectPlugin("recordAndTuple");let Y=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!1;let H=this.startNode();return this.next(),H.elements=this.parseExprList(J,!Z,Q,H),this.state.inFSharpPipelineDirectBody=Y,this.finishNode(H,Z?"TupleExpression":"ArrayExpression")}parseArrowExpression(J,X,Z,Q){this.scope.enter(518);let Y=FX(Z,!1);if(!this.match(5)&&this.prodParam.hasIn)Y|=8;this.prodParam.enter(Y),this.initFunction(J,Z);let H=this.state.maybeInArrowParameters;if(X)this.state.maybeInArrowParameters=!0,this.setArrowFunctionParameters(J,X,Q);return this.state.maybeInArrowParameters=!1,this.parseFunctionBody(J,!0),this.prodParam.exit(),this.scope.exit(),this.state.maybeInArrowParameters=H,this.finishNode(J,"ArrowFunctionExpression")}setArrowFunctionParameters(J,X,Z){this.toAssignableList(X,Z,!1),J.params=X}parseFunctionBodyAndFinish(J,X,Z=!1){return this.parseFunctionBody(J,!1,Z),this.finishNode(J,X)}parseFunctionBody(J,X,Z=!1){let Q=X&&!this.match(5);if(this.expressionScope.enter(D4()),Q)J.body=this.parseMaybeAssign(),this.checkParams(J,!1,X,!1);else{let Y=this.state.strict,H=this.state.labels;this.state.labels=[],this.prodParam.enter(this.prodParam.currentFlags()|4),J.body=this.parseBlock(!0,!1,(G)=>{let z=!this.isSimpleParamList(J.params);if(G&&z)this.raise(M.IllegalLanguageModeDirective,(J.kind==="method"||J.kind==="constructor")&&!!J.key?J.key.loc.end:J);let W=!Y&&this.state.strict;if(this.checkParams(J,!this.state.strict&&!X&&!Z&&!z,X,W),this.state.strict&&J.id)this.checkIdentifier(J.id,65,W)}),this.prodParam.exit(),this.state.labels=H}this.expressionScope.exit()}isSimpleParameter(J){return J.type==="Identifier"}isSimpleParamList(J){for(let X=0,Z=J.length;X<Z;X++)if(!this.isSimpleParameter(J[X]))return!1;return!0}checkParams(J,X,Z,Q=!0){let Y=!X&&new Set,H={type:"FormalParameters"};for(let G of J.params)this.checkLVal(G,H,5,Y,Q)}parseExprList(J,X,Z,Q){let Y=[],H=!0;while(!this.eat(J)){if(H)H=!1;else if(this.expect(12),this.match(J)){if(Q)this.addTrailingCommaExtraToNode(Q);this.next();break}Y.push(this.parseExprListItem(J,X,Z))}return Y}parseExprListItem(J,X,Z,Q){let Y;if(this.match(12)){if(!X)this.raise(M.UnexpectedToken,this.state.curPosition(),{unexpected:","});Y=null}else if(this.match(21)){let H=this.state.startLoc;Y=this.parseParenItem(this.parseSpread(Z),H)}else if(this.match(17)){if(this.expectPlugin("partialApplication"),!Q)this.raise(M.UnexpectedArgumentPlaceholder,this.state.startLoc);let H=this.startNode();this.next(),Y=this.finishNode(H,"ArgumentPlaceholder")}else Y=this.parseMaybeAssignAllowInOrVoidPattern(J,Z,this.parseParenItem);return Y}parseIdentifier(J){let X=this.startNode(),Z=this.parseIdentifierName(J);return this.createIdentifier(X,Z)}createIdentifier(J,X){return J.name=X,J.loc.identifierName=X,this.finishNode(J,"Identifier")}createIdentifierAt(J,X,Z){return J.name=X,J.loc.identifierName=X,this.finishNodeAt(J,"Identifier",Z)}parseIdentifierName(J){let X,{startLoc:Z,type:Q}=this.state;if(M0(Q))X=this.state.value;else this.unexpected();let Y=iV(Q);if(J){if(Y)this.replaceToken(132)}else this.checkReservedWord(X,Z,Y,!1);return this.next(),X}checkReservedWord(J,X,Z,Q){if(J.length>10)return;if(!VK(J))return;if(Z&&GK(J)){this.raise(M.UnexpectedKeyword,X,{keyword:J});return}if((!this.state.strict?Y4:Q?z4:H4)(J,this.inModule)){this.raise(M.UnexpectedReservedWord,X,{reservedWord:J});return}else if(J==="yield"){if(this.prodParam.hasYield){this.raise(M.YieldBindingIdentifier,X);return}}else if(J==="await"){if(this.prodParam.hasAwait){this.raise(M.AwaitBindingIdentifier,X);return}if(this.scope.inStaticBlock){this.raise(M.AwaitBindingIdentifierInStaticBlock,X);return}this.expressionScope.recordAsyncArrowParametersError(X)}else if(J==="arguments"){if(this.scope.inClassAndNotInNonArrowFunction){this.raise(M.ArgumentsInClass,X);return}}}recordAwaitIfAllowed(){let J=this.prodParam.hasAwait;if(J&&!this.scope.inFunction)this.state.hasTopLevelAwait=!0;return J}parseAwait(J){let X=this.startNodeAt(J);if(this.expressionScope.recordParameterInitializerError(M.AwaitExpressionFormalParameter,X),this.eat(55))this.raise(M.ObsoleteAwaitStar,X);if(!this.scope.inFunction&&!(this.optionFlags&1))if(this.isAmbiguousPrefixOrIdentifier())this.ambiguousScriptDifferentAst=!0;else this.sawUnambiguousESM=!0;if(!this.state.soloAwait)X.argument=this.parseMaybeUnary(null,!0);return this.finishNode(X,"AwaitExpression")}isAmbiguousPrefixOrIdentifier(){if(this.hasPrecedingLineBreak())return!0;let{type:J}=this.state;return J===53||J===10||J===0||jX(J)||J===102&&!this.state.containsEsc||J===138||J===56||this.hasPlugin("v8intrinsic")&&J===54}parseYield(J){let X=this.startNodeAt(J);this.expressionScope.recordParameterInitializerError(M.YieldInParameter,X);let Z=!1,Q=null;if(!this.hasPrecedingLineBreak())switch(Z=this.eat(55),this.state.type){case 13:case 140:case 8:case 11:case 3:case 9:case 14:case 12:if(!Z)break;default:Q=this.parseMaybeAssign()}return X.delegate=Z,X.argument=Q,this.finishNode(X,"YieldExpression")}parseImportCall(J){if(this.next(),J.source=this.parseMaybeAssignAllowIn(),J.options=null,this.eat(12))if(!this.match(11)){if(J.options=this.parseMaybeAssignAllowIn(),this.eat(12)){if(this.addTrailingCommaExtraToNode(J.options),!this.match(11)){do this.parseMaybeAssignAllowIn();while(this.eat(12)&&!this.match(11));this.raise(M.ImportCallArity,J)}}}else this.addTrailingCommaExtraToNode(J.source);return this.expect(11),this.finishNode(J,"ImportExpression")}checkPipelineAtInfixOperator(J,X){if(this.hasPlugin(["pipelineOperator",{proposal:"smart"}])){if(J.type==="SequenceExpression")this.raise(M.PipelineHeadSequenceExpression,X)}}parseSmartPipelineBodyInStyle(J,X){if(this.isSimpleReference(J)){let Z=this.startNodeAt(X);return Z.callee=J,this.finishNode(Z,"PipelineBareFunction")}else{let Z=this.startNodeAt(X);return this.checkSmartPipeTopicBodyEarlyErrors(X),Z.expression=J,this.finishNode(Z,"PipelineTopicExpression")}}isSimpleReference(J){switch(J.type){case"MemberExpression":return!J.computed&&this.isSimpleReference(J.object);case"Identifier":return!0;default:return!1}}checkSmartPipeTopicBodyEarlyErrors(J){if(this.match(19))throw this.raise(M.PipelineBodyNoArrow,this.state.startLoc);if(!this.topicReferenceWasUsedInCurrentContext())this.raise(M.PipelineTopicUnused,J)}withTopicBindingContext(J){let X=this.state.topicContext;this.state.topicContext={maxNumOfResolvableTopics:1,maxTopicIndex:null};try{return J()}finally{this.state.topicContext=X}}withSmartMixTopicForbiddingContext(J){if(this.hasPlugin(["pipelineOperator",{proposal:"smart"}])){let X=this.state.topicContext;this.state.topicContext={maxNumOfResolvableTopics:0,maxTopicIndex:null};try{return J()}finally{this.state.topicContext=X}}else return J()}withSoloAwaitPermittingContext(J){let X=this.state.soloAwait;this.state.soloAwait=!0;try{return J()}finally{this.state.soloAwait=X}}allowInAnd(J){let X=this.prodParam.currentFlags();if(8&~X){this.prodParam.enter(X|8);try{return J()}finally{this.prodParam.exit()}}return J()}disallowInAnd(J){let X=this.prodParam.currentFlags();if(8&X){this.prodParam.enter(X&-9);try{return J()}finally{this.prodParam.exit()}}return J()}registerTopicReference(){this.state.topicContext.maxTopicIndex=0}topicReferenceIsAllowedInCurrentContext(){return this.state.topicContext.maxNumOfResolvableTopics>=1}topicReferenceWasUsedInCurrentContext(){return this.state.topicContext.maxTopicIndex!=null&&this.state.topicContext.maxTopicIndex>=0}parseFSharpPipelineBody(J){let X=this.state.startLoc;this.state.potentialArrowAt=this.state.start;let Z=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!0;let Q=this.parseExprOp(this.parseMaybeUnaryOrPrivate(),X,J);return this.state.inFSharpPipelineDirectBody=Z,Q}parseModuleExpression(){this.expectPlugin("moduleBlocks");let J=this.startNode();if(this.next(),!this.match(5))this.unexpected(null,5);let X=this.startNodeAt(this.state.endLoc);this.next();let Z=this.initializeScopes(!0);this.enterInitialScopes();try{J.body=this.parseProgram(X,8,"module")}finally{Z()}return this.finishNode(J,"ModuleExpression")}parseVoidPattern(J){this.expectPlugin("discardBinding");let X=this.startNode();if(J!=null)J.voidPatternLoc=this.state.startLoc;return this.next(),this.finishNode(X,"VoidPattern")}parseMaybeAssignAllowInOrVoidPattern(J,X,Z){if(X!=null&&this.match(88)){let Q=this.lookaheadCharCode();if(Q===44||Q===(J===3?93:J===8?125:41)||Q===61)return this.parseMaybeDefault(this.state.startLoc,this.parseVoidPattern(X))}return this.parseMaybeAssignAllowIn(X,Z)}parsePropertyNamePrefixOperator(J){}}var E2={kind:1},yK={kind:2},uK=/[\uD800-\uDFFF]/u,_2=/in(?:stanceof)?/y;function mK(J,X,Z){for(let Q=0;Q<J.length;Q++){let Y=J[Q],{type:H}=Y;if(typeof H==="number"){{if(H===139){let{loc:G,start:z,value:W,end:V}=Y,U=z+1,$=a1(G.start,1);J.splice(Q,1,new m0({type:u0(27),value:"#",start:z,end:U,startLoc:G.start,endLoc:$}),new m0({type:u0(132),value:W,start:U,end:V,startLoc:$,endLoc:G.end})),Q++;continue}if(jX(H)){let{loc:G,start:z,value:W,end:V}=Y,U=z+1,$=a1(G.start,1),j;if(X.charCodeAt(z-Z)===96)j=new m0({type:u0(22),value:"`",start:z,end:U,startLoc:G.start,endLoc:$});else j=new m0({type:u0(8),value:"}",start:z,end:U,startLoc:G.start,endLoc:$});let C,A,S,w;if(H===24)A=V-1,S=a1(G.end,-1),C=W===null?null:W.slice(1,-1),w=new m0({type:u0(22),value:"`",start:A,end:V,startLoc:S,endLoc:G.end});else A=V-2,S=a1(G.end,-2),C=W===null?null:W.slice(1,-2),w=new m0({type:u0(23),value:"${",start:A,end:V,startLoc:S,endLoc:G.end});J.splice(Q,1,j,new m0({type:u0(20),value:C,start:U,end:A,startLoc:$,endLoc:S}),w),Q+=2;continue}}Y.type=u0(H)}}return J}class b4 extends k4{parseTopLevel(J,X){if(J.program=this.parseProgram(X,140,this.options.sourceType==="module"?"module":"script"),J.comments=this.comments,this.optionFlags&256)J.tokens=mK(this.tokens,this.input,this.startIndex);return this.finishNode(J,"File")}parseProgram(J,X,Z){if(J.sourceType=Z,J.interpreter=this.parseInterpreterDirective(),this.parseBlockBody(J,!0,!0,X),this.inModule){if(!(this.optionFlags&64)&&this.scope.undefinedExports.size>0)for(let[Y,H]of Array.from(this.scope.undefinedExports))this.raise(M.ModuleExportUndefined,H,{localName:Y});this.addExtra(J,"topLevelAwait",this.state.hasTopLevelAwait)}let Q;if(X===140)Q=this.finishNode(J,"Program");else Q=this.finishNodeAt(J,"Program",a1(this.state.startLoc,-1));return Q}stmtToDirective(J){let X=this.castNodeTo(J,"Directive"),Z=this.castNodeTo(J.expression,"DirectiveLiteral"),Q=Z.value,Y=this.input.slice(this.offsetToSourcePos(Z.start),this.offsetToSourcePos(Z.end)),H=Z.value=Y.slice(1,-1);return this.addExtra(Z,"raw",Y),this.addExtra(Z,"rawValue",H),this.addExtra(Z,"expressionValue",Q),X.value=Z,delete J.expression,X}parseInterpreterDirective(){if(!this.match(28))return null;let J=this.startNode();return J.value=this.state.value,this.next(),this.finishNode(J,"InterpreterDirective")}isLet(){if(!this.isContextual(100))return!1;return this.hasFollowingBindingAtom()}isUsing(){if(!this.isContextual(107))return!1;let J=this.nextTokenInLineStart(),X=this.codePointAtPos(J);return this.chStartsBindingIdentifier(X,J)}isForUsing(){if(!this.isContextual(107))return!1;let J=this.nextTokenInLineStart(),X=this.codePointAtPos(J);if(this.isUnparsedContextual(J,"of")){let Z=this.lookaheadCharCodeSince(J+2);if(Z!==61&&Z!==58&&Z!==59)return!1}if(this.chStartsBindingIdentifier(X,J)||this.isUnparsedContextual(J,"void"))return!0;return!1}isAwaitUsing(){if(!this.isContextual(96))return!1;let J=this.nextTokenInLineStart();if(this.isUnparsedContextual(J,"using")){J=this.nextTokenInLineStartSince(J+5);let X=this.codePointAtPos(J);if(this.chStartsBindingIdentifier(X,J))return!0}return!1}chStartsBindingIdentifier(J,X){if(l0(J)){if(_2.lastIndex=X,_2.test(this.input)){let Z=this.codePointAtPos(_2.lastIndex);if(!cJ(Z)&&Z!==92)return!1}return!0}else if(J===92)return!0;else return!1}chStartsBindingPattern(J){return J===91||J===123}hasFollowingBindingAtom(){let J=this.nextTokenStart(),X=this.codePointAtPos(J);return this.chStartsBindingPattern(X)||this.chStartsBindingIdentifier(X,J)}hasInLineFollowingBindingIdentifierOrBrace(){let J=this.nextTokenInLineStart(),X=this.codePointAtPos(J);return X===123||this.chStartsBindingIdentifier(X,J)}allowsUsing(){return(this.scope.inModule||!this.scope.inTopLevel)&&!this.scope.inBareCaseStatement}parseModuleItem(){return this.parseStatementLike(15)}parseStatementListItem(){return this.parseStatementLike(6|(!this.options.annexB||this.state.strict?0:8))}parseStatementOrSloppyAnnexBFunctionDeclaration(J=!1){let X=0;if(this.options.annexB&&!this.state.strict){if(X|=4,J)X|=8}return this.parseStatementLike(X)}parseStatement(){return this.parseStatementLike(0)}parseStatementLike(J){let X=null;if(this.match(26))X=this.parseDecorators(!0);return this.parseStatementContent(J,X)}parseStatementContent(J,X){let Z=this.state.type,Q=this.startNode(),Y=!!(J&2),H=!!(J&4),G=J&1;switch(Z){case 60:return this.parseBreakContinueStatement(Q,!0);case 63:return this.parseBreakContinueStatement(Q,!1);case 64:return this.parseDebuggerStatement(Q);case 90:return this.parseDoWhileStatement(Q);case 91:return this.parseForStatement(Q);case 68:if(this.lookaheadCharCode()===46)break;if(!H)this.raise(this.state.strict?M.StrictFunction:this.options.annexB?M.SloppyFunctionAnnexB:M.SloppyFunction,this.state.startLoc);return this.parseFunctionStatement(Q,!1,!Y&&H);case 80:if(!Y)this.unexpected();return this.parseClass(this.maybeTakeDecorators(X,Q),!0);case 69:return this.parseIfStatement(Q);case 70:return this.parseReturnStatement(Q);case 71:return this.parseSwitchStatement(Q);case 72:return this.parseThrowStatement(Q);case 73:return this.parseTryStatement(Q);case 96:if(this.isAwaitUsing()){if(!this.allowsUsing())this.raise(M.UnexpectedUsingDeclaration,Q);else if(!Y)this.raise(M.UnexpectedLexicalDeclaration,Q);else if(!this.recordAwaitIfAllowed())this.raise(M.AwaitUsingNotInAsyncContext,Q);return this.next(),this.parseVarStatement(Q,"await using")}break;case 107:if(this.state.containsEsc||!this.hasInLineFollowingBindingIdentifierOrBrace())break;if(!this.allowsUsing())this.raise(M.UnexpectedUsingDeclaration,this.state.startLoc);else if(!Y)this.raise(M.UnexpectedLexicalDeclaration,this.state.startLoc);return this.parseVarStatement(Q,"using");case 100:{if(this.state.containsEsc)break;let V=this.nextTokenStart(),U=this.codePointAtPos(V);if(U!==91){if(!Y&&this.hasFollowingLineBreak())break;if(!this.chStartsBindingIdentifier(U,V)&&U!==123)break}}case 75:if(!Y)this.raise(M.UnexpectedLexicalDeclaration,this.state.startLoc);case 74:{let V=this.state.value;return this.parseVarStatement(Q,V)}case 92:return this.parseWhileStatement(Q);case 76:return this.parseWithStatement(Q);case 5:return this.parseBlock();case 13:return this.parseEmptyStatement(Q);case 83:{let V=this.lookaheadCharCode();if(V===40||V===46)break}case 82:{if(!(this.optionFlags&8)&&!G)this.raise(M.UnexpectedImportExport,this.state.startLoc);this.next();let V;if(Z===83)V=this.parseImport(Q);else V=this.parseExport(Q,X);return this.assertModuleNodeAllowed(V),V}default:if(this.isAsyncFunction()){if(!Y)this.raise(M.AsyncFunctionInSingleStatementContext,this.state.startLoc);return this.next(),this.parseFunctionStatement(Q,!0,!Y&&H)}}let z=this.state.value,W=this.parseExpression();if(O1(Z)&&W.type==="Identifier"&&this.eat(14))return this.parseLabeledStatement(Q,z,W,J);else return this.parseExpressionStatement(Q,W,X)}assertModuleNodeAllowed(J){if(!(this.optionFlags&8)&&!this.inModule)this.raise(M.ImportOutsideModule,J)}decoratorsEnabledBeforeExport(){if(this.hasPlugin("decorators-legacy"))return!0;return this.hasPlugin("decorators")&&this.getPluginOption("decorators","decoratorsBeforeExport")!==!1}maybeTakeDecorators(J,X,Z){if(J){var Q;if((Q=X.decorators)!=null&&Q.length){if(typeof this.getPluginOption("decorators","decoratorsBeforeExport")!=="boolean")this.raise(M.DecoratorsBeforeAfterExport,X.decorators[0]);X.decorators.unshift(...J)}else X.decorators=J;if(this.resetStartLocationFromNode(X,J[0]),Z)this.resetStartLocationFromNode(Z,X)}return X}canHaveLeadingDecorator(){return this.match(80)}parseDecorators(J){let X=[];do X.push(this.parseDecorator());while(this.match(26));if(this.match(82)){if(!J)this.unexpected();if(!this.decoratorsEnabledBeforeExport())this.raise(M.DecoratorExportClass,this.state.startLoc)}else if(!this.canHaveLeadingDecorator())throw this.raise(M.UnexpectedLeadingDecorator,this.state.startLoc);return X}parseDecorator(){this.expectOnePlugin(["decorators","decorators-legacy"]);let J=this.startNode();if(this.next(),this.hasPlugin("decorators")){let X=this.state.startLoc,Z;if(this.match(10)){let Q=this.state.startLoc;this.next(),Z=this.parseExpression(),this.expect(11),Z=this.wrapParenthesis(Q,Z);let Y=this.state.startLoc;if(J.expression=this.parseMaybeDecoratorArguments(Z,Q),this.getPluginOption("decorators","allowCallParenthesized")===!1&&J.expression!==Z)this.raise(M.DecoratorArgumentsOutsideParentheses,Y)}else{Z=this.parseIdentifier(!1);while(this.eat(16)){let Q=this.startNodeAt(X);if(Q.object=Z,this.match(139))this.classScope.usePrivateName(this.state.value,this.state.startLoc),Q.property=this.parsePrivateName();else Q.property=this.parseIdentifier(!0);Q.computed=!1,Z=this.finishNode(Q,"MemberExpression")}J.expression=this.parseMaybeDecoratorArguments(Z,X)}}else J.expression=this.parseExprSubscripts();return this.finishNode(J,"Decorator")}parseMaybeDecoratorArguments(J,X){if(this.eat(10)){let Z=this.startNodeAt(X);return Z.callee=J,Z.arguments=this.parseCallExpressionArguments(),this.toReferencedList(Z.arguments),this.finishNode(Z,"CallExpression")}return J}parseBreakContinueStatement(J,X){if(this.next(),this.isLineTerminator())J.label=null;else J.label=this.parseIdentifier(),this.semicolon();return this.verifyBreakContinue(J,X),this.finishNode(J,X?"BreakStatement":"ContinueStatement")}verifyBreakContinue(J,X){let Z;for(Z=0;Z<this.state.labels.length;++Z){let Q=this.state.labels[Z];if(J.label==null||Q.name===J.label.name){if(Q.kind!=null&&(X||Q.kind===1))break;if(J.label&&X)break}}if(Z===this.state.labels.length){let Q=X?"BreakStatement":"ContinueStatement";this.raise(M.IllegalBreakContinue,J,{type:Q})}}parseDebuggerStatement(J){return this.next(),this.semicolon(),this.finishNode(J,"DebuggerStatement")}parseHeaderExpression(){this.expect(10);let J=this.parseExpression();return this.expect(11),J}parseDoWhileStatement(J){return this.next(),this.state.labels.push(E2),J.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.state.labels.pop(),this.expect(92),J.test=this.parseHeaderExpression(),this.eat(13),this.finishNode(J,"DoWhileStatement")}parseForStatement(J){this.next(),this.state.labels.push(E2);let X=null;if(this.isContextual(96)&&this.recordAwaitIfAllowed())X=this.state.startLoc,this.next();if(this.scope.enter(0),this.expect(10),this.match(13)){if(X!==null)this.unexpected(X);return this.parseFor(J,null)}let Z=this.isContextual(100);{let z=this.isAwaitUsing(),W=z||this.isForUsing(),V=Z&&this.hasFollowingBindingAtom()||W;if(this.match(74)||this.match(75)||V){let U=this.startNode(),$;if(z){if($="await using",!this.recordAwaitIfAllowed())this.raise(M.AwaitUsingNotInAsyncContext,this.state.startLoc);this.next()}else $=this.state.value;this.next(),this.parseVar(U,!0,$);let j=this.finishNode(U,"VariableDeclaration"),C=this.match(58);if(C&&W)this.raise(M.ForInUsing,j);if((C||this.isContextual(102))&&j.declarations.length===1)return this.parseForIn(J,j,X);if(X!==null)this.unexpected(X);return this.parseFor(J,j)}}let Q=this.isContextual(95),Y=new D9,H=this.parseExpression(!0,Y),G=this.isContextual(102);if(G){if(Z)this.raise(M.ForOfLet,H);if(X===null&&Q&&H.type==="Identifier")this.raise(M.ForOfAsync,H)}if(G||this.match(58)){this.checkDestructuringPrivate(Y),this.toAssignable(H,!0);let z=G?"ForOfStatement":"ForInStatement";return this.checkLVal(H,{type:z}),this.parseForIn(J,H,X)}else this.checkExpressionErrors(Y,!0);if(X!==null)this.unexpected(X);return this.parseFor(J,H)}parseFunctionStatement(J,X,Z){return this.next(),this.parseFunction(J,1|(Z?2:0)|(X?8:0))}parseIfStatement(J){return this.next(),J.test=this.parseHeaderExpression(),J.consequent=this.parseStatementOrSloppyAnnexBFunctionDeclaration(),J.alternate=this.eat(66)?this.parseStatementOrSloppyAnnexBFunctionDeclaration():null,this.finishNode(J,"IfStatement")}parseReturnStatement(J){if(!this.prodParam.hasReturn)this.raise(M.IllegalReturn,this.state.startLoc);if(this.next(),this.isLineTerminator())J.argument=null;else J.argument=this.parseExpression(),this.semicolon();return this.finishNode(J,"ReturnStatement")}parseSwitchStatement(J){this.next(),J.discriminant=this.parseHeaderExpression();let X=J.cases=[];this.expect(5),this.state.labels.push(yK),this.scope.enter(256);let Z;for(let Q;!this.match(8);)if(this.match(61)||this.match(65)){let Y=this.match(61);if(Z)this.finishNode(Z,"SwitchCase");if(X.push(Z=this.startNode()),Z.consequent=[],this.next(),Y)Z.test=this.parseExpression();else{if(Q)this.raise(M.MultipleDefaultsInSwitch,this.state.lastTokStartLoc);Q=!0,Z.test=null}this.expect(14)}else if(Z)Z.consequent.push(this.parseStatementListItem());else this.unexpected();if(this.scope.exit(),Z)this.finishNode(Z,"SwitchCase");return this.next(),this.state.labels.pop(),this.finishNode(J,"SwitchStatement")}parseThrowStatement(J){if(this.next(),this.hasPrecedingLineBreak())this.raise(M.NewlineAfterThrow,this.state.lastTokEndLoc);return J.argument=this.parseExpression(),this.semicolon(),this.finishNode(J,"ThrowStatement")}parseCatchClauseParam(){let J=this.parseBindingAtom();return this.scope.enter(this.options.annexB&&J.type==="Identifier"?8:0),this.checkLVal(J,{type:"CatchClause"},9),J}parseTryStatement(J){if(this.next(),J.block=this.parseBlock(),J.handler=null,this.match(62)){let X=this.startNode();if(this.next(),this.match(10))this.expect(10),X.param=this.parseCatchClauseParam(),this.expect(11);else X.param=null,this.scope.enter(0);X.body=this.withSmartMixTopicForbiddingContext(()=>this.parseBlock(!1,!1)),this.scope.exit(),J.handler=this.finishNode(X,"CatchClause")}if(J.finalizer=this.eat(67)?this.parseBlock():null,!J.handler&&!J.finalizer)this.raise(M.NoCatchOrFinally,J);return this.finishNode(J,"TryStatement")}parseVarStatement(J,X,Z=!1){return this.next(),this.parseVar(J,!1,X,Z),this.semicolon(),this.finishNode(J,"VariableDeclaration")}parseWhileStatement(J){return this.next(),J.test=this.parseHeaderExpression(),this.state.labels.push(E2),J.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.state.labels.pop(),this.finishNode(J,"WhileStatement")}parseWithStatement(J){if(this.state.strict)this.raise(M.StrictWith,this.state.startLoc);return this.next(),J.object=this.parseHeaderExpression(),J.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.finishNode(J,"WithStatement")}parseEmptyStatement(J){return this.next(),this.finishNode(J,"EmptyStatement")}parseLabeledStatement(J,X,Z,Q){for(let H of this.state.labels)if(H.name===X)this.raise(M.LabelRedeclaration,Z,{labelName:X});let Y=dV(this.state.type)?1:this.match(71)?2:null;for(let H=this.state.labels.length-1;H>=0;H--){let G=this.state.labels[H];if(G.statementStart===J.start)G.statementStart=this.sourceToOffsetPos(this.state.start),G.kind=Y;else break}return this.state.labels.push({name:X,kind:Y,statementStart:this.sourceToOffsetPos(this.state.start)}),J.body=Q&8?this.parseStatementOrSloppyAnnexBFunctionDeclaration(!0):this.parseStatement(),this.state.labels.pop(),J.label=Z,this.finishNode(J,"LabeledStatement")}parseExpressionStatement(J,X,Z){return J.expression=X,this.semicolon(),this.finishNode(J,"ExpressionStatement")}parseBlock(J=!1,X=!0,Z){let Q=this.startNode();if(J)this.state.strictErrors.clear();if(this.expect(5),X)this.scope.enter(0);if(this.parseBlockBody(Q,J,!1,8,Z),X)this.scope.exit();return this.finishNode(Q,"BlockStatement")}isValidDirective(J){return J.type==="ExpressionStatement"&&J.expression.type==="StringLiteral"&&!J.expression.extra.parenthesized}parseBlockBody(J,X,Z,Q,Y){let H=J.body=[],G=J.directives=[];this.parseBlockOrModuleBlockBody(H,X?G:void 0,Z,Q,Y)}parseBlockOrModuleBlockBody(J,X,Z,Q,Y){let H=this.state.strict,G=!1,z=!1;while(!this.match(Q)){let W=Z?this.parseModuleItem():this.parseStatementListItem();if(X&&!z){if(this.isValidDirective(W)){let V=this.stmtToDirective(W);if(X.push(V),!G&&V.value.value==="use strict")G=!0,this.setStrict(!0);continue}z=!0,this.state.strictErrors.clear()}J.push(W)}if(Y==null||Y.call(this,G),!H)this.setStrict(!1);this.next()}parseFor(J,X){return J.init=X,this.semicolon(!1),J.test=this.match(13)?null:this.parseExpression(),this.semicolon(!1),J.update=this.match(11)?null:this.parseExpression(),this.expect(11),J.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.scope.exit(),this.state.labels.pop(),this.finishNode(J,"ForStatement")}parseForIn(J,X,Z){let Q=this.match(58);if(this.next(),Q){if(Z!==null)this.unexpected(Z)}else J.await=Z!==null;if(X.type==="VariableDeclaration"&&X.declarations[0].init!=null&&(!Q||!this.options.annexB||this.state.strict||X.kind!=="var"||X.declarations[0].id.type!=="Identifier"))this.raise(M.ForInOfLoopInitializer,X,{type:Q?"ForInStatement":"ForOfStatement"});if(X.type==="AssignmentPattern")this.raise(M.InvalidLhs,X,{ancestor:{type:"ForStatement"}});return J.left=X,J.right=Q?this.parseExpression():this.parseMaybeAssignAllowIn(),this.expect(11),J.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.scope.exit(),this.state.labels.pop(),this.finishNode(J,Q?"ForInStatement":"ForOfStatement")}parseVar(J,X,Z,Q=!1){let Y=J.declarations=[];J.kind=Z;for(;;){let H=this.startNode();if(this.parseVarId(H,Z),H.init=!this.eat(29)?null:X?this.parseMaybeAssignDisallowIn():this.parseMaybeAssignAllowIn(),H.init===null&&!Q){if(H.id.type!=="Identifier"&&!(X&&(this.match(58)||this.isContextual(102))))this.raise(M.DeclarationMissingInitializer,this.state.lastTokEndLoc,{kind:"destructuring"});else if((Z==="const"||Z==="using"||Z==="await using")&&!(this.match(58)||this.isContextual(102)))this.raise(M.DeclarationMissingInitializer,this.state.lastTokEndLoc,{kind:Z})}if(Y.push(this.finishNode(H,"VariableDeclarator")),!this.eat(12))break}return J}parseVarId(J,X){let Z=this.parseBindingAtom();if(X==="using"||X==="await using"){if(Z.type==="ArrayPattern"||Z.type==="ObjectPattern")this.raise(M.UsingDeclarationHasBindingPattern,Z.loc.start)}else if(Z.type==="VoidPattern")this.raise(M.UnexpectedVoidPattern,Z.loc.start);this.checkLVal(Z,{type:"VariableDeclarator"},X==="var"?5:8201),J.id=Z}parseAsyncFunctionExpression(J){return this.parseFunction(J,8)}parseFunction(J,X=0){let Z=X&2,Q=!!(X&1),Y=Q&&!(X&4),H=!!(X&8);if(this.initFunction(J,H),this.match(55)){if(Z)this.raise(M.GeneratorInSingleStatementContext,this.state.startLoc);this.next(),J.generator=!0}if(Q)J.id=this.parseFunctionId(Y);let G=this.state.maybeInArrowParameters;if(this.state.maybeInArrowParameters=!1,this.scope.enter(514),this.prodParam.enter(FX(H,J.generator)),!Q)J.id=this.parseFunctionId();if(this.parseFunctionParams(J,!1),this.withSmartMixTopicForbiddingContext(()=>{this.parseFunctionBodyAndFinish(J,Q?"FunctionDeclaration":"FunctionExpression")}),this.prodParam.exit(),this.scope.exit(),Q&&!Z)this.registerFunctionStatementId(J);return this.state.maybeInArrowParameters=G,J}parseFunctionId(J){return J||O1(this.state.type)?this.parseIdentifier():null}parseFunctionParams(J,X){this.expect(10),this.expressionScope.enter(wK()),J.params=this.parseBindingList(11,41,2|(X?4:0)),this.expressionScope.exit()}registerFunctionStatementId(J){if(!J.id)return;this.scope.declareName(J.id.name,!this.options.annexB||this.state.strict||J.generator||J.async?this.scope.treatFunctionsAsVar?5:8201:17,J.id.loc.start)}parseClass(J,X,Z){this.next();let Q=this.state.strict;return this.state.strict=!0,this.parseClassId(J,X,Z),this.parseClassSuper(J),J.body=this.parseClassBody(!!J.superClass,Q),this.finishNode(J,X?"ClassDeclaration":"ClassExpression")}isClassProperty(){return this.match(29)||this.match(13)||this.match(8)}isClassMethod(){return this.match(10)}nameIsConstructor(J){return J.type==="Identifier"&&J.name==="constructor"||J.type==="StringLiteral"&&J.value==="constructor"}isNonstaticConstructor(J){return!J.computed&&!J.static&&this.nameIsConstructor(J.key)}parseClassBody(J,X){this.classScope.enter();let Z={hadConstructor:!1,hadSuperClass:J},Q=[],Y=this.startNode();if(Y.body=[],this.expect(5),this.withSmartMixTopicForbiddingContext(()=>{while(!this.match(8)){if(this.eat(13)){if(Q.length>0)throw this.raise(M.DecoratorSemicolon,this.state.lastTokEndLoc);continue}if(this.match(26)){Q.push(this.parseDecorator());continue}let H=this.startNode();if(Q.length)H.decorators=Q,this.resetStartLocationFromNode(H,Q[0]),Q=[];if(this.parseClassMember(Y,H,Z),H.kind==="constructor"&&H.decorators&&H.decorators.length>0)this.raise(M.DecoratorConstructor,H)}}),this.state.strict=X,this.next(),Q.length)throw this.raise(M.TrailingDecorator,this.state.startLoc);return this.classScope.exit(),this.finishNode(Y,"ClassBody")}parseClassMemberFromModifier(J,X){let Z=this.parseIdentifier(!0);if(this.isClassMethod()){let Q=X;return Q.kind="method",Q.computed=!1,Q.key=Z,Q.static=!1,this.pushClassMethod(J,Q,!1,!1,!1,!1),!0}else if(this.isClassProperty()){let Q=X;return Q.computed=!1,Q.key=Z,Q.static=!1,J.body.push(this.parseClassProperty(Q)),!0}return this.resetPreviousNodeTrailingComments(Z),!1}parseClassMember(J,X,Z){let Q=this.isContextual(106);if(Q){if(this.parseClassMemberFromModifier(J,X))return;if(this.eat(5)){this.parseClassStaticBlock(J,X);return}}this.parseClassMemberWithIsStatic(J,X,Z,Q)}parseClassMemberWithIsStatic(J,X,Z,Q){let Y=X,H=X,G=X,z=X,W=X,V=Y,U=Y;if(X.static=Q,this.parsePropertyNamePrefixOperator(X),this.eat(55)){V.kind="method";let w=this.match(139);if(this.parseClassElementName(V),this.parsePostMemberNameModifiers(V),w){this.pushClassPrivateMethod(J,H,!0,!1);return}if(this.isNonstaticConstructor(Y))this.raise(M.ConstructorIsGenerator,Y.key);this.pushClassMethod(J,Y,!0,!1,!1,!1);return}let $=!this.state.containsEsc&&O1(this.state.type),j=this.parseClassElementName(X),C=$?j.name:null,A=this.isPrivateName(j),S=this.state.startLoc;if(this.parsePostMemberNameModifiers(U),this.isClassMethod()){if(V.kind="method",A){this.pushClassPrivateMethod(J,H,!1,!1);return}let w=this.isNonstaticConstructor(Y),P=!1;if(w){if(Y.kind="constructor",Z.hadConstructor&&!this.hasPlugin("typescript"))this.raise(M.DuplicateConstructor,j);if(w&&this.hasPlugin("typescript")&&X.override)this.raise(M.OverrideOnConstructor,j);Z.hadConstructor=!0,P=Z.hadSuperClass}this.pushClassMethod(J,Y,!1,!1,w,P)}else if(this.isClassProperty())if(A)this.pushClassPrivateProperty(J,z);else this.pushClassProperty(J,G);else if(C==="async"&&!this.isLineTerminator()){this.resetPreviousNodeTrailingComments(j);let w=this.eat(55);if(U.optional)this.unexpected(S);V.kind="method";let P=this.match(139);if(this.parseClassElementName(V),this.parsePostMemberNameModifiers(U),P)this.pushClassPrivateMethod(J,H,w,!0);else{if(this.isNonstaticConstructor(Y))this.raise(M.ConstructorIsAsync,Y.key);this.pushClassMethod(J,Y,w,!0,!1,!1)}}else if((C==="get"||C==="set")&&!(this.match(55)&&this.isLineTerminator())){this.resetPreviousNodeTrailingComments(j),V.kind=C;let w=this.match(139);if(this.parseClassElementName(Y),w)this.pushClassPrivateMethod(J,H,!1,!1);else{if(this.isNonstaticConstructor(Y))this.raise(M.ConstructorIsAccessor,Y.key);this.pushClassMethod(J,Y,!1,!1,!1,!1)}this.checkGetterSetterParams(Y)}else if(C==="accessor"&&!this.isLineTerminator()){this.expectPlugin("decoratorAutoAccessors"),this.resetPreviousNodeTrailingComments(j);let w=this.match(139);this.parseClassElementName(G),this.pushClassAccessorProperty(J,W,w)}else if(this.isLineTerminator())if(A)this.pushClassPrivateProperty(J,z);else this.pushClassProperty(J,G);else this.unexpected()}parseClassElementName(J){let{type:X,value:Z}=this.state;if((X===132||X===134)&&J.static&&Z==="prototype")this.raise(M.StaticPrototype,this.state.startLoc);if(X===139){if(Z==="constructor")this.raise(M.ConstructorClassPrivateField,this.state.startLoc);let Q=this.parsePrivateName();return J.key=Q,Q}return this.parsePropertyName(J),J.key}parseClassStaticBlock(J,X){var Z;this.scope.enter(720);let Q=this.state.labels;this.state.labels=[],this.prodParam.enter(0);let Y=X.body=[];if(this.parseBlockOrModuleBlockBody(Y,void 0,!1,8),this.prodParam.exit(),this.scope.exit(),this.state.labels=Q,J.body.push(this.finishNode(X,"StaticBlock")),(Z=X.decorators)!=null&&Z.length)this.raise(M.DecoratorStaticBlock,X)}pushClassProperty(J,X){if(!X.computed&&this.nameIsConstructor(X.key))this.raise(M.ConstructorClassField,X.key);J.body.push(this.parseClassProperty(X))}pushClassPrivateProperty(J,X){let Z=this.parseClassPrivateProperty(X);J.body.push(Z),this.classScope.declarePrivateName(this.getPrivateNameSV(Z.key),0,Z.key.loc.start)}pushClassAccessorProperty(J,X,Z){if(!Z&&!X.computed&&this.nameIsConstructor(X.key))this.raise(M.ConstructorClassField,X.key);let Q=this.parseClassAccessorProperty(X);if(J.body.push(Q),Z)this.classScope.declarePrivateName(this.getPrivateNameSV(Q.key),0,Q.key.loc.start)}pushClassMethod(J,X,Z,Q,Y,H){J.body.push(this.parseMethod(X,Z,Q,Y,H,"ClassMethod",!0))}pushClassPrivateMethod(J,X,Z,Q){let Y=this.parseMethod(X,Z,Q,!1,!1,"ClassPrivateMethod",!0);J.body.push(Y);let H=Y.kind==="get"?Y.static?6:2:Y.kind==="set"?Y.static?5:1:0;this.declareClassPrivateMethodInScope(Y,H)}declareClassPrivateMethodInScope(J,X){this.classScope.declarePrivateName(this.getPrivateNameSV(J.key),X,J.key.loc.start)}parsePostMemberNameModifiers(J){}parseClassPrivateProperty(J){return this.parseInitializer(J),this.semicolon(),this.finishNode(J,"ClassPrivateProperty")}parseClassProperty(J){return this.parseInitializer(J),this.semicolon(),this.finishNode(J,"ClassProperty")}parseClassAccessorProperty(J){return this.parseInitializer(J),this.semicolon(),this.finishNode(J,"ClassAccessorProperty")}parseInitializer(J){this.scope.enter(592),this.expressionScope.enter(D4()),this.prodParam.enter(0),J.value=this.eat(29)?this.parseMaybeAssignAllowIn():null,this.expressionScope.exit(),this.prodParam.exit(),this.scope.exit()}parseClassId(J,X,Z,Q=8331){if(O1(this.state.type)){if(J.id=this.parseIdentifier(),X)this.declareNameFromIdentifier(J.id,Q)}else if(Z||!X)J.id=null;else throw this.raise(M.MissingClassName,this.state.startLoc)}parseClassSuper(J){J.superClass=this.eat(81)?this.parseExprSubscripts():null}parseExport(J,X){let Z=this.parseMaybeImportPhase(J,!0),Q=this.maybeParseExportDefaultSpecifier(J,Z),Y=!Q||this.eat(12),H=Y&&this.eatExportStar(J),G=H&&this.maybeParseExportNamespaceSpecifier(J),z=Y&&(!G||this.eat(12)),W=Q||H;if(H&&!G){if(Q)this.unexpected();if(X)throw this.raise(M.UnsupportedDecoratorExport,J);return this.parseExportFrom(J,!0),this.sawUnambiguousESM=!0,this.finishNode(J,"ExportAllDeclaration")}let V=this.maybeParseExportNamedSpecifiers(J);if(Q&&Y&&!H&&!V)this.unexpected(null,5);if(G&&z)this.unexpected(null,98);let U;if(W||V){if(U=!1,X)throw this.raise(M.UnsupportedDecoratorExport,J);this.parseExportFrom(J,W)}else U=this.maybeParseExportDeclaration(J);if(W||V||U){var $;let j=J;if(this.checkExport(j,!0,!1,!!j.source),(($=j.declaration)==null?void 0:$.type)==="ClassDeclaration")this.maybeTakeDecorators(X,j.declaration,j);else if(X)throw this.raise(M.UnsupportedDecoratorExport,J);return this.sawUnambiguousESM=!0,this.finishNode(j,"ExportNamedDeclaration")}if(this.eat(65)){let j=J,C=this.parseExportDefaultExpression();if(j.declaration=C,C.type==="ClassDeclaration")this.maybeTakeDecorators(X,C,j);else if(X)throw this.raise(M.UnsupportedDecoratorExport,J);return this.checkExport(j,!0,!0),this.sawUnambiguousESM=!0,this.finishNode(j,"ExportDefaultDeclaration")}this.unexpected(null,5)}eatExportStar(J){return this.eat(55)}maybeParseExportDefaultSpecifier(J,X){if(X||this.isExportDefaultSpecifier()){this.expectPlugin("exportDefaultFrom",X==null?void 0:X.loc.start);let Z=X||this.parseIdentifier(!0),Q=this.startNodeAtNode(Z);return Q.exported=Z,J.specifiers=[this.finishNode(Q,"ExportDefaultSpecifier")],!0}return!1}maybeParseExportNamespaceSpecifier(J){if(this.isContextual(93)){var X,Z;(Z=(X=J).specifiers)!=null||(X.specifiers=[]);let Q=this.startNodeAt(this.state.lastTokStartLoc);return this.next(),Q.exported=this.parseModuleExportName(),J.specifiers.push(this.finishNode(Q,"ExportNamespaceSpecifier")),!0}return!1}maybeParseExportNamedSpecifiers(J){if(this.match(5)){let X=J;if(!X.specifiers)X.specifiers=[];let Z=X.exportKind==="type";if(X.specifiers.push(...this.parseExportSpecifiers(Z)),X.source=null,this.hasPlugin("importAssertions"))X.assertions=[];else X.attributes=[];return X.declaration=null,!0}return!1}maybeParseExportDeclaration(J){if(this.shouldParseExportDeclaration()){if(J.specifiers=[],J.source=null,this.hasPlugin("importAssertions"))J.assertions=[];else J.attributes=[];return J.declaration=this.parseExportDeclaration(J),!0}return!1}isAsyncFunction(){if(!this.isContextual(95))return!1;let J=this.nextTokenInLineStart();return this.isUnparsedContextual(J,"function")}parseExportDefaultExpression(){let J=this.startNode();if(this.match(68))return this.next(),this.parseFunction(J,5);else if(this.isAsyncFunction())return this.next(),this.next(),this.parseFunction(J,13);if(this.match(80))return this.parseClass(J,!0,!0);if(this.match(26)){if(this.hasPlugin("decorators")&&this.getPluginOption("decorators","decoratorsBeforeExport")===!0)this.raise(M.DecoratorBeforeExport,this.state.startLoc);return this.parseClass(this.maybeTakeDecorators(this.parseDecorators(!1),this.startNode()),!0,!0)}if(this.match(75)||this.match(74)||this.isLet()||this.isUsing()||this.isAwaitUsing())throw this.raise(M.UnsupportedDefaultExport,this.state.startLoc);let X=this.parseMaybeAssignAllowIn();return this.semicolon(),X}parseExportDeclaration(J){if(this.match(80))return this.parseClass(this.startNode(),!0,!1);return this.parseStatementListItem()}isExportDefaultSpecifier(){let{type:J}=this.state;if(O1(J)){if(J===95&&!this.state.containsEsc||J===100)return!1;if((J===130||J===129)&&!this.state.containsEsc){let Q=this.nextTokenStart(),Y=this.input.charCodeAt(Q);if(Y===123||this.chStartsBindingIdentifier(Y,Q)&&!this.input.startsWith("from",Q))return this.expectOnePlugin(["flow","typescript"]),!1}}else if(!this.match(65))return!1;let X=this.nextTokenStart(),Z=this.isUnparsedContextual(X,"from");if(this.input.charCodeAt(X)===44||O1(this.state.type)&&Z)return!0;if(this.match(65)&&Z){let Q=this.input.charCodeAt(this.nextTokenStartSince(X+4));return Q===34||Q===39}return!1}parseExportFrom(J,X){if(this.eatContextual(98))J.source=this.parseImportSource(),this.checkExport(J),this.maybeParseImportAttributes(J),this.checkJSONModuleImport(J);else if(X)this.unexpected();this.semicolon()}shouldParseExportDeclaration(){let{type:J}=this.state;if(J===26){if(this.expectOnePlugin(["decorators","decorators-legacy"]),this.hasPlugin("decorators")){if(this.getPluginOption("decorators","decoratorsBeforeExport")===!0)this.raise(M.DecoratorBeforeExport,this.state.startLoc);return!0}}if(this.isUsing())return this.raise(M.UsingDeclarationExport,this.state.startLoc),!0;if(this.isAwaitUsing())return this.raise(M.UsingDeclarationExport,this.state.startLoc),!0;return J===74||J===75||J===68||J===80||this.isLet()||this.isAsyncFunction()}checkExport(J,X,Z,Q){if(X){var Y;if(Z){if(this.checkDuplicateExports(J,"default"),this.hasPlugin("exportDefaultFrom")){var H;let G=J.declaration;if(G.type==="Identifier"&&G.name==="from"&&G.end-G.start===4&&!((H=G.extra)!=null&&H.parenthesized))this.raise(M.ExportDefaultFromAsIdentifier,G)}}else if((Y=J.specifiers)!=null&&Y.length)for(let G of J.specifiers){let{exported:z}=G,W=z.type==="Identifier"?z.name:z.value;if(this.checkDuplicateExports(G,W),!Q&&G.local){let{local:V}=G;if(V.type!=="Identifier")this.raise(M.ExportBindingIsString,G,{localName:V.value,exportName:W});else this.checkReservedWord(V.name,V.loc.start,!0,!1),this.scope.checkLocalExport(V)}}else if(J.declaration){let G=J.declaration;if(G.type==="FunctionDeclaration"||G.type==="ClassDeclaration"){let{id:z}=G;if(!z)throw Error("Assertion failure");this.checkDuplicateExports(J,z.name)}else if(G.type==="VariableDeclaration")for(let z of G.declarations)this.checkDeclaration(z.id)}}}checkDeclaration(J){if(J.type==="Identifier")this.checkDuplicateExports(J,J.name);else if(J.type==="ObjectPattern")for(let X of J.properties)this.checkDeclaration(X);else if(J.type==="ArrayPattern"){for(let X of J.elements)if(X)this.checkDeclaration(X)}else if(J.type==="ObjectProperty")this.checkDeclaration(J.value);else if(J.type==="RestElement")this.checkDeclaration(J.argument);else if(J.type==="AssignmentPattern")this.checkDeclaration(J.left)}checkDuplicateExports(J,X){if(this.exportedIdentifiers.has(X))if(X==="default")this.raise(M.DuplicateDefaultExport,J);else this.raise(M.DuplicateExport,J,{exportName:X});this.exportedIdentifiers.add(X)}parseExportSpecifiers(J){let X=[],Z=!0;this.expect(5);while(!this.eat(8)){if(Z)Z=!1;else if(this.expect(12),this.eat(8))break;let Q=this.isContextual(130),Y=this.match(134),H=this.startNode();H.local=this.parseModuleExportName(),X.push(this.parseExportSpecifier(H,Y,J,Q))}return X}parseExportSpecifier(J,X,Z,Q){if(this.eatContextual(93))J.exported=this.parseModuleExportName();else if(X)J.exported=this.cloneStringLiteral(J.local);else if(!J.exported)J.exported=this.cloneIdentifier(J.local);return this.finishNode(J,"ExportSpecifier")}parseModuleExportName(){if(this.match(134)){let J=this.parseStringLiteral(this.state.value),X=uK.exec(J.value);if(X)this.raise(M.ModuleExportNameHasLoneSurrogate,J,{surrogateCharCode:X[0].charCodeAt(0)});return J}return this.parseIdentifier(!0)}isJSONModuleImport(J){if(J.assertions!=null)return J.assertions.some(({key:X,value:Z})=>{return Z.value==="json"&&(X.type==="Identifier"?X.name==="type":X.value==="type")});return!1}checkImportReflection(J){let{specifiers:X}=J,Z=X.length===1?X[0].type:null;if(J.phase==="source"){if(Z!=="ImportDefaultSpecifier")this.raise(M.SourcePhaseImportRequiresDefault,X[0].loc.start)}else if(J.phase==="defer"){if(Z!=="ImportNamespaceSpecifier")this.raise(M.DeferImportRequiresNamespace,X[0].loc.start)}else if(J.module){var Q;if(Z!=="ImportDefaultSpecifier")this.raise(M.ImportReflectionNotBinding,X[0].loc.start);if(((Q=J.assertions)==null?void 0:Q.length)>0)this.raise(M.ImportReflectionHasAssertion,X[0].loc.start)}}checkJSONModuleImport(J){if(this.isJSONModuleImport(J)&&J.type!=="ExportAllDeclaration"){let{specifiers:X}=J;if(X!=null){let Z=X.find((Q)=>{let Y;if(Q.type==="ExportSpecifier")Y=Q.local;else if(Q.type==="ImportSpecifier")Y=Q.imported;if(Y!==void 0)return Y.type==="Identifier"?Y.name!=="default":Y.value!=="default"});if(Z!==void 0)this.raise(M.ImportJSONBindingNotDefault,Z.loc.start)}}}isPotentialImportPhase(J){if(J)return!1;return this.isContextual(105)||this.isContextual(97)||this.isContextual(127)}applyImportPhase(J,X,Z,Q){if(X)return;if(Z==="module")this.expectPlugin("importReflection",Q),J.module=!0;else if(this.hasPlugin("importReflection"))J.module=!1;if(Z==="source")this.expectPlugin("sourcePhaseImports",Q),J.phase="source";else if(Z==="defer")this.expectPlugin("deferredImportEvaluation",Q),J.phase="defer";else if(this.hasPlugin("sourcePhaseImports"))J.phase=null}parseMaybeImportPhase(J,X){if(!this.isPotentialImportPhase(X))return this.applyImportPhase(J,X,null),null;let Z=this.startNode(),Q=this.parseIdentifierName(!0),{type:Y}=this.state;if(M0(Y)?Y!==98||this.lookaheadCharCode()===102:Y!==12)return this.applyImportPhase(J,X,Q,Z.loc.start),null;else return this.applyImportPhase(J,X,null),this.createIdentifier(Z,Q)}isPrecedingIdImportPhase(J){let{type:X}=this.state;return O1(X)?X!==98||this.lookaheadCharCode()===102:X!==12}parseImport(J){if(this.match(134))return this.parseImportSourceAndAttributes(J);return this.parseImportSpecifiersAndAfter(J,this.parseMaybeImportPhase(J,!1))}parseImportSpecifiersAndAfter(J,X){J.specifiers=[];let Q=!this.maybeParseDefaultImportSpecifier(J,X)||this.eat(12),Y=Q&&this.maybeParseStarImportSpecifier(J);if(Q&&!Y)this.parseNamedImportSpecifiers(J);return this.expectContextual(98),this.parseImportSourceAndAttributes(J)}parseImportSourceAndAttributes(J){var X;return(X=J.specifiers)!=null||(J.specifiers=[]),J.source=this.parseImportSource(),this.maybeParseImportAttributes(J),this.checkImportReflection(J),this.checkJSONModuleImport(J),this.semicolon(),this.sawUnambiguousESM=!0,this.finishNode(J,"ImportDeclaration")}parseImportSource(){if(!this.match(134))this.unexpected();return this.parseExprAtom()}parseImportSpecifierLocal(J,X,Z){X.local=this.parseIdentifier(),J.specifiers.push(this.finishImportSpecifier(X,Z))}finishImportSpecifier(J,X,Z=8201){return this.checkLVal(J.local,{type:X},Z),this.finishNode(J,X)}parseImportAttributes(){this.expect(5);let J=[],X=new Set;do{if(this.match(8))break;let Z=this.startNode(),Q=this.state.value;if(X.has(Q))this.raise(M.ModuleAttributesWithDuplicateKeys,this.state.startLoc,{key:Q});if(X.add(Q),this.match(134))Z.key=this.parseStringLiteral(Q);else Z.key=this.parseIdentifier(!0);if(this.expect(14),!this.match(134))throw this.raise(M.ModuleAttributeInvalidValue,this.state.startLoc);Z.value=this.parseStringLiteral(this.state.value),J.push(this.finishNode(Z,"ImportAttribute"))}while(this.eat(12));return this.expect(8),J}parseModuleAttributes(){let J=[],X=new Set;do{let Z=this.startNode();if(Z.key=this.parseIdentifier(!0),Z.key.name!=="type")this.raise(M.ModuleAttributeDifferentFromType,Z.key);if(X.has(Z.key.name))this.raise(M.ModuleAttributesWithDuplicateKeys,Z.key,{key:Z.key.name});if(X.add(Z.key.name),this.expect(14),!this.match(134))throw this.raise(M.ModuleAttributeInvalidValue,this.state.startLoc);Z.value=this.parseStringLiteral(this.state.value),J.push(this.finishNode(Z,"ImportAttribute"))}while(this.eat(12));return J}maybeParseImportAttributes(J){let X;var Z=!1;if(this.match(76)){if(this.hasPrecedingLineBreak()&&this.lookaheadCharCode()===40)return;if(this.next(),this.hasPlugin("moduleAttributes"))X=this.parseModuleAttributes(),this.addExtra(J,"deprecatedWithLegacySyntax",!0);else X=this.parseImportAttributes();Z=!0}else if(this.isContextual(94)&&!this.hasPrecedingLineBreak()){if(!this.hasPlugin("deprecatedImportAssert")&&!this.hasPlugin("importAssertions"))this.raise(M.ImportAttributesUseAssert,this.state.startLoc);if(!this.hasPlugin("importAssertions"))this.addExtra(J,"deprecatedAssertSyntax",!0);this.next(),X=this.parseImportAttributes()}else X=[];if(!Z&&this.hasPlugin("importAssertions"))J.assertions=X;else J.attributes=X}maybeParseDefaultImportSpecifier(J,X){if(X){let Z=this.startNodeAtNode(X);return Z.local=X,J.specifiers.push(this.finishImportSpecifier(Z,"ImportDefaultSpecifier")),!0}else if(M0(this.state.type))return this.parseImportSpecifierLocal(J,this.startNode(),"ImportDefaultSpecifier"),!0;return!1}maybeParseStarImportSpecifier(J){if(this.match(55)){let X=this.startNode();return this.next(),this.expectContextual(93),this.parseImportSpecifierLocal(J,X,"ImportNamespaceSpecifier"),!0}return!1}parseNamedImportSpecifiers(J){let X=!0;this.expect(5);while(!this.eat(8)){if(X)X=!1;else{if(this.eat(14))throw this.raise(M.DestructureNamedImport,this.state.startLoc);if(this.expect(12),this.eat(8))break}let Z=this.startNode(),Q=this.match(134),Y=this.isContextual(130);Z.imported=this.parseModuleExportName();let H=this.parseImportSpecifier(Z,Q,J.importKind==="type"||J.importKind==="typeof",Y,void 0);J.specifiers.push(H)}}parseImportSpecifier(J,X,Z,Q,Y){if(this.eatContextual(93))J.local=this.parseIdentifier();else{let{imported:H}=J;if(X)throw this.raise(M.ImportBindingIsString,J,{importName:H.value});if(this.checkReservedWord(H.name,J.loc.start,!0,!0),!J.local)J.local=this.cloneIdentifier(H)}return this.finishImportSpecifier(J,"ImportSpecifier",Y)}isThisParam(J){return J.type==="Identifier"&&J.name==="this"}}class t2 extends b4{constructor(J,X,Z){J=yV(J);super(J,X);this.options=J,this.initializeScopes(),this.plugins=Z,this.filename=J.sourceFilename,this.startIndex=J.startIndex;let Q=0;if(J.allowAwaitOutsideFunction)Q|=1;if(J.allowReturnOutsideFunction)Q|=2;if(J.allowImportExportEverywhere)Q|=8;if(J.allowSuperOutsideMethod)Q|=16;if(J.allowUndeclaredExports)Q|=64;if(J.allowNewTargetOutsideFunction)Q|=4;if(J.allowYieldOutsideFunction)Q|=32;if(J.ranges)Q|=128;if(J.tokens)Q|=256;if(J.createImportExpressions)Q|=512;if(J.createParenthesizedExpressions)Q|=1024;if(J.errorRecovery)Q|=2048;if(J.attachComment)Q|=4096;if(J.annexB)Q|=8192;this.optionFlags=Q}getScopeHandler(){return OX}parse(){this.enterInitialScopes();let J=this.startNode(),X=this.startNode();return this.nextToken(),J.errors=null,this.parseTopLevel(J,X),J.errors=this.state.errors,J.comments.length=this.state.commentsLen,J}}function cK(J,X){var Z;if(((Z=X)==null?void 0:Z.sourceType)==="unambiguous"){X=Object.assign({},X);try{X.sourceType="module";let Q=A9(X,J),Y=Q.parse();if(Q.sawUnambiguousESM)return Y;if(Q.ambiguousScriptDifferentAst)try{return X.sourceType="script",A9(X,J).parse()}catch(H){}else Y.program.sourceType="script";return Y}catch(Q){try{return X.sourceType="script",A9(X,J).parse()}catch(Y){}throw Q}}else return A9(X,J).parse()}function lK(J,X){let Z=A9(X,J);if(Z.options.strictMode)Z.state.strict=!0;return Z.getExpression()}function iK(J){let X={};for(let Z of Object.keys(J))X[Z]=u0(J[Z]);return X}var pK=iK(lV);function A9(J,X){let Z=t2,Q=new Map;if(J!=null&&J.plugins){for(let Y of J.plugins){let H,G;if(typeof Y==="string")H=Y;else[H,G]=Y;if(!Q.has(H))Q.set(H,G||{})}hK(Q),Z=rK(Q)}return new Z(J,X,Q)}var J4=new Map;function rK(J){let X=[];for(let Y of xK)if(J.has(Y))X.push(Y);let Z=X.join("|"),Q=J4.get(Z);if(!Q){Q=t2;for(let Y of X)Q=L4[Y](Q);J4.set(Z,Q)}return Q}v4.parse=cK;v4.parseExpression=lK;v4.tokTypes=pK});var n2=I((E4)=>{Object.defineProperty(E4,"__esModule",{value:!0});E4.Var=E4.User=E4.Statement=E4.SpreadProperty=E4.Scope=E4.RestProperty=E4.ReferencedMemberExpression=E4.ReferencedIdentifier=E4.Referenced=E4.Pure=E4.NumericLiteralTypeAnnotation=E4.Generated=E4.ForAwaitStatement=E4.Flow=E4.Expression=E4.ExistentialTypeParam=E4.BlockScoped=E4.BindingIdentifier=void 0;var Nj1=E4.ReferencedIdentifier=["Identifier","JSXIdentifier"],wj1=E4.ReferencedMemberExpression=["MemberExpression"],Sj1=E4.BindingIdentifier=["Identifier"],Pj1=E4.Statement=["Statement"],Tj1=E4.Expression=["Expression"],Lj1=E4.Scope=["Scopable","Pattern"],kj1=E4.Referenced=null,bj1=E4.BlockScoped=null,vj1=E4.Var=["VariableDeclaration"],Ej1=E4.User=null,_j1=E4.Generated=null,gj1=E4.Pure=null,fj1=E4.Flow=["Flow","ImportDeclaration","ExportDeclaration","ImportSpecifier"],hj1=E4.RestProperty=["RestElement"],xj1=E4.SpreadProperty=["RestElement"],yj1=E4.ExistentialTypeParam=["ExistsTypeAnnotation"],uj1=E4.NumericLiteralTypeAnnotation=["NumberLiteralTypeAnnotation"],mj1=E4.ForAwaitStatement=["ForOfStatement"]});var f4=I((lj1,g4)=>{var iJ=1000,pJ=iJ*60,rJ=pJ*60,FJ=rJ*24,RU=FJ*7,$U=FJ*365.25;g4.exports=function(J,X){X=X||{};var Z=typeof J;if(Z==="string"&&J.length>0)return qU(J);else if(Z==="number"&&isFinite(J))return X.long?jU(J):FU(J);throw Error("val is not a non-empty string or a valid number. val="+JSON.stringify(J))};function qU(J){if(J=String(J),J.length>100)return;var X=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(J);if(!X)return;var Z=parseFloat(X[1]),Q=(X[2]||"ms").toLowerCase();switch(Q){case"years":case"year":case"yrs":case"yr":case"y":return Z*$U;case"weeks":case"week":case"w":return Z*RU;case"days":case"day":case"d":return Z*FJ;case"hours":case"hour":case"hrs":case"hr":case"h":return Z*rJ;case"minutes":case"minute":case"mins":case"min":case"m":return Z*pJ;case"seconds":case"second":case"secs":case"sec":case"s":return Z*iJ;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return Z;default:return}}function FU(J){var X=Math.abs(J);if(X>=FJ)return Math.round(J/FJ)+"d";if(X>=rJ)return Math.round(J/rJ)+"h";if(X>=pJ)return Math.round(J/pJ)+"m";if(X>=iJ)return Math.round(J/iJ)+"s";return J+"ms"}function jU(J){var X=Math.abs(J);if(X>=FJ)return CX(J,X,FJ,"day");if(X>=rJ)return CX(J,X,rJ,"hour");if(X>=pJ)return CX(J,X,pJ,"minute");if(X>=iJ)return CX(J,X,iJ,"second");return J+" ms"}function CX(J,X,Z,Q){var Y=X>=Z*1.5;return Math.round(J/Z)+" "+Q+(Y?"s":"")}});var o2=I((ij1,h4)=>{function MU(J){Z.debug=Z,Z.default=Z,Z.coerce=W,Z.disable=G,Z.enable=Y,Z.enabled=z,Z.humanize=f4(),Z.destroy=V,Object.keys(J).forEach((U)=>{Z[U]=J[U]}),Z.names=[],Z.skips=[],Z.formatters={};function X(U){let $=0;for(let j=0;j<U.length;j++)$=($<<5)-$+U.charCodeAt(j),$|=0;return Z.colors[Math.abs($)%Z.colors.length]}Z.selectColor=X;function Z(U){let $,j=null,C,A;function S(...w){if(!S.enabled)return;let P=S,b=Number(new Date),t=b-($||b);if(P.diff=t,P.prev=$,P.curr=b,$=b,w[0]=Z.coerce(w[0]),typeof w[0]!=="string")w.unshift("%O");let m=0;w[0]=w[0].replace(/%([a-zA-Z%])/g,(U1,D1)=>{if(U1==="%%")return"%";m++;let L1=Z.formatters[D1];if(typeof L1==="function"){let f1=w[m];U1=L1.call(P,f1),w.splice(m,1),m--}return U1}),Z.formatArgs.call(P,w),(P.log||Z.log).apply(P,w)}if(S.namespace=U,S.useColors=Z.useColors(),S.color=Z.selectColor(U),S.extend=Q,S.destroy=Z.destroy,Object.defineProperty(S,"enabled",{enumerable:!0,configurable:!1,get:()=>{if(j!==null)return j;if(C!==Z.namespaces)C=Z.namespaces,A=Z.enabled(U);return A},set:(w)=>{j=w}}),typeof Z.init==="function")Z.init(S);return S}function Q(U,$){let j=Z(this.namespace+(typeof $>"u"?":":$)+U);return j.log=this.log,j}function Y(U){Z.save(U),Z.namespaces=U,Z.names=[],Z.skips=[];let $=(typeof U==="string"?U:"").trim().replace(/\s+/g,",").split(",").filter(Boolean);for(let j of $)if(j[0]==="-")Z.skips.push(j.slice(1));else Z.names.push(j)}function H(U,$){let j=0,C=0,A=-1,S=0;while(j<U.length)if(C<$.length&&($[C]===U[j]||$[C]==="*"))if($[C]==="*")A=C,S=j,C++;else j++,C++;else if(A!==-1)C=A+1,S++,j=S;else return!1;while(C<$.length&&$[C]==="*")C++;return C===$.length}function G(){let U=[...Z.names,...Z.skips.map(($)=>"-"+$)].join(",");return Z.enable(""),U}function z(U){for(let $ of Z.skips)if(H(U,$))return!1;for(let $ of Z.names)if(H(U,$))return!0;return!1}function W(U){if(U instanceof Error)return U.stack||U.message;return U}function V(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return Z.enable(Z.load()),Z}h4.exports=MU});var y4=I((x4,DX)=>{x4.formatArgs=AU;x4.save=CU;x4.load=DU;x4.useColors=OU;x4.storage=IU();x4.destroy=(()=>{let J=!1;return()=>{if(!J)J=!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`.")}})();x4.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"];function OU(){if(typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let J;return typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&(J=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(J[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function AU(J){if(J[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+J[0]+(this.useColors?"%c ":" ")+"+"+DX.exports.humanize(this.diff),!this.useColors)return;let X="color: "+this.color;J.splice(1,0,X,"color: inherit");let Z=0,Q=0;J[0].replace(/%[a-zA-Z%]/g,(Y)=>{if(Y==="%%")return;if(Z++,Y==="%c")Q=Z}),J.splice(Q,0,X)}x4.log=console.debug||console.log||(()=>{});function CU(J){try{if(J)x4.storage.setItem("debug",J);else x4.storage.removeItem("debug")}catch(X){}}function DU(){let J;try{J=x4.storage.getItem("debug")||x4.storage.getItem("DEBUG")}catch(X){}if(!J&&typeof process<"u"&&"env"in process)J=process.env.DEBUG;return J}function IU(){try{return localStorage}catch(J){}}DX.exports=o2()(x4);var{formatters:NU}=DX.exports;NU.j=function(J){try{return JSON.stringify(J)}catch(X){return"[UnexpectedJSONParseError]: "+X.message}}});var l4=I((m4,NX)=>{var vU=q9("tty"),IX=q9("util");m4.init=yU;m4.log=fU;m4.formatArgs=_U;m4.save=hU;m4.load=xU;m4.useColors=EU;m4.destroy=IX.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");m4.colors=[6,2,3,4,5,1];try{let J=(()=>{throw new Error("Cannot require module "+"supports-color");})();if(J&&(J.stderr||J).level>=2)m4.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(J){}m4.inspectOpts=Object.keys(process.env).filter((J)=>{return/^debug_/i.test(J)}).reduce((J,X)=>{let Z=X.substring(6).toLowerCase().replace(/_([a-z])/g,(Y,H)=>{return H.toUpperCase()}),Q=process.env[X];if(/^(yes|on|true|enabled)$/i.test(Q))Q=!0;else if(/^(no|off|false|disabled)$/i.test(Q))Q=!1;else if(Q==="null")Q=null;else Q=Number(Q);return J[Z]=Q,J},{});function EU(){return"colors"in m4.inspectOpts?Boolean(m4.inspectOpts.colors):vU.isatty(process.stderr.fd)}function _U(J){let{namespace:X,useColors:Z}=this;if(Z){let Q=this.color,Y="\x1B[3"+(Q<8?Q:"8;5;"+Q),H=` ${Y};1m${X} \x1B[0m`;J[0]=H+J[0].split(`
11
+ `).join(`
12
+ `+H),J.push(Y+"m+"+NX.exports.humanize(this.diff)+"\x1B[0m")}else J[0]=gU()+X+" "+J[0]}function gU(){if(m4.inspectOpts.hideDate)return"";return new Date().toISOString()+" "}function fU(...J){return process.stderr.write(IX.formatWithOptions(m4.inspectOpts,...J)+`
13
+ `)}function hU(J){if(J)process.env.DEBUG=J;else delete process.env.DEBUG}function xU(){return process.env.DEBUG}function yU(J){J.inspectOpts={};let X=Object.keys(m4.inspectOpts);for(let Z=0;Z<X.length;Z++)J.inspectOpts[X[Z]]=m4.inspectOpts[X[Z]]}NX.exports=o2()(m4);var{formatters:u4}=NX.exports;u4.o=function(J){return this.inspectOpts.colors=this.useColors,IX.inspect(J,this.inspectOpts).split(`
14
+ `).map((X)=>X.trim()).join(" ")};u4.O=function(J){return this.inspectOpts.colors=this.useColors,IX.inspect(J,this.inspectOpts)}});var i4=I((dj1,e2)=>{if(typeof process>"u"||process.type==="renderer"||!1||process.__nwjs)e2.exports=y4();else e2.exports=l4()});var wX=I((p4)=>{Object.defineProperty(p4,"__esModule",{value:!0});p4.default=dU;function dU(J,X){let Z=Object.keys(X);for(let Q of Z)if(J[Q]!==X[Q])return!1;return!0}});var dJ=I((d4)=>{Object.defineProperty(d4,"__esModule",{value:!0});d4.default=sU;var r4=new Set;function sU(J,X,Z="",Q=J){if(r4.has(Q))return;r4.add(Q);let{internal:Y,trace:H}=tU(1,2);if(Y)return;console.warn(`${Z}\`${J}\` has been deprecated, please migrate to \`${X}\`
15
+ ${H}`)}function tU(J,X){let{stackTraceLimit:Z,prepareStackTrace:Q}=Error,Y;if(Error.stackTraceLimit=1+J+X,Error.prepareStackTrace=function(G,z){Y=z},Error().stack,Error.stackTraceLimit=Z,Error.prepareStackTrace=Q,!Y)return{internal:!1,trace:""};let H=Y.slice(1+J,1+J+X);return{internal:/[\\/]@babel[\\/]/.test(H[1].getFileName()),trace:H.map((G)=>` at ${G}`).join(`
16
+ `)}}});var E1=I((s4)=>{Object.defineProperty(s4,"__esModule",{value:!0});s4.isAccessor=qj;s4.isAnyTypeAnnotation=ER;s4.isArgumentPlaceholder=Wq;s4.isArrayExpression=oU;s4.isArrayPattern=tB;s4.isArrayTypeAnnotation=_R;s4.isArrowFunctionExpression=nB;s4.isAssignmentExpression=eU;s4.isAssignmentPattern=sB;s4.isAwaitExpression=AR;s4.isBigIntLiteral=DR;s4.isBinary=hF;s4.isBinaryExpression=JB;s4.isBindExpression=Vq;s4.isBlock=uF;s4.isBlockParent=yF;s4.isBlockStatement=YB;s4.isBooleanLiteral=wB;s4.isBooleanLiteralTypeAnnotation=fR;s4.isBooleanTypeAnnotation=gR;s4.isBreakStatement=HB;s4.isCallExpression=GB;s4.isCatchClause=zB;s4.isClass=Bj;s4.isClassAccessorProperty=PR;s4.isClassBody=oB;s4.isClassDeclaration=JR;s4.isClassExpression=eB;s4.isClassImplements=xR;s4.isClassMethod=BR;s4.isClassPrivateMethod=LR;s4.isClassPrivateProperty=TR;s4.isClassProperty=SR;s4.isCompletionStatement=lF;s4.isConditional=iF;s4.isConditionalExpression=WB;s4.isContinueStatement=VB;s4.isDebuggerStatement=KB;s4.isDecimalLiteral=qq;s4.isDeclaration=eF;s4.isDeclareClass=yR;s4.isDeclareExportAllDeclaration=aR;s4.isDeclareExportDeclaration=dR;s4.isDeclareFunction=uR;s4.isDeclareInterface=mR;s4.isDeclareModule=cR;s4.isDeclareModuleExports=lR;s4.isDeclareOpaqueType=pR;s4.isDeclareTypeAlias=iR;s4.isDeclareVariable=rR;s4.isDeclaredPredicate=sR;s4.isDecorator=Kq;s4.isDirective=ZB;s4.isDirectiveLiteral=QB;s4.isDoExpression=Uq;s4.isDoWhileStatement=UB;s4.isEmptyStatement=BB;s4.isEmptyTypeAnnotation=G$;s4.isEnumBody=Dj;s4.isEnumBooleanBody=_$;s4.isEnumBooleanMember=x$;s4.isEnumDeclaration=E$;s4.isEnumDefaultedMember=m$;s4.isEnumMember=Ij;s4.isEnumNumberBody=g$;s4.isEnumNumberMember=y$;s4.isEnumStringBody=f$;s4.isEnumStringMember=u$;s4.isEnumSymbolBody=h$;s4.isExistsTypeAnnotation=tR;s4.isExportAllDeclaration=XR;s4.isExportDeclaration=Rj;s4.isExportDefaultDeclaration=ZR;s4.isExportDefaultSpecifier=Bq;s4.isExportNamedDeclaration=QR;s4.isExportNamespaceSpecifier=IR;s4.isExportSpecifier=YR;s4.isExpression=fF;s4.isExpressionStatement=RB;s4.isExpressionWrapper=dF;s4.isFile=$B;s4.isFlow=jj;s4.isFlowBaseAnnotation=Oj;s4.isFlowDeclaration=Aj;s4.isFlowPredicate=Cj;s4.isFlowType=Mj;s4.isFor=aF;s4.isForInStatement=qB;s4.isForOfStatement=HR;s4.isForStatement=FB;s4.isForXStatement=sF;s4.isFunction=tF;s4.isFunctionDeclaration=jB;s4.isFunctionExpression=MB;s4.isFunctionParameter=Jj;s4.isFunctionParent=nF;s4.isFunctionTypeAnnotation=nR;s4.isFunctionTypeParam=oR;s4.isGenericTypeAnnotation=eR;s4.isIdentifier=OB;s4.isIfStatement=AB;s4.isImmutable=Hj;s4.isImport=CR;s4.isImportAttribute=vR;s4.isImportDeclaration=GR;s4.isImportDefaultSpecifier=zR;s4.isImportExpression=KR;s4.isImportNamespaceSpecifier=WR;s4.isImportOrExportDeclaration=a4;s4.isImportSpecifier=VR;s4.isIndexedAccessType=c$;s4.isInferredPredicate=J$;s4.isInterfaceDeclaration=Z$;s4.isInterfaceExtends=X$;s4.isInterfaceTypeAnnotation=Q$;s4.isInterpreterDirective=XB;s4.isIntersectionTypeAnnotation=Y$;s4.isJSX=Nj;s4.isJSXAttribute=i$;s4.isJSXClosingElement=p$;s4.isJSXClosingFragment=Yq;s4.isJSXElement=r$;s4.isJSXEmptyExpression=d$;s4.isJSXExpressionContainer=a$;s4.isJSXFragment=Zq;s4.isJSXIdentifier=t$;s4.isJSXMemberExpression=n$;s4.isJSXNamespacedName=o$;s4.isJSXOpeningElement=e$;s4.isJSXOpeningFragment=Qq;s4.isJSXSpreadAttribute=Jq;s4.isJSXSpreadChild=s$;s4.isJSXText=Xq;s4.isLVal=Zj;s4.isLabeledStatement=CB;s4.isLiteral=Yj;s4.isLogicalExpression=PB;s4.isLoop=pF;s4.isMemberExpression=TB;s4.isMetaProperty=UR;s4.isMethod=zj;s4.isMiscellaneous=wj;s4.isMixedTypeAnnotation=H$;s4.isModuleDeclaration=_j;s4.isModuleExpression=Fq;s4.isModuleSpecifier=$j;s4.isNewExpression=LB;s4.isNoop=Hq;s4.isNullLiteral=NB;s4.isNullLiteralTypeAnnotation=hR;s4.isNullableTypeAnnotation=z$;s4.isNumberLiteral=kj;s4.isNumberLiteralTypeAnnotation=W$;s4.isNumberTypeAnnotation=V$;s4.isNumericLiteral=IB;s4.isObjectExpression=bB;s4.isObjectMember=Wj;s4.isObjectMethod=vB;s4.isObjectPattern=RR;s4.isObjectProperty=EB;s4.isObjectTypeAnnotation=K$;s4.isObjectTypeCallProperty=B$;s4.isObjectTypeIndexer=R$;s4.isObjectTypeInternalSlot=U$;s4.isObjectTypeProperty=$$;s4.isObjectTypeSpreadProperty=q$;s4.isOpaqueType=F$;s4.isOptionalCallExpression=wR;s4.isOptionalIndexedAccessType=l$;s4.isOptionalMemberExpression=NR;s4.isParenthesizedExpression=hB;s4.isPattern=Uj;s4.isPatternLike=Xj;s4.isPipelineBareFunction=Oq;s4.isPipelinePrimaryTopicReference=Aq;s4.isPipelineTopicExpression=Mq;s4.isPlaceholder=Gq;s4.isPrivate=Fj;s4.isPrivateName=kR;s4.isProgram=kB;s4.isProperty=Vj;s4.isPureish=oF;s4.isQualifiedTypeIdentifier=j$;s4.isRecordExpression=Rq;s4.isRegExpLiteral=SB;s4.isRegexLiteral=bj;s4.isRestElement=_B;s4.isRestProperty=vj;s4.isReturnStatement=gB;s4.isScopable=xF;s4.isSequenceExpression=fB;s4.isSpreadElement=$R;s4.isSpreadProperty=Ej;s4.isStandardized=gF;s4.isStatement=mF;s4.isStaticBlock=bR;s4.isStringLiteral=DB;s4.isStringLiteralTypeAnnotation=M$;s4.isStringTypeAnnotation=O$;s4.isSuper=qR;s4.isSwitchCase=xB;s4.isSwitchStatement=yB;s4.isSymbolTypeAnnotation=A$;s4.isTSAnyKeyword=bq;s4.isTSArrayType=nq;s4.isTSAsExpression=jF;s4.isTSBaseType=Lj;s4.isTSBigIntKeyword=Eq;s4.isTSBooleanKeyword=vq;s4.isTSCallSignatureDeclaration=Sq;s4.isTSConditionalType=YF;s4.isTSConstructSignatureDeclaration=Pq;s4.isTSConstructorType=rq;s4.isTSDeclareFunction=Iq;s4.isTSDeclareMethod=Nq;s4.isTSEntityName=Qj;s4.isTSEnumBody=AF;s4.isTSEnumDeclaration=CF;s4.isTSEnumMember=DF;s4.isTSExportAssignment=LF;s4.isTSExpressionWithTypeArguments=BF;s4.isTSExternalModuleReference=PF;s4.isTSFunctionType=pq;s4.isTSImportEqualsDeclaration=SF;s4.isTSImportType=wF;s4.isTSIndexSignature=kq;s4.isTSIndexedAccessType=WF;s4.isTSInferType=HF;s4.isTSInstantiationExpression=FF;s4.isTSInterfaceBody=$F;s4.isTSInterfaceDeclaration=RF;s4.isTSIntersectionType=QF;s4.isTSIntrinsicKeyword=_q;s4.isTSLiteralType=UF;s4.isTSMappedType=VF;s4.isTSMethodSignature=Lq;s4.isTSModuleBlock=NF;s4.isTSModuleDeclaration=IF;s4.isTSNamedTupleMember=XF;s4.isTSNamespaceExportDeclaration=kF;s4.isTSNeverKeyword=gq;s4.isTSNonNullExpression=TF;s4.isTSNullKeyword=fq;s4.isTSNumberKeyword=hq;s4.isTSObjectKeyword=xq;s4.isTSOptionalType=eq;s4.isTSParameterProperty=Dq;s4.isTSParenthesizedType=GF;s4.isTSPropertySignature=Tq;s4.isTSQualifiedName=wq;s4.isTSRestType=JF;s4.isTSSatisfiesExpression=MF;s4.isTSStringKeyword=yq;s4.isTSSymbolKeyword=uq;s4.isTSTemplateLiteralType=KF;s4.isTSThisType=iq;s4.isTSTupleType=oq;s4.isTSType=Tj;s4.isTSTypeAliasDeclaration=qF;s4.isTSTypeAnnotation=bF;s4.isTSTypeAssertion=OF;s4.isTSTypeElement=Pj;s4.isTSTypeLiteral=tq;s4.isTSTypeOperator=zF;s4.isTSTypeParameter=_F;s4.isTSTypeParameterDeclaration=EF;s4.isTSTypeParameterInstantiation=vF;s4.isTSTypePredicate=aq;s4.isTSTypeQuery=sq;s4.isTSTypeReference=dq;s4.isTSUndefinedKeyword=mq;s4.isTSUnionType=ZF;s4.isTSUnknownKeyword=cq;s4.isTSVoidKeyword=lq;s4.isTaggedTemplateExpression=FR;s4.isTemplateElement=jR;s4.isTemplateLiteral=MR;s4.isTerminatorless=cF;s4.isThisExpression=uB;s4.isThisTypeAnnotation=C$;s4.isThrowStatement=mB;s4.isTopicReference=jq;s4.isTryStatement=cB;s4.isTupleExpression=$q;s4.isTupleTypeAnnotation=D$;s4.isTypeAlias=N$;s4.isTypeAnnotation=w$;s4.isTypeCastExpression=S$;s4.isTypeParameter=P$;s4.isTypeParameterDeclaration=T$;s4.isTypeParameterInstantiation=L$;s4.isTypeScript=Sj;s4.isTypeofTypeAnnotation=I$;s4.isUnaryExpression=lB;s4.isUnaryLike=Kj;s4.isUnionTypeAnnotation=k$;s4.isUpdateExpression=iB;s4.isUserWhitespacable=Gj;s4.isV8IntrinsicIdentifier=zq;s4.isVariableDeclaration=pB;s4.isVariableDeclarator=rB;s4.isVariance=b$;s4.isVoidPattern=Cq;s4.isVoidTypeAnnotation=v$;s4.isWhile=rF;s4.isWhileStatement=dB;s4.isWithStatement=aB;s4.isYieldExpression=OR;var R=wX(),T9=dJ();function oU(J,X){if(!J)return!1;if(J.type!=="ArrayExpression")return!1;return X==null||(0,R.default)(J,X)}function eU(J,X){if(!J)return!1;if(J.type!=="AssignmentExpression")return!1;return X==null||(0,R.default)(J,X)}function JB(J,X){if(!J)return!1;if(J.type!=="BinaryExpression")return!1;return X==null||(0,R.default)(J,X)}function XB(J,X){if(!J)return!1;if(J.type!=="InterpreterDirective")return!1;return X==null||(0,R.default)(J,X)}function ZB(J,X){if(!J)return!1;if(J.type!=="Directive")return!1;return X==null||(0,R.default)(J,X)}function QB(J,X){if(!J)return!1;if(J.type!=="DirectiveLiteral")return!1;return X==null||(0,R.default)(J,X)}function YB(J,X){if(!J)return!1;if(J.type!=="BlockStatement")return!1;return X==null||(0,R.default)(J,X)}function HB(J,X){if(!J)return!1;if(J.type!=="BreakStatement")return!1;return X==null||(0,R.default)(J,X)}function GB(J,X){if(!J)return!1;if(J.type!=="CallExpression")return!1;return X==null||(0,R.default)(J,X)}function zB(J,X){if(!J)return!1;if(J.type!=="CatchClause")return!1;return X==null||(0,R.default)(J,X)}function WB(J,X){if(!J)return!1;if(J.type!=="ConditionalExpression")return!1;return X==null||(0,R.default)(J,X)}function VB(J,X){if(!J)return!1;if(J.type!=="ContinueStatement")return!1;return X==null||(0,R.default)(J,X)}function KB(J,X){if(!J)return!1;if(J.type!=="DebuggerStatement")return!1;return X==null||(0,R.default)(J,X)}function UB(J,X){if(!J)return!1;if(J.type!=="DoWhileStatement")return!1;return X==null||(0,R.default)(J,X)}function BB(J,X){if(!J)return!1;if(J.type!=="EmptyStatement")return!1;return X==null||(0,R.default)(J,X)}function RB(J,X){if(!J)return!1;if(J.type!=="ExpressionStatement")return!1;return X==null||(0,R.default)(J,X)}function $B(J,X){if(!J)return!1;if(J.type!=="File")return!1;return X==null||(0,R.default)(J,X)}function qB(J,X){if(!J)return!1;if(J.type!=="ForInStatement")return!1;return X==null||(0,R.default)(J,X)}function FB(J,X){if(!J)return!1;if(J.type!=="ForStatement")return!1;return X==null||(0,R.default)(J,X)}function jB(J,X){if(!J)return!1;if(J.type!=="FunctionDeclaration")return!1;return X==null||(0,R.default)(J,X)}function MB(J,X){if(!J)return!1;if(J.type!=="FunctionExpression")return!1;return X==null||(0,R.default)(J,X)}function OB(J,X){if(!J)return!1;if(J.type!=="Identifier")return!1;return X==null||(0,R.default)(J,X)}function AB(J,X){if(!J)return!1;if(J.type!=="IfStatement")return!1;return X==null||(0,R.default)(J,X)}function CB(J,X){if(!J)return!1;if(J.type!=="LabeledStatement")return!1;return X==null||(0,R.default)(J,X)}function DB(J,X){if(!J)return!1;if(J.type!=="StringLiteral")return!1;return X==null||(0,R.default)(J,X)}function IB(J,X){if(!J)return!1;if(J.type!=="NumericLiteral")return!1;return X==null||(0,R.default)(J,X)}function NB(J,X){if(!J)return!1;if(J.type!=="NullLiteral")return!1;return X==null||(0,R.default)(J,X)}function wB(J,X){if(!J)return!1;if(J.type!=="BooleanLiteral")return!1;return X==null||(0,R.default)(J,X)}function SB(J,X){if(!J)return!1;if(J.type!=="RegExpLiteral")return!1;return X==null||(0,R.default)(J,X)}function PB(J,X){if(!J)return!1;if(J.type!=="LogicalExpression")return!1;return X==null||(0,R.default)(J,X)}function TB(J,X){if(!J)return!1;if(J.type!=="MemberExpression")return!1;return X==null||(0,R.default)(J,X)}function LB(J,X){if(!J)return!1;if(J.type!=="NewExpression")return!1;return X==null||(0,R.default)(J,X)}function kB(J,X){if(!J)return!1;if(J.type!=="Program")return!1;return X==null||(0,R.default)(J,X)}function bB(J,X){if(!J)return!1;if(J.type!=="ObjectExpression")return!1;return X==null||(0,R.default)(J,X)}function vB(J,X){if(!J)return!1;if(J.type!=="ObjectMethod")return!1;return X==null||(0,R.default)(J,X)}function EB(J,X){if(!J)return!1;if(J.type!=="ObjectProperty")return!1;return X==null||(0,R.default)(J,X)}function _B(J,X){if(!J)return!1;if(J.type!=="RestElement")return!1;return X==null||(0,R.default)(J,X)}function gB(J,X){if(!J)return!1;if(J.type!=="ReturnStatement")return!1;return X==null||(0,R.default)(J,X)}function fB(J,X){if(!J)return!1;if(J.type!=="SequenceExpression")return!1;return X==null||(0,R.default)(J,X)}function hB(J,X){if(!J)return!1;if(J.type!=="ParenthesizedExpression")return!1;return X==null||(0,R.default)(J,X)}function xB(J,X){if(!J)return!1;if(J.type!=="SwitchCase")return!1;return X==null||(0,R.default)(J,X)}function yB(J,X){if(!J)return!1;if(J.type!=="SwitchStatement")return!1;return X==null||(0,R.default)(J,X)}function uB(J,X){if(!J)return!1;if(J.type!=="ThisExpression")return!1;return X==null||(0,R.default)(J,X)}function mB(J,X){if(!J)return!1;if(J.type!=="ThrowStatement")return!1;return X==null||(0,R.default)(J,X)}function cB(J,X){if(!J)return!1;if(J.type!=="TryStatement")return!1;return X==null||(0,R.default)(J,X)}function lB(J,X){if(!J)return!1;if(J.type!=="UnaryExpression")return!1;return X==null||(0,R.default)(J,X)}function iB(J,X){if(!J)return!1;if(J.type!=="UpdateExpression")return!1;return X==null||(0,R.default)(J,X)}function pB(J,X){if(!J)return!1;if(J.type!=="VariableDeclaration")return!1;return X==null||(0,R.default)(J,X)}function rB(J,X){if(!J)return!1;if(J.type!=="VariableDeclarator")return!1;return X==null||(0,R.default)(J,X)}function dB(J,X){if(!J)return!1;if(J.type!=="WhileStatement")return!1;return X==null||(0,R.default)(J,X)}function aB(J,X){if(!J)return!1;if(J.type!=="WithStatement")return!1;return X==null||(0,R.default)(J,X)}function sB(J,X){if(!J)return!1;if(J.type!=="AssignmentPattern")return!1;return X==null||(0,R.default)(J,X)}function tB(J,X){if(!J)return!1;if(J.type!=="ArrayPattern")return!1;return X==null||(0,R.default)(J,X)}function nB(J,X){if(!J)return!1;if(J.type!=="ArrowFunctionExpression")return!1;return X==null||(0,R.default)(J,X)}function oB(J,X){if(!J)return!1;if(J.type!=="ClassBody")return!1;return X==null||(0,R.default)(J,X)}function eB(J,X){if(!J)return!1;if(J.type!=="ClassExpression")return!1;return X==null||(0,R.default)(J,X)}function JR(J,X){if(!J)return!1;if(J.type!=="ClassDeclaration")return!1;return X==null||(0,R.default)(J,X)}function XR(J,X){if(!J)return!1;if(J.type!=="ExportAllDeclaration")return!1;return X==null||(0,R.default)(J,X)}function ZR(J,X){if(!J)return!1;if(J.type!=="ExportDefaultDeclaration")return!1;return X==null||(0,R.default)(J,X)}function QR(J,X){if(!J)return!1;if(J.type!=="ExportNamedDeclaration")return!1;return X==null||(0,R.default)(J,X)}function YR(J,X){if(!J)return!1;if(J.type!=="ExportSpecifier")return!1;return X==null||(0,R.default)(J,X)}function HR(J,X){if(!J)return!1;if(J.type!=="ForOfStatement")return!1;return X==null||(0,R.default)(J,X)}function GR(J,X){if(!J)return!1;if(J.type!=="ImportDeclaration")return!1;return X==null||(0,R.default)(J,X)}function zR(J,X){if(!J)return!1;if(J.type!=="ImportDefaultSpecifier")return!1;return X==null||(0,R.default)(J,X)}function WR(J,X){if(!J)return!1;if(J.type!=="ImportNamespaceSpecifier")return!1;return X==null||(0,R.default)(J,X)}function VR(J,X){if(!J)return!1;if(J.type!=="ImportSpecifier")return!1;return X==null||(0,R.default)(J,X)}function KR(J,X){if(!J)return!1;if(J.type!=="ImportExpression")return!1;return X==null||(0,R.default)(J,X)}function UR(J,X){if(!J)return!1;if(J.type!=="MetaProperty")return!1;return X==null||(0,R.default)(J,X)}function BR(J,X){if(!J)return!1;if(J.type!=="ClassMethod")return!1;return X==null||(0,R.default)(J,X)}function RR(J,X){if(!J)return!1;if(J.type!=="ObjectPattern")return!1;return X==null||(0,R.default)(J,X)}function $R(J,X){if(!J)return!1;if(J.type!=="SpreadElement")return!1;return X==null||(0,R.default)(J,X)}function qR(J,X){if(!J)return!1;if(J.type!=="Super")return!1;return X==null||(0,R.default)(J,X)}function FR(J,X){if(!J)return!1;if(J.type!=="TaggedTemplateExpression")return!1;return X==null||(0,R.default)(J,X)}function jR(J,X){if(!J)return!1;if(J.type!=="TemplateElement")return!1;return X==null||(0,R.default)(J,X)}function MR(J,X){if(!J)return!1;if(J.type!=="TemplateLiteral")return!1;return X==null||(0,R.default)(J,X)}function OR(J,X){if(!J)return!1;if(J.type!=="YieldExpression")return!1;return X==null||(0,R.default)(J,X)}function AR(J,X){if(!J)return!1;if(J.type!=="AwaitExpression")return!1;return X==null||(0,R.default)(J,X)}function CR(J,X){if(!J)return!1;if(J.type!=="Import")return!1;return X==null||(0,R.default)(J,X)}function DR(J,X){if(!J)return!1;if(J.type!=="BigIntLiteral")return!1;return X==null||(0,R.default)(J,X)}function IR(J,X){if(!J)return!1;if(J.type!=="ExportNamespaceSpecifier")return!1;return X==null||(0,R.default)(J,X)}function NR(J,X){if(!J)return!1;if(J.type!=="OptionalMemberExpression")return!1;return X==null||(0,R.default)(J,X)}function wR(J,X){if(!J)return!1;if(J.type!=="OptionalCallExpression")return!1;return X==null||(0,R.default)(J,X)}function SR(J,X){if(!J)return!1;if(J.type!=="ClassProperty")return!1;return X==null||(0,R.default)(J,X)}function PR(J,X){if(!J)return!1;if(J.type!=="ClassAccessorProperty")return!1;return X==null||(0,R.default)(J,X)}function TR(J,X){if(!J)return!1;if(J.type!=="ClassPrivateProperty")return!1;return X==null||(0,R.default)(J,X)}function LR(J,X){if(!J)return!1;if(J.type!=="ClassPrivateMethod")return!1;return X==null||(0,R.default)(J,X)}function kR(J,X){if(!J)return!1;if(J.type!=="PrivateName")return!1;return X==null||(0,R.default)(J,X)}function bR(J,X){if(!J)return!1;if(J.type!=="StaticBlock")return!1;return X==null||(0,R.default)(J,X)}function vR(J,X){if(!J)return!1;if(J.type!=="ImportAttribute")return!1;return X==null||(0,R.default)(J,X)}function ER(J,X){if(!J)return!1;if(J.type!=="AnyTypeAnnotation")return!1;return X==null||(0,R.default)(J,X)}function _R(J,X){if(!J)return!1;if(J.type!=="ArrayTypeAnnotation")return!1;return X==null||(0,R.default)(J,X)}function gR(J,X){if(!J)return!1;if(J.type!=="BooleanTypeAnnotation")return!1;return X==null||(0,R.default)(J,X)}function fR(J,X){if(!J)return!1;if(J.type!=="BooleanLiteralTypeAnnotation")return!1;return X==null||(0,R.default)(J,X)}function hR(J,X){if(!J)return!1;if(J.type!=="NullLiteralTypeAnnotation")return!1;return X==null||(0,R.default)(J,X)}function xR(J,X){if(!J)return!1;if(J.type!=="ClassImplements")return!1;return X==null||(0,R.default)(J,X)}function yR(J,X){if(!J)return!1;if(J.type!=="DeclareClass")return!1;return X==null||(0,R.default)(J,X)}function uR(J,X){if(!J)return!1;if(J.type!=="DeclareFunction")return!1;return X==null||(0,R.default)(J,X)}function mR(J,X){if(!J)return!1;if(J.type!=="DeclareInterface")return!1;return X==null||(0,R.default)(J,X)}function cR(J,X){if(!J)return!1;if(J.type!=="DeclareModule")return!1;return X==null||(0,R.default)(J,X)}function lR(J,X){if(!J)return!1;if(J.type!=="DeclareModuleExports")return!1;return X==null||(0,R.default)(J,X)}function iR(J,X){if(!J)return!1;if(J.type!=="DeclareTypeAlias")return!1;return X==null||(0,R.default)(J,X)}function pR(J,X){if(!J)return!1;if(J.type!=="DeclareOpaqueType")return!1;return X==null||(0,R.default)(J,X)}function rR(J,X){if(!J)return!1;if(J.type!=="DeclareVariable")return!1;return X==null||(0,R.default)(J,X)}function dR(J,X){if(!J)return!1;if(J.type!=="DeclareExportDeclaration")return!1;return X==null||(0,R.default)(J,X)}function aR(J,X){if(!J)return!1;if(J.type!=="DeclareExportAllDeclaration")return!1;return X==null||(0,R.default)(J,X)}function sR(J,X){if(!J)return!1;if(J.type!=="DeclaredPredicate")return!1;return X==null||(0,R.default)(J,X)}function tR(J,X){if(!J)return!1;if(J.type!=="ExistsTypeAnnotation")return!1;return X==null||(0,R.default)(J,X)}function nR(J,X){if(!J)return!1;if(J.type!=="FunctionTypeAnnotation")return!1;return X==null||(0,R.default)(J,X)}function oR(J,X){if(!J)return!1;if(J.type!=="FunctionTypeParam")return!1;return X==null||(0,R.default)(J,X)}function eR(J,X){if(!J)return!1;if(J.type!=="GenericTypeAnnotation")return!1;return X==null||(0,R.default)(J,X)}function J$(J,X){if(!J)return!1;if(J.type!=="InferredPredicate")return!1;return X==null||(0,R.default)(J,X)}function X$(J,X){if(!J)return!1;if(J.type!=="InterfaceExtends")return!1;return X==null||(0,R.default)(J,X)}function Z$(J,X){if(!J)return!1;if(J.type!=="InterfaceDeclaration")return!1;return X==null||(0,R.default)(J,X)}function Q$(J,X){if(!J)return!1;if(J.type!=="InterfaceTypeAnnotation")return!1;return X==null||(0,R.default)(J,X)}function Y$(J,X){if(!J)return!1;if(J.type!=="IntersectionTypeAnnotation")return!1;return X==null||(0,R.default)(J,X)}function H$(J,X){if(!J)return!1;if(J.type!=="MixedTypeAnnotation")return!1;return X==null||(0,R.default)(J,X)}function G$(J,X){if(!J)return!1;if(J.type!=="EmptyTypeAnnotation")return!1;return X==null||(0,R.default)(J,X)}function z$(J,X){if(!J)return!1;if(J.type!=="NullableTypeAnnotation")return!1;return X==null||(0,R.default)(J,X)}function W$(J,X){if(!J)return!1;if(J.type!=="NumberLiteralTypeAnnotation")return!1;return X==null||(0,R.default)(J,X)}function V$(J,X){if(!J)return!1;if(J.type!=="NumberTypeAnnotation")return!1;return X==null||(0,R.default)(J,X)}function K$(J,X){if(!J)return!1;if(J.type!=="ObjectTypeAnnotation")return!1;return X==null||(0,R.default)(J,X)}function U$(J,X){if(!J)return!1;if(J.type!=="ObjectTypeInternalSlot")return!1;return X==null||(0,R.default)(J,X)}function B$(J,X){if(!J)return!1;if(J.type!=="ObjectTypeCallProperty")return!1;return X==null||(0,R.default)(J,X)}function R$(J,X){if(!J)return!1;if(J.type!=="ObjectTypeIndexer")return!1;return X==null||(0,R.default)(J,X)}function $$(J,X){if(!J)return!1;if(J.type!=="ObjectTypeProperty")return!1;return X==null||(0,R.default)(J,X)}function q$(J,X){if(!J)return!1;if(J.type!=="ObjectTypeSpreadProperty")return!1;return X==null||(0,R.default)(J,X)}function F$(J,X){if(!J)return!1;if(J.type!=="OpaqueType")return!1;return X==null||(0,R.default)(J,X)}function j$(J,X){if(!J)return!1;if(J.type!=="QualifiedTypeIdentifier")return!1;return X==null||(0,R.default)(J,X)}function M$(J,X){if(!J)return!1;if(J.type!=="StringLiteralTypeAnnotation")return!1;return X==null||(0,R.default)(J,X)}function O$(J,X){if(!J)return!1;if(J.type!=="StringTypeAnnotation")return!1;return X==null||(0,R.default)(J,X)}function A$(J,X){if(!J)return!1;if(J.type!=="SymbolTypeAnnotation")return!1;return X==null||(0,R.default)(J,X)}function C$(J,X){if(!J)return!1;if(J.type!=="ThisTypeAnnotation")return!1;return X==null||(0,R.default)(J,X)}function D$(J,X){if(!J)return!1;if(J.type!=="TupleTypeAnnotation")return!1;return X==null||(0,R.default)(J,X)}function I$(J,X){if(!J)return!1;if(J.type!=="TypeofTypeAnnotation")return!1;return X==null||(0,R.default)(J,X)}function N$(J,X){if(!J)return!1;if(J.type!=="TypeAlias")return!1;return X==null||(0,R.default)(J,X)}function w$(J,X){if(!J)return!1;if(J.type!=="TypeAnnotation")return!1;return X==null||(0,R.default)(J,X)}function S$(J,X){if(!J)return!1;if(J.type!=="TypeCastExpression")return!1;return X==null||(0,R.default)(J,X)}function P$(J,X){if(!J)return!1;if(J.type!=="TypeParameter")return!1;return X==null||(0,R.default)(J,X)}function T$(J,X){if(!J)return!1;if(J.type!=="TypeParameterDeclaration")return!1;return X==null||(0,R.default)(J,X)}function L$(J,X){if(!J)return!1;if(J.type!=="TypeParameterInstantiation")return!1;return X==null||(0,R.default)(J,X)}function k$(J,X){if(!J)return!1;if(J.type!=="UnionTypeAnnotation")return!1;return X==null||(0,R.default)(J,X)}function b$(J,X){if(!J)return!1;if(J.type!=="Variance")return!1;return X==null||(0,R.default)(J,X)}function v$(J,X){if(!J)return!1;if(J.type!=="VoidTypeAnnotation")return!1;return X==null||(0,R.default)(J,X)}function E$(J,X){if(!J)return!1;if(J.type!=="EnumDeclaration")return!1;return X==null||(0,R.default)(J,X)}function _$(J,X){if(!J)return!1;if(J.type!=="EnumBooleanBody")return!1;return X==null||(0,R.default)(J,X)}function g$(J,X){if(!J)return!1;if(J.type!=="EnumNumberBody")return!1;return X==null||(0,R.default)(J,X)}function f$(J,X){if(!J)return!1;if(J.type!=="EnumStringBody")return!1;return X==null||(0,R.default)(J,X)}function h$(J,X){if(!J)return!1;if(J.type!=="EnumSymbolBody")return!1;return X==null||(0,R.default)(J,X)}function x$(J,X){if(!J)return!1;if(J.type!=="EnumBooleanMember")return!1;return X==null||(0,R.default)(J,X)}function y$(J,X){if(!J)return!1;if(J.type!=="EnumNumberMember")return!1;return X==null||(0,R.default)(J,X)}function u$(J,X){if(!J)return!1;if(J.type!=="EnumStringMember")return!1;return X==null||(0,R.default)(J,X)}function m$(J,X){if(!J)return!1;if(J.type!=="EnumDefaultedMember")return!1;return X==null||(0,R.default)(J,X)}function c$(J,X){if(!J)return!1;if(J.type!=="IndexedAccessType")return!1;return X==null||(0,R.default)(J,X)}function l$(J,X){if(!J)return!1;if(J.type!=="OptionalIndexedAccessType")return!1;return X==null||(0,R.default)(J,X)}function i$(J,X){if(!J)return!1;if(J.type!=="JSXAttribute")return!1;return X==null||(0,R.default)(J,X)}function p$(J,X){if(!J)return!1;if(J.type!=="JSXClosingElement")return!1;return X==null||(0,R.default)(J,X)}function r$(J,X){if(!J)return!1;if(J.type!=="JSXElement")return!1;return X==null||(0,R.default)(J,X)}function d$(J,X){if(!J)return!1;if(J.type!=="JSXEmptyExpression")return!1;return X==null||(0,R.default)(J,X)}function a$(J,X){if(!J)return!1;if(J.type!=="JSXExpressionContainer")return!1;return X==null||(0,R.default)(J,X)}function s$(J,X){if(!J)return!1;if(J.type!=="JSXSpreadChild")return!1;return X==null||(0,R.default)(J,X)}function t$(J,X){if(!J)return!1;if(J.type!=="JSXIdentifier")return!1;return X==null||(0,R.default)(J,X)}function n$(J,X){if(!J)return!1;if(J.type!=="JSXMemberExpression")return!1;return X==null||(0,R.default)(J,X)}function o$(J,X){if(!J)return!1;if(J.type!=="JSXNamespacedName")return!1;return X==null||(0,R.default)(J,X)}function e$(J,X){if(!J)return!1;if(J.type!=="JSXOpeningElement")return!1;return X==null||(0,R.default)(J,X)}function Jq(J,X){if(!J)return!1;if(J.type!=="JSXSpreadAttribute")return!1;return X==null||(0,R.default)(J,X)}function Xq(J,X){if(!J)return!1;if(J.type!=="JSXText")return!1;return X==null||(0,R.default)(J,X)}function Zq(J,X){if(!J)return!1;if(J.type!=="JSXFragment")return!1;return X==null||(0,R.default)(J,X)}function Qq(J,X){if(!J)return!1;if(J.type!=="JSXOpeningFragment")return!1;return X==null||(0,R.default)(J,X)}function Yq(J,X){if(!J)return!1;if(J.type!=="JSXClosingFragment")return!1;return X==null||(0,R.default)(J,X)}function Hq(J,X){if(!J)return!1;if(J.type!=="Noop")return!1;return X==null||(0,R.default)(J,X)}function Gq(J,X){if(!J)return!1;if(J.type!=="Placeholder")return!1;return X==null||(0,R.default)(J,X)}function zq(J,X){if(!J)return!1;if(J.type!=="V8IntrinsicIdentifier")return!1;return X==null||(0,R.default)(J,X)}function Wq(J,X){if(!J)return!1;if(J.type!=="ArgumentPlaceholder")return!1;return X==null||(0,R.default)(J,X)}function Vq(J,X){if(!J)return!1;if(J.type!=="BindExpression")return!1;return X==null||(0,R.default)(J,X)}function Kq(J,X){if(!J)return!1;if(J.type!=="Decorator")return!1;return X==null||(0,R.default)(J,X)}function Uq(J,X){if(!J)return!1;if(J.type!=="DoExpression")return!1;return X==null||(0,R.default)(J,X)}function Bq(J,X){if(!J)return!1;if(J.type!=="ExportDefaultSpecifier")return!1;return X==null||(0,R.default)(J,X)}function Rq(J,X){if(!J)return!1;if(J.type!=="RecordExpression")return!1;return X==null||(0,R.default)(J,X)}function $q(J,X){if(!J)return!1;if(J.type!=="TupleExpression")return!1;return X==null||(0,R.default)(J,X)}function qq(J,X){if(!J)return!1;if(J.type!=="DecimalLiteral")return!1;return X==null||(0,R.default)(J,X)}function Fq(J,X){if(!J)return!1;if(J.type!=="ModuleExpression")return!1;return X==null||(0,R.default)(J,X)}function jq(J,X){if(!J)return!1;if(J.type!=="TopicReference")return!1;return X==null||(0,R.default)(J,X)}function Mq(J,X){if(!J)return!1;if(J.type!=="PipelineTopicExpression")return!1;return X==null||(0,R.default)(J,X)}function Oq(J,X){if(!J)return!1;if(J.type!=="PipelineBareFunction")return!1;return X==null||(0,R.default)(J,X)}function Aq(J,X){if(!J)return!1;if(J.type!=="PipelinePrimaryTopicReference")return!1;return X==null||(0,R.default)(J,X)}function Cq(J,X){if(!J)return!1;if(J.type!=="VoidPattern")return!1;return X==null||(0,R.default)(J,X)}function Dq(J,X){if(!J)return!1;if(J.type!=="TSParameterProperty")return!1;return X==null||(0,R.default)(J,X)}function Iq(J,X){if(!J)return!1;if(J.type!=="TSDeclareFunction")return!1;return X==null||(0,R.default)(J,X)}function Nq(J,X){if(!J)return!1;if(J.type!=="TSDeclareMethod")return!1;return X==null||(0,R.default)(J,X)}function wq(J,X){if(!J)return!1;if(J.type!=="TSQualifiedName")return!1;return X==null||(0,R.default)(J,X)}function Sq(J,X){if(!J)return!1;if(J.type!=="TSCallSignatureDeclaration")return!1;return X==null||(0,R.default)(J,X)}function Pq(J,X){if(!J)return!1;if(J.type!=="TSConstructSignatureDeclaration")return!1;return X==null||(0,R.default)(J,X)}function Tq(J,X){if(!J)return!1;if(J.type!=="TSPropertySignature")return!1;return X==null||(0,R.default)(J,X)}function Lq(J,X){if(!J)return!1;if(J.type!=="TSMethodSignature")return!1;return X==null||(0,R.default)(J,X)}function kq(J,X){if(!J)return!1;if(J.type!=="TSIndexSignature")return!1;return X==null||(0,R.default)(J,X)}function bq(J,X){if(!J)return!1;if(J.type!=="TSAnyKeyword")return!1;return X==null||(0,R.default)(J,X)}function vq(J,X){if(!J)return!1;if(J.type!=="TSBooleanKeyword")return!1;return X==null||(0,R.default)(J,X)}function Eq(J,X){if(!J)return!1;if(J.type!=="TSBigIntKeyword")return!1;return X==null||(0,R.default)(J,X)}function _q(J,X){if(!J)return!1;if(J.type!=="TSIntrinsicKeyword")return!1;return X==null||(0,R.default)(J,X)}function gq(J,X){if(!J)return!1;if(J.type!=="TSNeverKeyword")return!1;return X==null||(0,R.default)(J,X)}function fq(J,X){if(!J)return!1;if(J.type!=="TSNullKeyword")return!1;return X==null||(0,R.default)(J,X)}function hq(J,X){if(!J)return!1;if(J.type!=="TSNumberKeyword")return!1;return X==null||(0,R.default)(J,X)}function xq(J,X){if(!J)return!1;if(J.type!=="TSObjectKeyword")return!1;return X==null||(0,R.default)(J,X)}function yq(J,X){if(!J)return!1;if(J.type!=="TSStringKeyword")return!1;return X==null||(0,R.default)(J,X)}function uq(J,X){if(!J)return!1;if(J.type!=="TSSymbolKeyword")return!1;return X==null||(0,R.default)(J,X)}function mq(J,X){if(!J)return!1;if(J.type!=="TSUndefinedKeyword")return!1;return X==null||(0,R.default)(J,X)}function cq(J,X){if(!J)return!1;if(J.type!=="TSUnknownKeyword")return!1;return X==null||(0,R.default)(J,X)}function lq(J,X){if(!J)return!1;if(J.type!=="TSVoidKeyword")return!1;return X==null||(0,R.default)(J,X)}function iq(J,X){if(!J)return!1;if(J.type!=="TSThisType")return!1;return X==null||(0,R.default)(J,X)}function pq(J,X){if(!J)return!1;if(J.type!=="TSFunctionType")return!1;return X==null||(0,R.default)(J,X)}function rq(J,X){if(!J)return!1;if(J.type!=="TSConstructorType")return!1;return X==null||(0,R.default)(J,X)}function dq(J,X){if(!J)return!1;if(J.type!=="TSTypeReference")return!1;return X==null||(0,R.default)(J,X)}function aq(J,X){if(!J)return!1;if(J.type!=="TSTypePredicate")return!1;return X==null||(0,R.default)(J,X)}function sq(J,X){if(!J)return!1;if(J.type!=="TSTypeQuery")return!1;return X==null||(0,R.default)(J,X)}function tq(J,X){if(!J)return!1;if(J.type!=="TSTypeLiteral")return!1;return X==null||(0,R.default)(J,X)}function nq(J,X){if(!J)return!1;if(J.type!=="TSArrayType")return!1;return X==null||(0,R.default)(J,X)}function oq(J,X){if(!J)return!1;if(J.type!=="TSTupleType")return!1;return X==null||(0,R.default)(J,X)}function eq(J,X){if(!J)return!1;if(J.type!=="TSOptionalType")return!1;return X==null||(0,R.default)(J,X)}function JF(J,X){if(!J)return!1;if(J.type!=="TSRestType")return!1;return X==null||(0,R.default)(J,X)}function XF(J,X){if(!J)return!1;if(J.type!=="TSNamedTupleMember")return!1;return X==null||(0,R.default)(J,X)}function ZF(J,X){if(!J)return!1;if(J.type!=="TSUnionType")return!1;return X==null||(0,R.default)(J,X)}function QF(J,X){if(!J)return!1;if(J.type!=="TSIntersectionType")return!1;return X==null||(0,R.default)(J,X)}function YF(J,X){if(!J)return!1;if(J.type!=="TSConditionalType")return!1;return X==null||(0,R.default)(J,X)}function HF(J,X){if(!J)return!1;if(J.type!=="TSInferType")return!1;return X==null||(0,R.default)(J,X)}function GF(J,X){if(!J)return!1;if(J.type!=="TSParenthesizedType")return!1;return X==null||(0,R.default)(J,X)}function zF(J,X){if(!J)return!1;if(J.type!=="TSTypeOperator")return!1;return X==null||(0,R.default)(J,X)}function WF(J,X){if(!J)return!1;if(J.type!=="TSIndexedAccessType")return!1;return X==null||(0,R.default)(J,X)}function VF(J,X){if(!J)return!1;if(J.type!=="TSMappedType")return!1;return X==null||(0,R.default)(J,X)}function KF(J,X){if(!J)return!1;if(J.type!=="TSTemplateLiteralType")return!1;return X==null||(0,R.default)(J,X)}function UF(J,X){if(!J)return!1;if(J.type!=="TSLiteralType")return!1;return X==null||(0,R.default)(J,X)}function BF(J,X){if(!J)return!1;if(J.type!=="TSExpressionWithTypeArguments")return!1;return X==null||(0,R.default)(J,X)}function RF(J,X){if(!J)return!1;if(J.type!=="TSInterfaceDeclaration")return!1;return X==null||(0,R.default)(J,X)}function $F(J,X){if(!J)return!1;if(J.type!=="TSInterfaceBody")return!1;return X==null||(0,R.default)(J,X)}function qF(J,X){if(!J)return!1;if(J.type!=="TSTypeAliasDeclaration")return!1;return X==null||(0,R.default)(J,X)}function FF(J,X){if(!J)return!1;if(J.type!=="TSInstantiationExpression")return!1;return X==null||(0,R.default)(J,X)}function jF(J,X){if(!J)return!1;if(J.type!=="TSAsExpression")return!1;return X==null||(0,R.default)(J,X)}function MF(J,X){if(!J)return!1;if(J.type!=="TSSatisfiesExpression")return!1;return X==null||(0,R.default)(J,X)}function OF(J,X){if(!J)return!1;if(J.type!=="TSTypeAssertion")return!1;return X==null||(0,R.default)(J,X)}function AF(J,X){if(!J)return!1;if(J.type!=="TSEnumBody")return!1;return X==null||(0,R.default)(J,X)}function CF(J,X){if(!J)return!1;if(J.type!=="TSEnumDeclaration")return!1;return X==null||(0,R.default)(J,X)}function DF(J,X){if(!J)return!1;if(J.type!=="TSEnumMember")return!1;return X==null||(0,R.default)(J,X)}function IF(J,X){if(!J)return!1;if(J.type!=="TSModuleDeclaration")return!1;return X==null||(0,R.default)(J,X)}function NF(J,X){if(!J)return!1;if(J.type!=="TSModuleBlock")return!1;return X==null||(0,R.default)(J,X)}function wF(J,X){if(!J)return!1;if(J.type!=="TSImportType")return!1;return X==null||(0,R.default)(J,X)}function SF(J,X){if(!J)return!1;if(J.type!=="TSImportEqualsDeclaration")return!1;return X==null||(0,R.default)(J,X)}function PF(J,X){if(!J)return!1;if(J.type!=="TSExternalModuleReference")return!1;return X==null||(0,R.default)(J,X)}function TF(J,X){if(!J)return!1;if(J.type!=="TSNonNullExpression")return!1;return X==null||(0,R.default)(J,X)}function LF(J,X){if(!J)return!1;if(J.type!=="TSExportAssignment")return!1;return X==null||(0,R.default)(J,X)}function kF(J,X){if(!J)return!1;if(J.type!=="TSNamespaceExportDeclaration")return!1;return X==null||(0,R.default)(J,X)}function bF(J,X){if(!J)return!1;if(J.type!=="TSTypeAnnotation")return!1;return X==null||(0,R.default)(J,X)}function vF(J,X){if(!J)return!1;if(J.type!=="TSTypeParameterInstantiation")return!1;return X==null||(0,R.default)(J,X)}function EF(J,X){if(!J)return!1;if(J.type!=="TSTypeParameterDeclaration")return!1;return X==null||(0,R.default)(J,X)}function _F(J,X){if(!J)return!1;if(J.type!=="TSTypeParameter")return!1;return X==null||(0,R.default)(J,X)}function gF(J,X){if(!J)return!1;switch(J.type){case"ArrayExpression":case"AssignmentExpression":case"BinaryExpression":case"InterpreterDirective":case"Directive":case"DirectiveLiteral":case"BlockStatement":case"BreakStatement":case"CallExpression":case"CatchClause":case"ConditionalExpression":case"ContinueStatement":case"DebuggerStatement":case"DoWhileStatement":case"EmptyStatement":case"ExpressionStatement":case"File":case"ForInStatement":case"ForStatement":case"FunctionDeclaration":case"FunctionExpression":case"Identifier":case"IfStatement":case"LabeledStatement":case"StringLiteral":case"NumericLiteral":case"NullLiteral":case"BooleanLiteral":case"RegExpLiteral":case"LogicalExpression":case"MemberExpression":case"NewExpression":case"Program":case"ObjectExpression":case"ObjectMethod":case"ObjectProperty":case"RestElement":case"ReturnStatement":case"SequenceExpression":case"ParenthesizedExpression":case"SwitchCase":case"SwitchStatement":case"ThisExpression":case"ThrowStatement":case"TryStatement":case"UnaryExpression":case"UpdateExpression":case"VariableDeclaration":case"VariableDeclarator":case"WhileStatement":case"WithStatement":case"AssignmentPattern":case"ArrayPattern":case"ArrowFunctionExpression":case"ClassBody":case"ClassExpression":case"ClassDeclaration":case"ExportAllDeclaration":case"ExportDefaultDeclaration":case"ExportNamedDeclaration":case"ExportSpecifier":case"ForOfStatement":case"ImportDeclaration":case"ImportDefaultSpecifier":case"ImportNamespaceSpecifier":case"ImportSpecifier":case"ImportExpression":case"MetaProperty":case"ClassMethod":case"ObjectPattern":case"SpreadElement":case"Super":case"TaggedTemplateExpression":case"TemplateElement":case"TemplateLiteral":case"YieldExpression":case"AwaitExpression":case"Import":case"BigIntLiteral":case"ExportNamespaceSpecifier":case"OptionalMemberExpression":case"OptionalCallExpression":case"ClassProperty":case"ClassAccessorProperty":case"ClassPrivateProperty":case"ClassPrivateMethod":case"PrivateName":case"StaticBlock":case"ImportAttribute":break;case"Placeholder":switch(J.expectedNode){case"Identifier":case"StringLiteral":case"BlockStatement":case"ClassBody":break;default:return!1}break;default:return!1}return X==null||(0,R.default)(J,X)}function fF(J,X){if(!J)return!1;switch(J.type){case"ArrayExpression":case"AssignmentExpression":case"BinaryExpression":case"CallExpression":case"ConditionalExpression":case"FunctionExpression":case"Identifier":case"StringLiteral":case"NumericLiteral":case"NullLiteral":case"BooleanLiteral":case"RegExpLiteral":case"LogicalExpression":case"MemberExpression":case"NewExpression":case"ObjectExpression":case"SequenceExpression":case"ParenthesizedExpression":case"ThisExpression":case"UnaryExpression":case"UpdateExpression":case"ArrowFunctionExpression":case"ClassExpression":case"ImportExpression":case"MetaProperty":case"Super":case"TaggedTemplateExpression":case"TemplateLiteral":case"YieldExpression":case"AwaitExpression":case"Import":case"BigIntLiteral":case"OptionalMemberExpression":case"OptionalCallExpression":case"TypeCastExpression":case"JSXElement":case"JSXFragment":case"BindExpression":case"DoExpression":case"RecordExpression":case"TupleExpression":case"DecimalLiteral":case"ModuleExpression":case"TopicReference":case"PipelineTopicExpression":case"PipelineBareFunction":case"PipelinePrimaryTopicReference":case"TSInstantiationExpression":case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":case"TSNonNullExpression":break;case"Placeholder":switch(J.expectedNode){case"Expression":case"Identifier":case"StringLiteral":break;default:return!1}break;default:return!1}return X==null||(0,R.default)(J,X)}function hF(J,X){if(!J)return!1;switch(J.type){case"BinaryExpression":case"LogicalExpression":break;default:return!1}return X==null||(0,R.default)(J,X)}function xF(J,X){if(!J)return!1;switch(J.type){case"BlockStatement":case"CatchClause":case"DoWhileStatement":case"ForInStatement":case"ForStatement":case"FunctionDeclaration":case"FunctionExpression":case"Program":case"ObjectMethod":case"SwitchStatement":case"WhileStatement":case"ArrowFunctionExpression":case"ClassExpression":case"ClassDeclaration":case"ForOfStatement":case"ClassMethod":case"ClassPrivateMethod":case"StaticBlock":case"TSModuleBlock":break;case"Placeholder":if(J.expectedNode==="BlockStatement")break;default:return!1}return X==null||(0,R.default)(J,X)}function yF(J,X){if(!J)return!1;switch(J.type){case"BlockStatement":case"CatchClause":case"DoWhileStatement":case"ForInStatement":case"ForStatement":case"FunctionDeclaration":case"FunctionExpression":case"Program":case"ObjectMethod":case"SwitchStatement":case"WhileStatement":case"ArrowFunctionExpression":case"ForOfStatement":case"ClassMethod":case"ClassPrivateMethod":case"StaticBlock":case"TSModuleBlock":break;case"Placeholder":if(J.expectedNode==="BlockStatement")break;default:return!1}return X==null||(0,R.default)(J,X)}function uF(J,X){if(!J)return!1;switch(J.type){case"BlockStatement":case"Program":case"TSModuleBlock":break;case"Placeholder":if(J.expectedNode==="BlockStatement")break;default:return!1}return X==null||(0,R.default)(J,X)}function mF(J,X){if(!J)return!1;switch(J.type){case"BlockStatement":case"BreakStatement":case"ContinueStatement":case"DebuggerStatement":case"DoWhileStatement":case"EmptyStatement":case"ExpressionStatement":case"ForInStatement":case"ForStatement":case"FunctionDeclaration":case"IfStatement":case"LabeledStatement":case"ReturnStatement":case"SwitchStatement":case"ThrowStatement":case"TryStatement":case"VariableDeclaration":case"WhileStatement":case"WithStatement":case"ClassDeclaration":case"ExportAllDeclaration":case"ExportDefaultDeclaration":case"ExportNamedDeclaration":case"ForOfStatement":case"ImportDeclaration":case"DeclareClass":case"DeclareFunction":case"DeclareInterface":case"DeclareModule":case"DeclareModuleExports":case"DeclareTypeAlias":case"DeclareOpaqueType":case"DeclareVariable":case"DeclareExportDeclaration":case"DeclareExportAllDeclaration":case"InterfaceDeclaration":case"OpaqueType":case"TypeAlias":case"EnumDeclaration":case"TSDeclareFunction":case"TSInterfaceDeclaration":case"TSTypeAliasDeclaration":case"TSEnumDeclaration":case"TSModuleDeclaration":case"TSImportEqualsDeclaration":case"TSExportAssignment":case"TSNamespaceExportDeclaration":break;case"Placeholder":switch(J.expectedNode){case"Statement":case"Declaration":case"BlockStatement":break;default:return!1}break;default:return!1}return X==null||(0,R.default)(J,X)}function cF(J,X){if(!J)return!1;switch(J.type){case"BreakStatement":case"ContinueStatement":case"ReturnStatement":case"ThrowStatement":case"YieldExpression":case"AwaitExpression":break;default:return!1}return X==null||(0,R.default)(J,X)}function lF(J,X){if(!J)return!1;switch(J.type){case"BreakStatement":case"ContinueStatement":case"ReturnStatement":case"ThrowStatement":break;default:return!1}return X==null||(0,R.default)(J,X)}function iF(J,X){if(!J)return!1;switch(J.type){case"ConditionalExpression":case"IfStatement":break;default:return!1}return X==null||(0,R.default)(J,X)}function pF(J,X){if(!J)return!1;switch(J.type){case"DoWhileStatement":case"ForInStatement":case"ForStatement":case"WhileStatement":case"ForOfStatement":break;default:return!1}return X==null||(0,R.default)(J,X)}function rF(J,X){if(!J)return!1;switch(J.type){case"DoWhileStatement":case"WhileStatement":break;default:return!1}return X==null||(0,R.default)(J,X)}function dF(J,X){if(!J)return!1;switch(J.type){case"ExpressionStatement":case"ParenthesizedExpression":case"TypeCastExpression":break;default:return!1}return X==null||(0,R.default)(J,X)}function aF(J,X){if(!J)return!1;switch(J.type){case"ForInStatement":case"ForStatement":case"ForOfStatement":break;default:return!1}return X==null||(0,R.default)(J,X)}function sF(J,X){if(!J)return!1;switch(J.type){case"ForInStatement":case"ForOfStatement":break;default:return!1}return X==null||(0,R.default)(J,X)}function tF(J,X){if(!J)return!1;switch(J.type){case"FunctionDeclaration":case"FunctionExpression":case"ObjectMethod":case"ArrowFunctionExpression":case"ClassMethod":case"ClassPrivateMethod":break;default:return!1}return X==null||(0,R.default)(J,X)}function nF(J,X){if(!J)return!1;switch(J.type){case"FunctionDeclaration":case"FunctionExpression":case"ObjectMethod":case"ArrowFunctionExpression":case"ClassMethod":case"ClassPrivateMethod":case"StaticBlock":case"TSModuleBlock":break;default:return!1}return X==null||(0,R.default)(J,X)}function oF(J,X){if(!J)return!1;switch(J.type){case"FunctionDeclaration":case"FunctionExpression":case"StringLiteral":case"NumericLiteral":case"NullLiteral":case"BooleanLiteral":case"RegExpLiteral":case"ArrowFunctionExpression":case"BigIntLiteral":case"DecimalLiteral":break;case"Placeholder":if(J.expectedNode==="StringLiteral")break;default:return!1}return X==null||(0,R.default)(J,X)}function eF(J,X){if(!J)return!1;switch(J.type){case"FunctionDeclaration":case"VariableDeclaration":case"ClassDeclaration":case"ExportAllDeclaration":case"ExportDefaultDeclaration":case"ExportNamedDeclaration":case"ImportDeclaration":case"DeclareClass":case"DeclareFunction":case"DeclareInterface":case"DeclareModule":case"DeclareModuleExports":case"DeclareTypeAlias":case"DeclareOpaqueType":case"DeclareVariable":case"DeclareExportDeclaration":case"DeclareExportAllDeclaration":case"InterfaceDeclaration":case"OpaqueType":case"TypeAlias":case"EnumDeclaration":case"TSDeclareFunction":case"TSInterfaceDeclaration":case"TSTypeAliasDeclaration":case"TSEnumDeclaration":case"TSModuleDeclaration":case"TSImportEqualsDeclaration":break;case"Placeholder":if(J.expectedNode==="Declaration")break;default:return!1}return X==null||(0,R.default)(J,X)}function Jj(J,X){if(!J)return!1;switch(J.type){case"Identifier":case"RestElement":case"AssignmentPattern":case"ArrayPattern":case"ObjectPattern":case"VoidPattern":break;case"Placeholder":if(J.expectedNode==="Identifier")break;default:return!1}return X==null||(0,R.default)(J,X)}function Xj(J,X){if(!J)return!1;switch(J.type){case"Identifier":case"MemberExpression":case"RestElement":case"AssignmentPattern":case"ArrayPattern":case"ObjectPattern":case"VoidPattern":case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":case"TSNonNullExpression":break;case"Placeholder":switch(J.expectedNode){case"Pattern":case"Identifier":break;default:return!1}break;default:return!1}return X==null||(0,R.default)(J,X)}function Zj(J,X){if(!J)return!1;switch(J.type){case"Identifier":case"MemberExpression":case"RestElement":case"AssignmentPattern":case"ArrayPattern":case"ObjectPattern":case"TSParameterProperty":case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":case"TSNonNullExpression":break;case"Placeholder":switch(J.expectedNode){case"Pattern":case"Identifier":break;default:return!1}break;default:return!1}return X==null||(0,R.default)(J,X)}function Qj(J,X){if(!J)return!1;switch(J.type){case"Identifier":case"TSQualifiedName":break;case"Placeholder":if(J.expectedNode==="Identifier")break;default:return!1}return X==null||(0,R.default)(J,X)}function Yj(J,X){if(!J)return!1;switch(J.type){case"StringLiteral":case"NumericLiteral":case"NullLiteral":case"BooleanLiteral":case"RegExpLiteral":case"TemplateLiteral":case"BigIntLiteral":case"DecimalLiteral":break;case"Placeholder":if(J.expectedNode==="StringLiteral")break;default:return!1}return X==null||(0,R.default)(J,X)}function Hj(J,X){if(!J)return!1;switch(J.type){case"StringLiteral":case"NumericLiteral":case"NullLiteral":case"BooleanLiteral":case"BigIntLiteral":case"JSXAttribute":case"JSXClosingElement":case"JSXElement":case"JSXExpressionContainer":case"JSXSpreadChild":case"JSXOpeningElement":case"JSXText":case"JSXFragment":case"JSXOpeningFragment":case"JSXClosingFragment":case"DecimalLiteral":break;case"Placeholder":if(J.expectedNode==="StringLiteral")break;default:return!1}return X==null||(0,R.default)(J,X)}function Gj(J,X){if(!J)return!1;switch(J.type){case"ObjectMethod":case"ObjectProperty":case"ObjectTypeInternalSlot":case"ObjectTypeCallProperty":case"ObjectTypeIndexer":case"ObjectTypeProperty":case"ObjectTypeSpreadProperty":break;default:return!1}return X==null||(0,R.default)(J,X)}function zj(J,X){if(!J)return!1;switch(J.type){case"ObjectMethod":case"ClassMethod":case"ClassPrivateMethod":break;default:return!1}return X==null||(0,R.default)(J,X)}function Wj(J,X){if(!J)return!1;switch(J.type){case"ObjectMethod":case"ObjectProperty":break;default:return!1}return X==null||(0,R.default)(J,X)}function Vj(J,X){if(!J)return!1;switch(J.type){case"ObjectProperty":case"ClassProperty":case"ClassAccessorProperty":case"ClassPrivateProperty":break;default:return!1}return X==null||(0,R.default)(J,X)}function Kj(J,X){if(!J)return!1;switch(J.type){case"UnaryExpression":case"SpreadElement":break;default:return!1}return X==null||(0,R.default)(J,X)}function Uj(J,X){if(!J)return!1;switch(J.type){case"AssignmentPattern":case"ArrayPattern":case"ObjectPattern":case"VoidPattern":break;case"Placeholder":if(J.expectedNode==="Pattern")break;default:return!1}return X==null||(0,R.default)(J,X)}function Bj(J,X){if(!J)return!1;switch(J.type){case"ClassExpression":case"ClassDeclaration":break;default:return!1}return X==null||(0,R.default)(J,X)}function a4(J,X){if(!J)return!1;switch(J.type){case"ExportAllDeclaration":case"ExportDefaultDeclaration":case"ExportNamedDeclaration":case"ImportDeclaration":break;default:return!1}return X==null||(0,R.default)(J,X)}function Rj(J,X){if(!J)return!1;switch(J.type){case"ExportAllDeclaration":case"ExportDefaultDeclaration":case"ExportNamedDeclaration":break;default:return!1}return X==null||(0,R.default)(J,X)}function $j(J,X){if(!J)return!1;switch(J.type){case"ExportSpecifier":case"ImportDefaultSpecifier":case"ImportNamespaceSpecifier":case"ImportSpecifier":case"ExportNamespaceSpecifier":case"ExportDefaultSpecifier":break;default:return!1}return X==null||(0,R.default)(J,X)}function qj(J,X){if(!J)return!1;switch(J.type){case"ClassAccessorProperty":break;default:return!1}return X==null||(0,R.default)(J,X)}function Fj(J,X){if(!J)return!1;switch(J.type){case"ClassPrivateProperty":case"ClassPrivateMethod":case"PrivateName":break;default:return!1}return X==null||(0,R.default)(J,X)}function jj(J,X){if(!J)return!1;switch(J.type){case"AnyTypeAnnotation":case"ArrayTypeAnnotation":case"BooleanTypeAnnotation":case"BooleanLiteralTypeAnnotation":case"NullLiteralTypeAnnotation":case"ClassImplements":case"DeclareClass":case"DeclareFunction":case"DeclareInterface":case"DeclareModule":case"DeclareModuleExports":case"DeclareTypeAlias":case"DeclareOpaqueType":case"DeclareVariable":case"DeclareExportDeclaration":case"DeclareExportAllDeclaration":case"DeclaredPredicate":case"ExistsTypeAnnotation":case"FunctionTypeAnnotation":case"FunctionTypeParam":case"GenericTypeAnnotation":case"InferredPredicate":case"InterfaceExtends":case"InterfaceDeclaration":case"InterfaceTypeAnnotation":case"IntersectionTypeAnnotation":case"MixedTypeAnnotation":case"EmptyTypeAnnotation":case"NullableTypeAnnotation":case"NumberLiteralTypeAnnotation":case"NumberTypeAnnotation":case"ObjectTypeAnnotation":case"ObjectTypeInternalSlot":case"ObjectTypeCallProperty":case"ObjectTypeIndexer":case"ObjectTypeProperty":case"ObjectTypeSpreadProperty":case"OpaqueType":case"QualifiedTypeIdentifier":case"StringLiteralTypeAnnotation":case"StringTypeAnnotation":case"SymbolTypeAnnotation":case"ThisTypeAnnotation":case"TupleTypeAnnotation":case"TypeofTypeAnnotation":case"TypeAlias":case"TypeAnnotation":case"TypeCastExpression":case"TypeParameter":case"TypeParameterDeclaration":case"TypeParameterInstantiation":case"UnionTypeAnnotation":case"Variance":case"VoidTypeAnnotation":case"EnumDeclaration":case"EnumBooleanBody":case"EnumNumberBody":case"EnumStringBody":case"EnumSymbolBody":case"EnumBooleanMember":case"EnumNumberMember":case"EnumStringMember":case"EnumDefaultedMember":case"IndexedAccessType":case"OptionalIndexedAccessType":break;default:return!1}return X==null||(0,R.default)(J,X)}function Mj(J,X){if(!J)return!1;switch(J.type){case"AnyTypeAnnotation":case"ArrayTypeAnnotation":case"BooleanTypeAnnotation":case"BooleanLiteralTypeAnnotation":case"NullLiteralTypeAnnotation":case"ExistsTypeAnnotation":case"FunctionTypeAnnotation":case"GenericTypeAnnotation":case"InterfaceTypeAnnotation":case"IntersectionTypeAnnotation":case"MixedTypeAnnotation":case"EmptyTypeAnnotation":case"NullableTypeAnnotation":case"NumberLiteralTypeAnnotation":case"NumberTypeAnnotation":case"ObjectTypeAnnotation":case"StringLiteralTypeAnnotation":case"StringTypeAnnotation":case"SymbolTypeAnnotation":case"ThisTypeAnnotation":case"TupleTypeAnnotation":case"TypeofTypeAnnotation":case"UnionTypeAnnotation":case"VoidTypeAnnotation":case"IndexedAccessType":case"OptionalIndexedAccessType":break;default:return!1}return X==null||(0,R.default)(J,X)}function Oj(J,X){if(!J)return!1;switch(J.type){case"AnyTypeAnnotation":case"BooleanTypeAnnotation":case"NullLiteralTypeAnnotation":case"MixedTypeAnnotation":case"EmptyTypeAnnotation":case"NumberTypeAnnotation":case"StringTypeAnnotation":case"SymbolTypeAnnotation":case"ThisTypeAnnotation":case"VoidTypeAnnotation":break;default:return!1}return X==null||(0,R.default)(J,X)}function Aj(J,X){if(!J)return!1;switch(J.type){case"DeclareClass":case"DeclareFunction":case"DeclareInterface":case"DeclareModule":case"DeclareModuleExports":case"DeclareTypeAlias":case"DeclareOpaqueType":case"DeclareVariable":case"DeclareExportDeclaration":case"DeclareExportAllDeclaration":case"InterfaceDeclaration":case"OpaqueType":case"TypeAlias":break;default:return!1}return X==null||(0,R.default)(J,X)}function Cj(J,X){if(!J)return!1;switch(J.type){case"DeclaredPredicate":case"InferredPredicate":break;default:return!1}return X==null||(0,R.default)(J,X)}function Dj(J,X){if(!J)return!1;switch(J.type){case"EnumBooleanBody":case"EnumNumberBody":case"EnumStringBody":case"EnumSymbolBody":break;default:return!1}return X==null||(0,R.default)(J,X)}function Ij(J,X){if(!J)return!1;switch(J.type){case"EnumBooleanMember":case"EnumNumberMember":case"EnumStringMember":case"EnumDefaultedMember":break;default:return!1}return X==null||(0,R.default)(J,X)}function Nj(J,X){if(!J)return!1;switch(J.type){case"JSXAttribute":case"JSXClosingElement":case"JSXElement":case"JSXEmptyExpression":case"JSXExpressionContainer":case"JSXSpreadChild":case"JSXIdentifier":case"JSXMemberExpression":case"JSXNamespacedName":case"JSXOpeningElement":case"JSXSpreadAttribute":case"JSXText":case"JSXFragment":case"JSXOpeningFragment":case"JSXClosingFragment":break;default:return!1}return X==null||(0,R.default)(J,X)}function wj(J,X){if(!J)return!1;switch(J.type){case"Noop":case"Placeholder":case"V8IntrinsicIdentifier":break;default:return!1}return X==null||(0,R.default)(J,X)}function Sj(J,X){if(!J)return!1;switch(J.type){case"TSParameterProperty":case"TSDeclareFunction":case"TSDeclareMethod":case"TSQualifiedName":case"TSCallSignatureDeclaration":case"TSConstructSignatureDeclaration":case"TSPropertySignature":case"TSMethodSignature":case"TSIndexSignature":case"TSAnyKeyword":case"TSBooleanKeyword":case"TSBigIntKeyword":case"TSIntrinsicKeyword":case"TSNeverKeyword":case"TSNullKeyword":case"TSNumberKeyword":case"TSObjectKeyword":case"TSStringKeyword":case"TSSymbolKeyword":case"TSUndefinedKeyword":case"TSUnknownKeyword":case"TSVoidKeyword":case"TSThisType":case"TSFunctionType":case"TSConstructorType":case"TSTypeReference":case"TSTypePredicate":case"TSTypeQuery":case"TSTypeLiteral":case"TSArrayType":case"TSTupleType":case"TSOptionalType":case"TSRestType":case"TSNamedTupleMember":case"TSUnionType":case"TSIntersectionType":case"TSConditionalType":case"TSInferType":case"TSParenthesizedType":case"TSTypeOperator":case"TSIndexedAccessType":case"TSMappedType":case"TSTemplateLiteralType":case"TSLiteralType":case"TSExpressionWithTypeArguments":case"TSInterfaceDeclaration":case"TSInterfaceBody":case"TSTypeAliasDeclaration":case"TSInstantiationExpression":case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":case"TSEnumBody":case"TSEnumDeclaration":case"TSEnumMember":case"TSModuleDeclaration":case"TSModuleBlock":case"TSImportType":case"TSImportEqualsDeclaration":case"TSExternalModuleReference":case"TSNonNullExpression":case"TSExportAssignment":case"TSNamespaceExportDeclaration":case"TSTypeAnnotation":case"TSTypeParameterInstantiation":case"TSTypeParameterDeclaration":case"TSTypeParameter":break;default:return!1}return X==null||(0,R.default)(J,X)}function Pj(J,X){if(!J)return!1;switch(J.type){case"TSCallSignatureDeclaration":case"TSConstructSignatureDeclaration":case"TSPropertySignature":case"TSMethodSignature":case"TSIndexSignature":break;default:return!1}return X==null||(0,R.default)(J,X)}function Tj(J,X){if(!J)return!1;switch(J.type){case"TSAnyKeyword":case"TSBooleanKeyword":case"TSBigIntKeyword":case"TSIntrinsicKeyword":case"TSNeverKeyword":case"TSNullKeyword":case"TSNumberKeyword":case"TSObjectKeyword":case"TSStringKeyword":case"TSSymbolKeyword":case"TSUndefinedKeyword":case"TSUnknownKeyword":case"TSVoidKeyword":case"TSThisType":case"TSFunctionType":case"TSConstructorType":case"TSTypeReference":case"TSTypePredicate":case"TSTypeQuery":case"TSTypeLiteral":case"TSArrayType":case"TSTupleType":case"TSOptionalType":case"TSRestType":case"TSUnionType":case"TSIntersectionType":case"TSConditionalType":case"TSInferType":case"TSParenthesizedType":case"TSTypeOperator":case"TSIndexedAccessType":case"TSMappedType":case"TSTemplateLiteralType":case"TSLiteralType":case"TSExpressionWithTypeArguments":case"TSImportType":break;default:return!1}return X==null||(0,R.default)(J,X)}function Lj(J,X){if(!J)return!1;switch(J.type){case"TSAnyKeyword":case"TSBooleanKeyword":case"TSBigIntKeyword":case"TSIntrinsicKeyword":case"TSNeverKeyword":case"TSNullKeyword":case"TSNumberKeyword":case"TSObjectKeyword":case"TSStringKeyword":case"TSSymbolKeyword":case"TSUndefinedKeyword":case"TSUnknownKeyword":case"TSVoidKeyword":case"TSThisType":case"TSTemplateLiteralType":case"TSLiteralType":break;default:return!1}return X==null||(0,R.default)(J,X)}function kj(J,X){if((0,T9.default)("isNumberLiteral","isNumericLiteral"),!J)return!1;if(J.type!=="NumberLiteral")return!1;return X==null||(0,R.default)(J,X)}function bj(J,X){if((0,T9.default)("isRegexLiteral","isRegExpLiteral"),!J)return!1;if(J.type!=="RegexLiteral")return!1;return X==null||(0,R.default)(J,X)}function vj(J,X){if((0,T9.default)("isRestProperty","isRestElement"),!J)return!1;if(J.type!=="RestProperty")return!1;return X==null||(0,R.default)(J,X)}function Ej(J,X){if((0,T9.default)("isSpreadProperty","isSpreadElement"),!J)return!1;if(J.type!=="SpreadProperty")return!1;return X==null||(0,R.default)(J,X)}function _j(J,X){return(0,T9.default)("isModuleDeclaration","isImportOrExportDeclaration"),a4(J,X)}});var J6=I((n4)=>{Object.defineProperty(n4,"__esModule",{value:!0});n4.default=OI;var MJ=E1();function t4(J){return(0,MJ.isMemberExpression)(J)||(0,MJ.isMetaProperty)(J)}function OI(J,X,Z){if(!t4(J))return!1;let Q=Array.isArray(X)?X:X.split("."),Y=[],H;for(H=J;t4(H);H=(G=H.object)!=null?G:H.meta){var G;Y.push(H.property)}if(Y.push(H),Y.length<Q.length)return!1;if(!Z&&Y.length>Q.length)return!1;for(let z=0,W=Y.length-1;z<Q.length;z++,W--){let V=Y[W],U;if((0,MJ.isIdentifier)(V))U=V.name;else if((0,MJ.isStringLiteral)(V))U=V.value;else if((0,MJ.isThisExpression)(V))U="this";else if((0,MJ.isSuper)(V))U="super";else if((0,MJ.isPrivateName)(V))U="#"+V.id.name;else return!1;if(Q[z]!==U)return!1}return!0}});var X6=I((o4)=>{Object.defineProperty(o4,"__esModule",{value:!0});o4.default=DI;var CI=J6();function DI(J,X){let Z=J.split(".");return(Q)=>(0,CI.default)(Q,Z,X)}});var XZ=I((e4)=>{Object.defineProperty(e4,"__esModule",{value:!0});e4.default=void 0;var NI=X6(),wI=(0,NI.default)("React.Component"),ej1=e4.default=wI});var QZ=I((ZZ)=>{Object.defineProperty(ZZ,"__esModule",{value:!0});ZZ.default=SI;function SI(J){return!!J&&/^[a-z]/.test(J)}});var SX=I((HZ)=>{Object.defineProperty(HZ,"__esModule",{value:!0});HZ.default=TI;var YZ=$0();function TI(J,X){if(J===X)return!0;if(J==null)return!1;if(YZ.ALIAS_KEYS[X])return!1;let Z=YZ.FLIPPED_ALIAS_KEYS[X];if(Z!=null&&Z.includes(J))return!0;return!1}});var Z6=I((GZ)=>{Object.defineProperty(GZ,"__esModule",{value:!0});GZ.default=bI;var kI=$0();function bI(J,X){if(J===X)return!0;let Z=kI.PLACEHOLDERS_ALIAS[J];if(Z!=null&&Z.includes(X))return!0;return!1}});var aJ=I((zZ)=>{Object.defineProperty(zZ,"__esModule",{value:!0});zZ.default=hI;var EI=wX(),_I=SX(),gI=Z6(),fI=$0();function hI(J,X,Z){if(!X)return!1;if(!(0,_I.default)(X.type,J)){if(!Z&&X.type==="Placeholder"&&J in fI.FLIPPED_ALIAS_KEYS)return(0,gI.default)(X.expectedNode,J);return!1}if(Z===void 0)return!0;else return(0,EI.default)(X,Z)}});var RZ=I((BZ)=>{Object.defineProperty(BZ,"__esModule",{value:!0});BZ.isIdentifierChar=UZ;BZ.isIdentifierName=cI;BZ.isIdentifierStart=KZ;var Y6="\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C8A\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CD\uA7D0\uA7D1\uA7D3\uA7D5-\uA7DC\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC",WZ="\xB7\u0300-\u036F\u0387\u0483-\u0487\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u0669\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u06F0-\u06F9\u0711\u0730-\u074A\u07A6-\u07B0\u07C0-\u07C9\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u0897-\u089F\u08CA-\u08E1\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0966-\u096F\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u09E6-\u09EF\u09FE\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A66-\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0AE6-\u0AEF\u0AFA-\u0AFF\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B55-\u0B57\u0B62\u0B63\u0B66-\u0B6F\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0BE6-\u0BEF\u0C00-\u0C04\u0C3C\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C66-\u0C6F\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0CE6-\u0CEF\u0CF3\u0D00-\u0D03\u0D3B\u0D3C\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D66-\u0D6F\u0D81-\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0E50-\u0E59\u0EB1\u0EB4-\u0EBC\u0EC8-\u0ECE\u0ED0-\u0ED9\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1040-\u1049\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F-\u109D\u135D-\u135F\u1369-\u1371\u1712-\u1715\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u17E0-\u17E9\u180B-\u180D\u180F-\u1819\u18A9\u1920-\u192B\u1930-\u193B\u1946-\u194F\u19D0-\u19DA\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AB0-\u1ABD\u1ABF-\u1ACE\u1B00-\u1B04\u1B34-\u1B44\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BB0-\u1BB9\u1BE6-\u1BF3\u1C24-\u1C37\u1C40-\u1C49\u1C50-\u1C59\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF4\u1CF7-\u1CF9\u1DC0-\u1DFF\u200C\u200D\u203F\u2040\u2054\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\u30FB\uA620-\uA629\uA66F\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA82C\uA880\uA881\uA8B4-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F1\uA8FF-\uA909\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9D0-\uA9D9\uA9E5\uA9F0-\uA9F9\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA50-\uAA59\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uABF0-\uABF9\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFF10-\uFF19\uFF3F\uFF65",yI=new RegExp("["+Y6+"]"),uI=new RegExp("["+Y6+WZ+"]");Y6=WZ=null;var VZ=[0,11,2,25,2,18,2,1,2,14,3,13,35,122,70,52,268,28,4,48,48,31,14,29,6,37,11,29,3,35,5,7,2,4,43,157,19,35,5,35,5,39,9,51,13,10,2,14,2,6,2,1,2,10,2,14,2,6,2,1,4,51,13,310,10,21,11,7,25,5,2,41,2,8,70,5,3,0,2,43,2,1,4,0,3,22,11,22,10,30,66,18,2,1,11,21,11,25,71,55,7,1,65,0,16,3,2,2,2,28,43,28,4,28,36,7,2,27,28,53,11,21,11,18,14,17,111,72,56,50,14,50,14,35,39,27,10,22,251,41,7,1,17,2,60,28,11,0,9,21,43,17,47,20,28,22,13,52,58,1,3,0,14,44,33,24,27,35,30,0,3,0,9,34,4,0,13,47,15,3,22,0,2,0,36,17,2,24,20,1,64,6,2,0,2,3,2,14,2,9,8,46,39,7,3,1,3,21,2,6,2,1,2,4,4,0,19,0,13,4,31,9,2,0,3,0,2,37,2,0,26,0,2,0,45,52,19,3,21,2,31,47,21,1,2,0,185,46,42,3,37,47,21,0,60,42,14,0,72,26,38,6,186,43,117,63,32,7,3,0,3,7,2,1,2,23,16,0,2,0,95,7,3,38,17,0,2,0,29,0,11,39,8,0,22,0,12,45,20,0,19,72,200,32,32,8,2,36,18,0,50,29,113,6,2,1,2,37,22,0,26,5,2,1,2,31,15,0,328,18,16,0,2,12,2,33,125,0,80,921,103,110,18,195,2637,96,16,1071,18,5,26,3994,6,582,6842,29,1763,568,8,30,18,78,18,29,19,47,17,3,32,20,6,18,433,44,212,63,129,74,6,0,67,12,65,1,2,0,29,6135,9,1237,42,9,8936,3,2,6,2,1,2,290,16,0,30,2,3,0,15,3,9,395,2309,106,6,12,4,8,8,9,5991,84,2,70,2,1,3,0,3,1,3,3,2,11,2,0,2,6,2,64,2,3,3,7,2,6,2,27,2,3,2,4,2,0,4,6,2,339,3,24,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,7,1845,30,7,5,262,61,147,44,11,6,17,0,322,29,19,43,485,27,229,29,3,0,496,6,2,3,2,1,2,14,2,196,60,67,8,0,1205,3,2,26,2,1,2,0,3,0,2,9,2,3,2,0,2,0,7,0,5,0,2,0,2,0,2,2,2,1,2,0,3,0,2,0,2,0,2,0,2,0,2,1,2,0,3,3,2,6,2,3,2,3,2,0,2,9,2,16,6,2,2,4,2,16,4421,42719,33,4153,7,221,3,5761,15,7472,16,621,2467,541,1507,4938,6,4191],mI=[509,0,227,0,150,4,294,9,1368,2,2,1,6,3,41,2,5,0,166,1,574,3,9,9,7,9,32,4,318,1,80,3,71,10,50,3,123,2,54,14,32,10,3,1,11,3,46,10,8,0,46,9,7,2,37,13,2,9,6,1,45,0,13,2,49,13,9,3,2,11,83,11,7,0,3,0,158,11,6,9,7,3,56,1,2,6,3,1,3,2,10,0,11,1,3,6,4,4,68,8,2,0,3,0,2,3,2,4,2,0,15,1,83,17,10,9,5,0,82,19,13,9,214,6,3,8,28,1,83,16,16,9,82,12,9,9,7,19,58,14,5,9,243,14,166,9,71,5,2,1,3,3,2,0,2,1,13,9,120,6,3,6,4,0,29,9,41,6,2,3,9,0,10,10,47,15,343,9,54,7,2,7,17,9,57,21,2,13,123,5,4,0,2,1,2,6,2,0,9,9,49,4,2,1,2,4,9,9,330,3,10,1,2,0,49,6,4,4,14,10,5350,0,7,14,11465,27,2343,9,87,9,39,4,60,6,26,9,535,9,470,0,2,54,8,3,82,0,12,1,19628,1,4178,9,519,45,3,22,543,4,4,5,9,7,3,6,31,3,149,2,1418,49,513,54,5,49,9,0,15,0,23,4,2,14,1361,6,2,16,3,6,2,1,2,4,101,0,161,6,10,9,357,0,62,13,499,13,245,1,2,9,726,6,110,6,6,9,4759,9,787719,239];function Q6(J,X){let Z=65536;for(let Q=0,Y=X.length;Q<Y;Q+=2){if(Z+=X[Q],Z>J)return!1;if(Z+=X[Q+1],Z>=J)return!0}return!1}function KZ(J){if(J<65)return J===36;if(J<=90)return!0;if(J<97)return J===95;if(J<=122)return!0;if(J<=65535)return J>=170&&yI.test(String.fromCharCode(J));return Q6(J,VZ)}function UZ(J){if(J<48)return J===36;if(J<58)return!0;if(J<65)return!1;if(J<=90)return!0;if(J<97)return J===95;if(J<=122)return!0;if(J<=65535)return J>=170&&uI.test(String.fromCharCode(J));return Q6(J,VZ)||Q6(J,mI)}function cI(J){let X=!0;for(let Z=0;Z<J.length;Z++){let Q=J.charCodeAt(Z);if((Q&64512)===55296&&Z+1<J.length){let Y=J.charCodeAt(++Z);if((Y&64512)===56320)Q=65536+((Q&1023)<<10)+(Y&1023)}if(X){if(X=!1,!KZ(Q))return!1}else if(!UZ(Q))return!1}return!X}});var MZ=I((jZ)=>{Object.defineProperty(jZ,"__esModule",{value:!0});jZ.isKeyword=tI;jZ.isReservedWord=$Z;jZ.isStrictBindOnlyReservedWord=FZ;jZ.isStrictBindReservedWord=sI;jZ.isStrictReservedWord=qZ;var H6={keyword:["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"],strict:["implements","interface","let","package","private","protected","public","static","yield"],strictBind:["eval","arguments"]},rI=new Set(H6.keyword),dI=new Set(H6.strict),aI=new Set(H6.strictBind);function $Z(J,X){return X&&J==="await"||J==="enum"}function qZ(J,X){return $Z(J,X)||dI.has(J)}function FZ(J){return aI.has(J)}function sI(J,X){return qZ(J,X)||FZ(J)}function tI(J){return rI.has(J)}});var k9=I((L0)=>{Object.defineProperty(L0,"__esModule",{value:!0});Object.defineProperty(L0,"isIdentifierChar",{enumerable:!0,get:function(){return G6.isIdentifierChar}});Object.defineProperty(L0,"isIdentifierName",{enumerable:!0,get:function(){return G6.isIdentifierName}});Object.defineProperty(L0,"isIdentifierStart",{enumerable:!0,get:function(){return G6.isIdentifierStart}});Object.defineProperty(L0,"isKeyword",{enumerable:!0,get:function(){return L9.isKeyword}});Object.defineProperty(L0,"isReservedWord",{enumerable:!0,get:function(){return L9.isReservedWord}});Object.defineProperty(L0,"isStrictBindOnlyReservedWord",{enumerable:!0,get:function(){return L9.isStrictBindOnlyReservedWord}});Object.defineProperty(L0,"isStrictBindReservedWord",{enumerable:!0,get:function(){return L9.isStrictBindReservedWord}});Object.defineProperty(L0,"isStrictReservedWord",{enumerable:!0,get:function(){return L9.isStrictReservedWord}});var G6=RZ(),L9=MZ()});var sJ=I((OZ)=>{Object.defineProperty(OZ,"__esModule",{value:!0});OZ.default=ZN;var z6=k9();function ZN(J,X=!0){if(typeof J!=="string")return!1;if(X){if((0,z6.isKeyword)(J)||(0,z6.isStrictReservedWord)(J,!0))return!1}return(0,z6.isIdentifierName)(J)}});var NZ=I((IZ)=>{Object.defineProperty(IZ,"__esModule",{value:!0});IZ.readCodePoint=DZ;IZ.readInt=CZ;IZ.readStringContents=HN;var YN=function(X){return X>=48&&X<=57},AZ={decBinOct:new Set([46,66,69,79,95,98,101,111]),hex:new Set([46,88,95,120])},PX={bin:(J)=>J===48||J===49,oct:(J)=>J>=48&&J<=55,dec:(J)=>J>=48&&J<=57,hex:(J)=>J>=48&&J<=57||J>=65&&J<=70||J>=97&&J<=102};function HN(J,X,Z,Q,Y,H){let G=Z,z=Q,W=Y,V="",U=null,$=Z,{length:j}=X;for(;;){if(Z>=j){H.unterminated(G,z,W),V+=X.slice($,Z);break}let C=X.charCodeAt(Z);if(GN(J,C,X,Z)){V+=X.slice($,Z);break}if(C===92){V+=X.slice($,Z);let A=zN(X,Z,Q,Y,J==="template",H);if(A.ch===null&&!U)U={pos:Z,lineStart:Q,curLine:Y};else V+=A.ch;({pos:Z,lineStart:Q,curLine:Y}=A),$=Z}else if(C===8232||C===8233)++Z,++Y,Q=Z;else if(C===10||C===13)if(J==="template"){if(V+=X.slice($,Z)+`
17
+ `,++Z,C===13&&X.charCodeAt(Z)===10)++Z;++Y,$=Q=Z}else H.unterminated(G,z,W);else++Z}return{pos:Z,str:V,firstInvalidLoc:U,lineStart:Q,curLine:Y,containsInvalid:!!U}}function GN(J,X,Z,Q){if(J==="template")return X===96||X===36&&Z.charCodeAt(Q+1)===123;return X===(J==="double"?34:39)}function zN(J,X,Z,Q,Y,H){let G=!Y;X++;let z=(V)=>({pos:X,ch:V,lineStart:Z,curLine:Q}),W=J.charCodeAt(X++);switch(W){case 110:return z(`
18
+ `);case 114:return z("\r");case 120:{let V;return{code:V,pos:X}=W6(J,X,Z,Q,2,!1,G,H),z(V===null?null:String.fromCharCode(V))}case 117:{let V;return{code:V,pos:X}=DZ(J,X,Z,Q,G,H),z(V===null?null:String.fromCodePoint(V))}case 116:return z("\t");case 98:return z("\b");case 118:return z("\v");case 102:return z("\f");case 13:if(J.charCodeAt(X)===10)++X;case 10:Z=X,++Q;case 8232:case 8233:return z("");case 56:case 57:if(Y)return z(null);else H.strictNumericEscape(X-1,Z,Q);default:if(W>=48&&W<=55){let V=X-1,$=/^[0-7]+/.exec(J.slice(V,X+2))[0],j=parseInt($,8);if(j>255)$=$.slice(0,-1),j=parseInt($,8);X+=$.length-1;let C=J.charCodeAt(X);if($!=="0"||C===56||C===57)if(Y)return z(null);else H.strictNumericEscape(V,Z,Q);return z(String.fromCharCode(j))}return z(String.fromCharCode(W))}}function W6(J,X,Z,Q,Y,H,G,z){let W=X,V;if({n:V,pos:X}=CZ(J,X,Z,Q,16,Y,H,!1,z,!G),V===null)if(G)z.invalidEscapeSequence(W,Z,Q);else X=W-1;return{code:V,pos:X}}function CZ(J,X,Z,Q,Y,H,G,z,W,V){let U=X,$=Y===16?AZ.hex:AZ.decBinOct,j=Y===16?PX.hex:Y===10?PX.dec:Y===8?PX.oct:PX.bin,C=!1,A=0;for(let S=0,w=H==null?1/0:H;S<w;++S){let P=J.charCodeAt(X),b;if(P===95&&z!=="bail"){let t=J.charCodeAt(X-1),m=J.charCodeAt(X+1);if(!z){if(V)return{n:null,pos:X};W.numericSeparatorInEscapeSequence(X,Z,Q)}else if(Number.isNaN(m)||!j(m)||$.has(t)||$.has(m)){if(V)return{n:null,pos:X};W.unexpectedNumericSeparator(X,Z,Q)}++X;continue}if(P>=97)b=P-97+10;else if(P>=65)b=P-65+10;else if(YN(P))b=P-48;else b=1/0;if(b>=Y)if(b<=9&&V)return{n:null,pos:X};else if(b<=9&&W.invalidDigit(X,Z,Q,Y))b=0;else if(G)b=0,C=!0;else break;++X,A=A*Y+b}if(X===U||H!=null&&X-U!==H||C)return{n:null,pos:X};return{n:A,pos:X}}function DZ(J,X,Z,Q,Y,H){let G=J.charCodeAt(X),z;if(G===123){if(++X,{code:z,pos:X}=W6(J,X,Z,Q,J.indexOf("}",X)-X,!0,Y,H),++X,z!==null&&z>1114111)if(Y)H.invalidCodePoint(X,Z,Q);else return{code:null,pos:X}}else({code:z,pos:X}=W6(J,X,Z,Q,4,!1,Y,H));return{code:z,pos:X}}});var tJ=I((SZ)=>{Object.defineProperty(SZ,"__esModule",{value:!0});SZ.UPDATE_OPERATORS=SZ.UNARY_OPERATORS=SZ.STRING_UNARY_OPERATORS=SZ.STATEMENT_OR_BLOCK_KEYS=SZ.NUMBER_UNARY_OPERATORS=SZ.NUMBER_BINARY_OPERATORS=SZ.LOGICAL_OPERATORS=SZ.INHERIT_KEYS=SZ.FOR_INIT_KEYS=SZ.FLATTENABLE_KEYS=SZ.EQUALITY_BINARY_OPERATORS=SZ.COMPARISON_BINARY_OPERATORS=SZ.COMMENT_KEYS=SZ.BOOLEAN_UNARY_OPERATORS=SZ.BOOLEAN_NUMBER_BINARY_OPERATORS=SZ.BOOLEAN_BINARY_OPERATORS=SZ.BINARY_OPERATORS=SZ.ASSIGNMENT_OPERATORS=void 0;var KM1=SZ.STATEMENT_OR_BLOCK_KEYS=["consequent","body","alternate"],UM1=SZ.FLATTENABLE_KEYS=["body","expressions"],BM1=SZ.FOR_INIT_KEYS=["left","init"],RM1=SZ.COMMENT_KEYS=["leadingComments","trailingComments","innerComments"],UN=SZ.LOGICAL_OPERATORS=["||","&&","??"],$M1=SZ.UPDATE_OPERATORS=["++","--"],BN=SZ.BOOLEAN_NUMBER_BINARY_OPERATORS=[">","<",">=","<="],RN=SZ.EQUALITY_BINARY_OPERATORS=["==","===","!=","!=="],$N=SZ.COMPARISON_BINARY_OPERATORS=[...RN,"in","instanceof"],qN=SZ.BOOLEAN_BINARY_OPERATORS=[...$N,...BN],wZ=SZ.NUMBER_BINARY_OPERATORS=["-","/","%","*","**","&","|",">>",">>>","<<","^"],qM1=SZ.BINARY_OPERATORS=["+",...wZ,...qN,"|>"],FM1=SZ.ASSIGNMENT_OPERATORS=["=","+=",...wZ.map((J)=>J+"="),...UN.map((J)=>J+"=")],FN=SZ.BOOLEAN_UNARY_OPERATORS=["delete","!"],jN=SZ.NUMBER_UNARY_OPERATORS=["+","-","~"],MN=SZ.STRING_UNARY_OPERATORS=["typeof"],jM1=SZ.UNARY_OPERATORS=["void","throw",...FN,...jN,...MN],MM1=SZ.INHERIT_KEYS={optional:["typeAnnotation","typeParameters","returnType"],force:["start","loc","end"]};SZ.BLOCK_SCOPED_SYMBOL=Symbol.for("var used to be block scoped"),SZ.NOT_LOCAL_BINDING=Symbol.for("should not be considered a local binding")});var k0=I((_Z)=>{Object.defineProperty(_Z,"__esModule",{value:!0});_Z.allExpandedTypes=_Z.VISITOR_KEYS=_Z.NODE_PARENT_VALIDATIONS=_Z.NODE_FIELDS=_Z.FLIPPED_ALIAS_KEYS=_Z.DEPRECATED_KEYS=_Z.BUILDER_KEYS=_Z.ALIAS_KEYS=void 0;_Z.arrayOf=LZ;_Z.arrayOfType=kZ;_Z.assertEach=bZ;_Z.assertNodeOrValueType=aN;_Z.assertNodeType=LX;_Z.assertOneOf=rN;_Z.assertOptionalChainStart=tN;_Z.assertShape=sN;_Z.assertValueType=B6;_Z.chain=vZ;_Z.default=EZ;_Z.defineAliasedType=eN;_Z.validate=U6;_Z.validateArrayOfType=pN;_Z.validateOptional=lN;_Z.validateOptionalType=iN;_Z.validateType=cN;var TZ=aJ(),b9=kX(),fN=_Z.VISITOR_KEYS={},hN=_Z.ALIAS_KEYS={},V6=_Z.FLIPPED_ALIAS_KEYS={},xN=_Z.NODE_FIELDS={},yN=_Z.BUILDER_KEYS={},uN=_Z.DEPRECATED_KEYS={},mN=_Z.NODE_PARENT_VALIDATIONS={};function TX(J){if(Array.isArray(J))return"array";else if(J===null)return"null";else return typeof J}function U6(J){return{validate:J}}function cN(...J){return U6(LX(...J))}function lN(J){return{validate:J,optional:!0}}function iN(...J){return{validate:LX(...J),optional:!0}}function LZ(J){return vZ(B6("array"),bZ(J))}function kZ(...J){return LZ(LX(...J))}function pN(...J){return U6(kZ(...J))}function bZ(J){let X=process.env.BABEL_TYPES_8_BREAKING?b9.validateChild:()=>{};function Z(Q,Y,H){if(!Array.isArray(H))return;let G=0,z={toString(){return`${Y}[${G}]`}};for(;G<H.length;G++){let W=H[G];J(Q,z,W),X(Q,z,W)}}return Z.each=J,Z}function rN(...J){function X(Z,Q,Y){if(!J.includes(Y))throw TypeError(`Property ${Q} expected value to be one of ${JSON.stringify(J)} but got ${JSON.stringify(Y)}`)}return X.oneOf=J,X}var dN=_Z.allExpandedTypes=[];function LX(...J){let X=new Set;dN.push({types:J,set:X});function Z(Q,Y,H){let G=H==null?void 0:H.type;if(G!=null){if(X.has(G)){(0,b9.validateChild)(Q,Y,H);return}if(G==="Placeholder"){for(let z of J)if((0,TZ.default)(z,H)){(0,b9.validateChild)(Q,Y,H);return}}}throw TypeError(`Property ${Y} of ${Q.type} expected node to be of a type ${JSON.stringify(J)} but instead got ${JSON.stringify(G)}`)}return Z.oneOfNodeTypes=J,Z}function aN(...J){function X(Z,Q,Y){let H=TX(Y);for(let G of J)if(H===G||(0,TZ.default)(G,Y)){(0,b9.validateChild)(Z,Q,Y);return}throw TypeError(`Property ${Q} of ${Z.type} expected node to be of a type ${JSON.stringify(J)} but instead got ${JSON.stringify(Y==null?void 0:Y.type)}`)}return X.oneOfNodeOrValueTypes=J,X}function B6(J){function X(Z,Q,Y){if(TX(Y)===J)return;throw TypeError(`Property ${Q} expected type of ${J} but got ${TX(Y)}`)}return X.type=J,X}function sN(J){let X=Object.keys(J);function Z(Q,Y,H){let G=[];for(let z of X)try{(0,b9.validateField)(Q,z,H[z],J[z])}catch(W){if(W instanceof TypeError){G.push(W.message);continue}throw W}if(G.length)throw TypeError(`Property ${Y} of ${Q.type} expected to have the following:
19
+ ${G.join(`
20
+ `)}`)}return Z.shapeOf=J,Z}function tN(){function J(X){var Z;let Q=X;while(X){let{type:Y}=Q;if(Y==="OptionalCallExpression"){if(Q.optional)return;Q=Q.callee;continue}if(Y==="OptionalMemberExpression"){if(Q.optional)return;Q=Q.object;continue}break}throw TypeError(`Non-optional ${X.type} must chain from an optional OptionalMemberExpression or OptionalCallExpression. Found chain from ${(Z=Q)==null?void 0:Z.type}`)}return J}function vZ(...J){function X(...Z){for(let Q of J)Q(...Z)}if(X.chainOf=J,J.length>=2&&"type"in J[0]&&J[0].type==="array"&&!("each"in J[1]))throw Error('An assertValueType("array") validator can only be followed by an assertEach(...) validator.');return X}var nN=new Set(["aliases","builder","deprecatedAlias","fields","inherits","visitor","validate"]),oN=new Set(["default","optional","deprecated","validate"]),K6={};function eN(...J){return(X,Z={})=>{let Q=Z.aliases;if(!Q){var Y;if(Z.inherits)Q=(Y=K6[Z.inherits].aliases)==null?void 0:Y.slice();Q!=null||(Q=[]),Z.aliases=Q}let H=J.filter((G)=>!Q.includes(G));Q.unshift(...H),EZ(X,Z)}}function EZ(J,X={}){let Z=X.inherits&&K6[X.inherits]||{},Q=X.fields;if(!Q){if(Q={},Z.fields){let z=Object.getOwnPropertyNames(Z.fields);for(let W of z){let V=Z.fields[W],U=V.default;if(Array.isArray(U)?U.length>0:U&&typeof U==="object")throw Error("field defaults can only be primitives or empty arrays currently");Q[W]={default:Array.isArray(U)?[]:U,optional:V.optional,deprecated:V.deprecated,validate:V.validate}}}}let Y=X.visitor||Z.visitor||[],H=X.aliases||Z.aliases||[],G=X.builder||Z.builder||X.visitor||[];for(let z of Object.keys(X))if(!nN.has(z))throw Error(`Unknown type option "${z}" on ${J}`);if(X.deprecatedAlias)uN[X.deprecatedAlias]=J;for(let z of Y.concat(G))Q[z]=Q[z]||{};for(let z of Object.keys(Q)){let W=Q[z];if(W.default!==void 0&&!G.includes(z))W.optional=!0;if(W.default===void 0)W.default=null;else if(!W.validate&&W.default!=null)W.validate=B6(TX(W.default));for(let V of Object.keys(W))if(!oN.has(V))throw Error(`Unknown field key "${V}" on ${J}.${z}`)}if(fN[J]=X.visitor=Y,yN[J]=X.builder=G,xN[J]=X.fields=Q,hN[J]=X.aliases=H,H.forEach((z)=>{V6[z]=V6[z]||[],V6[z].push(J)}),X.validate)mN[J]=X.validate;K6[J]=X}});var v9=I((xZ)=>{Object.defineProperty(xZ,"__esModule",{value:!0});xZ.patternLikeCommon=xZ.importAttributes=xZ.functionTypeAnnotationCommon=xZ.functionDeclarationCommon=xZ.functionCommon=xZ.classMethodOrPropertyCommon=xZ.classMethodOrDeclareMethodCommon=void 0;var s1=aJ(),Nw=sJ(),fZ=k9(),ww=NZ(),nJ=tJ(),q=k0(),f=(0,q.defineAliasedType)("Standardized");f("ArrayExpression",{fields:{elements:{validate:(0,q.arrayOf)((0,q.assertNodeOrValueType)("null","Expression","SpreadElement")),default:!process.env.BABEL_TYPES_8_BREAKING?[]:void 0}},visitor:["elements"],aliases:["Expression"]});f("AssignmentExpression",{fields:{operator:{validate:!process.env.BABEL_TYPES_8_BREAKING?(0,q.assertValueType)("string"):Object.assign(function(){let J=(0,q.assertOneOf)(...nJ.ASSIGNMENT_OPERATORS),X=(0,q.assertOneOf)("=");return function(Z,Q,Y){((0,s1.default)("Pattern",Z.left)?X:J)(Z,Q,Y)}}(),{oneOf:nJ.ASSIGNMENT_OPERATORS})},left:{validate:!process.env.BABEL_TYPES_8_BREAKING?(0,q.assertNodeType)("LVal","OptionalMemberExpression"):(0,q.assertNodeType)("Identifier","MemberExpression","OptionalMemberExpression","ArrayPattern","ObjectPattern","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression")},right:{validate:(0,q.assertNodeType)("Expression")}},builder:["operator","left","right"],visitor:["left","right"],aliases:["Expression"]});f("BinaryExpression",{builder:["operator","left","right"],fields:{operator:{validate:(0,q.assertOneOf)(...nJ.BINARY_OPERATORS)},left:{validate:function(){let J=(0,q.assertNodeType)("Expression"),X=(0,q.assertNodeType)("Expression","PrivateName");return Object.assign(function(Q,Y,H){(Q.operator==="in"?X:J)(Q,Y,H)},{oneOfNodeTypes:["Expression","PrivateName"]})}()},right:{validate:(0,q.assertNodeType)("Expression")}},visitor:["left","right"],aliases:["Binary","Expression"]});f("InterpreterDirective",{builder:["value"],fields:{value:{validate:(0,q.assertValueType)("string")}}});f("Directive",{visitor:["value"],fields:{value:{validate:(0,q.assertNodeType)("DirectiveLiteral")}}});f("DirectiveLiteral",{builder:["value"],fields:{value:{validate:(0,q.assertValueType)("string")}}});f("BlockStatement",{builder:["body","directives"],visitor:["directives","body"],fields:{directives:{validate:(0,q.arrayOfType)("Directive"),default:[]},body:(0,q.validateArrayOfType)("Statement")},aliases:["Scopable","BlockParent","Block","Statement"]});f("BreakStatement",{visitor:["label"],fields:{label:{validate:(0,q.assertNodeType)("Identifier"),optional:!0}},aliases:["Statement","Terminatorless","CompletionStatement"]});f("CallExpression",{visitor:["callee","typeParameters","typeArguments","arguments"],builder:["callee","arguments"],aliases:["Expression"],fields:Object.assign({callee:{validate:(0,q.assertNodeType)("Expression","Super","V8IntrinsicIdentifier")},arguments:(0,q.validateArrayOfType)("Expression","SpreadElement","ArgumentPlaceholder"),typeArguments:{validate:(0,q.assertNodeType)("TypeParameterInstantiation"),optional:!0}},process.env.BABEL_TYPES_8_BREAKING?{}:{optional:{validate:(0,q.assertValueType)("boolean"),optional:!0},typeParameters:{validate:(0,q.assertNodeType)("TSTypeParameterInstantiation"),optional:!0}})});f("CatchClause",{visitor:["param","body"],fields:{param:{validate:(0,q.assertNodeType)("Identifier","ArrayPattern","ObjectPattern"),optional:!0},body:{validate:(0,q.assertNodeType)("BlockStatement")}},aliases:["Scopable","BlockParent"]});f("ConditionalExpression",{visitor:["test","consequent","alternate"],fields:{test:{validate:(0,q.assertNodeType)("Expression")},consequent:{validate:(0,q.assertNodeType)("Expression")},alternate:{validate:(0,q.assertNodeType)("Expression")}},aliases:["Expression","Conditional"]});f("ContinueStatement",{visitor:["label"],fields:{label:{validate:(0,q.assertNodeType)("Identifier"),optional:!0}},aliases:["Statement","Terminatorless","CompletionStatement"]});f("DebuggerStatement",{aliases:["Statement"]});f("DoWhileStatement",{builder:["test","body"],visitor:["body","test"],fields:{test:{validate:(0,q.assertNodeType)("Expression")},body:{validate:(0,q.assertNodeType)("Statement")}},aliases:["Statement","BlockParent","Loop","While","Scopable"]});f("EmptyStatement",{aliases:["Statement"]});f("ExpressionStatement",{visitor:["expression"],fields:{expression:{validate:(0,q.assertNodeType)("Expression")}},aliases:["Statement","ExpressionWrapper"]});f("File",{builder:["program","comments","tokens"],visitor:["program"],fields:{program:{validate:(0,q.assertNodeType)("Program")},comments:{validate:!process.env.BABEL_TYPES_8_BREAKING?Object.assign(()=>{},{each:{oneOfNodeTypes:["CommentBlock","CommentLine"]}}):(0,q.assertEach)((0,q.assertNodeType)("CommentBlock","CommentLine")),optional:!0},tokens:{validate:(0,q.assertEach)(Object.assign(()=>{},{type:"any"})),optional:!0}}});f("ForInStatement",{visitor:["left","right","body"],aliases:["Scopable","Statement","For","BlockParent","Loop","ForXStatement"],fields:{left:{validate:!process.env.BABEL_TYPES_8_BREAKING?(0,q.assertNodeType)("VariableDeclaration","LVal"):(0,q.assertNodeType)("VariableDeclaration","Identifier","MemberExpression","ArrayPattern","ObjectPattern","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression")},right:{validate:(0,q.assertNodeType)("Expression")},body:{validate:(0,q.assertNodeType)("Statement")}}});f("ForStatement",{visitor:["init","test","update","body"],aliases:["Scopable","Statement","For","BlockParent","Loop"],fields:{init:{validate:(0,q.assertNodeType)("VariableDeclaration","Expression"),optional:!0},test:{validate:(0,q.assertNodeType)("Expression"),optional:!0},update:{validate:(0,q.assertNodeType)("Expression"),optional:!0},body:{validate:(0,q.assertNodeType)("Statement")}}});var oJ=()=>({params:(0,q.validateArrayOfType)("FunctionParameter"),generator:{default:!1},async:{default:!1}});xZ.functionCommon=oJ;var OJ=()=>({returnType:{validate:(0,q.assertNodeType)("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},typeParameters:{validate:(0,q.assertNodeType)("TypeParameterDeclaration","TSTypeParameterDeclaration","Noop"),optional:!0}});xZ.functionTypeAnnotationCommon=OJ;var hZ=()=>Object.assign({},oJ(),{declare:{validate:(0,q.assertValueType)("boolean"),optional:!0},id:{validate:(0,q.assertNodeType)("Identifier"),optional:!0}});xZ.functionDeclarationCommon=hZ;f("FunctionDeclaration",{builder:["id","params","body","generator","async"],visitor:["id","typeParameters","params","predicate","returnType","body"],fields:Object.assign({},hZ(),OJ(),{body:{validate:(0,q.assertNodeType)("BlockStatement")},predicate:{validate:(0,q.assertNodeType)("DeclaredPredicate","InferredPredicate"),optional:!0}}),aliases:["Scopable","Function","BlockParent","FunctionParent","Statement","Pureish","Declaration"],validate:!process.env.BABEL_TYPES_8_BREAKING?void 0:function(){let J=(0,q.assertNodeType)("Identifier");return function(X,Z,Q){if(!(0,s1.default)("ExportDefaultDeclaration",X))J(Q,"id",Q.id)}}()});f("FunctionExpression",{inherits:"FunctionDeclaration",aliases:["Scopable","Function","BlockParent","FunctionParent","Expression","Pureish"],fields:Object.assign({},oJ(),OJ(),{id:{validate:(0,q.assertNodeType)("Identifier"),optional:!0},body:{validate:(0,q.assertNodeType)("BlockStatement")},predicate:{validate:(0,q.assertNodeType)("DeclaredPredicate","InferredPredicate"),optional:!0}})});var eJ=()=>({typeAnnotation:{validate:(0,q.assertNodeType)("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},optional:{validate:(0,q.assertValueType)("boolean"),optional:!0},decorators:{validate:(0,q.arrayOfType)("Decorator"),optional:!0}});xZ.patternLikeCommon=eJ;f("Identifier",{builder:["name"],visitor:["typeAnnotation","decorators"],aliases:["Expression","FunctionParameter","PatternLike","LVal","TSEntityName"],fields:Object.assign({},eJ(),{name:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,q.chain)((0,q.assertValueType)("string"),Object.assign(function(J,X,Z){if(!(0,Nw.default)(Z,!1))throw TypeError(`"${Z}" is not a valid identifier name`)},{type:"string"})):(0,q.assertValueType)("string")}}),validate:process.env.BABEL_TYPES_8_BREAKING?function(J,X,Z){let Q=/\.(\w+)$/.exec(X.toString());if(!Q)return;let[,Y]=Q,H={computed:!1};if(Y==="property"){if((0,s1.default)("MemberExpression",J,H))return;if((0,s1.default)("OptionalMemberExpression",J,H))return}else if(Y==="key"){if((0,s1.default)("Property",J,H))return;if((0,s1.default)("Method",J,H))return}else if(Y==="exported"){if((0,s1.default)("ExportSpecifier",J))return}else if(Y==="imported"){if((0,s1.default)("ImportSpecifier",J,{imported:Z}))return}else if(Y==="meta"){if((0,s1.default)("MetaProperty",J,{meta:Z}))return}if(((0,fZ.isKeyword)(Z.name)||(0,fZ.isReservedWord)(Z.name,!1))&&Z.name!=="this")throw TypeError(`"${Z.name}" is not a valid identifier`)}:void 0});f("IfStatement",{visitor:["test","consequent","alternate"],aliases:["Statement","Conditional"],fields:{test:{validate:(0,q.assertNodeType)("Expression")},consequent:{validate:(0,q.assertNodeType)("Statement")},alternate:{optional:!0,validate:(0,q.assertNodeType)("Statement")}}});f("LabeledStatement",{visitor:["label","body"],aliases:["Statement"],fields:{label:{validate:(0,q.assertNodeType)("Identifier")},body:{validate:(0,q.assertNodeType)("Statement")}}});f("StringLiteral",{builder:["value"],fields:{value:{validate:(0,q.assertValueType)("string")}},aliases:["Expression","Pureish","Literal","Immutable"]});f("NumericLiteral",{builder:["value"],deprecatedAlias:"NumberLiteral",fields:{value:{validate:(0,q.chain)((0,q.assertValueType)("number"),Object.assign(function(J,X,Z){if(1/Z<0||!Number.isFinite(Z)){let Q=Error(`NumericLiterals must be non-negative finite numbers. You can use t.valueToNode(${Z}) instead.`)}},{type:"number"}))}},aliases:["Expression","Pureish","Literal","Immutable"]});f("NullLiteral",{aliases:["Expression","Pureish","Literal","Immutable"]});f("BooleanLiteral",{builder:["value"],fields:{value:{validate:(0,q.assertValueType)("boolean")}},aliases:["Expression","Pureish","Literal","Immutable"]});f("RegExpLiteral",{builder:["pattern","flags"],deprecatedAlias:"RegexLiteral",aliases:["Expression","Pureish","Literal"],fields:{pattern:{validate:(0,q.assertValueType)("string")},flags:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,q.chain)((0,q.assertValueType)("string"),Object.assign(function(J,X,Z){let Q=/[^dgimsuvy]/.exec(Z);if(Q)throw TypeError(`"${Q[0]}" is not a valid RegExp flag`)},{type:"string"})):(0,q.assertValueType)("string"),default:""}}});f("LogicalExpression",{builder:["operator","left","right"],visitor:["left","right"],aliases:["Binary","Expression"],fields:{operator:{validate:(0,q.assertOneOf)(...nJ.LOGICAL_OPERATORS)},left:{validate:(0,q.assertNodeType)("Expression")},right:{validate:(0,q.assertNodeType)("Expression")}}});f("MemberExpression",{builder:["object","property","computed",...!process.env.BABEL_TYPES_8_BREAKING?["optional"]:[]],visitor:["object","property"],aliases:["Expression","LVal","PatternLike"],fields:Object.assign({object:{validate:(0,q.assertNodeType)("Expression","Super")},property:{validate:function(){let J=(0,q.assertNodeType)("Identifier","PrivateName"),X=(0,q.assertNodeType)("Expression"),Z=function(Q,Y,H){(Q.computed?X:J)(Q,Y,H)};return Z.oneOfNodeTypes=["Expression","Identifier","PrivateName"],Z}()},computed:{default:!1}},!process.env.BABEL_TYPES_8_BREAKING?{optional:{validate:(0,q.assertValueType)("boolean"),optional:!0}}:{})});f("NewExpression",{inherits:"CallExpression"});f("Program",{visitor:["directives","body"],builder:["body","directives","sourceType","interpreter"],fields:{sourceType:{validate:(0,q.assertOneOf)("script","module"),default:"script"},interpreter:{validate:(0,q.assertNodeType)("InterpreterDirective"),default:null,optional:!0},directives:{validate:(0,q.arrayOfType)("Directive"),default:[]},body:(0,q.validateArrayOfType)("Statement")},aliases:["Scopable","BlockParent","Block"]});f("ObjectExpression",{visitor:["properties"],aliases:["Expression"],fields:{properties:(0,q.validateArrayOfType)("ObjectMethod","ObjectProperty","SpreadElement")}});f("ObjectMethod",{builder:["kind","key","params","body","computed","generator","async"],visitor:["decorators","key","typeParameters","params","returnType","body"],fields:Object.assign({},oJ(),OJ(),{kind:Object.assign({validate:(0,q.assertOneOf)("method","get","set")},!process.env.BABEL_TYPES_8_BREAKING?{default:"method"}:{}),computed:{default:!1},key:{validate:function(){let J=(0,q.assertNodeType)("Identifier","StringLiteral","NumericLiteral","BigIntLiteral"),X=(0,q.assertNodeType)("Expression"),Z=function(Q,Y,H){(Q.computed?X:J)(Q,Y,H)};return Z.oneOfNodeTypes=["Expression","Identifier","StringLiteral","NumericLiteral","BigIntLiteral"],Z}()},decorators:{validate:(0,q.arrayOfType)("Decorator"),optional:!0},body:{validate:(0,q.assertNodeType)("BlockStatement")}}),aliases:["UserWhitespacable","Function","Scopable","BlockParent","FunctionParent","Method","ObjectMember"]});f("ObjectProperty",{builder:["key","value","computed","shorthand",...!process.env.BABEL_TYPES_8_BREAKING?["decorators"]:[]],fields:{computed:{default:!1},key:{validate:function(){let J=(0,q.assertNodeType)("Identifier","StringLiteral","NumericLiteral","BigIntLiteral","DecimalLiteral","PrivateName"),X=(0,q.assertNodeType)("Expression");return Object.assign(function(Q,Y,H){(Q.computed?X:J)(Q,Y,H)},{oneOfNodeTypes:["Expression","Identifier","StringLiteral","NumericLiteral","BigIntLiteral","DecimalLiteral","PrivateName"]})}()},value:{validate:(0,q.assertNodeType)("Expression","PatternLike")},shorthand:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,q.chain)((0,q.assertValueType)("boolean"),Object.assign(function(J,X,Z){if(!Z)return;if(J.computed)throw TypeError("Property shorthand of ObjectProperty cannot be true if computed is true");if(!(0,s1.default)("Identifier",J.key))throw TypeError("Property shorthand of ObjectProperty cannot be true if key is not an Identifier")},{type:"boolean"})):(0,q.assertValueType)("boolean"),default:!1},decorators:{validate:(0,q.arrayOfType)("Decorator"),optional:!0}},visitor:["decorators","key","value"],aliases:["UserWhitespacable","Property","ObjectMember"],validate:!process.env.BABEL_TYPES_8_BREAKING?void 0:function(){let J=(0,q.assertNodeType)("Identifier","Pattern","TSAsExpression","TSSatisfiesExpression","TSNonNullExpression","TSTypeAssertion"),X=(0,q.assertNodeType)("Expression");return function(Z,Q,Y){((0,s1.default)("ObjectPattern",Z)?J:X)(Y,"value",Y.value)}}()});f("RestElement",{visitor:["argument","typeAnnotation"],builder:["argument"],aliases:["FunctionParameter","PatternLike","LVal"],deprecatedAlias:"RestProperty",fields:Object.assign({},eJ(),{argument:{validate:!process.env.BABEL_TYPES_8_BREAKING?(0,q.assertNodeType)("Identifier","ArrayPattern","ObjectPattern","MemberExpression","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression","RestElement","AssignmentPattern"):(0,q.assertNodeType)("Identifier","ArrayPattern","ObjectPattern","MemberExpression","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression")}}),validate:process.env.BABEL_TYPES_8_BREAKING?function(J,X){let Z=/(\w+)\[(\d+)\]/.exec(X.toString());if(!Z)throw Error("Internal Babel error: malformed key.");let[,Q,Y]=Z;if(J[Q].length>+Y+1)throw TypeError(`RestElement must be last element of ${Q}`)}:void 0});f("ReturnStatement",{visitor:["argument"],aliases:["Statement","Terminatorless","CompletionStatement"],fields:{argument:{validate:(0,q.assertNodeType)("Expression"),optional:!0}}});f("SequenceExpression",{visitor:["expressions"],fields:{expressions:(0,q.validateArrayOfType)("Expression")},aliases:["Expression"]});f("ParenthesizedExpression",{visitor:["expression"],aliases:["Expression","ExpressionWrapper"],fields:{expression:{validate:(0,q.assertNodeType)("Expression")}}});f("SwitchCase",{visitor:["test","consequent"],fields:{test:{validate:(0,q.assertNodeType)("Expression"),optional:!0},consequent:(0,q.validateArrayOfType)("Statement")}});f("SwitchStatement",{visitor:["discriminant","cases"],aliases:["Statement","BlockParent","Scopable"],fields:{discriminant:{validate:(0,q.assertNodeType)("Expression")},cases:(0,q.validateArrayOfType)("SwitchCase")}});f("ThisExpression",{aliases:["Expression"]});f("ThrowStatement",{visitor:["argument"],aliases:["Statement","Terminatorless","CompletionStatement"],fields:{argument:{validate:(0,q.assertNodeType)("Expression")}}});f("TryStatement",{visitor:["block","handler","finalizer"],aliases:["Statement"],fields:{block:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,q.chain)((0,q.assertNodeType)("BlockStatement"),Object.assign(function(J){if(!J.handler&&!J.finalizer)throw TypeError("TryStatement expects either a handler or finalizer, or both")},{oneOfNodeTypes:["BlockStatement"]})):(0,q.assertNodeType)("BlockStatement")},handler:{optional:!0,validate:(0,q.assertNodeType)("CatchClause")},finalizer:{optional:!0,validate:(0,q.assertNodeType)("BlockStatement")}}});f("UnaryExpression",{builder:["operator","argument","prefix"],fields:{prefix:{default:!0},argument:{validate:(0,q.assertNodeType)("Expression")},operator:{validate:(0,q.assertOneOf)(...nJ.UNARY_OPERATORS)}},visitor:["argument"],aliases:["UnaryLike","Expression"]});f("UpdateExpression",{builder:["operator","argument","prefix"],fields:{prefix:{default:!1},argument:{validate:!process.env.BABEL_TYPES_8_BREAKING?(0,q.assertNodeType)("Expression"):(0,q.assertNodeType)("Identifier","MemberExpression")},operator:{validate:(0,q.assertOneOf)(...nJ.UPDATE_OPERATORS)}},visitor:["argument"],aliases:["Expression"]});f("VariableDeclaration",{builder:["kind","declarations"],visitor:["declarations"],aliases:["Statement","Declaration"],fields:{declare:{validate:(0,q.assertValueType)("boolean"),optional:!0},kind:{validate:(0,q.assertOneOf)("var","let","const","using","await using")},declarations:(0,q.validateArrayOfType)("VariableDeclarator")},validate:process.env.BABEL_TYPES_8_BREAKING?(()=>{let J=(0,q.assertNodeType)("Identifier","Placeholder"),X=(0,q.assertNodeType)("Identifier","ArrayPattern","ObjectPattern","Placeholder"),Z=(0,q.assertNodeType)("Identifier","VoidPattern","Placeholder");return function(Q,Y,H){let{kind:G,declarations:z}=H,W=(0,s1.default)("ForXStatement",Q,{left:H});if(W){if(z.length!==1)throw TypeError(`Exactly one VariableDeclarator is required in the VariableDeclaration of a ${Q.type}`)}for(let V of z)if(G==="const"||G==="let"||G==="var")if(!W&&!V.init)J(V,"id",V.id);else X(V,"id",V.id);else Z(V,"id",V.id)}})():void 0});f("VariableDeclarator",{visitor:["id","init"],fields:{id:{validate:!process.env.BABEL_TYPES_8_BREAKING?(0,q.assertNodeType)("LVal","VoidPattern"):(0,q.assertNodeType)("Identifier","ArrayPattern","ObjectPattern","VoidPattern")},definite:{optional:!0,validate:(0,q.assertValueType)("boolean")},init:{optional:!0,validate:(0,q.assertNodeType)("Expression")}}});f("WhileStatement",{visitor:["test","body"],aliases:["Statement","BlockParent","Loop","While","Scopable"],fields:{test:{validate:(0,q.assertNodeType)("Expression")},body:{validate:(0,q.assertNodeType)("Statement")}}});f("WithStatement",{visitor:["object","body"],aliases:["Statement"],fields:{object:{validate:(0,q.assertNodeType)("Expression")},body:{validate:(0,q.assertNodeType)("Statement")}}});f("AssignmentPattern",{visitor:["left","right","decorators"],builder:["left","right"],aliases:["FunctionParameter","Pattern","PatternLike","LVal"],fields:Object.assign({},eJ(),{left:{validate:(0,q.assertNodeType)("Identifier","ObjectPattern","ArrayPattern","MemberExpression","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression")},right:{validate:(0,q.assertNodeType)("Expression")},decorators:{validate:(0,q.arrayOfType)("Decorator"),optional:!0}})});f("ArrayPattern",{visitor:["elements","typeAnnotation"],builder:["elements"],aliases:["FunctionParameter","Pattern","PatternLike","LVal"],fields:Object.assign({},eJ(),{elements:{validate:(0,q.chain)((0,q.assertValueType)("array"),(0,q.assertEach)((0,q.assertNodeOrValueType)("null","PatternLike")))}})});f("ArrowFunctionExpression",{builder:["params","body","async"],visitor:["typeParameters","params","predicate","returnType","body"],aliases:["Scopable","Function","BlockParent","FunctionParent","Expression","Pureish"],fields:Object.assign({},oJ(),OJ(),{expression:{validate:(0,q.assertValueType)("boolean")},body:{validate:(0,q.assertNodeType)("BlockStatement","Expression")},predicate:{validate:(0,q.assertNodeType)("DeclaredPredicate","InferredPredicate"),optional:!0}})});f("ClassBody",{visitor:["body"],fields:{body:(0,q.validateArrayOfType)("ClassMethod","ClassPrivateMethod","ClassProperty","ClassPrivateProperty","ClassAccessorProperty","TSDeclareMethod","TSIndexSignature","StaticBlock")}});f("ClassExpression",{builder:["id","superClass","body","decorators"],visitor:["decorators","id","typeParameters","superClass","superTypeParameters","mixins","implements","body"],aliases:["Scopable","Class","Expression"],fields:{id:{validate:(0,q.assertNodeType)("Identifier"),optional:!0},typeParameters:{validate:(0,q.assertNodeType)("TypeParameterDeclaration","TSTypeParameterDeclaration","Noop"),optional:!0},body:{validate:(0,q.assertNodeType)("ClassBody")},superClass:{optional:!0,validate:(0,q.assertNodeType)("Expression")},["superTypeParameters"]:{validate:(0,q.assertNodeType)("TypeParameterInstantiation","TSTypeParameterInstantiation"),optional:!0},implements:{validate:(0,q.arrayOfType)("TSExpressionWithTypeArguments","ClassImplements"),optional:!0},decorators:{validate:(0,q.arrayOfType)("Decorator"),optional:!0},mixins:{validate:(0,q.assertNodeType)("InterfaceExtends"),optional:!0}}});f("ClassDeclaration",{inherits:"ClassExpression",aliases:["Scopable","Class","Statement","Declaration"],fields:{id:{validate:(0,q.assertNodeType)("Identifier"),optional:!0},typeParameters:{validate:(0,q.assertNodeType)("TypeParameterDeclaration","TSTypeParameterDeclaration","Noop"),optional:!0},body:{validate:(0,q.assertNodeType)("ClassBody")},superClass:{optional:!0,validate:(0,q.assertNodeType)("Expression")},["superTypeParameters"]:{validate:(0,q.assertNodeType)("TypeParameterInstantiation","TSTypeParameterInstantiation"),optional:!0},implements:{validate:(0,q.arrayOfType)("TSExpressionWithTypeArguments","ClassImplements"),optional:!0},decorators:{validate:(0,q.arrayOfType)("Decorator"),optional:!0},mixins:{validate:(0,q.assertNodeType)("InterfaceExtends"),optional:!0},declare:{validate:(0,q.assertValueType)("boolean"),optional:!0},abstract:{validate:(0,q.assertValueType)("boolean"),optional:!0}},validate:!process.env.BABEL_TYPES_8_BREAKING?void 0:function(){let J=(0,q.assertNodeType)("Identifier");return function(X,Z,Q){if(!(0,s1.default)("ExportDefaultDeclaration",X))J(Q,"id",Q.id)}}()});var R6=xZ.importAttributes={attributes:{optional:!0,validate:(0,q.arrayOfType)("ImportAttribute")},assertions:{deprecated:!0,optional:!0,validate:(0,q.arrayOfType)("ImportAttribute")}};f("ExportAllDeclaration",{builder:["source"],visitor:["source","attributes","assertions"],aliases:["Statement","Declaration","ImportOrExportDeclaration","ExportDeclaration"],fields:Object.assign({source:{validate:(0,q.assertNodeType)("StringLiteral")},exportKind:(0,q.validateOptional)((0,q.assertOneOf)("type","value"))},R6)});f("ExportDefaultDeclaration",{visitor:["declaration"],aliases:["Statement","Declaration","ImportOrExportDeclaration","ExportDeclaration"],fields:{declaration:(0,q.validateType)("TSDeclareFunction","FunctionDeclaration","ClassDeclaration","Expression"),exportKind:(0,q.validateOptional)((0,q.assertOneOf)("value"))}});f("ExportNamedDeclaration",{builder:["declaration","specifiers","source"],visitor:["declaration","specifiers","source","attributes","assertions"],aliases:["Statement","Declaration","ImportOrExportDeclaration","ExportDeclaration"],fields:Object.assign({declaration:{optional:!0,validate:process.env.BABEL_TYPES_8_BREAKING?(0,q.chain)((0,q.assertNodeType)("Declaration"),Object.assign(function(J,X,Z){if(Z&&J.specifiers.length)throw TypeError("Only declaration or specifiers is allowed on ExportNamedDeclaration");if(Z&&J.source)throw TypeError("Cannot export a declaration from a source")},{oneOfNodeTypes:["Declaration"]})):(0,q.assertNodeType)("Declaration")}},R6,{specifiers:{default:[],validate:(0,q.arrayOf)(function(){let J=(0,q.assertNodeType)("ExportSpecifier","ExportDefaultSpecifier","ExportNamespaceSpecifier"),X=(0,q.assertNodeType)("ExportSpecifier");if(!process.env.BABEL_TYPES_8_BREAKING)return J;return Object.assign(function(Z,Q,Y){(Z.source?J:X)(Z,Q,Y)},{oneOfNodeTypes:["ExportSpecifier","ExportDefaultSpecifier","ExportNamespaceSpecifier"]})}())},source:{validate:(0,q.assertNodeType)("StringLiteral"),optional:!0},exportKind:(0,q.validateOptional)((0,q.assertOneOf)("type","value"))})});f("ExportSpecifier",{visitor:["local","exported"],aliases:["ModuleSpecifier"],fields:{local:{validate:(0,q.assertNodeType)("Identifier")},exported:{validate:(0,q.assertNodeType)("Identifier","StringLiteral")},exportKind:{validate:(0,q.assertOneOf)("type","value"),optional:!0}}});f("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,q.assertNodeType)("VariableDeclaration","LVal");let J=(0,q.assertNodeType)("VariableDeclaration"),X=(0,q.assertNodeType)("Identifier","MemberExpression","ArrayPattern","ObjectPattern","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression");return Object.assign(function(Z,Q,Y){if((0,s1.default)("VariableDeclaration",Y))J(Z,Q,Y);else X(Z,Q,Y)},{oneOfNodeTypes:["VariableDeclaration","Identifier","MemberExpression","ArrayPattern","ObjectPattern","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression"]})}()},right:{validate:(0,q.assertNodeType)("Expression")},body:{validate:(0,q.assertNodeType)("Statement")},await:{default:!1}}});f("ImportDeclaration",{builder:["specifiers","source"],visitor:["specifiers","source","attributes","assertions"],aliases:["Statement","Declaration","ImportOrExportDeclaration"],fields:Object.assign({},R6,{module:{optional:!0,validate:(0,q.assertValueType)("boolean")},phase:{default:null,validate:(0,q.assertOneOf)("source","defer")},specifiers:(0,q.validateArrayOfType)("ImportSpecifier","ImportDefaultSpecifier","ImportNamespaceSpecifier"),source:{validate:(0,q.assertNodeType)("StringLiteral")},importKind:{validate:(0,q.assertOneOf)("type","typeof","value"),optional:!0}})});f("ImportDefaultSpecifier",{visitor:["local"],aliases:["ModuleSpecifier"],fields:{local:{validate:(0,q.assertNodeType)("Identifier")}}});f("ImportNamespaceSpecifier",{visitor:["local"],aliases:["ModuleSpecifier"],fields:{local:{validate:(0,q.assertNodeType)("Identifier")}}});f("ImportSpecifier",{visitor:["imported","local"],builder:["local","imported"],aliases:["ModuleSpecifier"],fields:{local:{validate:(0,q.assertNodeType)("Identifier")},imported:{validate:(0,q.assertNodeType)("Identifier","StringLiteral")},importKind:{validate:(0,q.assertOneOf)("type","typeof","value"),optional:!0}}});f("ImportExpression",{visitor:["source","options"],aliases:["Expression"],fields:{phase:{default:null,validate:(0,q.assertOneOf)("source","defer")},source:{validate:(0,q.assertNodeType)("Expression")},options:{validate:(0,q.assertNodeType)("Expression"),optional:!0}}});f("MetaProperty",{visitor:["meta","property"],aliases:["Expression"],fields:{meta:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,q.chain)((0,q.assertNodeType)("Identifier"),Object.assign(function(J,X,Z){let Q;switch(Z.name){case"function":Q="sent";break;case"new":Q="target";break;case"import":Q="meta";break}if(!(0,s1.default)("Identifier",J.property,{name:Q}))throw TypeError("Unrecognised MetaProperty")},{oneOfNodeTypes:["Identifier"]})):(0,q.assertNodeType)("Identifier")},property:{validate:(0,q.assertNodeType)("Identifier")}}});var bX=()=>({abstract:{validate:(0,q.assertValueType)("boolean"),optional:!0},accessibility:{validate:(0,q.assertOneOf)("public","private","protected"),optional:!0},static:{default:!1},override:{default:!1},computed:{default:!1},optional:{validate:(0,q.assertValueType)("boolean"),optional:!0},key:{validate:(0,q.chain)(function(){let J=(0,q.assertNodeType)("Identifier","StringLiteral","NumericLiteral","BigIntLiteral"),X=(0,q.assertNodeType)("Expression");return function(Z,Q,Y){(Z.computed?X:J)(Z,Q,Y)}}(),(0,q.assertNodeType)("Identifier","StringLiteral","NumericLiteral","BigIntLiteral","Expression"))}});xZ.classMethodOrPropertyCommon=bX;var $6=()=>Object.assign({},oJ(),bX(),{params:(0,q.validateArrayOfType)("FunctionParameter","TSParameterProperty"),kind:{validate:(0,q.assertOneOf)("get","set","method","constructor"),default:"method"},access:{validate:(0,q.chain)((0,q.assertValueType)("string"),(0,q.assertOneOf)("public","private","protected")),optional:!0},decorators:{validate:(0,q.arrayOfType)("Decorator"),optional:!0}});xZ.classMethodOrDeclareMethodCommon=$6;f("ClassMethod",{aliases:["Function","Scopable","BlockParent","FunctionParent","Method"],builder:["kind","key","params","body","computed","static","generator","async"],visitor:["decorators","key","typeParameters","params","returnType","body"],fields:Object.assign({},$6(),OJ(),{body:{validate:(0,q.assertNodeType)("BlockStatement")}})});f("ObjectPattern",{visitor:["decorators","properties","typeAnnotation"],builder:["properties"],aliases:["FunctionParameter","Pattern","PatternLike","LVal"],fields:Object.assign({},eJ(),{properties:(0,q.validateArrayOfType)("RestElement","ObjectProperty")})});f("SpreadElement",{visitor:["argument"],aliases:["UnaryLike"],deprecatedAlias:"SpreadProperty",fields:{argument:{validate:(0,q.assertNodeType)("Expression")}}});f("Super",{aliases:["Expression"]});f("TaggedTemplateExpression",{visitor:["tag","typeParameters","quasi"],builder:["tag","quasi"],aliases:["Expression"],fields:{tag:{validate:(0,q.assertNodeType)("Expression")},quasi:{validate:(0,q.assertNodeType)("TemplateLiteral")},["typeParameters"]:{validate:(0,q.assertNodeType)("TypeParameterInstantiation","TSTypeParameterInstantiation"),optional:!0}}});f("TemplateElement",{builder:["value","tail"],fields:{value:{validate:(0,q.chain)((0,q.assertShape)({raw:{validate:(0,q.assertValueType)("string")},cooked:{validate:(0,q.assertValueType)("string"),optional:!0}}),function(X){let Z=X.value.raw,Q=!1,Y=()=>{throw Error("Internal @babel/types error.")},{str:H,firstInvalidLoc:G}=(0,ww.readStringContents)("template",Z,0,0,0,{unterminated(){Q=!0},strictNumericEscape:Y,invalidEscapeSequence:Y,numericSeparatorInEscapeSequence:Y,unexpectedNumericSeparator:Y,invalidDigit:Y,invalidCodePoint:Y});if(!Q)throw Error("Invalid raw");X.value.cooked=G?null:H})},tail:{default:!1}}});f("TemplateLiteral",{visitor:["quasis","expressions"],aliases:["Expression","Literal"],fields:{quasis:(0,q.validateArrayOfType)("TemplateElement"),expressions:{validate:(0,q.chain)((0,q.assertValueType)("array"),(0,q.assertEach)((0,q.assertNodeType)("Expression","TSType")),function(J,X,Z){if(J.quasis.length!==Z.length+1)throw TypeError(`Number of ${J.type} quasis should be exactly one more than the number of expressions.
21
+ Expected ${Z.length+1} quasis but got ${J.quasis.length}`)})}}});f("YieldExpression",{builder:["argument","delegate"],visitor:["argument"],aliases:["Expression","Terminatorless"],fields:{delegate:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,q.chain)((0,q.assertValueType)("boolean"),Object.assign(function(J,X,Z){if(Z&&!J.argument)throw TypeError("Property delegate of YieldExpression cannot be true if there is no argument")},{type:"boolean"})):(0,q.assertValueType)("boolean"),default:!1},argument:{optional:!0,validate:(0,q.assertNodeType)("Expression")}}});f("AwaitExpression",{builder:["argument"],visitor:["argument"],aliases:["Expression","Terminatorless"],fields:{argument:{validate:(0,q.assertNodeType)("Expression")}}});f("Import",{aliases:["Expression"]});f("BigIntLiteral",{builder:["value"],fields:{value:{validate:(0,q.assertValueType)("string")}},aliases:["Expression","Pureish","Literal","Immutable"]});f("ExportNamespaceSpecifier",{visitor:["exported"],aliases:["ModuleSpecifier"],fields:{exported:{validate:(0,q.assertNodeType)("Identifier")}}});f("OptionalMemberExpression",{builder:["object","property","computed","optional"],visitor:["object","property"],aliases:["Expression"],fields:{object:{validate:(0,q.assertNodeType)("Expression")},property:{validate:function(){let J=(0,q.assertNodeType)("Identifier"),X=(0,q.assertNodeType)("Expression");return Object.assign(function(Q,Y,H){(Q.computed?X:J)(Q,Y,H)},{oneOfNodeTypes:["Expression","Identifier"]})}()},computed:{default:!1},optional:{validate:!process.env.BABEL_TYPES_8_BREAKING?(0,q.assertValueType)("boolean"):(0,q.chain)((0,q.assertValueType)("boolean"),(0,q.assertOptionalChainStart)())}}});f("OptionalCallExpression",{visitor:["callee","typeParameters","typeArguments","arguments"],builder:["callee","arguments","optional"],aliases:["Expression"],fields:Object.assign({callee:{validate:(0,q.assertNodeType)("Expression")},arguments:(0,q.validateArrayOfType)("Expression","SpreadElement","ArgumentPlaceholder"),optional:{validate:!process.env.BABEL_TYPES_8_BREAKING?(0,q.assertValueType)("boolean"):(0,q.chain)((0,q.assertValueType)("boolean"),(0,q.assertOptionalChainStart)())},typeArguments:{validate:(0,q.assertNodeType)("TypeParameterInstantiation"),optional:!0}},{typeParameters:{validate:(0,q.assertNodeType)("TSTypeParameterInstantiation"),optional:!0}})});f("ClassProperty",{visitor:["decorators","variance","key","typeAnnotation","value"],builder:["key","value","typeAnnotation","decorators","computed","static"],aliases:["Property"],fields:Object.assign({},bX(),{value:{validate:(0,q.assertNodeType)("Expression"),optional:!0},definite:{validate:(0,q.assertValueType)("boolean"),optional:!0},typeAnnotation:{validate:(0,q.assertNodeType)("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},decorators:{validate:(0,q.arrayOfType)("Decorator"),optional:!0},readonly:{validate:(0,q.assertValueType)("boolean"),optional:!0},declare:{validate:(0,q.assertValueType)("boolean"),optional:!0},variance:{validate:(0,q.assertNodeType)("Variance"),optional:!0}})});f("ClassAccessorProperty",{visitor:["decorators","key","typeAnnotation","value"],builder:["key","value","typeAnnotation","decorators","computed","static"],aliases:["Property","Accessor"],fields:Object.assign({},bX(),{key:{validate:(0,q.chain)(function(){let J=(0,q.assertNodeType)("Identifier","StringLiteral","NumericLiteral","BigIntLiteral","PrivateName"),X=(0,q.assertNodeType)("Expression");return function(Z,Q,Y){(Z.computed?X:J)(Z,Q,Y)}}(),(0,q.assertNodeType)("Identifier","StringLiteral","NumericLiteral","BigIntLiteral","Expression","PrivateName"))},value:{validate:(0,q.assertNodeType)("Expression"),optional:!0},definite:{validate:(0,q.assertValueType)("boolean"),optional:!0},typeAnnotation:{validate:(0,q.assertNodeType)("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},decorators:{validate:(0,q.arrayOfType)("Decorator"),optional:!0},readonly:{validate:(0,q.assertValueType)("boolean"),optional:!0},declare:{validate:(0,q.assertValueType)("boolean"),optional:!0},variance:{validate:(0,q.assertNodeType)("Variance"),optional:!0}})});f("ClassPrivateProperty",{visitor:["decorators","variance","key","typeAnnotation","value"],builder:["key","value","decorators","static"],aliases:["Property","Private"],fields:{key:{validate:(0,q.assertNodeType)("PrivateName")},value:{validate:(0,q.assertNodeType)("Expression"),optional:!0},typeAnnotation:{validate:(0,q.assertNodeType)("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},decorators:{validate:(0,q.arrayOfType)("Decorator"),optional:!0},static:{validate:(0,q.assertValueType)("boolean"),default:!1},readonly:{validate:(0,q.assertValueType)("boolean"),optional:!0},optional:{validate:(0,q.assertValueType)("boolean"),optional:!0},definite:{validate:(0,q.assertValueType)("boolean"),optional:!0},variance:{validate:(0,q.assertNodeType)("Variance"),optional:!0}}});f("ClassPrivateMethod",{builder:["kind","key","params","body","static"],visitor:["decorators","key","typeParameters","params","returnType","body"],aliases:["Function","Scopable","BlockParent","FunctionParent","Method","Private"],fields:Object.assign({},$6(),OJ(),{kind:{validate:(0,q.assertOneOf)("get","set","method"),default:"method"},key:{validate:(0,q.assertNodeType)("PrivateName")},body:{validate:(0,q.assertNodeType)("BlockStatement")}})});f("PrivateName",{visitor:["id"],aliases:["Private"],fields:{id:{validate:(0,q.assertNodeType)("Identifier")}}});f("StaticBlock",{visitor:["body"],fields:{body:(0,q.validateArrayOfType)("Statement")},aliases:["Scopable","BlockParent","FunctionParent"]});f("ImportAttribute",{visitor:["key","value"],fields:{key:{validate:(0,q.assertNodeType)("Identifier","StringLiteral")},value:{validate:(0,q.assertNodeType)("StringLiteral")}}})});var mZ=I(()=>{var uZ=v9(),D=k0(),p=(0,D.defineAliasedType)("Flow"),q6=(J)=>{let X=J==="DeclareClass";p(J,{builder:["id","typeParameters","extends","body"],visitor:["id","typeParameters","extends",...X?["mixins","implements"]:[],"body"],aliases:["FlowDeclaration","Statement","Declaration"],fields:Object.assign({id:(0,D.validateType)("Identifier"),typeParameters:(0,D.validateOptionalType)("TypeParameterDeclaration"),extends:(0,D.validateOptional)((0,D.arrayOfType)("InterfaceExtends"))},X?{mixins:(0,D.validateOptional)((0,D.arrayOfType)("InterfaceExtends")),implements:(0,D.validateOptional)((0,D.arrayOfType)("ClassImplements"))}:{},{body:(0,D.validateType)("ObjectTypeAnnotation")})})};p("AnyTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]});p("ArrayTypeAnnotation",{visitor:["elementType"],aliases:["FlowType"],fields:{elementType:(0,D.validateType)("FlowType")}});p("BooleanTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]});p("BooleanLiteralTypeAnnotation",{builder:["value"],aliases:["FlowType"],fields:{value:(0,D.validate)((0,D.assertValueType)("boolean"))}});p("NullLiteralTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]});p("ClassImplements",{visitor:["id","typeParameters"],fields:{id:(0,D.validateType)("Identifier"),typeParameters:(0,D.validateOptionalType)("TypeParameterInstantiation")}});q6("DeclareClass");p("DeclareFunction",{builder:["id"],visitor:["id","predicate"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,D.validateType)("Identifier"),predicate:(0,D.validateOptionalType)("DeclaredPredicate")}});q6("DeclareInterface");p("DeclareModule",{builder:["id","body","kind"],visitor:["id","body"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,D.validateType)("Identifier","StringLiteral"),body:(0,D.validateType)("BlockStatement"),kind:(0,D.validateOptional)((0,D.assertOneOf)("CommonJS","ES"))}});p("DeclareModuleExports",{visitor:["typeAnnotation"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{typeAnnotation:(0,D.validateType)("TypeAnnotation")}});p("DeclareTypeAlias",{visitor:["id","typeParameters","right"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,D.validateType)("Identifier"),typeParameters:(0,D.validateOptionalType)("TypeParameterDeclaration"),right:(0,D.validateType)("FlowType")}});p("DeclareOpaqueType",{visitor:["id","typeParameters","supertype"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,D.validateType)("Identifier"),typeParameters:(0,D.validateOptionalType)("TypeParameterDeclaration"),supertype:(0,D.validateOptionalType)("FlowType"),impltype:(0,D.validateOptionalType)("FlowType")}});p("DeclareVariable",{visitor:["id"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,D.validateType)("Identifier")}});p("DeclareExportDeclaration",{visitor:["declaration","specifiers","source","attributes"],aliases:["FlowDeclaration","Statement","Declaration"],fields:Object.assign({declaration:(0,D.validateOptionalType)("Flow"),specifiers:(0,D.validateOptional)((0,D.arrayOfType)("ExportSpecifier","ExportNamespaceSpecifier")),source:(0,D.validateOptionalType)("StringLiteral"),default:(0,D.validateOptional)((0,D.assertValueType)("boolean"))},uZ.importAttributes)});p("DeclareExportAllDeclaration",{visitor:["source","attributes"],aliases:["FlowDeclaration","Statement","Declaration"],fields:Object.assign({source:(0,D.validateType)("StringLiteral"),exportKind:(0,D.validateOptional)((0,D.assertOneOf)("type","value"))},uZ.importAttributes)});p("DeclaredPredicate",{visitor:["value"],aliases:["FlowPredicate"],fields:{value:(0,D.validateType)("Flow")}});p("ExistsTypeAnnotation",{aliases:["FlowType"]});p("FunctionTypeAnnotation",{builder:["typeParameters","params","rest","returnType"],visitor:["typeParameters","this","params","rest","returnType"],aliases:["FlowType"],fields:{typeParameters:(0,D.validateOptionalType)("TypeParameterDeclaration"),params:(0,D.validateArrayOfType)("FunctionTypeParam"),rest:(0,D.validateOptionalType)("FunctionTypeParam"),this:(0,D.validateOptionalType)("FunctionTypeParam"),returnType:(0,D.validateType)("FlowType")}});p("FunctionTypeParam",{visitor:["name","typeAnnotation"],fields:{name:(0,D.validateOptionalType)("Identifier"),typeAnnotation:(0,D.validateType)("FlowType"),optional:(0,D.validateOptional)((0,D.assertValueType)("boolean"))}});p("GenericTypeAnnotation",{visitor:["id","typeParameters"],aliases:["FlowType"],fields:{id:(0,D.validateType)("Identifier","QualifiedTypeIdentifier"),typeParameters:(0,D.validateOptionalType)("TypeParameterInstantiation")}});p("InferredPredicate",{aliases:["FlowPredicate"]});p("InterfaceExtends",{visitor:["id","typeParameters"],fields:{id:(0,D.validateType)("Identifier","QualifiedTypeIdentifier"),typeParameters:(0,D.validateOptionalType)("TypeParameterInstantiation")}});q6("InterfaceDeclaration");p("InterfaceTypeAnnotation",{visitor:["extends","body"],aliases:["FlowType"],fields:{extends:(0,D.validateOptional)((0,D.arrayOfType)("InterfaceExtends")),body:(0,D.validateType)("ObjectTypeAnnotation")}});p("IntersectionTypeAnnotation",{visitor:["types"],aliases:["FlowType"],fields:{types:(0,D.validate)((0,D.arrayOfType)("FlowType"))}});p("MixedTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]});p("EmptyTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]});p("NullableTypeAnnotation",{visitor:["typeAnnotation"],aliases:["FlowType"],fields:{typeAnnotation:(0,D.validateType)("FlowType")}});p("NumberLiteralTypeAnnotation",{builder:["value"],aliases:["FlowType"],fields:{value:(0,D.validate)((0,D.assertValueType)("number"))}});p("NumberTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]});p("ObjectTypeAnnotation",{visitor:["properties","indexers","callProperties","internalSlots"],aliases:["FlowType"],builder:["properties","indexers","callProperties","internalSlots","exact"],fields:{properties:(0,D.validate)((0,D.arrayOfType)("ObjectTypeProperty","ObjectTypeSpreadProperty")),indexers:{validate:(0,D.arrayOfType)("ObjectTypeIndexer"),optional:!0,default:[]},callProperties:{validate:(0,D.arrayOfType)("ObjectTypeCallProperty"),optional:!0,default:[]},internalSlots:{validate:(0,D.arrayOfType)("ObjectTypeInternalSlot"),optional:!0,default:[]},exact:{validate:(0,D.assertValueType)("boolean"),default:!1},inexact:(0,D.validateOptional)((0,D.assertValueType)("boolean"))}});p("ObjectTypeInternalSlot",{visitor:["id","value"],builder:["id","value","optional","static","method"],aliases:["UserWhitespacable"],fields:{id:(0,D.validateType)("Identifier"),value:(0,D.validateType)("FlowType"),optional:(0,D.validate)((0,D.assertValueType)("boolean")),static:(0,D.validate)((0,D.assertValueType)("boolean")),method:(0,D.validate)((0,D.assertValueType)("boolean"))}});p("ObjectTypeCallProperty",{visitor:["value"],aliases:["UserWhitespacable"],fields:{value:(0,D.validateType)("FlowType"),static:(0,D.validate)((0,D.assertValueType)("boolean"))}});p("ObjectTypeIndexer",{visitor:["variance","id","key","value"],builder:["id","key","value","variance"],aliases:["UserWhitespacable"],fields:{id:(0,D.validateOptionalType)("Identifier"),key:(0,D.validateType)("FlowType"),value:(0,D.validateType)("FlowType"),static:(0,D.validate)((0,D.assertValueType)("boolean")),variance:(0,D.validateOptionalType)("Variance")}});p("ObjectTypeProperty",{visitor:["key","value","variance"],aliases:["UserWhitespacable"],fields:{key:(0,D.validateType)("Identifier","StringLiteral"),value:(0,D.validateType)("FlowType"),kind:(0,D.validate)((0,D.assertOneOf)("init","get","set")),static:(0,D.validate)((0,D.assertValueType)("boolean")),proto:(0,D.validate)((0,D.assertValueType)("boolean")),optional:(0,D.validate)((0,D.assertValueType)("boolean")),variance:(0,D.validateOptionalType)("Variance"),method:(0,D.validate)((0,D.assertValueType)("boolean"))}});p("ObjectTypeSpreadProperty",{visitor:["argument"],aliases:["UserWhitespacable"],fields:{argument:(0,D.validateType)("FlowType")}});p("OpaqueType",{visitor:["id","typeParameters","supertype","impltype"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,D.validateType)("Identifier"),typeParameters:(0,D.validateOptionalType)("TypeParameterDeclaration"),supertype:(0,D.validateOptionalType)("FlowType"),impltype:(0,D.validateType)("FlowType")}});p("QualifiedTypeIdentifier",{visitor:["qualification","id"],builder:["id","qualification"],fields:{id:(0,D.validateType)("Identifier"),qualification:(0,D.validateType)("Identifier","QualifiedTypeIdentifier")}});p("StringLiteralTypeAnnotation",{builder:["value"],aliases:["FlowType"],fields:{value:(0,D.validate)((0,D.assertValueType)("string"))}});p("StringTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]});p("SymbolTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]});p("ThisTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]});p("TupleTypeAnnotation",{visitor:["types"],aliases:["FlowType"],fields:{types:(0,D.validate)((0,D.arrayOfType)("FlowType"))}});p("TypeofTypeAnnotation",{visitor:["argument"],aliases:["FlowType"],fields:{argument:(0,D.validateType)("FlowType")}});p("TypeAlias",{visitor:["id","typeParameters","right"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,D.validateType)("Identifier"),typeParameters:(0,D.validateOptionalType)("TypeParameterDeclaration"),right:(0,D.validateType)("FlowType")}});p("TypeAnnotation",{visitor:["typeAnnotation"],fields:{typeAnnotation:(0,D.validateType)("FlowType")}});p("TypeCastExpression",{visitor:["expression","typeAnnotation"],aliases:["ExpressionWrapper","Expression"],fields:{expression:(0,D.validateType)("Expression"),typeAnnotation:(0,D.validateType)("TypeAnnotation")}});p("TypeParameter",{visitor:["bound","default","variance"],fields:{name:(0,D.validate)((0,D.assertValueType)("string")),bound:(0,D.validateOptionalType)("TypeAnnotation"),default:(0,D.validateOptionalType)("FlowType"),variance:(0,D.validateOptionalType)("Variance")}});p("TypeParameterDeclaration",{visitor:["params"],fields:{params:(0,D.validate)((0,D.arrayOfType)("TypeParameter"))}});p("TypeParameterInstantiation",{visitor:["params"],fields:{params:(0,D.validate)((0,D.arrayOfType)("FlowType"))}});p("UnionTypeAnnotation",{visitor:["types"],aliases:["FlowType"],fields:{types:(0,D.validate)((0,D.arrayOfType)("FlowType"))}});p("Variance",{builder:["kind"],fields:{kind:(0,D.validate)((0,D.assertOneOf)("minus","plus"))}});p("VoidTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]});p("EnumDeclaration",{aliases:["Statement","Declaration"],visitor:["id","body"],fields:{id:(0,D.validateType)("Identifier"),body:(0,D.validateType)("EnumBooleanBody","EnumNumberBody","EnumStringBody","EnumSymbolBody")}});p("EnumBooleanBody",{aliases:["EnumBody"],visitor:["members"],fields:{explicitType:(0,D.validate)((0,D.assertValueType)("boolean")),members:(0,D.validateArrayOfType)("EnumBooleanMember"),hasUnknownMembers:(0,D.validate)((0,D.assertValueType)("boolean"))}});p("EnumNumberBody",{aliases:["EnumBody"],visitor:["members"],fields:{explicitType:(0,D.validate)((0,D.assertValueType)("boolean")),members:(0,D.validateArrayOfType)("EnumNumberMember"),hasUnknownMembers:(0,D.validate)((0,D.assertValueType)("boolean"))}});p("EnumStringBody",{aliases:["EnumBody"],visitor:["members"],fields:{explicitType:(0,D.validate)((0,D.assertValueType)("boolean")),members:(0,D.validateArrayOfType)("EnumStringMember","EnumDefaultedMember"),hasUnknownMembers:(0,D.validate)((0,D.assertValueType)("boolean"))}});p("EnumSymbolBody",{aliases:["EnumBody"],visitor:["members"],fields:{members:(0,D.validateArrayOfType)("EnumDefaultedMember"),hasUnknownMembers:(0,D.validate)((0,D.assertValueType)("boolean"))}});p("EnumBooleanMember",{aliases:["EnumMember"],builder:["id"],visitor:["id","init"],fields:{id:(0,D.validateType)("Identifier"),init:(0,D.validateType)("BooleanLiteral")}});p("EnumNumberMember",{aliases:["EnumMember"],visitor:["id","init"],fields:{id:(0,D.validateType)("Identifier"),init:(0,D.validateType)("NumericLiteral")}});p("EnumStringMember",{aliases:["EnumMember"],visitor:["id","init"],fields:{id:(0,D.validateType)("Identifier"),init:(0,D.validateType)("StringLiteral")}});p("EnumDefaultedMember",{aliases:["EnumMember"],visitor:["id"],fields:{id:(0,D.validateType)("Identifier")}});p("IndexedAccessType",{visitor:["objectType","indexType"],aliases:["FlowType"],fields:{objectType:(0,D.validateType)("FlowType"),indexType:(0,D.validateType)("FlowType")}});p("OptionalIndexedAccessType",{visitor:["objectType","indexType"],aliases:["FlowType"],fields:{objectType:(0,D.validateType)("FlowType"),indexType:(0,D.validateType)("FlowType"),optional:(0,D.validate)((0,D.assertValueType)("boolean"))}})});var cZ=I(()=>{var b1=k0(),t1=(0,b1.defineAliasedType)("JSX");t1("JSXAttribute",{visitor:["name","value"],aliases:["Immutable"],fields:{name:{validate:(0,b1.assertNodeType)("JSXIdentifier","JSXNamespacedName")},value:{optional:!0,validate:(0,b1.assertNodeType)("JSXElement","JSXFragment","StringLiteral","JSXExpressionContainer")}}});t1("JSXClosingElement",{visitor:["name"],aliases:["Immutable"],fields:{name:{validate:(0,b1.assertNodeType)("JSXIdentifier","JSXMemberExpression","JSXNamespacedName")}}});t1("JSXElement",{builder:["openingElement","closingElement","children","selfClosing"],visitor:["openingElement","children","closingElement"],aliases:["Immutable","Expression"],fields:Object.assign({openingElement:{validate:(0,b1.assertNodeType)("JSXOpeningElement")},closingElement:{optional:!0,validate:(0,b1.assertNodeType)("JSXClosingElement")},children:(0,b1.validateArrayOfType)("JSXText","JSXExpressionContainer","JSXSpreadChild","JSXElement","JSXFragment")},{selfClosing:{validate:(0,b1.assertValueType)("boolean"),optional:!0}})});t1("JSXEmptyExpression",{});t1("JSXExpressionContainer",{visitor:["expression"],aliases:["Immutable"],fields:{expression:{validate:(0,b1.assertNodeType)("Expression","JSXEmptyExpression")}}});t1("JSXSpreadChild",{visitor:["expression"],aliases:["Immutable"],fields:{expression:{validate:(0,b1.assertNodeType)("Expression")}}});t1("JSXIdentifier",{builder:["name"],fields:{name:{validate:(0,b1.assertValueType)("string")}}});t1("JSXMemberExpression",{visitor:["object","property"],fields:{object:{validate:(0,b1.assertNodeType)("JSXMemberExpression","JSXIdentifier")},property:{validate:(0,b1.assertNodeType)("JSXIdentifier")}}});t1("JSXNamespacedName",{visitor:["namespace","name"],fields:{namespace:{validate:(0,b1.assertNodeType)("JSXIdentifier")},name:{validate:(0,b1.assertNodeType)("JSXIdentifier")}}});t1("JSXOpeningElement",{builder:["name","attributes","selfClosing"],visitor:["name","typeParameters","typeArguments","attributes"],aliases:["Immutable"],fields:Object.assign({name:{validate:(0,b1.assertNodeType)("JSXIdentifier","JSXMemberExpression","JSXNamespacedName")},selfClosing:{default:!1},attributes:(0,b1.validateArrayOfType)("JSXAttribute","JSXSpreadAttribute"),typeArguments:{validate:(0,b1.assertNodeType)("TypeParameterInstantiation"),optional:!0}},{typeParameters:{validate:(0,b1.assertNodeType)("TSTypeParameterInstantiation"),optional:!0}})});t1("JSXSpreadAttribute",{visitor:["argument"],fields:{argument:{validate:(0,b1.assertNodeType)("Expression")}}});t1("JSXText",{aliases:["Immutable"],builder:["value"],fields:{value:{validate:(0,b1.assertValueType)("string")}}});t1("JSXFragment",{builder:["openingFragment","closingFragment","children"],visitor:["openingFragment","children","closingFragment"],aliases:["Immutable","Expression"],fields:{openingFragment:{validate:(0,b1.assertNodeType)("JSXOpeningFragment")},closingFragment:{validate:(0,b1.assertNodeType)("JSXClosingFragment")},children:(0,b1.validateArrayOfType)("JSXText","JSXExpressionContainer","JSXSpreadChild","JSXElement","JSXFragment")}});t1("JSXOpeningFragment",{aliases:["Immutable"]});t1("JSXClosingFragment",{aliases:["Immutable"]})});var M6=I((lZ)=>{Object.defineProperty(lZ,"__esModule",{value:!0});lZ.PLACEHOLDERS_FLIPPED_ALIAS=lZ.PLACEHOLDERS_ALIAS=lZ.PLACEHOLDERS=void 0;var vw=k0(),Ew=lZ.PLACEHOLDERS=["Identifier","StringLiteral","Expression","Statement","Declaration","BlockStatement","ClassBody","Pattern"],j6=lZ.PLACEHOLDERS_ALIAS={Declaration:["Statement"],Pattern:["PatternLike","LVal"]};for(let J of Ew){let X=vw.ALIAS_KEYS[J];if(X!=null&&X.length)j6[J]=X}var F6=lZ.PLACEHOLDERS_FLIPPED_ALIAS={};Object.keys(j6).forEach((J)=>{j6[J].forEach((X)=>{if(!hasOwnProperty.call(F6,X))F6[X]=[];F6[X].push(J)})})});var pZ=I(()=>{var vX=k0(),fw=M6(),hw=v9(),O6=(0,vX.defineAliasedType)("Miscellaneous");O6("Noop",{visitor:[]});O6("Placeholder",{visitor:[],builder:["expectedNode","name"],fields:Object.assign({name:{validate:(0,vX.assertNodeType)("Identifier")},expectedNode:{validate:(0,vX.assertOneOf)(...fw.PLACEHOLDERS)}},(0,hw.patternLikeCommon)())});O6("V8IntrinsicIdentifier",{builder:["name"],fields:{name:{validate:(0,vX.assertValueType)("string")}}})});var rZ=I(()=>{var P1=k0();(0,P1.default)("ArgumentPlaceholder",{});(0,P1.default)("BindExpression",{visitor:["object","callee"],aliases:["Expression"],fields:!process.env.BABEL_TYPES_8_BREAKING?{object:{validate:Object.assign(()=>{},{oneOfNodeTypes:["Expression"]})},callee:{validate:Object.assign(()=>{},{oneOfNodeTypes:["Expression"]})}}:{object:{validate:(0,P1.assertNodeType)("Expression")},callee:{validate:(0,P1.assertNodeType)("Expression")}}});(0,P1.default)("Decorator",{visitor:["expression"],fields:{expression:{validate:(0,P1.assertNodeType)("Expression")}}});(0,P1.default)("DoExpression",{visitor:["body"],builder:["body","async"],aliases:["Expression"],fields:{body:{validate:(0,P1.assertNodeType)("BlockStatement")},async:{validate:(0,P1.assertValueType)("boolean"),default:!1}}});(0,P1.default)("ExportDefaultSpecifier",{visitor:["exported"],aliases:["ModuleSpecifier"],fields:{exported:{validate:(0,P1.assertNodeType)("Identifier")}}});(0,P1.default)("RecordExpression",{visitor:["properties"],aliases:["Expression"],fields:{properties:(0,P1.validateArrayOfType)("ObjectProperty","SpreadElement")}});(0,P1.default)("TupleExpression",{fields:{elements:{validate:(0,P1.arrayOfType)("Expression","SpreadElement"),default:[]}},visitor:["elements"],aliases:["Expression"]});(0,P1.default)("DecimalLiteral",{builder:["value"],fields:{value:{validate:(0,P1.assertValueType)("string")}},aliases:["Expression","Pureish","Literal","Immutable"]});(0,P1.default)("ModuleExpression",{visitor:["body"],fields:{body:{validate:(0,P1.assertNodeType)("Program")}},aliases:["Expression"]});(0,P1.default)("TopicReference",{aliases:["Expression"]});(0,P1.default)("PipelineTopicExpression",{builder:["expression"],visitor:["expression"],fields:{expression:{validate:(0,P1.assertNodeType)("Expression")}},aliases:["Expression"]});(0,P1.default)("PipelineBareFunction",{builder:["callee"],visitor:["callee"],fields:{callee:{validate:(0,P1.assertNodeType)("Expression")}},aliases:["Expression"]});(0,P1.default)("PipelinePrimaryTopicReference",{aliases:["Expression"]});(0,P1.default)("VoidPattern",{aliases:["Pattern","PatternLike","FunctionParameter"]})});var J5=I(()=>{var T=k0(),dZ=v9(),xw=aJ(),o=(0,T.defineAliasedType)("TypeScript"),X0=(0,T.assertValueType)("boolean"),aZ=()=>({returnType:{validate:(0,T.assertNodeType)("TSTypeAnnotation","Noop"),optional:!0},typeParameters:{validate:(0,T.assertNodeType)("TSTypeParameterDeclaration","Noop"),optional:!0}});o("TSParameterProperty",{aliases:["LVal"],visitor:["parameter"],fields:{accessibility:{validate:(0,T.assertOneOf)("public","private","protected"),optional:!0},readonly:{validate:(0,T.assertValueType)("boolean"),optional:!0},parameter:{validate:(0,T.assertNodeType)("Identifier","AssignmentPattern")},override:{validate:(0,T.assertValueType)("boolean"),optional:!0},decorators:{validate:(0,T.arrayOfType)("Decorator"),optional:!0}}});o("TSDeclareFunction",{aliases:["Statement","Declaration"],visitor:["id","typeParameters","params","returnType"],fields:Object.assign({},(0,dZ.functionDeclarationCommon)(),aZ())});o("TSDeclareMethod",{visitor:["decorators","key","typeParameters","params","returnType"],fields:Object.assign({},(0,dZ.classMethodOrDeclareMethodCommon)(),aZ())});o("TSQualifiedName",{aliases:["TSEntityName"],visitor:["left","right"],fields:{left:(0,T.validateType)("TSEntityName"),right:(0,T.validateType)("Identifier")}});var EX=()=>({typeParameters:(0,T.validateOptionalType)("TSTypeParameterDeclaration"),["parameters"]:(0,T.validateArrayOfType)("ArrayPattern","Identifier","ObjectPattern","RestElement"),["typeAnnotation"]:(0,T.validateOptionalType)("TSTypeAnnotation")}),sZ={aliases:["TSTypeElement"],visitor:["typeParameters","parameters","typeAnnotation"],fields:EX()};o("TSCallSignatureDeclaration",sZ);o("TSConstructSignatureDeclaration",sZ);var tZ=()=>({key:(0,T.validateType)("Expression"),computed:{default:!1},optional:(0,T.validateOptional)(X0)});o("TSPropertySignature",{aliases:["TSTypeElement"],visitor:["key","typeAnnotation"],fields:Object.assign({},tZ(),{readonly:(0,T.validateOptional)(X0),typeAnnotation:(0,T.validateOptionalType)("TSTypeAnnotation"),kind:{optional:!0,validate:(0,T.assertOneOf)("get","set")}})});o("TSMethodSignature",{aliases:["TSTypeElement"],visitor:["key","typeParameters","parameters","typeAnnotation"],fields:Object.assign({},EX(),tZ(),{kind:{validate:(0,T.assertOneOf)("method","get","set")}})});o("TSIndexSignature",{aliases:["TSTypeElement"],visitor:["parameters","typeAnnotation"],fields:{readonly:(0,T.validateOptional)(X0),static:(0,T.validateOptional)(X0),parameters:(0,T.validateArrayOfType)("Identifier"),typeAnnotation:(0,T.validateOptionalType)("TSTypeAnnotation")}});var yw=["TSAnyKeyword","TSBooleanKeyword","TSBigIntKeyword","TSIntrinsicKeyword","TSNeverKeyword","TSNullKeyword","TSNumberKeyword","TSObjectKeyword","TSStringKeyword","TSSymbolKeyword","TSUndefinedKeyword","TSUnknownKeyword","TSVoidKeyword"];for(let J of yw)o(J,{aliases:["TSType","TSBaseType"],visitor:[],fields:{}});o("TSThisType",{aliases:["TSType","TSBaseType"],visitor:[],fields:{}});var nZ={aliases:["TSType"],visitor:["typeParameters","parameters","typeAnnotation"]};o("TSFunctionType",Object.assign({},nZ,{fields:EX()}));o("TSConstructorType",Object.assign({},nZ,{fields:Object.assign({},EX(),{abstract:(0,T.validateOptional)(X0)})}));o("TSTypeReference",{aliases:["TSType"],visitor:["typeName","typeParameters"],fields:{typeName:(0,T.validateType)("TSEntityName"),["typeParameters"]:(0,T.validateOptionalType)("TSTypeParameterInstantiation")}});o("TSTypePredicate",{aliases:["TSType"],visitor:["parameterName","typeAnnotation"],builder:["parameterName","typeAnnotation","asserts"],fields:{parameterName:(0,T.validateType)("Identifier","TSThisType"),typeAnnotation:(0,T.validateOptionalType)("TSTypeAnnotation"),asserts:(0,T.validateOptional)(X0)}});o("TSTypeQuery",{aliases:["TSType"],visitor:["exprName","typeParameters"],fields:{exprName:(0,T.validateType)("TSEntityName","TSImportType"),["typeParameters"]:(0,T.validateOptionalType)("TSTypeParameterInstantiation")}});o("TSTypeLiteral",{aliases:["TSType"],visitor:["members"],fields:{members:(0,T.validateArrayOfType)("TSTypeElement")}});o("TSArrayType",{aliases:["TSType"],visitor:["elementType"],fields:{elementType:(0,T.validateType)("TSType")}});o("TSTupleType",{aliases:["TSType"],visitor:["elementTypes"],fields:{elementTypes:(0,T.validateArrayOfType)("TSType","TSNamedTupleMember")}});o("TSOptionalType",{aliases:["TSType"],visitor:["typeAnnotation"],fields:{typeAnnotation:(0,T.validateType)("TSType")}});o("TSRestType",{aliases:["TSType"],visitor:["typeAnnotation"],fields:{typeAnnotation:(0,T.validateType)("TSType")}});o("TSNamedTupleMember",{visitor:["label","elementType"],builder:["label","elementType","optional"],fields:{label:(0,T.validateType)("Identifier"),optional:{validate:X0,default:!1},elementType:(0,T.validateType)("TSType")}});var oZ={aliases:["TSType"],visitor:["types"],fields:{types:(0,T.validateArrayOfType)("TSType")}};o("TSUnionType",oZ);o("TSIntersectionType",oZ);o("TSConditionalType",{aliases:["TSType"],visitor:["checkType","extendsType","trueType","falseType"],fields:{checkType:(0,T.validateType)("TSType"),extendsType:(0,T.validateType)("TSType"),trueType:(0,T.validateType)("TSType"),falseType:(0,T.validateType)("TSType")}});o("TSInferType",{aliases:["TSType"],visitor:["typeParameter"],fields:{typeParameter:(0,T.validateType)("TSTypeParameter")}});o("TSParenthesizedType",{aliases:["TSType"],visitor:["typeAnnotation"],fields:{typeAnnotation:(0,T.validateType)("TSType")}});o("TSTypeOperator",{aliases:["TSType"],visitor:["typeAnnotation"],builder:["typeAnnotation","operator"],fields:{operator:{validate:(0,T.assertValueType)("string"),default:"keyof"},typeAnnotation:(0,T.validateType)("TSType")}});o("TSIndexedAccessType",{aliases:["TSType"],visitor:["objectType","indexType"],fields:{objectType:(0,T.validateType)("TSType"),indexType:(0,T.validateType)("TSType")}});o("TSMappedType",{aliases:["TSType"],visitor:["typeParameter","nameType","typeAnnotation"],builder:["typeParameter","typeAnnotation","nameType"],fields:Object.assign({},{typeParameter:(0,T.validateType)("TSTypeParameter")},{readonly:(0,T.validateOptional)((0,T.assertOneOf)(!0,!1,"+","-")),optional:(0,T.validateOptional)((0,T.assertOneOf)(!0,!1,"+","-")),typeAnnotation:(0,T.validateOptionalType)("TSType"),nameType:(0,T.validateOptionalType)("TSType")})});o("TSTemplateLiteralType",{aliases:["TSType","TSBaseType"],visitor:["quasis","types"],fields:{quasis:(0,T.validateArrayOfType)("TemplateElement"),types:{validate:(0,T.chain)((0,T.assertValueType)("array"),(0,T.assertEach)((0,T.assertNodeType)("TSType")),function(J,X,Z){if(J.quasis.length!==Z.length+1)throw TypeError(`Number of ${J.type} quasis should be exactly one more than the number of types.
22
+ Expected ${Z.length+1} quasis but got ${J.quasis.length}`)})}}});o("TSLiteralType",{aliases:["TSType","TSBaseType"],visitor:["literal"],fields:{literal:{validate:function(){let J=(0,T.assertNodeType)("NumericLiteral","BigIntLiteral"),X=(0,T.assertOneOf)("-"),Z=(0,T.assertNodeType)("NumericLiteral","StringLiteral","BooleanLiteral","BigIntLiteral","TemplateLiteral");function Q(Y,H,G){if((0,xw.default)("UnaryExpression",G))X(G,"operator",G.operator),J(G,"argument",G.argument);else Z(Y,H,G)}return Q.oneOfNodeTypes=["NumericLiteral","StringLiteral","BooleanLiteral","BigIntLiteral","TemplateLiteral","UnaryExpression"],Q}()}}});o("TSExpressionWithTypeArguments",{aliases:["TSType"],visitor:["expression","typeParameters"],fields:{expression:(0,T.validateType)("TSEntityName"),typeParameters:(0,T.validateOptionalType)("TSTypeParameterInstantiation")}});o("TSInterfaceDeclaration",{aliases:["Statement","Declaration"],visitor:["id","typeParameters","extends","body"],fields:{declare:(0,T.validateOptional)(X0),id:(0,T.validateType)("Identifier"),typeParameters:(0,T.validateOptionalType)("TSTypeParameterDeclaration"),extends:(0,T.validateOptional)((0,T.arrayOfType)("TSExpressionWithTypeArguments")),body:(0,T.validateType)("TSInterfaceBody")}});o("TSInterfaceBody",{visitor:["body"],fields:{body:(0,T.validateArrayOfType)("TSTypeElement")}});o("TSTypeAliasDeclaration",{aliases:["Statement","Declaration"],visitor:["id","typeParameters","typeAnnotation"],fields:{declare:(0,T.validateOptional)(X0),id:(0,T.validateType)("Identifier"),typeParameters:(0,T.validateOptionalType)("TSTypeParameterDeclaration"),typeAnnotation:(0,T.validateType)("TSType")}});o("TSInstantiationExpression",{aliases:["Expression"],visitor:["expression","typeParameters"],fields:{expression:(0,T.validateType)("Expression"),["typeParameters"]:(0,T.validateOptionalType)("TSTypeParameterInstantiation")}});var eZ={aliases:["Expression","LVal","PatternLike"],visitor:["expression","typeAnnotation"],fields:{expression:(0,T.validateType)("Expression"),typeAnnotation:(0,T.validateType)("TSType")}};o("TSAsExpression",eZ);o("TSSatisfiesExpression",eZ);o("TSTypeAssertion",{aliases:["Expression","LVal","PatternLike"],visitor:["typeAnnotation","expression"],fields:{typeAnnotation:(0,T.validateType)("TSType"),expression:(0,T.validateType)("Expression")}});o("TSEnumBody",{visitor:["members"],fields:{members:(0,T.validateArrayOfType)("TSEnumMember")}});o("TSEnumDeclaration",{aliases:["Statement","Declaration"],visitor:["id","members"],fields:{declare:(0,T.validateOptional)(X0),const:(0,T.validateOptional)(X0),id:(0,T.validateType)("Identifier"),members:(0,T.validateArrayOfType)("TSEnumMember"),initializer:(0,T.validateOptionalType)("Expression"),body:(0,T.validateOptionalType)("TSEnumBody")}});o("TSEnumMember",{visitor:["id","initializer"],fields:{id:(0,T.validateType)("Identifier","StringLiteral"),initializer:(0,T.validateOptionalType)("Expression")}});o("TSModuleDeclaration",{aliases:["Statement","Declaration"],visitor:["id","body"],fields:Object.assign({kind:{validate:(0,T.assertOneOf)("global","module","namespace")},declare:(0,T.validateOptional)(X0)},{global:(0,T.validateOptional)(X0)},{id:(0,T.validateType)("Identifier","StringLiteral"),body:(0,T.validateType)("TSModuleBlock","TSModuleDeclaration")})});o("TSModuleBlock",{aliases:["Scopable","Block","BlockParent","FunctionParent"],visitor:["body"],fields:{body:(0,T.validateArrayOfType)("Statement")}});o("TSImportType",{aliases:["TSType"],builder:["argument","qualifier","typeParameters"],visitor:["argument","options","qualifier","typeParameters"],fields:{argument:(0,T.validateType)("StringLiteral"),qualifier:(0,T.validateOptionalType)("TSEntityName"),["typeParameters"]:(0,T.validateOptionalType)("TSTypeParameterInstantiation"),options:{validate:(0,T.assertNodeType)("ObjectExpression"),optional:!0}}});o("TSImportEqualsDeclaration",{aliases:["Statement","Declaration"],visitor:["id","moduleReference"],fields:Object.assign({},{isExport:(0,T.validate)(X0)},{id:(0,T.validateType)("Identifier"),moduleReference:(0,T.validateType)("TSEntityName","TSExternalModuleReference"),importKind:{validate:(0,T.assertOneOf)("type","value"),optional:!0}})});o("TSExternalModuleReference",{visitor:["expression"],fields:{expression:(0,T.validateType)("StringLiteral")}});o("TSNonNullExpression",{aliases:["Expression","LVal","PatternLike"],visitor:["expression"],fields:{expression:(0,T.validateType)("Expression")}});o("TSExportAssignment",{aliases:["Statement"],visitor:["expression"],fields:{expression:(0,T.validateType)("Expression")}});o("TSNamespaceExportDeclaration",{aliases:["Statement"],visitor:["id"],fields:{id:(0,T.validateType)("Identifier")}});o("TSTypeAnnotation",{visitor:["typeAnnotation"],fields:{typeAnnotation:{validate:(0,T.assertNodeType)("TSType")}}});o("TSTypeParameterInstantiation",{visitor:["params"],fields:{params:(0,T.validateArrayOfType)("TSType")}});o("TSTypeParameterDeclaration",{visitor:["params"],fields:{params:(0,T.validateArrayOfType)("TSTypeParameter")}});o("TSTypeParameter",{builder:["constraint","default","name"],visitor:["constraint","default"],fields:{name:{validate:(0,T.assertValueType)("string")},in:{validate:(0,T.assertValueType)("boolean"),optional:!0},out:{validate:(0,T.assertValueType)("boolean"),optional:!0},const:{validate:(0,T.assertValueType)("boolean"),optional:!0},constraint:{validate:(0,T.assertNodeType)("TSType"),optional:!0},default:{validate:(0,T.assertNodeType)("TSType"),optional:!0}}})});var Q5=I((X5)=>{Object.defineProperty(X5,"__esModule",{value:!0});X5.DEPRECATED_ALIASES=void 0;var gM1=X5.DEPRECATED_ALIASES={ModuleDeclaration:"ImportOrExportDeclaration"}});var $0=I((z0)=>{Object.defineProperty(z0,"__esModule",{value:!0});Object.defineProperty(z0,"ALIAS_KEYS",{enumerable:!0,get:function(){return Z0.ALIAS_KEYS}});Object.defineProperty(z0,"BUILDER_KEYS",{enumerable:!0,get:function(){return Z0.BUILDER_KEYS}});Object.defineProperty(z0,"DEPRECATED_ALIASES",{enumerable:!0,get:function(){return A6.DEPRECATED_ALIASES}});Object.defineProperty(z0,"DEPRECATED_KEYS",{enumerable:!0,get:function(){return Z0.DEPRECATED_KEYS}});Object.defineProperty(z0,"FLIPPED_ALIAS_KEYS",{enumerable:!0,get:function(){return Z0.FLIPPED_ALIAS_KEYS}});Object.defineProperty(z0,"NODE_FIELDS",{enumerable:!0,get:function(){return Z0.NODE_FIELDS}});Object.defineProperty(z0,"NODE_PARENT_VALIDATIONS",{enumerable:!0,get:function(){return Z0.NODE_PARENT_VALIDATIONS}});Object.defineProperty(z0,"PLACEHOLDERS",{enumerable:!0,get:function(){return C6.PLACEHOLDERS}});Object.defineProperty(z0,"PLACEHOLDERS_ALIAS",{enumerable:!0,get:function(){return C6.PLACEHOLDERS_ALIAS}});Object.defineProperty(z0,"PLACEHOLDERS_FLIPPED_ALIAS",{enumerable:!0,get:function(){return C6.PLACEHOLDERS_FLIPPED_ALIAS}});z0.TYPES=void 0;Object.defineProperty(z0,"VISITOR_KEYS",{enumerable:!0,get:function(){return Z0.VISITOR_KEYS}});v9();mZ();cZ();pZ();rZ();J5();var Z0=k0(),C6=M6(),A6=Q5();Object.keys(A6.DEPRECATED_ALIASES).forEach((J)=>{Z0.FLIPPED_ALIAS_KEYS[J]=Z0.FLIPPED_ALIAS_KEYS[A6.DEPRECATED_ALIASES[J]]});for(let{types:J,set:X}of Z0.allExpandedTypes)for(let Z of J){let Q=Z0.FLIPPED_ALIAS_KEYS[Z];if(Q)Q.forEach(X.add,X);else X.add(Z)}var hM1=z0.TYPES=[].concat(Object.keys(Z0.VISITOR_KEYS),Object.keys(Z0.FLIPPED_ALIAS_KEYS),Object.keys(Z0.DEPRECATED_KEYS))});var kX=I((z5)=>{Object.defineProperty(z5,"__esModule",{value:!0});z5.default=uw;z5.validateChild=G5;z5.validateField=H5;z5.validateInternal=mw;var E9=$0();function uw(J,X,Z){if(!J)return;let Q=E9.NODE_FIELDS[J.type];if(!Q)return;let Y=Q[X];H5(J,X,Z,Y),G5(J,X,Z)}function mw(J,X,Z,Q,Y){if(!(J!=null&&J.validate))return;if(J.optional&&Q==null)return;if(J.validate(X,Z,Q),Y){var H;let G=Q.type;if(G==null)return;(H=E9.NODE_PARENT_VALIDATIONS[G])==null||H.call(E9.NODE_PARENT_VALIDATIONS,X,Z,Q)}}function H5(J,X,Z,Q){if(!(Q!=null&&Q.validate))return;if(Q.optional&&Z==null)return;Q.validate(J,X,Z)}function G5(J,X,Z){var Q;let Y=Z==null?void 0:Z.type;if(Y==null)return;(Q=E9.NODE_PARENT_VALIDATIONS[Y])==null||Q.call(E9.NODE_PARENT_VALIDATIONS,J,X,Z)}});var D6=I((B5)=>{Object.defineProperty(B5,"__esModule",{value:!0});B5.anyTypeAnnotation=wP;B5.argumentPlaceholder=JL;B5.arrayExpression=sw;B5.arrayPattern=iS;B5.arrayTypeAnnotation=SP;B5.arrowFunctionExpression=pS;B5.assignmentExpression=tw;B5.assignmentPattern=lS;B5.awaitExpression=RP;B5.bigIntLiteral=aw;B5.binaryExpression=nw;B5.bindExpression=XL;B5.blockStatement=XS;B5.booleanLiteral=CS;B5.booleanLiteralTypeAnnotation=TP;B5.booleanTypeAnnotation=PP;B5.breakStatement=ZS;B5.callExpression=QS;B5.catchClause=YS;B5.classAccessorProperty=OP;B5.classBody=rS;B5.classDeclaration=aS;B5.classExpression=dS;B5.classImplements=kP;B5.classMethod=GP;B5.classPrivateMethod=CP;B5.classPrivateProperty=AP;B5.classProperty=MP;B5.conditionalExpression=HS;B5.continueStatement=GS;B5.debuggerStatement=zS;B5.decimalLiteral=zL;B5.declareClass=bP;B5.declareExportAllDeclaration=uP;B5.declareExportDeclaration=yP;B5.declareFunction=vP;B5.declareInterface=EP;B5.declareModule=_P;B5.declareModuleExports=gP;B5.declareOpaqueType=hP;B5.declareTypeAlias=fP;B5.declareVariable=xP;B5.declaredPredicate=mP;B5.decorator=ZL;B5.directive=ew;B5.directiveLiteral=JS;B5.doExpression=QL;B5.doWhileStatement=WS;B5.emptyStatement=VS;B5.emptyTypeAnnotation=oP;B5.enumBooleanBody=ST;B5.enumBooleanMember=kT;B5.enumDeclaration=wT;B5.enumDefaultedMember=ET;B5.enumNumberBody=PT;B5.enumNumberMember=bT;B5.enumStringBody=TT;B5.enumStringMember=vT;B5.enumSymbolBody=LT;B5.existsTypeAnnotation=cP;B5.exportAllDeclaration=sS;B5.exportDefaultDeclaration=tS;B5.exportDefaultSpecifier=YL;B5.exportNamedDeclaration=nS;B5.exportNamespaceSpecifier=qP;B5.exportSpecifier=oS;B5.expressionStatement=KS;B5.file=US;B5.forInStatement=BS;B5.forOfStatement=eS;B5.forStatement=RS;B5.functionDeclaration=$S;B5.functionExpression=qS;B5.functionTypeAnnotation=lP;B5.functionTypeParam=iP;B5.genericTypeAnnotation=pP;B5.identifier=FS;B5.ifStatement=jS;B5.import=$P;B5.importAttribute=NP;B5.importDeclaration=JP;B5.importDefaultSpecifier=XP;B5.importExpression=YP;B5.importNamespaceSpecifier=ZP;B5.importSpecifier=QP;B5.indexedAccessType=_T;B5.inferredPredicate=rP;B5.interfaceDeclaration=aP;B5.interfaceExtends=dP;B5.interfaceTypeAnnotation=sP;B5.interpreterDirective=ow;B5.intersectionTypeAnnotation=tP;B5.jSXAttribute=B5.jsxAttribute=fT;B5.jSXClosingElement=B5.jsxClosingElement=hT;B5.jSXClosingFragment=B5.jsxClosingFragment=tT;B5.jSXElement=B5.jsxElement=xT;B5.jSXEmptyExpression=B5.jsxEmptyExpression=yT;B5.jSXExpressionContainer=B5.jsxExpressionContainer=uT;B5.jSXFragment=B5.jsxFragment=aT;B5.jSXIdentifier=B5.jsxIdentifier=cT;B5.jSXMemberExpression=B5.jsxMemberExpression=lT;B5.jSXNamespacedName=B5.jsxNamespacedName=iT;B5.jSXOpeningElement=B5.jsxOpeningElement=pT;B5.jSXOpeningFragment=B5.jsxOpeningFragment=sT;B5.jSXSpreadAttribute=B5.jsxSpreadAttribute=rT;B5.jSXSpreadChild=B5.jsxSpreadChild=mT;B5.jSXText=B5.jsxText=dT;B5.labeledStatement=MS;B5.logicalExpression=DS;B5.memberExpression=IS;B5.metaProperty=HP;B5.mixedTypeAnnotation=nP;B5.moduleExpression=WL;B5.newExpression=NS;B5.noop=nT;B5.nullLiteral=AS;B5.nullLiteralTypeAnnotation=LP;B5.nullableTypeAnnotation=eP;B5.numberLiteral=Pk;B5.numberLiteralTypeAnnotation=JT;B5.numberTypeAnnotation=XT;B5.numericLiteral=W5;B5.objectExpression=SS;B5.objectMethod=PS;B5.objectPattern=zP;B5.objectProperty=TS;B5.objectTypeAnnotation=ZT;B5.objectTypeCallProperty=YT;B5.objectTypeIndexer=HT;B5.objectTypeInternalSlot=QT;B5.objectTypeProperty=GT;B5.objectTypeSpreadProperty=zT;B5.opaqueType=WT;B5.optionalCallExpression=jP;B5.optionalIndexedAccessType=gT;B5.optionalMemberExpression=FP;B5.parenthesizedExpression=bS;B5.pipelineBareFunction=UL;B5.pipelinePrimaryTopicReference=BL;B5.pipelineTopicExpression=KL;B5.placeholder=oT;B5.privateName=DP;B5.program=wS;B5.qualifiedTypeIdentifier=VT;B5.recordExpression=HL;B5.regExpLiteral=V5;B5.regexLiteral=Tk;B5.restElement=K5;B5.restProperty=Lk;B5.returnStatement=LS;B5.sequenceExpression=kS;B5.spreadElement=U5;B5.spreadProperty=kk;B5.staticBlock=IP;B5.stringLiteral=OS;B5.stringLiteralTypeAnnotation=KT;B5.stringTypeAnnotation=UT;B5.super=WP;B5.switchCase=vS;B5.switchStatement=ES;B5.symbolTypeAnnotation=BT;B5.taggedTemplateExpression=VP;B5.templateElement=KP;B5.templateLiteral=UP;B5.thisExpression=_S;B5.thisTypeAnnotation=RT;B5.throwStatement=gS;B5.topicReference=VL;B5.tryStatement=fS;B5.tSAnyKeyword=B5.tsAnyKeyword=IL;B5.tSArrayType=B5.tsArrayType=lL;B5.tSAsExpression=B5.tsAsExpression=Vk;B5.tSBigIntKeyword=B5.tsBigIntKeyword=wL;B5.tSBooleanKeyword=B5.tsBooleanKeyword=NL;B5.tSCallSignatureDeclaration=B5.tsCallSignatureDeclaration=ML;B5.tSConditionalType=B5.tsConditionalType=tL;B5.tSConstructSignatureDeclaration=B5.tsConstructSignatureDeclaration=OL;B5.tSConstructorType=B5.tsConstructorType=xL;B5.tSDeclareFunction=B5.tsDeclareFunction=qL;B5.tSDeclareMethod=B5.tsDeclareMethod=FL;B5.tSEnumBody=B5.tsEnumBody=Bk;B5.tSEnumDeclaration=B5.tsEnumDeclaration=Rk;B5.tSEnumMember=B5.tsEnumMember=$k;B5.tSExportAssignment=B5.tsExportAssignment=Ck;B5.tSExpressionWithTypeArguments=B5.tsExpressionWithTypeArguments=Yk;B5.tSExternalModuleReference=B5.tsExternalModuleReference=Ok;B5.tSFunctionType=B5.tsFunctionType=hL;B5.tSImportEqualsDeclaration=B5.tsImportEqualsDeclaration=Mk;B5.tSImportType=B5.tsImportType=jk;B5.tSIndexSignature=B5.tsIndexSignature=DL;B5.tSIndexedAccessType=B5.tsIndexedAccessType=Jk;B5.tSInferType=B5.tsInferType=nL;B5.tSInstantiationExpression=B5.tsInstantiationExpression=Wk;B5.tSInterfaceBody=B5.tsInterfaceBody=Gk;B5.tSInterfaceDeclaration=B5.tsInterfaceDeclaration=Hk;B5.tSIntersectionType=B5.tsIntersectionType=sL;B5.tSIntrinsicKeyword=B5.tsIntrinsicKeyword=SL;B5.tSLiteralType=B5.tsLiteralType=Qk;B5.tSMappedType=B5.tsMappedType=Xk;B5.tSMethodSignature=B5.tsMethodSignature=CL;B5.tSModuleBlock=B5.tsModuleBlock=Fk;B5.tSModuleDeclaration=B5.tsModuleDeclaration=qk;B5.tSNamedTupleMember=B5.tsNamedTupleMember=dL;B5.tSNamespaceExportDeclaration=B5.tsNamespaceExportDeclaration=Dk;B5.tSNeverKeyword=B5.tsNeverKeyword=PL;B5.tSNonNullExpression=B5.tsNonNullExpression=Ak;B5.tSNullKeyword=B5.tsNullKeyword=TL;B5.tSNumberKeyword=B5.tsNumberKeyword=LL;B5.tSObjectKeyword=B5.tsObjectKeyword=kL;B5.tSOptionalType=B5.tsOptionalType=pL;B5.tSParameterProperty=B5.tsParameterProperty=$L;B5.tSParenthesizedType=B5.tsParenthesizedType=oL;B5.tSPropertySignature=B5.tsPropertySignature=AL;B5.tSQualifiedName=B5.tsQualifiedName=jL;B5.tSRestType=B5.tsRestType=rL;B5.tSSatisfiesExpression=B5.tsSatisfiesExpression=Kk;B5.tSStringKeyword=B5.tsStringKeyword=bL;B5.tSSymbolKeyword=B5.tsSymbolKeyword=vL;B5.tSTemplateLiteralType=B5.tsTemplateLiteralType=Zk;B5.tSThisType=B5.tsThisType=fL;B5.tSTupleType=B5.tsTupleType=iL;B5.tSTypeAliasDeclaration=B5.tsTypeAliasDeclaration=zk;B5.tSTypeAnnotation=B5.tsTypeAnnotation=Ik;B5.tSTypeAssertion=B5.tsTypeAssertion=Uk;B5.tSTypeLiteral=B5.tsTypeLiteral=cL;B5.tSTypeOperator=B5.tsTypeOperator=eL;B5.tSTypeParameter=B5.tsTypeParameter=Sk;B5.tSTypeParameterDeclaration=B5.tsTypeParameterDeclaration=wk;B5.tSTypeParameterInstantiation=B5.tsTypeParameterInstantiation=Nk;B5.tSTypePredicate=B5.tsTypePredicate=uL;B5.tSTypeQuery=B5.tsTypeQuery=mL;B5.tSTypeReference=B5.tsTypeReference=yL;B5.tSUndefinedKeyword=B5.tsUndefinedKeyword=EL;B5.tSUnionType=B5.tsUnionType=aL;B5.tSUnknownKeyword=B5.tsUnknownKeyword=_L;B5.tSVoidKeyword=B5.tsVoidKeyword=gL;B5.tupleExpression=GL;B5.tupleTypeAnnotation=$T;B5.typeAlias=FT;B5.typeAnnotation=jT;B5.typeCastExpression=MT;B5.typeParameter=OT;B5.typeParameterDeclaration=AT;B5.typeParameterInstantiation=CT;B5.typeofTypeAnnotation=qT;B5.unaryExpression=hS;B5.unionTypeAnnotation=DT;B5.updateExpression=xS;B5.v8IntrinsicIdentifier=eT;B5.variableDeclaration=yS;B5.variableDeclarator=uS;B5.variance=IT;B5.voidPattern=RL;B5.voidTypeAnnotation=NT;B5.whileStatement=mS;B5.withStatement=cS;B5.yieldExpression=BP;var rw=kX(),_X=dJ(),dw=k0(),{validateInternal:K}=rw,{NODE_FIELDS:O}=dw;function aw(J){if(typeof J==="bigint")J=J.toString();let X={type:"BigIntLiteral",value:J},Z=O.BigIntLiteral;return K(Z.value,X,"value",J),X}function sw(J=[]){let X={type:"ArrayExpression",elements:J},Z=O.ArrayExpression;return K(Z.elements,X,"elements",J,1),X}function tw(J,X,Z){let Q={type:"AssignmentExpression",operator:J,left:X,right:Z},Y=O.AssignmentExpression;return K(Y.operator,Q,"operator",J),K(Y.left,Q,"left",X,1),K(Y.right,Q,"right",Z,1),Q}function nw(J,X,Z){let Q={type:"BinaryExpression",operator:J,left:X,right:Z},Y=O.BinaryExpression;return K(Y.operator,Q,"operator",J),K(Y.left,Q,"left",X,1),K(Y.right,Q,"right",Z,1),Q}function ow(J){let X={type:"InterpreterDirective",value:J},Z=O.InterpreterDirective;return K(Z.value,X,"value",J),X}function ew(J){let X={type:"Directive",value:J},Z=O.Directive;return K(Z.value,X,"value",J,1),X}function JS(J){let X={type:"DirectiveLiteral",value:J},Z=O.DirectiveLiteral;return K(Z.value,X,"value",J),X}function XS(J,X=[]){let Z={type:"BlockStatement",body:J,directives:X},Q=O.BlockStatement;return K(Q.body,Z,"body",J,1),K(Q.directives,Z,"directives",X,1),Z}function ZS(J=null){let X={type:"BreakStatement",label:J},Z=O.BreakStatement;return K(Z.label,X,"label",J,1),X}function QS(J,X){let Z={type:"CallExpression",callee:J,arguments:X},Q=O.CallExpression;return K(Q.callee,Z,"callee",J,1),K(Q.arguments,Z,"arguments",X,1),Z}function YS(J=null,X){let Z={type:"CatchClause",param:J,body:X},Q=O.CatchClause;return K(Q.param,Z,"param",J,1),K(Q.body,Z,"body",X,1),Z}function HS(J,X,Z){let Q={type:"ConditionalExpression",test:J,consequent:X,alternate:Z},Y=O.ConditionalExpression;return K(Y.test,Q,"test",J,1),K(Y.consequent,Q,"consequent",X,1),K(Y.alternate,Q,"alternate",Z,1),Q}function GS(J=null){let X={type:"ContinueStatement",label:J},Z=O.ContinueStatement;return K(Z.label,X,"label",J,1),X}function zS(){return{type:"DebuggerStatement"}}function WS(J,X){let Z={type:"DoWhileStatement",test:J,body:X},Q=O.DoWhileStatement;return K(Q.test,Z,"test",J,1),K(Q.body,Z,"body",X,1),Z}function VS(){return{type:"EmptyStatement"}}function KS(J){let X={type:"ExpressionStatement",expression:J},Z=O.ExpressionStatement;return K(Z.expression,X,"expression",J,1),X}function US(J,X=null,Z=null){let Q={type:"File",program:J,comments:X,tokens:Z},Y=O.File;return K(Y.program,Q,"program",J,1),K(Y.comments,Q,"comments",X,1),K(Y.tokens,Q,"tokens",Z),Q}function BS(J,X,Z){let Q={type:"ForInStatement",left:J,right:X,body:Z},Y=O.ForInStatement;return K(Y.left,Q,"left",J,1),K(Y.right,Q,"right",X,1),K(Y.body,Q,"body",Z,1),Q}function RS(J=null,X=null,Z=null,Q){let Y={type:"ForStatement",init:J,test:X,update:Z,body:Q},H=O.ForStatement;return K(H.init,Y,"init",J,1),K(H.test,Y,"test",X,1),K(H.update,Y,"update",Z,1),K(H.body,Y,"body",Q,1),Y}function $S(J=null,X,Z,Q=!1,Y=!1){let H={type:"FunctionDeclaration",id:J,params:X,body:Z,generator:Q,async:Y},G=O.FunctionDeclaration;return K(G.id,H,"id",J,1),K(G.params,H,"params",X,1),K(G.body,H,"body",Z,1),K(G.generator,H,"generator",Q),K(G.async,H,"async",Y),H}function qS(J=null,X,Z,Q=!1,Y=!1){let H={type:"FunctionExpression",id:J,params:X,body:Z,generator:Q,async:Y},G=O.FunctionExpression;return K(G.id,H,"id",J,1),K(G.params,H,"params",X,1),K(G.body,H,"body",Z,1),K(G.generator,H,"generator",Q),K(G.async,H,"async",Y),H}function FS(J){let X={type:"Identifier",name:J},Z=O.Identifier;return K(Z.name,X,"name",J),X}function jS(J,X,Z=null){let Q={type:"IfStatement",test:J,consequent:X,alternate:Z},Y=O.IfStatement;return K(Y.test,Q,"test",J,1),K(Y.consequent,Q,"consequent",X,1),K(Y.alternate,Q,"alternate",Z,1),Q}function MS(J,X){let Z={type:"LabeledStatement",label:J,body:X},Q=O.LabeledStatement;return K(Q.label,Z,"label",J,1),K(Q.body,Z,"body",X,1),Z}function OS(J){let X={type:"StringLiteral",value:J},Z=O.StringLiteral;return K(Z.value,X,"value",J),X}function W5(J){let X={type:"NumericLiteral",value:J},Z=O.NumericLiteral;return K(Z.value,X,"value",J),X}function AS(){return{type:"NullLiteral"}}function CS(J){let X={type:"BooleanLiteral",value:J},Z=O.BooleanLiteral;return K(Z.value,X,"value",J),X}function V5(J,X=""){let Z={type:"RegExpLiteral",pattern:J,flags:X},Q=O.RegExpLiteral;return K(Q.pattern,Z,"pattern",J),K(Q.flags,Z,"flags",X),Z}function DS(J,X,Z){let Q={type:"LogicalExpression",operator:J,left:X,right:Z},Y=O.LogicalExpression;return K(Y.operator,Q,"operator",J),K(Y.left,Q,"left",X,1),K(Y.right,Q,"right",Z,1),Q}function IS(J,X,Z=!1,Q=null){let Y={type:"MemberExpression",object:J,property:X,computed:Z,optional:Q},H=O.MemberExpression;return K(H.object,Y,"object",J,1),K(H.property,Y,"property",X,1),K(H.computed,Y,"computed",Z),K(H.optional,Y,"optional",Q),Y}function NS(J,X){let Z={type:"NewExpression",callee:J,arguments:X},Q=O.NewExpression;return K(Q.callee,Z,"callee",J,1),K(Q.arguments,Z,"arguments",X,1),Z}function wS(J,X=[],Z="script",Q=null){let Y={type:"Program",body:J,directives:X,sourceType:Z,interpreter:Q},H=O.Program;return K(H.body,Y,"body",J,1),K(H.directives,Y,"directives",X,1),K(H.sourceType,Y,"sourceType",Z),K(H.interpreter,Y,"interpreter",Q,1),Y}function SS(J){let X={type:"ObjectExpression",properties:J},Z=O.ObjectExpression;return K(Z.properties,X,"properties",J,1),X}function PS(J="method",X,Z,Q,Y=!1,H=!1,G=!1){let z={type:"ObjectMethod",kind:J,key:X,params:Z,body:Q,computed:Y,generator:H,async:G},W=O.ObjectMethod;return K(W.kind,z,"kind",J),K(W.key,z,"key",X,1),K(W.params,z,"params",Z,1),K(W.body,z,"body",Q,1),K(W.computed,z,"computed",Y),K(W.generator,z,"generator",H),K(W.async,z,"async",G),z}function TS(J,X,Z=!1,Q=!1,Y=null){let H={type:"ObjectProperty",key:J,value:X,computed:Z,shorthand:Q,decorators:Y},G=O.ObjectProperty;return K(G.key,H,"key",J,1),K(G.value,H,"value",X,1),K(G.computed,H,"computed",Z),K(G.shorthand,H,"shorthand",Q),K(G.decorators,H,"decorators",Y,1),H}function K5(J){let X={type:"RestElement",argument:J},Z=O.RestElement;return K(Z.argument,X,"argument",J,1),X}function LS(J=null){let X={type:"ReturnStatement",argument:J},Z=O.ReturnStatement;return K(Z.argument,X,"argument",J,1),X}function kS(J){let X={type:"SequenceExpression",expressions:J},Z=O.SequenceExpression;return K(Z.expressions,X,"expressions",J,1),X}function bS(J){let X={type:"ParenthesizedExpression",expression:J},Z=O.ParenthesizedExpression;return K(Z.expression,X,"expression",J,1),X}function vS(J=null,X){let Z={type:"SwitchCase",test:J,consequent:X},Q=O.SwitchCase;return K(Q.test,Z,"test",J,1),K(Q.consequent,Z,"consequent",X,1),Z}function ES(J,X){let Z={type:"SwitchStatement",discriminant:J,cases:X},Q=O.SwitchStatement;return K(Q.discriminant,Z,"discriminant",J,1),K(Q.cases,Z,"cases",X,1),Z}function _S(){return{type:"ThisExpression"}}function gS(J){let X={type:"ThrowStatement",argument:J},Z=O.ThrowStatement;return K(Z.argument,X,"argument",J,1),X}function fS(J,X=null,Z=null){let Q={type:"TryStatement",block:J,handler:X,finalizer:Z},Y=O.TryStatement;return K(Y.block,Q,"block",J,1),K(Y.handler,Q,"handler",X,1),K(Y.finalizer,Q,"finalizer",Z,1),Q}function hS(J,X,Z=!0){let Q={type:"UnaryExpression",operator:J,argument:X,prefix:Z},Y=O.UnaryExpression;return K(Y.operator,Q,"operator",J),K(Y.argument,Q,"argument",X,1),K(Y.prefix,Q,"prefix",Z),Q}function xS(J,X,Z=!1){let Q={type:"UpdateExpression",operator:J,argument:X,prefix:Z},Y=O.UpdateExpression;return K(Y.operator,Q,"operator",J),K(Y.argument,Q,"argument",X,1),K(Y.prefix,Q,"prefix",Z),Q}function yS(J,X){let Z={type:"VariableDeclaration",kind:J,declarations:X},Q=O.VariableDeclaration;return K(Q.kind,Z,"kind",J),K(Q.declarations,Z,"declarations",X,1),Z}function uS(J,X=null){let Z={type:"VariableDeclarator",id:J,init:X},Q=O.VariableDeclarator;return K(Q.id,Z,"id",J,1),K(Q.init,Z,"init",X,1),Z}function mS(J,X){let Z={type:"WhileStatement",test:J,body:X},Q=O.WhileStatement;return K(Q.test,Z,"test",J,1),K(Q.body,Z,"body",X,1),Z}function cS(J,X){let Z={type:"WithStatement",object:J,body:X},Q=O.WithStatement;return K(Q.object,Z,"object",J,1),K(Q.body,Z,"body",X,1),Z}function lS(J,X){let Z={type:"AssignmentPattern",left:J,right:X},Q=O.AssignmentPattern;return K(Q.left,Z,"left",J,1),K(Q.right,Z,"right",X,1),Z}function iS(J){let X={type:"ArrayPattern",elements:J},Z=O.ArrayPattern;return K(Z.elements,X,"elements",J,1),X}function pS(J,X,Z=!1){let Q={type:"ArrowFunctionExpression",params:J,body:X,async:Z,expression:null},Y=O.ArrowFunctionExpression;return K(Y.params,Q,"params",J,1),K(Y.body,Q,"body",X,1),K(Y.async,Q,"async",Z),Q}function rS(J){let X={type:"ClassBody",body:J},Z=O.ClassBody;return K(Z.body,X,"body",J,1),X}function dS(J=null,X=null,Z,Q=null){let Y={type:"ClassExpression",id:J,superClass:X,body:Z,decorators:Q},H=O.ClassExpression;return K(H.id,Y,"id",J,1),K(H.superClass,Y,"superClass",X,1),K(H.body,Y,"body",Z,1),K(H.decorators,Y,"decorators",Q,1),Y}function aS(J=null,X=null,Z,Q=null){let Y={type:"ClassDeclaration",id:J,superClass:X,body:Z,decorators:Q},H=O.ClassDeclaration;return K(H.id,Y,"id",J,1),K(H.superClass,Y,"superClass",X,1),K(H.body,Y,"body",Z,1),K(H.decorators,Y,"decorators",Q,1),Y}function sS(J){let X={type:"ExportAllDeclaration",source:J},Z=O.ExportAllDeclaration;return K(Z.source,X,"source",J,1),X}function tS(J){let X={type:"ExportDefaultDeclaration",declaration:J},Z=O.ExportDefaultDeclaration;return K(Z.declaration,X,"declaration",J,1),X}function nS(J=null,X=[],Z=null){let Q={type:"ExportNamedDeclaration",declaration:J,specifiers:X,source:Z},Y=O.ExportNamedDeclaration;return K(Y.declaration,Q,"declaration",J,1),K(Y.specifiers,Q,"specifiers",X,1),K(Y.source,Q,"source",Z,1),Q}function oS(J,X){let Z={type:"ExportSpecifier",local:J,exported:X},Q=O.ExportSpecifier;return K(Q.local,Z,"local",J,1),K(Q.exported,Z,"exported",X,1),Z}function eS(J,X,Z,Q=!1){let Y={type:"ForOfStatement",left:J,right:X,body:Z,await:Q},H=O.ForOfStatement;return K(H.left,Y,"left",J,1),K(H.right,Y,"right",X,1),K(H.body,Y,"body",Z,1),K(H.await,Y,"await",Q),Y}function JP(J,X){let Z={type:"ImportDeclaration",specifiers:J,source:X},Q=O.ImportDeclaration;return K(Q.specifiers,Z,"specifiers",J,1),K(Q.source,Z,"source",X,1),Z}function XP(J){let X={type:"ImportDefaultSpecifier",local:J},Z=O.ImportDefaultSpecifier;return K(Z.local,X,"local",J,1),X}function ZP(J){let X={type:"ImportNamespaceSpecifier",local:J},Z=O.ImportNamespaceSpecifier;return K(Z.local,X,"local",J,1),X}function QP(J,X){let Z={type:"ImportSpecifier",local:J,imported:X},Q=O.ImportSpecifier;return K(Q.local,Z,"local",J,1),K(Q.imported,Z,"imported",X,1),Z}function YP(J,X=null){let Z={type:"ImportExpression",source:J,options:X},Q=O.ImportExpression;return K(Q.source,Z,"source",J,1),K(Q.options,Z,"options",X,1),Z}function HP(J,X){let Z={type:"MetaProperty",meta:J,property:X},Q=O.MetaProperty;return K(Q.meta,Z,"meta",J,1),K(Q.property,Z,"property",X,1),Z}function GP(J="method",X,Z,Q,Y=!1,H=!1,G=!1,z=!1){let W={type:"ClassMethod",kind:J,key:X,params:Z,body:Q,computed:Y,static:H,generator:G,async:z},V=O.ClassMethod;return K(V.kind,W,"kind",J),K(V.key,W,"key",X,1),K(V.params,W,"params",Z,1),K(V.body,W,"body",Q,1),K(V.computed,W,"computed",Y),K(V.static,W,"static",H),K(V.generator,W,"generator",G),K(V.async,W,"async",z),W}function zP(J){let X={type:"ObjectPattern",properties:J},Z=O.ObjectPattern;return K(Z.properties,X,"properties",J,1),X}function U5(J){let X={type:"SpreadElement",argument:J},Z=O.SpreadElement;return K(Z.argument,X,"argument",J,1),X}function WP(){return{type:"Super"}}function VP(J,X){let Z={type:"TaggedTemplateExpression",tag:J,quasi:X},Q=O.TaggedTemplateExpression;return K(Q.tag,Z,"tag",J,1),K(Q.quasi,Z,"quasi",X,1),Z}function KP(J,X=!1){let Z={type:"TemplateElement",value:J,tail:X},Q=O.TemplateElement;return K(Q.value,Z,"value",J),K(Q.tail,Z,"tail",X),Z}function UP(J,X){let Z={type:"TemplateLiteral",quasis:J,expressions:X},Q=O.TemplateLiteral;return K(Q.quasis,Z,"quasis",J,1),K(Q.expressions,Z,"expressions",X,1),Z}function BP(J=null,X=!1){let Z={type:"YieldExpression",argument:J,delegate:X},Q=O.YieldExpression;return K(Q.argument,Z,"argument",J,1),K(Q.delegate,Z,"delegate",X),Z}function RP(J){let X={type:"AwaitExpression",argument:J},Z=O.AwaitExpression;return K(Z.argument,X,"argument",J,1),X}function $P(){return{type:"Import"}}function qP(J){let X={type:"ExportNamespaceSpecifier",exported:J},Z=O.ExportNamespaceSpecifier;return K(Z.exported,X,"exported",J,1),X}function FP(J,X,Z=!1,Q){let Y={type:"OptionalMemberExpression",object:J,property:X,computed:Z,optional:Q},H=O.OptionalMemberExpression;return K(H.object,Y,"object",J,1),K(H.property,Y,"property",X,1),K(H.computed,Y,"computed",Z),K(H.optional,Y,"optional",Q),Y}function jP(J,X,Z){let Q={type:"OptionalCallExpression",callee:J,arguments:X,optional:Z},Y=O.OptionalCallExpression;return K(Y.callee,Q,"callee",J,1),K(Y.arguments,Q,"arguments",X,1),K(Y.optional,Q,"optional",Z),Q}function MP(J,X=null,Z=null,Q=null,Y=!1,H=!1){let G={type:"ClassProperty",key:J,value:X,typeAnnotation:Z,decorators:Q,computed:Y,static:H},z=O.ClassProperty;return K(z.key,G,"key",J,1),K(z.value,G,"value",X,1),K(z.typeAnnotation,G,"typeAnnotation",Z,1),K(z.decorators,G,"decorators",Q,1),K(z.computed,G,"computed",Y),K(z.static,G,"static",H),G}function OP(J,X=null,Z=null,Q=null,Y=!1,H=!1){let G={type:"ClassAccessorProperty",key:J,value:X,typeAnnotation:Z,decorators:Q,computed:Y,static:H},z=O.ClassAccessorProperty;return K(z.key,G,"key",J,1),K(z.value,G,"value",X,1),K(z.typeAnnotation,G,"typeAnnotation",Z,1),K(z.decorators,G,"decorators",Q,1),K(z.computed,G,"computed",Y),K(z.static,G,"static",H),G}function AP(J,X=null,Z=null,Q=!1){let Y={type:"ClassPrivateProperty",key:J,value:X,decorators:Z,static:Q},H=O.ClassPrivateProperty;return K(H.key,Y,"key",J,1),K(H.value,Y,"value",X,1),K(H.decorators,Y,"decorators",Z,1),K(H.static,Y,"static",Q),Y}function CP(J="method",X,Z,Q,Y=!1){let H={type:"ClassPrivateMethod",kind:J,key:X,params:Z,body:Q,static:Y},G=O.ClassPrivateMethod;return K(G.kind,H,"kind",J),K(G.key,H,"key",X,1),K(G.params,H,"params",Z,1),K(G.body,H,"body",Q,1),K(G.static,H,"static",Y),H}function DP(J){let X={type:"PrivateName",id:J},Z=O.PrivateName;return K(Z.id,X,"id",J,1),X}function IP(J){let X={type:"StaticBlock",body:J},Z=O.StaticBlock;return K(Z.body,X,"body",J,1),X}function NP(J,X){let Z={type:"ImportAttribute",key:J,value:X},Q=O.ImportAttribute;return K(Q.key,Z,"key",J,1),K(Q.value,Z,"value",X,1),Z}function wP(){return{type:"AnyTypeAnnotation"}}function SP(J){let X={type:"ArrayTypeAnnotation",elementType:J},Z=O.ArrayTypeAnnotation;return K(Z.elementType,X,"elementType",J,1),X}function PP(){return{type:"BooleanTypeAnnotation"}}function TP(J){let X={type:"BooleanLiteralTypeAnnotation",value:J},Z=O.BooleanLiteralTypeAnnotation;return K(Z.value,X,"value",J),X}function LP(){return{type:"NullLiteralTypeAnnotation"}}function kP(J,X=null){let Z={type:"ClassImplements",id:J,typeParameters:X},Q=O.ClassImplements;return K(Q.id,Z,"id",J,1),K(Q.typeParameters,Z,"typeParameters",X,1),Z}function bP(J,X=null,Z=null,Q){let Y={type:"DeclareClass",id:J,typeParameters:X,extends:Z,body:Q},H=O.DeclareClass;return K(H.id,Y,"id",J,1),K(H.typeParameters,Y,"typeParameters",X,1),K(H.extends,Y,"extends",Z,1),K(H.body,Y,"body",Q,1),Y}function vP(J){let X={type:"DeclareFunction",id:J},Z=O.DeclareFunction;return K(Z.id,X,"id",J,1),X}function EP(J,X=null,Z=null,Q){let Y={type:"DeclareInterface",id:J,typeParameters:X,extends:Z,body:Q},H=O.DeclareInterface;return K(H.id,Y,"id",J,1),K(H.typeParameters,Y,"typeParameters",X,1),K(H.extends,Y,"extends",Z,1),K(H.body,Y,"body",Q,1),Y}function _P(J,X,Z=null){let Q={type:"DeclareModule",id:J,body:X,kind:Z},Y=O.DeclareModule;return K(Y.id,Q,"id",J,1),K(Y.body,Q,"body",X,1),K(Y.kind,Q,"kind",Z),Q}function gP(J){let X={type:"DeclareModuleExports",typeAnnotation:J},Z=O.DeclareModuleExports;return K(Z.typeAnnotation,X,"typeAnnotation",J,1),X}function fP(J,X=null,Z){let Q={type:"DeclareTypeAlias",id:J,typeParameters:X,right:Z},Y=O.DeclareTypeAlias;return K(Y.id,Q,"id",J,1),K(Y.typeParameters,Q,"typeParameters",X,1),K(Y.right,Q,"right",Z,1),Q}function hP(J,X=null,Z=null){let Q={type:"DeclareOpaqueType",id:J,typeParameters:X,supertype:Z},Y=O.DeclareOpaqueType;return K(Y.id,Q,"id",J,1),K(Y.typeParameters,Q,"typeParameters",X,1),K(Y.supertype,Q,"supertype",Z,1),Q}function xP(J){let X={type:"DeclareVariable",id:J},Z=O.DeclareVariable;return K(Z.id,X,"id",J,1),X}function yP(J=null,X=null,Z=null,Q=null){let Y={type:"DeclareExportDeclaration",declaration:J,specifiers:X,source:Z,attributes:Q},H=O.DeclareExportDeclaration;return K(H.declaration,Y,"declaration",J,1),K(H.specifiers,Y,"specifiers",X,1),K(H.source,Y,"source",Z,1),K(H.attributes,Y,"attributes",Q,1),Y}function uP(J,X=null){let Z={type:"DeclareExportAllDeclaration",source:J,attributes:X},Q=O.DeclareExportAllDeclaration;return K(Q.source,Z,"source",J,1),K(Q.attributes,Z,"attributes",X,1),Z}function mP(J){let X={type:"DeclaredPredicate",value:J},Z=O.DeclaredPredicate;return K(Z.value,X,"value",J,1),X}function cP(){return{type:"ExistsTypeAnnotation"}}function lP(J=null,X,Z=null,Q){let Y={type:"FunctionTypeAnnotation",typeParameters:J,params:X,rest:Z,returnType:Q},H=O.FunctionTypeAnnotation;return K(H.typeParameters,Y,"typeParameters",J,1),K(H.params,Y,"params",X,1),K(H.rest,Y,"rest",Z,1),K(H.returnType,Y,"returnType",Q,1),Y}function iP(J=null,X){let Z={type:"FunctionTypeParam",name:J,typeAnnotation:X},Q=O.FunctionTypeParam;return K(Q.name,Z,"name",J,1),K(Q.typeAnnotation,Z,"typeAnnotation",X,1),Z}function pP(J,X=null){let Z={type:"GenericTypeAnnotation",id:J,typeParameters:X},Q=O.GenericTypeAnnotation;return K(Q.id,Z,"id",J,1),K(Q.typeParameters,Z,"typeParameters",X,1),Z}function rP(){return{type:"InferredPredicate"}}function dP(J,X=null){let Z={type:"InterfaceExtends",id:J,typeParameters:X},Q=O.InterfaceExtends;return K(Q.id,Z,"id",J,1),K(Q.typeParameters,Z,"typeParameters",X,1),Z}function aP(J,X=null,Z=null,Q){let Y={type:"InterfaceDeclaration",id:J,typeParameters:X,extends:Z,body:Q},H=O.InterfaceDeclaration;return K(H.id,Y,"id",J,1),K(H.typeParameters,Y,"typeParameters",X,1),K(H.extends,Y,"extends",Z,1),K(H.body,Y,"body",Q,1),Y}function sP(J=null,X){let Z={type:"InterfaceTypeAnnotation",extends:J,body:X},Q=O.InterfaceTypeAnnotation;return K(Q.extends,Z,"extends",J,1),K(Q.body,Z,"body",X,1),Z}function tP(J){let X={type:"IntersectionTypeAnnotation",types:J},Z=O.IntersectionTypeAnnotation;return K(Z.types,X,"types",J,1),X}function nP(){return{type:"MixedTypeAnnotation"}}function oP(){return{type:"EmptyTypeAnnotation"}}function eP(J){let X={type:"NullableTypeAnnotation",typeAnnotation:J},Z=O.NullableTypeAnnotation;return K(Z.typeAnnotation,X,"typeAnnotation",J,1),X}function JT(J){let X={type:"NumberLiteralTypeAnnotation",value:J},Z=O.NumberLiteralTypeAnnotation;return K(Z.value,X,"value",J),X}function XT(){return{type:"NumberTypeAnnotation"}}function ZT(J,X=[],Z=[],Q=[],Y=!1){let H={type:"ObjectTypeAnnotation",properties:J,indexers:X,callProperties:Z,internalSlots:Q,exact:Y},G=O.ObjectTypeAnnotation;return K(G.properties,H,"properties",J,1),K(G.indexers,H,"indexers",X,1),K(G.callProperties,H,"callProperties",Z,1),K(G.internalSlots,H,"internalSlots",Q,1),K(G.exact,H,"exact",Y),H}function QT(J,X,Z,Q,Y){let H={type:"ObjectTypeInternalSlot",id:J,value:X,optional:Z,static:Q,method:Y},G=O.ObjectTypeInternalSlot;return K(G.id,H,"id",J,1),K(G.value,H,"value",X,1),K(G.optional,H,"optional",Z),K(G.static,H,"static",Q),K(G.method,H,"method",Y),H}function YT(J){let X={type:"ObjectTypeCallProperty",value:J,static:null},Z=O.ObjectTypeCallProperty;return K(Z.value,X,"value",J,1),X}function HT(J=null,X,Z,Q=null){let Y={type:"ObjectTypeIndexer",id:J,key:X,value:Z,variance:Q,static:null},H=O.ObjectTypeIndexer;return K(H.id,Y,"id",J,1),K(H.key,Y,"key",X,1),K(H.value,Y,"value",Z,1),K(H.variance,Y,"variance",Q,1),Y}function GT(J,X,Z=null){let Q={type:"ObjectTypeProperty",key:J,value:X,variance:Z,kind:null,method:null,optional:null,proto:null,static:null},Y=O.ObjectTypeProperty;return K(Y.key,Q,"key",J,1),K(Y.value,Q,"value",X,1),K(Y.variance,Q,"variance",Z,1),Q}function zT(J){let X={type:"ObjectTypeSpreadProperty",argument:J},Z=O.ObjectTypeSpreadProperty;return K(Z.argument,X,"argument",J,1),X}function WT(J,X=null,Z=null,Q){let Y={type:"OpaqueType",id:J,typeParameters:X,supertype:Z,impltype:Q},H=O.OpaqueType;return K(H.id,Y,"id",J,1),K(H.typeParameters,Y,"typeParameters",X,1),K(H.supertype,Y,"supertype",Z,1),K(H.impltype,Y,"impltype",Q,1),Y}function VT(J,X){let Z={type:"QualifiedTypeIdentifier",id:J,qualification:X},Q=O.QualifiedTypeIdentifier;return K(Q.id,Z,"id",J,1),K(Q.qualification,Z,"qualification",X,1),Z}function KT(J){let X={type:"StringLiteralTypeAnnotation",value:J},Z=O.StringLiteralTypeAnnotation;return K(Z.value,X,"value",J),X}function UT(){return{type:"StringTypeAnnotation"}}function BT(){return{type:"SymbolTypeAnnotation"}}function RT(){return{type:"ThisTypeAnnotation"}}function $T(J){let X={type:"TupleTypeAnnotation",types:J},Z=O.TupleTypeAnnotation;return K(Z.types,X,"types",J,1),X}function qT(J){let X={type:"TypeofTypeAnnotation",argument:J},Z=O.TypeofTypeAnnotation;return K(Z.argument,X,"argument",J,1),X}function FT(J,X=null,Z){let Q={type:"TypeAlias",id:J,typeParameters:X,right:Z},Y=O.TypeAlias;return K(Y.id,Q,"id",J,1),K(Y.typeParameters,Q,"typeParameters",X,1),K(Y.right,Q,"right",Z,1),Q}function jT(J){let X={type:"TypeAnnotation",typeAnnotation:J},Z=O.TypeAnnotation;return K(Z.typeAnnotation,X,"typeAnnotation",J,1),X}function MT(J,X){let Z={type:"TypeCastExpression",expression:J,typeAnnotation:X},Q=O.TypeCastExpression;return K(Q.expression,Z,"expression",J,1),K(Q.typeAnnotation,Z,"typeAnnotation",X,1),Z}function OT(J=null,X=null,Z=null){let Q={type:"TypeParameter",bound:J,default:X,variance:Z,name:null},Y=O.TypeParameter;return K(Y.bound,Q,"bound",J,1),K(Y.default,Q,"default",X,1),K(Y.variance,Q,"variance",Z,1),Q}function AT(J){let X={type:"TypeParameterDeclaration",params:J},Z=O.TypeParameterDeclaration;return K(Z.params,X,"params",J,1),X}function CT(J){let X={type:"TypeParameterInstantiation",params:J},Z=O.TypeParameterInstantiation;return K(Z.params,X,"params",J,1),X}function DT(J){let X={type:"UnionTypeAnnotation",types:J},Z=O.UnionTypeAnnotation;return K(Z.types,X,"types",J,1),X}function IT(J){let X={type:"Variance",kind:J},Z=O.Variance;return K(Z.kind,X,"kind",J),X}function NT(){return{type:"VoidTypeAnnotation"}}function wT(J,X){let Z={type:"EnumDeclaration",id:J,body:X},Q=O.EnumDeclaration;return K(Q.id,Z,"id",J,1),K(Q.body,Z,"body",X,1),Z}function ST(J){let X={type:"EnumBooleanBody",members:J,explicitType:null,hasUnknownMembers:null},Z=O.EnumBooleanBody;return K(Z.members,X,"members",J,1),X}function PT(J){let X={type:"EnumNumberBody",members:J,explicitType:null,hasUnknownMembers:null},Z=O.EnumNumberBody;return K(Z.members,X,"members",J,1),X}function TT(J){let X={type:"EnumStringBody",members:J,explicitType:null,hasUnknownMembers:null},Z=O.EnumStringBody;return K(Z.members,X,"members",J,1),X}function LT(J){let X={type:"EnumSymbolBody",members:J,hasUnknownMembers:null},Z=O.EnumSymbolBody;return K(Z.members,X,"members",J,1),X}function kT(J){let X={type:"EnumBooleanMember",id:J,init:null},Z=O.EnumBooleanMember;return K(Z.id,X,"id",J,1),X}function bT(J,X){let Z={type:"EnumNumberMember",id:J,init:X},Q=O.EnumNumberMember;return K(Q.id,Z,"id",J,1),K(Q.init,Z,"init",X,1),Z}function vT(J,X){let Z={type:"EnumStringMember",id:J,init:X},Q=O.EnumStringMember;return K(Q.id,Z,"id",J,1),K(Q.init,Z,"init",X,1),Z}function ET(J){let X={type:"EnumDefaultedMember",id:J},Z=O.EnumDefaultedMember;return K(Z.id,X,"id",J,1),X}function _T(J,X){let Z={type:"IndexedAccessType",objectType:J,indexType:X},Q=O.IndexedAccessType;return K(Q.objectType,Z,"objectType",J,1),K(Q.indexType,Z,"indexType",X,1),Z}function gT(J,X){let Z={type:"OptionalIndexedAccessType",objectType:J,indexType:X,optional:null},Q=O.OptionalIndexedAccessType;return K(Q.objectType,Z,"objectType",J,1),K(Q.indexType,Z,"indexType",X,1),Z}function fT(J,X=null){let Z={type:"JSXAttribute",name:J,value:X},Q=O.JSXAttribute;return K(Q.name,Z,"name",J,1),K(Q.value,Z,"value",X,1),Z}function hT(J){let X={type:"JSXClosingElement",name:J},Z=O.JSXClosingElement;return K(Z.name,X,"name",J,1),X}function xT(J,X=null,Z,Q=null){let Y={type:"JSXElement",openingElement:J,closingElement:X,children:Z,selfClosing:Q},H=O.JSXElement;return K(H.openingElement,Y,"openingElement",J,1),K(H.closingElement,Y,"closingElement",X,1),K(H.children,Y,"children",Z,1),K(H.selfClosing,Y,"selfClosing",Q),Y}function yT(){return{type:"JSXEmptyExpression"}}function uT(J){let X={type:"JSXExpressionContainer",expression:J},Z=O.JSXExpressionContainer;return K(Z.expression,X,"expression",J,1),X}function mT(J){let X={type:"JSXSpreadChild",expression:J},Z=O.JSXSpreadChild;return K(Z.expression,X,"expression",J,1),X}function cT(J){let X={type:"JSXIdentifier",name:J},Z=O.JSXIdentifier;return K(Z.name,X,"name",J),X}function lT(J,X){let Z={type:"JSXMemberExpression",object:J,property:X},Q=O.JSXMemberExpression;return K(Q.object,Z,"object",J,1),K(Q.property,Z,"property",X,1),Z}function iT(J,X){let Z={type:"JSXNamespacedName",namespace:J,name:X},Q=O.JSXNamespacedName;return K(Q.namespace,Z,"namespace",J,1),K(Q.name,Z,"name",X,1),Z}function pT(J,X,Z=!1){let Q={type:"JSXOpeningElement",name:J,attributes:X,selfClosing:Z},Y=O.JSXOpeningElement;return K(Y.name,Q,"name",J,1),K(Y.attributes,Q,"attributes",X,1),K(Y.selfClosing,Q,"selfClosing",Z),Q}function rT(J){let X={type:"JSXSpreadAttribute",argument:J},Z=O.JSXSpreadAttribute;return K(Z.argument,X,"argument",J,1),X}function dT(J){let X={type:"JSXText",value:J},Z=O.JSXText;return K(Z.value,X,"value",J),X}function aT(J,X,Z){let Q={type:"JSXFragment",openingFragment:J,closingFragment:X,children:Z},Y=O.JSXFragment;return K(Y.openingFragment,Q,"openingFragment",J,1),K(Y.closingFragment,Q,"closingFragment",X,1),K(Y.children,Q,"children",Z,1),Q}function sT(){return{type:"JSXOpeningFragment"}}function tT(){return{type:"JSXClosingFragment"}}function nT(){return{type:"Noop"}}function oT(J,X){let Z={type:"Placeholder",expectedNode:J,name:X},Q=O.Placeholder;return K(Q.expectedNode,Z,"expectedNode",J),K(Q.name,Z,"name",X,1),Z}function eT(J){let X={type:"V8IntrinsicIdentifier",name:J},Z=O.V8IntrinsicIdentifier;return K(Z.name,X,"name",J),X}function JL(){return{type:"ArgumentPlaceholder"}}function XL(J,X){let Z={type:"BindExpression",object:J,callee:X},Q=O.BindExpression;return K(Q.object,Z,"object",J,1),K(Q.callee,Z,"callee",X,1),Z}function ZL(J){let X={type:"Decorator",expression:J},Z=O.Decorator;return K(Z.expression,X,"expression",J,1),X}function QL(J,X=!1){let Z={type:"DoExpression",body:J,async:X},Q=O.DoExpression;return K(Q.body,Z,"body",J,1),K(Q.async,Z,"async",X),Z}function YL(J){let X={type:"ExportDefaultSpecifier",exported:J},Z=O.ExportDefaultSpecifier;return K(Z.exported,X,"exported",J,1),X}function HL(J){let X={type:"RecordExpression",properties:J},Z=O.RecordExpression;return K(Z.properties,X,"properties",J,1),X}function GL(J=[]){let X={type:"TupleExpression",elements:J},Z=O.TupleExpression;return K(Z.elements,X,"elements",J,1),X}function zL(J){let X={type:"DecimalLiteral",value:J},Z=O.DecimalLiteral;return K(Z.value,X,"value",J),X}function WL(J){let X={type:"ModuleExpression",body:J},Z=O.ModuleExpression;return K(Z.body,X,"body",J,1),X}function VL(){return{type:"TopicReference"}}function KL(J){let X={type:"PipelineTopicExpression",expression:J},Z=O.PipelineTopicExpression;return K(Z.expression,X,"expression",J,1),X}function UL(J){let X={type:"PipelineBareFunction",callee:J},Z=O.PipelineBareFunction;return K(Z.callee,X,"callee",J,1),X}function BL(){return{type:"PipelinePrimaryTopicReference"}}function RL(){return{type:"VoidPattern"}}function $L(J){let X={type:"TSParameterProperty",parameter:J},Z=O.TSParameterProperty;return K(Z.parameter,X,"parameter",J,1),X}function qL(J=null,X=null,Z,Q=null){let Y={type:"TSDeclareFunction",id:J,typeParameters:X,params:Z,returnType:Q},H=O.TSDeclareFunction;return K(H.id,Y,"id",J,1),K(H.typeParameters,Y,"typeParameters",X,1),K(H.params,Y,"params",Z,1),K(H.returnType,Y,"returnType",Q,1),Y}function FL(J=null,X,Z=null,Q,Y=null){let H={type:"TSDeclareMethod",decorators:J,key:X,typeParameters:Z,params:Q,returnType:Y},G=O.TSDeclareMethod;return K(G.decorators,H,"decorators",J,1),K(G.key,H,"key",X,1),K(G.typeParameters,H,"typeParameters",Z,1),K(G.params,H,"params",Q,1),K(G.returnType,H,"returnType",Y,1),H}function jL(J,X){let Z={type:"TSQualifiedName",left:J,right:X},Q=O.TSQualifiedName;return K(Q.left,Z,"left",J,1),K(Q.right,Z,"right",X,1),Z}function ML(J=null,X,Z=null){let Q={type:"TSCallSignatureDeclaration",typeParameters:J,parameters:X,typeAnnotation:Z},Y=O.TSCallSignatureDeclaration;return K(Y.typeParameters,Q,"typeParameters",J,1),K(Y.parameters,Q,"parameters",X,1),K(Y.typeAnnotation,Q,"typeAnnotation",Z,1),Q}function OL(J=null,X,Z=null){let Q={type:"TSConstructSignatureDeclaration",typeParameters:J,parameters:X,typeAnnotation:Z},Y=O.TSConstructSignatureDeclaration;return K(Y.typeParameters,Q,"typeParameters",J,1),K(Y.parameters,Q,"parameters",X,1),K(Y.typeAnnotation,Q,"typeAnnotation",Z,1),Q}function AL(J,X=null){let Z={type:"TSPropertySignature",key:J,typeAnnotation:X},Q=O.TSPropertySignature;return K(Q.key,Z,"key",J,1),K(Q.typeAnnotation,Z,"typeAnnotation",X,1),Z}function CL(J,X=null,Z,Q=null){let Y={type:"TSMethodSignature",key:J,typeParameters:X,parameters:Z,typeAnnotation:Q,kind:null},H=O.TSMethodSignature;return K(H.key,Y,"key",J,1),K(H.typeParameters,Y,"typeParameters",X,1),K(H.parameters,Y,"parameters",Z,1),K(H.typeAnnotation,Y,"typeAnnotation",Q,1),Y}function DL(J,X=null){let Z={type:"TSIndexSignature",parameters:J,typeAnnotation:X},Q=O.TSIndexSignature;return K(Q.parameters,Z,"parameters",J,1),K(Q.typeAnnotation,Z,"typeAnnotation",X,1),Z}function IL(){return{type:"TSAnyKeyword"}}function NL(){return{type:"TSBooleanKeyword"}}function wL(){return{type:"TSBigIntKeyword"}}function SL(){return{type:"TSIntrinsicKeyword"}}function PL(){return{type:"TSNeverKeyword"}}function TL(){return{type:"TSNullKeyword"}}function LL(){return{type:"TSNumberKeyword"}}function kL(){return{type:"TSObjectKeyword"}}function bL(){return{type:"TSStringKeyword"}}function vL(){return{type:"TSSymbolKeyword"}}function EL(){return{type:"TSUndefinedKeyword"}}function _L(){return{type:"TSUnknownKeyword"}}function gL(){return{type:"TSVoidKeyword"}}function fL(){return{type:"TSThisType"}}function hL(J=null,X,Z=null){let Q={type:"TSFunctionType",typeParameters:J,parameters:X,typeAnnotation:Z},Y=O.TSFunctionType;return K(Y.typeParameters,Q,"typeParameters",J,1),K(Y.parameters,Q,"parameters",X,1),K(Y.typeAnnotation,Q,"typeAnnotation",Z,1),Q}function xL(J=null,X,Z=null){let Q={type:"TSConstructorType",typeParameters:J,parameters:X,typeAnnotation:Z},Y=O.TSConstructorType;return K(Y.typeParameters,Q,"typeParameters",J,1),K(Y.parameters,Q,"parameters",X,1),K(Y.typeAnnotation,Q,"typeAnnotation",Z,1),Q}function yL(J,X=null){let Z={type:"TSTypeReference",typeName:J,typeParameters:X},Q=O.TSTypeReference;return K(Q.typeName,Z,"typeName",J,1),K(Q.typeParameters,Z,"typeParameters",X,1),Z}function uL(J,X=null,Z=null){let Q={type:"TSTypePredicate",parameterName:J,typeAnnotation:X,asserts:Z},Y=O.TSTypePredicate;return K(Y.parameterName,Q,"parameterName",J,1),K(Y.typeAnnotation,Q,"typeAnnotation",X,1),K(Y.asserts,Q,"asserts",Z),Q}function mL(J,X=null){let Z={type:"TSTypeQuery",exprName:J,typeParameters:X},Q=O.TSTypeQuery;return K(Q.exprName,Z,"exprName",J,1),K(Q.typeParameters,Z,"typeParameters",X,1),Z}function cL(J){let X={type:"TSTypeLiteral",members:J},Z=O.TSTypeLiteral;return K(Z.members,X,"members",J,1),X}function lL(J){let X={type:"TSArrayType",elementType:J},Z=O.TSArrayType;return K(Z.elementType,X,"elementType",J,1),X}function iL(J){let X={type:"TSTupleType",elementTypes:J},Z=O.TSTupleType;return K(Z.elementTypes,X,"elementTypes",J,1),X}function pL(J){let X={type:"TSOptionalType",typeAnnotation:J},Z=O.TSOptionalType;return K(Z.typeAnnotation,X,"typeAnnotation",J,1),X}function rL(J){let X={type:"TSRestType",typeAnnotation:J},Z=O.TSRestType;return K(Z.typeAnnotation,X,"typeAnnotation",J,1),X}function dL(J,X,Z=!1){let Q={type:"TSNamedTupleMember",label:J,elementType:X,optional:Z},Y=O.TSNamedTupleMember;return K(Y.label,Q,"label",J,1),K(Y.elementType,Q,"elementType",X,1),K(Y.optional,Q,"optional",Z),Q}function aL(J){let X={type:"TSUnionType",types:J},Z=O.TSUnionType;return K(Z.types,X,"types",J,1),X}function sL(J){let X={type:"TSIntersectionType",types:J},Z=O.TSIntersectionType;return K(Z.types,X,"types",J,1),X}function tL(J,X,Z,Q){let Y={type:"TSConditionalType",checkType:J,extendsType:X,trueType:Z,falseType:Q},H=O.TSConditionalType;return K(H.checkType,Y,"checkType",J,1),K(H.extendsType,Y,"extendsType",X,1),K(H.trueType,Y,"trueType",Z,1),K(H.falseType,Y,"falseType",Q,1),Y}function nL(J){let X={type:"TSInferType",typeParameter:J},Z=O.TSInferType;return K(Z.typeParameter,X,"typeParameter",J,1),X}function oL(J){let X={type:"TSParenthesizedType",typeAnnotation:J},Z=O.TSParenthesizedType;return K(Z.typeAnnotation,X,"typeAnnotation",J,1),X}function eL(J,X="keyof"){let Z={type:"TSTypeOperator",typeAnnotation:J,operator:X},Q=O.TSTypeOperator;return K(Q.typeAnnotation,Z,"typeAnnotation",J,1),K(Q.operator,Z,"operator",X),Z}function Jk(J,X){let Z={type:"TSIndexedAccessType",objectType:J,indexType:X},Q=O.TSIndexedAccessType;return K(Q.objectType,Z,"objectType",J,1),K(Q.indexType,Z,"indexType",X,1),Z}function Xk(J,X=null,Z=null){let Q={type:"TSMappedType",typeParameter:J,typeAnnotation:X,nameType:Z},Y=O.TSMappedType;return K(Y.typeParameter,Q,"typeParameter",J,1),K(Y.typeAnnotation,Q,"typeAnnotation",X,1),K(Y.nameType,Q,"nameType",Z,1),Q}function Zk(J,X){let Z={type:"TSTemplateLiteralType",quasis:J,types:X},Q=O.TSTemplateLiteralType;return K(Q.quasis,Z,"quasis",J,1),K(Q.types,Z,"types",X,1),Z}function Qk(J){let X={type:"TSLiteralType",literal:J},Z=O.TSLiteralType;return K(Z.literal,X,"literal",J,1),X}function Yk(J,X=null){let Z={type:"TSExpressionWithTypeArguments",expression:J,typeParameters:X},Q=O.TSExpressionWithTypeArguments;return K(Q.expression,Z,"expression",J,1),K(Q.typeParameters,Z,"typeParameters",X,1),Z}function Hk(J,X=null,Z=null,Q){let Y={type:"TSInterfaceDeclaration",id:J,typeParameters:X,extends:Z,body:Q},H=O.TSInterfaceDeclaration;return K(H.id,Y,"id",J,1),K(H.typeParameters,Y,"typeParameters",X,1),K(H.extends,Y,"extends",Z,1),K(H.body,Y,"body",Q,1),Y}function Gk(J){let X={type:"TSInterfaceBody",body:J},Z=O.TSInterfaceBody;return K(Z.body,X,"body",J,1),X}function zk(J,X=null,Z){let Q={type:"TSTypeAliasDeclaration",id:J,typeParameters:X,typeAnnotation:Z},Y=O.TSTypeAliasDeclaration;return K(Y.id,Q,"id",J,1),K(Y.typeParameters,Q,"typeParameters",X,1),K(Y.typeAnnotation,Q,"typeAnnotation",Z,1),Q}function Wk(J,X=null){let Z={type:"TSInstantiationExpression",expression:J,typeParameters:X},Q=O.TSInstantiationExpression;return K(Q.expression,Z,"expression",J,1),K(Q.typeParameters,Z,"typeParameters",X,1),Z}function Vk(J,X){let Z={type:"TSAsExpression",expression:J,typeAnnotation:X},Q=O.TSAsExpression;return K(Q.expression,Z,"expression",J,1),K(Q.typeAnnotation,Z,"typeAnnotation",X,1),Z}function Kk(J,X){let Z={type:"TSSatisfiesExpression",expression:J,typeAnnotation:X},Q=O.TSSatisfiesExpression;return K(Q.expression,Z,"expression",J,1),K(Q.typeAnnotation,Z,"typeAnnotation",X,1),Z}function Uk(J,X){let Z={type:"TSTypeAssertion",typeAnnotation:J,expression:X},Q=O.TSTypeAssertion;return K(Q.typeAnnotation,Z,"typeAnnotation",J,1),K(Q.expression,Z,"expression",X,1),Z}function Bk(J){let X={type:"TSEnumBody",members:J},Z=O.TSEnumBody;return K(Z.members,X,"members",J,1),X}function Rk(J,X){let Z={type:"TSEnumDeclaration",id:J,members:X},Q=O.TSEnumDeclaration;return K(Q.id,Z,"id",J,1),K(Q.members,Z,"members",X,1),Z}function $k(J,X=null){let Z={type:"TSEnumMember",id:J,initializer:X},Q=O.TSEnumMember;return K(Q.id,Z,"id",J,1),K(Q.initializer,Z,"initializer",X,1),Z}function qk(J,X){let Z={type:"TSModuleDeclaration",id:J,body:X,kind:null},Q=O.TSModuleDeclaration;return K(Q.id,Z,"id",J,1),K(Q.body,Z,"body",X,1),Z}function Fk(J){let X={type:"TSModuleBlock",body:J},Z=O.TSModuleBlock;return K(Z.body,X,"body",J,1),X}function jk(J,X=null,Z=null){let Q={type:"TSImportType",argument:J,qualifier:X,typeParameters:Z},Y=O.TSImportType;return K(Y.argument,Q,"argument",J,1),K(Y.qualifier,Q,"qualifier",X,1),K(Y.typeParameters,Q,"typeParameters",Z,1),Q}function Mk(J,X){let Z={type:"TSImportEqualsDeclaration",id:J,moduleReference:X,isExport:null},Q=O.TSImportEqualsDeclaration;return K(Q.id,Z,"id",J,1),K(Q.moduleReference,Z,"moduleReference",X,1),Z}function Ok(J){let X={type:"TSExternalModuleReference",expression:J},Z=O.TSExternalModuleReference;return K(Z.expression,X,"expression",J,1),X}function Ak(J){let X={type:"TSNonNullExpression",expression:J},Z=O.TSNonNullExpression;return K(Z.expression,X,"expression",J,1),X}function Ck(J){let X={type:"TSExportAssignment",expression:J},Z=O.TSExportAssignment;return K(Z.expression,X,"expression",J,1),X}function Dk(J){let X={type:"TSNamespaceExportDeclaration",id:J},Z=O.TSNamespaceExportDeclaration;return K(Z.id,X,"id",J,1),X}function Ik(J){let X={type:"TSTypeAnnotation",typeAnnotation:J},Z=O.TSTypeAnnotation;return K(Z.typeAnnotation,X,"typeAnnotation",J,1),X}function Nk(J){let X={type:"TSTypeParameterInstantiation",params:J},Z=O.TSTypeParameterInstantiation;return K(Z.params,X,"params",J,1),X}function wk(J){let X={type:"TSTypeParameterDeclaration",params:J},Z=O.TSTypeParameterDeclaration;return K(Z.params,X,"params",J,1),X}function Sk(J=null,X=null,Z){let Q={type:"TSTypeParameter",constraint:J,default:X,name:Z},Y=O.TSTypeParameter;return K(Y.constraint,Q,"constraint",J,1),K(Y.default,Q,"default",X,1),K(Y.name,Q,"name",Z),Q}function Pk(J){return(0,_X.default)("NumberLiteral","NumericLiteral","The node type "),W5(J)}function Tk(J,X=""){return(0,_X.default)("RegexLiteral","RegExpLiteral","The node type "),V5(J,X)}function Lk(J){return(0,_X.default)("RestProperty","RestElement","The node type "),K5(J)}function kk(J){return(0,_X.default)("SpreadProperty","SpreadElement","The node type "),U5(J)}});var j5=I((R5)=>{Object.defineProperty(R5,"__esModule",{value:!0});R5.JSXIdentifier=R5.JSXFragment=R5.JSXExpressionContainer=R5.JSXEmptyExpression=R5.JSXElement=R5.JSXClosingFragment=R5.JSXClosingElement=R5.JSXAttribute=R5.IntersectionTypeAnnotation=R5.InterpreterDirective=R5.InterfaceTypeAnnotation=R5.InterfaceExtends=R5.InterfaceDeclaration=R5.InferredPredicate=R5.IndexedAccessType=R5.ImportSpecifier=R5.ImportNamespaceSpecifier=R5.ImportExpression=R5.ImportDefaultSpecifier=R5.ImportDeclaration=R5.ImportAttribute=R5.Import=R5.IfStatement=R5.Identifier=R5.GenericTypeAnnotation=R5.FunctionTypeParam=R5.FunctionTypeAnnotation=R5.FunctionExpression=R5.FunctionDeclaration=R5.ForStatement=R5.ForOfStatement=R5.ForInStatement=R5.File=R5.ExpressionStatement=R5.ExportSpecifier=R5.ExportNamespaceSpecifier=R5.ExportNamedDeclaration=R5.ExportDefaultSpecifier=R5.ExportDefaultDeclaration=R5.ExportAllDeclaration=R5.ExistsTypeAnnotation=R5.EnumSymbolBody=R5.EnumStringMember=R5.EnumStringBody=R5.EnumNumberMember=R5.EnumNumberBody=R5.EnumDefaultedMember=R5.EnumDeclaration=R5.EnumBooleanMember=R5.EnumBooleanBody=R5.EmptyTypeAnnotation=R5.EmptyStatement=R5.DoWhileStatement=R5.DoExpression=R5.DirectiveLiteral=R5.Directive=R5.Decorator=R5.DeclaredPredicate=R5.DeclareVariable=R5.DeclareTypeAlias=R5.DeclareOpaqueType=R5.DeclareModuleExports=R5.DeclareModule=R5.DeclareInterface=R5.DeclareFunction=R5.DeclareExportDeclaration=R5.DeclareExportAllDeclaration=R5.DeclareClass=R5.DecimalLiteral=R5.DebuggerStatement=R5.ContinueStatement=R5.ConditionalExpression=R5.ClassProperty=R5.ClassPrivateProperty=R5.ClassPrivateMethod=R5.ClassMethod=R5.ClassImplements=R5.ClassExpression=R5.ClassDeclaration=R5.ClassBody=R5.ClassAccessorProperty=R5.CatchClause=R5.CallExpression=R5.BreakStatement=R5.BooleanTypeAnnotation=R5.BooleanLiteralTypeAnnotation=R5.BooleanLiteral=R5.BlockStatement=R5.BindExpression=R5.BinaryExpression=R5.BigIntLiteral=R5.AwaitExpression=R5.AssignmentPattern=R5.AssignmentExpression=R5.ArrowFunctionExpression=R5.ArrayTypeAnnotation=R5.ArrayPattern=R5.ArrayExpression=R5.ArgumentPlaceholder=R5.AnyTypeAnnotation=void 0;R5.TSNumberKeyword=R5.TSNullKeyword=R5.TSNonNullExpression=R5.TSNeverKeyword=R5.TSNamespaceExportDeclaration=R5.TSNamedTupleMember=R5.TSModuleDeclaration=R5.TSModuleBlock=R5.TSMethodSignature=R5.TSMappedType=R5.TSLiteralType=R5.TSIntrinsicKeyword=R5.TSIntersectionType=R5.TSInterfaceDeclaration=R5.TSInterfaceBody=R5.TSInstantiationExpression=R5.TSInferType=R5.TSIndexedAccessType=R5.TSIndexSignature=R5.TSImportType=R5.TSImportEqualsDeclaration=R5.TSFunctionType=R5.TSExternalModuleReference=R5.TSExpressionWithTypeArguments=R5.TSExportAssignment=R5.TSEnumMember=R5.TSEnumDeclaration=R5.TSEnumBody=R5.TSDeclareMethod=R5.TSDeclareFunction=R5.TSConstructorType=R5.TSConstructSignatureDeclaration=R5.TSConditionalType=R5.TSCallSignatureDeclaration=R5.TSBooleanKeyword=R5.TSBigIntKeyword=R5.TSAsExpression=R5.TSArrayType=R5.TSAnyKeyword=R5.SymbolTypeAnnotation=R5.SwitchStatement=R5.SwitchCase=R5.Super=R5.StringTypeAnnotation=R5.StringLiteralTypeAnnotation=R5.StringLiteral=R5.StaticBlock=R5.SpreadProperty=R5.SpreadElement=R5.SequenceExpression=R5.ReturnStatement=R5.RestProperty=R5.RestElement=R5.RegexLiteral=R5.RegExpLiteral=R5.RecordExpression=R5.QualifiedTypeIdentifier=R5.Program=R5.PrivateName=R5.Placeholder=R5.PipelineTopicExpression=R5.PipelinePrimaryTopicReference=R5.PipelineBareFunction=R5.ParenthesizedExpression=R5.OptionalMemberExpression=R5.OptionalIndexedAccessType=R5.OptionalCallExpression=R5.OpaqueType=R5.ObjectTypeSpreadProperty=R5.ObjectTypeProperty=R5.ObjectTypeInternalSlot=R5.ObjectTypeIndexer=R5.ObjectTypeCallProperty=R5.ObjectTypeAnnotation=R5.ObjectProperty=R5.ObjectPattern=R5.ObjectMethod=R5.ObjectExpression=R5.NumericLiteral=R5.NumberTypeAnnotation=R5.NumberLiteralTypeAnnotation=R5.NumberLiteral=R5.NullableTypeAnnotation=R5.NullLiteralTypeAnnotation=R5.NullLiteral=R5.Noop=R5.NewExpression=R5.ModuleExpression=R5.MixedTypeAnnotation=R5.MetaProperty=R5.MemberExpression=R5.LogicalExpression=R5.LabeledStatement=R5.JSXText=R5.JSXSpreadChild=R5.JSXSpreadAttribute=R5.JSXOpeningFragment=R5.JSXOpeningElement=R5.JSXNamespacedName=R5.JSXMemberExpression=void 0;R5.YieldExpression=R5.WithStatement=R5.WhileStatement=R5.VoidTypeAnnotation=R5.VoidPattern=R5.Variance=R5.VariableDeclarator=R5.VariableDeclaration=R5.V8IntrinsicIdentifier=R5.UpdateExpression=R5.UnionTypeAnnotation=R5.UnaryExpression=R5.TypeofTypeAnnotation=R5.TypeParameterInstantiation=R5.TypeParameterDeclaration=R5.TypeParameter=R5.TypeCastExpression=R5.TypeAnnotation=R5.TypeAlias=R5.TupleTypeAnnotation=R5.TupleExpression=R5.TryStatement=R5.TopicReference=R5.ThrowStatement=R5.ThisTypeAnnotation=R5.ThisExpression=R5.TemplateLiteral=R5.TemplateElement=R5.TaggedTemplateExpression=R5.TSVoidKeyword=R5.TSUnknownKeyword=R5.TSUnionType=R5.TSUndefinedKeyword=R5.TSTypeReference=R5.TSTypeQuery=R5.TSTypePredicate=R5.TSTypeParameterInstantiation=R5.TSTypeParameterDeclaration=R5.TSTypeParameter=R5.TSTypeOperator=R5.TSTypeLiteral=R5.TSTypeAssertion=R5.TSTypeAnnotation=R5.TSTypeAliasDeclaration=R5.TSTupleType=R5.TSThisType=R5.TSTemplateLiteralType=R5.TSSymbolKeyword=R5.TSStringKeyword=R5.TSSatisfiesExpression=R5.TSRestType=R5.TSQualifiedName=R5.TSPropertySignature=R5.TSParenthesizedType=R5.TSParameterProperty=R5.TSOptionalType=R5.TSObjectKeyword=void 0;var _9=D6(),qA1=dJ();function F(J){return _9[J]}var FA1=R5.ArrayExpression=F("arrayExpression"),jA1=R5.AssignmentExpression=F("assignmentExpression"),MA1=R5.BinaryExpression=F("binaryExpression"),OA1=R5.InterpreterDirective=F("interpreterDirective"),AA1=R5.Directive=F("directive"),CA1=R5.DirectiveLiteral=F("directiveLiteral"),DA1=R5.BlockStatement=F("blockStatement"),IA1=R5.BreakStatement=F("breakStatement"),NA1=R5.CallExpression=F("callExpression"),wA1=R5.CatchClause=F("catchClause"),SA1=R5.ConditionalExpression=F("conditionalExpression"),PA1=R5.ContinueStatement=F("continueStatement"),TA1=R5.DebuggerStatement=F("debuggerStatement"),LA1=R5.DoWhileStatement=F("doWhileStatement"),kA1=R5.EmptyStatement=F("emptyStatement"),bA1=R5.ExpressionStatement=F("expressionStatement"),vA1=R5.File=F("file"),EA1=R5.ForInStatement=F("forInStatement"),_A1=R5.ForStatement=F("forStatement"),gA1=R5.FunctionDeclaration=F("functionDeclaration"),fA1=R5.FunctionExpression=F("functionExpression"),hA1=R5.Identifier=F("identifier"),xA1=R5.IfStatement=F("ifStatement"),yA1=R5.LabeledStatement=F("labeledStatement"),uA1=R5.StringLiteral=F("stringLiteral"),mA1=R5.NumericLiteral=F("numericLiteral"),cA1=R5.NullLiteral=F("nullLiteral"),lA1=R5.BooleanLiteral=F("booleanLiteral"),iA1=R5.RegExpLiteral=F("regExpLiteral"),pA1=R5.LogicalExpression=F("logicalExpression"),rA1=R5.MemberExpression=F("memberExpression"),dA1=R5.NewExpression=F("newExpression"),aA1=R5.Program=F("program"),sA1=R5.ObjectExpression=F("objectExpression"),tA1=R5.ObjectMethod=F("objectMethod"),nA1=R5.ObjectProperty=F("objectProperty"),oA1=R5.RestElement=F("restElement"),eA1=R5.ReturnStatement=F("returnStatement"),JC1=R5.SequenceExpression=F("sequenceExpression"),XC1=R5.ParenthesizedExpression=F("parenthesizedExpression"),ZC1=R5.SwitchCase=F("switchCase"),QC1=R5.SwitchStatement=F("switchStatement"),YC1=R5.ThisExpression=F("thisExpression"),HC1=R5.ThrowStatement=F("throwStatement"),GC1=R5.TryStatement=F("tryStatement"),zC1=R5.UnaryExpression=F("unaryExpression"),WC1=R5.UpdateExpression=F("updateExpression"),VC1=R5.VariableDeclaration=F("variableDeclaration"),KC1=R5.VariableDeclarator=F("variableDeclarator"),UC1=R5.WhileStatement=F("whileStatement"),BC1=R5.WithStatement=F("withStatement"),RC1=R5.AssignmentPattern=F("assignmentPattern"),$C1=R5.ArrayPattern=F("arrayPattern"),qC1=R5.ArrowFunctionExpression=F("arrowFunctionExpression"),FC1=R5.ClassBody=F("classBody"),jC1=R5.ClassExpression=F("classExpression"),MC1=R5.ClassDeclaration=F("classDeclaration"),OC1=R5.ExportAllDeclaration=F("exportAllDeclaration"),AC1=R5.ExportDefaultDeclaration=F("exportDefaultDeclaration"),CC1=R5.ExportNamedDeclaration=F("exportNamedDeclaration"),DC1=R5.ExportSpecifier=F("exportSpecifier"),IC1=R5.ForOfStatement=F("forOfStatement"),NC1=R5.ImportDeclaration=F("importDeclaration"),wC1=R5.ImportDefaultSpecifier=F("importDefaultSpecifier"),SC1=R5.ImportNamespaceSpecifier=F("importNamespaceSpecifier"),PC1=R5.ImportSpecifier=F("importSpecifier"),TC1=R5.ImportExpression=F("importExpression"),LC1=R5.MetaProperty=F("metaProperty"),kC1=R5.ClassMethod=F("classMethod"),bC1=R5.ObjectPattern=F("objectPattern"),vC1=R5.SpreadElement=F("spreadElement"),EC1=R5.Super=F("super"),_C1=R5.TaggedTemplateExpression=F("taggedTemplateExpression"),gC1=R5.TemplateElement=F("templateElement"),fC1=R5.TemplateLiteral=F("templateLiteral"),hC1=R5.YieldExpression=F("yieldExpression"),xC1=R5.AwaitExpression=F("awaitExpression"),yC1=R5.Import=F("import"),uC1=R5.BigIntLiteral=F("bigIntLiteral"),mC1=R5.ExportNamespaceSpecifier=F("exportNamespaceSpecifier"),cC1=R5.OptionalMemberExpression=F("optionalMemberExpression"),lC1=R5.OptionalCallExpression=F("optionalCallExpression"),iC1=R5.ClassProperty=F("classProperty"),pC1=R5.ClassAccessorProperty=F("classAccessorProperty"),rC1=R5.ClassPrivateProperty=F("classPrivateProperty"),dC1=R5.ClassPrivateMethod=F("classPrivateMethod"),aC1=R5.PrivateName=F("privateName"),sC1=R5.StaticBlock=F("staticBlock"),tC1=R5.ImportAttribute=F("importAttribute"),nC1=R5.AnyTypeAnnotation=F("anyTypeAnnotation"),oC1=R5.ArrayTypeAnnotation=F("arrayTypeAnnotation"),eC1=R5.BooleanTypeAnnotation=F("booleanTypeAnnotation"),JD1=R5.BooleanLiteralTypeAnnotation=F("booleanLiteralTypeAnnotation"),XD1=R5.NullLiteralTypeAnnotation=F("nullLiteralTypeAnnotation"),ZD1=R5.ClassImplements=F("classImplements"),QD1=R5.DeclareClass=F("declareClass"),YD1=R5.DeclareFunction=F("declareFunction"),HD1=R5.DeclareInterface=F("declareInterface"),GD1=R5.DeclareModule=F("declareModule"),zD1=R5.DeclareModuleExports=F("declareModuleExports"),WD1=R5.DeclareTypeAlias=F("declareTypeAlias"),VD1=R5.DeclareOpaqueType=F("declareOpaqueType"),KD1=R5.DeclareVariable=F("declareVariable"),UD1=R5.DeclareExportDeclaration=F("declareExportDeclaration"),BD1=R5.DeclareExportAllDeclaration=F("declareExportAllDeclaration"),RD1=R5.DeclaredPredicate=F("declaredPredicate"),$D1=R5.ExistsTypeAnnotation=F("existsTypeAnnotation"),qD1=R5.FunctionTypeAnnotation=F("functionTypeAnnotation"),FD1=R5.FunctionTypeParam=F("functionTypeParam"),jD1=R5.GenericTypeAnnotation=F("genericTypeAnnotation"),MD1=R5.InferredPredicate=F("inferredPredicate"),OD1=R5.InterfaceExtends=F("interfaceExtends"),AD1=R5.InterfaceDeclaration=F("interfaceDeclaration"),CD1=R5.InterfaceTypeAnnotation=F("interfaceTypeAnnotation"),DD1=R5.IntersectionTypeAnnotation=F("intersectionTypeAnnotation"),ID1=R5.MixedTypeAnnotation=F("mixedTypeAnnotation"),ND1=R5.EmptyTypeAnnotation=F("emptyTypeAnnotation"),wD1=R5.NullableTypeAnnotation=F("nullableTypeAnnotation"),SD1=R5.NumberLiteralTypeAnnotation=F("numberLiteralTypeAnnotation"),PD1=R5.NumberTypeAnnotation=F("numberTypeAnnotation"),TD1=R5.ObjectTypeAnnotation=F("objectTypeAnnotation"),LD1=R5.ObjectTypeInternalSlot=F("objectTypeInternalSlot"),kD1=R5.ObjectTypeCallProperty=F("objectTypeCallProperty"),bD1=R5.ObjectTypeIndexer=F("objectTypeIndexer"),vD1=R5.ObjectTypeProperty=F("objectTypeProperty"),ED1=R5.ObjectTypeSpreadProperty=F("objectTypeSpreadProperty"),_D1=R5.OpaqueType=F("opaqueType"),gD1=R5.QualifiedTypeIdentifier=F("qualifiedTypeIdentifier"),fD1=R5.StringLiteralTypeAnnotation=F("stringLiteralTypeAnnotation"),hD1=R5.StringTypeAnnotation=F("stringTypeAnnotation"),xD1=R5.SymbolTypeAnnotation=F("symbolTypeAnnotation"),yD1=R5.ThisTypeAnnotation=F("thisTypeAnnotation"),uD1=R5.TupleTypeAnnotation=F("tupleTypeAnnotation"),mD1=R5.TypeofTypeAnnotation=F("typeofTypeAnnotation"),cD1=R5.TypeAlias=F("typeAlias"),lD1=R5.TypeAnnotation=F("typeAnnotation"),iD1=R5.TypeCastExpression=F("typeCastExpression"),pD1=R5.TypeParameter=F("typeParameter"),rD1=R5.TypeParameterDeclaration=F("typeParameterDeclaration"),dD1=R5.TypeParameterInstantiation=F("typeParameterInstantiation"),aD1=R5.UnionTypeAnnotation=F("unionTypeAnnotation"),sD1=R5.Variance=F("variance"),tD1=R5.VoidTypeAnnotation=F("voidTypeAnnotation"),nD1=R5.EnumDeclaration=F("enumDeclaration"),oD1=R5.EnumBooleanBody=F("enumBooleanBody"),eD1=R5.EnumNumberBody=F("enumNumberBody"),JI1=R5.EnumStringBody=F("enumStringBody"),XI1=R5.EnumSymbolBody=F("enumSymbolBody"),ZI1=R5.EnumBooleanMember=F("enumBooleanMember"),QI1=R5.EnumNumberMember=F("enumNumberMember"),YI1=R5.EnumStringMember=F("enumStringMember"),HI1=R5.EnumDefaultedMember=F("enumDefaultedMember"),GI1=R5.IndexedAccessType=F("indexedAccessType"),zI1=R5.OptionalIndexedAccessType=F("optionalIndexedAccessType"),WI1=R5.JSXAttribute=F("jsxAttribute"),VI1=R5.JSXClosingElement=F("jsxClosingElement"),KI1=R5.JSXElement=F("jsxElement"),UI1=R5.JSXEmptyExpression=F("jsxEmptyExpression"),BI1=R5.JSXExpressionContainer=F("jsxExpressionContainer"),RI1=R5.JSXSpreadChild=F("jsxSpreadChild"),$I1=R5.JSXIdentifier=F("jsxIdentifier"),qI1=R5.JSXMemberExpression=F("jsxMemberExpression"),FI1=R5.JSXNamespacedName=F("jsxNamespacedName"),jI1=R5.JSXOpeningElement=F("jsxOpeningElement"),MI1=R5.JSXSpreadAttribute=F("jsxSpreadAttribute"),OI1=R5.JSXText=F("jsxText"),AI1=R5.JSXFragment=F("jsxFragment"),CI1=R5.JSXOpeningFragment=F("jsxOpeningFragment"),DI1=R5.JSXClosingFragment=F("jsxClosingFragment"),II1=R5.Noop=F("noop"),NI1=R5.Placeholder=F("placeholder"),wI1=R5.V8IntrinsicIdentifier=F("v8IntrinsicIdentifier"),SI1=R5.ArgumentPlaceholder=F("argumentPlaceholder"),PI1=R5.BindExpression=F("bindExpression"),TI1=R5.Decorator=F("decorator"),LI1=R5.DoExpression=F("doExpression"),kI1=R5.ExportDefaultSpecifier=F("exportDefaultSpecifier"),bI1=R5.RecordExpression=F("recordExpression"),vI1=R5.TupleExpression=F("tupleExpression"),EI1=R5.DecimalLiteral=F("decimalLiteral"),_I1=R5.ModuleExpression=F("moduleExpression"),gI1=R5.TopicReference=F("topicReference"),fI1=R5.PipelineTopicExpression=F("pipelineTopicExpression"),hI1=R5.PipelineBareFunction=F("pipelineBareFunction"),xI1=R5.PipelinePrimaryTopicReference=F("pipelinePrimaryTopicReference"),yI1=R5.VoidPattern=F("voidPattern"),uI1=R5.TSParameterProperty=F("tsParameterProperty"),mI1=R5.TSDeclareFunction=F("tsDeclareFunction"),cI1=R5.TSDeclareMethod=F("tsDeclareMethod"),lI1=R5.TSQualifiedName=F("tsQualifiedName"),iI1=R5.TSCallSignatureDeclaration=F("tsCallSignatureDeclaration"),pI1=R5.TSConstructSignatureDeclaration=F("tsConstructSignatureDeclaration"),rI1=R5.TSPropertySignature=F("tsPropertySignature"),dI1=R5.TSMethodSignature=F("tsMethodSignature"),aI1=R5.TSIndexSignature=F("tsIndexSignature"),sI1=R5.TSAnyKeyword=F("tsAnyKeyword"),tI1=R5.TSBooleanKeyword=F("tsBooleanKeyword"),nI1=R5.TSBigIntKeyword=F("tsBigIntKeyword"),oI1=R5.TSIntrinsicKeyword=F("tsIntrinsicKeyword"),eI1=R5.TSNeverKeyword=F("tsNeverKeyword"),JN1=R5.TSNullKeyword=F("tsNullKeyword"),XN1=R5.TSNumberKeyword=F("tsNumberKeyword"),ZN1=R5.TSObjectKeyword=F("tsObjectKeyword"),QN1=R5.TSStringKeyword=F("tsStringKeyword"),YN1=R5.TSSymbolKeyword=F("tsSymbolKeyword"),HN1=R5.TSUndefinedKeyword=F("tsUndefinedKeyword"),GN1=R5.TSUnknownKeyword=F("tsUnknownKeyword"),zN1=R5.TSVoidKeyword=F("tsVoidKeyword"),WN1=R5.TSThisType=F("tsThisType"),VN1=R5.TSFunctionType=F("tsFunctionType"),KN1=R5.TSConstructorType=F("tsConstructorType"),UN1=R5.TSTypeReference=F("tsTypeReference"),BN1=R5.TSTypePredicate=F("tsTypePredicate"),RN1=R5.TSTypeQuery=F("tsTypeQuery"),$N1=R5.TSTypeLiteral=F("tsTypeLiteral"),qN1=R5.TSArrayType=F("tsArrayType"),FN1=R5.TSTupleType=F("tsTupleType"),jN1=R5.TSOptionalType=F("tsOptionalType"),MN1=R5.TSRestType=F("tsRestType"),ON1=R5.TSNamedTupleMember=F("tsNamedTupleMember"),AN1=R5.TSUnionType=F("tsUnionType"),CN1=R5.TSIntersectionType=F("tsIntersectionType"),DN1=R5.TSConditionalType=F("tsConditionalType"),IN1=R5.TSInferType=F("tsInferType"),NN1=R5.TSParenthesizedType=F("tsParenthesizedType"),wN1=R5.TSTypeOperator=F("tsTypeOperator"),SN1=R5.TSIndexedAccessType=F("tsIndexedAccessType"),PN1=R5.TSMappedType=F("tsMappedType"),TN1=R5.TSTemplateLiteralType=F("tsTemplateLiteralType"),LN1=R5.TSLiteralType=F("tsLiteralType"),kN1=R5.TSExpressionWithTypeArguments=F("tsExpressionWithTypeArguments"),bN1=R5.TSInterfaceDeclaration=F("tsInterfaceDeclaration"),vN1=R5.TSInterfaceBody=F("tsInterfaceBody"),EN1=R5.TSTypeAliasDeclaration=F("tsTypeAliasDeclaration"),_N1=R5.TSInstantiationExpression=F("tsInstantiationExpression"),gN1=R5.TSAsExpression=F("tsAsExpression"),fN1=R5.TSSatisfiesExpression=F("tsSatisfiesExpression"),hN1=R5.TSTypeAssertion=F("tsTypeAssertion"),xN1=R5.TSEnumBody=F("tsEnumBody"),yN1=R5.TSEnumDeclaration=F("tsEnumDeclaration"),uN1=R5.TSEnumMember=F("tsEnumMember"),mN1=R5.TSModuleDeclaration=F("tsModuleDeclaration"),cN1=R5.TSModuleBlock=F("tsModuleBlock"),lN1=R5.TSImportType=F("tsImportType"),iN1=R5.TSImportEqualsDeclaration=F("tsImportEqualsDeclaration"),pN1=R5.TSExternalModuleReference=F("tsExternalModuleReference"),rN1=R5.TSNonNullExpression=F("tsNonNullExpression"),dN1=R5.TSExportAssignment=F("tsExportAssignment"),aN1=R5.TSNamespaceExportDeclaration=F("tsNamespaceExportDeclaration"),sN1=R5.TSTypeAnnotation=F("tsTypeAnnotation"),tN1=R5.TSTypeParameterInstantiation=F("tsTypeParameterInstantiation"),nN1=R5.TSTypeParameterDeclaration=F("tsTypeParameterDeclaration"),oN1=R5.TSTypeParameter=F("tsTypeParameter"),eN1=R5.NumberLiteral=_9.numberLiteral,Jw1=R5.RegexLiteral=_9.regexLiteral,Xw1=R5.RestProperty=_9.restProperty,Zw1=R5.SpreadProperty=_9.spreadProperty});var Q0=I((ZJ)=>{Object.defineProperty(ZJ,"__esModule",{value:!0});var I6=D6();Object.keys(I6).forEach(function(J){if(J==="default"||J==="__esModule")return;if(J in ZJ&&ZJ[J]===I6[J])return;Object.defineProperty(ZJ,J,{enumerable:!0,get:function(){return I6[J]}})});var N6=j5();Object.keys(N6).forEach(function(J){if(J==="default"||J==="__esModule")return;if(J in ZJ&&ZJ[J]===N6[J])return;Object.defineProperty(ZJ,J,{enumerable:!0,get:function(){return N6[J]}})})});var O5=I((M5)=>{Object.defineProperty(M5,"__esModule",{value:!0});M5.default=Hu;var Qu=Q0(),Yu=H1();function Hu(J,X){let Z=J.value.split(/\r\n|\n|\r/),Q=0;for(let H=0;H<Z.length;H++)if(/[^ \t]/.exec(Z[H]))Q=H;let Y="";for(let H=0;H<Z.length;H++){let G=Z[H],z=H===0,W=H===Z.length-1,V=H===Q,U=G.replace(/\t/g," ");if(!z)U=U.replace(/^ +/,"");if(!W)U=U.replace(/ +$/,"");if(U){if(!V)U+=" ";Y+=U}}if(Y)X.push((0,Yu.inherits)((0,Qu.stringLiteral)(Y),J))}});var C5=I((A5)=>{Object.defineProperty(A5,"__esModule",{value:!0});A5.default=Wu;var w6=E1(),zu=O5();function Wu(J){let X=[];for(let Z=0;Z<J.children.length;Z++){let Q=J.children[Z];if((0,w6.isJSXText)(Q)){(0,zu.default)(Q,X);continue}if((0,w6.isJSXExpressionContainer)(Q))Q=Q.expression;if((0,w6.isJSXEmptyExpression)(Q))continue;X.push(Q)}return X}});var S6=I((D5)=>{Object.defineProperty(D5,"__esModule",{value:!0});D5.default=Uu;var Ku=$0();function Uu(J){return!!(J&&Ku.VISITOR_KEYS[J.type])}});var N5=I((I5)=>{Object.defineProperty(I5,"__esModule",{value:!0});I5.default=$u;var Ru=S6();function $u(J){if(!(0,Ru.default)(J)){var X;let Z=(X=J==null?void 0:J.type)!=null?X:JSON.stringify(J);throw TypeError(`Not a valid node of type "${Z}"`)}}});var S5=I((w5)=>{Object.defineProperty(w5,"__esModule",{value:!0});w5.assertAccessor=gp;w5.assertAnyTypeAnnotation=om;w5.assertArgumentPlaceholder=Pl;w5.assertArrayExpression=ju;w5.assertArrayPattern=qm;w5.assertArrayTypeAnnotation=em;w5.assertArrowFunctionExpression=Fm;w5.assertAssignmentExpression=Mu;w5.assertAssignmentPattern=$m;w5.assertAwaitExpression=ym;w5.assertBigIntLiteral=mm;w5.assertBinary=Zp;w5.assertBinaryExpression=Ou;w5.assertBindExpression=Tl;w5.assertBlock=Hp;w5.assertBlockParent=Yp;w5.assertBlockStatement=Iu;w5.assertBooleanLiteral=iu;w5.assertBooleanLiteralTypeAnnotation=Xc;w5.assertBooleanTypeAnnotation=Jc;w5.assertBreakStatement=Nu;w5.assertCallExpression=wu;w5.assertCatchClause=Su;w5.assertClass=bp;w5.assertClassAccessorProperty=rm;w5.assertClassBody=jm;w5.assertClassDeclaration=Om;w5.assertClassExpression=Mm;w5.assertClassImplements=Qc;w5.assertClassMethod=bm;w5.assertClassPrivateMethod=am;w5.assertClassPrivateProperty=dm;w5.assertClassProperty=pm;w5.assertCompletionStatement=Wp;w5.assertConditional=Vp;w5.assertConditionalExpression=Pu;w5.assertContinueStatement=Tu;w5.assertDebuggerStatement=Lu;w5.assertDecimalLiteral=_l;w5.assertDeclaration=Mp;w5.assertDeclareClass=Yc;w5.assertDeclareExportAllDeclaration=Rc;w5.assertDeclareExportDeclaration=Bc;w5.assertDeclareFunction=Hc;w5.assertDeclareInterface=Gc;w5.assertDeclareModule=zc;w5.assertDeclareModuleExports=Wc;w5.assertDeclareOpaqueType=Kc;w5.assertDeclareTypeAlias=Vc;w5.assertDeclareVariable=Uc;w5.assertDeclaredPredicate=$c;w5.assertDecorator=Ll;w5.assertDirective=Cu;w5.assertDirectiveLiteral=Du;w5.assertDoExpression=kl;w5.assertDoWhileStatement=ku;w5.assertEmptyStatement=bu;w5.assertEmptyTypeAnnotation=wc;w5.assertEnumBody=cp;w5.assertEnumBooleanBody=ec;w5.assertEnumBooleanMember=Ql;w5.assertEnumDeclaration=oc;w5.assertEnumDefaultedMember=Gl;w5.assertEnumMember=lp;w5.assertEnumNumberBody=Jl;w5.assertEnumNumberMember=Yl;w5.assertEnumStringBody=Xl;w5.assertEnumStringMember=Hl;w5.assertEnumSymbolBody=Zl;w5.assertExistsTypeAnnotation=qc;w5.assertExportAllDeclaration=Am;w5.assertExportDeclaration=Ep;w5.assertExportDefaultDeclaration=Cm;w5.assertExportDefaultSpecifier=bl;w5.assertExportNamedDeclaration=Dm;w5.assertExportNamespaceSpecifier=cm;w5.assertExportSpecifier=Im;w5.assertExpression=Xp;w5.assertExpressionStatement=vu;w5.assertExpressionWrapper=Bp;w5.assertFile=Eu;w5.assertFlow=hp;w5.assertFlowBaseAnnotation=yp;w5.assertFlowDeclaration=up;w5.assertFlowPredicate=mp;w5.assertFlowType=xp;w5.assertFor=Rp;w5.assertForInStatement=_u;w5.assertForOfStatement=Nm;w5.assertForStatement=gu;w5.assertForXStatement=$p;w5.assertFunction=qp;w5.assertFunctionDeclaration=fu;w5.assertFunctionExpression=hu;w5.assertFunctionParameter=Op;w5.assertFunctionParent=Fp;w5.assertFunctionTypeAnnotation=Fc;w5.assertFunctionTypeParam=jc;w5.assertGenericTypeAnnotation=Mc;w5.assertIdentifier=xu;w5.assertIfStatement=yu;w5.assertImmutable=Np;w5.assertImport=um;w5.assertImportAttribute=nm;w5.assertImportDeclaration=wm;w5.assertImportDefaultSpecifier=Sm;w5.assertImportExpression=Lm;w5.assertImportNamespaceSpecifier=Pm;w5.assertImportOrExportDeclaration=vp;w5.assertImportSpecifier=Tm;w5.assertIndexedAccessType=zl;w5.assertInferredPredicate=Oc;w5.assertInterfaceDeclaration=Cc;w5.assertInterfaceExtends=Ac;w5.assertInterfaceTypeAnnotation=Dc;w5.assertInterpreterDirective=Au;w5.assertIntersectionTypeAnnotation=Ic;w5.assertJSX=ip;w5.assertJSXAttribute=Vl;w5.assertJSXClosingElement=Kl;w5.assertJSXClosingFragment=Il;w5.assertJSXElement=Ul;w5.assertJSXEmptyExpression=Bl;w5.assertJSXExpressionContainer=Rl;w5.assertJSXFragment=Cl;w5.assertJSXIdentifier=ql;w5.assertJSXMemberExpression=Fl;w5.assertJSXNamespacedName=jl;w5.assertJSXOpeningElement=Ml;w5.assertJSXOpeningFragment=Dl;w5.assertJSXSpreadAttribute=Ol;w5.assertJSXSpreadChild=$l;w5.assertJSXText=Al;w5.assertLVal=Cp;w5.assertLabeledStatement=uu;w5.assertLiteral=Ip;w5.assertLogicalExpression=ru;w5.assertLoop=Kp;w5.assertMemberExpression=du;w5.assertMetaProperty=km;w5.assertMethod=Sp;w5.assertMiscellaneous=pp;w5.assertMixedTypeAnnotation=Nc;w5.assertModuleDeclaration=Jr;w5.assertModuleExpression=gl;w5.assertModuleSpecifier=_p;w5.assertNewExpression=au;w5.assertNoop=Nl;w5.assertNullLiteral=lu;w5.assertNullLiteralTypeAnnotation=Zc;w5.assertNullableTypeAnnotation=Sc;w5.assertNumberLiteral=tp;w5.assertNumberLiteralTypeAnnotation=Pc;w5.assertNumberTypeAnnotation=Tc;w5.assertNumericLiteral=cu;w5.assertObjectExpression=tu;w5.assertObjectMember=Pp;w5.assertObjectMethod=nu;w5.assertObjectPattern=vm;w5.assertObjectProperty=ou;w5.assertObjectTypeAnnotation=Lc;w5.assertObjectTypeCallProperty=bc;w5.assertObjectTypeIndexer=vc;w5.assertObjectTypeInternalSlot=kc;w5.assertObjectTypeProperty=Ec;w5.assertObjectTypeSpreadProperty=_c;w5.assertOpaqueType=gc;w5.assertOptionalCallExpression=im;w5.assertOptionalIndexedAccessType=Wl;w5.assertOptionalMemberExpression=lm;w5.assertParenthesizedExpression=Zm;w5.assertPattern=kp;w5.assertPatternLike=Ap;w5.assertPipelineBareFunction=xl;w5.assertPipelinePrimaryTopicReference=yl;w5.assertPipelineTopicExpression=hl;w5.assertPlaceholder=wl;w5.assertPrivate=fp;w5.assertPrivateName=sm;w5.assertProgram=su;w5.assertProperty=Tp;w5.assertPureish=jp;w5.assertQualifiedTypeIdentifier=fc;w5.assertRecordExpression=vl;w5.assertRegExpLiteral=pu;w5.assertRegexLiteral=np;w5.assertRestElement=eu;w5.assertRestProperty=op;w5.assertReturnStatement=Jm;w5.assertScopable=Qp;w5.assertSequenceExpression=Xm;w5.assertSpreadElement=Em;w5.assertSpreadProperty=ep;w5.assertStandardized=Jp;w5.assertStatement=Gp;w5.assertStaticBlock=tm;w5.assertStringLiteral=mu;w5.assertStringLiteralTypeAnnotation=hc;w5.assertStringTypeAnnotation=xc;w5.assertSuper=_m;w5.assertSwitchCase=Qm;w5.assertSwitchStatement=Ym;w5.assertSymbolTypeAnnotation=yc;w5.assertTSAnyKeyword=tl;w5.assertTSArrayType=Fi;w5.assertTSAsExpression=fi;w5.assertTSBaseType=sp;w5.assertTSBigIntKeyword=ol;w5.assertTSBooleanKeyword=nl;w5.assertTSCallSignatureDeclaration=pl;w5.assertTSConditionalType=Ii;w5.assertTSConstructSignatureDeclaration=rl;w5.assertTSConstructorType=Ui;w5.assertTSDeclareFunction=cl;w5.assertTSDeclareMethod=ll;w5.assertTSEntityName=Dp;w5.assertTSEnumBody=yi;w5.assertTSEnumDeclaration=ui;w5.assertTSEnumMember=mi;w5.assertTSExportAssignment=ai;w5.assertTSExpressionWithTypeArguments=bi;w5.assertTSExternalModuleReference=ri;w5.assertTSFunctionType=Ki;w5.assertTSImportEqualsDeclaration=pi;w5.assertTSImportType=ii;w5.assertTSIndexSignature=sl;w5.assertTSIndexedAccessType=Pi;w5.assertTSInferType=Ni;w5.assertTSInstantiationExpression=gi;w5.assertTSInterfaceBody=Ei;w5.assertTSInterfaceDeclaration=vi;w5.assertTSIntersectionType=Di;w5.assertTSIntrinsicKeyword=el;w5.assertTSLiteralType=ki;w5.assertTSMappedType=Ti;w5.assertTSMethodSignature=al;w5.assertTSModuleBlock=li;w5.assertTSModuleDeclaration=ci;w5.assertTSNamedTupleMember=Ai;w5.assertTSNamespaceExportDeclaration=si;w5.assertTSNeverKeyword=Ji;w5.assertTSNonNullExpression=di;w5.assertTSNullKeyword=Xi;w5.assertTSNumberKeyword=Zi;w5.assertTSObjectKeyword=Qi;w5.assertTSOptionalType=Mi;w5.assertTSParameterProperty=ml;w5.assertTSParenthesizedType=wi;w5.assertTSPropertySignature=dl;w5.assertTSQualifiedName=il;w5.assertTSRestType=Oi;w5.assertTSSatisfiesExpression=hi;w5.assertTSStringKeyword=Yi;w5.assertTSSymbolKeyword=Hi;w5.assertTSTemplateLiteralType=Li;w5.assertTSThisType=Vi;w5.assertTSTupleType=ji;w5.assertTSType=ap;w5.assertTSTypeAliasDeclaration=_i;w5.assertTSTypeAnnotation=ti;w5.assertTSTypeAssertion=xi;w5.assertTSTypeElement=dp;w5.assertTSTypeLiteral=qi;w5.assertTSTypeOperator=Si;w5.assertTSTypeParameter=ei;w5.assertTSTypeParameterDeclaration=oi;w5.assertTSTypeParameterInstantiation=ni;w5.assertTSTypePredicate=Ri;w5.assertTSTypeQuery=$i;w5.assertTSTypeReference=Bi;w5.assertTSUndefinedKeyword=Gi;w5.assertTSUnionType=Ci;w5.assertTSUnknownKeyword=zi;w5.assertTSVoidKeyword=Wi;w5.assertTaggedTemplateExpression=gm;w5.assertTemplateElement=fm;w5.assertTemplateLiteral=hm;w5.assertTerminatorless=zp;w5.assertThisExpression=Hm;w5.assertThisTypeAnnotation=uc;w5.assertThrowStatement=Gm;w5.assertTopicReference=fl;w5.assertTryStatement=zm;w5.assertTupleExpression=El;w5.assertTupleTypeAnnotation=mc;w5.assertTypeAlias=lc;w5.assertTypeAnnotation=ic;w5.assertTypeCastExpression=pc;w5.assertTypeParameter=rc;w5.assertTypeParameterDeclaration=dc;w5.assertTypeParameterInstantiation=ac;w5.assertTypeScript=rp;w5.assertTypeofTypeAnnotation=cc;w5.assertUnaryExpression=Wm;w5.assertUnaryLike=Lp;w5.assertUnionTypeAnnotation=sc;w5.assertUpdateExpression=Vm;w5.assertUserWhitespacable=wp;w5.assertV8IntrinsicIdentifier=Sl;w5.assertVariableDeclaration=Km;w5.assertVariableDeclarator=Um;w5.assertVariance=tc;w5.assertVoidPattern=ul;w5.assertVoidTypeAnnotation=nc;w5.assertWhile=Up;w5.assertWhileStatement=Bm;w5.assertWithStatement=Rm;w5.assertYieldExpression=xm;var Fu=aJ(),g9=dJ();function B(J,X,Z){if(!(0,Fu.default)(J,X,Z))throw Error(`Expected type "${J}" with option ${JSON.stringify(Z)}, but instead got "${X.type}".`)}function ju(J,X){B("ArrayExpression",J,X)}function Mu(J,X){B("AssignmentExpression",J,X)}function Ou(J,X){B("BinaryExpression",J,X)}function Au(J,X){B("InterpreterDirective",J,X)}function Cu(J,X){B("Directive",J,X)}function Du(J,X){B("DirectiveLiteral",J,X)}function Iu(J,X){B("BlockStatement",J,X)}function Nu(J,X){B("BreakStatement",J,X)}function wu(J,X){B("CallExpression",J,X)}function Su(J,X){B("CatchClause",J,X)}function Pu(J,X){B("ConditionalExpression",J,X)}function Tu(J,X){B("ContinueStatement",J,X)}function Lu(J,X){B("DebuggerStatement",J,X)}function ku(J,X){B("DoWhileStatement",J,X)}function bu(J,X){B("EmptyStatement",J,X)}function vu(J,X){B("ExpressionStatement",J,X)}function Eu(J,X){B("File",J,X)}function _u(J,X){B("ForInStatement",J,X)}function gu(J,X){B("ForStatement",J,X)}function fu(J,X){B("FunctionDeclaration",J,X)}function hu(J,X){B("FunctionExpression",J,X)}function xu(J,X){B("Identifier",J,X)}function yu(J,X){B("IfStatement",J,X)}function uu(J,X){B("LabeledStatement",J,X)}function mu(J,X){B("StringLiteral",J,X)}function cu(J,X){B("NumericLiteral",J,X)}function lu(J,X){B("NullLiteral",J,X)}function iu(J,X){B("BooleanLiteral",J,X)}function pu(J,X){B("RegExpLiteral",J,X)}function ru(J,X){B("LogicalExpression",J,X)}function du(J,X){B("MemberExpression",J,X)}function au(J,X){B("NewExpression",J,X)}function su(J,X){B("Program",J,X)}function tu(J,X){B("ObjectExpression",J,X)}function nu(J,X){B("ObjectMethod",J,X)}function ou(J,X){B("ObjectProperty",J,X)}function eu(J,X){B("RestElement",J,X)}function Jm(J,X){B("ReturnStatement",J,X)}function Xm(J,X){B("SequenceExpression",J,X)}function Zm(J,X){B("ParenthesizedExpression",J,X)}function Qm(J,X){B("SwitchCase",J,X)}function Ym(J,X){B("SwitchStatement",J,X)}function Hm(J,X){B("ThisExpression",J,X)}function Gm(J,X){B("ThrowStatement",J,X)}function zm(J,X){B("TryStatement",J,X)}function Wm(J,X){B("UnaryExpression",J,X)}function Vm(J,X){B("UpdateExpression",J,X)}function Km(J,X){B("VariableDeclaration",J,X)}function Um(J,X){B("VariableDeclarator",J,X)}function Bm(J,X){B("WhileStatement",J,X)}function Rm(J,X){B("WithStatement",J,X)}function $m(J,X){B("AssignmentPattern",J,X)}function qm(J,X){B("ArrayPattern",J,X)}function Fm(J,X){B("ArrowFunctionExpression",J,X)}function jm(J,X){B("ClassBody",J,X)}function Mm(J,X){B("ClassExpression",J,X)}function Om(J,X){B("ClassDeclaration",J,X)}function Am(J,X){B("ExportAllDeclaration",J,X)}function Cm(J,X){B("ExportDefaultDeclaration",J,X)}function Dm(J,X){B("ExportNamedDeclaration",J,X)}function Im(J,X){B("ExportSpecifier",J,X)}function Nm(J,X){B("ForOfStatement",J,X)}function wm(J,X){B("ImportDeclaration",J,X)}function Sm(J,X){B("ImportDefaultSpecifier",J,X)}function Pm(J,X){B("ImportNamespaceSpecifier",J,X)}function Tm(J,X){B("ImportSpecifier",J,X)}function Lm(J,X){B("ImportExpression",J,X)}function km(J,X){B("MetaProperty",J,X)}function bm(J,X){B("ClassMethod",J,X)}function vm(J,X){B("ObjectPattern",J,X)}function Em(J,X){B("SpreadElement",J,X)}function _m(J,X){B("Super",J,X)}function gm(J,X){B("TaggedTemplateExpression",J,X)}function fm(J,X){B("TemplateElement",J,X)}function hm(J,X){B("TemplateLiteral",J,X)}function xm(J,X){B("YieldExpression",J,X)}function ym(J,X){B("AwaitExpression",J,X)}function um(J,X){B("Import",J,X)}function mm(J,X){B("BigIntLiteral",J,X)}function cm(J,X){B("ExportNamespaceSpecifier",J,X)}function lm(J,X){B("OptionalMemberExpression",J,X)}function im(J,X){B("OptionalCallExpression",J,X)}function pm(J,X){B("ClassProperty",J,X)}function rm(J,X){B("ClassAccessorProperty",J,X)}function dm(J,X){B("ClassPrivateProperty",J,X)}function am(J,X){B("ClassPrivateMethod",J,X)}function sm(J,X){B("PrivateName",J,X)}function tm(J,X){B("StaticBlock",J,X)}function nm(J,X){B("ImportAttribute",J,X)}function om(J,X){B("AnyTypeAnnotation",J,X)}function em(J,X){B("ArrayTypeAnnotation",J,X)}function Jc(J,X){B("BooleanTypeAnnotation",J,X)}function Xc(J,X){B("BooleanLiteralTypeAnnotation",J,X)}function Zc(J,X){B("NullLiteralTypeAnnotation",J,X)}function Qc(J,X){B("ClassImplements",J,X)}function Yc(J,X){B("DeclareClass",J,X)}function Hc(J,X){B("DeclareFunction",J,X)}function Gc(J,X){B("DeclareInterface",J,X)}function zc(J,X){B("DeclareModule",J,X)}function Wc(J,X){B("DeclareModuleExports",J,X)}function Vc(J,X){B("DeclareTypeAlias",J,X)}function Kc(J,X){B("DeclareOpaqueType",J,X)}function Uc(J,X){B("DeclareVariable",J,X)}function Bc(J,X){B("DeclareExportDeclaration",J,X)}function Rc(J,X){B("DeclareExportAllDeclaration",J,X)}function $c(J,X){B("DeclaredPredicate",J,X)}function qc(J,X){B("ExistsTypeAnnotation",J,X)}function Fc(J,X){B("FunctionTypeAnnotation",J,X)}function jc(J,X){B("FunctionTypeParam",J,X)}function Mc(J,X){B("GenericTypeAnnotation",J,X)}function Oc(J,X){B("InferredPredicate",J,X)}function Ac(J,X){B("InterfaceExtends",J,X)}function Cc(J,X){B("InterfaceDeclaration",J,X)}function Dc(J,X){B("InterfaceTypeAnnotation",J,X)}function Ic(J,X){B("IntersectionTypeAnnotation",J,X)}function Nc(J,X){B("MixedTypeAnnotation",J,X)}function wc(J,X){B("EmptyTypeAnnotation",J,X)}function Sc(J,X){B("NullableTypeAnnotation",J,X)}function Pc(J,X){B("NumberLiteralTypeAnnotation",J,X)}function Tc(J,X){B("NumberTypeAnnotation",J,X)}function Lc(J,X){B("ObjectTypeAnnotation",J,X)}function kc(J,X){B("ObjectTypeInternalSlot",J,X)}function bc(J,X){B("ObjectTypeCallProperty",J,X)}function vc(J,X){B("ObjectTypeIndexer",J,X)}function Ec(J,X){B("ObjectTypeProperty",J,X)}function _c(J,X){B("ObjectTypeSpreadProperty",J,X)}function gc(J,X){B("OpaqueType",J,X)}function fc(J,X){B("QualifiedTypeIdentifier",J,X)}function hc(J,X){B("StringLiteralTypeAnnotation",J,X)}function xc(J,X){B("StringTypeAnnotation",J,X)}function yc(J,X){B("SymbolTypeAnnotation",J,X)}function uc(J,X){B("ThisTypeAnnotation",J,X)}function mc(J,X){B("TupleTypeAnnotation",J,X)}function cc(J,X){B("TypeofTypeAnnotation",J,X)}function lc(J,X){B("TypeAlias",J,X)}function ic(J,X){B("TypeAnnotation",J,X)}function pc(J,X){B("TypeCastExpression",J,X)}function rc(J,X){B("TypeParameter",J,X)}function dc(J,X){B("TypeParameterDeclaration",J,X)}function ac(J,X){B("TypeParameterInstantiation",J,X)}function sc(J,X){B("UnionTypeAnnotation",J,X)}function tc(J,X){B("Variance",J,X)}function nc(J,X){B("VoidTypeAnnotation",J,X)}function oc(J,X){B("EnumDeclaration",J,X)}function ec(J,X){B("EnumBooleanBody",J,X)}function Jl(J,X){B("EnumNumberBody",J,X)}function Xl(J,X){B("EnumStringBody",J,X)}function Zl(J,X){B("EnumSymbolBody",J,X)}function Ql(J,X){B("EnumBooleanMember",J,X)}function Yl(J,X){B("EnumNumberMember",J,X)}function Hl(J,X){B("EnumStringMember",J,X)}function Gl(J,X){B("EnumDefaultedMember",J,X)}function zl(J,X){B("IndexedAccessType",J,X)}function Wl(J,X){B("OptionalIndexedAccessType",J,X)}function Vl(J,X){B("JSXAttribute",J,X)}function Kl(J,X){B("JSXClosingElement",J,X)}function Ul(J,X){B("JSXElement",J,X)}function Bl(J,X){B("JSXEmptyExpression",J,X)}function Rl(J,X){B("JSXExpressionContainer",J,X)}function $l(J,X){B("JSXSpreadChild",J,X)}function ql(J,X){B("JSXIdentifier",J,X)}function Fl(J,X){B("JSXMemberExpression",J,X)}function jl(J,X){B("JSXNamespacedName",J,X)}function Ml(J,X){B("JSXOpeningElement",J,X)}function Ol(J,X){B("JSXSpreadAttribute",J,X)}function Al(J,X){B("JSXText",J,X)}function Cl(J,X){B("JSXFragment",J,X)}function Dl(J,X){B("JSXOpeningFragment",J,X)}function Il(J,X){B("JSXClosingFragment",J,X)}function Nl(J,X){B("Noop",J,X)}function wl(J,X){B("Placeholder",J,X)}function Sl(J,X){B("V8IntrinsicIdentifier",J,X)}function Pl(J,X){B("ArgumentPlaceholder",J,X)}function Tl(J,X){B("BindExpression",J,X)}function Ll(J,X){B("Decorator",J,X)}function kl(J,X){B("DoExpression",J,X)}function bl(J,X){B("ExportDefaultSpecifier",J,X)}function vl(J,X){B("RecordExpression",J,X)}function El(J,X){B("TupleExpression",J,X)}function _l(J,X){B("DecimalLiteral",J,X)}function gl(J,X){B("ModuleExpression",J,X)}function fl(J,X){B("TopicReference",J,X)}function hl(J,X){B("PipelineTopicExpression",J,X)}function xl(J,X){B("PipelineBareFunction",J,X)}function yl(J,X){B("PipelinePrimaryTopicReference",J,X)}function ul(J,X){B("VoidPattern",J,X)}function ml(J,X){B("TSParameterProperty",J,X)}function cl(J,X){B("TSDeclareFunction",J,X)}function ll(J,X){B("TSDeclareMethod",J,X)}function il(J,X){B("TSQualifiedName",J,X)}function pl(J,X){B("TSCallSignatureDeclaration",J,X)}function rl(J,X){B("TSConstructSignatureDeclaration",J,X)}function dl(J,X){B("TSPropertySignature",J,X)}function al(J,X){B("TSMethodSignature",J,X)}function sl(J,X){B("TSIndexSignature",J,X)}function tl(J,X){B("TSAnyKeyword",J,X)}function nl(J,X){B("TSBooleanKeyword",J,X)}function ol(J,X){B("TSBigIntKeyword",J,X)}function el(J,X){B("TSIntrinsicKeyword",J,X)}function Ji(J,X){B("TSNeverKeyword",J,X)}function Xi(J,X){B("TSNullKeyword",J,X)}function Zi(J,X){B("TSNumberKeyword",J,X)}function Qi(J,X){B("TSObjectKeyword",J,X)}function Yi(J,X){B("TSStringKeyword",J,X)}function Hi(J,X){B("TSSymbolKeyword",J,X)}function Gi(J,X){B("TSUndefinedKeyword",J,X)}function zi(J,X){B("TSUnknownKeyword",J,X)}function Wi(J,X){B("TSVoidKeyword",J,X)}function Vi(J,X){B("TSThisType",J,X)}function Ki(J,X){B("TSFunctionType",J,X)}function Ui(J,X){B("TSConstructorType",J,X)}function Bi(J,X){B("TSTypeReference",J,X)}function Ri(J,X){B("TSTypePredicate",J,X)}function $i(J,X){B("TSTypeQuery",J,X)}function qi(J,X){B("TSTypeLiteral",J,X)}function Fi(J,X){B("TSArrayType",J,X)}function ji(J,X){B("TSTupleType",J,X)}function Mi(J,X){B("TSOptionalType",J,X)}function Oi(J,X){B("TSRestType",J,X)}function Ai(J,X){B("TSNamedTupleMember",J,X)}function Ci(J,X){B("TSUnionType",J,X)}function Di(J,X){B("TSIntersectionType",J,X)}function Ii(J,X){B("TSConditionalType",J,X)}function Ni(J,X){B("TSInferType",J,X)}function wi(J,X){B("TSParenthesizedType",J,X)}function Si(J,X){B("TSTypeOperator",J,X)}function Pi(J,X){B("TSIndexedAccessType",J,X)}function Ti(J,X){B("TSMappedType",J,X)}function Li(J,X){B("TSTemplateLiteralType",J,X)}function ki(J,X){B("TSLiteralType",J,X)}function bi(J,X){B("TSExpressionWithTypeArguments",J,X)}function vi(J,X){B("TSInterfaceDeclaration",J,X)}function Ei(J,X){B("TSInterfaceBody",J,X)}function _i(J,X){B("TSTypeAliasDeclaration",J,X)}function gi(J,X){B("TSInstantiationExpression",J,X)}function fi(J,X){B("TSAsExpression",J,X)}function hi(J,X){B("TSSatisfiesExpression",J,X)}function xi(J,X){B("TSTypeAssertion",J,X)}function yi(J,X){B("TSEnumBody",J,X)}function ui(J,X){B("TSEnumDeclaration",J,X)}function mi(J,X){B("TSEnumMember",J,X)}function ci(J,X){B("TSModuleDeclaration",J,X)}function li(J,X){B("TSModuleBlock",J,X)}function ii(J,X){B("TSImportType",J,X)}function pi(J,X){B("TSImportEqualsDeclaration",J,X)}function ri(J,X){B("TSExternalModuleReference",J,X)}function di(J,X){B("TSNonNullExpression",J,X)}function ai(J,X){B("TSExportAssignment",J,X)}function si(J,X){B("TSNamespaceExportDeclaration",J,X)}function ti(J,X){B("TSTypeAnnotation",J,X)}function ni(J,X){B("TSTypeParameterInstantiation",J,X)}function oi(J,X){B("TSTypeParameterDeclaration",J,X)}function ei(J,X){B("TSTypeParameter",J,X)}function Jp(J,X){B("Standardized",J,X)}function Xp(J,X){B("Expression",J,X)}function Zp(J,X){B("Binary",J,X)}function Qp(J,X){B("Scopable",J,X)}function Yp(J,X){B("BlockParent",J,X)}function Hp(J,X){B("Block",J,X)}function Gp(J,X){B("Statement",J,X)}function zp(J,X){B("Terminatorless",J,X)}function Wp(J,X){B("CompletionStatement",J,X)}function Vp(J,X){B("Conditional",J,X)}function Kp(J,X){B("Loop",J,X)}function Up(J,X){B("While",J,X)}function Bp(J,X){B("ExpressionWrapper",J,X)}function Rp(J,X){B("For",J,X)}function $p(J,X){B("ForXStatement",J,X)}function qp(J,X){B("Function",J,X)}function Fp(J,X){B("FunctionParent",J,X)}function jp(J,X){B("Pureish",J,X)}function Mp(J,X){B("Declaration",J,X)}function Op(J,X){B("FunctionParameter",J,X)}function Ap(J,X){B("PatternLike",J,X)}function Cp(J,X){B("LVal",J,X)}function Dp(J,X){B("TSEntityName",J,X)}function Ip(J,X){B("Literal",J,X)}function Np(J,X){B("Immutable",J,X)}function wp(J,X){B("UserWhitespacable",J,X)}function Sp(J,X){B("Method",J,X)}function Pp(J,X){B("ObjectMember",J,X)}function Tp(J,X){B("Property",J,X)}function Lp(J,X){B("UnaryLike",J,X)}function kp(J,X){B("Pattern",J,X)}function bp(J,X){B("Class",J,X)}function vp(J,X){B("ImportOrExportDeclaration",J,X)}function Ep(J,X){B("ExportDeclaration",J,X)}function _p(J,X){B("ModuleSpecifier",J,X)}function gp(J,X){B("Accessor",J,X)}function fp(J,X){B("Private",J,X)}function hp(J,X){B("Flow",J,X)}function xp(J,X){B("FlowType",J,X)}function yp(J,X){B("FlowBaseAnnotation",J,X)}function up(J,X){B("FlowDeclaration",J,X)}function mp(J,X){B("FlowPredicate",J,X)}function cp(J,X){B("EnumBody",J,X)}function lp(J,X){B("EnumMember",J,X)}function ip(J,X){B("JSX",J,X)}function pp(J,X){B("Miscellaneous",J,X)}function rp(J,X){B("TypeScript",J,X)}function dp(J,X){B("TSTypeElement",J,X)}function ap(J,X){B("TSType",J,X)}function sp(J,X){B("TSBaseType",J,X)}function tp(J,X){(0,g9.default)("assertNumberLiteral","assertNumericLiteral"),B("NumberLiteral",J,X)}function np(J,X){(0,g9.default)("assertRegexLiteral","assertRegExpLiteral"),B("RegexLiteral",J,X)}function op(J,X){(0,g9.default)("assertRestProperty","assertRestElement"),B("RestProperty",J,X)}function ep(J,X){(0,g9.default)("assertSpreadProperty","assertSpreadElement"),B("SpreadProperty",J,X)}function Jr(J,X){(0,g9.default)("assertModuleDeclaration","assertImportOrExportDeclaration"),B("ModuleDeclaration",J,X)}});var L5=I((P5)=>{Object.defineProperty(P5,"__esModule",{value:!0});P5.default=void 0;var O0=Q0(),Kw1=P5.default=yn;function yn(J){switch(J){case"string":return(0,O0.stringTypeAnnotation)();case"number":return(0,O0.numberTypeAnnotation)();case"undefined":return(0,O0.voidTypeAnnotation)();case"boolean":return(0,O0.booleanTypeAnnotation)();case"function":return(0,O0.genericTypeAnnotation)((0,O0.identifier)("Function"));case"object":return(0,O0.genericTypeAnnotation)((0,O0.identifier)("Object"));case"symbol":return(0,O0.genericTypeAnnotation)((0,O0.identifier)("Symbol"));case"bigint":return(0,O0.anyTypeAnnotation)()}throw Error("Invalid typeof value: "+J)}});var P6=I((v5)=>{Object.defineProperty(v5,"__esModule",{value:!0});v5.default=b5;var f9=E1();function k5(J){return(0,f9.isIdentifier)(J)?J.name:`${J.id.name}.${k5(J.qualification)}`}function b5(J){let X=Array.from(J),Z=new Map,Q=new Map,Y=new Set,H=[];for(let G=0;G<X.length;G++){let z=X[G];if(!z)continue;if(H.includes(z))continue;if((0,f9.isAnyTypeAnnotation)(z))return[z];if((0,f9.isFlowBaseAnnotation)(z)){Q.set(z.type,z);continue}if((0,f9.isUnionTypeAnnotation)(z)){if(!Y.has(z.types))X.push(...z.types),Y.add(z.types);continue}if((0,f9.isGenericTypeAnnotation)(z)){let W=k5(z.id);if(Z.has(W)){let V=Z.get(W);if(V.typeParameters){if(z.typeParameters)V.typeParameters.params.push(...z.typeParameters.params),V.typeParameters.params=b5(V.typeParameters.params)}else V=z.typeParameters}else Z.set(W,z);continue}H.push(z)}for(let[,G]of Q)H.push(G);for(let[,G]of Z)H.push(G);return H}});var _5=I((E5)=>{Object.defineProperty(E5,"__esModule",{value:!0});E5.default=ln;var mn=Q0(),cn=P6();function ln(J){let X=(0,cn.default)(J);if(X.length===1)return X[0];else return(0,mn.unionTypeAnnotation)(X)}});var x5=I((h5)=>{Object.defineProperty(h5,"__esModule",{value:!0});h5.default=f5;var J9=E1();function g5(J){return(0,J9.isIdentifier)(J)?J.name:(0,J9.isThisExpression)(J)?"this":`${J.right.name}.${g5(J.left)}`}function f5(J){let X=Array.from(J),Z=new Map,Q=new Map,Y=new Set,H=[];for(let G=0;G<X.length;G++){let z=X[G];if(!z)continue;if(H.includes(z))continue;if((0,J9.isTSAnyKeyword)(z))return[z];if((0,J9.isTSBaseType)(z)){Q.set(z.type,z);continue}if((0,J9.isTSUnionType)(z)){if(!Y.has(z.types))X.push(...z.types),Y.add(z.types);continue}let W="typeParameters";if((0,J9.isTSTypeReference)(z)&&z[W]){let V=z[W],U=g5(z.typeName);if(Z.has(U)){let $=Z.get(U),j=$[W];if(j)j.params.push(...V.params),j.params=f5(j.params);else $=V}else Z.set(U,z);continue}H.push(z)}for(let[,G]of Q)H.push(G);for(let[,G]of Z)H.push(G);return H}});var u5=I((y5)=>{Object.defineProperty(y5,"__esModule",{value:!0});y5.default=tn;var dn=Q0(),an=x5(),sn=E1();function tn(J){let X=J.map((Q)=>{return(0,sn.isTSTypeAnnotation)(Q)?Q.typeAnnotation:Q}),Z=(0,an.default)(X);if(Z.length===1)return Z[0];else return(0,dn.tsUnionType)(Z)}});var T6=I((c5)=>{Object.defineProperty(c5,"__esModule",{value:!0});c5.buildUndefinedNode=on;var m5=Q0();function on(){return(0,m5.unaryExpression)("void",(0,m5.numericLiteral)(0),!0)}});var QJ=I((d5)=>{Object.defineProperty(d5,"__esModule",{value:!0});d5.default=Jo;var l5=$0(),i5=E1(),{hasOwn:b0}={hasOwn:Function.call.bind(Object.prototype.hasOwnProperty)};function p5(J,X,Z,Q){if(J&&typeof J.type==="string")return r5(J,X,Z,Q);return J}function L6(J,X,Z,Q){if(Array.isArray(J))return J.map((Y)=>p5(Y,X,Z,Q));return p5(J,X,Z,Q)}function Jo(J,X=!0,Z=!1){return r5(J,X,Z,new Map)}function r5(J,X=!0,Z=!1,Q){if(!J)return J;let{type:Y}=J,H={type:J.type};if((0,i5.isIdentifier)(J)){if(H.name=J.name,b0(J,"optional")&&typeof J.optional==="boolean")H.optional=J.optional;if(b0(J,"typeAnnotation"))H.typeAnnotation=X?L6(J.typeAnnotation,!0,Z,Q):J.typeAnnotation;if(b0(J,"decorators"))H.decorators=X?L6(J.decorators,!0,Z,Q):J.decorators}else if(!b0(l5.NODE_FIELDS,Y))throw Error(`Unknown node type: "${Y}"`);else for(let G of Object.keys(l5.NODE_FIELDS[Y]))if(b0(J,G))if(X)H[G]=(0,i5.isFile)(J)&&G==="comments"?gX(J.comments,X,Z,Q):L6(J[G],!0,Z,Q);else H[G]=J[G];if(b0(J,"loc"))if(Z)H.loc=null;else H.loc=J.loc;if(b0(J,"leadingComments"))H.leadingComments=gX(J.leadingComments,X,Z,Q);if(b0(J,"innerComments"))H.innerComments=gX(J.innerComments,X,Z,Q);if(b0(J,"trailingComments"))H.trailingComments=gX(J.trailingComments,X,Z,Q);if(b0(J,"extra"))H.extra=Object.assign({},J.extra);return H}function gX(J,X,Z,Q){if(!J||!X)return J;return J.map((Y)=>{let H=Q.get(Y);if(H)return H;let{type:G,value:z,loc:W}=Y,V={type:G,value:z,loc:W};if(Z)V.loc=null;return Q.set(Y,V),V})}});var s5=I((a5)=>{Object.defineProperty(a5,"__esModule",{value:!0});a5.default=Qo;var Zo=QJ();function Qo(J){return(0,Zo.default)(J,!1)}});var n5=I((t5)=>{Object.defineProperty(t5,"__esModule",{value:!0});t5.default=Go;var Ho=QJ();function Go(J){return(0,Ho.default)(J)}});var e5=I((o5)=>{Object.defineProperty(o5,"__esModule",{value:!0});o5.default=Vo;var Wo=QJ();function Vo(J){return(0,Wo.default)(J,!0,!0)}});var XQ=I((JQ)=>{Object.defineProperty(JQ,"__esModule",{value:!0});JQ.default=Bo;var Uo=QJ();function Bo(J){return(0,Uo.default)(J,!1,!0)}});var k6=I((ZQ)=>{Object.defineProperty(ZQ,"__esModule",{value:!0});ZQ.default=$o;function $o(J,X,Z){if(!Z||!J)return J;let Q=`${X}Comments`;if(J[Q])if(X==="leading")J[Q]=Z.concat(J[Q]);else J[Q].push(...Z);else J[Q]=Z;return J}});var YQ=I((QQ)=>{Object.defineProperty(QQ,"__esModule",{value:!0});QQ.default=jo;var Fo=k6();function jo(J,X,Z,Q){return(0,Fo.default)(J,X,[{type:Q?"CommentLine":"CommentBlock",value:Z}])}});var fX=I((HQ)=>{Object.defineProperty(HQ,"__esModule",{value:!0});HQ.default=Oo;function Oo(J,X,Z){if(X&&Z)X[J]=Array.from(new Set([].concat(X[J],Z[J]).filter(Boolean)))}});var b6=I((GQ)=>{Object.defineProperty(GQ,"__esModule",{value:!0});GQ.default=Do;var Co=fX();function Do(J,X){(0,Co.default)("innerComments",J,X)}});var v6=I((zQ)=>{Object.defineProperty(zQ,"__esModule",{value:!0});zQ.default=wo;var No=fX();function wo(J,X){(0,No.default)("leadingComments",J,X)}});var E6=I((WQ)=>{Object.defineProperty(WQ,"__esModule",{value:!0});WQ.default=To;var Po=fX();function To(J,X){(0,Po.default)("trailingComments",J,X)}});var _6=I((VQ)=>{Object.defineProperty(VQ,"__esModule",{value:!0});VQ.default=Eo;var ko=E6(),bo=v6(),vo=b6();function Eo(J,X){return(0,ko.default)(J,X),(0,bo.default)(J,X),(0,vo.default)(J,X),J}});var UQ=I((KQ)=>{Object.defineProperty(KQ,"__esModule",{value:!0});KQ.default=fo;var go=tJ();function fo(J){return go.COMMENT_KEYS.forEach((X)=>{J[X]=null}),J}});var $Q=I((BQ)=>{Object.defineProperty(BQ,"__esModule",{value:!0});BQ.WHILE_TYPES=BQ.USERWHITESPACABLE_TYPES=BQ.UNARYLIKE_TYPES=BQ.TYPESCRIPT_TYPES=BQ.TSTYPE_TYPES=BQ.TSTYPEELEMENT_TYPES=BQ.TSENTITYNAME_TYPES=BQ.TSBASETYPE_TYPES=BQ.TERMINATORLESS_TYPES=BQ.STATEMENT_TYPES=BQ.STANDARDIZED_TYPES=BQ.SCOPABLE_TYPES=BQ.PUREISH_TYPES=BQ.PROPERTY_TYPES=BQ.PRIVATE_TYPES=BQ.PATTERN_TYPES=BQ.PATTERNLIKE_TYPES=BQ.OBJECTMEMBER_TYPES=BQ.MODULESPECIFIER_TYPES=BQ.MODULEDECLARATION_TYPES=BQ.MISCELLANEOUS_TYPES=BQ.METHOD_TYPES=BQ.LVAL_TYPES=BQ.LOOP_TYPES=BQ.LITERAL_TYPES=BQ.JSX_TYPES=BQ.IMPORTOREXPORTDECLARATION_TYPES=BQ.IMMUTABLE_TYPES=BQ.FUNCTION_TYPES=BQ.FUNCTIONPARENT_TYPES=BQ.FUNCTIONPARAMETER_TYPES=BQ.FOR_TYPES=BQ.FORXSTATEMENT_TYPES=BQ.FLOW_TYPES=BQ.FLOWTYPE_TYPES=BQ.FLOWPREDICATE_TYPES=BQ.FLOWDECLARATION_TYPES=BQ.FLOWBASEANNOTATION_TYPES=BQ.EXPRESSION_TYPES=BQ.EXPRESSIONWRAPPER_TYPES=BQ.EXPORTDECLARATION_TYPES=BQ.ENUMMEMBER_TYPES=BQ.ENUMBODY_TYPES=BQ.DECLARATION_TYPES=BQ.CONDITIONAL_TYPES=BQ.COMPLETIONSTATEMENT_TYPES=BQ.CLASS_TYPES=BQ.BLOCK_TYPES=BQ.BLOCKPARENT_TYPES=BQ.BINARY_TYPES=BQ.ACCESSOR_TYPES=void 0;var X1=$0(),kw1=BQ.STANDARDIZED_TYPES=X1.FLIPPED_ALIAS_KEYS.Standardized,bw1=BQ.EXPRESSION_TYPES=X1.FLIPPED_ALIAS_KEYS.Expression,vw1=BQ.BINARY_TYPES=X1.FLIPPED_ALIAS_KEYS.Binary,Ew1=BQ.SCOPABLE_TYPES=X1.FLIPPED_ALIAS_KEYS.Scopable,_w1=BQ.BLOCKPARENT_TYPES=X1.FLIPPED_ALIAS_KEYS.BlockParent,gw1=BQ.BLOCK_TYPES=X1.FLIPPED_ALIAS_KEYS.Block,fw1=BQ.STATEMENT_TYPES=X1.FLIPPED_ALIAS_KEYS.Statement,hw1=BQ.TERMINATORLESS_TYPES=X1.FLIPPED_ALIAS_KEYS.Terminatorless,xw1=BQ.COMPLETIONSTATEMENT_TYPES=X1.FLIPPED_ALIAS_KEYS.CompletionStatement,yw1=BQ.CONDITIONAL_TYPES=X1.FLIPPED_ALIAS_KEYS.Conditional,uw1=BQ.LOOP_TYPES=X1.FLIPPED_ALIAS_KEYS.Loop,mw1=BQ.WHILE_TYPES=X1.FLIPPED_ALIAS_KEYS.While,cw1=BQ.EXPRESSIONWRAPPER_TYPES=X1.FLIPPED_ALIAS_KEYS.ExpressionWrapper,lw1=BQ.FOR_TYPES=X1.FLIPPED_ALIAS_KEYS.For,iw1=BQ.FORXSTATEMENT_TYPES=X1.FLIPPED_ALIAS_KEYS.ForXStatement,pw1=BQ.FUNCTION_TYPES=X1.FLIPPED_ALIAS_KEYS.Function,rw1=BQ.FUNCTIONPARENT_TYPES=X1.FLIPPED_ALIAS_KEYS.FunctionParent,dw1=BQ.PUREISH_TYPES=X1.FLIPPED_ALIAS_KEYS.Pureish,aw1=BQ.DECLARATION_TYPES=X1.FLIPPED_ALIAS_KEYS.Declaration,sw1=BQ.FUNCTIONPARAMETER_TYPES=X1.FLIPPED_ALIAS_KEYS.FunctionParameter,tw1=BQ.PATTERNLIKE_TYPES=X1.FLIPPED_ALIAS_KEYS.PatternLike,nw1=BQ.LVAL_TYPES=X1.FLIPPED_ALIAS_KEYS.LVal,ow1=BQ.TSENTITYNAME_TYPES=X1.FLIPPED_ALIAS_KEYS.TSEntityName,ew1=BQ.LITERAL_TYPES=X1.FLIPPED_ALIAS_KEYS.Literal,JS1=BQ.IMMUTABLE_TYPES=X1.FLIPPED_ALIAS_KEYS.Immutable,XS1=BQ.USERWHITESPACABLE_TYPES=X1.FLIPPED_ALIAS_KEYS.UserWhitespacable,ZS1=BQ.METHOD_TYPES=X1.FLIPPED_ALIAS_KEYS.Method,QS1=BQ.OBJECTMEMBER_TYPES=X1.FLIPPED_ALIAS_KEYS.ObjectMember,YS1=BQ.PROPERTY_TYPES=X1.FLIPPED_ALIAS_KEYS.Property,HS1=BQ.UNARYLIKE_TYPES=X1.FLIPPED_ALIAS_KEYS.UnaryLike,GS1=BQ.PATTERN_TYPES=X1.FLIPPED_ALIAS_KEYS.Pattern,zS1=BQ.CLASS_TYPES=X1.FLIPPED_ALIAS_KEYS.Class,xo=BQ.IMPORTOREXPORTDECLARATION_TYPES=X1.FLIPPED_ALIAS_KEYS.ImportOrExportDeclaration,WS1=BQ.EXPORTDECLARATION_TYPES=X1.FLIPPED_ALIAS_KEYS.ExportDeclaration,VS1=BQ.MODULESPECIFIER_TYPES=X1.FLIPPED_ALIAS_KEYS.ModuleSpecifier,KS1=BQ.ACCESSOR_TYPES=X1.FLIPPED_ALIAS_KEYS.Accessor,US1=BQ.PRIVATE_TYPES=X1.FLIPPED_ALIAS_KEYS.Private,BS1=BQ.FLOW_TYPES=X1.FLIPPED_ALIAS_KEYS.Flow,RS1=BQ.FLOWTYPE_TYPES=X1.FLIPPED_ALIAS_KEYS.FlowType,$S1=BQ.FLOWBASEANNOTATION_TYPES=X1.FLIPPED_ALIAS_KEYS.FlowBaseAnnotation,qS1=BQ.FLOWDECLARATION_TYPES=X1.FLIPPED_ALIAS_KEYS.FlowDeclaration,FS1=BQ.FLOWPREDICATE_TYPES=X1.FLIPPED_ALIAS_KEYS.FlowPredicate,jS1=BQ.ENUMBODY_TYPES=X1.FLIPPED_ALIAS_KEYS.EnumBody,MS1=BQ.ENUMMEMBER_TYPES=X1.FLIPPED_ALIAS_KEYS.EnumMember,OS1=BQ.JSX_TYPES=X1.FLIPPED_ALIAS_KEYS.JSX,AS1=BQ.MISCELLANEOUS_TYPES=X1.FLIPPED_ALIAS_KEYS.Miscellaneous,CS1=BQ.TYPESCRIPT_TYPES=X1.FLIPPED_ALIAS_KEYS.TypeScript,DS1=BQ.TSTYPEELEMENT_TYPES=X1.FLIPPED_ALIAS_KEYS.TSTypeElement,IS1=BQ.TSTYPE_TYPES=X1.FLIPPED_ALIAS_KEYS.TSType,NS1=BQ.TSBASETYPE_TYPES=X1.FLIPPED_ALIAS_KEYS.TSBaseType,wS1=BQ.MODULEDECLARATION_TYPES=xo});var f6=I((qQ)=>{Object.defineProperty(qQ,"__esModule",{value:!0});qQ.default=fe;var hX=E1(),g6=Q0();function fe(J,X){if((0,hX.isBlockStatement)(J))return J;let Z=[];if((0,hX.isEmptyStatement)(J))Z=[];else{if(!(0,hX.isStatement)(J))if((0,hX.isFunction)(X))J=(0,g6.returnStatement)(J);else J=(0,g6.expressionStatement)(J);Z=[J]}return(0,g6.blockStatement)(Z)}});var jQ=I((FQ)=>{Object.defineProperty(FQ,"__esModule",{value:!0});FQ.default=ye;var xe=f6();function ye(J,X="body"){let Z=(0,xe.default)(J[X],J);return J[X]=Z,Z}});var h6=I((MQ)=>{Object.defineProperty(MQ,"__esModule",{value:!0});MQ.default=le;var me=sJ(),ce=k9();function le(J){J=J+"";let X="";for(let Z of J)X+=(0,ce.isIdentifierChar)(Z.codePointAt(0))?Z:"-";if(X=X.replace(/^[-0-9]+/,""),X=X.replace(/[-\s]+(.)?/g,function(Z,Q){return Q?Q.toUpperCase():""}),!(0,me.default)(X))X=`_${X}`;return X||"_"}});var AQ=I((OQ)=>{Object.defineProperty(OQ,"__esModule",{value:!0});OQ.default=re;var pe=h6();function re(J){if(J=(0,pe.default)(J),J==="eval"||J==="arguments")J="_"+J;return J}});var DQ=I((CQ)=>{Object.defineProperty(CQ,"__esModule",{value:!0});CQ.default=te;var ae=E1(),se=Q0();function te(J,X=J.key||J.property){if(!J.computed&&(0,ae.isIdentifier)(X))X=(0,se.stringLiteral)(X.name);return X}});var wQ=I((IQ)=>{Object.defineProperty(IQ,"__esModule",{value:!0});IQ.default=void 0;var h9=E1(),vS1=IQ.default=oe;function oe(J){if((0,h9.isExpressionStatement)(J))J=J.expression;if((0,h9.isExpression)(J))return J;if((0,h9.isClass)(J))J.type="ClassExpression",J.abstract=!1;else if((0,h9.isFunction)(J))J.type="FunctionExpression";if(!(0,h9.isExpression)(J))throw Error(`cannot turn ${J.type} to an expression`);return J}});var x6=I((TQ)=>{Object.defineProperty(TQ,"__esModule",{value:!0});TQ.default=x9;var ee=$0(),SQ=Symbol(),PQ=Symbol();function x9(J,X,Z){if(!J)return!1;let Q=ee.VISITOR_KEYS[J.type];if(!Q)return!1;Z=Z||{};let Y=X(J,Z);if(Y!==void 0)switch(Y){case SQ:return!1;case PQ:return!0}for(let H of Q){let G=J[H];if(!G)continue;if(Array.isArray(G)){for(let z of G)if(x9(z,X,Z))return!0}else if(x9(G,X,Z))return!0}return!1}x9.skip=SQ;x9.stop=PQ});var y6=I((kQ)=>{Object.defineProperty(kQ,"__esModule",{value:!0});kQ.default=Q11;var X11=tJ(),LQ=["tokens","start","end","loc","raw","rawValue"],Z11=[...X11.COMMENT_KEYS,"comments",...LQ];function Q11(J,X={}){let Z=X.preserveComments?LQ:Z11;for(let Y of Z)if(J[Y]!=null)J[Y]=void 0;for(let Y of Object.keys(J))if(Y[0]==="_"&&J[Y]!=null)J[Y]=void 0;let Q=Object.getOwnPropertySymbols(J);for(let Y of Q)J[Y]=null}});var u6=I((bQ)=>{Object.defineProperty(bQ,"__esModule",{value:!0});bQ.default=z11;var H11=x6(),G11=y6();function z11(J,X){return(0,H11.default)(J,G11.default,X),J}});var _Q=I((EQ)=>{Object.defineProperty(EQ,"__esModule",{value:!0});EQ.default=AJ;var vQ=E1(),V11=QJ(),K11=u6();function AJ(J,X=J.key){let Z;if(J.kind==="method")return AJ.increment()+"";else if((0,vQ.isIdentifier)(X))Z=X.name;else if((0,vQ.isStringLiteral)(X))Z=JSON.stringify(X.value);else Z=JSON.stringify((0,K11.default)((0,V11.default)(X)));if(J.computed)Z=`[${Z}]`;if(J.static)Z=`static:${Z}`;return Z}AJ.uid=0;AJ.increment=function(){if(AJ.uid>=Number.MAX_SAFE_INTEGER)return AJ.uid=0;else return AJ.uid++}});var hQ=I((gQ)=>{Object.defineProperty(gQ,"__esModule",{value:!0});gQ.default=void 0;var xX=E1(),B11=Q0(),xS1=gQ.default=R11;function R11(J,X){if((0,xX.isStatement)(J))return J;let Z=!1,Q;if((0,xX.isClass)(J))Z=!0,Q="ClassDeclaration";else if((0,xX.isFunction)(J))Z=!0,Q="FunctionDeclaration";else if((0,xX.isAssignmentExpression)(J))return(0,B11.expressionStatement)(J);if(Z&&!J.id)Q=!1;if(!Q)if(X)return!1;else throw Error(`cannot turn ${J.type} to a statement`);return J.type=Q,J}});var uQ=I((xQ)=>{Object.defineProperty(xQ,"__esModule",{value:!0});xQ.default=void 0;var $11=sJ(),x1=Q0(),uS1=xQ.default=m6,q11=Function.call.bind(Object.prototype.toString);function F11(J){return q11(J)==="[object RegExp]"}function j11(J){if(typeof J!=="object"||J===null||Object.prototype.toString.call(J)!=="[object Object]")return!1;let X=Object.getPrototypeOf(J);return X===null||Object.getPrototypeOf(X)===null}function m6(J){if(J===void 0)return(0,x1.identifier)("undefined");if(J===!0||J===!1)return(0,x1.booleanLiteral)(J);if(J===null)return(0,x1.nullLiteral)();if(typeof J==="string")return(0,x1.stringLiteral)(J);if(typeof J==="number"){let X;if(Number.isFinite(J))X=(0,x1.numericLiteral)(Math.abs(J));else{let Z;if(Number.isNaN(J))Z=(0,x1.numericLiteral)(0);else Z=(0,x1.numericLiteral)(1);X=(0,x1.binaryExpression)("/",Z,(0,x1.numericLiteral)(0))}if(J<0||Object.is(J,-0))X=(0,x1.unaryExpression)("-",X);return X}if(typeof J==="bigint")if(J<0)return(0,x1.unaryExpression)("-",(0,x1.bigIntLiteral)(-J));else return(0,x1.bigIntLiteral)(J);if(F11(J)){let X=J.source,Z=/\/([a-z]*)$/.exec(J.toString())[1];return(0,x1.regExpLiteral)(X,Z)}if(Array.isArray(J))return(0,x1.arrayExpression)(J.map(m6));if(j11(J)){let X=[];for(let Z of Object.keys(J)){let Q,Y=!1;if((0,$11.default)(Z))if(Z==="__proto__")Y=!0,Q=(0,x1.stringLiteral)(Z);else Q=(0,x1.identifier)(Z);else Q=(0,x1.stringLiteral)(Z);X.push((0,x1.objectProperty)(Q,m6(J[Z]),Y))}return(0,x1.objectExpression)(X)}throw Error("don't know how to turn this value into a node")}});var cQ=I((mQ)=>{Object.defineProperty(mQ,"__esModule",{value:!0});mQ.default=O11;var M11=Q0();function O11(J,X,Z=!1){return J.object=(0,M11.memberExpression)(J.object,J.property,J.computed),J.property=X,J.computed=!!Z,J}});var pQ=I((iQ)=>{Object.defineProperty(iQ,"__esModule",{value:!0});iQ.default=D11;var lQ=tJ(),C11=_6();function D11(J,X){if(!J||!X)return J;for(let Z of lQ.INHERIT_KEYS.optional)if(J[Z]==null)J[Z]=X[Z];for(let Z of Object.keys(X))if(Z[0]==="_"&&Z!=="__clone")J[Z]=X[Z];for(let Z of lQ.INHERIT_KEYS.force)J[Z]=X[Z];return(0,C11.default)(J,X),J}});var dQ=I((rQ)=>{Object.defineProperty(rQ,"__esModule",{value:!0});rQ.default=S11;var N11=Q0(),w11=H1();function S11(J,X){if((0,w11.isSuper)(J.object))throw Error("Cannot prepend node to super property access (`super.foo`).");return J.object=(0,N11.memberExpression)(X,J.object),J}});var sQ=I((aQ)=>{Object.defineProperty(aQ,"__esModule",{value:!0});aQ.default=T11;function T11(J){let X=[].concat(J),Z=Object.create(null);while(X.length){let Q=X.pop();if(!Q)continue;switch(Q.type){case"ArrayPattern":X.push(...Q.elements);break;case"AssignmentExpression":case"AssignmentPattern":case"ForInStatement":case"ForOfStatement":X.push(Q.left);break;case"ObjectPattern":X.push(...Q.properties);break;case"ObjectProperty":X.push(Q.value);break;case"RestElement":case"UpdateExpression":X.push(Q.argument);break;case"UnaryExpression":if(Q.operator==="delete")X.push(Q.argument);break;case"Identifier":Z[Q.name]=Q;break;default:break}}return Z}});var y9=I((tQ)=>{Object.defineProperty(tQ,"__esModule",{value:!0});tQ.default=c6;var p0=E1();function c6(J,X,Z,Q){let Y=[].concat(J),H=Object.create(null);while(Y.length){let G=Y.shift();if(!G)continue;if(Q&&((0,p0.isAssignmentExpression)(G)||(0,p0.isUnaryExpression)(G)||(0,p0.isUpdateExpression)(G)))continue;if((0,p0.isIdentifier)(G)){if(X)(H[G.name]=H[G.name]||[]).push(G);else H[G.name]=G;continue}if((0,p0.isExportDeclaration)(G)&&!(0,p0.isExportAllDeclaration)(G)){if((0,p0.isDeclaration)(G.declaration))Y.push(G.declaration);continue}if(Z){if((0,p0.isFunctionDeclaration)(G)){Y.push(G.id);continue}if((0,p0.isFunctionExpression)(G))continue}let z=c6.keys[G.type];if(z)for(let W=0;W<z.length;W++){let V=z[W],U=G[V];if(U)if(Array.isArray(U))Y.push(...U);else Y.push(U)}}return H}var k11={DeclareClass:["id"],DeclareFunction:["id"],DeclareModule:["id"],DeclareVariable:["id"],DeclareInterface:["id"],DeclareTypeAlias:["id"],DeclareOpaqueType:["id"],InterfaceDeclaration:["id"],TypeAlias:["id"],OpaqueType:["id"],CatchClause:["param"],LabeledStatement:["label"],UnaryExpression:["argument"],AssignmentExpression:["left"],ImportSpecifier:["local"],ImportNamespaceSpecifier:["local"],ImportDefaultSpecifier:["local"],ImportDeclaration:["specifiers"],TSImportEqualsDeclaration:["id"],ExportSpecifier:["exported"],ExportNamespaceSpecifier:["exported"],ExportDefaultSpecifier:["exported"],FunctionDeclaration:["id","params"],FunctionExpression:["id","params"],ArrowFunctionExpression:["params"],ObjectMethod:["params"],ClassMethod:["params"],ClassPrivateMethod:["params"],ForInStatement:["left"],ForOfStatement:["left"],ClassDeclaration:["id"],ClassExpression:["id"],RestElement:["argument"],UpdateExpression:["argument"],ObjectProperty:["value"],AssignmentPattern:["left"],ArrayPattern:["elements"],ObjectPattern:["properties"],VariableDeclaration:["declarations"],VariableDeclarator:["id"]};c6.keys=k11});var eQ=I((nQ)=>{Object.defineProperty(nQ,"__esModule",{value:!0});nQ.default=void 0;var v11=y9(),dS1=nQ.default=E11;function E11(J,X){return(0,v11.default)(J,X,!0)}});var ZY=I((XY)=>{Object.defineProperty(XY,"__esModule",{value:!0});XY.default=g11;var q0=E1();function _11(J){if((0,q0.isNullLiteral)(J))return"null";if((0,q0.isRegExpLiteral)(J))return`/${J.pattern}/${J.flags}`;if((0,q0.isTemplateLiteral)(J))return J.quasis.map((X)=>X.value.raw).join("");if(J.value!==void 0)return String(J.value);return null}function JY(J){if(!J.computed||(0,q0.isLiteral)(J.key))return J.key}function g11(J,X){if("id"in J&&J.id)return{name:J.id.name,originalNode:J.id};let Z="",Q;if((0,q0.isObjectProperty)(X,{value:J}))Q=JY(X);else if((0,q0.isObjectMethod)(J)||(0,q0.isClassMethod)(J)){if(Q=JY(J),J.kind==="get")Z="get ";else if(J.kind==="set")Z="set "}else if((0,q0.isVariableDeclarator)(X,{init:J}))Q=X.id;else if((0,q0.isAssignmentExpression)(X,{operator:"=",right:J}))Q=X.left;if(!Q)return null;let Y=(0,q0.isLiteral)(Q)?_11(Q):(0,q0.isIdentifier)(Q)?Q.name:(0,q0.isPrivateName)(Q)?Q.id.name:null;if(Y==null)return null;return{name:Z+Y,originalNode:Q}}});var YY=I((QY)=>{Object.defineProperty(QY,"__esModule",{value:!0});QY.default=x11;var h11=$0();function x11(J,X,Z){if(typeof X==="function")X={enter:X};let{enter:Q,exit:Y}=X;l6(J,Q,Y,Z,[])}function l6(J,X,Z,Q,Y){let H=h11.VISITOR_KEYS[J.type];if(!H)return;if(X)X(J,Y,Q);for(let G of H){let z=J[G];if(Array.isArray(z))for(let W=0;W<z.length;W++){let V=z[W];if(!V)continue;Y.push({node:J,key:G,index:W}),l6(V,X,Z,Q,Y),Y.pop()}else if(z)Y.push({node:J,key:G}),l6(z,X,Z,Q,Y),Y.pop()}if(Z)Z(J,Y,Q)}});var GY=I((HY)=>{Object.defineProperty(HY,"__esModule",{value:!0});HY.default=m11;var u11=y9();function m11(J,X,Z){if(Z&&J.type==="Identifier"&&X.type==="ObjectProperty"&&Z.type==="ObjectExpression")return!1;let Q=u11.default.keys[X.type];if(Q)for(let Y=0;Y<Q.length;Y++){let H=Q[Y],G=X[H];if(Array.isArray(G)){if(G.includes(J))return!0}else if(G===J)return!0}return!1}});var p6=I((zY)=>{Object.defineProperty(zY,"__esModule",{value:!0});zY.default=i11;var l11=E1();i6=Symbol.for("var used to be block scoped");var i6;function i11(J){return(0,l11.isVariableDeclaration)(J)&&(J.kind!=="var"||J[i6])}});var KY=I((VY)=>{Object.defineProperty(VY,"__esModule",{value:!0});VY.default=d11;var WY=E1(),r11=p6();function d11(J){return(0,WY.isFunctionDeclaration)(J)||(0,WY.isClassDeclaration)(J)||(0,r11.default)(J)}});var BY=I((UY)=>{Object.defineProperty(UY,"__esModule",{value:!0});UY.default=n11;var s11=SX(),t11=E1();function n11(J){if((0,s11.default)(J.type,"Immutable"))return!0;if((0,t11.isIdentifier)(J))if(J.name==="undefined")return!0;else return!1;return!1}});var qY=I(($Y)=>{Object.defineProperty($Y,"__esModule",{value:!0});$Y.default=r6;var RY=$0();function r6(J,X){if(typeof J!=="object"||typeof X!=="object"||J==null||X==null)return J===X;if(J.type!==X.type)return!1;let Z=Object.keys(RY.NODE_FIELDS[J.type]||J.type),Q=RY.VISITOR_KEYS[J.type];for(let Y of Z){let H=J[Y],G=X[Y];if(typeof H!==typeof G)return!1;if(H==null&&G==null)continue;else if(H==null||G==null)return!1;if(Array.isArray(H)){if(!Array.isArray(G))return!1;if(H.length!==G.length)return!1;for(let z=0;z<H.length;z++)if(!r6(H[z],G[z]))return!1;continue}if(typeof H==="object"&&!(Q!=null&&Q.includes(Y))){for(let z of Object.keys(H))if(H[z]!==G[z])return!1;continue}if(!r6(H,G))return!1}return!0}});var jY=I((FY)=>{Object.defineProperty(FY,"__esModule",{value:!0});FY.default=J01;function J01(J,X,Z){switch(X.type){case"MemberExpression":case"OptionalMemberExpression":if(X.property===J)return!!X.computed;return X.object===J;case"JSXMemberExpression":return X.object===J;case"VariableDeclarator":return X.init===J;case"ArrowFunctionExpression":return X.body===J;case"PrivateName":return!1;case"ClassMethod":case"ClassPrivateMethod":case"ObjectMethod":if(X.key===J)return!!X.computed;return!1;case"ObjectProperty":if(X.key===J)return!!X.computed;return!Z||Z.type!=="ObjectPattern";case"ClassProperty":case"ClassAccessorProperty":if(X.key===J)return!!X.computed;return!0;case"ClassPrivateProperty":return X.key!==J;case"ClassDeclaration":case"ClassExpression":return X.superClass===J;case"AssignmentExpression":return X.right===J;case"AssignmentPattern":return X.right===J;case"LabeledStatement":return!1;case"CatchClause":return!1;case"RestElement":return!1;case"BreakStatement":case"ContinueStatement":return!1;case"FunctionDeclaration":case"FunctionExpression":return!1;case"ExportNamespaceSpecifier":case"ExportDefaultSpecifier":return!1;case"ExportSpecifier":if(Z!=null&&Z.source)return!1;return X.local===J;case"ImportDefaultSpecifier":case"ImportNamespaceSpecifier":case"ImportSpecifier":return!1;case"ImportAttribute":return!1;case"JSXAttribute":return!1;case"ObjectPattern":case"ArrayPattern":return!1;case"MetaProperty":return!1;case"ObjectTypeProperty":return X.key!==J;case"TSEnumMember":return X.id!==J;case"TSPropertySignature":if(X.key===J)return!!X.computed;return!0}return!0}});var OY=I((MY)=>{Object.defineProperty(MY,"__esModule",{value:!0});MY.default=Z01;var CJ=E1();function Z01(J,X){if((0,CJ.isBlockStatement)(J)&&((0,CJ.isFunction)(X)||(0,CJ.isCatchClause)(X)))return!1;if((0,CJ.isPattern)(J)&&((0,CJ.isFunction)(X)||(0,CJ.isCatchClause)(X)))return!0;return(0,CJ.isScopable)(J)}});var DY=I((CY)=>{Object.defineProperty(CY,"__esModule",{value:!0});CY.default=Y01;var AY=E1();function Y01(J){return(0,AY.isImportDefaultSpecifier)(J)||(0,AY.isIdentifier)(J.imported||J.exported,{name:"default"})}});var NY=I((IY)=>{Object.defineProperty(IY,"__esModule",{value:!0});IY.default=W01;var G01=sJ(),z01=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"]);function W01(J){return(0,G01.default)(J)&&!z01.has(J)}});var SY=I((wY)=>{Object.defineProperty(wY,"__esModule",{value:!0});wY.default=U01;var K01=E1();d6=Symbol.for("var used to be block scoped");var d6;function U01(J){return(0,K01.isVariableDeclaration)(J,{kind:"var"})&&!J[d6]}});var TY=I((PY)=>{Object.defineProperty(PY,"__esModule",{value:!0});PY.default=yX;var R01=y9(),DJ=E1(),a6=Q0(),s6=T6(),$01=QJ();function yX(J,X){let Z=[],Q=!0;for(let Y of J){if(!(0,DJ.isEmptyStatement)(Y))Q=!1;if((0,DJ.isExpression)(Y))Z.push(Y);else if((0,DJ.isExpressionStatement)(Y))Z.push(Y.expression);else if((0,DJ.isVariableDeclaration)(Y)){if(Y.kind!=="var")return;for(let H of Y.declarations){let G=(0,R01.default)(H);for(let z of Object.keys(G))X.push({kind:Y.kind,id:(0,$01.default)(G[z])});if(H.init)Z.push((0,a6.assignmentExpression)("=",H.id,H.init))}Q=!0}else if((0,DJ.isIfStatement)(Y)){let H=Y.consequent?yX([Y.consequent],X):(0,s6.buildUndefinedNode)(),G=Y.alternate?yX([Y.alternate],X):(0,s6.buildUndefinedNode)();if(!H||!G)return;Z.push((0,a6.conditionalExpression)(Y.test,H,G))}else if((0,DJ.isBlockStatement)(Y)){let H=yX(Y.body,X);if(!H)return;Z.push(H)}else if((0,DJ.isEmptyStatement)(Y)){if(J.indexOf(Y)===0)Q=!0}else return}if(Q)Z.push((0,s6.buildUndefinedNode)());if(Z.length===1)return Z[0];else return(0,a6.sequenceExpression)(Z)}});var kY=I((LY)=>{Object.defineProperty(LY,"__esModule",{value:!0});LY.default=j01;var F01=TY();function j01(J,X){if(!(J!=null&&J.length))return;let Z=[],Q=(0,F01.default)(J,Z);if(!Q)return;for(let Y of Z)X.push(Y);return Q}});var H1=I((h)=>{Object.defineProperty(h,"__esModule",{value:!0});var YJ={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,toStatement:!0,valueToNode:!0,appendToMemberExpression:!0,inherits:!0,prependToMemberExpression:!0,removeProperties:!0,removePropertiesDeep:!0,removeTypeDuplicates:!0,getAssignmentIdentifiers:!0,getBindingIdentifiers:!0,getOuterBindingIdentifiers:!0,getFunctionName:!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,__internal__deprecationWarning:!0};Object.defineProperty(h,"__internal__deprecationWarning",{enumerable:!0,get:function(){return DJ1.default}});Object.defineProperty(h,"addComment",{enumerable:!0,get:function(){return k01.default}});Object.defineProperty(h,"addComments",{enumerable:!0,get:function(){return b01.default}});Object.defineProperty(h,"appendToMemberExpression",{enumerable:!0,get:function(){return r01.default}});Object.defineProperty(h,"assertNode",{enumerable:!0,get:function(){return D01.default}});Object.defineProperty(h,"buildMatchMemberExpression",{enumerable:!0,get:function(){return CJ1.default}});Object.defineProperty(h,"clone",{enumerable:!0,get:function(){return S01.default}});Object.defineProperty(h,"cloneDeep",{enumerable:!0,get:function(){return P01.default}});Object.defineProperty(h,"cloneDeepWithoutLoc",{enumerable:!0,get:function(){return T01.default}});Object.defineProperty(h,"cloneNode",{enumerable:!0,get:function(){return w01.default}});Object.defineProperty(h,"cloneWithoutLoc",{enumerable:!0,get:function(){return L01.default}});Object.defineProperty(h,"createFlowUnionType",{enumerable:!0,get:function(){return bY.default}});Object.defineProperty(h,"createTSUnionType",{enumerable:!0,get:function(){return N01.default}});Object.defineProperty(h,"createTypeAnnotationBasedOnTypeof",{enumerable:!0,get:function(){return I01.default}});Object.defineProperty(h,"createUnionTypeAnnotation",{enumerable:!0,get:function(){return bY.default}});Object.defineProperty(h,"ensureBlock",{enumerable:!0,get:function(){return h01.default}});Object.defineProperty(h,"getAssignmentIdentifiers",{enumerable:!0,get:function(){return o01.default}});Object.defineProperty(h,"getBindingIdentifiers",{enumerable:!0,get:function(){return e01.default}});Object.defineProperty(h,"getFunctionName",{enumerable:!0,get:function(){return XJ1.default}});Object.defineProperty(h,"getOuterBindingIdentifiers",{enumerable:!0,get:function(){return JJ1.default}});Object.defineProperty(h,"inheritInnerComments",{enumerable:!0,get:function(){return v01.default}});Object.defineProperty(h,"inheritLeadingComments",{enumerable:!0,get:function(){return E01.default}});Object.defineProperty(h,"inheritTrailingComments",{enumerable:!0,get:function(){return g01.default}});Object.defineProperty(h,"inherits",{enumerable:!0,get:function(){return d01.default}});Object.defineProperty(h,"inheritsComments",{enumerable:!0,get:function(){return _01.default}});Object.defineProperty(h,"is",{enumerable:!0,get:function(){return YJ1.default}});Object.defineProperty(h,"isBinding",{enumerable:!0,get:function(){return HJ1.default}});Object.defineProperty(h,"isBlockScoped",{enumerable:!0,get:function(){return GJ1.default}});Object.defineProperty(h,"isImmutable",{enumerable:!0,get:function(){return zJ1.default}});Object.defineProperty(h,"isLet",{enumerable:!0,get:function(){return WJ1.default}});Object.defineProperty(h,"isNode",{enumerable:!0,get:function(){return VJ1.default}});Object.defineProperty(h,"isNodesEquivalent",{enumerable:!0,get:function(){return KJ1.default}});Object.defineProperty(h,"isPlaceholderType",{enumerable:!0,get:function(){return UJ1.default}});Object.defineProperty(h,"isReferenced",{enumerable:!0,get:function(){return BJ1.default}});Object.defineProperty(h,"isScope",{enumerable:!0,get:function(){return RJ1.default}});Object.defineProperty(h,"isSpecifierDefault",{enumerable:!0,get:function(){return $J1.default}});Object.defineProperty(h,"isType",{enumerable:!0,get:function(){return qJ1.default}});Object.defineProperty(h,"isValidES3Identifier",{enumerable:!0,get:function(){return FJ1.default}});Object.defineProperty(h,"isValidIdentifier",{enumerable:!0,get:function(){return jJ1.default}});Object.defineProperty(h,"isVar",{enumerable:!0,get:function(){return MJ1.default}});Object.defineProperty(h,"matchesPattern",{enumerable:!0,get:function(){return OJ1.default}});Object.defineProperty(h,"prependToMemberExpression",{enumerable:!0,get:function(){return a01.default}});h.react=void 0;Object.defineProperty(h,"removeComments",{enumerable:!0,get:function(){return f01.default}});Object.defineProperty(h,"removeProperties",{enumerable:!0,get:function(){return s01.default}});Object.defineProperty(h,"removePropertiesDeep",{enumerable:!0,get:function(){return t01.default}});Object.defineProperty(h,"removeTypeDuplicates",{enumerable:!0,get:function(){return n01.default}});Object.defineProperty(h,"shallowEqual",{enumerable:!0,get:function(){return QJ1.default}});Object.defineProperty(h,"toBindingIdentifierName",{enumerable:!0,get:function(){return x01.default}});Object.defineProperty(h,"toBlock",{enumerable:!0,get:function(){return y01.default}});Object.defineProperty(h,"toComputedKey",{enumerable:!0,get:function(){return u01.default}});Object.defineProperty(h,"toExpression",{enumerable:!0,get:function(){return m01.default}});Object.defineProperty(h,"toIdentifier",{enumerable:!0,get:function(){return c01.default}});Object.defineProperty(h,"toKeyAlias",{enumerable:!0,get:function(){return l01.default}});Object.defineProperty(h,"toStatement",{enumerable:!0,get:function(){return i01.default}});Object.defineProperty(h,"traverse",{enumerable:!0,get:function(){return uX.default}});Object.defineProperty(h,"traverseFast",{enumerable:!0,get:function(){return ZJ1.default}});Object.defineProperty(h,"validate",{enumerable:!0,get:function(){return AJ1.default}});Object.defineProperty(h,"valueToNode",{enumerable:!0,get:function(){return p01.default}});var O01=XZ(),A01=QZ(),C01=C5(),D01=N5(),t6=S5();Object.keys(t6).forEach(function(J){if(J==="default"||J==="__esModule")return;if(Object.prototype.hasOwnProperty.call(YJ,J))return;if(J in h&&h[J]===t6[J])return;Object.defineProperty(h,J,{enumerable:!0,get:function(){return t6[J]}})});var I01=L5(),bY=_5(),N01=u5(),n6=T6();Object.keys(n6).forEach(function(J){if(J==="default"||J==="__esModule")return;if(Object.prototype.hasOwnProperty.call(YJ,J))return;if(J in h&&h[J]===n6[J])return;Object.defineProperty(h,J,{enumerable:!0,get:function(){return n6[J]}})});var o6=Q0();Object.keys(o6).forEach(function(J){if(J==="default"||J==="__esModule")return;if(Object.prototype.hasOwnProperty.call(YJ,J))return;if(J in h&&h[J]===o6[J])return;Object.defineProperty(h,J,{enumerable:!0,get:function(){return o6[J]}})});var w01=QJ(),S01=s5(),P01=n5(),T01=e5(),L01=XQ(),k01=YQ(),b01=k6(),v01=b6(),E01=v6(),_01=_6(),g01=E6(),f01=UQ(),e6=$Q();Object.keys(e6).forEach(function(J){if(J==="default"||J==="__esModule")return;if(Object.prototype.hasOwnProperty.call(YJ,J))return;if(J in h&&h[J]===e6[J])return;Object.defineProperty(h,J,{enumerable:!0,get:function(){return e6[J]}})});var J7=tJ();Object.keys(J7).forEach(function(J){if(J==="default"||J==="__esModule")return;if(Object.prototype.hasOwnProperty.call(YJ,J))return;if(J in h&&h[J]===J7[J])return;Object.defineProperty(h,J,{enumerable:!0,get:function(){return J7[J]}})});var h01=jQ(),x01=AQ(),y01=f6(),u01=DQ(),m01=wQ(),c01=h6(),l01=_Q(),i01=hQ(),p01=uQ(),X7=$0();Object.keys(X7).forEach(function(J){if(J==="default"||J==="__esModule")return;if(Object.prototype.hasOwnProperty.call(YJ,J))return;if(J in h&&h[J]===X7[J])return;Object.defineProperty(h,J,{enumerable:!0,get:function(){return X7[J]}})});var r01=cQ(),d01=pQ(),a01=dQ(),s01=y6(),t01=u6(),n01=P6(),o01=sQ(),e01=y9(),JJ1=eQ(),XJ1=ZY(),uX=YY();Object.keys(uX).forEach(function(J){if(J==="default"||J==="__esModule")return;if(Object.prototype.hasOwnProperty.call(YJ,J))return;if(J in h&&h[J]===uX[J])return;Object.defineProperty(h,J,{enumerable:!0,get:function(){return uX[J]}})});var ZJ1=x6(),QJ1=wX(),YJ1=aJ(),HJ1=GY(),GJ1=KY(),zJ1=BY(),WJ1=p6(),VJ1=S6(),KJ1=qY(),UJ1=Z6(),BJ1=jY(),RJ1=OY(),$J1=DY(),qJ1=SX(),FJ1=NY(),jJ1=sJ(),MJ1=SY(),OJ1=J6(),AJ1=kX(),CJ1=X6(),Z7=E1();Object.keys(Z7).forEach(function(J){if(J==="default"||J==="__esModule")return;if(Object.prototype.hasOwnProperty.call(YJ,J))return;if(J in h&&h[J]===Z7[J])return;Object.defineProperty(h,J,{enumerable:!0,get:function(){return Z7[J]}})});var DJ1=dJ(),IJ1=kY(),VP1=h.react={isReactComponent:O01.default,isCompatTag:A01.default,buildChildren:C01.default};h.toSequenceExpression=IJ1.default;if(process.env.BABEL_TYPES_8_BREAKING)console.warn("BABEL_TYPES_8_BREAKING is not supported anymore. Use the latest Babel 8.0.0 pre-release instead!")});var Y7=I((gY)=>{Object.defineProperty(gY,"__esModule",{value:!0});gY.isBindingIdentifier=rJ1;gY.isBlockScoped=nJ1;gY.isExpression=aJ1;gY.isFlow=Z91;gY.isForAwaitStatement=H91;gY.isGenerated=J91;gY.isPure=X91;gY.isReferenced=tJ1;gY.isReferencedIdentifier=iJ1;gY.isReferencedMemberExpression=pJ1;gY.isRestProperty=Q91;gY.isScope=sJ1;gY.isSpreadProperty=Y91;gY.isStatement=dJ1;gY.isUser=eJ1;gY.isVar=oJ1;var NJ1=H1(),{isBinding:wJ1,isBlockScoped:SJ1,isExportDeclaration:PJ1,isExpression:TJ1,isFlow:LJ1,isForStatement:kJ1,isForXStatement:bJ1,isIdentifier:EY,isImportDeclaration:vJ1,isImportSpecifier:EJ1,isJSXIdentifier:_J1,isJSXMemberExpression:gJ1,isMemberExpression:fJ1,isRestElement:_Y,isReferenced:Q7,isScope:hJ1,isStatement:xJ1,isVar:yJ1,isVariableDeclaration:uJ1,react:mJ1,isForOfStatement:cJ1}=NJ1,{isCompatTag:lJ1}=mJ1;function iJ1(J){let{node:X,parent:Z}=this;if(!EY(X,J)&&!gJ1(Z,J))if(_J1(X,J)){if(lJ1(X.name))return!1}else return!1;return Q7(X,Z,this.parentPath.parent)}function pJ1(){let{node:J,parent:X}=this;return fJ1(J)&&Q7(J,X)}function rJ1(){let{node:J,parent:X}=this,Z=this.parentPath.parent;return EY(J)&&wJ1(J,X,Z)}function dJ1(){let{node:J,parent:X}=this;if(xJ1(J)){if(uJ1(J)){if(bJ1(X,{left:J}))return!1;if(kJ1(X,{init:J}))return!1}return!0}else return!1}function aJ1(){if(this.isIdentifier())return this.isReferencedIdentifier();else return TJ1(this.node)}function sJ1(){return hJ1(this.node,this.parent)}function tJ1(){return Q7(this.node,this.parent)}function nJ1(){return SJ1(this.node)}function oJ1(){return yJ1(this.node)}function eJ1(){return this.node&&!!this.node.loc}function J91(){return!this.isUser()}function X91(J){return this.scope.isPure(this.node,J)}function Z91(){let{node:J}=this;if(LJ1(J))return!0;else if(vJ1(J))return J.importKind==="type"||J.importKind==="typeof";else if(PJ1(J))return J.exportKind==="type";else if(EJ1(J))return J.importKind==="type"||J.importKind==="typeof";else return!1}function Q91(){var J;return _Y(this.node)&&((J=this.parentPath)==null?void 0:J.isObjectPattern())}function Y91(){var J;return _Y(this.node)&&((J=this.parentPath)==null?void 0:J.isObjectExpression())}function H91(){return cJ1(this.node,{await:!0})}gY.isExistentialTypeParam=function(){throw Error("`path.isExistentialTypeParam` has been renamed to `path.isExistsTypeAnnotation()` in Babel 7.")},gY.isNumericLiteralTypeAnnotation=function(){throw Error("`path.isNumericLiteralTypeAnnotation()` has been renamed to `path.isNumberLiteralTypeAnnotation()` in Babel 7.")}});var mX=I((sY)=>{Object.defineProperty(sY,"__esModule",{value:!0});sY.environmentVisitor=L91;sY.explode=rY;sY.isExplodedVisitor=pY;sY.merge=aY;sY.verify=dY;var iY=n2(),D91=Y7(),I91=H1(),fY=A0(),{DEPRECATED_KEYS:hY,DEPRECATED_ALIASES:xY,FLIPPED_ALIAS_KEYS:yY,TYPES:N91,__internal__deprecationWarning:uY}=I91;function w91(J){return J in iY}function pY(J){return J==null?void 0:J._exploded}function rY(J){if(pY(J))return J;J._exploded=!0;for(let X of Object.keys(J)){if(IJ(X))continue;let Z=X.split("|");if(Z.length===1)continue;let Q=J[X];delete J[X];for(let Y of Z)J[Y]=Q}dY(J),delete J.__esModule,S91(J),lY(J);for(let X of Object.keys(J)){if(IJ(X))continue;if(!w91(X))continue;let Z=J[X];for(let Y of Object.keys(Z))Z[Y]=P91(X,Z[Y]);delete J[X];let Q=iY[X];if(Q!==null)for(let Y of Q)if(J[Y])u9(J[Y],Z);else J[Y]=Z;else u9(J,Z)}for(let X of Object.keys(J)){if(IJ(X))continue;let Z=yY[X];if(X in hY){let Y=hY[X];uY(X,Y,"Visitor "),Z=[Y]}else if(X in xY){let Y=xY[X];uY(X,Y,"Visitor "),Z=yY[Y]}if(!Z)continue;let Q=J[X];delete J[X];for(let Y of Z){let H=J[Y];if(H)u9(H,Q);else J[Y]=Object.assign({},Q)}}for(let X of Object.keys(J)){if(IJ(X))continue;lY(J[X])}return J}function dY(J){if(J._verified)return;if(typeof J==="function")throw Error("You passed `traverse()` a function when it expected a visitor object, are you sure you didn't mean `{ enter: Function }`?");for(let X of Object.keys(J)){if(X==="enter"||X==="exit")mY(X,J[X]);if(IJ(X))continue;if(!N91.includes(X))throw Error(`You gave us a visitor for the node type ${X} but it's not a valid type in @babel/traverse 7.28.4`);let Z=J[X];if(typeof Z==="object")for(let Q of Object.keys(Z))if(Q==="enter"||Q==="exit")mY(`${X}.${Q}`,Z[Q]);else throw Error(`You passed \`traverse()\` a visitor object with the property ${X} that has the invalid property ${Q}`)}J._verified=!0}function mY(J,X){let Z=[].concat(X);for(let Q of Z)if(typeof Q!=="function")throw TypeError(`Non-function found defined in ${J} with type ${typeof Q}`)}function aY(J,X=[],Z){let Q={_verified:!0,_exploded:!0};Object.defineProperty(Q,"_exploded",{enumerable:!1}),Object.defineProperty(Q,"_verified",{enumerable:!1});for(let Y=0;Y<J.length;Y++){let H=rY(J[Y]),G=X[Y],z=H;if(G||Z)z=cY(z,G,Z);u9(Q,z);for(let W of Object.keys(H)){if(IJ(W))continue;let V=H[W];if(G||Z)V=cY(V,G,Z);let U=Q[W]||(Q[W]={});u9(U,V)}}return Q}function cY(J,X,Z){let Q={};for(let Y of["enter","exit"]){let H=J[Y];if(!Array.isArray(H))continue;H=H.map(function(G){let z=G;if(X)z=function(W){G.call(X,W,X)};if(Z)z=Z(X==null?void 0:X.key,Y,z);if(z!==G)z.toString=()=>G.toString();return z}),Q[Y]=H}return Q}function S91(J){for(let X of Object.keys(J)){if(IJ(X))continue;let Z=J[X];if(typeof Z==="function")J[X]={enter:Z}}}function lY(J){if(J.enter&&!Array.isArray(J.enter))J.enter=[J.enter];if(J.exit&&!Array.isArray(J.exit))J.exit=[J.exit]}function P91(J,X){let Z=`is${J}`,Q=D91[Z],Y=function(H){if(Q.call(H))return X.apply(this,arguments)};return Y.toString=()=>X.toString(),Y}function IJ(J){if(J[0]==="_")return!0;if(J==="enter"||J==="exit"||J==="shouldSkip")return!0;if(J==="denylist"||J==="noScope"||J==="skipKeys")return!0;if(J==="blacklist")return!0;return!1}function u9(J,X){for(let Z of["enter","exit"]){if(!X[Z])continue;J[Z]=[].concat(J[Z]||[],X[Z])}}var T91={FunctionParent(J){if(J.isArrowFunctionExpression())return;if(J.skip(),J.isMethod())if(!J.requeueComputedKeyAndDecorators)fY.requeueComputedKeyAndDecorators.call(J);else J.requeueComputedKeyAndDecorators()},Property(J){if(J.isObjectProperty())return;if(J.skip(),!J.requeueComputedKeyAndDecorators)fY.requeueComputedKeyAndDecorators.call(J);else J.requeueComputedKeyAndDecorators()}};function L91(J){return aY([T91,J])}});var eY=I((nY)=>{Object.defineProperty(nY,"__esModule",{value:!0});nY.default=void 0;var cX=H1(),g91=cX,f91=lX(),h91=mX(),x91=A0(),{getAssignmentIdentifiers:y91}=g91,u91={ReferencedIdentifier({node:J},X){if(J.name===X.oldName)J.name=X.newName},Scope(J,X){if(!J.scope.bindingIdentifierEquals(X.oldName,X.binding.identifier)){if(J.skip(),J.isMethod())if(!J.requeueComputedKeyAndDecorators)x91.requeueComputedKeyAndDecorators.call(J);else J.requeueComputedKeyAndDecorators()}},ObjectProperty({node:J,scope:X},Z){let{name:Q}=J.key;if(J.shorthand&&(Q===Z.oldName||Q===Z.newName)&&X.getBindingIdentifier(Q)===Z.binding.identifier){J.shorthand=!1;{var Y;if((Y=J.extra)!=null&&Y.shorthand)J.extra.shorthand=!1}}},"AssignmentExpression|Declaration|VariableDeclarator"(J,X){if(J.isVariableDeclaration())return;let Z=J.isAssignmentExpression()?y91(J.node):J.getOuterBindingIdentifiers();for(let Q in Z)if(Q===X.oldName)Z[Q].name=X.newName}};class tY{constructor(J,X,Z){this.newName=Z,this.oldName=X,this.binding=J}maybeConvertFromExportDeclaration(J){let X=J.parentPath;if(!X.isExportDeclaration())return;if(X.isExportDefaultDeclaration()){let{declaration:Z}=X.node;if(cX.isDeclaration(Z)&&!Z.id)return}if(X.isExportAllDeclaration())return;X.splitExportDeclaration()}maybeConvertFromClassFunctionDeclaration(J){return J}maybeConvertFromClassFunctionExpression(J){return J}rename(){let{binding:J,oldName:X,newName:Z}=this,{scope:Q,path:Y}=J,H=Y.find((W)=>W.isDeclaration()||W.isFunctionExpression()||W.isClassExpression());if(H){if(H.getOuterBindingIdentifiers()[X]===J.identifier)this.maybeConvertFromExportDeclaration(H)}let G=arguments[0]||Q.block,z={discriminant:!0};if(cX.isMethod(G)){if(G.computed)z.key=!0;if(!cX.isObjectMethod(G))z.decorators=!0}if((0,f91.traverseNode)(G,(0,h91.explode)(u91),Q,this,Q.path,z),!arguments[0])Q.removeOwnBinding(X),Q.bindings[Z]=J,this.binding.identifier.name=Z;if(H)this.maybeConvertFromClassFunctionDeclaration(Y),this.maybeConvertFromClassFunctionExpression(Y)}}nY.default=tY});var QH=I((XH)=>{Object.defineProperty(XH,"__esModule",{value:!0});XH.default=void 0;class JH{constructor({identifier:J,scope:X,path:Z,kind:Q}){if(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=J,this.scope=X,this.path=Z,this.kind=Q,(Q==="var"||Q==="hoisted")&&m91(Z))this.reassign(Z);this.clearValue()}deoptValue(){this.clearValue(),this.hasDeoptedValue=!0}setValue(J){if(this.hasDeoptedValue)return;this.hasValue=!0,this.value=J}clearValue(){this.hasDeoptedValue=!1,this.hasValue=!1,this.value=null}reassign(J){if(this.constant=!1,this.constantViolations.includes(J))return;this.constantViolations.push(J)}reference(J){if(this.referencePaths.includes(J))return;this.referenced=!0,this.references++,this.referencePaths.push(J)}dereference(){this.references--,this.referenced=!!this.references}}XH.default=JH;function m91(J){let X=!J.isVariableDeclarator()||J.node.init;for(let{parentPath:Z,key:Q}=J;Z;{parentPath:Z,key:Q}=Z){if(Z.isFunctionParent())return!1;if(Q==="left"&&Z.isForXStatement()||X&&Q==="body"&&Z.isLoop())return!0}return!1}});var NJ=I((GH)=>{Object.defineProperty(GH,"__esModule",{value:!0});GH.clear=l91;GH.clearPath=YH;GH.clearScope=HH;GH.getCachedPaths=i91;GH.getOrCreateCachedPaths=p91;GH.scope=GH.path=void 0;var iX=GH.path=new WeakMap,c91=GH.scope=new WeakMap;function l91(){YH(),HH()}function YH(){GH.path=iX=new WeakMap}function HH(){GH.scope=c91=new WeakMap}function i91(J){let{parent:X,parentPath:Z}=J;return iX.get(X)}function p91(J,X){let Z=iX.get(J);if(!Z)iX.set(J,Z=new Map);return Z}});var WH=I((OP1,n91)=>{n91.exports=["decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","eval","globalThis","isFinite","isNaN","parseFloat","parseInt","undefined","unescape"]});var VH=I((AP1,o91)=>{o91.exports=["AggregateError","Array","ArrayBuffer","Atomics","BigInt","BigInt64Array","BigUint64Array","Boolean","DataView","Date","Error","EvalError","FinalizationRegistry","Float16Array","Float32Array","Float64Array","Function","Infinity","Int16Array","Int32Array","Int8Array","Intl","Iterator","JSON","Map","Math","NaN","Number","Object","Promise","Proxy","RangeError","ReferenceError","Reflect","RegExp","Set","SharedArrayBuffer","String","Symbol","SyntaxError","TypeError","Uint16Array","Uint32Array","Uint8Array","Uint8ClampedArray","URIError","WeakMap","WeakRef","WeakSet"]});var V7=I((wH)=>{Object.defineProperty(wH,"__esModule",{value:!0});wH.default=void 0;var e91=eY(),MH=c9(),JX1=QH(),OH=H1(),AH=OH,KH=NJ(),XX1=WH(),ZX1=VH(),{assignmentExpression:QX1,callExpression:UH,cloneNode:BH,getBindingIdentifiers:CH,identifier:SJ,isArrayExpression:DH,isBinary:YX1,isCallExpression:RH,isClass:HX1,isClassBody:GX1,isClassDeclaration:zX1,isExportAllDeclaration:IH,isExportDefaultDeclaration:WX1,isExportNamedDeclaration:G7,isFunctionDeclaration:VX1,isIdentifier:wJ,isImportDeclaration:z7,isLiteral:KX1,isMemberExpression:UX1,isMethod:BX1,isModuleSpecifier:RX1,isNullLiteral:$X1,isObjectExpression:qX1,isProperty:FX1,isPureish:jX1,isRegExpLiteral:MX1,isSuper:OX1,isTaggedTemplateExpression:AX1,isTemplateLiteral:NH,isThisExpression:$H,isUnaryExpression:CX1,isVariableDeclaration:DX1,expressionStatement:IX1,matchesPattern:qH,memberExpression:W7,numericLiteral:NX1,toIdentifier:wX1,variableDeclaration:SX1,variableDeclarator:PX1,isRecordExpression:TX1,isTupleExpression:LX1,isObjectProperty:kX1,isTopicReference:FH,isMetaProperty:bX1,isPrivateName:vX1,isExportDeclaration:EX1,buildUndefinedNode:_X1,sequenceExpression:gX1}=OH;function T1(J,X){switch(J==null?void 0:J.type){default:if(z7(J)||EX1(J)){var Z;if((IH(J)||G7(J)||z7(J))&&J.source)T1(J.source,X);else if((G7(J)||z7(J))&&(Z=J.specifiers)!=null&&Z.length)for(let Q of J.specifiers)T1(Q,X);else if((WX1(J)||G7(J))&&J.declaration)T1(J.declaration,X)}else if(RX1(J))T1(J.local,X);else if(KX1(J)&&!$X1(J)&&!MX1(J)&&!NH(J))X.push(J.value);break;case"MemberExpression":case"OptionalMemberExpression":case"JSXMemberExpression":T1(J.object,X),T1(J.property,X);break;case"Identifier":case"JSXIdentifier":X.push(J.name);break;case"CallExpression":case"OptionalCallExpression":case"NewExpression":T1(J.callee,X);break;case"ObjectExpression":case"ObjectPattern":for(let Q of J.properties)T1(Q,X);break;case"SpreadElement":case"RestElement":T1(J.argument,X);break;case"ObjectProperty":case"ObjectMethod":case"ClassProperty":case"ClassMethod":case"ClassPrivateProperty":case"ClassPrivateMethod":T1(J.key,X);break;case"ThisExpression":X.push("this");break;case"Super":X.push("super");break;case"Import":case"ImportExpression":X.push("import");break;case"DoExpression":X.push("do");break;case"YieldExpression":X.push("yield"),T1(J.argument,X);break;case"AwaitExpression":X.push("await"),T1(J.argument,X);break;case"AssignmentExpression":T1(J.left,X);break;case"VariableDeclarator":T1(J.id,X);break;case"FunctionExpression":case"FunctionDeclaration":case"ClassExpression":case"ClassDeclaration":T1(J.id,X);break;case"PrivateName":T1(J.id,X);break;case"ParenthesizedExpression":T1(J.expression,X);break;case"UnaryExpression":case"UpdateExpression":T1(J.argument,X);break;case"MetaProperty":T1(J.meta,X),T1(J.property,X);break;case"JSXElement":T1(J.openingElement,X);break;case"JSXOpeningElement":T1(J.name,X);break;case"JSXFragment":T1(J.openingFragment,X);break;case"JSXOpeningFragment":X.push("Fragment");break;case"JSXNamespacedName":T1(J.namespace,X),T1(J.name,X);break}}function jH(J){J.references=Object.create(null),J.uids=Object.create(null),J.bindings=Object.create(null),J.globals=Object.create(null)}pX=Symbol.for("should not be considered a local binding");var pX,fX1={ForStatement(J){let X=J.get("init");if(X.isVar()){let{scope:Z}=J;(Z.getFunctionParent()||Z.getProgramParent()).registerBinding("var",X)}},Declaration(J){if(J.isBlockScoped())return;if(J.isImportDeclaration())return;if(J.isExportDeclaration())return;(J.scope.getFunctionParent()||J.scope.getProgramParent()).registerDeclaration(J)},ImportDeclaration(J){J.scope.getBlockParent().registerDeclaration(J)},TSImportEqualsDeclaration(J){J.scope.getBlockParent().registerDeclaration(J)},ReferencedIdentifier(J,X){if(AH.isTSQualifiedName(J.parent)&&J.parent.right===J.node)return;if(J.parentPath.isTSImportEqualsDeclaration())return;X.references.push(J)},ForXStatement(J,X){let Z=J.get("left");if(Z.isPattern()||Z.isIdentifier())X.constantViolations.push(J);else if(Z.isVar()){let{scope:Q}=J;(Q.getFunctionParent()||Q.getProgramParent()).registerBinding("var",Z)}},ExportDeclaration:{exit(J){let{node:X,scope:Z}=J;if(IH(X))return;let Q=X.declaration;if(zX1(Q)||VX1(Q)){let Y=Q.id;if(!Y)return;let H=Z.getBinding(Y.name);H==null||H.reference(J)}else if(DX1(Q))for(let Y of Q.declarations)for(let H of Object.keys(CH(Y))){let G=Z.getBinding(H);G==null||G.reference(J)}}},LabeledStatement(J){J.scope.getBlockParent().registerDeclaration(J)},AssignmentExpression(J,X){X.assignments.push(J)},UpdateExpression(J,X){X.constantViolations.push(J)},UnaryExpression(J,X){if(J.node.operator==="delete")X.constantViolations.push(J)},BlockScoped(J){let X=J.scope;if(X.path===J)X=X.parent;if(X.getBlockParent().registerDeclaration(J),J.isClassDeclaration()&&J.node.id){let Y=J.node.id.name;J.scope.bindings[Y]=J.scope.parent.getBinding(Y)}},CatchClause(J){J.scope.registerBinding("let",J)},Function(J){let X=J.get("params");for(let Z of X)J.scope.registerBinding("param",Z);if(J.isFunctionExpression()&&J.node.id&&!J.node.id[pX])J.scope.registerBinding("local",J.get("id"),J)},ClassExpression(J){if(J.node.id&&!J.node.id[pX])J.scope.registerBinding("local",J.get("id"),J)},TSTypeAnnotation(J){J.skip()}},m9,hX1=0;class F0{constructor(J){this.uid=void 0,this.path=void 0,this.block=void 0,this.inited=void 0,this.labels=void 0,this.bindings=void 0,this.referencesSet=void 0,this.globals=void 0,this.uidsSet=void 0,this.data=void 0,this.crawling=void 0;let{node:X}=J,Z=KH.scope.get(X);if((Z==null?void 0:Z.path)===J)return Z;KH.scope.set(X,this),this.uid=hX1++,this.block=X,this.path=J,this.labels=new Map,this.inited=!1,Object.defineProperties(this,{references:{enumerable:!0,configurable:!0,writable:!0,value:Object.create(null)},uids:{enumerable:!0,configurable:!0,writable:!0,value:Object.create(null)}})}get parent(){var J;let X,Z=this.path;do{var Q;let Y=Z.key==="key"||Z.listKey==="decorators";if(Z=Z.parentPath,Y&&Z.isMethod())Z=Z.parentPath;if((Q=Z)!=null&&Q.isScope())X=Z}while(Z&&!X);return(J=X)==null?void 0:J.scope}get references(){throw Error("Scope#references is not available in Babel 8. Use Scope#referencesSet instead.")}get uids(){throw Error("Scope#uids is not available in Babel 8. Use Scope#uidsSet instead.")}generateDeclaredUidIdentifier(J){let X=this.generateUidIdentifier(J);return this.push({id:X}),BH(X)}generateUidIdentifier(J){return SJ(this.generateUid(J))}generateUid(J="temp"){J=wX1(J).replace(/^_+/,"").replace(/\d+$/g,"");let X,Z=0;do{if(X=`_${J}`,Z>=11)X+=Z-1;else if(Z>=9)X+=Z-9;else if(Z>=1)X+=Z+1;Z++}while(this.hasLabel(X)||this.hasBinding(X)||this.hasGlobal(X)||this.hasReference(X));let Q=this.getProgramParent();return Q.references[X]=!0,Q.uids[X]=!0,X}generateUidBasedOnNode(J,X){let Z=[];T1(J,Z);let Q=Z.join("$");return Q=Q.replace(/^_/,"")||X||"ref",this.generateUid(Q.slice(0,20))}generateUidIdentifierBasedOnNode(J,X){return SJ(this.generateUidBasedOnNode(J,X))}isStatic(J){if($H(J)||OX1(J)||FH(J))return!0;if(wJ(J)){let X=this.getBinding(J.name);if(X)return X.constant;else return this.hasBinding(J.name)}return!1}maybeGenerateMemoised(J,X){if(this.isStatic(J))return null;else{let Z=this.generateUidIdentifierBasedOnNode(J);if(!X)return this.push({id:Z}),BH(Z);return Z}}checkBlockScopedCollisions(J,X,Z,Q){if(X==="param")return;if(J.kind==="local")return;if(X==="let"||J.kind==="let"||J.kind==="const"||J.kind==="module"||J.kind==="param"&&X==="const")throw this.path.hub.buildError(Q,`Duplicate declaration "${Z}"`,TypeError)}rename(J,X){let Z=this.getBinding(J);if(Z)X||(X=this.generateUidIdentifier(J).name),new e91.default(Z,J,X).rename(arguments[2])}dump(){let J="-".repeat(60);console.log(J);let X=this;do{console.log("#",X.block.type);for(let Z of Object.keys(X.bindings)){let Q=X.bindings[Z];console.log(" -",Z,{constant:Q.constant,references:Q.references,violations:Q.constantViolations.length,kind:Q.kind})}}while(X=X.parent);console.log(J)}hasLabel(J){return!!this.getLabel(J)}getLabel(J){return this.labels.get(J)}registerLabel(J){this.labels.set(J.node.label.name,J)}registerDeclaration(J){if(J.isLabeledStatement())this.registerLabel(J);else if(J.isFunctionDeclaration())this.registerBinding("hoisted",J.get("id"),J);else if(J.isVariableDeclaration()){let X=J.get("declarations"),{kind:Z}=J.node;for(let Q of X)this.registerBinding(Z==="using"||Z==="await using"?"const":Z,Q)}else if(J.isClassDeclaration()){if(J.node.declare)return;this.registerBinding("let",J)}else if(J.isImportDeclaration()){let X=J.node.importKind==="type"||J.node.importKind==="typeof",Z=J.get("specifiers");for(let Q of Z){let Y=X||Q.isImportSpecifier()&&(Q.node.importKind==="type"||Q.node.importKind==="typeof");this.registerBinding(Y?"unknown":"module",Q)}}else if(J.isExportDeclaration()){let X=J.get("declaration");if(X.isClassDeclaration()||X.isFunctionDeclaration()||X.isVariableDeclaration())this.registerDeclaration(X)}else this.registerBinding("unknown",J)}buildUndefinedNode(){return _X1()}registerConstantViolation(J){let X=J.getAssignmentIdentifiers();for(let Q of Object.keys(X)){var Z;(Z=this.getBinding(Q))==null||Z.reassign(J)}}registerBinding(J,X,Z=X){if(!J)throw ReferenceError("no `kind`");if(X.isVariableDeclaration()){let H=X.get("declarations");for(let G of H)this.registerBinding(J,G);return}let Q=this.getProgramParent(),Y=X.getOuterBindingIdentifiers(!0);for(let H of Object.keys(Y)){Q.references[H]=!0;for(let G of Y[H]){let z=this.getOwnBinding(H);if(z){if(z.identifier===G)continue;this.checkBlockScopedCollisions(z,J,H,G)}if(z)z.reassign(Z);else this.bindings[H]=new JX1.default({identifier:G,scope:this,path:Z,kind:J})}}}addGlobal(J){this.globals[J.name]=J}hasUid(J){{let X=this;do if(X.uids[J])return!0;while(X=X.parent);return!1}}hasGlobal(J){let X=this;do if(X.globals[J])return!0;while(X=X.parent);return!1}hasReference(J){return!!this.getProgramParent().references[J]}isPure(J,X){if(wJ(J)){let H=this.getBinding(J.name);if(!H)return!1;if(X)return H.constant;return!0}else if($H(J)||bX1(J)||FH(J)||vX1(J))return!0;else if(HX1(J)){var Z;if(J.superClass&&!this.isPure(J.superClass,X))return!1;if(((Z=J.decorators)==null?void 0:Z.length)>0)return!1;return this.isPure(J.body,X)}else if(GX1(J)){for(let H of J.body)if(!this.isPure(H,X))return!1;return!0}else if(YX1(J))return this.isPure(J.left,X)&&this.isPure(J.right,X);else if(DH(J)||LX1(J)){for(let H of J.elements)if(H!==null&&!this.isPure(H,X))return!1;return!0}else if(qX1(J)||TX1(J)){for(let H of J.properties)if(!this.isPure(H,X))return!1;return!0}else if(BX1(J)){var Q;if(J.computed&&!this.isPure(J.key,X))return!1;if(((Q=J.decorators)==null?void 0:Q.length)>0)return!1;return!0}else if(FX1(J)){var Y;if(J.computed&&!this.isPure(J.key,X))return!1;if(((Y=J.decorators)==null?void 0:Y.length)>0)return!1;if(kX1(J)||J.static){if(J.value!==null&&!this.isPure(J.value,X))return!1}return!0}else if(CX1(J))return this.isPure(J.argument,X);else if(NH(J)){for(let H of J.expressions)if(!this.isPure(H,X))return!1;return!0}else if(AX1(J))return qH(J.tag,"String.raw")&&!this.hasBinding("String",{noGlobals:!0})&&this.isPure(J.quasi,X);else if(UX1(J))return!J.computed&&wJ(J.object)&&J.object.name==="Symbol"&&wJ(J.property)&&J.property.name!=="for"&&!this.hasBinding("Symbol",{noGlobals:!0});else if(RH(J))return qH(J.callee,"Symbol.for")&&!this.hasBinding("Symbol",{noGlobals:!0})&&J.arguments.length===1&&AH.isStringLiteral(J.arguments[0]);else return jX1(J)}setData(J,X){return this.data[J]=X}getData(J){let X=this;do{let Z=X.data[J];if(Z!=null)return Z}while(X=X.parent)}removeData(J){let X=this;do if(X.data[J]!=null)X.data[J]=null;while(X=X.parent)}init(){if(!this.inited)this.inited=!0,this.crawl()}crawl(){let J=this.path;jH(this),this.data=Object.create(null);let X=this;do{if(X.crawling)return;if(X.path.isProgram())break}while(X=X.parent);let Z=X,Q={references:[],constantViolations:[],assignments:[]};if(this.crawling=!0,m9||(m9=MH.default.visitors.merge([{Scope(Y){jH(Y.scope)}},fX1])),J.type!=="Program"){for(let H of m9.enter)H.call(Q,J,Q);let Y=m9[J.type];if(Y)for(let H of Y.enter)H.call(Q,J,Q)}J.traverse(m9,Q),this.crawling=!1;for(let Y of Q.assignments){let H=Y.getAssignmentIdentifiers();for(let G of Object.keys(H)){if(Y.scope.getBinding(G))continue;Z.addGlobal(H[G])}Y.scope.registerConstantViolation(Y)}for(let Y of Q.references){let H=Y.scope.getBinding(Y.node.name);if(H)H.reference(Y);else Z.addGlobal(Y.node)}for(let Y of Q.constantViolations)Y.scope.registerConstantViolation(Y)}push(J){let X=this.path;if(X.isPattern())X=this.getPatternParent().path;else if(!X.isBlockStatement()&&!X.isProgram())X=this.getBlockParent().path;if(X.isSwitchStatement())X=(this.getFunctionParent()||this.getProgramParent()).path;let{init:Z,unique:Q,kind:Y="var",id:H}=J;if(!Z&&!Q&&(Y==="var"||Y==="let")&&X.isFunction()&&!X.node.name&&RH(X.parent,{callee:X.node})&&X.parent.arguments.length<=X.node.params.length&&wJ(H)){X.pushContainer("params",H),X.scope.registerBinding("param",X.get("params")[X.node.params.length-1]);return}if(X.isLoop()||X.isCatchClause()||X.isFunction())X.ensureBlock(),X=X.get("body");let G=J._blockHoist==null?2:J._blockHoist,z=`declaration:${Y}:${G}`,W=!Q&&X.getData(z);if(!W){let $=SX1(Y,[]);if($._blockHoist=G,[W]=X.unshiftContainer("body",[$]),!Q)X.setData(z,W)}let V=PX1(H,Z),U=W.node.declarations.push(V);X.scope.registerBinding(Y,W.get("declarations")[U-1])}getProgramParent(){let J=this;do if(J.path.isProgram())return J;while(J=J.parent);throw Error("Couldn't find a Program")}getFunctionParent(){let J=this;do if(J.path.isFunctionParent())return J;while(J=J.parent);return null}getBlockParent(){let J=this;do if(J.path.isBlockParent())return J;while(J=J.parent);throw Error("We couldn't find a BlockStatement, For, Switch, Function, Loop or Program...")}getPatternParent(){let J=this;do if(!J.path.isPattern())return J.getBlockParent();while(J=J.parent.parent);throw Error("We couldn't find a BlockStatement, For, Switch, Function, Loop or Program...")}getAllBindings(){let J=Object.create(null),X=this;do{for(let Z of Object.keys(X.bindings))if(Z in J===!1)J[Z]=X.bindings[Z];X=X.parent}while(X);return J}bindingIdentifierEquals(J,X){return this.getBindingIdentifier(J)===X}getBinding(J){let X=this,Z;do{let Y=X.getOwnBinding(J);if(Y){var Q;if((Q=Z)!=null&&Q.isPattern()&&Y.kind!=="param"&&Y.kind!=="local");else return Y}else if(!Y&&J==="arguments"&&X.path.isFunction()&&!X.path.isArrowFunctionExpression())break;Z=X.path}while(X=X.parent)}getOwnBinding(J){return this.bindings[J]}getBindingIdentifier(J){var X;return(X=this.getBinding(J))==null?void 0:X.identifier}getOwnBindingIdentifier(J){let X=this.bindings[J];return X==null?void 0:X.identifier}hasOwnBinding(J){return!!this.getOwnBinding(J)}hasBinding(J,X){if(!J)return!1;let Z,Q,Y;if(typeof X==="object")Z=X.noGlobals,Q=X.noUids,Y=X.upToScope;else if(typeof X==="boolean")Z=X;let H=this;do{if(Y===H)break;if(H.hasOwnBinding(J))return!0}while(H=H.parent);if(!Q&&this.hasUid(J))return!0;if(!Z&&F0.globals.includes(J))return!0;if(!Z&&F0.contextVariables.includes(J))return!0;return!1}parentHasBinding(J,X){var Z;return(Z=this.parent)==null?void 0:Z.hasBinding(J,X)}moveBindingTo(J,X){let Z=this.getBinding(J);if(Z)Z.scope.removeOwnBinding(J),Z.scope=X,X.bindings[J]=Z}removeOwnBinding(J){delete this.bindings[J]}removeBinding(J){var X;(X=this.getBinding(J))==null||X.scope.removeOwnBinding(J);{let Z=this;do if(Z.uids[J])Z.uids[J]=!1;while(Z=Z.parent)}}hoistVariables(J=(X)=>this.push({id:X})){this.crawl();let X=new Set;for(let Z of Object.keys(this.bindings)){let Q=this.bindings[Z];if(!Q)continue;let{path:Y}=Q;if(!Y.isVariableDeclarator())continue;let{parent:H,parentPath:G}=Y;if(H.kind!=="var"||X.has(H))continue;X.add(Y.parent);let z,W=[];for(let V of H.declarations){if(z!=null||(z=V.id),V.init)W.push(QX1("=",V.id,V.init));let U=Object.keys(CH(V,!1,!0,!0));for(let $ of U)J(SJ($),V.init!=null)}if(G.parentPath.isFor({left:H}))G.replaceWith(z);else if(W.length===0)G.remove();else{let V=W.length===1?W[0]:gX1(W);if(G.parentPath.isForStatement({init:H}))G.replaceWith(V);else G.replaceWith(IX1(V))}}}}wH.default=F0;F0.globals=[...XX1,...ZX1];F0.contextVariables=["arguments","undefined","Infinity","NaN"];F0.prototype._renameFromMap=function(X,Z,Q,Y){if(X[Z])X[Q]=Y,X[Z]=null},F0.prototype.traverse=function(J,X,Z){(0,MH.default)(J,X,this,Z,this.path)},F0.prototype._generateUid=function(X,Z){let Q=X;if(Z>1)Q+=Z;return`_${Q}`},F0.prototype.toArray=function(X,Z,Q){if(wJ(X)){let G=this.getBinding(X.name);if(G!=null&&G.constant&&G.path.isGenericType("Array"))return X}if(DH(X))return X;if(wJ(X,{name:"arguments"}))return UH(W7(W7(W7(SJ("Array"),SJ("prototype")),SJ("slice")),SJ("call")),[X]);let Y,H=[X];if(Z===!0)Y="toConsumableArray";else if(typeof Z==="number")H.push(NX1(Z)),Y="slicedToArray";else Y="toArray";if(Q)H.unshift(this.path.hub.addHelper(Y)),Y="maybeArrayLike";return UH(this.path.hub.addHelper(Y),H)},F0.prototype.getAllBindingsOfKind=function(...X){let Z=Object.create(null);for(let Q of X){let Y=this;do{for(let H of Object.keys(Y.bindings)){let G=Y.bindings[H];if(G.kind===Q)Z[H]=G}Y=Y.parent}while(Y)}return Z},Object.defineProperties(F0.prototype,{parentBlock:{configurable:!0,enumerable:!0,get(){return this.path.parent}},hub:{configurable:!0,enumerable:!0,get(){return this.path.hub}}})});var U7=I((K7,l9)=>{(function(J,X){if(typeof K7==="object"&&typeof l9<"u")X(l9),l9.exports=Z(l9);else if(typeof define==="function"&&define.amd)define(["module"],function(Q){X.apply(this,arguments),Q.exports=Z(Q)});else{let Q={exports:{}};X(Q),J=typeof globalThis<"u"?globalThis:J||self,J.sourcemapCodec=Z(Q)}function Z(Q){return"default"in Q.exports?Q.exports.default:Q.exports}})(K7,function(J){var{defineProperty:X,getOwnPropertyDescriptor:Z,getOwnPropertyNames:Q}=Object,Y=Object.prototype.hasOwnProperty,H=(u,_)=>{for(var L in _)X(u,L,{get:_[L],enumerable:!0})},G=(u,_,L,c)=>{if(_&&typeof _==="object"||typeof _==="function"){for(let J1 of Q(_))if(!Y.call(u,J1)&&J1!==L)X(u,J1,{get:()=>_[J1],enumerable:!(c=Z(_,J1))||c.enumerable})}return u},z=(u)=>G(X({},"__esModule",{value:!0}),u),W={};H(W,{decode:()=>V0,decodeGeneratedRanges:()=>f1,decodeOriginalScopes:()=>U1,encode:()=>f0,encodeGeneratedRanges:()=>e1,encodeOriginalScopes:()=>D1}),J.exports=z(W);var V=44,U=59,$="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",j=new Uint8Array(64),C=new Uint8Array(128);for(let u=0;u<$.length;u++){let _=$.charCodeAt(u);j[u]=_,C[_]=u}function A(u,_){let L=0,c=0,J1=0;do{let A1=u.next();J1=C[A1],L|=(J1&31)<<c,c+=5}while(J1&32);let z1=L&1;if(L>>>=1,z1)L=-2147483648|-L;return _+L}function S(u,_,L){let c=_-L;c=c<0?-c<<1|1:c<<1;do{let J1=c&31;if(c>>>=5,c>0)J1|=32;u.write(j[J1])}while(c>0);return _}function w(u,_){if(u.pos>=_)return!1;return u.peek()!==V}var P=16384,b=typeof TextDecoder<"u"?new TextDecoder:typeof Buffer<"u"?{decode(u){return Buffer.from(u.buffer,u.byteOffset,u.byteLength).toString()}}:{decode(u){let _="";for(let L=0;L<u.length;L++)_+=String.fromCharCode(u[L]);return _}},t=class{constructor(){this.pos=0,this.out="",this.buffer=new Uint8Array(P)}write(u){let{buffer:_}=this;if(_[this.pos++]=u,this.pos===P)this.out+=b.decode(_),this.pos=0}flush(){let{buffer:u,out:_,pos:L}=this;return L>0?_+b.decode(u.subarray(0,L)):_}},m=class{constructor(u){this.pos=0,this.buffer=u}next(){return this.buffer.charCodeAt(this.pos++)}peek(){return this.buffer.charCodeAt(this.pos)}indexOf(u){let{buffer:_,pos:L}=this,c=_.indexOf(u,L);return c===-1?_.length:c}},d=[];function U1(u){let{length:_}=u,L=new m(u),c=[],J1=[],z1=0;for(;L.pos<_;L.pos++){z1=A(L,z1);let A1=A(L,0);if(!w(L,_)){let k1=J1.pop();k1[2]=z1,k1[3]=A1;continue}let $1=A(L,0),q1=A(L,0)&1?[z1,A1,0,0,$1,A(L,0)]:[z1,A1,0,0,$1],N1=d;if(w(L,_)){N1=[];do{let k1=A(L,0);N1.push(k1)}while(w(L,_))}q1.vars=N1,c.push(q1),J1.push(q1)}return c}function D1(u){let _=new t;for(let L=0;L<u.length;)L=L1(u,L,_,[0]);return _.flush()}function L1(u,_,L,c){let J1=u[_],{0:z1,1:A1,2:$1,3:I1,4:M1,vars:q1}=J1;if(_>0)L.write(V);c[0]=S(L,z1,c[0]),S(L,A1,0),S(L,M1,0);let N1=J1.length===6?1:0;if(S(L,N1,0),J1.length===6)S(L,J1[5],0);for(let k1 of q1)S(L,k1,0);for(_++;_<u.length;){let k1=u[_],{0:V1,1:S1}=k1;if(V1>$1||V1===$1&&S1>=I1)break;_=L1(u,_,L,c)}return L.write(V),c[0]=S(L,$1,c[0]),S(L,I1,0),_}function f1(u){let{length:_}=u,L=new m(u),c=[],J1=[],z1=0,A1=0,$1=0,I1=0,M1=0,q1=0,N1=0,k1=0;do{let V1=L.indexOf(";"),S1=0;for(;L.pos<V1;L.pos++){if(S1=A(L,S1),!w(L,V1)){let r=J1.pop();r[2]=z1,r[3]=S1;continue}let v1=A(L,0),p1=v1&1,r1=v1&2,m1=v1&4,g=null,E=d,l;if(p1){let r=A(L,A1);$1=A(L,A1===r?$1:0),A1=r,l=[z1,S1,0,0,r,$1]}else l=[z1,S1,0,0];if(l.isScope=!!m1,r1){let r=I1,Z1=M1;I1=A(L,I1);let Q1=r===I1;M1=A(L,Q1?M1:0),q1=A(L,Q1&&Z1===M1?q1:0),g=[I1,M1,q1]}if(l.callsite=g,w(L,V1)){E=[];do{N1=z1,k1=S1;let r=A(L,0),Z1;if(r<-1){Z1=[[A(L,0)]];for(let Q1=-1;Q1>r;Q1--){let F1=N1;N1=A(L,N1),k1=A(L,N1===F1?k1:0);let c1=A(L,0);Z1.push([c1,N1,k1])}}else Z1=[[r]];E.push(Z1)}while(w(L,V1))}l.bindings=E,c.push(l),J1.push(l)}z1++,L.pos=V1+1}while(L.pos<_);return c}function e1(u){if(u.length===0)return"";let _=new t;for(let L=0;L<u.length;)L=J0(u,L,_,[0,0,0,0,0,0,0]);return _.flush()}function J0(u,_,L,c){let J1=u[_],{0:z1,1:A1,2:$1,3:I1,isScope:M1,callsite:q1,bindings:N1}=J1;if(c[0]<z1)Y0(L,c[0],z1),c[0]=z1,c[1]=0;else if(_>0)L.write(V);c[1]=S(L,J1[1],c[1]);let k1=(J1.length===6?1:0)|(q1?2:0)|(M1?4:0);if(S(L,k1,0),J1.length===6){let{4:V1,5:S1}=J1;if(V1!==c[2])c[3]=0;c[2]=S(L,V1,c[2]),c[3]=S(L,S1,c[3])}if(q1){let{0:V1,1:S1,2:v1}=J1.callsite;if(V1!==c[4])c[5]=0,c[6]=0;else if(S1!==c[5])c[6]=0;c[4]=S(L,V1,c[4]),c[5]=S(L,S1,c[5]),c[6]=S(L,v1,c[6])}if(N1)for(let V1 of N1){if(V1.length>1)S(L,-V1.length,0);let S1=V1[0][0];S(L,S1,0);let v1=z1,p1=A1;for(let r1=1;r1<V1.length;r1++){let m1=V1[r1];v1=S(L,m1[1],v1),p1=S(L,m1[2],p1),S(L,m1[0],0)}}for(_++;_<u.length;){let V1=u[_],{0:S1,1:v1}=V1;if(S1>$1||S1===$1&&v1>=I1)break;_=J0(u,_,L,c)}if(c[0]<$1)Y0(L,c[0],$1),c[0]=$1,c[1]=0;else L.write(V);return c[1]=S(L,I1,c[1]),_}function Y0(u,_,L){do u.write(U);while(++_<L)}function V0(u){let{length:_}=u,L=new m(u),c=[],J1=0,z1=0,A1=0,$1=0,I1=0;do{let M1=L.indexOf(";"),q1=[],N1=!0,k1=0;J1=0;while(L.pos<M1){let V1;if(J1=A(L,J1),J1<k1)N1=!1;if(k1=J1,w(L,M1))if(z1=A(L,z1),A1=A(L,A1),$1=A(L,$1),w(L,M1))I1=A(L,I1),V1=[J1,z1,A1,$1,I1];else V1=[J1,z1,A1,$1];else V1=[J1];q1.push(V1),L.pos++}if(!N1)w0(q1);c.push(q1),L.pos=M1+1}while(L.pos<=_);return c}function w0(u){u.sort(l1)}function l1(u,_){return u[0]-_[0]}function f0(u){let _=new t,L=0,c=0,J1=0,z1=0;for(let A1=0;A1<u.length;A1++){let $1=u[A1];if(A1>0)_.write(U);if($1.length===0)continue;let I1=0;for(let M1=0;M1<$1.length;M1++){let q1=$1[M1];if(M1>0)_.write(V);if(I1=S(_,q1[0],I1),q1.length===1)continue;if(L=S(_,q1[1],L),c=S(_,q1[2],c),J1=S(_,q1[3],J1),q1.length===4)continue;z1=S(_,q1[4],z1)}}return _.flush()}})});var PH=I((B7,R7)=>{(function(J,X){typeof B7==="object"&&typeof R7<"u"?R7.exports=X():typeof define==="function"&&define.amd?define(X):(J=typeof globalThis<"u"?globalThis:J||self,J.resolveURI=X())})(B7,function(){let J=/^[\w+.-]+:\/\//,X=/^([\w+.-]+:)\/\/([^@/#?]*@)?([^:/#?]*)(:\d+)?(\/[^#?]*)?(\?[^#]*)?(#.*)?/,Z=/^file:(?:\/\/((?![a-z]:)[^/#?]*)?)?(\/?[^#?]*)(\?[^#]*)?(#.*)?/i;function Q(w){return J.test(w)}function Y(w){return w.startsWith("//")}function H(w){return w.startsWith("/")}function G(w){return w.startsWith("file:")}function z(w){return/^[.?#]/.test(w)}function W(w){let P=X.exec(w);return U(P[1],P[2]||"",P[3],P[4]||"",P[5]||"/",P[6]||"",P[7]||"")}function V(w){let P=Z.exec(w),b=P[2];return U("file:","",P[1]||"","",H(b)?b:"/"+b,P[3]||"",P[4]||"")}function U(w,P,b,t,m,d,U1){return{scheme:w,user:P,host:b,port:t,path:m,query:d,hash:U1,type:7}}function $(w){if(Y(w)){let b=W("http:"+w);return b.scheme="",b.type=6,b}if(H(w)){let b=W("http://foo.com"+w);return b.scheme="",b.host="",b.type=5,b}if(G(w))return V(w);if(Q(w))return W(w);let P=W("http://foo.com/"+w);return P.scheme="",P.host="",P.type=w?w.startsWith("?")?3:w.startsWith("#")?2:4:1,P}function j(w){if(w.endsWith("/.."))return w;let P=w.lastIndexOf("/");return w.slice(0,P+1)}function C(w,P){if(A(P,P.type),w.path==="/")w.path=P.path;else w.path=j(P.path)+w.path}function A(w,P){let b=P<=4,t=w.path.split("/"),m=1,d=0,U1=!1;for(let L1=1;L1<t.length;L1++){let f1=t[L1];if(!f1){U1=!0;continue}if(U1=!1,f1===".")continue;if(f1===".."){if(d)U1=!0,d--,m--;else if(b)t[m++]=f1;continue}t[m++]=f1,d++}let D1="";for(let L1=1;L1<m;L1++)D1+="/"+t[L1];if(!D1||U1&&!D1.endsWith("/.."))D1+="/";w.path=D1}function S(w,P){if(!w&&!P)return"";let b=$(w),t=b.type;if(P&&t!==7){let d=$(P),U1=d.type;switch(t){case 1:b.hash=d.hash;case 2:b.query=d.query;case 3:case 4:C(b,d);case 5:b.user=d.user,b.host=d.host,b.port=d.port;case 6:b.scheme=d.scheme}if(U1>t)t=U1}A(b,t);let m=b.query+b.hash;switch(t){case 2:case 3:return m;case 4:{let d=b.path.slice(1);if(!d)return m||".";if(z(P||w)&&!z(d))return"./"+d+m;return d+m}case 5:return b.path+m;default:return b.scheme+"//"+b.user+b.host+b.port+b.path+m}}return S})});var q7=I(($7,i9)=>{(function(J,X){if(typeof $7==="object"&&typeof i9<"u")X(i9,PH(),U7()),i9.exports=Z(i9);else if(typeof define==="function"&&define.amd)define(["module","@jridgewell/resolve-uri","@jridgewell/sourcemap-codec"],function(Q){X.apply(this,arguments),Q.exports=Z(Q)});else{let Q={exports:{}};X(Q,J.resolveURI,J.sourcemapCodec),J=typeof globalThis<"u"?globalThis:J||self,J.traceMapping=Z(Q)}function Z(Q){return"default"in Q.exports?Q.exports.default:Q.exports}})($7,function(J,X,Z){var{create:Q,defineProperty:Y,getOwnPropertyDescriptor:H,getOwnPropertyNames:G,getPrototypeOf:z}=Object,W=Object.prototype.hasOwnProperty,V=(N,k)=>function(){return k||(0,N[G(N)[0]])((k={exports:{}}).exports,k),k.exports},U=(N,k)=>{for(var v in k)Y(N,v,{get:k[v],enumerable:!0})},$=(N,k,v,x)=>{if(k&&typeof k==="object"||typeof k==="function"){for(let e of G(k))if(!W.call(N,e)&&e!==v)Y(N,e,{get:()=>k[e],enumerable:!(x=H(k,e))||x.enumerable})}return N},j=(N,k,v)=>(v=N!=null?Q(z(N)):{},$(k||!N||!N.__esModule?Y(v,"default",{value:N,enumerable:!0}):v,N)),C=(N)=>$(Y({},"__esModule",{value:!0}),N),A=V({"umd:@jridgewell/sourcemap-codec"(N,k){k.exports=Z}}),S=V({"umd:@jridgewell/resolve-uri"(N,k){k.exports=X}}),w={};U(w,{AnyMap:()=>I1,FlattenMap:()=>I1,GREATEST_LOWER_BOUND:()=>p1,LEAST_UPPER_BOUND:()=>v1,TraceMap:()=>r1,allGeneratedPositionsFor:()=>Q1,decodedMap:()=>UJ,decodedMappings:()=>E,eachMapping:()=>F1,encodedMap:()=>hJ,encodedMappings:()=>g,generatedPositionFor:()=>Z1,isIgnored:()=>$9,originalPositionFor:()=>r,presortedDecodedMap:()=>KJ,sourceContentFor:()=>K0,traceSegment:()=>l}),J.exports=C(w);var P=j(A()),b=j(S());function t(N){if(!N)return"";let k=N.lastIndexOf("/");return N.slice(0,k+1)}function m(N,k){let v=t(N),x=k?k+"/":"";return(e)=>(0,b.default)(x+(e||""),v)}var d=0,U1=1,D1=2,L1=3,f1=4,e1=1,J0=2;function Y0(N,k){let v=V0(N,0);if(v===N.length)return N;if(!k)N=N.slice();for(let x=v;x<N.length;x=V0(N,x+1))N[x]=l1(N[x],k);return N}function V0(N,k){for(let v=k;v<N.length;v++)if(!w0(N[v]))return v;return N.length}function w0(N){for(let k=1;k<N.length;k++)if(N[k][d]<N[k-1][d])return!1;return!0}function l1(N,k){if(!k)N=N.slice();return N.sort(f0)}function f0(N,k){return N[d]-k[d]}function u(N,k){let v=k.map(()=>[]);for(let x=0;x<N.length;x++){let e=N[x];for(let a=0;a<e.length;a++){let K1=e[a];if(K1.length===1)continue;let w1=K1[U1],W1=K1[D1],h1=K1[L1],y1=v[w1];(y1[W1]||(y1[W1]=[])).push([h1,x,K1[d]])}}for(let x=0;x<v.length;x++){let e=v[x];for(let a=0;a<e.length;a++){let K1=e[a];if(K1)K1.sort(f0)}}return v}var _=!1;function L(N,k,v,x){while(v<=x){let e=v+(x-v>>1),a=N[e][d]-k;if(a===0)return _=!0,e;if(a<0)v=e+1;else x=e-1}return _=!1,v-1}function c(N,k,v){for(let x=v+1;x<N.length;v=x++)if(N[x][d]!==k)break;return v}function J1(N,k,v){for(let x=v-1;x>=0;v=x--)if(N[x][d]!==k)break;return v}function z1(){return{lastKey:-1,lastNeedle:-1,lastIndex:-1}}function A1(N,k,v,x){let{lastKey:e,lastNeedle:a,lastIndex:K1}=v,w1=0,W1=N.length-1;if(x===e){if(k===a)return _=K1!==-1&&N[K1][d]===k,K1;if(k>=a)w1=K1===-1?0:K1;else W1=K1}return v.lastKey=x,v.lastNeedle=k,v.lastIndex=L(N,k,w1,W1)}function $1(N){return typeof N==="string"?JSON.parse(N):N}var I1=function(N,k){let v=$1(N);if(!("sections"in v))return new r1(v,k);let x=[],e=[],a=[],K1=[],w1=[];M1(v,k,x,e,a,K1,w1,0,0,1/0,1/0);let W1={version:3,file:v.file,names:K1,sources:e,sourcesContent:a,mappings:x,ignoreList:w1};return KJ(W1)};function M1(N,k,v,x,e,a,K1,w1,W1,h1,y1){let{sections:u1}=N;for(let H0=0;H0<u1.length;H0++){let{map:U0,offset:S0}=u1[H0],P0=h1,y0=y1;if(H0+1<u1.length){let xJ=u1[H0+1].offset;if(P0=Math.min(h1,w1+xJ.line),P0===h1)y0=Math.min(y1,W1+xJ.column);else if(P0<h1)y0=W1+xJ.column}q1(U0,k,v,x,e,a,K1,w1+S0.line,W1+S0.column,P0,y0)}}function q1(N,k,v,x,e,a,K1,w1,W1,h1,y1){let u1=$1(N);if("sections"in u1)return M1(...arguments);let H0=new r1(u1,k),U0=x.length,S0=a.length,P0=E(H0),{resolvedSources:y0,sourcesContent:xJ,ignoreList:I2}=H0;if(N1(x,y0),N1(a,H0.names),xJ)N1(e,xJ);else for(let B0=0;B0<y0.length;B0++)e.push(null);if(I2)for(let B0=0;B0<I2.length;B0++)K1.push(I2[B0]+U0);for(let B0=0;B0<P0.length;B0++){let N2=w1+B0;if(N2>h1)return;let _8=k1(v,N2),OV=B0===0?W1:0,g8=P0[B0];for(let w2=0;w2<g8.length;w2++){let RJ=g8[w2],KX=OV+RJ[d];if(N2===h1&&KX>=y1)return;if(RJ.length===1){_8.push([KX]);continue}let f8=U0+RJ[U1],h8=RJ[D1],x8=RJ[L1];_8.push(RJ.length===4?[KX,f8,h8,x8]:[KX,f8,h8,x8,S0+RJ[f1]])}}}function N1(N,k){for(let v=0;v<k.length;v++)N.push(k[v])}function k1(N,k){for(let v=N.length;v<=k;v++)N[v]=[];return N[k]}var V1="`line` must be greater than 0 (lines start at line 1)",S1="`column` must be greater than or equal to 0 (columns start at column 0)",v1=-1,p1=1,r1=class{constructor(N,k){let v=typeof N==="string";if(!v&&N._decodedMemo)return N;let x=$1(N),{version:e,file:a,names:K1,sourceRoot:w1,sources:W1,sourcesContent:h1}=x;this.version=e,this.file=a,this.names=K1||[],this.sourceRoot=w1,this.sources=W1,this.sourcesContent=h1,this.ignoreList=x.ignoreList||x.x_google_ignoreList||void 0;let y1=m(k,w1);this.resolvedSources=W1.map(y1);let{mappings:u1}=x;if(typeof u1==="string")this._encoded=u1,this._decoded=void 0;else if(Array.isArray(u1))this._encoded=void 0,this._decoded=Y0(u1,v);else if(x.sections)throw Error("TraceMap passed sectioned source map, please use FlattenMap export instead");else throw Error(`invalid source map: ${JSON.stringify(x)}`);this._decodedMemo=z1(),this._bySources=void 0,this._bySourceMemos=void 0}};function m1(N){return N}function g(N){var k,v;return(v=(k=m1(N))._encoded)!=null?v:k._encoded=(0,P.encode)(m1(N)._decoded)}function E(N){var k;return(k=m1(N))._decoded||(k._decoded=(0,P.decode)(m1(N)._encoded))}function l(N,k,v){let x=E(N);if(k>=x.length)return null;let e=x[k],a=BJ(e,m1(N)._decodedMemo,k,v,p1);return a===-1?null:e[a]}function r(N,k){let{line:v,column:x,bias:e}=k;if(v--,v<0)throw Error(V1);if(x<0)throw Error(S1);let a=E(N);if(v>=a.length)return x0(null,null,null,null);let K1=a[v],w1=BJ(K1,m1(N)._decodedMemo,v,x,e||p1);if(w1===-1)return x0(null,null,null,null);let W1=K1[w1];if(W1.length===1)return x0(null,null,null,null);let{names:h1,resolvedSources:y1}=N;return x0(y1[W1[U1]],W1[D1]+1,W1[L1],W1.length===5?h1[W1[f1]]:null)}function Z1(N,k){let{source:v,line:x,column:e,bias:a}=k;return E8(N,v,x,e,a||p1,!1)}function Q1(N,k){let{source:v,line:x,column:e,bias:a}=k;return E8(N,v,x,e,a||v1,!0)}function F1(N,k){let v=E(N),{names:x,resolvedSources:e}=N;for(let a=0;a<v.length;a++){let K1=v[a];for(let w1=0;w1<K1.length;w1++){let W1=K1[w1],h1=a+1,y1=W1[0],u1=null,H0=null,U0=null,S0=null;if(W1.length!==1)u1=e[W1[1]],H0=W1[2]+1,U0=W1[3];if(W1.length===5)S0=x[W1[4]];k({generatedLine:h1,generatedColumn:y1,source:u1,originalLine:H0,originalColumn:U0,name:S0})}}}function c1(N,k){let{sources:v,resolvedSources:x}=N,e=v.indexOf(k);if(e===-1)e=x.indexOf(k);return e}function K0(N,k){let{sourcesContent:v}=N;if(v==null)return null;let x=c1(N,k);return x===-1?null:v[x]}function $9(N,k){let{ignoreList:v}=N;if(v==null)return!1;let x=c1(N,k);return x===-1?!1:v.includes(x)}function KJ(N,k){let v=new r1(h0(N,[]),k);return m1(v)._decoded=N.mappings,v}function UJ(N){return h0(N,E(N))}function hJ(N){return h0(N,g(N))}function h0(N,k){return{version:N.version,file:N.file,names:N.names,sourceRoot:N.sourceRoot,sources:N.sources,sourcesContent:N.sourcesContent,mappings:k,ignoreList:N.ignoreList||N.x_google_ignoreList}}function x0(N,k,v,x){return{source:N,line:k,column:v,name:x}}function j0(N,k){return{line:N,column:k}}function BJ(N,k,v,x,e){let a=A1(N,x,k,v);if(_)a=(e===v1?c:J1)(N,x,a);else if(e===v1)a++;if(a===-1||a===N.length)return-1;return a}function MV(N,k,v,x,e){let a=BJ(N,k,v,x,p1);if(!_&&e===v1)a++;if(a===-1||a===N.length)return[];let K1=_?x:N[a][d];if(!_)a=J1(N,K1,a);let w1=c(N,K1,a),W1=[];for(;a<=w1;a++){let h1=N[a];W1.push(j0(h1[e1]+1,h1[J0]))}return W1}function E8(N,k,v,x,e,a){var K1,w1;if(v--,v<0)throw Error(V1);if(x<0)throw Error(S1);let{sources:W1,resolvedSources:h1}=N,y1=W1.indexOf(k);if(y1===-1)y1=h1.indexOf(k);if(y1===-1)return a?[]:j0(null,null);let u1=(K1=m1(N))._bySourceMemos||(K1._bySourceMemos=W1.map(z1)),U0=((w1=m1(N))._bySources||(w1._bySources=u(E(N),u1)))[y1][v];if(U0==null)return a?[]:j0(null,null);let S0=u1[y1];if(a)return MV(U0,S0,v,x,e);let P0=BJ(U0,S0,v,x,e);if(P0===-1)return j0(null,null);let y0=U0[P0];return j0(y0[e1]+1,y0[J0])}})});var TH=I((F7,p9)=>{(function(J,X){if(typeof F7==="object"&&typeof p9<"u")X(p9,U7(),q7()),p9.exports=Z(p9);else if(typeof define==="function"&&define.amd)define(["module","@jridgewell/sourcemap-codec","@jridgewell/trace-mapping"],function(Q){X.apply(this,arguments),Q.exports=Z(Q)});else{let Q={exports:{}};X(Q,J.sourcemapCodec,J.traceMapping),J=typeof globalThis<"u"?globalThis:J||self,J.genMapping=Z(Q)}function Z(Q){return"default"in Q.exports?Q.exports.default:Q.exports}})(F7,function(J,X,Z){var{create:Q,defineProperty:Y,getOwnPropertyDescriptor:H,getOwnPropertyNames:G,getPrototypeOf:z}=Object,W=Object.prototype.hasOwnProperty,V=(g,E)=>function(){return E||(0,g[G(g)[0]])((E={exports:{}}).exports,E),E.exports},U=(g,E)=>{for(var l in E)Y(g,l,{get:E[l],enumerable:!0})},$=(g,E,l,r)=>{if(E&&typeof E==="object"||typeof E==="function"){for(let Z1 of G(E))if(!W.call(g,Z1)&&Z1!==l)Y(g,Z1,{get:()=>E[Z1],enumerable:!(r=H(E,Z1))||r.enumerable})}return g},j=(g,E,l)=>(l=g!=null?Q(z(g)):{},$(E||!g||!g.__esModule?Y(l,"default",{value:g,enumerable:!0}):l,g)),C=(g)=>$(Y({},"__esModule",{value:!0}),g),A=V({"umd:@jridgewell/sourcemap-codec"(g,E){E.exports=X}}),S=V({"umd:@jridgewell/trace-mapping"(g,E){E.exports=Z}}),w={};U(w,{GenMapping:()=>w0,addMapping:()=>u,addSegment:()=>f0,allMappings:()=>I1,fromMap:()=>$1,maybeAddMapping:()=>L,maybeAddSegment:()=>_,setIgnore:()=>J1,setSourceContent:()=>c,toDecodedMap:()=>z1,toEncodedMap:()=>A1}),J.exports=C(w);var P=class{constructor(){this._indexes={__proto__:null},this.array=[]}};function b(g){return g}function t(g,E){return b(g)._indexes[E]}function m(g,E){let l=t(g,E);if(l!==void 0)return l;let{array:r,_indexes:Z1}=b(g),Q1=r.push(E);return Z1[E]=Q1-1}function d(g,E){let l=t(g,E);if(l===void 0)return;let{array:r,_indexes:Z1}=b(g);for(let Q1=l+1;Q1<r.length;Q1++){let F1=r[Q1];r[Q1-1]=F1,Z1[F1]--}Z1[E]=void 0,r.pop()}var U1=j(A()),D1=j(S()),L1=0,f1=1,e1=2,J0=3,Y0=4,V0=-1,w0=class{constructor({file:g,sourceRoot:E}={}){this._names=new P,this._sources=new P,this._sourcesContent=[],this._mappings=[],this.file=g,this.sourceRoot=E,this._ignoreList=new P}};function l1(g){return g}function f0(g,E,l,r,Z1,Q1,F1,c1){return M1(!1,g,E,l,r,Z1,Q1,F1,c1)}function u(g,E){return m1(!1,g,E)}var _=(g,E,l,r,Z1,Q1,F1,c1)=>{return M1(!0,g,E,l,r,Z1,Q1,F1,c1)},L=(g,E)=>{return m1(!0,g,E)};function c(g,E,l){let{_sources:r,_sourcesContent:Z1}=l1(g),Q1=m(r,E);Z1[Q1]=l}function J1(g,E,l=!0){let{_sources:r,_sourcesContent:Z1,_ignoreList:Q1}=l1(g),F1=m(r,E);if(F1===Z1.length)Z1[F1]=null;if(l)m(Q1,F1);else d(Q1,F1)}function z1(g){let{_mappings:E,_sources:l,_sourcesContent:r,_names:Z1,_ignoreList:Q1}=l1(g);return S1(E),{version:3,file:g.file||void 0,names:Z1.array,sourceRoot:g.sourceRoot||void 0,sources:l.array,sourcesContent:r,mappings:E,ignoreList:Q1.array}}function A1(g){let E=z1(g);return Object.assign({},E,{mappings:(0,U1.encode)(E.mappings)})}function $1(g){let E=new D1.TraceMap(g),l=new w0({file:E.file,sourceRoot:E.sourceRoot});if(v1(l1(l)._names,E.names),v1(l1(l)._sources,E.sources),l1(l)._sourcesContent=E.sourcesContent||E.sources.map(()=>null),l1(l)._mappings=(0,D1.decodedMappings)(E),E.ignoreList)v1(l1(l)._ignoreList,E.ignoreList);return l}function I1(g){let E=[],{_mappings:l,_sources:r,_names:Z1}=l1(g);for(let Q1=0;Q1<l.length;Q1++){let F1=l[Q1];for(let c1=0;c1<F1.length;c1++){let K0=F1[c1],$9={line:Q1+1,column:K0[L1]},KJ=void 0,UJ=void 0,hJ=void 0;if(K0.length!==1){if(KJ=r.array[K0[f1]],UJ={line:K0[e1]+1,column:K0[J0]},K0.length===5)hJ=Z1.array[K0[Y0]]}E.push({generated:$9,source:KJ,original:UJ,name:hJ})}}return E}function M1(g,E,l,r,Z1,Q1,F1,c1,K0){let{_mappings:$9,_sources:KJ,_sourcesContent:UJ,_names:hJ}=l1(E),h0=N1($9,l),x0=k1(h0,r);if(!Z1){if(g&&p1(h0,x0))return;return V1(h0,x0,[r])}q1(Q1),q1(F1);let j0=m(KJ,Z1),BJ=c1?m(hJ,c1):V0;if(j0===UJ.length)UJ[j0]=K0!=null?K0:null;if(g&&r1(h0,x0,j0,Q1,F1,BJ))return;return V1(h0,x0,c1?[r,j0,Q1,F1,BJ]:[r,j0,Q1,F1])}function q1(g){}function N1(g,E){for(let l=g.length;l<=E;l++)g[l]=[];return g[E]}function k1(g,E){let l=g.length;for(let r=l-1;r>=0;l=r--){let Z1=g[r];if(E>=Z1[L1])break}return l}function V1(g,E,l){for(let r=g.length;r>E;r--)g[r]=g[r-1];g[E]=l}function S1(g){let{length:E}=g,l=E;for(let r=l-1;r>=0;l=r,r--)if(g[r].length>0)break;if(l<E)g.length=l}function v1(g,E){for(let l=0;l<E.length;l++)m(g,E[l])}function p1(g,E){if(E===0)return!0;return g[E-1].length===1}function r1(g,E,l,r,Z1,Q1){if(E===0)return!1;let F1=g[E-1];if(F1.length===1)return!1;return l===F1[f1]&&r===F1[e1]&&Z1===F1[J0]&&Q1===(F1.length===5?F1[Y0]:V0)}function m1(g,E,l){let{generated:r,source:Z1,original:Q1,name:F1,content:c1}=l;if(!Z1)return M1(g,E,r.line-1,r.column,null,null,null,null,null);return q1(Q1),M1(g,E,r.line-1,r.column,Z1,Q1.line-1,Q1.column,F1,c1)}})});var vH=I((kH)=>{Object.defineProperty(kH,"__esModule",{value:!0});kH.default=void 0;var HJ=TH(),j7=q7();class LH{constructor(J,X){var Z;this._map=void 0,this._rawMappings=void 0,this._sourceFileName=void 0,this._lastGenLine=0,this._lastSourceLine=0,this._lastSourceColumn=0,this._inputMap=void 0;let Q=this._map=new HJ.GenMapping({sourceRoot:J.sourceRoot});if(this._sourceFileName=(Z=J.sourceFileName)==null?void 0:Z.replace(/\\/g,"/"),this._rawMappings=void 0,J.inputSourceMap){this._inputMap=new j7.TraceMap(J.inputSourceMap);let H=this._inputMap.resolvedSources;if(H.length)for(let G=0;G<H.length;G++){var Y;(0,HJ.setSourceContent)(Q,H[G],(Y=this._inputMap.sourcesContent)==null?void 0:Y[G])}}if(typeof X==="string"&&!J.inputSourceMap)(0,HJ.setSourceContent)(Q,this._sourceFileName,X);else if(typeof X==="object")for(let H of Object.keys(X))(0,HJ.setSourceContent)(Q,H.replace(/\\/g,"/"),X[H])}get(){return(0,HJ.toEncodedMap)(this._map)}getDecoded(){return(0,HJ.toDecodedMap)(this._map)}getRawMappings(){return this._rawMappings||(this._rawMappings=(0,HJ.allMappings)(this._map))}mark(J,X,Z,Q,Y,H){var G;this._rawMappings=void 0;let z;if(X!=null)if(this._inputMap){if(z=(0,j7.originalPositionFor)(this._inputMap,{line:X,column:Z}),!z.name&&Y){let W=(0,j7.originalPositionFor)(this._inputMap,Y);if(W.name)Q=W.name}}else z={source:(H==null?void 0:H.replace(/\\/g,"/"))||this._sourceFileName,line:X,column:Z};(0,HJ.maybeAddMapping)(this._map,{name:Q,generated:J,source:(G=z)==null?void 0:G.source,original:z})}}kH.default=LH});var fH=I((_H)=>{Object.defineProperty(_H,"__esModule",{value:!0});_H.default=void 0;class EH{constructor(J,X){this._map=null,this._buf="",this._str="",this._appendCount=0,this._last=0,this._queue=[],this._queueCursor=0,this._canMarkIdName=!0,this._indentChar="",this._fastIndentations=[],this._position={line:1,column:0},this._sourcePosition={identifierName:void 0,identifierNamePos:void 0,line:void 0,column:void 0,filename:void 0},this._map=J,this._indentChar=X;for(let Z=0;Z<64;Z++)this._fastIndentations.push(X.repeat(Z));this._allocQueue()}_allocQueue(){let J=this._queue;for(let X=0;X<16;X++)J.push({char:0,repeat:1,line:void 0,column:void 0,identifierName:void 0,identifierNamePos:void 0,filename:""})}_pushQueue(J,X,Z,Q,Y){let H=this._queueCursor;if(H===this._queue.length)this._allocQueue();let G=this._queue[H];G.char=J,G.repeat=X,G.line=Z,G.column=Q,G.filename=Y,this._queueCursor++}_popQueue(){if(this._queueCursor===0)throw Error("Cannot pop from empty queue");return this._queue[--this._queueCursor]}get(){this._flush();let J=this._map,X={code:(this._buf+this._str).trimRight(),decodedMap:J==null?void 0:J.getDecoded(),get __mergedMap(){return this.map},get map(){let Z=J?J.get():null;return X.map=Z,Z},set map(Z){Object.defineProperty(X,"map",{value:Z,writable:!0})},get rawMappings(){let Z=J==null?void 0:J.getRawMappings();return X.rawMappings=Z,Z},set rawMappings(Z){Object.defineProperty(X,"rawMappings",{value:Z,writable:!0})}};return X}append(J,X){this._flush(),this._append(J,this._sourcePosition,X)}appendChar(J){this._flush(),this._appendChar(J,1,this._sourcePosition)}queue(J){if(J===10)while(this._queueCursor!==0){let Z=this._queue[this._queueCursor-1].char;if(Z!==32&&Z!==9)break;this._queueCursor--}let X=this._sourcePosition;this._pushQueue(J,1,X.line,X.column,X.filename)}queueIndentation(J){if(J===0)return;this._pushQueue(-1,J,void 0,void 0,void 0)}_flush(){let J=this._queueCursor,X=this._queue;for(let Z=0;Z<J;Z++){let Q=X[Z];this._appendChar(Q.char,Q.repeat,Q)}this._queueCursor=0}_appendChar(J,X,Z){if(this._last=J,J===-1){let Q=this._fastIndentations[X];if(Q!==void 0)this._str+=Q;else this._str+=X>1?this._indentChar.repeat(X):this._indentChar}else this._str+=X>1?String.fromCharCode(J).repeat(X):String.fromCharCode(J);if(J!==10)this._mark(Z.line,Z.column,Z.identifierName,Z.identifierNamePos,Z.filename),this._position.column+=X;else this._position.line++,this._position.column=0;if(this._canMarkIdName)Z.identifierName=void 0,Z.identifierNamePos=void 0}_append(J,X,Z){let Q=J.length,Y=this._position;if(this._last=J.charCodeAt(Q-1),++this._appendCount>4096)+this._str,this._buf+=this._str,this._str=J,this._appendCount=0;else this._str+=J;if(!Z&&!this._map){Y.column+=Q;return}let{column:H,identifierName:G,identifierNamePos:z,filename:W}=X,V=X.line;if((G!=null||z!=null)&&this._canMarkIdName)X.identifierName=void 0,X.identifierNamePos=void 0;let U=J.indexOf(`
23
+ `),$=0;if(U!==0)this._mark(V,H,G,z,W);while(U!==-1){if(Y.line++,Y.column=0,$=U+1,$<Q&&V!==void 0)this._mark(++V,0,null,null,W);U=J.indexOf(`
24
+ `,$)}Y.column+=Q-$}_mark(J,X,Z,Q,Y){var H;(H=this._map)==null||H.mark(this._position,J,X,Z,Q,Y)}removeTrailingNewline(){let J=this._queueCursor;if(J!==0&&this._queue[J-1].char===10)this._queueCursor--}removeLastSemicolon(){let J=this._queueCursor;if(J!==0&&this._queue[J-1].char===59)this._queueCursor--}getLastChar(){let J=this._queueCursor;return J!==0?this._queue[J-1].char:this._last}getNewlineCount(){let J=this._queueCursor,X=0;if(J===0)return this._last===10?1:0;for(let Z=J-1;Z>=0;Z--){if(this._queue[Z].char!==10)break;X++}return X===J&&this._last===10?X+1:X}endsWithCharAndNewline(){let J=this._queue,X=this._queueCursor;if(X!==0){if(J[X-1].char!==10)return;if(X>1)return J[X-2].char;else return this._last}}hasContent(){return this._queueCursor!==0||!!this._last}exactSource(J,X){if(!this._map){X();return}this.source("start",J);let Z=J.identifierName,Q=this._sourcePosition;if(Z)this._canMarkIdName=!1,Q.identifierName=Z;if(X(),Z)this._canMarkIdName=!0,Q.identifierName=void 0,Q.identifierNamePos=void 0;this.source("end",J)}source(J,X){if(!this._map)return;this._normalizePosition(J,X,0)}sourceWithOffset(J,X,Z){if(!this._map)return;this._normalizePosition(J,X,Z)}_normalizePosition(J,X,Z){let Q=X[J],Y=this._sourcePosition;if(Q)Y.line=Q.line,Y.column=Math.max(Q.column+Z,0),Y.filename=X.filename}getCurrentColumn(){let J=this._queue,X=this._queueCursor,Z=-1,Q=0;for(let Y=0;Y<X;Y++){let H=J[Y];if(H.char===10)Z=Q;Q+=H.repeat}return Z===-1?this._position.column+Q:Q-1-Z}getCurrentLine(){let J=0,X=this._queue;for(let Z=0;Z<this._queueCursor;Z++)if(X[Z].char===10)J++;return this._position.line+J}}_H.default=EH});var lH=I((mH)=>{Object.defineProperty(mH,"__esModule",{value:!0});mH.nodes=void 0;var xX1=H1(),{FLIPPED_ALIAS_KEYS:yX1,isArrayExpression:uX1,isAssignmentExpression:xH,isBinary:yH,isBlockStatement:mX1,isCallExpression:uH,isFunction:r9,isIdentifier:rX,isLiteral:cX1,isMemberExpression:M7,isObjectExpression:lX1,isOptionalCallExpression:iX1,isOptionalMemberExpression:pX1,isStringLiteral:rX1}=xX1;function X9(J,X){if(!J)return X;if(M7(J)||pX1(J)){if(X9(J.object,X),J.computed)X9(J.property,X)}else if(yH(J)||xH(J))X9(J.left,X),X9(J.right,X);else if(uH(J)||iX1(J))X.hasCall=!0,X9(J.callee,X);else if(r9(J))X.hasFunction=!0;else if(rX(J))X.hasHelper=X.hasHelper||J.callee&&r0(J.callee);return X}function hH(J){return X9(J,{hasCall:!1,hasFunction:!1,hasHelper:!1})}function r0(J){if(!J)return!1;if(M7(J))return r0(J.object)||r0(J.property);else if(rX(J))return J.name==="require"||J.name.charCodeAt(0)===95;else if(uH(J))return r0(J.callee);else if(yH(J)||xH(J))return rX(J.left)&&r0(J.left)||r0(J.right);else return!1}function dX1(J){return cX1(J)||lX1(J)||uX1(J)||rX(J)||M7(J)}var PJ=mH.nodes={AssignmentExpression(J){let X=hH(J.right);if(X.hasCall&&X.hasHelper||X.hasFunction)return X.hasFunction?3:2},SwitchCase(J,X){return(!!J.consequent.length||X.cases[0]===J?1:0)|(!J.consequent.length&&X.cases[X.cases.length-1]===J?2:0)},LogicalExpression(J){if(r9(J.left)||r9(J.right))return 2},Literal(J){if(rX1(J)&&J.value==="use strict")return 2},CallExpression(J){if(r9(J.callee)||r0(J))return 3},OptionalCallExpression(J){if(r9(J.callee))return 3},VariableDeclaration(J){for(let X=0;X<J.declarations.length;X++){let Z=J.declarations[X],Q=r0(Z.id)&&!dX1(Z.init);if(!Q&&Z.init){let Y=hH(Z.init);Q=r0(Z.init)&&Y.hasCall||Y.hasFunction}if(Q)return 3}},IfStatement(J){if(mX1(J.consequent))return 3}};PJ.ObjectProperty=PJ.ObjectTypeProperty=PJ.ObjectMethod=function(J,X){if(X.properties[0]===J)return 1};PJ.ObjectTypeCallProperty=function(J,X){var Z;if(X.callProperties[0]===J&&!((Z=X.properties)!=null&&Z.length))return 1};PJ.ObjectTypeIndexer=function(J,X){var Z,Q;if(X.indexers[0]===J&&!((Z=X.properties)!=null&&Z.length)&&!((Q=X.callProperties)!=null&&Q.length))return 1};PJ.ObjectTypeInternalSlot=function(J,X){var Z,Q,Y;if(X.internalSlots[0]===J&&!((Z=X.properties)!=null&&Z.length)&&!((Q=X.callProperties)!=null&&Q.length)&&!((Y=X.indexers)!=null&&Y.length))return 1};[["Function",!0],["Class",!0],["Loop",!0],["LabeledStatement",!0],["SwitchStatement",!0],["TryStatement",!0]].forEach(function([J,X]){[J].concat(yX1[J]||[]).forEach(function(Z){let Q=X?3:0;PJ[Z]=()=>Q})})});var oH=I((nH)=>{Object.defineProperty(nH,"__esModule",{value:!0});nH.AssignmentExpression=w21;nH.Binary=aH;nH.BinaryExpression=O21;nH.ClassExpression=D21;nH.ArrowFunctionExpression=nH.ConditionalExpression=tH;nH.DoExpression=W21;nH.FunctionExpression=I21;nH.FunctionTypeAnnotation=H21;nH.Identifier=P21;nH.LogicalExpression=S21;nH.NullableTypeAnnotation=Y21;nH.ObjectExpression=z21;nH.OptionalIndexedAccessType=K21;nH.OptionalCallExpression=nH.OptionalMemberExpression=N21;nH.SequenceExpression=A21;nH.TSSatisfiesExpression=nH.TSAsExpression=U21;nH.TSConditionalType=B21;nH.TSConstructorType=nH.TSFunctionType=M21;nH.TSInferType=q21;nH.TSInstantiationExpression=j21;nH.TSIntersectionType=$21;nH.UnaryLike=nH.TSTypeAssertion=sH;nH.TSTypeOperator=F21;nH.TSUnionType=R21;nH.IntersectionTypeAnnotation=nH.UnionTypeAnnotation=V21;nH.UpdateExpression=G21;nH.AwaitExpression=nH.YieldExpression=C21;var aX1=H1(),W0=TJ(),{isArrayTypeAnnotation:sX1,isBinaryExpression:tX1,isCallExpression:nX1,isForOfStatement:oX1,isIndexedAccessType:eX1,isMemberExpression:rH,isObjectPattern:J21,isOptionalMemberExpression:X21,isYieldExpression:Z21,isStatement:Q21}=aX1,iH=new Map([["||",0],["??",0],["|>",0],["&&",1],["|",2],["^",3],["&",4],["==",5],["===",5],["!=",5],["!==",5],["<",6],[">",6],["<=",6],[">=",6],["in",6],["instanceof",6],[">>",7],["<<",7],[">>>",7],["+",8],["-",8],["*",9],["/",9],["%",9],["**",10]]);function pH(J,X){if(X==="BinaryExpression"||X==="LogicalExpression")return iH.get(J.operator);if(X==="TSAsExpression"||X==="TSSatisfiesExpression")return iH.get("in")}function O7(J){return J==="TSAsExpression"||J==="TSSatisfiesExpression"||J==="TSTypeAssertion"}var dX=(J,X)=>{let Z=X.type;return(Z==="ClassDeclaration"||Z==="ClassExpression")&&X.superClass===J},aX=(J,X)=>{let Z=X.type;return(Z==="MemberExpression"||Z==="OptionalMemberExpression")&&X.object===J||(Z==="CallExpression"||Z==="OptionalCallExpression"||Z==="NewExpression")&&X.callee===J||Z==="TaggedTemplateExpression"&&X.tag===J||Z==="TSNonNullExpression"};function Y21(J,X){return sX1(X)}function H21(J,X,Z){let Q=X.type;return Q==="UnionTypeAnnotation"||Q==="IntersectionTypeAnnotation"||Q==="ArrayTypeAnnotation"||Boolean(Z&W0.TokenContext.arrowFlowReturnType)}function G21(J,X){return aX(J,X)||dX(J,X)}function dH(J){return Boolean(J&(W0.TokenContext.expressionStatement|W0.TokenContext.arrowBody))}function z21(J,X,Z){return dH(Z)}function W21(J,X,Z){return!J.async&&Boolean(Z&W0.TokenContext.expressionStatement)}function aH(J,X){let Z=X.type;if(J.type==="BinaryExpression"&&J.operator==="**"&&Z==="BinaryExpression"&&X.operator==="**")return X.left===J;if(dX(J,X))return!0;if(aX(J,X)||Z==="UnaryExpression"||Z==="SpreadElement"||Z==="AwaitExpression")return!0;let Q=pH(X,Z);if(Q!=null){let Y=pH(J,J.type);if(Q===Y&&Z==="BinaryExpression"&&X.right===J||Q>Y)return!0}return}function V21(J,X){let Z=X.type;return Z==="ArrayTypeAnnotation"||Z==="NullableTypeAnnotation"||Z==="IntersectionTypeAnnotation"||Z==="UnionTypeAnnotation"}function K21(J,X){return eX1(X)&&X.objectType===J}function U21(J,X){if((X.type==="AssignmentExpression"||X.type==="AssignmentPattern")&&X.left===J)return!0;if(X.type==="BinaryExpression"&&(X.operator==="|"||X.operator==="&")&&J===X.left)return!0;return aH(J,X)}function B21(J,X){let Z=X.type;if(Z==="TSArrayType"||Z==="TSIndexedAccessType"&&X.objectType===J||Z==="TSOptionalType"||Z==="TSTypeOperator"||Z==="TSTypeParameter")return!0;if((Z==="TSIntersectionType"||Z==="TSUnionType")&&X.types[0]===J)return!0;if(Z==="TSConditionalType"&&(X.checkType===J||X.extendsType===J))return!0;return!1}function R21(J,X){let Z=X.type;return Z==="TSIntersectionType"||Z==="TSTypeOperator"||Z==="TSArrayType"||Z==="TSIndexedAccessType"&&X.objectType===J||Z==="TSOptionalType"}function $21(J,X){let Z=X.type;return Z==="TSTypeOperator"||Z==="TSArrayType"||Z==="TSIndexedAccessType"&&X.objectType===J||Z==="TSOptionalType"}function q21(J,X){let Z=X.type;if(Z==="TSArrayType"||Z==="TSIndexedAccessType"&&X.objectType===J||Z==="TSOptionalType")return!0;if(J.typeParameter.constraint){if((Z==="TSIntersectionType"||Z==="TSUnionType")&&X.types[0]===J)return!0}return!1}function F21(J,X){let Z=X.type;return Z==="TSArrayType"||Z==="TSIndexedAccessType"&&X.objectType===J||Z==="TSOptionalType"}function j21(J,X){let Z=X.type;return(Z==="CallExpression"||Z==="OptionalCallExpression"||Z==="NewExpression"||Z==="TSInstantiationExpression")&&!!X.typeParameters}function M21(J,X){let Z=X.type;return Z==="TSIntersectionType"||Z==="TSUnionType"||Z==="TSTypeOperator"||Z==="TSOptionalType"||Z==="TSArrayType"||Z==="TSIndexedAccessType"&&X.objectType===J||Z==="TSConditionalType"&&(X.checkType===J||X.extendsType===J)}function O21(J,X,Z){return J.operator==="in"&&Boolean(Z&W0.TokenContext.forInOrInitHeadAccumulate)}function A21(J,X){let Z=X.type;if(Z==="SequenceExpression"||Z==="ParenthesizedExpression"||Z==="MemberExpression"&&X.property===J||Z==="OptionalMemberExpression"&&X.property===J||Z==="TemplateLiteral")return!1;if(Z==="ClassDeclaration")return!0;if(Z==="ForOfStatement")return X.right===J;if(Z==="ExportDefaultDeclaration")return!0;return!Q21(X)}function C21(J,X){let Z=X.type;return Z==="BinaryExpression"||Z==="LogicalExpression"||Z==="UnaryExpression"||Z==="SpreadElement"||aX(J,X)||Z==="AwaitExpression"&&Z21(J)||Z==="ConditionalExpression"&&J===X.test||dX(J,X)||O7(Z)}function D21(J,X,Z){return Boolean(Z&(W0.TokenContext.expressionStatement|W0.TokenContext.exportDefault))}function sH(J,X){return aX(J,X)||tX1(X)&&X.operator==="**"&&X.left===J||dX(J,X)}function I21(J,X,Z){return Boolean(Z&(W0.TokenContext.expressionStatement|W0.TokenContext.exportDefault))}function tH(J,X){let Z=X.type;if(Z==="UnaryExpression"||Z==="SpreadElement"||Z==="BinaryExpression"||Z==="LogicalExpression"||Z==="ConditionalExpression"&&X.test===J||Z==="AwaitExpression"||O7(Z))return!0;return sH(J,X)}function N21(J,X){return nX1(X)&&X.callee===J||rH(X)&&X.object===J}function w21(J,X,Z){if(dH(Z)&&J21(J.left))return!0;else return tH(J,X)}function S21(J,X){let Z=X.type;if(O7(Z))return!0;if(Z!=="LogicalExpression")return!1;switch(J.operator){case"||":return X.operator==="??"||X.operator==="&&";case"&&":return X.operator==="??";case"??":return X.operator!=="??"}}function P21(J,X,Z,Q){var Y;let H=X.type;if((Y=J.extra)!=null&&Y.parenthesized&&H==="AssignmentExpression"&&X.left===J){let G=X.right.type;if((G==="FunctionExpression"||G==="ClassExpression")&&X.right.id==null)return!0}if(Q&&Q(J)!==J.name)return!1;if(J.name==="let"){if((rH(X,{object:J,computed:!0})||X21(X,{object:J,computed:!0,optional:!1}))&&Z&(W0.TokenContext.expressionStatement|W0.TokenContext.forInitHead|W0.TokenContext.forInHead))return!0;return Boolean(Z&W0.TokenContext.forOfHead)}return J.name==="async"&&oX1(X,{left:J,await:!1})}});var TJ=I((ZG)=>{Object.defineProperty(ZG,"__esModule",{value:!0});ZG.TokenContext=void 0;ZG.isLastChild=F61;ZG.needsParens=q61;ZG.needsWhitespace=C7;ZG.needsWhitespaceAfter=$61;ZG.needsWhitespaceBefore=R61;var X61=lH(),Z61=oH(),Q61=H1(),{FLIPPED_ALIAS_KEYS:Y61,VISITOR_KEYS:H61,isCallExpression:eH,isDecorator:G61,isExpressionStatement:z61,isMemberExpression:W61,isNewExpression:V61,isParenthesizedExpression:K61}=Q61,xP1=ZG.TokenContext={normal:0,expressionStatement:1,arrowBody:2,exportDefault:4,arrowFlowReturnType:8,forInitHead:16,forInHead:32,forOfHead:64,forInOrInitHeadAccumulate:128,forInOrInitHeadAccumulatePassThroughMask:128};function JG(J){let X=new Map;function Z(Q,Y){let H=X.get(Q);X.set(Q,H?function(G,z,W,V){var U;return(U=H(G,z,W,V))!=null?U:Y(G,z,W,V)}:Y)}for(let Q of Object.keys(J)){let Y=Y61[Q];if(Y)for(let H of Y)Z(H,J[Q]);else Z(Q,J[Q])}return X}var U61=JG(Z61),B61=JG(X61.nodes);function XG(J){if(eH(J))return!0;return W61(J)&&XG(J.object)}function C7(J,X,Z){var Q;if(!J)return!1;if(z61(J))J=J.expression;let Y=(Q=B61.get(J.type))==null?void 0:Q(J,X);if(typeof Y==="number")return(Y&Z)!==0;return!1}function R61(J,X){return C7(J,X,1)}function $61(J,X){return C7(J,X,2)}function q61(J,X,Z,Q){var Y;if(!X)return!1;if(V61(X)&&X.callee===J){if(XG(J))return!0}if(G61(X))return!A7(J)&&!(eH(J)&&A7(J.callee))&&!K61(J);return(Y=U61.get(J.type))==null?void 0:Y(J,X,Z,Q)}function A7(J){switch(J.type){case"Identifier":return!0;case"MemberExpression":return!J.computed&&J.property.type==="Identifier"&&A7(J.object);default:return!1}}function F61(J,X){let Z=H61[J.type];for(let Q=Z.length-1;Q>=0;Q--){let Y=J[Z[Q]];if(Y===X)return!0;else if(Array.isArray(Y)){let H=Y.length-1;while(H>=0&&Y[H]===null)H--;return H>=0&&Y[H]===X}else if(Y)return!1}return!1}});var zG=I((HG)=>{Object.defineProperty(HG,"__esModule",{value:!0});HG.TokenMap=void 0;var D61=H1(),{traverseFast:I61,VISITOR_KEYS:N61}=D61;class YG{constructor(J,X,Z){this._tokens=void 0,this._source=void 0,this._nodesToTokenIndexes=new Map,this._nodesOccurrencesCountCache=new Map,this._tokensCache=new Map,this._tokens=X,this._source=Z,I61(J,(Q)=>{let Y=this._getTokensIndexesOfNode(Q);if(Y.length>0)this._nodesToTokenIndexes.set(Q,Y)}),this._tokensCache=null}has(J){return this._nodesToTokenIndexes.has(J)}getIndexes(J){return this._nodesToTokenIndexes.get(J)}find(J,X){let Z=this._nodesToTokenIndexes.get(J);if(Z)for(let Q=0;Q<Z.length;Q++){let Y=Z[Q],H=this._tokens[Y];if(X(H,Y))return H}return null}findLastIndex(J,X){let Z=this._nodesToTokenIndexes.get(J);if(Z)for(let Q=Z.length-1;Q>=0;Q--){let Y=Z[Q],H=this._tokens[Y];if(X(H,Y))return Y}return-1}findMatching(J,X,Z=0){let Q=this._nodesToTokenIndexes.get(J);if(Q){let Y=0,H=Z;if(H>1){let G=this._nodesOccurrencesCountCache.get(J);if(G&&G.test===X&&G.count<H)Y=G.i+1,Z-=G.count+1}for(;Y<Q.length;Y++){let G=this._tokens[Q[Y]];if(this.matchesOriginal(G,X)){if(Z===0){if(H>0)this._nodesOccurrencesCountCache.set(J,{test:X,count:H,i:Y});return G}Z--}}}return null}matchesOriginal(J,X){if(J.end-J.start!==X.length)return!1;if(J.value!=null)return J.value===X;return this._source.startsWith(X,J.start)}startMatches(J,X){let Z=this._nodesToTokenIndexes.get(J);if(!Z)return!1;let Q=this._tokens[Z[0]];if(Q.start!==J.start)return!1;return this.matchesOriginal(Q,X)}endMatches(J,X){let Z=this._nodesToTokenIndexes.get(J);if(!Z)return!1;let Q=this._tokens[Z[Z.length-1]];if(Q.end!==J.end)return!1;return this.matchesOriginal(Q,X)}_getTokensIndexesOfNode(J){if(J.start==null||J.end==null)return[];let{first:X,last:Z}=this._findTokensOfNode(J,0,this._tokens.length-1),Q=X,Y=w61(J);if((J.type==="ExportNamedDeclaration"||J.type==="ExportDefaultDeclaration")&&J.declaration&&J.declaration.type==="ClassDeclaration")Y.next();let H=[];for(let G of Y){if(G==null)continue;if(G.start==null||G.end==null)continue;let z=this._findTokensOfNode(G,Q,Z),W=z.first;for(let V=Q;V<W;V++)H.push(V);Q=z.last+1}for(let G=Q;G<=Z;G++)H.push(G);return H}_findTokensOfNode(J,X,Z){let Q=this._tokensCache.get(J);if(Q)return Q;let Y=this._findFirstTokenOfNode(J.start,X,Z),H=this._findLastTokenOfNode(J.end,Y,Z);return this._tokensCache.set(J,{first:Y,last:H}),{first:Y,last:H}}_findFirstTokenOfNode(J,X,Z){while(X<=Z){let Q=Z+X>>1;if(J<this._tokens[Q].start)Z=Q-1;else if(J>this._tokens[Q].start)X=Q+1;else return Q}return X}_findLastTokenOfNode(J,X,Z){while(X<=Z){let Q=Z+X>>1;if(J<this._tokens[Q].end)Z=Q-1;else if(J>this._tokens[Q].end)X=Q+1;else return Q}return Z}}HG.TokenMap=YG;function*w61(J){if(J.type==="TemplateLiteral"){yield J.quasis[0];for(let Z=1;Z<J.quasis.length;Z++)yield J.expressions[Z-1],yield J.quasis[Z];return}let X=N61[J.type];for(let Z of X){let Q=J[Z];if(!Q)continue;if(Array.isArray(Q))yield*Q;else yield Q}}});var VG=I((WG)=>{Object.defineProperty(WG,"__esModule",{value:!0});WG.TaggedTemplateExpression=S61;WG.TemplateElement=P61;WG.TemplateLiteral=L61;WG._printTemplate=T61;function S61(J){this.print(J.tag),this.print(J.typeParameters),this.print(J.quasi)}function P61(){throw Error("TemplateElement printing is handled in TemplateLiteral")}function T61(J,X){let Z=J.quasis,Q="`";for(let Y=0;Y<Z.length-1;Y++)if(Q+=Z[Y].value.raw,this.token(Q+"${",!0),this.print(X[Y]),Q="}",this.tokenMap){let H=this.tokenMap.findMatching(J,"}",Y);if(H)this._catchUpTo(H.loc.start)}Q+=Z[Z.length-1].value.raw,this.token(Q+"`",!0)}function L61(J){this._printTemplate(J,J.expressions)}});var BG=I((UG)=>{Object.defineProperty(UG,"__esModule",{value:!0});UG.LogicalExpression=UG.BinaryExpression=UG.AssignmentExpression=H71;UG.AssignmentPattern=Y71;UG.AwaitExpression=J71;UG.BindExpression=G71;UG.CallExpression=o61;UG.ConditionalExpression=l61;UG.Decorator=s61;UG.DoExpression=u61;UG.EmptyStatement=Z71;UG.ExpressionStatement=Q71;UG.Import=e61;UG.MemberExpression=z71;UG.MetaProperty=W71;UG.ModuleExpression=U71;UG.NewExpression=i61;UG.OptionalCallExpression=n61;UG.OptionalMemberExpression=t61;UG.ParenthesizedExpression=m61;UG.PrivateName=V71;UG.SequenceExpression=p61;UG.Super=d61;UG.ThisExpression=r61;UG.UnaryExpression=y61;UG.UpdateExpression=c61;UG.V8IntrinsicIdentifier=K71;UG.YieldExpression=X71;UG._shouldPrintDecoratorsBeforeExport=a61;var _61=H1(),g61=TJ(),{isCallExpression:f61,isLiteral:KG,isMemberExpression:D7,isNewExpression:h61,isPattern:x61}=_61;function y61(J){let{operator:X}=J;if(X==="void"||X==="delete"||X==="typeof"||X==="throw")this.word(X),this.space();else this.token(X);this.print(J.argument)}function u61(J){if(J.async)this.word("async",!0),this.space();this.word("do"),this.space(),this.print(J.body)}function m61(J){this.tokenChar(40);let X=this.enterDelimited();this.print(J.expression),X(),this.rightParens(J)}function c61(J){if(J.prefix)this.token(J.operator),this.print(J.argument);else this.print(J.argument,!0),this.token(J.operator)}function l61(J){this.print(J.test),this.space(),this.tokenChar(63),this.space(),this.print(J.consequent),this.space(),this.tokenChar(58),this.space(),this.print(J.alternate)}function i61(J,X){if(this.word("new"),this.space(),this.print(J.callee),this.format.minified&&J.arguments.length===0&&!J.optional&&!f61(X,{callee:J})&&!D7(X)&&!h61(X))return;if(this.print(J.typeArguments),this.print(J.typeParameters),J.optional)this.token("?.");if(J.arguments.length===0&&this.tokenMap&&!this.tokenMap.endMatches(J,")"))return;this.tokenChar(40);let Z=this.enterDelimited();this.printList(J.arguments,this.shouldPrintTrailingComma(")")),Z(),this.rightParens(J)}function p61(J){this.printList(J.expressions)}function r61(){this.word("this")}function d61(){this.word("super")}function a61(J){if(typeof this.format.decoratorsBeforeExport==="boolean")return this.format.decoratorsBeforeExport;return typeof J.start==="number"&&J.start===J.declaration.start}function s61(J){this.tokenChar(64),this.print(J.expression),this.newline()}function t61(J){let{computed:X}=J,{optional:Z,property:Q}=J;if(this.print(J.object),!X&&D7(Q))throw TypeError("Got a MemberExpression for MemberExpression property");if(KG(Q)&&typeof Q.value==="number")X=!0;if(Z)this.token("?.");if(X)this.tokenChar(91),this.print(Q),this.tokenChar(93);else{if(!Z)this.tokenChar(46);this.print(Q)}}function n61(J){if(this.print(J.callee),this.print(J.typeParameters),J.optional)this.token("?.");this.print(J.typeArguments),this.tokenChar(40);let X=this.enterDelimited();this.printList(J.arguments),X(),this.rightParens(J)}function o61(J){this.print(J.callee),this.print(J.typeArguments),this.print(J.typeParameters),this.tokenChar(40);let X=this.enterDelimited();this.printList(J.arguments,this.shouldPrintTrailingComma(")")),X(),this.rightParens(J)}function e61(){this.word("import")}function J71(J){this.word("await"),this.space(),this.print(J.argument)}function X71(J){if(J.delegate){if(this.word("yield",!0),this.tokenChar(42),J.argument)this.space(),this.print(J.argument)}else if(J.argument)this.word("yield",!0),this.space(),this.print(J.argument);else this.word("yield")}function Z71(){this.semicolon(!0)}function Q71(J){this.tokenContext|=g61.TokenContext.expressionStatement,this.print(J.expression),this.semicolon()}function Y71(J){if(this.print(J.left),J.left.type==="Identifier"||x61(J.left)){if(J.left.optional)this.tokenChar(63);this.print(J.left.typeAnnotation)}this.space(),this.tokenChar(61),this.space(),this.print(J.right)}function H71(J){if(this.print(J.left),this.space(),J.operator==="in"||J.operator==="instanceof")this.word(J.operator);else this.token(J.operator),this._endsWithDiv=J.operator==="/";this.space(),this.print(J.right)}function G71(J){this.print(J.object),this.token("::"),this.print(J.callee)}function z71(J){if(this.print(J.object),!J.computed&&D7(J.property))throw TypeError("Got a MemberExpression for MemberExpression property");let X=J.computed;if(KG(J.property)&&typeof J.property.value==="number")X=!0;if(X){let Z=this.enterDelimited();this.tokenChar(91),this.print(J.property),this.tokenChar(93),Z()}else this.tokenChar(46),this.print(J.property)}function W71(J){this.print(J.meta),this.tokenChar(46),this.print(J.property)}function V71(J){this.tokenChar(35),this.print(J.id)}function K71(J){this.tokenChar(37),this.word(J.name)}function U71(J){this.word("module",!0),this.space(),this.tokenChar(123),this.indent();let{body:X}=J;if(X.body.length||X.directives.length)this.newline();this.print(X),this.dedent(),this.rightBrace(J)}});var MG=I((FG)=>{Object.defineProperty(FG,"__esModule",{value:!0});FG.BreakStatement=a71;FG.CatchClause=J81;FG.ContinueStatement=s71;FG.DebuggerStatement=Q81;FG.DoWhileStatement=d71;FG.ForOfStatement=FG.ForInStatement=void 0;FG.ForStatement=p71;FG.IfStatement=i71;FG.LabeledStatement=o71;FG.ReturnStatement=t71;FG.SwitchCase=Z81;FG.SwitchStatement=X81;FG.ThrowStatement=n71;FG.TryStatement=e71;FG.VariableDeclaration=Y81;FG.VariableDeclarator=H81;FG.WhileStatement=r71;FG.WithStatement=l71;var y71=H1(),{isFor:RG,isForStatement:u71,isIfStatement:m71,isStatement:c71}=y71;function l71(J){this.word("with"),this.space(),this.tokenChar(40),this.print(J.object),this.tokenChar(41),this.printBlock(J)}function i71(J){this.word("if"),this.space(),this.tokenChar(40),this.print(J.test),this.tokenChar(41),this.space();let X=J.alternate&&m71($G(J.consequent));if(X)this.tokenChar(123),this.newline(),this.indent();if(this.printAndIndentOnComments(J.consequent),X)this.dedent(),this.newline(),this.tokenChar(125);if(J.alternate){if(this.endsWith(125))this.space();this.word("else"),this.space(),this.printAndIndentOnComments(J.alternate)}}function $G(J){let{body:X}=J;if(c71(X)===!1)return J;return $G(X)}function p71(J){this.word("for"),this.space(),this.tokenChar(40);{let X=this.enterForStatementInit();this.print(J.init),X()}if(this.tokenChar(59),J.test)this.space(),this.print(J.test);if(this.token(";",!1,1),J.update)this.space(),this.print(J.update);this.tokenChar(41),this.printBlock(J)}function r71(J){this.word("while"),this.space(),this.tokenChar(40),this.print(J.test),this.tokenChar(41),this.printBlock(J)}function qG(J){this.word("for"),this.space();let X=J.type==="ForOfStatement";if(X&&J.await)this.word("await"),this.space();this.noIndentInnerCommentsHere(),this.tokenChar(40);{let Z=this.enterForXStatementInit(X);this.print(J.left),Z==null||Z()}this.space(),this.word(X?"of":"in"),this.space(),this.print(J.right),this.tokenChar(41),this.printBlock(J)}var pP1=FG.ForInStatement=qG,rP1=FG.ForOfStatement=qG;function d71(J){this.word("do"),this.space(),this.print(J.body),this.space(),this.word("while"),this.space(),this.tokenChar(40),this.print(J.test),this.tokenChar(41),this.semicolon()}function sX(J,X){if(X)J.space(),J.printTerminatorless(X);J.semicolon()}function a71(J){this.word("break"),sX(this,J.label)}function s71(J){this.word("continue"),sX(this,J.label)}function t71(J){this.word("return"),sX(this,J.argument)}function n71(J){this.word("throw"),sX(this,J.argument)}function o71(J){this.print(J.label),this.tokenChar(58),this.space(),this.print(J.body)}function e71(J){if(this.word("try"),this.space(),this.print(J.block),this.space(),J.handlers)this.print(J.handlers[0]);else this.print(J.handler);if(J.finalizer)this.space(),this.word("finally"),this.space(),this.print(J.finalizer)}function J81(J){if(this.word("catch"),this.space(),J.param)this.tokenChar(40),this.print(J.param),this.print(J.param.typeAnnotation),this.tokenChar(41),this.space();this.print(J.body)}function X81(J){this.word("switch"),this.space(),this.tokenChar(40),this.print(J.discriminant),this.tokenChar(41),this.space(),this.tokenChar(123),this.printSequence(J.cases,!0,void 0,function(Z,Q){if(!Z&&J.cases[J.cases.length-1]===Q)return-1}),this.rightBrace(J)}function Z81(J){if(J.test)this.word("case"),this.space(),this.print(J.test),this.tokenChar(58);else this.word("default"),this.tokenChar(58);if(J.consequent.length)this.newline(),this.printSequence(J.consequent,!0)}function Q81(){this.word("debugger"),this.semicolon()}function Y81(J,X){if(J.declare)this.word("declare"),this.space();let{kind:Z}=J;if(Z==="await using")this.word("await"),this.space(),this.word("using",!0);else this.word(Z,Z==="using");this.space();let Q=!1;if(!RG(X)){for(let Y of J.declarations)if(Y.init)Q=!0}if(this.printList(J.declarations,void 0,void 0,J.declarations.length>1,Q?function(Y){this.token(",",!1,Y),this.newline()}:void 0),RG(X)){if(u71(X)){if(X.init===J)return}else if(X.left===J)return}this.semicolon()}function H81(J){if(this.print(J.id),J.definite)this.tokenChar(33);if(this.print(J.id.typeAnnotation),J.init)this.space(),this.tokenChar(61),this.space(),this.print(J.init)}});var AG=I((OG)=>{Object.defineProperty(OG,"__esModule",{value:!0});OG.ClassAccessorProperty=b81;OG.ClassBody=T81;OG.ClassExpression=OG.ClassDeclaration=P81;OG.ClassMethod=E81;OG.ClassPrivateMethod=_81;OG.ClassPrivateProperty=v81;OG.ClassProperty=k81;OG.StaticBlock=f81;OG._classMethodHead=g81;var N81=H1(),{isExportDefaultDeclaration:w81,isExportNamedDeclaration:S81}=N81;function P81(J,X){if(!(w81(X)||S81(X))||!this._shouldPrintDecoratorsBeforeExport(X))this.printJoin(J.decorators);if(J.declare)this.word("declare"),this.space();if(J.abstract)this.word("abstract"),this.space();if(this.word("class"),J.id)this.space(),this.print(J.id);if(this.print(J.typeParameters),J.superClass)this.space(),this.word("extends"),this.space(),this.print(J.superClass),this.print(J.superTypeParameters);if(J.implements)this.space(),this.word("implements"),this.space(),this.printList(J.implements);this.space(),this.print(J.body)}function T81(J){if(this.tokenChar(123),J.body.length===0)this.tokenChar(125);else{this.newline();let X=L81(this,J);X==null||X(-1);let Z=this.enterDelimited();if(this.printJoin(J.body,!0,!0,X,!0),Z(),!this.endsWith(10))this.newline();this.rightBrace(J)}}function L81(J,X){if(!J.tokenMap||X.start==null||X.end==null)return null;let Z=J.tokenMap.getIndexes(X);if(!Z)return null;let Q=1,Y=0,H=0,G=()=>{while(H<X.body.length&&X.body[H].start==null)H++};return G(),(z)=>{if(H<=z)H=z+1,G();let W=H===X.body.length?X.end:X.body[H].start,V;while(Q<Z.length&&J.tokenMap.matchesOriginal(V=J._tokens[Z[Q]],";")&&V.start<W)J.token(";",void 0,Y++),Q++}}function k81(J){if(this.printJoin(J.decorators),!J.static&&!this.format.preserveFormat){var X;let Z=(X=J.key.loc)==null||(X=X.end)==null?void 0:X.line;if(Z)this.catchUp(Z)}if(this.tsPrintClassMemberModifiers(J),J.computed)this.tokenChar(91),this.print(J.key),this.tokenChar(93);else this._variance(J),this.print(J.key);if(J.optional)this.tokenChar(63);if(J.definite)this.tokenChar(33);if(this.print(J.typeAnnotation),J.value)this.space(),this.tokenChar(61),this.space(),this.print(J.value);this.semicolon()}function b81(J){var X;this.printJoin(J.decorators);let Z=(X=J.key.loc)==null||(X=X.end)==null?void 0:X.line;if(Z)this.catchUp(Z);if(this.tsPrintClassMemberModifiers(J),this.word("accessor",!0),this.space(),J.computed)this.tokenChar(91),this.print(J.key),this.tokenChar(93);else this._variance(J),this.print(J.key);if(J.optional)this.tokenChar(63);if(J.definite)this.tokenChar(33);if(this.print(J.typeAnnotation),J.value)this.space(),this.tokenChar(61),this.space(),this.print(J.value);this.semicolon()}function v81(J){if(this.printJoin(J.decorators),this.tsPrintClassMemberModifiers(J),this.print(J.key),J.optional)this.tokenChar(63);if(J.definite)this.tokenChar(33);if(this.print(J.typeAnnotation),J.value)this.space(),this.tokenChar(61),this.space(),this.print(J.value);this.semicolon()}function E81(J){this._classMethodHead(J),this.space(),this.print(J.body)}function _81(J){this._classMethodHead(J),this.space(),this.print(J.body)}function g81(J){if(this.printJoin(J.decorators),!this.format.preserveFormat){var X;let Z=(X=J.key.loc)==null||(X=X.end)==null?void 0:X.line;if(Z)this.catchUp(Z)}this.tsPrintClassMemberModifiers(J),this._methodHead(J)}function f81(J){if(this.word("static"),this.space(),this.tokenChar(123),J.body.length===0)this.tokenChar(125);else this.newline(),this.printSequence(J.body,!0),this.rightBrace(J)}});var DG=I((CG)=>{Object.defineProperty(CG,"__esModule",{value:!0});CG.ArrowFunctionExpression=Z41;CG.FunctionDeclaration=CG.FunctionExpression=X41;CG._functionHead=J41;CG._methodHead=o81;CG._param=n81;CG._parameters=t81;CG._params=s81;CG._predicate=e81;CG._shouldPrintArrowParamsParens=Q41;var r81=H1(),d81=TJ(),{isIdentifier:a81}=r81;function s81(J,X,Z){this.print(J.typeParameters);let Q=Y41.call(this,X,Z);if(Q)this.sourceIdentifierName(Q.name,Q.pos);this.tokenChar(40),this._parameters(J.params,")");let Y=J.type==="ArrowFunctionExpression";this.print(J.returnType,Y),this._noLineTerminator=Y}function t81(J,X){let Z=this.enterDelimited(),Q=this.shouldPrintTrailingComma(X),Y=J.length;for(let H=0;H<Y;H++)if(this._param(J[H]),Q||H<Y-1)this.token(",",null,H),this.space();this.token(X),Z()}function n81(J){if(this.printJoin(J.decorators),this.print(J),J.optional)this.tokenChar(63);this.print(J.typeAnnotation)}function o81(J){let{kind:X,key:Z}=J;if(X==="get"||X==="set")this.word(X),this.space();if(J.async)this.word("async",!0),this.space();if(X==="method"||X==="init"){if(J.generator)this.tokenChar(42)}if(J.computed)this.tokenChar(91),this.print(Z),this.tokenChar(93);else this.print(Z);if(J.optional)this.tokenChar(63);this._params(J,J.computed&&J.key.type!=="StringLiteral"?void 0:J.key,void 0)}function e81(J,X){if(J.predicate){if(!J.returnType)this.tokenChar(58);this.space(),this.print(J.predicate,X)}}function J41(J,X){if(J.async){if(this.word("async"),!this.format.preserveFormat)this._endsWithInnerRaw=!1;this.space()}if(this.word("function"),J.generator){if(!this.format.preserveFormat)this._endsWithInnerRaw=!1;this.tokenChar(42)}if(this.space(),J.id)this.print(J.id);if(this._params(J,J.id,X),J.type!=="TSDeclareFunction")this._predicate(J)}function X41(J,X){this._functionHead(J,X),this.space(),this.print(J.body)}function Z41(J,X){if(J.async)this.word("async",!0),this.space();if(this._shouldPrintArrowParamsParens(J))this._params(J,void 0,X);else this.print(J.params[0],!0);this._predicate(J,!0),this.space(),this.printInnerComments(),this.token("=>"),this.space(),this.tokenContext|=d81.TokenContext.arrowBody,this.print(J.body)}function Q41(J){var X,Z;if(J.params.length!==1)return!0;if(J.typeParameters||J.returnType||J.predicate)return!0;let Q=J.params[0];if(!a81(Q)||Q.typeAnnotation||Q.optional||(X=Q.leadingComments)!=null&&X.length||(Z=Q.trailingComments)!=null&&Z.length)return!0;if(this.tokenMap){if(J.loc==null)return!0;if(this.tokenMap.findMatching(J,"(")!==null)return!0;let Y=this.tokenMap.findMatching(J,"=>");if((Y==null?void 0:Y.loc)==null)return!0;return Y.loc.start.line!==J.loc.start.line}if(this.format.retainLines)return!0;return!1}function Y41(J,X){let Z=J;if(!Z&&X){let W=X.type;if(W==="VariableDeclarator")Z=X.id;else if(W==="AssignmentExpression"||W==="AssignmentPattern")Z=X.left;else if(W==="ObjectProperty"||W==="ClassProperty"){if(!X.computed||X.key.type==="StringLiteral")Z=X.key}else if(W==="ClassPrivateProperty"||W==="ClassAccessorProperty")Z=X.key}if(!Z)return;let Q;if(Z.type==="Identifier"){var Y,H;Q={pos:(Y=Z.loc)==null?void 0:Y.start,name:((H=Z.loc)==null?void 0:H.identifierName)||Z.name}}else if(Z.type==="PrivateName"){var G;Q={pos:(G=Z.loc)==null?void 0:G.start,name:"#"+Z.id.name}}else if(Z.type==="StringLiteral"){var z;Q={pos:(z=Z.loc)==null?void 0:z.start,name:Z.value}}return Q}});var I7=I((SG)=>{Object.defineProperty(SG,"__esModule",{value:!0});SG.ExportAllDeclaration=P41;SG.ExportDefaultDeclaration=L41;SG.ExportDefaultSpecifier=I41;SG.ExportNamedDeclaration=T41;SG.ExportNamespaceSpecifier=w41;SG.ExportSpecifier=N41;SG.ImportAttribute=b41;SG.ImportDeclaration=k41;SG.ImportDefaultSpecifier=D41;SG.ImportExpression=E41;SG.ImportNamespaceSpecifier=v41;SG.ImportSpecifier=C41;SG._printAttributes=S41;var $41=H1(),q41=TJ(),{isClassDeclaration:F41,isExportDefaultSpecifier:j41,isExportNamespaceSpecifier:M41,isImportDefaultSpecifier:O41,isImportNamespaceSpecifier:A41,isStatement:NG}=$41;function C41(J){if(J.importKind==="type"||J.importKind==="typeof")this.word(J.importKind),this.space();if(this.print(J.imported),J.local&&J.local.name!==J.imported.name)this.space(),this.word("as"),this.space(),this.print(J.local)}function D41(J){this.print(J.local)}function I41(J){this.print(J.exported)}function N41(J){if(J.exportKind==="type")this.word("type"),this.space();if(this.print(J.local),J.exported&&J.local.name!==J.exported.name)this.space(),this.word("as"),this.space(),this.print(J.exported)}function w41(J){this.tokenChar(42),this.space(),this.word("as"),this.space(),this.print(J.exported)}var IG=!1;function S41(J,X){var Z;let{importAttributesKeyword:Q}=this.format,{attributes:Y,assertions:H}=J;if(Y&&!Q&&J.extra&&(J.extra.deprecatedAssertSyntax||J.extra.deprecatedWithLegacySyntax)&&!IG)IG=!0,console.warn('You are using import attributes, without specifying the desired output syntax.\nPlease specify the "importAttributesKeyword" generator option, whose value can be one of:\n - "with" : `import { a } from "b" with { type: "json" };`\n - "assert" : `import { a } from "b" assert { type: "json" };`\n - "with-legacy" : `import { a } from "b" with type: "json";`\n');let G=Q==="assert"||!Q&&H;if(this.word(G?"assert":"with"),this.space(),!G&&(Q==="with-legacy"||!Q&&(Z=J.extra)!=null&&Z.deprecatedWithLegacySyntax)){this.printList(Y||H);return}let z=X?1:0;this.token("{",null,z),this.space(),this.printList(Y||H,this.shouldPrintTrailingComma("}")),this.space(),this.token("}",null,z)}function P41(J){var X,Z;if(this.word("export"),this.space(),J.exportKind==="type")this.word("type"),this.space();if(this.tokenChar(42),this.space(),this.word("from"),this.space(),(X=J.attributes)!=null&&X.length||(Z=J.assertions)!=null&&Z.length)this.print(J.source,!0),this.space(),this._printAttributes(J,!1);else this.print(J.source);this.semicolon()}function wG(J,X){if(F41(X.declaration)&&J._shouldPrintDecoratorsBeforeExport(X))J.printJoin(X.declaration.decorators)}function T41(J){if(wG(this,J),this.word("export"),this.space(),J.declaration){let Q=J.declaration;if(this.print(Q),!NG(Q))this.semicolon()}else{if(J.exportKind==="type")this.word("type"),this.space();let Q=J.specifiers.slice(0),Y=!1;for(;;){let G=Q[0];if(j41(G)||M41(G)){if(Y=!0,this.print(Q.shift()),Q.length)this.tokenChar(44),this.space()}else break}let H=!1;if(Q.length||!Q.length&&!Y){if(H=!0,this.tokenChar(123),Q.length)this.space(),this.printList(Q,this.shouldPrintTrailingComma("}")),this.space();this.tokenChar(125)}if(J.source){var X,Z;if(this.space(),this.word("from"),this.space(),(X=J.attributes)!=null&&X.length||(Z=J.assertions)!=null&&Z.length)this.print(J.source,!0),this.space(),this._printAttributes(J,H);else this.print(J.source)}this.semicolon()}}function L41(J){wG(this,J),this.word("export"),this.noIndentInnerCommentsHere(),this.space(),this.word("default"),this.space(),this.tokenContext|=q41.TokenContext.exportDefault;let X=J.declaration;if(this.print(X),!NG(X))this.semicolon()}function k41(J){var X,Z;this.word("import"),this.space();let Q=J.importKind==="type"||J.importKind==="typeof";if(Q)this.noIndentInnerCommentsHere(),this.word(J.importKind),this.space();else if(J.module)this.noIndentInnerCommentsHere(),this.word("module"),this.space();else if(J.phase)this.noIndentInnerCommentsHere(),this.word(J.phase),this.space();let Y=J.specifiers.slice(0),H=!!Y.length;while(H){let z=Y[0];if(O41(z)||A41(z)){if(this.print(Y.shift()),Y.length)this.tokenChar(44),this.space()}else break}let G=!1;if(Y.length)G=!0,this.tokenChar(123),this.space(),this.printList(Y,this.shouldPrintTrailingComma("}")),this.space(),this.tokenChar(125);else if(Q&&!H)G=!0,this.tokenChar(123),this.tokenChar(125);if(H||Q)this.space(),this.word("from"),this.space();if((X=J.attributes)!=null&&X.length||(Z=J.assertions)!=null&&Z.length)this.print(J.source,!0),this.space(),this._printAttributes(J,G);else this.print(J.source);this.semicolon()}function b41(J){this.print(J.key),this.tokenChar(58),this.space(),this.print(J.value)}function v41(J){this.tokenChar(42),this.space(),this.word("as"),this.space(),this.print(J.local)}function E41(J){if(this.word("import"),J.phase)this.tokenChar(46),this.word(J.phase);this.tokenChar(40);let X=this.shouldPrintTrailingComma(")");if(this.print(J.source),J.options!=null)this.tokenChar(44),this.space(),this.print(J.options);if(X)this.tokenChar(44);this.rightParens(J)}});var kG=I((eP1,LG)=>{var PG={},d41=PG.hasOwnProperty,TG=(J,X)=>{for(let Z in J)if(d41.call(J,Z))X(Z,J[Z])},a41=(J,X)=>{if(!X)return J;return TG(X,(Z,Q)=>{J[Z]=Q}),J},s41=(J,X)=>{let Z=J.length,Q=-1;while(++Q<Z)X(J[Q])},tX=(J)=>{return"\\u"+("0000"+J).slice(-4)},d9=(J,X)=>{let Z=J.toString(16);if(X)return Z;return Z.toUpperCase()},a9=PG.toString,t41=Array.isArray,n41=(J)=>{return typeof Buffer==="function"&&Buffer.isBuffer(J)},o41=(J)=>{return a9.call(J)=="[object Object]"},e41=(J)=>{return typeof J=="string"||a9.call(J)=="[object String]"},JZ1=(J)=>{return typeof J=="number"||a9.call(J)=="[object Number]"},N7=(J)=>{return typeof J=="bigint"},XZ1=(J)=>{return typeof J=="function"},ZZ1=(J)=>{return a9.call(J)=="[object Map]"},QZ1=(J)=>{return a9.call(J)=="[object Set]"},YZ1={"\\":"\\\\","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r","\t":"\\t"},HZ1=/[\\\b\f\n\r\t]/,GZ1=/[0-9]/,zZ1=/[\xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000]/,WZ1=/([\uD800-\uDBFF][\uDC00-\uDFFF])|([\uD800-\uDFFF])|(['"`])|[^]/g,VZ1=/([\uD800-\uDBFF][\uDC00-\uDFFF])|([\uD800-\uDFFF])|(['"`])|[^ !#-&\(-\[\]-_a-~]/g,GJ=(J,X)=>{let Z=()=>{V=W,++X.indentLevel,W=X.indent.repeat(X.indentLevel)},Q={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},Y=X&&X.json;if(Y)Q.quotes="double",Q.wrap=!0;if(X=a41(Q,X),X.quotes!="single"&&X.quotes!="double"&&X.quotes!="backtick")X.quotes="single";let H=X.quotes=="double"?'"':X.quotes=="backtick"?"`":"'",G=X.compact,z=X.lowercaseHex,W=X.indent.repeat(X.indentLevel),V="",U=X.__inline1__,$=X.__inline2__,j=G?"":`
25
+ `,C,A=!0,S=X.numbers=="binary",w=X.numbers=="octal",P=X.numbers=="decimal",b=X.numbers=="hexadecimal";if(Y&&J&&XZ1(J.toJSON))J=J.toJSON();if(!e41(J)){if(ZZ1(J)){if(J.size==0)return"new Map()";if(!G)X.__inline1__=!0,X.__inline2__=!1;return"new Map("+GJ(Array.from(J),X)+")"}if(QZ1(J)){if(J.size==0)return"new Set()";return"new Set("+GJ(Array.from(J),X)+")"}if(n41(J)){if(J.length==0)return"Buffer.from([])";return"Buffer.from("+GJ(Array.from(J),X)+")"}if(t41(J)){if(C=[],X.wrap=!0,U)X.__inline1__=!1,X.__inline2__=!0;if(!$)Z();if(s41(J,(m)=>{if(A=!1,$)X.__inline2__=!1;C.push((G||$?"":W)+GJ(m,X))}),A)return"[]";if($)return"["+C.join(", ")+"]";return"["+j+C.join(","+j)+j+(G?"":V)+"]"}else if(JZ1(J)||N7(J)){if(Y)return JSON.stringify(Number(J));let m;if(P)m=String(J);else if(b){let d=J.toString(16);if(!z)d=d.toUpperCase();m="0x"+d}else if(S)m="0b"+J.toString(2);else if(w)m="0o"+J.toString(8);if(N7(J))return m+"n";return m}else if(N7(J)){if(Y)return JSON.stringify(Number(J));return J+"n"}else if(!o41(J)){if(Y)return JSON.stringify(J)||"null";return String(J)}else{if(C=[],X.wrap=!0,Z(),TG(J,(m,d)=>{A=!1,C.push((G?"":W)+GJ(m,X)+":"+(G?"":" ")+GJ(d,X))}),A)return"{}";return"{"+j+C.join(","+j)+j+(G?"":V)+"}"}}let t=X.escapeEverything?WZ1:VZ1;if(C=J.replace(t,(m,d,U1,D1,L1,f1)=>{if(d){if(X.minimal)return d;let J0=d.charCodeAt(0),Y0=d.charCodeAt(1);if(X.es6){let V0=(J0-55296)*1024+Y0-56320+65536;return"\\u{"+d9(V0,z)+"}"}return tX(d9(J0,z))+tX(d9(Y0,z))}if(U1)return tX(d9(U1.charCodeAt(0),z));if(m=="\x00"&&!Y&&!GZ1.test(f1.charAt(L1+1)))return"\\0";if(D1){if(D1==H||X.escapeEverything)return"\\"+D1;return D1}if(HZ1.test(m))return YZ1[m];if(X.minimal&&!zZ1.test(m))return m;let e1=d9(m.charCodeAt(0),z);if(Y||e1.length>2)return tX(e1);return"\\x"+("00"+e1).slice(-2)}),H=="`")C=C.replace(/\$\{/g,"\\${");if(X.isScriptContext)C=C.replace(/<\/(script|style)/gi,"<\\/$1").replace(/<!--/g,Y?"\\u003C!--":"\\x3C!--");if(X.wrap)C=H+C+H;return C};GJ.version="3.0.2";LG.exports=GJ});var S7=I((_G)=>{Object.defineProperty(_G,"__esModule",{value:!0});_G.ArgumentPlaceholder=$Z1;_G.ArrayPattern=_G.ArrayExpression=OZ1;_G.BigIntLiteral=PZ1;_G.BooleanLiteral=IZ1;_G.Identifier=RZ1;_G.NullLiteral=NZ1;_G.NumericLiteral=wZ1;_G.ObjectPattern=_G.ObjectExpression=FZ1;_G.ObjectMethod=jZ1;_G.ObjectProperty=MZ1;_G.PipelineBareFunction=kZ1;_G.PipelinePrimaryTopicReference=bZ1;_G.PipelineTopicExpression=LZ1;_G.RecordExpression=AZ1;_G.RegExpLiteral=DZ1;_G.SpreadElement=_G.RestElement=qZ1;_G.StringLiteral=SZ1;_G.TopicReference=TZ1;_G.TupleExpression=CZ1;_G.VoidPattern=vZ1;_G._getRawIdentifier=BZ1;var KZ1=H1(),EG=kG(),{isAssignmentPattern:UZ1,isIdentifier:w7}=KZ1,bG=null,nX="";function BZ1(J){if(J===bG)return nX;bG=J;let{name:X}=J,Z=this.tokenMap.find(J,(Q)=>Q.value===X);if(Z)return nX=this._originalCode.slice(Z.start,Z.end),nX;return nX=J.name}function RZ1(J){var X;this.sourceIdentifierName(((X=J.loc)==null?void 0:X.identifierName)||J.name),this.word(this.tokenMap?this._getRawIdentifier(J):J.name)}function $Z1(){this.tokenChar(63)}function qZ1(J){this.token("..."),this.print(J.argument)}function FZ1(J){let X=J.properties;if(this.tokenChar(123),X.length){let Z=this.enterDelimited();this.space(),this.printList(X,this.shouldPrintTrailingComma("}"),!0,!0),this.space(),Z()}this.sourceWithOffset("end",J.loc,-1),this.tokenChar(125)}function jZ1(J){this.printJoin(J.decorators),this._methodHead(J),this.space(),this.print(J.body)}function MZ1(J){if(this.printJoin(J.decorators),J.computed)this.tokenChar(91),this.print(J.key),this.tokenChar(93);else{if(UZ1(J.value)&&w7(J.key)&&J.key.name===J.value.left.name){this.print(J.value);return}if(this.print(J.key),J.shorthand&&w7(J.key)&&w7(J.value)&&J.key.name===J.value.name)return}this.tokenChar(58),this.space(),this.print(J.value)}function OZ1(J){let X=J.elements,Z=X.length;this.tokenChar(91);let Q=this.enterDelimited();for(let Y=0;Y<X.length;Y++){let H=X[Y];if(H){if(Y>0)this.space();if(this.print(H),Y<Z-1||this.shouldPrintTrailingComma("]"))this.token(",",!1,Y)}else this.token(",",!1,Y)}Q(),this.tokenChar(93)}function AZ1(J){let X=J.properties,Z,Q;if(this.format.recordAndTupleSyntaxType==="bar")Z="{|",Q="|}";else if(this.format.recordAndTupleSyntaxType!=="hash"&&this.format.recordAndTupleSyntaxType!=null)throw Error(`The "recordAndTupleSyntaxType" generator option must be "bar" or "hash" (${JSON.stringify(this.format.recordAndTupleSyntaxType)} received).`);else Z="#{",Q="}";if(this.token(Z),X.length)this.space(),this.printList(X,this.shouldPrintTrailingComma(Q),!0,!0),this.space();this.token(Q)}function CZ1(J){let X=J.elements,Z=X.length,Q,Y;if(this.format.recordAndTupleSyntaxType==="bar")Q="[|",Y="|]";else if(this.format.recordAndTupleSyntaxType==="hash")Q="#[",Y="]";else throw Error(`${this.format.recordAndTupleSyntaxType} is not a valid recordAndTuple syntax type`);this.token(Q);for(let H=0;H<X.length;H++){let G=X[H];if(G){if(H>0)this.space();if(this.print(G),H<Z-1||this.shouldPrintTrailingComma(Y))this.token(",",!1,H)}}this.token(Y)}function DZ1(J){this.word(`/${J.pattern}/${J.flags}`)}function IZ1(J){this.word(J.value?"true":"false")}function NZ1(){this.word("null")}function wZ1(J){let X=this.getPossibleRaw(J),Z=this.format.jsescOption,Q=J.value,Y=Q+"";if(Z.numbers)this.number(EG(Q,Z),Q);else if(X==null)this.number(Y,Q);else if(this.format.minified)this.number(X.length<Y.length?X:Y,Q);else this.number(X,Q)}function SZ1(J){let X=this.getPossibleRaw(J);if(!this.format.minified&&X!==void 0){this.token(X);return}let Z=EG(J.value,this.format.jsescOption);this.token(Z)}function PZ1(J){let X=this.getPossibleRaw(J);if(!this.format.minified&&X!==void 0){this.word(X);return}this.word(J.value+"n")}var vG=new Set(["^^","@@","^","%","#"]);function TZ1(){let{topicToken:J}=this.format;if(vG.has(J))this.token(J);else{let X=JSON.stringify(J),Z=Array.from(vG,(Q)=>JSON.stringify(Q));throw Error(`The "topicToken" generator option must be one of ${Z.join(", ")} (${X} received instead).`)}}function LZ1(J){this.print(J.expression)}function kZ1(J){this.print(J.callee)}function bZ1(){this.tokenChar(35)}function vZ1(){this.word("void")}});var fG=I((X2)=>{Object.defineProperty(X2,"__esModule",{value:!0});X2.AnyTypeAnnotation=Y51;X2.ArrayTypeAnnotation=H51;X2.BooleanLiteralTypeAnnotation=z51;X2.BooleanTypeAnnotation=G51;X2.DeclareClass=V51;X2.DeclareExportAllDeclaration=A51;X2.DeclareExportDeclaration=O51;X2.DeclareFunction=K51;X2.DeclareInterface=R51;X2.DeclareModule=$51;X2.DeclareModuleExports=q51;X2.DeclareOpaqueType=j51;X2.DeclareTypeAlias=F51;X2.DeclareVariable=M51;X2.DeclaredPredicate=B51;X2.EmptyTypeAnnotation=c51;X2.EnumBooleanBody=D51;X2.EnumBooleanMember=P51;X2.EnumDeclaration=C51;X2.EnumDefaultedMember=S51;X2.EnumNumberBody=I51;X2.EnumNumberMember=T51;X2.EnumStringBody=N51;X2.EnumStringMember=L51;X2.EnumSymbolBody=w51;X2.ExistsTypeAnnotation=b51;X2.FunctionTypeAnnotation=v51;X2.FunctionTypeParam=E51;X2.IndexedAccessType=RQ1;X2.InferredPredicate=U51;X2.InterfaceDeclaration=h51;X2.GenericTypeAnnotation=X2.ClassImplements=X2.InterfaceExtends=_51;X2.InterfaceTypeAnnotation=y51;X2.IntersectionTypeAnnotation=u51;X2.MixedTypeAnnotation=m51;X2.NullLiteralTypeAnnotation=W51;X2.NullableTypeAnnotation=l51;Object.defineProperty(X2,"NumberLiteralTypeAnnotation",{enumerable:!0,get:function(){return gG.NumericLiteral}});X2.NumberTypeAnnotation=i51;X2.ObjectTypeAnnotation=JQ1;X2.ObjectTypeCallProperty=ZQ1;X2.ObjectTypeIndexer=QQ1;X2.ObjectTypeInternalSlot=XQ1;X2.ObjectTypeProperty=YQ1;X2.ObjectTypeSpreadProperty=HQ1;X2.OpaqueType=e51;X2.OptionalIndexedAccessType=$Q1;X2.QualifiedTypeIdentifier=GQ1;Object.defineProperty(X2,"StringLiteralTypeAnnotation",{enumerable:!0,get:function(){return gG.StringLiteral}});X2.StringTypeAnnotation=p51;X2.SymbolTypeAnnotation=zQ1;X2.ThisTypeAnnotation=r51;X2.TupleTypeAnnotation=d51;X2.TypeAlias=s51;X2.TypeAnnotation=t51;X2.TypeCastExpression=KQ1;X2.TypeParameter=o51;X2.TypeParameterDeclaration=X2.TypeParameterInstantiation=n51;X2.TypeofTypeAnnotation=a51;X2.UnionTypeAnnotation=VQ1;X2.Variance=UQ1;X2.VoidTypeAnnotation=BQ1;X2._interfaceish=g51;X2._variance=f51;var J51=H1(),X51=I7(),Z51=TJ(),gG=S7(),{isDeclareExportDeclaration:oX,isStatement:Q51}=J51;function Y51(){this.word("any")}function H51(J){this.print(J.elementType,!0),this.tokenChar(91),this.tokenChar(93)}function G51(){this.word("boolean")}function z51(J){this.word(J.value?"true":"false")}function W51(){this.word("null")}function V51(J,X){if(!oX(X))this.word("declare"),this.space();this.word("class"),this.space(),this._interfaceish(J)}function K51(J,X){if(!oX(X))this.word("declare"),this.space();if(this.word("function"),this.space(),this.print(J.id),this.print(J.id.typeAnnotation.typeAnnotation),J.predicate)this.space(),this.print(J.predicate);this.semicolon()}function U51(){this.tokenChar(37),this.word("checks")}function B51(J){this.tokenChar(37),this.word("checks"),this.tokenChar(40),this.print(J.value),this.tokenChar(41)}function R51(J){this.word("declare"),this.space(),this.InterfaceDeclaration(J)}function $51(J){this.word("declare"),this.space(),this.word("module"),this.space(),this.print(J.id),this.space(),this.print(J.body)}function q51(J){this.word("declare"),this.space(),this.word("module"),this.tokenChar(46),this.word("exports"),this.print(J.typeAnnotation)}function F51(J){this.word("declare"),this.space(),this.TypeAlias(J)}function j51(J,X){if(!oX(X))this.word("declare"),this.space();this.OpaqueType(J)}function M51(J,X){if(!oX(X))this.word("declare"),this.space();this.word("var"),this.space(),this.print(J.id),this.print(J.id.typeAnnotation),this.semicolon()}function O51(J){if(this.word("declare"),this.space(),this.word("export"),this.space(),J.default)this.word("default"),this.space();k51.call(this,J)}function A51(J){this.word("declare"),this.space(),X51.ExportAllDeclaration.call(this,J)}function C51(J){let{id:X,body:Z}=J;this.word("enum"),this.space(),this.print(X),this.print(Z)}function eX(J,X,Z){if(Z)J.space(),J.word("of"),J.space(),J.word(X);J.space()}function J2(J,X){let{members:Z}=X;J.token("{"),J.indent(),J.newline();for(let Q of Z)J.print(Q),J.newline();if(X.hasUnknownMembers)J.token("..."),J.newline();J.dedent(),J.token("}")}function D51(J){let{explicitType:X}=J;eX(this,"boolean",X),J2(this,J)}function I51(J){let{explicitType:X}=J;eX(this,"number",X),J2(this,J)}function N51(J){let{explicitType:X}=J;eX(this,"string",X),J2(this,J)}function w51(J){eX(this,"symbol",!0),J2(this,J)}function S51(J){let{id:X}=J;this.print(X),this.tokenChar(44)}function P7(J,X){J.print(X.id),J.space(),J.token("="),J.space(),J.print(X.init),J.token(",")}function P51(J){P7(this,J)}function T51(J){P7(this,J)}function L51(J){P7(this,J)}function k51(J){if(J.declaration){let X=J.declaration;if(this.print(X),!Q51(X))this.semicolon()}else{if(this.tokenChar(123),J.specifiers.length)this.space(),this.printList(J.specifiers),this.space();if(this.tokenChar(125),J.source)this.space(),this.word("from"),this.space(),this.print(J.source);this.semicolon()}}function b51(){this.tokenChar(42)}function v51(J,X){if(this.print(J.typeParameters),this.tokenChar(40),J.this){if(this.word("this"),this.tokenChar(58),this.space(),this.print(J.this.typeAnnotation),J.params.length||J.rest)this.tokenChar(44),this.space()}if(this.printList(J.params),J.rest){if(J.params.length)this.tokenChar(44),this.space();this.token("..."),this.print(J.rest)}this.tokenChar(41);let Z=X==null?void 0:X.type;if(Z!=null&&(Z==="ObjectTypeCallProperty"||Z==="ObjectTypeInternalSlot"||Z==="DeclareFunction"||Z==="ObjectTypeProperty"&&X.method))this.tokenChar(58);else this.space(),this.token("=>");this.space(),this.print(J.returnType)}function E51(J){if(this.print(J.name),J.optional)this.tokenChar(63);if(J.name)this.tokenChar(58),this.space();this.print(J.typeAnnotation)}function _51(J){this.print(J.id),this.print(J.typeParameters,!0)}function g51(J){var X;if(this.print(J.id),this.print(J.typeParameters),(X=J.extends)!=null&&X.length)this.space(),this.word("extends"),this.space(),this.printList(J.extends);if(J.type==="DeclareClass"){var Z,Q;if((Z=J.mixins)!=null&&Z.length)this.space(),this.word("mixins"),this.space(),this.printList(J.mixins);if((Q=J.implements)!=null&&Q.length)this.space(),this.word("implements"),this.space(),this.printList(J.implements)}this.space(),this.print(J.body)}function f51(J){var X;let Z=(X=J.variance)==null?void 0:X.kind;if(Z!=null){if(Z==="plus")this.tokenChar(43);else if(Z==="minus")this.tokenChar(45)}}function h51(J){this.word("interface"),this.space(),this._interfaceish(J)}function x51(J){this.space(),this.token("&",!1,J),this.space()}function y51(J){var X;if(this.word("interface"),(X=J.extends)!=null&&X.length)this.space(),this.word("extends"),this.space(),this.printList(J.extends);this.space(),this.print(J.body)}function u51(J){this.printJoin(J.types,void 0,void 0,x51)}function m51(){this.word("mixed")}function c51(){this.word("empty")}function l51(J){this.tokenChar(63),this.print(J.typeAnnotation)}function i51(){this.word("number")}function p51(){this.word("string")}function r51(){this.word("this")}function d51(J){this.tokenChar(91),this.printList(J.types),this.tokenChar(93)}function a51(J){this.word("typeof"),this.space(),this.print(J.argument)}function s51(J){this.word("type"),this.space(),this.print(J.id),this.print(J.typeParameters),this.space(),this.tokenChar(61),this.space(),this.print(J.right),this.semicolon()}function t51(J,X){if(this.tokenChar(58),this.space(),X.type==="ArrowFunctionExpression")this.tokenContext|=Z51.TokenContext.arrowFlowReturnType;else if(J.optional)this.tokenChar(63);this.print(J.typeAnnotation)}function n51(J){this.tokenChar(60),this.printList(J.params),this.tokenChar(62)}function o51(J){if(this._variance(J),this.word(J.name),J.bound)this.print(J.bound);if(J.default)this.space(),this.tokenChar(61),this.space(),this.print(J.default)}function e51(J){if(this.word("opaque"),this.space(),this.word("type"),this.space(),this.print(J.id),this.print(J.typeParameters),J.supertype)this.tokenChar(58),this.space(),this.print(J.supertype);if(J.impltype)this.space(),this.tokenChar(61),this.space(),this.print(J.impltype);this.semicolon()}function JQ1(J){if(J.exact)this.token("{|");else this.tokenChar(123);let X=[...J.properties,...J.callProperties||[],...J.indexers||[],...J.internalSlots||[]];if(X.length)this.newline(),this.space(),this.printJoin(X,!0,!0,void 0,void 0,function(Q){if(Q&&!X[0])return 1},()=>{if(X.length!==1||J.inexact)this.tokenChar(44),this.space()}),this.space();if(J.inexact){if(this.indent(),this.token("..."),X.length)this.newline();this.dedent()}if(J.exact)this.token("|}");else this.tokenChar(125)}function XQ1(J){if(J.static)this.word("static"),this.space();if(this.tokenChar(91),this.tokenChar(91),this.print(J.id),this.tokenChar(93),this.tokenChar(93),J.optional)this.tokenChar(63);if(!J.method)this.tokenChar(58),this.space();this.print(J.value)}function ZQ1(J){if(J.static)this.word("static"),this.space();this.print(J.value)}function QQ1(J){if(J.static)this.word("static"),this.space();if(this._variance(J),this.tokenChar(91),J.id)this.print(J.id),this.tokenChar(58),this.space();this.print(J.key),this.tokenChar(93),this.tokenChar(58),this.space(),this.print(J.value)}function YQ1(J){if(J.proto)this.word("proto"),this.space();if(J.static)this.word("static"),this.space();if(J.kind==="get"||J.kind==="set")this.word(J.kind),this.space();if(this._variance(J),this.print(J.key),J.optional)this.tokenChar(63);if(!J.method)this.tokenChar(58),this.space();this.print(J.value)}function HQ1(J){this.token("..."),this.print(J.argument)}function GQ1(J){this.print(J.qualification),this.tokenChar(46),this.print(J.id)}function zQ1(){this.word("symbol")}function WQ1(J){this.space(),this.token("|",!1,J),this.space()}function VQ1(J){this.printJoin(J.types,void 0,void 0,WQ1)}function KQ1(J){this.tokenChar(40),this.print(J.expression),this.print(J.typeAnnotation),this.tokenChar(41)}function UQ1(J){if(J.kind==="plus")this.tokenChar(43);else this.tokenChar(45)}function BQ1(){this.word("void")}function RQ1(J){this.print(J.objectType,!0),this.tokenChar(91),this.print(J.indexType),this.tokenChar(93)}function $Q1(J){if(this.print(J.objectType),J.optional)this.token("?.");this.tokenChar(91),this.print(J.indexType),this.tokenChar(93)}});var xG=I((hG)=>{Object.defineProperty(hG,"__esModule",{value:!0});hG.BlockStatement=wY1;hG.Directive=SY1;hG.DirectiveLiteral=LY1;hG.File=IY1;hG.InterpreterDirective=kY1;hG.Placeholder=bY1;hG.Program=NY1;function IY1(J){if(J.program)this.print(J.program.interpreter);this.print(J.program)}function NY1(J){var X;this.noIndentInnerCommentsHere(),this.printInnerComments();let Z=(X=J.directives)==null?void 0:X.length;if(Z){var Q;let Y=J.body.length?2:1;if(this.printSequence(J.directives,void 0,Y),!((Q=J.directives[Z-1].trailingComments)!=null&&Q.length))this.newline(Y)}this.printSequence(J.body)}function wY1(J){var X;this.tokenChar(123);let Z=this.enterDelimited(),Q=(X=J.directives)==null?void 0:X.length;if(Q){var Y;let H=J.body.length?2:1;if(this.printSequence(J.directives,!0,H),!((Y=J.directives[Q-1].trailingComments)!=null&&Y.length))this.newline(H)}this.printSequence(J.body,!0),Z(),this.rightBrace(J)}function SY1(J){this.print(J.value),this.semicolon()}var PY1=/(?:^|[^\\])(?:\\\\)*'/,TY1=/(?:^|[^\\])(?:\\\\)*"/;function LY1(J){let X=this.getPossibleRaw(J);if(!this.format.minified&&X!==void 0){this.token(X);return}let{value:Z}=J;if(!TY1.test(Z))this.token(`"${Z}"`);else if(!PY1.test(Z))this.token(`'${Z}'`);else throw Error("Malformed AST: it is not possible to print a directive containing both unescaped single and double quotes.")}function kY1(J){this.token(`#!${J.value}`),this.newline(1,!0)}function bY1(J){if(this.token("%%"),this.print(J.name),this.token("%%"),J.expectedNode==="Statement")this.semicolon()}});var uG=I((yG)=>{Object.defineProperty(yG,"__esModule",{value:!0});yG.JSXAttribute=yY1;yG.JSXClosingElement=tY1;yG.JSXClosingFragment=JH1;yG.JSXElement=dY1;yG.JSXEmptyExpression=nY1;yG.JSXExpressionContainer=iY1;yG.JSXFragment=oY1;yG.JSXIdentifier=uY1;yG.JSXMemberExpression=cY1;yG.JSXNamespacedName=mY1;yG.JSXOpeningElement=sY1;yG.JSXOpeningFragment=eY1;yG.JSXSpreadAttribute=lY1;yG.JSXSpreadChild=pY1;yG.JSXText=rY1;function yY1(J){if(this.print(J.name),J.value)this.tokenChar(61),this.print(J.value)}function uY1(J){this.word(J.name)}function mY1(J){this.print(J.namespace),this.tokenChar(58),this.print(J.name)}function cY1(J){this.print(J.object),this.tokenChar(46),this.print(J.property)}function lY1(J){this.tokenChar(123),this.token("..."),this.print(J.argument),this.rightBrace(J)}function iY1(J){this.tokenChar(123),this.print(J.expression),this.rightBrace(J)}function pY1(J){this.tokenChar(123),this.token("..."),this.print(J.expression),this.rightBrace(J)}function rY1(J){let X=this.getPossibleRaw(J);if(X!==void 0)this.token(X,!0);else this.token(J.value,!0)}function dY1(J){let X=J.openingElement;if(this.print(X),X.selfClosing)return;this.indent();for(let Z of J.children)this.print(Z);this.dedent(),this.print(J.closingElement)}function aY1(){this.space()}function sY1(J){this.tokenChar(60),this.print(J.name);{if(J.typeArguments)this.print(J.typeArguments);this.print(J.typeParameters)}if(J.attributes.length>0)this.space(),this.printJoin(J.attributes,void 0,void 0,aY1);if(J.selfClosing)this.space(),this.tokenChar(47);this.tokenChar(62)}function tY1(J){this.tokenChar(60),this.tokenChar(47),this.print(J.name),this.tokenChar(62)}function nY1(){this.printInnerComments()}function oY1(J){this.print(J.openingFragment),this.indent();for(let X of J.children)this.print(X);this.dedent(),this.print(J.closingFragment)}function eY1(){this.tokenChar(60),this.tokenChar(62)}function JH1(){this.token("</"),this.tokenChar(62)}});var rG=I((pG)=>{Object.defineProperty(pG,"__esModule",{value:!0});pG.TSAnyKeyword=LH1;pG.TSArrayType=tH1;pG.TSSatisfiesExpression=pG.TSAsExpression=qG1;pG.TSBigIntKeyword=kH1;pG.TSBooleanKeyword=_H1;pG.TSCallSignatureDeclaration=IH1;pG.TSInterfaceHeritage=pG.TSClassImplements=UG1;pG.TSConditionalType=QG1;pG.TSConstructSignatureDeclaration=NH1;pG.TSConstructorType=iH1;pG.TSDeclareFunction=AH1;pG.TSDeclareMethod=CH1;pG.TSEnumBody=iG;pG.TSEnumDeclaration=MG1;pG.TSEnumMember=OG1;pG.TSExportAssignment=SG1;pG.TSExternalModuleReference=NG1;pG.TSFunctionType=lH1;pG.TSImportEqualsDeclaration=IG1;pG.TSImportType=DG1;pG.TSIndexSignature=TH1;pG.TSIndexedAccessType=zG1;pG.TSInferType=YG1;pG.TSInstantiationExpression=jG1;pG.TSInterfaceBody=RG1;pG.TSInterfaceDeclaration=BG1;pG.TSIntersectionType=ZG1;pG.TSIntrinsicKeyword=mH1;pG.TSLiteralType=KG1;pG.TSMappedType=WG1;pG.TSMethodSignature=PH1;pG.TSModuleBlock=CG1;pG.TSModuleDeclaration=AG1;pG.TSNamedTupleMember=JG1;pG.TSNamespaceExportDeclaration=PG1;pG.TSNeverKeyword=uH1;pG.TSNonNullExpression=wG1;pG.TSNullKeyword=yH1;pG.TSNumberKeyword=vH1;pG.TSObjectKeyword=EH1;pG.TSOptionalType=oH1;pG.TSParameterProperty=OH1;pG.TSParenthesizedType=HG1;pG.TSPropertySignature=wH1;pG.TSQualifiedName=DH1;pG.TSRestType=eH1;pG.TSStringKeyword=gH1;pG.TSSymbolKeyword=fH1;pG.TSTemplateLiteralType=VG1;pG.TSThisType=cH1;pG.TSTupleType=nH1;pG.TSTypeAliasDeclaration=$G1;pG.TSTypeAnnotation=FH1;pG.TSTypeAssertion=FG1;pG.TSTypeLiteral=sH1;pG.TSTypeOperator=GG1;pG.TSTypeParameter=MH1;pG.TSTypeParameterDeclaration=pG.TSTypeParameterInstantiation=jH1;pG.TSTypePredicate=dH1;pG.TSTypeQuery=aH1;pG.TSTypeReference=rH1;pG.TSUndefinedKeyword=xH1;pG.TSUnionType=XG1;pG.TSUnknownKeyword=bH1;pG.TSVoidKeyword=hH1;pG.tsPrintClassMemberModifiers=LG1;pG.tsPrintFunctionOrConstructorType=pH1;pG.tsPrintPropertyOrMethodName=SH1;pG.tsPrintSignatureDeclarationBase=TG1;function FH1(J,X){if(this.token((X.type==="TSFunctionType"||X.type==="TSConstructorType")&&X.typeAnnotation===J?"=>":":"),this.space(),J.optional)this.tokenChar(63);this.print(J.typeAnnotation)}function jH1(J,X){this.tokenChar(60);let Z=X.type==="ArrowFunctionExpression"&&J.params.length===1;if(this.tokenMap&&J.start!=null&&J.end!=null)Z&&(Z=!!this.tokenMap.find(J,(Q)=>this.tokenMap.matchesOriginal(Q,","))),Z||(Z=this.shouldPrintTrailingComma(">"));this.printList(J.params,Z),this.tokenChar(62)}function MH1(J){if(J.const)this.word("const"),this.space();if(J.in)this.word("in"),this.space();if(J.out)this.word("out"),this.space();if(this.word(J.name),J.constraint)this.space(),this.word("extends"),this.space(),this.print(J.constraint);if(J.default)this.space(),this.tokenChar(61),this.space(),this.print(J.default)}function OH1(J){if(J.accessibility)this.word(J.accessibility),this.space();if(J.readonly)this.word("readonly"),this.space();this._param(J.parameter)}function AH1(J,X){if(J.declare)this.word("declare"),this.space();this._functionHead(J,X),this.semicolon()}function CH1(J){this._classMethodHead(J),this.semicolon()}function DH1(J){this.print(J.left),this.tokenChar(46),this.print(J.right)}function IH1(J){this.tsPrintSignatureDeclarationBase(J),s9(this,J)}function s9(J,X){if(!J.tokenMap||!X.start||!X.end){J.semicolon();return}if(J.tokenMap.endMatches(X,","))J.token(",");else if(J.tokenMap.endMatches(X,";"))J.semicolon()}function NH1(J){this.word("new"),this.space(),this.tsPrintSignatureDeclarationBase(J),s9(this,J)}function wH1(J){let{readonly:X}=J;if(X)this.word("readonly"),this.space();this.tsPrintPropertyOrMethodName(J),this.print(J.typeAnnotation),s9(this,J)}function SH1(J){if(J.computed)this.tokenChar(91);if(this.print(J.key),J.computed)this.tokenChar(93);if(J.optional)this.tokenChar(63)}function PH1(J){let{kind:X}=J;if(X==="set"||X==="get")this.word(X),this.space();this.tsPrintPropertyOrMethodName(J),this.tsPrintSignatureDeclarationBase(J),s9(this,J)}function TH1(J){let{readonly:X,static:Z}=J;if(Z)this.word("static"),this.space();if(X)this.word("readonly"),this.space();this.tokenChar(91),this._parameters(J.parameters,"]"),this.print(J.typeAnnotation),s9(this,J)}function LH1(){this.word("any")}function kH1(){this.word("bigint")}function bH1(){this.word("unknown")}function vH1(){this.word("number")}function EH1(){this.word("object")}function _H1(){this.word("boolean")}function gH1(){this.word("string")}function fH1(){this.word("symbol")}function hH1(){this.word("void")}function xH1(){this.word("undefined")}function yH1(){this.word("null")}function uH1(){this.word("never")}function mH1(){this.word("intrinsic")}function cH1(){this.word("this")}function lH1(J){this.tsPrintFunctionOrConstructorType(J)}function iH1(J){if(J.abstract)this.word("abstract"),this.space();this.word("new"),this.space(),this.tsPrintFunctionOrConstructorType(J)}function pH1(J){let{typeParameters:X}=J,Z=J.parameters;this.print(X),this.tokenChar(40),this._parameters(Z,")"),this.space();let Q=J.typeAnnotation;this.print(Q)}function rH1(J){let X=J.typeParameters;this.print(J.typeName,!!X),this.print(X)}function dH1(J){if(J.asserts)this.word("asserts"),this.space();if(this.print(J.parameterName),J.typeAnnotation)this.space(),this.word("is"),this.space(),this.print(J.typeAnnotation.typeAnnotation)}function aH1(J){this.word("typeof"),this.space(),this.print(J.exprName);let X=J.typeParameters;if(X)this.print(X)}function sH1(J){Z2(this,J,()=>this.printJoin(J.members,!0,!0))}function tH1(J){this.print(J.elementType,!0),this.tokenChar(91),this.tokenChar(93)}function nH1(J){this.tokenChar(91),this.printList(J.elementTypes,this.shouldPrintTrailingComma("]")),this.tokenChar(93)}function oH1(J){this.print(J.typeAnnotation),this.tokenChar(63)}function eH1(J){this.token("..."),this.print(J.typeAnnotation)}function JG1(J){if(this.print(J.label),J.optional)this.tokenChar(63);this.tokenChar(58),this.space(),this.print(J.elementType)}function XG1(J){lG(this,J,"|")}function ZG1(J){lG(this,J,"&")}function lG(J,X,Z){var Q;let Y=0;if((Q=J.tokenMap)!=null&&Q.startMatches(X,Z))Y=1,J.token(Z);J.printJoin(X.types,void 0,void 0,function(H){this.space(),this.token(Z,null,H+Y),this.space()})}function QG1(J){this.print(J.checkType),this.space(),this.word("extends"),this.space(),this.print(J.extendsType),this.space(),this.tokenChar(63),this.space(),this.print(J.trueType),this.space(),this.tokenChar(58),this.space(),this.print(J.falseType)}function YG1(J){this.word("infer"),this.print(J.typeParameter)}function HG1(J){this.tokenChar(40),this.print(J.typeAnnotation),this.tokenChar(41)}function GG1(J){this.word(J.operator),this.space(),this.print(J.typeAnnotation)}function zG1(J){this.print(J.objectType,!0),this.tokenChar(91),this.print(J.indexType),this.tokenChar(93)}function WG1(J){let{nameType:X,optional:Z,readonly:Q,typeAnnotation:Y}=J;this.tokenChar(123);let H=this.enterDelimited();if(this.space(),Q)mG(this,Q),this.word("readonly"),this.space();if(this.tokenChar(91),this.word(J.typeParameter.name),this.space(),this.word("in"),this.space(),this.print(J.typeParameter.constraint),X)this.space(),this.word("as"),this.space(),this.print(X);if(this.tokenChar(93),Z)mG(this,Z),this.tokenChar(63);if(Y)this.tokenChar(58),this.space(),this.print(Y);this.space(),H(),this.tokenChar(125)}function mG(J,X){if(X!==!0)J.token(X)}function VG1(J){this._printTemplate(J,J.types)}function KG1(J){this.print(J.literal)}function UG1(J){this.print(J.expression),this.print(J.typeArguments)}function BG1(J){let{declare:X,id:Z,typeParameters:Q,extends:Y,body:H}=J;if(X)this.word("declare"),this.space();if(this.word("interface"),this.space(),this.print(Z),this.print(Q),Y!=null&&Y.length)this.space(),this.word("extends"),this.space(),this.printList(Y);this.space(),this.print(H)}function RG1(J){Z2(this,J,()=>this.printJoin(J.body,!0,!0))}function $G1(J){let{declare:X,id:Z,typeParameters:Q,typeAnnotation:Y}=J;if(X)this.word("declare"),this.space();this.word("type"),this.space(),this.print(Z),this.print(Q),this.space(),this.tokenChar(61),this.space(),this.print(Y),this.semicolon()}function qG1(J){let{type:X,expression:Z,typeAnnotation:Q}=J;this.print(Z,!0),this.space(),this.word(X==="TSAsExpression"?"as":"satisfies"),this.space(),this.print(Q)}function FG1(J){let{typeAnnotation:X,expression:Z}=J;this.tokenChar(60),this.print(X),this.tokenChar(62),this.space(),this.print(Z)}function jG1(J){this.print(J.expression),this.print(J.typeParameters)}function MG1(J){let{declare:X,const:Z,id:Q}=J;if(X)this.word("declare"),this.space();if(Z)this.word("const"),this.space();this.word("enum"),this.space(),this.print(Q),this.space(),iG.call(this,J)}function iG(J){Z2(this,J,()=>{var X;return this.printList(J.members,(X=this.shouldPrintTrailingComma("}"))!=null?X:!0,!0,!0)})}function OG1(J){let{id:X,initializer:Z}=J;if(this.print(X),Z)this.space(),this.tokenChar(61),this.space(),this.print(Z)}function AG1(J){let{declare:X,id:Z,kind:Q}=J;if(X)this.word("declare"),this.space();{if(!J.global)this.word(Q!=null?Q:Z.type==="Identifier"?"namespace":"module"),this.space();if(this.print(Z),!J.body){this.semicolon();return}let Y=J.body;while(Y.type==="TSModuleDeclaration")this.tokenChar(46),this.print(Y.id),Y=Y.body;this.space(),this.print(Y)}}function CG1(J){Z2(this,J,()=>this.printSequence(J.body,!0))}function DG1(J){let{argument:X,qualifier:Z,options:Q}=J;if(this.word("import"),this.tokenChar(40),this.print(X),Q)this.tokenChar(44),this.print(Q);if(this.tokenChar(41),Z)this.tokenChar(46),this.print(Z);let Y=J.typeParameters;if(Y)this.print(Y)}function IG1(J){let{id:X,moduleReference:Z}=J;if(J.isExport)this.word("export"),this.space();this.word("import"),this.space(),this.print(X),this.space(),this.tokenChar(61),this.space(),this.print(Z),this.semicolon()}function NG1(J){this.token("require("),this.print(J.expression),this.tokenChar(41)}function wG1(J){this.print(J.expression),this.tokenChar(33)}function SG1(J){this.word("export"),this.space(),this.tokenChar(61),this.space(),this.print(J.expression),this.semicolon()}function PG1(J){this.word("export"),this.space(),this.word("as"),this.space(),this.word("namespace"),this.space(),this.print(J.id),this.semicolon()}function TG1(J){let{typeParameters:X}=J,Z=J.parameters;this.print(X),this.tokenChar(40),this._parameters(Z,")");let Q=J.typeAnnotation;this.print(Q)}function LG1(J){let X=J.type==="ClassPrivateProperty",Z=J.type==="ClassAccessorProperty"||J.type==="ClassProperty";if(cG(this,J,[Z&&J.declare&&"declare",!X&&J.accessibility]),J.static)this.word("static"),this.space();cG(this,J,[!X&&J.abstract&&"abstract",!X&&J.override&&"override",(Z||X)&&J.readonly&&"readonly"])}function Z2(J,X,Z){J.token("{");let Q=J.enterDelimited();Z(),Q(),J.rightBrace(X)}function cG(J,X,Z){var Q;let Y=new Set;for(let H of Z)if(H)Y.add(H);(Q=J.tokenMap)==null||Q.find(X,(H)=>{if(Y.has(H.value))return J.token(H.value),J.space(),Y.delete(H.value),Y.size===0});for(let H of Y)J.word(H),J.space()}});var dG=I((R1)=>{Object.defineProperty(R1,"__esModule",{value:!0});var T7=VG();Object.keys(T7).forEach(function(J){if(J==="default"||J==="__esModule")return;if(J in R1&&R1[J]===T7[J])return;Object.defineProperty(R1,J,{enumerable:!0,get:function(){return T7[J]}})});var L7=BG();Object.keys(L7).forEach(function(J){if(J==="default"||J==="__esModule")return;if(J in R1&&R1[J]===L7[J])return;Object.defineProperty(R1,J,{enumerable:!0,get:function(){return L7[J]}})});var k7=MG();Object.keys(k7).forEach(function(J){if(J==="default"||J==="__esModule")return;if(J in R1&&R1[J]===k7[J])return;Object.defineProperty(R1,J,{enumerable:!0,get:function(){return k7[J]}})});var b7=AG();Object.keys(b7).forEach(function(J){if(J==="default"||J==="__esModule")return;if(J in R1&&R1[J]===b7[J])return;Object.defineProperty(R1,J,{enumerable:!0,get:function(){return b7[J]}})});var v7=DG();Object.keys(v7).forEach(function(J){if(J==="default"||J==="__esModule")return;if(J in R1&&R1[J]===v7[J])return;Object.defineProperty(R1,J,{enumerable:!0,get:function(){return v7[J]}})});var E7=I7();Object.keys(E7).forEach(function(J){if(J==="default"||J==="__esModule")return;if(J in R1&&R1[J]===E7[J])return;Object.defineProperty(R1,J,{enumerable:!0,get:function(){return E7[J]}})});var _7=S7();Object.keys(_7).forEach(function(J){if(J==="default"||J==="__esModule")return;if(J in R1&&R1[J]===_7[J])return;Object.defineProperty(R1,J,{enumerable:!0,get:function(){return _7[J]}})});var g7=fG();Object.keys(g7).forEach(function(J){if(J==="default"||J==="__esModule")return;if(J in R1&&R1[J]===g7[J])return;Object.defineProperty(R1,J,{enumerable:!0,get:function(){return g7[J]}})});var f7=xG();Object.keys(f7).forEach(function(J){if(J==="default"||J==="__esModule")return;if(J in R1&&R1[J]===f7[J])return;Object.defineProperty(R1,J,{enumerable:!0,get:function(){return f7[J]}})});var h7=uG();Object.keys(h7).forEach(function(J){if(J==="default"||J==="__esModule")return;if(J in R1&&R1[J]===h7[J])return;Object.defineProperty(R1,J,{enumerable:!0,get:function(){return h7[J]}})});var x7=rG();Object.keys(x7).forEach(function(J){if(J==="default"||J==="__esModule")return;if(J in R1&&R1[J]===x7[J])return;Object.defineProperty(R1,J,{enumerable:!0,get:function(){return x7[J]}})})});var sG=I((aG)=>{Object.defineProperty(aG,"__esModule",{value:!0});aG.addDeprecatedGenerators=pz1;function pz1(J){{let X={Noop(){},TSExpressionWithTypeArguments(Z){this.print(Z.expression),this.print(Z.typeParameters)},DecimalLiteral(Z){let Q=this.getPossibleRaw(Z);if(!this.format.minified&&Q!==void 0){this.word(Q);return}this.word(Z.value+"m")}};Object.assign(J.prototype,X)}}});var Xz=I((eG)=>{Object.defineProperty(eG,"__esModule",{value:!0});eG.default=void 0;var dz1=fH(),i1=TJ(),nG=i1,az1=H1(),sz1=zG(),tz1=dG(),nz1=sG(),{isExpression:oz1,isFunction:ez1,isStatement:JW1,isClassBody:XW1,isTSInterfaceBody:ZW1,isTSEnumMember:QW1}=az1,YW1=/e/i,HW1=/\.0+$/,oG=/[\n\r\u2028\u2029]/,GW1=/[\n\r\u2028\u2029]|\*\//;function tG(J){return J.type==="CommentLine"||oG.test(J.value)}var{needsParens:zW1}=nG;class Q2{constructor(J,X,Z,Q){this.tokenContext=i1.TokenContext.normal,this._tokens=null,this._originalCode=null,this._currentNode=null,this._indent=0,this._indentRepeat=0,this._insideAux=!1,this._noLineTerminator=!1,this._noLineTerminatorAfterNode=null,this._printAuxAfterOnNextUserNode=!1,this._printedComments=new Set,this._endsWithInteger=!1,this._endsWithWord=!1,this._endsWithDiv=!1,this._lastCommentLine=0,this._endsWithInnerRaw=!1,this._indentInnerComments=!0,this.tokenMap=null,this._boundGetRawIdentifier=this._getRawIdentifier.bind(this),this._printSemicolonBeforeNextNode=-1,this._printSemicolonBeforeNextToken=-1,this.format=J,this._tokens=Z,this._originalCode=Q,this._indentRepeat=J.indent.style.length,this._inputMap=X==null?void 0:X._inputMap,this._buf=new dz1.default(X,J.indent.style[0])}enterForStatementInit(){return this.tokenContext|=i1.TokenContext.forInitHead|i1.TokenContext.forInOrInitHeadAccumulate,()=>this.tokenContext=i1.TokenContext.normal}enterForXStatementInit(J){if(J)return this.tokenContext|=i1.TokenContext.forOfHead,null;else return this.tokenContext|=i1.TokenContext.forInHead|i1.TokenContext.forInOrInitHeadAccumulate,()=>this.tokenContext=i1.TokenContext.normal}enterDelimited(){let J=this.tokenContext,X=this._noLineTerminatorAfterNode;if(!(J&i1.TokenContext.forInOrInitHeadAccumulate)&&X===null)return()=>{};return this._noLineTerminatorAfterNode=null,this.tokenContext=i1.TokenContext.normal,()=>{this._noLineTerminatorAfterNode=X,this.tokenContext=J}}generate(J){if(this.format.preserveFormat)this.tokenMap=new sz1.TokenMap(J,this._tokens,this._originalCode);return this.print(J),this._maybeAddAuxComment(),this._buf.get()}indent(){let{format:J}=this;if(J.preserveFormat||J.compact||J.concise)return;this._indent++}dedent(){let{format:J}=this;if(J.preserveFormat||J.compact||J.concise)return;this._indent--}semicolon(J=!1){if(this._maybeAddAuxComment(),J){this._appendChar(59),this._noLineTerminator=!1;return}if(this.tokenMap){let X=this._currentNode;if(X.start!=null&&X.end!=null){if(!this.tokenMap.endMatches(X,";")){this._printSemicolonBeforeNextNode=this._buf.getCurrentLine();return}let Z=this.tokenMap.getIndexes(this._currentNode);this._catchUpTo(this._tokens[Z[Z.length-1]].loc.start)}}this._queue(59),this._noLineTerminator=!1}rightBrace(J){if(this.format.minified)this._buf.removeLastSemicolon();this.sourceWithOffset("end",J.loc,-1),this.tokenChar(125)}rightParens(J){this.sourceWithOffset("end",J.loc,-1),this.tokenChar(41)}space(J=!1){let{format:X}=this;if(X.compact||X.preserveFormat)return;if(J)this._space();else if(this._buf.hasContent()){let Z=this.getLastChar();if(Z!==32&&Z!==10)this._space()}}word(J,X=!1){if(this.tokenContext&=i1.TokenContext.forInOrInitHeadAccumulatePassThroughMask,this._maybePrintInnerComments(J),this._maybeAddAuxComment(),this.tokenMap)this._catchUpToCurrentToken(J);if(this._endsWithWord||this._endsWithDiv&&J.charCodeAt(0)===47)this._space();this._append(J,!1),this._endsWithWord=!0,this._noLineTerminator=X}number(J,X){function Z(Q){if(Q.length>2&&Q.charCodeAt(0)===48){let Y=Q.charCodeAt(1);return Y===98||Y===111||Y===120}return!1}this.word(J),this._endsWithInteger=Number.isInteger(X)&&!Z(J)&&!YW1.test(J)&&!HW1.test(J)&&J.charCodeAt(J.length-1)!==46}token(J,X=!1,Z=0){if(this.tokenContext&=i1.TokenContext.forInOrInitHeadAccumulatePassThroughMask,this._maybePrintInnerComments(J,Z),this._maybeAddAuxComment(),this.tokenMap)this._catchUpToCurrentToken(J,Z);let Q=this.getLastChar(),Y=J.charCodeAt(0);if(Q===33&&(J==="--"||Y===61)||Y===43&&Q===43||Y===45&&Q===45||Y===46&&this._endsWithInteger)this._space();this._append(J,X),this._noLineTerminator=!1}tokenChar(J){this.tokenContext&=i1.TokenContext.forInOrInitHeadAccumulatePassThroughMask;let X=String.fromCharCode(J);if(this._maybePrintInnerComments(X),this._maybeAddAuxComment(),this.tokenMap)this._catchUpToCurrentToken(X);let Z=this.getLastChar();if(J===43&&Z===43||J===45&&Z===45||J===46&&this._endsWithInteger)this._space();this._appendChar(J),this._noLineTerminator=!1}newline(J=1,X){if(J<=0)return;if(!X){if(this.format.retainLines||this.format.compact)return;if(this.format.concise){this.space();return}}if(J>2)J=2;J-=this._buf.getNewlineCount();for(let Z=0;Z<J;Z++)this._newline();return}endsWith(J){return this.getLastChar()===J}getLastChar(){return this._buf.getLastChar()}endsWithCharAndNewline(){return this._buf.endsWithCharAndNewline()}removeTrailingNewline(){this._buf.removeTrailingNewline()}exactSource(J,X){if(!J){X();return}this._catchUp("start",J),this._buf.exactSource(J,X)}source(J,X){if(!X)return;this._catchUp(J,X),this._buf.source(J,X)}sourceWithOffset(J,X,Z){if(!X||this.format.preserveFormat)return;this._catchUp(J,X),this._buf.sourceWithOffset(J,X,Z)}sourceIdentifierName(J,X){if(!this._buf._canMarkIdName)return;let Z=this._buf._sourcePosition;Z.identifierNamePos=X,Z.identifierName=J}_space(){this._queue(32)}_newline(){this._queue(10)}_catchUpToCurrentToken(J,X=0){let Z=this.tokenMap.findMatching(this._currentNode,J,X);if(Z)this._catchUpTo(Z.loc.start);if(this._printSemicolonBeforeNextToken!==-1&&this._printSemicolonBeforeNextToken===this._buf.getCurrentLine())this._buf.appendChar(59),this._endsWithWord=!1,this._endsWithInteger=!1,this._endsWithDiv=!1;this._printSemicolonBeforeNextToken=-1,this._printSemicolonBeforeNextNode=-1}_append(J,X){this._maybeIndent(J.charCodeAt(0)),this._buf.append(J,X),this._endsWithWord=!1,this._endsWithInteger=!1,this._endsWithDiv=!1}_appendChar(J){this._maybeIndent(J),this._buf.appendChar(J),this._endsWithWord=!1,this._endsWithInteger=!1,this._endsWithDiv=!1}_queue(J){this._maybeIndent(J),this._buf.queue(J),this._endsWithWord=!1,this._endsWithInteger=!1}_maybeIndent(J){if(this._indent&&J!==10&&this.endsWith(10))this._buf.queueIndentation(this._getIndent())}_shouldIndent(J){if(this._indent&&J!==10&&this.endsWith(10))return!0}catchUp(J){if(!this.format.retainLines)return;let X=J-this._buf.getCurrentLine();for(let Z=0;Z<X;Z++)this._newline()}_catchUp(J,X){let{format:Z}=this;if(!Z.preserveFormat){if(Z.retainLines&&X!=null&&X[J])this.catchUp(X[J].line);return}let Q=X==null?void 0:X[J];if(Q!=null)this._catchUpTo(Q)}_catchUpTo({line:J,column:X,index:Z}){let Q=J-this._buf.getCurrentLine();if(Q>0&&this._noLineTerminator)return;for(let H=0;H<Q;H++)this._newline();let Y=Q>0?X:X-this._buf.getCurrentColumn();if(Y>0){let H=this._originalCode?this._originalCode.slice(Z-Y,Z).replace(/[^\t\x0B\f \xA0\u1680\u2000-\u200A\u202F\u205F\u3000\uFEFF]/gu," "):" ".repeat(Y);this._append(H,!1)}}_getIndent(){return this._indentRepeat*this._indent}printTerminatorless(J){this._noLineTerminator=!0,this.print(J)}print(J,X,Z){var Q,Y,H;if(!J)return;this._endsWithInnerRaw=!1;let G=J.type,z=this.format,W=z.concise;if(J._compact)z.concise=!0;let V=this[G];if(V===void 0)throw ReferenceError(`unknown node of type ${JSON.stringify(G)} with constructor ${JSON.stringify(J.constructor.name)}`);let U=this._currentNode;if(this._currentNode=J,this.tokenMap)this._printSemicolonBeforeNextToken=this._printSemicolonBeforeNextNode;let $=this._insideAux;this._insideAux=J.loc==null,this._maybeAddAuxComment(this._insideAux&&!$);let j=(Q=J.extra)==null?void 0:Q.parenthesized,C=j&&z.preserveFormat||j&&z.retainFunctionParens&&G==="FunctionExpression"||zW1(J,U,this.tokenContext,z.preserveFormat?this._boundGetRawIdentifier:void 0);if(!C&&j&&(Y=J.leadingComments)!=null&&Y.length&&J.leadingComments[0].type==="CommentBlock")switch(U==null?void 0:U.type){case"ExpressionStatement":case"VariableDeclarator":case"AssignmentExpression":case"ReturnStatement":break;case"CallExpression":case"OptionalCallExpression":case"NewExpression":if(U.callee!==J)break;default:C=!0}let A=!1;if(!C&&this._noLineTerminator&&((H=J.leadingComments)!=null&&H.some(tG)||this.format.retainLines&&J.loc&&J.loc.start.line>this._buf.getCurrentLine()))C=!0,A=!0;let S,w;if(!C){if(X||(X=U&&this._noLineTerminatorAfterNode===U&&nG.isLastChild(U,J)),X){var P;if((P=J.trailingComments)!=null&&P.some(tG)){if(oz1(J))C=!0}else S=this._noLineTerminatorAfterNode,this._noLineTerminatorAfterNode=J}}if(C){if(this.tokenChar(40),A)this.indent();if(this._endsWithInnerRaw=!1,this.tokenContext&i1.TokenContext.forInOrInitHeadAccumulate)w=this.tokenContext,this.tokenContext=i1.TokenContext.normal;S=this._noLineTerminatorAfterNode,this._noLineTerminatorAfterNode=null}this._lastCommentLine=0,this._printLeadingComments(J,U);let b=G==="Program"||G==="File"?null:J.loc;if(this.exactSource(b,V.bind(this,J,U)),C){if(this._printTrailingComments(J,U),A)this.dedent(),this.newline();if(this.tokenChar(41),this._noLineTerminator=X,w)this.tokenContext=w}else if(X&&!this._noLineTerminator)this._noLineTerminator=!0,this._printTrailingComments(J,U);else this._printTrailingComments(J,U,Z);if(this._currentNode=U,z.concise=W,this._insideAux=$,S!==void 0)this._noLineTerminatorAfterNode=S;this._endsWithInnerRaw=!1}_maybeAddAuxComment(J){if(J)this._printAuxBeforeComment();if(!this._insideAux)this._printAuxAfterComment()}_printAuxBeforeComment(){if(this._printAuxAfterOnNextUserNode)return;this._printAuxAfterOnNextUserNode=!0;let J=this.format.auxiliaryCommentBefore;if(J)this._printComment({type:"CommentBlock",value:J},0)}_printAuxAfterComment(){if(!this._printAuxAfterOnNextUserNode)return;this._printAuxAfterOnNextUserNode=!1;let J=this.format.auxiliaryCommentAfter;if(J)this._printComment({type:"CommentBlock",value:J},0)}getPossibleRaw(J){let X=J.extra;if((X==null?void 0:X.raw)!=null&&X.rawValue!=null&&J.value===X.rawValue)return X.raw}printJoin(J,X,Z,Q,Y,H,G,z){if(!(J!=null&&J.length))return;if(Z==null&&this.format.retainLines){var W;let A=(W=J[0].loc)==null?void 0:W.start.line;if(A!=null&&A!==this._buf.getCurrentLine())Z=!0}if(Z)this.indent();let V={addNewlines:H,nextNodeStartLine:0},U=Q==null?void 0:Q.bind(this),$=J.length;for(let A=0;A<$;A++){let S=J[A];if(!S)continue;if(X)this._printNewline(A===0,V);if(this.print(S,void 0,z||0),G==null||G(S,A),U!=null){if(A<$-1)U(A,!1);else if(Y)U(A,!0)}if(X){var j;if(!((j=S.trailingComments)!=null&&j.length))this._lastCommentLine=0;if(A+1===$)this.newline(1);else{var C;let w=J[A+1];V.nextNodeStartLine=((C=w.loc)==null?void 0:C.start.line)||0,this._printNewline(!0,V)}}}if(Z)this.dedent()}printAndIndentOnComments(J){let X=J.leadingComments&&J.leadingComments.length>0;if(X)this.indent();if(this.print(J),X)this.dedent()}printBlock(J){let X=J.body;if(X.type!=="EmptyStatement")this.space();this.print(X)}_printTrailingComments(J,X,Z){let{innerComments:Q,trailingComments:Y}=J;if(Q!=null&&Q.length)this._printComments(2,Q,J,X,Z);if(Y!=null&&Y.length)this._printComments(2,Y,J,X,Z)}_printLeadingComments(J,X){let Z=J.leadingComments;if(!(Z!=null&&Z.length))return;this._printComments(0,Z,J,X)}_maybePrintInnerComments(J,X){if(this._endsWithInnerRaw){var Z;this.printInnerComments((Z=this.tokenMap)==null?void 0:Z.findMatching(this._currentNode,J,X))}this._endsWithInnerRaw=!0,this._indentInnerComments=!0}printInnerComments(J){let X=this._currentNode,Z=X.innerComments;if(!(Z!=null&&Z.length))return;let Q=this.endsWith(32),Y=this._indentInnerComments,H=this._printedComments.size;if(Y)this.indent();if(this._printComments(1,Z,X,void 0,void 0,J),Q&&H!==this._printedComments.size)this.space();if(Y)this.dedent()}noIndentInnerCommentsHere(){this._indentInnerComments=!1}printSequence(J,X,Z,Q){this.printJoin(J,!0,X!=null?X:!1,void 0,void 0,Q,void 0,Z)}printList(J,X,Z,Q,Y,H){this.printJoin(J,Z,Q,Y!=null?Y:WW1,X,void 0,H)}shouldPrintTrailingComma(J){if(!this.tokenMap)return null;let X=this.tokenMap.findLastIndex(this._currentNode,(Z)=>this.tokenMap.matchesOriginal(Z,J));if(X<=0)return null;return this.tokenMap.matchesOriginal(this._tokens[X-1],",")}_printNewline(J,X){let Z=this.format;if(Z.retainLines||Z.compact)return;if(Z.concise){this.space();return}if(!J)return;let Q=X.nextNodeStartLine,Y=this._lastCommentLine;if(Q>0&&Y>0){let H=Q-Y;if(H>=0){this.newline(H||1);return}}if(this._buf.hasContent())this.newline(1)}_shouldPrintComment(J,X){if(J.ignore)return 0;if(this._printedComments.has(J))return 0;if(this._noLineTerminator&&GW1.test(J.value))return 2;if(X&&this.tokenMap){let Z=this.tokenMap.find(this._currentNode,(Q)=>Q.value===J.value);if(Z&&Z.start>X.start)return 2}if(this._printedComments.add(J),!this.format.shouldPrintComment(J.value))return 0;return 1}_printComment(J,X){let Z=this._noLineTerminator,Q=J.type==="CommentBlock",Y=Q&&X!==1&&!this._noLineTerminator;if(Y&&this._buf.hasContent()&&X!==2)this.newline(1);let H=this.getLastChar();if(H!==91&&H!==123&&H!==40)this.space();let G;if(Q){if(G=`/*${J.value}*/`,this.format.indent.adjustMultilineComment){var z;let W=(z=J.loc)==null?void 0:z.start.column;if(W){let V=new RegExp("\\n\\s{1,"+W+"}","g");G=G.replace(V,`
26
+ `)}if(this.format.concise)G=G.replace(/\n(?!$)/g,`
27
+ `);else{let V=this.format.retainLines?0:this._buf.getCurrentColumn();if(this._shouldIndent(47)||this.format.retainLines)V+=this._getIndent();G=G.replace(/\n(?!$)/g,`
28
+ ${" ".repeat(V)}`)}}}else if(!Z)G=`//${J.value}`;else G=`/*${J.value}*/`;if(this._endsWithDiv)this._space();if(this.tokenMap){let{_printSemicolonBeforeNextToken:W,_printSemicolonBeforeNextNode:V}=this;this._printSemicolonBeforeNextToken=-1,this._printSemicolonBeforeNextNode=-1,this.source("start",J.loc),this._append(G,Q),this._printSemicolonBeforeNextNode=V,this._printSemicolonBeforeNextToken=W}else this.source("start",J.loc),this._append(G,Q);if(!Q&&!Z)this.newline(1,!0);if(Y&&X!==3)this.newline(1)}_printComments(J,X,Z,Q,Y=0,H){let G=Z.loc,z=X.length,W=!!G,V=W?G.start.line:0,U=W?G.end.line:0,$=0,j=0,C=this._noLineTerminator?function(){}:this.newline.bind(this);for(let A=0;A<z;A++){let S=X[A],w=this._shouldPrintComment(S,H);if(w===2){W=!1;break}if(W&&S.loc&&w===1){let P=S.loc.start.line,b=S.loc.end.line;if(J===0){let t=0;if(A===0){if(this._buf.hasContent()&&(S.type==="CommentLine"||P!==b))t=j=1}else t=P-$;if($=b,C(t),this._printComment(S,1),A+1===z)C(Math.max(V-$,j)),$=V}else if(J===1){let t=P-(A===0?V:$);if($=b,C(t),this._printComment(S,1),A+1===z)C(Math.min(1,U-$)),$=U}else{let t=P-(A===0?U-Y:$);$=b,C(t),this._printComment(S,1)}}else{if(W=!1,w!==1)continue;if(z===1){let P=S.loc?S.loc.start.line===S.loc.end.line:!oG.test(S.value),b=P&&!JW1(Z)&&!XW1(Q)&&!ZW1(Q)&&!QW1(Z);if(J===0)this._printComment(S,b&&Z.type!=="ObjectExpression"||P&&ez1(Q,{body:Z})?1:0);else if(b&&J===2)this._printComment(S,1);else this._printComment(S,0)}else if(J===1&&!(Z.type==="ObjectExpression"&&Z.properties.length>1)&&Z.type!=="ClassBody"&&Z.type!=="TSInterfaceBody")this._printComment(S,A===0?2:A===z-1?3:0);else this._printComment(S,0)}}if(J===2&&W&&$)this._lastCommentLine=$}}Object.assign(Q2.prototype,tz1);(0,nz1.addDeprecatedGenerators)(Q2);var FT1=eG.default=Q2;function WW1(J,X){if(this.token(",",!1,J),!X)this.space()}});var Wz=I((Gz)=>{Object.defineProperty(Gz,"__esModule",{value:!0});Gz.default=void 0;Gz.generate=Hz;var Zz=vH(),Qz=Xz();function Yz(J,X,Z){if(X.experimental_preserveFormat){if(typeof J!=="string")throw Error("`experimental_preserveFormat` requires the original `code` to be passed to @babel/generator as a string");if(!X.retainLines)throw Error("`experimental_preserveFormat` requires `retainLines` to be set to `true`");if(X.compact&&X.compact!=="auto")throw Error("`experimental_preserveFormat` is not compatible with the `compact` option");if(X.minified)throw Error("`experimental_preserveFormat` is not compatible with the `minified` option");if(X.jsescOption)throw Error("`experimental_preserveFormat` is not compatible with the `jsescOption` option");if(!Array.isArray(Z.tokens))throw Error("`experimental_preserveFormat` requires the AST to have attached the token of the input code. Make sure to enable the `tokens: true` parser option.")}let Q={auxiliaryCommentBefore:X.auxiliaryCommentBefore,auxiliaryCommentAfter:X.auxiliaryCommentAfter,shouldPrintComment:X.shouldPrintComment,preserveFormat:X.experimental_preserveFormat,retainLines:X.retainLines,retainFunctionParens:X.retainFunctionParens,comments:X.comments==null||X.comments,compact:X.compact,minified:X.minified,concise:X.concise,indent:{adjustMultilineComment:!0,style:" "},jsescOption:Object.assign({quotes:"double",wrap:!0,minimal:!1},X.jsescOption),topicToken:X.topicToken,importAttributesKeyword:X.importAttributesKeyword};{var Y;Q.decoratorsBeforeExport=X.decoratorsBeforeExport,Q.jsescOption.json=X.jsonCompatibleStrings,Q.recordAndTupleSyntaxType=(Y=X.recordAndTupleSyntaxType)!=null?Y:"hash"}if(Q.minified)Q.compact=!0,Q.shouldPrintComment=Q.shouldPrintComment||(()=>Q.comments);else Q.shouldPrintComment=Q.shouldPrintComment||((W)=>Q.comments||W.includes("@license")||W.includes("@preserve"));if(Q.compact==="auto"){if(Q.compact=typeof J==="string"&&J.length>500000,Q.compact)console.error(`[BABEL] Note: The code generator has deoptimised the styling of ${X.filename} as it exceeds the max of 500KB.`)}if(Q.compact||Q.preserveFormat)Q.indent.adjustMultilineComment=!1;let{auxiliaryCommentBefore:H,auxiliaryCommentAfter:G,shouldPrintComment:z}=Q;if(H&&!z(H))Q.auxiliaryCommentBefore=void 0;if(G&&!z(G))Q.auxiliaryCommentAfter=void 0;return Q}Gz.CodeGenerator=class{constructor(X,Z={},Q){this._ast=void 0,this._format=void 0,this._map=void 0,this._ast=X,this._format=Yz(Q,Z,X),this._map=Z.sourceMaps?new Zz.default(Z,Q):null}generate(){return new Qz.default(this._format,this._map).generate(this._ast)}};function Hz(J,X={},Z){let Q=Yz(Z,X,J),Y=X.sourceMaps?new Zz.default(X,Z):null;return new Qz.default(Q,Y,J.tokens,typeof Z==="string"?Z:null).generate(J)}var MT1=Gz.default=Hz});var Kz=I((Vz)=>{Object.defineProperty(Vz,"__esModule",{value:!0});Vz.find=RW1;Vz.findParent=BW1;Vz.getAncestry=MW1;Vz.getDeepestCommonAncestorFrom=jW1;Vz.getEarliestCommonAncestorFrom=FW1;Vz.getFunctionParent=$W1;Vz.getStatementParent=qW1;Vz.inType=CW1;Vz.isAncestor=OW1;Vz.isDescendant=AW1;var KW1=H1(),{VISITOR_KEYS:UW1}=KW1;function BW1(J){let X=this;while(X=X.parentPath)if(J(X))return X;return null}function RW1(J){let X=this;do if(J(X))return X;while(X=X.parentPath);return null}function $W1(){return this.findParent((J)=>J.isFunction())}function qW1(){let J=this;do if(!J.parentPath||Array.isArray(J.container)&&J.isStatement())break;else J=J.parentPath;while(J);if(J&&(J.isProgram()||J.isFile()))throw Error("File/Program node, we can't possibly find a statement parent to this");return J}function FW1(J){return this.getDeepestCommonAncestorFrom(J,function(X,Z,Q){let Y,H=UW1[X.type];for(let G of Q){let z=G[Z+1];if(!Y){Y=z;continue}if(z.listKey&&Y.listKey===z.listKey){if(z.key<Y.key){Y=z;continue}}let W=H.indexOf(Y.parentKey),V=H.indexOf(z.parentKey);if(W>V)Y=z}return Y})}function jW1(J,X){if(!J.length)return this;if(J.length===1)return J[0];let Z=1/0,Q,Y,H=J.map((z)=>{let W=[];do W.unshift(z);while((z=z.parentPath)&&z!==this);if(W.length<Z)Z=W.length;return W}),G=H[0];J:for(let z=0;z<Z;z++){let W=G[z];for(let V of H)if(V[z]!==W)break J;Q=z,Y=W}if(Y)if(X)return X(Y,Q,H);else return Y;else throw Error("Couldn't find intersection")}function MW1(){let J=this,X=[];do X.push(J);while(J=J.parentPath);return X}function OW1(J){return J.isDescendant(this)}function AW1(J){return!!this.findParent((X)=>X===J)}function CW1(...J){let X=this;while(X){if(J.includes(X.node.type))return!0;X=X.parentPath}return!1}});var y7=I((Rz)=>{Object.defineProperty(Rz,"__esModule",{value:!0});Rz.createUnionType=fW1;var vW1=H1(),{createFlowUnionType:Uz,createTSUnionType:Bz,createUnionTypeAnnotation:EW1,isFlowType:_W1,isTSType:gW1}=vW1;function fW1(J){if(J.every((X)=>_W1(X))){if(Uz)return Uz(J);return EW1(J)}else if(J.every((X)=>gW1(X))){if(Bz)return Bz(J)}}});var Oz=I((Mz)=>{Object.defineProperty(Mz,"__esModule",{value:!0});Mz.default=cW1;var xW1=H1(),qz=y7(),{BOOLEAN_NUMBER_BINARY_OPERATORS:yW1,createTypeAnnotationBasedOnTypeof:uW1,numberTypeAnnotation:Fz,voidTypeAnnotation:mW1}=xW1;function cW1(J){if(!this.isReferenced())return;let X=this.scope.getBinding(J.name);if(X)if(X.identifier.typeAnnotation)return X.identifier.typeAnnotation;else return lW1(X,this,J.name);if(J.name==="undefined")return mW1();else if(J.name==="NaN"||J.name==="Infinity")return Fz();else if(J.name==="arguments");}function lW1(J,X,Z){let Q=[],Y=[],H=$z(J,X,Y),G=jz(J,X,Z);if(G){let z=$z(J,G.ifStatement);H=H.filter((W)=>!z.includes(W)),Q.push(G.typeAnnotation)}if(H.length){H.push(...Y);for(let z of H)Q.push(z.getTypeAnnotation())}if(!Q.length)return;return(0,qz.createUnionType)(Q)}function $z(J,X,Z){let Q=J.constantViolations.slice();return Q.unshift(J.path),Q.filter((Y)=>{Y=Y.resolve();let H=Y._guessExecutionStatusRelativeTo(X);if(Z&&H==="unknown")Z.push(Y);return H==="before"})}function iW1(J,X){let Z=X.node.operator,Q=X.get("right").resolve(),Y=X.get("left").resolve(),H;if(Y.isIdentifier({name:J}))H=Q;else if(Q.isIdentifier({name:J}))H=Y;if(H){if(Z==="===")return H.getTypeAnnotation();if(yW1.includes(Z))return Fz();return}if(Z!=="==="&&Z!=="==")return;let G,z;if(Y.isUnaryExpression({operator:"typeof"}))G=Y,z=Q;else if(Q.isUnaryExpression({operator:"typeof"}))G=Q,z=Y;if(!G)return;if(!G.get("argument").isIdentifier({name:J}))return;if(z=z.resolve(),!z.isLiteral())return;let W=z.node.value;if(typeof W!=="string")return;return uW1(W)}function pW1(J,X,Z){let Q;while(Q=X.parentPath){if(Q.isIfStatement()||Q.isConditionalExpression()){if(X.key==="test")return;return Q}if(Q.isFunction()){if(Q.parentPath.scope.getBinding(Z)!==J)return}X=Q}}function jz(J,X,Z){let Q=pW1(J,X,Z);if(!Q)return;let H=[Q.get("test")],G=[];for(let z=0;z<H.length;z++){let W=H[z];if(W.isLogicalExpression()){if(W.node.operator==="&&")H.push(W.get("left")),H.push(W.get("right"))}else if(W.isBinaryExpression()){let V=iW1(Z,W);if(V)G.push(V)}}if(G.length)return{typeAnnotation:(0,qz.createUnionType)(G),ifStatement:Q};return jz(J,Q,Z)}});var Pz=I((c7)=>{Object.defineProperty(c7,"__esModule",{value:!0});c7.ArrayExpression=Nz;c7.AssignmentExpression=q31;c7.BinaryExpression=K31;c7.BooleanLiteral=O31;c7.CallExpression=T31;c7.ConditionalExpression=B31;c7.ClassDeclaration=c7.ClassExpression=c7.FunctionDeclaration=c7.ArrowFunctionExpression=c7.FunctionExpression=I31;Object.defineProperty(c7,"Identifier",{enumerable:!0,get:function(){return aW1.default}});c7.LogicalExpression=U31;c7.NewExpression=z31;c7.NullLiteral=A31;c7.NumericLiteral=M31;c7.ObjectExpression=D31;c7.ParenthesizedExpression=$31;c7.RegExpLiteral=C31;c7.RestElement=wz;c7.SequenceExpression=R31;c7.StringLiteral=j31;c7.TSAsExpression=Iz;c7.TSNonNullExpression=G31;c7.TaggedTemplateExpression=L31;c7.TemplateLiteral=W31;c7.TypeCastExpression=Dz;c7.UnaryExpression=V31;c7.UpdateExpression=F31;c7.VariableDeclarator=H31;var dW1=H1(),aW1=Oz(),Cz=y7(),{BOOLEAN_BINARY_OPERATORS:sW1,BOOLEAN_UNARY_OPERATORS:tW1,NUMBER_BINARY_OPERATORS:nW1,NUMBER_UNARY_OPERATORS:oW1,STRING_UNARY_OPERATORS:eW1,anyTypeAnnotation:Az,arrayTypeAnnotation:u7,booleanTypeAnnotation:m7,buildMatchMemberExpression:Y2,genericTypeAnnotation:zJ,identifier:LJ,nullLiteralTypeAnnotation:J31,numberTypeAnnotation:Z9,stringTypeAnnotation:kJ,tupleTypeAnnotation:X31,unionTypeAnnotation:Z31,voidTypeAnnotation:Q31,isIdentifier:Y31}=dW1;function H31(){if(!this.get("id").isIdentifier())return;return this.get("init").getTypeAnnotation()}function Dz(J){return J.typeAnnotation}Dz.validParent=!0;function Iz(J){return J.typeAnnotation}Iz.validParent=!0;function G31(){return this.get("expression").getTypeAnnotation()}function z31(J){if(J.callee.type==="Identifier")return zJ(J.callee)}function W31(){return kJ()}function V31(J){let X=J.operator;if(X==="void")return Q31();else if(oW1.includes(X))return Z9();else if(eW1.includes(X))return kJ();else if(tW1.includes(X))return m7()}function K31(J){let X=J.operator;if(nW1.includes(X))return Z9();else if(sW1.includes(X))return m7();else if(X==="+"){let Z=this.get("right"),Q=this.get("left");if(Q.isBaseType("number")&&Z.isBaseType("number"))return Z9();else if(Q.isBaseType("string")||Z.isBaseType("string"))return kJ();return Z31([kJ(),Z9()])}}function U31(){let J=[this.get("left").getTypeAnnotation(),this.get("right").getTypeAnnotation()];return(0,Cz.createUnionType)(J)}function B31(){let J=[this.get("consequent").getTypeAnnotation(),this.get("alternate").getTypeAnnotation()];return(0,Cz.createUnionType)(J)}function R31(){return this.get("expressions").pop().getTypeAnnotation()}function $31(){return this.get("expression").getTypeAnnotation()}function q31(){return this.get("right").getTypeAnnotation()}function F31(J){let X=J.operator;if(X==="++"||X==="--")return Z9()}function j31(){return kJ()}function M31(){return Z9()}function O31(){return m7()}function A31(){return J31()}function C31(){return zJ(LJ("RegExp"))}function D31(){return zJ(LJ("Object"))}function Nz(){return zJ(LJ("Array"))}function wz(){return Nz()}wz.validParent=!0;function I31(){return zJ(LJ("Function"))}var N31=Y2("Array.from"),w31=Y2("Object.keys"),S31=Y2("Object.values"),P31=Y2("Object.entries");function T31(){let{callee:J}=this.node;if(w31(J))return u7(kJ());else if(N31(J)||S31(J)||Y31(J,{name:"Array"}))return u7(Az());else if(P31(J))return u7(X31([kJ(),Az()]));return Sz(this.get("callee"))}function L31(){return Sz(this.get("tag"))}function Sz(J){if(J=J.resolve(),J.isFunction()){let{node:X}=J;if(X.async)if(X.generator)return zJ(LJ("AsyncIterator"));else return zJ(LJ("Promise"));else if(X.generator)return zJ(LJ("Iterator"));else if(J.node.returnType)return J.node.returnType}}});var Ez=I((vz)=>{Object.defineProperty(vz,"__esModule",{value:!0});vz._getTypeAnnotation=bz;vz.baseTypeStrictlyMatches=DV1;vz.couldBeBaseType=CV1;vz.getTypeAnnotation=OV1;vz.isBaseType=AV1;vz.isGenericType=IV1;var Tz=Pz(),XV1=H1(),{anyTypeAnnotation:kz,isAnyTypeAnnotation:H2,isArrayTypeAnnotation:ZV1,isBooleanTypeAnnotation:QV1,isEmptyTypeAnnotation:YV1,isFlowBaseAnnotation:HV1,isGenericTypeAnnotation:GV1,isIdentifier:Lz,isMixedTypeAnnotation:zV1,isNumberTypeAnnotation:WV1,isStringTypeAnnotation:VV1,isTSArrayType:KV1,isTSTypeAnnotation:UV1,isTSTypeReference:BV1,isTupleTypeAnnotation:RV1,isTypeAnnotation:$V1,isUnionTypeAnnotation:qV1,isVoidTypeAnnotation:FV1,stringTypeAnnotation:jV1,voidTypeAnnotation:MV1}=XV1;function OV1(){let J=this.getData("typeAnnotation");if(J!=null)return J;if(J=bz.call(this)||kz(),$V1(J)||UV1(J))J=J.typeAnnotation;return this.setData("typeAnnotation",J),J}var l7=new WeakSet;function bz(){let J=this.node;if(!J)if(this.key==="init"&&this.parentPath.isVariableDeclarator()){let Z=this.parentPath.parentPath,Q=Z.parentPath;if(Z.key==="left"&&Q.isForInStatement())return jV1();if(Z.key==="left"&&Q.isForOfStatement())return kz();return MV1()}else return;if(J.typeAnnotation)return J.typeAnnotation;if(l7.has(J))return;l7.add(J);try{var X;let Z=Tz[J.type];if(Z)return Z.call(this,J);if(Z=Tz[this.parentPath.type],(X=Z)!=null&&X.validParent)return this.parentPath.getTypeAnnotation()}finally{l7.delete(J)}}function AV1(J,X){return i7(J,this.getTypeAnnotation(),X)}function i7(J,X,Z){if(J==="string")return VV1(X);else if(J==="number")return WV1(X);else if(J==="boolean")return QV1(X);else if(J==="any")return H2(X);else if(J==="mixed")return zV1(X);else if(J==="empty")return YV1(X);else if(J==="void")return FV1(X);else if(Z)return!1;else throw Error(`Unknown base type ${J}`)}function CV1(J){let X=this.getTypeAnnotation();if(H2(X))return!0;if(qV1(X)){for(let Z of X.types)if(H2(Z)||i7(J,Z,!0))return!0;return!1}else return i7(J,X,!0)}function DV1(J){let X=this.getTypeAnnotation(),Z=J.getTypeAnnotation();if(!H2(X)&&HV1(X))return Z.type===X.type;return!1}function IV1(J){let X=this.getTypeAnnotation();if(J==="Array"){if(KV1(X)||ZV1(X)||RV1(X))return!0}return GV1(X)&&Lz(X.id,{name:J})||BV1(X)&&Lz(X.typeName,{name:J})}});var fz=I((kT1,p7)=>{var z2=process||{},_z=z2.argv||[],G2=z2.env||{},kV1=!(!!G2.NO_COLOR||_z.includes("--no-color"))&&(!!G2.FORCE_COLOR||_z.includes("--color")||z2.platform==="win32"||(z2.stdout||{}).isTTY&&G2.TERM!=="dumb"||!!G2.CI),bV1=(J,X,Z=J)=>(Q)=>{let Y=""+Q,H=Y.indexOf(X,J.length);return~H?J+vV1(Y,X,Z,H)+X:J+Y+X},vV1=(J,X,Z,Q)=>{let Y="",H=0;do Y+=J.substring(H,Q)+Z,H=Q+X.length,Q=J.indexOf(X,H);while(~Q);return Y+J.substring(H)},gz=(J=kV1)=>{let X=J?bV1:()=>String;return{isColorSupported:J,reset:X("\x1B[0m","\x1B[0m"),bold:X("\x1B[1m","\x1B[22m","\x1B[22m\x1B[1m"),dim:X("\x1B[2m","\x1B[22m","\x1B[22m\x1B[2m"),italic:X("\x1B[3m","\x1B[23m"),underline:X("\x1B[4m","\x1B[24m"),inverse:X("\x1B[7m","\x1B[27m"),hidden:X("\x1B[8m","\x1B[28m"),strikethrough:X("\x1B[9m","\x1B[29m"),black:X("\x1B[30m","\x1B[39m"),red:X("\x1B[31m","\x1B[39m"),green:X("\x1B[32m","\x1B[39m"),yellow:X("\x1B[33m","\x1B[39m"),blue:X("\x1B[34m","\x1B[39m"),magenta:X("\x1B[35m","\x1B[39m"),cyan:X("\x1B[36m","\x1B[39m"),white:X("\x1B[37m","\x1B[39m"),gray:X("\x1B[90m","\x1B[39m"),bgBlack:X("\x1B[40m","\x1B[49m"),bgRed:X("\x1B[41m","\x1B[49m"),bgGreen:X("\x1B[42m","\x1B[49m"),bgYellow:X("\x1B[43m","\x1B[49m"),bgBlue:X("\x1B[44m","\x1B[49m"),bgMagenta:X("\x1B[45m","\x1B[49m"),bgCyan:X("\x1B[46m","\x1B[49m"),bgWhite:X("\x1B[47m","\x1B[49m"),blackBright:X("\x1B[90m","\x1B[39m"),redBright:X("\x1B[91m","\x1B[39m"),greenBright:X("\x1B[92m","\x1B[39m"),yellowBright:X("\x1B[93m","\x1B[39m"),blueBright:X("\x1B[94m","\x1B[39m"),magentaBright:X("\x1B[95m","\x1B[39m"),cyanBright:X("\x1B[96m","\x1B[39m"),whiteBright:X("\x1B[97m","\x1B[39m"),bgBlackBright:X("\x1B[100m","\x1B[49m"),bgRedBright:X("\x1B[101m","\x1B[49m"),bgGreenBright:X("\x1B[102m","\x1B[49m"),bgYellowBright:X("\x1B[103m","\x1B[49m"),bgBlueBright:X("\x1B[104m","\x1B[49m"),bgMagentaBright:X("\x1B[105m","\x1B[49m"),bgCyanBright:X("\x1B[106m","\x1B[49m"),bgWhiteBright:X("\x1B[107m","\x1B[49m")}};p7.exports=gz();p7.exports.createColors=gz});var xz=I((hz)=>{Object.defineProperty(hz,"__esModule",{value:!0});hz.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;hz.matchToToken=function(J){var X={type:"invalid",value:J[0],closed:void 0};if(J[1])X.type="string",X.closed=!!(J[3]||J[4]);else if(J[5])X.type="comment";else if(J[6])X.type="comment",X.closed=!!J[7];else if(J[8])X.type="regex";else if(J[9])X.type="number";else if(J[10])X.type="name";else if(J[11])X.type="punctuator";else if(J[12])X.type="whitespace";return X}});var d7=I((az)=>{Object.defineProperty(az,"__esModule",{value:!0});var r7=fz(),yz=xz(),uz=k9();function gV1(){return typeof process==="object"&&(process.env.FORCE_COLOR==="0"||process.env.FORCE_COLOR==="false")?!1:r7.isColorSupported}var W2=(J,X)=>(Z)=>J(X(Z));function lz(J){return{keyword:J.cyan,capitalized:J.yellow,jsxIdentifier:J.yellow,punctuator:J.yellow,number:J.magenta,string:J.green,regex:J.magenta,comment:J.gray,invalid:W2(W2(J.white,J.bgRed),J.bold),gutter:J.gray,marker:W2(J.red,J.bold),message:W2(J.red,J.bold),reset:J.reset}}var fV1=lz(r7.createColors(!0)),hV1=lz(r7.createColors(!1));function iz(J){return J?fV1:hV1}var xV1=new Set(["as","async","from","get","of","set"]),yV1=/\r\n|[\n\r\u2028\u2029]/,uV1=/^[()[\]{}]$/,pz;{let J=/^[a-z][\w-]*$/i,X=function(Z,Q,Y){if(Z.type==="name"){if(uz.isKeyword(Z.value)||uz.isStrictReservedWord(Z.value,!0)||xV1.has(Z.value))return"keyword";if(J.test(Z.value)&&(Y[Q-1]==="<"||Y.slice(Q-2,Q)==="</"))return"jsxIdentifier";if(Z.value[0]!==Z.value[0].toLowerCase())return"capitalized"}if(Z.type==="punctuator"&&uV1.test(Z.value))return"bracket";if(Z.type==="invalid"&&(Z.value==="@"||Z.value==="#"))return"punctuator";return Z.type};pz=function*(Z){let Q;while(Q=yz.default.exec(Z)){let Y=yz.matchToToken(Q);yield{type:X(Y,Q.index,Z),value:Y.value}}}}function rz(J){if(J==="")return"";let X=iz(!0),Z="";for(let{type:Q,value:Y}of pz(J))if(Q in X)Z+=Y.split(yV1).map((H)=>X[Q](H)).join(`
29
+ `);else Z+=Y;return Z}var mz=!1,cz=/\r\n|[\n\r\u2028\u2029]/;function mV1(J,X,Z){let Q=Object.assign({column:0,line:-1},J.start),Y=Object.assign({},Q,J.end),{linesAbove:H=2,linesBelow:G=3}=Z||{},z=Q.line,W=Q.column,V=Y.line,U=Y.column,$=Math.max(z-(H+1),0),j=Math.min(X.length,V+G);if(z===-1)$=0;if(V===-1)j=X.length;let C=V-z,A={};if(C)for(let S=0;S<=C;S++){let w=S+z;if(!W)A[w]=!0;else if(S===0){let P=X[w-1].length;A[w]=[W,P-W+1]}else if(S===C)A[w]=[0,U];else{let P=X[w-S].length;A[w]=[0,P]}}else if(W===U)if(W)A[z]=[W,0];else A[z]=!0;else A[z]=[W,U-W];return{start:$,end:j,markerLines:A}}function dz(J,X,Z={}){let Q=Z.forceColor||gV1()&&Z.highlightCode,Y=iz(Q),H=J.split(cz),{start:G,end:z,markerLines:W}=mV1(X,H,Z),V=X.start&&typeof X.start.column==="number",U=String(z).length,j=(Q?rz(J):J).split(cz,z).slice(G,z).map((C,A)=>{let S=G+1+A,P=` ${` ${S}`.slice(-U)} |`,b=W[S],t=!W[S+1];if(b){let m="";if(Array.isArray(b)){let d=C.slice(0,Math.max(b[0]-1,0)).replace(/[^\t]/g," "),U1=b[1]||1;if(m=[`
30
+ `,Y.gutter(P.replace(/\d/g," "))," ",d,Y.marker("^").repeat(U1)].join(""),t&&Z.message)m+=" "+Y.message(Z.message)}return[Y.marker(">"),Y.gutter(P),C.length>0?` ${C}`:"",m].join("")}else return` ${Y.gutter(P)}${C.length>0?` ${C}`:""}`}).join(`
31
+ `);if(Z.message&&!V)j=`${" ".repeat(U+1)}${Z.message}
32
+ ${j}`;if(Q)return Y.reset(j);else return j}function cV1(J,X,Z,Q={}){if(!mz){mz=!0;let H="Passing lineNumber and colNumber is deprecated to @babel/code-frame. Please use `codeFrameColumns`.";if(process.emitWarning)process.emitWarning(H,"DeprecationWarning");else{let G=Error(H);G.name="DeprecationWarning",console.warn(Error(H))}}return Z=Math.max(Z,0),dz(J,{start:{column:Z,line:X}},Q)}az.codeFrameColumns=dz;az.default=cV1;az.highlight=rz});var nz=I((sz)=>{Object.defineProperty(sz,"__esModule",{value:!0});sz.hooks=void 0;var ET1=sz.hooks=[function(J,X){if(J.key==="test"&&(X.isWhile()||X.isSwitchCase())||J.key==="declaration"&&X.isExportDeclaration()||J.key==="body"&&X.isLabeledStatement()||J.listKey==="declarations"&&X.isVariableDeclaration()&&X.node.declarations.length===1||J.key==="expression"&&X.isExpressionStatement())return X.remove(),!0},function(J,X){if(X.isSequenceExpression()&&X.node.expressions.length===1)return X.replaceWith(X.node.expressions[0]),!0},function(J,X){if(X.isBinary()){if(J.key==="left")X.replaceWith(X.node.right);else X.replaceWith(X.node.left);return!0}},function(J,X){if(X.isIfStatement()&&J.key==="consequent"||J.key==="body"&&(X.isLoop()||X.isArrowFunctionExpression()))return J.replaceWith({type:"BlockStatement",body:[]}),!0}]});var V2=I((QW)=>{Object.defineProperty(QW,"__esModule",{value:!0});QW._assertUnremoved=ZW;QW._callRemovalHooks=JW;QW._markRemoved=a7;QW._remove=XW;QW._removeFromScope=ez;QW.remove=eV1;var rV1=nz(),dV1=NJ(),aV1=s7(),oz=d0(),sV1=H1(),tV1=K2(),nV1=A0(),{getBindingIdentifiers:oV1}=sV1;function eV1(){var J;if(ZW.call(this),nV1.resync.call(this),JW.call(this)){a7.call(this);return}if(!((J=this.opts)!=null&&J.noScope))ez.call(this);this.shareCommentsWithSiblings(),XW.call(this),a7.call(this)}function ez(){let J=oV1(this.node,!1,!1,!0);Object.keys(J).forEach((X)=>this.scope.removeBinding(X))}function JW(){if(this.parentPath){for(let J of rV1.hooks)if(J(this,this.parentPath))return!0}}function XW(){if(Array.isArray(this.container))this.container.splice(this.key,1),tV1.updateSiblingKeys.call(this,this.key,-1);else aV1._replaceWith.call(this,null)}function a7(){if(this._traverseFlags|=oz.SHOULD_SKIP|oz.REMOVED,this.parent){var J;(J=(0,dV1.getCachedPaths)(this))==null||J.delete(this.node)}this.node=null}function ZW(){if(this.removed)throw this.buildCodeFrameError("NodePath has been removed so is read-only.")}});var WW=I((GW)=>{Object.defineProperty(GW,"__esModule",{value:!0});GW.default=void 0;var YW=H1(),GK1=YW,{react:zK1}=YW,{cloneNode:WK1,jsxExpressionContainer:VK1,variableDeclaration:KK1,variableDeclarator:UK1}=GK1,BK1={ReferencedIdentifier(J,X){if(J.isJSXIdentifier()&&zK1.isCompatTag(J.node.name)&&!J.parentPath.isJSXMemberExpression())return;if(J.node.name==="this"){let Q=J.scope;do if(Q.path.isFunction()&&!Q.path.isArrowFunctionExpression())break;while(Q=Q.parent);if(Q)X.breakOnScopePaths.push(Q.path)}let Z=J.scope.getBinding(J.node.name);if(!Z)return;for(let Q of Z.constantViolations)if(Q.scope!==Z.path.scope){X.mutableBinding=!0,J.stop();return}if(Z!==X.scope.getBinding(J.node.name))return;X.bindings[J.node.name]=Z}};class HW{constructor(J,X){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=X,this.path=J,this.attachAfter=!1}isCompatibleScope(J){for(let X of Object.keys(this.bindings)){let Z=this.bindings[X];if(!J.bindingIdentifierEquals(X,Z.identifier))return!1}return!0}getCompatibleScopes(){let J=this.path.scope;do{if(this.isCompatibleScope(J))this.scopes.push(J);else break;if(this.breakOnScopePaths.includes(J.path))break}while(J=J.parent)}getAttachmentPath(){let J=this._getAttachmentPath();if(!J)return;let X=J.scope;if(X.path===J)X=J.scope.parent;if(X.path.isProgram()||X.path.isFunction())for(let Z of Object.keys(this.bindings)){if(!X.hasOwnBinding(Z))continue;let Q=this.bindings[Z];if(Q.kind==="param"||Q.path.parentKey==="params")continue;if(this.getAttachmentParentForPath(Q.path).key>=J.key){this.attachAfter=!0,J=Q.path;for(let H of Q.constantViolations)if(this.getAttachmentParentForPath(H).key>J.key)J=H}}return J}_getAttachmentPath(){let X=this.scopes.pop();if(!X)return;if(X.path.isFunction())if(this.hasOwnParamBindings(X)){if(this.scope===X)return;let Z=X.path.get("body").get("body");for(let Q=0;Q<Z.length;Q++){if(Z[Q].node._blockHoist)continue;return Z[Q]}}else return this.getNextScopeAttachmentParent();else if(X.path.isProgram())return this.getNextScopeAttachmentParent()}getNextScopeAttachmentParent(){let J=this.scopes.pop();if(J)return this.getAttachmentParentForPath(J.path)}getAttachmentParentForPath(J){do if(!J.parentPath||Array.isArray(J.container)&&J.isStatement())return J;while(J=J.parentPath)}hasOwnParamBindings(J){for(let X of Object.keys(this.bindings)){if(!J.hasOwnBinding(X))continue;let Z=this.bindings[X];if(Z.kind==="param"&&Z.constant)return!0}return!1}run(){if(this.path.traverse(BK1,this),this.mutableBinding)return;this.getCompatibleScopes();let J=this.getAttachmentPath();if(!J)return;if(J.getFunctionParent()===this.path.getFunctionParent())return;let X=J.scope.generateUidIdentifier("ref"),Z=UK1(X,this.path.node),Q=this.attachAfter?"insertAfter":"insertBefore",[Y]=J[Q]([J.isVariableDeclarator()?Z:KK1("var",[Z])]),H=this.path.parentPath;if(H.isJSXElement()&&this.path.container===H.node.children)X=VK1(X);return this.path.replaceWith(WK1(X)),Y.isVariableDeclarator()?Y.get("init"):Y.get("declarations.0.init")}}GW.default=HW});var K2=I((qW)=>{Object.defineProperty(qW,"__esModule",{value:!0});qW._containerInsert=J8;qW._containerInsertAfter=UW;qW._containerInsertBefore=X8;qW._verifyNodeList=t9;qW.insertAfter=LK1;qW.insertBefore=PK1;qW.pushContainer=bK1;qW.unshiftContainer=kK1;qW.updateSiblingKeys=$W;var RK1=NJ(),e7=d0(),t7=A0(),U2=V2(),$K1=H1(),qK1=WW(),{arrowFunctionExpression:FK1,assertExpression:jK1,assignmentExpression:MK1,blockStatement:VW,callExpression:OK1,cloneNode:n7,expressionStatement:o7,isAssignmentExpression:AK1,isCallExpression:CK1,isExportNamedDeclaration:KW,isExpression:DK1,isIdentifier:IK1,isSequenceExpression:NK1,isSuper:wK1,thisExpression:SK1}=$K1;function PK1(J){U2._assertUnremoved.call(this);let X=t9.call(this,J),{parentPath:Z,parent:Q}=this;if(Z.isExpressionStatement()||Z.isLabeledStatement()||KW(Q)||Z.isExportDefaultDeclaration()&&this.isDeclaration())return Z.insertBefore(X);else if(this.isNodeType("Expression")&&!this.isJSXElement()||Z.isForStatement()&&this.key==="init"){if(this.node)X.push(this.node);return this.replaceExpressionWithStatements(X)}else if(Array.isArray(this.container))return X8.call(this,X);else if(this.isStatementOrBlock()){let Y=this.node,H=Y&&(!this.isExpressionStatement()||Y.expression!=null),[G]=this.replaceWith(VW(H?[Y]:[]));return G.unshiftContainer("body",X)}else throw Error("We don't know what to do with this node type. We were previously a Statement but we can't fit in here?")}function J8(J,X){$W.call(this,J,X.length);let Z=[];this.container.splice(J,0,...X);for(let H=0;H<X.length;H++){var Q;let G=J+H,z=this.getSibling(G);if(Z.push(z),(Q=this.context)!=null&&Q.queue)t7.pushContext.call(z,this.context)}let Y=t7._getQueueContexts.call(this);for(let H of Z){t7.setScope.call(H),H.debug("Inserted.");for(let G of Y)G.maybeQueue(H,!0)}return Z}function X8(J){return J8.call(this,this.key,J)}function UW(J){return J8.call(this,this.key+1,J)}var BW=(J)=>J[J.length-1];function RW(J){return NK1(J.parent)&&(BW(J.parent.expressions)!==J.node||RW(J.parentPath))}function TK1(J,X){if(!AK1(J)||!IK1(J.left))return!1;let Z=X.getBlockParent();return Z.hasOwnBinding(J.left.name)&&Z.getOwnBinding(J.left.name).constantViolations.length<=1}function LK1(J){if(U2._assertUnremoved.call(this),this.isSequenceExpression())return BW(this.get("expressions")).insertAfter(J);let X=t9.call(this,J),{parentPath:Z,parent:Q}=this;if(Z.isExpressionStatement()||Z.isLabeledStatement()||KW(Q)||Z.isExportDefaultDeclaration()&&this.isDeclaration())return Z.insertAfter(X.map((Y)=>{return DK1(Y)?o7(Y):Y}));else if(this.isNodeType("Expression")&&!this.isJSXElement()&&!Z.isJSXElement()||Z.isForStatement()&&this.key==="init"){let Y=this;if(Y.node){let H=Y.node,{scope:G}=this;if(G.path.isPattern())return jK1(H),Y.replaceWith(OK1(FK1([],H),[])),Y.get("callee.body").insertAfter(X),[Y];if(RW(Y))X.unshift(H);else if(CK1(H)&&wK1(H.callee))X.unshift(H),X.push(SK1());else if(TK1(H,G))X.unshift(H),X.push(n7(H.left));else if(G.isPure(H,!0))X.push(H);else{if(Z.isMethod({computed:!0,key:H}))G=G.parent;let z=G.generateDeclaredUidIdentifier();X.unshift(o7(MK1("=",n7(z),H))),X.push(o7(n7(z)))}}return this.replaceExpressionWithStatements(X)}else if(Array.isArray(this.container))return UW.call(this,X);else if(this.isStatementOrBlock()){let Y=this.node,H=Y&&(!this.isExpressionStatement()||Y.expression!=null),[G]=this.replaceWith(VW(H?[Y]:[]));return G.pushContainer("body",X)}else throw Error("We don't know what to do with this node type. We were previously a Statement but we can't fit in here?")}function $W(J,X){if(!this.parent)return;let Z=(0,RK1.getCachedPaths)(this);if(!Z)return;for(let[,Q]of Z)if(typeof Q.key==="number"&&Q.container===this.container&&Q.key>=J)Q.key+=X}function t9(J){if(!J)return[];if(!Array.isArray(J))J=[J];for(let X=0;X<J.length;X++){let Z=J[X],Q;if(!Z)Q="has falsy node";else if(typeof Z!=="object")Q="contains a non-object node";else if(!Z.type)Q="without a type";else if(Z instanceof e7.default)Q="has a NodePath when it expected a raw object";if(Q){let Y=Array.isArray(Z)?"array":typeof Z;throw Error(`Node list ${Q} with the index of ${X} and type of ${Y}`)}}return J}function kK1(J,X){U2._assertUnremoved.call(this);let Z=t9.call(this,X),Q=this.node[J],Y=e7.default.get({parentPath:this,parent:this.node,container:Q,listKey:J,key:0}).setContext(this.context);return X8.call(Y,Z)}function bK1(J,X){U2._assertUnremoved.call(this);let Z=t9.call(this,X),Q=this.node[J];return e7.default.get({parentPath:this,parent:this.node,container:Q,listKey:J,key:Q.length}).setContext(this.context).replaceWithMultiple(Z)}qW.hoist=function(X=this.scope){return new qK1.default(this,X).run()}});var s7=I((NW)=>{Object.defineProperty(NW,"__esModule",{value:!0});NW._replaceWith=IW;NW.replaceExpressionWithStatements=$U1;NW.replaceInline=qU1;NW.replaceWith=RU1;NW.replaceWithMultiple=UU1;NW.replaceWithSourceString=BU1;var mK1=d7(),Q8=c9(),cK1=d0(),AW=NJ(),Y8=K2(),lK1=AX(),iK1=H1(),Q9=A0(),{FUNCTION_TYPES:FW,arrowFunctionExpression:pK1,assignmentExpression:CW,awaitExpression:rK1,blockStatement:dK1,buildUndefinedNode:Z8,callExpression:aK1,cloneNode:H8,conditionalExpression:sK1,expressionStatement:tK1,getBindingIdentifiers:nK1,identifier:oK1,inheritLeadingComments:eK1,inheritTrailingComments:JU1,inheritsComments:XU1,isBlockStatement:ZU1,isEmptyStatement:jW,isExpression:DW,isExpressionStatement:QU1,isIfStatement:YU1,isProgram:HU1,isStatement:GU1,isVariableDeclaration:zU1,removeComments:WU1,returnStatement:MW,sequenceExpression:VU1,validate:OW,yieldExpression:KU1}=iK1;function UU1(J){var X;Q9.resync.call(this);let Z=Y8._verifyNodeList.call(this,J);eK1(Z[0],this.node),JU1(Z[Z.length-1],this.node),(X=(0,AW.getCachedPaths)(this))==null||X.delete(this.node),this.node=this.container[this.key]=null;let Q=this.insertAfter(J);if(this.node)this.requeue();else this.remove();return Q}function BU1(J){Q9.resync.call(this);let X;try{J=`(${J})`,X=(0,lK1.parse)(J)}catch(Q){let Y=Q.loc;if(Y)Q.message+=` - make sure this is an expression.
33
+ `+(0,mK1.codeFrameColumns)(J,{start:{line:Y.line,column:Y.column+1}}),Q.code="BABEL_REPLACE_SOURCE_ERROR";throw Q}let Z=X.program.body[0].expression;return Q8.default.removeProperties(Z),this.replaceWith(Z)}function RU1(J){if(Q9.resync.call(this),this.removed)throw Error("You can't replace this node, we've already removed it");let X=J instanceof cK1.default?J.node:J;if(!X)throw Error("You passed `path.replaceWith()` a falsy node, use `path.remove()` instead");if(this.node===X)return[this];if(this.isProgram()&&!HU1(X))throw Error("You can only replace a Program root node with another Program node");if(Array.isArray(X))throw Error("Don't use `path.replaceWith()` with an array of nodes, use `path.replaceWithMultiple()`");if(typeof X==="string")throw Error("Don't use `path.replaceWith()` with a source string, use `path.replaceWithSourceString()`");let Z="";if(this.isNodeType("Statement")&&DW(X)){if(!this.canHaveVariableDeclarationOrExpression()&&!this.canSwapBetweenExpressionAndStatement(X)&&!this.parentPath.isExportDefaultDeclaration())X=tK1(X),Z="expression"}if(this.isNodeType("Expression")&&GU1(X)){if(!this.canHaveVariableDeclarationOrExpression()&&!this.canSwapBetweenExpressionAndStatement(X))return this.replaceExpressionWithStatements([X])}let Q=this.node;if(Q)XU1(X,Q),WU1(Q);return IW.call(this,X),this.type=X.type,Q9.setScope.call(this),this.requeue(),[Z?this.get(Z):this]}function IW(J){var X;if(!this.container)throw ReferenceError("Container is falsy");if(this.inList)OW(this.parent,this.key,[J]);else OW(this.parent,this.key,J);this.debug(`Replace with ${J==null?void 0:J.type}`),(X=(0,AW.getCachedPaths)(this))==null||X.set(J,this).delete(this.node),this.node=this.container[this.key]=J}function $U1(J){Q9.resync.call(this);let X=[],Z=B2(J,X);if(Z){for(let j of X)this.scope.push({id:j});return this.replaceWith(Z)[0].get("expressions")}let Q=this.getFunctionParent(),Y=Q==null?void 0:Q.node.async,H=Q==null?void 0:Q.node.generator,G=pK1([],dK1(J));this.replaceWith(aK1(G,[]));let z=this.get("callee");z.get("body").scope.hoistVariables((j)=>this.scope.push({id:j}));let W=z.getCompletionRecords();for(let j of W){if(!j.isExpressionStatement())continue;let C=j.findParent((A)=>A.isLoop());if(C){let A=C.getData("expressionReplacementReturnUid");if(!A)A=z.scope.generateDeclaredUidIdentifier("ret"),z.get("body").pushContainer("body",MW(H8(A))),C.setData("expressionReplacementReturnUid",A);else A=oK1(A.name);j.get("expression").replaceWith(CW("=",H8(A),j.node.expression))}else j.replaceWith(MW(j.node.expression))}z.arrowFunctionToExpression();let V=z,U=Y&&Q8.default.hasType(this.get("callee.body").node,"AwaitExpression",FW),$=H&&Q8.default.hasType(this.get("callee.body").node,"YieldExpression",FW);if(U){if(V.set("async",!0),!$)this.replaceWith(rK1(this.node))}if($)V.set("generator",!0),this.replaceWith(KU1(this.node,!0));return V.get("body.body")}function B2(J,X){let Z=[],Q=!0;for(let Y of J){if(!jW(Y))Q=!1;if(DW(Y))Z.push(Y);else if(QU1(Y))Z.push(Y.expression);else if(zU1(Y)){if(Y.kind!=="var")return;for(let H of Y.declarations){let G=nK1(H);for(let z of Object.keys(G))X.push(H8(G[z]));if(H.init)Z.push(CW("=",H.id,H.init))}Q=!0}else if(YU1(Y)){let H=Y.consequent?B2([Y.consequent],X):Z8(),G=Y.alternate?B2([Y.alternate],X):Z8();if(!H||!G)return;Z.push(sK1(Y.test,H,G))}else if(ZU1(Y)){let H=B2(Y.body,X);if(!H)return;Z.push(H)}else if(jW(Y)){if(J.indexOf(Y)===0)Q=!0}else return}if(Q)Z.push(Z8());if(Z.length===1)return Z[0];else return VU1(Z)}function qU1(J){if(Q9.resync.call(this),Array.isArray(J))if(Array.isArray(this.container)){J=Y8._verifyNodeList.call(this,J);let X=Y8._containerInsertAfter.call(this,J);return this.remove(),X}else return this.replaceWithMultiple(J);else return this.replaceWith(J)}});var LW=I((TW)=>{Object.defineProperty(TW,"__esModule",{value:!0});TW.evaluate=LU1;TW.evaluateTruthy=PU1;var DU1=["Number","String","Math"],IU1=["isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent",null,null],NU1=["random"];function wW(J){return DU1.includes(J)}function wU1(J){return IU1.includes(J)}function SU1(J){return NU1.includes(J)}function PU1(){let J=this.evaluate();if(J.confident)return!!J.value}function C0(J,X){if(!X.confident)return;X.deoptPath=J,X.confident=!1}var SW=new Map([["undefined",void 0],["Infinity",1/0],["NaN",NaN]]);function n1(J,X){let{node:Z}=J,{seen:Q}=X;if(Q.has(Z)){let Y=Q.get(Z);if(Y.resolved)return Y.value;else{C0(J,X);return}}else{let Y={resolved:!1};Q.set(Z,Y);let H=TU1(J,X);if(X.confident)Y.resolved=!0,Y.value=H;return H}}function TU1(J,X){if(!X.confident)return;if(J.isSequenceExpression()){let Q=J.get("expressions");return n1(Q[Q.length-1],X)}if(J.isStringLiteral()||J.isNumericLiteral()||J.isBooleanLiteral())return J.node.value;if(J.isNullLiteral())return null;if(J.isTemplateLiteral())return PW(J,J.node.quasis,X);if(J.isTaggedTemplateExpression()&&J.get("tag").isMemberExpression()){let Q=J.get("tag.object"),{node:{name:Y}}=Q,H=J.get("tag.property");if(Q.isIdentifier()&&Y==="String"&&!J.scope.getBinding(Y)&&H.isIdentifier()&&H.node.name==="raw")return PW(J,J.node.quasi.quasis,X,!0)}if(J.isConditionalExpression()){let Q=n1(J.get("test"),X);if(!X.confident)return;if(Q)return n1(J.get("consequent"),X);else return n1(J.get("alternate"),X)}if(J.isExpressionWrapper())return n1(J.get("expression"),X);if(J.isMemberExpression()&&!J.parentPath.isCallExpression({callee:J.node})){let Q=J.get("property"),Y=J.get("object");if(Y.isLiteral()){let H=Y.node.value,G=typeof H,z=null;if(J.node.computed){if(z=n1(Q,X),!X.confident)return}else if(Q.isIdentifier())z=Q.node.name;if((G==="number"||G==="string")&&z!=null&&(typeof z==="number"||typeof z==="string"))return H[z]}}if(J.isReferencedIdentifier()){let Q=J.scope.getBinding(J.node.name);if(Q){if(Q.constantViolations.length>0||J.node.start<Q.path.node.end){C0(Q.path,X);return}let z=Q.path.scope;if(Q.kind==="var"&&z!==Q.scope){let W=!z.path.parentPath.isBlockStatement();for(let V=z.parent;V;V=V.parent){var Z;if(V===J.scope){if(W){C0(Q.path,X);return}break}if((Z=V.path.parentPath)!=null&&Z.isBlockStatement())W=!0}}if(Q.hasValue)return Q.value}let Y=J.node.name;if(SW.has(Y)){if(!Q)return SW.get(Y);C0(Q.path,X);return}let H=J.resolve();if(H===J){C0(J,X);return}let G=n1(H,X);if(typeof G==="object"&&G!==null&&Q.references>1){C0(H,X);return}return G}if(J.isUnaryExpression({prefix:!0})){if(J.node.operator==="void")return;let Q=J.get("argument");if(J.node.operator==="typeof"&&(Q.isFunction()||Q.isClass()))return"function";let Y=n1(Q,X);if(!X.confident)return;switch(J.node.operator){case"!":return!Y;case"+":return+Y;case"-":return-Y;case"~":return~Y;case"typeof":return typeof Y}}if(J.isArrayExpression()){let Q=[],Y=J.get("elements");for(let H of Y){let G=H.evaluate();if(G.confident)Q.push(G.value);else{C0(G.deopt,X);return}}return Q}if(J.isObjectExpression()){let Q={},Y=J.get("properties");for(let H of Y){if(H.isObjectMethod()||H.isSpreadElement()){C0(H,X);return}let G=H.get("key"),z;if(H.node.computed){if(z=G.evaluate(),!z.confident){C0(z.deopt,X);return}z=z.value}else if(G.isIdentifier())z=G.node.name;else z=G.node.value;let V=H.get("value").evaluate();if(!V.confident){C0(V.deopt,X);return}V=V.value,Q[z]=V}return Q}if(J.isLogicalExpression()){let Q=X.confident,Y=n1(J.get("left"),X),H=X.confident;X.confident=Q;let G=n1(J.get("right"),X),z=X.confident;switch(J.node.operator){case"||":if(X.confident=H&&(!!Y||z),!X.confident)return;return Y||G;case"&&":if(X.confident=H&&(!Y||z),!X.confident)return;return Y&&G;case"??":if(X.confident=H&&(Y!=null||z),!X.confident)return;return Y!=null?Y:G}}if(J.isBinaryExpression()){let Q=n1(J.get("left"),X);if(!X.confident)return;let Y=n1(J.get("right"),X);if(!X.confident)return;switch(J.node.operator){case"-":return Q-Y;case"+":return Q+Y;case"/":return Q/Y;case"*":return Q*Y;case"%":return Q%Y;case"**":return Math.pow(Q,Y);case"<":return Q<Y;case">":return Q>Y;case"<=":return Q<=Y;case">=":return Q>=Y;case"==":return Q==Y;case"!=":return Q!=Y;case"===":return Q===Y;case"!==":return Q!==Y;case"|":return Q|Y;case"&":return Q&Y;case"^":return Q^Y;case"<<":return Q<<Y;case">>":return Q>>Y;case">>>":return Q>>>Y}}if(J.isCallExpression()){let Q=J.get("callee"),Y,H;if(Q.isIdentifier()&&!J.scope.getBinding(Q.node.name)&&(wW(Q.node.name)||wU1(Q.node.name)))H=global[Q.node.name];if(Q.isMemberExpression()){let G=Q.get("object"),z=Q.get("property");if(G.isIdentifier()&&z.isIdentifier()&&wW(G.node.name)&&!SU1(z.node.name)){Y=global[G.node.name];let W=z.node.name;if(hasOwnProperty.call(Y,W))H=Y[W]}if(G.isLiteral()&&z.isIdentifier()){let W=typeof G.node.value;if(W==="string"||W==="number")Y=G.node.value,H=Y[z.node.name]}}if(H){let G=J.get("arguments").map((z)=>n1(z,X));if(!X.confident)return;return H.apply(Y,G)}}C0(J,X)}function PW(J,X,Z,Q=!1){let Y="",H=0,G=J.isTemplateLiteral()?J.get("expressions"):J.get("quasi.expressions");for(let z of X){if(!Z.confident)break;Y+=Q?z.value.raw:z.value.cooked;let W=G[H++];if(W)Y+=String(n1(W,Z))}if(!Z.confident)return;return Y}function LU1(){let J={confident:!0,deoptPath:null,seen:new Map},X=n1(this,J);if(!J.confident)X=void 0;return{confident:J.confident,deopt:J.deoptPath,value:X}}});var vW=I((kW)=>{Object.defineProperty(kW,"__esModule",{value:!0});kW.statements=kW.statement=kW.smart=kW.program=kW.expression=void 0;var vU1=H1(),{assertExpressionStatement:EU1}=vU1;function G8(J){return{code:(X)=>`/* @babel/template */;
34
+ ${X}`,validate:()=>{},unwrap:(X)=>{return J(X.program.body.slice(1))}}}var mT1=kW.smart=G8((J)=>{if(J.length>1)return J;else return J[0]}),cT1=kW.statements=G8((J)=>J),lT1=kW.statement=G8((J)=>{if(J.length===0)throw Error("Found nothing to return.");if(J.length>1)throw Error("Found multiple statements but wanted one");return J[0]}),_U1=kW.expression={code:(J)=>`(
35
+ ${J}
36
+ )`,validate:(J)=>{if(J.program.body.length>1)throw Error("Found multiple statements but wanted one");if(_U1.unwrap(J).start===0)throw Error("Parse result included parens.")},unwrap:({program:J})=>{let[X]=J.body;return EU1(X),X.expression}},iT1=kW.program={code:(J)=>J,validate:()=>{},unwrap:(J)=>J.program}});var R2=I((EW)=>{Object.defineProperty(EW,"__esModule",{value:!0});EW.merge=mU1;EW.normalizeReplacements=lU1;EW.validate=cU1;var yU1=["placeholderWhitelist","placeholderPattern","preserveComments","syntacticPlaceholders"];function uU1(J,X){if(J==null)return{};var Z={};for(var Q in J)if({}.hasOwnProperty.call(J,Q)){if(X.indexOf(Q)!==-1)continue;Z[Q]=J[Q]}return Z}function mU1(J,X){let{placeholderWhitelist:Z=J.placeholderWhitelist,placeholderPattern:Q=J.placeholderPattern,preserveComments:Y=J.preserveComments,syntacticPlaceholders:H=J.syntacticPlaceholders}=X;return{parser:Object.assign({},J.parser,X.parser),placeholderWhitelist:Z,placeholderPattern:Q,preserveComments:Y,syntacticPlaceholders:H}}function cU1(J){if(J!=null&&typeof J!=="object")throw Error("Unknown template options.");let X=J||{},{placeholderWhitelist:Z,placeholderPattern:Q,preserveComments:Y,syntacticPlaceholders:H}=X,G=uU1(X,yU1);if(Z!=null&&!(Z instanceof Set))throw Error("'.placeholderWhitelist' must be a Set, null, or undefined");if(Q!=null&&!(Q instanceof RegExp)&&Q!==!1)throw Error("'.placeholderPattern' must be a RegExp, false, null, or undefined");if(Y!=null&&typeof Y!=="boolean")throw Error("'.preserveComments' must be a boolean, null, or undefined");if(H!=null&&typeof H!=="boolean")throw Error("'.syntacticPlaceholders' must be a boolean, null, or undefined");if(H===!0&&(Z!=null||Q!=null))throw Error("'.placeholderWhitelist' and '.placeholderPattern' aren't compatible with '.syntacticPlaceholders: true'");return{parser:G,placeholderWhitelist:Z||void 0,placeholderPattern:Q==null?void 0:Q,preserveComments:Y==null?void 0:Y,syntacticPlaceholders:H==null?void 0:H}}function lU1(J){if(Array.isArray(J))return J.reduce((X,Z,Q)=>{return X["$"+Q]=Z,X},{});else if(typeof J==="object"||J==null)return J||void 0;throw Error("Template replacements must be an array, object, null, or undefined")}});var z8=I((gW)=>{Object.defineProperty(gW,"__esModule",{value:!0});gW.default=GB1;var dU1=H1(),aU1=AX(),sU1=d7(),{isCallExpression:tU1,isExpressionStatement:nU1,isFunction:oU1,isIdentifier:eU1,isJSXIdentifier:JB1,isNewExpression:XB1,isPlaceholder:$2,isStatement:ZB1,isStringLiteral:_W,removePropertiesDeep:QB1,traverse:YB1}=dU1,HB1=/^[_$A-Z0-9]+$/;function GB1(J,X,Z){let{placeholderWhitelist:Q,placeholderPattern:Y,preserveComments:H,syntacticPlaceholders:G}=Z,z=VB1(X,Z.parser,G);QB1(z,{preserveComments:H}),J.validate(z);let W={syntactic:{placeholders:[],placeholderNames:new Set},legacy:{placeholders:[],placeholderNames:new Set},placeholderWhitelist:Q,placeholderPattern:Y,syntacticPlaceholders:G};return YB1(z,zB1,W),Object.assign({ast:z},W.syntactic.placeholders.length?W.syntactic:W.legacy)}function zB1(J,X,Z){var Q;let Y,H=Z.syntactic.placeholders.length>0;if($2(J)){if(Z.syntacticPlaceholders===!1)throw Error("%%foo%%-style placeholders can't be used when '.syntacticPlaceholders' is false.");Y=J.name.name,H=!0}else if(H||Z.syntacticPlaceholders)return;else if(eU1(J)||JB1(J))Y=J.name;else if(_W(J))Y=J.value;else return;if(H&&(Z.placeholderPattern!=null||Z.placeholderWhitelist!=null))throw Error("'.placeholderWhitelist' and '.placeholderPattern' aren't compatible with '.syntacticPlaceholders: true'");if(!H&&(Z.placeholderPattern===!1||!(Z.placeholderPattern||HB1).test(Y))&&!((Q=Z.placeholderWhitelist)!=null&&Q.has(Y)))return;X=X.slice();let{node:G,key:z}=X[X.length-1],W;if(_W(J)||$2(J,{expectedNode:"StringLiteral"}))W="string";else if(XB1(G)&&z==="arguments"||tU1(G)&&z==="arguments"||oU1(G)&&z==="params")W="param";else if(nU1(G)&&!$2(J))W="statement",X=X.slice(0,-1);else if(ZB1(J)&&$2(J))W="statement";else W="other";let{placeholders:V,placeholderNames:U}=!H?Z.legacy:Z.syntactic;V.push({name:Y,type:W,resolve:($)=>WB1($,X),isDuplicate:U.has(Y)}),U.add(Y)}function WB1(J,X){let Z=J;for(let H=0;H<X.length-1;H++){let{key:G,index:z}=X[H];if(z===void 0)Z=Z[G];else Z=Z[G][z]}let{key:Q,index:Y}=X[X.length-1];return{parent:Z,key:Q,index:Y}}function VB1(J,X,Z){let Q=(X.plugins||[]).slice();if(Z!==!1)Q.push("placeholders");X=Object.assign({allowAwaitOutsideFunction:!0,allowReturnOutsideFunction:!0,allowNewTargetOutsideFunction:!0,allowSuperOutsideMethod:!0,allowYieldOutsideFunction:!0,sourceType:"module"},X,{plugins:Q});try{return(0,aU1.parse)(J,X)}catch(Y){let H=Y.loc;if(H)Y.message+=`
37
+ `+(0,sU1.codeFrameColumns)(J,{start:H}),Y.code="BABEL_TEMPLATE_PARSE_ERROR";throw Y}}});var K8=I((xW)=>{Object.defineProperty(xW,"__esModule",{value:!0});xW.default=FB1;var UB1=H1(),{blockStatement:BB1,cloneNode:V8,emptyStatement:RB1,expressionStatement:W8,identifier:q2,isStatement:fW,isStringLiteral:$B1,stringLiteral:qB1,validate:hW}=UB1;function FB1(J,X){let Z=V8(J.ast);if(X)J.placeholders.forEach((Q)=>{if(!hasOwnProperty.call(X,Q.name)){let Y=Q.name;throw Error(`Error: No substitution given for "${Y}". If this is not meant to be a
38
+ placeholder you may want to consider passing one of the following options to @babel/template:
39
+ - { placeholderPattern: false, placeholderWhitelist: new Set(['${Y}'])}
40
+ - { placeholderPattern: /^${Y}$/ }`)}}),Object.keys(X).forEach((Q)=>{if(!J.placeholderNames.has(Q))throw Error(`Unknown substitution "${Q}" given`)});return J.placeholders.slice().reverse().forEach((Q)=>{try{var Y;jB1(Q,Z,(Y=X&&X[Q.name])!=null?Y:null)}catch(H){throw H.message=`@babel/template placeholder "${Q.name}": ${H.message}`,H}}),Z}function jB1(J,X,Z){if(J.isDuplicate){if(Array.isArray(Z))Z=Z.map((z)=>V8(z));else if(typeof Z==="object")Z=V8(Z)}let{parent:Q,key:Y,index:H}=J.resolve(X);if(J.type==="string"){if(typeof Z==="string")Z=qB1(Z);if(!Z||!$B1(Z))throw Error("Expected string substitution")}else if(J.type==="statement"){if(H===void 0){if(!Z)Z=RB1();else if(Array.isArray(Z))Z=BB1(Z);else if(typeof Z==="string")Z=W8(q2(Z));else if(!fW(Z))Z=W8(Z)}else if(Z&&!Array.isArray(Z)){if(typeof Z==="string")Z=q2(Z);if(!fW(Z))Z=W8(Z)}}else if(J.type==="param"){if(typeof Z==="string")Z=q2(Z);if(H===void 0)throw Error("Assertion failure.")}else{if(typeof Z==="string")Z=q2(Z);if(Array.isArray(Z))throw Error("Cannot replace single expression with an array.")}function G(z,W,V){let U=z[W];if(z[W]=V,U.type==="Identifier"||U.type==="Placeholder"){if(U.typeAnnotation)V.typeAnnotation=U.typeAnnotation;if(U.optional)V.optional=U.optional;if(U.decorators)V.decorators=U.decorators}}if(H===void 0)hW(Q,Y,Z),G(Q,Y,Z);else{let z=Q[Y].slice();if(J.type==="statement"||J.type==="param")if(Z==null)z.splice(H,1);else if(Array.isArray(Z))z.splice(H,1,...Z);else G(z,H,Z);else G(z,H,Z);hW(Q,Y,z),Q[Y]=z}}});var uW=I((yW)=>{Object.defineProperty(yW,"__esModule",{value:!0});yW.default=DB1;var OB1=R2(),AB1=z8(),CB1=K8();function DB1(J,X,Z){X=J.code(X);let Q;return(Y)=>{let H=(0,OB1.normalizeReplacements)(Y);if(!Q)Q=(0,AB1.default)(J,X,Z);return J.unwrap((0,CB1.default)(Q,H))}}});var cW=I((mW)=>{Object.defineProperty(mW,"__esModule",{value:!0});mW.default=PB1;var NB1=R2(),wB1=z8(),SB1=K8();function PB1(J,X,Z){let{metadata:Q,names:Y}=TB1(J,X,Z);return(H)=>{let G={};return H.forEach((z,W)=>{G[Y[W]]=z}),(z)=>{let W=(0,NB1.normalizeReplacements)(z);if(W)Object.keys(W).forEach((V)=>{if(hasOwnProperty.call(G,V))throw Error("Unexpected replacement overlap.")});return J.unwrap((0,SB1.default)(Q,W?Object.assign(W,G):G))}}}function TB1(J,X,Z){let Q="BABEL_TPL$",Y=X.join("");do Q="$$"+Q;while(Y.includes(Q));let{names:H,code:G}=LB1(X,Q);return{metadata:(0,wB1.default)(J,J.code(G),{parser:Z.parser,placeholderWhitelist:new Set(H.concat(Z.placeholderWhitelist?Array.from(Z.placeholderWhitelist):[])),placeholderPattern:Z.placeholderPattern,preserveComments:Z.preserveComments,syntacticPlaceholders:Z.syntacticPlaceholders}),names:H}}function LB1(J,X){let Z=[],Q=J[0];for(let Y=1;Y<J.length;Y++){let H=`${X}${Y-1}`;Z.push(H),Q+=H+J[Y]}return{names:Z,code:Q}}});var sW=I((aW)=>{Object.defineProperty(aW,"__esModule",{value:!0});aW.default=dW;var v0=R2(),lW=uW(),iW=cW(),pW=(0,v0.validate)({placeholderPattern:!1});function dW(J,X){let Z=new WeakMap,Q=new WeakMap,Y=X||(0,v0.validate)(null);return Object.assign((H,...G)=>{if(typeof H==="string"){if(G.length>1)throw Error("Unexpected extra params.");return rW((0,lW.default)(J,H,(0,v0.merge)(Y,(0,v0.validate)(G[0]))))}else if(Array.isArray(H)){let z=Z.get(H);if(!z)z=(0,iW.default)(J,H,Y),Z.set(H,z);return rW(z(G))}else if(typeof H==="object"&&H){if(G.length>0)throw Error("Unexpected extra params.");return dW(J,(0,v0.merge)(Y,(0,v0.validate)(H)))}throw Error(`Unexpected template param ${typeof H}`)},{ast:(H,...G)=>{if(typeof H==="string"){if(G.length>1)throw Error("Unexpected extra params.");return(0,lW.default)(J,H,(0,v0.merge)((0,v0.merge)(Y,(0,v0.validate)(G[0])),pW))()}else if(Array.isArray(H)){let z=Q.get(H);if(!z)z=(0,iW.default)(J,H,(0,v0.merge)(Y,pW)),Q.set(H,z);return z(G)()}throw Error(`Unexpected template param ${typeof H}`)}})}function rW(J){let X="";try{throw Error()}catch(Z){if(Z.stack)X=Z.stack.split(`
41
+ `).slice(3).join(`
42
+ `)}return(Z)=>{try{return J(Z)}catch(Q){throw Q.stack+=`
43
+ =============
44
+ ${X}`,Q}}}});var oW=I((tW)=>{Object.defineProperty(tW,"__esModule",{value:!0});tW.statements=tW.statement=tW.smart=tW.program=tW.expression=tW.default=void 0;var n9=vW(),o9=sW(),U8=tW.smart=(0,o9.default)(n9.smart),vB1=tW.statement=(0,o9.default)(n9.statement),EB1=tW.statements=(0,o9.default)(n9.statements),_B1=tW.expression=(0,o9.default)(n9.expression),gB1=tW.program=(0,o9.default)(n9.program),oT1=tW.default=Object.assign(U8.bind(void 0),{smart:U8,statement:vB1,statements:EB1,expression:_B1,program:gB1,ast:U8.ast})});var z3=I((G3)=>{Object.defineProperty(G3,"__esModule",{value:!0});G3.arrowFunctionToExpression=FR1;G3.ensureBlock=RR1;G3.ensureFunctionName=TR1;G3.splitExportDeclaration=SR1;G3.toComputedKey=BR1;G3.unwrapFunctionEnvironment=$R1;var mB1=H1(),cB1=oW(),$8=mX(),lB1=A0(),{arrowFunctionExpression:q8,assignmentExpression:bJ,binaryExpression:B8,blockStatement:iB1,callExpression:Y9,conditionalExpression:pB1,expressionStatement:X3,identifier:C1,isIdentifier:rB1,jsxIdentifier:dB1,logicalExpression:aB1,LOGICAL_OPERATORS:sB1,memberExpression:D0,metaProperty:tB1,numericLiteral:nB1,objectExpression:oB1,restElement:eB1,returnStatement:JR1,sequenceExpression:XR1,spreadElement:ZR1,stringLiteral:Z3,super:R8,thisExpression:e9,toExpression:Q3,unaryExpression:QR1,toBindingIdentifierName:YR1,isFunction:HR1,isAssignmentPattern:GR1,isRestElement:zR1,getFunctionName:WR1,cloneNode:vJ,variableDeclaration:VR1,variableDeclarator:KR1,exportNamedDeclaration:eW,exportSpecifier:J3,inherits:UR1}=mB1;function BR1(){let J;if(this.isMemberExpression())J=this.node.property;else if(this.isProperty()||this.isMethod())J=this.node.key;else throw ReferenceError("todo");if(!this.node.computed){if(rB1(J))J=Z3(J.name)}return J}function RR1(){let J=this.get("body"),X=J.node;if(Array.isArray(J))throw Error("Can't convert array path to a block statement");if(!X)throw Error("Can't convert node without a body");if(J.isBlockStatement())return X;let Z=[],Q="body",Y,H;if(J.isStatement())H="body",Y=0,Z.push(J.node);else if(Q+=".body.0",this.isFunction())Y="argument",Z.push(JR1(J.node));else Y="expression",Z.push(X3(J.node));this.node.body=iB1(Z);let G=this.get(Q);return lB1.setup.call(J,G,H?G.node[H]:G.node,H,Y),this.node}G3.arrowFunctionToShadowed=function(){if(!this.isArrowFunctionExpression())return;this.arrowFunctionToExpression()};function $R1(){if(!this.isArrowFunctionExpression()&&!this.isFunctionExpression()&&!this.isFunctionDeclaration())throw this.buildCodeFrameError("Can only unwrap the environment of a function.");Y3(this)}function qR1(J,X){J.node.type=X}function FR1({allowInsertArrow:J=!0,allowInsertArrowWithRest:X=J,noNewArrows:Z=!((Q)=>(Q=arguments[0])==null?void 0:Q.specCompliant)()}={}){if(!this.isArrowFunctionExpression())throw this.buildCodeFrameError("Cannot convert non-arrow function to a function expression.");let Q=this;if(!Z){var Y;Q=(Y=Q.ensureFunctionName(!1))!=null?Y:Q}let{thisBinding:H,fnPath:G}=Y3(Q,Z,J,X);if(G.ensureBlock(),qR1(G,"FunctionExpression"),!Z){let z=H?null:G.scope.generateUidIdentifier("arrowCheckId");if(z)G.parentPath.scope.push({id:z,init:oB1([])});return G.get("body").unshiftContainer("body",X3(Y9(this.hub.addHelper("newArrowCheck"),[e9(),z?C1(z.name):C1(H)]))),G.replaceWith(Y9(D0(G.node,C1("bind")),[z?C1(z.name):e9()])),G.get("callee.object")}return G}var jR1=(0,$8.environmentVisitor)({CallExpression(J,{allSuperCalls:X}){if(!J.get("callee").isSuper())return;X.push(J)}});function Y3(J,X=!0,Z=!0,Q=!0){let Y,H=J.findParent((C)=>{if(C.isArrowFunctionExpression())return Y!=null||(Y=C),!1;return C.isFunction()||C.isProgram()||C.isClassProperty({static:!1})||C.isClassPrivateProperty({static:!1})}),G=H.isClassMethod({kind:"constructor"});if(H.isClassProperty()||H.isClassPrivateProperty())if(Y)H=Y;else if(Z)J.replaceWith(Y9(q8([],Q3(J.node)),[])),H=J.get("callee"),J=H.get("body");else throw J.buildCodeFrameError("Unable to transform arrow inside class property");let{thisPaths:z,argumentsPaths:W,newTargetPaths:V,superProps:U,superCalls:$}=wR1(J);if(G&&$.length>0){if(!Z)throw $[0].buildCodeFrameError("When using '@babel/plugin-transform-arrow-functions', it's not possible to compile `super()` in an arrow function without compiling classes.\nPlease add '@babel/plugin-transform-classes' to your Babel configuration.");if(!Q)throw $[0].buildCodeFrameError("When using '@babel/plugin-transform-parameters', it's not possible to compile `super()` in an arrow function with default or rest parameters without compiling classes.\nPlease add '@babel/plugin-transform-classes' to your Babel configuration.");let C=[];H.traverse(jR1,{allSuperCalls:C});let A=DR1(H);C.forEach((S)=>{let w=C1(A);w.loc=S.node.callee.loc,S.get("callee").replaceWith(w)})}if(W.length>0){let C=JX(H,"arguments",()=>{let A=()=>C1("arguments");if(H.scope.path.isProgram())return pB1(B8("===",QR1("typeof",A()),Z3("undefined")),H.scope.buildUndefinedNode(),A());else return A()});W.forEach((A)=>{let S=C1(C);S.loc=A.node.loc,A.replaceWith(S)})}if(V.length>0){let C=JX(H,"newtarget",()=>tB1(C1("new"),C1("target")));V.forEach((A)=>{let S=C1(C);S.loc=A.node.loc,A.replaceWith(S)})}if(U.length>0){if(!Z)throw U[0].buildCodeFrameError("When using '@babel/plugin-transform-arrow-functions', it's not possible to compile `super.prop` in an arrow function without compiling classes.\nPlease add '@babel/plugin-transform-classes' to your Babel configuration.");U.reduce((A,S)=>A.concat(OR1(S)),[]).forEach((A)=>{let S=A.node.computed?"":A.get("property").node.name,w=A.parentPath,P=w.isAssignmentExpression({left:A.node}),b=w.isCallExpression({callee:A.node}),t=w.isTaggedTemplateExpression({tag:A.node}),m=IR1(H,P,S),d=[];if(A.node.computed)d.push(A.get("property").node);if(P){let D1=w.node.right;d.push(D1)}let U1=Y9(C1(m),d);if(b)w.unshiftContainer("arguments",e9()),A.replaceWith(D0(U1,C1("call"))),z.push(w.get("arguments.0"));else if(P)w.replaceWith(U1);else if(t)A.replaceWith(Y9(D0(U1,C1("bind"),!1),[e9()])),z.push(A.get("arguments.0"));else A.replaceWith(U1)})}let j;if(z.length>0||!X){if(j=CR1(H,G),X||G&&H3(H)){if(z.forEach((C)=>{let A=C.isJSX()?dB1(j):C1(j);A.loc=C.node.loc,C.replaceWith(A)}),!X)j=null}}return{thisBinding:j,fnPath:J}}function MR1(J){return sB1.includes(J)}function OR1(J){if(J.parentPath.isAssignmentExpression()&&J.parentPath.node.operator!=="="){let Z=J.parentPath,Q=Z.node.operator.slice(0,-1),Y=Z.node.right,H=MR1(Q);if(J.node.computed){let G=J.scope.generateDeclaredUidIdentifier("tmp"),z=J.node.object,W=J.node.property;Z.get("left").replaceWith(D0(z,bJ("=",G,W),!0)),Z.get("right").replaceWith(X(H?"=":Q,D0(z,C1(G.name),!0),Y))}else{let G=J.node.object,z=J.node.property;Z.get("left").replaceWith(D0(G,z)),Z.get("right").replaceWith(X(H?"=":Q,D0(G,C1(z.name)),Y))}if(H)Z.replaceWith(aB1(Q,Z.node.left,Z.node.right));else Z.node.operator="=";return[Z.get("left"),Z.get("right").get("left")]}else if(J.parentPath.isUpdateExpression()){let Z=J.parentPath,Q=J.scope.generateDeclaredUidIdentifier("tmp"),Y=J.node.computed?J.scope.generateDeclaredUidIdentifier("prop"):null,H=[bJ("=",Q,D0(J.node.object,Y?bJ("=",Y,J.node.property):J.node.property,J.node.computed)),bJ("=",D0(J.node.object,Y?C1(Y.name):J.node.property,J.node.computed),B8(J.parentPath.node.operator[0],C1(Q.name),nB1(1)))];if(!J.parentPath.node.prefix)H.push(C1(Q.name));Z.replaceWith(XR1(H));let G=Z.get("expressions.0.right"),z=Z.get("expressions.1.left");return[G,z]}return[J];function X(Z,Q,Y){if(Z==="=")return bJ("=",Q,Y);else return B8(Z,Q,Y)}}function H3(J){return J.isClassMethod()&&!!J.parentPath.parentPath.node.superClass}var AR1=(0,$8.environmentVisitor)({CallExpression(J,{supers:X,thisBinding:Z}){if(!J.get("callee").isSuper())return;if(X.has(J.node))return;X.add(J.node),J.replaceWithMultiple([J.node,bJ("=",C1(Z),C1("this"))])}});function CR1(J,X){return JX(J,"this",(Z)=>{if(!X||!H3(J))return e9();J.traverse(AR1,{supers:new WeakSet,thisBinding:Z})})}function DR1(J){return JX(J,"supercall",()=>{let X=J.scope.generateUidIdentifier("args");return q8([eB1(X)],Y9(R8(),[ZR1(C1(X.name))]))})}function IR1(J,X,Z){return JX(J,`superprop_${X?"set":"get"}:${Z||""}`,()=>{let Y=[],H;if(Z)H=D0(R8(),C1(Z));else{let G=J.scope.generateUidIdentifier("prop");Y.unshift(G),H=D0(R8(),C1(G.name),!0)}if(X){let G=J.scope.generateUidIdentifier("value");Y.push(G),H=bJ("=",H,C1(G.name))}return q8(Y,H)})}function JX(J,X,Z){let Q="binding:"+X,Y=J.getData(Q);if(!Y){let H=J.scope.generateUidIdentifier(X);Y=H.name,J.setData(Q,Y),J.scope.push({id:H,init:Z(Y)})}return Y}var NR1=(0,$8.environmentVisitor)({ThisExpression(J,{thisPaths:X}){X.push(J)},JSXIdentifier(J,{thisPaths:X}){if(J.node.name!=="this")return;if(!J.parentPath.isJSXMemberExpression({object:J.node})&&!J.parentPath.isJSXOpeningElement({name:J.node}))return;X.push(J)},CallExpression(J,{superCalls:X}){if(J.get("callee").isSuper())X.push(J)},MemberExpression(J,{superProps:X}){if(J.get("object").isSuper())X.push(J)},Identifier(J,{argumentsPaths:X}){if(!J.isReferencedIdentifier({name:"arguments"}))return;let Z=J.scope;do{if(Z.hasOwnBinding("arguments")){Z.rename("arguments");return}if(Z.path.isFunction()&&!Z.path.isArrowFunctionExpression())break}while(Z=Z.parent);X.push(J)},MetaProperty(J,{newTargetPaths:X}){if(!J.get("meta").isIdentifier({name:"new"}))return;if(!J.get("property").isIdentifier({name:"target"}))return;X.push(J)}});function wR1(J){let X=[],Z=[],Q=[],Y=[],H=[];return J.traverse(NR1,{thisPaths:X,argumentsPaths:Z,newTargetPaths:Q,superProps:Y,superCalls:H}),{thisPaths:X,argumentsPaths:Z,newTargetPaths:Q,superProps:Y,superCalls:H}}function SR1(){if(!this.isExportDeclaration()||this.isExportAllDeclaration())throw Error("Only default and named export declarations can be split.");if(this.isExportNamedDeclaration()&&this.get("specifiers").length>0)throw Error("It doesn't make sense to split exported specifiers.");let J=this.get("declaration");if(this.isExportDefaultDeclaration()){let Y=J.isFunctionDeclaration()||J.isClassDeclaration(),H=J.isFunctionExpression()||J.isClassExpression(),G=J.isScope()?J.scope.parent:J.scope,z=J.node.id,W=!1;if(!z){if(W=!0,z=G.generateUidIdentifier("default"),Y||H)J.node.id=vJ(z)}else if(H&&G.hasBinding(z.name))W=!0,z=G.generateUidIdentifier(z.name);let V=Y?J.node:VR1("var",[KR1(vJ(z),J.node)]),U=eW(null,[J3(vJ(z),C1("default"))]);if(this.insertAfter(U),this.replaceWith(V),W)G.registerDeclaration(this);return this}else if(this.get("specifiers").length>0)throw Error("It doesn't make sense to split exported specifiers.");let X=J.getOuterBindingIdentifiers(),Z=Object.keys(X).map((Y)=>{return J3(C1(Y),C1(Y))}),Q=eW(null,Z);return this.insertAfter(Q),this.replaceWith(J.node),this}var PR1={"ReferencedIdentifier|BindingIdentifier"(J,X){if(J.node.name!==X.name)return;X.needsRename=!0,J.stop()},Scope(J,X){if(J.scope.hasOwnBinding(X.name))J.skip()}};function TR1(J){if(this.node.id)return this;let X=WR1(this.node,this.parent);if(X==null)return this;let{name:Z}=X;if(!J&&/[\uD800-\uDFFF]/.test(Z))return null;if(Z.startsWith("get ")||Z.startsWith("set "))return null;Z=YR1(Z.replace(/[/ ]/g,"_"));let Q=C1(Z);UR1(Q,X.originalNode);let Y={needsRename:!1,name:Z},{scope:H}=this,G=H.getOwnBinding(Z);if(G){if(G.kind==="param")Y.needsRename=!0}else if(H.parent.hasBinding(Z)||H.hasGlobal(Z))this.traverse(PR1,Y);if(!Y.needsRename)return this.node.id=Q,H.getProgramParent().references[Q.name]=!0,this;if(H.hasBinding(Q.name)&&!H.hasGlobal(Q.name))return H.rename(Q.name),this.node.id=Q,H.getProgramParent().references[Q.name]=!0,this;if(!HR1(this.node))return null;let z=H.generateUidIdentifier(Q.name),W=[];for(let U=0,$=LR1(this.node);U<$;U++)W.push(H.generateUidIdentifier("x"));let V=cB1.default.expression.ast`
45
+ (function (${z}) {
46
+ function ${Q}(${W}) {
47
+ return ${vJ(z)}.apply(this, arguments);
48
+ }
49
+
50
+ ${vJ(Q)}.toString = function () {
51
+ return ${vJ(z)}.toString();
52
+ }
53
+
54
+ return ${vJ(Q)};
55
+ })(${Q3(this.node)})
56
+ `;return this.replaceWith(V)[0].get("arguments.0")}function LR1(J){let X=J.params.findIndex((Z)=>GR1(Z)||zR1(Z));return X===-1?J.params.length:X}});var $3=I((R3)=>{Object.defineProperty(R3,"__esModule",{value:!0});R3._guessExecutionStatusRelativeTo=Z$1;R3._resolve=B3;R3.canHaveVariableDeclarationOrExpression=aR1;R3.canSwapBetweenExpressionAndStatement=sR1;R3.getSource=eR1;R3.isCompletionRecord=tR1;R3.isConstantExpression=G$1;R3.isInStrictMode=z$1;R3.isNodeType=dR1;R3.isStatementOrBlock=nR1;R3.isStatic=rR1;R3.matchesPattern=pR1;R3.referencesImport=oR1;R3.resolve=H$1;R3.willIMaybeExecuteBefore=J$1;var fR1=H1(),{STATEMENT_OR_BLOCK_KEYS:hR1,VISITOR_KEYS:xR1,isBlockStatement:U3,isExpression:yR1,isIdentifier:uR1,isLiteral:mR1,isStringLiteral:cR1,isType:lR1,matchesPattern:iR1}=fR1;function pR1(J,X){return iR1(this.node,J,X)}R3.has=function(X){var Z;let Q=(Z=this.node)==null?void 0:Z[X];if(Q&&Array.isArray(Q))return!!Q.length;else return!!Q};function rR1(){return this.scope.isStatic(this.node)}R3.is=R3.has,R3.isnt=function(X){return!this.has(X)},R3.equals=function(X,Z){return this.node[X]===Z};function dR1(J){return lR1(this.type,J)}function aR1(){return(this.key==="init"||this.key==="left")&&this.parentPath.isFor()}function sR1(J){if(this.key!=="body"||!this.parentPath.isArrowFunctionExpression())return!1;if(this.isExpression())return U3(J);else if(this.isBlockStatement())return yR1(J);return!1}function tR1(J){let X=this,Z=!0;do{let{type:Q,container:Y}=X;if(!Z&&(X.isFunction()||Q==="StaticBlock"))return!!J;if(Z=!1,Array.isArray(Y)&&X.key!==Y.length-1)return!1}while((X=X.parentPath)&&!X.isProgram()&&!X.isDoExpression());return!0}function nR1(){if(this.parentPath.isLabeledStatement()||U3(this.container))return!1;else return hR1.includes(this.key)}function oR1(J,X){if(!this.isReferencedIdentifier()){if(this.isJSXMemberExpression()&&this.node.property.name===X||(this.isMemberExpression()||this.isOptionalMemberExpression())&&(this.node.computed?cR1(this.node.property,{value:X}):this.node.property.name===X)){let H=this.get("object");return H.isReferencedIdentifier()&&H.referencesImport(J,"*")}return!1}let Z=this.scope.getBinding(this.node.name);if(!Z||Z.kind!=="module")return!1;let Q=Z.path,Y=Q.parentPath;if(!Y.isImportDeclaration())return!1;if(Y.node.source.value===J){if(!X)return!0}else return!1;if(Q.isImportDefaultSpecifier()&&X==="default")return!0;if(Q.isImportNamespaceSpecifier()&&X==="*")return!0;if(Q.isImportSpecifier()&&uR1(Q.node.imported,{name:X}))return!0;return!1}function eR1(){let J=this.node;if(J.end){let X=this.hub.getCode();if(X)return X.slice(J.start,J.end)}return""}function J$1(J){return this._guessExecutionStatusRelativeTo(J)!=="after"}function W3(J){return J.isProgram()?J:(J.parentPath.scope.getFunctionParent()||J.parentPath.scope.getProgramParent()).path}function X$1(J,X){switch(J){case"LogicalExpression":return X==="right";case"ConditionalExpression":case"IfStatement":return X==="consequent"||X==="alternate";case"WhileStatement":case"DoWhileStatement":case"ForInStatement":case"ForOfStatement":return X==="body";case"ForStatement":return X==="body"||X==="update";case"SwitchStatement":return X==="cases";case"TryStatement":return X==="handler";case"AssignmentPattern":return X==="right";case"OptionalMemberExpression":return X==="property";case"OptionalCallExpression":return X==="arguments";default:return!1}}function V3(J,X){for(let Z=0;Z<X;Z++){let Q=J[Z];if(X$1(Q.parent.type,Q.parentKey))return!0}return!1}var K3=Symbol();function Z$1(J){return F8(this,J,new Map)}function F8(J,X,Z){let Q={this:W3(J),target:W3(X)};if(Q.target.node!==Q.this.node)return Y$1(J,Q.target,Z);let Y={target:X.getAncestry(),this:J.getAncestry()};if(Y.target.includes(J))return"after";if(Y.this.includes(X))return"before";let H,G={target:0,this:0};while(!H&&G.this<Y.this.length){let U=Y.this[G.this];if(G.target=Y.target.indexOf(U),G.target>=0)H=U;else G.this++}if(!H)throw Error("Internal Babel error - The two compared nodes don't appear to belong to the same program.");if(V3(Y.this,G.this-1)||V3(Y.target,G.target-1))return"unknown";let z={this:Y.this[G.this-1],target:Y.target[G.target-1]};if(z.target.listKey&&z.this.listKey&&z.target.container===z.this.container)return z.target.key>z.this.key?"before":"after";let W=xR1[H.type],V={this:W.indexOf(z.this.parentKey),target:W.indexOf(z.target.parentKey)};return V.target>V.this?"before":"after"}function Q$1(J,X,Z){if(!X.isFunctionDeclaration()){if(F8(J,X,Z)==="before")return"before";return"unknown"}else if(X.parentPath.isExportDeclaration())return"unknown";let Q=X.scope.getBinding(X.node.id.name);if(!Q.references)return"before";let Y=Q.referencePaths,H;for(let G of Y){if(!!G.find((V)=>V.node===X.node))continue;if(G.key!=="callee"||!G.parentPath.isCallExpression())return"unknown";let W=F8(J,G,Z);if(H&&H!==W)return"unknown";else H=W}return H}function Y$1(J,X,Z){let Q=Z.get(J.node),Y;if(!Q)Z.set(J.node,Q=new Map);else if(Y=Q.get(X.node)){if(Y===K3)return"unknown";return Y}Q.set(X.node,K3);let H=Q$1(J,X,Z);return Q.set(X.node,H),H}function H$1(J,X){return B3.call(this,J,X)||this}function B3(J,X){var Z;if((Z=X)!=null&&Z.includes(this))return;if(X=X||[],X.push(this),this.isVariableDeclarator()){if(this.get("id").isIdentifier())return this.get("init").resolve(J,X)}else if(this.isReferencedIdentifier()){let Q=this.scope.getBinding(this.node.name);if(!Q)return;if(!Q.constant)return;if(Q.kind==="module")return;if(Q.path!==this){let Y=Q.path.resolve(J,X);if(this.find((H)=>H.node===Y.node))return;return Y}}else if(this.isTypeCastExpression())return this.get("expression").resolve(J,X);else if(J&&this.isMemberExpression()){let Q=this.toComputedKey();if(!mR1(Q))return;let Y=Q.value,H=this.get("object").resolve(J,X);if(H.isObjectExpression()){let G=H.get("properties");for(let z of G){if(!z.isProperty())continue;let W=z.get("key"),V=z.isnt("computed")&&W.isIdentifier({name:Y});if(V=V||W.isLiteral({value:Y}),V)return z.get("value").resolve(J,X)}}else if(H.isArrayExpression()&&!isNaN(+Y)){let z=H.get("elements")[Y];if(z)return z.resolve(J,X)}}}function G$1(){if(this.isIdentifier()){let J=this.scope.getBinding(this.node.name);if(!J)return!1;return J.constant}if(this.isLiteral()){if(this.isRegExpLiteral())return!1;if(this.isTemplateLiteral())return this.get("expressions").every((J)=>J.isConstantExpression());return!0}if(this.isUnaryExpression()){if(this.node.operator!=="void")return!1;return this.get("argument").isConstantExpression()}if(this.isBinaryExpression()){let{operator:J}=this.node;return J!=="in"&&J!=="instanceof"&&this.get("left").isConstantExpression()&&this.get("right").isConstantExpression()}if(this.isMemberExpression())return!this.node.computed&&this.get("object").isIdentifier({name:"Symbol"})&&!this.scope.hasBinding("Symbol",{noGlobals:!0});if(this.isCallExpression())return this.node.arguments.length===1&&this.get("callee").matchesPattern("Symbol.for")&&!this.scope.hasBinding("Symbol",{noGlobals:!0})&&this.get("arguments")[0].isStringLiteral();return!1}function z$1(){return!!(this.isProgram()?this:this.parentPath).find((Z)=>{if(Z.isProgram({sourceType:"module"}))return!0;if(Z.isClass())return!0;if(Z.isArrowFunctionExpression()&&!Z.get("body").isBlockStatement())return!1;let Q;if(Z.isFunction())Q=Z.node.body;else if(Z.isProgram())Q=Z.node;else return!1;for(let Y of Q.directives)if(Y.value.value==="use strict")return!0})}});var A3=I((O3)=>{Object.defineProperty(O3,"__esModule",{value:!0});O3._getKey=j3;O3._getPattern=M3;O3.get=u$1;O3.getAllNextSiblings=x$1;O3.getAllPrevSiblings=y$1;O3.getAssignmentIdentifiers=m$1;O3.getBindingIdentifierPaths=i$1;O3.getBindingIdentifiers=c$1;O3.getCompletionRecords=_$1;O3.getNextSibling=h$1;O3.getOpposite=b$1;O3.getOuterBindingIdentifierPaths=p$1;O3.getOuterBindingIdentifiers=l$1;O3.getPrevSibling=f$1;O3.getSibling=g$1;var M8=d0(),N$1=H1(),{getAssignmentIdentifiers:w$1,getBindingIdentifiers:F3,getOuterBindingIdentifiers:S$1,numericLiteral:P$1,unaryExpression:T$1}=N$1,O8=0,XX=1;function L$1(J){return{type:O8,path:J}}function k$1(J){return{type:XX,path:J}}function b$1(){if(this.key==="left")return this.getSibling("right");else if(this.key==="right")return this.getSibling("left");return null}function H9(J,X,Z){if(J)X.push(...G9(J,Z));return X}function v$1(J,X,Z){let Q=[];for(let Y=0;Y<J.length;Y++){let H=J[Y],G=G9(H,Z),z=[],W=[];for(let V of G){if(V.type===O8)z.push(V);if(V.type===XX)W.push(V)}if(z.length)Q=z;X.push(...W)}return X.push(...Q),X}function E$1(J){J.forEach((X)=>{X.type=XX})}function j8(J,X){J.forEach((Z)=>{if(Z.path.isBreakStatement({label:null}))if(X)Z.path.replaceWith(T$1("void",P$1(0)));else Z.path.remove()})}function q3(J,X){let Z=[];if(X.canHaveBreak){let Q=[];for(let Y=0;Y<J.length;Y++){let H=J[Y],G=Object.assign({},X,{inCaseClause:!1});if(H.isBlockStatement()&&(X.inCaseClause||X.shouldPopulateBreak))G.shouldPopulateBreak=!0;else G.shouldPopulateBreak=!1;let z=G9(H,G);if(z.length>0&&z.every((W)=>W.type===XX)){if(Q.length>0&&z.every((W)=>W.path.isBreakStatement({label:null}))){if(E$1(Q),Z.push(...Q),Q.some((W)=>W.path.isDeclaration())){if(Z.push(...z),!X.shouldPreserveBreak)j8(z,!0)}if(!X.shouldPreserveBreak)j8(z,!1)}else if(Z.push(...z),!X.shouldPopulateBreak&&!X.shouldPreserveBreak)j8(z,!0);break}if(Y===J.length-1)Z.push(...z);else{Q=[];for(let W=0;W<z.length;W++){let V=z[W];if(V.type===XX)Z.push(V);if(V.type===O8)Q.push(V)}}}}else if(J.length)for(let Q=J.length-1;Q>=0;Q--){let Y=G9(J[Q],X);if(Y.length>1||Y.length===1&&!Y[0].path.isVariableDeclaration()&&!Y[0].path.isEmptyStatement()){Z.push(...Y);break}}return Z}function G9(J,X){let Z=[];if(J.isIfStatement())Z=H9(J.get("consequent"),Z,X),Z=H9(J.get("alternate"),Z,X);else if(J.isDoExpression()||J.isFor()||J.isWhile()||J.isLabeledStatement())return H9(J.get("body"),Z,X);else if(J.isProgram()||J.isBlockStatement())return q3(J.get("body"),X);else if(J.isFunction())return G9(J.get("body"),X);else if(J.isTryStatement())Z=H9(J.get("block"),Z,X),Z=H9(J.get("handler"),Z,X);else if(J.isCatchClause())return H9(J.get("body"),Z,X);else if(J.isSwitchStatement())return v$1(J.get("cases"),Z,X);else if(J.isSwitchCase())return q3(J.get("consequent"),{canHaveBreak:!0,shouldPopulateBreak:!1,inCaseClause:!0,shouldPreserveBreak:X.shouldPreserveBreak});else if(J.isBreakStatement())Z.push(k$1(J));else Z.push(L$1(J));return Z}function _$1(J=!1){return G9(this,{canHaveBreak:!1,shouldPopulateBreak:!1,inCaseClause:!1,shouldPreserveBreak:J}).map((Z)=>Z.path)}function g$1(J){return M8.default.get({parentPath:this.parentPath,parent:this.parent,container:this.container,listKey:this.listKey,key:J}).setContext(this.context)}function f$1(){return this.getSibling(this.key-1)}function h$1(){return this.getSibling(this.key+1)}function x$1(){let J=this.key,X=this.getSibling(++J),Z=[];while(X.node)Z.push(X),X=this.getSibling(++J);return Z}function y$1(){let J=this.key,X=this.getSibling(--J),Z=[];while(X.node)Z.push(X),X=this.getSibling(--J);return Z}function u$1(J,X=!0){if(X===!0)X=this.context;let Z=J.split(".");if(Z.length===1)return j3.call(this,J,X);else return M3.call(this,Z,X)}function j3(J,X){let Z=this.node,Q=Z[J];if(Array.isArray(Q))return Q.map((Y,H)=>{return M8.default.get({listKey:J,parentPath:this,parent:Z,container:Q,key:H}).setContext(X)});else return M8.default.get({parentPath:this,parent:Z,container:Z,key:J}).setContext(X)}function M3(J,X){let Z=this;for(let Q of J)if(Q===".")Z=Z.parentPath;else if(Array.isArray(Z))Z=Z[Q];else Z=Z.get(Q,X);return Z}function m$1(){return w$1(this.node)}function c$1(J){return F3(this.node,J)}function l$1(J){return S$1(this.node,J)}function i$1(J=!1,X=!1){let Q=[this],Y=Object.create(null);while(Q.length){let H=Q.shift();if(!H)continue;if(!H.node)continue;let G=F3.keys[H.node.type];if(H.isIdentifier()){if(J)(Y[H.node.name]=Y[H.node.name]||[]).push(H);else Y[H.node.name]=H;continue}if(H.isExportDeclaration()){let z=H.get("declaration");if(z.isDeclaration())Q.push(z);continue}if(X){if(H.isFunctionDeclaration()){Q.push(H.get("id"));continue}if(H.isFunctionExpression())continue}if(G)for(let z=0;z<G.length;z++){let W=G[z],V=H.get(W);if(Array.isArray(V))Q.push(...V);else if(V.node)Q.push(V)}}return Y}function p$1(J=!1){return this.getBindingIdentifierPaths(J,!0)}});var I3=I((D3)=>{Object.defineProperty(D3,"__esModule",{value:!0});D3.addComment=Uq1;D3.addComments=Bq1;D3.shareCommentsWithSiblings=Kq1;var zq1=H1(),{addComment:Wq1,addComments:Vq1}=zq1;function Kq1(){if(typeof this.key==="string")return;let J=this.node;if(!J)return;let{trailingComments:X,leadingComments:Z}=J;if(!X&&!Z)return;let Q=this.getSibling(this.key-1),Y=this.getSibling(this.key+1),H=Boolean(Q.node),G=Boolean(Y.node);if(H){if(Z)Q.addComments("trailing",C3(Z,Q.node.trailingComments));if(X&&!G)Q.addComments("trailing",X)}if(G){if(X)Y.addComments("leading",C3(X,Y.node.leadingComments));if(Z&&!H)Y.addComments("leading",Z)}}function C3(J,X){if(!(X!=null&&X.length))return J;let Z=new Set(X);return J.filter((Q)=>{return!Z.has(Q)})}function Uq1(J,X,Z){Wq1(this.node,J,X,Z)}function Bq1(J,X){Vq1(this.node,J,X)}});var d0=I((T3)=>{Object.defineProperty(T3,"__esModule",{value:!0});T3.default=T3.SHOULD_STOP=T3.SHOULD_SKIP=T3.REMOVED=void 0;var Fq1=n2(),jq1=i4(),Mq1=c9(),Oq1=V7(),S3=H1(),F2=S3,Aq1=NJ(),Cq1=Wz(),E0=Kz(),z9=Ez(),W9=s7(),N3=LW(),EJ=z3(),g1=$3(),P3=A0(),_1=P3,V9=V2(),_0=K2(),o1=A3(),A8=I3(),Dq1=Y7(),{validate:Iq1}=S3,w3=jq1("babel"),WL1=T3.REMOVED=1,VL1=T3.SHOULD_STOP=2,KL1=T3.SHOULD_SKIP=4,a0=T3.default=class J{constructor(X,Z){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._store=null,this.parent=Z,this.hub=X,this.data=null,this.context=null,this.scope=null}get removed(){return(this._traverseFlags&1)>0}set removed(X){if(X)this._traverseFlags|=1;else this._traverseFlags&=-2}get shouldStop(){return(this._traverseFlags&2)>0}set shouldStop(X){if(X)this._traverseFlags|=2;else this._traverseFlags&=-3}get shouldSkip(){return(this._traverseFlags&4)>0}set shouldSkip(X){if(X)this._traverseFlags|=4;else this._traverseFlags&=-5}static get({hub:X,parentPath:Z,parent:Q,container:Y,listKey:H,key:G}){if(!X&&Z)X=Z.hub;if(!Q)throw Error("To get a node path the parent needs to exist");let z=Y[G],W=Aq1.getOrCreateCachedPaths(Q,Z),V=W.get(z);if(!V){if(V=new J(X,Q),z)W.set(z,V)}return P3.setup.call(V,Z,Y,H,G),V}getScope(X){return this.isScope()?new Oq1.default(this):X}setData(X,Z){if(this.data==null)this.data=Object.create(null);return this.data[X]=Z}getData(X,Z){if(this.data==null)this.data=Object.create(null);let Q=this.data[X];if(Q===void 0&&Z!==void 0)Q=this.data[X]=Z;return Q}hasNode(){return this.node!=null}buildCodeFrameError(X,Z=SyntaxError){return this.hub.buildError(this.node,X,Z)}traverse(X,Z){(0,Mq1.default)(this.node,X,this.scope,Z,this)}set(X,Z){Iq1(this.node,X,Z),this.node[X]=Z}getPathLocation(){let X=[],Z=this;do{let Q=Z.key;if(Z.inList)Q=`${Z.listKey}[${Q}]`;X.unshift(Q)}while(Z=Z.parentPath);return X.join(".")}debug(X){if(!w3.enabled)return;w3(`${this.getPathLocation()} ${this.type}: ${X}`)}toString(){return(0,Cq1.default)(this.node).code}get inList(){return!!this.listKey}set inList(X){if(!X)this.listKey=null}get parentKey(){return this.listKey||this.key}},Nq1={findParent:E0.findParent,find:E0.find,getFunctionParent:E0.getFunctionParent,getStatementParent:E0.getStatementParent,getEarliestCommonAncestorFrom:E0.getEarliestCommonAncestorFrom,getDeepestCommonAncestorFrom:E0.getDeepestCommonAncestorFrom,getAncestry:E0.getAncestry,isAncestor:E0.isAncestor,isDescendant:E0.isDescendant,inType:E0.inType,getTypeAnnotation:z9.getTypeAnnotation,isBaseType:z9.isBaseType,couldBeBaseType:z9.couldBeBaseType,baseTypeStrictlyMatches:z9.baseTypeStrictlyMatches,isGenericType:z9.isGenericType,replaceWithMultiple:W9.replaceWithMultiple,replaceWithSourceString:W9.replaceWithSourceString,replaceWith:W9.replaceWith,replaceExpressionWithStatements:W9.replaceExpressionWithStatements,replaceInline:W9.replaceInline,evaluateTruthy:N3.evaluateTruthy,evaluate:N3.evaluate,toComputedKey:EJ.toComputedKey,ensureBlock:EJ.ensureBlock,unwrapFunctionEnvironment:EJ.unwrapFunctionEnvironment,arrowFunctionToExpression:EJ.arrowFunctionToExpression,splitExportDeclaration:EJ.splitExportDeclaration,ensureFunctionName:EJ.ensureFunctionName,matchesPattern:g1.matchesPattern,isStatic:g1.isStatic,isNodeType:g1.isNodeType,canHaveVariableDeclarationOrExpression:g1.canHaveVariableDeclarationOrExpression,canSwapBetweenExpressionAndStatement:g1.canSwapBetweenExpressionAndStatement,isCompletionRecord:g1.isCompletionRecord,isStatementOrBlock:g1.isStatementOrBlock,referencesImport:g1.referencesImport,getSource:g1.getSource,willIMaybeExecuteBefore:g1.willIMaybeExecuteBefore,_guessExecutionStatusRelativeTo:g1._guessExecutionStatusRelativeTo,resolve:g1.resolve,isConstantExpression:g1.isConstantExpression,isInStrictMode:g1.isInStrictMode,isDenylisted:_1.isDenylisted,visit:_1.visit,skip:_1.skip,skipKey:_1.skipKey,stop:_1.stop,setContext:_1.setContext,requeue:_1.requeue,requeueComputedKeyAndDecorators:_1.requeueComputedKeyAndDecorators,remove:V9.remove,insertBefore:_0.insertBefore,insertAfter:_0.insertAfter,unshiftContainer:_0.unshiftContainer,pushContainer:_0.pushContainer,getOpposite:o1.getOpposite,getCompletionRecords:o1.getCompletionRecords,getSibling:o1.getSibling,getPrevSibling:o1.getPrevSibling,getNextSibling:o1.getNextSibling,getAllNextSiblings:o1.getAllNextSiblings,getAllPrevSiblings:o1.getAllPrevSiblings,get:o1.get,getAssignmentIdentifiers:o1.getAssignmentIdentifiers,getBindingIdentifiers:o1.getBindingIdentifiers,getOuterBindingIdentifiers:o1.getOuterBindingIdentifiers,getBindingIdentifierPaths:o1.getBindingIdentifierPaths,getOuterBindingIdentifierPaths:o1.getOuterBindingIdentifierPaths,shareCommentsWithSiblings:A8.shareCommentsWithSiblings,addComment:A8.addComment,addComments:A8.addComments};Object.assign(a0.prototype,Nq1);a0.prototype.arrowFunctionToShadowed=EJ[String("arrowFunctionToShadowed")],Object.assign(a0.prototype,{has:g1[String("has")],is:g1[String("is")],isnt:g1[String("isnt")],equals:g1[String("equals")],hoist:_0[String("hoist")],updateSiblingKeys:_0.updateSiblingKeys,call:_1.call,isBlacklisted:_1[String("isBlacklisted")],setScope:_1.setScope,resync:_1.resync,popContext:_1.popContext,pushContext:_1.pushContext,setup:_1.setup,setKey:_1.setKey});a0.prototype._guessExecutionStatusRelativeToDifferentFunctions=g1._guessExecutionStatusRelativeTo,a0.prototype._guessExecutionStatusRelativeToDifferentFunctions=g1._guessExecutionStatusRelativeTo,Object.assign(a0.prototype,{_getTypeAnnotation:z9._getTypeAnnotation,_replaceWith:W9._replaceWith,_resolve:g1._resolve,_call:_1._call,_resyncParent:_1._resyncParent,_resyncKey:_1._resyncKey,_resyncList:_1._resyncList,_resyncRemoved:_1._resyncRemoved,_getQueueContexts:_1._getQueueContexts,_removeFromScope:V9._removeFromScope,_callRemovalHooks:V9._callRemovalHooks,_remove:V9._remove,_markRemoved:V9._markRemoved,_assertUnremoved:V9._assertUnremoved,_containerInsert:_0._containerInsert,_containerInsertBefore:_0._containerInsertBefore,_containerInsertAfter:_0._containerInsertAfter,_verifyNodeList:_0._verifyNodeList,_getKey:o1._getKey,_getPattern:o1._getPattern});for(let J of F2.TYPES){let X=`is${J}`,Z=F2[X];a0.prototype[X]=function(Q){return Z(this.node,Q)},a0.prototype[`assert${J}`]=function(Q){if(!Z(this.node,Q))throw TypeError(`Expected node path of type ${J}`)}}Object.assign(a0.prototype,Dq1);for(let J of Object.keys(Fq1)){if(J[0]==="_")continue;if(!F2.TYPES.includes(J))F2.TYPES.push(J)}});var E3=I((b3)=>{Object.defineProperty(b3,"__esModule",{value:!0});b3.default=void 0;var Tq1=d0(),Lq1=H1(),C8=A0(),{VISITOR_KEYS:kq1}=Lq1;class k3{constructor(J,X,Z,Q){this.queue=null,this.priorityQueue=null,this.parentPath=Q,this.scope=J,this.state=Z,this.opts=X}shouldVisit(J){let X=this.opts;if(X.enter||X.exit)return!0;if(X[J.type])return!0;let Z=kq1[J.type];if(!(Z!=null&&Z.length))return!1;for(let Q of Z)if(J[Q])return!0;return!1}create(J,X,Z,Q){return Tq1.default.get({parentPath:this.parentPath,parent:J,container:X,key:Z,listKey:Q})}maybeQueue(J,X){if(this.queue)if(X)this.queue.push(J);else this.priorityQueue.push(J)}visitMultiple(J,X,Z){if(J.length===0)return!1;let Q=[];for(let Y=0;Y<J.length;Y++){let H=J[Y];if(H&&this.shouldVisit(H))Q.push(this.create(X,J,Y,Z))}return this.visitQueue(Q)}visitSingle(J,X){if(this.shouldVisit(J[X]))return this.visitQueue([this.create(J,J,X)]);else return!1}visitQueue(J){this.queue=J,this.priorityQueue=[];let X=new WeakSet,Z=!1,Q=0;for(;Q<J.length;){let Y=J[Q];if(Q++,C8.resync.call(Y),Y.contexts.length===0||Y.contexts[Y.contexts.length-1]!==this)C8.pushContext.call(Y,this);if(Y.key===null)continue;let{node:H}=Y;if(X.has(H))continue;if(H)X.add(H);if(Y.visit()){Z=!0;break}if(this.priorityQueue.length){if(Z=this.visitQueue(this.priorityQueue),this.priorityQueue=[],this.queue=J,Z)break}}for(let Y=0;Y<Q;Y++)C8.popContext.call(J[Y]);return this.queue=null,Z}visit(J,X){let Z=J[X];if(!Z)return!1;if(Array.isArray(Z))return this.visitMultiple(Z,J,X);else return this.visitSingle(J,X)}}b3.default=k3});var lX=I((_3)=>{Object.defineProperty(_3,"__esModule",{value:!0});_3.traverseNode=_q1;var bq1=E3(),RL1=d0(),vq1=H1(),$L1=A0(),{VISITOR_KEYS:Eq1}=vq1;function _q1(J,X,Z,Q,Y,H,G){let z=Eq1[J.type];if(!z)return!1;let W=new bq1.default(Z,X,Q,Y);if(G){if(H!=null&&H[Y.parentKey])return!1;return W.visitQueue([Y])}for(let V of z){if(H!=null&&H[V])continue;if(W.visit(J,V))return!0}return!1}});var A0=I((c3)=>{Object.defineProperty(c3,"__esModule",{value:!0});c3._call=I8;c3._getQueueContexts=nq1;c3._resyncKey=u3;c3._resyncList=m3;c3._resyncParent=y3;c3._resyncRemoved=pq1;c3.call=D8;c3.isDenylisted=h3;c3.popContext=rq1;c3.pushContext=dq1;c3.requeue=sq1;c3.requeueComputedKeyAndDecorators=tq1;c3.resync=iq1;c3.setContext=lq1;c3.setKey=j2;c3.setScope=x3;c3.setup=aq1;c3.skip=uq1;c3.skipKey=mq1;c3.stop=cq1;c3.visit=yq1;var fq1=lX(),g3=d0(),hq1=V2(),xq1=H1();function D8(J){let X=this.opts;if(this.debug(J),this.node){if(I8.call(this,X[J]))return!0}if(this.node){var Z;return I8.call(this,(Z=X[this.node.type])==null?void 0:Z[J])}return!1}function I8(J){if(!J)return!1;for(let X of J){if(!X)continue;let Z=this.node;if(!Z)return!0;let Q=X.call(this.state,this,this.state);if(Q&&typeof Q==="object"&&typeof Q.then==="function")throw 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(Q)throw Error(`Unexpected return value from visitor method ${X}`);if(this.node!==Z)return!0;if(this._traverseFlags>0)return!0}return!1}function h3(){var J;let X=(J=this.opts.denylist)!=null?J:this.opts.blacklist;return X==null?void 0:X.includes(this.node.type)}c3.isBlacklisted=h3;function f3(J,X){if(J.context!==X)J.context=X,J.state=X.state,J.opts=X.opts}function yq1(){var J,X;if(!this.node)return!1;if(this.isDenylisted())return!1;if((J=(X=this.opts).shouldSkip)!=null&&J.call(X,this))return!1;let Z=this.context;if(this.shouldSkip||D8.call(this,"enter"))return this.debug("Skip..."),this.shouldStop;return f3(this,Z),this.debug("Recursing into..."),this.shouldStop=(0,fq1.traverseNode)(this.node,this.opts,this.scope,this.state,this,this.skipKeys),f3(this,Z),D8.call(this,"exit"),this.shouldStop}function uq1(){this.shouldSkip=!0}function mq1(J){if(this.skipKeys==null)this.skipKeys={};this.skipKeys[J]=!0}function cq1(){this._traverseFlags|=g3.SHOULD_SKIP|g3.SHOULD_STOP}function x3(){var J,X;if((J=this.opts)!=null&&J.noScope)return;let Z=this.parentPath;if((this.key==="key"||this.listKey==="decorators")&&Z.isMethod()||this.key==="discriminant"&&Z.isSwitchStatement())Z=Z.parentPath;let Q;while(Z&&!Q){var Y;if((Y=Z.opts)!=null&&Y.noScope)return;Q=Z.scope,Z=Z.parentPath}this.scope=this.getScope(Q),(X=this.scope)==null||X.init()}function lq1(J){if(this.skipKeys!=null)this.skipKeys={};if(this._traverseFlags=0,J)this.context=J,this.state=J.state,this.opts=J.opts;return x3.call(this),this}function iq1(){if(this.removed)return;y3.call(this),m3.call(this),u3.call(this)}function y3(){if(this.parentPath)this.parent=this.parentPath.node}function u3(){if(!this.container)return;if(this.node===this.container[this.key])return;if(Array.isArray(this.container)){for(let J=0;J<this.container.length;J++)if(this.container[J]===this.node){j2.call(this,J);return}}else for(let J of Object.keys(this.container))if(this.container[J]===this.node){j2.call(this,J);return}this.key=null}function m3(){if(!this.parent||!this.inList)return;let J=this.parent[this.listKey];if(this.container===J)return;this.container=J||null}function pq1(){if(this.key==null||!this.container||this.container[this.key]!==this.node)hq1._markRemoved.call(this)}function rq1(){if(this.contexts.pop(),this.contexts.length>0)this.setContext(this.contexts[this.contexts.length-1]);else this.setContext(void 0)}function dq1(J){this.contexts.push(J),this.setContext(J)}function aq1(J,X,Z,Q){this.listKey=Z,this.container=X,this.parentPath=J||this.parentPath,j2.call(this,Q)}function j2(J){var X;this.key=J,this.node=this.container[this.key],this.type=(X=this.node)==null?void 0:X.type}function sq1(J=this){if(J.removed)return;let X=this.contexts;for(let Z of X)Z.maybeQueue(J)}function tq1(){let{context:J,node:X}=this;if(!xq1.isPrivate(X)&&X.computed)J.maybeQueue(this.get("key"));if(X.decorators)for(let Z of this.get("decorators"))J.maybeQueue(Z)}function nq1(){let J=this,X=this.contexts;while(!X.length){if(J=J.parentPath,!J)break;X=J.contexts}return X}});var r3=I((i3)=>{Object.defineProperty(i3,"__esModule",{value:!0});i3.default=void 0;class l3{getCode(){}getScope(){}addHelper(){throw Error("Helpers are not supported by the default hub.")}buildError(J,X,Z=TypeError){return new Z(X)}}i3.default=l3});var c9=I((YX)=>{Object.defineProperty(YX,"__esModule",{value:!0});Object.defineProperty(YX,"Hub",{enumerable:!0,get:function(){return IF1.default}});Object.defineProperty(YX,"NodePath",{enumerable:!0,get:function(){return CF1.default}});Object.defineProperty(YX,"Scope",{enumerable:!0,get:function(){return DF1.default}});YX.visitors=YX.default=void 0;A0();var QX=mX();YX.visitors=QX;var OF1=H1(),AF1=NJ(),d3=lX(),CF1=d0(),DF1=V7(),IF1=r3(),{VISITOR_KEYS:NF1,removeProperties:wF1,traverseFast:ZX}=OF1;function I0(J,X={},Z,Q,Y,H){if(!J)return;if(!X.noScope&&!Z){if(J.type!=="Program"&&J.type!=="File")throw Error(`You must pass a scope and parentPath unless traversing a Program/File. Instead of that you tried to traverse a ${J.type} node without passing scope and parentPath.`)}if(!Y&&H)throw Error("visitSelf can only be used when providing a NodePath.");if(!NF1[J.type])return;QX.explode(X),(0,d3.traverseNode)(J,X,Z,Q,Y,null,H)}var OL1=YX.default=I0;I0.visitors=QX;I0.verify=QX.verify;I0.explode=QX.explode;I0.cheap=function(J,X){ZX(J,X);return};I0.node=function(J,X,Z,Q,Y,H){(0,d3.traverseNode)(J,X,Z,Q,Y,H)};I0.clearNode=function(J,X){wF1(J,X)};I0.removeProperties=function(J,X){return ZX(J,I0.clearNode,X),J};I0.hasType=function(J,X,Z){if(Z!=null&&Z.includes(J.type))return!1;if(J.type===X)return!0;return ZX(J,function(Q){if(Z!=null&&Z.includes(Q.type))return ZX.skip;if(Q.type===X)return ZX.stop})};I0.cache=AF1});import HX from"path";function TF1(J,X){let Z=X.replace(/^\.\/?/,""),Y=J.replace(Z+"/","").replace(/\.[^.]+$/,"");if(Y.endsWith("/index"))return Y.slice(0,-6);return Y}function O2(J){return HX.isAbsolute(J)?J:HX.join(process.cwd()||".",J)}function LF1(J,X){let Z=O2(J),Q=O2(X),G=HX.relative(HX.dirname(Q),Z).replace(/\\/g,"/").replace(/\.ts$/,".js");if(G.startsWith("../")||G.startsWith("./"))return G;return`./${G}`}function kF1(J,X,Z){let Q=O2(X),Y=O2(J),G=HX.relative(Q,Y).replace(/\\/g,"/").replace(/\.[^.]+$/,""),z=X.replace(/^\.\/?/,""),V=`${z?`../${z}`:".."}/${G}`;return V.startsWith("./")?V.slice(2):V}async function w8(J,X,Z){try{let Y=await Bun.file(J).text();if(!new Bun.Transpiler({loader:"tsx"}).scan(Y).exports.some((U)=>U.includes("Command")||U==="default"))return null;let W=t3.parse(Y,{sourceType:"module",plugins:["typescript","jsx","decorators-legacy"]}),V=null;return PF1(W,{CallExpression(U){if(U.node.callee.type==="Identifier"&&U.node.callee.name==="defineCommand"){let $=U.node.arguments;if($.length>0&&$[0]?.type==="ObjectExpression")V=N8($[0],J,X,Z)}else if(U.node.callee.type==="MemberExpression"&&U.node.callee.property.type==="Identifier"&&U.node.callee.property.name==="defineCommand"){let $=U.node.arguments;if($.length>0&&$[0]?.type==="ObjectExpression")V=N8($[0],J,X,Z)}}}),V}catch(Q){if(console.warn(`Warning: Could not parse command file: ${J}`),console.warn("Error:",Q),Q instanceof Error)console.warn("Stack:",Q.stack);return null}}function N8(J,X,Z,Q){let Y={name:"",description:"",filePath:X,importPath:LF1(X,Q),exportPath:kF1(X,Z,Q)};for(let H of J.properties)if(H.type==="ObjectProperty"&&H.key.type==="Identifier"){let G=H.key.name,z=H.value;switch(G){case"name":Y.name=gF1(z)??"";break;case"description":if(z.type==="StringLiteral")Y.description=z.value;break;case"alias":if(z.type==="StringLiteral")Y.alias=z.value;else if(z.type==="ArrayExpression")Y.alias=z.elements.filter((W)=>W?.type==="StringLiteral").map((W)=>W.value);break;case"options":if(z.type==="ObjectExpression")Y.options=bF1(z);break;case"handler":Y.hasHandler=!0;break;case"render":Y.hasRender=!0;break;case"commands":Y.commands=fF1(z,X,Z,Q);break}}return Y.name=TF1(X,Z),Y}function bF1(J){let X={};for(let Z of J.properties)if(Z.type==="ObjectProperty"&&Z.key.type==="Identifier"){let Q=Z.key.name,Y=Z.value;if(Y.type==="CallExpression"&&Y.callee.type==="Identifier"&&Y.callee.name==="option"){let H=Y.arguments;if(H.length>=1){let G=H[0],z=H[1]?.type==="ObjectExpression"?H[1]:null,{type:W}=A2(G),V=vF1(G);X[Q]={type:W,required:hF1(G),hasDefault:V.hasDefault,default:V.value,description:EF1(z),short:_F1(z),schema:M2(G),validator:xF1(G)}}}}return X}function vF1(J){if(J.type==="CallExpression"){let X=J.callee;if(X.type==="MemberExpression"){if(X.property.type==="Identifier"){if(X.property.name==="default"){let Z=J.arguments;if(Z.length>0)return{hasDefault:!0,value:s3(Z[0])}}if(X.property.name==="catch"){let Z=J.arguments;if(Z.length>0)return{hasDefault:!0,value:s3(Z[0])}}}}}return{hasDefault:!1,value:void 0}}function EF1(J){if(!J)return;for(let X of J.properties)if(X.type==="ObjectProperty"&&X.key.type==="Identifier"&&X.key.name==="description"&&X.value.type==="StringLiteral")return X.value.value;return}function _F1(J){if(!J)return;for(let X of J.properties)if(X.type==="ObjectProperty"&&X.key.type==="Identifier"&&X.key.name==="short"&&X.value.type==="StringLiteral")return X.value.value;return}function s3(J){switch(J.type){case"StringLiteral":return J.value;case"NumericLiteral":return J.value;case"BooleanLiteral":return J.value;case"NullLiteral":return null;default:return}}function gF1(J){if(!J)return;if(J.type==="StringLiteral")return J.value;if(J.type==="TemplateLiteral"&&J.quasis.length===1)return J.quasis[0]?.value?.cooked;if(J.type==="Identifier"&&typeof J.name==="string")return J.name;return}function A2(J){if(!J)return{type:"unknown"};switch(J.type){case"Identifier":return{type:J.name};case"StringLiteral":return{type:J.value};case"CallExpression":return A2(J.callee);case"MemberExpression":{let X=A2(J.object).type,Z=J.property?.name;if(X&&Z)return{type:`${X}.${Z}`};return{type:X||"unknown"}}default:return{type:"unknown"}}}function fF1(J,X,Z,Q){if(J.type!=="ArrayExpression")return;let Y=[];for(let H of J.elements)if(H?.type==="ObjectExpression"){let G=N8(H,X,Z,Q);if(G.name)Y.push(G)}return Y.length?Y:void 0}function hF1(J){if(J.type==="CallExpression"){let X=J.callee;if(X.type==="MemberExpression"){if(X.property.type==="Identifier")return X.property.name!=="optional"}}return!0}function M2(J){if(!J)return null;switch(J.type){case"CallExpression":let X=J.callee;if(X.type==="MemberExpression")return{type:"zod",method:X.property?.name||"unknown",args:J.arguments?.map((Z)=>M2(Z))||[]};return{type:"zod",method:X.name||"unknown",args:J.arguments?.map((Z)=>M2(Z))||[]};case"MemberExpression":return{type:"zod",object:M2(J.object),property:J.property?.name||"unknown"};case"Identifier":return{type:"zod",name:J.name};case"StringLiteral":return{type:"literal",value:J.value};default:return{type:"unknown",raw:J}}}function xF1(J){if(!J)return"() => true";let{type:X}=A2(J);switch(X){case"string":return'(val) => typeof val === "string"';case"number":return'(val) => typeof val === "number"';case"boolean":return'(val) => typeof val === "boolean"';case"array":return"(val) => Array.isArray(val)";case"object":return'(val) => typeof val === "object" && val !== null';default:return"(val) => true"}}var t3,PF1;var S8=G0(()=>{t3=P2(AX(),1),PF1=c9().default});function P8(J){J=[...J].sort((z,W)=>z.name.localeCompare(W.name));let X=new Map,Z=new Set;for(let z of J){let W=uF1(z.name),V=W,U=1;while(Z.has(V))V=`${W}${U}`,U++;Z.add(V),X.set(z.name,V)}let Q=J.map((z)=>{return`import ${X.get(z.name)} from '${z.importPath}'`}).join(`
57
+ `),Y=J.map((z)=>{let W=X.get(z.name);return` '${s0(z.name)}': ${W}`}).join(`,
58
+ `),H=J.map((z)=>{return` '${z.name.replace(/'/g,"\\'")}': ${n3(z," ")}`}).join(`,
59
+ `),G=J.map((z)=>`'${s0(z.name)}'`).join(", ");return`// This file was automatically generated by Bunli.
60
+ // You should NOT make any changes in this file as it will be overwritten.
61
+
62
+ import type { Command, CLI, GeneratedOptionMeta, RegisteredCommands, CommandOptions, GeneratedCommandMeta } from '@bunli/core'
63
+ import { createGeneratedHelpers, registerGeneratedStore } from '@bunli/core'
64
+
65
+ ${Q}
66
+
67
+ // Narrow list of command names to avoid typeof-cycles in types
68
+ const names = [${G}] as const
69
+ type GeneratedNames = typeof names[number]
70
+
71
+ const modules: Record<GeneratedNames, Command<any>> = {
72
+ ${Y}
73
+ } as const
74
+
75
+ const metadata: Record<GeneratedNames, GeneratedCommandMeta> = {
76
+ ${H}
77
+ } as const
78
+
79
+ export const generated = registerGeneratedStore(createGeneratedHelpers(modules, metadata))
80
+
81
+ export const commands = generated.commands
82
+ export const commandMeta = generated.metadata
83
+
84
+ export interface GeneratedCLI {
85
+ register(cli?: CLI<any>): GeneratedCLI
86
+ list(): Array<{
87
+ name: GeneratedNames
88
+ command: (typeof modules)[GeneratedNames]
89
+ metadata: (typeof metadata)[GeneratedNames]
90
+ }>
91
+ get<Name extends GeneratedNames>(name: Name): (typeof modules)[Name]
92
+ getMetadata<Name extends GeneratedNames>(name: Name): (typeof metadata)[Name]
93
+ getFlags<Name extends keyof RegisteredCommands & string>(name: Name): CommandOptions<Name>
94
+ getFlagsMeta<Name extends GeneratedNames>(name: Name): Record<string, GeneratedOptionMeta>
95
+ withCLI(cli: CLI<any>): { execute(name: string, options: unknown): Promise<void> }
96
+ }
97
+
98
+ export const cli: GeneratedCLI = {
99
+ register: (cliInstance?: CLI<any>) => { generated.register(cliInstance); return cli },
100
+ list: () => generated.list(),
101
+ get: <Name extends GeneratedNames>(name: Name) => generated.get(name),
102
+ getMetadata: <Name extends GeneratedNames>(name: Name) => generated.getMetadata(name),
103
+ getFlags: <Name extends keyof RegisteredCommands & string>(name: Name) => generated.getFlags(name) as CommandOptions<Name>,
104
+ getFlagsMeta: <Name extends GeneratedNames>(name: Name) => generated.getFlagsMeta(name),
105
+ withCLI: (cliInstance) => generated.withCLI(cliInstance)
106
+ }
107
+
108
+ // Enhanced helper functions
109
+ export const listCommands = () => generated.list().map(c => c.name)
110
+ export const getCommandApi = <Name extends GeneratedNames>(name: Name) => generated.getMetadata(name)
111
+ export const getTypedFlags = <Name extends GeneratedNames>(name: Name) => generated.getFlags(name) as CommandOptions<Name>
112
+ export const validateCommand = <Name extends GeneratedNames>(name: Name, flags: Record<string, unknown>) => generated.validateCommand(name, flags)
113
+ export const findCommandByName = <Name extends GeneratedNames>(name: Name) => generated.findByName(name)
114
+ export const findCommandsByDescription = (searchTerm: string) => generated.findByDescription(searchTerm)
115
+ export const getCommandNames = () => generated.getCommandNames()
116
+
117
+ // Auto-register on import for zero-config usage
118
+ export default cli
119
+
120
+ // Ensure module augmentation happens on import
121
+ declare module '@bunli/core' {
122
+ // Precise key mapping without typeof cycles
123
+ interface RegisteredCommands extends Record<GeneratedNames, Command<any>> {}
124
+ }
125
+ `}function uF1(J){return J.split(/[^a-zA-Z0-9]/).filter(Boolean).map((X)=>X.charAt(0).toUpperCase()+X.slice(1)).join("")||"Command"}function n3(J,X){let Z=[];if(Z.push("{"),Z.push(`${X} name: '${s0(J.name)}',`),Z.push(`${X} description: '${s0(J.description||"")}',`),J.alias)if(Array.isArray(J.alias))Z.push(`${X} alias: ${JSON.stringify(J.alias)},`);else Z.push(`${X} alias: '${s0(J.alias)}',`);if(J.options&&Object.keys(J.options).length>0){let Q=Object.entries(J.options).map(([Y,H])=>{let G=[`type: '${H.type}'`,`required: ${H.required}`,`hasDefault: ${H.hasDefault}`,H.hasDefault?`default: ${JSON.stringify(H.default)}`:void 0,H.description?`description: '${s0(H.description)}'`:void 0,H.short?`short: '${s0(H.short)}'`:void 0,H.schema?`schema: ${JSON.stringify(H.schema)}`:void 0,H.validator?`validator: '${s0(H.validator)}'`:void 0].filter(Boolean).join(", ");return`${X} '${Y}': { ${G} }`});Z.push(`${X} options: {`),Z.push(Q.join(`,
126
+ `)),Z.push(`${X} },`)}if(J.commands&&J.commands.length>0)Z.push(`${X} commands: [`),Z.push(J.commands.map((Q)=>`${X} ${n3(Q,X+" ")}`).join(`,
127
+ `)),Z.push(`${X} ],`);return Z.push(`${X} path: '${s0(J.exportPath)}'`),Z.push(`${X}}`),Z.join(`
128
+ `)}function s0(J){return(J??"").replace(/'/g,"\\'")}import{mkdir as mF1}from"fs/promises";import{dirname as cF1}from"path";class g0{config;scanner;constructor(J){this.config=J,this.scanner=new UX}async run(J){try{let X=await this.scanCommands(),Z=await this.parseCommands(X),Q=P8(Z);await this.writeTypes(Q);let Y={commandsParsed:Z.length,filesScanned:X.length,skipped:X.filter((H)=>!Z.some((G)=>G.filePath===H)),names:Z.map((H)=>H.name).sort()};await this.writeReport(Y),console.log(`\u2713 Generated types for ${Z.length} commands`)}catch(X){throw console.error("Failed to generate types:",X),X}}async scanCommands(){return await this.scanner.scanCommands(this.config.commandsDir)}async parseCommands(J){let X=[];for(let Z of J){console.log(`Parsing file: ${Z}`);let Q=await w8(Z,this.config.commandsDir,this.config.outputFile);if(Q)console.log(`\u2705 Successfully parsed: ${Q.name}`),X.push(Q);else console.log(`\u274C Failed to parse: ${Z}`)}return X}async writeTypes(J){let X=cF1(this.config.outputFile);await mF1(X,{recursive:!0}),await Bun.write(this.config.outputFile,J)}async writeReport(J){let X=this.config.outputFile.replace(/\.ts$/,".report.json");await Bun.write(X,JSON.stringify(J,null,2))}getConfig(){return{...this.config}}updateConfig(J){this.config={...this.config,...J}}}var T8=G0(()=>{L2();S8()});function GX(J={}){let{commandsDir:X="commands",outputFile:Z="./commands.gen.ts",config:Q}=J,Y=null;return{name:"bunli-codegen",setup(H){Y=new g0({commandsDir:X,outputFile:Z,config:Q}),H.onStart(async()=>{if(Y)try{console.log("\uD83D\uDD27 Generating command types..."),await Y.run(),console.log("\u2705 Command types generated")}catch(G){console.warn("\u26A0\uFE0F Failed to generate command types:",G instanceof Error?G.message:String(G))}}),H.onResolve({filter:/^\.\/commands\//},async(G)=>{return{path:G.path,namespace:"file"}}),H.onLoad({filter:/\.(ts|tsx|js|jsx)$/,namespace:"file"},async(G)=>{if(G.path.includes(X))return;return}),H.onEnd(async(G)=>{if(G.success&&Y)try{await Y.run()}catch(z){console.warn("\u26A0\uFE0F Failed to regenerate types:",z instanceof Error?z.message:String(z))}})}}}var C2=G0(()=>{T8()});var zX=G0(()=>{T8();L2();S8();C2()});import{existsSync as o3}from"fs";import e3 from"path";async function D2(J=process.cwd()){for(let Z of lF1){let Q=e3.join(J,Z);if(o3(Q))return Z}let X=e3.join(J,"package.json");if(o3(X))try{let Z=await Bun.file(X).json();if(Z.bin){if(typeof Z.bin==="string")return Z.bin;else if(typeof Z.bin==="object"){let Q=Object.values(Z.bin)[0];if(typeof Q==="string")return Q}}}catch{}return}var lF1;var L8=G0(()=>{lF1=["src/cli.ts","src/index.ts","src/main.ts","cli.ts","index.ts","main.ts","src/cli.js","src/index.js","src/main.js","cli.js","index.js","main.js"]});var XV={};yJ(XV,{default:()=>pF1});import{defineCommand as iF1,option as _J}from"@bunli/core";import{z as gJ}from"zod";import JV from"path";var pF1;var ZV=G0(()=>{zX();C2();$J();L8();pF1=iF1({name:"dev",description:"Run your CLI in development mode with hot reload",alias:"d",options:{entry:_J(gJ.string().optional(),{short:"e",description:"Entry file (defaults to auto-detect)"}),commandsDir:_J(gJ.string().default("commands"),{description:"Commands directory"}),generate:_J(gJ.boolean().default(!0),{description:"Enable codegen"}),clearScreen:_J(gJ.boolean().default(!0),{description:"Clear screen on reload"}),watch:_J(gJ.boolean().default(!0),{short:"w",description:"Watch for changes"}),inspect:_J(gJ.boolean().default(!1),{short:"i",description:"Enable debugger"}),port:_J(gJ.number().int().min(1).max(65535).optional(),{short:"p",description:"Debugger port"})},handler:async({flags:J,positional:X,spinner:Z,colors:Q})=>{let Y=await R0();if(J.generate){let V=new g0({commandsDir:J.commandsDir,outputFile:"./.bunli/commands.gen.ts",config:Y}),U=Z("Generating command types...");try{await V.run(),U.succeed("Types generated")}catch($){U.fail("Failed to generate types");let j=$ instanceof Error?$.message:String($);console.error(Q.red(j));return}}let H=J.entry||Y.build?.entry||await D2();if(!H)console.error(Q.red("No entry file found. Please specify with --entry or in bunli.config.ts")),process.exit(1);let G=Array.isArray(H)?H[0]:H;if(!G)console.error(Q.red("Entry file is required")),process.exit(1);let z=JV.resolve(G),W=async()=>{let V=await Bun.build({entrypoints:[z],outdir:".bunli/dev",target:"bun",plugins:J.generate?[GX({commandsDir:J.commandsDir,outputFile:"./.bunli/commands.gen.ts",config:Y})]:[]});if(!V.success){console.error(Q.red("Build failed"));for(let U of V.logs)console.error(U);return null}return V.outputs[0]};if(console.log(Q.cyan(`
129
+ \uD83D\uDC40 Starting dev mode...
130
+ `)),J.watch??Y.dev?.watch??!0){let V=null,U=await W();if(U)V=Bun.spawn(["bun",U.path],{stdio:["inherit","inherit","inherit"],env:{...process.env,NODE_ENV:"development"},onExit:(A,S,w,P)=>{if(S!==0&&S!==null&&!w)console.log(Q.dim(`Process exited with code ${S}`))}});let{watch:$}=await import("fs/promises"),j=new AbortController,{signal:C}=j;process.on("SIGINT",()=>{if(console.log(Q.dim(`
131
+
132
+ Stopping dev server...`)),V)V.kill();j.abort(),process.exit(0)});try{let A=JV.dirname(z),S=$(A,{recursive:!0,signal:C});for await(let w of S){if(!w.filename?.match(/\.(ts|tsx|js|jsx)$/))continue;if(w.filename?.includes("commands.gen.ts"))continue;if(w.filename?.includes(".bunli/"))continue;if(J.clearScreen)console.clear();console.log(Q.dim(`[${new Date().toLocaleTimeString()}] File changed: ${w.filename}`)),console.log(Q.cyan("Rebuilding..."));let P=await W();if(P){if(V)V.kill(),await new Promise((b)=>setTimeout(b,100));V=Bun.spawn(["bun",P.path],{stdio:["inherit","inherit","inherit"],env:{...process.env,NODE_ENV:"development"},onExit:(b,t,m,d)=>{if(t!==0&&t!==null&&!m)console.log(Q.dim(`Process exited with code ${t}`))}}),console.log(Q.green(`\u2713 Reloaded
133
+ `))}}}catch(A){if(A.name==="AbortError"){console.log(Q.dim("Watch stopped"));return}throw A}}else{let V=await W();if(V){let U=Bun.spawn(["bun",V.path],{stdio:["inherit","inherit","inherit"],env:{...process.env,NODE_ENV:"development"},onExit:($,j,C,A)=>{if(j!==0&&j!==null&&!C)console.log(Q.dim(`Process exited with code ${j}`))}});await U.exited,process.exit(U.exitCode??0)}else process.exit(1)}}})});var QV={};yJ(QV,{default:()=>dF1});import{defineCommand as rF1,option as t0}from"@bunli/core";import{z as n0}from"zod";var{$:WJ}=globalThis.Bun;import WX from"path";var dF1;var YV=G0(()=>{zX();C2();$J();L8();dF1=rF1({name:"build",description:"Build your CLI for production",alias:"b",options:{entry:t0(n0.string().optional(),{short:"e",description:"Entry file (defaults to auto-detect)"}),outdir:t0(n0.string().optional(),{short:"o",description:"Output directory"}),outfile:t0(n0.string().optional(),{description:"Output filename (for single executable)"}),minify:t0(n0.boolean().optional(),{short:"m",description:"Minify output"}),sourcemap:t0(n0.boolean().optional(),{short:"s",description:"Generate sourcemaps"}),bytecode:t0(n0.boolean().default(!1),{description:"Enable bytecode compilation (experimental)"}),runtime:t0(n0.enum(["bun","node"]).optional(),{short:"r",description:"Runtime target (for non-compiled builds)"}),targets:t0(n0.string().optional().transform((J)=>{if(!J)return;return J.split(",").map((X)=>X.trim())}),{short:"t",description:"Target platforms for compilation (e.g., darwin-arm64,linux-x64)"}),watch:t0(n0.boolean().default(!1),{short:"w",description:"Watch for changes"})},handler:async({flags:J,spinner:X,colors:Z})=>{let Q=await R0();{let U=X("Generating types...");try{await new g0({commandsDir:Q.commands?.directory||"commands",outputFile:"./.bunli/commands.gen.ts",config:Q}).run(),U.succeed("Types generated")}catch($){U.fail("Failed to generate types");let j=$ instanceof Error?$.message:String($);console.error(Z.red(j));return}}let Y=J.entry||Q.build?.entry||await D2();if(!Y)console.error(Z.red("No entry file found. Please specify with --entry or in bunli.config.ts")),process.exit(1);let H=J.targets||Q.build?.targets,G=H&&H.length>0;if(G&&Array.isArray(Y))console.error(Z.red("Compiled builds only support a single entry file")),process.exit(1);let z=Array.isArray(Y)?Y[0]:Y;if(!z)console.error(Z.red("Entry file is undefined")),process.exit(1);let W=J.outdir||Q.build?.outdir||"./dist",V=X("Building CLI...");V.start();try{if(await WJ`rm -rf ${W}`,await WJ`mkdir -p ${W}`,G){V.update("Compiling to standalone executable...");let $=[];if(H.includes("all"))$=["darwin-arm64","darwin-x64","linux-arm64","linux-x64","windows-x64"];else if(H.includes("native"))$=[`${process.platform}-${process.arch}`];else $=H;for(let j of $){V.update(`Compiling for ${j}...`);let A=$.length>1?WX.join(W,j):W;await WJ`mkdir -p ${A}`;let S=WX.extname(z),w=S?z.slice(0,-S.length):z,P=WX.basename(w),b=j.includes("windows"),t=J.outfile||WX.join(A,b?`${P}.exe`:P),m=["build",z,"--compile","--outfile",t,"--target",`bun-${j}`];if(J.minify??Q.build?.minify??!0)m.push("--minify");if(J.sourcemap??Q.build?.sourcemap??!1)m.push("--sourcemap");if(J.bytecode)m.push("--bytecode");let d=Q.build?.external||[];for(let D1 of d)m.push("--external",D1);if((await WJ`bun ${m}`.quiet()).exitCode!==0)throw Error(`Compilation failed for ${j}`)}if(Q.build?.compress&&$.length>1){V.update("Compressing builds...");for(let j of $)await WJ`cd ${W} && tar -czf ${j}.tar.gz ${j}`,await WJ`rm -rf ${W}/${j}`}}else{let j={entrypoints:Array.isArray(Y)?Y:[Y],outdir:W,target:J.runtime||"bun",format:"esm",minify:J.minify??Q.build?.minify??!0,sourcemap:J.sourcemap??Q.build?.sourcemap??!1,external:Q.build?.external||[],plugins:[GX({commandsDir:Q.commands?.directory||"commands",outputFile:"./.bunli/commands.gen.ts",config:Q})]},C=await Bun.build(j);if(!C.success)throw Error(`Build failed: ${C.logs.join("\\n")}`);for(let A of C.outputs)if(A.path.endsWith(".js")){let S=await A.text(),P=`#!/usr/bin/env ${J.runtime==="node"?"node":"bun"}
134
+ ${S}`;await Bun.write(A.path,P),await WJ`chmod +x ${A.path}`}}V.succeed("Build complete!");let U=await WJ`du -sh ${W}`.text();console.log(Z.dim(`Output size: ${U.trim()}`))}catch(U){V.fail("Build failed"),console.error(Z.red(U instanceof Error?U.message:String(U))),process.exit(1)}}})});var HV={};yJ(HV,{default:()=>tF1});import{defineCommand as aF1,option as k8}from"@bunli/core";import{z as b8}from"zod";import{join as sF1}from"path";var tF1;var GV=G0(()=>{zX();zX();$J();tF1=aF1({name:"generate",description:"Generate command type definitions",alias:"gen",options:{commandsDir:k8(b8.string().optional(),{description:"Commands directory"}),output:k8(b8.string().default("./.bunli/commands.gen.ts"),{short:"o",description:"Output file"}),watch:k8(b8.boolean().default(!1),{short:"w",description:"Watch for changes"})},async handler({flags:J,colors:X,spinner:Z}){let Q=await R0(),Y=J.commandsDir||Q.commands?.directory||"commands",H=J.output||"./.bunli/commands.gen.ts",G=new g0({commandsDir:Y,outputFile:H,config:Q}),z=Z("Generating types...");try{await G.run(),z.succeed("Types generated")}catch(W){z.fail("Failed to generate types");let V=W instanceof Error?W.message:String(W);console.error(X.red(V));return}if(J.watch){console.log(X.cyan(`
135
+ \uD83D\uDC40 Watching ${Y}...
136
+ `));let{watch:W}=await import("fs/promises"),V=new AbortController,{signal:U}=V;process.on("SIGINT",()=>{console.log(X.dim(`
137
+ Stopping watcher...`)),V.abort(),process.exit(0)});try{let $=W(Y,{recursive:!0,signal:U});for await(let j of $){if(!j.filename||!T2(j.filename))continue;console.log(X.dim(`${j.eventType}: ${j.filename}`));let C=Z("Regenerating...");try{await G.run({type:j.eventType==="rename"?"delete":"update",path:sF1(Y,j.filename)}),C.succeed("Updated")}catch(A){C.fail("Failed");let S=A instanceof Error?A.message:String(A);console.error(X.red(S))}}}catch($){if($ instanceof Error&&$.name==="AbortError"){console.log(X.dim("Watcher stopped"));return}throw $}}}})});var KV={};yJ(KV,{default:()=>Jj1});import{defineCommand as nF1,option as K9}from"@bunli/core";import{z as VJ}from"zod";import{spawn as oF1}from"child_process";import{readdir as eF1}from"fs/promises";import{existsSync as zV}from"fs";import WV from"path";async function VV(J,X,Z){return new Promise((Q,Y)=>{let H=["test"],G=X.pattern||Z.test?.pattern||"**/*.test.ts",z=Array.isArray(G)?G:[G];if(H.push(...z),X.watch??Z.test?.watch)H.push("--watch");if(X.coverage??Z.test?.coverage)H.push("--coverage");if(X.bail)H.push("--bail");if(X.timeout)H.push("--timeout",X.timeout.toString());let W=oF1("bun",H,{cwd:J,stdio:["inherit","pipe","pipe"],env:{...process.env,NODE_ENV:"test"}}),V="",U="";W.stdout?.on("data",($)=>{V+=$.toString(),process.stdout.write($)}),W.stderr?.on("data",($)=>{U+=$.toString(),process.stderr.write($)}),W.on("exit",($)=>{let j=(V.match(/\u2713/g)||[]).length,C=(V.match(/\u2717/g)||[]).length,A=(V.match(/\u229D/g)||[]).length;Q({success:$===0,passed:j,failed:C,skipped:A})}),W.on("error",Y)})}async function Xj1(J){if(J.endsWith("/*")){let X=J.slice(0,-2);if(zV(X))return(await eF1(X,{withFileTypes:!0})).filter((Q)=>Q.isDirectory()&&zV(WV.join(X,Q.name,"package.json"))).map((Q)=>WV.join(X,Q.name))}return[]}var Jj1;var UV=G0(()=>{$J();Jj1=nF1({name:"test",description:"Run tests for your CLI",alias:"t",options:{pattern:K9(VJ.string().or(VJ.array(VJ.string())).optional(),{short:"p",description:"Test file patterns"}),watch:K9(VJ.boolean().default(!1),{short:"w",description:"Watch for changes"}),coverage:K9(VJ.boolean().default(!1),{short:"c",description:"Generate coverage report"}),bail:K9(VJ.boolean().default(!1),{short:"b",description:"Stop on first failure"}),timeout:K9(VJ.number().int().positive().optional(),{description:"Test timeout in milliseconds"}),all:K9(VJ.boolean().default(!1),{description:"Run tests in all packages (workspace mode)"})},handler:async({flags:J,positional:X,spinner:Z,colors:Q})=>{let Y=await R0();if(J.all&&Y.workspace?.packages){let H=Y.workspace.packages,G=!0;for(let z of H){let W=await Xj1(z);for(let V of W){let U=Z(`Testing ${V}...`);U.start();try{if((await VV(V,J,Y)).success)U.succeed(`${V} tests passed`);else if(U.fail(`${V} tests failed`),G=!1,J.bail)break}catch($){if(U.fail(`${V} tests failed`),console.error(Q.red($ instanceof Error?$.message:String($))),G=!1,J.bail)break}}if(!G&&J.bail)break}if(!G)process.exit(1)}else{let H=Z("Running tests...");H.start();try{let G=await VV(".",J,Y);if(G.success){if(H.succeed("All tests passed!"),console.log(Q.green(`\u2713 ${G.passed} tests passed`)),G.skipped>0)console.log(Q.yellow(`\u229D ${G.skipped} tests skipped`))}else H.fail("Tests failed"),console.log(Q.red(`\u2717 ${G.failed} tests failed`)),process.exit(1)}catch(G){H.fail("Tests failed"),console.error(Q.red(G instanceof Error?G.message:String(G))),process.exit(1)}}}})});var RV={};yJ(RV,{default:()=>Qj1});import{defineCommand as Zj1,option as U9}from"@bunli/core";import{z as fJ}from"zod";var{$:N0}=globalThis.Bun;async function Yj1(J,X,Z,Q,Y){let H=await v8(),G=H.version||"0.0.0",z=await Gj1(J.version,G,Z);if(console.log(Y.bold(`Releasing ${H.name||"CLI"}`)),console.log(Y.dim(` Current: ${G}`)),console.log(Y.dim(` New: ${z}`)),console.log(),!J.dry){if(!await Z.confirm("Continue with release?",{default:!0})){console.log(Y.yellow("Release cancelled"));return}}let W=[{name:"Running tests",cmd:()=>N0`bun test`},{name:"Building project",cmd:()=>N0`bun run build`},{name:"Updating version",cmd:()=>zj1(z)},{name:"Creating git tag",cmd:()=>Wj1(z,X,J)},{name:"Publishing to npm",cmd:()=>Vj1(J,X)},{name:"Creating GitHub release",cmd:()=>Kj1(z,J,X)}];for(let V of W){if(V.name.includes("npm")&&!(J.npm??X.release?.npm??!0))continue;if(V.name.includes("GitHub")&&!(J.github??X.release?.github??!0))continue;let U=Q(V.name);U.start();try{if(!J.dry)await V.cmd();U.succeed(V.name)}catch($){if(U.fail(V.name),console.error(Y.red($ instanceof Error?$.message:String($))),!J.dry)process.exit(1)}}if(console.log(),console.log(Y.green(`\u2728 Released ${H.name||"CLI"} v${z}!`)),J.github??X.release?.github??!0)console.log(Y.dim(`GitHub: https://github.com/${await BV()}/releases/tag/v${z}`));if(J.npm??X.release?.npm??!0)console.log(Y.dim(`NPM: https://npmjs.com/package/${H.name}`))}async function Hj1(J,X,Z,Q,Y){if(console.log(Y.bold("Workspace Release")),X.workspace?.versionStrategy==="independent")console.log("Using independent versioning...");else console.log("Using fixed versioning...")}async function v8(){return await Bun.file("package.json").json()}async function Gj1(J,X,Z){if(J)if(["patch","minor","major"].includes(J))return VX(X,J);else return J;let Q=await Z.select("Select version bump:",{choices:[{name:`patch (${VX(X,"patch")})`,value:"patch"},{name:`minor (${VX(X,"minor")})`,value:"minor"},{name:`major (${VX(X,"major")})`,value:"major"},{name:"custom",value:"custom"}]});if(Q==="custom")return await Z("Enter version:");return VX(X,Q)}function VX(J,X){let Z=J.split(".").map(Number),[Q=0,Y=0,H=0]=Z;switch(X){case"patch":return`${Q}.${Y}.${H+1}`;case"minor":return`${Q}.${Y+1}.0`;case"major":return`${Q+1}.0.0`}}async function zj1(J){let X=await v8();X.version=J,await Bun.write("package.json",JSON.stringify(X,null,2)+"\\n")}async function Wj1(J,X,Z){let Y=(Z.tag||X.release?.tagFormat||"v${version}").replace("${version}",J);await N0`git add package.json`,await N0`git commit -m "chore: release v${J}"`,await N0`git tag ${Y}`,await N0`git push origin main --tags`}async function Vj1(J,X){if(!(J.npm??X.release?.npm??!0))return;if((await v8()).private)throw Error("Cannot publish private package to npm");await N0`npm publish`}async function Kj1(J,X,Z){if(!(X.github??Z.release?.github??!0))return;let Q=`v${J}`,Y=await BV();try{await N0`gh --version`.quiet()}catch{console.warn("GitHub CLI not found, skipping GitHub release");return}await N0`gh release create ${Q} --title "Release ${Q}" --generate-notes`}async function BV(){return(await N0`git remote get-url origin`.text()).match(/github\.com[:/]([^\s/]+\/[^\s/]+?)(?:\.git)?(?:\s|$)/)?.[1]??"unknown/repo"}var Qj1;var $V=G0(()=>{$J();Qj1=Zj1({name:"release",description:"Create a release of your CLI",alias:"r",options:{version:U9(fJ.enum(["patch","minor","major"]).or(fJ.string()).optional(),{short:"v",description:"Version to release (patch/minor/major/x.y.z)"}),tag:U9(fJ.string().optional(),{short:"t",description:"Git tag format"}),npm:U9(fJ.boolean().optional(),{description:"Publish to npm"}),github:U9(fJ.boolean().optional(),{description:"Create GitHub release"}),dry:U9(fJ.boolean().default(!1),{short:"d",description:"Dry run - show what would be done"}),all:U9(fJ.boolean().default(!1),{description:"Release all packages (workspace mode)"})},handler:async({flags:J,prompt:X,spinner:Z,colors:Q})=>{let Y=await R0();try{if((await N0`git status --porcelain`.text()).trim()&&!J.dry)console.error(Q.red("Working directory is not clean. Please commit or stash changes first.")),process.exit(1)}catch{console.error(Q.red("Not a git repository")),process.exit(1)}if(J.all&&Y.workspace?.packages)await Hj1(J,Y,X,Z,Q);else await Yj1(J,Y,X,Z,Q)}})});var qV={};yJ(qV,{default:()=>Rj1});import{defineCommand as Uj1,option as B9}from"@bunli/core";import{z as R9}from"zod";import{spawn as Bj1}from"child_process";var Rj1;var FV=G0(()=>{Rj1=Uj1({name:"init",description:"Initialize a new Bunli CLI project",alias:"i",options:{name:B9(R9.string().optional(),{short:"n",description:"Project name"}),template:B9(R9.enum(["basic","advanced","monorepo"]).default("basic"),{short:"t",description:"Project template"}),dir:B9(R9.string().optional(),{short:"d",description:"Directory to create project in"}),git:B9(R9.boolean().default(!0),{short:"g",description:"Initialize git repository"}),install:B9(R9.boolean().default(!0),{description:"Install dependencies"}),"package-manager":B9(R9.enum(["bun","pnpm","yarn","npm"]).default("bun"),{short:"p",description:"Package manager to use"})},handler:async({flags:J,positional:X,colors:Z})=>{console.log(Z.cyan("\uD83D\uDE80 Creating new Bunli CLI project...")),console.log();let Q=["create-bunli"];if(X[0])Q.push(X[0]);else if(J.name)Q.push(J.name);if(J.template!=="basic")Q.push("--template",J.template);if(J.dir)Q.push("--dir",J.dir);if(!J.git)Q.push("--no-git");if(!J.install)Q.push("--no-install");if(J["package-manager"]!=="bun")Q.push("--package-manager",J["package-manager"]);console.log(Z.dim(`> bunx ${Q.join(" ")}`)),console.log();let Y=Bj1("bunx",Q,{stdio:"inherit",env:process.env});Y.on("exit",(H)=>{if(H===0){console.log(),console.log(Z.green("\uD83C\uDF89 Project created successfully!")),console.log(),console.log("Next steps:");let G=X[0]||J.name||"your-project";console.log(Z.gray(` cd ${G}`)),console.log(Z.gray(" bunli dev"))}else console.error(Z.red("Failed to create project")),process.exit(H||1)}),Y.on("error",(H)=>{console.error(Z.red("Failed to run create-bunli:"),H.message),console.log(),console.log("Make sure create-bunli is available:"),console.log(Z.gray(" bunx create-bunli --help")),process.exit(1)})}})});$J();import{createCLI as $j1}from"@bunli/core";var jV=await $j1({name:"bunli",version:"0.1.0",description:"The Bunli CLI toolchain for developing, building, and distributing CLIs"}),Nk1=await R0();await jV.load({dev:()=>Promise.resolve().then(() => (ZV(),XV)),build:()=>Promise.resolve().then(() => (YV(),QV)),generate:()=>Promise.resolve().then(() => (GV(),HV)),test:()=>Promise.resolve().then(() => (UV(),KV)),release:()=>Promise.resolve().then(() => ($V(),RV)),init:()=>Promise.resolve().then(() => (FV(),qV))});await jV.run();