@lemon-fe/vite-plugin-micro-frontend 1.0.3 → 1.0.4
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/index.d.ts +42 -2
- package/dist/index.js +13 -1
- package/dist/index.js.map +1 -1
- package/package.json +7 -3
package/dist/index.js
CHANGED
|
@@ -1,2 +1,14 @@
|
|
|
1
|
-
import*as e from"path";import t from"@originjs/vite-plugin-federation";import n from"vite-plugin-qiankun";import*as r from"fs";import*as o from"chokidar";import*as a from"prettier";function i(){return{name:"micro-frontend:html-transform",transformIndexHtml:e=>e.replace(/<script[^>]*>.*?<\/script>/s,"")}}const s=new Map;function u(e,t){if(!t||void 0===t.index)return!1;const n=t.index,r=e.substring(0,n),o=r.lastIndexOf("\n"),a=r.substring(o+1).indexOf("//");if(-1!==a){if(a<n-(o+1))return!0}let i=0;const s=/\/\*/g,u=/\*\//g;let c,l;s.lastIndex=0,u.lastIndex=0;const f=[];for(;null!==(c=s.exec(r));)f.push({index:c.index,type:"start"});for(;null!==(l=u.exec(r));)f.push({index:l.index,type:"end"});f.sort((e,t)=>e.index-t.index);for(const e of f)"start"===e.type?i++:i--;return i>0}function c(e){if(!e.endsWith(".tsx"))return!1;try{const t=r.readFileSync(e,"utf-8");return!!t.match(/export\s+default\s+(\w+)/)}catch{return!1}}function l(e){if(!c(e))return!1;const t=function(e){try{const t=r.readFileSync(e,"utf-8"),n=t.match(/export\s+default\s+(\w+)/);if(!n)return"";const o=n[1],a=t.match(new RegExp(`${o}\\.title\\s*=\\s*['"\`]([^'"\`]+)['"\`]`)),i=t.match(new RegExp(`${o}\\.keepAlive\\s*=\\s*(true|false)`)),s=t.match(new RegExp(`${o}\\.authority\\s*=\\s*\\[([^\\]]+)\\]`));return JSON.stringify({title:a&&!u(t,a)?a[1]:void 0,keepAlive:i&&!u(t,i)?i[1]:void 0,authority:s&&!u(t,s)?s[1]:void 0})}catch(t){return console.error("读取文件失败:",e,t),""}}(e),n=s.get(e);return(void 0===n||t!==n)&&(s.set(e,t),!0)}function f(t,n,o,a){const i=function(t,n){return e.relative(n,t).replace(/\\/g,"/")}(t,o),s=e.basename(t,e.extname(t)),c=r.readFileSync(t,"utf-8").match(/export\s+default\s+(\w+)/);if(s.startsWith("_")&&"_layout"!==s||!c)return null;let l=e.join(n,"index"===s||"_layout"===s?"":s);l=l.replace(/\\/g,"/"),l=l.startsWith("/")?l:`/${l}`,l=`${l}`,l=l.replace(/\[([^\]]+)\]/g,":$1");const f=`${a.pageAliasPrefix||"@/pages"}/${i.replace(/\\/g,"/")}`,{title:p,keepAlive:d,authority:y}=function(e){const t=r.readFileSync(e,"utf-8"),n=t.match(/export\s+default\s+(\w+)/);if(!n)return{};const o=n[1],a={},i=new RegExp(`${o}\\.title\\s*=\\s*['"\`]([^'"\`]+)['"\`]`),s=t.match(i);s&&!u(t,s)&&(a.title=s[1]);const c=new RegExp(`${o}\\.keepAlive\\s*=\\s*(true|false)`),l=t.match(c);l&&!u(t,l)&&(a.keepAlive="true"===l[1]);const f=new RegExp(`${o}\\.authority\\s*=\\s*\\[([^\\]]+)\\]`),p=t.match(f);return p&&!u(t,p)&&(a.authority=p[1].split(",").map(e=>e.trim().replace(/['"`]/g,"")).filter(Boolean)),a}(t),m={path:l,exact:!0,component:`dynamic({ loader: () => import('${f.replace(/.tsx$/g,"")}'), loading: LoadingComponent})`,title:p?`$t({ defaultMessage: "${p}" })`:void 0};return"_layout"===s&&(m.exact=!1),y&&(m.authority=y),"_layout"===s&&(m.routes=[]),d&&(m.keepAlive=!0),m}async function p(t,n){function o(e,t=2){const n=" ".repeat(t),r=" ".repeat(t+2);let a=`${n}{\n`;if(a+=`${r}path: '${e.path}',\n`,void 0!==e.exact&&null!==e.exact&&(a+=`${r}exact: ${e.exact},\n`),void 0!==e.component&&null!==e.component&&(a+=`${r}component: ${e.component},\n`),void 0!==e.title&&null!==e.title&&(a+=`${r}title: ${e.title},\n`),e.authority&&(a+=`${r}authority: ${JSON.stringify(e.authority)},\n`),e.keepAlive&&(a+=`${r}keepAlive: ${e.keepAlive},\n`),e.routes&&e.routes.length>0){a+=`${r}routes: [\n${e.routes.map(e=>o(e,t+2)).join(",\n")}\n${r}],\n`}return a=a.replace(/,\n$/,"\n"),a+=`${n}}`,a}const i=t.map(e=>o(e)).join(",\n"),s=`/**\n * 自动根据 pages 目录生成路由配置\n * 新增、删除、修改组件 title、keepAlive、authority 属性时,会自动更新路由配置\n * 路由组件只支持默认导出\n */\nimport { dynamic } from '@lemon-fe/vite-plugin-micro-frontend/runtime';\nimport LoadingComponent from '${n.defaultLoadingComponentPath||"@/components/loading"}';\nimport { $t } from '${n.intlPath||"@/utils/intl"}';\n\nexport const routers = [\n${i}\n];\n`;try{const t=e.resolve(process.cwd(),".prettierrc");let n={};if(r.existsSync(t))try{const e=r.readFileSync(t,"utf-8");n=JSON.parse(e)}catch(e){console.warn("⚠️ 读取 prettier 配置失败,使用默认配置:",e)}const o={parser:"typescript",...n};return await a.format(s,o)}catch(e){return console.error("格式化代码失败:",e),s}}function d(t={}){const{pagesDir:n,outputPath:a,watch:i=!0,ignoreDirs:u=["components","utils","hooks","typings"],routeTemplate:d={}}=t;let y=!1,m=null,h=!1;const v=n||e.resolve(process.cwd(),"src/pages"),g=a||e.resolve(process.cwd(),"src/routes.ts"),b=async()=>{if(!r.existsSync(v))return void console.warn("⚠️ pages 目录不存在:",v);const t=function(t,n){return function o(a,i=""){const s=r.readdirSync(a),u=[];let c=null;const l=s.find(e=>"_layout.tsx"===e);l&&(c=f(e.join(a,l),i,t,n),c&&(c.routes=[],u.push(c)));for(const l of s){const s=e.join(a,l),p=r.statSync(s);if("_layout.tsx"!==l)if(p.isDirectory()&&"components"!==l&&"utils"!==l&&"hooks"!==l){const t=o(s,e.join(i,l));t.length>0&&(c?c.routes.push(...t):u.push(...t))}else if(l.endsWith(".tsx")){const e=f(s,i,t,n);e&&(c?c.routes.push(e):u.push(e))}}return u}(t)}(v,d),n=await p(t,d);r.writeFileSync(g,n),console.log("✅ 路由已生成:",g)},_=()=>{m&&(m.close(),m=null,y=!1,s.clear())};return{name:"micro-frontend:routes",enforce:"pre",configureServer(e){h||(b(),h=!0),(()=>{if(y||!i)return;if(!r.existsSync(v))return;const e=["**/node_modules/**","**/*.d.ts","**/*.less","**/*.css","**/*.scss","**/*.sass",...u.map(e=>`**/${e}/**`)];m=o.watch(v,{ignored:e,persistent:!0,ignoreInitial:!0}),m.on("add",e=>{c(e)&&b()}).on("change",e=>{c(e)&&l(e)&&b()}).on("unlink",e=>{c(e)&&(s.delete(e),b())}).on("addDir",()=>{b()}).on("unlinkDir",()=>{b()}).on("error",e=>{console.error("❌ 文件监听错误:",e)}),y=!0})(),e.httpServer?.on("close",_)},buildStart(){h||(console.log("🚀 构建开始,生成路由文件..."),b(),h=!0)}}}function y(t){const{remotes:n,outputPath:o}=t,a=o||e.resolve(process.cwd(),"src/utils/mf.tsx"),i=()=>{const t=function(e){const t=JSON.stringify(e,null,2);return"/* eslint-disable */\nimport { lazy, Suspense, type ReactNode, type ComponentType } from 'react';\n\n// 远程模块配置\nconst remotes = __REMOTES_JSON__ as const;\n\ntype RemoteAlias = keyof typeof remotes;\ntype ModuleSpecifier = `${RemoteAlias}/${string}`;\n\n// 多个入口文件之间共享的变量\nconst entryShared = (window as any).__entry_shared__ || {};\n\n// 脚本加载状态: undefined=未加载, Promise=加载中, true=已完成\nconst scriptCache: Record<string, Promise<void> | true | undefined> = {};\n\n/**\n * 获取多入口共享变量(懒初始化单例)\n */\nexport function getEntryShared<T>(key: string, init: () => T): T {\n return (entryShared[key] ??= init()) as T;\n}\n\n/**\n * 安全加载远程组件\n */\nexport function safeRemoteComponent<T extends ComponentType<any>>(opts: {\n moduleSpecifier: ModuleSpecifier;\n fallbackComponent: T;\n loadingElement?: ReactNode;\n}): T {\n const LazyComponent = lazy<T>(() =>\n loadRemoteModule(opts.moduleSpecifier, { default: opts.fallbackComponent }),\n );\n\n return ((props: any) => (\n <Suspense fallback={opts.loadingElement ?? null}>\n <LazyComponent {...props} />\n </Suspense>\n )) as T;\n}\n\n// ============ 内部实现 ============\n\nasync function loadRemoteModule<T>(specifier: ModuleSpecifier, fallback: T): Promise<T> {\n try {\n const slashIndex = specifier.indexOf('/');\n const alias = specifier.slice(0, slashIndex) as RemoteAlias;\n const moduleName = specifier.slice(slashIndex + 1);\n const remote = remotes[alias];\n\n if (!remote) {\n console.error(`[MF] Unknown remote alias: \"${alias}\"`);\n return fallback;\n }\n\n await loadScriptOnce(remote.remoteName, remote.entry);\n\n const container = (window as any)[remote.remoteName];\n const factory = await container.get(`./${moduleName}`);\n return factory();\n } catch (e) {\n console.error(`[MF] Failed to load \"${specifier}\"`, e);\n return fallback;\n }\n}\n\nasync function loadScriptOnce(name: string, url: string): Promise<void> {\n const cached = scriptCache[name];\n\n if (cached === true) return;\n if (cached) return cached;\n\n const promise = new Promise<void>((resolve, reject) => {\n const script = document.createElement('script');\n script.src = `${url}?t=${Date.now()}`;\n script.async = true;\n script.onload = () => resolve();\n script.onerror = reject;\n document.head.appendChild(script);\n }).then(\n () => {\n scriptCache[name] = true;\n },\n e => {\n scriptCache[name] = undefined;\n throw e;\n },\n );\n\n scriptCache[name] = promise;\n return promise;\n}\n\n// ==== Vite Module Federation 动态加载 ===\n\ntype RemoteComponentOptions<P = any> = {\n /** 远程模块加载函数,如 () => import('remoteApp/Component') */\n loader: () => Promise<{ default: ComponentType<P> }>;\n /** 加载失败时的回退组件 */\n fallback?: ComponentType<P>;\n /** 加载中显示的元素 */\n loading?: ReactNode;\n};\n\n/**\n * 创建一个动态加载的远程联邦组件\n * @example\n * const RemoteButton = createRemoteComponent({\n * loader: () => import('remoteApp/Button'),\n * fallback: () => <div>加载失败</div>,\n * loading: <Spin />,\n * });\n */\nexport function createRemoteComponent<P extends object = {}>(\n options: RemoteComponentOptions<P>,\n): ComponentType<P> {\n const { loader, fallback: Fallback, loading = null } = options;\n\n const LazyComponent = lazy(() =>\n loader().catch(error => {\n console.error('Failed to load remote component:', error);\n if (Fallback) {\n return { default: Fallback };\n }\n throw error;\n }),\n );\n\n const RemoteWrapper: React.FC<P> = props => (\n <Suspense fallback={loading}>\n {/* @ts-expect-error: 类型不完全匹配,但实际可以正常渲染 */}\n <LazyComponent {...props} />\n </Suspense>\n );\n\n return RemoteWrapper as ComponentType<P>;\n}\n\n".replace("__REMOTES_JSON__",t)}(n),o=e.dirname(a);if(r.existsSync(o)||r.mkdirSync(o,{recursive:!0}),r.existsSync(a)){if(r.readFileSync(a,"utf-8")===t)return}r.writeFileSync(a,t),console.log("✅ mf.tsx 已生成:",a)};return{name:"micro-frontend:mf-generator",enforce:"pre",configResolved(){i()},buildStart(){i()}}}var m,h,v,g={exports:{}},b={};function _(){if(h)return m;h=1;var e=Object.getOwnPropertySymbols,t=Object.prototype.hasOwnProperty,n=Object.prototype.propertyIsEnumerable;return m=function(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(t).map(function(e){return t[e]}).join(""))return!1;var r={};return"abcdefghijklmnopqrst".split("").forEach(function(e){r[e]=e}),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},r)).join("")}catch(e){return!1}}()?Object.assign:function(r,o){for(var a,i,s=function(e){if(null==e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}(r),u=1;u<arguments.length;u++){for(var c in a=Object(arguments[u]))t.call(a,c)&&(s[c]=a[c]);if(e){i=e(a);for(var l=0;l<i.length;l++)n.call(a,i[l])&&(s[i[l]]=a[i[l]])}}return s},m}function w(){if(v)return b;v=1;var e=_(),t=60103,n=60106;b.Fragment=60107,b.StrictMode=60108,b.Profiler=60114;var r=60109,o=60110,a=60112;b.Suspense=60113;var i=60115,s=60116;if("function"==typeof Symbol&&Symbol.for){var u=Symbol.for;t=u("react.element"),n=u("react.portal"),b.Fragment=u("react.fragment"),b.StrictMode=u("react.strict_mode"),b.Profiler=u("react.profiler"),r=u("react.provider"),o=u("react.context"),a=u("react.forward_ref"),b.Suspense=u("react.suspense"),i=u("react.memo"),s=u("react.lazy")}var c="function"==typeof Symbol&&Symbol.iterator;function l(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n<arguments.length;n++)t+="&args[]="+encodeURIComponent(arguments[n]);return"Minified React error #"+e+"; visit "+t+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var f={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},p={};function d(e,t,n){this.props=e,this.context=t,this.refs=p,this.updater=n||f}function y(){}function m(e,t,n){this.props=e,this.context=t,this.refs=p,this.updater=n||f}d.prototype.isReactComponent={},d.prototype.setState=function(e,t){if("object"!=typeof e&&"function"!=typeof e&&null!=e)throw Error(l(85));this.updater.enqueueSetState(this,e,t,"setState")},d.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")},y.prototype=d.prototype;var h=m.prototype=new y;h.constructor=m,e(h,d.prototype),h.isPureReactComponent=!0;var g={current:null},w=Object.prototype.hasOwnProperty,k={key:!0,ref:!0,__self:!0,__source:!0};function S(e,n,r){var o,a={},i=null,s=null;if(null!=n)for(o in void 0!==n.ref&&(s=n.ref),void 0!==n.key&&(i=""+n.key),n)w.call(n,o)&&!k.hasOwnProperty(o)&&(a[o]=n[o]);var u=arguments.length-2;if(1===u)a.children=r;else if(1<u){for(var c=Array(u),l=0;l<u;l++)c[l]=arguments[l+2];a.children=c}if(e&&e.defaultProps)for(o in u=e.defaultProps)void 0===a[o]&&(a[o]=u[o]);return{$$typeof:t,type:e,key:i,ref:s,props:a,_owner:g.current}}function C(e){return"object"==typeof e&&null!==e&&e.$$typeof===t}var R=/\/+/g;function $(e,t){return"object"==typeof e&&null!==e&&null!=e.key?function(e){var t={"=":"=0",":":"=2"};return"$"+e.replace(/[=:]/g,function(e){return t[e]})}(""+e.key):t.toString(36)}function x(e,r,o,a,i){var s=typeof e;"undefined"!==s&&"boolean"!==s||(e=null);var u=!1;if(null===e)u=!0;else switch(s){case"string":case"number":u=!0;break;case"object":switch(e.$$typeof){case t:case n:u=!0}}if(u)return i=i(u=e),e=""===a?"."+$(u,0):a,Array.isArray(i)?(o="",null!=e&&(o=e.replace(R,"$&/")+"/"),x(i,r,o,"",function(e){return e})):null!=i&&(C(i)&&(i=function(e,n){return{$$typeof:t,type:e.type,key:n,ref:e.ref,props:e.props,_owner:e._owner}}(i,o+(!i.key||u&&u.key===i.key?"":(""+i.key).replace(R,"$&/")+"/")+e)),r.push(i)),1;if(u=0,a=""===a?".":a+":",Array.isArray(e))for(var f=0;f<e.length;f++){var p=a+$(s=e[f],f);u+=x(s,r,o,p,i)}else if(p=function(e){return null===e||"object"!=typeof e?null:"function"==typeof(e=c&&e[c]||e["@@iterator"])?e:null}(e),"function"==typeof p)for(e=p.call(e),f=0;!(s=e.next()).done;)u+=x(s=s.value,r,o,p=a+$(s,f++),i);else if("object"===s)throw r=""+e,Error(l(31,"[object Object]"===r?"object with keys {"+Object.keys(e).join(", ")+"}":r));return u}function j(e,t,n){if(null==e)return e;var r=[],o=0;return x(e,r,"","",function(e){return t.call(n,e,o++)}),r}function P(e){if(-1===e._status){var t=e._result;t=t(),e._status=0,e._result=t,t.then(function(t){0===e._status&&(t=t.default,e._status=1,e._result=t)},function(t){0===e._status&&(e._status=2,e._result=t)})}if(1===e._status)return e._result;throw e._result}var O={current:null};function E(){var e=O.current;if(null===e)throw Error(l(321));return e}var T={ReactCurrentDispatcher:O,ReactCurrentBatchConfig:{transition:0},ReactCurrentOwner:g,IsSomeRendererActing:{current:!1},assign:e};return b.Children={map:j,forEach:function(e,t,n){j(e,function(){t.apply(this,arguments)},n)},count:function(e){var t=0;return j(e,function(){t++}),t},toArray:function(e){return j(e,function(e){return e})||[]},only:function(e){if(!C(e))throw Error(l(143));return e}},b.Component=d,b.PureComponent=m,b.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=T,b.cloneElement=function(n,r,o){if(null==n)throw Error(l(267,n));var a=e({},n.props),i=n.key,s=n.ref,u=n._owner;if(null!=r){if(void 0!==r.ref&&(s=r.ref,u=g.current),void 0!==r.key&&(i=""+r.key),n.type&&n.type.defaultProps)var c=n.type.defaultProps;for(f in r)w.call(r,f)&&!k.hasOwnProperty(f)&&(a[f]=void 0===r[f]&&void 0!==c?c[f]:r[f])}var f=arguments.length-2;if(1===f)a.children=o;else if(1<f){c=Array(f);for(var p=0;p<f;p++)c[p]=arguments[p+2];a.children=c}return{$$typeof:t,type:n.type,key:i,ref:s,props:a,_owner:u}},b.createContext=function(e,t){return void 0===t&&(t=null),(e={$$typeof:o,_calculateChangedBits:t,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null}).Provider={$$typeof:r,_context:e},e.Consumer=e},b.createElement=S,b.createFactory=function(e){var t=S.bind(null,e);return t.type=e,t},b.createRef=function(){return{current:null}},b.forwardRef=function(e){return{$$typeof:a,render:e}},b.isValidElement=C,b.lazy=function(e){return{$$typeof:s,_payload:{_status:-1,_result:e},_init:P}},b.memo=function(e,t){return{$$typeof:i,type:e,compare:void 0===t?null:t}},b.useCallback=function(e,t){return E().useCallback(e,t)},b.useContext=function(e,t){return E().useContext(e,t)},b.useDebugValue=function(){},b.useEffect=function(e,t){return E().useEffect(e,t)},b.useImperativeHandle=function(e,t,n){return E().useImperativeHandle(e,t,n)},b.useLayoutEffect=function(e,t){return E().useLayoutEffect(e,t)},b.useMemo=function(e,t){return E().useMemo(e,t)},b.useReducer=function(e,t,n){return E().useReducer(e,t,n)},b.useRef=function(e){return E().useRef(e)},b.useState=function(e){return E().useState(e)},b.version="17.0.2",b}var k,S,C={};function R(){return k||(k=1,e=C,"production"!==process.env.NODE_ENV&&function(){var t=_(),n=60103,r=60106;e.Fragment=60107,e.StrictMode=60108,e.Profiler=60114;var o=60109,a=60110,i=60112;e.Suspense=60113;var s=60120,u=60115,c=60116,l=60121,f=60122,p=60117,d=60129,y=60131;if("function"==typeof Symbol&&Symbol.for){var m=Symbol.for;n=m("react.element"),r=m("react.portal"),e.Fragment=m("react.fragment"),e.StrictMode=m("react.strict_mode"),e.Profiler=m("react.profiler"),o=m("react.provider"),a=m("react.context"),i=m("react.forward_ref"),e.Suspense=m("react.suspense"),s=m("react.suspense_list"),u=m("react.memo"),c=m("react.lazy"),l=m("react.block"),f=m("react.server.block"),p=m("react.fundamental"),m("react.scope"),m("react.opaque.id"),d=m("react.debug_trace_mode"),m("react.offscreen"),y=m("react.legacy_hidden")}var h="function"==typeof Symbol&&Symbol.iterator;function v(e){if(null===e||"object"!=typeof e)return null;var t=h&&e[h]||e["@@iterator"];return"function"==typeof t?t:null}var g={current:null},b={current:null},w={},k=null;function S(e){k=e}w.setExtraStackFrame=function(e){k=e},w.getCurrentStack=null,w.getStackAddendum=function(){var e="";k&&(e+=k);var t=w.getCurrentStack;return t&&(e+=t()||""),e};var C={ReactCurrentDispatcher:g,ReactCurrentBatchConfig:{transition:0},ReactCurrentOwner:b,IsSomeRendererActing:{current:!1},assign:t};function R(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];x("warn",e,n)}function $(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];x("error",e,n)}function x(e,t,n){var r=C.ReactDebugCurrentFrame.getStackAddendum();""!==r&&(t+="%s",n=n.concat([r]));var o=n.map(function(e){return""+e});o.unshift("Warning: "+t),Function.prototype.apply.call(console[e],console,o)}C.ReactDebugCurrentFrame=w;var j={};function P(e,t){var n=e.constructor,r=n&&(n.displayName||n.name)||"ReactClass",o=r+"."+t;j[o]||($("Can't call %s on a component that is not yet mounted. This is a no-op, but it might indicate a bug in your application. Instead, assign to `this.state` directly or define a `state = {};` class property with the desired state in the %s component.",t,r),j[o]=!0)}var O={isMounted:function(e){return!1},enqueueForceUpdate:function(e,t,n){P(e,"forceUpdate")},enqueueReplaceState:function(e,t,n,r){P(e,"replaceState")},enqueueSetState:function(e,t,n,r){P(e,"setState")}},E={};function T(e,t,n){this.props=e,this.context=t,this.refs=E,this.updater=n||O}Object.freeze(E),T.prototype.isReactComponent={},T.prototype.setState=function(e,t){if("object"!=typeof e&&"function"!=typeof e&&null!=e)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")},T.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")};var D={isMounted:["isMounted","Instead, make sure to clean up subscriptions and pending requests in componentWillUnmount to prevent memory leaks."],replaceState:["replaceState","Refactor your code to use setState instead (see https://github.com/facebook/react/issues/3236)."]},F=function(e,t){Object.defineProperty(T.prototype,e,{get:function(){R("%s(...) is deprecated in plain JavaScript React classes. %s",t[0],t[1])}})};for(var N in D)D.hasOwnProperty(N)&&F(N,D[N]);function A(){}function I(e,t,n){this.props=e,this.context=t,this.refs=E,this.updater=n||O}A.prototype=T.prototype;var M=I.prototype=new A;function L(e){return e.displayName||"Context"}function z(t){if(null==t)return null;if("number"==typeof t.tag&&$("Received an unexpected object in getComponentName(). This is likely a bug in React. Please file an issue."),"function"==typeof t)return t.displayName||t.name||null;if("string"==typeof t)return t;switch(t){case e.Fragment:return"Fragment";case r:return"Portal";case e.Profiler:return"Profiler";case e.StrictMode:return"StrictMode";case e.Suspense:return"Suspense";case s:return"SuspenseList"}if("object"==typeof t)switch(t.$$typeof){case a:return L(t)+".Consumer";case o:return L(t._context)+".Provider";case i:return d=t,y=t.render,m="ForwardRef",h=y.displayName||y.name||"",d.displayName||(""!==h?m+"("+h+")":m);case u:return z(t.type);case l:return z(t._render);case c:var n=t,f=n._payload,p=n._init;try{return z(p(f))}catch(e){return null}}var d,y,m,h;return null}M.constructor=I,t(M,T.prototype),M.isPureReactComponent=!0;var U,q,V,W=Object.prototype.hasOwnProperty,B={key:!0,ref:!0,__self:!0,__source:!0};function Y(e){if(W.call(e,"ref")){var t=Object.getOwnPropertyDescriptor(e,"ref").get;if(t&&t.isReactWarning)return!1}return void 0!==e.ref}function H(e){if(W.call(e,"key")){var t=Object.getOwnPropertyDescriptor(e,"key").get;if(t&&t.isReactWarning)return!1}return void 0!==e.key}V={};var J=function(e,t,r,o,a,i,s){var u={$$typeof:n,type:e,key:t,ref:r,props:s,_owner:i,_store:{}};return Object.defineProperty(u._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(u,"_self",{configurable:!1,enumerable:!1,writable:!1,value:o}),Object.defineProperty(u,"_source",{configurable:!1,enumerable:!1,writable:!1,value:a}),Object.freeze&&(Object.freeze(u.props),Object.freeze(u)),u};function X(e,t,n){var r,o={},a=null,i=null,s=null,u=null;if(null!=t)for(r in Y(t)&&(i=t.ref,function(e){if("string"==typeof e.ref&&b.current&&e.__self&&b.current.stateNode!==e.__self){var t=z(b.current.type);V[t]||($('Component "%s" contains the string ref "%s". Support for string refs will be removed in a future major release. This case cannot be automatically converted to an arrow function. We ask you to manually fix this case by using useRef() or createRef() instead. Learn more about using refs safely here: https://reactjs.org/link/strict-mode-string-ref',t,e.ref),V[t]=!0)}}(t)),H(t)&&(a=""+t.key),s=void 0===t.__self?null:t.__self,u=void 0===t.__source?null:t.__source,t)W.call(t,r)&&!B.hasOwnProperty(r)&&(o[r]=t[r]);var c=arguments.length-2;if(1===c)o.children=n;else if(c>1){for(var l=Array(c),f=0;f<c;f++)l[f]=arguments[f+2];Object.freeze&&Object.freeze(l),o.children=l}if(e&&e.defaultProps){var p=e.defaultProps;for(r in p)void 0===o[r]&&(o[r]=p[r])}if(a||i){var d="function"==typeof e?e.displayName||e.name||"Unknown":e;a&&function(e,t){var n=function(){U||(U=!0,$("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",t))};n.isReactWarning=!0,Object.defineProperty(e,"key",{get:n,configurable:!0})}(o,d),i&&function(e,t){var n=function(){q||(q=!0,$("%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",t))};n.isReactWarning=!0,Object.defineProperty(e,"ref",{get:n,configurable:!0})}(o,d)}return J(e,a,i,s,u,b.current,o)}function K(e,n,r){if(null==e)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+e+".");var o,a,i=t({},e.props),s=e.key,u=e.ref,c=e._self,l=e._source,f=e._owner;if(null!=n)for(o in Y(n)&&(u=n.ref,f=b.current),H(n)&&(s=""+n.key),e.type&&e.type.defaultProps&&(a=e.type.defaultProps),n)W.call(n,o)&&!B.hasOwnProperty(o)&&(void 0===n[o]&&void 0!==a?i[o]=a[o]:i[o]=n[o]);var p=arguments.length-2;if(1===p)i.children=r;else if(p>1){for(var d=Array(p),y=0;y<p;y++)d[y]=arguments[y+2];i.children=d}return J(e.type,s,u,c,l,f,i)}function G(e){return"object"==typeof e&&null!==e&&e.$$typeof===n}var Q=!1,Z=/\/+/g;function ee(e){return e.replace(Z,"$&/")}function te(e,t){return"object"==typeof e&&null!==e&&null!=e.key?(n=""+e.key,r={"=":"=0",":":"=2"},"$"+n.replace(/[=:]/g,function(e){return r[e]})):t.toString(36);var n,r}function ne(e,t,o,a,i){var s=typeof e;"undefined"!==s&&"boolean"!==s||(e=null);var u,c,l,f=!1;if(null===e)f=!0;else switch(s){case"string":case"number":f=!0;break;case"object":switch(e.$$typeof){case n:case r:f=!0}}if(f){var p=e,d=i(p),y=""===a?"."+te(p,0):a;if(Array.isArray(d)){var m="";null!=y&&(m=ee(y)+"/"),ne(d,t,m,"",function(e){return e})}else null!=d&&(G(d)&&(u=d,c=o+(!d.key||p&&p.key===d.key?"":ee(""+d.key)+"/")+y,d=J(u.type,c,u.ref,u._self,u._source,u._owner,u.props)),t.push(d));return 1}var h=0,g=""===a?".":a+":";if(Array.isArray(e))for(var b=0;b<e.length;b++)h+=ne(l=e[b],t,o,g+te(l,b),i);else{var _=v(e);if("function"==typeof _){var w=e;_===w.entries&&(Q||R("Using Maps as children is not supported. Use an array of keyed ReactElements instead."),Q=!0);for(var k,S=_.call(w),C=0;!(k=S.next()).done;)h+=ne(l=k.value,t,o,g+te(l,C++),i)}else if("object"===s){var $=""+e;throw Error("Objects are not valid as a React child (found: "+("[object Object]"===$?"object with keys {"+Object.keys(e).join(", ")+"}":$)+"). If you meant to render a collection of children, use an array instead.")}}return h}function re(e,t,n){if(null==e)return e;var r=[],o=0;return ne(e,r,"","",function(e){return t.call(n,e,o++)}),r}function oe(e){if(-1===e._status){var t=(0,e._result)(),n=e;n._status=0,n._result=t,t.then(function(t){if(0===e._status){var n=t.default;void 0===n&&$("lazy: Expected the result of a dynamic import() call. Instead received: %s\n\nYour code should look like: \n const MyComponent = lazy(() => import('./MyComponent'))",t);var r=e;r._status=1,r._result=n}},function(t){if(0===e._status){var n=e;n._status=2,n._result=t}})}if(1===e._status)return e._result;throw e._result}function ae(t){return"string"==typeof t||"function"==typeof t||t===e.Fragment||t===e.Profiler||t===d||t===e.StrictMode||t===e.Suspense||t===s||t===y||"object"==typeof t&&null!==t&&(t.$$typeof===c||t.$$typeof===u||t.$$typeof===o||t.$$typeof===a||t.$$typeof===i||t.$$typeof===p||t.$$typeof===l||t[0]===f)}function ie(){var e=g.current;if(null===e)throw Error("Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:\n1. You might have mismatching versions of React and the renderer (such as React DOM)\n2. You might be breaking the Rules of Hooks\n3. You might have more than one copy of React in the same app\nSee https://reactjs.org/link/invalid-hook-call for tips about how to debug and fix this problem.");return e}var se,ue,ce,le,fe,pe,de,ye=0;function me(){}me.__reactDisabledLog=!0;var he,ve=C.ReactCurrentDispatcher;function ge(e,t,n){if(void 0===he)try{throw Error()}catch(e){var r=e.stack.trim().match(/\n( *(at )?)/);he=r&&r[1]||""}return"\n"+he+e}var be,_e=!1,we="function"==typeof WeakMap?WeakMap:Map;function ke(e,n){if(!e||_e)return"";var r,o=be.get(e);if(void 0!==o)return o;_e=!0;var a,i=Error.prepareStackTrace;Error.prepareStackTrace=void 0,a=ve.current,ve.current=null,function(){if(0===ye){se=console.log,ue=console.info,ce=console.warn,le=console.error,fe=console.group,pe=console.groupCollapsed,de=console.groupEnd;var e={configurable:!0,enumerable:!0,value:me,writable:!0};Object.defineProperties(console,{info:e,log:e,warn:e,error:e,group:e,groupCollapsed:e,groupEnd:e})}ye++}();try{if(n){var s=function(){throw Error()};if(Object.defineProperty(s.prototype,"props",{set:function(){throw Error()}}),"object"==typeof Reflect&&Reflect.construct){try{Reflect.construct(s,[])}catch(e){r=e}Reflect.construct(e,[],s)}else{try{s.call()}catch(e){r=e}e.call(s.prototype)}}else{try{throw Error()}catch(e){r=e}e()}}catch(t){if(t&&r&&"string"==typeof t.stack){for(var u=t.stack.split("\n"),c=r.stack.split("\n"),l=u.length-1,f=c.length-1;l>=1&&f>=0&&u[l]!==c[f];)f--;for(;l>=1&&f>=0;l--,f--)if(u[l]!==c[f]){if(1!==l||1!==f)do{if(l--,--f<0||u[l]!==c[f]){var p="\n"+u[l].replace(" at new "," at ");return"function"==typeof e&&be.set(e,p),p}}while(l>=1&&f>=0);break}}}finally{_e=!1,ve.current=a,function(){if(0===--ye){var e={configurable:!0,enumerable:!0,writable:!0};Object.defineProperties(console,{log:t({},e,{value:se}),info:t({},e,{value:ue}),warn:t({},e,{value:ce}),error:t({},e,{value:le}),group:t({},e,{value:fe}),groupCollapsed:t({},e,{value:pe}),groupEnd:t({},e,{value:de})})}ye<0&&$("disabledDepth fell below zero. This is a bug in React. Please file an issue.")}(),Error.prepareStackTrace=i}var d=e?e.displayName||e.name:"",y=d?ge(d):"";return"function"==typeof e&&be.set(e,y),y}function Se(e,t,n){return ke(e,!1)}function Ce(t,n,r){if(null==t)return"";if("function"==typeof t)return ke(t,function(e){var t=e.prototype;return!(!t||!t.isReactComponent)}(t));if("string"==typeof t)return ge(t);switch(t){case e.Suspense:return ge("Suspense");case s:return ge("SuspenseList")}if("object"==typeof t)switch(t.$$typeof){case i:return Se(t.render);case u:return Ce(t.type,n,r);case l:return Se(t._render);case c:var o=t,a=o._payload,f=o._init;try{return Ce(f(a),n,r)}catch(e){}}return""}be=new we;var Re,$e={},xe=C.ReactDebugCurrentFrame;function je(e){if(e){var t=e._owner,n=Ce(e.type,e._source,t?t.type:null);xe.setExtraStackFrame(n)}else xe.setExtraStackFrame(null)}function Pe(e){if(e){var t=e._owner;S(Ce(e.type,e._source,t?t.type:null))}else S(null)}function Oe(){if(b.current){var e=z(b.current.type);if(e)return"\n\nCheck the render method of `"+e+"`."}return""}Re=!1;var Ee={};function Te(e,t){if(e._store&&!e._store.validated&&null==e.key){e._store.validated=!0;var n=function(e){var t=Oe();if(!t){var n="string"==typeof e?e:e.displayName||e.name;n&&(t="\n\nCheck the top-level render call using <"+n+">.")}return t}(t);if(!Ee[n]){Ee[n]=!0;var r="";e&&e._owner&&e._owner!==b.current&&(r=" It was passed a child from "+z(e._owner.type)+"."),Pe(e),$('Each child in a list should have a unique "key" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',n,r),Pe(null)}}}function De(e,t){if("object"==typeof e)if(Array.isArray(e))for(var n=0;n<e.length;n++){var r=e[n];G(r)&&Te(r,t)}else if(G(e))e._store&&(e._store.validated=!0);else if(e){var o=v(e);if("function"==typeof o&&o!==e.entries)for(var a,i=o.call(e);!(a=i.next()).done;)G(a.value)&&Te(a.value,t)}}function Fe(e){var t,n=e.type;if(null!=n&&"string"!=typeof n){if("function"==typeof n)t=n.propTypes;else{if("object"!=typeof n||n.$$typeof!==i&&n.$$typeof!==u)return;t=n.propTypes}if(t){var r=z(n);!function(e,t,n,r,o){var a=Function.call.bind(Object.prototype.hasOwnProperty);for(var i in e)if(a(e,i)){var s=void 0;try{if("function"!=typeof e[i]){var u=Error((r||"React class")+": "+n+" type `"+i+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+typeof e[i]+"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");throw u.name="Invariant Violation",u}s=e[i](t,i,r,n,null,"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED")}catch(e){s=e}!s||s instanceof Error||(je(o),$("%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).",r||"React class",n,i,typeof s),je(null)),s instanceof Error&&!(s.message in $e)&&($e[s.message]=!0,je(o),$("Failed %s type: %s",n,s.message),je(null))}}(t,e.props,"prop",r,e)}else void 0===n.PropTypes||Re||(Re=!0,$("Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?",z(n)||"Unknown"));"function"!=typeof n.getDefaultProps||n.getDefaultProps.isReactClassApproved||$("getDefaultProps is only used on classic React.createClass definitions. Use a static property named `defaultProps` instead.")}}function Ne(t,r,o){var a,i,s=ae(t);if(!s){var u="";(void 0===t||"object"==typeof t&&null!==t&&0===Object.keys(t).length)&&(u+=" You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports.");var c,l=null!=(a=r)&&void 0!==(i=a.__source)?"\n\nCheck your code at "+i.fileName.replace(/^.*[\\\/]/,"")+":"+i.lineNumber+".":"";u+=l||Oe(),null===t?c="null":Array.isArray(t)?c="array":void 0!==t&&t.$$typeof===n?(c="<"+(z(t.type)||"Unknown")+" />",u=" Did you accidentally export a JSX literal instead of a component?"):c=typeof t,$("React.createElement: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s",c,u)}var f=X.apply(this,arguments);if(null==f)return f;if(s)for(var p=2;p<arguments.length;p++)De(arguments[p],t);return t===e.Fragment?function(e){for(var t=Object.keys(e.props),n=0;n<t.length;n++){var r=t[n];if("children"!==r&&"key"!==r){Pe(e),$("Invalid prop `%s` supplied to `React.Fragment`. React.Fragment can only have `key` and `children` props.",r),Pe(null);break}}null!==e.ref&&(Pe(e),$("Invalid attribute `ref` supplied to `React.Fragment`."),Pe(null))}(f):Fe(f),f}var Ae=!1;try{var Ie=Object.freeze({});new Map([[Ie,null]]),new Set([Ie])}catch(e){}var Me=Ne,Le=function(e,t,n){for(var r=K.apply(this,arguments),o=2;o<arguments.length;o++)De(arguments[o],r.type);return Fe(r),r},ze=function(e){var t=Ne.bind(null,e);return t.type=e,Ae||(Ae=!0,R("React.createFactory() is deprecated and will be removed in a future major release. Consider using JSX or use React.createElement() directly instead.")),Object.defineProperty(t,"type",{enumerable:!1,get:function(){return R("Factory.type is deprecated. Access the class directly before passing it to createFactory."),Object.defineProperty(this,"type",{value:e}),e}}),t},Ue={map:re,forEach:function(e,t,n){re(e,function(){t.apply(this,arguments)},n)},count:function(e){var t=0;return re(e,function(){t++}),t},toArray:function(e){return re(e,function(e){return e})||[]},only:function(e){if(!G(e))throw Error("React.Children.only expected to receive a single React element child.");return e}};e.Children=Ue,e.Component=T,e.PureComponent=I,e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=C,e.cloneElement=Le,e.createContext=function(e,t){void 0===t?t=null:null!==t&&"function"!=typeof t&&$("createContext: Expected the optional second argument to be a function. Instead received: %s",t);var n={$$typeof:a,_calculateChangedBits:t,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null};n.Provider={$$typeof:o,_context:n};var r=!1,i=!1,s=!1,u={$$typeof:a,_context:n,_calculateChangedBits:n._calculateChangedBits};return Object.defineProperties(u,{Provider:{get:function(){return i||(i=!0,$("Rendering <Context.Consumer.Provider> is not supported and will be removed in a future major release. Did you mean to render <Context.Provider> instead?")),n.Provider},set:function(e){n.Provider=e}},_currentValue:{get:function(){return n._currentValue},set:function(e){n._currentValue=e}},_currentValue2:{get:function(){return n._currentValue2},set:function(e){n._currentValue2=e}},_threadCount:{get:function(){return n._threadCount},set:function(e){n._threadCount=e}},Consumer:{get:function(){return r||(r=!0,$("Rendering <Context.Consumer.Consumer> is not supported and will be removed in a future major release. Did you mean to render <Context.Consumer> instead?")),n.Consumer}},displayName:{get:function(){return n.displayName},set:function(e){s||(R("Setting `displayName` on Context.Consumer has no effect. You should set it directly on the context with Context.displayName = '%s'.",e),s=!0)}}}),n.Consumer=u,n._currentRenderer=null,n._currentRenderer2=null,n},e.createElement=Me,e.createFactory=ze,e.createRef=function(){var e={current:null};return Object.seal(e),e},e.forwardRef=function(e){null!=e&&e.$$typeof===u?$("forwardRef requires a render function but received a `memo` component. Instead of forwardRef(memo(...)), use memo(forwardRef(...))."):"function"!=typeof e?$("forwardRef requires a render function but was given %s.",null===e?"null":typeof e):0!==e.length&&2!==e.length&&$("forwardRef render functions accept exactly two parameters: props and ref. %s",1===e.length?"Did you forget to use the ref parameter?":"Any additional parameter will be undefined."),null!=e&&(null==e.defaultProps&&null==e.propTypes||$("forwardRef render functions do not support propTypes or defaultProps. Did you accidentally pass a React component?"));var t,n={$$typeof:i,render:e};return Object.defineProperty(n,"displayName",{enumerable:!1,configurable:!0,get:function(){return t},set:function(n){t=n,null==e.displayName&&(e.displayName=n)}}),n},e.isValidElement=G,e.lazy=function(e){var t,n,r={$$typeof:c,_payload:{_status:-1,_result:e},_init:oe};return Object.defineProperties(r,{defaultProps:{configurable:!0,get:function(){return t},set:function(e){$("React.lazy(...): It is not supported to assign `defaultProps` to a lazy component import. Either specify them where the component is defined, or create a wrapping component around it."),t=e,Object.defineProperty(r,"defaultProps",{enumerable:!0})}},propTypes:{configurable:!0,get:function(){return n},set:function(e){$("React.lazy(...): It is not supported to assign `propTypes` to a lazy component import. Either specify them where the component is defined, or create a wrapping component around it."),n=e,Object.defineProperty(r,"propTypes",{enumerable:!0})}}}),r},e.memo=function(e,t){ae(e)||$("memo: The first argument must be a component. Instead received: %s",null===e?"null":typeof e);var n,r={$$typeof:u,type:e,compare:void 0===t?null:t};return Object.defineProperty(r,"displayName",{enumerable:!1,configurable:!0,get:function(){return n},set:function(t){n=t,null==e.displayName&&(e.displayName=t)}}),r},e.useCallback=function(e,t){return ie().useCallback(e,t)},e.useContext=function(e,t){var n=ie();if(void 0!==t&&$("useContext() second argument is reserved for future use in React. Passing it is not supported. You passed: %s.%s",t,"number"==typeof t&&Array.isArray(arguments[2])?"\n\nDid you call array.map(useContext)? Calling Hooks inside a loop is not supported. Learn more at https://reactjs.org/link/rules-of-hooks":""),void 0!==e._context){var r=e._context;r.Consumer===e?$("Calling useContext(Context.Consumer) is not supported, may cause bugs, and will be removed in a future major release. Did you mean to call useContext(Context) instead?"):r.Provider===e&&$("Calling useContext(Context.Provider) is not supported. Did you mean to call useContext(Context) instead?")}return n.useContext(e,t)},e.useDebugValue=function(e,t){return ie().useDebugValue(e,t)},e.useEffect=function(e,t){return ie().useEffect(e,t)},e.useImperativeHandle=function(e,t,n){return ie().useImperativeHandle(e,t,n)},e.useLayoutEffect=function(e,t){return ie().useLayoutEffect(e,t)},e.useMemo=function(e,t){return ie().useMemo(e,t)},e.useReducer=function(e,t,n){return ie().useReducer(e,t,n)},e.useRef=function(e){return ie().useRef(e)},e.useState=function(e){return ie().useState(e)},e.version="17.0.2"}()),C;var e}var $=(S||(S=1,"production"===process.env.NODE_ENV?g.exports=w():g.exports=R()),g.exports);const x=new Map;function j(e){return async()=>{try{return await e()}catch(e){if(!(e instanceof Error&&function(e){return e.message?.includes("Failed to fetch dynamically imported module")||e.message?.includes("Loading chunk")||e.message?.includes("Loading CSS chunk")||"ChunkLoadError"===e.name}(e)))throw e;const t=function(e){const t=e.message?.match(/module:\s*(https?:\/\/[^\s]+)/);return t?t[1]:null}(e);if(!t)throw e;const n=function(e){const t=new URL(e),n=t.pathname.split("/");return n.pop(),"assets"===n[n.length-1]&&n.pop(),`${t.origin}${n.join("/")}`}(t),r=function(e,t){try{const n=new URL(e),r=new URL(t);return n.pathname.slice(r.pathname.length).replace(/^\//,"")}catch{return null}}(t,n);if(!r)throw e;const o=x.get(n);let a=null;o&&(a=function(e,t){for(const[n,r]of Object.entries(e))if(r.file===t||`assets/${r.file}`===t||r.file===`assets/${t}`)return n;return null}(o,r));const i=await async function(e,t=!1){if(!t&&x.has(e))return x.get(e);const n=`${e}/.vite/manifest.json?t=${Date.now()}`,r=await fetch(n);if(!r.ok)throw new Error(`获取 manifest 失败: ${r.status} - ${n}`);const o=await r.json();return t||x.set(e,o),o}(n,!0);if(!a)return console.warn("[dynamic] 无法映射 chunk,提示用户刷新页面:",r),alert("系统已更新,请刷新页面以获取最新版本。"),void window.location.reload();const s=function(e,t,n){const r=e[t];return r?`${n}/${r.file}`:null}(i,a,n);return s?import(s):(console.warn('[dynamic] 无法在新 manifest 中找到 "${manifestKey}" 对应的 chunk'),alert("系统已更新,请刷新页面以获取最新版本。"),void window.location.reload())}}}function P(e){const t=$.lazy(j(e.loader)),n=e.loading;return function(e){return $.createElement($.Suspense,{fallback:n?$.createElement(n):null},$.createElement(t,e))}}const O={pagesDir:"src/pages",outputPath:"src/routes.ts",watch:!0,ignoreDirs:["components","utils","hooks","typings"],routeTemplate:{defaultLoadingComponentPath:"@/components/loading",intlPath:"@/utils/intl"}};function E(r){const{appName:o,useDevMode:a="development"===process.env.NODE_ENV,federation:i,routes:s,htmlTransform:u=!0,qiankun:c}=r,l=[];a&&u&&l.push({name:"micro-frontend:html-transform",transformIndexHtml:e=>e.replace(/<script[^>]*>.*?<\/script>/s,"")});const f="object"==typeof s?Object.assign(O,s):O;if(l.push(d({pagesDir:f.pagesDir?e.resolve(process.cwd(),f.pagesDir):void 0,outputPath:f.outputPath?e.resolve(process.cwd(),f.outputPath):void 0,watch:f.watch,ignoreDirs:f.ignoreDirs,routeTemplate:f.routeTemplate})),!1!==c?.enabled){const e=c?.name||o;l.push(n(e,{useDevMode:a}))}return i&&(l.push(t({name:i.name,filename:i.filename||"remote.js",exposes:i.exposes||{},shared:i.shared})),i.remotes&&l.push(y({remotes:i.remotes,outputPath:i.outputPath?e.resolve(process.cwd(),i.outputPath):"src/utils/mf.tsx"}))),l}function T(t){return{"@@/mf":t||e.resolve(process.cwd(),"./src/utils/mf.tsx")}}export{T as createMfAlias,P as dynamic,i as htmlRemoveFreshPlugin,y as mfGeneratorPlugin,E as microFrontendPlugins,d as pagesRoutesPlugin};
|
|
1
|
+
import*as e from"path";import{join as t,basename as n,extname as r,relative as i}from"path";import s from"@originjs/vite-plugin-federation";import a from"vite-plugin-qiankun";import*as o from"fs";import{existsSync as l,readdirSync as c,statSync as p,readFileSync as u}from"fs";import*as h from"chokidar";import*as d from"prettier";import f from"tty";import m from"util";import y from"assert";function T(){return{name:"micro-frontend:html-transform",transformIndexHtml:e=>e.replace(/<script[^>]*>.*?<\/script>/s,"")}}var g="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function x(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var S,b={},P={},E={},v={},A={},C={};function w(){if(S)return C;return S=1,Object.defineProperty(C,"__esModule",{value:!0}),C.default=function(e,t){const n=Object.keys(t);for(const r of n)if(e[r]!==t[r])return!1;return!0},C}var I,k,N,O,_,D={};function L(){if(I)return D;I=1,Object.defineProperty(D,"__esModule",{value:!0}),D.default=function(t,n,r="",i=t){if(e.has(i))return;e.add(i);const{internal:s,trace:a}=function(e,t){const{stackTraceLimit:n,prepareStackTrace:r}=Error;let i;if(Error.stackTraceLimit=1+e+t,Error.prepareStackTrace=function(e,t){i=t},(new Error).stack,Error.stackTraceLimit=n,Error.prepareStackTrace=r,!i)return{internal:!1,trace:""};const s=i.slice(1+e,1+e+t);return{internal:/[\\/]@babel[\\/]/.test(s[1].getFileName()),trace:s.map(e=>` at ${e}`).join("\n")}}(1,2);if(s)return;console.warn(`${r}\`${t}\` has been deprecated, please migrate to \`${n}\`\n${a}`)};const e=new Set;return D}function M(){if(k)return A;k=1,Object.defineProperty(A,"__esModule",{value:!0}),A.isAccessor=function(t,n){if(!t)return!1;if("ClassAccessorProperty"!==t.type)return!1;return null==n||(0,e.default)(t,n)},A.isAnyTypeAnnotation=function(t,n){return!!t&&("AnyTypeAnnotation"===t.type&&(null==n||(0,e.default)(t,n)))},A.isArgumentPlaceholder=function(t,n){return!!t&&("ArgumentPlaceholder"===t.type&&(null==n||(0,e.default)(t,n)))},A.isArrayExpression=function(t,n){return!!t&&("ArrayExpression"===t.type&&(null==n||(0,e.default)(t,n)))},A.isArrayPattern=function(t,n){return!!t&&("ArrayPattern"===t.type&&(null==n||(0,e.default)(t,n)))},A.isArrayTypeAnnotation=function(t,n){return!!t&&("ArrayTypeAnnotation"===t.type&&(null==n||(0,e.default)(t,n)))},A.isArrowFunctionExpression=function(t,n){return!!t&&("ArrowFunctionExpression"===t.type&&(null==n||(0,e.default)(t,n)))},A.isAssignmentExpression=function(t,n){return!!t&&("AssignmentExpression"===t.type&&(null==n||(0,e.default)(t,n)))},A.isAssignmentPattern=function(t,n){return!!t&&("AssignmentPattern"===t.type&&(null==n||(0,e.default)(t,n)))},A.isAwaitExpression=function(t,n){return!!t&&("AwaitExpression"===t.type&&(null==n||(0,e.default)(t,n)))},A.isBigIntLiteral=function(t,n){return!!t&&("BigIntLiteral"===t.type&&(null==n||(0,e.default)(t,n)))},A.isBinary=function(t,n){if(!t)return!1;switch(t.type){case"BinaryExpression":case"LogicalExpression":break;default:return!1}return null==n||(0,e.default)(t,n)},A.isBinaryExpression=function(t,n){return!!t&&("BinaryExpression"===t.type&&(null==n||(0,e.default)(t,n)))},A.isBindExpression=function(t,n){return!!t&&("BindExpression"===t.type&&(null==n||(0,e.default)(t,n)))},A.isBlock=function(t,n){if(!t)return!1;switch(t.type){case"BlockStatement":case"Program":case"TSModuleBlock":break;case"Placeholder":if("BlockStatement"===t.expectedNode)break;default:return!1}return null==n||(0,e.default)(t,n)},A.isBlockParent=function(t,n){if(!t)return!1;switch(t.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("BlockStatement"===t.expectedNode)break;default:return!1}return null==n||(0,e.default)(t,n)},A.isBlockStatement=function(t,n){return!!t&&("BlockStatement"===t.type&&(null==n||(0,e.default)(t,n)))},A.isBooleanLiteral=function(t,n){return!!t&&("BooleanLiteral"===t.type&&(null==n||(0,e.default)(t,n)))},A.isBooleanLiteralTypeAnnotation=function(t,n){return!!t&&("BooleanLiteralTypeAnnotation"===t.type&&(null==n||(0,e.default)(t,n)))},A.isBooleanTypeAnnotation=function(t,n){return!!t&&("BooleanTypeAnnotation"===t.type&&(null==n||(0,e.default)(t,n)))},A.isBreakStatement=function(t,n){return!!t&&("BreakStatement"===t.type&&(null==n||(0,e.default)(t,n)))},A.isCallExpression=function(t,n){return!!t&&("CallExpression"===t.type&&(null==n||(0,e.default)(t,n)))},A.isCatchClause=function(t,n){return!!t&&("CatchClause"===t.type&&(null==n||(0,e.default)(t,n)))},A.isClass=function(t,n){if(!t)return!1;switch(t.type){case"ClassExpression":case"ClassDeclaration":break;default:return!1}return null==n||(0,e.default)(t,n)},A.isClassAccessorProperty=function(t,n){return!!t&&("ClassAccessorProperty"===t.type&&(null==n||(0,e.default)(t,n)))},A.isClassBody=function(t,n){return!!t&&("ClassBody"===t.type&&(null==n||(0,e.default)(t,n)))},A.isClassDeclaration=function(t,n){return!!t&&("ClassDeclaration"===t.type&&(null==n||(0,e.default)(t,n)))},A.isClassExpression=function(t,n){return!!t&&("ClassExpression"===t.type&&(null==n||(0,e.default)(t,n)))},A.isClassImplements=function(t,n){return!!t&&("ClassImplements"===t.type&&(null==n||(0,e.default)(t,n)))},A.isClassMethod=function(t,n){return!!t&&("ClassMethod"===t.type&&(null==n||(0,e.default)(t,n)))},A.isClassPrivateMethod=function(t,n){return!!t&&("ClassPrivateMethod"===t.type&&(null==n||(0,e.default)(t,n)))},A.isClassPrivateProperty=function(t,n){return!!t&&("ClassPrivateProperty"===t.type&&(null==n||(0,e.default)(t,n)))},A.isClassProperty=function(t,n){return!!t&&("ClassProperty"===t.type&&(null==n||(0,e.default)(t,n)))},A.isCompletionStatement=function(t,n){if(!t)return!1;switch(t.type){case"BreakStatement":case"ContinueStatement":case"ReturnStatement":case"ThrowStatement":break;default:return!1}return null==n||(0,e.default)(t,n)},A.isConditional=function(t,n){if(!t)return!1;switch(t.type){case"ConditionalExpression":case"IfStatement":break;default:return!1}return null==n||(0,e.default)(t,n)},A.isConditionalExpression=function(t,n){return!!t&&("ConditionalExpression"===t.type&&(null==n||(0,e.default)(t,n)))},A.isContinueStatement=function(t,n){return!!t&&("ContinueStatement"===t.type&&(null==n||(0,e.default)(t,n)))},A.isDebuggerStatement=function(t,n){return!!t&&("DebuggerStatement"===t.type&&(null==n||(0,e.default)(t,n)))},A.isDecimalLiteral=function(t,n){return!!t&&("DecimalLiteral"===t.type&&(null==n||(0,e.default)(t,n)))},A.isDeclaration=function(t,n){if(!t)return!1;switch(t.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("Declaration"===t.expectedNode)break;default:return!1}return null==n||(0,e.default)(t,n)},A.isDeclareClass=function(t,n){return!!t&&("DeclareClass"===t.type&&(null==n||(0,e.default)(t,n)))},A.isDeclareExportAllDeclaration=function(t,n){return!!t&&("DeclareExportAllDeclaration"===t.type&&(null==n||(0,e.default)(t,n)))},A.isDeclareExportDeclaration=function(t,n){return!!t&&("DeclareExportDeclaration"===t.type&&(null==n||(0,e.default)(t,n)))},A.isDeclareFunction=function(t,n){return!!t&&("DeclareFunction"===t.type&&(null==n||(0,e.default)(t,n)))},A.isDeclareInterface=function(t,n){return!!t&&("DeclareInterface"===t.type&&(null==n||(0,e.default)(t,n)))},A.isDeclareModule=function(t,n){return!!t&&("DeclareModule"===t.type&&(null==n||(0,e.default)(t,n)))},A.isDeclareModuleExports=function(t,n){return!!t&&("DeclareModuleExports"===t.type&&(null==n||(0,e.default)(t,n)))},A.isDeclareOpaqueType=function(t,n){return!!t&&("DeclareOpaqueType"===t.type&&(null==n||(0,e.default)(t,n)))},A.isDeclareTypeAlias=function(t,n){return!!t&&("DeclareTypeAlias"===t.type&&(null==n||(0,e.default)(t,n)))},A.isDeclareVariable=function(t,n){return!!t&&("DeclareVariable"===t.type&&(null==n||(0,e.default)(t,n)))},A.isDeclaredPredicate=function(t,n){return!!t&&("DeclaredPredicate"===t.type&&(null==n||(0,e.default)(t,n)))},A.isDecorator=function(t,n){return!!t&&("Decorator"===t.type&&(null==n||(0,e.default)(t,n)))},A.isDirective=function(t,n){return!!t&&("Directive"===t.type&&(null==n||(0,e.default)(t,n)))},A.isDirectiveLiteral=function(t,n){return!!t&&("DirectiveLiteral"===t.type&&(null==n||(0,e.default)(t,n)))},A.isDoExpression=function(t,n){return!!t&&("DoExpression"===t.type&&(null==n||(0,e.default)(t,n)))},A.isDoWhileStatement=function(t,n){return!!t&&("DoWhileStatement"===t.type&&(null==n||(0,e.default)(t,n)))},A.isEmptyStatement=function(t,n){return!!t&&("EmptyStatement"===t.type&&(null==n||(0,e.default)(t,n)))},A.isEmptyTypeAnnotation=function(t,n){return!!t&&("EmptyTypeAnnotation"===t.type&&(null==n||(0,e.default)(t,n)))},A.isEnumBody=function(t,n){if(!t)return!1;switch(t.type){case"EnumBooleanBody":case"EnumNumberBody":case"EnumStringBody":case"EnumSymbolBody":break;default:return!1}return null==n||(0,e.default)(t,n)},A.isEnumBooleanBody=function(t,n){return!!t&&("EnumBooleanBody"===t.type&&(null==n||(0,e.default)(t,n)))},A.isEnumBooleanMember=function(t,n){return!!t&&("EnumBooleanMember"===t.type&&(null==n||(0,e.default)(t,n)))},A.isEnumDeclaration=function(t,n){return!!t&&("EnumDeclaration"===t.type&&(null==n||(0,e.default)(t,n)))},A.isEnumDefaultedMember=function(t,n){return!!t&&("EnumDefaultedMember"===t.type&&(null==n||(0,e.default)(t,n)))},A.isEnumMember=function(t,n){if(!t)return!1;switch(t.type){case"EnumBooleanMember":case"EnumNumberMember":case"EnumStringMember":case"EnumDefaultedMember":break;default:return!1}return null==n||(0,e.default)(t,n)},A.isEnumNumberBody=function(t,n){return!!t&&("EnumNumberBody"===t.type&&(null==n||(0,e.default)(t,n)))},A.isEnumNumberMember=function(t,n){return!!t&&("EnumNumberMember"===t.type&&(null==n||(0,e.default)(t,n)))},A.isEnumStringBody=function(t,n){return!!t&&("EnumStringBody"===t.type&&(null==n||(0,e.default)(t,n)))},A.isEnumStringMember=function(t,n){return!!t&&("EnumStringMember"===t.type&&(null==n||(0,e.default)(t,n)))},A.isEnumSymbolBody=function(t,n){return!!t&&("EnumSymbolBody"===t.type&&(null==n||(0,e.default)(t,n)))},A.isExistsTypeAnnotation=function(t,n){return!!t&&("ExistsTypeAnnotation"===t.type&&(null==n||(0,e.default)(t,n)))},A.isExportAllDeclaration=function(t,n){return!!t&&("ExportAllDeclaration"===t.type&&(null==n||(0,e.default)(t,n)))},A.isExportDeclaration=function(t,n){if(!t)return!1;switch(t.type){case"ExportAllDeclaration":case"ExportDefaultDeclaration":case"ExportNamedDeclaration":break;default:return!1}return null==n||(0,e.default)(t,n)},A.isExportDefaultDeclaration=function(t,n){return!!t&&("ExportDefaultDeclaration"===t.type&&(null==n||(0,e.default)(t,n)))},A.isExportDefaultSpecifier=function(t,n){return!!t&&("ExportDefaultSpecifier"===t.type&&(null==n||(0,e.default)(t,n)))},A.isExportNamedDeclaration=function(t,n){return!!t&&("ExportNamedDeclaration"===t.type&&(null==n||(0,e.default)(t,n)))},A.isExportNamespaceSpecifier=function(t,n){return!!t&&("ExportNamespaceSpecifier"===t.type&&(null==n||(0,e.default)(t,n)))},A.isExportSpecifier=function(t,n){return!!t&&("ExportSpecifier"===t.type&&(null==n||(0,e.default)(t,n)))},A.isExpression=function(t,n){if(!t)return!1;switch(t.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(t.expectedNode){case"Expression":case"Identifier":case"StringLiteral":break;default:return!1}break;default:return!1}return null==n||(0,e.default)(t,n)},A.isExpressionStatement=function(t,n){return!!t&&("ExpressionStatement"===t.type&&(null==n||(0,e.default)(t,n)))},A.isExpressionWrapper=function(t,n){if(!t)return!1;switch(t.type){case"ExpressionStatement":case"ParenthesizedExpression":case"TypeCastExpression":break;default:return!1}return null==n||(0,e.default)(t,n)},A.isFile=function(t,n){return!!t&&("File"===t.type&&(null==n||(0,e.default)(t,n)))},A.isFlow=function(t,n){if(!t)return!1;switch(t.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 null==n||(0,e.default)(t,n)},A.isFlowBaseAnnotation=function(t,n){if(!t)return!1;switch(t.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 null==n||(0,e.default)(t,n)},A.isFlowDeclaration=function(t,n){if(!t)return!1;switch(t.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 null==n||(0,e.default)(t,n)},A.isFlowPredicate=function(t,n){if(!t)return!1;switch(t.type){case"DeclaredPredicate":case"InferredPredicate":break;default:return!1}return null==n||(0,e.default)(t,n)},A.isFlowType=function(t,n){if(!t)return!1;switch(t.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 null==n||(0,e.default)(t,n)},A.isFor=function(t,n){if(!t)return!1;switch(t.type){case"ForInStatement":case"ForStatement":case"ForOfStatement":break;default:return!1}return null==n||(0,e.default)(t,n)},A.isForInStatement=function(t,n){return!!t&&("ForInStatement"===t.type&&(null==n||(0,e.default)(t,n)))},A.isForOfStatement=function(t,n){return!!t&&("ForOfStatement"===t.type&&(null==n||(0,e.default)(t,n)))},A.isForStatement=function(t,n){return!!t&&("ForStatement"===t.type&&(null==n||(0,e.default)(t,n)))},A.isForXStatement=function(t,n){if(!t)return!1;switch(t.type){case"ForInStatement":case"ForOfStatement":break;default:return!1}return null==n||(0,e.default)(t,n)},A.isFunction=function(t,n){if(!t)return!1;switch(t.type){case"FunctionDeclaration":case"FunctionExpression":case"ObjectMethod":case"ArrowFunctionExpression":case"ClassMethod":case"ClassPrivateMethod":break;default:return!1}return null==n||(0,e.default)(t,n)},A.isFunctionDeclaration=function(t,n){return!!t&&("FunctionDeclaration"===t.type&&(null==n||(0,e.default)(t,n)))},A.isFunctionExpression=function(t,n){return!!t&&("FunctionExpression"===t.type&&(null==n||(0,e.default)(t,n)))},A.isFunctionParameter=function(t,n){if(!t)return!1;switch(t.type){case"Identifier":case"RestElement":case"AssignmentPattern":case"ArrayPattern":case"ObjectPattern":case"VoidPattern":break;case"Placeholder":if("Identifier"===t.expectedNode)break;default:return!1}return null==n||(0,e.default)(t,n)},A.isFunctionParent=function(t,n){if(!t)return!1;switch(t.type){case"FunctionDeclaration":case"FunctionExpression":case"ObjectMethod":case"ArrowFunctionExpression":case"ClassMethod":case"ClassPrivateMethod":case"StaticBlock":case"TSModuleBlock":break;default:return!1}return null==n||(0,e.default)(t,n)},A.isFunctionTypeAnnotation=function(t,n){return!!t&&("FunctionTypeAnnotation"===t.type&&(null==n||(0,e.default)(t,n)))},A.isFunctionTypeParam=function(t,n){return!!t&&("FunctionTypeParam"===t.type&&(null==n||(0,e.default)(t,n)))},A.isGenericTypeAnnotation=function(t,n){return!!t&&("GenericTypeAnnotation"===t.type&&(null==n||(0,e.default)(t,n)))},A.isIdentifier=function(t,n){return!!t&&("Identifier"===t.type&&(null==n||(0,e.default)(t,n)))},A.isIfStatement=function(t,n){return!!t&&("IfStatement"===t.type&&(null==n||(0,e.default)(t,n)))},A.isImmutable=function(t,n){if(!t)return!1;switch(t.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("StringLiteral"===t.expectedNode)break;default:return!1}return null==n||(0,e.default)(t,n)},A.isImport=function(t,n){return!!t&&("Import"===t.type&&(null==n||(0,e.default)(t,n)))},A.isImportAttribute=function(t,n){return!!t&&("ImportAttribute"===t.type&&(null==n||(0,e.default)(t,n)))},A.isImportDeclaration=function(t,n){return!!t&&("ImportDeclaration"===t.type&&(null==n||(0,e.default)(t,n)))},A.isImportDefaultSpecifier=function(t,n){return!!t&&("ImportDefaultSpecifier"===t.type&&(null==n||(0,e.default)(t,n)))},A.isImportExpression=function(t,n){return!!t&&("ImportExpression"===t.type&&(null==n||(0,e.default)(t,n)))},A.isImportNamespaceSpecifier=function(t,n){return!!t&&("ImportNamespaceSpecifier"===t.type&&(null==n||(0,e.default)(t,n)))},A.isImportOrExportDeclaration=n,A.isImportSpecifier=function(t,n){return!!t&&("ImportSpecifier"===t.type&&(null==n||(0,e.default)(t,n)))},A.isIndexedAccessType=function(t,n){return!!t&&("IndexedAccessType"===t.type&&(null==n||(0,e.default)(t,n)))},A.isInferredPredicate=function(t,n){return!!t&&("InferredPredicate"===t.type&&(null==n||(0,e.default)(t,n)))},A.isInterfaceDeclaration=function(t,n){return!!t&&("InterfaceDeclaration"===t.type&&(null==n||(0,e.default)(t,n)))},A.isInterfaceExtends=function(t,n){return!!t&&("InterfaceExtends"===t.type&&(null==n||(0,e.default)(t,n)))},A.isInterfaceTypeAnnotation=function(t,n){return!!t&&("InterfaceTypeAnnotation"===t.type&&(null==n||(0,e.default)(t,n)))},A.isInterpreterDirective=function(t,n){return!!t&&("InterpreterDirective"===t.type&&(null==n||(0,e.default)(t,n)))},A.isIntersectionTypeAnnotation=function(t,n){return!!t&&("IntersectionTypeAnnotation"===t.type&&(null==n||(0,e.default)(t,n)))},A.isJSX=function(t,n){if(!t)return!1;switch(t.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 null==n||(0,e.default)(t,n)},A.isJSXAttribute=function(t,n){return!!t&&("JSXAttribute"===t.type&&(null==n||(0,e.default)(t,n)))},A.isJSXClosingElement=function(t,n){return!!t&&("JSXClosingElement"===t.type&&(null==n||(0,e.default)(t,n)))},A.isJSXClosingFragment=function(t,n){return!!t&&("JSXClosingFragment"===t.type&&(null==n||(0,e.default)(t,n)))},A.isJSXElement=function(t,n){return!!t&&("JSXElement"===t.type&&(null==n||(0,e.default)(t,n)))},A.isJSXEmptyExpression=function(t,n){return!!t&&("JSXEmptyExpression"===t.type&&(null==n||(0,e.default)(t,n)))},A.isJSXExpressionContainer=function(t,n){return!!t&&("JSXExpressionContainer"===t.type&&(null==n||(0,e.default)(t,n)))},A.isJSXFragment=function(t,n){return!!t&&("JSXFragment"===t.type&&(null==n||(0,e.default)(t,n)))},A.isJSXIdentifier=function(t,n){return!!t&&("JSXIdentifier"===t.type&&(null==n||(0,e.default)(t,n)))},A.isJSXMemberExpression=function(t,n){return!!t&&("JSXMemberExpression"===t.type&&(null==n||(0,e.default)(t,n)))},A.isJSXNamespacedName=function(t,n){return!!t&&("JSXNamespacedName"===t.type&&(null==n||(0,e.default)(t,n)))},A.isJSXOpeningElement=function(t,n){return!!t&&("JSXOpeningElement"===t.type&&(null==n||(0,e.default)(t,n)))},A.isJSXOpeningFragment=function(t,n){return!!t&&("JSXOpeningFragment"===t.type&&(null==n||(0,e.default)(t,n)))},A.isJSXSpreadAttribute=function(t,n){return!!t&&("JSXSpreadAttribute"===t.type&&(null==n||(0,e.default)(t,n)))},A.isJSXSpreadChild=function(t,n){return!!t&&("JSXSpreadChild"===t.type&&(null==n||(0,e.default)(t,n)))},A.isJSXText=function(t,n){return!!t&&("JSXText"===t.type&&(null==n||(0,e.default)(t,n)))},A.isLVal=function(t,n){if(!t)return!1;switch(t.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(t.expectedNode){case"Pattern":case"Identifier":break;default:return!1}break;default:return!1}return null==n||(0,e.default)(t,n)},A.isLabeledStatement=function(t,n){return!!t&&("LabeledStatement"===t.type&&(null==n||(0,e.default)(t,n)))},A.isLiteral=function(t,n){if(!t)return!1;switch(t.type){case"StringLiteral":case"NumericLiteral":case"NullLiteral":case"BooleanLiteral":case"RegExpLiteral":case"TemplateLiteral":case"BigIntLiteral":case"DecimalLiteral":break;case"Placeholder":if("StringLiteral"===t.expectedNode)break;default:return!1}return null==n||(0,e.default)(t,n)},A.isLogicalExpression=function(t,n){return!!t&&("LogicalExpression"===t.type&&(null==n||(0,e.default)(t,n)))},A.isLoop=function(t,n){if(!t)return!1;switch(t.type){case"DoWhileStatement":case"ForInStatement":case"ForStatement":case"WhileStatement":case"ForOfStatement":break;default:return!1}return null==n||(0,e.default)(t,n)},A.isMemberExpression=function(t,n){return!!t&&("MemberExpression"===t.type&&(null==n||(0,e.default)(t,n)))},A.isMetaProperty=function(t,n){return!!t&&("MetaProperty"===t.type&&(null==n||(0,e.default)(t,n)))},A.isMethod=function(t,n){if(!t)return!1;switch(t.type){case"ObjectMethod":case"ClassMethod":case"ClassPrivateMethod":break;default:return!1}return null==n||(0,e.default)(t,n)},A.isMiscellaneous=function(t,n){if(!t)return!1;switch(t.type){case"Noop":case"Placeholder":case"V8IntrinsicIdentifier":break;default:return!1}return null==n||(0,e.default)(t,n)},A.isMixedTypeAnnotation=function(t,n){return!!t&&("MixedTypeAnnotation"===t.type&&(null==n||(0,e.default)(t,n)))},A.isModuleDeclaration=function(e,r){return(0,t.default)("isModuleDeclaration","isImportOrExportDeclaration"),n(e,r)},A.isModuleExpression=function(t,n){return!!t&&("ModuleExpression"===t.type&&(null==n||(0,e.default)(t,n)))},A.isModuleSpecifier=function(t,n){if(!t)return!1;switch(t.type){case"ExportSpecifier":case"ImportDefaultSpecifier":case"ImportNamespaceSpecifier":case"ImportSpecifier":case"ExportNamespaceSpecifier":case"ExportDefaultSpecifier":break;default:return!1}return null==n||(0,e.default)(t,n)},A.isNewExpression=function(t,n){return!!t&&("NewExpression"===t.type&&(null==n||(0,e.default)(t,n)))},A.isNoop=function(t,n){return!!t&&("Noop"===t.type&&(null==n||(0,e.default)(t,n)))},A.isNullLiteral=function(t,n){return!!t&&("NullLiteral"===t.type&&(null==n||(0,e.default)(t,n)))},A.isNullLiteralTypeAnnotation=function(t,n){return!!t&&("NullLiteralTypeAnnotation"===t.type&&(null==n||(0,e.default)(t,n)))},A.isNullableTypeAnnotation=function(t,n){return!!t&&("NullableTypeAnnotation"===t.type&&(null==n||(0,e.default)(t,n)))},A.isNumberLiteral=function(n,r){return(0,t.default)("isNumberLiteral","isNumericLiteral"),!!n&&("NumberLiteral"===n.type&&(null==r||(0,e.default)(n,r)))},A.isNumberLiteralTypeAnnotation=function(t,n){return!!t&&("NumberLiteralTypeAnnotation"===t.type&&(null==n||(0,e.default)(t,n)))},A.isNumberTypeAnnotation=function(t,n){return!!t&&("NumberTypeAnnotation"===t.type&&(null==n||(0,e.default)(t,n)))},A.isNumericLiteral=function(t,n){return!!t&&("NumericLiteral"===t.type&&(null==n||(0,e.default)(t,n)))},A.isObjectExpression=function(t,n){return!!t&&("ObjectExpression"===t.type&&(null==n||(0,e.default)(t,n)))},A.isObjectMember=function(t,n){if(!t)return!1;switch(t.type){case"ObjectMethod":case"ObjectProperty":break;default:return!1}return null==n||(0,e.default)(t,n)},A.isObjectMethod=function(t,n){return!!t&&("ObjectMethod"===t.type&&(null==n||(0,e.default)(t,n)))},A.isObjectPattern=function(t,n){return!!t&&("ObjectPattern"===t.type&&(null==n||(0,e.default)(t,n)))},A.isObjectProperty=function(t,n){return!!t&&("ObjectProperty"===t.type&&(null==n||(0,e.default)(t,n)))},A.isObjectTypeAnnotation=function(t,n){return!!t&&("ObjectTypeAnnotation"===t.type&&(null==n||(0,e.default)(t,n)))},A.isObjectTypeCallProperty=function(t,n){return!!t&&("ObjectTypeCallProperty"===t.type&&(null==n||(0,e.default)(t,n)))},A.isObjectTypeIndexer=function(t,n){return!!t&&("ObjectTypeIndexer"===t.type&&(null==n||(0,e.default)(t,n)))},A.isObjectTypeInternalSlot=function(t,n){return!!t&&("ObjectTypeInternalSlot"===t.type&&(null==n||(0,e.default)(t,n)))},A.isObjectTypeProperty=function(t,n){return!!t&&("ObjectTypeProperty"===t.type&&(null==n||(0,e.default)(t,n)))},A.isObjectTypeSpreadProperty=function(t,n){return!!t&&("ObjectTypeSpreadProperty"===t.type&&(null==n||(0,e.default)(t,n)))},A.isOpaqueType=function(t,n){return!!t&&("OpaqueType"===t.type&&(null==n||(0,e.default)(t,n)))},A.isOptionalCallExpression=function(t,n){return!!t&&("OptionalCallExpression"===t.type&&(null==n||(0,e.default)(t,n)))},A.isOptionalIndexedAccessType=function(t,n){return!!t&&("OptionalIndexedAccessType"===t.type&&(null==n||(0,e.default)(t,n)))},A.isOptionalMemberExpression=function(t,n){return!!t&&("OptionalMemberExpression"===t.type&&(null==n||(0,e.default)(t,n)))},A.isParenthesizedExpression=function(t,n){return!!t&&("ParenthesizedExpression"===t.type&&(null==n||(0,e.default)(t,n)))},A.isPattern=function(t,n){if(!t)return!1;switch(t.type){case"AssignmentPattern":case"ArrayPattern":case"ObjectPattern":case"VoidPattern":break;case"Placeholder":if("Pattern"===t.expectedNode)break;default:return!1}return null==n||(0,e.default)(t,n)},A.isPatternLike=function(t,n){if(!t)return!1;switch(t.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(t.expectedNode){case"Pattern":case"Identifier":break;default:return!1}break;default:return!1}return null==n||(0,e.default)(t,n)},A.isPipelineBareFunction=function(t,n){return!!t&&("PipelineBareFunction"===t.type&&(null==n||(0,e.default)(t,n)))},A.isPipelinePrimaryTopicReference=function(t,n){return!!t&&("PipelinePrimaryTopicReference"===t.type&&(null==n||(0,e.default)(t,n)))},A.isPipelineTopicExpression=function(t,n){return!!t&&("PipelineTopicExpression"===t.type&&(null==n||(0,e.default)(t,n)))},A.isPlaceholder=function(t,n){return!!t&&("Placeholder"===t.type&&(null==n||(0,e.default)(t,n)))},A.isPrivate=function(t,n){if(!t)return!1;switch(t.type){case"ClassPrivateProperty":case"ClassPrivateMethod":case"PrivateName":break;default:return!1}return null==n||(0,e.default)(t,n)},A.isPrivateName=function(t,n){return!!t&&("PrivateName"===t.type&&(null==n||(0,e.default)(t,n)))},A.isProgram=function(t,n){return!!t&&("Program"===t.type&&(null==n||(0,e.default)(t,n)))},A.isProperty=function(t,n){if(!t)return!1;switch(t.type){case"ObjectProperty":case"ClassProperty":case"ClassAccessorProperty":case"ClassPrivateProperty":break;default:return!1}return null==n||(0,e.default)(t,n)},A.isPureish=function(t,n){if(!t)return!1;switch(t.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("StringLiteral"===t.expectedNode)break;default:return!1}return null==n||(0,e.default)(t,n)},A.isQualifiedTypeIdentifier=function(t,n){return!!t&&("QualifiedTypeIdentifier"===t.type&&(null==n||(0,e.default)(t,n)))},A.isRecordExpression=function(t,n){return!!t&&("RecordExpression"===t.type&&(null==n||(0,e.default)(t,n)))},A.isRegExpLiteral=function(t,n){return!!t&&("RegExpLiteral"===t.type&&(null==n||(0,e.default)(t,n)))},A.isRegexLiteral=function(n,r){return(0,t.default)("isRegexLiteral","isRegExpLiteral"),!!n&&("RegexLiteral"===n.type&&(null==r||(0,e.default)(n,r)))},A.isRestElement=function(t,n){return!!t&&("RestElement"===t.type&&(null==n||(0,e.default)(t,n)))},A.isRestProperty=function(n,r){return(0,t.default)("isRestProperty","isRestElement"),!!n&&("RestProperty"===n.type&&(null==r||(0,e.default)(n,r)))},A.isReturnStatement=function(t,n){return!!t&&("ReturnStatement"===t.type&&(null==n||(0,e.default)(t,n)))},A.isScopable=function(t,n){if(!t)return!1;switch(t.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("BlockStatement"===t.expectedNode)break;default:return!1}return null==n||(0,e.default)(t,n)},A.isSequenceExpression=function(t,n){return!!t&&("SequenceExpression"===t.type&&(null==n||(0,e.default)(t,n)))},A.isSpreadElement=function(t,n){return!!t&&("SpreadElement"===t.type&&(null==n||(0,e.default)(t,n)))},A.isSpreadProperty=function(n,r){return(0,t.default)("isSpreadProperty","isSpreadElement"),!!n&&("SpreadProperty"===n.type&&(null==r||(0,e.default)(n,r)))},A.isStandardized=function(t,n){if(!t)return!1;switch(t.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(t.expectedNode){case"Identifier":case"StringLiteral":case"BlockStatement":case"ClassBody":break;default:return!1}break;default:return!1}return null==n||(0,e.default)(t,n)},A.isStatement=function(t,n){if(!t)return!1;switch(t.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(t.expectedNode){case"Statement":case"Declaration":case"BlockStatement":break;default:return!1}break;default:return!1}return null==n||(0,e.default)(t,n)},A.isStaticBlock=function(t,n){return!!t&&("StaticBlock"===t.type&&(null==n||(0,e.default)(t,n)))},A.isStringLiteral=function(t,n){return!!t&&("StringLiteral"===t.type&&(null==n||(0,e.default)(t,n)))},A.isStringLiteralTypeAnnotation=function(t,n){return!!t&&("StringLiteralTypeAnnotation"===t.type&&(null==n||(0,e.default)(t,n)))},A.isStringTypeAnnotation=function(t,n){return!!t&&("StringTypeAnnotation"===t.type&&(null==n||(0,e.default)(t,n)))},A.isSuper=function(t,n){return!!t&&("Super"===t.type&&(null==n||(0,e.default)(t,n)))},A.isSwitchCase=function(t,n){return!!t&&("SwitchCase"===t.type&&(null==n||(0,e.default)(t,n)))},A.isSwitchStatement=function(t,n){return!!t&&("SwitchStatement"===t.type&&(null==n||(0,e.default)(t,n)))},A.isSymbolTypeAnnotation=function(t,n){return!!t&&("SymbolTypeAnnotation"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSAnyKeyword=function(t,n){return!!t&&("TSAnyKeyword"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSArrayType=function(t,n){return!!t&&("TSArrayType"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSAsExpression=function(t,n){return!!t&&("TSAsExpression"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSBaseType=function(t,n){if(!t)return!1;switch(t.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 null==n||(0,e.default)(t,n)},A.isTSBigIntKeyword=function(t,n){return!!t&&("TSBigIntKeyword"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSBooleanKeyword=function(t,n){return!!t&&("TSBooleanKeyword"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSCallSignatureDeclaration=function(t,n){return!!t&&("TSCallSignatureDeclaration"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSConditionalType=function(t,n){return!!t&&("TSConditionalType"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSConstructSignatureDeclaration=function(t,n){return!!t&&("TSConstructSignatureDeclaration"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSConstructorType=function(t,n){return!!t&&("TSConstructorType"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSDeclareFunction=function(t,n){return!!t&&("TSDeclareFunction"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSDeclareMethod=function(t,n){return!!t&&("TSDeclareMethod"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSEntityName=function(t,n){if(!t)return!1;switch(t.type){case"Identifier":case"TSQualifiedName":break;case"Placeholder":if("Identifier"===t.expectedNode)break;default:return!1}return null==n||(0,e.default)(t,n)},A.isTSEnumBody=function(t,n){return!!t&&("TSEnumBody"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSEnumDeclaration=function(t,n){return!!t&&("TSEnumDeclaration"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSEnumMember=function(t,n){return!!t&&("TSEnumMember"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSExportAssignment=function(t,n){return!!t&&("TSExportAssignment"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSExpressionWithTypeArguments=function(t,n){return!!t&&("TSExpressionWithTypeArguments"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSExternalModuleReference=function(t,n){return!!t&&("TSExternalModuleReference"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSFunctionType=function(t,n){return!!t&&("TSFunctionType"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSImportEqualsDeclaration=function(t,n){return!!t&&("TSImportEqualsDeclaration"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSImportType=function(t,n){return!!t&&("TSImportType"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSIndexSignature=function(t,n){return!!t&&("TSIndexSignature"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSIndexedAccessType=function(t,n){return!!t&&("TSIndexedAccessType"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSInferType=function(t,n){return!!t&&("TSInferType"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSInstantiationExpression=function(t,n){return!!t&&("TSInstantiationExpression"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSInterfaceBody=function(t,n){return!!t&&("TSInterfaceBody"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSInterfaceDeclaration=function(t,n){return!!t&&("TSInterfaceDeclaration"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSIntersectionType=function(t,n){return!!t&&("TSIntersectionType"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSIntrinsicKeyword=function(t,n){return!!t&&("TSIntrinsicKeyword"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSLiteralType=function(t,n){return!!t&&("TSLiteralType"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSMappedType=function(t,n){return!!t&&("TSMappedType"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSMethodSignature=function(t,n){return!!t&&("TSMethodSignature"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSModuleBlock=function(t,n){return!!t&&("TSModuleBlock"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSModuleDeclaration=function(t,n){return!!t&&("TSModuleDeclaration"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSNamedTupleMember=function(t,n){return!!t&&("TSNamedTupleMember"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSNamespaceExportDeclaration=function(t,n){return!!t&&("TSNamespaceExportDeclaration"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSNeverKeyword=function(t,n){return!!t&&("TSNeverKeyword"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSNonNullExpression=function(t,n){return!!t&&("TSNonNullExpression"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSNullKeyword=function(t,n){return!!t&&("TSNullKeyword"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSNumberKeyword=function(t,n){return!!t&&("TSNumberKeyword"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSObjectKeyword=function(t,n){return!!t&&("TSObjectKeyword"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSOptionalType=function(t,n){return!!t&&("TSOptionalType"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSParameterProperty=function(t,n){return!!t&&("TSParameterProperty"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSParenthesizedType=function(t,n){return!!t&&("TSParenthesizedType"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSPropertySignature=function(t,n){return!!t&&("TSPropertySignature"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSQualifiedName=function(t,n){return!!t&&("TSQualifiedName"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSRestType=function(t,n){return!!t&&("TSRestType"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSSatisfiesExpression=function(t,n){return!!t&&("TSSatisfiesExpression"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSStringKeyword=function(t,n){return!!t&&("TSStringKeyword"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSSymbolKeyword=function(t,n){return!!t&&("TSSymbolKeyword"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSTemplateLiteralType=function(t,n){return!!t&&("TSTemplateLiteralType"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSThisType=function(t,n){return!!t&&("TSThisType"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSTupleType=function(t,n){return!!t&&("TSTupleType"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSType=function(t,n){if(!t)return!1;switch(t.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 null==n||(0,e.default)(t,n)},A.isTSTypeAliasDeclaration=function(t,n){return!!t&&("TSTypeAliasDeclaration"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSTypeAnnotation=function(t,n){return!!t&&("TSTypeAnnotation"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSTypeAssertion=function(t,n){return!!t&&("TSTypeAssertion"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSTypeElement=function(t,n){if(!t)return!1;switch(t.type){case"TSCallSignatureDeclaration":case"TSConstructSignatureDeclaration":case"TSPropertySignature":case"TSMethodSignature":case"TSIndexSignature":break;default:return!1}return null==n||(0,e.default)(t,n)},A.isTSTypeLiteral=function(t,n){return!!t&&("TSTypeLiteral"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSTypeOperator=function(t,n){return!!t&&("TSTypeOperator"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSTypeParameter=function(t,n){return!!t&&("TSTypeParameter"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSTypeParameterDeclaration=function(t,n){return!!t&&("TSTypeParameterDeclaration"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSTypeParameterInstantiation=function(t,n){return!!t&&("TSTypeParameterInstantiation"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSTypePredicate=function(t,n){return!!t&&("TSTypePredicate"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSTypeQuery=function(t,n){return!!t&&("TSTypeQuery"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSTypeReference=function(t,n){return!!t&&("TSTypeReference"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSUndefinedKeyword=function(t,n){return!!t&&("TSUndefinedKeyword"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSUnionType=function(t,n){return!!t&&("TSUnionType"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSUnknownKeyword=function(t,n){return!!t&&("TSUnknownKeyword"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTSVoidKeyword=function(t,n){return!!t&&("TSVoidKeyword"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTaggedTemplateExpression=function(t,n){return!!t&&("TaggedTemplateExpression"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTemplateElement=function(t,n){return!!t&&("TemplateElement"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTemplateLiteral=function(t,n){return!!t&&("TemplateLiteral"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTerminatorless=function(t,n){if(!t)return!1;switch(t.type){case"BreakStatement":case"ContinueStatement":case"ReturnStatement":case"ThrowStatement":case"YieldExpression":case"AwaitExpression":break;default:return!1}return null==n||(0,e.default)(t,n)},A.isThisExpression=function(t,n){return!!t&&("ThisExpression"===t.type&&(null==n||(0,e.default)(t,n)))},A.isThisTypeAnnotation=function(t,n){return!!t&&("ThisTypeAnnotation"===t.type&&(null==n||(0,e.default)(t,n)))},A.isThrowStatement=function(t,n){return!!t&&("ThrowStatement"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTopicReference=function(t,n){return!!t&&("TopicReference"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTryStatement=function(t,n){return!!t&&("TryStatement"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTupleExpression=function(t,n){return!!t&&("TupleExpression"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTupleTypeAnnotation=function(t,n){return!!t&&("TupleTypeAnnotation"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTypeAlias=function(t,n){return!!t&&("TypeAlias"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTypeAnnotation=function(t,n){return!!t&&("TypeAnnotation"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTypeCastExpression=function(t,n){return!!t&&("TypeCastExpression"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTypeParameter=function(t,n){return!!t&&("TypeParameter"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTypeParameterDeclaration=function(t,n){return!!t&&("TypeParameterDeclaration"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTypeParameterInstantiation=function(t,n){return!!t&&("TypeParameterInstantiation"===t.type&&(null==n||(0,e.default)(t,n)))},A.isTypeScript=function(t,n){if(!t)return!1;switch(t.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 null==n||(0,e.default)(t,n)},A.isTypeofTypeAnnotation=function(t,n){return!!t&&("TypeofTypeAnnotation"===t.type&&(null==n||(0,e.default)(t,n)))},A.isUnaryExpression=function(t,n){return!!t&&("UnaryExpression"===t.type&&(null==n||(0,e.default)(t,n)))},A.isUnaryLike=function(t,n){if(!t)return!1;switch(t.type){case"UnaryExpression":case"SpreadElement":break;default:return!1}return null==n||(0,e.default)(t,n)},A.isUnionTypeAnnotation=function(t,n){return!!t&&("UnionTypeAnnotation"===t.type&&(null==n||(0,e.default)(t,n)))},A.isUpdateExpression=function(t,n){return!!t&&("UpdateExpression"===t.type&&(null==n||(0,e.default)(t,n)))},A.isUserWhitespacable=function(t,n){if(!t)return!1;switch(t.type){case"ObjectMethod":case"ObjectProperty":case"ObjectTypeInternalSlot":case"ObjectTypeCallProperty":case"ObjectTypeIndexer":case"ObjectTypeProperty":case"ObjectTypeSpreadProperty":break;default:return!1}return null==n||(0,e.default)(t,n)},A.isV8IntrinsicIdentifier=function(t,n){return!!t&&("V8IntrinsicIdentifier"===t.type&&(null==n||(0,e.default)(t,n)))},A.isVariableDeclaration=function(t,n){return!!t&&("VariableDeclaration"===t.type&&(null==n||(0,e.default)(t,n)))},A.isVariableDeclarator=function(t,n){return!!t&&("VariableDeclarator"===t.type&&(null==n||(0,e.default)(t,n)))},A.isVariance=function(t,n){return!!t&&("Variance"===t.type&&(null==n||(0,e.default)(t,n)))},A.isVoidPattern=function(t,n){return!!t&&("VoidPattern"===t.type&&(null==n||(0,e.default)(t,n)))},A.isVoidTypeAnnotation=function(t,n){return!!t&&("VoidTypeAnnotation"===t.type&&(null==n||(0,e.default)(t,n)))},A.isWhile=function(t,n){if(!t)return!1;switch(t.type){case"DoWhileStatement":case"WhileStatement":break;default:return!1}return null==n||(0,e.default)(t,n)},A.isWhileStatement=function(t,n){return!!t&&("WhileStatement"===t.type&&(null==n||(0,e.default)(t,n)))},A.isWithStatement=function(t,n){return!!t&&("WithStatement"===t.type&&(null==n||(0,e.default)(t,n)))},A.isYieldExpression=function(t,n){return!!t&&("YieldExpression"===t.type&&(null==n||(0,e.default)(t,n)))};var e=w(),t=L();function n(t,n){if(!t)return!1;switch(t.type){case"ExportAllDeclaration":case"ExportDefaultDeclaration":case"ExportNamedDeclaration":case"ImportDeclaration":break;default:return!1}return null==n||(0,e.default)(t,n)}return A}function F(){if(N)return v;N=1,Object.defineProperty(v,"__esModule",{value:!0}),v.default=function(n,r,i){if(!t(n))return!1;const s=Array.isArray(r)?r:r.split("."),a=[];let o;for(o=n;t(o);o=null!=(l=o.object)?l:o.meta){var l;a.push(o.property)}if(a.push(o),a.length<s.length)return!1;if(!i&&a.length>s.length)return!1;for(let t=0,n=a.length-1;t<s.length;t++,n--){const r=a[n];let i;if((0,e.isIdentifier)(r))i=r.name;else if((0,e.isStringLiteral)(r))i=r.value;else if((0,e.isThisExpression)(r))i="this";else if((0,e.isSuper)(r))i="super";else{if(!(0,e.isPrivateName)(r))return!1;i="#"+r.id.name}if(s[t]!==i)return!1}return!0};var e=M();function t(t){return(0,e.isMemberExpression)(t)||(0,e.isMetaProperty)(t)}return v}function B(){if(O)return E;O=1,Object.defineProperty(E,"__esModule",{value:!0}),E.default=function(t,n){const r=t.split(".");return t=>(0,e.default)(t,r,n)};var e=F();return E}var j,R={};var U,K={},V={},q={},$={},W={},Y={},J={},X={},H={};function z(){if(U)return H;U=1,Object.defineProperty(H,"__esModule",{value:!0}),H.default=function(t,n){if(t===n)return!0;if(null==t)return!1;if(e.ALIAS_KEYS[n])return!1;const r=e.FLIPPED_ALIAS_KEYS[n];return!(null==r||!r.includes(t))};var e=Ue();return H}var G,Q,Z={};function ee(){if(G)return Z;G=1,Object.defineProperty(Z,"__esModule",{value:!0}),Z.default=function(t,n){if(t===n)return!0;const r=e.PLACEHOLDERS_ALIAS[t];return!(null==r||!r.includes(n))};var e=Ue();return Z}function te(){if(Q)return X;Q=1,Object.defineProperty(X,"__esModule",{value:!0}),X.default=function(i,s,a){if(!s)return!1;const o=(0,t.default)(s.type,i);if(!o)return!a&&"Placeholder"===s.type&&i in r.FLIPPED_ALIAS_KEYS&&(0,n.default)(s.expectedNode,i);return void 0===a||(0,e.default)(s,a)};var e=w(),t=z(),n=ee(),r=Ue();return X}var ne,re={},ie={},se={};var ae,oe,le,ce={};function pe(){return oe||(oe=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"isIdentifierChar",{enumerable:!0,get:function(){return t.isIdentifierChar}}),Object.defineProperty(e,"isIdentifierName",{enumerable:!0,get:function(){return t.isIdentifierName}}),Object.defineProperty(e,"isIdentifierStart",{enumerable:!0,get:function(){return t.isIdentifierStart}}),Object.defineProperty(e,"isKeyword",{enumerable:!0,get:function(){return n.isKeyword}}),Object.defineProperty(e,"isReservedWord",{enumerable:!0,get:function(){return n.isReservedWord}}),Object.defineProperty(e,"isStrictBindOnlyReservedWord",{enumerable:!0,get:function(){return n.isStrictBindOnlyReservedWord}}),Object.defineProperty(e,"isStrictBindReservedWord",{enumerable:!0,get:function(){return n.isStrictBindReservedWord}}),Object.defineProperty(e,"isStrictReservedWord",{enumerable:!0,get:function(){return n.isStrictReservedWord}});var t=function(){if(ne)return se;ne=1,Object.defineProperty(se,"__esModule",{value:!0}),se.isIdentifierChar=l,se.isIdentifierName=function(e){let t=!0;for(let n=0;n<e.length;n++){let r=e.charCodeAt(n);if(55296==(64512&r)&&n+1<e.length){const t=e.charCodeAt(++n);56320==(64512&t)&&(r=65536+((1023&r)<<10)+(1023&t))}if(t){if(t=!1,!o(r))return!1}else if(!l(r))return!1}return!t},se.isIdentifierStart=o;let e="ªµºÀ-ÖØ-öø-ˁˆ-ˑˠ-ˤˬˮͰ-ʹͶͷͺ-ͽͿΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁҊ-ԯԱ-Ֆՙՠ-ֈא-תׯ-ײؠ-يٮٯٱ-ۓەۥۦۮۯۺ-ۼۿܐܒ-ܯݍ-ޥޱߊ-ߪߴߵߺࠀ-ࠕࠚࠤࠨࡀ-ࡘࡠ-ࡪࡰ-ࢇࢉ-ࢠ-ࣉऄ-हऽॐक़-ॡॱ-ঀঅ-ঌএঐও-নপ-রলশ-হঽৎড়ঢ়য়-ৡৰৱৼਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਖ਼-ੜਫ਼ੲ-ੴઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽૐૠૡૹଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽଡ଼ଢ଼ୟ-ୡୱஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹௐఅ-ఌఎ-ఐఒ-నప-హఽౘ-ౚౝౠౡಀಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽ-ೞೠೡೱೲഄ-ഌഎ-ഐഒ-ഺഽൎൔ-ൖൟ-ൡൺ-ൿඅ-ඖක-නඳ-රලව-ෆก-ะาำเ-ๆກຂຄຆ-ຊຌ-ຣລວ-ະາຳຽເ-ໄໆໜ-ໟༀཀ-ཇཉ-ཬྈ-ྌက-ဪဿၐ-ၕၚ-ၝၡၥၦၮ-ၰၵ-ႁႎႠ-ჅჇჍა-ჺჼ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚᎀ-ᎏᎠ-Ᏽᏸ-ᏽᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛮ-ᛸᜀ-ᜑᜟ-ᜱᝀ-ᝑᝠ-ᝬᝮ-ᝰក-ឳៗៜᠠ-ᡸᢀ-ᢨᢪᢰ-ᣵᤀ-ᤞᥐ-ᥭᥰ-ᥴᦀ-ᦫᦰ-ᧉᨀ-ᨖᨠ-ᩔᪧᬅ-ᬳᭅ-ᭌᮃ-ᮠᮮᮯᮺ-ᯥᰀ-ᰣᱍ-ᱏᱚ-ᱽᲀ-Ა-ᲺᲽ-Ჿᳩ-ᳬᳮ-ᳳᳵᳶᳺᴀ-ᶿḀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼⁱⁿₐ-ₜℂℇℊ-ℓℕ℘-ℝℤΩℨK-ℹℼ-ℿⅅ-ⅉⅎⅠ-ↈⰀ-ⳤⳫ-ⳮⳲⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞ々-〇〡-〩〱-〵〸-〼ぁ-ゖ゛-ゟァ-ヺー-ヿㄅ-ㄯㄱ-ㆎㆠ-ㆿㇰ-ㇿ㐀-䶿一-ꒌꓐ-ꓽꔀ-ꘌꘐ-ꘟꘪꘫꙀ-ꙮꙿ-ꚝꚠ-ꛯꜗ-ꜟꜢ-ꞈꞋ--ꠁꠃ-ꠅꠇ-ꠊꠌ-ꠢꡀ-ꡳꢂ-ꢳꣲ-ꣷꣻꣽꣾꤊ-ꤥꤰ-ꥆꥠ-ꥼꦄ-ꦲꧏꧠ-ꧤꧦ-ꧯꧺ-ꧾꨀ-ꨨꩀ-ꩂꩄ-ꩋꩠ-ꩶꩺꩾ-ꪯꪱꪵꪶꪹ-ꪽꫀꫂꫛ-ꫝꫠ-ꫪꫲ-ꫴꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꬰ-ꭚꭜ-ꭩꭰ-ꯢ가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎ff-stﬓ-ﬗיִײַ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻﹰ-ﹴﹶ-ﻼA-Za-zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ",t="·̀-ͯ·҃-֑҇-ׇֽֿׁׂׅׄؐ-ًؚ-٩ٰۖ-ۜ۟-۪ۤۧۨ-ۭ۰-۹ܑܰ-݊ަ-ް߀-߉߫-߽߳ࠖ-࠙ࠛ-ࠣࠥ-ࠧࠩ-࡙࠭-࡛-࢟࣊-ࣣ࣡-ःऺ-़ा-ॏ॑-ॗॢॣ०-९ঁ-ঃ়া-ৄেৈো-্ৗৢৣ০-৯৾ਁ-ਃ਼ਾ-ੂੇੈੋ-੍ੑ੦-ੱੵઁ-ઃ઼ા-ૅે-ૉો-્ૢૣ૦-૯ૺ-૿ଁ-ଃ଼ା-ୄେୈୋ-୍୕-ୗୢୣ୦-୯ஂா-ூெ-ைொ-்ௗ௦-௯ఀ-ఄ఼ా-ౄె-ైొ-్ౕౖౢౣ౦-౯ಁ-ಃ಼ಾ-ೄೆ-ೈೊ-್ೕೖೢೣ೦-೯ೳഀ-ഃ഻഼ാ-ൄെ-ൈൊ-്ൗൢൣ൦-൯ඁ-ඃ්ා-ුූෘ-ෟ෦-෯ෲෳัิ-ฺ็-๎๐-๙ັິ-ຼ່-໎໐-໙༘༙༠-༩༹༵༷༾༿ཱ-྄྆྇ྍ-ྗྙ-ྼ࿆ါ-ှ၀-၉ၖ-ၙၞ-ၠၢ-ၤၧ-ၭၱ-ၴႂ-ႍႏ-ႝ፝-፟፩-፱ᜒ-᜕ᜲ-᜴ᝒᝓᝲᝳ឴-៓៝០-៩᠋-᠍᠏-᠙ᢩᤠ-ᤫᤰ-᤻᥆-᥏᧐-᧚ᨗ-ᨛᩕ-ᩞ᩠-᩿᩼-᪉᪐-᪙᪰-᪽ᪿ--ᬀ-ᬄ᬴-᭄᭐-᭙᭫-᭳ᮀ-ᮂᮡ-ᮭ᮰-᮹᯦-᯳ᰤ-᰷᱀-᱉᱐-᱙᳐-᳔᳒-᳨᳭᳴᳷-᳹᷀-᷿‿⁀⁔⃐-⃥⃜⃡-⃰⳯-⵿⳱ⷠ-〪ⷿ-゙゚〯・꘠-꘩꙯ꙴ-꙽ꚞꚟ꛰꛱ꠂ꠆ꠋꠣ-ꠧ꠬ꢀꢁꢴ-ꣅ꣐-꣙꣠-꣱ꣿ-꤉ꤦ-꤭ꥇ-꥓ꦀ-ꦃ꦳-꧀꧐-꧙ꧥ꧰-꧹ꨩ-ꨶꩃꩌꩍ꩐-꩙ꩻ-ꩽꪰꪲ-ꪴꪷꪸꪾ꪿꫁ꫫ-ꫯꫵ꫶ꯣ-ꯪ꯬꯭꯰-꯹ﬞ︀-️︠-︯︳︴﹍-﹏0-9_・";const n=new RegExp("["+e+"]"),r=new RegExp("["+e+t+"]");e=t=null;const i=[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,7,25,39,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,5,57,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,24,43,261,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,33,24,3,24,45,74,6,0,67,12,65,1,2,0,15,4,10,7381,42,31,98,114,8702,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,208,30,2,2,2,1,2,6,3,4,10,1,225,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,4381,3,5773,3,7472,16,621,2467,541,1507,4938,6,8489],s=[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,78,5,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,199,7,137,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,55,9,266,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,233,0,3,0,8,1,6,0,475,6,110,6,6,9,4759,9,787719,239];function a(e,t){let n=65536;for(let r=0,i=t.length;r<i;r+=2){if(n+=t[r],n>e)return!1;if(n+=t[r+1],n>=e)return!0}return!1}function o(e){return e<65?36===e:e<=90||(e<97?95===e:e<=122||(e<=65535?e>=170&&n.test(String.fromCharCode(e)):a(e,i)))}function l(e){return e<48?36===e:e<58||!(e<65)&&(e<=90||(e<97?95===e:e<=122||(e<=65535?e>=170&&r.test(String.fromCharCode(e)):a(e,i)||a(e,s))))}return se}(),n=function(){if(ae)return ce;ae=1,Object.defineProperty(ce,"__esModule",{value:!0}),ce.isKeyword=function(e){return n.has(e)},ce.isReservedWord=s,ce.isStrictBindOnlyReservedWord=o,ce.isStrictBindReservedWord=function(e,t){return a(e,t)||o(e)},ce.isStrictReservedWord=a;const e=["implements","interface","let","package","private","protected","public","static","yield"],t=["eval","arguments"],n=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"]),r=new Set(e),i=new Set(t);function s(e,t){return t&&"await"===e||"enum"===e}function a(e,t){return s(e,t)||r.has(e)}function o(e){return i.has(e)}return ce}()}(ie)),ie}function ue(){if(le)return re;le=1,Object.defineProperty(re,"__esModule",{value:!0}),re.default=function(t,n=!0){if("string"!=typeof t)return!1;if(n&&((0,e.isKeyword)(t)||(0,e.isStrictReservedWord)(t,!0)))return!1;return(0,e.isIdentifierName)(t)};var e=pe();return re}var he,de={};var fe,me={};function ye(){if(fe)return me;fe=1,Object.defineProperty(me,"__esModule",{value:!0}),me.UPDATE_OPERATORS=me.UNARY_OPERATORS=me.STRING_UNARY_OPERATORS=me.STATEMENT_OR_BLOCK_KEYS=me.NUMBER_UNARY_OPERATORS=me.NUMBER_BINARY_OPERATORS=me.LOGICAL_OPERATORS=me.INHERIT_KEYS=me.FOR_INIT_KEYS=me.FLATTENABLE_KEYS=me.EQUALITY_BINARY_OPERATORS=me.COMPARISON_BINARY_OPERATORS=me.COMMENT_KEYS=me.BOOLEAN_UNARY_OPERATORS=me.BOOLEAN_NUMBER_BINARY_OPERATORS=me.BOOLEAN_BINARY_OPERATORS=me.BINARY_OPERATORS=me.ASSIGNMENT_OPERATORS=void 0,me.STATEMENT_OR_BLOCK_KEYS=["consequent","body","alternate"],me.FLATTENABLE_KEYS=["body","expressions"],me.FOR_INIT_KEYS=["left","init"],me.COMMENT_KEYS=["leadingComments","trailingComments","innerComments"];const e=me.LOGICAL_OPERATORS=["||","&&","??"];me.UPDATE_OPERATORS=["++","--"];const t=me.BOOLEAN_NUMBER_BINARY_OPERATORS=[">","<",">=","<="],n=me.EQUALITY_BINARY_OPERATORS=["==","===","!=","!=="],r=me.COMPARISON_BINARY_OPERATORS=[...n,"in","instanceof"],i=me.BOOLEAN_BINARY_OPERATORS=[...r,...t],s=me.NUMBER_BINARY_OPERATORS=["-","/","%","*","**","&","|",">>",">>>","<<","^"];me.BINARY_OPERATORS=["+",...s,...i,"|>"],me.ASSIGNMENT_OPERATORS=["=","+=",...s.map(e=>e+"="),...e.map(e=>e+"=")];const a=me.BOOLEAN_UNARY_OPERATORS=["delete","!"],o=me.NUMBER_UNARY_OPERATORS=["+","-","~"],l=me.STRING_UNARY_OPERATORS=["typeof"];return me.UNARY_OPERATORS=["void","throw",...a,...o,...l],me.INHERIT_KEYS={optional:["typeAnnotation","typeParameters","returnType"],force:["start","loc","end"]},me.BLOCK_SCOPED_SYMBOL=Symbol.for("var used to be block scoped"),me.NOT_LOCAL_BINDING=Symbol.for("should not be considered a local binding"),me}var Te,ge,xe={};function Se(){if(Te)return xe;Te=1,Object.defineProperty(xe,"__esModule",{value:!0}),xe.allExpandedTypes=xe.VISITOR_KEYS=xe.NODE_UNION_SHAPES__PRIVATE=xe.NODE_PARENT_VALIDATIONS=xe.NODE_FIELDS=xe.FLIPPED_ALIAS_KEYS=xe.DEPRECATED_KEYS=xe.BUILDER_KEYS=xe.ALIAS_KEYS=void 0,xe.arrayOf=h,xe.arrayOfType=d,xe.assertEach=f,xe.assertNodeOrValueType=function(...n){function r(r,i,s){const a=p(s);for(const o of n)if(a===o||(0,e.default)(o,s))return void(0,t.validateChild)(r,i,s);throw new TypeError(`Property ${i} of ${r.type} expected node to be of a type ${JSON.stringify(n)} but instead got ${JSON.stringify(null==s?void 0:s.type)}`)}return r.oneOfNodeOrValueTypes=n,r},xe.assertNodeType=y,xe.assertOneOf=function(...e){function t(t,n,r){if(!e.includes(r))throw new TypeError(`Property ${n} expected value to be one of ${JSON.stringify(e)} but got ${JSON.stringify(r)}`)}return t.oneOf=e,t},xe.assertOptionalChainStart=function(){return function(e){var t;let n=e;for(;e;){const{type:e}=n;if("OptionalCallExpression"!==e){if("OptionalMemberExpression"!==e)break;if(n.optional)return;n=n.object}else{if(n.optional)return;n=n.callee}}throw new TypeError(`Non-optional ${e.type} must chain from an optional OptionalMemberExpression or OptionalCallExpression. Found chain from ${null==(t=n)?void 0:t.type}`)}},xe.assertShape=function(e){const n=Object.keys(e);function r(r,i,s){const a=[];for(const i of n)try{(0,t.validateField)(r,i,s[i],e[i])}catch(e){if(e instanceof TypeError){a.push(e.message);continue}throw e}if(a.length)throw new TypeError(`Property ${i} of ${r.type} expected to have the following:\n${a.join("\n")}`)}return r.shapeOf=e,r},xe.assertValueType=T,xe.chain=g,xe.default=P,xe.defineAliasedType=function(...e){return(t,n={})=>{let r=n.aliases;var i;r||(n.inherits&&(r=null==(i=b[n.inherits].aliases)?void 0:i.slice()),null!=r||(r=[]),n.aliases=r);const s=e.filter(e=>!r.includes(e));r.unshift(...s),P(t,n)}},xe.validate=u,xe.validateArrayOfType=function(...e){return u(d(...e))},xe.validateOptional=function(e){return{validate:e,optional:!0}},xe.validateOptionalType=function(...e){return{validate:y(...e),optional:!0}},xe.validateType=function(...e){return u(y(...e))};var e=te(),t=Ke();const n=xe.VISITOR_KEYS={},r=xe.ALIAS_KEYS={},i=xe.FLIPPED_ALIAS_KEYS={},s=xe.NODE_FIELDS={},a=xe.BUILDER_KEYS={},o=xe.DEPRECATED_KEYS={},l=xe.NODE_PARENT_VALIDATIONS={},c=xe.NODE_UNION_SHAPES__PRIVATE={};function p(e){return Array.isArray(e)?"array":null===e?"null":typeof e}function u(e){return{validate:e}}function h(e){return g(T("array"),f(e))}function d(...e){return h(y(...e))}function f(e){const n=process.env.BABEL_TYPES_8_BREAKING?t.validateChild:()=>{};function r(t,r,i){if(!Array.isArray(i))return;let s=0;const a={toString:()=>`${r}[${s}]`};for(;s<i.length;s++){const r=i[s];e(t,a,r),n(t,a,r)}}return r.each=e,r}const m=xe.allExpandedTypes=[];function y(...n){const r=new Set;function i(i,s,a){const o=null==a?void 0:a.type;if(null!=o){if(r.has(o))return void(0,t.validateChild)(i,s,a);if("Placeholder"===o)for(const r of n)if((0,e.default)(r,a))return void(0,t.validateChild)(i,s,a)}throw new TypeError(`Property ${s} of ${i.type} expected node to be of a type ${JSON.stringify(n)} but instead got ${JSON.stringify(o)}`)}return m.push({types:n,set:r}),i.oneOfNodeTypes=n,i}function T(e){function t(t,n,r){if(p(r)!==e)throw new TypeError(`Property ${n} expected type of ${e} but got ${p(r)}`)}return t.type=e,t}function g(...e){function t(...t){for(const n of e)n(...t)}if(t.chainOf=e,e.length>=2&&"type"in e[0]&&"array"===e[0].type&&!("each"in e[1]))throw new Error('An assertValueType("array") validator can only be followed by an assertEach(...) validator.');return t}const x=new Set(["aliases","builder","deprecatedAlias","fields","inherits","visitor","validate","unionShape"]),S=new Set(["default","optional","deprecated","validate"]),b={};function P(e,t={}){const u=t.inherits&&b[t.inherits]||{};let h=t.fields;if(!h&&(h={},u.fields)){const e=Object.getOwnPropertyNames(u.fields);for(const t of e){const e=u.fields[t],n=e.default;if(Array.isArray(n)?n.length>0:n&&"object"==typeof n)throw new Error("field defaults can only be primitives or empty arrays currently");h[t]={default:Array.isArray(n)?[]:n,optional:e.optional,deprecated:e.deprecated,validate:e.validate}}}const d=t.visitor||u.visitor||[],f=t.aliases||u.aliases||[],m=t.builder||u.builder||t.visitor||[];for(const n of Object.keys(t))if(!x.has(n))throw new Error(`Unknown type option "${n}" on ${e}`);t.deprecatedAlias&&(o[t.deprecatedAlias]=e);for(const e of d.concat(m))h[e]=h[e]||{};for(const t of Object.keys(h)){const n=h[t];void 0===n.default||m.includes(t)||(n.optional=!0),void 0===n.default?n.default=null:n.validate||null==n.default||(n.validate=T(p(n.default)));for(const r of Object.keys(n))if(!S.has(r))throw new Error(`Unknown field key "${r}" on ${e}.${t}`)}n[e]=t.visitor=d,a[e]=t.builder=m,s[e]=t.fields=h,r[e]=t.aliases=f,f.forEach(t=>{i[t]=i[t]||[],i[t].push(e)}),t.validate&&(l[e]=t.validate),t.unionShape&&(c[e]=t.unionShape),b[e]=t}return xe}function be(){if(ge)return J;ge=1,Object.defineProperty(J,"__esModule",{value:!0}),J.patternLikeCommon=J.importAttributes=J.functionTypeAnnotationCommon=J.functionDeclarationCommon=J.functionCommon=J.classMethodOrPropertyUnionShapeCommon=J.classMethodOrPropertyCommon=J.classMethodOrDeclareMethodCommon=void 0;var e=te(),t=ue(),n=pe(),r=function(){if(he)return de;he=1,Object.defineProperty(de,"__esModule",{value:!0}),de.readCodePoint=o,de.readInt=a,de.readStringContents=function(e,t,n,s,a,o){const l=n,c=s,p=a;let u="",h=null,d=n;const{length:f}=t;for(;;){if(n>=f){o.unterminated(l,c,p),u+=t.slice(d,n);break}const m=t.charCodeAt(n);if(r(e,m,t,n)){u+=t.slice(d,n);break}if(92===m){u+=t.slice(d,n);const r=i(t,n,s,a,"template"===e,o);null!==r.ch||h?u+=r.ch:h={pos:n,lineStart:s,curLine:a},({pos:n,lineStart:s,curLine:a}=r),d=n}else 8232===m||8233===m?(++a,s=++n):10===m||13===m?"template"===e?(u+=t.slice(d,n)+"\n",++n,13===m&&10===t.charCodeAt(n)&&++n,++a,d=s=n):o.unterminated(l,c,p):++n}return{pos:n,str:u,firstInvalidLoc:h,lineStart:s,curLine:a,containsInvalid:!!h}};var e=function(e){return e>=48&&e<=57};const t={decBinOct:new Set([46,66,69,79,95,98,101,111]),hex:new Set([46,88,95,120])},n={bin:e=>48===e||49===e,oct:e=>e>=48&&e<=55,dec:e=>e>=48&&e<=57,hex:e=>e>=48&&e<=57||e>=65&&e<=70||e>=97&&e<=102};function r(e,t,n,r){return"template"===e?96===t||36===t&&123===n.charCodeAt(r+1):t===("double"===e?34:39)}function i(e,t,n,r,i,a){const l=!i;t++;const c=e=>({pos:t,ch:e,lineStart:n,curLine:r}),p=e.charCodeAt(t++);switch(p){case 110:return c("\n");case 114:return c("\r");case 120:{let i;return({code:i,pos:t}=s(e,t,n,r,2,!1,l,a)),c(null===i?null:String.fromCharCode(i))}case 117:{let i;return({code:i,pos:t}=o(e,t,n,r,l,a)),c(null===i?null:String.fromCodePoint(i))}case 116:return c("\t");case 98:return c("\b");case 118:return c("\v");case 102:return c("\f");case 13:10===e.charCodeAt(t)&&++t;case 10:n=t,++r;case 8232:case 8233:return c("");case 56:case 57:if(i)return c(null);a.strictNumericEscape(t-1,n,r);default:if(p>=48&&p<=55){const s=t-1;let o=/^[0-7]+/.exec(e.slice(s,t+2))[0],l=parseInt(o,8);l>255&&(o=o.slice(0,-1),l=parseInt(o,8)),t+=o.length-1;const p=e.charCodeAt(t);if("0"!==o||56===p||57===p){if(i)return c(null);a.strictNumericEscape(s,n,r)}return c(String.fromCharCode(l))}return c(String.fromCharCode(p))}}function s(e,t,n,r,i,s,o,l){const c=t;let p;return({n:p,pos:t}=a(e,t,n,r,16,i,s,!1,l,!o)),null===p&&(o?l.invalidEscapeSequence(c,n,r):t=c-1),{code:p,pos:t}}function a(r,i,s,a,o,l,c,p,u,h){const d=i,f=16===o?t.hex:t.decBinOct,m=16===o?n.hex:10===o?n.dec:8===o?n.oct:n.bin;let y=!1,T=0;for(let t=0,n=null==l?1/0:l;t<n;++t){const t=r.charCodeAt(i);let n;if(95===t&&"bail"!==p){const e=r.charCodeAt(i-1),t=r.charCodeAt(i+1);if(p){if(Number.isNaN(t)||!m(t)||f.has(e)||f.has(t)){if(h)return{n:null,pos:i};u.unexpectedNumericSeparator(i,s,a)}}else{if(h)return{n:null,pos:i};u.numericSeparatorInEscapeSequence(i,s,a)}++i;continue}if(n=t>=97?t-97+10:t>=65?t-65+10:e(t)?t-48:1/0,n>=o){if(n<=9&&h)return{n:null,pos:i};if(n<=9&&u.invalidDigit(i,s,a,o))n=0;else{if(!c)break;n=0,y=!0}}++i,T=T*o+n}return i===d||null!=l&&i-d!==l||y?{n:null,pos:i}:{n:T,pos:i}}function o(e,t,n,r,i,a){let o;if(123===e.charCodeAt(t)){if(++t,({code:o,pos:t}=s(e,t,n,r,e.indexOf("}",t)-t,!0,i,a)),++t,null!==o&&o>1114111){if(!i)return{code:null,pos:t};a.invalidCodePoint(t,n,r)}}else({code:o,pos:t}=s(e,t,n,r,4,!1,i,a));return{code:o,pos:t}}return de}(),i=ye(),s=Se();const a=(e=!1)=>({unionShape:{discriminator:"computed",shapes:[{name:"computed",value:[!0],properties:{key:{validate:(0,s.assertNodeType)("Expression")}}},{name:"nonComputed",value:[!1],properties:{key:{validate:e?(0,s.assertNodeType)("Identifier","StringLiteral","NumericLiteral","BigIntLiteral","PrivateName"):(0,s.assertNodeType)("Identifier","StringLiteral","NumericLiteral","BigIntLiteral")}}}]}});J.classMethodOrPropertyUnionShapeCommon=a;const o=(0,s.defineAliasedType)("Standardized");o("ArrayExpression",{fields:{elements:{validate:(0,s.arrayOf)((0,s.assertNodeOrValueType)("null","Expression","SpreadElement")),default:process.env.BABEL_TYPES_8_BREAKING?void 0:[]}},visitor:["elements"],aliases:["Expression"]}),o("AssignmentExpression",{fields:{operator:{validate:process.env.BABEL_TYPES_8_BREAKING?Object.assign(function(){const t=(0,s.assertOneOf)(...i.ASSIGNMENT_OPERATORS),n=(0,s.assertOneOf)("=");return function(r,i,s){((0,e.default)("Pattern",r.left)?n:t)(r,i,s)}}(),{oneOf:i.ASSIGNMENT_OPERATORS}):(0,s.assertValueType)("string")},left:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,s.assertNodeType)("Identifier","MemberExpression","OptionalMemberExpression","ArrayPattern","ObjectPattern","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression"):(0,s.assertNodeType)("LVal","OptionalMemberExpression")},right:{validate:(0,s.assertNodeType)("Expression")}},builder:["operator","left","right"],visitor:["left","right"],aliases:["Expression"]}),o("BinaryExpression",{builder:["operator","left","right"],fields:{operator:{validate:(0,s.assertOneOf)(...i.BINARY_OPERATORS)},left:{validate:function(){const e=(0,s.assertNodeType)("Expression"),t=(0,s.assertNodeType)("Expression","PrivateName"),n=Object.assign(function(n,r,i){("in"===n.operator?t:e)(n,r,i)},{oneOfNodeTypes:["Expression","PrivateName"]});return n}()},right:{validate:(0,s.assertNodeType)("Expression")}},visitor:["left","right"],aliases:["Binary","Expression"]}),o("InterpreterDirective",{builder:["value"],fields:{value:{validate:(0,s.assertValueType)("string")}}}),o("Directive",{visitor:["value"],fields:{value:{validate:(0,s.assertNodeType)("DirectiveLiteral")}}}),o("DirectiveLiteral",{builder:["value"],fields:{value:{validate:(0,s.assertValueType)("string")}}}),o("BlockStatement",{builder:["body","directives"],visitor:["directives","body"],fields:{directives:{validate:(0,s.arrayOfType)("Directive"),default:[]},body:(0,s.validateArrayOfType)("Statement")},aliases:["Scopable","BlockParent","Block","Statement"]}),o("BreakStatement",{visitor:["label"],fields:{label:{validate:(0,s.assertNodeType)("Identifier"),optional:!0}},aliases:["Statement","Terminatorless","CompletionStatement"]}),o("CallExpression",{visitor:["callee","typeParameters","typeArguments","arguments"],builder:["callee","arguments"],aliases:["Expression"],fields:Object.assign({callee:{validate:(0,s.assertNodeType)("Expression","Super","V8IntrinsicIdentifier")},arguments:(0,s.validateArrayOfType)("Expression","SpreadElement","ArgumentPlaceholder"),typeArguments:{validate:(0,s.assertNodeType)("TypeParameterInstantiation"),optional:!0}},process.env.BABEL_TYPES_8_BREAKING?{}:{optional:{validate:(0,s.assertValueType)("boolean"),optional:!0},typeParameters:{validate:(0,s.assertNodeType)("TSTypeParameterInstantiation"),optional:!0}})}),o("CatchClause",{visitor:["param","body"],fields:{param:{validate:(0,s.assertNodeType)("Identifier","ArrayPattern","ObjectPattern"),optional:!0},body:{validate:(0,s.assertNodeType)("BlockStatement")}},aliases:["Scopable","BlockParent"]}),o("ConditionalExpression",{visitor:["test","consequent","alternate"],fields:{test:{validate:(0,s.assertNodeType)("Expression")},consequent:{validate:(0,s.assertNodeType)("Expression")},alternate:{validate:(0,s.assertNodeType)("Expression")}},aliases:["Expression","Conditional"]}),o("ContinueStatement",{visitor:["label"],fields:{label:{validate:(0,s.assertNodeType)("Identifier"),optional:!0}},aliases:["Statement","Terminatorless","CompletionStatement"]}),o("DebuggerStatement",{aliases:["Statement"]}),o("DoWhileStatement",{builder:["test","body"],visitor:["body","test"],fields:{test:{validate:(0,s.assertNodeType)("Expression")},body:{validate:(0,s.assertNodeType)("Statement")}},aliases:["Statement","BlockParent","Loop","While","Scopable"]}),o("EmptyStatement",{aliases:["Statement"]}),o("ExpressionStatement",{visitor:["expression"],fields:{expression:{validate:(0,s.assertNodeType)("Expression")}},aliases:["Statement","ExpressionWrapper"]}),o("File",{builder:["program","comments","tokens"],visitor:["program"],fields:{program:{validate:(0,s.assertNodeType)("Program")},comments:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,s.assertEach)((0,s.assertNodeType)("CommentBlock","CommentLine")):Object.assign(()=>{},{each:{oneOfNodeTypes:["CommentBlock","CommentLine"]}}),optional:!0},tokens:{validate:(0,s.assertEach)(Object.assign(()=>{},{type:"any"})),optional:!0}}}),o("ForInStatement",{visitor:["left","right","body"],aliases:["Scopable","Statement","For","BlockParent","Loop","ForXStatement"],fields:{left:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,s.assertNodeType)("VariableDeclaration","Identifier","MemberExpression","ArrayPattern","ObjectPattern","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression"):(0,s.assertNodeType)("VariableDeclaration","LVal")},right:{validate:(0,s.assertNodeType)("Expression")},body:{validate:(0,s.assertNodeType)("Statement")}}}),o("ForStatement",{visitor:["init","test","update","body"],aliases:["Scopable","Statement","For","BlockParent","Loop"],fields:{init:{validate:(0,s.assertNodeType)("VariableDeclaration","Expression"),optional:!0},test:{validate:(0,s.assertNodeType)("Expression"),optional:!0},update:{validate:(0,s.assertNodeType)("Expression"),optional:!0},body:{validate:(0,s.assertNodeType)("Statement")}}});const l=()=>({params:(0,s.validateArrayOfType)("FunctionParameter"),generator:{default:!1},async:{default:!1}});J.functionCommon=l;const c=()=>({returnType:{validate:(0,s.assertNodeType)("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},typeParameters:{validate:(0,s.assertNodeType)("TypeParameterDeclaration","TSTypeParameterDeclaration","Noop"),optional:!0}});J.functionTypeAnnotationCommon=c;const p=()=>Object.assign({},l(),{declare:{validate:(0,s.assertValueType)("boolean"),optional:!0},id:{validate:(0,s.assertNodeType)("Identifier"),optional:!0}});J.functionDeclarationCommon=p,o("FunctionDeclaration",{builder:["id","params","body","generator","async"],visitor:["id","typeParameters","params","predicate","returnType","body"],fields:Object.assign({},p(),c(),{body:{validate:(0,s.assertNodeType)("BlockStatement")},predicate:{validate:(0,s.assertNodeType)("DeclaredPredicate","InferredPredicate"),optional:!0}}),aliases:["Scopable","Function","BlockParent","FunctionParent","Statement","Pureish","Declaration"],validate:process.env.BABEL_TYPES_8_BREAKING?function(){const t=(0,s.assertNodeType)("Identifier");return function(n,r,i){(0,e.default)("ExportDefaultDeclaration",n)||t(i,"id",i.id)}}():void 0}),o("FunctionExpression",{inherits:"FunctionDeclaration",aliases:["Scopable","Function","BlockParent","FunctionParent","Expression","Pureish"],fields:Object.assign({},l(),c(),{id:{validate:(0,s.assertNodeType)("Identifier"),optional:!0},body:{validate:(0,s.assertNodeType)("BlockStatement")},predicate:{validate:(0,s.assertNodeType)("DeclaredPredicate","InferredPredicate"),optional:!0}})});const u=()=>({typeAnnotation:{validate:(0,s.assertNodeType)("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},optional:{validate:(0,s.assertValueType)("boolean"),optional:!0},decorators:{validate:(0,s.arrayOfType)("Decorator"),optional:!0}});J.patternLikeCommon=u,o("Identifier",{builder:["name"],visitor:["typeAnnotation","decorators"],aliases:["Expression","FunctionParameter","PatternLike","LVal","TSEntityName"],fields:Object.assign({},u(),{name:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,s.chain)((0,s.assertValueType)("string"),Object.assign(function(e,n,r){if(!(0,t.default)(r,!1))throw new TypeError(`"${r}" is not a valid identifier name`)},{type:"string"})):(0,s.assertValueType)("string")}}),validate:process.env.BABEL_TYPES_8_BREAKING?function(t,r,i){const s=/\.(\w+)$/.exec(r.toString());if(!s)return;const[,a]=s,o={computed:!1};if("property"===a){if((0,e.default)("MemberExpression",t,o))return;if((0,e.default)("OptionalMemberExpression",t,o))return}else if("key"===a){if((0,e.default)("Property",t,o))return;if((0,e.default)("Method",t,o))return}else if("exported"===a){if((0,e.default)("ExportSpecifier",t))return}else if("imported"===a){if((0,e.default)("ImportSpecifier",t,{imported:i}))return}else if("meta"===a&&(0,e.default)("MetaProperty",t,{meta:i}))return;if(((0,n.isKeyword)(i.name)||(0,n.isReservedWord)(i.name,!1))&&"this"!==i.name)throw new TypeError(`"${i.name}" is not a valid identifier`)}:void 0}),o("IfStatement",{visitor:["test","consequent","alternate"],aliases:["Statement","Conditional"],fields:{test:{validate:(0,s.assertNodeType)("Expression")},consequent:{validate:(0,s.assertNodeType)("Statement")},alternate:{optional:!0,validate:(0,s.assertNodeType)("Statement")}}}),o("LabeledStatement",{visitor:["label","body"],aliases:["Statement"],fields:{label:{validate:(0,s.assertNodeType)("Identifier")},body:{validate:(0,s.assertNodeType)("Statement")}}}),o("StringLiteral",{builder:["value"],fields:{value:{validate:(0,s.assertValueType)("string")}},aliases:["Expression","Pureish","Literal","Immutable"]}),o("NumericLiteral",{builder:["value"],deprecatedAlias:"NumberLiteral",fields:{value:{validate:(0,s.chain)((0,s.assertValueType)("number"),Object.assign(function(e,t,n){},{type:"number"}))}},aliases:["Expression","Pureish","Literal","Immutable"]}),o("NullLiteral",{aliases:["Expression","Pureish","Literal","Immutable"]}),o("BooleanLiteral",{builder:["value"],fields:{value:{validate:(0,s.assertValueType)("boolean")}},aliases:["Expression","Pureish","Literal","Immutable"]}),o("RegExpLiteral",{builder:["pattern","flags"],deprecatedAlias:"RegexLiteral",aliases:["Expression","Pureish","Literal"],fields:{pattern:{validate:(0,s.assertValueType)("string")},flags:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,s.chain)((0,s.assertValueType)("string"),Object.assign(function(e,t,n){const r=/[^dgimsuvy]/.exec(n);if(r)throw new TypeError(`"${r[0]}" is not a valid RegExp flag`)},{type:"string"})):(0,s.assertValueType)("string"),default:""}}}),o("LogicalExpression",{builder:["operator","left","right"],visitor:["left","right"],aliases:["Binary","Expression"],fields:{operator:{validate:(0,s.assertOneOf)(...i.LOGICAL_OPERATORS)},left:{validate:(0,s.assertNodeType)("Expression")},right:{validate:(0,s.assertNodeType)("Expression")}}}),o("MemberExpression",{builder:["object","property","computed",...process.env.BABEL_TYPES_8_BREAKING?[]:["optional"]],visitor:["object","property"],aliases:["Expression","LVal","PatternLike"],unionShape:{discriminator:"computed",shapes:[{name:"computed",value:[!0],properties:{property:{validate:(0,s.assertNodeType)("Expression")}}},{name:"nonComputed",value:[!1],properties:{property:{validate:(0,s.assertNodeType)("Identifier","PrivateName")}}}]},fields:Object.assign({object:{validate:(0,s.assertNodeType)("Expression","Super")},property:{validate:function(){const e=(0,s.assertNodeType)("Identifier","PrivateName"),t=(0,s.assertNodeType)("Expression"),n=function(n,r,i){(n.computed?t:e)(n,r,i)};return n.oneOfNodeTypes=["Expression","Identifier","PrivateName"],n}()},computed:{default:!1}},process.env.BABEL_TYPES_8_BREAKING?{}:{optional:{validate:(0,s.assertValueType)("boolean"),optional:!0}})}),o("NewExpression",{inherits:"CallExpression"}),o("Program",{visitor:["directives","body"],builder:["body","directives","sourceType","interpreter"],fields:{sourceType:{validate:(0,s.assertOneOf)("script","module"),default:"script"},interpreter:{validate:(0,s.assertNodeType)("InterpreterDirective"),default:null,optional:!0},directives:{validate:(0,s.arrayOfType)("Directive"),default:[]},body:(0,s.validateArrayOfType)("Statement")},aliases:["Scopable","BlockParent","Block"]}),o("ObjectExpression",{visitor:["properties"],aliases:["Expression"],fields:{properties:(0,s.validateArrayOfType)("ObjectMethod","ObjectProperty","SpreadElement")}}),o("ObjectMethod",Object.assign({builder:["kind","key","params","body","computed","generator","async"],visitor:["decorators","key","typeParameters","params","returnType","body"]},a(),{fields:Object.assign({},l(),c(),{kind:Object.assign({validate:(0,s.assertOneOf)("method","get","set")},process.env.BABEL_TYPES_8_BREAKING?{}:{default:"method"}),computed:{default:!1},key:{validate:function(){const e=(0,s.assertNodeType)("Identifier","StringLiteral","NumericLiteral","BigIntLiteral"),t=(0,s.assertNodeType)("Expression"),n=function(n,r,i){(n.computed?t:e)(n,r,i)};return n.oneOfNodeTypes=["Expression","Identifier","StringLiteral","NumericLiteral","BigIntLiteral"],n}()},decorators:{validate:(0,s.arrayOfType)("Decorator"),optional:!0},body:{validate:(0,s.assertNodeType)("BlockStatement")}}),aliases:["UserWhitespacable","Function","Scopable","BlockParent","FunctionParent","Method","ObjectMember"]})),o("ObjectProperty",{builder:["key","value","computed","shorthand",...process.env.BABEL_TYPES_8_BREAKING?[]:["decorators"]],unionShape:{discriminator:"computed",shapes:[{name:"computed",value:[!0],properties:{key:{validate:(0,s.assertNodeType)("Expression")}}},{name:"nonComputed",value:[!1],properties:{key:{validate:(0,s.assertNodeType)("Identifier","StringLiteral","NumericLiteral","BigIntLiteral","DecimalLiteral","PrivateName")}}}]},fields:{computed:{default:!1},key:{validate:function(){const e=(0,s.assertNodeType)("Identifier","StringLiteral","NumericLiteral","BigIntLiteral","DecimalLiteral","PrivateName"),t=(0,s.assertNodeType)("Expression"),n=Object.assign(function(n,r,i){(n.computed?t:e)(n,r,i)},{oneOfNodeTypes:["Expression","Identifier","StringLiteral","NumericLiteral","BigIntLiteral","DecimalLiteral","PrivateName"]});return n}()},value:{validate:(0,s.assertNodeType)("Expression","PatternLike")},shorthand:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,s.chain)((0,s.assertValueType)("boolean"),Object.assign(function(t,n,r){if(r){if(t.computed)throw new TypeError("Property shorthand of ObjectProperty cannot be true if computed is true");if(!(0,e.default)("Identifier",t.key))throw new TypeError("Property shorthand of ObjectProperty cannot be true if key is not an Identifier")}},{type:"boolean"})):(0,s.assertValueType)("boolean"),default:!1},decorators:{validate:(0,s.arrayOfType)("Decorator"),optional:!0}},visitor:["decorators","key","value"],aliases:["UserWhitespacable","Property","ObjectMember"],validate:process.env.BABEL_TYPES_8_BREAKING?function(){const t=(0,s.assertNodeType)("Identifier","Pattern","TSAsExpression","TSSatisfiesExpression","TSNonNullExpression","TSTypeAssertion"),n=(0,s.assertNodeType)("Expression");return function(r,i,s){((0,e.default)("ObjectPattern",r)?t:n)(s,"value",s.value)}}():void 0}),o("RestElement",{visitor:["argument","typeAnnotation"],builder:["argument"],aliases:["FunctionParameter","PatternLike","LVal"],deprecatedAlias:"RestProperty",fields:Object.assign({},u(),{argument:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,s.assertNodeType)("Identifier","ArrayPattern","ObjectPattern","MemberExpression","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression"):(0,s.assertNodeType)("Identifier","ArrayPattern","ObjectPattern","MemberExpression","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression","RestElement","AssignmentPattern")}}),validate:process.env.BABEL_TYPES_8_BREAKING?function(e,t){const n=/(\w+)\[(\d+)\]/.exec(t.toString());if(!n)throw new Error("Internal Babel error: malformed key.");const[,r,i]=n;if(e[r].length>+i+1)throw new TypeError(`RestElement must be last element of ${r}`)}:void 0}),o("ReturnStatement",{visitor:["argument"],aliases:["Statement","Terminatorless","CompletionStatement"],fields:{argument:{validate:(0,s.assertNodeType)("Expression"),optional:!0}}}),o("SequenceExpression",{visitor:["expressions"],fields:{expressions:(0,s.validateArrayOfType)("Expression")},aliases:["Expression"]}),o("ParenthesizedExpression",{visitor:["expression"],aliases:["Expression","ExpressionWrapper"],fields:{expression:{validate:(0,s.assertNodeType)("Expression")}}}),o("SwitchCase",{visitor:["test","consequent"],fields:{test:{validate:(0,s.assertNodeType)("Expression"),optional:!0},consequent:(0,s.validateArrayOfType)("Statement")}}),o("SwitchStatement",{visitor:["discriminant","cases"],aliases:["Statement","BlockParent","Scopable"],fields:{discriminant:{validate:(0,s.assertNodeType)("Expression")},cases:(0,s.validateArrayOfType)("SwitchCase")}}),o("ThisExpression",{aliases:["Expression"]}),o("ThrowStatement",{visitor:["argument"],aliases:["Statement","Terminatorless","CompletionStatement"],fields:{argument:{validate:(0,s.assertNodeType)("Expression")}}}),o("TryStatement",{visitor:["block","handler","finalizer"],aliases:["Statement"],fields:{block:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,s.chain)((0,s.assertNodeType)("BlockStatement"),Object.assign(function(e){if(!e.handler&&!e.finalizer)throw new TypeError("TryStatement expects either a handler or finalizer, or both")},{oneOfNodeTypes:["BlockStatement"]})):(0,s.assertNodeType)("BlockStatement")},handler:{optional:!0,validate:(0,s.assertNodeType)("CatchClause")},finalizer:{optional:!0,validate:(0,s.assertNodeType)("BlockStatement")}}}),o("UnaryExpression",{builder:["operator","argument","prefix"],fields:{prefix:{default:!0},argument:{validate:(0,s.assertNodeType)("Expression")},operator:{validate:(0,s.assertOneOf)(...i.UNARY_OPERATORS)}},visitor:["argument"],aliases:["UnaryLike","Expression"]}),o("UpdateExpression",{builder:["operator","argument","prefix"],fields:{prefix:{default:!1},argument:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,s.assertNodeType)("Identifier","MemberExpression"):(0,s.assertNodeType)("Expression")},operator:{validate:(0,s.assertOneOf)(...i.UPDATE_OPERATORS)}},visitor:["argument"],aliases:["Expression"]}),o("VariableDeclaration",{builder:["kind","declarations"],visitor:["declarations"],aliases:["Statement","Declaration"],fields:{declare:{validate:(0,s.assertValueType)("boolean"),optional:!0},kind:{validate:(0,s.assertOneOf)("var","let","const","using","await using")},declarations:(0,s.validateArrayOfType)("VariableDeclarator")},validate:process.env.BABEL_TYPES_8_BREAKING?(()=>{const t=(0,s.assertNodeType)("Identifier","Placeholder"),n=(0,s.assertNodeType)("Identifier","ArrayPattern","ObjectPattern","Placeholder"),r=(0,s.assertNodeType)("Identifier","VoidPattern","Placeholder");return function(i,s,a){const{kind:o,declarations:l}=a,c=(0,e.default)("ForXStatement",i,{left:a});if(c&&1!==l.length)throw new TypeError(`Exactly one VariableDeclarator is required in the VariableDeclaration of a ${i.type}`);for(const e of l)"const"===o||"let"===o||"var"===o?c||e.init?n(e,"id",e.id):t(e,"id",e.id):r(e,"id",e.id)}})():void 0}),o("VariableDeclarator",{visitor:["id","init"],fields:{id:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,s.assertNodeType)("Identifier","ArrayPattern","ObjectPattern","VoidPattern"):(0,s.assertNodeType)("LVal","VoidPattern")},definite:{optional:!0,validate:(0,s.assertValueType)("boolean")},init:{optional:!0,validate:(0,s.assertNodeType)("Expression")}}}),o("WhileStatement",{visitor:["test","body"],aliases:["Statement","BlockParent","Loop","While","Scopable"],fields:{test:{validate:(0,s.assertNodeType)("Expression")},body:{validate:(0,s.assertNodeType)("Statement")}}}),o("WithStatement",{visitor:["object","body"],aliases:["Statement"],fields:{object:{validate:(0,s.assertNodeType)("Expression")},body:{validate:(0,s.assertNodeType)("Statement")}}}),o("AssignmentPattern",{visitor:["left","right","decorators"],builder:["left","right"],aliases:["FunctionParameter","Pattern","PatternLike","LVal"],fields:Object.assign({},u(),{left:{validate:(0,s.assertNodeType)("Identifier","ObjectPattern","ArrayPattern","MemberExpression","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression")},right:{validate:(0,s.assertNodeType)("Expression")},decorators:{validate:(0,s.arrayOfType)("Decorator"),optional:!0}})}),o("ArrayPattern",{visitor:["elements","typeAnnotation"],builder:["elements"],aliases:["FunctionParameter","Pattern","PatternLike","LVal"],fields:Object.assign({},u(),{elements:{validate:(0,s.chain)((0,s.assertValueType)("array"),(0,s.assertEach)((0,s.assertNodeOrValueType)("null","PatternLike")))}})}),o("ArrowFunctionExpression",{builder:["params","body","async"],visitor:["typeParameters","params","predicate","returnType","body"],aliases:["Scopable","Function","BlockParent","FunctionParent","Expression","Pureish"],fields:Object.assign({},l(),c(),{expression:{validate:(0,s.assertValueType)("boolean")},body:{validate:(0,s.assertNodeType)("BlockStatement","Expression")},predicate:{validate:(0,s.assertNodeType)("DeclaredPredicate","InferredPredicate"),optional:!0}})}),o("ClassBody",{visitor:["body"],fields:{body:(0,s.validateArrayOfType)("ClassMethod","ClassPrivateMethod","ClassProperty","ClassPrivateProperty","ClassAccessorProperty","TSDeclareMethod","TSIndexSignature","StaticBlock")}}),o("ClassExpression",{builder:["id","superClass","body","decorators"],visitor:["decorators","id","typeParameters","superClass","superTypeParameters","mixins","implements","body"],aliases:["Scopable","Class","Expression"],fields:{id:{validate:(0,s.assertNodeType)("Identifier"),optional:!0},typeParameters:{validate:(0,s.assertNodeType)("TypeParameterDeclaration","TSTypeParameterDeclaration","Noop"),optional:!0},body:{validate:(0,s.assertNodeType)("ClassBody")},superClass:{optional:!0,validate:(0,s.assertNodeType)("Expression")},superTypeParameters:{validate:(0,s.assertNodeType)("TypeParameterInstantiation","TSTypeParameterInstantiation"),optional:!0},implements:{validate:(0,s.arrayOfType)("TSExpressionWithTypeArguments","ClassImplements"),optional:!0},decorators:{validate:(0,s.arrayOfType)("Decorator"),optional:!0},mixins:{validate:(0,s.assertNodeType)("InterfaceExtends"),optional:!0}}}),o("ClassDeclaration",{inherits:"ClassExpression",aliases:["Scopable","Class","Statement","Declaration"],fields:{id:{validate:(0,s.assertNodeType)("Identifier"),optional:!0},typeParameters:{validate:(0,s.assertNodeType)("TypeParameterDeclaration","TSTypeParameterDeclaration","Noop"),optional:!0},body:{validate:(0,s.assertNodeType)("ClassBody")},superClass:{optional:!0,validate:(0,s.assertNodeType)("Expression")},superTypeParameters:{validate:(0,s.assertNodeType)("TypeParameterInstantiation","TSTypeParameterInstantiation"),optional:!0},implements:{validate:(0,s.arrayOfType)("TSExpressionWithTypeArguments","ClassImplements"),optional:!0},decorators:{validate:(0,s.arrayOfType)("Decorator"),optional:!0},mixins:{validate:(0,s.assertNodeType)("InterfaceExtends"),optional:!0},declare:{validate:(0,s.assertValueType)("boolean"),optional:!0},abstract:{validate:(0,s.assertValueType)("boolean"),optional:!0}},validate:process.env.BABEL_TYPES_8_BREAKING?function(){const t=(0,s.assertNodeType)("Identifier");return function(n,r,i){(0,e.default)("ExportDefaultDeclaration",n)||t(i,"id",i.id)}}():void 0});const h=J.importAttributes={attributes:{optional:!0,validate:(0,s.arrayOfType)("ImportAttribute")},assertions:{deprecated:!0,optional:!0,validate:(0,s.arrayOfType)("ImportAttribute")}};o("ExportAllDeclaration",{builder:["source"],visitor:["source","attributes","assertions"],aliases:["Statement","Declaration","ImportOrExportDeclaration","ExportDeclaration"],fields:Object.assign({source:{validate:(0,s.assertNodeType)("StringLiteral")},exportKind:(0,s.validateOptional)((0,s.assertOneOf)("type","value"))},h)}),o("ExportDefaultDeclaration",{visitor:["declaration"],aliases:["Statement","Declaration","ImportOrExportDeclaration","ExportDeclaration"],fields:{declaration:(0,s.validateType)("TSDeclareFunction","FunctionDeclaration","ClassDeclaration","Expression"),exportKind:(0,s.validateOptional)((0,s.assertOneOf)("value"))}}),o("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,s.chain)((0,s.assertNodeType)("Declaration"),Object.assign(function(e,t,n){if(n&&e.specifiers.length)throw new TypeError("Only declaration or specifiers is allowed on ExportNamedDeclaration");if(n&&e.source)throw new TypeError("Cannot export a declaration from a source")},{oneOfNodeTypes:["Declaration"]})):(0,s.assertNodeType)("Declaration")}},h,{specifiers:{default:[],validate:(0,s.arrayOf)(function(){const e=(0,s.assertNodeType)("ExportSpecifier","ExportDefaultSpecifier","ExportNamespaceSpecifier"),t=(0,s.assertNodeType)("ExportSpecifier");return process.env.BABEL_TYPES_8_BREAKING?Object.assign(function(n,r,i){(n.source?e:t)(n,r,i)},{oneOfNodeTypes:["ExportSpecifier","ExportDefaultSpecifier","ExportNamespaceSpecifier"]}):e}())},source:{validate:(0,s.assertNodeType)("StringLiteral"),optional:!0},exportKind:(0,s.validateOptional)((0,s.assertOneOf)("type","value"))})}),o("ExportSpecifier",{visitor:["local","exported"],aliases:["ModuleSpecifier"],fields:{local:{validate:(0,s.assertNodeType)("Identifier")},exported:{validate:(0,s.assertNodeType)("Identifier","StringLiteral")},exportKind:{validate:(0,s.assertOneOf)("type","value"),optional:!0}}}),o("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,s.assertNodeType)("VariableDeclaration","LVal");const t=(0,s.assertNodeType)("VariableDeclaration"),n=(0,s.assertNodeType)("Identifier","MemberExpression","ArrayPattern","ObjectPattern","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression");return Object.assign(function(r,i,s){(0,e.default)("VariableDeclaration",s)?t(r,i,s):n(r,i,s)},{oneOfNodeTypes:["VariableDeclaration","Identifier","MemberExpression","ArrayPattern","ObjectPattern","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression"]})}()},right:{validate:(0,s.assertNodeType)("Expression")},body:{validate:(0,s.assertNodeType)("Statement")},await:{default:!1}}}),o("ImportDeclaration",{builder:["specifiers","source"],visitor:["specifiers","source","attributes","assertions"],aliases:["Statement","Declaration","ImportOrExportDeclaration"],fields:Object.assign({},h,{module:{optional:!0,validate:(0,s.assertValueType)("boolean")},phase:{default:null,validate:(0,s.assertOneOf)("source","defer")},specifiers:(0,s.validateArrayOfType)("ImportSpecifier","ImportDefaultSpecifier","ImportNamespaceSpecifier"),source:{validate:(0,s.assertNodeType)("StringLiteral")},importKind:{validate:(0,s.assertOneOf)("type","typeof","value"),optional:!0}})}),o("ImportDefaultSpecifier",{visitor:["local"],aliases:["ModuleSpecifier"],fields:{local:{validate:(0,s.assertNodeType)("Identifier")}}}),o("ImportNamespaceSpecifier",{visitor:["local"],aliases:["ModuleSpecifier"],fields:{local:{validate:(0,s.assertNodeType)("Identifier")}}}),o("ImportSpecifier",{visitor:["imported","local"],builder:["local","imported"],aliases:["ModuleSpecifier"],fields:{local:{validate:(0,s.assertNodeType)("Identifier")},imported:{validate:(0,s.assertNodeType)("Identifier","StringLiteral")},importKind:{validate:(0,s.assertOneOf)("type","typeof","value"),optional:!0}}}),o("ImportExpression",{visitor:["source","options"],aliases:["Expression"],fields:{phase:{default:null,validate:(0,s.assertOneOf)("source","defer")},source:{validate:(0,s.assertNodeType)("Expression")},options:{validate:(0,s.assertNodeType)("Expression"),optional:!0}}}),o("MetaProperty",{visitor:["meta","property"],aliases:["Expression"],fields:{meta:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,s.chain)((0,s.assertNodeType)("Identifier"),Object.assign(function(t,n,r){let i;switch(r.name){case"function":i="sent";break;case"new":i="target";break;case"import":i="meta"}if(!(0,e.default)("Identifier",t.property,{name:i}))throw new TypeError("Unrecognised MetaProperty")},{oneOfNodeTypes:["Identifier"]})):(0,s.assertNodeType)("Identifier")},property:{validate:(0,s.assertNodeType)("Identifier")}}});const d=()=>({abstract:{validate:(0,s.assertValueType)("boolean"),optional:!0},accessibility:{validate:(0,s.assertOneOf)("public","private","protected"),optional:!0},static:{default:!1},override:{default:!1},computed:{default:!1},optional:{validate:(0,s.assertValueType)("boolean"),optional:!0},key:{validate:(0,s.chain)(function(){const e=(0,s.assertNodeType)("Identifier","StringLiteral","NumericLiteral","BigIntLiteral"),t=(0,s.assertNodeType)("Expression");return function(n,r,i){(n.computed?t:e)(n,r,i)}}(),(0,s.assertNodeType)("Identifier","StringLiteral","NumericLiteral","BigIntLiteral","Expression"))}});J.classMethodOrPropertyCommon=d;const f=()=>Object.assign({},l(),d(),{params:(0,s.validateArrayOfType)("FunctionParameter","TSParameterProperty"),kind:{validate:(0,s.assertOneOf)("get","set","method","constructor"),default:"method"},access:{validate:(0,s.chain)((0,s.assertValueType)("string"),(0,s.assertOneOf)("public","private","protected")),optional:!0},decorators:{validate:(0,s.arrayOfType)("Decorator"),optional:!0}});return J.classMethodOrDeclareMethodCommon=f,o("ClassMethod",Object.assign({aliases:["Function","Scopable","BlockParent","FunctionParent","Method"],builder:["kind","key","params","body","computed","static","generator","async"],visitor:["decorators","key","typeParameters","params","returnType","body"]},a(),{fields:Object.assign({},f(),c(),{body:{validate:(0,s.assertNodeType)("BlockStatement")}})})),o("ObjectPattern",{visitor:["decorators","properties","typeAnnotation"],builder:["properties"],aliases:["FunctionParameter","Pattern","PatternLike","LVal"],fields:Object.assign({},u(),{properties:(0,s.validateArrayOfType)("RestElement","ObjectProperty")})}),o("SpreadElement",{visitor:["argument"],aliases:["UnaryLike"],deprecatedAlias:"SpreadProperty",fields:{argument:{validate:(0,s.assertNodeType)("Expression")}}}),o("Super",{aliases:["Expression"]}),o("TaggedTemplateExpression",{visitor:["tag","typeParameters","quasi"],builder:["tag","quasi"],aliases:["Expression"],fields:{tag:{validate:(0,s.assertNodeType)("Expression")},quasi:{validate:(0,s.assertNodeType)("TemplateLiteral")},typeParameters:{validate:(0,s.assertNodeType)("TypeParameterInstantiation","TSTypeParameterInstantiation"),optional:!0}}}),o("TemplateElement",{builder:["value","tail"],fields:{value:{validate:(0,s.chain)((0,s.assertShape)({raw:{validate:(0,s.assertValueType)("string")},cooked:{validate:(0,s.assertValueType)("string"),optional:!0}}),function(e){const t=e.value.raw;let n=!1;const i=()=>{throw new Error("Internal @babel/types error.")},{str:s,firstInvalidLoc:a}=(0,r.readStringContents)("template",t,0,0,0,{unterminated(){n=!0},strictNumericEscape:i,invalidEscapeSequence:i,numericSeparatorInEscapeSequence:i,unexpectedNumericSeparator:i,invalidDigit:i,invalidCodePoint:i});if(!n)throw new Error("Invalid raw");e.value.cooked=a?null:s})},tail:{default:!1}}}),o("TemplateLiteral",{visitor:["quasis","expressions"],aliases:["Expression","Literal"],fields:{quasis:(0,s.validateArrayOfType)("TemplateElement"),expressions:{validate:(0,s.chain)((0,s.assertValueType)("array"),(0,s.assertEach)((0,s.assertNodeType)("Expression","TSType")),function(e,t,n){if(e.quasis.length!==n.length+1)throw new TypeError(`Number of ${e.type} quasis should be exactly one more than the number of expressions.\nExpected ${n.length+1} quasis but got ${e.quasis.length}`)})}}}),o("YieldExpression",{builder:["argument","delegate"],visitor:["argument"],aliases:["Expression","Terminatorless"],fields:{delegate:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,s.chain)((0,s.assertValueType)("boolean"),Object.assign(function(e,t,n){if(n&&!e.argument)throw new TypeError("Property delegate of YieldExpression cannot be true if there is no argument")},{type:"boolean"})):(0,s.assertValueType)("boolean"),default:!1},argument:{optional:!0,validate:(0,s.assertNodeType)("Expression")}}}),o("AwaitExpression",{builder:["argument"],visitor:["argument"],aliases:["Expression","Terminatorless"],fields:{argument:{validate:(0,s.assertNodeType)("Expression")}}}),o("Import",{aliases:["Expression"]}),o("BigIntLiteral",{builder:["value"],fields:{value:{validate:(0,s.assertValueType)("string")}},aliases:["Expression","Pureish","Literal","Immutable"]}),o("ExportNamespaceSpecifier",{visitor:["exported"],aliases:["ModuleSpecifier"],fields:{exported:{validate:(0,s.assertNodeType)("Identifier")}}}),o("OptionalMemberExpression",{builder:["object","property","computed","optional"],visitor:["object","property"],aliases:["Expression"],fields:{object:{validate:(0,s.assertNodeType)("Expression")},property:{validate:function(){const e=(0,s.assertNodeType)("Identifier"),t=(0,s.assertNodeType)("Expression"),n=Object.assign(function(n,r,i){(n.computed?t:e)(n,r,i)},{oneOfNodeTypes:["Expression","Identifier"]});return n}()},computed:{default:!1},optional:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,s.chain)((0,s.assertValueType)("boolean"),(0,s.assertOptionalChainStart)()):(0,s.assertValueType)("boolean")}}}),o("OptionalCallExpression",{visitor:["callee","typeParameters","typeArguments","arguments"],builder:["callee","arguments","optional"],aliases:["Expression"],fields:Object.assign({callee:{validate:(0,s.assertNodeType)("Expression")},arguments:(0,s.validateArrayOfType)("Expression","SpreadElement","ArgumentPlaceholder"),optional:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,s.chain)((0,s.assertValueType)("boolean"),(0,s.assertOptionalChainStart)()):(0,s.assertValueType)("boolean")},typeArguments:{validate:(0,s.assertNodeType)("TypeParameterInstantiation"),optional:!0}},{typeParameters:{validate:(0,s.assertNodeType)("TSTypeParameterInstantiation"),optional:!0}})}),o("ClassProperty",Object.assign({visitor:["decorators","variance","key","typeAnnotation","value"],builder:["key","value","typeAnnotation","decorators","computed","static"],aliases:["Property"]},a(),{fields:Object.assign({},d(),{value:{validate:(0,s.assertNodeType)("Expression"),optional:!0},definite:{validate:(0,s.assertValueType)("boolean"),optional:!0},typeAnnotation:{validate:(0,s.assertNodeType)("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},decorators:{validate:(0,s.arrayOfType)("Decorator"),optional:!0},readonly:{validate:(0,s.assertValueType)("boolean"),optional:!0},declare:{validate:(0,s.assertValueType)("boolean"),optional:!0},variance:{validate:(0,s.assertNodeType)("Variance"),optional:!0}})})),o("ClassAccessorProperty",Object.assign({visitor:["decorators","key","typeAnnotation","value"],builder:["key","value","typeAnnotation","decorators","computed","static"],aliases:["Property","Accessor"]},a(!0),{fields:Object.assign({},d(),{key:{validate:(0,s.chain)(function(){const e=(0,s.assertNodeType)("Identifier","StringLiteral","NumericLiteral","BigIntLiteral","PrivateName"),t=(0,s.assertNodeType)("Expression");return function(n,r,i){(n.computed?t:e)(n,r,i)}}(),(0,s.assertNodeType)("Identifier","StringLiteral","NumericLiteral","BigIntLiteral","Expression","PrivateName"))},value:{validate:(0,s.assertNodeType)("Expression"),optional:!0},definite:{validate:(0,s.assertValueType)("boolean"),optional:!0},typeAnnotation:{validate:(0,s.assertNodeType)("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},decorators:{validate:(0,s.arrayOfType)("Decorator"),optional:!0},readonly:{validate:(0,s.assertValueType)("boolean"),optional:!0},declare:{validate:(0,s.assertValueType)("boolean"),optional:!0},variance:{validate:(0,s.assertNodeType)("Variance"),optional:!0}})})),o("ClassPrivateProperty",{visitor:["decorators","variance","key","typeAnnotation","value"],builder:["key","value","decorators","static"],aliases:["Property","Private"],fields:{key:{validate:(0,s.assertNodeType)("PrivateName")},value:{validate:(0,s.assertNodeType)("Expression"),optional:!0},typeAnnotation:{validate:(0,s.assertNodeType)("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},decorators:{validate:(0,s.arrayOfType)("Decorator"),optional:!0},static:{validate:(0,s.assertValueType)("boolean"),default:!1},readonly:{validate:(0,s.assertValueType)("boolean"),optional:!0},optional:{validate:(0,s.assertValueType)("boolean"),optional:!0},definite:{validate:(0,s.assertValueType)("boolean"),optional:!0},variance:{validate:(0,s.assertNodeType)("Variance"),optional:!0}}}),o("ClassPrivateMethod",{builder:["kind","key","params","body","static"],visitor:["decorators","key","typeParameters","params","returnType","body"],aliases:["Function","Scopable","BlockParent","FunctionParent","Method","Private"],fields:Object.assign({},f(),c(),{kind:{validate:(0,s.assertOneOf)("get","set","method"),default:"method"},key:{validate:(0,s.assertNodeType)("PrivateName")},body:{validate:(0,s.assertNodeType)("BlockStatement")}})}),o("PrivateName",{visitor:["id"],aliases:["Private"],fields:{id:{validate:(0,s.assertNodeType)("Identifier")}}}),o("StaticBlock",{visitor:["body"],fields:{body:(0,s.validateArrayOfType)("Statement")},aliases:["Scopable","BlockParent","FunctionParent"]}),o("ImportAttribute",{visitor:["key","value"],fields:{key:{validate:(0,s.assertNodeType)("Identifier","StringLiteral")},value:{validate:(0,s.assertNodeType)("StringLiteral")}}}),J}var Pe,Ee={};var ve,Ae={};var Ce,we,Ie={},ke={};function Ne(){if(Ce)return ke;Ce=1,Object.defineProperty(ke,"__esModule",{value:!0}),ke.PLACEHOLDERS_FLIPPED_ALIAS=ke.PLACEHOLDERS_ALIAS=ke.PLACEHOLDERS=void 0;var e=Se();const t=ke.PLACEHOLDERS=["Identifier","StringLiteral","Expression","Statement","Declaration","BlockStatement","ClassBody","Pattern"],n=ke.PLACEHOLDERS_ALIAS={Declaration:["Statement"],Pattern:["PatternLike","LVal"]};for(const r of t){const t=e.ALIAS_KEYS[r];null!=t&&t.length&&(n[r]=t)}const r=ke.PLACEHOLDERS_FLIPPED_ALIAS={};return Object.keys(n).forEach(e=>{n[e].forEach(t=>{hasOwnProperty.call(r,t)||(r[t]=[]),r[t].push(e)})}),ke}var Oe,_e={};var De,Le={};var Me,Fe,Be,je,Re={};function Ue(){return Fe||(Fe=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"ALIAS_KEYS",{enumerable:!0,get:function(){return t.ALIAS_KEYS}}),Object.defineProperty(e,"BUILDER_KEYS",{enumerable:!0,get:function(){return t.BUILDER_KEYS}}),Object.defineProperty(e,"DEPRECATED_ALIASES",{enumerable:!0,get:function(){return r.DEPRECATED_ALIASES}}),Object.defineProperty(e,"DEPRECATED_KEYS",{enumerable:!0,get:function(){return t.DEPRECATED_KEYS}}),Object.defineProperty(e,"FLIPPED_ALIAS_KEYS",{enumerable:!0,get:function(){return t.FLIPPED_ALIAS_KEYS}}),Object.defineProperty(e,"NODE_FIELDS",{enumerable:!0,get:function(){return t.NODE_FIELDS}}),Object.defineProperty(e,"NODE_PARENT_VALIDATIONS",{enumerable:!0,get:function(){return t.NODE_PARENT_VALIDATIONS}}),Object.defineProperty(e,"NODE_UNION_SHAPES__PRIVATE",{enumerable:!0,get:function(){return t.NODE_UNION_SHAPES__PRIVATE}}),Object.defineProperty(e,"PLACEHOLDERS",{enumerable:!0,get:function(){return n.PLACEHOLDERS}}),Object.defineProperty(e,"PLACEHOLDERS_ALIAS",{enumerable:!0,get:function(){return n.PLACEHOLDERS_ALIAS}}),Object.defineProperty(e,"PLACEHOLDERS_FLIPPED_ALIAS",{enumerable:!0,get:function(){return n.PLACEHOLDERS_FLIPPED_ALIAS}}),e.TYPES=void 0,Object.defineProperty(e,"VISITOR_KEYS",{enumerable:!0,get:function(){return t.VISITOR_KEYS}}),be(),function(){if(Pe)return Ee;Pe=1;var e=be(),t=Se();const n=(0,t.defineAliasedType)("Flow"),r=e=>{const r="DeclareClass"===e;n(e,{builder:["id","typeParameters","extends","body"],visitor:["id","typeParameters","extends",...r?["mixins","implements"]:[],"body"],aliases:["FlowDeclaration","Statement","Declaration"],fields:Object.assign({id:(0,t.validateType)("Identifier"),typeParameters:(0,t.validateOptionalType)("TypeParameterDeclaration"),extends:(0,t.validateOptional)((0,t.arrayOfType)("InterfaceExtends"))},r?{mixins:(0,t.validateOptional)((0,t.arrayOfType)("InterfaceExtends")),implements:(0,t.validateOptional)((0,t.arrayOfType)("ClassImplements"))}:{},{body:(0,t.validateType)("ObjectTypeAnnotation")})})};n("AnyTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),n("ArrayTypeAnnotation",{visitor:["elementType"],aliases:["FlowType"],fields:{elementType:(0,t.validateType)("FlowType")}}),n("BooleanTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),n("BooleanLiteralTypeAnnotation",{builder:["value"],aliases:["FlowType"],fields:{value:(0,t.validate)((0,t.assertValueType)("boolean"))}}),n("NullLiteralTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),n("ClassImplements",{visitor:["id","typeParameters"],fields:{id:(0,t.validateType)("Identifier"),typeParameters:(0,t.validateOptionalType)("TypeParameterInstantiation")}}),r("DeclareClass"),n("DeclareFunction",{builder:["id"],visitor:["id","predicate"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,t.validateType)("Identifier"),predicate:(0,t.validateOptionalType)("DeclaredPredicate")}}),r("DeclareInterface"),n("DeclareModule",{builder:["id","body","kind"],visitor:["id","body"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,t.validateType)("Identifier","StringLiteral"),body:(0,t.validateType)("BlockStatement"),kind:(0,t.validateOptional)((0,t.assertOneOf)("CommonJS","ES"))}}),n("DeclareModuleExports",{visitor:["typeAnnotation"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{typeAnnotation:(0,t.validateType)("TypeAnnotation")}}),n("DeclareTypeAlias",{visitor:["id","typeParameters","right"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,t.validateType)("Identifier"),typeParameters:(0,t.validateOptionalType)("TypeParameterDeclaration"),right:(0,t.validateType)("FlowType")}}),n("DeclareOpaqueType",{visitor:["id","typeParameters","supertype"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,t.validateType)("Identifier"),typeParameters:(0,t.validateOptionalType)("TypeParameterDeclaration"),supertype:(0,t.validateOptionalType)("FlowType"),impltype:(0,t.validateOptionalType)("FlowType")}}),n("DeclareVariable",{visitor:["id"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,t.validateType)("Identifier")}}),n("DeclareExportDeclaration",{visitor:["declaration","specifiers","source","attributes"],aliases:["FlowDeclaration","Statement","Declaration"],fields:Object.assign({declaration:(0,t.validateOptionalType)("Flow"),specifiers:(0,t.validateOptional)((0,t.arrayOfType)("ExportSpecifier","ExportNamespaceSpecifier")),source:(0,t.validateOptionalType)("StringLiteral"),default:(0,t.validateOptional)((0,t.assertValueType)("boolean"))},e.importAttributes)}),n("DeclareExportAllDeclaration",{visitor:["source","attributes"],aliases:["FlowDeclaration","Statement","Declaration"],fields:Object.assign({source:(0,t.validateType)("StringLiteral"),exportKind:(0,t.validateOptional)((0,t.assertOneOf)("type","value"))},e.importAttributes)}),n("DeclaredPredicate",{visitor:["value"],aliases:["FlowPredicate"],fields:{value:(0,t.validateType)("Flow")}}),n("ExistsTypeAnnotation",{aliases:["FlowType"]}),n("FunctionTypeAnnotation",{builder:["typeParameters","params","rest","returnType"],visitor:["typeParameters","this","params","rest","returnType"],aliases:["FlowType"],fields:{typeParameters:(0,t.validateOptionalType)("TypeParameterDeclaration"),params:(0,t.validateArrayOfType)("FunctionTypeParam"),rest:(0,t.validateOptionalType)("FunctionTypeParam"),this:(0,t.validateOptionalType)("FunctionTypeParam"),returnType:(0,t.validateType)("FlowType")}}),n("FunctionTypeParam",{visitor:["name","typeAnnotation"],fields:{name:(0,t.validateOptionalType)("Identifier"),typeAnnotation:(0,t.validateType)("FlowType"),optional:(0,t.validateOptional)((0,t.assertValueType)("boolean"))}}),n("GenericTypeAnnotation",{visitor:["id","typeParameters"],aliases:["FlowType"],fields:{id:(0,t.validateType)("Identifier","QualifiedTypeIdentifier"),typeParameters:(0,t.validateOptionalType)("TypeParameterInstantiation")}}),n("InferredPredicate",{aliases:["FlowPredicate"]}),n("InterfaceExtends",{visitor:["id","typeParameters"],fields:{id:(0,t.validateType)("Identifier","QualifiedTypeIdentifier"),typeParameters:(0,t.validateOptionalType)("TypeParameterInstantiation")}}),r("InterfaceDeclaration"),n("InterfaceTypeAnnotation",{visitor:["extends","body"],aliases:["FlowType"],fields:{extends:(0,t.validateOptional)((0,t.arrayOfType)("InterfaceExtends")),body:(0,t.validateType)("ObjectTypeAnnotation")}}),n("IntersectionTypeAnnotation",{visitor:["types"],aliases:["FlowType"],fields:{types:(0,t.validate)((0,t.arrayOfType)("FlowType"))}}),n("MixedTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),n("EmptyTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),n("NullableTypeAnnotation",{visitor:["typeAnnotation"],aliases:["FlowType"],fields:{typeAnnotation:(0,t.validateType)("FlowType")}}),n("NumberLiteralTypeAnnotation",{builder:["value"],aliases:["FlowType"],fields:{value:(0,t.validate)((0,t.assertValueType)("number"))}}),n("NumberTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),n("ObjectTypeAnnotation",{visitor:["properties","indexers","callProperties","internalSlots"],aliases:["FlowType"],builder:["properties","indexers","callProperties","internalSlots","exact"],fields:{properties:(0,t.validate)((0,t.arrayOfType)("ObjectTypeProperty","ObjectTypeSpreadProperty")),indexers:{validate:(0,t.arrayOfType)("ObjectTypeIndexer"),optional:!0,default:[]},callProperties:{validate:(0,t.arrayOfType)("ObjectTypeCallProperty"),optional:!0,default:[]},internalSlots:{validate:(0,t.arrayOfType)("ObjectTypeInternalSlot"),optional:!0,default:[]},exact:{validate:(0,t.assertValueType)("boolean"),default:!1},inexact:(0,t.validateOptional)((0,t.assertValueType)("boolean"))}}),n("ObjectTypeInternalSlot",{visitor:["id","value"],builder:["id","value","optional","static","method"],aliases:["UserWhitespacable"],fields:{id:(0,t.validateType)("Identifier"),value:(0,t.validateType)("FlowType"),optional:(0,t.validate)((0,t.assertValueType)("boolean")),static:(0,t.validate)((0,t.assertValueType)("boolean")),method:(0,t.validate)((0,t.assertValueType)("boolean"))}}),n("ObjectTypeCallProperty",{visitor:["value"],aliases:["UserWhitespacable"],fields:{value:(0,t.validateType)("FlowType"),static:(0,t.validate)((0,t.assertValueType)("boolean"))}}),n("ObjectTypeIndexer",{visitor:["variance","id","key","value"],builder:["id","key","value","variance"],aliases:["UserWhitespacable"],fields:{id:(0,t.validateOptionalType)("Identifier"),key:(0,t.validateType)("FlowType"),value:(0,t.validateType)("FlowType"),static:(0,t.validate)((0,t.assertValueType)("boolean")),variance:(0,t.validateOptionalType)("Variance")}}),n("ObjectTypeProperty",{visitor:["key","value","variance"],aliases:["UserWhitespacable"],fields:{key:(0,t.validateType)("Identifier","StringLiteral"),value:(0,t.validateType)("FlowType"),kind:(0,t.validate)((0,t.assertOneOf)("init","get","set")),static:(0,t.validate)((0,t.assertValueType)("boolean")),proto:(0,t.validate)((0,t.assertValueType)("boolean")),optional:(0,t.validate)((0,t.assertValueType)("boolean")),variance:(0,t.validateOptionalType)("Variance"),method:(0,t.validate)((0,t.assertValueType)("boolean"))}}),n("ObjectTypeSpreadProperty",{visitor:["argument"],aliases:["UserWhitespacable"],fields:{argument:(0,t.validateType)("FlowType")}}),n("OpaqueType",{visitor:["id","typeParameters","supertype","impltype"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,t.validateType)("Identifier"),typeParameters:(0,t.validateOptionalType)("TypeParameterDeclaration"),supertype:(0,t.validateOptionalType)("FlowType"),impltype:(0,t.validateType)("FlowType")}}),n("QualifiedTypeIdentifier",{visitor:["qualification","id"],builder:["id","qualification"],fields:{id:(0,t.validateType)("Identifier"),qualification:(0,t.validateType)("Identifier","QualifiedTypeIdentifier")}}),n("StringLiteralTypeAnnotation",{builder:["value"],aliases:["FlowType"],fields:{value:(0,t.validate)((0,t.assertValueType)("string"))}}),n("StringTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),n("SymbolTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),n("ThisTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),n("TupleTypeAnnotation",{visitor:["types"],aliases:["FlowType"],fields:{types:(0,t.validate)((0,t.arrayOfType)("FlowType"))}}),n("TypeofTypeAnnotation",{visitor:["argument"],aliases:["FlowType"],fields:{argument:(0,t.validateType)("FlowType")}}),n("TypeAlias",{visitor:["id","typeParameters","right"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,t.validateType)("Identifier"),typeParameters:(0,t.validateOptionalType)("TypeParameterDeclaration"),right:(0,t.validateType)("FlowType")}}),n("TypeAnnotation",{visitor:["typeAnnotation"],fields:{typeAnnotation:(0,t.validateType)("FlowType")}}),n("TypeCastExpression",{visitor:["expression","typeAnnotation"],aliases:["ExpressionWrapper","Expression"],fields:{expression:(0,t.validateType)("Expression"),typeAnnotation:(0,t.validateType)("TypeAnnotation")}}),n("TypeParameter",{visitor:["bound","default","variance"],fields:{name:(0,t.validate)((0,t.assertValueType)("string")),bound:(0,t.validateOptionalType)("TypeAnnotation"),default:(0,t.validateOptionalType)("FlowType"),variance:(0,t.validateOptionalType)("Variance")}}),n("TypeParameterDeclaration",{visitor:["params"],fields:{params:(0,t.validate)((0,t.arrayOfType)("TypeParameter"))}}),n("TypeParameterInstantiation",{visitor:["params"],fields:{params:(0,t.validate)((0,t.arrayOfType)("FlowType"))}}),n("UnionTypeAnnotation",{visitor:["types"],aliases:["FlowType"],fields:{types:(0,t.validate)((0,t.arrayOfType)("FlowType"))}}),n("Variance",{builder:["kind"],fields:{kind:(0,t.validate)((0,t.assertOneOf)("minus","plus"))}}),n("VoidTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),n("EnumDeclaration",{aliases:["Statement","Declaration"],visitor:["id","body"],fields:{id:(0,t.validateType)("Identifier"),body:(0,t.validateType)("EnumBooleanBody","EnumNumberBody","EnumStringBody","EnumSymbolBody")}}),n("EnumBooleanBody",{aliases:["EnumBody"],visitor:["members"],fields:{explicitType:(0,t.validate)((0,t.assertValueType)("boolean")),members:(0,t.validateArrayOfType)("EnumBooleanMember"),hasUnknownMembers:(0,t.validate)((0,t.assertValueType)("boolean"))}}),n("EnumNumberBody",{aliases:["EnumBody"],visitor:["members"],fields:{explicitType:(0,t.validate)((0,t.assertValueType)("boolean")),members:(0,t.validateArrayOfType)("EnumNumberMember"),hasUnknownMembers:(0,t.validate)((0,t.assertValueType)("boolean"))}}),n("EnumStringBody",{aliases:["EnumBody"],visitor:["members"],fields:{explicitType:(0,t.validate)((0,t.assertValueType)("boolean")),members:(0,t.validateArrayOfType)("EnumStringMember","EnumDefaultedMember"),hasUnknownMembers:(0,t.validate)((0,t.assertValueType)("boolean"))}}),n("EnumSymbolBody",{aliases:["EnumBody"],visitor:["members"],fields:{members:(0,t.validateArrayOfType)("EnumDefaultedMember"),hasUnknownMembers:(0,t.validate)((0,t.assertValueType)("boolean"))}}),n("EnumBooleanMember",{aliases:["EnumMember"],builder:["id"],visitor:["id","init"],fields:{id:(0,t.validateType)("Identifier"),init:(0,t.validateType)("BooleanLiteral")}}),n("EnumNumberMember",{aliases:["EnumMember"],visitor:["id","init"],fields:{id:(0,t.validateType)("Identifier"),init:(0,t.validateType)("NumericLiteral")}}),n("EnumStringMember",{aliases:["EnumMember"],visitor:["id","init"],fields:{id:(0,t.validateType)("Identifier"),init:(0,t.validateType)("StringLiteral")}}),n("EnumDefaultedMember",{aliases:["EnumMember"],visitor:["id"],fields:{id:(0,t.validateType)("Identifier")}}),n("IndexedAccessType",{visitor:["objectType","indexType"],aliases:["FlowType"],fields:{objectType:(0,t.validateType)("FlowType"),indexType:(0,t.validateType)("FlowType")}}),n("OptionalIndexedAccessType",{visitor:["objectType","indexType"],aliases:["FlowType"],fields:{objectType:(0,t.validateType)("FlowType"),indexType:(0,t.validateType)("FlowType"),optional:(0,t.validate)((0,t.assertValueType)("boolean"))}})}(),function(){if(ve)return Ae;ve=1;var e=Se();const t=(0,e.defineAliasedType)("JSX");t("JSXAttribute",{visitor:["name","value"],aliases:["Immutable"],fields:{name:{validate:(0,e.assertNodeType)("JSXIdentifier","JSXNamespacedName")},value:{optional:!0,validate:(0,e.assertNodeType)("JSXElement","JSXFragment","StringLiteral","JSXExpressionContainer")}}}),t("JSXClosingElement",{visitor:["name"],aliases:["Immutable"],fields:{name:{validate:(0,e.assertNodeType)("JSXIdentifier","JSXMemberExpression","JSXNamespacedName")}}}),t("JSXElement",{builder:["openingElement","closingElement","children","selfClosing"],visitor:["openingElement","children","closingElement"],aliases:["Immutable","Expression"],fields:Object.assign({openingElement:{validate:(0,e.assertNodeType)("JSXOpeningElement")},closingElement:{optional:!0,validate:(0,e.assertNodeType)("JSXClosingElement")},children:(0,e.validateArrayOfType)("JSXText","JSXExpressionContainer","JSXSpreadChild","JSXElement","JSXFragment")},{selfClosing:{validate:(0,e.assertValueType)("boolean"),optional:!0}})}),t("JSXEmptyExpression",{}),t("JSXExpressionContainer",{visitor:["expression"],aliases:["Immutable"],fields:{expression:{validate:(0,e.assertNodeType)("Expression","JSXEmptyExpression")}}}),t("JSXSpreadChild",{visitor:["expression"],aliases:["Immutable"],fields:{expression:{validate:(0,e.assertNodeType)("Expression")}}}),t("JSXIdentifier",{builder:["name"],fields:{name:{validate:(0,e.assertValueType)("string")}}}),t("JSXMemberExpression",{visitor:["object","property"],fields:{object:{validate:(0,e.assertNodeType)("JSXMemberExpression","JSXIdentifier")},property:{validate:(0,e.assertNodeType)("JSXIdentifier")}}}),t("JSXNamespacedName",{visitor:["namespace","name"],fields:{namespace:{validate:(0,e.assertNodeType)("JSXIdentifier")},name:{validate:(0,e.assertNodeType)("JSXIdentifier")}}}),t("JSXOpeningElement",{builder:["name","attributes","selfClosing"],visitor:["name","typeParameters","typeArguments","attributes"],aliases:["Immutable"],fields:Object.assign({name:{validate:(0,e.assertNodeType)("JSXIdentifier","JSXMemberExpression","JSXNamespacedName")},selfClosing:{default:!1},attributes:(0,e.validateArrayOfType)("JSXAttribute","JSXSpreadAttribute"),typeArguments:{validate:(0,e.assertNodeType)("TypeParameterInstantiation"),optional:!0}},{typeParameters:{validate:(0,e.assertNodeType)("TSTypeParameterInstantiation"),optional:!0}})}),t("JSXSpreadAttribute",{visitor:["argument"],fields:{argument:{validate:(0,e.assertNodeType)("Expression")}}}),t("JSXText",{aliases:["Immutable"],builder:["value"],fields:{value:{validate:(0,e.assertValueType)("string")}}}),t("JSXFragment",{builder:["openingFragment","closingFragment","children"],visitor:["openingFragment","children","closingFragment"],aliases:["Immutable","Expression"],fields:{openingFragment:{validate:(0,e.assertNodeType)("JSXOpeningFragment")},closingFragment:{validate:(0,e.assertNodeType)("JSXClosingFragment")},children:(0,e.validateArrayOfType)("JSXText","JSXExpressionContainer","JSXSpreadChild","JSXElement","JSXFragment")}}),t("JSXOpeningFragment",{aliases:["Immutable"]}),t("JSXClosingFragment",{aliases:["Immutable"]})}(),function(){if(we)return Ie;we=1;var e=Se(),t=Ne(),n=be();const r=(0,e.defineAliasedType)("Miscellaneous");r("Noop",{visitor:[]}),r("Placeholder",{visitor:[],builder:["expectedNode","name"],fields:Object.assign({name:{validate:(0,e.assertNodeType)("Identifier")},expectedNode:{validate:(0,e.assertOneOf)(...t.PLACEHOLDERS)}},(0,n.patternLikeCommon)())}),r("V8IntrinsicIdentifier",{builder:["name"],fields:{name:{validate:(0,e.assertValueType)("string")}}})}(),function(){if(Oe)return _e;Oe=1;var e=Se();(0,e.default)("ArgumentPlaceholder",{}),(0,e.default)("BindExpression",{visitor:["object","callee"],aliases:["Expression"],fields:process.env.BABEL_TYPES_8_BREAKING?{object:{validate:(0,e.assertNodeType)("Expression")},callee:{validate:(0,e.assertNodeType)("Expression")}}:{object:{validate:Object.assign(()=>{},{oneOfNodeTypes:["Expression"]})},callee:{validate:Object.assign(()=>{},{oneOfNodeTypes:["Expression"]})}}}),(0,e.default)("Decorator",{visitor:["expression"],fields:{expression:{validate:(0,e.assertNodeType)("Expression")}}}),(0,e.default)("DoExpression",{visitor:["body"],builder:["body","async"],aliases:["Expression"],fields:{body:{validate:(0,e.assertNodeType)("BlockStatement")},async:{validate:(0,e.assertValueType)("boolean"),default:!1}}}),(0,e.default)("ExportDefaultSpecifier",{visitor:["exported"],aliases:["ModuleSpecifier"],fields:{exported:{validate:(0,e.assertNodeType)("Identifier")}}}),(0,e.default)("RecordExpression",{visitor:["properties"],aliases:["Expression"],fields:{properties:(0,e.validateArrayOfType)("ObjectProperty","SpreadElement")}}),(0,e.default)("TupleExpression",{fields:{elements:{validate:(0,e.arrayOfType)("Expression","SpreadElement"),default:[]}},visitor:["elements"],aliases:["Expression"]}),(0,e.default)("DecimalLiteral",{builder:["value"],fields:{value:{validate:(0,e.assertValueType)("string")}},aliases:["Expression","Pureish","Literal","Immutable"]}),(0,e.default)("ModuleExpression",{visitor:["body"],fields:{body:{validate:(0,e.assertNodeType)("Program")}},aliases:["Expression"]}),(0,e.default)("TopicReference",{aliases:["Expression"]}),(0,e.default)("PipelineTopicExpression",{builder:["expression"],visitor:["expression"],fields:{expression:{validate:(0,e.assertNodeType)("Expression")}},aliases:["Expression"]}),(0,e.default)("PipelineBareFunction",{builder:["callee"],visitor:["callee"],fields:{callee:{validate:(0,e.assertNodeType)("Expression")}},aliases:["Expression"]}),(0,e.default)("PipelinePrimaryTopicReference",{aliases:["Expression"]}),(0,e.default)("VoidPattern",{aliases:["Pattern","PatternLike","FunctionParameter"]})}(),function(){if(De)return Le;De=1;var e=Se(),t=be(),n=te();const r=(0,e.defineAliasedType)("TypeScript"),i=(0,e.assertValueType)("boolean"),s=()=>({returnType:{validate:(0,e.assertNodeType)("TSTypeAnnotation","Noop"),optional:!0},typeParameters:{validate:(0,e.assertNodeType)("TSTypeParameterDeclaration","Noop"),optional:!0}});r("TSParameterProperty",{aliases:["LVal"],visitor:["parameter"],fields:{accessibility:{validate:(0,e.assertOneOf)("public","private","protected"),optional:!0},readonly:{validate:(0,e.assertValueType)("boolean"),optional:!0},parameter:{validate:(0,e.assertNodeType)("Identifier","AssignmentPattern")},override:{validate:(0,e.assertValueType)("boolean"),optional:!0},decorators:{validate:(0,e.arrayOfType)("Decorator"),optional:!0}}}),r("TSDeclareFunction",{aliases:["Statement","Declaration"],visitor:["id","typeParameters","params","returnType"],fields:Object.assign({},(0,t.functionDeclarationCommon)(),s())}),r("TSDeclareMethod",Object.assign({visitor:["decorators","key","typeParameters","params","returnType"]},(0,t.classMethodOrPropertyUnionShapeCommon)(),{fields:Object.assign({},(0,t.classMethodOrDeclareMethodCommon)(),s())})),r("TSQualifiedName",{aliases:["TSEntityName"],visitor:["left","right"],fields:{left:(0,e.validateType)("TSEntityName"),right:(0,e.validateType)("Identifier")}});const a=()=>({typeParameters:(0,e.validateOptionalType)("TSTypeParameterDeclaration"),parameters:(0,e.validateArrayOfType)("ArrayPattern","Identifier","ObjectPattern","RestElement"),typeAnnotation:(0,e.validateOptionalType)("TSTypeAnnotation")}),o={aliases:["TSTypeElement"],visitor:["typeParameters","parameters","typeAnnotation"],fields:a()};r("TSCallSignatureDeclaration",o),r("TSConstructSignatureDeclaration",o);const l=()=>({key:(0,e.validateType)("Expression"),computed:{default:!1},optional:(0,e.validateOptional)(i)});r("TSPropertySignature",{aliases:["TSTypeElement"],visitor:["key","typeAnnotation"],fields:Object.assign({},l(),{readonly:(0,e.validateOptional)(i),typeAnnotation:(0,e.validateOptionalType)("TSTypeAnnotation"),kind:{optional:!0,validate:(0,e.assertOneOf)("get","set")}})}),r("TSMethodSignature",{aliases:["TSTypeElement"],visitor:["key","typeParameters","parameters","typeAnnotation"],fields:Object.assign({},a(),l(),{kind:{validate:(0,e.assertOneOf)("method","get","set")}})}),r("TSIndexSignature",{aliases:["TSTypeElement"],visitor:["parameters","typeAnnotation"],fields:{readonly:(0,e.validateOptional)(i),static:(0,e.validateOptional)(i),parameters:(0,e.validateArrayOfType)("Identifier"),typeAnnotation:(0,e.validateOptionalType)("TSTypeAnnotation")}});const c=["TSAnyKeyword","TSBooleanKeyword","TSBigIntKeyword","TSIntrinsicKeyword","TSNeverKeyword","TSNullKeyword","TSNumberKeyword","TSObjectKeyword","TSStringKeyword","TSSymbolKeyword","TSUndefinedKeyword","TSUnknownKeyword","TSVoidKeyword"];for(const e of c)r(e,{aliases:["TSType","TSBaseType"],visitor:[],fields:{}});r("TSThisType",{aliases:["TSType","TSBaseType"],visitor:[],fields:{}});const p={aliases:["TSType"],visitor:["typeParameters","parameters","typeAnnotation"]};r("TSFunctionType",Object.assign({},p,{fields:a()})),r("TSConstructorType",Object.assign({},p,{fields:Object.assign({},a(),{abstract:(0,e.validateOptional)(i)})})),r("TSTypeReference",{aliases:["TSType"],visitor:["typeName","typeParameters"],fields:{typeName:(0,e.validateType)("TSEntityName"),typeParameters:(0,e.validateOptionalType)("TSTypeParameterInstantiation")}}),r("TSTypePredicate",{aliases:["TSType"],visitor:["parameterName","typeAnnotation"],builder:["parameterName","typeAnnotation","asserts"],fields:{parameterName:(0,e.validateType)("Identifier","TSThisType"),typeAnnotation:(0,e.validateOptionalType)("TSTypeAnnotation"),asserts:(0,e.validateOptional)(i)}}),r("TSTypeQuery",{aliases:["TSType"],visitor:["exprName","typeParameters"],fields:{exprName:(0,e.validateType)("TSEntityName","TSImportType"),typeParameters:(0,e.validateOptionalType)("TSTypeParameterInstantiation")}}),r("TSTypeLiteral",{aliases:["TSType"],visitor:["members"],fields:{members:(0,e.validateArrayOfType)("TSTypeElement")}}),r("TSArrayType",{aliases:["TSType"],visitor:["elementType"],fields:{elementType:(0,e.validateType)("TSType")}}),r("TSTupleType",{aliases:["TSType"],visitor:["elementTypes"],fields:{elementTypes:(0,e.validateArrayOfType)("TSType","TSNamedTupleMember")}}),r("TSOptionalType",{aliases:["TSType"],visitor:["typeAnnotation"],fields:{typeAnnotation:(0,e.validateType)("TSType")}}),r("TSRestType",{aliases:["TSType"],visitor:["typeAnnotation"],fields:{typeAnnotation:(0,e.validateType)("TSType")}}),r("TSNamedTupleMember",{visitor:["label","elementType"],builder:["label","elementType","optional"],fields:{label:(0,e.validateType)("Identifier"),optional:{validate:i,default:!1},elementType:(0,e.validateType)("TSType")}});const u={aliases:["TSType"],visitor:["types"],fields:{types:(0,e.validateArrayOfType)("TSType")}};r("TSUnionType",u),r("TSIntersectionType",u),r("TSConditionalType",{aliases:["TSType"],visitor:["checkType","extendsType","trueType","falseType"],fields:{checkType:(0,e.validateType)("TSType"),extendsType:(0,e.validateType)("TSType"),trueType:(0,e.validateType)("TSType"),falseType:(0,e.validateType)("TSType")}}),r("TSInferType",{aliases:["TSType"],visitor:["typeParameter"],fields:{typeParameter:(0,e.validateType)("TSTypeParameter")}}),r("TSParenthesizedType",{aliases:["TSType"],visitor:["typeAnnotation"],fields:{typeAnnotation:(0,e.validateType)("TSType")}}),r("TSTypeOperator",{aliases:["TSType"],visitor:["typeAnnotation"],builder:["typeAnnotation","operator"],fields:{operator:{validate:(0,e.assertValueType)("string"),default:"keyof"},typeAnnotation:(0,e.validateType)("TSType")}}),r("TSIndexedAccessType",{aliases:["TSType"],visitor:["objectType","indexType"],fields:{objectType:(0,e.validateType)("TSType"),indexType:(0,e.validateType)("TSType")}}),r("TSMappedType",{aliases:["TSType"],visitor:["typeParameter","nameType","typeAnnotation"],builder:["typeParameter","typeAnnotation","nameType"],fields:Object.assign({},{typeParameter:(0,e.validateType)("TSTypeParameter")},{readonly:(0,e.validateOptional)((0,e.assertOneOf)(!0,!1,"+","-")),optional:(0,e.validateOptional)((0,e.assertOneOf)(!0,!1,"+","-")),typeAnnotation:(0,e.validateOptionalType)("TSType"),nameType:(0,e.validateOptionalType)("TSType")})}),r("TSTemplateLiteralType",{aliases:["TSType","TSBaseType"],visitor:["quasis","types"],fields:{quasis:(0,e.validateArrayOfType)("TemplateElement"),types:{validate:(0,e.chain)((0,e.assertValueType)("array"),(0,e.assertEach)((0,e.assertNodeType)("TSType")),function(e,t,n){if(e.quasis.length!==n.length+1)throw new TypeError(`Number of ${e.type} quasis should be exactly one more than the number of types.\nExpected ${n.length+1} quasis but got ${e.quasis.length}`)})}}}),r("TSLiteralType",{aliases:["TSType","TSBaseType"],visitor:["literal"],fields:{literal:{validate:function(){const t=(0,e.assertNodeType)("NumericLiteral","BigIntLiteral"),r=(0,e.assertOneOf)("-"),i=(0,e.assertNodeType)("NumericLiteral","StringLiteral","BooleanLiteral","BigIntLiteral","TemplateLiteral"),s=function(e,s,a){(0,n.default)("UnaryExpression",a)?(r(a,"operator",a.operator),t(a,"argument",a.argument)):i(e,s,a)};return s.oneOfNodeTypes=["NumericLiteral","StringLiteral","BooleanLiteral","BigIntLiteral","TemplateLiteral","UnaryExpression"],s}()}}}),r("TSExpressionWithTypeArguments",{aliases:["TSType"],visitor:["expression","typeParameters"],fields:{expression:(0,e.validateType)("TSEntityName"),typeParameters:(0,e.validateOptionalType)("TSTypeParameterInstantiation")}}),r("TSInterfaceDeclaration",{aliases:["Statement","Declaration"],visitor:["id","typeParameters","extends","body"],fields:{declare:(0,e.validateOptional)(i),id:(0,e.validateType)("Identifier"),typeParameters:(0,e.validateOptionalType)("TSTypeParameterDeclaration"),extends:(0,e.validateOptional)((0,e.arrayOfType)("TSExpressionWithTypeArguments")),body:(0,e.validateType)("TSInterfaceBody")}}),r("TSInterfaceBody",{visitor:["body"],fields:{body:(0,e.validateArrayOfType)("TSTypeElement")}}),r("TSTypeAliasDeclaration",{aliases:["Statement","Declaration"],visitor:["id","typeParameters","typeAnnotation"],fields:{declare:(0,e.validateOptional)(i),id:(0,e.validateType)("Identifier"),typeParameters:(0,e.validateOptionalType)("TSTypeParameterDeclaration"),typeAnnotation:(0,e.validateType)("TSType")}}),r("TSInstantiationExpression",{aliases:["Expression"],visitor:["expression","typeParameters"],fields:{expression:(0,e.validateType)("Expression"),typeParameters:(0,e.validateOptionalType)("TSTypeParameterInstantiation")}});const h={aliases:["Expression","LVal","PatternLike"],visitor:["expression","typeAnnotation"],fields:{expression:(0,e.validateType)("Expression"),typeAnnotation:(0,e.validateType)("TSType")}};r("TSAsExpression",h),r("TSSatisfiesExpression",h),r("TSTypeAssertion",{aliases:["Expression","LVal","PatternLike"],visitor:["typeAnnotation","expression"],fields:{typeAnnotation:(0,e.validateType)("TSType"),expression:(0,e.validateType)("Expression")}}),r("TSEnumBody",{visitor:["members"],fields:{members:(0,e.validateArrayOfType)("TSEnumMember")}}),r("TSEnumDeclaration",{aliases:["Statement","Declaration"],visitor:["id","members"],fields:{declare:(0,e.validateOptional)(i),const:(0,e.validateOptional)(i),id:(0,e.validateType)("Identifier"),members:(0,e.validateArrayOfType)("TSEnumMember"),initializer:(0,e.validateOptionalType)("Expression"),body:(0,e.validateOptionalType)("TSEnumBody")}}),r("TSEnumMember",{visitor:["id","initializer"],fields:{id:(0,e.validateType)("Identifier","StringLiteral"),initializer:(0,e.validateOptionalType)("Expression")}}),r("TSModuleDeclaration",{aliases:["Statement","Declaration"],visitor:["id","body"],fields:Object.assign({kind:{validate:(0,e.assertOneOf)("global","module","namespace")},declare:(0,e.validateOptional)(i)},{global:(0,e.validateOptional)(i)},{id:(0,e.validateType)("Identifier","StringLiteral"),body:(0,e.validateType)("TSModuleBlock","TSModuleDeclaration")})}),r("TSModuleBlock",{aliases:["Scopable","Block","BlockParent","FunctionParent"],visitor:["body"],fields:{body:(0,e.validateArrayOfType)("Statement")}}),r("TSImportType",{aliases:["TSType"],builder:["argument","qualifier","typeParameters"],visitor:["argument","options","qualifier","typeParameters"],fields:{argument:(0,e.validateType)("StringLiteral"),qualifier:(0,e.validateOptionalType)("TSEntityName"),typeParameters:(0,e.validateOptionalType)("TSTypeParameterInstantiation"),options:{validate:(0,e.assertNodeType)("ObjectExpression"),optional:!0}}}),r("TSImportEqualsDeclaration",{aliases:["Statement","Declaration"],visitor:["id","moduleReference"],fields:Object.assign({},{isExport:(0,e.validate)(i)},{id:(0,e.validateType)("Identifier"),moduleReference:(0,e.validateType)("TSEntityName","TSExternalModuleReference"),importKind:{validate:(0,e.assertOneOf)("type","value"),optional:!0}})}),r("TSExternalModuleReference",{visitor:["expression"],fields:{expression:(0,e.validateType)("StringLiteral")}}),r("TSNonNullExpression",{aliases:["Expression","LVal","PatternLike"],visitor:["expression"],fields:{expression:(0,e.validateType)("Expression")}}),r("TSExportAssignment",{aliases:["Statement"],visitor:["expression"],fields:{expression:(0,e.validateType)("Expression")}}),r("TSNamespaceExportDeclaration",{aliases:["Statement"],visitor:["id"],fields:{id:(0,e.validateType)("Identifier")}}),r("TSTypeAnnotation",{visitor:["typeAnnotation"],fields:{typeAnnotation:{validate:(0,e.assertNodeType)("TSType")}}}),r("TSTypeParameterInstantiation",{visitor:["params"],fields:{params:(0,e.validateArrayOfType)("TSType")}}),r("TSTypeParameterDeclaration",{visitor:["params"],fields:{params:(0,e.validateArrayOfType)("TSTypeParameter")}}),r("TSTypeParameter",{builder:["constraint","default","name"],visitor:["constraint","default"],fields:{name:{validate:(0,e.assertValueType)("string")},in:{validate:(0,e.assertValueType)("boolean"),optional:!0},out:{validate:(0,e.assertValueType)("boolean"),optional:!0},const:{validate:(0,e.assertValueType)("boolean"),optional:!0},constraint:{validate:(0,e.assertNodeType)("TSType"),optional:!0},default:{validate:(0,e.assertNodeType)("TSType"),optional:!0}}})}();var t=Se(),n=Ne(),r=(Me||(Me=1,Object.defineProperty(Re,"__esModule",{value:!0}),Re.DEPRECATED_ALIASES=void 0,Re.DEPRECATED_ALIASES={ModuleDeclaration:"ImportOrExportDeclaration"}),Re);Object.keys(r.DEPRECATED_ALIASES).forEach(e=>{t.FLIPPED_ALIAS_KEYS[e]=t.FLIPPED_ALIAS_KEYS[r.DEPRECATED_ALIASES[e]]});for(const{types:e,set:n}of t.allExpandedTypes)for(const r of e){const e=t.FLIPPED_ALIAS_KEYS[r];e?e.forEach(n.add,n):n.add(r)}e.TYPES=[].concat(Object.keys(t.VISITOR_KEYS),Object.keys(t.FLIPPED_ALIAS_KEYS),Object.keys(t.DEPRECATED_KEYS))}(Y)),Y}function Ke(){if(Be)return W;Be=1,Object.defineProperty(W,"__esModule",{value:!0}),W.default=function(r,i,s){if(!r)return;const a=e.NODE_FIELDS[r.type];if(!a)return;const o=a[i];t(r,i,s,o),n(r,i,s)},W.validateChild=n,W.validateField=t,W.validateInternal=function(t,n,r,i,s){if(null==t||!t.validate)return;if(t.optional&&null==i)return;if(t.validate(n,r,i),s){var a;const t=i.type;if(null==t)return;null==(a=e.NODE_PARENT_VALIDATIONS[t])||a.call(e.NODE_PARENT_VALIDATIONS,n,r,i)}};var e=Ue();function t(e,t,n,r){null!=r&&r.validate&&(r.optional&&null==n||r.validate(e,t,n))}function n(t,n,r){var i;const s=null==r?void 0:r.type;null!=s&&(null==(i=e.NODE_PARENT_VALIDATIONS[s])||i.call(e.NODE_PARENT_VALIDATIONS,t,n,r))}return W}function Ve(){if(je)return $;je=1,Object.defineProperty($,"__esModule",{value:!0}),$.anyTypeAnnotation=function(){return{type:"AnyTypeAnnotation"}},$.argumentPlaceholder=function(){return{type:"ArgumentPlaceholder"}},$.arrayExpression=function(e=[]){const t={type:"ArrayExpression",elements:e},n=i.ArrayExpression;return r(n.elements,t,"elements",e,1),t},$.arrayPattern=function(e){const t={type:"ArrayPattern",elements:e},n=i.ArrayPattern;return r(n.elements,t,"elements",e,1),t},$.arrayTypeAnnotation=function(e){const t={type:"ArrayTypeAnnotation",elementType:e},n=i.ArrayTypeAnnotation;return r(n.elementType,t,"elementType",e,1),t},$.arrowFunctionExpression=function(e,t,n=!1){const s={type:"ArrowFunctionExpression",params:e,body:t,async:n,expression:null},a=i.ArrowFunctionExpression;return r(a.params,s,"params",e,1),r(a.body,s,"body",t,1),r(a.async,s,"async",n),s},$.assignmentExpression=function(e,t,n){const s={type:"AssignmentExpression",operator:e,left:t,right:n},a=i.AssignmentExpression;return r(a.operator,s,"operator",e),r(a.left,s,"left",t,1),r(a.right,s,"right",n,1),s},$.assignmentPattern=function(e,t){const n={type:"AssignmentPattern",left:e,right:t},s=i.AssignmentPattern;return r(s.left,n,"left",e,1),r(s.right,n,"right",t,1),n},$.awaitExpression=function(e){const t={type:"AwaitExpression",argument:e},n=i.AwaitExpression;return r(n.argument,t,"argument",e,1),t},$.bigIntLiteral=function(e){"bigint"==typeof e&&(e=e.toString());const t={type:"BigIntLiteral",value:e},n=i.BigIntLiteral;return r(n.value,t,"value",e),t},$.binaryExpression=function(e,t,n){const s={type:"BinaryExpression",operator:e,left:t,right:n},a=i.BinaryExpression;return r(a.operator,s,"operator",e),r(a.left,s,"left",t,1),r(a.right,s,"right",n,1),s},$.bindExpression=function(e,t){const n={type:"BindExpression",object:e,callee:t},s=i.BindExpression;return r(s.object,n,"object",e,1),r(s.callee,n,"callee",t,1),n},$.blockStatement=function(e,t=[]){const n={type:"BlockStatement",body:e,directives:t},s=i.BlockStatement;return r(s.body,n,"body",e,1),r(s.directives,n,"directives",t,1),n},$.booleanLiteral=function(e){const t={type:"BooleanLiteral",value:e},n=i.BooleanLiteral;return r(n.value,t,"value",e),t},$.booleanLiteralTypeAnnotation=function(e){const t={type:"BooleanLiteralTypeAnnotation",value:e},n=i.BooleanLiteralTypeAnnotation;return r(n.value,t,"value",e),t},$.booleanTypeAnnotation=function(){return{type:"BooleanTypeAnnotation"}},$.breakStatement=function(e=null){const t={type:"BreakStatement",label:e},n=i.BreakStatement;return r(n.label,t,"label",e,1),t},$.callExpression=function(e,t){const n={type:"CallExpression",callee:e,arguments:t},s=i.CallExpression;return r(s.callee,n,"callee",e,1),r(s.arguments,n,"arguments",t,1),n},$.catchClause=function(e=null,t){const n={type:"CatchClause",param:e,body:t},s=i.CatchClause;return r(s.param,n,"param",e,1),r(s.body,n,"body",t,1),n},$.classAccessorProperty=function(e,t=null,n=null,s=null,a=!1,o=!1){const l={type:"ClassAccessorProperty",key:e,value:t,typeAnnotation:n,decorators:s,computed:a,static:o},c=i.ClassAccessorProperty;return r(c.key,l,"key",e,1),r(c.value,l,"value",t,1),r(c.typeAnnotation,l,"typeAnnotation",n,1),r(c.decorators,l,"decorators",s,1),r(c.computed,l,"computed",a),r(c.static,l,"static",o),l},$.classBody=function(e){const t={type:"ClassBody",body:e},n=i.ClassBody;return r(n.body,t,"body",e,1),t},$.classDeclaration=function(e=null,t=null,n,s=null){const a={type:"ClassDeclaration",id:e,superClass:t,body:n,decorators:s},o=i.ClassDeclaration;return r(o.id,a,"id",e,1),r(o.superClass,a,"superClass",t,1),r(o.body,a,"body",n,1),r(o.decorators,a,"decorators",s,1),a},$.classExpression=function(e=null,t=null,n,s=null){const a={type:"ClassExpression",id:e,superClass:t,body:n,decorators:s},o=i.ClassExpression;return r(o.id,a,"id",e,1),r(o.superClass,a,"superClass",t,1),r(o.body,a,"body",n,1),r(o.decorators,a,"decorators",s,1),a},$.classImplements=function(e,t=null){const n={type:"ClassImplements",id:e,typeParameters:t},s=i.ClassImplements;return r(s.id,n,"id",e,1),r(s.typeParameters,n,"typeParameters",t,1),n},$.classMethod=function(e="method",t,n,s,a=!1,o=!1,l=!1,c=!1){const p={type:"ClassMethod",kind:e,key:t,params:n,body:s,computed:a,static:o,generator:l,async:c},u=i.ClassMethod;return r(u.kind,p,"kind",e),r(u.key,p,"key",t,1),r(u.params,p,"params",n,1),r(u.body,p,"body",s,1),r(u.computed,p,"computed",a),r(u.static,p,"static",o),r(u.generator,p,"generator",l),r(u.async,p,"async",c),p},$.classPrivateMethod=function(e="method",t,n,s,a=!1){const o={type:"ClassPrivateMethod",kind:e,key:t,params:n,body:s,static:a},l=i.ClassPrivateMethod;return r(l.kind,o,"kind",e),r(l.key,o,"key",t,1),r(l.params,o,"params",n,1),r(l.body,o,"body",s,1),r(l.static,o,"static",a),o},$.classPrivateProperty=function(e,t=null,n=null,s=!1){const a={type:"ClassPrivateProperty",key:e,value:t,decorators:n,static:s},o=i.ClassPrivateProperty;return r(o.key,a,"key",e,1),r(o.value,a,"value",t,1),r(o.decorators,a,"decorators",n,1),r(o.static,a,"static",s),a},$.classProperty=function(e,t=null,n=null,s=null,a=!1,o=!1){const l={type:"ClassProperty",key:e,value:t,typeAnnotation:n,decorators:s,computed:a,static:o},c=i.ClassProperty;return r(c.key,l,"key",e,1),r(c.value,l,"value",t,1),r(c.typeAnnotation,l,"typeAnnotation",n,1),r(c.decorators,l,"decorators",s,1),r(c.computed,l,"computed",a),r(c.static,l,"static",o),l},$.conditionalExpression=function(e,t,n){const s={type:"ConditionalExpression",test:e,consequent:t,alternate:n},a=i.ConditionalExpression;return r(a.test,s,"test",e,1),r(a.consequent,s,"consequent",t,1),r(a.alternate,s,"alternate",n,1),s},$.continueStatement=function(e=null){const t={type:"ContinueStatement",label:e},n=i.ContinueStatement;return r(n.label,t,"label",e,1),t},$.debuggerStatement=function(){return{type:"DebuggerStatement"}},$.decimalLiteral=function(e){const t={type:"DecimalLiteral",value:e},n=i.DecimalLiteral;return r(n.value,t,"value",e),t},$.declareClass=function(e,t=null,n=null,s){const a={type:"DeclareClass",id:e,typeParameters:t,extends:n,body:s},o=i.DeclareClass;return r(o.id,a,"id",e,1),r(o.typeParameters,a,"typeParameters",t,1),r(o.extends,a,"extends",n,1),r(o.body,a,"body",s,1),a},$.declareExportAllDeclaration=function(e,t=null){const n={type:"DeclareExportAllDeclaration",source:e,attributes:t},s=i.DeclareExportAllDeclaration;return r(s.source,n,"source",e,1),r(s.attributes,n,"attributes",t,1),n},$.declareExportDeclaration=function(e=null,t=null,n=null,s=null){const a={type:"DeclareExportDeclaration",declaration:e,specifiers:t,source:n,attributes:s},o=i.DeclareExportDeclaration;return r(o.declaration,a,"declaration",e,1),r(o.specifiers,a,"specifiers",t,1),r(o.source,a,"source",n,1),r(o.attributes,a,"attributes",s,1),a},$.declareFunction=function(e){const t={type:"DeclareFunction",id:e},n=i.DeclareFunction;return r(n.id,t,"id",e,1),t},$.declareInterface=function(e,t=null,n=null,s){const a={type:"DeclareInterface",id:e,typeParameters:t,extends:n,body:s},o=i.DeclareInterface;return r(o.id,a,"id",e,1),r(o.typeParameters,a,"typeParameters",t,1),r(o.extends,a,"extends",n,1),r(o.body,a,"body",s,1),a},$.declareModule=function(e,t,n=null){const s={type:"DeclareModule",id:e,body:t,kind:n},a=i.DeclareModule;return r(a.id,s,"id",e,1),r(a.body,s,"body",t,1),r(a.kind,s,"kind",n),s},$.declareModuleExports=function(e){const t={type:"DeclareModuleExports",typeAnnotation:e},n=i.DeclareModuleExports;return r(n.typeAnnotation,t,"typeAnnotation",e,1),t},$.declareOpaqueType=function(e,t=null,n=null){const s={type:"DeclareOpaqueType",id:e,typeParameters:t,supertype:n},a=i.DeclareOpaqueType;return r(a.id,s,"id",e,1),r(a.typeParameters,s,"typeParameters",t,1),r(a.supertype,s,"supertype",n,1),s},$.declareTypeAlias=function(e,t=null,n){const s={type:"DeclareTypeAlias",id:e,typeParameters:t,right:n},a=i.DeclareTypeAlias;return r(a.id,s,"id",e,1),r(a.typeParameters,s,"typeParameters",t,1),r(a.right,s,"right",n,1),s},$.declareVariable=function(e){const t={type:"DeclareVariable",id:e},n=i.DeclareVariable;return r(n.id,t,"id",e,1),t},$.declaredPredicate=function(e){const t={type:"DeclaredPredicate",value:e},n=i.DeclaredPredicate;return r(n.value,t,"value",e,1),t},$.decorator=function(e){const t={type:"Decorator",expression:e},n=i.Decorator;return r(n.expression,t,"expression",e,1),t},$.directive=function(e){const t={type:"Directive",value:e},n=i.Directive;return r(n.value,t,"value",e,1),t},$.directiveLiteral=function(e){const t={type:"DirectiveLiteral",value:e},n=i.DirectiveLiteral;return r(n.value,t,"value",e),t},$.doExpression=function(e,t=!1){const n={type:"DoExpression",body:e,async:t},s=i.DoExpression;return r(s.body,n,"body",e,1),r(s.async,n,"async",t),n},$.doWhileStatement=function(e,t){const n={type:"DoWhileStatement",test:e,body:t},s=i.DoWhileStatement;return r(s.test,n,"test",e,1),r(s.body,n,"body",t,1),n},$.emptyStatement=function(){return{type:"EmptyStatement"}},$.emptyTypeAnnotation=function(){return{type:"EmptyTypeAnnotation"}},$.enumBooleanBody=function(e){const t={type:"EnumBooleanBody",members:e,explicitType:null,hasUnknownMembers:null},n=i.EnumBooleanBody;return r(n.members,t,"members",e,1),t},$.enumBooleanMember=function(e){const t={type:"EnumBooleanMember",id:e,init:null},n=i.EnumBooleanMember;return r(n.id,t,"id",e,1),t},$.enumDeclaration=function(e,t){const n={type:"EnumDeclaration",id:e,body:t},s=i.EnumDeclaration;return r(s.id,n,"id",e,1),r(s.body,n,"body",t,1),n},$.enumDefaultedMember=function(e){const t={type:"EnumDefaultedMember",id:e},n=i.EnumDefaultedMember;return r(n.id,t,"id",e,1),t},$.enumNumberBody=function(e){const t={type:"EnumNumberBody",members:e,explicitType:null,hasUnknownMembers:null},n=i.EnumNumberBody;return r(n.members,t,"members",e,1),t},$.enumNumberMember=function(e,t){const n={type:"EnumNumberMember",id:e,init:t},s=i.EnumNumberMember;return r(s.id,n,"id",e,1),r(s.init,n,"init",t,1),n},$.enumStringBody=function(e){const t={type:"EnumStringBody",members:e,explicitType:null,hasUnknownMembers:null},n=i.EnumStringBody;return r(n.members,t,"members",e,1),t},$.enumStringMember=function(e,t){const n={type:"EnumStringMember",id:e,init:t},s=i.EnumStringMember;return r(s.id,n,"id",e,1),r(s.init,n,"init",t,1),n},$.enumSymbolBody=function(e){const t={type:"EnumSymbolBody",members:e,hasUnknownMembers:null},n=i.EnumSymbolBody;return r(n.members,t,"members",e,1),t},$.existsTypeAnnotation=function(){return{type:"ExistsTypeAnnotation"}},$.exportAllDeclaration=function(e){const t={type:"ExportAllDeclaration",source:e},n=i.ExportAllDeclaration;return r(n.source,t,"source",e,1),t},$.exportDefaultDeclaration=function(e){const t={type:"ExportDefaultDeclaration",declaration:e},n=i.ExportDefaultDeclaration;return r(n.declaration,t,"declaration",e,1),t},$.exportDefaultSpecifier=function(e){const t={type:"ExportDefaultSpecifier",exported:e},n=i.ExportDefaultSpecifier;return r(n.exported,t,"exported",e,1),t},$.exportNamedDeclaration=function(e=null,t=[],n=null){const s={type:"ExportNamedDeclaration",declaration:e,specifiers:t,source:n},a=i.ExportNamedDeclaration;return r(a.declaration,s,"declaration",e,1),r(a.specifiers,s,"specifiers",t,1),r(a.source,s,"source",n,1),s},$.exportNamespaceSpecifier=function(e){const t={type:"ExportNamespaceSpecifier",exported:e},n=i.ExportNamespaceSpecifier;return r(n.exported,t,"exported",e,1),t},$.exportSpecifier=function(e,t){const n={type:"ExportSpecifier",local:e,exported:t},s=i.ExportSpecifier;return r(s.local,n,"local",e,1),r(s.exported,n,"exported",t,1),n},$.expressionStatement=function(e){const t={type:"ExpressionStatement",expression:e},n=i.ExpressionStatement;return r(n.expression,t,"expression",e,1),t},$.file=function(e,t=null,n=null){const s={type:"File",program:e,comments:t,tokens:n},a=i.File;return r(a.program,s,"program",e,1),r(a.comments,s,"comments",t,1),r(a.tokens,s,"tokens",n),s},$.forInStatement=function(e,t,n){const s={type:"ForInStatement",left:e,right:t,body:n},a=i.ForInStatement;return r(a.left,s,"left",e,1),r(a.right,s,"right",t,1),r(a.body,s,"body",n,1),s},$.forOfStatement=function(e,t,n,s=!1){const a={type:"ForOfStatement",left:e,right:t,body:n,await:s},o=i.ForOfStatement;return r(o.left,a,"left",e,1),r(o.right,a,"right",t,1),r(o.body,a,"body",n,1),r(o.await,a,"await",s),a},$.forStatement=function(e=null,t=null,n=null,s){const a={type:"ForStatement",init:e,test:t,update:n,body:s},o=i.ForStatement;return r(o.init,a,"init",e,1),r(o.test,a,"test",t,1),r(o.update,a,"update",n,1),r(o.body,a,"body",s,1),a},$.functionDeclaration=function(e=null,t,n,s=!1,a=!1){const o={type:"FunctionDeclaration",id:e,params:t,body:n,generator:s,async:a},l=i.FunctionDeclaration;return r(l.id,o,"id",e,1),r(l.params,o,"params",t,1),r(l.body,o,"body",n,1),r(l.generator,o,"generator",s),r(l.async,o,"async",a),o},$.functionExpression=function(e=null,t,n,s=!1,a=!1){const o={type:"FunctionExpression",id:e,params:t,body:n,generator:s,async:a},l=i.FunctionExpression;return r(l.id,o,"id",e,1),r(l.params,o,"params",t,1),r(l.body,o,"body",n,1),r(l.generator,o,"generator",s),r(l.async,o,"async",a),o},$.functionTypeAnnotation=function(e=null,t,n=null,s){const a={type:"FunctionTypeAnnotation",typeParameters:e,params:t,rest:n,returnType:s},o=i.FunctionTypeAnnotation;return r(o.typeParameters,a,"typeParameters",e,1),r(o.params,a,"params",t,1),r(o.rest,a,"rest",n,1),r(o.returnType,a,"returnType",s,1),a},$.functionTypeParam=function(e=null,t){const n={type:"FunctionTypeParam",name:e,typeAnnotation:t},s=i.FunctionTypeParam;return r(s.name,n,"name",e,1),r(s.typeAnnotation,n,"typeAnnotation",t,1),n},$.genericTypeAnnotation=function(e,t=null){const n={type:"GenericTypeAnnotation",id:e,typeParameters:t},s=i.GenericTypeAnnotation;return r(s.id,n,"id",e,1),r(s.typeParameters,n,"typeParameters",t,1),n},$.identifier=function(e){const t={type:"Identifier",name:e},n=i.Identifier;return r(n.name,t,"name",e),t},$.ifStatement=function(e,t,n=null){const s={type:"IfStatement",test:e,consequent:t,alternate:n},a=i.IfStatement;return r(a.test,s,"test",e,1),r(a.consequent,s,"consequent",t,1),r(a.alternate,s,"alternate",n,1),s},$.import=function(){return{type:"Import"}},$.importAttribute=function(e,t){const n={type:"ImportAttribute",key:e,value:t},s=i.ImportAttribute;return r(s.key,n,"key",e,1),r(s.value,n,"value",t,1),n},$.importDeclaration=function(e,t){const n={type:"ImportDeclaration",specifiers:e,source:t},s=i.ImportDeclaration;return r(s.specifiers,n,"specifiers",e,1),r(s.source,n,"source",t,1),n},$.importDefaultSpecifier=function(e){const t={type:"ImportDefaultSpecifier",local:e},n=i.ImportDefaultSpecifier;return r(n.local,t,"local",e,1),t},$.importExpression=function(e,t=null){const n={type:"ImportExpression",source:e,options:t},s=i.ImportExpression;return r(s.source,n,"source",e,1),r(s.options,n,"options",t,1),n},$.importNamespaceSpecifier=function(e){const t={type:"ImportNamespaceSpecifier",local:e},n=i.ImportNamespaceSpecifier;return r(n.local,t,"local",e,1),t},$.importSpecifier=function(e,t){const n={type:"ImportSpecifier",local:e,imported:t},s=i.ImportSpecifier;return r(s.local,n,"local",e,1),r(s.imported,n,"imported",t,1),n},$.indexedAccessType=function(e,t){const n={type:"IndexedAccessType",objectType:e,indexType:t},s=i.IndexedAccessType;return r(s.objectType,n,"objectType",e,1),r(s.indexType,n,"indexType",t,1),n},$.inferredPredicate=function(){return{type:"InferredPredicate"}},$.interfaceDeclaration=function(e,t=null,n=null,s){const a={type:"InterfaceDeclaration",id:e,typeParameters:t,extends:n,body:s},o=i.InterfaceDeclaration;return r(o.id,a,"id",e,1),r(o.typeParameters,a,"typeParameters",t,1),r(o.extends,a,"extends",n,1),r(o.body,a,"body",s,1),a},$.interfaceExtends=function(e,t=null){const n={type:"InterfaceExtends",id:e,typeParameters:t},s=i.InterfaceExtends;return r(s.id,n,"id",e,1),r(s.typeParameters,n,"typeParameters",t,1),n},$.interfaceTypeAnnotation=function(e=null,t){const n={type:"InterfaceTypeAnnotation",extends:e,body:t},s=i.InterfaceTypeAnnotation;return r(s.extends,n,"extends",e,1),r(s.body,n,"body",t,1),n},$.interpreterDirective=function(e){const t={type:"InterpreterDirective",value:e},n=i.InterpreterDirective;return r(n.value,t,"value",e),t},$.intersectionTypeAnnotation=function(e){const t={type:"IntersectionTypeAnnotation",types:e},n=i.IntersectionTypeAnnotation;return r(n.types,t,"types",e,1),t},$.jSXAttribute=$.jsxAttribute=function(e,t=null){const n={type:"JSXAttribute",name:e,value:t},s=i.JSXAttribute;return r(s.name,n,"name",e,1),r(s.value,n,"value",t,1),n},$.jSXClosingElement=$.jsxClosingElement=function(e){const t={type:"JSXClosingElement",name:e},n=i.JSXClosingElement;return r(n.name,t,"name",e,1),t},$.jSXClosingFragment=$.jsxClosingFragment=function(){return{type:"JSXClosingFragment"}},$.jSXElement=$.jsxElement=function(e,t=null,n,s=null){const a={type:"JSXElement",openingElement:e,closingElement:t,children:n,selfClosing:s},o=i.JSXElement;return r(o.openingElement,a,"openingElement",e,1),r(o.closingElement,a,"closingElement",t,1),r(o.children,a,"children",n,1),r(o.selfClosing,a,"selfClosing",s),a},$.jSXEmptyExpression=$.jsxEmptyExpression=function(){return{type:"JSXEmptyExpression"}},$.jSXExpressionContainer=$.jsxExpressionContainer=function(e){const t={type:"JSXExpressionContainer",expression:e},n=i.JSXExpressionContainer;return r(n.expression,t,"expression",e,1),t},$.jSXFragment=$.jsxFragment=function(e,t,n){const s={type:"JSXFragment",openingFragment:e,closingFragment:t,children:n},a=i.JSXFragment;return r(a.openingFragment,s,"openingFragment",e,1),r(a.closingFragment,s,"closingFragment",t,1),r(a.children,s,"children",n,1),s},$.jSXIdentifier=$.jsxIdentifier=function(e){const t={type:"JSXIdentifier",name:e},n=i.JSXIdentifier;return r(n.name,t,"name",e),t},$.jSXMemberExpression=$.jsxMemberExpression=function(e,t){const n={type:"JSXMemberExpression",object:e,property:t},s=i.JSXMemberExpression;return r(s.object,n,"object",e,1),r(s.property,n,"property",t,1),n},$.jSXNamespacedName=$.jsxNamespacedName=function(e,t){const n={type:"JSXNamespacedName",namespace:e,name:t},s=i.JSXNamespacedName;return r(s.namespace,n,"namespace",e,1),r(s.name,n,"name",t,1),n},$.jSXOpeningElement=$.jsxOpeningElement=function(e,t,n=!1){const s={type:"JSXOpeningElement",name:e,attributes:t,selfClosing:n},a=i.JSXOpeningElement;return r(a.name,s,"name",e,1),r(a.attributes,s,"attributes",t,1),r(a.selfClosing,s,"selfClosing",n),s},$.jSXOpeningFragment=$.jsxOpeningFragment=function(){return{type:"JSXOpeningFragment"}},$.jSXSpreadAttribute=$.jsxSpreadAttribute=function(e){const t={type:"JSXSpreadAttribute",argument:e},n=i.JSXSpreadAttribute;return r(n.argument,t,"argument",e,1),t},$.jSXSpreadChild=$.jsxSpreadChild=function(e){const t={type:"JSXSpreadChild",expression:e},n=i.JSXSpreadChild;return r(n.expression,t,"expression",e,1),t},$.jSXText=$.jsxText=function(e){const t={type:"JSXText",value:e},n=i.JSXText;return r(n.value,t,"value",e),t},$.labeledStatement=function(e,t){const n={type:"LabeledStatement",label:e,body:t},s=i.LabeledStatement;return r(s.label,n,"label",e,1),r(s.body,n,"body",t,1),n},$.logicalExpression=function(e,t,n){const s={type:"LogicalExpression",operator:e,left:t,right:n},a=i.LogicalExpression;return r(a.operator,s,"operator",e),r(a.left,s,"left",t,1),r(a.right,s,"right",n,1),s},$.memberExpression=function(e,t,n=!1,s=null){const a={type:"MemberExpression",object:e,property:t,computed:n,optional:s},o=i.MemberExpression;return r(o.object,a,"object",e,1),r(o.property,a,"property",t,1),r(o.computed,a,"computed",n),r(o.optional,a,"optional",s),a},$.metaProperty=function(e,t){const n={type:"MetaProperty",meta:e,property:t},s=i.MetaProperty;return r(s.meta,n,"meta",e,1),r(s.property,n,"property",t,1),n},$.mixedTypeAnnotation=function(){return{type:"MixedTypeAnnotation"}},$.moduleExpression=function(e){const t={type:"ModuleExpression",body:e},n=i.ModuleExpression;return r(n.body,t,"body",e,1),t},$.newExpression=function(e,t){const n={type:"NewExpression",callee:e,arguments:t},s=i.NewExpression;return r(s.callee,n,"callee",e,1),r(s.arguments,n,"arguments",t,1),n},$.noop=function(){return{type:"Noop"}},$.nullLiteral=function(){return{type:"NullLiteral"}},$.nullLiteralTypeAnnotation=function(){return{type:"NullLiteralTypeAnnotation"}},$.nullableTypeAnnotation=function(e){const t={type:"NullableTypeAnnotation",typeAnnotation:e},n=i.NullableTypeAnnotation;return r(n.typeAnnotation,t,"typeAnnotation",e,1),t},$.numberLiteral=function(e){return(0,t.default)("NumberLiteral","NumericLiteral","The node type "),s(e)},$.numberLiteralTypeAnnotation=function(e){const t={type:"NumberLiteralTypeAnnotation",value:e},n=i.NumberLiteralTypeAnnotation;return r(n.value,t,"value",e),t},$.numberTypeAnnotation=function(){return{type:"NumberTypeAnnotation"}},$.numericLiteral=s,$.objectExpression=function(e){const t={type:"ObjectExpression",properties:e},n=i.ObjectExpression;return r(n.properties,t,"properties",e,1),t},$.objectMethod=function(e="method",t,n,s,a=!1,o=!1,l=!1){const c={type:"ObjectMethod",kind:e,key:t,params:n,body:s,computed:a,generator:o,async:l},p=i.ObjectMethod;return r(p.kind,c,"kind",e),r(p.key,c,"key",t,1),r(p.params,c,"params",n,1),r(p.body,c,"body",s,1),r(p.computed,c,"computed",a),r(p.generator,c,"generator",o),r(p.async,c,"async",l),c},$.objectPattern=function(e){const t={type:"ObjectPattern",properties:e},n=i.ObjectPattern;return r(n.properties,t,"properties",e,1),t},$.objectProperty=function(e,t,n=!1,s=!1,a=null){const o={type:"ObjectProperty",key:e,value:t,computed:n,shorthand:s,decorators:a},l=i.ObjectProperty;return r(l.key,o,"key",e,1),r(l.value,o,"value",t,1),r(l.computed,o,"computed",n),r(l.shorthand,o,"shorthand",s),r(l.decorators,o,"decorators",a,1),o},$.objectTypeAnnotation=function(e,t=[],n=[],s=[],a=!1){const o={type:"ObjectTypeAnnotation",properties:e,indexers:t,callProperties:n,internalSlots:s,exact:a},l=i.ObjectTypeAnnotation;return r(l.properties,o,"properties",e,1),r(l.indexers,o,"indexers",t,1),r(l.callProperties,o,"callProperties",n,1),r(l.internalSlots,o,"internalSlots",s,1),r(l.exact,o,"exact",a),o},$.objectTypeCallProperty=function(e){const t={type:"ObjectTypeCallProperty",value:e,static:null},n=i.ObjectTypeCallProperty;return r(n.value,t,"value",e,1),t},$.objectTypeIndexer=function(e=null,t,n,s=null){const a={type:"ObjectTypeIndexer",id:e,key:t,value:n,variance:s,static:null},o=i.ObjectTypeIndexer;return r(o.id,a,"id",e,1),r(o.key,a,"key",t,1),r(o.value,a,"value",n,1),r(o.variance,a,"variance",s,1),a},$.objectTypeInternalSlot=function(e,t,n,s,a){const o={type:"ObjectTypeInternalSlot",id:e,value:t,optional:n,static:s,method:a},l=i.ObjectTypeInternalSlot;return r(l.id,o,"id",e,1),r(l.value,o,"value",t,1),r(l.optional,o,"optional",n),r(l.static,o,"static",s),r(l.method,o,"method",a),o},$.objectTypeProperty=function(e,t,n=null){const s={type:"ObjectTypeProperty",key:e,value:t,variance:n,kind:null,method:null,optional:null,proto:null,static:null},a=i.ObjectTypeProperty;return r(a.key,s,"key",e,1),r(a.value,s,"value",t,1),r(a.variance,s,"variance",n,1),s},$.objectTypeSpreadProperty=function(e){const t={type:"ObjectTypeSpreadProperty",argument:e},n=i.ObjectTypeSpreadProperty;return r(n.argument,t,"argument",e,1),t},$.opaqueType=function(e,t=null,n=null,s){const a={type:"OpaqueType",id:e,typeParameters:t,supertype:n,impltype:s},o=i.OpaqueType;return r(o.id,a,"id",e,1),r(o.typeParameters,a,"typeParameters",t,1),r(o.supertype,a,"supertype",n,1),r(o.impltype,a,"impltype",s,1),a},$.optionalCallExpression=function(e,t,n){const s={type:"OptionalCallExpression",callee:e,arguments:t,optional:n},a=i.OptionalCallExpression;return r(a.callee,s,"callee",e,1),r(a.arguments,s,"arguments",t,1),r(a.optional,s,"optional",n),s},$.optionalIndexedAccessType=function(e,t){const n={type:"OptionalIndexedAccessType",objectType:e,indexType:t,optional:null},s=i.OptionalIndexedAccessType;return r(s.objectType,n,"objectType",e,1),r(s.indexType,n,"indexType",t,1),n},$.optionalMemberExpression=function(e,t,n=!1,s){const a={type:"OptionalMemberExpression",object:e,property:t,computed:n,optional:s},o=i.OptionalMemberExpression;return r(o.object,a,"object",e,1),r(o.property,a,"property",t,1),r(o.computed,a,"computed",n),r(o.optional,a,"optional",s),a},$.parenthesizedExpression=function(e){const t={type:"ParenthesizedExpression",expression:e},n=i.ParenthesizedExpression;return r(n.expression,t,"expression",e,1),t},$.pipelineBareFunction=function(e){const t={type:"PipelineBareFunction",callee:e},n=i.PipelineBareFunction;return r(n.callee,t,"callee",e,1),t},$.pipelinePrimaryTopicReference=function(){return{type:"PipelinePrimaryTopicReference"}},$.pipelineTopicExpression=function(e){const t={type:"PipelineTopicExpression",expression:e},n=i.PipelineTopicExpression;return r(n.expression,t,"expression",e,1),t},$.placeholder=function(e,t){const n={type:"Placeholder",expectedNode:e,name:t},s=i.Placeholder;return r(s.expectedNode,n,"expectedNode",e),r(s.name,n,"name",t,1),n},$.privateName=function(e){const t={type:"PrivateName",id:e},n=i.PrivateName;return r(n.id,t,"id",e,1),t},$.program=function(e,t=[],n="script",s=null){const a={type:"Program",body:e,directives:t,sourceType:n,interpreter:s},o=i.Program;return r(o.body,a,"body",e,1),r(o.directives,a,"directives",t,1),r(o.sourceType,a,"sourceType",n),r(o.interpreter,a,"interpreter",s,1),a},$.qualifiedTypeIdentifier=function(e,t){const n={type:"QualifiedTypeIdentifier",id:e,qualification:t},s=i.QualifiedTypeIdentifier;return r(s.id,n,"id",e,1),r(s.qualification,n,"qualification",t,1),n},$.recordExpression=function(e){const t={type:"RecordExpression",properties:e},n=i.RecordExpression;return r(n.properties,t,"properties",e,1),t},$.regExpLiteral=a,$.regexLiteral=function(e,n=""){return(0,t.default)("RegexLiteral","RegExpLiteral","The node type "),a(e,n)},$.restElement=o,$.restProperty=function(e){return(0,t.default)("RestProperty","RestElement","The node type "),o(e)},$.returnStatement=function(e=null){const t={type:"ReturnStatement",argument:e},n=i.ReturnStatement;return r(n.argument,t,"argument",e,1),t},$.sequenceExpression=function(e){const t={type:"SequenceExpression",expressions:e},n=i.SequenceExpression;return r(n.expressions,t,"expressions",e,1),t},$.spreadElement=l,$.spreadProperty=function(e){return(0,t.default)("SpreadProperty","SpreadElement","The node type "),l(e)},$.staticBlock=function(e){const t={type:"StaticBlock",body:e},n=i.StaticBlock;return r(n.body,t,"body",e,1),t},$.stringLiteral=function(e){const t={type:"StringLiteral",value:e},n=i.StringLiteral;return r(n.value,t,"value",e),t},$.stringLiteralTypeAnnotation=function(e){const t={type:"StringLiteralTypeAnnotation",value:e},n=i.StringLiteralTypeAnnotation;return r(n.value,t,"value",e),t},$.stringTypeAnnotation=function(){return{type:"StringTypeAnnotation"}},$.super=function(){return{type:"Super"}},$.switchCase=function(e=null,t){const n={type:"SwitchCase",test:e,consequent:t},s=i.SwitchCase;return r(s.test,n,"test",e,1),r(s.consequent,n,"consequent",t,1),n},$.switchStatement=function(e,t){const n={type:"SwitchStatement",discriminant:e,cases:t},s=i.SwitchStatement;return r(s.discriminant,n,"discriminant",e,1),r(s.cases,n,"cases",t,1),n},$.symbolTypeAnnotation=function(){return{type:"SymbolTypeAnnotation"}},$.taggedTemplateExpression=function(e,t){const n={type:"TaggedTemplateExpression",tag:e,quasi:t},s=i.TaggedTemplateExpression;return r(s.tag,n,"tag",e,1),r(s.quasi,n,"quasi",t,1),n},$.templateElement=function(e,t=!1){const n={type:"TemplateElement",value:e,tail:t},s=i.TemplateElement;return r(s.value,n,"value",e),r(s.tail,n,"tail",t),n},$.templateLiteral=function(e,t){const n={type:"TemplateLiteral",quasis:e,expressions:t},s=i.TemplateLiteral;return r(s.quasis,n,"quasis",e,1),r(s.expressions,n,"expressions",t,1),n},$.thisExpression=function(){return{type:"ThisExpression"}},$.thisTypeAnnotation=function(){return{type:"ThisTypeAnnotation"}},$.throwStatement=function(e){const t={type:"ThrowStatement",argument:e},n=i.ThrowStatement;return r(n.argument,t,"argument",e,1),t},$.topicReference=function(){return{type:"TopicReference"}},$.tryStatement=function(e,t=null,n=null){const s={type:"TryStatement",block:e,handler:t,finalizer:n},a=i.TryStatement;return r(a.block,s,"block",e,1),r(a.handler,s,"handler",t,1),r(a.finalizer,s,"finalizer",n,1),s},$.tSAnyKeyword=$.tsAnyKeyword=function(){return{type:"TSAnyKeyword"}},$.tSArrayType=$.tsArrayType=function(e){const t={type:"TSArrayType",elementType:e},n=i.TSArrayType;return r(n.elementType,t,"elementType",e,1),t},$.tSAsExpression=$.tsAsExpression=function(e,t){const n={type:"TSAsExpression",expression:e,typeAnnotation:t},s=i.TSAsExpression;return r(s.expression,n,"expression",e,1),r(s.typeAnnotation,n,"typeAnnotation",t,1),n},$.tSBigIntKeyword=$.tsBigIntKeyword=function(){return{type:"TSBigIntKeyword"}},$.tSBooleanKeyword=$.tsBooleanKeyword=function(){return{type:"TSBooleanKeyword"}},$.tSCallSignatureDeclaration=$.tsCallSignatureDeclaration=function(e=null,t,n=null){const s={type:"TSCallSignatureDeclaration",typeParameters:e,parameters:t,typeAnnotation:n},a=i.TSCallSignatureDeclaration;return r(a.typeParameters,s,"typeParameters",e,1),r(a.parameters,s,"parameters",t,1),r(a.typeAnnotation,s,"typeAnnotation",n,1),s},$.tSConditionalType=$.tsConditionalType=function(e,t,n,s){const a={type:"TSConditionalType",checkType:e,extendsType:t,trueType:n,falseType:s},o=i.TSConditionalType;return r(o.checkType,a,"checkType",e,1),r(o.extendsType,a,"extendsType",t,1),r(o.trueType,a,"trueType",n,1),r(o.falseType,a,"falseType",s,1),a},$.tSConstructSignatureDeclaration=$.tsConstructSignatureDeclaration=function(e=null,t,n=null){const s={type:"TSConstructSignatureDeclaration",typeParameters:e,parameters:t,typeAnnotation:n},a=i.TSConstructSignatureDeclaration;return r(a.typeParameters,s,"typeParameters",e,1),r(a.parameters,s,"parameters",t,1),r(a.typeAnnotation,s,"typeAnnotation",n,1),s},$.tSConstructorType=$.tsConstructorType=function(e=null,t,n=null){const s={type:"TSConstructorType",typeParameters:e,parameters:t,typeAnnotation:n},a=i.TSConstructorType;return r(a.typeParameters,s,"typeParameters",e,1),r(a.parameters,s,"parameters",t,1),r(a.typeAnnotation,s,"typeAnnotation",n,1),s},$.tSDeclareFunction=$.tsDeclareFunction=function(e=null,t=null,n,s=null){const a={type:"TSDeclareFunction",id:e,typeParameters:t,params:n,returnType:s},o=i.TSDeclareFunction;return r(o.id,a,"id",e,1),r(o.typeParameters,a,"typeParameters",t,1),r(o.params,a,"params",n,1),r(o.returnType,a,"returnType",s,1),a},$.tSDeclareMethod=$.tsDeclareMethod=function(e=null,t,n=null,s,a=null){const o={type:"TSDeclareMethod",decorators:e,key:t,typeParameters:n,params:s,returnType:a},l=i.TSDeclareMethod;return r(l.decorators,o,"decorators",e,1),r(l.key,o,"key",t,1),r(l.typeParameters,o,"typeParameters",n,1),r(l.params,o,"params",s,1),r(l.returnType,o,"returnType",a,1),o},$.tSEnumBody=$.tsEnumBody=function(e){const t={type:"TSEnumBody",members:e},n=i.TSEnumBody;return r(n.members,t,"members",e,1),t},$.tSEnumDeclaration=$.tsEnumDeclaration=function(e,t){const n={type:"TSEnumDeclaration",id:e,members:t},s=i.TSEnumDeclaration;return r(s.id,n,"id",e,1),r(s.members,n,"members",t,1),n},$.tSEnumMember=$.tsEnumMember=function(e,t=null){const n={type:"TSEnumMember",id:e,initializer:t},s=i.TSEnumMember;return r(s.id,n,"id",e,1),r(s.initializer,n,"initializer",t,1),n},$.tSExportAssignment=$.tsExportAssignment=function(e){const t={type:"TSExportAssignment",expression:e},n=i.TSExportAssignment;return r(n.expression,t,"expression",e,1),t},$.tSExpressionWithTypeArguments=$.tsExpressionWithTypeArguments=function(e,t=null){const n={type:"TSExpressionWithTypeArguments",expression:e,typeParameters:t},s=i.TSExpressionWithTypeArguments;return r(s.expression,n,"expression",e,1),r(s.typeParameters,n,"typeParameters",t,1),n},$.tSExternalModuleReference=$.tsExternalModuleReference=function(e){const t={type:"TSExternalModuleReference",expression:e},n=i.TSExternalModuleReference;return r(n.expression,t,"expression",e,1),t},$.tSFunctionType=$.tsFunctionType=function(e=null,t,n=null){const s={type:"TSFunctionType",typeParameters:e,parameters:t,typeAnnotation:n},a=i.TSFunctionType;return r(a.typeParameters,s,"typeParameters",e,1),r(a.parameters,s,"parameters",t,1),r(a.typeAnnotation,s,"typeAnnotation",n,1),s},$.tSImportEqualsDeclaration=$.tsImportEqualsDeclaration=function(e,t){const n={type:"TSImportEqualsDeclaration",id:e,moduleReference:t,isExport:null},s=i.TSImportEqualsDeclaration;return r(s.id,n,"id",e,1),r(s.moduleReference,n,"moduleReference",t,1),n},$.tSImportType=$.tsImportType=function(e,t=null,n=null){const s={type:"TSImportType",argument:e,qualifier:t,typeParameters:n},a=i.TSImportType;return r(a.argument,s,"argument",e,1),r(a.qualifier,s,"qualifier",t,1),r(a.typeParameters,s,"typeParameters",n,1),s},$.tSIndexSignature=$.tsIndexSignature=function(e,t=null){const n={type:"TSIndexSignature",parameters:e,typeAnnotation:t},s=i.TSIndexSignature;return r(s.parameters,n,"parameters",e,1),r(s.typeAnnotation,n,"typeAnnotation",t,1),n},$.tSIndexedAccessType=$.tsIndexedAccessType=function(e,t){const n={type:"TSIndexedAccessType",objectType:e,indexType:t},s=i.TSIndexedAccessType;return r(s.objectType,n,"objectType",e,1),r(s.indexType,n,"indexType",t,1),n},$.tSInferType=$.tsInferType=function(e){const t={type:"TSInferType",typeParameter:e},n=i.TSInferType;return r(n.typeParameter,t,"typeParameter",e,1),t},$.tSInstantiationExpression=$.tsInstantiationExpression=function(e,t=null){const n={type:"TSInstantiationExpression",expression:e,typeParameters:t},s=i.TSInstantiationExpression;return r(s.expression,n,"expression",e,1),r(s.typeParameters,n,"typeParameters",t,1),n},$.tSInterfaceBody=$.tsInterfaceBody=function(e){const t={type:"TSInterfaceBody",body:e},n=i.TSInterfaceBody;return r(n.body,t,"body",e,1),t},$.tSInterfaceDeclaration=$.tsInterfaceDeclaration=function(e,t=null,n=null,s){const a={type:"TSInterfaceDeclaration",id:e,typeParameters:t,extends:n,body:s},o=i.TSInterfaceDeclaration;return r(o.id,a,"id",e,1),r(o.typeParameters,a,"typeParameters",t,1),r(o.extends,a,"extends",n,1),r(o.body,a,"body",s,1),a},$.tSIntersectionType=$.tsIntersectionType=function(e){const t={type:"TSIntersectionType",types:e},n=i.TSIntersectionType;return r(n.types,t,"types",e,1),t},$.tSIntrinsicKeyword=$.tsIntrinsicKeyword=function(){return{type:"TSIntrinsicKeyword"}},$.tSLiteralType=$.tsLiteralType=function(e){const t={type:"TSLiteralType",literal:e},n=i.TSLiteralType;return r(n.literal,t,"literal",e,1),t},$.tSMappedType=$.tsMappedType=function(e,t=null,n=null){const s={type:"TSMappedType",typeParameter:e,typeAnnotation:t,nameType:n},a=i.TSMappedType;return r(a.typeParameter,s,"typeParameter",e,1),r(a.typeAnnotation,s,"typeAnnotation",t,1),r(a.nameType,s,"nameType",n,1),s},$.tSMethodSignature=$.tsMethodSignature=function(e,t=null,n,s=null){const a={type:"TSMethodSignature",key:e,typeParameters:t,parameters:n,typeAnnotation:s,kind:null},o=i.TSMethodSignature;return r(o.key,a,"key",e,1),r(o.typeParameters,a,"typeParameters",t,1),r(o.parameters,a,"parameters",n,1),r(o.typeAnnotation,a,"typeAnnotation",s,1),a},$.tSModuleBlock=$.tsModuleBlock=function(e){const t={type:"TSModuleBlock",body:e},n=i.TSModuleBlock;return r(n.body,t,"body",e,1),t},$.tSModuleDeclaration=$.tsModuleDeclaration=function(e,t){const n={type:"TSModuleDeclaration",id:e,body:t,kind:null},s=i.TSModuleDeclaration;return r(s.id,n,"id",e,1),r(s.body,n,"body",t,1),n},$.tSNamedTupleMember=$.tsNamedTupleMember=function(e,t,n=!1){const s={type:"TSNamedTupleMember",label:e,elementType:t,optional:n},a=i.TSNamedTupleMember;return r(a.label,s,"label",e,1),r(a.elementType,s,"elementType",t,1),r(a.optional,s,"optional",n),s},$.tSNamespaceExportDeclaration=$.tsNamespaceExportDeclaration=function(e){const t={type:"TSNamespaceExportDeclaration",id:e},n=i.TSNamespaceExportDeclaration;return r(n.id,t,"id",e,1),t},$.tSNeverKeyword=$.tsNeverKeyword=function(){return{type:"TSNeverKeyword"}},$.tSNonNullExpression=$.tsNonNullExpression=function(e){const t={type:"TSNonNullExpression",expression:e},n=i.TSNonNullExpression;return r(n.expression,t,"expression",e,1),t},$.tSNullKeyword=$.tsNullKeyword=function(){return{type:"TSNullKeyword"}},$.tSNumberKeyword=$.tsNumberKeyword=function(){return{type:"TSNumberKeyword"}},$.tSObjectKeyword=$.tsObjectKeyword=function(){return{type:"TSObjectKeyword"}},$.tSOptionalType=$.tsOptionalType=function(e){const t={type:"TSOptionalType",typeAnnotation:e},n=i.TSOptionalType;return r(n.typeAnnotation,t,"typeAnnotation",e,1),t},$.tSParameterProperty=$.tsParameterProperty=function(e){const t={type:"TSParameterProperty",parameter:e},n=i.TSParameterProperty;return r(n.parameter,t,"parameter",e,1),t},$.tSParenthesizedType=$.tsParenthesizedType=function(e){const t={type:"TSParenthesizedType",typeAnnotation:e},n=i.TSParenthesizedType;return r(n.typeAnnotation,t,"typeAnnotation",e,1),t},$.tSPropertySignature=$.tsPropertySignature=function(e,t=null){const n={type:"TSPropertySignature",key:e,typeAnnotation:t},s=i.TSPropertySignature;return r(s.key,n,"key",e,1),r(s.typeAnnotation,n,"typeAnnotation",t,1),n},$.tSQualifiedName=$.tsQualifiedName=function(e,t){const n={type:"TSQualifiedName",left:e,right:t},s=i.TSQualifiedName;return r(s.left,n,"left",e,1),r(s.right,n,"right",t,1),n},$.tSRestType=$.tsRestType=function(e){const t={type:"TSRestType",typeAnnotation:e},n=i.TSRestType;return r(n.typeAnnotation,t,"typeAnnotation",e,1),t},$.tSSatisfiesExpression=$.tsSatisfiesExpression=function(e,t){const n={type:"TSSatisfiesExpression",expression:e,typeAnnotation:t},s=i.TSSatisfiesExpression;return r(s.expression,n,"expression",e,1),r(s.typeAnnotation,n,"typeAnnotation",t,1),n},$.tSStringKeyword=$.tsStringKeyword=function(){return{type:"TSStringKeyword"}},$.tSSymbolKeyword=$.tsSymbolKeyword=function(){return{type:"TSSymbolKeyword"}},$.tSTemplateLiteralType=$.tsTemplateLiteralType=function(e,t){const n={type:"TSTemplateLiteralType",quasis:e,types:t},s=i.TSTemplateLiteralType;return r(s.quasis,n,"quasis",e,1),r(s.types,n,"types",t,1),n},$.tSThisType=$.tsThisType=function(){return{type:"TSThisType"}},$.tSTupleType=$.tsTupleType=function(e){const t={type:"TSTupleType",elementTypes:e},n=i.TSTupleType;return r(n.elementTypes,t,"elementTypes",e,1),t},$.tSTypeAliasDeclaration=$.tsTypeAliasDeclaration=function(e,t=null,n){const s={type:"TSTypeAliasDeclaration",id:e,typeParameters:t,typeAnnotation:n},a=i.TSTypeAliasDeclaration;return r(a.id,s,"id",e,1),r(a.typeParameters,s,"typeParameters",t,1),r(a.typeAnnotation,s,"typeAnnotation",n,1),s},$.tSTypeAnnotation=$.tsTypeAnnotation=function(e){const t={type:"TSTypeAnnotation",typeAnnotation:e},n=i.TSTypeAnnotation;return r(n.typeAnnotation,t,"typeAnnotation",e,1),t},$.tSTypeAssertion=$.tsTypeAssertion=function(e,t){const n={type:"TSTypeAssertion",typeAnnotation:e,expression:t},s=i.TSTypeAssertion;return r(s.typeAnnotation,n,"typeAnnotation",e,1),r(s.expression,n,"expression",t,1),n},$.tSTypeLiteral=$.tsTypeLiteral=function(e){const t={type:"TSTypeLiteral",members:e},n=i.TSTypeLiteral;return r(n.members,t,"members",e,1),t},$.tSTypeOperator=$.tsTypeOperator=function(e,t="keyof"){const n={type:"TSTypeOperator",typeAnnotation:e,operator:t},s=i.TSTypeOperator;return r(s.typeAnnotation,n,"typeAnnotation",e,1),r(s.operator,n,"operator",t),n},$.tSTypeParameter=$.tsTypeParameter=function(e=null,t=null,n){const s={type:"TSTypeParameter",constraint:e,default:t,name:n},a=i.TSTypeParameter;return r(a.constraint,s,"constraint",e,1),r(a.default,s,"default",t,1),r(a.name,s,"name",n),s},$.tSTypeParameterDeclaration=$.tsTypeParameterDeclaration=function(e){const t={type:"TSTypeParameterDeclaration",params:e},n=i.TSTypeParameterDeclaration;return r(n.params,t,"params",e,1),t},$.tSTypeParameterInstantiation=$.tsTypeParameterInstantiation=function(e){const t={type:"TSTypeParameterInstantiation",params:e},n=i.TSTypeParameterInstantiation;return r(n.params,t,"params",e,1),t},$.tSTypePredicate=$.tsTypePredicate=function(e,t=null,n=null){const s={type:"TSTypePredicate",parameterName:e,typeAnnotation:t,asserts:n},a=i.TSTypePredicate;return r(a.parameterName,s,"parameterName",e,1),r(a.typeAnnotation,s,"typeAnnotation",t,1),r(a.asserts,s,"asserts",n),s},$.tSTypeQuery=$.tsTypeQuery=function(e,t=null){const n={type:"TSTypeQuery",exprName:e,typeParameters:t},s=i.TSTypeQuery;return r(s.exprName,n,"exprName",e,1),r(s.typeParameters,n,"typeParameters",t,1),n},$.tSTypeReference=$.tsTypeReference=function(e,t=null){const n={type:"TSTypeReference",typeName:e,typeParameters:t},s=i.TSTypeReference;return r(s.typeName,n,"typeName",e,1),r(s.typeParameters,n,"typeParameters",t,1),n},$.tSUndefinedKeyword=$.tsUndefinedKeyword=function(){return{type:"TSUndefinedKeyword"}},$.tSUnionType=$.tsUnionType=function(e){const t={type:"TSUnionType",types:e},n=i.TSUnionType;return r(n.types,t,"types",e,1),t},$.tSUnknownKeyword=$.tsUnknownKeyword=function(){return{type:"TSUnknownKeyword"}},$.tSVoidKeyword=$.tsVoidKeyword=function(){return{type:"TSVoidKeyword"}},$.tupleExpression=function(e=[]){const t={type:"TupleExpression",elements:e},n=i.TupleExpression;return r(n.elements,t,"elements",e,1),t},$.tupleTypeAnnotation=function(e){const t={type:"TupleTypeAnnotation",types:e},n=i.TupleTypeAnnotation;return r(n.types,t,"types",e,1),t},$.typeAlias=function(e,t=null,n){const s={type:"TypeAlias",id:e,typeParameters:t,right:n},a=i.TypeAlias;return r(a.id,s,"id",e,1),r(a.typeParameters,s,"typeParameters",t,1),r(a.right,s,"right",n,1),s},$.typeAnnotation=function(e){const t={type:"TypeAnnotation",typeAnnotation:e},n=i.TypeAnnotation;return r(n.typeAnnotation,t,"typeAnnotation",e,1),t},$.typeCastExpression=function(e,t){const n={type:"TypeCastExpression",expression:e,typeAnnotation:t},s=i.TypeCastExpression;return r(s.expression,n,"expression",e,1),r(s.typeAnnotation,n,"typeAnnotation",t,1),n},$.typeParameter=function(e=null,t=null,n=null){const s={type:"TypeParameter",bound:e,default:t,variance:n,name:null},a=i.TypeParameter;return r(a.bound,s,"bound",e,1),r(a.default,s,"default",t,1),r(a.variance,s,"variance",n,1),s},$.typeParameterDeclaration=function(e){const t={type:"TypeParameterDeclaration",params:e},n=i.TypeParameterDeclaration;return r(n.params,t,"params",e,1),t},$.typeParameterInstantiation=function(e){const t={type:"TypeParameterInstantiation",params:e},n=i.TypeParameterInstantiation;return r(n.params,t,"params",e,1),t},$.typeofTypeAnnotation=function(e){const t={type:"TypeofTypeAnnotation",argument:e},n=i.TypeofTypeAnnotation;return r(n.argument,t,"argument",e,1),t},$.unaryExpression=function(e,t,n=!0){const s={type:"UnaryExpression",operator:e,argument:t,prefix:n},a=i.UnaryExpression;return r(a.operator,s,"operator",e),r(a.argument,s,"argument",t,1),r(a.prefix,s,"prefix",n),s},$.unionTypeAnnotation=function(e){const t={type:"UnionTypeAnnotation",types:e},n=i.UnionTypeAnnotation;return r(n.types,t,"types",e,1),t},$.updateExpression=function(e,t,n=!1){const s={type:"UpdateExpression",operator:e,argument:t,prefix:n},a=i.UpdateExpression;return r(a.operator,s,"operator",e),r(a.argument,s,"argument",t,1),r(a.prefix,s,"prefix",n),s},$.v8IntrinsicIdentifier=function(e){const t={type:"V8IntrinsicIdentifier",name:e},n=i.V8IntrinsicIdentifier;return r(n.name,t,"name",e),t},$.variableDeclaration=function(e,t){const n={type:"VariableDeclaration",kind:e,declarations:t},s=i.VariableDeclaration;return r(s.kind,n,"kind",e),r(s.declarations,n,"declarations",t,1),n},$.variableDeclarator=function(e,t=null){const n={type:"VariableDeclarator",id:e,init:t},s=i.VariableDeclarator;return r(s.id,n,"id",e,1),r(s.init,n,"init",t,1),n},$.variance=function(e){const t={type:"Variance",kind:e},n=i.Variance;return r(n.kind,t,"kind",e),t},$.voidPattern=function(){return{type:"VoidPattern"}},$.voidTypeAnnotation=function(){return{type:"VoidTypeAnnotation"}},$.whileStatement=function(e,t){const n={type:"WhileStatement",test:e,body:t},s=i.WhileStatement;return r(s.test,n,"test",e,1),r(s.body,n,"body",t,1),n},$.withStatement=function(e,t){const n={type:"WithStatement",object:e,body:t},s=i.WithStatement;return r(s.object,n,"object",e,1),r(s.body,n,"body",t,1),n},$.yieldExpression=function(e=null,t=!1){const n={type:"YieldExpression",argument:e,delegate:t},s=i.YieldExpression;return r(s.argument,n,"argument",e,1),r(s.delegate,n,"delegate",t),n};var e=Ke(),t=L(),n=Se();const{validateInternal:r}=e,{NODE_FIELDS:i}=n;function s(e){const t={type:"NumericLiteral",value:e},n=i.NumericLiteral;return r(n.value,t,"value",e),t}function a(e,t=""){const n={type:"RegExpLiteral",pattern:e,flags:t},s=i.RegExpLiteral;return r(s.pattern,n,"pattern",e),r(s.flags,n,"flags",t),n}function o(e){const t={type:"RestElement",argument:e},n=i.RestElement;return r(n.argument,t,"argument",e,1),t}function l(e){const t={type:"SpreadElement",argument:e},n=i.SpreadElement;return r(n.argument,t,"argument",e,1),t}return $}var qe,$e,We,Ye,Je={};function Xe(){return $e||($e=1,function(e){Object.defineProperty(e,"__esModule",{value:!0});var t=Ve();Object.keys(t).forEach(function(n){"default"!==n&&"__esModule"!==n&&(n in e&&e[n]===t[n]||Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[n]}}))});var n=function(){if(qe)return Je;qe=1,Object.defineProperty(Je,"__esModule",{value:!0}),Je.JSXIdentifier=Je.JSXFragment=Je.JSXExpressionContainer=Je.JSXEmptyExpression=Je.JSXElement=Je.JSXClosingFragment=Je.JSXClosingElement=Je.JSXAttribute=Je.IntersectionTypeAnnotation=Je.InterpreterDirective=Je.InterfaceTypeAnnotation=Je.InterfaceExtends=Je.InterfaceDeclaration=Je.InferredPredicate=Je.IndexedAccessType=Je.ImportSpecifier=Je.ImportNamespaceSpecifier=Je.ImportExpression=Je.ImportDefaultSpecifier=Je.ImportDeclaration=Je.ImportAttribute=Je.Import=Je.IfStatement=Je.Identifier=Je.GenericTypeAnnotation=Je.FunctionTypeParam=Je.FunctionTypeAnnotation=Je.FunctionExpression=Je.FunctionDeclaration=Je.ForStatement=Je.ForOfStatement=Je.ForInStatement=Je.File=Je.ExpressionStatement=Je.ExportSpecifier=Je.ExportNamespaceSpecifier=Je.ExportNamedDeclaration=Je.ExportDefaultSpecifier=Je.ExportDefaultDeclaration=Je.ExportAllDeclaration=Je.ExistsTypeAnnotation=Je.EnumSymbolBody=Je.EnumStringMember=Je.EnumStringBody=Je.EnumNumberMember=Je.EnumNumberBody=Je.EnumDefaultedMember=Je.EnumDeclaration=Je.EnumBooleanMember=Je.EnumBooleanBody=Je.EmptyTypeAnnotation=Je.EmptyStatement=Je.DoWhileStatement=Je.DoExpression=Je.DirectiveLiteral=Je.Directive=Je.Decorator=Je.DeclaredPredicate=Je.DeclareVariable=Je.DeclareTypeAlias=Je.DeclareOpaqueType=Je.DeclareModuleExports=Je.DeclareModule=Je.DeclareInterface=Je.DeclareFunction=Je.DeclareExportDeclaration=Je.DeclareExportAllDeclaration=Je.DeclareClass=Je.DecimalLiteral=Je.DebuggerStatement=Je.ContinueStatement=Je.ConditionalExpression=Je.ClassProperty=Je.ClassPrivateProperty=Je.ClassPrivateMethod=Je.ClassMethod=Je.ClassImplements=Je.ClassExpression=Je.ClassDeclaration=Je.ClassBody=Je.ClassAccessorProperty=Je.CatchClause=Je.CallExpression=Je.BreakStatement=Je.BooleanTypeAnnotation=Je.BooleanLiteralTypeAnnotation=Je.BooleanLiteral=Je.BlockStatement=Je.BindExpression=Je.BinaryExpression=Je.BigIntLiteral=Je.AwaitExpression=Je.AssignmentPattern=Je.AssignmentExpression=Je.ArrowFunctionExpression=Je.ArrayTypeAnnotation=Je.ArrayPattern=Je.ArrayExpression=Je.ArgumentPlaceholder=Je.AnyTypeAnnotation=void 0,Je.TSNumberKeyword=Je.TSNullKeyword=Je.TSNonNullExpression=Je.TSNeverKeyword=Je.TSNamespaceExportDeclaration=Je.TSNamedTupleMember=Je.TSModuleDeclaration=Je.TSModuleBlock=Je.TSMethodSignature=Je.TSMappedType=Je.TSLiteralType=Je.TSIntrinsicKeyword=Je.TSIntersectionType=Je.TSInterfaceDeclaration=Je.TSInterfaceBody=Je.TSInstantiationExpression=Je.TSInferType=Je.TSIndexedAccessType=Je.TSIndexSignature=Je.TSImportType=Je.TSImportEqualsDeclaration=Je.TSFunctionType=Je.TSExternalModuleReference=Je.TSExpressionWithTypeArguments=Je.TSExportAssignment=Je.TSEnumMember=Je.TSEnumDeclaration=Je.TSEnumBody=Je.TSDeclareMethod=Je.TSDeclareFunction=Je.TSConstructorType=Je.TSConstructSignatureDeclaration=Je.TSConditionalType=Je.TSCallSignatureDeclaration=Je.TSBooleanKeyword=Je.TSBigIntKeyword=Je.TSAsExpression=Je.TSArrayType=Je.TSAnyKeyword=Je.SymbolTypeAnnotation=Je.SwitchStatement=Je.SwitchCase=Je.Super=Je.StringTypeAnnotation=Je.StringLiteralTypeAnnotation=Je.StringLiteral=Je.StaticBlock=Je.SpreadProperty=Je.SpreadElement=Je.SequenceExpression=Je.ReturnStatement=Je.RestProperty=Je.RestElement=Je.RegexLiteral=Je.RegExpLiteral=Je.RecordExpression=Je.QualifiedTypeIdentifier=Je.Program=Je.PrivateName=Je.Placeholder=Je.PipelineTopicExpression=Je.PipelinePrimaryTopicReference=Je.PipelineBareFunction=Je.ParenthesizedExpression=Je.OptionalMemberExpression=Je.OptionalIndexedAccessType=Je.OptionalCallExpression=Je.OpaqueType=Je.ObjectTypeSpreadProperty=Je.ObjectTypeProperty=Je.ObjectTypeInternalSlot=Je.ObjectTypeIndexer=Je.ObjectTypeCallProperty=Je.ObjectTypeAnnotation=Je.ObjectProperty=Je.ObjectPattern=Je.ObjectMethod=Je.ObjectExpression=Je.NumericLiteral=Je.NumberTypeAnnotation=Je.NumberLiteralTypeAnnotation=Je.NumberLiteral=Je.NullableTypeAnnotation=Je.NullLiteralTypeAnnotation=Je.NullLiteral=Je.Noop=Je.NewExpression=Je.ModuleExpression=Je.MixedTypeAnnotation=Je.MetaProperty=Je.MemberExpression=Je.LogicalExpression=Je.LabeledStatement=Je.JSXText=Je.JSXSpreadChild=Je.JSXSpreadAttribute=Je.JSXOpeningFragment=Je.JSXOpeningElement=Je.JSXNamespacedName=Je.JSXMemberExpression=void 0,Je.YieldExpression=Je.WithStatement=Je.WhileStatement=Je.VoidTypeAnnotation=Je.VoidPattern=Je.Variance=Je.VariableDeclarator=Je.VariableDeclaration=Je.V8IntrinsicIdentifier=Je.UpdateExpression=Je.UnionTypeAnnotation=Je.UnaryExpression=Je.TypeofTypeAnnotation=Je.TypeParameterInstantiation=Je.TypeParameterDeclaration=Je.TypeParameter=Je.TypeCastExpression=Je.TypeAnnotation=Je.TypeAlias=Je.TupleTypeAnnotation=Je.TupleExpression=Je.TryStatement=Je.TopicReference=Je.ThrowStatement=Je.ThisTypeAnnotation=Je.ThisExpression=Je.TemplateLiteral=Je.TemplateElement=Je.TaggedTemplateExpression=Je.TSVoidKeyword=Je.TSUnknownKeyword=Je.TSUnionType=Je.TSUndefinedKeyword=Je.TSTypeReference=Je.TSTypeQuery=Je.TSTypePredicate=Je.TSTypeParameterInstantiation=Je.TSTypeParameterDeclaration=Je.TSTypeParameter=Je.TSTypeOperator=Je.TSTypeLiteral=Je.TSTypeAssertion=Je.TSTypeAnnotation=Je.TSTypeAliasDeclaration=Je.TSTupleType=Je.TSThisType=Je.TSTemplateLiteralType=Je.TSSymbolKeyword=Je.TSStringKeyword=Je.TSSatisfiesExpression=Je.TSRestType=Je.TSQualifiedName=Je.TSPropertySignature=Je.TSParenthesizedType=Je.TSParameterProperty=Je.TSOptionalType=Je.TSObjectKeyword=void 0;var e=Ve();function t(t){return e[t]}return L(),Je.ArrayExpression=t("arrayExpression"),Je.AssignmentExpression=t("assignmentExpression"),Je.BinaryExpression=t("binaryExpression"),Je.InterpreterDirective=t("interpreterDirective"),Je.Directive=t("directive"),Je.DirectiveLiteral=t("directiveLiteral"),Je.BlockStatement=t("blockStatement"),Je.BreakStatement=t("breakStatement"),Je.CallExpression=t("callExpression"),Je.CatchClause=t("catchClause"),Je.ConditionalExpression=t("conditionalExpression"),Je.ContinueStatement=t("continueStatement"),Je.DebuggerStatement=t("debuggerStatement"),Je.DoWhileStatement=t("doWhileStatement"),Je.EmptyStatement=t("emptyStatement"),Je.ExpressionStatement=t("expressionStatement"),Je.File=t("file"),Je.ForInStatement=t("forInStatement"),Je.ForStatement=t("forStatement"),Je.FunctionDeclaration=t("functionDeclaration"),Je.FunctionExpression=t("functionExpression"),Je.Identifier=t("identifier"),Je.IfStatement=t("ifStatement"),Je.LabeledStatement=t("labeledStatement"),Je.StringLiteral=t("stringLiteral"),Je.NumericLiteral=t("numericLiteral"),Je.NullLiteral=t("nullLiteral"),Je.BooleanLiteral=t("booleanLiteral"),Je.RegExpLiteral=t("regExpLiteral"),Je.LogicalExpression=t("logicalExpression"),Je.MemberExpression=t("memberExpression"),Je.NewExpression=t("newExpression"),Je.Program=t("program"),Je.ObjectExpression=t("objectExpression"),Je.ObjectMethod=t("objectMethod"),Je.ObjectProperty=t("objectProperty"),Je.RestElement=t("restElement"),Je.ReturnStatement=t("returnStatement"),Je.SequenceExpression=t("sequenceExpression"),Je.ParenthesizedExpression=t("parenthesizedExpression"),Je.SwitchCase=t("switchCase"),Je.SwitchStatement=t("switchStatement"),Je.ThisExpression=t("thisExpression"),Je.ThrowStatement=t("throwStatement"),Je.TryStatement=t("tryStatement"),Je.UnaryExpression=t("unaryExpression"),Je.UpdateExpression=t("updateExpression"),Je.VariableDeclaration=t("variableDeclaration"),Je.VariableDeclarator=t("variableDeclarator"),Je.WhileStatement=t("whileStatement"),Je.WithStatement=t("withStatement"),Je.AssignmentPattern=t("assignmentPattern"),Je.ArrayPattern=t("arrayPattern"),Je.ArrowFunctionExpression=t("arrowFunctionExpression"),Je.ClassBody=t("classBody"),Je.ClassExpression=t("classExpression"),Je.ClassDeclaration=t("classDeclaration"),Je.ExportAllDeclaration=t("exportAllDeclaration"),Je.ExportDefaultDeclaration=t("exportDefaultDeclaration"),Je.ExportNamedDeclaration=t("exportNamedDeclaration"),Je.ExportSpecifier=t("exportSpecifier"),Je.ForOfStatement=t("forOfStatement"),Je.ImportDeclaration=t("importDeclaration"),Je.ImportDefaultSpecifier=t("importDefaultSpecifier"),Je.ImportNamespaceSpecifier=t("importNamespaceSpecifier"),Je.ImportSpecifier=t("importSpecifier"),Je.ImportExpression=t("importExpression"),Je.MetaProperty=t("metaProperty"),Je.ClassMethod=t("classMethod"),Je.ObjectPattern=t("objectPattern"),Je.SpreadElement=t("spreadElement"),Je.Super=t("super"),Je.TaggedTemplateExpression=t("taggedTemplateExpression"),Je.TemplateElement=t("templateElement"),Je.TemplateLiteral=t("templateLiteral"),Je.YieldExpression=t("yieldExpression"),Je.AwaitExpression=t("awaitExpression"),Je.Import=t("import"),Je.BigIntLiteral=t("bigIntLiteral"),Je.ExportNamespaceSpecifier=t("exportNamespaceSpecifier"),Je.OptionalMemberExpression=t("optionalMemberExpression"),Je.OptionalCallExpression=t("optionalCallExpression"),Je.ClassProperty=t("classProperty"),Je.ClassAccessorProperty=t("classAccessorProperty"),Je.ClassPrivateProperty=t("classPrivateProperty"),Je.ClassPrivateMethod=t("classPrivateMethod"),Je.PrivateName=t("privateName"),Je.StaticBlock=t("staticBlock"),Je.ImportAttribute=t("importAttribute"),Je.AnyTypeAnnotation=t("anyTypeAnnotation"),Je.ArrayTypeAnnotation=t("arrayTypeAnnotation"),Je.BooleanTypeAnnotation=t("booleanTypeAnnotation"),Je.BooleanLiteralTypeAnnotation=t("booleanLiteralTypeAnnotation"),Je.NullLiteralTypeAnnotation=t("nullLiteralTypeAnnotation"),Je.ClassImplements=t("classImplements"),Je.DeclareClass=t("declareClass"),Je.DeclareFunction=t("declareFunction"),Je.DeclareInterface=t("declareInterface"),Je.DeclareModule=t("declareModule"),Je.DeclareModuleExports=t("declareModuleExports"),Je.DeclareTypeAlias=t("declareTypeAlias"),Je.DeclareOpaqueType=t("declareOpaqueType"),Je.DeclareVariable=t("declareVariable"),Je.DeclareExportDeclaration=t("declareExportDeclaration"),Je.DeclareExportAllDeclaration=t("declareExportAllDeclaration"),Je.DeclaredPredicate=t("declaredPredicate"),Je.ExistsTypeAnnotation=t("existsTypeAnnotation"),Je.FunctionTypeAnnotation=t("functionTypeAnnotation"),Je.FunctionTypeParam=t("functionTypeParam"),Je.GenericTypeAnnotation=t("genericTypeAnnotation"),Je.InferredPredicate=t("inferredPredicate"),Je.InterfaceExtends=t("interfaceExtends"),Je.InterfaceDeclaration=t("interfaceDeclaration"),Je.InterfaceTypeAnnotation=t("interfaceTypeAnnotation"),Je.IntersectionTypeAnnotation=t("intersectionTypeAnnotation"),Je.MixedTypeAnnotation=t("mixedTypeAnnotation"),Je.EmptyTypeAnnotation=t("emptyTypeAnnotation"),Je.NullableTypeAnnotation=t("nullableTypeAnnotation"),Je.NumberLiteralTypeAnnotation=t("numberLiteralTypeAnnotation"),Je.NumberTypeAnnotation=t("numberTypeAnnotation"),Je.ObjectTypeAnnotation=t("objectTypeAnnotation"),Je.ObjectTypeInternalSlot=t("objectTypeInternalSlot"),Je.ObjectTypeCallProperty=t("objectTypeCallProperty"),Je.ObjectTypeIndexer=t("objectTypeIndexer"),Je.ObjectTypeProperty=t("objectTypeProperty"),Je.ObjectTypeSpreadProperty=t("objectTypeSpreadProperty"),Je.OpaqueType=t("opaqueType"),Je.QualifiedTypeIdentifier=t("qualifiedTypeIdentifier"),Je.StringLiteralTypeAnnotation=t("stringLiteralTypeAnnotation"),Je.StringTypeAnnotation=t("stringTypeAnnotation"),Je.SymbolTypeAnnotation=t("symbolTypeAnnotation"),Je.ThisTypeAnnotation=t("thisTypeAnnotation"),Je.TupleTypeAnnotation=t("tupleTypeAnnotation"),Je.TypeofTypeAnnotation=t("typeofTypeAnnotation"),Je.TypeAlias=t("typeAlias"),Je.TypeAnnotation=t("typeAnnotation"),Je.TypeCastExpression=t("typeCastExpression"),Je.TypeParameter=t("typeParameter"),Je.TypeParameterDeclaration=t("typeParameterDeclaration"),Je.TypeParameterInstantiation=t("typeParameterInstantiation"),Je.UnionTypeAnnotation=t("unionTypeAnnotation"),Je.Variance=t("variance"),Je.VoidTypeAnnotation=t("voidTypeAnnotation"),Je.EnumDeclaration=t("enumDeclaration"),Je.EnumBooleanBody=t("enumBooleanBody"),Je.EnumNumberBody=t("enumNumberBody"),Je.EnumStringBody=t("enumStringBody"),Je.EnumSymbolBody=t("enumSymbolBody"),Je.EnumBooleanMember=t("enumBooleanMember"),Je.EnumNumberMember=t("enumNumberMember"),Je.EnumStringMember=t("enumStringMember"),Je.EnumDefaultedMember=t("enumDefaultedMember"),Je.IndexedAccessType=t("indexedAccessType"),Je.OptionalIndexedAccessType=t("optionalIndexedAccessType"),Je.JSXAttribute=t("jsxAttribute"),Je.JSXClosingElement=t("jsxClosingElement"),Je.JSXElement=t("jsxElement"),Je.JSXEmptyExpression=t("jsxEmptyExpression"),Je.JSXExpressionContainer=t("jsxExpressionContainer"),Je.JSXSpreadChild=t("jsxSpreadChild"),Je.JSXIdentifier=t("jsxIdentifier"),Je.JSXMemberExpression=t("jsxMemberExpression"),Je.JSXNamespacedName=t("jsxNamespacedName"),Je.JSXOpeningElement=t("jsxOpeningElement"),Je.JSXSpreadAttribute=t("jsxSpreadAttribute"),Je.JSXText=t("jsxText"),Je.JSXFragment=t("jsxFragment"),Je.JSXOpeningFragment=t("jsxOpeningFragment"),Je.JSXClosingFragment=t("jsxClosingFragment"),Je.Noop=t("noop"),Je.Placeholder=t("placeholder"),Je.V8IntrinsicIdentifier=t("v8IntrinsicIdentifier"),Je.ArgumentPlaceholder=t("argumentPlaceholder"),Je.BindExpression=t("bindExpression"),Je.Decorator=t("decorator"),Je.DoExpression=t("doExpression"),Je.ExportDefaultSpecifier=t("exportDefaultSpecifier"),Je.RecordExpression=t("recordExpression"),Je.TupleExpression=t("tupleExpression"),Je.DecimalLiteral=t("decimalLiteral"),Je.ModuleExpression=t("moduleExpression"),Je.TopicReference=t("topicReference"),Je.PipelineTopicExpression=t("pipelineTopicExpression"),Je.PipelineBareFunction=t("pipelineBareFunction"),Je.PipelinePrimaryTopicReference=t("pipelinePrimaryTopicReference"),Je.VoidPattern=t("voidPattern"),Je.TSParameterProperty=t("tsParameterProperty"),Je.TSDeclareFunction=t("tsDeclareFunction"),Je.TSDeclareMethod=t("tsDeclareMethod"),Je.TSQualifiedName=t("tsQualifiedName"),Je.TSCallSignatureDeclaration=t("tsCallSignatureDeclaration"),Je.TSConstructSignatureDeclaration=t("tsConstructSignatureDeclaration"),Je.TSPropertySignature=t("tsPropertySignature"),Je.TSMethodSignature=t("tsMethodSignature"),Je.TSIndexSignature=t("tsIndexSignature"),Je.TSAnyKeyword=t("tsAnyKeyword"),Je.TSBooleanKeyword=t("tsBooleanKeyword"),Je.TSBigIntKeyword=t("tsBigIntKeyword"),Je.TSIntrinsicKeyword=t("tsIntrinsicKeyword"),Je.TSNeverKeyword=t("tsNeverKeyword"),Je.TSNullKeyword=t("tsNullKeyword"),Je.TSNumberKeyword=t("tsNumberKeyword"),Je.TSObjectKeyword=t("tsObjectKeyword"),Je.TSStringKeyword=t("tsStringKeyword"),Je.TSSymbolKeyword=t("tsSymbolKeyword"),Je.TSUndefinedKeyword=t("tsUndefinedKeyword"),Je.TSUnknownKeyword=t("tsUnknownKeyword"),Je.TSVoidKeyword=t("tsVoidKeyword"),Je.TSThisType=t("tsThisType"),Je.TSFunctionType=t("tsFunctionType"),Je.TSConstructorType=t("tsConstructorType"),Je.TSTypeReference=t("tsTypeReference"),Je.TSTypePredicate=t("tsTypePredicate"),Je.TSTypeQuery=t("tsTypeQuery"),Je.TSTypeLiteral=t("tsTypeLiteral"),Je.TSArrayType=t("tsArrayType"),Je.TSTupleType=t("tsTupleType"),Je.TSOptionalType=t("tsOptionalType"),Je.TSRestType=t("tsRestType"),Je.TSNamedTupleMember=t("tsNamedTupleMember"),Je.TSUnionType=t("tsUnionType"),Je.TSIntersectionType=t("tsIntersectionType"),Je.TSConditionalType=t("tsConditionalType"),Je.TSInferType=t("tsInferType"),Je.TSParenthesizedType=t("tsParenthesizedType"),Je.TSTypeOperator=t("tsTypeOperator"),Je.TSIndexedAccessType=t("tsIndexedAccessType"),Je.TSMappedType=t("tsMappedType"),Je.TSTemplateLiteralType=t("tsTemplateLiteralType"),Je.TSLiteralType=t("tsLiteralType"),Je.TSExpressionWithTypeArguments=t("tsExpressionWithTypeArguments"),Je.TSInterfaceDeclaration=t("tsInterfaceDeclaration"),Je.TSInterfaceBody=t("tsInterfaceBody"),Je.TSTypeAliasDeclaration=t("tsTypeAliasDeclaration"),Je.TSInstantiationExpression=t("tsInstantiationExpression"),Je.TSAsExpression=t("tsAsExpression"),Je.TSSatisfiesExpression=t("tsSatisfiesExpression"),Je.TSTypeAssertion=t("tsTypeAssertion"),Je.TSEnumBody=t("tsEnumBody"),Je.TSEnumDeclaration=t("tsEnumDeclaration"),Je.TSEnumMember=t("tsEnumMember"),Je.TSModuleDeclaration=t("tsModuleDeclaration"),Je.TSModuleBlock=t("tsModuleBlock"),Je.TSImportType=t("tsImportType"),Je.TSImportEqualsDeclaration=t("tsImportEqualsDeclaration"),Je.TSExternalModuleReference=t("tsExternalModuleReference"),Je.TSNonNullExpression=t("tsNonNullExpression"),Je.TSExportAssignment=t("tsExportAssignment"),Je.TSNamespaceExportDeclaration=t("tsNamespaceExportDeclaration"),Je.TSTypeAnnotation=t("tsTypeAnnotation"),Je.TSTypeParameterInstantiation=t("tsTypeParameterInstantiation"),Je.TSTypeParameterDeclaration=t("tsTypeParameterDeclaration"),Je.TSTypeParameter=t("tsTypeParameter"),Je.NumberLiteral=e.numberLiteral,Je.RegexLiteral=e.regexLiteral,Je.RestProperty=e.restProperty,Je.SpreadProperty=e.spreadProperty,Je}();Object.keys(n).forEach(function(t){"default"!==t&&"__esModule"!==t&&(t in e&&e[t]===n[t]||Object.defineProperty(e,t,{enumerable:!0,get:function(){return n[t]}}))})}(q)),q}function He(){if(Ye)return K;Ye=1,Object.defineProperty(K,"__esModule",{value:!0}),K.default=function(n){const r=[];for(let i=0;i<n.children.length;i++){let s=n.children[i];(0,e.isJSXText)(s)?(0,t.default)(s,r):((0,e.isJSXExpressionContainer)(s)&&(s=s.expression),(0,e.isJSXEmptyExpression)(s)||r.push(s))}return r};var e=M(),t=function(){if(We)return V;We=1,Object.defineProperty(V,"__esModule",{value:!0}),V.default=function(n,r){const i=n.value.split(/\r\n|\n|\r/);let s=0;for(let e=0;e<i.length;e++)/[^ \t]/.exec(i[e])&&(s=e);let a="";for(let e=0;e<i.length;e++){const t=i[e],n=0===e,r=e===i.length-1,o=e===s;let l=t.replace(/\t/g," ");n||(l=l.replace(/^ +/,"")),r||(l=l.replace(/ +$/,"")),l&&(o||(l+=" "),a+=l)}a&&r.push((0,t.inherits)((0,e.stringLiteral)(a),n))};var e=Xe(),t=Pr();return V}();return K}var ze,Ge,Qe={},Ze={};function et(){if(ze)return Ze;ze=1,Object.defineProperty(Ze,"__esModule",{value:!0}),Ze.default=function(t){return!(!t||!e.VISITOR_KEYS[t.type])};var e=Ue();return Ze}var tt,nt={};var rt,it={};var st,at,ot={},lt={};function ct(){if(st)return lt;st=1,Object.defineProperty(lt,"__esModule",{value:!0}),lt.default=function n(r){const i=Array.from(r),s=new Map,a=new Map,o=new Set,l=[];for(let r=0;r<i.length;r++){const c=i[r];if(c&&!l.includes(c)){if((0,e.isAnyTypeAnnotation)(c))return[c];if((0,e.isFlowBaseAnnotation)(c))a.set(c.type,c);else if((0,e.isUnionTypeAnnotation)(c))o.has(c.types)||(i.push(...c.types),o.add(c.types));else{if((0,e.isGenericTypeAnnotation)(c)){const e=t(c.id);if(s.has(e)){let t=s.get(e);t.typeParameters?c.typeParameters&&(t.typeParameters.params.push(...c.typeParameters.params),t.typeParameters.params=n(t.typeParameters.params)):t=c.typeParameters}else s.set(e,c);continue}l.push(c)}}}for(const[,e]of a)l.push(e);for(const[,e]of s)l.push(e);return l};var e=M();function t(n){return(0,e.isIdentifier)(n)?n.name:`${n.id.name}.${t(n.qualification)}`}return lt}var pt,ut,ht={},dt={};function ft(){if(ut)return ht;ut=1,Object.defineProperty(ht,"__esModule",{value:!0}),ht.default=function(r){const i=r.map(e=>(0,n.isTSTypeAnnotation)(e)?e.typeAnnotation:e),s=(0,t.default)(i);return 1===s.length?s[0]:(0,e.tsUnionType)(s)};var e=Xe(),t=function(){if(pt)return dt;pt=1,Object.defineProperty(dt,"__esModule",{value:!0}),dt.default=function n(r){const i=Array.from(r),s=new Map,a=new Map,o=new Set,l=[];for(let r=0;r<i.length;r++){const c=i[r];if(!c)continue;if(l.includes(c))continue;if((0,e.isTSAnyKeyword)(c))return[c];if((0,e.isTSBaseType)(c)){a.set(c.type,c);continue}if((0,e.isTSUnionType)(c)){o.has(c.types)||(i.push(...c.types),o.add(c.types));continue}const p="typeParameters";if((0,e.isTSTypeReference)(c)&&c[p]){const e=c[p],r=t(c.typeName);if(s.has(r)){let t=s.get(r);const i=t[p];i?(i.params.push(...e.params),i.params=n(i.params)):t=e}else s.set(r,c);continue}l.push(c)}for(const[,e]of a)l.push(e);for(const[,e]of s)l.push(e);return l};var e=M();function t(n){return(0,e.isIdentifier)(n)?n.name:(0,e.isThisExpression)(n)?"this":`${n.right.name}.${t(n.left)}`}return dt}(),n=M();return ht}var mt,yt={};function Tt(){if(mt)return yt;mt=1,Object.defineProperty(yt,"__esModule",{value:!0}),yt.buildUndefinedNode=function(){return(0,e.unaryExpression)("void",(0,e.numericLiteral)(0),!0)};var e=Xe();return yt}var gt,xt={};function St(){if(gt)return xt;gt=1,Object.defineProperty(xt,"__esModule",{value:!0}),xt.default=function(e,t=!0,n=!1){return s(e,t,n,new Map)};var e=Ue(),t=M();const{hasOwn:n}={hasOwn:Function.call.bind(Object.prototype.hasOwnProperty)};function r(e,t,n,r){return e&&"string"==typeof e.type?s(e,t,n,r):e}function i(e,t,n,i){return Array.isArray(e)?e.map(e=>r(e,t,n,i)):r(e,t,n,i)}function s(r,s=!0,o=!1,l){if(!r)return r;const{type:c}=r,p={type:r.type};if((0,t.isIdentifier)(r))p.name=r.name,n(r,"optional")&&"boolean"==typeof r.optional&&(p.optional=r.optional),n(r,"typeAnnotation")&&(p.typeAnnotation=s?i(r.typeAnnotation,!0,o,l):r.typeAnnotation),n(r,"decorators")&&(p.decorators=s?i(r.decorators,!0,o,l):r.decorators);else{if(!n(e.NODE_FIELDS,c))throw new Error(`Unknown node type: "${c}"`);for(const u of Object.keys(e.NODE_FIELDS[c]))n(r,u)&&(p[u]=s?(0,t.isFile)(r)&&"comments"===u?a(r.comments,s,o,l):i(r[u],!0,o,l):r[u])}return n(r,"loc")&&(p.loc=o?null:r.loc),n(r,"leadingComments")&&(p.leadingComments=a(r.leadingComments,s,o,l)),n(r,"innerComments")&&(p.innerComments=a(r.innerComments,s,o,l)),n(r,"trailingComments")&&(p.trailingComments=a(r.trailingComments,s,o,l)),n(r,"extra")&&(p.extra=Object.assign({},r.extra)),p}function a(e,t,n,r){return e&&t?e.map(e=>{const t=r.get(e);if(t)return t;const{type:i,value:s,loc:a}=e,o={type:i,value:s,loc:a};return n&&(o.loc=null),r.set(e,o),o}):e}return xt}var bt,Pt={};var Et,vt={};var At,Ct={};var wt,It={};var kt,Nt,Ot={},_t={};function Dt(){if(kt)return _t;return kt=1,Object.defineProperty(_t,"__esModule",{value:!0}),_t.default=function(e,t,n){if(!n||!e)return e;const r=`${t}Comments`;e[r]?"leading"===t?e[r]=n.concat(e[r]):e[r].push(...n):e[r]=n;return e},_t}var Lt,Mt,Ft={},Bt={};function jt(){if(Lt)return Bt;return Lt=1,Object.defineProperty(Bt,"__esModule",{value:!0}),Bt.default=function(e,t,n){t&&n&&(t[e]=Array.from(new Set([].concat(t[e],n[e]).filter(Boolean))))},Bt}function Rt(){if(Mt)return Ft;Mt=1,Object.defineProperty(Ft,"__esModule",{value:!0}),Ft.default=function(t,n){(0,e.default)("innerComments",t,n)};var e=jt();return Ft}var Ut,Kt={};function Vt(){if(Ut)return Kt;Ut=1,Object.defineProperty(Kt,"__esModule",{value:!0}),Kt.default=function(t,n){(0,e.default)("leadingComments",t,n)};var e=jt();return Kt}var qt,$t,Wt={},Yt={};function Jt(){if(qt)return Yt;qt=1,Object.defineProperty(Yt,"__esModule",{value:!0}),Yt.default=function(t,n){(0,e.default)("trailingComments",t,n)};var e=jt();return Yt}function Xt(){if($t)return Wt;$t=1,Object.defineProperty(Wt,"__esModule",{value:!0}),Wt.default=function(r,i){return(0,e.default)(r,i),(0,t.default)(r,i),(0,n.default)(r,i),r};var e=Jt(),t=Vt(),n=Rt();return Wt}var Ht,zt={};var Gt,Qt={};var Zt,en,tn={},nn={};function rn(){if(Zt)return nn;Zt=1,Object.defineProperty(nn,"__esModule",{value:!0}),nn.default=function(n,r){if((0,e.isBlockStatement)(n))return n;let i=[];(0,e.isEmptyStatement)(n)?i=[]:((0,e.isStatement)(n)||(n=(0,e.isFunction)(r)?(0,t.returnStatement)(n):(0,t.expressionStatement)(n)),i=[n]);return(0,t.blockStatement)(i)};var e=M(),t=Xe();return nn}var sn,an,on={},ln={};function cn(){if(sn)return ln;sn=1,Object.defineProperty(ln,"__esModule",{value:!0}),ln.default=function(n){n+="";let r="";for(const e of n)r+=(0,t.isIdentifierChar)(e.codePointAt(0))?e:"-";r=r.replace(/^[-0-9]+/,""),r=r.replace(/[-\s]+(.)?/g,function(e,t){return t?t.toUpperCase():""}),(0,e.default)(r)||(r=`_${r}`);return r||"_"};var e=ue(),t=pe();return ln}var pn,un={};var hn,dn={};var fn,mn={},yn={},Tn={};function gn(){if(fn)return Tn;fn=1,Object.defineProperty(Tn,"__esModule",{value:!0}),Tn.default=r;var e=Ue();const t=Symbol(),n=Symbol();function r(i,s,a){if(!i)return!1;const o=e.VISITOR_KEYS[i.type];if(!o)return!1;const l=s(i,a=a||{});if(void 0!==l)switch(l){case t:return!1;case n:return!0}for(const e of o){const t=i[e];if(t)if(Array.isArray(t)){for(const e of t)if(r(e,s,a))return!0}else if(r(t,s,a))return!0}return!1}return r.skip=t,r.stop=n,Tn}var xn,Sn,bn,Pn={};function En(){if(xn)return Pn;xn=1,Object.defineProperty(Pn,"__esModule",{value:!0}),Pn.default=function(e,r={}){const i=r.preserveComments?t:n;for(const t of i)null!=e[t]&&(e[t]=void 0);for(const t of Object.keys(e))"_"===t[0]&&null!=e[t]&&(e[t]=void 0);const s=Object.getOwnPropertySymbols(e);for(const t of s)e[t]=null};var e=ye();const t=["tokens","start","end","loc","raw","rawValue"],n=[...e.COMMENT_KEYS,"comments",...t];return Pn}function vn(){if(Sn)return yn;Sn=1,Object.defineProperty(yn,"__esModule",{value:!0}),yn.default=function(n,r){return(0,e.default)(n,t.default,r),n};var e=gn(),t=En();return yn}var An,Cn={};var wn,In={};function kn(){if(wn)return In;wn=1,Object.defineProperty(In,"__esModule",{value:!0}),In.default=void 0;var e=ue(),t=Xe();In.default=function r(i){if(void 0===i)return(0,t.identifier)("undefined");if(!0===i||!1===i)return(0,t.booleanLiteral)(i);if(null===i)return(0,t.nullLiteral)();if("string"==typeof i)return(0,t.stringLiteral)(i);if("number"==typeof i){let e;if(Number.isFinite(i))e=(0,t.numericLiteral)(Math.abs(i));else{let n;n=Number.isNaN(i)?(0,t.numericLiteral)(0):(0,t.numericLiteral)(1),e=(0,t.binaryExpression)("/",n,(0,t.numericLiteral)(0))}return(i<0||Object.is(i,-0))&&(e=(0,t.unaryExpression)("-",e)),e}if("bigint"==typeof i)return i<0?(0,t.unaryExpression)("-",(0,t.bigIntLiteral)(-i)):(0,t.bigIntLiteral)(i);if(function(e){return"[object RegExp]"===n(e)}(i)){const e=i.source,n=/\/([a-z]*)$/.exec(i.toString())[1];return(0,t.regExpLiteral)(e,n)}if(Array.isArray(i))return(0,t.arrayExpression)(i.map(r));if(function(e){if("object"!=typeof e||null===e||"[object Object]"!==Object.prototype.toString.call(e))return!1;const t=Object.getPrototypeOf(e);return null===t||null===Object.getPrototypeOf(t)}(i)){const n=[];for(const s of Object.keys(i)){let a,o=!1;(0,e.default)(s)?"__proto__"===s?(o=!0,a=(0,t.stringLiteral)(s)):a=(0,t.identifier)(s):a=(0,t.stringLiteral)(s),n.push((0,t.objectProperty)(a,r(i[s]),o))}return(0,t.objectExpression)(n)}throw new Error("don't know how to turn this value into a node")};const n=Function.call.bind(Object.prototype.toString);return In}var Nn,On={};var _n,Dn={};var Ln,Mn={};var Fn,Bn={};var jn,Rn={};function Un(){if(jn)return Rn;jn=1,Object.defineProperty(Rn,"__esModule",{value:!0}),Rn.default=t;var e=M();function t(n,r,i,s){const a=[].concat(n),o=Object.create(null);for(;a.length;){const n=a.shift();if(!n)continue;if(s&&((0,e.isAssignmentExpression)(n)||(0,e.isUnaryExpression)(n)||(0,e.isUpdateExpression)(n)))continue;if((0,e.isIdentifier)(n)){if(r){(o[n.name]=o[n.name]||[]).push(n)}else o[n.name]=n;continue}if((0,e.isExportDeclaration)(n)&&!(0,e.isExportAllDeclaration)(n)){(0,e.isDeclaration)(n.declaration)&&a.push(n.declaration);continue}if(i){if((0,e.isFunctionDeclaration)(n)){a.push(n.id);continue}if((0,e.isFunctionExpression)(n))continue}const l=t.keys[n.type];if(l)for(let e=0;e<l.length;e++){const t=n[l[e]];t&&(Array.isArray(t)?a.push(...t):a.push(t))}}return o}return t.keys={DeclareClass:["id"],DeclareFunction:["id"],DeclareModule:["id"],DeclareVariable:["id"],DeclareInterface:["id"],DeclareTypeAlias:["id"],DeclareOpaqueType:["id"],InterfaceDeclaration:["id"],TypeAlias:["id"],OpaqueType:["id"],CatchClause:["param"],LabeledStatement:["label"],UnaryExpression:["argument"],AssignmentExpression:["left"],ImportSpecifier:["local"],ImportNamespaceSpecifier:["local"],ImportDefaultSpecifier:["local"],ImportDeclaration:["specifiers"],TSImportEqualsDeclaration:["id"],ExportSpecifier:["exported"],ExportNamespaceSpecifier:["exported"],ExportDefaultSpecifier:["exported"],FunctionDeclaration:["id","params"],FunctionExpression:["id","params"],ArrowFunctionExpression:["params"],ObjectMethod:["params"],ClassMethod:["params"],ClassPrivateMethod:["params"],ForInStatement:["left"],ForOfStatement:["left"],ClassDeclaration:["id"],ClassExpression:["id"],RestElement:["argument"],UpdateExpression:["argument"],ObjectProperty:["value"],AssignmentPattern:["left"],ArrayPattern:["elements"],ObjectPattern:["properties"],VariableDeclaration:["declarations"],VariableDeclarator:["id"]},Rn}var Kn,Vn={};var qn,$n={};function Wn(){if(qn)return $n;qn=1,Object.defineProperty($n,"__esModule",{value:!0}),$n.default=function(n,r){if("id"in n&&n.id)return{name:n.id.name,originalNode:n.id};let i,s="";(0,e.isObjectProperty)(r,{value:n})?i=t(r):(0,e.isObjectMethod)(n)||(0,e.isClassMethod)(n)?(i=t(n),"get"===n.kind?s="get ":"set"===n.kind&&(s="set ")):(0,e.isVariableDeclarator)(r,{init:n})?i=r.id:(0,e.isAssignmentExpression)(r,{operator:"=",right:n})&&(i=r.left);if(!i)return null;const a=(0,e.isLiteral)(i)?function(t){if((0,e.isNullLiteral)(t))return"null";if((0,e.isRegExpLiteral)(t))return`/${t.pattern}/${t.flags}`;if((0,e.isTemplateLiteral)(t))return t.quasis.map(e=>e.value.raw).join("");if(void 0!==t.value)return String(t.value);return null}(i):(0,e.isIdentifier)(i)?i.name:(0,e.isPrivateName)(i)?i.id.name:null;return null==a?null:{name:s+a,originalNode:i}};var e=M();function t(t){if(!t.computed||(0,e.isLiteral)(t.key))return t.key}return $n}var Yn,Jn={};function Xn(){if(Yn)return Jn;Yn=1,Object.defineProperty(Jn,"__esModule",{value:!0}),Jn.default=function(e,n,r){"function"==typeof n&&(n={enter:n});const{enter:i,exit:s}=n;t(e,i,s,r,[])};var e=Ue();function t(n,r,i,s,a){const o=e.VISITOR_KEYS[n.type];if(o){r&&r(n,a,s);for(const e of o){const o=n[e];if(Array.isArray(o))for(let l=0;l<o.length;l++){const c=o[l];c&&(a.push({node:n,key:e,index:l}),t(c,r,i,s,a),a.pop())}else o&&(a.push({node:n,key:e}),t(o,r,i,s,a),a.pop())}i&&i(n,a,s)}}return Jn}var Hn,zn={};var Gn,Qn,Zn={},er={};function tr(){if(Gn)return er;Gn=1,Object.defineProperty(er,"__esModule",{value:!0}),er.default=function(n){return(0,e.isVariableDeclaration)(n)&&("var"!==n.kind||n[t])};var e=M(),t=Symbol.for("var used to be block scoped");return er}var nr,rr={};var ir,sr={};var ar,or={};var lr,cr={};var pr,ur={};var hr,dr={};var fr,mr={};var yr,Tr,gr,xr={},Sr={};function br(){if(Tr)return xr;Tr=1,Object.defineProperty(xr,"__esModule",{value:!0}),xr.default=function(t,n){if(null==t||!t.length)return;const r=[],i=(0,e.default)(t,r);if(!i)return;for(const e of r)n.push(e);return i};var e=function(){if(yr)return Sr;yr=1,Object.defineProperty(Sr,"__esModule",{value:!0}),Sr.default=function s(a,o){const l=[];let c=!0;for(const p of a)if((0,t.isEmptyStatement)(p)||(c=!1),(0,t.isExpression)(p))l.push(p);else if((0,t.isExpressionStatement)(p))l.push(p.expression);else if((0,t.isVariableDeclaration)(p)){if("var"!==p.kind)return;for(const t of p.declarations){const r=(0,e.default)(t);for(const e of Object.keys(r))o.push({kind:p.kind,id:(0,i.default)(r[e])});t.init&&l.push((0,n.assignmentExpression)("=",t.id,t.init))}c=!0}else if((0,t.isIfStatement)(p)){const e=p.consequent?s([p.consequent],o):(0,r.buildUndefinedNode)(),t=p.alternate?s([p.alternate],o):(0,r.buildUndefinedNode)();if(!e||!t)return;l.push((0,n.conditionalExpression)(p.test,e,t))}else if((0,t.isBlockStatement)(p)){const e=s(p.body,o);if(!e)return;l.push(e)}else{if(!(0,t.isEmptyStatement)(p))return;0===a.indexOf(p)&&(c=!0)}return c&&l.push((0,r.buildUndefinedNode)()),1===l.length?l[0]:(0,n.sequenceExpression)(l)};var e=Un(),t=M(),n=Xe(),r=Tt(),i=St();return Sr}();return xr}function Pr(){return gr||(gr=1,function(e){Object.defineProperty(e,"__esModule",{value:!0});var t={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(e,"__internal__deprecationWarning",{enumerable:!0,get:function(){return Ie.default}}),Object.defineProperty(e,"addComment",{enumerable:!0,get:function(){return T.default}}),Object.defineProperty(e,"addComments",{enumerable:!0,get:function(){return g.default}}),Object.defineProperty(e,"appendToMemberExpression",{enumerable:!0,get:function(){return W.default}}),Object.defineProperty(e,"assertNode",{enumerable:!0,get:function(){return s.default}}),Object.defineProperty(e,"buildMatchMemberExpression",{enumerable:!0,get:function(){return Ce.default}}),Object.defineProperty(e,"clone",{enumerable:!0,get:function(){return d.default}}),Object.defineProperty(e,"cloneDeep",{enumerable:!0,get:function(){return f.default}}),Object.defineProperty(e,"cloneDeepWithoutLoc",{enumerable:!0,get:function(){return m.default}}),Object.defineProperty(e,"cloneNode",{enumerable:!0,get:function(){return h.default}}),Object.defineProperty(e,"cloneWithoutLoc",{enumerable:!0,get:function(){return y.default}}),Object.defineProperty(e,"createFlowUnionType",{enumerable:!0,get:function(){return l.default}}),Object.defineProperty(e,"createTSUnionType",{enumerable:!0,get:function(){return c.default}}),Object.defineProperty(e,"createTypeAnnotationBasedOnTypeof",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(e,"createUnionTypeAnnotation",{enumerable:!0,get:function(){return l.default}}),Object.defineProperty(e,"ensureBlock",{enumerable:!0,get:function(){return I.default}}),Object.defineProperty(e,"getAssignmentIdentifiers",{enumerable:!0,get:function(){return Q.default}}),Object.defineProperty(e,"getBindingIdentifiers",{enumerable:!0,get:function(){return Z.default}}),Object.defineProperty(e,"getFunctionName",{enumerable:!0,get:function(){return re.default}}),Object.defineProperty(e,"getOuterBindingIdentifiers",{enumerable:!0,get:function(){return ne.default}}),Object.defineProperty(e,"inheritInnerComments",{enumerable:!0,get:function(){return x.default}}),Object.defineProperty(e,"inheritLeadingComments",{enumerable:!0,get:function(){return S.default}}),Object.defineProperty(e,"inheritTrailingComments",{enumerable:!0,get:function(){return E.default}}),Object.defineProperty(e,"inherits",{enumerable:!0,get:function(){return Y.default}}),Object.defineProperty(e,"inheritsComments",{enumerable:!0,get:function(){return b.default}}),Object.defineProperty(e,"is",{enumerable:!0,get:function(){return oe.default}}),Object.defineProperty(e,"isBinding",{enumerable:!0,get:function(){return le.default}}),Object.defineProperty(e,"isBlockScoped",{enumerable:!0,get:function(){return ce.default}}),Object.defineProperty(e,"isImmutable",{enumerable:!0,get:function(){return pe.default}}),Object.defineProperty(e,"isLet",{enumerable:!0,get:function(){return he.default}}),Object.defineProperty(e,"isNode",{enumerable:!0,get:function(){return de.default}}),Object.defineProperty(e,"isNodesEquivalent",{enumerable:!0,get:function(){return fe.default}}),Object.defineProperty(e,"isPlaceholderType",{enumerable:!0,get:function(){return me.default}}),Object.defineProperty(e,"isReferenced",{enumerable:!0,get:function(){return Te.default}}),Object.defineProperty(e,"isScope",{enumerable:!0,get:function(){return ge.default}}),Object.defineProperty(e,"isSpecifierDefault",{enumerable:!0,get:function(){return xe.default}}),Object.defineProperty(e,"isType",{enumerable:!0,get:function(){return Se.default}}),Object.defineProperty(e,"isValidES3Identifier",{enumerable:!0,get:function(){return be.default}}),Object.defineProperty(e,"isValidIdentifier",{enumerable:!0,get:function(){return Pe.default}}),Object.defineProperty(e,"isVar",{enumerable:!0,get:function(){return Ee.default}}),Object.defineProperty(e,"matchesPattern",{enumerable:!0,get:function(){return ve.default}}),Object.defineProperty(e,"prependToMemberExpression",{enumerable:!0,get:function(){return J.default}}),e.react=void 0,Object.defineProperty(e,"removeComments",{enumerable:!0,get:function(){return v.default}}),Object.defineProperty(e,"removeProperties",{enumerable:!0,get:function(){return X.default}}),Object.defineProperty(e,"removePropertiesDeep",{enumerable:!0,get:function(){return H.default}}),Object.defineProperty(e,"removeTypeDuplicates",{enumerable:!0,get:function(){return G.default}}),Object.defineProperty(e,"shallowEqual",{enumerable:!0,get:function(){return ae.default}}),Object.defineProperty(e,"toBindingIdentifierName",{enumerable:!0,get:function(){return k.default}}),Object.defineProperty(e,"toBlock",{enumerable:!0,get:function(){return N.default}}),Object.defineProperty(e,"toComputedKey",{enumerable:!0,get:function(){return O.default}}),Object.defineProperty(e,"toExpression",{enumerable:!0,get:function(){return D.default}}),Object.defineProperty(e,"toIdentifier",{enumerable:!0,get:function(){return U.default}}),Object.defineProperty(e,"toKeyAlias",{enumerable:!0,get:function(){return K.default}}),Object.defineProperty(e,"toStatement",{enumerable:!0,get:function(){return V.default}}),Object.defineProperty(e,"traverse",{enumerable:!0,get:function(){return ie.default}}),Object.defineProperty(e,"traverseFast",{enumerable:!0,get:function(){return se.default}}),Object.defineProperty(e,"validate",{enumerable:!0,get:function(){return Ae.default}}),Object.defineProperty(e,"valueToNode",{enumerable:!0,get:function(){return q.default}});var n=function(){if(_)return P;_=1,Object.defineProperty(P,"__esModule",{value:!0}),P.default=void 0;const e=(0,B().default)("React.Component");return P.default=e,P}(),r=(j||(j=1,Object.defineProperty(R,"__esModule",{value:!0}),R.default=function(e){return!!e&&/^[a-z]/.test(e)}),R),i=He(),s=function(){if(Ge)return Qe;Ge=1,Object.defineProperty(Qe,"__esModule",{value:!0}),Qe.default=function(t){if(!(0,e.default)(t)){var n;const e=null!=(n=null==t?void 0:t.type)?n:JSON.stringify(t);throw new TypeError(`Not a valid node of type "${e}"`)}};var e=et();return Qe}(),a=function(){if(tt)return nt;tt=1,Object.defineProperty(nt,"__esModule",{value:!0}),nt.assertAccessor=function(e,t){n("Accessor",e,t)},nt.assertAnyTypeAnnotation=function(e,t){n("AnyTypeAnnotation",e,t)},nt.assertArgumentPlaceholder=function(e,t){n("ArgumentPlaceholder",e,t)},nt.assertArrayExpression=function(e,t){n("ArrayExpression",e,t)},nt.assertArrayPattern=function(e,t){n("ArrayPattern",e,t)},nt.assertArrayTypeAnnotation=function(e,t){n("ArrayTypeAnnotation",e,t)},nt.assertArrowFunctionExpression=function(e,t){n("ArrowFunctionExpression",e,t)},nt.assertAssignmentExpression=function(e,t){n("AssignmentExpression",e,t)},nt.assertAssignmentPattern=function(e,t){n("AssignmentPattern",e,t)},nt.assertAwaitExpression=function(e,t){n("AwaitExpression",e,t)},nt.assertBigIntLiteral=function(e,t){n("BigIntLiteral",e,t)},nt.assertBinary=function(e,t){n("Binary",e,t)},nt.assertBinaryExpression=function(e,t){n("BinaryExpression",e,t)},nt.assertBindExpression=function(e,t){n("BindExpression",e,t)},nt.assertBlock=function(e,t){n("Block",e,t)},nt.assertBlockParent=function(e,t){n("BlockParent",e,t)},nt.assertBlockStatement=function(e,t){n("BlockStatement",e,t)},nt.assertBooleanLiteral=function(e,t){n("BooleanLiteral",e,t)},nt.assertBooleanLiteralTypeAnnotation=function(e,t){n("BooleanLiteralTypeAnnotation",e,t)},nt.assertBooleanTypeAnnotation=function(e,t){n("BooleanTypeAnnotation",e,t)},nt.assertBreakStatement=function(e,t){n("BreakStatement",e,t)},nt.assertCallExpression=function(e,t){n("CallExpression",e,t)},nt.assertCatchClause=function(e,t){n("CatchClause",e,t)},nt.assertClass=function(e,t){n("Class",e,t)},nt.assertClassAccessorProperty=function(e,t){n("ClassAccessorProperty",e,t)},nt.assertClassBody=function(e,t){n("ClassBody",e,t)},nt.assertClassDeclaration=function(e,t){n("ClassDeclaration",e,t)},nt.assertClassExpression=function(e,t){n("ClassExpression",e,t)},nt.assertClassImplements=function(e,t){n("ClassImplements",e,t)},nt.assertClassMethod=function(e,t){n("ClassMethod",e,t)},nt.assertClassPrivateMethod=function(e,t){n("ClassPrivateMethod",e,t)},nt.assertClassPrivateProperty=function(e,t){n("ClassPrivateProperty",e,t)},nt.assertClassProperty=function(e,t){n("ClassProperty",e,t)},nt.assertCompletionStatement=function(e,t){n("CompletionStatement",e,t)},nt.assertConditional=function(e,t){n("Conditional",e,t)},nt.assertConditionalExpression=function(e,t){n("ConditionalExpression",e,t)},nt.assertContinueStatement=function(e,t){n("ContinueStatement",e,t)},nt.assertDebuggerStatement=function(e,t){n("DebuggerStatement",e,t)},nt.assertDecimalLiteral=function(e,t){n("DecimalLiteral",e,t)},nt.assertDeclaration=function(e,t){n("Declaration",e,t)},nt.assertDeclareClass=function(e,t){n("DeclareClass",e,t)},nt.assertDeclareExportAllDeclaration=function(e,t){n("DeclareExportAllDeclaration",e,t)},nt.assertDeclareExportDeclaration=function(e,t){n("DeclareExportDeclaration",e,t)},nt.assertDeclareFunction=function(e,t){n("DeclareFunction",e,t)},nt.assertDeclareInterface=function(e,t){n("DeclareInterface",e,t)},nt.assertDeclareModule=function(e,t){n("DeclareModule",e,t)},nt.assertDeclareModuleExports=function(e,t){n("DeclareModuleExports",e,t)},nt.assertDeclareOpaqueType=function(e,t){n("DeclareOpaqueType",e,t)},nt.assertDeclareTypeAlias=function(e,t){n("DeclareTypeAlias",e,t)},nt.assertDeclareVariable=function(e,t){n("DeclareVariable",e,t)},nt.assertDeclaredPredicate=function(e,t){n("DeclaredPredicate",e,t)},nt.assertDecorator=function(e,t){n("Decorator",e,t)},nt.assertDirective=function(e,t){n("Directive",e,t)},nt.assertDirectiveLiteral=function(e,t){n("DirectiveLiteral",e,t)},nt.assertDoExpression=function(e,t){n("DoExpression",e,t)},nt.assertDoWhileStatement=function(e,t){n("DoWhileStatement",e,t)},nt.assertEmptyStatement=function(e,t){n("EmptyStatement",e,t)},nt.assertEmptyTypeAnnotation=function(e,t){n("EmptyTypeAnnotation",e,t)},nt.assertEnumBody=function(e,t){n("EnumBody",e,t)},nt.assertEnumBooleanBody=function(e,t){n("EnumBooleanBody",e,t)},nt.assertEnumBooleanMember=function(e,t){n("EnumBooleanMember",e,t)},nt.assertEnumDeclaration=function(e,t){n("EnumDeclaration",e,t)},nt.assertEnumDefaultedMember=function(e,t){n("EnumDefaultedMember",e,t)},nt.assertEnumMember=function(e,t){n("EnumMember",e,t)},nt.assertEnumNumberBody=function(e,t){n("EnumNumberBody",e,t)},nt.assertEnumNumberMember=function(e,t){n("EnumNumberMember",e,t)},nt.assertEnumStringBody=function(e,t){n("EnumStringBody",e,t)},nt.assertEnumStringMember=function(e,t){n("EnumStringMember",e,t)},nt.assertEnumSymbolBody=function(e,t){n("EnumSymbolBody",e,t)},nt.assertExistsTypeAnnotation=function(e,t){n("ExistsTypeAnnotation",e,t)},nt.assertExportAllDeclaration=function(e,t){n("ExportAllDeclaration",e,t)},nt.assertExportDeclaration=function(e,t){n("ExportDeclaration",e,t)},nt.assertExportDefaultDeclaration=function(e,t){n("ExportDefaultDeclaration",e,t)},nt.assertExportDefaultSpecifier=function(e,t){n("ExportDefaultSpecifier",e,t)},nt.assertExportNamedDeclaration=function(e,t){n("ExportNamedDeclaration",e,t)},nt.assertExportNamespaceSpecifier=function(e,t){n("ExportNamespaceSpecifier",e,t)},nt.assertExportSpecifier=function(e,t){n("ExportSpecifier",e,t)},nt.assertExpression=function(e,t){n("Expression",e,t)},nt.assertExpressionStatement=function(e,t){n("ExpressionStatement",e,t)},nt.assertExpressionWrapper=function(e,t){n("ExpressionWrapper",e,t)},nt.assertFile=function(e,t){n("File",e,t)},nt.assertFlow=function(e,t){n("Flow",e,t)},nt.assertFlowBaseAnnotation=function(e,t){n("FlowBaseAnnotation",e,t)},nt.assertFlowDeclaration=function(e,t){n("FlowDeclaration",e,t)},nt.assertFlowPredicate=function(e,t){n("FlowPredicate",e,t)},nt.assertFlowType=function(e,t){n("FlowType",e,t)},nt.assertFor=function(e,t){n("For",e,t)},nt.assertForInStatement=function(e,t){n("ForInStatement",e,t)},nt.assertForOfStatement=function(e,t){n("ForOfStatement",e,t)},nt.assertForStatement=function(e,t){n("ForStatement",e,t)},nt.assertForXStatement=function(e,t){n("ForXStatement",e,t)},nt.assertFunction=function(e,t){n("Function",e,t)},nt.assertFunctionDeclaration=function(e,t){n("FunctionDeclaration",e,t)},nt.assertFunctionExpression=function(e,t){n("FunctionExpression",e,t)},nt.assertFunctionParameter=function(e,t){n("FunctionParameter",e,t)},nt.assertFunctionParent=function(e,t){n("FunctionParent",e,t)},nt.assertFunctionTypeAnnotation=function(e,t){n("FunctionTypeAnnotation",e,t)},nt.assertFunctionTypeParam=function(e,t){n("FunctionTypeParam",e,t)},nt.assertGenericTypeAnnotation=function(e,t){n("GenericTypeAnnotation",e,t)},nt.assertIdentifier=function(e,t){n("Identifier",e,t)},nt.assertIfStatement=function(e,t){n("IfStatement",e,t)},nt.assertImmutable=function(e,t){n("Immutable",e,t)},nt.assertImport=function(e,t){n("Import",e,t)},nt.assertImportAttribute=function(e,t){n("ImportAttribute",e,t)},nt.assertImportDeclaration=function(e,t){n("ImportDeclaration",e,t)},nt.assertImportDefaultSpecifier=function(e,t){n("ImportDefaultSpecifier",e,t)},nt.assertImportExpression=function(e,t){n("ImportExpression",e,t)},nt.assertImportNamespaceSpecifier=function(e,t){n("ImportNamespaceSpecifier",e,t)},nt.assertImportOrExportDeclaration=function(e,t){n("ImportOrExportDeclaration",e,t)},nt.assertImportSpecifier=function(e,t){n("ImportSpecifier",e,t)},nt.assertIndexedAccessType=function(e,t){n("IndexedAccessType",e,t)},nt.assertInferredPredicate=function(e,t){n("InferredPredicate",e,t)},nt.assertInterfaceDeclaration=function(e,t){n("InterfaceDeclaration",e,t)},nt.assertInterfaceExtends=function(e,t){n("InterfaceExtends",e,t)},nt.assertInterfaceTypeAnnotation=function(e,t){n("InterfaceTypeAnnotation",e,t)},nt.assertInterpreterDirective=function(e,t){n("InterpreterDirective",e,t)},nt.assertIntersectionTypeAnnotation=function(e,t){n("IntersectionTypeAnnotation",e,t)},nt.assertJSX=function(e,t){n("JSX",e,t)},nt.assertJSXAttribute=function(e,t){n("JSXAttribute",e,t)},nt.assertJSXClosingElement=function(e,t){n("JSXClosingElement",e,t)},nt.assertJSXClosingFragment=function(e,t){n("JSXClosingFragment",e,t)},nt.assertJSXElement=function(e,t){n("JSXElement",e,t)},nt.assertJSXEmptyExpression=function(e,t){n("JSXEmptyExpression",e,t)},nt.assertJSXExpressionContainer=function(e,t){n("JSXExpressionContainer",e,t)},nt.assertJSXFragment=function(e,t){n("JSXFragment",e,t)},nt.assertJSXIdentifier=function(e,t){n("JSXIdentifier",e,t)},nt.assertJSXMemberExpression=function(e,t){n("JSXMemberExpression",e,t)},nt.assertJSXNamespacedName=function(e,t){n("JSXNamespacedName",e,t)},nt.assertJSXOpeningElement=function(e,t){n("JSXOpeningElement",e,t)},nt.assertJSXOpeningFragment=function(e,t){n("JSXOpeningFragment",e,t)},nt.assertJSXSpreadAttribute=function(e,t){n("JSXSpreadAttribute",e,t)},nt.assertJSXSpreadChild=function(e,t){n("JSXSpreadChild",e,t)},nt.assertJSXText=function(e,t){n("JSXText",e,t)},nt.assertLVal=function(e,t){n("LVal",e,t)},nt.assertLabeledStatement=function(e,t){n("LabeledStatement",e,t)},nt.assertLiteral=function(e,t){n("Literal",e,t)},nt.assertLogicalExpression=function(e,t){n("LogicalExpression",e,t)},nt.assertLoop=function(e,t){n("Loop",e,t)},nt.assertMemberExpression=function(e,t){n("MemberExpression",e,t)},nt.assertMetaProperty=function(e,t){n("MetaProperty",e,t)},nt.assertMethod=function(e,t){n("Method",e,t)},nt.assertMiscellaneous=function(e,t){n("Miscellaneous",e,t)},nt.assertMixedTypeAnnotation=function(e,t){n("MixedTypeAnnotation",e,t)},nt.assertModuleDeclaration=function(e,r){(0,t.default)("assertModuleDeclaration","assertImportOrExportDeclaration"),n("ModuleDeclaration",e,r)},nt.assertModuleExpression=function(e,t){n("ModuleExpression",e,t)},nt.assertModuleSpecifier=function(e,t){n("ModuleSpecifier",e,t)},nt.assertNewExpression=function(e,t){n("NewExpression",e,t)},nt.assertNoop=function(e,t){n("Noop",e,t)},nt.assertNullLiteral=function(e,t){n("NullLiteral",e,t)},nt.assertNullLiteralTypeAnnotation=function(e,t){n("NullLiteralTypeAnnotation",e,t)},nt.assertNullableTypeAnnotation=function(e,t){n("NullableTypeAnnotation",e,t)},nt.assertNumberLiteral=function(e,r){(0,t.default)("assertNumberLiteral","assertNumericLiteral"),n("NumberLiteral",e,r)},nt.assertNumberLiteralTypeAnnotation=function(e,t){n("NumberLiteralTypeAnnotation",e,t)},nt.assertNumberTypeAnnotation=function(e,t){n("NumberTypeAnnotation",e,t)},nt.assertNumericLiteral=function(e,t){n("NumericLiteral",e,t)},nt.assertObjectExpression=function(e,t){n("ObjectExpression",e,t)},nt.assertObjectMember=function(e,t){n("ObjectMember",e,t)},nt.assertObjectMethod=function(e,t){n("ObjectMethod",e,t)},nt.assertObjectPattern=function(e,t){n("ObjectPattern",e,t)},nt.assertObjectProperty=function(e,t){n("ObjectProperty",e,t)},nt.assertObjectTypeAnnotation=function(e,t){n("ObjectTypeAnnotation",e,t)},nt.assertObjectTypeCallProperty=function(e,t){n("ObjectTypeCallProperty",e,t)},nt.assertObjectTypeIndexer=function(e,t){n("ObjectTypeIndexer",e,t)},nt.assertObjectTypeInternalSlot=function(e,t){n("ObjectTypeInternalSlot",e,t)},nt.assertObjectTypeProperty=function(e,t){n("ObjectTypeProperty",e,t)},nt.assertObjectTypeSpreadProperty=function(e,t){n("ObjectTypeSpreadProperty",e,t)},nt.assertOpaqueType=function(e,t){n("OpaqueType",e,t)},nt.assertOptionalCallExpression=function(e,t){n("OptionalCallExpression",e,t)},nt.assertOptionalIndexedAccessType=function(e,t){n("OptionalIndexedAccessType",e,t)},nt.assertOptionalMemberExpression=function(e,t){n("OptionalMemberExpression",e,t)},nt.assertParenthesizedExpression=function(e,t){n("ParenthesizedExpression",e,t)},nt.assertPattern=function(e,t){n("Pattern",e,t)},nt.assertPatternLike=function(e,t){n("PatternLike",e,t)},nt.assertPipelineBareFunction=function(e,t){n("PipelineBareFunction",e,t)},nt.assertPipelinePrimaryTopicReference=function(e,t){n("PipelinePrimaryTopicReference",e,t)},nt.assertPipelineTopicExpression=function(e,t){n("PipelineTopicExpression",e,t)},nt.assertPlaceholder=function(e,t){n("Placeholder",e,t)},nt.assertPrivate=function(e,t){n("Private",e,t)},nt.assertPrivateName=function(e,t){n("PrivateName",e,t)},nt.assertProgram=function(e,t){n("Program",e,t)},nt.assertProperty=function(e,t){n("Property",e,t)},nt.assertPureish=function(e,t){n("Pureish",e,t)},nt.assertQualifiedTypeIdentifier=function(e,t){n("QualifiedTypeIdentifier",e,t)},nt.assertRecordExpression=function(e,t){n("RecordExpression",e,t)},nt.assertRegExpLiteral=function(e,t){n("RegExpLiteral",e,t)},nt.assertRegexLiteral=function(e,r){(0,t.default)("assertRegexLiteral","assertRegExpLiteral"),n("RegexLiteral",e,r)},nt.assertRestElement=function(e,t){n("RestElement",e,t)},nt.assertRestProperty=function(e,r){(0,t.default)("assertRestProperty","assertRestElement"),n("RestProperty",e,r)},nt.assertReturnStatement=function(e,t){n("ReturnStatement",e,t)},nt.assertScopable=function(e,t){n("Scopable",e,t)},nt.assertSequenceExpression=function(e,t){n("SequenceExpression",e,t)},nt.assertSpreadElement=function(e,t){n("SpreadElement",e,t)},nt.assertSpreadProperty=function(e,r){(0,t.default)("assertSpreadProperty","assertSpreadElement"),n("SpreadProperty",e,r)},nt.assertStandardized=function(e,t){n("Standardized",e,t)},nt.assertStatement=function(e,t){n("Statement",e,t)},nt.assertStaticBlock=function(e,t){n("StaticBlock",e,t)},nt.assertStringLiteral=function(e,t){n("StringLiteral",e,t)},nt.assertStringLiteralTypeAnnotation=function(e,t){n("StringLiteralTypeAnnotation",e,t)},nt.assertStringTypeAnnotation=function(e,t){n("StringTypeAnnotation",e,t)},nt.assertSuper=function(e,t){n("Super",e,t)},nt.assertSwitchCase=function(e,t){n("SwitchCase",e,t)},nt.assertSwitchStatement=function(e,t){n("SwitchStatement",e,t)},nt.assertSymbolTypeAnnotation=function(e,t){n("SymbolTypeAnnotation",e,t)},nt.assertTSAnyKeyword=function(e,t){n("TSAnyKeyword",e,t)},nt.assertTSArrayType=function(e,t){n("TSArrayType",e,t)},nt.assertTSAsExpression=function(e,t){n("TSAsExpression",e,t)},nt.assertTSBaseType=function(e,t){n("TSBaseType",e,t)},nt.assertTSBigIntKeyword=function(e,t){n("TSBigIntKeyword",e,t)},nt.assertTSBooleanKeyword=function(e,t){n("TSBooleanKeyword",e,t)},nt.assertTSCallSignatureDeclaration=function(e,t){n("TSCallSignatureDeclaration",e,t)},nt.assertTSConditionalType=function(e,t){n("TSConditionalType",e,t)},nt.assertTSConstructSignatureDeclaration=function(e,t){n("TSConstructSignatureDeclaration",e,t)},nt.assertTSConstructorType=function(e,t){n("TSConstructorType",e,t)},nt.assertTSDeclareFunction=function(e,t){n("TSDeclareFunction",e,t)},nt.assertTSDeclareMethod=function(e,t){n("TSDeclareMethod",e,t)},nt.assertTSEntityName=function(e,t){n("TSEntityName",e,t)},nt.assertTSEnumBody=function(e,t){n("TSEnumBody",e,t)},nt.assertTSEnumDeclaration=function(e,t){n("TSEnumDeclaration",e,t)},nt.assertTSEnumMember=function(e,t){n("TSEnumMember",e,t)},nt.assertTSExportAssignment=function(e,t){n("TSExportAssignment",e,t)},nt.assertTSExpressionWithTypeArguments=function(e,t){n("TSExpressionWithTypeArguments",e,t)},nt.assertTSExternalModuleReference=function(e,t){n("TSExternalModuleReference",e,t)},nt.assertTSFunctionType=function(e,t){n("TSFunctionType",e,t)},nt.assertTSImportEqualsDeclaration=function(e,t){n("TSImportEqualsDeclaration",e,t)},nt.assertTSImportType=function(e,t){n("TSImportType",e,t)},nt.assertTSIndexSignature=function(e,t){n("TSIndexSignature",e,t)},nt.assertTSIndexedAccessType=function(e,t){n("TSIndexedAccessType",e,t)},nt.assertTSInferType=function(e,t){n("TSInferType",e,t)},nt.assertTSInstantiationExpression=function(e,t){n("TSInstantiationExpression",e,t)},nt.assertTSInterfaceBody=function(e,t){n("TSInterfaceBody",e,t)},nt.assertTSInterfaceDeclaration=function(e,t){n("TSInterfaceDeclaration",e,t)},nt.assertTSIntersectionType=function(e,t){n("TSIntersectionType",e,t)},nt.assertTSIntrinsicKeyword=function(e,t){n("TSIntrinsicKeyword",e,t)},nt.assertTSLiteralType=function(e,t){n("TSLiteralType",e,t)},nt.assertTSMappedType=function(e,t){n("TSMappedType",e,t)},nt.assertTSMethodSignature=function(e,t){n("TSMethodSignature",e,t)},nt.assertTSModuleBlock=function(e,t){n("TSModuleBlock",e,t)},nt.assertTSModuleDeclaration=function(e,t){n("TSModuleDeclaration",e,t)},nt.assertTSNamedTupleMember=function(e,t){n("TSNamedTupleMember",e,t)},nt.assertTSNamespaceExportDeclaration=function(e,t){n("TSNamespaceExportDeclaration",e,t)},nt.assertTSNeverKeyword=function(e,t){n("TSNeverKeyword",e,t)},nt.assertTSNonNullExpression=function(e,t){n("TSNonNullExpression",e,t)},nt.assertTSNullKeyword=function(e,t){n("TSNullKeyword",e,t)},nt.assertTSNumberKeyword=function(e,t){n("TSNumberKeyword",e,t)},nt.assertTSObjectKeyword=function(e,t){n("TSObjectKeyword",e,t)},nt.assertTSOptionalType=function(e,t){n("TSOptionalType",e,t)},nt.assertTSParameterProperty=function(e,t){n("TSParameterProperty",e,t)},nt.assertTSParenthesizedType=function(e,t){n("TSParenthesizedType",e,t)},nt.assertTSPropertySignature=function(e,t){n("TSPropertySignature",e,t)},nt.assertTSQualifiedName=function(e,t){n("TSQualifiedName",e,t)},nt.assertTSRestType=function(e,t){n("TSRestType",e,t)},nt.assertTSSatisfiesExpression=function(e,t){n("TSSatisfiesExpression",e,t)},nt.assertTSStringKeyword=function(e,t){n("TSStringKeyword",e,t)},nt.assertTSSymbolKeyword=function(e,t){n("TSSymbolKeyword",e,t)},nt.assertTSTemplateLiteralType=function(e,t){n("TSTemplateLiteralType",e,t)},nt.assertTSThisType=function(e,t){n("TSThisType",e,t)},nt.assertTSTupleType=function(e,t){n("TSTupleType",e,t)},nt.assertTSType=function(e,t){n("TSType",e,t)},nt.assertTSTypeAliasDeclaration=function(e,t){n("TSTypeAliasDeclaration",e,t)},nt.assertTSTypeAnnotation=function(e,t){n("TSTypeAnnotation",e,t)},nt.assertTSTypeAssertion=function(e,t){n("TSTypeAssertion",e,t)},nt.assertTSTypeElement=function(e,t){n("TSTypeElement",e,t)},nt.assertTSTypeLiteral=function(e,t){n("TSTypeLiteral",e,t)},nt.assertTSTypeOperator=function(e,t){n("TSTypeOperator",e,t)},nt.assertTSTypeParameter=function(e,t){n("TSTypeParameter",e,t)},nt.assertTSTypeParameterDeclaration=function(e,t){n("TSTypeParameterDeclaration",e,t)},nt.assertTSTypeParameterInstantiation=function(e,t){n("TSTypeParameterInstantiation",e,t)},nt.assertTSTypePredicate=function(e,t){n("TSTypePredicate",e,t)},nt.assertTSTypeQuery=function(e,t){n("TSTypeQuery",e,t)},nt.assertTSTypeReference=function(e,t){n("TSTypeReference",e,t)},nt.assertTSUndefinedKeyword=function(e,t){n("TSUndefinedKeyword",e,t)},nt.assertTSUnionType=function(e,t){n("TSUnionType",e,t)},nt.assertTSUnknownKeyword=function(e,t){n("TSUnknownKeyword",e,t)},nt.assertTSVoidKeyword=function(e,t){n("TSVoidKeyword",e,t)},nt.assertTaggedTemplateExpression=function(e,t){n("TaggedTemplateExpression",e,t)},nt.assertTemplateElement=function(e,t){n("TemplateElement",e,t)},nt.assertTemplateLiteral=function(e,t){n("TemplateLiteral",e,t)},nt.assertTerminatorless=function(e,t){n("Terminatorless",e,t)},nt.assertThisExpression=function(e,t){n("ThisExpression",e,t)},nt.assertThisTypeAnnotation=function(e,t){n("ThisTypeAnnotation",e,t)},nt.assertThrowStatement=function(e,t){n("ThrowStatement",e,t)},nt.assertTopicReference=function(e,t){n("TopicReference",e,t)},nt.assertTryStatement=function(e,t){n("TryStatement",e,t)},nt.assertTupleExpression=function(e,t){n("TupleExpression",e,t)},nt.assertTupleTypeAnnotation=function(e,t){n("TupleTypeAnnotation",e,t)},nt.assertTypeAlias=function(e,t){n("TypeAlias",e,t)},nt.assertTypeAnnotation=function(e,t){n("TypeAnnotation",e,t)},nt.assertTypeCastExpression=function(e,t){n("TypeCastExpression",e,t)},nt.assertTypeParameter=function(e,t){n("TypeParameter",e,t)},nt.assertTypeParameterDeclaration=function(e,t){n("TypeParameterDeclaration",e,t)},nt.assertTypeParameterInstantiation=function(e,t){n("TypeParameterInstantiation",e,t)},nt.assertTypeScript=function(e,t){n("TypeScript",e,t)},nt.assertTypeofTypeAnnotation=function(e,t){n("TypeofTypeAnnotation",e,t)},nt.assertUnaryExpression=function(e,t){n("UnaryExpression",e,t)},nt.assertUnaryLike=function(e,t){n("UnaryLike",e,t)},nt.assertUnionTypeAnnotation=function(e,t){n("UnionTypeAnnotation",e,t)},nt.assertUpdateExpression=function(e,t){n("UpdateExpression",e,t)},nt.assertUserWhitespacable=function(e,t){n("UserWhitespacable",e,t)},nt.assertV8IntrinsicIdentifier=function(e,t){n("V8IntrinsicIdentifier",e,t)},nt.assertVariableDeclaration=function(e,t){n("VariableDeclaration",e,t)},nt.assertVariableDeclarator=function(e,t){n("VariableDeclarator",e,t)},nt.assertVariance=function(e,t){n("Variance",e,t)},nt.assertVoidPattern=function(e,t){n("VoidPattern",e,t)},nt.assertVoidTypeAnnotation=function(e,t){n("VoidTypeAnnotation",e,t)},nt.assertWhile=function(e,t){n("While",e,t)},nt.assertWhileStatement=function(e,t){n("WhileStatement",e,t)},nt.assertWithStatement=function(e,t){n("WithStatement",e,t)},nt.assertYieldExpression=function(e,t){n("YieldExpression",e,t)};var e=te(),t=L();function n(t,n,r){if(!(0,e.default)(t,n,r))throw new Error(`Expected type "${t}" with option ${JSON.stringify(r)}, but instead got "${n.type}".`)}return nt}();Object.keys(a).forEach(function(n){"default"!==n&&"__esModule"!==n&&(Object.prototype.hasOwnProperty.call(t,n)||n in e&&e[n]===a[n]||Object.defineProperty(e,n,{enumerable:!0,get:function(){return a[n]}}))});var o=function(){if(rt)return it;rt=1,Object.defineProperty(it,"__esModule",{value:!0}),it.default=void 0;var e=Xe();return it.default=function(t){switch(t){case"string":return(0,e.stringTypeAnnotation)();case"number":return(0,e.numberTypeAnnotation)();case"undefined":return(0,e.voidTypeAnnotation)();case"boolean":return(0,e.booleanTypeAnnotation)();case"function":return(0,e.genericTypeAnnotation)((0,e.identifier)("Function"));case"object":return(0,e.genericTypeAnnotation)((0,e.identifier)("Object"));case"symbol":return(0,e.genericTypeAnnotation)((0,e.identifier)("Symbol"));case"bigint":return(0,e.anyTypeAnnotation)()}throw new Error("Invalid typeof value: "+t)},it}(),l=function(){if(at)return ot;at=1,Object.defineProperty(ot,"__esModule",{value:!0}),ot.default=function(n){const r=(0,t.default)(n);return 1===r.length?r[0]:(0,e.unionTypeAnnotation)(r)};var e=Xe(),t=ct();return ot}(),c=ft(),p=Tt();Object.keys(p).forEach(function(n){"default"!==n&&"__esModule"!==n&&(Object.prototype.hasOwnProperty.call(t,n)||n in e&&e[n]===p[n]||Object.defineProperty(e,n,{enumerable:!0,get:function(){return p[n]}}))});var u=Xe();Object.keys(u).forEach(function(n){"default"!==n&&"__esModule"!==n&&(Object.prototype.hasOwnProperty.call(t,n)||n in e&&e[n]===u[n]||Object.defineProperty(e,n,{enumerable:!0,get:function(){return u[n]}}))});var h=St(),d=function(){if(bt)return Pt;bt=1,Object.defineProperty(Pt,"__esModule",{value:!0}),Pt.default=function(t){return(0,e.default)(t,!1)};var e=St();return Pt}(),f=function(){if(Et)return vt;Et=1,Object.defineProperty(vt,"__esModule",{value:!0}),vt.default=function(t){return(0,e.default)(t)};var e=St();return vt}(),m=function(){if(At)return Ct;At=1,Object.defineProperty(Ct,"__esModule",{value:!0}),Ct.default=function(t){return(0,e.default)(t,!0,!0)};var e=St();return Ct}(),y=function(){if(wt)return It;wt=1,Object.defineProperty(It,"__esModule",{value:!0}),It.default=function(t){return(0,e.default)(t,!1,!0)};var e=St();return It}(),T=function(){if(Nt)return Ot;Nt=1,Object.defineProperty(Ot,"__esModule",{value:!0}),Ot.default=function(t,n,r,i){return(0,e.default)(t,n,[{type:i?"CommentLine":"CommentBlock",value:r}])};var e=Dt();return Ot}(),g=Dt(),x=Rt(),S=Vt(),b=Xt(),E=Jt(),v=function(){if(Ht)return zt;Ht=1,Object.defineProperty(zt,"__esModule",{value:!0}),zt.default=function(t){return e.COMMENT_KEYS.forEach(e=>{t[e]=null}),t};var e=ye();return zt}(),A=function(){if(Gt)return Qt;Gt=1,Object.defineProperty(Qt,"__esModule",{value:!0}),Qt.WHILE_TYPES=Qt.USERWHITESPACABLE_TYPES=Qt.UNARYLIKE_TYPES=Qt.TYPESCRIPT_TYPES=Qt.TSTYPE_TYPES=Qt.TSTYPEELEMENT_TYPES=Qt.TSENTITYNAME_TYPES=Qt.TSBASETYPE_TYPES=Qt.TERMINATORLESS_TYPES=Qt.STATEMENT_TYPES=Qt.STANDARDIZED_TYPES=Qt.SCOPABLE_TYPES=Qt.PUREISH_TYPES=Qt.PROPERTY_TYPES=Qt.PRIVATE_TYPES=Qt.PATTERN_TYPES=Qt.PATTERNLIKE_TYPES=Qt.OBJECTMEMBER_TYPES=Qt.MODULESPECIFIER_TYPES=Qt.MODULEDECLARATION_TYPES=Qt.MISCELLANEOUS_TYPES=Qt.METHOD_TYPES=Qt.LVAL_TYPES=Qt.LOOP_TYPES=Qt.LITERAL_TYPES=Qt.JSX_TYPES=Qt.IMPORTOREXPORTDECLARATION_TYPES=Qt.IMMUTABLE_TYPES=Qt.FUNCTION_TYPES=Qt.FUNCTIONPARENT_TYPES=Qt.FUNCTIONPARAMETER_TYPES=Qt.FOR_TYPES=Qt.FORXSTATEMENT_TYPES=Qt.FLOW_TYPES=Qt.FLOWTYPE_TYPES=Qt.FLOWPREDICATE_TYPES=Qt.FLOWDECLARATION_TYPES=Qt.FLOWBASEANNOTATION_TYPES=Qt.EXPRESSION_TYPES=Qt.EXPRESSIONWRAPPER_TYPES=Qt.EXPORTDECLARATION_TYPES=Qt.ENUMMEMBER_TYPES=Qt.ENUMBODY_TYPES=Qt.DECLARATION_TYPES=Qt.CONDITIONAL_TYPES=Qt.COMPLETIONSTATEMENT_TYPES=Qt.CLASS_TYPES=Qt.BLOCK_TYPES=Qt.BLOCKPARENT_TYPES=Qt.BINARY_TYPES=Qt.ACCESSOR_TYPES=void 0;var e=Ue();Qt.STANDARDIZED_TYPES=e.FLIPPED_ALIAS_KEYS.Standardized,Qt.EXPRESSION_TYPES=e.FLIPPED_ALIAS_KEYS.Expression,Qt.BINARY_TYPES=e.FLIPPED_ALIAS_KEYS.Binary,Qt.SCOPABLE_TYPES=e.FLIPPED_ALIAS_KEYS.Scopable,Qt.BLOCKPARENT_TYPES=e.FLIPPED_ALIAS_KEYS.BlockParent,Qt.BLOCK_TYPES=e.FLIPPED_ALIAS_KEYS.Block,Qt.STATEMENT_TYPES=e.FLIPPED_ALIAS_KEYS.Statement,Qt.TERMINATORLESS_TYPES=e.FLIPPED_ALIAS_KEYS.Terminatorless,Qt.COMPLETIONSTATEMENT_TYPES=e.FLIPPED_ALIAS_KEYS.CompletionStatement,Qt.CONDITIONAL_TYPES=e.FLIPPED_ALIAS_KEYS.Conditional,Qt.LOOP_TYPES=e.FLIPPED_ALIAS_KEYS.Loop,Qt.WHILE_TYPES=e.FLIPPED_ALIAS_KEYS.While,Qt.EXPRESSIONWRAPPER_TYPES=e.FLIPPED_ALIAS_KEYS.ExpressionWrapper,Qt.FOR_TYPES=e.FLIPPED_ALIAS_KEYS.For,Qt.FORXSTATEMENT_TYPES=e.FLIPPED_ALIAS_KEYS.ForXStatement,Qt.FUNCTION_TYPES=e.FLIPPED_ALIAS_KEYS.Function,Qt.FUNCTIONPARENT_TYPES=e.FLIPPED_ALIAS_KEYS.FunctionParent,Qt.PUREISH_TYPES=e.FLIPPED_ALIAS_KEYS.Pureish,Qt.DECLARATION_TYPES=e.FLIPPED_ALIAS_KEYS.Declaration,Qt.FUNCTIONPARAMETER_TYPES=e.FLIPPED_ALIAS_KEYS.FunctionParameter,Qt.PATTERNLIKE_TYPES=e.FLIPPED_ALIAS_KEYS.PatternLike,Qt.LVAL_TYPES=e.FLIPPED_ALIAS_KEYS.LVal,Qt.TSENTITYNAME_TYPES=e.FLIPPED_ALIAS_KEYS.TSEntityName,Qt.LITERAL_TYPES=e.FLIPPED_ALIAS_KEYS.Literal,Qt.IMMUTABLE_TYPES=e.FLIPPED_ALIAS_KEYS.Immutable,Qt.USERWHITESPACABLE_TYPES=e.FLIPPED_ALIAS_KEYS.UserWhitespacable,Qt.METHOD_TYPES=e.FLIPPED_ALIAS_KEYS.Method,Qt.OBJECTMEMBER_TYPES=e.FLIPPED_ALIAS_KEYS.ObjectMember,Qt.PROPERTY_TYPES=e.FLIPPED_ALIAS_KEYS.Property,Qt.UNARYLIKE_TYPES=e.FLIPPED_ALIAS_KEYS.UnaryLike,Qt.PATTERN_TYPES=e.FLIPPED_ALIAS_KEYS.Pattern,Qt.CLASS_TYPES=e.FLIPPED_ALIAS_KEYS.Class;const t=Qt.IMPORTOREXPORTDECLARATION_TYPES=e.FLIPPED_ALIAS_KEYS.ImportOrExportDeclaration;return Qt.EXPORTDECLARATION_TYPES=e.FLIPPED_ALIAS_KEYS.ExportDeclaration,Qt.MODULESPECIFIER_TYPES=e.FLIPPED_ALIAS_KEYS.ModuleSpecifier,Qt.ACCESSOR_TYPES=e.FLIPPED_ALIAS_KEYS.Accessor,Qt.PRIVATE_TYPES=e.FLIPPED_ALIAS_KEYS.Private,Qt.FLOW_TYPES=e.FLIPPED_ALIAS_KEYS.Flow,Qt.FLOWTYPE_TYPES=e.FLIPPED_ALIAS_KEYS.FlowType,Qt.FLOWBASEANNOTATION_TYPES=e.FLIPPED_ALIAS_KEYS.FlowBaseAnnotation,Qt.FLOWDECLARATION_TYPES=e.FLIPPED_ALIAS_KEYS.FlowDeclaration,Qt.FLOWPREDICATE_TYPES=e.FLIPPED_ALIAS_KEYS.FlowPredicate,Qt.ENUMBODY_TYPES=e.FLIPPED_ALIAS_KEYS.EnumBody,Qt.ENUMMEMBER_TYPES=e.FLIPPED_ALIAS_KEYS.EnumMember,Qt.JSX_TYPES=e.FLIPPED_ALIAS_KEYS.JSX,Qt.MISCELLANEOUS_TYPES=e.FLIPPED_ALIAS_KEYS.Miscellaneous,Qt.TYPESCRIPT_TYPES=e.FLIPPED_ALIAS_KEYS.TypeScript,Qt.TSTYPEELEMENT_TYPES=e.FLIPPED_ALIAS_KEYS.TSTypeElement,Qt.TSTYPE_TYPES=e.FLIPPED_ALIAS_KEYS.TSType,Qt.TSBASETYPE_TYPES=e.FLIPPED_ALIAS_KEYS.TSBaseType,Qt.MODULEDECLARATION_TYPES=t,Qt}();Object.keys(A).forEach(function(n){"default"!==n&&"__esModule"!==n&&(Object.prototype.hasOwnProperty.call(t,n)||n in e&&e[n]===A[n]||Object.defineProperty(e,n,{enumerable:!0,get:function(){return A[n]}}))});var C=ye();Object.keys(C).forEach(function(n){"default"!==n&&"__esModule"!==n&&(Object.prototype.hasOwnProperty.call(t,n)||n in e&&e[n]===C[n]||Object.defineProperty(e,n,{enumerable:!0,get:function(){return C[n]}}))});var I=function(){if(en)return tn;en=1,Object.defineProperty(tn,"__esModule",{value:!0}),tn.default=function(t,n="body"){const r=(0,e.default)(t[n],t);return t[n]=r,r};var e=rn();return tn}(),k=function(){if(an)return on;an=1,Object.defineProperty(on,"__esModule",{value:!0}),on.default=function(t){return"eval"!==(t=(0,e.default)(t))&&"arguments"!==t||(t="_"+t),t};var e=cn();return on}(),N=rn(),O=function(){if(pn)return un;pn=1,Object.defineProperty(un,"__esModule",{value:!0}),un.default=function(n,r=n.key||n.property){return!n.computed&&(0,e.isIdentifier)(r)&&(r=(0,t.stringLiteral)(r.name)),r};var e=M(),t=Xe();return un}(),D=function(){if(hn)return dn;hn=1,Object.defineProperty(dn,"__esModule",{value:!0}),dn.default=void 0;var e=M();return dn.default=function(t){if((0,e.isExpressionStatement)(t)&&(t=t.expression),(0,e.isExpression)(t))return t;if((0,e.isClass)(t)?(t.type="ClassExpression",t.abstract=!1):(0,e.isFunction)(t)&&(t.type="FunctionExpression"),!(0,e.isExpression)(t))throw new Error(`cannot turn ${t.type} to an expression`);return t},dn}(),U=cn(),K=function(){if(bn)return mn;bn=1,Object.defineProperty(mn,"__esModule",{value:!0}),mn.default=r;var e=M(),t=St(),n=vn();function r(i,s=i.key){let a;return"method"===i.kind?r.increment()+"":(a=(0,e.isIdentifier)(s)?s.name:(0,e.isStringLiteral)(s)?JSON.stringify(s.value):JSON.stringify((0,n.default)((0,t.default)(s))),i.computed&&(a=`[${a}]`),i.static&&(a=`static:${a}`),a)}return r.uid=0,r.increment=function(){return r.uid>=Number.MAX_SAFE_INTEGER?r.uid=0:r.uid++},mn}(),V=function(){if(An)return Cn;An=1,Object.defineProperty(Cn,"__esModule",{value:!0}),Cn.default=void 0;var e=M(),t=Xe();return Cn.default=function(n,r){if((0,e.isStatement)(n))return n;let i,s=!1;if((0,e.isClass)(n))s=!0,i="ClassDeclaration";else if((0,e.isFunction)(n))s=!0,i="FunctionDeclaration";else if((0,e.isAssignmentExpression)(n))return(0,t.expressionStatement)(n);if(s&&!n.id&&(i=!1),!i){if(r)return!1;throw new Error(`cannot turn ${n.type} to a statement`)}return n.type=i,n},Cn}(),q=kn(),$=Ue();Object.keys($).forEach(function(n){"default"!==n&&"__esModule"!==n&&(Object.prototype.hasOwnProperty.call(t,n)||n in e&&e[n]===$[n]||Object.defineProperty(e,n,{enumerable:!0,get:function(){return $[n]}}))});var W=function(){if(Nn)return On;Nn=1,Object.defineProperty(On,"__esModule",{value:!0}),On.default=function(t,n,r=!1){return t.object=(0,e.memberExpression)(t.object,t.property,t.computed),t.property=n,t.computed=!!r,t};var e=Xe();return On}(),Y=function(){if(_n)return Dn;_n=1,Object.defineProperty(Dn,"__esModule",{value:!0}),Dn.default=function(n,r){if(!n||!r)return n;for(const t of e.INHERIT_KEYS.optional)null==n[t]&&(n[t]=r[t]);for(const e of Object.keys(r))"_"===e[0]&&"__clone"!==e&&(n[e]=r[e]);for(const t of e.INHERIT_KEYS.force)n[t]=r[t];return(0,t.default)(n,r),n};var e=ye(),t=Xt();return Dn}(),J=function(){if(Ln)return Mn;Ln=1,Object.defineProperty(Mn,"__esModule",{value:!0}),Mn.default=function(n,r){if((0,t.isSuper)(n.object))throw new Error("Cannot prepend node to super property access (`super.foo`).");return n.object=(0,e.memberExpression)(r,n.object),n};var e=Xe(),t=Pr();return Mn}(),X=En(),H=vn(),G=ct(),Q=(Fn||(Fn=1,Object.defineProperty(Bn,"__esModule",{value:!0}),Bn.default=function(e){const t=[].concat(e),n=Object.create(null);for(;t.length;){const e=t.pop();if(e)switch(e.type){case"ArrayPattern":t.push(...e.elements);break;case"AssignmentExpression":case"AssignmentPattern":case"ForInStatement":case"ForOfStatement":t.push(e.left);break;case"ObjectPattern":t.push(...e.properties);break;case"ObjectProperty":t.push(e.value);break;case"RestElement":case"UpdateExpression":t.push(e.argument);break;case"UnaryExpression":"delete"===e.operator&&t.push(e.argument);break;case"Identifier":n[e.name]=e}}return n}),Bn),Z=Un(),ne=function(){if(Kn)return Vn;Kn=1,Object.defineProperty(Vn,"__esModule",{value:!0}),Vn.default=void 0;var e=Un();return Vn.default=function(t,n){return(0,e.default)(t,n,!0)},Vn}(),re=Wn(),ie=Xn();Object.keys(ie).forEach(function(n){"default"!==n&&"__esModule"!==n&&(Object.prototype.hasOwnProperty.call(t,n)||n in e&&e[n]===ie[n]||Object.defineProperty(e,n,{enumerable:!0,get:function(){return ie[n]}}))});var se=gn(),ae=w(),oe=te(),le=function(){if(Hn)return zn;Hn=1,Object.defineProperty(zn,"__esModule",{value:!0}),zn.default=function(t,n,r){if(r&&"Identifier"===t.type&&"ObjectProperty"===n.type&&"ObjectExpression"===r.type)return!1;const i=e.default.keys[n.type];if(i)for(let e=0;e<i.length;e++){const r=n[i[e]];if(Array.isArray(r)){if(r.includes(t))return!0}else if(r===t)return!0}return!1};var e=Un();return zn}(),ce=function(){if(Qn)return Zn;Qn=1,Object.defineProperty(Zn,"__esModule",{value:!0}),Zn.default=function(n){return(0,e.isFunctionDeclaration)(n)||(0,e.isClassDeclaration)(n)||(0,t.default)(n)};var e=M(),t=tr();return Zn}(),pe=function(){if(nr)return rr;nr=1,Object.defineProperty(rr,"__esModule",{value:!0}),rr.default=function(n){return!!(0,e.default)(n.type,"Immutable")||!!(0,t.isIdentifier)(n)&&"undefined"===n.name};var e=z(),t=M();return rr}(),he=tr(),de=et(),fe=function(){if(ir)return sr;ir=1,Object.defineProperty(sr,"__esModule",{value:!0}),sr.default=function t(n,r){if("object"!=typeof n||"object"!=typeof r||null==n||null==r)return n===r;if(n.type!==r.type)return!1;const i=Object.keys(e.NODE_FIELDS[n.type]||n.type),s=e.VISITOR_KEYS[n.type];for(const e of i){const i=n[e],a=r[e];if(typeof i!=typeof a)return!1;if(null!=i||null!=a){if(null==i||null==a)return!1;if(Array.isArray(i)){if(!Array.isArray(a))return!1;if(i.length!==a.length)return!1;for(let e=0;e<i.length;e++)if(!t(i[e],a[e]))return!1}else if("object"!=typeof i||null!=s&&s.includes(e)){if(!t(i,a))return!1}else for(const e of Object.keys(i))if(i[e]!==a[e])return!1}}return!0};var e=Ue();return sr}(),me=ee(),Te=(ar||(ar=1,Object.defineProperty(or,"__esModule",{value:!0}),or.default=function(e,t,n){switch(t.type){case"MemberExpression":case"OptionalMemberExpression":return t.property===e?!!t.computed:t.object===e;case"JSXMemberExpression":return t.object===e;case"VariableDeclarator":return t.init===e;case"ArrowFunctionExpression":return t.body===e;case"PrivateName":case"LabeledStatement":case"CatchClause":case"RestElement":case"BreakStatement":case"ContinueStatement":case"FunctionDeclaration":case"FunctionExpression":case"ExportNamespaceSpecifier":case"ExportDefaultSpecifier":case"ImportDefaultSpecifier":case"ImportNamespaceSpecifier":case"ImportSpecifier":case"ImportAttribute":case"JSXAttribute":case"ObjectPattern":case"ArrayPattern":case"MetaProperty":return!1;case"ClassMethod":case"ClassPrivateMethod":case"ObjectMethod":return t.key===e&&!!t.computed;case"ObjectProperty":return t.key===e?!!t.computed:!n||"ObjectPattern"!==n.type;case"ClassProperty":case"ClassAccessorProperty":case"TSPropertySignature":return t.key!==e||!!t.computed;case"ClassPrivateProperty":case"ObjectTypeProperty":return t.key!==e;case"ClassDeclaration":case"ClassExpression":return t.superClass===e;case"AssignmentExpression":case"AssignmentPattern":return t.right===e;case"ExportSpecifier":return(null==n||!n.source)&&t.local===e;case"TSEnumMember":return t.id!==e}return!0}),or),ge=function(){if(lr)return cr;lr=1,Object.defineProperty(cr,"__esModule",{value:!0}),cr.default=function(t,n){return(!(0,e.isBlockStatement)(t)||!(0,e.isFunction)(n)&&!(0,e.isCatchClause)(n))&&(!(!(0,e.isPattern)(t)||!(0,e.isFunction)(n)&&!(0,e.isCatchClause)(n))||(0,e.isScopable)(t))};var e=M();return cr}(),xe=function(){if(pr)return ur;pr=1,Object.defineProperty(ur,"__esModule",{value:!0}),ur.default=function(t){return(0,e.isImportDefaultSpecifier)(t)||(0,e.isIdentifier)(t.imported||t.exported,{name:"default"})};var e=M();return ur}(),Se=z(),be=function(){if(hr)return dr;hr=1,Object.defineProperty(dr,"__esModule",{value:!0}),dr.default=function(n){return(0,e.default)(n)&&!t.has(n)};var e=ue();const t=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"]);return dr}(),Pe=ue(),Ee=function(){if(fr)return mr;fr=1,Object.defineProperty(mr,"__esModule",{value:!0}),mr.default=function(n){return(0,e.isVariableDeclaration)(n,{kind:"var"})&&!n[t]};var e=M(),t=Symbol.for("var used to be block scoped");return mr}(),ve=F(),Ae=Ke(),Ce=B(),we=M();Object.keys(we).forEach(function(n){"default"!==n&&"__esModule"!==n&&(Object.prototype.hasOwnProperty.call(t,n)||n in e&&e[n]===we[n]||Object.defineProperty(e,n,{enumerable:!0,get:function(){return we[n]}}))});var Ie=L(),ke=br();e.react={isReactComponent:n.default,isCompatTag:r.default,buildChildren:i.default},e.toSequenceExpression=ke.default,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!")}(b)),b}var Er,vr=x(Pr()),Ar={},Cr={},wr={},Ir={},kr={},Nr={};function Or(){return Er||(Er=1,Object.defineProperty(Nr,"__esModule",{value:!0}),Nr.Var=Nr.User=Nr.Statement=Nr.SpreadProperty=Nr.Scope=Nr.RestProperty=Nr.ReferencedMemberExpression=Nr.ReferencedIdentifier=Nr.Referenced=Nr.Pure=Nr.NumericLiteralTypeAnnotation=Nr.Generated=Nr.ForAwaitStatement=Nr.Flow=Nr.Expression=Nr.ExistentialTypeParam=Nr.BlockScoped=Nr.BindingIdentifier=void 0,Nr.ReferencedIdentifier=["Identifier","JSXIdentifier"],Nr.ReferencedMemberExpression=["MemberExpression"],Nr.BindingIdentifier=["Identifier"],Nr.Statement=["Statement"],Nr.Expression=["Expression"],Nr.Scope=["Scopable","Pattern"],Nr.Referenced=null,Nr.BlockScoped=["FunctionDeclaration","ClassDeclaration","VariableDeclaration"],Nr.Var=["VariableDeclaration"],Nr.User=null,Nr.Generated=null,Nr.Pure=null,Nr.Flow=["Flow","ImportDeclaration","ExportDeclaration","ImportSpecifier"],Nr.RestProperty=["RestElement"],Nr.SpreadProperty=["RestElement"],Nr.ExistentialTypeParam=["ExistsTypeAnnotation"],Nr.NumericLiteralTypeAnnotation=["NumberLiteralTypeAnnotation"],Nr.ForAwaitStatement=["ForOfStatement"]),Nr}var _r,Dr,Lr,Mr,Fr,Br={exports:{}},jr={exports:{}};function Rr(){if(Dr)return _r;Dr=1;var e=1e3,t=60*e,n=60*t,r=24*n,i=7*r,s=365.25*r;function a(e,t,n,r){var i=t>=1.5*n;return Math.round(e/n)+" "+r+(i?"s":"")}return _r=function(o,l){l=l||{};var c=typeof o;if("string"===c&&o.length>0)return function(a){if((a=String(a)).length>100)return;var o=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(a);if(!o)return;var l=parseFloat(o[1]);switch((o[2]||"ms").toLowerCase()){case"years":case"year":case"yrs":case"yr":case"y":return l*s;case"weeks":case"week":case"w":return l*i;case"days":case"day":case"d":return l*r;case"hours":case"hour":case"hrs":case"hr":case"h":return l*n;case"minutes":case"minute":case"mins":case"min":case"m":return l*t;case"seconds":case"second":case"secs":case"sec":case"s":return l*e;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return l;default:return}}(o);if("number"===c&&isFinite(o))return l.long?function(i){var s=Math.abs(i);if(s>=r)return a(i,s,r,"day");if(s>=n)return a(i,s,n,"hour");if(s>=t)return a(i,s,t,"minute");if(s>=e)return a(i,s,e,"second");return i+" ms"}(o):function(i){var s=Math.abs(i);if(s>=r)return Math.round(i/r)+"d";if(s>=n)return Math.round(i/n)+"h";if(s>=t)return Math.round(i/t)+"m";if(s>=e)return Math.round(i/e)+"s";return i+"ms"}(o);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(o))},_r}function Ur(){if(Mr)return Lr;return Mr=1,Lr=function(e){function t(e){let r,i,s,a=null;function o(...e){if(!o.enabled)return;const n=o,i=Number(new Date),s=i-(r||i);n.diff=s,n.prev=r,n.curr=i,r=i,e[0]=t.coerce(e[0]),"string"!=typeof e[0]&&e.unshift("%O");let a=0;e[0]=e[0].replace(/%([a-zA-Z%])/g,(r,i)=>{if("%%"===r)return"%";a++;const s=t.formatters[i];if("function"==typeof s){const t=e[a];r=s.call(n,t),e.splice(a,1),a--}return r}),t.formatArgs.call(n,e);(n.log||t.log).apply(n,e)}return o.namespace=e,o.useColors=t.useColors(),o.color=t.selectColor(e),o.extend=n,o.destroy=t.destroy,Object.defineProperty(o,"enabled",{enumerable:!0,configurable:!1,get:()=>null!==a?a:(i!==t.namespaces&&(i=t.namespaces,s=t.enabled(e)),s),set:e=>{a=e}}),"function"==typeof t.init&&t.init(o),o}function n(e,n){const r=t(this.namespace+(void 0===n?":":n)+e);return r.log=this.log,r}function r(e,t){let n=0,r=0,i=-1,s=0;for(;n<e.length;)if(r<t.length&&(t[r]===e[n]||"*"===t[r]))"*"===t[r]?(i=r,s=n,r++):(n++,r++);else{if(-1===i)return!1;r=i+1,s++,n=s}for(;r<t.length&&"*"===t[r];)r++;return r===t.length}return t.debug=t,t.default=t,t.coerce=function(e){if(e instanceof Error)return e.stack||e.message;return e},t.disable=function(){const e=[...t.names,...t.skips.map(e=>"-"+e)].join(",");return t.enable(""),e},t.enable=function(e){t.save(e),t.namespaces=e,t.names=[],t.skips=[];const n=("string"==typeof e?e:"").trim().replace(/\s+/g,",").split(",").filter(Boolean);for(const e of n)"-"===e[0]?t.skips.push(e.slice(1)):t.names.push(e)},t.enabled=function(e){for(const n of t.skips)if(r(e,n))return!1;for(const n of t.names)if(r(e,n))return!0;return!1},t.humanize=Rr(),t.destroy=function(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")},Object.keys(e).forEach(n=>{t[n]=e[n]}),t.names=[],t.skips=[],t.formatters={},t.selectColor=function(e){let n=0;for(let t=0;t<e.length;t++)n=(n<<5)-n+e.charCodeAt(t),n|=0;return t.colors[Math.abs(n)%t.colors.length]},t.enable(t.load()),t},Lr}var Kr,Vr,qr={exports:{}};function $r(){return Kr||(Kr=1,function(e,t){const n=f,r=m;t.init=function(e){e.inspectOpts={};const n=Object.keys(t.inspectOpts);for(let r=0;r<n.length;r++)e.inspectOpts[n[r]]=t.inspectOpts[n[r]]},t.log=function(...e){return process.stderr.write(r.formatWithOptions(t.inspectOpts,...e)+"\n")},t.formatArgs=function(n){const{namespace:r,useColors:i}=this;if(i){const t=this.color,i="[3"+(t<8?t:"8;5;"+t),s=` ${i};1m${r} [0m`;n[0]=s+n[0].split("\n").join("\n"+s),n.push(i+"m+"+e.exports.humanize(this.diff)+"[0m")}else n[0]=function(){if(t.inspectOpts.hideDate)return"";return(new Date).toISOString()+" "}()+r+" "+n[0]},t.save=function(e){e?process.env.DEBUG=e:delete process.env.DEBUG},t.load=function(){return process.env.DEBUG},t.useColors=function(){return"colors"in t.inspectOpts?Boolean(t.inspectOpts.colors):n.isatty(process.stderr.fd)},t.destroy=r.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."),t.colors=[6,2,3,4,5,1];try{const e=require("supports-color");e&&(e.stderr||e).level>=2&&(t.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch(e){}t.inspectOpts=Object.keys(process.env).filter(e=>/^debug_/i.test(e)).reduce((e,t)=>{const n=t.substring(6).toLowerCase().replace(/_([a-z])/g,(e,t)=>t.toUpperCase());let r=process.env[t];return r=!!/^(yes|on|true|enabled)$/i.test(r)||!/^(no|off|false|disabled)$/i.test(r)&&("null"===r?null:Number(r)),e[n]=r,e},{}),e.exports=Ur()(t);const{formatters:i}=e.exports;i.o=function(e){return this.inspectOpts.colors=this.useColors,r.inspect(e,this.inspectOpts).split("\n").map(e=>e.trim()).join(" ")},i.O=function(e){return this.inspectOpts.colors=this.useColors,r.inspect(e,this.inspectOpts)}}(qr,qr.exports)),qr.exports}function Wr(){return Vr||(Vr=1,"undefined"==typeof process||"renderer"===process.type||!0===process.browser||process.__nwjs?Br.exports=(Fr||(Fr=1,function(e,t){t.formatArgs=function(t){if(t[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+t[0]+(this.useColors?"%c ":" ")+"+"+e.exports.humanize(this.diff),!this.useColors)return;const n="color: "+this.color;t.splice(1,0,n,"color: inherit");let r=0,i=0;t[0].replace(/%[a-zA-Z%]/g,e=>{"%%"!==e&&(r++,"%c"===e&&(i=r))}),t.splice(i,0,n)},t.save=function(e){try{e?t.storage.setItem("debug",e):t.storage.removeItem("debug")}catch(e){}},t.load=function(){let e;try{e=t.storage.getItem("debug")||t.storage.getItem("DEBUG")}catch(e){}return!e&&"undefined"!=typeof process&&"env"in process&&(e=process.env.DEBUG),e},t.useColors=function(){if("undefined"!=typeof window&&window.process&&("renderer"===window.process.type||window.process.__nwjs))return!0;if("undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let e;return"undefined"!=typeof document&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||"undefined"!=typeof window&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||"undefined"!=typeof navigator&&navigator.userAgent&&(e=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(e[1],10)>=31||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)},t.storage=function(){try{return localStorage}catch(e){}}(),t.destroy=(()=>{let e=!1;return()=>{e||(e=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})(),t.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"],t.log=console.debug||console.log||(()=>{}),e.exports=Ur()(t);const{formatters:n}=e.exports;n.j=function(e){try{return JSON.stringify(e)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}}(jr,jr.exports)),jr.exports):Br.exports=$r()),Br.exports}var Yr,Jr,Xr,Hr={},zr={},Gr={},Qr={};function Zr(){if(Yr)return Qr;Yr=1,Object.defineProperty(Qr,"__esModule",{value:!0}),Qr.isBindingIdentifier=function(){const{node:e,parent:n}=this,r=this.parentPath.parent;return l(e)&&t(e,n,r)},Qr.isBlockScoped=function(){return n(this.node)},Qr.isExpression=function(){return this.isIdentifier()?this.isReferencedIdentifier():i(this.node)},Qr.isFlow=function(){const{node:e}=this;return!!s(e)||(c(e)?"type"===e.importKind||"typeof"===e.importKind:r(e)?"type"===e.exportKind:!!p(e)&&("type"===e.importKind||"typeof"===e.importKind))},Qr.isForAwaitStatement=function(){return b(this.node,{await:!0})},Qr.isGenerated=function(){return!this.isUser()},Qr.isPure=function(e){return this.scope.isPure(this.node,e)},Qr.isReferenced=function(){return m(this.node,this.parent)},Qr.isReferencedIdentifier=function(e){const{node:t,parent:n}=this;return l(t,e)?m(t,n,this.parentPath.parent):!!u(t,e)&&(!(!h(n)&&P(t.name))&&m(t,n,this.parentPath.parent))},Qr.isReferencedMemberExpression=function(){const{node:e,parent:t}=this;return d(e)&&m(e,t)},Qr.isRestProperty=function(){var e;return f(this.node)&&(null==(e=this.parentPath)?void 0:e.isObjectPattern())},Qr.isScope=function(){return y(this.node,this.parent)},Qr.isSpreadProperty=function(){var e;return f(this.node)&&(null==(e=this.parentPath)?void 0:e.isObjectExpression())},Qr.isStatement=function(){const{node:e,parent:t}=this;if(T(e)){if(x(e)){if(o(t,{left:e}))return!1;if(a(t,{init:e}))return!1}return!0}return!1},Qr.isUser=function(){var e;return!(null==(e=this.node)||!e.loc)},Qr.isVar=function(){return g(this.node)};var e=Pr();const{isBinding:t,isBlockScoped:n,isExportDeclaration:r,isExpression:i,isFlow:s,isForStatement:a,isForXStatement:o,isIdentifier:l,isImportDeclaration:c,isImportSpecifier:p,isJSXIdentifier:u,isJSXMemberExpression:h,isMemberExpression:d,isRestElement:f,isReferenced:m,isScope:y,isStatement:T,isVar:g,isVariableDeclaration:x,react:S,isForOfStatement:b}=e,{isCompatTag:P}=S;return Qr.isExistentialTypeParam=function(){throw new Error("`path.isExistentialTypeParam` has been renamed to `path.isExistsTypeAnnotation()` in Babel 7.")},Qr.isNumericLiteralTypeAnnotation=function(){throw new Error("`path.isNumericLiteralTypeAnnotation()` has been renamed to `path.isNumberLiteralTypeAnnotation()` in Babel 7.")},Qr}function ei(){if(Jr)return Gr;Jr=1,Object.defineProperty(Gr,"__esModule",{value:!0}),Gr.environmentVisitor=function(e){return f([S,e])},Gr.explode=u,Gr.isExplodedVisitor=p,Gr.merge=f,Gr.verify=h;var e=Or(),t=Zr(),n=Pr(),r=Qa();const{DEPRECATED_KEYS:i,DEPRECATED_ALIASES:s,FLIPPED_ALIAS_KEYS:a,TYPES:o,__internal__deprecationWarning:l}=n;function c(t){return t in e}function p(e){return null==e?void 0:e._exploded}function u(t){if(p(t))return t;t._exploded=!0;for(const e of Object.keys(t)){if(g(e))continue;const n=e.split("|");if(1===n.length)continue;const r=t[e];delete t[e];for(const e of n)t[e]=r}h(t),delete t.__esModule,function(e){for(const t of Object.keys(e)){if(g(t))continue;const n=e[t];"function"==typeof n&&(e[t]={enter:n})}}(t),y(t);for(const n of Object.keys(t)){if(g(n))continue;if(!c(n))continue;const r=t[n];for(const e of Object.keys(r))r[e]=T(n,r[e]);delete t[n];const i=e[n];if(null!==i)for(const e of i){null!=t[e]||(t[e]={}),x(t[e],r)}else x(t,r)}for(const e of Object.keys(t)){if(g(e))continue;let n=a[e];if(e in i){const t=i[e];l(e,t,"Visitor "),n=[t]}else if(e in s){const t=s[e];l(e,t,"Visitor "),n=a[t]}if(!n)continue;const r=t[e];delete t[e];for(const e of n){const n=t[e];n?x(n,r):t[e]=Object.assign({},r)}}for(const e of Object.keys(t))g(e)||y(t[e]);return t}function h(e){if(!e._verified){if("function"==typeof e)throw new Error("You passed `traverse()` a function when it expected a visitor object, are you sure you didn't mean `{ enter: Function }`?");for(const t of Object.keys(e)){if("enter"!==t&&"exit"!==t||d(t,e[t]),g(t))continue;if(!o.includes(t))throw new Error(`You gave us a visitor for the node type ${t} but it's not a valid type in @babel/traverse 7.28.5`);const n=e[t];if("object"==typeof n)for(const e of Object.keys(n)){if("enter"!==e&&"exit"!==e)throw new Error(`You passed \`traverse()\` a visitor object with the property ${t} that has the invalid property ${e}`);d(`${t}.${e}`,n[e])}}e._verified=!0}}function d(e,t){const n=[].concat(t);for(const t of n)if("function"!=typeof t)throw new TypeError(`Non-function found defined in ${e} with type ${typeof t}`)}function f(e,t=[],n){const r={_verified:!0,_exploded:!0};Object.defineProperty(r,"_exploded",{enumerable:!1}),Object.defineProperty(r,"_verified",{enumerable:!1});for(let i=0;i<e.length;i++){const s=u(e[i]),a=t[i];let o=s;(a||n)&&(o=m(o,a,n)),x(r,o);for(const e of Object.keys(s)){if(g(e))continue;let t=s[e];(a||n)&&(t=m(t,a,n));x(r[e]||(r[e]={}),t)}}return r}function m(e,t,n){const r={};for(const i of["enter","exit"]){let s=e[i];Array.isArray(s)&&(s=s.map(function(e){let r=e;return t&&(r=function(n){e.call(t,n,t)}),n&&(r=n(null==t?void 0:t.key,i,r)),r!==e&&(r.toString=()=>e.toString()),r}),r[i]=s)}return r}function y(e){e.enter&&!Array.isArray(e.enter)&&(e.enter=[e.enter]),e.exit&&!Array.isArray(e.exit)&&(e.exit=[e.exit])}function T(e,n){const r=t[`is${e}`],i=function(e){if(r.call(e))return n.apply(this,arguments)};return i.toString=()=>n.toString(),i}function g(e){return"_"===e[0]||("enter"===e||"exit"===e||"shouldSkip"===e||("denylist"===e||"noScope"===e||"skipKeys"===e||"blacklist"===e))}function x(e,t){for(const n of["enter","exit"])t[n]&&(e[n]=[].concat(e[n]||[],t[n]))}const S={FunctionParent(e){e.isArrowFunctionExpression()||(e.skip(),e.isMethod()&&(e.requeueComputedKeyAndDecorators?e.requeueComputedKeyAndDecorators():r.requeueComputedKeyAndDecorators.call(e)))},Property(e){e.isObjectProperty()||(e.skip(),e.requeueComputedKeyAndDecorators?e.requeueComputedKeyAndDecorators():r.requeueComputedKeyAndDecorators.call(e))}};return Gr}var ti,ni={};var ri,ii={};var si,ai={};function oi(){if(si)return ai;si=1,Object.defineProperty(ai,"__esModule",{value:!0}),ai.clear=function(){t(),n()},ai.clearPath=t,ai.clearScope=n,ai.getCachedPaths=function(t){const{parent:n,parentPath:r}=t;return e.get(n)},ai.getOrCreateCachedPaths=function(t,n){let r=e.get(t);r||e.set(t,r=new Map);return r},ai.scope=ai.path=void 0;let e=ai.path=new WeakMap;function t(){ai.path=e=new WeakMap}function n(){ai.scope=new WeakMap}return ai.scope=new WeakMap,ai}var li,ci=["decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","eval","globalThis","isFinite","isNaN","parseFloat","parseInt","undefined","unescape"],pi=["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"];function ui(){if(li)return Hr;li=1,Object.defineProperty(Hr,"__esModule",{value:!0}),Hr.default=void 0;var e=function(){if(Xr)return zr;Xr=1,Object.defineProperty(zr,"__esModule",{value:!0}),zr.default=void 0;var e=Pr(),t=e,n=Ga(),r=ei(),i=Qa();const{getAssignmentIdentifiers:s}=t,a={ReferencedIdentifier({node:e},t){e.name===t.oldName&&(e.name=t.newName)},Scope(e,t){e.scope.bindingIdentifierEquals(t.oldName,t.binding.identifier)||(e.skip(),e.isMethod()&&(e.requeueComputedKeyAndDecorators?e.requeueComputedKeyAndDecorators():i.requeueComputedKeyAndDecorators.call(e)))},ObjectProperty({node:e,scope:t},n){const{name:r}=e.key;var i;!e.shorthand||r!==n.oldName&&r!==n.newName||t.getBindingIdentifier(r)!==n.binding.identifier||(e.shorthand=!1,null!=(i=e.extra)&&i.shorthand&&(e.extra.shorthand=!1))},"AssignmentExpression|Declaration|VariableDeclarator"(e,t){if(e.isVariableDeclaration())return;const n=e.isAssignmentExpression()?s(e.node):e.getOuterBindingIdentifiers();for(const e in n)e===t.oldName&&(n[e].name=t.newName)}};return zr.default=class{constructor(e,t,n){this.newName=n,this.oldName=t,this.binding=e}maybeConvertFromExportDeclaration(t){const n=t.parentPath;if(n.isExportDeclaration()){if(n.isExportDefaultDeclaration()){const{declaration:t}=n.node;if(e.isDeclaration(t)&&!t.id)return}n.isExportAllDeclaration()||n.splitExportDeclaration()}}maybeConvertFromClassFunctionDeclaration(e){return e}maybeConvertFromClassFunctionExpression(e){return e}rename(){const{binding:t,oldName:i,newName:s}=this,{scope:o,path:l}=t,c=l.find(e=>e.isDeclaration()||e.isFunctionExpression()||e.isClassExpression());c&&c.getOuterBindingIdentifiers()[i]===t.identifier&&this.maybeConvertFromExportDeclaration(c);const p=arguments[0]||o.block,u={discriminant:!0};e.isMethod(p)&&(p.computed&&(u.key=!0),e.isObjectMethod(p)||(u.decorators=!0)),(0,n.traverseNode)(p,(0,r.explode)(a),o,this,o.path,u),arguments[0]||(o.removeOwnBinding(i),o.bindings[s]=t,this.binding.identifier.name=s),c&&(this.maybeConvertFromClassFunctionDeclaration(l),this.maybeConvertFromClassFunctionExpression(l))}},zr}(),t=no();!function(){if(ti)return ni;ti=1,Object.defineProperty(ni,"__esModule",{value:!0}),ni.default=function(e,s,a){const o=(0,n.explode)(s);if(o.enter||o.exit)throw new Error("Should not be used with enter/exit visitors.");!function e(n,s,l,c,p,u,h,d){if(!l)return;const f=d||t.NodePath.get({hub:h,parentPath:n,parent:s,container:c,listKey:u,key:p});r.setScope.call(f);const m=o[l.type];if(m){if(m.enter)for(const e of m.enter)e.call(a,f,a);if(m.exit)for(const e of m.exit)e.call(a,f,a)}if(f.shouldSkip)return;const y=i[l.type];if(null!=y&&y.length)for(const t of y){const n=l[t];if(n)if(Array.isArray(n))for(let r=0;r<n.length;r++)e(f,l,n[r],n,r,t);else e(f,l,n,l,t,null)}}(e.parentPath,e.parent,e.node,e.container,e.key,e.listKey,e.hub,e)};var e=Pr(),t=no(),n=ei(),r=Qa();const{VISITOR_KEYS:i}=e}();var n=(ri||(ri=1,Object.defineProperty(ii,"__esModule",{value:!0}),ii.default=void 0,ii.default=class{constructor({identifier:e,scope:t,path:n,kind:r}){this.identifier=void 0,this.scope=void 0,this.path=void 0,this.kind=void 0,this.constantViolations=[],this.constant=!0,this.referencePaths=[],this.referenced=!1,this.references=0,this.identifier=e,this.scope=t,this.path=n,this.kind=r,"var"!==r&&"hoisted"!==r||!function(e){const t=!e.isVariableDeclarator()||e.node.init;for(let{parentPath:n,key:r}=e;n;({parentPath:n,key:r}=n)){if(n.isFunctionParent())return!1;if("left"===r&&n.isForXStatement()||t&&"body"===r&&n.isLoop())return!0}return!1}(n)||this.reassign(n),this.clearValue()}deoptValue(){this.clearValue(),this.hasDeoptedValue=!0}setValue(e){this.hasDeoptedValue||(this.hasValue=!0,this.value=e)}clearValue(){this.hasDeoptedValue=!1,this.hasValue=!1,this.value=null}reassign(e){this.constant=!1,this.constantViolations.includes(e)||this.constantViolations.push(e)}reference(e){this.referencePaths.includes(e)||(this.referenced=!0,this.references++,this.referencePaths.push(e))}dereference(){this.references--,this.referenced=!!this.references}}),ii),r=Pr(),i=r,s=oi();const a=ci,o=pi,{assignmentExpression:l,callExpression:c,cloneNode:p,getBindingIdentifiers:u,identifier:h,isArrayExpression:d,isBinary:f,isCallExpression:m,isClass:y,isClassBody:T,isClassDeclaration:g,isExportAllDeclaration:x,isExportDefaultDeclaration:S,isExportNamedDeclaration:b,isFunctionDeclaration:P,isIdentifier:E,isImportDeclaration:v,isLiteral:A,isMemberExpression:C,isMethod:w,isModuleSpecifier:I,isNullLiteral:k,isObjectExpression:N,isProperty:O,isPureish:_,isRegExpLiteral:D,isSuper:L,isTaggedTemplateExpression:M,isTemplateLiteral:F,isThisExpression:B,isUnaryExpression:j,isVariableDeclaration:R,expressionStatement:U,matchesPattern:K,memberExpression:V,numericLiteral:q,toIdentifier:$,variableDeclaration:W,variableDeclarator:Y,isRecordExpression:J,isTupleExpression:X,isObjectProperty:H,isTopicReference:z,isMetaProperty:G,isPrivateName:Q,isExportDeclaration:Z,buildUndefinedNode:ee,sequenceExpression:te}=r;function ne(e,t){switch(null==e?void 0:e.type){default:var n;if(v(e)||Z(e))if((x(e)||b(e)||v(e))&&e.source)ne(e.source,t);else if((b(e)||v(e))&&null!=(n=e.specifiers)&&n.length)for(const n of e.specifiers)ne(n,t);else(S(e)||b(e))&&e.declaration&&ne(e.declaration,t);else I(e)?ne(e.local,t):!A(e)||k(e)||D(e)||F(e)||t.push(e.value);break;case"MemberExpression":case"OptionalMemberExpression":case"JSXMemberExpression":ne(e.object,t),ne(e.property,t);break;case"Identifier":case"JSXIdentifier":t.push(e.name);break;case"CallExpression":case"OptionalCallExpression":case"NewExpression":ne(e.callee,t);break;case"ObjectExpression":case"ObjectPattern":for(const n of e.properties)ne(n,t);break;case"SpreadElement":case"RestElement":case"UnaryExpression":case"UpdateExpression":ne(e.argument,t);break;case"ObjectProperty":case"ObjectMethod":case"ClassProperty":case"ClassMethod":case"ClassPrivateProperty":case"ClassPrivateMethod":ne(e.key,t);break;case"ThisExpression":t.push("this");break;case"Super":t.push("super");break;case"Import":case"ImportExpression":t.push("import");break;case"DoExpression":t.push("do");break;case"YieldExpression":t.push("yield"),ne(e.argument,t);break;case"AwaitExpression":t.push("await"),ne(e.argument,t);break;case"AssignmentExpression":ne(e.left,t);break;case"VariableDeclarator":case"FunctionExpression":case"FunctionDeclaration":case"ClassExpression":case"ClassDeclaration":case"PrivateName":ne(e.id,t);break;case"ParenthesizedExpression":ne(e.expression,t);break;case"MetaProperty":ne(e.meta,t),ne(e.property,t);break;case"JSXElement":ne(e.openingElement,t);break;case"JSXOpeningElement":ne(e.name,t);break;case"JSXFragment":ne(e.openingFragment,t);break;case"JSXOpeningFragment":t.push("Fragment");break;case"JSXNamespacedName":ne(e.namespace,t),ne(e.name,t)}}function re(e){e.references=Object.create(null),e.uids=Object.create(null),e.bindings=Object.create(null),e.globals=Object.create(null)}var ie=Symbol.for("should not be considered a local binding");const se={ForStatement(e){const t=e.get("init");if(t.isVar()){const{scope:n}=e;(n.getFunctionParent()||n.getProgramParent()).registerBinding("var",t)}},Declaration(e){if(e.isBlockScoped())return;if(e.isImportDeclaration())return;if(e.isExportDeclaration())return;(e.scope.getFunctionParent()||e.scope.getProgramParent()).registerDeclaration(e)},ImportDeclaration(e){e.scope.getBlockParent().registerDeclaration(e)},TSImportEqualsDeclaration(e){e.scope.getBlockParent().registerDeclaration(e)},ReferencedIdentifier(e,t){i.isTSQualifiedName(e.parent)&&e.parent.right===e.node||e.parentPath.isTSImportEqualsDeclaration()||t.references.push(e)},ForXStatement(e,t){const n=e.get("left");if(n.isPattern()||n.isIdentifier())t.constantViolations.push(e);else if(n.isVar()){const{scope:t}=e;(t.getFunctionParent()||t.getProgramParent()).registerBinding("var",n)}},ExportDeclaration:{exit(e){const{node:t,scope:n}=e;if(x(t))return;const r=t.declaration;if(g(r)||P(r)){const t=r.id;if(!t)return;const i=n.getBinding(t.name);null==i||i.reference(e)}else if(R(r))for(const t of r.declarations)for(const r of Object.keys(u(t))){const t=n.getBinding(r);null==t||t.reference(e)}}},LabeledStatement(e){e.scope.getBlockParent().registerDeclaration(e)},AssignmentExpression(e,t){t.assignments.push(e)},UpdateExpression(e,t){t.constantViolations.push(e)},UnaryExpression(e,t){"delete"===e.node.operator&&t.constantViolations.push(e)},BlockScoped(e){let t=e.scope;t.path===e&&(t=t.parent);if(t.getBlockParent().registerDeclaration(e),e.isClassDeclaration()&&e.node.id){const t=e.node.id.name;e.scope.bindings[t]=e.scope.parent.getBinding(t)}},CatchClause(e){e.scope.registerBinding("let",e)},Function(e){const t=e.get("params");for(const n of t)e.scope.registerBinding("param",n);e.isFunctionExpression()&&e.node.id&&!e.node.id[ie]&&e.scope.registerBinding("local",e.get("id"),e)},ClassExpression(e){e.node.id&&!e.node.id[ie]&&e.scope.registerBinding("local",e.get("id"),e)},TSTypeAnnotation(e){e.skip()}};let ae,oe=0;class le{constructor(e){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;const{node:t}=e,n=s.scope.get(t);if((null==n?void 0:n.path)===e)return n;s.scope.set(t,this),this.uid=oe++,this.block=t,this.path=e,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 e;let t,n=this.path;do{var r;const e="key"===n.key||"decorators"===n.listKey;n=n.parentPath,e&&n.isMethod()&&(n=n.parentPath),null!=(r=n)&&r.isScope()&&(t=n)}while(n&&!t);return null==(e=t)?void 0:e.scope}get references(){throw new Error("Scope#references is not available in Babel 8. Use Scope#referencesSet instead.")}get uids(){throw new Error("Scope#uids is not available in Babel 8. Use Scope#uidsSet instead.")}generateDeclaredUidIdentifier(e){const t=this.generateUidIdentifier(e);return this.push({id:t}),p(t)}generateUidIdentifier(e){return h(this.generateUid(e))}generateUid(e="temp"){let t;e=$(e).replace(/^_+/,"").replace(/\d+$/g,"");let n=0;do{t=`_${e}`,n>=11?t+=n-1:n>=9?t+=n-9:n>=1&&(t+=n+1),n++}while(this.hasLabel(t)||this.hasBinding(t)||this.hasGlobal(t)||this.hasReference(t));const r=this.getProgramParent();return r.references[t]=!0,r.uids[t]=!0,t}generateUidBasedOnNode(e,t){const n=[];ne(e,n);let r=n.join("$");return r=r.replace(/^_/,"")||t||"ref",this.generateUid(r.slice(0,20))}generateUidIdentifierBasedOnNode(e,t){return h(this.generateUidBasedOnNode(e,t))}isStatic(e){if(B(e)||L(e)||z(e))return!0;if(E(e)){const t=this.getBinding(e.name);return t?t.constant:this.hasBinding(e.name)}return!1}maybeGenerateMemoised(e,t){if(this.isStatic(e))return null;{const n=this.generateUidIdentifierBasedOnNode(e);return t?n:(this.push({id:n}),p(n))}}checkBlockScopedCollisions(e,t,n,r){if("param"===t)return;if("local"===e.kind)return;if("let"===t||"let"===e.kind||"const"===e.kind||"module"===e.kind||"param"===e.kind&&"const"===t)throw this.path.hub.buildError(r,`Duplicate declaration "${n}"`,TypeError)}rename(t,n){const r=this.getBinding(t);if(r){n||(n=this.generateUidIdentifier(t).name);new e.default(r,t,n).rename(arguments[2])}}dump(){const e="-".repeat(60);console.log(e);let t=this;do{console.log("#",t.block.type);for(const e of Object.keys(t.bindings)){const n=t.bindings[e];console.log(" -",e,{constant:n.constant,references:n.references,violations:n.constantViolations.length,kind:n.kind})}}while(t=t.parent);console.log(e)}hasLabel(e){return!!this.getLabel(e)}getLabel(e){return this.labels.get(e)}registerLabel(e){this.labels.set(e.node.label.name,e)}registerDeclaration(e){if(e.isLabeledStatement())this.registerLabel(e);else if(e.isFunctionDeclaration())this.registerBinding("hoisted",e.get("id"),e);else if(e.isVariableDeclaration()){const t=e.get("declarations"),{kind:n}=e.node;for(const e of t)this.registerBinding("using"===n||"await using"===n?"const":n,e)}else if(e.isClassDeclaration()){if(e.node.declare)return;this.registerBinding("let",e)}else if(e.isImportDeclaration()){const t="type"===e.node.importKind||"typeof"===e.node.importKind,n=e.get("specifiers");for(const e of n){const n=t||e.isImportSpecifier()&&("type"===e.node.importKind||"typeof"===e.node.importKind);this.registerBinding(n?"unknown":"module",e)}}else if(e.isExportDeclaration()){const t=e.get("declaration");(t.isClassDeclaration()||t.isFunctionDeclaration()||t.isVariableDeclaration())&&this.registerDeclaration(t)}else this.registerBinding("unknown",e)}buildUndefinedNode(){return ee()}registerConstantViolation(e){const t=e.getAssignmentIdentifiers();for(const r of Object.keys(t)){var n;null==(n=this.getBinding(r))||n.reassign(e)}}registerBinding(e,t,r=t){if(!e)throw new ReferenceError("no `kind`");if(t.isVariableDeclaration()){const n=t.get("declarations");for(const t of n)this.registerBinding(e,t);return}const i=this.getProgramParent(),s=t.getOuterBindingIdentifiers(!0);for(const t of Object.keys(s)){i.references[t]=!0;for(const i of s[t]){const s=this.getOwnBinding(t);if(s){if(s.identifier===i)continue;this.checkBlockScopedCollisions(s,e,t,i)}s?s.reassign(r):this.bindings[t]=new n.default({identifier:i,scope:this,path:r,kind:e})}}}addGlobal(e){this.globals[e.name]=e}hasUid(e){{let t=this;do{if(t.uids[e])return!0}while(t=t.parent);return!1}}hasGlobal(e){let t=this;do{if(t.globals[e])return!0}while(t=t.parent);return!1}hasReference(e){return!!this.getProgramParent().references[e]}isPure(e,t){if(E(e)){const n=this.getBinding(e.name);return!!n&&(!t||n.constant)}if(B(e)||G(e)||z(e)||Q(e))return!0;var n,r,s;if(y(e))return!(e.superClass&&!this.isPure(e.superClass,t))&&(!((null==(n=e.decorators)?void 0:n.length)>0)&&this.isPure(e.body,t));if(T(e)){for(const n of e.body)if(!this.isPure(n,t))return!1;return!0}if(f(e))return this.isPure(e.left,t)&&this.isPure(e.right,t);if(d(e)||X(e)){for(const n of e.elements)if(null!==n&&!this.isPure(n,t))return!1;return!0}if(N(e)||J(e)){for(const n of e.properties)if(!this.isPure(n,t))return!1;return!0}if(w(e))return!(e.computed&&!this.isPure(e.key,t))&&!((null==(r=e.decorators)?void 0:r.length)>0);if(O(e))return!(e.computed&&!this.isPure(e.key,t))&&(!((null==(s=e.decorators)?void 0:s.length)>0)&&!((H(e)||e.static)&&null!==e.value&&!this.isPure(e.value,t)));if(j(e))return this.isPure(e.argument,t);if(F(e)){for(const n of e.expressions)if(!this.isPure(n,t))return!1;return!0}return M(e)?K(e.tag,"String.raw")&&!this.hasBinding("String",{noGlobals:!0})&&this.isPure(e.quasi,t):C(e)?!e.computed&&E(e.object)&&"Symbol"===e.object.name&&E(e.property)&&"for"!==e.property.name&&!this.hasBinding("Symbol",{noGlobals:!0}):m(e)?K(e.callee,"Symbol.for")&&!this.hasBinding("Symbol",{noGlobals:!0})&&1===e.arguments.length&&i.isStringLiteral(e.arguments[0]):_(e)}setData(e,t){return this.data[e]=t}getData(e){let t=this;do{const n=t.data[e];if(null!=n)return n}while(t=t.parent)}removeData(e){let t=this;do{null!=t.data[e]&&(t.data[e]=null)}while(t=t.parent)}init(){this.inited||(this.inited=!0,this.crawl())}crawl(){const e=this.path;re(this),this.data=Object.create(null);let n=this;do{if(n.crawling)return;if(n.path.isProgram())break}while(n=n.parent);const r=n,i={references:[],constantViolations:[],assignments:[]};if(this.crawling=!0,ae||(ae=t.default.visitors.merge([{Scope(e){re(e.scope)}},se])),"Program"!==e.type){const t=ae[e.type];if(t)for(const n of t.enter)n.call(i,e,i)}e.traverse(ae,i),this.crawling=!1;for(const e of i.assignments){const t=e.getAssignmentIdentifiers();for(const n of Object.keys(t))e.scope.getBinding(n)||r.addGlobal(t[n]);e.scope.registerConstantViolation(e)}for(const e of i.references){const t=e.scope.getBinding(e.node.name);t?t.reference(e):r.addGlobal(e.node)}for(const e of i.constantViolations)e.scope.registerConstantViolation(e)}push(e){let t=this.path;t.isPattern()?t=this.getPatternParent().path:t.isBlockStatement()||t.isProgram()||(t=this.getBlockParent().path),t.isSwitchStatement()&&(t=(this.getFunctionParent()||this.getProgramParent()).path);const{init:n,unique:r,kind:i="var",id:s}=e;if(!n&&!r&&("var"===i||"let"===i)&&function(e){return e.isFunctionExpression()&&!e.node.id||e.isArrowFunctionExpression()}(t)&&m(t.parent,{callee:t.node})&&t.parent.arguments.length<=t.node.params.length&&E(s))return t.pushContainer("params",s),void t.scope.registerBinding("param",t.get("params")[t.node.params.length-1]);(t.isLoop()||t.isCatchClause()||t.isFunction())&&(t.ensureBlock(),t=t.get("body"));const a=null==e._blockHoist?2:e._blockHoist,o=`declaration:${i}:${a}`;let l=!r&&t.getData(o);if(!l){const e=W(i,[]);e._blockHoist=a,[l]=t.unshiftContainer("body",[e]),r||t.setData(o,l)}const c=Y(s,n),p=l.node.declarations.push(c);t.scope.registerBinding(i,l.get("declarations")[p-1])}getProgramParent(){let e=this;do{if(e.path.isProgram())return e}while(e=e.parent);throw new Error("Couldn't find a Program")}getFunctionParent(){let e=this;do{if(e.path.isFunctionParent())return e}while(e=e.parent);return null}getBlockParent(){let e=this;do{if(e.path.isBlockParent())return e}while(e=e.parent);throw new Error("We couldn't find a BlockStatement, For, Switch, Function, Loop or Program...")}getPatternParent(){let e=this;do{if(!e.path.isPattern())return e.getBlockParent()}while(e=e.parent.parent);throw new Error("We couldn't find a BlockStatement, For, Switch, Function, Loop or Program...")}getAllBindings(){const e=Object.create(null);let t=this;do{for(const n of Object.keys(t.bindings))n in e==!1&&(e[n]=t.bindings[n]);t=t.parent}while(t);return e}bindingIdentifierEquals(e,t){return this.getBindingIdentifier(e)===t}getBinding(e){let t,n=this;do{const i=n.getOwnBinding(e);var r;if(i){if(null==(r=t)||!r.isPattern()||"param"===i.kind||"local"===i.kind)return i}else if(!i&&"arguments"===e&&n.path.isFunction()&&!n.path.isArrowFunctionExpression())break;t=n.path}while(n=n.parent)}getOwnBinding(e){return this.bindings[e]}getBindingIdentifier(e){var t;return null==(t=this.getBinding(e))?void 0:t.identifier}getOwnBindingIdentifier(e){const t=this.bindings[e];return null==t?void 0:t.identifier}hasOwnBinding(e){return!!this.getOwnBinding(e)}hasBinding(e,t){if(!e)return!1;let n,r,i;"object"==typeof t?(n=t.noGlobals,r=t.noUids,i=t.upToScope):"boolean"==typeof t&&(n=t);let s=this;do{if(i===s)break;if(s.hasOwnBinding(e))return!0}while(s=s.parent);return!(r||!this.hasUid(e))||(!(n||!le.globals.includes(e))||!(n||!le.contextVariables.includes(e)))}parentHasBinding(e,t){var n;return null==(n=this.parent)?void 0:n.hasBinding(e,t)}moveBindingTo(e,t){const n=this.getBinding(e);n&&(n.scope.removeOwnBinding(e),n.scope=t,t.bindings[e]=n)}removeOwnBinding(e){delete this.bindings[e]}removeBinding(e){var t;null==(t=this.getBinding(e))||t.scope.removeOwnBinding(e);{let t=this;do{t.uids[e]&&(t.uids[e]=!1)}while(t=t.parent)}}hoistVariables(e=e=>this.push({id:e})){this.crawl();const t=new Set;for(const n of Object.keys(this.bindings)){const r=this.bindings[n];if(!r)continue;const{path:i}=r;if(!i.isVariableDeclarator())continue;const{parent:s,parentPath:a}=i;if("var"!==s.kind||t.has(s))continue;let o;t.add(i.parent);const c=[];for(const t of s.declarations){null!=o||(o=t.id),t.init&&c.push(l("=",t.id,t.init));const n=Object.keys(u(t,!1,!0,!0));for(const r of n)e(h(r),null!=t.init)}if(a.parentPath.isForXStatement({left:s}))a.replaceWith(o);else if(0===c.length)a.remove();else{const e=1===c.length?c[0]:te(c);a.parentPath.isForStatement({init:s})?a.replaceWith(e):a.replaceWith(U(e))}}}}return Hr.default=le,le.globals=[...a,...o],le.contextVariables=["arguments","undefined","Infinity","NaN"],le.prototype._renameFromMap=function(e,t,n,r){e[t]&&(e[n]=r,e[t]=null)},le.prototype.traverse=function(e,n,r){(0,t.default)(e,n,this,r,this.path)},le.prototype._generateUid=function(e,t){let n=e;return t>1&&(n+=t),`_${n}`},le.prototype.toArray=function(e,t,n){if(E(e)){const t=this.getBinding(e.name);if(null!=t&&t.constant&&t.path.isGenericType("Array"))return e}if(d(e))return e;if(E(e,{name:"arguments"}))return c(V(V(V(h("Array"),h("prototype")),h("slice")),h("call")),[e]);let r;const i=[e];return!0===t?r="toConsumableArray":"number"==typeof t?(i.push(q(t)),r="slicedToArray"):r="toArray",n&&(i.unshift(this.path.hub.addHelper(r)),r="maybeArrayLike"),c(this.path.hub.addHelper(r),i)},le.prototype.getAllBindingsOfKind=function(...e){const t=Object.create(null);for(const n of e){let e=this;do{for(const r of Object.keys(e.bindings)){const i=e.bindings[r];i.kind===n&&(t[r]=i)}e=e.parent}while(e)}return t},Object.defineProperties(le.prototype,{parentBlock:{configurable:!0,enumerable:!0,get(){return this.path.parent}},hub:{configurable:!0,enumerable:!0,get(){return this.path.hub}}}),Hr}var hi,di={},fi={},mi={exports:{}},yi={exports:{}};yi.exports;function Ti(){return hi||(hi=1,function(e){var t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.prototype.hasOwnProperty,s=(e,s,a,o)=>{if(s&&"object"==typeof s||"function"==typeof s)for(let l of r(s))i.call(e,l)||l===a||t(e,l,{get:()=>s[l],enumerable:!(o=n(s,l))||o.enumerable});return e},a=e=>s(t({},"__esModule",{value:!0}),e),o={};((e,n)=>{for(var r in n)t(e,r,{get:n[r],enumerable:!0})})(o,{decode:()=>I,decodeGeneratedRanges:()=>v,decodeOriginalScopes:()=>b,encode:()=>O,encodeGeneratedRanges:()=>A,encodeOriginalScopes:()=>P}),e.exports=a(o);var l=",".charCodeAt(0),c=";".charCodeAt(0),p="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",u=new Uint8Array(64),h=new Uint8Array(128);for(let e=0;e<p.length;e++){const t=p.charCodeAt(e);u[e]=t,h[t]=e}function d(e,t){let n=0,r=0,i=0;do{const t=e.next();i=h[t],n|=(31&i)<<r,r+=5}while(32&i);const s=1&n;return n>>>=1,s&&(n=-2147483648|-n),t+n}function f(e,t,n){let r=t-n;r=r<0?-r<<1|1:r<<1;do{let t=31&r;r>>>=5,r>0&&(t|=32),e.write(u[t])}while(r>0);return t}function m(e,t){return!(e.pos>=t)&&e.peek()!==l}var y=16384,T="undefined"!=typeof TextDecoder?new TextDecoder:"undefined"!=typeof Buffer?{decode:e=>Buffer.from(e.buffer,e.byteOffset,e.byteLength).toString()}:{decode(e){let t="";for(let n=0;n<e.length;n++)t+=String.fromCharCode(e[n]);return t}},g=class{constructor(){this.pos=0,this.out="",this.buffer=new Uint8Array(y)}write(e){const{buffer:t}=this;t[this.pos++]=e,this.pos===y&&(this.out+=T.decode(t),this.pos=0)}flush(){const{buffer:e,out:t,pos:n}=this;return n>0?t+T.decode(e.subarray(0,n)):t}},x=class{constructor(e){this.pos=0,this.buffer=e}next(){return this.buffer.charCodeAt(this.pos++)}peek(){return this.buffer.charCodeAt(this.pos)}indexOf(e){const{buffer:t,pos:n}=this,r=t.indexOf(e,n);return-1===r?t.length:r}},S=[];function b(e){const{length:t}=e,n=new x(e),r=[],i=[];let s=0;for(;n.pos<t;n.pos++){s=d(n,s);const e=d(n,0);if(!m(n,t)){const t=i.pop();t[2]=s,t[3]=e;continue}const a=d(n,0),o=1&d(n,0)?[s,e,0,0,a,d(n,0)]:[s,e,0,0,a];let l=S;if(m(n,t)){l=[];do{const e=d(n,0);l.push(e)}while(m(n,t))}o.vars=l,r.push(o),i.push(o)}return r}function P(e){const t=new g;for(let n=0;n<e.length;)n=E(e,n,t,[0]);return t.flush()}function E(e,t,n,r){const i=e[t],{0:s,1:a,2:o,3:c,4:p,vars:u}=i;t>0&&n.write(l),r[0]=f(n,s,r[0]),f(n,a,0),f(n,p,0),f(n,6===i.length?1:0,0),6===i.length&&f(n,i[5],0);for(const e of u)f(n,e,0);for(t++;t<e.length;){const i=e[t],{0:s,1:a}=i;if(s>o||s===o&&a>=c)break;t=E(e,t,n,r)}return n.write(l),r[0]=f(n,o,r[0]),f(n,c,0),t}function v(e){const{length:t}=e,n=new x(e),r=[],i=[];let s=0,a=0,o=0,l=0,c=0,p=0,u=0,h=0;do{const e=n.indexOf(";");let t=0;for(;n.pos<e;n.pos++){if(t=d(n,t),!m(n,e)){const e=i.pop();e[2]=s,e[3]=t;continue}const f=d(n,0),y=2&f,T=4&f;let g,x=null,b=S;if(1&f){const e=d(n,a);o=d(n,a===e?o:0),a=e,g=[s,t,0,0,e,o]}else g=[s,t,0,0];if(g.isScope=!!T,y){const e=l,t=c;l=d(n,l);const r=e===l;c=d(n,r?c:0),p=d(n,r&&t===c?p:0),x=[l,c,p]}if(g.callsite=x,m(n,e)){b=[];do{u=s,h=t;const e=d(n,0);let r;if(e<-1){r=[[d(n,0)]];for(let t=-1;t>e;t--){const e=u;u=d(n,u),h=d(n,u===e?h:0);const t=d(n,0);r.push([t,u,h])}}else r=[[e]];b.push(r)}while(m(n,e))}g.bindings=b,r.push(g),i.push(g)}s++,n.pos=e+1}while(n.pos<t);return r}function A(e){if(0===e.length)return"";const t=new g;for(let n=0;n<e.length;)n=C(e,n,t,[0,0,0,0,0,0,0]);return t.flush()}function C(e,t,n,r){const i=e[t],{0:s,1:a,2:o,3:c,isScope:p,callsite:u,bindings:h}=i;if(r[0]<s?(w(n,r[0],s),r[0]=s,r[1]=0):t>0&&n.write(l),r[1]=f(n,i[1],r[1]),f(n,(6===i.length?1:0)|(u?2:0)|(p?4:0),0),6===i.length){const{4:e,5:t}=i;e!==r[2]&&(r[3]=0),r[2]=f(n,e,r[2]),r[3]=f(n,t,r[3])}if(u){const{0:e,1:t,2:s}=i.callsite;e!==r[4]?(r[5]=0,r[6]=0):t!==r[5]&&(r[6]=0),r[4]=f(n,e,r[4]),r[5]=f(n,t,r[5]),r[6]=f(n,s,r[6])}if(h)for(const e of h){e.length>1&&f(n,-e.length,0),f(n,e[0][0],0);let t=s,r=a;for(let i=1;i<e.length;i++){const s=e[i];t=f(n,s[1],t),r=f(n,s[2],r),f(n,s[0],0)}}for(t++;t<e.length;){const i=e[t],{0:s,1:a}=i;if(s>o||s===o&&a>=c)break;t=C(e,t,n,r)}return r[0]<o?(w(n,r[0],o),r[0]=o,r[1]=0):n.write(l),r[1]=f(n,c,r[1]),t}function w(e,t,n){do{e.write(c)}while(++t<n)}function I(e){const{length:t}=e,n=new x(e),r=[];let i=0,s=0,a=0,o=0,l=0;do{const e=n.indexOf(";"),t=[];let c=!0,p=0;for(i=0;n.pos<e;){let r;i=d(n,i),i<p&&(c=!1),p=i,m(n,e)?(s=d(n,s),a=d(n,a),o=d(n,o),m(n,e)?(l=d(n,l),r=[i,s,a,o,l]):r=[i,s,a,o]):r=[i],t.push(r),n.pos++}c||k(t),r.push(t),n.pos=e+1}while(n.pos<=t);return r}function k(e){e.sort(N)}function N(e,t){return e[0]-t[0]}function O(e){const t=new g;let n=0,r=0,i=0,s=0;for(let a=0;a<e.length;a++){const o=e[a];if(a>0&&t.write(c),0===o.length)continue;let p=0;for(let e=0;e<o.length;e++){const a=o[e];e>0&&t.write(l),p=f(t,a[0],p),1!==a.length&&(n=f(t,a[1],n),r=f(t,a[2],r),i=f(t,a[3],i),4!==a.length&&(s=f(t,a[4],s)))}}return t.flush()}}(e=yi),e.exports="default"in(t=e).exports?t.exports.default:t.exports),yi.exports;var e,t}var gi,xi={exports:{}},Si={exports:{}};Si.exports;function bi(){return gi||(gi=1,Si.exports=function(){const e=/^[\w+.-]+:\/\//,t=/^([\w+.-]+:)\/\/([^@/#?]*@)?([^:/#?]*)(:\d+)?(\/[^#?]*)?(\?[^#]*)?(#.*)?/,n=/^file:(?:\/\/((?![a-z]:)[^/#?]*)?)?(\/?[^#?]*)(\?[^#]*)?(#.*)?/i;function r(t){return e.test(t)}function i(e){return e.startsWith("//")}function s(e){return e.startsWith("/")}function a(e){return e.startsWith("file:")}function o(e){return/^[.?#]/.test(e)}function l(e){const n=t.exec(e);return p(n[1],n[2]||"",n[3],n[4]||"",n[5]||"/",n[6]||"",n[7]||"")}function c(e){const t=n.exec(e),r=t[2];return p("file:","",t[1]||"","",s(r)?r:"/"+r,t[3]||"",t[4]||"")}function p(e,t,n,r,i,s,a){return{scheme:e,user:t,host:n,port:r,path:i,query:s,hash:a,type:7}}function u(e){if(i(e)){const t=l("http:"+e);return t.scheme="",t.type=6,t}if(s(e)){const t=l("http://foo.com"+e);return t.scheme="",t.host="",t.type=5,t}if(a(e))return c(e);if(r(e))return l(e);const t=l("http://foo.com/"+e);return t.scheme="",t.host="",t.type=e?e.startsWith("?")?3:e.startsWith("#")?2:4:1,t}function h(e){if(e.endsWith("/.."))return e;const t=e.lastIndexOf("/");return e.slice(0,t+1)}function d(e,t){f(t,t.type),"/"===e.path?e.path=t.path:e.path=h(t.path)+e.path}function f(e,t){const n=t<=4,r=e.path.split("/");let i=1,s=0,a=!1;for(let e=1;e<r.length;e++){const t=r[e];t?(a=!1,"."!==t&&(".."!==t?(r[i++]=t,s++):s?(a=!0,s--,i--):n&&(r[i++]=t))):a=!0}let o="";for(let e=1;e<i;e++)o+="/"+r[e];(!o||a&&!o.endsWith("/.."))&&(o+="/"),e.path=o}function m(e,t){if(!e&&!t)return"";const n=u(e);let r=n.type;if(t&&7!==r){const e=u(t),i=e.type;switch(r){case 1:n.hash=e.hash;case 2:n.query=e.query;case 3:case 4:d(n,e);case 5:n.user=e.user,n.host=e.host,n.port=e.port;case 6:n.scheme=e.scheme}i>r&&(r=i)}f(n,r);const i=n.query+n.hash;switch(r){case 2:case 3:return i;case 4:{const r=n.path.slice(1);return r?o(t||e)&&!o(r)?"./"+r+i:r+i:i||"."}case 5:return n.path+i;default:return n.scheme+"//"+n.user+n.host+n.port+n.path+i}}return m}()),Si.exports}var Pi;xi.exports;function Ei(){return Pi||(Pi=1,function(e,t,n){var r=Object.create,i=Object.defineProperty,s=Object.getOwnPropertyDescriptor,a=Object.getOwnPropertyNames,o=Object.getPrototypeOf,l=Object.prototype.hasOwnProperty,c=(e,t)=>function(){return t||(0,e[a(e)[0]])((t={exports:{}}).exports,t),t.exports},p=(e,t)=>{for(var n in t)i(e,n,{get:t[n],enumerable:!0})},u=(e,t,n,r)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let o of a(t))l.call(e,o)||o===n||i(e,o,{get:()=>t[o],enumerable:!(r=s(t,o))||r.enumerable});return e},h=(e,t,n)=>(n=null!=e?r(o(e)):{},u(e&&e.__esModule?n:i(n,"default",{value:e,enumerable:!0}),e)),d=e=>u(i({},"__esModule",{value:!0}),e),f=c({"umd:@jridgewell/sourcemap-codec"(e,t){t.exports=n}}),m=c({"umd:@jridgewell/resolve-uri"(e,n){n.exports=t}}),y={};p(y,{AnyMap:()=>K,FlattenMap:()=>K,GREATEST_LOWER_BOUND:()=>H,LEAST_UPPER_BOUND:()=>X,TraceMap:()=>z,allGeneratedPositionsFor:()=>re,decodedMap:()=>ce,decodedMappings:()=>Z,eachMapping:()=>ie,encodedMap:()=>pe,encodedMappings:()=>Q,generatedPositionFor:()=>ne,isIgnored:()=>oe,originalPositionFor:()=>te,presortedDecodedMap:()=>le,sourceContentFor:()=>ae,traceSegment:()=>ee}),e.exports=d(y);var T=h(f()),g=h(m());function x(e){if(!e)return"";const t=e.lastIndexOf("/");return e.slice(0,t+1)}function S(e,t){const n=x(e),r=t?t+"/":"";return e=>(0,g.default)(r+(e||""),n)}var b=0,P=1,E=2,v=3,A=4,C=1,w=2;function I(e,t){const n=k(e,0);if(n===e.length)return e;t||(e=e.slice());for(let r=n;r<e.length;r=k(e,r+1))e[r]=O(e[r],t);return e}function k(e,t){for(let n=t;n<e.length;n++)if(!N(e[n]))return n;return e.length}function N(e){for(let t=1;t<e.length;t++)if(e[t][b]<e[t-1][b])return!1;return!0}function O(e,t){return t||(e=e.slice()),e.sort(_)}function _(e,t){return e[b]-t[b]}function D(e,t){const n=t.map(()=>[]);for(let t=0;t<e.length;t++){const r=e[t];for(let e=0;e<r.length;e++){const i=r[e];if(1===i.length)continue;const s=i[P],a=i[E],o=i[v],l=n[s];(l[a]||(l[a]=[])).push([o,t,i[b]])}}for(let e=0;e<n.length;e++){const t=n[e];for(let e=0;e<t.length;e++){const n=t[e];n&&n.sort(_)}}return n}var L=!1;function M(e,t,n,r){for(;n<=r;){const i=n+(r-n>>1),s=e[i][b]-t;if(0===s)return L=!0,i;s<0?n=i+1:r=i-1}return L=!1,n-1}function F(e,t,n){for(let r=n+1;r<e.length&&e[r][b]===t;n=r++);return n}function B(e,t,n){for(let r=n-1;r>=0&&e[r][b]===t;n=r--);return n}function j(){return{lastKey:-1,lastNeedle:-1,lastIndex:-1}}function R(e,t,n,r){const{lastKey:i,lastNeedle:s,lastIndex:a}=n;let o=0,l=e.length-1;if(r===i){if(t===s)return L=-1!==a&&e[a][b]===t,a;t>=s?o=-1===a?0:a:l=a}return n.lastKey=r,n.lastNeedle=t,n.lastIndex=M(e,t,o,l)}function U(e){return"string"==typeof e?JSON.parse(e):e}var K=function(e,t){const n=U(e);if(!("sections"in n))return new z(n,t);const r=[],i=[],s=[],a=[],o=[];return V(n,t,r,i,s,a,o,0,0,1/0,1/0),le({version:3,file:n.file,names:a,sources:i,sourcesContent:s,mappings:r,ignoreList:o})};function V(e,t,n,r,i,s,a,o,l,c,p){const{sections:u}=e;for(let e=0;e<u.length;e++){const{map:h,offset:d}=u[e];let f=c,m=p;if(e+1<u.length){const t=u[e+1].offset;f=Math.min(c,o+t.line),f===c?m=Math.min(p,l+t.column):f<c&&(m=l+t.column)}q(h,t,n,r,i,s,a,o+d.line,l+d.column,f,m)}}function q(e,t,n,r,i,s,a,o,l,c,p){const u=U(e);if("sections"in u)return V(...arguments);const h=new z(u,t),d=r.length,f=s.length,m=Z(h),{resolvedSources:y,sourcesContent:T,ignoreList:g}=h;if($(r,y),$(s,h.names),T)$(i,T);else for(let e=0;e<y.length;e++)i.push(null);if(g)for(let e=0;e<g.length;e++)a.push(g[e]+d);for(let e=0;e<m.length;e++){const t=o+e;if(t>c)return;const r=W(n,t),i=0===e?l:0,s=m[e];for(let e=0;e<s.length;e++){const n=s[e],a=i+n[b];if(t===c&&a>=p)return;if(1===n.length){r.push([a]);continue}const o=d+n[P],l=n[E],u=n[v];r.push(4===n.length?[a,o,l,u]:[a,o,l,u,f+n[A]])}}}function $(e,t){for(let n=0;n<t.length;n++)e.push(t[n])}function W(e,t){for(let n=e.length;n<=t;n++)e[n]=[];return e[t]}var Y="`line` must be greater than 0 (lines start at line 1)",J="`column` must be greater than or equal to 0 (columns start at column 0)",X=-1,H=1,z=class{constructor(e,t){const n="string"==typeof e;if(!n&&e._decodedMemo)return e;const r=U(e),{version:i,file:s,names:a,sourceRoot:o,sources:l,sourcesContent:c}=r;this.version=i,this.file=s,this.names=a||[],this.sourceRoot=o,this.sources=l,this.sourcesContent=c,this.ignoreList=r.ignoreList||r.x_google_ignoreList||void 0;const p=S(t,o);this.resolvedSources=l.map(p);const{mappings:u}=r;if("string"==typeof u)this._encoded=u,this._decoded=void 0;else{if(!Array.isArray(u))throw r.sections?new Error("TraceMap passed sectioned source map, please use FlattenMap export instead"):new Error(`invalid source map: ${JSON.stringify(r)}`);this._encoded=void 0,this._decoded=I(u,n)}this._decodedMemo=j(),this._bySources=void 0,this._bySourceMemos=void 0}};function G(e){return e}function Q(e){var t,n;return null!=(n=(t=G(e))._encoded)?n:t._encoded=(0,T.encode)(G(e)._decoded)}function Z(e){var t;return(t=G(e))._decoded||(t._decoded=(0,T.decode)(G(e)._encoded))}function ee(e,t,n){const r=Z(e);if(t>=r.length)return null;const i=r[t],s=fe(i,G(e)._decodedMemo,t,n,H);return-1===s?null:i[s]}function te(e,t){let{line:n,column:r,bias:i}=t;if(n--,n<0)throw new Error(Y);if(r<0)throw new Error(J);const s=Z(e);if(n>=s.length)return he(null,null,null,null);const a=s[n],o=fe(a,G(e)._decodedMemo,n,r,i||H);if(-1===o)return he(null,null,null,null);const l=a[o];if(1===l.length)return he(null,null,null,null);const{names:c,resolvedSources:p}=e;return he(p[l[P]],l[E]+1,l[v],5===l.length?c[l[A]]:null)}function ne(e,t){const{source:n,line:r,column:i,bias:s}=t;return ye(e,n,r,i,s||H,!1)}function re(e,t){const{source:n,line:r,column:i,bias:s}=t;return ye(e,n,r,i,s||X,!0)}function ie(e,t){const n=Z(e),{names:r,resolvedSources:i}=e;for(let e=0;e<n.length;e++){const s=n[e];for(let n=0;n<s.length;n++){const a=s[n],o=e+1,l=a[0];let c=null,p=null,u=null,h=null;1!==a.length&&(c=i[a[1]],p=a[2]+1,u=a[3]),5===a.length&&(h=r[a[4]]),t({generatedLine:o,generatedColumn:l,source:c,originalLine:p,originalColumn:u,name:h})}}}function se(e,t){const{sources:n,resolvedSources:r}=e;let i=n.indexOf(t);return-1===i&&(i=r.indexOf(t)),i}function ae(e,t){const{sourcesContent:n}=e;if(null==n)return null;const r=se(e,t);return-1===r?null:n[r]}function oe(e,t){const{ignoreList:n}=e;if(null==n)return!1;const r=se(e,t);return-1!==r&&n.includes(r)}function le(e,t){const n=new z(ue(e,[]),t);return G(n)._decoded=e.mappings,n}function ce(e){return ue(e,Z(e))}function pe(e){return ue(e,Q(e))}function ue(e,t){return{version:e.version,file:e.file,names:e.names,sourceRoot:e.sourceRoot,sources:e.sources,sourcesContent:e.sourcesContent,mappings:t,ignoreList:e.ignoreList||e.x_google_ignoreList}}function he(e,t,n,r){return{source:e,line:t,column:n,name:r}}function de(e,t){return{line:e,column:t}}function fe(e,t,n,r,i){let s=R(e,r,t,n);return L?s=(i===X?F:B)(e,r,s):i===X&&s++,-1===s||s===e.length?-1:s}function me(e,t,n,r,i){let s=fe(e,t,n,r,H);if(L||i!==X||s++,-1===s||s===e.length)return[];const a=L?r:e[s][b];L||(s=B(e,a,s));const o=F(e,a,s),l=[];for(;s<=o;s++){const t=e[s];l.push(de(t[C]+1,t[w]))}return l}function ye(e,t,n,r,i,s){var a,o;if(--n<0)throw new Error(Y);if(r<0)throw new Error(J);const{sources:l,resolvedSources:c}=e;let p=l.indexOf(t);if(-1===p&&(p=c.indexOf(t)),-1===p)return s?[]:de(null,null);const u=(a=G(e))._bySourceMemos||(a._bySourceMemos=l.map(j)),h=((o=G(e))._bySources||(o._bySources=D(Z(e),u)))[p][n];if(null==h)return s?[]:de(null,null);const d=u[p];if(s)return me(h,d,n,r,i);const f=fe(h,d,n,r,i);if(-1===f)return de(null,null);const m=h[f];return de(m[C]+1,m[w])}}(e=xi,bi(),Ti()),e.exports="default"in(t=e).exports?t.exports.default:t.exports),xi.exports;var e,t}var vi,Ai;mi.exports;function Ci(){return vi||(vi=1,function(e,t,n){var r=Object.create,i=Object.defineProperty,s=Object.getOwnPropertyDescriptor,a=Object.getOwnPropertyNames,o=Object.getPrototypeOf,l=Object.prototype.hasOwnProperty,c=(e,t)=>function(){return t||(0,e[a(e)[0]])((t={exports:{}}).exports,t),t.exports},p=(e,t)=>{for(var n in t)i(e,n,{get:t[n],enumerable:!0})},u=(e,t,n,r)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let o of a(t))l.call(e,o)||o===n||i(e,o,{get:()=>t[o],enumerable:!(r=s(t,o))||r.enumerable});return e},h=(e,t,n)=>(n=null!=e?r(o(e)):{},u(e&&e.__esModule?n:i(n,"default",{value:e,enumerable:!0}),e)),d=e=>u(i({},"__esModule",{value:!0}),e),f=c({"umd:@jridgewell/sourcemap-codec"(e,n){n.exports=t}}),m=c({"umd:@jridgewell/trace-mapping"(e,t){t.exports=n}}),y={};p(y,{GenMapping:()=>N,addMapping:()=>D,addSegment:()=>_,allMappings:()=>K,fromMap:()=>U,maybeAddMapping:()=>M,maybeAddSegment:()=>L,setIgnore:()=>B,setSourceContent:()=>F,toDecodedMap:()=>j,toEncodedMap:()=>R}),e.exports=d(y);var T=class{constructor(){this._indexes={__proto__:null},this.array=[]}};function g(e){return e}function x(e,t){return g(e)._indexes[t]}function S(e,t){const n=x(e,t);if(void 0!==n)return n;const{array:r,_indexes:i}=g(e),s=r.push(t);return i[t]=s-1}function b(e,t){const n=x(e,t);if(void 0===n)return;const{array:r,_indexes:i}=g(e);for(let e=n+1;e<r.length;e++){const t=r[e];r[e-1]=t,i[t]--}i[t]=void 0,r.pop()}var P=h(f()),E=h(m()),v=0,A=1,C=2,w=3,I=4,k=-1,N=class{constructor({file:e,sourceRoot:t}={}){this._names=new T,this._sources=new T,this._sourcesContent=[],this._mappings=[],this.file=e,this.sourceRoot=t,this._ignoreList=new T}};function O(e){return e}function _(e,t,n,r,i,s,a,o){return V(!1,e,t,n,r,i,s,a,o)}function D(e,t){return z(!1,e,t)}var L=(e,t,n,r,i,s,a,o)=>V(!0,e,t,n,r,i,s,a,o),M=(e,t)=>z(!0,e,t);function F(e,t,n){const{_sources:r,_sourcesContent:i}=O(e);i[S(r,t)]=n}function B(e,t,n=!0){const{_sources:r,_sourcesContent:i,_ignoreList:s}=O(e),a=S(r,t);a===i.length&&(i[a]=null),n?S(s,a):b(s,a)}function j(e){const{_mappings:t,_sources:n,_sourcesContent:r,_names:i,_ignoreList:s}=O(e);return Y(t),{version:3,file:e.file||void 0,names:i.array,sourceRoot:e.sourceRoot||void 0,sources:n.array,sourcesContent:r,mappings:t,ignoreList:s.array}}function R(e){const t=j(e);return Object.assign({},t,{mappings:(0,P.encode)(t.mappings)})}function U(e){const t=new E.TraceMap(e),n=new N({file:t.file,sourceRoot:t.sourceRoot});return J(O(n)._names,t.names),J(O(n)._sources,t.sources),O(n)._sourcesContent=t.sourcesContent||t.sources.map(()=>null),O(n)._mappings=(0,E.decodedMappings)(t),t.ignoreList&&J(O(n)._ignoreList,t.ignoreList),n}function K(e){const t=[],{_mappings:n,_sources:r,_names:i}=O(e);for(let e=0;e<n.length;e++){const s=n[e];for(let n=0;n<s.length;n++){const a=s[n],o={line:e+1,column:a[v]};let l,c,p;1!==a.length&&(l=r.array[a[A]],c={line:a[C]+1,column:a[w]},5===a.length&&(p=i.array[a[I]])),t.push({generated:o,source:l,original:c,name:p})}}return t}function V(e,t,n,r,i,s,a,o,l){const{_mappings:c,_sources:p,_sourcesContent:u,_names:h}=O(t),d=q(c,n),f=$(d,r);if(!i){if(e&&X(d,f))return;return W(d,f,[r])}const m=S(p,i),y=o?S(h,o):k;if(m===u.length&&(u[m]=null!=l?l:null),!e||!H(d,f,m,s,a,y))return W(d,f,o?[r,m,s,a,y]:[r,m,s,a])}function q(e,t){for(let n=e.length;n<=t;n++)e[n]=[];return e[t]}function $(e,t){let n=e.length;for(let r=n-1;r>=0&&!(t>=e[r][v]);n=r--);return n}function W(e,t,n){for(let n=e.length;n>t;n--)e[n]=e[n-1];e[t]=n}function Y(e){const{length:t}=e;let n=t;for(let t=n-1;t>=0&&!(e[t].length>0);n=t,t--);n<t&&(e.length=n)}function J(e,t){for(let n=0;n<t.length;n++)S(e,t[n])}function X(e,t){return 0===t||1===e[t-1].length}function H(e,t,n,r,i,s){if(0===t)return!1;const a=e[t-1];return 1!==a.length&&n===a[A]&&r===a[C]&&i===a[w]&&s===(5===a.length?a[I]:k)}function z(e,t,n){const{generated:r,source:i,original:s,name:a,content:o}=n;return i?V(e,t,r.line-1,r.column,i,s.line-1,s.column,a,o):V(e,t,r.line-1,r.column,null,null,null,null,null)}}(e=mi,Ti(),Ei()),e.exports="default"in(t=e).exports?t.exports.default:t.exports),mi.exports;var e,t}var wi,Ii={},ki={};var Ni,Oi={},_i={};function Di(){if(Ni)return _i;Ni=1,Object.defineProperty(_i,"__esModule",{value:!0}),_i.nodes=void 0;var e=Pr();const{FLIPPED_ALIAS_KEYS:t,isArrayExpression:n,isAssignmentExpression:r,isBinary:i,isBlockStatement:s,isCallExpression:a,isFunction:o,isIdentifier:l,isLiteral:c,isMemberExpression:p,isObjectExpression:u,isOptionalCallExpression:h,isOptionalMemberExpression:d,isStringLiteral:f}=e;function m(e,t){return e?(p(e)||d(e)?(m(e.object,t),e.computed&&m(e.property,t)):i(e)||r(e)?(m(e.left,t),m(e.right,t)):a(e)||h(e)?(t.hasCall=!0,m(e.callee,t)):o(e)?t.hasFunction=!0:l(e)&&(t.hasHelper=t.hasHelper||e.callee&&T(e.callee)),t):t}function y(e){return m(e,{hasCall:!1,hasFunction:!1,hasHelper:!1})}function T(e){return!!e&&(p(e)?T(e.object)||T(e.property):l(e)?"require"===e.name||95===e.name.charCodeAt(0):a(e)?T(e.callee):!(!i(e)&&!r(e))&&(l(e.left)&&T(e.left)||T(e.right)))}function g(e){return c(e)||u(e)||n(e)||l(e)||p(e)}const x=_i.nodes={AssignmentExpression(e){const t=y(e.right);return t.hasCall&&t.hasHelper||t.hasFunction?t.hasFunction?3:2:0},SwitchCase:(e,t)=>(e.consequent.length||t.cases[0]===e?1:0)|(e.consequent.length||t.cases[t.cases.length-1]!==e?0:2),LogicalExpression:e=>o(e.left)||o(e.right)?2:0,Literal:e=>f(e)&&"use strict"===e.value?2:0,CallExpression:e=>o(e.callee)||T(e)?3:0,OptionalCallExpression:e=>o(e.callee)?3:0,VariableDeclaration(e){for(let t=0;t<e.declarations.length;t++){const n=e.declarations[t];let r=T(n.id)&&!g(n.init);if(!r&&n.init){const e=y(n.init);r=T(n.init)&&e.hasCall||e.hasFunction}if(r)return 3}return 0},IfStatement:e=>s(e.consequent)?3:0};return x.ObjectProperty=x.ObjectTypeProperty=x.ObjectMethod=function(e,t){return t.properties[0]===e?1:0},x.ObjectTypeCallProperty=function(e,t){var n;return t.callProperties[0]!==e||null!=(n=t.properties)&&n.length?0:1},x.ObjectTypeIndexer=function(e,t){var n,r;return t.indexers[0]!==e||null!=(n=t.properties)&&n.length||null!=(r=t.callProperties)&&r.length?0:1},x.ObjectTypeInternalSlot=function(e,t){var n,r,i;return t.internalSlots[0]!==e||null!=(n=t.properties)&&n.length||null!=(r=t.callProperties)&&r.length||null!=(i=t.indexers)&&i.length?0:1},[["Function",!0],["Class",!0],["Loop",!0],["LabeledStatement",!0],["SwitchStatement",!0],["TryStatement",!0]].forEach(function([e,n]){[e].concat(t[e]||[]).forEach(function(e){const t=n?3:0;x[e]=()=>t})}),_i}var Li,Mi,Fi={};function Bi(){if(Mi)return Oi;Mi=1,Object.defineProperty(Oi,"__esModule",{value:!0}),Oi.TokenContext=void 0,Oi.isLastChild=function(e,t){const n=i[e.type];for(let r=n.length-1;r>=0;r--){const i=e[n[r]];if(i===t)return!0;if(Array.isArray(i)){let e=i.length-1;for(;e>=0&&null===i[e];)e--;return e>=0&&i[e]===t}if(i)return!1}return!1},Oi.needsParens=function(e,t,n,r){var i;if(!t)return!1;if(c(t)&&t.callee===e&&f(e))return!0;if(a(t))return!(y(e)||s(e)&&y(e.callee)||p(e));return(null==(i=h.get(e.type))?void 0:i(e,t,n,r))||!1},Oi.needsWhitespace=m,Oi.needsWhitespaceAfter=function(e,t){return m(e,t,2)},Oi.needsWhitespaceBefore=function(e,t){return m(e,t,1)};var e=Di(),t=function(){if(Li)return Fi;Li=1,Object.defineProperty(Fi,"__esModule",{value:!0}),Fi.AssignmentExpression=function(e,t,n){return!(!T(n)||!l(e.left))||S(e,t)},Fi.Binary=g,Fi.BinaryExpression=function(e,n,r){return"in"===e.operator&&Boolean(r&t.TokenContext.forInOrInitHeadAccumulate)},Fi.ClassExpression=function(e,n,r){return Boolean(r&(t.TokenContext.expressionStatement|t.TokenContext.exportDefault))},Fi.ArrowFunctionExpression=Fi.ConditionalExpression=S,Fi.DoExpression=function(e,n,r){return!e.async&&Boolean(r&t.TokenContext.expressionStatement)},Fi.FunctionExpression=function(e,n,r){return Boolean(r&(t.TokenContext.expressionStatement|t.TokenContext.exportDefault))},Fi.FunctionTypeAnnotation=function(e,n,r){const i=n.type;return"UnionTypeAnnotation"===i||"IntersectionTypeAnnotation"===i||"ArrayTypeAnnotation"===i||Boolean(r&t.TokenContext.arrowFlowReturnType)},Fi.Identifier=function(e,n,r,i){var a;const l=n.type;if(null!=(a=e.extra)&&a.parenthesized&&"AssignmentExpression"===l&&n.left===e){const e=n.right.type;if(("FunctionExpression"===e||"ClassExpression"===e)&&null==n.right.id)return!0}return(!i||i(e)===e.name)&&("let"===e.name?!!((o(n,{object:e,computed:!0})||c(n,{object:e,computed:!0,optional:!1}))&&r&(t.TokenContext.expressionStatement|t.TokenContext.forInitHead|t.TokenContext.forInHead))||Boolean(r&t.TokenContext.forOfHead):"async"===e.name&&s(n,{left:e,await:!1}))},Fi.LogicalExpression=function(e,t){const n=t.type;if(f(n))return!0;if("LogicalExpression"!==n)return!1;switch(e.operator){case"||":return"??"===t.operator||"&&"===t.operator;case"&&":return"??"===t.operator;case"??":return"??"!==t.operator}},Fi.NullableTypeAnnotation=function(e,t){return n(t)},Fi.ObjectExpression=function(e,t,n){return T(n)},Fi.OptionalIndexedAccessType=function(e,t){return a(t)&&t.objectType===e},Fi.OptionalCallExpression=Fi.OptionalMemberExpression=function(e,t){return i(t)&&t.callee===e||o(t)&&t.object===e},Fi.SequenceExpression=function(e,t){const n=t.type;return!("SequenceExpression"===n||"ParenthesizedExpression"===n||"MemberExpression"===n&&t.property===e||"OptionalMemberExpression"===n&&t.property===e||"TemplateLiteral"===n)&&("ClassDeclaration"===n||("ForOfStatement"===n?t.right===e:"ExportDefaultDeclaration"===n||!u(t)))},Fi.TSSatisfiesExpression=Fi.TSAsExpression=function(e,t){return("AssignmentExpression"===t.type||"AssignmentPattern"===t.type)&&t.left===e||("BinaryExpression"===t.type&&("|"===t.operator||"&"===t.operator)&&e===t.left||g(e,t))},Fi.TSConditionalType=function(e,t){const n=t.type;return"TSArrayType"===n||"TSIndexedAccessType"===n&&t.objectType===e||"TSOptionalType"===n||"TSTypeOperator"===n||"TSTypeParameter"===n||(("TSIntersectionType"===n||"TSUnionType"===n)&&t.types[0]===e||"TSConditionalType"===n&&(t.checkType===e||t.extendsType===e))},Fi.TSConstructorType=Fi.TSFunctionType=function(e,t){const n=t.type;return"TSIntersectionType"===n||"TSUnionType"===n||"TSTypeOperator"===n||"TSOptionalType"===n||"TSArrayType"===n||"TSIndexedAccessType"===n&&t.objectType===e||"TSConditionalType"===n&&(t.checkType===e||t.extendsType===e)},Fi.TSInferType=function(e,t){const n=t.type;return"TSArrayType"===n||"TSIndexedAccessType"===n&&t.objectType===e||"TSOptionalType"===n||!(!e.typeParameter.constraint||"TSIntersectionType"!==n&&"TSUnionType"!==n||t.types[0]!==e)},Fi.TSInstantiationExpression=function(e,t){const n=t.type;return("CallExpression"===n||"OptionalCallExpression"===n||"NewExpression"===n||"TSInstantiationExpression"===n)&&!!t.typeParameters},Fi.TSIntersectionType=function(e,t){const n=t.type;return"TSTypeOperator"===n||"TSArrayType"===n||"TSIndexedAccessType"===n&&t.objectType===e||"TSOptionalType"===n},Fi.UnaryLike=Fi.TSTypeAssertion=x,Fi.TSTypeOperator=function(e,t){const n=t.type;return"TSArrayType"===n||"TSIndexedAccessType"===n&&t.objectType===e||"TSOptionalType"===n},Fi.TSUnionType=function(e,t){const n=t.type;return"TSIntersectionType"===n||"TSTypeOperator"===n||"TSArrayType"===n||"TSIndexedAccessType"===n&&t.objectType===e||"TSOptionalType"===n},Fi.IntersectionTypeAnnotation=Fi.UnionTypeAnnotation=function(e,t){const n=t.type;return"ArrayTypeAnnotation"===n||"NullableTypeAnnotation"===n||"IntersectionTypeAnnotation"===n||"UnionTypeAnnotation"===n},Fi.UpdateExpression=function(e,t){return y(e,t)||m(e,t)},Fi.AwaitExpression=Fi.YieldExpression=function(e,t){const n=t.type;return"BinaryExpression"===n||"LogicalExpression"===n||"UnaryExpression"===n||"SpreadElement"===n||y(e,t)||"AwaitExpression"===n&&p(e)||"ConditionalExpression"===n&&e===t.test||m(e,t)||f(n)};var e=Pr(),t=Bi();const{isArrayTypeAnnotation:n,isBinaryExpression:r,isCallExpression:i,isForOfStatement:s,isIndexedAccessType:a,isMemberExpression:o,isObjectPattern:l,isOptionalMemberExpression:c,isYieldExpression:p,isStatement:u}=e,h=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 d(e,t){return"BinaryExpression"===t||"LogicalExpression"===t?h.get(e.operator):"TSAsExpression"===t||"TSSatisfiesExpression"===t?h.get("in"):void 0}function f(e){return"TSAsExpression"===e||"TSSatisfiesExpression"===e||"TSTypeAssertion"===e}const m=(e,t)=>{const n=t.type;return("ClassDeclaration"===n||"ClassExpression"===n)&&t.superClass===e},y=(e,t)=>{const n=t.type;return("MemberExpression"===n||"OptionalMemberExpression"===n)&&t.object===e||("CallExpression"===n||"OptionalCallExpression"===n||"NewExpression"===n)&&t.callee===e||"TaggedTemplateExpression"===n&&t.tag===e||"TSNonNullExpression"===n};function T(e){return Boolean(e&(t.TokenContext.expressionStatement|t.TokenContext.arrowBody))}function g(e,t){const n=t.type;if("BinaryExpression"===e.type&&"**"===e.operator&&"BinaryExpression"===n&&"**"===t.operator)return t.left===e;if(m(e,t))return!0;if(y(e,t)||"UnaryExpression"===n||"SpreadElement"===n||"AwaitExpression"===n)return!0;const r=d(t,n);if(null!=r){const i=d(e,e.type);if(r===i&&"BinaryExpression"===n&&t.right===e||r>i)return!0}}function x(e,t){return y(e,t)||r(t)&&"**"===t.operator&&t.left===e||m(e,t)}function S(e,t){const n=t.type;return!!("UnaryExpression"===n||"SpreadElement"===n||"BinaryExpression"===n||"LogicalExpression"===n||"ConditionalExpression"===n&&t.test===e||"AwaitExpression"===n||f(n))||x(e,t)}return Fi}(),n=Pr();const{FLIPPED_ALIAS_KEYS:r,VISITOR_KEYS:i,isCallExpression:s,isDecorator:a,isExpressionStatement:o,isMemberExpression:l,isNewExpression:c,isParenthesizedExpression:p}=n;function u(e){const t=new Map;function n(e,n){const r=t.get(e);t.set(e,r?function(e,t,i,s){var a;return null!=(a=r(e,t,i,s))?a:n(e,t,i,s)}:n)}for(const t of Object.keys(e)){const i=r[t];if(i)for(const r of i)n(r,e[t]);else n(t,e[t])}return t}Oi.TokenContext={normal:0,expressionStatement:1,arrowBody:2,exportDefault:4,arrowFlowReturnType:8,forInitHead:16,forInHead:32,forOfHead:64,forInOrInitHeadAccumulate:128,forInOrInitHeadAccumulatePassThroughMask:128};const h=u(t),d=u(e.nodes);function f(e){return!!s(e)||l(e)&&f(e.object)}function m(e,t,n){var r;if(!e)return!1;o(e)&&(e=e.expression);const i=null==(r=d.get(e.type))?void 0:r(e,t);return"number"==typeof i&&0!==(i&n)}function y(e){switch(e.type){case"Identifier":return!0;case"MemberExpression":return!e.computed&&"Identifier"===e.property.type&&y(e.object);default:return!1}}return Oi}var ji,Ri={};function Ui(){if(ji)return Ri;ji=1,Object.defineProperty(Ri,"__esModule",{value:!0}),Ri.TokenMap=void 0;var e=Pr();const{traverseFast:t,VISITOR_KEYS:n}=e;return Ri.TokenMap=class{constructor(e,n,r){this._tokens=void 0,this._source=void 0,this._nodesToTokenIndexes=new Map,this._nodesOccurrencesCountCache=new Map,this._tokensCache=new Map,this._tokens=n,this._source=r,t(e,e=>{const t=this._getTokensIndexesOfNode(e);t.length>0&&this._nodesToTokenIndexes.set(e,t)}),this._tokensCache.clear()}has(e){return this._nodesToTokenIndexes.has(e)}getIndexes(e){return this._nodesToTokenIndexes.get(e)}find(e,t){const n=this._nodesToTokenIndexes.get(e);if(n)for(let e=0;e<n.length;e++){const r=n[e],i=this._tokens[r];if(t(i,r))return i}return null}findLastIndex(e,t){const n=this._nodesToTokenIndexes.get(e);if(n)for(let e=n.length-1;e>=0;e--){const r=n[e];if(t(this._tokens[r],r))return r}return-1}findMatching(e,t,n=0){const r=this._nodesToTokenIndexes.get(e);if(r){let i=0;const s=n;if(s>1){const r=this._nodesOccurrencesCountCache.get(e);r&&r.test===t&&r.count<s&&(i=r.i+1,n-=r.count+1)}for(;i<r.length;i++){const a=this._tokens[r[i]];if(this.matchesOriginal(a,t)){if(0===n)return s>0&&this._nodesOccurrencesCountCache.set(e,{test:t,count:s,i:i}),a;n--}}}return null}matchesOriginal(e,t){return e.end-e.start===t.length&&(null!=e.value?e.value===t:this._source.startsWith(t,e.start))}startMatches(e,t){const n=this._nodesToTokenIndexes.get(e);if(!n)return!1;const r=this._tokens[n[0]];return r.start===e.start&&this.matchesOriginal(r,t)}endMatches(e,t){const n=this._nodesToTokenIndexes.get(e);if(!n)return!1;const r=this._tokens[n[n.length-1]];return r.end===e.end&&this.matchesOriginal(r,t)}_getTokensIndexesOfNode(e){if(null==e.start||null==e.end)return[];const{first:t,last:r}=this._findTokensOfNode(e,0,this._tokens.length-1);let i=t;const s=function*(e){if("TemplateLiteral"===e.type){yield e.quasis[0];for(let t=1;t<e.quasis.length;t++)yield e.expressions[t-1],yield e.quasis[t];return}const t=n[e.type];for(const n of t){const t=e[n];t&&(Array.isArray(t)?yield*t:yield t)}}(e);"ExportNamedDeclaration"!==e.type&&"ExportDefaultDeclaration"!==e.type||!e.declaration||"ClassDeclaration"!==e.declaration.type||s.next();const a=[];for(const e of s){if(null==e)continue;if(null==e.start||null==e.end)continue;const t=this._findTokensOfNode(e,i,r),n=t.first;for(let e=i;e<n;e++)a.push(e);i=t.last+1}for(let e=i;e<=r;e++)a.push(e);return a}_findTokensOfNode(e,t,n){const r=this._tokensCache.get(e);if(r)return r;const i=this._findFirstTokenOfNode(e.start,t,n),s=this._findLastTokenOfNode(e.end,i,n);return this._tokensCache.set(e,{first:i,last:s}),{first:i,last:s}}_findFirstTokenOfNode(e,t,n){for(;t<=n;){const r=n+t>>1;if(e<this._tokens[r].start)n=r-1;else{if(!(e>this._tokens[r].start))return r;t=r+1}}return t}_findLastTokenOfNode(e,t,n){for(;t<=n;){const r=n+t>>1;if(e<this._tokens[r].end)n=r-1;else{if(!(e>this._tokens[r].end))return r;t=r+1}}return n}},Ri}var Ki,Vi={},qi={};var $i,Wi={};var Yi,Ji={};function Xi(){if(Yi)return Ji;Yi=1,Object.defineProperty(Ji,"__esModule",{value:!0}),Ji.BreakStatement=function(e){this.word("break"),o(this,e.label)},Ji.CatchClause=function(e){this.word("catch"),this.space(),e.param&&(this.tokenChar(40),this.print(e.param),this.print(e.param.typeAnnotation),this.tokenChar(41),this.space());this.print(e.body)},Ji.ContinueStatement=function(e){this.word("continue"),o(this,e.label)},Ji.DebuggerStatement=function(){this.word("debugger"),this.semicolon()},Ji.DoWhileStatement=function(e){this.word("do"),this.space(),this.print(e.body),this.space(),this.word("while"),this.space(),this.tokenChar(40),this.print(e.test),this.tokenChar(41),this.semicolon()},Ji.ForOfStatement=Ji.ForInStatement=void 0,Ji.ForStatement=function(e){this.word("for"),this.space(),this.tokenChar(40);{const t=this.enterForStatementInit();this.print(e.init),t()}this.tokenChar(59),e.test&&(this.space(),this.print(e.test));this.token(";",!1,1),e.update&&(this.space(),this.print(e.update));this.tokenChar(41),this.printBlock(e)},Ji.IfStatement=function(e){this.word("if"),this.space(),this.tokenChar(40),this.print(e.test),this.tokenChar(41),this.space();const t=e.alternate&&r(s(e.consequent));t&&(this.tokenChar(123),this.newline(),this.indent());this.printAndIndentOnComments(e.consequent),t&&(this.dedent(),this.newline(),this.tokenChar(125));e.alternate&&(this.endsWith(125)&&this.space(),this.word("else"),this.space(),this.printAndIndentOnComments(e.alternate))},Ji.LabeledStatement=function(e){this.print(e.label),this.tokenChar(58),this.space(),this.print(e.body)},Ji.ReturnStatement=function(e){this.word("return"),o(this,e.argument)},Ji.SwitchCase=function(e){e.test?(this.word("case"),this.space(),this.print(e.test),this.tokenChar(58)):(this.word("default"),this.tokenChar(58));e.consequent.length&&(this.newline(),this.printSequence(e.consequent,!0))},Ji.SwitchStatement=function(e){this.word("switch"),this.space(),this.tokenChar(40),this.print(e.discriminant),this.tokenChar(41),this.space(),this.tokenChar(123),this.printSequence(e.cases,!0),this.rightBrace(e)},Ji.ThrowStatement=function(e){this.word("throw"),o(this,e.argument)},Ji.TryStatement=function(e){this.word("try"),this.space(),this.print(e.block),this.space(),e.handlers?this.print(e.handlers[0]):this.print(e.handler);e.finalizer&&(this.space(),this.word("finally"),this.space(),this.print(e.finalizer))},Ji.VariableDeclaration=function(e,r){e.declare&&(this.word("declare"),this.space());const{kind:i}=e;"await using"===i?(this.word("await"),this.space(),this.word("using",!0)):this.word(i,"using"===i);this.space();let s=!1;if(!t(r))for(const t of e.declarations)t.init&&(s=!0);if(this.printList(e.declarations,void 0,void 0,e.declarations.length>1,s?function(e){this.token(",",!1,e),this.newline()}:void 0),t(r))if(n(r)){if(r.init===e)return}else if(r.left===e)return;this.semicolon()},Ji.VariableDeclarator=function(e){this.print(e.id),e.definite&&this.tokenChar(33);this.print(e.id.typeAnnotation),e.init&&(this.space(),this.tokenChar(61),this.space(),this.print(e.init))},Ji.WhileStatement=function(e){this.word("while"),this.space(),this.tokenChar(40),this.print(e.test),this.tokenChar(41),this.printBlock(e)},Ji.WithStatement=function(e){this.word("with"),this.space(),this.tokenChar(40),this.print(e.object),this.tokenChar(41),this.printBlock(e)};var e=Pr();const{isFor:t,isForStatement:n,isIfStatement:r,isStatement:i}=e;function s(e){const{body:t}=e;return!1===i(t)?e:s(t)}function a(e){this.word("for"),this.space();const t="ForOfStatement"===e.type;t&&e.await&&(this.word("await"),this.space()),this.noIndentInnerCommentsHere(),this.tokenChar(40);{const n=this.enterForXStatementInit(t);this.print(e.left),null==n||n()}this.space(),this.word(t?"of":"in"),this.space(),this.print(e.right),this.tokenChar(41),this.printBlock(e)}function o(e,t){t&&(e.space(),e.printTerminatorless(t)),e.semicolon()}return Ji.ForInStatement=a,Ji.ForOfStatement=a,Ji}var Hi,zi={};function Gi(){if(Hi)return zi;Hi=1,Object.defineProperty(zi,"__esModule",{value:!0}),zi.ClassAccessorProperty=function(e){var t;this.printJoin(e.decorators);const n=null==(t=e.key.loc)||null==(t=t.end)?void 0:t.line;n&&this.catchUp(n);this.tsPrintClassMemberModifiers(e),this.word("accessor",!0),this.space(),e.computed?(this.tokenChar(91),this.print(e.key),this.tokenChar(93)):(this._variance(e),this.print(e.key));e.optional&&this.tokenChar(63);e.definite&&this.tokenChar(33);this.print(e.typeAnnotation),e.value&&(this.space(),this.tokenChar(61),this.space(),this.print(e.value));this.semicolon()},zi.ClassBody=function(e){if(this.tokenChar(123),0===e.body.length)this.tokenChar(125);else{this.newline();const t=function(e,t){if(!e.tokenMap||null==t.start||null==t.end)return null;const n=e.tokenMap.getIndexes(t);if(!n)return null;let r=1,i=0,s=0;const a=()=>{for(;s<t.body.length&&null==t.body[s].start;)s++};return a(),o=>{s<=o&&(s=o+1,a());const l=s===t.body.length?t.end:t.body[s].start;let c;for(;r<n.length&&e.tokenMap.matchesOriginal(c=e._tokens[n[r]],";")&&c.start<l;)e.token(";",void 0,i++),r++}}(this,e);null==t||t(-1);const n=this.enterDelimited();this.printJoin(e.body,!0,!0,t,!0),n(),this.endsWith(10)||this.newline(),this.rightBrace(e)}},zi.ClassExpression=zi.ClassDeclaration=function(e,r){(t(r)||n(r))&&this._shouldPrintDecoratorsBeforeExport(r)||this.printJoin(e.decorators);e.declare&&(this.word("declare"),this.space());e.abstract&&(this.word("abstract"),this.space());this.word("class"),e.id&&(this.space(),this.print(e.id));this.print(e.typeParameters),e.superClass&&(this.space(),this.word("extends"),this.space(),this.print(e.superClass),this.print(e.superTypeParameters));e.implements&&(this.space(),this.word("implements"),this.space(),this.printList(e.implements));this.space(),this.print(e.body)},zi.ClassMethod=function(e){this._classMethodHead(e),this.space(),this.print(e.body)},zi.ClassPrivateMethod=function(e){this._classMethodHead(e),this.space(),this.print(e.body)},zi.ClassPrivateProperty=function(e){this.printJoin(e.decorators),this.tsPrintClassMemberModifiers(e),this.print(e.key),e.optional&&this.tokenChar(63);e.definite&&this.tokenChar(33);this.print(e.typeAnnotation),e.value&&(this.space(),this.tokenChar(61),this.space(),this.print(e.value));this.semicolon()},zi.ClassProperty=function(e){if(this.printJoin(e.decorators),!e.static&&!this.format.preserveFormat){var t;const n=null==(t=e.key.loc)||null==(t=t.end)?void 0:t.line;n&&this.catchUp(n)}this.tsPrintClassMemberModifiers(e),e.computed?(this.tokenChar(91),this.print(e.key),this.tokenChar(93)):(this._variance(e),this.print(e.key));e.optional&&this.tokenChar(63);e.definite&&this.tokenChar(33);this.print(e.typeAnnotation),e.value&&(this.space(),this.tokenChar(61),this.space(),this.print(e.value));this.semicolon()},zi.StaticBlock=function(e){this.word("static"),this.space(),this.tokenChar(123),0===e.body.length?this.tokenChar(125):(this.newline(),this.printSequence(e.body,!0),this.rightBrace(e))},zi._classMethodHead=function(e){if(this.printJoin(e.decorators),!this.format.preserveFormat){var t;const n=null==(t=e.key.loc)||null==(t=t.end)?void 0:t.line;n&&this.catchUp(n)}this.tsPrintClassMemberModifiers(e),this._methodHead(e)};var e=Pr();const{isExportDefaultDeclaration:t,isExportNamedDeclaration:n}=e;return zi}var Qi,Zi={};var es,ts={};function ns(){if(es)return ts;es=1,Object.defineProperty(ts,"__esModule",{value:!0}),ts.ExportAllDeclaration=function(e){var t,n;this.word("export"),this.space(),"type"===e.exportKind&&(this.word("type"),this.space());this.tokenChar(42),this.space(),this.word("from"),this.space(),null!=(t=e.attributes)&&t.length||null!=(n=e.assertions)&&n.length?(this.print(e.source,!0),this.space(),this._printAttributes(e,!1)):this.print(e.source);this.semicolon()},ts.ExportDefaultDeclaration=function(e){c(this,e),this.word("export"),this.noIndentInnerCommentsHere(),this.space(),this.word("default"),this.space(),this.tokenContext|=t.TokenContext.exportDefault;const n=e.declaration;this.print(n),o(n)||this.semicolon()},ts.ExportDefaultSpecifier=function(e){this.print(e.exported)},ts.ExportNamedDeclaration=function(e){if(c(this,e),this.word("export"),this.space(),e.declaration){const t=e.declaration;this.print(t),o(t)||this.semicolon()}else{"type"===e.exportKind&&(this.word("type"),this.space());const s=e.specifiers.slice(0);let a=!1;for(;;){const e=s[0];if(!r(e)&&!i(e))break;a=!0,this.print(s.shift()),s.length&&(this.tokenChar(44),this.space())}let o=!1;var t,n;if((s.length||!s.length&&!a)&&(o=!0,this.tokenChar(123),s.length&&(this.space(),this.printList(s,this.shouldPrintTrailingComma("}")),this.space()),this.tokenChar(125)),e.source)this.space(),this.word("from"),this.space(),null!=(t=e.attributes)&&t.length||null!=(n=e.assertions)&&n.length?(this.print(e.source,!0),this.space(),this._printAttributes(e,o)):this.print(e.source);this.semicolon()}},ts.ExportNamespaceSpecifier=function(e){this.tokenChar(42),this.space(),this.word("as"),this.space(),this.print(e.exported)},ts.ExportSpecifier=function(e){"type"===e.exportKind&&(this.word("type"),this.space());this.print(e.local),e.exported&&e.local.name!==e.exported.name&&(this.space(),this.word("as"),this.space(),this.print(e.exported))},ts.ImportAttribute=function(e){this.print(e.key),this.tokenChar(58),this.space(),this.print(e.value)},ts.ImportDeclaration=function(e){var t,n;this.word("import"),this.space();const r="type"===e.importKind||"typeof"===e.importKind;r?(this.noIndentInnerCommentsHere(),this.word(e.importKind),this.space()):e.module?(this.noIndentInnerCommentsHere(),this.word("module"),this.space()):e.phase&&(this.noIndentInnerCommentsHere(),this.word(e.phase),this.space());const i=e.specifiers.slice(0),o=!!i.length;for(;o;){const e=i[0];if(!s(e)&&!a(e))break;this.print(i.shift()),i.length&&(this.tokenChar(44),this.space())}let l=!1;i.length?(l=!0,this.tokenChar(123),this.space(),this.printList(i,this.shouldPrintTrailingComma("}")),this.space(),this.tokenChar(125)):r&&!o&&(l=!0,this.tokenChar(123),this.tokenChar(125));(o||r)&&(this.space(),this.word("from"),this.space());null!=(t=e.attributes)&&t.length||null!=(n=e.assertions)&&n.length?(this.print(e.source,!0),this.space(),this._printAttributes(e,l)):this.print(e.source);this.semicolon()},ts.ImportDefaultSpecifier=function(e){this.print(e.local)},ts.ImportExpression=function(e){this.word("import"),e.phase&&(this.tokenChar(46),this.word(e.phase));this.tokenChar(40);const t=this.shouldPrintTrailingComma(")");this.print(e.source),null!=e.options&&(this.tokenChar(44),this.space(),this.print(e.options));t&&this.tokenChar(44);this.rightParens(e)},ts.ImportNamespaceSpecifier=function(e){this.tokenChar(42),this.space(),this.word("as"),this.space(),this.print(e.local)},ts.ImportSpecifier=function(e){"type"!==e.importKind&&"typeof"!==e.importKind||(this.word(e.importKind),this.space());this.print(e.imported),e.local&&e.local.name!==e.imported.name&&(this.space(),this.word("as"),this.space(),this.print(e.local))},ts._printAttributes=function(e,t){var n;const{importAttributesKeyword:r}=this.format,{attributes:i,assertions:s}=e;i&&!r&&e.extra&&(e.extra.deprecatedAssertSyntax||e.extra.deprecatedWithLegacySyntax)&&!l&&(l=!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'));const a="assert"===r||!r&&s;if(this.word(a?"assert":"with"),this.space(),!a&&("with-legacy"===r||!r&&null!=(n=e.extra)&&n.deprecatedWithLegacySyntax))return void this.printList(i||s);const o=t?1:0;this.token("{",void 0,o),this.space(),this.printList(i||s,this.shouldPrintTrailingComma("}")),this.space(),this.token("}",void 0,o)};var e=Pr(),t=Bi();const{isClassDeclaration:n,isExportDefaultSpecifier:r,isExportNamespaceSpecifier:i,isImportDefaultSpecifier:s,isImportNamespaceSpecifier:a,isStatement:o}=e;let l=!1;function c(e,t){n(t.declaration)&&e._shouldPrintDecoratorsBeforeExport(t)&&e.printJoin(t.declaration.decorators)}return ts}var rs,is,ss,as={};function os(){if(is)return rs;is=1;const e={},t=e.hasOwnProperty,n=(e,n)=>{for(const r in e)t.call(e,r)&&n(r,e[r])},r=e=>"\\u"+("0000"+e).slice(-4),i=(e,t)=>{let n=e.toString(16);return t?n:n.toUpperCase()},s=e.toString,a=Array.isArray,o=e=>"bigint"==typeof e,l={"\\":"\\\\","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r","\t":"\\t"},c=/[\\\b\f\n\r\t]/,p=/[0-9]/,u=/[\xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000]/,h=/([\uD800-\uDBFF][\uDC00-\uDFFF])|([\uD800-\uDFFF])|(['"`])|[^]/g,d=/([\uD800-\uDBFF][\uDC00-\uDFFF])|([\uD800-\uDFFF])|(['"`])|[^ !#-&\(-\[\]-_a-~]/g,f=(e,t)=>{const m=()=>{v=E,++t.indentLevel,E=t.indent.repeat(t.indentLevel)},y={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},T=t&&t.json;var g,x;T&&(y.quotes="double",y.wrap=!0),g=y,t=(x=t)?(n(x,(e,t)=>{g[e]=t}),g):g,"single"!=t.quotes&&"double"!=t.quotes&&"backtick"!=t.quotes&&(t.quotes="single");const S="double"==t.quotes?'"':"backtick"==t.quotes?"`":"'",b=t.compact,P=t.lowercaseHex;let E=t.indent.repeat(t.indentLevel),v="";const A=t.__inline1__,C=t.__inline2__,w=b?"":"\n";let I,k=!0;const N="binary"==t.numbers,O="octal"==t.numbers,_="decimal"==t.numbers,D="hexadecimal"==t.numbers;if(T&&e&&"function"==typeof e.toJSON&&(e=e.toJSON()),!(e=>"string"==typeof e||"[object String]"==s.call(e))(e)){if((e=>"[object Map]"==s.call(e))(e))return 0==e.size?"new Map()":(b||(t.__inline1__=!0,t.__inline2__=!1),"new Map("+f(Array.from(e),t)+")");if((e=>"[object Set]"==s.call(e))(e))return 0==e.size?"new Set()":"new Set("+f(Array.from(e),t)+")";if((e=>"function"==typeof Buffer&&Buffer.isBuffer(e))(e))return 0==e.length?"Buffer.from([])":"Buffer.from("+f(Array.from(e),t)+")";if(a(e))return I=[],t.wrap=!0,A&&(t.__inline1__=!1,t.__inline2__=!0),C||m(),((e,t)=>{const n=e.length;let r=-1;for(;++r<n;)t(e[r])})(e,e=>{k=!1,C&&(t.__inline2__=!1),I.push((b||C?"":E)+f(e,t))}),k?"[]":C?"["+I.join(", ")+"]":"["+w+I.join(","+w)+w+(b?"":v)+"]";if((e=>"number"==typeof e||"[object Number]"==s.call(e))(e)||o(e)){if(T)return JSON.stringify(Number(e));let t;if(_)t=String(e);else if(D){let n=e.toString(16);P||(n=n.toUpperCase()),t="0x"+n}else N?t="0b"+e.toString(2):O&&(t="0o"+e.toString(8));return o(e)?t+"n":t}return o(e)?T?JSON.stringify(Number(e)):e+"n":(e=>"[object Object]"==s.call(e))(e)?(I=[],t.wrap=!0,m(),n(e,(e,n)=>{k=!1,I.push((b?"":E)+f(e,t)+":"+(b?"":" ")+f(n,t))}),k?"{}":"{"+w+I.join(","+w)+w+(b?"":v)+"}"):T?JSON.stringify(e)||"null":String(e)}const L=t.escapeEverything?h:d;return I=e.replace(L,(e,n,s,a,o,h)=>{if(n){if(t.minimal)return n;const e=n.charCodeAt(0),s=n.charCodeAt(1);if(t.es6){return"\\u{"+i(1024*(e-55296)+s-56320+65536,P)+"}"}return r(i(e,P))+r(i(s,P))}if(s)return r(i(s.charCodeAt(0),P));if("\0"==e&&!T&&!p.test(h.charAt(o+1)))return"\\0";if(a)return a==S||t.escapeEverything?"\\"+a:a;if(c.test(e))return l[e];if(t.minimal&&!u.test(e))return e;const d=i(e.charCodeAt(0),P);return T||d.length>2?r(d):"\\x"+("00"+d).slice(-2)}),"`"==S&&(I=I.replace(/\$\{/g,"\\${")),t.isScriptContext&&(I=I.replace(/<\/(script|style)/gi,"<\\/$1").replace(/<!--/g,T?"\\u003C!--":"\\x3C!--")),t.wrap&&(I=S+I+S),I};return f.version="3.0.2",rs=f}function ls(){if(ss)return as;ss=1,Object.defineProperty(as,"__esModule",{value:!0}),as.ArgumentPlaceholder=function(){this.tokenChar(63)},as.ArrayPattern=as.ArrayExpression=function(e){const t=e.elements,n=t.length;this.tokenChar(91);const r=this.enterDelimited();for(let e=0;e<t.length;e++){const r=t[e];r?(e>0&&this.space(),this.print(r),(e<n-1||this.shouldPrintTrailingComma("]"))&&this.token(",",!1,e)):this.token(",",!1,e)}r(),this.tokenChar(93)},as.BigIntLiteral=function(e){const t=this.getPossibleRaw(e);if(!this.format.minified&&void 0!==t)return void this.word(t);this.word(e.value+"n")},as.BooleanLiteral=function(e){this.word(e.value?"true":"false")},as.Identifier=function(e){var t;this.sourceIdentifierName((null==(t=e.loc)?void 0:t.identifierName)||e.name),this.word(this.tokenMap?this._getRawIdentifier(e):e.name)},as.NullLiteral=function(){this.word("null")},as.NumericLiteral=function(e){const n=this.getPossibleRaw(e),r=this.format.jsescOption,i=e.value,s=i+"";r.numbers?this.number(t(i,r),i):null==n?this.number(s,i):this.format.minified?this.number(n.length<s.length?n:s,i):this.number(n,i)},as.ObjectPattern=as.ObjectExpression=function(e){const t=e.properties;if(this.tokenChar(123),t.length){const e=this.enterDelimited();this.space(),this.printList(t,this.shouldPrintTrailingComma("}"),!0,!0),this.space(),e()}this.sourceWithOffset("end",e.loc,-1),this.tokenChar(125)},as.ObjectMethod=function(e){this.printJoin(e.decorators),this._methodHead(e),this.space(),this.print(e.body)},as.ObjectProperty=function(e){if(this.printJoin(e.decorators),e.computed)this.tokenChar(91),this.print(e.key),this.tokenChar(93);else{if(n(e.value)&&r(e.key)&&e.key.name===e.value.left.name)return void this.print(e.value);if(this.print(e.key),e.shorthand&&r(e.key)&&r(e.value)&&e.key.name===e.value.name)return}this.tokenChar(58),this.space(),this.print(e.value)},as.PipelineBareFunction=function(e){this.print(e.callee)},as.PipelinePrimaryTopicReference=function(){this.tokenChar(35)},as.PipelineTopicExpression=function(e){this.print(e.expression)},as.RecordExpression=function(e){const t=e.properties;let n,r;if("bar"===this.format.recordAndTupleSyntaxType)n="{|",r="|}";else{if("hash"!==this.format.recordAndTupleSyntaxType&&null!=this.format.recordAndTupleSyntaxType)throw new Error(`The "recordAndTupleSyntaxType" generator option must be "bar" or "hash" (${JSON.stringify(this.format.recordAndTupleSyntaxType)} received).`);n="#{",r="}"}this.token(n),t.length&&(this.space(),this.printList(t,this.shouldPrintTrailingComma(r),!0,!0),this.space());this.token(r)},as.RegExpLiteral=function(e){this.word(`/${e.pattern}/${e.flags}`)},as.SpreadElement=as.RestElement=function(e){this.token("..."),this.print(e.argument)},as.StringLiteral=function(e){const n=this.getPossibleRaw(e);if(!this.format.minified&&void 0!==n)return void this.token(n);const r=t(e.value,this.format.jsescOption);this.token(r)},as.TopicReference=function(){const{topicToken:e}=this.format;if(!a.has(e)){const t=JSON.stringify(e),n=Array.from(a,e=>JSON.stringify(e));throw new Error(`The "topicToken" generator option must be one of ${n.join(", ")} (${t} received instead).`)}this.token(e)},as.TupleExpression=function(e){const t=e.elements,n=t.length;let r,i;if("bar"===this.format.recordAndTupleSyntaxType)r="[|",i="|]";else{if("hash"!==this.format.recordAndTupleSyntaxType)throw new Error(`${this.format.recordAndTupleSyntaxType} is not a valid recordAndTuple syntax type`);r="#[",i="]"}this.token(r);for(let e=0;e<t.length;e++){const r=t[e];r&&(e>0&&this.space(),this.print(r),(e<n-1||this.shouldPrintTrailingComma(i))&&this.token(",",!1,e))}this.token(i)},as.VoidPattern=function(){this.word("void")},as._getRawIdentifier=function(e){if(e===i)return s;i=e;const{name:t}=e,n=this.tokenMap.find(e,e=>e.value===t);if(n)return s=this._originalCode.slice(n.start,n.end),s;return s=e.name};var e=Pr(),t=os();const{isAssignmentPattern:n,isIdentifier:r}=e;let i=null,s="";const a=new Set(["^^","@@","^","%","#"]);return as}var cs,ps={};function us(){return cs||(cs=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.AnyTypeAnnotation=function(){this.word("any")},e.ArrayTypeAnnotation=function(e){this.print(e.elementType,!0),this.tokenChar(91),this.tokenChar(93)},e.BooleanLiteralTypeAnnotation=function(e){this.word(e.value?"true":"false")},e.BooleanTypeAnnotation=function(){this.word("boolean")},e.DeclareClass=function(e,t){s(t)||(this.word("declare"),this.space());this.word("class"),this.space(),this._interfaceish(e)},e.DeclareExportAllDeclaration=function(e){this.word("declare"),this.space(),n.ExportAllDeclaration.call(this,e)},e.DeclareExportDeclaration=function(e){this.word("declare"),this.space(),this.word("export"),this.space(),e.default&&(this.word("default"),this.space());p.call(this,e)},e.DeclareFunction=function(e,t){s(t)||(this.word("declare"),this.space());this.word("function"),this.space(),this.print(e.id),this.print(e.id.typeAnnotation.typeAnnotation),e.predicate&&(this.space(),this.print(e.predicate));this.semicolon()},e.DeclareInterface=function(e){this.word("declare"),this.space(),this.InterfaceDeclaration(e)},e.DeclareModule=function(e){this.word("declare"),this.space(),this.word("module"),this.space(),this.print(e.id),this.space(),this.print(e.body)},e.DeclareModuleExports=function(e){this.word("declare"),this.space(),this.word("module"),this.tokenChar(46),this.word("exports"),this.print(e.typeAnnotation)},e.DeclareOpaqueType=function(e,t){s(t)||(this.word("declare"),this.space());this.OpaqueType(e)},e.DeclareTypeAlias=function(e){this.word("declare"),this.space(),this.TypeAlias(e)},e.DeclareVariable=function(e,t){s(t)||(this.word("declare"),this.space());this.word("var"),this.space(),this.print(e.id),this.print(e.id.typeAnnotation),this.semicolon()},e.DeclaredPredicate=function(e){this.tokenChar(37),this.word("checks"),this.tokenChar(40),this.print(e.value),this.tokenChar(41)},e.EmptyTypeAnnotation=function(){this.word("empty")},e.EnumBooleanBody=function(e){const{explicitType:t}=e;o(this,"boolean",t),l(this,e)},e.EnumBooleanMember=function(e){c(this,e)},e.EnumDeclaration=function(e){const{id:t,body:n}=e;this.word("enum"),this.space(),this.print(t),this.print(n)},e.EnumDefaultedMember=function(e){const{id:t}=e;this.print(t),this.tokenChar(44)},e.EnumNumberBody=function(e){const{explicitType:t}=e;o(this,"number",t),l(this,e)},e.EnumNumberMember=function(e){c(this,e)},e.EnumStringBody=function(e){const{explicitType:t}=e;o(this,"string",t),l(this,e)},e.EnumStringMember=function(e){c(this,e)},e.EnumSymbolBody=function(e){o(this,"symbol",!0),l(this,e)},e.ExistsTypeAnnotation=function(){this.tokenChar(42)},e.FunctionTypeAnnotation=function(e,t){this.print(e.typeParameters),this.tokenChar(40),e.this&&(this.word("this"),this.tokenChar(58),this.space(),this.print(e.this.typeAnnotation),(e.params.length||e.rest)&&(this.tokenChar(44),this.space()));this.printList(e.params),e.rest&&(e.params.length&&(this.tokenChar(44),this.space()),this.token("..."),this.print(e.rest));this.tokenChar(41);const n=null==t?void 0:t.type;null!=n&&("ObjectTypeCallProperty"===n||"ObjectTypeInternalSlot"===n||"DeclareFunction"===n||"ObjectTypeProperty"===n&&t.method)?this.tokenChar(58):(this.space(),this.token("=>"));this.space(),this.print(e.returnType)},e.FunctionTypeParam=function(e){this.print(e.name),e.optional&&this.tokenChar(63);e.name&&(this.tokenChar(58),this.space());this.print(e.typeAnnotation)},e.IndexedAccessType=function(e){this.print(e.objectType,!0),this.tokenChar(91),this.print(e.indexType),this.tokenChar(93)},e.InferredPredicate=function(){this.tokenChar(37),this.word("checks")},e.InterfaceDeclaration=function(e){this.word("interface"),this.space(),this._interfaceish(e)},e.GenericTypeAnnotation=e.ClassImplements=e.InterfaceExtends=function(e){this.print(e.id),this.print(e.typeParameters,!0)},e.InterfaceTypeAnnotation=function(e){var t;this.word("interface"),null!=(t=e.extends)&&t.length&&(this.space(),this.word("extends"),this.space(),this.printList(e.extends));this.space(),this.print(e.body)},e.IntersectionTypeAnnotation=function(e){this.printJoin(e.types,void 0,void 0,u)},e.MixedTypeAnnotation=function(){this.word("mixed")},e.NullLiteralTypeAnnotation=function(){this.word("null")},e.NullableTypeAnnotation=function(e){this.tokenChar(63),this.print(e.typeAnnotation)},Object.defineProperty(e,"NumberLiteralTypeAnnotation",{enumerable:!0,get:function(){return i.NumericLiteral}}),e.NumberTypeAnnotation=function(){this.word("number")},e.ObjectTypeAnnotation=function(e){e.exact?this.token("{|"):this.tokenChar(123);const t=[...e.properties,...e.callProperties||[],...e.indexers||[],...e.internalSlots||[]];t.length&&(this.newline(),this.space(),this.printJoin(t,!0,!0,void 0,void 0,()=>{(1!==t.length||e.inexact)&&(this.tokenChar(44),this.space())}),this.space());e.inexact&&(this.indent(),this.token("..."),t.length&&this.newline(),this.dedent());e.exact?this.token("|}"):this.tokenChar(125)},e.ObjectTypeCallProperty=function(e){e.static&&(this.word("static"),this.space());this.print(e.value)},e.ObjectTypeIndexer=function(e){e.static&&(this.word("static"),this.space());this._variance(e),this.tokenChar(91),e.id&&(this.print(e.id),this.tokenChar(58),this.space());this.print(e.key),this.tokenChar(93),this.tokenChar(58),this.space(),this.print(e.value)},e.ObjectTypeInternalSlot=function(e){e.static&&(this.word("static"),this.space());this.tokenChar(91),this.tokenChar(91),this.print(e.id),this.tokenChar(93),this.tokenChar(93),e.optional&&this.tokenChar(63);e.method||(this.tokenChar(58),this.space());this.print(e.value)},e.ObjectTypeProperty=function(e){e.proto&&(this.word("proto"),this.space());e.static&&(this.word("static"),this.space());"get"!==e.kind&&"set"!==e.kind||(this.word(e.kind),this.space());this._variance(e),this.print(e.key),e.optional&&this.tokenChar(63);e.method||(this.tokenChar(58),this.space());this.print(e.value)},e.ObjectTypeSpreadProperty=function(e){this.token("..."),this.print(e.argument)},e.OpaqueType=function(e){this.word("opaque"),this.space(),this.word("type"),this.space(),this.print(e.id),this.print(e.typeParameters),e.supertype&&(this.tokenChar(58),this.space(),this.print(e.supertype));e.impltype&&(this.space(),this.tokenChar(61),this.space(),this.print(e.impltype));this.semicolon()},e.OptionalIndexedAccessType=function(e){this.print(e.objectType),e.optional&&this.token("?.");this.tokenChar(91),this.print(e.indexType),this.tokenChar(93)},e.QualifiedTypeIdentifier=function(e){this.print(e.qualification),this.tokenChar(46),this.print(e.id)},Object.defineProperty(e,"StringLiteralTypeAnnotation",{enumerable:!0,get:function(){return i.StringLiteral}}),e.StringTypeAnnotation=function(){this.word("string")},e.SymbolTypeAnnotation=function(){this.word("symbol")},e.ThisTypeAnnotation=function(){this.word("this")},e.TupleTypeAnnotation=function(e){this.tokenChar(91),this.printList(e.types),this.tokenChar(93)},e.TypeAlias=function(e){this.word("type"),this.space(),this.print(e.id),this.print(e.typeParameters),this.space(),this.tokenChar(61),this.space(),this.print(e.right),this.semicolon()},e.TypeAnnotation=function(e,t){this.tokenChar(58),this.space(),"ArrowFunctionExpression"===t.type?this.tokenContext|=r.TokenContext.arrowFlowReturnType:e.optional&&this.tokenChar(63);this.print(e.typeAnnotation)},e.TypeCastExpression=function(e){this.tokenChar(40),this.print(e.expression),this.print(e.typeAnnotation),this.tokenChar(41)},e.TypeParameter=function(e){this._variance(e),this.word(e.name),e.bound&&this.print(e.bound);e.default&&(this.space(),this.tokenChar(61),this.space(),this.print(e.default))},e.TypeParameterDeclaration=e.TypeParameterInstantiation=function(e){this.tokenChar(60),this.printList(e.params),this.tokenChar(62)},e.TypeofTypeAnnotation=function(e){this.word("typeof"),this.space(),this.print(e.argument)},e.UnionTypeAnnotation=function(e){this.printJoin(e.types,void 0,void 0,h)},e.Variance=function(e){"plus"===e.kind?this.tokenChar(43):this.tokenChar(45)},e.VoidTypeAnnotation=function(){this.word("void")},e._interfaceish=function(e){var t;this.print(e.id),this.print(e.typeParameters),null!=(t=e.extends)&&t.length&&(this.space(),this.word("extends"),this.space(),this.printList(e.extends));if("DeclareClass"===e.type){var n,r;null!=(n=e.mixins)&&n.length&&(this.space(),this.word("mixins"),this.space(),this.printList(e.mixins)),null!=(r=e.implements)&&r.length&&(this.space(),this.word("implements"),this.space(),this.printList(e.implements))}this.space(),this.print(e.body)},e._variance=function(e){var t;const n=null==(t=e.variance)?void 0:t.kind;null!=n&&("plus"===n?this.tokenChar(43):"minus"===n&&this.tokenChar(45))};var t=Pr(),n=ns(),r=Bi(),i=ls();const{isDeclareExportDeclaration:s,isStatement:a}=t;function o(e,t,n){n&&(e.space(),e.word("of"),e.space(),e.word(t)),e.space()}function l(e,t){const{members:n}=t;e.token("{"),e.indent(),e.newline();for(const t of n)e.print(t),e.newline();t.hasUnknownMembers&&(e.token("..."),e.newline()),e.dedent(),e.token("}")}function c(e,t){e.print(t.id),e.space(),e.token("="),e.space(),e.print(t.init),e.token(",")}function p(e){if(e.declaration){const t=e.declaration;this.print(t),a(t)||this.semicolon()}else this.tokenChar(123),e.specifiers.length&&(this.space(),this.printList(e.specifiers),this.space()),this.tokenChar(125),e.source&&(this.space(),this.word("from"),this.space(),this.print(e.source)),this.semicolon()}function u(e){this.space(),this.token("&",!1,e),this.space()}function h(e){this.space(),this.token("|",!1,e),this.space()}}(ps)),ps}var hs,ds={};var fs,ms={};var ys,Ts,gs={};function xs(){return Ts||(Ts=1,function(e){Object.defineProperty(e,"__esModule",{value:!0});var t=(Ki||(Ki=1,Object.defineProperty(qi,"__esModule",{value:!0}),qi.TaggedTemplateExpression=function(e){this.print(e.tag),this.print(e.typeParameters),this.print(e.quasi)},qi.TemplateElement=function(){throw new Error("TemplateElement printing is handled in TemplateLiteral")},qi.TemplateLiteral=function(e){this._printTemplate(e,e.expressions)},qi._printTemplate=function(e,t){const n=e.quasis;let r="`";for(let i=0;i<n.length-1;i++)if(r+=n[i].value.raw,this.token(r+"${",!0),this.print(t[i]),r="}",this.tokenMap){const t=this.tokenMap.findMatching(e,"}",i);t&&this._catchUpTo(t.loc.start)}r+=n[n.length-1].value.raw,this.token(r+"`",!0)}),qi);Object.keys(t).forEach(function(n){"default"!==n&&"__esModule"!==n&&(n in e&&e[n]===t[n]||Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[n]}}))});var n=function(){if($i)return Wi;$i=1,Object.defineProperty(Wi,"__esModule",{value:!0}),Wi.LogicalExpression=Wi.BinaryExpression=Wi.AssignmentExpression=function(e){this.print(e.left),this.space(),"in"===e.operator||"instanceof"===e.operator?this.word(e.operator):(this.token(e.operator),this._endsWithDiv="/"===e.operator),this.space(),this.print(e.right)},Wi.AssignmentPattern=function(e){this.print(e.left),("Identifier"===e.left.type||a(e.left))&&(e.left.optional&&this.tokenChar(63),this.print(e.left.typeAnnotation)),this.space(),this.tokenChar(61),this.space(),this.print(e.right)},Wi.AwaitExpression=function(e){this.word("await"),this.space(),this.print(e.argument)},Wi.BindExpression=function(e){this.print(e.object),this.token("::"),this.print(e.callee)},Wi.CallExpression=function(e){this.print(e.callee),this.print(e.typeArguments),this.print(e.typeParameters),this.tokenChar(40);const t=this.enterDelimited();this.printList(e.arguments,this.shouldPrintTrailingComma(")")),t(),this.rightParens(e)},Wi.ConditionalExpression=function(e){this.print(e.test),this.space(),this.tokenChar(63),this.space(),this.print(e.consequent),this.space(),this.tokenChar(58),this.space(),this.print(e.alternate)},Wi.Decorator=function(e){this.tokenChar(64),this.print(e.expression),this.newline()},Wi.DoExpression=function(e){e.async&&(this.word("async",!0),this.space()),this.word("do"),this.space(),this.print(e.body)},Wi.EmptyStatement=function(){this.semicolon(!0)},Wi.ExpressionStatement=function(e){this.tokenContext|=t.TokenContext.expressionStatement,this.print(e.expression),this.semicolon()},Wi.Import=function(){this.word("import")},Wi.MemberExpression=function(e){if(this.print(e.object),!e.computed&&i(e.property))throw new TypeError("Got a MemberExpression for MemberExpression property");let t=e.computed;if(r(e.property)&&"number"==typeof e.property.value&&(t=!0),t){const t=this.enterDelimited();this.tokenChar(91),this.print(e.property),this.tokenChar(93),t()}else this.tokenChar(46),this.print(e.property)},Wi.MetaProperty=function(e){this.print(e.meta),this.tokenChar(46),this.print(e.property)},Wi.ModuleExpression=function(e){this.word("module",!0),this.space(),this.tokenChar(123),this.indent();const{body:t}=e;(t.body.length||t.directives.length)&&this.newline(),this.print(t),this.dedent(),this.rightBrace(e)},Wi.NewExpression=function(e,t){if(this.word("new"),this.space(),this.print(e.callee),this.format.minified&&0===e.arguments.length&&!e.optional&&!n(t,{callee:e})&&!i(t)&&!s(t))return;if(this.print(e.typeArguments),this.print(e.typeParameters),e.optional&&this.token("?."),0===e.arguments.length&&this.tokenMap&&!this.tokenMap.endMatches(e,")"))return;this.tokenChar(40);const r=this.enterDelimited();this.printList(e.arguments,this.shouldPrintTrailingComma(")")),r(),this.rightParens(e)},Wi.OptionalCallExpression=function(e){this.print(e.callee),this.print(e.typeParameters),e.optional&&this.token("?."),this.print(e.typeArguments),this.tokenChar(40);const t=this.enterDelimited();this.printList(e.arguments),t(),this.rightParens(e)},Wi.OptionalMemberExpression=function(e){let{computed:t}=e;const{optional:n,property:s}=e;if(this.print(e.object),!t&&i(s))throw new TypeError("Got a MemberExpression for MemberExpression property");r(s)&&"number"==typeof s.value&&(t=!0),n&&this.token("?."),t?(this.tokenChar(91),this.print(s),this.tokenChar(93)):(n||this.tokenChar(46),this.print(s))},Wi.ParenthesizedExpression=function(e){this.tokenChar(40);const t=this.enterDelimited();this.print(e.expression),t(),this.rightParens(e)},Wi.PrivateName=function(e){this.tokenChar(35),this.print(e.id)},Wi.SequenceExpression=function(e){this.printList(e.expressions)},Wi.Super=function(){this.word("super")},Wi.ThisExpression=function(){this.word("this")},Wi.UnaryExpression=function(e){const{operator:t}=e;"void"===t||"delete"===t||"typeof"===t||"throw"===t?(this.word(t),this.space()):this.token(t),this.print(e.argument)},Wi.UpdateExpression=function(e){e.prefix?(this.token(e.operator),this.print(e.argument)):(this.print(e.argument,!0),this.token(e.operator))},Wi.V8IntrinsicIdentifier=function(e){this.tokenChar(37),this.word(e.name)},Wi.YieldExpression=function(e){e.delegate?(this.word("yield",!0),this.tokenChar(42),e.argument&&(this.space(),this.print(e.argument))):e.argument?(this.word("yield",!0),this.space(),this.print(e.argument)):this.word("yield")},Wi._shouldPrintDecoratorsBeforeExport=function(e){return"boolean"==typeof this.format.decoratorsBeforeExport?this.format.decoratorsBeforeExport:"number"==typeof e.start&&e.start===e.declaration.start};var e=Pr(),t=Bi();const{isCallExpression:n,isLiteral:r,isMemberExpression:i,isNewExpression:s,isPattern:a}=e;return Wi}();Object.keys(n).forEach(function(t){"default"!==t&&"__esModule"!==t&&(t in e&&e[t]===n[t]||Object.defineProperty(e,t,{enumerable:!0,get:function(){return n[t]}}))});var r=Xi();Object.keys(r).forEach(function(t){"default"!==t&&"__esModule"!==t&&(t in e&&e[t]===r[t]||Object.defineProperty(e,t,{enumerable:!0,get:function(){return r[t]}}))});var i=Gi();Object.keys(i).forEach(function(t){"default"!==t&&"__esModule"!==t&&(t in e&&e[t]===i[t]||Object.defineProperty(e,t,{enumerable:!0,get:function(){return i[t]}}))});var s=function(){if(Qi)return Zi;Qi=1,Object.defineProperty(Zi,"__esModule",{value:!0}),Zi.ArrowFunctionExpression=function(e,n){e.async&&(this.word("async",!0),this.space()),this._shouldPrintArrowParamsParens(e)?this._params(e,void 0,n):this.print(e.params[0],!0),this._predicate(e,!0),this.space(),this.printInnerComments(),this.token("=>"),this.space(),this.tokenContext|=t.TokenContext.arrowBody,this.print(e.body)},Zi.FunctionDeclaration=Zi.FunctionExpression=function(e,t){this._functionHead(e,t),this.space(),this.print(e.body)},Zi._functionHead=function(e,t){e.async&&(this.word("async"),this.format.preserveFormat||(this._endsWithInnerRaw=!1),this.space()),this.word("function"),e.generator&&(this.format.preserveFormat||(this._endsWithInnerRaw=!1),this.tokenChar(42)),this.space(),e.id&&this.print(e.id),this._params(e,e.id,t),"TSDeclareFunction"!==e.type&&this._predicate(e)},Zi._methodHead=function(e){const t=e.kind,n=e.key;"get"!==t&&"set"!==t||(this.word(t),this.space()),e.async&&(this.word("async",!0),this.space()),"method"!==t&&"init"!==t||e.generator&&this.tokenChar(42),e.computed?(this.tokenChar(91),this.print(n),this.tokenChar(93)):this.print(n),e.optional&&this.tokenChar(63),this._params(e,e.computed&&"StringLiteral"!==e.key.type?void 0:e.key)},Zi._param=function(e){this.printJoin(e.decorators),this.print(e),e.optional&&this.tokenChar(63),this.print(e.typeAnnotation)},Zi._parameters=function(e,t){const n=this.enterDelimited(),r=this.shouldPrintTrailingComma(t),i=e.length;for(let t=0;t<i;t++)this._param(e[t]),(r||t<i-1)&&(this.token(",",void 0,t),this.space());this.token(t),n()},Zi._params=function(e,t,n){this.print(e.typeParameters);const i=r.call(this,t,n);i&&this.sourceIdentifierName(i.name,i.pos),this.tokenChar(40),this._parameters(e.params,")");const s="ArrowFunctionExpression"===e.type;this.print(e.returnType,s),this._noLineTerminator=s},Zi._predicate=function(e,t){e.predicate&&(e.returnType||this.tokenChar(58),this.space(),this.print(e.predicate,t))},Zi._shouldPrintArrowParamsParens=function(e){var t,r;if(1!==e.params.length)return!0;if(e.typeParameters||e.returnType||e.predicate)return!0;const i=e.params[0];if(!n(i)||i.typeAnnotation||i.optional||null!=(t=i.leadingComments)&&t.length||null!=(r=i.trailingComments)&&r.length)return!0;if(this.tokenMap){if(null==e.loc)return!0;if(null!==this.tokenMap.findMatching(e,"("))return!0;const t=this.tokenMap.findMatching(e,"=>");return null==(null==t?void 0:t.loc)||t.loc.start.line!==e.loc.start.line}return!!this.format.retainLines};var e=Pr(),t=Bi();const{isIdentifier:n}=e;function r(e,t){let n,r=e;if(!r&&t){const e=t.type;"VariableDeclarator"===e?r=t.id:"AssignmentExpression"===e||"AssignmentPattern"===e?r=t.left:"ObjectProperty"===e||"ClassProperty"===e?t.computed&&"StringLiteral"!==t.key.type||(r=t.key):"ClassPrivateProperty"!==e&&"ClassAccessorProperty"!==e||(r=t.key)}if(r){var i,s;if("Identifier"===r.type)n={pos:null==(i=r.loc)?void 0:i.start,name:(null==(s=r.loc)?void 0:s.identifierName)||r.name};else if("PrivateName"===r.type){var a;n={pos:null==(a=r.loc)?void 0:a.start,name:"#"+r.id.name}}else if("StringLiteral"===r.type){var o;n={pos:null==(o=r.loc)?void 0:o.start,name:r.value}}return n}}return Zi}();Object.keys(s).forEach(function(t){"default"!==t&&"__esModule"!==t&&(t in e&&e[t]===s[t]||Object.defineProperty(e,t,{enumerable:!0,get:function(){return s[t]}}))});var a=ns();Object.keys(a).forEach(function(t){"default"!==t&&"__esModule"!==t&&(t in e&&e[t]===a[t]||Object.defineProperty(e,t,{enumerable:!0,get:function(){return a[t]}}))});var o=ls();Object.keys(o).forEach(function(t){"default"!==t&&"__esModule"!==t&&(t in e&&e[t]===o[t]||Object.defineProperty(e,t,{enumerable:!0,get:function(){return o[t]}}))});var l=us();Object.keys(l).forEach(function(t){"default"!==t&&"__esModule"!==t&&(t in e&&e[t]===l[t]||Object.defineProperty(e,t,{enumerable:!0,get:function(){return l[t]}}))});var c=function(){if(hs)return ds;hs=1,Object.defineProperty(ds,"__esModule",{value:!0}),ds.BlockStatement=function(e){var t;this.tokenChar(123);const n=this.enterDelimited(),r=null==(t=e.directives)?void 0:t.length;if(r){var i;const t=e.body.length?2:1;this.printSequence(e.directives,!0,t),null!=(i=e.directives[r-1].trailingComments)&&i.length||this.newline(t)}this.printSequence(e.body,!0),n(),this.rightBrace(e)},ds.Directive=function(e){this.print(e.value),this.semicolon()},ds.DirectiveLiteral=function(n){const r=this.getPossibleRaw(n);if(!this.format.minified&&void 0!==r)return void this.token(r);const{value:i}=n;if(t.test(i)){if(e.test(i))throw new Error("Malformed AST: it is not possible to print a directive containing both unescaped single and double quotes.");this.token(`'${i}'`)}else this.token(`"${i}"`)},ds.File=function(e){e.program&&this.print(e.program.interpreter),this.print(e.program)},ds.InterpreterDirective=function(e){this.token(`#!${e.value}`),this.newline(1,!0)},ds.Placeholder=function(e){this.token("%%"),this.print(e.name),this.token("%%"),"Statement"===e.expectedNode&&this.semicolon()},ds.Program=function(e){var t;this.noIndentInnerCommentsHere(),this.printInnerComments();const n=null==(t=e.directives)?void 0:t.length;if(n){var r;const t=e.body.length?2:1;this.printSequence(e.directives,void 0,t),null!=(r=e.directives[n-1].trailingComments)&&r.length||this.newline(t)}this.printSequence(e.body)};const e=/(?:^|[^\\])(?:\\\\)*'/,t=/(?:^|[^\\])(?:\\\\)*"/;return ds}();Object.keys(c).forEach(function(t){"default"!==t&&"__esModule"!==t&&(t in e&&e[t]===c[t]||Object.defineProperty(e,t,{enumerable:!0,get:function(){return c[t]}}))});var p=function(){if(fs)return ms;function e(){this.space()}return fs=1,Object.defineProperty(ms,"__esModule",{value:!0}),ms.JSXAttribute=function(e){this.print(e.name),e.value&&(this.tokenChar(61),this.print(e.value))},ms.JSXClosingElement=function(e){this.tokenChar(60),this.tokenChar(47),this.print(e.name),this.tokenChar(62)},ms.JSXClosingFragment=function(){this.token("</"),this.tokenChar(62)},ms.JSXElement=function(e){const t=e.openingElement;if(this.print(t),!t.selfClosing){this.indent();for(const t of e.children)this.print(t);this.dedent(),this.print(e.closingElement)}},ms.JSXEmptyExpression=function(){this.printInnerComments()},ms.JSXExpressionContainer=function(e){this.tokenChar(123),this.print(e.expression),this.rightBrace(e)},ms.JSXFragment=function(e){this.print(e.openingFragment),this.indent();for(const t of e.children)this.print(t);this.dedent(),this.print(e.closingFragment)},ms.JSXIdentifier=function(e){this.word(e.name)},ms.JSXMemberExpression=function(e){this.print(e.object),this.tokenChar(46),this.print(e.property)},ms.JSXNamespacedName=function(e){this.print(e.namespace),this.tokenChar(58),this.print(e.name)},ms.JSXOpeningElement=function(t){this.tokenChar(60),this.print(t.name),t.typeArguments&&this.print(t.typeArguments),this.print(t.typeParameters),t.attributes.length>0&&(this.space(),this.printJoin(t.attributes,void 0,void 0,e)),t.selfClosing&&(this.space(),this.tokenChar(47)),this.tokenChar(62)},ms.JSXOpeningFragment=function(){this.tokenChar(60),this.tokenChar(62)},ms.JSXSpreadAttribute=function(e){this.tokenChar(123),this.token("..."),this.print(e.argument),this.rightBrace(e)},ms.JSXSpreadChild=function(e){this.tokenChar(123),this.token("..."),this.print(e.expression),this.rightBrace(e)},ms.JSXText=function(e){const t=this.getPossibleRaw(e);void 0!==t?this.token(t,!0):this.token(e.value,!0)},ms}();Object.keys(p).forEach(function(t){"default"!==t&&"__esModule"!==t&&(t in e&&e[t]===p[t]||Object.defineProperty(e,t,{enumerable:!0,get:function(){return p[t]}}))});var u=function(){if(ys)return gs;function e(e,t){e.tokenMap&&t.start&&t.end?e.tokenMap.endMatches(t,",")?e.token(","):e.tokenMap.endMatches(t,";")&&e.semicolon():e.semicolon()}function t(e,t,n){var r;let i=0;null!=(r=e.tokenMap)&&r.startMatches(t,n)&&(i=1,e.token(n)),e.printJoin(t.types,void 0,void 0,function(e){this.space(),this.token(n,void 0,e+i),this.space()})}function n(e,t){!0!==t&&e.token(t)}function r(e){i(this,e,()=>{var t;return this.printList(e.members,null==(t=this.shouldPrintTrailingComma("}"))||t,!0,!0)})}function i(e,t,n){e.token("{");const r=e.enterDelimited();n(),r(),e.rightBrace(t)}function s(e,t,n){var r;const i=new Set;for(const e of n)e&&i.add(e);null==(r=e.tokenMap)||r.find(t,t=>!!i.has(t.value)&&(e.token(t.value),e.space(),i.delete(t.value),0===i.size));for(const t of i)e.word(t),e.space()}return ys=1,Object.defineProperty(gs,"__esModule",{value:!0}),gs.TSAnyKeyword=function(){this.word("any")},gs.TSArrayType=function(e){this.print(e.elementType,!0),this.tokenChar(91),this.tokenChar(93)},gs.TSSatisfiesExpression=gs.TSAsExpression=function(e){const{type:t,expression:n,typeAnnotation:r}=e;this.print(n,!0),this.space(),this.word("TSAsExpression"===t?"as":"satisfies"),this.space(),this.print(r)},gs.TSBigIntKeyword=function(){this.word("bigint")},gs.TSBooleanKeyword=function(){this.word("boolean")},gs.TSCallSignatureDeclaration=function(t){this.tsPrintSignatureDeclarationBase(t),e(this,t)},gs.TSInterfaceHeritage=gs.TSClassImplements=function(e){this.print(e.expression),this.print(e.typeArguments)},gs.TSConditionalType=function(e){this.print(e.checkType),this.space(),this.word("extends"),this.space(),this.print(e.extendsType),this.space(),this.tokenChar(63),this.space(),this.print(e.trueType),this.space(),this.tokenChar(58),this.space(),this.print(e.falseType)},gs.TSConstructSignatureDeclaration=function(t){this.word("new"),this.space(),this.tsPrintSignatureDeclarationBase(t),e(this,t)},gs.TSConstructorType=function(e){e.abstract&&(this.word("abstract"),this.space()),this.word("new"),this.space(),this.tsPrintFunctionOrConstructorType(e)},gs.TSDeclareFunction=function(e,t){e.declare&&(this.word("declare"),this.space()),this._functionHead(e,t),this.semicolon()},gs.TSDeclareMethod=function(e){this._classMethodHead(e),this.semicolon()},gs.TSEnumBody=r,gs.TSEnumDeclaration=function(e){const{declare:t,const:n,id:i}=e;t&&(this.word("declare"),this.space()),n&&(this.word("const"),this.space()),this.word("enum"),this.space(),this.print(i),this.space(),r.call(this,e)},gs.TSEnumMember=function(e){const{id:t,initializer:n}=e;this.print(t),n&&(this.space(),this.tokenChar(61),this.space(),this.print(n))},gs.TSExportAssignment=function(e){this.word("export"),this.space(),this.tokenChar(61),this.space(),this.print(e.expression),this.semicolon()},gs.TSExternalModuleReference=function(e){this.token("require("),this.print(e.expression),this.tokenChar(41)},gs.TSFunctionType=function(e){this.tsPrintFunctionOrConstructorType(e)},gs.TSImportEqualsDeclaration=function(e){const{id:t,moduleReference:n}=e;e.isExport&&(this.word("export"),this.space()),this.word("import"),this.space(),this.print(t),this.space(),this.tokenChar(61),this.space(),this.print(n),this.semicolon()},gs.TSImportType=function(e){const{argument:t,qualifier:n,options:r}=e;this.word("import"),this.tokenChar(40),this.print(t),r&&(this.tokenChar(44),this.print(r)),this.tokenChar(41),n&&(this.tokenChar(46),this.print(n));const i=e.typeParameters;i&&this.print(i)},gs.TSIndexSignature=function(t){const{readonly:n,static:r}=t;r&&(this.word("static"),this.space()),n&&(this.word("readonly"),this.space()),this.tokenChar(91),this._parameters(t.parameters,"]"),this.print(t.typeAnnotation),e(this,t)},gs.TSIndexedAccessType=function(e){this.print(e.objectType,!0),this.tokenChar(91),this.print(e.indexType),this.tokenChar(93)},gs.TSInferType=function(e){this.word("infer"),this.print(e.typeParameter)},gs.TSInstantiationExpression=function(e){this.print(e.expression),this.print(e.typeParameters)},gs.TSInterfaceBody=function(e){i(this,e,()=>this.printJoin(e.body,!0,!0))},gs.TSInterfaceDeclaration=function(e){const{declare:t,id:n,typeParameters:r,extends:i,body:s}=e;t&&(this.word("declare"),this.space()),this.word("interface"),this.space(),this.print(n),this.print(r),null!=i&&i.length&&(this.space(),this.word("extends"),this.space(),this.printList(i)),this.space(),this.print(s)},gs.TSIntersectionType=function(e){t(this,e,"&")},gs.TSIntrinsicKeyword=function(){this.word("intrinsic")},gs.TSLiteralType=function(e){this.print(e.literal)},gs.TSMappedType=function(e){const{nameType:t,optional:r,readonly:i,typeAnnotation:s}=e;this.tokenChar(123);const a=this.enterDelimited();this.space(),i&&(n(this,i),this.word("readonly"),this.space()),this.tokenChar(91),this.word(e.typeParameter.name),this.space(),this.word("in"),this.space(),this.print(e.typeParameter.constraint),t&&(this.space(),this.word("as"),this.space(),this.print(t)),this.tokenChar(93),r&&(n(this,r),this.tokenChar(63)),s&&(this.tokenChar(58),this.space(),this.print(s)),this.space(),a(),this.tokenChar(125)},gs.TSMethodSignature=function(t){const{kind:n}=t;"set"!==n&&"get"!==n||(this.word(n),this.space()),this.tsPrintPropertyOrMethodName(t),this.tsPrintSignatureDeclarationBase(t),e(this,t)},gs.TSModuleBlock=function(e){i(this,e,()=>this.printSequence(e.body,!0))},gs.TSModuleDeclaration=function(e){const{declare:t,id:n,kind:r}=e;t&&(this.word("declare"),this.space());{if(e.global||(this.word(null!=r?r:"Identifier"===n.type?"namespace":"module"),this.space()),this.print(n),!e.body)return void this.semicolon();let t=e.body;for(;"TSModuleDeclaration"===t.type;)this.tokenChar(46),this.print(t.id),t=t.body;this.space(),this.print(t)}},gs.TSNamedTupleMember=function(e){this.print(e.label),e.optional&&this.tokenChar(63),this.tokenChar(58),this.space(),this.print(e.elementType)},gs.TSNamespaceExportDeclaration=function(e){this.word("export"),this.space(),this.word("as"),this.space(),this.word("namespace"),this.space(),this.print(e.id),this.semicolon()},gs.TSNeverKeyword=function(){this.word("never")},gs.TSNonNullExpression=function(e){this.print(e.expression),this.tokenChar(33)},gs.TSNullKeyword=function(){this.word("null")},gs.TSNumberKeyword=function(){this.word("number")},gs.TSObjectKeyword=function(){this.word("object")},gs.TSOptionalType=function(e){this.print(e.typeAnnotation),this.tokenChar(63)},gs.TSParameterProperty=function(e){e.accessibility&&(this.word(e.accessibility),this.space()),e.readonly&&(this.word("readonly"),this.space()),this._param(e.parameter)},gs.TSParenthesizedType=function(e){this.tokenChar(40),this.print(e.typeAnnotation),this.tokenChar(41)},gs.TSPropertySignature=function(t){const{readonly:n}=t;n&&(this.word("readonly"),this.space()),this.tsPrintPropertyOrMethodName(t),this.print(t.typeAnnotation),e(this,t)},gs.TSQualifiedName=function(e){this.print(e.left),this.tokenChar(46),this.print(e.right)},gs.TSRestType=function(e){this.token("..."),this.print(e.typeAnnotation)},gs.TSStringKeyword=function(){this.word("string")},gs.TSSymbolKeyword=function(){this.word("symbol")},gs.TSTemplateLiteralType=function(e){this._printTemplate(e,e.types)},gs.TSThisType=function(){this.word("this")},gs.TSTupleType=function(e){this.tokenChar(91),this.printList(e.elementTypes,this.shouldPrintTrailingComma("]")),this.tokenChar(93)},gs.TSTypeAliasDeclaration=function(e){const{declare:t,id:n,typeParameters:r,typeAnnotation:i}=e;t&&(this.word("declare"),this.space()),this.word("type"),this.space(),this.print(n),this.print(r),this.space(),this.tokenChar(61),this.space(),this.print(i),this.semicolon()},gs.TSTypeAnnotation=function(e,t){this.token("TSFunctionType"!==t.type&&"TSConstructorType"!==t.type||t.typeAnnotation!==e?":":"=>"),this.space(),e.optional&&this.tokenChar(63),this.print(e.typeAnnotation)},gs.TSTypeAssertion=function(e){const{typeAnnotation:t,expression:n}=e;this.tokenChar(60),this.print(t),this.tokenChar(62),this.space(),this.print(n)},gs.TSTypeLiteral=function(e){i(this,e,()=>this.printJoin(e.members,!0,!0))},gs.TSTypeOperator=function(e){this.word(e.operator),this.space(),this.print(e.typeAnnotation)},gs.TSTypeParameter=function(e){e.const&&(this.word("const"),this.space()),e.in&&(this.word("in"),this.space()),e.out&&(this.word("out"),this.space()),this.word(e.name),e.constraint&&(this.space(),this.word("extends"),this.space(),this.print(e.constraint)),e.default&&(this.space(),this.tokenChar(61),this.space(),this.print(e.default))},gs.TSTypeParameterDeclaration=gs.TSTypeParameterInstantiation=function(e,t){this.tokenChar(60);let n="ArrowFunctionExpression"===t.type&&1===e.params.length;this.tokenMap&&null!=e.start&&null!=e.end&&(n&&(n=!!this.tokenMap.find(e,e=>this.tokenMap.matchesOriginal(e,","))),n||(n=this.shouldPrintTrailingComma(">"))),this.printList(e.params,n),this.tokenChar(62)},gs.TSTypePredicate=function(e){e.asserts&&(this.word("asserts"),this.space()),this.print(e.parameterName),e.typeAnnotation&&(this.space(),this.word("is"),this.space(),this.print(e.typeAnnotation.typeAnnotation))},gs.TSTypeQuery=function(e){this.word("typeof"),this.space(),this.print(e.exprName);const t=e.typeParameters;t&&this.print(t)},gs.TSTypeReference=function(e){const t=e.typeParameters;this.print(e.typeName,!!t),this.print(t)},gs.TSUndefinedKeyword=function(){this.word("undefined")},gs.TSUnionType=function(e){t(this,e,"|")},gs.TSUnknownKeyword=function(){this.word("unknown")},gs.TSVoidKeyword=function(){this.word("void")},gs.tsPrintClassMemberModifiers=function(e){const t="ClassPrivateProperty"===e.type,n="ClassAccessorProperty"===e.type||"ClassProperty"===e.type;s(this,e,[n&&e.declare&&"declare",!t&&e.accessibility]),e.static&&(this.word("static"),this.space()),s(this,e,[!t&&e.abstract&&"abstract",!t&&e.override&&"override",(n||t)&&e.readonly&&"readonly"])},gs.tsPrintFunctionOrConstructorType=function(e){const{typeParameters:t}=e,n=e.parameters;this.print(t),this.tokenChar(40),this._parameters(n,")"),this.space();const r=e.typeAnnotation;this.print(r)},gs.tsPrintPropertyOrMethodName=function(e){e.computed&&this.tokenChar(91),this.print(e.key),e.computed&&this.tokenChar(93),e.optional&&this.tokenChar(63)},gs.tsPrintSignatureDeclarationBase=function(e){const{typeParameters:t}=e,n=e.parameters;this.print(t),this.tokenChar(40),this._parameters(n,")");const r=e.typeAnnotation;this.print(r)},gs}();Object.keys(u).forEach(function(t){"default"!==t&&"__esModule"!==t&&(t in e&&e[t]===u[t]||Object.defineProperty(e,t,{enumerable:!0,get:function(){return u[t]}}))})}(Vi)),Vi}var Ss,bs,Ps,Es={};function vs(){if(bs)return Ii;bs=1,Object.defineProperty(Ii,"__esModule",{value:!0}),Ii.default=void 0;var e=(wi||(wi=1,Object.defineProperty(ki,"__esModule",{value:!0}),ki.default=void 0,ki.default=class{constructor(e,t){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=e,this._indentChar=t;for(let e=0;e<64;e++)this._fastIndentations.push(t.repeat(e));this._allocQueue()}_allocQueue(){const e=this._queue;for(let t=0;t<16;t++)e.push({char:0,repeat:1,line:void 0,column:void 0,identifierName:void 0,identifierNamePos:void 0,filename:""})}_pushQueue(e,t,n,r,i){const s=this._queueCursor;s===this._queue.length&&this._allocQueue();const a=this._queue[s];a.char=e,a.repeat=t,a.line=n,a.column=r,a.filename=i,this._queueCursor++}_popQueue(){if(0===this._queueCursor)throw new Error("Cannot pop from empty queue");return this._queue[--this._queueCursor]}get(){this._flush();const e=this._map,t={code:(this._buf+this._str).trimRight(),decodedMap:null==e?void 0:e.getDecoded(),get __mergedMap(){return this.map},get map(){const n=e?e.get():null;return t.map=n,n},set map(e){Object.defineProperty(t,"map",{value:e,writable:!0})},get rawMappings(){const n=null==e?void 0:e.getRawMappings();return t.rawMappings=n,n},set rawMappings(e){Object.defineProperty(t,"rawMappings",{value:e,writable:!0})}};return t}append(e,t){this._flush(),this._append(e,this._sourcePosition,t)}appendChar(e){this._flush(),this._appendChar(e,1,this._sourcePosition)}queue(e){if(10===e)for(;0!==this._queueCursor;){const e=this._queue[this._queueCursor-1].char;if(32!==e&&9!==e)break;this._queueCursor--}const t=this._sourcePosition;this._pushQueue(e,1,t.line,t.column,t.filename)}queueIndentation(e){0!==e&&this._pushQueue(-1,e,void 0,void 0,void 0)}_flush(){const e=this._queueCursor,t=this._queue;for(let n=0;n<e;n++){const e=t[n];this._appendChar(e.char,e.repeat,e)}this._queueCursor=0}_appendChar(e,t,n){if(this._last=e,-1===e){const e=this._fastIndentations[t];this._str+=void 0!==e?e:t>1?this._indentChar.repeat(t):this._indentChar}else this._str+=t>1?String.fromCharCode(e).repeat(t):String.fromCharCode(e);10!==e?(this._mark(n.line,n.column,n.identifierName,n.identifierNamePos,n.filename),this._position.column+=t):(this._position.line++,this._position.column=0),this._canMarkIdName&&(n.identifierName=void 0,n.identifierNamePos=void 0)}_append(e,t,n){const r=e.length,i=this._position;if(this._last=e.charCodeAt(r-1),++this._appendCount>4096?(this._str,this._buf+=this._str,this._str=e,this._appendCount=0):this._str+=e,!n&&!this._map)return void(i.column+=r);const{column:s,identifierName:a,identifierNamePos:o,filename:l}=t;let c=t.line;null==a&&null==o||!this._canMarkIdName||(t.identifierName=void 0,t.identifierNamePos=void 0);let p=e.indexOf("\n"),u=0;for(0!==p&&this._mark(c,s,a,o,l);-1!==p;)i.line++,i.column=0,u=p+1,u<r&&void 0!==c&&this._mark(++c,0,void 0,void 0,l),p=e.indexOf("\n",u);i.column+=r-u}_mark(e,t,n,r,i){var s;null==(s=this._map)||s.mark(this._position,e,t,n,r,i)}removeTrailingNewline(){const e=this._queueCursor;0!==e&&10===this._queue[e-1].char&&this._queueCursor--}removeLastSemicolon(){const e=this._queueCursor;0!==e&&59===this._queue[e-1].char&&this._queueCursor--}getLastChar(){const e=this._queueCursor;return 0!==e?this._queue[e-1].char:this._last}getNewlineCount(){const e=this._queueCursor;let t=0;if(0===e)return 10===this._last?1:0;for(let n=e-1;n>=0&&10===this._queue[n].char;n--)t++;return t===e&&10===this._last?t+1:t}endsWithCharAndNewline(){const e=this._queue,t=this._queueCursor;if(0!==t){if(10!==e[t-1].char)return;return t>1?e[t-2].char:this._last}}hasContent(){return 0!==this._queueCursor||!!this._last}exactSource(e,t){if(!this._map)return void t();this.source("start",e);const n=e.identifierName,r=this._sourcePosition;n&&(this._canMarkIdName=!1,r.identifierName=n),t(),n&&(this._canMarkIdName=!0,r.identifierName=void 0,r.identifierNamePos=void 0),this.source("end",e)}source(e,t){this._map&&this._normalizePosition(e,t,0)}sourceWithOffset(e,t,n){this._map&&this._normalizePosition(e,t,n)}_normalizePosition(e,t,n){const r=t[e],i=this._sourcePosition;r&&(i.line=r.line,i.column=Math.max(r.column+n,0),i.filename=t.filename)}getCurrentColumn(){const e=this._queue,t=this._queueCursor;let n=-1,r=0;for(let i=0;i<t;i++){const t=e[i];10===t.char&&(n=r),r+=t.repeat}return-1===n?this._position.column+r:r-1-n}getCurrentLine(){let e=0;const t=this._queue;for(let n=0;n<this._queueCursor;n++)10===t[n].char&&e++;return this._position.line+e}}),ki),t=Bi(),n=t,r=Pr(),i=Ui(),s=xs(),a=(Ss||(Ss=1,Object.defineProperty(Es,"__esModule",{value:!0}),Es.addDeprecatedGenerators=function(e){{const t={Noop(){},TSExpressionWithTypeArguments(e){this.print(e.expression),this.print(e.typeParameters)},DecimalLiteral(e){const t=this.getPossibleRaw(e);this.format.minified||void 0===t?this.word(e.value+"m"):this.word(t)}};Object.assign(e.prototype,t)}}),Es);const{isExpression:o,isFunction:l,isStatement:c,isClassBody:p,isTSInterfaceBody:u,isTSEnumMember:h}=r,d=/e/i,f=/\.0+$/,m=/[\n\r\u2028\u2029]/,y=/[\n\r\u2028\u2029]|\*\//;function T(e){return"CommentLine"===e.type||m.test(e.value)}const{needsParens:g}=n;class x{constructor(n,r,i=null,s=null){this.tokenContext=t.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=n,this._tokens=i,this._originalCode=s,this._indentRepeat=n.indent.style.length,this._inputMap=(null==r?void 0:r._inputMap)||null,this._buf=new e.default(r,n.indent.style[0])}enterForStatementInit(){return this.tokenContext|=t.TokenContext.forInitHead|t.TokenContext.forInOrInitHeadAccumulate,()=>this.tokenContext=t.TokenContext.normal}enterForXStatementInit(e){return e?(this.tokenContext|=t.TokenContext.forOfHead,null):(this.tokenContext|=t.TokenContext.forInHead|t.TokenContext.forInOrInitHeadAccumulate,()=>this.tokenContext=t.TokenContext.normal)}enterDelimited(){const e=this.tokenContext,n=this._noLineTerminatorAfterNode;return e&t.TokenContext.forInOrInitHeadAccumulate||null!==n?(this._noLineTerminatorAfterNode=null,this.tokenContext=t.TokenContext.normal,()=>{this._noLineTerminatorAfterNode=n,this.tokenContext=e}):()=>{}}generate(e){return this.format.preserveFormat&&(this.tokenMap=new i.TokenMap(e,this._tokens,this._originalCode)),this.print(e),this._maybeAddAuxComment(),this._buf.get()}indent(){const{format:e}=this;e.preserveFormat||e.compact||e.concise||this._indent++}dedent(){const{format:e}=this;e.preserveFormat||e.compact||e.concise||this._indent--}semicolon(e=!1){if(this._maybeAddAuxComment(),e)return this._appendChar(59),void(this._noLineTerminator=!1);if(this.tokenMap){const e=this._currentNode;if(null!=e.start&&null!=e.end){if(!this.tokenMap.endMatches(e,";"))return void(this._printSemicolonBeforeNextNode=this._buf.getCurrentLine());const t=this.tokenMap.getIndexes(this._currentNode);this._catchUpTo(this._tokens[t[t.length-1]].loc.start)}}this._queue(59),this._noLineTerminator=!1}rightBrace(e){this.format.minified&&this._buf.removeLastSemicolon(),this.sourceWithOffset("end",e.loc,-1),this.tokenChar(125)}rightParens(e){this.sourceWithOffset("end",e.loc,-1),this.tokenChar(41)}space(e=!1){const{format:t}=this;if(!t.compact&&!t.preserveFormat)if(e)this._space();else if(this._buf.hasContent()){const e=this.getLastChar();32!==e&&10!==e&&this._space()}}word(e,n=!1){this.tokenContext&=t.TokenContext.forInOrInitHeadAccumulatePassThroughMask,this._maybePrintInnerComments(e),this._maybeAddAuxComment(),this.tokenMap&&this._catchUpToCurrentToken(e),(this._endsWithWord||this._endsWithDiv&&47===e.charCodeAt(0))&&this._space(),this._append(e,!1),this._endsWithWord=!0,this._noLineTerminator=n}number(e,t){this.word(e),this._endsWithInteger=Number.isInteger(t)&&!function(e){if(e.length>2&&48===e.charCodeAt(0)){const t=e.charCodeAt(1);return 98===t||111===t||120===t}return!1}(e)&&!d.test(e)&&!f.test(e)&&46!==e.charCodeAt(e.length-1)}token(e,n=!1,r=0){this.tokenContext&=t.TokenContext.forInOrInitHeadAccumulatePassThroughMask,this._maybePrintInnerComments(e,r),this._maybeAddAuxComment(),this.tokenMap&&this._catchUpToCurrentToken(e,r);const i=this.getLastChar(),s=e.charCodeAt(0);(33===i&&("--"===e||61===s)||43===s&&43===i||45===s&&45===i||46===s&&this._endsWithInteger)&&this._space(),this._append(e,n),this._noLineTerminator=!1}tokenChar(e){this.tokenContext&=t.TokenContext.forInOrInitHeadAccumulatePassThroughMask;const n=String.fromCharCode(e);this._maybePrintInnerComments(n),this._maybeAddAuxComment(),this.tokenMap&&this._catchUpToCurrentToken(n);const r=this.getLastChar();(43===e&&43===r||45===e&&45===r||46===e&&this._endsWithInteger)&&this._space(),this._appendChar(e),this._noLineTerminator=!1}newline(e=1,t){if(!(e<=0)){if(!t){if(this.format.retainLines||this.format.compact)return;if(this.format.concise)return void this.space()}e>2&&(e=2),e-=this._buf.getNewlineCount();for(let t=0;t<e;t++)this._newline()}}endsWith(e){return this.getLastChar()===e}getLastChar(){return this._buf.getLastChar()}endsWithCharAndNewline(){return this._buf.endsWithCharAndNewline()}removeTrailingNewline(){this._buf.removeTrailingNewline()}exactSource(e,t){e?(this._catchUp("start",e),this._buf.exactSource(e,t)):t()}source(e,t){t&&(this._catchUp(e,t),this._buf.source(e,t))}sourceWithOffset(e,t,n){t&&!this.format.preserveFormat&&(this._catchUp(e,t),this._buf.sourceWithOffset(e,t,n))}sourceIdentifierName(e,t){if(!this._buf._canMarkIdName)return;const n=this._buf._sourcePosition;n.identifierNamePos=t,n.identifierName=e}_space(){this._queue(32)}_newline(){this._queue(10)}_catchUpToCurrentToken(e,t=0){const n=this.tokenMap.findMatching(this._currentNode,e,t);n&&this._catchUpTo(n.loc.start),-1!==this._printSemicolonBeforeNextToken&&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(e,t){this._maybeIndent(e.charCodeAt(0)),this._buf.append(e,t),this._endsWithWord=!1,this._endsWithInteger=!1,this._endsWithDiv=!1}_appendChar(e){this._maybeIndent(e),this._buf.appendChar(e),this._endsWithWord=!1,this._endsWithInteger=!1,this._endsWithDiv=!1}_queue(e){this._maybeIndent(e),this._buf.queue(e),this._endsWithWord=!1,this._endsWithInteger=!1}_maybeIndent(e){this._indent&&10!==e&&this.endsWith(10)&&this._buf.queueIndentation(this._getIndent())}_shouldIndent(e){if(this._indent&&10!==e&&this.endsWith(10))return!0}catchUp(e){if(!this.format.retainLines)return;const t=e-this._buf.getCurrentLine();for(let e=0;e<t;e++)this._newline()}_catchUp(e,t){const{format:n}=this;if(!n.preserveFormat)return void(n.retainLines&&null!=t&&t[e]&&this.catchUp(t[e].line));const r=null==t?void 0:t[e];null!=r&&this._catchUpTo(r)}_catchUpTo({line:e,column:t,index:n}){const r=e-this._buf.getCurrentLine();if(r>0&&this._noLineTerminator)return;for(let e=0;e<r;e++)this._newline();const i=r>0?t:t-this._buf.getCurrentColumn();if(i>0){const e=this._originalCode?this._originalCode.slice(n-i,n).replace(/[^\t\x0B\f \xA0\u1680\u2000-\u200A\u202F\u205F\u3000\uFEFF]/gu," "):" ".repeat(i);this._append(e,!1)}}_getIndent(){return this._indentRepeat*this._indent}printTerminatorless(e){this._noLineTerminator=!0,this.print(e)}print(e,r=!1,i){var s,a,l;if(!e)return;this._endsWithInnerRaw=!1;const c=e.type,p=this.format,u=p.concise;e._compact&&(p.concise=!0);const h=this[c];if(void 0===h)throw new ReferenceError(`unknown node of type ${JSON.stringify(c)} with constructor ${JSON.stringify(e.constructor.name)}`);const d=this._currentNode;this._currentNode=e,this.tokenMap&&(this._printSemicolonBeforeNextToken=this._printSemicolonBeforeNextNode);const f=this._insideAux;this._insideAux=null==e.loc,this._maybeAddAuxComment(this._insideAux&&!f);const m=null==(s=e.extra)?void 0:s.parenthesized;let y=m&&p.preserveFormat||m&&p.retainFunctionParens&&"FunctionExpression"===c||g(e,d,this.tokenContext,p.preserveFormat?this._boundGetRawIdentifier:void 0);if(!y&&m&&null!=(a=e.leadingComments)&&a.length&&"CommentBlock"===e.leadingComments[0].type){switch(null==d?void 0:d.type){case"ExpressionStatement":case"VariableDeclarator":case"AssignmentExpression":case"ReturnStatement":break;case"CallExpression":case"OptionalCallExpression":case"NewExpression":if(d.callee!==e)break;default:y=!0}}let x,S,b=!1;var P;(!y&&this._noLineTerminator&&(null!=(l=e.leadingComments)&&l.some(T)||this.format.retainLines&&e.loc&&e.loc.start.line>this._buf.getCurrentLine())&&(y=!0,b=!0),y)||(r||(r=!!d&&this._noLineTerminatorAfterNode===d&&n.isLastChild(d,e)),r&&(null!=(P=e.trailingComments)&&P.some(T)?o(e)&&(y=!0):(x=this._noLineTerminatorAfterNode,this._noLineTerminatorAfterNode=e)));y&&(this.tokenChar(40),b&&this.indent(),this._endsWithInnerRaw=!1,this.tokenContext&t.TokenContext.forInOrInitHeadAccumulate&&(S=this.tokenContext,this.tokenContext=t.TokenContext.normal),x=this._noLineTerminatorAfterNode,this._noLineTerminatorAfterNode=null),this._lastCommentLine=0,this._printLeadingComments(e,d);const E="Program"===c||"File"===c?null:e.loc;this.exactSource(E,h.bind(this,e,d)),y?(this._printTrailingComments(e,d),b&&(this.dedent(),this.newline()),this.tokenChar(41),this._noLineTerminator=r,S&&(this.tokenContext=S)):r&&!this._noLineTerminator?(this._noLineTerminator=!0,this._printTrailingComments(e,d)):this._printTrailingComments(e,d,i),this._currentNode=d,p.concise=u,this._insideAux=f,void 0!==x&&(this._noLineTerminatorAfterNode=x),this._endsWithInnerRaw=!1}_maybeAddAuxComment(e){e&&this._printAuxBeforeComment(),this._insideAux||this._printAuxAfterComment()}_printAuxBeforeComment(){if(this._printAuxAfterOnNextUserNode)return;this._printAuxAfterOnNextUserNode=!0;const e=this.format.auxiliaryCommentBefore;e&&this._printComment({type:"CommentBlock",value:e},0)}_printAuxAfterComment(){if(!this._printAuxAfterOnNextUserNode)return;this._printAuxAfterOnNextUserNode=!1;const e=this.format.auxiliaryCommentAfter;e&&this._printComment({type:"CommentBlock",value:e},0)}getPossibleRaw(e){const t=e.extra;if(null!=(null==t?void 0:t.raw)&&null!=t.rawValue&&e.value===t.rawValue)return t.raw}printJoin(e,t,n,r,i,s,a){if(null==e||!e.length)return;if(null==n&&this.format.retainLines){var o;const t=null==(o=e[0].loc)?void 0:o.start.line;null!=t&&t!==this._buf.getCurrentLine()&&(n=!0)}n&&this.indent();const l={nextNodeStartLine:0},c=null==r?void 0:r.bind(this),p=e.length;for(let n=0;n<p;n++){const r=e[n];var u;if(r)if(t&&this._printNewline(0===n,l),this.print(r,void 0,a||0),null==s||s(r,n),null!=c&&(n<p-1?c(n,!1):i&&c(n,!0)),t)if(null!=(u=r.trailingComments)&&u.length||(this._lastCommentLine=0),n+1===p)this.newline(1);else{var h;const t=e[n+1];l.nextNodeStartLine=(null==(h=t.loc)?void 0:h.start.line)||0,this._printNewline(!0,l)}}n&&this.dedent()}printAndIndentOnComments(e){const t=e.leadingComments&&e.leadingComments.length>0;t&&this.indent(),this.print(e),t&&this.dedent()}printBlock(e){const t=e.body;"EmptyStatement"!==t.type&&this.space(),this.print(t)}_printTrailingComments(e,t,n){const{innerComments:r,trailingComments:i}=e;null!=r&&r.length&&this._printComments(2,r,e,t,n),null!=i&&i.length&&this._printComments(2,i,e,t,n)}_printLeadingComments(e,t){const n=e.leadingComments;null!=n&&n.length&&this._printComments(0,n,e,t)}_maybePrintInnerComments(e,t){var n;this._endsWithInnerRaw&&this.printInnerComments(null==(n=this.tokenMap)?void 0:n.findMatching(this._currentNode,e,t));this._endsWithInnerRaw=!0,this._indentInnerComments=!0}printInnerComments(e){const t=this._currentNode,n=t.innerComments;if(null==n||!n.length)return;const r=this.endsWith(32),i=this._indentInnerComments,s=this._printedComments.size;i&&this.indent(),this._printComments(1,n,t,void 0,void 0,e),r&&s!==this._printedComments.size&&this.space(),i&&this.dedent()}noIndentInnerCommentsHere(){this._indentInnerComments=!1}printSequence(e,t,n){this.printJoin(e,!0,null!=t&&t,void 0,void 0,void 0,n)}printList(e,t,n,r,i,s){this.printJoin(e,n,r,null!=i?i:S,t,s)}shouldPrintTrailingComma(e){if(!this.tokenMap)return null;const t=this.tokenMap.findLastIndex(this._currentNode,t=>this.tokenMap.matchesOriginal(t,e));return t<=0?null:this.tokenMap.matchesOriginal(this._tokens[t-1],",")}_printNewline(e,t){const n=this.format;if(n.retainLines||n.compact)return;if(n.concise)return void this.space();if(!e)return;const r=t.nextNodeStartLine,i=this._lastCommentLine;if(r>0&&i>0){const e=r-i;if(e>=0)return void this.newline(e||1)}this._buf.hasContent()&&this.newline(1)}_shouldPrintComment(e,t){if(e.ignore)return 0;if(this._printedComments.has(e))return 0;if(this._noLineTerminator&&y.test(e.value))return 2;if(t&&this.tokenMap){const n=this.tokenMap.find(this._currentNode,t=>t.value===e.value);if(n&&n.start>t.start)return 2}return this._printedComments.add(e),this.format.shouldPrintComment(e.value)?1:0}_printComment(e,t){const n=this._noLineTerminator,r="CommentBlock"===e.type,i=r&&1!==t&&!this._noLineTerminator;i&&this._buf.hasContent()&&2!==t&&this.newline(1);const s=this.getLastChar();let a;if(91!==s&&123!==s&&40!==s&&this.space(),r){if(a=`/*${e.value}*/`,this.format.indent.adjustMultilineComment){var o;const t=null==(o=e.loc)?void 0:o.start.column;if(t){const e=new RegExp("\\n\\s{1,"+t+"}","g");a=a.replace(e,"\n")}if(this.format.concise)a=a.replace(/\n(?!$)/g,"\n");else{let e=this.format.retainLines?0:this._buf.getCurrentColumn();(this._shouldIndent(47)||this.format.retainLines)&&(e+=this._getIndent()),a=a.replace(/\n(?!$)/g,`\n${" ".repeat(e)}`)}}}else a=n?`/*${e.value}*/`:`//${e.value}`;if(this._endsWithDiv&&this._space(),this.tokenMap){const{_printSemicolonBeforeNextToken:t,_printSemicolonBeforeNextNode:n}=this;this._printSemicolonBeforeNextToken=-1,this._printSemicolonBeforeNextNode=-1,this.source("start",e.loc),this._append(a,r),this._printSemicolonBeforeNextNode=n,this._printSemicolonBeforeNextToken=t}else this.source("start",e.loc),this._append(a,r);r||n||this.newline(1,!0),i&&3!==t&&this.newline(1)}_printComments(e,t,n,r,i=0,s){const a=n.loc,o=t.length;let d=!!a;const f=d?a.start.line:0,y=d?a.end.line:0;let T=0,g=0;const x=this._noLineTerminator?function(){}:this.newline.bind(this);for(let a=0;a<o;a++){const S=t[a],b=this._shouldPrintComment(S,s);if(2===b){d=!1;break}if(d&&S.loc&&1===b){const t=S.loc.start.line,n=S.loc.end.line;if(0===e){let e=0;0===a?!this._buf.hasContent()||"CommentLine"!==S.type&&t===n||(e=g=1):e=t-T,T=n,x(e),this._printComment(S,1),a+1===o&&(x(Math.max(f-T,g)),T=f)}else if(1===e){const e=t-(0===a?f:T);T=n,x(e),this._printComment(S,1),a+1===o&&(x(Math.min(1,y-T)),T=y)}else{const e=t-(0===a?y-i:T);T=n,x(e),this._printComment(S,1)}}else{if(d=!1,1!==b)continue;if(1===o){const t=S.loc?S.loc.start.line===S.loc.end.line:!m.test(S.value),i=t&&!c(n)&&!p(r)&&!u(r)&&!h(n);0===e?this._printComment(S,i&&"ObjectExpression"!==n.type||t&&l(r,{body:n})?1:0):i&&2===e?this._printComment(S,1):this._printComment(S,0)}else 1!==e||"ObjectExpression"===n.type&&n.properties.length>1||"ClassBody"===n.type||"TSInterfaceBody"===n.type?this._printComment(S,0):this._printComment(S,0===a?2:a===o-1?3:0)}}2===e&&d&&T&&(this._lastCommentLine=T)}}function S(e,t){this.token(",",!1,e),t||this.space()}return Object.assign(x.prototype,s),(0,a.addDeprecatedGenerators)(x),Ii.default=x,Ii}function As(){if(Ps)return di;Ps=1,Object.defineProperty(di,"__esModule",{value:!0}),di.default=void 0,di.generate=r;var e=function(){if(Ai)return fi;Ai=1,Object.defineProperty(fi,"__esModule",{value:!0}),fi.default=void 0;var e=Ci(),t=Ei();return fi.default=class{constructor(n,r){var i;this._map=void 0,this._rawMappings=void 0,this._sourceFileName=void 0,this._lastGenLine=0,this._lastSourceLine=0,this._lastSourceColumn=0,this._inputMap=null;const s=this._map=new e.GenMapping({sourceRoot:n.sourceRoot});if(this._sourceFileName=null==(i=n.sourceFileName)?void 0:i.replace(/\\/g,"/"),this._rawMappings=void 0,n.inputSourceMap){this._inputMap=new t.TraceMap(n.inputSourceMap);const r=this._inputMap.resolvedSources;if(r.length)for(let t=0;t<r.length;t++){var a;(0,e.setSourceContent)(s,r[t],null==(a=this._inputMap.sourcesContent)?void 0:a[t])}}if("string"!=typeof r||n.inputSourceMap){if("object"==typeof r)for(const t of Object.keys(r))(0,e.setSourceContent)(s,t.replace(/\\/g,"/"),r[t])}else(0,e.setSourceContent)(s,this._sourceFileName,r)}get(){return(0,e.toEncodedMap)(this._map)}getDecoded(){return(0,e.toDecodedMap)(this._map)}getRawMappings(){return this._rawMappings||(this._rawMappings=(0,e.allMappings)(this._map))}mark(n,r,i,s,a,o){var l;let c;if(this._rawMappings=void 0,null!=r)if(this._inputMap){if(c=(0,t.originalPositionFor)(this._inputMap,{line:r,column:i}),!c.name&&a){const e=(0,t.originalPositionFor)(this._inputMap,a);e.name&&(s=e.name)}}else c={name:null,source:(null==o?void 0:o.replace(/\\/g,"/"))||this._sourceFileName,line:r,column:i};(0,e.maybeAddMapping)(this._map,{name:s,generated:n,source:null==(l=c)?void 0:l.source,original:c})}},fi}(),t=vs();function n(e,t,n){if(t.experimental_preserveFormat){if("string"!=typeof e)throw new Error("`experimental_preserveFormat` requires the original `code` to be passed to @babel/generator as a string");if(!t.retainLines)throw new Error("`experimental_preserveFormat` requires `retainLines` to be set to `true`");if(t.compact&&"auto"!==t.compact)throw new Error("`experimental_preserveFormat` is not compatible with the `compact` option");if(t.minified)throw new Error("`experimental_preserveFormat` is not compatible with the `minified` option");if(t.jsescOption)throw new Error("`experimental_preserveFormat` is not compatible with the `jsescOption` option");if(!Array.isArray(n.tokens))throw new Error("`experimental_preserveFormat` requires the AST to have attached the token of the input code. Make sure to enable the `tokens: true` parser option.")}const r={auxiliaryCommentBefore:t.auxiliaryCommentBefore,auxiliaryCommentAfter:t.auxiliaryCommentAfter,shouldPrintComment:t.shouldPrintComment,preserveFormat:t.experimental_preserveFormat,retainLines:t.retainLines,retainFunctionParens:t.retainFunctionParens,comments:null==t.comments||t.comments,compact:t.compact,minified:t.minified,concise:t.concise,indent:{adjustMultilineComment:!0,style:" "},jsescOption:Object.assign({quotes:"double",wrap:!0,minimal:!1},t.jsescOption),topicToken:t.topicToken,importAttributesKeyword:t.importAttributesKeyword};var i;r.decoratorsBeforeExport=t.decoratorsBeforeExport,r.jsescOption.json=t.jsonCompatibleStrings,r.recordAndTupleSyntaxType=null!=(i=t.recordAndTupleSyntaxType)?i:"hash",r.minified?(r.compact=!0,r.shouldPrintComment=r.shouldPrintComment||(()=>r.comments)):r.shouldPrintComment=r.shouldPrintComment||(e=>r.comments||e.includes("@license")||e.includes("@preserve")),"auto"===r.compact&&(r.compact="string"==typeof e&&e.length>5e5,r.compact&&console.error(`[BABEL] Note: The code generator has deoptimised the styling of ${t.filename} as it exceeds the max of 500KB.`)),(r.compact||r.preserveFormat)&&(r.indent.adjustMultilineComment=!1);const{auxiliaryCommentBefore:s,auxiliaryCommentAfter:a,shouldPrintComment:o}=r;return s&&!o(s)&&(r.auxiliaryCommentBefore=void 0),a&&!o(a)&&(r.auxiliaryCommentAfter=void 0),r}function r(r,i={},s){const a=n(s,i,r),o=i.sourceMaps?new e.default(i,s):null;return new t.default(a,o,r.tokens,"string"==typeof s?s:null).generate(r)}return di.CodeGenerator=class{constructor(t,r={},i){this._ast=void 0,this._format=void 0,this._map=void 0,this._ast=t,this._format=n(i,r,t),this._map=r.sourceMaps?new e.default(r,i):null}generate(){return new t.default(this._format,this._map).generate(this._ast)}},di.default=r,di}var Cs,ws={};var Is,ks,Ns,Os,_s={},Ds={},Ls={},Ms={};function Fs(){if(Is)return Ms;Is=1,Object.defineProperty(Ms,"__esModule",{value:!0}),Ms.createUnionType=function(e){if(e.every(e=>i(e)))return t?t(e):r(e);if(e.every(e=>s(e))&&n)return n(e)};var e=Pr();const{createFlowUnionType:t,createTSUnionType:n,createUnionTypeAnnotation:r,isFlowType:i,isTSType:s}=e;return Ms}function Bs(){if(ks)return Ls;ks=1,Object.defineProperty(Ls,"__esModule",{value:!0}),Ls.default=function(e){if(!this.isReferenced())return;const n=this.scope.getBinding(e.name);if(n)return n.identifier.typeAnnotation?n.identifier.typeAnnotation:function(e,n,r){const i=[],s=[];let o=a(e,n,s);const c=l(e,n,r);if(c){const t=a(e,c.ifStatement);o=o.filter(e=>!t.includes(e)),i.push(c.typeAnnotation)}if(o.length){o.push(...s);for(const e of o)i.push(e.getTypeAnnotation())}if(!i.length)return;return(0,t.createUnionType)(i)}(n,this,e.name);if("undefined"===e.name)return s();if("NaN"===e.name||"Infinity"===e.name)return i();e.name};var e=Pr(),t=Fs();const{BOOLEAN_NUMBER_BINARY_OPERATORS:n,createTypeAnnotationBasedOnTypeof:r,numberTypeAnnotation:i,voidTypeAnnotation:s}=e;function a(e,t,n){const r=e.constantViolations.slice();return r.unshift(e.path),r.filter(e=>{const r=(e=e.resolve())._guessExecutionStatusRelativeTo(t);return n&&"unknown"===r&&n.push(e),"before"===r})}function o(e,t){const s=t.node.operator,a=t.get("right").resolve(),o=t.get("left").resolve();let l,c,p;if(o.isIdentifier({name:e})?l=a:a.isIdentifier({name:e})&&(l=o),l)return"==="===s?l.getTypeAnnotation():n.includes(s)?i():void 0;if("==="!==s&&"=="!==s)return;if(o.isUnaryExpression({operator:"typeof"})?(c=o,p=a):a.isUnaryExpression({operator:"typeof"})&&(c=a,p=o),!c)return;if(!c.get("argument").isIdentifier({name:e}))return;if(p=p.resolve(),!p.isLiteral())return;const u=p.node.value;return"string"==typeof u?r(u):void 0}function l(e,n,r){const i=function(e,t,n){let r;for(;r=t.parentPath;){if(r.isIfStatement()||r.isConditionalExpression()){if("test"===t.key)return;return r}if(r.isFunction()&&(null==n||r.parentPath.scope.getBinding(n)!==e))return;t=r}}(e,n,r);if(!i)return;const s=[i.get("test")],a=[];for(let e=0;e<s.length;e++){const t=s[e];if(t.isLogicalExpression())"&&"===t.node.operator&&(s.push(t.get("left")),s.push(t.get("right")));else if(t.isBinaryExpression()){const e=o(r,t);e&&a.push(e)}}return a.length?{typeAnnotation:(0,t.createUnionType)(a),ifStatement:i}:l(e,i,r)}return Ls}function js(){return Ns||(Ns=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.ArrayExpression=v,e.AssignmentExpression=function(){return this.get("right").getTypeAnnotation()},e.BinaryExpression=function(e){const t=e.operator;if(a.includes(t))return y();if(i.includes(t))return u();if("+"===t){const e=this.get("right"),t=this.get("left");return t.isBaseType("number")&&e.isBaseType("number")?y():t.isBaseType("string")||e.isBaseType("string")?T():x([T(),y()])}},e.BooleanLiteral=function(){return u()},e.CallExpression=function(){const{callee:e}=this.node;if(w(e))return p(T());if(C(e)||I(e)||b(e,{name:"Array"}))return p(c());if(k(e))return p(g([T(),c()]));return N(this.get("callee"))},e.ConditionalExpression=function(){const e=[this.get("consequent").getTypeAnnotation(),this.get("alternate").getTypeAnnotation()];return(0,r.createUnionType)(e)},e.ClassDeclaration=e.ClassExpression=e.FunctionDeclaration=e.ArrowFunctionExpression=e.FunctionExpression=function(){return d(f("Function"))},Object.defineProperty(e,"Identifier",{enumerable:!0,get:function(){return n.default}}),e.LogicalExpression=function(){const e=[this.get("left").getTypeAnnotation(),this.get("right").getTypeAnnotation()];return(0,r.createUnionType)(e)},e.NewExpression=function(e){if("Identifier"===e.callee.type)return d(e.callee)},e.NullLiteral=function(){return m()},e.NumericLiteral=function(){return y()},e.ObjectExpression=function(){return d(f("Object"))},e.ParenthesizedExpression=function(){return this.get("expression").getTypeAnnotation()},e.RegExpLiteral=function(){return d(f("RegExp"))},e.RestElement=A,e.SequenceExpression=function(){return this.get("expressions").pop().getTypeAnnotation()},e.StringLiteral=function(){return T()},e.TSAsExpression=E,e.TSNonNullExpression=function(){return this.get("expression").getTypeAnnotation()},e.TaggedTemplateExpression=function(){return N(this.get("tag"))},e.TemplateLiteral=function(){return T()},e.TypeCastExpression=P,e.UnaryExpression=function(e){const t=e.operator;if("void"===t)return S();if(o.includes(t))return y();if(l.includes(t))return T();if(s.includes(t))return u()},e.UpdateExpression=function(e){const t=e.operator;if("++"===t||"--"===t)return y()},e.VariableDeclarator=function(){if(!this.get("id").isIdentifier())return;return this.get("init").getTypeAnnotation()};var t=Pr(),n=Bs(),r=Fs();const{BOOLEAN_BINARY_OPERATORS:i,BOOLEAN_UNARY_OPERATORS:s,NUMBER_BINARY_OPERATORS:a,NUMBER_UNARY_OPERATORS:o,STRING_UNARY_OPERATORS:l,anyTypeAnnotation:c,arrayTypeAnnotation:p,booleanTypeAnnotation:u,buildMatchMemberExpression:h,genericTypeAnnotation:d,identifier:f,nullLiteralTypeAnnotation:m,numberTypeAnnotation:y,stringTypeAnnotation:T,tupleTypeAnnotation:g,unionTypeAnnotation:x,voidTypeAnnotation:S,isIdentifier:b}=t;function P(e){return e.typeAnnotation}function E(e){return e.typeAnnotation}function v(){return d(f("Array"))}function A(){return v()}P.validParent=!0,E.validParent=!0,A.validParent=!0;const C=h("Array.from"),w=h("Object.keys"),I=h("Object.values"),k=h("Object.entries");function N(e){if((e=e.resolve()).isFunction()){const{node:t}=e;if(t.async)return t.generator?d(f("AsyncIterator")):d(f("Promise"));if(t.generator)return d(f("Iterator"));if(e.node.returnType)return e.node.returnType}}}(Ds)),Ds}var Rs,Us={},Ks={},Vs={exports:{}};function qs(){if(Rs)return Vs.exports;Rs=1;let e=process||{},t=e.argv||[],n=e.env||{},r=!(n.NO_COLOR||t.includes("--no-color"))&&(!!n.FORCE_COLOR||t.includes("--color")||"win32"===e.platform||(e.stdout||{}).isTTY&&"dumb"!==n.TERM||!!n.CI),i=(e,t,n=e)=>r=>{let i=""+r,a=i.indexOf(t,e.length);return~a?e+s(i,t,n,a)+t:e+i+t},s=(e,t,n,r)=>{let i="",s=0;do{i+=e.substring(s,r)+n,s=r+t.length,r=e.indexOf(t,s)}while(~r);return i+e.substring(s)},a=(e=r)=>{let t=e?i:()=>String;return{isColorSupported:e,reset:t("[0m","[0m"),bold:t("[1m","[22m","[22m[1m"),dim:t("[2m","[22m","[22m[2m"),italic:t("[3m","[23m"),underline:t("[4m","[24m"),inverse:t("[7m","[27m"),hidden:t("[8m","[28m"),strikethrough:t("[9m","[29m"),black:t("[30m","[39m"),red:t("[31m","[39m"),green:t("[32m","[39m"),yellow:t("[33m","[39m"),blue:t("[34m","[39m"),magenta:t("[35m","[39m"),cyan:t("[36m","[39m"),white:t("[37m","[39m"),gray:t("[90m","[39m"),bgBlack:t("[40m","[49m"),bgRed:t("[41m","[49m"),bgGreen:t("[42m","[49m"),bgYellow:t("[43m","[49m"),bgBlue:t("[44m","[49m"),bgMagenta:t("[45m","[49m"),bgCyan:t("[46m","[49m"),bgWhite:t("[47m","[49m"),blackBright:t("[90m","[39m"),redBright:t("[91m","[39m"),greenBright:t("[92m","[39m"),yellowBright:t("[93m","[39m"),blueBright:t("[94m","[39m"),magentaBright:t("[95m","[39m"),cyanBright:t("[96m","[39m"),whiteBright:t("[97m","[39m"),bgBlackBright:t("[100m","[49m"),bgRedBright:t("[101m","[49m"),bgGreenBright:t("[102m","[49m"),bgYellowBright:t("[103m","[49m"),bgBlueBright:t("[104m","[49m"),bgMagentaBright:t("[105m","[49m"),bgCyanBright:t("[106m","[49m"),bgWhiteBright:t("[107m","[49m")}};return Vs.exports=a(),Vs.exports.createColors=a,Vs.exports}var $s,Ws,Ys={};function Js(){return $s||($s=1,Object.defineProperty(Ys,"__esModule",{value:!0}),Ys.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,Ys.matchToToken=function(e){var t={type:"invalid",value:e[0],closed:void 0};return e[1]?(t.type="string",t.closed=!(!e[3]&&!e[4])):e[5]?t.type="comment":e[6]?(t.type="comment",t.closed=!!e[7]):e[8]?t.type="regex":e[9]?t.type="number":e[10]?t.type="name":e[11]?t.type="punctuator":e[12]&&(t.type="whitespace"),t}),Ys}function Xs(){if(Ws)return Ks;Ws=1,Object.defineProperty(Ks,"__esModule",{value:!0});var e=qs(),t=Js(),n=pe();const r=(e,t)=>n=>e(t(n));function i(e){return{keyword:e.cyan,capitalized:e.yellow,jsxIdentifier:e.yellow,punctuator:e.yellow,number:e.magenta,string:e.green,regex:e.magenta,comment:e.gray,invalid:r(r(e.white,e.bgRed),e.bold),gutter:e.gray,marker:r(e.red,e.bold),message:r(e.red,e.bold),reset:e.reset}}const s=i(e.createColors(!0)),a=i(e.createColors(!1));function o(e){return e?s:a}const l=new Set(["as","async","from","get","of","set"]),c=/\r\n|[\n\r\u2028\u2029]/,p=/^[()[\]{}]$/;let u;{const e=/^[a-z][\w-]*$/i,r=function(t,r,i){if("name"===t.type){if(n.isKeyword(t.value)||n.isStrictReservedWord(t.value,!0)||l.has(t.value))return"keyword";if(e.test(t.value)&&("<"===i[r-1]||"</"===i.slice(r-2,r)))return"jsxIdentifier";if(t.value[0]!==t.value[0].toLowerCase())return"capitalized"}return"punctuator"===t.type&&p.test(t.value)?"bracket":"invalid"!==t.type||"@"!==t.value&&"#"!==t.value?t.type:"punctuator"};u=function*(e){let n;for(;n=t.default.exec(e);){const i=t.matchToToken(n);yield{type:r(i,n.index,e),value:i.value}}}}function h(e){if(""===e)return"";const t=o(!0);let n="";for(const{type:r,value:i}of u(e))n+=r in t?i.split(c).map(e=>t[r](e)).join("\n"):i;return n}let d=!1;const f=/\r\n|[\n\r\u2028\u2029]/;function m(t,n,r={}){const i=r.forceColor||("object"!=typeof process||"0"!==process.env.FORCE_COLOR&&"false"!==process.env.FORCE_COLOR)&&e.isColorSupported&&r.highlightCode,s=o(i),a=t.split(f),{start:l,end:c,markerLines:p}=function(e,t,n){const r=Object.assign({column:0,line:-1},e.start),i=Object.assign({},r,e.end),{linesAbove:s=2,linesBelow:a=3}=n||{},o=r.line,l=r.column,c=i.line,p=i.column;let u=Math.max(o-(s+1),0),h=Math.min(t.length,c+a);-1===o&&(u=0),-1===c&&(h=t.length);const d=c-o,f={};if(d)for(let e=0;e<=d;e++){const n=e+o;if(l)if(0===e){const e=t[n-1].length;f[n]=[l,e-l+1]}else if(e===d)f[n]=[0,p];else{const r=t[n-e].length;f[n]=[0,r]}else f[n]=!0}else f[o]=l===p?!l||[l,0]:[l,p-l];return{start:u,end:h,markerLines:f}}(n,a,r),u=n.start&&"number"==typeof n.start.column,d=String(c).length;let m=(i?h(t):t).split(f,c).slice(l,c).map((e,t)=>{const n=l+1+t,i=` ${` ${n}`.slice(-d)} |`,a=p[n],o=!p[n+1];if(a){let t="";if(Array.isArray(a)){const n=e.slice(0,Math.max(a[0]-1,0)).replace(/[^\t]/g," "),l=a[1]||1;t=["\n ",s.gutter(i.replace(/\d/g," "))," ",n,s.marker("^").repeat(l)].join(""),o&&r.message&&(t+=" "+s.message(r.message))}return[s.marker(">"),s.gutter(i),e.length>0?` ${e}`:"",t].join("")}return` ${s.gutter(i)}${e.length>0?` ${e}`:""}`}).join("\n");return r.message&&!u&&(m=`${" ".repeat(d+1)}${r.message}\n${m}`),i?s.reset(m):m}return Ks.codeFrameColumns=m,Ks.default=function(e,t,n,r={}){if(!d){d=!0;const e="Passing lineNumber and colNumber is deprecated to @babel/code-frame. Please use `codeFrameColumns`.";if(process.emitWarning)process.emitWarning(e,"DeprecationWarning");else{new Error(e).name="DeprecationWarning",console.warn(new Error(e))}}return m(e,{start:{column:n=Math.max(n,0),line:t}},r)},Ks.highlight=h,Ks}var Hs,zs,Gs={},Qs={},Zs={};function ea(){if(zs)return Qs;zs=1,Object.defineProperty(Qs,"__esModule",{value:!0}),Qs._assertUnremoved=u,Qs._callRemovalHooks=l,Qs._markRemoved=p,Qs._remove=c,Qs._removeFromScope=o,Qs.remove=function(){var e;if(u.call(this),a.resync.call(this),l.call(this))return void p.call(this);null!=(e=this.opts)&&e.noScope||o.call(this);this.shareCommentsWithSiblings(),c.call(this),p.call(this)};var e=(Hs||(Hs=1,Object.defineProperty(Zs,"__esModule",{value:!0}),Zs.hooks=void 0,Zs.hooks=[function(e,t){if("test"===e.key&&(t.isWhile()||t.isSwitchCase())||"declaration"===e.key&&t.isExportDeclaration()||"body"===e.key&&t.isLabeledStatement()||"declarations"===e.listKey&&t.isVariableDeclaration()&&1===t.node.declarations.length||"expression"===e.key&&t.isExpressionStatement())return t.remove(),!0},function(e,t){if(t.isSequenceExpression()&&1===t.node.expressions.length)return t.replaceWith(t.node.expressions[0]),!0},function(e,t){if(t.isBinary())return"left"===e.key?t.replaceWith(t.node.right):t.replaceWith(t.node.left),!0},function(e,t){if(t.isIfStatement()&&"consequent"===e.key||"body"===e.key&&(t.isLoop()||t.isArrowFunctionExpression()))return e.replaceWith({type:"BlockStatement",directives:[],body:[]}),!0}]),Zs),t=oi(),n=ca(),r=za(),i=Pr(),s=ia(),a=Qa();function o(){const e=i.getBindingIdentifiers(this.node,!1,!1,!0);Object.keys(e).forEach(e=>this.scope.removeBinding(e))}function l(){if(this.parentPath)for(const t of e.hooks)if(t(this,this.parentPath))return!0}function c(){Array.isArray(this.container)?(this.container.splice(this.key,1),s.updateSiblingKeys.call(this,this.key,-1)):n._replaceWith.call(this,null)}function p(){var e;(this._traverseFlags|=r.SHOULD_SKIP|r.REMOVED,this.parent)&&(null==(e=(0,t.getCachedPaths)(this))||e.delete(this.node));this.node=null}function u(){if(this.removed)throw this.buildCodeFrameError("NodePath has been removed so is read-only.")}return Qs}var ta,na,ra={};function ia(){if(na)return Gs;na=1,Object.defineProperty(Gs,"__esModule",{value:!0}),Gs._containerInsert=b,Gs._containerInsertAfter=E,Gs._containerInsertBefore=P,Gs._verifyNodeList=w,Gs.insertAfter=function(e){if(r._assertUnremoved.call(this),this.isSequenceExpression())return v(this.get("expressions")).insertAfter(e);const t=w.call(this,e),{parentPath:n,parent:i}=this;if(n.isExpressionStatement()||n.isLabeledStatement()||m(i)||n.isExportDefaultDeclaration()&&this.isDeclaration())return n.insertAfter(t.map(e=>y(e)?h(e):e));if(this.isNodeType("Expression")&&!this.isJSXElement()&&!n.isJSXElement()||n.isForStatement()&&"init"===this.key){const e=this;if(e.node){const r=e.node;let{scope:i}=this;if(i.path.isPattern())return o(r),e.replaceWith(p(a([],r),[])),e.get("callee.body").insertAfter(t),[e];if(A(e))t.unshift(r);else if(f(r)&&x(r.callee))t.unshift(r),t.push(S());else if(function(e,t){if(!d(e)||!T(e.left))return!1;const n=t.getBlockParent();return n.hasOwnBinding(e.left.name)&&n.getOwnBinding(e.left.name).constantViolations.length<=1}(r,i))t.unshift(r),t.push(u(r.left));else if(i.isPure(r,!0))t.push(r);else{n.isMethod({computed:!0,key:r})&&(i=i.parent);const e=i.generateDeclaredUidIdentifier();t.unshift(h(l("=",u(e),r))),t.push(h(u(e)))}}return this.replaceExpressionWithStatements(t)}if(Array.isArray(this.container))return E.call(this,t);if(this.isStatementOrBlock()){const e=this.node,n=e&&(!this.isExpressionStatement()||null!=e.expression),[r]=this.replaceWith(c(n?[e]:[]));return r.pushContainer("body",t)}throw new Error("We don't know what to do with this node type. We were previously a Statement but we can't fit in here?")},Gs.insertBefore=function(e){r._assertUnremoved.call(this);const t=w.call(this,e),{parentPath:n,parent:i}=this;if(n.isExpressionStatement()||n.isLabeledStatement()||m(i)||n.isExportDefaultDeclaration()&&this.isDeclaration())return n.insertBefore(t);if(this.isNodeType("Expression")&&!this.isJSXElement()||n.isForStatement()&&"init"===this.key)return this.node&&t.push(this.node),this.replaceExpressionWithStatements(t);if(Array.isArray(this.container))return P.call(this,t);if(this.isStatementOrBlock()){const e=this.node,n=e&&(!this.isExpressionStatement()||null!=e.expression),[r]=this.replaceWith(c(n?[e]:[]));return r.unshiftContainer("body",t)}throw new Error("We don't know what to do with this node type. We were previously a Statement but we can't fit in here?")},Gs.pushContainer=function(e,n){r._assertUnremoved.call(this);const i=w.call(this,n),s=this.node[e],a=t.default.get({parentPath:this,parent:this.node,container:s,listKey:e,key:s.length}).setContext(this.context);return a.replaceWithMultiple(i)},Gs.unshiftContainer=function(e,n){r._assertUnremoved.call(this);const i=w.call(this,n),s=this.node[e],a=t.default.get({parentPath:this,parent:this.node,container:s,listKey:e,key:0}).setContext(this.context);return P.call(a,i)},Gs.updateSiblingKeys=C;var e=oi(),t=za(),n=Qa(),r=ea(),i=Pr(),s=function(){if(ta)return ra;ta=1,Object.defineProperty(ra,"__esModule",{value:!0}),ra.default=void 0;var e=Pr(),t=e;const{react:n}=e,{cloneNode:r,jsxExpressionContainer:i,variableDeclaration:s,variableDeclarator:a}=t,o={ReferencedIdentifier(e,t){if(e.isJSXIdentifier()&&n.isCompatTag(e.node.name)&&!e.parentPath.isJSXMemberExpression())return;if("this"===e.node.name){let n=e.scope;do{if(n.path.isFunction()&&!n.path.isArrowFunctionExpression())break}while(n=n.parent);n&&t.breakOnScopePaths.push(n.path)}const r=e.scope.getBinding(e.node.name);if(r){for(const n of r.constantViolations)if(n.scope!==r.path.scope)return t.mutableBinding=!0,void e.stop();r===t.scope.getBinding(e.node.name)&&(t.bindings[e.node.name]=r)}}};return ra.default=class{constructor(e,t){this.breakOnScopePaths=void 0,this.bindings=void 0,this.mutableBinding=void 0,this.scopes=void 0,this.scope=void 0,this.path=void 0,this.attachAfter=void 0,this.breakOnScopePaths=[],this.bindings={},this.mutableBinding=!1,this.scopes=[],this.scope=t,this.path=e,this.attachAfter=!1}isCompatibleScope(e){for(const t of Object.keys(this.bindings)){const n=this.bindings[t];if(!e.bindingIdentifierEquals(t,n.identifier))return!1}return!0}getCompatibleScopes(){let e=this.path.scope;do{if(!this.isCompatibleScope(e))break;if(this.scopes.push(e),this.breakOnScopePaths.includes(e.path))break}while(e=e.parent)}getAttachmentPath(){let e=this._getAttachmentPath();if(!e)return;let t=e.scope;if(t.path===e&&(t=e.scope.parent),t.path.isProgram()||t.path.isFunction())for(const n of Object.keys(this.bindings)){if(!t.hasOwnBinding(n))continue;const r=this.bindings[n];if("param"!==r.kind&&"params"!==r.path.parentKey&&this.getAttachmentParentForPath(r.path).key>=e.key){this.attachAfter=!0,e=r.path;for(const t of r.constantViolations)this.getAttachmentParentForPath(t).key>e.key&&(e=t)}}return e}_getAttachmentPath(){const e=this.scopes.pop();if(e)if(e.path.isFunction()){if(!this.hasOwnParamBindings(e))return this.getNextScopeAttachmentParent();{if(this.scope===e)return;const t=e.path.get("body").get("body");for(let e=0;e<t.length;e++)if(!t[e].node._blockHoist)return t[e]}}else if(e.path.isProgram())return this.getNextScopeAttachmentParent()}getNextScopeAttachmentParent(){const e=this.scopes.pop();if(e)return this.getAttachmentParentForPath(e.path)}getAttachmentParentForPath(e){do{if(!e.parentPath||Array.isArray(e.container)&&e.isStatement())return e}while(e=e.parentPath);return e}hasOwnParamBindings(e){for(const t of Object.keys(this.bindings)){if(!e.hasOwnBinding(t))continue;const n=this.bindings[t];if("param"===n.kind&&n.constant)return!0}return!1}run(){if(this.path.traverse(o,this),this.mutableBinding)return;this.getCompatibleScopes();const e=this.getAttachmentPath();if(!e)return;if(e.getFunctionParent()===this.path.getFunctionParent())return;let t=e.scope.generateUidIdentifier("ref");const n=a(t,this.path.node),l=this.attachAfter?"insertAfter":"insertBefore",[c]=e[l]([e.isVariableDeclarator()?n:s("var",[n])]),p=this.path.parentPath;return p.isJSXElement()&&this.path.container===p.node.children&&(t=i(t)),this.path.replaceWith(r(t)),c.isVariableDeclarator()?c.get("init"):c.get("declarations.0.init")}},ra}();const{arrowFunctionExpression:a,assertExpression:o,assignmentExpression:l,blockStatement:c,callExpression:p,cloneNode:u,expressionStatement:h,isAssignmentExpression:d,isCallExpression:f,isExportNamedDeclaration:m,isExpression:y,isIdentifier:T,isSequenceExpression:g,isSuper:x,thisExpression:S}=i;function b(e,t){C.call(this,e,t.length);const r=[];this.container.splice(e,0,...t);for(let s=0;s<t.length;s++){var i;const t=e+s,a=this.getSibling(t);r.push(a),null!=(i=this.context)&&i.queue&&n.pushContext.call(a,this.context)}const s=n._getQueueContexts.call(this);for(const e of r){n.setScope.call(e),e.debug("Inserted.");for(const t of s)t.maybeQueue(e,!0)}return r}function P(e){return b.call(this,this.key,e)}function E(e){return b.call(this,this.key+1,e)}const v=e=>e[e.length-1];function A(e){return g(e.parent)&&(v(e.parent.expressions)!==e.node||A(e.parentPath))}function C(t,n){if(!this.parent)return;const r=(0,e.getCachedPaths)(this);if(r)for(const[,e]of r)"number"==typeof e.key&&e.container===this.container&&e.key>=t&&(e.key+=n)}function w(e){if(!e)return[];Array.isArray(e)||(e=[e]);for(let n=0;n<e.length;n++){const r=e[n];let i;if(r?"object"!=typeof r?i="contains a non-object node":r.type?r instanceof t.default&&(i="has a NodePath when it expected a raw object"):i="without a type":i="has falsy node",i){const e=Array.isArray(r)?"array":typeof r;throw new Error(`Node list ${i} with the index of ${n} and type of ${e}`)}}return e}return Gs.hoist=function(e=this.scope){return new s.default(this,e).run()},Gs}var sa,aa,oa={};function la(){if(sa)return oa;function e(e,t){if(null==e)return{};var n={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(-1!==t.indexOf(r))continue;n[r]=e[r]}return n}sa=1,Object.defineProperty(oa,"__esModule",{value:!0});class t{constructor(e,t,n){this.line=void 0,this.column=void 0,this.index=void 0,this.line=e,this.column=t,this.index=n}}class n{constructor(e,t){this.start=void 0,this.end=void 0,this.filename=void 0,this.identifierName=void 0,this.start=e,this.end=t}}function r(e,n){const{line:r,column:i,index:s}=e;return new t(r,i+n,s+n)}const i="BABEL_PARSER_SOURCETYPE_MODULE_REQUIRED";var s={ImportMetaOutsideModule:{message:"import.meta may appear only with 'sourceType: \"module\"'",code:i},ImportOutsideModule:{message:"'import' and 'export' may appear only with 'sourceType: \"module\"'",code:i}};const a={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"},o=e=>"UpdateExpression"===e.type?a.UpdateExpression[`${e.prefix}`]:a[e.type];var l={AccessorIsGenerator:({kind:e})=>`A ${e}ter cannot be a generator.`,ArgumentsInClass:"'arguments' is only allowed in functions and class methods.",AsyncFunctionInSingleStatementContext:"Async functions can only be declared at the top level or inside a block.",AwaitBindingIdentifier:"Can not use 'await' as identifier inside an async function.",AwaitBindingIdentifierInStaticBlock:"Can not use 'await' as identifier inside a static block.",AwaitExpressionFormalParameter:"'await' is not allowed in async function parameters.",AwaitUsingNotInAsyncContext:"'await using' is only allowed within async functions and at the top levels of modules.",AwaitNotInAsyncContext:"'await' is only allowed within async functions and at the top levels of modules.",BadGetterArity:"A 'get' accessor must not have any formal parameters.",BadSetterArity:"A 'set' accessor must have exactly one formal parameter.",BadSetterRestParameter:"A 'set' accessor function argument must not be a rest parameter.",ConstructorClassField:"Classes may not have a field named 'constructor'.",ConstructorClassPrivateField:"Classes may not have a private field named '#constructor'.",ConstructorIsAccessor:"Class constructor may not be an accessor.",ConstructorIsAsync:"Constructor can't be an async function.",ConstructorIsGenerator:"Constructor can't be a generator.",DeclarationMissingInitializer:({kind:e})=>`Missing initializer in ${e} declaration.`,DecoratorArgumentsOutsideParentheses:"Decorator arguments must be moved inside parentheses: use '@(decorator(args))' instead of '@(decorator)(args)'.",DecoratorBeforeExport:"Decorators must be placed *before* the 'export' keyword. Remove the 'decoratorsBeforeExport: true' option to use the 'export @decorator class {}' syntax.",DecoratorsBeforeAfterExport:"Decorators can be placed *either* before or after the 'export' keyword, but not in both locations at the same time.",DecoratorConstructor:"Decorators can't be used with a constructor. Did you mean '@dec class { ... }'?",DecoratorExportClass:"Decorators must be placed *after* the 'export' keyword. Remove the 'decoratorsBeforeExport: false' option to use the '@decorator export class {}' syntax.",DecoratorSemicolon:"Decorators must not be followed by a semicolon.",DecoratorStaticBlock:"Decorators can't be used with a static block.",DeferImportRequiresNamespace:'Only `import defer * as x from "./module"` is valid.',DeletePrivateField:"Deleting a private field is not allowed.",DestructureNamedImport:"ES2015 named imports do not destructure. Use another statement for destructuring after the import.",DuplicateConstructor:"Duplicate constructor in the same class.",DuplicateDefaultExport:"Only one default export allowed per module.",DuplicateExport:({exportName:e})=>`\`${e}\` has already been exported. Exported identifiers must be unique.`,DuplicateProto:"Redefinition of __proto__ property.",DuplicateRegExpFlags:"Duplicate regular expression flag.",ElementAfterRest:"Rest element must be last element.",EscapedCharNotAnIdentifier:"Invalid Unicode escape.",ExportBindingIsString:({localName:e,exportName:t})=>`A string literal cannot be used as an exported binding without \`from\`.\n- Did you mean \`export { '${e}' as '${t}' } from 'some-module'\`?`,ExportDefaultFromAsIdentifier:"'from' is not allowed as an identifier after 'export default'.",ForInOfLoopInitializer:({type:e})=>`'${"ForInStatement"===e?"for-in":"for-of"}' loop variable declaration may not have an initializer.`,ForInUsing:"For-in loop may not start with 'using' declaration.",ForOfAsync:"The left-hand side of a for-of loop may not be 'async'.",ForOfLet:"The left-hand side of a for-of loop may not start with 'let'.",GeneratorInSingleStatementContext:"Generators can only be declared at the top level or inside a block.",IllegalBreakContinue:({type:e})=>`Unsyntactic ${"BreakStatement"===e?"break":"continue"}.`,IllegalLanguageModeDirective:"Illegal 'use strict' directive in function with non-simple parameter list.",IllegalReturn:"'return' outside of function.",ImportAttributesUseAssert:"The `assert` keyword in import attributes is deprecated and it has been replaced by the `with` keyword. You can enable the `deprecatedImportAssert` parser plugin to suppress this error.",ImportBindingIsString:({importName:e})=>`A string literal cannot be used as an imported binding.\n- Did you mean \`import { "${e}" as foo }\`?`,ImportCallArity:"`import()` requires exactly one or two arguments.",ImportCallNotNewExpression:"Cannot use new with import(...).",ImportCallSpreadArgument:"`...` is not allowed in `import()`.",ImportJSONBindingNotDefault:"A JSON module can only be imported with `default`.",ImportReflectionHasAssertion:"`import module x` cannot have assertions.",ImportReflectionNotBinding:'Only `import module x from "./module"` is valid.',IncompatibleRegExpUVFlags:"The 'u' and 'v' regular expression flags cannot be enabled at the same time.",InvalidBigIntLiteral:"Invalid BigIntLiteral.",InvalidCodePoint:"Code point out of bounds.",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:e})=>`Expected number in radix ${e}.`,InvalidEscapeSequence:"Bad character escape sequence.",InvalidEscapeSequenceTemplate:"Invalid escape sequence in template.",InvalidEscapedReservedWord:({reservedWord:e})=>`Escape sequence in keyword ${e}.`,InvalidIdentifier:({identifierName:e})=>`Invalid identifier ${e}.`,InvalidLhs:({ancestor:e})=>`Invalid left-hand side in ${o(e)}.`,InvalidLhsBinding:({ancestor:e})=>`Binding invalid left-hand side in ${o(e)}.`,InvalidLhsOptionalChaining:({ancestor:e})=>`Invalid optional chaining in the left-hand side of ${o(e)}.`,InvalidNumber:"Invalid number.",InvalidOrMissingExponent:"Floating-point numbers require a valid exponent after the 'e'.",InvalidOrUnexpectedToken:({unexpected:e})=>`Unexpected character '${e}'.`,InvalidParenthesizedAssignment:"Invalid parenthesized assignment pattern.",InvalidPrivateFieldResolution:({identifierName:e})=>`Private name #${e} is not defined.`,InvalidPropertyBindingPattern:"Binding member expression.",InvalidRecordProperty:"Only properties and spread elements are allowed in record definitions.",InvalidRestAssignmentPattern:"Invalid rest operator's argument.",LabelRedeclaration:({labelName:e})=>`Label '${e}' is already declared.`,LetInLexicalBinding:"'let' is disallowed as a lexically bound name.",LineTerminatorBeforeArrow:"No line break is allowed before '=>'.",MalformedRegExpFlags:"Invalid regular expression flag.",MissingClassName:"A class name is required.",MissingEqInAssignment:"Only '=' operator can be used for specifying default value.",MissingSemicolon:"Missing semicolon.",MissingPlugin:({missingPlugin:e})=>`This experimental syntax requires enabling the parser plugin: ${e.map(e=>JSON.stringify(e)).join(", ")}.`,MissingOneOfPlugins:({missingPlugin:e})=>`This experimental syntax requires enabling one of the following parser plugin(s): ${e.map(e=>JSON.stringify(e)).join(", ")}.`,MissingUnicodeEscape:"Expecting Unicode escape sequence \\uXXXX.",MixingCoalesceWithLogical:"Nullish coalescing operator(??) requires parens when mixing with logical operators.",ModuleAttributeDifferentFromType:"The only accepted module attribute is `type`.",ModuleAttributeInvalidValue:"Only string literals are allowed as module attribute values.",ModuleAttributesWithDuplicateKeys:({key:e})=>`Duplicate key "${e}" is not allowed in module attributes.`,ModuleExportNameHasLoneSurrogate:({surrogateCharCode:e})=>`An export name cannot include a lone surrogate, found '\\u${e.toString(16)}'.`,ModuleExportUndefined:({localName:e})=>`Export '${e}' is not defined.`,MultipleDefaultsInSwitch:"Multiple default clauses.",NewlineAfterThrow:"Illegal newline after throw.",NoCatchOrFinally:"Missing catch or finally clause.",NumberIdentifier:"Identifier directly after number.",NumericSeparatorInEscapeSequence:"Numeric separators are not allowed inside unicode escape sequences or hex escape sequences.",ObsoleteAwaitStar:"'await*' has been removed from the async functions proposal. Use Promise.all() instead.",OptionalChainingNoNew:"Constructors in/after an Optional Chain are not allowed.",OptionalChainingNoTemplate:"Tagged Template Literals are not allowed in optionalChain.",OverrideOnConstructor:"'override' modifier cannot appear on a constructor declaration.",ParamDupe:"Argument name clash.",PatternHasAccessor:"Object pattern can't contain getter or setter.",PatternHasMethod:"Object pattern can't contain methods.",PrivateInExpectedIn:({identifierName:e})=>`Private names are only allowed in property accesses (\`obj.#${e}\`) or in \`in\` expressions (\`#${e} in obj\`).`,PrivateNameRedeclaration:({identifierName:e})=>`Duplicate private name #${e}.`,RecordExpressionBarIncorrectEndSyntaxType:"Record expressions ending with '|}' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",RecordExpressionBarIncorrectStartSyntaxType:"Record expressions starting with '{|' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",RecordExpressionHashIncorrectStartSyntaxType:"Record expressions starting with '#{' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'hash'.",RecordNoProto:"'__proto__' is not allowed in Record expressions.",RestTrailingComma:"Unexpected trailing comma after rest element.",SloppyFunction:"In non-strict mode code, functions can only be declared at top level or inside a block.",SloppyFunctionAnnexB:"In non-strict mode code, functions can only be declared at top level, inside a block, or as the body of an if statement.",SourcePhaseImportRequiresDefault:'Only `import source x from "./module"` is valid.',StaticPrototype:"Classes may not have static property named prototype.",SuperNotAllowed:"`super()` is only valid inside a class constructor of a subclass. Maybe a typo in the method name ('constructor') or not extending another class?",SuperPrivateField:"Private fields can't be accessed on super.",TrailingDecorator:"Decorators must be attached to a class element.",TupleExpressionBarIncorrectEndSyntaxType:"Tuple expressions ending with '|]' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",TupleExpressionBarIncorrectStartSyntaxType:"Tuple expressions starting with '[|' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",TupleExpressionHashIncorrectStartSyntaxType:"Tuple expressions starting with '#[' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'hash'.",UnexpectedArgumentPlaceholder:"Unexpected argument placeholder.",UnexpectedAwaitAfterPipelineBody:'Unexpected "await" after pipeline body; await must have parentheses in minimal proposal.',UnexpectedDigitAfterHash:"Unexpected digit after hash token.",UnexpectedImportExport:"'import' and 'export' may only appear at the top level.",UnexpectedKeyword:({keyword:e})=>`Unexpected keyword '${e}'.`,UnexpectedLeadingDecorator:"Leading decorators must be attached to a class declaration.",UnexpectedLexicalDeclaration:"Lexical declaration cannot appear in a single-statement context.",UnexpectedNewTarget:"`new.target` can only be used in functions or class properties.",UnexpectedNumericSeparator:"A numeric separator is only allowed between two digits.",UnexpectedPrivateField:"Unexpected private name.",UnexpectedReservedWord:({reservedWord:e})=>`Unexpected reserved word '${e}'.`,UnexpectedSuper:"'super' is only allowed in object methods and classes.",UnexpectedToken:({expected:e,unexpected:t})=>`Unexpected token${t?` '${t}'.`:""}${e?`, expected "${e}"`:""}`,UnexpectedTokenUnaryExponentiation:"Illegal expression. Wrap left hand side or entire exponentiation in parentheses.",UnexpectedUsingDeclaration:"Using declaration cannot appear in the top level when source type is `script` 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:e,onlyValidPropertyName:t})=>`The only valid meta property for ${e} is ${e}.${t}.`,UnsupportedParameterDecorator:"Decorators cannot be used to decorate parameters.",UnsupportedPropertyDecorator:"Decorators cannot be used to decorate object literal properties.",UnsupportedSuper:"'super' can only be used with function calls (i.e. super()) or in property accesses (i.e. super.prop or super[prop]).",UnterminatedComment:"Unterminated comment.",UnterminatedRegExp:"Unterminated regular expression.",UnterminatedString:"Unterminated string constant.",UnterminatedTemplate:"Unterminated template.",UsingDeclarationExport:"Using declaration cannot be exported.",UsingDeclarationHasBindingPattern:"Using declaration cannot have destructuring patterns.",VarRedeclaration:({identifierName:e})=>`Identifier '${e}' has already been declared.`,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."},c={ParseExpressionEmptyInput:"Unexpected parseExpression() input: The input is empty or contains only comments.",ParseExpressionExpectsEOF:({unexpected:e})=>`Unexpected parseExpression() input: The input should contain exactly one expression, but the first expression is followed by the unexpected character \`${String.fromCodePoint(e)}\`.`};const p=new Set(["ArrowFunctionExpression","AssignmentExpression","ConditionalExpression","YieldExpression"]);var u=Object.assign({PipeBodyIsTighter:"Unexpected yield after pipeline body; any yield expression acting as Hack-style pipe body must be parenthesized due to its loose operator precedence.",PipeTopicRequiresHackPipes:'Topic reference is used, but the pipelineOperator plugin was not passed a "proposal": "hack" or "smart" option.',PipeTopicUnbound:"Topic reference is unbound; it must be inside a pipe body.",PipeTopicUnconfiguredToken:({token:e})=>`Invalid topic token ${e}. In order to use ${e} as a topic reference, the pipelineOperator plugin must be configured with { "proposal": "hack", "topicToken": "${e}" }.`,PipeTopicUnused:"Hack-style pipe body does not contain a topic reference; Hack-style pipes must use topic at least once.",PipeUnparenthesizedBody:({type:e})=>`Hack-style pipe body cannot be an unparenthesized ${o({type:e})}; please wrap it in parentheses.`},{PipelineBodyNoArrow:'Unexpected arrow "=>" after pipeline body; arrow function in pipeline body must be parenthesized.',PipelineBodySequenceExpression:"Pipeline body may not be a comma-separated sequence expression.",PipelineHeadSequenceExpression:"Pipeline head should not be a comma-separated sequence expression.",PipelineTopicUnused:"Pipeline is in topic style but does not use topic reference.",PrimaryTopicNotAllowed:"Topic reference was used in a lexical context without topic binding.",PrimaryTopicRequiresSmartPipeline:'Topic reference is used, but the pipelineOperator plugin was not passed a "proposal": "hack" or "smart" option.'});const h=["message"];function d(e,t,n){Object.defineProperty(e,t,{enumerable:!1,configurable:!0,value:n})}function f({toMessage:e,code:n,reasonCode:r,syntaxPlugin:i}){const s="MissingPlugin"===r||"MissingOneOfPlugins"===r;{const e={AccessorCannotDeclareThisParameter:"AccesorCannotDeclareThisParameter",AccessorCannotHaveTypeParameters:"AccesorCannotHaveTypeParameters",ConstInitializerMustBeStringOrNumericLiteralOrLiteralEnumReference:"ConstInitiailizerMustBeStringOrNumericLiteralOrLiteralEnumReference",SetAccessorCannotHaveOptionalParameter:"SetAccesorCannotHaveOptionalParameter",SetAccessorCannotHaveRestParameter:"SetAccesorCannotHaveRestParameter",SetAccessorCannotHaveReturnType:"SetAccesorCannotHaveReturnType"};e[r]&&(r=e[r])}return function a(o,l){const c=new SyntaxError;return c.code=n,c.reasonCode=r,c.loc=o,c.pos=o.index,c.syntaxPlugin=i,s&&(c.missingPlugin=l.missingPlugin),d(c,"clone",function(e={}){var n;const{line:r,column:i,index:s}=null!=(n=e.loc)?n:o;return a(new t(r,i,s),Object.assign({},l,e.details))}),d(c,"details",l),Object.defineProperty(c,"message",{configurable:!0,get(){const t=`${e(l)} (${o.line}:${o.column})`;return this.message=t,t},set(e){Object.defineProperty(this,"message",{value:e,writable:!0})}}),c}}function m(t,n){if(Array.isArray(t))return e=>m(e,t[0]);const r={};for(const i of Object.keys(t)){const s=t[i],a="string"==typeof s?{message:()=>s}:"function"==typeof s?{message:s}:s,{message:o}=a,l=e(a,h),c="string"==typeof o?()=>o:o;r[i]=f(Object.assign({code:"BABEL_PARSER_SYNTAX_ERROR",reasonCode:i,toMessage:c},n?{syntaxPlugin:n}:{},l))}return r}const y=Object.assign({},m(s),m(l),m({StrictDelete:"Deleting local variable in strict mode.",StrictEvalArguments:({referenceName:e})=>`Assigning to '${e}' in strict mode.`,StrictEvalArgumentsBinding:({bindingName:e})=>`Binding '${e}' in strict mode.`,StrictFunction:"In strict mode code, functions can only be declared at top level or inside a block.",StrictNumericEscape:"The only valid numeric escape in strict mode is '\\0'.",StrictOctalLiteral:"Legacy octal literals are not allowed in strict mode.",StrictWith:"'with' in strict mode."}),m(c),m`pipelineOperator`(u));const{defineProperty:T}=Object,g=(e,t)=>{e&&T(e,t,{enumerable:!1,value:e[t]})};function x(e){return g(e.loc.start,"index"),g(e.loc.end,"index"),e}class S{constructor(e,t){this.token=void 0,this.preserveSpace=void 0,this.token=e,this.preserveSpace=!!t}}const b={brace:new S("{"),j_oTag:new S("<tag"),j_cTag:new S("</tag"),j_expr:new S("<tag>...</tag>",!0)};b.template=new S("`",!0);const P=!0,E=!0,v=!0,A=!0,C=!0;class w{constructor(e,t={}){this.label=void 0,this.keyword=void 0,this.beforeExpr=void 0,this.startsExpr=void 0,this.rightAssociative=void 0,this.isLoop=void 0,this.isAssign=void 0,this.prefix=void 0,this.postfix=void 0,this.binop=void 0,this.label=e,this.keyword=t.keyword,this.beforeExpr=!!t.beforeExpr,this.startsExpr=!!t.startsExpr,this.rightAssociative=!!t.rightAssociative,this.isLoop=!!t.isLoop,this.isAssign=!!t.isAssign,this.prefix=!!t.prefix,this.postfix=!!t.postfix,this.binop=null!=t.binop?t.binop:null,this.updateContext=null}}const I=new Map;function k(e,t={}){t.keyword=e;const n=j(e,t);return I.set(e,n),n}function N(e,t){return j(e,{beforeExpr:P,binop:t})}let O=-1;const _=[],D=[],L=[],M=[],F=[],B=[];function j(e,t={}){var n,r,i,s;return++O,D.push(e),L.push(null!=(n=t.binop)?n:-1),M.push(null!=(r=t.beforeExpr)&&r),F.push(null!=(i=t.startsExpr)&&i),B.push(null!=(s=t.prefix)&&s),_.push(new w(e,t)),O}function R(e,t={}){var n,r,i,s;return++O,I.set(e,O),D.push(e),L.push(null!=(n=t.binop)?n:-1),M.push(null!=(r=t.beforeExpr)&&r),F.push(null!=(i=t.startsExpr)&&i),B.push(null!=(s=t.prefix)&&s),_.push(new w("name",t)),O}const U={bracketL:j("[",{beforeExpr:P,startsExpr:E}),bracketHashL:j("#[",{beforeExpr:P,startsExpr:E}),bracketBarL:j("[|",{beforeExpr:P,startsExpr:E}),bracketR:j("]"),bracketBarR:j("|]"),braceL:j("{",{beforeExpr:P,startsExpr:E}),braceBarL:j("{|",{beforeExpr:P,startsExpr:E}),braceHashL:j("#{",{beforeExpr:P,startsExpr:E}),braceR:j("}"),braceBarR:j("|}"),parenL:j("(",{beforeExpr:P,startsExpr:E}),parenR:j(")"),comma:j(",",{beforeExpr:P}),semi:j(";",{beforeExpr:P}),colon:j(":",{beforeExpr:P}),doubleColon:j("::",{beforeExpr:P}),dot:j("."),question:j("?",{beforeExpr:P}),questionDot:j("?."),arrow:j("=>",{beforeExpr:P}),template:j("template"),ellipsis:j("...",{beforeExpr:P}),backQuote:j("`",{startsExpr:E}),dollarBraceL:j("${",{beforeExpr:P,startsExpr:E}),templateTail:j("...`",{startsExpr:E}),templateNonTail:j("...${",{beforeExpr:P,startsExpr:E}),at:j("@"),hash:j("#",{startsExpr:E}),interpreterDirective:j("#!..."),eq:j("=",{beforeExpr:P,isAssign:A}),assign:j("_=",{beforeExpr:P,isAssign:A}),slashAssign:j("_=",{beforeExpr:P,isAssign:A}),xorAssign:j("_=",{beforeExpr:P,isAssign:A}),moduloAssign:j("_=",{beforeExpr:P,isAssign:A}),incDec:j("++/--",{prefix:C,postfix:!0,startsExpr:E}),bang:j("!",{beforeExpr:P,prefix:C,startsExpr:E}),tilde:j("~",{beforeExpr:P,prefix:C,startsExpr:E}),doubleCaret:j("^^",{startsExpr:E}),doubleAt:j("@@",{startsExpr:E}),pipeline:N("|>",0),nullishCoalescing:N("??",1),logicalOR:N("||",1),logicalAND:N("&&",2),bitwiseOR:N("|",3),bitwiseXOR:N("^",4),bitwiseAND:N("&",5),equality:N("==/!=/===/!==",6),lt:N("</>/<=/>=",7),gt:N("</>/<=/>=",7),relational:N("</>/<=/>=",7),bitShift:N("<</>>/>>>",8),bitShiftL:N("<</>>/>>>",8),bitShiftR:N("<</>>/>>>",8),plusMin:j("+/-",{beforeExpr:P,binop:9,prefix:C,startsExpr:E}),modulo:j("%",{binop:10,startsExpr:E}),star:j("*",{binop:10}),slash:N("/",10),exponent:j("**",{beforeExpr:P,binop:11,rightAssociative:!0}),_in:k("in",{beforeExpr:P,binop:7}),_instanceof:k("instanceof",{beforeExpr:P,binop:7}),_break:k("break"),_case:k("case",{beforeExpr:P}),_catch:k("catch"),_continue:k("continue"),_debugger:k("debugger"),_default:k("default",{beforeExpr:P}),_else:k("else",{beforeExpr:P}),_finally:k("finally"),_function:k("function",{startsExpr:E}),_if:k("if"),_return:k("return",{beforeExpr:P}),_switch:k("switch"),_throw:k("throw",{beforeExpr:P,prefix:C,startsExpr:E}),_try:k("try"),_var:k("var"),_const:k("const"),_with:k("with"),_new:k("new",{beforeExpr:P,startsExpr:E}),_this:k("this",{startsExpr:E}),_super:k("super",{startsExpr:E}),_class:k("class",{startsExpr:E}),_extends:k("extends",{beforeExpr:P}),_export:k("export"),_import:k("import",{startsExpr:E}),_null:k("null",{startsExpr:E}),_true:k("true",{startsExpr:E}),_false:k("false",{startsExpr:E}),_typeof:k("typeof",{beforeExpr:P,prefix:C,startsExpr:E}),_void:k("void",{beforeExpr:P,prefix:C,startsExpr:E}),_delete:k("delete",{beforeExpr:P,prefix:C,startsExpr:E}),_do:k("do",{isLoop:v,beforeExpr:P}),_for:k("for",{isLoop:v}),_while:k("while",{isLoop:v}),_as:R("as",{startsExpr:E}),_assert:R("assert",{startsExpr:E}),_async:R("async",{startsExpr:E}),_await:R("await",{startsExpr:E}),_defer:R("defer",{startsExpr:E}),_from:R("from",{startsExpr:E}),_get:R("get",{startsExpr:E}),_let:R("let",{startsExpr:E}),_meta:R("meta",{startsExpr:E}),_of:R("of",{startsExpr:E}),_sent:R("sent",{startsExpr:E}),_set:R("set",{startsExpr:E}),_source:R("source",{startsExpr:E}),_static:R("static",{startsExpr:E}),_using:R("using",{startsExpr:E}),_yield:R("yield",{startsExpr:E}),_asserts:R("asserts",{startsExpr:E}),_checks:R("checks",{startsExpr:E}),_exports:R("exports",{startsExpr:E}),_global:R("global",{startsExpr:E}),_implements:R("implements",{startsExpr:E}),_intrinsic:R("intrinsic",{startsExpr:E}),_infer:R("infer",{startsExpr:E}),_is:R("is",{startsExpr:E}),_mixins:R("mixins",{startsExpr:E}),_proto:R("proto",{startsExpr:E}),_require:R("require",{startsExpr:E}),_satisfies:R("satisfies",{startsExpr:E}),_keyof:R("keyof",{startsExpr:E}),_readonly:R("readonly",{startsExpr:E}),_unique:R("unique",{startsExpr:E}),_abstract:R("abstract",{startsExpr:E}),_declare:R("declare",{startsExpr:E}),_enum:R("enum",{startsExpr:E}),_module:R("module",{startsExpr:E}),_namespace:R("namespace",{startsExpr:E}),_interface:R("interface",{startsExpr:E}),_type:R("type",{startsExpr:E}),_opaque:R("opaque",{startsExpr:E}),name:j("name",{startsExpr:E}),placeholder:j("%%",{startsExpr:E}),string:j("string",{startsExpr:E}),num:j("num",{startsExpr:E}),bigint:j("bigint",{startsExpr:E}),decimal:j("decimal",{startsExpr:E}),regexp:j("regexp",{startsExpr:E}),privateName:j("#name",{startsExpr:E}),eof:j("eof"),jsxName:j("jsxName"),jsxText:j("jsxText",{beforeExpr:P}),jsxTagStart:j("jsxTagStart",{startsExpr:E}),jsxTagEnd:j("jsxTagEnd")};function K(e){return e>=93&&e<=133}function V(e){return e>=58&&e<=133}function q(e){return e>=58&&e<=137}function $(e){return F[e]}function W(e){return e>=129&&e<=131}function Y(e){return e>=58&&e<=92}function J(e){return 34===e}function X(e){return D[e]}function H(e){return L[e]}function z(e){return e>=24&&e<=25}function G(e){return _[e]}_[8].updateContext=e=>{e.pop()},_[5].updateContext=_[7].updateContext=_[23].updateContext=e=>{e.push(b.brace)},_[22].updateContext=e=>{e[e.length-1]===b.template?e.pop():e.push(b.template)},_[143].updateContext=e=>{e.push(b.j_expr,b.j_oTag)};let Q="ªµºÀ-ÖØ-öø-ˁˆ-ˑˠ-ˤˬˮͰ-ʹͶͷͺ-ͽͿΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁҊ-ԯԱ-Ֆՙՠ-ֈא-תׯ-ײؠ-يٮٯٱ-ۓەۥۦۮۯۺ-ۼۿܐܒ-ܯݍ-ޥޱߊ-ߪߴߵߺࠀ-ࠕࠚࠤࠨࡀ-ࡘࡠ-ࡪࡰ-ࢇࢉ-ࢠ-ࣉऄ-हऽॐक़-ॡॱ-ঀঅ-ঌএঐও-নপ-রলশ-হঽৎড়ঢ়য়-ৡৰৱৼਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਖ਼-ੜਫ਼ੲ-ੴઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽૐૠૡૹଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽଡ଼ଢ଼ୟ-ୡୱஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹௐఅ-ఌఎ-ఐఒ-నప-హఽౘ-ౚౝౠౡಀಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽ-ೞೠೡೱೲഄ-ഌഎ-ഐഒ-ഺഽൎൔ-ൖൟ-ൡൺ-ൿඅ-ඖක-නඳ-රලව-ෆก-ะาำเ-ๆກຂຄຆ-ຊຌ-ຣລວ-ະາຳຽເ-ໄໆໜ-ໟༀཀ-ཇཉ-ཬྈ-ྌက-ဪဿၐ-ၕၚ-ၝၡၥၦၮ-ၰၵ-ႁႎႠ-ჅჇჍა-ჺჼ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚᎀ-ᎏᎠ-Ᏽᏸ-ᏽᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛮ-ᛸᜀ-ᜑᜟ-ᜱᝀ-ᝑᝠ-ᝬᝮ-ᝰក-ឳៗៜᠠ-ᡸᢀ-ᢨᢪᢰ-ᣵᤀ-ᤞᥐ-ᥭᥰ-ᥴᦀ-ᦫᦰ-ᧉᨀ-ᨖᨠ-ᩔᪧᬅ-ᬳᭅ-ᭌᮃ-ᮠᮮᮯᮺ-ᯥᰀ-ᰣᱍ-ᱏᱚ-ᱽᲀ-Ა-ᲺᲽ-Ჿᳩ-ᳬᳮ-ᳳᳵᳶᳺᴀ-ᶿḀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼⁱⁿₐ-ₜℂℇℊ-ℓℕ℘-ℝℤΩℨK-ℹℼ-ℿⅅ-ⅉⅎⅠ-ↈⰀ-ⳤⳫ-ⳮⳲⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞ々-〇〡-〩〱-〵〸-〼ぁ-ゖ゛-ゟァ-ヺー-ヿㄅ-ㄯㄱ-ㆎㆠ-ㆿㇰ-ㇿ㐀-䶿一-ꒌꓐ-ꓽꔀ-ꘌꘐ-ꘟꘪꘫꙀ-ꙮꙿ-ꚝꚠ-ꛯꜗ-ꜟꜢ-ꞈꞋ--ꠁꠃ-ꠅꠇ-ꠊꠌ-ꠢꡀ-ꡳꢂ-ꢳꣲ-ꣷꣻꣽꣾꤊ-ꤥꤰ-ꥆꥠ-ꥼꦄ-ꦲꧏꧠ-ꧤꧦ-ꧯꧺ-ꧾꨀ-ꨨꩀ-ꩂꩄ-ꩋꩠ-ꩶꩺꩾ-ꪯꪱꪵꪶꪹ-ꪽꫀꫂꫛ-ꫝꫠ-ꫪꫲ-ꫴꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꬰ-ꭚꭜ-ꭩꭰ-ꯢ가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎ff-stﬓ-ﬗיִײַ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻﹰ-ﹴﹶ-ﻼA-Za-zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ",Z="·̀-ͯ·҃-֑҇-ׇֽֿׁׂׅׄؐ-ًؚ-٩ٰۖ-ۜ۟-۪ۤۧۨ-ۭ۰-۹ܑܰ-݊ަ-ް߀-߉߫-߽߳ࠖ-࠙ࠛ-ࠣࠥ-ࠧࠩ-࡙࠭-࡛-࢟࣊-ࣣ࣡-ःऺ-़ा-ॏ॑-ॗॢॣ०-९ঁ-ঃ়া-ৄেৈো-্ৗৢৣ০-৯৾ਁ-ਃ਼ਾ-ੂੇੈੋ-੍ੑ੦-ੱੵઁ-ઃ઼ા-ૅે-ૉો-્ૢૣ૦-૯ૺ-૿ଁ-ଃ଼ା-ୄେୈୋ-୍୕-ୗୢୣ୦-୯ஂா-ூெ-ைொ-்ௗ௦-௯ఀ-ఄ఼ా-ౄె-ైొ-్ౕౖౢౣ౦-౯ಁ-ಃ಼ಾ-ೄೆ-ೈೊ-್ೕೖೢೣ೦-೯ೳഀ-ഃ഻഼ാ-ൄെ-ൈൊ-്ൗൢൣ൦-൯ඁ-ඃ්ා-ුූෘ-ෟ෦-෯ෲෳัิ-ฺ็-๎๐-๙ັິ-ຼ່-໎໐-໙༘༙༠-༩༹༵༷༾༿ཱ-྄྆྇ྍ-ྗྙ-ྼ࿆ါ-ှ၀-၉ၖ-ၙၞ-ၠၢ-ၤၧ-ၭၱ-ၴႂ-ႍႏ-ႝ፝-፟፩-፱ᜒ-᜕ᜲ-᜴ᝒᝓᝲᝳ឴-៓៝០-៩᠋-᠍᠏-᠙ᢩᤠ-ᤫᤰ-᤻᥆-᥏᧐-᧚ᨗ-ᨛᩕ-ᩞ᩠-᩿᩼-᪉᪐-᪙᪰-᪽ᪿ--ᬀ-ᬄ᬴-᭄᭐-᭙᭫-᭳ᮀ-ᮂᮡ-ᮭ᮰-᮹᯦-᯳ᰤ-᰷᱀-᱉᱐-᱙᳐-᳔᳒-᳨᳭᳴᳷-᳹᷀-᷿‿⁀⁔⃐-⃥⃜⃡-⃰⳯-⵿⳱ⷠ-〪ⷿ-゙゚〯・꘠-꘩꙯ꙴ-꙽ꚞꚟ꛰꛱ꠂ꠆ꠋꠣ-ꠧ꠬ꢀꢁꢴ-ꣅ꣐-꣙꣠-꣱ꣿ-꤉ꤦ-꤭ꥇ-꥓ꦀ-ꦃ꦳-꧀꧐-꧙ꧥ꧰-꧹ꨩ-ꨶꩃꩌꩍ꩐-꩙ꩻ-ꩽꪰꪲ-ꪴꪷꪸꪾ꪿꫁ꫫ-ꫯꫵ꫶ꯣ-ꯪ꯬꯭꯰-꯹ﬞ︀-️︠-︯︳︴﹍-﹏0-9_・";const ee=new RegExp("["+Q+"]"),te=new RegExp("["+Q+Z+"]");Q=Z=null;const ne=[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,7,25,39,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,5,57,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,24,43,261,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,33,24,3,24,45,74,6,0,67,12,65,1,2,0,15,4,10,7381,42,31,98,114,8702,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,208,30,2,2,2,1,2,6,3,4,10,1,225,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,4381,3,5773,3,7472,16,621,2467,541,1507,4938,6,8489],re=[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,78,5,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,199,7,137,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,55,9,266,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,233,0,3,0,8,1,6,0,475,6,110,6,6,9,4759,9,787719,239];function ie(e,t){let n=65536;for(let r=0,i=t.length;r<i;r+=2){if(n+=t[r],n>e)return!1;if(n+=t[r+1],n>=e)return!0}return!1}function se(e){return e<65?36===e:e<=90||(e<97?95===e:e<=122||(e<=65535?e>=170&&ee.test(String.fromCharCode(e)):ie(e,ne)))}function ae(e){return e<48?36===e:e<58||!(e<65)&&(e<=90||(e<97?95===e:e<=122||(e<=65535?e>=170&&te.test(String.fromCharCode(e)):ie(e,ne)||ie(e,re))))}const oe=["implements","interface","let","package","private","protected","public","static","yield"],le=["eval","arguments"],ce=new Set(["break","case","catch","continue","debugger","default","do","else","finally","for","function","if","return","switch","throw","try","var","const","while","with","new","this","super","class","extends","export","import","null","true","false","in","instanceof","typeof","void","delete"]),pe=new Set(oe),ue=new Set(le);function he(e,t){return t&&"await"===e||"enum"===e}function de(e,t){return he(e,t)||pe.has(e)}function fe(e){return ue.has(e)}function me(e,t){return de(e,t)||fe(e)}const ye=new Set(["break","case","catch","continue","debugger","default","do","else","finally","for","function","if","return","switch","throw","try","var","const","while","with","new","this","super","class","extends","export","import","null","true","false","in","instanceof","typeof","void","delete","implements","interface","let","package","private","protected","public","static","yield","eval","arguments","enum","await"]);class Te{constructor(e){this.flags=0,this.names=new Map,this.firstLexicalName="",this.flags=e}}class ge{constructor(e,t){this.parser=void 0,this.scopeStack=[],this.inModule=void 0,this.undefinedExports=new Map,this.parser=e,this.inModule=t}get inTopLevel(){return(1&this.currentScope().flags)>0}get inFunction(){return(2&this.currentVarScopeFlags())>0}get allowSuper(){return(16&this.currentThisScopeFlags())>0}get allowDirectSuper(){return(32&this.currentThisScopeFlags())>0}get allowNewTarget(){return(512&this.currentThisScopeFlags())>0}get inClass(){return(64&this.currentThisScopeFlags())>0}get inClassAndNotInNonArrowFunction(){const e=this.currentThisScopeFlags();return(64&e)>0&&!(2&e)}get inStaticBlock(){for(let e=this.scopeStack.length-1;;e--){const{flags:t}=this.scopeStack[e];if(128&t)return!0;if(1731&t)return!1}}get inNonArrowFunction(){return(2&this.currentThisScopeFlags())>0}get inBareCaseStatement(){return(256&this.currentScope().flags)>0}get treatFunctionsAsVar(){return this.treatFunctionsAsVarInScope(this.currentScope())}createScope(e){return new Te(e)}enter(e){this.scopeStack.push(this.createScope(e))}exit(){return this.scopeStack.pop().flags}treatFunctionsAsVarInScope(e){return!!(130&e.flags||!this.parser.inModule&&1&e.flags)}declareName(e,t,n){let r=this.currentScope();if(8&t||16&t){this.checkRedeclarationInScope(r,e,t,n);let i=r.names.get(e)||0;16&t?i|=4:(r.firstLexicalName||(r.firstLexicalName=e),i|=2),r.names.set(e,i),8&t&&this.maybeExportDefined(r,e)}else if(4&t)for(let i=this.scopeStack.length-1;i>=0&&(r=this.scopeStack[i],this.checkRedeclarationInScope(r,e,t,n),r.names.set(e,1|(r.names.get(e)||0)),this.maybeExportDefined(r,e),!(1667&r.flags));--i);this.parser.inModule&&1&r.flags&&this.undefinedExports.delete(e)}maybeExportDefined(e,t){this.parser.inModule&&1&e.flags&&this.undefinedExports.delete(t)}checkRedeclarationInScope(e,t,n,r){this.isRedeclaredInScope(e,t,n)&&this.parser.raise(y.VarRedeclaration,r,{identifierName:t})}isRedeclaredInScope(e,t,n){if(!(1&n))return!1;if(8&n)return e.names.has(t);const r=e.names.get(t)||0;return 16&n?(2&r)>0||!this.treatFunctionsAsVarInScope(e)&&(1&r)>0:(2&r)>0&&!(8&e.flags&&e.firstLexicalName===t)||!this.treatFunctionsAsVarInScope(e)&&(4&r)>0}checkLocalExport(e){const{name:t}=e;this.scopeStack[0].names.has(t)||this.undefinedExports.set(t,e.loc.start)}currentScope(){return this.scopeStack[this.scopeStack.length-1]}currentVarScopeFlags(){for(let e=this.scopeStack.length-1;;e--){const{flags:t}=this.scopeStack[e];if(1667&t)return t}}currentThisScopeFlags(){for(let e=this.scopeStack.length-1;;e--){const{flags:t}=this.scopeStack[e];if(1731&t&&!(4&t))return t}}}class xe extends Te{constructor(...e){super(...e),this.declareFunctions=new Set}}class Se extends ge{createScope(e){return new xe(e)}declareName(e,t,n){const r=this.currentScope();if(2048&t)return this.checkRedeclarationInScope(r,e,t,n),this.maybeExportDefined(r,e),void r.declareFunctions.add(e);super.declareName(e,t,n)}isRedeclaredInScope(e,t,n){if(super.isRedeclaredInScope(e,t,n))return!0;if(2048&n&&!e.declareFunctions.has(t)){const n=e.names.get(t);return(4&n)>0||(2&n)>0}return!1}checkLocalExport(e){this.scopeStack[0].declareFunctions.has(e.name)||super.checkLocalExport(e)}}const be=new Set(["_","any","bool","boolean","empty","extends","false","interface","mixed","null","number","static","string","true","typeof","void"]),Pe=m`flow`({AmbiguousConditionalArrow:"Ambiguous expression: wrap the arrow functions in parentheses to disambiguate.",AmbiguousDeclareModuleKind:"Found both `declare module.exports` and `declare export` in the same module. Modules can only have 1 since they are either an ES module or they are a CommonJS module.",AssignReservedType:({reservedType:e})=>`Cannot overwrite reserved type ${e}.`,DeclareClassElement:"The `declare` modifier can only appear on class fields.",DeclareClassFieldInitializer:"Initializers are not allowed in fields with the `declare` modifier.",DuplicateDeclareModuleExports:"Duplicate `declare module.exports` statement.",EnumBooleanMemberNotInitialized:({memberName:e,enumName:t})=>`Boolean enum members need to be initialized. Use either \`${e} = true,\` or \`${e} = false,\` in enum \`${t}\`.`,EnumDuplicateMemberName:({memberName:e,enumName:t})=>`Enum member names need to be unique, but the name \`${e}\` has already been used before in enum \`${t}\`.`,EnumInconsistentMemberValues:({enumName:e})=>`Enum \`${e}\` has inconsistent member initializers. Either use no initializers, or consistently use literals (either booleans, numbers, or strings) for all member initializers.`,EnumInvalidExplicitType:({invalidEnumType:e,enumName:t})=>`Enum type \`${e}\` is not valid. Use one of \`boolean\`, \`number\`, \`string\`, or \`symbol\` in enum \`${t}\`.`,EnumInvalidExplicitTypeUnknownSupplied:({enumName:e})=>`Supplied enum type is not valid. Use one of \`boolean\`, \`number\`, \`string\`, or \`symbol\` in enum \`${e}\`.`,EnumInvalidMemberInitializerPrimaryType:({enumName:e,memberName:t,explicitType:n})=>`Enum \`${e}\` has type \`${n}\`, so the initializer of \`${t}\` needs to be a ${n} literal.`,EnumInvalidMemberInitializerSymbolType:({enumName:e,memberName:t})=>`Symbol enum members cannot be initialized. Use \`${t},\` in enum \`${e}\`.`,EnumInvalidMemberInitializerUnknownType:({enumName:e,memberName:t})=>`The enum member initializer for \`${t}\` needs to be a literal (either a boolean, number, or string) in enum \`${e}\`.`,EnumInvalidMemberName:({enumName:e,memberName:t,suggestion:n})=>`Enum member names cannot start with lowercase 'a' through 'z'. Instead of using \`${t}\`, consider using \`${n}\`, in enum \`${e}\`.`,EnumNumberMemberNotInitialized:({enumName:e,memberName:t})=>`Number enum members need to be initialized, e.g. \`${t} = 1\` in enum \`${e}\`.`,EnumStringMemberInconsistentlyInitialized:({enumName:e})=>`String enum members need to consistently either all use initializers, or use no initializers, in enum \`${e}\`.`,GetterMayNotHaveThisParam:"A getter cannot have a `this` parameter.",ImportReflectionHasImportType:"An `import module` declaration can not use `type` or `typeof` keyword.",ImportTypeShorthandOnlyInPureImport:"The `type` and `typeof` keywords on named imports can only be used on regular `import` statements. It cannot be used with `import type` or `import typeof` statements.",InexactInsideExact:"Explicit inexact syntax cannot appear inside an explicit exact object type.",InexactInsideNonObject:"Explicit inexact syntax cannot appear in class or interface definitions.",InexactVariance:"Explicit inexact syntax cannot have variance.",InvalidNonTypeImportInDeclareModule:"Imports within a `declare module` body must always be `import type` or `import typeof`.",MissingTypeParamDefault:"Type parameter declaration needs a default, since a preceding type parameter declaration has a default.",NestedDeclareModule:"`declare module` cannot be used inside another `declare module`.",NestedFlowComment:"Cannot have a flow comment inside another flow comment.",PatternIsOptional:Object.assign({message:"A binding pattern parameter cannot be optional in an implementation signature."},{reasonCode:"OptionalBindingPattern"}),SetterMayNotHaveThisParam:"A setter cannot have a `this` parameter.",SpreadVariance:"Spread properties cannot have variance.",ThisParamAnnotationRequired:"A type annotation is required for the `this` parameter.",ThisParamBannedInConstructor:"Constructors cannot have a `this` parameter; constructors don't bind `this` like other functions.",ThisParamMayNotBeOptional:"The `this` parameter cannot be optional.",ThisParamMustBeFirst:"The `this` parameter must be the first function parameter.",ThisParamNoDefault:"The `this` parameter may not have a default value.",TypeBeforeInitializer:"Type annotations must come before default assignments, e.g. instead of `age = 25: number` use `age: number = 25`.",TypeCastInPattern:"The type cast expression is expected to be wrapped with parenthesis.",UnexpectedExplicitInexactInObject:"Explicit inexact syntax must appear at the end of an inexact object.",UnexpectedReservedType:({reservedType:e})=>`Unexpected reserved type ${e}.`,UnexpectedReservedUnderscore:"`_` is only allowed as a type argument to call or new.",UnexpectedSpaceBetweenModuloChecks:"Spaces between `%` and `checks` are not allowed here.",UnexpectedSpreadType:"Spread operator cannot appear in class or interface definitions.",UnexpectedSubtractionOperand:'Unexpected token, expected "number" or "bigint".',UnexpectedTokenAfterTypeParameter:"Expected an arrow function after this type parameter declaration.",UnexpectedTypeParameterBeforeAsyncArrowFunction:"Type parameters must come after the async keyword, e.g. instead of `<T> async () => {}`, use `async <T>() => {}`.",UnsupportedDeclareExportKind:({unsupportedExportKind:e,suggestion:t})=>`\`declare export ${e}\` is not supported. Use \`${t}\` instead.`,UnsupportedStatementInDeclareModule:"Only declares and type imports are allowed inside declare module.",UnterminatedFlowComment:"Unterminated flow-comment."});function Ee(e){return"type"===e.importKind||"typeof"===e.importKind}const ve={const:"declare export var",let:"declare export var",type:"export type",interface:"export interface"};const Ae=/\*?\s*@((?:no)?flow)\b/;const Ce={__proto__:null,quot:'"',amp:"&",apos:"'",lt:"<",gt:">",nbsp:" ",iexcl:"¡",cent:"¢",pound:"£",curren:"¤",yen:"¥",brvbar:"¦",sect:"§",uml:"¨",copy:"©",ordf:"ª",laquo:"«",not:"¬",shy:"",reg:"®",macr:"¯",deg:"°",plusmn:"±",sup2:"²",sup3:"³",acute:"´",micro:"µ",para:"¶",middot:"·",cedil:"¸",sup1:"¹",ordm:"º",raquo:"»",frac14:"¼",frac12:"½",frac34:"¾",iquest:"¿",Agrave:"À",Aacute:"Á",Acirc:"Â",Atilde:"Ã",Auml:"Ä",Aring:"Å",AElig:"Æ",Ccedil:"Ç",Egrave:"È",Eacute:"É",Ecirc:"Ê",Euml:"Ë",Igrave:"Ì",Iacute:"Í",Icirc:"Î",Iuml:"Ï",ETH:"Ð",Ntilde:"Ñ",Ograve:"Ò",Oacute:"Ó",Ocirc:"Ô",Otilde:"Õ",Ouml:"Ö",times:"×",Oslash:"Ø",Ugrave:"Ù",Uacute:"Ú",Ucirc:"Û",Uuml:"Ü",Yacute:"Ý",THORN:"Þ",szlig:"ß",agrave:"à",aacute:"á",acirc:"â",atilde:"ã",auml:"ä",aring:"å",aelig:"æ",ccedil:"ç",egrave:"è",eacute:"é",ecirc:"ê",euml:"ë",igrave:"ì",iacute:"í",icirc:"î",iuml:"ï",eth:"ð",ntilde:"ñ",ograve:"ò",oacute:"ó",ocirc:"ô",otilde:"õ",ouml:"ö",divide:"÷",oslash:"ø",ugrave:"ù",uacute:"ú",ucirc:"û",uuml:"ü",yacute:"ý",thorn:"þ",yuml:"ÿ",OElig:"Œ",oelig:"œ",Scaron:"Š",scaron:"š",Yuml:"Ÿ",fnof:"ƒ",circ:"ˆ",tilde:"˜",Alpha:"Α",Beta:"Β",Gamma:"Γ",Delta:"Δ",Epsilon:"Ε",Zeta:"Ζ",Eta:"Η",Theta:"Θ",Iota:"Ι",Kappa:"Κ",Lambda:"Λ",Mu:"Μ",Nu:"Ν",Xi:"Ξ",Omicron:"Ο",Pi:"Π",Rho:"Ρ",Sigma:"Σ",Tau:"Τ",Upsilon:"Υ",Phi:"Φ",Chi:"Χ",Psi:"Ψ",Omega:"Ω",alpha:"α",beta:"β",gamma:"γ",delta:"δ",epsilon:"ε",zeta:"ζ",eta:"η",theta:"θ",iota:"ι",kappa:"κ",lambda:"λ",mu:"μ",nu:"ν",xi:"ξ",omicron:"ο",pi:"π",rho:"ρ",sigmaf:"ς",sigma:"σ",tau:"τ",upsilon:"υ",phi:"φ",chi:"χ",psi:"ψ",omega:"ω",thetasym:"ϑ",upsih:"ϒ",piv:"ϖ",ensp:" ",emsp:" ",thinsp:" ",zwnj:"",zwj:"",lrm:"",rlm:"",ndash:"–",mdash:"—",lsquo:"‘",rsquo:"’",sbquo:"‚",ldquo:"“",rdquo:"”",bdquo:"„",dagger:"†",Dagger:"‡",bull:"•",hellip:"…",permil:"‰",prime:"′",Prime:"″",lsaquo:"‹",rsaquo:"›",oline:"‾",frasl:"⁄",euro:"€",image:"ℑ",weierp:"℘",real:"ℜ",trade:"™",alefsym:"ℵ",larr:"←",uarr:"↑",rarr:"→",darr:"↓",harr:"↔",crarr:"↵",lArr:"⇐",uArr:"⇑",rArr:"⇒",dArr:"⇓",hArr:"⇔",forall:"∀",part:"∂",exist:"∃",empty:"∅",nabla:"∇",isin:"∈",notin:"∉",ni:"∋",prod:"∏",sum:"∑",minus:"−",lowast:"∗",radic:"√",prop:"∝",infin:"∞",ang:"∠",and:"∧",or:"∨",cap:"∩",cup:"∪",int:"∫",there4:"∴",sim:"∼",cong:"≅",asymp:"≈",ne:"≠",equiv:"≡",le:"≤",ge:"≥",sub:"⊂",sup:"⊃",nsub:"⊄",sube:"⊆",supe:"⊇",oplus:"⊕",otimes:"⊗",perp:"⊥",sdot:"⋅",lceil:"⌈",rceil:"⌉",lfloor:"⌊",rfloor:"⌋",lang:"〈",rang:"〉",loz:"◊",spades:"♠",clubs:"♣",hearts:"♥",diams:"♦"},we=new RegExp(/\r\n|[\r\n\u2028\u2029]/.source,"g");function Ie(e){switch(e){case 10:case 13:case 8232:case 8233:return!0;default:return!1}}function ke(e,t,n){for(let r=t;r<n;r++)if(Ie(e.charCodeAt(r)))return!0;return!1}const Ne=/(?:\s|\/\/.*|\/\*[^]*?\*\/)*/g,Oe=/(?:[^\S\n\r\u2028\u2029]|\/\/.*|\/\*.*?\*\/)*/g;function _e(e){switch(e){case 9:case 11:case 12:case 32:case 160:case 5760:case 8192:case 8193:case 8194:case 8195:case 8196:case 8197:case 8198:case 8199:case 8200:case 8201:case 8202:case 8239:case 8287:case 12288:case 65279:return!0;default:return!1}}const De=m`jsx`({AttributeIsEmpty:"JSX attributes must only be assigned a non-empty expression.",MissingClosingTagElement:({openingTagName:e})=>`Expected corresponding JSX closing tag for <${e}>.`,MissingClosingTagFragment:"Expected corresponding JSX closing tag for <>.",UnexpectedSequenceExpression:"Sequence expressions cannot be directly nested inside JSX. Did you mean to wrap it in parentheses (...)?",UnexpectedToken:({unexpected:e,HTMLEntity:t})=>`Unexpected token \`${e}\`. Did you mean \`${t}\` or \`{'${e}'}\`?`,UnsupportedJsxValue:"JSX value should be either an expression or a quoted JSX text.",UnterminatedJsxContent:"Unterminated JSX contents.",UnwrappedAdjacentJSXElements:"Adjacent JSX elements must be wrapped in an enclosing tag. Did you want a JSX fragment <>...</>?"});function Le(e){return!!e&&("JSXOpeningFragment"===e.type||"JSXClosingFragment"===e.type)}function Me(e){if("JSXIdentifier"===e.type)return e.name;if("JSXNamespacedName"===e.type)return e.namespace.name+":"+e.name.name;if("JSXMemberExpression"===e.type)return Me(e.object)+"."+Me(e.property);throw new Error("Node had unexpected type: "+e.type)}class Fe extends Te{constructor(...e){super(...e),this.tsNames=new Map}}class Be extends ge{constructor(...e){super(...e),this.importsStack=[]}createScope(e){return this.importsStack.push(new Set),new Fe(e)}enter(e){1024===e&&this.importsStack.push(new Set),super.enter(e)}exit(){const e=super.exit();return 1024===e&&this.importsStack.pop(),e}hasImport(e,t){const n=this.importsStack.length;if(this.importsStack[n-1].has(e))return!0;if(!t&&n>1)for(let t=0;t<n-1;t++)if(this.importsStack[t].has(e))return!0;return!1}declareName(e,t,n){if(4096&t)return this.hasImport(e,!0)&&this.parser.raise(y.VarRedeclaration,n,{identifierName:e}),void this.importsStack[this.importsStack.length-1].add(e);const r=this.currentScope();let i=r.tsNames.get(e)||0;if(1024&t)return this.maybeExportDefined(r,e),void r.tsNames.set(e,16|i);super.declareName(e,t,n),2&t&&(1&t||(this.checkRedeclarationInScope(r,e,t,n),this.maybeExportDefined(r,e)),i|=1),256&t&&(i|=2),512&t&&(i|=4),128&t&&(i|=8),i&&r.tsNames.set(e,i)}isRedeclaredInScope(e,t,n){const r=e.tsNames.get(t);if((2&r)>0){if(256&n){return!!(512&n)!==(4&r)>0}return!0}return 128&n&&(8&r)>0?!!(2&e.names.get(t))&&!!(1&n):!!(2&n&&(1&r)>0)||super.isRedeclaredInScope(e,t,n)}checkLocalExport(e){const{name:t}=e;if(this.hasImport(t))return;for(let e=this.scopeStack.length-1;e>=0;e--){const n=this.scopeStack[e].tsNames.get(t);if((1&n)>0||(16&n)>0)return}super.checkLocalExport(e)}}class je{constructor(){this.stacks=[]}enter(e){this.stacks.push(e)}exit(){this.stacks.pop()}currentFlags(){return this.stacks[this.stacks.length-1]}get hasAwait(){return(2&this.currentFlags())>0}get hasYield(){return(1&this.currentFlags())>0}get hasReturn(){return(4&this.currentFlags())>0}get hasIn(){return(8&this.currentFlags())>0}}function Re(e,t){return(e?2:0)|(t?1:0)}class Ue{constructor(){this.sawUnambiguousESM=!1,this.ambiguousScriptDifferentAst=!1}sourceToOffsetPos(e){return e+this.startIndex}offsetToSourcePos(e){return e-this.startIndex}hasPlugin(e){if("string"==typeof e)return this.plugins.has(e);{const[t,n]=e;if(!this.hasPlugin(t))return!1;const r=this.plugins.get(t);for(const e of Object.keys(n))if((null==r?void 0:r[e])!==n[e])return!1;return!0}}getPluginOption(e,t){var n;return null==(n=this.plugins.get(e))?void 0:n[t]}}function Ke(e,t){void 0===e.trailingComments?e.trailingComments=t:e.trailingComments.unshift(...t)}function Ve(e,t){void 0===e.innerComments?e.innerComments=t:e.innerComments.unshift(...t)}function qe(e,t,n){let r=null,i=t.length;for(;null===r&&i>0;)r=t[--i];null===r||r.start>n.start?Ve(e,n.comments):Ke(r,n.comments)}class $e extends Ue{addComment(e){this.filename&&(e.loc.filename=this.filename);const{commentsLen:t}=this.state;this.comments.length!==t&&(this.comments.length=t),this.comments.push(e),this.state.commentsLen++}processComment(e){const{commentStack:t}=this.state,n=t.length;if(0===n)return;let r=n-1;const i=t[r];i.start===e.end&&(i.leadingNode=e,r--);const{start:s}=e;for(;r>=0;r--){const n=t[r],i=n.end;if(!(i>s)){i===s&&(n.trailingNode=e);break}n.containingNode=e,this.finalizeComment(n),t.splice(r,1)}}finalizeComment(e){var t;const{comments:n}=e;if(null!==e.leadingNode||null!==e.trailingNode)null!==e.leadingNode&&Ke(e.leadingNode,n),null!==e.trailingNode&&function(e,t){void 0===e.leadingComments?e.leadingComments=t:e.leadingComments.unshift(...t)}(e.trailingNode,n);else{const r=e.containingNode,i=e.start;if(44===this.input.charCodeAt(this.offsetToSourcePos(i)-1))switch(r.type){case"ObjectExpression":case"ObjectPattern":case"RecordExpression":qe(r,r.properties,e);break;case"CallExpression":case"OptionalCallExpression":qe(r,r.arguments,e);break;case"ImportExpression":qe(r,[r.source,null!=(t=r.options)?t:null],e);break;case"FunctionDeclaration":case"FunctionExpression":case"ArrowFunctionExpression":case"ObjectMethod":case"ClassMethod":case"ClassPrivateMethod":qe(r,r.params,e);break;case"ArrayExpression":case"ArrayPattern":case"TupleExpression":qe(r,r.elements,e);break;case"ExportNamedDeclaration":case"ImportDeclaration":qe(r,r.specifiers,e);break;case"TSEnumDeclaration":case"TSEnumBody":qe(r,r.members,e);break;default:Ve(r,n)}else Ve(r,n)}}finalizeRemainingComments(){const{commentStack:e}=this.state;for(let t=e.length-1;t>=0;t--)this.finalizeComment(e[t]);this.state.commentStack=[]}resetPreviousNodeTrailingComments(e){const{commentStack:t}=this.state,{length:n}=t;if(0===n)return;const r=t[n-1];r.leadingNode===e&&(r.leadingNode=null)}takeSurroundingComments(e,t,n){const{commentStack:r}=this.state,i=r.length;if(0===i)return;let s=i-1;for(;s>=0;s--){const i=r[s],a=i.end;if(i.start===n)i.leadingNode=e;else if(a===t)i.trailingNode=e;else if(a<t)break}}}class We{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=[b.brace],this.firstInvalidTemplateEscapePos=null,this.strictErrors=new Map,this.tokensLength=0}get strict(){return(1&this.flags)>0}set strict(e){e?this.flags|=1:this.flags&=-2}init({strictMode:e,sourceType:n,startIndex:r,startLine:i,startColumn:s}){this.strict=!1!==e&&(!0===e||"module"===n),this.startIndex=r,this.curLine=i,this.lineStart=-s,this.startLoc=this.endLoc=new t(i,s,r)}get maybeInArrowParameters(){return(2&this.flags)>0}set maybeInArrowParameters(e){e?this.flags|=2:this.flags&=-3}get inType(){return(4&this.flags)>0}set inType(e){e?this.flags|=4:this.flags&=-5}get noAnonFunctionType(){return(8&this.flags)>0}set noAnonFunctionType(e){e?this.flags|=8:this.flags&=-9}get hasFlowComment(){return(16&this.flags)>0}set hasFlowComment(e){e?this.flags|=16:this.flags&=-17}get isAmbientContext(){return(32&this.flags)>0}set isAmbientContext(e){e?this.flags|=32:this.flags&=-33}get inAbstractClass(){return(64&this.flags)>0}set inAbstractClass(e){e?this.flags|=64:this.flags&=-65}get inDisallowConditionalTypesContext(){return(128&this.flags)>0}set inDisallowConditionalTypesContext(e){e?this.flags|=128:this.flags&=-129}get soloAwait(){return(256&this.flags)>0}set soloAwait(e){e?this.flags|=256:this.flags&=-257}get inFSharpPipelineDirectBody(){return(512&this.flags)>0}set inFSharpPipelineDirectBody(e){e?this.flags|=512:this.flags&=-513}get canStartJSXElement(){return(1024&this.flags)>0}set canStartJSXElement(e){e?this.flags|=1024:this.flags&=-1025}get containsEsc(){return(2048&this.flags)>0}set containsEsc(e){e?this.flags|=2048:this.flags&=-2049}get hasTopLevelAwait(){return(4096&this.flags)>0}set hasTopLevelAwait(e){e?this.flags|=4096:this.flags&=-4097}curPosition(){return new t(this.curLine,this.pos-this.lineStart,this.pos+this.startIndex)}clone(){const e=new We;return e.flags=this.flags,e.startIndex=this.startIndex,e.curLine=this.curLine,e.lineStart=this.lineStart,e.startLoc=this.startLoc,e.endLoc=this.endLoc,e.errors=this.errors.slice(),e.potentialArrowAt=this.potentialArrowAt,e.noArrowAt=this.noArrowAt.slice(),e.noArrowParamsConversionAt=this.noArrowParamsConversionAt.slice(),e.topicContext=this.topicContext,e.labels=this.labels.slice(),e.commentsLen=this.commentsLen,e.commentStack=this.commentStack.slice(),e.pos=this.pos,e.type=this.type,e.value=this.value,e.start=this.start,e.end=this.end,e.lastTokEndLoc=this.lastTokEndLoc,e.lastTokStartLoc=this.lastTokStartLoc,e.context=this.context.slice(),e.firstInvalidTemplateEscapePos=this.firstInvalidTemplateEscapePos,e.strictErrors=this.strictErrors,e.tokensLength=this.tokensLength,e}}var Ye=function(e){return e>=48&&e<=57};const Je={decBinOct:new Set([46,66,69,79,95,98,101,111]),hex:new Set([46,88,95,120])},Xe={bin:e=>48===e||49===e,oct:e=>e>=48&&e<=55,dec:e=>e>=48&&e<=57,hex:e=>e>=48&&e<=57||e>=65&&e<=70||e>=97&&e<=102};function He(e,t,n,r,i,s){const a=n,o=r,l=i;let c="",p=null,u=n;const{length:h}=t;for(;;){if(n>=h){s.unterminated(a,o,l),c+=t.slice(u,n);break}const d=t.charCodeAt(n);if(ze(e,d,t,n)){c+=t.slice(u,n);break}if(92===d){c+=t.slice(u,n);const a=Ge(t,n,r,i,"template"===e,s);null!==a.ch||p?c+=a.ch:p={pos:n,lineStart:r,curLine:i},({pos:n,lineStart:r,curLine:i}=a),u=n}else 8232===d||8233===d?(++i,r=++n):10===d||13===d?"template"===e?(c+=t.slice(u,n)+"\n",++n,13===d&&10===t.charCodeAt(n)&&++n,++i,u=r=n):s.unterminated(a,o,l):++n}return{pos:n,str:c,firstInvalidLoc:p,lineStart:r,curLine:i,containsInvalid:!!p}}function ze(e,t,n,r){return"template"===e?96===t||36===t&&123===n.charCodeAt(r+1):t===("double"===e?34:39)}function Ge(e,t,n,r,i,s){const a=!i;t++;const o=e=>({pos:t,ch:e,lineStart:n,curLine:r}),l=e.charCodeAt(t++);switch(l){case 110:return o("\n");case 114:return o("\r");case 120:{let i;return({code:i,pos:t}=Qe(e,t,n,r,2,!1,a,s)),o(null===i?null:String.fromCharCode(i))}case 117:{let i;return({code:i,pos:t}=et(e,t,n,r,a,s)),o(null===i?null:String.fromCodePoint(i))}case 116:return o("\t");case 98:return o("\b");case 118:return o("\v");case 102:return o("\f");case 13:10===e.charCodeAt(t)&&++t;case 10:n=t,++r;case 8232:case 8233:return o("");case 56:case 57:if(i)return o(null);s.strictNumericEscape(t-1,n,r);default:if(l>=48&&l<=55){const a=t-1;let l=/^[0-7]+/.exec(e.slice(a,t+2))[0],c=parseInt(l,8);c>255&&(l=l.slice(0,-1),c=parseInt(l,8)),t+=l.length-1;const p=e.charCodeAt(t);if("0"!==l||56===p||57===p){if(i)return o(null);s.strictNumericEscape(a,n,r)}return o(String.fromCharCode(c))}return o(String.fromCharCode(l))}}function Qe(e,t,n,r,i,s,a,o){const l=t;let c;return({n:c,pos:t}=Ze(e,t,n,r,16,i,s,!1,o,!a)),null===c&&(a?o.invalidEscapeSequence(l,n,r):t=l-1),{code:c,pos:t}}function Ze(e,t,n,r,i,s,a,o,l,c){const p=t,u=16===i?Je.hex:Je.decBinOct,h=16===i?Xe.hex:10===i?Xe.dec:8===i?Xe.oct:Xe.bin;let d=!1,f=0;for(let p=0,m=null==s?1/0:s;p<m;++p){const s=e.charCodeAt(t);let p;if(95===s&&"bail"!==o){const i=e.charCodeAt(t-1),s=e.charCodeAt(t+1);if(o){if(Number.isNaN(s)||!h(s)||u.has(i)||u.has(s)){if(c)return{n:null,pos:t};l.unexpectedNumericSeparator(t,n,r)}}else{if(c)return{n:null,pos:t};l.numericSeparatorInEscapeSequence(t,n,r)}++t;continue}if(p=s>=97?s-97+10:s>=65?s-65+10:Ye(s)?s-48:1/0,p>=i){if(p<=9&&c)return{n:null,pos:t};if(p<=9&&l.invalidDigit(t,n,r,i))p=0;else{if(!a)break;p=0,d=!0}}++t,f=f*i+p}return t===p||null!=s&&t-p!==s||d?{n:null,pos:t}:{n:f,pos:t}}function et(e,t,n,r,i,s){let a;if(123===e.charCodeAt(t)){if(++t,({code:a,pos:t}=Qe(e,t,n,r,e.indexOf("}",t)-t,!0,i,s)),++t,null!==a&&a>1114111){if(!i)return{code:null,pos:t};s.invalidCodePoint(t,n,r)}}else({code:a,pos:t}=Qe(e,t,n,r,4,!1,i,s));return{code:a,pos:t}}function tt(e,n,r){return new t(r,e-n,e)}const nt=new Set([103,109,115,105,121,117,100,118]);class rt{constructor(e){const t=e.startIndex||0;this.type=e.type,this.value=e.value,this.start=t+e.start,this.end=t+e.end,this.loc=new n(e.startLoc,e.endLoc)}}class it extends $e{constructor(e,t){super(),this.isLookahead=void 0,this.tokens=[],this.errorHandlers_readInt={invalidDigit:(e,t,n,r)=>!!(2048&this.optionFlags)&&(this.raise(y.InvalidDigit,tt(e,t,n),{radix:r}),!0),numericSeparatorInEscapeSequence:this.errorBuilder(y.NumericSeparatorInEscapeSequence),unexpectedNumericSeparator:this.errorBuilder(y.UnexpectedNumericSeparator)},this.errorHandlers_readCodePoint=Object.assign({},this.errorHandlers_readInt,{invalidEscapeSequence:this.errorBuilder(y.InvalidEscapeSequence),invalidCodePoint:this.errorBuilder(y.InvalidCodePoint)}),this.errorHandlers_readStringContents_string=Object.assign({},this.errorHandlers_readCodePoint,{strictNumericEscape:(e,t,n)=>{this.recordStrictModeErrors(y.StrictNumericEscape,tt(e,t,n))},unterminated:(e,t,n)=>{throw this.raise(y.UnterminatedString,tt(e-1,t,n))}}),this.errorHandlers_readStringContents_template=Object.assign({},this.errorHandlers_readCodePoint,{strictNumericEscape:this.errorBuilder(y.StrictNumericEscape),unterminated:(e,t,n)=>{throw this.raise(y.UnterminatedTemplate,tt(e,t,n))}}),this.state=new We,this.state.init(e),this.input=t,this.length=t.length,this.comments=[],this.isLookahead=!1}pushToken(e){this.tokens.length=this.state.tokensLength,this.tokens.push(e),++this.state.tokensLength}next(){this.checkKeywordEscapes(),256&this.optionFlags&&this.pushToken(new rt(this.state)),this.state.lastTokEndLoc=this.state.endLoc,this.state.lastTokStartLoc=this.state.startLoc,this.nextToken()}eat(e){return!!this.match(e)&&(this.next(),!0)}match(e){return this.state.type===e}createLookaheadState(e){return{pos:e.pos,value:null,type:e.type,start:e.start,end:e.end,context:[this.curContext()],inType:e.inType,startLoc:e.startLoc,lastTokEndLoc:e.lastTokEndLoc,curLine:e.curLine,lineStart:e.lineStart,curPosition:e.curPosition}}lookahead(){const e=this.state;this.state=this.createLookaheadState(e),this.isLookahead=!0,this.nextToken(),this.isLookahead=!1;const t=this.state;return this.state=e,t}nextTokenStart(){return this.nextTokenStartSince(this.state.pos)}nextTokenStartSince(e){return Ne.lastIndex=e,Ne.test(this.input)?Ne.lastIndex:e}lookaheadCharCode(){return this.lookaheadCharCodeSince(this.state.pos)}lookaheadCharCodeSince(e){return this.input.charCodeAt(this.nextTokenStartSince(e))}nextTokenInLineStart(){return this.nextTokenInLineStartSince(this.state.pos)}nextTokenInLineStartSince(e){return Oe.lastIndex=e,Oe.test(this.input)?Oe.lastIndex:e}lookaheadInLineCharCode(){return this.input.charCodeAt(this.nextTokenInLineStart())}codePointAtPos(e){let t=this.input.charCodeAt(e);if(55296==(64512&t)&&++e<this.input.length){const n=this.input.charCodeAt(e);56320==(64512&n)&&(t=65536+((1023&t)<<10)+(1023&n))}return t}setStrict(e){this.state.strict=e,e&&(this.state.strictErrors.forEach(([e,t])=>this.raise(e,t)),this.state.strictErrors.clear())}curContext(){return this.state.context[this.state.context.length-1]}nextToken(){this.skipSpace(),this.state.start=this.state.pos,this.isLookahead||(this.state.startLoc=this.state.curPosition()),this.state.pos>=this.length?this.finishToken(140):this.getTokenFromCode(this.codePointAtPos(this.state.pos))}skipBlockComment(e){let t;this.isLookahead||(t=this.state.curPosition());const r=this.state.pos,i=this.input.indexOf(e,r+2);if(-1===i)throw this.raise(y.UnterminatedComment,this.state.curPosition());for(this.state.pos=i+e.length,we.lastIndex=r+2;we.test(this.input)&&we.lastIndex<=i;)++this.state.curLine,this.state.lineStart=we.lastIndex;if(this.isLookahead)return;const s={type:"CommentBlock",value:this.input.slice(r+2,i),start:this.sourceToOffsetPos(r),end:this.sourceToOffsetPos(i+e.length),loc:new n(t,this.state.curPosition())};return 256&this.optionFlags&&this.pushToken(s),s}skipLineComment(e){const t=this.state.pos;let r;this.isLookahead||(r=this.state.curPosition());let i=this.input.charCodeAt(this.state.pos+=e);if(this.state.pos<this.length)for(;!Ie(i)&&++this.state.pos<this.length;)i=this.input.charCodeAt(this.state.pos);if(this.isLookahead)return;const s=this.state.pos,a={type:"CommentLine",value:this.input.slice(t+e,s),start:this.sourceToOffsetPos(t),end:this.sourceToOffsetPos(s),loc:new n(r,this.state.curPosition())};return 256&this.optionFlags&&this.pushToken(a),a}skipSpace(){const e=this.state.pos,t=4096&this.optionFlags?[]:null;e:for(;this.state.pos<this.length;){const n=this.input.charCodeAt(this.state.pos);switch(n){case 32:case 160:case 9:++this.state.pos;break;case 13:10===this.input.charCodeAt(this.state.pos+1)&&++this.state.pos;case 10:case 8232:case 8233:++this.state.pos,++this.state.curLine,this.state.lineStart=this.state.pos;break;case 47:switch(this.input.charCodeAt(this.state.pos+1)){case 42:{const e=this.skipBlockComment("*/");void 0!==e&&(this.addComment(e),null==t||t.push(e));break}case 47:{const e=this.skipLineComment(2);void 0!==e&&(this.addComment(e),null==t||t.push(e));break}default:break e}break;default:if(_e(n))++this.state.pos;else if(45===n&&!this.inModule&&8192&this.optionFlags){const n=this.state.pos;if(45!==this.input.charCodeAt(n+1)||62!==this.input.charCodeAt(n+2)||!(0===e||this.state.lineStart>e))break e;{const e=this.skipLineComment(3);void 0!==e&&(this.addComment(e),null==t||t.push(e))}}else{if(60!==n||this.inModule||!(8192&this.optionFlags))break e;{const e=this.state.pos;if(33!==this.input.charCodeAt(e+1)||45!==this.input.charCodeAt(e+2)||45!==this.input.charCodeAt(e+3))break e;{const e=this.skipLineComment(4);void 0!==e&&(this.addComment(e),null==t||t.push(e))}}}}}if((null==t?void 0:t.length)>0){const n=this.state.pos,r={start:this.sourceToOffsetPos(e),end:this.sourceToOffsetPos(n),comments:t,leadingNode:null,trailingNode:null,containingNode:null};this.state.commentStack.push(r)}}finishToken(e,t){this.state.end=this.state.pos,this.state.endLoc=this.state.curPosition();const n=this.state.type;this.state.type=e,this.state.value=t,this.isLookahead||this.updateContext(n)}replaceToken(e){this.state.type=e,this.updateContext()}readToken_numberSign(){if(0===this.state.pos&&this.readToken_interpreter())return;const e=this.state.pos+1,t=this.codePointAtPos(e);if(t>=48&&t<=57)throw this.raise(y.UnexpectedDigitAfterHash,this.state.curPosition());if(123===t||91===t&&this.hasPlugin("recordAndTuple")){if(this.expectPlugin("recordAndTuple"),"bar"===this.getPluginOption("recordAndTuple","syntaxType"))throw this.raise(123===t?y.RecordExpressionHashIncorrectStartSyntaxType:y.TupleExpressionHashIncorrectStartSyntaxType,this.state.curPosition());this.state.pos+=2,123===t?this.finishToken(7):this.finishToken(1)}else se(t)?(++this.state.pos,this.finishToken(139,this.readWord1(t))):92===t?(++this.state.pos,this.finishToken(139,this.readWord1())):this.finishOp(27,1)}readToken_dot(){const e=this.input.charCodeAt(this.state.pos+1);e>=48&&e<=57?this.readNumber(!0):46===e&&46===this.input.charCodeAt(this.state.pos+2)?(this.state.pos+=3,this.finishToken(21)):(++this.state.pos,this.finishToken(16))}readToken_slash(){61===this.input.charCodeAt(this.state.pos+1)?this.finishOp(31,2):this.finishOp(56,1)}readToken_interpreter(){if(0!==this.state.pos||this.length<2)return!1;let e=this.input.charCodeAt(this.state.pos+1);if(33!==e)return!1;const t=this.state.pos;for(this.state.pos+=1;!Ie(e)&&++this.state.pos<this.length;)e=this.input.charCodeAt(this.state.pos);const n=this.input.slice(t+2,this.state.pos);return this.finishToken(28,n),!0}readToken_mult_modulo(e){let t=42===e?55:54,n=1,r=this.input.charCodeAt(this.state.pos+1);42===e&&42===r&&(n++,r=this.input.charCodeAt(this.state.pos+2),t=57),61!==r||this.state.inType||(n++,t=37===e?33:30),this.finishOp(t,n)}readToken_pipe_amp(e){const t=this.input.charCodeAt(this.state.pos+1);if(t!==e){if(124===e){if(62===t)return void this.finishOp(39,2);if(this.hasPlugin("recordAndTuple")&&125===t){if("bar"!==this.getPluginOption("recordAndTuple","syntaxType"))throw this.raise(y.RecordExpressionBarIncorrectEndSyntaxType,this.state.curPosition());return this.state.pos+=2,void this.finishToken(9)}if(this.hasPlugin("recordAndTuple")&&93===t){if("bar"!==this.getPluginOption("recordAndTuple","syntaxType"))throw this.raise(y.TupleExpressionBarIncorrectEndSyntaxType,this.state.curPosition());return this.state.pos+=2,void this.finishToken(4)}}61!==t?this.finishOp(124===e?43:45,1):this.finishOp(30,2)}else 61===this.input.charCodeAt(this.state.pos+2)?this.finishOp(30,3):this.finishOp(124===e?41:42,2)}readToken_caret(){const e=this.input.charCodeAt(this.state.pos+1);if(61!==e||this.state.inType)if(94===e&&this.hasPlugin(["pipelineOperator",{proposal:"hack",topicToken:"^^"}])){this.finishOp(37,2);94===this.input.codePointAt(this.state.pos)&&this.unexpected()}else this.finishOp(44,1);else this.finishOp(32,2)}readToken_atSign(){64===this.input.charCodeAt(this.state.pos+1)&&this.hasPlugin(["pipelineOperator",{proposal:"hack",topicToken:"@@"}])?this.finishOp(38,2):this.finishOp(26,1)}readToken_plus_min(e){const t=this.input.charCodeAt(this.state.pos+1);t!==e?61===t?this.finishOp(30,2):this.finishOp(53,1):this.finishOp(34,2)}readToken_lt(){const{pos:e}=this.state,t=this.input.charCodeAt(e+1);if(60===t)return 61===this.input.charCodeAt(e+2)?void this.finishOp(30,3):void this.finishOp(51,2);61!==t?this.finishOp(47,1):this.finishOp(49,2)}readToken_gt(){const{pos:e}=this.state,t=this.input.charCodeAt(e+1);if(62===t){const t=62===this.input.charCodeAt(e+2)?3:2;return 61===this.input.charCodeAt(e+t)?void this.finishOp(30,t+1):void this.finishOp(52,t)}61!==t?this.finishOp(48,1):this.finishOp(49,2)}readToken_eq_excl(e){const t=this.input.charCodeAt(this.state.pos+1);if(61!==t)return 61===e&&62===t?(this.state.pos+=2,void this.finishToken(19)):void this.finishOp(61===e?29:35,1);this.finishOp(46,61===this.input.charCodeAt(this.state.pos+2)?3:2)}readToken_question(){const e=this.input.charCodeAt(this.state.pos+1),t=this.input.charCodeAt(this.state.pos+2);63===e?61===t?this.finishOp(30,3):this.finishOp(40,2):46!==e||t>=48&&t<=57?(++this.state.pos,this.finishToken(17)):(this.state.pos+=2,this.finishToken(18))}getTokenFromCode(e){switch(e){case 46:return void this.readToken_dot();case 40:return++this.state.pos,void this.finishToken(10);case 41:return++this.state.pos,void this.finishToken(11);case 59:return++this.state.pos,void this.finishToken(13);case 44:return++this.state.pos,void this.finishToken(12);case 91:if(this.hasPlugin("recordAndTuple")&&124===this.input.charCodeAt(this.state.pos+1)){if("bar"!==this.getPluginOption("recordAndTuple","syntaxType"))throw this.raise(y.TupleExpressionBarIncorrectStartSyntaxType,this.state.curPosition());this.state.pos+=2,this.finishToken(2)}else++this.state.pos,this.finishToken(0);return;case 93:return++this.state.pos,void this.finishToken(3);case 123:if(this.hasPlugin("recordAndTuple")&&124===this.input.charCodeAt(this.state.pos+1)){if("bar"!==this.getPluginOption("recordAndTuple","syntaxType"))throw this.raise(y.RecordExpressionBarIncorrectStartSyntaxType,this.state.curPosition());this.state.pos+=2,this.finishToken(6)}else++this.state.pos,this.finishToken(5);return;case 125:return++this.state.pos,void this.finishToken(8);case 58:return void(this.hasPlugin("functionBind")&&58===this.input.charCodeAt(this.state.pos+1)?this.finishOp(15,2):(++this.state.pos,this.finishToken(14)));case 63:return void this.readToken_question();case 96:return void this.readTemplateToken();case 48:{const e=this.input.charCodeAt(this.state.pos+1);if(120===e||88===e)return void this.readRadixNumber(16);if(111===e||79===e)return void this.readRadixNumber(8);if(98===e||66===e)return void this.readRadixNumber(2)}case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return void this.readNumber(!1);case 34:case 39:return void this.readString(e);case 47:return void this.readToken_slash();case 37:case 42:return void this.readToken_mult_modulo(e);case 124:case 38:return void this.readToken_pipe_amp(e);case 94:return void this.readToken_caret();case 43:case 45:return void this.readToken_plus_min(e);case 60:return void this.readToken_lt();case 62:return void this.readToken_gt();case 61:case 33:return void this.readToken_eq_excl(e);case 126:return void this.finishOp(36,1);case 64:return void this.readToken_atSign();case 35:return void this.readToken_numberSign();case 92:return void this.readWord();default:if(se(e))return void this.readWord(e)}throw this.raise(y.InvalidOrUnexpectedToken,this.state.curPosition(),{unexpected:String.fromCodePoint(e)})}finishOp(e,t){const n=this.input.slice(this.state.pos,this.state.pos+t);this.state.pos+=t,this.finishToken(e,n)}readRegexp(){const e=this.state.startLoc,t=this.state.start+1;let n,i,{pos:s}=this.state;for(;;++s){if(s>=this.length)throw this.raise(y.UnterminatedRegExp,r(e,1));const t=this.input.charCodeAt(s);if(Ie(t))throw this.raise(y.UnterminatedRegExp,r(e,1));if(n)n=!1;else{if(91===t)i=!0;else if(93===t&&i)i=!1;else if(47===t&&!i)break;n=92===t}}const a=this.input.slice(t,s);++s;let o="";const l=()=>r(e,s+2-t);for(;s<this.length;){const e=this.codePointAtPos(s),t=String.fromCharCode(e);if(nt.has(e))118===e?o.includes("u")&&this.raise(y.IncompatibleRegExpUVFlags,l()):117===e&&o.includes("v")&&this.raise(y.IncompatibleRegExpUVFlags,l()),o.includes(t)&&this.raise(y.DuplicateRegExpFlags,l());else{if(!ae(e)&&92!==e)break;this.raise(y.MalformedRegExpFlags,l())}++s,o+=t}this.state.pos=s,this.finishToken(138,{pattern:a,flags:o})}readInt(e,t,n=!1,r=!0){const{n:i,pos:s}=Ze(this.input,this.state.pos,this.state.lineStart,this.state.curLine,e,t,n,r,this.errorHandlers_readInt,!1);return this.state.pos=s,i}readRadixNumber(e){const t=this.state.pos,n=this.state.curPosition();let i=!1;this.state.pos+=2;const s=this.readInt(e);null==s&&this.raise(y.InvalidDigit,r(n,2),{radix:e});const a=this.input.charCodeAt(this.state.pos);if(110===a)++this.state.pos,i=!0;else if(109===a)throw this.raise(y.InvalidDecimal,n);if(se(this.codePointAtPos(this.state.pos)))throw this.raise(y.NumberIdentifier,this.state.curPosition());if(i){const e=this.input.slice(t,this.state.pos).replace(/[_n]/g,"");return void this.finishToken(136,e)}this.finishToken(135,s)}readNumber(e){const t=this.state.pos,n=this.state.curPosition();let i=!1,s=!1,a=!1,o=!1;e||null!==this.readInt(10)||this.raise(y.InvalidNumber,this.state.curPosition());const l=this.state.pos-t>=2&&48===this.input.charCodeAt(t);if(l){const e=this.input.slice(t,this.state.pos);if(this.recordStrictModeErrors(y.StrictOctalLiteral,n),!this.state.strict){const t=e.indexOf("_");t>0&&this.raise(y.ZeroDigitNumericSeparator,r(n,t))}o=l&&!/[89]/.test(e)}let c=this.input.charCodeAt(this.state.pos);if(46!==c||o||(++this.state.pos,this.readInt(10),i=!0,c=this.input.charCodeAt(this.state.pos)),69!==c&&101!==c||o||(c=this.input.charCodeAt(++this.state.pos),43!==c&&45!==c||++this.state.pos,null===this.readInt(10)&&this.raise(y.InvalidOrMissingExponent,n),i=!0,a=!0,c=this.input.charCodeAt(this.state.pos)),110===c&&((i||l)&&this.raise(y.InvalidBigIntLiteral,n),++this.state.pos,s=!0),109===c){this.expectPlugin("decimal",this.state.curPosition()),(a||l)&&this.raise(y.InvalidDecimal,n),++this.state.pos;var p=!0}if(se(this.codePointAtPos(this.state.pos)))throw this.raise(y.NumberIdentifier,this.state.curPosition());const u=this.input.slice(t,this.state.pos).replace(/[_mn]/g,"");if(s)return void this.finishToken(136,u);if(p)return void this.finishToken(137,u);const h=o?parseInt(u,8):parseFloat(u);this.finishToken(135,h)}readCodePoint(e){const{code:t,pos:n}=et(this.input,this.state.pos,this.state.lineStart,this.state.curLine,e,this.errorHandlers_readCodePoint);return this.state.pos=n,t}readString(e){const{str:t,pos:n,curLine:r,lineStart:i}=He(34===e?"double":"single",this.input,this.state.pos+1,this.state.lineStart,this.state.curLine,this.errorHandlers_readStringContents_string);this.state.pos=n+1,this.state.lineStart=i,this.state.curLine=r,this.finishToken(134,t)}readTemplateContinuation(){this.match(8)||this.unexpected(null,8),this.state.pos--,this.readTemplateToken()}readTemplateToken(){const e=this.input[this.state.pos],{str:n,firstInvalidLoc:r,pos:i,curLine:s,lineStart:a}=He("template",this.input,this.state.pos+1,this.state.lineStart,this.state.curLine,this.errorHandlers_readStringContents_template);this.state.pos=i+1,this.state.lineStart=a,this.state.curLine=s,r&&(this.state.firstInvalidTemplateEscapePos=new t(r.curLine,r.pos-r.lineStart,this.sourceToOffsetPos(r.pos))),96===this.input.codePointAt(i)?this.finishToken(24,r?null:e+n+"`"):(this.state.pos++,this.finishToken(25,r?null:e+n+"${"))}recordStrictModeErrors(e,t){const n=t.index;this.state.strict&&!this.state.strictErrors.has(n)?this.raise(e,t):this.state.strictErrors.set(n,[e,t])}readWord1(e){this.state.containsEsc=!1;let t="";const n=this.state.pos;let r=this.state.pos;for(void 0!==e&&(this.state.pos+=e<=65535?1:2);this.state.pos<this.length;){const e=this.codePointAtPos(this.state.pos);if(ae(e))this.state.pos+=e<=65535?1:2;else{if(92!==e)break;{this.state.containsEsc=!0,t+=this.input.slice(r,this.state.pos);const e=this.state.curPosition(),i=this.state.pos===n?se:ae;if(117!==this.input.charCodeAt(++this.state.pos)){this.raise(y.MissingUnicodeEscape,this.state.curPosition()),r=this.state.pos-1;continue}++this.state.pos;const s=this.readCodePoint(!0);null!==s&&(i(s)||this.raise(y.EscapedCharNotAnIdentifier,e),t+=String.fromCodePoint(s)),r=this.state.pos}}}return t+this.input.slice(r,this.state.pos)}readWord(e){const t=this.readWord1(e),n=I.get(t);void 0!==n?this.finishToken(n,X(n)):this.finishToken(132,t)}checkKeywordEscapes(){const{type:e}=this.state;Y(e)&&this.state.containsEsc&&this.raise(y.InvalidEscapedReservedWord,this.state.startLoc,{reservedWord:X(e)})}raise(e,n,r={}){const i=e(n instanceof t?n:n.loc.start,r);if(!(2048&this.optionFlags))throw i;return this.isLookahead||this.state.errors.push(i),i}raiseOverwrite(e,n,r={}){const i=n instanceof t?n:n.loc.start,s=i.index,a=this.state.errors;for(let t=a.length-1;t>=0;t--){const n=a[t];if(n.loc.index===s)return a[t]=e(i,r);if(n.loc.index<s)break}return this.raise(e,n,r)}updateContext(e){}unexpected(e,t){throw this.raise(y.UnexpectedToken,null!=e?e:this.state.startLoc,{expected:t?X(t):null})}expectPlugin(e,t){if(this.hasPlugin(e))return!0;throw this.raise(y.MissingPlugin,null!=t?t:this.state.startLoc,{missingPlugin:[e]})}expectOnePlugin(e){if(!e.some(e=>this.hasPlugin(e)))throw this.raise(y.MissingOneOfPlugins,this.state.startLoc,{missingPlugin:e})}errorBuilder(e){return(t,n,r)=>{this.raise(e,tt(t,n,r))}}}class st{constructor(){this.privateNames=new Set,this.loneAccessors=new Map,this.undefinedPrivateNames=new Map}}class at{constructor(e){this.parser=void 0,this.stack=[],this.undefinedPrivateNames=new Map,this.parser=e}current(){return this.stack[this.stack.length-1]}enter(){this.stack.push(new st)}exit(){const e=this.stack.pop(),t=this.current();for(const[n,r]of Array.from(e.undefinedPrivateNames))t?t.undefinedPrivateNames.has(n)||t.undefinedPrivateNames.set(n,r):this.parser.raise(y.InvalidPrivateFieldResolution,r,{identifierName:n})}declarePrivateName(e,t,n){const{privateNames:r,loneAccessors:i,undefinedPrivateNames:s}=this.current();let a=r.has(e);if(3&t){const n=a&&i.get(e);if(n){a=(3&n)===(3&t)||(4&n)!==(4&t),a||i.delete(e)}else a||i.set(e,t)}a&&this.parser.raise(y.PrivateNameRedeclaration,n,{identifierName:e}),r.add(e),s.delete(e)}usePrivateName(e,t){let n;for(n of this.stack)if(n.privateNames.has(e))return;n?n.undefinedPrivateNames.set(e,t):this.parser.raise(y.InvalidPrivateFieldResolution,t,{identifierName:e})}}class ot{constructor(e=0){this.type=e}canBeArrowParameterDeclaration(){return 2===this.type||1===this.type}isCertainlyParameterDeclaration(){return 3===this.type}}class lt extends ot{constructor(e){super(e),this.declarationErrors=new Map}recordDeclarationError(e,t){const n=t.index;this.declarationErrors.set(n,[e,t])}clearDeclarationError(e){this.declarationErrors.delete(e)}iterateErrors(e){this.declarationErrors.forEach(e)}}class ct{constructor(e){this.parser=void 0,this.stack=[new ot],this.parser=e}enter(e){this.stack.push(e)}exit(){this.stack.pop()}recordParameterInitializerError(e,t){const n=t.loc.start,{stack:r}=this;let i=r.length-1,s=r[i];for(;!s.isCertainlyParameterDeclaration();){if(!s.canBeArrowParameterDeclaration())return;s.recordDeclarationError(e,n),s=r[--i]}this.parser.raise(e,n)}recordArrowParameterBindingError(e,t){const{stack:n}=this,r=n[n.length-1],i=t.loc.start;if(r.isCertainlyParameterDeclaration())this.parser.raise(e,i);else{if(!r.canBeArrowParameterDeclaration())return;r.recordDeclarationError(e,i)}}recordAsyncArrowParametersError(e){const{stack:t}=this;let n=t.length-1,r=t[n];for(;r.canBeArrowParameterDeclaration();)2===r.type&&r.recordDeclarationError(y.AwaitBindingIdentifier,e),r=t[--n]}validateAsPattern(){const{stack:e}=this,t=e[e.length-1];t.canBeArrowParameterDeclaration()&&t.iterateErrors(([t,n])=>{this.parser.raise(t,n);let r=e.length-2,i=e[r];for(;i.canBeArrowParameterDeclaration();)i.clearDeclarationError(n.index),i=e[--r]})}}function pt(){return new ot}class ut extends it{addExtra(e,t,n,r=!0){if(!e)return;let{extra:i}=e;null==i&&(i={},e.extra=i),r?i[t]=n:Object.defineProperty(i,t,{enumerable:r,value:n})}isContextual(e){return this.state.type===e&&!this.state.containsEsc}isUnparsedContextual(e,t){if(this.input.startsWith(t,e)){const n=this.input.charCodeAt(e+t.length);return!(ae(n)||55296==(64512&n))}return!1}isLookaheadContextual(e){const t=this.nextTokenStart();return this.isUnparsedContextual(t,e)}eatContextual(e){return!!this.isContextual(e)&&(this.next(),!0)}expectContextual(e,t){if(!this.eatContextual(e)){if(null!=t)throw this.raise(t,this.state.startLoc);this.unexpected(null,e)}}canInsertSemicolon(){return this.match(140)||this.match(8)||this.hasPrecedingLineBreak()}hasPrecedingLineBreak(){return ke(this.input,this.offsetToSourcePos(this.state.lastTokEndLoc.index),this.state.start)}hasFollowingLineBreak(){return ke(this.input,this.state.end,this.nextTokenStart())}isLineTerminator(){return this.eat(13)||this.canInsertSemicolon()}semicolon(e=!0){(e?this.isLineTerminator():this.eat(13))||this.raise(y.MissingSemicolon,this.state.lastTokEndLoc)}expect(e,t){this.eat(e)||this.unexpected(t,e)}tryParse(e,t=this.state.clone()){const n={node:null};try{const r=e((e=null)=>{throw n.node=e,n});if(this.state.errors.length>t.errors.length){const e=this.state;return this.state=t,this.state.tokensLength=e.tokensLength,{node:r,error:e.errors[t.errors.length],thrown:!1,aborted:!1,failState:e}}return{node:r,error:null,thrown:!1,aborted:!1,failState:null}}catch(e){const r=this.state;if(this.state=t,e instanceof SyntaxError)return{node:null,error:e,thrown:!0,aborted:!1,failState:r};if(e===n)return{node:n.node,error:null,thrown:!1,aborted:!0,failState:r};throw e}}checkExpressionErrors(e,t){if(!e)return!1;const{shorthandAssignLoc:n,doubleProtoLoc:r,privateKeyLoc:i,optionalParametersLoc:s,voidPatternLoc:a}=e;if(!t)return!!(n||r||s||i||a);null!=n&&this.raise(y.InvalidCoverInitializedName,n),null!=r&&this.raise(y.DuplicateProto,r),null!=i&&this.raise(y.UnexpectedPrivateField,i),null!=s&&this.unexpected(s),null!=a&&this.raise(y.InvalidCoverDiscardElement,a)}isLiteralPropertyName(){return q(this.state.type)}isPrivateName(e){return"PrivateName"===e.type}getPrivateNameSV(e){return e.id.name}hasPropertyAsPrivateName(e){return("MemberExpression"===e.type||"OptionalMemberExpression"===e.type)&&this.isPrivateName(e.property)}isObjectProperty(e){return"ObjectProperty"===e.type}isObjectMethod(e){return"ObjectMethod"===e.type}initializeScopes(e="module"===this.options.sourceType){const t=this.state.labels;this.state.labels=[];const n=this.exportedIdentifiers;this.exportedIdentifiers=new Set;const r=this.inModule;this.inModule=e;const i=this.scope,s=this.getScopeHandler();this.scope=new s(this,e);const a=this.prodParam;this.prodParam=new je;const o=this.classScope;this.classScope=new at(this);const l=this.expressionScope;return this.expressionScope=new ct(this),()=>{this.state.labels=t,this.exportedIdentifiers=n,this.inModule=r,this.scope=i,this.prodParam=a,this.classScope=o,this.expressionScope=l}}enterInitialScopes(){let e=0;(this.inModule||1&this.optionFlags)&&(e|=2),32&this.optionFlags&&(e|=1);const t=!this.inModule&&"commonjs"===this.options.sourceType;(t||2&this.optionFlags)&&(e|=4),this.prodParam.enter(e);let n=t?514:1;4&this.optionFlags&&(n|=512),this.scope.enter(n)}checkDestructuringPrivate(e){const{privateKeyLoc:t}=e;null!==t&&this.expectPlugin("destructuringPrivate",t)}}class ht{constructor(){this.shorthandAssignLoc=null,this.doubleProtoLoc=null,this.privateKeyLoc=null,this.optionalParametersLoc=null,this.voidPatternLoc=null}}class dt{constructor(e,t,r){this.type="",this.start=t,this.end=0,this.loc=new n(r),128&(null==e?void 0:e.optionFlags)&&(this.range=[t,0]),null!=e&&e.filename&&(this.loc.filename=e.filename)}}const ft=dt.prototype;ft.__clone=function(){const e=new dt(void 0,this.start,this.loc.start),t=Object.keys(this);for(let n=0,r=t.length;n<r;n++){const r=t[n];"leadingComments"!==r&&"trailingComments"!==r&&"innerComments"!==r&&(e[r]=this[r])}return e};class mt extends ut{startNode(){const e=this.state.startLoc;return new dt(this,e.index,e)}startNodeAt(e){return new dt(this,e.index,e)}startNodeAtNode(e){return this.startNodeAt(e.loc.start)}finishNode(e,t){return this.finishNodeAt(e,t,this.state.lastTokEndLoc)}finishNodeAt(e,t,n){return e.type=t,e.end=n.index,e.loc.end=n,128&this.optionFlags&&(e.range[1]=n.index),4096&this.optionFlags&&this.processComment(e),e}resetStartLocation(e,t){e.start=t.index,e.loc.start=t,128&this.optionFlags&&(e.range[0]=t.index)}resetEndLocation(e,t=this.state.lastTokEndLoc){e.end=t.index,e.loc.end=t,128&this.optionFlags&&(e.range[1]=t.index)}resetStartLocationFromNode(e,t){this.resetStartLocation(e,t.loc.start)}castNodeTo(e,t){return e.type=t,e}cloneIdentifier(e){const{type:t,start:n,end:r,loc:i,range:s,name:a}=e,o=Object.create(ft);return o.type=t,o.start=n,o.end=r,o.loc=i,o.range=s,o.name=a,e.extra&&(o.extra=e.extra),o}cloneStringLiteral(e){const{type:t,start:n,end:r,loc:i,range:s,extra:a}=e,o=Object.create(ft);return o.type=t,o.start=n,o.end=r,o.loc=i,o.range=s,o.extra=a,o.value=e.value,o}}const yt=e=>"ParenthesizedExpression"===e.type?yt(e.expression):e;class Tt extends mt{toAssignable(e,t=!1){var n,r;let i;switch(("ParenthesizedExpression"===e.type||null!=(n=e.extra)&&n.parenthesized)&&(i=yt(e),t?"Identifier"===i.type?this.expressionScope.recordArrowParameterBindingError(y.InvalidParenthesizedAssignment,e):"CallExpression"===i.type||"MemberExpression"===i.type||this.isOptionalMemberExpression(i)||this.raise(y.InvalidParenthesizedAssignment,e):this.raise(y.InvalidParenthesizedAssignment,e)),e.type){case"Identifier":case"ObjectPattern":case"ArrayPattern":case"AssignmentPattern":case"RestElement":case"VoidPattern":break;case"ObjectExpression":this.castNodeTo(e,"ObjectPattern");for(let n=0,r=e.properties.length,i=r-1;n<r;n++){var s;const r=e.properties[n],a=n===i;this.toAssignableObjectExpressionProp(r,a,t),a&&"RestElement"===r.type&&null!=(s=e.extra)&&s.trailingCommaLoc&&this.raise(y.RestTrailingComma,e.extra.trailingCommaLoc)}break;case"ObjectProperty":{const{key:n,value:r}=e;this.isPrivateName(n)&&this.classScope.usePrivateName(this.getPrivateNameSV(n),n.loc.start),this.toAssignable(r,t);break}case"SpreadElement":throw new Error("Internal @babel/parser error (this is a bug, please report it). SpreadElement should be converted by .toAssignable's caller.");case"ArrayExpression":this.castNodeTo(e,"ArrayPattern"),this.toAssignableList(e.elements,null==(r=e.extra)?void 0:r.trailingCommaLoc,t);break;case"AssignmentExpression":"="!==e.operator&&this.raise(y.MissingEqInAssignment,e.left.loc.end),this.castNodeTo(e,"AssignmentPattern"),delete e.operator,"VoidPattern"===e.left.type&&this.raise(y.VoidPatternInitializer,e.left),this.toAssignable(e.left,t);break;case"ParenthesizedExpression":this.toAssignable(i,t)}}toAssignableObjectExpressionProp(e,t,n){if("ObjectMethod"===e.type)this.raise("get"===e.kind||"set"===e.kind?y.PatternHasAccessor:y.PatternHasMethod,e.key);else if("SpreadElement"===e.type){this.castNodeTo(e,"RestElement");const r=e.argument;this.checkToRestConversion(r,!1),this.toAssignable(r,n),t||this.raise(y.RestTrailingComma,e)}else this.toAssignable(e,n)}toAssignableList(e,t,n){const r=e.length-1;for(let i=0;i<=r;i++){const s=e[i];s&&(this.toAssignableListItem(e,i,n),"RestElement"===s.type&&(i<r?this.raise(y.RestTrailingComma,s):t&&this.raise(y.RestTrailingComma,t)))}}toAssignableListItem(e,t,n){const r=e[t];if("SpreadElement"===r.type){this.castNodeTo(r,"RestElement");const e=r.argument;this.checkToRestConversion(e,!0),this.toAssignable(e,n)}else this.toAssignable(r,n)}isAssignable(e,t){switch(e.type){case"Identifier":case"ObjectPattern":case"ArrayPattern":case"AssignmentPattern":case"RestElement":case"VoidPattern":return!0;case"ObjectExpression":{const t=e.properties.length-1;return e.properties.every((e,n)=>"ObjectMethod"!==e.type&&(n===t||"SpreadElement"!==e.type)&&this.isAssignable(e))}case"ObjectProperty":return this.isAssignable(e.value);case"SpreadElement":return this.isAssignable(e.argument);case"ArrayExpression":return e.elements.every(e=>null===e||this.isAssignable(e));case"AssignmentExpression":return"="===e.operator;case"ParenthesizedExpression":return this.isAssignable(e.expression);case"MemberExpression":case"OptionalMemberExpression":return!t;default:return!1}}toReferencedList(e,t){return e}toReferencedListDeep(e,t){this.toReferencedList(e,t);for(const t of e)"ArrayExpression"===(null==t?void 0:t.type)&&this.toReferencedListDeep(t.elements)}parseSpread(e){const t=this.startNode();return this.next(),t.argument=this.parseMaybeAssignAllowIn(e,void 0),this.finishNode(t,"SpreadElement")}parseRestBinding(){const e=this.startNode();this.next();const t=this.parseBindingAtom();return"VoidPattern"===t.type&&this.raise(y.UnexpectedVoidPattern,t),e.argument=t,this.finishNode(e,"RestElement")}parseBindingAtom(){switch(this.state.type){case 0:{const e=this.startNode();return this.next(),e.elements=this.parseBindingList(3,93,1),this.finishNode(e,"ArrayPattern")}case 5:return this.parseObjectLike(8,!0);case 88:return this.parseVoidPattern(null)}return this.parseIdentifier()}parseBindingList(e,t,n){const r=1&n,i=[];let s=!0;for(;!this.eat(e);)if(s?s=!1:this.expect(12),r&&this.match(12))i.push(null);else{if(this.eat(e))break;if(this.match(21)){let r=this.parseRestBinding();if((this.hasPlugin("flow")||2&n)&&(r=this.parseFunctionParamType(r)),i.push(r),!this.checkCommaAfterRest(t)){this.expect(e);break}}else{const e=[];if(2&n)for(this.match(26)&&this.hasPlugin("decorators")&&this.raise(y.UnsupportedParameterDecorator,this.state.startLoc);this.match(26);)e.push(this.parseDecorator());i.push(this.parseBindingElement(n,e))}}return i}parseBindingRestProperty(e){return this.next(),this.hasPlugin("discardBinding")&&this.match(88)?(e.argument=this.parseVoidPattern(null),this.raise(y.UnexpectedVoidPattern,e.argument)):e.argument=this.parseIdentifier(),this.checkCommaAfterRest(125),this.finishNode(e,"RestElement")}parseBindingProperty(){const{type:e,startLoc:t}=this.state;if(21===e)return this.parseBindingRestProperty(this.startNode());const n=this.startNode();return 139===e?(this.expectPlugin("destructuringPrivate",t),this.classScope.usePrivateName(this.state.value,t),n.key=this.parsePrivateName()):this.parsePropertyName(n),n.method=!1,this.parseObjPropValue(n,t,!1,!1,!0,!1)}parseBindingElement(e,t){const n=this.parseMaybeDefault();(this.hasPlugin("flow")||2&e)&&this.parseFunctionParamType(n),t.length&&(n.decorators=t,this.resetStartLocationFromNode(n,t[0]));return this.parseMaybeDefault(n.loc.start,n)}parseFunctionParamType(e){return e}parseMaybeDefault(e,t){if(null!=e||(e=this.state.startLoc),t=null!=t?t:this.parseBindingAtom(),!this.eat(29))return t;const n=this.startNodeAt(e);return"VoidPattern"===t.type&&this.raise(y.VoidPatternInitializer,t),n.left=t,n.right=this.parseMaybeAssignAllowIn(),this.finishNode(n,"AssignmentPattern")}isValidLVal(e,t,n,r){switch(e){case"AssignmentPattern":return"left";case"RestElement":return"argument";case"ObjectProperty":return"value";case"ParenthesizedExpression":return"expression";case"ArrayPattern":return"elements";case"ObjectPattern":return"properties";case"VoidPattern":return!0;case"CallExpression":if(!t&&!this.state.strict&&8192&this.optionFlags)return!0}return!1}isOptionalMemberExpression(e){return"OptionalMemberExpression"===e.type}checkLVal(e,t,n=64,r=!1,i=!1,s=!1,a=!1){var o;const l=e.type;if(this.isObjectMethod(e))return;const c=this.isOptionalMemberExpression(e);if(c||"MemberExpression"===l)return c&&(this.expectPlugin("optionalChainingAssign",e.loc.start),"AssignmentExpression"!==t.type&&this.raise(y.InvalidLhsOptionalChaining,e,{ancestor:t})),void(64!==n&&this.raise(y.InvalidPropertyBindingPattern,e));if("Identifier"===l){this.checkIdentifier(e,n,i);const{name:t}=e;return void(r&&(r.has(t)?this.raise(y.ParamDupe,e):r.add(t)))}"VoidPattern"===l&&"CatchClause"===t.type&&this.raise(y.VoidPatternCatchClauseParam,e);const p=yt(e);a||(a="CallExpression"===p.type&&("Import"===p.callee.type||"Super"===p.callee.type));const u=this.isValidLVal(l,a,!(s||null!=(o=e.extra)&&o.parenthesized)&&"AssignmentExpression"===t.type,n);if(!0===u)return;if(!1===u){const r=64===n?y.InvalidLhs:y.InvalidLhsBinding;return void this.raise(r,e,{ancestor:t})}let h,d;"string"==typeof u?(h=u,d="ParenthesizedExpression"===l):[h,d]=u;const f="ArrayPattern"===l||"ObjectPattern"===l?{type:l}:t,m=e[h];if(Array.isArray(m))for(const e of m)e&&this.checkLVal(e,f,n,r,i,d,!0);else m&&this.checkLVal(m,f,n,r,i,d,a)}checkIdentifier(e,t,n=!1){this.state.strict&&(n?me(e.name,this.inModule):fe(e.name))&&(64===t?this.raise(y.StrictEvalArguments,e,{referenceName:e.name}):this.raise(y.StrictEvalArgumentsBinding,e,{bindingName:e.name})),8192&t&&"let"===e.name&&this.raise(y.LetInLexicalBinding,e),64&t||this.declareNameFromIdentifier(e,t)}declareNameFromIdentifier(e,t){this.scope.declareName(e.name,t,e.loc.start)}checkToRestConversion(e,t){switch(e.type){case"ParenthesizedExpression":this.checkToRestConversion(e.expression,t);break;case"Identifier":case"MemberExpression":break;case"ArrayExpression":case"ObjectExpression":if(t)break;default:this.raise(y.InvalidRestAssignmentPattern,e)}}checkCommaAfterRest(e){return!!this.match(12)&&(this.raise(this.lookaheadCharCode()===e?y.RestTrailingComma:y.ElementAfterRest,this.state.startLoc),!0)}}const gt=/in(?:stanceof)?|as|satisfies/y;function xt(e){if(!e)throw new Error("Assert fail")}const St=m`typescript`({AbstractMethodHasImplementation:({methodName:e})=>`Method '${e}' cannot have an implementation because it is marked abstract.`,AbstractPropertyHasInitializer:({propertyName:e})=>`Property '${e}' cannot have an initializer because it is marked abstract.`,AccessorCannotBeOptional:"An 'accessor' property cannot be declared optional.",AccessorCannotDeclareThisParameter:"'get' and 'set' accessors cannot declare 'this' parameters.",AccessorCannotHaveTypeParameters:"An accessor cannot have type parameters.",ClassMethodHasDeclare:"Class methods cannot have the 'declare' modifier.",ClassMethodHasReadonly:"Class methods cannot have the 'readonly' modifier.",ConstInitializerMustBeStringOrNumericLiteralOrLiteralEnumReference:"A 'const' initializer in an ambient context must be a string or numeric literal or literal enum reference.",ConstructorHasTypeParameters:"Type parameters cannot appear on a constructor declaration.",DeclareAccessor:({kind:e})=>`'declare' is not allowed in ${e}ters.`,DeclareClassFieldHasInitializer:"Initializers are not allowed in ambient contexts.",DeclareFunctionHasImplementation:"An implementation cannot be declared in ambient contexts.",DuplicateAccessibilityModifier:({modifier:e})=>`Accessibility modifier already seen: '${e}'.`,DuplicateModifier:({modifier:e})=>`Duplicate modifier: '${e}'.`,EmptyHeritageClauseType:({token:e})=>`'${e}' list cannot be empty.`,EmptyTypeArguments:"Type argument list cannot be empty.",EmptyTypeParameters:"Type parameter list cannot be empty.",ExpectedAmbientAfterExportDeclare:"'export declare' must be followed by an ambient declaration.",ImportAliasHasImportType:"An import alias can not use 'import type'.",ImportReflectionHasImportType:"An `import module` declaration can not use `type` modifier",IncompatibleModifiers:({modifiers:e})=>`'${e[0]}' modifier cannot be used with '${e[1]}' modifier.`,IndexSignatureHasAbstract:"Index signatures cannot have the 'abstract' modifier.",IndexSignatureHasAccessibility:({modifier:e})=>`Index signatures cannot have an accessibility modifier ('${e}').`,IndexSignatureHasDeclare:"Index signatures cannot have the 'declare' modifier.",IndexSignatureHasOverride:"'override' modifier cannot appear on an index signature.",IndexSignatureHasStatic:"Index signatures cannot have the 'static' modifier.",InitializerNotAllowedInAmbientContext:"Initializers are not allowed in ambient contexts.",InvalidHeritageClauseType:({token:e})=>`'${e}' list can only include identifiers or qualified-names with optional type arguments.`,InvalidModifierOnAwaitUsingDeclaration:e=>`'${e}' modifier cannot appear on an await using declaration.`,InvalidModifierOnTypeMember:({modifier:e})=>`'${e}' modifier cannot appear on a type member.`,InvalidModifierOnTypeParameter:({modifier:e})=>`'${e}' modifier cannot appear on a type parameter.`,InvalidModifierOnTypeParameterPositions:({modifier:e})=>`'${e}' modifier can only appear on a type parameter of a class, interface or type alias.`,InvalidModifierOnUsingDeclaration:e=>`'${e}' modifier cannot appear on a using declaration.`,InvalidModifiersOrder:({orderedModifiers:e})=>`'${e[0]}' modifier must precede '${e[1]}' modifier.`,InvalidPropertyAccessAfterInstantiationExpression:"Invalid property access after an instantiation expression. You can either wrap the instantiation expression in parentheses, or delete the type arguments.",InvalidTupleMemberLabel:"Tuple members must be labeled with a simple identifier.",MissingInterfaceName:"'interface' declarations must be followed by an identifier.",NonAbstractClassHasAbstractMethod:"Abstract methods can only appear within an abstract class.",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:e})=>`Private elements cannot have an accessibility modifier ('${e}').`,ReadonlyForMethodSignature:"'readonly' modifier can only appear on a property declaration or index signature.",ReservedArrowTypeParam:"This syntax is reserved in files with the .mts or .cts extension. Add a trailing comma, as in `<T,>() => ...`.",ReservedTypeAssertion:"This syntax is reserved in files with the .mts or .cts extension. Use an `as` expression instead.",SetAccessorCannotHaveOptionalParameter:"A 'set' accessor cannot have an optional parameter.",SetAccessorCannotHaveRestParameter:"A 'set' accessor cannot have rest parameter.",SetAccessorCannotHaveReturnType:"A 'set' accessor cannot have a return type annotation.",SingleTypeParameterWithoutTrailingComma:({typeParameterName:e})=>`Single type parameter ${e} should have a trailing comma. Example usage: <${e},>.`,StaticBlockCannotHaveModifier:"Static class blocks cannot have any modifier.",TupleOptionalAfterType:"A labeled tuple optional element must be declared using a question mark after the name and before the colon (`name?: type`), rather than after the type (`name: type?`).",TypeAnnotationAfterAssign:"Type annotations must come before default assignments, e.g. instead of `age = 25: number` use `age: number = 25`.",TypeImportCannotSpecifyDefaultAndNamed:"A type-only import can specify a default import or named bindings, but not both.",TypeModifierIsUsedInTypeExports:"The 'type' modifier cannot be used on a named export when 'export type' is used on its export statement.",TypeModifierIsUsedInTypeImports:"The 'type' modifier cannot be used on a named import when 'import type' is used on its import statement.",UnexpectedParameterModifier:"A parameter property is only allowed in a constructor implementation.",UnexpectedReadonly:"'readonly' type modifier is only permitted on array and tuple literal types.",UnexpectedTypeAnnotation:"Did not expect a type annotation here.",UnexpectedTypeCastInParameter:"Unexpected type cast in parameter position.",UnsupportedImportTypeArgument:"Argument in a type import must be a string literal.",UnsupportedParameterPropertyKind:"A parameter property may not be declared using a binding pattern.",UnsupportedSignatureParameterKind:({type:e})=>`Name in a signature must be an Identifier, ObjectPattern or ArrayPattern, instead got ${e}.`,UsingDeclarationInAmbientContext:e=>`'${e}' declarations are not allowed in ambient contexts.`});function bt(e){return"private"===e||"public"===e||"protected"===e}function Pt(e){return"in"===e||"out"===e}function Et(e){if("MemberExpression"!==e.type)return!1;const{computed:t,property:n}=e;return(!t||"StringLiteral"===n.type||!("TemplateLiteral"!==n.type||n.expressions.length>0))&&Ct(e.object)}function vt(e,t){var n;const{type:r}=e;if(null!=(n=e.extra)&&n.parenthesized)return!1;if(t){if("Literal"===r){const{value:t}=e;if("string"==typeof t||"boolean"==typeof t)return!0}}else if("StringLiteral"===r||"BooleanLiteral"===r)return!0;return!(!At(e,t)&&!function(e,t){if("UnaryExpression"===e.type){const{operator:n,argument:r}=e;if("-"===n&&At(r,t))return!0}return!1}(e,t))||("TemplateLiteral"===r&&0===e.expressions.length||!!Et(e))}function At(e,t){return t?"Literal"===e.type&&("number"==typeof e.value||"bigint"in e):"NumericLiteral"===e.type||"BigIntLiteral"===e.type}function Ct(e){return"Identifier"===e.type||"MemberExpression"===e.type&&!e.computed&&Ct(e.object)}const wt=m`placeholders`({ClassNameIsRequired:"A class name is required.",UnexpectedSpace:"Unexpected space in placeholder."});const It=["minimal","fsharp","hack","smart"],kt=["^^","@@","^","%","#"];const Nt={estree:e=>class extends e{parse(){const e=x(super.parse());return 256&this.optionFlags&&(e.tokens=e.tokens.map(x)),e}parseRegExpLiteral({pattern:e,flags:t}){let n=null;try{n=new RegExp(e,t)}catch(e){}const r=this.estreeParseLiteral(n);return r.regex={pattern:e,flags:t},r}parseBigIntLiteral(e){let t;try{t=BigInt(e)}catch(e){t=null}const n=this.estreeParseLiteral(t);return n.bigint=String(n.value||e),n}parseDecimalLiteral(e){const t=this.estreeParseLiteral(null);return t.decimal=String(t.value||e),t}estreeParseLiteral(e){return this.parseLiteral(e,"Literal")}parseStringLiteral(e){return this.estreeParseLiteral(e)}parseNumericLiteral(e){return this.estreeParseLiteral(e)}parseNullLiteral(){return this.estreeParseLiteral(null)}parseBooleanLiteral(e){return this.estreeParseLiteral(e)}estreeParseChainExpression(e,t){const n=this.startNodeAtNode(e);return n.expression=e,this.finishNodeAt(n,"ChainExpression",t)}directiveToStmt(e){const t=e.value;delete e.value,this.castNodeTo(t,"Literal"),t.raw=t.extra.raw,t.value=t.extra.expressionValue;const n=this.castNodeTo(e,"ExpressionStatement");return n.expression=t,n.directive=t.extra.rawValue,delete t.extra,n}fillOptionalPropertiesForTSESLint(e){}cloneEstreeStringLiteral(e){const{start:t,end:n,loc:r,range:i,raw:s,value:a}=e,o=Object.create(e.constructor.prototype);return o.type="Literal",o.start=t,o.end=n,o.loc=r,o.range=i,o.raw=s,o.value=a,o}initFunction(e,t){super.initFunction(e,t),e.expression=!1}checkDeclaration(e){null!=e&&this.isObjectProperty(e)?this.checkDeclaration(e.value):super.checkDeclaration(e)}getObjectOrClassMethodParams(e){return e.value.params}isValidDirective(e){var t;return"ExpressionStatement"===e.type&&"Literal"===e.expression.type&&"string"==typeof e.expression.value&&!(null!=(t=e.expression.extra)&&t.parenthesized)}parseBlockBody(e,t,n,r,i){super.parseBlockBody(e,t,n,r,i);const s=e.directives.map(e=>this.directiveToStmt(e));e.body=s.concat(e.body),delete e.directives}parsePrivateName(){const e=super.parsePrivateName();return this.getPluginOption("estree","classFeatures")?this.convertPrivateNameToPrivateIdentifier(e):e}convertPrivateNameToPrivateIdentifier(e){const t=super.getPrivateNameSV(e);return delete e.id,e.name=t,this.castNodeTo(e,"PrivateIdentifier")}isPrivateName(e){return this.getPluginOption("estree","classFeatures")?"PrivateIdentifier"===e.type:super.isPrivateName(e)}getPrivateNameSV(e){return this.getPluginOption("estree","classFeatures")?e.name:super.getPrivateNameSV(e)}parseLiteral(e,t){const n=super.parseLiteral(e,t);return n.raw=n.extra.raw,delete n.extra,n}parseFunctionBody(e,t,n=!1){super.parseFunctionBody(e,t,n),e.expression="BlockStatement"!==e.body.type}parseMethod(e,t,n,r,i,s,a=!1){let o=this.startNode();o.kind=e.kind,o=super.parseMethod(o,t,n,r,i,s,a),delete o.kind;const{typeParameters:l}=e;l&&(delete e.typeParameters,o.typeParameters=l,this.resetStartLocationFromNode(o,l));const c=this.castNodeTo(o,"FunctionExpression");return e.value=c,"ClassPrivateMethod"===s&&(e.computed=!1),"ObjectMethod"===s?("method"===e.kind&&(e.kind="init"),e.shorthand=!1,this.finishNode(e,"Property")):this.finishNode(e,"MethodDefinition")}nameIsConstructor(e){return"Literal"===e.type?"constructor"===e.value:super.nameIsConstructor(e)}parseClassProperty(...e){const t=super.parseClassProperty(...e);return this.getPluginOption("estree","classFeatures")?(this.castNodeTo(t,"PropertyDefinition"),t):t}parseClassPrivateProperty(...e){const t=super.parseClassPrivateProperty(...e);return this.getPluginOption("estree","classFeatures")?(this.castNodeTo(t,"PropertyDefinition"),t.computed=!1,t):t}parseClassAccessorProperty(e){const t=super.parseClassAccessorProperty(e);return this.getPluginOption("estree","classFeatures")?(t.abstract&&this.hasPlugin("typescript")?(delete t.abstract,this.castNodeTo(t,"TSAbstractAccessorProperty")):this.castNodeTo(t,"AccessorProperty"),t):t}parseObjectProperty(e,t,n,r){const i=super.parseObjectProperty(e,t,n,r);return i&&(i.kind="init",this.castNodeTo(i,"Property")),i}finishObjectProperty(e){return e.kind="init",this.finishNode(e,"Property")}isValidLVal(e,t,n,r){return"Property"===e?"value":super.isValidLVal(e,t,n,r)}isAssignable(e,t){return null!=e&&this.isObjectProperty(e)?this.isAssignable(e.value,t):super.isAssignable(e,t)}toAssignable(e,t=!1){if(null!=e&&this.isObjectProperty(e)){const{key:n,value:r}=e;this.isPrivateName(n)&&this.classScope.usePrivateName(this.getPrivateNameSV(n),n.loc.start),this.toAssignable(r,t)}else super.toAssignable(e,t)}toAssignableObjectExpressionProp(e,t,n){"Property"!==e.type||"get"!==e.kind&&"set"!==e.kind?"Property"===e.type&&e.method?this.raise(y.PatternHasMethod,e.key):super.toAssignableObjectExpressionProp(e,t,n):this.raise(y.PatternHasAccessor,e.key)}finishCallExpression(e,t){const n=super.finishCallExpression(e,t);var r,i;"Import"===n.callee.type?(this.castNodeTo(n,"ImportExpression"),n.source=n.arguments[0],n.options=null!=(r=n.arguments[1])?r:null,n.attributes=null!=(i=n.arguments[1])?i:null,delete n.arguments,delete n.callee):"OptionalCallExpression"===n.type?this.castNodeTo(n,"CallExpression"):n.optional=!1;return n}toReferencedArguments(e){"ImportExpression"!==e.type&&super.toReferencedArguments(e)}parseExport(e,t){const n=this.state.lastTokStartLoc,r=super.parseExport(e,t);switch(r.type){case"ExportAllDeclaration":r.exported=null;break;case"ExportNamedDeclaration":1===r.specifiers.length&&"ExportNamespaceSpecifier"===r.specifiers[0].type&&(this.castNodeTo(r,"ExportAllDeclaration"),r.exported=r.specifiers[0].exported,delete r.specifiers);case"ExportDefaultDeclaration":{var i;const{declaration:e}=r;"ClassDeclaration"===(null==e?void 0:e.type)&&(null==(i=e.decorators)?void 0:i.length)>0&&e.start===r.start&&this.resetStartLocation(r,n)}}return r}stopParseSubscript(e,t){const n=super.stopParseSubscript(e,t);return t.optionalChainMember?this.estreeParseChainExpression(n,e.loc.end):n}parseMember(e,t,n,r,i){const s=super.parseMember(e,t,n,r,i);return"OptionalMemberExpression"===s.type?this.castNodeTo(s,"MemberExpression"):s.optional=!1,s}isOptionalMemberExpression(e){return"ChainExpression"===e.type?"MemberExpression"===e.expression.type:super.isOptionalMemberExpression(e)}hasPropertyAsPrivateName(e){return"ChainExpression"===e.type&&(e=e.expression),super.hasPropertyAsPrivateName(e)}isObjectProperty(e){return"Property"===e.type&&"init"===e.kind&&!e.method}isObjectMethod(e){return"Property"===e.type&&(e.method||"get"===e.kind||"set"===e.kind)}castNodeTo(e,t){const n=super.castNodeTo(e,t);return this.fillOptionalPropertiesForTSESLint(n),n}cloneIdentifier(e){const t=super.cloneIdentifier(e);return this.fillOptionalPropertiesForTSESLint(t),t}cloneStringLiteral(e){return"Literal"===e.type?this.cloneEstreeStringLiteral(e):super.cloneStringLiteral(e)}finishNodeAt(e,t,n){return x(super.finishNodeAt(e,t,n))}finishNode(e,t){const n=super.finishNode(e,t);return this.fillOptionalPropertiesForTSESLint(n),n}resetStartLocation(e,t){super.resetStartLocation(e,t),x(e)}resetEndLocation(e,t=this.state.lastTokEndLoc){super.resetEndLocation(e,t),x(e)}},jsx:e=>class extends e{jsxReadToken(){let e="",t=this.state.pos;for(;;){if(this.state.pos>=this.length)throw this.raise(De.UnterminatedJsxContent,this.state.startLoc);const n=this.input.charCodeAt(this.state.pos);switch(n){case 60:case 123:return this.state.pos===this.state.start?void(60===n&&this.state.canStartJSXElement?(++this.state.pos,this.finishToken(143)):super.getTokenFromCode(n)):(e+=this.input.slice(t,this.state.pos),void this.finishToken(142,e));case 38:e+=this.input.slice(t,this.state.pos),e+=this.jsxReadEntity(),t=this.state.pos;break;default:Ie(n)?(e+=this.input.slice(t,this.state.pos),e+=this.jsxReadNewLine(!0),t=this.state.pos):++this.state.pos}}}jsxReadNewLine(e){const t=this.input.charCodeAt(this.state.pos);let n;return++this.state.pos,13===t&&10===this.input.charCodeAt(this.state.pos)?(++this.state.pos,n=e?"\n":"\r\n"):n=String.fromCharCode(t),++this.state.curLine,this.state.lineStart=this.state.pos,n}jsxReadString(e){let t="",n=++this.state.pos;for(;;){if(this.state.pos>=this.length)throw this.raise(y.UnterminatedString,this.state.startLoc);const r=this.input.charCodeAt(this.state.pos);if(r===e)break;38===r?(t+=this.input.slice(n,this.state.pos),t+=this.jsxReadEntity(),n=this.state.pos):Ie(r)?(t+=this.input.slice(n,this.state.pos),t+=this.jsxReadNewLine(!1),n=this.state.pos):++this.state.pos}t+=this.input.slice(n,this.state.pos++),this.finishToken(134,t)}jsxReadEntity(){const e=++this.state.pos;if(35===this.codePointAtPos(this.state.pos)){++this.state.pos;let e=10;120===this.codePointAtPos(this.state.pos)&&(e=16,++this.state.pos);const t=this.readInt(e,void 0,!1,"bail");if(null!==t&&59===this.codePointAtPos(this.state.pos))return++this.state.pos,String.fromCodePoint(t)}else{let t=0,n=!1;for(;t++<10&&this.state.pos<this.length&&!(n=59===this.codePointAtPos(this.state.pos));)++this.state.pos;if(n){const t=this.input.slice(e,this.state.pos),n=Ce[t];if(++this.state.pos,n)return n}}return this.state.pos=e,"&"}jsxReadWord(){let e;const t=this.state.pos;do{e=this.input.charCodeAt(++this.state.pos)}while(ae(e)||45===e);this.finishToken(141,this.input.slice(t,this.state.pos))}jsxParseIdentifier(){const e=this.startNode();return this.match(141)?e.name=this.state.value:Y(this.state.type)?e.name=X(this.state.type):this.unexpected(),this.next(),this.finishNode(e,"JSXIdentifier")}jsxParseNamespacedName(){const e=this.state.startLoc,t=this.jsxParseIdentifier();if(!this.eat(14))return t;const n=this.startNodeAt(e);return n.namespace=t,n.name=this.jsxParseIdentifier(),this.finishNode(n,"JSXNamespacedName")}jsxParseElementName(){const e=this.state.startLoc;let t=this.jsxParseNamespacedName();if("JSXNamespacedName"===t.type)return t;for(;this.eat(16);){const n=this.startNodeAt(e);n.object=t,n.property=this.jsxParseIdentifier(),t=this.finishNode(n,"JSXMemberExpression")}return t}jsxParseAttributeValue(){let e;switch(this.state.type){case 5:return e=this.startNode(),this.setContext(b.brace),this.next(),e=this.jsxParseExpressionContainer(e,b.j_oTag),"JSXEmptyExpression"===e.expression.type&&this.raise(De.AttributeIsEmpty,e),e;case 143:case 134:return this.parseExprAtom();default:throw this.raise(De.UnsupportedJsxValue,this.state.startLoc)}}jsxParseEmptyExpression(){const e=this.startNodeAt(this.state.lastTokEndLoc);return this.finishNodeAt(e,"JSXEmptyExpression",this.state.startLoc)}jsxParseSpreadChild(e){return this.next(),e.expression=this.parseExpression(),this.setContext(b.j_expr),this.state.canStartJSXElement=!0,this.expect(8),this.finishNode(e,"JSXSpreadChild")}jsxParseExpressionContainer(e,t){if(this.match(8))e.expression=this.jsxParseEmptyExpression();else{const t=this.parseExpression();e.expression=t}return this.setContext(t),this.state.canStartJSXElement=!0,this.expect(8),this.finishNode(e,"JSXExpressionContainer")}jsxParseAttribute(){const e=this.startNode();return this.match(5)?(this.setContext(b.brace),this.next(),this.expect(21),e.argument=this.parseMaybeAssignAllowIn(),this.setContext(b.j_oTag),this.state.canStartJSXElement=!0,this.expect(8),this.finishNode(e,"JSXSpreadAttribute")):(e.name=this.jsxParseNamespacedName(),e.value=this.eat(29)?this.jsxParseAttributeValue():null,this.finishNode(e,"JSXAttribute"))}jsxParseOpeningElementAt(e){const t=this.startNodeAt(e);return this.eat(144)?this.finishNode(t,"JSXOpeningFragment"):(t.name=this.jsxParseElementName(),this.jsxParseOpeningElementAfterName(t))}jsxParseOpeningElementAfterName(e){const t=[];for(;!this.match(56)&&!this.match(144);)t.push(this.jsxParseAttribute());return e.attributes=t,e.selfClosing=this.eat(56),this.expect(144),this.finishNode(e,"JSXOpeningElement")}jsxParseClosingElementAt(e){const t=this.startNodeAt(e);return this.eat(144)?this.finishNode(t,"JSXClosingFragment"):(t.name=this.jsxParseElementName(),this.expect(144),this.finishNode(t,"JSXClosingElement"))}jsxParseElementAt(e){const t=this.startNodeAt(e),n=[],r=this.jsxParseOpeningElementAt(e);let i=null;if(!r.selfClosing){e:for(;;)switch(this.state.type){case 143:if(e=this.state.startLoc,this.next(),this.eat(56)){i=this.jsxParseClosingElementAt(e);break e}n.push(this.jsxParseElementAt(e));break;case 142:n.push(this.parseLiteral(this.state.value,"JSXText"));break;case 5:{const e=this.startNode();this.setContext(b.brace),this.next(),this.match(21)?n.push(this.jsxParseSpreadChild(e)):n.push(this.jsxParseExpressionContainer(e,b.j_expr));break}default:this.unexpected()}Le(r)&&!Le(i)&&null!==i?this.raise(De.MissingClosingTagFragment,i):!Le(r)&&Le(i)?this.raise(De.MissingClosingTagElement,i,{openingTagName:Me(r.name)}):Le(r)||Le(i)||Me(i.name)!==Me(r.name)&&this.raise(De.MissingClosingTagElement,i,{openingTagName:Me(r.name)})}if(Le(r)?(t.openingFragment=r,t.closingFragment=i):(t.openingElement=r,t.closingElement=i),t.children=n,this.match(47))throw this.raise(De.UnwrappedAdjacentJSXElements,this.state.startLoc);return Le(r)?this.finishNode(t,"JSXFragment"):this.finishNode(t,"JSXElement")}jsxParseElement(){const e=this.state.startLoc;return this.next(),this.jsxParseElementAt(e)}setContext(e){const{context:t}=this.state;t[t.length-1]=e}parseExprAtom(e){return this.match(143)?this.jsxParseElement():this.match(47)&&33!==this.input.charCodeAt(this.state.pos)?(this.replaceToken(143),this.jsxParseElement()):super.parseExprAtom(e)}skipSpace(){this.curContext().preserveSpace||super.skipSpace()}getTokenFromCode(e){const t=this.curContext();if(t!==b.j_expr){if(t===b.j_oTag||t===b.j_cTag){if(se(e))return void this.jsxReadWord();if(62===e)return++this.state.pos,void this.finishToken(144);if((34===e||39===e)&&t===b.j_oTag)return void this.jsxReadString(e)}if(60===e&&this.state.canStartJSXElement&&33!==this.input.charCodeAt(this.state.pos+1))return++this.state.pos,void this.finishToken(143);super.getTokenFromCode(e)}else this.jsxReadToken()}updateContext(e){const{context:t,type:n}=this.state;if(56===n&&143===e)t.splice(-2,2,b.j_cTag),this.state.canStartJSXElement=!1;else if(143===n)t.push(b.j_oTag);else if(144===n){const n=t[t.length-1];n===b.j_oTag&&56===e||n===b.j_cTag?(t.pop(),this.state.canStartJSXElement=t[t.length-1]===b.j_expr):(this.setContext(b.j_expr),this.state.canStartJSXElement=!0)}else this.state.canStartJSXElement=M[n]}},flow:e=>class extends e{constructor(...e){super(...e),this.flowPragma=void 0}getScopeHandler(){return Se}shouldParseTypes(){return this.getPluginOption("flow","all")||"flow"===this.flowPragma}finishToken(e,t){134!==e&&13!==e&&28!==e&&void 0===this.flowPragma&&(this.flowPragma=null),super.finishToken(e,t)}addComment(e){if(void 0===this.flowPragma){const t=Ae.exec(e.value);if(t)if("flow"===t[1])this.flowPragma="flow";else{if("noflow"!==t[1])throw new Error("Unexpected flow pragma");this.flowPragma="noflow"}else;}super.addComment(e)}flowParseTypeInitialiser(e){const t=this.state.inType;this.state.inType=!0,this.expect(e||14);const n=this.flowParseType();return this.state.inType=t,n}flowParsePredicate(){const e=this.startNode(),t=this.state.startLoc;return this.next(),this.expectContextual(110),this.state.lastTokStartLoc.index>t.index+1&&this.raise(Pe.UnexpectedSpaceBetweenModuloChecks,t),this.eat(10)?(e.value=super.parseExpression(),this.expect(11),this.finishNode(e,"DeclaredPredicate")):this.finishNode(e,"InferredPredicate")}flowParseTypeAndPredicateInitialiser(){const e=this.state.inType;this.state.inType=!0,this.expect(14);let t=null,n=null;return this.match(54)?(this.state.inType=e,n=this.flowParsePredicate()):(t=this.flowParseType(),this.state.inType=e,this.match(54)&&(n=this.flowParsePredicate())),[t,n]}flowParseDeclareClass(e){return this.next(),this.flowParseInterfaceish(e,!0),this.finishNode(e,"DeclareClass")}flowParseDeclareFunction(e){this.next();const t=e.id=this.parseIdentifier(),n=this.startNode(),r=this.startNode();this.match(47)?n.typeParameters=this.flowParseTypeParameterDeclaration():n.typeParameters=null,this.expect(10);const i=this.flowParseFunctionTypeParams();return n.params=i.params,n.rest=i.rest,n.this=i._this,this.expect(11),[n.returnType,e.predicate]=this.flowParseTypeAndPredicateInitialiser(),r.typeAnnotation=this.finishNode(n,"FunctionTypeAnnotation"),t.typeAnnotation=this.finishNode(r,"TypeAnnotation"),this.resetEndLocation(t),this.semicolon(),this.scope.declareName(e.id.name,2048,e.id.loc.start),this.finishNode(e,"DeclareFunction")}flowParseDeclare(e,t){if(this.match(80))return this.flowParseDeclareClass(e);if(this.match(68))return this.flowParseDeclareFunction(e);if(this.match(74))return this.flowParseDeclareVariable(e);if(this.eatContextual(127))return this.match(16)?this.flowParseDeclareModuleExports(e):(t&&this.raise(Pe.NestedDeclareModule,this.state.lastTokStartLoc),this.flowParseDeclareModule(e));if(this.isContextual(130))return this.flowParseDeclareTypeAlias(e);if(this.isContextual(131))return this.flowParseDeclareOpaqueType(e);if(this.isContextual(129))return this.flowParseDeclareInterface(e);if(this.match(82))return this.flowParseDeclareExportDeclaration(e,t);throw this.unexpected()}flowParseDeclareVariable(e){return this.next(),e.id=this.flowParseTypeAnnotatableIdentifier(!0),this.scope.declareName(e.id.name,5,e.id.loc.start),this.semicolon(),this.finishNode(e,"DeclareVariable")}flowParseDeclareModule(e){this.scope.enter(0),this.match(134)?e.id=super.parseExprAtom():e.id=this.parseIdentifier();const t=e.body=this.startNode(),n=t.body=[];for(this.expect(5);!this.match(8);){const e=this.startNode();this.match(83)?(this.next(),this.isContextual(130)||this.match(87)||this.raise(Pe.InvalidNonTypeImportInDeclareModule,this.state.lastTokStartLoc),n.push(super.parseImport(e))):(this.expectContextual(125,Pe.UnsupportedStatementInDeclareModule),n.push(this.flowParseDeclare(e,!0)))}this.scope.exit(),this.expect(8),this.finishNode(t,"BlockStatement");let r=null,i=!1;return n.forEach(e=>{!function(e){return"DeclareExportAllDeclaration"===e.type||"DeclareExportDeclaration"===e.type&&(!e.declaration||"TypeAlias"!==e.declaration.type&&"InterfaceDeclaration"!==e.declaration.type)}(e)?"DeclareModuleExports"===e.type&&(i&&this.raise(Pe.DuplicateDeclareModuleExports,e),"ES"===r&&this.raise(Pe.AmbiguousDeclareModuleKind,e),r="CommonJS",i=!0):("CommonJS"===r&&this.raise(Pe.AmbiguousDeclareModuleKind,e),r="ES")}),e.kind=r||"CommonJS",this.finishNode(e,"DeclareModule")}flowParseDeclareExportDeclaration(e,t){if(this.expect(82),this.eat(65))return this.match(68)||this.match(80)?e.declaration=this.flowParseDeclare(this.startNode()):(e.declaration=this.flowParseType(),this.semicolon()),e.default=!0,this.finishNode(e,"DeclareExportDeclaration");if(this.match(75)||this.isLet()||(this.isContextual(130)||this.isContextual(129))&&!t){const e=this.state.value;throw this.raise(Pe.UnsupportedDeclareExportKind,this.state.startLoc,{unsupportedExportKind:e,suggestion:ve[e]})}if(this.match(74)||this.match(68)||this.match(80)||this.isContextual(131))return e.declaration=this.flowParseDeclare(this.startNode()),e.default=!1,this.finishNode(e,"DeclareExportDeclaration");if(this.match(55)||this.match(5)||this.isContextual(129)||this.isContextual(130)||this.isContextual(131))return"ExportNamedDeclaration"===(e=this.parseExport(e,null)).type?(e.default=!1,delete e.exportKind,this.castNodeTo(e,"DeclareExportDeclaration")):this.castNodeTo(e,"DeclareExportAllDeclaration");throw this.unexpected()}flowParseDeclareModuleExports(e){return this.next(),this.expectContextual(111),e.typeAnnotation=this.flowParseTypeAnnotation(),this.semicolon(),this.finishNode(e,"DeclareModuleExports")}flowParseDeclareTypeAlias(e){this.next();const t=this.flowParseTypeAlias(e);return this.castNodeTo(t,"DeclareTypeAlias"),t}flowParseDeclareOpaqueType(e){this.next();const t=this.flowParseOpaqueType(e,!0);return this.castNodeTo(t,"DeclareOpaqueType"),t}flowParseDeclareInterface(e){return this.next(),this.flowParseInterfaceish(e,!1),this.finishNode(e,"DeclareInterface")}flowParseInterfaceish(e,t){if(e.id=this.flowParseRestrictedIdentifier(!t,!0),this.scope.declareName(e.id.name,t?17:8201,e.id.loc.start),this.match(47)?e.typeParameters=this.flowParseTypeParameterDeclaration():e.typeParameters=null,e.extends=[],this.eat(81))do{e.extends.push(this.flowParseInterfaceExtends())}while(!t&&this.eat(12));if(t){if(e.implements=[],e.mixins=[],this.eatContextual(117))do{e.mixins.push(this.flowParseInterfaceExtends())}while(this.eat(12));if(this.eatContextual(113))do{e.implements.push(this.flowParseInterfaceExtends())}while(this.eat(12))}e.body=this.flowParseObjectType({allowStatic:t,allowExact:!1,allowSpread:!1,allowProto:t,allowInexact:!1})}flowParseInterfaceExtends(){const e=this.startNode();return e.id=this.flowParseQualifiedTypeIdentifier(),this.match(47)?e.typeParameters=this.flowParseTypeParameterInstantiation():e.typeParameters=null,this.finishNode(e,"InterfaceExtends")}flowParseInterface(e){return this.flowParseInterfaceish(e,!1),this.finishNode(e,"InterfaceDeclaration")}checkNotUnderscore(e){"_"===e&&this.raise(Pe.UnexpectedReservedUnderscore,this.state.startLoc)}checkReservedType(e,t,n){be.has(e)&&this.raise(n?Pe.AssignReservedType:Pe.UnexpectedReservedType,t,{reservedType:e})}flowParseRestrictedIdentifier(e,t){return this.checkReservedType(this.state.value,this.state.startLoc,t),this.parseIdentifier(e)}flowParseTypeAlias(e){return e.id=this.flowParseRestrictedIdentifier(!1,!0),this.scope.declareName(e.id.name,8201,e.id.loc.start),this.match(47)?e.typeParameters=this.flowParseTypeParameterDeclaration():e.typeParameters=null,e.right=this.flowParseTypeInitialiser(29),this.semicolon(),this.finishNode(e,"TypeAlias")}flowParseOpaqueType(e,t){return this.expectContextual(130),e.id=this.flowParseRestrictedIdentifier(!0,!0),this.scope.declareName(e.id.name,8201,e.id.loc.start),this.match(47)?e.typeParameters=this.flowParseTypeParameterDeclaration():e.typeParameters=null,e.supertype=null,this.match(14)&&(e.supertype=this.flowParseTypeInitialiser(14)),e.impltype=null,t||(e.impltype=this.flowParseTypeInitialiser(29)),this.semicolon(),this.finishNode(e,"OpaqueType")}flowParseTypeParameter(e=!1){const t=this.state.startLoc,n=this.startNode(),r=this.flowParseVariance(),i=this.flowParseTypeAnnotatableIdentifier();return n.name=i.name,n.variance=r,n.bound=i.typeAnnotation,this.match(29)?(this.eat(29),n.default=this.flowParseType()):e&&this.raise(Pe.MissingTypeParamDefault,t),this.finishNode(n,"TypeParameter")}flowParseTypeParameterDeclaration(){const e=this.state.inType,t=this.startNode();t.params=[],this.state.inType=!0,this.match(47)||this.match(143)?this.next():this.unexpected();let n=!1;do{const e=this.flowParseTypeParameter(n);t.params.push(e),e.default&&(n=!0),this.match(48)||this.expect(12)}while(!this.match(48));return this.expect(48),this.state.inType=e,this.finishNode(t,"TypeParameterDeclaration")}flowInTopLevelContext(e){if(this.curContext()===b.brace)return e();{const t=this.state.context;this.state.context=[t[0]];try{return e()}finally{this.state.context=t}}}flowParseTypeParameterInstantiationInExpression(){if(47===this.reScan_lt())return this.flowParseTypeParameterInstantiation()}flowParseTypeParameterInstantiation(){const e=this.startNode(),t=this.state.inType;return this.state.inType=!0,e.params=[],this.flowInTopLevelContext(()=>{this.expect(47);const t=this.state.noAnonFunctionType;for(this.state.noAnonFunctionType=!1;!this.match(48);)e.params.push(this.flowParseType()),this.match(48)||this.expect(12);this.state.noAnonFunctionType=t}),this.state.inType=t,this.state.inType||this.curContext()!==b.brace||this.reScan_lt_gt(),this.expect(48),this.finishNode(e,"TypeParameterInstantiation")}flowParseTypeParameterInstantiationCallOrNew(){if(47!==this.reScan_lt())return null;const e=this.startNode(),t=this.state.inType;for(e.params=[],this.state.inType=!0,this.expect(47);!this.match(48);)e.params.push(this.flowParseTypeOrImplicitInstantiation()),this.match(48)||this.expect(12);return this.expect(48),this.state.inType=t,this.finishNode(e,"TypeParameterInstantiation")}flowParseInterfaceType(){const e=this.startNode();if(this.expectContextual(129),e.extends=[],this.eat(81))do{e.extends.push(this.flowParseInterfaceExtends())}while(this.eat(12));return e.body=this.flowParseObjectType({allowStatic:!1,allowExact:!1,allowSpread:!1,allowProto:!1,allowInexact:!1}),this.finishNode(e,"InterfaceTypeAnnotation")}flowParseObjectPropertyKey(){return this.match(135)||this.match(134)?super.parseExprAtom():this.parseIdentifier(!0)}flowParseObjectTypeIndexer(e,t,n){return e.static=t,14===this.lookahead().type?(e.id=this.flowParseObjectPropertyKey(),e.key=this.flowParseTypeInitialiser()):(e.id=null,e.key=this.flowParseType()),this.expect(3),e.value=this.flowParseTypeInitialiser(),e.variance=n,this.finishNode(e,"ObjectTypeIndexer")}flowParseObjectTypeInternalSlot(e,t){return e.static=t,e.id=this.flowParseObjectPropertyKey(),this.expect(3),this.expect(3),this.match(47)||this.match(10)?(e.method=!0,e.optional=!1,e.value=this.flowParseObjectTypeMethodish(this.startNodeAt(e.loc.start))):(e.method=!1,this.eat(17)&&(e.optional=!0),e.value=this.flowParseTypeInitialiser()),this.finishNode(e,"ObjectTypeInternalSlot")}flowParseObjectTypeMethodish(e){for(e.params=[],e.rest=null,e.typeParameters=null,e.this=null,this.match(47)&&(e.typeParameters=this.flowParseTypeParameterDeclaration()),this.expect(10),this.match(78)&&(e.this=this.flowParseFunctionTypeParam(!0),e.this.name=null,this.match(11)||this.expect(12));!this.match(11)&&!this.match(21);)e.params.push(this.flowParseFunctionTypeParam(!1)),this.match(11)||this.expect(12);return this.eat(21)&&(e.rest=this.flowParseFunctionTypeParam(!1)),this.expect(11),e.returnType=this.flowParseTypeInitialiser(),this.finishNode(e,"FunctionTypeAnnotation")}flowParseObjectTypeCallProperty(e,t){const n=this.startNode();return e.static=t,e.value=this.flowParseObjectTypeMethodish(n),this.finishNode(e,"ObjectTypeCallProperty")}flowParseObjectType({allowStatic:e,allowExact:t,allowSpread:n,allowProto:r,allowInexact:i}){const s=this.state.inType;this.state.inType=!0;const a=this.startNode();let o,l;a.callProperties=[],a.properties=[],a.indexers=[],a.internalSlots=[];let c=!1;for(t&&this.match(6)?(this.expect(6),o=9,l=!0):(this.expect(5),o=8,l=!1),a.exact=l;!this.match(o);){let t=!1,s=null,o=null;const p=this.startNode();if(r&&this.isContextual(118)){const t=this.lookahead();14!==t.type&&17!==t.type&&(this.next(),s=this.state.startLoc,e=!1)}if(e&&this.isContextual(106)){const e=this.lookahead();14!==e.type&&17!==e.type&&(this.next(),t=!0)}const u=this.flowParseVariance();if(this.eat(0))null!=s&&this.unexpected(s),this.eat(0)?(u&&this.unexpected(u.loc.start),a.internalSlots.push(this.flowParseObjectTypeInternalSlot(p,t))):a.indexers.push(this.flowParseObjectTypeIndexer(p,t,u));else if(this.match(10)||this.match(47))null!=s&&this.unexpected(s),u&&this.unexpected(u.loc.start),a.callProperties.push(this.flowParseObjectTypeCallProperty(p,t));else{let e="init";if(this.isContextual(99)||this.isContextual(104)){q(this.lookahead().type)&&(e=this.state.value,this.next())}const r=this.flowParseObjectTypeProperty(p,t,s,u,e,n,null!=i?i:!l);null===r?(c=!0,o=this.state.lastTokStartLoc):a.properties.push(r)}this.flowObjectTypeSemicolon(),!o||this.match(8)||this.match(9)||this.raise(Pe.UnexpectedExplicitInexactInObject,o)}this.expect(o),n&&(a.inexact=c);const p=this.finishNode(a,"ObjectTypeAnnotation");return this.state.inType=s,p}flowParseObjectTypeProperty(e,t,n,r,i,s,a){if(this.eat(21)){return this.match(12)||this.match(13)||this.match(8)||this.match(9)?(s?a||this.raise(Pe.InexactInsideExact,this.state.lastTokStartLoc):this.raise(Pe.InexactInsideNonObject,this.state.lastTokStartLoc),r&&this.raise(Pe.InexactVariance,r),null):(s||this.raise(Pe.UnexpectedSpreadType,this.state.lastTokStartLoc),null!=n&&this.unexpected(n),r&&this.raise(Pe.SpreadVariance,r),e.argument=this.flowParseType(),this.finishNode(e,"ObjectTypeSpreadProperty"))}{e.key=this.flowParseObjectPropertyKey(),e.static=t,e.proto=null!=n,e.kind=i;let a=!1;return this.match(47)||this.match(10)?(e.method=!0,null!=n&&this.unexpected(n),r&&this.unexpected(r.loc.start),e.value=this.flowParseObjectTypeMethodish(this.startNodeAt(e.loc.start)),"get"!==i&&"set"!==i||this.flowCheckGetterSetterParams(e),!s&&"constructor"===e.key.name&&e.value.this&&this.raise(Pe.ThisParamBannedInConstructor,e.value.this)):("init"!==i&&this.unexpected(),e.method=!1,this.eat(17)&&(a=!0),e.value=this.flowParseTypeInitialiser(),e.variance=r),e.optional=a,this.finishNode(e,"ObjectTypeProperty")}}flowCheckGetterSetterParams(e){const t="get"===e.kind?0:1,n=e.value.params.length+(e.value.rest?1:0);e.value.this&&this.raise("get"===e.kind?Pe.GetterMayNotHaveThisParam:Pe.SetterMayNotHaveThisParam,e.value.this),n!==t&&this.raise("get"===e.kind?y.BadGetterArity:y.BadSetterArity,e),"set"===e.kind&&e.value.rest&&this.raise(y.BadSetterRestParameter,e)}flowObjectTypeSemicolon(){this.eat(13)||this.eat(12)||this.match(8)||this.match(9)||this.unexpected()}flowParseQualifiedTypeIdentifier(e,t){null!=e||(e=this.state.startLoc);let n=t||this.flowParseRestrictedIdentifier(!0);for(;this.eat(16);){const t=this.startNodeAt(e);t.qualification=n,t.id=this.flowParseRestrictedIdentifier(!0),n=this.finishNode(t,"QualifiedTypeIdentifier")}return n}flowParseGenericType(e,t){const n=this.startNodeAt(e);return n.typeParameters=null,n.id=this.flowParseQualifiedTypeIdentifier(e,t),this.match(47)&&(n.typeParameters=this.flowParseTypeParameterInstantiation()),this.finishNode(n,"GenericTypeAnnotation")}flowParseTypeofType(){const e=this.startNode();return this.expect(87),e.argument=this.flowParsePrimaryType(),this.finishNode(e,"TypeofTypeAnnotation")}flowParseTupleType(){const e=this.startNode();for(e.types=[],this.expect(0);this.state.pos<this.length&&!this.match(3)&&(e.types.push(this.flowParseType()),!this.match(3));)this.expect(12);return this.expect(3),this.finishNode(e,"TupleTypeAnnotation")}flowParseFunctionTypeParam(e){let t=null,n=!1,r=null;const i=this.startNode(),s=this.lookahead(),a=78===this.state.type;return 14===s.type||17===s.type?(a&&!e&&this.raise(Pe.ThisParamMustBeFirst,i),t=this.parseIdentifier(a),this.eat(17)&&(n=!0,a&&this.raise(Pe.ThisParamMayNotBeOptional,i)),r=this.flowParseTypeInitialiser()):r=this.flowParseType(),i.name=t,i.optional=n,i.typeAnnotation=r,this.finishNode(i,"FunctionTypeParam")}reinterpretTypeAsFunctionTypeParam(e){const t=this.startNodeAt(e.loc.start);return t.name=null,t.optional=!1,t.typeAnnotation=e,this.finishNode(t,"FunctionTypeParam")}flowParseFunctionTypeParams(e=[]){let t=null,n=null;for(this.match(78)&&(n=this.flowParseFunctionTypeParam(!0),n.name=null,this.match(11)||this.expect(12));!this.match(11)&&!this.match(21);)e.push(this.flowParseFunctionTypeParam(!1)),this.match(11)||this.expect(12);return this.eat(21)&&(t=this.flowParseFunctionTypeParam(!1)),{params:e,rest:t,_this:n}}flowIdentToTypeAnnotation(e,t,n){switch(n.name){case"any":return this.finishNode(t,"AnyTypeAnnotation");case"bool":case"boolean":return this.finishNode(t,"BooleanTypeAnnotation");case"mixed":return this.finishNode(t,"MixedTypeAnnotation");case"empty":return this.finishNode(t,"EmptyTypeAnnotation");case"number":return this.finishNode(t,"NumberTypeAnnotation");case"string":return this.finishNode(t,"StringTypeAnnotation");case"symbol":return this.finishNode(t,"SymbolTypeAnnotation");default:return this.checkNotUnderscore(n.name),this.flowParseGenericType(e,n)}}flowParsePrimaryType(){const e=this.state.startLoc,t=this.startNode();let n,r,i=!1;const s=this.state.noAnonFunctionType;switch(this.state.type){case 5:return this.flowParseObjectType({allowStatic:!1,allowExact:!1,allowSpread:!0,allowProto:!1,allowInexact:!0});case 6:return this.flowParseObjectType({allowStatic:!1,allowExact:!0,allowSpread:!0,allowProto:!1,allowInexact:!1});case 0:return this.state.noAnonFunctionType=!1,r=this.flowParseTupleType(),this.state.noAnonFunctionType=s,r;case 47:{const e=this.startNode();return e.typeParameters=this.flowParseTypeParameterDeclaration(),this.expect(10),n=this.flowParseFunctionTypeParams(),e.params=n.params,e.rest=n.rest,e.this=n._this,this.expect(11),this.expect(19),e.returnType=this.flowParseType(),this.finishNode(e,"FunctionTypeAnnotation")}case 10:{const e=this.startNode();if(this.next(),!this.match(11)&&!this.match(21))if(K(this.state.type)||this.match(78)){const e=this.lookahead().type;i=17!==e&&14!==e}else i=!0;if(i){if(this.state.noAnonFunctionType=!1,r=this.flowParseType(),this.state.noAnonFunctionType=s,this.state.noAnonFunctionType||!(this.match(12)||this.match(11)&&19===this.lookahead().type))return this.expect(11),r;this.eat(12)}return n=r?this.flowParseFunctionTypeParams([this.reinterpretTypeAsFunctionTypeParam(r)]):this.flowParseFunctionTypeParams(),e.params=n.params,e.rest=n.rest,e.this=n._this,this.expect(11),this.expect(19),e.returnType=this.flowParseType(),e.typeParameters=null,this.finishNode(e,"FunctionTypeAnnotation")}case 134:return this.parseLiteral(this.state.value,"StringLiteralTypeAnnotation");case 85:case 86:return t.value=this.match(85),this.next(),this.finishNode(t,"BooleanLiteralTypeAnnotation");case 53:if("-"===this.state.value){if(this.next(),this.match(135))return this.parseLiteralAtNode(-this.state.value,"NumberLiteralTypeAnnotation",t);if(this.match(136))return this.parseLiteralAtNode(-this.state.value,"BigIntLiteralTypeAnnotation",t);throw this.raise(Pe.UnexpectedSubtractionOperand,this.state.startLoc)}throw this.unexpected();case 135:return this.parseLiteral(this.state.value,"NumberLiteralTypeAnnotation");case 136:return this.parseLiteral(this.state.value,"BigIntLiteralTypeAnnotation");case 88:return this.next(),this.finishNode(t,"VoidTypeAnnotation");case 84:return this.next(),this.finishNode(t,"NullLiteralTypeAnnotation");case 78:return this.next(),this.finishNode(t,"ThisTypeAnnotation");case 55:return this.next(),this.finishNode(t,"ExistsTypeAnnotation");case 87:return this.flowParseTypeofType();default:if(Y(this.state.type)){const e=X(this.state.type);return this.next(),super.createIdentifier(t,e)}if(K(this.state.type))return this.isContextual(129)?this.flowParseInterfaceType():this.flowIdentToTypeAnnotation(e,t,this.parseIdentifier())}throw this.unexpected()}flowParsePostfixType(){const e=this.state.startLoc;let t=this.flowParsePrimaryType(),n=!1;for(;(this.match(0)||this.match(18))&&!this.canInsertSemicolon();){const r=this.startNodeAt(e),i=this.eat(18);n=n||i,this.expect(0),!i&&this.match(3)?(r.elementType=t,this.next(),t=this.finishNode(r,"ArrayTypeAnnotation")):(r.objectType=t,r.indexType=this.flowParseType(),this.expect(3),n?(r.optional=i,t=this.finishNode(r,"OptionalIndexedAccessType")):t=this.finishNode(r,"IndexedAccessType"))}return t}flowParsePrefixType(){const e=this.startNode();return this.eat(17)?(e.typeAnnotation=this.flowParsePrefixType(),this.finishNode(e,"NullableTypeAnnotation")):this.flowParsePostfixType()}flowParseAnonFunctionWithoutParens(){const e=this.flowParsePrefixType();if(!this.state.noAnonFunctionType&&this.eat(19)){const t=this.startNodeAt(e.loc.start);return t.params=[this.reinterpretTypeAsFunctionTypeParam(e)],t.rest=null,t.this=null,t.returnType=this.flowParseType(),t.typeParameters=null,this.finishNode(t,"FunctionTypeAnnotation")}return e}flowParseIntersectionType(){const e=this.startNode();this.eat(45);const t=this.flowParseAnonFunctionWithoutParens();for(e.types=[t];this.eat(45);)e.types.push(this.flowParseAnonFunctionWithoutParens());return 1===e.types.length?t:this.finishNode(e,"IntersectionTypeAnnotation")}flowParseUnionType(){const e=this.startNode();this.eat(43);const t=this.flowParseIntersectionType();for(e.types=[t];this.eat(43);)e.types.push(this.flowParseIntersectionType());return 1===e.types.length?t:this.finishNode(e,"UnionTypeAnnotation")}flowParseType(){const e=this.state.inType;this.state.inType=!0;const t=this.flowParseUnionType();return this.state.inType=e,t}flowParseTypeOrImplicitInstantiation(){if(132===this.state.type&&"_"===this.state.value){const e=this.state.startLoc,t=this.parseIdentifier();return this.flowParseGenericType(e,t)}return this.flowParseType()}flowParseTypeAnnotation(){const e=this.startNode();return e.typeAnnotation=this.flowParseTypeInitialiser(),this.finishNode(e,"TypeAnnotation")}flowParseTypeAnnotatableIdentifier(e){const t=e?this.parseIdentifier():this.flowParseRestrictedIdentifier();return this.match(14)&&(t.typeAnnotation=this.flowParseTypeAnnotation(),this.resetEndLocation(t)),t}typeCastToParameter(e){return e.expression.typeAnnotation=e.typeAnnotation,this.resetEndLocation(e.expression,e.typeAnnotation.loc.end),e.expression}flowParseVariance(){let e=null;return this.match(53)?(e=this.startNode(),"+"===this.state.value?e.kind="plus":e.kind="minus",this.next(),this.finishNode(e,"Variance")):e}parseFunctionBody(e,t,n=!1){t?this.forwardNoArrowParamsConversionAt(e,()=>super.parseFunctionBody(e,!0,n)):super.parseFunctionBody(e,!1,n)}parseFunctionBodyAndFinish(e,t,n=!1){if(this.match(14)){const t=this.startNode();[t.typeAnnotation,e.predicate]=this.flowParseTypeAndPredicateInitialiser(),e.returnType=t.typeAnnotation?this.finishNode(t,"TypeAnnotation"):null}return super.parseFunctionBodyAndFinish(e,t,n)}parseStatementLike(e){if(this.state.strict&&this.isContextual(129)){if(V(this.lookahead().type)){const e=this.startNode();return this.next(),this.flowParseInterface(e)}}else if(this.isContextual(126)){const e=this.startNode();return this.next(),this.flowParseEnumDeclaration(e)}const t=super.parseStatementLike(e);return void 0!==this.flowPragma||this.isValidDirective(t)||(this.flowPragma=null),t}parseExpressionStatement(e,t,n){if("Identifier"===t.type)if("declare"===t.name){if(this.match(80)||K(this.state.type)||this.match(68)||this.match(74)||this.match(82))return this.flowParseDeclare(e)}else if(K(this.state.type)){if("interface"===t.name)return this.flowParseInterface(e);if("type"===t.name)return this.flowParseTypeAlias(e);if("opaque"===t.name)return this.flowParseOpaqueType(e,!1)}return super.parseExpressionStatement(e,t,n)}shouldParseExportDeclaration(){const{type:e}=this.state;return 126===e||W(e)?!this.state.containsEsc:super.shouldParseExportDeclaration()}isExportDefaultSpecifier(){const{type:e}=this.state;return 126===e||W(e)?this.state.containsEsc:super.isExportDefaultSpecifier()}parseExportDefaultExpression(){if(this.isContextual(126)){const e=this.startNode();return this.next(),this.flowParseEnumDeclaration(e)}return super.parseExportDefaultExpression()}parseConditional(e,t,n){if(!this.match(17))return e;if(this.state.maybeInArrowParameters){const t=this.lookaheadCharCode();if(44===t||61===t||58===t||41===t)return this.setOptionalParametersError(n),e}this.expect(17);const r=this.state.clone(),i=this.state.noArrowAt,s=this.startNodeAt(t);let{consequent:a,failed:o}=this.tryParseConditionalConsequent(),[l,c]=this.getArrowLikeExpressions(a);if(o||c.length>0){const e=[...i];if(c.length>0){this.state=r,this.state.noArrowAt=e;for(let t=0;t<c.length;t++)e.push(c[t].start);({consequent:a,failed:o}=this.tryParseConditionalConsequent()),[l,c]=this.getArrowLikeExpressions(a)}o&&l.length>1&&this.raise(Pe.AmbiguousConditionalArrow,r.startLoc),o&&1===l.length&&(this.state=r,e.push(l[0].start),this.state.noArrowAt=e,({consequent:a,failed:o}=this.tryParseConditionalConsequent()))}return this.getArrowLikeExpressions(a,!0),this.state.noArrowAt=i,this.expect(14),s.test=e,s.consequent=a,s.alternate=this.forwardNoArrowParamsConversionAt(s,()=>this.parseMaybeAssign(void 0,void 0)),this.finishNode(s,"ConditionalExpression")}tryParseConditionalConsequent(){this.state.noArrowParamsConversionAt.push(this.state.start);const e=this.parseMaybeAssignAllowIn(),t=!this.match(14);return this.state.noArrowParamsConversionAt.pop(),{consequent:e,failed:t}}getArrowLikeExpressions(e,t){const n=[e],r=[];for(;0!==n.length;){const e=n.pop();"ArrowFunctionExpression"===e.type&&"BlockStatement"!==e.body.type?(e.typeParameters||!e.returnType?this.finishArrowValidation(e):r.push(e),n.push(e.body)):"ConditionalExpression"===e.type&&(n.push(e.consequent),n.push(e.alternate))}return t?(r.forEach(e=>this.finishArrowValidation(e)),[r,[]]):function(e,t){const n=[],r=[];for(let i=0;i<e.length;i++)(t(e[i],i,e)?n:r).push(e[i]);return[n,r]}(r,e=>e.params.every(e=>this.isAssignable(e,!0)))}finishArrowValidation(e){var t;this.toAssignableList(e.params,null==(t=e.extra)?void 0:t.trailingCommaLoc,!1),this.scope.enter(518),super.checkParams(e,!1,!0),this.scope.exit()}forwardNoArrowParamsConversionAt(e,t){let n;return this.state.noArrowParamsConversionAt.includes(this.offsetToSourcePos(e.start))?(this.state.noArrowParamsConversionAt.push(this.state.start),n=t(),this.state.noArrowParamsConversionAt.pop()):n=t(),n}parseParenItem(e,t){const n=super.parseParenItem(e,t);if(this.eat(17)&&(n.optional=!0,this.resetEndLocation(e)),this.match(14)){const e=this.startNodeAt(t);return e.expression=n,e.typeAnnotation=this.flowParseTypeAnnotation(),this.finishNode(e,"TypeCastExpression")}return n}assertModuleNodeAllowed(e){"ImportDeclaration"===e.type&&("type"===e.importKind||"typeof"===e.importKind)||"ExportNamedDeclaration"===e.type&&"type"===e.exportKind||"ExportAllDeclaration"===e.type&&"type"===e.exportKind||super.assertModuleNodeAllowed(e)}parseExportDeclaration(e){if(this.isContextual(130)){e.exportKind="type";const t=this.startNode();return this.next(),this.match(5)?(e.specifiers=this.parseExportSpecifiers(!0),super.parseExportFrom(e),null):this.flowParseTypeAlias(t)}if(this.isContextual(131)){e.exportKind="type";const t=this.startNode();return this.next(),this.flowParseOpaqueType(t,!1)}if(this.isContextual(129)){e.exportKind="type";const t=this.startNode();return this.next(),this.flowParseInterface(t)}if(this.isContextual(126)){e.exportKind="value";const t=this.startNode();return this.next(),this.flowParseEnumDeclaration(t)}return super.parseExportDeclaration(e)}eatExportStar(e){return!!super.eatExportStar(e)||!(!this.isContextual(130)||55!==this.lookahead().type)&&(e.exportKind="type",this.next(),this.next(),!0)}maybeParseExportNamespaceSpecifier(e){const{startLoc:t}=this.state,n=super.maybeParseExportNamespaceSpecifier(e);return n&&"type"===e.exportKind&&this.unexpected(t),n}parseClassId(e,t,n){super.parseClassId(e,t,n),this.match(47)&&(e.typeParameters=this.flowParseTypeParameterDeclaration())}parseClassMember(e,t,n){const{startLoc:r}=this.state;if(this.isContextual(125)){if(super.parseClassMemberFromModifier(e,t))return;t.declare=!0}super.parseClassMember(e,t,n),t.declare&&("ClassProperty"!==t.type&&"ClassPrivateProperty"!==t.type&&"PropertyDefinition"!==t.type?this.raise(Pe.DeclareClassElement,r):t.value&&this.raise(Pe.DeclareClassFieldInitializer,t.value))}isIterator(e){return"iterator"===e||"asyncIterator"===e}readIterator(){const e=super.readWord1(),t="@@"+e;this.isIterator(e)&&this.state.inType||this.raise(y.InvalidIdentifier,this.state.curPosition(),{identifierName:t}),this.finishToken(132,t)}getTokenFromCode(e){const t=this.input.charCodeAt(this.state.pos+1);123===e&&124===t?this.finishOp(6,2):!this.state.inType||62!==e&&60!==e?this.state.inType&&63===e?46===t?this.finishOp(18,2):this.finishOp(17,1):!function(e,t,n){return 64===e&&64===t&&se(n)}(e,t,this.input.charCodeAt(this.state.pos+2))?super.getTokenFromCode(e):(this.state.pos+=2,this.readIterator()):this.finishOp(62===e?48:47,1)}isAssignable(e,t){return"TypeCastExpression"===e.type?this.isAssignable(e.expression,t):super.isAssignable(e,t)}toAssignable(e,t=!1){t||"AssignmentExpression"!==e.type||"TypeCastExpression"!==e.left.type||(e.left=this.typeCastToParameter(e.left)),super.toAssignable(e,t)}toAssignableList(e,t,n){for(let t=0;t<e.length;t++){const n=e[t];"TypeCastExpression"===(null==n?void 0:n.type)&&(e[t]=this.typeCastToParameter(n))}super.toAssignableList(e,t,n)}toReferencedList(e,t){for(let r=0;r<e.length;r++){var n;const i=e[r];!i||"TypeCastExpression"!==i.type||null!=(n=i.extra)&&n.parenthesized||!(e.length>1)&&t||this.raise(Pe.TypeCastInPattern,i.typeAnnotation)}return e}parseArrayLike(e,t,n){const r=super.parseArrayLike(e,t,n);return null==n||this.state.maybeInArrowParameters||this.toReferencedList(r.elements),r}isValidLVal(e,t,n,r){return"TypeCastExpression"===e||super.isValidLVal(e,t,n,r)}parseClassProperty(e){return this.match(14)&&(e.typeAnnotation=this.flowParseTypeAnnotation()),super.parseClassProperty(e)}parseClassPrivateProperty(e){return this.match(14)&&(e.typeAnnotation=this.flowParseTypeAnnotation()),super.parseClassPrivateProperty(e)}isClassMethod(){return this.match(47)||super.isClassMethod()}isClassProperty(){return this.match(14)||super.isClassProperty()}isNonstaticConstructor(e){return!this.match(14)&&super.isNonstaticConstructor(e)}pushClassMethod(e,t,n,r,i,s){if(t.variance&&this.unexpected(t.variance.loc.start),delete t.variance,this.match(47)&&(t.typeParameters=this.flowParseTypeParameterDeclaration()),super.pushClassMethod(e,t,n,r,i,s),t.params&&i){const e=t.params;e.length>0&&this.isThisParam(e[0])&&this.raise(Pe.ThisParamBannedInConstructor,t)}else if("MethodDefinition"===t.type&&i&&t.value.params){const e=t.value.params;e.length>0&&this.isThisParam(e[0])&&this.raise(Pe.ThisParamBannedInConstructor,t)}}pushClassPrivateMethod(e,t,n,r){t.variance&&this.unexpected(t.variance.loc.start),delete t.variance,this.match(47)&&(t.typeParameters=this.flowParseTypeParameterDeclaration()),super.pushClassPrivateMethod(e,t,n,r)}parseClassSuper(e){if(super.parseClassSuper(e),e.superClass&&(this.match(47)||this.match(51))&&(e.superTypeParameters=this.flowParseTypeParameterInstantiationInExpression()),this.isContextual(113)){this.next();const t=e.implements=[];do{const e=this.startNode();e.id=this.flowParseRestrictedIdentifier(!0),this.match(47)?e.typeParameters=this.flowParseTypeParameterInstantiation():e.typeParameters=null,t.push(this.finishNode(e,"ClassImplements"))}while(this.eat(12))}}checkGetterSetterParams(e){super.checkGetterSetterParams(e);const t=this.getObjectOrClassMethodParams(e);if(t.length>0){const n=t[0];this.isThisParam(n)&&"get"===e.kind?this.raise(Pe.GetterMayNotHaveThisParam,n):this.isThisParam(n)&&this.raise(Pe.SetterMayNotHaveThisParam,n)}}parsePropertyNamePrefixOperator(e){e.variance=this.flowParseVariance()}parseObjPropValue(e,t,n,r,i,s,a){let o;e.variance&&this.unexpected(e.variance.loc.start),delete e.variance,this.match(47)&&!s&&(o=this.flowParseTypeParameterDeclaration(),this.match(10)||this.unexpected());const l=super.parseObjPropValue(e,t,n,r,i,s,a);return o&&((l.value||l).typeParameters=o),l}parseFunctionParamType(e){return this.eat(17)&&("Identifier"!==e.type&&this.raise(Pe.PatternIsOptional,e),this.isThisParam(e)&&this.raise(Pe.ThisParamMayNotBeOptional,e),e.optional=!0),this.match(14)?e.typeAnnotation=this.flowParseTypeAnnotation():this.isThisParam(e)&&this.raise(Pe.ThisParamAnnotationRequired,e),this.match(29)&&this.isThisParam(e)&&this.raise(Pe.ThisParamNoDefault,e),this.resetEndLocation(e),e}parseMaybeDefault(e,t){const n=super.parseMaybeDefault(e,t);return"AssignmentPattern"===n.type&&n.typeAnnotation&&n.right.start<n.typeAnnotation.start&&this.raise(Pe.TypeBeforeInitializer,n.typeAnnotation),n}checkImportReflection(e){super.checkImportReflection(e),e.module&&"value"!==e.importKind&&this.raise(Pe.ImportReflectionHasImportType,e.specifiers[0].loc.start)}parseImportSpecifierLocal(e,t,n){t.local=Ee(e)?this.flowParseRestrictedIdentifier(!0,!0):this.parseIdentifier(),e.specifiers.push(this.finishImportSpecifier(t,n))}isPotentialImportPhase(e){if(super.isPotentialImportPhase(e))return!0;if(this.isContextual(130)){if(!e)return!0;const t=this.lookaheadCharCode();return 123===t||42===t}return!e&&this.isContextual(87)}applyImportPhase(e,t,n,r){if(super.applyImportPhase(e,t,n,r),t){if(!n&&this.match(65))return;e.exportKind="type"===n?n:"value"}else"type"===n&&this.match(55)&&this.unexpected(),e.importKind="type"===n||"typeof"===n?n:"value"}parseImportSpecifier(e,t,n,r,i){const s=e.imported;let a=null;"Identifier"===s.type&&("type"===s.name?a="type":"typeof"===s.name&&(a="typeof"));let o=!1;if(this.isContextual(93)&&!this.isLookaheadContextual("as")){const t=this.parseIdentifier(!0);null===a||V(this.state.type)?(e.imported=s,e.importKind=null,e.local=this.parseIdentifier()):(e.imported=t,e.importKind=a,e.local=this.cloneIdentifier(t))}else{if(null!==a&&V(this.state.type))e.imported=this.parseIdentifier(!0),e.importKind=a;else{if(t)throw this.raise(y.ImportBindingIsString,e,{importName:s.value});e.imported=s,e.importKind=null}this.eatContextual(93)?e.local=this.parseIdentifier():(o=!0,e.local=this.cloneIdentifier(e.imported))}const l=Ee(e);return n&&l&&this.raise(Pe.ImportTypeShorthandOnlyInPureImport,e),(n||l)&&this.checkReservedType(e.local.name,e.local.loc.start,!0),!o||n||l||this.checkReservedWord(e.local.name,e.loc.start,!0,!0),this.finishImportSpecifier(e,"ImportSpecifier")}parseBindingAtom(){return 78===this.state.type?this.parseIdentifier(!0):super.parseBindingAtom()}parseFunctionParams(e,t){const n=e.kind;"get"!==n&&"set"!==n&&this.match(47)&&(e.typeParameters=this.flowParseTypeParameterDeclaration()),super.parseFunctionParams(e,t)}parseVarId(e,t){super.parseVarId(e,t),this.match(14)&&(e.id.typeAnnotation=this.flowParseTypeAnnotation(),this.resetEndLocation(e.id))}parseAsyncArrowFromCallExpression(e,t){if(this.match(14)){const t=this.state.noAnonFunctionType;this.state.noAnonFunctionType=!0,e.returnType=this.flowParseTypeAnnotation(),this.state.noAnonFunctionType=t}return super.parseAsyncArrowFromCallExpression(e,t)}shouldParseAsyncArrow(){return this.match(14)||super.shouldParseAsyncArrow()}parseMaybeAssign(e,t){var n;let r,i=null;if(this.hasPlugin("jsx")&&(this.match(143)||this.match(47))){if(i=this.state.clone(),r=this.tryParse(()=>super.parseMaybeAssign(e,t),i),!r.error)return r.node;const{context:n}=this.state,s=n[n.length-1];s!==b.j_oTag&&s!==b.j_expr||n.pop()}if(null!=(n=r)&&n.error||this.match(47)){var s,a;let n;i=i||this.state.clone();const o=this.tryParse(r=>{var i;n=this.flowParseTypeParameterDeclaration();const s=this.forwardNoArrowParamsConversionAt(n,()=>{const r=super.parseMaybeAssign(e,t);return this.resetStartLocationFromNode(r,n),r});null!=(i=s.extra)&&i.parenthesized&&r();const a=this.maybeUnwrapTypeCastExpression(s);return"ArrowFunctionExpression"!==a.type&&r(),a.typeParameters=n,this.resetStartLocationFromNode(a,n),s},i);let l=null;if(o.node&&"ArrowFunctionExpression"===this.maybeUnwrapTypeCastExpression(o.node).type){if(!o.error&&!o.aborted)return o.node.async&&this.raise(Pe.UnexpectedTypeParameterBeforeAsyncArrowFunction,n),o.node;l=o.node}if(null!=(s=r)&&s.node)return this.state=r.failState,r.node;if(l)return this.state=o.failState,l;if(null!=(a=r)&&a.thrown)throw r.error;if(o.thrown)throw o.error;throw this.raise(Pe.UnexpectedTokenAfterTypeParameter,n)}return super.parseMaybeAssign(e,t)}parseArrow(e){if(this.match(14)){const t=this.tryParse(()=>{const t=this.state.noAnonFunctionType;this.state.noAnonFunctionType=!0;const n=this.startNode();return[n.typeAnnotation,e.predicate]=this.flowParseTypeAndPredicateInitialiser(),this.state.noAnonFunctionType=t,this.canInsertSemicolon()&&this.unexpected(),this.match(19)||this.unexpected(),n});if(t.thrown)return null;t.error&&(this.state=t.failState),e.returnType=t.node.typeAnnotation?this.finishNode(t.node,"TypeAnnotation"):null}return super.parseArrow(e)}shouldParseArrow(e){return this.match(14)||super.shouldParseArrow(e)}setArrowFunctionParameters(e,t){this.state.noArrowParamsConversionAt.includes(this.offsetToSourcePos(e.start))?e.params=t:super.setArrowFunctionParameters(e,t)}checkParams(e,t,n,r=!0){if(!n||!this.state.noArrowParamsConversionAt.includes(this.offsetToSourcePos(e.start))){for(let t=0;t<e.params.length;t++)this.isThisParam(e.params[t])&&t>0&&this.raise(Pe.ThisParamMustBeFirst,e.params[t]);super.checkParams(e,t,n,r)}}parseParenAndDistinguishExpression(e){return super.parseParenAndDistinguishExpression(e&&!this.state.noArrowAt.includes(this.sourceToOffsetPos(this.state.start)))}parseSubscripts(e,t,n){if("Identifier"===e.type&&"async"===e.name&&this.state.noArrowAt.includes(t.index)){this.next();const n=this.startNodeAt(t);n.callee=e,n.arguments=super.parseCallExpressionArguments(),e=this.finishNode(n,"CallExpression")}else if("Identifier"===e.type&&"async"===e.name&&this.match(47)){const r=this.state.clone(),i=this.tryParse(e=>this.parseAsyncArrowWithTypeParameters(t)||e(),r);if(!i.error&&!i.aborted)return i.node;const s=this.tryParse(()=>super.parseSubscripts(e,t,n),r);if(s.node&&!s.error)return s.node;if(i.node)return this.state=i.failState,i.node;if(s.node)return this.state=s.failState,s.node;throw i.error||s.error}return super.parseSubscripts(e,t,n)}parseSubscript(e,t,n,r){if(this.match(18)&&this.isLookaheadToken_lt()){if(r.optionalChainMember=!0,n)return r.stop=!0,e;this.next();const i=this.startNodeAt(t);return i.callee=e,i.typeArguments=this.flowParseTypeParameterInstantiationInExpression(),this.expect(10),i.arguments=this.parseCallExpressionArguments(),i.optional=!0,this.finishCallExpression(i,!0)}if(!n&&this.shouldParseTypes()&&(this.match(47)||this.match(51))){const n=this.startNodeAt(t);n.callee=e;const i=this.tryParse(()=>(n.typeArguments=this.flowParseTypeParameterInstantiationCallOrNew(),this.expect(10),n.arguments=super.parseCallExpressionArguments(),r.optionalChainMember&&(n.optional=!1),this.finishCallExpression(n,r.optionalChainMember)));if(i.node)return i.error&&(this.state=i.failState),i.node}return super.parseSubscript(e,t,n,r)}parseNewCallee(e){super.parseNewCallee(e);let t=null;this.shouldParseTypes()&&this.match(47)&&(t=this.tryParse(()=>this.flowParseTypeParameterInstantiationCallOrNew()).node),e.typeArguments=t}parseAsyncArrowWithTypeParameters(e){const t=this.startNodeAt(e);if(this.parseFunctionParams(t,!1),this.parseArrow(t))return super.parseArrowExpression(t,void 0,!0)}readToken_mult_modulo(e){const t=this.input.charCodeAt(this.state.pos+1);if(42===e&&47===t&&this.state.hasFlowComment)return this.state.hasFlowComment=!1,this.state.pos+=2,void this.nextToken();super.readToken_mult_modulo(e)}readToken_pipe_amp(e){const t=this.input.charCodeAt(this.state.pos+1);124!==e||125!==t?super.readToken_pipe_amp(e):this.finishOp(9,2)}parseTopLevel(e,t){const n=super.parseTopLevel(e,t);return this.state.hasFlowComment&&this.raise(Pe.UnterminatedFlowComment,this.state.curPosition()),n}skipBlockComment(){if(this.hasPlugin("flowComments")&&this.skipFlowComment()){if(this.state.hasFlowComment)throw this.raise(Pe.NestedFlowComment,this.state.startLoc);this.hasFlowCommentCompletion();const e=this.skipFlowComment();return void(e&&(this.state.pos+=e,this.state.hasFlowComment=!0))}return super.skipBlockComment(this.state.hasFlowComment?"*-/":"*/")}skipFlowComment(){const{pos:e}=this.state;let t=2;for(;[32,9].includes(this.input.charCodeAt(e+t));)t++;const n=this.input.charCodeAt(t+e),r=this.input.charCodeAt(t+e+1);return 58===n&&58===r?t+2:"flow-include"===this.input.slice(t+e,t+e+12)?t+12:58===n&&58!==r&&t}hasFlowCommentCompletion(){if(-1===this.input.indexOf("*/",this.state.pos))throw this.raise(y.UnterminatedComment,this.state.curPosition())}flowEnumErrorBooleanMemberNotInitialized(e,{enumName:t,memberName:n}){this.raise(Pe.EnumBooleanMemberNotInitialized,e,{memberName:n,enumName:t})}flowEnumErrorInvalidMemberInitializer(e,t){return this.raise(t.explicitType?"symbol"===t.explicitType?Pe.EnumInvalidMemberInitializerSymbolType:Pe.EnumInvalidMemberInitializerPrimaryType:Pe.EnumInvalidMemberInitializerUnknownType,e,t)}flowEnumErrorNumberMemberNotInitialized(e,t){this.raise(Pe.EnumNumberMemberNotInitialized,e,t)}flowEnumErrorStringMemberInconsistentlyInitialized(e,t){this.raise(Pe.EnumStringMemberInconsistentlyInitialized,e,t)}flowEnumMemberInit(){const e=this.state.startLoc,t=()=>this.match(12)||this.match(8);switch(this.state.type){case 135:{const n=this.parseNumericLiteral(this.state.value);return t()?{type:"number",loc:n.loc.start,value:n}:{type:"invalid",loc:e}}case 134:{const n=this.parseStringLiteral(this.state.value);return t()?{type:"string",loc:n.loc.start,value:n}:{type:"invalid",loc:e}}case 85:case 86:{const n=this.parseBooleanLiteral(this.match(85));return t()?{type:"boolean",loc:n.loc.start,value:n}:{type:"invalid",loc:e}}default:return{type:"invalid",loc:e}}}flowEnumMemberRaw(){const e=this.state.startLoc;return{id:this.parseIdentifier(!0),init:this.eat(29)?this.flowEnumMemberInit():{type:"none",loc:e}}}flowEnumCheckExplicitTypeMismatch(e,t,n){const{explicitType:r}=t;null!==r&&r!==n&&this.flowEnumErrorInvalidMemberInitializer(e,t)}flowEnumMembers({enumName:e,explicitType:t}){const n=new Set,r={booleanMembers:[],numberMembers:[],stringMembers:[],defaultedMembers:[]};let i=!1;for(;!this.match(8);){if(this.eat(21)){i=!0;break}const s=this.startNode(),{id:a,init:o}=this.flowEnumMemberRaw(),l=a.name;if(""===l)continue;/^[a-z]/.test(l)&&this.raise(Pe.EnumInvalidMemberName,a,{memberName:l,suggestion:l[0].toUpperCase()+l.slice(1),enumName:e}),n.has(l)&&this.raise(Pe.EnumDuplicateMemberName,a,{memberName:l,enumName:e}),n.add(l);const c={enumName:e,explicitType:t,memberName:l};switch(s.id=a,o.type){case"boolean":this.flowEnumCheckExplicitTypeMismatch(o.loc,c,"boolean"),s.init=o.value,r.booleanMembers.push(this.finishNode(s,"EnumBooleanMember"));break;case"number":this.flowEnumCheckExplicitTypeMismatch(o.loc,c,"number"),s.init=o.value,r.numberMembers.push(this.finishNode(s,"EnumNumberMember"));break;case"string":this.flowEnumCheckExplicitTypeMismatch(o.loc,c,"string"),s.init=o.value,r.stringMembers.push(this.finishNode(s,"EnumStringMember"));break;case"invalid":throw this.flowEnumErrorInvalidMemberInitializer(o.loc,c);case"none":switch(t){case"boolean":this.flowEnumErrorBooleanMemberNotInitialized(o.loc,c);break;case"number":this.flowEnumErrorNumberMemberNotInitialized(o.loc,c);break;default:r.defaultedMembers.push(this.finishNode(s,"EnumDefaultedMember"))}}this.match(8)||this.expect(12)}return{members:r,hasUnknownMembers:i}}flowEnumStringMembers(e,t,{enumName:n}){if(0===e.length)return t;if(0===t.length)return e;if(t.length>e.length){for(const t of e)this.flowEnumErrorStringMemberInconsistentlyInitialized(t,{enumName:n});return t}for(const e of t)this.flowEnumErrorStringMemberInconsistentlyInitialized(e,{enumName:n});return e}flowEnumParseExplicitType({enumName:e}){if(!this.eatContextual(102))return null;if(!K(this.state.type))throw this.raise(Pe.EnumInvalidExplicitTypeUnknownSupplied,this.state.startLoc,{enumName:e});const{value:t}=this.state;return this.next(),"boolean"!==t&&"number"!==t&&"string"!==t&&"symbol"!==t&&this.raise(Pe.EnumInvalidExplicitType,this.state.startLoc,{enumName:e,invalidEnumType:t}),t}flowEnumBody(e,t){const n=t.name,r=t.loc.start,i=this.flowEnumParseExplicitType({enumName:n});this.expect(5);const{members:s,hasUnknownMembers:a}=this.flowEnumMembers({enumName:n,explicitType:i});switch(e.hasUnknownMembers=a,i){case"boolean":return e.explicitType=!0,e.members=s.booleanMembers,this.expect(8),this.finishNode(e,"EnumBooleanBody");case"number":return e.explicitType=!0,e.members=s.numberMembers,this.expect(8),this.finishNode(e,"EnumNumberBody");case"string":return e.explicitType=!0,e.members=this.flowEnumStringMembers(s.stringMembers,s.defaultedMembers,{enumName:n}),this.expect(8),this.finishNode(e,"EnumStringBody");case"symbol":return e.members=s.defaultedMembers,this.expect(8),this.finishNode(e,"EnumSymbolBody");default:{const t=()=>(e.members=[],this.expect(8),this.finishNode(e,"EnumStringBody"));e.explicitType=!1;const i=s.booleanMembers.length,a=s.numberMembers.length,o=s.stringMembers.length,l=s.defaultedMembers.length;if(i||a||o||l){if(i||a){if(!a&&!o&&i>=l){for(const e of s.defaultedMembers)this.flowEnumErrorBooleanMemberNotInitialized(e.loc.start,{enumName:n,memberName:e.id.name});return e.members=s.booleanMembers,this.expect(8),this.finishNode(e,"EnumBooleanBody")}if(!i&&!o&&a>=l){for(const e of s.defaultedMembers)this.flowEnumErrorNumberMemberNotInitialized(e.loc.start,{enumName:n,memberName:e.id.name});return e.members=s.numberMembers,this.expect(8),this.finishNode(e,"EnumNumberBody")}return this.raise(Pe.EnumInconsistentMemberValues,r,{enumName:n}),t()}return e.members=this.flowEnumStringMembers(s.stringMembers,s.defaultedMembers,{enumName:n}),this.expect(8),this.finishNode(e,"EnumStringBody")}return t()}}}flowParseEnumDeclaration(e){const t=this.parseIdentifier();return e.id=t,e.body=this.flowEnumBody(this.startNode(),t),this.finishNode(e,"EnumDeclaration")}jsxParseOpeningElementAfterName(e){return this.shouldParseTypes()&&(this.match(47)||this.match(51))&&(e.typeArguments=this.flowParseTypeParameterInstantiationInExpression()),super.jsxParseOpeningElementAfterName(e)}isLookaheadToken_lt(){const e=this.nextTokenStart();if(60===this.input.charCodeAt(e)){const t=this.input.charCodeAt(e+1);return 60!==t&&61!==t}return!1}reScan_lt_gt(){const{type:e}=this.state;47===e?(this.state.pos-=1,this.readToken_lt()):48===e&&(this.state.pos-=1,this.readToken_gt())}reScan_lt(){const{type:e}=this.state;return 51===e?(this.state.pos-=2,this.finishOp(47,1),47):e}maybeUnwrapTypeCastExpression(e){return"TypeCastExpression"===e.type?e.expression:e}},typescript:e=>class extends e{constructor(...e){super(...e),this.tsParseInOutModifiers=this.tsParseModifiers.bind(this,{allowedModifiers:["in","out"],disallowedModifiers:["const","public","private","protected","readonly","declare","abstract","override"],errorTemplate:St.InvalidModifierOnTypeParameter}),this.tsParseConstModifier=this.tsParseModifiers.bind(this,{allowedModifiers:["const"],disallowedModifiers:["in","out"],errorTemplate:St.InvalidModifierOnTypeParameterPositions}),this.tsParseInOutConstModifiers=this.tsParseModifiers.bind(this,{allowedModifiers:["in","out","const"],disallowedModifiers:["public","private","protected","readonly","declare","abstract","override"],errorTemplate:St.InvalidModifierOnTypeParameter})}getScopeHandler(){return Be}tsIsIdentifier(){return K(this.state.type)}tsTokenCanFollowModifier(){return this.match(0)||this.match(5)||this.match(55)||this.match(21)||this.match(139)||this.isLiteralPropertyName()}tsNextTokenOnSameLineAndCanFollowModifier(){return this.next(),!this.hasPrecedingLineBreak()&&this.tsTokenCanFollowModifier()}tsNextTokenCanFollowModifier(){return this.match(106)?(this.next(),this.tsTokenCanFollowModifier()):this.tsNextTokenOnSameLineAndCanFollowModifier()}tsParseModifier(e,t,n){if(!K(this.state.type)&&58!==this.state.type&&75!==this.state.type)return;const r=this.state.value;if(e.includes(r)){if(n&&this.match(106))return;if(t&&this.tsIsStartOfStaticBlocks())return;if(this.tsTryParse(this.tsNextTokenCanFollowModifier.bind(this)))return r}}tsParseModifiers({allowedModifiers:e,disallowedModifiers:t,stopOnStartOfClassStaticBlock:n,errorTemplate:r=St.InvalidModifierOnTypeMember},i){const s=(e,t,n,r)=>{t===n&&i[r]&&this.raise(St.InvalidModifiersOrder,e,{orderedModifiers:[n,r]})},a=(e,t,n,r)=>{(i[n]&&t===r||i[r]&&t===n)&&this.raise(St.IncompatibleModifiers,e,{modifiers:[n,r]})};for(;;){const{startLoc:o}=this.state,l=this.tsParseModifier(e.concat(null!=t?t:[]),n,i.static);if(!l)break;bt(l)?i.accessibility?this.raise(St.DuplicateAccessibilityModifier,o,{modifier:l}):(s(o,l,l,"override"),s(o,l,l,"static"),s(o,l,l,"readonly"),i.accessibility=l):Pt(l)?(i[l]&&this.raise(St.DuplicateModifier,o,{modifier:l}),i[l]=!0,s(o,l,"in","out")):(hasOwnProperty.call(i,l)?this.raise(St.DuplicateModifier,o,{modifier:l}):(s(o,l,"static","readonly"),s(o,l,"static","override"),s(o,l,"override","readonly"),s(o,l,"abstract","override"),a(o,l,"declare","override"),a(o,l,"static","abstract")),i[l]=!0),null!=t&&t.includes(l)&&this.raise(r,o,{modifier:l})}}tsIsListTerminator(e){switch(e){case"EnumMembers":case"TypeMembers":return this.match(8);case"HeritageClauseElement":return this.match(5);case"TupleElementTypes":return this.match(3);case"TypeParametersOrArguments":return this.match(48)}}tsParseList(e,t){const n=[];for(;!this.tsIsListTerminator(e);)n.push(t());return n}tsParseDelimitedList(e,t,n){return function(e){if(null==e)throw new Error(`Unexpected ${e} value.`);return e}(this.tsParseDelimitedListWorker(e,t,!0,n))}tsParseDelimitedListWorker(e,t,n,r){const i=[];let s=-1;for(;!this.tsIsListTerminator(e);){s=-1;const r=t();if(null==r)return;if(i.push(r),!this.eat(12)){if(this.tsIsListTerminator(e))break;return void(n&&this.expect(12))}s=this.state.lastTokStartLoc.index}return r&&(r.value=s),i}tsParseBracketedList(e,t,n,r,i){r||(n?this.expect(0):this.expect(47));const s=this.tsParseDelimitedList(e,t,i);return n?this.expect(3):this.expect(48),s}tsParseImportType(){const e=this.startNode();return this.expect(83),this.expect(10),this.match(134)?e.argument=this.parseStringLiteral(this.state.value):(this.raise(St.UnsupportedImportTypeArgument,this.state.startLoc),e.argument=super.parseExprAtom()),this.eat(12)?e.options=this.tsParseImportTypeOptions():e.options=null,this.expect(11),this.eat(16)&&(e.qualifier=this.tsParseEntityName(3)),this.match(47)&&(e.typeParameters=this.tsParseTypeArguments()),this.finishNode(e,"TSImportType")}tsParseImportTypeOptions(){const e=this.startNode();this.expect(5);const t=this.startNode();return this.isContextual(76)?(t.method=!1,t.key=this.parseIdentifier(!0),t.computed=!1,t.shorthand=!1):this.unexpected(null,76),this.expect(14),t.value=this.tsParseImportTypeWithPropertyValue(),e.properties=[this.finishObjectProperty(t)],this.eat(12),this.expect(8),this.finishNode(e,"ObjectExpression")}tsParseImportTypeWithPropertyValue(){const e=this.startNode(),t=[];for(this.expect(5);!this.match(8);){const e=this.state.type;K(e)||134===e?t.push(super.parsePropertyDefinition(null)):this.unexpected(),this.eat(12)}return e.properties=t,this.next(),this.finishNode(e,"ObjectExpression")}tsParseEntityName(e){let t;if(1&e&&this.match(78))if(2&e)t=this.parseIdentifier(!0);else{const e=this.startNode();this.next(),t=this.finishNode(e,"ThisExpression")}else t=this.parseIdentifier(!!(1&e));for(;this.eat(16);){const n=this.startNodeAtNode(t);n.left=t,n.right=this.parseIdentifier(!!(1&e)),t=this.finishNode(n,"TSQualifiedName")}return t}tsParseTypeReference(){const e=this.startNode();return e.typeName=this.tsParseEntityName(1),!this.hasPrecedingLineBreak()&&this.match(47)&&(e.typeParameters=this.tsParseTypeArguments()),this.finishNode(e,"TSTypeReference")}tsParseThisTypePredicate(e){this.next();const t=this.startNodeAtNode(e);return t.parameterName=e,t.typeAnnotation=this.tsParseTypeAnnotation(!1),t.asserts=!1,this.finishNode(t,"TSTypePredicate")}tsParseThisTypeNode(){const e=this.startNode();return this.next(),this.finishNode(e,"TSThisType")}tsParseTypeQuery(){const e=this.startNode();return this.expect(87),this.match(83)?e.exprName=this.tsParseImportType():e.exprName=this.tsParseEntityName(3),!this.hasPrecedingLineBreak()&&this.match(47)&&(e.typeParameters=this.tsParseTypeArguments()),this.finishNode(e,"TSTypeQuery")}tsParseTypeParameter(e){const t=this.startNode();return e(t),t.name=this.tsParseTypeParameterName(),t.constraint=this.tsEatThenParseType(81),t.default=this.tsEatThenParseType(29),this.finishNode(t,"TSTypeParameter")}tsTryParseTypeParameters(e){if(this.match(47))return this.tsParseTypeParameters(e)}tsParseTypeParameters(e){const t=this.startNode();this.match(47)||this.match(143)?this.next():this.unexpected();const n={value:-1};return t.params=this.tsParseBracketedList("TypeParametersOrArguments",this.tsParseTypeParameter.bind(this,e),!1,!0,n),0===t.params.length&&this.raise(St.EmptyTypeParameters,t),-1!==n.value&&this.addExtra(t,"trailingComma",n.value),this.finishNode(t,"TSTypeParameterDeclaration")}tsFillSignature(e,t){const n=19===e,r="typeAnnotation";t.typeParameters=this.tsTryParseTypeParameters(this.tsParseConstModifier),this.expect(10),t.parameters=this.tsParseBindingListForSignature(),(n||this.match(e))&&(t[r]=this.tsParseTypeOrTypePredicateAnnotation(e))}tsParseBindingListForSignature(){const e=super.parseBindingList(11,41,2);for(const t of e){const{type:e}=t;"AssignmentPattern"!==e&&"TSParameterProperty"!==e||this.raise(St.UnsupportedSignatureParameterKind,t,{type:e})}return e}tsParseTypeMemberSemicolon(){this.eat(12)||this.isLineTerminator()||this.expect(13)}tsParseSignatureMember(e,t){return this.tsFillSignature(14,t),this.tsParseTypeMemberSemicolon(),this.finishNode(t,e)}tsIsUnambiguouslyIndexSignature(){return this.next(),!!K(this.state.type)&&(this.next(),this.match(14))}tsTryParseIndexSignature(e){if(!this.match(0)||!this.tsLookAhead(this.tsIsUnambiguouslyIndexSignature.bind(this)))return;this.expect(0);const t=this.parseIdentifier();t.typeAnnotation=this.tsParseTypeAnnotation(),this.resetEndLocation(t),this.expect(3),e.parameters=[t];const n=this.tsTryParseTypeAnnotation();return n&&(e.typeAnnotation=n),this.tsParseTypeMemberSemicolon(),this.finishNode(e,"TSIndexSignature")}tsParsePropertyOrMethodSignature(e,t){if(this.eat(17)&&(e.optional=!0),this.match(10)||this.match(47)){t&&this.raise(St.ReadonlyForMethodSignature,e);const n=e;n.kind&&this.match(47)&&this.raise(St.AccessorCannotHaveTypeParameters,this.state.curPosition()),this.tsFillSignature(14,n),this.tsParseTypeMemberSemicolon();const r="parameters",i="typeAnnotation";if("get"===n.kind)n[r].length>0&&(this.raise(y.BadGetterArity,this.state.curPosition()),this.isThisParam(n[r][0])&&this.raise(St.AccessorCannotDeclareThisParameter,this.state.curPosition()));else if("set"===n.kind){if(1!==n[r].length)this.raise(y.BadSetterArity,this.state.curPosition());else{const e=n[r][0];this.isThisParam(e)&&this.raise(St.AccessorCannotDeclareThisParameter,this.state.curPosition()),"Identifier"===e.type&&e.optional&&this.raise(St.SetAccessorCannotHaveOptionalParameter,this.state.curPosition()),"RestElement"===e.type&&this.raise(St.SetAccessorCannotHaveRestParameter,this.state.curPosition())}n[i]&&this.raise(St.SetAccessorCannotHaveReturnType,n[i])}else n.kind="method";return this.finishNode(n,"TSMethodSignature")}{const n=e;t&&(n.readonly=!0);const r=this.tsTryParseTypeAnnotation();return r&&(n.typeAnnotation=r),this.tsParseTypeMemberSemicolon(),this.finishNode(n,"TSPropertySignature")}}tsParseTypeMember(){const e=this.startNode();if(this.match(10)||this.match(47))return this.tsParseSignatureMember("TSCallSignatureDeclaration",e);if(this.match(77)){const t=this.startNode();return this.next(),this.match(10)||this.match(47)?this.tsParseSignatureMember("TSConstructSignatureDeclaration",e):(e.key=this.createIdentifier(t,"new"),this.tsParsePropertyOrMethodSignature(e,!1))}this.tsParseModifiers({allowedModifiers:["readonly"],disallowedModifiers:["declare","abstract","private","protected","public","static","override"]},e);const t=this.tsTryParseIndexSignature(e);return t||(super.parsePropertyName(e),e.computed||"Identifier"!==e.key.type||"get"!==e.key.name&&"set"!==e.key.name||!this.tsTokenCanFollowModifier()||(e.kind=e.key.name,super.parsePropertyName(e),this.match(10)||this.match(47)||this.unexpected(null,10)),this.tsParsePropertyOrMethodSignature(e,!!e.readonly))}tsParseTypeLiteral(){const e=this.startNode();return e.members=this.tsParseObjectTypeMembers(),this.finishNode(e,"TSTypeLiteral")}tsParseObjectTypeMembers(){this.expect(5);const e=this.tsParseList("TypeMembers",this.tsParseTypeMember.bind(this));return this.expect(8),e}tsIsStartOfMappedType(){return this.next(),this.eat(53)?this.isContextual(122):(this.isContextual(122)&&this.next(),!!this.match(0)&&(this.next(),!!this.tsIsIdentifier()&&(this.next(),this.match(58))))}tsParseMappedType(){const e=this.startNode();this.expect(5),this.match(53)?(e.readonly=this.state.value,this.next(),this.expectContextual(122)):this.eatContextual(122)&&(e.readonly=!0),this.expect(0);{const t=this.startNode();t.name=this.tsParseTypeParameterName(),t.constraint=this.tsExpectThenParseType(58),e.typeParameter=this.finishNode(t,"TSTypeParameter")}return e.nameType=this.eatContextual(93)?this.tsParseType():null,this.expect(3),this.match(53)?(e.optional=this.state.value,this.next(),this.expect(17)):this.eat(17)&&(e.optional=!0),e.typeAnnotation=this.tsTryParseType(),this.semicolon(),this.expect(8),this.finishNode(e,"TSMappedType")}tsParseTupleType(){const e=this.startNode();e.elementTypes=this.tsParseBracketedList("TupleElementTypes",this.tsParseTupleElementType.bind(this),!0,!1);let t=!1;return e.elementTypes.forEach(e=>{const{type:n}=e;!t||"TSRestType"===n||"TSOptionalType"===n||"TSNamedTupleMember"===n&&e.optional||this.raise(St.OptionalTypeBeforeRequired,e),t||(t="TSNamedTupleMember"===n&&e.optional||"TSOptionalType"===n)}),this.finishNode(e,"TSTupleType")}tsParseTupleElementType(){const e=this.state.startLoc,t=this.eat(21),{startLoc:n}=this.state;let r,i,s,a;const o=V(this.state.type)?this.lookaheadCharCode():null;if(58===o)r=!0,s=!1,i=this.parseIdentifier(!0),this.expect(14),a=this.tsParseType();else if(63===o){s=!0;const e=this.state.value,t=this.tsParseNonArrayType();58===this.lookaheadCharCode()?(r=!0,i=this.createIdentifier(this.startNodeAt(n),e),this.expect(17),this.expect(14),a=this.tsParseType()):(r=!1,a=t,this.expect(17))}else a=this.tsParseType(),s=this.eat(17),r=this.eat(14);if(r){let e;i?(e=this.startNodeAt(n),e.optional=s,e.label=i,e.elementType=a,this.eat(17)&&(e.optional=!0,this.raise(St.TupleOptionalAfterType,this.state.lastTokStartLoc))):(e=this.startNodeAt(n),e.optional=s,this.raise(St.InvalidTupleMemberLabel,a),e.label=a,e.elementType=this.tsParseType()),a=this.finishNode(e,"TSNamedTupleMember")}else if(s){const e=this.startNodeAt(n);e.typeAnnotation=a,a=this.finishNode(e,"TSOptionalType")}if(t){const t=this.startNodeAt(e);t.typeAnnotation=a,a=this.finishNode(t,"TSRestType")}return a}tsParseParenthesizedType(){const e=this.startNode();return this.expect(10),e.typeAnnotation=this.tsParseType(),this.expect(11),this.finishNode(e,"TSParenthesizedType")}tsParseFunctionOrConstructorType(e,t){const n=this.startNode();return"TSConstructorType"===e&&(n.abstract=!!t,t&&this.next(),this.next()),this.tsInAllowConditionalTypesContext(()=>this.tsFillSignature(19,n)),this.finishNode(n,e)}tsParseLiteralTypeNode(){const e=this.startNode();switch(this.state.type){case 135:case 136:case 134:case 85:case 86:e.literal=super.parseExprAtom();break;default:this.unexpected()}return this.finishNode(e,"TSLiteralType")}tsParseTemplateLiteralType(){{const e=this.startNode();return e.literal=super.parseTemplate(!1),this.finishNode(e,"TSLiteralType")}}parseTemplateSubstitution(){return this.state.inType?this.tsParseType():super.parseTemplateSubstitution()}tsParseThisTypeOrThisTypePredicate(){const e=this.tsParseThisTypeNode();return this.isContextual(116)&&!this.hasPrecedingLineBreak()?this.tsParseThisTypePredicate(e):e}tsParseNonArrayType(){switch(this.state.type){case 134:case 135:case 136:case 85:case 86:return this.tsParseLiteralTypeNode();case 53:if("-"===this.state.value){const e=this.startNode(),t=this.lookahead();return 135!==t.type&&136!==t.type&&this.unexpected(),e.literal=this.parseMaybeUnary(),this.finishNode(e,"TSLiteralType")}break;case 78:return this.tsParseThisTypeOrThisTypePredicate();case 87:return this.tsParseTypeQuery();case 83:return this.tsParseImportType();case 5:return this.tsLookAhead(this.tsIsStartOfMappedType.bind(this))?this.tsParseMappedType():this.tsParseTypeLiteral();case 0:return this.tsParseTupleType();case 10:return this.tsParseParenthesizedType();case 25:case 24:return this.tsParseTemplateLiteralType();default:{const{type:e}=this.state;if(K(e)||88===e||84===e){const t=88===e?"TSVoidKeyword":84===e?"TSNullKeyword":function(e){switch(e){case"any":return"TSAnyKeyword";case"boolean":return"TSBooleanKeyword";case"bigint":return"TSBigIntKeyword";case"never":return"TSNeverKeyword";case"number":return"TSNumberKeyword";case"object":return"TSObjectKeyword";case"string":return"TSStringKeyword";case"symbol":return"TSSymbolKeyword";case"undefined":return"TSUndefinedKeyword";case"unknown":return"TSUnknownKeyword";default:return}}(this.state.value);if(void 0!==t&&46!==this.lookaheadCharCode()){const e=this.startNode();return this.next(),this.finishNode(e,t)}return this.tsParseTypeReference()}}}throw this.unexpected()}tsParseArrayTypeOrHigher(){const{startLoc:e}=this.state;let t=this.tsParseNonArrayType();for(;!this.hasPrecedingLineBreak()&&this.eat(0);)if(this.match(3)){const n=this.startNodeAt(e);n.elementType=t,this.expect(3),t=this.finishNode(n,"TSArrayType")}else{const n=this.startNodeAt(e);n.objectType=t,n.indexType=this.tsParseType(),this.expect(3),t=this.finishNode(n,"TSIndexedAccessType")}return t}tsParseTypeOperator(){const e=this.startNode(),t=this.state.value;return this.next(),e.operator=t,e.typeAnnotation=this.tsParseTypeOperatorOrHigher(),"readonly"===t&&this.tsCheckTypeAnnotationForReadOnly(e),this.finishNode(e,"TSTypeOperator")}tsCheckTypeAnnotationForReadOnly(e){switch(e.typeAnnotation.type){case"TSTupleType":case"TSArrayType":return;default:this.raise(St.UnexpectedReadonly,e)}}tsParseInferType(){const e=this.startNode();this.expectContextual(115);const t=this.startNode();return t.name=this.tsParseTypeParameterName(),t.constraint=this.tsTryParse(()=>this.tsParseConstraintForInferType()),e.typeParameter=this.finishNode(t,"TSTypeParameter"),this.finishNode(e,"TSInferType")}tsParseConstraintForInferType(){if(this.eat(81)){const e=this.tsInDisallowConditionalTypesContext(()=>this.tsParseType());if(this.state.inDisallowConditionalTypesContext||!this.match(17))return e}}tsParseTypeOperatorOrHigher(){var e;return(e=this.state.type)>=121&&e<=123&&!this.state.containsEsc?this.tsParseTypeOperator():this.isContextual(115)?this.tsParseInferType():this.tsInAllowConditionalTypesContext(()=>this.tsParseArrayTypeOrHigher())}tsParseUnionOrIntersectionType(e,t,n){const r=this.startNode(),i=this.eat(n),s=[];do{s.push(t())}while(this.eat(n));return 1!==s.length||i?(r.types=s,this.finishNode(r,e)):s[0]}tsParseIntersectionTypeOrHigher(){return this.tsParseUnionOrIntersectionType("TSIntersectionType",this.tsParseTypeOperatorOrHigher.bind(this),45)}tsParseUnionTypeOrHigher(){return this.tsParseUnionOrIntersectionType("TSUnionType",this.tsParseIntersectionTypeOrHigher.bind(this),43)}tsIsStartOfFunctionType(){return!!this.match(47)||this.match(10)&&this.tsLookAhead(this.tsIsUnambiguouslyStartOfFunctionType.bind(this))}tsSkipParameterStart(){if(K(this.state.type)||this.match(78))return this.next(),!0;if(this.match(5)){const{errors:e}=this.state,t=e.length;try{return this.parseObjectLike(8,!0),e.length===t}catch(e){return!1}}if(this.match(0)){this.next();const{errors:e}=this.state,t=e.length;try{return super.parseBindingList(3,93,1),e.length===t}catch(e){return!1}}return!1}tsIsUnambiguouslyStartOfFunctionType(){if(this.next(),this.match(11)||this.match(21))return!0;if(this.tsSkipParameterStart()){if(this.match(14)||this.match(12)||this.match(17)||this.match(29))return!0;if(this.match(11)&&(this.next(),this.match(19)))return!0}return!1}tsParseTypeOrTypePredicateAnnotation(e){return this.tsInType(()=>{const t=this.startNode();this.expect(e);const n=this.startNode(),r=!!this.tsTryParse(this.tsParseTypePredicateAsserts.bind(this));if(r&&this.match(78)){let e=this.tsParseThisTypeOrThisTypePredicate();return"TSThisType"===e.type?(n.parameterName=e,n.asserts=!0,n.typeAnnotation=null,e=this.finishNode(n,"TSTypePredicate")):(this.resetStartLocationFromNode(e,n),e.asserts=!0),t.typeAnnotation=e,this.finishNode(t,"TSTypeAnnotation")}const i=this.tsIsIdentifier()&&this.tsTryParse(this.tsParseTypePredicatePrefix.bind(this));if(!i)return r?(n.parameterName=this.parseIdentifier(),n.asserts=r,n.typeAnnotation=null,t.typeAnnotation=this.finishNode(n,"TSTypePredicate"),this.finishNode(t,"TSTypeAnnotation")):this.tsParseTypeAnnotation(!1,t);const s=this.tsParseTypeAnnotation(!1);return n.parameterName=i,n.typeAnnotation=s,n.asserts=r,t.typeAnnotation=this.finishNode(n,"TSTypePredicate"),this.finishNode(t,"TSTypeAnnotation")})}tsTryParseTypeOrTypePredicateAnnotation(){if(this.match(14))return this.tsParseTypeOrTypePredicateAnnotation(14)}tsTryParseTypeAnnotation(){if(this.match(14))return this.tsParseTypeAnnotation()}tsTryParseType(){return this.tsEatThenParseType(14)}tsParseTypePredicatePrefix(){const e=this.parseIdentifier();if(this.isContextual(116)&&!this.hasPrecedingLineBreak())return this.next(),e}tsParseTypePredicateAsserts(){if(109!==this.state.type)return!1;const e=this.state.containsEsc;return this.next(),!(!K(this.state.type)&&!this.match(78))&&(e&&this.raise(y.InvalidEscapedReservedWord,this.state.lastTokStartLoc,{reservedWord:"asserts"}),!0)}tsParseTypeAnnotation(e=!0,t=this.startNode()){return this.tsInType(()=>{e&&this.expect(14),t.typeAnnotation=this.tsParseType()}),this.finishNode(t,"TSTypeAnnotation")}tsParseType(){xt(this.state.inType);const e=this.tsParseNonConditionalType();if(this.state.inDisallowConditionalTypesContext||this.hasPrecedingLineBreak()||!this.eat(81))return e;const t=this.startNodeAtNode(e);return t.checkType=e,t.extendsType=this.tsInDisallowConditionalTypesContext(()=>this.tsParseNonConditionalType()),this.expect(17),t.trueType=this.tsInAllowConditionalTypesContext(()=>this.tsParseType()),this.expect(14),t.falseType=this.tsInAllowConditionalTypesContext(()=>this.tsParseType()),this.finishNode(t,"TSConditionalType")}isAbstractConstructorSignature(){return this.isContextual(124)&&this.isLookaheadContextual("new")}tsParseNonConditionalType(){return this.tsIsStartOfFunctionType()?this.tsParseFunctionOrConstructorType("TSFunctionType"):this.match(77)?this.tsParseFunctionOrConstructorType("TSConstructorType"):this.isAbstractConstructorSignature()?this.tsParseFunctionOrConstructorType("TSConstructorType",!0):this.tsParseUnionTypeOrHigher()}tsParseTypeAssertion(){this.getPluginOption("typescript","disallowAmbiguousJSXLike")&&this.raise(St.ReservedTypeAssertion,this.state.startLoc);const e=this.startNode();return e.typeAnnotation=this.tsInType(()=>(this.next(),this.match(75)?this.tsParseTypeReference():this.tsParseType())),this.expect(48),e.expression=this.parseMaybeUnary(),this.finishNode(e,"TSTypeAssertion")}tsParseHeritageClause(e){const t=this.state.startLoc,n=this.tsParseDelimitedList("HeritageClauseElement",()=>{{const e=this.startNode();return e.expression=this.tsParseEntityName(3),this.match(47)&&(e.typeParameters=this.tsParseTypeArguments()),this.finishNode(e,"TSExpressionWithTypeArguments")}});return n.length||this.raise(St.EmptyHeritageClauseType,t,{token:e}),n}tsParseInterfaceDeclaration(e,t={}){if(this.hasFollowingLineBreak())return null;this.expectContextual(129),t.declare&&(e.declare=!0),K(this.state.type)?(e.id=this.parseIdentifier(),this.checkIdentifier(e.id,130)):(e.id=null,this.raise(St.MissingInterfaceName,this.state.startLoc)),e.typeParameters=this.tsTryParseTypeParameters(this.tsParseInOutConstModifiers),this.eat(81)&&(e.extends=this.tsParseHeritageClause("extends"));const n=this.startNode();return n.body=this.tsInType(this.tsParseObjectTypeMembers.bind(this)),e.body=this.finishNode(n,"TSInterfaceBody"),this.finishNode(e,"TSInterfaceDeclaration")}tsParseTypeAliasDeclaration(e){return e.id=this.parseIdentifier(),this.checkIdentifier(e.id,2),e.typeAnnotation=this.tsInType(()=>{if(e.typeParameters=this.tsTryParseTypeParameters(this.tsParseInOutModifiers),this.expect(29),this.isContextual(114)&&46!==this.lookaheadCharCode()){const e=this.startNode();return this.next(),this.finishNode(e,"TSIntrinsicKeyword")}return this.tsParseType()}),this.semicolon(),this.finishNode(e,"TSTypeAliasDeclaration")}tsInTopLevelContext(e){if(this.curContext()===b.brace)return e();{const t=this.state.context;this.state.context=[t[0]];try{return e()}finally{this.state.context=t}}}tsInType(e){const t=this.state.inType;this.state.inType=!0;try{return e()}finally{this.state.inType=t}}tsInDisallowConditionalTypesContext(e){const t=this.state.inDisallowConditionalTypesContext;this.state.inDisallowConditionalTypesContext=!0;try{return e()}finally{this.state.inDisallowConditionalTypesContext=t}}tsInAllowConditionalTypesContext(e){const t=this.state.inDisallowConditionalTypesContext;this.state.inDisallowConditionalTypesContext=!1;try{return e()}finally{this.state.inDisallowConditionalTypesContext=t}}tsEatThenParseType(e){if(this.match(e))return this.tsNextThenParseType()}tsExpectThenParseType(e){return this.tsInType(()=>(this.expect(e),this.tsParseType()))}tsNextThenParseType(){return this.tsInType(()=>(this.next(),this.tsParseType()))}tsParseEnumMember(){const e=this.startNode();return e.id=this.match(134)?super.parseStringLiteral(this.state.value):this.parseIdentifier(!0),this.eat(29)&&(e.initializer=super.parseMaybeAssignAllowIn()),this.finishNode(e,"TSEnumMember")}tsParseEnumDeclaration(e,t={}){return t.const&&(e.const=!0),t.declare&&(e.declare=!0),this.expectContextual(126),e.id=this.parseIdentifier(),this.checkIdentifier(e.id,e.const?8971:8459),this.expect(5),e.members=this.tsParseDelimitedList("EnumMembers",this.tsParseEnumMember.bind(this)),this.expect(8),this.finishNode(e,"TSEnumDeclaration")}tsParseEnumBody(){const e=this.startNode();return this.expect(5),e.members=this.tsParseDelimitedList("EnumMembers",this.tsParseEnumMember.bind(this)),this.expect(8),this.finishNode(e,"TSEnumBody")}tsParseModuleBlock(){const e=this.startNode();return this.scope.enter(0),this.expect(5),super.parseBlockOrModuleBlockBody(e.body=[],void 0,!0,8),this.scope.exit(),this.finishNode(e,"TSModuleBlock")}tsParseModuleOrNamespaceDeclaration(e,t=!1){if(e.id=this.parseIdentifier(),t||this.checkIdentifier(e.id,1024),this.eat(16)){const t=this.startNode();this.tsParseModuleOrNamespaceDeclaration(t,!0),e.body=t}else this.scope.enter(1024),this.prodParam.enter(0),e.body=this.tsParseModuleBlock(),this.prodParam.exit(),this.scope.exit();return this.finishNode(e,"TSModuleDeclaration")}tsParseAmbientExternalModuleDeclaration(e){return this.isContextual(112)?(e.kind="global",e.global=!0,e.id=this.parseIdentifier()):this.match(134)?(e.kind="module",e.id=super.parseStringLiteral(this.state.value)):this.unexpected(),this.match(5)?(this.scope.enter(1024),this.prodParam.enter(0),e.body=this.tsParseModuleBlock(),this.prodParam.exit(),this.scope.exit()):this.semicolon(),this.finishNode(e,"TSModuleDeclaration")}tsParseImportEqualsDeclaration(e,t,n){e.isExport=n||!1,e.id=t||this.parseIdentifier(),this.checkIdentifier(e.id,4096),this.expect(29);const r=this.tsParseModuleReference();return"type"===e.importKind&&"TSExternalModuleReference"!==r.type&&this.raise(St.ImportAliasHasImportType,r),e.moduleReference=r,this.semicolon(),this.finishNode(e,"TSImportEqualsDeclaration")}tsIsExternalModuleReference(){return this.isContextual(119)&&40===this.lookaheadCharCode()}tsParseModuleReference(){return this.tsIsExternalModuleReference()?this.tsParseExternalModuleReference():this.tsParseEntityName(0)}tsParseExternalModuleReference(){const e=this.startNode();return this.expectContextual(119),this.expect(10),this.match(134)||this.unexpected(),e.expression=super.parseExprAtom(),this.expect(11),this.sawUnambiguousESM=!0,this.finishNode(e,"TSExternalModuleReference")}tsLookAhead(e){const t=this.state.clone(),n=e();return this.state=t,n}tsTryParseAndCatch(e){const t=this.tryParse(t=>e()||t());if(!t.aborted&&t.node)return t.error&&(this.state=t.failState),t.node}tsTryParse(e){const t=this.state.clone(),n=e();if(void 0!==n&&!1!==n)return n;this.state=t}tsTryParseDeclare(e){if(this.isLineTerminator())return;const t=this.state.type;return this.tsInAmbientContext(()=>{switch(t){case 68:return e.declare=!0,super.parseFunctionStatement(e,!1,!1);case 80:return e.declare=!0,this.parseClass(e,!0,!1);case 126:return this.tsParseEnumDeclaration(e,{declare:!0});case 112:return this.tsParseAmbientExternalModuleDeclaration(e);case 100:if(this.state.containsEsc)return;case 75:case 74:return this.match(75)&&this.isLookaheadContextual("enum")?(this.expect(75),this.tsParseEnumDeclaration(e,{const:!0,declare:!0})):(e.declare=!0,this.parseVarStatement(e,this.state.value,!0));case 107:if(this.isUsing())return this.raise(St.InvalidModifierOnUsingDeclaration,this.state.startLoc,"declare"),e.declare=!0,this.parseVarStatement(e,"using",!0);break;case 96:if(this.isAwaitUsing())return this.raise(St.InvalidModifierOnAwaitUsingDeclaration,this.state.startLoc,"declare"),e.declare=!0,this.next(),this.parseVarStatement(e,"await using",!0);break;case 129:{const t=this.tsParseInterfaceDeclaration(e,{declare:!0});if(t)return t}default:if(K(t))return this.tsParseDeclaration(e,this.state.type,!0,null)}})}tsTryParseExportDeclaration(){return this.tsParseDeclaration(this.startNode(),this.state.type,!0,null)}tsParseDeclaration(e,t,n,r){switch(t){case 124:if(this.tsCheckLineTerminator(n)&&(this.match(80)||K(this.state.type)))return this.tsParseAbstractDeclaration(e,r);break;case 127:if(this.tsCheckLineTerminator(n)){if(this.match(134))return this.tsParseAmbientExternalModuleDeclaration(e);if(K(this.state.type))return e.kind="module",this.tsParseModuleOrNamespaceDeclaration(e)}break;case 128:if(this.tsCheckLineTerminator(n)&&K(this.state.type))return e.kind="namespace",this.tsParseModuleOrNamespaceDeclaration(e);break;case 130:if(this.tsCheckLineTerminator(n)&&K(this.state.type))return this.tsParseTypeAliasDeclaration(e)}}tsCheckLineTerminator(e){return e?!this.hasFollowingLineBreak()&&(this.next(),!0):!this.isLineTerminator()}tsTryParseGenericAsyncArrowFunction(e){if(!this.match(47))return;const t=this.state.maybeInArrowParameters;this.state.maybeInArrowParameters=!0;const n=this.tsTryParseAndCatch(()=>{const t=this.startNodeAt(e);return t.typeParameters=this.tsParseTypeParameters(this.tsParseConstModifier),super.parseFunctionParams(t),t.returnType=this.tsTryParseTypeOrTypePredicateAnnotation(),this.expect(19),t});return this.state.maybeInArrowParameters=t,n?super.parseArrowExpression(n,null,!0):void 0}tsParseTypeArgumentsInExpression(){if(47===this.reScan_lt())return this.tsParseTypeArguments()}tsParseTypeArguments(){const e=this.startNode();return e.params=this.tsInType(()=>this.tsInTopLevelContext(()=>(this.expect(47),this.tsParseDelimitedList("TypeParametersOrArguments",this.tsParseType.bind(this))))),0===e.params.length?this.raise(St.EmptyTypeArguments,e):this.state.inType||this.curContext()!==b.brace||this.reScan_lt_gt(),this.expect(48),this.finishNode(e,"TSTypeParameterInstantiation")}tsIsDeclarationStart(){return(e=this.state.type)>=124&&e<=130;var e}isExportDefaultSpecifier(){return!this.tsIsDeclarationStart()&&super.isExportDefaultSpecifier()}parseBindingElement(e,t){const n=t.length?t[0].loc.start:this.state.startLoc,r={};this.tsParseModifiers({allowedModifiers:["public","private","protected","override","readonly"]},r);const i=r.accessibility,s=r.override,a=r.readonly;4&e||!(i||a||s)||this.raise(St.UnexpectedParameterModifier,n);const o=this.parseMaybeDefault();2&e&&this.parseFunctionParamType(o);const l=this.parseMaybeDefault(o.loc.start,o);if(i||a||s){const e=this.startNodeAt(n);return t.length&&(e.decorators=t),i&&(e.accessibility=i),a&&(e.readonly=a),s&&(e.override=s),"Identifier"!==l.type&&"AssignmentPattern"!==l.type&&this.raise(St.UnsupportedParameterPropertyKind,e),e.parameter=l,this.finishNode(e,"TSParameterProperty")}return t.length&&(o.decorators=t),l}isSimpleParameter(e){return"TSParameterProperty"===e.type&&super.isSimpleParameter(e.parameter)||super.isSimpleParameter(e)}tsDisallowOptionalPattern(e){for(const t of e.params)"Identifier"!==t.type&&t.optional&&!this.state.isAmbientContext&&this.raise(St.PatternIsOptional,t)}setArrowFunctionParameters(e,t,n){super.setArrowFunctionParameters(e,t,n),this.tsDisallowOptionalPattern(e)}parseFunctionBodyAndFinish(e,t,n=!1){this.match(14)&&(e.returnType=this.tsParseTypeOrTypePredicateAnnotation(14));const r="FunctionDeclaration"===t?"TSDeclareFunction":"ClassMethod"===t||"ClassPrivateMethod"===t?"TSDeclareMethod":void 0;return r&&!this.match(5)&&this.isLineTerminator()?this.finishNode(e,r):"TSDeclareFunction"===r&&this.state.isAmbientContext&&(this.raise(St.DeclareFunctionHasImplementation,e),e.declare)?super.parseFunctionBodyAndFinish(e,r,n):(this.tsDisallowOptionalPattern(e),super.parseFunctionBodyAndFinish(e,t,n))}registerFunctionStatementId(e){!e.body&&e.id?this.checkIdentifier(e.id,1024):super.registerFunctionStatementId(e)}tsCheckForInvalidTypeCasts(e){e.forEach(e=>{"TSTypeCastExpression"===(null==e?void 0:e.type)&&this.raise(St.UnexpectedTypeAnnotation,e.typeAnnotation)})}toReferencedList(e,t){return this.tsCheckForInvalidTypeCasts(e),e}parseArrayLike(e,t,n){const r=super.parseArrayLike(e,t,n);return"ArrayExpression"===r.type&&this.tsCheckForInvalidTypeCasts(r.elements),r}parseSubscript(e,t,n,r){if(!this.hasPrecedingLineBreak()&&this.match(35)){this.state.canStartJSXElement=!1,this.next();const n=this.startNodeAt(t);return n.expression=e,this.finishNode(n,"TSNonNullExpression")}let i=!1;if(this.match(18)&&60===this.lookaheadCharCode()){if(n)return r.stop=!0,e;r.optionalChainMember=i=!0,this.next()}if(this.match(47)||this.match(51)){let s;const a=this.tsTryParseAndCatch(()=>{if(!n&&this.atPossibleAsyncArrow(e)){const e=this.tsTryParseGenericAsyncArrowFunction(t);if(e)return r.stop=!0,e}const a=this.tsParseTypeArgumentsInExpression();if(!a)return;if(i&&!this.match(10))return void(s=this.state.curPosition());if(z(this.state.type)){const n=super.parseTaggedTemplateExpression(e,t,r);return n.typeParameters=a,n}if(!n&&this.eat(10)){const n=this.startNodeAt(t);return n.callee=e,n.arguments=this.parseCallExpressionArguments(),this.tsCheckForInvalidTypeCasts(n.arguments),n.typeParameters=a,r.optionalChainMember&&(n.optional=i),this.finishCallExpression(n,r.optionalChainMember)}const o=this.state.type;if(48===o||52===o||10!==o&&$(o)&&!this.hasPrecedingLineBreak())return;const l=this.startNodeAt(t);return l.expression=e,l.typeParameters=a,this.finishNode(l,"TSInstantiationExpression")});if(s&&this.unexpected(s,10),a)return"TSInstantiationExpression"===a.type&&((this.match(16)||this.match(18)&&40!==this.lookaheadCharCode())&&this.raise(St.InvalidPropertyAccessAfterInstantiationExpression,this.state.startLoc),this.match(16)||this.match(18)||(a.expression=super.stopParseSubscript(e,r))),a}return super.parseSubscript(e,t,n,r)}parseNewCallee(e){var t;super.parseNewCallee(e);const{callee:n}=e;"TSInstantiationExpression"!==n.type||null!=(t=n.extra)&&t.parenthesized||(e.typeParameters=n.typeParameters,e.callee=n.expression)}parseExprOp(e,t,n){let r;if(H(58)>n&&!this.hasPrecedingLineBreak()&&(this.isContextual(93)||(r=this.isContextual(120)))){const i=this.startNodeAt(t);return i.expression=e,i.typeAnnotation=this.tsInType(()=>(this.next(),this.match(75)?(r&&this.raise(y.UnexpectedKeyword,this.state.startLoc,{keyword:"const"}),this.tsParseTypeReference()):this.tsParseType())),this.finishNode(i,r?"TSSatisfiesExpression":"TSAsExpression"),this.reScan_lt_gt(),this.parseExprOp(i,t,n)}return super.parseExprOp(e,t,n)}checkReservedWord(e,t,n,r){this.state.isAmbientContext||super.checkReservedWord(e,t,n,r)}checkImportReflection(e){super.checkImportReflection(e),e.module&&"value"!==e.importKind&&this.raise(St.ImportReflectionHasImportType,e.specifiers[0].loc.start)}checkDuplicateExports(){}isPotentialImportPhase(e){if(super.isPotentialImportPhase(e))return!0;if(this.isContextual(130)){const t=this.lookaheadCharCode();return e?123===t||42===t:61!==t}return!e&&this.isContextual(87)}applyImportPhase(e,t,n,r){super.applyImportPhase(e,t,n,r),t?e.exportKind="type"===n?"type":"value":e.importKind="type"===n||"typeof"===n?n:"value"}parseImport(e){if(this.match(134))return e.importKind="value",super.parseImport(e);let t;if(K(this.state.type)&&61===this.lookaheadCharCode())return e.importKind="value",this.tsParseImportEqualsDeclaration(e);if(this.isContextual(130)){const n=this.parseMaybeImportPhase(e,!1);if(61===this.lookaheadCharCode())return this.tsParseImportEqualsDeclaration(e,n);t=super.parseImportSpecifiersAndAfter(e,n)}else t=super.parseImport(e);return"type"===t.importKind&&t.specifiers.length>1&&"ImportDefaultSpecifier"===t.specifiers[0].type&&this.raise(St.TypeImportCannotSpecifyDefaultAndNamed,t),t}parseExport(e,t){if(this.match(83)){const t=e;this.next();let n=null;this.isContextual(130)&&this.isPotentialImportPhase(!1)?n=this.parseMaybeImportPhase(t,!1):t.importKind="value";return this.tsParseImportEqualsDeclaration(t,n,!0)}if(this.eat(29)){const t=e;return t.expression=super.parseExpression(),this.semicolon(),this.sawUnambiguousESM=!0,this.finishNode(t,"TSExportAssignment")}if(this.eatContextual(93)){const t=e;return this.expectContextual(128),t.id=this.parseIdentifier(),this.semicolon(),this.finishNode(t,"TSNamespaceExportDeclaration")}return super.parseExport(e,t)}isAbstractClass(){return this.isContextual(124)&&this.isLookaheadContextual("class")}parseExportDefaultExpression(){if(this.isAbstractClass()){const e=this.startNode();return this.next(),e.abstract=!0,this.parseClass(e,!0,!0)}if(this.match(129)){const e=this.tsParseInterfaceDeclaration(this.startNode());if(e)return e}return super.parseExportDefaultExpression()}parseVarStatement(e,t,n=!1){const{isAmbientContext:r}=this.state,i=super.parseVarStatement(e,t,n||r);if(!r)return i;if(!e.declare&&("using"===t||"await using"===t))return this.raiseOverwrite(St.UsingDeclarationInAmbientContext,e,t),i;for(const{id:e,init:n}of i.declarations)n&&("var"===t||"let"===t||e.typeAnnotation?this.raise(St.InitializerNotAllowedInAmbientContext,n):vt(n,this.hasPlugin("estree"))||this.raise(St.ConstInitializerMustBeStringOrNumericLiteralOrLiteralEnumReference,n));return i}parseStatementContent(e,t){if(!this.state.containsEsc)switch(this.state.type){case 75:if(this.isLookaheadContextual("enum")){const e=this.startNode();return this.expect(75),this.tsParseEnumDeclaration(e,{const:!0})}break;case 124:case 125:if(this.nextTokenIsIdentifierAndNotTSRelationalOperatorOnSameLine()){const e=this.state.type,n=this.startNode();this.next();const r=125===e?this.tsTryParseDeclare(n):this.tsParseAbstractDeclaration(n,t);return r?(125===e&&(r.declare=!0),r):(n.expression=this.createIdentifier(this.startNodeAt(n.loc.start),125===e?"declare":"abstract"),this.semicolon(!1),this.finishNode(n,"ExpressionStatement"))}break;case 126:return this.tsParseEnumDeclaration(this.startNode());case 112:if(123===this.lookaheadCharCode()){const e=this.startNode();return this.tsParseAmbientExternalModuleDeclaration(e)}break;case 129:{const e=this.tsParseInterfaceDeclaration(this.startNode());if(e)return e;break}case 127:if(this.nextTokenIsIdentifierOrStringLiteralOnSameLine()){const e=this.startNode();return this.next(),this.tsParseDeclaration(e,127,!1,t)}break;case 128:if(this.nextTokenIsIdentifierOnSameLine()){const e=this.startNode();return this.next(),this.tsParseDeclaration(e,128,!1,t)}break;case 130:if(this.nextTokenIsIdentifierOnSameLine()){const e=this.startNode();return this.next(),this.tsParseTypeAliasDeclaration(e)}}return super.parseStatementContent(e,t)}parseAccessModifier(){return this.tsParseModifier(["public","protected","private"])}tsHasSomeModifiers(e,t){return t.some(t=>bt(t)?e.accessibility===t:!!e[t])}tsIsStartOfStaticBlocks(){return this.isContextual(106)&&123===this.lookaheadCharCode()}parseClassMember(e,t,n){const r=["declare","private","public","protected","override","abstract","readonly","static"];this.tsParseModifiers({allowedModifiers:r,disallowedModifiers:["in","out"],stopOnStartOfClassStaticBlock:!0,errorTemplate:St.InvalidModifierOnTypeParameterPositions},t);const i=()=>{this.tsIsStartOfStaticBlocks()?(this.next(),this.next(),this.tsHasSomeModifiers(t,r)&&this.raise(St.StaticBlockCannotHaveModifier,this.state.curPosition()),super.parseClassStaticBlock(e,t)):this.parseClassMemberWithIsStatic(e,t,n,!!t.static)};t.declare?this.tsInAmbientContext(i):i()}parseClassMemberWithIsStatic(e,t,n,r){const i=this.tsTryParseIndexSignature(t);if(i)return e.body.push(i),t.abstract&&this.raise(St.IndexSignatureHasAbstract,t),t.accessibility&&this.raise(St.IndexSignatureHasAccessibility,t,{modifier:t.accessibility}),t.declare&&this.raise(St.IndexSignatureHasDeclare,t),void(t.override&&this.raise(St.IndexSignatureHasOverride,t));!this.state.inAbstractClass&&t.abstract&&this.raise(St.NonAbstractClassHasAbstractMethod,t),t.override&&(n.hadSuperClass||this.raise(St.OverrideNotInSubClass,t)),super.parseClassMemberWithIsStatic(e,t,n,r)}parsePostMemberNameModifiers(e){this.eat(17)&&(e.optional=!0),e.readonly&&this.match(10)&&this.raise(St.ClassMethodHasReadonly,e),e.declare&&this.match(10)&&this.raise(St.ClassMethodHasDeclare,e)}shouldParseExportDeclaration(){return!!this.tsIsDeclarationStart()||super.shouldParseExportDeclaration()}parseConditional(e,t,n){if(!this.match(17))return e;if(this.state.maybeInArrowParameters){const t=this.lookaheadCharCode();if(44===t||61===t||58===t||41===t)return this.setOptionalParametersError(n),e}return super.parseConditional(e,t,n)}parseParenItem(e,t){const n=super.parseParenItem(e,t);if(this.eat(17)&&(n.optional=!0,this.resetEndLocation(e)),this.match(14)){const n=this.startNodeAt(t);return n.expression=e,n.typeAnnotation=this.tsParseTypeAnnotation(),this.finishNode(n,"TSTypeCastExpression")}return e}parseExportDeclaration(e){if(!this.state.isAmbientContext&&this.isContextual(125))return this.tsInAmbientContext(()=>this.parseExportDeclaration(e));const t=this.state.startLoc,n=this.eatContextual(125);if(n&&(this.isContextual(125)||!this.shouldParseExportDeclaration()))throw this.raise(St.ExpectedAmbientAfterExportDeclare,this.state.startLoc);const r=K(this.state.type)&&this.tsTryParseExportDeclaration()||super.parseExportDeclaration(e);return r?(("TSInterfaceDeclaration"===r.type||"TSTypeAliasDeclaration"===r.type||n)&&(e.exportKind="type"),n&&"TSImportEqualsDeclaration"!==r.type&&(this.resetStartLocation(r,t),r.declare=!0),r):null}parseClassId(e,t,n,r){if((!t||n)&&this.isContextual(113))return;super.parseClassId(e,t,n,e.declare?1024:8331);const i=this.tsTryParseTypeParameters(this.tsParseInOutConstModifiers);i&&(e.typeParameters=i)}parseClassPropertyAnnotation(e){e.optional||(this.eat(35)?e.definite=!0:this.eat(17)&&(e.optional=!0));const t=this.tsTryParseTypeAnnotation();t&&(e.typeAnnotation=t)}parseClassProperty(e){if(this.parseClassPropertyAnnotation(e),this.state.isAmbientContext&&(!e.readonly||e.typeAnnotation)&&this.match(29)&&this.raise(St.DeclareClassFieldHasInitializer,this.state.startLoc),e.abstract&&this.match(29)){const{key:t}=e;this.raise(St.AbstractPropertyHasInitializer,this.state.startLoc,{propertyName:"Identifier"!==t.type||e.computed?`[${this.input.slice(this.offsetToSourcePos(t.start),this.offsetToSourcePos(t.end))}]`:t.name})}return super.parseClassProperty(e)}parseClassPrivateProperty(e){return e.abstract&&this.raise(St.PrivateElementHasAbstract,e),e.accessibility&&this.raise(St.PrivateElementHasAccessibility,e,{modifier:e.accessibility}),this.parseClassPropertyAnnotation(e),super.parseClassPrivateProperty(e)}parseClassAccessorProperty(e){return this.parseClassPropertyAnnotation(e),e.optional&&this.raise(St.AccessorCannotBeOptional,e),super.parseClassAccessorProperty(e)}pushClassMethod(e,t,n,r,i,s){const a=this.tsTryParseTypeParameters(this.tsParseConstModifier);a&&i&&this.raise(St.ConstructorHasTypeParameters,a);const{declare:o=!1,kind:l}=t;!o||"get"!==l&&"set"!==l||this.raise(St.DeclareAccessor,t,{kind:l}),a&&(t.typeParameters=a),super.pushClassMethod(e,t,n,r,i,s)}pushClassPrivateMethod(e,t,n,r){const i=this.tsTryParseTypeParameters(this.tsParseConstModifier);i&&(t.typeParameters=i),super.pushClassPrivateMethod(e,t,n,r)}declareClassPrivateMethodInScope(e,t){"TSDeclareMethod"!==e.type&&("MethodDefinition"===e.type&&null==e.value.body||super.declareClassPrivateMethodInScope(e,t))}parseClassSuper(e){super.parseClassSuper(e),e.superClass&&(this.match(47)||this.match(51))&&(e.superTypeParameters=this.tsParseTypeArgumentsInExpression()),this.eatContextual(113)&&(e.implements=this.tsParseHeritageClause("implements"))}parseObjPropValue(e,t,n,r,i,s,a){const o=this.tsTryParseTypeParameters(this.tsParseConstModifier);return o&&(e.typeParameters=o),super.parseObjPropValue(e,t,n,r,i,s,a)}parseFunctionParams(e,t){const n=this.tsTryParseTypeParameters(this.tsParseConstModifier);n&&(e.typeParameters=n),super.parseFunctionParams(e,t)}parseVarId(e,t){super.parseVarId(e,t),"Identifier"===e.id.type&&!this.hasPrecedingLineBreak()&&this.eat(35)&&(e.definite=!0);const n=this.tsTryParseTypeAnnotation();n&&(e.id.typeAnnotation=n,this.resetEndLocation(e.id))}parseAsyncArrowFromCallExpression(e,t){return this.match(14)&&(e.returnType=this.tsParseTypeAnnotation()),super.parseAsyncArrowFromCallExpression(e,t)}parseMaybeAssign(e,t){var n,r,i,s,a;let o,l,c,p;if(this.hasPlugin("jsx")&&(this.match(143)||this.match(47))){if(o=this.state.clone(),l=this.tryParse(()=>super.parseMaybeAssign(e,t),o),!l.error)return l.node;const{context:n}=this.state,r=n[n.length-1];r!==b.j_oTag&&r!==b.j_expr||n.pop()}if(!(null!=(n=l)&&n.error||this.match(47)))return super.parseMaybeAssign(e,t);o&&o!==this.state||(o=this.state.clone());const u=this.tryParse(n=>{var r,i;p=this.tsParseTypeParameters(this.tsParseConstModifier);const s=super.parseMaybeAssign(e,t);return("ArrowFunctionExpression"!==s.type||null!=(r=s.extra)&&r.parenthesized)&&n(),0!==(null==(i=p)?void 0:i.params.length)&&this.resetStartLocationFromNode(s,p),s.typeParameters=p,s},o);if(!u.error&&!u.aborted)return p&&this.reportReservedArrowTypeParam(p),u.node;if(!l&&(xt(!this.hasPlugin("jsx")),c=this.tryParse(()=>super.parseMaybeAssign(e,t),o),!c.error))return c.node;if(null!=(r=l)&&r.node)return this.state=l.failState,l.node;if(u.node)return this.state=u.failState,p&&this.reportReservedArrowTypeParam(p),u.node;if(null!=(i=c)&&i.node)return this.state=c.failState,c.node;throw(null==(s=l)?void 0:s.error)||u.error||(null==(a=c)?void 0:a.error)}reportReservedArrowTypeParam(e){var t;1!==e.params.length||e.params[0].constraint||null!=(t=e.extra)&&t.trailingComma||!this.getPluginOption("typescript","disallowAmbiguousJSXLike")||this.raise(St.ReservedArrowTypeParam,e)}parseMaybeUnary(e,t){return!this.hasPlugin("jsx")&&this.match(47)?this.tsParseTypeAssertion():super.parseMaybeUnary(e,t)}parseArrow(e){if(this.match(14)){const t=this.tryParse(e=>{const t=this.tsParseTypeOrTypePredicateAnnotation(14);return!this.canInsertSemicolon()&&this.match(19)||e(),t});if(t.aborted)return;t.thrown||(t.error&&(this.state=t.failState),e.returnType=t.node)}return super.parseArrow(e)}parseFunctionParamType(e){this.eat(17)&&(e.optional=!0);const t=this.tsTryParseTypeAnnotation();return t&&(e.typeAnnotation=t),this.resetEndLocation(e),e}isAssignable(e,t){switch(e.type){case"TSTypeCastExpression":return this.isAssignable(e.expression,t);case"TSParameterProperty":return!0;default:return super.isAssignable(e,t)}}toAssignable(e,t=!1){switch(e.type){case"ParenthesizedExpression":this.toAssignableParenthesizedExpression(e,t);break;case"TSAsExpression":case"TSSatisfiesExpression":case"TSNonNullExpression":case"TSTypeAssertion":t?this.expressionScope.recordArrowParameterBindingError(St.UnexpectedTypeCastInParameter,e):this.raise(St.UnexpectedTypeCastInParameter,e),this.toAssignable(e.expression,t);break;case"AssignmentExpression":t||"TSTypeCastExpression"!==e.left.type||(e.left=this.typeCastToParameter(e.left));default:super.toAssignable(e,t)}}toAssignableParenthesizedExpression(e,t){switch(e.expression.type){case"TSAsExpression":case"TSSatisfiesExpression":case"TSNonNullExpression":case"TSTypeAssertion":case"ParenthesizedExpression":this.toAssignable(e.expression,t);break;default:super.toAssignable(e,t)}}checkToRestConversion(e,t){switch(e.type){case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":case"TSNonNullExpression":this.checkToRestConversion(e.expression,!1);break;default:super.checkToRestConversion(e,t)}}isValidLVal(e,t,n,r){switch(e){case"TSTypeCastExpression":return!0;case"TSParameterProperty":return"parameter";case"TSNonNullExpression":return"expression";case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":return(64!==r||!n)&&["expression",!0];default:return super.isValidLVal(e,t,n,r)}}parseBindingAtom(){return 78===this.state.type?this.parseIdentifier(!0):super.parseBindingAtom()}parseMaybeDecoratorArguments(e,t){if(this.match(47)||this.match(51)){const n=this.tsParseTypeArgumentsInExpression();if(this.match(10)){const r=super.parseMaybeDecoratorArguments(e,t);return r.typeParameters=n,r}this.unexpected(null,10)}return super.parseMaybeDecoratorArguments(e,t)}checkCommaAfterRest(e){return this.state.isAmbientContext&&this.match(12)&&this.lookaheadCharCode()===e?(this.next(),!1):super.checkCommaAfterRest(e)}isClassMethod(){return this.match(47)||super.isClassMethod()}isClassProperty(){return this.match(35)||this.match(14)||super.isClassProperty()}parseMaybeDefault(e,t){const n=super.parseMaybeDefault(e,t);return"AssignmentPattern"===n.type&&n.typeAnnotation&&n.right.start<n.typeAnnotation.start&&this.raise(St.TypeAnnotationAfterAssign,n.typeAnnotation),n}getTokenFromCode(e){if(this.state.inType){if(62===e)return void this.finishOp(48,1);if(60===e)return void this.finishOp(47,1)}super.getTokenFromCode(e)}reScan_lt_gt(){const{type:e}=this.state;47===e?(this.state.pos-=1,this.readToken_lt()):48===e&&(this.state.pos-=1,this.readToken_gt())}reScan_lt(){const{type:e}=this.state;return 51===e?(this.state.pos-=2,this.finishOp(47,1),47):e}toAssignableListItem(e,t,n){const r=e[t];"TSTypeCastExpression"===r.type&&(e[t]=this.typeCastToParameter(r)),super.toAssignableListItem(e,t,n)}typeCastToParameter(e){return e.expression.typeAnnotation=e.typeAnnotation,this.resetEndLocation(e.expression,e.typeAnnotation.loc.end),e.expression}shouldParseArrow(e){return this.match(14)?e.every(e=>this.isAssignable(e,!0)):super.shouldParseArrow(e)}shouldParseAsyncArrow(){return this.match(14)||super.shouldParseAsyncArrow()}canHaveLeadingDecorator(){return super.canHaveLeadingDecorator()||this.isAbstractClass()}jsxParseOpeningElementAfterName(e){if(this.match(47)||this.match(51)){const t=this.tsTryParseAndCatch(()=>this.tsParseTypeArgumentsInExpression());t&&(e.typeParameters=t)}return super.jsxParseOpeningElementAfterName(e)}getGetterSetterExpectedParamCount(e){const t=super.getGetterSetterExpectedParamCount(e),n=this.getObjectOrClassMethodParams(e)[0];return n&&this.isThisParam(n)?t+1:t}parseCatchClauseParam(){const e=super.parseCatchClauseParam(),t=this.tsTryParseTypeAnnotation();return t&&(e.typeAnnotation=t,this.resetEndLocation(e)),e}tsInAmbientContext(e){const{isAmbientContext:t,strict:n}=this.state;this.state.isAmbientContext=!0,this.state.strict=!1;try{return e()}finally{this.state.isAmbientContext=t,this.state.strict=n}}parseClass(e,t,n){const r=this.state.inAbstractClass;this.state.inAbstractClass=!!e.abstract;try{return super.parseClass(e,t,n)}finally{this.state.inAbstractClass=r}}tsParseAbstractDeclaration(e,t){if(this.match(80))return e.abstract=!0,this.maybeTakeDecorators(t,this.parseClass(e,!0,!1));if(this.isContextual(129))return this.hasFollowingLineBreak()?null:(e.abstract=!0,this.raise(St.NonClassMethodPropertyHasAbstractModifier,e),this.tsParseInterfaceDeclaration(e));throw this.unexpected(null,80)}parseMethod(e,t,n,r,i,s,a){const o=super.parseMethod(e,t,n,r,i,s,a);if(o.abstract||"TSAbstractMethodDefinition"===o.type){if((this.hasPlugin("estree")?o.value:o).body){const{key:e}=o;this.raise(St.AbstractMethodHasImplementation,o,{methodName:"Identifier"!==e.type||o.computed?`[${this.input.slice(this.offsetToSourcePos(e.start),this.offsetToSourcePos(e.end))}]`:e.name})}}return o}tsParseTypeParameterName(){return this.parseIdentifier().name}shouldParseAsAmbientContext(){return!!this.getPluginOption("typescript","dts")}parse(){return this.shouldParseAsAmbientContext()&&(this.state.isAmbientContext=!0),super.parse()}getExpression(){return this.shouldParseAsAmbientContext()&&(this.state.isAmbientContext=!0),super.getExpression()}parseExportSpecifier(e,t,n,r){return!t&&r?(this.parseTypeOnlyImportExportSpecifier(e,!1,n),this.finishNode(e,"ExportSpecifier")):(e.exportKind="value",super.parseExportSpecifier(e,t,n,r))}parseImportSpecifier(e,t,n,r,i){return!t&&r?(this.parseTypeOnlyImportExportSpecifier(e,!0,n),this.finishNode(e,"ImportSpecifier")):(e.importKind="value",super.parseImportSpecifier(e,t,n,r,n?4098:4096))}parseTypeOnlyImportExportSpecifier(e,t,n){const r=t?"imported":"local",i=t?"local":"exported";let s,a=e[r],o=!1,l=!0;const c=a.loc.start;if(this.isContextual(93)){const e=this.parseIdentifier();if(this.isContextual(93)){const n=this.parseIdentifier();V(this.state.type)?(o=!0,a=e,s=t?this.parseIdentifier():this.parseModuleExportName(),l=!1):(s=n,l=!1)}else V(this.state.type)?(l=!1,s=t?this.parseIdentifier():this.parseModuleExportName()):(o=!0,a=e)}else V(this.state.type)&&(o=!0,t?(a=this.parseIdentifier(!0),this.isContextual(93)||this.checkReservedWord(a.name,a.loc.start,!0,!0)):a=this.parseModuleExportName());o&&n&&this.raise(t?St.TypeModifierIsUsedInTypeImports:St.TypeModifierIsUsedInTypeExports,c),e[r]=a,e[i]=s;e[t?"importKind":"exportKind"]=o?"type":"value",l&&this.eatContextual(93)&&(e[i]=t?this.parseIdentifier():this.parseModuleExportName()),e[i]||(e[i]=this.cloneIdentifier(e[r])),t&&this.checkIdentifier(e[i],o?4098:4096)}fillOptionalPropertiesForTSESLint(e){switch(e.type){case"ExpressionStatement":return void(null!=e.directive||(e.directive=void 0));case"RestElement":e.value=void 0;case"Identifier":case"ArrayPattern":case"AssignmentPattern":case"ObjectPattern":return null!=e.decorators||(e.decorators=[]),null!=e.optional||(e.optional=!1),void(null!=e.typeAnnotation||(e.typeAnnotation=void 0));case"TSParameterProperty":return null!=e.accessibility||(e.accessibility=void 0),null!=e.decorators||(e.decorators=[]),null!=e.override||(e.override=!1),null!=e.readonly||(e.readonly=!1),void(null!=e.static||(e.static=!1));case"TSEmptyBodyFunctionExpression":e.body=null;case"TSDeclareFunction":case"FunctionDeclaration":case"FunctionExpression":case"ClassMethod":case"ClassPrivateMethod":return null!=e.declare||(e.declare=!1),null!=e.returnType||(e.returnType=void 0),void(null!=e.typeParameters||(e.typeParameters=void 0));case"Property":return void(null!=e.optional||(e.optional=!1));case"TSMethodSignature":case"TSPropertySignature":null!=e.optional||(e.optional=!1);case"TSIndexSignature":return null!=e.accessibility||(e.accessibility=void 0),null!=e.readonly||(e.readonly=!1),void(null!=e.static||(e.static=!1));case"TSAbstractPropertyDefinition":case"PropertyDefinition":case"TSAbstractAccessorProperty":case"AccessorProperty":null!=e.declare||(e.declare=!1),null!=e.definite||(e.definite=!1),null!=e.readonly||(e.readonly=!1),null!=e.typeAnnotation||(e.typeAnnotation=void 0);case"TSAbstractMethodDefinition":case"MethodDefinition":return null!=e.accessibility||(e.accessibility=void 0),null!=e.decorators||(e.decorators=[]),null!=e.override||(e.override=!1),void(null!=e.optional||(e.optional=!1));case"ClassExpression":null!=e.id||(e.id=null);case"ClassDeclaration":return null!=e.abstract||(e.abstract=!1),null!=e.declare||(e.declare=!1),null!=e.decorators||(e.decorators=[]),null!=e.implements||(e.implements=[]),null!=e.superTypeArguments||(e.superTypeArguments=void 0),void(null!=e.typeParameters||(e.typeParameters=void 0));case"TSTypeAliasDeclaration":case"VariableDeclaration":return void(null!=e.declare||(e.declare=!1));case"VariableDeclarator":return void(null!=e.definite||(e.definite=!1));case"TSEnumDeclaration":return null!=e.const||(e.const=!1),void(null!=e.declare||(e.declare=!1));case"TSEnumMember":return void(null!=e.computed||(e.computed=!1));case"TSImportType":return null!=e.qualifier||(e.qualifier=null),void(null!=e.options||(e.options=null));case"TSInterfaceDeclaration":return null!=e.declare||(e.declare=!1),void(null!=e.extends||(e.extends=[]));case"TSMappedType":return null!=e.optional||(e.optional=!1),void(null!=e.readonly||(e.readonly=void 0));case"TSModuleDeclaration":return null!=e.declare||(e.declare=!1),void(null!=e.global||(e.global="global"===e.kind));case"TSTypeParameter":return null!=e.const||(e.const=!1),null!=e.in||(e.in=!1),void(null!=e.out||(e.out=!1))}}chStartsBindingIdentifierAndNotRelationalOperator(e,t){if(se(e)){if(gt.lastIndex=t,gt.test(this.input)){const e=this.codePointAtPos(gt.lastIndex);if(!ae(e)&&92!==e)return!1}return!0}return 92===e}nextTokenIsIdentifierAndNotTSRelationalOperatorOnSameLine(){const e=this.nextTokenInLineStart(),t=this.codePointAtPos(e);return this.chStartsBindingIdentifierAndNotRelationalOperator(t,e)}nextTokenIsIdentifierOrStringLiteralOnSameLine(){const e=this.nextTokenInLineStart(),t=this.codePointAtPos(e);return this.chStartsBindingIdentifier(t,e)||34===t||39===t}},v8intrinsic:e=>class extends e{parseV8Intrinsic(){if(this.match(54)){const e=this.state.startLoc,t=this.startNode();if(this.next(),K(this.state.type)){const e=this.parseIdentifierName(),n=this.createIdentifier(t,e);if(this.castNodeTo(n,"V8IntrinsicIdentifier"),this.match(10))return n}this.unexpected(e)}}parseExprAtom(e){return this.parseV8Intrinsic()||super.parseExprAtom(e)}},placeholders:e=>class extends e{parsePlaceholder(e){if(this.match(133)){const t=this.startNode();return this.next(),this.assertNoSpace(),t.name=super.parseIdentifier(!0),this.assertNoSpace(),this.expect(133),this.finishPlaceholder(t,e)}}finishPlaceholder(e,t){let n=e;return n.expectedNode&&n.type||(n=this.finishNode(n,"Placeholder")),n.expectedNode=t,n}getTokenFromCode(e){37===e&&37===this.input.charCodeAt(this.state.pos+1)?this.finishOp(133,2):super.getTokenFromCode(e)}parseExprAtom(e){return this.parsePlaceholder("Expression")||super.parseExprAtom(e)}parseIdentifier(e){return this.parsePlaceholder("Identifier")||super.parseIdentifier(e)}checkReservedWord(e,t,n,r){void 0!==e&&super.checkReservedWord(e,t,n,r)}cloneIdentifier(e){const t=super.cloneIdentifier(e);return"Placeholder"===t.type&&(t.expectedNode=e.expectedNode),t}cloneStringLiteral(e){return"Placeholder"===e.type?this.cloneIdentifier(e):super.cloneStringLiteral(e)}parseBindingAtom(){return this.parsePlaceholder("Pattern")||super.parseBindingAtom()}isValidLVal(e,t,n,r){return"Placeholder"===e||super.isValidLVal(e,t,n,r)}toAssignable(e,t){e&&"Placeholder"===e.type&&"Expression"===e.expectedNode?e.expectedNode="Pattern":super.toAssignable(e,t)}chStartsBindingIdentifier(e,t){if(super.chStartsBindingIdentifier(e,t))return!0;const n=this.nextTokenStart();return 37===this.input.charCodeAt(n)&&37===this.input.charCodeAt(n+1)}verifyBreakContinue(e,t){e.label&&"Placeholder"===e.label.type||super.verifyBreakContinue(e,t)}parseExpressionStatement(e,t){var n;if("Placeholder"!==t.type||null!=(n=t.extra)&&n.parenthesized)return super.parseExpressionStatement(e,t);if(this.match(14)){const n=e;return n.label=this.finishPlaceholder(t,"Identifier"),this.next(),n.body=super.parseStatementOrSloppyAnnexBFunctionDeclaration(),this.finishNode(n,"LabeledStatement")}this.semicolon();const r=e;return r.name=t.name,this.finishPlaceholder(r,"Statement")}parseBlock(e,t,n){return this.parsePlaceholder("BlockStatement")||super.parseBlock(e,t,n)}parseFunctionId(e){return this.parsePlaceholder("Identifier")||super.parseFunctionId(e)}parseClass(e,t,n){const r=t?"ClassDeclaration":"ClassExpression";this.next();const i=this.state.strict,s=this.parsePlaceholder("Identifier");if(s){if(!(this.match(81)||this.match(133)||this.match(5))){if(n||!t)return e.id=null,e.body=this.finishPlaceholder(s,"ClassBody"),this.finishNode(e,r);throw this.raise(wt.ClassNameIsRequired,this.state.startLoc)}e.id=s}else this.parseClassId(e,t,n);return super.parseClassSuper(e),e.body=this.parsePlaceholder("ClassBody")||super.parseClassBody(!!e.superClass,i),this.finishNode(e,r)}parseExport(e,t){const n=this.parsePlaceholder("Identifier");if(!n)return super.parseExport(e,t);const r=e;if(!this.isContextual(98)&&!this.match(12))return r.specifiers=[],r.source=null,r.declaration=this.finishPlaceholder(n,"Declaration"),this.finishNode(r,"ExportNamedDeclaration");this.expectPlugin("exportDefaultFrom");const i=this.startNode();return i.exported=n,r.specifiers=[this.finishNode(i,"ExportDefaultSpecifier")],super.parseExport(r,t)}isExportDefaultSpecifier(){if(this.match(65)){const e=this.nextTokenStart();if(this.isUnparsedContextual(e,"from")&&this.input.startsWith(X(133),this.nextTokenStartSince(e+4)))return!0}return super.isExportDefaultSpecifier()}maybeParseExportDefaultSpecifier(e,t){var n;return!(null==(n=e.specifiers)||!n.length)||super.maybeParseExportDefaultSpecifier(e,t)}checkExport(e){const{specifiers:t}=e;null!=t&&t.length&&(e.specifiers=t.filter(e=>"Placeholder"===e.exported.type)),super.checkExport(e),e.specifiers=t}parseImport(e){const t=this.parsePlaceholder("Identifier");if(!t)return super.parseImport(e);if(e.specifiers=[],!this.isContextual(98)&&!this.match(12))return e.source=this.finishPlaceholder(t,"StringLiteral"),this.semicolon(),this.finishNode(e,"ImportDeclaration");const n=this.startNodeAtNode(t);if(n.local=t,e.specifiers.push(this.finishNode(n,"ImportDefaultSpecifier")),this.eat(12)){this.maybeParseStarImportSpecifier(e)||this.parseNamedImportSpecifiers(e)}return this.expectContextual(98),e.source=this.parseImportSource(),this.semicolon(),this.finishNode(e,"ImportDeclaration")}parseImportSource(){return this.parsePlaceholder("StringLiteral")||super.parseImportSource()}assertNoSpace(){this.state.start>this.offsetToSourcePos(this.state.lastTokEndLoc.index)&&this.raise(wt.UnexpectedSpace,this.state.lastTokEndLoc)}}},Ot=Object.keys(Nt);class _t extends Tt{checkProto(e,t,n,r){if("SpreadElement"===e.type||this.isObjectMethod(e)||e.computed||e.shorthand)return n;const i=e.key;return"__proto__"===("Identifier"===i.type?i.name:i.value)?t?(this.raise(y.RecordNoProto,i),!0):(n&&(r?null===r.doubleProtoLoc&&(r.doubleProtoLoc=i.loc.start):this.raise(y.DuplicateProto,i)),!0):n}shouldExitDescending(e,t){return"ArrowFunctionExpression"===e.type&&this.offsetToSourcePos(e.start)===t}getExpression(){if(this.enterInitialScopes(),this.nextToken(),this.match(140))throw this.raise(y.ParseExpressionEmptyInput,this.state.startLoc);const e=this.parseExpression();if(!this.match(140))throw this.raise(y.ParseExpressionExpectsEOF,this.state.startLoc,{unexpected:this.input.codePointAt(this.state.start)});return this.finalizeRemainingComments(),e.comments=this.comments,e.errors=this.state.errors,256&this.optionFlags&&(e.tokens=this.tokens),e}parseExpression(e,t){return e?this.disallowInAnd(()=>this.parseExpressionBase(t)):this.allowInAnd(()=>this.parseExpressionBase(t))}parseExpressionBase(e){const t=this.state.startLoc,n=this.parseMaybeAssign(e);if(this.match(12)){const r=this.startNodeAt(t);for(r.expressions=[n];this.eat(12);)r.expressions.push(this.parseMaybeAssign(e));return this.toReferencedList(r.expressions),this.finishNode(r,"SequenceExpression")}return n}parseMaybeAssignDisallowIn(e,t){return this.disallowInAnd(()=>this.parseMaybeAssign(e,t))}parseMaybeAssignAllowIn(e,t){return this.allowInAnd(()=>this.parseMaybeAssign(e,t))}setOptionalParametersError(e){e.optionalParametersLoc=this.state.startLoc}parseMaybeAssign(e,t){const n=this.state.startLoc,r=this.isContextual(108);if(r&&this.prodParam.hasYield){this.next();let e=this.parseYield(n);return t&&(e=t.call(this,e,n)),e}let i;e?i=!1:(e=new ht,i=!0);const{type:s}=this.state;(10===s||K(s))&&(this.state.potentialArrowAt=this.state.start);let a=this.parseMaybeConditional(e);if(t&&(a=t.call(this,a,n)),(o=this.state.type)>=29&&o<=33){const t=this.startNodeAt(n),r=this.state.value;if(t.operator=r,this.match(29)){this.toAssignable(a,!0),t.left=a;const r=n.index;null!=e.doubleProtoLoc&&e.doubleProtoLoc.index>=r&&(e.doubleProtoLoc=null),null!=e.shorthandAssignLoc&&e.shorthandAssignLoc.index>=r&&(e.shorthandAssignLoc=null),null!=e.privateKeyLoc&&e.privateKeyLoc.index>=r&&(this.checkDestructuringPrivate(e),e.privateKeyLoc=null),null!=e.voidPatternLoc&&e.voidPatternLoc.index>=r&&(e.voidPatternLoc=null)}else t.left=a;return this.next(),t.right=this.parseMaybeAssign(),this.checkLVal(a,this.finishNode(t,"AssignmentExpression"),void 0,void 0,void 0,void 0,"||="===r||"&&="===r||"??="===r),t}var o;if(i&&this.checkExpressionErrors(e,!0),r){const{type:e}=this.state;if((this.hasPlugin("v8intrinsic")?$(e):$(e)&&!this.match(54))&&!this.isAmbiguousPrefixOrIdentifier())return this.raiseOverwrite(y.YieldNotInGeneratorFunction,n),this.parseYield(n)}return a}parseMaybeConditional(e){const t=this.state.startLoc,n=this.state.potentialArrowAt,r=this.parseExprOps(e);return this.shouldExitDescending(r,n)?r:this.parseConditional(r,t,e)}parseConditional(e,t,n){if(this.eat(17)){const n=this.startNodeAt(t);return n.test=e,n.consequent=this.parseMaybeAssignAllowIn(),this.expect(14),n.alternate=this.parseMaybeAssign(),this.finishNode(n,"ConditionalExpression")}return e}parseMaybeUnaryOrPrivate(e){return this.match(139)?this.parsePrivateName():this.parseMaybeUnary(e)}parseExprOps(e){const t=this.state.startLoc,n=this.state.potentialArrowAt,r=this.parseMaybeUnaryOrPrivate(e);return this.shouldExitDescending(r,n)?r:this.parseExprOp(r,t,-1)}parseExprOp(e,t,n){if(this.isPrivateName(e)){const t=this.getPrivateNameSV(e);(n>=H(58)||!this.prodParam.hasIn||!this.match(58))&&this.raise(y.PrivateInExpectedIn,e,{identifierName:t}),this.classScope.usePrivateName(t,e.loc.start)}const r=this.state.type;if((i=r)>=39&&i<=59&&(this.prodParam.hasIn||!this.match(58))){let i=H(r);if(i>n){if(39===r){if(this.expectPlugin("pipelineOperator"),this.state.inFSharpPipelineDirectBody)return e;this.checkPipelineAtInfixOperator(e,t)}const s=this.startNodeAt(t);s.left=e,s.operator=this.state.value;const a=41===r||42===r,o=40===r;if(o&&(i=H(42)),this.next(),39===r&&this.hasPlugin(["pipelineOperator",{proposal:"minimal"}])&&96===this.state.type&&this.prodParam.hasAwait)throw this.raise(y.UnexpectedAwaitAfterPipelineBody,this.state.startLoc);s.right=this.parseExprOpRightExpr(r,i);const l=this.finishNode(s,a||o?"LogicalExpression":"BinaryExpression"),c=this.state.type;if(o&&(41===c||42===c)||a&&40===c)throw this.raise(y.MixingCoalesceWithLogical,this.state.startLoc);return this.parseExprOp(l,t,n)}}var i;return e}parseExprOpRightExpr(e,t){const n=this.state.startLoc;if(39===e){switch(this.getPluginOption("pipelineOperator","proposal")){case"hack":return this.withTopicBindingContext(()=>this.parseHackPipeBody());case"fsharp":return this.withSoloAwaitPermittingContext(()=>this.parseFSharpPipelineBody(t))}if("smart"===this.getPluginOption("pipelineOperator","proposal"))return this.withTopicBindingContext(()=>{if(this.prodParam.hasYield&&this.isContextual(108))throw this.raise(y.PipeBodyIsTighter,this.state.startLoc);return this.parseSmartPipelineBodyInStyle(this.parseExprOpBaseRightExpr(e,t),n)})}return this.parseExprOpBaseRightExpr(e,t)}parseExprOpBaseRightExpr(e,t){const n=this.state.startLoc;return this.parseExprOp(this.parseMaybeUnaryOrPrivate(),n,57===e?t-1:t)}parseHackPipeBody(){var e;const{startLoc:t}=this.state,n=this.parseMaybeAssign();return!p.has(n.type)||null!=(e=n.extra)&&e.parenthesized||this.raise(y.PipeUnparenthesizedBody,t,{type:n.type}),this.topicReferenceWasUsedInCurrentContext()||this.raise(y.PipeTopicUnused,t),n}checkExponentialAfterUnary(e){this.match(57)&&this.raise(y.UnexpectedTokenUnaryExponentiation,e.argument)}parseMaybeUnary(e,t){const n=this.state.startLoc,r=this.isContextual(96);if(r&&this.recordAwaitIfAllowed()){this.next();const e=this.parseAwait(n);return t||this.checkExponentialAfterUnary(e),e}const i=this.match(34),s=this.startNode();if(a=this.state.type,B[a]){s.operator=this.state.value,s.prefix=!0,this.match(72)&&this.expectPlugin("throwExpressions");const n=this.match(89);if(this.next(),s.argument=this.parseMaybeUnary(null,!0),this.checkExpressionErrors(e,!0),this.state.strict&&n){const e=s.argument;"Identifier"===e.type?this.raise(y.StrictDelete,s):this.hasPropertyAsPrivateName(e)&&this.raise(y.DeletePrivateField,s)}if(!i)return t||this.checkExponentialAfterUnary(s),this.finishNode(s,"UnaryExpression")}var a;const o=this.parseUpdate(s,i,e);if(r){const{type:e}=this.state;if((this.hasPlugin("v8intrinsic")?$(e):$(e)&&!this.match(54))&&!this.isAmbiguousPrefixOrIdentifier())return this.raiseOverwrite(y.AwaitNotInAsyncContext,n),this.parseAwait(n)}return o}parseUpdate(e,t,n){if(t){const t=e;return this.checkLVal(t.argument,this.finishNode(t,"UpdateExpression")),e}const r=this.state.startLoc;let i=this.parseExprSubscripts(n);if(this.checkExpressionErrors(n,!1))return i;for(;J(this.state.type)&&!this.canInsertSemicolon();){const e=this.startNodeAt(r);e.operator=this.state.value,e.prefix=!1,e.argument=i,this.next(),this.checkLVal(i,i=this.finishNode(e,"UpdateExpression"))}return i}parseExprSubscripts(e){const t=this.state.startLoc,n=this.state.potentialArrowAt,r=this.parseExprAtom(e);return this.shouldExitDescending(r,n)?r:this.parseSubscripts(r,t)}parseSubscripts(e,t,n){const r={optionalChainMember:!1,maybeAsyncArrow:this.atPossibleAsyncArrow(e),stop:!1};do{e=this.parseSubscript(e,t,n,r),r.maybeAsyncArrow=!1}while(!r.stop);return e}parseSubscript(e,t,n,r){const{type:i}=this.state;if(!n&&15===i)return this.parseBind(e,t,n,r);if(z(i))return this.parseTaggedTemplateExpression(e,t,r);let s=!1;if(18===i){if(n&&(this.raise(y.OptionalChainingNoNew,this.state.startLoc),40===this.lookaheadCharCode()))return this.stopParseSubscript(e,r);r.optionalChainMember=s=!0,this.next()}if(!n&&this.match(10))return this.parseCoverCallAndAsyncArrowHead(e,t,r,s);{const n=this.eat(0);return n||s||this.eat(16)?this.parseMember(e,t,r,n,s):this.stopParseSubscript(e,r)}}stopParseSubscript(e,t){return t.stop=!0,e}parseMember(e,t,n,r,i){const s=this.startNodeAt(t);return s.object=e,s.computed=r,r?(s.property=this.parseExpression(),this.expect(3)):this.match(139)?("Super"===e.type&&this.raise(y.SuperPrivateField,t),this.classScope.usePrivateName(this.state.value,this.state.startLoc),s.property=this.parsePrivateName()):s.property=this.parseIdentifier(!0),n.optionalChainMember?(s.optional=i,this.finishNode(s,"OptionalMemberExpression")):this.finishNode(s,"MemberExpression")}parseBind(e,t,n,r){const i=this.startNodeAt(t);return i.object=e,this.next(),i.callee=this.parseNoCallExpr(),r.stop=!0,this.parseSubscripts(this.finishNode(i,"BindExpression"),t,n)}parseCoverCallAndAsyncArrowHead(e,t,n,r){const i=this.state.maybeInArrowParameters;let s=null;this.state.maybeInArrowParameters=!0,this.next();const a=this.startNodeAt(t);a.callee=e;const{maybeAsyncArrow:o,optionalChainMember:l}=n;o&&(this.expressionScope.enter(new lt(2)),s=new ht),l&&(a.optional=r),a.arguments=r?this.parseCallExpressionArguments():this.parseCallExpressionArguments("Super"!==e.type,a,s);let c=this.finishCallExpression(a,l);return o&&this.shouldParseAsyncArrow()&&!r?(n.stop=!0,this.checkDestructuringPrivate(s),this.expressionScope.validateAsPattern(),this.expressionScope.exit(),c=this.parseAsyncArrowFromCallExpression(this.startNodeAt(t),c)):(o&&(this.checkExpressionErrors(s,!0),this.expressionScope.exit()),this.toReferencedArguments(c)),this.state.maybeInArrowParameters=i,c}toReferencedArguments(e,t){this.toReferencedListDeep(e.arguments,t)}parseTaggedTemplateExpression(e,t,n){const r=this.startNodeAt(t);return r.tag=e,r.quasi=this.parseTemplate(!0),n.optionalChainMember&&this.raise(y.OptionalChainingNoTemplate,t),this.finishNode(r,"TaggedTemplateExpression")}atPossibleAsyncArrow(e){return"Identifier"===e.type&&"async"===e.name&&this.state.lastTokEndLoc.index===e.end&&!this.canInsertSemicolon()&&e.end-e.start===5&&this.offsetToSourcePos(e.start)===this.state.potentialArrowAt}finishCallExpression(e,t){if("Import"===e.callee.type)if(0===e.arguments.length||e.arguments.length>2)this.raise(y.ImportCallArity,e);else for(const t of e.arguments)"SpreadElement"===t.type&&this.raise(y.ImportCallSpreadArgument,t);return this.finishNode(e,t?"OptionalCallExpression":"CallExpression")}parseCallExpressionArguments(e,t,n){const r=[];let i=!0;const s=this.state.inFSharpPipelineDirectBody;for(this.state.inFSharpPipelineDirectBody=!1;!this.eat(11);){if(i)i=!1;else if(this.expect(12),this.match(11)){t&&this.addTrailingCommaExtraToNode(t),this.next();break}r.push(this.parseExprListItem(11,!1,n,e))}return this.state.inFSharpPipelineDirectBody=s,r}shouldParseAsyncArrow(){return this.match(19)&&!this.canInsertSemicolon()}parseAsyncArrowFromCallExpression(e,t){var n;return this.resetPreviousNodeTrailingComments(t),this.expect(19),this.parseArrowExpression(e,t.arguments,!0,null==(n=t.extra)?void 0:n.trailingCommaLoc),t.innerComments&&Ve(e,t.innerComments),t.callee.trailingComments&&Ve(e,t.callee.trailingComments),e}parseNoCallExpr(){const e=this.state.startLoc;return this.parseSubscripts(this.parseExprAtom(),e,!0)}parseExprAtom(e){let t,n=null;const{type:r}=this.state;switch(r){case 79:return this.parseSuper();case 83:return t=this.startNode(),this.next(),this.match(16)?this.parseImportMetaPropertyOrPhaseCall(t):this.match(10)?512&this.optionFlags?this.parseImportCall(t):this.finishNode(t,"Import"):(this.raise(y.UnsupportedImport,this.state.lastTokStartLoc),this.finishNode(t,"Import"));case 78:return t=this.startNode(),this.next(),this.finishNode(t,"ThisExpression");case 90:return this.parseDo(this.startNode(),!1);case 56:case 31:return this.readRegexp(),this.parseRegExpLiteral(this.state.value);case 135:return this.parseNumericLiteral(this.state.value);case 136:return this.parseBigIntLiteral(this.state.value);case 134:return this.parseStringLiteral(this.state.value);case 84:return this.parseNullLiteral();case 85:return this.parseBooleanLiteral(!0);case 86:return this.parseBooleanLiteral(!1);case 10:{const e=this.state.potentialArrowAt===this.state.start;return this.parseParenAndDistinguishExpression(e)}case 0:return this.parseArrayLike(3,!1,e);case 5:return this.parseObjectLike(8,!1,!1,e);case 68:return this.parseFunctionOrFunctionSent();case 26:n=this.parseDecorators();case 80:return this.parseClass(this.maybeTakeDecorators(n,this.startNode()),!1);case 77:return this.parseNewOrNewTarget();case 25:case 24:return this.parseTemplate(!1);case 15:{t=this.startNode(),this.next(),t.object=null;const e=t.callee=this.parseNoCallExpr();if("MemberExpression"===e.type)return this.finishNode(t,"BindExpression");throw this.raise(y.UnsupportedBind,e)}case 139:return this.raise(y.PrivateInExpectedIn,this.state.startLoc,{identifierName:this.state.value}),this.parsePrivateName();case 33:return this.parseTopicReferenceThenEqualsSign(54,"%");case 32:return this.parseTopicReferenceThenEqualsSign(44,"^");case 37:case 38:return this.parseTopicReference("hack");case 44:case 54:case 27:{const e=this.getPluginOption("pipelineOperator","proposal");if(e)return this.parseTopicReference(e);throw this.unexpected()}case 47:{const e=this.input.codePointAt(this.nextTokenStart());if(se(e)||62===e)throw this.expectOnePlugin(["jsx","flow","typescript"]);throw this.unexpected()}default:if(137===r)return this.parseDecimalLiteral(this.state.value);if(2===r||1===r)return this.parseArrayLike(2===this.state.type?4:3,!0);if(6===r||7===r)return this.parseObjectLike(6===this.state.type?9:8,!1,!0);if(K(r)){if(this.isContextual(127)&&123===this.lookaheadInLineCharCode())return this.parseModuleExpression();const e=this.state.potentialArrowAt===this.state.start,t=this.state.containsEsc,n=this.parseIdentifier();if(!t&&"async"===n.name&&!this.canInsertSemicolon()){const{type:e}=this.state;if(68===e)return this.resetPreviousNodeTrailingComments(n),this.next(),this.parseAsyncFunctionExpression(this.startNodeAtNode(n));if(K(e))return 61===this.lookaheadCharCode()?this.parseAsyncArrowUnaryFunction(this.startNodeAtNode(n)):n;if(90===e)return this.resetPreviousNodeTrailingComments(n),this.parseDo(this.startNodeAtNode(n),!0)}return e&&this.match(19)&&!this.canInsertSemicolon()?(this.next(),this.parseArrowExpression(this.startNodeAtNode(n),[n],!1)):n}throw this.unexpected()}}parseTopicReferenceThenEqualsSign(e,t){const n=this.getPluginOption("pipelineOperator","proposal");if(n)return this.state.type=e,this.state.value=t,this.state.pos--,this.state.end--,this.state.endLoc=r(this.state.endLoc,-1),this.parseTopicReference(n);throw this.unexpected()}parseTopicReference(e){const t=this.startNode(),n=this.state.startLoc,r=this.state.type;return this.next(),this.finishTopicReference(t,n,e,r)}finishTopicReference(e,t,n,r){if(this.testTopicReferenceConfiguration(n,t,r))return"hack"===n?(this.topicReferenceIsAllowedInCurrentContext()||this.raise(y.PipeTopicUnbound,t),this.registerTopicReference(),this.finishNode(e,"TopicReference")):(this.topicReferenceIsAllowedInCurrentContext()||this.raise(y.PrimaryTopicNotAllowed,t),this.registerTopicReference(),this.finishNode(e,"PipelinePrimaryTopicReference"));throw this.raise(y.PipeTopicUnconfiguredToken,t,{token:X(r)})}testTopicReferenceConfiguration(e,t,n){switch(e){case"hack":return this.hasPlugin(["pipelineOperator",{topicToken:X(n)}]);case"smart":return 27===n;default:throw this.raise(y.PipeTopicRequiresHackPipes,t)}}parseAsyncArrowUnaryFunction(e){this.prodParam.enter(Re(!0,this.prodParam.hasYield));const t=[this.parseIdentifier()];return this.prodParam.exit(),this.hasPrecedingLineBreak()&&this.raise(y.LineTerminatorBeforeArrow,this.state.curPosition()),this.expect(19),this.parseArrowExpression(e,t,!0)}parseDo(e,t){this.expectPlugin("doExpressions"),t&&this.expectPlugin("asyncDoExpressions"),e.async=t,this.next();const n=this.state.labels;return this.state.labels=[],t?(this.prodParam.enter(2),e.body=this.parseBlock(),this.prodParam.exit()):e.body=this.parseBlock(),this.state.labels=n,this.finishNode(e,"DoExpression")}parseSuper(){const e=this.startNode();return this.next(),this.match(10)&&!this.scope.allowDirectSuper?16&this.optionFlags||this.raise(y.SuperNotAllowed,e):this.scope.allowSuper||16&this.optionFlags||this.raise(y.UnexpectedSuper,e),this.match(10)||this.match(0)||this.match(16)||this.raise(y.UnsupportedSuper,e),this.finishNode(e,"Super")}parsePrivateName(){const e=this.startNode(),t=this.startNodeAt(r(this.state.startLoc,1)),n=this.state.value;return this.next(),e.id=this.createIdentifier(t,n),this.finishNode(e,"PrivateName")}parseFunctionOrFunctionSent(){const e=this.startNode();if(this.next(),this.prodParam.hasYield&&this.match(16)){const t=this.createIdentifier(this.startNodeAtNode(e),"function");return this.next(),this.match(103)?this.expectPlugin("functionSent"):this.hasPlugin("functionSent")||this.unexpected(),this.parseMetaProperty(e,t,"sent")}return this.parseFunction(e)}parseMetaProperty(e,t,n){e.meta=t;const r=this.state.containsEsc;return e.property=this.parseIdentifier(!0),(e.property.name!==n||r)&&this.raise(y.UnsupportedMetaProperty,e.property,{target:t.name,onlyValidPropertyName:n}),this.finishNode(e,"MetaProperty")}parseImportMetaPropertyOrPhaseCall(e){if(this.next(),this.isContextual(105)||this.isContextual(97)){const t=this.isContextual(105);return this.expectPlugin(t?"sourcePhaseImports":"deferredImportEvaluation"),this.next(),e.phase=t?"source":"defer",this.parseImportCall(e)}{const t=this.createIdentifierAt(this.startNodeAtNode(e),"import",this.state.lastTokStartLoc);return this.isContextual(101)&&(this.inModule||this.raise(y.ImportMetaOutsideModule,t),this.sawUnambiguousESM=!0),this.parseMetaProperty(e,t,"meta")}}parseLiteralAtNode(e,t,n){return this.addExtra(n,"rawValue",e),this.addExtra(n,"raw",this.input.slice(this.offsetToSourcePos(n.start),this.state.end)),n.value=e,this.next(),this.finishNode(n,t)}parseLiteral(e,t){const n=this.startNode();return this.parseLiteralAtNode(e,t,n)}parseStringLiteral(e){return this.parseLiteral(e,"StringLiteral")}parseNumericLiteral(e){return this.parseLiteral(e,"NumericLiteral")}parseBigIntLiteral(e){return this.parseLiteral(e,"BigIntLiteral")}parseDecimalLiteral(e){return this.parseLiteral(e,"DecimalLiteral")}parseRegExpLiteral(e){const t=this.startNode();return this.addExtra(t,"raw",this.input.slice(this.offsetToSourcePos(t.start),this.state.end)),t.pattern=e.pattern,t.flags=e.flags,this.next(),this.finishNode(t,"RegExpLiteral")}parseBooleanLiteral(e){const t=this.startNode();return t.value=e,this.next(),this.finishNode(t,"BooleanLiteral")}parseNullLiteral(){const e=this.startNode();return this.next(),this.finishNode(e,"NullLiteral")}parseParenAndDistinguishExpression(e){const t=this.state.startLoc;let n;this.next(),this.expressionScope.enter(new lt(1));const r=this.state.maybeInArrowParameters,i=this.state.inFSharpPipelineDirectBody;this.state.maybeInArrowParameters=!0,this.state.inFSharpPipelineDirectBody=!1;const s=this.state.startLoc,a=[],o=new ht;let l,c,p=!0;for(;!this.match(11);){if(p)p=!1;else if(this.expect(12,null===o.optionalParametersLoc?null:o.optionalParametersLoc),this.match(11)){c=this.state.startLoc;break}if(this.match(21)){const e=this.state.startLoc;if(l=this.state.startLoc,a.push(this.parseParenItem(this.parseRestBinding(),e)),!this.checkCommaAfterRest(41))break}else a.push(this.parseMaybeAssignAllowInOrVoidPattern(11,o,this.parseParenItem))}const u=this.state.lastTokEndLoc;this.expect(11),this.state.maybeInArrowParameters=r,this.state.inFSharpPipelineDirectBody=i;let h=this.startNodeAt(t);return e&&this.shouldParseArrow(a)&&(h=this.parseArrow(h))?(this.checkDestructuringPrivate(o),this.expressionScope.validateAsPattern(),this.expressionScope.exit(),this.parseArrowExpression(h,a,!1),h):(this.expressionScope.exit(),a.length||this.unexpected(this.state.lastTokStartLoc),c&&this.unexpected(c),l&&this.unexpected(l),this.checkExpressionErrors(o,!0),this.toReferencedListDeep(a,!0),a.length>1?(n=this.startNodeAt(s),n.expressions=a,this.finishNode(n,"SequenceExpression"),this.resetEndLocation(n,u)):n=a[0],this.wrapParenthesis(t,n))}wrapParenthesis(e,t){if(!(1024&this.optionFlags))return this.addExtra(t,"parenthesized",!0),this.addExtra(t,"parenStart",e.index),this.takeSurroundingComments(t,e.index,this.state.lastTokEndLoc.index),t;const n=this.startNodeAt(e);return n.expression=t,this.finishNode(n,"ParenthesizedExpression")}shouldParseArrow(e){return!this.canInsertSemicolon()}parseArrow(e){if(this.eat(19))return e}parseParenItem(e,t){return e}parseNewOrNewTarget(){const e=this.startNode();if(this.next(),this.match(16)){const t=this.createIdentifier(this.startNodeAtNode(e),"new");this.next();const n=this.parseMetaProperty(e,t,"target");return this.scope.allowNewTarget||this.raise(y.UnexpectedNewTarget,n),n}return this.parseNew(e)}parseNew(e){if(this.parseNewCallee(e),this.eat(10)){const t=this.parseExprList(11);this.toReferencedList(t),e.arguments=t}else e.arguments=[];return this.finishNode(e,"NewExpression")}parseNewCallee(e){const t=this.match(83),n=this.parseNoCallExpr();e.callee=n,!t||"Import"!==n.type&&"ImportExpression"!==n.type||this.raise(y.ImportCallNotNewExpression,n)}parseTemplateElement(e){const{start:t,startLoc:n,end:i,value:s}=this.state,a=t+1,o=this.startNodeAt(r(n,1));null===s&&(e||this.raise(y.InvalidEscapeSequenceTemplate,r(this.state.firstInvalidTemplateEscapePos,1)));const l=this.match(24),c=l?-1:-2,p=i+c;o.value={raw:this.input.slice(a,p).replace(/\r\n?/g,"\n"),cooked:null===s?null:s.slice(1,c)},o.tail=l,this.next();const u=this.finishNode(o,"TemplateElement");return this.resetEndLocation(u,r(this.state.lastTokEndLoc,c)),u}parseTemplate(e){const t=this.startNode();let n=this.parseTemplateElement(e);const r=[n],i=[];for(;!n.tail;)i.push(this.parseTemplateSubstitution()),this.readTemplateContinuation(),r.push(n=this.parseTemplateElement(e));return t.expressions=i,t.quasis=r,this.finishNode(t,"TemplateLiteral")}parseTemplateSubstitution(){return this.parseExpression()}parseObjectLike(e,t,n,r){n&&this.expectPlugin("recordAndTuple");const i=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!1;let s=!1,a=!0;const o=this.startNode();for(o.properties=[],this.next();!this.match(e);){if(a)a=!1;else if(this.expect(12),this.match(e)){this.addTrailingCommaExtraToNode(o);break}let i;t?i=this.parseBindingProperty():(i=this.parsePropertyDefinition(r),s=this.checkProto(i,n,s,r)),n&&!this.isObjectProperty(i)&&"SpreadElement"!==i.type&&this.raise(y.InvalidRecordProperty,i),i.shorthand&&this.addExtra(i,"shorthand",!0),o.properties.push(i)}this.next(),this.state.inFSharpPipelineDirectBody=i;let l="ObjectExpression";return t?l="ObjectPattern":n&&(l="RecordExpression"),this.finishNode(o,l)}addTrailingCommaExtraToNode(e){this.addExtra(e,"trailingComma",this.state.lastTokStartLoc.index),this.addExtra(e,"trailingCommaLoc",this.state.lastTokStartLoc,!1)}maybeAsyncOrAccessorProp(e){return!e.computed&&"Identifier"===e.key.type&&(this.isLiteralPropertyName()||this.match(0)||this.match(55))}parsePropertyDefinition(e){let t=[];if(this.match(26))for(this.hasPlugin("decorators")&&this.raise(y.UnsupportedPropertyDecorator,this.state.startLoc);this.match(26);)t.push(this.parseDecorator());const n=this.startNode();let r,i=!1,s=!1;if(this.match(21))return t.length&&this.unexpected(),this.parseSpread();t.length&&(n.decorators=t,t=[]),n.method=!1,e&&(r=this.state.startLoc);let a=this.eat(55);this.parsePropertyNamePrefixOperator(n);const o=this.state.containsEsc;if(this.parsePropertyName(n,e),!a&&!o&&this.maybeAsyncOrAccessorProp(n)){const{key:e}=n,t=e.name;"async"!==t||this.hasPrecedingLineBreak()||(i=!0,this.resetPreviousNodeTrailingComments(e),a=this.eat(55),this.parsePropertyName(n)),"get"!==t&&"set"!==t||(s=!0,this.resetPreviousNodeTrailingComments(e),n.kind=t,this.match(55)&&(a=!0,this.raise(y.AccessorIsGenerator,this.state.curPosition(),{kind:t}),this.next()),this.parsePropertyName(n))}return this.parseObjPropValue(n,r,a,i,!1,s,e)}getGetterSetterExpectedParamCount(e){return"get"===e.kind?0:1}getObjectOrClassMethodParams(e){return e.params}checkGetterSetterParams(e){var t;const n=this.getGetterSetterExpectedParamCount(e),r=this.getObjectOrClassMethodParams(e);r.length!==n&&this.raise("get"===e.kind?y.BadGetterArity:y.BadSetterArity,e),"set"===e.kind&&"RestElement"===(null==(t=r[r.length-1])?void 0:t.type)&&this.raise(y.BadSetterRestParameter,e)}parseObjectMethod(e,t,n,r,i){if(i){const n=this.parseMethod(e,t,!1,!1,!1,"ObjectMethod");return this.checkGetterSetterParams(n),n}if(n||t||this.match(10))return r&&this.unexpected(),e.kind="method",e.method=!0,this.parseMethod(e,t,n,!1,!1,"ObjectMethod")}parseObjectProperty(e,t,n,r){if(e.shorthand=!1,this.eat(14))return e.value=n?this.parseMaybeDefault(this.state.startLoc):this.parseMaybeAssignAllowInOrVoidPattern(8,r),this.finishObjectProperty(e);if(!e.computed&&"Identifier"===e.key.type){if(this.checkReservedWord(e.key.name,e.key.loc.start,!0,!1),n)e.value=this.parseMaybeDefault(t,this.cloneIdentifier(e.key));else if(this.match(29)){const n=this.state.startLoc;null!=r?null===r.shorthandAssignLoc&&(r.shorthandAssignLoc=n):this.raise(y.InvalidCoverInitializedName,n),e.value=this.parseMaybeDefault(t,this.cloneIdentifier(e.key))}else e.value=this.cloneIdentifier(e.key);return e.shorthand=!0,this.finishObjectProperty(e)}}finishObjectProperty(e){return this.finishNode(e,"ObjectProperty")}parseObjPropValue(e,t,n,r,i,s,a){const o=this.parseObjectMethod(e,n,r,i,s)||this.parseObjectProperty(e,t,i,a);return o||this.unexpected(),o}parsePropertyName(e,t){if(this.eat(0))e.computed=!0,e.key=this.parseMaybeAssignAllowIn(),this.expect(3);else{const{type:n,value:r}=this.state;let i;if(V(n))i=this.parseIdentifier(!0);else switch(n){case 135:i=this.parseNumericLiteral(r);break;case 134:i=this.parseStringLiteral(r);break;case 136:i=this.parseBigIntLiteral(r);break;case 139:{const e=this.state.startLoc;null!=t?null===t.privateKeyLoc&&(t.privateKeyLoc=e):this.raise(y.UnexpectedPrivateField,e),i=this.parsePrivateName();break}default:if(137===n){i=this.parseDecimalLiteral(r);break}this.unexpected()}e.key=i,139!==n&&(e.computed=!1)}}initFunction(e,t){e.id=null,e.generator=!1,e.async=t}parseMethod(e,t,n,r,i,s,a=!1){this.initFunction(e,n),e.generator=t,this.scope.enter(530|(a?576:0)|(i?32:0)),this.prodParam.enter(Re(n,e.generator)),this.parseFunctionParams(e,r);const o=this.parseFunctionBodyAndFinish(e,s,!0);return this.prodParam.exit(),this.scope.exit(),o}parseArrayLike(e,t,n){t&&this.expectPlugin("recordAndTuple");const r=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!1;const i=this.startNode();return this.next(),i.elements=this.parseExprList(e,!t,n,i),this.state.inFSharpPipelineDirectBody=r,this.finishNode(i,t?"TupleExpression":"ArrayExpression")}parseArrowExpression(e,t,n,r){this.scope.enter(518);let i=Re(n,!1);!this.match(5)&&this.prodParam.hasIn&&(i|=8),this.prodParam.enter(i),this.initFunction(e,n);const s=this.state.maybeInArrowParameters;return t&&(this.state.maybeInArrowParameters=!0,this.setArrowFunctionParameters(e,t,r)),this.state.maybeInArrowParameters=!1,this.parseFunctionBody(e,!0),this.prodParam.exit(),this.scope.exit(),this.state.maybeInArrowParameters=s,this.finishNode(e,"ArrowFunctionExpression")}setArrowFunctionParameters(e,t,n){this.toAssignableList(t,n,!1),e.params=t}parseFunctionBodyAndFinish(e,t,n=!1){return this.parseFunctionBody(e,!1,n),this.finishNode(e,t)}parseFunctionBody(e,t,n=!1){const r=t&&!this.match(5);if(this.expressionScope.enter(pt()),r)e.body=this.parseMaybeAssign(),this.checkParams(e,!1,t,!1);else{const r=this.state.strict,i=this.state.labels;this.state.labels=[],this.prodParam.enter(4|this.prodParam.currentFlags()),e.body=this.parseBlock(!0,!1,i=>{const s=!this.isSimpleParamList(e.params);i&&s&&this.raise(y.IllegalLanguageModeDirective,"method"!==e.kind&&"constructor"!==e.kind||!e.key?e:e.key.loc.end);const a=!r&&this.state.strict;this.checkParams(e,!(this.state.strict||t||n||s),t,a),this.state.strict&&e.id&&this.checkIdentifier(e.id,65,a)}),this.prodParam.exit(),this.state.labels=i}this.expressionScope.exit()}isSimpleParameter(e){return"Identifier"===e.type}isSimpleParamList(e){for(let t=0,n=e.length;t<n;t++)if(!this.isSimpleParameter(e[t]))return!1;return!0}checkParams(e,t,n,r=!0){const i=!t&&new Set,s={type:"FormalParameters"};for(const t of e.params)this.checkLVal(t,s,5,i,r)}parseExprList(e,t,n,r){const i=[];let s=!0;for(;!this.eat(e);){if(s)s=!1;else if(this.expect(12),this.match(e)){r&&this.addTrailingCommaExtraToNode(r),this.next();break}i.push(this.parseExprListItem(e,t,n))}return i}parseExprListItem(e,t,n,r){let i;if(this.match(12))t||this.raise(y.UnexpectedToken,this.state.curPosition(),{unexpected:","}),i=null;else if(this.match(21)){const e=this.state.startLoc;i=this.parseParenItem(this.parseSpread(n),e)}else if(this.match(17)){this.expectPlugin("partialApplication"),r||this.raise(y.UnexpectedArgumentPlaceholder,this.state.startLoc);const e=this.startNode();this.next(),i=this.finishNode(e,"ArgumentPlaceholder")}else i=this.parseMaybeAssignAllowInOrVoidPattern(e,n,this.parseParenItem);return i}parseIdentifier(e){const t=this.startNode(),n=this.parseIdentifierName(e);return this.createIdentifier(t,n)}createIdentifier(e,t){return e.name=t,e.loc.identifierName=t,this.finishNode(e,"Identifier")}createIdentifierAt(e,t,n){return e.name=t,e.loc.identifierName=t,this.finishNodeAt(e,"Identifier",n)}parseIdentifierName(e){let t;const{startLoc:n,type:r}=this.state;V(r)?t=this.state.value:this.unexpected();const i=r<=92;return e?i&&this.replaceToken(132):this.checkReservedWord(t,n,i,!1),this.next(),t}checkReservedWord(e,t,n,r){if(e.length>10)return;if(!function(e){return ye.has(e)}(e))return;if(n&&function(e){return ce.has(e)}(e))return void this.raise(y.UnexpectedKeyword,t,{keyword:e});if((this.state.strict?r?me:de:he)(e,this.inModule))this.raise(y.UnexpectedReservedWord,t,{reservedWord:e});else if("yield"===e){if(this.prodParam.hasYield)return void this.raise(y.YieldBindingIdentifier,t)}else if("await"===e){if(this.prodParam.hasAwait)return void this.raise(y.AwaitBindingIdentifier,t);if(this.scope.inStaticBlock)return void this.raise(y.AwaitBindingIdentifierInStaticBlock,t);this.expressionScope.recordAsyncArrowParametersError(t)}else if("arguments"===e&&this.scope.inClassAndNotInNonArrowFunction)return void this.raise(y.ArgumentsInClass,t)}recordAwaitIfAllowed(){const e=this.prodParam.hasAwait;return e&&!this.scope.inFunction&&(this.state.hasTopLevelAwait=!0),e}parseAwait(e){const t=this.startNodeAt(e);return this.expressionScope.recordParameterInitializerError(y.AwaitExpressionFormalParameter,t),this.eat(55)&&this.raise(y.ObsoleteAwaitStar,t),this.scope.inFunction||1&this.optionFlags||(this.isAmbiguousPrefixOrIdentifier()?this.ambiguousScriptDifferentAst=!0:this.sawUnambiguousESM=!0),this.state.soloAwait||(t.argument=this.parseMaybeUnary(null,!0)),this.finishNode(t,"AwaitExpression")}isAmbiguousPrefixOrIdentifier(){if(this.hasPrecedingLineBreak())return!0;const{type:e}=this.state;return 53===e||10===e||0===e||z(e)||102===e&&!this.state.containsEsc||138===e||56===e||this.hasPlugin("v8intrinsic")&&54===e}parseYield(e){const t=this.startNodeAt(e);this.expressionScope.recordParameterInitializerError(y.YieldInParameter,t);let n=!1,r=null;if(!this.hasPrecedingLineBreak())switch(n=this.eat(55),this.state.type){case 13:case 140:case 8:case 11:case 3:case 9:case 14:case 12:if(!n)break;default:r=this.parseMaybeAssign()}return t.delegate=n,t.argument=r,this.finishNode(t,"YieldExpression")}parseImportCall(e){if(this.next(),e.source=this.parseMaybeAssignAllowIn(),e.options=null,this.eat(12))if(this.match(11))this.addTrailingCommaExtraToNode(e.source);else if(e.options=this.parseMaybeAssignAllowIn(),this.eat(12)&&(this.addTrailingCommaExtraToNode(e.options),!this.match(11))){do{this.parseMaybeAssignAllowIn()}while(this.eat(12)&&!this.match(11));this.raise(y.ImportCallArity,e)}return this.expect(11),this.finishNode(e,"ImportExpression")}checkPipelineAtInfixOperator(e,t){this.hasPlugin(["pipelineOperator",{proposal:"smart"}])&&"SequenceExpression"===e.type&&this.raise(y.PipelineHeadSequenceExpression,t)}parseSmartPipelineBodyInStyle(e,t){if(this.isSimpleReference(e)){const n=this.startNodeAt(t);return n.callee=e,this.finishNode(n,"PipelineBareFunction")}{const n=this.startNodeAt(t);return this.checkSmartPipeTopicBodyEarlyErrors(t),n.expression=e,this.finishNode(n,"PipelineTopicExpression")}}isSimpleReference(e){switch(e.type){case"MemberExpression":return!e.computed&&this.isSimpleReference(e.object);case"Identifier":return!0;default:return!1}}checkSmartPipeTopicBodyEarlyErrors(e){if(this.match(19))throw this.raise(y.PipelineBodyNoArrow,this.state.startLoc);this.topicReferenceWasUsedInCurrentContext()||this.raise(y.PipelineTopicUnused,e)}withTopicBindingContext(e){const t=this.state.topicContext;this.state.topicContext={maxNumOfResolvableTopics:1,maxTopicIndex:null};try{return e()}finally{this.state.topicContext=t}}withSmartMixTopicForbiddingContext(e){if(!this.hasPlugin(["pipelineOperator",{proposal:"smart"}]))return e();{const t=this.state.topicContext;this.state.topicContext={maxNumOfResolvableTopics:0,maxTopicIndex:null};try{return e()}finally{this.state.topicContext=t}}}withSoloAwaitPermittingContext(e){const t=this.state.soloAwait;this.state.soloAwait=!0;try{return e()}finally{this.state.soloAwait=t}}allowInAnd(e){const t=this.prodParam.currentFlags();if(8&~t){this.prodParam.enter(8|t);try{return e()}finally{this.prodParam.exit()}}return e()}disallowInAnd(e){const t=this.prodParam.currentFlags();if(8&t){this.prodParam.enter(-9&t);try{return e()}finally{this.prodParam.exit()}}return e()}registerTopicReference(){this.state.topicContext.maxTopicIndex=0}topicReferenceIsAllowedInCurrentContext(){return this.state.topicContext.maxNumOfResolvableTopics>=1}topicReferenceWasUsedInCurrentContext(){return null!=this.state.topicContext.maxTopicIndex&&this.state.topicContext.maxTopicIndex>=0}parseFSharpPipelineBody(e){const t=this.state.startLoc;this.state.potentialArrowAt=this.state.start;const n=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!0;const r=this.parseExprOp(this.parseMaybeUnaryOrPrivate(),t,e);return this.state.inFSharpPipelineDirectBody=n,r}parseModuleExpression(){this.expectPlugin("moduleBlocks");const e=this.startNode();this.next(),this.match(5)||this.unexpected(null,5);const t=this.startNodeAt(this.state.endLoc);this.next();const n=this.initializeScopes(!0);this.enterInitialScopes();try{e.body=this.parseProgram(t,8,"module")}finally{n()}return this.finishNode(e,"ModuleExpression")}parseVoidPattern(e){this.expectPlugin("discardBinding");const t=this.startNode();return null!=e&&(e.voidPatternLoc=this.state.startLoc),this.next(),this.finishNode(t,"VoidPattern")}parseMaybeAssignAllowInOrVoidPattern(e,t,n){if(null!=t&&this.match(88)){const n=this.lookaheadCharCode();if(44===n||n===(3===e?93:8===e?125:41)||61===n)return this.parseMaybeDefault(this.state.startLoc,this.parseVoidPattern(t))}return this.parseMaybeAssignAllowIn(t,n)}parsePropertyNamePrefixOperator(e){}}const Dt={kind:1},Lt={kind:2},Mt=/[\uD800-\uDFFF]/u,Ft=/in(?:stanceof)?/y;class Bt extends _t{parseTopLevel(e,t){return e.program=this.parseProgram(t,140,"module"===this.options.sourceType?"module":"script"),e.comments=this.comments,256&this.optionFlags&&(e.tokens=function(e,t,n){for(let i=0;i<e.length;i++){const s=e[i],{type:a}=s;if("number"==typeof a){if(139===a){const{loc:t,start:n,value:a,end:o}=s,l=n+1,c=r(t.start,1);e.splice(i,1,new rt({type:G(27),value:"#",start:n,end:l,startLoc:t.start,endLoc:c}),new rt({type:G(132),value:a,start:l,end:o,startLoc:c,endLoc:t.end})),i++;continue}if(z(a)){const{loc:o,start:l,value:c,end:p}=s,u=l+1,h=r(o.start,1);let d,f,m,y,T;d=96===t.charCodeAt(l-n)?new rt({type:G(22),value:"`",start:l,end:u,startLoc:o.start,endLoc:h}):new rt({type:G(8),value:"}",start:l,end:u,startLoc:o.start,endLoc:h}),24===a?(m=p-1,y=r(o.end,-1),f=null===c?null:c.slice(1,-1),T=new rt({type:G(22),value:"`",start:m,end:p,startLoc:y,endLoc:o.end})):(m=p-2,y=r(o.end,-2),f=null===c?null:c.slice(1,-2),T=new rt({type:G(23),value:"${",start:m,end:p,startLoc:y,endLoc:o.end})),e.splice(i,1,d,new rt({type:G(20),value:f,start:u,end:m,startLoc:h,endLoc:y}),T),i+=2;continue}s.type=G(a)}}return e}(this.tokens,this.input,this.startIndex)),this.finishNode(e,"File")}parseProgram(e,t,n){if(e.sourceType=n,e.interpreter=this.parseInterpreterDirective(),this.parseBlockBody(e,!0,!0,t),this.inModule){if(!(64&this.optionFlags)&&this.scope.undefinedExports.size>0)for(const[e,t]of Array.from(this.scope.undefinedExports))this.raise(y.ModuleExportUndefined,t,{localName:e});this.addExtra(e,"topLevelAwait",this.state.hasTopLevelAwait)}let i;return i=140===t?this.finishNode(e,"Program"):this.finishNodeAt(e,"Program",r(this.state.startLoc,-1)),i}stmtToDirective(e){const t=this.castNodeTo(e,"Directive"),n=this.castNodeTo(e.expression,"DirectiveLiteral"),r=n.value,i=this.input.slice(this.offsetToSourcePos(n.start),this.offsetToSourcePos(n.end)),s=n.value=i.slice(1,-1);return this.addExtra(n,"raw",i),this.addExtra(n,"rawValue",s),this.addExtra(n,"expressionValue",r),t.value=n,delete e.expression,t}parseInterpreterDirective(){if(!this.match(28))return null;const e=this.startNode();return e.value=this.state.value,this.next(),this.finishNode(e,"InterpreterDirective")}isLet(){return!!this.isContextual(100)&&this.hasFollowingBindingAtom()}isUsing(){return!!this.isContextual(107)&&this.nextTokenIsIdentifierOnSameLine()}isForUsing(){if(!this.isContextual(107))return!1;const e=this.nextTokenInLineStart(),t=this.codePointAtPos(e);if(this.isUnparsedContextual(e,"of")){const t=this.lookaheadCharCodeSince(e+2);if(61!==t&&58!==t&&59!==t)return!1}return!(!this.chStartsBindingIdentifier(t,e)&&!this.isUnparsedContextual(e,"void"))}nextTokenIsIdentifierOnSameLine(){const e=this.nextTokenInLineStart(),t=this.codePointAtPos(e);return this.chStartsBindingIdentifier(t,e)}isAwaitUsing(){if(!this.isContextual(96))return!1;let e=this.nextTokenInLineStart();if(this.isUnparsedContextual(e,"using")){e=this.nextTokenInLineStartSince(e+5);const t=this.codePointAtPos(e);if(this.chStartsBindingIdentifier(t,e))return!0}return!1}chStartsBindingIdentifier(e,t){if(se(e)){if(Ft.lastIndex=t,Ft.test(this.input)){const e=this.codePointAtPos(Ft.lastIndex);if(!ae(e)&&92!==e)return!1}return!0}return 92===e}chStartsBindingPattern(e){return 91===e||123===e}hasFollowingBindingAtom(){const e=this.nextTokenStart(),t=this.codePointAtPos(e);return this.chStartsBindingPattern(t)||this.chStartsBindingIdentifier(t,e)}hasInLineFollowingBindingIdentifierOrBrace(){const e=this.nextTokenInLineStart(),t=this.codePointAtPos(e);return 123===t||this.chStartsBindingIdentifier(t,e)}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(e=!1){let t=0;return this.options.annexB&&!this.state.strict&&(t|=4,e&&(t|=8)),this.parseStatementLike(t)}parseStatement(){return this.parseStatementLike(0)}parseStatementLike(e){let t=null;return this.match(26)&&(t=this.parseDecorators(!0)),this.parseStatementContent(e,t)}parseStatementContent(e,t){const n=this.state.type,r=this.startNode(),i=!!(2&e),s=!!(4&e),a=1&e;switch(n){case 60:return this.parseBreakContinueStatement(r,!0);case 63:return this.parseBreakContinueStatement(r,!1);case 64:return this.parseDebuggerStatement(r);case 90:return this.parseDoWhileStatement(r);case 91:return this.parseForStatement(r);case 68:if(46===this.lookaheadCharCode())break;return s||this.raise(this.state.strict?y.StrictFunction:this.options.annexB?y.SloppyFunctionAnnexB:y.SloppyFunction,this.state.startLoc),this.parseFunctionStatement(r,!1,!i&&s);case 80:return i||this.unexpected(),this.parseClass(this.maybeTakeDecorators(t,r),!0);case 69:return this.parseIfStatement(r);case 70:return this.parseReturnStatement(r);case 71:return this.parseSwitchStatement(r);case 72:return this.parseThrowStatement(r);case 73:return this.parseTryStatement(r);case 96:if(this.isAwaitUsing())return this.allowsUsing()?i?this.recordAwaitIfAllowed()||this.raise(y.AwaitUsingNotInAsyncContext,r):this.raise(y.UnexpectedLexicalDeclaration,r):this.raise(y.UnexpectedUsingDeclaration,r),this.next(),this.parseVarStatement(r,"await using");break;case 107:if(this.state.containsEsc||!this.hasInLineFollowingBindingIdentifierOrBrace())break;return this.allowsUsing()?i||this.raise(y.UnexpectedLexicalDeclaration,this.state.startLoc):this.raise(y.UnexpectedUsingDeclaration,this.state.startLoc),this.parseVarStatement(r,"using");case 100:{if(this.state.containsEsc)break;const e=this.nextTokenStart(),t=this.codePointAtPos(e);if(91!==t){if(!i&&this.hasFollowingLineBreak())break;if(!this.chStartsBindingIdentifier(t,e)&&123!==t)break}}case 75:i||this.raise(y.UnexpectedLexicalDeclaration,this.state.startLoc);case 74:{const e=this.state.value;return this.parseVarStatement(r,e)}case 92:return this.parseWhileStatement(r);case 76:return this.parseWithStatement(r);case 5:return this.parseBlock();case 13:return this.parseEmptyStatement(r);case 83:{const e=this.lookaheadCharCode();if(40===e||46===e)break}case 82:{let e;return 8&this.optionFlags||a||this.raise(y.UnexpectedImportExport,this.state.startLoc),this.next(),e=83===n?this.parseImport(r):this.parseExport(r,t),this.assertModuleNodeAllowed(e),e}default:if(this.isAsyncFunction())return i||this.raise(y.AsyncFunctionInSingleStatementContext,this.state.startLoc),this.next(),this.parseFunctionStatement(r,!0,!i&&s)}const o=this.state.value,l=this.parseExpression();return K(n)&&"Identifier"===l.type&&this.eat(14)?this.parseLabeledStatement(r,o,l,e):this.parseExpressionStatement(r,l,t)}assertModuleNodeAllowed(e){8&this.optionFlags||this.inModule||this.raise(y.ImportOutsideModule,e)}decoratorsEnabledBeforeExport(){return!!this.hasPlugin("decorators-legacy")||this.hasPlugin("decorators")&&!1!==this.getPluginOption("decorators","decoratorsBeforeExport")}maybeTakeDecorators(e,t,n){var r;e&&(null!=(r=t.decorators)&&r.length?("boolean"!=typeof this.getPluginOption("decorators","decoratorsBeforeExport")&&this.raise(y.DecoratorsBeforeAfterExport,t.decorators[0]),t.decorators.unshift(...e)):t.decorators=e,this.resetStartLocationFromNode(t,e[0]),n&&this.resetStartLocationFromNode(n,t));return t}canHaveLeadingDecorator(){return this.match(80)}parseDecorators(e){const t=[];do{t.push(this.parseDecorator())}while(this.match(26));if(this.match(82))e||this.unexpected(),this.decoratorsEnabledBeforeExport()||this.raise(y.DecoratorExportClass,this.state.startLoc);else if(!this.canHaveLeadingDecorator())throw this.raise(y.UnexpectedLeadingDecorator,this.state.startLoc);return t}parseDecorator(){this.expectOnePlugin(["decorators","decorators-legacy"]);const e=this.startNode();if(this.next(),this.hasPlugin("decorators")){const t=this.state.startLoc;let n;if(this.match(10)){const t=this.state.startLoc;this.next(),n=this.parseExpression(),this.expect(11),n=this.wrapParenthesis(t,n);const r=this.state.startLoc;e.expression=this.parseMaybeDecoratorArguments(n,t),!1===this.getPluginOption("decorators","allowCallParenthesized")&&e.expression!==n&&this.raise(y.DecoratorArgumentsOutsideParentheses,r)}else{for(n=this.parseIdentifier(!1);this.eat(16);){const e=this.startNodeAt(t);e.object=n,this.match(139)?(this.classScope.usePrivateName(this.state.value,this.state.startLoc),e.property=this.parsePrivateName()):e.property=this.parseIdentifier(!0),e.computed=!1,n=this.finishNode(e,"MemberExpression")}e.expression=this.parseMaybeDecoratorArguments(n,t)}}else e.expression=this.parseExprSubscripts();return this.finishNode(e,"Decorator")}parseMaybeDecoratorArguments(e,t){if(this.eat(10)){const n=this.startNodeAt(t);return n.callee=e,n.arguments=this.parseCallExpressionArguments(),this.toReferencedList(n.arguments),this.finishNode(n,"CallExpression")}return e}parseBreakContinueStatement(e,t){return this.next(),this.isLineTerminator()?e.label=null:(e.label=this.parseIdentifier(),this.semicolon()),this.verifyBreakContinue(e,t),this.finishNode(e,t?"BreakStatement":"ContinueStatement")}verifyBreakContinue(e,t){let n;for(n=0;n<this.state.labels.length;++n){const r=this.state.labels[n];if(null==e.label||r.name===e.label.name){if(null!=r.kind&&(t||1===r.kind))break;if(e.label&&t)break}}if(n===this.state.labels.length){const n=t?"BreakStatement":"ContinueStatement";this.raise(y.IllegalBreakContinue,e,{type:n})}}parseDebuggerStatement(e){return this.next(),this.semicolon(),this.finishNode(e,"DebuggerStatement")}parseHeaderExpression(){this.expect(10);const e=this.parseExpression();return this.expect(11),e}parseDoWhileStatement(e){return this.next(),this.state.labels.push(Dt),e.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.state.labels.pop(),this.expect(92),e.test=this.parseHeaderExpression(),this.eat(13),this.finishNode(e,"DoWhileStatement")}parseForStatement(e){this.next(),this.state.labels.push(Dt);let t=null;if(this.isContextual(96)&&this.recordAwaitIfAllowed()&&(t=this.state.startLoc,this.next()),this.scope.enter(0),this.expect(10),this.match(13))return null!==t&&this.unexpected(t),this.parseFor(e,null);const n=this.isContextual(100);{const r=this.isAwaitUsing(),i=r||this.isForUsing(),s=n&&this.hasFollowingBindingAtom()||i;if(this.match(74)||this.match(75)||s){const n=this.startNode();let s;r?(s="await using",this.recordAwaitIfAllowed()||this.raise(y.AwaitUsingNotInAsyncContext,this.state.startLoc),this.next()):s=this.state.value,this.next(),this.parseVar(n,!0,s);const a=this.finishNode(n,"VariableDeclaration"),o=this.match(58);return o&&i&&this.raise(y.ForInUsing,a),(o||this.isContextual(102))&&1===a.declarations.length?this.parseForIn(e,a,t):(null!==t&&this.unexpected(t),this.parseFor(e,a))}}const r=this.isContextual(95),i=new ht,s=this.parseExpression(!0,i),a=this.isContextual(102);if(a&&(n&&this.raise(y.ForOfLet,s),null===t&&r&&"Identifier"===s.type&&this.raise(y.ForOfAsync,s)),a||this.match(58)){this.checkDestructuringPrivate(i),this.toAssignable(s,!0);const n=a?"ForOfStatement":"ForInStatement";return this.checkLVal(s,{type:n}),this.parseForIn(e,s,t)}return this.checkExpressionErrors(i,!0),null!==t&&this.unexpected(t),this.parseFor(e,s)}parseFunctionStatement(e,t,n){return this.next(),this.parseFunction(e,1|(n?2:0)|(t?8:0))}parseIfStatement(e){return this.next(),e.test=this.parseHeaderExpression(),e.consequent=this.parseStatementOrSloppyAnnexBFunctionDeclaration(),e.alternate=this.eat(66)?this.parseStatementOrSloppyAnnexBFunctionDeclaration():null,this.finishNode(e,"IfStatement")}parseReturnStatement(e){return this.prodParam.hasReturn||this.raise(y.IllegalReturn,this.state.startLoc),this.next(),this.isLineTerminator()?e.argument=null:(e.argument=this.parseExpression(),this.semicolon()),this.finishNode(e,"ReturnStatement")}parseSwitchStatement(e){this.next(),e.discriminant=this.parseHeaderExpression();const t=e.cases=[];let n;this.expect(5),this.state.labels.push(Lt),this.scope.enter(256);for(let e;!this.match(8);)if(this.match(61)||this.match(65)){const r=this.match(61);n&&this.finishNode(n,"SwitchCase"),t.push(n=this.startNode()),n.consequent=[],this.next(),r?n.test=this.parseExpression():(e&&this.raise(y.MultipleDefaultsInSwitch,this.state.lastTokStartLoc),e=!0,n.test=null),this.expect(14)}else n?n.consequent.push(this.parseStatementListItem()):this.unexpected();return this.scope.exit(),n&&this.finishNode(n,"SwitchCase"),this.next(),this.state.labels.pop(),this.finishNode(e,"SwitchStatement")}parseThrowStatement(e){return this.next(),this.hasPrecedingLineBreak()&&this.raise(y.NewlineAfterThrow,this.state.lastTokEndLoc),e.argument=this.parseExpression(),this.semicolon(),this.finishNode(e,"ThrowStatement")}parseCatchClauseParam(){const e=this.parseBindingAtom();return this.scope.enter(this.options.annexB&&"Identifier"===e.type?8:0),this.checkLVal(e,{type:"CatchClause"},9),e}parseTryStatement(e){if(this.next(),e.block=this.parseBlock(),e.handler=null,this.match(62)){const t=this.startNode();this.next(),this.match(10)?(this.expect(10),t.param=this.parseCatchClauseParam(),this.expect(11)):(t.param=null,this.scope.enter(0)),t.body=this.withSmartMixTopicForbiddingContext(()=>this.parseBlock(!1,!1)),this.scope.exit(),e.handler=this.finishNode(t,"CatchClause")}return e.finalizer=this.eat(67)?this.parseBlock():null,e.handler||e.finalizer||this.raise(y.NoCatchOrFinally,e),this.finishNode(e,"TryStatement")}parseVarStatement(e,t,n=!1){return this.next(),this.parseVar(e,!1,t,n),this.semicolon(),this.finishNode(e,"VariableDeclaration")}parseWhileStatement(e){return this.next(),e.test=this.parseHeaderExpression(),this.state.labels.push(Dt),e.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.state.labels.pop(),this.finishNode(e,"WhileStatement")}parseWithStatement(e){return this.state.strict&&this.raise(y.StrictWith,this.state.startLoc),this.next(),e.object=this.parseHeaderExpression(),e.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.finishNode(e,"WithStatement")}parseEmptyStatement(e){return this.next(),this.finishNode(e,"EmptyStatement")}parseLabeledStatement(e,t,n,r){for(const e of this.state.labels)e.name===t&&this.raise(y.LabelRedeclaration,n,{labelName:t});const i=(s=this.state.type)>=90&&s<=92?1:this.match(71)?2:null;var s;for(let t=this.state.labels.length-1;t>=0;t--){const n=this.state.labels[t];if(n.statementStart!==e.start)break;n.statementStart=this.sourceToOffsetPos(this.state.start),n.kind=i}return this.state.labels.push({name:t,kind:i,statementStart:this.sourceToOffsetPos(this.state.start)}),e.body=8&r?this.parseStatementOrSloppyAnnexBFunctionDeclaration(!0):this.parseStatement(),this.state.labels.pop(),e.label=n,this.finishNode(e,"LabeledStatement")}parseExpressionStatement(e,t,n){return e.expression=t,this.semicolon(),this.finishNode(e,"ExpressionStatement")}parseBlock(e=!1,t=!0,n){const r=this.startNode();return e&&this.state.strictErrors.clear(),this.expect(5),t&&this.scope.enter(0),this.parseBlockBody(r,e,!1,8,n),t&&this.scope.exit(),this.finishNode(r,"BlockStatement")}isValidDirective(e){return"ExpressionStatement"===e.type&&"StringLiteral"===e.expression.type&&!e.expression.extra.parenthesized}parseBlockBody(e,t,n,r,i){const s=e.body=[],a=e.directives=[];this.parseBlockOrModuleBlockBody(s,t?a:void 0,n,r,i)}parseBlockOrModuleBlockBody(e,t,n,r,i){const s=this.state.strict;let a=!1,o=!1;for(;!this.match(r);){const r=n?this.parseModuleItem():this.parseStatementListItem();if(t&&!o){if(this.isValidDirective(r)){const e=this.stmtToDirective(r);t.push(e),a||"use strict"!==e.value.value||(a=!0,this.setStrict(!0));continue}o=!0,this.state.strictErrors.clear()}e.push(r)}null==i||i.call(this,a),s||this.setStrict(!1),this.next()}parseFor(e,t){return e.init=t,this.semicolon(!1),e.test=this.match(13)?null:this.parseExpression(),this.semicolon(!1),e.update=this.match(11)?null:this.parseExpression(),this.expect(11),e.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.scope.exit(),this.state.labels.pop(),this.finishNode(e,"ForStatement")}parseForIn(e,t,n){const r=this.match(58);return this.next(),r?null!==n&&this.unexpected(n):e.await=null!==n,"VariableDeclaration"!==t.type||null==t.declarations[0].init||r&&this.options.annexB&&!this.state.strict&&"var"===t.kind&&"Identifier"===t.declarations[0].id.type||this.raise(y.ForInOfLoopInitializer,t,{type:r?"ForInStatement":"ForOfStatement"}),"AssignmentPattern"===t.type&&this.raise(y.InvalidLhs,t,{ancestor:{type:"ForStatement"}}),e.left=t,e.right=r?this.parseExpression():this.parseMaybeAssignAllowIn(),this.expect(11),e.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.scope.exit(),this.state.labels.pop(),this.finishNode(e,r?"ForInStatement":"ForOfStatement")}parseVar(e,t,n,r=!1){const i=e.declarations=[];for(e.kind=n;;){const e=this.startNode();if(this.parseVarId(e,n),e.init=this.eat(29)?t?this.parseMaybeAssignDisallowIn():this.parseMaybeAssignAllowIn():null,null!==e.init||r||("Identifier"===e.id.type||t&&(this.match(58)||this.isContextual(102))?"const"!==n&&"using"!==n&&"await using"!==n||this.match(58)||this.isContextual(102)||this.raise(y.DeclarationMissingInitializer,this.state.lastTokEndLoc,{kind:n}):this.raise(y.DeclarationMissingInitializer,this.state.lastTokEndLoc,{kind:"destructuring"})),i.push(this.finishNode(e,"VariableDeclarator")),!this.eat(12))break}return e}parseVarId(e,t){const n=this.parseBindingAtom();"using"===t||"await using"===t?"ArrayPattern"!==n.type&&"ObjectPattern"!==n.type||this.raise(y.UsingDeclarationHasBindingPattern,n.loc.start):"VoidPattern"===n.type&&this.raise(y.UnexpectedVoidPattern,n.loc.start),this.checkLVal(n,{type:"VariableDeclarator"},"var"===t?5:8201),e.id=n}parseAsyncFunctionExpression(e){return this.parseFunction(e,8)}parseFunction(e,t=0){const n=2&t,r=!!(1&t),i=r&&!(4&t),s=!!(8&t);this.initFunction(e,s),this.match(55)&&(n&&this.raise(y.GeneratorInSingleStatementContext,this.state.startLoc),this.next(),e.generator=!0),r&&(e.id=this.parseFunctionId(i));const a=this.state.maybeInArrowParameters;return this.state.maybeInArrowParameters=!1,this.scope.enter(514),this.prodParam.enter(Re(s,e.generator)),r||(e.id=this.parseFunctionId()),this.parseFunctionParams(e,!1),this.withSmartMixTopicForbiddingContext(()=>{this.parseFunctionBodyAndFinish(e,r?"FunctionDeclaration":"FunctionExpression")}),this.prodParam.exit(),this.scope.exit(),r&&!n&&this.registerFunctionStatementId(e),this.state.maybeInArrowParameters=a,e}parseFunctionId(e){return e||K(this.state.type)?this.parseIdentifier():null}parseFunctionParams(e,t){this.expect(10),this.expressionScope.enter(new ot(3)),e.params=this.parseBindingList(11,41,2|(t?4:0)),this.expressionScope.exit()}registerFunctionStatementId(e){e.id&&this.scope.declareName(e.id.name,!this.options.annexB||this.state.strict||e.generator||e.async?this.scope.treatFunctionsAsVar?5:8201:17,e.id.loc.start)}parseClass(e,t,n){this.next();const r=this.state.strict;return this.state.strict=!0,this.parseClassId(e,t,n),this.parseClassSuper(e),e.body=this.parseClassBody(!!e.superClass,r),this.finishNode(e,t?"ClassDeclaration":"ClassExpression")}isClassProperty(){return this.match(29)||this.match(13)||this.match(8)}isClassMethod(){return this.match(10)}nameIsConstructor(e){return"Identifier"===e.type&&"constructor"===e.name||"StringLiteral"===e.type&&"constructor"===e.value}isNonstaticConstructor(e){return!e.computed&&!e.static&&this.nameIsConstructor(e.key)}parseClassBody(e,t){this.classScope.enter();const n={hadConstructor:!1,hadSuperClass:e};let r=[];const i=this.startNode();if(i.body=[],this.expect(5),this.withSmartMixTopicForbiddingContext(()=>{for(;!this.match(8);){if(this.eat(13)){if(r.length>0)throw this.raise(y.DecoratorSemicolon,this.state.lastTokEndLoc);continue}if(this.match(26)){r.push(this.parseDecorator());continue}const e=this.startNode();r.length&&(e.decorators=r,this.resetStartLocationFromNode(e,r[0]),r=[]),this.parseClassMember(i,e,n),"constructor"===e.kind&&e.decorators&&e.decorators.length>0&&this.raise(y.DecoratorConstructor,e)}}),this.state.strict=t,this.next(),r.length)throw this.raise(y.TrailingDecorator,this.state.startLoc);return this.classScope.exit(),this.finishNode(i,"ClassBody")}parseClassMemberFromModifier(e,t){const n=this.parseIdentifier(!0);if(this.isClassMethod()){const r=t;return r.kind="method",r.computed=!1,r.key=n,r.static=!1,this.pushClassMethod(e,r,!1,!1,!1,!1),!0}if(this.isClassProperty()){const r=t;return r.computed=!1,r.key=n,r.static=!1,e.body.push(this.parseClassProperty(r)),!0}return this.resetPreviousNodeTrailingComments(n),!1}parseClassMember(e,t,n){const r=this.isContextual(106);if(r){if(this.parseClassMemberFromModifier(e,t))return;if(this.eat(5))return void this.parseClassStaticBlock(e,t)}this.parseClassMemberWithIsStatic(e,t,n,r)}parseClassMemberWithIsStatic(e,t,n,r){const i=t,s=t,a=t,o=t,l=t,c=i,p=i;if(t.static=r,this.parsePropertyNamePrefixOperator(t),this.eat(55)){c.kind="method";const t=this.match(139);return this.parseClassElementName(c),this.parsePostMemberNameModifiers(c),t?void this.pushClassPrivateMethod(e,s,!0,!1):(this.isNonstaticConstructor(i)&&this.raise(y.ConstructorIsGenerator,i.key),void this.pushClassMethod(e,i,!0,!1,!1,!1))}const u=!this.state.containsEsc&&K(this.state.type),h=this.parseClassElementName(t),d=u?h.name:null,f=this.isPrivateName(h),m=this.state.startLoc;if(this.parsePostMemberNameModifiers(p),this.isClassMethod()){if(c.kind="method",f)return void this.pushClassPrivateMethod(e,s,!1,!1);const r=this.isNonstaticConstructor(i);let a=!1;r&&(i.kind="constructor",n.hadConstructor&&!this.hasPlugin("typescript")&&this.raise(y.DuplicateConstructor,h),r&&this.hasPlugin("typescript")&&t.override&&this.raise(y.OverrideOnConstructor,h),n.hadConstructor=!0,a=n.hadSuperClass),this.pushClassMethod(e,i,!1,!1,r,a)}else if(this.isClassProperty())f?this.pushClassPrivateProperty(e,o):this.pushClassProperty(e,a);else if("async"!==d||this.isLineTerminator())if("get"!==d&&"set"!==d||this.match(55)&&this.isLineTerminator())if("accessor"!==d||this.isLineTerminator())this.isLineTerminator()?f?this.pushClassPrivateProperty(e,o):this.pushClassProperty(e,a):this.unexpected();else{this.expectPlugin("decoratorAutoAccessors"),this.resetPreviousNodeTrailingComments(h);const t=this.match(139);this.parseClassElementName(a),this.pushClassAccessorProperty(e,l,t)}else{this.resetPreviousNodeTrailingComments(h),c.kind=d;const t=this.match(139);this.parseClassElementName(i),t?this.pushClassPrivateMethod(e,s,!1,!1):(this.isNonstaticConstructor(i)&&this.raise(y.ConstructorIsAccessor,i.key),this.pushClassMethod(e,i,!1,!1,!1,!1)),this.checkGetterSetterParams(i)}else{this.resetPreviousNodeTrailingComments(h);const t=this.eat(55);p.optional&&this.unexpected(m),c.kind="method";const n=this.match(139);this.parseClassElementName(c),this.parsePostMemberNameModifiers(p),n?this.pushClassPrivateMethod(e,s,t,!0):(this.isNonstaticConstructor(i)&&this.raise(y.ConstructorIsAsync,i.key),this.pushClassMethod(e,i,t,!0,!1,!1))}}parseClassElementName(e){const{type:t,value:n}=this.state;if(132!==t&&134!==t||!e.static||"prototype"!==n||this.raise(y.StaticPrototype,this.state.startLoc),139===t){"constructor"===n&&this.raise(y.ConstructorClassPrivateField,this.state.startLoc);const t=this.parsePrivateName();return e.key=t,t}return this.parsePropertyName(e),e.key}parseClassStaticBlock(e,t){var n;this.scope.enter(720);const r=this.state.labels;this.state.labels=[],this.prodParam.enter(0);const i=t.body=[];this.parseBlockOrModuleBlockBody(i,void 0,!1,8),this.prodParam.exit(),this.scope.exit(),this.state.labels=r,e.body.push(this.finishNode(t,"StaticBlock")),null!=(n=t.decorators)&&n.length&&this.raise(y.DecoratorStaticBlock,t)}pushClassProperty(e,t){!t.computed&&this.nameIsConstructor(t.key)&&this.raise(y.ConstructorClassField,t.key),e.body.push(this.parseClassProperty(t))}pushClassPrivateProperty(e,t){const n=this.parseClassPrivateProperty(t);e.body.push(n),this.classScope.declarePrivateName(this.getPrivateNameSV(n.key),0,n.key.loc.start)}pushClassAccessorProperty(e,t,n){n||t.computed||!this.nameIsConstructor(t.key)||this.raise(y.ConstructorClassField,t.key);const r=this.parseClassAccessorProperty(t);e.body.push(r),n&&this.classScope.declarePrivateName(this.getPrivateNameSV(r.key),0,r.key.loc.start)}pushClassMethod(e,t,n,r,i,s){e.body.push(this.parseMethod(t,n,r,i,s,"ClassMethod",!0))}pushClassPrivateMethod(e,t,n,r){const i=this.parseMethod(t,n,r,!1,!1,"ClassPrivateMethod",!0);e.body.push(i);const s="get"===i.kind?i.static?6:2:"set"===i.kind?i.static?5:1:0;this.declareClassPrivateMethodInScope(i,s)}declareClassPrivateMethodInScope(e,t){this.classScope.declarePrivateName(this.getPrivateNameSV(e.key),t,e.key.loc.start)}parsePostMemberNameModifiers(e){}parseClassPrivateProperty(e){return this.parseInitializer(e),this.semicolon(),this.finishNode(e,"ClassPrivateProperty")}parseClassProperty(e){return this.parseInitializer(e),this.semicolon(),this.finishNode(e,"ClassProperty")}parseClassAccessorProperty(e){return this.parseInitializer(e),this.semicolon(),this.finishNode(e,"ClassAccessorProperty")}parseInitializer(e){this.scope.enter(592),this.expressionScope.enter(pt()),this.prodParam.enter(0),e.value=this.eat(29)?this.parseMaybeAssignAllowIn():null,this.expressionScope.exit(),this.prodParam.exit(),this.scope.exit()}parseClassId(e,t,n,r=8331){if(K(this.state.type))e.id=this.parseIdentifier(),t&&this.declareNameFromIdentifier(e.id,r);else{if(!n&&t)throw this.raise(y.MissingClassName,this.state.startLoc);e.id=null}}parseClassSuper(e){e.superClass=this.eat(81)?this.parseExprSubscripts():null}parseExport(e,t){const n=this.parseMaybeImportPhase(e,!0),r=this.maybeParseExportDefaultSpecifier(e,n),i=!r||this.eat(12),s=i&&this.eatExportStar(e),a=s&&this.maybeParseExportNamespaceSpecifier(e),o=i&&(!a||this.eat(12)),l=r||s;if(s&&!a){if(r&&this.unexpected(),t)throw this.raise(y.UnsupportedDecoratorExport,e);return this.parseExportFrom(e,!0),this.sawUnambiguousESM=!0,this.finishNode(e,"ExportAllDeclaration")}const c=this.maybeParseExportNamedSpecifiers(e);let p;if(r&&i&&!s&&!c&&this.unexpected(null,5),a&&o&&this.unexpected(null,98),l||c){if(p=!1,t)throw this.raise(y.UnsupportedDecoratorExport,e);this.parseExportFrom(e,l)}else p=this.maybeParseExportDeclaration(e);if(l||c||p){var u;const n=e;if(this.checkExport(n,!0,!1,!!n.source),"ClassDeclaration"===(null==(u=n.declaration)?void 0:u.type))this.maybeTakeDecorators(t,n.declaration,n);else if(t)throw this.raise(y.UnsupportedDecoratorExport,e);return this.sawUnambiguousESM=!0,this.finishNode(n,"ExportNamedDeclaration")}if(this.eat(65)){const n=e,r=this.parseExportDefaultExpression();if(n.declaration=r,"ClassDeclaration"===r.type)this.maybeTakeDecorators(t,r,n);else if(t)throw this.raise(y.UnsupportedDecoratorExport,e);return this.checkExport(n,!0,!0),this.sawUnambiguousESM=!0,this.finishNode(n,"ExportDefaultDeclaration")}throw this.unexpected(null,5)}eatExportStar(e){return this.eat(55)}maybeParseExportDefaultSpecifier(e,t){if(t||this.isExportDefaultSpecifier()){this.expectPlugin("exportDefaultFrom",null==t?void 0:t.loc.start);const n=t||this.parseIdentifier(!0),r=this.startNodeAtNode(n);return r.exported=n,e.specifiers=[this.finishNode(r,"ExportDefaultSpecifier")],!0}return!1}maybeParseExportNamespaceSpecifier(e){if(this.isContextual(93)){var t;null!=(t=e).specifiers||(t.specifiers=[]);const n=this.startNodeAt(this.state.lastTokStartLoc);return this.next(),n.exported=this.parseModuleExportName(),e.specifiers.push(this.finishNode(n,"ExportNamespaceSpecifier")),!0}return!1}maybeParseExportNamedSpecifiers(e){if(this.match(5)){const t=e;t.specifiers||(t.specifiers=[]);const n="type"===t.exportKind;return t.specifiers.push(...this.parseExportSpecifiers(n)),t.source=null,this.hasPlugin("importAssertions")?t.assertions=[]:t.attributes=[],t.declaration=null,!0}return!1}maybeParseExportDeclaration(e){return!!this.shouldParseExportDeclaration()&&(e.specifiers=[],e.source=null,this.hasPlugin("importAssertions")?e.assertions=[]:e.attributes=[],e.declaration=this.parseExportDeclaration(e),!0)}isAsyncFunction(){if(!this.isContextual(95))return!1;const e=this.nextTokenInLineStart();return this.isUnparsedContextual(e,"function")}parseExportDefaultExpression(){const e=this.startNode();if(this.match(68))return this.next(),this.parseFunction(e,5);if(this.isAsyncFunction())return this.next(),this.next(),this.parseFunction(e,13);if(this.match(80))return this.parseClass(e,!0,!0);if(this.match(26))return this.hasPlugin("decorators")&&!0===this.getPluginOption("decorators","decoratorsBeforeExport")&&this.raise(y.DecoratorBeforeExport,this.state.startLoc),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(y.UnsupportedDefaultExport,this.state.startLoc);const t=this.parseMaybeAssignAllowIn();return this.semicolon(),t}parseExportDeclaration(e){if(this.match(80)){return this.parseClass(this.startNode(),!0,!1)}return this.parseStatementListItem()}isExportDefaultSpecifier(){const{type:e}=this.state;if(K(e)){if(95===e&&!this.state.containsEsc||100===e)return!1;if((130===e||129===e)&&!this.state.containsEsc){const e=this.nextTokenStart(),t=this.input.charCodeAt(e);if(123===t||this.chStartsBindingIdentifier(t,e)&&!this.input.startsWith("from",e))return this.expectOnePlugin(["flow","typescript"]),!1}}else if(!this.match(65))return!1;const t=this.nextTokenStart(),n=this.isUnparsedContextual(t,"from");if(44===this.input.charCodeAt(t)||K(this.state.type)&&n)return!0;if(this.match(65)&&n){const e=this.input.charCodeAt(this.nextTokenStartSince(t+4));return 34===e||39===e}return!1}parseExportFrom(e,t){this.eatContextual(98)?(e.source=this.parseImportSource(),this.checkExport(e),this.maybeParseImportAttributes(e),this.checkJSONModuleImport(e)):t&&this.unexpected(),this.semicolon()}shouldParseExportDeclaration(){const{type:e}=this.state;return 26===e&&(this.expectOnePlugin(["decorators","decorators-legacy"]),this.hasPlugin("decorators"))?(!0===this.getPluginOption("decorators","decoratorsBeforeExport")&&this.raise(y.DecoratorBeforeExport,this.state.startLoc),!0):this.isUsing()||this.isAwaitUsing()?(this.raise(y.UsingDeclarationExport,this.state.startLoc),!0):74===e||75===e||68===e||80===e||this.isLet()||this.isAsyncFunction()}checkExport(e,t,n,r){var i;if(t)if(n){if(this.checkDuplicateExports(e,"default"),this.hasPlugin("exportDefaultFrom")){var s;const t=e.declaration;"Identifier"!==t.type||"from"!==t.name||t.end-t.start!==4||null!=(s=t.extra)&&s.parenthesized||this.raise(y.ExportDefaultFromAsIdentifier,t)}}else if(null!=(i=e.specifiers)&&i.length)for(const t of e.specifiers){const{exported:e}=t,n="Identifier"===e.type?e.name:e.value;if(this.checkDuplicateExports(t,n),!r&&t.local){const{local:e}=t;"Identifier"!==e.type?this.raise(y.ExportBindingIsString,t,{localName:e.value,exportName:n}):(this.checkReservedWord(e.name,e.loc.start,!0,!1),this.scope.checkLocalExport(e))}}else if(e.declaration){const t=e.declaration;if("FunctionDeclaration"===t.type||"ClassDeclaration"===t.type){const{id:n}=t;if(!n)throw new Error("Assertion failure");this.checkDuplicateExports(e,n.name)}else if("VariableDeclaration"===t.type)for(const e of t.declarations)this.checkDeclaration(e.id)}}checkDeclaration(e){if("Identifier"===e.type)this.checkDuplicateExports(e,e.name);else if("ObjectPattern"===e.type)for(const t of e.properties)this.checkDeclaration(t);else if("ArrayPattern"===e.type)for(const t of e.elements)t&&this.checkDeclaration(t);else"ObjectProperty"===e.type?this.checkDeclaration(e.value):"RestElement"===e.type?this.checkDeclaration(e.argument):"AssignmentPattern"===e.type&&this.checkDeclaration(e.left)}checkDuplicateExports(e,t){this.exportedIdentifiers.has(t)&&("default"===t?this.raise(y.DuplicateDefaultExport,e):this.raise(y.DuplicateExport,e,{exportName:t})),this.exportedIdentifiers.add(t)}parseExportSpecifiers(e){const t=[];let n=!0;for(this.expect(5);!this.eat(8);){if(n)n=!1;else if(this.expect(12),this.eat(8))break;const r=this.isContextual(130),i=this.match(134),s=this.startNode();s.local=this.parseModuleExportName(),t.push(this.parseExportSpecifier(s,i,e,r))}return t}parseExportSpecifier(e,t,n,r){return this.eatContextual(93)?e.exported=this.parseModuleExportName():t?e.exported=this.cloneStringLiteral(e.local):e.exported||(e.exported=this.cloneIdentifier(e.local)),this.finishNode(e,"ExportSpecifier")}parseModuleExportName(){if(this.match(134)){const e=this.parseStringLiteral(this.state.value),t=Mt.exec(e.value);return t&&this.raise(y.ModuleExportNameHasLoneSurrogate,e,{surrogateCharCode:t[0].charCodeAt(0)}),e}return this.parseIdentifier(!0)}isJSONModuleImport(e){return null!=e.assertions&&e.assertions.some(({key:e,value:t})=>"json"===t.value&&("Identifier"===e.type?"type"===e.name:"type"===e.value))}checkImportReflection(e){const{specifiers:t}=e,n=1===t.length?t[0].type:null;if("source"===e.phase)"ImportDefaultSpecifier"!==n&&this.raise(y.SourcePhaseImportRequiresDefault,t[0].loc.start);else if("defer"===e.phase)"ImportNamespaceSpecifier"!==n&&this.raise(y.DeferImportRequiresNamespace,t[0].loc.start);else if(e.module){var r;"ImportDefaultSpecifier"!==n&&this.raise(y.ImportReflectionNotBinding,t[0].loc.start),(null==(r=e.assertions)?void 0:r.length)>0&&this.raise(y.ImportReflectionHasAssertion,t[0].loc.start)}}checkJSONModuleImport(e){if(this.isJSONModuleImport(e)&&"ExportAllDeclaration"!==e.type){const{specifiers:t}=e;if(null!=t){const e=t.find(e=>{let t;if("ExportSpecifier"===e.type?t=e.local:"ImportSpecifier"===e.type&&(t=e.imported),void 0!==t)return"Identifier"===t.type?"default"!==t.name:"default"!==t.value});void 0!==e&&this.raise(y.ImportJSONBindingNotDefault,e.loc.start)}}}isPotentialImportPhase(e){return!e&&(this.isContextual(105)||this.isContextual(97)||this.isContextual(127))}applyImportPhase(e,t,n,r){t||("module"===n?(this.expectPlugin("importReflection",r),e.module=!0):this.hasPlugin("importReflection")&&(e.module=!1),"source"===n?(this.expectPlugin("sourcePhaseImports",r),e.phase="source"):"defer"===n?(this.expectPlugin("deferredImportEvaluation",r),e.phase="defer"):this.hasPlugin("sourcePhaseImports")&&(e.phase=null))}parseMaybeImportPhase(e,t){if(!this.isPotentialImportPhase(t))return this.applyImportPhase(e,t,null),null;const n=this.startNode(),r=this.parseIdentifierName(!0),{type:i}=this.state;return(V(i)?98!==i||102===this.lookaheadCharCode():12!==i)?(this.applyImportPhase(e,t,r,n.loc.start),null):(this.applyImportPhase(e,t,null),this.createIdentifier(n,r))}isPrecedingIdImportPhase(e){const{type:t}=this.state;return K(t)?98!==t||102===this.lookaheadCharCode():12!==t}parseImport(e){return this.match(134)?this.parseImportSourceAndAttributes(e):this.parseImportSpecifiersAndAfter(e,this.parseMaybeImportPhase(e,!1))}parseImportSpecifiersAndAfter(e,t){e.specifiers=[];const n=!this.maybeParseDefaultImportSpecifier(e,t)||this.eat(12),r=n&&this.maybeParseStarImportSpecifier(e);return n&&!r&&this.parseNamedImportSpecifiers(e),this.expectContextual(98),this.parseImportSourceAndAttributes(e)}parseImportSourceAndAttributes(e){return null!=e.specifiers||(e.specifiers=[]),e.source=this.parseImportSource(),this.maybeParseImportAttributes(e),this.checkImportReflection(e),this.checkJSONModuleImport(e),this.semicolon(),this.sawUnambiguousESM=!0,this.finishNode(e,"ImportDeclaration")}parseImportSource(){return this.match(134)||this.unexpected(),this.parseExprAtom()}parseImportSpecifierLocal(e,t,n){t.local=this.parseIdentifier(),e.specifiers.push(this.finishImportSpecifier(t,n))}finishImportSpecifier(e,t,n=8201){return this.checkLVal(e.local,{type:t},n),this.finishNode(e,t)}parseImportAttributes(){this.expect(5);const e=[],t=new Set;do{if(this.match(8))break;const n=this.startNode(),r=this.state.value;if(t.has(r)&&this.raise(y.ModuleAttributesWithDuplicateKeys,this.state.startLoc,{key:r}),t.add(r),this.match(134)?n.key=this.parseStringLiteral(r):n.key=this.parseIdentifier(!0),this.expect(14),!this.match(134))throw this.raise(y.ModuleAttributeInvalidValue,this.state.startLoc);n.value=this.parseStringLiteral(this.state.value),e.push(this.finishNode(n,"ImportAttribute"))}while(this.eat(12));return this.expect(8),e}parseModuleAttributes(){const e=[],t=new Set;do{const n=this.startNode();if(n.key=this.parseIdentifier(!0),"type"!==n.key.name&&this.raise(y.ModuleAttributeDifferentFromType,n.key),t.has(n.key.name)&&this.raise(y.ModuleAttributesWithDuplicateKeys,n.key,{key:n.key.name}),t.add(n.key.name),this.expect(14),!this.match(134))throw this.raise(y.ModuleAttributeInvalidValue,this.state.startLoc);n.value=this.parseStringLiteral(this.state.value),e.push(this.finishNode(n,"ImportAttribute"))}while(this.eat(12));return e}maybeParseImportAttributes(e){let t;var n=!1;if(this.match(76)){if(this.hasPrecedingLineBreak()&&40===this.lookaheadCharCode())return;this.next(),this.hasPlugin("moduleAttributes")?(t=this.parseModuleAttributes(),this.addExtra(e,"deprecatedWithLegacySyntax",!0)):t=this.parseImportAttributes(),n=!0}else this.isContextual(94)&&!this.hasPrecedingLineBreak()?(this.hasPlugin("deprecatedImportAssert")||this.hasPlugin("importAssertions")||this.raise(y.ImportAttributesUseAssert,this.state.startLoc),this.hasPlugin("importAssertions")||this.addExtra(e,"deprecatedAssertSyntax",!0),this.next(),t=this.parseImportAttributes()):t=[];!n&&this.hasPlugin("importAssertions")?e.assertions=t:e.attributes=t}maybeParseDefaultImportSpecifier(e,t){if(t){const n=this.startNodeAtNode(t);return n.local=t,e.specifiers.push(this.finishImportSpecifier(n,"ImportDefaultSpecifier")),!0}return!!V(this.state.type)&&(this.parseImportSpecifierLocal(e,this.startNode(),"ImportDefaultSpecifier"),!0)}maybeParseStarImportSpecifier(e){if(this.match(55)){const t=this.startNode();return this.next(),this.expectContextual(93),this.parseImportSpecifierLocal(e,t,"ImportNamespaceSpecifier"),!0}return!1}parseNamedImportSpecifiers(e){let t=!0;for(this.expect(5);!this.eat(8);){if(t)t=!1;else{if(this.eat(14))throw this.raise(y.DestructureNamedImport,this.state.startLoc);if(this.expect(12),this.eat(8))break}const n=this.startNode(),r=this.match(134),i=this.isContextual(130);n.imported=this.parseModuleExportName();const s=this.parseImportSpecifier(n,r,"type"===e.importKind||"typeof"===e.importKind,i,void 0);e.specifiers.push(s)}}parseImportSpecifier(e,t,n,r,i){if(this.eatContextual(93))e.local=this.parseIdentifier();else{const{imported:n}=e;if(t)throw this.raise(y.ImportBindingIsString,e,{importName:n.value});this.checkReservedWord(n.name,e.loc.start,!0,!0),e.local||(e.local=this.cloneIdentifier(n))}return this.finishImportSpecifier(e,"ImportSpecifier",i)}isThisParam(e){return"Identifier"===e.type&&"this"===e.name}}class jt extends Bt{constructor(e,t,n){const r=function(e){const t={sourceType:"script",sourceFilename:void 0,startIndex:0,startColumn:0,startLine:1,allowAwaitOutsideFunction:!1,allowReturnOutsideFunction:!1,allowNewTargetOutsideFunction:!1,allowImportExportEverywhere:!1,allowSuperOutsideMethod:!1,allowUndeclaredExports:!1,allowYieldOutsideFunction:!1,plugins:[],strictMode:void 0,ranges:!1,tokens:!1,createImportExpressions:!1,createParenthesizedExpressions:!1,errorRecovery:!1,attachComment:!0,annexB:!0};if(null==e)return t;if(null!=e.annexB&&!1!==e.annexB)throw new Error("The `annexB` option can only be set to `false`.");for(const n of Object.keys(t))null!=e[n]&&(t[n]=e[n]);if(1===t.startLine)null==e.startIndex&&t.startColumn>0?t.startIndex=t.startColumn:null==e.startColumn&&t.startIndex>0&&(t.startColumn=t.startIndex);else if((null==e.startColumn||null==e.startIndex)&&null!=e.startIndex)throw new Error("With a `startLine > 1` you must also specify `startIndex` and `startColumn`.");if("commonjs"===t.sourceType){if(null!=e.allowAwaitOutsideFunction)throw new Error("The `allowAwaitOutsideFunction` option cannot be used with `sourceType: 'commonjs'`.");if(null!=e.allowReturnOutsideFunction)throw new Error("`sourceType: 'commonjs'` implies `allowReturnOutsideFunction: true`, please remove the `allowReturnOutsideFunction` option or use `sourceType: 'script'`.");if(null!=e.allowNewTargetOutsideFunction)throw new Error("`sourceType: 'commonjs'` implies `allowNewTargetOutsideFunction: true`, please remove the `allowNewTargetOutsideFunction` option or use `sourceType: 'script'`.")}return t}(e);super(r,t),this.options=r,this.initializeScopes(),this.plugins=n,this.filename=r.sourceFilename,this.startIndex=r.startIndex;let i=0;r.allowAwaitOutsideFunction&&(i|=1),r.allowReturnOutsideFunction&&(i|=2),r.allowImportExportEverywhere&&(i|=8),r.allowSuperOutsideMethod&&(i|=16),r.allowUndeclaredExports&&(i|=64),r.allowNewTargetOutsideFunction&&(i|=4),r.allowYieldOutsideFunction&&(i|=32),r.ranges&&(i|=128),r.tokens&&(i|=256),r.createImportExpressions&&(i|=512),r.createParenthesizedExpressions&&(i|=1024),r.errorRecovery&&(i|=2048),r.attachComment&&(i|=4096),r.annexB&&(i|=8192),this.optionFlags=i}getScopeHandler(){return ge}parse(){this.enterInitialScopes();const e=this.startNode(),t=this.startNode();this.nextToken(),e.errors=null;const n=this.parseTopLevel(e,t);return n.errors=this.state.errors,n.comments.length=this.state.commentsLen,n}}const Rt=function(e){const t={};for(const n of Object.keys(e))t[n]=G(e[n]);return t}(U);function Ut(e,t){let n=jt;const r=new Map;if(null!=e&&e.plugins){for(const t of e.plugins){let e,n;"string"==typeof t?e=t:[e,n]=t,r.has(e)||r.set(e,n||{})}!function(e){if(e.has("decorators")){if(e.has("decorators-legacy"))throw new Error("Cannot use the decorators and decorators-legacy plugin together");const t=e.get("decorators").decoratorsBeforeExport;if(null!=t&&"boolean"!=typeof t)throw new Error("'decoratorsBeforeExport' must be a boolean, if specified.");const n=e.get("decorators").allowCallParenthesized;if(null!=n&&"boolean"!=typeof n)throw new Error("'allowCallParenthesized' must be a boolean.")}if(e.has("flow")&&e.has("typescript"))throw new Error("Cannot combine flow and typescript plugins.");if(e.has("placeholders")&&e.has("v8intrinsic"))throw new Error("Cannot combine placeholders and v8intrinsic plugins.");if(e.has("pipelineOperator")){var t;const r=e.get("pipelineOperator").proposal;if(!It.includes(r)){const e=It.map(e=>`"${e}"`).join(", ");throw new Error(`"pipelineOperator" requires "proposal" option whose value must be one of: ${e}.`)}if("hack"===r){if(e.has("placeholders"))throw new Error("Cannot combine placeholders plugin and Hack-style pipes.");if(e.has("v8intrinsic"))throw new Error("Cannot combine v8intrinsic plugin and Hack-style pipes.");const t=e.get("pipelineOperator").topicToken;if(!kt.includes(t)){const e=kt.map(e=>`"${e}"`).join(", ");throw new Error(`"pipelineOperator" in "proposal": "hack" mode also requires a "topicToken" option whose value must be one of: ${e}.`)}var n;if("#"===t&&"hash"===(null==(n=e.get("recordAndTuple"))?void 0:n.syntaxType))throw new Error(`Plugin conflict between \`["pipelineOperator", { proposal: "hack", topicToken: "#" }]\` and \`${JSON.stringify(["recordAndTuple",e.get("recordAndTuple")])}\`.`)}else if("smart"===r&&"hash"===(null==(t=e.get("recordAndTuple"))?void 0:t.syntaxType))throw new Error(`Plugin conflict between \`["pipelineOperator", { proposal: "smart" }]\` and \`${JSON.stringify(["recordAndTuple",e.get("recordAndTuple")])}\`.`)}if(e.has("moduleAttributes")){if(e.has("deprecatedImportAssert")||e.has("importAssertions"))throw new Error("Cannot combine importAssertions, deprecatedImportAssert and moduleAttributes plugins.");if("may-2020"!==e.get("moduleAttributes").version)throw new Error("The 'moduleAttributes' plugin requires a 'version' option, representing the last proposal update. Currently, the only supported value is 'may-2020'.")}if(e.has("importAssertions")&&e.has("deprecatedImportAssert"))throw new Error("Cannot combine importAssertions and deprecatedImportAssert plugins.");if(!e.has("deprecatedImportAssert")&&e.has("importAttributes")&&e.get("importAttributes").deprecatedAssertSyntax&&e.set("deprecatedImportAssert",{}),e.has("recordAndTuple")){const t=e.get("recordAndTuple").syntaxType;if(null!=t){const e=["hash","bar"];if(!e.includes(t))throw new Error("The 'syntaxType' option of the 'recordAndTuple' plugin must be one of: "+e.map(e=>`'${e}'`).join(", "))}}if(e.has("asyncDoExpressions")&&!e.has("doExpressions")){const e=new Error("'asyncDoExpressions' requires 'doExpressions', please add 'doExpressions' to parser plugins.");throw e.missingPlugins="doExpressions",e}if(e.has("optionalChainingAssign")&&"2023-07"!==e.get("optionalChainingAssign").version)throw new Error("The 'optionalChainingAssign' plugin requires a 'version' option, representing the last proposal update. Currently, the only supported value is '2023-07'.");if(e.has("discardBinding")&&"void"!==e.get("discardBinding").syntaxType)throw new Error("The 'discardBinding' plugin requires a 'syntaxType' option. Currently the only supported value is 'void'.")}(r),n=function(e){const t=[];for(const n of Ot)e.has(n)&&t.push(n);const n=t.join("|");let r=Kt.get(n);if(!r){r=jt;for(const e of t)r=Nt[e](r);Kt.set(n,r)}return r}(r)}return new n(e,t,r)}const Kt=new Map;return oa.parse=function(e,t){var n;if("unambiguous"!==(null==(n=t)?void 0:n.sourceType))return Ut(t,e).parse();t=Object.assign({},t);try{t.sourceType="module";const n=Ut(t,e),r=n.parse();if(n.sawUnambiguousESM)return r;if(n.ambiguousScriptDifferentAst)try{return t.sourceType="script",Ut(t,e).parse()}catch(e){}else r.program.sourceType="script";return r}catch(n){try{return t.sourceType="script",Ut(t,e).parse()}catch(e){}throw n}},oa.parseExpression=function(e,t){const n=Ut(t,e);return n.options.strictMode&&(n.state.strict=!0),n.getExpression()},oa.tokTypes=Rt,oa}function ca(){if(aa)return Us;aa=1,Object.defineProperty(Us,"__esModule",{value:!0}),Us._replaceWith=F,Us.replaceExpressionWithStatements=function(e){o.resync.call(this);const n=[],r=B(e,n);if(r){for(const e of n)this.scope.push({id:e});return this.replaceWith(r)[0].get("expressions")}const i=this.getFunctionParent(),s=null==i?void 0:i.node.async,a=null==i?void 0:i.node.generator,d=c([],h(e));this.replaceWith(f(d,[]));const y=this.get("callee");y.get("body").scope.hoistVariables(e=>this.scope.push({id:e}));const T=y.getCompletionRecords();for(const e of T){if(!e.isExpressionStatement())continue;const t=e.findParent(e=>e.isLoop());if(t){let n=t.getData("expressionReplacementReturnUid");n?n=x(n.name):(n=y.scope.generateDeclaredUidIdentifier("ret"),y.get("body").pushContainer("body",_(m(n))),t.setData("expressionReplacementReturnUid",n)),e.get("expression").replaceWith(p("=",m(n),e.node.expression))}else e.replaceWith(_(e.node.expression))}y.arrowFunctionToExpression();const g=y,S=s&&t.default.hasType(this.get("callee.body").node,"AwaitExpression",l),b=a&&t.default.hasType(this.get("callee.body").node,"YieldExpression",l);S&&(g.set("async",!0),b||this.replaceWith(u(this.node)));b&&(g.set("generator",!0),this.replaceWith(M(this.node,!0)));return g.get("body.body")},Us.replaceInline=function(e){if(o.resync.call(this),Array.isArray(e)){if(Array.isArray(this.container)){e=i._verifyNodeList.call(this,e);const t=i._containerInsertAfter.call(this,e);return this.remove(),t}return this.replaceWithMultiple(e)}return this.replaceWith(e)},Us.replaceWith=function(e){if(o.resync.call(this),this.removed)throw new Error("You can't replace this node, we've already removed it");let t=e instanceof n.default?e.node:e;if(!t)throw new Error("You passed `path.replaceWith()` a falsy node, use `path.remove()` instead");if(this.node===t)return[this];if(this.isProgram()&&!I(t))throw new Error("You can only replace a Program root node with another Program node");if(Array.isArray(t))throw new Error("Don't use `path.replaceWith()` with an array of nodes, use `path.replaceWithMultiple()`");if("string"==typeof t)throw new Error("Don't use `path.replaceWith()` with a source string, use `path.replaceWithSourceString()`");let r="";this.isNodeType("Statement")&&A(t)&&(this.canHaveVariableDeclarationOrExpression()||this.canSwapBetweenExpressionAndStatement(t)||this.parentPath.isExportDefaultDeclaration()||(t=T(t),r="expression"));if(this.isNodeType("Expression")&&k(t)&&!this.canHaveVariableDeclarationOrExpression()&&!this.canSwapBetweenExpressionAndStatement(t))return this.replaceExpressionWithStatements([t]);const i=this.node;i&&(P(t,i),O(i));return F.call(this,t),this.type=t.type,o.setScope.call(this),this.requeue(),[r?this.get(r):this]},Us.replaceWithMultiple=function(e){var t;o.resync.call(this);const n=i._verifyNodeList.call(this,e);S(n[0],this.node),b(n[n.length-1],this.node),null==(t=(0,r.getCachedPaths)(this))||t.delete(this.node),this.node=this.container[this.key]=null;const s=this.insertAfter(e);this.node?this.requeue():this.remove();return s},Us.replaceWithSourceString=function(n){let r;o.resync.call(this);try{n=`(${n})`,r=(0,s.parse)(n)}catch(t){const r=t.loc;throw r&&(t.message+=" - make sure this is an expression.\n"+(0,e.codeFrameColumns)(n,{start:{line:r.line,column:r.column+1}}),t.code="BABEL_REPLACE_SOURCE_ERROR"),t}const i=r.program.body[0].expression;return t.default.removeProperties(i),this.replaceWith(i)};var e=Xs(),t=no(),n=za(),r=oi(),i=ia(),s=la(),a=Pr(),o=Qa();const{FUNCTION_TYPES:l,arrowFunctionExpression:c,assignmentExpression:p,awaitExpression:u,blockStatement:h,buildUndefinedNode:d,callExpression:f,cloneNode:m,conditionalExpression:y,expressionStatement:T,getBindingIdentifiers:g,identifier:x,inheritLeadingComments:S,inheritTrailingComments:b,inheritsComments:P,isBlockStatement:E,isEmptyStatement:v,isExpression:A,isExpressionStatement:C,isIfStatement:w,isProgram:I,isStatement:k,isVariableDeclaration:N,removeComments:O,returnStatement:_,sequenceExpression:D,validate:L,yieldExpression:M}=a;function F(e){var t;if(!this.container)throw new ReferenceError("Container is falsy");this.inList?L(this.parent,this.key,[e]):L(this.parent,this.key,e),this.debug(`Replace with ${null==e?void 0:e.type}`),null==(t=(0,r.getCachedPaths)(this))||t.set(e,this).delete(this.node),this.node=e,this.container[this.key]=e}function B(e,t){const n=[];let r=!0;for(const i of e)if(v(i)||(r=!1),A(i))n.push(i);else if(C(i))n.push(i.expression);else if(N(i)){if("var"!==i.kind)return;for(const e of i.declarations){const r=g(e);for(const e of Object.keys(r))t.push(m(r[e]));e.init&&n.push(p("=",e.id,e.init))}r=!0}else if(w(i)){const e=i.consequent?B([i.consequent],t):d(),r=i.alternate?B([i.alternate],t):d();if(!e||!r)return;n.push(y(i.test,e,r))}else if(E(i)){const e=B(i.body,t);if(!e)return;n.push(e)}else{if(!v(i))return;0===e.indexOf(i)&&(r=!0)}return r&&n.push(d()),1===n.length?n[0]:D(n)}return Us}var pa,ua={};function ha(){if(pa)return ua;pa=1,Object.defineProperty(ua,"__esModule",{value:!0}),ua.evaluate=function(){const e={confident:!0,deoptPath:null,seen:new Map};let t=a(this,e);e.confident||(t=void 0);return{confident:e.confident,deopt:e.deoptPath,value:t}},ua.evaluateTruthy=function(){const e=this.evaluate();if(e.confident)return!!e.value};const e=["Number","String","Math"],t=["isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent",null,null],n=["random"];function r(t){return e.includes(t)}function i(e,t){t.confident&&(t.deoptPath=e,t.confident=!1)}const s=new Map([["undefined",void 0],["Infinity",1/0],["NaN",NaN]]);function a(e,l){const{node:c}=e,{seen:p}=l;if(p.has(c)){const t=p.get(c);return t.resolved?t.value:void i(e,l)}{const u={resolved:!1};p.set(c,u);const h=function(e,l){if(!l.confident)return;if(e.isSequenceExpression()){const t=e.get("expressions");return a(t[t.length-1],l)}if(e.isStringLiteral()||e.isNumericLiteral()||e.isBooleanLiteral())return e.node.value;if(e.isNullLiteral())return null;if(e.isTemplateLiteral())return o(e,e.node.quasis,l);if(e.isTaggedTemplateExpression()&&e.get("tag").isMemberExpression()){const t=e.get("tag.object"),{node:{name:n}}=t,r=e.get("tag.property");if(t.isIdentifier()&&"String"===n&&!e.scope.getBinding(n)&&r.isIdentifier()&&"raw"===r.node.name)return o(e,e.node.quasi.quasis,l,!0)}if(e.isConditionalExpression()){const t=a(e.get("test"),l);if(!l.confident)return;return a(t?e.get("consequent"):e.get("alternate"),l)}if(e.isExpressionWrapper())return a(e.get("expression"),l);if(e.isMemberExpression()&&!e.parentPath.isCallExpression({callee:e.node})){const t=e.get("property"),n=e.get("object");if(n.isLiteral()){const r=n.node.value,i=typeof r;let s=null;if(e.node.computed){if(s=a(t,l),!l.confident)return}else t.isIdentifier()&&(s=t.node.name);if(!("number"!==i&&"string"!==i||null==s||"number"!=typeof s&&"string"!=typeof s))return r[s]}}if(e.isReferencedIdentifier()){const t=e.scope.getBinding(e.node.name);if(t){if(t.constantViolations.length>0||e.node.start<t.path.node.end)return void i(t.path,l);const n=t.path.scope;if("var"===t.kind&&n!==t.scope){let r=!n.path.parentPath.isBlockStatement();for(let s=n.parent;s;s=s.parent){var c;if(s===e.scope){if(r)return void i(t.path,l);break}null!=(c=s.path.parentPath)&&c.isBlockStatement()&&(r=!0)}}if(t.hasValue)return t.value}const n=e.node.name;if(s.has(n))return t?void i(t.path,l):s.get(n);const r=e.resolve();if(r===e)return void i(e,l);const o=a(r,l);return"object"==typeof o&&null!==o&&t.references>1?void i(r,l):o}if(e.isUnaryExpression({prefix:!0})){if("void"===e.node.operator)return;const t=e.get("argument");if("typeof"===e.node.operator&&(t.isFunction()||t.isClass()))return"function";const n=a(t,l);if(!l.confident)return;switch(e.node.operator){case"!":return!n;case"+":return+n;case"-":return-n;case"~":return~n;case"typeof":return typeof n}}if(e.isArrayExpression()){const t=[],n=e.get("elements");for(const e of n){const n=e.evaluate();if(!n.confident)return void i(n.deopt,l);t.push(n.value)}return t}if(e.isObjectExpression()){const t={},n=e.get("properties");for(const e of n){if(e.isObjectMethod()||e.isSpreadElement())return void i(e,l);const n=e.get("key");let r;if(e.node.computed){if(r=n.evaluate(),!r.confident)return void i(r.deopt,l);r=r.value}else r=n.isIdentifier()?n.node.name:n.node.value;let s=e.get("value").evaluate();if(!s.confident)return void i(s.deopt,l);s=s.value,t[r]=s}return t}if(e.isLogicalExpression()){const t=l.confident,n=a(e.get("left"),l),r=l.confident;l.confident=t;const i=a(e.get("right"),l),s=l.confident;switch(e.node.operator){case"||":if(l.confident=r&&(!!n||s),!l.confident)return;return n||i;case"&&":if(l.confident=r&&(!n||s),!l.confident)return;return n&&i;case"??":if(l.confident=r&&(null!=n||s),!l.confident)return;return null!=n?n:i}}if(e.isBinaryExpression()){const t=a(e.get("left"),l);if(!l.confident)return;const n=a(e.get("right"),l);if(!l.confident)return;switch(e.node.operator){case"-":return t-n;case"+":return t+n;case"/":return t/n;case"*":return t*n;case"%":return t%n;case"**":return Math.pow(t,n);case"<":return t<n;case">":return t>n;case"<=":return t<=n;case">=":return t>=n;case"==":return t==n;case"!=":return t!=n;case"===":return t===n;case"!==":return t!==n;case"|":return t|n;case"&":return t&n;case"^":return t^n;case"<<":return t<<n;case">>":return t>>n;case">>>":return t>>>n}}if(e.isCallExpression()){const i=e.get("callee");let s,o;if(i.isIdentifier()&&!e.scope.getBinding(i.node.name)&&(r(i.node.name)||function(e){return t.includes(e)}(i.node.name))&&(o=g[i.node.name]),i.isMemberExpression()){const e=i.get("object"),t=i.get("property");if(e.isIdentifier()&&t.isIdentifier()&&r(e.node.name)&&!function(e){return n.includes(e)}(t.node.name)){s=g[e.node.name];const n=t.node.name;hasOwnProperty.call(s,n)&&(o=s[n])}if(e.isLiteral()&&t.isIdentifier()){const n=typeof e.node.value;"string"!==n&&"number"!==n||(s=e.node.value,o=s[t.node.name])}}if(o){const t=e.get("arguments").map(e=>a(e,l));if(!l.confident)return;return o.apply(s,t)}}i(e,l)}(e,l);return l.confident&&(u.resolved=!0,u.value=h),h}}function o(e,t,n,r=!1){let i="",s=0;const o=e.isTemplateLiteral()?e.get("expressions"):e.get("quasi.expressions");for(const e of t){if(!n.confident)break;i+=r?e.value.raw:e.value.cooked;const t=o[s++];t&&(i+=String(a(t,n)))}if(n.confident)return i}return ua}var da,fa={},ma={},ya={};function Ta(){if(da)return ya;da=1,Object.defineProperty(ya,"__esModule",{value:!0}),ya.statements=ya.statement=ya.smart=ya.program=ya.expression=void 0;var e=Pr();const{assertExpressionStatement:t}=e;function n(e){return{code:e=>`/* @babel/template */;\n${e}`,validate:()=>{},unwrap:t=>e(t.program.body.slice(1))}}ya.smart=n(e=>e.length>1?e:e[0]),ya.statements=n(e=>e),ya.statement=n(e=>{if(0===e.length)throw new Error("Found nothing to return.");if(e.length>1)throw new Error("Found multiple statements but wanted one");return e[0]});const r=ya.expression={code:e=>`(\n${e}\n)`,validate:e=>{if(e.program.body.length>1)throw new Error("Found multiple statements but wanted one");if(0===r.unwrap(e).start)throw new Error("Parse result included parens.")},unwrap:({program:e})=>{const[n]=e.body;return t(n),n.expression}};return ya.program={code:e=>e,validate:()=>{},unwrap:e=>e.program},ya}var ga,xa={},Sa={};function ba(){if(ga)return Sa;ga=1,Object.defineProperty(Sa,"__esModule",{value:!0}),Sa.merge=function(e,t){const{placeholderWhitelist:n=e.placeholderWhitelist,placeholderPattern:r=e.placeholderPattern,preserveComments:i=e.preserveComments,syntacticPlaceholders:s=e.syntacticPlaceholders}=t;return{parser:Object.assign({},e.parser,t.parser),placeholderWhitelist:n,placeholderPattern:r,preserveComments:i,syntacticPlaceholders:s}},Sa.normalizeReplacements=function(e){if(Array.isArray(e))return e.reduce((e,t,n)=>(e["$"+n]=t,e),{});if("object"==typeof e||null==e)return e||void 0;throw new Error("Template replacements must be an array, object, null, or undefined")},Sa.validate=function(t){if(null!=t&&"object"!=typeof t)throw new Error("Unknown template options.");const n=t||{},{placeholderWhitelist:r,placeholderPattern:i,preserveComments:s,syntacticPlaceholders:a}=n,o=function(e,t){if(null==e)return{};var n={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(-1!==t.indexOf(r))continue;n[r]=e[r]}return n}(n,e);if(null!=r&&!(r instanceof Set))throw new Error("'.placeholderWhitelist' must be a Set, null, or undefined");if(null!=i&&!(i instanceof RegExp)&&!1!==i)throw new Error("'.placeholderPattern' must be a RegExp, false, null, or undefined");if(null!=s&&"boolean"!=typeof s)throw new Error("'.preserveComments' must be a boolean, null, or undefined");if(null!=a&&"boolean"!=typeof a)throw new Error("'.syntacticPlaceholders' must be a boolean, null, or undefined");if(!0===a&&(null!=r||null!=i))throw new Error("'.placeholderWhitelist' and '.placeholderPattern' aren't compatible with '.syntacticPlaceholders: true'");return{parser:o,placeholderWhitelist:r||void 0,placeholderPattern:null==i?void 0:i,preserveComments:null==s?void 0:s,syntacticPlaceholders:null==a?void 0:a}};const e=["placeholderWhitelist","placeholderPattern","preserveComments","syntacticPlaceholders"];return Sa}var Pa,Ea={},va={};function Aa(){if(Pa)return va;Pa=1,Object.defineProperty(va,"__esModule",{value:!0}),va.default=function(e,r,i){const{placeholderWhitelist:s,placeholderPattern:a,preserveComments:o,syntacticPlaceholders:l}=i,c=function(e,r,i){const s=(r.plugins||[]).slice();!1!==i&&s.push("placeholders");r=Object.assign({allowAwaitOutsideFunction:!0,allowReturnOutsideFunction:!0,allowNewTargetOutsideFunction:!0,allowSuperOutsideMethod:!0,allowYieldOutsideFunction:!0,sourceType:"module"},r,{plugins:s});try{return(0,t.parse)(e,r)}catch(t){const r=t.loc;throw r&&(t.message+="\n"+(0,n.codeFrameColumns)(e,{start:r}),t.code="BABEL_TEMPLATE_PARSE_ERROR"),t}}(r,i.parser,l);h(c,{preserveComments:o}),e.validate(c);const p={syntactic:{placeholders:[],placeholderNames:new Set},legacy:{placeholders:[],placeholderNames:new Set},placeholderWhitelist:s,placeholderPattern:a,syntacticPlaceholders:l};return d(c,m,p),Object.assign({ast:c},p.syntactic.placeholders.length?p.syntactic:p.legacy)};var e=Pr(),t=la(),n=Xs();const{isCallExpression:r,isExpressionStatement:i,isFunction:s,isIdentifier:a,isJSXIdentifier:o,isNewExpression:l,isPlaceholder:c,isStatement:p,isStringLiteral:u,removePropertiesDeep:h,traverse:d}=e,f=/^[_$A-Z0-9]+$/;function m(e,t,n){var h;let d,m=n.syntactic.placeholders.length>0;if(c(e)){if(!1===n.syntacticPlaceholders)throw new Error("%%foo%%-style placeholders can't be used when '.syntacticPlaceholders' is false.");d=e.name.name,m=!0}else{if(m||n.syntacticPlaceholders)return;if(a(e)||o(e))d=e.name;else{if(!u(e))return;d=e.value}}if(m&&(null!=n.placeholderPattern||null!=n.placeholderWhitelist))throw new Error("'.placeholderWhitelist' and '.placeholderPattern' aren't compatible with '.syntacticPlaceholders: true'");if(!(m||!1!==n.placeholderPattern&&(n.placeholderPattern||f).test(d)||null!=(h=n.placeholderWhitelist)&&h.has(d)))return;t=t.slice();const{node:y,key:T}=t[t.length-1];let g;u(e)||c(e,{expectedNode:"StringLiteral"})?g="string":l(y)&&"arguments"===T||r(y)&&"arguments"===T||s(y)&&"params"===T?g="param":i(y)&&!c(e)?(g="statement",t=t.slice(0,-1)):g=p(e)&&c(e)?"statement":"other";const{placeholders:x,placeholderNames:S}=m?n.syntactic:n.legacy;x.push({name:d,type:g,resolve:e=>function(e,t){let n=e;for(let e=0;e<t.length-1;e++){const{key:r,index:i}=t[e];n=void 0===i?n[r]:n[r][i]}const{key:r,index:i}=t[t.length-1];return{parent:n,key:r,index:i}}(e,t),isDuplicate:S.has(d)}),S.add(d)}return va}var Ca,wa,Ia={};function ka(){if(Ca)return Ia;Ca=1,Object.defineProperty(Ia,"__esModule",{value:!0}),Ia.default=function(e,p){const u=n(e.ast);p&&(e.placeholders.forEach(e=>{if(!hasOwnProperty.call(p,e.name)){const t=e.name;throw new Error(`Error: No substitution given for "${t}". If this is not meant to be a\n placeholder you may want to consider passing one of the following options to @babel/template:\n - { placeholderPattern: false, placeholderWhitelist: new Set(['${t}'])}\n - { placeholderPattern: /^${t}$/ }`)}}),Object.keys(p).forEach(t=>{if(!e.placeholderNames.has(t))throw new Error(`Unknown substitution "${t}" given`)}));return e.placeholders.slice().reverse().forEach(e=>{try{var h;!function(e,p,u){e.isDuplicate&&(Array.isArray(u)?u=u.map(e=>n(e)):"object"==typeof u&&(u=n(u)));const{parent:h,key:d,index:f}=e.resolve(p);if("string"===e.type){if("string"==typeof u&&(u=l(u)),!u||!o(u))throw new Error("Expected string substitution")}else if("statement"===e.type)void 0===f?u?Array.isArray(u)?u=t(u):"string"==typeof u?u=i(s(u)):a(u)||(u=i(u)):u=r():u&&!Array.isArray(u)&&("string"==typeof u&&(u=s(u)),a(u)||(u=i(u)));else if("param"===e.type){if("string"==typeof u&&(u=s(u)),void 0===f)throw new Error("Assertion failure.")}else if("string"==typeof u&&(u=s(u)),Array.isArray(u))throw new Error("Cannot replace single expression with an array.");function m(e,t,n){const r=e[t];e[t]=n,"Identifier"!==r.type&&"Placeholder"!==r.type||(r.typeAnnotation&&(n.typeAnnotation=r.typeAnnotation),r.optional&&(n.optional=r.optional),r.decorators&&(n.decorators=r.decorators))}if(void 0===f)c(h,d,u),m(h,d,u);else{const t=h[d].slice();"statement"===e.type||"param"===e.type?null==u?t.splice(f,1):Array.isArray(u)?t.splice(f,1,...u):m(t,f,u):m(t,f,u),c(h,d,t),h[d]=t}}(e,u,null!=(h=p&&p[e.name])?h:null)}catch(t){throw t.message=`@babel/template placeholder "${e.name}": ${t.message}`,t}}),u};var e=Pr();const{blockStatement:t,cloneNode:n,emptyStatement:r,expressionStatement:i,identifier:s,isStatement:a,isStringLiteral:o,stringLiteral:l,validate:c}=e;return Ia}var Na,Oa,_a,Da,La={};function Ma(){if(Na)return La;Na=1,Object.defineProperty(La,"__esModule",{value:!0}),La.default=function(r,i,s){const{metadata:a,names:o}=function(e,n,r){let i="BABEL_TPL$";const s=n.join("");do{i="$$"+i}while(s.includes(i));const{names:a,code:o}=function(e,t){const n=[];let r=e[0];for(let i=1;i<e.length;i++){const s=`${t}${i-1}`;n.push(s),r+=s+e[i]}return{names:n,code:r}}(n,i),l=(0,t.default)(e,e.code(o),{parser:r.parser,placeholderWhitelist:new Set(a.concat(r.placeholderWhitelist?Array.from(r.placeholderWhitelist):[])),placeholderPattern:r.placeholderPattern,preserveComments:r.preserveComments,syntacticPlaceholders:r.syntacticPlaceholders});return{metadata:l,names:a}}(r,i,s);return t=>{const i={};return t.forEach((e,t)=>{i[o[t]]=e}),t=>{const s=(0,e.normalizeReplacements)(t);return s&&Object.keys(s).forEach(e=>{if(hasOwnProperty.call(i,e))throw new Error("Unexpected replacement overlap.")}),r.unwrap((0,n.default)(a,s?Object.assign(s,i):i))}}};var e=ba(),t=Aa(),n=ka();return La}function Fa(){if(Oa)return xa;Oa=1,Object.defineProperty(xa,"__esModule",{value:!0}),xa.default=function s(a,o){const l=new WeakMap,c=new WeakMap,p=o||(0,e.validate)(null);return Object.assign((r,...o)=>{if("string"==typeof r){if(o.length>1)throw new Error("Unexpected extra params.");return i((0,t.default)(a,r,(0,e.merge)(p,(0,e.validate)(o[0]))))}if(Array.isArray(r)){let e=l.get(r);return e||(e=(0,n.default)(a,r,p),l.set(r,e)),i(e(o))}if("object"==typeof r&&r){if(o.length>0)throw new Error("Unexpected extra params.");return s(a,(0,e.merge)(p,(0,e.validate)(r)))}throw new Error("Unexpected template param "+typeof r)},{ast:(i,...s)=>{if("string"==typeof i){if(s.length>1)throw new Error("Unexpected extra params.");return(0,t.default)(a,i,(0,e.merge)((0,e.merge)(p,(0,e.validate)(s[0])),r))()}if(Array.isArray(i)){let t=c.get(i);return t||(t=(0,n.default)(a,i,(0,e.merge)(p,r)),c.set(i,t)),t(s)()}throw new Error("Unexpected template param "+typeof i)}})};var e=ba(),t=function(){if(wa)return Ea;wa=1,Object.defineProperty(Ea,"__esModule",{value:!0}),Ea.default=function(r,i,s){let a;return i=r.code(i),o=>{const l=(0,e.normalizeReplacements)(o);return a||(a=(0,t.default)(r,i,s)),r.unwrap((0,n.default)(a,l))}};var e=ba(),t=Aa(),n=ka();return Ea}(),n=Ma();const r=(0,e.validate)({placeholderPattern:!1});function i(e){let t="";try{throw new Error}catch(e){e.stack&&(t=e.stack.split("\n").slice(3).join("\n"))}return n=>{try{return e(n)}catch(e){throw e.stack+=`\n =============\n${t}`,e}}}return xa}function Ba(){if(Da)return fa;Da=1,Object.defineProperty(fa,"__esModule",{value:!0}),fa.arrowFunctionToExpression=function({allowInsertArrow:e=!0,allowInsertArrowWithRest:t=e,noNewArrows:n=!(e=>null==(e=arguments[0])?void 0:e.specCompliant)()}={}){if(!this.isArrowFunctionExpression())throw this.buildCodeFrameError("Cannot convert non-arrow function to a function expression.");let r=this;var i;n||(r=null!=(i=r.ensureFunctionName(!1))?i:r);const{thisBinding:s,fnPath:a}=K(r,n,e,t);if(a.ensureBlock(),function(e,t){e.node.type=t}(a,"FunctionExpression"),!n){const e=s?null:a.scope.generateUidIdentifier("arrowCheckId");return e&&a.parentPath.scope.push({id:e,init:x([])}),a.get("body").unshiftContainer("body",p(l(this.hub.addHelper("newArrowCheck"),[C(),u(e?e.name:s)]))),a.replaceWith(l(y(a.node,u("bind")),[e?u(e.name):C()])),a.get("callee.object")}return a},fa.ensureBlock=function(){const e=this.get("body"),t=e.node;if(Array.isArray(e))throw new Error("Can't convert array path to a block statement");if(!t)throw new Error("Can't convert node without a body");if(e.isBlockStatement())return t;const n=[];let i,s,a="body";e.isStatement()?(s="body",i=0,n.push(e.node)):(a+=".body.0",this.isFunction()?(i="argument",n.push(b(e.node))):(i="expression",n.push(p(e.node))));this.node.body=o(n);const l=this.get(a);return r.setup.call(e,l,s?l.node[s]:l.node,s,i),this.node},fa.ensureFunctionName=function(e){if(this.node.id)return this;const n=D(this.node,this.parent);if(null==n)return this;let{name:r}=n;if(!e&&/[\uD800-\uDFFF]/.test(r))return null;if(r.startsWith("get ")||r.startsWith("set "))return null;r=k(r.replace(/[/ ]/g,"_"));const i=u(r);R(i,n.originalNode);const s={needsRename:!1,name:r},{scope:a}=this,o=a.getOwnBinding(r);o?"param"===o.kind&&(s.needsRename=!0):(a.parent.hasBinding(r)||a.hasGlobal(r))&&this.traverse(Y,s);if(!s.needsRename)return this.node.id=i,a.getProgramParent().references[i.name]=!0,this;if(a.hasBinding(i.name)&&!a.hasGlobal(i.name))return a.rename(i.name),this.node.id=i,a.getProgramParent().references[i.name]=!0,this;if(!N(this.node))return null;const l=a.generateUidIdentifier(i.name),c=[];for(let e=0,t=function(e){const t=e.params.findIndex(e=>O(e)||_(e));return-1===t?e.params.length:t}(this.node);e<t;e++)c.push(a.generateUidIdentifier("x"));const p=t.default.expression.ast`
|
|
2
|
+
(function (${l}) {
|
|
3
|
+
function ${i}(${c}) {
|
|
4
|
+
return ${L(l)}.apply(this, arguments);
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
${L(i)}.toString = function () {
|
|
8
|
+
return ${L(l)}.toString();
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
return ${L(i)};
|
|
12
|
+
})(${w(this.node)})
|
|
13
|
+
`;return this.replaceWith(p)[0].get("arguments.0")},fa.splitExportDeclaration=function(){if(!this.isExportDeclaration()||this.isExportAllDeclaration())throw new Error("Only default and named export declarations can be split.");if(this.isExportNamedDeclaration()&&this.get("specifiers").length>0)throw new Error("It doesn't make sense to split exported specifiers.");const e=this.get("declaration");if(this.isExportDefaultDeclaration()){const t=e.isFunctionDeclaration()||e.isClassDeclaration(),n=e.isFunctionExpression()||e.isClassExpression(),r=e.isScope()?e.scope.parent:e.scope;let i=e.node.id,s=!1;i?n&&r.hasBinding(i.name)&&(s=!0,i=r.generateUidIdentifier(i.name)):(s=!0,i=r.generateUidIdentifier("default"),(t||n)&&(e.node.id=L(i)));const a=t?e.node:M("var",[F(L(i),e.node)]),o=B(null,[j(L(i),u("default"))]);return this.insertAfter(o),this.replaceWith(a),s&&r.registerDeclaration(this),this}if(this.get("specifiers").length>0)throw new Error("It doesn't make sense to split exported specifiers.");const t=e.getOuterBindingIdentifiers(),n=Object.keys(t).map(e=>j(u(e),u(e))),r=B(null,n);return this.insertAfter(r),this.replaceWith(e.node),this},fa.toComputedKey=function(){let e;if(this.isMemberExpression())e=this.node.property;else{if(!this.isProperty()&&!this.isMethod())throw new ReferenceError("todo");e=this.node.key}this.node.computed||h(e)&&(e=v(e.name));return e},fa.unwrapFunctionEnvironment=function(){if(!this.isArrowFunctionExpression()&&!this.isFunctionExpression()&&!this.isFunctionDeclaration())throw this.buildCodeFrameError("Can only unwrap the environment of a function.");K(this)};var e=Pr(),t=function(){if(_a)return ma;_a=1,Object.defineProperty(ma,"__esModule",{value:!0}),ma.statements=ma.statement=ma.smart=ma.program=ma.expression=ma.default=void 0;var e=Ta(),t=Fa();const n=ma.smart=(0,t.default)(e.smart),r=ma.statement=(0,t.default)(e.statement),i=ma.statements=(0,t.default)(e.statements),s=ma.expression=(0,t.default)(e.expression),a=ma.program=(0,t.default)(e.program);return ma.default=Object.assign(n.bind(void 0),{smart:n,statement:r,statements:i,expression:s,program:a,ast:n.ast}),ma}(),n=ei(),r=Qa();const{arrowFunctionExpression:i,assignmentExpression:s,binaryExpression:a,blockStatement:o,callExpression:l,conditionalExpression:c,expressionStatement:p,identifier:u,isIdentifier:h,jsxIdentifier:d,logicalExpression:f,LOGICAL_OPERATORS:m,memberExpression:y,metaProperty:T,numericLiteral:g,objectExpression:x,restElement:S,returnStatement:b,sequenceExpression:P,spreadElement:E,stringLiteral:v,super:A,thisExpression:C,toExpression:w,unaryExpression:I,toBindingIdentifierName:k,isFunction:N,isAssignmentPattern:O,isRestElement:_,getFunctionName:D,cloneNode:L,variableDeclaration:M,variableDeclarator:F,exportNamedDeclaration:B,exportSpecifier:j,inherits:R}=e;fa.arrowFunctionToShadowed=function(){this.isArrowFunctionExpression()&&this.arrowFunctionToExpression()};const U=(0,n.environmentVisitor)({CallExpression(e,{allSuperCalls:t}){e.get("callee").isSuper()&&t.push(e)}});function K(e,t=!0,n=!0,r=!0){let o,p=e.findParent(e=>e.isArrowFunctionExpression()?(null!=o||(o=e),!1):e.isFunction()||e.isProgram()||e.isClassProperty({static:!1})||e.isClassPrivateProperty({static:!1}));const h=p.isClassMethod({kind:"constructor"});if(p.isClassProperty()||p.isClassPrivateProperty())if(o)p=o;else{if(!n)throw e.buildCodeFrameError("Unable to transform arrow inside class property");e.replaceWith(l(i([],w(e.node)),[])),p=e.get("callee"),e=p.get("body")}const{thisPaths:x,argumentsPaths:b,newTargetPaths:k,superProps:N,superCalls:O}=function(e){const t=[],n=[],r=[],i=[],s=[];return e.traverse(W,{thisPaths:t,argumentsPaths:n,newTargetPaths:r,superProps:i,superCalls:s}),{thisPaths:t,argumentsPaths:n,newTargetPaths:r,superProps:i,superCalls:s}}(e);if(h&&O.length>0){if(!n)throw O[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(!r)throw O[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.");const e=[];p.traverse(U,{allSuperCalls:e});const t=function(e){return $(e,"supercall",()=>{const t=e.scope.generateUidIdentifier("args");return i([S(t)],l(A(),[E(u(t.name))]))})}(p);e.forEach(e=>{const n=u(t);n.loc=e.node.callee.loc,e.get("callee").replaceWith(n)})}if(b.length>0){const e=$(p,"arguments",()=>{const e=()=>u("arguments");return p.scope.path.isProgram()?c(a("===",I("typeof",e()),v("undefined")),p.scope.buildUndefinedNode(),e()):e()});b.forEach(t=>{const n=u(e);n.loc=t.node.loc,t.replaceWith(n)})}if(k.length>0){const e=$(p,"newtarget",()=>T(u("new"),u("target")));k.forEach(t=>{const n=u(e);n.loc=t.node.loc,t.replaceWith(n)})}if(N.length>0){if(!n)throw N[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.");N.reduce((e,t)=>e.concat(function(e){if(e.parentPath.isAssignmentExpression()&&"="!==e.parentPath.node.operator){const n=e.parentPath,r=n.node.operator.slice(0,-1),i=n.node.right,a=function(e){return m.includes(e)}(r);if(e.node.computed){const o=e.scope.generateDeclaredUidIdentifier("tmp"),{object:l,property:c}=e.node;n.get("left").replaceWith(y(l,s("=",o,c),!0)),n.get("right").replaceWith(t(a?"=":r,y(l,u(o.name),!0),i))}else{const s=e.node.object,o=e.node.property;n.get("left").replaceWith(y(s,o)),n.get("right").replaceWith(t(a?"=":r,y(s,u(o.name)),i))}return a?n.replaceWith(f(r,n.node.left,n.node.right)):n.node.operator="=",[n.get("left"),n.get("right").get("left")]}if(e.parentPath.isUpdateExpression()){const t=e.parentPath,n=e.scope.generateDeclaredUidIdentifier("tmp"),r=e.node.computed?e.scope.generateDeclaredUidIdentifier("prop"):null,i=[s("=",n,y(e.node.object,r?s("=",r,e.node.property):e.node.property,e.node.computed)),s("=",y(e.node.object,r?u(r.name):e.node.property,e.node.computed),a(e.parentPath.node.operator[0],u(n.name),g(1)))];e.parentPath.node.prefix||i.push(u(n.name)),t.replaceWith(P(i));return[t.get("expressions.0.right"),t.get("expressions.1.left")]}return[e];function t(e,t,n){return"="===e?s("=",t,n):a(e,t,n)}}(t)),[]).forEach(e=>{const t=e.node.computed?"":e.get("property").node.name,n=e.parentPath,r=n.isAssignmentExpression({left:e.node}),a=n.isCallExpression({callee:e.node}),o=n.isTaggedTemplateExpression({tag:e.node}),c=function(e,t,n){const r=t?"set":"get";return $(e,`superprop_${r}:${n||""}`,()=>{const r=[];let a;if(n)a=y(A(),u(n));else{const t=e.scope.generateUidIdentifier("prop");r.unshift(t),a=y(A(),u(t.name),!0)}if(t){const t=e.scope.generateUidIdentifier("value");r.push(t),a=s("=",a,u(t.name))}return i(r,a)})}(p,r,t),h=[];if(e.node.computed&&h.push(e.get("property").node),r){const e=n.node.right;h.push(e)}const d=l(u(c),h);a?(n.unshiftContainer("arguments",C()),e.replaceWith(y(d,u("call"))),x.push(n.get("arguments.0"))):r?n.replaceWith(d):o?(e.replaceWith(l(y(d,u("bind"),!1),[C()])),x.push(e.get("arguments.0"))):e.replaceWith(d)})}let _;return(x.length>0||!t)&&(_=function(e,t){return $(e,"this",n=>{if(!t||!V(e))return C();e.traverse(q,{supers:new WeakSet,thisBinding:n})})}(p,h),(t||h&&V(p))&&(x.forEach(e=>{const t=e.isJSX()?d(_):u(_);t.loc=e.node.loc,e.replaceWith(t)}),t||(_=null))),{thisBinding:_,fnPath:e}}function V(e){return e.isClassMethod()&&!!e.parentPath.parentPath.node.superClass}const q=(0,n.environmentVisitor)({CallExpression(e,{supers:t,thisBinding:n}){e.get("callee").isSuper()&&(t.has(e.node)||(t.add(e.node),e.replaceWithMultiple([e.node,s("=",u(n),u("this"))])))}});function $(e,t,n){const r="binding:"+t;let i=e.getData(r);if(!i){const s=e.scope.generateUidIdentifier(t);i=s.name,e.setData(r,i),e.scope.push({id:s,init:n(i)})}return i}const W=(0,n.environmentVisitor)({ThisExpression(e,{thisPaths:t}){t.push(e)},JSXIdentifier(e,{thisPaths:t}){"this"===e.node.name&&(e.parentPath.isJSXMemberExpression({object:e.node})||e.parentPath.isJSXOpeningElement({name:e.node}))&&t.push(e)},CallExpression(e,{superCalls:t}){e.get("callee").isSuper()&&t.push(e)},MemberExpression(e,{superProps:t}){e.get("object").isSuper()&&t.push(e)},Identifier(e,{argumentsPaths:t}){if(!e.isReferencedIdentifier({name:"arguments"}))return;let n=e.scope;do{if(n.hasOwnBinding("arguments"))return void n.rename("arguments");if(n.path.isFunction()&&!n.path.isArrowFunctionExpression())break}while(n=n.parent);t.push(e)},MetaProperty(e,{newTargetPaths:t}){e.get("meta").isIdentifier({name:"new"})&&e.get("property").isIdentifier({name:"target"})&&t.push(e)}});const Y={"ReferencedIdentifier|BindingIdentifier"(e,t){e.node.name===t.name&&(t.needsRename=!0,e.stop())},Scope(e,t){e.scope.hasOwnBinding(t.name)&&e.skip()}};return fa}var ja,Ra={};function Ua(){return ja||(ja=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e._guessExecutionStatusRelativeTo=function(e){return m(this,e,new Map)},e._resolve=y,e.canHaveVariableDeclarationOrExpression=function(){return("init"===this.key||"left"===this.key)&&this.parentPath.isFor()},e.canSwapBetweenExpressionAndStatement=function(e){if("body"!==this.key||!this.parentPath.isArrowFunctionExpression())return!1;if(this.isExpression())return i(e);if(this.isBlockStatement())return s(e);return!1},e.getSource=function(){const e=this.node;if(e.end){const t=this.hub.getCode();if(t)return t.slice(e.start,e.end)}return""},e.isCompletionRecord=function(e){let t=this,n=!0;do{const{type:r,container:i}=t;if(!n&&(t.isFunction()||"StaticBlock"===r))return!!e;if(n=!1,Array.isArray(i)&&t.key!==i.length-1)return!1}while((t=t.parentPath)&&!t.isProgram()&&!t.isDoExpression());return!0},e.isConstantExpression=function(){if(this.isIdentifier()){const e=this.scope.getBinding(this.node.name);return!!e&&e.constant}if(this.isLiteral())return!this.isRegExpLiteral()&&(!this.isTemplateLiteral()||this.get("expressions").every(e=>e.isConstantExpression()));if(this.isUnaryExpression())return"void"===this.node.operator&&this.get("argument").isConstantExpression();if(this.isBinaryExpression()){const{operator:e}=this.node;return"in"!==e&&"instanceof"!==e&&this.get("left").isConstantExpression()&&this.get("right").isConstantExpression()}if(this.isMemberExpression())return!this.node.computed&&this.get("object").isIdentifier({name:"Symbol"})&&!this.scope.hasBinding("Symbol",{noGlobals:!0});if(this.isCallExpression())return 1===this.node.arguments.length&&this.get("callee").matchesPattern("Symbol.for")&&!this.scope.hasBinding("Symbol",{noGlobals:!0})&&this.get("arguments")[0].isStringLiteral();return!1},e.isInStrictMode=function(){const e=(this.isProgram()?this:this.parentPath).find(e=>{if(e.isProgram({sourceType:"module"}))return!0;if(e.isClass())return!0;if(e.isArrowFunctionExpression()&&!e.get("body").isBlockStatement())return!1;let t;if(e.isFunction())t=e.node.body;else{if(!e.isProgram())return!1;t=e.node}for(const e of t.directives)if("use strict"===e.value.value)return!0;return!1});return!!e},e.isNodeType=function(e){return c(this.type,e)},e.isStatementOrBlock=function(){return!this.parentPath.isLabeledStatement()&&!i(this.container)&&n.includes(this.key)},e.isStatic=function(){return this.scope.isStatic(this.node)},e.matchesPattern=function(e,t){return p(this.node,e,t)},e.referencesImport=function(e,t){if(!this.isReferencedIdentifier()){if(this.isJSXMemberExpression()&&this.node.property.name===t||(this.isMemberExpression()||this.isOptionalMemberExpression())&&(this.node.computed?l(this.node.property,{value:t}):this.node.property.name===t)){const t=this.get("object");return t.isReferencedIdentifier()&&t.referencesImport(e,"*")}return!1}const n=this.scope.getBinding(this.node.name);if(!n||"module"!==n.kind)return!1;const r=n.path,i=r.parentPath;if(!i.isImportDeclaration())return!1;if(i.node.source.value!==e)return!1;if(!t)return!0;if(r.isImportDefaultSpecifier()&&"default"===t)return!0;if(r.isImportNamespaceSpecifier()&&"*"===t)return!0;if(r.isImportSpecifier()&&a(r.node.imported,{name:t}))return!0;return!1},e.resolve=function(e,t){return y.call(this,e,t)||this},e.willIMaybeExecuteBefore=function(e){return"after"!==this._guessExecutionStatusRelativeTo(e)};var t=Pr();const{STATEMENT_OR_BLOCK_KEYS:n,VISITOR_KEYS:r,isBlockStatement:i,isExpression:s,isIdentifier:a,isLiteral:o,isStringLiteral:l,isType:c,matchesPattern:p}=t;function u(e){return e.isProgram()?e:(e.parentPath.scope.getFunctionParent()||e.parentPath.scope.getProgramParent()).path}function h(e,t){switch(e){case"LogicalExpression":case"AssignmentPattern":return"right"===t;case"ConditionalExpression":case"IfStatement":return"consequent"===t||"alternate"===t;case"WhileStatement":case"DoWhileStatement":case"ForInStatement":case"ForOfStatement":return"body"===t;case"ForStatement":return"body"===t||"update"===t;case"SwitchStatement":return"cases"===t;case"TryStatement":return"handler"===t;case"OptionalMemberExpression":return"property"===t;case"OptionalCallExpression":return"arguments"===t;default:return!1}}function d(e,t){for(let n=0;n<t;n++){const t=e[n];if(h(t.parent.type,t.parentKey))return!0}return!1}e.has=function(e){var t;const n=null==(t=this.node)?void 0:t[e];return n&&Array.isArray(n)?!!n.length:!!n},e.is=e.has,e.isnt=function(e){return!this.has(e)},e.equals=function(e,t){return this.node[e]===t};const f=Symbol();function m(e,t,n){const i={this:u(e),target:u(t)};if(i.target.node!==i.this.node)return function(e,t,n){let r,i=n.get(e.node);if(i){if(r=i.get(t.node))return r===f?"unknown":r}else n.set(e.node,i=new Map);i.set(t.node,f);const s=function(e,t,n){if(!t.isFunctionDeclaration())return"before"===m(e,t,n)?"before":"unknown";if(t.parentPath.isExportDeclaration())return"unknown";const r=t.scope.getBinding(t.node.id.name);if(!r.references)return"before";const i=r.referencePaths;let s;for(const r of i){if(!!r.find(e=>e.node===t.node))continue;if("callee"!==r.key||!r.parentPath.isCallExpression())return"unknown";const i=m(e,r,n);if(s&&s!==i)return"unknown";s=i}return s}(e,t,n);return i.set(t.node,s),s}(e,i.target,n);const s={target:t.getAncestry(),this:e.getAncestry()};if(s.target.includes(e))return"after";if(s.this.includes(t))return"before";let a;const o={target:0,this:0};for(;!a&&o.this<s.this.length;){const e=s.this[o.this];o.target=s.target.indexOf(e),o.target>=0?a=e:o.this++}if(!a)throw new Error("Internal Babel error - The two compared nodes don't appear to belong to the same program.");if(d(s.this,o.this-1)||d(s.target,o.target-1))return"unknown";const l={this:s.this[o.this-1],target:s.target[o.target-1]};if(l.target.listKey&&l.this.listKey&&l.target.container===l.this.container)return l.target.key>l.this.key?"before":"after";const c=r[a.type],p=c.indexOf(l.this.parentKey);return c.indexOf(l.target.parentKey)>p?"before":"after"}function y(e,t){var n;if(null==(n=t)||!n.includes(this))if((t=t||[]).push(this),this.isVariableDeclarator()){if(this.get("id").isIdentifier())return this.get("init").resolve(e,t)}else if(this.isReferencedIdentifier()){const n=this.scope.getBinding(this.node.name);if(!n)return;if(!n.constant)return;if("module"===n.kind)return;if(n.path!==this){const r=n.path.resolve(e,t);if(this.find(e=>e.node===r.node))return;return r}}else{if(this.isTypeCastExpression())return this.get("expression").resolve(e,t);if(e&&this.isMemberExpression()){const n=this.toComputedKey();if(!o(n))return;const r=n.value,i=this.get("object").resolve(e,t);if(i.isObjectExpression()){const n=i.get("properties");for(const i of n){if(!i.isProperty())continue;const n=i.get("key");let s=i.isnt("computed")&&n.isIdentifier({name:r});if(s=s||n.isLiteral({value:r}),s)return i.get("value").resolve(e,t)}}else if(i.isArrayExpression()&&!isNaN(+r)){const n=i.get("elements")[r];if(n)return n.resolve(e,t)}}}}}(Ra)),Ra}var Ka,Va={};function qa(){if(Ka)return Va;Ka=1,Object.defineProperty(Va,"__esModule",{value:!0}),Va._getKey=f,Va._getPattern=m,Va.get=function(e,t=!0){!0===t&&(t=this.context);const n=e.split(".");return 1===n.length?f.call(this,e,t):m.call(this,n,t)},Va.getAllNextSiblings=function(){let e=this.key,t=this.getSibling(++e);const n=[];for(;t.node;)n.push(t),t=this.getSibling(++e);return n},Va.getAllPrevSiblings=function(){let e=this.key,t=this.getSibling(--e);const n=[];for(;t.node;)n.push(t),t=this.getSibling(--e);return n},Va.getAssignmentIdentifiers=function(){return n(this.node)},Va.getBindingIdentifierPaths=function(e=!1,t=!1){const n=[this],i=Object.create(null);for(;n.length;){const s=n.shift();if(!s)continue;if(!s.node)continue;const a=r.keys[s.node.type];if(s.isIdentifier())if(e){(i[s.node.name]=i[s.node.name]||[]).push(s)}else i[s.node.name]=s;else{if(s.isExportDeclaration()){const e=s.get("declaration");e.isDeclaration()&&n.push(e);continue}if(t){if(s.isFunctionDeclaration()){n.push(s.get("id"));continue}if(s.isFunctionExpression())continue}if(a)for(let e=0;e<a.length;e++){const t=a[e],r=s.get(t);Array.isArray(r)?n.push(...r):r.node&&n.push(r)}}}return i},Va.getBindingIdentifiers=function(e){return r(this.node,e)},Va.getCompletionRecords=function(e=!1){return d(this,{canHaveBreak:!1,shouldPopulateBreak:!1,inCaseClause:!1,shouldPreserveBreak:e}).map(e=>e.path)},Va.getNextSibling=function(){return this.getSibling(this.key+1)},Va.getOpposite=function(){if("left"===this.key)return this.getSibling("right");if("right"===this.key)return this.getSibling("left");return null},Va.getOuterBindingIdentifierPaths=function(e=!1){return this.getBindingIdentifierPaths(e,!0)},Va.getOuterBindingIdentifiers=function(e){return i(this.node,e)},Va.getPrevSibling=function(){return this.getSibling(this.key-1)},Va.getSibling=function(t){return e.default.get({parentPath:this.parentPath,parent:this.parent,container:this.container,listKey:this.listKey,key:t}).setContext(this.context)};var e=za(),t=Pr();const{getAssignmentIdentifiers:n,getBindingIdentifiers:r,getOuterBindingIdentifiers:i,numericLiteral:s,unaryExpression:a}=t,o=0,l=1;function c(e,t,n){return e&&t.push(...d(e,n)),t}function p(e){e.forEach(e=>{e.type=l})}function u(e,t){e.forEach(e=>{e.path.isBreakStatement({label:null})&&(t?e.path.replaceWith(a("void",s(0))):e.path.remove())})}function h(e,t){const n=[];if(t.canHaveBreak){let r=[];for(let i=0;i<e.length;i++){const s=e[i],a=Object.assign({},t,{inCaseClause:!1});s.isBlockStatement()&&(t.inCaseClause||t.shouldPopulateBreak)?a.shouldPopulateBreak=!0:a.shouldPopulateBreak=!1;const c=d(s,a);if(c.length>0&&c.every(e=>e.type===l)){r.length>0&&c.every(e=>e.path.isBreakStatement({label:null}))?(p(r),n.push(...r),r.some(e=>e.path.isDeclaration())&&(n.push(...c),t.shouldPreserveBreak||u(c,!0)),t.shouldPreserveBreak||u(c,!1)):(n.push(...c),t.shouldPopulateBreak||t.shouldPreserveBreak||u(c,!0));break}if(i===e.length-1)n.push(...c);else{r=[];for(let e=0;e<c.length;e++){const t=c[e];t.type===l&&n.push(t),t.type===o&&r.push(t)}}}}else if(e.length)for(let r=e.length-1;r>=0;r--){const i=d(e[r],t);if(i.length>1||1===i.length&&!i[0].path.isVariableDeclaration()&&!i[0].path.isEmptyStatement()){n.push(...i);break}}return n}function d(e,t){let n=[];if(e.isIfStatement())n=c(e.get("consequent"),n,t),n=c(e.get("alternate"),n,t);else{if(e.isDoExpression()||e.isFor()||e.isWhile()||e.isLabeledStatement())return c(e.get("body"),n,t);if(e.isProgram()||e.isBlockStatement())return h(e.get("body"),t);if(e.isFunction())return d(e.get("body"),t);if(e.isTryStatement())n=c(e.get("block"),n,t),n=c(e.get("handler"),n,t);else{if(e.isCatchClause())return c(e.get("body"),n,t);if(e.isSwitchStatement())return function(e,t,n){let r=[];for(let i=0;i<e.length;i++){const s=d(e[i],n),a=[],c=[];for(const e of s)e.type===o&&a.push(e),e.type===l&&c.push(e);a.length&&(r=a),t.push(...c)}return t.push(...r),t}(e.get("cases"),n,t);if(e.isSwitchCase())return h(e.get("consequent"),{canHaveBreak:!0,shouldPopulateBreak:!1,inCaseClause:!0,shouldPreserveBreak:t.shouldPreserveBreak});e.isBreakStatement()?n.push(function(e){return{type:l,path:e}}(e)):n.push(function(e){return{type:o,path:e}}(e))}}return n}function f(t,n){const r=this.node,i=r[t];return Array.isArray(i)?i.map((s,a)=>e.default.get({listKey:t,parentPath:this,parent:r,container:i,key:a}).setContext(n)):e.default.get({parentPath:this,parent:r,container:r,key:t}).setContext(n)}function m(e,t){let n=this;for(const r of e)n="."===r?n.parentPath:Array.isArray(n)?n[r]:n.get(r,t);return n}return Va}var $a,Wa,Ya,Ja,Xa,Ha={};function za(){if(Wa)return kr;Wa=1,Object.defineProperty(kr,"__esModule",{value:!0}),kr.default=kr.SHOULD_STOP=kr.SHOULD_SKIP=kr.REMOVED=void 0;var e=Or(),t=Wr(),n=no(),r=ui(),i=Pr(),s=i,a=oi(),o=As(),l=function(){if(Cs)return ws;Cs=1,Object.defineProperty(ws,"__esModule",{value:!0}),ws.find=function(e){let t=this;do{if(e(t))return t}while(t=t.parentPath);return null},ws.findParent=function(e){let t=this;for(;t=t.parentPath;)if(e(t))return t;return null},ws.getAncestry=function(){let e=this;const t=[];do{t.push(e)}while(e=e.parentPath);return t},ws.getDeepestCommonAncestorFrom=function(e,t){if(!e.length)return this;if(1===e.length)return e[0];let n,r,i=1/0;const s=e.map(e=>{const t=[];do{t.unshift(e)}while((e=e.parentPath)&&e!==this);return t.length<i&&(i=t.length),t}),a=s[0];e:for(let e=0;e<i;e++){const t=a[e];for(const n of s)if(n[e]!==t)break e;n=e,r=t}if(r)return t?t(r,n,s):r;throw new Error("Couldn't find intersection")},ws.getEarliestCommonAncestorFrom=function(e){return this.getDeepestCommonAncestorFrom(e,function(e,n,r){let i;const s=t[e.type];for(const e of r){const t=e[n+1];i?(t.listKey&&i.listKey===t.listKey&&t.key<i.key||s.indexOf(i.parentKey)>s.indexOf(t.parentKey))&&(i=t):i=t}return i})},ws.getFunctionParent=function(){return this.findParent(e=>e.isFunction())},ws.getStatementParent=function(){let e=this;do{if(!e.parentPath||Array.isArray(e.container)&&e.isStatement())break;e=e.parentPath}while(e);if(e&&(e.isProgram()||e.isFile()))throw new Error("File/Program node, we can't possibly find a statement parent to this");return e},ws.inType=function(...e){let t=this;for(;t;){if(e.includes(t.node.type))return!0;t=t.parentPath}return!1},ws.isAncestor=function(e){return e.isDescendant(this)},ws.isDescendant=function(e){return!!this.findParent(t=>t===e)};var e=Pr();const{VISITOR_KEYS:t}=e;return ws}(),c=function(){if(Os)return _s;Os=1,Object.defineProperty(_s,"__esModule",{value:!0}),_s._getTypeAnnotation=E,_s.baseTypeStrictlyMatches=function(e){const t=this.getTypeAnnotation(),n=e.getTypeAnnotation();return!(r(t)||!o(t))&&n.type===t.type},_s.couldBeBaseType=function(e){const t=this.getTypeAnnotation();if(r(t))return!0;if(g(t)){for(const n of t.types)if(r(n)||v(e,n,!0))return!0;return!1}return v(e,t,!0)},_s.getTypeAnnotation=function(){let e=this.getData("typeAnnotation");return null!=e||(e=E.call(this)||n(),(T(e)||f(e))&&(e=e.typeAnnotation),this.setData("typeAnnotation",e)),e},_s.isBaseType=function(e,t){return v(e,this.getTypeAnnotation(),t)},_s.isGenericType=function(e){const t=this.getTypeAnnotation();return!("Array"!==e||!(d(t)||i(t)||y(t)))||(l(t)&&c(t.id,{name:e})||m(t)&&c(t.typeName,{name:e}))};var e=js(),t=Pr();const{anyTypeAnnotation:n,isAnyTypeAnnotation:r,isArrayTypeAnnotation:i,isBooleanTypeAnnotation:s,isEmptyTypeAnnotation:a,isFlowBaseAnnotation:o,isGenericTypeAnnotation:l,isIdentifier:c,isMixedTypeAnnotation:p,isNumberTypeAnnotation:u,isStringTypeAnnotation:h,isTSArrayType:d,isTSTypeAnnotation:f,isTSTypeReference:m,isTupleTypeAnnotation:y,isTypeAnnotation:T,isUnionTypeAnnotation:g,isVoidTypeAnnotation:x,stringTypeAnnotation:S,voidTypeAnnotation:b}=t,P=new WeakSet;function E(){const t=this.node;if(t){if(t.typeAnnotation)return t.typeAnnotation;if(!P.has(t)){P.add(t);try{var r;let n=e[t.type];if(n)return n.call(this,t);if(n=e[this.parentPath.type],null!=(r=n)&&r.validParent)return this.parentPath.getTypeAnnotation()}finally{P.delete(t)}}}else if("init"===this.key&&this.parentPath.isVariableDeclarator()){const e=this.parentPath.parentPath,t=e.parentPath;return"left"===e.key&&t.isForInStatement()?S():"left"===e.key&&t.isForOfStatement()?n():b()}}function v(e,t,n){if("string"===e)return h(t);if("number"===e)return u(t);if("boolean"===e)return s(t);if("any"===e)return r(t);if("mixed"===e)return p(t);if("empty"===e)return a(t);if("void"===e)return x(t);if(n)return!1;throw new Error(`Unknown base type ${e}`)}return _s}(),p=ca(),u=ha(),h=Ba(),d=Ua(),f=Qa(),m=f,y=ea(),T=ia(),g=qa(),x=function(){if($a)return Ha;$a=1,Object.defineProperty(Ha,"__esModule",{value:!0}),Ha.addComment=function(e,n,r){t(this.node,e,n,r)},Ha.addComments=function(e,t){n(this.node,e,t)},Ha.shareCommentsWithSiblings=function(){if("string"==typeof this.key)return;const e=this.node;if(!e)return;const t=e.trailingComments,n=e.leadingComments;if(!t&&!n)return;const i=this.getSibling(this.key-1),s=this.getSibling(this.key+1),a=Boolean(i.node),o=Boolean(s.node);a&&(n&&i.addComments("trailing",r(n,i.node.trailingComments)),t&&!o&&i.addComments("trailing",t)),o&&(t&&s.addComments("leading",r(t,s.node.leadingComments)),n&&!a&&s.addComments("leading",n))};var e=Pr();const{addComment:t,addComments:n}=e;function r(e,t){if(null==t||!t.length)return e;const n=new Set(t);return e.filter(e=>!n.has(e))}return Ha}(),S=Zr();const{validate:b}=i,P=t("babel");kr.REMOVED=1,kr.SHOULD_STOP=2,kr.SHOULD_SKIP=4;const E=kr.default=class e{constructor(e,t){this.contexts=[],this.state=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=t,this.hub=e,this.data=null,this.context=null,this.scope=null}get removed(){return(1&this._traverseFlags)>0}set removed(e){e?this._traverseFlags|=1:this._traverseFlags&=-2}get shouldStop(){return(2&this._traverseFlags)>0}set shouldStop(e){e?this._traverseFlags|=2:this._traverseFlags&=-3}get shouldSkip(){return(4&this._traverseFlags)>0}set shouldSkip(e){e?this._traverseFlags|=4:this._traverseFlags&=-5}static get({hub:t,parentPath:n,parent:r,container:i,listKey:s,key:o}){if(!t&&n&&(t=n.hub),!r)throw new Error("To get a node path the parent needs to exist");const l=i[o],c=a.getOrCreateCachedPaths(r,n);let p=c.get(l);return p||(p=new e(t,r),l&&c.set(l,p)),f.setup.call(p,n,i,s,o),p}getScope(e){return this.isScope()?new r.default(this):e}setData(e,t){return null==this.data&&(this.data=Object.create(null)),this.data[e]=t}getData(e,t){null==this.data&&(this.data=Object.create(null));let n=this.data[e];return void 0===n&&void 0!==t&&(n=this.data[e]=t),n}hasNode(){return null!=this.node}buildCodeFrameError(e,t=SyntaxError){return this.hub.buildError(this.node,e,t)}traverse(e,t){(0,n.default)(this.node,e,this.scope,t,this)}set(e,t){b(this.node,e,t),this.node[e]=t}getPathLocation(){const e=[];let t=this;do{let n=t.key;t.inList&&(n=`${t.listKey}[${n}]`),e.unshift(n)}while(t=t.parentPath);return e.join(".")}debug(e){P.enabled&&P(`${this.getPathLocation()} ${this.type}: ${e}`)}toString(){return(0,o.default)(this.node).code}get inList(){return!!this.listKey}set inList(e){e||(this.listKey=null)}get parentKey(){return this.listKey||this.key}},v={findParent:l.findParent,find:l.find,getFunctionParent:l.getFunctionParent,getStatementParent:l.getStatementParent,getEarliestCommonAncestorFrom:l.getEarliestCommonAncestorFrom,getDeepestCommonAncestorFrom:l.getDeepestCommonAncestorFrom,getAncestry:l.getAncestry,isAncestor:l.isAncestor,isDescendant:l.isDescendant,inType:l.inType,getTypeAnnotation:c.getTypeAnnotation,isBaseType:c.isBaseType,couldBeBaseType:c.couldBeBaseType,baseTypeStrictlyMatches:c.baseTypeStrictlyMatches,isGenericType:c.isGenericType,replaceWithMultiple:p.replaceWithMultiple,replaceWithSourceString:p.replaceWithSourceString,replaceWith:p.replaceWith,replaceExpressionWithStatements:p.replaceExpressionWithStatements,replaceInline:p.replaceInline,evaluateTruthy:u.evaluateTruthy,evaluate:u.evaluate,toComputedKey:h.toComputedKey,ensureBlock:h.ensureBlock,unwrapFunctionEnvironment:h.unwrapFunctionEnvironment,arrowFunctionToExpression:h.arrowFunctionToExpression,splitExportDeclaration:h.splitExportDeclaration,ensureFunctionName:h.ensureFunctionName,matchesPattern:d.matchesPattern,isStatic:d.isStatic,isNodeType:d.isNodeType,canHaveVariableDeclarationOrExpression:d.canHaveVariableDeclarationOrExpression,canSwapBetweenExpressionAndStatement:d.canSwapBetweenExpressionAndStatement,isCompletionRecord:d.isCompletionRecord,isStatementOrBlock:d.isStatementOrBlock,referencesImport:d.referencesImport,getSource:d.getSource,willIMaybeExecuteBefore:d.willIMaybeExecuteBefore,_guessExecutionStatusRelativeTo:d._guessExecutionStatusRelativeTo,resolve:d.resolve,isConstantExpression:d.isConstantExpression,isInStrictMode:d.isInStrictMode,isDenylisted:m.isDenylisted,visit:m.visit,skip:m.skip,skipKey:m.skipKey,stop:m.stop,setContext:m.setContext,requeue:m.requeue,requeueComputedKeyAndDecorators:m.requeueComputedKeyAndDecorators,remove:y.remove,insertBefore:T.insertBefore,insertAfter:T.insertAfter,unshiftContainer:T.unshiftContainer,pushContainer:T.pushContainer,getOpposite:g.getOpposite,getCompletionRecords:g.getCompletionRecords,getSibling:g.getSibling,getPrevSibling:g.getPrevSibling,getNextSibling:g.getNextSibling,getAllNextSiblings:g.getAllNextSiblings,getAllPrevSiblings:g.getAllPrevSiblings,get:g.get,getAssignmentIdentifiers:g.getAssignmentIdentifiers,getBindingIdentifiers:g.getBindingIdentifiers,getOuterBindingIdentifiers:g.getOuterBindingIdentifiers,getBindingIdentifierPaths:g.getBindingIdentifierPaths,getOuterBindingIdentifierPaths:g.getOuterBindingIdentifierPaths,shareCommentsWithSiblings:x.shareCommentsWithSiblings,addComment:x.addComment,addComments:x.addComments};Object.assign(E.prototype,v),E.prototype.arrowFunctionToShadowed=h[String("arrowFunctionToShadowed")],Object.assign(E.prototype,{has:d[String("has")],is:d[String("is")],isnt:d[String("isnt")],equals:d[String("equals")],hoist:T[String("hoist")],updateSiblingKeys:T.updateSiblingKeys,call:m.call,isBlacklisted:m[String("isBlacklisted")],setScope:m.setScope,resync:m.resync,popContext:m.popContext,pushContext:m.pushContext,setup:m.setup,setKey:m.setKey}),E.prototype._guessExecutionStatusRelativeToDifferentFunctions=d._guessExecutionStatusRelativeTo,E.prototype._guessExecutionStatusRelativeToDifferentFunctions=d._guessExecutionStatusRelativeTo,Object.assign(E.prototype,{_getTypeAnnotation:c._getTypeAnnotation,_replaceWith:p._replaceWith,_resolve:d._resolve,_call:m._call,_resyncParent:m._resyncParent,_resyncKey:m._resyncKey,_resyncList:m._resyncList,_resyncRemoved:m._resyncRemoved,_getQueueContexts:m._getQueueContexts,_removeFromScope:y._removeFromScope,_callRemovalHooks:y._callRemovalHooks,_remove:y._remove,_markRemoved:y._markRemoved,_assertUnremoved:y._assertUnremoved,_containerInsert:T._containerInsert,_containerInsertBefore:T._containerInsertBefore,_containerInsertAfter:T._containerInsertAfter,_verifyNodeList:T._verifyNodeList,_getKey:g._getKey,_getPattern:g._getPattern});for(const e of s.TYPES){const t=`is${e}`,n=s[t];E.prototype[t]=function(e){return n(this.node,e)},E.prototype[`assert${e}`]=function(t){if(!n(this.node,t))throw new TypeError(`Expected node path of type ${e}`)}}Object.assign(E.prototype,S);for(const t of Object.keys(e))"_"!==t[0]&&(s.TYPES.includes(t)||s.TYPES.push(t));return kr}function Ga(){if(Ja)return wr;Ja=1,Object.defineProperty(wr,"__esModule",{value:!0}),wr.traverseNode=function(t,r,i,s,a,o,l){const c=n[t.type];if(!c)return!1;const p=new e.default(i,r,s,a);if(l)return(null==o||!o[a.parentKey])&&p.visitQueue([a]);for(const e of c)if((null==o||!o[e])&&p.visit(t,e))return!0;return!1};var e=function(){if(Ya)return Ir;Ya=1,Object.defineProperty(Ir,"__esModule",{value:!0}),Ir.default=void 0;var e=za(),t=Pr(),n=Qa();const{VISITOR_KEYS:r}=t;return Ir.default=class{constructor(e,t,n,r){this.queue=null,this.priorityQueue=null,this.parentPath=r,this.scope=e,this.state=n,this.opts=t}shouldVisit(e){const t=this.opts;if(t.enter||t.exit)return!0;if(t[e.type])return!0;const n=r[e.type];if(null==n||!n.length)return!1;for(const t of n)if(e[t])return!0;return!1}create(t,n,r,i){return e.default.get({parentPath:this.parentPath,parent:t,container:n,key:r,listKey:i})}maybeQueue(e,t){this.queue&&(t?this.queue.push(e):this.priorityQueue.push(e))}visitMultiple(e,t,n){if(0===e.length)return!1;const r=[];for(let i=0;i<e.length;i++){const s=e[i];s&&this.shouldVisit(s)&&r.push(this.create(t,e,i,n))}return this.visitQueue(r)}visitSingle(e,t){return!!this.shouldVisit(e[t])&&this.visitQueue([this.create(e,e,t)])}visitQueue(e){this.queue=e,this.priorityQueue=[];const t=new WeakSet;let r=!1,i=0;for(;i<e.length;){const s=e[i];if(i++,n.resync.call(s),0!==s.contexts.length&&s.contexts[s.contexts.length-1]===this||n.pushContext.call(s,this),null===s.key)continue;const{node:a}=s;if(!t.has(a)){if(a&&t.add(a),s.visit()){r=!0;break}if(this.priorityQueue.length&&(r=this.visitQueue(this.priorityQueue),this.priorityQueue=[],this.queue=e,r))break}}for(let t=0;t<i;t++)n.popContext.call(e[t]);return this.queue=null,r}visit(e,t){const n=e[t];return!!n&&(Array.isArray(n)?this.visitMultiple(n,e,t):this.visitSingle(e,t))}},Ir}();za();var t=Pr();Qa();const{VISITOR_KEYS:n}=t;return wr}function Qa(){if(Xa)return Cr;Xa=1,Object.defineProperty(Cr,"__esModule",{value:!0}),Cr._call=s,Cr._getQueueContexts=function(){let e=this,t=this.contexts;for(;!t.length&&(e=e.parentPath,e);)t=e.contexts;return t},Cr._resyncKey=p,Cr._resyncList=u,Cr._resyncParent=c,Cr._resyncRemoved=function(){null!=this.key&&this.container&&this.container[this.key]===this.node||n._markRemoved.call(this)},Cr.call=i,Cr.isDenylisted=a,Cr.popContext=function(){this.contexts.pop(),this.contexts.length>0?this.setContext(this.contexts[this.contexts.length-1]):this.setContext(void 0)},Cr.pushContext=function(e){this.contexts.push(e),this.setContext(e)},Cr.requeue=function(e=this){if(e.removed)return;const t=this.contexts;for(const n of t)n.maybeQueue(e)},Cr.requeueComputedKeyAndDecorators=function(){const{context:e,node:t}=this;!r.isPrivate(t)&&t.computed&&e.maybeQueue(this.get("key"));if(t.decorators)for(const t of this.get("decorators"))e.maybeQueue(t)},Cr.resync=function(){if(this.removed)return;c.call(this),u.call(this),p.call(this)},Cr.setContext=function(e){null!=this.skipKeys&&(this.skipKeys={});this._traverseFlags=0,e&&(this.context=e,this.state=e.state,this.opts=e.opts);return l.call(this),this},Cr.setKey=h,Cr.setScope=l,Cr.setup=function(e,t,n,r){this.listKey=n,this.container=t,this.parentPath=e||this.parentPath,h.call(this,r)},Cr.skip=function(){this.shouldSkip=!0},Cr.skipKey=function(e){null==this.skipKeys&&(this.skipKeys={});this.skipKeys[e]=!0},Cr.stop=function(){this._traverseFlags|=t.SHOULD_SKIP|t.SHOULD_STOP},Cr.visit=function(){var t,n;if(!this.node)return!1;if(this.isDenylisted())return!1;if(null!=(t=(n=this.opts).shouldSkip)&&t.call(n,this))return!1;const r=this.context;if(this.shouldSkip||i.call(this,"enter"))return this.debug("Skip..."),this.shouldStop;return o(this,r),this.debug("Recursing into..."),this.shouldStop=(0,e.traverseNode)(this.node,this.opts,this.scope,this.state,this,this.skipKeys),o(this,r),i.call(this,"exit"),this.shouldStop};var e=Ga(),t=za(),n=ea(),r=Pr();function i(e){const t=this.opts;return this.debug(e),!(!this.node||!s.call(this,t[e]))||!!this.node&&s.call(this,null==(n=t[this.node.type])?void 0:n[e]);var n}function s(e){if(!e)return!1;for(const t of e){if(!t)continue;const e=this.node;if(!e)return!0;const n=t.call(this.state,this,this.state);if(n&&"object"==typeof n&&"function"==typeof n.then)throw new Error("You appear to be using a plugin with an async traversal visitor, which your current version of Babel does not support. If you're using a published plugin, you may need to upgrade your @babel/core version.");if(n)throw new Error(`Unexpected return value from visitor method ${t}`);if(this.node!==e)return!0;if(this._traverseFlags>0)return!0}return!1}function a(){var e;const t=null!=(e=this.opts.denylist)?e:this.opts.blacklist;return null==t?void 0:t.includes(this.node.type)}function o(e,t){e.context!==t&&(e.context=t,e.state=t.state,e.opts=t.opts)}function l(){var e,t;if(null!=(e=this.opts)&&e.noScope)return;let n,r=this.parentPath;for((("key"===this.key||"decorators"===this.listKey)&&r.isMethod()||"discriminant"===this.key&&r.isSwitchStatement())&&(r=r.parentPath);r&&!n;){var i;if(null!=(i=r.opts)&&i.noScope)return;n=r.scope,r=r.parentPath}this.scope=this.getScope(n),null==(t=this.scope)||t.init()}function c(){this.parentPath&&(this.parent=this.parentPath.node)}function p(){if(this.container&&this.node!==this.container[this.key]){if(Array.isArray(this.container)){for(let e=0;e<this.container.length;e++)if(this.container[e]===this.node)return void h.call(this,e)}else for(const e of Object.keys(this.container))if(this.container[e]===this.node)return void h.call(this,e);this.key=null}}function u(){if(!this.parent||!this.inList)return;const e=this.parent[this.listKey];this.container!==e&&(this.container=e||null)}function h(e){var t;this.key=e,this.node=this.container[this.key],this.type=null==(t=this.node)?void 0:t.type}return Cr.isBlacklisted=a,Cr}var Za,eo,to={};function no(){return eo||(eo=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"Hub",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(e,"NodePath",{enumerable:!0,get:function(){return s.default}}),Object.defineProperty(e,"Scope",{enumerable:!0,get:function(){return a.default}}),e.visitors=e.default=void 0,Qa();var t=ei();e.visitors=t;var n=Pr(),r=oi(),i=Ga(),s=za(),a=ui(),o=(Za||(Za=1,Object.defineProperty(to,"__esModule",{value:!0}),to.default=void 0,to.default=class{getCode(){}getScope(){}addHelper(){throw new Error("Helpers are not supported by the default hub.")}buildError(e,t,n=TypeError){return new n(t)}}),to);const{VISITOR_KEYS:l,removeProperties:c,traverseFast:p}=n;function u(e,n={},r,s,a,o){if(e){if(!n.noScope&&!r&&"Program"!==e.type&&"File"!==e.type)throw new Error(`You must pass a scope and parentPath unless traversing a Program/File. Instead of that you tried to traverse a ${e.type} node without passing scope and parentPath.`);if(!a&&o)throw new Error("visitSelf can only be used when providing a NodePath.");l[e.type]&&(t.explode(n),(0,i.traverseNode)(e,n,r,s,a,void 0,o))}}e.default=u,u.visitors=t,u.verify=t.verify,u.explode=t.explode,u.cheap=function(e,t){p(e,t)},u.node=function(e,t,n,r,s,a){(0,i.traverseNode)(e,t,n,r,s,a)},u.clearNode=function(e,t){c(e,t)},u.removeProperties=function(e,t){return p(e,u.clearNode,t),e},u.hasType=function(e,t,n){return(null==n||!n.includes(e.type))&&(e.type===t||p(e,function(e){return null!=n&&n.includes(e.type)?p.skip:e.type===t?p.stop:void 0}))},u.cache=r}(Ar)),Ar}var ro=x(no()),io=x(la());function so(e){return io.parse(e,{sourceType:"module",plugins:["jsx","typescript","classProperties","dynamicImport","exportDefaultFrom","exportNamespaceFrom","functionBind","nullishCoalescingOperator","objectRestSpread","optionalChaining","decorators-legacy"],allowAwaitOutsideFunction:!0})}const ao={is:e=>vr.isStringLiteral(e),get:e=>e.value},oo={is:e=>vr.isNumericLiteral(e),get:e=>e.value},lo={is:e=>vr.isBooleanLiteral(e),get:e=>e.value},co={is:e=>vr.isNullLiteral(e),get:e=>null},po={is:e=>vr.isIdentifier(e)&&"undefined"===e.name,get(e){}},uo={is:e=>vr.isObjectExpression(e),get:e=>go(e)},ho={is:e=>vr.isClass(e),get:e=>function(e){function t(e){return"static"in e&&!0===e.static}let n=e.body;if(!vr.isClassBody(n))return;const r={};return n.body.forEach(e=>{if(t(e)&&vr.isIdentifier(e.key))if(vr.isMethod(e)||vr.isTSDeclareMethod(e))r[e.key.name]=()=>{};else{const t=To.find(t=>t.is(e.value));t&&(r[e.key.name]=t.get(e.value))}}),r}(e)},fo={is:e=>vr.isArrayExpression(e),get:e=>xo(e)},mo={is:e=>vr.isFunctionExpression(e),get:e=>function(){}},yo={is:e=>vr.isArrowFunctionExpression(e),get:e=>()=>{}},To=[ao,oo,lo,co,po,uo,fo,ho,mo,yo];function go(e){const t={};return e.properties.forEach(e=>{if(vr.isObjectMember(e)&&vr.isIdentifier(e.key))if(vr.isObjectMethod(e))t[e.key.name]=()=>{};else{const n=To.find(t=>t.is(e.value));n&&(t[e.key.name]=n.get(e.value))}}),t}function xo(e){const t=[];return e.elements.forEach(e=>{const n=To.find(t=>t.is(e));n&&t.push(n.get(e))}),t}function So(e){const t=so(e);let n;return ro(t,{Program:{enter(e){const t=e.node,r=function(e){for(const t of e.body)if(vr.isExportDefaultDeclaration(t))return t.declaration;return null}(t);if(r)if(vr.isIdentifier(r)){const{name:e}=r;n=function(e){const t={};for(const n of e.programNode.body){let r=n;if(vr.isExpressionStatement(r)&&(r=r.expression),vr.isAssignmentExpression(r)&&vr.isMemberExpression(r.left)&&vr.isIdentifier(r.left.object)&&r.left.object.name===e.name){const e=To.find(e=>e.is(vr.isAssignmentExpression(r)&&r.right));e&&(t[r.left.property.name]=e.get(r.right))}}return t}({programNode:t,name:e})}else if(vr.isObjectExpression(r))n=go(r);else if(vr.isArrayExpression(r))n=xo(r);else{const e=To.find(e=>e.is(r));e&&(n=e.get(r))}}}}),n}function bo(e){return/^\\\\\?\\/.test(e)?e:e.replace(/\\/g,"/")}const Po={javascript:[".ts",".tsx",".js",".jsx"],css:[".less",".sass",".scss",".stylus",".css"]};function Eo(e){const n=Po[e.type];for(const r of n){const n=`${e.fileNameWithoutExt}${r}`,i=bo(t(e.base,n));if(l(i))return{path:i,filename:n}}return null}const vo=/^\[(.+?)\]/;function Ao(e){return l(e)?c(e).filter(n=>{const r=t(e,n),i=p(r),s=i.isDirectory(),a=i.isFile();if(s&&["components","component","utils","util"].includes(n))return!1;if("."===n.charAt(0))return!1;if("_"===n.charAt(0))return!1;if(/\.(test|spec|e2e)\.(j|t)sx?$/.test(n))return!1;if(/\.d\.ts$/.test(n))return!1;if(a){if(!/\.(j|t)sx?$/.test(n))return!1;const e=u(r,"utf-8");try{if(!function(e){const t=so(e);let n=!1;return ro(t,{JSXElement(e){n=!0,e.stop()},JSXFragment(e){n=!0,e.stop()}}),n}(e))return!1}catch(e){throw new Error(`Parse conventional route component ${r} failed, ${e.message}`)}}return!0}):[]}function Co(e,i,s){const{root:a,relDir:o=""}=e,l=t(a,o,s),c=p(l),u=vo.test(s);if(c.isDirectory()){const n=t(o,s),r=Eo({base:t(a,n),fileNameWithoutExt:"_layout",type:"javascript"}),l={path:Io(n),routes:ko({...e,relDir:t(n)}),__isDynamic:u,...r?{component:r.path}:{exact:!0,__toMerge:!0}};i.push(wo(l,e))}else{const a=n(s,r(s));i.push(wo({path:Io(t(o,a)),exact:!0,component:l,__isDynamic:u},e))}return i}function wo(e,n){let r;if(e.component){try{r=So(u(e.component,"utf-8"))}catch(t){throw new Error(`Parse conventional route component ${e.component} failed, ${t.message}`)}e.component=bo(i(t(n.root,".."),e.component)),e.component=`${n.componentPrefix||"@/"}${e.component}`}return{...e,..."object"==typeof r?r:{}}}function Io(e,t){return"/index/index"===(e=`/${e=bo(e).split("/").map(e=>((e=e.replace(vo,":$1")).endsWith("$")&&(e=e.slice(0,-1)+"?"),e)).join("/")}`)&&(e="/"),"/"!==(e=e.replace(/\/index$/,"/"))&&"/"===e.slice(-1)&&(e=e.slice(0,-1)),e}function ko(e){const{root:n,relDir:r="",config:i}=e,s=function(e){const t=[],n=[],r=[];return e.forEach(e=>{const{__isDynamic:i,exact:s}=e;delete e.__isDynamic,i?t.push(e):s?n.push(e):r.push(e)}),y(t.length<=1,"We should not have multiple dynamic routes under a directory."),[...n,...r,...t].reduce((e,t)=>(t.__toMerge&&t.routes?e=e.concat(t.routes):e.push(t),e),[])}(Ao(t(n,r)).reduce(Co.bind(null,e),[]));if(!r){const t=Eo({base:n,fileNameWithoutExt:`../${i.singular?"layout":"layouts"}/index`,type:"javascript"});if(t)return[wo({path:"/",component:t.path,routes:s},e)]}return s}const No=new Map;function Oo(t){const n=e.extname(t);if(![".tsx",".ts",".jsx",".js"].includes(n))return!1;try{const e=o.readFileSync(t,"utf-8");return/export\s+default/.test(e)}catch{return!1}}function _o(e){if(!Oo(e))return!1;const t=function(e){try{const t=o.readFileSync(e,"utf-8");return`${t.length}-${t.slice(0,100)}-${t.slice(-100)}`}catch(t){return console.error("读取文件失败:",e,t),""}}(e),n=No.get(e);return(void 0===n||t!==n)&&(No.set(e,t),!0)}function Do(e){const t={path:e.path||""};if(void 0!==e.exact&&(t.exact=e.exact),e.component){const n=e.component.replace(/\.(tsx|ts|jsx|js)$/,"");t.component=`dynamic({ loader: () => import('${n}'), loading: LoadingComponent})`}return e.title&&"string"==typeof e.title&&(t.title=`$t({ defaultMessage: "${e.title}" })`),!0===e.keepAlive&&(t.keepAlive=!0),e.authority&&Array.isArray(e.authority)&&(t.authority=e.authority),e.routes&&e.routes.length>0&&(t.routes=e.routes.map(Do)),t}async function Lo(t,n){function r(e,t=2){const n=" ".repeat(t),i=" ".repeat(t+2);let s=`${n}{\n`;if(s+=`${i}path: '${e.path}',\n`,void 0!==e.exact&&null!==e.exact&&(s+=`${i}exact: ${e.exact},\n`),void 0!==e.component&&null!==e.component&&(s+=`${i}component: ${e.component},\n`),void 0!==e.title&&null!==e.title&&(s+=`${i}title: ${e.title},\n`),e.authority&&(s+=`${i}authority: ${JSON.stringify(e.authority)},\n`),e.keepAlive&&(s+=`${i}keepAlive: ${e.keepAlive},\n`),e.routes&&e.routes.length>0){s+=`${i}routes: [\n${e.routes.map(e=>r(e,t+2)).join(",\n")}\n${i}],\n`}return s=s.replace(/,\n$/,"\n"),s+=`${n}}`,s}const i=t.map(e=>r(e)).join(",\n"),s=`/**\n * 自动根据 pages 目录生成路由配置\n * 新增、删除、修改组件 title、keepAlive、authority 属性时,会自动更新路由配置\n * 路由组件只支持默认导出\n */\nimport { dynamic } from '@lemon-fe/vite-plugin-micro-frontend/runtime';\nimport LoadingComponent from '${n.defaultLoadingComponentPath||"@/components/loading"}';\nimport { $t } from '${n.intlPath||"@/utils/intl"}';\n\nexport const routers = [\n${i}\n];\n`;try{const t=e.resolve(process.cwd(),".prettierrc");let n={};if(o.existsSync(t))try{const e=o.readFileSync(t,"utf-8");n=JSON.parse(e)}catch(e){console.warn("⚠️ 读取 prettier 配置失败,使用默认配置:",e)}const r={parser:"typescript",...n};return await d.format(s,r)}catch(e){return console.error("格式化代码失败:",e),s}}function Mo(t={}){const{pagesDir:n,outputPath:r,watch:i=!0,ignoreDirs:s=["components","utils","hooks","typings"],routeTemplate:a={}}=t;let l=!1,c=null,p=!1;const u=n||e.resolve(process.cwd(),"src/pages"),d=r||e.resolve(process.cwd(),"src/routes.ts"),f=async()=>{if(!o.existsSync(u))return void console.warn("⚠️ pages 目录不存在:",u);const e=function(e,t){return ko({root:e,componentPrefix:t.pageAliasPrefix,config:{singular:!1}}).map(Do)}(u,a),t=await Lo(e,a);o.writeFileSync(d,t),console.log("✅ 路由已生成:",d)},m=()=>{c&&(c.close(),c=null,l=!1,No.clear())};return{name:"micro-frontend:routes",enforce:"pre",configureServer(e){p||(f(),p=!0),(()=>{if(l||!i)return;if(!o.existsSync(u))return;const e=["**/node_modules/**","**/*.d.ts","**/*.less","**/*.css","**/*.scss","**/*.sass",...s.map(e=>`**/${e}/**`)];c=h.watch(u,{ignored:e,persistent:!0,ignoreInitial:!0}),c.on("add",e=>{Oo(e)&&f()}).on("change",e=>{Oo(e)&&_o(e)&&f()}).on("unlink",e=>{Oo(e)&&(No.delete(e),f())}).on("addDir",()=>{f()}).on("unlinkDir",()=>{f()}).on("error",e=>{console.error("❌ 文件监听错误:",e)}),l=!0})(),e.httpServer?.on("close",m)},buildStart(){p||(console.log("🚀 构建开始,生成路由文件..."),f(),p=!0)}}}function Fo(t){const{remotes:n,outputPath:r}=t,i=r||e.resolve(process.cwd(),"src/utils/mf.tsx"),s=()=>{const t=function(e){const t=JSON.stringify(e,null,2);return"/* eslint-disable */\nimport { lazy, Suspense, type ReactNode, type ComponentType } from 'react';\n\n// 远程模块配置\nconst remotes = __REMOTES_JSON__ as const;\n\ntype RemoteAlias = keyof typeof remotes;\ntype ModuleSpecifier = `${RemoteAlias}/${string}`;\n\n// 多个入口文件之间共享的变量\nconst entryShared = (window as any).__entry_shared__ || {};\n\n// 脚本加载状态: undefined=未加载, Promise=加载中, true=已完成\nconst scriptCache: Record<string, Promise<void> | true | undefined> = {};\n\n/**\n * 获取多入口共享变量(懒初始化单例)\n */\nexport function getEntryShared<T>(key: string, init: () => T): T {\n return (entryShared[key] ??= init()) as T;\n}\n\n/**\n * 安全加载远程组件\n */\nexport function safeRemoteComponent<T extends ComponentType<any>>(opts: {\n moduleSpecifier: ModuleSpecifier;\n fallbackComponent: T;\n loadingElement?: ReactNode;\n}): T {\n const LazyComponent = lazy<T>(() =>\n loadRemoteModule(opts.moduleSpecifier, { default: opts.fallbackComponent }),\n );\n\n return ((props: any) => (\n <Suspense fallback={opts.loadingElement ?? null}>\n <LazyComponent {...props} />\n </Suspense>\n )) as T;\n}\n\n// ============ 内部实现 ============\n\nasync function loadRemoteModule<T>(specifier: ModuleSpecifier, fallback: T): Promise<T> {\n try {\n const slashIndex = specifier.indexOf('/');\n const alias = specifier.slice(0, slashIndex) as RemoteAlias;\n const moduleName = specifier.slice(slashIndex + 1);\n const remote = remotes[alias];\n\n if (!remote) {\n console.error(`[MF] Unknown remote alias: \"${alias}\"`);\n return fallback;\n }\n\n await loadScriptOnce(remote.remoteName, remote.entry);\n\n const container = (window as any)[remote.remoteName];\n const factory = await container.get(`./${moduleName}`);\n return factory();\n } catch (e) {\n console.error(`[MF] Failed to load \"${specifier}\"`, e);\n return fallback;\n }\n}\n\nasync function loadScriptOnce(name: string, url: string): Promise<void> {\n const cached = scriptCache[name];\n\n if (cached === true) return;\n if (cached) return cached;\n\n const promise = new Promise<void>((resolve, reject) => {\n const script = document.createElement('script');\n script.src = `${url}?t=${Date.now()}`;\n script.async = true;\n script.onload = () => resolve();\n script.onerror = reject;\n document.head.appendChild(script);\n }).then(\n () => {\n scriptCache[name] = true;\n },\n e => {\n scriptCache[name] = undefined;\n throw e;\n },\n );\n\n scriptCache[name] = promise;\n return promise;\n}\n\n// ==== Vite Module Federation 动态加载 ===\n\ntype RemoteComponentOptions<P = any> = {\n /** 远程模块加载函数,如 () => import('remoteApp/Component') */\n loader: () => Promise<{ default: ComponentType<P> }>;\n /** 加载失败时的回退组件 */\n fallback?: ComponentType<P>;\n /** 加载中显示的元素 */\n loading?: ReactNode;\n};\n\n/**\n * 创建一个动态加载的远程联邦组件\n * @example\n * const RemoteButton = createRemoteComponent({\n * loader: () => import('remoteApp/Button'),\n * fallback: () => <div>加载失败</div>,\n * loading: <Spin />,\n * });\n */\nexport function createRemoteComponent<P extends object = {}>(\n options: RemoteComponentOptions<P>,\n): ComponentType<P> {\n const { loader, fallback: Fallback, loading = null } = options;\n\n const LazyComponent = lazy(() =>\n loader().catch(error => {\n console.error('Failed to load remote component:', error);\n if (Fallback) {\n return { default: Fallback };\n }\n throw error;\n }),\n );\n\n const RemoteWrapper: React.FC<P> = props => (\n <Suspense fallback={loading}>\n {/* @ts-expect-error: 类型不完全匹配,但实际可以正常渲染 */}\n <LazyComponent {...props} />\n </Suspense>\n );\n\n return RemoteWrapper as ComponentType<P>;\n}\n\n".replace("__REMOTES_JSON__",t)}(n),r=e.dirname(i);if(o.existsSync(r)||o.mkdirSync(r,{recursive:!0}),o.existsSync(i)){if(o.readFileSync(i,"utf-8")===t)return}o.writeFileSync(i,t),console.log("✅ mf.tsx 已生成:",i)};return{name:"micro-frontend:mf-generator",enforce:"pre",configResolved(){s()},buildStart(){s()}}}var Bo,jo,Ro,Uo={exports:{}},Ko={};function Vo(){if(jo)return Bo;jo=1;var e=Object.getOwnPropertySymbols,t=Object.prototype.hasOwnProperty,n=Object.prototype.propertyIsEnumerable;return Bo=function(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(t).map(function(e){return t[e]}).join(""))return!1;var r={};return"abcdefghijklmnopqrst".split("").forEach(function(e){r[e]=e}),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},r)).join("")}catch(e){return!1}}()?Object.assign:function(r,i){for(var s,a,o=function(e){if(null==e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}(r),l=1;l<arguments.length;l++){for(var c in s=Object(arguments[l]))t.call(s,c)&&(o[c]=s[c]);if(e){a=e(s);for(var p=0;p<a.length;p++)n.call(s,a[p])&&(o[a[p]]=s[a[p]])}}return o},Bo}function qo(){if(Ro)return Ko;Ro=1;var e=Vo(),t=60103,n=60106;Ko.Fragment=60107,Ko.StrictMode=60108,Ko.Profiler=60114;var r=60109,i=60110,s=60112;Ko.Suspense=60113;var a=60115,o=60116;if("function"==typeof Symbol&&Symbol.for){var l=Symbol.for;t=l("react.element"),n=l("react.portal"),Ko.Fragment=l("react.fragment"),Ko.StrictMode=l("react.strict_mode"),Ko.Profiler=l("react.profiler"),r=l("react.provider"),i=l("react.context"),s=l("react.forward_ref"),Ko.Suspense=l("react.suspense"),a=l("react.memo"),o=l("react.lazy")}var c="function"==typeof Symbol&&Symbol.iterator;function p(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n<arguments.length;n++)t+="&args[]="+encodeURIComponent(arguments[n]);return"Minified React error #"+e+"; visit "+t+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var u={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},h={};function d(e,t,n){this.props=e,this.context=t,this.refs=h,this.updater=n||u}function f(){}function m(e,t,n){this.props=e,this.context=t,this.refs=h,this.updater=n||u}d.prototype.isReactComponent={},d.prototype.setState=function(e,t){if("object"!=typeof e&&"function"!=typeof e&&null!=e)throw Error(p(85));this.updater.enqueueSetState(this,e,t,"setState")},d.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")},f.prototype=d.prototype;var y=m.prototype=new f;y.constructor=m,e(y,d.prototype),y.isPureReactComponent=!0;var T={current:null},g=Object.prototype.hasOwnProperty,x={key:!0,ref:!0,__self:!0,__source:!0};function S(e,n,r){var i,s={},a=null,o=null;if(null!=n)for(i in void 0!==n.ref&&(o=n.ref),void 0!==n.key&&(a=""+n.key),n)g.call(n,i)&&!x.hasOwnProperty(i)&&(s[i]=n[i]);var l=arguments.length-2;if(1===l)s.children=r;else if(1<l){for(var c=Array(l),p=0;p<l;p++)c[p]=arguments[p+2];s.children=c}if(e&&e.defaultProps)for(i in l=e.defaultProps)void 0===s[i]&&(s[i]=l[i]);return{$$typeof:t,type:e,key:a,ref:o,props:s,_owner:T.current}}function b(e){return"object"==typeof e&&null!==e&&e.$$typeof===t}var P=/\/+/g;function E(e,t){return"object"==typeof e&&null!==e&&null!=e.key?function(e){var t={"=":"=0",":":"=2"};return"$"+e.replace(/[=:]/g,function(e){return t[e]})}(""+e.key):t.toString(36)}function v(e,r,i,s,a){var o=typeof e;"undefined"!==o&&"boolean"!==o||(e=null);var l=!1;if(null===e)l=!0;else switch(o){case"string":case"number":l=!0;break;case"object":switch(e.$$typeof){case t:case n:l=!0}}if(l)return a=a(l=e),e=""===s?"."+E(l,0):s,Array.isArray(a)?(i="",null!=e&&(i=e.replace(P,"$&/")+"/"),v(a,r,i,"",function(e){return e})):null!=a&&(b(a)&&(a=function(e,n){return{$$typeof:t,type:e.type,key:n,ref:e.ref,props:e.props,_owner:e._owner}}(a,i+(!a.key||l&&l.key===a.key?"":(""+a.key).replace(P,"$&/")+"/")+e)),r.push(a)),1;if(l=0,s=""===s?".":s+":",Array.isArray(e))for(var u=0;u<e.length;u++){var h=s+E(o=e[u],u);l+=v(o,r,i,h,a)}else if(h=function(e){return null===e||"object"!=typeof e?null:"function"==typeof(e=c&&e[c]||e["@@iterator"])?e:null}(e),"function"==typeof h)for(e=h.call(e),u=0;!(o=e.next()).done;)l+=v(o=o.value,r,i,h=s+E(o,u++),a);else if("object"===o)throw r=""+e,Error(p(31,"[object Object]"===r?"object with keys {"+Object.keys(e).join(", ")+"}":r));return l}function A(e,t,n){if(null==e)return e;var r=[],i=0;return v(e,r,"","",function(e){return t.call(n,e,i++)}),r}function C(e){if(-1===e._status){var t=e._result;t=t(),e._status=0,e._result=t,t.then(function(t){0===e._status&&(t=t.default,e._status=1,e._result=t)},function(t){0===e._status&&(e._status=2,e._result=t)})}if(1===e._status)return e._result;throw e._result}var w={current:null};function I(){var e=w.current;if(null===e)throw Error(p(321));return e}var k={ReactCurrentDispatcher:w,ReactCurrentBatchConfig:{transition:0},ReactCurrentOwner:T,IsSomeRendererActing:{current:!1},assign:e};return Ko.Children={map:A,forEach:function(e,t,n){A(e,function(){t.apply(this,arguments)},n)},count:function(e){var t=0;return A(e,function(){t++}),t},toArray:function(e){return A(e,function(e){return e})||[]},only:function(e){if(!b(e))throw Error(p(143));return e}},Ko.Component=d,Ko.PureComponent=m,Ko.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=k,Ko.cloneElement=function(n,r,i){if(null==n)throw Error(p(267,n));var s=e({},n.props),a=n.key,o=n.ref,l=n._owner;if(null!=r){if(void 0!==r.ref&&(o=r.ref,l=T.current),void 0!==r.key&&(a=""+r.key),n.type&&n.type.defaultProps)var c=n.type.defaultProps;for(u in r)g.call(r,u)&&!x.hasOwnProperty(u)&&(s[u]=void 0===r[u]&&void 0!==c?c[u]:r[u])}var u=arguments.length-2;if(1===u)s.children=i;else if(1<u){c=Array(u);for(var h=0;h<u;h++)c[h]=arguments[h+2];s.children=c}return{$$typeof:t,type:n.type,key:a,ref:o,props:s,_owner:l}},Ko.createContext=function(e,t){return void 0===t&&(t=null),(e={$$typeof:i,_calculateChangedBits:t,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null}).Provider={$$typeof:r,_context:e},e.Consumer=e},Ko.createElement=S,Ko.createFactory=function(e){var t=S.bind(null,e);return t.type=e,t},Ko.createRef=function(){return{current:null}},Ko.forwardRef=function(e){return{$$typeof:s,render:e}},Ko.isValidElement=b,Ko.lazy=function(e){return{$$typeof:o,_payload:{_status:-1,_result:e},_init:C}},Ko.memo=function(e,t){return{$$typeof:a,type:e,compare:void 0===t?null:t}},Ko.useCallback=function(e,t){return I().useCallback(e,t)},Ko.useContext=function(e,t){return I().useContext(e,t)},Ko.useDebugValue=function(){},Ko.useEffect=function(e,t){return I().useEffect(e,t)},Ko.useImperativeHandle=function(e,t,n){return I().useImperativeHandle(e,t,n)},Ko.useLayoutEffect=function(e,t){return I().useLayoutEffect(e,t)},Ko.useMemo=function(e,t){return I().useMemo(e,t)},Ko.useReducer=function(e,t,n){return I().useReducer(e,t,n)},Ko.useRef=function(e){return I().useRef(e)},Ko.useState=function(e){return I().useState(e)},Ko.version="17.0.2",Ko}var $o,Wo,Yo={};function Jo(){return $o||($o=1,e=Yo,"production"!==process.env.NODE_ENV&&function(){var t=Vo(),n=60103,r=60106;e.Fragment=60107,e.StrictMode=60108,e.Profiler=60114;var i=60109,s=60110,a=60112;e.Suspense=60113;var o=60120,l=60115,c=60116,p=60121,u=60122,h=60117,d=60129,f=60131;if("function"==typeof Symbol&&Symbol.for){var m=Symbol.for;n=m("react.element"),r=m("react.portal"),e.Fragment=m("react.fragment"),e.StrictMode=m("react.strict_mode"),e.Profiler=m("react.profiler"),i=m("react.provider"),s=m("react.context"),a=m("react.forward_ref"),e.Suspense=m("react.suspense"),o=m("react.suspense_list"),l=m("react.memo"),c=m("react.lazy"),p=m("react.block"),u=m("react.server.block"),h=m("react.fundamental"),m("react.scope"),m("react.opaque.id"),d=m("react.debug_trace_mode"),m("react.offscreen"),f=m("react.legacy_hidden")}var y="function"==typeof Symbol&&Symbol.iterator;function T(e){if(null===e||"object"!=typeof e)return null;var t=y&&e[y]||e["@@iterator"];return"function"==typeof t?t:null}var g={current:null},x={current:null},S={},b=null;function P(e){b=e}S.setExtraStackFrame=function(e){b=e},S.getCurrentStack=null,S.getStackAddendum=function(){var e="";b&&(e+=b);var t=S.getCurrentStack;return t&&(e+=t()||""),e};var E={ReactCurrentDispatcher:g,ReactCurrentBatchConfig:{transition:0},ReactCurrentOwner:x,IsSomeRendererActing:{current:!1},assign:t};function v(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];C("warn",e,n)}function A(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];C("error",e,n)}function C(e,t,n){var r=E.ReactDebugCurrentFrame.getStackAddendum();""!==r&&(t+="%s",n=n.concat([r]));var i=n.map(function(e){return""+e});i.unshift("Warning: "+t),Function.prototype.apply.call(console[e],console,i)}E.ReactDebugCurrentFrame=S;var w={};function I(e,t){var n=e.constructor,r=n&&(n.displayName||n.name)||"ReactClass",i=r+"."+t;w[i]||(A("Can't call %s on a component that is not yet mounted. This is a no-op, but it might indicate a bug in your application. Instead, assign to `this.state` directly or define a `state = {};` class property with the desired state in the %s component.",t,r),w[i]=!0)}var k={isMounted:function(e){return!1},enqueueForceUpdate:function(e,t,n){I(e,"forceUpdate")},enqueueReplaceState:function(e,t,n,r){I(e,"replaceState")},enqueueSetState:function(e,t,n,r){I(e,"setState")}},N={};function O(e,t,n){this.props=e,this.context=t,this.refs=N,this.updater=n||k}Object.freeze(N),O.prototype.isReactComponent={},O.prototype.setState=function(e,t){if("object"!=typeof e&&"function"!=typeof e&&null!=e)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")},O.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")};var _={isMounted:["isMounted","Instead, make sure to clean up subscriptions and pending requests in componentWillUnmount to prevent memory leaks."],replaceState:["replaceState","Refactor your code to use setState instead (see https://github.com/facebook/react/issues/3236)."]},D=function(e,t){Object.defineProperty(O.prototype,e,{get:function(){v("%s(...) is deprecated in plain JavaScript React classes. %s",t[0],t[1])}})};for(var L in _)_.hasOwnProperty(L)&&D(L,_[L]);function M(){}function F(e,t,n){this.props=e,this.context=t,this.refs=N,this.updater=n||k}M.prototype=O.prototype;var B=F.prototype=new M;function j(e){return e.displayName||"Context"}function R(t){if(null==t)return null;if("number"==typeof t.tag&&A("Received an unexpected object in getComponentName(). This is likely a bug in React. Please file an issue."),"function"==typeof t)return t.displayName||t.name||null;if("string"==typeof t)return t;switch(t){case e.Fragment:return"Fragment";case r:return"Portal";case e.Profiler:return"Profiler";case e.StrictMode:return"StrictMode";case e.Suspense:return"Suspense";case o:return"SuspenseList"}if("object"==typeof t)switch(t.$$typeof){case s:return j(t)+".Consumer";case i:return j(t._context)+".Provider";case a:return d=t,f=t.render,m="ForwardRef",y=f.displayName||f.name||"",d.displayName||(""!==y?m+"("+y+")":m);case l:return R(t.type);case p:return R(t._render);case c:var n=t,u=n._payload,h=n._init;try{return R(h(u))}catch(e){return null}}var d,f,m,y;return null}B.constructor=F,t(B,O.prototype),B.isPureReactComponent=!0;var U,K,V,q=Object.prototype.hasOwnProperty,$={key:!0,ref:!0,__self:!0,__source:!0};function W(e){if(q.call(e,"ref")){var t=Object.getOwnPropertyDescriptor(e,"ref").get;if(t&&t.isReactWarning)return!1}return void 0!==e.ref}function Y(e){if(q.call(e,"key")){var t=Object.getOwnPropertyDescriptor(e,"key").get;if(t&&t.isReactWarning)return!1}return void 0!==e.key}V={};var J=function(e,t,r,i,s,a,o){var l={$$typeof:n,type:e,key:t,ref:r,props:o,_owner:a,_store:{}};return Object.defineProperty(l._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(l,"_self",{configurable:!1,enumerable:!1,writable:!1,value:i}),Object.defineProperty(l,"_source",{configurable:!1,enumerable:!1,writable:!1,value:s}),Object.freeze&&(Object.freeze(l.props),Object.freeze(l)),l};function X(e,t,n){var r,i={},s=null,a=null,o=null,l=null;if(null!=t)for(r in W(t)&&(a=t.ref,function(e){if("string"==typeof e.ref&&x.current&&e.__self&&x.current.stateNode!==e.__self){var t=R(x.current.type);V[t]||(A('Component "%s" contains the string ref "%s". Support for string refs will be removed in a future major release. This case cannot be automatically converted to an arrow function. We ask you to manually fix this case by using useRef() or createRef() instead. Learn more about using refs safely here: https://reactjs.org/link/strict-mode-string-ref',t,e.ref),V[t]=!0)}}(t)),Y(t)&&(s=""+t.key),o=void 0===t.__self?null:t.__self,l=void 0===t.__source?null:t.__source,t)q.call(t,r)&&!$.hasOwnProperty(r)&&(i[r]=t[r]);var c=arguments.length-2;if(1===c)i.children=n;else if(c>1){for(var p=Array(c),u=0;u<c;u++)p[u]=arguments[u+2];Object.freeze&&Object.freeze(p),i.children=p}if(e&&e.defaultProps){var h=e.defaultProps;for(r in h)void 0===i[r]&&(i[r]=h[r])}if(s||a){var d="function"==typeof e?e.displayName||e.name||"Unknown":e;s&&function(e,t){var n=function(){U||(U=!0,A("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",t))};n.isReactWarning=!0,Object.defineProperty(e,"key",{get:n,configurable:!0})}(i,d),a&&function(e,t){var n=function(){K||(K=!0,A("%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",t))};n.isReactWarning=!0,Object.defineProperty(e,"ref",{get:n,configurable:!0})}(i,d)}return J(e,s,a,o,l,x.current,i)}function H(e,n,r){if(null==e)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+e+".");var i,s,a=t({},e.props),o=e.key,l=e.ref,c=e._self,p=e._source,u=e._owner;if(null!=n)for(i in W(n)&&(l=n.ref,u=x.current),Y(n)&&(o=""+n.key),e.type&&e.type.defaultProps&&(s=e.type.defaultProps),n)q.call(n,i)&&!$.hasOwnProperty(i)&&(void 0===n[i]&&void 0!==s?a[i]=s[i]:a[i]=n[i]);var h=arguments.length-2;if(1===h)a.children=r;else if(h>1){for(var d=Array(h),f=0;f<h;f++)d[f]=arguments[f+2];a.children=d}return J(e.type,o,l,c,p,u,a)}function z(e){return"object"==typeof e&&null!==e&&e.$$typeof===n}var G=!1,Q=/\/+/g;function Z(e){return e.replace(Q,"$&/")}function ee(e,t){return"object"==typeof e&&null!==e&&null!=e.key?(n=""+e.key,r={"=":"=0",":":"=2"},"$"+n.replace(/[=:]/g,function(e){return r[e]})):t.toString(36);var n,r}function te(e,t,i,s,a){var o=typeof e;"undefined"!==o&&"boolean"!==o||(e=null);var l,c,p,u=!1;if(null===e)u=!0;else switch(o){case"string":case"number":u=!0;break;case"object":switch(e.$$typeof){case n:case r:u=!0}}if(u){var h=e,d=a(h),f=""===s?"."+ee(h,0):s;if(Array.isArray(d)){var m="";null!=f&&(m=Z(f)+"/"),te(d,t,m,"",function(e){return e})}else null!=d&&(z(d)&&(l=d,c=i+(!d.key||h&&h.key===d.key?"":Z(""+d.key)+"/")+f,d=J(l.type,c,l.ref,l._self,l._source,l._owner,l.props)),t.push(d));return 1}var y=0,g=""===s?".":s+":";if(Array.isArray(e))for(var x=0;x<e.length;x++)y+=te(p=e[x],t,i,g+ee(p,x),a);else{var S=T(e);if("function"==typeof S){var b=e;S===b.entries&&(G||v("Using Maps as children is not supported. Use an array of keyed ReactElements instead."),G=!0);for(var P,E=S.call(b),A=0;!(P=E.next()).done;)y+=te(p=P.value,t,i,g+ee(p,A++),a)}else if("object"===o){var C=""+e;throw Error("Objects are not valid as a React child (found: "+("[object Object]"===C?"object with keys {"+Object.keys(e).join(", ")+"}":C)+"). If you meant to render a collection of children, use an array instead.")}}return y}function ne(e,t,n){if(null==e)return e;var r=[],i=0;return te(e,r,"","",function(e){return t.call(n,e,i++)}),r}function re(e){if(-1===e._status){var t=(0,e._result)(),n=e;n._status=0,n._result=t,t.then(function(t){if(0===e._status){var n=t.default;void 0===n&&A("lazy: Expected the result of a dynamic import() call. Instead received: %s\n\nYour code should look like: \n const MyComponent = lazy(() => import('./MyComponent'))",t);var r=e;r._status=1,r._result=n}},function(t){if(0===e._status){var n=e;n._status=2,n._result=t}})}if(1===e._status)return e._result;throw e._result}function ie(t){return"string"==typeof t||"function"==typeof t||t===e.Fragment||t===e.Profiler||t===d||t===e.StrictMode||t===e.Suspense||t===o||t===f||"object"==typeof t&&null!==t&&(t.$$typeof===c||t.$$typeof===l||t.$$typeof===i||t.$$typeof===s||t.$$typeof===a||t.$$typeof===h||t.$$typeof===p||t[0]===u)}function se(){var e=g.current;if(null===e)throw Error("Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:\n1. You might have mismatching versions of React and the renderer (such as React DOM)\n2. You might be breaking the Rules of Hooks\n3. You might have more than one copy of React in the same app\nSee https://reactjs.org/link/invalid-hook-call for tips about how to debug and fix this problem.");return e}var ae,oe,le,ce,pe,ue,he,de=0;function fe(){}fe.__reactDisabledLog=!0;var me,ye=E.ReactCurrentDispatcher;function Te(e,t,n){if(void 0===me)try{throw Error()}catch(e){var r=e.stack.trim().match(/\n( *(at )?)/);me=r&&r[1]||""}return"\n"+me+e}var ge,xe=!1,Se="function"==typeof WeakMap?WeakMap:Map;function be(e,n){if(!e||xe)return"";var r,i=ge.get(e);if(void 0!==i)return i;xe=!0;var s,a=Error.prepareStackTrace;Error.prepareStackTrace=void 0,s=ye.current,ye.current=null,function(){if(0===de){ae=console.log,oe=console.info,le=console.warn,ce=console.error,pe=console.group,ue=console.groupCollapsed,he=console.groupEnd;var e={configurable:!0,enumerable:!0,value:fe,writable:!0};Object.defineProperties(console,{info:e,log:e,warn:e,error:e,group:e,groupCollapsed:e,groupEnd:e})}de++}();try{if(n){var o=function(){throw Error()};if(Object.defineProperty(o.prototype,"props",{set:function(){throw Error()}}),"object"==typeof Reflect&&Reflect.construct){try{Reflect.construct(o,[])}catch(e){r=e}Reflect.construct(e,[],o)}else{try{o.call()}catch(e){r=e}e.call(o.prototype)}}else{try{throw Error()}catch(e){r=e}e()}}catch(t){if(t&&r&&"string"==typeof t.stack){for(var l=t.stack.split("\n"),c=r.stack.split("\n"),p=l.length-1,u=c.length-1;p>=1&&u>=0&&l[p]!==c[u];)u--;for(;p>=1&&u>=0;p--,u--)if(l[p]!==c[u]){if(1!==p||1!==u)do{if(p--,--u<0||l[p]!==c[u]){var h="\n"+l[p].replace(" at new "," at ");return"function"==typeof e&&ge.set(e,h),h}}while(p>=1&&u>=0);break}}}finally{xe=!1,ye.current=s,function(){if(0===--de){var e={configurable:!0,enumerable:!0,writable:!0};Object.defineProperties(console,{log:t({},e,{value:ae}),info:t({},e,{value:oe}),warn:t({},e,{value:le}),error:t({},e,{value:ce}),group:t({},e,{value:pe}),groupCollapsed:t({},e,{value:ue}),groupEnd:t({},e,{value:he})})}de<0&&A("disabledDepth fell below zero. This is a bug in React. Please file an issue.")}(),Error.prepareStackTrace=a}var d=e?e.displayName||e.name:"",f=d?Te(d):"";return"function"==typeof e&&ge.set(e,f),f}function Pe(e,t,n){return be(e,!1)}function Ee(t,n,r){if(null==t)return"";if("function"==typeof t)return be(t,function(e){var t=e.prototype;return!(!t||!t.isReactComponent)}(t));if("string"==typeof t)return Te(t);switch(t){case e.Suspense:return Te("Suspense");case o:return Te("SuspenseList")}if("object"==typeof t)switch(t.$$typeof){case a:return Pe(t.render);case l:return Ee(t.type,n,r);case p:return Pe(t._render);case c:var i=t,s=i._payload,u=i._init;try{return Ee(u(s),n,r)}catch(e){}}return""}ge=new Se;var ve,Ae={},Ce=E.ReactDebugCurrentFrame;function we(e){if(e){var t=e._owner,n=Ee(e.type,e._source,t?t.type:null);Ce.setExtraStackFrame(n)}else Ce.setExtraStackFrame(null)}function Ie(e){if(e){var t=e._owner;P(Ee(e.type,e._source,t?t.type:null))}else P(null)}function ke(){if(x.current){var e=R(x.current.type);if(e)return"\n\nCheck the render method of `"+e+"`."}return""}ve=!1;var Ne={};function Oe(e,t){if(e._store&&!e._store.validated&&null==e.key){e._store.validated=!0;var n=function(e){var t=ke();if(!t){var n="string"==typeof e?e:e.displayName||e.name;n&&(t="\n\nCheck the top-level render call using <"+n+">.")}return t}(t);if(!Ne[n]){Ne[n]=!0;var r="";e&&e._owner&&e._owner!==x.current&&(r=" It was passed a child from "+R(e._owner.type)+"."),Ie(e),A('Each child in a list should have a unique "key" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',n,r),Ie(null)}}}function _e(e,t){if("object"==typeof e)if(Array.isArray(e))for(var n=0;n<e.length;n++){var r=e[n];z(r)&&Oe(r,t)}else if(z(e))e._store&&(e._store.validated=!0);else if(e){var i=T(e);if("function"==typeof i&&i!==e.entries)for(var s,a=i.call(e);!(s=a.next()).done;)z(s.value)&&Oe(s.value,t)}}function De(e){var t,n=e.type;if(null!=n&&"string"!=typeof n){if("function"==typeof n)t=n.propTypes;else{if("object"!=typeof n||n.$$typeof!==a&&n.$$typeof!==l)return;t=n.propTypes}if(t){var r=R(n);!function(e,t,n,r,i){var s=Function.call.bind(Object.prototype.hasOwnProperty);for(var a in e)if(s(e,a)){var o=void 0;try{if("function"!=typeof e[a]){var l=Error((r||"React class")+": "+n+" type `"+a+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+typeof e[a]+"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");throw l.name="Invariant Violation",l}o=e[a](t,a,r,n,null,"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED")}catch(e){o=e}!o||o instanceof Error||(we(i),A("%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).",r||"React class",n,a,typeof o),we(null)),o instanceof Error&&!(o.message in Ae)&&(Ae[o.message]=!0,we(i),A("Failed %s type: %s",n,o.message),we(null))}}(t,e.props,"prop",r,e)}else void 0===n.PropTypes||ve||(ve=!0,A("Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?",R(n)||"Unknown"));"function"!=typeof n.getDefaultProps||n.getDefaultProps.isReactClassApproved||A("getDefaultProps is only used on classic React.createClass definitions. Use a static property named `defaultProps` instead.")}}function Le(t,r,i){var s,a,o=ie(t);if(!o){var l="";(void 0===t||"object"==typeof t&&null!==t&&0===Object.keys(t).length)&&(l+=" You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports.");var c,p=null!=(s=r)&&void 0!==(a=s.__source)?"\n\nCheck your code at "+a.fileName.replace(/^.*[\\\/]/,"")+":"+a.lineNumber+".":"";l+=p||ke(),null===t?c="null":Array.isArray(t)?c="array":void 0!==t&&t.$$typeof===n?(c="<"+(R(t.type)||"Unknown")+" />",l=" Did you accidentally export a JSX literal instead of a component?"):c=typeof t,A("React.createElement: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s",c,l)}var u=X.apply(this,arguments);if(null==u)return u;if(o)for(var h=2;h<arguments.length;h++)_e(arguments[h],t);return t===e.Fragment?function(e){for(var t=Object.keys(e.props),n=0;n<t.length;n++){var r=t[n];if("children"!==r&&"key"!==r){Ie(e),A("Invalid prop `%s` supplied to `React.Fragment`. React.Fragment can only have `key` and `children` props.",r),Ie(null);break}}null!==e.ref&&(Ie(e),A("Invalid attribute `ref` supplied to `React.Fragment`."),Ie(null))}(u):De(u),u}var Me=!1;try{var Fe=Object.freeze({});new Map([[Fe,null]]),new Set([Fe])}catch(e){}var Be=Le,je=function(e,t,n){for(var r=H.apply(this,arguments),i=2;i<arguments.length;i++)_e(arguments[i],r.type);return De(r),r},Re=function(e){var t=Le.bind(null,e);return t.type=e,Me||(Me=!0,v("React.createFactory() is deprecated and will be removed in a future major release. Consider using JSX or use React.createElement() directly instead.")),Object.defineProperty(t,"type",{enumerable:!1,get:function(){return v("Factory.type is deprecated. Access the class directly before passing it to createFactory."),Object.defineProperty(this,"type",{value:e}),e}}),t},Ue={map:ne,forEach:function(e,t,n){ne(e,function(){t.apply(this,arguments)},n)},count:function(e){var t=0;return ne(e,function(){t++}),t},toArray:function(e){return ne(e,function(e){return e})||[]},only:function(e){if(!z(e))throw Error("React.Children.only expected to receive a single React element child.");return e}};e.Children=Ue,e.Component=O,e.PureComponent=F,e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=E,e.cloneElement=je,e.createContext=function(e,t){void 0===t?t=null:null!==t&&"function"!=typeof t&&A("createContext: Expected the optional second argument to be a function. Instead received: %s",t);var n={$$typeof:s,_calculateChangedBits:t,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null};n.Provider={$$typeof:i,_context:n};var r=!1,a=!1,o=!1,l={$$typeof:s,_context:n,_calculateChangedBits:n._calculateChangedBits};return Object.defineProperties(l,{Provider:{get:function(){return a||(a=!0,A("Rendering <Context.Consumer.Provider> is not supported and will be removed in a future major release. Did you mean to render <Context.Provider> instead?")),n.Provider},set:function(e){n.Provider=e}},_currentValue:{get:function(){return n._currentValue},set:function(e){n._currentValue=e}},_currentValue2:{get:function(){return n._currentValue2},set:function(e){n._currentValue2=e}},_threadCount:{get:function(){return n._threadCount},set:function(e){n._threadCount=e}},Consumer:{get:function(){return r||(r=!0,A("Rendering <Context.Consumer.Consumer> is not supported and will be removed in a future major release. Did you mean to render <Context.Consumer> instead?")),n.Consumer}},displayName:{get:function(){return n.displayName},set:function(e){o||(v("Setting `displayName` on Context.Consumer has no effect. You should set it directly on the context with Context.displayName = '%s'.",e),o=!0)}}}),n.Consumer=l,n._currentRenderer=null,n._currentRenderer2=null,n},e.createElement=Be,e.createFactory=Re,e.createRef=function(){var e={current:null};return Object.seal(e),e},e.forwardRef=function(e){null!=e&&e.$$typeof===l?A("forwardRef requires a render function but received a `memo` component. Instead of forwardRef(memo(...)), use memo(forwardRef(...))."):"function"!=typeof e?A("forwardRef requires a render function but was given %s.",null===e?"null":typeof e):0!==e.length&&2!==e.length&&A("forwardRef render functions accept exactly two parameters: props and ref. %s",1===e.length?"Did you forget to use the ref parameter?":"Any additional parameter will be undefined."),null!=e&&(null==e.defaultProps&&null==e.propTypes||A("forwardRef render functions do not support propTypes or defaultProps. Did you accidentally pass a React component?"));var t,n={$$typeof:a,render:e};return Object.defineProperty(n,"displayName",{enumerable:!1,configurable:!0,get:function(){return t},set:function(n){t=n,null==e.displayName&&(e.displayName=n)}}),n},e.isValidElement=z,e.lazy=function(e){var t,n,r={$$typeof:c,_payload:{_status:-1,_result:e},_init:re};return Object.defineProperties(r,{defaultProps:{configurable:!0,get:function(){return t},set:function(e){A("React.lazy(...): It is not supported to assign `defaultProps` to a lazy component import. Either specify them where the component is defined, or create a wrapping component around it."),t=e,Object.defineProperty(r,"defaultProps",{enumerable:!0})}},propTypes:{configurable:!0,get:function(){return n},set:function(e){A("React.lazy(...): It is not supported to assign `propTypes` to a lazy component import. Either specify them where the component is defined, or create a wrapping component around it."),n=e,Object.defineProperty(r,"propTypes",{enumerable:!0})}}}),r},e.memo=function(e,t){ie(e)||A("memo: The first argument must be a component. Instead received: %s",null===e?"null":typeof e);var n,r={$$typeof:l,type:e,compare:void 0===t?null:t};return Object.defineProperty(r,"displayName",{enumerable:!1,configurable:!0,get:function(){return n},set:function(t){n=t,null==e.displayName&&(e.displayName=t)}}),r},e.useCallback=function(e,t){return se().useCallback(e,t)},e.useContext=function(e,t){var n=se();if(void 0!==t&&A("useContext() second argument is reserved for future use in React. Passing it is not supported. You passed: %s.%s",t,"number"==typeof t&&Array.isArray(arguments[2])?"\n\nDid you call array.map(useContext)? Calling Hooks inside a loop is not supported. Learn more at https://reactjs.org/link/rules-of-hooks":""),void 0!==e._context){var r=e._context;r.Consumer===e?A("Calling useContext(Context.Consumer) is not supported, may cause bugs, and will be removed in a future major release. Did you mean to call useContext(Context) instead?"):r.Provider===e&&A("Calling useContext(Context.Provider) is not supported. Did you mean to call useContext(Context) instead?")}return n.useContext(e,t)},e.useDebugValue=function(e,t){return se().useDebugValue(e,t)},e.useEffect=function(e,t){return se().useEffect(e,t)},e.useImperativeHandle=function(e,t,n){return se().useImperativeHandle(e,t,n)},e.useLayoutEffect=function(e,t){return se().useLayoutEffect(e,t)},e.useMemo=function(e,t){return se().useMemo(e,t)},e.useReducer=function(e,t,n){return se().useReducer(e,t,n)},e.useRef=function(e){return se().useRef(e)},e.useState=function(e){return se().useState(e)},e.version="17.0.2"}()),Yo;var e}var Xo=(Wo||(Wo=1,"production"===process.env.NODE_ENV?Uo.exports=qo():Uo.exports=Jo()),Uo.exports);const Ho=new Map;function zo(e){return async()=>{try{return await e()}catch(e){if(!(e instanceof Error&&function(e){return e.message?.includes("Failed to fetch dynamically imported module")||e.message?.includes("Loading chunk")||e.message?.includes("Loading CSS chunk")||"ChunkLoadError"===e.name}(e)))throw e;const t=function(e){const t=e.message?.match(/module:\s*(https?:\/\/[^\s]+)/);return t?t[1]:null}(e);if(!t)throw e;const n=function(e){const t=new URL(e),n=t.pathname.split("/");return n.pop(),"assets"===n[n.length-1]&&n.pop(),`${t.origin}${n.join("/")}`}(t),r=function(e,t){try{const n=new URL(e),r=new URL(t);return n.pathname.slice(r.pathname.length).replace(/^\//,"")}catch{return null}}(t,n);if(!r)throw e;const i=Ho.get(n);let s=null;i&&(s=function(e,t){for(const[n,r]of Object.entries(e))if(r.file===t||`assets/${r.file}`===t||r.file===`assets/${t}`)return n;return null}(i,r));const a=await async function(e,t=!1){if(!t&&Ho.has(e))return Ho.get(e);const n=`${e}/.vite/manifest.json?t=${Date.now()}`,r=await fetch(n);if(!r.ok)throw new Error(`获取 manifest 失败: ${r.status} - ${n}`);const i=await r.json();return t||Ho.set(e,i),i}(n,!0);if(!s)return console.warn("[dynamic] 无法映射 chunk,提示用户刷新页面:",r),alert("系统已更新,请刷新页面以获取最新版本。"),void window.location.reload();const o=function(e,t,n){const r=e[t];return r?`${n}/${r.file}`:null}(a,s,n);return o?import(o):(console.warn('[dynamic] 无法在新 manifest 中找到 "${manifestKey}" 对应的 chunk'),alert("系统已更新,请刷新页面以获取最新版本。"),void window.location.reload())}}}function Go(e){const t=Xo.lazy(zo(e.loader)),n=e.loading;return function(e){return Xo.createElement(Xo.Suspense,{fallback:n?Xo.createElement(n):null},Xo.createElement(t,e))}}const Qo={pagesDir:"src/pages",outputPath:"src/routes.ts",watch:!0,ignoreDirs:["components","utils","hooks","typings"],routeTemplate:{defaultLoadingComponentPath:"@/components/loading",intlPath:"@/utils/intl"}};function Zo(t){const{appName:n,useDevMode:r="development"===process.env.NODE_ENV,federation:i,routes:o,htmlTransform:l=!0,qiankun:c}=t,p=[];r&&l&&p.push({name:"micro-frontend:html-transform",transformIndexHtml:e=>e.replace(/<script[^>]*>.*?<\/script>/s,"")});const u="object"==typeof o?Object.assign(Qo,o):Qo;if(p.push(Mo({pagesDir:u.pagesDir?e.resolve(process.cwd(),u.pagesDir):void 0,outputPath:u.outputPath?e.resolve(process.cwd(),u.outputPath):void 0,watch:u.watch,ignoreDirs:u.ignoreDirs,routeTemplate:u.routeTemplate})),!1!==c?.enabled){const e=c?.name||n;p.push(a(e,{useDevMode:r}))}return i&&(p.push(s({name:i.name,filename:i.filename||"remote.js",exposes:i.exposes||{},shared:i.shared})),i.remotes&&p.push(Fo({remotes:i.remotes,outputPath:i.outputPath?e.resolve(process.cwd(),i.outputPath):"src/utils/mf.tsx"}))),p}function el(t){return{"@@/mf":t||e.resolve(process.cwd(),"./src/utils/mf.tsx")}}export{el as createMfAlias,Go as dynamic,ko as getRoutes,T as htmlRemoveFreshPlugin,Fo as mfGeneratorPlugin,Zo as microFrontendPlugins,Mo as pagesRoutesPlugin};
|
|
2
14
|
//# sourceMappingURL=index.js.map
|