extract_i18n 0.6.2 → 0.7.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,106 @@
1
+ var sc=Object.create;var Gr=Object.defineProperty;var ic=Object.getOwnPropertyDescriptor;var ac=Object.getOwnPropertyNames;var nc=Object.getPrototypeOf,oc=Object.prototype.hasOwnProperty;var uc=(i,r)=>()=>(i&&(r=i(i=0)),r);var O=(i,r)=>()=>(r||i((r={exports:{}}).exports,r),r.exports),lc=(i,r)=>{for(var e in r)Gr(i,e,{get:r[e],enumerable:!0})},mn=(i,r,e,t)=>{if(r&&typeof r=="object"||typeof r=="function")for(let s of ac(r))!oc.call(i,s)&&s!==e&&Gr(i,s,{get:()=>r[s],enumerable:!(t=ic(r,s))||t.enumerable});return i};var Ks=(i,r,e)=>(e=i!=null?sc(nc(i)):{},mn(r||!i||!i.__esModule?Gr(e,"default",{value:i,enumerable:!0}):e,i)),V=i=>mn(Gr({},"__esModule",{value:!0}),i);var J={};lc(J,{__addDisposableResource:()=>On,__assign:()=>$r,__asyncDelegator:()=>wn,__asyncGenerator:()=>Dn,__asyncValues:()=>kn,__await:()=>Ft,__awaiter:()=>Sn,__classPrivateFieldGet:()=>Mn,__classPrivateFieldIn:()=>Ln,__classPrivateFieldSet:()=>Bn,__createBinding:()=>Qr,__decorate:()=>gn,__disposeResources:()=>_n,__esDecorate:()=>cc,__exportStar:()=>An,__extends:()=>yn,__generator:()=>En,__importDefault:()=>Fn,__importStar:()=>Nn,__makeTemplateObject:()=>In,__metadata:()=>bn,__param:()=>vn,__propKey:()=>pc,__read:()=>Hs,__rest:()=>xn,__runInitializers:()=>hc,__setFunctionName:()=>fc,__spread:()=>Tn,__spreadArray:()=>Pn,__spreadArrays:()=>Cn,__values:()=>Yr,default:()=>yc});function yn(i,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");Ws(i,r);function e(){this.constructor=i}i.prototype=r===null?Object.create(r):(e.prototype=r.prototype,new e)}function xn(i,r){var e={};for(var t in i)Object.prototype.hasOwnProperty.call(i,t)&&r.indexOf(t)<0&&(e[t]=i[t]);if(i!=null&&typeof Object.getOwnPropertySymbols=="function")for(var s=0,t=Object.getOwnPropertySymbols(i);s<t.length;s++)r.indexOf(t[s])<0&&Object.prototype.propertyIsEnumerable.call(i,t[s])&&(e[t[s]]=i[t[s]]);return e}function gn(i,r,e,t){var s=arguments.length,a=s<3?r:t===null?t=Object.getOwnPropertyDescriptor(r,e):t,n;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")a=Reflect.decorate(i,r,e,t);else for(var u=i.length-1;u>=0;u--)(n=i[u])&&(a=(s<3?n(a):s>3?n(r,e,a):n(r,e))||a);return s>3&&a&&Object.defineProperty(r,e,a),a}function vn(i,r){return function(e,t){r(e,t,i)}}function cc(i,r,e,t,s,a){function n(x){if(x!==void 0&&typeof x!="function")throw new TypeError("Function expected");return x}for(var u=t.kind,c=u==="getter"?"get":u==="setter"?"set":"value",f=!r&&i?t.static?i:i.prototype:null,h=r||(f?Object.getOwnPropertyDescriptor(f,t.name):{}),y,m=!1,o=e.length-1;o>=0;o--){var l={};for(var p in t)l[p]=p==="access"?{}:t[p];for(var p in t.access)l.access[p]=t.access[p];l.addInitializer=function(x){if(m)throw new TypeError("Cannot add initializers after decoration has completed");a.push(n(x||null))};var d=(0,e[o])(u==="accessor"?{get:h.get,set:h.set}:h[c],l);if(u==="accessor"){if(d===void 0)continue;if(d===null||typeof d!="object")throw new TypeError("Object expected");(y=n(d.get))&&(h.get=y),(y=n(d.set))&&(h.set=y),(y=n(d.init))&&s.unshift(y)}else(y=n(d))&&(u==="field"?s.unshift(y):h[c]=y)}f&&Object.defineProperty(f,t.name,h),m=!0}function hc(i,r,e){for(var t=arguments.length>2,s=0;s<r.length;s++)e=t?r[s].call(i,e):r[s].call(i);return t?e:void 0}function pc(i){return typeof i=="symbol"?i:"".concat(i)}function fc(i,r,e){return typeof r=="symbol"&&(r=r.description?"[".concat(r.description,"]"):""),Object.defineProperty(i,"name",{configurable:!0,value:e?"".concat(e," ",r):r})}function bn(i,r){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(i,r)}function Sn(i,r,e,t){function s(a){return a instanceof e?a:new e(function(n){n(a)})}return new(e||(e=Promise))(function(a,n){function u(h){try{f(t.next(h))}catch(y){n(y)}}function c(h){try{f(t.throw(h))}catch(y){n(y)}}function f(h){h.done?a(h.value):s(h.value).then(u,c)}f((t=t.apply(i,r||[])).next())})}function En(i,r){var e={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]},t,s,a,n;return n={next:u(0),throw:u(1),return:u(2)},typeof Symbol=="function"&&(n[Symbol.iterator]=function(){return this}),n;function u(f){return function(h){return c([f,h])}}function c(f){if(t)throw new TypeError("Generator is already executing.");for(;n&&(n=0,f[0]&&(e=0)),e;)try{if(t=1,s&&(a=f[0]&2?s.return:f[0]?s.throw||((a=s.return)&&a.call(s),0):s.next)&&!(a=a.call(s,f[1])).done)return a;switch(s=0,a&&(f=[f[0]&2,a.value]),f[0]){case 0:case 1:a=f;break;case 4:return e.label++,{value:f[1],done:!1};case 5:e.label++,s=f[1],f=[0];continue;case 7:f=e.ops.pop(),e.trys.pop();continue;default:if(a=e.trys,!(a=a.length>0&&a[a.length-1])&&(f[0]===6||f[0]===2)){e=0;continue}if(f[0]===3&&(!a||f[1]>a[0]&&f[1]<a[3])){e.label=f[1];break}if(f[0]===6&&e.label<a[1]){e.label=a[1],a=f;break}if(a&&e.label<a[2]){e.label=a[2],e.ops.push(f);break}a[2]&&e.ops.pop(),e.trys.pop();continue}f=r.call(i,e)}catch(h){f=[6,h],s=0}finally{t=a=0}if(f[0]&5)throw f[1];return{value:f[0]?f[1]:void 0,done:!0}}}function An(i,r){for(var e in i)e!=="default"&&!Object.prototype.hasOwnProperty.call(r,e)&&Qr(r,i,e)}function Yr(i){var r=typeof Symbol=="function"&&Symbol.iterator,e=r&&i[r],t=0;if(e)return e.call(i);if(i&&typeof i.length=="number")return{next:function(){return i&&t>=i.length&&(i=void 0),{value:i&&i[t++],done:!i}}};throw new TypeError(r?"Object is not iterable.":"Symbol.iterator is not defined.")}function Hs(i,r){var e=typeof Symbol=="function"&&i[Symbol.iterator];if(!e)return i;var t=e.call(i),s,a=[],n;try{for(;(r===void 0||r-- >0)&&!(s=t.next()).done;)a.push(s.value)}catch(u){n={error:u}}finally{try{s&&!s.done&&(e=t.return)&&e.call(t)}finally{if(n)throw n.error}}return a}function Tn(){for(var i=[],r=0;r<arguments.length;r++)i=i.concat(Hs(arguments[r]));return i}function Cn(){for(var i=0,r=0,e=arguments.length;r<e;r++)i+=arguments[r].length;for(var t=Array(i),s=0,r=0;r<e;r++)for(var a=arguments[r],n=0,u=a.length;n<u;n++,s++)t[s]=a[n];return t}function Pn(i,r,e){if(e||arguments.length===2)for(var t=0,s=r.length,a;t<s;t++)(a||!(t in r))&&(a||(a=Array.prototype.slice.call(r,0,t)),a[t]=r[t]);return i.concat(a||Array.prototype.slice.call(r))}function Ft(i){return this instanceof Ft?(this.v=i,this):new Ft(i)}function Dn(i,r,e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t=e.apply(i,r||[]),s,a=[];return s={},u("next"),u("throw"),u("return",n),s[Symbol.asyncIterator]=function(){return this},s;function n(o){return function(l){return Promise.resolve(l).then(o,y)}}function u(o,l){t[o]&&(s[o]=function(p){return new Promise(function(d,x){a.push([o,p,d,x])>1||c(o,p)})},l&&(s[o]=l(s[o])))}function c(o,l){try{f(t[o](l))}catch(p){m(a[0][3],p)}}function f(o){o.value instanceof Ft?Promise.resolve(o.value.v).then(h,y):m(a[0][2],o)}function h(o){c("next",o)}function y(o){c("throw",o)}function m(o,l){o(l),a.shift(),a.length&&c(a[0][0],a[0][1])}}function wn(i){var r,e;return r={},t("next"),t("throw",function(s){throw s}),t("return"),r[Symbol.iterator]=function(){return this},r;function t(s,a){r[s]=i[s]?function(n){return(e=!e)?{value:Ft(i[s](n)),done:!1}:a?a(n):n}:a}}function kn(i){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var r=i[Symbol.asyncIterator],e;return r?r.call(i):(i=typeof Yr=="function"?Yr(i):i[Symbol.iterator](),e={},t("next"),t("throw"),t("return"),e[Symbol.asyncIterator]=function(){return this},e);function t(a){e[a]=i[a]&&function(n){return new Promise(function(u,c){n=i[a](n),s(u,c,n.done,n.value)})}}function s(a,n,u,c){Promise.resolve(c).then(function(f){a({value:f,done:u})},n)}}function In(i,r){return Object.defineProperty?Object.defineProperty(i,"raw",{value:r}):i.raw=r,i}function Nn(i){if(i&&i.__esModule)return i;var r={};if(i!=null)for(var e in i)e!=="default"&&Object.prototype.hasOwnProperty.call(i,e)&&Qr(r,i,e);return dc(r,i),r}function Fn(i){return i&&i.__esModule?i:{default:i}}function Mn(i,r,e,t){if(e==="a"&&!t)throw new TypeError("Private accessor was defined without a getter");if(typeof r=="function"?i!==r||!t:!r.has(i))throw new TypeError("Cannot read private member from an object whose class did not declare it");return e==="m"?t:e==="a"?t.call(i):t?t.value:r.get(i)}function Bn(i,r,e,t,s){if(t==="m")throw new TypeError("Private method is not writable");if(t==="a"&&!s)throw new TypeError("Private accessor was defined without a setter");if(typeof r=="function"?i!==r||!s:!r.has(i))throw new TypeError("Cannot write private member to an object whose class did not declare it");return t==="a"?s.call(i,e):s?s.value=e:r.set(i,e),e}function Ln(i,r){if(r===null||typeof r!="object"&&typeof r!="function")throw new TypeError("Cannot use 'in' operator on non-object");return typeof i=="function"?r===i:i.has(r)}function On(i,r,e){if(r!=null){if(typeof r!="object"&&typeof r!="function")throw new TypeError("Object expected.");var t,s;if(e){if(!Symbol.asyncDispose)throw new TypeError("Symbol.asyncDispose is not defined.");t=r[Symbol.asyncDispose]}if(t===void 0){if(!Symbol.dispose)throw new TypeError("Symbol.dispose is not defined.");t=r[Symbol.dispose],e&&(s=t)}if(typeof t!="function")throw new TypeError("Object not disposable.");s&&(t=function(){try{s.call(this)}catch(a){return Promise.reject(a)}}),i.stack.push({value:r,dispose:t,async:e})}else e&&i.stack.push({async:!0});return r}function _n(i){function r(t){i.error=i.hasError?new mc(t,i.error,"An error was suppressed during disposal."):t,i.hasError=!0}function e(){for(;i.stack.length;){var t=i.stack.pop();try{var s=t.dispose&&t.dispose.call(t.value);if(t.async)return Promise.resolve(s).then(e,function(a){return r(a),e()})}catch(a){r(a)}}if(i.hasError)throw i.error}return e()}var Ws,$r,Qr,dc,mc,yc,X=uc(()=>{Ws=function(i,r){return Ws=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var s in t)Object.prototype.hasOwnProperty.call(t,s)&&(e[s]=t[s])},Ws(i,r)};$r=function(){return $r=Object.assign||function(r){for(var e,t=1,s=arguments.length;t<s;t++){e=arguments[t];for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&(r[a]=e[a])}return r},$r.apply(this,arguments)};Qr=Object.create?function(i,r,e,t){t===void 0&&(t=e);var s=Object.getOwnPropertyDescriptor(r,e);(!s||("get"in s?!r.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return r[e]}}),Object.defineProperty(i,t,s)}:function(i,r,e,t){t===void 0&&(t=e),i[t]=r[e]};dc=Object.create?function(i,r){Object.defineProperty(i,"default",{enumerable:!0,value:r})}:function(i,r){i.default=r};mc=typeof SuppressedError=="function"?SuppressedError:function(i,r,e){var t=new Error(e);return t.name="SuppressedError",t.error=i,t.suppressed=r,t};yc={__extends:yn,__assign:$r,__rest:xn,__decorate:gn,__param:vn,__metadata:bn,__awaiter:Sn,__generator:En,__createBinding:Qr,__exportStar:An,__values:Yr,__read:Hs,__spread:Tn,__spreadArrays:Cn,__spreadArray:Pn,__await:Ft,__asyncGenerator:Dn,__asyncDelegator:wn,__asyncValues:kn,__makeTemplateObject:In,__importStar:Nn,__importDefault:Fn,__classPrivateFieldGet:Mn,__classPrivateFieldSet:Bn,__classPrivateFieldIn:Ln,__addDisposableResource:On,__disposeResources:_n}});var te=O(nr=>{"use strict";Object.defineProperty(nr,"__esModule",{value:!0});nr.maybeSetModuleExports=void 0;var xc=(X(),V(J)),gc=xc.__importDefault(ue());function vc(i){var r=i.use(gc.default),e=r.Type,t=r.builtInTypes,s=t.number;function a(f){return e.from(function(h){return s.check(h)&&h>=f},s+" >= "+f)}var n={null:function(){return null},emptyArray:function(){return[]},false:function(){return!1},true:function(){return!0},undefined:function(){},"use strict":function(){return"use strict"}},u=e.or(t.string,t.number,t.boolean,t.null,t.undefined),c=e.from(function(f){if(f===null)return!0;var h=typeof f;return!(h==="object"||h==="function")},u.toString());return{geq:a,defaults:n,isPrimitive:c}}nr.default=vc;function bc(i){try{var r=i(),e=r.exports,t=e.default}catch{return}t&&t!==e&&typeof e=="object"&&(Object.assign(t,e,{default:t}),e.__esModule&&Object.defineProperty(t,"__esModule",{value:!0}),r.exports=t)}nr.maybeSetModuleExports=bc});var ue=O((lr,Jn)=>{"use strict";Object.defineProperty(lr,"__esModule",{value:!0});lr.Def=void 0;var Mt=(X(),V(J)),Sc=te(),zn=Object.prototype,es=zn.toString,ke=zn.hasOwnProperty,ur=function(){function i(){}return i.prototype.assert=function(r,e){if(!this.check(r,e)){var t=$s(r);throw new Error(t+" does not match type "+this)}return!0},i.prototype.arrayOf=function(){var r=this;return new Gs(r)},i}(),Gs=function(i){Mt.__extends(r,i);function r(e){var t=i.call(this)||this;return t.elemType=e,t.kind="ArrayType",t}return r.prototype.toString=function(){return"["+this.elemType+"]"},r.prototype.check=function(e,t){var s=this;return Array.isArray(e)&&e.every(function(a){return s.elemType.check(a,t)})},r}(ur),jn=function(i){Mt.__extends(r,i);function r(e){var t=i.call(this)||this;return t.value=e,t.kind="IdentityType",t}return r.prototype.toString=function(){return String(this.value)},r.prototype.check=function(e,t){var s=e===this.value;return!s&&typeof t=="function"&&t(this,e),s},r}(ur),Rn=function(i){Mt.__extends(r,i);function r(e){var t=i.call(this)||this;return t.fields=e,t.kind="ObjectType",t}return r.prototype.toString=function(){return"{ "+this.fields.join(", ")+" }"},r.prototype.check=function(e,t){return es.call(e)===es.call({})&&this.fields.every(function(s){return s.type.check(e[s.name],t)})},r}(ur),Un=function(i){Mt.__extends(r,i);function r(e){var t=i.call(this)||this;return t.types=e,t.kind="OrType",t}return r.prototype.toString=function(){return this.types.join(" | ")},r.prototype.check=function(e,t){return this.types.some(function(s){return s.check(e,!!t)})?!0:(typeof t=="function"&&t(this,e),!1)},r}(ur),or=function(i){Mt.__extends(r,i);function r(e,t){var s=i.call(this)||this;return s.name=e,s.predicate=t,s.kind="PredicateType",s}return r.prototype.toString=function(){return this.name},r.prototype.check=function(e,t){var s=this.predicate(e,t);return!s&&typeof t=="function"&&t(this,e),s},r}(ur),Zr=function(){function i(r,e){this.type=r,this.typeName=e,this.baseNames=[],this.ownFields=Object.create(null),this.allSupertypes=Object.create(null),this.supertypeList=[],this.allFields=Object.create(null),this.fieldNames=[],this.finalized=!1,this.buildable=!1,this.buildParams=[]}return i.prototype.isSupertypeOf=function(r){if(r instanceof i){if(this.finalized!==!0||r.finalized!==!0)throw new Error("");return ke.call(r.allSupertypes,this.typeName)}else throw new Error(r+" is not a Def")},i.prototype.checkAllFields=function(r,e){var t=this.allFields;if(this.finalized!==!0)throw new Error(""+this.typeName);function s(a){var n=t[a],u=n.type,c=n.getValue(r);return u.check(c,e)}return r!==null&&typeof r=="object"&&Object.keys(t).every(s)},i.prototype.bases=function(){for(var r=[],e=0;e<arguments.length;e++)r[e]=arguments[e];var t=this.baseNames;if(this.finalized){if(r.length!==t.length)throw new Error("");for(var s=0;s<r.length;s++)if(r[s]!==t[s])throw new Error("");return this}return r.forEach(function(a){t.indexOf(a)<0&&t.push(a)}),this},i}();lr.Def=Zr;var qn=function(){function i(r,e,t,s){this.name=r,this.type=e,this.defaultFn=t,this.hidden=!!s}return i.prototype.toString=function(){return JSON.stringify(this.name)+": "+this.type},i.prototype.getValue=function(r){var e=r[this.name];return typeof e<"u"||typeof this.defaultFn=="function"&&(e=this.defaultFn.call(r)),e},i}();function $s(i){return Array.isArray(i)?"["+i.map($s).join(", ")+"]":i&&typeof i=="object"?"{ "+Object.keys(i).map(function(r){return r+": "+i[r]}).join(", ")+" }":JSON.stringify(i)}function Ec(i){var r={or:function(){for(var k=[],F=0;F<arguments.length;F++)k[F]=arguments[F];return new Un(k.map(function(N){return r.from(N)}))},from:function(k,F){if(k instanceof Gs||k instanceof jn||k instanceof Rn||k instanceof Un||k instanceof or)return k;if(k instanceof Zr)return k.type;if(u.check(k)){if(k.length!==1)throw new Error("only one element type is permitted for typed arrays");return new Gs(r.from(k[0]))}if(c.check(k))return new Rn(Object.keys(k).map(function(R){return new qn(R,r.from(k[R],R))}));if(typeof k=="function"){var N=e.indexOf(k);if(N>=0)return t[N];if(typeof F!="string")throw new Error("missing name");return new or(F,k)}return new jn(k)},def:function(k){return ke.call(x,k)?x[k]:x[k]=new E(k)},hasDef:function(k){return ke.call(x,k)}},e=[],t=[];function s(k,F){var N=es.call(F),R=new or(k,function(G){return es.call(G)===N});return F&&typeof F.constructor=="function"&&(e.push(F.constructor),t.push(R)),R}var a=s("string","truthy"),n=s("function",function(){}),u=s("array",[]),c=s("object",{}),f=s("RegExp",/./),h=s("Date",new Date),y=s("number",3),m=s("boolean",!0),o=s("null",null),l=s("undefined",void 0),p=typeof BigInt=="function"?s("BigInt",BigInt(1234)):new or("BigInt",function(){return!1}),d={string:a,function:n,array:u,object:c,RegExp:f,Date:h,number:y,boolean:m,null:o,undefined:l,BigInt:p},x=Object.create(null);function g(k){if(k&&typeof k=="object"){var F=k.type;if(typeof F=="string"&&ke.call(x,F)){var N=x[F];if(N.finalized)return N}}return null}var E=function(k){Mt.__extends(F,k);function F(N){var R=k.call(this,new or(N,function(G,Y){return R.check(G,Y)}),N)||this;return R}return F.prototype.check=function(N,R){if(this.finalized!==!0)throw new Error("prematurely checking unfinalized type "+this.typeName);if(N===null||typeof N!="object")return!1;var G=g(N);return G?R&&G===this?this.checkAllFields(N,R):this.isSupertypeOf(G)?R?G.checkAllFields(N,R)&&this.checkAllFields(N,!1):!0:!1:this.typeName==="SourceLocation"||this.typeName==="Position"?this.checkAllFields(N,R):!1},F.prototype.build=function(){for(var N=this,R=[],G=0;G<arguments.length;G++)R[G]=arguments[G];if(this.buildParams=R,this.buildable)return this;this.field("type",String,function(){return N.typeName}),this.buildable=!0;var Y=function(se,ie,De,Me){if(!ke.call(se,ie)){var Te=N.allFields;if(!ke.call(Te,ie))throw new Error(""+ie);var be=Te[ie],ot=be.type,We;if(Me)We=De;else if(be.defaultFn)We=be.defaultFn.call(se);else{var It="no value or default function given for field "+JSON.stringify(ie)+" of "+N.typeName+"("+N.buildParams.map(function(Nt){return Te[Nt]}).join(", ")+")";throw new Error(It)}if(!ot.check(We))throw new Error($s(We)+" does not match field "+be+" of type "+N.typeName);se[ie]=We}},de=function(){for(var se=[],ie=0;ie<arguments.length;ie++)se[ie]=arguments[ie];var De=se.length;if(!N.finalized)throw new Error("attempting to instantiate unfinalized type "+N.typeName);var Me=Object.create(D);if(N.buildParams.forEach(function(Te,be){be<De?Y(Me,Te,se[be],!0):Y(Me,Te,null,!1)}),Object.keys(N.allFields).forEach(function(Te){Y(Me,Te,null,!1)}),Me.type!==N.typeName)throw new Error("");return Me};return de.from=function(se){if(!N.finalized)throw new Error("attempting to instantiate unfinalized type "+N.typeName);var ie=Object.create(D);if(Object.keys(N.allFields).forEach(function(De){ke.call(se,De)?Y(ie,De,se[De],!0):Y(ie,De,null,!1)}),ie.type!==N.typeName)throw new Error("");return ie},Object.defineProperty(T,q(this.typeName),{enumerable:!0,value:de}),this},F.prototype.field=function(N,R,G,Y){return this.finalized?(console.error("Ignoring attempt to redefine field "+JSON.stringify(N)+" of finalized type "+JSON.stringify(this.typeName)),this):(this.ownFields[N]=new qn(N,r.from(R),G,Y),this)},F.prototype.finalize=function(){var N=this;if(!this.finalized){var R=this.allFields,G=this.allSupertypes;this.baseNames.forEach(function(de){var se=x[de];if(se instanceof Zr)se.finalize(),nt(R,se.allFields),nt(G,se.allSupertypes);else{var ie="unknown supertype name "+JSON.stringify(de)+" for subtype "+JSON.stringify(N.typeName);throw new Error(ie)}}),nt(R,this.ownFields),G[this.typeName]=this,this.fieldNames.length=0;for(var Y in R)ke.call(R,Y)&&!R[Y].hidden&&this.fieldNames.push(Y);Object.defineProperty(he,this.typeName,{enumerable:!0,value:this.type}),this.finalized=!0,kt(this.typeName,this.supertypeList),this.buildable&&this.supertypeList.lastIndexOf("Expression")>=0&&at(this.typeName)}},F}(Zr);function b(k){if(!ke.call(x,k))throw new Error("");var F=x[k];if(F.finalized!==!0)throw new Error("");return F.supertypeList.slice(1)}function A(k){for(var F={},N=Object.keys(x),R=N.length,G=0;G<R;++G){var Y=N[G],de=x[Y];if(de.finalized!==!0)throw new Error(""+Y);for(var se=0;se<de.supertypeList.length;++se){var ie=de.supertypeList[se];if(ke.call(k,ie)){F[Y]=ie;break}}}return F}var T=Object.create(null),D={};function L(k,F){var N=D[k];return l.check(F)?delete D[k]:(n.assert(F),Object.defineProperty(D,k,{enumerable:!0,configurable:!0,value:F})),N}function q(k){return k.replace(/^[A-Z]+/,function(F){var N=F.length;switch(N){case 0:return"";case 1:return F.toLowerCase();default:return F.slice(0,N-1).toLowerCase()+F.charAt(N-1)}})}function ee(k){return k=q(k),k.replace(/(Expression)?$/,"Statement")}var he={};function xe(k){var F=g(k);if(F)return F.fieldNames.slice(0);if("type"in k)throw new Error("did not recognize object of type "+JSON.stringify(k.type));return Object.keys(k)}function Ke(k,F){var N=g(k);if(N){var R=N.allFields[F];if(R)return R.getValue(k)}return k&&k[F]}function dt(k,F,N){xe(k).forEach(function(R){F.call(this,R,Ke(k,R))},N)}function it(k,F,N){return xe(k).some(function(R){return F.call(this,R,Ke(k,R))},N)}function at(k){var F=ee(k);if(!T[F]){var N=T[q(k)];if(N){var R=function(){for(var G=[],Y=0;Y<arguments.length;Y++)G[Y]=arguments[Y];return T.expressionStatement(N.apply(T,G))};R.from=function(){for(var G=[],Y=0;Y<arguments.length;Y++)G[Y]=arguments[Y];return T.expressionStatement(N.from.apply(T,G))},T[F]=R}}}function kt(k,F){F.length=0,F.push(k);for(var N=Object.create(null),R=0;R<F.length;++R){k=F[R];var G=x[k];if(G.finalized!==!0)throw new Error("");ke.call(N,k)&&delete F[N[k]],N[k]=R,F.push.apply(F,G.baseNames)}for(var Y=0,de=Y,se=F.length;de<se;++de)ke.call(F,de)&&(F[Y++]=F[de]);F.length=Y}function nt(k,F){return Object.keys(F).forEach(function(N){k[N]=F[N]}),k}function ir(){Object.keys(x).forEach(function(k){x[k].finalize()})}return{Type:r,builtInTypes:d,getSupertypeNames:b,computeSupertypeLookupTable:A,builders:T,defineMethod:L,getBuilderName:q,getStatementBuilderName:ee,namedTypes:he,getFieldNames:xe,getFieldValue:Ke,eachField:dt,someField:it,finalize:ir}}lr.default=Ec;(0,Sc.maybeSetModuleExports)(function(){return Jn})});var Qs=O((Ys,Xn)=>{"use strict";Object.defineProperty(Ys,"__esModule",{value:!0});var Ac=(X(),V(J)),Tc=te(),Cc=Ac.__importDefault(ue()),Pc=Object.prototype,ts=Pc.hasOwnProperty;function Dc(i){var r=i.use(Cc.default),e=r.builtInTypes.array,t=r.builtInTypes.number,s=function y(m,o,l){if(!(this instanceof y))throw new Error("Path constructor cannot be invoked without 'new'");if(o){if(!(o instanceof y))throw new Error("")}else o=null,l=null;this.value=m,this.parentPath=o,this.name=l,this.__childCache=null},a=s.prototype;function n(y){return y.__childCache||(y.__childCache=Object.create(null))}function u(y,m){var o=n(y),l=y.getValueProperty(m),p=o[m];return(!ts.call(o,m)||p.value!==l)&&(p=o[m]=new y.constructor(l,y,m)),p}a.getValueProperty=function(m){return this.value[m]},a.get=function(){for(var m=[],o=0;o<arguments.length;o++)m[o]=arguments[o];for(var l=this,p=m.length,d=0;d<p;++d)l=u(l,m[d]);return l},a.each=function(m,o){for(var l=[],p=this.value.length,d=0,d=0;d<p;++d)ts.call(this.value,d)&&(l[d]=this.get(d));for(o=o||this,d=0;d<p;++d)ts.call(l,d)&&m.call(o,l[d])},a.map=function(m,o){var l=[];return this.each(function(p){l.push(m.call(this,p))},o),l},a.filter=function(m,o){var l=[];return this.each(function(p){m.call(this,p)&&l.push(p)},o),l};function c(){}function f(y,m,o,l){if(e.assert(y.value),m===0)return c;var p=y.value.length;if(p<1)return c;var d=arguments.length;d===2?(o=0,l=p):d===3?(o=Math.max(o,0),l=p):(o=Math.max(o,0),l=Math.min(l,p)),t.assert(o),t.assert(l);for(var x=Object.create(null),g=n(y),E=o;E<l;++E)if(ts.call(y.value,E)){var b=y.get(E);if(b.name!==E)throw new Error("");var A=E+m;b.name=A,x[A]=b,delete g[E]}return delete g.length,function(){for(var T in x){var D=x[T];if(D.name!==+T)throw new Error("");g[T]=D,y.value[T]=D.value}}}a.shift=function(){var m=f(this,-1),o=this.value.shift();return m(),o},a.unshift=function(){for(var m=[],o=0;o<arguments.length;o++)m[o]=arguments[o];var l=f(this,m.length),p=this.value.unshift.apply(this.value,m);return l(),p},a.push=function(){for(var m=[],o=0;o<arguments.length;o++)m[o]=arguments[o];return e.assert(this.value),delete n(this).length,this.value.push.apply(this.value,m)},a.pop=function(){e.assert(this.value);var m=n(this);return delete m[this.value.length-1],delete m.length,this.value.pop()},a.insertAt=function(m){var o=arguments.length,l=f(this,o-1,m);if(l===c&&o<=1)return this;m=Math.max(m,0);for(var p=1;p<o;++p)this.value[m+p-1]=arguments[p];return l(),this},a.insertBefore=function(){for(var m=[],o=0;o<arguments.length;o++)m[o]=arguments[o];for(var l=this.parentPath,p=m.length,d=[this.name],x=0;x<p;++x)d.push(m[x]);return l.insertAt.apply(l,d)},a.insertAfter=function(){for(var m=[],o=0;o<arguments.length;o++)m[o]=arguments[o];for(var l=this.parentPath,p=m.length,d=[this.name+1],x=0;x<p;++x)d.push(m[x]);return l.insertAt.apply(l,d)};function h(y){if(!(y instanceof s))throw new Error("");var m=y.parentPath;if(!m)return y;var o=m.value,l=n(m);if(o[y.name]===y.value)l[y.name]=y;else if(e.check(o)){var p=o.indexOf(y.value);p>=0&&(l[y.name=p]=y)}else o[y.name]=y.value,l[y.name]=y;if(o[y.name]!==y.value)throw new Error("");if(y.parentPath.get(y.name)!==y)throw new Error("");return y}return a.replace=function(m){var o=[],l=this.parentPath.value,p=n(this.parentPath),d=arguments.length;if(h(this),e.check(l)){for(var x=l.length,g=f(this.parentPath,d-1,this.name+1),E=[this.name,1],b=0;b<d;++b)E.push(arguments[b]);var A=l.splice.apply(l,E);if(A[0]!==this.value)throw new Error("");if(l.length!==x-1+d)throw new Error("");if(g(),d===0)delete this.value,delete p[this.name],this.__childCache=null;else{if(l[this.name]!==m)throw new Error("");for(this.value!==m&&(this.value=m,this.__childCache=null),b=0;b<d;++b)o.push(this.parentPath.get(this.name+b));if(o[0]!==this)throw new Error("")}}else if(d===1)this.value!==m&&(this.__childCache=null),this.value=l[this.name]=m,o.push(this);else if(d===0)delete l[this.name],delete this.value,this.__childCache=null;else throw new Error("Could not replace path");return o},s}Ys.default=Dc;(0,Tc.maybeSetModuleExports)(function(){return Xn})});var Kn=O((Zs,Vn)=>{"use strict";Object.defineProperty(Zs,"__esModule",{value:!0});var wc=(X(),V(J)),kc=te(),Ic=wc.__importDefault(ue()),Bt=Object.prototype.hasOwnProperty;function Nc(i){var r=i.use(Ic.default),e=r.Type,t=r.namedTypes,s=t.Node,a=t.Expression,n=r.builtInTypes.array,u=r.builders,c=function b(A,T){if(!(this instanceof b))throw new Error("Scope constructor cannot be invoked without 'new'");h.check(A.value)||f.assert(A.value);var D;if(T){if(!(T instanceof b))throw new Error("");D=T.depth+1}else T=null,D=0;Object.defineProperties(this,{path:{value:A},node:{value:A.value},isGlobal:{value:!T,enumerable:!0},depth:{value:D},parent:{value:T},bindings:{value:{}},types:{value:{}}})},f=e.or(t.Program,t.Function,t.CatchClause),h=e.or(t.Function,t.ClassDeclaration,t.ClassExpression,t.InterfaceDeclaration,t.TSInterfaceDeclaration,t.TypeAlias,t.TSTypeAliasDeclaration),y=e.or(t.TypeParameter,t.TSTypeParameter);c.isEstablishedBy=function(b){return f.check(b)||h.check(b)};var m=c.prototype;m.didScan=!1,m.declares=function(b){return this.scan(),Bt.call(this.bindings,b)},m.declaresType=function(b){return this.scan(),Bt.call(this.types,b)},m.declareTemporary=function(b){if(b){if(!/^[a-z$_]/i.test(b))throw new Error("")}else b="t$";b+=this.depth.toString(36)+"$",this.scan();for(var A=0;this.declares(b+A);)++A;var T=b+A;return this.bindings[T]=r.builders.identifier(T)},m.injectTemporary=function(b,A){b||(b=this.declareTemporary());var T=this.path.get("body");return t.BlockStatement.check(T.value)&&(T=T.get("body")),T.unshift(u.variableDeclaration("var",[u.variableDeclarator(b,A||null)])),b},m.scan=function(b){if(b||!this.didScan){for(var A in this.bindings)delete this.bindings[A];for(var A in this.types)delete this.types[A];o(this.path,this.bindings,this.types),this.didScan=!0}},m.getBindings=function(){return this.scan(),this.bindings},m.getTypes=function(){return this.scan(),this.types};function o(b,A,T){var D=b.value;if(h.check(D)){var L=b.get("typeParameters","params");n.check(L.value)&&L.each(function(q){E(q,T)})}f.check(D)&&(t.CatchClause.check(D)?x(b.get("param"),A):l(b,A,T))}function l(b,A,T){var D=b.value;b.parent&&t.FunctionExpression.check(b.parent.node)&&b.parent.node.id&&x(b.parent.get("id"),A),D&&(n.check(D)?b.each(function(L){d(L,A,T)}):t.Function.check(D)?(b.get("params").each(function(L){x(L,A)}),d(b.get("body"),A,T),l(b.get("typeParameters"),A,T)):t.TypeAlias&&t.TypeAlias.check(D)||t.InterfaceDeclaration&&t.InterfaceDeclaration.check(D)||t.TSTypeAliasDeclaration&&t.TSTypeAliasDeclaration.check(D)||t.TSInterfaceDeclaration&&t.TSInterfaceDeclaration.check(D)?g(b.get("id"),T):t.VariableDeclarator.check(D)?(x(b.get("id"),A),d(b.get("init"),A,T)):D.type==="ImportSpecifier"||D.type==="ImportNamespaceSpecifier"||D.type==="ImportDefaultSpecifier"?x(b.get(D.local?"local":D.name?"name":"id"),A):s.check(D)&&!a.check(D)&&r.eachField(D,function(L,q){var ee=b.get(L);if(!p(ee,q))throw new Error("");d(ee,A,T)}))}function p(b,A){return!!(b.value===A||Array.isArray(b.value)&&b.value.length===0&&Array.isArray(A)&&A.length===0)}function d(b,A,T){var D=b.value;if(!(!D||a.check(D)))if(t.FunctionDeclaration.check(D)&&D.id!==null)x(b.get("id"),A);else if(t.ClassDeclaration&&t.ClassDeclaration.check(D)&&D.id!==null)x(b.get("id"),A),l(b.get("typeParameters"),A,T);else if(t.InterfaceDeclaration&&t.InterfaceDeclaration.check(D)||t.TSInterfaceDeclaration&&t.TSInterfaceDeclaration.check(D))g(b.get("id"),T);else if(f.check(D)){if(t.CatchClause.check(D)&&t.Identifier.check(D.param)){var L=D.param.name,q=Bt.call(A,L);l(b.get("body"),A,T),q||delete A[L]}}else l(b,A,T)}function x(b,A){var T=b.value;t.Pattern.assert(T),t.Identifier.check(T)?Bt.call(A,T.name)?A[T.name].push(b):A[T.name]=[b]:t.AssignmentPattern&&t.AssignmentPattern.check(T)?x(b.get("left"),A):t.ObjectPattern&&t.ObjectPattern.check(T)?b.get("properties").each(function(D){var L=D.value;t.Pattern.check(L)?x(D,A):t.Property.check(L)||t.ObjectProperty&&t.ObjectProperty.check(L)?x(D.get("value"),A):t.SpreadProperty&&t.SpreadProperty.check(L)&&x(D.get("argument"),A)}):t.ArrayPattern&&t.ArrayPattern.check(T)?b.get("elements").each(function(D){var L=D.value;t.Pattern.check(L)?x(D,A):t.SpreadElement&&t.SpreadElement.check(L)&&x(D.get("argument"),A)}):t.PropertyPattern&&t.PropertyPattern.check(T)?x(b.get("pattern"),A):(t.SpreadElementPattern&&t.SpreadElementPattern.check(T)||t.RestElement&&t.RestElement.check(T)||t.SpreadPropertyPattern&&t.SpreadPropertyPattern.check(T))&&x(b.get("argument"),A)}function g(b,A){var T=b.value;t.Pattern.assert(T),t.Identifier.check(T)&&(Bt.call(A,T.name)?A[T.name].push(b):A[T.name]=[b])}function E(b,A){var T=b.value;y.assert(T),Bt.call(A,T.name)?A[T.name].push(b):A[T.name]=[b]}return m.lookup=function(b){for(var A=this;A&&!A.declares(b);A=A.parent);return A},m.lookupType=function(b){for(var A=this;A&&!A.declaresType(b);A=A.parent);return A},m.getGlobalScope=function(){for(var b=this;!b.isGlobal;)b=b.parent;return b},c}Zs.default=Nc;(0,kc.maybeSetModuleExports)(function(){return Vn})});var ri=O((ti,Wn)=>{"use strict";Object.defineProperty(ti,"__esModule",{value:!0});var ei=(X(),V(J)),Fc=ei.__importDefault(ue()),Mc=ei.__importDefault(Qs()),Bc=ei.__importDefault(Kn()),Lc=te();function Oc(i){var r=i.use(Fc.default),e=r.namedTypes,t=r.builders,s=r.builtInTypes.number,a=r.builtInTypes.array,n=i.use(Mc.default),u=i.use(Bc.default),c=function x(g,E,b){if(!(this instanceof x))throw new Error("NodePath constructor cannot be invoked without 'new'");n.call(this,g,E,b)},f=c.prototype=Object.create(n.prototype,{constructor:{value:c,enumerable:!1,writable:!0,configurable:!0}});Object.defineProperties(f,{node:{get:function(){return Object.defineProperty(this,"node",{configurable:!0,value:this._computeNode()}),this.node}},parent:{get:function(){return Object.defineProperty(this,"parent",{configurable:!0,value:this._computeParent()}),this.parent}},scope:{get:function(){return Object.defineProperty(this,"scope",{configurable:!0,value:this._computeScope()}),this.scope}}}),f.replace=function(){return delete this.node,delete this.parent,delete this.scope,n.prototype.replace.apply(this,arguments)},f.prune=function(){var x=this.parent;return this.replace(),p(x)},f._computeNode=function(){var x=this.value;if(e.Node.check(x))return x;var g=this.parentPath;return g&&g.node||null},f._computeParent=function(){var x=this.value,g=this.parentPath;if(!e.Node.check(x)){for(;g&&!e.Node.check(g.value);)g=g.parentPath;g&&(g=g.parentPath)}for(;g&&!e.Node.check(g.value);)g=g.parentPath;return g||null},f._computeScope=function(){var x=this.value,g=this.parentPath,E=g&&g.scope;return e.Node.check(x)&&u.isEstablishedBy(x)&&(E=new u(this,E)),E||null},f.getValueProperty=function(x){return r.getFieldValue(this.value,x)},f.needsParens=function(x){var g=this.parentPath;if(!g)return!1;var E=this.value;if(!e.Expression.check(E)||E.type==="Identifier")return!1;for(;!e.Node.check(g.value);)if(g=g.parentPath,!g)return!1;var b=g.value;switch(E.type){case"UnaryExpression":case"SpreadElement":case"SpreadProperty":return b.type==="MemberExpression"&&this.name==="object"&&b.object===E;case"BinaryExpression":case"LogicalExpression":switch(b.type){case"CallExpression":return this.name==="callee"&&b.callee===E;case"UnaryExpression":case"SpreadElement":case"SpreadProperty":return!0;case"MemberExpression":return this.name==="object"&&b.object===E;case"BinaryExpression":case"LogicalExpression":{var A=E,T=b.operator,D=m[T],L=A.operator,q=m[L];if(D>q)return!0;if(D===q&&this.name==="right"){if(b.right!==A)throw new Error("Nodes must be equal");return!0}}default:return!1}case"SequenceExpression":switch(b.type){case"ForStatement":return!1;case"ExpressionStatement":return this.name!=="expression";default:return!0}case"YieldExpression":switch(b.type){case"BinaryExpression":case"LogicalExpression":case"UnaryExpression":case"SpreadElement":case"SpreadProperty":case"CallExpression":case"MemberExpression":case"NewExpression":case"ConditionalExpression":case"YieldExpression":return!0;default:return!1}case"Literal":return b.type==="MemberExpression"&&s.check(E.value)&&this.name==="object"&&b.object===E;case"AssignmentExpression":case"ConditionalExpression":switch(b.type){case"UnaryExpression":case"SpreadElement":case"SpreadProperty":case"BinaryExpression":case"LogicalExpression":return!0;case"CallExpression":return this.name==="callee"&&b.callee===E;case"ConditionalExpression":return this.name==="test"&&b.test===E;case"MemberExpression":return this.name==="object"&&b.object===E;default:return!1}default:if(b.type==="NewExpression"&&this.name==="callee"&&b.callee===E)return o(E)}return!!(x!==!0&&!this.canBeFirstInStatement()&&this.firstInStatement())};function h(x){return e.BinaryExpression.check(x)||e.LogicalExpression.check(x)}function y(x){return e.UnaryExpression.check(x)||e.SpreadElement&&e.SpreadElement.check(x)||e.SpreadProperty&&e.SpreadProperty.check(x)}var m={};[["||"],["&&"],["|"],["^"],["&"],["==","===","!=","!=="],["<",">","<=",">=","in","instanceof"],[">>","<<",">>>"],["+","-"],["*","/","%"]].forEach(function(x,g){x.forEach(function(E){m[E]=g})});function o(x){return e.CallExpression.check(x)?!0:a.check(x)?x.some(o):e.Node.check(x)?r.someField(x,function(g,E){return o(E)}):!1}f.canBeFirstInStatement=function(){var x=this.node;return!e.FunctionExpression.check(x)&&!e.ObjectExpression.check(x)},f.firstInStatement=function(){return l(this)};function l(x){for(var g,E;x.parent;x=x.parent){if(g=x.node,E=x.parent.node,e.BlockStatement.check(E)&&x.parent.name==="body"&&x.name===0){if(E.body[0]!==g)throw new Error("Nodes must be equal");return!0}if(e.ExpressionStatement.check(E)&&x.name==="expression"){if(E.expression!==g)throw new Error("Nodes must be equal");return!0}if(e.SequenceExpression.check(E)&&x.parent.name==="expressions"&&x.name===0){if(E.expressions[0]!==g)throw new Error("Nodes must be equal");continue}if(e.CallExpression.check(E)&&x.name==="callee"){if(E.callee!==g)throw new Error("Nodes must be equal");continue}if(e.MemberExpression.check(E)&&x.name==="object"){if(E.object!==g)throw new Error("Nodes must be equal");continue}if(e.ConditionalExpression.check(E)&&x.name==="test"){if(E.test!==g)throw new Error("Nodes must be equal");continue}if(h(E)&&x.name==="left"){if(E.left!==g)throw new Error("Nodes must be equal");continue}if(e.UnaryExpression.check(E)&&!E.prefix&&x.name==="argument"){if(E.argument!==g)throw new Error("Nodes must be equal");continue}return!1}return!0}function p(x){if(e.VariableDeclaration.check(x.node)){var g=x.get("declarations").value;if(!g||g.length===0)return x.prune()}else if(e.ExpressionStatement.check(x.node)){if(!x.get("expression").value)return x.prune()}else e.IfStatement.check(x.node)&&d(x);return x}function d(x){var g=x.get("test").value,E=x.get("alternate").value,b=x.get("consequent").value;if(!b&&!E){var A=t.expressionStatement(g);x.replace(A)}else if(!b&&E){var T=t.unaryExpression("!",g,!0);e.UnaryExpression.check(g)&&g.operator==="!"&&(T=g.argument),x.get("test").replace(T),x.get("consequent").replace(E),x.get("alternate").replace()}}return c}ti.default=Oc;(0,Lc.maybeSetModuleExports)(function(){return Wn})});var $n=O((si,Gn)=>{"use strict";Object.defineProperty(si,"__esModule",{value:!0});var Hn=(X(),V(J)),_c=Hn.__importDefault(ue()),jc=Hn.__importDefault(ri()),Rc=te(),rs=Object.prototype.hasOwnProperty;function Uc(i){var r=i.use(_c.default),e=i.use(jc.default),t=r.builtInTypes.array,s=r.builtInTypes.object,a=r.builtInTypes.function,n,u=function l(){if(!(this instanceof l))throw new Error("PathVisitor constructor cannot be invoked without 'new'");this._reusableContextStack=[],this._methodNameTable=c(this),this._shouldVisitComments=rs.call(this._methodNameTable,"Block")||rs.call(this._methodNameTable,"Line"),this.Context=m(this),this._visiting=!1,this._changeReported=!1};function c(l){var p=Object.create(null);for(var d in l)/^visit[A-Z]/.test(d)&&(p[d.slice(5)]=!0);for(var x=r.computeSupertypeLookupTable(p),g=Object.create(null),E=Object.keys(x),b=E.length,A=0;A<b;++A){var T=E[A];d="visit"+x[T],a.check(l[d])&&(g[T]=d)}return g}u.fromMethodsObject=function(p){if(p instanceof u)return p;if(!s.check(p))return new u;var d=function g(){if(!(this instanceof g))throw new Error("Visitor constructor cannot be invoked without 'new'");u.call(this)},x=d.prototype=Object.create(h);return x.constructor=d,f(x,p),f(d,u),a.assert(d.fromMethodsObject),a.assert(d.visit),new d};function f(l,p){for(var d in p)rs.call(p,d)&&(l[d]=p[d]);return l}u.visit=function(p,d){return u.fromMethodsObject(d).visit(p)};var h=u.prototype;h.visit=function(){if(this._visiting)throw new Error("Recursively calling visitor.visit(path) resets visitor state. Try this.visit(path) or this.traverse(path) instead.");this._visiting=!0,this._changeReported=!1,this._abortRequested=!1;for(var l=arguments.length,p=new Array(l),d=0;d<l;++d)p[d]=arguments[d];p[0]instanceof e||(p[0]=new e({root:p[0]}).get("root")),this.reset.apply(this,p);var x;try{var g=this.visitWithoutReset(p[0]);x=!0}finally{if(this._visiting=!1,!x&&this._abortRequested)return p[0].value}return g},h.AbortRequest=function(){},h.abort=function(){var l=this;l._abortRequested=!0;var p=new l.AbortRequest;throw p.cancel=function(){l._abortRequested=!1},p},h.reset=function(l){},h.visitWithoutReset=function(l){if(this instanceof this.Context)return this.visitor.visitWithoutReset(l);if(!(l instanceof e))throw new Error("");var p=l.value,d=p&&typeof p=="object"&&typeof p.type=="string"&&this._methodNameTable[p.type];if(d){var x=this.acquireContext(l);try{return x.invokeVisitorMethod(d)}finally{this.releaseContext(x)}}else return y(l,this)};function y(l,p){if(!(l instanceof e))throw new Error("");if(!(p instanceof u))throw new Error("");var d=l.value;if(t.check(d))l.each(p.visitWithoutReset,p);else if(s.check(d)){var x=r.getFieldNames(d);p._shouldVisitComments&&d.comments&&x.indexOf("comments")<0&&x.push("comments");for(var g=x.length,E=[],b=0;b<g;++b){var A=x[b];rs.call(d,A)||(d[A]=r.getFieldValue(d,A)),E.push(l.get(A))}for(var b=0;b<g;++b)p.visitWithoutReset(E[b])}return l.value}h.acquireContext=function(l){return this._reusableContextStack.length===0?new this.Context(l):this._reusableContextStack.pop().reset(l)},h.releaseContext=function(l){if(!(l instanceof this.Context))throw new Error("");this._reusableContextStack.push(l),l.currentPath=null},h.reportChanged=function(){this._changeReported=!0},h.wasChangeReported=function(){return this._changeReported};function m(l){function p(x){if(!(this instanceof p))throw new Error("");if(!(this instanceof u))throw new Error("");if(!(x instanceof e))throw new Error("");Object.defineProperty(this,"visitor",{value:l,writable:!1,enumerable:!0,configurable:!1}),this.currentPath=x,this.needToCallTraverse=!0,Object.seal(this)}if(!(l instanceof u))throw new Error("");var d=p.prototype=Object.create(l);return d.constructor=p,f(d,o),p}var o=Object.create(null);return o.reset=function(p){if(!(this instanceof this.Context))throw new Error("");if(!(p instanceof e))throw new Error("");return this.currentPath=p,this.needToCallTraverse=!0,this},o.invokeVisitorMethod=function(p){if(!(this instanceof this.Context))throw new Error("");if(!(this.currentPath instanceof e))throw new Error("");var d=this.visitor[p].call(this,this.currentPath);if(d===!1?this.needToCallTraverse=!1:d!==n&&(this.currentPath=this.currentPath.replace(d)[0],this.needToCallTraverse&&this.traverse(this.currentPath)),this.needToCallTraverse!==!1)throw new Error("Must either call this.traverse or return false in "+p);var x=this.currentPath;return x&&x.value},o.traverse=function(p,d){if(!(this instanceof this.Context))throw new Error("");if(!(p instanceof e))throw new Error("");if(!(this.currentPath instanceof e))throw new Error("");return this.needToCallTraverse=!1,y(p,u.fromMethodsObject(d||this.visitor))},o.visit=function(p,d){if(!(this instanceof this.Context))throw new Error("");if(!(p instanceof e))throw new Error("");if(!(this.currentPath instanceof e))throw new Error("");return this.needToCallTraverse=!1,u.fromMethodsObject(d||this.visitor).visitWithoutReset(p)},o.reportChanged=function(){this.visitor.reportChanged()},o.abort=function(){this.needToCallTraverse=!1,this.visitor.abort()},u}si.default=Uc;(0,Rc.maybeSetModuleExports)(function(){return Gn})});var Qn=O((ii,Yn)=>{"use strict";Object.defineProperty(ii,"__esModule",{value:!0});var qc=(X(),V(J)),zc=te(),Jc=qc.__importDefault(ue());function Xc(i){var r=i.use(Jc.default),e=r.getFieldNames,t=r.getFieldValue,s=r.builtInTypes.array,a=r.builtInTypes.object,n=r.builtInTypes.Date,u=r.builtInTypes.RegExp,c=Object.prototype.hasOwnProperty;function f(l,p,d){return s.check(d)?d.length=0:d=null,y(l,p,d)}f.assert=function(l,p){var d=[];if(!f(l,p,d))if(d.length===0){if(l!==p)throw new Error("Nodes must be equal")}else throw new Error("Nodes differ in the following path: "+d.map(h).join(""))};function h(l){return/[_$a-z][_$a-z0-9]*/i.test(l)?"."+l:"["+JSON.stringify(l)+"]"}function y(l,p,d){return l===p?!0:s.check(l)?m(l,p,d):a.check(l)?o(l,p,d):n.check(l)?n.check(p)&&+l==+p:u.check(l)?u.check(p)&&l.source===p.source&&l.global===p.global&&l.multiline===p.multiline&&l.ignoreCase===p.ignoreCase:l==p}function m(l,p,d){s.assert(l);var x=l.length;if(!s.check(p)||p.length!==x)return d&&d.push("length"),!1;for(var g=0;g<x;++g){if(d&&d.push(g),g in l!=g in p||!y(l[g],p[g],d))return!1;if(d){var E=d.pop();if(E!==g)throw new Error(""+E)}}return!0}function o(l,p,d){if(a.assert(l),!a.check(p))return!1;if(l.type!==p.type)return d&&d.push("type"),!1;var x=e(l),g=x.length,E=e(p),b=E.length;if(g===b){for(var A=0;A<g;++A){var T=x[A],D=t(l,T),L=t(p,T);if(d&&d.push(T),!y(D,L,d))return!1;if(d){var q=d.pop();if(q!==T)throw new Error(""+q)}}return!0}if(!d)return!1;var ee=Object.create(null);for(A=0;A<g;++A)ee[x[A]]=!0;for(A=0;A<b;++A){if(T=E[A],!c.call(ee,T))return d.push(T),!1;delete ee[T]}for(T in ee){d.push(T);break}return!1}return f}ii.default=Xc;(0,zc.maybeSetModuleExports)(function(){return Yn})});var eo=O((ai,Zn)=>{"use strict";Object.defineProperty(ai,"__esModule",{value:!0});var cr=(X(),V(J)),Vc=cr.__importDefault(ue()),Kc=cr.__importDefault($n()),Wc=cr.__importDefault(Qn()),Hc=cr.__importDefault(Qs()),Gc=cr.__importDefault(ri()),$c=te();function Yc(i){var r=Qc(),e=r.use(Vc.default);i.forEach(r.use),e.finalize();var t=r.use(Kc.default);return{Type:e.Type,builtInTypes:e.builtInTypes,namedTypes:e.namedTypes,builders:e.builders,defineMethod:e.defineMethod,getFieldNames:e.getFieldNames,getFieldValue:e.getFieldValue,eachField:e.eachField,someField:e.someField,getSupertypeNames:e.getSupertypeNames,getBuilderName:e.getBuilderName,astNodesAreEquivalent:r.use(Wc.default),finalize:e.finalize,Path:r.use(Hc.default),NodePath:r.use(Gc.default),PathVisitor:t,use:r.use,visit:t.visit}}ai.default=Yc;function Qc(){var i=[],r=[];function e(s){var a=i.indexOf(s);return a===-1&&(a=i.length,i.push(s),r[a]=s(t)),r[a]}var t={use:e};return t}(0,$c.maybeSetModuleExports)(function(){return Zn})});var oi=O((ni,to)=>{"use strict";Object.defineProperty(ni,"__esModule",{value:!0});var Zc=te();function eh(){return{BinaryOperators:["==","!=","===","!==","<","<=",">",">=","<<",">>",">>>","+","-","*","/","%","&","|","^","in","instanceof"],AssignmentOperators:["=","+=","-=","*=","/=","%=","<<=",">>=",">>>=","|=","^=","&="],LogicalOperators:["||","&&"]}}ni.default=eh;(0,Zc.maybeSetModuleExports)(function(){return to})});var li=O((ui,ro)=>{"use strict";Object.defineProperty(ui,"__esModule",{value:!0});var th=(X(),V(J)),rh=te(),sh=th.__importDefault(oi());function ih(i){var r=i.use(sh.default);return r.BinaryOperators.indexOf("**")<0&&r.BinaryOperators.push("**"),r.AssignmentOperators.indexOf("**=")<0&&r.AssignmentOperators.push("**="),r}ui.default=ih;(0,rh.maybeSetModuleExports)(function(){return ro})});var hi=O((ci,so)=>{"use strict";Object.defineProperty(ci,"__esModule",{value:!0});var ah=(X(),V(J)),nh=te(),oh=ah.__importDefault(li());function uh(i){var r=i.use(oh.default);return r.LogicalOperators.indexOf("??")<0&&r.LogicalOperators.push("??"),r}ci.default=uh;(0,nh.maybeSetModuleExports)(function(){return so})});var ao=O((pi,io)=>{"use strict";Object.defineProperty(pi,"__esModule",{value:!0});var lh=(X(),V(J)),ch=te(),hh=lh.__importDefault(hi());function ph(i){var r=i.use(hh.default);return r.LogicalOperators.forEach(function(e){var t=e+"=";r.AssignmentOperators.indexOf(t)<0&&r.AssignmentOperators.push(t)}),r}pi.default=ph;(0,ch.maybeSetModuleExports)(function(){return io})});var uo=O((di,oo)=>{"use strict";Object.defineProperty(di,"__esModule",{value:!0});var fi=(X(),V(J)),fh=fi.__importDefault(oi()),dh=fi.__importDefault(ue()),no=fi.__importStar(te());function mh(i){var r=i.use(dh.default),e=r.Type,t=e.def,s=e.or,a=i.use(no.default),n=a.defaults,u=a.geq,c=i.use(fh.default),f=c.BinaryOperators,h=c.AssignmentOperators,y=c.LogicalOperators;t("Printable").field("loc",s(t("SourceLocation"),null),n.null,!0),t("Node").bases("Printable").field("type",String).field("comments",s([t("Comment")],null),n.null,!0),t("SourceLocation").field("start",t("Position")).field("end",t("Position")).field("source",s(String,null),n.null),t("Position").field("line",u(1)).field("column",u(0)),t("File").bases("Node").build("program","name").field("program",t("Program")).field("name",s(String,null),n.null),t("Program").bases("Node").build("body").field("body",[t("Statement")]),t("Function").bases("Node").field("id",s(t("Identifier"),null),n.null).field("params",[t("Pattern")]).field("body",t("BlockStatement")).field("generator",Boolean,n.false).field("async",Boolean,n.false),t("Statement").bases("Node"),t("EmptyStatement").bases("Statement").build(),t("BlockStatement").bases("Statement").build("body").field("body",[t("Statement")]),t("ExpressionStatement").bases("Statement").build("expression").field("expression",t("Expression")),t("IfStatement").bases("Statement").build("test","consequent","alternate").field("test",t("Expression")).field("consequent",t("Statement")).field("alternate",s(t("Statement"),null),n.null),t("LabeledStatement").bases("Statement").build("label","body").field("label",t("Identifier")).field("body",t("Statement")),t("BreakStatement").bases("Statement").build("label").field("label",s(t("Identifier"),null),n.null),t("ContinueStatement").bases("Statement").build("label").field("label",s(t("Identifier"),null),n.null),t("WithStatement").bases("Statement").build("object","body").field("object",t("Expression")).field("body",t("Statement")),t("SwitchStatement").bases("Statement").build("discriminant","cases","lexical").field("discriminant",t("Expression")).field("cases",[t("SwitchCase")]).field("lexical",Boolean,n.false),t("ReturnStatement").bases("Statement").build("argument").field("argument",s(t("Expression"),null)),t("ThrowStatement").bases("Statement").build("argument").field("argument",t("Expression")),t("TryStatement").bases("Statement").build("block","handler","finalizer").field("block",t("BlockStatement")).field("handler",s(t("CatchClause"),null),function(){return this.handlers&&this.handlers[0]||null}).field("handlers",[t("CatchClause")],function(){return this.handler?[this.handler]:[]},!0).field("guardedHandlers",[t("CatchClause")],n.emptyArray).field("finalizer",s(t("BlockStatement"),null),n.null),t("CatchClause").bases("Node").build("param","guard","body").field("param",t("Pattern")).field("guard",s(t("Expression"),null),n.null).field("body",t("BlockStatement")),t("WhileStatement").bases("Statement").build("test","body").field("test",t("Expression")).field("body",t("Statement")),t("DoWhileStatement").bases("Statement").build("body","test").field("body",t("Statement")).field("test",t("Expression")),t("ForStatement").bases("Statement").build("init","test","update","body").field("init",s(t("VariableDeclaration"),t("Expression"),null)).field("test",s(t("Expression"),null)).field("update",s(t("Expression"),null)).field("body",t("Statement")),t("ForInStatement").bases("Statement").build("left","right","body").field("left",s(t("VariableDeclaration"),t("Expression"))).field("right",t("Expression")).field("body",t("Statement")),t("DebuggerStatement").bases("Statement").build(),t("Declaration").bases("Statement"),t("FunctionDeclaration").bases("Function","Declaration").build("id","params","body").field("id",t("Identifier")),t("FunctionExpression").bases("Function","Expression").build("id","params","body"),t("VariableDeclaration").bases("Declaration").build("kind","declarations").field("kind",s("var","let","const")).field("declarations",[t("VariableDeclarator")]),t("VariableDeclarator").bases("Node").build("id","init").field("id",t("Pattern")).field("init",s(t("Expression"),null),n.null),t("Expression").bases("Node"),t("ThisExpression").bases("Expression").build(),t("ArrayExpression").bases("Expression").build("elements").field("elements",[s(t("Expression"),null)]),t("ObjectExpression").bases("Expression").build("properties").field("properties",[t("Property")]),t("Property").bases("Node").build("kind","key","value").field("kind",s("init","get","set")).field("key",s(t("Literal"),t("Identifier"))).field("value",t("Expression")),t("SequenceExpression").bases("Expression").build("expressions").field("expressions",[t("Expression")]);var m=s("-","+","!","~","typeof","void","delete");t("UnaryExpression").bases("Expression").build("operator","argument","prefix").field("operator",m).field("argument",t("Expression")).field("prefix",Boolean,n.true);var o=s.apply(void 0,f);t("BinaryExpression").bases("Expression").build("operator","left","right").field("operator",o).field("left",t("Expression")).field("right",t("Expression"));var l=s.apply(void 0,h);t("AssignmentExpression").bases("Expression").build("operator","left","right").field("operator",l).field("left",s(t("Pattern"),t("MemberExpression"))).field("right",t("Expression"));var p=s("++","--");t("UpdateExpression").bases("Expression").build("operator","argument","prefix").field("operator",p).field("argument",t("Expression")).field("prefix",Boolean);var d=s.apply(void 0,y);t("LogicalExpression").bases("Expression").build("operator","left","right").field("operator",d).field("left",t("Expression")).field("right",t("Expression")),t("ConditionalExpression").bases("Expression").build("test","consequent","alternate").field("test",t("Expression")).field("consequent",t("Expression")).field("alternate",t("Expression")),t("NewExpression").bases("Expression").build("callee","arguments").field("callee",t("Expression")).field("arguments",[t("Expression")]),t("CallExpression").bases("Expression").build("callee","arguments").field("callee",t("Expression")).field("arguments",[t("Expression")]),t("MemberExpression").bases("Expression").build("object","property","computed").field("object",t("Expression")).field("property",s(t("Identifier"),t("Expression"))).field("computed",Boolean,function(){var x=this.property.type;return x==="Literal"||x==="MemberExpression"||x==="BinaryExpression"}),t("Pattern").bases("Node"),t("SwitchCase").bases("Node").build("test","consequent").field("test",s(t("Expression"),null)).field("consequent",[t("Statement")]),t("Identifier").bases("Expression","Pattern").build("name").field("name",String).field("optional",Boolean,n.false),t("Literal").bases("Expression").build("value").field("value",s(String,Boolean,null,Number,RegExp,BigInt)),t("Comment").bases("Printable").field("value",String).field("leading",Boolean,n.true).field("trailing",Boolean,n.false)}di.default=mh;(0,no.maybeSetModuleExports)(function(){return oo})});var ho=O((yi,co)=>{"use strict";Object.defineProperty(yi,"__esModule",{value:!0});var mi=(X(),V(J)),yh=mi.__importDefault(uo()),xh=mi.__importDefault(ue()),lo=mi.__importStar(te());function gh(i){i.use(yh.default);var r=i.use(xh.default),e=r.Type.def,t=r.Type.or,s=i.use(lo.default).defaults;e("Function").field("generator",Boolean,s.false).field("expression",Boolean,s.false).field("defaults",[t(e("Expression"),null)],s.emptyArray).field("rest",t(e("Identifier"),null),s.null),e("RestElement").bases("Pattern").build("argument").field("argument",e("Pattern")).field("typeAnnotation",t(e("TypeAnnotation"),e("TSTypeAnnotation"),null),s.null),e("SpreadElementPattern").bases("Pattern").build("argument").field("argument",e("Pattern")),e("FunctionDeclaration").build("id","params","body","generator","expression").field("id",t(e("Identifier"),null)),e("FunctionExpression").build("id","params","body","generator","expression"),e("ArrowFunctionExpression").bases("Function","Expression").build("params","body","expression").field("id",null,s.null).field("body",t(e("BlockStatement"),e("Expression"))).field("generator",!1,s.false),e("ForOfStatement").bases("Statement").build("left","right","body").field("left",t(e("VariableDeclaration"),e("Pattern"))).field("right",e("Expression")).field("body",e("Statement")),e("YieldExpression").bases("Expression").build("argument","delegate").field("argument",t(e("Expression"),null)).field("delegate",Boolean,s.false),e("GeneratorExpression").bases("Expression").build("body","blocks","filter").field("body",e("Expression")).field("blocks",[e("ComprehensionBlock")]).field("filter",t(e("Expression"),null)),e("ComprehensionExpression").bases("Expression").build("body","blocks","filter").field("body",e("Expression")).field("blocks",[e("ComprehensionBlock")]).field("filter",t(e("Expression"),null)),e("ComprehensionBlock").bases("Node").build("left","right","each").field("left",e("Pattern")).field("right",e("Expression")).field("each",Boolean),e("Property").field("key",t(e("Literal"),e("Identifier"),e("Expression"))).field("value",t(e("Expression"),e("Pattern"))).field("method",Boolean,s.false).field("shorthand",Boolean,s.false).field("computed",Boolean,s.false),e("ObjectProperty").field("shorthand",Boolean,s.false),e("PropertyPattern").bases("Pattern").build("key","pattern").field("key",t(e("Literal"),e("Identifier"),e("Expression"))).field("pattern",e("Pattern")).field("computed",Boolean,s.false),e("ObjectPattern").bases("Pattern").build("properties").field("properties",[t(e("PropertyPattern"),e("Property"))]),e("ArrayPattern").bases("Pattern").build("elements").field("elements",[t(e("Pattern"),null)]),e("SpreadElement").bases("Node").build("argument").field("argument",e("Expression")),e("ArrayExpression").field("elements",[t(e("Expression"),e("SpreadElement"),e("RestElement"),null)]),e("NewExpression").field("arguments",[t(e("Expression"),e("SpreadElement"))]),e("CallExpression").field("arguments",[t(e("Expression"),e("SpreadElement"))]),e("AssignmentPattern").bases("Pattern").build("left","right").field("left",e("Pattern")).field("right",e("Expression")),e("MethodDefinition").bases("Declaration").build("kind","key","value","static").field("kind",t("constructor","method","get","set")).field("key",e("Expression")).field("value",e("Function")).field("computed",Boolean,s.false).field("static",Boolean,s.false);var a=t(e("MethodDefinition"),e("VariableDeclarator"),e("ClassPropertyDefinition"),e("ClassProperty"),e("StaticBlock"));e("ClassProperty").bases("Declaration").build("key").field("key",t(e("Literal"),e("Identifier"),e("Expression"))).field("computed",Boolean,s.false),e("ClassPropertyDefinition").bases("Declaration").build("definition").field("definition",a),e("ClassBody").bases("Declaration").build("body").field("body",[a]),e("ClassDeclaration").bases("Declaration").build("id","body","superClass").field("id",t(e("Identifier"),null)).field("body",e("ClassBody")).field("superClass",t(e("Expression"),null),s.null),e("ClassExpression").bases("Expression").build("id","body","superClass").field("id",t(e("Identifier"),null),s.null).field("body",e("ClassBody")).field("superClass",t(e("Expression"),null),s.null),e("Super").bases("Expression").build(),e("Specifier").bases("Node"),e("ModuleSpecifier").bases("Specifier").field("local",t(e("Identifier"),null),s.null).field("id",t(e("Identifier"),null),s.null).field("name",t(e("Identifier"),null),s.null),e("ImportSpecifier").bases("ModuleSpecifier").build("imported","local").field("imported",e("Identifier")),e("ImportDefaultSpecifier").bases("ModuleSpecifier").build("local"),e("ImportNamespaceSpecifier").bases("ModuleSpecifier").build("local"),e("ImportDeclaration").bases("Declaration").build("specifiers","source","importKind").field("specifiers",[t(e("ImportSpecifier"),e("ImportNamespaceSpecifier"),e("ImportDefaultSpecifier"))],s.emptyArray).field("source",e("Literal")).field("importKind",t("value","type"),function(){return"value"}),e("ExportNamedDeclaration").bases("Declaration").build("declaration","specifiers","source").field("declaration",t(e("Declaration"),null)).field("specifiers",[e("ExportSpecifier")],s.emptyArray).field("source",t(e("Literal"),null),s.null),e("ExportSpecifier").bases("ModuleSpecifier").build("local","exported").field("exported",e("Identifier")),e("ExportDefaultDeclaration").bases("Declaration").build("declaration").field("declaration",t(e("Declaration"),e("Expression"))),e("ExportAllDeclaration").bases("Declaration").build("source").field("source",e("Literal")),e("TaggedTemplateExpression").bases("Expression").build("tag","quasi").field("tag",e("Expression")).field("quasi",e("TemplateLiteral")),e("TemplateLiteral").bases("Expression").build("quasis","expressions").field("quasis",[e("TemplateElement")]).field("expressions",[e("Expression")]),e("TemplateElement").bases("Node").build("value","tail").field("value",{cooked:String,raw:String}).field("tail",Boolean),e("MetaProperty").bases("Expression").build("meta","property").field("meta",e("Identifier")).field("property",e("Identifier"))}yi.default=gh;(0,lo.maybeSetModuleExports)(function(){return co})});var mo=O((xi,fo)=>{"use strict";Object.defineProperty(xi,"__esModule",{value:!0});var po=(X(),V(J)),vh=po.__importDefault(li()),bh=po.__importDefault(ho()),Sh=te();function Eh(i){i.use(vh.default),i.use(bh.default)}xi.default=Eh;(0,Sh.maybeSetModuleExports)(function(){return fo})});var go=O((vi,xo)=>{"use strict";Object.defineProperty(vi,"__esModule",{value:!0});var gi=(X(),V(J)),Ah=gi.__importDefault(mo()),Th=gi.__importDefault(ue()),yo=gi.__importStar(te());function Ch(i){i.use(Ah.default);var r=i.use(Th.default),e=r.Type.def,t=i.use(yo.default).defaults;e("Function").field("async",Boolean,t.false),e("AwaitExpression").bases("Expression").build("argument").field("argument",e("Expression"))}vi.default=Ch;(0,yo.maybeSetModuleExports)(function(){return xo})});var So=O((Si,bo)=>{"use strict";Object.defineProperty(Si,"__esModule",{value:!0});var bi=(X(),V(J)),Ph=bi.__importDefault(go()),Dh=bi.__importDefault(ue()),vo=bi.__importStar(te());function wh(i){i.use(Ph.default);var r=i.use(Dh.default),e=r.Type.def,t=r.Type.or,s=i.use(vo.default).defaults;e("ForOfStatement").field("await",Boolean,s.false),e("SpreadProperty").bases("Node").build("argument").field("argument",e("Expression")),e("ObjectExpression").field("properties",[t(e("Property"),e("SpreadProperty"),e("SpreadElement"))]),e("TemplateElement").field("value",{cooked:t(String,null),raw:String}),e("SpreadPropertyPattern").bases("Pattern").build("argument").field("argument",e("Pattern")),e("ObjectPattern").field("properties",[t(e("PropertyPattern"),e("Property"),e("RestElement"),e("SpreadPropertyPattern"))])}Si.default=wh;(0,vo.maybeSetModuleExports)(function(){return bo})});var To=O((Ai,Ao)=>{"use strict";Object.defineProperty(Ai,"__esModule",{value:!0});var Ei=(X(),V(J)),kh=Ei.__importDefault(So()),Ih=Ei.__importDefault(ue()),Eo=Ei.__importStar(te());function Nh(i){i.use(kh.default);var r=i.use(Ih.default),e=r.Type.def,t=r.Type.or,s=i.use(Eo.default).defaults;e("CatchClause").field("param",t(e("Pattern"),null),s.null)}Ai.default=Nh;(0,Eo.maybeSetModuleExports)(function(){return Ao})});var Do=O((Ti,Po)=>{"use strict";Object.defineProperty(Ti,"__esModule",{value:!0});var ss=(X(),V(J)),Fh=ss.__importDefault(hi()),Mh=ss.__importDefault(To()),Bh=ss.__importDefault(ue()),Co=ss.__importStar(te());function Lh(i){i.use(Fh.default),i.use(Mh.default);var r=i.use(Bh.default),e=r.Type.def,t=r.Type.or,s=i.use(Co.default),a=s.defaults;e("ImportExpression").bases("Expression").build("source").field("source",e("Expression")),e("ExportAllDeclaration").bases("Declaration").build("source","exported").field("source",e("Literal")).field("exported",t(e("Identifier"),null,void 0),a.null),e("ChainElement").bases("Node").field("optional",Boolean,a.false),e("CallExpression").bases("Expression","ChainElement"),e("MemberExpression").bases("Expression","ChainElement"),e("ChainExpression").bases("Expression").build("expression").field("expression",e("ChainElement")),e("OptionalCallExpression").bases("CallExpression").build("callee","arguments","optional").field("optional",Boolean,a.true),e("OptionalMemberExpression").bases("MemberExpression").build("object","property","computed","optional").field("optional",Boolean,a.true)}Ti.default=Lh;(0,Co.maybeSetModuleExports)(function(){return Po})});var Io=O((Ci,ko)=>{"use strict";Object.defineProperty(Ci,"__esModule",{value:!0});var wo=(X(),V(J)),Oh=wo.__importDefault(ao()),_h=wo.__importDefault(Do()),jh=te();function Rh(i){i.use(Oh.default),i.use(_h.default)}Ci.default=Rh;(0,jh.maybeSetModuleExports)(function(){return ko})});var Mo=O((Pi,Fo)=>{"use strict";Object.defineProperty(Pi,"__esModule",{value:!0});var No=(X(),V(J)),Uh=No.__importDefault(Io()),qh=No.__importDefault(ue()),zh=te();function Jh(i){i.use(Uh.default);var r=i.use(qh.default),e=r.Type.def;e("StaticBlock").bases("Declaration").build("body").field("body",[e("Statement")])}Pi.default=Jh;(0,zh.maybeSetModuleExports)(function(){return Fo})});var Lt=O((wi,Lo)=>{"use strict";Object.defineProperty(wi,"__esModule",{value:!0});var Di=(X(),V(J)),Xh=Di.__importDefault(ue()),Bo=Di.__importStar(te()),Vh=Di.__importDefault(Mo());function Kh(i){i.use(Vh.default);var r=i.use(Xh.default),e=r.Type,t=r.Type.def,s=e.or,a=i.use(Bo.default),n=a.defaults;t("AwaitExpression").build("argument","all").field("argument",s(t("Expression"),null)).field("all",Boolean,n.false),t("Decorator").bases("Node").build("expression").field("expression",t("Expression")),t("Property").field("decorators",s([t("Decorator")],null),n.null),t("MethodDefinition").field("decorators",s([t("Decorator")],null),n.null),t("PrivateName").bases("Expression","Pattern").build("id").field("id",t("Identifier")),t("ClassPrivateProperty").bases("ClassProperty").build("key","value").field("key",t("PrivateName")).field("value",s(t("Expression"),null),n.null),t("ImportAttribute").bases("Node").build("key","value").field("key",s(t("Identifier"),t("Literal"))).field("value",t("Expression")),["ImportDeclaration","ExportAllDeclaration","ExportNamedDeclaration"].forEach(function(u){t(u).field("assertions",[t("ImportAttribute")],n.emptyArray)}),t("RecordExpression").bases("Expression").build("properties").field("properties",[s(t("ObjectProperty"),t("ObjectMethod"),t("SpreadElement"))]),t("TupleExpression").bases("Expression").build("elements").field("elements",[s(t("Expression"),t("SpreadElement"),null)]),t("ModuleExpression").bases("Node").build("body").field("body",t("Program"))}wi.default=Kh;(0,Bo.maybeSetModuleExports)(function(){return Lo})});var jo=O((Ii,_o)=>{"use strict";Object.defineProperty(Ii,"__esModule",{value:!0});var ki=(X(),V(J)),Wh=ki.__importDefault(Lt()),Hh=ki.__importDefault(ue()),Oo=ki.__importStar(te());function Gh(i){i.use(Wh.default);var r=i.use(Hh.default),e=r.Type.def,t=r.Type.or,s=i.use(Oo.default).defaults;e("JSXAttribute").bases("Node").build("name","value").field("name",t(e("JSXIdentifier"),e("JSXNamespacedName"))).field("value",t(e("Literal"),e("JSXExpressionContainer"),e("JSXElement"),e("JSXFragment"),null),s.null),e("JSXIdentifier").bases("Identifier").build("name").field("name",String),e("JSXNamespacedName").bases("Node").build("namespace","name").field("namespace",e("JSXIdentifier")).field("name",e("JSXIdentifier")),e("JSXMemberExpression").bases("MemberExpression").build("object","property").field("object",t(e("JSXIdentifier"),e("JSXMemberExpression"))).field("property",e("JSXIdentifier")).field("computed",Boolean,s.false);var a=t(e("JSXIdentifier"),e("JSXNamespacedName"),e("JSXMemberExpression"));e("JSXSpreadAttribute").bases("Node").build("argument").field("argument",e("Expression"));var n=[t(e("JSXAttribute"),e("JSXSpreadAttribute"))];e("JSXExpressionContainer").bases("Expression").build("expression").field("expression",t(e("Expression"),e("JSXEmptyExpression")));var u=[t(e("JSXText"),e("JSXExpressionContainer"),e("JSXSpreadChild"),e("JSXElement"),e("JSXFragment"),e("Literal"))];e("JSXElement").bases("Expression").build("openingElement","closingElement","children").field("openingElement",e("JSXOpeningElement")).field("closingElement",t(e("JSXClosingElement"),null),s.null).field("children",u,s.emptyArray).field("name",a,function(){return this.openingElement.name},!0).field("selfClosing",Boolean,function(){return this.openingElement.selfClosing},!0).field("attributes",n,function(){return this.openingElement.attributes},!0),e("JSXOpeningElement").bases("Node").build("name","attributes","selfClosing").field("name",a).field("attributes",n,s.emptyArray).field("selfClosing",Boolean,s.false),e("JSXClosingElement").bases("Node").build("name").field("name",a),e("JSXFragment").bases("Expression").build("openingFragment","closingFragment","children").field("openingFragment",e("JSXOpeningFragment")).field("closingFragment",e("JSXClosingFragment")).field("children",u,s.emptyArray),e("JSXOpeningFragment").bases("Node").build(),e("JSXClosingFragment").bases("Node").build(),e("JSXText").bases("Literal").build("value","raw").field("value",String).field("raw",String,function(){return this.value}),e("JSXEmptyExpression").bases("Node").build(),e("JSXSpreadChild").bases("Node").build("expression").field("expression",e("Expression"))}Ii.default=Gh;(0,Oo.maybeSetModuleExports)(function(){return _o})});var Fi=O((Ni,qo)=>{"use strict";Object.defineProperty(Ni,"__esModule",{value:!0});var Ro=(X(),V(J)),$h=Ro.__importDefault(ue()),Uo=Ro.__importStar(te());function Yh(i){var r=i.use($h.default),e=r.Type.def,t=r.Type.or,s=i.use(Uo.default).defaults,a=t(e("TypeAnnotation"),e("TSTypeAnnotation"),null),n=t(e("TypeParameterDeclaration"),e("TSTypeParameterDeclaration"),null);e("Identifier").field("typeAnnotation",a,s.null),e("ObjectPattern").field("typeAnnotation",a,s.null),e("Function").field("returnType",a,s.null).field("typeParameters",n,s.null),e("ClassProperty").build("key","value","typeAnnotation","static").field("value",t(e("Expression"),null)).field("static",Boolean,s.false).field("typeAnnotation",a,s.null),["ClassDeclaration","ClassExpression"].forEach(function(u){e(u).field("typeParameters",n,s.null).field("superTypeParameters",t(e("TypeParameterInstantiation"),e("TSTypeParameterInstantiation"),null),s.null).field("implements",t([e("ClassImplements")],[e("TSExpressionWithTypeArguments")]),s.emptyArray)})}Ni.default=Yh;(0,Uo.maybeSetModuleExports)(function(){return qo})});var Bi=O((Mi,Jo)=>{"use strict";Object.defineProperty(Mi,"__esModule",{value:!0});var is=(X(),V(J)),Qh=is.__importDefault(Lt()),Zh=is.__importDefault(Fi()),ep=is.__importDefault(ue()),zo=is.__importStar(te());function tp(i){i.use(Qh.default),i.use(Zh.default);var r=i.use(ep.default),e=r.Type.def,t=r.Type.or,s=i.use(zo.default).defaults;e("Flow").bases("Node"),e("FlowType").bases("Flow"),e("AnyTypeAnnotation").bases("FlowType").build(),e("EmptyTypeAnnotation").bases("FlowType").build(),e("MixedTypeAnnotation").bases("FlowType").build(),e("VoidTypeAnnotation").bases("FlowType").build(),e("SymbolTypeAnnotation").bases("FlowType").build(),e("NumberTypeAnnotation").bases("FlowType").build(),e("BigIntTypeAnnotation").bases("FlowType").build(),e("NumberLiteralTypeAnnotation").bases("FlowType").build("value","raw").field("value",Number).field("raw",String),e("NumericLiteralTypeAnnotation").bases("FlowType").build("value","raw").field("value",Number).field("raw",String),e("BigIntLiteralTypeAnnotation").bases("FlowType").build("value","raw").field("value",null).field("raw",String),e("StringTypeAnnotation").bases("FlowType").build(),e("StringLiteralTypeAnnotation").bases("FlowType").build("value","raw").field("value",String).field("raw",String),e("BooleanTypeAnnotation").bases("FlowType").build(),e("BooleanLiteralTypeAnnotation").bases("FlowType").build("value","raw").field("value",Boolean).field("raw",String),e("TypeAnnotation").bases("Node").build("typeAnnotation").field("typeAnnotation",e("FlowType")),e("NullableTypeAnnotation").bases("FlowType").build("typeAnnotation").field("typeAnnotation",e("FlowType")),e("NullLiteralTypeAnnotation").bases("FlowType").build(),e("NullTypeAnnotation").bases("FlowType").build(),e("ThisTypeAnnotation").bases("FlowType").build(),e("ExistsTypeAnnotation").bases("FlowType").build(),e("ExistentialTypeParam").bases("FlowType").build(),e("FunctionTypeAnnotation").bases("FlowType").build("params","returnType","rest","typeParameters").field("params",[e("FunctionTypeParam")]).field("returnType",e("FlowType")).field("rest",t(e("FunctionTypeParam"),null)).field("typeParameters",t(e("TypeParameterDeclaration"),null)),e("FunctionTypeParam").bases("Node").build("name","typeAnnotation","optional").field("name",t(e("Identifier"),null)).field("typeAnnotation",e("FlowType")).field("optional",Boolean),e("ArrayTypeAnnotation").bases("FlowType").build("elementType").field("elementType",e("FlowType")),e("ObjectTypeAnnotation").bases("FlowType").build("properties","indexers","callProperties").field("properties",[t(e("ObjectTypeProperty"),e("ObjectTypeSpreadProperty"))]).field("indexers",[e("ObjectTypeIndexer")],s.emptyArray).field("callProperties",[e("ObjectTypeCallProperty")],s.emptyArray).field("inexact",t(Boolean,void 0),s.undefined).field("exact",Boolean,s.false).field("internalSlots",[e("ObjectTypeInternalSlot")],s.emptyArray),e("Variance").bases("Node").build("kind").field("kind",t("plus","minus"));var a=t(e("Variance"),"plus","minus",null);e("ObjectTypeProperty").bases("Node").build("key","value","optional").field("key",t(e("Literal"),e("Identifier"))).field("value",e("FlowType")).field("optional",Boolean).field("variance",a,s.null),e("ObjectTypeIndexer").bases("Node").build("id","key","value").field("id",e("Identifier")).field("key",e("FlowType")).field("value",e("FlowType")).field("variance",a,s.null).field("static",Boolean,s.false),e("ObjectTypeCallProperty").bases("Node").build("value").field("value",e("FunctionTypeAnnotation")).field("static",Boolean,s.false),e("QualifiedTypeIdentifier").bases("Node").build("qualification","id").field("qualification",t(e("Identifier"),e("QualifiedTypeIdentifier"))).field("id",e("Identifier")),e("GenericTypeAnnotation").bases("FlowType").build("id","typeParameters").field("id",t(e("Identifier"),e("QualifiedTypeIdentifier"))).field("typeParameters",t(e("TypeParameterInstantiation"),null)),e("MemberTypeAnnotation").bases("FlowType").build("object","property").field("object",e("Identifier")).field("property",t(e("MemberTypeAnnotation"),e("GenericTypeAnnotation"))),e("IndexedAccessType").bases("FlowType").build("objectType","indexType").field("objectType",e("FlowType")).field("indexType",e("FlowType")),e("OptionalIndexedAccessType").bases("FlowType").build("objectType","indexType","optional").field("objectType",e("FlowType")).field("indexType",e("FlowType")).field("optional",Boolean),e("UnionTypeAnnotation").bases("FlowType").build("types").field("types",[e("FlowType")]),e("IntersectionTypeAnnotation").bases("FlowType").build("types").field("types",[e("FlowType")]),e("TypeofTypeAnnotation").bases("FlowType").build("argument").field("argument",e("FlowType")),e("ObjectTypeSpreadProperty").bases("Node").build("argument").field("argument",e("FlowType")),e("ObjectTypeInternalSlot").bases("Node").build("id","value","optional","static","method").field("id",e("Identifier")).field("value",e("FlowType")).field("optional",Boolean).field("static",Boolean).field("method",Boolean),e("TypeParameterDeclaration").bases("Node").build("params").field("params",[e("TypeParameter")]),e("TypeParameterInstantiation").bases("Node").build("params").field("params",[e("FlowType")]),e("TypeParameter").bases("FlowType").build("name","variance","bound","default").field("name",String).field("variance",a,s.null).field("bound",t(e("TypeAnnotation"),null),s.null).field("default",t(e("FlowType"),null),s.null),e("ClassProperty").field("variance",a,s.null),e("ClassImplements").bases("Node").build("id").field("id",e("Identifier")).field("superClass",t(e("Expression"),null),s.null).field("typeParameters",t(e("TypeParameterInstantiation"),null),s.null),e("InterfaceTypeAnnotation").bases("FlowType").build("body","extends").field("body",e("ObjectTypeAnnotation")).field("extends",t([e("InterfaceExtends")],null),s.null),e("InterfaceDeclaration").bases("Declaration").build("id","body","extends").field("id",e("Identifier")).field("typeParameters",t(e("TypeParameterDeclaration"),null),s.null).field("body",e("ObjectTypeAnnotation")).field("extends",[e("InterfaceExtends")]),e("DeclareInterface").bases("InterfaceDeclaration").build("id","body","extends"),e("InterfaceExtends").bases("Node").build("id").field("id",e("Identifier")).field("typeParameters",t(e("TypeParameterInstantiation"),null),s.null),e("TypeAlias").bases("Declaration").build("id","typeParameters","right").field("id",e("Identifier")).field("typeParameters",t(e("TypeParameterDeclaration"),null)).field("right",e("FlowType")),e("DeclareTypeAlias").bases("TypeAlias").build("id","typeParameters","right"),e("OpaqueType").bases("Declaration").build("id","typeParameters","impltype","supertype").field("id",e("Identifier")).field("typeParameters",t(e("TypeParameterDeclaration"),null)).field("impltype",e("FlowType")).field("supertype",t(e("FlowType"),null)),e("DeclareOpaqueType").bases("OpaqueType").build("id","typeParameters","supertype").field("impltype",t(e("FlowType"),null)),e("TypeCastExpression").bases("Expression").build("expression","typeAnnotation").field("expression",e("Expression")).field("typeAnnotation",e("TypeAnnotation")),e("TupleTypeAnnotation").bases("FlowType").build("types").field("types",[e("FlowType")]),e("DeclareVariable").bases("Statement").build("id").field("id",e("Identifier")),e("DeclareFunction").bases("Statement").build("id").field("id",e("Identifier")).field("predicate",t(e("FlowPredicate"),null),s.null),e("DeclareClass").bases("InterfaceDeclaration").build("id"),e("DeclareModule").bases("Statement").build("id","body").field("id",t(e("Identifier"),e("Literal"))).field("body",e("BlockStatement")),e("DeclareModuleExports").bases("Statement").build("typeAnnotation").field("typeAnnotation",e("TypeAnnotation")),e("DeclareExportDeclaration").bases("Declaration").build("default","declaration","specifiers","source").field("default",Boolean).field("declaration",t(e("DeclareVariable"),e("DeclareFunction"),e("DeclareClass"),e("FlowType"),e("TypeAlias"),e("DeclareOpaqueType"),e("InterfaceDeclaration"),null)).field("specifiers",[t(e("ExportSpecifier"),e("ExportBatchSpecifier"))],s.emptyArray).field("source",t(e("Literal"),null),s.null),e("DeclareExportAllDeclaration").bases("Declaration").build("source").field("source",t(e("Literal"),null),s.null),e("ImportDeclaration").field("importKind",t("value","type","typeof"),function(){return"value"}),e("FlowPredicate").bases("Flow"),e("InferredPredicate").bases("FlowPredicate").build(),e("DeclaredPredicate").bases("FlowPredicate").build("value").field("value",e("Expression")),e("Function").field("predicate",t(e("FlowPredicate"),null),s.null),e("CallExpression").field("typeArguments",t(null,e("TypeParameterInstantiation")),s.null),e("NewExpression").field("typeArguments",t(null,e("TypeParameterInstantiation")),s.null),e("EnumDeclaration").bases("Declaration").build("id","body").field("id",e("Identifier")).field("body",t(e("EnumBooleanBody"),e("EnumNumberBody"),e("EnumStringBody"),e("EnumSymbolBody"))),e("EnumBooleanBody").build("members","explicitType").field("members",[e("EnumBooleanMember")]).field("explicitType",Boolean),e("EnumNumberBody").build("members","explicitType").field("members",[e("EnumNumberMember")]).field("explicitType",Boolean),e("EnumStringBody").build("members","explicitType").field("members",t([e("EnumStringMember")],[e("EnumDefaultedMember")])).field("explicitType",Boolean),e("EnumSymbolBody").build("members").field("members",[e("EnumDefaultedMember")]),e("EnumBooleanMember").build("id","init").field("id",e("Identifier")).field("init",t(e("Literal"),Boolean)),e("EnumNumberMember").build("id","init").field("id",e("Identifier")).field("init",e("Literal")),e("EnumStringMember").build("id","init").field("id",e("Identifier")).field("init",e("Literal")),e("EnumDefaultedMember").build("id").field("id",e("Identifier"))}Mi.default=tp;(0,zo.maybeSetModuleExports)(function(){return Jo})});var Ko=O((Oi,Vo)=>{"use strict";Object.defineProperty(Oi,"__esModule",{value:!0});var Li=(X(),V(J)),rp=Li.__importDefault(Lt()),sp=Li.__importDefault(ue()),Xo=Li.__importStar(te());function ip(i){i.use(rp.default);var r=i.use(sp.default),e=i.use(Xo.default).defaults,t=r.Type.def,s=r.Type.or;t("VariableDeclaration").field("declarations",[s(t("VariableDeclarator"),t("Identifier"))]),t("Property").field("value",s(t("Expression"),t("Pattern"))),t("ArrayPattern").field("elements",[s(t("Pattern"),t("SpreadElement"),null)]),t("ObjectPattern").field("properties",[s(t("Property"),t("PropertyPattern"),t("SpreadPropertyPattern"),t("SpreadProperty"))]),t("ExportSpecifier").bases("ModuleSpecifier").build("id","name"),t("ExportBatchSpecifier").bases("Specifier").build(),t("ExportDeclaration").bases("Declaration").build("default","declaration","specifiers","source").field("default",Boolean).field("declaration",s(t("Declaration"),t("Expression"),null)).field("specifiers",[s(t("ExportSpecifier"),t("ExportBatchSpecifier"))],e.emptyArray).field("source",s(t("Literal"),null),e.null),t("Block").bases("Comment").build("value","leading","trailing"),t("Line").bases("Comment").build("value","leading","trailing")}Oi.default=ip;(0,Xo.maybeSetModuleExports)(function(){return Vo})});var Ri=O((ji,Ho)=>{"use strict";Object.defineProperty(ji,"__esModule",{value:!0});var _i=(X(),V(J)),ap=_i.__importDefault(Lt()),np=_i.__importDefault(ue()),Wo=_i.__importStar(te());function op(i){var r,e,t,s,a;i.use(ap.default);var n=i.use(np.default),u=i.use(Wo.default).defaults,c=n.Type.def,f=n.Type.or,h=n.builtInTypes.undefined;c("Noop").bases("Statement").build(),c("DoExpression").bases("Expression").build("body").field("body",[c("Statement")]),c("BindExpression").bases("Expression").build("object","callee").field("object",f(c("Expression"),null)).field("callee",c("Expression")),c("ParenthesizedExpression").bases("Expression").build("expression").field("expression",c("Expression")),c("ExportNamespaceSpecifier").bases("Specifier").build("exported").field("exported",c("Identifier")),c("ExportDefaultSpecifier").bases("Specifier").build("exported").field("exported",c("Identifier")),c("CommentBlock").bases("Comment").build("value","leading","trailing"),c("CommentLine").bases("Comment").build("value","leading","trailing"),c("Directive").bases("Node").build("value").field("value",c("DirectiveLiteral")),c("DirectiveLiteral").bases("Node","Expression").build("value").field("value",String,u["use strict"]),c("InterpreterDirective").bases("Node").build("value").field("value",String),c("BlockStatement").bases("Statement").build("body").field("body",[c("Statement")]).field("directives",[c("Directive")],u.emptyArray),c("Program").bases("Node").build("body").field("body",[c("Statement")]).field("directives",[c("Directive")],u.emptyArray).field("interpreter",f(c("InterpreterDirective"),null),u.null);function y(p,d){return p===void 0&&(p=String),["extra",{rawValue:p,raw:String},function(){var g=n.getFieldValue(this,"value");return{rawValue:g,raw:d?d(g):String(g)}}]}(r=c("StringLiteral").bases("Literal").build("value").field("value",String)).field.apply(r,y(String,function(p){return JSON.stringify(p)})),(e=c("NumericLiteral").bases("Literal").build("value").field("value",Number).field("raw",f(String,null),u.null)).field.apply(e,y(Number)),(t=c("BigIntLiteral").bases("Literal").build("value").field("value",f(String,Number))).field.apply(t,y(String,function(p){return p+"n"})),(s=c("DecimalLiteral").bases("Literal").build("value").field("value",String)).field.apply(s,y(String,function(p){return p+"m"})),c("NullLiteral").bases("Literal").build().field("value",null,u.null),c("BooleanLiteral").bases("Literal").build("value").field("value",Boolean),(a=c("RegExpLiteral").bases("Literal").build("pattern","flags").field("pattern",String).field("flags",String).field("value",RegExp,function(){return new RegExp(this.pattern,this.flags)})).field.apply(a,y(f(RegExp,h),function(p){return"/".concat(p.pattern,"/").concat(p.flags||"")})).field("regex",{pattern:String,flags:String},function(){return{pattern:this.pattern,flags:this.flags}});var m=f(c("Property"),c("ObjectMethod"),c("ObjectProperty"),c("SpreadProperty"),c("SpreadElement"));c("ObjectExpression").bases("Expression").build("properties").field("properties",[m]),c("ObjectMethod").bases("Node","Function").build("kind","key","params","body","computed").field("kind",f("method","get","set")).field("key",f(c("Literal"),c("Identifier"),c("Expression"))).field("params",[c("Pattern")]).field("body",c("BlockStatement")).field("computed",Boolean,u.false).field("generator",Boolean,u.false).field("async",Boolean,u.false).field("accessibility",f(c("Literal"),null),u.null).field("decorators",f([c("Decorator")],null),u.null),c("ObjectProperty").bases("Node").build("key","value").field("key",f(c("Literal"),c("Identifier"),c("Expression"))).field("value",f(c("Expression"),c("Pattern"))).field("accessibility",f(c("Literal"),null),u.null).field("computed",Boolean,u.false);var o=f(c("MethodDefinition"),c("VariableDeclarator"),c("ClassPropertyDefinition"),c("ClassProperty"),c("ClassPrivateProperty"),c("ClassMethod"),c("ClassPrivateMethod"),c("ClassAccessorProperty"),c("StaticBlock"));c("ClassBody").bases("Declaration").build("body").field("body",[o]),c("ClassMethod").bases("Declaration","Function").build("kind","key","params","body","computed","static").field("key",f(c("Literal"),c("Identifier"),c("Expression"))),c("ClassPrivateMethod").bases("Declaration","Function").build("key","params","body","kind","computed","static").field("key",c("PrivateName")),c("ClassAccessorProperty").bases("Declaration").build("key","value","decorators","computed","static").field("key",f(c("Literal"),c("Identifier"),c("PrivateName"),c("Expression"))).field("value",f(c("Expression"),null),u.null),["ClassMethod","ClassPrivateMethod"].forEach(function(p){c(p).field("kind",f("get","set","method","constructor"),function(){return"method"}).field("body",c("BlockStatement")).field("access",f("public","private","protected",null),u.null)}),["ClassMethod","ClassPrivateMethod","ClassAccessorProperty"].forEach(function(p){c(p).field("computed",Boolean,u.false).field("static",Boolean,u.false).field("abstract",Boolean,u.false).field("accessibility",f("public","private","protected",null),u.null).field("decorators",f([c("Decorator")],null),u.null).field("definite",Boolean,u.false).field("optional",Boolean,u.false).field("override",Boolean,u.false).field("readonly",Boolean,u.false)});var l=f(c("Property"),c("PropertyPattern"),c("SpreadPropertyPattern"),c("SpreadProperty"),c("ObjectProperty"),c("RestProperty"),c("RestElement"));c("ObjectPattern").bases("Pattern").build("properties").field("properties",[l]).field("decorators",f([c("Decorator")],null),u.null),c("SpreadProperty").bases("Node").build("argument").field("argument",c("Expression")),c("RestProperty").bases("Node").build("argument").field("argument",c("Expression")),c("ForAwaitStatement").bases("Statement").build("left","right","body").field("left",f(c("VariableDeclaration"),c("Expression"))).field("right",c("Expression")).field("body",c("Statement")),c("Import").bases("Expression").build()}ji.default=op;(0,Wo.maybeSetModuleExports)(function(){return Ho})});var $o=O((qi,Go)=>{"use strict";Object.defineProperty(qi,"__esModule",{value:!0});var Ui=(X(),V(J)),up=Ui.__importDefault(ue()),lp=Ui.__importDefault(Ri()),cp=Ui.__importDefault(Bi()),hp=te();function pp(i){var r=i.use(up.default),e=r.Type.def;i.use(lp.default),i.use(cp.default),e("V8IntrinsicIdentifier").bases("Expression").build("name").field("name",String),e("TopicReference").bases("Expression").build()}qi.default=pp;(0,hp.maybeSetModuleExports)(function(){return Go})});var Zo=O((zi,Qo)=>{"use strict";Object.defineProperty(zi,"__esModule",{value:!0});var as=(X(),V(J)),fp=as.__importDefault(Ri()),dp=as.__importDefault(Fi()),mp=as.__importDefault(ue()),Yo=as.__importStar(te());function yp(i){i.use(fp.default),i.use(dp.default);var r=i.use(mp.default),e=r.namedTypes,t=r.Type.def,s=r.Type.or,a=i.use(Yo.default).defaults,n=r.Type.from(function(h,y){return!!(e.StringLiteral&&e.StringLiteral.check(h,y)||e.Literal&&e.Literal.check(h,y)&&typeof h.value=="string")},"StringLiteral");t("TSType").bases("Node");var u=s(t("Identifier"),t("TSQualifiedName"));t("TSTypeReference").bases("TSType","TSHasOptionalTypeParameterInstantiation").build("typeName","typeParameters").field("typeName",u),t("TSHasOptionalTypeParameterInstantiation").field("typeParameters",s(t("TSTypeParameterInstantiation"),null),a.null),t("TSHasOptionalTypeParameters").field("typeParameters",s(t("TSTypeParameterDeclaration"),null,void 0),a.null),t("TSHasOptionalTypeAnnotation").field("typeAnnotation",s(t("TSTypeAnnotation"),null),a.null),t("TSQualifiedName").bases("Node").build("left","right").field("left",u).field("right",u),t("TSAsExpression").bases("Expression","Pattern").build("expression","typeAnnotation").field("expression",t("Expression")).field("typeAnnotation",t("TSType")).field("extra",s({parenthesized:Boolean},null),a.null),t("TSTypeCastExpression").bases("Expression").build("expression","typeAnnotation").field("expression",t("Expression")).field("typeAnnotation",t("TSType")),t("TSSatisfiesExpression").bases("Expression","Pattern").build("expression","typeAnnotation").field("expression",t("Expression")).field("typeAnnotation",t("TSType")),t("TSNonNullExpression").bases("Expression","Pattern").build("expression").field("expression",t("Expression")),["TSAnyKeyword","TSBigIntKeyword","TSBooleanKeyword","TSNeverKeyword","TSNullKeyword","TSNumberKeyword","TSObjectKeyword","TSStringKeyword","TSSymbolKeyword","TSUndefinedKeyword","TSUnknownKeyword","TSVoidKeyword","TSIntrinsicKeyword","TSThisType"].forEach(function(h){t(h).bases("TSType").build()}),t("TSArrayType").bases("TSType").build("elementType").field("elementType",t("TSType")),t("TSLiteralType").bases("TSType").build("literal").field("literal",s(t("NumericLiteral"),t("StringLiteral"),t("BooleanLiteral"),t("TemplateLiteral"),t("UnaryExpression"),t("BigIntLiteral"))),t("TemplateLiteral").field("expressions",s([t("Expression")],[t("TSType")])),["TSUnionType","TSIntersectionType"].forEach(function(h){t(h).bases("TSType").build("types").field("types",[t("TSType")])}),t("TSConditionalType").bases("TSType").build("checkType","extendsType","trueType","falseType").field("checkType",t("TSType")).field("extendsType",t("TSType")).field("trueType",t("TSType")).field("falseType",t("TSType")),t("TSInferType").bases("TSType").build("typeParameter").field("typeParameter",t("TSTypeParameter")),t("TSParenthesizedType").bases("TSType").build("typeAnnotation").field("typeAnnotation",t("TSType"));var c=[s(t("Identifier"),t("RestElement"),t("ArrayPattern"),t("ObjectPattern"))];["TSFunctionType","TSConstructorType"].forEach(function(h){t(h).bases("TSType","TSHasOptionalTypeParameters","TSHasOptionalTypeAnnotation").build("parameters").field("parameters",c)}),t("TSDeclareFunction").bases("Declaration","TSHasOptionalTypeParameters").build("id","params","returnType").field("declare",Boolean,a.false).field("async",Boolean,a.false).field("generator",Boolean,a.false).field("id",s(t("Identifier"),null),a.null).field("params",[t("Pattern")]).field("returnType",s(t("TSTypeAnnotation"),t("Noop"),null),a.null),t("TSDeclareMethod").bases("Declaration","TSHasOptionalTypeParameters").build("key","params","returnType").field("async",Boolean,a.false).field("generator",Boolean,a.false).field("params",[t("Pattern")]).field("abstract",Boolean,a.false).field("accessibility",s("public","private","protected",void 0),a.undefined).field("static",Boolean,a.false).field("computed",Boolean,a.false).field("optional",Boolean,a.false).field("key",s(t("Identifier"),t("StringLiteral"),t("NumericLiteral"),t("Expression"))).field("kind",s("get","set","method","constructor"),function(){return"method"}).field("access",s("public","private","protected",void 0),a.undefined).field("decorators",s([t("Decorator")],null),a.null).field("returnType",s(t("TSTypeAnnotation"),t("Noop"),null),a.null),t("TSMappedType").bases("TSType").build("typeParameter","typeAnnotation").field("readonly",s(Boolean,"+","-"),a.false).field("typeParameter",t("TSTypeParameter")).field("optional",s(Boolean,"+","-"),a.false).field("typeAnnotation",s(t("TSType"),null),a.null),t("TSTupleType").bases("TSType").build("elementTypes").field("elementTypes",[s(t("TSType"),t("TSNamedTupleMember"))]),t("TSNamedTupleMember").bases("TSType").build("label","elementType","optional").field("label",t("Identifier")).field("optional",Boolean,a.false).field("elementType",t("TSType")),t("TSRestType").bases("TSType").build("typeAnnotation").field("typeAnnotation",t("TSType")),t("TSOptionalType").bases("TSType").build("typeAnnotation").field("typeAnnotation",t("TSType")),t("TSIndexedAccessType").bases("TSType").build("objectType","indexType").field("objectType",t("TSType")).field("indexType",t("TSType")),t("TSTypeOperator").bases("TSType").build("operator").field("operator",String).field("typeAnnotation",t("TSType")),t("TSTypeAnnotation").bases("Node").build("typeAnnotation").field("typeAnnotation",s(t("TSType"),t("TSTypeAnnotation"))),t("TSIndexSignature").bases("Declaration","TSHasOptionalTypeAnnotation").build("parameters","typeAnnotation").field("parameters",[t("Identifier")]).field("readonly",Boolean,a.false),t("TSPropertySignature").bases("Declaration","TSHasOptionalTypeAnnotation").build("key","typeAnnotation","optional").field("key",t("Expression")).field("computed",Boolean,a.false).field("readonly",Boolean,a.false).field("optional",Boolean,a.false).field("initializer",s(t("Expression"),null),a.null),t("TSMethodSignature").bases("Declaration","TSHasOptionalTypeParameters","TSHasOptionalTypeAnnotation").build("key","parameters","typeAnnotation").field("key",t("Expression")).field("computed",Boolean,a.false).field("optional",Boolean,a.false).field("parameters",c),t("TSTypePredicate").bases("TSTypeAnnotation","TSType").build("parameterName","typeAnnotation","asserts").field("parameterName",s(t("Identifier"),t("TSThisType"))).field("typeAnnotation",s(t("TSTypeAnnotation"),null),a.null).field("asserts",Boolean,a.false),["TSCallSignatureDeclaration","TSConstructSignatureDeclaration"].forEach(function(h){t(h).bases("Declaration","TSHasOptionalTypeParameters","TSHasOptionalTypeAnnotation").build("parameters","typeAnnotation").field("parameters",c)}),t("TSEnumMember").bases("Node").build("id","initializer").field("id",s(t("Identifier"),n)).field("initializer",s(t("Expression"),null),a.null),t("TSTypeQuery").bases("TSType").build("exprName").field("exprName",s(u,t("TSImportType")));var f=s(t("TSCallSignatureDeclaration"),t("TSConstructSignatureDeclaration"),t("TSIndexSignature"),t("TSMethodSignature"),t("TSPropertySignature"));t("TSTypeLiteral").bases("TSType").build("members").field("members",[f]),t("TSTypeParameter").bases("Identifier").build("name","constraint","default").field("name",s(t("Identifier"),String)).field("constraint",s(t("TSType"),void 0),a.undefined).field("default",s(t("TSType"),void 0),a.undefined),t("TSTypeAssertion").bases("Expression","Pattern").build("typeAnnotation","expression").field("typeAnnotation",t("TSType")).field("expression",t("Expression")).field("extra",s({parenthesized:Boolean},null),a.null),t("TSTypeParameterDeclaration").bases("Declaration").build("params").field("params",[t("TSTypeParameter")]),t("TSInstantiationExpression").bases("Expression","TSHasOptionalTypeParameterInstantiation").build("expression","typeParameters").field("expression",t("Expression")),t("TSTypeParameterInstantiation").bases("Node").build("params").field("params",[t("TSType")]),t("TSEnumDeclaration").bases("Declaration").build("id","members").field("id",t("Identifier")).field("const",Boolean,a.false).field("declare",Boolean,a.false).field("members",[t("TSEnumMember")]).field("initializer",s(t("Expression"),null),a.null),t("TSTypeAliasDeclaration").bases("Declaration","TSHasOptionalTypeParameters").build("id","typeAnnotation").field("id",t("Identifier")).field("declare",Boolean,a.false).field("typeAnnotation",t("TSType")),t("TSModuleBlock").bases("Node").build("body").field("body",[t("Statement")]),t("TSModuleDeclaration").bases("Declaration").build("id","body").field("id",s(n,u)).field("declare",Boolean,a.false).field("global",Boolean,a.false).field("body",s(t("TSModuleBlock"),t("TSModuleDeclaration"),null),a.null),t("TSImportType").bases("TSType","TSHasOptionalTypeParameterInstantiation").build("argument","qualifier","typeParameters").field("argument",n).field("qualifier",s(u,void 0),a.undefined),t("TSImportEqualsDeclaration").bases("Declaration").build("id","moduleReference").field("id",t("Identifier")).field("isExport",Boolean,a.false).field("moduleReference",s(u,t("TSExternalModuleReference"))),t("TSExternalModuleReference").bases("Declaration").build("expression").field("expression",n),t("TSExportAssignment").bases("Statement").build("expression").field("expression",t("Expression")),t("TSNamespaceExportDeclaration").bases("Declaration").build("id").field("id",t("Identifier")),t("TSInterfaceBody").bases("Node").build("body").field("body",[f]),t("TSExpressionWithTypeArguments").bases("TSType","TSHasOptionalTypeParameterInstantiation").build("expression","typeParameters").field("expression",u),t("TSInterfaceDeclaration").bases("Declaration","TSHasOptionalTypeParameters").build("id","body").field("id",u).field("declare",Boolean,a.false).field("extends",s([t("TSExpressionWithTypeArguments")],null),a.null).field("body",t("TSInterfaceBody")),t("TSParameterProperty").bases("Pattern").build("parameter").field("accessibility",s("public","private","protected",void 0),a.undefined).field("readonly",Boolean,a.false).field("parameter",s(t("Identifier"),t("AssignmentPattern"))),t("ClassProperty").field("access",s("public","private","protected",void 0),a.undefined),t("ClassAccessorProperty").bases("Declaration","TSHasOptionalTypeAnnotation"),t("ClassBody").field("body",[s(t("MethodDefinition"),t("VariableDeclarator"),t("ClassPropertyDefinition"),t("ClassProperty"),t("ClassPrivateProperty"),t("ClassAccessorProperty"),t("ClassMethod"),t("ClassPrivateMethod"),t("StaticBlock"),t("TSDeclareMethod"),f)])}zi.default=yp;(0,Yo.maybeSetModuleExports)(function(){return Qo})});var eu=O(hr=>{"use strict";Object.defineProperty(hr,"__esModule",{value:!0});hr.namedTypes=void 0;var xp;xp=hr.namedTypes||(hr.namedTypes={})});var He=O(H=>{"use strict";Object.defineProperty(H,"__esModule",{value:!0});H.visit=H.use=H.Type=H.someField=H.PathVisitor=H.Path=H.NodePath=H.namedTypes=H.getSupertypeNames=H.getFieldValue=H.getFieldNames=H.getBuilderName=H.finalize=H.eachField=H.defineMethod=H.builtInTypes=H.builders=H.astNodesAreEquivalent=void 0;var yt=(X(),V(J)),gp=yt.__importDefault(eo()),vp=yt.__importDefault(Lt()),bp=yt.__importDefault(jo()),Sp=yt.__importDefault(Bi()),Ep=yt.__importDefault(Ko()),Ap=yt.__importDefault($o()),Tp=yt.__importDefault(Zo()),tu=eu();Object.defineProperty(H,"namedTypes",{enumerable:!0,get:function(){return tu.namedTypes}});var me=(0,gp.default)([vp.default,bp.default,Sp.default,Ep.default,Ap.default,Tp.default]),Cp=me.astNodesAreEquivalent,Pp=me.builders,Dp=me.builtInTypes,wp=me.defineMethod,kp=me.eachField,Ip=me.finalize,Np=me.getBuilderName,Fp=me.getFieldNames,Mp=me.getFieldValue,Bp=me.getSupertypeNames,Lp=me.namedTypes,Op=me.NodePath,_p=me.Path,jp=me.PathVisitor,Rp=me.someField,Up=me.Type,qp=me.use,zp=me.visit;H.astNodesAreEquivalent=Cp;H.builders=Pp;H.builtInTypes=Dp;H.defineMethod=wp;H.eachField=kp;H.finalize=Ip;H.getBuilderName=Np;H.getFieldNames=Fp;H.getFieldValue=Mp;H.getSupertypeNames=Bp;H.NodePath=Op;H.Path=_p;H.PathVisitor=jp;H.someField=Rp;H.Type=Up;H.use=qp;H.visit=zp;Object.assign(tu.namedTypes,Lp)});var Ge=O((Zm,ru)=>{"use strict";var Jp=process.env.NODE_ENV==="production",Ji="Invariant failed";function Xp(i,r){if(!i){if(Jp)throw new Error(Ji);var e=typeof r=="function"?r():r,t=e?"".concat(Ji,": ").concat(e):Ji;throw new Error(t)}}ru.exports=Xp});var iu=O(Xi=>{var su="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");Xi.encode=function(i){if(0<=i&&i<su.length)return su[i];throw new TypeError("Must be between 0 and 63: "+i)};Xi.decode=function(i){var r=65,e=90,t=97,s=122,a=48,n=57,u=43,c=47,f=26,h=52;return r<=i&&i<=e?i-r:t<=i&&i<=s?i-t+f:a<=i&&i<=n?i-a+h:i==u?62:i==c?63:-1}});var Wi=O(Ki=>{var au=iu(),Vi=5,nu=1<<Vi,ou=nu-1,uu=nu;function Vp(i){return i<0?(-i<<1)+1:(i<<1)+0}function Kp(i){var r=(i&1)===1,e=i>>1;return r?-e:e}Ki.encode=function(r){var e="",t,s=Vp(r);do t=s&ou,s>>>=Vi,s>0&&(t|=uu),e+=au.encode(t);while(s>0);return e};Ki.decode=function(r,e,t){var s=r.length,a=0,n=0,u,c;do{if(e>=s)throw new Error("Expected more digits in base 64 VLQ value.");if(c=au.decode(r.charCodeAt(e++)),c===-1)throw new Error("Invalid base64 digit: "+r.charAt(e-1));u=!!(c&uu),c&=ou,a=a+(c<<n),n+=Vi}while(u);t.value=Kp(a),t.rest=e}});var jt=O(ge=>{function Wp(i,r,e){if(r in i)return i[r];if(arguments.length===3)return e;throw new Error('"'+r+'" is a required argument.')}ge.getArg=Wp;var lu=/^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.-]*)(?::(\d+))?(.*)$/,Hp=/^data:.+\,.+$/;function pr(i){var r=i.match(lu);return r?{scheme:r[1],auth:r[2],host:r[3],port:r[4],path:r[5]}:null}ge.urlParse=pr;function Ot(i){var r="";return i.scheme&&(r+=i.scheme+":"),r+="//",i.auth&&(r+=i.auth+"@"),i.host&&(r+=i.host),i.port&&(r+=":"+i.port),i.path&&(r+=i.path),r}ge.urlGenerate=Ot;function Hi(i){var r=i,e=pr(i);if(e){if(!e.path)return i;r=e.path}for(var t=ge.isAbsolute(r),s=r.split(/\/+/),a,n=0,u=s.length-1;u>=0;u--)a=s[u],a==="."?s.splice(u,1):a===".."?n++:n>0&&(a===""?(s.splice(u+1,n),n=0):(s.splice(u,2),n--));return r=s.join("/"),r===""&&(r=t?"/":"."),e?(e.path=r,Ot(e)):r}ge.normalize=Hi;function cu(i,r){i===""&&(i="."),r===""&&(r=".");var e=pr(r),t=pr(i);if(t&&(i=t.path||"/"),e&&!e.scheme)return t&&(e.scheme=t.scheme),Ot(e);if(e||r.match(Hp))return r;if(t&&!t.host&&!t.path)return t.host=r,Ot(t);var s=r.charAt(0)==="/"?r:Hi(i.replace(/\/+$/,"")+"/"+r);return t?(t.path=s,Ot(t)):s}ge.join=cu;ge.isAbsolute=function(i){return i.charAt(0)==="/"||lu.test(i)};function Gp(i,r){i===""&&(i="."),i=i.replace(/\/$/,"");for(var e=0;r.indexOf(i+"/")!==0;){var t=i.lastIndexOf("/");if(t<0||(i=i.slice(0,t),i.match(/^([^\/]+:\/)?\/*$/)))return r;++e}return Array(e+1).join("../")+r.substr(i.length+1)}ge.relative=Gp;var hu=function(){var i=Object.create(null);return!("__proto__"in i)}();function pu(i){return i}function $p(i){return fu(i)?"$"+i:i}ge.toSetString=hu?pu:$p;function Yp(i){return fu(i)?i.slice(1):i}ge.fromSetString=hu?pu:Yp;function fu(i){if(!i)return!1;var r=i.length;if(r<9||i.charCodeAt(r-1)!==95||i.charCodeAt(r-2)!==95||i.charCodeAt(r-3)!==111||i.charCodeAt(r-4)!==116||i.charCodeAt(r-5)!==111||i.charCodeAt(r-6)!==114||i.charCodeAt(r-7)!==112||i.charCodeAt(r-8)!==95||i.charCodeAt(r-9)!==95)return!1;for(var e=r-10;e>=0;e--)if(i.charCodeAt(e)!==36)return!1;return!0}function Qp(i,r,e){var t=_t(i.source,r.source);return t!==0||(t=i.originalLine-r.originalLine,t!==0)||(t=i.originalColumn-r.originalColumn,t!==0||e)||(t=i.generatedColumn-r.generatedColumn,t!==0)||(t=i.generatedLine-r.generatedLine,t!==0)?t:_t(i.name,r.name)}ge.compareByOriginalPositions=Qp;function Zp(i,r,e){var t=i.generatedLine-r.generatedLine;return t!==0||(t=i.generatedColumn-r.generatedColumn,t!==0||e)||(t=_t(i.source,r.source),t!==0)||(t=i.originalLine-r.originalLine,t!==0)||(t=i.originalColumn-r.originalColumn,t!==0)?t:_t(i.name,r.name)}ge.compareByGeneratedPositionsDeflated=Zp;function _t(i,r){return i===r?0:i===null?1:r===null?-1:i>r?1:-1}function ef(i,r){var e=i.generatedLine-r.generatedLine;return e!==0||(e=i.generatedColumn-r.generatedColumn,e!==0)||(e=_t(i.source,r.source),e!==0)||(e=i.originalLine-r.originalLine,e!==0)||(e=i.originalColumn-r.originalColumn,e!==0)?e:_t(i.name,r.name)}ge.compareByGeneratedPositionsInflated=ef;function tf(i){return JSON.parse(i.replace(/^\)]}'[^\n]*\n/,""))}ge.parseSourceMapInput=tf;function rf(i,r,e){if(r=r||"",i&&(i[i.length-1]!=="/"&&r[0]!=="/"&&(i+="/"),r=i+r),e){var t=pr(e);if(!t)throw new Error("sourceMapURL could not be parsed");if(t.path){var s=t.path.lastIndexOf("/");s>=0&&(t.path=t.path.substring(0,s+1))}r=cu(Ot(t),r)}return Hi(r)}ge.computeSourceURL=rf});var Yi=O(du=>{var Gi=jt(),$i=Object.prototype.hasOwnProperty,xt=typeof Map<"u";function $e(){this._array=[],this._set=xt?new Map:Object.create(null)}$e.fromArray=function(r,e){for(var t=new $e,s=0,a=r.length;s<a;s++)t.add(r[s],e);return t};$e.prototype.size=function(){return xt?this._set.size:Object.getOwnPropertyNames(this._set).length};$e.prototype.add=function(r,e){var t=xt?r:Gi.toSetString(r),s=xt?this.has(r):$i.call(this._set,t),a=this._array.length;(!s||e)&&this._array.push(r),s||(xt?this._set.set(r,a):this._set[t]=a)};$e.prototype.has=function(r){if(xt)return this._set.has(r);var e=Gi.toSetString(r);return $i.call(this._set,e)};$e.prototype.indexOf=function(r){if(xt){var e=this._set.get(r);if(e>=0)return e}else{var t=Gi.toSetString(r);if($i.call(this._set,t))return this._set[t]}throw new Error('"'+r+'" is not in the set.')};$e.prototype.at=function(r){if(r>=0&&r<this._array.length)return this._array[r];throw new Error("No element indexed by "+r)};$e.prototype.toArray=function(){return this._array.slice()};du.ArraySet=$e});var xu=O(yu=>{var mu=jt();function sf(i,r){var e=i.generatedLine,t=r.generatedLine,s=i.generatedColumn,a=r.generatedColumn;return t>e||t==e&&a>=s||mu.compareByGeneratedPositionsInflated(i,r)<=0}function ns(){this._array=[],this._sorted=!0,this._last={generatedLine:-1,generatedColumn:0}}ns.prototype.unsortedForEach=function(r,e){this._array.forEach(r,e)};ns.prototype.add=function(r){sf(this._last,r)?(this._last=r,this._array.push(r)):(this._sorted=!1,this._array.push(r))};ns.prototype.toArray=function(){return this._sorted||(this._array.sort(mu.compareByGeneratedPositionsInflated),this._sorted=!0),this._array};yu.MappingList=ns});var Qi=O(gu=>{var fr=Wi(),pe=jt(),os=Yi().ArraySet,af=xu().MappingList;function Ie(i){i||(i={}),this._file=pe.getArg(i,"file",null),this._sourceRoot=pe.getArg(i,"sourceRoot",null),this._skipValidation=pe.getArg(i,"skipValidation",!1),this._sources=new os,this._names=new os,this._mappings=new af,this._sourcesContents=null}Ie.prototype._version=3;Ie.fromSourceMap=function(r){var e=r.sourceRoot,t=new Ie({file:r.file,sourceRoot:e});return r.eachMapping(function(s){var a={generated:{line:s.generatedLine,column:s.generatedColumn}};s.source!=null&&(a.source=s.source,e!=null&&(a.source=pe.relative(e,a.source)),a.original={line:s.originalLine,column:s.originalColumn},s.name!=null&&(a.name=s.name)),t.addMapping(a)}),r.sources.forEach(function(s){var a=s;e!==null&&(a=pe.relative(e,s)),t._sources.has(a)||t._sources.add(a);var n=r.sourceContentFor(s);n!=null&&t.setSourceContent(s,n)}),t};Ie.prototype.addMapping=function(r){var e=pe.getArg(r,"generated"),t=pe.getArg(r,"original",null),s=pe.getArg(r,"source",null),a=pe.getArg(r,"name",null);this._skipValidation||this._validateMapping(e,t,s,a),s!=null&&(s=String(s),this._sources.has(s)||this._sources.add(s)),a!=null&&(a=String(a),this._names.has(a)||this._names.add(a)),this._mappings.add({generatedLine:e.line,generatedColumn:e.column,originalLine:t!=null&&t.line,originalColumn:t!=null&&t.column,source:s,name:a})};Ie.prototype.setSourceContent=function(r,e){var t=r;this._sourceRoot!=null&&(t=pe.relative(this._sourceRoot,t)),e!=null?(this._sourcesContents||(this._sourcesContents=Object.create(null)),this._sourcesContents[pe.toSetString(t)]=e):this._sourcesContents&&(delete this._sourcesContents[pe.toSetString(t)],Object.keys(this._sourcesContents).length===0&&(this._sourcesContents=null))};Ie.prototype.applySourceMap=function(r,e,t){var s=e;if(e==null){if(r.file==null)throw new Error(`SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map's "file" property. Both were omitted.`);s=r.file}var a=this._sourceRoot;a!=null&&(s=pe.relative(a,s));var n=new os,u=new os;this._mappings.unsortedForEach(function(c){if(c.source===s&&c.originalLine!=null){var f=r.originalPositionFor({line:c.originalLine,column:c.originalColumn});f.source!=null&&(c.source=f.source,t!=null&&(c.source=pe.join(t,c.source)),a!=null&&(c.source=pe.relative(a,c.source)),c.originalLine=f.line,c.originalColumn=f.column,f.name!=null&&(c.name=f.name))}var h=c.source;h!=null&&!n.has(h)&&n.add(h);var y=c.name;y!=null&&!u.has(y)&&u.add(y)},this),this._sources=n,this._names=u,r.sources.forEach(function(c){var f=r.sourceContentFor(c);f!=null&&(t!=null&&(c=pe.join(t,c)),a!=null&&(c=pe.relative(a,c)),this.setSourceContent(c,f))},this)};Ie.prototype._validateMapping=function(r,e,t,s){if(e&&typeof e.line!="number"&&typeof e.column!="number")throw new Error("original.line and original.column are not numbers -- you probably meant to omit the original mapping entirely and only map the generated position. If so, pass null for the original mapping instead of an object with empty or null values.");if(!(r&&"line"in r&&"column"in r&&r.line>0&&r.column>=0&&!e&&!t&&!s)){if(r&&"line"in r&&"column"in r&&e&&"line"in e&&"column"in e&&r.line>0&&r.column>=0&&e.line>0&&e.column>=0&&t)return;throw new Error("Invalid mapping: "+JSON.stringify({generated:r,source:t,original:e,name:s}))}};Ie.prototype._serializeMappings=function(){for(var r=0,e=1,t=0,s=0,a=0,n=0,u="",c,f,h,y,m=this._mappings.toArray(),o=0,l=m.length;o<l;o++){if(f=m[o],c="",f.generatedLine!==e)for(r=0;f.generatedLine!==e;)c+=";",e++;else if(o>0){if(!pe.compareByGeneratedPositionsInflated(f,m[o-1]))continue;c+=","}c+=fr.encode(f.generatedColumn-r),r=f.generatedColumn,f.source!=null&&(y=this._sources.indexOf(f.source),c+=fr.encode(y-n),n=y,c+=fr.encode(f.originalLine-1-s),s=f.originalLine-1,c+=fr.encode(f.originalColumn-t),t=f.originalColumn,f.name!=null&&(h=this._names.indexOf(f.name),c+=fr.encode(h-a),a=h)),u+=c}return u};Ie.prototype._generateSourcesContent=function(r,e){return r.map(function(t){if(!this._sourcesContents)return null;e!=null&&(t=pe.relative(e,t));var s=pe.toSetString(t);return Object.prototype.hasOwnProperty.call(this._sourcesContents,s)?this._sourcesContents[s]:null},this)};Ie.prototype.toJSON=function(){var r={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return this._file!=null&&(r.file=this._file),this._sourceRoot!=null&&(r.sourceRoot=this._sourceRoot),this._sourcesContents&&(r.sourcesContent=this._generateSourcesContent(r.sources,r.sourceRoot)),r};Ie.prototype.toString=function(){return JSON.stringify(this.toJSON())};gu.SourceMapGenerator=Ie});var vu=O(gt=>{gt.GREATEST_LOWER_BOUND=1;gt.LEAST_UPPER_BOUND=2;function Zi(i,r,e,t,s,a){var n=Math.floor((r-i)/2)+i,u=s(e,t[n],!0);return u===0?n:u>0?r-n>1?Zi(n,r,e,t,s,a):a==gt.LEAST_UPPER_BOUND?r<t.length?r:-1:n:n-i>1?Zi(i,n,e,t,s,a):a==gt.LEAST_UPPER_BOUND?n:i<0?-1:i}gt.search=function(r,e,t,s){if(e.length===0)return-1;var a=Zi(-1,e.length,r,e,t,s||gt.GREATEST_LOWER_BOUND);if(a<0)return-1;for(;a-1>=0&&t(e[a],e[a-1],!0)===0;)--a;return a}});var Su=O(bu=>{function ea(i,r,e){var t=i[r];i[r]=i[e],i[e]=t}function nf(i,r){return Math.round(i+Math.random()*(r-i))}function ta(i,r,e,t){if(e<t){var s=nf(e,t),a=e-1;ea(i,s,t);for(var n=i[t],u=e;u<t;u++)r(i[u],n)<=0&&(a+=1,ea(i,a,u));ea(i,a+1,u);var c=a+1;ta(i,r,e,c-1),ta(i,r,c+1,t)}}bu.quickSort=function(i,r){ta(i,r,0,i.length-1)}});var Au=O(us=>{var B=jt(),ra=vu(),Rt=Yi().ArraySet,of=Wi(),dr=Su().quickSort;function ne(i,r){var e=i;return typeof i=="string"&&(e=B.parseSourceMapInput(i)),e.sections!=null?new Oe(e,r):new ye(e,r)}ne.fromSourceMap=function(i,r){return ye.fromSourceMap(i,r)};ne.prototype._version=3;ne.prototype.__generatedMappings=null;Object.defineProperty(ne.prototype,"_generatedMappings",{configurable:!0,enumerable:!0,get:function(){return this.__generatedMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__generatedMappings}});ne.prototype.__originalMappings=null;Object.defineProperty(ne.prototype,"_originalMappings",{configurable:!0,enumerable:!0,get:function(){return this.__originalMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__originalMappings}});ne.prototype._charIsMappingSeparator=function(r,e){var t=r.charAt(e);return t===";"||t===","};ne.prototype._parseMappings=function(r,e){throw new Error("Subclasses must implement _parseMappings")};ne.GENERATED_ORDER=1;ne.ORIGINAL_ORDER=2;ne.GREATEST_LOWER_BOUND=1;ne.LEAST_UPPER_BOUND=2;ne.prototype.eachMapping=function(r,e,t){var s=e||null,a=t||ne.GENERATED_ORDER,n;switch(a){case ne.GENERATED_ORDER:n=this._generatedMappings;break;case ne.ORIGINAL_ORDER:n=this._originalMappings;break;default:throw new Error("Unknown order of iteration.")}var u=this.sourceRoot;n.map(function(c){var f=c.source===null?null:this._sources.at(c.source);return f=B.computeSourceURL(u,f,this._sourceMapURL),{source:f,generatedLine:c.generatedLine,generatedColumn:c.generatedColumn,originalLine:c.originalLine,originalColumn:c.originalColumn,name:c.name===null?null:this._names.at(c.name)}},this).forEach(r,s)};ne.prototype.allGeneratedPositionsFor=function(r){var e=B.getArg(r,"line"),t={source:B.getArg(r,"source"),originalLine:e,originalColumn:B.getArg(r,"column",0)};if(t.source=this._findSourceIndex(t.source),t.source<0)return[];var s=[],a=this._findMapping(t,this._originalMappings,"originalLine","originalColumn",B.compareByOriginalPositions,ra.LEAST_UPPER_BOUND);if(a>=0){var n=this._originalMappings[a];if(r.column===void 0)for(var u=n.originalLine;n&&n.originalLine===u;)s.push({line:B.getArg(n,"generatedLine",null),column:B.getArg(n,"generatedColumn",null),lastColumn:B.getArg(n,"lastGeneratedColumn",null)}),n=this._originalMappings[++a];else for(var c=n.originalColumn;n&&n.originalLine===e&&n.originalColumn==c;)s.push({line:B.getArg(n,"generatedLine",null),column:B.getArg(n,"generatedColumn",null),lastColumn:B.getArg(n,"lastGeneratedColumn",null)}),n=this._originalMappings[++a]}return s};us.SourceMapConsumer=ne;function ye(i,r){var e=i;typeof i=="string"&&(e=B.parseSourceMapInput(i));var t=B.getArg(e,"version"),s=B.getArg(e,"sources"),a=B.getArg(e,"names",[]),n=B.getArg(e,"sourceRoot",null),u=B.getArg(e,"sourcesContent",null),c=B.getArg(e,"mappings"),f=B.getArg(e,"file",null);if(t!=this._version)throw new Error("Unsupported version: "+t);n&&(n=B.normalize(n)),s=s.map(String).map(B.normalize).map(function(h){return n&&B.isAbsolute(n)&&B.isAbsolute(h)?B.relative(n,h):h}),this._names=Rt.fromArray(a.map(String),!0),this._sources=Rt.fromArray(s,!0),this._absoluteSources=this._sources.toArray().map(function(h){return B.computeSourceURL(n,h,r)}),this.sourceRoot=n,this.sourcesContent=u,this._mappings=c,this._sourceMapURL=r,this.file=f}ye.prototype=Object.create(ne.prototype);ye.prototype.consumer=ne;ye.prototype._findSourceIndex=function(i){var r=i;if(this.sourceRoot!=null&&(r=B.relative(this.sourceRoot,r)),this._sources.has(r))return this._sources.indexOf(r);var e;for(e=0;e<this._absoluteSources.length;++e)if(this._absoluteSources[e]==i)return e;return-1};ye.fromSourceMap=function(r,e){var t=Object.create(ye.prototype),s=t._names=Rt.fromArray(r._names.toArray(),!0),a=t._sources=Rt.fromArray(r._sources.toArray(),!0);t.sourceRoot=r._sourceRoot,t.sourcesContent=r._generateSourcesContent(t._sources.toArray(),t.sourceRoot),t.file=r._file,t._sourceMapURL=e,t._absoluteSources=t._sources.toArray().map(function(o){return B.computeSourceURL(t.sourceRoot,o,e)});for(var n=r._mappings.toArray().slice(),u=t.__generatedMappings=[],c=t.__originalMappings=[],f=0,h=n.length;f<h;f++){var y=n[f],m=new Eu;m.generatedLine=y.generatedLine,m.generatedColumn=y.generatedColumn,y.source&&(m.source=a.indexOf(y.source),m.originalLine=y.originalLine,m.originalColumn=y.originalColumn,y.name&&(m.name=s.indexOf(y.name)),c.push(m)),u.push(m)}return dr(t.__originalMappings,B.compareByOriginalPositions),t};ye.prototype._version=3;Object.defineProperty(ye.prototype,"sources",{get:function(){return this._absoluteSources.slice()}});function Eu(){this.generatedLine=0,this.generatedColumn=0,this.source=null,this.originalLine=null,this.originalColumn=null,this.name=null}ye.prototype._parseMappings=function(r,e){for(var t=1,s=0,a=0,n=0,u=0,c=0,f=r.length,h=0,y={},m={},o=[],l=[],p,d,x,g,E;h<f;)if(r.charAt(h)===";")t++,h++,s=0;else if(r.charAt(h)===",")h++;else{for(p=new Eu,p.generatedLine=t,g=h;g<f&&!this._charIsMappingSeparator(r,g);g++);if(d=r.slice(h,g),x=y[d],x)h+=d.length;else{for(x=[];h<g;)of.decode(r,h,m),E=m.value,h=m.rest,x.push(E);if(x.length===2)throw new Error("Found a source, but no line and column");if(x.length===3)throw new Error("Found a source and line, but no column");y[d]=x}p.generatedColumn=s+x[0],s=p.generatedColumn,x.length>1&&(p.source=u+x[1],u+=x[1],p.originalLine=a+x[2],a=p.originalLine,p.originalLine+=1,p.originalColumn=n+x[3],n=p.originalColumn,x.length>4&&(p.name=c+x[4],c+=x[4])),l.push(p),typeof p.originalLine=="number"&&o.push(p)}dr(l,B.compareByGeneratedPositionsDeflated),this.__generatedMappings=l,dr(o,B.compareByOriginalPositions),this.__originalMappings=o};ye.prototype._findMapping=function(r,e,t,s,a,n){if(r[t]<=0)throw new TypeError("Line must be greater than or equal to 1, got "+r[t]);if(r[s]<0)throw new TypeError("Column must be greater than or equal to 0, got "+r[s]);return ra.search(r,e,a,n)};ye.prototype.computeColumnSpans=function(){for(var r=0;r<this._generatedMappings.length;++r){var e=this._generatedMappings[r];if(r+1<this._generatedMappings.length){var t=this._generatedMappings[r+1];if(e.generatedLine===t.generatedLine){e.lastGeneratedColumn=t.generatedColumn-1;continue}}e.lastGeneratedColumn=1/0}};ye.prototype.originalPositionFor=function(r){var e={generatedLine:B.getArg(r,"line"),generatedColumn:B.getArg(r,"column")},t=this._findMapping(e,this._generatedMappings,"generatedLine","generatedColumn",B.compareByGeneratedPositionsDeflated,B.getArg(r,"bias",ne.GREATEST_LOWER_BOUND));if(t>=0){var s=this._generatedMappings[t];if(s.generatedLine===e.generatedLine){var a=B.getArg(s,"source",null);a!==null&&(a=this._sources.at(a),a=B.computeSourceURL(this.sourceRoot,a,this._sourceMapURL));var n=B.getArg(s,"name",null);return n!==null&&(n=this._names.at(n)),{source:a,line:B.getArg(s,"originalLine",null),column:B.getArg(s,"originalColumn",null),name:n}}}return{source:null,line:null,column:null,name:null}};ye.prototype.hasContentsOfAllSources=function(){return this.sourcesContent?this.sourcesContent.length>=this._sources.size()&&!this.sourcesContent.some(function(r){return r==null}):!1};ye.prototype.sourceContentFor=function(r,e){if(!this.sourcesContent)return null;var t=this._findSourceIndex(r);if(t>=0)return this.sourcesContent[t];var s=r;this.sourceRoot!=null&&(s=B.relative(this.sourceRoot,s));var a;if(this.sourceRoot!=null&&(a=B.urlParse(this.sourceRoot))){var n=s.replace(/^file:\/\//,"");if(a.scheme=="file"&&this._sources.has(n))return this.sourcesContent[this._sources.indexOf(n)];if((!a.path||a.path=="/")&&this._sources.has("/"+s))return this.sourcesContent[this._sources.indexOf("/"+s)]}if(e)return null;throw new Error('"'+s+'" is not in the SourceMap.')};ye.prototype.generatedPositionFor=function(r){var e=B.getArg(r,"source");if(e=this._findSourceIndex(e),e<0)return{line:null,column:null,lastColumn:null};var t={source:e,originalLine:B.getArg(r,"line"),originalColumn:B.getArg(r,"column")},s=this._findMapping(t,this._originalMappings,"originalLine","originalColumn",B.compareByOriginalPositions,B.getArg(r,"bias",ne.GREATEST_LOWER_BOUND));if(s>=0){var a=this._originalMappings[s];if(a.source===t.source)return{line:B.getArg(a,"generatedLine",null),column:B.getArg(a,"generatedColumn",null),lastColumn:B.getArg(a,"lastGeneratedColumn",null)}}return{line:null,column:null,lastColumn:null}};us.BasicSourceMapConsumer=ye;function Oe(i,r){var e=i;typeof i=="string"&&(e=B.parseSourceMapInput(i));var t=B.getArg(e,"version"),s=B.getArg(e,"sections");if(t!=this._version)throw new Error("Unsupported version: "+t);this._sources=new Rt,this._names=new Rt;var a={line:-1,column:0};this._sections=s.map(function(n){if(n.url)throw new Error("Support for url field in sections not implemented.");var u=B.getArg(n,"offset"),c=B.getArg(u,"line"),f=B.getArg(u,"column");if(c<a.line||c===a.line&&f<a.column)throw new Error("Section offsets must be ordered and non-overlapping.");return a=u,{generatedOffset:{generatedLine:c+1,generatedColumn:f+1},consumer:new ne(B.getArg(n,"map"),r)}})}Oe.prototype=Object.create(ne.prototype);Oe.prototype.constructor=ne;Oe.prototype._version=3;Object.defineProperty(Oe.prototype,"sources",{get:function(){for(var i=[],r=0;r<this._sections.length;r++)for(var e=0;e<this._sections[r].consumer.sources.length;e++)i.push(this._sections[r].consumer.sources[e]);return i}});Oe.prototype.originalPositionFor=function(r){var e={generatedLine:B.getArg(r,"line"),generatedColumn:B.getArg(r,"column")},t=ra.search(e,this._sections,function(a,n){var u=a.generatedLine-n.generatedOffset.generatedLine;return u||a.generatedColumn-n.generatedOffset.generatedColumn}),s=this._sections[t];return s?s.consumer.originalPositionFor({line:e.generatedLine-(s.generatedOffset.generatedLine-1),column:e.generatedColumn-(s.generatedOffset.generatedLine===e.generatedLine?s.generatedOffset.generatedColumn-1:0),bias:r.bias}):{source:null,line:null,column:null,name:null}};Oe.prototype.hasContentsOfAllSources=function(){return this._sections.every(function(r){return r.consumer.hasContentsOfAllSources()})};Oe.prototype.sourceContentFor=function(r,e){for(var t=0;t<this._sections.length;t++){var s=this._sections[t],a=s.consumer.sourceContentFor(r,!0);if(a)return a}if(e)return null;throw new Error('"'+r+'" is not in the SourceMap.')};Oe.prototype.generatedPositionFor=function(r){for(var e=0;e<this._sections.length;e++){var t=this._sections[e];if(t.consumer._findSourceIndex(B.getArg(r,"source"))!==-1){var s=t.consumer.generatedPositionFor(r);if(s){var a={line:s.line+(t.generatedOffset.generatedLine-1),column:s.column+(t.generatedOffset.generatedLine===s.line?t.generatedOffset.generatedColumn-1:0)};return a}}}return{line:null,column:null}};Oe.prototype._parseMappings=function(r,e){this.__generatedMappings=[],this.__originalMappings=[];for(var t=0;t<this._sections.length;t++)for(var s=this._sections[t],a=s.consumer._generatedMappings,n=0;n<a.length;n++){var u=a[n],c=s.consumer._sources.at(u.source);c=B.computeSourceURL(s.consumer.sourceRoot,c,this._sourceMapURL),this._sources.add(c),c=this._sources.indexOf(c);var f=null;u.name&&(f=s.consumer._names.at(u.name),this._names.add(f),f=this._names.indexOf(f));var h={source:c,generatedLine:u.generatedLine+(s.generatedOffset.generatedLine-1),generatedColumn:u.generatedColumn+(s.generatedOffset.generatedLine===u.generatedLine?s.generatedOffset.generatedColumn-1:0),originalLine:u.originalLine,originalColumn:u.originalColumn,name:f};this.__generatedMappings.push(h),typeof h.originalLine=="number"&&this.__originalMappings.push(h)}dr(this.__generatedMappings,B.compareByGeneratedPositionsDeflated),dr(this.__originalMappings,B.compareByOriginalPositions)};us.IndexedSourceMapConsumer=Oe});var Cu=O(Tu=>{var uf=Qi().SourceMapGenerator,ls=jt(),lf=/(\r?\n)/,cf=10,Ut="$$$isSourceNode$$$";function Pe(i,r,e,t,s){this.children=[],this.sourceContents={},this.line=i??null,this.column=r??null,this.source=e??null,this.name=s??null,this[Ut]=!0,t!=null&&this.add(t)}Pe.fromStringWithSourceMap=function(r,e,t){var s=new Pe,a=r.split(lf),n=0,u=function(){var m=l(),o=l()||"";return m+o;function l(){return n<a.length?a[n++]:void 0}},c=1,f=0,h=null;return e.eachMapping(function(m){if(h!==null)if(c<m.generatedLine)y(h,u()),c++,f=0;else{var o=a[n]||"",l=o.substr(0,m.generatedColumn-f);a[n]=o.substr(m.generatedColumn-f),f=m.generatedColumn,y(h,l),h=m;return}for(;c<m.generatedLine;)s.add(u()),c++;if(f<m.generatedColumn){var o=a[n]||"";s.add(o.substr(0,m.generatedColumn)),a[n]=o.substr(m.generatedColumn),f=m.generatedColumn}h=m},this),n<a.length&&(h&&y(h,u()),s.add(a.splice(n).join(""))),e.sources.forEach(function(m){var o=e.sourceContentFor(m);o!=null&&(t!=null&&(m=ls.join(t,m)),s.setSourceContent(m,o))}),s;function y(m,o){if(m===null||m.source===void 0)s.add(o);else{var l=t?ls.join(t,m.source):m.source;s.add(new Pe(m.originalLine,m.originalColumn,l,o,m.name))}}};Pe.prototype.add=function(r){if(Array.isArray(r))r.forEach(function(e){this.add(e)},this);else if(r[Ut]||typeof r=="string")r&&this.children.push(r);else throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+r);return this};Pe.prototype.prepend=function(r){if(Array.isArray(r))for(var e=r.length-1;e>=0;e--)this.prepend(r[e]);else if(r[Ut]||typeof r=="string")this.children.unshift(r);else throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+r);return this};Pe.prototype.walk=function(r){for(var e,t=0,s=this.children.length;t<s;t++)e=this.children[t],e[Ut]?e.walk(r):e!==""&&r(e,{source:this.source,line:this.line,column:this.column,name:this.name})};Pe.prototype.join=function(r){var e,t,s=this.children.length;if(s>0){for(e=[],t=0;t<s-1;t++)e.push(this.children[t]),e.push(r);e.push(this.children[t]),this.children=e}return this};Pe.prototype.replaceRight=function(r,e){var t=this.children[this.children.length-1];return t[Ut]?t.replaceRight(r,e):typeof t=="string"?this.children[this.children.length-1]=t.replace(r,e):this.children.push("".replace(r,e)),this};Pe.prototype.setSourceContent=function(r,e){this.sourceContents[ls.toSetString(r)]=e};Pe.prototype.walkSourceContents=function(r){for(var e=0,t=this.children.length;e<t;e++)this.children[e][Ut]&&this.children[e].walkSourceContents(r);for(var s=Object.keys(this.sourceContents),e=0,t=s.length;e<t;e++)r(ls.fromSetString(s[e]),this.sourceContents[s[e]])};Pe.prototype.toString=function(){var r="";return this.walk(function(e){r+=e}),r};Pe.prototype.toStringWithSourceMap=function(r){var e={code:"",line:1,column:0},t=new uf(r),s=!1,a=null,n=null,u=null,c=null;return this.walk(function(f,h){e.code+=f,h.source!==null&&h.line!==null&&h.column!==null?((a!==h.source||n!==h.line||u!==h.column||c!==h.name)&&t.addMapping({source:h.source,original:{line:h.line,column:h.column},generated:{line:e.line,column:e.column},name:h.name}),a=h.source,n=h.line,u=h.column,c=h.name,s=!0):s&&(t.addMapping({generated:{line:e.line,column:e.column}}),a=null,s=!1);for(var y=0,m=f.length;y<m;y++)f.charCodeAt(y)===cf?(e.line++,e.column=0,y+1===m?(a=null,s=!1):s&&t.addMapping({source:h.source,original:{line:h.line,column:h.column},generated:{line:e.line,column:e.column},name:h.name})):e.column++}),this.walkSourceContents(function(f,h){t.setSourceContent(f,h)}),{code:e.code,map:t}};Tu.SourceNode=Pe});var sa=O(cs=>{cs.SourceMapGenerator=Qi().SourceMapGenerator;cs.SourceMapConsumer=Au().SourceMapConsumer;cs.SourceNode=Cu().SourceNode});var _e=O(ae=>{"use strict";Object.defineProperty(ae,"__esModule",{value:!0});ae.isTrailingCommaEnabled=ae.getParentExportDeclaration=ae.isExportDeclaration=ae.fixFaultyLocations=ae.getTrueLoc=ae.composeSourceMaps=ae.copyPos=ae.comparePos=ae.getUnionOfKeys=ae.getOption=ae.isBrowser=ae.getLineTerminator=void 0;var aa=(X(),V(J)),mr=aa.__importDefault(Ge()),hf=aa.__importStar(He()),hs=hf.namedTypes,Du=aa.__importDefault(sa()),Pu=Du.default.SourceMapConsumer,pf=Du.default.SourceMapGenerator,wu=Object.prototype.hasOwnProperty;function ff(){return ku()?`
2
+ `:require("os").EOL||`
3
+ `}ae.getLineTerminator=ff;function ku(){return typeof window<"u"&&typeof window.document<"u"}ae.isBrowser=ku;function df(i,r,e){return i&&wu.call(i,r)?i[r]:e}ae.getOption=df;function mf(){for(var i=[],r=0;r<arguments.length;r++)i[r]=arguments[r];for(var e={},t=i.length,s=0;s<t;++s)for(var a=Object.keys(i[s]),n=a.length,u=0;u<n;++u)e[a[u]]=!0;return e}ae.getUnionOfKeys=mf;function Ue(i,r){return i.line-r.line||i.column-r.column}ae.comparePos=Ue;function ut(i){return{line:i.line,column:i.column}}ae.copyPos=ut;function yf(i,r){if(i){if(!r)return i}else return r||null;var e=new Pu(i),t=new Pu(r),s=new pf({file:r.file,sourceRoot:r.sourceRoot}),a={};return t.eachMapping(function(n){var u=e.originalPositionFor({line:n.originalLine,column:n.originalColumn}),c=u.source;if(c!==null){s.addMapping({source:c,original:ut(u),generated:{line:n.generatedLine,column:n.generatedColumn},name:n.name});var f=e.sourceContentFor(c);f&&!wu.call(a,c)&&(a[c]=f,s.setSourceContent(c,f))}}),s.toJSON()}ae.composeSourceMaps=yf;function xf(i,r){if(!i.loc)return null;var e={start:i.loc.start,end:i.loc.end};function t(s){ia(e,s.loc)}return i.declaration&&i.declaration.decorators&&ps(i)&&i.declaration.decorators.forEach(t),Ue(e.start,e.end)<0&&(e.start=ut(e.start),r.skipSpaces(e.start,!1,!0),Ue(e.start,e.end)<0&&(e.end=ut(e.end),r.skipSpaces(e.end,!0,!0))),i.comments&&i.comments.forEach(t),e}ae.getTrueLoc=xf;function ia(i,r){i&&r&&(Ue(r.start,i.start)<0&&(i.start=r.start),Ue(i.end,r.end)<0&&(i.end=r.end))}function gf(i,r){var e=i.loc;if(e&&(e.start.line<1&&(e.start.line=1),e.end.line<1&&(e.end.line=1)),i.type==="File"&&(e.start=r.firstPos(),e.end=r.lastPos()),vf(i,r),bf(i,r),e&&i.decorators)i.decorators.forEach(function(n){ia(e,n.loc)});else if(i.declaration&&ps(i)){i.declaration.loc=null;var t=i.declaration.decorators;t&&t.forEach(function(n){ia(e,n.loc)})}else if(hs.MethodDefinition&&hs.MethodDefinition.check(i)||hs.Property.check(i)&&(i.method||i.shorthand))i.value.loc=null,hs.FunctionExpression.check(i.value)&&(i.value.id=null);else if(i.type==="ObjectTypeProperty"){var s=i.loc,a=s&&s.end;a&&(a=ut(a),r.prevPos(a)&&r.charAt(a)===","&&(a=r.skipSpaces(a,!0,!0))&&(s.end=a))}}ae.fixFaultyLocations=gf;function vf(i,r){if(i.type!=="ForStatement")return;function e(t){for(var s=t&&t.loc,a=s&&s.start,n=s&&ut(s.end);a&&n&&Ue(a,n)<0&&(r.prevPos(n),r.charAt(n)===";");)s.end.line=n.line,s.end.column=n.column}e(i.init),e(i.test),e(i.update)}function bf(i,r){if(i.type==="TemplateLiteral"&&i.quasis.length!==0){if(i.loc){var e=ut(i.loc.start);(0,mr.default)(r.charAt(e)==="`"),(0,mr.default)(r.nextPos(e));var t=i.quasis[0];Ue(t.loc.start,e)<0&&(t.loc.start=e);var s=ut(i.loc.end);(0,mr.default)(r.prevPos(s)),(0,mr.default)(r.charAt(s)==="`");var a=i.quasis[i.quasis.length-1];Ue(s,a.loc.end)<0&&(a.loc.end=s)}i.expressions.forEach(function(n,u){var c=r.skipSpaces(n.loc.start,!0,!1);if(r.prevPos(c)&&r.charAt(c)==="{"&&r.prevPos(c)&&r.charAt(c)==="$"){var f=i.quasis[u];Ue(c,f.loc.end)<0&&(f.loc.end=c)}var h=r.skipSpaces(n.loc.end,!1,!1);if(r.charAt(h)==="}"){(0,mr.default)(r.nextPos(h));var y=i.quasis[u+1];Ue(y.loc.start,h)<0&&(y.loc.start=h)}})}}function ps(i){if(i)switch(i.type){case"ExportDeclaration":case"ExportDefaultDeclaration":case"ExportDefaultSpecifier":case"DeclareExportDeclaration":case"ExportNamedDeclaration":case"ExportAllDeclaration":return!0}return!1}ae.isExportDeclaration=ps;function Sf(i){var r=i.getParentNode();return i.getName()==="declaration"&&ps(r)?r:null}ae.getParentExportDeclaration=Sf;function Ef(i,r){var e=i.trailingComma;return typeof e=="object"?!!e[r]:!!e}ae.isTrailingCommaEnabled=Ef});var oa=O((yr,na)=>{(function(r,e){typeof yr=="object"&&typeof na=="object"?na.exports=e():typeof define=="function"&&define.amd?define([],e):typeof yr=="object"?yr.esprima=e():r.esprima=e()})(yr,function(){return function(i){var r={};function e(t){if(r[t])return r[t].exports;var s=r[t]={exports:{},id:t,loaded:!1};return i[t].call(s.exports,s,s.exports,e),s.loaded=!0,s.exports}return e.m=i,e.c=r,e.p="",e(0)}([function(i,r,e){"use strict";Object.defineProperty(r,"__esModule",{value:!0});var t=e(1),s=e(3),a=e(8),n=e(15);function u(m,o,l){var p=null,d=function(L,q){l&&l(L,q),p&&p.visit(L,q)},x=typeof l=="function"?d:null,g=!1;if(o){g=typeof o.comment=="boolean"&&o.comment;var E=typeof o.attachComment=="boolean"&&o.attachComment;(g||E)&&(p=new t.CommentHandler,p.attach=E,o.comment=!0,x=d)}var b=!1;o&&typeof o.sourceType=="string"&&(b=o.sourceType==="module");var A;o&&typeof o.jsx=="boolean"&&o.jsx?A=new s.JSXParser(m,o,x):A=new a.Parser(m,o,x);var T=b?A.parseModule():A.parseScript(),D=T;return g&&p&&(D.comments=p.comments),A.config.tokens&&(D.tokens=A.tokens),A.config.tolerant&&(D.errors=A.errorHandler.errors),D}r.parse=u;function c(m,o,l){var p=o||{};return p.sourceType="module",u(m,p,l)}r.parseModule=c;function f(m,o,l){var p=o||{};return p.sourceType="script",u(m,p,l)}r.parseScript=f;function h(m,o,l){var p=new n.Tokenizer(m,o),d;d=[];try{for(;;){var x=p.getNextToken();if(!x)break;l&&(x=l(x)),d.push(x)}}catch(g){p.errorHandler.tolerate(g)}return p.errorHandler.tolerant&&(d.errors=p.errors()),d}r.tokenize=h;var y=e(2);r.Syntax=y.Syntax,r.version="4.0.1"},function(i,r,e){"use strict";Object.defineProperty(r,"__esModule",{value:!0});var t=e(2),s=function(){function a(){this.attach=!1,this.comments=[],this.stack=[],this.leading=[],this.trailing=[]}return a.prototype.insertInnerComments=function(n,u){if(n.type===t.Syntax.BlockStatement&&n.body.length===0){for(var c=[],f=this.leading.length-1;f>=0;--f){var h=this.leading[f];u.end.offset>=h.start&&(c.unshift(h.comment),this.leading.splice(f,1),this.trailing.splice(f,1))}c.length&&(n.innerComments=c)}},a.prototype.findTrailingComments=function(n){var u=[];if(this.trailing.length>0){for(var c=this.trailing.length-1;c>=0;--c){var f=this.trailing[c];f.start>=n.end.offset&&u.unshift(f.comment)}return this.trailing.length=0,u}var h=this.stack[this.stack.length-1];if(h&&h.node.trailingComments){var y=h.node.trailingComments[0];y&&y.range[0]>=n.end.offset&&(u=h.node.trailingComments,delete h.node.trailingComments)}return u},a.prototype.findLeadingComments=function(n){for(var u=[],c;this.stack.length>0;){var f=this.stack[this.stack.length-1];if(f&&f.start>=n.start.offset)c=f.node,this.stack.pop();else break}if(c){for(var h=c.leadingComments?c.leadingComments.length:0,y=h-1;y>=0;--y){var m=c.leadingComments[y];m.range[1]<=n.start.offset&&(u.unshift(m),c.leadingComments.splice(y,1))}return c.leadingComments&&c.leadingComments.length===0&&delete c.leadingComments,u}for(var y=this.leading.length-1;y>=0;--y){var f=this.leading[y];f.start<=n.start.offset&&(u.unshift(f.comment),this.leading.splice(y,1))}return u},a.prototype.visitNode=function(n,u){if(!(n.type===t.Syntax.Program&&n.body.length>0)){this.insertInnerComments(n,u);var c=this.findTrailingComments(u),f=this.findLeadingComments(u);f.length>0&&(n.leadingComments=f),c.length>0&&(n.trailingComments=c),this.stack.push({node:n,start:u.start.offset})}},a.prototype.visitComment=function(n,u){var c=n.type[0]==="L"?"Line":"Block",f={type:c,value:n.value};if(n.range&&(f.range=n.range),n.loc&&(f.loc=n.loc),this.comments.push(f),this.attach){var h={comment:{type:c,value:n.value,range:[u.start.offset,u.end.offset]},start:u.start.offset};n.loc&&(h.comment.loc=n.loc),n.type=c,this.leading.push(h),this.trailing.push(h)}},a.prototype.visit=function(n,u){n.type==="LineComment"?this.visitComment(n,u):n.type==="BlockComment"?this.visitComment(n,u):this.attach&&this.visitNode(n,u)},a}();r.CommentHandler=s},function(i,r){"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.Syntax={AssignmentExpression:"AssignmentExpression",AssignmentPattern:"AssignmentPattern",ArrayExpression:"ArrayExpression",ArrayPattern:"ArrayPattern",ArrowFunctionExpression:"ArrowFunctionExpression",AwaitExpression:"AwaitExpression",BlockStatement:"BlockStatement",BinaryExpression:"BinaryExpression",BreakStatement:"BreakStatement",CallExpression:"CallExpression",CatchClause:"CatchClause",ClassBody:"ClassBody",ClassDeclaration:"ClassDeclaration",ClassExpression:"ClassExpression",ConditionalExpression:"ConditionalExpression",ContinueStatement:"ContinueStatement",DoWhileStatement:"DoWhileStatement",DebuggerStatement:"DebuggerStatement",EmptyStatement:"EmptyStatement",ExportAllDeclaration:"ExportAllDeclaration",ExportDefaultDeclaration:"ExportDefaultDeclaration",ExportNamedDeclaration:"ExportNamedDeclaration",ExportSpecifier:"ExportSpecifier",ExpressionStatement:"ExpressionStatement",ForStatement:"ForStatement",ForOfStatement:"ForOfStatement",ForInStatement:"ForInStatement",FunctionDeclaration:"FunctionDeclaration",FunctionExpression:"FunctionExpression",Identifier:"Identifier",IfStatement:"IfStatement",ImportDeclaration:"ImportDeclaration",ImportDefaultSpecifier:"ImportDefaultSpecifier",ImportNamespaceSpecifier:"ImportNamespaceSpecifier",ImportSpecifier:"ImportSpecifier",Literal:"Literal",LabeledStatement:"LabeledStatement",LogicalExpression:"LogicalExpression",MemberExpression:"MemberExpression",MetaProperty:"MetaProperty",MethodDefinition:"MethodDefinition",NewExpression:"NewExpression",ObjectExpression:"ObjectExpression",ObjectPattern:"ObjectPattern",Program:"Program",Property:"Property",RestElement:"RestElement",ReturnStatement:"ReturnStatement",SequenceExpression:"SequenceExpression",SpreadElement:"SpreadElement",Super:"Super",SwitchCase:"SwitchCase",SwitchStatement:"SwitchStatement",TaggedTemplateExpression:"TaggedTemplateExpression",TemplateElement:"TemplateElement",TemplateLiteral:"TemplateLiteral",ThisExpression:"ThisExpression",ThrowStatement:"ThrowStatement",TryStatement:"TryStatement",UnaryExpression:"UnaryExpression",UpdateExpression:"UpdateExpression",VariableDeclaration:"VariableDeclaration",VariableDeclarator:"VariableDeclarator",WhileStatement:"WhileStatement",WithStatement:"WithStatement",YieldExpression:"YieldExpression"}},function(i,r,e){"use strict";var t=this&&this.__extends||function(){var o=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(l,p){l.__proto__=p}||function(l,p){for(var d in p)p.hasOwnProperty(d)&&(l[d]=p[d])};return function(l,p){o(l,p);function d(){this.constructor=l}l.prototype=p===null?Object.create(p):(d.prototype=p.prototype,new d)}}();Object.defineProperty(r,"__esModule",{value:!0});var s=e(4),a=e(5),n=e(6),u=e(7),c=e(8),f=e(13),h=e(14);f.TokenName[100]="JSXIdentifier",f.TokenName[101]="JSXText";function y(o){var l;switch(o.type){case n.JSXSyntax.JSXIdentifier:var p=o;l=p.name;break;case n.JSXSyntax.JSXNamespacedName:var d=o;l=y(d.namespace)+":"+y(d.name);break;case n.JSXSyntax.JSXMemberExpression:var x=o;l=y(x.object)+"."+y(x.property);break;default:break}return l}var m=function(o){t(l,o);function l(p,d,x){return o.call(this,p,d,x)||this}return l.prototype.parsePrimaryExpression=function(){return this.match("<")?this.parseJSXRoot():o.prototype.parsePrimaryExpression.call(this)},l.prototype.startJSX=function(){this.scanner.index=this.startMarker.index,this.scanner.lineNumber=this.startMarker.line,this.scanner.lineStart=this.startMarker.index-this.startMarker.column},l.prototype.finishJSX=function(){this.nextToken()},l.prototype.reenterJSX=function(){this.startJSX(),this.expectJSX("}"),this.config.tokens&&this.tokens.pop()},l.prototype.createJSXNode=function(){return this.collectComments(),{index:this.scanner.index,line:this.scanner.lineNumber,column:this.scanner.index-this.scanner.lineStart}},l.prototype.createJSXChildNode=function(){return{index:this.scanner.index,line:this.scanner.lineNumber,column:this.scanner.index-this.scanner.lineStart}},l.prototype.scanXHTMLEntity=function(p){for(var d="&",x=!0,g=!1,E=!1,b=!1;!this.scanner.eof()&&x&&!g;){var A=this.scanner.source[this.scanner.index];if(A===p)break;if(g=A===";",d+=A,++this.scanner.index,!g)switch(d.length){case 2:E=A==="#";break;case 3:E&&(b=A==="x",x=b||s.Character.isDecimalDigit(A.charCodeAt(0)),E=E&&!b);break;default:x=x&&!(E&&!s.Character.isDecimalDigit(A.charCodeAt(0))),x=x&&!(b&&!s.Character.isHexDigit(A.charCodeAt(0)));break}}if(x&&g&&d.length>2){var T=d.substr(1,d.length-2);E&&T.length>1?d=String.fromCharCode(parseInt(T.substr(1),10)):b&&T.length>2?d=String.fromCharCode(parseInt("0"+T.substr(1),16)):!E&&!b&&h.XHTMLEntities[T]&&(d=h.XHTMLEntities[T])}return d},l.prototype.lexJSX=function(){var p=this.scanner.source.charCodeAt(this.scanner.index);if(p===60||p===62||p===47||p===58||p===61||p===123||p===125){var d=this.scanner.source[this.scanner.index++];return{type:7,value:d,lineNumber:this.scanner.lineNumber,lineStart:this.scanner.lineStart,start:this.scanner.index-1,end:this.scanner.index}}if(p===34||p===39){for(var x=this.scanner.index,g=this.scanner.source[this.scanner.index++],E="";!this.scanner.eof();){var b=this.scanner.source[this.scanner.index++];if(b===g)break;b==="&"?E+=this.scanXHTMLEntity(g):E+=b}return{type:8,value:E,lineNumber:this.scanner.lineNumber,lineStart:this.scanner.lineStart,start:x,end:this.scanner.index}}if(p===46){var A=this.scanner.source.charCodeAt(this.scanner.index+1),T=this.scanner.source.charCodeAt(this.scanner.index+2),d=A===46&&T===46?"...":".",x=this.scanner.index;return this.scanner.index+=d.length,{type:7,value:d,lineNumber:this.scanner.lineNumber,lineStart:this.scanner.lineStart,start:x,end:this.scanner.index}}if(p===96)return{type:10,value:"",lineNumber:this.scanner.lineNumber,lineStart:this.scanner.lineStart,start:this.scanner.index,end:this.scanner.index};if(s.Character.isIdentifierStart(p)&&p!==92){var x=this.scanner.index;for(++this.scanner.index;!this.scanner.eof();){var b=this.scanner.source.charCodeAt(this.scanner.index);if(s.Character.isIdentifierPart(b)&&b!==92)++this.scanner.index;else if(b===45)++this.scanner.index;else break}var D=this.scanner.source.slice(x,this.scanner.index);return{type:100,value:D,lineNumber:this.scanner.lineNumber,lineStart:this.scanner.lineStart,start:x,end:this.scanner.index}}return this.scanner.lex()},l.prototype.nextJSXToken=function(){this.collectComments(),this.startMarker.index=this.scanner.index,this.startMarker.line=this.scanner.lineNumber,this.startMarker.column=this.scanner.index-this.scanner.lineStart;var p=this.lexJSX();return this.lastMarker.index=this.scanner.index,this.lastMarker.line=this.scanner.lineNumber,this.lastMarker.column=this.scanner.index-this.scanner.lineStart,this.config.tokens&&this.tokens.push(this.convertToken(p)),p},l.prototype.nextJSXText=function(){this.startMarker.index=this.scanner.index,this.startMarker.line=this.scanner.lineNumber,this.startMarker.column=this.scanner.index-this.scanner.lineStart;for(var p=this.scanner.index,d="";!this.scanner.eof();){var x=this.scanner.source[this.scanner.index];if(x==="{"||x==="<")break;++this.scanner.index,d+=x,s.Character.isLineTerminator(x.charCodeAt(0))&&(++this.scanner.lineNumber,x==="\r"&&this.scanner.source[this.scanner.index]===`
4
+ `&&++this.scanner.index,this.scanner.lineStart=this.scanner.index)}this.lastMarker.index=this.scanner.index,this.lastMarker.line=this.scanner.lineNumber,this.lastMarker.column=this.scanner.index-this.scanner.lineStart;var g={type:101,value:d,lineNumber:this.scanner.lineNumber,lineStart:this.scanner.lineStart,start:p,end:this.scanner.index};return d.length>0&&this.config.tokens&&this.tokens.push(this.convertToken(g)),g},l.prototype.peekJSXToken=function(){var p=this.scanner.saveState();this.scanner.scanComments();var d=this.lexJSX();return this.scanner.restoreState(p),d},l.prototype.expectJSX=function(p){var d=this.nextJSXToken();(d.type!==7||d.value!==p)&&this.throwUnexpectedToken(d)},l.prototype.matchJSX=function(p){var d=this.peekJSXToken();return d.type===7&&d.value===p},l.prototype.parseJSXIdentifier=function(){var p=this.createJSXNode(),d=this.nextJSXToken();return d.type!==100&&this.throwUnexpectedToken(d),this.finalize(p,new a.JSXIdentifier(d.value))},l.prototype.parseJSXElementName=function(){var p=this.createJSXNode(),d=this.parseJSXIdentifier();if(this.matchJSX(":")){var x=d;this.expectJSX(":");var g=this.parseJSXIdentifier();d=this.finalize(p,new a.JSXNamespacedName(x,g))}else if(this.matchJSX("."))for(;this.matchJSX(".");){var E=d;this.expectJSX(".");var b=this.parseJSXIdentifier();d=this.finalize(p,new a.JSXMemberExpression(E,b))}return d},l.prototype.parseJSXAttributeName=function(){var p=this.createJSXNode(),d,x=this.parseJSXIdentifier();if(this.matchJSX(":")){var g=x;this.expectJSX(":");var E=this.parseJSXIdentifier();d=this.finalize(p,new a.JSXNamespacedName(g,E))}else d=x;return d},l.prototype.parseJSXStringLiteralAttribute=function(){var p=this.createJSXNode(),d=this.nextJSXToken();d.type!==8&&this.throwUnexpectedToken(d);var x=this.getTokenRaw(d);return this.finalize(p,new u.Literal(d.value,x))},l.prototype.parseJSXExpressionAttribute=function(){var p=this.createJSXNode();this.expectJSX("{"),this.finishJSX(),this.match("}")&&this.tolerateError("JSX attributes must only be assigned a non-empty expression");var d=this.parseAssignmentExpression();return this.reenterJSX(),this.finalize(p,new a.JSXExpressionContainer(d))},l.prototype.parseJSXAttributeValue=function(){return this.matchJSX("{")?this.parseJSXExpressionAttribute():this.matchJSX("<")?this.parseJSXElement():this.parseJSXStringLiteralAttribute()},l.prototype.parseJSXNameValueAttribute=function(){var p=this.createJSXNode(),d=this.parseJSXAttributeName(),x=null;return this.matchJSX("=")&&(this.expectJSX("="),x=this.parseJSXAttributeValue()),this.finalize(p,new a.JSXAttribute(d,x))},l.prototype.parseJSXSpreadAttribute=function(){var p=this.createJSXNode();this.expectJSX("{"),this.expectJSX("..."),this.finishJSX();var d=this.parseAssignmentExpression();return this.reenterJSX(),this.finalize(p,new a.JSXSpreadAttribute(d))},l.prototype.parseJSXAttributes=function(){for(var p=[];!this.matchJSX("/")&&!this.matchJSX(">");){var d=this.matchJSX("{")?this.parseJSXSpreadAttribute():this.parseJSXNameValueAttribute();p.push(d)}return p},l.prototype.parseJSXOpeningElement=function(){var p=this.createJSXNode();this.expectJSX("<");var d=this.parseJSXElementName(),x=this.parseJSXAttributes(),g=this.matchJSX("/");return g&&this.expectJSX("/"),this.expectJSX(">"),this.finalize(p,new a.JSXOpeningElement(d,g,x))},l.prototype.parseJSXBoundaryElement=function(){var p=this.createJSXNode();if(this.expectJSX("<"),this.matchJSX("/")){this.expectJSX("/");var d=this.parseJSXElementName();return this.expectJSX(">"),this.finalize(p,new a.JSXClosingElement(d))}var x=this.parseJSXElementName(),g=this.parseJSXAttributes(),E=this.matchJSX("/");return E&&this.expectJSX("/"),this.expectJSX(">"),this.finalize(p,new a.JSXOpeningElement(x,E,g))},l.prototype.parseJSXEmptyExpression=function(){var p=this.createJSXChildNode();return this.collectComments(),this.lastMarker.index=this.scanner.index,this.lastMarker.line=this.scanner.lineNumber,this.lastMarker.column=this.scanner.index-this.scanner.lineStart,this.finalize(p,new a.JSXEmptyExpression)},l.prototype.parseJSXExpressionContainer=function(){var p=this.createJSXNode();this.expectJSX("{");var d;return this.matchJSX("}")?(d=this.parseJSXEmptyExpression(),this.expectJSX("}")):(this.finishJSX(),d=this.parseAssignmentExpression(),this.reenterJSX()),this.finalize(p,new a.JSXExpressionContainer(d))},l.prototype.parseJSXChildren=function(){for(var p=[];!this.scanner.eof();){var d=this.createJSXChildNode(),x=this.nextJSXText();if(x.start<x.end){var g=this.getTokenRaw(x),E=this.finalize(d,new a.JSXText(x.value,g));p.push(E)}if(this.scanner.source[this.scanner.index]==="{"){var b=this.parseJSXExpressionContainer();p.push(b)}else break}return p},l.prototype.parseComplexJSXElement=function(p){for(var d=[];!this.scanner.eof();){p.children=p.children.concat(this.parseJSXChildren());var x=this.createJSXChildNode(),g=this.parseJSXBoundaryElement();if(g.type===n.JSXSyntax.JSXOpeningElement){var E=g;if(E.selfClosing){var b=this.finalize(x,new a.JSXElement(E,[],null));p.children.push(b)}else d.push(p),p={node:x,opening:E,closing:null,children:[]}}if(g.type===n.JSXSyntax.JSXClosingElement){p.closing=g;var A=y(p.opening.name),T=y(p.closing.name);if(A!==T&&this.tolerateError("Expected corresponding JSX closing tag for %0",A),d.length>0){var b=this.finalize(p.node,new a.JSXElement(p.opening,p.children,p.closing));p=d[d.length-1],p.children.push(b),d.pop()}else break}}return p},l.prototype.parseJSXElement=function(){var p=this.createJSXNode(),d=this.parseJSXOpeningElement(),x=[],g=null;if(!d.selfClosing){var E=this.parseComplexJSXElement({node:p,opening:d,closing:g,children:x});x=E.children,g=E.closing}return this.finalize(p,new a.JSXElement(d,x,g))},l.prototype.parseJSXRoot=function(){this.config.tokens&&this.tokens.pop(),this.startJSX();var p=this.parseJSXElement();return this.finishJSX(),p},l.prototype.isStartOfExpression=function(){return o.prototype.isStartOfExpression.call(this)||this.match("<")},l}(c.Parser);r.JSXParser=m},function(i,r){"use strict";Object.defineProperty(r,"__esModule",{value:!0});var e={NonAsciiIdentifierStart:/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0-\u08B4\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AD\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF30-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC03-\uDC37\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDF00-\uDF19]|\uD806[\uDCA0-\uDCDF\uDCFF\uDEC0-\uDEF8]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50\uDF93-\uDF9F]|\uD82C[\uDC00\uDC01]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD83A[\uDC00-\uDCC4]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1]|\uD87E[\uDC00-\uDE1D]/,NonAsciiIdentifierPart:/[\xAA\xB5\xB7\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u08A0-\u08B4\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C81-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D01-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1369-\u1371\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19DA\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1CD0-\u1CD2\u1CD4-\u1CF6\u1CF8\u1CF9\u1D00-\u1DF5\u1DFC-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u200C\u200D\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AD\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C4\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDDFD\uDE80-\uDE9C\uDEA0-\uDED0\uDEE0\uDF00-\uDF1F\uDF30-\uDF4A\uDF50-\uDF7A\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00-\uDE03\uDE05\uDE06\uDE0C-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE38-\uDE3A\uDE3F\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE6\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC00-\uDC46\uDC66-\uDC6F\uDC7F-\uDCBA\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD00-\uDD34\uDD36-\uDD3F\uDD50-\uDD73\uDD76\uDD80-\uDDC4\uDDCA-\uDDCC\uDDD0-\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE37\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEEA\uDEF0-\uDEF9\uDF00-\uDF03\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3C-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF50\uDF57\uDF5D-\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC80-\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDB5\uDDB8-\uDDC0\uDDD8-\uDDDD\uDE00-\uDE40\uDE44\uDE50-\uDE59\uDE80-\uDEB7\uDEC0-\uDEC9\uDF00-\uDF19\uDF1D-\uDF2B\uDF30-\uDF39]|\uD806[\uDCA0-\uDCE9\uDCFF\uDEC0-\uDEF8]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDED0-\uDEED\uDEF0-\uDEF4\uDF00-\uDF36\uDF40-\uDF43\uDF50-\uDF59\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50-\uDF7E\uDF8F-\uDF9F]|\uD82C[\uDC00\uDC01]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE9B-\uDE9F\uDEA1-\uDEAF]|\uD83A[\uDC00-\uDCC4\uDCD0-\uDCD6]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1]|\uD87E[\uDC00-\uDE1D]|\uDB40[\uDD00-\uDDEF]/};r.Character={fromCodePoint:function(t){return t<65536?String.fromCharCode(t):String.fromCharCode(55296+(t-65536>>10))+String.fromCharCode(56320+(t-65536&1023))},isWhiteSpace:function(t){return t===32||t===9||t===11||t===12||t===160||t>=5760&&[5760,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8239,8287,12288,65279].indexOf(t)>=0},isLineTerminator:function(t){return t===10||t===13||t===8232||t===8233},isIdentifierStart:function(t){return t===36||t===95||t>=65&&t<=90||t>=97&&t<=122||t===92||t>=128&&e.NonAsciiIdentifierStart.test(r.Character.fromCodePoint(t))},isIdentifierPart:function(t){return t===36||t===95||t>=65&&t<=90||t>=97&&t<=122||t>=48&&t<=57||t===92||t>=128&&e.NonAsciiIdentifierPart.test(r.Character.fromCodePoint(t))},isDecimalDigit:function(t){return t>=48&&t<=57},isHexDigit:function(t){return t>=48&&t<=57||t>=65&&t<=70||t>=97&&t<=102},isOctalDigit:function(t){return t>=48&&t<=55}}},function(i,r,e){"use strict";Object.defineProperty(r,"__esModule",{value:!0});var t=e(6),s=function(){function p(d){this.type=t.JSXSyntax.JSXClosingElement,this.name=d}return p}();r.JSXClosingElement=s;var a=function(){function p(d,x,g){this.type=t.JSXSyntax.JSXElement,this.openingElement=d,this.children=x,this.closingElement=g}return p}();r.JSXElement=a;var n=function(){function p(){this.type=t.JSXSyntax.JSXEmptyExpression}return p}();r.JSXEmptyExpression=n;var u=function(){function p(d){this.type=t.JSXSyntax.JSXExpressionContainer,this.expression=d}return p}();r.JSXExpressionContainer=u;var c=function(){function p(d){this.type=t.JSXSyntax.JSXIdentifier,this.name=d}return p}();r.JSXIdentifier=c;var f=function(){function p(d,x){this.type=t.JSXSyntax.JSXMemberExpression,this.object=d,this.property=x}return p}();r.JSXMemberExpression=f;var h=function(){function p(d,x){this.type=t.JSXSyntax.JSXAttribute,this.name=d,this.value=x}return p}();r.JSXAttribute=h;var y=function(){function p(d,x){this.type=t.JSXSyntax.JSXNamespacedName,this.namespace=d,this.name=x}return p}();r.JSXNamespacedName=y;var m=function(){function p(d,x,g){this.type=t.JSXSyntax.JSXOpeningElement,this.name=d,this.selfClosing=x,this.attributes=g}return p}();r.JSXOpeningElement=m;var o=function(){function p(d){this.type=t.JSXSyntax.JSXSpreadAttribute,this.argument=d}return p}();r.JSXSpreadAttribute=o;var l=function(){function p(d,x){this.type=t.JSXSyntax.JSXText,this.value=d,this.raw=x}return p}();r.JSXText=l},function(i,r){"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.JSXSyntax={JSXAttribute:"JSXAttribute",JSXClosingElement:"JSXClosingElement",JSXElement:"JSXElement",JSXEmptyExpression:"JSXEmptyExpression",JSXExpressionContainer:"JSXExpressionContainer",JSXIdentifier:"JSXIdentifier",JSXMemberExpression:"JSXMemberExpression",JSXNamespacedName:"JSXNamespacedName",JSXOpeningElement:"JSXOpeningElement",JSXSpreadAttribute:"JSXSpreadAttribute",JSXText:"JSXText"}},function(i,r,e){"use strict";Object.defineProperty(r,"__esModule",{value:!0});var t=e(2),s=function(){function C(P){this.type=t.Syntax.ArrayExpression,this.elements=P}return C}();r.ArrayExpression=s;var a=function(){function C(P){this.type=t.Syntax.ArrayPattern,this.elements=P}return C}();r.ArrayPattern=a;var n=function(){function C(P,w,z){this.type=t.Syntax.ArrowFunctionExpression,this.id=null,this.params=P,this.body=w,this.generator=!1,this.expression=z,this.async=!1}return C}();r.ArrowFunctionExpression=n;var u=function(){function C(P,w,z){this.type=t.Syntax.AssignmentExpression,this.operator=P,this.left=w,this.right=z}return C}();r.AssignmentExpression=u;var c=function(){function C(P,w){this.type=t.Syntax.AssignmentPattern,this.left=P,this.right=w}return C}();r.AssignmentPattern=c;var f=function(){function C(P,w,z){this.type=t.Syntax.ArrowFunctionExpression,this.id=null,this.params=P,this.body=w,this.generator=!1,this.expression=z,this.async=!0}return C}();r.AsyncArrowFunctionExpression=f;var h=function(){function C(P,w,z){this.type=t.Syntax.FunctionDeclaration,this.id=P,this.params=w,this.body=z,this.generator=!1,this.expression=!1,this.async=!0}return C}();r.AsyncFunctionDeclaration=h;var y=function(){function C(P,w,z){this.type=t.Syntax.FunctionExpression,this.id=P,this.params=w,this.body=z,this.generator=!1,this.expression=!1,this.async=!0}return C}();r.AsyncFunctionExpression=y;var m=function(){function C(P){this.type=t.Syntax.AwaitExpression,this.argument=P}return C}();r.AwaitExpression=m;var o=function(){function C(P,w,z){var Ce=P==="||"||P==="&&";this.type=Ce?t.Syntax.LogicalExpression:t.Syntax.BinaryExpression,this.operator=P,this.left=w,this.right=z}return C}();r.BinaryExpression=o;var l=function(){function C(P){this.type=t.Syntax.BlockStatement,this.body=P}return C}();r.BlockStatement=l;var p=function(){function C(P){this.type=t.Syntax.BreakStatement,this.label=P}return C}();r.BreakStatement=p;var d=function(){function C(P,w){this.type=t.Syntax.CallExpression,this.callee=P,this.arguments=w}return C}();r.CallExpression=d;var x=function(){function C(P,w){this.type=t.Syntax.CatchClause,this.param=P,this.body=w}return C}();r.CatchClause=x;var g=function(){function C(P){this.type=t.Syntax.ClassBody,this.body=P}return C}();r.ClassBody=g;var E=function(){function C(P,w,z){this.type=t.Syntax.ClassDeclaration,this.id=P,this.superClass=w,this.body=z}return C}();r.ClassDeclaration=E;var b=function(){function C(P,w,z){this.type=t.Syntax.ClassExpression,this.id=P,this.superClass=w,this.body=z}return C}();r.ClassExpression=b;var A=function(){function C(P,w){this.type=t.Syntax.MemberExpression,this.computed=!0,this.object=P,this.property=w}return C}();r.ComputedMemberExpression=A;var T=function(){function C(P,w,z){this.type=t.Syntax.ConditionalExpression,this.test=P,this.consequent=w,this.alternate=z}return C}();r.ConditionalExpression=T;var D=function(){function C(P){this.type=t.Syntax.ContinueStatement,this.label=P}return C}();r.ContinueStatement=D;var L=function(){function C(){this.type=t.Syntax.DebuggerStatement}return C}();r.DebuggerStatement=L;var q=function(){function C(P,w){this.type=t.Syntax.ExpressionStatement,this.expression=P,this.directive=w}return C}();r.Directive=q;var ee=function(){function C(P,w){this.type=t.Syntax.DoWhileStatement,this.body=P,this.test=w}return C}();r.DoWhileStatement=ee;var he=function(){function C(){this.type=t.Syntax.EmptyStatement}return C}();r.EmptyStatement=he;var xe=function(){function C(P){this.type=t.Syntax.ExportAllDeclaration,this.source=P}return C}();r.ExportAllDeclaration=xe;var Ke=function(){function C(P){this.type=t.Syntax.ExportDefaultDeclaration,this.declaration=P}return C}();r.ExportDefaultDeclaration=Ke;var dt=function(){function C(P,w,z){this.type=t.Syntax.ExportNamedDeclaration,this.declaration=P,this.specifiers=w,this.source=z}return C}();r.ExportNamedDeclaration=dt;var it=function(){function C(P,w){this.type=t.Syntax.ExportSpecifier,this.exported=w,this.local=P}return C}();r.ExportSpecifier=it;var at=function(){function C(P){this.type=t.Syntax.ExpressionStatement,this.expression=P}return C}();r.ExpressionStatement=at;var kt=function(){function C(P,w,z){this.type=t.Syntax.ForInStatement,this.left=P,this.right=w,this.body=z,this.each=!1}return C}();r.ForInStatement=kt;var nt=function(){function C(P,w,z){this.type=t.Syntax.ForOfStatement,this.left=P,this.right=w,this.body=z}return C}();r.ForOfStatement=nt;var ir=function(){function C(P,w,z,Ce){this.type=t.Syntax.ForStatement,this.init=P,this.test=w,this.update=z,this.body=Ce}return C}();r.ForStatement=ir;var k=function(){function C(P,w,z,Ce){this.type=t.Syntax.FunctionDeclaration,this.id=P,this.params=w,this.body=z,this.generator=Ce,this.expression=!1,this.async=!1}return C}();r.FunctionDeclaration=k;var F=function(){function C(P,w,z,Ce){this.type=t.Syntax.FunctionExpression,this.id=P,this.params=w,this.body=z,this.generator=Ce,this.expression=!1,this.async=!1}return C}();r.FunctionExpression=F;var N=function(){function C(P){this.type=t.Syntax.Identifier,this.name=P}return C}();r.Identifier=N;var R=function(){function C(P,w,z){this.type=t.Syntax.IfStatement,this.test=P,this.consequent=w,this.alternate=z}return C}();r.IfStatement=R;var G=function(){function C(P,w){this.type=t.Syntax.ImportDeclaration,this.specifiers=P,this.source=w}return C}();r.ImportDeclaration=G;var Y=function(){function C(P){this.type=t.Syntax.ImportDefaultSpecifier,this.local=P}return C}();r.ImportDefaultSpecifier=Y;var de=function(){function C(P){this.type=t.Syntax.ImportNamespaceSpecifier,this.local=P}return C}();r.ImportNamespaceSpecifier=de;var se=function(){function C(P,w){this.type=t.Syntax.ImportSpecifier,this.local=P,this.imported=w}return C}();r.ImportSpecifier=se;var ie=function(){function C(P,w){this.type=t.Syntax.LabeledStatement,this.label=P,this.body=w}return C}();r.LabeledStatement=ie;var De=function(){function C(P,w){this.type=t.Syntax.Literal,this.value=P,this.raw=w}return C}();r.Literal=De;var Me=function(){function C(P,w){this.type=t.Syntax.MetaProperty,this.meta=P,this.property=w}return C}();r.MetaProperty=Me;var Te=function(){function C(P,w,z,Ce,Vs){this.type=t.Syntax.MethodDefinition,this.key=P,this.computed=w,this.value=z,this.kind=Ce,this.static=Vs}return C}();r.MethodDefinition=Te;var be=function(){function C(P){this.type=t.Syntax.Program,this.body=P,this.sourceType="module"}return C}();r.Module=be;var ot=function(){function C(P,w){this.type=t.Syntax.NewExpression,this.callee=P,this.arguments=w}return C}();r.NewExpression=ot;var We=function(){function C(P){this.type=t.Syntax.ObjectExpression,this.properties=P}return C}();r.ObjectExpression=We;var It=function(){function C(P){this.type=t.Syntax.ObjectPattern,this.properties=P}return C}();r.ObjectPattern=It;var Nt=function(){function C(P,w,z,Ce,Vs,rc){this.type=t.Syntax.Property,this.key=w,this.computed=z,this.value=Ce,this.kind=P,this.method=Vs,this.shorthand=rc}return C}();r.Property=Nt;var qr=function(){function C(P,w,z,Ce){this.type=t.Syntax.Literal,this.value=P,this.raw=w,this.regex={pattern:z,flags:Ce}}return C}();r.RegexLiteral=qr;var mt=function(){function C(P){this.type=t.Syntax.RestElement,this.argument=P}return C}();r.RestElement=mt;var Be=function(){function C(P){this.type=t.Syntax.ReturnStatement,this.argument=P}return C}();r.ReturnStatement=Be;var zr=function(){function C(P){this.type=t.Syntax.Program,this.body=P,this.sourceType="script"}return C}();r.Script=zr;var Us=function(){function C(P){this.type=t.Syntax.SequenceExpression,this.expressions=P}return C}();r.SequenceExpression=Us;var Jr=function(){function C(P){this.type=t.Syntax.SpreadElement,this.argument=P}return C}();r.SpreadElement=Jr;var Xr=function(){function C(P,w){this.type=t.Syntax.MemberExpression,this.computed=!1,this.object=P,this.property=w}return C}();r.StaticMemberExpression=Xr;var Vr=function(){function C(){this.type=t.Syntax.Super}return C}();r.Super=Vr;var Kr=function(){function C(P,w){this.type=t.Syntax.SwitchCase,this.test=P,this.consequent=w}return C}();r.SwitchCase=Kr;var qs=function(){function C(P,w){this.type=t.Syntax.SwitchStatement,this.discriminant=P,this.cases=w}return C}();r.SwitchStatement=qs;var zs=function(){function C(P,w){this.type=t.Syntax.TaggedTemplateExpression,this.tag=P,this.quasi=w}return C}();r.TaggedTemplateExpression=zs;var Wr=function(){function C(P,w){this.type=t.Syntax.TemplateElement,this.value=P,this.tail=w}return C}();r.TemplateElement=Wr;var Js=function(){function C(P,w){this.type=t.Syntax.TemplateLiteral,this.quasis=P,this.expressions=w}return C}();r.TemplateLiteral=Js;var Xs=function(){function C(){this.type=t.Syntax.ThisExpression}return C}();r.ThisExpression=Xs;var Hr=function(){function C(P){this.type=t.Syntax.ThrowStatement,this.argument=P}return C}();r.ThrowStatement=Hr;var U=function(){function C(P,w,z){this.type=t.Syntax.TryStatement,this.block=P,this.handler=w,this.finalizer=z}return C}();r.TryStatement=U;var $=function(){function C(P,w){this.type=t.Syntax.UnaryExpression,this.operator=P,this.argument=w,this.prefix=!0}return C}();r.UnaryExpression=$;var we=function(){function C(P,w,z){this.type=t.Syntax.UpdateExpression,this.operator=P,this.argument=w,this.prefix=z}return C}();r.UpdateExpression=we;var Le=function(){function C(P,w){this.type=t.Syntax.VariableDeclaration,this.declarations=P,this.kind=w}return C}();r.VariableDeclaration=Le;var ar=function(){function C(P,w){this.type=t.Syntax.VariableDeclarator,this.id=P,this.init=w}return C}();r.VariableDeclarator=ar;var Zl=function(){function C(P,w){this.type=t.Syntax.WhileStatement,this.test=P,this.body=w}return C}();r.WhileStatement=Zl;var ec=function(){function C(P,w){this.type=t.Syntax.WithStatement,this.object=P,this.body=w}return C}();r.WithStatement=ec;var tc=function(){function C(P,w){this.type=t.Syntax.YieldExpression,this.argument=P,this.delegate=w}return C}();r.YieldExpression=tc},function(i,r,e){"use strict";Object.defineProperty(r,"__esModule",{value:!0});var t=e(9),s=e(10),a=e(11),n=e(7),u=e(12),c=e(2),f=e(13),h="ArrowParameterPlaceHolder",y=function(){function m(o,l,p){l===void 0&&(l={}),this.config={range:typeof l.range=="boolean"&&l.range,loc:typeof l.loc=="boolean"&&l.loc,source:null,tokens:typeof l.tokens=="boolean"&&l.tokens,comment:typeof l.comment=="boolean"&&l.comment,tolerant:typeof l.tolerant=="boolean"&&l.tolerant},this.config.loc&&l.source&&l.source!==null&&(this.config.source=String(l.source)),this.delegate=p,this.errorHandler=new s.ErrorHandler,this.errorHandler.tolerant=this.config.tolerant,this.scanner=new u.Scanner(o,this.errorHandler),this.scanner.trackComment=this.config.comment,this.operatorPrecedence={")":0,";":0,",":0,"=":0,"]":0,"||":1,"&&":2,"|":3,"^":4,"&":5,"==":6,"!=":6,"===":6,"!==":6,"<":7,">":7,"<=":7,">=":7,"<<":8,">>":8,">>>":8,"+":9,"-":9,"*":11,"/":11,"%":11},this.lookahead={type:2,value:"",lineNumber:this.scanner.lineNumber,lineStart:0,start:0,end:0},this.hasLineTerminator=!1,this.context={isModule:!1,await:!1,allowIn:!0,allowStrictDirective:!0,allowYield:!0,firstCoverInitializedNameError:null,isAssignmentTarget:!1,isBindingElement:!1,inFunctionBody:!1,inIteration:!1,inSwitch:!1,labelSet:{},strict:!1},this.tokens=[],this.startMarker={index:0,line:this.scanner.lineNumber,column:0},this.lastMarker={index:0,line:this.scanner.lineNumber,column:0},this.nextToken(),this.lastMarker={index:this.scanner.index,line:this.scanner.lineNumber,column:this.scanner.index-this.scanner.lineStart}}return m.prototype.throwError=function(o){for(var l=[],p=1;p<arguments.length;p++)l[p-1]=arguments[p];var d=Array.prototype.slice.call(arguments,1),x=o.replace(/%(\d)/g,function(A,T){return t.assert(T<d.length,"Message reference must be in range"),d[T]}),g=this.lastMarker.index,E=this.lastMarker.line,b=this.lastMarker.column+1;throw this.errorHandler.createError(g,E,b,x)},m.prototype.tolerateError=function(o){for(var l=[],p=1;p<arguments.length;p++)l[p-1]=arguments[p];var d=Array.prototype.slice.call(arguments,1),x=o.replace(/%(\d)/g,function(A,T){return t.assert(T<d.length,"Message reference must be in range"),d[T]}),g=this.lastMarker.index,E=this.scanner.lineNumber,b=this.lastMarker.column+1;this.errorHandler.tolerateError(g,E,b,x)},m.prototype.unexpectedTokenError=function(o,l){var p=l||a.Messages.UnexpectedToken,d;if(o?(l||(p=o.type===2?a.Messages.UnexpectedEOS:o.type===3?a.Messages.UnexpectedIdentifier:o.type===6?a.Messages.UnexpectedNumber:o.type===8?a.Messages.UnexpectedString:o.type===10?a.Messages.UnexpectedTemplate:a.Messages.UnexpectedToken,o.type===4&&(this.scanner.isFutureReservedWord(o.value)?p=a.Messages.UnexpectedReserved:this.context.strict&&this.scanner.isStrictModeReservedWord(o.value)&&(p=a.Messages.StrictReservedWord))),d=o.value):d="ILLEGAL",p=p.replace("%0",d),o&&typeof o.lineNumber=="number"){var x=o.start,g=o.lineNumber,E=this.lastMarker.index-this.lastMarker.column,b=o.start-E+1;return this.errorHandler.createError(x,g,b,p)}else{var x=this.lastMarker.index,g=this.lastMarker.line,b=this.lastMarker.column+1;return this.errorHandler.createError(x,g,b,p)}},m.prototype.throwUnexpectedToken=function(o,l){throw this.unexpectedTokenError(o,l)},m.prototype.tolerateUnexpectedToken=function(o,l){this.errorHandler.tolerate(this.unexpectedTokenError(o,l))},m.prototype.collectComments=function(){if(!this.config.comment)this.scanner.scanComments();else{var o=this.scanner.scanComments();if(o.length>0&&this.delegate)for(var l=0;l<o.length;++l){var p=o[l],d=void 0;d={type:p.multiLine?"BlockComment":"LineComment",value:this.scanner.source.slice(p.slice[0],p.slice[1])},this.config.range&&(d.range=p.range),this.config.loc&&(d.loc=p.loc);var x={start:{line:p.loc.start.line,column:p.loc.start.column,offset:p.range[0]},end:{line:p.loc.end.line,column:p.loc.end.column,offset:p.range[1]}};this.delegate(d,x)}}},m.prototype.getTokenRaw=function(o){return this.scanner.source.slice(o.start,o.end)},m.prototype.convertToken=function(o){var l={type:f.TokenName[o.type],value:this.getTokenRaw(o)};if(this.config.range&&(l.range=[o.start,o.end]),this.config.loc&&(l.loc={start:{line:this.startMarker.line,column:this.startMarker.column},end:{line:this.scanner.lineNumber,column:this.scanner.index-this.scanner.lineStart}}),o.type===9){var p=o.pattern,d=o.flags;l.regex={pattern:p,flags:d}}return l},m.prototype.nextToken=function(){var o=this.lookahead;this.lastMarker.index=this.scanner.index,this.lastMarker.line=this.scanner.lineNumber,this.lastMarker.column=this.scanner.index-this.scanner.lineStart,this.collectComments(),this.scanner.index!==this.startMarker.index&&(this.startMarker.index=this.scanner.index,this.startMarker.line=this.scanner.lineNumber,this.startMarker.column=this.scanner.index-this.scanner.lineStart);var l=this.scanner.lex();return this.hasLineTerminator=o.lineNumber!==l.lineNumber,l&&this.context.strict&&l.type===3&&this.scanner.isStrictModeReservedWord(l.value)&&(l.type=4),this.lookahead=l,this.config.tokens&&l.type!==2&&this.tokens.push(this.convertToken(l)),o},m.prototype.nextRegexToken=function(){this.collectComments();var o=this.scanner.scanRegExp();return this.config.tokens&&(this.tokens.pop(),this.tokens.push(this.convertToken(o))),this.lookahead=o,this.nextToken(),o},m.prototype.createNode=function(){return{index:this.startMarker.index,line:this.startMarker.line,column:this.startMarker.column}},m.prototype.startNode=function(o,l){l===void 0&&(l=0);var p=o.start-o.lineStart,d=o.lineNumber;return p<0&&(p+=l,d--),{index:o.start,line:d,column:p}},m.prototype.finalize=function(o,l){if(this.config.range&&(l.range=[o.index,this.lastMarker.index]),this.config.loc&&(l.loc={start:{line:o.line,column:o.column},end:{line:this.lastMarker.line,column:this.lastMarker.column}},this.config.source&&(l.loc.source=this.config.source)),this.delegate){var p={start:{line:o.line,column:o.column,offset:o.index},end:{line:this.lastMarker.line,column:this.lastMarker.column,offset:this.lastMarker.index}};this.delegate(l,p)}return l},m.prototype.expect=function(o){var l=this.nextToken();(l.type!==7||l.value!==o)&&this.throwUnexpectedToken(l)},m.prototype.expectCommaSeparator=function(){if(this.config.tolerant){var o=this.lookahead;o.type===7&&o.value===","?this.nextToken():o.type===7&&o.value===";"?(this.nextToken(),this.tolerateUnexpectedToken(o)):this.tolerateUnexpectedToken(o,a.Messages.UnexpectedToken)}else this.expect(",")},m.prototype.expectKeyword=function(o){var l=this.nextToken();(l.type!==4||l.value!==o)&&this.throwUnexpectedToken(l)},m.prototype.match=function(o){return this.lookahead.type===7&&this.lookahead.value===o},m.prototype.matchKeyword=function(o){return this.lookahead.type===4&&this.lookahead.value===o},m.prototype.matchContextualKeyword=function(o){return this.lookahead.type===3&&this.lookahead.value===o},m.prototype.matchAssign=function(){if(this.lookahead.type!==7)return!1;var o=this.lookahead.value;return o==="="||o==="*="||o==="**="||o==="/="||o==="%="||o==="+="||o==="-="||o==="<<="||o===">>="||o===">>>="||o==="&="||o==="^="||o==="|="},m.prototype.isolateCoverGrammar=function(o){var l=this.context.isBindingElement,p=this.context.isAssignmentTarget,d=this.context.firstCoverInitializedNameError;this.context.isBindingElement=!0,this.context.isAssignmentTarget=!0,this.context.firstCoverInitializedNameError=null;var x=o.call(this);return this.context.firstCoverInitializedNameError!==null&&this.throwUnexpectedToken(this.context.firstCoverInitializedNameError),this.context.isBindingElement=l,this.context.isAssignmentTarget=p,this.context.firstCoverInitializedNameError=d,x},m.prototype.inheritCoverGrammar=function(o){var l=this.context.isBindingElement,p=this.context.isAssignmentTarget,d=this.context.firstCoverInitializedNameError;this.context.isBindingElement=!0,this.context.isAssignmentTarget=!0,this.context.firstCoverInitializedNameError=null;var x=o.call(this);return this.context.isBindingElement=this.context.isBindingElement&&l,this.context.isAssignmentTarget=this.context.isAssignmentTarget&&p,this.context.firstCoverInitializedNameError=d||this.context.firstCoverInitializedNameError,x},m.prototype.consumeSemicolon=function(){this.match(";")?this.nextToken():this.hasLineTerminator||(this.lookahead.type!==2&&!this.match("}")&&this.throwUnexpectedToken(this.lookahead),this.lastMarker.index=this.startMarker.index,this.lastMarker.line=this.startMarker.line,this.lastMarker.column=this.startMarker.column)},m.prototype.parsePrimaryExpression=function(){var o=this.createNode(),l,p,d;switch(this.lookahead.type){case 3:(this.context.isModule||this.context.await)&&this.lookahead.value==="await"&&this.tolerateUnexpectedToken(this.lookahead),l=this.matchAsyncFunction()?this.parseFunctionExpression():this.finalize(o,new n.Identifier(this.nextToken().value));break;case 6:case 8:this.context.strict&&this.lookahead.octal&&this.tolerateUnexpectedToken(this.lookahead,a.Messages.StrictOctalLiteral),this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1,p=this.nextToken(),d=this.getTokenRaw(p),l=this.finalize(o,new n.Literal(p.value,d));break;case 1:this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1,p=this.nextToken(),d=this.getTokenRaw(p),l=this.finalize(o,new n.Literal(p.value==="true",d));break;case 5:this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1,p=this.nextToken(),d=this.getTokenRaw(p),l=this.finalize(o,new n.Literal(null,d));break;case 10:l=this.parseTemplateLiteral();break;case 7:switch(this.lookahead.value){case"(":this.context.isBindingElement=!1,l=this.inheritCoverGrammar(this.parseGroupExpression);break;case"[":l=this.inheritCoverGrammar(this.parseArrayInitializer);break;case"{":l=this.inheritCoverGrammar(this.parseObjectInitializer);break;case"/":case"/=":this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1,this.scanner.index=this.startMarker.index,p=this.nextRegexToken(),d=this.getTokenRaw(p),l=this.finalize(o,new n.RegexLiteral(p.regex,d,p.pattern,p.flags));break;default:l=this.throwUnexpectedToken(this.nextToken())}break;case 4:!this.context.strict&&this.context.allowYield&&this.matchKeyword("yield")?l=this.parseIdentifierName():!this.context.strict&&this.matchKeyword("let")?l=this.finalize(o,new n.Identifier(this.nextToken().value)):(this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1,this.matchKeyword("function")?l=this.parseFunctionExpression():this.matchKeyword("this")?(this.nextToken(),l=this.finalize(o,new n.ThisExpression)):this.matchKeyword("class")?l=this.parseClassExpression():l=this.throwUnexpectedToken(this.nextToken()));break;default:l=this.throwUnexpectedToken(this.nextToken())}return l},m.prototype.parseSpreadElement=function(){var o=this.createNode();this.expect("...");var l=this.inheritCoverGrammar(this.parseAssignmentExpression);return this.finalize(o,new n.SpreadElement(l))},m.prototype.parseArrayInitializer=function(){var o=this.createNode(),l=[];for(this.expect("[");!this.match("]");)if(this.match(","))this.nextToken(),l.push(null);else if(this.match("...")){var p=this.parseSpreadElement();this.match("]")||(this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1,this.expect(",")),l.push(p)}else l.push(this.inheritCoverGrammar(this.parseAssignmentExpression)),this.match("]")||this.expect(",");return this.expect("]"),this.finalize(o,new n.ArrayExpression(l))},m.prototype.parsePropertyMethod=function(o){this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1;var l=this.context.strict,p=this.context.allowStrictDirective;this.context.allowStrictDirective=o.simple;var d=this.isolateCoverGrammar(this.parseFunctionSourceElements);return this.context.strict&&o.firstRestricted&&this.tolerateUnexpectedToken(o.firstRestricted,o.message),this.context.strict&&o.stricted&&this.tolerateUnexpectedToken(o.stricted,o.message),this.context.strict=l,this.context.allowStrictDirective=p,d},m.prototype.parsePropertyMethodFunction=function(){var o=!1,l=this.createNode(),p=this.context.allowYield;this.context.allowYield=!0;var d=this.parseFormalParameters(),x=this.parsePropertyMethod(d);return this.context.allowYield=p,this.finalize(l,new n.FunctionExpression(null,d.params,x,o))},m.prototype.parsePropertyMethodAsyncFunction=function(){var o=this.createNode(),l=this.context.allowYield,p=this.context.await;this.context.allowYield=!1,this.context.await=!0;var d=this.parseFormalParameters(),x=this.parsePropertyMethod(d);return this.context.allowYield=l,this.context.await=p,this.finalize(o,new n.AsyncFunctionExpression(null,d.params,x))},m.prototype.parseObjectPropertyKey=function(){var o=this.createNode(),l=this.nextToken(),p;switch(l.type){case 8:case 6:this.context.strict&&l.octal&&this.tolerateUnexpectedToken(l,a.Messages.StrictOctalLiteral);var d=this.getTokenRaw(l);p=this.finalize(o,new n.Literal(l.value,d));break;case 3:case 1:case 5:case 4:p=this.finalize(o,new n.Identifier(l.value));break;case 7:l.value==="["?(p=this.isolateCoverGrammar(this.parseAssignmentExpression),this.expect("]")):p=this.throwUnexpectedToken(l);break;default:p=this.throwUnexpectedToken(l)}return p},m.prototype.isPropertyKey=function(o,l){return o.type===c.Syntax.Identifier&&o.name===l||o.type===c.Syntax.Literal&&o.value===l},m.prototype.parseObjectProperty=function(o){var l=this.createNode(),p=this.lookahead,d,x=null,g=null,E=!1,b=!1,A=!1,T=!1;if(p.type===3){var D=p.value;this.nextToken(),E=this.match("["),T=!this.hasLineTerminator&&D==="async"&&!this.match(":")&&!this.match("(")&&!this.match("*")&&!this.match(","),x=T?this.parseObjectPropertyKey():this.finalize(l,new n.Identifier(D))}else this.match("*")?this.nextToken():(E=this.match("["),x=this.parseObjectPropertyKey());var L=this.qualifiedPropertyName(this.lookahead);if(p.type===3&&!T&&p.value==="get"&&L)d="get",E=this.match("["),x=this.parseObjectPropertyKey(),this.context.allowYield=!1,g=this.parseGetterMethod();else if(p.type===3&&!T&&p.value==="set"&&L)d="set",E=this.match("["),x=this.parseObjectPropertyKey(),g=this.parseSetterMethod();else if(p.type===7&&p.value==="*"&&L)d="init",E=this.match("["),x=this.parseObjectPropertyKey(),g=this.parseGeneratorMethod(),b=!0;else if(x||this.throwUnexpectedToken(this.lookahead),d="init",this.match(":")&&!T)!E&&this.isPropertyKey(x,"__proto__")&&(o.value&&this.tolerateError(a.Messages.DuplicateProtoProperty),o.value=!0),this.nextToken(),g=this.inheritCoverGrammar(this.parseAssignmentExpression);else if(this.match("("))g=T?this.parsePropertyMethodAsyncFunction():this.parsePropertyMethodFunction(),b=!0;else if(p.type===3){var D=this.finalize(l,new n.Identifier(p.value));if(this.match("=")){this.context.firstCoverInitializedNameError=this.lookahead,this.nextToken(),A=!0;var q=this.isolateCoverGrammar(this.parseAssignmentExpression);g=this.finalize(l,new n.AssignmentPattern(D,q))}else A=!0,g=D}else this.throwUnexpectedToken(this.nextToken());return this.finalize(l,new n.Property(d,x,E,g,b,A))},m.prototype.parseObjectInitializer=function(){var o=this.createNode();this.expect("{");for(var l=[],p={value:!1};!this.match("}");)l.push(this.parseObjectProperty(p)),this.match("}")||this.expectCommaSeparator();return this.expect("}"),this.finalize(o,new n.ObjectExpression(l))},m.prototype.parseTemplateHead=function(){t.assert(this.lookahead.head,"Template literal must start with a template head");var o=this.createNode(),l=this.nextToken(),p=l.value,d=l.cooked;return this.finalize(o,new n.TemplateElement({raw:p,cooked:d},l.tail))},m.prototype.parseTemplateElement=function(){this.lookahead.type!==10&&this.throwUnexpectedToken();var o=this.createNode(),l=this.nextToken(),p=l.value,d=l.cooked;return this.finalize(o,new n.TemplateElement({raw:p,cooked:d},l.tail))},m.prototype.parseTemplateLiteral=function(){var o=this.createNode(),l=[],p=[],d=this.parseTemplateHead();for(p.push(d);!d.tail;)l.push(this.parseExpression()),d=this.parseTemplateElement(),p.push(d);return this.finalize(o,new n.TemplateLiteral(p,l))},m.prototype.reinterpretExpressionAsPattern=function(o){switch(o.type){case c.Syntax.Identifier:case c.Syntax.MemberExpression:case c.Syntax.RestElement:case c.Syntax.AssignmentPattern:break;case c.Syntax.SpreadElement:o.type=c.Syntax.RestElement,this.reinterpretExpressionAsPattern(o.argument);break;case c.Syntax.ArrayExpression:o.type=c.Syntax.ArrayPattern;for(var l=0;l<o.elements.length;l++)o.elements[l]!==null&&this.reinterpretExpressionAsPattern(o.elements[l]);break;case c.Syntax.ObjectExpression:o.type=c.Syntax.ObjectPattern;for(var l=0;l<o.properties.length;l++)this.reinterpretExpressionAsPattern(o.properties[l].value);break;case c.Syntax.AssignmentExpression:o.type=c.Syntax.AssignmentPattern,delete o.operator,this.reinterpretExpressionAsPattern(o.left);break;default:break}},m.prototype.parseGroupExpression=function(){var o;if(this.expect("("),this.match(")"))this.nextToken(),this.match("=>")||this.expect("=>"),o={type:h,params:[],async:!1};else{var l=this.lookahead,p=[];if(this.match("..."))o=this.parseRestElement(p),this.expect(")"),this.match("=>")||this.expect("=>"),o={type:h,params:[o],async:!1};else{var d=!1;if(this.context.isBindingElement=!0,o=this.inheritCoverGrammar(this.parseAssignmentExpression),this.match(",")){var x=[];for(this.context.isAssignmentTarget=!1,x.push(o);this.lookahead.type!==2&&this.match(",");){if(this.nextToken(),this.match(")")){this.nextToken();for(var g=0;g<x.length;g++)this.reinterpretExpressionAsPattern(x[g]);d=!0,o={type:h,params:x,async:!1}}else if(this.match("...")){this.context.isBindingElement||this.throwUnexpectedToken(this.lookahead),x.push(this.parseRestElement(p)),this.expect(")"),this.match("=>")||this.expect("=>"),this.context.isBindingElement=!1;for(var g=0;g<x.length;g++)this.reinterpretExpressionAsPattern(x[g]);d=!0,o={type:h,params:x,async:!1}}else x.push(this.inheritCoverGrammar(this.parseAssignmentExpression));if(d)break}d||(o=this.finalize(this.startNode(l),new n.SequenceExpression(x)))}if(!d){if(this.expect(")"),this.match("=>")&&(o.type===c.Syntax.Identifier&&o.name==="yield"&&(d=!0,o={type:h,params:[o],async:!1}),!d)){if(this.context.isBindingElement||this.throwUnexpectedToken(this.lookahead),o.type===c.Syntax.SequenceExpression)for(var g=0;g<o.expressions.length;g++)this.reinterpretExpressionAsPattern(o.expressions[g]);else this.reinterpretExpressionAsPattern(o);var E=o.type===c.Syntax.SequenceExpression?o.expressions:[o];o={type:h,params:E,async:!1}}this.context.isBindingElement=!1}}}return o},m.prototype.parseArguments=function(){this.expect("(");var o=[];if(!this.match(")"))for(;;){var l=this.match("...")?this.parseSpreadElement():this.isolateCoverGrammar(this.parseAssignmentExpression);if(o.push(l),this.match(")")||(this.expectCommaSeparator(),this.match(")")))break}return this.expect(")"),o},m.prototype.isIdentifierName=function(o){return o.type===3||o.type===4||o.type===1||o.type===5},m.prototype.parseIdentifierName=function(){var o=this.createNode(),l=this.nextToken();return this.isIdentifierName(l)||this.throwUnexpectedToken(l),this.finalize(o,new n.Identifier(l.value))},m.prototype.parseNewExpression=function(){var o=this.createNode(),l=this.parseIdentifierName();t.assert(l.name==="new","New expression must start with `new`");var p;if(this.match("."))if(this.nextToken(),this.lookahead.type===3&&this.context.inFunctionBody&&this.lookahead.value==="target"){var d=this.parseIdentifierName();p=new n.MetaProperty(l,d)}else this.throwUnexpectedToken(this.lookahead);else{var x=this.isolateCoverGrammar(this.parseLeftHandSideExpression),g=this.match("(")?this.parseArguments():[];p=new n.NewExpression(x,g),this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1}return this.finalize(o,p)},m.prototype.parseAsyncArgument=function(){var o=this.parseAssignmentExpression();return this.context.firstCoverInitializedNameError=null,o},m.prototype.parseAsyncArguments=function(){this.expect("(");var o=[];if(!this.match(")"))for(;;){var l=this.match("...")?this.parseSpreadElement():this.isolateCoverGrammar(this.parseAsyncArgument);if(o.push(l),this.match(")")||(this.expectCommaSeparator(),this.match(")")))break}return this.expect(")"),o},m.prototype.parseLeftHandSideExpressionAllowCall=function(){var o=this.lookahead,l=this.matchContextualKeyword("async"),p=this.context.allowIn;this.context.allowIn=!0;var d;for(this.matchKeyword("super")&&this.context.inFunctionBody?(d=this.createNode(),this.nextToken(),d=this.finalize(d,new n.Super),!this.match("(")&&!this.match(".")&&!this.match("[")&&this.throwUnexpectedToken(this.lookahead)):d=this.inheritCoverGrammar(this.matchKeyword("new")?this.parseNewExpression:this.parsePrimaryExpression);;)if(this.match(".")){this.context.isBindingElement=!1,this.context.isAssignmentTarget=!0,this.expect(".");var x=this.parseIdentifierName();d=this.finalize(this.startNode(o),new n.StaticMemberExpression(d,x))}else if(this.match("(")){var g=l&&o.lineNumber===this.lookahead.lineNumber;this.context.isBindingElement=!1,this.context.isAssignmentTarget=!1;var E=g?this.parseAsyncArguments():this.parseArguments();if(d=this.finalize(this.startNode(o),new n.CallExpression(d,E)),g&&this.match("=>")){for(var b=0;b<E.length;++b)this.reinterpretExpressionAsPattern(E[b]);d={type:h,params:E,async:!0}}}else if(this.match("[")){this.context.isBindingElement=!1,this.context.isAssignmentTarget=!0,this.expect("[");var x=this.isolateCoverGrammar(this.parseExpression);this.expect("]"),d=this.finalize(this.startNode(o),new n.ComputedMemberExpression(d,x))}else if(this.lookahead.type===10&&this.lookahead.head){var A=this.parseTemplateLiteral();d=this.finalize(this.startNode(o),new n.TaggedTemplateExpression(d,A))}else break;return this.context.allowIn=p,d},m.prototype.parseSuper=function(){var o=this.createNode();return this.expectKeyword("super"),!this.match("[")&&!this.match(".")&&this.throwUnexpectedToken(this.lookahead),this.finalize(o,new n.Super)},m.prototype.parseLeftHandSideExpression=function(){t.assert(this.context.allowIn,"callee of new expression always allow in keyword.");for(var o=this.startNode(this.lookahead),l=this.matchKeyword("super")&&this.context.inFunctionBody?this.parseSuper():this.inheritCoverGrammar(this.matchKeyword("new")?this.parseNewExpression:this.parsePrimaryExpression);;)if(this.match("[")){this.context.isBindingElement=!1,this.context.isAssignmentTarget=!0,this.expect("[");var p=this.isolateCoverGrammar(this.parseExpression);this.expect("]"),l=this.finalize(o,new n.ComputedMemberExpression(l,p))}else if(this.match(".")){this.context.isBindingElement=!1,this.context.isAssignmentTarget=!0,this.expect(".");var p=this.parseIdentifierName();l=this.finalize(o,new n.StaticMemberExpression(l,p))}else if(this.lookahead.type===10&&this.lookahead.head){var d=this.parseTemplateLiteral();l=this.finalize(o,new n.TaggedTemplateExpression(l,d))}else break;return l},m.prototype.parseUpdateExpression=function(){var o,l=this.lookahead;if(this.match("++")||this.match("--")){var p=this.startNode(l),d=this.nextToken();o=this.inheritCoverGrammar(this.parseUnaryExpression),this.context.strict&&o.type===c.Syntax.Identifier&&this.scanner.isRestrictedWord(o.name)&&this.tolerateError(a.Messages.StrictLHSPrefix),this.context.isAssignmentTarget||this.tolerateError(a.Messages.InvalidLHSInAssignment);var x=!0;o=this.finalize(p,new n.UpdateExpression(d.value,o,x)),this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1}else if(o=this.inheritCoverGrammar(this.parseLeftHandSideExpressionAllowCall),!this.hasLineTerminator&&this.lookahead.type===7&&(this.match("++")||this.match("--"))){this.context.strict&&o.type===c.Syntax.Identifier&&this.scanner.isRestrictedWord(o.name)&&this.tolerateError(a.Messages.StrictLHSPostfix),this.context.isAssignmentTarget||this.tolerateError(a.Messages.InvalidLHSInAssignment),this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1;var g=this.nextToken().value,x=!1;o=this.finalize(this.startNode(l),new n.UpdateExpression(g,o,x))}return o},m.prototype.parseAwaitExpression=function(){var o=this.createNode();this.nextToken();var l=this.parseUnaryExpression();return this.finalize(o,new n.AwaitExpression(l))},m.prototype.parseUnaryExpression=function(){var o;if(this.match("+")||this.match("-")||this.match("~")||this.match("!")||this.matchKeyword("delete")||this.matchKeyword("void")||this.matchKeyword("typeof")){var l=this.startNode(this.lookahead),p=this.nextToken();o=this.inheritCoverGrammar(this.parseUnaryExpression),o=this.finalize(l,new n.UnaryExpression(p.value,o)),this.context.strict&&o.operator==="delete"&&o.argument.type===c.Syntax.Identifier&&this.tolerateError(a.Messages.StrictDelete),this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1}else this.context.await&&this.matchContextualKeyword("await")?o=this.parseAwaitExpression():o=this.parseUpdateExpression();return o},m.prototype.parseExponentiationExpression=function(){var o=this.lookahead,l=this.inheritCoverGrammar(this.parseUnaryExpression);if(l.type!==c.Syntax.UnaryExpression&&this.match("**")){this.nextToken(),this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1;var p=l,d=this.isolateCoverGrammar(this.parseExponentiationExpression);l=this.finalize(this.startNode(o),new n.BinaryExpression("**",p,d))}return l},m.prototype.binaryPrecedence=function(o){var l=o.value,p;return o.type===7?p=this.operatorPrecedence[l]||0:o.type===4?p=l==="instanceof"||this.context.allowIn&&l==="in"?7:0:p=0,p},m.prototype.parseBinaryExpression=function(){var o=this.lookahead,l=this.inheritCoverGrammar(this.parseExponentiationExpression),p=this.lookahead,d=this.binaryPrecedence(p);if(d>0){this.nextToken(),this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1;for(var x=[o,this.lookahead],g=l,E=this.isolateCoverGrammar(this.parseExponentiationExpression),b=[g,p.value,E],A=[d];d=this.binaryPrecedence(this.lookahead),!(d<=0);){for(;b.length>2&&d<=A[A.length-1];){E=b.pop();var T=b.pop();A.pop(),g=b.pop(),x.pop();var D=this.startNode(x[x.length-1]);b.push(this.finalize(D,new n.BinaryExpression(T,g,E)))}b.push(this.nextToken().value),A.push(d),x.push(this.lookahead),b.push(this.isolateCoverGrammar(this.parseExponentiationExpression))}var L=b.length-1;l=b[L];for(var q=x.pop();L>1;){var ee=x.pop(),he=q&&q.lineStart,D=this.startNode(ee,he),T=b[L-1];l=this.finalize(D,new n.BinaryExpression(T,b[L-2],l)),L-=2,q=ee}}return l},m.prototype.parseConditionalExpression=function(){var o=this.lookahead,l=this.inheritCoverGrammar(this.parseBinaryExpression);if(this.match("?")){this.nextToken();var p=this.context.allowIn;this.context.allowIn=!0;var d=this.isolateCoverGrammar(this.parseAssignmentExpression);this.context.allowIn=p,this.expect(":");var x=this.isolateCoverGrammar(this.parseAssignmentExpression);l=this.finalize(this.startNode(o),new n.ConditionalExpression(l,d,x)),this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1}return l},m.prototype.checkPatternParam=function(o,l){switch(l.type){case c.Syntax.Identifier:this.validateParam(o,l,l.name);break;case c.Syntax.RestElement:this.checkPatternParam(o,l.argument);break;case c.Syntax.AssignmentPattern:this.checkPatternParam(o,l.left);break;case c.Syntax.ArrayPattern:for(var p=0;p<l.elements.length;p++)l.elements[p]!==null&&this.checkPatternParam(o,l.elements[p]);break;case c.Syntax.ObjectPattern:for(var p=0;p<l.properties.length;p++)this.checkPatternParam(o,l.properties[p].value);break;default:break}o.simple=o.simple&&l instanceof n.Identifier},m.prototype.reinterpretAsCoverFormalsList=function(o){var l=[o],p,d=!1;switch(o.type){case c.Syntax.Identifier:break;case h:l=o.params,d=o.async;break;default:return null}p={simple:!0,paramSet:{}};for(var x=0;x<l.length;++x){var g=l[x];g.type===c.Syntax.AssignmentPattern?g.right.type===c.Syntax.YieldExpression&&(g.right.argument&&this.throwUnexpectedToken(this.lookahead),g.right.type=c.Syntax.Identifier,g.right.name="yield",delete g.right.argument,delete g.right.delegate):d&&g.type===c.Syntax.Identifier&&g.name==="await"&&this.throwUnexpectedToken(this.lookahead),this.checkPatternParam(p,g),l[x]=g}if(this.context.strict||!this.context.allowYield)for(var x=0;x<l.length;++x){var g=l[x];g.type===c.Syntax.YieldExpression&&this.throwUnexpectedToken(this.lookahead)}if(p.message===a.Messages.StrictParamDupe){var E=this.context.strict?p.stricted:p.firstRestricted;this.throwUnexpectedToken(E,p.message)}return{simple:p.simple,params:l,stricted:p.stricted,firstRestricted:p.firstRestricted,message:p.message}},m.prototype.parseAssignmentExpression=function(){var o;if(!this.context.allowYield&&this.matchKeyword("yield"))o=this.parseYieldExpression();else{var l=this.lookahead,p=l;if(o=this.parseConditionalExpression(),p.type===3&&p.lineNumber===this.lookahead.lineNumber&&p.value==="async"&&(this.lookahead.type===3||this.matchKeyword("yield"))){var d=this.parsePrimaryExpression();this.reinterpretExpressionAsPattern(d),o={type:h,params:[d],async:!0}}if(o.type===h||this.match("=>")){this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1;var x=o.async,g=this.reinterpretAsCoverFormalsList(o);if(g){this.hasLineTerminator&&this.tolerateUnexpectedToken(this.lookahead),this.context.firstCoverInitializedNameError=null;var E=this.context.strict,b=this.context.allowStrictDirective;this.context.allowStrictDirective=g.simple;var A=this.context.allowYield,T=this.context.await;this.context.allowYield=!0,this.context.await=x;var D=this.startNode(l);this.expect("=>");var L=void 0;if(this.match("{")){var q=this.context.allowIn;this.context.allowIn=!0,L=this.parseFunctionSourceElements(),this.context.allowIn=q}else L=this.isolateCoverGrammar(this.parseAssignmentExpression);var ee=L.type!==c.Syntax.BlockStatement;this.context.strict&&g.firstRestricted&&this.throwUnexpectedToken(g.firstRestricted,g.message),this.context.strict&&g.stricted&&this.tolerateUnexpectedToken(g.stricted,g.message),o=x?this.finalize(D,new n.AsyncArrowFunctionExpression(g.params,L,ee)):this.finalize(D,new n.ArrowFunctionExpression(g.params,L,ee)),this.context.strict=E,this.context.allowStrictDirective=b,this.context.allowYield=A,this.context.await=T}}else if(this.matchAssign()){if(this.context.isAssignmentTarget||this.tolerateError(a.Messages.InvalidLHSInAssignment),this.context.strict&&o.type===c.Syntax.Identifier){var he=o;this.scanner.isRestrictedWord(he.name)&&this.tolerateUnexpectedToken(p,a.Messages.StrictLHSAssignment),this.scanner.isStrictModeReservedWord(he.name)&&this.tolerateUnexpectedToken(p,a.Messages.StrictReservedWord)}this.match("=")?this.reinterpretExpressionAsPattern(o):(this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1),p=this.nextToken();var xe=p.value,Ke=this.isolateCoverGrammar(this.parseAssignmentExpression);o=this.finalize(this.startNode(l),new n.AssignmentExpression(xe,o,Ke)),this.context.firstCoverInitializedNameError=null}}return o},m.prototype.parseExpression=function(){var o=this.lookahead,l=this.isolateCoverGrammar(this.parseAssignmentExpression);if(this.match(",")){var p=[];for(p.push(l);this.lookahead.type!==2&&this.match(",");)this.nextToken(),p.push(this.isolateCoverGrammar(this.parseAssignmentExpression));l=this.finalize(this.startNode(o),new n.SequenceExpression(p))}return l},m.prototype.parseStatementListItem=function(){var o;if(this.context.isAssignmentTarget=!0,this.context.isBindingElement=!0,this.lookahead.type===4)switch(this.lookahead.value){case"export":this.context.isModule||this.tolerateUnexpectedToken(this.lookahead,a.Messages.IllegalExportDeclaration),o=this.parseExportDeclaration();break;case"import":this.context.isModule||this.tolerateUnexpectedToken(this.lookahead,a.Messages.IllegalImportDeclaration),o=this.parseImportDeclaration();break;case"const":o=this.parseLexicalDeclaration({inFor:!1});break;case"function":o=this.parseFunctionDeclaration();break;case"class":o=this.parseClassDeclaration();break;case"let":o=this.isLexicalDeclaration()?this.parseLexicalDeclaration({inFor:!1}):this.parseStatement();break;default:o=this.parseStatement();break}else o=this.parseStatement();return o},m.prototype.parseBlock=function(){var o=this.createNode();this.expect("{");for(var l=[];!this.match("}");)l.push(this.parseStatementListItem());return this.expect("}"),this.finalize(o,new n.BlockStatement(l))},m.prototype.parseLexicalBinding=function(o,l){var p=this.createNode(),d=[],x=this.parsePattern(d,o);this.context.strict&&x.type===c.Syntax.Identifier&&this.scanner.isRestrictedWord(x.name)&&this.tolerateError(a.Messages.StrictVarName);var g=null;return o==="const"?!this.matchKeyword("in")&&!this.matchContextualKeyword("of")&&(this.match("=")?(this.nextToken(),g=this.isolateCoverGrammar(this.parseAssignmentExpression)):this.throwError(a.Messages.DeclarationMissingInitializer,"const")):(!l.inFor&&x.type!==c.Syntax.Identifier||this.match("="))&&(this.expect("="),g=this.isolateCoverGrammar(this.parseAssignmentExpression)),this.finalize(p,new n.VariableDeclarator(x,g))},m.prototype.parseBindingList=function(o,l){for(var p=[this.parseLexicalBinding(o,l)];this.match(",");)this.nextToken(),p.push(this.parseLexicalBinding(o,l));return p},m.prototype.isLexicalDeclaration=function(){var o=this.scanner.saveState();this.scanner.scanComments();var l=this.scanner.lex();return this.scanner.restoreState(o),l.type===3||l.type===7&&l.value==="["||l.type===7&&l.value==="{"||l.type===4&&l.value==="let"||l.type===4&&l.value==="yield"},m.prototype.parseLexicalDeclaration=function(o){var l=this.createNode(),p=this.nextToken().value;t.assert(p==="let"||p==="const","Lexical declaration must be either let or const");var d=this.parseBindingList(p,o);return this.consumeSemicolon(),this.finalize(l,new n.VariableDeclaration(d,p))},m.prototype.parseBindingRestElement=function(o,l){var p=this.createNode();this.expect("...");var d=this.parsePattern(o,l);return this.finalize(p,new n.RestElement(d))},m.prototype.parseArrayPattern=function(o,l){var p=this.createNode();this.expect("[");for(var d=[];!this.match("]");)if(this.match(","))this.nextToken(),d.push(null);else{if(this.match("...")){d.push(this.parseBindingRestElement(o,l));break}else d.push(this.parsePatternWithDefault(o,l));this.match("]")||this.expect(",")}return this.expect("]"),this.finalize(p,new n.ArrayPattern(d))},m.prototype.parsePropertyPattern=function(o,l){var p=this.createNode(),d=!1,x=!1,g=!1,E,b;if(this.lookahead.type===3){var A=this.lookahead;E=this.parseVariableIdentifier();var T=this.finalize(p,new n.Identifier(A.value));if(this.match("=")){o.push(A),x=!0,this.nextToken();var D=this.parseAssignmentExpression();b=this.finalize(this.startNode(A),new n.AssignmentPattern(T,D))}else this.match(":")?(this.expect(":"),b=this.parsePatternWithDefault(o,l)):(o.push(A),x=!0,b=T)}else d=this.match("["),E=this.parseObjectPropertyKey(),this.expect(":"),b=this.parsePatternWithDefault(o,l);return this.finalize(p,new n.Property("init",E,d,b,g,x))},m.prototype.parseObjectPattern=function(o,l){var p=this.createNode(),d=[];for(this.expect("{");!this.match("}");)d.push(this.parsePropertyPattern(o,l)),this.match("}")||this.expect(",");return this.expect("}"),this.finalize(p,new n.ObjectPattern(d))},m.prototype.parsePattern=function(o,l){var p;return this.match("[")?p=this.parseArrayPattern(o,l):this.match("{")?p=this.parseObjectPattern(o,l):(this.matchKeyword("let")&&(l==="const"||l==="let")&&this.tolerateUnexpectedToken(this.lookahead,a.Messages.LetInLexicalBinding),o.push(this.lookahead),p=this.parseVariableIdentifier(l)),p},m.prototype.parsePatternWithDefault=function(o,l){var p=this.lookahead,d=this.parsePattern(o,l);if(this.match("=")){this.nextToken();var x=this.context.allowYield;this.context.allowYield=!0;var g=this.isolateCoverGrammar(this.parseAssignmentExpression);this.context.allowYield=x,d=this.finalize(this.startNode(p),new n.AssignmentPattern(d,g))}return d},m.prototype.parseVariableIdentifier=function(o){var l=this.createNode(),p=this.nextToken();return p.type===4&&p.value==="yield"?this.context.strict?this.tolerateUnexpectedToken(p,a.Messages.StrictReservedWord):this.context.allowYield||this.throwUnexpectedToken(p):p.type!==3?this.context.strict&&p.type===4&&this.scanner.isStrictModeReservedWord(p.value)?this.tolerateUnexpectedToken(p,a.Messages.StrictReservedWord):(this.context.strict||p.value!=="let"||o!=="var")&&this.throwUnexpectedToken(p):(this.context.isModule||this.context.await)&&p.type===3&&p.value==="await"&&this.tolerateUnexpectedToken(p),this.finalize(l,new n.Identifier(p.value))},m.prototype.parseVariableDeclaration=function(o){var l=this.createNode(),p=[],d=this.parsePattern(p,"var");this.context.strict&&d.type===c.Syntax.Identifier&&this.scanner.isRestrictedWord(d.name)&&this.tolerateError(a.Messages.StrictVarName);var x=null;return this.match("=")?(this.nextToken(),x=this.isolateCoverGrammar(this.parseAssignmentExpression)):d.type!==c.Syntax.Identifier&&!o.inFor&&this.expect("="),this.finalize(l,new n.VariableDeclarator(d,x))},m.prototype.parseVariableDeclarationList=function(o){var l={inFor:o.inFor},p=[];for(p.push(this.parseVariableDeclaration(l));this.match(",");)this.nextToken(),p.push(this.parseVariableDeclaration(l));return p},m.prototype.parseVariableStatement=function(){var o=this.createNode();this.expectKeyword("var");var l=this.parseVariableDeclarationList({inFor:!1});return this.consumeSemicolon(),this.finalize(o,new n.VariableDeclaration(l,"var"))},m.prototype.parseEmptyStatement=function(){var o=this.createNode();return this.expect(";"),this.finalize(o,new n.EmptyStatement)},m.prototype.parseExpressionStatement=function(){var o=this.createNode(),l=this.parseExpression();return this.consumeSemicolon(),this.finalize(o,new n.ExpressionStatement(l))},m.prototype.parseIfClause=function(){return this.context.strict&&this.matchKeyword("function")&&this.tolerateError(a.Messages.StrictFunction),this.parseStatement()},m.prototype.parseIfStatement=function(){var o=this.createNode(),l,p=null;this.expectKeyword("if"),this.expect("(");var d=this.parseExpression();return!this.match(")")&&this.config.tolerant?(this.tolerateUnexpectedToken(this.nextToken()),l=this.finalize(this.createNode(),new n.EmptyStatement)):(this.expect(")"),l=this.parseIfClause(),this.matchKeyword("else")&&(this.nextToken(),p=this.parseIfClause())),this.finalize(o,new n.IfStatement(d,l,p))},m.prototype.parseDoWhileStatement=function(){var o=this.createNode();this.expectKeyword("do");var l=this.context.inIteration;this.context.inIteration=!0;var p=this.parseStatement();this.context.inIteration=l,this.expectKeyword("while"),this.expect("(");var d=this.parseExpression();return!this.match(")")&&this.config.tolerant?this.tolerateUnexpectedToken(this.nextToken()):(this.expect(")"),this.match(";")&&this.nextToken()),this.finalize(o,new n.DoWhileStatement(p,d))},m.prototype.parseWhileStatement=function(){var o=this.createNode(),l;this.expectKeyword("while"),this.expect("(");var p=this.parseExpression();if(!this.match(")")&&this.config.tolerant)this.tolerateUnexpectedToken(this.nextToken()),l=this.finalize(this.createNode(),new n.EmptyStatement);else{this.expect(")");var d=this.context.inIteration;this.context.inIteration=!0,l=this.parseStatement(),this.context.inIteration=d}return this.finalize(o,new n.WhileStatement(p,l))},m.prototype.parseForStatement=function(){var o=null,l=null,p=null,d=!0,x,g,E=this.createNode();if(this.expectKeyword("for"),this.expect("("),this.match(";"))this.nextToken();else if(this.matchKeyword("var")){o=this.createNode(),this.nextToken();var b=this.context.allowIn;this.context.allowIn=!1;var A=this.parseVariableDeclarationList({inFor:!0});if(this.context.allowIn=b,A.length===1&&this.matchKeyword("in")){var T=A[0];T.init&&(T.id.type===c.Syntax.ArrayPattern||T.id.type===c.Syntax.ObjectPattern||this.context.strict)&&this.tolerateError(a.Messages.ForInOfLoopInitializer,"for-in"),o=this.finalize(o,new n.VariableDeclaration(A,"var")),this.nextToken(),x=o,g=this.parseExpression(),o=null}else A.length===1&&A[0].init===null&&this.matchContextualKeyword("of")?(o=this.finalize(o,new n.VariableDeclaration(A,"var")),this.nextToken(),x=o,g=this.parseAssignmentExpression(),o=null,d=!1):(o=this.finalize(o,new n.VariableDeclaration(A,"var")),this.expect(";"))}else if(this.matchKeyword("const")||this.matchKeyword("let")){o=this.createNode();var D=this.nextToken().value;if(!this.context.strict&&this.lookahead.value==="in")o=this.finalize(o,new n.Identifier(D)),this.nextToken(),x=o,g=this.parseExpression(),o=null;else{var b=this.context.allowIn;this.context.allowIn=!1;var A=this.parseBindingList(D,{inFor:!0});this.context.allowIn=b,A.length===1&&A[0].init===null&&this.matchKeyword("in")?(o=this.finalize(o,new n.VariableDeclaration(A,D)),this.nextToken(),x=o,g=this.parseExpression(),o=null):A.length===1&&A[0].init===null&&this.matchContextualKeyword("of")?(o=this.finalize(o,new n.VariableDeclaration(A,D)),this.nextToken(),x=o,g=this.parseAssignmentExpression(),o=null,d=!1):(this.consumeSemicolon(),o=this.finalize(o,new n.VariableDeclaration(A,D)))}}else{var L=this.lookahead,b=this.context.allowIn;if(this.context.allowIn=!1,o=this.inheritCoverGrammar(this.parseAssignmentExpression),this.context.allowIn=b,this.matchKeyword("in"))(!this.context.isAssignmentTarget||o.type===c.Syntax.AssignmentExpression)&&this.tolerateError(a.Messages.InvalidLHSInForIn),this.nextToken(),this.reinterpretExpressionAsPattern(o),x=o,g=this.parseExpression(),o=null;else if(this.matchContextualKeyword("of"))(!this.context.isAssignmentTarget||o.type===c.Syntax.AssignmentExpression)&&this.tolerateError(a.Messages.InvalidLHSInForLoop),this.nextToken(),this.reinterpretExpressionAsPattern(o),x=o,g=this.parseAssignmentExpression(),o=null,d=!1;else{if(this.match(",")){for(var q=[o];this.match(",");)this.nextToken(),q.push(this.isolateCoverGrammar(this.parseAssignmentExpression));o=this.finalize(this.startNode(L),new n.SequenceExpression(q))}this.expect(";")}}typeof x>"u"&&(this.match(";")||(l=this.parseExpression()),this.expect(";"),this.match(")")||(p=this.parseExpression()));var ee;if(!this.match(")")&&this.config.tolerant)this.tolerateUnexpectedToken(this.nextToken()),ee=this.finalize(this.createNode(),new n.EmptyStatement);else{this.expect(")");var he=this.context.inIteration;this.context.inIteration=!0,ee=this.isolateCoverGrammar(this.parseStatement),this.context.inIteration=he}return typeof x>"u"?this.finalize(E,new n.ForStatement(o,l,p,ee)):d?this.finalize(E,new n.ForInStatement(x,g,ee)):this.finalize(E,new n.ForOfStatement(x,g,ee))},m.prototype.parseContinueStatement=function(){var o=this.createNode();this.expectKeyword("continue");var l=null;if(this.lookahead.type===3&&!this.hasLineTerminator){var p=this.parseVariableIdentifier();l=p;var d="$"+p.name;Object.prototype.hasOwnProperty.call(this.context.labelSet,d)||this.throwError(a.Messages.UnknownLabel,p.name)}return this.consumeSemicolon(),l===null&&!this.context.inIteration&&this.throwError(a.Messages.IllegalContinue),this.finalize(o,new n.ContinueStatement(l))},m.prototype.parseBreakStatement=function(){var o=this.createNode();this.expectKeyword("break");var l=null;if(this.lookahead.type===3&&!this.hasLineTerminator){var p=this.parseVariableIdentifier(),d="$"+p.name;Object.prototype.hasOwnProperty.call(this.context.labelSet,d)||this.throwError(a.Messages.UnknownLabel,p.name),l=p}return this.consumeSemicolon(),l===null&&!this.context.inIteration&&!this.context.inSwitch&&this.throwError(a.Messages.IllegalBreak),this.finalize(o,new n.BreakStatement(l))},m.prototype.parseReturnStatement=function(){this.context.inFunctionBody||this.tolerateError(a.Messages.IllegalReturn);var o=this.createNode();this.expectKeyword("return");var l=!this.match(";")&&!this.match("}")&&!this.hasLineTerminator&&this.lookahead.type!==2||this.lookahead.type===8||this.lookahead.type===10,p=l?this.parseExpression():null;return this.consumeSemicolon(),this.finalize(o,new n.ReturnStatement(p))},m.prototype.parseWithStatement=function(){this.context.strict&&this.tolerateError(a.Messages.StrictModeWith);var o=this.createNode(),l;this.expectKeyword("with"),this.expect("(");var p=this.parseExpression();return!this.match(")")&&this.config.tolerant?(this.tolerateUnexpectedToken(this.nextToken()),l=this.finalize(this.createNode(),new n.EmptyStatement)):(this.expect(")"),l=this.parseStatement()),this.finalize(o,new n.WithStatement(p,l))},m.prototype.parseSwitchCase=function(){var o=this.createNode(),l;this.matchKeyword("default")?(this.nextToken(),l=null):(this.expectKeyword("case"),l=this.parseExpression()),this.expect(":");for(var p=[];!(this.match("}")||this.matchKeyword("default")||this.matchKeyword("case"));)p.push(this.parseStatementListItem());return this.finalize(o,new n.SwitchCase(l,p))},m.prototype.parseSwitchStatement=function(){var o=this.createNode();this.expectKeyword("switch"),this.expect("(");var l=this.parseExpression();this.expect(")");var p=this.context.inSwitch;this.context.inSwitch=!0;var d=[],x=!1;for(this.expect("{");!this.match("}");){var g=this.parseSwitchCase();g.test===null&&(x&&this.throwError(a.Messages.MultipleDefaultsInSwitch),x=!0),d.push(g)}return this.expect("}"),this.context.inSwitch=p,this.finalize(o,new n.SwitchStatement(l,d))},m.prototype.parseLabelledStatement=function(){var o=this.createNode(),l=this.parseExpression(),p;if(l.type===c.Syntax.Identifier&&this.match(":")){this.nextToken();var d=l,x="$"+d.name;Object.prototype.hasOwnProperty.call(this.context.labelSet,x)&&this.throwError(a.Messages.Redeclaration,"Label",d.name),this.context.labelSet[x]=!0;var g=void 0;if(this.matchKeyword("class"))this.tolerateUnexpectedToken(this.lookahead),g=this.parseClassDeclaration();else if(this.matchKeyword("function")){var E=this.lookahead,b=this.parseFunctionDeclaration();this.context.strict?this.tolerateUnexpectedToken(E,a.Messages.StrictFunction):b.generator&&this.tolerateUnexpectedToken(E,a.Messages.GeneratorInLegacyContext),g=b}else g=this.parseStatement();delete this.context.labelSet[x],p=new n.LabeledStatement(d,g)}else this.consumeSemicolon(),p=new n.ExpressionStatement(l);return this.finalize(o,p)},m.prototype.parseThrowStatement=function(){var o=this.createNode();this.expectKeyword("throw"),this.hasLineTerminator&&this.throwError(a.Messages.NewlineAfterThrow);var l=this.parseExpression();return this.consumeSemicolon(),this.finalize(o,new n.ThrowStatement(l))},m.prototype.parseCatchClause=function(){var o=this.createNode();this.expectKeyword("catch"),this.expect("("),this.match(")")&&this.throwUnexpectedToken(this.lookahead);for(var l=[],p=this.parsePattern(l),d={},x=0;x<l.length;x++){var g="$"+l[x].value;Object.prototype.hasOwnProperty.call(d,g)&&this.tolerateError(a.Messages.DuplicateBinding,l[x].value),d[g]=!0}this.context.strict&&p.type===c.Syntax.Identifier&&this.scanner.isRestrictedWord(p.name)&&this.tolerateError(a.Messages.StrictCatchVariable),this.expect(")");var E=this.parseBlock();return this.finalize(o,new n.CatchClause(p,E))},m.prototype.parseFinallyClause=function(){return this.expectKeyword("finally"),this.parseBlock()},m.prototype.parseTryStatement=function(){var o=this.createNode();this.expectKeyword("try");var l=this.parseBlock(),p=this.matchKeyword("catch")?this.parseCatchClause():null,d=this.matchKeyword("finally")?this.parseFinallyClause():null;return!p&&!d&&this.throwError(a.Messages.NoCatchOrFinally),this.finalize(o,new n.TryStatement(l,p,d))},m.prototype.parseDebuggerStatement=function(){var o=this.createNode();return this.expectKeyword("debugger"),this.consumeSemicolon(),this.finalize(o,new n.DebuggerStatement)},m.prototype.parseStatement=function(){var o;switch(this.lookahead.type){case 1:case 5:case 6:case 8:case 10:case 9:o=this.parseExpressionStatement();break;case 7:var l=this.lookahead.value;l==="{"?o=this.parseBlock():l==="("?o=this.parseExpressionStatement():l===";"?o=this.parseEmptyStatement():o=this.parseExpressionStatement();break;case 3:o=this.matchAsyncFunction()?this.parseFunctionDeclaration():this.parseLabelledStatement();break;case 4:switch(this.lookahead.value){case"break":o=this.parseBreakStatement();break;case"continue":o=this.parseContinueStatement();break;case"debugger":o=this.parseDebuggerStatement();break;case"do":o=this.parseDoWhileStatement();break;case"for":o=this.parseForStatement();break;case"function":o=this.parseFunctionDeclaration();break;case"if":o=this.parseIfStatement();break;case"return":o=this.parseReturnStatement();break;case"switch":o=this.parseSwitchStatement();break;case"throw":o=this.parseThrowStatement();break;case"try":o=this.parseTryStatement();break;case"var":o=this.parseVariableStatement();break;case"while":o=this.parseWhileStatement();break;case"with":o=this.parseWithStatement();break;default:o=this.parseExpressionStatement();break}break;default:o=this.throwUnexpectedToken(this.lookahead)}return o},m.prototype.parseFunctionSourceElements=function(){var o=this.createNode();this.expect("{");var l=this.parseDirectivePrologues(),p=this.context.labelSet,d=this.context.inIteration,x=this.context.inSwitch,g=this.context.inFunctionBody;for(this.context.labelSet={},this.context.inIteration=!1,this.context.inSwitch=!1,this.context.inFunctionBody=!0;this.lookahead.type!==2&&!this.match("}");)l.push(this.parseStatementListItem());return this.expect("}"),this.context.labelSet=p,this.context.inIteration=d,this.context.inSwitch=x,this.context.inFunctionBody=g,this.finalize(o,new n.BlockStatement(l))},m.prototype.validateParam=function(o,l,p){var d="$"+p;this.context.strict?(this.scanner.isRestrictedWord(p)&&(o.stricted=l,o.message=a.Messages.StrictParamName),Object.prototype.hasOwnProperty.call(o.paramSet,d)&&(o.stricted=l,o.message=a.Messages.StrictParamDupe)):o.firstRestricted||(this.scanner.isRestrictedWord(p)?(o.firstRestricted=l,o.message=a.Messages.StrictParamName):this.scanner.isStrictModeReservedWord(p)?(o.firstRestricted=l,o.message=a.Messages.StrictReservedWord):Object.prototype.hasOwnProperty.call(o.paramSet,d)&&(o.stricted=l,o.message=a.Messages.StrictParamDupe)),typeof Object.defineProperty=="function"?Object.defineProperty(o.paramSet,d,{value:!0,enumerable:!0,writable:!0,configurable:!0}):o.paramSet[d]=!0},m.prototype.parseRestElement=function(o){var l=this.createNode();this.expect("...");var p=this.parsePattern(o);return this.match("=")&&this.throwError(a.Messages.DefaultRestParameter),this.match(")")||this.throwError(a.Messages.ParameterAfterRestParameter),this.finalize(l,new n.RestElement(p))},m.prototype.parseFormalParameter=function(o){for(var l=[],p=this.match("...")?this.parseRestElement(l):this.parsePatternWithDefault(l),d=0;d<l.length;d++)this.validateParam(o,l[d],l[d].value);o.simple=o.simple&&p instanceof n.Identifier,o.params.push(p)},m.prototype.parseFormalParameters=function(o){var l;if(l={simple:!0,params:[],firstRestricted:o},this.expect("("),!this.match(")"))for(l.paramSet={};this.lookahead.type!==2&&(this.parseFormalParameter(l),!(this.match(")")||(this.expect(","),this.match(")")))););return this.expect(")"),{simple:l.simple,params:l.params,stricted:l.stricted,firstRestricted:l.firstRestricted,message:l.message}},m.prototype.matchAsyncFunction=function(){var o=this.matchContextualKeyword("async");if(o){var l=this.scanner.saveState();this.scanner.scanComments();var p=this.scanner.lex();this.scanner.restoreState(l),o=l.lineNumber===p.lineNumber&&p.type===4&&p.value==="function"}return o},m.prototype.parseFunctionDeclaration=function(o){var l=this.createNode(),p=this.matchContextualKeyword("async");p&&this.nextToken(),this.expectKeyword("function");var d=p?!1:this.match("*");d&&this.nextToken();var x,g=null,E=null;if(!o||!this.match("(")){var b=this.lookahead;g=this.parseVariableIdentifier(),this.context.strict?this.scanner.isRestrictedWord(b.value)&&this.tolerateUnexpectedToken(b,a.Messages.StrictFunctionName):this.scanner.isRestrictedWord(b.value)?(E=b,x=a.Messages.StrictFunctionName):this.scanner.isStrictModeReservedWord(b.value)&&(E=b,x=a.Messages.StrictReservedWord)}var A=this.context.await,T=this.context.allowYield;this.context.await=p,this.context.allowYield=!d;var D=this.parseFormalParameters(E),L=D.params,q=D.stricted;E=D.firstRestricted,D.message&&(x=D.message);var ee=this.context.strict,he=this.context.allowStrictDirective;this.context.allowStrictDirective=D.simple;var xe=this.parseFunctionSourceElements();return this.context.strict&&E&&this.throwUnexpectedToken(E,x),this.context.strict&&q&&this.tolerateUnexpectedToken(q,x),this.context.strict=ee,this.context.allowStrictDirective=he,this.context.await=A,this.context.allowYield=T,p?this.finalize(l,new n.AsyncFunctionDeclaration(g,L,xe)):this.finalize(l,new n.FunctionDeclaration(g,L,xe,d))},m.prototype.parseFunctionExpression=function(){var o=this.createNode(),l=this.matchContextualKeyword("async");l&&this.nextToken(),this.expectKeyword("function");var p=l?!1:this.match("*");p&&this.nextToken();var d,x=null,g,E=this.context.await,b=this.context.allowYield;if(this.context.await=l,this.context.allowYield=!p,!this.match("(")){var A=this.lookahead;x=!this.context.strict&&!p&&this.matchKeyword("yield")?this.parseIdentifierName():this.parseVariableIdentifier(),this.context.strict?this.scanner.isRestrictedWord(A.value)&&this.tolerateUnexpectedToken(A,a.Messages.StrictFunctionName):this.scanner.isRestrictedWord(A.value)?(g=A,d=a.Messages.StrictFunctionName):this.scanner.isStrictModeReservedWord(A.value)&&(g=A,d=a.Messages.StrictReservedWord)}var T=this.parseFormalParameters(g),D=T.params,L=T.stricted;g=T.firstRestricted,T.message&&(d=T.message);var q=this.context.strict,ee=this.context.allowStrictDirective;this.context.allowStrictDirective=T.simple;var he=this.parseFunctionSourceElements();return this.context.strict&&g&&this.throwUnexpectedToken(g,d),this.context.strict&&L&&this.tolerateUnexpectedToken(L,d),this.context.strict=q,this.context.allowStrictDirective=ee,this.context.await=E,this.context.allowYield=b,l?this.finalize(o,new n.AsyncFunctionExpression(x,D,he)):this.finalize(o,new n.FunctionExpression(x,D,he,p))},m.prototype.parseDirective=function(){var o=this.lookahead,l=this.createNode(),p=this.parseExpression(),d=p.type===c.Syntax.Literal?this.getTokenRaw(o).slice(1,-1):null;return this.consumeSemicolon(),this.finalize(l,d?new n.Directive(p,d):new n.ExpressionStatement(p))},m.prototype.parseDirectivePrologues=function(){for(var o=null,l=[];;){var p=this.lookahead;if(p.type!==8)break;var d=this.parseDirective();l.push(d);var x=d.directive;if(typeof x!="string")break;x==="use strict"?(this.context.strict=!0,o&&this.tolerateUnexpectedToken(o,a.Messages.StrictOctalLiteral),this.context.allowStrictDirective||this.tolerateUnexpectedToken(p,a.Messages.IllegalLanguageModeDirective)):!o&&p.octal&&(o=p)}return l},m.prototype.qualifiedPropertyName=function(o){switch(o.type){case 3:case 8:case 1:case 5:case 6:case 4:return!0;case 7:return o.value==="[";default:break}return!1},m.prototype.parseGetterMethod=function(){var o=this.createNode(),l=!1,p=this.context.allowYield;this.context.allowYield=!l;var d=this.parseFormalParameters();d.params.length>0&&this.tolerateError(a.Messages.BadGetterArity);var x=this.parsePropertyMethod(d);return this.context.allowYield=p,this.finalize(o,new n.FunctionExpression(null,d.params,x,l))},m.prototype.parseSetterMethod=function(){var o=this.createNode(),l=!1,p=this.context.allowYield;this.context.allowYield=!l;var d=this.parseFormalParameters();d.params.length!==1?this.tolerateError(a.Messages.BadSetterArity):d.params[0]instanceof n.RestElement&&this.tolerateError(a.Messages.BadSetterRestParameter);var x=this.parsePropertyMethod(d);return this.context.allowYield=p,this.finalize(o,new n.FunctionExpression(null,d.params,x,l))},m.prototype.parseGeneratorMethod=function(){var o=this.createNode(),l=!0,p=this.context.allowYield;this.context.allowYield=!0;var d=this.parseFormalParameters();this.context.allowYield=!1;var x=this.parsePropertyMethod(d);return this.context.allowYield=p,this.finalize(o,new n.FunctionExpression(null,d.params,x,l))},m.prototype.isStartOfExpression=function(){var o=!0,l=this.lookahead.value;switch(this.lookahead.type){case 7:o=l==="["||l==="("||l==="{"||l==="+"||l==="-"||l==="!"||l==="~"||l==="++"||l==="--"||l==="/"||l==="/=";break;case 4:o=l==="class"||l==="delete"||l==="function"||l==="let"||l==="new"||l==="super"||l==="this"||l==="typeof"||l==="void"||l==="yield";break;default:break}return o},m.prototype.parseYieldExpression=function(){var o=this.createNode();this.expectKeyword("yield");var l=null,p=!1;if(!this.hasLineTerminator){var d=this.context.allowYield;this.context.allowYield=!1,p=this.match("*"),p?(this.nextToken(),l=this.parseAssignmentExpression()):this.isStartOfExpression()&&(l=this.parseAssignmentExpression()),this.context.allowYield=d}return this.finalize(o,new n.YieldExpression(l,p))},m.prototype.parseClassElement=function(o){var l=this.lookahead,p=this.createNode(),d="",x=null,g=null,E=!1,b=!1,A=!1,T=!1;if(this.match("*"))this.nextToken();else{E=this.match("["),x=this.parseObjectPropertyKey();var D=x;if(D.name==="static"&&(this.qualifiedPropertyName(this.lookahead)||this.match("*"))&&(l=this.lookahead,A=!0,E=this.match("["),this.match("*")?this.nextToken():x=this.parseObjectPropertyKey()),l.type===3&&!this.hasLineTerminator&&l.value==="async"){var L=this.lookahead.value;L!==":"&&L!=="("&&L!=="*"&&(T=!0,l=this.lookahead,x=this.parseObjectPropertyKey(),l.type===3&&l.value==="constructor"&&this.tolerateUnexpectedToken(l,a.Messages.ConstructorIsAsync))}}var q=this.qualifiedPropertyName(this.lookahead);return l.type===3?l.value==="get"&&q?(d="get",E=this.match("["),x=this.parseObjectPropertyKey(),this.context.allowYield=!1,g=this.parseGetterMethod()):l.value==="set"&&q&&(d="set",E=this.match("["),x=this.parseObjectPropertyKey(),g=this.parseSetterMethod()):l.type===7&&l.value==="*"&&q&&(d="init",E=this.match("["),x=this.parseObjectPropertyKey(),g=this.parseGeneratorMethod(),b=!0),!d&&x&&this.match("(")&&(d="init",g=T?this.parsePropertyMethodAsyncFunction():this.parsePropertyMethodFunction(),b=!0),d||this.throwUnexpectedToken(this.lookahead),d==="init"&&(d="method"),E||(A&&this.isPropertyKey(x,"prototype")&&this.throwUnexpectedToken(l,a.Messages.StaticPrototype),!A&&this.isPropertyKey(x,"constructor")&&((d!=="method"||!b||g&&g.generator)&&this.throwUnexpectedToken(l,a.Messages.ConstructorSpecialMethod),o.value?this.throwUnexpectedToken(l,a.Messages.DuplicateConstructor):o.value=!0,d="constructor")),this.finalize(p,new n.MethodDefinition(x,E,g,d,A))},m.prototype.parseClassElementList=function(){var o=[],l={value:!1};for(this.expect("{");!this.match("}");)this.match(";")?this.nextToken():o.push(this.parseClassElement(l));return this.expect("}"),o},m.prototype.parseClassBody=function(){var o=this.createNode(),l=this.parseClassElementList();return this.finalize(o,new n.ClassBody(l))},m.prototype.parseClassDeclaration=function(o){var l=this.createNode(),p=this.context.strict;this.context.strict=!0,this.expectKeyword("class");var d=o&&this.lookahead.type!==3?null:this.parseVariableIdentifier(),x=null;this.matchKeyword("extends")&&(this.nextToken(),x=this.isolateCoverGrammar(this.parseLeftHandSideExpressionAllowCall));var g=this.parseClassBody();return this.context.strict=p,this.finalize(l,new n.ClassDeclaration(d,x,g))},m.prototype.parseClassExpression=function(){var o=this.createNode(),l=this.context.strict;this.context.strict=!0,this.expectKeyword("class");var p=this.lookahead.type===3?this.parseVariableIdentifier():null,d=null;this.matchKeyword("extends")&&(this.nextToken(),d=this.isolateCoverGrammar(this.parseLeftHandSideExpressionAllowCall));var x=this.parseClassBody();return this.context.strict=l,this.finalize(o,new n.ClassExpression(p,d,x))},m.prototype.parseModule=function(){this.context.strict=!0,this.context.isModule=!0,this.scanner.isModule=!0;for(var o=this.createNode(),l=this.parseDirectivePrologues();this.lookahead.type!==2;)l.push(this.parseStatementListItem());return this.finalize(o,new n.Module(l))},m.prototype.parseScript=function(){for(var o=this.createNode(),l=this.parseDirectivePrologues();this.lookahead.type!==2;)l.push(this.parseStatementListItem());return this.finalize(o,new n.Script(l))},m.prototype.parseModuleSpecifier=function(){var o=this.createNode();this.lookahead.type!==8&&this.throwError(a.Messages.InvalidModuleSpecifier);var l=this.nextToken(),p=this.getTokenRaw(l);return this.finalize(o,new n.Literal(l.value,p))},m.prototype.parseImportSpecifier=function(){var o=this.createNode(),l,p;return this.lookahead.type===3?(l=this.parseVariableIdentifier(),p=l,this.matchContextualKeyword("as")&&(this.nextToken(),p=this.parseVariableIdentifier())):(l=this.parseIdentifierName(),p=l,this.matchContextualKeyword("as")?(this.nextToken(),p=this.parseVariableIdentifier()):this.throwUnexpectedToken(this.nextToken())),this.finalize(o,new n.ImportSpecifier(p,l))},m.prototype.parseNamedImports=function(){this.expect("{");for(var o=[];!this.match("}");)o.push(this.parseImportSpecifier()),this.match("}")||this.expect(",");return this.expect("}"),o},m.prototype.parseImportDefaultSpecifier=function(){var o=this.createNode(),l=this.parseIdentifierName();return this.finalize(o,new n.ImportDefaultSpecifier(l))},m.prototype.parseImportNamespaceSpecifier=function(){var o=this.createNode();this.expect("*"),this.matchContextualKeyword("as")||this.throwError(a.Messages.NoAsAfterImportNamespace),this.nextToken();var l=this.parseIdentifierName();return this.finalize(o,new n.ImportNamespaceSpecifier(l))},m.prototype.parseImportDeclaration=function(){this.context.inFunctionBody&&this.throwError(a.Messages.IllegalImportDeclaration);var o=this.createNode();this.expectKeyword("import");var l,p=[];if(this.lookahead.type===8)l=this.parseModuleSpecifier();else{if(this.match("{")?p=p.concat(this.parseNamedImports()):this.match("*")?p.push(this.parseImportNamespaceSpecifier()):this.isIdentifierName(this.lookahead)&&!this.matchKeyword("default")?(p.push(this.parseImportDefaultSpecifier()),this.match(",")&&(this.nextToken(),this.match("*")?p.push(this.parseImportNamespaceSpecifier()):this.match("{")?p=p.concat(this.parseNamedImports()):this.throwUnexpectedToken(this.lookahead))):this.throwUnexpectedToken(this.nextToken()),!this.matchContextualKeyword("from")){var d=this.lookahead.value?a.Messages.UnexpectedToken:a.Messages.MissingFromClause;this.throwError(d,this.lookahead.value)}this.nextToken(),l=this.parseModuleSpecifier()}return this.consumeSemicolon(),this.finalize(o,new n.ImportDeclaration(p,l))},m.prototype.parseExportSpecifier=function(){var o=this.createNode(),l=this.parseIdentifierName(),p=l;return this.matchContextualKeyword("as")&&(this.nextToken(),p=this.parseIdentifierName()),this.finalize(o,new n.ExportSpecifier(l,p))},m.prototype.parseExportDeclaration=function(){this.context.inFunctionBody&&this.throwError(a.Messages.IllegalExportDeclaration);var o=this.createNode();this.expectKeyword("export");var l;if(this.matchKeyword("default"))if(this.nextToken(),this.matchKeyword("function")){var p=this.parseFunctionDeclaration(!0);l=this.finalize(o,new n.ExportDefaultDeclaration(p))}else if(this.matchKeyword("class")){var p=this.parseClassDeclaration(!0);l=this.finalize(o,new n.ExportDefaultDeclaration(p))}else if(this.matchContextualKeyword("async")){var p=this.matchAsyncFunction()?this.parseFunctionDeclaration(!0):this.parseAssignmentExpression();l=this.finalize(o,new n.ExportDefaultDeclaration(p))}else{this.matchContextualKeyword("from")&&this.throwError(a.Messages.UnexpectedToken,this.lookahead.value);var p=this.match("{")?this.parseObjectInitializer():this.match("[")?this.parseArrayInitializer():this.parseAssignmentExpression();this.consumeSemicolon(),l=this.finalize(o,new n.ExportDefaultDeclaration(p))}else if(this.match("*")){if(this.nextToken(),!this.matchContextualKeyword("from")){var d=this.lookahead.value?a.Messages.UnexpectedToken:a.Messages.MissingFromClause;this.throwError(d,this.lookahead.value)}this.nextToken();var x=this.parseModuleSpecifier();this.consumeSemicolon(),l=this.finalize(o,new n.ExportAllDeclaration(x))}else if(this.lookahead.type===4){var p=void 0;switch(this.lookahead.value){case"let":case"const":p=this.parseLexicalDeclaration({inFor:!1});break;case"var":case"class":case"function":p=this.parseStatementListItem();break;default:this.throwUnexpectedToken(this.lookahead)}l=this.finalize(o,new n.ExportNamedDeclaration(p,[],null))}else if(this.matchAsyncFunction()){var p=this.parseFunctionDeclaration();l=this.finalize(o,new n.ExportNamedDeclaration(p,[],null))}else{var g=[],E=null,b=!1;for(this.expect("{");!this.match("}");)b=b||this.matchKeyword("default"),g.push(this.parseExportSpecifier()),this.match("}")||this.expect(",");if(this.expect("}"),this.matchContextualKeyword("from"))this.nextToken(),E=this.parseModuleSpecifier(),this.consumeSemicolon();else if(b){var d=this.lookahead.value?a.Messages.UnexpectedToken:a.Messages.MissingFromClause;this.throwError(d,this.lookahead.value)}else this.consumeSemicolon();l=this.finalize(o,new n.ExportNamedDeclaration(null,g,E))}return l},m}();r.Parser=y},function(i,r){"use strict";Object.defineProperty(r,"__esModule",{value:!0});function e(t,s){if(!t)throw new Error("ASSERT: "+s)}r.assert=e},function(i,r){"use strict";Object.defineProperty(r,"__esModule",{value:!0});var e=function(){function t(){this.errors=[],this.tolerant=!1}return t.prototype.recordError=function(s){this.errors.push(s)},t.prototype.tolerate=function(s){if(this.tolerant)this.recordError(s);else throw s},t.prototype.constructError=function(s,a){var n=new Error(s);try{throw n}catch(u){Object.create&&Object.defineProperty&&(n=Object.create(u),Object.defineProperty(n,"column",{value:a}))}return n},t.prototype.createError=function(s,a,n,u){var c="Line "+a+": "+u,f=this.constructError(c,n);return f.index=s,f.lineNumber=a,f.description=u,f},t.prototype.throwError=function(s,a,n,u){throw this.createError(s,a,n,u)},t.prototype.tolerateError=function(s,a,n,u){var c=this.createError(s,a,n,u);if(this.tolerant)this.recordError(c);else throw c},t}();r.ErrorHandler=e},function(i,r){"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.Messages={BadGetterArity:"Getter must not have any formal parameters",BadSetterArity:"Setter must have exactly one formal parameter",BadSetterRestParameter:"Setter function argument must not be a rest parameter",ConstructorIsAsync:"Class constructor may not be an async method",ConstructorSpecialMethod:"Class constructor may not be an accessor",DeclarationMissingInitializer:"Missing initializer in %0 declaration",DefaultRestParameter:"Unexpected token =",DuplicateBinding:"Duplicate binding %0",DuplicateConstructor:"A class may only have one constructor",DuplicateProtoProperty:"Duplicate __proto__ fields are not allowed in object literals",ForInOfLoopInitializer:"%0 loop variable declaration may not have an initializer",GeneratorInLegacyContext:"Generator declarations are not allowed in legacy contexts",IllegalBreak:"Illegal break statement",IllegalContinue:"Illegal continue statement",IllegalExportDeclaration:"Unexpected token",IllegalImportDeclaration:"Unexpected token",IllegalLanguageModeDirective:"Illegal 'use strict' directive in function with non-simple parameter list",IllegalReturn:"Illegal return statement",InvalidEscapedReservedWord:"Keyword must not contain escaped characters",InvalidHexEscapeSequence:"Invalid hexadecimal escape sequence",InvalidLHSInAssignment:"Invalid left-hand side in assignment",InvalidLHSInForIn:"Invalid left-hand side in for-in",InvalidLHSInForLoop:"Invalid left-hand side in for-loop",InvalidModuleSpecifier:"Unexpected token",InvalidRegExp:"Invalid regular expression",LetInLexicalBinding:"let is disallowed as a lexically bound name",MissingFromClause:"Unexpected token",MultipleDefaultsInSwitch:"More than one default clause in switch statement",NewlineAfterThrow:"Illegal newline after throw",NoAsAfterImportNamespace:"Unexpected token",NoCatchOrFinally:"Missing catch or finally after try",ParameterAfterRestParameter:"Rest parameter must be last formal parameter",Redeclaration:"%0 '%1' has already been declared",StaticPrototype:"Classes may not have static property named prototype",StrictCatchVariable:"Catch variable may not be eval or arguments in strict mode",StrictDelete:"Delete of an unqualified identifier in strict mode.",StrictFunction:"In strict mode code, functions can only be declared at top level or inside a block",StrictFunctionName:"Function name may not be eval or arguments in strict mode",StrictLHSAssignment:"Assignment to eval or arguments is not allowed in strict mode",StrictLHSPostfix:"Postfix increment/decrement may not have eval or arguments operand in strict mode",StrictLHSPrefix:"Prefix increment/decrement may not have eval or arguments operand in strict mode",StrictModeWith:"Strict mode code may not include a with statement",StrictOctalLiteral:"Octal literals are not allowed in strict mode.",StrictParamDupe:"Strict mode function may not have duplicate parameter names",StrictParamName:"Parameter name eval or arguments is not allowed in strict mode",StrictReservedWord:"Use of future reserved word in strict mode",StrictVarName:"Variable name may not be eval or arguments in strict mode",TemplateOctalLiteral:"Octal literals are not allowed in template strings.",UnexpectedEOS:"Unexpected end of input",UnexpectedIdentifier:"Unexpected identifier",UnexpectedNumber:"Unexpected number",UnexpectedReserved:"Unexpected reserved word",UnexpectedString:"Unexpected string",UnexpectedTemplate:"Unexpected quasi %0",UnexpectedToken:"Unexpected token %0",UnexpectedTokenIllegal:"Unexpected token ILLEGAL",UnknownLabel:"Undefined label '%0'",UnterminatedRegExp:"Invalid regular expression: missing /"}},function(i,r,e){"use strict";Object.defineProperty(r,"__esModule",{value:!0});var t=e(9),s=e(4),a=e(11);function n(f){return"0123456789abcdef".indexOf(f.toLowerCase())}function u(f){return"01234567".indexOf(f)}var c=function(){function f(h,y){this.source=h,this.errorHandler=y,this.trackComment=!1,this.isModule=!1,this.length=h.length,this.index=0,this.lineNumber=h.length>0?1:0,this.lineStart=0,this.curlyStack=[]}return f.prototype.saveState=function(){return{index:this.index,lineNumber:this.lineNumber,lineStart:this.lineStart}},f.prototype.restoreState=function(h){this.index=h.index,this.lineNumber=h.lineNumber,this.lineStart=h.lineStart},f.prototype.eof=function(){return this.index>=this.length},f.prototype.throwUnexpectedToken=function(h){return h===void 0&&(h=a.Messages.UnexpectedTokenIllegal),this.errorHandler.throwError(this.index,this.lineNumber,this.index-this.lineStart+1,h)},f.prototype.tolerateUnexpectedToken=function(h){h===void 0&&(h=a.Messages.UnexpectedTokenIllegal),this.errorHandler.tolerateError(this.index,this.lineNumber,this.index-this.lineStart+1,h)},f.prototype.skipSingleLineComment=function(h){var y=[],m,o;for(this.trackComment&&(y=[],m=this.index-h,o={start:{line:this.lineNumber,column:this.index-this.lineStart-h},end:{}});!this.eof();){var l=this.source.charCodeAt(this.index);if(++this.index,s.Character.isLineTerminator(l)){if(this.trackComment){o.end={line:this.lineNumber,column:this.index-this.lineStart-1};var p={multiLine:!1,slice:[m+h,this.index-1],range:[m,this.index-1],loc:o};y.push(p)}return l===13&&this.source.charCodeAt(this.index)===10&&++this.index,++this.lineNumber,this.lineStart=this.index,y}}if(this.trackComment){o.end={line:this.lineNumber,column:this.index-this.lineStart};var p={multiLine:!1,slice:[m+h,this.index],range:[m,this.index],loc:o};y.push(p)}return y},f.prototype.skipMultiLineComment=function(){var h=[],y,m;for(this.trackComment&&(h=[],y=this.index-2,m={start:{line:this.lineNumber,column:this.index-this.lineStart-2},end:{}});!this.eof();){var o=this.source.charCodeAt(this.index);if(s.Character.isLineTerminator(o))o===13&&this.source.charCodeAt(this.index+1)===10&&++this.index,++this.lineNumber,++this.index,this.lineStart=this.index;else if(o===42){if(this.source.charCodeAt(this.index+1)===47){if(this.index+=2,this.trackComment){m.end={line:this.lineNumber,column:this.index-this.lineStart};var l={multiLine:!0,slice:[y+2,this.index-2],range:[y,this.index],loc:m};h.push(l)}return h}++this.index}else++this.index}if(this.trackComment){m.end={line:this.lineNumber,column:this.index-this.lineStart};var l={multiLine:!0,slice:[y+2,this.index],range:[y,this.index],loc:m};h.push(l)}return this.tolerateUnexpectedToken(),h},f.prototype.scanComments=function(){var h;this.trackComment&&(h=[]);for(var y=this.index===0;!this.eof();){var m=this.source.charCodeAt(this.index);if(s.Character.isWhiteSpace(m))++this.index;else if(s.Character.isLineTerminator(m))++this.index,m===13&&this.source.charCodeAt(this.index)===10&&++this.index,++this.lineNumber,this.lineStart=this.index,y=!0;else if(m===47)if(m=this.source.charCodeAt(this.index+1),m===47){this.index+=2;var o=this.skipSingleLineComment(2);this.trackComment&&(h=h.concat(o)),y=!0}else if(m===42){this.index+=2;var o=this.skipMultiLineComment();this.trackComment&&(h=h.concat(o))}else break;else if(y&&m===45)if(this.source.charCodeAt(this.index+1)===45&&this.source.charCodeAt(this.index+2)===62){this.index+=3;var o=this.skipSingleLineComment(3);this.trackComment&&(h=h.concat(o))}else break;else if(m===60&&!this.isModule)if(this.source.slice(this.index+1,this.index+4)==="!--"){this.index+=4;var o=this.skipSingleLineComment(4);this.trackComment&&(h=h.concat(o))}else break;else break}return h},f.prototype.isFutureReservedWord=function(h){switch(h){case"enum":case"export":case"import":case"super":return!0;default:return!1}},f.prototype.isStrictModeReservedWord=function(h){switch(h){case"implements":case"interface":case"package":case"private":case"protected":case"public":case"static":case"yield":case"let":return!0;default:return!1}},f.prototype.isRestrictedWord=function(h){return h==="eval"||h==="arguments"},f.prototype.isKeyword=function(h){switch(h.length){case 2:return h==="if"||h==="in"||h==="do";case 3:return h==="var"||h==="for"||h==="new"||h==="try"||h==="let";case 4:return h==="this"||h==="else"||h==="case"||h==="void"||h==="with"||h==="enum";case 5:return h==="while"||h==="break"||h==="catch"||h==="throw"||h==="const"||h==="yield"||h==="class"||h==="super";case 6:return h==="return"||h==="typeof"||h==="delete"||h==="switch"||h==="export"||h==="import";case 7:return h==="default"||h==="finally"||h==="extends";case 8:return h==="function"||h==="continue"||h==="debugger";case 10:return h==="instanceof";default:return!1}},f.prototype.codePointAt=function(h){var y=this.source.charCodeAt(h);if(y>=55296&&y<=56319){var m=this.source.charCodeAt(h+1);if(m>=56320&&m<=57343){var o=y;y=(o-55296)*1024+m-56320+65536}}return y},f.prototype.scanHexEscape=function(h){for(var y=h==="u"?4:2,m=0,o=0;o<y;++o)if(!this.eof()&&s.Character.isHexDigit(this.source.charCodeAt(this.index)))m=m*16+n(this.source[this.index++]);else return null;return String.fromCharCode(m)},f.prototype.scanUnicodeCodePointEscape=function(){var h=this.source[this.index],y=0;for(h==="}"&&this.throwUnexpectedToken();!this.eof()&&(h=this.source[this.index++],!!s.Character.isHexDigit(h.charCodeAt(0)));)y=y*16+n(h);return(y>1114111||h!=="}")&&this.throwUnexpectedToken(),s.Character.fromCodePoint(y)},f.prototype.getIdentifier=function(){for(var h=this.index++;!this.eof();){var y=this.source.charCodeAt(this.index);if(y===92)return this.index=h,this.getComplexIdentifier();if(y>=55296&&y<57343)return this.index=h,this.getComplexIdentifier();if(s.Character.isIdentifierPart(y))++this.index;else break}return this.source.slice(h,this.index)},f.prototype.getComplexIdentifier=function(){var h=this.codePointAt(this.index),y=s.Character.fromCodePoint(h);this.index+=y.length;var m;for(h===92&&(this.source.charCodeAt(this.index)!==117&&this.throwUnexpectedToken(),++this.index,this.source[this.index]==="{"?(++this.index,m=this.scanUnicodeCodePointEscape()):(m=this.scanHexEscape("u"),(m===null||m==="\\"||!s.Character.isIdentifierStart(m.charCodeAt(0)))&&this.throwUnexpectedToken()),y=m);!this.eof()&&(h=this.codePointAt(this.index),!!s.Character.isIdentifierPart(h));)m=s.Character.fromCodePoint(h),y+=m,this.index+=m.length,h===92&&(y=y.substr(0,y.length-1),this.source.charCodeAt(this.index)!==117&&this.throwUnexpectedToken(),++this.index,this.source[this.index]==="{"?(++this.index,m=this.scanUnicodeCodePointEscape()):(m=this.scanHexEscape("u"),(m===null||m==="\\"||!s.Character.isIdentifierPart(m.charCodeAt(0)))&&this.throwUnexpectedToken()),y+=m);return y},f.prototype.octalToDecimal=function(h){var y=h!=="0",m=u(h);return!this.eof()&&s.Character.isOctalDigit(this.source.charCodeAt(this.index))&&(y=!0,m=m*8+u(this.source[this.index++]),"0123".indexOf(h)>=0&&!this.eof()&&s.Character.isOctalDigit(this.source.charCodeAt(this.index))&&(m=m*8+u(this.source[this.index++]))),{code:m,octal:y}},f.prototype.scanIdentifier=function(){var h,y=this.index,m=this.source.charCodeAt(y)===92?this.getComplexIdentifier():this.getIdentifier();if(m.length===1?h=3:this.isKeyword(m)?h=4:m==="null"?h=5:m==="true"||m==="false"?h=1:h=3,h!==3&&y+m.length!==this.index){var o=this.index;this.index=y,this.tolerateUnexpectedToken(a.Messages.InvalidEscapedReservedWord),this.index=o}return{type:h,value:m,lineNumber:this.lineNumber,lineStart:this.lineStart,start:y,end:this.index}},f.prototype.scanPunctuator=function(){var h=this.index,y=this.source[this.index];switch(y){case"(":case"{":y==="{"&&this.curlyStack.push("{"),++this.index;break;case".":++this.index,this.source[this.index]==="."&&this.source[this.index+1]==="."&&(this.index+=2,y="...");break;case"}":++this.index,this.curlyStack.pop();break;case")":case";":case",":case"[":case"]":case":":case"?":case"~":++this.index;break;default:y=this.source.substr(this.index,4),y===">>>="?this.index+=4:(y=y.substr(0,3),y==="==="||y==="!=="||y===">>>"||y==="<<="||y===">>="||y==="**="?this.index+=3:(y=y.substr(0,2),y==="&&"||y==="||"||y==="=="||y==="!="||y==="+="||y==="-="||y==="*="||y==="/="||y==="++"||y==="--"||y==="<<"||y===">>"||y==="&="||y==="|="||y==="^="||y==="%="||y==="<="||y===">="||y==="=>"||y==="**"?this.index+=2:(y=this.source[this.index],"<>=!+-*%&|^/".indexOf(y)>=0&&++this.index)))}return this.index===h&&this.throwUnexpectedToken(),{type:7,value:y,lineNumber:this.lineNumber,lineStart:this.lineStart,start:h,end:this.index}},f.prototype.scanHexLiteral=function(h){for(var y="";!this.eof()&&s.Character.isHexDigit(this.source.charCodeAt(this.index));)y+=this.source[this.index++];return y.length===0&&this.throwUnexpectedToken(),s.Character.isIdentifierStart(this.source.charCodeAt(this.index))&&this.throwUnexpectedToken(),{type:6,value:parseInt("0x"+y,16),lineNumber:this.lineNumber,lineStart:this.lineStart,start:h,end:this.index}},f.prototype.scanBinaryLiteral=function(h){for(var y="",m;!this.eof()&&(m=this.source[this.index],!(m!=="0"&&m!=="1"));)y+=this.source[this.index++];return y.length===0&&this.throwUnexpectedToken(),this.eof()||(m=this.source.charCodeAt(this.index),(s.Character.isIdentifierStart(m)||s.Character.isDecimalDigit(m))&&this.throwUnexpectedToken()),{type:6,value:parseInt(y,2),lineNumber:this.lineNumber,lineStart:this.lineStart,start:h,end:this.index}},f.prototype.scanOctalLiteral=function(h,y){var m="",o=!1;for(s.Character.isOctalDigit(h.charCodeAt(0))?(o=!0,m="0"+this.source[this.index++]):++this.index;!this.eof()&&s.Character.isOctalDigit(this.source.charCodeAt(this.index));)m+=this.source[this.index++];return!o&&m.length===0&&this.throwUnexpectedToken(),(s.Character.isIdentifierStart(this.source.charCodeAt(this.index))||s.Character.isDecimalDigit(this.source.charCodeAt(this.index)))&&this.throwUnexpectedToken(),{type:6,value:parseInt(m,8),octal:o,lineNumber:this.lineNumber,lineStart:this.lineStart,start:y,end:this.index}},f.prototype.isImplicitOctalLiteral=function(){for(var h=this.index+1;h<this.length;++h){var y=this.source[h];if(y==="8"||y==="9")return!1;if(!s.Character.isOctalDigit(y.charCodeAt(0)))return!0}return!0},f.prototype.scanNumericLiteral=function(){var h=this.index,y=this.source[h];t.assert(s.Character.isDecimalDigit(y.charCodeAt(0))||y===".","Numeric literal must start with a decimal digit or a decimal point");var m="";if(y!=="."){if(m=this.source[this.index++],y=this.source[this.index],m==="0"){if(y==="x"||y==="X")return++this.index,this.scanHexLiteral(h);if(y==="b"||y==="B")return++this.index,this.scanBinaryLiteral(h);if(y==="o"||y==="O")return this.scanOctalLiteral(y,h);if(y&&s.Character.isOctalDigit(y.charCodeAt(0))&&this.isImplicitOctalLiteral())return this.scanOctalLiteral(y,h)}for(;s.Character.isDecimalDigit(this.source.charCodeAt(this.index));)m+=this.source[this.index++];y=this.source[this.index]}if(y==="."){for(m+=this.source[this.index++];s.Character.isDecimalDigit(this.source.charCodeAt(this.index));)m+=this.source[this.index++];y=this.source[this.index]}if(y==="e"||y==="E")if(m+=this.source[this.index++],y=this.source[this.index],(y==="+"||y==="-")&&(m+=this.source[this.index++]),s.Character.isDecimalDigit(this.source.charCodeAt(this.index)))for(;s.Character.isDecimalDigit(this.source.charCodeAt(this.index));)m+=this.source[this.index++];else this.throwUnexpectedToken();return s.Character.isIdentifierStart(this.source.charCodeAt(this.index))&&this.throwUnexpectedToken(),{type:6,value:parseFloat(m),lineNumber:this.lineNumber,lineStart:this.lineStart,start:h,end:this.index}},f.prototype.scanStringLiteral=function(){var h=this.index,y=this.source[h];t.assert(y==="'"||y==='"',"String literal must starts with a quote"),++this.index;for(var m=!1,o="";!this.eof();){var l=this.source[this.index++];if(l===y){y="";break}else if(l==="\\")if(l=this.source[this.index++],!l||!s.Character.isLineTerminator(l.charCodeAt(0)))switch(l){case"u":if(this.source[this.index]==="{")++this.index,o+=this.scanUnicodeCodePointEscape();else{var p=this.scanHexEscape(l);p===null&&this.throwUnexpectedToken(),o+=p}break;case"x":var d=this.scanHexEscape(l);d===null&&this.throwUnexpectedToken(a.Messages.InvalidHexEscapeSequence),o+=d;break;case"n":o+=`
5
+ `;break;case"r":o+="\r";break;case"t":o+=" ";break;case"b":o+="\b";break;case"f":o+="\f";break;case"v":o+="\v";break;case"8":case"9":o+=l,this.tolerateUnexpectedToken();break;default:if(l&&s.Character.isOctalDigit(l.charCodeAt(0))){var x=this.octalToDecimal(l);m=x.octal||m,o+=String.fromCharCode(x.code)}else o+=l;break}else++this.lineNumber,l==="\r"&&this.source[this.index]===`
6
+ `&&++this.index,this.lineStart=this.index;else{if(s.Character.isLineTerminator(l.charCodeAt(0)))break;o+=l}}return y!==""&&(this.index=h,this.throwUnexpectedToken()),{type:8,value:o,octal:m,lineNumber:this.lineNumber,lineStart:this.lineStart,start:h,end:this.index}},f.prototype.scanTemplate=function(){var h="",y=!1,m=this.index,o=this.source[m]==="`",l=!1,p=2;for(++this.index;!this.eof();){var d=this.source[this.index++];if(d==="`"){p=1,l=!0,y=!0;break}else if(d==="$"){if(this.source[this.index]==="{"){this.curlyStack.push("${"),++this.index,y=!0;break}h+=d}else if(d==="\\")if(d=this.source[this.index++],s.Character.isLineTerminator(d.charCodeAt(0)))++this.lineNumber,d==="\r"&&this.source[this.index]===`
7
+ `&&++this.index,this.lineStart=this.index;else switch(d){case"n":h+=`
8
+ `;break;case"r":h+="\r";break;case"t":h+=" ";break;case"u":if(this.source[this.index]==="{")++this.index,h+=this.scanUnicodeCodePointEscape();else{var x=this.index,g=this.scanHexEscape(d);g!==null?h+=g:(this.index=x,h+=d)}break;case"x":var E=this.scanHexEscape(d);E===null&&this.throwUnexpectedToken(a.Messages.InvalidHexEscapeSequence),h+=E;break;case"b":h+="\b";break;case"f":h+="\f";break;case"v":h+="\v";break;default:d==="0"?(s.Character.isDecimalDigit(this.source.charCodeAt(this.index))&&this.throwUnexpectedToken(a.Messages.TemplateOctalLiteral),h+="\0"):s.Character.isOctalDigit(d.charCodeAt(0))?this.throwUnexpectedToken(a.Messages.TemplateOctalLiteral):h+=d;break}else s.Character.isLineTerminator(d.charCodeAt(0))?(++this.lineNumber,d==="\r"&&this.source[this.index]===`
9
+ `&&++this.index,this.lineStart=this.index,h+=`
10
+ `):h+=d}return y||this.throwUnexpectedToken(),o||this.curlyStack.pop(),{type:10,value:this.source.slice(m+1,this.index-p),cooked:h,head:o,tail:l,lineNumber:this.lineNumber,lineStart:this.lineStart,start:m,end:this.index}},f.prototype.testRegExp=function(h,y){var m="\uFFFF",o=h,l=this;y.indexOf("u")>=0&&(o=o.replace(/\\u\{([0-9a-fA-F]+)\}|\\u([a-fA-F0-9]{4})/g,function(p,d,x){var g=parseInt(d||x,16);return g>1114111&&l.throwUnexpectedToken(a.Messages.InvalidRegExp),g<=65535?String.fromCharCode(g):m}).replace(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,m));try{RegExp(o)}catch{this.throwUnexpectedToken(a.Messages.InvalidRegExp)}try{return new RegExp(h,y)}catch{return null}},f.prototype.scanRegExpBody=function(){var h=this.source[this.index];t.assert(h==="/","Regular expression literal must start with a slash");for(var y=this.source[this.index++],m=!1,o=!1;!this.eof();)if(h=this.source[this.index++],y+=h,h==="\\")h=this.source[this.index++],s.Character.isLineTerminator(h.charCodeAt(0))&&this.throwUnexpectedToken(a.Messages.UnterminatedRegExp),y+=h;else if(s.Character.isLineTerminator(h.charCodeAt(0)))this.throwUnexpectedToken(a.Messages.UnterminatedRegExp);else if(m)h==="]"&&(m=!1);else if(h==="/"){o=!0;break}else h==="["&&(m=!0);return o||this.throwUnexpectedToken(a.Messages.UnterminatedRegExp),y.substr(1,y.length-2)},f.prototype.scanRegExpFlags=function(){for(var h="",y="";!this.eof();){var m=this.source[this.index];if(!s.Character.isIdentifierPart(m.charCodeAt(0)))break;if(++this.index,m==="\\"&&!this.eof())if(m=this.source[this.index],m==="u"){++this.index;var o=this.index,l=this.scanHexEscape("u");if(l!==null)for(y+=l,h+="\\u";o<this.index;++o)h+=this.source[o];else this.index=o,y+="u",h+="\\u";this.tolerateUnexpectedToken()}else h+="\\",this.tolerateUnexpectedToken();else y+=m,h+=m}return y},f.prototype.scanRegExp=function(){var h=this.index,y=this.scanRegExpBody(),m=this.scanRegExpFlags(),o=this.testRegExp(y,m);return{type:9,value:"",pattern:y,flags:m,regex:o,lineNumber:this.lineNumber,lineStart:this.lineStart,start:h,end:this.index}},f.prototype.lex=function(){if(this.eof())return{type:2,value:"",lineNumber:this.lineNumber,lineStart:this.lineStart,start:this.index,end:this.index};var h=this.source.charCodeAt(this.index);return s.Character.isIdentifierStart(h)?this.scanIdentifier():h===40||h===41||h===59?this.scanPunctuator():h===39||h===34?this.scanStringLiteral():h===46?s.Character.isDecimalDigit(this.source.charCodeAt(this.index+1))?this.scanNumericLiteral():this.scanPunctuator():s.Character.isDecimalDigit(h)?this.scanNumericLiteral():h===96||h===125&&this.curlyStack[this.curlyStack.length-1]==="${"?this.scanTemplate():h>=55296&&h<57343&&s.Character.isIdentifierStart(this.codePointAt(this.index))?this.scanIdentifier():this.scanPunctuator()},f}();r.Scanner=c},function(i,r){"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.TokenName={},r.TokenName[1]="Boolean",r.TokenName[2]="<end>",r.TokenName[3]="Identifier",r.TokenName[4]="Keyword",r.TokenName[5]="Null",r.TokenName[6]="Numeric",r.TokenName[7]="Punctuator",r.TokenName[8]="String",r.TokenName[9]="RegularExpression",r.TokenName[10]="Template"},function(i,r){"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.XHTMLEntities={quot:'"',amp:"&",apos:"'",gt:">",nbsp:"\xA0",iexcl:"\xA1",cent:"\xA2",pound:"\xA3",curren:"\xA4",yen:"\xA5",brvbar:"\xA6",sect:"\xA7",uml:"\xA8",copy:"\xA9",ordf:"\xAA",laquo:"\xAB",not:"\xAC",shy:"\xAD",reg:"\xAE",macr:"\xAF",deg:"\xB0",plusmn:"\xB1",sup2:"\xB2",sup3:"\xB3",acute:"\xB4",micro:"\xB5",para:"\xB6",middot:"\xB7",cedil:"\xB8",sup1:"\xB9",ordm:"\xBA",raquo:"\xBB",frac14:"\xBC",frac12:"\xBD",frac34:"\xBE",iquest:"\xBF",Agrave:"\xC0",Aacute:"\xC1",Acirc:"\xC2",Atilde:"\xC3",Auml:"\xC4",Aring:"\xC5",AElig:"\xC6",Ccedil:"\xC7",Egrave:"\xC8",Eacute:"\xC9",Ecirc:"\xCA",Euml:"\xCB",Igrave:"\xCC",Iacute:"\xCD",Icirc:"\xCE",Iuml:"\xCF",ETH:"\xD0",Ntilde:"\xD1",Ograve:"\xD2",Oacute:"\xD3",Ocirc:"\xD4",Otilde:"\xD5",Ouml:"\xD6",times:"\xD7",Oslash:"\xD8",Ugrave:"\xD9",Uacute:"\xDA",Ucirc:"\xDB",Uuml:"\xDC",Yacute:"\xDD",THORN:"\xDE",szlig:"\xDF",agrave:"\xE0",aacute:"\xE1",acirc:"\xE2",atilde:"\xE3",auml:"\xE4",aring:"\xE5",aelig:"\xE6",ccedil:"\xE7",egrave:"\xE8",eacute:"\xE9",ecirc:"\xEA",euml:"\xEB",igrave:"\xEC",iacute:"\xED",icirc:"\xEE",iuml:"\xEF",eth:"\xF0",ntilde:"\xF1",ograve:"\xF2",oacute:"\xF3",ocirc:"\xF4",otilde:"\xF5",ouml:"\xF6",divide:"\xF7",oslash:"\xF8",ugrave:"\xF9",uacute:"\xFA",ucirc:"\xFB",uuml:"\xFC",yacute:"\xFD",thorn:"\xFE",yuml:"\xFF",OElig:"\u0152",oelig:"\u0153",Scaron:"\u0160",scaron:"\u0161",Yuml:"\u0178",fnof:"\u0192",circ:"\u02C6",tilde:"\u02DC",Alpha:"\u0391",Beta:"\u0392",Gamma:"\u0393",Delta:"\u0394",Epsilon:"\u0395",Zeta:"\u0396",Eta:"\u0397",Theta:"\u0398",Iota:"\u0399",Kappa:"\u039A",Lambda:"\u039B",Mu:"\u039C",Nu:"\u039D",Xi:"\u039E",Omicron:"\u039F",Pi:"\u03A0",Rho:"\u03A1",Sigma:"\u03A3",Tau:"\u03A4",Upsilon:"\u03A5",Phi:"\u03A6",Chi:"\u03A7",Psi:"\u03A8",Omega:"\u03A9",alpha:"\u03B1",beta:"\u03B2",gamma:"\u03B3",delta:"\u03B4",epsilon:"\u03B5",zeta:"\u03B6",eta:"\u03B7",theta:"\u03B8",iota:"\u03B9",kappa:"\u03BA",lambda:"\u03BB",mu:"\u03BC",nu:"\u03BD",xi:"\u03BE",omicron:"\u03BF",pi:"\u03C0",rho:"\u03C1",sigmaf:"\u03C2",sigma:"\u03C3",tau:"\u03C4",upsilon:"\u03C5",phi:"\u03C6",chi:"\u03C7",psi:"\u03C8",omega:"\u03C9",thetasym:"\u03D1",upsih:"\u03D2",piv:"\u03D6",ensp:"\u2002",emsp:"\u2003",thinsp:"\u2009",zwnj:"\u200C",zwj:"\u200D",lrm:"\u200E",rlm:"\u200F",ndash:"\u2013",mdash:"\u2014",lsquo:"\u2018",rsquo:"\u2019",sbquo:"\u201A",ldquo:"\u201C",rdquo:"\u201D",bdquo:"\u201E",dagger:"\u2020",Dagger:"\u2021",bull:"\u2022",hellip:"\u2026",permil:"\u2030",prime:"\u2032",Prime:"\u2033",lsaquo:"\u2039",rsaquo:"\u203A",oline:"\u203E",frasl:"\u2044",euro:"\u20AC",image:"\u2111",weierp:"\u2118",real:"\u211C",trade:"\u2122",alefsym:"\u2135",larr:"\u2190",uarr:"\u2191",rarr:"\u2192",darr:"\u2193",harr:"\u2194",crarr:"\u21B5",lArr:"\u21D0",uArr:"\u21D1",rArr:"\u21D2",dArr:"\u21D3",hArr:"\u21D4",forall:"\u2200",part:"\u2202",exist:"\u2203",empty:"\u2205",nabla:"\u2207",isin:"\u2208",notin:"\u2209",ni:"\u220B",prod:"\u220F",sum:"\u2211",minus:"\u2212",lowast:"\u2217",radic:"\u221A",prop:"\u221D",infin:"\u221E",ang:"\u2220",and:"\u2227",or:"\u2228",cap:"\u2229",cup:"\u222A",int:"\u222B",there4:"\u2234",sim:"\u223C",cong:"\u2245",asymp:"\u2248",ne:"\u2260",equiv:"\u2261",le:"\u2264",ge:"\u2265",sub:"\u2282",sup:"\u2283",nsub:"\u2284",sube:"\u2286",supe:"\u2287",oplus:"\u2295",otimes:"\u2297",perp:"\u22A5",sdot:"\u22C5",lceil:"\u2308",rceil:"\u2309",lfloor:"\u230A",rfloor:"\u230B",loz:"\u25CA",spades:"\u2660",clubs:"\u2663",hearts:"\u2665",diams:"\u2666",lang:"\u27E8",rang:"\u27E9"}},function(i,r,e){"use strict";Object.defineProperty(r,"__esModule",{value:!0});var t=e(10),s=e(12),a=e(13),n=function(){function c(){this.values=[],this.curly=this.paren=-1}return c.prototype.beforeFunctionExpression=function(f){return["(","{","[","in","typeof","instanceof","new","return","case","delete","throw","void","=","+=","-=","*=","**=","/=","%=","<<=",">>=",">>>=","&=","|=","^=",",","+","-","*","**","/","%","++","--","<<",">>",">>>","&","|","^","!","~","&&","||","?",":","===","==",">=","<=","<",">","!=","!=="].indexOf(f)>=0},c.prototype.isRegexStart=function(){var f=this.values[this.values.length-1],h=f!==null;switch(f){case"this":case"]":h=!1;break;case")":var y=this.values[this.paren-1];h=y==="if"||y==="while"||y==="for"||y==="with";break;case"}":if(h=!1,this.values[this.curly-3]==="function"){var m=this.values[this.curly-4];h=m?!this.beforeFunctionExpression(m):!1}else if(this.values[this.curly-4]==="function"){var m=this.values[this.curly-5];h=m?!this.beforeFunctionExpression(m):!0}break;default:break}return h},c.prototype.push=function(f){f.type===7||f.type===4?(f.value==="{"?this.curly=this.values.length:f.value==="("&&(this.paren=this.values.length),this.values.push(f.value)):this.values.push(null)},c}(),u=function(){function c(f,h){this.errorHandler=new t.ErrorHandler,this.errorHandler.tolerant=h?typeof h.tolerant=="boolean"&&h.tolerant:!1,this.scanner=new s.Scanner(f,this.errorHandler),this.scanner.trackComment=h?typeof h.comment=="boolean"&&h.comment:!1,this.trackRange=h?typeof h.range=="boolean"&&h.range:!1,this.trackLoc=h?typeof h.loc=="boolean"&&h.loc:!1,this.buffer=[],this.reader=new n}return c.prototype.errors=function(){return this.errorHandler.errors},c.prototype.getNextToken=function(){if(this.buffer.length===0){var f=this.scanner.scanComments();if(this.scanner.trackComment)for(var h=0;h<f.length;++h){var y=f[h],m=this.scanner.source.slice(y.slice[0],y.slice[1]),o={type:y.multiLine?"BlockComment":"LineComment",value:m};this.trackRange&&(o.range=y.range),this.trackLoc&&(o.loc=y.loc),this.buffer.push(o)}if(!this.scanner.eof()){var l=void 0;this.trackLoc&&(l={start:{line:this.scanner.lineNumber,column:this.scanner.index-this.scanner.lineStart},end:{}});var p=this.scanner.source[this.scanner.index]==="/"&&this.reader.isRegexStart(),d=p?this.scanner.scanRegExp():this.scanner.lex();this.reader.push(d);var x={type:a.TokenName[d.type],value:this.scanner.source.slice(d.start,d.end)};if(this.trackRange&&(x.range=[d.start,d.end]),this.trackLoc&&(l.end={line:this.scanner.lineNumber,column:this.scanner.index-this.scanner.lineStart},x.loc=l),d.type===9){var g=d.pattern,E=d.flags;x.regex={pattern:g,flags:E}}this.buffer.push(x)}}return this.buffer.shift()},c}();r.Tokenizer=u}])})});var Iu=O(ds=>{"use strict";Object.defineProperty(ds,"__esModule",{value:!0});ds.parse=void 0;var fs=_e();function Af(i,r){var e=[],t=oa().parse(i,{loc:!0,locations:!0,comment:!0,onComment:e,range:(0,fs.getOption)(r,"range",!1),tolerant:(0,fs.getOption)(r,"tolerant",!0),tokens:!0,jsx:(0,fs.getOption)(r,"jsx",!1),sourceType:(0,fs.getOption)(r,"sourceType","module")});return Array.isArray(t.comments)||(t.comments=e),t}ds.parse=Af});var ys=O(ms=>{"use strict";Object.defineProperty(ms,"__esModule",{value:!0});ms.normalize=void 0;var Tf=_e(),ua={parser:Iu(),tabWidth:4,useTabs:!1,reuseWhitespace:!0,lineTerminator:(0,Tf.getLineTerminator)(),wrapColumn:74,sourceFileName:null,sourceMapName:null,sourceRoot:null,inputSourceMap:null,range:!1,tolerant:!0,quote:null,trailingComma:!1,arrayBracketSpacing:!1,objectCurlySpacing:!0,arrowParensAlways:!1,flowObjectCommas:!0,tokens:!0},Cf=ua.hasOwnProperty;function Pf(i){var r=i||ua;function e(t){return Cf.call(r,t)?r[t]:ua[t]}return{tabWidth:+e("tabWidth"),useTabs:!!e("useTabs"),reuseWhitespace:!!e("reuseWhitespace"),lineTerminator:e("lineTerminator"),wrapColumn:Math.max(e("wrapColumn"),0),sourceFileName:e("sourceFileName"),sourceMapName:e("sourceMapName"),sourceRoot:e("sourceRoot"),inputSourceMap:e("inputSourceMap"),parser:e("esprima")||e("parser"),range:e("range"),tolerant:e("tolerant"),quote:e("quote"),trailingComma:e("trailingComma"),arrayBracketSpacing:e("arrayBracketSpacing"),objectCurlySpacing:e("objectCurlySpacing"),arrowParensAlways:e("arrowParensAlways"),flowObjectCommas:e("flowObjectCommas"),tokens:!!e("tokens")}}ms.normalize=Pf});var Fu=O(la=>{"use strict";Object.defineProperty(la,"__esModule",{value:!0});var Df=(X(),V(J)),vt=Df.__importDefault(Ge()),ct=_e(),wf=function(){function i(r,e,t){t===void 0&&(t=e),this.sourceLines=r,this.sourceLoc=e,this.targetLoc=t}return i.prototype.slice=function(r,e,t){t===void 0&&(t=r.lastPos());var s=this.sourceLines,a=this.sourceLoc,n=this.targetLoc;function u(c){var f=a[c],h=n[c],y=e;return c==="end"?y=t:(0,vt.default)(c==="start"),kf(s,f,r,h,y)}if((0,ct.comparePos)(e,n.start)<=0)if((0,ct.comparePos)(n.end,t)<=0)n={start:lt(n.start,e.line,e.column),end:lt(n.end,e.line,e.column)};else{if((0,ct.comparePos)(t,n.start)<=0)return null;a={start:a.start,end:u("end")},n={start:lt(n.start,e.line,e.column),end:lt(t,e.line,e.column)}}else{if((0,ct.comparePos)(n.end,e)<=0)return null;(0,ct.comparePos)(n.end,t)<=0?(a={start:u("start"),end:a.end},n={start:{line:1,column:0},end:lt(n.end,e.line,e.column)}):(a={start:u("start"),end:u("end")},n={start:{line:1,column:0},end:lt(t,e.line,e.column)})}return new i(this.sourceLines,a,n)},i.prototype.add=function(r,e){return new i(this.sourceLines,this.sourceLoc,{start:Nu(this.targetLoc.start,r,e),end:Nu(this.targetLoc.end,r,e)})},i.prototype.subtract=function(r,e){return new i(this.sourceLines,this.sourceLoc,{start:lt(this.targetLoc.start,r,e),end:lt(this.targetLoc.end,r,e)})},i.prototype.indent=function(r,e,t){if(e===void 0&&(e=!1),t===void 0&&(t=!1),r===0)return this;var s=this.targetLoc,a=s.start.line,n=s.end.line;if(e&&a===1&&n===1)return this;if(s={start:s.start,end:s.end},!e||a>1){var u=s.start.column+r;s.start={line:a,column:t?Math.max(0,u):u}}if(!e||n>1){var c=s.end.column+r;s.end={line:n,column:t?Math.max(0,c):c}}return new i(this.sourceLines,this.sourceLoc,s)},i}();la.default=wf;function Nu(i,r,e){return{line:i.line+r-1,column:i.line===1?i.column+e:i.column}}function lt(i,r,e){return{line:i.line-r+1,column:i.line===r?i.column-e:i.column}}function kf(i,r,e,t,s){var a=(0,ct.comparePos)(t,s);if(a===0)return r;var n,u;if(a<0){n=i.skipSpaces(r)||i.lastPos(),u=e.skipSpaces(t)||e.lastPos();var c=s.line-u.line;for(n.line+=c,u.line+=c,c>0?(n.column=0,u.column=0):(0,vt.default)(c===0);(0,ct.comparePos)(u,s)<0&&e.nextPos(u,!0);)(0,vt.default)(i.nextPos(n,!0)),(0,vt.default)(i.charAt(n)===e.charAt(u))}else{n=i.skipSpaces(r,!0)||i.firstPos(),u=e.skipSpaces(t,!0)||e.firstPos();var c=s.line-u.line;for(n.line+=c,u.line+=c,c<0?(n.column=i.getLineLength(n.line),u.column=e.getLineLength(u.line)):(0,vt.default)(c===0);(0,ct.comparePos)(s,u)<0&&e.prevPos(u,!0);)(0,vt.default)(i.prevPos(n,!0)),(0,vt.default)(i.charAt(n)===e.charAt(u))}return n}});var xr=O(qe=>{"use strict";Object.defineProperty(qe,"__esModule",{value:!0});qe.concat=qe.fromString=qe.countSpaces=qe.Lines=void 0;var Ne=(X(),V(J)),le=Ne.__importDefault(Ge()),If=Ne.__importDefault(sa()),Bu=ys(),Mu=_e(),Nf=Ne.__importDefault(Fu()),ca=function(){function i(r,e){e===void 0&&(e=null),this.infos=r,this.mappings=[],this.cachedSourceMap=null,this.cachedTabWidth=void 0,(0,le.default)(r.length>0),this.length=r.length,this.name=e||null,this.name&&this.mappings.push(new Nf.default(this,{start:this.firstPos(),end:this.lastPos()}))}return i.prototype.toString=function(r){return this.sliceString(this.firstPos(),this.lastPos(),r)},i.prototype.getSourceMap=function(r,e){if(!r)return null;var t=this;function s(u){return u=u||{},u.file=r,e&&(u.sourceRoot=e),u}if(t.cachedSourceMap)return s(t.cachedSourceMap.toJSON());var a=new If.default.SourceMapGenerator(s()),n={};return t.mappings.forEach(function(u){for(var c=u.sourceLines.skipSpaces(u.sourceLoc.start)||u.sourceLines.lastPos(),f=t.skipSpaces(u.targetLoc.start)||t.lastPos();(0,Mu.comparePos)(c,u.sourceLoc.end)<0&&(0,Mu.comparePos)(f,u.targetLoc.end)<0;){var h=u.sourceLines.charAt(c),y=t.charAt(f);(0,le.default)(h===y);var m=u.sourceLines.name;if(a.addMapping({source:m,original:{line:c.line,column:c.column},generated:{line:f.line,column:f.column}}),!ha.call(n,m)){var o=u.sourceLines.toString();a.setSourceContent(m,o),n[m]=o}t.nextPos(f,!0),u.sourceLines.nextPos(c,!0)}}),t.cachedSourceMap=a,a.toJSON()},i.prototype.bootstrapCharAt=function(r){(0,le.default)(typeof r=="object"),(0,le.default)(typeof r.line=="number"),(0,le.default)(typeof r.column=="number");var e=r.line,t=r.column,s=this.toString().split(pa),a=s[e-1];return typeof a>"u"?"":t===a.length&&e<s.length?`
11
+ `:t>=a.length?"":a.charAt(t)},i.prototype.charAt=function(r){(0,le.default)(typeof r=="object"),(0,le.default)(typeof r.line=="number"),(0,le.default)(typeof r.column=="number");var e=r.line,t=r.column,s=this,a=s.infos,n=a[e-1],u=t;if(typeof n>"u"||u<0)return"";var c=this.getIndentAt(e);return u<c?" ":(u+=n.sliceStart-c,u===n.sliceEnd&&e<this.length?`
12
+ `:u>=n.sliceEnd?"":n.line.charAt(u))},i.prototype.stripMargin=function(r,e){if(r===0)return this;if((0,le.default)(r>0,"negative margin: "+r),e&&this.length===1)return this;var t=new i(this.infos.map(function(a,n){return a.line&&(n>0||!e)&&(a=Ne.__assign(Ne.__assign({},a),{indent:Math.max(0,a.indent-r)})),a}));if(this.mappings.length>0){var s=t.mappings;(0,le.default)(s.length===0),this.mappings.forEach(function(a){s.push(a.indent(r,e,!0))})}return t},i.prototype.indent=function(r){if(r===0)return this;var e=new i(this.infos.map(function(s){return s.line&&!s.locked&&(s=Ne.__assign(Ne.__assign({},s),{indent:s.indent+r})),s}));if(this.mappings.length>0){var t=e.mappings;(0,le.default)(t.length===0),this.mappings.forEach(function(s){t.push(s.indent(r))})}return e},i.prototype.indentTail=function(r){if(r===0)return this;if(this.length<2)return this;var e=new i(this.infos.map(function(s,a){return a>0&&s.line&&!s.locked&&(s=Ne.__assign(Ne.__assign({},s),{indent:s.indent+r})),s}));if(this.mappings.length>0){var t=e.mappings;(0,le.default)(t.length===0),this.mappings.forEach(function(s){t.push(s.indent(r,!0))})}return e},i.prototype.lockIndentTail=function(){return this.length<2?this:new i(this.infos.map(function(r,e){return Ne.__assign(Ne.__assign({},r),{locked:e>0})}))},i.prototype.getIndentAt=function(r){return(0,le.default)(r>=1,"no line "+r+" (line numbers start from 1)"),Math.max(this.infos[r-1].indent,0)},i.prototype.guessTabWidth=function(){if(typeof this.cachedTabWidth=="number")return this.cachedTabWidth;for(var r=[],e=0,t=1,s=this.length;t<=s;++t){var a=this.infos[t-1],n=a.line.slice(a.sliceStart,a.sliceEnd);if(!qt(n)){var u=Math.abs(a.indent-e);r[u]=~~r[u]+1,e=a.indent}}for(var c=-1,f=2,h=1;h<r.length;h+=1)ha.call(r,h)&&r[h]>c&&(c=r[h],f=h);return this.cachedTabWidth=f},i.prototype.startsWithComment=function(){if(this.infos.length===0)return!1;var r=this.infos[0],e=r.sliceStart,t=r.sliceEnd,s=r.line.slice(e,t).trim();return s.length===0||s.slice(0,2)==="//"||s.slice(0,2)==="/*"},i.prototype.isOnlyWhitespace=function(){return qt(this.toString())},i.prototype.isPrecededOnlyByWhitespace=function(r){var e=this.infos[r.line-1],t=Math.max(e.indent,0),s=r.column-t;if(s<=0)return!0;var a=e.sliceStart,n=Math.min(a+s,e.sliceEnd),u=e.line.slice(a,n);return qt(u)},i.prototype.getLineLength=function(r){var e=this.infos[r-1];return this.getIndentAt(r)+e.sliceEnd-e.sliceStart},i.prototype.nextPos=function(r,e){e===void 0&&(e=!1);var t=Math.max(r.line,0),s=Math.max(r.column,0);return s<this.getLineLength(t)?(r.column+=1,e?!!this.skipSpaces(r,!1,!0):!0):t<this.length?(r.line+=1,r.column=0,e?!!this.skipSpaces(r,!1,!0):!0):!1},i.prototype.prevPos=function(r,e){e===void 0&&(e=!1);var t=r.line,s=r.column;if(s<1){if(t-=1,t<1)return!1;s=this.getLineLength(t)}else s=Math.min(s-1,this.getLineLength(t));return r.line=t,r.column=s,e?!!this.skipSpaces(r,!0,!0):!0},i.prototype.firstPos=function(){return{line:1,column:0}},i.prototype.lastPos=function(){return{line:this.length,column:this.getLineLength(this.length)}},i.prototype.skipSpaces=function(r,e,t){if(e===void 0&&(e=!1),t===void 0&&(t=!1),r?r=t?r:{line:r.line,column:r.column}:e?r=this.lastPos():r=this.firstPos(),e){for(;this.prevPos(r);)if(!qt(this.charAt(r))&&this.nextPos(r))return r;return null}else{for(;qt(this.charAt(r));)if(!this.nextPos(r))return null;return r}},i.prototype.trimLeft=function(){var r=this.skipSpaces(this.firstPos(),!1,!0);return r?this.slice(r):bt},i.prototype.trimRight=function(){var r=this.skipSpaces(this.lastPos(),!0,!0);return r?this.slice(this.firstPos(),r):bt},i.prototype.trim=function(){var r=this.skipSpaces(this.firstPos(),!1,!0);if(r===null)return bt;var e=this.skipSpaces(this.lastPos(),!0,!0);return e===null?bt:this.slice(r,e)},i.prototype.eachPos=function(r,e,t){e===void 0&&(e=this.firstPos()),t===void 0&&(t=!1);var s=this.firstPos();if(e&&(s.line=e.line,s.column=e.column),!(t&&!this.skipSpaces(s,!1,!0)))do r.call(this,s);while(this.nextPos(s,t))},i.prototype.bootstrapSlice=function(r,e){var t=this.toString().split(pa).slice(r.line-1,e.line);return t.length>0&&(t.push(t.pop().slice(0,e.column)),t[0]=t[0].slice(r.column)),gs(t.join(`
13
+ `))},i.prototype.slice=function(r,e){if(!e){if(!r)return this;e=this.lastPos()}if(!r)throw new Error("cannot slice with end but not start");var t=this.infos.slice(r.line-1,e.line);r.line===e.line?t[0]=zt(t[0],r.column,e.column):((0,le.default)(r.line<e.line),t[0]=zt(t[0],r.column),t.push(zt(t.pop(),0,e.column)));var s=new i(t);if(this.mappings.length>0){var a=s.mappings;(0,le.default)(a.length===0),this.mappings.forEach(function(n){var u=n.slice(this,r,e);u&&a.push(u)},this)}return s},i.prototype.bootstrapSliceString=function(r,e,t){return this.slice(r,e).toString(t)},i.prototype.sliceString=function(r,e,t){r===void 0&&(r=this.firstPos()),e===void 0&&(e=this.lastPos());for(var s=(0,Bu.normalize)(t),a=s.tabWidth,n=s.useTabs,u=s.reuseWhitespace,c=s.lineTerminator,f=[],h=r.line;h<=e.line;++h){var y=this.infos[h-1];h===r.line?h===e.line?y=zt(y,r.column,e.column):y=zt(y,r.column):h===e.line&&(y=zt(y,0,e.column));var m=Math.max(y.indent,0),o=y.line.slice(0,y.sliceStart);if(u&&qt(o)&&fa(o,a)===m){f.push(y.line.slice(0,y.sliceEnd));continue}var l=0,p=m;n&&(l=Math.floor(m/a),p-=l*a);var d="";l>0&&(d+=new Array(l+1).join(" ")),p>0&&(d+=new Array(p+1).join(" ")),d+=y.line.slice(y.sliceStart,y.sliceEnd),f.push(d)}return f.join(c)},i.prototype.isEmpty=function(){return this.length<2&&this.getLineLength(1)<1},i.prototype.join=function(r){var e=this,t=[],s=[],a;function n(f){if(f!==null){if(a){var h=f.infos[0],y=new Array(h.indent+1).join(" "),m=t.length,o=Math.max(a.indent,0)+a.sliceEnd-a.sliceStart;a.line=a.line.slice(0,a.sliceEnd)+y+h.line.slice(h.sliceStart,h.sliceEnd),a.locked=a.locked||h.locked,a.sliceEnd=a.line.length,f.mappings.length>0&&f.mappings.forEach(function(l){s.push(l.add(m,o))})}else f.mappings.length>0&&s.push.apply(s,f.mappings);f.infos.forEach(function(l,p){(!a||p>0)&&(a=Ne.__assign({},l),t.push(a))})}}function u(f,h){h>0&&n(e),n(f)}if(r.map(function(f){var h=gs(f);return h.isEmpty()?null:h}).forEach(function(f,h){e.isEmpty()?n(f):u(f,h)}),t.length<1)return bt;var c=new i(t);return c.mappings=s,c},i.prototype.concat=function(){for(var r=[],e=0;e<arguments.length;e++)r[e]=arguments[e];var t=[this];return t.push.apply(t,r),(0,le.default)(t.length===r.length+1),bt.join(t)},i}();qe.Lines=ca;var xs={},ha=xs.hasOwnProperty,Ff=10;function fa(i,r){for(var e=0,t=i.length,s=0;s<t;++s)switch(i.charCodeAt(s)){case 9:{(0,le.default)(typeof r=="number"),(0,le.default)(r>0);var a=Math.ceil(e/r)*r;a===e?e+=r:e=a;break}case 11:case 12:case 13:case 65279:break;case 32:default:e+=1;break}return e}qe.countSpaces=fa;var Mf=/^\s*/,pa=/\u000D\u000A|\u000D(?!\u000A)|\u000A|\u2028|\u2029/;function gs(i,r){if(i instanceof ca)return i;i+="";var e=r&&r.tabWidth,t=i.indexOf(" ")<0,s=!r&&t&&i.length<=Ff;if((0,le.default)(e||t,`No tab width specified but encountered tabs in string
14
+ `+i),s&&ha.call(xs,i))return xs[i];var a=new ca(i.split(pa).map(function(n){var u=Mf.exec(n)[0];return{line:n,indent:fa(u,e),locked:!1,sliceStart:u.length,sliceEnd:n.length}}),(0,Bu.normalize)(r).sourceFileName);return s&&(xs[i]=a),a}qe.fromString=gs;function qt(i){return!/\S/.test(i)}function zt(i,r,e){var t=i.sliceStart,s=i.sliceEnd,a=Math.max(i.indent,0),n=a+s-t;return typeof e>"u"&&(e=n),r=Math.max(r,0),e=Math.min(e,n),e=Math.max(e,r),e<a?(a=e,s=t):s-=n-e,n=e,n-=r,r<a?a-=r:(r-=a,a=0,t+=r),(0,le.default)(a>=0),(0,le.default)(t<=s),(0,le.default)(n===a+s-t),i.indent===a&&i.sliceStart===t&&i.sliceEnd===s?i:{line:i.line,indent:a,locked:!1,sliceStart:t,sliceEnd:s}}function Bf(i){return bt.join(i)}qe.concat=Bf;var bt=gs("")});var ya=O(Vt=>{"use strict";Object.defineProperty(Vt,"__esModule",{value:!0});Vt.printComments=Vt.attach=void 0;var Ou=(X(),V(J)),da=Ou.__importDefault(Ge()),St=Ou.__importStar(He()),Xt=St.namedTypes,_u=St.builtInTypes.array,Lf=St.builtInTypes.object,vr=xr(),Jt=_e(),Lu=new WeakMap;function ju(i,r,e){if(!i)return e;if((0,Jt.fixFaultyLocations)(i,r),e){if(Xt.Node.check(i)&&Xt.SourceLocation.check(i.loc)){for(var t=e.length-1;t>=0;--t){var s=e[t];if(s&&s.loc&&(0,Jt.comparePos)(s.loc.end,i.loc.start)<=0)break}return e.splice(t+1,0,i),e}}else{var a=Lu.get(i);if(a)return a}var n;if(_u.check(i))n=Object.keys(i);else if(Lf.check(i))n=St.getFieldNames(i);else return e;e||Lu.set(i,e=[]);for(var t=0,u=n.length;t<u;++t)ju(i[n[t]],r,e);return e}function Ru(i,r,e){for(var t=ju(i,e),s=0,a=t&&t.length,n,u;typeof a=="number"&&s<a;){var c=s+a>>1,f=t[c];if((0,Jt.comparePos)(f.loc.start,r.loc.start)<=0&&(0,Jt.comparePos)(r.loc.end,f.loc.end)<=0){Ru(r.enclosingNode=f,r,e);return}if((0,Jt.comparePos)(f.loc.end,r.loc.start)<=0){n=f,s=c+1;continue}if((0,Jt.comparePos)(r.loc.end,f.loc.start)<=0){u=f,a=c;continue}throw new Error("Comment location overlaps with node location")}n&&(r.precedingNode=n),u&&(r.followingNode=u)}function Of(i,r,e){if(_u.check(i)){var t=[];i.forEach(function(s){s.loc.lines=e,Ru(r,s,e);var a=s.precedingNode,n=s.enclosingNode,u=s.followingNode;if(a&&u){var c=t.length;if(c>0){var f=t[c-1];(0,da.default)(f.precedingNode===s.precedingNode==(f.followingNode===s.followingNode)),f.followingNode!==s.followingNode&&gr(t,e)}t.push(s)}else if(a)gr(t,e),qu(a,s);else if(u)gr(t,e),Uu(u,s);else if(n)gr(t,e),_f(n,s);else throw new Error("AST contains no nodes at all?")}),gr(t,e),i.forEach(function(s){delete s.precedingNode,delete s.enclosingNode,delete s.followingNode})}}Vt.attach=Of;function gr(i,r){var e=i.length;if(e!==0){for(var t=i[0].precedingNode,s=i[0].followingNode,a=s.loc.start,n=e,u;n>0;--n){u=i[n-1],(0,da.default)(u.precedingNode===t),(0,da.default)(u.followingNode===s);var c=r.sliceString(u.loc.end,a);if(/\S/.test(c))break;a=u.loc.start}for(;n<=e&&(u=i[n])&&(u.type==="Line"||u.type==="CommentLine")&&u.loc.start.column>s.loc.start.column;)++n;if(n){var f=i[n-1].enclosingNode;f?.type==="CallExpression"&&--n}i.forEach(function(h,y){y<n?qu(t,h):Uu(s,h)}),i.length=0}}function ma(i,r){var e=i.comments||(i.comments=[]);e.push(r)}function Uu(i,r){r.leading=!0,r.trailing=!1,ma(i,r)}function _f(i,r){r.leading=!1,r.trailing=!1,ma(i,r)}function qu(i,r){r.leading=!1,r.trailing=!0,ma(i,r)}function jf(i,r){var e=i.getValue();Xt.Comment.assert(e);var t=e.loc,s=t&&t.lines,a=[r(i)];if(e.trailing)a.push(`
15
+ `);else if(s instanceof vr.Lines){var n=s.slice(t.end,s.skipSpaces(t.end)||s.lastPos());n.length===1?a.push(n):a.push(new Array(n.length).join(`
16
+ `))}else a.push(`
17
+ `);return(0,vr.concat)(a)}function Rf(i,r){var e=i.getValue(i);Xt.Comment.assert(e);var t=e.loc,s=t&&t.lines,a=[];if(s instanceof vr.Lines){var n=s.skipSpaces(t.start,!0)||s.firstPos(),u=s.slice(n,t.start);u.length===1?a.push(u):a.push(new Array(u.length).join(`
18
+ `))}return a.push(r(i)),(0,vr.concat)(a)}function Uf(i,r){var e=i.getValue(),t=r(i),s=Xt.Node.check(e)&&St.getFieldValue(e,"comments");if(!s||s.length===0)return t;var a=[],n=[t];return i.each(function(u){var c=u.getValue(),f=St.getFieldValue(c,"leading"),h=St.getFieldValue(c,"trailing");f||h&&!(Xt.Statement.check(e)||c.type==="Block"||c.type==="CommentBlock")?a.push(jf(u,r)):h&&n.push(Rf(u,r))},"comments"),a.push.apply(a,n),(0,vr.concat)(a)}Vt.printComments=Uf});var Xu=O(vs=>{"use strict";Object.defineProperty(vs,"__esModule",{value:!0});vs.parse=void 0;var xa=(X(),V(J)),qf=xa.__importDefault(Ge()),ga=xa.__importStar(He()),zf=ga.builders,Jf=ga.builtInTypes.object,Xf=ga.builtInTypes.array,Vf=ys(),Kf=xr(),Wf=ya(),Ye=xa.__importStar(_e());function Hf(i,r){r=(0,Vf.normalize)(r);var e=(0,Kf.fromString)(i,r),t=e.toString({tabWidth:r.tabWidth,reuseWhitespace:!1,useTabs:!1}),s=[],a=r.parser.parse(t,{jsx:!0,loc:!0,locations:!0,range:r.range,comment:!0,onComment:s,tolerant:Ye.getOption(r,"tolerant",!0),ecmaVersion:6,sourceType:Ye.getOption(r,"sourceType","module")}),n=Array.isArray(a.tokens)?a.tokens:oa().tokenize(t,{loc:!0});delete a.tokens,n.forEach(function(h){typeof h.value!="string"&&(h.value=e.sliceString(h.loc.start,h.loc.end))}),Array.isArray(a.comments)&&(s=a.comments,delete a.comments),a.loc?Ye.fixFaultyLocations(a,e):a.loc={start:e.firstPos(),end:e.lastPos()},a.loc.lines=e,a.loc.indent=0;var u,c;a.type==="Program"?(c=a,u=zf.file(a,r.sourceFileName||null),u.loc={start:e.firstPos(),end:e.lastPos(),lines:e,indent:0}):a.type==="File"&&(u=a,c=u.program),r.tokens&&(u.tokens=n);var f=Ye.getTrueLoc({type:c.type,loc:c.loc,body:[],comments:s},e);return c.loc.start=f.start,c.loc.end=f.end,(0,Wf.attach)(s,c.body.length?u.program:u,e),new zu(e,n).copy(u)}vs.parse=Hf;var zu=function i(r,e){(0,qf.default)(this instanceof i),this.lines=r,this.tokens=e,this.startTokenIndex=0,this.endTokenIndex=e.length,this.indent=0,this.seen=new Map},Ju=zu.prototype;Ju.copy=function(i){if(this.seen.has(i))return this.seen.get(i);if(Xf.check(i)){var r=new Array(i.length);return this.seen.set(i,r),i.forEach(function(m,o){r[o]=this.copy(m)},this),r}if(!Jf.check(i))return i;Ye.fixFaultyLocations(i,this.lines);var e=Object.create(Object.getPrototypeOf(i),{original:{value:i,configurable:!1,enumerable:!1,writable:!0}});this.seen.set(i,e);var t=i.loc,s=this.indent,a=s,n=this.startTokenIndex,u=this.endTokenIndex;t&&((i.type==="Block"||i.type==="Line"||i.type==="CommentBlock"||i.type==="CommentLine"||this.lines.isPrecededOnlyByWhitespace(t.start))&&(a=this.indent=t.start.column),t.lines=this.lines,t.tokens=this.tokens,t.indent=a,this.findTokenRange(t));for(var c=Object.keys(i),f=c.length,h=0;h<f;++h){var y=c[h];y==="loc"||y==="tokens"&&i.type==="File"?e[y]=i[y]:e[y]=this.copy(i[y])}return this.indent=s,this.startTokenIndex=n,this.endTokenIndex=u,e};Ju.findTokenRange=function(i){for(;this.startTokenIndex>0;){var r=i.tokens[this.startTokenIndex];if(Ye.comparePos(i.start,r.loc.start)<0)--this.startTokenIndex;else break}for(;this.endTokenIndex<i.tokens.length;){var r=i.tokens[this.endTokenIndex];if(Ye.comparePos(r.loc.end,i.end)<0)++this.endTokenIndex;else break}for(;this.startTokenIndex<this.endTokenIndex;){var r=i.tokens[this.startTokenIndex];if(Ye.comparePos(r.loc.start,i.start)<0)++this.startTokenIndex;else break}for(i.start.token=this.startTokenIndex;this.endTokenIndex>this.startTokenIndex;){var r=i.tokens[this.endTokenIndex-1];if(Ye.comparePos(i.end,r.loc.end)<0)--this.endTokenIndex;else break}i.end.token=this.endTokenIndex}});var Aa=O(Ea=>{"use strict";Object.defineProperty(Ea,"__esModule",{value:!0});var Sa=(X(),V(J)),Fe=Sa.__importDefault(Ge()),br=Sa.__importStar(He()),Vu=Sa.__importStar(_e()),oe=br.namedTypes,Gf=br.builtInTypes.array,$f=br.builtInTypes.number,va={};[["??"],["||"],["&&"],["|"],["^"],["&"],["==","===","!=","!=="],["<",">","<=",">=","in","instanceof"],[">>","<<",">>>"],["+","-"],["*","/","%"],["**"]].forEach(function(i,r){i.forEach(function(e){va[e]=r})});var Et=function i(r){(0,Fe.default)(this instanceof i),this.stack=[r]},ve=Et.prototype;Et.from=function(i){if(i instanceof Et)return i.copy();if(i instanceof br.NodePath){for(var r=Object.create(Et.prototype),e=[i.value],t=void 0;t=i.parentPath;i=t)e.push(i.name,t.value);return r.stack=e.reverse(),r}return new Et(i)};ve.copy=function(){var r=Object.create(Et.prototype);return r.stack=this.stack.slice(0),r};ve.getName=function(){var r=this.stack,e=r.length;return e>1?r[e-2]:null};ve.getValue=function(){var r=this.stack;return r[r.length-1]};ve.valueIsDuplicate=function(){var i=this.stack,r=i.length-1;return i.lastIndexOf(i[r],r-1)>=0};function Ku(i,r){for(var e=i.stack,t=e.length-1;t>=0;t-=2){var s=e[t];if(oe.Node.check(s)&&--r<0)return s}return null}ve.getNode=function(r){return r===void 0&&(r=0),Ku(this,~~r)};ve.getParentNode=function(r){return r===void 0&&(r=0),Ku(this,~~r+1)};ve.getRootValue=function(){var r=this.stack;return r.length%2===0?r[1]:r[0]};ve.call=function(r){for(var e=this.stack,t=e.length,s=e[t-1],a=arguments.length,n=1;n<a;++n){var u=arguments[n];s=s[u],e.push(u,s)}var c=r(this);return e.length=t,c};ve.each=function(r){for(var e=this.stack,t=e.length,s=e[t-1],a=arguments.length,n=1;n<a;++n){var u=arguments[n];s=s[u],e.push(u,s)}for(var n=0;n<s.length;++n)n in s&&(e.push(n,s[n]),r(this),e.length-=2);e.length=t};ve.map=function(r){for(var e=this.stack,t=e.length,s=e[t-1],a=arguments.length,n=1;n<a;++n){var u=arguments[n];s=s[u],e.push(u,s)}for(var c=new Array(s.length),n=0;n<s.length;++n)n in s&&(e.push(n,s[n]),c[n]=r(this,n),e.length-=2);return e.length=t,c};ve.hasParens=function(){var i=this.getNode(),r=this.getPrevToken(i);if(!r)return!1;var e=this.getNextToken(i);if(!e)return!1;if(r.value==="("){if(e.value===")")return!0;var t=!this.canBeFirstInStatement()&&this.firstInStatement()&&!this.needsParens(!0);if(t)return!0}return!1};ve.getPrevToken=function(i){i=i||this.getNode();var r=i&&i.loc,e=r&&r.tokens;if(e&&r.start.token>0){var t=e[r.start.token-1];if(t){var s=this.getRootValue().loc;if(Vu.comparePos(s.start,t.loc.start)<=0)return t}}return null};ve.getNextToken=function(i){i=i||this.getNode();var r=i&&i.loc,e=r&&r.tokens;if(e&&r.end.token<e.length){var t=e[r.end.token];if(t){var s=this.getRootValue().loc;if(Vu.comparePos(t.loc.end,s.end)<=0)return t}}return null};ve.needsParens=function(i){var r=this.getNode();if(r.type==="AssignmentExpression"&&r.left.type==="ObjectPattern")return!0;var e=this.getParentNode(),t=this.getName();if(this.getValue()!==r||oe.Statement.check(r)||r.type==="Identifier"||e&&e.type==="ParenthesizedExpression")return!1;if(r.extra&&r.extra.parenthesized)return!0;if(!e)return!1;if(r.type==="UnaryExpression"&&e.type==="BinaryExpression"&&t==="left"&&e.left===r&&e.operator==="**")return!0;switch(r.type){case"UnaryExpression":case"SpreadElement":case"SpreadProperty":return e.type==="MemberExpression"&&t==="object"&&e.object===r;case"BinaryExpression":case"LogicalExpression":switch(e.type){case"CallExpression":return t==="callee"&&e.callee===r;case"UnaryExpression":case"SpreadElement":case"SpreadProperty":return!0;case"MemberExpression":return t==="object"&&e.object===r;case"BinaryExpression":case"LogicalExpression":{var s=e.operator,a=va[s],n=r.operator,u=va[n];if(a>u)return!0;if(a===u&&t==="right")return(0,Fe.default)(e.right===r),!0;break}default:return!1}break;case"SequenceExpression":switch(e.type){case"ReturnStatement":return!1;case"ForStatement":return!1;case"ExpressionStatement":return t!=="expression";default:return!0}case"OptionalIndexedAccessType":return r.optional&&e.type==="IndexedAccessType";case"IntersectionTypeAnnotation":case"UnionTypeAnnotation":return e.type==="NullableTypeAnnotation";case"Literal":return e.type==="MemberExpression"&&$f.check(r.value)&&t==="object"&&e.object===r;case"NumericLiteral":return e.type==="MemberExpression"&&t==="object"&&e.object===r;case"YieldExpression":case"AwaitExpression":case"AssignmentExpression":case"ConditionalExpression":switch(e.type){case"UnaryExpression":case"SpreadElement":case"SpreadProperty":case"BinaryExpression":case"LogicalExpression":return!0;case"CallExpression":case"NewExpression":return t==="callee"&&e.callee===r;case"ConditionalExpression":return t==="test"&&e.test===r;case"MemberExpression":return t==="object"&&e.object===r;default:return!1}case"ArrowFunctionExpression":return oe.CallExpression.check(e)&&t==="callee"&&e.callee===r||oe.MemberExpression.check(e)&&t==="object"&&e.object===r||oe.TSAsExpression&&oe.TSAsExpression.check(e)&&t==="expression"&&e.expression===r?!0:Wu(e);case"ObjectExpression":if(e.type==="ArrowFunctionExpression"&&t==="body"&&e.body===r)return!0;break;case"TSAsExpression":if(e.type==="ArrowFunctionExpression"&&t==="body"&&e.body===r&&r.expression.type==="ObjectExpression")return!0;break;case"CallExpression":if(t==="declaration"&&oe.ExportDefaultDeclaration.check(e)&&oe.FunctionExpression.check(r.callee))return!0}return e.type==="NewExpression"&&t==="callee"&&e.callee===r?ba(r):!!(i!==!0&&!this.canBeFirstInStatement()&&this.firstInStatement())};function Wu(i){return oe.BinaryExpression.check(i)||oe.LogicalExpression.check(i)}function ba(i){return oe.CallExpression.check(i)?!0:Gf.check(i)?i.some(ba):oe.Node.check(i)?br.someField(i,function(r,e){return ba(e)}):!1}ve.canBeFirstInStatement=function(){var i=this.getNode();return!(oe.FunctionExpression.check(i)||oe.ObjectExpression.check(i)||oe.ClassExpression.check(i))};ve.firstInStatement=function(){for(var i=this.stack,r,e,t,s,a=i.length-1;a>=0;a-=2)if(oe.Node.check(i[a])&&(t=r,s=e,r=i[a-1],e=i[a]),!(!e||!s)){if(oe.BlockStatement.check(e)&&r==="body"&&t===0)return(0,Fe.default)(e.body[0]===s),!0;if(oe.ExpressionStatement.check(e)&&t==="expression")return(0,Fe.default)(e.expression===s),!0;if(oe.AssignmentExpression.check(e)&&t==="left")return(0,Fe.default)(e.left===s),!0;if(oe.ArrowFunctionExpression.check(e)&&t==="body")return(0,Fe.default)(e.body===s),!0;if(oe.SequenceExpression.check(e)&&i[a+1]==="expressions"&&t===0){(0,Fe.default)(e.expressions[0]===s);continue}if(oe.CallExpression.check(e)&&t==="callee"){(0,Fe.default)(e.callee===s);continue}if(oe.MemberExpression.check(e)&&t==="object"){(0,Fe.default)(e.object===s);continue}if(oe.ConditionalExpression.check(e)&&t==="test"){(0,Fe.default)(e.test===s);continue}if(Wu(e)&&t==="left"){(0,Fe.default)(e.left===s);continue}if(oe.UnaryExpression.check(e)&&!e.prefix&&t==="argument"){(0,Fe.default)(e.argument===s);continue}return!1}return!0};Ea.default=Et});var Zu=O(Wt=>{"use strict";Object.defineProperty(Wt,"__esModule",{value:!0});Wt.getReprinter=Wt.Patcher=void 0;var Es=(X(),V(J)),Kt=Es.__importDefault(Ge()),Sr=Es.__importStar(xr()),Qe=Es.__importStar(He()),Ar=Qe.namedTypes.Printable,Hu=Qe.namedTypes.Expression,Yf=Qe.namedTypes.ReturnStatement,Qf=Qe.namedTypes.SourceLocation,Er=_e(),bs=Es.__importDefault(Aa()),Tr=Qe.builtInTypes.object,Ta=Qe.builtInTypes.array,Zf=Qe.builtInTypes.string,Ss=/[0-9a-z_$]/i,Pa=function i(r){(0,Kt.default)(this instanceof i),(0,Kt.default)(r instanceof Sr.Lines);var e=this,t=[];e.replace=function(s,a){Zf.check(a)&&(a=Sr.fromString(a)),t.push({lines:a,start:s.start,end:s.end})},e.get=function(s){s=s||{start:{line:1,column:0},end:{line:r.length,column:r.getLineLength(r.length)}};var a=s.start,n=[];function u(c,f){(0,Kt.default)((0,Er.comparePos)(c,f)<=0),n.push(r.slice(c,f))}return t.sort(function(c,f){return(0,Er.comparePos)(c.start,f.start)}).forEach(function(c){(0,Er.comparePos)(a,c.start)>0||(u(a,c.start),n.push(c.lines),a=c.end)}),u(a,s.end),Sr.concat(n)}};Wt.Patcher=Pa;var $u=Pa.prototype;$u.tryToReprintComments=function(i,r,e){var t=this;if(!i.comments&&!r.comments)return!0;var s=bs.default.from(i),a=bs.default.from(r);s.stack.push("comments",Gu(i)),a.stack.push("comments",Gu(r));var n=[],u=Qu(s,a,n);return u&&n.length>0&&n.forEach(function(c){var f=c.oldPath.getValue();(0,Kt.default)(f.leading||f.trailing),t.replace(f.loc,e(c.newPath).indentTail(f.loc.indent))}),u};function Gu(i){var r=[];return i.comments&&i.comments.length>0&&i.comments.forEach(function(e){(e.leading||e.trailing)&&r.push(e)}),r}$u.deleteComments=function(i){if(i.comments){var r=this;i.comments.forEach(function(e){e.leading?r.replace({start:e.loc.start,end:i.loc.lines.skipSpaces(e.loc.end,!1,!1)},""):e.trailing&&r.replace({start:i.loc.lines.skipSpaces(e.loc.start,!0,!1),end:e.loc.end},"")})}};function ed(i){(0,Kt.default)(i instanceof bs.default);var r=i.getValue();if(Ar.check(r)){var e=r.original,t=e&&e.loc,s=t&&t.lines,a=[];if(!(!s||!sd(i,a)))return function(n){var u=new Pa(s);a.forEach(function(f){var h=f.newPath.getValue(),y=f.oldPath.getValue();Qf.assert(y.loc,!0);var m=!u.tryToReprintComments(h,y,n);m&&u.deleteComments(y);var o=n(f.newPath,{includeComments:m,avoidRootParens:y.type===h.type&&f.oldPath.hasParens()}).indentTail(y.loc.indent),l=td(s,y.loc,o),p=rd(s,y.loc,o);if(l||p){var d=[];l&&d.push(" "),d.push(o),p&&d.push(" "),o=Sr.concat(d)}u.replace(y.loc,o)});var c=u.get(t).indentTail(-e.loc.indent);return i.needsParens()?Sr.concat(["(",c,")"]):c}}}Wt.getReprinter=ed;function td(i,r,e){var t=(0,Er.copyPos)(r.start),s=i.prevPos(t)&&i.charAt(t),a=e.charAt(e.firstPos());return s&&Ss.test(s)&&a&&Ss.test(a)}function rd(i,r,e){var t=i.charAt(r.end),s=e.lastPos(),a=e.prevPos(s)&&e.charAt(s);return a&&Ss.test(a)&&t&&Ss.test(t)}function sd(i,r){var e=i.getValue();Ar.assert(e);var t=e.original;if(Ar.assert(t),(0,Kt.default)(r.length===0),e.type!==t.type)return!1;var s=new bs.default(t),a=Ca(i,s,r);return a||(r.length=0),a}function Yu(i,r,e){var t=i.getValue(),s=r.getValue();return t===s?!0:Ta.check(t)?Qu(i,r,e):Tr.check(t)?id(i,r,e):!1}function Qu(i,r,e){var t=i.getValue(),s=r.getValue();if(t===s||i.valueIsDuplicate()||r.valueIsDuplicate())return!0;Ta.assert(t);var a=t.length;if(!(Ta.check(s)&&s.length===a))return!1;for(var n=0;n<a;++n){i.stack.push(n,t[n]),r.stack.push(n,s[n]);var u=Yu(i,r,e);if(i.stack.length-=2,r.stack.length-=2,!u)return!1}return!0}function id(i,r,e){var t=i.getValue();if(Tr.assert(t),t.original===null)return!1;var s=r.getValue();if(!Tr.check(s))return!1;if(t===s||i.valueIsDuplicate()||r.valueIsDuplicate())return!0;if(Ar.check(t)){if(!Ar.check(s))return!1;var a=i.getParentNode(),n=r.getParentNode();if(n!==null&&n.type==="FunctionTypeAnnotation"&&a!==null&&a.type==="FunctionTypeAnnotation"){var u=n.params.length!==1||!!n.params[0].name,c=a.params.length!==1||!!a.params[0].name;if(!u&&c)return!1}if(t.type===s.type){var f=[];if(Ca(i,r,f))e.push.apply(e,f);else if(s.loc)e.push({oldPath:r.copy(),newPath:i.copy()});else return!1;return!0}return Hu.check(t)&&Hu.check(s)&&s.loc?(e.push({oldPath:r.copy(),newPath:i.copy()}),!0):!1}return Ca(i,r,e)}function Ca(i,r,e){var t=i.getValue(),s=r.getValue();if(Tr.assert(t),Tr.assert(s),t.original===null||i.needsParens()&&!r.hasParens())return!1;var a=(0,Er.getUnionOfKeys)(s,t);(s.type==="File"||t.type==="File")&&delete a.tokens,delete a.loc;var n=e.length;for(var u in a)if(u.charAt(0)!=="_"){i.stack.push(u,Qe.getFieldValue(t,u)),r.stack.push(u,Qe.getFieldValue(s,u));var c=Yu(i,r,e);if(i.stack.length-=2,r.stack.length-=2,!c)return!1}return!(Yf.check(i.getNode())&&e.length>n)}});var ll=O(ws=>{"use strict";Object.defineProperty(ws,"__esModule",{value:!0});ws.Printer=void 0;var $t=(X(),V(J)),je=$t.__importDefault(Ge()),Tt=$t.__importStar(He()),el=ya(),Cs=$t.__importDefault(Aa()),v=xr(),ad=ys(),nd=Zu(),Je=$t.__importStar(_e()),ce=Tt.namedTypes,wa=Tt.builtInTypes.string,od=Tt.builtInTypes.object,Ds=function i(r,e){(0,je.default)(this instanceof i),wa.assert(r),this.code=r,e&&(od.assert(e),this.map=e)},ud=Ds.prototype,tl=!1;ud.toString=function(){return tl||(console.warn("Deprecation warning: recast.print now returns an object with a .code property. You appear to be treating the object as a string, which might still work but is strongly discouraged."),tl=!0),this.code};var rl=new Ds(""),ld=function i(r){(0,je.default)(this instanceof i);var e=r&&r.tabWidth;r=(0,ad.normalize)(r),r.sourceFileName=null;function t(a,n){return a=Object.assign({},a,n),function(u){return s(u,a)}}function s(a,n){if((0,je.default)(a instanceof Cs.default),n=n||{},n.includeComments)return(0,el.printComments)(a,t(n,{includeComments:!1}));var u=r.tabWidth;if(!e){var c=a.getNode().loc;c&&c.lines&&c.lines.guessTabWidth&&(r.tabWidth=c.lines.guessTabWidth())}var f=(0,nd.getReprinter)(a),h=f?f(s):sl(a,r,n,t(n,{includeComments:!0,avoidRootParens:!1}));return r.tabWidth=u,h}this.print=function(a){if(!a)return rl;var n=s(Cs.default.from(a),{includeComments:!0,avoidRootParens:!1});return new Ds(n.toString(r),Je.composeSourceMaps(r.inputSourceMap,n.getSourceMap(r.sourceMapName,r.sourceRoot)))},this.printGenerically=function(a){if(!a)return rl;function n(h){return(0,el.printComments)(h,function(y){return sl(y,r,{includeComments:!0,avoidRootParens:!1},n)})}var u=Cs.default.from(a),c=r.reuseWhitespace;r.reuseWhitespace=!1;var f=new Ds(n(u).toString(r));return r.reuseWhitespace=c,f}};ws.Printer=ld;function sl(i,r,e,t){(0,je.default)(i instanceof Cs.default);var s=i.getValue(),a=[],n=cd(i,r,t);if(!s||n.isEmpty())return n;var u=!1,c=hd(i,t);return c.isEmpty()?e.avoidRootParens||(u=i.needsParens()):a.push(c),u&&a.unshift("("),a.push(n),u&&a.push(")"),(0,v.concat)(a)}function cd(i,r,e){var t=i.getValue();if(!t)return(0,v.fromString)("");if(typeof t=="string")return(0,v.fromString)(t,r);ce.Printable.assert(t);var s=[];switch(t.type){case"File":return i.call(e,"program");case"Program":return t.directives&&i.each(function(U){s.push(e(U),`;
19
+ `)},"directives"),t.interpreter&&s.push(i.call(e,"interpreter")),s.push(i.call(function(U){return Ht(U,r,e)},"body")),(0,v.concat)(s);case"Noop":case"EmptyStatement":return(0,v.fromString)("");case"ExpressionStatement":return(0,v.concat)([i.call(e,"expression"),";"]);case"ParenthesizedExpression":return(0,v.concat)(["(",i.call(e,"expression"),")"]);case"BinaryExpression":case"LogicalExpression":case"AssignmentExpression":return(0,v.fromString)(" ").join([i.call(e,"left"),t.operator,i.call(e,"right")]);case"AssignmentPattern":return(0,v.concat)([i.call(e,"left")," = ",i.call(e,"right")]);case"MemberExpression":case"OptionalMemberExpression":{s.push(i.call(e,"object"));var a=i.call(e,"property"),n=Tt.getFieldValue(t,"optional");return t.computed?s.push(n?"?.[":"[",a,"]"):s.push(n?"?.":".",a),(0,v.concat)(s)}case"ChainExpression":return i.call(e,"expression");case"MetaProperty":return(0,v.concat)([i.call(e,"meta"),".",i.call(e,"property")]);case"BindExpression":return t.object&&s.push(i.call(e,"object")),s.push("::",i.call(e,"callee")),(0,v.concat)(s);case"Path":return(0,v.fromString)(".").join(t.body);case"Identifier":return(0,v.concat)([(0,v.fromString)(t.name,r),t.optional?"?":"",i.call(e,"typeAnnotation")]);case"SpreadElement":case"SpreadElementPattern":case"RestProperty":case"SpreadProperty":case"SpreadPropertyPattern":case"ObjectTypeSpreadProperty":case"RestElement":return(0,v.concat)(["...",i.call(e,"argument"),i.call(e,"typeAnnotation")]);case"FunctionDeclaration":case"FunctionExpression":case"TSDeclareFunction":return t.declare&&s.push("declare "),t.async&&s.push("async "),s.push("function"),t.generator&&s.push("*"),t.id?s.push(" ",i.call(e,"id"),i.call(e,"typeParameters")):t.typeParameters&&s.push(i.call(e,"typeParameters")),s.push("(",ze(i,r,e),")",i.call(e,"returnType")),t.body&&s.push(" ",i.call(e,"body")),(0,v.concat)(s);case"ArrowFunctionExpression":return t.async&&s.push("async "),t.typeParameters&&s.push(i.call(e,"typeParameters")),!r.arrowParensAlways&&t.params.length===1&&!t.rest&&t.params[0].type==="Identifier"&&!t.params[0].typeAnnotation&&!t.returnType?s.push(i.call(e,"params",0)):s.push("(",ze(i,r,e),")",i.call(e,"returnType")),s.push(" => ",i.call(e,"body")),(0,v.concat)(s);case"MethodDefinition":return Da(i,r,e);case"YieldExpression":return s.push("yield"),t.delegate&&s.push("*"),t.argument&&s.push(" ",i.call(e,"argument")),(0,v.concat)(s);case"AwaitExpression":return s.push("await"),t.all&&s.push("*"),t.argument&&s.push(" ",i.call(e,"argument")),(0,v.concat)(s);case"ModuleExpression":return(0,v.concat)([`module {
20
+ `,i.call(e,"body").indent(r.tabWidth),`
21
+ }`]);case"ModuleDeclaration":return s.push("module",i.call(e,"id")),t.source?((0,je.default)(!t.body),s.push("from",i.call(e,"source"))):s.push(i.call(e,"body")),(0,v.fromString)(" ").join(s);case"ImportSpecifier":return t.importKind&&t.importKind!=="value"&&s.push(t.importKind+" "),t.imported?(s.push(i.call(e,"imported")),t.local&&t.local.name!==t.imported.name&&s.push(" as ",i.call(e,"local"))):t.id&&(s.push(i.call(e,"id")),t.name&&s.push(" as ",i.call(e,"name"))),(0,v.concat)(s);case"ExportSpecifier":return t.exportKind&&t.exportKind!=="value"&&s.push(t.exportKind+" "),t.local?(s.push(i.call(e,"local")),t.exported&&t.exported.name!==t.local.name&&s.push(" as ",i.call(e,"exported"))):t.id&&(s.push(i.call(e,"id")),t.name&&s.push(" as ",i.call(e,"name"))),(0,v.concat)(s);case"ExportBatchSpecifier":return(0,v.fromString)("*");case"ImportNamespaceSpecifier":return s.push("* as "),t.local?s.push(i.call(e,"local")):t.id&&s.push(i.call(e,"id")),(0,v.concat)(s);case"ImportDefaultSpecifier":return t.local?i.call(e,"local"):i.call(e,"id");case"TSExportAssignment":return(0,v.concat)(["export = ",i.call(e,"expression")]);case"ExportDeclaration":case"ExportDefaultDeclaration":case"ExportNamedDeclaration":return al(i,r,e);case"ExportAllDeclaration":return s.push("export *"),t.exported&&s.push(" as ",i.call(e,"exported")),s.push(" from ",i.call(e,"source"),";"),(0,v.concat)(s);case"TSNamespaceExportDeclaration":return s.push("export as namespace ",i.call(e,"id")),Ps((0,v.concat)(s));case"ExportNamespaceSpecifier":return(0,v.concat)(["* as ",i.call(e,"exported")]);case"ExportDefaultSpecifier":return i.call(e,"exported");case"Import":return(0,v.fromString)("import",r);case"ImportExpression":return(0,v.concat)(["import(",i.call(e,"source"),")"]);case"ImportDeclaration":{if(s.push("import "),t.importKind&&t.importKind!=="value"&&s.push(t.importKind+" "),t.specifiers&&t.specifiers.length>0){var u=[],c=[];if(i.each(function(U){var $=U.getValue();$.type==="ImportSpecifier"?c.push(e(U)):($.type==="ImportDefaultSpecifier"||$.type==="ImportNamespaceSpecifier")&&u.push(e(U))},"specifiers"),u.forEach(function(U,$){$>0&&s.push(", "),s.push(U)}),c.length>0){var f=(0,v.fromString)(", ").join(c);f.getLineLength(1)>r.wrapColumn&&(f=(0,v.concat)([(0,v.fromString)(`,
22
+ `).join(c).indent(r.tabWidth),","])),u.length>0&&s.push(", "),f.length>1?s.push(`{
23
+ `,f,`
24
+ }`):r.objectCurlySpacing?s.push("{ ",f," }"):s.push("{",f,"}")}s.push(" from ")}return s.push(i.call(e,"source"),ul(i,r,e),";"),(0,v.concat)(s)}case"ImportAttribute":return(0,v.concat)([i.call(e,"key"),": ",i.call(e,"value")]);case"StaticBlock":s.push("static ");case"BlockStatement":{var h=i.call(function(U){return Ht(U,r,e)},"body");return h.isEmpty()&&(!t.directives||t.directives.length===0)?(s.push("{}"),(0,v.concat)(s)):(s.push(`{
25
+ `),t.directives&&i.each(function(U){s.push(Ps(e(U).indent(r.tabWidth)),t.directives.length>1||!h.isEmpty()?`
26
+ `:"")},"directives"),s.push(h.indent(r.tabWidth)),s.push(`
27
+ }`),(0,v.concat)(s))}case"ReturnStatement":{if(s.push("return"),t.argument){var y=i.call(e,"argument");y.startsWithComment()||y.length>1&&ce.JSXElement&&ce.JSXElement.check(t.argument)?s.push(` (
28
+ `,y.indent(r.tabWidth),`
29
+ )`):s.push(" ",y)}return s.push(";"),(0,v.concat)(s)}case"CallExpression":case"OptionalCallExpression":return s.push(i.call(e,"callee")),t.typeParameters&&s.push(i.call(e,"typeParameters")),t.typeArguments&&s.push(i.call(e,"typeArguments")),Tt.getFieldValue(t,"optional")&&s.push("?."),s.push(il(i,r,e)),(0,v.concat)(s);case"RecordExpression":s.push("#");case"ObjectExpression":case"ObjectPattern":case"ObjectTypeAnnotation":{var m=t.type==="ObjectTypeAnnotation",o=r.flowObjectCommas?",":m?";":",",l=[],p=!1;m&&(l.push("indexers","callProperties"),t.internalSlots!=null&&l.push("internalSlots")),l.push("properties");var d=0;l.forEach(function(U){d+=t[U].length});var x=m&&d===1||d===0,g=t.exact?"{|":"{",E=t.exact?"|}":"}";s.push(x?g:g+`
30
+ `);var b=s.length-1,A=0;if(l.forEach(function(U){i.each(function($){var we=e($);x||(we=we.indent(r.tabWidth));var Le=!m&&we.length>1;Le&&p&&s.push(`
31
+ `),s.push(we),A<d-1?(s.push(o+(Le?`
32
+
33
+ `:`
34
+ `)),p=!Le):(d!==1&&m||!x&&Je.isTrailingCommaEnabled(r,"objects")&&$.getValue().type!=="RestElement")&&s.push(o),A++},U)}),t.inexact){var T=(0,v.fromString)("...",r);x?(d>0&&s.push(o," "),s.push(T)):s.push(`
35
+ `,T.indent(r.tabWidth))}return s.push(x?E:`
36
+ `+E),A!==0&&x&&r.objectCurlySpacing&&(s[b]=g+" ",s[s.length-1]=" "+E),t.typeAnnotation&&s.push(i.call(e,"typeAnnotation")),(0,v.concat)(s)}case"PropertyPattern":return(0,v.concat)([i.call(e,"key"),": ",i.call(e,"pattern")]);case"ObjectProperty":case"Property":{if(t.method||t.kind==="get"||t.kind==="set")return Da(i,r,e);if(t.shorthand&&t.value.type==="AssignmentPattern")return i.call(e,"value");var D=i.call(e,"key");return t.computed?s.push("[",D,"]"):s.push(D),(!t.shorthand||t.key.name!==t.value.name)&&s.push(": ",i.call(e,"value")),(0,v.concat)(s)}case"ClassMethod":case"ObjectMethod":case"ClassPrivateMethod":case"TSDeclareMethod":return Da(i,r,e);case"PrivateName":return(0,v.concat)(["#",i.call(e,"id")]);case"Decorator":return(0,v.concat)(["@",i.call(e,"expression")]);case"TupleExpression":s.push("#");case"ArrayExpression":case"ArrayPattern":{var L=t.elements,q=L.length,ee=i.map(e,"elements"),he=(0,v.fromString)(", ").join(ee),xe=he.getLineLength(1)<=r.wrapColumn;return xe?r.arrayBracketSpacing?s.push("[ "):s.push("["):s.push(`[
37
+ `),i.each(function(U){var $=U.getName(),we=U.getValue();if(!we)s.push(",");else{var Le=ee[$];xe?$>0&&s.push(" "):Le=Le.indent(r.tabWidth),s.push(Le),($<q-1||!xe&&Je.isTrailingCommaEnabled(r,"arrays"))&&s.push(","),xe||s.push(`
38
+ `)}},"elements"),xe&&r.arrayBracketSpacing?s.push(" ]"):s.push("]"),t.typeAnnotation&&s.push(i.call(e,"typeAnnotation")),(0,v.concat)(s)}case"SequenceExpression":return(0,v.fromString)(", ").join(i.map(e,"expressions"));case"ThisExpression":return(0,v.fromString)("this");case"Super":return(0,v.fromString)("super");case"NullLiteral":return(0,v.fromString)("null");case"RegExpLiteral":return(0,v.fromString)(Gt(t)||"/".concat(t.pattern,"/").concat(t.flags||""),r);case"BigIntLiteral":return(0,v.fromString)(Gt(t)||t.value+"n",r);case"NumericLiteral":return(0,v.fromString)(Gt(t)||t.value,r);case"DecimalLiteral":return(0,v.fromString)(Gt(t)||t.value+"m",r);case"StringLiteral":return(0,v.fromString)(Dr(t.value,r));case"BooleanLiteral":case"Literal":return(0,v.fromString)(Gt(t)||(typeof t.value=="string"?Dr(t.value,r):t.value),r);case"Directive":return i.call(e,"value");case"DirectiveLiteral":return(0,v.fromString)(Gt(t)||Dr(t.value,r),r);case"InterpreterDirective":return(0,v.fromString)("#!".concat(t.value,`
39
+ `),r);case"ModuleSpecifier":if(t.local)throw new Error("The ESTree ModuleSpecifier type should be abstract");return(0,v.fromString)(Dr(t.value,r),r);case"UnaryExpression":return s.push(t.operator),/[a-z]$/.test(t.operator)&&s.push(" "),s.push(i.call(e,"argument")),(0,v.concat)(s);case"UpdateExpression":return s.push(i.call(e,"argument"),t.operator),t.prefix&&s.reverse(),(0,v.concat)(s);case"ConditionalExpression":return(0,v.concat)([i.call(e,"test")," ? ",i.call(e,"consequent")," : ",i.call(e,"alternate")]);case"NewExpression":{s.push("new ",i.call(e,"callee")),t.typeParameters&&s.push(i.call(e,"typeParameters")),t.typeArguments&&s.push(i.call(e,"typeArguments"));var Ke=t.arguments;return Ke&&s.push(il(i,r,e)),(0,v.concat)(s)}case"VariableDeclaration":{t.declare&&s.push("declare "),s.push(t.kind," ");var dt=0,it=i.map(function(U){var $=e(U);return dt=Math.max($.length,dt),$},"declarations");dt===1?s.push((0,v.fromString)(", ").join(it)):it.length>1?s.push((0,v.fromString)(`,
40
+ `).join(it).indentTail(t.kind.length+1)):s.push(it[0]);var at=i.getParentNode();return!ce.ForStatement.check(at)&&!ce.ForInStatement.check(at)&&!(ce.ForOfStatement&&ce.ForOfStatement.check(at))&&!(ce.ForAwaitStatement&&ce.ForAwaitStatement.check(at))&&s.push(";"),(0,v.concat)(s)}case"VariableDeclarator":return t.init?(0,v.fromString)(" = ").join([i.call(e,"id"),i.call(e,"init")]):i.call(e,"id");case"WithStatement":return(0,v.concat)(["with (",i.call(e,"object"),") ",i.call(e,"body")]);case"IfStatement":{var kt=At(i.call(e,"consequent"),r);return s.push("if (",i.call(e,"test"),")",kt),t.alternate&&s.push(nl(kt)?" else":`
41
+ else`,At(i.call(e,"alternate"),r)),(0,v.concat)(s)}case"ForStatement":{var nt=i.call(e,"init"),ir=nt.length>1?`;
42
+ `:"; ",k="for (",F=(0,v.fromString)(ir).join([nt,i.call(e,"test"),i.call(e,"update")]).indentTail(k.length),N=(0,v.concat)([k,F,")"]),R=At(i.call(e,"body"),r);return s.push(N),N.length>1&&(s.push(`
43
+ `),R=R.trimLeft()),s.push(R),(0,v.concat)(s)}case"WhileStatement":return(0,v.concat)(["while (",i.call(e,"test"),")",At(i.call(e,"body"),r)]);case"ForInStatement":return(0,v.concat)([t.each?"for each (":"for (",i.call(e,"left")," in ",i.call(e,"right"),")",At(i.call(e,"body"),r)]);case"ForOfStatement":case"ForAwaitStatement":return s.push("for "),(t.await||t.type==="ForAwaitStatement")&&s.push("await "),s.push("(",i.call(e,"left")," of ",i.call(e,"right"),")",At(i.call(e,"body"),r)),(0,v.concat)(s);case"DoWhileStatement":{var G=(0,v.concat)(["do",At(i.call(e,"body"),r)]);return s.push(G),nl(G)?s.push(" while"):s.push(`
44
+ while`),s.push(" (",i.call(e,"test"),");"),(0,v.concat)(s)}case"DoExpression":{var Y=i.call(function(U){return Ht(U,r,e)},"body");return(0,v.concat)([`do {
45
+ `,Y.indent(r.tabWidth),`
46
+ }`])}case"BreakStatement":return s.push("break"),t.label&&s.push(" ",i.call(e,"label")),s.push(";"),(0,v.concat)(s);case"ContinueStatement":return s.push("continue"),t.label&&s.push(" ",i.call(e,"label")),s.push(";"),(0,v.concat)(s);case"LabeledStatement":return(0,v.concat)([i.call(e,"label"),`:
47
+ `,i.call(e,"body")]);case"TryStatement":return s.push("try ",i.call(e,"block")),t.handler?s.push(" ",i.call(e,"handler")):t.handlers&&i.each(function(U){s.push(" ",e(U))},"handlers"),t.finalizer&&s.push(" finally ",i.call(e,"finalizer")),(0,v.concat)(s);case"CatchClause":return s.push("catch "),t.param&&s.push("(",i.call(e,"param")),t.guard&&s.push(" if ",i.call(e,"guard")),t.param&&s.push(") "),s.push(i.call(e,"body")),(0,v.concat)(s);case"ThrowStatement":return(0,v.concat)(["throw ",i.call(e,"argument"),";"]);case"SwitchStatement":return(0,v.concat)(["switch (",i.call(e,"discriminant"),`) {
48
+ `,(0,v.fromString)(`
49
+ `).join(i.map(e,"cases")),`
50
+ }`]);case"SwitchCase":return t.test?s.push("case ",i.call(e,"test"),":"):s.push("default:"),t.consequent.length>0&&s.push(`
51
+ `,i.call(function(U){return Ht(U,r,e)},"consequent").indent(r.tabWidth)),(0,v.concat)(s);case"DebuggerStatement":return(0,v.fromString)("debugger;");case"JSXAttribute":return s.push(i.call(e,"name")),t.value&&s.push("=",i.call(e,"value")),(0,v.concat)(s);case"JSXIdentifier":return(0,v.fromString)(t.name,r);case"JSXNamespacedName":return(0,v.fromString)(":").join([i.call(e,"namespace"),i.call(e,"name")]);case"JSXMemberExpression":return(0,v.fromString)(".").join([i.call(e,"object"),i.call(e,"property")]);case"JSXSpreadAttribute":return(0,v.concat)(["{...",i.call(e,"argument"),"}"]);case"JSXSpreadChild":return(0,v.concat)(["{...",i.call(e,"expression"),"}"]);case"JSXExpressionContainer":return(0,v.concat)(["{",i.call(e,"expression"),"}"]);case"JSXElement":case"JSXFragment":{var de="opening"+(t.type==="JSXElement"?"Element":"Fragment"),se="closing"+(t.type==="JSXElement"?"Element":"Fragment"),ie=i.call(e,de);if(t[de].selfClosing)return(0,je.default)(!t[se],"unexpected "+se+" element in self-closing "+t.type),ie;var De=(0,v.concat)(i.map(function(U){var $=U.getValue();if(ce.Literal.check($)&&typeof $.value=="string"){if(/\S/.test($.value))return $.value.replace(/^\s+/g,"");if(/\n/.test($.value))return`
52
+ `}return e(U)},"children")).indentTail(r.tabWidth),Me=i.call(e,se);return(0,v.concat)([ie,De,Me])}case"JSXOpeningElement":{s.push("<",i.call(e,"name"));var Te=i.call(e,"typeParameters");Te.length&&s.push(Te);var be=[];i.each(function(U){be.push(" ",e(U))},"attributes");var ot=(0,v.concat)(be),We=ot.length>1||ot.getLineLength(1)>r.wrapColumn;return We&&(be.forEach(function(U,$){U===" "&&((0,je.default)($%2===0),be[$]=`
53
+ `)}),ot=(0,v.concat)(be).indentTail(r.tabWidth)),s.push(ot,t.selfClosing?" />":">"),(0,v.concat)(s)}case"JSXClosingElement":return(0,v.concat)(["</",i.call(e,"name"),">"]);case"JSXOpeningFragment":return(0,v.fromString)("<>");case"JSXClosingFragment":return(0,v.fromString)("</>");case"JSXText":return(0,v.fromString)(t.value,r);case"JSXEmptyExpression":return(0,v.fromString)("");case"TypeAnnotatedIdentifier":return(0,v.concat)([i.call(e,"annotation")," ",i.call(e,"identifier")]);case"ClassBody":return t.body.length===0?(0,v.fromString)("{}"):(0,v.concat)([`{
54
+ `,i.call(function(U){return Ht(U,r,e)},"body").indent(r.tabWidth),`
55
+ }`]);case"ClassPropertyDefinition":return s.push("static ",i.call(e,"definition")),ce.MethodDefinition.check(t.definition)||s.push(";"),(0,v.concat)(s);case"ClassProperty":{t.declare&&s.push("declare ");var It=t.accessibility||t.access;typeof It=="string"&&s.push(It," "),t.static&&s.push("static "),t.abstract&&s.push("abstract "),t.readonly&&s.push("readonly ");var D=i.call(e,"key");return t.computed&&(D=(0,v.concat)(["[",D,"]"])),t.variance&&(D=(0,v.concat)([Pr(i,e),D])),s.push(D),t.optional&&s.push("?"),t.definite&&s.push("!"),t.typeAnnotation&&s.push(i.call(e,"typeAnnotation")),t.value&&s.push(" = ",i.call(e,"value")),s.push(";"),(0,v.concat)(s)}case"ClassPrivateProperty":return t.static&&s.push("static "),s.push(i.call(e,"key")),t.typeAnnotation&&s.push(i.call(e,"typeAnnotation")),t.value&&s.push(" = ",i.call(e,"value")),s.push(";"),(0,v.concat)(s);case"ClassAccessorProperty":return s.push.apply(s,$t.__spreadArray($t.__spreadArray([],ol(t),!1),["accessor "],!1)),t.computed?s.push("[",i.call(e,"key"),"]"):s.push(i.call(e,"key")),t.optional&&s.push("?"),t.definite&&s.push("!"),t.typeAnnotation&&s.push(i.call(e,"typeAnnotation")),t.value&&s.push(" = ",i.call(e,"value")),s.push(";"),(0,v.concat)(s);case"ClassDeclaration":case"ClassExpression":case"DeclareClass":return t.declare&&s.push("declare "),t.abstract&&s.push("abstract "),s.push("class"),t.id&&s.push(" ",i.call(e,"id")),t.typeParameters&&s.push(i.call(e,"typeParameters")),t.superClass&&s.push(" extends ",i.call(e,"superClass"),i.call(e,"superTypeParameters")),t.extends&&t.extends.length>0&&s.push(" extends ",(0,v.fromString)(", ").join(i.map(e,"extends"))),t.implements&&t.implements.length>0&&s.push(" implements ",(0,v.fromString)(", ").join(i.map(e,"implements"))),s.push(" ",i.call(e,"body")),t.type==="DeclareClass"?Cr(i,s):(0,v.concat)(s);case"TemplateElement":return(0,v.fromString)(t.value.raw,r).lockIndentTail();case"TemplateLiteral":{var Nt=i.map(e,"expressions");return s.push("`"),i.each(function(U){var $=U.getName();s.push(e(U)),$<Nt.length&&s.push("${",Nt[$],"}")},"quasis"),s.push("`"),(0,v.concat)(s).lockIndentTail()}case"TaggedTemplateExpression":return(0,v.concat)([i.call(e,"tag"),i.call(e,"quasi")]);case"Node":case"Printable":case"SourceLocation":case"Position":case"Statement":case"Function":case"Pattern":case"Expression":case"Declaration":case"Specifier":case"NamedSpecifier":case"Comment":case"Flow":case"FlowType":case"FlowPredicate":case"MemberTypeAnnotation":case"Type":case"TSHasOptionalTypeParameterInstantiation":case"TSHasOptionalTypeParameters":case"TSHasOptionalTypeAnnotation":case"ChainElement":throw new Error("unprintable type: "+JSON.stringify(t.type));case"CommentBlock":case"Block":return(0,v.concat)(["/*",(0,v.fromString)(t.value,r),"*/"]);case"CommentLine":case"Line":return(0,v.concat)(["//",(0,v.fromString)(t.value,r)]);case"TypeAnnotation":return t.typeAnnotation?(t.typeAnnotation.type!=="FunctionTypeAnnotation"&&s.push(": "),s.push(i.call(e,"typeAnnotation")),(0,v.concat)(s)):(0,v.fromString)("");case"ExistentialTypeParam":case"ExistsTypeAnnotation":return(0,v.fromString)("*",r);case"EmptyTypeAnnotation":return(0,v.fromString)("empty",r);case"AnyTypeAnnotation":return(0,v.fromString)("any",r);case"MixedTypeAnnotation":return(0,v.fromString)("mixed",r);case"ArrayTypeAnnotation":return(0,v.concat)([i.call(e,"elementType"),"[]"]);case"TupleTypeAnnotation":{var qr=i.map(e,"types"),he=(0,v.fromString)(", ").join(qr),mt=he.getLineLength(1)<=r.wrapColumn;return mt?r.arrayBracketSpacing?s.push("[ "):s.push("["):s.push(`[
56
+ `),i.each(function($){var we=$.getName(),Le=$.getValue();if(!Le)s.push(",");else{var ar=qr[we];mt?we>0&&s.push(" "):ar=ar.indent(r.tabWidth),s.push(ar),(we<t.types.length-1||!mt&&Je.isTrailingCommaEnabled(r,"arrays"))&&s.push(","),mt||s.push(`
57
+ `)}},"types"),mt&&r.arrayBracketSpacing?s.push(" ]"):s.push("]"),(0,v.concat)(s)}case"BooleanTypeAnnotation":return(0,v.fromString)("boolean",r);case"BooleanLiteralTypeAnnotation":return(0,je.default)(typeof t.value=="boolean"),(0,v.fromString)(""+t.value,r);case"InterfaceTypeAnnotation":return s.push("interface"),t.extends&&t.extends.length>0&&s.push(" extends ",(0,v.fromString)(", ").join(i.map(e,"extends"))),s.push(" ",i.call(e,"body")),(0,v.concat)(s);case"DeclareFunction":return Cr(i,["function ",i.call(e,"id"),";"]);case"DeclareModule":return Cr(i,["module ",i.call(e,"id")," ",i.call(e,"body")]);case"DeclareModuleExports":return Cr(i,["module.exports",i.call(e,"typeAnnotation")]);case"DeclareVariable":return Cr(i,["var ",i.call(e,"id"),";"]);case"DeclareExportDeclaration":case"DeclareExportAllDeclaration":return(0,v.concat)(["declare ",al(i,r,e)]);case"EnumDeclaration":return(0,v.concat)(["enum ",i.call(e,"id"),i.call(e,"body")]);case"EnumBooleanBody":case"EnumNumberBody":case"EnumStringBody":case"EnumSymbolBody":return(t.type==="EnumSymbolBody"||t.explicitType)&&s.push(" of ",t.type.slice(4,-4).toLowerCase()),s.push(` {
58
+ `,(0,v.fromString)(`
59
+ `).join(i.map(e,"members")).indent(r.tabWidth),`
60
+ }`),(0,v.concat)(s);case"EnumDefaultedMember":return(0,v.concat)([i.call(e,"id"),","]);case"EnumBooleanMember":case"EnumNumberMember":case"EnumStringMember":return(0,v.concat)([i.call(e,"id")," = ",i.call(e,"init"),","]);case"InferredPredicate":return(0,v.fromString)("%checks",r);case"DeclaredPredicate":return(0,v.concat)(["%checks(",i.call(e,"value"),")"]);case"FunctionTypeAnnotation":{var Be=i.getParentNode(0),zr=!(ce.ObjectTypeCallProperty.check(Be)||ce.ObjectTypeInternalSlot.check(Be)&&Be.method||ce.DeclareFunction.check(i.getParentNode(2))),Us=zr&&!ce.FunctionTypeParam.check(Be)&&!ce.TypeAlias.check(Be);Us&&s.push(": ");var Jr=!!t.typeParameters,Xr=Jr||t.params.length!==1||t.params[0].name;return s.push(Jr?i.call(e,"typeParameters"):"",Xr?"(":"",ze(i,r,e),Xr?")":""),t.returnType&&s.push(zr?" => ":": ",i.call(e,"returnType")),(0,v.concat)(s)}case"FunctionTypeParam":{var Vr=i.call(e,"name");return s.push(Vr),t.optional&&s.push("?"),Vr.infos[0].line&&s.push(": "),s.push(i.call(e,"typeAnnotation")),(0,v.concat)(s)}case"GenericTypeAnnotation":return(0,v.concat)([i.call(e,"id"),i.call(e,"typeParameters")]);case"DeclareInterface":s.push("declare ");case"InterfaceDeclaration":case"TSInterfaceDeclaration":return t.declare&&s.push("declare "),s.push("interface ",i.call(e,"id"),i.call(e,"typeParameters")," "),t.extends&&t.extends.length>0&&s.push("extends ",(0,v.fromString)(", ").join(i.map(e,"extends"))," "),t.body&&s.push(i.call(e,"body")),(0,v.concat)(s);case"ClassImplements":case"InterfaceExtends":return(0,v.concat)([i.call(e,"id"),i.call(e,"typeParameters")]);case"IntersectionTypeAnnotation":return(0,v.fromString)(" & ").join(i.map(e,"types"));case"NullableTypeAnnotation":return(0,v.concat)(["?",i.call(e,"typeAnnotation")]);case"NullLiteralTypeAnnotation":return(0,v.fromString)("null",r);case"ThisTypeAnnotation":return(0,v.fromString)("this",r);case"NumberTypeAnnotation":return(0,v.fromString)("number",r);case"ObjectTypeCallProperty":return i.call(e,"value");case"ObjectTypeIndexer":return t.static&&s.push("static "),s.push(Pr(i,e),"["),t.id&&s.push(i.call(e,"id"),": "),s.push(i.call(e,"key"),"]: ",i.call(e,"value")),(0,v.concat)(s);case"ObjectTypeProperty":return(0,v.concat)([Pr(i,e),i.call(e,"key"),t.optional?"?":"",": ",i.call(e,"value")]);case"ObjectTypeInternalSlot":return(0,v.concat)([t.static?"static ":"","[[",i.call(e,"id"),"]]",t.optional?"?":"",t.value.type!=="FunctionTypeAnnotation"?": ":"",i.call(e,"value")]);case"QualifiedTypeIdentifier":return(0,v.concat)([i.call(e,"qualification"),".",i.call(e,"id")]);case"StringLiteralTypeAnnotation":return(0,v.fromString)(Dr(t.value,r),r);case"NumberLiteralTypeAnnotation":case"NumericLiteralTypeAnnotation":return(0,je.default)(typeof t.value=="number"),(0,v.fromString)(JSON.stringify(t.value),r);case"BigIntLiteralTypeAnnotation":return(0,v.fromString)(t.raw,r);case"StringTypeAnnotation":return(0,v.fromString)("string",r);case"DeclareTypeAlias":s.push("declare ");case"TypeAlias":return(0,v.concat)(["type ",i.call(e,"id"),i.call(e,"typeParameters")," = ",i.call(e,"right"),";"]);case"DeclareOpaqueType":s.push("declare ");case"OpaqueType":return s.push("opaque type ",i.call(e,"id"),i.call(e,"typeParameters")),t.supertype&&s.push(": ",i.call(e,"supertype")),t.impltype&&s.push(" = ",i.call(e,"impltype")),s.push(";"),(0,v.concat)(s);case"TypeCastExpression":return(0,v.concat)(["(",i.call(e,"expression"),i.call(e,"typeAnnotation"),")"]);case"TypeParameterDeclaration":case"TypeParameterInstantiation":return(0,v.concat)(["<",(0,v.fromString)(", ").join(i.map(e,"params")),">"]);case"Variance":return t.kind==="plus"?(0,v.fromString)("+"):t.kind==="minus"?(0,v.fromString)("-"):(0,v.fromString)("");case"TypeParameter":return t.variance&&s.push(Pr(i,e)),s.push(i.call(e,"name")),t.bound&&s.push(i.call(e,"bound")),t.default&&s.push("=",i.call(e,"default")),(0,v.concat)(s);case"TypeofTypeAnnotation":return(0,v.concat)([(0,v.fromString)("typeof ",r),i.call(e,"argument")]);case"IndexedAccessType":case"OptionalIndexedAccessType":return(0,v.concat)([i.call(e,"objectType"),t.optional?"?.":"","[",i.call(e,"indexType"),"]"]);case"UnionTypeAnnotation":return(0,v.fromString)(" | ").join(i.map(e,"types"));case"VoidTypeAnnotation":return(0,v.fromString)("void",r);case"NullTypeAnnotation":return(0,v.fromString)("null",r);case"SymbolTypeAnnotation":return(0,v.fromString)("symbol",r);case"BigIntTypeAnnotation":return(0,v.fromString)("bigint",r);case"TSType":throw new Error("unprintable type: "+JSON.stringify(t.type));case"TSNumberKeyword":return(0,v.fromString)("number",r);case"TSBigIntKeyword":return(0,v.fromString)("bigint",r);case"TSObjectKeyword":return(0,v.fromString)("object",r);case"TSBooleanKeyword":return(0,v.fromString)("boolean",r);case"TSStringKeyword":return(0,v.fromString)("string",r);case"TSSymbolKeyword":return(0,v.fromString)("symbol",r);case"TSAnyKeyword":return(0,v.fromString)("any",r);case"TSVoidKeyword":return(0,v.fromString)("void",r);case"TSIntrinsicKeyword":return(0,v.fromString)("intrinsic",r);case"TSThisType":return(0,v.fromString)("this",r);case"TSNullKeyword":return(0,v.fromString)("null",r);case"TSUndefinedKeyword":return(0,v.fromString)("undefined",r);case"TSUnknownKeyword":return(0,v.fromString)("unknown",r);case"TSNeverKeyword":return(0,v.fromString)("never",r);case"TSArrayType":return(0,v.concat)([i.call(e,"elementType"),"[]"]);case"TSLiteralType":return i.call(e,"literal");case"TSUnionType":return(0,v.fromString)(" | ").join(i.map(e,"types"));case"TSIntersectionType":return(0,v.fromString)(" & ").join(i.map(e,"types"));case"TSConditionalType":return s.push(i.call(e,"checkType")," extends ",i.call(e,"extendsType")," ? ",i.call(e,"trueType")," : ",i.call(e,"falseType")),(0,v.concat)(s);case"TSInferType":return s.push("infer ",i.call(e,"typeParameter")),(0,v.concat)(s);case"TSParenthesizedType":return(0,v.concat)(["(",i.call(e,"typeAnnotation"),")"]);case"TSFunctionType":return(0,v.concat)([i.call(e,"typeParameters"),"(",ze(i,r,e),") => ",i.call(e,"typeAnnotation","typeAnnotation")]);case"TSConstructorType":return(0,v.concat)(["new ",i.call(e,"typeParameters"),"(",ze(i,r,e),") => ",i.call(e,"typeAnnotation","typeAnnotation")]);case"TSMappedType":return s.push(t.readonly?"readonly ":"","[",i.call(e,"typeParameter"),"]",t.optional?"?":""),t.typeAnnotation&&s.push(": ",i.call(e,"typeAnnotation"),";"),(0,v.concat)([`{
61
+ `,(0,v.concat)(s).indent(r.tabWidth),`
62
+ }`]);case"TSTupleType":return(0,v.concat)(["[",(0,v.fromString)(", ").join(i.map(e,"elementTypes")),"]"]);case"TSNamedTupleMember":return s.push(i.call(e,"label")),t.optional&&s.push("?"),s.push(": ",i.call(e,"elementType")),(0,v.concat)(s);case"TSRestType":return(0,v.concat)(["...",i.call(e,"typeAnnotation")]);case"TSOptionalType":return(0,v.concat)([i.call(e,"typeAnnotation"),"?"]);case"TSIndexedAccessType":return(0,v.concat)([i.call(e,"objectType"),"[",i.call(e,"indexType"),"]"]);case"TSTypeOperator":return(0,v.concat)([i.call(e,"operator")," ",i.call(e,"typeAnnotation")]);case"TSTypeLiteral":{var Kr=(0,v.fromString)(`
63
+ `).join(i.map(e,"members").map(function(U){return wr(U)!==";"?U.concat(";"):U}));return Kr.isEmpty()?(0,v.fromString)("{}",r):(s.push(`{
64
+ `,Kr.indent(r.tabWidth),`
65
+ }`),(0,v.concat)(s))}case"TSEnumMember":return s.push(i.call(e,"id")),t.initializer&&s.push(" = ",i.call(e,"initializer")),(0,v.concat)(s);case"TSTypeQuery":return(0,v.concat)(["typeof ",i.call(e,"exprName")]);case"TSParameterProperty":return t.accessibility&&s.push(t.accessibility," "),t.export&&s.push("export "),t.static&&s.push("static "),t.readonly&&s.push("readonly "),s.push(i.call(e,"parameter")),(0,v.concat)(s);case"TSTypeReference":return(0,v.concat)([i.call(e,"typeName"),i.call(e,"typeParameters")]);case"TSQualifiedName":return(0,v.concat)([i.call(e,"left"),".",i.call(e,"right")]);case"TSAsExpression":case"TSSatisfiesExpression":{var qs=i.call(e,"expression");return s.push(qs,t.type==="TSSatisfiesExpression"?" satisfies ":" as ",i.call(e,"typeAnnotation")),(0,v.concat)(s)}case"TSTypeCastExpression":return(0,v.concat)([i.call(e,"expression"),i.call(e,"typeAnnotation")]);case"TSNonNullExpression":return(0,v.concat)([i.call(e,"expression"),"!"]);case"TSTypeAnnotation":return(0,v.concat)([": ",i.call(e,"typeAnnotation")]);case"TSIndexSignature":return(0,v.concat)([t.readonly?"readonly ":"","[",i.map(e,"parameters"),"]",i.call(e,"typeAnnotation")]);case"TSPropertySignature":return s.push(Pr(i,e),t.readonly?"readonly ":""),t.computed?s.push("[",i.call(e,"key"),"]"):s.push(i.call(e,"key")),s.push(t.optional?"?":"",i.call(e,"typeAnnotation")),(0,v.concat)(s);case"TSMethodSignature":return t.kind==="get"?s.push("get "):t.kind==="set"&&s.push("set "),t.computed?s.push("[",i.call(e,"key"),"]"):s.push(i.call(e,"key")),t.optional&&s.push("?"),s.push(i.call(e,"typeParameters"),"(",ze(i,r,e),")",i.call(e,"typeAnnotation")),(0,v.concat)(s);case"TSTypePredicate":return t.asserts&&s.push("asserts "),s.push(i.call(e,"parameterName")),t.typeAnnotation&&s.push(" is ",i.call(e,"typeAnnotation","typeAnnotation")),(0,v.concat)(s);case"TSCallSignatureDeclaration":return(0,v.concat)([i.call(e,"typeParameters"),"(",ze(i,r,e),")",i.call(e,"typeAnnotation")]);case"TSConstructSignatureDeclaration":return t.typeParameters?s.push("new",i.call(e,"typeParameters")):s.push("new "),s.push("(",ze(i,r,e),")",i.call(e,"typeAnnotation")),(0,v.concat)(s);case"TSTypeAliasDeclaration":return(0,v.concat)([t.declare?"declare ":"","type ",i.call(e,"id"),i.call(e,"typeParameters")," = ",i.call(e,"typeAnnotation"),";"]);case"TSTypeParameter":{s.push(i.call(e,"name"));var Be=i.getParentNode(0),zs=ce.TSMappedType.check(Be);return t.constraint&&s.push(zs?" in ":" extends ",i.call(e,"constraint")),t.default&&s.push(" = ",i.call(e,"default")),(0,v.concat)(s)}case"TSTypeAssertion":return s.push("<",i.call(e,"typeAnnotation"),"> ",i.call(e,"expression")),(0,v.concat)(s);case"TSTypeParameterDeclaration":case"TSTypeParameterInstantiation":return(0,v.concat)(["<",(0,v.fromString)(", ").join(i.map(e,"params")),">"]);case"TSEnumDeclaration":{s.push(t.declare?"declare ":"",t.const?"const ":"","enum ",i.call(e,"id"));var Wr=(0,v.fromString)(`,
66
+ `).join(i.map(e,"members"));return Wr.isEmpty()?s.push(" {}"):s.push(` {
67
+ `,Wr.indent(r.tabWidth),`
68
+ }`),(0,v.concat)(s)}case"TSExpressionWithTypeArguments":return(0,v.concat)([i.call(e,"expression"),i.call(e,"typeParameters")]);case"TSInterfaceBody":{var f=(0,v.fromString)(`
69
+ `).join(i.map(e,"body").map(function($){return wr($)!==";"?$.concat(";"):$}));return f.isEmpty()?(0,v.fromString)("{}",r):(0,v.concat)([`{
70
+ `,f.indent(r.tabWidth),`
71
+ }`])}case"TSImportType":return s.push("import(",i.call(e,"argument"),")"),t.qualifier&&s.push(".",i.call(e,"qualifier")),t.typeParameters&&s.push(i.call(e,"typeParameters")),(0,v.concat)(s);case"TSImportEqualsDeclaration":return t.isExport&&s.push("export "),s.push("import ",i.call(e,"id")," = ",i.call(e,"moduleReference")),Ps((0,v.concat)(s));case"TSExternalModuleReference":return(0,v.concat)(["require(",i.call(e,"expression"),")"]);case"TSModuleDeclaration":{var Be=i.getParentNode();if(Be.type==="TSModuleDeclaration")s.push(".");else if(t.declare&&s.push("declare "),!t.global){var Js=t.id.type==="StringLiteral"||t.id.type==="Literal"&&typeof t.id.value=="string";if(Js)s.push("module ");else if(t.loc&&t.loc.lines&&t.id.loc){var Xs=t.loc.lines.sliceString(t.loc.start,t.id.loc.start);Xs.indexOf("module")>=0?s.push("module "):s.push("namespace ")}else s.push("namespace ")}return s.push(i.call(e,"id")),t.body&&(s.push(" "),s.push(i.call(e,"body"))),(0,v.concat)(s)}case"TSModuleBlock":{var Hr=i.call(function(U){return Ht(U,r,e)},"body");return Hr.isEmpty()?s.push("{}"):s.push(`{
72
+ `,Hr.indent(r.tabWidth),`
73
+ }`),(0,v.concat)(s)}case"TSInstantiationExpression":return s.push(i.call(e,"expression"),i.call(e,"typeParameters")),(0,v.concat)(s);case"V8IntrinsicIdentifier":return(0,v.concat)(["%",i.call(e,"name")]);case"TopicReference":return(0,v.fromString)("#");case"ClassHeritage":case"ComprehensionBlock":case"ComprehensionExpression":case"Glob":case"GeneratorExpression":case"LetStatement":case"LetExpression":case"GraphExpression":case"GraphIndexExpression":case"XMLDefaultDeclaration":case"XMLAnyName":case"XMLQualifiedIdentifier":case"XMLFunctionQualifiedIdentifier":case"XMLAttributeSelector":case"XMLFilterExpression":case"XML":case"XMLElement":case"XMLList":case"XMLEscape":case"XMLText":case"XMLStartTag":case"XMLEndTag":case"XMLPointTag":case"XMLName":case"XMLAttribute":case"XMLCdata":case"XMLComment":case"XMLProcessingInstruction":default:debugger;throw new Error("unknown type: "+JSON.stringify(t.type))}}function hd(i,r){var e=[],t=i.getValue();return t.decorators&&t.decorators.length>0&&!Je.getParentExportDeclaration(i)?i.each(function(s){e.push(r(s),`
74
+ `)},"decorators"):Je.isExportDeclaration(t)&&t.declaration&&t.declaration.decorators&&i.each(function(s){e.push(r(s),`
75
+ `)},"declaration","decorators"),(0,v.concat)(e)}function Ht(i,r,e){var t=[],s=!1,a=!1;i.each(function(f){var h=f.getValue();h&&(h.type==="EmptyStatement"&&!(h.comments&&h.comments.length>0)||(ce.Comment.check(h)?s=!0:ce.Statement.check(h)?a=!0:wa.assert(h),t.push({node:h,printed:e(f)})))}),s&&(0,je.default)(a===!1,"Comments may appear as statements in otherwise empty statement lists, but may not coexist with non-Comment nodes.");var n=null,u=t.length,c=[];return t.forEach(function(f,h){var y=f.printed,m=f.node,o=y.length>1,l=h>0,p=h<u-1,d,x,g=m&&m.loc&&m.loc.lines,E=g&&r.reuseWhitespace&&Je.getTrueLoc(m,g);if(l)if(E){var b=g.skipSpaces(E.start,!0),A=b?b.line:1,T=E.start.line-A;d=Array(T+1).join(`
76
+ `)}else d=o?`
77
+
78
+ `:`
79
+ `;else d="";if(p)if(E){var D=g.skipSpaces(E.end),L=D?D.line:g.length,q=L-E.end.line;x=Array(q+1).join(`
80
+ `)}else x=o?`
81
+
82
+ `:`
83
+ `;else x="";c.push(pd(n,d),y),p?n=x:x&&c.push(x)}),(0,v.concat)(c)}function pd(i,r){if(!i&&!r)return(0,v.fromString)("");if(!i)return(0,v.fromString)(r);if(!r)return(0,v.fromString)(i);var e=(0,v.fromString)(i),t=(0,v.fromString)(r);return t.length>e.length?t:e}function ol(i){var r=[];i.declare&&r.push("declare ");var e=i.accessibility||i.access;return typeof e=="string"&&r.push(e," "),i.static&&r.push("static "),i.override&&r.push("override "),i.abstract&&r.push("abstract "),i.readonly&&r.push("readonly "),r}function Da(i,r,e){var t=i.getNode(),s=t.kind,a=[],n=t.value;ce.FunctionExpression.check(n)||(n=t),a.push.apply(a,ol(t)),n.async&&a.push("async "),n.generator&&a.push("*"),(s==="get"||s==="set")&&a.push(s," ");var u=i.call(e,"key");return t.computed&&(u=(0,v.concat)(["[",u,"]"])),a.push(u),t.optional&&a.push("?"),t===n?(a.push(i.call(e,"typeParameters"),"(",ze(i,r,e),")",i.call(e,"returnType")),t.body?a.push(" ",i.call(e,"body")):a.push(";")):(a.push(i.call(e,"value","typeParameters"),"(",i.call(function(c){return ze(c,r,e)},"value"),")",i.call(e,"value","returnType")),n.body?a.push(" ",i.call(e,"value","body")):a.push(";")),(0,v.concat)(a)}function il(i,r,e){var t=i.map(e,"arguments"),s=Je.isTrailingCommaEnabled(r,"parameters"),a=(0,v.fromString)(", ").join(t);return a.getLineLength(1)>r.wrapColumn?(a=(0,v.fromString)(`,
84
+ `).join(t),(0,v.concat)([`(
85
+ `,a.indent(r.tabWidth),s?`,
86
+ )`:`
87
+ )`])):(0,v.concat)(["(",a,")"])}function ze(i,r,e){var t=i.getValue(),s,a=[];t.params?(s=t.params,a=i.map(e,"params")):t.parameters&&(s=t.parameters,a=i.map(e,"parameters")),t.defaults&&i.each(function(u){var c=u.getName(),f=a[c];f&&u.getValue()&&(a[c]=(0,v.concat)([f," = ",e(u)]))},"defaults"),t.rest&&a.push((0,v.concat)(["...",i.call(e,"rest")]));var n=(0,v.fromString)(", ").join(a);return n.length>1||n.getLineLength(1)>r.wrapColumn?(n=(0,v.fromString)(`,
88
+ `).join(a),Je.isTrailingCommaEnabled(r,"parameters")&&!t.rest&&s[s.length-1].type!=="RestElement"?n=(0,v.concat)([n,`,
89
+ `]):n=(0,v.concat)([n,`
90
+ `]),(0,v.concat)([`
91
+ `,n.indent(r.tabWidth)])):n}function ul(i,r,e){var t=i.getValue();if(t.assertions&&t.assertions.length>0){var s=[" assert {"],a=i.map(e,"assertions"),n=(0,v.fromString)(", ").join(a);return n.length>1||n.getLineLength(1)>r.wrapColumn?s.push(`
92
+ `,(0,v.fromString)(`,
93
+ `).join(a).indent(r.tabWidth),`
94
+ }`):s.push(" ",n," }"),(0,v.concat)(s)}return(0,v.fromString)("")}function al(i,r,e){var t=i.getValue(),s=["export "];t.exportKind&&t.exportKind==="type"&&(t.declaration||s.push("type "));var a=r.objectCurlySpacing;if(ce.Declaration.assert(t),(t.default||t.type==="ExportDefaultDeclaration")&&s.push("default "),t.declaration)s.push(i.call(e,"declaration"));else if(t.specifiers){if(t.specifiers.length===1&&t.specifiers[0].type==="ExportBatchSpecifier")s.push("*");else if(t.specifiers.length===0)s.push("{}");else if(t.specifiers[0].type==="ExportDefaultSpecifier"||t.specifiers[0].type==="ExportNamespaceSpecifier"){var n=[],u=[];if(i.each(function(h){var y=h.getValue();y.type==="ExportDefaultSpecifier"||y.type==="ExportNamespaceSpecifier"?n.push(e(h)):u.push(e(h))},"specifiers"),n.forEach(function(h,y){y>0&&s.push(", "),s.push(h)}),u.length>0){var c=(0,v.fromString)(", ").join(u);c.getLineLength(1)>r.wrapColumn&&(c=(0,v.concat)([(0,v.fromString)(`,
95
+ `).join(u).indent(r.tabWidth),","])),n.length>0&&s.push(", "),c.length>1?s.push(`{
96
+ `,c,`
97
+ }`):r.objectCurlySpacing?s.push("{ ",c," }"):s.push("{",c,"}")}}else s.push(a?"{ ":"{",(0,v.fromString)(", ").join(i.map(e,"specifiers")),a?" }":"}");t.source&&s.push(" from ",i.call(e,"source"),ul(i,r,e))}var f=(0,v.concat)(s);return wr(f)!==";"&&!(t.declaration&&(t.declaration.type==="FunctionDeclaration"||t.declaration.type==="ClassDeclaration"||t.declaration.type==="TSModuleDeclaration"||t.declaration.type==="TSInterfaceDeclaration"||t.declaration.type==="TSEnumDeclaration"))&&(f=(0,v.concat)([f,";"])),f}function Cr(i,r){var e=Je.getParentExportDeclaration(i);return e?(0,je.default)(e.type==="DeclareExportDeclaration"):r.unshift("declare "),(0,v.concat)(r)}function Pr(i,r){return i.call(function(e){var t=e.getValue();return t?t==="plus"?(0,v.fromString)("+"):t==="minus"?(0,v.fromString)("-"):r(e):(0,v.fromString)("")},"variance")}function At(i,r){return i.length>1?(0,v.concat)([" ",i]):(0,v.concat)([`
98
+ `,Ps(i).indent(r.tabWidth)])}function wr(i){var r=i.lastPos();do{var e=i.charAt(r);if(/\S/.test(e))return e}while(i.prevPos(r))}function nl(i){return wr(i)==="}"}function As(i){return i.replace(/['"]/g,function(r){return r==='"'?"'":'"'})}function Gt(i){var r=Tt.getFieldValue(i,"value"),e=Tt.getFieldValue(i,"extra");if(e&&typeof e.raw=="string"&&r==e.rawValue)return e.raw;if(i.type==="Literal"){var t=i.raw;if(typeof t=="string"&&r==t)return t}}function Ts(i){return JSON.stringify(i).replace(/[\u2028\u2029]/g,function(r){return"\\u"+r.charCodeAt(0).toString(16)})}function Dr(i,r){switch(wa.assert(i),r.quote){case"auto":{var e=Ts(i),t=As(Ts(As(i)));return e.length>t.length?t:e}case"single":return As(Ts(As(i)));case"double":default:return Ts(i)}}function Ps(i){var r=wr(i);return!r||`
99
+ };`.indexOf(r)<0?(0,v.concat)([i,";"]):i}});var dl=O(Ae=>{"use strict";Object.defineProperty(Ae,"__esModule",{value:!0});Ae.run=Ae.prettyPrint=Ae.print=Ae.visit=Ae.types=Ae.parse=void 0;var cl=(X(),V(J)),fd=cl.__importDefault(require("fs")),dd=cl.__importStar(He());Ae.types=dd;var hl=Xu();Object.defineProperty(Ae,"parse",{enumerable:!0,get:function(){return hl.parse}});var pl=ll(),md=He();Object.defineProperty(Ae,"visit",{enumerable:!0,get:function(){return md.visit}});function fl(i,r){return new pl.Printer(r).print(i)}Ae.print=fl;function yd(i,r){return new pl.Printer(r).printGenerically(i)}Ae.prettyPrint=yd;function xd(i,r){return gd(process.argv[2],i,r)}Ae.run=xd;function gd(i,r,e){fd.default.readFile(i,"utf-8",function(t,s){if(t){console.error(t);return}bd(s,r,e)})}function vd(i){process.stdout.write(i)}function bd(i,r,e){var t=e&&e.writeback||vd;r((0,hl.parse)(i,e),function(s){t(fl(s,e).code)})}});var Ia=O(ka=>{"use strict";Object.defineProperty(ka,"__esModule",{value:!0});var ml=_e();function Sd(i){return{sourceType:(0,ml.getOption)(i,"sourceType","module"),strictMode:(0,ml.getOption)(i,"strictMode",!1),allowImportExportEverywhere:!0,allowReturnOutsideFunction:!0,startLine:1,tokens:!0,plugins:["asyncGenerators","bigInt","classPrivateMethods","classPrivateProperties","classProperties","classStaticBlock","decimal","decorators-legacy","doExpressions","dynamicImport","exportDefaultFrom","exportExtensions","exportNamespaceFrom","functionBind","functionSent","importAssertions","importMeta","nullishCoalescingOperator","numericSeparator","objectRestSpread","optionalCatchBinding","optionalChaining",["pipelineOperator",{proposal:"minimal"}],["recordAndTuple",{syntaxType:"hash"}],"throwExpressions","topLevelAwait","v8intrinsic"]}}ka.default=Sd});var Hl=O(Rr=>{"use strict";Object.defineProperty(Rr,"__esModule",{value:!0});function Nl(i,r){if(i==null)return{};var e={},t=Object.keys(i),s,a;for(a=0;a<t.length;a++)s=t[a],!(r.indexOf(s)>=0)&&(e[s]=i[s]);return e}var Ve=class{constructor(r,e,t){this.line=void 0,this.column=void 0,this.index=void 0,this.line=r,this.column=e,this.index=t}},er=class{constructor(r,e){this.start=void 0,this.end=void 0,this.filename=void 0,this.identifierName=void 0,this.start=r,this.end=e}};function Ee(i,r){let{line:e,column:t,index:s}=i;return new Ve(e,t+r,s+r)}var yl="BABEL_PARSER_SOURCETYPE_MODULE_REQUIRED",Ed={ImportMetaOutsideModule:{message:`import.meta may appear only with 'sourceType: "module"'`,code:yl},ImportOutsideModule:{message:`'import' and 'export' may appear only with 'sourceType: "module"'`,code:yl}},xl={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"},Ns=i=>i.type==="UpdateExpression"?xl.UpdateExpression[`${i.prefix}`]:xl[i.type],Ad={AccessorIsGenerator:({kind:i})=>`A ${i}ter cannot be a generator.`,ArgumentsInClass:"'arguments' is only allowed in functions and class methods.",AsyncFunctionInSingleStatementContext:"Async functions can only be declared at the top level or inside a block.",AwaitBindingIdentifier:"Can not use 'await' as identifier inside an async function.",AwaitBindingIdentifierInStaticBlock:"Can not use 'await' as identifier inside a static block.",AwaitExpressionFormalParameter:"'await' is not allowed in async function parameters.",AwaitUsingNotInAsyncContext:"'await using' is only allowed within async functions and at the top levels of modules.",AwaitNotInAsyncContext:"'await' is only allowed within async functions and at the top levels of modules.",AwaitNotInAsyncFunction:"'await' is only allowed within async functions.",BadGetterArity:"A 'get' accessor must not have any formal parameters.",BadSetterArity:"A 'set' accessor must have exactly one formal parameter.",BadSetterRestParameter:"A 'set' accessor function argument must not be a rest parameter.",ConstructorClassField:"Classes may not have a field named 'constructor'.",ConstructorClassPrivateField:"Classes may not have a private field named '#constructor'.",ConstructorIsAccessor:"Class constructor may not be an accessor.",ConstructorIsAsync:"Constructor can't be an async function.",ConstructorIsGenerator:"Constructor can't be a generator.",DeclarationMissingInitializer:({kind:i})=>`Missing initializer in ${i} 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:i})=>`\`${i}\` has already been exported. Exported identifiers must be unique.`,DuplicateProto:"Redefinition of __proto__ property.",DuplicateRegExpFlags:"Duplicate regular expression flag.",DynamicImportPhaseRequiresImportExpressions:({phase:i})=>`'import.${i}(...)' can only be parsed when using the 'createImportExpressions' option.`,ElementAfterRest:"Rest element must be last element.",EscapedCharNotAnIdentifier:"Invalid Unicode escape.",ExportBindingIsString:({localName:i,exportName:r})=>`A string literal cannot be used as an exported binding without \`from\`.
100
+ - Did you mean \`export { '${i}' as '${r}' } from 'some-module'\`?`,ExportDefaultFromAsIdentifier:"'from' is not allowed as an identifier after 'export default'.",ForInOfLoopInitializer:({type:i})=>`'${i==="ForInStatement"?"for-in":"for-of"}' loop variable declaration may not have an initializer.`,ForInUsing:"For-in loop may not start with 'using' declaration.",ForOfAsync:"The left-hand side of a for-of loop may not be 'async'.",ForOfLet:"The left-hand side of a for-of loop may not start with 'let'.",GeneratorInSingleStatementContext:"Generators can only be declared at the top level or inside a block.",IllegalBreakContinue:({type:i})=>`Unsyntactic ${i==="BreakStatement"?"break":"continue"}.`,IllegalLanguageModeDirective:"Illegal 'use strict' directive in function with non-simple parameter list.",IllegalReturn:"'return' outside of function.",ImportAttributesUseAssert:"The `assert` keyword in import attributes is deprecated and it has been replaced by the `with` keyword. You can enable the `deprecatedAssertSyntax: true` option in the import attributes plugin to suppress this error.",ImportBindingIsString:({importName:i})=>`A string literal cannot be used as an imported binding.
101
+ - Did you mean \`import { "${i}" as foo }\`?`,ImportCallArgumentTrailingComma:"Trailing comma is disallowed inside import(...) arguments.",ImportCallArity:({maxArgumentCount:i})=>`\`import()\` requires exactly ${i===1?"one argument":"one or two arguments"}.`,ImportCallNotNewExpression:"Cannot use new with import(...).",ImportCallSpreadArgument:"`...` is not allowed in `import()`.",ImportJSONBindingNotDefault:"A JSON module can only be imported with `default`.",ImportReflectionHasAssertion:"`import module x` cannot have assertions.",ImportReflectionNotBinding:'Only `import module x from "./module"` is valid.',IncompatibleRegExpUVFlags:"The 'u' and 'v' regular expression flags cannot be enabled at the same time.",InvalidBigIntLiteral:"Invalid BigIntLiteral.",InvalidCodePoint:"Code point out of bounds.",InvalidCoverInitializedName:"Invalid shorthand property initializer.",InvalidDecimal:"Invalid decimal.",InvalidDigit:({radix:i})=>`Expected number in radix ${i}.`,InvalidEscapeSequence:"Bad character escape sequence.",InvalidEscapeSequenceTemplate:"Invalid escape sequence in template.",InvalidEscapedReservedWord:({reservedWord:i})=>`Escape sequence in keyword ${i}.`,InvalidIdentifier:({identifierName:i})=>`Invalid identifier ${i}.`,InvalidLhs:({ancestor:i})=>`Invalid left-hand side in ${Ns(i)}.`,InvalidLhsBinding:({ancestor:i})=>`Binding invalid left-hand side in ${Ns(i)}.`,InvalidLhsOptionalChaining:({ancestor:i})=>`Invalid optional chaining in the left-hand side of ${Ns(i)}.`,InvalidNumber:"Invalid number.",InvalidOrMissingExponent:"Floating-point numbers require a valid exponent after the 'e'.",InvalidOrUnexpectedToken:({unexpected:i})=>`Unexpected character '${i}'.`,InvalidParenthesizedAssignment:"Invalid parenthesized assignment pattern.",InvalidPrivateFieldResolution:({identifierName:i})=>`Private name #${i} 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:i})=>`Label '${i}' 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:i})=>`This experimental syntax requires enabling the parser plugin: ${i.map(r=>JSON.stringify(r)).join(", ")}.`,MissingOneOfPlugins:({missingPlugin:i})=>`This experimental syntax requires enabling one of the following parser plugin(s): ${i.map(r=>JSON.stringify(r)).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:i})=>`Duplicate key "${i}" is not allowed in module attributes.`,ModuleExportNameHasLoneSurrogate:({surrogateCharCode:i})=>`An export name cannot include a lone surrogate, found '\\u${i.toString(16)}'.`,ModuleExportUndefined:({localName:i})=>`Export '${i}' 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:i})=>`Private names are only allowed in property accesses (\`obj.#${i}\`) or in \`in\` expressions (\`#${i} in obj\`).`,PrivateNameRedeclaration:({identifierName:i})=>`Duplicate private name #${i}.`,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:i})=>`Unexpected keyword '${i}'.`,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:i})=>`Unexpected reserved word '${i}'.`,UnexpectedSuper:"'super' is only allowed in object methods and classes.",UnexpectedToken:({expected:i,unexpected:r})=>`Unexpected token${r?` '${r}'.`:""}${i?`, expected "${i}"`:""}`,UnexpectedTokenUnaryExponentiation:"Illegal expression. Wrap left hand side or entire exponentiation in parentheses.",UnexpectedUsingDeclaration:"Using declaration cannot appear in the top level when source type is `script`.",UnsupportedBind:"Binding should be performed on object property.",UnsupportedDecoratorExport:"A decorated export must export a class declaration.",UnsupportedDefaultExport:"Only expressions, functions or classes are allowed as the `default` export.",UnsupportedImport:"`import` can only be used in `import()` or `import.meta`.",UnsupportedMetaProperty:({target:i,onlyValidPropertyName:r})=>`The only valid meta property for ${i} is ${i}.${r}.`,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:i})=>`Identifier '${i}' has already been declared.`,YieldBindingIdentifier:"Can not use 'yield' as identifier inside a generator.",YieldInParameter:"Yield expression is not allowed in formal parameters.",ZeroDigitNumericSeparator:"Numeric separator can not be used after leading 0."},Td={StrictDelete:"Deleting local variable in strict mode.",StrictEvalArguments:({referenceName:i})=>`Assigning to '${i}' in strict mode.`,StrictEvalArgumentsBinding:({bindingName:i})=>`Binding '${i}' 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."},Cd=new Set(["ArrowFunctionExpression","AssignmentExpression","ConditionalExpression","YieldExpression"]),Pd={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:i})=>`Invalid topic token ${i}. In order to use ${i} as a topic reference, the pipelineOperator plugin must be configured with { "proposal": "hack", "topicToken": "${i}" }.`,PipeTopicUnused:"Hack-style pipe body does not contain a topic reference; Hack-style pipes must use topic at least once.",PipeUnparenthesizedBody:({type:i})=>`Hack-style pipe body cannot be an unparenthesized ${Ns({type:i})}; 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.'},Dd=["toMessage"],wd=["message"];function gl(i,r,e){Object.defineProperty(i,r,{enumerable:!1,configurable:!0,value:e})}function kd(i){let{toMessage:r}=i,e=Nl(i,Dd);return function t(s,a){let n=new SyntaxError;return Object.assign(n,e,{loc:s,pos:s.index}),"missingPlugin"in a&&Object.assign(n,{missingPlugin:a.missingPlugin}),gl(n,"clone",function(c={}){var f;let{line:h,column:y,index:m}=(f=c.loc)!=null?f:s;return t(new Ve(h,y,m),Object.assign({},a,c.details))}),gl(n,"details",a),Object.defineProperty(n,"message",{configurable:!0,get(){let u=`${r(a)} (${s.line}:${s.column})`;return this.message=u,u},set(u){Object.defineProperty(this,"message",{value:u,writable:!0})}}),n}}function rt(i,r){if(Array.isArray(i))return t=>rt(t,i[0]);let e={};for(let t of Object.keys(i)){let s=i[t],a=typeof s=="string"?{message:()=>s}:typeof s=="function"?{message:s}:s,{message:n}=a,u=Nl(a,wd),c=typeof n=="string"?()=>n:n;e[t]=kd(Object.assign({code:"BABEL_PARSER_SYNTAX_ERROR",reasonCode:t,toMessage:c},r?{syntaxPlugin:r}:{},u))}return e}var S=Object.assign({},rt(Ed),rt(Ad),rt(Td),rt`pipelineOperator`(Pd)),{defineProperty:Id}=Object,vl=(i,r)=>Id(i,r,{enumerable:!1,value:i[r]});function kr(i){return i.loc.start&&vl(i.loc.start,"index"),i.loc.end&&vl(i.loc.end,"index"),i}var Nd=i=>class extends i{parse(){let e=kr(super.parse());return this.options.tokens&&(e.tokens=e.tokens.map(kr)),e}parseRegExpLiteral({pattern:e,flags:t}){let s=null;try{s=new RegExp(e,t)}catch{}let a=this.estreeParseLiteral(s);return a.regex={pattern:e,flags:t},a}parseBigIntLiteral(e){let t;try{t=BigInt(e)}catch{t=null}let s=this.estreeParseLiteral(t);return s.bigint=String(s.value||e),s}parseDecimalLiteral(e){let s=this.estreeParseLiteral(null);return s.decimal=String(s.value||e),s}estreeParseLiteral(e){return this.parseLiteral(e,"Literal")}parseStringLiteral(e){return this.estreeParseLiteral(e)}parseNumericLiteral(e){return this.estreeParseLiteral(e)}parseNullLiteral(){return this.estreeParseLiteral(null)}parseBooleanLiteral(e){return this.estreeParseLiteral(e)}directiveToStmt(e){let t=e.value;delete e.value,t.type="Literal",t.raw=t.extra.raw,t.value=t.extra.expressionValue;let s=e;return s.type="ExpressionStatement",s.expression=t,s.directive=t.extra.rawValue,delete t.extra,s}initFunction(e,t){super.initFunction(e,t),e.expression=!1}checkDeclaration(e){e!=null&&this.isObjectProperty(e)?this.checkDeclaration(e.value):super.checkDeclaration(e)}getObjectOrClassMethodParams(e){return e.value.params}isValidDirective(e){var t;return e.type==="ExpressionStatement"&&e.expression.type==="Literal"&&typeof e.expression.value=="string"&&!((t=e.expression.extra)!=null&&t.parenthesized)}parseBlockBody(e,t,s,a,n){super.parseBlockBody(e,t,s,a,n);let u=e.directives.map(c=>this.directiveToStmt(c));e.body=u.concat(e.body),delete e.directives}pushClassMethod(e,t,s,a,n,u){this.parseMethod(t,s,a,n,u,"ClassMethod",!0),t.typeParameters&&(t.value.typeParameters=t.typeParameters,delete t.typeParameters),e.body.push(t)}parsePrivateName(){let e=super.parsePrivateName();return this.getPluginOption("estree","classFeatures")?this.convertPrivateNameToPrivateIdentifier(e):e}convertPrivateNameToPrivateIdentifier(e){let t=super.getPrivateNameSV(e);return e=e,delete e.id,e.name=t,e.type="PrivateIdentifier",e}isPrivateName(e){return this.getPluginOption("estree","classFeatures")?e.type==="PrivateIdentifier":super.isPrivateName(e)}getPrivateNameSV(e){return this.getPluginOption("estree","classFeatures")?e.name:super.getPrivateNameSV(e)}parseLiteral(e,t){let s=super.parseLiteral(e,t);return s.raw=s.extra.raw,delete s.extra,s}parseFunctionBody(e,t,s=!1){super.parseFunctionBody(e,t,s),e.expression=e.body.type!=="BlockStatement"}parseMethod(e,t,s,a,n,u,c=!1){let f=this.startNode();return f.kind=e.kind,f=super.parseMethod(f,t,s,a,n,u,c),f.type="FunctionExpression",delete f.kind,e.value=f,u==="ClassPrivateMethod"&&(e.computed=!1),this.finishNode(e,"MethodDefinition")}nameIsConstructor(e){return e.type==="Literal"?e.value==="constructor":super.nameIsConstructor(e)}parseClassProperty(...e){let t=super.parseClassProperty(...e);return this.getPluginOption("estree","classFeatures")&&(t.type="PropertyDefinition"),t}parseClassPrivateProperty(...e){let t=super.parseClassPrivateProperty(...e);return this.getPluginOption("estree","classFeatures")&&(t.type="PropertyDefinition",t.computed=!1),t}parseObjectMethod(e,t,s,a,n){let u=super.parseObjectMethod(e,t,s,a,n);return u&&(u.type="Property",u.kind==="method"&&(u.kind="init"),u.shorthand=!1),u}parseObjectProperty(e,t,s,a){let n=super.parseObjectProperty(e,t,s,a);return n&&(n.kind="init",n.type="Property"),n}isValidLVal(e,t,s){return e==="Property"?"value":super.isValidLVal(e,t,s)}isAssignable(e,t){return e!=null&&this.isObjectProperty(e)?this.isAssignable(e.value,t):super.isAssignable(e,t)}toAssignable(e,t=!1){if(e!=null&&this.isObjectProperty(e)){let{key:s,value:a}=e;this.isPrivateName(s)&&this.classScope.usePrivateName(this.getPrivateNameSV(s),s.loc.start),this.toAssignable(a,t)}else super.toAssignable(e,t)}toAssignableObjectExpressionProp(e,t,s){e.type==="Property"&&(e.kind==="get"||e.kind==="set")?this.raise(S.PatternHasAccessor,e.key):e.type==="Property"&&e.method?this.raise(S.PatternHasMethod,e.key):super.toAssignableObjectExpressionProp(e,t,s)}finishCallExpression(e,t){let s=super.finishCallExpression(e,t);if(s.callee.type==="Import"){if(s.type="ImportExpression",s.source=s.arguments[0],this.hasPlugin("importAttributes")||this.hasPlugin("importAssertions")){var a,n;s.options=(a=s.arguments[1])!=null?a:null,s.attributes=(n=s.arguments[1])!=null?n:null}delete s.arguments,delete s.callee}return s}toReferencedArguments(e){e.type!=="ImportExpression"&&super.toReferencedArguments(e)}parseExport(e,t){let s=this.state.lastTokStartLoc,a=super.parseExport(e,t);switch(a.type){case"ExportAllDeclaration":a.exported=null;break;case"ExportNamedDeclaration":a.specifiers.length===1&&a.specifiers[0].type==="ExportNamespaceSpecifier"&&(a.type="ExportAllDeclaration",a.exported=a.specifiers[0].exported,delete a.specifiers);case"ExportDefaultDeclaration":{var n;let{declaration:u}=a;u?.type==="ClassDeclaration"&&((n=u.decorators)==null?void 0:n.length)>0&&u.start===a.start&&this.resetStartLocation(a,s)}break}return a}parseSubscript(e,t,s,a){let n=super.parseSubscript(e,t,s,a);if(a.optionalChainMember){if((n.type==="OptionalMemberExpression"||n.type==="OptionalCallExpression")&&(n.type=n.type.substring(8)),a.stop){let u=this.startNodeAtNode(n);return u.expression=n,this.finishNode(u,"ChainExpression")}}else(n.type==="MemberExpression"||n.type==="CallExpression")&&(n.optional=!1);return n}isOptionalMemberExpression(e){return e.type==="ChainExpression"?e.expression.type==="MemberExpression":super.isOptionalMemberExpression(e)}hasPropertyAsPrivateName(e){return e.type==="ChainExpression"&&(e=e.expression),super.hasPropertyAsPrivateName(e)}isObjectProperty(e){return e.type==="Property"&&e.kind==="init"&&!e.method}isObjectMethod(e){return e.type==="Property"&&(e.method||e.kind==="get"||e.kind==="set")}finishNodeAt(e,t,s){return kr(super.finishNodeAt(e,t,s))}resetStartLocation(e,t){super.resetStartLocation(e,t),kr(e)}resetEndLocation(e,t=this.state.lastTokEndLoc){super.resetEndLocation(e,t),kr(e)}},Dt=class{constructor(r,e){this.token=void 0,this.preserveSpace=void 0,this.token=r,this.preserveSpace=!!e}},re={brace:new Dt("{"),j_oTag:new Dt("<tag"),j_cTag:new Dt("</tag"),j_expr:new Dt("<tag>...</tag>",!0)};re.template=new Dt("`",!0);var W=!0,I=!0,Na=!0,Ir=!0,ht=!0,Fd=!0,Ls=class{constructor(r,e={}){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=r,this.keyword=e.keyword,this.beforeExpr=!!e.beforeExpr,this.startsExpr=!!e.startsExpr,this.rightAssociative=!!e.rightAssociative,this.isLoop=!!e.isLoop,this.isAssign=!!e.isAssign,this.prefix=!!e.prefix,this.postfix=!!e.postfix,this.binop=e.binop!=null?e.binop:null,this.updateContext=null}},rn=new Map;function Q(i,r={}){r.keyword=i;let e=_(i,r);return rn.set(i,e),e}function Se(i,r){return _(i,{beforeExpr:W,binop:r})}var Br=-1,et=[],sn=[],an=[],nn=[],on=[],un=[];function _(i,r={}){var e,t,s,a;return++Br,sn.push(i),an.push((e=r.binop)!=null?e:-1),nn.push((t=r.beforeExpr)!=null?t:!1),on.push((s=r.startsExpr)!=null?s:!1),un.push((a=r.prefix)!=null?a:!1),et.push(new Ls(i,r)),Br}function K(i,r={}){var e,t,s,a;return++Br,rn.set(i,Br),sn.push(i),an.push((e=r.binop)!=null?e:-1),nn.push((t=r.beforeExpr)!=null?t:!1),on.push((s=r.startsExpr)!=null?s:!1),un.push((a=r.prefix)!=null?a:!1),et.push(new Ls("name",r)),Br}var Md={bracketL:_("[",{beforeExpr:W,startsExpr:I}),bracketHashL:_("#[",{beforeExpr:W,startsExpr:I}),bracketBarL:_("[|",{beforeExpr:W,startsExpr:I}),bracketR:_("]"),bracketBarR:_("|]"),braceL:_("{",{beforeExpr:W,startsExpr:I}),braceBarL:_("{|",{beforeExpr:W,startsExpr:I}),braceHashL:_("#{",{beforeExpr:W,startsExpr:I}),braceR:_("}"),braceBarR:_("|}"),parenL:_("(",{beforeExpr:W,startsExpr:I}),parenR:_(")"),comma:_(",",{beforeExpr:W}),semi:_(";",{beforeExpr:W}),colon:_(":",{beforeExpr:W}),doubleColon:_("::",{beforeExpr:W}),dot:_("."),question:_("?",{beforeExpr:W}),questionDot:_("?."),arrow:_("=>",{beforeExpr:W}),template:_("template"),ellipsis:_("...",{beforeExpr:W}),backQuote:_("`",{startsExpr:I}),dollarBraceL:_("${",{beforeExpr:W,startsExpr:I}),templateTail:_("...`",{startsExpr:I}),templateNonTail:_("...${",{beforeExpr:W,startsExpr:I}),at:_("@"),hash:_("#",{startsExpr:I}),interpreterDirective:_("#!..."),eq:_("=",{beforeExpr:W,isAssign:Ir}),assign:_("_=",{beforeExpr:W,isAssign:Ir}),slashAssign:_("_=",{beforeExpr:W,isAssign:Ir}),xorAssign:_("_=",{beforeExpr:W,isAssign:Ir}),moduloAssign:_("_=",{beforeExpr:W,isAssign:Ir}),incDec:_("++/--",{prefix:ht,postfix:Fd,startsExpr:I}),bang:_("!",{beforeExpr:W,prefix:ht,startsExpr:I}),tilde:_("~",{beforeExpr:W,prefix:ht,startsExpr:I}),doubleCaret:_("^^",{startsExpr:I}),doubleAt:_("@@",{startsExpr:I}),pipeline:Se("|>",0),nullishCoalescing:Se("??",1),logicalOR:Se("||",1),logicalAND:Se("&&",2),bitwiseOR:Se("|",3),bitwiseXOR:Se("^",4),bitwiseAND:Se("&",5),equality:Se("==/!=/===/!==",6),lt:Se("</>/<=/>=",7),gt:Se("</>/<=/>=",7),relational:Se("</>/<=/>=",7),bitShift:Se("<</>>/>>>",8),bitShiftL:Se("<</>>/>>>",8),bitShiftR:Se("<</>>/>>>",8),plusMin:_("+/-",{beforeExpr:W,binop:9,prefix:ht,startsExpr:I}),modulo:_("%",{binop:10,startsExpr:I}),star:_("*",{binop:10}),slash:Se("/",10),exponent:_("**",{beforeExpr:W,binop:11,rightAssociative:!0}),_in:Q("in",{beforeExpr:W,binop:7}),_instanceof:Q("instanceof",{beforeExpr:W,binop:7}),_break:Q("break"),_case:Q("case",{beforeExpr:W}),_catch:Q("catch"),_continue:Q("continue"),_debugger:Q("debugger"),_default:Q("default",{beforeExpr:W}),_else:Q("else",{beforeExpr:W}),_finally:Q("finally"),_function:Q("function",{startsExpr:I}),_if:Q("if"),_return:Q("return",{beforeExpr:W}),_switch:Q("switch"),_throw:Q("throw",{beforeExpr:W,prefix:ht,startsExpr:I}),_try:Q("try"),_var:Q("var"),_const:Q("const"),_with:Q("with"),_new:Q("new",{beforeExpr:W,startsExpr:I}),_this:Q("this",{startsExpr:I}),_super:Q("super",{startsExpr:I}),_class:Q("class",{startsExpr:I}),_extends:Q("extends",{beforeExpr:W}),_export:Q("export"),_import:Q("import",{startsExpr:I}),_null:Q("null",{startsExpr:I}),_true:Q("true",{startsExpr:I}),_false:Q("false",{startsExpr:I}),_typeof:Q("typeof",{beforeExpr:W,prefix:ht,startsExpr:I}),_void:Q("void",{beforeExpr:W,prefix:ht,startsExpr:I}),_delete:Q("delete",{beforeExpr:W,prefix:ht,startsExpr:I}),_do:Q("do",{isLoop:Na,beforeExpr:W}),_for:Q("for",{isLoop:Na}),_while:Q("while",{isLoop:Na}),_as:K("as",{startsExpr:I}),_assert:K("assert",{startsExpr:I}),_async:K("async",{startsExpr:I}),_await:K("await",{startsExpr:I}),_defer:K("defer",{startsExpr:I}),_from:K("from",{startsExpr:I}),_get:K("get",{startsExpr:I}),_let:K("let",{startsExpr:I}),_meta:K("meta",{startsExpr:I}),_of:K("of",{startsExpr:I}),_sent:K("sent",{startsExpr:I}),_set:K("set",{startsExpr:I}),_source:K("source",{startsExpr:I}),_static:K("static",{startsExpr:I}),_using:K("using",{startsExpr:I}),_yield:K("yield",{startsExpr:I}),_asserts:K("asserts",{startsExpr:I}),_checks:K("checks",{startsExpr:I}),_exports:K("exports",{startsExpr:I}),_global:K("global",{startsExpr:I}),_implements:K("implements",{startsExpr:I}),_intrinsic:K("intrinsic",{startsExpr:I}),_infer:K("infer",{startsExpr:I}),_is:K("is",{startsExpr:I}),_mixins:K("mixins",{startsExpr:I}),_proto:K("proto",{startsExpr:I}),_require:K("require",{startsExpr:I}),_satisfies:K("satisfies",{startsExpr:I}),_keyof:K("keyof",{startsExpr:I}),_readonly:K("readonly",{startsExpr:I}),_unique:K("unique",{startsExpr:I}),_abstract:K("abstract",{startsExpr:I}),_declare:K("declare",{startsExpr:I}),_enum:K("enum",{startsExpr:I}),_module:K("module",{startsExpr:I}),_namespace:K("namespace",{startsExpr:I}),_interface:K("interface",{startsExpr:I}),_type:K("type",{startsExpr:I}),_opaque:K("opaque",{startsExpr:I}),name:_("name",{startsExpr:I}),string:_("string",{startsExpr:I}),num:_("num",{startsExpr:I}),bigint:_("bigint",{startsExpr:I}),decimal:_("decimal",{startsExpr:I}),regexp:_("regexp",{startsExpr:I}),privateName:_("#name",{startsExpr:I}),eof:_("eof"),jsxName:_("jsxName"),jsxText:_("jsxText",{beforeExpr:!0}),jsxTagStart:_("jsxTagStart",{startsExpr:!0}),jsxTagEnd:_("jsxTagEnd"),placeholder:_("%%",{startsExpr:!0})};function Z(i){return i>=93&&i<=132}function Bd(i){return i<=92}function Re(i){return i>=58&&i<=132}function Fl(i){return i>=58&&i<=136}function Ld(i){return nn[i]}function Oa(i){return on[i]}function Od(i){return i>=29&&i<=33}function bl(i){return i>=129&&i<=131}function _d(i){return i>=90&&i<=92}function ln(i){return i>=58&&i<=92}function jd(i){return i>=39&&i<=59}function Rd(i){return i===34}function Ud(i){return un[i]}function qd(i){return i>=121&&i<=123}function zd(i){return i>=124&&i<=130}function ft(i){return sn[i]}function Fs(i){return an[i]}function Jd(i){return i===57}function Os(i){return i>=24&&i<=25}function Ze(i){return et[i]}et[8].updateContext=i=>{i.pop()},et[5].updateContext=et[7].updateContext=et[23].updateContext=i=>{i.push(re.brace)},et[22].updateContext=i=>{i[i.length-1]===re.template?i.pop():i.push(re.template)},et[142].updateContext=i=>{i.push(re.j_expr,re.j_oTag)};var cn="\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CA\uA7D0\uA7D1\uA7D3\uA7D5-\uA7D9\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC",Ml="\u200C\u200D\xB7\u0300-\u036F\u0387\u0483-\u0487\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u0669\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u06F0-\u06F9\u0711\u0730-\u074A\u07A6-\u07B0\u07C0-\u07C9\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u0898-\u089F\u08CA-\u08E1\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0966-\u096F\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u09E6-\u09EF\u09FE\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A66-\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0AE6-\u0AEF\u0AFA-\u0AFF\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B55-\u0B57\u0B62\u0B63\u0B66-\u0B6F\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0BE6-\u0BEF\u0C00-\u0C04\u0C3C\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C66-\u0C6F\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0CE6-\u0CEF\u0CF3\u0D00-\u0D03\u0D3B\u0D3C\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D66-\u0D6F\u0D81-\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0E50-\u0E59\u0EB1\u0EB4-\u0EBC\u0EC8-\u0ECE\u0ED0-\u0ED9\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1040-\u1049\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F-\u109D\u135D-\u135F\u1369-\u1371\u1712-\u1715\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u17E0-\u17E9\u180B-\u180D\u180F-\u1819\u18A9\u1920-\u192B\u1930-\u193B\u1946-\u194F\u19D0-\u19DA\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AB0-\u1ABD\u1ABF-\u1ACE\u1B00-\u1B04\u1B34-\u1B44\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BB0-\u1BB9\u1BE6-\u1BF3\u1C24-\u1C37\u1C40-\u1C49\u1C50-\u1C59\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF4\u1CF7-\u1CF9\u1DC0-\u1DFF\u200C\u200D\u203F\u2040\u2054\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\u30FB\uA620-\uA629\uA66F\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA82C\uA880\uA881\uA8B4-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F1\uA8FF-\uA909\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9D0-\uA9D9\uA9E5\uA9F0-\uA9F9\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA50-\uAA59\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uABF0-\uABF9\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFF10-\uFF19\uFF3F\uFF65",Xd=new RegExp("["+cn+"]"),Vd=new RegExp("["+cn+Ml+"]");cn=Ml=null;var Bl=[0,11,2,25,2,18,2,1,2,14,3,13,35,122,70,52,268,28,4,48,48,31,14,29,6,37,11,29,3,35,5,7,2,4,43,157,19,35,5,35,5,39,9,51,13,10,2,14,2,6,2,1,2,10,2,14,2,6,2,1,68,310,10,21,11,7,25,5,2,41,2,8,70,5,3,0,2,43,2,1,4,0,3,22,11,22,10,30,66,18,2,1,11,21,11,25,71,55,7,1,65,0,16,3,2,2,2,28,43,28,4,28,36,7,2,27,28,53,11,21,11,18,14,17,111,72,56,50,14,50,14,35,349,41,7,1,79,28,11,0,9,21,43,17,47,20,28,22,13,52,58,1,3,0,14,44,33,24,27,35,30,0,3,0,9,34,4,0,13,47,15,3,22,0,2,0,36,17,2,24,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,159,52,19,3,21,2,31,47,21,1,2,0,185,46,42,3,37,47,21,0,60,42,14,0,72,26,38,6,186,43,117,63,32,7,3,0,3,7,2,1,2,23,16,0,2,0,95,7,3,38,17,0,2,0,29,0,11,39,8,0,22,0,12,45,20,0,19,72,264,8,2,36,18,0,50,29,113,6,2,1,2,37,22,0,26,5,2,1,2,31,15,0,328,18,16,0,2,12,2,33,125,0,80,921,103,110,18,195,2637,96,16,1071,18,5,4026,582,8634,568,8,30,18,78,18,29,19,47,17,3,32,20,6,18,689,63,129,74,6,0,67,12,65,1,2,0,29,6135,9,1237,43,8,8936,3,2,6,2,1,2,290,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,757,6,2,3,2,1,2,14,2,196,60,67,8,0,1205,3,2,26,2,1,2,0,3,0,2,9,2,3,2,0,2,0,7,0,5,0,2,0,2,0,2,2,2,1,2,0,3,0,2,0,2,0,2,0,2,0,2,1,2,0,3,3,2,6,2,3,2,3,2,0,2,9,2,16,6,2,2,4,2,16,4421,42719,33,4153,7,221,3,5761,15,7472,16,621,2467,541,1507,4938,6,4191],Kd=[509,0,227,0,150,4,294,9,1368,2,2,1,6,3,41,2,5,0,166,1,574,3,9,9,370,1,81,2,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,193,17,10,9,5,0,82,19,13,9,214,6,3,8,28,1,83,16,16,9,82,12,9,9,84,14,5,9,243,14,166,9,71,5,2,1,3,3,2,0,2,1,13,9,120,6,3,6,4,0,29,9,41,6,2,3,9,0,10,10,47,15,406,7,2,7,17,9,57,21,2,13,123,5,4,0,2,1,2,6,2,0,9,9,49,4,2,1,2,4,9,9,330,3,10,1,2,0,49,6,4,4,14,9,5351,0,7,14,13835,9,87,9,39,4,60,6,26,9,1014,0,2,54,8,3,82,0,12,1,19628,1,4706,45,3,22,543,4,4,5,9,7,3,6,31,3,149,2,1418,49,513,54,5,49,9,0,15,0,23,4,2,14,1361,6,2,16,3,6,2,1,2,4,101,0,161,6,10,9,357,0,62,13,499,13,983,6,110,6,6,9,4759,9,787719,239];function _a(i,r){let e=65536;for(let t=0,s=r.length;t<s;t+=2){if(e+=r[t],e>i)return!1;if(e+=r[t+1],e>=i)return!0}return!1}function tt(i){return i<65?i===36:i<=90?!0:i<97?i===95:i<=122?!0:i<=65535?i>=170&&Xd.test(String.fromCharCode(i)):_a(i,Bl)}function Qt(i){return i<48?i===36:i<58?!0:i<65?!1:i<=90?!0:i<97?i===95:i<=122?!0:i<=65535?i>=170&&Vd.test(String.fromCharCode(i)):_a(i,Bl)||_a(i,Kd)}var hn={keyword:["break","case","catch","continue","debugger","default","do","else","finally","for","function","if","return","switch","throw","try","var","const","while","with","new","this","super","class","extends","export","import","null","true","false","in","instanceof","typeof","void","delete"],strict:["implements","interface","let","package","private","protected","public","static","yield"],strictBind:["eval","arguments"]},Wd=new Set(hn.keyword),Hd=new Set(hn.strict),Gd=new Set(hn.strictBind);function Ll(i,r){return r&&i==="await"||i==="enum"}function Ol(i,r){return Ll(i,r)||Hd.has(i)}function _l(i){return Gd.has(i)}function jl(i,r){return Ol(i,r)||_l(i)}function $d(i){return Wd.has(i)}function Yd(i,r,e){return i===64&&r===64&&tt(e)}var Qd=new Set(["break","case","catch","continue","debugger","default","do","else","finally","for","function","if","return","switch","throw","try","var","const","while","with","new","this","super","class","extends","export","import","null","true","false","in","instanceof","typeof","void","delete","implements","interface","let","package","private","protected","public","static","yield","eval","arguments","enum","await"]);function Zd(i){return Qd.has(i)}var Or=class{constructor(r){this.flags=0,this.names=new Map,this.firstLexicalName="",this.flags=r}},_r=class{constructor(r,e){this.parser=void 0,this.scopeStack=[],this.inModule=void 0,this.undefinedExports=new Map,this.parser=r,this.inModule=e}get inTopLevel(){return(this.currentScope().flags&1)>0}get inFunction(){return(this.currentVarScopeFlags()&2)>0}get allowSuper(){return(this.currentThisScopeFlags()&16)>0}get allowDirectSuper(){return(this.currentThisScopeFlags()&32)>0}get inClass(){return(this.currentThisScopeFlags()&64)>0}get inClassAndNotInNonArrowFunction(){let r=this.currentThisScopeFlags();return(r&64)>0&&(r&2)===0}get inStaticBlock(){for(let r=this.scopeStack.length-1;;r--){let{flags:e}=this.scopeStack[r];if(e&128)return!0;if(e&451)return!1}}get inNonArrowFunction(){return(this.currentThisScopeFlags()&2)>0}get treatFunctionsAsVar(){return this.treatFunctionsAsVarInScope(this.currentScope())}createScope(r){return new Or(r)}enter(r){this.scopeStack.push(this.createScope(r))}exit(){return this.scopeStack.pop().flags}treatFunctionsAsVarInScope(r){return!!(r.flags&130||!this.parser.inModule&&r.flags&1)}declareName(r,e,t){let s=this.currentScope();if(e&8||e&16){this.checkRedeclarationInScope(s,r,e,t);let a=s.names.get(r)||0;e&16?a=a|4:(s.firstLexicalName||(s.firstLexicalName=r),a=a|2),s.names.set(r,a),e&8&&this.maybeExportDefined(s,r)}else if(e&4)for(let a=this.scopeStack.length-1;a>=0&&(s=this.scopeStack[a],this.checkRedeclarationInScope(s,r,e,t),s.names.set(r,(s.names.get(r)||0)|1),this.maybeExportDefined(s,r),!(s.flags&387));--a);this.parser.inModule&&s.flags&1&&this.undefinedExports.delete(r)}maybeExportDefined(r,e){this.parser.inModule&&r.flags&1&&this.undefinedExports.delete(e)}checkRedeclarationInScope(r,e,t,s){this.isRedeclaredInScope(r,e,t)&&this.parser.raise(S.VarRedeclaration,s,{identifierName:e})}isRedeclaredInScope(r,e,t){if(!(t&1))return!1;if(t&8)return r.names.has(e);let s=r.names.get(e);return t&16?(s&2)>0||!this.treatFunctionsAsVarInScope(r)&&(s&1)>0:(s&2)>0&&!(r.flags&8&&r.firstLexicalName===e)||!this.treatFunctionsAsVarInScope(r)&&(s&4)>0}checkLocalExport(r){let{name:e}=r;this.scopeStack[0].names.has(e)||this.undefinedExports.set(e,r.loc.start)}currentScope(){return this.scopeStack[this.scopeStack.length-1]}currentVarScopeFlags(){for(let r=this.scopeStack.length-1;;r--){let{flags:e}=this.scopeStack[r];if(e&387)return e}}currentThisScopeFlags(){for(let r=this.scopeStack.length-1;;r--){let{flags:e}=this.scopeStack[r];if(e&451&&!(e&4))return e}}},ja=class extends Or{constructor(...r){super(...r),this.declareFunctions=new Set}},Ra=class extends _r{createScope(r){return new ja(r)}declareName(r,e,t){let s=this.currentScope();if(e&2048){this.checkRedeclarationInScope(s,r,e,t),this.maybeExportDefined(s,r),s.declareFunctions.add(r);return}super.declareName(r,e,t)}isRedeclaredInScope(r,e,t){if(super.isRedeclaredInScope(r,e,t))return!0;if(t&2048&&!r.declareFunctions.has(e)){let s=r.names.get(e);return(s&4)>0||(s&2)>0}return!1}checkLocalExport(r){this.scopeStack[0].declareFunctions.has(r.name)||super.checkLocalExport(r)}},Ua=class{constructor(){this.sawUnambiguousESM=!1,this.ambiguousScriptDifferentAst=!1}hasPlugin(r){if(typeof r=="string")return this.plugins.has(r);{let[e,t]=r;if(!this.hasPlugin(e))return!1;let s=this.plugins.get(e);for(let a of Object.keys(t))if(s?.[a]!==t[a])return!1;return!0}}getPluginOption(r,e){var t;return(t=this.plugins.get(r))==null?void 0:t[e]}};function Rl(i,r){i.trailingComments===void 0?i.trailingComments=r:i.trailingComments.unshift(...r)}function em(i,r){i.leadingComments===void 0?i.leadingComments=r:i.leadingComments.unshift(...r)}function jr(i,r){i.innerComments===void 0?i.innerComments=r:i.innerComments.unshift(...r)}function Nr(i,r,e){let t=null,s=r.length;for(;t===null&&s>0;)t=r[--s];t===null||t.start>e.start?jr(i,e.comments):Rl(t,e.comments)}var qa=class extends Ua{addComment(r){this.filename&&(r.loc.filename=this.filename);let{commentsLen:e}=this.state;this.comments.length!==e&&(this.comments.length=e),this.comments.push(r),this.state.commentsLen++}processComment(r){let{commentStack:e}=this.state,t=e.length;if(t===0)return;let s=t-1,a=e[s];a.start===r.end&&(a.leadingNode=r,s--);let{start:n}=r;for(;s>=0;s--){let u=e[s],c=u.end;if(c>n)u.containingNode=r,this.finalizeComment(u),e.splice(s,1);else{c===n&&(u.trailingNode=r);break}}}finalizeComment(r){let{comments:e}=r;if(r.leadingNode!==null||r.trailingNode!==null)r.leadingNode!==null&&Rl(r.leadingNode,e),r.trailingNode!==null&&em(r.trailingNode,e);else{let{containingNode:t,start:s}=r;if(this.input.charCodeAt(s-1)===44)switch(t.type){case"ObjectExpression":case"ObjectPattern":case"RecordExpression":Nr(t,t.properties,r);break;case"CallExpression":case"OptionalCallExpression":Nr(t,t.arguments,r);break;case"FunctionDeclaration":case"FunctionExpression":case"ArrowFunctionExpression":case"ObjectMethod":case"ClassMethod":case"ClassPrivateMethod":Nr(t,t.params,r);break;case"ArrayExpression":case"ArrayPattern":case"TupleExpression":Nr(t,t.elements,r);break;case"ExportNamedDeclaration":case"ImportDeclaration":Nr(t,t.specifiers,r);break;default:jr(t,e)}else jr(t,e)}}finalizeRemainingComments(){let{commentStack:r}=this.state;for(let e=r.length-1;e>=0;e--)this.finalizeComment(r[e]);this.state.commentStack=[]}resetPreviousNodeTrailingComments(r){let{commentStack:e}=this.state,{length:t}=e;if(t===0)return;let s=e[t-1];s.leadingNode===r&&(s.leadingNode=null)}resetPreviousIdentifierLeadingComments(r){let{commentStack:e}=this.state,{length:t}=e;t!==0&&(e[t-1].trailingNode===r?e[t-1].trailingNode=null:t>=2&&e[t-2].trailingNode===r&&(e[t-2].trailingNode=null))}takeSurroundingComments(r,e,t){let{commentStack:s}=this.state,a=s.length;if(a===0)return;let n=a-1;for(;n>=0;n--){let u=s[n],c=u.end;if(u.start===t)u.leadingNode=r;else if(c===e)u.trailingNode=r;else if(c<e)break}}},Ul=/\r\n?|[\n\u2028\u2029]/,ks=new RegExp(Ul.source,"g");function Lr(i){switch(i){case 10:case 13:case 8232:case 8233:return!0;default:return!1}}var Fa=/(?:\s|\/\/.*|\/\*[^]*?\*\/)*/g,Ms=/(?:[^\S\n\r\u2028\u2029]|\/\/.*|\/\*.*?\*\/)*/g,Sl=new RegExp("(?=("+Ms.source+"))\\1"+/(?=[\n\r\u2028\u2029]|\/\*(?!.*?\*\/)|$)/.source,"y");function tm(i){switch(i){case 9:case 11:case 12:case 32:case 160:case 5760:case 8192:case 8193:case 8194:case 8195:case 8196:case 8197:case 8198:case 8199:case 8200:case 8201:case 8202:case 8239:case 8287:case 12288:case 65279:return!0;default:return!1}}var za=class i{constructor(){this.flags=1024,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=139,this.value=null,this.start=0,this.end=0,this.lastTokEndLoc=null,this.lastTokStartLoc=null,this.context=[re.brace],this.firstInvalidTemplateEscapePos=null,this.strictErrors=new Map,this.tokensLength=0}get strict(){return(this.flags&1)>0}set strict(r){r?this.flags|=1:this.flags&=-2}init({strictMode:r,sourceType:e,startLine:t,startColumn:s}){this.strict=r===!1?!1:r===!0?!0:e==="module",this.curLine=t,this.lineStart=-s,this.startLoc=this.endLoc=new Ve(t,s,0)}get maybeInArrowParameters(){return(this.flags&2)>0}set maybeInArrowParameters(r){r?this.flags|=2:this.flags&=-3}get inType(){return(this.flags&4)>0}set inType(r){r?this.flags|=4:this.flags&=-5}get noAnonFunctionType(){return(this.flags&8)>0}set noAnonFunctionType(r){r?this.flags|=8:this.flags&=-9}get hasFlowComment(){return(this.flags&16)>0}set hasFlowComment(r){r?this.flags|=16:this.flags&=-17}get isAmbientContext(){return(this.flags&32)>0}set isAmbientContext(r){r?this.flags|=32:this.flags&=-33}get inAbstractClass(){return(this.flags&64)>0}set inAbstractClass(r){r?this.flags|=64:this.flags&=-65}get inDisallowConditionalTypesContext(){return(this.flags&128)>0}set inDisallowConditionalTypesContext(r){r?this.flags|=128:this.flags&=-129}get soloAwait(){return(this.flags&256)>0}set soloAwait(r){r?this.flags|=256:this.flags&=-257}get inFSharpPipelineDirectBody(){return(this.flags&512)>0}set inFSharpPipelineDirectBody(r){r?this.flags|=512:this.flags&=-513}get canStartJSXElement(){return(this.flags&1024)>0}set canStartJSXElement(r){r?this.flags|=1024:this.flags&=-1025}get containsEsc(){return(this.flags&2048)>0}set containsEsc(r){r?this.flags|=2048:this.flags&=-2049}curPosition(){return new Ve(this.curLine,this.pos-this.lineStart,this.pos)}clone(){let r=new i;return r.flags=this.flags,r.curLine=this.curLine,r.lineStart=this.lineStart,r.startLoc=this.startLoc,r.endLoc=this.endLoc,r.errors=this.errors.slice(),r.potentialArrowAt=this.potentialArrowAt,r.noArrowAt=this.noArrowAt.slice(),r.noArrowParamsConversionAt=this.noArrowParamsConversionAt.slice(),r.topicContext=this.topicContext,r.labels=this.labels.slice(),r.commentsLen=this.commentsLen,r.commentStack=this.commentStack.slice(),r.pos=this.pos,r.type=this.type,r.value=this.value,r.start=this.start,r.end=this.end,r.lastTokEndLoc=this.lastTokEndLoc,r.lastTokStartLoc=this.lastTokStartLoc,r.context=this.context.slice(),r.firstInvalidTemplateEscapePos=this.firstInvalidTemplateEscapePos,r.strictErrors=this.strictErrors,r.tokensLength=this.tokensLength,r}},rm=function(r){return r>=48&&r<=57},El={decBinOct:new Set([46,66,69,79,95,98,101,111]),hex:new Set([46,88,95,120])},Is={bin:i=>i===48||i===49,oct:i=>i>=48&&i<=55,dec:i=>i>=48&&i<=57,hex:i=>i>=48&&i<=57||i>=65&&i<=70||i>=97&&i<=102};function Al(i,r,e,t,s,a){let n=e,u=t,c=s,f="",h=null,y=e,{length:m}=r;for(;;){if(e>=m){a.unterminated(n,u,c),f+=r.slice(y,e);break}let o=r.charCodeAt(e);if(sm(i,o,r,e)){f+=r.slice(y,e);break}if(o===92){f+=r.slice(y,e);let l=im(r,e,t,s,i==="template",a);l.ch===null&&!h?h={pos:e,lineStart:t,curLine:s}:f+=l.ch,{pos:e,lineStart:t,curLine:s}=l,y=e}else o===8232||o===8233?(++e,++s,t=e):o===10||o===13?i==="template"?(f+=r.slice(y,e)+`
102
+ `,++e,o===13&&r.charCodeAt(e)===10&&++e,++s,y=t=e):a.unterminated(n,u,c):++e}return{pos:e,str:f,firstInvalidLoc:h,lineStart:t,curLine:s,containsInvalid:!!h}}function sm(i,r,e,t){return i==="template"?r===96||r===36&&e.charCodeAt(t+1)===123:r===(i==="double"?34:39)}function im(i,r,e,t,s,a){let n=!s;r++;let u=f=>({pos:r,ch:f,lineStart:e,curLine:t}),c=i.charCodeAt(r++);switch(c){case 110:return u(`
103
+ `);case 114:return u("\r");case 120:{let f;return{code:f,pos:r}=Ja(i,r,e,t,2,!1,n,a),u(f===null?null:String.fromCharCode(f))}case 117:{let f;return{code:f,pos:r}=zl(i,r,e,t,n,a),u(f===null?null:String.fromCodePoint(f))}case 116:return u(" ");case 98:return u("\b");case 118:return u("\v");case 102:return u("\f");case 13:i.charCodeAt(r)===10&&++r;case 10:e=r,++t;case 8232:case 8233:return u("");case 56:case 57:if(s)return u(null);a.strictNumericEscape(r-1,e,t);default:if(c>=48&&c<=55){let f=r-1,y=i.slice(f,r+2).match(/^[0-7]+/)[0],m=parseInt(y,8);m>255&&(y=y.slice(0,-1),m=parseInt(y,8)),r+=y.length-1;let o=i.charCodeAt(r);if(y!=="0"||o===56||o===57){if(s)return u(null);a.strictNumericEscape(f,e,t)}return u(String.fromCharCode(m))}return u(String.fromCharCode(c))}}function Ja(i,r,e,t,s,a,n,u){let c=r,f;return{n:f,pos:r}=ql(i,r,e,t,16,s,a,!1,u,!n),f===null&&(n?u.invalidEscapeSequence(c,e,t):r=c-1),{code:f,pos:r}}function ql(i,r,e,t,s,a,n,u,c,f){let h=r,y=s===16?El.hex:El.decBinOct,m=s===16?Is.hex:s===10?Is.dec:s===8?Is.oct:Is.bin,o=!1,l=0;for(let p=0,d=a??1/0;p<d;++p){let x=i.charCodeAt(r),g;if(x===95&&u!=="bail"){let E=i.charCodeAt(r-1),b=i.charCodeAt(r+1);if(u){if(Number.isNaN(b)||!m(b)||y.has(E)||y.has(b)){if(f)return{n:null,pos:r};c.unexpectedNumericSeparator(r,e,t)}}else{if(f)return{n:null,pos:r};c.numericSeparatorInEscapeSequence(r,e,t)}++r;continue}if(x>=97?g=x-97+10:x>=65?g=x-65+10:rm(x)?g=x-48:g=1/0,g>=s){if(g<=9&&f)return{n:null,pos:r};if(g<=9&&c.invalidDigit(r,e,t,s))g=0;else if(n)g=0,o=!0;else break}++r,l=l*s+g}return r===h||a!=null&&r-h!==a||o?{n:null,pos:r}:{n:l,pos:r}}function zl(i,r,e,t,s,a){let n=i.charCodeAt(r),u;if(n===123){if(++r,{code:u,pos:r}=Ja(i,r,e,t,i.indexOf("}",r)-r,!0,s,a),++r,u!==null&&u>1114111)if(s)a.invalidCodePoint(r,e,t);else return{code:null,pos:r}}else({code:u,pos:r}=Ja(i,r,e,t,4,!1,s,a));return{code:u,pos:r}}function Fr(i,r,e){return new Ve(e,i-r,i)}var am=new Set([103,109,115,105,121,117,100,118]),Xe=class{constructor(r){this.type=r.type,this.value=r.value,this.start=r.start,this.end=r.end,this.loc=new er(r.startLoc,r.endLoc)}},Xa=class extends qa{constructor(r,e){super(),this.isLookahead=void 0,this.tokens=[],this.errorHandlers_readInt={invalidDigit:(t,s,a,n)=>this.options.errorRecovery?(this.raise(S.InvalidDigit,Fr(t,s,a),{radix:n}),!0):!1,numericSeparatorInEscapeSequence:this.errorBuilder(S.NumericSeparatorInEscapeSequence),unexpectedNumericSeparator:this.errorBuilder(S.UnexpectedNumericSeparator)},this.errorHandlers_readCodePoint=Object.assign({},this.errorHandlers_readInt,{invalidEscapeSequence:this.errorBuilder(S.InvalidEscapeSequence),invalidCodePoint:this.errorBuilder(S.InvalidCodePoint)}),this.errorHandlers_readStringContents_string=Object.assign({},this.errorHandlers_readCodePoint,{strictNumericEscape:(t,s,a)=>{this.recordStrictModeErrors(S.StrictNumericEscape,Fr(t,s,a))},unterminated:(t,s,a)=>{throw this.raise(S.UnterminatedString,Fr(t-1,s,a))}}),this.errorHandlers_readStringContents_template=Object.assign({},this.errorHandlers_readCodePoint,{strictNumericEscape:this.errorBuilder(S.StrictNumericEscape),unterminated:(t,s,a)=>{throw this.raise(S.UnterminatedTemplate,Fr(t,s,a))}}),this.state=new za,this.state.init(r),this.input=e,this.length=e.length,this.comments=[],this.isLookahead=!1}pushToken(r){this.tokens.length=this.state.tokensLength,this.tokens.push(r),++this.state.tokensLength}next(){this.checkKeywordEscapes(),this.options.tokens&&this.pushToken(new Xe(this.state)),this.state.lastTokEndLoc=this.state.endLoc,this.state.lastTokStartLoc=this.state.startLoc,this.nextToken()}eat(r){return this.match(r)?(this.next(),!0):!1}match(r){return this.state.type===r}createLookaheadState(r){return{pos:r.pos,value:null,type:r.type,start:r.start,end:r.end,context:[this.curContext()],inType:r.inType,startLoc:r.startLoc,lastTokEndLoc:r.lastTokEndLoc,curLine:r.curLine,lineStart:r.lineStart,curPosition:r.curPosition}}lookahead(){let r=this.state;this.state=this.createLookaheadState(r),this.isLookahead=!0,this.nextToken(),this.isLookahead=!1;let e=this.state;return this.state=r,e}nextTokenStart(){return this.nextTokenStartSince(this.state.pos)}nextTokenStartSince(r){return Fa.lastIndex=r,Fa.test(this.input)?Fa.lastIndex:r}lookaheadCharCode(){return this.input.charCodeAt(this.nextTokenStart())}nextTokenInLineStart(){return this.nextTokenInLineStartSince(this.state.pos)}nextTokenInLineStartSince(r){return Ms.lastIndex=r,Ms.test(this.input)?Ms.lastIndex:r}lookaheadInLineCharCode(){return this.input.charCodeAt(this.nextTokenInLineStart())}codePointAtPos(r){let e=this.input.charCodeAt(r);if((e&64512)===55296&&++r<this.input.length){let t=this.input.charCodeAt(r);(t&64512)===56320&&(e=65536+((e&1023)<<10)+(t&1023))}return e}setStrict(r){this.state.strict=r,r&&(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(){if(this.skipSpace(),this.state.start=this.state.pos,this.isLookahead||(this.state.startLoc=this.state.curPosition()),this.state.pos>=this.length){this.finishToken(139);return}this.getTokenFromCode(this.codePointAtPos(this.state.pos))}skipBlockComment(r){let e;this.isLookahead||(e=this.state.curPosition());let t=this.state.pos,s=this.input.indexOf(r,t+2);if(s===-1)throw this.raise(S.UnterminatedComment,this.state.curPosition());for(this.state.pos=s+r.length,ks.lastIndex=t+2;ks.test(this.input)&&ks.lastIndex<=s;)++this.state.curLine,this.state.lineStart=ks.lastIndex;if(this.isLookahead)return;let a={type:"CommentBlock",value:this.input.slice(t+2,s),start:t,end:s+r.length,loc:new er(e,this.state.curPosition())};return this.options.tokens&&this.pushToken(a),a}skipLineComment(r){let e=this.state.pos,t;this.isLookahead||(t=this.state.curPosition());let s=this.input.charCodeAt(this.state.pos+=r);if(this.state.pos<this.length)for(;!Lr(s)&&++this.state.pos<this.length;)s=this.input.charCodeAt(this.state.pos);if(this.isLookahead)return;let a=this.state.pos,u={type:"CommentLine",value:this.input.slice(e+r,a),start:e,end:a,loc:new er(t,this.state.curPosition())};return this.options.tokens&&this.pushToken(u),u}skipSpace(){let r=this.state.pos,e=[];e:for(;this.state.pos<this.length;){let t=this.input.charCodeAt(this.state.pos);switch(t){case 32:case 160:case 9:++this.state.pos;break;case 13:this.input.charCodeAt(this.state.pos+1)===10&&++this.state.pos;case 10:case 8232:case 8233:++this.state.pos,++this.state.curLine,this.state.lineStart=this.state.pos;break;case 47:switch(this.input.charCodeAt(this.state.pos+1)){case 42:{let s=this.skipBlockComment("*/");s!==void 0&&(this.addComment(s),this.options.attachComment&&e.push(s));break}case 47:{let s=this.skipLineComment(2);s!==void 0&&(this.addComment(s),this.options.attachComment&&e.push(s));break}default:break e}break;default:if(tm(t))++this.state.pos;else if(t===45&&!this.inModule&&this.options.annexB){let s=this.state.pos;if(this.input.charCodeAt(s+1)===45&&this.input.charCodeAt(s+2)===62&&(r===0||this.state.lineStart>r)){let a=this.skipLineComment(3);a!==void 0&&(this.addComment(a),this.options.attachComment&&e.push(a))}else break e}else if(t===60&&!this.inModule&&this.options.annexB){let s=this.state.pos;if(this.input.charCodeAt(s+1)===33&&this.input.charCodeAt(s+2)===45&&this.input.charCodeAt(s+3)===45){let a=this.skipLineComment(4);a!==void 0&&(this.addComment(a),this.options.attachComment&&e.push(a))}else break e}else break e}}if(e.length>0){let t=this.state.pos,s={start:r,end:t,comments:e,leadingNode:null,trailingNode:null,containingNode:null};this.state.commentStack.push(s)}}finishToken(r,e){this.state.end=this.state.pos,this.state.endLoc=this.state.curPosition();let t=this.state.type;this.state.type=r,this.state.value=e,this.isLookahead||this.updateContext(t)}replaceToken(r){this.state.type=r,this.updateContext()}readToken_numberSign(){if(this.state.pos===0&&this.readToken_interpreter())return;let r=this.state.pos+1,e=this.codePointAtPos(r);if(e>=48&&e<=57)throw this.raise(S.UnexpectedDigitAfterHash,this.state.curPosition());if(e===123||e===91&&this.hasPlugin("recordAndTuple")){if(this.expectPlugin("recordAndTuple"),this.getPluginOption("recordAndTuple","syntaxType")==="bar")throw this.raise(e===123?S.RecordExpressionHashIncorrectStartSyntaxType:S.TupleExpressionHashIncorrectStartSyntaxType,this.state.curPosition());this.state.pos+=2,e===123?this.finishToken(7):this.finishToken(1)}else tt(e)?(++this.state.pos,this.finishToken(138,this.readWord1(e))):e===92?(++this.state.pos,this.finishToken(138,this.readWord1())):this.finishOp(27,1)}readToken_dot(){let r=this.input.charCodeAt(this.state.pos+1);if(r>=48&&r<=57){this.readNumber(!0);return}r===46&&this.input.charCodeAt(this.state.pos+2)===46?(this.state.pos+=3,this.finishToken(21)):(++this.state.pos,this.finishToken(16))}readToken_slash(){this.input.charCodeAt(this.state.pos+1)===61?this.finishOp(31,2):this.finishOp(56,1)}readToken_interpreter(){if(this.state.pos!==0||this.length<2)return!1;let r=this.input.charCodeAt(this.state.pos+1);if(r!==33)return!1;let e=this.state.pos;for(this.state.pos+=1;!Lr(r)&&++this.state.pos<this.length;)r=this.input.charCodeAt(this.state.pos);let t=this.input.slice(e+2,this.state.pos);return this.finishToken(28,t),!0}readToken_mult_modulo(r){let e=r===42?55:54,t=1,s=this.input.charCodeAt(this.state.pos+1);r===42&&s===42&&(t++,s=this.input.charCodeAt(this.state.pos+2),e=57),s===61&&!this.state.inType&&(t++,e=r===37?33:30),this.finishOp(e,t)}readToken_pipe_amp(r){let e=this.input.charCodeAt(this.state.pos+1);if(e===r){this.input.charCodeAt(this.state.pos+2)===61?this.finishOp(30,3):this.finishOp(r===124?41:42,2);return}if(r===124){if(e===62){this.finishOp(39,2);return}if(this.hasPlugin("recordAndTuple")&&e===125){if(this.getPluginOption("recordAndTuple","syntaxType")!=="bar")throw this.raise(S.RecordExpressionBarIncorrectEndSyntaxType,this.state.curPosition());this.state.pos+=2,this.finishToken(9);return}if(this.hasPlugin("recordAndTuple")&&e===93){if(this.getPluginOption("recordAndTuple","syntaxType")!=="bar")throw this.raise(S.TupleExpressionBarIncorrectEndSyntaxType,this.state.curPosition());this.state.pos+=2,this.finishToken(4);return}}if(e===61){this.finishOp(30,2);return}this.finishOp(r===124?43:45,1)}readToken_caret(){let r=this.input.charCodeAt(this.state.pos+1);r===61&&!this.state.inType?this.finishOp(32,2):r===94&&this.hasPlugin(["pipelineOperator",{proposal:"hack",topicToken:"^^"}])?(this.finishOp(37,2),this.input.codePointAt(this.state.pos)===94&&this.unexpected()):this.finishOp(44,1)}readToken_atSign(){this.input.charCodeAt(this.state.pos+1)===64&&this.hasPlugin(["pipelineOperator",{proposal:"hack",topicToken:"@@"}])?this.finishOp(38,2):this.finishOp(26,1)}readToken_plus_min(r){let e=this.input.charCodeAt(this.state.pos+1);if(e===r){this.finishOp(34,2);return}e===61?this.finishOp(30,2):this.finishOp(53,1)}readToken_lt(){let{pos:r}=this.state,e=this.input.charCodeAt(r+1);if(e===60){if(this.input.charCodeAt(r+2)===61){this.finishOp(30,3);return}this.finishOp(51,2);return}if(e===61){this.finishOp(49,2);return}this.finishOp(47,1)}readToken_gt(){let{pos:r}=this.state,e=this.input.charCodeAt(r+1);if(e===62){let t=this.input.charCodeAt(r+2)===62?3:2;if(this.input.charCodeAt(r+t)===61){this.finishOp(30,t+1);return}this.finishOp(52,t);return}if(e===61){this.finishOp(49,2);return}this.finishOp(48,1)}readToken_eq_excl(r){let e=this.input.charCodeAt(this.state.pos+1);if(e===61){this.finishOp(46,this.input.charCodeAt(this.state.pos+2)===61?3:2);return}if(r===61&&e===62){this.state.pos+=2,this.finishToken(19);return}this.finishOp(r===61?29:35,1)}readToken_question(){let r=this.input.charCodeAt(this.state.pos+1),e=this.input.charCodeAt(this.state.pos+2);r===63?e===61?this.finishOp(30,3):this.finishOp(40,2):r===46&&!(e>=48&&e<=57)?(this.state.pos+=2,this.finishToken(18)):(++this.state.pos,this.finishToken(17))}getTokenFromCode(r){switch(r){case 46:this.readToken_dot();return;case 40:++this.state.pos,this.finishToken(10);return;case 41:++this.state.pos,this.finishToken(11);return;case 59:++this.state.pos,this.finishToken(13);return;case 44:++this.state.pos,this.finishToken(12);return;case 91:if(this.hasPlugin("recordAndTuple")&&this.input.charCodeAt(this.state.pos+1)===124){if(this.getPluginOption("recordAndTuple","syntaxType")!=="bar")throw this.raise(S.TupleExpressionBarIncorrectStartSyntaxType,this.state.curPosition());this.state.pos+=2,this.finishToken(2)}else++this.state.pos,this.finishToken(0);return;case 93:++this.state.pos,this.finishToken(3);return;case 123:if(this.hasPlugin("recordAndTuple")&&this.input.charCodeAt(this.state.pos+1)===124){if(this.getPluginOption("recordAndTuple","syntaxType")!=="bar")throw this.raise(S.RecordExpressionBarIncorrectStartSyntaxType,this.state.curPosition());this.state.pos+=2,this.finishToken(6)}else++this.state.pos,this.finishToken(5);return;case 125:++this.state.pos,this.finishToken(8);return;case 58:this.hasPlugin("functionBind")&&this.input.charCodeAt(this.state.pos+1)===58?this.finishOp(15,2):(++this.state.pos,this.finishToken(14));return;case 63:this.readToken_question();return;case 96:this.readTemplateToken();return;case 48:{let e=this.input.charCodeAt(this.state.pos+1);if(e===120||e===88){this.readRadixNumber(16);return}if(e===111||e===79){this.readRadixNumber(8);return}if(e===98||e===66){this.readRadixNumber(2);return}}case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:this.readNumber(!1);return;case 34:case 39:this.readString(r);return;case 47:this.readToken_slash();return;case 37:case 42:this.readToken_mult_modulo(r);return;case 124:case 38:this.readToken_pipe_amp(r);return;case 94:this.readToken_caret();return;case 43:case 45:this.readToken_plus_min(r);return;case 60:this.readToken_lt();return;case 62:this.readToken_gt();return;case 61:case 33:this.readToken_eq_excl(r);return;case 126:this.finishOp(36,1);return;case 64:this.readToken_atSign();return;case 35:this.readToken_numberSign();return;case 92:this.readWord();return;default:if(tt(r)){this.readWord(r);return}}throw this.raise(S.InvalidOrUnexpectedToken,this.state.curPosition(),{unexpected:String.fromCodePoint(r)})}finishOp(r,e){let t=this.input.slice(this.state.pos,this.state.pos+e);this.state.pos+=e,this.finishToken(r,t)}readRegexp(){let r=this.state.startLoc,e=this.state.start+1,t,s,{pos:a}=this.state;for(;;++a){if(a>=this.length)throw this.raise(S.UnterminatedRegExp,Ee(r,1));let f=this.input.charCodeAt(a);if(Lr(f))throw this.raise(S.UnterminatedRegExp,Ee(r,1));if(t)t=!1;else{if(f===91)s=!0;else if(f===93&&s)s=!1;else if(f===47&&!s)break;t=f===92}}let n=this.input.slice(e,a);++a;let u="",c=()=>Ee(r,a+2-e);for(;a<this.length;){let f=this.codePointAtPos(a),h=String.fromCharCode(f);if(am.has(f))f===118?u.includes("u")&&this.raise(S.IncompatibleRegExpUVFlags,c()):f===117&&u.includes("v")&&this.raise(S.IncompatibleRegExpUVFlags,c()),u.includes(h)&&this.raise(S.DuplicateRegExpFlags,c());else if(Qt(f)||f===92)this.raise(S.MalformedRegExpFlags,c());else break;++a,u+=h}this.state.pos=a,this.finishToken(137,{pattern:n,flags:u})}readInt(r,e,t=!1,s=!0){let{n:a,pos:n}=ql(this.input,this.state.pos,this.state.lineStart,this.state.curLine,r,e,t,s,this.errorHandlers_readInt,!1);return this.state.pos=n,a}readRadixNumber(r){let e=this.state.curPosition(),t=!1;this.state.pos+=2;let s=this.readInt(r);s==null&&this.raise(S.InvalidDigit,Ee(e,2),{radix:r});let a=this.input.charCodeAt(this.state.pos);if(a===110)++this.state.pos,t=!0;else if(a===109)throw this.raise(S.InvalidDecimal,e);if(tt(this.codePointAtPos(this.state.pos)))throw this.raise(S.NumberIdentifier,this.state.curPosition());if(t){let n=this.input.slice(e.index,this.state.pos).replace(/[_n]/g,"");this.finishToken(135,n);return}this.finishToken(134,s)}readNumber(r){let e=this.state.pos,t=this.state.curPosition(),s=!1,a=!1,n=!1,u=!1,c=!1;!r&&this.readInt(10)===null&&this.raise(S.InvalidNumber,this.state.curPosition());let f=this.state.pos-e>=2&&this.input.charCodeAt(e)===48;if(f){let o=this.input.slice(e,this.state.pos);if(this.recordStrictModeErrors(S.StrictOctalLiteral,t),!this.state.strict){let l=o.indexOf("_");l>0&&this.raise(S.ZeroDigitNumericSeparator,Ee(t,l))}c=f&&!/[89]/.test(o)}let h=this.input.charCodeAt(this.state.pos);if(h===46&&!c&&(++this.state.pos,this.readInt(10),s=!0,h=this.input.charCodeAt(this.state.pos)),(h===69||h===101)&&!c&&(h=this.input.charCodeAt(++this.state.pos),(h===43||h===45)&&++this.state.pos,this.readInt(10)===null&&this.raise(S.InvalidOrMissingExponent,t),s=!0,u=!0,h=this.input.charCodeAt(this.state.pos)),h===110&&((s||f)&&this.raise(S.InvalidBigIntLiteral,t),++this.state.pos,a=!0),h===109&&(this.expectPlugin("decimal",this.state.curPosition()),(u||f)&&this.raise(S.InvalidDecimal,t),++this.state.pos,n=!0),tt(this.codePointAtPos(this.state.pos)))throw this.raise(S.NumberIdentifier,this.state.curPosition());let y=this.input.slice(e,this.state.pos).replace(/[_mn]/g,"");if(a){this.finishToken(135,y);return}if(n){this.finishToken(136,y);return}let m=c?parseInt(y,8):parseFloat(y);this.finishToken(134,m)}readCodePoint(r){let{code:e,pos:t}=zl(this.input,this.state.pos,this.state.lineStart,this.state.curLine,r,this.errorHandlers_readCodePoint);return this.state.pos=t,e}readString(r){let{str:e,pos:t,curLine:s,lineStart:a}=Al(r===34?"double":"single",this.input,this.state.pos+1,this.state.lineStart,this.state.curLine,this.errorHandlers_readStringContents_string);this.state.pos=t+1,this.state.lineStart=a,this.state.curLine=s,this.finishToken(133,e)}readTemplateContinuation(){this.match(8)||this.unexpected(null,8),this.state.pos--,this.readTemplateToken()}readTemplateToken(){let r=this.input[this.state.pos],{str:e,firstInvalidLoc:t,pos:s,curLine:a,lineStart:n}=Al("template",this.input,this.state.pos+1,this.state.lineStart,this.state.curLine,this.errorHandlers_readStringContents_template);this.state.pos=s+1,this.state.lineStart=n,this.state.curLine=a,t&&(this.state.firstInvalidTemplateEscapePos=new Ve(t.curLine,t.pos-t.lineStart,t.pos)),this.input.codePointAt(s)===96?this.finishToken(24,t?null:r+e+"`"):(this.state.pos++,this.finishToken(25,t?null:r+e+"${"))}recordStrictModeErrors(r,e){let t=e.index;this.state.strict&&!this.state.strictErrors.has(t)?this.raise(r,e):this.state.strictErrors.set(t,[r,e])}readWord1(r){this.state.containsEsc=!1;let e="",t=this.state.pos,s=this.state.pos;for(r!==void 0&&(this.state.pos+=r<=65535?1:2);this.state.pos<this.length;){let a=this.codePointAtPos(this.state.pos);if(Qt(a))this.state.pos+=a<=65535?1:2;else if(a===92){this.state.containsEsc=!0,e+=this.input.slice(s,this.state.pos);let n=this.state.curPosition(),u=this.state.pos===t?tt:Qt;if(this.input.charCodeAt(++this.state.pos)!==117){this.raise(S.MissingUnicodeEscape,this.state.curPosition()),s=this.state.pos-1;continue}++this.state.pos;let c=this.readCodePoint(!0);c!==null&&(u(c)||this.raise(S.EscapedCharNotAnIdentifier,n),e+=String.fromCodePoint(c)),s=this.state.pos}else break}return e+this.input.slice(s,this.state.pos)}readWord(r){let e=this.readWord1(r),t=rn.get(e);t!==void 0?this.finishToken(t,ft(t)):this.finishToken(132,e)}checkKeywordEscapes(){let{type:r}=this.state;ln(r)&&this.state.containsEsc&&this.raise(S.InvalidEscapedReservedWord,this.state.startLoc,{reservedWord:ft(r)})}raise(r,e,t={}){let s=e instanceof Ve?e:e.loc.start,a=r(s,t);if(!this.options.errorRecovery)throw a;return this.isLookahead||this.state.errors.push(a),a}raiseOverwrite(r,e,t={}){let s=e instanceof Ve?e:e.loc.start,a=s.index,n=this.state.errors;for(let u=n.length-1;u>=0;u--){let c=n[u];if(c.loc.index===a)return n[u]=r(s,t);if(c.loc.index<a)break}return this.raise(r,e,t)}updateContext(r){}unexpected(r,e){throw this.raise(S.UnexpectedToken,r??this.state.startLoc,{expected:e?ft(e):null})}expectPlugin(r,e){if(this.hasPlugin(r))return!0;throw this.raise(S.MissingPlugin,e??this.state.startLoc,{missingPlugin:[r]})}expectOnePlugin(r){if(!r.some(e=>this.hasPlugin(e)))throw this.raise(S.MissingOneOfPlugins,this.state.startLoc,{missingPlugin:r})}errorBuilder(r){return(e,t,s)=>{this.raise(r,Fr(e,t,s))}}},Va=class{constructor(){this.privateNames=new Set,this.loneAccessors=new Map,this.undefinedPrivateNames=new Map}},Ka=class{constructor(r){this.parser=void 0,this.stack=[],this.undefinedPrivateNames=new Map,this.parser=r}current(){return this.stack[this.stack.length-1]}enter(){this.stack.push(new Va)}exit(){let r=this.stack.pop(),e=this.current();for(let[t,s]of Array.from(r.undefinedPrivateNames))e?e.undefinedPrivateNames.has(t)||e.undefinedPrivateNames.set(t,s):this.parser.raise(S.InvalidPrivateFieldResolution,s,{identifierName:t})}declarePrivateName(r,e,t){let{privateNames:s,loneAccessors:a,undefinedPrivateNames:n}=this.current(),u=s.has(r);if(e&3){let c=u&&a.get(r);if(c){let f=c&4,h=e&4,y=c&3,m=e&3;u=y===m||f!==h,u||a.delete(r)}else u||a.set(r,e)}u&&this.parser.raise(S.PrivateNameRedeclaration,t,{identifierName:r}),s.add(r),n.delete(r)}usePrivateName(r,e){let t;for(t of this.stack)if(t.privateNames.has(r))return;t?t.undefinedPrivateNames.set(r,e):this.parser.raise(S.InvalidPrivateFieldResolution,e,{identifierName:r})}},tr=class{constructor(r=0){this.type=r}canBeArrowParameterDeclaration(){return this.type===2||this.type===1}isCertainlyParameterDeclaration(){return this.type===3}},_s=class extends tr{constructor(r){super(r),this.declarationErrors=new Map}recordDeclarationError(r,e){let t=e.index;this.declarationErrors.set(t,[r,e])}clearDeclarationError(r){this.declarationErrors.delete(r)}iterateErrors(r){this.declarationErrors.forEach(r)}},Wa=class{constructor(r){this.parser=void 0,this.stack=[new tr],this.parser=r}enter(r){this.stack.push(r)}exit(){this.stack.pop()}recordParameterInitializerError(r,e){let t=e.loc.start,{stack:s}=this,a=s.length-1,n=s[a];for(;!n.isCertainlyParameterDeclaration();){if(n.canBeArrowParameterDeclaration())n.recordDeclarationError(r,t);else return;n=s[--a]}this.parser.raise(r,t)}recordArrowParameterBindingError(r,e){let{stack:t}=this,s=t[t.length-1],a=e.loc.start;if(s.isCertainlyParameterDeclaration())this.parser.raise(r,a);else if(s.canBeArrowParameterDeclaration())s.recordDeclarationError(r,a);else return}recordAsyncArrowParametersError(r){let{stack:e}=this,t=e.length-1,s=e[t];for(;s.canBeArrowParameterDeclaration();)s.type===2&&s.recordDeclarationError(S.AwaitBindingIdentifier,r),s=e[--t]}validateAsPattern(){let{stack:r}=this,e=r[r.length-1];e.canBeArrowParameterDeclaration()&&e.iterateErrors(([t,s])=>{this.parser.raise(t,s);let a=r.length-2,n=r[a];for(;n.canBeArrowParameterDeclaration();)n.clearDeclarationError(s.index),n=r[--a]})}};function nm(){return new tr(3)}function om(){return new _s(1)}function um(){return new _s(2)}function Jl(){return new tr}var Ha=class{constructor(){this.stacks=[]}enter(r){this.stacks.push(r)}exit(){this.stacks.pop()}currentFlags(){return this.stacks[this.stacks.length-1]}get hasAwait(){return(this.currentFlags()&2)>0}get hasYield(){return(this.currentFlags()&1)>0}get hasReturn(){return(this.currentFlags()&4)>0}get hasIn(){return(this.currentFlags()&8)>0}};function Bs(i,r){return(i?2:0)|(r?1:0)}var Ga=class extends Xa{addExtra(r,e,t,s=!0){if(!r)return;let a=r.extra=r.extra||{};s?a[e]=t:Object.defineProperty(a,e,{enumerable:s,value:t})}isContextual(r){return this.state.type===r&&!this.state.containsEsc}isUnparsedContextual(r,e){let t=r+e.length;if(this.input.slice(r,t)===e){let s=this.input.charCodeAt(t);return!(Qt(s)||(s&64512)===55296)}return!1}isLookaheadContextual(r){let e=this.nextTokenStart();return this.isUnparsedContextual(e,r)}eatContextual(r){return this.isContextual(r)?(this.next(),!0):!1}expectContextual(r,e){if(!this.eatContextual(r)){if(e!=null)throw this.raise(e,this.state.startLoc);this.unexpected(null,r)}}canInsertSemicolon(){return this.match(139)||this.match(8)||this.hasPrecedingLineBreak()}hasPrecedingLineBreak(){return Ul.test(this.input.slice(this.state.lastTokEndLoc.index,this.state.start))}hasFollowingLineBreak(){return Sl.lastIndex=this.state.end,Sl.test(this.input)}isLineTerminator(){return this.eat(13)||this.canInsertSemicolon()}semicolon(r=!0){(r?this.isLineTerminator():this.eat(13))||this.raise(S.MissingSemicolon,this.state.lastTokEndLoc)}expect(r,e){this.eat(r)||this.unexpected(e,r)}tryParse(r,e=this.state.clone()){let t={node:null};try{let s=r((a=null)=>{throw t.node=a,t});if(this.state.errors.length>e.errors.length){let a=this.state;return this.state=e,this.state.tokensLength=a.tokensLength,{node:s,error:a.errors[e.errors.length],thrown:!1,aborted:!1,failState:a}}return{node:s,error:null,thrown:!1,aborted:!1,failState:null}}catch(s){let a=this.state;if(this.state=e,s instanceof SyntaxError)return{node:null,error:s,thrown:!0,aborted:!1,failState:a};if(s===t)return{node:t.node,error:null,thrown:!1,aborted:!0,failState:a};throw s}}checkExpressionErrors(r,e){if(!r)return!1;let{shorthandAssignLoc:t,doubleProtoLoc:s,privateKeyLoc:a,optionalParametersLoc:n}=r,u=!!t||!!s||!!n||!!a;if(!e)return u;t!=null&&this.raise(S.InvalidCoverInitializedName,t),s!=null&&this.raise(S.DuplicateProto,s),a!=null&&this.raise(S.UnexpectedPrivateField,a),n!=null&&this.unexpected(n)}isLiteralPropertyName(){return Fl(this.state.type)}isPrivateName(r){return r.type==="PrivateName"}getPrivateNameSV(r){return r.id.name}hasPropertyAsPrivateName(r){return(r.type==="MemberExpression"||r.type==="OptionalMemberExpression")&&this.isPrivateName(r.property)}isObjectProperty(r){return r.type==="ObjectProperty"}isObjectMethod(r){return r.type==="ObjectMethod"}initializeScopes(r=this.options.sourceType==="module"){let e=this.state.labels;this.state.labels=[];let t=this.exportedIdentifiers;this.exportedIdentifiers=new Set;let s=this.inModule;this.inModule=r;let a=this.scope,n=this.getScopeHandler();this.scope=new n(this,r);let u=this.prodParam;this.prodParam=new Ha;let c=this.classScope;this.classScope=new Ka(this);let f=this.expressionScope;return this.expressionScope=new Wa(this),()=>{this.state.labels=e,this.exportedIdentifiers=t,this.inModule=s,this.scope=a,this.prodParam=u,this.classScope=c,this.expressionScope=f}}enterInitialScopes(){let r=0;this.inModule&&(r|=2),this.scope.enter(1),this.prodParam.enter(r)}checkDestructuringPrivate(r){let{privateKeyLoc:e}=r;e!==null&&this.expectPlugin("destructuringPrivate",e)}},Zt=class{constructor(){this.shorthandAssignLoc=null,this.doubleProtoLoc=null,this.privateKeyLoc=null,this.optionalParametersLoc=null}},rr=class{constructor(r,e,t){this.type="",this.start=e,this.end=0,this.loc=new er(t),r!=null&&r.options.ranges&&(this.range=[e,0]),r!=null&&r.filename&&(this.loc.filename=r.filename)}},pn=rr.prototype;pn.__clone=function(){let i=new rr(void 0,this.start,this.loc.start),r=Object.keys(this);for(let e=0,t=r.length;e<t;e++){let s=r[e];s!=="leadingComments"&&s!=="trailingComments"&&s!=="innerComments"&&(i[s]=this[s])}return i};function lm(i){return st(i)}function st(i){let{type:r,start:e,end:t,loc:s,range:a,extra:n,name:u}=i,c=Object.create(pn);return c.type=r,c.start=e,c.end=t,c.loc=s,c.range=a,c.extra=n,c.name=u,r==="Placeholder"&&(c.expectedNode=i.expectedNode),c}function cm(i){let{type:r,start:e,end:t,loc:s,range:a,extra:n}=i;if(r==="Placeholder")return lm(i);let u=Object.create(pn);return u.type=r,u.start=e,u.end=t,u.loc=s,u.range=a,i.raw!==void 0?u.raw=i.raw:u.extra=n,u.value=i.value,u}var $a=class extends Ga{startNode(){let r=this.state.startLoc;return new rr(this,r.index,r)}startNodeAt(r){return new rr(this,r.index,r)}startNodeAtNode(r){return this.startNodeAt(r.loc.start)}finishNode(r,e){return this.finishNodeAt(r,e,this.state.lastTokEndLoc)}finishNodeAt(r,e,t){return r.type=e,r.end=t.index,r.loc.end=t,this.options.ranges&&(r.range[1]=t.index),this.options.attachComment&&this.processComment(r),r}resetStartLocation(r,e){r.start=e.index,r.loc.start=e,this.options.ranges&&(r.range[0]=e.index)}resetEndLocation(r,e=this.state.lastTokEndLoc){r.end=e.index,r.loc.end=e,this.options.ranges&&(r.range[1]=e.index)}resetStartLocationFromNode(r,e){this.resetStartLocation(r,e.loc.start)}},hm=new Set(["_","any","bool","boolean","empty","extends","false","interface","mixed","null","number","static","string","true","typeof","void"]),j=rt`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:i})=>`Cannot overwrite reserved type ${i}.`,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:i,enumName:r})=>`Boolean enum members need to be initialized. Use either \`${i} = true,\` or \`${i} = false,\` in enum \`${r}\`.`,EnumDuplicateMemberName:({memberName:i,enumName:r})=>`Enum member names need to be unique, but the name \`${i}\` has already been used before in enum \`${r}\`.`,EnumInconsistentMemberValues:({enumName:i})=>`Enum \`${i}\` has inconsistent member initializers. Either use no initializers, or consistently use literals (either booleans, numbers, or strings) for all member initializers.`,EnumInvalidExplicitType:({invalidEnumType:i,enumName:r})=>`Enum type \`${i}\` is not valid. Use one of \`boolean\`, \`number\`, \`string\`, or \`symbol\` in enum \`${r}\`.`,EnumInvalidExplicitTypeUnknownSupplied:({enumName:i})=>`Supplied enum type is not valid. Use one of \`boolean\`, \`number\`, \`string\`, or \`symbol\` in enum \`${i}\`.`,EnumInvalidMemberInitializerPrimaryType:({enumName:i,memberName:r,explicitType:e})=>`Enum \`${i}\` has type \`${e}\`, so the initializer of \`${r}\` needs to be a ${e} literal.`,EnumInvalidMemberInitializerSymbolType:({enumName:i,memberName:r})=>`Symbol enum members cannot be initialized. Use \`${r},\` in enum \`${i}\`.`,EnumInvalidMemberInitializerUnknownType:({enumName:i,memberName:r})=>`The enum member initializer for \`${r}\` needs to be a literal (either a boolean, number, or string) in enum \`${i}\`.`,EnumInvalidMemberName:({enumName:i,memberName:r,suggestion:e})=>`Enum member names cannot start with lowercase 'a' through 'z'. Instead of using \`${r}\`, consider using \`${e}\`, in enum \`${i}\`.`,EnumNumberMemberNotInitialized:({enumName:i,memberName:r})=>`Number enum members need to be initialized, e.g. \`${r} = 1\` in enum \`${i}\`.`,EnumStringMemberInconsistentlyInitialized:({enumName:i})=>`String enum members need to consistently either all use initializers, or use no initializers, in enum \`${i}\`.`,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:i})=>`Unexpected reserved type ${i}.`,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:i,suggestion:r})=>`\`declare export ${i}\` is not supported. Use \`${r}\` instead.`,UnsupportedStatementInDeclareModule:"Only declares and type imports are allowed inside declare module.",UnterminatedFlowComment:"Unterminated flow-comment."});function pm(i){return i.type==="DeclareExportAllDeclaration"||i.type==="DeclareExportDeclaration"&&(!i.declaration||i.declaration.type!=="TypeAlias"&&i.declaration.type!=="InterfaceDeclaration")}function Tl(i){return i.importKind==="type"||i.importKind==="typeof"}var fm={const:"declare export var",let:"declare export var",type:"export type",interface:"export interface"};function dm(i,r){let e=[],t=[];for(let s=0;s<i.length;s++)(r(i[s],s,i)?e:t).push(i[s]);return[e,t]}var mm=/\*?\s*@((?:no)?flow)\b/,ym=i=>class extends i{constructor(...e){super(...e),this.flowPragma=void 0}getScopeHandler(){return Ra}shouldParseTypes(){return this.getPluginOption("flow","all")||this.flowPragma==="flow"}shouldParseEnums(){return!!this.getPluginOption("flow","enums")}finishToken(e,t){e!==133&&e!==13&&e!==28&&this.flowPragma===void 0&&(this.flowPragma=null),super.finishToken(e,t)}addComment(e){if(this.flowPragma===void 0){let t=mm.exec(e.value);if(t)if(t[1]==="flow")this.flowPragma="flow";else if(t[1]==="noflow")this.flowPragma="noflow";else throw new Error("Unexpected flow pragma")}super.addComment(e)}flowParseTypeInitialiser(e){let t=this.state.inType;this.state.inType=!0,this.expect(e||14);let s=this.flowParseType();return this.state.inType=t,s}flowParsePredicate(){let e=this.startNode(),t=this.state.startLoc;return this.next(),this.expectContextual(110),this.state.lastTokStartLoc.index>t.index+1&&this.raise(j.UnexpectedSpaceBetweenModuloChecks,t),this.eat(10)?(e.value=super.parseExpression(),this.expect(11),this.finishNode(e,"DeclaredPredicate")):this.finishNode(e,"InferredPredicate")}flowParseTypeAndPredicateInitialiser(){let e=this.state.inType;this.state.inType=!0,this.expect(14);let t=null,s=null;return this.match(54)?(this.state.inType=e,s=this.flowParsePredicate()):(t=this.flowParseType(),this.state.inType=e,this.match(54)&&(s=this.flowParsePredicate())),[t,s]}flowParseDeclareClass(e){return this.next(),this.flowParseInterfaceish(e,!0),this.finishNode(e,"DeclareClass")}flowParseDeclareFunction(e){this.next();let t=e.id=this.parseIdentifier(),s=this.startNode(),a=this.startNode();this.match(47)?s.typeParameters=this.flowParseTypeParameterDeclaration():s.typeParameters=null,this.expect(10);let n=this.flowParseFunctionTypeParams();return s.params=n.params,s.rest=n.rest,s.this=n._this,this.expect(11),[s.returnType,e.predicate]=this.flowParseTypeAndPredicateInitialiser(),a.typeAnnotation=this.finishNode(s,"FunctionTypeAnnotation"),t.typeAnnotation=this.finishNode(a,"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(j.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);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(133)?e.id=super.parseExprAtom():e.id=this.parseIdentifier();let t=e.body=this.startNode(),s=t.body=[];for(this.expect(5);!this.match(8);){let u=this.startNode();this.match(83)?(this.next(),!this.isContextual(130)&&!this.match(87)&&this.raise(j.InvalidNonTypeImportInDeclareModule,this.state.lastTokStartLoc),super.parseImport(u)):(this.expectContextual(125,j.UnsupportedStatementInDeclareModule),u=this.flowParseDeclare(u,!0)),s.push(u)}this.scope.exit(),this.expect(8),this.finishNode(t,"BlockStatement");let a=null,n=!1;return s.forEach(u=>{pm(u)?(a==="CommonJS"&&this.raise(j.AmbiguousDeclareModuleKind,u),a="ES"):u.type==="DeclareModuleExports"&&(n&&this.raise(j.DuplicateDeclareModuleExports,u),a==="ES"&&this.raise(j.AmbiguousDeclareModuleKind,u),a="CommonJS",n=!0)}),e.kind=a||"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){let s=this.state.value;throw this.raise(j.UnsupportedDeclareExportKind,this.state.startLoc,{unsupportedExportKind:s,suggestion:fm[s]})}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 e=this.parseExport(e,null),e.type==="ExportNamedDeclaration"&&(e.type="ExportDeclaration",e.default=!1,delete e.exportKind),e.type="Declare"+e.type,e;this.unexpected()}flowParseDeclareModuleExports(e){return this.next(),this.expectContextual(111),e.typeAnnotation=this.flowParseTypeAnnotation(),this.semicolon(),this.finishNode(e,"DeclareModuleExports")}flowParseDeclareTypeAlias(e){this.next();let t=this.flowParseTypeAlias(e);return t.type="DeclareTypeAlias",t}flowParseDeclareOpaqueType(e){this.next();let t=this.flowParseOpaqueType(e,!0);return t.type="DeclareOpaqueType",t}flowParseDeclareInterface(e){return this.next(),this.flowParseInterfaceish(e,!1),this.finishNode(e,"DeclareInterface")}flowParseInterfaceish(e,t){if(e.id=this.flowParseRestrictedIdentifier(!t,!0),this.scope.declareName(e.id.name,t?17:8201,e.id.loc.start),this.match(47)?e.typeParameters=this.flowParseTypeParameterDeclaration():e.typeParameters=null,e.extends=[],this.eat(81))do e.extends.push(this.flowParseInterfaceExtends());while(!t&&this.eat(12));if(t){if(e.implements=[],e.mixins=[],this.eatContextual(117))do e.mixins.push(this.flowParseInterfaceExtends());while(this.eat(12));if(this.eatContextual(113))do e.implements.push(this.flowParseInterfaceExtends());while(this.eat(12))}e.body=this.flowParseObjectType({allowStatic:t,allowExact:!1,allowSpread:!1,allowProto:t,allowInexact:!1})}flowParseInterfaceExtends(){let 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(j.UnexpectedReservedUnderscore,this.state.startLoc)}checkReservedType(e,t,s){hm.has(e)&&this.raise(s?j.AssignReservedType:j.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){let t=this.state.startLoc,s=this.startNode(),a=this.flowParseVariance(),n=this.flowParseTypeAnnotatableIdentifier();return s.name=n.name,s.variance=a,s.bound=n.typeAnnotation,this.match(29)?(this.eat(29),s.default=this.flowParseType()):e&&this.raise(j.MissingTypeParamDefault,t),this.finishNode(s,"TypeParameter")}flowParseTypeParameterDeclaration(){let e=this.state.inType,t=this.startNode();t.params=[],this.state.inType=!0,this.match(47)||this.match(142)?this.next():this.unexpected();let s=!1;do{let a=this.flowParseTypeParameter(s);t.params.push(a),a.default&&(s=!0),this.match(48)||this.expect(12)}while(!this.match(48));return this.expect(48),this.state.inType=e,this.finishNode(t,"TypeParameterDeclaration")}flowParseTypeParameterInstantiation(){let e=this.startNode(),t=this.state.inType;e.params=[],this.state.inType=!0,this.expect(47);let s=this.state.noAnonFunctionType;for(this.state.noAnonFunctionType=!1;!this.match(48);)e.params.push(this.flowParseType()),this.match(48)||this.expect(12);return this.state.noAnonFunctionType=s,this.expect(48),this.state.inType=t,this.finishNode(e,"TypeParameterInstantiation")}flowParseTypeParameterInstantiationCallOrNew(){let 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(){let 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(134)||this.match(133)?super.parseExprAtom():this.parseIdentifier(!0)}flowParseObjectTypeIndexer(e,t,s){return e.static=t,this.lookahead().type===14?(e.id=this.flowParseObjectPropertyKey(),e.key=this.flowParseTypeInitialiser()):(e.id=null,e.key=this.flowParseType()),this.expect(3),e.value=this.flowParseTypeInitialiser(),e.variance=s,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){let s=this.startNode();return e.static=t,e.value=this.flowParseObjectTypeMethodish(s),this.finishNode(e,"ObjectTypeCallProperty")}flowParseObjectType({allowStatic:e,allowExact:t,allowSpread:s,allowProto:a,allowInexact:n}){let u=this.state.inType;this.state.inType=!0;let c=this.startNode();c.callProperties=[],c.properties=[],c.indexers=[],c.internalSlots=[];let f,h,y=!1;for(t&&this.match(6)?(this.expect(6),f=9,h=!0):(this.expect(5),f=8,h=!1),c.exact=h;!this.match(f);){let o=!1,l=null,p=null,d=this.startNode();if(a&&this.isContextual(118)){let g=this.lookahead();g.type!==14&&g.type!==17&&(this.next(),l=this.state.startLoc,e=!1)}if(e&&this.isContextual(106)){let g=this.lookahead();g.type!==14&&g.type!==17&&(this.next(),o=!0)}let x=this.flowParseVariance();if(this.eat(0))l!=null&&this.unexpected(l),this.eat(0)?(x&&this.unexpected(x.loc.start),c.internalSlots.push(this.flowParseObjectTypeInternalSlot(d,o))):c.indexers.push(this.flowParseObjectTypeIndexer(d,o,x));else if(this.match(10)||this.match(47))l!=null&&this.unexpected(l),x&&this.unexpected(x.loc.start),c.callProperties.push(this.flowParseObjectTypeCallProperty(d,o));else{let g="init";if(this.isContextual(99)||this.isContextual(104)){let b=this.lookahead();Fl(b.type)&&(g=this.state.value,this.next())}let E=this.flowParseObjectTypeProperty(d,o,l,x,g,s,n??!h);E===null?(y=!0,p=this.state.lastTokStartLoc):c.properties.push(E)}this.flowObjectTypeSemicolon(),p&&!this.match(8)&&!this.match(9)&&this.raise(j.UnexpectedExplicitInexactInObject,p)}this.expect(f),s&&(c.inexact=y);let m=this.finishNode(c,"ObjectTypeAnnotation");return this.state.inType=u,m}flowParseObjectTypeProperty(e,t,s,a,n,u,c){if(this.eat(21))return this.match(12)||this.match(13)||this.match(8)||this.match(9)?(u?c||this.raise(j.InexactInsideExact,this.state.lastTokStartLoc):this.raise(j.InexactInsideNonObject,this.state.lastTokStartLoc),a&&this.raise(j.InexactVariance,a),null):(u||this.raise(j.UnexpectedSpreadType,this.state.lastTokStartLoc),s!=null&&this.unexpected(s),a&&this.raise(j.SpreadVariance,a),e.argument=this.flowParseType(),this.finishNode(e,"ObjectTypeSpreadProperty"));{e.key=this.flowParseObjectPropertyKey(),e.static=t,e.proto=s!=null,e.kind=n;let f=!1;return this.match(47)||this.match(10)?(e.method=!0,s!=null&&this.unexpected(s),a&&this.unexpected(a.loc.start),e.value=this.flowParseObjectTypeMethodish(this.startNodeAt(e.loc.start)),(n==="get"||n==="set")&&this.flowCheckGetterSetterParams(e),!u&&e.key.name==="constructor"&&e.value.this&&this.raise(j.ThisParamBannedInConstructor,e.value.this)):(n!=="init"&&this.unexpected(),e.method=!1,this.eat(17)&&(f=!0),e.value=this.flowParseTypeInitialiser(),e.variance=a),e.optional=f,this.finishNode(e,"ObjectTypeProperty")}}flowCheckGetterSetterParams(e){let t=e.kind==="get"?0:1,s=e.value.params.length+(e.value.rest?1:0);e.value.this&&this.raise(e.kind==="get"?j.GetterMayNotHaveThisParam:j.SetterMayNotHaveThisParam,e.value.this),s!==t&&this.raise(e.kind==="get"?S.BadGetterArity:S.BadSetterArity,e),e.kind==="set"&&e.value.rest&&this.raise(S.BadSetterRestParameter,e)}flowObjectTypeSemicolon(){!this.eat(13)&&!this.eat(12)&&!this.match(8)&&!this.match(9)&&this.unexpected()}flowParseQualifiedTypeIdentifier(e,t){var s;(s=e)!=null||(e=this.state.startLoc);let a=t||this.flowParseRestrictedIdentifier(!0);for(;this.eat(16);){let n=this.startNodeAt(e);n.qualification=a,n.id=this.flowParseRestrictedIdentifier(!0),a=this.finishNode(n,"QualifiedTypeIdentifier")}return a}flowParseGenericType(e,t){let s=this.startNodeAt(e);return s.typeParameters=null,s.id=this.flowParseQualifiedTypeIdentifier(e,t),this.match(47)&&(s.typeParameters=this.flowParseTypeParameterInstantiation()),this.finishNode(s,"GenericTypeAnnotation")}flowParseTypeofType(){let e=this.startNode();return this.expect(87),e.argument=this.flowParsePrimaryType(),this.finishNode(e,"TypeofTypeAnnotation")}flowParseTupleType(){let 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,s=!1,a=null,n=this.startNode(),u=this.lookahead(),c=this.state.type===78;return u.type===14||u.type===17?(c&&!e&&this.raise(j.ThisParamMustBeFirst,n),t=this.parseIdentifier(c),this.eat(17)&&(s=!0,c&&this.raise(j.ThisParamMayNotBeOptional,n)),a=this.flowParseTypeInitialiser()):a=this.flowParseType(),n.name=t,n.optional=s,n.typeAnnotation=a,this.finishNode(n,"FunctionTypeParam")}reinterpretTypeAsFunctionTypeParam(e){let 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,s=null;for(this.match(78)&&(s=this.flowParseFunctionTypeParam(!0),s.name=null,this.match(11)||this.expect(12));!this.match(11)&&!this.match(21);)e.push(this.flowParseFunctionTypeParam(!1)),this.match(11)||this.expect(12);return this.eat(21)&&(t=this.flowParseFunctionTypeParam(!1)),{params:e,rest:t,_this:s}}flowIdentToTypeAnnotation(e,t,s){switch(s.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(s.name),this.flowParseGenericType(e,s)}}flowParsePrimaryType(){let e=this.state.startLoc,t=this.startNode(),s,a,n=!1,u=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,a=this.flowParseTupleType(),this.state.noAnonFunctionType=u,a;case 47:{let c=this.startNode();return c.typeParameters=this.flowParseTypeParameterDeclaration(),this.expect(10),s=this.flowParseFunctionTypeParams(),c.params=s.params,c.rest=s.rest,c.this=s._this,this.expect(11),this.expect(19),c.returnType=this.flowParseType(),this.finishNode(c,"FunctionTypeAnnotation")}case 10:{let c=this.startNode();if(this.next(),!this.match(11)&&!this.match(21))if(Z(this.state.type)||this.match(78)){let f=this.lookahead().type;n=f!==17&&f!==14}else n=!0;if(n){if(this.state.noAnonFunctionType=!1,a=this.flowParseType(),this.state.noAnonFunctionType=u,this.state.noAnonFunctionType||!(this.match(12)||this.match(11)&&this.lookahead().type===19))return this.expect(11),a;this.eat(12)}return a?s=this.flowParseFunctionTypeParams([this.reinterpretTypeAsFunctionTypeParam(a)]):s=this.flowParseFunctionTypeParams(),c.params=s.params,c.rest=s.rest,c.this=s._this,this.expect(11),this.expect(19),c.returnType=this.flowParseType(),c.typeParameters=null,this.finishNode(c,"FunctionTypeAnnotation")}case 133: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(134))return this.parseLiteralAtNode(-this.state.value,"NumberLiteralTypeAnnotation",t);if(this.match(135))return this.parseLiteralAtNode(-this.state.value,"BigIntLiteralTypeAnnotation",t);throw this.raise(j.UnexpectedSubtractionOperand,this.state.startLoc)}this.unexpected();return;case 134:return this.parseLiteral(this.state.value,"NumberLiteralTypeAnnotation");case 135:return this.parseLiteral(this.state.value,"BigIntLiteralTypeAnnotation");case 88:return this.next(),this.finishNode(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(ln(this.state.type)){let c=ft(this.state.type);return this.next(),super.createIdentifier(t,c)}else if(Z(this.state.type))return this.isContextual(129)?this.flowParseInterfaceType():this.flowIdentToTypeAnnotation(e,t,this.parseIdentifier())}this.unexpected()}flowParsePostfixType(){let e=this.state.startLoc,t=this.flowParsePrimaryType(),s=!1;for(;(this.match(0)||this.match(18))&&!this.canInsertSemicolon();){let a=this.startNodeAt(e),n=this.eat(18);s=s||n,this.expect(0),!n&&this.match(3)?(a.elementType=t,this.next(),t=this.finishNode(a,"ArrayTypeAnnotation")):(a.objectType=t,a.indexType=this.flowParseType(),this.expect(3),s?(a.optional=n,t=this.finishNode(a,"OptionalIndexedAccessType")):t=this.finishNode(a,"IndexedAccessType"))}return t}flowParsePrefixType(){let e=this.startNode();return this.eat(17)?(e.typeAnnotation=this.flowParsePrefixType(),this.finishNode(e,"NullableTypeAnnotation")):this.flowParsePostfixType()}flowParseAnonFunctionWithoutParens(){let e=this.flowParsePrefixType();if(!this.state.noAnonFunctionType&&this.eat(19)){let 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(){let e=this.startNode();this.eat(45);let t=this.flowParseAnonFunctionWithoutParens();for(e.types=[t];this.eat(45);)e.types.push(this.flowParseAnonFunctionWithoutParens());return e.types.length===1?t:this.finishNode(e,"IntersectionTypeAnnotation")}flowParseUnionType(){let e=this.startNode();this.eat(43);let t=this.flowParseIntersectionType();for(e.types=[t];this.eat(43);)e.types.push(this.flowParseIntersectionType());return e.types.length===1?t:this.finishNode(e,"UnionTypeAnnotation")}flowParseType(){let e=this.state.inType;this.state.inType=!0;let t=this.flowParseUnionType();return this.state.inType=e,t}flowParseTypeOrImplicitInstantiation(){if(this.state.type===132&&this.state.value==="_"){let e=this.state.startLoc,t=this.parseIdentifier();return this.flowParseGenericType(e,t)}else return this.flowParseType()}flowParseTypeAnnotation(){let e=this.startNode();return e.typeAnnotation=this.flowParseTypeInitialiser(),this.finishNode(e,"TypeAnnotation")}flowParseTypeAnnotatableIdentifier(e){let 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,s=!1){if(t){this.forwardNoArrowParamsConversionAt(e,()=>super.parseFunctionBody(e,!0,s));return}super.parseFunctionBody(e,!1,s)}parseFunctionBodyAndFinish(e,t,s=!1){if(this.match(14)){let a=this.startNode();[a.typeAnnotation,e.predicate]=this.flowParseTypeAndPredicateInitialiser(),e.returnType=a.typeAnnotation?this.finishNode(a,"TypeAnnotation"):null}return super.parseFunctionBodyAndFinish(e,t,s)}parseStatementLike(e){if(this.state.strict&&this.isContextual(129)){let s=this.lookahead();if(Re(s.type)){let a=this.startNode();return this.next(),this.flowParseInterface(a)}}else if(this.shouldParseEnums()&&this.isContextual(126)){let s=this.startNode();return this.next(),this.flowParseEnumDeclaration(s)}let t=super.parseStatementLike(e);return this.flowPragma===void 0&&!this.isValidDirective(t)&&(this.flowPragma=null),t}parseExpressionStatement(e,t,s){if(t.type==="Identifier"){if(t.name==="declare"){if(this.match(80)||Z(this.state.type)||this.match(68)||this.match(74)||this.match(82))return this.flowParseDeclare(e)}else if(Z(this.state.type)){if(t.name==="interface")return this.flowParseInterface(e);if(t.name==="type")return this.flowParseTypeAlias(e);if(t.name==="opaque")return this.flowParseOpaqueType(e,!1)}}return super.parseExpressionStatement(e,t,s)}shouldParseExportDeclaration(){let{type:e}=this.state;return bl(e)||this.shouldParseEnums()&&e===126?!this.state.containsEsc:super.shouldParseExportDeclaration()}isExportDefaultSpecifier(){let{type:e}=this.state;return bl(e)||this.shouldParseEnums()&&e===126?this.state.containsEsc:super.isExportDefaultSpecifier()}parseExportDefaultExpression(){if(this.shouldParseEnums()&&this.isContextual(126)){let e=this.startNode();return this.next(),this.flowParseEnumDeclaration(e)}return super.parseExportDefaultExpression()}parseConditional(e,t,s){if(!this.match(17))return e;if(this.state.maybeInArrowParameters){let m=this.lookaheadCharCode();if(m===44||m===61||m===58||m===41)return this.setOptionalParametersError(s),e}this.expect(17);let a=this.state.clone(),n=this.state.noArrowAt,u=this.startNodeAt(t),{consequent:c,failed:f}=this.tryParseConditionalConsequent(),[h,y]=this.getArrowLikeExpressions(c);if(f||y.length>0){let m=[...n];if(y.length>0){this.state=a,this.state.noArrowAt=m;for(let o=0;o<y.length;o++)m.push(y[o].start);({consequent:c,failed:f}=this.tryParseConditionalConsequent()),[h,y]=this.getArrowLikeExpressions(c)}f&&h.length>1&&this.raise(j.AmbiguousConditionalArrow,a.startLoc),f&&h.length===1&&(this.state=a,m.push(h[0].start),this.state.noArrowAt=m,{consequent:c,failed:f}=this.tryParseConditionalConsequent())}return this.getArrowLikeExpressions(c,!0),this.state.noArrowAt=n,this.expect(14),u.test=e,u.consequent=c,u.alternate=this.forwardNoArrowParamsConversionAt(u,()=>this.parseMaybeAssign(void 0,void 0)),this.finishNode(u,"ConditionalExpression")}tryParseConditionalConsequent(){this.state.noArrowParamsConversionAt.push(this.state.start);let e=this.parseMaybeAssignAllowIn(),t=!this.match(14);return this.state.noArrowParamsConversionAt.pop(),{consequent:e,failed:t}}getArrowLikeExpressions(e,t){let s=[e],a=[];for(;s.length!==0;){let n=s.pop();n.type==="ArrowFunctionExpression"&&n.body.type!=="BlockStatement"?(n.typeParameters||!n.returnType?this.finishArrowValidation(n):a.push(n),s.push(n.body)):n.type==="ConditionalExpression"&&(s.push(n.consequent),s.push(n.alternate))}return t?(a.forEach(n=>this.finishArrowValidation(n)),[a,[]]):dm(a,n=>n.params.every(u=>this.isAssignable(u,!0)))}finishArrowValidation(e){var t;this.toAssignableList(e.params,(t=e.extra)==null?void 0:t.trailingCommaLoc,!1),this.scope.enter(6),super.checkParams(e,!1,!0),this.scope.exit()}forwardNoArrowParamsConversionAt(e,t){let s;return this.state.noArrowParamsConversionAt.indexOf(e.start)!==-1?(this.state.noArrowParamsConversionAt.push(this.state.start),s=t(),this.state.noArrowParamsConversionAt.pop()):s=t(),s}parseParenItem(e,t){let s=super.parseParenItem(e,t);if(this.eat(17)&&(s.optional=!0,this.resetEndLocation(e)),this.match(14)){let a=this.startNodeAt(t);return a.expression=s,a.typeAnnotation=this.flowParseTypeAnnotation(),this.finishNode(a,"TypeCastExpression")}return s}assertModuleNodeAllowed(e){e.type==="ImportDeclaration"&&(e.importKind==="type"||e.importKind==="typeof")||e.type==="ExportNamedDeclaration"&&e.exportKind==="type"||e.type==="ExportAllDeclaration"&&e.exportKind==="type"||super.assertModuleNodeAllowed(e)}parseExportDeclaration(e){if(this.isContextual(130)){e.exportKind="type";let t=this.startNode();return this.next(),this.match(5)?(e.specifiers=this.parseExportSpecifiers(!0),super.parseExportFrom(e),null):this.flowParseTypeAlias(t)}else if(this.isContextual(131)){e.exportKind="type";let t=this.startNode();return this.next(),this.flowParseOpaqueType(t,!1)}else if(this.isContextual(129)){e.exportKind="type";let t=this.startNode();return this.next(),this.flowParseInterface(t)}else if(this.shouldParseEnums()&&this.isContextual(126)){e.exportKind="value";let t=this.startNode();return this.next(),this.flowParseEnumDeclaration(t)}else return super.parseExportDeclaration(e)}eatExportStar(e){return super.eatExportStar(e)?!0:this.isContextual(130)&&this.lookahead().type===55?(e.exportKind="type",this.next(),this.next(),!0):!1}maybeParseExportNamespaceSpecifier(e){let{startLoc:t}=this.state,s=super.maybeParseExportNamespaceSpecifier(e);return s&&e.exportKind==="type"&&this.unexpected(t),s}parseClassId(e,t,s){super.parseClassId(e,t,s),this.match(47)&&(e.typeParameters=this.flowParseTypeParameterDeclaration())}parseClassMember(e,t,s){let{startLoc:a}=this.state;if(this.isContextual(125)){if(super.parseClassMemberFromModifier(e,t))return;t.declare=!0}super.parseClassMember(e,t,s),t.declare&&(t.type!=="ClassProperty"&&t.type!=="ClassPrivateProperty"&&t.type!=="PropertyDefinition"?this.raise(j.DeclareClassElement,a):t.value&&this.raise(j.DeclareClassFieldInitializer,t.value))}isIterator(e){return e==="iterator"||e==="asyncIterator"}readIterator(){let e=super.readWord1(),t="@@"+e;(!this.isIterator(e)||!this.state.inType)&&this.raise(S.InvalidIdentifier,this.state.curPosition(),{identifierName:t}),this.finishToken(132,t)}getTokenFromCode(e){let t=this.input.charCodeAt(this.state.pos+1);e===123&&t===124?this.finishOp(6,2):this.state.inType&&(e===62||e===60)?this.finishOp(e===62?48:47,1):this.state.inType&&e===63?t===46?this.finishOp(18,2):this.finishOp(17,1):Yd(e,t,this.input.charCodeAt(this.state.pos+2))?(this.state.pos+=2,this.readIterator()):super.getTokenFromCode(e)}isAssignable(e,t){return e.type==="TypeCastExpression"?this.isAssignable(e.expression,t):super.isAssignable(e,t)}toAssignable(e,t=!1){!t&&e.type==="AssignmentExpression"&&e.left.type==="TypeCastExpression"&&(e.left=this.typeCastToParameter(e.left)),super.toAssignable(e,t)}toAssignableList(e,t,s){for(let a=0;a<e.length;a++){let n=e[a];n?.type==="TypeCastExpression"&&(e[a]=this.typeCastToParameter(n))}super.toAssignableList(e,t,s)}toReferencedList(e,t){for(let a=0;a<e.length;a++){var s;let n=e[a];n&&n.type==="TypeCastExpression"&&!((s=n.extra)!=null&&s.parenthesized)&&(e.length>1||!t)&&this.raise(j.TypeCastInPattern,n.typeAnnotation)}return e}parseArrayLike(e,t,s,a){let n=super.parseArrayLike(e,t,s,a);return t&&!this.state.maybeInArrowParameters&&this.toReferencedList(n.elements),n}isValidLVal(e,t,s){return e==="TypeCastExpression"||super.isValidLVal(e,t,s)}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,s,a,n,u){if(t.variance&&this.unexpected(t.variance.loc.start),delete t.variance,this.match(47)&&(t.typeParameters=this.flowParseTypeParameterDeclaration()),super.pushClassMethod(e,t,s,a,n,u),t.params&&n){let c=t.params;c.length>0&&this.isThisParam(c[0])&&this.raise(j.ThisParamBannedInConstructor,t)}else if(t.type==="MethodDefinition"&&n&&t.value.params){let c=t.value.params;c.length>0&&this.isThisParam(c[0])&&this.raise(j.ThisParamBannedInConstructor,t)}}pushClassPrivateMethod(e,t,s,a){t.variance&&this.unexpected(t.variance.loc.start),delete t.variance,this.match(47)&&(t.typeParameters=this.flowParseTypeParameterDeclaration()),super.pushClassPrivateMethod(e,t,s,a)}parseClassSuper(e){if(super.parseClassSuper(e),e.superClass&&this.match(47)&&(e.superTypeParameters=this.flowParseTypeParameterInstantiation()),this.isContextual(113)){this.next();let t=e.implements=[];do{let s=this.startNode();s.id=this.flowParseRestrictedIdentifier(!0),this.match(47)?s.typeParameters=this.flowParseTypeParameterInstantiation():s.typeParameters=null,t.push(this.finishNode(s,"ClassImplements"))}while(this.eat(12))}}checkGetterSetterParams(e){super.checkGetterSetterParams(e);let t=this.getObjectOrClassMethodParams(e);if(t.length>0){let s=t[0];this.isThisParam(s)&&e.kind==="get"?this.raise(j.GetterMayNotHaveThisParam,s):this.isThisParam(s)&&this.raise(j.SetterMayNotHaveThisParam,s)}}parsePropertyNamePrefixOperator(e){e.variance=this.flowParseVariance()}parseObjPropValue(e,t,s,a,n,u,c){e.variance&&this.unexpected(e.variance.loc.start),delete e.variance;let f;this.match(47)&&!u&&(f=this.flowParseTypeParameterDeclaration(),this.match(10)||this.unexpected());let h=super.parseObjPropValue(e,t,s,a,n,u,c);return f&&((h.value||h).typeParameters=f),h}parseAssignableListItemTypes(e){return this.eat(17)&&(e.type!=="Identifier"&&this.raise(j.PatternIsOptional,e),this.isThisParam(e)&&this.raise(j.ThisParamMayNotBeOptional,e),e.optional=!0),this.match(14)?e.typeAnnotation=this.flowParseTypeAnnotation():this.isThisParam(e)&&this.raise(j.ThisParamAnnotationRequired,e),this.match(29)&&this.isThisParam(e)&&this.raise(j.ThisParamNoDefault,e),this.resetEndLocation(e),e}parseMaybeDefault(e,t){let s=super.parseMaybeDefault(e,t);return s.type==="AssignmentPattern"&&s.typeAnnotation&&s.right.start<s.typeAnnotation.start&&this.raise(j.TypeBeforeInitializer,s.typeAnnotation),s}checkImportReflection(e){super.checkImportReflection(e),e.module&&e.importKind!=="value"&&this.raise(j.ImportReflectionHasImportType,e.specifiers[0].loc.start)}parseImportSpecifierLocal(e,t,s){t.local=Tl(e)?this.flowParseRestrictedIdentifier(!0,!0):this.parseIdentifier(),e.specifiers.push(this.finishImportSpecifier(t,s))}isPotentialImportPhase(e){if(super.isPotentialImportPhase(e))return!0;if(this.isContextual(130)){if(!e)return!0;let t=this.lookaheadCharCode();return t===123||t===42}return!e&&this.isContextual(87)}applyImportPhase(e,t,s,a){if(super.applyImportPhase(e,t,s,a),t){if(!s&&this.match(65))return;e.exportKind=s==="type"?s:"value"}else s==="type"&&this.match(55)&&this.unexpected(),e.importKind=s==="type"||s==="typeof"?s:"value"}parseImportSpecifier(e,t,s,a,n){let u=e.imported,c=null;u.type==="Identifier"&&(u.name==="type"?c="type":u.name==="typeof"&&(c="typeof"));let f=!1;if(this.isContextual(93)&&!this.isLookaheadContextual("as")){let y=this.parseIdentifier(!0);c!==null&&!Re(this.state.type)?(e.imported=y,e.importKind=c,e.local=st(y)):(e.imported=u,e.importKind=null,e.local=this.parseIdentifier())}else{if(c!==null&&Re(this.state.type))e.imported=this.parseIdentifier(!0),e.importKind=c;else{if(t)throw this.raise(S.ImportBindingIsString,e,{importName:u.value});e.imported=u,e.importKind=null}this.eatContextual(93)?e.local=this.parseIdentifier():(f=!0,e.local=st(e.imported))}let h=Tl(e);return s&&h&&this.raise(j.ImportTypeShorthandOnlyInPureImport,e),(s||h)&&this.checkReservedType(e.local.name,e.local.loc.start,!0),f&&!s&&!h&&this.checkReservedWord(e.local.name,e.loc.start,!0,!0),this.finishImportSpecifier(e,"ImportSpecifier")}parseBindingAtom(){switch(this.state.type){case 78:return this.parseIdentifier(!0);default:return super.parseBindingAtom()}}parseFunctionParams(e,t){let s=e.kind;s!=="get"&&s!=="set"&&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)){let s=this.state.noAnonFunctionType;this.state.noAnonFunctionType=!0,e.returnType=this.flowParseTypeAnnotation(),this.state.noAnonFunctionType=s}return super.parseAsyncArrowFromCallExpression(e,t)}shouldParseAsyncArrow(){return this.match(14)||super.shouldParseAsyncArrow()}parseMaybeAssign(e,t){var s;let a=null,n;if(this.hasPlugin("jsx")&&(this.match(142)||this.match(47))){if(a=this.state.clone(),n=this.tryParse(()=>super.parseMaybeAssign(e,t),a),!n.error)return n.node;let{context:f}=this.state,h=f[f.length-1];(h===re.j_oTag||h===re.j_expr)&&f.pop()}if((s=n)!=null&&s.error||this.match(47)){var u,c;a=a||this.state.clone();let f,h=this.tryParse(m=>{var o;f=this.flowParseTypeParameterDeclaration();let l=this.forwardNoArrowParamsConversionAt(f,()=>{let d=super.parseMaybeAssign(e,t);return this.resetStartLocationFromNode(d,f),d});(o=l.extra)!=null&&o.parenthesized&&m();let p=this.maybeUnwrapTypeCastExpression(l);return p.type!=="ArrowFunctionExpression"&&m(),p.typeParameters=f,this.resetStartLocationFromNode(p,f),l},a),y=null;if(h.node&&this.maybeUnwrapTypeCastExpression(h.node).type==="ArrowFunctionExpression"){if(!h.error&&!h.aborted)return h.node.async&&this.raise(j.UnexpectedTypeParameterBeforeAsyncArrowFunction,f),h.node;y=h.node}if((u=n)!=null&&u.node)return this.state=n.failState,n.node;if(y)return this.state=h.failState,y;throw(c=n)!=null&&c.thrown?n.error:h.thrown?h.error:this.raise(j.UnexpectedTokenAfterTypeParameter,f)}return super.parseMaybeAssign(e,t)}parseArrow(e){if(this.match(14)){let t=this.tryParse(()=>{let s=this.state.noAnonFunctionType;this.state.noAnonFunctionType=!0;let a=this.startNode();return[a.typeAnnotation,e.predicate]=this.flowParseTypeAndPredicateInitialiser(),this.state.noAnonFunctionType=s,this.canInsertSemicolon()&&this.unexpected(),this.match(19)||this.unexpected(),a});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.indexOf(e.start)!==-1?e.params=t:super.setArrowFunctionParameters(e,t)}checkParams(e,t,s,a=!0){if(!(s&&this.state.noArrowParamsConversionAt.indexOf(e.start)!==-1)){for(let n=0;n<e.params.length;n++)this.isThisParam(e.params[n])&&n>0&&this.raise(j.ThisParamMustBeFirst,e.params[n]);super.checkParams(e,t,s,a)}}parseParenAndDistinguishExpression(e){return super.parseParenAndDistinguishExpression(e&&this.state.noArrowAt.indexOf(this.state.start)===-1)}parseSubscripts(e,t,s){if(e.type==="Identifier"&&e.name==="async"&&this.state.noArrowAt.indexOf(t.index)!==-1){this.next();let a=this.startNodeAt(t);a.callee=e,a.arguments=super.parseCallExpressionArguments(11,!1),e=this.finishNode(a,"CallExpression")}else if(e.type==="Identifier"&&e.name==="async"&&this.match(47)){let a=this.state.clone(),n=this.tryParse(c=>this.parseAsyncArrowWithTypeParameters(t)||c(),a);if(!n.error&&!n.aborted)return n.node;let u=this.tryParse(()=>super.parseSubscripts(e,t,s),a);if(u.node&&!u.error)return u.node;if(n.node)return this.state=n.failState,n.node;if(u.node)return this.state=u.failState,u.node;throw n.error||u.error}return super.parseSubscripts(e,t,s)}parseSubscript(e,t,s,a){if(this.match(18)&&this.isLookaheadToken_lt()){if(a.optionalChainMember=!0,s)return a.stop=!0,e;this.next();let n=this.startNodeAt(t);return n.callee=e,n.typeArguments=this.flowParseTypeParameterInstantiation(),this.expect(10),n.arguments=this.parseCallExpressionArguments(11,!1),n.optional=!0,this.finishCallExpression(n,!0)}else if(!s&&this.shouldParseTypes()&&this.match(47)){let n=this.startNodeAt(t);n.callee=e;let u=this.tryParse(()=>(n.typeArguments=this.flowParseTypeParameterInstantiationCallOrNew(),this.expect(10),n.arguments=super.parseCallExpressionArguments(11,!1),a.optionalChainMember&&(n.optional=!1),this.finishCallExpression(n,a.optionalChainMember)));if(u.node)return u.error&&(this.state=u.failState),u.node}return super.parseSubscript(e,t,s,a)}parseNewCallee(e){super.parseNewCallee(e);let t=null;this.shouldParseTypes()&&this.match(47)&&(t=this.tryParse(()=>this.flowParseTypeParameterInstantiationCallOrNew()).node),e.typeArguments=t}parseAsyncArrowWithTypeParameters(e){let t=this.startNodeAt(e);if(this.parseFunctionParams(t,!1),!!this.parseArrow(t))return super.parseArrowExpression(t,void 0,!0)}readToken_mult_modulo(e){let t=this.input.charCodeAt(this.state.pos+1);if(e===42&&t===47&&this.state.hasFlowComment){this.state.hasFlowComment=!1,this.state.pos+=2,this.nextToken();return}super.readToken_mult_modulo(e)}readToken_pipe_amp(e){let t=this.input.charCodeAt(this.state.pos+1);if(e===124&&t===125){this.finishOp(9,2);return}super.readToken_pipe_amp(e)}parseTopLevel(e,t){let s=super.parseTopLevel(e,t);return this.state.hasFlowComment&&this.raise(j.UnterminatedFlowComment,this.state.curPosition()),s}skipBlockComment(){if(this.hasPlugin("flowComments")&&this.skipFlowComment()){if(this.state.hasFlowComment)throw this.raise(j.NestedFlowComment,this.state.startLoc);this.hasFlowCommentCompletion();let e=this.skipFlowComment();e&&(this.state.pos+=e,this.state.hasFlowComment=!0);return}return super.skipBlockComment(this.state.hasFlowComment?"*-/":"*/")}skipFlowComment(){let{pos:e}=this.state,t=2;for(;[32,9].includes(this.input.charCodeAt(e+t));)t++;let s=this.input.charCodeAt(t+e),a=this.input.charCodeAt(t+e+1);return s===58&&a===58?t+2:this.input.slice(t+e,t+e+12)==="flow-include"?t+12:s===58&&a!==58?t:!1}hasFlowCommentCompletion(){if(this.input.indexOf("*/",this.state.pos)===-1)throw this.raise(S.UnterminatedComment,this.state.curPosition())}flowEnumErrorBooleanMemberNotInitialized(e,{enumName:t,memberName:s}){this.raise(j.EnumBooleanMemberNotInitialized,e,{memberName:s,enumName:t})}flowEnumErrorInvalidMemberInitializer(e,t){return this.raise(t.explicitType?t.explicitType==="symbol"?j.EnumInvalidMemberInitializerSymbolType:j.EnumInvalidMemberInitializerPrimaryType:j.EnumInvalidMemberInitializerUnknownType,e,t)}flowEnumErrorNumberMemberNotInitialized(e,t){this.raise(j.EnumNumberMemberNotInitialized,e,t)}flowEnumErrorStringMemberInconsistentlyInitialized(e,t){this.raise(j.EnumStringMemberInconsistentlyInitialized,e,t)}flowEnumMemberInit(){let e=this.state.startLoc,t=()=>this.match(12)||this.match(8);switch(this.state.type){case 134:{let s=this.parseNumericLiteral(this.state.value);return t()?{type:"number",loc:s.loc.start,value:s}:{type:"invalid",loc:e}}case 133:{let s=this.parseStringLiteral(this.state.value);return t()?{type:"string",loc:s.loc.start,value:s}:{type:"invalid",loc:e}}case 85:case 86:{let s=this.parseBooleanLiteral(this.match(85));return t()?{type:"boolean",loc:s.loc.start,value:s}:{type:"invalid",loc:e}}default:return{type:"invalid",loc:e}}}flowEnumMemberRaw(){let e=this.state.startLoc,t=this.parseIdentifier(!0),s=this.eat(29)?this.flowEnumMemberInit():{type:"none",loc:e};return{id:t,init:s}}flowEnumCheckExplicitTypeMismatch(e,t,s){let{explicitType:a}=t;a!==null&&a!==s&&this.flowEnumErrorInvalidMemberInitializer(e,t)}flowEnumMembers({enumName:e,explicitType:t}){let s=new Set,a={booleanMembers:[],numberMembers:[],stringMembers:[],defaultedMembers:[]},n=!1;for(;!this.match(8);){if(this.eat(21)){n=!0;break}let u=this.startNode(),{id:c,init:f}=this.flowEnumMemberRaw(),h=c.name;if(h==="")continue;/^[a-z]/.test(h)&&this.raise(j.EnumInvalidMemberName,c,{memberName:h,suggestion:h[0].toUpperCase()+h.slice(1),enumName:e}),s.has(h)&&this.raise(j.EnumDuplicateMemberName,c,{memberName:h,enumName:e}),s.add(h);let y={enumName:e,explicitType:t,memberName:h};switch(u.id=c,f.type){case"boolean":{this.flowEnumCheckExplicitTypeMismatch(f.loc,y,"boolean"),u.init=f.value,a.booleanMembers.push(this.finishNode(u,"EnumBooleanMember"));break}case"number":{this.flowEnumCheckExplicitTypeMismatch(f.loc,y,"number"),u.init=f.value,a.numberMembers.push(this.finishNode(u,"EnumNumberMember"));break}case"string":{this.flowEnumCheckExplicitTypeMismatch(f.loc,y,"string"),u.init=f.value,a.stringMembers.push(this.finishNode(u,"EnumStringMember"));break}case"invalid":throw this.flowEnumErrorInvalidMemberInitializer(f.loc,y);case"none":switch(t){case"boolean":this.flowEnumErrorBooleanMemberNotInitialized(f.loc,y);break;case"number":this.flowEnumErrorNumberMemberNotInitialized(f.loc,y);break;default:a.defaultedMembers.push(this.finishNode(u,"EnumDefaultedMember"))}}this.match(8)||this.expect(12)}return{members:a,hasUnknownMembers:n}}flowEnumStringMembers(e,t,{enumName:s}){if(e.length===0)return t;if(t.length===0)return e;if(t.length>e.length){for(let a of e)this.flowEnumErrorStringMemberInconsistentlyInitialized(a,{enumName:s});return t}else{for(let a of t)this.flowEnumErrorStringMemberInconsistentlyInitialized(a,{enumName:s});return e}}flowEnumParseExplicitType({enumName:e}){if(!this.eatContextual(102))return null;if(!Z(this.state.type))throw this.raise(j.EnumInvalidExplicitTypeUnknownSupplied,this.state.startLoc,{enumName:e});let{value:t}=this.state;return this.next(),t!=="boolean"&&t!=="number"&&t!=="string"&&t!=="symbol"&&this.raise(j.EnumInvalidExplicitType,this.state.startLoc,{enumName:e,invalidEnumType:t}),t}flowEnumBody(e,t){let s=t.name,a=t.loc.start,n=this.flowEnumParseExplicitType({enumName:s});this.expect(5);let{members:u,hasUnknownMembers:c}=this.flowEnumMembers({enumName:s,explicitType:n});switch(e.hasUnknownMembers=c,n){case"boolean":return e.explicitType=!0,e.members=u.booleanMembers,this.expect(8),this.finishNode(e,"EnumBooleanBody");case"number":return e.explicitType=!0,e.members=u.numberMembers,this.expect(8),this.finishNode(e,"EnumNumberBody");case"string":return e.explicitType=!0,e.members=this.flowEnumStringMembers(u.stringMembers,u.defaultedMembers,{enumName:s}),this.expect(8),this.finishNode(e,"EnumStringBody");case"symbol":return e.members=u.defaultedMembers,this.expect(8),this.finishNode(e,"EnumSymbolBody");default:{let f=()=>(e.members=[],this.expect(8),this.finishNode(e,"EnumStringBody"));e.explicitType=!1;let h=u.booleanMembers.length,y=u.numberMembers.length,m=u.stringMembers.length,o=u.defaultedMembers.length;if(!h&&!y&&!m&&!o)return f();if(!h&&!y)return e.members=this.flowEnumStringMembers(u.stringMembers,u.defaultedMembers,{enumName:s}),this.expect(8),this.finishNode(e,"EnumStringBody");if(!y&&!m&&h>=o){for(let l of u.defaultedMembers)this.flowEnumErrorBooleanMemberNotInitialized(l.loc.start,{enumName:s,memberName:l.id.name});return e.members=u.booleanMembers,this.expect(8),this.finishNode(e,"EnumBooleanBody")}else if(!h&&!m&&y>=o){for(let l of u.defaultedMembers)this.flowEnumErrorNumberMemberNotInitialized(l.loc.start,{enumName:s,memberName:l.id.name});return e.members=u.numberMembers,this.expect(8),this.finishNode(e,"EnumNumberBody")}else return this.raise(j.EnumInconsistentMemberValues,a,{enumName:s}),f()}}}flowParseEnumDeclaration(e){let t=this.parseIdentifier();return e.id=t,e.body=this.flowEnumBody(this.startNode(),t),this.finishNode(e,"EnumDeclaration")}isLookaheadToken_lt(){let e=this.nextTokenStart();if(this.input.charCodeAt(e)===60){let t=this.input.charCodeAt(e+1);return t!==60&&t!==61}return!1}maybeUnwrapTypeCastExpression(e){return e.type==="TypeCastExpression"?e.expression:e}},xm={__proto__:null,quot:'"',amp:"&",apos:"'",lt:"<",gt:">",nbsp:"\xA0",iexcl:"\xA1",cent:"\xA2",pound:"\xA3",curren:"\xA4",yen:"\xA5",brvbar:"\xA6",sect:"\xA7",uml:"\xA8",copy:"\xA9",ordf:"\xAA",laquo:"\xAB",not:"\xAC",shy:"\xAD",reg:"\xAE",macr:"\xAF",deg:"\xB0",plusmn:"\xB1",sup2:"\xB2",sup3:"\xB3",acute:"\xB4",micro:"\xB5",para:"\xB6",middot:"\xB7",cedil:"\xB8",sup1:"\xB9",ordm:"\xBA",raquo:"\xBB",frac14:"\xBC",frac12:"\xBD",frac34:"\xBE",iquest:"\xBF",Agrave:"\xC0",Aacute:"\xC1",Acirc:"\xC2",Atilde:"\xC3",Auml:"\xC4",Aring:"\xC5",AElig:"\xC6",Ccedil:"\xC7",Egrave:"\xC8",Eacute:"\xC9",Ecirc:"\xCA",Euml:"\xCB",Igrave:"\xCC",Iacute:"\xCD",Icirc:"\xCE",Iuml:"\xCF",ETH:"\xD0",Ntilde:"\xD1",Ograve:"\xD2",Oacute:"\xD3",Ocirc:"\xD4",Otilde:"\xD5",Ouml:"\xD6",times:"\xD7",Oslash:"\xD8",Ugrave:"\xD9",Uacute:"\xDA",Ucirc:"\xDB",Uuml:"\xDC",Yacute:"\xDD",THORN:"\xDE",szlig:"\xDF",agrave:"\xE0",aacute:"\xE1",acirc:"\xE2",atilde:"\xE3",auml:"\xE4",aring:"\xE5",aelig:"\xE6",ccedil:"\xE7",egrave:"\xE8",eacute:"\xE9",ecirc:"\xEA",euml:"\xEB",igrave:"\xEC",iacute:"\xED",icirc:"\xEE",iuml:"\xEF",eth:"\xF0",ntilde:"\xF1",ograve:"\xF2",oacute:"\xF3",ocirc:"\xF4",otilde:"\xF5",ouml:"\xF6",divide:"\xF7",oslash:"\xF8",ugrave:"\xF9",uacute:"\xFA",ucirc:"\xFB",uuml:"\xFC",yacute:"\xFD",thorn:"\xFE",yuml:"\xFF",OElig:"\u0152",oelig:"\u0153",Scaron:"\u0160",scaron:"\u0161",Yuml:"\u0178",fnof:"\u0192",circ:"\u02C6",tilde:"\u02DC",Alpha:"\u0391",Beta:"\u0392",Gamma:"\u0393",Delta:"\u0394",Epsilon:"\u0395",Zeta:"\u0396",Eta:"\u0397",Theta:"\u0398",Iota:"\u0399",Kappa:"\u039A",Lambda:"\u039B",Mu:"\u039C",Nu:"\u039D",Xi:"\u039E",Omicron:"\u039F",Pi:"\u03A0",Rho:"\u03A1",Sigma:"\u03A3",Tau:"\u03A4",Upsilon:"\u03A5",Phi:"\u03A6",Chi:"\u03A7",Psi:"\u03A8",Omega:"\u03A9",alpha:"\u03B1",beta:"\u03B2",gamma:"\u03B3",delta:"\u03B4",epsilon:"\u03B5",zeta:"\u03B6",eta:"\u03B7",theta:"\u03B8",iota:"\u03B9",kappa:"\u03BA",lambda:"\u03BB",mu:"\u03BC",nu:"\u03BD",xi:"\u03BE",omicron:"\u03BF",pi:"\u03C0",rho:"\u03C1",sigmaf:"\u03C2",sigma:"\u03C3",tau:"\u03C4",upsilon:"\u03C5",phi:"\u03C6",chi:"\u03C7",psi:"\u03C8",omega:"\u03C9",thetasym:"\u03D1",upsih:"\u03D2",piv:"\u03D6",ensp:"\u2002",emsp:"\u2003",thinsp:"\u2009",zwnj:"\u200C",zwj:"\u200D",lrm:"\u200E",rlm:"\u200F",ndash:"\u2013",mdash:"\u2014",lsquo:"\u2018",rsquo:"\u2019",sbquo:"\u201A",ldquo:"\u201C",rdquo:"\u201D",bdquo:"\u201E",dagger:"\u2020",Dagger:"\u2021",bull:"\u2022",hellip:"\u2026",permil:"\u2030",prime:"\u2032",Prime:"\u2033",lsaquo:"\u2039",rsaquo:"\u203A",oline:"\u203E",frasl:"\u2044",euro:"\u20AC",image:"\u2111",weierp:"\u2118",real:"\u211C",trade:"\u2122",alefsym:"\u2135",larr:"\u2190",uarr:"\u2191",rarr:"\u2192",darr:"\u2193",harr:"\u2194",crarr:"\u21B5",lArr:"\u21D0",uArr:"\u21D1",rArr:"\u21D2",dArr:"\u21D3",hArr:"\u21D4",forall:"\u2200",part:"\u2202",exist:"\u2203",empty:"\u2205",nabla:"\u2207",isin:"\u2208",notin:"\u2209",ni:"\u220B",prod:"\u220F",sum:"\u2211",minus:"\u2212",lowast:"\u2217",radic:"\u221A",prop:"\u221D",infin:"\u221E",ang:"\u2220",and:"\u2227",or:"\u2228",cap:"\u2229",cup:"\u222A",int:"\u222B",there4:"\u2234",sim:"\u223C",cong:"\u2245",asymp:"\u2248",ne:"\u2260",equiv:"\u2261",le:"\u2264",ge:"\u2265",sub:"\u2282",sup:"\u2283",nsub:"\u2284",sube:"\u2286",supe:"\u2287",oplus:"\u2295",otimes:"\u2297",perp:"\u22A5",sdot:"\u22C5",lceil:"\u2308",rceil:"\u2309",lfloor:"\u230A",rfloor:"\u230B",lang:"\u2329",rang:"\u232A",loz:"\u25CA",spades:"\u2660",clubs:"\u2663",hearts:"\u2665",diams:"\u2666"},Ct=rt`jsx`({AttributeIsEmpty:"JSX attributes must only be assigned a non-empty expression.",MissingClosingTagElement:({openingTagName:i})=>`Expected corresponding JSX closing tag for <${i}>.`,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:i,HTMLEntity:r})=>`Unexpected token \`${i}\`. Did you mean \`${r}\` or \`{'${i}'}\`?`,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 pt(i){return i?i.type==="JSXOpeningFragment"||i.type==="JSXClosingFragment":!1}function Yt(i){if(i.type==="JSXIdentifier")return i.name;if(i.type==="JSXNamespacedName")return i.namespace.name+":"+i.name.name;if(i.type==="JSXMemberExpression")return Yt(i.object)+"."+Yt(i.property);throw new Error("Node had unexpected type: "+i.type)}var gm=i=>class extends i{jsxReadToken(){let e="",t=this.state.pos;for(;;){if(this.state.pos>=this.length)throw this.raise(Ct.UnterminatedJsxContent,this.state.startLoc);let s=this.input.charCodeAt(this.state.pos);switch(s){case 60:case 123:if(this.state.pos===this.state.start){s===60&&this.state.canStartJSXElement?(++this.state.pos,this.finishToken(142)):super.getTokenFromCode(s);return}e+=this.input.slice(t,this.state.pos),this.finishToken(141,e);return;case 38:e+=this.input.slice(t,this.state.pos),e+=this.jsxReadEntity(),t=this.state.pos;break;case 62:case 125:default:Lr(s)?(e+=this.input.slice(t,this.state.pos),e+=this.jsxReadNewLine(!0),t=this.state.pos):++this.state.pos}}}jsxReadNewLine(e){let t=this.input.charCodeAt(this.state.pos),s;return++this.state.pos,t===13&&this.input.charCodeAt(this.state.pos)===10?(++this.state.pos,s=e?`
104
+ `:`\r
105
+ `):s=String.fromCharCode(t),++this.state.curLine,this.state.lineStart=this.state.pos,s}jsxReadString(e){let t="",s=++this.state.pos;for(;;){if(this.state.pos>=this.length)throw this.raise(S.UnterminatedString,this.state.startLoc);let a=this.input.charCodeAt(this.state.pos);if(a===e)break;a===38?(t+=this.input.slice(s,this.state.pos),t+=this.jsxReadEntity(),s=this.state.pos):Lr(a)?(t+=this.input.slice(s,this.state.pos),t+=this.jsxReadNewLine(!1),s=this.state.pos):++this.state.pos}t+=this.input.slice(s,this.state.pos++),this.finishToken(133,t)}jsxReadEntity(){let e=++this.state.pos;if(this.codePointAtPos(this.state.pos)===35){++this.state.pos;let t=10;this.codePointAtPos(this.state.pos)===120&&(t=16,++this.state.pos);let s=this.readInt(t,void 0,!1,"bail");if(s!==null&&this.codePointAtPos(this.state.pos)===59)return++this.state.pos,String.fromCodePoint(s)}else{let t=0,s=!1;for(;t++<10&&this.state.pos<this.length&&!(s=this.codePointAtPos(this.state.pos)===59);)++this.state.pos;if(s){let a=this.input.slice(e,this.state.pos),n=xm[a];if(++this.state.pos,n)return n}}return this.state.pos=e,"&"}jsxReadWord(){let e,t=this.state.pos;do e=this.input.charCodeAt(++this.state.pos);while(Qt(e)||e===45);this.finishToken(140,this.input.slice(t,this.state.pos))}jsxParseIdentifier(){let e=this.startNode();return this.match(140)?e.name=this.state.value:ln(this.state.type)?e.name=ft(this.state.type):this.unexpected(),this.next(),this.finishNode(e,"JSXIdentifier")}jsxParseNamespacedName(){let e=this.state.startLoc,t=this.jsxParseIdentifier();if(!this.eat(14))return t;let s=this.startNodeAt(e);return s.namespace=t,s.name=this.jsxParseIdentifier(),this.finishNode(s,"JSXNamespacedName")}jsxParseElementName(){let e=this.state.startLoc,t=this.jsxParseNamespacedName();if(t.type==="JSXNamespacedName")return t;for(;this.eat(16);){let s=this.startNodeAt(e);s.object=t,s.property=this.jsxParseIdentifier(),t=this.finishNode(s,"JSXMemberExpression")}return t}jsxParseAttributeValue(){let e;switch(this.state.type){case 5:return e=this.startNode(),this.setContext(re.brace),this.next(),e=this.jsxParseExpressionContainer(e,re.j_oTag),e.expression.type==="JSXEmptyExpression"&&this.raise(Ct.AttributeIsEmpty,e),e;case 142:case 133:return this.parseExprAtom();default:throw this.raise(Ct.UnsupportedJsxValue,this.state.startLoc)}}jsxParseEmptyExpression(){let 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(re.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{let s=this.parseExpression();e.expression=s}return this.setContext(t),this.state.canStartJSXElement=!0,this.expect(8),this.finishNode(e,"JSXExpressionContainer")}jsxParseAttribute(){let e=this.startNode();return this.match(5)?(this.setContext(re.brace),this.next(),this.expect(21),e.argument=this.parseMaybeAssignAllowIn(),this.setContext(re.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){let t=this.startNodeAt(e);return this.eat(143)?this.finishNode(t,"JSXOpeningFragment"):(t.name=this.jsxParseElementName(),this.jsxParseOpeningElementAfterName(t))}jsxParseOpeningElementAfterName(e){let t=[];for(;!this.match(56)&&!this.match(143);)t.push(this.jsxParseAttribute());return e.attributes=t,e.selfClosing=this.eat(56),this.expect(143),this.finishNode(e,"JSXOpeningElement")}jsxParseClosingElementAt(e){let t=this.startNodeAt(e);return this.eat(143)?this.finishNode(t,"JSXClosingFragment"):(t.name=this.jsxParseElementName(),this.expect(143),this.finishNode(t,"JSXClosingElement"))}jsxParseElementAt(e){let t=this.startNodeAt(e),s=[],a=this.jsxParseOpeningElementAt(e),n=null;if(!a.selfClosing){e:for(;;)switch(this.state.type){case 142:if(e=this.state.startLoc,this.next(),this.eat(56)){n=this.jsxParseClosingElementAt(e);break e}s.push(this.jsxParseElementAt(e));break;case 141:s.push(this.parseLiteral(this.state.value,"JSXText"));break;case 5:{let u=this.startNode();this.setContext(re.brace),this.next(),this.match(21)?s.push(this.jsxParseSpreadChild(u)):s.push(this.jsxParseExpressionContainer(u,re.j_expr));break}default:this.unexpected()}pt(a)&&!pt(n)&&n!==null?this.raise(Ct.MissingClosingTagFragment,n):!pt(a)&&pt(n)?this.raise(Ct.MissingClosingTagElement,n,{openingTagName:Yt(a.name)}):!pt(a)&&!pt(n)&&Yt(n.name)!==Yt(a.name)&&this.raise(Ct.MissingClosingTagElement,n,{openingTagName:Yt(a.name)})}if(pt(a)?(t.openingFragment=a,t.closingFragment=n):(t.openingElement=a,t.closingElement=n),t.children=s,this.match(47))throw this.raise(Ct.UnwrappedAdjacentJSXElements,this.state.startLoc);return pt(a)?this.finishNode(t,"JSXFragment"):this.finishNode(t,"JSXElement")}jsxParseElement(){let e=this.state.startLoc;return this.next(),this.jsxParseElementAt(e)}setContext(e){let{context:t}=this.state;t[t.length-1]=e}parseExprAtom(e){return this.match(142)?this.jsxParseElement():this.match(47)&&this.input.charCodeAt(this.state.pos)!==33?(this.replaceToken(142),this.jsxParseElement()):super.parseExprAtom(e)}skipSpace(){this.curContext().preserveSpace||super.skipSpace()}getTokenFromCode(e){let t=this.curContext();if(t===re.j_expr){this.jsxReadToken();return}if(t===re.j_oTag||t===re.j_cTag){if(tt(e)){this.jsxReadWord();return}if(e===62){++this.state.pos,this.finishToken(143);return}if((e===34||e===39)&&t===re.j_oTag){this.jsxReadString(e);return}}if(e===60&&this.state.canStartJSXElement&&this.input.charCodeAt(this.state.pos+1)!==33){++this.state.pos,this.finishToken(142);return}super.getTokenFromCode(e)}updateContext(e){let{context:t,type:s}=this.state;if(s===56&&e===142)t.splice(-2,2,re.j_cTag),this.state.canStartJSXElement=!1;else if(s===142)t.push(re.j_oTag);else if(s===143){let a=t[t.length-1];a===re.j_oTag&&e===56||a===re.j_cTag?(t.pop(),this.state.canStartJSXElement=t[t.length-1]===re.j_expr):(this.setContext(re.j_expr),this.state.canStartJSXElement=!0)}else this.state.canStartJSXElement=Ld(s)}},Ya=class extends Or{constructor(...r){super(...r),this.tsNames=new Map}},Qa=class extends _r{constructor(...r){super(...r),this.importsStack=[]}createScope(r){return this.importsStack.push(new Set),new Ya(r)}enter(r){r===256&&this.importsStack.push(new Set),super.enter(r)}exit(){let r=super.exit();return r===256&&this.importsStack.pop(),r}hasImport(r,e){let t=this.importsStack.length;if(this.importsStack[t-1].has(r))return!0;if(!e&&t>1){for(let s=0;s<t-1;s++)if(this.importsStack[s].has(r))return!0}return!1}declareName(r,e,t){if(e&4096){this.hasImport(r,!0)&&this.parser.raise(S.VarRedeclaration,t,{identifierName:r}),this.importsStack[this.importsStack.length-1].add(r);return}let s=this.currentScope(),a=s.tsNames.get(r)||0;if(e&1024){this.maybeExportDefined(s,r),s.tsNames.set(r,a|16);return}super.declareName(r,e,t),e&2&&(e&1||(this.checkRedeclarationInScope(s,r,e,t),this.maybeExportDefined(s,r)),a=a|1),e&256&&(a=a|2),e&512&&(a=a|4),e&128&&(a=a|8),a&&s.tsNames.set(r,a)}isRedeclaredInScope(r,e,t){let s=r.tsNames.get(e);if((s&2)>0){if(t&256){let a=!!(t&512),n=(s&4)>0;return a!==n}return!0}return t&128&&(s&8)>0?r.names.get(e)&2?!!(t&1):!1:t&2&&(s&1)>0?!0:super.isRedeclaredInScope(r,e,t)}checkLocalExport(r){let{name:e}=r;if(this.hasImport(e))return;let t=this.scopeStack.length;for(let s=t-1;s>=0;s--){let n=this.scopeStack[s].tsNames.get(e);if((n&1)>0||(n&16)>0)return}super.checkLocalExport(r)}},vm=(i,r)=>hasOwnProperty.call(i,r)&&i[r],Xl=i=>i.type==="ParenthesizedExpression"?Xl(i.expression):i,Za=class extends $a{toAssignable(r,e=!1){var t,s;let a;switch((r.type==="ParenthesizedExpression"||(t=r.extra)!=null&&t.parenthesized)&&(a=Xl(r),e?a.type==="Identifier"?this.expressionScope.recordArrowParameterBindingError(S.InvalidParenthesizedAssignment,r):a.type!=="MemberExpression"&&!this.isOptionalMemberExpression(a)&&this.raise(S.InvalidParenthesizedAssignment,r):this.raise(S.InvalidParenthesizedAssignment,r)),r.type){case"Identifier":case"ObjectPattern":case"ArrayPattern":case"AssignmentPattern":case"RestElement":break;case"ObjectExpression":r.type="ObjectPattern";for(let u=0,c=r.properties.length,f=c-1;u<c;u++){var n;let h=r.properties[u],y=u===f;this.toAssignableObjectExpressionProp(h,y,e),y&&h.type==="RestElement"&&(n=r.extra)!=null&&n.trailingCommaLoc&&this.raise(S.RestTrailingComma,r.extra.trailingCommaLoc)}break;case"ObjectProperty":{let{key:u,value:c}=r;this.isPrivateName(u)&&this.classScope.usePrivateName(this.getPrivateNameSV(u),u.loc.start),this.toAssignable(c,e);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":r.type="ArrayPattern",this.toAssignableList(r.elements,(s=r.extra)==null?void 0:s.trailingCommaLoc,e);break;case"AssignmentExpression":r.operator!=="="&&this.raise(S.MissingEqInAssignment,r.left.loc.end),r.type="AssignmentPattern",delete r.operator,this.toAssignable(r.left,e);break;case"ParenthesizedExpression":this.toAssignable(a,e);break}}toAssignableObjectExpressionProp(r,e,t){if(r.type==="ObjectMethod")this.raise(r.kind==="get"||r.kind==="set"?S.PatternHasAccessor:S.PatternHasMethod,r.key);else if(r.type==="SpreadElement"){r.type="RestElement";let s=r.argument;this.checkToRestConversion(s,!1),this.toAssignable(s,t),e||this.raise(S.RestTrailingComma,r)}else this.toAssignable(r,t)}toAssignableList(r,e,t){let s=r.length-1;for(let a=0;a<=s;a++){let n=r[a];if(n){if(n.type==="SpreadElement"){n.type="RestElement";let u=n.argument;this.checkToRestConversion(u,!0),this.toAssignable(u,t)}else this.toAssignable(n,t);n.type==="RestElement"&&(a<s?this.raise(S.RestTrailingComma,n):e&&this.raise(S.RestTrailingComma,e))}}}isAssignable(r,e){switch(r.type){case"Identifier":case"ObjectPattern":case"ArrayPattern":case"AssignmentPattern":case"RestElement":return!0;case"ObjectExpression":{let t=r.properties.length-1;return r.properties.every((s,a)=>s.type!=="ObjectMethod"&&(a===t||s.type!=="SpreadElement")&&this.isAssignable(s))}case"ObjectProperty":return this.isAssignable(r.value);case"SpreadElement":return this.isAssignable(r.argument);case"ArrayExpression":return r.elements.every(t=>t===null||this.isAssignable(t));case"AssignmentExpression":return r.operator==="=";case"ParenthesizedExpression":return this.isAssignable(r.expression);case"MemberExpression":case"OptionalMemberExpression":return!e;default:return!1}}toReferencedList(r,e){return r}toReferencedListDeep(r,e){this.toReferencedList(r,e);for(let t of r)t?.type==="ArrayExpression"&&this.toReferencedListDeep(t.elements)}parseSpread(r){let e=this.startNode();return this.next(),e.argument=this.parseMaybeAssignAllowIn(r,void 0),this.finishNode(e,"SpreadElement")}parseRestBinding(){let r=this.startNode();return this.next(),r.argument=this.parseBindingAtom(),this.finishNode(r,"RestElement")}parseBindingAtom(){switch(this.state.type){case 0:{let r=this.startNode();return this.next(),r.elements=this.parseBindingList(3,93,1),this.finishNode(r,"ArrayPattern")}case 5:return this.parseObjectLike(8,!0)}return this.parseIdentifier()}parseBindingList(r,e,t){let s=t&1,a=[],n=!0;for(;!this.eat(r);)if(n?n=!1:this.expect(12),s&&this.match(12))a.push(null);else{if(this.eat(r))break;if(this.match(21)){if(a.push(this.parseAssignableListItemTypes(this.parseRestBinding(),t)),!this.checkCommaAfterRest(e)){this.expect(r);break}}else{let u=[];for(this.match(26)&&this.hasPlugin("decorators")&&this.raise(S.UnsupportedParameterDecorator,this.state.startLoc);this.match(26);)u.push(this.parseDecorator());a.push(this.parseAssignableListItem(t,u))}}return a}parseBindingRestProperty(r){return this.next(),r.argument=this.parseIdentifier(),this.checkCommaAfterRest(125),this.finishNode(r,"RestElement")}parseBindingProperty(){let{type:r,startLoc:e}=this.state;if(r===21)return this.parseBindingRestProperty(this.startNode());let t=this.startNode();return r===138?(this.expectPlugin("destructuringPrivate",e),this.classScope.usePrivateName(this.state.value,e),t.key=this.parsePrivateName()):this.parsePropertyName(t),t.method=!1,this.parseObjPropValue(t,e,!1,!1,!0,!1)}parseAssignableListItem(r,e){let t=this.parseMaybeDefault();this.parseAssignableListItemTypes(t,r);let s=this.parseMaybeDefault(t.loc.start,t);return e.length&&(t.decorators=e),s}parseAssignableListItemTypes(r,e){return r}parseMaybeDefault(r,e){var t,s;if((t=r)!=null||(r=this.state.startLoc),e=(s=e)!=null?s:this.parseBindingAtom(),!this.eat(29))return e;let a=this.startNodeAt(r);return a.left=e,a.right=this.parseMaybeAssignAllowIn(),this.finishNode(a,"AssignmentPattern")}isValidLVal(r,e,t){return vm({AssignmentPattern:"left",RestElement:"argument",ObjectProperty:"value",ParenthesizedExpression:"expression",ArrayPattern:"elements",ObjectPattern:"properties"},r)}isOptionalMemberExpression(r){return r.type==="OptionalMemberExpression"}checkLVal(r,{in:e,binding:t=64,checkClashes:s=!1,strictModeChanged:a=!1,hasParenthesizedAncestor:n=!1}){var u;let c=r.type;if(this.isObjectMethod(r))return;let f=this.isOptionalMemberExpression(r);if(f||c==="MemberExpression"){f&&(this.expectPlugin("optionalChainingAssign",r.loc.start),e.type!=="AssignmentExpression"&&this.raise(S.InvalidLhsOptionalChaining,r,{ancestor:e})),t!==64&&this.raise(S.InvalidPropertyBindingPattern,r);return}if(c==="Identifier"){this.checkIdentifier(r,t,a);let{name:l}=r;s&&(s.has(l)?this.raise(S.ParamDupe,r):s.add(l));return}let h=this.isValidLVal(c,!(n||(u=r.extra)!=null&&u.parenthesized)&&e.type==="AssignmentExpression",t);if(h===!0)return;if(h===!1){let l=t===64?S.InvalidLhs:S.InvalidLhsBinding;this.raise(l,r,{ancestor:e});return}let[y,m]=Array.isArray(h)?h:[h,c==="ParenthesizedExpression"],o=c==="ArrayPattern"||c==="ObjectPattern"?{type:c}:e;for(let l of[].concat(r[y]))l&&this.checkLVal(l,{in:o,binding:t,checkClashes:s,strictModeChanged:a,hasParenthesizedAncestor:m})}checkIdentifier(r,e,t=!1){this.state.strict&&(t?jl(r.name,this.inModule):_l(r.name))&&(e===64?this.raise(S.StrictEvalArguments,r,{referenceName:r.name}):this.raise(S.StrictEvalArgumentsBinding,r,{bindingName:r.name})),e&8192&&r.name==="let"&&this.raise(S.LetInLexicalBinding,r),e&64||this.declareNameFromIdentifier(r,e)}declareNameFromIdentifier(r,e){this.scope.declareName(r.name,e,r.loc.start)}checkToRestConversion(r,e){switch(r.type){case"ParenthesizedExpression":this.checkToRestConversion(r.expression,e);break;case"Identifier":case"MemberExpression":break;case"ArrayExpression":case"ObjectExpression":if(e)break;default:this.raise(S.InvalidRestAssignmentPattern,r)}}checkCommaAfterRest(r){return this.match(12)?(this.raise(this.lookaheadCharCode()===r?S.RestTrailingComma:S.ElementAfterRest,this.state.startLoc),!0):!1}},bm=(i,r)=>hasOwnProperty.call(i,r)&&i[r];function Sm(i){if(i==null)throw new Error(`Unexpected ${i} value.`);return i}function Cl(i){if(!i)throw new Error("Assert fail")}var M=rt`typescript`({AbstractMethodHasImplementation:({methodName:i})=>`Method '${i}' cannot have an implementation because it is marked abstract.`,AbstractPropertyHasInitializer:({propertyName:i})=>`Property '${i}' cannot have an initializer because it is marked abstract.`,AccesorCannotDeclareThisParameter:"'get' and 'set' accessors cannot declare 'this' parameters.",AccesorCannotHaveTypeParameters:"An accessor cannot have type parameters.",AccessorCannotBeOptional:"An 'accessor' property cannot be declared optional.",ClassMethodHasDeclare:"Class methods cannot have the 'declare' modifier.",ClassMethodHasReadonly:"Class methods cannot have the 'readonly' modifier.",ConstInitiailizerMustBeStringOrNumericLiteralOrLiteralEnumReference:"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:i})=>`'declare' is not allowed in ${i}ters.`,DeclareClassFieldHasInitializer:"Initializers are not allowed in ambient contexts.",DeclareFunctionHasImplementation:"An implementation cannot be declared in ambient contexts.",DuplicateAccessibilityModifier:({modifier:i})=>"Accessibility modifier already seen.",DuplicateModifier:({modifier:i})=>`Duplicate modifier: '${i}'.`,EmptyHeritageClauseType:({token:i})=>`'${i}' 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:i})=>`'${i[0]}' modifier cannot be used with '${i[1]}' modifier.`,IndexSignatureHasAbstract:"Index signatures cannot have the 'abstract' modifier.",IndexSignatureHasAccessibility:({modifier:i})=>`Index signatures cannot have an accessibility modifier ('${i}').`,IndexSignatureHasDeclare:"Index signatures cannot have the 'declare' modifier.",IndexSignatureHasOverride:"'override' modifier cannot appear on an index signature.",IndexSignatureHasStatic:"Index signatures cannot have the 'static' modifier.",InitializerNotAllowedInAmbientContext:"Initializers are not allowed in ambient contexts.",InvalidModifierOnTypeMember:({modifier:i})=>`'${i}' modifier cannot appear on a type member.`,InvalidModifierOnTypeParameter:({modifier:i})=>`'${i}' modifier cannot appear on a type parameter.`,InvalidModifierOnTypeParameterPositions:({modifier:i})=>`'${i}' modifier can only appear on a type parameter of a class, interface or type alias.`,InvalidModifiersOrder:({orderedModifiers:i})=>`'${i[0]}' modifier must precede '${i[1]}' modifier.`,InvalidPropertyAccessAfterInstantiationExpression:"Invalid property access after an instantiation expression. You can either wrap the instantiation expression in parentheses, or delete the type arguments.",InvalidTupleMemberLabel:"Tuple members must be labeled with a simple identifier.",MissingInterfaceName:"'interface' declarations must be followed by an identifier.",NonAbstractClassHasAbstractMethod:"Abstract methods can only appear within an abstract class.",NonClassMethodPropertyHasAbstractModifer:"'abstract' modifier can only appear on a class, method, or property declaration.",OptionalTypeBeforeRequired:"A required element cannot follow an optional element.",OverrideNotInSubClass:"This member cannot have an 'override' modifier because its containing class does not extend another class.",PatternIsOptional:"A binding pattern parameter cannot be optional in an implementation signature.",PrivateElementHasAbstract:"Private elements cannot have the 'abstract' modifier.",PrivateElementHasAccessibility:({modifier:i})=>`Private elements cannot have an accessibility modifier ('${i}').`,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.",SetAccesorCannotHaveOptionalParameter:"A 'set' accessor cannot have an optional parameter.",SetAccesorCannotHaveRestParameter:"A 'set' accessor cannot have rest parameter.",SetAccesorCannotHaveReturnType:"A 'set' accessor cannot have a return type annotation.",SingleTypeParameterWithoutTrailingComma:({typeParameterName:i})=>`Single type parameter ${i} should have a trailing comma. Example usage: <${i},>.`,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:i})=>`Name in a signature must be an Identifier, ObjectPattern or ArrayPattern, instead got ${i}.`});function Em(i){switch(i){case"any":return"TSAnyKeyword";case"boolean":return"TSBooleanKeyword";case"bigint":return"TSBigIntKeyword";case"never":return"TSNeverKeyword";case"number":return"TSNumberKeyword";case"object":return"TSObjectKeyword";case"string":return"TSStringKeyword";case"symbol":return"TSSymbolKeyword";case"undefined":return"TSUndefinedKeyword";case"unknown":return"TSUnknownKeyword";default:return}}function Pl(i){return i==="private"||i==="public"||i==="protected"}function Am(i){return i==="in"||i==="out"}var Tm=i=>class extends i{constructor(...e){super(...e),this.tsParseInOutModifiers=this.tsParseModifiers.bind(this,{allowedModifiers:["in","out"],disallowedModifiers:["const","public","private","protected","readonly","declare","abstract","override"],errorTemplate:M.InvalidModifierOnTypeParameter}),this.tsParseConstModifier=this.tsParseModifiers.bind(this,{allowedModifiers:["const"],disallowedModifiers:["in","out"],errorTemplate:M.InvalidModifierOnTypeParameterPositions}),this.tsParseInOutConstModifiers=this.tsParseModifiers.bind(this,{allowedModifiers:["in","out","const"],disallowedModifiers:["public","private","protected","readonly","declare","abstract","override"],errorTemplate:M.InvalidModifierOnTypeParameter})}getScopeHandler(){return Qa}tsIsIdentifier(){return Z(this.state.type)}tsTokenCanFollowModifier(){return(this.match(0)||this.match(5)||this.match(55)||this.match(21)||this.match(138)||this.isLiteralPropertyName())&&!this.hasPrecedingLineBreak()}tsNextTokenCanFollowModifier(){return this.next(),this.tsTokenCanFollowModifier()}tsParseModifier(e,t){if(!Z(this.state.type)&&this.state.type!==58&&this.state.type!==75)return;let s=this.state.value;if(e.indexOf(s)!==-1){if(t&&this.tsIsStartOfStaticBlocks())return;if(this.tsTryParse(this.tsNextTokenCanFollowModifier.bind(this)))return s}}tsParseModifiers({allowedModifiers:e,disallowedModifiers:t,stopOnStartOfClassStaticBlock:s,errorTemplate:a=M.InvalidModifierOnTypeMember},n){let u=(f,h,y,m)=>{h===y&&n[m]&&this.raise(M.InvalidModifiersOrder,f,{orderedModifiers:[y,m]})},c=(f,h,y,m)=>{(n[y]&&h===m||n[m]&&h===y)&&this.raise(M.IncompatibleModifiers,f,{modifiers:[y,m]})};for(;;){let{startLoc:f}=this.state,h=this.tsParseModifier(e.concat(t??[]),s);if(!h)break;Pl(h)?n.accessibility?this.raise(M.DuplicateAccessibilityModifier,f,{modifier:h}):(u(f,h,h,"override"),u(f,h,h,"static"),u(f,h,h,"readonly"),n.accessibility=h):Am(h)?(n[h]&&this.raise(M.DuplicateModifier,f,{modifier:h}),n[h]=!0,u(f,h,"in","out")):(hasOwnProperty.call(n,h)?this.raise(M.DuplicateModifier,f,{modifier:h}):(u(f,h,"static","readonly"),u(f,h,"static","override"),u(f,h,"override","readonly"),u(f,h,"abstract","override"),c(f,h,"declare","override"),c(f,h,"static","abstract")),n[h]=!0),t!=null&&t.includes(h)&&this.raise(a,f,{modifier:h})}}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){let s=[];for(;!this.tsIsListTerminator(e);)s.push(t());return s}tsParseDelimitedList(e,t,s){return Sm(this.tsParseDelimitedListWorker(e,t,!0,s))}tsParseDelimitedListWorker(e,t,s,a){let n=[],u=-1;for(;!this.tsIsListTerminator(e);){u=-1;let c=t();if(c==null)return;if(n.push(c),this.eat(12)){u=this.state.lastTokStartLoc.index;continue}if(this.tsIsListTerminator(e))break;s&&this.expect(12);return}return a&&(a.value=u),n}tsParseBracketedList(e,t,s,a,n){a||(s?this.expect(0):this.expect(47));let u=this.tsParseDelimitedList(e,t,n);return s?this.expect(3):this.expect(48),u}tsParseImportType(){let e=this.startNode();return this.expect(83),this.expect(10),this.match(133)||this.raise(M.UnsupportedImportTypeArgument,this.state.startLoc),e.argument=super.parseExprAtom(),(this.hasPlugin("importAttributes")||this.hasPlugin("importAssertions"))&&(e.options=null),this.eat(12)&&(this.expectImportAttributesPlugin(),this.match(11)||(e.options=super.parseMaybeAssignAllowIn(),this.eat(12))),this.expect(11),this.eat(16)&&(e.qualifier=this.tsParseEntityName()),this.match(47)&&(e.typeParameters=this.tsParseTypeArguments()),this.finishNode(e,"TSImportType")}tsParseEntityName(e=!0){let t=this.parseIdentifier(e);for(;this.eat(16);){let s=this.startNodeAtNode(t);s.left=t,s.right=this.parseIdentifier(e),t=this.finishNode(s,"TSQualifiedName")}return t}tsParseTypeReference(){let e=this.startNode();return e.typeName=this.tsParseEntityName(),!this.hasPrecedingLineBreak()&&this.match(47)&&(e.typeParameters=this.tsParseTypeArguments()),this.finishNode(e,"TSTypeReference")}tsParseThisTypePredicate(e){this.next();let t=this.startNodeAtNode(e);return t.parameterName=e,t.typeAnnotation=this.tsParseTypeAnnotation(!1),t.asserts=!1,this.finishNode(t,"TSTypePredicate")}tsParseThisTypeNode(){let e=this.startNode();return this.next(),this.finishNode(e,"TSThisType")}tsParseTypeQuery(){let e=this.startNode();return this.expect(87),this.match(83)?e.exprName=this.tsParseImportType():e.exprName=this.tsParseEntityName(),!this.hasPrecedingLineBreak()&&this.match(47)&&(e.typeParameters=this.tsParseTypeArguments()),this.finishNode(e,"TSTypeQuery")}tsParseTypeParameter(e){let 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){let t=this.startNode();this.match(47)||this.match(142)?this.next():this.unexpected();let s={value:-1};return t.params=this.tsParseBracketedList("TypeParametersOrArguments",this.tsParseTypeParameter.bind(this,e),!1,!0,s),t.params.length===0&&this.raise(M.EmptyTypeParameters,t),s.value!==-1&&this.addExtra(t,"trailingComma",s.value),this.finishNode(t,"TSTypeParameterDeclaration")}tsFillSignature(e,t){let s=e===19,a="parameters",n="typeAnnotation";t.typeParameters=this.tsTryParseTypeParameters(this.tsParseConstModifier),this.expect(10),t[a]=this.tsParseBindingListForSignature(),s?t[n]=this.tsParseTypeOrTypePredicateAnnotation(e):this.match(e)&&(t[n]=this.tsParseTypeOrTypePredicateAnnotation(e))}tsParseBindingListForSignature(){let e=super.parseBindingList(11,41,2);for(let t of e){let{type:s}=t;(s==="AssignmentPattern"||s==="TSParameterProperty")&&this.raise(M.UnsupportedSignatureParameterKind,t,{type:s})}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(),Z(this.state.type)?(this.next(),this.match(14)):!1}tsTryParseIndexSignature(e){if(!(this.match(0)&&this.tsLookAhead(this.tsIsUnambiguouslyIndexSignature.bind(this))))return;this.expect(0);let t=this.parseIdentifier();t.typeAnnotation=this.tsParseTypeAnnotation(),this.resetEndLocation(t),this.expect(3),e.parameters=[t];let s=this.tsTryParseTypeAnnotation();return s&&(e.typeAnnotation=s),this.tsParseTypeMemberSemicolon(),this.finishNode(e,"TSIndexSignature")}tsParsePropertyOrMethodSignature(e,t){this.eat(17)&&(e.optional=!0);let s=e;if(this.match(10)||this.match(47)){t&&this.raise(M.ReadonlyForMethodSignature,e);let a=s;a.kind&&this.match(47)&&this.raise(M.AccesorCannotHaveTypeParameters,this.state.curPosition()),this.tsFillSignature(14,a),this.tsParseTypeMemberSemicolon();let n="parameters",u="typeAnnotation";if(a.kind==="get")a[n].length>0&&(this.raise(S.BadGetterArity,this.state.curPosition()),this.isThisParam(a[n][0])&&this.raise(M.AccesorCannotDeclareThisParameter,this.state.curPosition()));else if(a.kind==="set"){if(a[n].length!==1)this.raise(S.BadSetterArity,this.state.curPosition());else{let c=a[n][0];this.isThisParam(c)&&this.raise(M.AccesorCannotDeclareThisParameter,this.state.curPosition()),c.type==="Identifier"&&c.optional&&this.raise(M.SetAccesorCannotHaveOptionalParameter,this.state.curPosition()),c.type==="RestElement"&&this.raise(M.SetAccesorCannotHaveRestParameter,this.state.curPosition())}a[u]&&this.raise(M.SetAccesorCannotHaveReturnType,a[u])}else a.kind="method";return this.finishNode(a,"TSMethodSignature")}else{let a=s;t&&(a.readonly=!0);let n=this.tsTryParseTypeAnnotation();return n&&(a.typeAnnotation=n),this.tsParseTypeMemberSemicolon(),this.finishNode(a,"TSPropertySignature")}}tsParseTypeMember(){let e=this.startNode();if(this.match(10)||this.match(47))return this.tsParseSignatureMember("TSCallSignatureDeclaration",e);if(this.match(77)){let s=this.startNode();return this.next(),this.match(10)||this.match(47)?this.tsParseSignatureMember("TSConstructSignatureDeclaration",e):(e.key=this.createIdentifier(s,"new"),this.tsParsePropertyOrMethodSignature(e,!1))}this.tsParseModifiers({allowedModifiers:["readonly"],disallowedModifiers:["declare","abstract","private","protected","public","static","override"]},e);let t=this.tsTryParseIndexSignature(e);return t||(super.parsePropertyName(e),!e.computed&&e.key.type==="Identifier"&&(e.key.name==="get"||e.key.name==="set")&&this.tsTokenCanFollowModifier()&&(e.kind=e.key.name,super.parsePropertyName(e)),this.tsParsePropertyOrMethodSignature(e,!!e.readonly))}tsParseTypeLiteral(){let e=this.startNode();return e.members=this.tsParseObjectTypeMembers(),this.finishNode(e,"TSTypeLiteral")}tsParseObjectTypeMembers(){this.expect(5);let 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())?!1:(this.next(),this.match(58)))}tsParseMappedTypeParameter(){let e=this.startNode();return e.name=this.tsParseTypeParameterName(),e.constraint=this.tsExpectThenParseType(58),this.finishNode(e,"TSTypeParameter")}tsParseMappedType(){let e=this.startNode();return 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),e.typeParameter=this.tsParseMappedTypeParameter(),e.nameType=this.eatContextual(93)?this.tsParseType():null,this.expect(3),this.match(53)?(e.optional=this.state.value,this.next(),this.expect(17)):this.eat(17)&&(e.optional=!0),e.typeAnnotation=this.tsTryParseType(),this.semicolon(),this.expect(8),this.finishNode(e,"TSMappedType")}tsParseTupleType(){let e=this.startNode();e.elementTypes=this.tsParseBracketedList("TupleElementTypes",this.tsParseTupleElementType.bind(this),!0,!1);let t=!1;return e.elementTypes.forEach(s=>{let{type:a}=s;t&&a!=="TSRestType"&&a!=="TSOptionalType"&&!(a==="TSNamedTupleMember"&&s.optional)&&this.raise(M.OptionalTypeBeforeRequired,s),t||(t=a==="TSNamedTupleMember"&&s.optional||a==="TSOptionalType")}),this.finishNode(e,"TSTupleType")}tsParseTupleElementType(){let{startLoc:e}=this.state,t=this.eat(21),s,a,n,u,f=Re(this.state.type)?this.lookaheadCharCode():null;if(f===58)s=!0,n=!1,a=this.parseIdentifier(!0),this.expect(14),u=this.tsParseType();else if(f===63){n=!0;let h=this.state.startLoc,y=this.state.value,m=this.tsParseNonArrayType();this.lookaheadCharCode()===58?(s=!0,a=this.createIdentifier(this.startNodeAt(h),y),this.expect(17),this.expect(14),u=this.tsParseType()):(s=!1,u=m,this.expect(17))}else u=this.tsParseType(),n=this.eat(17),s=this.eat(14);if(s){let h;a?(h=this.startNodeAtNode(a),h.optional=n,h.label=a,h.elementType=u,this.eat(17)&&(h.optional=!0,this.raise(M.TupleOptionalAfterType,this.state.lastTokStartLoc))):(h=this.startNodeAtNode(u),h.optional=n,this.raise(M.InvalidTupleMemberLabel,u),h.label=u,h.elementType=this.tsParseType()),u=this.finishNode(h,"TSNamedTupleMember")}else if(n){let h=this.startNodeAtNode(u);h.typeAnnotation=u,u=this.finishNode(h,"TSOptionalType")}if(t){let h=this.startNodeAt(e);h.typeAnnotation=u,u=this.finishNode(h,"TSRestType")}return u}tsParseParenthesizedType(){let e=this.startNode();return this.expect(10),e.typeAnnotation=this.tsParseType(),this.expect(11),this.finishNode(e,"TSParenthesizedType")}tsParseFunctionOrConstructorType(e,t){let s=this.startNode();return e==="TSConstructorType"&&(s.abstract=!!t,t&&this.next(),this.next()),this.tsInAllowConditionalTypesContext(()=>this.tsFillSignature(19,s)),this.finishNode(s,e)}tsParseLiteralTypeNode(){let e=this.startNode();switch(this.state.type){case 134:case 135:case 133:case 85:case 86:e.literal=super.parseExprAtom();break;default:this.unexpected()}return this.finishNode(e,"TSLiteralType")}tsParseTemplateLiteralType(){let e=this.startNode();return e.literal=super.parseTemplate(!1),this.finishNode(e,"TSLiteralType")}parseTemplateSubstitution(){return this.state.inType?this.tsParseType():super.parseTemplateSubstitution()}tsParseThisTypeOrThisTypePredicate(){let e=this.tsParseThisTypeNode();return this.isContextual(116)&&!this.hasPrecedingLineBreak()?this.tsParseThisTypePredicate(e):e}tsParseNonArrayType(){switch(this.state.type){case 133:case 134:case 135:case 85:case 86:return this.tsParseLiteralTypeNode();case 53:if(this.state.value==="-"){let e=this.startNode(),t=this.lookahead();return t.type!==134&&t.type!==135&&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:{let{type:e}=this.state;if(Z(e)||e===88||e===84){let t=e===88?"TSVoidKeyword":e===84?"TSNullKeyword":Em(this.state.value);if(t!==void 0&&this.lookaheadCharCode()!==46){let s=this.startNode();return this.next(),this.finishNode(s,t)}return this.tsParseTypeReference()}}}this.unexpected()}tsParseArrayTypeOrHigher(){let e=this.tsParseNonArrayType();for(;!this.hasPrecedingLineBreak()&&this.eat(0);)if(this.match(3)){let t=this.startNodeAtNode(e);t.elementType=e,this.expect(3),e=this.finishNode(t,"TSArrayType")}else{let t=this.startNodeAtNode(e);t.objectType=e,t.indexType=this.tsParseType(),this.expect(3),e=this.finishNode(t,"TSIndexedAccessType")}return e}tsParseTypeOperator(){let e=this.startNode(),t=this.state.value;return this.next(),e.operator=t,e.typeAnnotation=this.tsParseTypeOperatorOrHigher(),t==="readonly"&&this.tsCheckTypeAnnotationForReadOnly(e),this.finishNode(e,"TSTypeOperator")}tsCheckTypeAnnotationForReadOnly(e){switch(e.typeAnnotation.type){case"TSTupleType":case"TSArrayType":return;default:this.raise(M.UnexpectedReadonly,e)}}tsParseInferType(){let e=this.startNode();this.expectContextual(115);let 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)){let e=this.tsInDisallowConditionalTypesContext(()=>this.tsParseType());if(this.state.inDisallowConditionalTypesContext||!this.match(17))return e}}tsParseTypeOperatorOrHigher(){return qd(this.state.type)&&!this.state.containsEsc?this.tsParseTypeOperator():this.isContextual(115)?this.tsParseInferType():this.tsInAllowConditionalTypesContext(()=>this.tsParseArrayTypeOrHigher())}tsParseUnionOrIntersectionType(e,t,s){let a=this.startNode(),n=this.eat(s),u=[];do u.push(t());while(this.eat(s));return u.length===1&&!n?u[0]:(a.types=u,this.finishNode(a,e))}tsParseIntersectionTypeOrHigher(){return this.tsParseUnionOrIntersectionType("TSIntersectionType",this.tsParseTypeOperatorOrHigher.bind(this),45)}tsParseUnionTypeOrHigher(){return this.tsParseUnionOrIntersectionType("TSUnionType",this.tsParseIntersectionTypeOrHigher.bind(this),43)}tsIsStartOfFunctionType(){return this.match(47)?!0:this.match(10)&&this.tsLookAhead(this.tsIsUnambiguouslyStartOfFunctionType.bind(this))}tsSkipParameterStart(){if(Z(this.state.type)||this.match(78))return this.next(),!0;if(this.match(5)){let{errors:e}=this.state,t=e.length;try{return this.parseObjectLike(8,!0),e.length===t}catch{return!1}}if(this.match(0)){this.next();let{errors:e}=this.state,t=e.length;try{return super.parseBindingList(3,93,1),e.length===t}catch{return!1}}return!1}tsIsUnambiguouslyStartOfFunctionType(){return this.next(),!!(this.match(11)||this.match(21)||this.tsSkipParameterStart()&&(this.match(14)||this.match(12)||this.match(17)||this.match(29)||this.match(11)&&(this.next(),this.match(19))))}tsParseTypeOrTypePredicateAnnotation(e){return this.tsInType(()=>{let t=this.startNode();this.expect(e);let s=this.startNode(),a=!!this.tsTryParse(this.tsParseTypePredicateAsserts.bind(this));if(a&&this.match(78)){let c=this.tsParseThisTypeOrThisTypePredicate();return c.type==="TSThisType"?(s.parameterName=c,s.asserts=!0,s.typeAnnotation=null,c=this.finishNode(s,"TSTypePredicate")):(this.resetStartLocationFromNode(c,s),c.asserts=!0),t.typeAnnotation=c,this.finishNode(t,"TSTypeAnnotation")}let n=this.tsIsIdentifier()&&this.tsTryParse(this.tsParseTypePredicatePrefix.bind(this));if(!n)return a?(s.parameterName=this.parseIdentifier(),s.asserts=a,s.typeAnnotation=null,t.typeAnnotation=this.finishNode(s,"TSTypePredicate"),this.finishNode(t,"TSTypeAnnotation")):this.tsParseTypeAnnotation(!1,t);let u=this.tsParseTypeAnnotation(!1);return s.parameterName=n,s.typeAnnotation=u,s.asserts=a,t.typeAnnotation=this.finishNode(s,"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(){let e=this.parseIdentifier();if(this.isContextual(116)&&!this.hasPrecedingLineBreak())return this.next(),e}tsParseTypePredicateAsserts(){if(this.state.type!==109)return!1;let e=this.state.containsEsc;return this.next(),!Z(this.state.type)&&!this.match(78)?!1:(e&&this.raise(S.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(){Cl(this.state.inType);let e=this.tsParseNonConditionalType();if(this.state.inDisallowConditionalTypesContext||this.hasPrecedingLineBreak()||!this.eat(81))return e;let 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.lookahead().type===77}tsParseNonConditionalType(){return this.tsIsStartOfFunctionType()?this.tsParseFunctionOrConstructorType("TSFunctionType"):this.match(77)?this.tsParseFunctionOrConstructorType("TSConstructorType"):this.isAbstractConstructorSignature()?this.tsParseFunctionOrConstructorType("TSConstructorType",!0):this.tsParseUnionTypeOrHigher()}tsParseTypeAssertion(){this.getPluginOption("typescript","disallowAmbiguousJSXLike")&&this.raise(M.ReservedTypeAssertion,this.state.startLoc);let 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){let t=this.state.startLoc,s=this.tsParseDelimitedList("HeritageClauseElement",()=>{let a=this.startNode();return a.expression=this.tsParseEntityName(),this.match(47)&&(a.typeParameters=this.tsParseTypeArguments()),this.finishNode(a,"TSExpressionWithTypeArguments")});return s.length||this.raise(M.EmptyHeritageClauseType,t,{token:e}),s}tsParseInterfaceDeclaration(e,t={}){if(this.hasFollowingLineBreak())return null;this.expectContextual(129),t.declare&&(e.declare=!0),Z(this.state.type)?(e.id=this.parseIdentifier(),this.checkIdentifier(e.id,130)):(e.id=null,this.raise(M.MissingInterfaceName,this.state.startLoc)),e.typeParameters=this.tsTryParseTypeParameters(this.tsParseInOutConstModifiers),this.eat(81)&&(e.extends=this.tsParseHeritageClause("extends"));let s=this.startNode();return s.body=this.tsInType(this.tsParseObjectTypeMembers.bind(this)),e.body=this.finishNode(s,"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)&&this.lookahead().type!==16){let t=this.startNode();return this.next(),this.finishNode(t,"TSIntrinsicKeyword")}return this.tsParseType()}),this.semicolon(),this.finishNode(e,"TSTypeAliasDeclaration")}tsInNoContext(e){let t=this.state.context;this.state.context=[t[0]];try{return e()}finally{this.state.context=t}}tsInType(e){let t=this.state.inType;this.state.inType=!0;try{return e()}finally{this.state.inType=t}}tsInDisallowConditionalTypesContext(e){let t=this.state.inDisallowConditionalTypesContext;this.state.inDisallowConditionalTypesContext=!0;try{return e()}finally{this.state.inDisallowConditionalTypesContext=t}}tsInAllowConditionalTypesContext(e){let 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(){let e=this.startNode();return e.id=this.match(133)?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")}tsParseModuleBlock(){let 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)){let s=this.startNode();this.tsParseModuleOrNamespaceDeclaration(s,!0),e.body=s}else this.scope.enter(256),this.prodParam.enter(0),e.body=this.tsParseModuleBlock(),this.prodParam.exit(),this.scope.exit();return this.finishNode(e,"TSModuleDeclaration")}tsParseAmbientExternalModuleDeclaration(e){return this.isContextual(112)?(e.global=!0,e.id=this.parseIdentifier()):this.match(133)?e.id=super.parseStringLiteral(this.state.value):this.unexpected(),this.match(5)?(this.scope.enter(256),this.prodParam.enter(0),e.body=this.tsParseModuleBlock(),this.prodParam.exit(),this.scope.exit()):this.semicolon(),this.finishNode(e,"TSModuleDeclaration")}tsParseImportEqualsDeclaration(e,t,s){e.isExport=s||!1,e.id=t||this.parseIdentifier(),this.checkIdentifier(e.id,4096),this.expect(29);let a=this.tsParseModuleReference();return e.importKind==="type"&&a.type!=="TSExternalModuleReference"&&this.raise(M.ImportAliasHasImportType,a),e.moduleReference=a,this.semicolon(),this.finishNode(e,"TSImportEqualsDeclaration")}tsIsExternalModuleReference(){return this.isContextual(119)&&this.lookaheadCharCode()===40}tsParseModuleReference(){return this.tsIsExternalModuleReference()?this.tsParseExternalModuleReference():this.tsParseEntityName(!1)}tsParseExternalModuleReference(){let e=this.startNode();return this.expectContextual(119),this.expect(10),this.match(133)||this.unexpected(),e.expression=super.parseExprAtom(),this.expect(11),this.sawUnambiguousESM=!0,this.finishNode(e,"TSExternalModuleReference")}tsLookAhead(e){let t=this.state.clone(),s=e();return this.state=t,s}tsTryParseAndCatch(e){let t=this.tryParse(s=>e()||s());if(!(t.aborted||!t.node))return t.error&&(this.state=t.failState),t.node}tsTryParse(e){let t=this.state.clone(),s=e();if(s!==void 0&&s!==!1)return s;this.state=t}tsTryParseDeclare(e){if(this.isLineTerminator())return;let t=this.state.type,s;return this.isContextual(100)&&(t=74,s="let"),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 75:case 74:return!this.match(75)||!this.isLookaheadContextual("enum")?(e.declare=!0,this.parseVarStatement(e,s||this.state.value,!0)):(this.expect(75),this.tsParseEnumDeclaration(e,{const:!0,declare:!0}));case 129:{let a=this.tsParseInterfaceDeclaration(e,{declare:!0});if(a)return a}default:if(Z(t))return this.tsParseDeclaration(e,this.state.value,!0,null)}})}tsTryParseExportDeclaration(){return this.tsParseDeclaration(this.startNode(),this.state.value,!0,null)}tsParseExpressionStatement(e,t,s){switch(t.name){case"declare":{let a=this.tsTryParseDeclare(e);return a&&(a.declare=!0),a}case"global":if(this.match(5)){this.scope.enter(256),this.prodParam.enter(0);let a=e;return a.global=!0,a.id=t,a.body=this.tsParseModuleBlock(),this.scope.exit(),this.prodParam.exit(),this.finishNode(a,"TSModuleDeclaration")}break;default:return this.tsParseDeclaration(e,t.name,!1,s)}}tsParseDeclaration(e,t,s,a){switch(t){case"abstract":if(this.tsCheckLineTerminator(s)&&(this.match(80)||Z(this.state.type)))return this.tsParseAbstractDeclaration(e,a);break;case"module":if(this.tsCheckLineTerminator(s)){if(this.match(133))return this.tsParseAmbientExternalModuleDeclaration(e);if(Z(this.state.type))return this.tsParseModuleOrNamespaceDeclaration(e)}break;case"namespace":if(this.tsCheckLineTerminator(s)&&Z(this.state.type))return this.tsParseModuleOrNamespaceDeclaration(e);break;case"type":if(this.tsCheckLineTerminator(s)&&Z(this.state.type))return this.tsParseTypeAliasDeclaration(e);break}}tsCheckLineTerminator(e){return e?this.hasFollowingLineBreak()?!1:(this.next(),!0):!this.isLineTerminator()}tsTryParseGenericAsyncArrowFunction(e){if(!this.match(47))return;let t=this.state.maybeInArrowParameters;this.state.maybeInArrowParameters=!0;let s=this.tsTryParseAndCatch(()=>{let a=this.startNodeAt(e);return a.typeParameters=this.tsParseTypeParameters(this.tsParseConstModifier),super.parseFunctionParams(a),a.returnType=this.tsTryParseTypeOrTypePredicateAnnotation(),this.expect(19),a});if(this.state.maybeInArrowParameters=t,!!s)return super.parseArrowExpression(s,null,!0)}tsParseTypeArgumentsInExpression(){if(this.reScan_lt()===47)return this.tsParseTypeArguments()}tsParseTypeArguments(){let e=this.startNode();return e.params=this.tsInType(()=>this.tsInNoContext(()=>(this.expect(47),this.tsParseDelimitedList("TypeParametersOrArguments",this.tsParseType.bind(this))))),e.params.length===0?this.raise(M.EmptyTypeArguments,e):!this.state.inType&&this.curContext()===re.brace&&this.reScan_lt_gt(),this.expect(48),this.finishNode(e,"TSTypeParameterInstantiation")}tsIsDeclarationStart(){return zd(this.state.type)}isExportDefaultSpecifier(){return this.tsIsDeclarationStart()?!1:super.isExportDefaultSpecifier()}parseAssignableListItem(e,t){let s=this.state.startLoc,a={};this.tsParseModifiers({allowedModifiers:["public","private","protected","override","readonly"]},a);let n=a.accessibility,u=a.override,c=a.readonly;!(e&4)&&(n||c||u)&&this.raise(M.UnexpectedParameterModifier,s);let f=this.parseMaybeDefault();this.parseAssignableListItemTypes(f,e);let h=this.parseMaybeDefault(f.loc.start,f);if(n||c||u){let y=this.startNodeAt(s);return t.length&&(y.decorators=t),n&&(y.accessibility=n),c&&(y.readonly=c),u&&(y.override=u),h.type!=="Identifier"&&h.type!=="AssignmentPattern"&&this.raise(M.UnsupportedParameterPropertyKind,y),y.parameter=h,this.finishNode(y,"TSParameterProperty")}return t.length&&(f.decorators=t),h}isSimpleParameter(e){return e.type==="TSParameterProperty"&&super.isSimpleParameter(e.parameter)||super.isSimpleParameter(e)}tsDisallowOptionalPattern(e){for(let t of e.params)t.type!=="Identifier"&&t.optional&&!this.state.isAmbientContext&&this.raise(M.PatternIsOptional,t)}setArrowFunctionParameters(e,t,s){super.setArrowFunctionParameters(e,t,s),this.tsDisallowOptionalPattern(e)}parseFunctionBodyAndFinish(e,t,s=!1){this.match(14)&&(e.returnType=this.tsParseTypeOrTypePredicateAnnotation(14));let a=t==="FunctionDeclaration"?"TSDeclareFunction":t==="ClassMethod"||t==="ClassPrivateMethod"?"TSDeclareMethod":void 0;return a&&!this.match(5)&&this.isLineTerminator()?this.finishNode(e,a):a==="TSDeclareFunction"&&this.state.isAmbientContext&&(this.raise(M.DeclareFunctionHasImplementation,e),e.declare)?super.parseFunctionBodyAndFinish(e,a,s):(this.tsDisallowOptionalPattern(e),super.parseFunctionBodyAndFinish(e,t,s))}registerFunctionStatementId(e){!e.body&&e.id?this.checkIdentifier(e.id,1024):super.registerFunctionStatementId(e)}tsCheckForInvalidTypeCasts(e){e.forEach(t=>{t?.type==="TSTypeCastExpression"&&this.raise(M.UnexpectedTypeAnnotation,t.typeAnnotation)})}toReferencedList(e,t){return this.tsCheckForInvalidTypeCasts(e),e}parseArrayLike(e,t,s,a){let n=super.parseArrayLike(e,t,s,a);return n.type==="ArrayExpression"&&this.tsCheckForInvalidTypeCasts(n.elements),n}parseSubscript(e,t,s,a){if(!this.hasPrecedingLineBreak()&&this.match(35)){this.state.canStartJSXElement=!1,this.next();let u=this.startNodeAt(t);return u.expression=e,this.finishNode(u,"TSNonNullExpression")}let n=!1;if(this.match(18)&&this.lookaheadCharCode()===60){if(s)return a.stop=!0,e;a.optionalChainMember=n=!0,this.next()}if(this.match(47)||this.match(51)){let u,c=this.tsTryParseAndCatch(()=>{if(!s&&this.atPossibleAsyncArrow(e)){let m=this.tsTryParseGenericAsyncArrowFunction(t);if(m)return m}let f=this.tsParseTypeArgumentsInExpression();if(!f)return;if(n&&!this.match(10)){u=this.state.curPosition();return}if(Os(this.state.type)){let m=super.parseTaggedTemplateExpression(e,t,a);return m.typeParameters=f,m}if(!s&&this.eat(10)){let m=this.startNodeAt(t);return m.callee=e,m.arguments=this.parseCallExpressionArguments(11,!1),this.tsCheckForInvalidTypeCasts(m.arguments),m.typeParameters=f,a.optionalChainMember&&(m.optional=n),this.finishCallExpression(m,a.optionalChainMember)}let h=this.state.type;if(h===48||h===52||h!==10&&Oa(h)&&!this.hasPrecedingLineBreak())return;let y=this.startNodeAt(t);return y.expression=e,y.typeParameters=f,this.finishNode(y,"TSInstantiationExpression")});if(u&&this.unexpected(u,10),c)return c.type==="TSInstantiationExpression"&&(this.match(16)||this.match(18)&&this.lookaheadCharCode()!==40)&&this.raise(M.InvalidPropertyAccessAfterInstantiationExpression,this.state.startLoc),c}return super.parseSubscript(e,t,s,a)}parseNewCallee(e){var t;super.parseNewCallee(e);let{callee:s}=e;s.type==="TSInstantiationExpression"&&!((t=s.extra)!=null&&t.parenthesized)&&(e.typeParameters=s.typeParameters,e.callee=s.expression)}parseExprOp(e,t,s){let a;if(Fs(58)>s&&!this.hasPrecedingLineBreak()&&(this.isContextual(93)||(a=this.isContextual(120)))){let n=this.startNodeAt(t);return n.expression=e,n.typeAnnotation=this.tsInType(()=>(this.next(),this.match(75)?(a&&this.raise(S.UnexpectedKeyword,this.state.startLoc,{keyword:"const"}),this.tsParseTypeReference()):this.tsParseType())),this.finishNode(n,a?"TSSatisfiesExpression":"TSAsExpression"),this.reScan_lt_gt(),this.parseExprOp(n,t,s)}return super.parseExprOp(e,t,s)}checkReservedWord(e,t,s,a){this.state.isAmbientContext||super.checkReservedWord(e,t,s,a)}checkImportReflection(e){super.checkImportReflection(e),e.module&&e.importKind!=="value"&&this.raise(M.ImportReflectionHasImportType,e.specifiers[0].loc.start)}checkDuplicateExports(){}isPotentialImportPhase(e){if(super.isPotentialImportPhase(e))return!0;if(this.isContextual(130)){let t=this.lookaheadCharCode();return e?t===123||t===42:t!==61}return!e&&this.isContextual(87)}applyImportPhase(e,t,s,a){super.applyImportPhase(e,t,s,a),t?e.exportKind=s==="type"?"type":"value":e.importKind=s==="type"||s==="typeof"?s:"value"}parseImport(e){if(this.match(133))return e.importKind="value",super.parseImport(e);let t;if(Z(this.state.type)&&this.lookaheadCharCode()===61)return e.importKind="value",this.tsParseImportEqualsDeclaration(e);if(this.isContextual(130)){let s=this.parseMaybeImportPhase(e,!1);if(this.lookaheadCharCode()===61)return this.tsParseImportEqualsDeclaration(e,s);t=super.parseImportSpecifiersAndAfter(e,s)}else t=super.parseImport(e);return t.importKind==="type"&&t.specifiers.length>1&&t.specifiers[0].type==="ImportDefaultSpecifier"&&this.raise(M.TypeImportCannotSpecifyDefaultAndNamed,t),t}parseExport(e,t){if(this.match(83)){this.next();let s=e,a=null;return this.isContextual(130)&&this.isPotentialImportPhase(!1)?a=this.parseMaybeImportPhase(s,!1):s.importKind="value",this.tsParseImportEqualsDeclaration(s,a,!0)}else if(this.eat(29)){let s=e;return s.expression=super.parseExpression(),this.semicolon(),this.sawUnambiguousESM=!0,this.finishNode(s,"TSExportAssignment")}else if(this.eatContextual(93)){let s=e;return this.expectContextual(128),s.id=this.parseIdentifier(),this.semicolon(),this.finishNode(s,"TSNamespaceExportDeclaration")}else return super.parseExport(e,t)}isAbstractClass(){return this.isContextual(124)&&this.lookahead().type===80}parseExportDefaultExpression(){if(this.isAbstractClass()){let e=this.startNode();return this.next(),e.abstract=!0,this.parseClass(e,!0,!0)}if(this.match(129)){let e=this.tsParseInterfaceDeclaration(this.startNode());if(e)return e}return super.parseExportDefaultExpression()}parseVarStatement(e,t,s=!1){let{isAmbientContext:a}=this.state,n=super.parseVarStatement(e,t,s||a);if(!a)return n;for(let{id:u,init:c}of n.declarations)c&&(t!=="const"||u.typeAnnotation?this.raise(M.InitializerNotAllowedInAmbientContext,c):Pm(c,this.hasPlugin("estree"))||this.raise(M.ConstInitiailizerMustBeStringOrNumericLiteralOrLiteralEnumReference,c));return n}parseStatementContent(e,t){if(this.match(75)&&this.isLookaheadContextual("enum")){let s=this.startNode();return this.expect(75),this.tsParseEnumDeclaration(s,{const:!0})}if(this.isContextual(126))return this.tsParseEnumDeclaration(this.startNode());if(this.isContextual(129)){let s=this.tsParseInterfaceDeclaration(this.startNode());if(s)return s}return super.parseStatementContent(e,t)}parseAccessModifier(){return this.tsParseModifier(["public","protected","private"])}tsHasSomeModifiers(e,t){return t.some(s=>Pl(s)?e.accessibility===s:!!e[s])}tsIsStartOfStaticBlocks(){return this.isContextual(106)&&this.lookaheadCharCode()===123}parseClassMember(e,t,s){let a=["declare","private","public","protected","override","abstract","readonly","static"];this.tsParseModifiers({allowedModifiers:a,disallowedModifiers:["in","out"],stopOnStartOfClassStaticBlock:!0,errorTemplate:M.InvalidModifierOnTypeParameterPositions},t);let n=()=>{this.tsIsStartOfStaticBlocks()?(this.next(),this.next(),this.tsHasSomeModifiers(t,a)&&this.raise(M.StaticBlockCannotHaveModifier,this.state.curPosition()),super.parseClassStaticBlock(e,t)):this.parseClassMemberWithIsStatic(e,t,s,!!t.static)};t.declare?this.tsInAmbientContext(n):n()}parseClassMemberWithIsStatic(e,t,s,a){let n=this.tsTryParseIndexSignature(t);if(n){e.body.push(n),t.abstract&&this.raise(M.IndexSignatureHasAbstract,t),t.accessibility&&this.raise(M.IndexSignatureHasAccessibility,t,{modifier:t.accessibility}),t.declare&&this.raise(M.IndexSignatureHasDeclare,t),t.override&&this.raise(M.IndexSignatureHasOverride,t);return}!this.state.inAbstractClass&&t.abstract&&this.raise(M.NonAbstractClassHasAbstractMethod,t),t.override&&(s.hadSuperClass||this.raise(M.OverrideNotInSubClass,t)),super.parseClassMemberWithIsStatic(e,t,s,a)}parsePostMemberNameModifiers(e){this.eat(17)&&(e.optional=!0),e.readonly&&this.match(10)&&this.raise(M.ClassMethodHasReadonly,e),e.declare&&this.match(10)&&this.raise(M.ClassMethodHasDeclare,e)}parseExpressionStatement(e,t,s){return(t.type==="Identifier"?this.tsParseExpressionStatement(e,t,s):void 0)||super.parseExpressionStatement(e,t,s)}shouldParseExportDeclaration(){return this.tsIsDeclarationStart()?!0:super.shouldParseExportDeclaration()}parseConditional(e,t,s){if(!this.state.maybeInArrowParameters||!this.match(17))return super.parseConditional(e,t,s);let a=this.tryParse(()=>super.parseConditional(e,t));return a.node?(a.error&&(this.state=a.failState),a.node):(a.error&&super.setOptionalParametersError(s,a.error),e)}parseParenItem(e,t){let s=super.parseParenItem(e,t);if(this.eat(17)&&(s.optional=!0,this.resetEndLocation(e)),this.match(14)){let a=this.startNodeAt(t);return a.expression=e,a.typeAnnotation=this.tsParseTypeAnnotation(),this.finishNode(a,"TSTypeCastExpression")}return e}parseExportDeclaration(e){if(!this.state.isAmbientContext&&this.isContextual(125))return this.tsInAmbientContext(()=>this.parseExportDeclaration(e));let t=this.state.startLoc,s=this.eatContextual(125);if(s&&(this.isContextual(125)||!this.shouldParseExportDeclaration()))throw this.raise(M.ExpectedAmbientAfterExportDeclare,this.state.startLoc);let n=Z(this.state.type)&&this.tsTryParseExportDeclaration()||super.parseExportDeclaration(e);return n?((n.type==="TSInterfaceDeclaration"||n.type==="TSTypeAliasDeclaration"||s)&&(e.exportKind="type"),s&&(this.resetStartLocation(n,t),n.declare=!0),n):null}parseClassId(e,t,s,a){if((!t||s)&&this.isContextual(113))return;super.parseClassId(e,t,s,e.declare?1024:8331);let n=this.tsTryParseTypeParameters(this.tsParseInOutConstModifiers);n&&(e.typeParameters=n)}parseClassPropertyAnnotation(e){e.optional||(this.eat(35)?e.definite=!0:this.eat(17)&&(e.optional=!0));let 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(M.DeclareClassFieldHasInitializer,this.state.startLoc),e.abstract&&this.match(29)){let{key:t}=e;this.raise(M.AbstractPropertyHasInitializer,this.state.startLoc,{propertyName:t.type==="Identifier"&&!e.computed?t.name:`[${this.input.slice(t.start,t.end)}]`})}return super.parseClassProperty(e)}parseClassPrivateProperty(e){return e.abstract&&this.raise(M.PrivateElementHasAbstract,e),e.accessibility&&this.raise(M.PrivateElementHasAccessibility,e,{modifier:e.accessibility}),this.parseClassPropertyAnnotation(e),super.parseClassPrivateProperty(e)}parseClassAccessorProperty(e){return this.parseClassPropertyAnnotation(e),e.optional&&this.raise(M.AccessorCannotBeOptional,e),super.parseClassAccessorProperty(e)}pushClassMethod(e,t,s,a,n,u){let c=this.tsTryParseTypeParameters(this.tsParseConstModifier);c&&n&&this.raise(M.ConstructorHasTypeParameters,c);let{declare:f=!1,kind:h}=t;f&&(h==="get"||h==="set")&&this.raise(M.DeclareAccessor,t,{kind:h}),c&&(t.typeParameters=c),super.pushClassMethod(e,t,s,a,n,u)}pushClassPrivateMethod(e,t,s,a){let n=this.tsTryParseTypeParameters(this.tsParseConstModifier);n&&(t.typeParameters=n),super.pushClassPrivateMethod(e,t,s,a)}declareClassPrivateMethodInScope(e,t){e.type!=="TSDeclareMethod"&&(e.type==="MethodDefinition"&&!hasOwnProperty.call(e.value,"body")||super.declareClassPrivateMethodInScope(e,t))}parseClassSuper(e){super.parseClassSuper(e),e.superClass&&(this.match(47)||this.match(51))&&(e.superTypeParameters=this.tsParseTypeArgumentsInExpression()),this.eatContextual(113)&&(e.implements=this.tsParseHeritageClause("implements"))}parseObjPropValue(e,t,s,a,n,u,c){let f=this.tsTryParseTypeParameters(this.tsParseConstModifier);return f&&(e.typeParameters=f),super.parseObjPropValue(e,t,s,a,n,u,c)}parseFunctionParams(e,t){let s=this.tsTryParseTypeParameters(this.tsParseConstModifier);s&&(e.typeParameters=s),super.parseFunctionParams(e,t)}parseVarId(e,t){super.parseVarId(e,t),e.id.type==="Identifier"&&!this.hasPrecedingLineBreak()&&this.eat(35)&&(e.definite=!0);let s=this.tsTryParseTypeAnnotation();s&&(e.id.typeAnnotation=s,this.resetEndLocation(e.id))}parseAsyncArrowFromCallExpression(e,t){return this.match(14)&&(e.returnType=this.tsParseTypeAnnotation()),super.parseAsyncArrowFromCallExpression(e,t)}parseMaybeAssign(e,t){var s,a,n,u,c;let f,h,y;if(this.hasPlugin("jsx")&&(this.match(142)||this.match(47))){if(f=this.state.clone(),h=this.tryParse(()=>super.parseMaybeAssign(e,t),f),!h.error)return h.node;let{context:l}=this.state,p=l[l.length-1];(p===re.j_oTag||p===re.j_expr)&&l.pop()}if(!((s=h)!=null&&s.error)&&!this.match(47))return super.parseMaybeAssign(e,t);(!f||f===this.state)&&(f=this.state.clone());let m,o=this.tryParse(l=>{var p,d;m=this.tsParseTypeParameters(this.tsParseConstModifier);let x=super.parseMaybeAssign(e,t);return(x.type!=="ArrowFunctionExpression"||(p=x.extra)!=null&&p.parenthesized)&&l(),((d=m)==null?void 0:d.params.length)!==0&&this.resetStartLocationFromNode(x,m),x.typeParameters=m,x},f);if(!o.error&&!o.aborted)return m&&this.reportReservedArrowTypeParam(m),o.node;if(!h&&(Cl(!this.hasPlugin("jsx")),y=this.tryParse(()=>super.parseMaybeAssign(e,t),f),!y.error))return y.node;if((a=h)!=null&&a.node)return this.state=h.failState,h.node;if(o.node)return this.state=o.failState,m&&this.reportReservedArrowTypeParam(m),o.node;if((n=y)!=null&&n.node)return this.state=y.failState,y.node;throw((u=h)==null?void 0:u.error)||o.error||((c=y)==null?void 0:c.error)}reportReservedArrowTypeParam(e){var t;e.params.length===1&&!e.params[0].constraint&&!((t=e.extra)!=null&&t.trailingComma)&&this.getPluginOption("typescript","disallowAmbiguousJSXLike")&&this.raise(M.ReservedArrowTypeParam,e)}parseMaybeUnary(e,t){return!this.hasPlugin("jsx")&&this.match(47)?this.tsParseTypeAssertion():super.parseMaybeUnary(e,t)}parseArrow(e){if(this.match(14)){let t=this.tryParse(s=>{let a=this.tsParseTypeOrTypePredicateAnnotation(14);return(this.canInsertSemicolon()||!this.match(19))&&s(),a});if(t.aborted)return;t.thrown||(t.error&&(this.state=t.failState),e.returnType=t.node)}return super.parseArrow(e)}parseAssignableListItemTypes(e,t){if(!(t&2))return e;this.eat(17)&&(e.optional=!0);let s=this.tsTryParseTypeAnnotation();return s&&(e.typeAnnotation=s),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(M.UnexpectedTypeCastInParameter,e):this.raise(M.UnexpectedTypeCastInParameter,e),this.toAssignable(e.expression,t);break;case"AssignmentExpression":!t&&e.left.type==="TSTypeCastExpression"&&(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,s){return bm({TSTypeCastExpression:!0,TSParameterProperty:"parameter",TSNonNullExpression:"expression",TSInstantiationExpression:"expression",TSAsExpression:(s!==64||!t)&&["expression",!0],TSSatisfiesExpression:(s!==64||!t)&&["expression",!0],TSTypeAssertion:(s!==64||!t)&&["expression",!0]},e)||super.isValidLVal(e,t,s)}parseBindingAtom(){return this.state.type===78?this.parseIdentifier(!0):super.parseBindingAtom()}parseMaybeDecoratorArguments(e){if(this.match(47)||this.match(51)){let t=this.tsParseTypeArgumentsInExpression();if(this.match(10)){let s=super.parseMaybeDecoratorArguments(e);return s.typeParameters=t,s}this.unexpected(null,10)}return super.parseMaybeDecoratorArguments(e)}checkCommaAfterRest(e){return this.state.isAmbientContext&&this.match(12)&&this.lookaheadCharCode()===e?(this.next(),!1):super.checkCommaAfterRest(e)}isClassMethod(){return this.match(47)||super.isClassMethod()}isClassProperty(){return this.match(35)||this.match(14)||super.isClassProperty()}parseMaybeDefault(e,t){let s=super.parseMaybeDefault(e,t);return s.type==="AssignmentPattern"&&s.typeAnnotation&&s.right.start<s.typeAnnotation.start&&this.raise(M.TypeAnnotationAfterAssign,s.typeAnnotation),s}getTokenFromCode(e){if(this.state.inType){if(e===62){this.finishOp(48,1);return}if(e===60){this.finishOp(47,1);return}}super.getTokenFromCode(e)}reScan_lt_gt(){let{type:e}=this.state;e===47?(this.state.pos-=1,this.readToken_lt()):e===48&&(this.state.pos-=1,this.readToken_gt())}reScan_lt(){let{type:e}=this.state;return e===51?(this.state.pos-=2,this.finishOp(47,1),47):e}toAssignableList(e,t,s){for(let a=0;a<e.length;a++){let n=e[a];n?.type==="TSTypeCastExpression"&&(e[a]=this.typeCastToParameter(n))}super.toAssignableList(e,t,s)}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(t=>this.isAssignable(t,!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)){let t=this.tsTryParseAndCatch(()=>this.tsParseTypeArgumentsInExpression());t&&(e.typeParameters=t)}return super.jsxParseOpeningElementAfterName(e)}getGetterSetterExpectedParamCount(e){let t=super.getGetterSetterExpectedParamCount(e),a=this.getObjectOrClassMethodParams(e)[0];return a&&this.isThisParam(a)?t+1:t}parseCatchClauseParam(){let e=super.parseCatchClauseParam(),t=this.tsTryParseTypeAnnotation();return t&&(e.typeAnnotation=t,this.resetEndLocation(e)),e}tsInAmbientContext(e){let t=this.state.isAmbientContext;this.state.isAmbientContext=!0;try{return e()}finally{this.state.isAmbientContext=t}}parseClass(e,t,s){let a=this.state.inAbstractClass;this.state.inAbstractClass=!!e.abstract;try{return super.parseClass(e,t,s)}finally{this.state.inAbstractClass=a}}tsParseAbstractDeclaration(e,t){if(this.match(80))return e.abstract=!0,this.maybeTakeDecorators(t,this.parseClass(e,!0,!1));if(this.isContextual(129)){if(!this.hasFollowingLineBreak())return e.abstract=!0,this.raise(M.NonClassMethodPropertyHasAbstractModifer,e),this.tsParseInterfaceDeclaration(e)}else this.unexpected(null,80)}parseMethod(e,t,s,a,n,u,c){let f=super.parseMethod(e,t,s,a,n,u,c);if(f.abstract&&(this.hasPlugin("estree")?!!f.value.body:!!f.body)){let{key:y}=f;this.raise(M.AbstractMethodHasImplementation,f,{methodName:y.type==="Identifier"&&!f.computed?y.name:`[${this.input.slice(y.start,y.end)}]`})}return f}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,s,a){return!t&&a?(this.parseTypeOnlyImportExportSpecifier(e,!1,s),this.finishNode(e,"ExportSpecifier")):(e.exportKind="value",super.parseExportSpecifier(e,t,s,a))}parseImportSpecifier(e,t,s,a,n){return!t&&a?(this.parseTypeOnlyImportExportSpecifier(e,!0,s),this.finishNode(e,"ImportSpecifier")):(e.importKind="value",super.parseImportSpecifier(e,t,s,a,s?4098:4096))}parseTypeOnlyImportExportSpecifier(e,t,s){let a=t?"imported":"local",n=t?"local":"exported",u=e[a],c,f=!1,h=!0,y=u.loc.start;if(this.isContextual(93)){let o=this.parseIdentifier();if(this.isContextual(93)){let l=this.parseIdentifier();Re(this.state.type)?(f=!0,u=o,c=t?this.parseIdentifier():this.parseModuleExportName(),h=!1):(c=l,h=!1)}else Re(this.state.type)?(h=!1,c=t?this.parseIdentifier():this.parseModuleExportName()):(f=!0,u=o)}else Re(this.state.type)&&(f=!0,t?(u=this.parseIdentifier(!0),this.isContextual(93)||this.checkReservedWord(u.name,u.loc.start,!0,!0)):u=this.parseModuleExportName());f&&s&&this.raise(t?M.TypeModifierIsUsedInTypeImports:M.TypeModifierIsUsedInTypeExports,y),e[a]=u,e[n]=c;let m=t?"importKind":"exportKind";e[m]=f?"type":"value",h&&this.eatContextual(93)&&(e[n]=t?this.parseIdentifier():this.parseModuleExportName()),e[n]||(e[n]=st(e[a])),t&&this.checkIdentifier(e[n],f?4098:4096)}};function Cm(i){if(i.type!=="MemberExpression")return!1;let{computed:r,property:e}=i;return r&&e.type!=="StringLiteral"&&(e.type!=="TemplateLiteral"||e.expressions.length>0)?!1:Kl(i.object)}function Pm(i,r){var e;let{type:t}=i;if((e=i.extra)!=null&&e.parenthesized)return!1;if(r){if(t==="Literal"){let{value:s}=i;if(typeof s=="string"||typeof s=="boolean")return!0}}else if(t==="StringLiteral"||t==="BooleanLiteral")return!0;return!!(Vl(i,r)||Dm(i,r)||t==="TemplateLiteral"&&i.expressions.length===0||Cm(i))}function Vl(i,r){return r?i.type==="Literal"&&(typeof i.value=="number"||"bigint"in i):i.type==="NumericLiteral"||i.type==="BigIntLiteral"}function Dm(i,r){if(i.type==="UnaryExpression"){let{operator:e,argument:t}=i;if(e==="-"&&Vl(t,r))return!0}return!1}function Kl(i){return i.type==="Identifier"?!0:i.type!=="MemberExpression"||i.computed?!1:Kl(i.object)}var Dl=rt`placeholders`({ClassNameIsRequired:"A class name is required.",UnexpectedSpace:"Unexpected space in placeholder."}),wm=i=>class extends i{parsePlaceholder(e){if(this.match(144)){let t=this.startNode();return this.next(),this.assertNoSpace(),t.name=super.parseIdentifier(!0),this.assertNoSpace(),this.expect(144),this.finishPlaceholder(t,e)}}finishPlaceholder(e,t){let s=e;return(!s.expectedNode||!s.type)&&(s=this.finishNode(s,"Placeholder")),s.expectedNode=t,s}getTokenFromCode(e){e===37&&this.input.charCodeAt(this.state.pos+1)===37?this.finishOp(144,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,s,a){e!==void 0&&super.checkReservedWord(e,t,s,a)}parseBindingAtom(){return this.parsePlaceholder("Pattern")||super.parseBindingAtom()}isValidLVal(e,t,s){return e==="Placeholder"||super.isValidLVal(e,t,s)}toAssignable(e,t){e&&e.type==="Placeholder"&&e.expectedNode==="Expression"?e.expectedNode="Pattern":super.toAssignable(e,t)}chStartsBindingIdentifier(e,t){return!!(super.chStartsBindingIdentifier(e,t)||this.lookahead().type===144)}verifyBreakContinue(e,t){e.label&&e.label.type==="Placeholder"||super.verifyBreakContinue(e,t)}parseExpressionStatement(e,t){var s;if(t.type!=="Placeholder"||(s=t.extra)!=null&&s.parenthesized)return super.parseExpressionStatement(e,t);if(this.match(14)){let n=e;return n.label=this.finishPlaceholder(t,"Identifier"),this.next(),n.body=super.parseStatementOrSloppyAnnexBFunctionDeclaration(),this.finishNode(n,"LabeledStatement")}this.semicolon();let a=e;return a.name=t.name,this.finishPlaceholder(a,"Statement")}parseBlock(e,t,s){return this.parsePlaceholder("BlockStatement")||super.parseBlock(e,t,s)}parseFunctionId(e){return this.parsePlaceholder("Identifier")||super.parseFunctionId(e)}parseClass(e,t,s){let a=t?"ClassDeclaration":"ClassExpression";this.next();let n=this.state.strict,u=this.parsePlaceholder("Identifier");if(u)if(this.match(81)||this.match(144)||this.match(5))e.id=u;else{if(s||!t)return e.id=null,e.body=this.finishPlaceholder(u,"ClassBody"),this.finishNode(e,a);throw this.raise(Dl.ClassNameIsRequired,this.state.startLoc)}else this.parseClassId(e,t,s);return super.parseClassSuper(e),e.body=this.parsePlaceholder("ClassBody")||super.parseClassBody(!!e.superClass,n),this.finishNode(e,a)}parseExport(e,t){let s=this.parsePlaceholder("Identifier");if(!s)return super.parseExport(e,t);let a=e;if(!this.isContextual(98)&&!this.match(12))return a.specifiers=[],a.source=null,a.declaration=this.finishPlaceholder(s,"Declaration"),this.finishNode(a,"ExportNamedDeclaration");this.expectPlugin("exportDefaultFrom");let n=this.startNode();return n.exported=s,a.specifiers=[this.finishNode(n,"ExportDefaultSpecifier")],super.parseExport(a,t)}isExportDefaultSpecifier(){if(this.match(65)){let e=this.nextTokenStart();if(this.isUnparsedContextual(e,"from")&&this.input.startsWith(ft(144),this.nextTokenStartSince(e+4)))return!0}return super.isExportDefaultSpecifier()}maybeParseExportDefaultSpecifier(e,t){var s;return(s=e.specifiers)!=null&&s.length?!0:super.maybeParseExportDefaultSpecifier(e,t)}checkExport(e){let{specifiers:t}=e;t!=null&&t.length&&(e.specifiers=t.filter(s=>s.exported.type==="Placeholder")),super.checkExport(e),e.specifiers=t}parseImport(e){let 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");let s=this.startNodeAtNode(t);return s.local=t,e.specifiers.push(this.finishNode(s,"ImportDefaultSpecifier")),this.eat(12)&&(this.maybeParseStarImportSpecifier(e)||this.parseNamedImportSpecifiers(e)),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.state.lastTokEndLoc.index&&this.raise(Dl.UnexpectedSpace,this.state.lastTokEndLoc)}},km=i=>class extends i{parseV8Intrinsic(){if(this.match(54)){let e=this.state.startLoc,t=this.startNode();if(this.next(),Z(this.state.type)){let s=this.parseIdentifierName(),a=this.createIdentifier(t,s);if(a.type="V8IntrinsicIdentifier",this.match(10))return a}this.unexpected(e)}}parseExprAtom(e){return this.parseV8Intrinsic()||super.parseExprAtom(e)}};function fe(i,r){let[e,t]=typeof r=="string"?[r,{}]:r,s=Object.keys(t),a=s.length===0;return i.some(n=>{if(typeof n=="string")return a&&n===e;{let[u,c]=n;if(u!==e)return!1;for(let f of s)if(c[f]!==t[f])return!1;return!0}})}function Pt(i,r,e){let t=i.find(s=>Array.isArray(s)?s[0]===r:s===r);return t&&Array.isArray(t)&&t.length>1?t[1][e]:null}var wl=["minimal","fsharp","hack","smart"],kl=["^^","@@","^","%","#"];function Im(i){if(fe(i,"decorators")){if(fe(i,"decorators-legacy"))throw new Error("Cannot use the decorators and decorators-legacy plugin together");let r=Pt(i,"decorators","decoratorsBeforeExport");if(r!=null&&typeof r!="boolean")throw new Error("'decoratorsBeforeExport' must be a boolean, if specified.");let e=Pt(i,"decorators","allowCallParenthesized");if(e!=null&&typeof e!="boolean")throw new Error("'allowCallParenthesized' must be a boolean.")}if(fe(i,"flow")&&fe(i,"typescript"))throw new Error("Cannot combine flow and typescript plugins.");if(fe(i,"placeholders")&&fe(i,"v8intrinsic"))throw new Error("Cannot combine placeholders and v8intrinsic plugins.");if(fe(i,"pipelineOperator")){let r=Pt(i,"pipelineOperator","proposal");if(!wl.includes(r)){let s=wl.map(a=>`"${a}"`).join(", ");throw new Error(`"pipelineOperator" requires "proposal" option whose value must be one of: ${s}.`)}let e=["recordAndTuple",{syntaxType:"hash"}],t=fe(i,e);if(r==="hack"){if(fe(i,"placeholders"))throw new Error("Cannot combine placeholders plugin and Hack-style pipes.");if(fe(i,"v8intrinsic"))throw new Error("Cannot combine v8intrinsic plugin and Hack-style pipes.");let s=Pt(i,"pipelineOperator","topicToken");if(!kl.includes(s)){let a=kl.map(n=>`"${n}"`).join(", ");throw new Error(`"pipelineOperator" in "proposal": "hack" mode also requires a "topicToken" option whose value must be one of: ${a}.`)}if(s==="#"&&t)throw new Error(`Plugin conflict between \`["pipelineOperator", { proposal: "hack", topicToken: "#" }]\` and \`${JSON.stringify(e)}\`.`)}else if(r==="smart"&&t)throw new Error(`Plugin conflict between \`["pipelineOperator", { proposal: "smart" }]\` and \`${JSON.stringify(e)}\`.`)}if(fe(i,"moduleAttributes")){if(fe(i,"importAssertions")||fe(i,"importAttributes"))throw new Error("Cannot combine importAssertions, importAttributes and moduleAttributes plugins.");if(Pt(i,"moduleAttributes","version")!=="may-2020")throw new Error("The 'moduleAttributes' plugin requires a 'version' option, representing the last proposal update. Currently, the only supported value is 'may-2020'.")}if(fe(i,"importAssertions")&&fe(i,"importAttributes"))throw new Error("Cannot combine importAssertions and importAttributes plugins.");if(fe(i,"recordAndTuple")){let r=Pt(i,"recordAndTuple","syntaxType");if(r!=null){let e=["hash","bar"];if(!e.includes(r))throw new Error("The 'syntaxType' option of the 'recordAndTuple' plugin must be one of: "+e.map(t=>`'${t}'`).join(", "))}}if(fe(i,"asyncDoExpressions")&&!fe(i,"doExpressions")){let r=new Error("'asyncDoExpressions' requires 'doExpressions', please add 'doExpressions' to parser plugins.");throw r.missingPlugins="doExpressions",r}if(fe(i,"optionalChainingAssign")&&Pt(i,"optionalChainingAssign","version")!=="2023-07")throw new Error("The 'optionalChainingAssign' plugin requires a 'version' option, representing the last proposal update. Currently, the only supported value is '2023-07'.")}var Wl={estree:Nd,jsx:gm,flow:ym,typescript:Tm,v8intrinsic:km,placeholders:wm},Nm=Object.keys(Wl),Ma={sourceType:"script",sourceFilename:void 0,startColumn:0,startLine:1,allowAwaitOutsideFunction:!1,allowReturnOutsideFunction:!1,allowNewTargetOutsideFunction:!1,allowImportExportEverywhere:!1,allowSuperOutsideMethod:!1,allowUndeclaredExports:!1,plugins:[],strictMode:null,ranges:!1,tokens:!1,createImportExpressions:!1,createParenthesizedExpressions:!1,errorRecovery:!1,attachComment:!0,annexB:!0};function Fm(i){if(i==null)return Object.assign({},Ma);if(i.annexB!=null&&i.annexB!==!1)throw new Error("The `annexB` option can only be set to `false`.");let r={};for(let t of Object.keys(Ma)){var e;r[t]=(e=i[t])!=null?e:Ma[t]}return r}var en=class extends Za{checkProto(r,e,t,s){if(r.type==="SpreadElement"||this.isObjectMethod(r)||r.computed||r.shorthand)return;let a=r.key;if((a.type==="Identifier"?a.name:a.value)==="__proto__"){if(e){this.raise(S.RecordNoProto,a);return}t.used&&(s?s.doubleProtoLoc===null&&(s.doubleProtoLoc=a.loc.start):this.raise(S.DuplicateProto,a)),t.used=!0}}shouldExitDescending(r,e){return r.type==="ArrowFunctionExpression"&&r.start===e}getExpression(){this.enterInitialScopes(),this.nextToken();let r=this.parseExpression();return this.match(139)||this.unexpected(),this.finalizeRemainingComments(),r.comments=this.comments,r.errors=this.state.errors,this.options.tokens&&(r.tokens=this.tokens),r}parseExpression(r,e){return r?this.disallowInAnd(()=>this.parseExpressionBase(e)):this.allowInAnd(()=>this.parseExpressionBase(e))}parseExpressionBase(r){let e=this.state.startLoc,t=this.parseMaybeAssign(r);if(this.match(12)){let s=this.startNodeAt(e);for(s.expressions=[t];this.eat(12);)s.expressions.push(this.parseMaybeAssign(r));return this.toReferencedList(s.expressions),this.finishNode(s,"SequenceExpression")}return t}parseMaybeAssignDisallowIn(r,e){return this.disallowInAnd(()=>this.parseMaybeAssign(r,e))}parseMaybeAssignAllowIn(r,e){return this.allowInAnd(()=>this.parseMaybeAssign(r,e))}setOptionalParametersError(r,e){var t;r.optionalParametersLoc=(t=e?.loc)!=null?t:this.state.startLoc}parseMaybeAssign(r,e){let t=this.state.startLoc;if(this.isContextual(108)&&this.prodParam.hasYield){let u=this.parseYield();return e&&(u=e.call(this,u,t)),u}let s;r?s=!1:(r=new Zt,s=!0);let{type:a}=this.state;(a===10||Z(a))&&(this.state.potentialArrowAt=this.state.start);let n=this.parseMaybeConditional(r);if(e&&(n=e.call(this,n,t)),Od(this.state.type)){let u=this.startNodeAt(t),c=this.state.value;if(u.operator=c,this.match(29)){this.toAssignable(n,!0),u.left=n;let f=t.index;r.doubleProtoLoc!=null&&r.doubleProtoLoc.index>=f&&(r.doubleProtoLoc=null),r.shorthandAssignLoc!=null&&r.shorthandAssignLoc.index>=f&&(r.shorthandAssignLoc=null),r.privateKeyLoc!=null&&r.privateKeyLoc.index>=f&&(this.checkDestructuringPrivate(r),r.privateKeyLoc=null)}else u.left=n;return this.next(),u.right=this.parseMaybeAssign(),this.checkLVal(n,{in:this.finishNode(u,"AssignmentExpression")}),u}else s&&this.checkExpressionErrors(r,!0);return n}parseMaybeConditional(r){let e=this.state.startLoc,t=this.state.potentialArrowAt,s=this.parseExprOps(r);return this.shouldExitDescending(s,t)?s:this.parseConditional(s,e,r)}parseConditional(r,e,t){if(this.eat(17)){let s=this.startNodeAt(e);return s.test=r,s.consequent=this.parseMaybeAssignAllowIn(),this.expect(14),s.alternate=this.parseMaybeAssign(),this.finishNode(s,"ConditionalExpression")}return r}parseMaybeUnaryOrPrivate(r){return this.match(138)?this.parsePrivateName():this.parseMaybeUnary(r)}parseExprOps(r){let e=this.state.startLoc,t=this.state.potentialArrowAt,s=this.parseMaybeUnaryOrPrivate(r);return this.shouldExitDescending(s,t)?s:this.parseExprOp(s,e,-1)}parseExprOp(r,e,t){if(this.isPrivateName(r)){let a=this.getPrivateNameSV(r);(t>=Fs(58)||!this.prodParam.hasIn||!this.match(58))&&this.raise(S.PrivateInExpectedIn,r,{identifierName:a}),this.classScope.usePrivateName(a,r.loc.start)}let s=this.state.type;if(jd(s)&&(this.prodParam.hasIn||!this.match(58))){let a=Fs(s);if(a>t){if(s===39){if(this.expectPlugin("pipelineOperator"),this.state.inFSharpPipelineDirectBody)return r;this.checkPipelineAtInfixOperator(r,e)}let n=this.startNodeAt(e);n.left=r,n.operator=this.state.value;let u=s===41||s===42,c=s===40;if(c&&(a=Fs(42)),this.next(),s===39&&this.hasPlugin(["pipelineOperator",{proposal:"minimal"}])&&this.state.type===96&&this.prodParam.hasAwait)throw this.raise(S.UnexpectedAwaitAfterPipelineBody,this.state.startLoc);n.right=this.parseExprOpRightExpr(s,a);let f=this.finishNode(n,u||c?"LogicalExpression":"BinaryExpression"),h=this.state.type;if(c&&(h===41||h===42)||u&&h===40)throw this.raise(S.MixingCoalesceWithLogical,this.state.startLoc);return this.parseExprOp(f,e,t)}}return r}parseExprOpRightExpr(r,e){let t=this.state.startLoc;switch(r){case 39:switch(this.getPluginOption("pipelineOperator","proposal")){case"hack":return this.withTopicBindingContext(()=>this.parseHackPipeBody());case"smart":return this.withTopicBindingContext(()=>{if(this.prodParam.hasYield&&this.isContextual(108))throw this.raise(S.PipeBodyIsTighter,this.state.startLoc);return this.parseSmartPipelineBodyInStyle(this.parseExprOpBaseRightExpr(r,e),t)});case"fsharp":return this.withSoloAwaitPermittingContext(()=>this.parseFSharpPipelineBody(e))}default:return this.parseExprOpBaseRightExpr(r,e)}}parseExprOpBaseRightExpr(r,e){let t=this.state.startLoc;return this.parseExprOp(this.parseMaybeUnaryOrPrivate(),t,Jd(r)?e-1:e)}parseHackPipeBody(){var r;let{startLoc:e}=this.state,t=this.parseMaybeAssign();return Cd.has(t.type)&&!((r=t.extra)!=null&&r.parenthesized)&&this.raise(S.PipeUnparenthesizedBody,e,{type:t.type}),this.topicReferenceWasUsedInCurrentContext()||this.raise(S.PipeTopicUnused,e),t}checkExponentialAfterUnary(r){this.match(57)&&this.raise(S.UnexpectedTokenUnaryExponentiation,r.argument)}parseMaybeUnary(r,e){let t=this.state.startLoc,s=this.isContextual(96);if(s&&this.isAwaitAllowed()){this.next();let c=this.parseAwait(t);return e||this.checkExponentialAfterUnary(c),c}let a=this.match(34),n=this.startNode();if(Ud(this.state.type)){n.operator=this.state.value,n.prefix=!0,this.match(72)&&this.expectPlugin("throwExpressions");let c=this.match(89);if(this.next(),n.argument=this.parseMaybeUnary(null,!0),this.checkExpressionErrors(r,!0),this.state.strict&&c){let f=n.argument;f.type==="Identifier"?this.raise(S.StrictDelete,n):this.hasPropertyAsPrivateName(f)&&this.raise(S.DeletePrivateField,n)}if(!a)return e||this.checkExponentialAfterUnary(n),this.finishNode(n,"UnaryExpression")}let u=this.parseUpdate(n,a,r);if(s){let{type:c}=this.state;if((this.hasPlugin("v8intrinsic")?Oa(c):Oa(c)&&!this.match(54))&&!this.isAmbiguousAwait())return this.raiseOverwrite(S.AwaitNotInAsyncContext,t),this.parseAwait(t)}return u}parseUpdate(r,e,t){if(e){let n=r;return this.checkLVal(n.argument,{in:this.finishNode(n,"UpdateExpression")}),r}let s=this.state.startLoc,a=this.parseExprSubscripts(t);if(this.checkExpressionErrors(t,!1))return a;for(;Rd(this.state.type)&&!this.canInsertSemicolon();){let n=this.startNodeAt(s);n.operator=this.state.value,n.prefix=!1,n.argument=a,this.next(),this.checkLVal(a,{in:a=this.finishNode(n,"UpdateExpression")})}return a}parseExprSubscripts(r){let e=this.state.startLoc,t=this.state.potentialArrowAt,s=this.parseExprAtom(r);return this.shouldExitDescending(s,t)?s:this.parseSubscripts(s,e)}parseSubscripts(r,e,t){let s={optionalChainMember:!1,maybeAsyncArrow:this.atPossibleAsyncArrow(r),stop:!1};do r=this.parseSubscript(r,e,t,s),s.maybeAsyncArrow=!1;while(!s.stop);return r}parseSubscript(r,e,t,s){let{type:a}=this.state;if(!t&&a===15)return this.parseBind(r,e,t,s);if(Os(a))return this.parseTaggedTemplateExpression(r,e,s);let n=!1;if(a===18){if(t&&(this.raise(S.OptionalChainingNoNew,this.state.startLoc),this.lookaheadCharCode()===40))return s.stop=!0,r;s.optionalChainMember=n=!0,this.next()}if(!t&&this.match(10))return this.parseCoverCallAndAsyncArrowHead(r,e,s,n);{let u=this.eat(0);return u||n||this.eat(16)?this.parseMember(r,e,s,u,n):(s.stop=!0,r)}}parseMember(r,e,t,s,a){let n=this.startNodeAt(e);return n.object=r,n.computed=s,s?(n.property=this.parseExpression(),this.expect(3)):this.match(138)?(r.type==="Super"&&this.raise(S.SuperPrivateField,e),this.classScope.usePrivateName(this.state.value,this.state.startLoc),n.property=this.parsePrivateName()):n.property=this.parseIdentifier(!0),t.optionalChainMember?(n.optional=a,this.finishNode(n,"OptionalMemberExpression")):this.finishNode(n,"MemberExpression")}parseBind(r,e,t,s){let a=this.startNodeAt(e);return a.object=r,this.next(),a.callee=this.parseNoCallExpr(),s.stop=!0,this.parseSubscripts(this.finishNode(a,"BindExpression"),e,t)}parseCoverCallAndAsyncArrowHead(r,e,t,s){let a=this.state.maybeInArrowParameters,n=null;this.state.maybeInArrowParameters=!0,this.next();let u=this.startNodeAt(e);u.callee=r;let{maybeAsyncArrow:c,optionalChainMember:f}=t;c&&(this.expressionScope.enter(um()),n=new Zt),f&&(u.optional=s),s?u.arguments=this.parseCallExpressionArguments(11):u.arguments=this.parseCallExpressionArguments(11,r.type==="Import",r.type!=="Super",u,n);let h=this.finishCallExpression(u,f);return c&&this.shouldParseAsyncArrow()&&!s?(t.stop=!0,this.checkDestructuringPrivate(n),this.expressionScope.validateAsPattern(),this.expressionScope.exit(),h=this.parseAsyncArrowFromCallExpression(this.startNodeAt(e),h)):(c&&(this.checkExpressionErrors(n,!0),this.expressionScope.exit()),this.toReferencedArguments(h)),this.state.maybeInArrowParameters=a,h}toReferencedArguments(r,e){this.toReferencedListDeep(r.arguments,e)}parseTaggedTemplateExpression(r,e,t){let s=this.startNodeAt(e);return s.tag=r,s.quasi=this.parseTemplate(!0),t.optionalChainMember&&this.raise(S.OptionalChainingNoTemplate,e),this.finishNode(s,"TaggedTemplateExpression")}atPossibleAsyncArrow(r){return r.type==="Identifier"&&r.name==="async"&&this.state.lastTokEndLoc.index===r.end&&!this.canInsertSemicolon()&&r.end-r.start===5&&r.start===this.state.potentialArrowAt}expectImportAttributesPlugin(){this.hasPlugin("importAssertions")||this.expectPlugin("importAttributes")}finishCallExpression(r,e){if(r.callee.type==="Import")if(r.arguments.length===2&&(this.hasPlugin("moduleAttributes")||this.expectImportAttributesPlugin()),r.arguments.length===0||r.arguments.length>2)this.raise(S.ImportCallArity,r,{maxArgumentCount:this.hasPlugin("importAttributes")||this.hasPlugin("importAssertions")||this.hasPlugin("moduleAttributes")?2:1});else for(let t of r.arguments)t.type==="SpreadElement"&&this.raise(S.ImportCallSpreadArgument,t);return this.finishNode(r,e?"OptionalCallExpression":"CallExpression")}parseCallExpressionArguments(r,e,t,s,a){let n=[],u=!0,c=this.state.inFSharpPipelineDirectBody;for(this.state.inFSharpPipelineDirectBody=!1;!this.eat(r);){if(u)u=!1;else if(this.expect(12),this.match(r)){e&&!this.hasPlugin("importAttributes")&&!this.hasPlugin("importAssertions")&&!this.hasPlugin("moduleAttributes")&&this.raise(S.ImportCallArgumentTrailingComma,this.state.lastTokStartLoc),s&&this.addTrailingCommaExtraToNode(s),this.next();break}n.push(this.parseExprListItem(!1,a,t))}return this.state.inFSharpPipelineDirectBody=c,n}shouldParseAsyncArrow(){return this.match(19)&&!this.canInsertSemicolon()}parseAsyncArrowFromCallExpression(r,e){var t;return this.resetPreviousNodeTrailingComments(e),this.expect(19),this.parseArrowExpression(r,e.arguments,!0,(t=e.extra)==null?void 0:t.trailingCommaLoc),e.innerComments&&jr(r,e.innerComments),e.callee.trailingComments&&jr(r,e.callee.trailingComments),r}parseNoCallExpr(){let r=this.state.startLoc;return this.parseSubscripts(this.parseExprAtom(),r,!0)}parseExprAtom(r){let e,t=null,{type:s}=this.state;switch(s){case 79:return this.parseSuper();case 83:return e=this.startNode(),this.next(),this.match(16)?this.parseImportMetaProperty(e):this.match(10)?this.options.createImportExpressions?this.parseImportCall(e):this.finishNode(e,"Import"):(this.raise(S.UnsupportedImport,this.state.lastTokStartLoc),this.finishNode(e,"Import"));case 78:return e=this.startNode(),this.next(),this.finishNode(e,"ThisExpression");case 90:return this.parseDo(this.startNode(),!1);case 56:case 31:return this.readRegexp(),this.parseRegExpLiteral(this.state.value);case 134:return this.parseNumericLiteral(this.state.value);case 135:return this.parseBigIntLiteral(this.state.value);case 136:return this.parseDecimalLiteral(this.state.value);case 133:return this.parseStringLiteral(this.state.value);case 84:return this.parseNullLiteral();case 85:return this.parseBooleanLiteral(!0);case 86:return this.parseBooleanLiteral(!1);case 10:{let a=this.state.potentialArrowAt===this.state.start;return this.parseParenAndDistinguishExpression(a)}case 2:case 1:return this.parseArrayLike(this.state.type===2?4:3,!1,!0);case 0:return this.parseArrayLike(3,!0,!1,r);case 6:case 7:return this.parseObjectLike(this.state.type===6?9:8,!1,!0);case 5:return this.parseObjectLike(8,!1,!1,r);case 68:return this.parseFunctionOrFunctionSent();case 26:t=this.parseDecorators();case 80:return this.parseClass(this.maybeTakeDecorators(t,this.startNode()),!1);case 77:return this.parseNewOrNewTarget();case 25:case 24:return this.parseTemplate(!1);case 15:{e=this.startNode(),this.next(),e.object=null;let a=e.callee=this.parseNoCallExpr();if(a.type==="MemberExpression")return this.finishNode(e,"BindExpression");throw this.raise(S.UnsupportedBind,a)}case 138:return this.raise(S.PrivateInExpectedIn,this.state.startLoc,{identifierName:this.state.value}),this.parsePrivateName();case 33:return this.parseTopicReferenceThenEqualsSign(54,"%");case 32:return this.parseTopicReferenceThenEqualsSign(44,"^");case 37:case 38:return this.parseTopicReference("hack");case 44:case 54:case 27:{let a=this.getPluginOption("pipelineOperator","proposal");if(a)return this.parseTopicReference(a);this.unexpected();break}case 47:{let a=this.input.codePointAt(this.nextTokenStart());tt(a)||a===62?this.expectOnePlugin(["jsx","flow","typescript"]):this.unexpected();break}default:if(Z(s)){if(this.isContextual(127)&&this.lookaheadInLineCharCode()===123)return this.parseModuleExpression();let a=this.state.potentialArrowAt===this.state.start,n=this.state.containsEsc,u=this.parseIdentifier();if(!n&&u.name==="async"&&!this.canInsertSemicolon()){let{type:c}=this.state;if(c===68)return this.resetPreviousNodeTrailingComments(u),this.next(),this.parseAsyncFunctionExpression(this.startNodeAtNode(u));if(Z(c))return this.lookaheadCharCode()===61?this.parseAsyncArrowUnaryFunction(this.startNodeAtNode(u)):u;if(c===90)return this.resetPreviousNodeTrailingComments(u),this.parseDo(this.startNodeAtNode(u),!0)}return a&&this.match(19)&&!this.canInsertSemicolon()?(this.next(),this.parseArrowExpression(this.startNodeAtNode(u),[u],!1)):u}else this.unexpected()}}parseTopicReferenceThenEqualsSign(r,e){let t=this.getPluginOption("pipelineOperator","proposal");if(t)return this.state.type=r,this.state.value=e,this.state.pos--,this.state.end--,this.state.endLoc=Ee(this.state.endLoc,-1),this.parseTopicReference(t);this.unexpected()}parseTopicReference(r){let e=this.startNode(),t=this.state.startLoc,s=this.state.type;return this.next(),this.finishTopicReference(e,t,r,s)}finishTopicReference(r,e,t,s){if(this.testTopicReferenceConfiguration(t,e,s)){let a=t==="smart"?"PipelinePrimaryTopicReference":"TopicReference";return this.topicReferenceIsAllowedInCurrentContext()||this.raise(t==="smart"?S.PrimaryTopicNotAllowed:S.PipeTopicUnbound,e),this.registerTopicReference(),this.finishNode(r,a)}else throw this.raise(S.PipeTopicUnconfiguredToken,e,{token:ft(s)})}testTopicReferenceConfiguration(r,e,t){switch(r){case"hack":return this.hasPlugin(["pipelineOperator",{topicToken:ft(t)}]);case"smart":return t===27;default:throw this.raise(S.PipeTopicRequiresHackPipes,e)}}parseAsyncArrowUnaryFunction(r){this.prodParam.enter(Bs(!0,this.prodParam.hasYield));let e=[this.parseIdentifier()];return this.prodParam.exit(),this.hasPrecedingLineBreak()&&this.raise(S.LineTerminatorBeforeArrow,this.state.curPosition()),this.expect(19),this.parseArrowExpression(r,e,!0)}parseDo(r,e){this.expectPlugin("doExpressions"),e&&this.expectPlugin("asyncDoExpressions"),r.async=e,this.next();let t=this.state.labels;return this.state.labels=[],e?(this.prodParam.enter(2),r.body=this.parseBlock(),this.prodParam.exit()):r.body=this.parseBlock(),this.state.labels=t,this.finishNode(r,"DoExpression")}parseSuper(){let r=this.startNode();return this.next(),this.match(10)&&!this.scope.allowDirectSuper&&!this.options.allowSuperOutsideMethod?this.raise(S.SuperNotAllowed,r):!this.scope.allowSuper&&!this.options.allowSuperOutsideMethod&&this.raise(S.UnexpectedSuper,r),!this.match(10)&&!this.match(0)&&!this.match(16)&&this.raise(S.UnsupportedSuper,r),this.finishNode(r,"Super")}parsePrivateName(){let r=this.startNode(),e=this.startNodeAt(Ee(this.state.startLoc,1)),t=this.state.value;return this.next(),r.id=this.createIdentifier(e,t),this.finishNode(r,"PrivateName")}parseFunctionOrFunctionSent(){let r=this.startNode();if(this.next(),this.prodParam.hasYield&&this.match(16)){let e=this.createIdentifier(this.startNodeAtNode(r),"function");return this.next(),this.match(103)?this.expectPlugin("functionSent"):this.hasPlugin("functionSent")||this.unexpected(),this.parseMetaProperty(r,e,"sent")}return this.parseFunction(r)}parseMetaProperty(r,e,t){r.meta=e;let s=this.state.containsEsc;return r.property=this.parseIdentifier(!0),(r.property.name!==t||s)&&this.raise(S.UnsupportedMetaProperty,r.property,{target:e.name,onlyValidPropertyName:t}),this.finishNode(r,"MetaProperty")}parseImportMetaProperty(r){let e=this.createIdentifier(this.startNodeAtNode(r),"import");if(this.next(),this.isContextual(101))this.inModule||this.raise(S.ImportMetaOutsideModule,e),this.sawUnambiguousESM=!0;else if(this.isContextual(105)||this.isContextual(97)){let t=this.isContextual(105);if(t||this.unexpected(),this.expectPlugin(t?"sourcePhaseImports":"deferredImportEvaluation"),!this.options.createImportExpressions)throw this.raise(S.DynamicImportPhaseRequiresImportExpressions,this.state.startLoc,{phase:this.state.value});return this.next(),r.phase=t?"source":"defer",this.parseImportCall(r)}return this.parseMetaProperty(r,e,"meta")}parseLiteralAtNode(r,e,t){return this.addExtra(t,"rawValue",r),this.addExtra(t,"raw",this.input.slice(t.start,this.state.end)),t.value=r,this.next(),this.finishNode(t,e)}parseLiteral(r,e){let t=this.startNode();return this.parseLiteralAtNode(r,e,t)}parseStringLiteral(r){return this.parseLiteral(r,"StringLiteral")}parseNumericLiteral(r){return this.parseLiteral(r,"NumericLiteral")}parseBigIntLiteral(r){return this.parseLiteral(r,"BigIntLiteral")}parseDecimalLiteral(r){return this.parseLiteral(r,"DecimalLiteral")}parseRegExpLiteral(r){let e=this.parseLiteral(r.value,"RegExpLiteral");return e.pattern=r.pattern,e.flags=r.flags,e}parseBooleanLiteral(r){let e=this.startNode();return e.value=r,this.next(),this.finishNode(e,"BooleanLiteral")}parseNullLiteral(){let r=this.startNode();return this.next(),this.finishNode(r,"NullLiteral")}parseParenAndDistinguishExpression(r){let e=this.state.startLoc,t;this.next(),this.expressionScope.enter(om());let s=this.state.maybeInArrowParameters,a=this.state.inFSharpPipelineDirectBody;this.state.maybeInArrowParameters=!0,this.state.inFSharpPipelineDirectBody=!1;let n=this.state.startLoc,u=[],c=new Zt,f=!0,h,y;for(;!this.match(11);){if(f)f=!1;else if(this.expect(12,c.optionalParametersLoc===null?null:c.optionalParametersLoc),this.match(11)){y=this.state.startLoc;break}if(this.match(21)){let l=this.state.startLoc;if(h=this.state.startLoc,u.push(this.parseParenItem(this.parseRestBinding(),l)),!this.checkCommaAfterRest(41))break}else u.push(this.parseMaybeAssignAllowIn(c,this.parseParenItem))}let m=this.state.lastTokEndLoc;this.expect(11),this.state.maybeInArrowParameters=s,this.state.inFSharpPipelineDirectBody=a;let o=this.startNodeAt(e);return r&&this.shouldParseArrow(u)&&(o=this.parseArrow(o))?(this.checkDestructuringPrivate(c),this.expressionScope.validateAsPattern(),this.expressionScope.exit(),this.parseArrowExpression(o,u,!1),o):(this.expressionScope.exit(),u.length||this.unexpected(this.state.lastTokStartLoc),y&&this.unexpected(y),h&&this.unexpected(h),this.checkExpressionErrors(c,!0),this.toReferencedListDeep(u,!0),u.length>1?(t=this.startNodeAt(n),t.expressions=u,this.finishNode(t,"SequenceExpression"),this.resetEndLocation(t,m)):t=u[0],this.wrapParenthesis(e,t))}wrapParenthesis(r,e){if(!this.options.createParenthesizedExpressions)return this.addExtra(e,"parenthesized",!0),this.addExtra(e,"parenStart",r.index),this.takeSurroundingComments(e,r.index,this.state.lastTokEndLoc.index),e;let t=this.startNodeAt(r);return t.expression=e,this.finishNode(t,"ParenthesizedExpression")}shouldParseArrow(r){return!this.canInsertSemicolon()}parseArrow(r){if(this.eat(19))return r}parseParenItem(r,e){return r}parseNewOrNewTarget(){let r=this.startNode();if(this.next(),this.match(16)){let e=this.createIdentifier(this.startNodeAtNode(r),"new");this.next();let t=this.parseMetaProperty(r,e,"target");return!this.scope.inNonArrowFunction&&!this.scope.inClass&&!this.options.allowNewTargetOutsideFunction&&this.raise(S.UnexpectedNewTarget,t),t}return this.parseNew(r)}parseNew(r){if(this.parseNewCallee(r),this.eat(10)){let e=this.parseExprList(11);this.toReferencedList(e),r.arguments=e}else r.arguments=[];return this.finishNode(r,"NewExpression")}parseNewCallee(r){let e=this.match(83),t=this.parseNoCallExpr();r.callee=t,e&&(t.type==="Import"||t.type==="ImportExpression")&&this.raise(S.ImportCallNotNewExpression,t)}parseTemplateElement(r){let{start:e,startLoc:t,end:s,value:a}=this.state,n=e+1,u=this.startNodeAt(Ee(t,1));a===null&&(r||this.raise(S.InvalidEscapeSequenceTemplate,Ee(this.state.firstInvalidTemplateEscapePos,1)));let c=this.match(24),f=c?-1:-2,h=s+f;u.value={raw:this.input.slice(n,h).replace(/\r\n?/g,`
106
+ `),cooked:a===null?null:a.slice(1,f)},u.tail=c,this.next();let y=this.finishNode(u,"TemplateElement");return this.resetEndLocation(y,Ee(this.state.lastTokEndLoc,f)),y}parseTemplate(r){let e=this.startNode(),t=this.parseTemplateElement(r),s=[t],a=[];for(;!t.tail;)a.push(this.parseTemplateSubstitution()),this.readTemplateContinuation(),s.push(t=this.parseTemplateElement(r));return e.expressions=a,e.quasis=s,this.finishNode(e,"TemplateLiteral")}parseTemplateSubstitution(){return this.parseExpression()}parseObjectLike(r,e,t,s){t&&this.expectPlugin("recordAndTuple");let a=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!1;let n=Object.create(null),u=!0,c=this.startNode();for(c.properties=[],this.next();!this.match(r);){if(u)u=!1;else if(this.expect(12),this.match(r)){this.addTrailingCommaExtraToNode(c);break}let h;e?h=this.parseBindingProperty():(h=this.parsePropertyDefinition(s),this.checkProto(h,t,n,s)),t&&!this.isObjectProperty(h)&&h.type!=="SpreadElement"&&this.raise(S.InvalidRecordProperty,h),h.shorthand&&this.addExtra(h,"shorthand",!0),c.properties.push(h)}this.next(),this.state.inFSharpPipelineDirectBody=a;let f="ObjectExpression";return e?f="ObjectPattern":t&&(f="RecordExpression"),this.finishNode(c,f)}addTrailingCommaExtraToNode(r){this.addExtra(r,"trailingComma",this.state.lastTokStartLoc.index),this.addExtra(r,"trailingCommaLoc",this.state.lastTokStartLoc,!1)}maybeAsyncOrAccessorProp(r){return!r.computed&&r.key.type==="Identifier"&&(this.isLiteralPropertyName()||this.match(0)||this.match(55))}parsePropertyDefinition(r){let e=[];if(this.match(26))for(this.hasPlugin("decorators")&&this.raise(S.UnsupportedPropertyDecorator,this.state.startLoc);this.match(26);)e.push(this.parseDecorator());let t=this.startNode(),s=!1,a=!1,n;if(this.match(21))return e.length&&this.unexpected(),this.parseSpread();e.length&&(t.decorators=e,e=[]),t.method=!1,r&&(n=this.state.startLoc);let u=this.eat(55);this.parsePropertyNamePrefixOperator(t);let c=this.state.containsEsc;if(this.parsePropertyName(t,r),!u&&!c&&this.maybeAsyncOrAccessorProp(t)){let{key:f}=t,h=f.name;h==="async"&&!this.hasPrecedingLineBreak()&&(s=!0,this.resetPreviousNodeTrailingComments(f),u=this.eat(55),this.parsePropertyName(t)),(h==="get"||h==="set")&&(a=!0,this.resetPreviousNodeTrailingComments(f),t.kind=h,this.match(55)&&(u=!0,this.raise(S.AccessorIsGenerator,this.state.curPosition(),{kind:h}),this.next()),this.parsePropertyName(t))}return this.parseObjPropValue(t,n,u,s,!1,a,r)}getGetterSetterExpectedParamCount(r){return r.kind==="get"?0:1}getObjectOrClassMethodParams(r){return r.params}checkGetterSetterParams(r){var e;let t=this.getGetterSetterExpectedParamCount(r),s=this.getObjectOrClassMethodParams(r);s.length!==t&&this.raise(r.kind==="get"?S.BadGetterArity:S.BadSetterArity,r),r.kind==="set"&&((e=s[s.length-1])==null?void 0:e.type)==="RestElement"&&this.raise(S.BadSetterRestParameter,r)}parseObjectMethod(r,e,t,s,a){if(a){let n=this.parseMethod(r,e,!1,!1,!1,"ObjectMethod");return this.checkGetterSetterParams(n),n}if(t||e||this.match(10))return s&&this.unexpected(),r.kind="method",r.method=!0,this.parseMethod(r,e,t,!1,!1,"ObjectMethod")}parseObjectProperty(r,e,t,s){if(r.shorthand=!1,this.eat(14))return r.value=t?this.parseMaybeDefault(this.state.startLoc):this.parseMaybeAssignAllowIn(s),this.finishNode(r,"ObjectProperty");if(!r.computed&&r.key.type==="Identifier"){if(this.checkReservedWord(r.key.name,r.key.loc.start,!0,!1),t)r.value=this.parseMaybeDefault(e,st(r.key));else if(this.match(29)){let a=this.state.startLoc;s!=null?s.shorthandAssignLoc===null&&(s.shorthandAssignLoc=a):this.raise(S.InvalidCoverInitializedName,a),r.value=this.parseMaybeDefault(e,st(r.key))}else r.value=st(r.key);return r.shorthand=!0,this.finishNode(r,"ObjectProperty")}}parseObjPropValue(r,e,t,s,a,n,u){let c=this.parseObjectMethod(r,t,s,a,n)||this.parseObjectProperty(r,e,a,u);return c||this.unexpected(),c}parsePropertyName(r,e){if(this.eat(0))r.computed=!0,r.key=this.parseMaybeAssignAllowIn(),this.expect(3);else{let{type:t,value:s}=this.state,a;if(Re(t))a=this.parseIdentifier(!0);else switch(t){case 134:a=this.parseNumericLiteral(s);break;case 133:a=this.parseStringLiteral(s);break;case 135:a=this.parseBigIntLiteral(s);break;case 136:a=this.parseDecimalLiteral(s);break;case 138:{let n=this.state.startLoc;e!=null?e.privateKeyLoc===null&&(e.privateKeyLoc=n):this.raise(S.UnexpectedPrivateField,n),a=this.parsePrivateName();break}default:this.unexpected()}r.key=a,t!==138&&(r.computed=!1)}}initFunction(r,e){r.id=null,r.generator=!1,r.async=e}parseMethod(r,e,t,s,a,n,u=!1){this.initFunction(r,t),r.generator=e,this.scope.enter(18|(u?64:0)|(a?32:0)),this.prodParam.enter(Bs(t,r.generator)),this.parseFunctionParams(r,s);let c=this.parseFunctionBodyAndFinish(r,n,!0);return this.prodParam.exit(),this.scope.exit(),c}parseArrayLike(r,e,t,s){t&&this.expectPlugin("recordAndTuple");let a=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!1;let n=this.startNode();return this.next(),n.elements=this.parseExprList(r,!t,s,n),this.state.inFSharpPipelineDirectBody=a,this.finishNode(n,t?"TupleExpression":"ArrayExpression")}parseArrowExpression(r,e,t,s){this.scope.enter(6);let a=Bs(t,!1);!this.match(5)&&this.prodParam.hasIn&&(a|=8),this.prodParam.enter(a),this.initFunction(r,t);let n=this.state.maybeInArrowParameters;return e&&(this.state.maybeInArrowParameters=!0,this.setArrowFunctionParameters(r,e,s)),this.state.maybeInArrowParameters=!1,this.parseFunctionBody(r,!0),this.prodParam.exit(),this.scope.exit(),this.state.maybeInArrowParameters=n,this.finishNode(r,"ArrowFunctionExpression")}setArrowFunctionParameters(r,e,t){this.toAssignableList(e,t,!1),r.params=e}parseFunctionBodyAndFinish(r,e,t=!1){return this.parseFunctionBody(r,!1,t),this.finishNode(r,e)}parseFunctionBody(r,e,t=!1){let s=e&&!this.match(5);if(this.expressionScope.enter(Jl()),s)r.body=this.parseMaybeAssign(),this.checkParams(r,!1,e,!1);else{let a=this.state.strict,n=this.state.labels;this.state.labels=[],this.prodParam.enter(this.prodParam.currentFlags()|4),r.body=this.parseBlock(!0,!1,u=>{let c=!this.isSimpleParamList(r.params);u&&c&&this.raise(S.IllegalLanguageModeDirective,(r.kind==="method"||r.kind==="constructor")&&r.key?r.key.loc.end:r);let f=!a&&this.state.strict;this.checkParams(r,!this.state.strict&&!e&&!t&&!c,e,f),this.state.strict&&r.id&&this.checkIdentifier(r.id,65,f)}),this.prodParam.exit(),this.state.labels=n}this.expressionScope.exit()}isSimpleParameter(r){return r.type==="Identifier"}isSimpleParamList(r){for(let e=0,t=r.length;e<t;e++)if(!this.isSimpleParameter(r[e]))return!1;return!0}checkParams(r,e,t,s=!0){let a=!e&&new Set,n={type:"FormalParameters"};for(let u of r.params)this.checkLVal(u,{in:n,binding:5,checkClashes:a,strictModeChanged:s})}parseExprList(r,e,t,s){let a=[],n=!0;for(;!this.eat(r);){if(n)n=!1;else if(this.expect(12),this.match(r)){s&&this.addTrailingCommaExtraToNode(s),this.next();break}a.push(this.parseExprListItem(e,t))}return a}parseExprListItem(r,e,t){let s;if(this.match(12))r||this.raise(S.UnexpectedToken,this.state.curPosition(),{unexpected:","}),s=null;else if(this.match(21)){let a=this.state.startLoc;s=this.parseParenItem(this.parseSpread(e),a)}else if(this.match(17)){this.expectPlugin("partialApplication"),t||this.raise(S.UnexpectedArgumentPlaceholder,this.state.startLoc);let a=this.startNode();this.next(),s=this.finishNode(a,"ArgumentPlaceholder")}else s=this.parseMaybeAssignAllowIn(e,this.parseParenItem);return s}parseIdentifier(r){let e=this.startNode(),t=this.parseIdentifierName(r);return this.createIdentifier(e,t)}createIdentifier(r,e){return r.name=e,r.loc.identifierName=e,this.finishNode(r,"Identifier")}parseIdentifierName(r){let e,{startLoc:t,type:s}=this.state;Re(s)?e=this.state.value:this.unexpected();let a=Bd(s);return r?a&&this.replaceToken(132):this.checkReservedWord(e,t,a,!1),this.next(),e}checkReservedWord(r,e,t,s){if(r.length>10||!Zd(r))return;if(t&&$d(r)){this.raise(S.UnexpectedKeyword,e,{keyword:r});return}if((this.state.strict?s?jl:Ol:Ll)(r,this.inModule)){this.raise(S.UnexpectedReservedWord,e,{reservedWord:r});return}else if(r==="yield"){if(this.prodParam.hasYield){this.raise(S.YieldBindingIdentifier,e);return}}else if(r==="await"){if(this.prodParam.hasAwait){this.raise(S.AwaitBindingIdentifier,e);return}if(this.scope.inStaticBlock){this.raise(S.AwaitBindingIdentifierInStaticBlock,e);return}this.expressionScope.recordAsyncArrowParametersError(e)}else if(r==="arguments"&&this.scope.inClassAndNotInNonArrowFunction){this.raise(S.ArgumentsInClass,e);return}}isAwaitAllowed(){return!!(this.prodParam.hasAwait||this.options.allowAwaitOutsideFunction&&!this.scope.inFunction)}parseAwait(r){let e=this.startNodeAt(r);return this.expressionScope.recordParameterInitializerError(S.AwaitExpressionFormalParameter,e),this.eat(55)&&this.raise(S.ObsoleteAwaitStar,e),!this.scope.inFunction&&!this.options.allowAwaitOutsideFunction&&(this.isAmbiguousAwait()?this.ambiguousScriptDifferentAst=!0:this.sawUnambiguousESM=!0),this.state.soloAwait||(e.argument=this.parseMaybeUnary(null,!0)),this.finishNode(e,"AwaitExpression")}isAmbiguousAwait(){if(this.hasPrecedingLineBreak())return!0;let{type:r}=this.state;return r===53||r===10||r===0||Os(r)||r===102&&!this.state.containsEsc||r===137||r===56||this.hasPlugin("v8intrinsic")&&r===54}parseYield(){let r=this.startNode();this.expressionScope.recordParameterInitializerError(S.YieldInParameter,r),this.next();let e=!1,t=null;if(!this.hasPrecedingLineBreak())switch(e=this.eat(55),this.state.type){case 13:case 139:case 8:case 11:case 3:case 9:case 14:case 12:if(!e)break;default:t=this.parseMaybeAssign()}return r.delegate=e,r.argument=t,this.finishNode(r,"YieldExpression")}parseImportCall(r){return this.next(),r.source=this.parseMaybeAssignAllowIn(),(this.hasPlugin("importAttributes")||this.hasPlugin("importAssertions"))&&(r.options=null),this.eat(12)&&(this.expectImportAttributesPlugin(),this.match(11)||(r.options=this.parseMaybeAssignAllowIn(),this.eat(12))),this.expect(11),this.finishNode(r,"ImportExpression")}checkPipelineAtInfixOperator(r,e){this.hasPlugin(["pipelineOperator",{proposal:"smart"}])&&r.type==="SequenceExpression"&&this.raise(S.PipelineHeadSequenceExpression,e)}parseSmartPipelineBodyInStyle(r,e){if(this.isSimpleReference(r)){let t=this.startNodeAt(e);return t.callee=r,this.finishNode(t,"PipelineBareFunction")}else{let t=this.startNodeAt(e);return this.checkSmartPipeTopicBodyEarlyErrors(e),t.expression=r,this.finishNode(t,"PipelineTopicExpression")}}isSimpleReference(r){switch(r.type){case"MemberExpression":return!r.computed&&this.isSimpleReference(r.object);case"Identifier":return!0;default:return!1}}checkSmartPipeTopicBodyEarlyErrors(r){if(this.match(19))throw this.raise(S.PipelineBodyNoArrow,this.state.startLoc);this.topicReferenceWasUsedInCurrentContext()||this.raise(S.PipelineTopicUnused,r)}withTopicBindingContext(r){let e=this.state.topicContext;this.state.topicContext={maxNumOfResolvableTopics:1,maxTopicIndex:null};try{return r()}finally{this.state.topicContext=e}}withSmartMixTopicForbiddingContext(r){if(this.hasPlugin(["pipelineOperator",{proposal:"smart"}])){let e=this.state.topicContext;this.state.topicContext={maxNumOfResolvableTopics:0,maxTopicIndex:null};try{return r()}finally{this.state.topicContext=e}}else return r()}withSoloAwaitPermittingContext(r){let e=this.state.soloAwait;this.state.soloAwait=!0;try{return r()}finally{this.state.soloAwait=e}}allowInAnd(r){let e=this.prodParam.currentFlags();if(8&~e){this.prodParam.enter(e|8);try{return r()}finally{this.prodParam.exit()}}return r()}disallowInAnd(r){let e=this.prodParam.currentFlags();if(8&e){this.prodParam.enter(e&-9);try{return r()}finally{this.prodParam.exit()}}return r()}registerTopicReference(){this.state.topicContext.maxTopicIndex=0}topicReferenceIsAllowedInCurrentContext(){return this.state.topicContext.maxNumOfResolvableTopics>=1}topicReferenceWasUsedInCurrentContext(){return this.state.topicContext.maxTopicIndex!=null&&this.state.topicContext.maxTopicIndex>=0}parseFSharpPipelineBody(r){let e=this.state.startLoc;this.state.potentialArrowAt=this.state.start;let t=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!0;let s=this.parseExprOp(this.parseMaybeUnaryOrPrivate(),e,r);return this.state.inFSharpPipelineDirectBody=t,s}parseModuleExpression(){this.expectPlugin("moduleBlocks");let r=this.startNode();this.next(),this.match(5)||this.unexpected(null,5);let e=this.startNodeAt(this.state.endLoc);this.next();let t=this.initializeScopes(!0);this.enterInitialScopes();try{r.body=this.parseProgram(e,8,"module")}finally{t()}return this.finishNode(r,"ModuleExpression")}parsePropertyNamePrefixOperator(r){}},Ba={kind:1},Mm={kind:2},Bm=/[\uD800-\uDFFF]/u,La=/in(?:stanceof)?/y;function Lm(i,r){for(let e=0;e<i.length;e++){let t=i[e],{type:s}=t;if(typeof s=="number"){{if(s===138){let{loc:a,start:n,value:u,end:c}=t,f=n+1,h=Ee(a.start,1);i.splice(e,1,new Xe({type:Ze(27),value:"#",start:n,end:f,startLoc:a.start,endLoc:h}),new Xe({type:Ze(132),value:u,start:f,end:c,startLoc:h,endLoc:a.end})),e++;continue}if(Os(s)){let{loc:a,start:n,value:u,end:c}=t,f=n+1,h=Ee(a.start,1),y;r.charCodeAt(n)===96?y=new Xe({type:Ze(22),value:"`",start:n,end:f,startLoc:a.start,endLoc:h}):y=new Xe({type:Ze(8),value:"}",start:n,end:f,startLoc:a.start,endLoc:h});let m,o,l,p;s===24?(o=c-1,l=Ee(a.end,-1),m=u===null?null:u.slice(1,-1),p=new Xe({type:Ze(22),value:"`",start:o,end:c,startLoc:l,endLoc:a.end})):(o=c-2,l=Ee(a.end,-2),m=u===null?null:u.slice(1,-2),p=new Xe({type:Ze(23),value:"${",start:o,end:c,startLoc:l,endLoc:a.end})),i.splice(e,1,y,new Xe({type:Ze(20),value:m,start:f,end:o,startLoc:h,endLoc:l}),p),e+=2;continue}}t.type=Ze(s)}}return i}var tn=class extends en{parseTopLevel(r,e){return r.program=this.parseProgram(e),r.comments=this.comments,this.options.tokens&&(r.tokens=Lm(this.tokens,this.input)),this.finishNode(r,"File")}parseProgram(r,e=139,t=this.options.sourceType){if(r.sourceType=t,r.interpreter=this.parseInterpreterDirective(),this.parseBlockBody(r,!0,!0,e),this.inModule&&!this.options.allowUndeclaredExports&&this.scope.undefinedExports.size>0)for(let[a,n]of Array.from(this.scope.undefinedExports))this.raise(S.ModuleExportUndefined,n,{localName:a});let s;return e===139?s=this.finishNode(r,"Program"):s=this.finishNodeAt(r,"Program",Ee(this.state.startLoc,-1)),s}stmtToDirective(r){let e=r;e.type="Directive",e.value=e.expression,delete e.expression;let t=e.value,s=t.value,a=this.input.slice(t.start,t.end),n=t.value=a.slice(1,-1);return this.addExtra(t,"raw",a),this.addExtra(t,"rawValue",n),this.addExtra(t,"expressionValue",s),t.type="DirectiveLiteral",e}parseInterpreterDirective(){if(!this.match(28))return null;let r=this.startNode();return r.value=this.state.value,this.next(),this.finishNode(r,"InterpreterDirective")}isLet(){return this.isContextual(100)?this.hasFollowingBindingAtom():!1}chStartsBindingIdentifier(r,e){if(tt(r)){if(La.lastIndex=e,La.test(this.input)){let t=this.codePointAtPos(La.lastIndex);if(!Qt(t)&&t!==92)return!1}return!0}else return r===92}chStartsBindingPattern(r){return r===91||r===123}hasFollowingBindingAtom(){let r=this.nextTokenStart(),e=this.codePointAtPos(r);return this.chStartsBindingPattern(e)||this.chStartsBindingIdentifier(e,r)}hasInLineFollowingBindingIdentifier(){let r=this.nextTokenInLineStart(),e=this.codePointAtPos(r);return this.chStartsBindingIdentifier(e,r)}startsUsingForOf(){let{type:r,containsEsc:e}=this.lookahead();if(r===102&&!e)return!1;if(Z(r)&&!this.hasFollowingLineBreak())return this.expectPlugin("explicitResourceManagement"),!0}startsAwaitUsing(){let r=this.nextTokenInLineStart();if(this.isUnparsedContextual(r,"using")){r=this.nextTokenInLineStartSince(r+5);let e=this.codePointAtPos(r);if(this.chStartsBindingIdentifier(e,r))return this.expectPlugin("explicitResourceManagement"),!0}return!1}parseModuleItem(){return this.parseStatementLike(15)}parseStatementListItem(){return this.parseStatementLike(6|(!this.options.annexB||this.state.strict?0:8))}parseStatementOrSloppyAnnexBFunctionDeclaration(r=!1){let e=0;return this.options.annexB&&!this.state.strict&&(e|=4,r&&(e|=8)),this.parseStatementLike(e)}parseStatement(){return this.parseStatementLike(0)}parseStatementLike(r){let e=null;return this.match(26)&&(e=this.parseDecorators(!0)),this.parseStatementContent(r,e)}parseStatementContent(r,e){let t=this.state.type,s=this.startNode(),a=!!(r&2),n=!!(r&4),u=r&1;switch(t){case 60:return this.parseBreakContinueStatement(s,!0);case 63:return this.parseBreakContinueStatement(s,!1);case 64:return this.parseDebuggerStatement(s);case 90:return this.parseDoWhileStatement(s);case 91:return this.parseForStatement(s);case 68:if(this.lookaheadCharCode()===46)break;return n||this.raise(this.state.strict?S.StrictFunction:this.options.annexB?S.SloppyFunctionAnnexB:S.SloppyFunction,this.state.startLoc),this.parseFunctionStatement(s,!1,!a&&n);case 80:return a||this.unexpected(),this.parseClass(this.maybeTakeDecorators(e,s),!0);case 69:return this.parseIfStatement(s);case 70:return this.parseReturnStatement(s);case 71:return this.parseSwitchStatement(s);case 72:return this.parseThrowStatement(s);case 73:return this.parseTryStatement(s);case 96:if(!this.state.containsEsc&&this.startsAwaitUsing())return this.isAwaitAllowed()?a||this.raise(S.UnexpectedLexicalDeclaration,s):this.raise(S.AwaitUsingNotInAsyncContext,s),this.next(),this.parseVarStatement(s,"await using");break;case 107:if(this.state.containsEsc||!this.hasInLineFollowingBindingIdentifier())break;return this.expectPlugin("explicitResourceManagement"),!this.scope.inModule&&this.scope.inTopLevel?this.raise(S.UnexpectedUsingDeclaration,this.state.startLoc):a||this.raise(S.UnexpectedLexicalDeclaration,this.state.startLoc),this.parseVarStatement(s,"using");case 100:{if(this.state.containsEsc)break;let h=this.nextTokenStart(),y=this.codePointAtPos(h);if(y!==91&&(!a&&this.hasFollowingLineBreak()||!this.chStartsBindingIdentifier(y,h)&&y!==123))break}case 75:a||this.raise(S.UnexpectedLexicalDeclaration,this.state.startLoc);case 74:{let h=this.state.value;return this.parseVarStatement(s,h)}case 92:return this.parseWhileStatement(s);case 76:return this.parseWithStatement(s);case 5:return this.parseBlock();case 13:return this.parseEmptyStatement(s);case 83:{let h=this.lookaheadCharCode();if(h===40||h===46)break}case 82:{!this.options.allowImportExportEverywhere&&!u&&this.raise(S.UnexpectedImportExport,this.state.startLoc),this.next();let h;return t===83?(h=this.parseImport(s),h.type==="ImportDeclaration"&&(!h.importKind||h.importKind==="value")&&(this.sawUnambiguousESM=!0)):(h=this.parseExport(s,e),(h.type==="ExportNamedDeclaration"&&(!h.exportKind||h.exportKind==="value")||h.type==="ExportAllDeclaration"&&(!h.exportKind||h.exportKind==="value")||h.type==="ExportDefaultDeclaration")&&(this.sawUnambiguousESM=!0)),this.assertModuleNodeAllowed(h),h}default:if(this.isAsyncFunction())return a||this.raise(S.AsyncFunctionInSingleStatementContext,this.state.startLoc),this.next(),this.parseFunctionStatement(s,!0,!a&&n)}let c=this.state.value,f=this.parseExpression();return Z(t)&&f.type==="Identifier"&&this.eat(14)?this.parseLabeledStatement(s,c,f,r):this.parseExpressionStatement(s,f,e)}assertModuleNodeAllowed(r){!this.options.allowImportExportEverywhere&&!this.inModule&&this.raise(S.ImportOutsideModule,r)}decoratorsEnabledBeforeExport(){return this.hasPlugin("decorators-legacy")?!0:this.hasPlugin("decorators")&&this.getPluginOption("decorators","decoratorsBeforeExport")!==!1}maybeTakeDecorators(r,e,t){return r&&(e.decorators&&e.decorators.length>0?(typeof this.getPluginOption("decorators","decoratorsBeforeExport")!="boolean"&&this.raise(S.DecoratorsBeforeAfterExport,e.decorators[0]),e.decorators.unshift(...r)):e.decorators=r,this.resetStartLocationFromNode(e,r[0]),t&&this.resetStartLocationFromNode(t,e)),e}canHaveLeadingDecorator(){return this.match(80)}parseDecorators(r){let e=[];do e.push(this.parseDecorator());while(this.match(26));if(this.match(82))r||this.unexpected(),this.decoratorsEnabledBeforeExport()||this.raise(S.DecoratorExportClass,this.state.startLoc);else if(!this.canHaveLeadingDecorator())throw this.raise(S.UnexpectedLeadingDecorator,this.state.startLoc);return e}parseDecorator(){this.expectOnePlugin(["decorators","decorators-legacy"]);let r=this.startNode();if(this.next(),this.hasPlugin("decorators")){let e=this.state.startLoc,t;if(this.match(10)){let s=this.state.startLoc;this.next(),t=this.parseExpression(),this.expect(11),t=this.wrapParenthesis(s,t);let a=this.state.startLoc;r.expression=this.parseMaybeDecoratorArguments(t),this.getPluginOption("decorators","allowCallParenthesized")===!1&&r.expression!==t&&this.raise(S.DecoratorArgumentsOutsideParentheses,a)}else{for(t=this.parseIdentifier(!1);this.eat(16);){let s=this.startNodeAt(e);s.object=t,this.match(138)?(this.classScope.usePrivateName(this.state.value,this.state.startLoc),s.property=this.parsePrivateName()):s.property=this.parseIdentifier(!0),s.computed=!1,t=this.finishNode(s,"MemberExpression")}r.expression=this.parseMaybeDecoratorArguments(t)}}else r.expression=this.parseExprSubscripts();return this.finishNode(r,"Decorator")}parseMaybeDecoratorArguments(r){if(this.eat(10)){let e=this.startNodeAtNode(r);return e.callee=r,e.arguments=this.parseCallExpressionArguments(11,!1),this.toReferencedList(e.arguments),this.finishNode(e,"CallExpression")}return r}parseBreakContinueStatement(r,e){return this.next(),this.isLineTerminator()?r.label=null:(r.label=this.parseIdentifier(),this.semicolon()),this.verifyBreakContinue(r,e),this.finishNode(r,e?"BreakStatement":"ContinueStatement")}verifyBreakContinue(r,e){let t;for(t=0;t<this.state.labels.length;++t){let s=this.state.labels[t];if((r.label==null||s.name===r.label.name)&&(s.kind!=null&&(e||s.kind===1)||r.label&&e))break}if(t===this.state.labels.length){let s=e?"BreakStatement":"ContinueStatement";this.raise(S.IllegalBreakContinue,r,{type:s})}}parseDebuggerStatement(r){return this.next(),this.semicolon(),this.finishNode(r,"DebuggerStatement")}parseHeaderExpression(){this.expect(10);let r=this.parseExpression();return this.expect(11),r}parseDoWhileStatement(r){return this.next(),this.state.labels.push(Ba),r.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.state.labels.pop(),this.expect(92),r.test=this.parseHeaderExpression(),this.eat(13),this.finishNode(r,"DoWhileStatement")}parseForStatement(r){this.next(),this.state.labels.push(Ba);let e=null;if(this.isAwaitAllowed()&&this.eatContextual(96)&&(e=this.state.lastTokStartLoc),this.scope.enter(0),this.expect(10),this.match(13))return e!==null&&this.unexpected(e),this.parseFor(r,null);let t=this.isContextual(100);{let c=this.isContextual(96)&&this.startsAwaitUsing(),f=c||this.isContextual(107)&&this.startsUsingForOf(),h=t&&this.hasFollowingBindingAtom()||f;if(this.match(74)||this.match(75)||h){let y=this.startNode(),m;c?(m="await using",this.isAwaitAllowed()||this.raise(S.AwaitUsingNotInAsyncContext,this.state.startLoc),this.next()):m=this.state.value,this.next(),this.parseVar(y,!0,m);let o=this.finishNode(y,"VariableDeclaration"),l=this.match(58);return l&&f&&this.raise(S.ForInUsing,o),(l||this.isContextual(102))&&o.declarations.length===1?this.parseForIn(r,o,e):(e!==null&&this.unexpected(e),this.parseFor(r,o))}}let s=this.isContextual(95),a=new Zt,n=this.parseExpression(!0,a),u=this.isContextual(102);if(u&&(t&&this.raise(S.ForOfLet,n),e===null&&s&&n.type==="Identifier"&&this.raise(S.ForOfAsync,n)),u||this.match(58)){this.checkDestructuringPrivate(a),this.toAssignable(n,!0);let c=u?"ForOfStatement":"ForInStatement";return this.checkLVal(n,{in:{type:c}}),this.parseForIn(r,n,e)}else this.checkExpressionErrors(a,!0);return e!==null&&this.unexpected(e),this.parseFor(r,n)}parseFunctionStatement(r,e,t){return this.next(),this.parseFunction(r,1|(t?2:0)|(e?8:0))}parseIfStatement(r){return this.next(),r.test=this.parseHeaderExpression(),r.consequent=this.parseStatementOrSloppyAnnexBFunctionDeclaration(),r.alternate=this.eat(66)?this.parseStatementOrSloppyAnnexBFunctionDeclaration():null,this.finishNode(r,"IfStatement")}parseReturnStatement(r){return!this.prodParam.hasReturn&&!this.options.allowReturnOutsideFunction&&this.raise(S.IllegalReturn,this.state.startLoc),this.next(),this.isLineTerminator()?r.argument=null:(r.argument=this.parseExpression(),this.semicolon()),this.finishNode(r,"ReturnStatement")}parseSwitchStatement(r){this.next(),r.discriminant=this.parseHeaderExpression();let e=r.cases=[];this.expect(5),this.state.labels.push(Mm),this.scope.enter(0);let t;for(let s;!this.match(8);)if(this.match(61)||this.match(65)){let a=this.match(61);t&&this.finishNode(t,"SwitchCase"),e.push(t=this.startNode()),t.consequent=[],this.next(),a?t.test=this.parseExpression():(s&&this.raise(S.MultipleDefaultsInSwitch,this.state.lastTokStartLoc),s=!0,t.test=null),this.expect(14)}else t?t.consequent.push(this.parseStatementListItem()):this.unexpected();return this.scope.exit(),t&&this.finishNode(t,"SwitchCase"),this.next(),this.state.labels.pop(),this.finishNode(r,"SwitchStatement")}parseThrowStatement(r){return this.next(),this.hasPrecedingLineBreak()&&this.raise(S.NewlineAfterThrow,this.state.lastTokEndLoc),r.argument=this.parseExpression(),this.semicolon(),this.finishNode(r,"ThrowStatement")}parseCatchClauseParam(){let r=this.parseBindingAtom();return this.scope.enter(this.options.annexB&&r.type==="Identifier"?8:0),this.checkLVal(r,{in:{type:"CatchClause"},binding:9}),r}parseTryStatement(r){if(this.next(),r.block=this.parseBlock(),r.handler=null,this.match(62)){let e=this.startNode();this.next(),this.match(10)?(this.expect(10),e.param=this.parseCatchClauseParam(),this.expect(11)):(e.param=null,this.scope.enter(0)),e.body=this.withSmartMixTopicForbiddingContext(()=>this.parseBlock(!1,!1)),this.scope.exit(),r.handler=this.finishNode(e,"CatchClause")}return r.finalizer=this.eat(67)?this.parseBlock():null,!r.handler&&!r.finalizer&&this.raise(S.NoCatchOrFinally,r),this.finishNode(r,"TryStatement")}parseVarStatement(r,e,t=!1){return this.next(),this.parseVar(r,!1,e,t),this.semicolon(),this.finishNode(r,"VariableDeclaration")}parseWhileStatement(r){return this.next(),r.test=this.parseHeaderExpression(),this.state.labels.push(Ba),r.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.state.labels.pop(),this.finishNode(r,"WhileStatement")}parseWithStatement(r){return this.state.strict&&this.raise(S.StrictWith,this.state.startLoc),this.next(),r.object=this.parseHeaderExpression(),r.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.finishNode(r,"WithStatement")}parseEmptyStatement(r){return this.next(),this.finishNode(r,"EmptyStatement")}parseLabeledStatement(r,e,t,s){for(let n of this.state.labels)n.name===e&&this.raise(S.LabelRedeclaration,t,{labelName:e});let a=_d(this.state.type)?1:this.match(71)?2:null;for(let n=this.state.labels.length-1;n>=0;n--){let u=this.state.labels[n];if(u.statementStart===r.start)u.statementStart=this.state.start,u.kind=a;else break}return this.state.labels.push({name:e,kind:a,statementStart:this.state.start}),r.body=s&8?this.parseStatementOrSloppyAnnexBFunctionDeclaration(!0):this.parseStatement(),this.state.labels.pop(),r.label=t,this.finishNode(r,"LabeledStatement")}parseExpressionStatement(r,e,t){return r.expression=e,this.semicolon(),this.finishNode(r,"ExpressionStatement")}parseBlock(r=!1,e=!0,t){let s=this.startNode();return r&&this.state.strictErrors.clear(),this.expect(5),e&&this.scope.enter(0),this.parseBlockBody(s,r,!1,8,t),e&&this.scope.exit(),this.finishNode(s,"BlockStatement")}isValidDirective(r){return r.type==="ExpressionStatement"&&r.expression.type==="StringLiteral"&&!r.expression.extra.parenthesized}parseBlockBody(r,e,t,s,a){let n=r.body=[],u=r.directives=[];this.parseBlockOrModuleBlockBody(n,e?u:void 0,t,s,a)}parseBlockOrModuleBlockBody(r,e,t,s,a){let n=this.state.strict,u=!1,c=!1;for(;!this.match(s);){let f=t?this.parseModuleItem():this.parseStatementListItem();if(e&&!c){if(this.isValidDirective(f)){let h=this.stmtToDirective(f);e.push(h),!u&&h.value.value==="use strict"&&(u=!0,this.setStrict(!0));continue}c=!0,this.state.strictErrors.clear()}r.push(f)}a?.call(this,u),n||this.setStrict(!1),this.next()}parseFor(r,e){return r.init=e,this.semicolon(!1),r.test=this.match(13)?null:this.parseExpression(),this.semicolon(!1),r.update=this.match(11)?null:this.parseExpression(),this.expect(11),r.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.scope.exit(),this.state.labels.pop(),this.finishNode(r,"ForStatement")}parseForIn(r,e,t){let s=this.match(58);return this.next(),s?t!==null&&this.unexpected(t):r.await=t!==null,e.type==="VariableDeclaration"&&e.declarations[0].init!=null&&(!s||!this.options.annexB||this.state.strict||e.kind!=="var"||e.declarations[0].id.type!=="Identifier")&&this.raise(S.ForInOfLoopInitializer,e,{type:s?"ForInStatement":"ForOfStatement"}),e.type==="AssignmentPattern"&&this.raise(S.InvalidLhs,e,{ancestor:{type:"ForStatement"}}),r.left=e,r.right=s?this.parseExpression():this.parseMaybeAssignAllowIn(),this.expect(11),r.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.scope.exit(),this.state.labels.pop(),this.finishNode(r,s?"ForInStatement":"ForOfStatement")}parseVar(r,e,t,s=!1){let a=r.declarations=[];for(r.kind=t;;){let n=this.startNode();if(this.parseVarId(n,t),n.init=this.eat(29)?e?this.parseMaybeAssignDisallowIn():this.parseMaybeAssignAllowIn():null,n.init===null&&!s&&(n.id.type!=="Identifier"&&!(e&&(this.match(58)||this.isContextual(102)))?this.raise(S.DeclarationMissingInitializer,this.state.lastTokEndLoc,{kind:"destructuring"}):(t==="const"||t==="using"||t==="await using")&&!(this.match(58)||this.isContextual(102))&&this.raise(S.DeclarationMissingInitializer,this.state.lastTokEndLoc,{kind:t})),a.push(this.finishNode(n,"VariableDeclarator")),!this.eat(12))break}return r}parseVarId(r,e){let t=this.parseBindingAtom();this.checkLVal(t,{in:{type:"VariableDeclarator"},binding:e==="var"?5:8201}),r.id=t}parseAsyncFunctionExpression(r){return this.parseFunction(r,8)}parseFunction(r,e=0){let t=e&2,s=!!(e&1),a=s&&!(e&4),n=!!(e&8);this.initFunction(r,n),this.match(55)&&(t&&this.raise(S.GeneratorInSingleStatementContext,this.state.startLoc),this.next(),r.generator=!0),s&&(r.id=this.parseFunctionId(a));let u=this.state.maybeInArrowParameters;return this.state.maybeInArrowParameters=!1,this.scope.enter(2),this.prodParam.enter(Bs(n,r.generator)),s||(r.id=this.parseFunctionId()),this.parseFunctionParams(r,!1),this.withSmartMixTopicForbiddingContext(()=>{this.parseFunctionBodyAndFinish(r,s?"FunctionDeclaration":"FunctionExpression")}),this.prodParam.exit(),this.scope.exit(),s&&!t&&this.registerFunctionStatementId(r),this.state.maybeInArrowParameters=u,r}parseFunctionId(r){return r||Z(this.state.type)?this.parseIdentifier():null}parseFunctionParams(r,e){this.expect(10),this.expressionScope.enter(nm()),r.params=this.parseBindingList(11,41,2|(e?4:0)),this.expressionScope.exit()}registerFunctionStatementId(r){r.id&&this.scope.declareName(r.id.name,!this.options.annexB||this.state.strict||r.generator||r.async?this.scope.treatFunctionsAsVar?5:8201:17,r.id.loc.start)}parseClass(r,e,t){this.next();let s=this.state.strict;return this.state.strict=!0,this.parseClassId(r,e,t),this.parseClassSuper(r),r.body=this.parseClassBody(!!r.superClass,s),this.finishNode(r,e?"ClassDeclaration":"ClassExpression")}isClassProperty(){return this.match(29)||this.match(13)||this.match(8)}isClassMethod(){return this.match(10)}nameIsConstructor(r){return r.type==="Identifier"&&r.name==="constructor"||r.type==="StringLiteral"&&r.value==="constructor"}isNonstaticConstructor(r){return!r.computed&&!r.static&&this.nameIsConstructor(r.key)}parseClassBody(r,e){this.classScope.enter();let t={hadConstructor:!1,hadSuperClass:r},s=[],a=this.startNode();if(a.body=[],this.expect(5),this.withSmartMixTopicForbiddingContext(()=>{for(;!this.match(8);){if(this.eat(13)){if(s.length>0)throw this.raise(S.DecoratorSemicolon,this.state.lastTokEndLoc);continue}if(this.match(26)){s.push(this.parseDecorator());continue}let n=this.startNode();s.length&&(n.decorators=s,this.resetStartLocationFromNode(n,s[0]),s=[]),this.parseClassMember(a,n,t),n.kind==="constructor"&&n.decorators&&n.decorators.length>0&&this.raise(S.DecoratorConstructor,n)}}),this.state.strict=e,this.next(),s.length)throw this.raise(S.TrailingDecorator,this.state.startLoc);return this.classScope.exit(),this.finishNode(a,"ClassBody")}parseClassMemberFromModifier(r,e){let t=this.parseIdentifier(!0);if(this.isClassMethod()){let s=e;return s.kind="method",s.computed=!1,s.key=t,s.static=!1,this.pushClassMethod(r,s,!1,!1,!1,!1),!0}else if(this.isClassProperty()){let s=e;return s.computed=!1,s.key=t,s.static=!1,r.body.push(this.parseClassProperty(s)),!0}return this.resetPreviousNodeTrailingComments(t),!1}parseClassMember(r,e,t){let s=this.isContextual(106);if(s){if(this.parseClassMemberFromModifier(r,e))return;if(this.eat(5)){this.parseClassStaticBlock(r,e);return}}this.parseClassMemberWithIsStatic(r,e,t,s)}parseClassMemberWithIsStatic(r,e,t,s){let a=e,n=e,u=e,c=e,f=e,h=a,y=a;if(e.static=s,this.parsePropertyNamePrefixOperator(e),this.eat(55)){h.kind="method";let x=this.match(138);if(this.parseClassElementName(h),x){this.pushClassPrivateMethod(r,n,!0,!1);return}this.isNonstaticConstructor(a)&&this.raise(S.ConstructorIsGenerator,a.key),this.pushClassMethod(r,a,!0,!1,!1,!1);return}let m=!this.state.containsEsc&&Z(this.state.type),o=this.parseClassElementName(e),l=m?o.name:null,p=this.isPrivateName(o),d=this.state.startLoc;if(this.parsePostMemberNameModifiers(y),this.isClassMethod()){if(h.kind="method",p){this.pushClassPrivateMethod(r,n,!1,!1);return}let x=this.isNonstaticConstructor(a),g=!1;x&&(a.kind="constructor",t.hadConstructor&&!this.hasPlugin("typescript")&&this.raise(S.DuplicateConstructor,o),x&&this.hasPlugin("typescript")&&e.override&&this.raise(S.OverrideOnConstructor,o),t.hadConstructor=!0,g=t.hadSuperClass),this.pushClassMethod(r,a,!1,!1,x,g)}else if(this.isClassProperty())p?this.pushClassPrivateProperty(r,c):this.pushClassProperty(r,u);else if(l==="async"&&!this.isLineTerminator()){this.resetPreviousNodeTrailingComments(o);let x=this.eat(55);y.optional&&this.unexpected(d),h.kind="method";let g=this.match(138);this.parseClassElementName(h),this.parsePostMemberNameModifiers(y),g?this.pushClassPrivateMethod(r,n,x,!0):(this.isNonstaticConstructor(a)&&this.raise(S.ConstructorIsAsync,a.key),this.pushClassMethod(r,a,x,!0,!1,!1))}else if((l==="get"||l==="set")&&!(this.match(55)&&this.isLineTerminator())){this.resetPreviousNodeTrailingComments(o),h.kind=l;let x=this.match(138);this.parseClassElementName(a),x?this.pushClassPrivateMethod(r,n,!1,!1):(this.isNonstaticConstructor(a)&&this.raise(S.ConstructorIsAccessor,a.key),this.pushClassMethod(r,a,!1,!1,!1,!1)),this.checkGetterSetterParams(a)}else if(l==="accessor"&&!this.isLineTerminator()){this.expectPlugin("decoratorAutoAccessors"),this.resetPreviousNodeTrailingComments(o);let x=this.match(138);this.parseClassElementName(u),this.pushClassAccessorProperty(r,f,x)}else this.isLineTerminator()?p?this.pushClassPrivateProperty(r,c):this.pushClassProperty(r,u):this.unexpected()}parseClassElementName(r){let{type:e,value:t}=this.state;if((e===132||e===133)&&r.static&&t==="prototype"&&this.raise(S.StaticPrototype,this.state.startLoc),e===138){t==="constructor"&&this.raise(S.ConstructorClassPrivateField,this.state.startLoc);let s=this.parsePrivateName();return r.key=s,s}return this.parsePropertyName(r),r.key}parseClassStaticBlock(r,e){var t;this.scope.enter(208);let s=this.state.labels;this.state.labels=[],this.prodParam.enter(0);let a=e.body=[];this.parseBlockOrModuleBlockBody(a,void 0,!1,8),this.prodParam.exit(),this.scope.exit(),this.state.labels=s,r.body.push(this.finishNode(e,"StaticBlock")),(t=e.decorators)!=null&&t.length&&this.raise(S.DecoratorStaticBlock,e)}pushClassProperty(r,e){!e.computed&&this.nameIsConstructor(e.key)&&this.raise(S.ConstructorClassField,e.key),r.body.push(this.parseClassProperty(e))}pushClassPrivateProperty(r,e){let t=this.parseClassPrivateProperty(e);r.body.push(t),this.classScope.declarePrivateName(this.getPrivateNameSV(t.key),0,t.key.loc.start)}pushClassAccessorProperty(r,e,t){!t&&!e.computed&&this.nameIsConstructor(e.key)&&this.raise(S.ConstructorClassField,e.key);let s=this.parseClassAccessorProperty(e);r.body.push(s),t&&this.classScope.declarePrivateName(this.getPrivateNameSV(s.key),0,s.key.loc.start)}pushClassMethod(r,e,t,s,a,n){r.body.push(this.parseMethod(e,t,s,a,n,"ClassMethod",!0))}pushClassPrivateMethod(r,e,t,s){let a=this.parseMethod(e,t,s,!1,!1,"ClassPrivateMethod",!0);r.body.push(a);let n=a.kind==="get"?a.static?6:2:a.kind==="set"?a.static?5:1:0;this.declareClassPrivateMethodInScope(a,n)}declareClassPrivateMethodInScope(r,e){this.classScope.declarePrivateName(this.getPrivateNameSV(r.key),e,r.key.loc.start)}parsePostMemberNameModifiers(r){}parseClassPrivateProperty(r){return this.parseInitializer(r),this.semicolon(),this.finishNode(r,"ClassPrivateProperty")}parseClassProperty(r){return this.parseInitializer(r),this.semicolon(),this.finishNode(r,"ClassProperty")}parseClassAccessorProperty(r){return this.parseInitializer(r),this.semicolon(),this.finishNode(r,"ClassAccessorProperty")}parseInitializer(r){this.scope.enter(80),this.expressionScope.enter(Jl()),this.prodParam.enter(0),r.value=this.eat(29)?this.parseMaybeAssignAllowIn():null,this.expressionScope.exit(),this.prodParam.exit(),this.scope.exit()}parseClassId(r,e,t,s=8331){if(Z(this.state.type))r.id=this.parseIdentifier(),e&&this.declareNameFromIdentifier(r.id,s);else if(t||!e)r.id=null;else throw this.raise(S.MissingClassName,this.state.startLoc)}parseClassSuper(r){r.superClass=this.eat(81)?this.parseExprSubscripts():null}parseExport(r,e){let t=this.parseMaybeImportPhase(r,!0),s=this.maybeParseExportDefaultSpecifier(r,t),a=!s||this.eat(12),n=a&&this.eatExportStar(r),u=n&&this.maybeParseExportNamespaceSpecifier(r),c=a&&(!u||this.eat(12)),f=s||n;if(n&&!u){if(s&&this.unexpected(),e)throw this.raise(S.UnsupportedDecoratorExport,r);return this.parseExportFrom(r,!0),this.finishNode(r,"ExportAllDeclaration")}let h=this.maybeParseExportNamedSpecifiers(r);s&&a&&!n&&!h&&this.unexpected(null,5),u&&c&&this.unexpected(null,98);let y;if(f||h){if(y=!1,e)throw this.raise(S.UnsupportedDecoratorExport,r);this.parseExportFrom(r,f)}else y=this.maybeParseExportDeclaration(r);if(f||h||y){var m;let o=r;if(this.checkExport(o,!0,!1,!!o.source),((m=o.declaration)==null?void 0:m.type)==="ClassDeclaration")this.maybeTakeDecorators(e,o.declaration,o);else if(e)throw this.raise(S.UnsupportedDecoratorExport,r);return this.finishNode(o,"ExportNamedDeclaration")}if(this.eat(65)){let o=r,l=this.parseExportDefaultExpression();if(o.declaration=l,l.type==="ClassDeclaration")this.maybeTakeDecorators(e,l,o);else if(e)throw this.raise(S.UnsupportedDecoratorExport,r);return this.checkExport(o,!0,!0),this.finishNode(o,"ExportDefaultDeclaration")}this.unexpected(null,5)}eatExportStar(r){return this.eat(55)}maybeParseExportDefaultSpecifier(r,e){if(e||this.isExportDefaultSpecifier()){this.expectPlugin("exportDefaultFrom",e?.loc.start);let t=e||this.parseIdentifier(!0),s=this.startNodeAtNode(t);return s.exported=t,r.specifiers=[this.finishNode(s,"ExportDefaultSpecifier")],!0}return!1}maybeParseExportNamespaceSpecifier(r){if(this.isContextual(93)){var e,t;(t=(e=r).specifiers)!=null||(e.specifiers=[]);let s=this.startNodeAt(this.state.lastTokStartLoc);return this.next(),s.exported=this.parseModuleExportName(),r.specifiers.push(this.finishNode(s,"ExportNamespaceSpecifier")),!0}return!1}maybeParseExportNamedSpecifiers(r){if(this.match(5)){let e=r;e.specifiers||(e.specifiers=[]);let t=e.exportKind==="type";return e.specifiers.push(...this.parseExportSpecifiers(t)),e.source=null,e.declaration=null,this.hasPlugin("importAssertions")&&(e.assertions=[]),!0}return!1}maybeParseExportDeclaration(r){return this.shouldParseExportDeclaration()?(r.specifiers=[],r.source=null,this.hasPlugin("importAssertions")&&(r.assertions=[]),r.declaration=this.parseExportDeclaration(r),!0):!1}isAsyncFunction(){if(!this.isContextual(95))return!1;let r=this.nextTokenInLineStart();return this.isUnparsedContextual(r,"function")}parseExportDefaultExpression(){let r=this.startNode();if(this.match(68))return this.next(),this.parseFunction(r,5);if(this.isAsyncFunction())return this.next(),this.next(),this.parseFunction(r,13);if(this.match(80))return this.parseClass(r,!0,!0);if(this.match(26))return this.hasPlugin("decorators")&&this.getPluginOption("decorators","decoratorsBeforeExport")===!0&&this.raise(S.DecoratorBeforeExport,this.state.startLoc),this.parseClass(this.maybeTakeDecorators(this.parseDecorators(!1),this.startNode()),!0,!0);if(this.match(75)||this.match(74)||this.isLet())throw this.raise(S.UnsupportedDefaultExport,this.state.startLoc);let e=this.parseMaybeAssignAllowIn();return this.semicolon(),e}parseExportDeclaration(r){return this.match(80)?this.parseClass(this.startNode(),!0,!1):this.parseStatementListItem()}isExportDefaultSpecifier(){let{type:r}=this.state;if(Z(r)){if(r===95&&!this.state.containsEsc||r===100)return!1;if((r===130||r===129)&&!this.state.containsEsc){let{type:s}=this.lookahead();if(Z(s)&&s!==98||s===5)return this.expectOnePlugin(["flow","typescript"]),!1}}else if(!this.match(65))return!1;let e=this.nextTokenStart(),t=this.isUnparsedContextual(e,"from");if(this.input.charCodeAt(e)===44||Z(this.state.type)&&t)return!0;if(this.match(65)&&t){let s=this.input.charCodeAt(this.nextTokenStartSince(e+4));return s===34||s===39}return!1}parseExportFrom(r,e){this.eatContextual(98)?(r.source=this.parseImportSource(),this.checkExport(r),this.maybeParseImportAttributes(r),this.checkJSONModuleImport(r)):e&&this.unexpected(),this.semicolon()}shouldParseExportDeclaration(){let{type:r}=this.state;return r===26&&(this.expectOnePlugin(["decorators","decorators-legacy"]),this.hasPlugin("decorators"))?(this.getPluginOption("decorators","decoratorsBeforeExport")===!0&&this.raise(S.DecoratorBeforeExport,this.state.startLoc),!0):this.isContextual(107)?(this.raise(S.UsingDeclarationExport,this.state.startLoc),!0):this.isContextual(96)&&this.startsAwaitUsing()?(this.raise(S.UsingDeclarationExport,this.state.startLoc),!0):r===74||r===75||r===68||r===80||this.isLet()||this.isAsyncFunction()}checkExport(r,e,t,s){if(e){var a;if(t){if(this.checkDuplicateExports(r,"default"),this.hasPlugin("exportDefaultFrom")){var n;let u=r.declaration;u.type==="Identifier"&&u.name==="from"&&u.end-u.start===4&&!((n=u.extra)!=null&&n.parenthesized)&&this.raise(S.ExportDefaultFromAsIdentifier,u)}}else if((a=r.specifiers)!=null&&a.length)for(let u of r.specifiers){let{exported:c}=u,f=c.type==="Identifier"?c.name:c.value;if(this.checkDuplicateExports(u,f),!s&&u.local){let{local:h}=u;h.type!=="Identifier"?this.raise(S.ExportBindingIsString,u,{localName:h.value,exportName:f}):(this.checkReservedWord(h.name,h.loc.start,!0,!1),this.scope.checkLocalExport(h))}}else if(r.declaration){let u=r.declaration;if(u.type==="FunctionDeclaration"||u.type==="ClassDeclaration"){let{id:c}=u;if(!c)throw new Error("Assertion failure");this.checkDuplicateExports(r,c.name)}else if(u.type==="VariableDeclaration")for(let c of u.declarations)this.checkDeclaration(c.id)}}}checkDeclaration(r){if(r.type==="Identifier")this.checkDuplicateExports(r,r.name);else if(r.type==="ObjectPattern")for(let e of r.properties)this.checkDeclaration(e);else if(r.type==="ArrayPattern")for(let e of r.elements)e&&this.checkDeclaration(e);else r.type==="ObjectProperty"?this.checkDeclaration(r.value):r.type==="RestElement"?this.checkDeclaration(r.argument):r.type==="AssignmentPattern"&&this.checkDeclaration(r.left)}checkDuplicateExports(r,e){this.exportedIdentifiers.has(e)&&(e==="default"?this.raise(S.DuplicateDefaultExport,r):this.raise(S.DuplicateExport,r,{exportName:e})),this.exportedIdentifiers.add(e)}parseExportSpecifiers(r){let e=[],t=!0;for(this.expect(5);!this.eat(8);){if(t)t=!1;else if(this.expect(12),this.eat(8))break;let s=this.isContextual(130),a=this.match(133),n=this.startNode();n.local=this.parseModuleExportName(),e.push(this.parseExportSpecifier(n,a,r,s))}return e}parseExportSpecifier(r,e,t,s){return this.eatContextual(93)?r.exported=this.parseModuleExportName():e?r.exported=cm(r.local):r.exported||(r.exported=st(r.local)),this.finishNode(r,"ExportSpecifier")}parseModuleExportName(){if(this.match(133)){let r=this.parseStringLiteral(this.state.value),e=r.value.match(Bm);return e&&this.raise(S.ModuleExportNameHasLoneSurrogate,r,{surrogateCharCode:e[0].charCodeAt(0)}),r}return this.parseIdentifier(!0)}isJSONModuleImport(r){return r.assertions!=null?r.assertions.some(({key:e,value:t})=>t.value==="json"&&(e.type==="Identifier"?e.name==="type":e.value==="type")):!1}checkImportReflection(r){let{specifiers:e}=r,t=e.length===1?e[0].type:null;if(r.phase==="source")t!=="ImportDefaultSpecifier"&&this.raise(S.SourcePhaseImportRequiresDefault,e[0].loc.start);else if(r.phase==="defer")t!=="ImportNamespaceSpecifier"&&this.raise(S.DeferImportRequiresNamespace,e[0].loc.start);else if(r.module){var s;t!=="ImportDefaultSpecifier"&&this.raise(S.ImportReflectionNotBinding,e[0].loc.start),((s=r.assertions)==null?void 0:s.length)>0&&this.raise(S.ImportReflectionHasAssertion,e[0].loc.start)}}checkJSONModuleImport(r){if(this.isJSONModuleImport(r)&&r.type!=="ExportAllDeclaration"){let{specifiers:e}=r;if(e!=null){let t=e.find(s=>{let a;if(s.type==="ExportSpecifier"?a=s.local:s.type==="ImportSpecifier"&&(a=s.imported),a!==void 0)return a.type==="Identifier"?a.name!=="default":a.value!=="default"});t!==void 0&&this.raise(S.ImportJSONBindingNotDefault,t.loc.start)}}}isPotentialImportPhase(r){return r?!1:this.isContextual(105)||this.isContextual(97)||this.isContextual(127)}applyImportPhase(r,e,t,s){e||(t==="module"?(this.expectPlugin("importReflection",s),r.module=!0):this.hasPlugin("importReflection")&&(r.module=!1),t==="source"?(this.expectPlugin("sourcePhaseImports",s),r.phase="source"):t==="defer"?(this.expectPlugin("deferredImportEvaluation",s),r.phase="defer"):this.hasPlugin("sourcePhaseImports")&&(r.phase=null))}parseMaybeImportPhase(r,e){if(!this.isPotentialImportPhase(e))return this.applyImportPhase(r,e,null),null;let t=this.parseIdentifier(!0),{type:s}=this.state;return(Re(s)?s!==98||this.lookaheadCharCode()===102:s!==12)?(this.resetPreviousIdentifierLeadingComments(t),this.applyImportPhase(r,e,t.name,t.loc.start),null):(this.applyImportPhase(r,e,null),t)}isPrecedingIdImportPhase(r){let{type:e}=this.state;return Z(e)?e!==98||this.lookaheadCharCode()===102:e!==12}parseImport(r){return this.match(133)?this.parseImportSourceAndAttributes(r):this.parseImportSpecifiersAndAfter(r,this.parseMaybeImportPhase(r,!1))}parseImportSpecifiersAndAfter(r,e){r.specifiers=[];let s=!this.maybeParseDefaultImportSpecifier(r,e)||this.eat(12),a=s&&this.maybeParseStarImportSpecifier(r);return s&&!a&&this.parseNamedImportSpecifiers(r),this.expectContextual(98),this.parseImportSourceAndAttributes(r)}parseImportSourceAndAttributes(r){var e;return(e=r.specifiers)!=null||(r.specifiers=[]),r.source=this.parseImportSource(),this.maybeParseImportAttributes(r),this.checkImportReflection(r),this.checkJSONModuleImport(r),this.semicolon(),this.finishNode(r,"ImportDeclaration")}parseImportSource(){return this.match(133)||this.unexpected(),this.parseExprAtom()}parseImportSpecifierLocal(r,e,t){e.local=this.parseIdentifier(),r.specifiers.push(this.finishImportSpecifier(e,t))}finishImportSpecifier(r,e,t=8201){return this.checkLVal(r.local,{in:{type:e},binding:t}),this.finishNode(r,e)}parseImportAttributes(){this.expect(5);let r=[],e=new Set;do{if(this.match(8))break;let t=this.startNode(),s=this.state.value;if(e.has(s)&&this.raise(S.ModuleAttributesWithDuplicateKeys,this.state.startLoc,{key:s}),e.add(s),this.match(133)?t.key=this.parseStringLiteral(s):t.key=this.parseIdentifier(!0),this.expect(14),!this.match(133))throw this.raise(S.ModuleAttributeInvalidValue,this.state.startLoc);t.value=this.parseStringLiteral(this.state.value),r.push(this.finishNode(t,"ImportAttribute"))}while(this.eat(12));return this.expect(8),r}parseModuleAttributes(){let r=[],e=new Set;do{let t=this.startNode();if(t.key=this.parseIdentifier(!0),t.key.name!=="type"&&this.raise(S.ModuleAttributeDifferentFromType,t.key),e.has(t.key.name)&&this.raise(S.ModuleAttributesWithDuplicateKeys,t.key,{key:t.key.name}),e.add(t.key.name),this.expect(14),!this.match(133))throw this.raise(S.ModuleAttributeInvalidValue,this.state.startLoc);t.value=this.parseStringLiteral(this.state.value),r.push(this.finishNode(t,"ImportAttribute"))}while(this.eat(12));return r}maybeParseImportAttributes(r){let e,t=!1;if(this.match(76)){if(this.hasPrecedingLineBreak()&&this.lookaheadCharCode()===40)return;this.next(),this.hasPlugin("moduleAttributes")?e=this.parseModuleAttributes():(this.expectImportAttributesPlugin(),e=this.parseImportAttributes()),t=!0}else if(this.isContextual(94)&&!this.hasPrecedingLineBreak())this.hasPlugin("importAttributes")?(this.getPluginOption("importAttributes","deprecatedAssertSyntax")!==!0&&this.raise(S.ImportAttributesUseAssert,this.state.startLoc),this.addExtra(r,"deprecatedAssertSyntax",!0)):this.expectOnePlugin(["importAttributes","importAssertions"]),this.next(),e=this.parseImportAttributes();else if(this.hasPlugin("importAttributes")||this.hasPlugin("importAssertions"))e=[];else if(this.hasPlugin("moduleAttributes"))e=[];else return;!t&&this.hasPlugin("importAssertions")?r.assertions=e:r.attributes=e}maybeParseDefaultImportSpecifier(r,e){if(e){let t=this.startNodeAtNode(e);return t.local=e,r.specifiers.push(this.finishImportSpecifier(t,"ImportDefaultSpecifier")),!0}else if(Re(this.state.type))return this.parseImportSpecifierLocal(r,this.startNode(),"ImportDefaultSpecifier"),!0;return!1}maybeParseStarImportSpecifier(r){if(this.match(55)){let e=this.startNode();return this.next(),this.expectContextual(93),this.parseImportSpecifierLocal(r,e,"ImportNamespaceSpecifier"),!0}return!1}parseNamedImportSpecifiers(r){let e=!0;for(this.expect(5);!this.eat(8);){if(e)e=!1;else{if(this.eat(14))throw this.raise(S.DestructureNamedImport,this.state.startLoc);if(this.expect(12),this.eat(8))break}let t=this.startNode(),s=this.match(133),a=this.isContextual(130);t.imported=this.parseModuleExportName();let n=this.parseImportSpecifier(t,s,r.importKind==="type"||r.importKind==="typeof",a,void 0);r.specifiers.push(n)}}parseImportSpecifier(r,e,t,s,a){if(this.eatContextual(93))r.local=this.parseIdentifier();else{let{imported:n}=r;if(e)throw this.raise(S.ImportBindingIsString,r,{importName:n.value});this.checkReservedWord(n.name,r.loc.start,!0,!0),r.local||(r.local=st(n))}return this.finishImportSpecifier(r,"ImportSpecifier",a)}isThisParam(r){return r.type==="Identifier"&&r.name==="this"}},js=class extends tn{constructor(r,e){r=Fm(r),super(r,e),this.options=r,this.initializeScopes(),this.plugins=Om(this.options.plugins),this.filename=r.sourceFilename}getScopeHandler(){return _r}parse(){this.enterInitialScopes();let r=this.startNode(),e=this.startNode();return this.nextToken(),r.errors=null,this.parseTopLevel(r,e),r.errors=this.state.errors,r.comments.length=this.state.commentsLen,r}};function Om(i){let r=new Map;for(let e of i){let[t,s]=Array.isArray(e)?e:[e,{}];r.has(t)||r.set(t,s||{})}return r}function _m(i,r){var e;if(((e=r)==null?void 0:e.sourceType)==="unambiguous"){r=Object.assign({},r);try{r.sourceType="module";let t=Mr(r,i),s=t.parse();if(t.sawUnambiguousESM)return s;if(t.ambiguousScriptDifferentAst)try{return r.sourceType="script",Mr(r,i).parse()}catch{}else s.program.sourceType="script";return s}catch(t){try{return r.sourceType="script",Mr(r,i).parse()}catch{}throw t}}else return Mr(r,i).parse()}function jm(i,r){let e=Mr(r,i);return e.options.strictMode&&(e.state.strict=!0),e.getExpression()}function Rm(i){let r={};for(let e of Object.keys(i))r[e]=Ze(i[e]);return r}var Um=Rm(Md);function Mr(i,r){let e=js;return i!=null&&i.plugins&&(Im(i.plugins),e=qm(i.plugins)),new e(i,r)}var Il={};function qm(i){let r=Nm.filter(s=>fe(i,s)),e=r.join("/"),t=Il[e];if(!t){t=js;for(let s of r)t=Wl[s](t);Il[e]=t}return t}Rr.parse=_m;Rr.parseExpression=jm;Rr.tokTypes=Um});var Gl=O(wt=>{"use strict";Object.defineProperty(wt,"__esModule",{value:!0});wt.parse=wt.parser=void 0;var zm=(X(),V(J)),Jm=zm.__importDefault(Ia());wt.parser=function(){try{return Hl()}catch{try{return require("babylon")}catch{throw new Error("Install @babel/parser to use the `typescript`, `flow`, or `babel` parsers")}}}();function Xm(i,r){var e=(0,Jm.default)(r);return e.plugins.push("jsx","flow","decoratorAutoAccessors"),wt.parser.parse(i,e)}wt.parse=Xm});var Yl=O(sr=>{"use strict";Object.defineProperty(sr,"__esModule",{value:!0});sr.parse=sr.parser=void 0;var Vm=(X(),V(J)),$l=Gl();Object.defineProperty(sr,"parser",{enumerable:!0,get:function(){return $l.parser}});var Km=Vm.__importDefault(Ia());function Wm(i,r){var e=(0,Km.default)(r);return e.plugins.push("jsx","typescript"),$l.parser.parse(i,e)}sr.parse=Wm});var Rs=Ks(dl(),1),Ql=Ks(Yl(),1),dn=Ks(require("fs"),1),Ur;process.argv.length==3&&(Ur=dn.default.readFileSync(process.argv[2],"utf-8"));Ur||(Ur=dn.default.readFileSync(0,"utf-8"));Ur||(console.error("Usage: node find_string_tokens.js <filename> | STDIN"),process.exit(1));var Hm=(0,Rs.parse)(Ur,{parser:Ql.default}),fn=[];(0,Rs.visit)(Hm,{visitLiteral(i){let{node:r}=i;typeof r.value=="string"&&fn.push({type:"literal",value:r.value,raw:r.raw||r.extra?.raw,loc:{start:r.loc.start,end:r.loc.end,index:r.loc.index}}),this.traverse(i)},visitTemplateLiteral(i){let{node:r}=i;fn.push({type:"template",quasis:r.quasis.map(e=>({value:e.value,raw:e.raw||e.extra?.raw,loc:{start:e.loc.start,end:e.loc.end,index:e.loc.index}})),expressions:r.expressions.map(e=>({loc:{start:e.loc.start,end:e.loc.end,index:e.loc.index}}))}),this.traverse(i)}});process.stdout.write(JSON.stringify(fn,null," "));