@turbo/gen 2.9.6 → 2.9.7-canary.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,29 @@
1
+ const e=require(`./src-DlP4pjzy.js`),t=require(`./source-map-Bu3j_In8.js`),n=e.__toESM(require(`events`)),r=e.__toESM(require(`path`)),i=e.__toESM(require(`fs`)),a=e.__toESM(require(`util`)),o=e.__toESM(require(`stream`)),s=e.__toESM(require(`os`)),c=e.__toESM(require(`url`)),l=e.__toESM(require(`https`)),u=e.__toESM(require(`http`)),d=e.__toESM(require(`net`)),f=e.__toESM(require(`tls`)),p=e.__toESM(require(`crypto`)),m=e.__toESM(require(`dns`)),h=e=>t=>{if(t=String(t),!/^data:/i.test(t))throw TypeError('`uri` does not appear to be a Data URI (must begin with "data:")');t=t.replace(/\r?\n/g,``);let n=t.indexOf(`,`);if(n===-1||n<=4)throw TypeError(`malformed data: URI`);let r=t.substring(5,n).split(`;`),i=``,a=!1,o=r[0]||`text/plain`,s=o;for(let e=1;e<r.length;e++)r[e]===`base64`?a=!0:r[e]&&(s+=`;${r[e]}`,r[e].indexOf(`charset=`)===0&&(i=r[e].substring(8)));!r[0]&&!i.length&&(s+=`;charset=US-ASCII`,i=`US-ASCII`);let c=unescape(t.substring(n+1)),l=a?e.base64ToArrayBuffer(c):e.stringToBuffer(c);return{type:o,typeFull:s,charset:i,buffer:l}};function g(e){if(e.byteLength===e.buffer.byteLength)return e.buffer;let t=new ArrayBuffer(e.byteLength),n=new Uint8Array(t);return n.set(e),t}function _(e){return g(Buffer.from(e,`base64`))}function v(e){return g(Buffer.from(e,`ascii`))}const y=h({stringToBuffer:v,base64ToArrayBuffer:_});var b=class extends Error{constructor(e){super(e||`Source has not been modified since the provied "cache", re-use previous results`),this.code=`ENOTMODIFIED`}},x=e.__toESM(e.require_src(),1);const S=(0,x.default)(`get-uri:data`);var C=class extends o.Readable{constructor(e,t){super(),this.push(t),this.push(null),this.hash=e}};const w=async({href:e},{cache:t}={})=>{let n=(0,p.createHash)(`sha1`);n.update(e);let r=n.digest(`hex`);if(S(`generated SHA1 hash for "data:" URI: %o`,r),t?.hash===r)throw S(`got matching cache SHA1 hash: %o`,r),new b;{S(`creating Readable stream from "data:" URI buffer`);let{buffer:t}=y(e);return new C(r,Buffer.from(t))}};var T=class extends Error{constructor(e){super(e||`File does not exist at the specified endpoint`),this.code=`ENOTFOUND`}},ee=e.__toESM(e.require_src(),1);const E=(0,ee.default)(`get-uri:file`),D=async({href:e},t={})=>{let{cache:n,flags:r=`r`,mode:a=438}=t;try{let o=(0,c.fileURLToPath)(e);E(`Normalized pathname: %o`,o);let s=await i.promises.open(o,r,a),l=await s.stat();if(n&&n.stat&&l&&te(n.stat,l))throw await s.close(),new b;let u=(0,i.createReadStream)(o,{autoClose:!0,...t,fd:s});return u.stat=l,u}catch(e){throw e.code===`ENOENT`?new T:e}};function te(e,t){return+e.mtime==+t.mtime}var O=e.__commonJSMin(exports=>{Object.defineProperty(exports,`__esModule`,{value:!0}),exports.parseControlResponse=n,exports.isSingleLine=r,exports.isMultiline=i,exports.positiveCompletion=a,exports.positiveIntermediate=o;let t=`
2
+ `;function n(e){let n=e.split(/\r?\n/).filter(s),a=[],o=0,c;for(let e=0;e<n.length;e++){let s=n[e];if(c)c.test(s)&&(c=void 0,a.push(n.slice(o,e+1).join(t)));else if(i(s)){let t=s.substr(0,3);c=RegExp(`^${t}(?:$| )`),o=e}else r(s)&&a.push(s)}let l=c?n.slice(o).join(t)+t:``;return{messages:a,rest:l}}function r(e){return/^\d\d\d(?:$| )/.test(e)}function i(e){return/^\d\d\d-/.test(e)}function a(e){return e>=200&&e<300}function o(e){return e>=300&&e<400}function s(e){return e.trim()!==``}}),k=e.__commonJSMin(exports=>{Object.defineProperty(exports,`__esModule`,{value:!0}),exports.FTPContext=exports.FTPError=void 0;let t=require(`net`),n=O();var r=class extends Error{constructor(e){super(e.message),this.name=this.constructor.name,this.code=e.code}};exports.FTPError=r;function i(){}var a=class{constructor(e=0,t=`utf8`){this.timeout=e,this.verbose=!1,this.ipFamily=void 0,this.tlsOptions={},this._partialResponse=``,this._encoding=t,this._socket=this.socket=this._newSocket(),this._dataSocket=void 0}close(){let e=this._task?`User closed client during task`:`User closed client`,t=Error(e);this.closeWithError(t)}closeWithError(e){this._closingError||(this._closingError=e,this._closeControlSocket(),this._closeSocket(this._dataSocket),this._passToHandler(e),this._stopTrackingTask())}get closed(){return this.socket.remoteAddress===void 0||this._closingError!==void 0}reset(){this.socket=this._newSocket()}get socket(){return this._socket}set socket(e){if(this.dataSocket=void 0,this.tlsOptions={},this._partialResponse=``,this._socket){let t=e.localPort===this._socket.localPort;t?this._removeSocketListeners(this.socket):this._closeControlSocket()}e&&(this._closingError=void 0,e.setTimeout(0),e.setEncoding(this._encoding),e.setKeepAlive(!0),e.on(`data`,e=>this._onControlSocketData(e)),e.on(`end`,()=>this.closeWithError(Error(`Server sent FIN packet unexpectedly, closing connection.`))),e.on(`close`,e=>{e||this.closeWithError(Error(`Server closed connection unexpectedly.`))}),this._setupDefaultErrorHandlers(e,`control socket`)),this._socket=e}get dataSocket(){return this._dataSocket}set dataSocket(e){this._closeSocket(this._dataSocket),e&&(e.setTimeout(0),this._setupDefaultErrorHandlers(e,`data socket`)),this._dataSocket=e}get encoding(){return this._encoding}set encoding(e){this._encoding=e,this.socket&&this.socket.setEncoding(e)}send(e){if(/[\r\n\0]/.test(e))throw Error(`Invalid command: Contains control characters. (${e})`);let t=e.startsWith(`PASS`),n=t?`> PASS ###`:`> ${e}`;this.log(n),this._socket.write(e+`\r
3
+ `,this.encoding)}request(e){return this.handle(e,(e,t)=>{e instanceof Error?t.reject(e):t.resolve(e)})}handle(e,t){if(this._task){let e=Error(`User launched a task while another one is still running. Forgot to use 'await' or '.then()'?`);e.stack+=`\nRunning task launched at: ${this._task.stack}`,this.closeWithError(e)}return new Promise((n,r)=>{if(this._task={stack:Error().stack||`Unknown call stack`,responseHandler:t,resolver:{resolve:e=>{this._stopTrackingTask(),n(e)},reject:e=>{this._stopTrackingTask(),r(e)}}},this._closingError){let e=Error(`Client is closed because ${this._closingError.message}`);e.stack+=`\nClosing reason: ${this._closingError.stack}`,e.code=this._closingError.code===void 0?`0`:this._closingError.code,this._passToHandler(e);return}this.socket.setTimeout(this.timeout),e&&this.send(e)})}log(e){this.verbose&&console.log(e)}get hasTLS(){return`encrypted`in this._socket}_stopTrackingTask(){this.socket.setTimeout(0),this._task=void 0}_onControlSocketData(e){this.log(`< ${e}`);let t=this._partialResponse+e,i=(0,n.parseControlResponse)(t);this._partialResponse=i.rest;for(let e of i.messages){let t=parseInt(e.substr(0,3),10),n={code:t,message:e},i=t>=400?new r(n):void 0;this._passToHandler(i||n)}}_passToHandler(e){this._task&&this._task.responseHandler(e,this._task.resolver)}_setupDefaultErrorHandlers(e,t){e.once(`error`,e=>{e.message+=` (${t})`,this.closeWithError(e)}),e.once(`close`,e=>{e&&this.closeWithError(Error(`Socket closed due to transmission error (${t})`))}),e.once(`timeout`,()=>{e.destroy(),this.closeWithError(Error(`Timeout (${t})`))})}_closeControlSocket(){this._removeSocketListeners(this._socket),this._socket.on(`error`,i),this.send(`QUIT`),this._closeSocket(this._socket)}_closeSocket(e){e&&(this._removeSocketListeners(e),e.on(`error`,i),e.destroy())}_removeSocketListeners(e){e.removeAllListeners(),e.removeAllListeners(`timeout`),e.removeAllListeners(`data`),e.removeAllListeners(`end`),e.removeAllListeners(`error`),e.removeAllListeners(`close`),e.removeAllListeners(`connect`)}_newSocket(){return new t.Socket}};exports.FTPContext=a}),A=e.__commonJSMin(exports=>{Object.defineProperty(exports,`__esModule`,{value:!0}),exports.FileInfo=exports.FileType=void 0;var t;(function(e){e[e.Unknown=0]=`Unknown`,e[e.File=1]=`File`,e[e.Directory=2]=`Directory`,e[e.SymbolicLink=3]=`SymbolicLink`})(t||(exports.FileType=t={}));var n=class{constructor(e){this.name=e,this.type=t.Unknown,this.size=0,this.rawModifiedAt=``,this.modifiedAt=void 0,this.permissions=void 0,this.hardLinkCount=void 0,this.link=void 0,this.group=void 0,this.user=void 0,this.uniqueID=void 0,this.name=e}get isDirectory(){return this.type===t.Directory}get isSymbolicLink(){return this.type===t.SymbolicLink}get isFile(){return this.type===t.File}get date(){return this.rawModifiedAt}set date(e){this.rawModifiedAt=e}};exports.FileInfo=n,n.UnixPermission={Read:4,Write:2,Execute:1}}),j=e.__commonJSMin(exports=>{Object.defineProperty(exports,`__esModule`,{value:!0}),exports.testLine=r,exports.parseLine=i,exports.transformList=a;let t=A(),n=RegExp(`(\\S+)\\s+(\\S+)\\s+(?:(<DIR>)|([0-9]+))\\s+(\\S.*)`);function r(e){return/^\d{2}/.test(e)&&n.test(e)}function i(e){let r=e.match(n);if(r===null)return;let i=r[5];if(i===`.`||i===`..`)return;let a=new t.FileInfo(i),o=r[3];return o===`<DIR>`?(a.type=t.FileType.Directory,a.size=0):(a.type=t.FileType.File,a.size=parseInt(r[4],10)),a.rawModifiedAt=r[1]+` `+r[2],a}function a(e){return e}}),ne=e.__commonJSMin(exports=>{Object.defineProperty(exports,`__esModule`,{value:!0}),exports.testLine=o,exports.parseLine=s,exports.transformList=c;let t=A(),n=`月`,r=`日`,i=`年`,a=RegExp(`([bcdelfmpSs-])(((r|-)(w|-)([xsStTL-]))((r|-)(w|-)([xsStTL-]))((r|-)(w|-)([xsStTL-]?)))\\+?\\s*(\\d+)\\s+(?:(\\S+(?:\\s\\S+)*?)\\s+)?(?:(\\S+(?:\\s\\S+)*)\\s+)?(\\d+(?:,\\s*\\d+)?)\\s+((?:\\d+[-/]\\d+[-/]\\d+)|(?:\\S{3}\\s+\\d{1,2})|(?:\\d{1,2}\\s+\\S{3})|(?:\\d{1,2}`+n+`\\s+\\d{1,2}`+r+`))\\s+((?:\\d+(?::\\d+)?)|(?:\\d{4}`+i+`))\\s(.*)`);function o(e){return a.test(e)}function s(e){let n=e.match(a);if(n===null)return;let r=n[21];if(r===`.`||r===`..`)return;let i=new t.FileInfo(r);switch(i.size=parseInt(n[18],10),i.user=n[16],i.group=n[17],i.hardLinkCount=parseInt(n[15],10),i.rawModifiedAt=n[19]+` `+n[20],i.permissions={user:l(n[4],n[5],n[6]),group:l(n[8],n[9],n[10]),world:l(n[12],n[13],n[14])},n[1].charAt(0)){case`d`:i.type=t.FileType.Directory;break;case`e`:i.type=t.FileType.SymbolicLink;break;case`l`:i.type=t.FileType.SymbolicLink;break;case`b`:case`c`:i.type=t.FileType.File;break;case`f`:case`-`:i.type=t.FileType.File;break;default:i.type=t.FileType.Unknown}if(i.isSymbolicLink){let e=r.indexOf(` -> `);e!==-1&&(i.name=r.substring(0,e),i.link=r.substring(e+4))}return i}function c(e){return e}function l(e,n,r){let i=0;e!==`-`&&(i+=t.FileInfo.UnixPermission.Read),n!==`-`&&(i+=t.FileInfo.UnixPermission.Write);let a=r.charAt(0);return a!==`-`&&a.toUpperCase()!==a&&(i+=t.FileInfo.UnixPermission.Execute),i}}),M=e.__commonJSMin(exports=>{Object.defineProperty(exports,`__esModule`,{value:!0}),exports.testLine=a,exports.parseLine=o,exports.transformList=s,exports.parseMLSxDate=c;let t=A();function n(e,t){t.size=parseInt(e,10)}let r={size:n,sizd:n,unique:(e,t)=>{t.uniqueID=e},modify:(e,t)=>{t.modifiedAt=c(e),t.rawModifiedAt=t.modifiedAt.toISOString()},type:(e,n)=>{if(e.startsWith(`OS.unix=slink`))return n.type=t.FileType.SymbolicLink,n.link=e.substr(e.indexOf(`:`)+1),1;switch(e){case`file`:n.type=t.FileType.File;break;case`dir`:n.type=t.FileType.Directory;break;case`OS.unix=symlink`:n.type=t.FileType.SymbolicLink;break;case`cdir`:case`pdir`:return 2;default:n.type=t.FileType.Unknown}return 1},"unix.mode":(e,t)=>{let n=e.substr(-3);t.permissions={user:parseInt(n[0],10),group:parseInt(n[1],10),world:parseInt(n[2],10)}},"unix.ownername":(e,t)=>{t.user=e},"unix.owner":(e,t)=>{t.user===void 0&&(t.user=e)},get"unix.uid"(){return this[`unix.owner`]},"unix.groupname":(e,t)=>{t.group=e},"unix.group":(e,t)=>{t.group===void 0&&(t.group=e)},get"unix.gid"(){return this[`unix.group`]}};function i(e,t){let n=e.indexOf(t),r=e.substr(0,n),i=e.substr(n+t.length);return[r,i]}function a(e){return/^\S+=\S+;/.test(e)||e.startsWith(` `)}function o(e){let[n,a]=i(e,` `);if(a===``||a===`.`||a===`..`)return;let o=new t.FileInfo(a),s=n.split(`;`);for(let e of s){let[t,n]=i(e,`=`);if(!n)continue;let a=r[t.toLowerCase()];if(!a)continue;let s=a(n,o);if(s===2)return}return o}function s(e){let t=new Map;for(let n of e)!n.isSymbolicLink&&n.uniqueID!==void 0&&t.set(n.uniqueID,n);let n=[];for(let r of e){if(r.isSymbolicLink&&r.uniqueID!==void 0&&r.link===void 0){let e=t.get(r.uniqueID);e!==void 0&&(r.link=e.name)}let e=!r.name.includes(`/`);e&&n.push(r)}return n}function c(e){return new Date(Date.UTC(+e.slice(0,4),e.slice(4,6)-1,+e.slice(6,8),+e.slice(8,10),+e.slice(10,12),+e.slice(12,14),+e.slice(15,18)))}}),re=e.__commonJSMin(exports=>{var t=Object.create?function(e,t,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(t,n);(!i||(`get`in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,r,i)}:function(e,t,n,r){r===void 0&&(r=n),e[r]=t[n]},n=Object.create?function(e,t){Object.defineProperty(e,`default`,{enumerable:!0,value:t})}:function(e,t){e.default=t},r=function(){var e=function(t){return e=Object.getOwnPropertyNames||function(e){var t=[];for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[t.length]=n);return t},e(t)};return function(r){if(r&&r.__esModule)return r;var i={};if(r!=null)for(var a=e(r),o=0;o<a.length;o++)a[o]!==`default`&&t(i,r,a[o]);return n(i,r),i}}();Object.defineProperty(exports,`__esModule`,{value:!0}),exports.parseList=f;let i=r(j()),a=r(ne()),o=r(M()),s=[i,a,o];function c(e,t){return t.find(t=>t.testLine(e)===!0)}function l(e){return e.trim()!==``}function u(e){return!e.startsWith(`total`)}let d=/\r?\n/;function f(e){let t=e.split(d).filter(l).filter(u);if(t.length===0)return[];let n=t[t.length-1],r=c(n,s);if(!r)throw Error("This library only supports MLSD, Unix- or DOS-style directory listing. Your FTP server seems to be using another format. You can see the transmitted listing when setting `client.ftp.verbose = true`. You can then provide a custom parser to `client.parseList`, see the documentation for details.");let i=t.map(r.parseLine).filter(e=>e!==void 0);return r.transformList(i)}}),ie=e.__commonJSMin(exports=>{Object.defineProperty(exports,`__esModule`,{value:!0}),exports.ProgressTracker=void 0;var t=class{constructor(){this.bytesOverall=0,this.intervalMs=500,this.onStop=r,this.onHandle=r}reportTo(e=r){this.onHandle=e}start(e,t,r){let i=0;this.onStop=n(this.intervalMs,()=>{let n=e.bytesRead+e.bytesWritten;this.bytesOverall+=n-i,i=n,this.onHandle({name:t,type:r,bytes:n,bytesOverall:this.bytesOverall})})}stop(){this.onStop(!1)}updateAndStop(){this.onStop(!0)}};exports.ProgressTracker=t;function n(e,t){let n=setInterval(t,e),i=e=>{clearInterval(n),e&&t(),t=r};return t(),i}function r(){}}),ae=e.__commonJSMin(exports=>{Object.defineProperty(exports,`__esModule`,{value:!0}),exports.StringWriter=void 0;let t=require(`stream`);var n=class extends t.Writable{constructor(){super(...arguments),this.buf=Buffer.alloc(0)}_write(e,t,n){e instanceof Buffer?(this.buf=Buffer.concat([this.buf,e]),n(null)):n(Error(`StringWriter expects chunks of type 'Buffer'.`))}getText(e){return this.buf.toString(e)}};exports.StringWriter=n}),N=e.__commonJSMin(exports=>{Object.defineProperty(exports,`__esModule`,{value:!0}),exports.describeTLS=n,exports.describeAddress=r,exports.upgradeSocket=i,exports.ipIsPrivateV4Address=a;let t=require(`tls`);function n(e){if(e instanceof t.TLSSocket){let t=e.getProtocol();return t||`Server socket or disconnected client socket`}return`No encryption`}function r(e){return e.remoteFamily===`IPv6`?`[${e.remoteAddress}]:${e.remotePort}`:`${e.remoteAddress}:${e.remotePort}`}function i(e,n){return new Promise((r,i)=>{let a=Object.assign({},n,{socket:e}),o=(0,t.connect)(a,()=>{let e=a.rejectUnauthorized!==!1;e&&!o.authorized?i(o.authorizationError):(o.removeAllListeners(`error`),r(o))}).once(`error`,e=>{i(e)})})}function a(e=``){e.startsWith(`::ffff:`)&&(e=e.substr(7));let t=e.split(`.`).map(e=>parseInt(e,10));return t[0]===10||t[0]===172&&t[1]>=16&&t[1]<=31||t[0]===192&&t[1]===168||e===`127.0.0.1`}}),oe=e.__commonJSMin(exports=>{Object.defineProperty(exports,`__esModule`,{value:!0}),exports.enterPassiveModeIPv6=a,exports.parseEpsvResponse=o,exports.enterPassiveModeIPv4=s,exports.enterPassiveModeIPv4_forceControlHostIP=c,exports.parsePasvResponse=l,exports.connectForPassiveTransfer=u,exports.uploadFrom=f,exports.downloadTo=p;let t=N(),n=require(`stream`),r=require(`tls`),i=O();async function a(e){let t=await e.request(`EPSV`),n=o(t.message);if(!n)throw Error(`Can't parse EPSV response: `+t.message);let r=e.socket.remoteAddress;if(r===void 0)throw Error(`Control socket is disconnected, can't get remote address.`);return await u(r,n,e),t}function o(e){let t=e.match(/[|!]{3}(.+)[|!]/);if(t===null||t[1]===void 0)throw Error(`Can't parse response to 'EPSV': ${e}`);let n=parseInt(t[1],10);if(Number.isNaN(n))throw Error(`Can't parse response to 'EPSV', port is not a number: ${e}`);return n}async function s(e){let n=await e.request(`PASV`),r=l(n.message);if(!r)throw Error(`Can't parse PASV response: `+n.message);let i=e.socket.remoteAddress;return(0,t.ipIsPrivateV4Address)(r.host)&&i&&!(0,t.ipIsPrivateV4Address)(i)&&(r.host=i),await u(r.host,r.port,e),n}async function c(e){let t=await e.request(`PASV`),n=l(t.message);if(!n)throw Error(`Can't parse PASV response: `+t.message);let r=e.socket.remoteAddress;if(r===void 0)throw Error(`Control socket is disconnected, can't get remote address.`);return await u(r,n.port,e),t}function l(e){let t=e.match(/([-\d]+,[-\d]+,[-\d]+,[-\d]+),([-\d]+),([-\d]+)/);if(t===null||t.length!==4)throw Error(`Can't parse response to 'PASV': ${e}`);return{host:t[1].replace(/,/g,`.`),port:(parseInt(t[2],10)&255)*256+(parseInt(t[3],10)&255)}}function u(e,t,n){return new Promise((i,a)=>{let o=n._newSocket(),s=function(e){e.message=`Can't open data connection in passive mode: `+e.message,a(e)},c=function(){o.destroy(),a(Error(`Timeout when trying to open data connection to ${e}:${t}`))};o.setTimeout(n.timeout),o.on(`error`,s),o.on(`timeout`,c),o.connect({port:t,host:e,family:n.ipFamily},()=>{n.socket instanceof r.TLSSocket&&(o=(0,r.connect)(Object.assign({},n.tlsOptions,{socket:o,session:n.socket.getSession()}))),o.removeListener(`error`,s),o.removeListener(`timeout`,c),n.dataSocket=o,i()})})}var d=class{constructor(e,t){this.ftp=e,this.progress=t,this.response=void 0,this.dataTransferDone=!1}onDataStart(e,t){if(this.ftp.dataSocket===void 0)throw Error(`Data transfer should start but there is no data connection.`);this.ftp.socket.setTimeout(0),this.ftp.dataSocket.setTimeout(this.ftp.timeout),this.progress.start(this.ftp.dataSocket,e,t)}onDataDone(e){this.progress.updateAndStop(),this.ftp.socket.setTimeout(this.ftp.timeout),this.ftp.dataSocket&&this.ftp.dataSocket.setTimeout(0),this.dataTransferDone=!0,this.tryResolve(e)}onControlDone(e,t){this.response=t,this.tryResolve(e)}onError(e,t){this.progress.updateAndStop(),this.ftp.socket.setTimeout(this.ftp.timeout),this.ftp.dataSocket=void 0,e.reject(t)}onUnexpectedRequest(e){let t=Error(`Unexpected FTP response is requesting an answer: ${e.message}`);this.ftp.closeWithError(t)}tryResolve(e){let t=this.dataTransferDone&&this.response!==void 0;t&&(this.ftp.dataSocket=void 0,e.resolve(this.response))}};function f(e,r){let a=new d(r.ftp,r.tracker),o=`${r.command} ${r.remotePath}`;return r.ftp.handle(o,(o,s)=>{if(o instanceof Error)a.onError(s,o);else if(o.code===150||o.code===125){let i=r.ftp.dataSocket;if(!i){a.onError(s,Error(`Upload should begin but no data connection is available.`));return}let o=`getCipher`in i?i.getCipher()!==void 0:!0;m(o,i,`secureConnect`,()=>{r.ftp.log(`Uploading to ${(0,t.describeAddress)(i)} (${(0,t.describeTLS)(i)})`),a.onDataStart(r.remotePath,r.type),(0,n.pipeline)(e,i,e=>{e?a.onError(s,e):a.onDataDone(s)})})}else (0,i.positiveCompletion)(o.code)?a.onControlDone(s,o):(0,i.positiveIntermediate)(o.code)&&a.onUnexpectedRequest(o)})}function p(e,r){if(!r.ftp.dataSocket)throw Error(`Download will be initiated but no data connection is available.`);let a=new d(r.ftp,r.tracker);return r.ftp.handle(r.command,(o,s)=>{if(o instanceof Error)a.onError(s,o);else if(o.code===150||o.code===125){let i=r.ftp.dataSocket;if(!i){a.onError(s,Error(`Download should begin but no data connection is available.`));return}r.ftp.log(`Downloading from ${(0,t.describeAddress)(i)} (${(0,t.describeTLS)(i)})`),a.onDataStart(r.remotePath,r.type),(0,n.pipeline)(i,e,e=>{e?a.onError(s,e):a.onDataDone(s)})}else o.code===350?r.ftp.send(`RETR `+r.remotePath):(0,i.positiveCompletion)(o.code)?a.onControlDone(s,o):(0,i.positiveIntermediate)(o.code)&&a.onUnexpectedRequest(o)})}function m(e,t,n,r){e===!0?r():t.once(n,()=>r())}}),se=e.__commonJSMin(exports=>{Object.defineProperty(exports,`__esModule`,{value:!0}),exports.Client=void 0;let t=require(`fs`),n=require(`path`),r=require(`tls`),i=require(`util`),a=k(),o=re(),s=ie(),c=ae(),l=M(),u=N(),d=oe(),f=O(),p=(0,i.promisify)(t.readdir),m=(0,i.promisify)(t.mkdir),h=(0,i.promisify)(t.stat),g=(0,i.promisify)(t.open),_=(0,i.promisify)(t.close),v=(0,i.promisify)(t.unlink),y={allowSeparateTransferHost:!0},b=()=>[`LIST -a`,`LIST`],x=()=>[`MLSD`,`LIST -a`,`LIST`];var S=class{constructor(e=3e4,t=y){this.availableListCommands=b(),this.ftp=new a.FTPContext(e),this.prepareTransfer=this._enterFirstCompatibleMode([d.enterPassiveModeIPv6,t.allowSeparateTransferHost?d.enterPassiveModeIPv4:d.enterPassiveModeIPv4_forceControlHostIP]),this.parseList=o.parseList,this._progressTracker=new s.ProgressTracker}close(){this.ftp.close(),this._progressTracker.stop()}get closed(){return this.ftp.closed}connect(e=`localhost`,t=21){return this.ftp.reset(),this.ftp.socket.connect({host:e,port:t,family:this.ftp.ipFamily},()=>this.ftp.log(`Connected to ${(0,u.describeAddress)(this.ftp.socket)} (${(0,u.describeTLS)(this.ftp.socket)})`)),this._handleConnectResponse()}connectImplicitTLS(e=`localhost`,t=21,n={}){return this.ftp.reset(),this.ftp.socket=(0,r.connect)(t,e,n,()=>this.ftp.log(`Connected to ${(0,u.describeAddress)(this.ftp.socket)} (${(0,u.describeTLS)(this.ftp.socket)})`)),this.ftp.tlsOptions=n,this._handleConnectResponse()}_handleConnectResponse(){return this.ftp.handle(void 0,(e,t)=>{e instanceof Error?t.reject(e):(0,f.positiveCompletion)(e.code)?t.resolve(e):t.reject(new a.FTPError(e))})}send(e,t=!1){return t?(this.ftp.log(`Deprecated call using send(command, flag) with boolean flag to ignore errors. Use sendIgnoringError(command).`),this.sendIgnoringError(e)):this.ftp.request(e)}sendIgnoringError(e){return this.ftp.handle(e,(e,t)=>{e instanceof a.FTPError?t.resolve({code:e.code,message:e.message}):e instanceof Error?t.reject(e):t.resolve(e)})}async useTLS(e={},t=`AUTH TLS`){let n=await this.send(t);return this.ftp.socket=await(0,u.upgradeSocket)(this.ftp.socket,e),this.ftp.tlsOptions=e,this.ftp.log(`Control socket is using: ${(0,u.describeTLS)(this.ftp.socket)}`),n}login(e=`anonymous`,t=`guest`){return this.ftp.log(`Login security: ${(0,u.describeTLS)(this.ftp.socket)}`),this.ftp.handle(`USER `+e,(e,n)=>{e instanceof Error?n.reject(e):(0,f.positiveCompletion)(e.code)?n.resolve(e):e.code===331?this.ftp.send(`PASS `+t):n.reject(new a.FTPError(e))})}async useDefaultSettings(){let e=await this.features(),t=e.has(`MLST`);this.availableListCommands=t?x():b(),await this.send(`TYPE I`),await this.sendIgnoringError(`STRU F`),await this.sendIgnoringError(`OPTS UTF8 ON`),t&&await this.sendIgnoringError(`OPTS MLST type;size;modify;unique;unix.mode;unix.owner;unix.group;unix.ownername;unix.groupname;`),this.ftp.hasTLS&&(await this.sendIgnoringError(`PBSZ 0`),await this.sendIgnoringError(`PROT P`))}async access(e={}){var t,n;let r=e.secure===!0,i=e.secure===`implicit`,a;if(a=i?await this.connectImplicitTLS(e.host,e.port,e.secureOptions):await this.connect(e.host,e.port),r){let r=(t=e.secureOptions)??{};r.host=(n=r.host)??e.host,await this.useTLS(r)}return await this.sendIgnoringError(`OPTS UTF8 ON`),await this.login(e.user,e.password),await this.useDefaultSettings(),a}async pwd(){let e=await this.send(`PWD`),t=e.message.match(/"(.+)"/);if(t===null||t[1]===void 0)throw Error(`Can't parse response to command 'PWD': ${e.message}`);return t[1]}async features(){let e=await this.sendIgnoringError(`FEAT`),t=new Map;return e.code<400&&(0,f.isMultiline)(e.message)&&e.message.split(`
4
+ `).slice(1,-1).forEach(e=>{let n=e.trim().split(` `);t.set(n[0],n[1]||``)}),t}async cd(e){let t=await this.protectWhitespace(e);return this.send(`CWD `+t)}async cdup(){return this.send(`CDUP`)}async lastMod(e){let t=await this.protectWhitespace(e),n=await this.send(`MDTM ${t}`),r=n.message.slice(4);return(0,l.parseMLSxDate)(r)}async size(e){let t=await this.protectWhitespace(e),n=`SIZE ${t}`,r=await this.send(n),i=parseInt(r.message.slice(4),10);if(Number.isNaN(i))throw Error(`Can't parse response to command '${n}' as a numerical value: ${r.message}`);return i}async rename(e,t){let n=await this.protectWhitespace(e),r=await this.protectWhitespace(t);return await this.send(`RNFR `+n),this.send(`RNTO `+r)}async remove(e,t=!1){let n=await this.protectWhitespace(e);return t?this.sendIgnoringError(`DELE ${n}`):this.send(`DELE ${n}`)}trackProgress(e){this._progressTracker.bytesOverall=0,this._progressTracker.reportTo(e)}async uploadFrom(e,t,n={}){return this._uploadWithCommand(e,t,`STOR`,n)}async appendFrom(e,t,n={}){return this._uploadWithCommand(e,t,`APPE`,n)}async _uploadWithCommand(e,t,n,r){return typeof e==`string`?this._uploadLocalFile(e,t,n,r):this._uploadFromStream(e,t,n)}async _uploadLocalFile(e,n,r,i){let a=await g(e,`r`),o=(0,t.createReadStream)(``,{fd:a,start:i.localStart,end:i.localEndInclusive,autoClose:!1});try{return await this._uploadFromStream(o,n,r)}finally{await w(()=>_(a))}}async _uploadFromStream(e,t,n){let r=e=>this.ftp.closeWithError(e);e.once(`error`,r);try{let r=await this.protectWhitespace(t);return await this.prepareTransfer(this.ftp),await(0,d.uploadFrom)(e,{ftp:this.ftp,tracker:this._progressTracker,command:n,remotePath:r,type:`upload`})}finally{e.removeListener(`error`,r)}}async downloadTo(e,t,n=0){return typeof e==`string`?this._downloadToFile(e,t,n):this._downloadToStream(e,t,n)}async _downloadToFile(e,n,r){let i=r>0,a=i?`r+`:`w`,o=await g(e,a),s=(0,t.createWriteStream)(``,{fd:o,start:r,autoClose:!1});try{return await this._downloadToStream(s,n,r)}catch(t){let n=await w(()=>h(e)),r=n&&n.size>0,a=!i&&!r;throw a&&await w(()=>v(e)),t}finally{await w(()=>_(o))}}async _downloadToStream(e,t,n){let r=e=>this.ftp.closeWithError(e);e.once(`error`,r);try{let r=await this.protectWhitespace(t);return await this.prepareTransfer(this.ftp),await(0,d.downloadTo)(e,{ftp:this.ftp,tracker:this._progressTracker,command:n>0?`REST ${n}`:`RETR ${r}`,remotePath:r,type:`download`})}finally{e.removeListener(`error`,r),e.end()}}async list(e=``){let t=await this.protectWhitespace(e),n;for(let e of this.availableListCommands){let r=t===``?e:`${e} ${t}`;await this.prepareTransfer(this.ftp);try{let t=await this._requestListWithCommand(r);return this.availableListCommands=[e],t}catch(e){let t=e instanceof a.FTPError;if(!t)throw e;n=e}}throw n}async _requestListWithCommand(e){let t=new c.StringWriter;await(0,d.downloadTo)(t,{ftp:this.ftp,tracker:this._progressTracker,command:e,remotePath:``,type:`list`});let n=t.getText(this.ftp.encoding);return this.ftp.log(n),this.parseList(n)}async removeDir(e){return this._exitAtCurrentDirectory(async()=>{await this.cd(e);let t=await this.pwd();await this.clearWorkingDir();let n=t===`/`;n||(await this.cdup(),await this.removeEmptyDir(t))})}async clearWorkingDir(){for(let e of await this.list())e.isDirectory?(await this.cd(e.name),await this.clearWorkingDir(),await this.cdup(),await this.removeEmptyDir(e.name)):await this.remove(e.name)}async uploadFromDir(e,t){return this._exitAtCurrentDirectory(async()=>(t&&await this.ensureDir(t),await this._uploadToWorkingDir(e)))}async _uploadToWorkingDir(e){let t=await p(e);for(let r of t){let t=(0,n.join)(e,r),i=await h(t);i.isFile()?await this.uploadFrom(t,r):i.isDirectory()&&(await this._openDir(r),await this._uploadToWorkingDir(t),await this.cdup())}}async downloadToDir(e,t){return this._exitAtCurrentDirectory(async()=>(t&&await this.cd(t),await this._downloadFromWorkingDir(e)))}async _downloadFromWorkingDir(e){await C(e);for(let t of await this.list()){let r=!t.name||(0,n.basename)(t.name)!==t.name;if(r){let e=JSON.stringify(t.name);this.ftp.log(`Invalid filename from server listing, will skip file. (${e})`);continue}let i=(0,n.join)(e,t.name);t.isDirectory?(await this.cd(t.name),await this._downloadFromWorkingDir(i),await this.cdup()):t.isFile&&await this.downloadTo(i,t.name)}}async ensureDir(e){e.startsWith(`/`)&&await this.cd(`/`);let t=e.split(`/`).filter(e=>e!==``);for(let e of t)await this._openDir(e)}async _openDir(e){await this.sendIgnoringError(`MKD `+e),await this.cd(e)}async removeEmptyDir(e){let t=await this.protectWhitespace(e);return this.send(`RMD ${t}`)}async protectWhitespace(e){if(!e.startsWith(` `))return e;let t=await this.pwd(),n=t.endsWith(`/`)?t:t+`/`;return n+e}async _exitAtCurrentDirectory(e){let t=await this.pwd();try{return await e()}finally{this.closed||await w(()=>this.cd(t))}}_enterFirstCompatibleMode(e){return async t=>{t.log(`Trying to find optimal transfer strategy...`);let n;for(let r of e)try{let e=await r(t);return t.log(`Optimal transfer strategy found.`),this.prepareTransfer=r,e}catch(e){n=e}throw Error(`None of the available transfer strategies work. Last error response was '${n}'.`)}}async upload(e,t,n={}){return this.ftp.log(`Warning: upload() has been deprecated, use uploadFrom().`),this.uploadFrom(e,t,n)}async append(e,t,n={}){return this.ftp.log(`Warning: append() has been deprecated, use appendFrom().`),this.appendFrom(e,t,n)}async download(e,t,n=0){return this.ftp.log(`Warning: download() has been deprecated, use downloadTo().`),this.downloadTo(e,t,n)}async uploadDir(e,t){return this.ftp.log(`Warning: uploadDir() has been deprecated, use uploadFromDir().`),this.uploadFromDir(e,t)}async downloadDir(e){return this.ftp.log(`Warning: downloadDir() has been deprecated, use downloadToDir().`),this.downloadToDir(e)}};exports.Client=S;async function C(e){try{await h(e)}catch{await m(e,{recursive:!0})}}async function w(e){try{return await e()}catch{return}}}),ce=e.__commonJSMin(exports=>{Object.defineProperty(exports,`__esModule`,{value:!0})}),P=e.__commonJSMin(exports=>{var t=Object.create?function(e,t,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(t,n);(!i||(`get`in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,r,i)}:function(e,t,n,r){r===void 0&&(r=n),e[r]=t[n]},n=function(e,n){for(var r in e)r!==`default`&&!Object.prototype.hasOwnProperty.call(n,r)&&t(n,e,r)};Object.defineProperty(exports,`__esModule`,{value:!0}),exports.enterPassiveModeIPv6=exports.enterPassiveModeIPv4=void 0,n(se(),exports),n(k(),exports),n(A(),exports),n(re(),exports),n(ce(),exports);var r=oe();Object.defineProperty(exports,`enterPassiveModeIPv4`,{enumerable:!0,get:function(){return r.enterPassiveModeIPv4}}),Object.defineProperty(exports,`enterPassiveModeIPv6`,{enumerable:!0,get:function(){return r.enterPassiveModeIPv6}})}),F=e.__toESM(P(),1),le=e.__toESM(e.require_src(),1);const ue=(0,le.default)(`get-uri:ftp`),de=async(e,t={})=>{let{cache:n}=t,i=decodeURIComponent(e.pathname),a;if(!i)throw TypeError(`No "pathname"!`);let s=new F.Client;try{let n=e.hostname||e.host||`localhost`,l=parseInt(e.port||`0`,10)||21,u=e.username?decodeURIComponent(e.username):void 0,d=e.password?decodeURIComponent(e.password):void 0;await s.access({host:n,port:l,user:u,password:d,...t});try{a=await s.lastMod(i)}catch(e){if(e.code===550)throw new T}if(!a){let e=await s.list((0,r.dirname)(i)),t=(0,r.basename)(i),n=e.find(e=>e.name===t);n&&(a=n.modifiedAt)}if(a){if(c())throw new b}else throw new T;let f=new o.PassThrough,p=f;return s.downloadTo(f,i).then(e=>{ue(e.message),s.close()}),p.lastModified=a,p}catch(e){throw s.close(),e}function c(){return n?.lastModified&&a?+n.lastModified==+a:!1}};var fe=class extends Error{constructor(e,t=u.STATUS_CODES[e]){super(t),this.statusCode=e,this.code=`E${String(t).toUpperCase().replace(/\s+/g,``)}`}},I=e.__toESM(e.require_src(),1);const L=(0,I.default)(`get-uri:http`),R=async(e,t={})=>{L(`GET %o`,e.href);let r=me(e,t.cache);if(r&&pe(r)&&typeof r.statusCode==`number`){let e=r.statusCode/100|0;throw e===3&&r.headers.location?(L(`cached redirect`),Error(`TODO: implement cached redirects!`)):new b}let i=typeof t.maxRedirects==`number`?t.maxRedirects:5;L(`allowing %o max redirects`,i);let a;t.http?(a=t.http,L("using secure `https` core module")):(a=u.default,L("using `http` core module"));let o={...t};if(r){let e=o.headers,t={};e&&!Array.isArray(e)&&Object.assign(t,e),o.headers=t;let n=r.headers[`last-modified`];n&&(t[`If-Modified-Since`]=n,L(`added "If-Modified-Since" request header: %o`,n));let i=r.headers.etag;i&&(t[`If-None-Match`]=i,L(`added "If-None-Match" request header: %o`,i))}let s=a.get(e,o),[c]=await(0,n.once)(s,`response`),d=c.statusCode||0;c.date=Date.now(),c.parsed=e,L(`got %o response status code`,d);let f=d/100|0,p=c.headers.location;if(f===3&&p){t.redirects||=[];let n=t.redirects;if(n.length<i){L(`got a "redirect" status code with Location: %o`,p),c.resume(),n.push(c);let r=new URL(p,e.href);L(`resolved redirect URL: %o`,r.href);let a=i-n.length;return L(`%o more redirects allowed after this one`,a),r.protocol!==e.protocol&&(t.http=r.protocol===`https:`?l.default:void 0),R(r,t)}}if(f!==2)throw c.resume(),d===304?new b:d===404?new T:new fe(d);return t.redirects&&(c.redirects=t.redirects),c};function pe(e){let t=!1,n=parseInt(e.headers.expires||``,10),r=e.headers[`cache-control`];if(r){L(`Cache-Control: %o`,r);let i=r.split(/,\s*?\b/);for(let r=0;r<i.length;r++){let a=i[r],o=a.split(`=`),s=o[0];switch(s){case`max-age`:return n=(e.date||0)+parseInt(o[1],10)*1e3,t=Date.now()<n,t&&L(`cache is "fresh" due to previous %o Cache-Control param`,a),t;case`must-revalidate`:break;case`no-cache`:case`no-store`:return L(`cache is "stale" due to explicit %o Cache-Control param`,s),!1;default:break}}}else if(n)return L(`Expires: %o`,n),t=Date.now()<n,t&&L(`cache is "fresh" due to previous Expires response header`),t;return!1}function me(e,t){if(t){if(t.parsed&&t.parsed.href===e.href)return t;if(t.redirects)for(let n=0;n<t.redirects.length;n++){let r=me(e,t.redirects[n]);if(r)return r}}return null}const he=(e,t)=>R(e,{...t,http:l.default});var ge=e.__toESM(e.require_src(),1);const _e=(0,ge.default)(`get-uri`),ve={data:w,file:D,ftp:de,http:R,https:he},ye=new Set(Object.keys(ve));function be(e){return ye.has(e)}async function xe(e,t){if(_e(`getUri(%o)`,e),!e)throw TypeError(`Must pass in a URI to "getUri()"`);let n=typeof e==`string`?new URL(e):e,r=n.protocol.replace(/:$/,``);if(!be(r))throw TypeError(`Unsupported protocol "${r}" specified in URI: "${e}"`);let i=ve[r];return i(n,t)}var Se=e.__commonJSMin(exports=>{(function e(t){"use strict";var n,r,i,a,o,s;function c(e){var t={},n,r;for(n in e)e.hasOwnProperty(n)&&(r=e[n],typeof r==`object`&&r?t[n]=c(r):t[n]=r);return t}function l(e,t){var n,r,i,a;for(r=e.length,i=0;r;)n=r>>>1,a=i+n,t(e[a])?r=n:(i=a+1,r-=n+1);return i}n={AssignmentExpression:`AssignmentExpression`,AssignmentPattern:`AssignmentPattern`,ArrayExpression:`ArrayExpression`,ArrayPattern:`ArrayPattern`,ArrowFunctionExpression:`ArrowFunctionExpression`,AwaitExpression:`AwaitExpression`,BlockStatement:`BlockStatement`,BinaryExpression:`BinaryExpression`,BreakStatement:`BreakStatement`,CallExpression:`CallExpression`,CatchClause:`CatchClause`,ChainExpression:`ChainExpression`,ClassBody:`ClassBody`,ClassDeclaration:`ClassDeclaration`,ClassExpression:`ClassExpression`,ComprehensionBlock:`ComprehensionBlock`,ComprehensionExpression:`ComprehensionExpression`,ConditionalExpression:`ConditionalExpression`,ContinueStatement:`ContinueStatement`,DebuggerStatement:`DebuggerStatement`,DirectiveStatement:`DirectiveStatement`,DoWhileStatement:`DoWhileStatement`,EmptyStatement:`EmptyStatement`,ExportAllDeclaration:`ExportAllDeclaration`,ExportDefaultDeclaration:`ExportDefaultDeclaration`,ExportNamedDeclaration:`ExportNamedDeclaration`,ExportSpecifier:`ExportSpecifier`,ExpressionStatement:`ExpressionStatement`,ForStatement:`ForStatement`,ForInStatement:`ForInStatement`,ForOfStatement:`ForOfStatement`,FunctionDeclaration:`FunctionDeclaration`,FunctionExpression:`FunctionExpression`,GeneratorExpression:`GeneratorExpression`,Identifier:`Identifier`,IfStatement:`IfStatement`,ImportExpression:`ImportExpression`,ImportDeclaration:`ImportDeclaration`,ImportDefaultSpecifier:`ImportDefaultSpecifier`,ImportNamespaceSpecifier:`ImportNamespaceSpecifier`,ImportSpecifier:`ImportSpecifier`,Literal:`Literal`,LabeledStatement:`LabeledStatement`,LogicalExpression:`LogicalExpression`,MemberExpression:`MemberExpression`,MetaProperty:`MetaProperty`,MethodDefinition:`MethodDefinition`,ModuleSpecifier:`ModuleSpecifier`,NewExpression:`NewExpression`,ObjectExpression:`ObjectExpression`,ObjectPattern:`ObjectPattern`,PrivateIdentifier:`PrivateIdentifier`,Program:`Program`,Property:`Property`,PropertyDefinition:`PropertyDefinition`,RestElement:`RestElement`,ReturnStatement:`ReturnStatement`,SequenceExpression:`SequenceExpression`,SpreadElement:`SpreadElement`,Super:`Super`,SwitchStatement:`SwitchStatement`,SwitchCase:`SwitchCase`,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`},i={AssignmentExpression:[`left`,`right`],AssignmentPattern:[`left`,`right`],ArrayExpression:[`elements`],ArrayPattern:[`elements`],ArrowFunctionExpression:[`params`,`body`],AwaitExpression:[`argument`],BlockStatement:[`body`],BinaryExpression:[`left`,`right`],BreakStatement:[`label`],CallExpression:[`callee`,`arguments`],CatchClause:[`param`,`body`],ChainExpression:[`expression`],ClassBody:[`body`],ClassDeclaration:[`id`,`superClass`,`body`],ClassExpression:[`id`,`superClass`,`body`],ComprehensionBlock:[`left`,`right`],ComprehensionExpression:[`blocks`,`filter`,`body`],ConditionalExpression:[`test`,`consequent`,`alternate`],ContinueStatement:[`label`],DebuggerStatement:[],DirectiveStatement:[],DoWhileStatement:[`body`,`test`],EmptyStatement:[],ExportAllDeclaration:[`source`],ExportDefaultDeclaration:[`declaration`],ExportNamedDeclaration:[`declaration`,`specifiers`,`source`],ExportSpecifier:[`exported`,`local`],ExpressionStatement:[`expression`],ForStatement:[`init`,`test`,`update`,`body`],ForInStatement:[`left`,`right`,`body`],ForOfStatement:[`left`,`right`,`body`],FunctionDeclaration:[`id`,`params`,`body`],FunctionExpression:[`id`,`params`,`body`],GeneratorExpression:[`blocks`,`filter`,`body`],Identifier:[],IfStatement:[`test`,`consequent`,`alternate`],ImportExpression:[`source`],ImportDeclaration:[`specifiers`,`source`],ImportDefaultSpecifier:[`local`],ImportNamespaceSpecifier:[`local`],ImportSpecifier:[`imported`,`local`],Literal:[],LabeledStatement:[`label`,`body`],LogicalExpression:[`left`,`right`],MemberExpression:[`object`,`property`],MetaProperty:[`meta`,`property`],MethodDefinition:[`key`,`value`],ModuleSpecifier:[],NewExpression:[`callee`,`arguments`],ObjectExpression:[`properties`],ObjectPattern:[`properties`],PrivateIdentifier:[],Program:[`body`],Property:[`key`,`value`],PropertyDefinition:[`key`,`value`],RestElement:[`argument`],ReturnStatement:[`argument`],SequenceExpression:[`expressions`],SpreadElement:[`argument`],Super:[],SwitchStatement:[`discriminant`,`cases`],SwitchCase:[`test`,`consequent`],TaggedTemplateExpression:[`tag`,`quasi`],TemplateElement:[],TemplateLiteral:[`quasis`,`expressions`],ThisExpression:[],ThrowStatement:[`argument`],TryStatement:[`block`,`handler`,`finalizer`],UnaryExpression:[`argument`],UpdateExpression:[`argument`],VariableDeclaration:[`declarations`],VariableDeclarator:[`id`,`init`],WhileStatement:[`test`,`body`],WithStatement:[`object`,`body`],YieldExpression:[`argument`]},a={},o={},s={},r={Break:a,Skip:o,Remove:s};function u(e,t){this.parent=e,this.key=t}u.prototype.replace=function(e){this.parent[this.key]=e},u.prototype.remove=function(){return Array.isArray(this.parent)?(this.parent.splice(this.key,1),!0):(this.replace(null),!1)};function d(e,t,n,r){this.node=e,this.path=t,this.wrap=n,this.ref=r}function f(){}f.prototype.path=function(){var e,t,n,r,i,a;function o(e,t){if(Array.isArray(t))for(n=0,r=t.length;n<r;++n)e.push(t[n]);else e.push(t)}if(!this.__current.path)return null;for(i=[],e=2,t=this.__leavelist.length;e<t;++e)a=this.__leavelist[e],o(i,a.path);return o(i,this.__current.path),i},f.prototype.type=function(){var e=this.current();return e.type||this.__current.wrap},f.prototype.parents=function(){var e,t,n;for(n=[],e=1,t=this.__leavelist.length;e<t;++e)n.push(this.__leavelist[e].node);return n},f.prototype.current=function(){return this.__current.node},f.prototype.__execute=function(e,t){var n,r;return r=void 0,n=this.__current,this.__current=t,this.__state=null,e&&(r=e.call(this,t.node,this.__leavelist[this.__leavelist.length-1].node)),this.__current=n,r},f.prototype.notify=function(e){this.__state=e},f.prototype.skip=function(){this.notify(o)},f.prototype.break=function(){this.notify(a)},f.prototype.remove=function(){this.notify(s)},f.prototype.__initialize=function(e,t){this.visitor=t,this.root=e,this.__worklist=[],this.__leavelist=[],this.__current=null,this.__state=null,this.__fallback=null,t.fallback===`iteration`?this.__fallback=Object.keys:typeof t.fallback==`function`&&(this.__fallback=t.fallback),this.__keys=i,t.keys&&(this.__keys=Object.assign(Object.create(this.__keys),t.keys))};function p(e){return e==null?!1:typeof e==`object`&&typeof e.type==`string`}function m(e,t){return(e===n.ObjectExpression||e===n.ObjectPattern)&&t===`properties`}function h(e,t){for(var n=e.length-1;n>=0;--n)if(e[n].node===t)return!0;return!1}f.prototype.traverse=function(e,t){var n,r,i,s,c,l,u,f,g,_,v,y;for(this.__initialize(e,t),y={},n=this.__worklist,r=this.__leavelist,n.push(new d(e,null,null,null)),r.push(new d(null,null,null,null));n.length;){if(i=n.pop(),i===y){if(i=r.pop(),l=this.__execute(t.leave,i),this.__state===a||l===a)return;continue}if(i.node){if(l=this.__execute(t.enter,i),this.__state===a||l===a)return;if(n.push(y),r.push(i),this.__state===o||l===o)continue;if(s=i.node,c=s.type||i.wrap,_=this.__keys[c],!_)if(this.__fallback)_=this.__fallback(s);else throw Error(`Unknown node type `+c+`.`);for(f=_.length;--f>=0;)if(u=_[f],v=s[u],v){if(Array.isArray(v)){for(g=v.length;--g>=0;)if(v[g]&&!h(r,v[g])){if(m(c,_[f]))i=new d(v[g],[u,g],`Property`,null);else if(p(v[g]))i=new d(v[g],[u,g],null,null);else continue;n.push(i)}}else if(p(v)){if(h(r,v))continue;n.push(new d(v,u,null,null))}}}}},f.prototype.replace=function(e,t){var n,r,i,c,l,f,h,g,_,v,y,b,x;function S(e){var t,r,i,a;if(e.ref.remove()){for(r=e.ref.key,a=e.ref.parent,t=n.length;t--;)if(i=n[t],i.ref&&i.ref.parent===a){if(i.ref.key<r)break;--i.ref.key}}}for(this.__initialize(e,t),y={},n=this.__worklist,r=this.__leavelist,b={root:e},f=new d(e,null,null,new u(b,`root`)),n.push(f),r.push(f);n.length;){if(f=n.pop(),f===y){if(f=r.pop(),l=this.__execute(t.leave,f),l!==void 0&&l!==a&&l!==o&&l!==s&&f.ref.replace(l),(this.__state===s||l===s)&&S(f),this.__state===a||l===a)return b.root;continue}if(l=this.__execute(t.enter,f),l!==void 0&&l!==a&&l!==o&&l!==s&&(f.ref.replace(l),f.node=l),(this.__state===s||l===s)&&(S(f),f.node=null),this.__state===a||l===a)return b.root;if(i=f.node,i&&(n.push(y),r.push(f),!(this.__state===o||l===o))){if(c=i.type||f.wrap,_=this.__keys[c],!_)if(this.__fallback)_=this.__fallback(i);else throw Error(`Unknown node type `+c+`.`);for(h=_.length;--h>=0;)if(x=_[h],v=i[x],v)if(Array.isArray(v)){for(g=v.length;--g>=0;)if(v[g]){if(m(c,_[h]))f=new d(v[g],[x,g],`Property`,new u(v,g));else if(p(v[g]))f=new d(v[g],[x,g],null,new u(v,g));else continue;n.push(f)}}else p(v)&&n.push(new d(v,x,null,new u(i,x)))}}return b.root};function g(e,t){var n=new f;return n.traverse(e,t)}function _(e,t){var n=new f;return n.replace(e,t)}function v(e,t){var n;return n=l(t,function(t){return t.range[0]>e.range[0]}),e.extendedRange=[e.range[0],e.range[1]],n!==t.length&&(e.extendedRange[1]=t[n].range[0]),--n,n>=0&&(e.extendedRange[0]=t[n].range[1]),e}function y(e,t,n){var i=[],a,o,s,l;if(!e.range)throw Error(`attachComments needs range information`);if(!n.length){if(t.length){for(s=0,o=t.length;s<o;s+=1)a=c(t[s]),a.extendedRange=[0,e.range[0]],i.push(a);e.leadingComments=i}return e}for(s=0,o=t.length;s<o;s+=1)i.push(v(c(t[s]),n));return l=0,g(e,{enter:function(e){for(var t;l<i.length&&(t=i[l],!(t.extendedRange[1]>e.range[0]));)t.extendedRange[1]===e.range[0]?(e.leadingComments||=[],e.leadingComments.push(t),i.splice(l,1)):l+=1;if(l===i.length)return r.Break;if(i[l].extendedRange[0]>e.range[1])return r.Skip}}),l=0,g(e,{leave:function(e){for(var t;l<i.length&&(t=i[l],!(e.range[1]<t.extendedRange[0]));)e.range[1]===t.extendedRange[0]?(e.trailingComments||=[],e.trailingComments.push(t),i.splice(l,1)):l+=1;if(l===i.length)return r.Break;if(i[l].extendedRange[0]>e.range[1])return r.Skip}}),e}return t.Syntax=n,t.traverse=g,t.replace=_,t.attachComments=y,t.VisitorKeys=i,t.VisitorOption=r,t.Controller=f,t.cloneEnvironment=function(){return e({})},t})(exports)}),Ce=e.__commonJSMin((exports,t)=>{(function(){"use strict";function e(e){if(e==null)return!1;switch(e.type){case`ArrayExpression`:case`AssignmentExpression`:case`BinaryExpression`:case`CallExpression`:case`ConditionalExpression`:case`FunctionExpression`:case`Identifier`:case`Literal`:case`LogicalExpression`:case`MemberExpression`:case`NewExpression`:case`ObjectExpression`:case`SequenceExpression`:case`ThisExpression`:case`UnaryExpression`:case`UpdateExpression`:return!0}return!1}function n(e){if(e==null)return!1;switch(e.type){case`DoWhileStatement`:case`ForInStatement`:case`ForStatement`:case`WhileStatement`:return!0}return!1}function r(e){if(e==null)return!1;switch(e.type){case`BlockStatement`:case`BreakStatement`:case`ContinueStatement`:case`DebuggerStatement`:case`DoWhileStatement`:case`EmptyStatement`:case`ExpressionStatement`:case`ForInStatement`:case`ForStatement`:case`IfStatement`:case`LabeledStatement`:case`ReturnStatement`:case`SwitchStatement`:case`ThrowStatement`:case`TryStatement`:case`VariableDeclaration`:case`WhileStatement`:case`WithStatement`:return!0}return!1}function i(e){return r(e)||e!=null&&e.type===`FunctionDeclaration`}function a(e){switch(e.type){case`IfStatement`:return e.alternate==null?e.consequent:e.alternate;case`LabeledStatement`:case`ForStatement`:case`ForInStatement`:case`WhileStatement`:case`WithStatement`:return e.body}return null}function o(e){var t;if(e.type!==`IfStatement`||e.alternate==null)return!1;t=e.consequent;do{if(t.type===`IfStatement`&&t.alternate==null)return!0;t=a(t)}while(t);return!1}t.exports={isExpression:e,isStatement:r,isIterationStatement:n,isSourceElement:i,isProblematicIfStatement:o,trailingStatement:a}})()}),z=e.__commonJSMin((exports,t)=>{(function(){"use strict";var e,n,r,i,a,o;n={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\u08B6-\u08BD\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\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\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\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-\u1884\u1887-\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\u1C80-\u1C88\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\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\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\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\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-\uA7AE\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]/,NonAsciiIdentifierPart:/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\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\u08B6-\u08BD\u08D4-\u08E1\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\u0C80-\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\u0D54-\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\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-\u19D9\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\u1C80-\u1C88\u1CD0-\u1CD2\u1CD4-\u1CF6\u1CF8\u1CF9\u1D00-\u1DF5\u1DFB-\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\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\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\u2E2F\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099\u309A\u309D-\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-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C5\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]/},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\u08B6-\u08BD\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\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\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\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\u1C80-\u1C88\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-\uA7AE\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\uDCB0-\uDCD3\uDCD8-\uDCFB\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[\uDC00-\uDC34\uDC47-\uDC4A\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDF00-\uDF19]|\uD806[\uDCA0-\uDCDF\uDCFF\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\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\uDFE0]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\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\uDD00-\uDD43]|\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\u08B6-\u08BD\u08D4-\u08E1\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\u0C80-\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\u0D54-\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\u1C80-\u1C88\u1CD0-\u1CD2\u1CD4-\u1CF6\u1CF8\u1CF9\u1D00-\u1DF5\u1DFB-\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-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C5\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\uDCB0-\uDCD3\uDCD8-\uDCFB\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\uDE3E\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[\uDC00-\uDC4A\uDC50-\uDC59\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]|\uD807[\uDC00-\uDC08\uDC0A-\uDC36\uDC38-\uDC40\uDC50-\uDC59\uDC72-\uDC8F\uDC92-\uDCA7\uDCA9-\uDCB6]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\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\uDFE0]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\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]|\uD838[\uDC00-\uDC06\uDC08-\uDC18\uDC1B-\uDC21\uDC23\uDC24\uDC26-\uDC2A]|\uD83A[\uDC00-\uDCC4\uDCD0-\uDCD6\uDD00-\uDD4A\uDD50-\uDD59]|\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]/};function s(e){return 48<=e&&e<=57}function c(e){return 48<=e&&e<=57||97<=e&&e<=102||65<=e&&e<=70}function l(e){return e>=48&&e<=55}r=[5760,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8239,8287,12288,65279];function u(e){return e===32||e===9||e===11||e===12||e===160||e>=5760&&r.indexOf(e)>=0}function d(e){return e===10||e===13||e===8232||e===8233}function f(e){if(e<=65535)return String.fromCharCode(e);var t=String.fromCharCode(Math.floor((e-65536)/1024)+55296),n=String.fromCharCode((e-65536)%1024+56320);return t+n}for(i=Array(128),o=0;o<128;++o)i[o]=o>=97&&o<=122||o>=65&&o<=90||o===36||o===95;for(a=Array(128),o=0;o<128;++o)a[o]=o>=97&&o<=122||o>=65&&o<=90||o>=48&&o<=57||o===36||o===95;function p(e){return e<128?i[e]:n.NonAsciiIdentifierStart.test(f(e))}function m(e){return e<128?a[e]:n.NonAsciiIdentifierPart.test(f(e))}function h(t){return t<128?i[t]:e.NonAsciiIdentifierStart.test(f(t))}function g(t){return t<128?a[t]:e.NonAsciiIdentifierPart.test(f(t))}t.exports={isDecimalDigit:s,isHexDigit:c,isOctalDigit:l,isWhiteSpace:u,isLineTerminator:d,isIdentifierStartES5:p,isIdentifierPartES5:m,isIdentifierStartES6:h,isIdentifierPartES6:g}})()}),B=e.__commonJSMin((exports,t)=>{(function(){"use strict";var e=z();function n(e){switch(e){case`implements`:case`interface`:case`package`:case`private`:case`protected`:case`public`:case`static`:case`let`:return!0;default:return!1}}function r(e,t){return!t&&e===`yield`?!1:i(e,t)}function i(e,t){if(t&&n(e))return!0;switch(e.length){case 2:return e===`if`||e===`in`||e===`do`;case 3:return e===`var`||e===`for`||e===`new`||e===`try`;case 4:return e===`this`||e===`else`||e===`case`||e===`void`||e===`with`||e===`enum`;case 5:return e===`while`||e===`break`||e===`catch`||e===`throw`||e===`const`||e===`yield`||e===`class`||e===`super`;case 6:return e===`return`||e===`typeof`||e===`delete`||e===`switch`||e===`export`||e===`import`;case 7:return e===`default`||e===`finally`||e===`extends`;case 8:return e===`function`||e===`continue`||e===`debugger`;case 10:return e===`instanceof`;default:return!1}}function a(e,t){return e===`null`||e===`true`||e===`false`||r(e,t)}function o(e,t){return e===`null`||e===`true`||e===`false`||i(e,t)}function s(e){return e===`eval`||e===`arguments`}function c(t){var n,r,i;if(t.length===0||(i=t.charCodeAt(0),!e.isIdentifierStartES5(i)))return!1;for(n=1,r=t.length;n<r;++n)if(i=t.charCodeAt(n),!e.isIdentifierPartES5(i))return!1;return!0}function l(e,t){return(e-55296)*1024+(t-56320)+65536}function u(t){var n,r,i,a,o;if(t.length===0)return!1;for(o=e.isIdentifierStartES6,n=0,r=t.length;n<r;++n){if(i=t.charCodeAt(n),55296<=i&&i<=56319){if(++n,n>=r||(a=t.charCodeAt(n),!(56320<=a&&a<=57343)))return!1;i=l(i,a)}if(!o(i))return!1;o=e.isIdentifierPartES6}return!0}function d(e,t){return c(e)&&!a(e,t)}function f(e,t){return u(e)&&!o(e,t)}t.exports={isKeywordES5:r,isKeywordES6:i,isReservedWordES5:a,isReservedWordES6:o,isRestrictedWord:s,isIdentifierNameES5:c,isIdentifierNameES6:u,isIdentifierES5:d,isIdentifierES6:f}})()}),we=e.__commonJSMin(exports=>{(function(){"use strict";exports.ast=Ce(),exports.code=z(),exports.keyword=B()})()}),Te=e.__commonJSMin((exports,t)=>{t.exports={name:`escodegen`,description:`ECMAScript code generator`,homepage:`http://github.com/estools/escodegen`,main:`escodegen.js`,bin:{esgenerate:`./bin/esgenerate.js`,escodegen:`./bin/escodegen.js`},files:[`LICENSE.BSD`,`README.md`,`bin`,`escodegen.js`,`package.json`],version:`2.1.0`,engines:{node:`>=6.0`},maintainers:[{name:`Yusuke Suzuki`,email:`utatane.tea@gmail.com`,web:`http://github.com/Constellation`}],repository:{type:`git`,url:`http://github.com/estools/escodegen.git`},dependencies:{estraverse:`^5.2.0`,esutils:`^2.0.2`,esprima:`^4.0.1`},optionalDependencies:{"source-map":`~0.6.1`},devDependencies:{acorn:`^8.0.4`,bluebird:`^3.4.7`,"bower-registry-client":`^1.0.0`,chai:`^4.2.0`,"chai-exclude":`^2.0.2`,"commonjs-everywhere":`^0.9.7`,gulp:`^4.0.2`,"gulp-eslint":`^6.0.0`,"gulp-mocha":`^7.0.2`,minimist:`^1.2.5`,optionator:`^0.9.1`,semver:`^7.3.4`},license:`BSD-2-Clause`,scripts:{test:`gulp travis`,"unit-test":`gulp test`,lint:`gulp lint`,release:`node tools/release.js`,"build-min":`./node_modules/.bin/cjsify -ma path: tools/entry-point.js > escodegen.browser.min.js`,build:`./node_modules/.bin/cjsify -a path: tools/entry-point.js > escodegen.browser.js`}}}),V=e.__commonJSMin(exports=>{(function(){"use strict";var n,r,i,a,o,s,c,l,u,d,f,p,m,h,g,_,v,y,b,x,S,C,w,T,ee,E;o=Se(),s=we(),n=o.Syntax;function D(e){return J.Expression.hasOwnProperty(e.type)}function te(e){return J.Statement.hasOwnProperty(e.type)}r={Sequence:0,Yield:1,Assignment:1,Conditional:2,ArrowFunction:2,Coalesce:3,LogicalOR:4,LogicalAND:5,BitwiseOR:6,BitwiseXOR:7,BitwiseAND:8,Equality:9,Relational:10,BitwiseSHIFT:11,Additive:12,Multiplicative:13,Exponentiation:14,Await:15,Unary:15,Postfix:16,OptionalChaining:17,Call:18,New:19,TaggedTemplate:20,Member:21,Primary:22},i={"??":r.Coalesce,"||":r.LogicalOR,"&&":r.LogicalAND,"|":r.BitwiseOR,"^":r.BitwiseXOR,"&":r.BitwiseAND,"==":r.Equality,"!=":r.Equality,"===":r.Equality,"!==":r.Equality,is:r.Equality,isnt:r.Equality,"<":r.Relational,">":r.Relational,"<=":r.Relational,">=":r.Relational,in:r.Relational,instanceof:r.Relational,"<<":r.BitwiseSHIFT,">>":r.BitwiseSHIFT,">>>":r.BitwiseSHIFT,"+":r.Additive,"-":r.Additive,"*":r.Multiplicative,"%":r.Multiplicative,"/":r.Multiplicative,"**":r.Exponentiation};var O=1,k=2,A=4,j=8,ne=16,M=32,re=64,ie=k|A,ae=O|k,N=O|k|A,oe=O,se=A,ce=O|A,P=O,F=O|M,le=0,ue=O|ne,de=O|j;function fe(){return{indent:null,base:null,parse:null,comment:!1,format:{indent:{style:` `,base:0,adjustMultilineComment:!1},newline:`
5
+ `,space:` `,json:!1,renumber:!1,hexadecimal:!1,quotes:`single`,escapeless:!1,compact:!1,parentheses:!0,semicolons:!0,safeConcatenation:!1,preserveBlankLines:!1},moz:{comprehensionExpressionStartsWithAssignment:!1,starlessGenerator:!1},sourceMap:null,sourceMapRoot:null,sourceMapWithCode:!1,directive:!1,raw:!0,verbatim:null,sourceCode:null}}function I(e,t){var n=``;for(t|=0;t>0;t>>>=1,e+=e)t&1&&(n+=e);return n}function L(e){return/[\r\n]/g.test(e)}function R(e){var t=e.length;return t&&s.code.isLineTerminator(e.charCodeAt(t-1))}function pe(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);return e}function me(e,t){var n,r;function i(e){return typeof e==`object`&&e instanceof Object&&!(e instanceof RegExp)}for(n in t)t.hasOwnProperty(n)&&(r=t[n],i(r)?i(e[n])?me(e[n],r):e[n]=me({},r):e[n]=r);return e}function he(e){var t,n,r,i,a;if(e!==e)throw Error(`Numeric literal whose value is NaN`);if(e<0||e===0&&1/e<0)throw Error(`Numeric literal whose value is negative`);if(e===1/0)return u?`null`:d?`1e400`:`1e+400`;if(t=``+e,!d||t.length<3)return t;for(n=t.indexOf(`.`),!u&&t.charCodeAt(0)===48&&n===1&&(n=0,t=t.slice(1)),r=t,t=t.replace(`e+`,`e`),i=0,(a=r.indexOf(`e`))>0&&(i=+r.slice(a+1),r=r.slice(0,a)),n>=0&&(i-=r.length-n-1,r=+(r.slice(0,n)+r.slice(n+1))+``),a=0;r.charCodeAt(r.length+a-1)===48;)--a;return a!==0&&(i-=a,r=r.slice(0,a)),i!==0&&(r+=`e`+i),(r.length<t.length||f&&e>1e12&&Math.floor(e)===e&&(r=`0x`+e.toString(16)).length<t.length)&&+r===e&&(t=r),t}function ge(e,t){return(e&-2)==8232?(t?`u`:`\\u`)+(e===8232?`2028`:`2029`):e===10||e===13?(t?``:`\\`)+(e===10?`n`:`r`):String.fromCharCode(e)}function _e(e){var t,n,r,i,a,o,s,c;if(n=e.toString(),e.source){if(t=n.match(/\/([^/]*)$/),!t)return n;for(r=t[1],n=``,s=!1,c=!1,i=0,a=e.source.length;i<a;++i)o=e.source.charCodeAt(i),c?(n+=ge(o,c),c=!1):(s?o===93&&(s=!1):o===47?n+=`\\`:o===91&&(s=!0),n+=ge(o,c),c=o===92);return`/`+n+`/`+r}return n}function ve(e,t){var n;return e===8?`\\b`:e===12?`\\f`:e===9?`\\t`:(n=e.toString(16).toUpperCase(),u||e>255?`\\u`+`0000`.slice(n.length)+n:e===0&&!s.code.isDecimalDigit(t)?`\\0`:e===11?`\\x0B`:`\\x`+`00`.slice(n.length)+n)}function ye(e){if(e===92)return`\\\\`;if(e===10)return`\\n`;if(e===13)return`\\r`;if(e===8232)return`\\u2028`;if(e===8233)return`\\u2029`;throw Error(`Incorrectly classified character`)}function be(e){var t,n,r,i;for(i=p===`double`?`"`:`'`,t=0,n=e.length;t<n;++t)if(r=e.charCodeAt(t),r===39){i=`"`;break}else if(r===34){i=`'`;break}else r===92&&++t;return i+e+i}function xe(e){var t=``,n,r,i,a=0,o=0,c,l;for(n=0,r=e.length;n<r;++n){if(i=e.charCodeAt(n),i===39)++a;else if(i===34)++o;else if(i===47&&u)t+=`\\`;else if(s.code.isLineTerminator(i)||i===92){t+=ye(i);continue}else if(!s.code.isIdentifierPartES5(i)&&(u&&i<32||!u&&!m&&(i<32||i>126))){t+=ve(i,e.charCodeAt(n+1));continue}t+=String.fromCharCode(i)}if(c=!(p===`double`||p===`auto`&&o<a),l=c?`'`:`"`,!(c?a:o))return l+t+l;for(e=t,t=l,n=0,r=e.length;n<r;++n)i=e.charCodeAt(n),(i===39&&c||i===34&&!c)&&(t+=`\\`),t+=String.fromCharCode(i);return t+l}function Ce(e){var t,n,r,i=``;for(t=0,n=e.length;t<n;++t)r=e[t],i+=Array.isArray(r)?Ce(r):r;return i}function z(e,t){if(!C)return Array.isArray(e)?Ce(e):e;if(t==null){if(e instanceof a)return e;t={}}return t.loc==null?new a(null,null,C,e,t.name||null):new a(t.loc.start.line,t.loc.start.column,C===!0?t.loc.source||null:C,e,t.name||null)}function B(){return g||` `}function V(e,t){var n,r,i,a;return n=z(e).toString(),n.length===0?[t]:(r=z(t).toString(),r.length===0?[e]:(i=n.charCodeAt(n.length-1),a=r.charCodeAt(0),(i===43||i===45)&&i===a||s.code.isIdentifierPartES5(i)&&s.code.isIdentifierPartES5(a)||i===47&&a===105?[e,B(),t]:s.code.isWhiteSpace(i)||s.code.isLineTerminator(i)||s.code.isWhiteSpace(a)||s.code.isLineTerminator(a)?[e,t]:[e,g,t]))}function H(e){return[c,e]}function U(e){var t;t=c,c+=l,e(c),c=t}function W(e){var t;for(t=e.length-1;t>=0&&!s.code.isLineTerminator(e.charCodeAt(t));--t);return e.length-1-t}function Ee(e,t){var n,r,i,a,o,l,u,d;for(n=e.split(/\r\n|[\r\n]/),l=Number.MAX_VALUE,r=1,i=n.length;r<i;++r){for(a=n[r],o=0;o<a.length&&s.code.isWhiteSpace(a.charCodeAt(o));)++o;l>o&&(l=o)}for(t===void 0?(l&1&&--l,u=c):(u=c,n[1][l]===`*`&&(t+=` `),c=t),r=1,i=n.length;r<i;++r)d=z(H(n[r].slice(l))),n[r]=C?d.join(``):d;return c=u,n.join(`
6
+ `)}function G(e,t){if(e.type===`Line`){if(R(e.value))return`//`+e.value;var n=`//`+e.value;return T||(n+=`
7
+ `),n}return x.format.indent.adjustMultilineComment&&/[\n\r]/.test(e.value)?Ee(`/*`+e.value+`*/`,t):`/*`+e.value+`*/`}function De(e,t){var r,i,a,o,s,u,d,f,p,m,h,g,_,v;if(e.leadingComments&&e.leadingComments.length>0){if(o=t,T){for(a=e.leadingComments[0],t=[],f=a.extendedRange,p=a.range,h=w.substring(f[0],p[0]),v=(h.match(/\n/g)||[]).length,v>0?(t.push(I(`
8
+ `,v)),t.push(H(G(a)))):(t.push(h),t.push(G(a))),m=p,r=1,i=e.leadingComments.length;r<i;r++)a=e.leadingComments[r],p=a.range,g=w.substring(m[1],p[0]),v=(g.match(/\n/g)||[]).length,t.push(I(`
9
+ `,v)),t.push(H(G(a))),m=p;_=w.substring(p[1],f[1]),v=(_.match(/\n/g)||[]).length,t.push(I(`
10
+ `,v))}else for(a=e.leadingComments[0],t=[],y&&e.type===n.Program&&e.body.length===0&&t.push(`
11
+ `),t.push(G(a)),R(z(t).toString())||t.push(`
12
+ `),r=1,i=e.leadingComments.length;r<i;++r)a=e.leadingComments[r],d=[G(a)],R(z(d).toString())||d.push(`
13
+ `),t.push(H(d));t.push(H(o))}if(e.trailingComments)if(T)a=e.trailingComments[0],f=a.extendedRange,p=a.range,h=w.substring(f[0],p[0]),v=(h.match(/\n/g)||[]).length,v>0?(t.push(I(`
14
+ `,v)),t.push(H(G(a)))):(t.push(h),t.push(G(a)));else for(s=!R(z(t).toString()),u=I(` `,W(z([c,t,l]).toString())),r=0,i=e.trailingComments.length;r<i;++r)a=e.trailingComments[r],s?(t=r===0?[t,l]:[t,u],t.push(G(a,u))):t=[t,H(G(a))],r!==i-1&&!R(z(t).toString())&&(t=[t,`
15
+ `]);return t}function Oe(e,t,n){var r,i=0;for(r=e;r<t;r++)w[r]===`
16
+ `&&i++;for(r=1;r<i;r++)n.push(h)}function K(e,t,n){return t<n?[`(`,e,`)`]:e}function ke(e){var t,n,r;for(r=e.split(/\r\n|\n/),t=1,n=r.length;t<n;t++)r[t]=h+c+r[t];return r}function q(e,t){var n,i,a;return n=e[x.verbatim],typeof n==`string`?i=K(ke(n),r.Sequence,t):(i=ke(n.content),a=n.precedence==null?r.Sequence:n.precedence,i=K(i,a,t)),z(i,e)}function J(){}J.prototype.maybeBlock=function(e,t){var r,i,a=this;return i=!x.comment||!e.leadingComments,e.type===n.BlockStatement&&i?[g,this.generateStatement(e,t)]:e.type===n.EmptyStatement&&i?`;`:(U(function(){r=[h,H(a.generateStatement(e,t))]}),r)},J.prototype.maybeBlockSuffix=function(e,t){var r=R(z(t).toString());return e.type===n.BlockStatement&&(!x.comment||!e.leadingComments)&&!r?[t,g]:r?[t,c]:[t,h,c]};function Y(e){return z(e.name,e)}function X(e,t){return e.async?`async`+(t?B():g):``}function Ae(e){var t=e.generator&&!x.moz.starlessGenerator;return t?`*`+g:``}function je(e){var t=e.value,n=``;return t.async&&(n+=X(t,!e.computed)),t.generator&&(n+=Ae(t)?`*`:``),n}J.prototype.generatePattern=function(e,t,r){return e.type===n.Identifier?Y(e):this.generateExpression(e,t,r)},J.prototype.generateFunctionParams=function(e){var t,i,a,o;if(o=!1,e.type===n.ArrowFunctionExpression&&!e.rest&&(!e.defaults||e.defaults.length===0)&&e.params.length===1&&e.params[0].type===n.Identifier)a=[X(e,!0),Y(e.params[0])];else{for(a=e.type===n.ArrowFunctionExpression?[X(e,!1)]:[],a.push(`(`),e.defaults&&(o=!0),t=0,i=e.params.length;t<i;++t)o&&e.defaults[t]?a.push(this.generateAssignment(e.params[t],e.defaults[t],`=`,r.Assignment,N)):a.push(this.generatePattern(e.params[t],r.Assignment,N)),t+1<i&&a.push(`,`+g);e.rest&&(e.params.length&&a.push(`,`+g),a.push(`...`),a.push(Y(e.rest))),a.push(`)`)}return a},J.prototype.generateFunctionBody=function(e){var t,i;return t=this.generateFunctionParams(e),e.type===n.ArrowFunctionExpression&&(t.push(g),t.push(`=>`)),e.expression?(t.push(g),i=this.generateExpression(e.body,r.Assignment,N),i.toString().charAt(0)===`{`&&(i=[`(`,i,`)`]),t.push(i)):t.push(this.maybeBlock(e.body,de)),t},J.prototype.generateIterationForStatement=function(e,t,i){var a=[`for`+(t.await?B()+`await`:``)+g+`(`],o=this;return U(function(){t.left.type===n.VariableDeclaration?U(function(){a.push(t.left.kind+B()),a.push(o.generateStatement(t.left.declarations[0],le))}):a.push(o.generateExpression(t.left,r.Call,N)),a=V(a,e),a=[V(a,o.generateExpression(t.right,r.Assignment,N)),`)`]}),a.push(this.maybeBlock(t.body,i)),a},J.prototype.generatePropertyKey=function(e,t){var n=[];return t&&n.push(`[`),n.push(this.generateExpression(e,r.Assignment,N)),t&&n.push(`]`),n},J.prototype.generateAssignment=function(e,t,n,i,a){return r.Assignment<i&&(a|=O),K([this.generateExpression(e,r.Call,a),g+n+g,this.generateExpression(t,r.Assignment,a)],r.Assignment,i)},J.prototype.semicolon=function(e){return!v&&e&M?``:`;`},J.Statement={BlockStatement:function(e,t){var n,r,i=[`{`,h],a=this;return U(function(){e.body.length===0&&T&&(n=e.range,n[1]-n[0]>2&&(r=w.substring(n[0]+1,n[1]-1),r[0]===`
17
+ `&&(i=[`{`]),i.push(r)));var o,s,c,l;for(l=P,t&j&&(l|=ne),o=0,s=e.body.length;o<s;++o)T&&(o===0&&(e.body[0].leadingComments&&(n=e.body[0].leadingComments[0].extendedRange,r=w.substring(n[0],n[1]),r[0]===`
18
+ `&&(i=[`{`])),e.body[0].leadingComments||Oe(e.range[0],e.body[0].range[0],i)),o>0&&!e.body[o-1].trailingComments&&!e.body[o].leadingComments&&Oe(e.body[o-1].range[1],e.body[o].range[0],i)),o===s-1&&(l|=M),c=e.body[o].leadingComments&&T?a.generateStatement(e.body[o],l):H(a.generateStatement(e.body[o],l)),i.push(c),R(z(c).toString())||T&&o<s-1&&e.body[o+1].leadingComments||i.push(h),T&&o===s-1&&(e.body[o].trailingComments||Oe(e.body[o].range[1],e.range[1],i))}),i.push(H(`}`)),i},BreakStatement:function(e,t){return e.label?`break `+e.label.name+this.semicolon(t):`break`+this.semicolon(t)},ContinueStatement:function(e,t){return e.label?`continue `+e.label.name+this.semicolon(t):`continue`+this.semicolon(t)},ClassBody:function(e,t){var n=[`{`,h],i=this;return U(function(t){var a,o;for(a=0,o=e.body.length;a<o;++a)n.push(t),n.push(i.generateExpression(e.body[a],r.Sequence,N)),a+1<o&&n.push(h)}),R(z(n).toString())||n.push(h),n.push(c),n.push(`}`),n},ClassDeclaration:function(e,t){var n,i;return n=[`class`],e.id&&(n=V(n,this.generateExpression(e.id,r.Sequence,N))),e.superClass&&(i=V(`extends`,this.generateExpression(e.superClass,r.Unary,N)),n=V(n,i)),n.push(g),n.push(this.generateStatement(e.body,F)),n},DirectiveStatement:function(e,t){return x.raw&&e.raw?e.raw+this.semicolon(t):be(e.directive)+this.semicolon(t)},DoWhileStatement:function(e,t){var n=V(`do`,this.maybeBlock(e.body,P));return n=this.maybeBlockSuffix(e.body,n),V(n,[`while`+g+`(`,this.generateExpression(e.test,r.Sequence,N),`)`+this.semicolon(t)])},CatchClause:function(e,t){var n,i=this;return U(function(){var t;e.param?(n=[`catch`+g+`(`,i.generateExpression(e.param,r.Sequence,N),`)`],e.guard&&(t=i.generateExpression(e.guard,r.Sequence,N),n.splice(2,0,` if `,t))):n=[`catch`]}),n.push(this.maybeBlock(e.body,P)),n},DebuggerStatement:function(e,t){return`debugger`+this.semicolon(t)},EmptyStatement:function(e,t){return`;`},ExportDefaultDeclaration:function(e,t){var n=[`export`],i;return i=t&M?F:P,n=V(n,`default`),n=te(e.declaration)?V(n,this.generateStatement(e.declaration,i)):V(n,this.generateExpression(e.declaration,r.Assignment,N)+this.semicolon(t)),n},ExportNamedDeclaration:function(e,t){var i=[`export`],a,o=this;return a=t&M?F:P,e.declaration?V(i,this.generateStatement(e.declaration,a)):(e.specifiers&&(e.specifiers.length===0?i=V(i,`{`+g+`}`):e.specifiers[0].type===n.ExportBatchSpecifier?i=V(i,this.generateExpression(e.specifiers[0],r.Sequence,N)):(i=V(i,`{`),U(function(t){var n,a;for(i.push(h),n=0,a=e.specifiers.length;n<a;++n)i.push(t),i.push(o.generateExpression(e.specifiers[n],r.Sequence,N)),n+1<a&&i.push(`,`+h)}),R(z(i).toString())||i.push(h),i.push(c+`}`)),e.source?i=V(i,[`from`+g,this.generateExpression(e.source,r.Sequence,N),this.semicolon(t)]):i.push(this.semicolon(t))),i)},ExportAllDeclaration:function(e,t){return[`export`+g,`*`+g,`from`+g,this.generateExpression(e.source,r.Sequence,N),this.semicolon(t)]},ExpressionStatement:function(e,t){var i,a;function o(e){var t;return e.slice(0,5)===`class`?(t=e.charCodeAt(5),t===123||s.code.isWhiteSpace(t)||s.code.isLineTerminator(t)):!1}function c(e){var t;return e.slice(0,8)===`function`?(t=e.charCodeAt(8),t===40||s.code.isWhiteSpace(t)||t===42||s.code.isLineTerminator(t)):!1}function l(e){var t,n,r;if(e.slice(0,5)!==`async`||!s.code.isWhiteSpace(e.charCodeAt(5)))return!1;for(n=6,r=e.length;n<r&&s.code.isWhiteSpace(e.charCodeAt(n));++n);return n===r||e.slice(n,n+8)!==`function`?!1:(t=e.charCodeAt(n+8),t===40||s.code.isWhiteSpace(t)||t===42||s.code.isLineTerminator(t))}return i=[this.generateExpression(e.expression,r.Sequence,N)],a=z(i).toString(),a.charCodeAt(0)===123||o(a)||c(a)||l(a)||b&&t&ne&&e.expression.type===n.Literal&&typeof e.expression.value==`string`?i=[`(`,i,`)`+this.semicolon(t)]:i.push(this.semicolon(t)),i},ImportDeclaration:function(e,t){var i,a,o=this;return e.specifiers.length===0?[`import`,g,this.generateExpression(e.source,r.Sequence,N),this.semicolon(t)]:(i=[`import`],a=0,e.specifiers[a].type===n.ImportDefaultSpecifier&&(i=V(i,[this.generateExpression(e.specifiers[a],r.Sequence,N)]),++a),e.specifiers[a]&&(a!==0&&i.push(`,`),e.specifiers[a].type===n.ImportNamespaceSpecifier?i=V(i,[g,this.generateExpression(e.specifiers[a],r.Sequence,N)]):(i.push(g+`{`),e.specifiers.length-a===1?(i.push(g),i.push(this.generateExpression(e.specifiers[a],r.Sequence,N)),i.push(g+`}`+g)):(U(function(t){var n,s;for(i.push(h),n=a,s=e.specifiers.length;n<s;++n)i.push(t),i.push(o.generateExpression(e.specifiers[n],r.Sequence,N)),n+1<s&&i.push(`,`+h)}),R(z(i).toString())||i.push(h),i.push(c+`}`+g)))),i=V(i,[`from`+g,this.generateExpression(e.source,r.Sequence,N),this.semicolon(t)]),i)},VariableDeclarator:function(e,t){var n=t&O?N:ie;return e.init?[this.generateExpression(e.id,r.Assignment,n),g,`=`,g,this.generateExpression(e.init,r.Assignment,n)]:this.generatePattern(e.id,r.Assignment,n)},VariableDeclaration:function(e,t){var n,r,i,a,o,s=this;n=[e.kind],o=t&O?P:le;function c(){for(a=e.declarations[0],x.comment&&a.leadingComments?(n.push(`
19
+ `),n.push(H(s.generateStatement(a,o)))):(n.push(B()),n.push(s.generateStatement(a,o))),r=1,i=e.declarations.length;r<i;++r)a=e.declarations[r],x.comment&&a.leadingComments?(n.push(`,`+h),n.push(H(s.generateStatement(a,o)))):(n.push(`,`+g),n.push(s.generateStatement(a,o)))}return e.declarations.length>1?U(c):c(),n.push(this.semicolon(t)),n},ThrowStatement:function(e,t){return[V(`throw`,this.generateExpression(e.argument,r.Sequence,N)),this.semicolon(t)]},TryStatement:function(e,t){var n,r,i,a;if(n=[`try`,this.maybeBlock(e.block,P)],n=this.maybeBlockSuffix(e.block,n),e.handlers)for(r=0,i=e.handlers.length;r<i;++r)n=V(n,this.generateStatement(e.handlers[r],P)),(e.finalizer||r+1!==i)&&(n=this.maybeBlockSuffix(e.handlers[r].body,n));else{for(a=e.guardedHandlers||[],r=0,i=a.length;r<i;++r)n=V(n,this.generateStatement(a[r],P)),(e.finalizer||r+1!==i)&&(n=this.maybeBlockSuffix(a[r].body,n));if(e.handler)if(Array.isArray(e.handler))for(r=0,i=e.handler.length;r<i;++r)n=V(n,this.generateStatement(e.handler[r],P)),(e.finalizer||r+1!==i)&&(n=this.maybeBlockSuffix(e.handler[r].body,n));else n=V(n,this.generateStatement(e.handler,P)),e.finalizer&&(n=this.maybeBlockSuffix(e.handler.body,n))}return e.finalizer&&(n=V(n,[`finally`,this.maybeBlock(e.finalizer,P)])),n},SwitchStatement:function(e,t){var n,i,a,o,s,c=this;if(U(function(){n=[`switch`+g+`(`,c.generateExpression(e.discriminant,r.Sequence,N),`)`+g+`{`+h]}),e.cases)for(s=P,a=0,o=e.cases.length;a<o;++a)a===o-1&&(s|=M),i=H(this.generateStatement(e.cases[a],s)),n.push(i),R(z(i).toString())||n.push(h);return n.push(H(`}`)),n},SwitchCase:function(e,t){var i,a,o,s,c,l=this;return U(function(){for(i=e.test?[V(`case`,l.generateExpression(e.test,r.Sequence,N)),`:`]:[`default:`],o=0,s=e.consequent.length,s&&e.consequent[0].type===n.BlockStatement&&(a=l.maybeBlock(e.consequent[0],P),i.push(a),o=1),o!==s&&!R(z(i).toString())&&i.push(h),c=P;o<s;++o)o===s-1&&t&M&&(c|=M),a=H(l.generateStatement(e.consequent[o],c)),i.push(a),o+1!==s&&!R(z(a).toString())&&i.push(h)}),i},IfStatement:function(e,t){var i,a,o,s=this;return U(function(){i=[`if`+g+`(`,s.generateExpression(e.test,r.Sequence,N),`)`]}),o=t&M,a=P,o&&(a|=M),e.alternate?(i.push(this.maybeBlock(e.consequent,P)),i=this.maybeBlockSuffix(e.consequent,i),i=e.alternate.type===n.IfStatement?V(i,[`else `,this.generateStatement(e.alternate,a)]):V(i,V(`else`,this.maybeBlock(e.alternate,a)))):i.push(this.maybeBlock(e.consequent,a)),i},ForStatement:function(e,t){var i,a=this;return U(function(){i=[`for`+g+`(`],e.init?e.init.type===n.VariableDeclaration?i.push(a.generateStatement(e.init,le)):(i.push(a.generateExpression(e.init,r.Sequence,ie)),i.push(`;`)):i.push(`;`),e.test?(i.push(g),i.push(a.generateExpression(e.test,r.Sequence,N)),i.push(`;`)):i.push(`;`),e.update?(i.push(g),i.push(a.generateExpression(e.update,r.Sequence,N)),i.push(`)`)):i.push(`)`)}),i.push(this.maybeBlock(e.body,t&M?F:P)),i},ForInStatement:function(e,t){return this.generateIterationForStatement(`in`,e,t&M?F:P)},ForOfStatement:function(e,t){return this.generateIterationForStatement(`of`,e,t&M?F:P)},LabeledStatement:function(e,t){return[e.label.name+`:`,this.maybeBlock(e.body,t&M?F:P)]},Program:function(e,t){var n,r,i,a,o;for(a=e.body.length,n=[y&&a>0?`
20
+ `:``],o=ue,i=0;i<a;++i)!y&&i===a-1&&(o|=M),T&&(i===0&&(e.body[0].leadingComments||Oe(e.range[0],e.body[i].range[0],n)),i>0&&!e.body[i-1].trailingComments&&!e.body[i].leadingComments&&Oe(e.body[i-1].range[1],e.body[i].range[0],n)),r=H(this.generateStatement(e.body[i],o)),n.push(r),i+1<a&&!R(z(r).toString())&&(T&&e.body[i+1].leadingComments||n.push(h)),T&&i===a-1&&(e.body[i].trailingComments||Oe(e.body[i].range[1],e.range[1],n));return n},FunctionDeclaration:function(e,t){return[X(e,!0),`function`,Ae(e)||B(),e.id?Y(e.id):``,this.generateFunctionBody(e)]},ReturnStatement:function(e,t){return e.argument?[V(`return`,this.generateExpression(e.argument,r.Sequence,N)),this.semicolon(t)]:[`return`+this.semicolon(t)]},WhileStatement:function(e,t){var n,i=this;return U(function(){n=[`while`+g+`(`,i.generateExpression(e.test,r.Sequence,N),`)`]}),n.push(this.maybeBlock(e.body,t&M?F:P)),n},WithStatement:function(e,t){var n,i=this;return U(function(){n=[`with`+g+`(`,i.generateExpression(e.object,r.Sequence,N),`)`]}),n.push(this.maybeBlock(e.body,t&M?F:P)),n}},pe(J.prototype,J.Statement),J.Expression={SequenceExpression:function(e,t,n){var i,a,o;for(r.Sequence<t&&(n|=O),i=[],a=0,o=e.expressions.length;a<o;++a)i.push(this.generateExpression(e.expressions[a],r.Assignment,n)),a+1<o&&i.push(`,`+g);return K(i,r.Sequence,t)},AssignmentExpression:function(e,t,n){return this.generateAssignment(e.left,e.right,e.operator,t,n)},ArrowFunctionExpression:function(e,t,n){return K(this.generateFunctionBody(e),r.ArrowFunction,t)},ConditionalExpression:function(e,t,n){return r.Conditional<t&&(n|=O),K([this.generateExpression(e.test,r.Coalesce,n),g+`?`+g,this.generateExpression(e.consequent,r.Assignment,n),g+`:`+g,this.generateExpression(e.alternate,r.Assignment,n)],r.Conditional,t)},LogicalExpression:function(e,t,n){return e.operator===`??`&&(n|=re),this.BinaryExpression(e,t,n)},BinaryExpression:function(e,t,n){var a,o,c,l,u,d;return l=i[e.operator],o=e.operator===`**`?r.Postfix:l,c=e.operator===`**`?l:l+1,l<t&&(n|=O),u=this.generateExpression(e.left,o,n),d=u.toString(),a=d.charCodeAt(d.length-1)===47&&s.code.isIdentifierPartES5(e.operator.charCodeAt(0))?[u,B(),e.operator]:V(u,e.operator),u=this.generateExpression(e.right,c,n),e.operator===`/`&&u.toString().charAt(0)===`/`||e.operator.slice(-1)===`<`&&u.toString().slice(0,3)===`!--`?(a.push(B()),a.push(u)):a=V(a,u),e.operator===`in`&&!(n&O)||(e.operator===`||`||e.operator===`&&`)&&n&re?[`(`,a,`)`]:K(a,l,t)},CallExpression:function(e,t,n){var i,a,o;for(i=[this.generateExpression(e.callee,r.Call,ae)],e.optional&&i.push(`?.`),i.push(`(`),a=0,o=e.arguments.length;a<o;++a)i.push(this.generateExpression(e.arguments[a],r.Assignment,N)),a+1<o&&i.push(`,`+g);return i.push(`)`),n&k?K(i,r.Call,t):[`(`,i,`)`]},ChainExpression:function(e,t,n){r.OptionalChaining<t&&(n|=k);var i=this.generateExpression(e.expression,r.OptionalChaining,n);return K(i,r.OptionalChaining,t)},NewExpression:function(e,t,n){var i,a,o,s,c;if(a=e.arguments.length,c=n&A&&!_&&a===0?ce:oe,i=V(`new`,this.generateExpression(e.callee,r.New,c)),!(n&A)||_||a>0){for(i.push(`(`),o=0,s=a;o<s;++o)i.push(this.generateExpression(e.arguments[o],r.Assignment,N)),o+1<s&&i.push(`,`+g);i.push(`)`)}return K(i,r.New,t)},MemberExpression:function(e,t,i){var a,o;return a=[this.generateExpression(e.object,r.Call,i&k?ae:oe)],e.computed?(e.optional&&a.push(`?.`),a.push(`[`),a.push(this.generateExpression(e.property,r.Sequence,i&k?N:ce)),a.push(`]`)):(!e.optional&&e.object.type===n.Literal&&typeof e.object.value==`number`&&(o=z(a).toString(),o.indexOf(`.`)<0&&!/[eExX]/.test(o)&&s.code.isDecimalDigit(o.charCodeAt(o.length-1))&&!(o.length>=2&&o.charCodeAt(0)===48)&&a.push(` `)),a.push(e.optional?`?.`:`.`),a.push(Y(e.property))),K(a,r.Member,t)},MetaProperty:function(e,t,n){var i;return i=[],i.push(typeof e.meta==`string`?e.meta:Y(e.meta)),i.push(`.`),i.push(typeof e.property==`string`?e.property:Y(e.property)),K(i,r.Member,t)},UnaryExpression:function(e,t,n){var i,a,o,c,l;return a=this.generateExpression(e.argument,r.Unary,N),g===``?i=V(e.operator,a):(i=[e.operator],e.operator.length>2?i=V(i,a):(c=z(i).toString(),l=c.charCodeAt(c.length-1),o=a.toString().charCodeAt(0),((l===43||l===45)&&l===o||s.code.isIdentifierPartES5(l)&&s.code.isIdentifierPartES5(o))&&i.push(B()),i.push(a))),K(i,r.Unary,t)},YieldExpression:function(e,t,n){var i;return i=e.delegate?`yield*`:`yield`,e.argument&&(i=V(i,this.generateExpression(e.argument,r.Yield,N))),K(i,r.Yield,t)},AwaitExpression:function(e,t,n){var i=V(e.all?`await*`:`await`,this.generateExpression(e.argument,r.Await,N));return K(i,r.Await,t)},UpdateExpression:function(e,t,n){return e.prefix?K([e.operator,this.generateExpression(e.argument,r.Unary,N)],r.Unary,t):K([this.generateExpression(e.argument,r.Postfix,N),e.operator],r.Postfix,t)},FunctionExpression:function(e,t,n){var r=[X(e,!0),`function`];return e.id?(r.push(Ae(e)||B()),r.push(Y(e.id))):r.push(Ae(e)||g),r.push(this.generateFunctionBody(e)),r},ArrayPattern:function(e,t,n){return this.ArrayExpression(e,t,n,!0)},ArrayExpression:function(e,t,n,i){var a,o,s=this;return e.elements.length?(o=i?!1:e.elements.length>1,a=[`[`,o?h:``],U(function(t){var n,i;for(n=0,i=e.elements.length;n<i;++n)e.elements[n]?(a.push(o?t:``),a.push(s.generateExpression(e.elements[n],r.Assignment,N))):(o&&a.push(t),n+1===i&&a.push(`,`)),n+1<i&&a.push(`,`+(o?h:g))}),o&&!R(z(a).toString())&&a.push(h),a.push(o?c:``),a.push(`]`),a):`[]`},RestElement:function(e,t,n){return`...`+this.generatePattern(e.argument)},ClassExpression:function(e,t,n){var i,a;return i=[`class`],e.id&&(i=V(i,this.generateExpression(e.id,r.Sequence,N))),e.superClass&&(a=V(`extends`,this.generateExpression(e.superClass,r.Unary,N)),i=V(i,a)),i.push(g),i.push(this.generateStatement(e.body,F)),i},MethodDefinition:function(e,t,n){var r,i;return r=e.static?[`static`+g]:[],i=e.kind===`get`||e.kind===`set`?[V(e.kind,this.generatePropertyKey(e.key,e.computed)),this.generateFunctionBody(e.value)]:[je(e),this.generatePropertyKey(e.key,e.computed),this.generateFunctionBody(e.value)],V(r,i)},Property:function(e,t,n){return e.kind===`get`||e.kind===`set`?[e.kind,B(),this.generatePropertyKey(e.key,e.computed),this.generateFunctionBody(e.value)]:e.shorthand?e.value.type===`AssignmentPattern`?this.AssignmentPattern(e.value,r.Sequence,N):this.generatePropertyKey(e.key,e.computed):e.method?[je(e),this.generatePropertyKey(e.key,e.computed),this.generateFunctionBody(e.value)]:[this.generatePropertyKey(e.key,e.computed),`:`+g,this.generateExpression(e.value,r.Assignment,N)]},ObjectExpression:function(e,t,n){var i,a,o,s=this;return e.properties.length?(i=e.properties.length>1,U(function(){o=s.generateExpression(e.properties[0],r.Sequence,N)}),!i&&!L(z(o).toString())?[`{`,g,o,g,`}`]:(U(function(t){var n,c;if(a=[`{`,h,t,o],i)for(a.push(`,`+h),n=1,c=e.properties.length;n<c;++n)a.push(t),a.push(s.generateExpression(e.properties[n],r.Sequence,N)),n+1<c&&a.push(`,`+h)}),R(z(a).toString())||a.push(h),a.push(c),a.push(`}`),a)):`{}`},AssignmentPattern:function(e,t,n){return this.generateAssignment(e.left,e.right,`=`,t,n)},ObjectPattern:function(e,t,i){var a,o,s,l,u,d=this;if(!e.properties.length)return`{}`;if(l=!1,e.properties.length===1)u=e.properties[0],u.type===n.Property&&u.value.type!==n.Identifier&&(l=!0);else for(o=0,s=e.properties.length;o<s;++o)if(u=e.properties[o],u.type===n.Property&&!u.shorthand){l=!0;break}return a=[`{`,l?h:``],U(function(t){var n,i;for(n=0,i=e.properties.length;n<i;++n)a.push(l?t:``),a.push(d.generateExpression(e.properties[n],r.Sequence,N)),n+1<i&&a.push(`,`+(l?h:g))}),l&&!R(z(a).toString())&&a.push(h),a.push(l?c:``),a.push(`}`),a},ThisExpression:function(e,t,n){return`this`},Super:function(e,t,n){return`super`},Identifier:function(e,t,n){return Y(e)},ImportDefaultSpecifier:function(e,t,n){return Y(e.id||e.local)},ImportNamespaceSpecifier:function(e,t,n){var r=[`*`],i=e.id||e.local;return i&&r.push(g+`as`+B()+Y(i)),r},ImportSpecifier:function(e,t,n){var r=e.imported,i=[r.name],a=e.local;return a&&a.name!==r.name&&i.push(B()+`as`+B()+Y(a)),i},ExportSpecifier:function(e,t,n){var r=e.local,i=[r.name],a=e.exported;return a&&a.name!==r.name&&i.push(B()+`as`+B()+Y(a)),i},Literal:function(e,t,r){var i;if(e.hasOwnProperty(`raw`)&&S&&x.raw)try{if(i=S(e.raw).body[0].expression,i.type===n.Literal&&i.value===e.value)return e.raw}catch{}return e.regex?`/`+e.regex.pattern+`/`+e.regex.flags:typeof e.value==`bigint`?e.value.toString()+`n`:e.bigint?e.bigint+`n`:e.value===null?`null`:typeof e.value==`string`?xe(e.value):typeof e.value==`number`?he(e.value):typeof e.value==`boolean`?e.value?`true`:`false`:_e(e.value)},GeneratorExpression:function(e,t,n){return this.ComprehensionExpression(e,t,n)},ComprehensionExpression:function(e,t,i){var a,o,s,c,l=this;return a=e.type===n.GeneratorExpression?[`(`]:[`[`],x.moz.comprehensionExpressionStartsWithAssignment&&(c=this.generateExpression(e.body,r.Assignment,N),a.push(c)),e.blocks&&U(function(){for(o=0,s=e.blocks.length;o<s;++o)c=l.generateExpression(e.blocks[o],r.Sequence,N),o>0||x.moz.comprehensionExpressionStartsWithAssignment?a=V(a,c):a.push(c)}),e.filter&&(a=V(a,`if`+g),c=this.generateExpression(e.filter,r.Sequence,N),a=V(a,[`(`,c,`)`])),x.moz.comprehensionExpressionStartsWithAssignment||(c=this.generateExpression(e.body,r.Assignment,N),a=V(a,c)),a.push(e.type===n.GeneratorExpression?`)`:`]`),a},ComprehensionBlock:function(e,t,i){var a;return a=e.left.type===n.VariableDeclaration?[e.left.kind,B(),this.generateStatement(e.left.declarations[0],le)]:this.generateExpression(e.left,r.Call,N),a=V(a,e.of?`of`:`in`),a=V(a,this.generateExpression(e.right,r.Sequence,N)),[`for`+g+`(`,a,`)`]},SpreadElement:function(e,t,n){return[`...`,this.generateExpression(e.argument,r.Assignment,N)]},TaggedTemplateExpression:function(e,t,n){var i=ae;n&k||(i=oe);var a=[this.generateExpression(e.tag,r.Call,i),this.generateExpression(e.quasi,r.Primary,se)];return K(a,r.TaggedTemplate,t)},TemplateElement:function(e,t,n){return e.value.raw},TemplateLiteral:function(e,t,n){var i,a,o;for(i=["`"],a=0,o=e.quasis.length;a<o;++a)i.push(this.generateExpression(e.quasis[a],r.Primary,N)),a+1<o&&(i.push("${"+g),i.push(this.generateExpression(e.expressions[a],r.Sequence,N)),i.push(g+`}`));return i.push("`"),i},ModuleSpecifier:function(e,t,n){return this.Literal(e,t,n)},ImportExpression:function(e,t,n){return K([`import(`,this.generateExpression(e.source,r.Assignment,N),`)`],r.Call,t)}},pe(J.prototype,J.Expression),J.prototype.generateExpression=function(e,t,r){var i,a;return a=e.type||n.Property,x.verbatim&&e.hasOwnProperty(x.verbatim)?q(e,t):(i=this[a](e,t,r),x.comment&&(i=De(e,i)),z(i,e))},J.prototype.generateStatement=function(e,t){var r,i;return r=this[e.type](e,t),x.comment&&(r=De(e,r)),i=z(r).toString(),e.type===n.Program&&!y&&h===``&&i.charAt(i.length-1)===`
21
+ `&&(r=C?z(r).replaceRight(/\s+$/,``):i.replace(/\s+$/,``)),z(r,e)};function Me(e){var t;if(t=new J,te(e))return t.generateStatement(e,P);if(D(e))return t.generateExpression(e,r.Sequence,N);throw Error(`Unknown node type: `+e.type)}function Ne(n,r){var i=fe(),o,s;return r==null?(r=i,l=r.format.indent.style,c=I(l,r.format.indent.base)):(typeof r.indent==`string`&&(i.format.indent.style=r.indent),typeof r.base==`number`&&(i.format.indent.base=r.base),r=me(i,r),l=r.format.indent.style,c=typeof r.base==`string`?r.base:I(l,r.format.indent.base)),u=r.format.json,d=r.format.renumber,f=u?!1:r.format.hexadecimal,p=u?`double`:r.format.quotes,m=r.format.escapeless,h=r.format.newline,g=r.format.space,r.format.compact&&(h=g=l=c=``),_=r.format.parentheses,v=r.format.semicolons,y=r.format.safeConcatenation,b=r.directive,S=u?null:r.parse,C=r.sourceMap,w=r.sourceCode,T=r.format.preserveBlankLines&&w!==null,x=r,C&&(a=exports.browser?global.sourceMap.SourceNode:t.require_source_map().SourceNode),o=Me(n),C?(s=o.toStringWithSourceMap({file:r.file,sourceRoot:r.sourceMapRoot}),r.sourceContent&&s.map.setSourceContent(r.sourceMap,r.sourceContent),r.sourceMapWithCode?s:s.map.toString()):(s={code:o.toString(),map:null},r.sourceMapWithCode?s:s.code)}ee={indent:{style:``,base:0},renumber:!0,hexadecimal:!0,quotes:`auto`,escapeless:!0,compact:!0,parentheses:!1,semicolons:!1},E=fe().format,exports.version=Te().version,exports.generate=Ne,exports.attachComments=o.attachComments,exports.Precedence=me({},r),exports.browser=!1,exports.FORMAT_MINIFY=ee,exports.FORMAT_DEFAULTS=E})()}),H=e.__commonJSMin((exports,t)=>{(function(n,r){typeof exports==`object`&&typeof t==`object`?t.exports=r():typeof define==`function`&&define.amd?define([],r):typeof exports==`object`?exports.esprima=r():n.esprima=r()})(void 0,function(){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var i=t[r]={exports:{},id:r,loaded:!1};return e[r].call(i.exports,i,i.exports,n),i.loaded=!0,i.exports}return n.m=e,n.c=t,n.p=``,n(0)}([function(e,t,n){"use strict";Object.defineProperty(t,`__esModule`,{value:!0});var r=n(1),i=n(3),a=n(8),o=n(15);function s(e,t,n){var o=null,s=function(e,t){n&&n(e,t),o&&o.visit(e,t)},c=typeof n==`function`?s:null,l=!1;if(t){l=typeof t.comment==`boolean`&&t.comment;var u=typeof t.attachComment==`boolean`&&t.attachComment;(l||u)&&(o=new r.CommentHandler,o.attach=u,t.comment=!0,c=s)}var d=!1;t&&typeof t.sourceType==`string`&&(d=t.sourceType===`module`);var f;f=t&&typeof t.jsx==`boolean`&&t.jsx?new i.JSXParser(e,t,c):new a.Parser(e,t,c);var p=d?f.parseModule():f.parseScript(),m=p;return l&&o&&(m.comments=o.comments),f.config.tokens&&(m.tokens=f.tokens),f.config.tolerant&&(m.errors=f.errorHandler.errors),m}t.parse=s;function c(e,t,n){var r=t||{};return r.sourceType=`module`,s(e,r,n)}t.parseModule=c;function l(e,t,n){var r=t||{};return r.sourceType=`script`,s(e,r,n)}t.parseScript=l;function u(e,t,n){var r=new o.Tokenizer(e,t),i;i=[];try{for(;;){var a=r.getNextToken();if(!a)break;n&&(a=n(a)),i.push(a)}}catch(e){r.errorHandler.tolerate(e)}return r.errorHandler.tolerant&&(i.errors=r.errors()),i}t.tokenize=u;var d=n(2);t.Syntax=d.Syntax,t.version=`4.0.1`},function(e,t,n){"use strict";Object.defineProperty(t,`__esModule`,{value:!0});var r=n(2),i=function(){function e(){this.attach=!1,this.comments=[],this.stack=[],this.leading=[],this.trailing=[]}return e.prototype.insertInnerComments=function(e,t){if(e.type===r.Syntax.BlockStatement&&e.body.length===0){for(var n=[],i=this.leading.length-1;i>=0;--i){var a=this.leading[i];t.end.offset>=a.start&&(n.unshift(a.comment),this.leading.splice(i,1),this.trailing.splice(i,1))}n.length&&(e.innerComments=n)}},e.prototype.findTrailingComments=function(e){var t=[];if(this.trailing.length>0){for(var n=this.trailing.length-1;n>=0;--n){var r=this.trailing[n];r.start>=e.end.offset&&t.unshift(r.comment)}return this.trailing.length=0,t}var i=this.stack[this.stack.length-1];if(i&&i.node.trailingComments){var a=i.node.trailingComments[0];a&&a.range[0]>=e.end.offset&&(t=i.node.trailingComments,delete i.node.trailingComments)}return t},e.prototype.findLeadingComments=function(e){for(var t=[],n;this.stack.length>0;){var r=this.stack[this.stack.length-1];if(r&&r.start>=e.start.offset)n=r.node,this.stack.pop();else break}if(n){for(var i=n.leadingComments?n.leadingComments.length:0,a=i-1;a>=0;--a){var o=n.leadingComments[a];o.range[1]<=e.start.offset&&(t.unshift(o),n.leadingComments.splice(a,1))}return n.leadingComments&&n.leadingComments.length===0&&delete n.leadingComments,t}for(var a=this.leading.length-1;a>=0;--a){var r=this.leading[a];r.start<=e.start.offset&&(t.unshift(r.comment),this.leading.splice(a,1))}return t},e.prototype.visitNode=function(e,t){if(!(e.type===r.Syntax.Program&&e.body.length>0)){this.insertInnerComments(e,t);var n=this.findTrailingComments(t),i=this.findLeadingComments(t);i.length>0&&(e.leadingComments=i),n.length>0&&(e.trailingComments=n),this.stack.push({node:e,start:t.start.offset})}},e.prototype.visitComment=function(e,t){var n=e.type[0]===`L`?`Line`:`Block`,r={type:n,value:e.value};if(e.range&&(r.range=e.range),e.loc&&(r.loc=e.loc),this.comments.push(r),this.attach){var i={comment:{type:n,value:e.value,range:[t.start.offset,t.end.offset]},start:t.start.offset};e.loc&&(i.comment.loc=e.loc),e.type=n,this.leading.push(i),this.trailing.push(i)}},e.prototype.visit=function(e,t){e.type===`LineComment`||e.type===`BlockComment`?this.visitComment(e,t):this.attach&&this.visitNode(e,t)},e}();t.CommentHandler=i},function(e,t){"use strict";Object.defineProperty(t,`__esModule`,{value:!0}),t.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(e,t,n){"use strict";var r=this&&this.__extends||function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(t,n){e(t,n);function r(){this.constructor=t}t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}}();Object.defineProperty(t,`__esModule`,{value:!0});var i=n(4),a=n(5),o=n(6),s=n(7),c=n(8),l=n(13),u=n(14);l.TokenName[100]=`JSXIdentifier`,l.TokenName[101]=`JSXText`;function d(e){var t;switch(e.type){case o.JSXSyntax.JSXIdentifier:var n=e;t=n.name;break;case o.JSXSyntax.JSXNamespacedName:var r=e;t=d(r.namespace)+`:`+d(r.name);break;case o.JSXSyntax.JSXMemberExpression:var i=e;t=d(i.object)+`.`+d(i.property);break;default:break}return t}var f=function(e){r(t,e);function t(t,n,r){return e.call(this,t,n,r)||this}return t.prototype.parsePrimaryExpression=function(){return this.match(`<`)?this.parseJSXRoot():e.prototype.parsePrimaryExpression.call(this)},t.prototype.startJSX=function(){this.scanner.index=this.startMarker.index,this.scanner.lineNumber=this.startMarker.line,this.scanner.lineStart=this.startMarker.index-this.startMarker.column},t.prototype.finishJSX=function(){this.nextToken()},t.prototype.reenterJSX=function(){this.startJSX(),this.expectJSX(`}`),this.config.tokens&&this.tokens.pop()},t.prototype.createJSXNode=function(){return this.collectComments(),{index:this.scanner.index,line:this.scanner.lineNumber,column:this.scanner.index-this.scanner.lineStart}},t.prototype.createJSXChildNode=function(){return{index:this.scanner.index,line:this.scanner.lineNumber,column:this.scanner.index-this.scanner.lineStart}},t.prototype.scanXHTMLEntity=function(e){for(var t=`&`,n=!0,r=!1,a=!1,o=!1;!this.scanner.eof()&&n&&!r;){var s=this.scanner.source[this.scanner.index];if(s===e)break;if(r=s===`;`,t+=s,++this.scanner.index,!r)switch(t.length){case 2:a=s===`#`;break;case 3:a&&(o=s===`x`,n=o||i.Character.isDecimalDigit(s.charCodeAt(0)),a&&=!o);break;default:n&&=!(a&&!i.Character.isDecimalDigit(s.charCodeAt(0))),n&&=!(o&&!i.Character.isHexDigit(s.charCodeAt(0)));break}}if(n&&r&&t.length>2){var c=t.substr(1,t.length-2);a&&c.length>1?t=String.fromCharCode(parseInt(c.substr(1),10)):o&&c.length>2?t=String.fromCharCode(parseInt(`0`+c.substr(1),16)):!a&&!o&&u.XHTMLEntities[c]&&(t=u.XHTMLEntities[c])}return t},t.prototype.lexJSX=function(){var e=this.scanner.source.charCodeAt(this.scanner.index);if(e===60||e===62||e===47||e===58||e===61||e===123||e===125){var t=this.scanner.source[this.scanner.index++];return{type:7,value:t,lineNumber:this.scanner.lineNumber,lineStart:this.scanner.lineStart,start:this.scanner.index-1,end:this.scanner.index}}if(e===34||e===39){for(var n=this.scanner.index,r=this.scanner.source[this.scanner.index++],a=``;!this.scanner.eof();){var o=this.scanner.source[this.scanner.index++];if(o===r)break;o===`&`?a+=this.scanXHTMLEntity(r):a+=o}return{type:8,value:a,lineNumber:this.scanner.lineNumber,lineStart:this.scanner.lineStart,start:n,end:this.scanner.index}}if(e===46){var s=this.scanner.source.charCodeAt(this.scanner.index+1),c=this.scanner.source.charCodeAt(this.scanner.index+2),t=s===46&&c===46?`...`:`.`,n=this.scanner.index;return this.scanner.index+=t.length,{type:7,value:t,lineNumber:this.scanner.lineNumber,lineStart:this.scanner.lineStart,start:n,end:this.scanner.index}}if(e===96)return{type:10,value:``,lineNumber:this.scanner.lineNumber,lineStart:this.scanner.lineStart,start:this.scanner.index,end:this.scanner.index};if(i.Character.isIdentifierStart(e)&&e!==92){var n=this.scanner.index;for(++this.scanner.index;!this.scanner.eof();){var o=this.scanner.source.charCodeAt(this.scanner.index);if(i.Character.isIdentifierPart(o)&&o!==92)++this.scanner.index;else if(o===45)++this.scanner.index;else break}var l=this.scanner.source.slice(n,this.scanner.index);return{type:100,value:l,lineNumber:this.scanner.lineNumber,lineStart:this.scanner.lineStart,start:n,end:this.scanner.index}}return this.scanner.lex()},t.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 e=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(e)),e},t.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 e=this.scanner.index,t=``;!this.scanner.eof();){var n=this.scanner.source[this.scanner.index];if(n===`{`||n===`<`)break;++this.scanner.index,t+=n,i.Character.isLineTerminator(n.charCodeAt(0))&&(++this.scanner.lineNumber,n===`\r`&&this.scanner.source[this.scanner.index]===`
22
+ `&&++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 r={type:101,value:t,lineNumber:this.scanner.lineNumber,lineStart:this.scanner.lineStart,start:e,end:this.scanner.index};return t.length>0&&this.config.tokens&&this.tokens.push(this.convertToken(r)),r},t.prototype.peekJSXToken=function(){var e=this.scanner.saveState();this.scanner.scanComments();var t=this.lexJSX();return this.scanner.restoreState(e),t},t.prototype.expectJSX=function(e){var t=this.nextJSXToken();(t.type!==7||t.value!==e)&&this.throwUnexpectedToken(t)},t.prototype.matchJSX=function(e){var t=this.peekJSXToken();return t.type===7&&t.value===e},t.prototype.parseJSXIdentifier=function(){var e=this.createJSXNode(),t=this.nextJSXToken();return t.type!==100&&this.throwUnexpectedToken(t),this.finalize(e,new a.JSXIdentifier(t.value))},t.prototype.parseJSXElementName=function(){var e=this.createJSXNode(),t=this.parseJSXIdentifier();if(this.matchJSX(`:`)){var n=t;this.expectJSX(`:`);var r=this.parseJSXIdentifier();t=this.finalize(e,new a.JSXNamespacedName(n,r))}else if(this.matchJSX(`.`))for(;this.matchJSX(`.`);){var i=t;this.expectJSX(`.`);var o=this.parseJSXIdentifier();t=this.finalize(e,new a.JSXMemberExpression(i,o))}return t},t.prototype.parseJSXAttributeName=function(){var e=this.createJSXNode(),t,n=this.parseJSXIdentifier();if(this.matchJSX(`:`)){var r=n;this.expectJSX(`:`);var i=this.parseJSXIdentifier();t=this.finalize(e,new a.JSXNamespacedName(r,i))}else t=n;return t},t.prototype.parseJSXStringLiteralAttribute=function(){var e=this.createJSXNode(),t=this.nextJSXToken();t.type!==8&&this.throwUnexpectedToken(t);var n=this.getTokenRaw(t);return this.finalize(e,new s.Literal(t.value,n))},t.prototype.parseJSXExpressionAttribute=function(){var e=this.createJSXNode();this.expectJSX(`{`),this.finishJSX(),this.match(`}`)&&this.tolerateError(`JSX attributes must only be assigned a non-empty expression`);var t=this.parseAssignmentExpression();return this.reenterJSX(),this.finalize(e,new a.JSXExpressionContainer(t))},t.prototype.parseJSXAttributeValue=function(){return this.matchJSX(`{`)?this.parseJSXExpressionAttribute():this.matchJSX(`<`)?this.parseJSXElement():this.parseJSXStringLiteralAttribute()},t.prototype.parseJSXNameValueAttribute=function(){var e=this.createJSXNode(),t=this.parseJSXAttributeName(),n=null;return this.matchJSX(`=`)&&(this.expectJSX(`=`),n=this.parseJSXAttributeValue()),this.finalize(e,new a.JSXAttribute(t,n))},t.prototype.parseJSXSpreadAttribute=function(){var e=this.createJSXNode();this.expectJSX(`{`),this.expectJSX(`...`),this.finishJSX();var t=this.parseAssignmentExpression();return this.reenterJSX(),this.finalize(e,new a.JSXSpreadAttribute(t))},t.prototype.parseJSXAttributes=function(){for(var e=[];!this.matchJSX(`/`)&&!this.matchJSX(`>`);){var t=this.matchJSX(`{`)?this.parseJSXSpreadAttribute():this.parseJSXNameValueAttribute();e.push(t)}return e},t.prototype.parseJSXOpeningElement=function(){var e=this.createJSXNode();this.expectJSX(`<`);var t=this.parseJSXElementName(),n=this.parseJSXAttributes(),r=this.matchJSX(`/`);return r&&this.expectJSX(`/`),this.expectJSX(`>`),this.finalize(e,new a.JSXOpeningElement(t,r,n))},t.prototype.parseJSXBoundaryElement=function(){var e=this.createJSXNode();if(this.expectJSX(`<`),this.matchJSX(`/`)){this.expectJSX(`/`);var t=this.parseJSXElementName();return this.expectJSX(`>`),this.finalize(e,new a.JSXClosingElement(t))}var n=this.parseJSXElementName(),r=this.parseJSXAttributes(),i=this.matchJSX(`/`);return i&&this.expectJSX(`/`),this.expectJSX(`>`),this.finalize(e,new a.JSXOpeningElement(n,i,r))},t.prototype.parseJSXEmptyExpression=function(){var e=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(e,new a.JSXEmptyExpression)},t.prototype.parseJSXExpressionContainer=function(){var e=this.createJSXNode();this.expectJSX(`{`);var t;return this.matchJSX(`}`)?(t=this.parseJSXEmptyExpression(),this.expectJSX(`}`)):(this.finishJSX(),t=this.parseAssignmentExpression(),this.reenterJSX()),this.finalize(e,new a.JSXExpressionContainer(t))},t.prototype.parseJSXChildren=function(){for(var e=[];!this.scanner.eof();){var t=this.createJSXChildNode(),n=this.nextJSXText();if(n.start<n.end){var r=this.getTokenRaw(n),i=this.finalize(t,new a.JSXText(n.value,r));e.push(i)}if(this.scanner.source[this.scanner.index]===`{`){var o=this.parseJSXExpressionContainer();e.push(o)}else break}return e},t.prototype.parseComplexJSXElement=function(e){for(var t=[];!this.scanner.eof();){e.children=e.children.concat(this.parseJSXChildren());var n=this.createJSXChildNode(),r=this.parseJSXBoundaryElement();if(r.type===o.JSXSyntax.JSXOpeningElement){var i=r;if(i.selfClosing){var s=this.finalize(n,new a.JSXElement(i,[],null));e.children.push(s)}else t.push(e),e={node:n,opening:i,closing:null,children:[]}}if(r.type===o.JSXSyntax.JSXClosingElement){e.closing=r;var c=d(e.opening.name),l=d(e.closing.name);if(c!==l&&this.tolerateError(`Expected corresponding JSX closing tag for %0`,c),t.length>0){var s=this.finalize(e.node,new a.JSXElement(e.opening,e.children,e.closing));e=t[t.length-1],e.children.push(s),t.pop()}else break}}return e},t.prototype.parseJSXElement=function(){var e=this.createJSXNode(),t=this.parseJSXOpeningElement(),n=[],r=null;if(!t.selfClosing){var i=this.parseComplexJSXElement({node:e,opening:t,closing:r,children:n});n=i.children,r=i.closing}return this.finalize(e,new a.JSXElement(t,n,r))},t.prototype.parseJSXRoot=function(){this.config.tokens&&this.tokens.pop(),this.startJSX();var e=this.parseJSXElement();return this.finishJSX(),e},t.prototype.isStartOfExpression=function(){return e.prototype.isStartOfExpression.call(this)||this.match(`<`)},t}(c.Parser);t.JSXParser=f},function(e,t){"use strict";Object.defineProperty(t,`__esModule`,{value:!0});var n={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]/};t.Character={fromCodePoint:function(e){return e<65536?String.fromCharCode(e):String.fromCharCode(55296+(e-65536>>10))+String.fromCharCode(56320+(e-65536&1023))},isWhiteSpace:function(e){return e===32||e===9||e===11||e===12||e===160||e>=5760&&[5760,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8239,8287,12288,65279].indexOf(e)>=0},isLineTerminator:function(e){return e===10||e===13||e===8232||e===8233},isIdentifierStart:function(e){return e===36||e===95||e>=65&&e<=90||e>=97&&e<=122||e===92||e>=128&&n.NonAsciiIdentifierStart.test(t.Character.fromCodePoint(e))},isIdentifierPart:function(e){return e===36||e===95||e>=65&&e<=90||e>=97&&e<=122||e>=48&&e<=57||e===92||e>=128&&n.NonAsciiIdentifierPart.test(t.Character.fromCodePoint(e))},isDecimalDigit:function(e){return e>=48&&e<=57},isHexDigit:function(e){return e>=48&&e<=57||e>=65&&e<=70||e>=97&&e<=102},isOctalDigit:function(e){return e>=48&&e<=55}}},function(e,t,n){"use strict";Object.defineProperty(t,`__esModule`,{value:!0});var r=n(6),i=function(){function e(e){this.type=r.JSXSyntax.JSXClosingElement,this.name=e}return e}();t.JSXClosingElement=i;var a=function(){function e(e,t,n){this.type=r.JSXSyntax.JSXElement,this.openingElement=e,this.children=t,this.closingElement=n}return e}();t.JSXElement=a;var o=function(){function e(){this.type=r.JSXSyntax.JSXEmptyExpression}return e}();t.JSXEmptyExpression=o;var s=function(){function e(e){this.type=r.JSXSyntax.JSXExpressionContainer,this.expression=e}return e}();t.JSXExpressionContainer=s;var c=function(){function e(e){this.type=r.JSXSyntax.JSXIdentifier,this.name=e}return e}();t.JSXIdentifier=c;var l=function(){function e(e,t){this.type=r.JSXSyntax.JSXMemberExpression,this.object=e,this.property=t}return e}();t.JSXMemberExpression=l;var u=function(){function e(e,t){this.type=r.JSXSyntax.JSXAttribute,this.name=e,this.value=t}return e}();t.JSXAttribute=u;var d=function(){function e(e,t){this.type=r.JSXSyntax.JSXNamespacedName,this.namespace=e,this.name=t}return e}();t.JSXNamespacedName=d;var f=function(){function e(e,t,n){this.type=r.JSXSyntax.JSXOpeningElement,this.name=e,this.selfClosing=t,this.attributes=n}return e}();t.JSXOpeningElement=f;var p=function(){function e(e){this.type=r.JSXSyntax.JSXSpreadAttribute,this.argument=e}return e}();t.JSXSpreadAttribute=p;var m=function(){function e(e,t){this.type=r.JSXSyntax.JSXText,this.value=e,this.raw=t}return e}();t.JSXText=m},function(e,t){"use strict";Object.defineProperty(t,`__esModule`,{value:!0}),t.JSXSyntax={JSXAttribute:`JSXAttribute`,JSXClosingElement:`JSXClosingElement`,JSXElement:`JSXElement`,JSXEmptyExpression:`JSXEmptyExpression`,JSXExpressionContainer:`JSXExpressionContainer`,JSXIdentifier:`JSXIdentifier`,JSXMemberExpression:`JSXMemberExpression`,JSXNamespacedName:`JSXNamespacedName`,JSXOpeningElement:`JSXOpeningElement`,JSXSpreadAttribute:`JSXSpreadAttribute`,JSXText:`JSXText`}},function(e,t,n){"use strict";Object.defineProperty(t,`__esModule`,{value:!0});var r=n(2),i=function(){function e(e){this.type=r.Syntax.ArrayExpression,this.elements=e}return e}();t.ArrayExpression=i;var a=function(){function e(e){this.type=r.Syntax.ArrayPattern,this.elements=e}return e}();t.ArrayPattern=a;var o=function(){function e(e,t,n){this.type=r.Syntax.ArrowFunctionExpression,this.id=null,this.params=e,this.body=t,this.generator=!1,this.expression=n,this.async=!1}return e}();t.ArrowFunctionExpression=o;var s=function(){function e(e,t,n){this.type=r.Syntax.AssignmentExpression,this.operator=e,this.left=t,this.right=n}return e}();t.AssignmentExpression=s;var c=function(){function e(e,t){this.type=r.Syntax.AssignmentPattern,this.left=e,this.right=t}return e}();t.AssignmentPattern=c;var l=function(){function e(e,t,n){this.type=r.Syntax.ArrowFunctionExpression,this.id=null,this.params=e,this.body=t,this.generator=!1,this.expression=n,this.async=!0}return e}();t.AsyncArrowFunctionExpression=l;var u=function(){function e(e,t,n){this.type=r.Syntax.FunctionDeclaration,this.id=e,this.params=t,this.body=n,this.generator=!1,this.expression=!1,this.async=!0}return e}();t.AsyncFunctionDeclaration=u;var d=function(){function e(e,t,n){this.type=r.Syntax.FunctionExpression,this.id=e,this.params=t,this.body=n,this.generator=!1,this.expression=!1,this.async=!0}return e}();t.AsyncFunctionExpression=d;var f=function(){function e(e){this.type=r.Syntax.AwaitExpression,this.argument=e}return e}();t.AwaitExpression=f;var p=function(){function e(e,t,n){var i=e===`||`||e===`&&`;this.type=i?r.Syntax.LogicalExpression:r.Syntax.BinaryExpression,this.operator=e,this.left=t,this.right=n}return e}();t.BinaryExpression=p;var m=function(){function e(e){this.type=r.Syntax.BlockStatement,this.body=e}return e}();t.BlockStatement=m;var h=function(){function e(e){this.type=r.Syntax.BreakStatement,this.label=e}return e}();t.BreakStatement=h;var g=function(){function e(e,t){this.type=r.Syntax.CallExpression,this.callee=e,this.arguments=t}return e}();t.CallExpression=g;var _=function(){function e(e,t){this.type=r.Syntax.CatchClause,this.param=e,this.body=t}return e}();t.CatchClause=_;var v=function(){function e(e){this.type=r.Syntax.ClassBody,this.body=e}return e}();t.ClassBody=v;var y=function(){function e(e,t,n){this.type=r.Syntax.ClassDeclaration,this.id=e,this.superClass=t,this.body=n}return e}();t.ClassDeclaration=y;var b=function(){function e(e,t,n){this.type=r.Syntax.ClassExpression,this.id=e,this.superClass=t,this.body=n}return e}();t.ClassExpression=b;var x=function(){function e(e,t){this.type=r.Syntax.MemberExpression,this.computed=!0,this.object=e,this.property=t}return e}();t.ComputedMemberExpression=x;var S=function(){function e(e,t,n){this.type=r.Syntax.ConditionalExpression,this.test=e,this.consequent=t,this.alternate=n}return e}();t.ConditionalExpression=S;var C=function(){function e(e){this.type=r.Syntax.ContinueStatement,this.label=e}return e}();t.ContinueStatement=C;var w=function(){function e(){this.type=r.Syntax.DebuggerStatement}return e}();t.DebuggerStatement=w;var T=function(){function e(e,t){this.type=r.Syntax.ExpressionStatement,this.expression=e,this.directive=t}return e}();t.Directive=T;var ee=function(){function e(e,t){this.type=r.Syntax.DoWhileStatement,this.body=e,this.test=t}return e}();t.DoWhileStatement=ee;var E=function(){function e(){this.type=r.Syntax.EmptyStatement}return e}();t.EmptyStatement=E;var D=function(){function e(e){this.type=r.Syntax.ExportAllDeclaration,this.source=e}return e}();t.ExportAllDeclaration=D;var te=function(){function e(e){this.type=r.Syntax.ExportDefaultDeclaration,this.declaration=e}return e}();t.ExportDefaultDeclaration=te;var O=function(){function e(e,t,n){this.type=r.Syntax.ExportNamedDeclaration,this.declaration=e,this.specifiers=t,this.source=n}return e}();t.ExportNamedDeclaration=O;var k=function(){function e(e,t){this.type=r.Syntax.ExportSpecifier,this.exported=t,this.local=e}return e}();t.ExportSpecifier=k;var A=function(){function e(e){this.type=r.Syntax.ExpressionStatement,this.expression=e}return e}();t.ExpressionStatement=A;var j=function(){function e(e,t,n){this.type=r.Syntax.ForInStatement,this.left=e,this.right=t,this.body=n,this.each=!1}return e}();t.ForInStatement=j;var ne=function(){function e(e,t,n){this.type=r.Syntax.ForOfStatement,this.left=e,this.right=t,this.body=n}return e}();t.ForOfStatement=ne;var M=function(){function e(e,t,n,i){this.type=r.Syntax.ForStatement,this.init=e,this.test=t,this.update=n,this.body=i}return e}();t.ForStatement=M;var re=function(){function e(e,t,n,i){this.type=r.Syntax.FunctionDeclaration,this.id=e,this.params=t,this.body=n,this.generator=i,this.expression=!1,this.async=!1}return e}();t.FunctionDeclaration=re;var ie=function(){function e(e,t,n,i){this.type=r.Syntax.FunctionExpression,this.id=e,this.params=t,this.body=n,this.generator=i,this.expression=!1,this.async=!1}return e}();t.FunctionExpression=ie;var ae=function(){function e(e){this.type=r.Syntax.Identifier,this.name=e}return e}();t.Identifier=ae;var N=function(){function e(e,t,n){this.type=r.Syntax.IfStatement,this.test=e,this.consequent=t,this.alternate=n}return e}();t.IfStatement=N;var oe=function(){function e(e,t){this.type=r.Syntax.ImportDeclaration,this.specifiers=e,this.source=t}return e}();t.ImportDeclaration=oe;var se=function(){function e(e){this.type=r.Syntax.ImportDefaultSpecifier,this.local=e}return e}();t.ImportDefaultSpecifier=se;var ce=function(){function e(e){this.type=r.Syntax.ImportNamespaceSpecifier,this.local=e}return e}();t.ImportNamespaceSpecifier=ce;var P=function(){function e(e,t){this.type=r.Syntax.ImportSpecifier,this.local=e,this.imported=t}return e}();t.ImportSpecifier=P;var F=function(){function e(e,t){this.type=r.Syntax.LabeledStatement,this.label=e,this.body=t}return e}();t.LabeledStatement=F;var le=function(){function e(e,t){this.type=r.Syntax.Literal,this.value=e,this.raw=t}return e}();t.Literal=le;var ue=function(){function e(e,t){this.type=r.Syntax.MetaProperty,this.meta=e,this.property=t}return e}();t.MetaProperty=ue;var de=function(){function e(e,t,n,i,a){this.type=r.Syntax.MethodDefinition,this.key=e,this.computed=t,this.value=n,this.kind=i,this.static=a}return e}();t.MethodDefinition=de;var fe=function(){function e(e){this.type=r.Syntax.Program,this.body=e,this.sourceType=`module`}return e}();t.Module=fe;var I=function(){function e(e,t){this.type=r.Syntax.NewExpression,this.callee=e,this.arguments=t}return e}();t.NewExpression=I;var L=function(){function e(e){this.type=r.Syntax.ObjectExpression,this.properties=e}return e}();t.ObjectExpression=L;var R=function(){function e(e){this.type=r.Syntax.ObjectPattern,this.properties=e}return e}();t.ObjectPattern=R;var pe=function(){function e(e,t,n,i,a,o){this.type=r.Syntax.Property,this.key=t,this.computed=n,this.value=i,this.kind=e,this.method=a,this.shorthand=o}return e}();t.Property=pe;var me=function(){function e(e,t,n,i){this.type=r.Syntax.Literal,this.value=e,this.raw=t,this.regex={pattern:n,flags:i}}return e}();t.RegexLiteral=me;var he=function(){function e(e){this.type=r.Syntax.RestElement,this.argument=e}return e}();t.RestElement=he;var ge=function(){function e(e){this.type=r.Syntax.ReturnStatement,this.argument=e}return e}();t.ReturnStatement=ge;var _e=function(){function e(e){this.type=r.Syntax.Program,this.body=e,this.sourceType=`script`}return e}();t.Script=_e;var ve=function(){function e(e){this.type=r.Syntax.SequenceExpression,this.expressions=e}return e}();t.SequenceExpression=ve;var ye=function(){function e(e){this.type=r.Syntax.SpreadElement,this.argument=e}return e}();t.SpreadElement=ye;var be=function(){function e(e,t){this.type=r.Syntax.MemberExpression,this.computed=!1,this.object=e,this.property=t}return e}();t.StaticMemberExpression=be;var xe=function(){function e(){this.type=r.Syntax.Super}return e}();t.Super=xe;var Se=function(){function e(e,t){this.type=r.Syntax.SwitchCase,this.test=e,this.consequent=t}return e}();t.SwitchCase=Se;var Ce=function(){function e(e,t){this.type=r.Syntax.SwitchStatement,this.discriminant=e,this.cases=t}return e}();t.SwitchStatement=Ce;var z=function(){function e(e,t){this.type=r.Syntax.TaggedTemplateExpression,this.tag=e,this.quasi=t}return e}();t.TaggedTemplateExpression=z;var B=function(){function e(e,t){this.type=r.Syntax.TemplateElement,this.value=e,this.tail=t}return e}();t.TemplateElement=B;var we=function(){function e(e,t){this.type=r.Syntax.TemplateLiteral,this.quasis=e,this.expressions=t}return e}();t.TemplateLiteral=we;var Te=function(){function e(){this.type=r.Syntax.ThisExpression}return e}();t.ThisExpression=Te;var V=function(){function e(e){this.type=r.Syntax.ThrowStatement,this.argument=e}return e}();t.ThrowStatement=V;var H=function(){function e(e,t,n){this.type=r.Syntax.TryStatement,this.block=e,this.handler=t,this.finalizer=n}return e}();t.TryStatement=H;var U=function(){function e(e,t){this.type=r.Syntax.UnaryExpression,this.operator=e,this.argument=t,this.prefix=!0}return e}();t.UnaryExpression=U;var W=function(){function e(e,t,n){this.type=r.Syntax.UpdateExpression,this.operator=e,this.argument=t,this.prefix=n}return e}();t.UpdateExpression=W;var Ee=function(){function e(e,t){this.type=r.Syntax.VariableDeclaration,this.declarations=e,this.kind=t}return e}();t.VariableDeclaration=Ee;var G=function(){function e(e,t){this.type=r.Syntax.VariableDeclarator,this.id=e,this.init=t}return e}();t.VariableDeclarator=G;var De=function(){function e(e,t){this.type=r.Syntax.WhileStatement,this.test=e,this.body=t}return e}();t.WhileStatement=De;var Oe=function(){function e(e,t){this.type=r.Syntax.WithStatement,this.object=e,this.body=t}return e}();t.WithStatement=Oe;var K=function(){function e(e,t){this.type=r.Syntax.YieldExpression,this.argument=e,this.delegate=t}return e}();t.YieldExpression=K},function(e,t,n){"use strict";Object.defineProperty(t,`__esModule`,{value:!0});var r=n(9),i=n(10),a=n(11),o=n(7),s=n(12),c=n(2),l=n(13),u=`ArrowParameterPlaceHolder`,d=function(){function e(e,t,n){t===void 0&&(t={}),this.config={range:typeof t.range==`boolean`&&t.range,loc:typeof t.loc==`boolean`&&t.loc,source:null,tokens:typeof t.tokens==`boolean`&&t.tokens,comment:typeof t.comment==`boolean`&&t.comment,tolerant:typeof t.tolerant==`boolean`&&t.tolerant},this.config.loc&&t.source&&t.source!==null&&(this.config.source=String(t.source)),this.delegate=n,this.errorHandler=new i.ErrorHandler,this.errorHandler.tolerant=this.config.tolerant,this.scanner=new s.Scanner(e,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 e.prototype.throwError=function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];var i=Array.prototype.slice.call(arguments,1),a=e.replace(/%(\d)/g,function(e,t){return r.assert(t<i.length,`Message reference must be in range`),i[t]}),o=this.lastMarker.index,s=this.lastMarker.line,c=this.lastMarker.column+1;throw this.errorHandler.createError(o,s,c,a)},e.prototype.tolerateError=function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];var i=Array.prototype.slice.call(arguments,1),a=e.replace(/%(\d)/g,function(e,t){return r.assert(t<i.length,`Message reference must be in range`),i[t]}),o=this.lastMarker.index,s=this.scanner.lineNumber,c=this.lastMarker.column+1;this.errorHandler.tolerateError(o,s,c,a)},e.prototype.unexpectedTokenError=function(e,t){var n=t||a.Messages.UnexpectedToken,r;if(e?(t||(n=e.type===2?a.Messages.UnexpectedEOS:e.type===3?a.Messages.UnexpectedIdentifier:e.type===6?a.Messages.UnexpectedNumber:e.type===8?a.Messages.UnexpectedString:e.type===10?a.Messages.UnexpectedTemplate:a.Messages.UnexpectedToken,e.type===4&&(this.scanner.isFutureReservedWord(e.value)?n=a.Messages.UnexpectedReserved:this.context.strict&&this.scanner.isStrictModeReservedWord(e.value)&&(n=a.Messages.StrictReservedWord))),r=e.value):r=`ILLEGAL`,n=n.replace(`%0`,r),e&&typeof e.lineNumber==`number`){var i=e.start,o=e.lineNumber,s=this.lastMarker.index-this.lastMarker.column,c=e.start-s+1;return this.errorHandler.createError(i,o,c,n)}else{var i=this.lastMarker.index,o=this.lastMarker.line,c=this.lastMarker.column+1;return this.errorHandler.createError(i,o,c,n)}},e.prototype.throwUnexpectedToken=function(e,t){throw this.unexpectedTokenError(e,t)},e.prototype.tolerateUnexpectedToken=function(e,t){this.errorHandler.tolerate(this.unexpectedTokenError(e,t))},e.prototype.collectComments=function(){if(!this.config.comment)this.scanner.scanComments();else{var e=this.scanner.scanComments();if(e.length>0&&this.delegate)for(var t=0;t<e.length;++t){var n=e[t],r=void 0;r={type:n.multiLine?`BlockComment`:`LineComment`,value:this.scanner.source.slice(n.slice[0],n.slice[1])},this.config.range&&(r.range=n.range),this.config.loc&&(r.loc=n.loc);var i={start:{line:n.loc.start.line,column:n.loc.start.column,offset:n.range[0]},end:{line:n.loc.end.line,column:n.loc.end.column,offset:n.range[1]}};this.delegate(r,i)}}},e.prototype.getTokenRaw=function(e){return this.scanner.source.slice(e.start,e.end)},e.prototype.convertToken=function(e){var t={type:l.TokenName[e.type],value:this.getTokenRaw(e)};if(this.config.range&&(t.range=[e.start,e.end]),this.config.loc&&(t.loc={start:{line:this.startMarker.line,column:this.startMarker.column},end:{line:this.scanner.lineNumber,column:this.scanner.index-this.scanner.lineStart}}),e.type===9){var n=e.pattern,r=e.flags;t.regex={pattern:n,flags:r}}return t},e.prototype.nextToken=function(){var e=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 t=this.scanner.lex();return this.hasLineTerminator=e.lineNumber!==t.lineNumber,t&&this.context.strict&&t.type===3&&this.scanner.isStrictModeReservedWord(t.value)&&(t.type=4),this.lookahead=t,this.config.tokens&&t.type!==2&&this.tokens.push(this.convertToken(t)),e},e.prototype.nextRegexToken=function(){this.collectComments();var e=this.scanner.scanRegExp();return this.config.tokens&&(this.tokens.pop(),this.tokens.push(this.convertToken(e))),this.lookahead=e,this.nextToken(),e},e.prototype.createNode=function(){return{index:this.startMarker.index,line:this.startMarker.line,column:this.startMarker.column}},e.prototype.startNode=function(e,t){t===void 0&&(t=0);var n=e.start-e.lineStart,r=e.lineNumber;return n<0&&(n+=t,r--),{index:e.start,line:r,column:n}},e.prototype.finalize=function(e,t){if(this.config.range&&(t.range=[e.index,this.lastMarker.index]),this.config.loc&&(t.loc={start:{line:e.line,column:e.column},end:{line:this.lastMarker.line,column:this.lastMarker.column}},this.config.source&&(t.loc.source=this.config.source)),this.delegate){var n={start:{line:e.line,column:e.column,offset:e.index},end:{line:this.lastMarker.line,column:this.lastMarker.column,offset:this.lastMarker.index}};this.delegate(t,n)}return t},e.prototype.expect=function(e){var t=this.nextToken();(t.type!==7||t.value!==e)&&this.throwUnexpectedToken(t)},e.prototype.expectCommaSeparator=function(){if(this.config.tolerant){var e=this.lookahead;e.type===7&&e.value===`,`?this.nextToken():e.type===7&&e.value===`;`?(this.nextToken(),this.tolerateUnexpectedToken(e)):this.tolerateUnexpectedToken(e,a.Messages.UnexpectedToken)}else this.expect(`,`)},e.prototype.expectKeyword=function(e){var t=this.nextToken();(t.type!==4||t.value!==e)&&this.throwUnexpectedToken(t)},e.prototype.match=function(e){return this.lookahead.type===7&&this.lookahead.value===e},e.prototype.matchKeyword=function(e){return this.lookahead.type===4&&this.lookahead.value===e},e.prototype.matchContextualKeyword=function(e){return this.lookahead.type===3&&this.lookahead.value===e},e.prototype.matchAssign=function(){if(this.lookahead.type!==7)return!1;var e=this.lookahead.value;return e===`=`||e===`*=`||e===`**=`||e===`/=`||e===`%=`||e===`+=`||e===`-=`||e===`<<=`||e===`>>=`||e===`>>>=`||e===`&=`||e===`^=`||e===`|=`},e.prototype.isolateCoverGrammar=function(e){var t=this.context.isBindingElement,n=this.context.isAssignmentTarget,r=this.context.firstCoverInitializedNameError;this.context.isBindingElement=!0,this.context.isAssignmentTarget=!0,this.context.firstCoverInitializedNameError=null;var i=e.call(this);return this.context.firstCoverInitializedNameError!==null&&this.throwUnexpectedToken(this.context.firstCoverInitializedNameError),this.context.isBindingElement=t,this.context.isAssignmentTarget=n,this.context.firstCoverInitializedNameError=r,i},e.prototype.inheritCoverGrammar=function(e){var t=this.context.isBindingElement,n=this.context.isAssignmentTarget,r=this.context.firstCoverInitializedNameError;this.context.isBindingElement=!0,this.context.isAssignmentTarget=!0,this.context.firstCoverInitializedNameError=null;var i=e.call(this);return this.context.isBindingElement=this.context.isBindingElement&&t,this.context.isAssignmentTarget=this.context.isAssignmentTarget&&n,this.context.firstCoverInitializedNameError=r||this.context.firstCoverInitializedNameError,i},e.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)},e.prototype.parsePrimaryExpression=function(){var e=this.createNode(),t,n,r;switch(this.lookahead.type){case 3:(this.context.isModule||this.context.await)&&this.lookahead.value===`await`&&this.tolerateUnexpectedToken(this.lookahead),t=this.matchAsyncFunction()?this.parseFunctionExpression():this.finalize(e,new o.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,n=this.nextToken(),r=this.getTokenRaw(n),t=this.finalize(e,new o.Literal(n.value,r));break;case 1:this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1,n=this.nextToken(),r=this.getTokenRaw(n),t=this.finalize(e,new o.Literal(n.value===`true`,r));break;case 5:this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1,n=this.nextToken(),r=this.getTokenRaw(n),t=this.finalize(e,new o.Literal(null,r));break;case 10:t=this.parseTemplateLiteral();break;case 7:switch(this.lookahead.value){case`(`:this.context.isBindingElement=!1,t=this.inheritCoverGrammar(this.parseGroupExpression);break;case`[`:t=this.inheritCoverGrammar(this.parseArrayInitializer);break;case`{`:t=this.inheritCoverGrammar(this.parseObjectInitializer);break;case`/`:case`/=`:this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1,this.scanner.index=this.startMarker.index,n=this.nextRegexToken(),r=this.getTokenRaw(n),t=this.finalize(e,new o.RegexLiteral(n.regex,r,n.pattern,n.flags));break;default:t=this.throwUnexpectedToken(this.nextToken())}break;case 4:!this.context.strict&&this.context.allowYield&&this.matchKeyword(`yield`)?t=this.parseIdentifierName():!this.context.strict&&this.matchKeyword(`let`)?t=this.finalize(e,new o.Identifier(this.nextToken().value)):(this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1,this.matchKeyword(`function`)?t=this.parseFunctionExpression():this.matchKeyword(`this`)?(this.nextToken(),t=this.finalize(e,new o.ThisExpression)):t=this.matchKeyword(`class`)?this.parseClassExpression():this.throwUnexpectedToken(this.nextToken()));break;default:t=this.throwUnexpectedToken(this.nextToken())}return t},e.prototype.parseSpreadElement=function(){var e=this.createNode();this.expect(`...`);var t=this.inheritCoverGrammar(this.parseAssignmentExpression);return this.finalize(e,new o.SpreadElement(t))},e.prototype.parseArrayInitializer=function(){var e=this.createNode(),t=[];for(this.expect(`[`);!this.match(`]`);)if(this.match(`,`))this.nextToken(),t.push(null);else if(this.match(`...`)){var n=this.parseSpreadElement();this.match(`]`)||(this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1,this.expect(`,`)),t.push(n)}else t.push(this.inheritCoverGrammar(this.parseAssignmentExpression)),this.match(`]`)||this.expect(`,`);return this.expect(`]`),this.finalize(e,new o.ArrayExpression(t))},e.prototype.parsePropertyMethod=function(e){this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1;var t=this.context.strict,n=this.context.allowStrictDirective;this.context.allowStrictDirective=e.simple;var r=this.isolateCoverGrammar(this.parseFunctionSourceElements);return this.context.strict&&e.firstRestricted&&this.tolerateUnexpectedToken(e.firstRestricted,e.message),this.context.strict&&e.stricted&&this.tolerateUnexpectedToken(e.stricted,e.message),this.context.strict=t,this.context.allowStrictDirective=n,r},e.prototype.parsePropertyMethodFunction=function(){var e=!1,t=this.createNode(),n=this.context.allowYield;this.context.allowYield=!0;var r=this.parseFormalParameters(),i=this.parsePropertyMethod(r);return this.context.allowYield=n,this.finalize(t,new o.FunctionExpression(null,r.params,i,e))},e.prototype.parsePropertyMethodAsyncFunction=function(){var e=this.createNode(),t=this.context.allowYield,n=this.context.await;this.context.allowYield=!1,this.context.await=!0;var r=this.parseFormalParameters(),i=this.parsePropertyMethod(r);return this.context.allowYield=t,this.context.await=n,this.finalize(e,new o.AsyncFunctionExpression(null,r.params,i))},e.prototype.parseObjectPropertyKey=function(){var e=this.createNode(),t=this.nextToken(),n;switch(t.type){case 8:case 6:this.context.strict&&t.octal&&this.tolerateUnexpectedToken(t,a.Messages.StrictOctalLiteral);var r=this.getTokenRaw(t);n=this.finalize(e,new o.Literal(t.value,r));break;case 3:case 1:case 5:case 4:n=this.finalize(e,new o.Identifier(t.value));break;case 7:t.value===`[`?(n=this.isolateCoverGrammar(this.parseAssignmentExpression),this.expect(`]`)):n=this.throwUnexpectedToken(t);break;default:n=this.throwUnexpectedToken(t)}return n},e.prototype.isPropertyKey=function(e,t){return e.type===c.Syntax.Identifier&&e.name===t||e.type===c.Syntax.Literal&&e.value===t},e.prototype.parseObjectProperty=function(e){var t=this.createNode(),n=this.lookahead,r,i=null,s=null,c=!1,l=!1,u=!1,d=!1;if(n.type===3){var f=n.value;this.nextToken(),c=this.match(`[`),d=!this.hasLineTerminator&&f===`async`&&!this.match(`:`)&&!this.match(`(`)&&!this.match(`*`)&&!this.match(`,`),i=d?this.parseObjectPropertyKey():this.finalize(t,new o.Identifier(f))}else this.match(`*`)?this.nextToken():(c=this.match(`[`),i=this.parseObjectPropertyKey());var p=this.qualifiedPropertyName(this.lookahead);if(n.type===3&&!d&&n.value===`get`&&p)r=`get`,c=this.match(`[`),i=this.parseObjectPropertyKey(),this.context.allowYield=!1,s=this.parseGetterMethod();else if(n.type===3&&!d&&n.value===`set`&&p)r=`set`,c=this.match(`[`),i=this.parseObjectPropertyKey(),s=this.parseSetterMethod();else if(n.type===7&&n.value===`*`&&p)r=`init`,c=this.match(`[`),i=this.parseObjectPropertyKey(),s=this.parseGeneratorMethod(),l=!0;else if(i||this.throwUnexpectedToken(this.lookahead),r=`init`,this.match(`:`)&&!d)!c&&this.isPropertyKey(i,`__proto__`)&&(e.value&&this.tolerateError(a.Messages.DuplicateProtoProperty),e.value=!0),this.nextToken(),s=this.inheritCoverGrammar(this.parseAssignmentExpression);else if(this.match(`(`))s=d?this.parsePropertyMethodAsyncFunction():this.parsePropertyMethodFunction(),l=!0;else if(n.type===3){var f=this.finalize(t,new o.Identifier(n.value));if(this.match(`=`)){this.context.firstCoverInitializedNameError=this.lookahead,this.nextToken(),u=!0;var m=this.isolateCoverGrammar(this.parseAssignmentExpression);s=this.finalize(t,new o.AssignmentPattern(f,m))}else u=!0,s=f}else this.throwUnexpectedToken(this.nextToken());return this.finalize(t,new o.Property(r,i,c,s,l,u))},e.prototype.parseObjectInitializer=function(){var e=this.createNode();this.expect(`{`);for(var t=[],n={value:!1};!this.match(`}`);)t.push(this.parseObjectProperty(n)),this.match(`}`)||this.expectCommaSeparator();return this.expect(`}`),this.finalize(e,new o.ObjectExpression(t))},e.prototype.parseTemplateHead=function(){r.assert(this.lookahead.head,`Template literal must start with a template head`);var e=this.createNode(),t=this.nextToken(),n=t.value,i=t.cooked;return this.finalize(e,new o.TemplateElement({raw:n,cooked:i},t.tail))},e.prototype.parseTemplateElement=function(){this.lookahead.type!==10&&this.throwUnexpectedToken();var e=this.createNode(),t=this.nextToken(),n=t.value,r=t.cooked;return this.finalize(e,new o.TemplateElement({raw:n,cooked:r},t.tail))},e.prototype.parseTemplateLiteral=function(){var e=this.createNode(),t=[],n=[],r=this.parseTemplateHead();for(n.push(r);!r.tail;)t.push(this.parseExpression()),r=this.parseTemplateElement(),n.push(r);return this.finalize(e,new o.TemplateLiteral(n,t))},e.prototype.reinterpretExpressionAsPattern=function(e){switch(e.type){case c.Syntax.Identifier:case c.Syntax.MemberExpression:case c.Syntax.RestElement:case c.Syntax.AssignmentPattern:break;case c.Syntax.SpreadElement:e.type=c.Syntax.RestElement,this.reinterpretExpressionAsPattern(e.argument);break;case c.Syntax.ArrayExpression:e.type=c.Syntax.ArrayPattern;for(var t=0;t<e.elements.length;t++)e.elements[t]!==null&&this.reinterpretExpressionAsPattern(e.elements[t]);break;case c.Syntax.ObjectExpression:e.type=c.Syntax.ObjectPattern;for(var t=0;t<e.properties.length;t++)this.reinterpretExpressionAsPattern(e.properties[t].value);break;case c.Syntax.AssignmentExpression:e.type=c.Syntax.AssignmentPattern,delete e.operator,this.reinterpretExpressionAsPattern(e.left);break;default:break}},e.prototype.parseGroupExpression=function(){var e;if(this.expect(`(`),this.match(`)`))this.nextToken(),this.match(`=>`)||this.expect(`=>`),e={type:u,params:[],async:!1};else{var t=this.lookahead,n=[];if(this.match(`...`))e=this.parseRestElement(n),this.expect(`)`),this.match(`=>`)||this.expect(`=>`),e={type:u,params:[e],async:!1};else{var r=!1;if(this.context.isBindingElement=!0,e=this.inheritCoverGrammar(this.parseAssignmentExpression),this.match(`,`)){var i=[];for(this.context.isAssignmentTarget=!1,i.push(e);this.lookahead.type!==2&&this.match(`,`);){if(this.nextToken(),this.match(`)`)){this.nextToken();for(var a=0;a<i.length;a++)this.reinterpretExpressionAsPattern(i[a]);r=!0,e={type:u,params:i,async:!1}}else if(this.match(`...`)){this.context.isBindingElement||this.throwUnexpectedToken(this.lookahead),i.push(this.parseRestElement(n)),this.expect(`)`),this.match(`=>`)||this.expect(`=>`),this.context.isBindingElement=!1;for(var a=0;a<i.length;a++)this.reinterpretExpressionAsPattern(i[a]);r=!0,e={type:u,params:i,async:!1}}else i.push(this.inheritCoverGrammar(this.parseAssignmentExpression));if(r)break}r||(e=this.finalize(this.startNode(t),new o.SequenceExpression(i)))}if(!r){if(this.expect(`)`),this.match(`=>`)&&(e.type===c.Syntax.Identifier&&e.name===`yield`&&(r=!0,e={type:u,params:[e],async:!1}),!r)){if(this.context.isBindingElement||this.throwUnexpectedToken(this.lookahead),e.type===c.Syntax.SequenceExpression)for(var a=0;a<e.expressions.length;a++)this.reinterpretExpressionAsPattern(e.expressions[a]);else this.reinterpretExpressionAsPattern(e);var s=e.type===c.Syntax.SequenceExpression?e.expressions:[e];e={type:u,params:s,async:!1}}this.context.isBindingElement=!1}}}return e},e.prototype.parseArguments=function(){this.expect(`(`);var e=[];if(!this.match(`)`))for(;;){var t=this.match(`...`)?this.parseSpreadElement():this.isolateCoverGrammar(this.parseAssignmentExpression);if(e.push(t),this.match(`)`)||(this.expectCommaSeparator(),this.match(`)`)))break}return this.expect(`)`),e},e.prototype.isIdentifierName=function(e){return e.type===3||e.type===4||e.type===1||e.type===5},e.prototype.parseIdentifierName=function(){var e=this.createNode(),t=this.nextToken();return this.isIdentifierName(t)||this.throwUnexpectedToken(t),this.finalize(e,new o.Identifier(t.value))},e.prototype.parseNewExpression=function(){var e=this.createNode(),t=this.parseIdentifierName();r.assert(t.name===`new`,"New expression must start with `new`");var n;if(this.match(`.`))if(this.nextToken(),this.lookahead.type===3&&this.context.inFunctionBody&&this.lookahead.value===`target`){var i=this.parseIdentifierName();n=new o.MetaProperty(t,i)}else this.throwUnexpectedToken(this.lookahead);else{var a=this.isolateCoverGrammar(this.parseLeftHandSideExpression),s=this.match(`(`)?this.parseArguments():[];n=new o.NewExpression(a,s),this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1}return this.finalize(e,n)},e.prototype.parseAsyncArgument=function(){var e=this.parseAssignmentExpression();return this.context.firstCoverInitializedNameError=null,e},e.prototype.parseAsyncArguments=function(){this.expect(`(`);var e=[];if(!this.match(`)`))for(;;){var t=this.match(`...`)?this.parseSpreadElement():this.isolateCoverGrammar(this.parseAsyncArgument);if(e.push(t),this.match(`)`)||(this.expectCommaSeparator(),this.match(`)`)))break}return this.expect(`)`),e},e.prototype.parseLeftHandSideExpressionAllowCall=function(){var e=this.lookahead,t=this.matchContextualKeyword(`async`),n=this.context.allowIn;this.context.allowIn=!0;var r;for(this.matchKeyword(`super`)&&this.context.inFunctionBody?(r=this.createNode(),this.nextToken(),r=this.finalize(r,new o.Super),!this.match(`(`)&&!this.match(`.`)&&!this.match(`[`)&&this.throwUnexpectedToken(this.lookahead)):r=this.inheritCoverGrammar(this.matchKeyword(`new`)?this.parseNewExpression:this.parsePrimaryExpression);;)if(this.match(`.`)){this.context.isBindingElement=!1,this.context.isAssignmentTarget=!0,this.expect(`.`);var i=this.parseIdentifierName();r=this.finalize(this.startNode(e),new o.StaticMemberExpression(r,i))}else if(this.match(`(`)){var a=t&&e.lineNumber===this.lookahead.lineNumber;this.context.isBindingElement=!1,this.context.isAssignmentTarget=!1;var s=a?this.parseAsyncArguments():this.parseArguments();if(r=this.finalize(this.startNode(e),new o.CallExpression(r,s)),a&&this.match(`=>`)){for(var c=0;c<s.length;++c)this.reinterpretExpressionAsPattern(s[c]);r={type:u,params:s,async:!0}}}else if(this.match(`[`)){this.context.isBindingElement=!1,this.context.isAssignmentTarget=!0,this.expect(`[`);var i=this.isolateCoverGrammar(this.parseExpression);this.expect(`]`),r=this.finalize(this.startNode(e),new o.ComputedMemberExpression(r,i))}else if(this.lookahead.type===10&&this.lookahead.head){var l=this.parseTemplateLiteral();r=this.finalize(this.startNode(e),new o.TaggedTemplateExpression(r,l))}else break;return this.context.allowIn=n,r},e.prototype.parseSuper=function(){var e=this.createNode();return this.expectKeyword(`super`),!this.match(`[`)&&!this.match(`.`)&&this.throwUnexpectedToken(this.lookahead),this.finalize(e,new o.Super)},e.prototype.parseLeftHandSideExpression=function(){r.assert(this.context.allowIn,`callee of new expression always allow in keyword.`);for(var e=this.startNode(this.lookahead),t=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 n=this.isolateCoverGrammar(this.parseExpression);this.expect(`]`),t=this.finalize(e,new o.ComputedMemberExpression(t,n))}else if(this.match(`.`)){this.context.isBindingElement=!1,this.context.isAssignmentTarget=!0,this.expect(`.`);var n=this.parseIdentifierName();t=this.finalize(e,new o.StaticMemberExpression(t,n))}else if(this.lookahead.type===10&&this.lookahead.head){var i=this.parseTemplateLiteral();t=this.finalize(e,new o.TaggedTemplateExpression(t,i))}else break;return t},e.prototype.parseUpdateExpression=function(){var e,t=this.lookahead;if(this.match(`++`)||this.match(`--`)){var n=this.startNode(t),r=this.nextToken();e=this.inheritCoverGrammar(this.parseUnaryExpression),this.context.strict&&e.type===c.Syntax.Identifier&&this.scanner.isRestrictedWord(e.name)&&this.tolerateError(a.Messages.StrictLHSPrefix),this.context.isAssignmentTarget||this.tolerateError(a.Messages.InvalidLHSInAssignment);var i=!0;e=this.finalize(n,new o.UpdateExpression(r.value,e,i)),this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1}else if(e=this.inheritCoverGrammar(this.parseLeftHandSideExpressionAllowCall),!this.hasLineTerminator&&this.lookahead.type===7&&(this.match(`++`)||this.match(`--`))){this.context.strict&&e.type===c.Syntax.Identifier&&this.scanner.isRestrictedWord(e.name)&&this.tolerateError(a.Messages.StrictLHSPostfix),this.context.isAssignmentTarget||this.tolerateError(a.Messages.InvalidLHSInAssignment),this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1;var s=this.nextToken().value,i=!1;e=this.finalize(this.startNode(t),new o.UpdateExpression(s,e,i))}return e},e.prototype.parseAwaitExpression=function(){var e=this.createNode();this.nextToken();var t=this.parseUnaryExpression();return this.finalize(e,new o.AwaitExpression(t))},e.prototype.parseUnaryExpression=function(){var e;if(this.match(`+`)||this.match(`-`)||this.match(`~`)||this.match(`!`)||this.matchKeyword(`delete`)||this.matchKeyword(`void`)||this.matchKeyword(`typeof`)){var t=this.startNode(this.lookahead),n=this.nextToken();e=this.inheritCoverGrammar(this.parseUnaryExpression),e=this.finalize(t,new o.UnaryExpression(n.value,e)),this.context.strict&&e.operator===`delete`&&e.argument.type===c.Syntax.Identifier&&this.tolerateError(a.Messages.StrictDelete),this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1}else e=this.context.await&&this.matchContextualKeyword(`await`)?this.parseAwaitExpression():this.parseUpdateExpression();return e},e.prototype.parseExponentiationExpression=function(){var e=this.lookahead,t=this.inheritCoverGrammar(this.parseUnaryExpression);if(t.type!==c.Syntax.UnaryExpression&&this.match(`**`)){this.nextToken(),this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1;var n=t,r=this.isolateCoverGrammar(this.parseExponentiationExpression);t=this.finalize(this.startNode(e),new o.BinaryExpression(`**`,n,r))}return t},e.prototype.binaryPrecedence=function(e){var t=e.value,n;return n=e.type===7?this.operatorPrecedence[t]||0:e.type===4&&(t===`instanceof`||this.context.allowIn&&t===`in`)?7:0,n},e.prototype.parseBinaryExpression=function(){var e=this.lookahead,t=this.inheritCoverGrammar(this.parseExponentiationExpression),n=this.lookahead,r=this.binaryPrecedence(n);if(r>0){this.nextToken(),this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1;for(var i=[e,this.lookahead],a=t,s=this.isolateCoverGrammar(this.parseExponentiationExpression),c=[a,n.value,s],l=[r];r=this.binaryPrecedence(this.lookahead),!(r<=0);){for(;c.length>2&&r<=l[l.length-1];){s=c.pop();var u=c.pop();l.pop(),a=c.pop(),i.pop();var d=this.startNode(i[i.length-1]);c.push(this.finalize(d,new o.BinaryExpression(u,a,s)))}c.push(this.nextToken().value),l.push(r),i.push(this.lookahead),c.push(this.isolateCoverGrammar(this.parseExponentiationExpression))}var f=c.length-1;t=c[f];for(var p=i.pop();f>1;){var m=i.pop(),h=p&&p.lineStart,d=this.startNode(m,h),u=c[f-1];t=this.finalize(d,new o.BinaryExpression(u,c[f-2],t)),f-=2,p=m}}return t},e.prototype.parseConditionalExpression=function(){var e=this.lookahead,t=this.inheritCoverGrammar(this.parseBinaryExpression);if(this.match(`?`)){this.nextToken();var n=this.context.allowIn;this.context.allowIn=!0;var r=this.isolateCoverGrammar(this.parseAssignmentExpression);this.context.allowIn=n,this.expect(`:`);var i=this.isolateCoverGrammar(this.parseAssignmentExpression);t=this.finalize(this.startNode(e),new o.ConditionalExpression(t,r,i)),this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1}return t},e.prototype.checkPatternParam=function(e,t){switch(t.type){case c.Syntax.Identifier:this.validateParam(e,t,t.name);break;case c.Syntax.RestElement:this.checkPatternParam(e,t.argument);break;case c.Syntax.AssignmentPattern:this.checkPatternParam(e,t.left);break;case c.Syntax.ArrayPattern:for(var n=0;n<t.elements.length;n++)t.elements[n]!==null&&this.checkPatternParam(e,t.elements[n]);break;case c.Syntax.ObjectPattern:for(var n=0;n<t.properties.length;n++)this.checkPatternParam(e,t.properties[n].value);break;default:break}e.simple=e.simple&&t instanceof o.Identifier},e.prototype.reinterpretAsCoverFormalsList=function(e){var t=[e],n,r=!1;switch(e.type){case c.Syntax.Identifier:break;case u:t=e.params,r=e.async;break;default:return null}n={simple:!0,paramSet:{}};for(var i=0;i<t.length;++i){var o=t[i];o.type===c.Syntax.AssignmentPattern?o.right.type===c.Syntax.YieldExpression&&(o.right.argument&&this.throwUnexpectedToken(this.lookahead),o.right.type=c.Syntax.Identifier,o.right.name=`yield`,delete o.right.argument,delete o.right.delegate):r&&o.type===c.Syntax.Identifier&&o.name===`await`&&this.throwUnexpectedToken(this.lookahead),this.checkPatternParam(n,o),t[i]=o}if(this.context.strict||!this.context.allowYield)for(var i=0;i<t.length;++i){var o=t[i];o.type===c.Syntax.YieldExpression&&this.throwUnexpectedToken(this.lookahead)}if(n.message===a.Messages.StrictParamDupe){var s=this.context.strict?n.stricted:n.firstRestricted;this.throwUnexpectedToken(s,n.message)}return{simple:n.simple,params:t,stricted:n.stricted,firstRestricted:n.firstRestricted,message:n.message}},e.prototype.parseAssignmentExpression=function(){var e;if(!this.context.allowYield&&this.matchKeyword(`yield`))e=this.parseYieldExpression();else{var t=this.lookahead,n=t;if(e=this.parseConditionalExpression(),n.type===3&&n.lineNumber===this.lookahead.lineNumber&&n.value===`async`&&(this.lookahead.type===3||this.matchKeyword(`yield`))){var r=this.parsePrimaryExpression();this.reinterpretExpressionAsPattern(r),e={type:u,params:[r],async:!0}}if(e.type===u||this.match(`=>`)){this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1;var i=e.async,s=this.reinterpretAsCoverFormalsList(e);if(s){this.hasLineTerminator&&this.tolerateUnexpectedToken(this.lookahead),this.context.firstCoverInitializedNameError=null;var l=this.context.strict,d=this.context.allowStrictDirective;this.context.allowStrictDirective=s.simple;var f=this.context.allowYield,p=this.context.await;this.context.allowYield=!0,this.context.await=i;var m=this.startNode(t);this.expect(`=>`);var h=void 0;if(this.match(`{`)){var g=this.context.allowIn;this.context.allowIn=!0,h=this.parseFunctionSourceElements(),this.context.allowIn=g}else h=this.isolateCoverGrammar(this.parseAssignmentExpression);var _=h.type!==c.Syntax.BlockStatement;this.context.strict&&s.firstRestricted&&this.throwUnexpectedToken(s.firstRestricted,s.message),this.context.strict&&s.stricted&&this.tolerateUnexpectedToken(s.stricted,s.message),e=i?this.finalize(m,new o.AsyncArrowFunctionExpression(s.params,h,_)):this.finalize(m,new o.ArrowFunctionExpression(s.params,h,_)),this.context.strict=l,this.context.allowStrictDirective=d,this.context.allowYield=f,this.context.await=p}}else if(this.matchAssign()){if(this.context.isAssignmentTarget||this.tolerateError(a.Messages.InvalidLHSInAssignment),this.context.strict&&e.type===c.Syntax.Identifier){var v=e;this.scanner.isRestrictedWord(v.name)&&this.tolerateUnexpectedToken(n,a.Messages.StrictLHSAssignment),this.scanner.isStrictModeReservedWord(v.name)&&this.tolerateUnexpectedToken(n,a.Messages.StrictReservedWord)}this.match(`=`)?this.reinterpretExpressionAsPattern(e):(this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1),n=this.nextToken();var y=n.value,b=this.isolateCoverGrammar(this.parseAssignmentExpression);e=this.finalize(this.startNode(t),new o.AssignmentExpression(y,e,b)),this.context.firstCoverInitializedNameError=null}}return e},e.prototype.parseExpression=function(){var e=this.lookahead,t=this.isolateCoverGrammar(this.parseAssignmentExpression);if(this.match(`,`)){var n=[];for(n.push(t);this.lookahead.type!==2&&this.match(`,`);)this.nextToken(),n.push(this.isolateCoverGrammar(this.parseAssignmentExpression));t=this.finalize(this.startNode(e),new o.SequenceExpression(n))}return t},e.prototype.parseStatementListItem=function(){var e;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),e=this.parseExportDeclaration();break;case`import`:this.context.isModule||this.tolerateUnexpectedToken(this.lookahead,a.Messages.IllegalImportDeclaration),e=this.parseImportDeclaration();break;case`const`:e=this.parseLexicalDeclaration({inFor:!1});break;case`function`:e=this.parseFunctionDeclaration();break;case`class`:e=this.parseClassDeclaration();break;case`let`:e=this.isLexicalDeclaration()?this.parseLexicalDeclaration({inFor:!1}):this.parseStatement();break;default:e=this.parseStatement();break}else e=this.parseStatement();return e},e.prototype.parseBlock=function(){var e=this.createNode();this.expect(`{`);for(var t=[];!this.match(`}`);)t.push(this.parseStatementListItem());return this.expect(`}`),this.finalize(e,new o.BlockStatement(t))},e.prototype.parseLexicalBinding=function(e,t){var n=this.createNode(),r=[],i=this.parsePattern(r,e);this.context.strict&&i.type===c.Syntax.Identifier&&this.scanner.isRestrictedWord(i.name)&&this.tolerateError(a.Messages.StrictVarName);var s=null;return e===`const`?!this.matchKeyword(`in`)&&!this.matchContextualKeyword(`of`)&&(this.match(`=`)?(this.nextToken(),s=this.isolateCoverGrammar(this.parseAssignmentExpression)):this.throwError(a.Messages.DeclarationMissingInitializer,`const`)):(!t.inFor&&i.type!==c.Syntax.Identifier||this.match(`=`))&&(this.expect(`=`),s=this.isolateCoverGrammar(this.parseAssignmentExpression)),this.finalize(n,new o.VariableDeclarator(i,s))},e.prototype.parseBindingList=function(e,t){for(var n=[this.parseLexicalBinding(e,t)];this.match(`,`);)this.nextToken(),n.push(this.parseLexicalBinding(e,t));return n},e.prototype.isLexicalDeclaration=function(){var e=this.scanner.saveState();this.scanner.scanComments();var t=this.scanner.lex();return this.scanner.restoreState(e),t.type===3||t.type===7&&t.value===`[`||t.type===7&&t.value===`{`||t.type===4&&t.value===`let`||t.type===4&&t.value===`yield`},e.prototype.parseLexicalDeclaration=function(e){var t=this.createNode(),n=this.nextToken().value;r.assert(n===`let`||n===`const`,`Lexical declaration must be either let or const`);var i=this.parseBindingList(n,e);return this.consumeSemicolon(),this.finalize(t,new o.VariableDeclaration(i,n))},e.prototype.parseBindingRestElement=function(e,t){var n=this.createNode();this.expect(`...`);var r=this.parsePattern(e,t);return this.finalize(n,new o.RestElement(r))},e.prototype.parseArrayPattern=function(e,t){var n=this.createNode();this.expect(`[`);for(var r=[];!this.match(`]`);)if(this.match(`,`))this.nextToken(),r.push(null);else{if(this.match(`...`)){r.push(this.parseBindingRestElement(e,t));break}else r.push(this.parsePatternWithDefault(e,t));this.match(`]`)||this.expect(`,`)}return this.expect(`]`),this.finalize(n,new o.ArrayPattern(r))},e.prototype.parsePropertyPattern=function(e,t){var n=this.createNode(),r=!1,i=!1,a=!1,s,c;if(this.lookahead.type===3){var l=this.lookahead;s=this.parseVariableIdentifier();var u=this.finalize(n,new o.Identifier(l.value));if(this.match(`=`)){e.push(l),i=!0,this.nextToken();var d=this.parseAssignmentExpression();c=this.finalize(this.startNode(l),new o.AssignmentPattern(u,d))}else this.match(`:`)?(this.expect(`:`),c=this.parsePatternWithDefault(e,t)):(e.push(l),i=!0,c=u)}else r=this.match(`[`),s=this.parseObjectPropertyKey(),this.expect(`:`),c=this.parsePatternWithDefault(e,t);return this.finalize(n,new o.Property(`init`,s,r,c,a,i))},e.prototype.parseObjectPattern=function(e,t){var n=this.createNode(),r=[];for(this.expect(`{`);!this.match(`}`);)r.push(this.parsePropertyPattern(e,t)),this.match(`}`)||this.expect(`,`);return this.expect(`}`),this.finalize(n,new o.ObjectPattern(r))},e.prototype.parsePattern=function(e,t){var n;return this.match(`[`)?n=this.parseArrayPattern(e,t):this.match(`{`)?n=this.parseObjectPattern(e,t):(this.matchKeyword(`let`)&&(t===`const`||t===`let`)&&this.tolerateUnexpectedToken(this.lookahead,a.Messages.LetInLexicalBinding),e.push(this.lookahead),n=this.parseVariableIdentifier(t)),n},e.prototype.parsePatternWithDefault=function(e,t){var n=this.lookahead,r=this.parsePattern(e,t);if(this.match(`=`)){this.nextToken();var i=this.context.allowYield;this.context.allowYield=!0;var a=this.isolateCoverGrammar(this.parseAssignmentExpression);this.context.allowYield=i,r=this.finalize(this.startNode(n),new o.AssignmentPattern(r,a))}return r},e.prototype.parseVariableIdentifier=function(e){var t=this.createNode(),n=this.nextToken();return n.type===4&&n.value===`yield`?this.context.strict?this.tolerateUnexpectedToken(n,a.Messages.StrictReservedWord):this.context.allowYield||this.throwUnexpectedToken(n):n.type===3?(this.context.isModule||this.context.await)&&n.type===3&&n.value===`await`&&this.tolerateUnexpectedToken(n):this.context.strict&&n.type===4&&this.scanner.isStrictModeReservedWord(n.value)?this.tolerateUnexpectedToken(n,a.Messages.StrictReservedWord):(this.context.strict||n.value!==`let`||e!==`var`)&&this.throwUnexpectedToken(n),this.finalize(t,new o.Identifier(n.value))},e.prototype.parseVariableDeclaration=function(e){var t=this.createNode(),n=[],r=this.parsePattern(n,`var`);this.context.strict&&r.type===c.Syntax.Identifier&&this.scanner.isRestrictedWord(r.name)&&this.tolerateError(a.Messages.StrictVarName);var i=null;return this.match(`=`)?(this.nextToken(),i=this.isolateCoverGrammar(this.parseAssignmentExpression)):r.type!==c.Syntax.Identifier&&!e.inFor&&this.expect(`=`),this.finalize(t,new o.VariableDeclarator(r,i))},e.prototype.parseVariableDeclarationList=function(e){var t={inFor:e.inFor},n=[];for(n.push(this.parseVariableDeclaration(t));this.match(`,`);)this.nextToken(),n.push(this.parseVariableDeclaration(t));return n},e.prototype.parseVariableStatement=function(){var e=this.createNode();this.expectKeyword(`var`);var t=this.parseVariableDeclarationList({inFor:!1});return this.consumeSemicolon(),this.finalize(e,new o.VariableDeclaration(t,`var`))},e.prototype.parseEmptyStatement=function(){var e=this.createNode();return this.expect(`;`),this.finalize(e,new o.EmptyStatement)},e.prototype.parseExpressionStatement=function(){var e=this.createNode(),t=this.parseExpression();return this.consumeSemicolon(),this.finalize(e,new o.ExpressionStatement(t))},e.prototype.parseIfClause=function(){return this.context.strict&&this.matchKeyword(`function`)&&this.tolerateError(a.Messages.StrictFunction),this.parseStatement()},e.prototype.parseIfStatement=function(){var e=this.createNode(),t,n=null;this.expectKeyword(`if`),this.expect(`(`);var r=this.parseExpression();return!this.match(`)`)&&this.config.tolerant?(this.tolerateUnexpectedToken(this.nextToken()),t=this.finalize(this.createNode(),new o.EmptyStatement)):(this.expect(`)`),t=this.parseIfClause(),this.matchKeyword(`else`)&&(this.nextToken(),n=this.parseIfClause())),this.finalize(e,new o.IfStatement(r,t,n))},e.prototype.parseDoWhileStatement=function(){var e=this.createNode();this.expectKeyword(`do`);var t=this.context.inIteration;this.context.inIteration=!0;var n=this.parseStatement();this.context.inIteration=t,this.expectKeyword(`while`),this.expect(`(`);var r=this.parseExpression();return!this.match(`)`)&&this.config.tolerant?this.tolerateUnexpectedToken(this.nextToken()):(this.expect(`)`),this.match(`;`)&&this.nextToken()),this.finalize(e,new o.DoWhileStatement(n,r))},e.prototype.parseWhileStatement=function(){var e=this.createNode(),t;this.expectKeyword(`while`),this.expect(`(`);var n=this.parseExpression();if(!this.match(`)`)&&this.config.tolerant)this.tolerateUnexpectedToken(this.nextToken()),t=this.finalize(this.createNode(),new o.EmptyStatement);else{this.expect(`)`);var r=this.context.inIteration;this.context.inIteration=!0,t=this.parseStatement(),this.context.inIteration=r}return this.finalize(e,new o.WhileStatement(n,t))},e.prototype.parseForStatement=function(){var e=null,t=null,n=null,r=!0,i,s,l=this.createNode();if(this.expectKeyword(`for`),this.expect(`(`),this.match(`;`))this.nextToken();else if(this.matchKeyword(`var`)){e=this.createNode(),this.nextToken();var u=this.context.allowIn;this.context.allowIn=!1;var d=this.parseVariableDeclarationList({inFor:!0});if(this.context.allowIn=u,d.length===1&&this.matchKeyword(`in`)){var f=d[0];f.init&&(f.id.type===c.Syntax.ArrayPattern||f.id.type===c.Syntax.ObjectPattern||this.context.strict)&&this.tolerateError(a.Messages.ForInOfLoopInitializer,`for-in`),e=this.finalize(e,new o.VariableDeclaration(d,`var`)),this.nextToken(),i=e,s=this.parseExpression(),e=null}else d.length===1&&d[0].init===null&&this.matchContextualKeyword(`of`)?(e=this.finalize(e,new o.VariableDeclaration(d,`var`)),this.nextToken(),i=e,s=this.parseAssignmentExpression(),e=null,r=!1):(e=this.finalize(e,new o.VariableDeclaration(d,`var`)),this.expect(`;`))}else if(this.matchKeyword(`const`)||this.matchKeyword(`let`)){e=this.createNode();var p=this.nextToken().value;if(!this.context.strict&&this.lookahead.value===`in`)e=this.finalize(e,new o.Identifier(p)),this.nextToken(),i=e,s=this.parseExpression(),e=null;else{var u=this.context.allowIn;this.context.allowIn=!1;var d=this.parseBindingList(p,{inFor:!0});this.context.allowIn=u,d.length===1&&d[0].init===null&&this.matchKeyword(`in`)?(e=this.finalize(e,new o.VariableDeclaration(d,p)),this.nextToken(),i=e,s=this.parseExpression(),e=null):d.length===1&&d[0].init===null&&this.matchContextualKeyword(`of`)?(e=this.finalize(e,new o.VariableDeclaration(d,p)),this.nextToken(),i=e,s=this.parseAssignmentExpression(),e=null,r=!1):(this.consumeSemicolon(),e=this.finalize(e,new o.VariableDeclaration(d,p)))}}else{var m=this.lookahead,u=this.context.allowIn;if(this.context.allowIn=!1,e=this.inheritCoverGrammar(this.parseAssignmentExpression),this.context.allowIn=u,this.matchKeyword(`in`))(!this.context.isAssignmentTarget||e.type===c.Syntax.AssignmentExpression)&&this.tolerateError(a.Messages.InvalidLHSInForIn),this.nextToken(),this.reinterpretExpressionAsPattern(e),i=e,s=this.parseExpression(),e=null;else if(this.matchContextualKeyword(`of`))(!this.context.isAssignmentTarget||e.type===c.Syntax.AssignmentExpression)&&this.tolerateError(a.Messages.InvalidLHSInForLoop),this.nextToken(),this.reinterpretExpressionAsPattern(e),i=e,s=this.parseAssignmentExpression(),e=null,r=!1;else{if(this.match(`,`)){for(var h=[e];this.match(`,`);)this.nextToken(),h.push(this.isolateCoverGrammar(this.parseAssignmentExpression));e=this.finalize(this.startNode(m),new o.SequenceExpression(h))}this.expect(`;`)}}i===void 0&&(this.match(`;`)||(t=this.parseExpression()),this.expect(`;`),this.match(`)`)||(n=this.parseExpression()));var g;if(!this.match(`)`)&&this.config.tolerant)this.tolerateUnexpectedToken(this.nextToken()),g=this.finalize(this.createNode(),new o.EmptyStatement);else{this.expect(`)`);var _=this.context.inIteration;this.context.inIteration=!0,g=this.isolateCoverGrammar(this.parseStatement),this.context.inIteration=_}return i===void 0?this.finalize(l,new o.ForStatement(e,t,n,g)):r?this.finalize(l,new o.ForInStatement(i,s,g)):this.finalize(l,new o.ForOfStatement(i,s,g))},e.prototype.parseContinueStatement=function(){var e=this.createNode();this.expectKeyword(`continue`);var t=null;if(this.lookahead.type===3&&!this.hasLineTerminator){var n=this.parseVariableIdentifier();t=n;var r=`$`+n.name;Object.prototype.hasOwnProperty.call(this.context.labelSet,r)||this.throwError(a.Messages.UnknownLabel,n.name)}return this.consumeSemicolon(),t===null&&!this.context.inIteration&&this.throwError(a.Messages.IllegalContinue),this.finalize(e,new o.ContinueStatement(t))},e.prototype.parseBreakStatement=function(){var e=this.createNode();this.expectKeyword(`break`);var t=null;if(this.lookahead.type===3&&!this.hasLineTerminator){var n=this.parseVariableIdentifier(),r=`$`+n.name;Object.prototype.hasOwnProperty.call(this.context.labelSet,r)||this.throwError(a.Messages.UnknownLabel,n.name),t=n}return this.consumeSemicolon(),t===null&&!this.context.inIteration&&!this.context.inSwitch&&this.throwError(a.Messages.IllegalBreak),this.finalize(e,new o.BreakStatement(t))},e.prototype.parseReturnStatement=function(){this.context.inFunctionBody||this.tolerateError(a.Messages.IllegalReturn);var e=this.createNode();this.expectKeyword(`return`);var t=!this.match(`;`)&&!this.match(`}`)&&!this.hasLineTerminator&&this.lookahead.type!==2||this.lookahead.type===8||this.lookahead.type===10,n=t?this.parseExpression():null;return this.consumeSemicolon(),this.finalize(e,new o.ReturnStatement(n))},e.prototype.parseWithStatement=function(){this.context.strict&&this.tolerateError(a.Messages.StrictModeWith);var e=this.createNode(),t;this.expectKeyword(`with`),this.expect(`(`);var n=this.parseExpression();return!this.match(`)`)&&this.config.tolerant?(this.tolerateUnexpectedToken(this.nextToken()),t=this.finalize(this.createNode(),new o.EmptyStatement)):(this.expect(`)`),t=this.parseStatement()),this.finalize(e,new o.WithStatement(n,t))},e.prototype.parseSwitchCase=function(){var e=this.createNode(),t;this.matchKeyword(`default`)?(this.nextToken(),t=null):(this.expectKeyword(`case`),t=this.parseExpression()),this.expect(`:`);for(var n=[];!(this.match(`}`)||this.matchKeyword(`default`)||this.matchKeyword(`case`));)n.push(this.parseStatementListItem());return this.finalize(e,new o.SwitchCase(t,n))},e.prototype.parseSwitchStatement=function(){var e=this.createNode();this.expectKeyword(`switch`),this.expect(`(`);var t=this.parseExpression();this.expect(`)`);var n=this.context.inSwitch;this.context.inSwitch=!0;var r=[],i=!1;for(this.expect(`{`);!this.match(`}`);){var s=this.parseSwitchCase();s.test===null&&(i&&this.throwError(a.Messages.MultipleDefaultsInSwitch),i=!0),r.push(s)}return this.expect(`}`),this.context.inSwitch=n,this.finalize(e,new o.SwitchStatement(t,r))},e.prototype.parseLabelledStatement=function(){var e=this.createNode(),t=this.parseExpression(),n;if(t.type===c.Syntax.Identifier&&this.match(`:`)){this.nextToken();var r=t,i=`$`+r.name;Object.prototype.hasOwnProperty.call(this.context.labelSet,i)&&this.throwError(a.Messages.Redeclaration,`Label`,r.name),this.context.labelSet[i]=!0;var s=void 0;if(this.matchKeyword(`class`))this.tolerateUnexpectedToken(this.lookahead),s=this.parseClassDeclaration();else if(this.matchKeyword(`function`)){var l=this.lookahead,u=this.parseFunctionDeclaration();this.context.strict?this.tolerateUnexpectedToken(l,a.Messages.StrictFunction):u.generator&&this.tolerateUnexpectedToken(l,a.Messages.GeneratorInLegacyContext),s=u}else s=this.parseStatement();delete this.context.labelSet[i],n=new o.LabeledStatement(r,s)}else this.consumeSemicolon(),n=new o.ExpressionStatement(t);return this.finalize(e,n)},e.prototype.parseThrowStatement=function(){var e=this.createNode();this.expectKeyword(`throw`),this.hasLineTerminator&&this.throwError(a.Messages.NewlineAfterThrow);var t=this.parseExpression();return this.consumeSemicolon(),this.finalize(e,new o.ThrowStatement(t))},e.prototype.parseCatchClause=function(){var e=this.createNode();this.expectKeyword(`catch`),this.expect(`(`),this.match(`)`)&&this.throwUnexpectedToken(this.lookahead);for(var t=[],n=this.parsePattern(t),r={},i=0;i<t.length;i++){var s=`$`+t[i].value;Object.prototype.hasOwnProperty.call(r,s)&&this.tolerateError(a.Messages.DuplicateBinding,t[i].value),r[s]=!0}this.context.strict&&n.type===c.Syntax.Identifier&&this.scanner.isRestrictedWord(n.name)&&this.tolerateError(a.Messages.StrictCatchVariable),this.expect(`)`);var l=this.parseBlock();return this.finalize(e,new o.CatchClause(n,l))},e.prototype.parseFinallyClause=function(){return this.expectKeyword(`finally`),this.parseBlock()},e.prototype.parseTryStatement=function(){var e=this.createNode();this.expectKeyword(`try`);var t=this.parseBlock(),n=this.matchKeyword(`catch`)?this.parseCatchClause():null,r=this.matchKeyword(`finally`)?this.parseFinallyClause():null;return!n&&!r&&this.throwError(a.Messages.NoCatchOrFinally),this.finalize(e,new o.TryStatement(t,n,r))},e.prototype.parseDebuggerStatement=function(){var e=this.createNode();return this.expectKeyword(`debugger`),this.consumeSemicolon(),this.finalize(e,new o.DebuggerStatement)},e.prototype.parseStatement=function(){var e;switch(this.lookahead.type){case 1:case 5:case 6:case 8:case 10:case 9:e=this.parseExpressionStatement();break;case 7:var t=this.lookahead.value;e=t===`{`?this.parseBlock():t===`(`?this.parseExpressionStatement():t===`;`?this.parseEmptyStatement():this.parseExpressionStatement();break;case 3:e=this.matchAsyncFunction()?this.parseFunctionDeclaration():this.parseLabelledStatement();break;case 4:switch(this.lookahead.value){case`break`:e=this.parseBreakStatement();break;case`continue`:e=this.parseContinueStatement();break;case`debugger`:e=this.parseDebuggerStatement();break;case`do`:e=this.parseDoWhileStatement();break;case`for`:e=this.parseForStatement();break;case`function`:e=this.parseFunctionDeclaration();break;case`if`:e=this.parseIfStatement();break;case`return`:e=this.parseReturnStatement();break;case`switch`:e=this.parseSwitchStatement();break;case`throw`:e=this.parseThrowStatement();break;case`try`:e=this.parseTryStatement();break;case`var`:e=this.parseVariableStatement();break;case`while`:e=this.parseWhileStatement();break;case`with`:e=this.parseWithStatement();break;default:e=this.parseExpressionStatement();break}break;default:e=this.throwUnexpectedToken(this.lookahead)}return e},e.prototype.parseFunctionSourceElements=function(){var e=this.createNode();this.expect(`{`);var t=this.parseDirectivePrologues(),n=this.context.labelSet,r=this.context.inIteration,i=this.context.inSwitch,a=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(`}`);)t.push(this.parseStatementListItem());return this.expect(`}`),this.context.labelSet=n,this.context.inIteration=r,this.context.inSwitch=i,this.context.inFunctionBody=a,this.finalize(e,new o.BlockStatement(t))},e.prototype.validateParam=function(e,t,n){var r=`$`+n;this.context.strict?(this.scanner.isRestrictedWord(n)&&(e.stricted=t,e.message=a.Messages.StrictParamName),Object.prototype.hasOwnProperty.call(e.paramSet,r)&&(e.stricted=t,e.message=a.Messages.StrictParamDupe)):e.firstRestricted||(this.scanner.isRestrictedWord(n)?(e.firstRestricted=t,e.message=a.Messages.StrictParamName):this.scanner.isStrictModeReservedWord(n)?(e.firstRestricted=t,e.message=a.Messages.StrictReservedWord):Object.prototype.hasOwnProperty.call(e.paramSet,r)&&(e.stricted=t,e.message=a.Messages.StrictParamDupe)),typeof Object.defineProperty==`function`?Object.defineProperty(e.paramSet,r,{value:!0,enumerable:!0,writable:!0,configurable:!0}):e.paramSet[r]=!0},e.prototype.parseRestElement=function(e){var t=this.createNode();this.expect(`...`);var n=this.parsePattern(e);return this.match(`=`)&&this.throwError(a.Messages.DefaultRestParameter),this.match(`)`)||this.throwError(a.Messages.ParameterAfterRestParameter),this.finalize(t,new o.RestElement(n))},e.prototype.parseFormalParameter=function(e){for(var t=[],n=this.match(`...`)?this.parseRestElement(t):this.parsePatternWithDefault(t),r=0;r<t.length;r++)this.validateParam(e,t[r],t[r].value);e.simple=e.simple&&n instanceof o.Identifier,e.params.push(n)},e.prototype.parseFormalParameters=function(e){var t;if(t={simple:!0,params:[],firstRestricted:e},this.expect(`(`),!this.match(`)`))for(t.paramSet={};this.lookahead.type!==2&&(this.parseFormalParameter(t),!(this.match(`)`)||(this.expect(`,`),this.match(`)`)))););return this.expect(`)`),{simple:t.simple,params:t.params,stricted:t.stricted,firstRestricted:t.firstRestricted,message:t.message}},e.prototype.matchAsyncFunction=function(){var e=this.matchContextualKeyword(`async`);if(e){var t=this.scanner.saveState();this.scanner.scanComments();var n=this.scanner.lex();this.scanner.restoreState(t),e=t.lineNumber===n.lineNumber&&n.type===4&&n.value===`function`}return e},e.prototype.parseFunctionDeclaration=function(e){var t=this.createNode(),n=this.matchContextualKeyword(`async`);n&&this.nextToken(),this.expectKeyword(`function`);var r=n?!1:this.match(`*`);r&&this.nextToken();var i,s=null,c=null;if(!e||!this.match(`(`)){var l=this.lookahead;s=this.parseVariableIdentifier(),this.context.strict?this.scanner.isRestrictedWord(l.value)&&this.tolerateUnexpectedToken(l,a.Messages.StrictFunctionName):this.scanner.isRestrictedWord(l.value)?(c=l,i=a.Messages.StrictFunctionName):this.scanner.isStrictModeReservedWord(l.value)&&(c=l,i=a.Messages.StrictReservedWord)}var u=this.context.await,d=this.context.allowYield;this.context.await=n,this.context.allowYield=!r;var f=this.parseFormalParameters(c),p=f.params,m=f.stricted;c=f.firstRestricted,f.message&&(i=f.message);var h=this.context.strict,g=this.context.allowStrictDirective;this.context.allowStrictDirective=f.simple;var _=this.parseFunctionSourceElements();return this.context.strict&&c&&this.throwUnexpectedToken(c,i),this.context.strict&&m&&this.tolerateUnexpectedToken(m,i),this.context.strict=h,this.context.allowStrictDirective=g,this.context.await=u,this.context.allowYield=d,n?this.finalize(t,new o.AsyncFunctionDeclaration(s,p,_)):this.finalize(t,new o.FunctionDeclaration(s,p,_,r))},e.prototype.parseFunctionExpression=function(){var e=this.createNode(),t=this.matchContextualKeyword(`async`);t&&this.nextToken(),this.expectKeyword(`function`);var n=t?!1:this.match(`*`);n&&this.nextToken();var r,i=null,s,c=this.context.await,l=this.context.allowYield;if(this.context.await=t,this.context.allowYield=!n,!this.match(`(`)){var u=this.lookahead;i=!this.context.strict&&!n&&this.matchKeyword(`yield`)?this.parseIdentifierName():this.parseVariableIdentifier(),this.context.strict?this.scanner.isRestrictedWord(u.value)&&this.tolerateUnexpectedToken(u,a.Messages.StrictFunctionName):this.scanner.isRestrictedWord(u.value)?(s=u,r=a.Messages.StrictFunctionName):this.scanner.isStrictModeReservedWord(u.value)&&(s=u,r=a.Messages.StrictReservedWord)}var d=this.parseFormalParameters(s),f=d.params,p=d.stricted;s=d.firstRestricted,d.message&&(r=d.message);var m=this.context.strict,h=this.context.allowStrictDirective;this.context.allowStrictDirective=d.simple;var g=this.parseFunctionSourceElements();return this.context.strict&&s&&this.throwUnexpectedToken(s,r),this.context.strict&&p&&this.tolerateUnexpectedToken(p,r),this.context.strict=m,this.context.allowStrictDirective=h,this.context.await=c,this.context.allowYield=l,t?this.finalize(e,new o.AsyncFunctionExpression(i,f,g)):this.finalize(e,new o.FunctionExpression(i,f,g,n))},e.prototype.parseDirective=function(){var e=this.lookahead,t=this.createNode(),n=this.parseExpression(),r=n.type===c.Syntax.Literal?this.getTokenRaw(e).slice(1,-1):null;return this.consumeSemicolon(),this.finalize(t,r?new o.Directive(n,r):new o.ExpressionStatement(n))},e.prototype.parseDirectivePrologues=function(){for(var e=null,t=[];;){var n=this.lookahead;if(n.type!==8)break;var r=this.parseDirective();t.push(r);var i=r.directive;if(typeof i!=`string`)break;i===`use strict`?(this.context.strict=!0,e&&this.tolerateUnexpectedToken(e,a.Messages.StrictOctalLiteral),this.context.allowStrictDirective||this.tolerateUnexpectedToken(n,a.Messages.IllegalLanguageModeDirective)):!e&&n.octal&&(e=n)}return t},e.prototype.qualifiedPropertyName=function(e){switch(e.type){case 3:case 8:case 1:case 5:case 6:case 4:return!0;case 7:return e.value===`[`;default:break}return!1},e.prototype.parseGetterMethod=function(){var e=this.createNode(),t=!1,n=this.context.allowYield;this.context.allowYield=!t;var r=this.parseFormalParameters();r.params.length>0&&this.tolerateError(a.Messages.BadGetterArity);var i=this.parsePropertyMethod(r);return this.context.allowYield=n,this.finalize(e,new o.FunctionExpression(null,r.params,i,t))},e.prototype.parseSetterMethod=function(){var e=this.createNode(),t=!1,n=this.context.allowYield;this.context.allowYield=!t;var r=this.parseFormalParameters();r.params.length===1?r.params[0]instanceof o.RestElement&&this.tolerateError(a.Messages.BadSetterRestParameter):this.tolerateError(a.Messages.BadSetterArity);var i=this.parsePropertyMethod(r);return this.context.allowYield=n,this.finalize(e,new o.FunctionExpression(null,r.params,i,t))},e.prototype.parseGeneratorMethod=function(){var e=this.createNode(),t=!0,n=this.context.allowYield;this.context.allowYield=!0;var r=this.parseFormalParameters();this.context.allowYield=!1;var i=this.parsePropertyMethod(r);return this.context.allowYield=n,this.finalize(e,new o.FunctionExpression(null,r.params,i,t))},e.prototype.isStartOfExpression=function(){var e=!0,t=this.lookahead.value;switch(this.lookahead.type){case 7:e=t===`[`||t===`(`||t===`{`||t===`+`||t===`-`||t===`!`||t===`~`||t===`++`||t===`--`||t===`/`||t===`/=`;break;case 4:e=t===`class`||t===`delete`||t===`function`||t===`let`||t===`new`||t===`super`||t===`this`||t===`typeof`||t===`void`||t===`yield`;break;default:break}return e},e.prototype.parseYieldExpression=function(){var e=this.createNode();this.expectKeyword(`yield`);var t=null,n=!1;if(!this.hasLineTerminator){var r=this.context.allowYield;this.context.allowYield=!1,n=this.match(`*`),n?(this.nextToken(),t=this.parseAssignmentExpression()):this.isStartOfExpression()&&(t=this.parseAssignmentExpression()),this.context.allowYield=r}return this.finalize(e,new o.YieldExpression(t,n))},e.prototype.parseClassElement=function(e){var t=this.lookahead,n=this.createNode(),r=``,i=null,s=null,c=!1,l=!1,u=!1,d=!1;if(this.match(`*`))this.nextToken();else{c=this.match(`[`),i=this.parseObjectPropertyKey();var f=i;if(f.name===`static`&&(this.qualifiedPropertyName(this.lookahead)||this.match(`*`))&&(t=this.lookahead,u=!0,c=this.match(`[`),this.match(`*`)?this.nextToken():i=this.parseObjectPropertyKey()),t.type===3&&!this.hasLineTerminator&&t.value===`async`){var p=this.lookahead.value;p!==`:`&&p!==`(`&&p!==`*`&&(d=!0,t=this.lookahead,i=this.parseObjectPropertyKey(),t.type===3&&t.value===`constructor`&&this.tolerateUnexpectedToken(t,a.Messages.ConstructorIsAsync))}}var m=this.qualifiedPropertyName(this.lookahead);return t.type===3?t.value===`get`&&m?(r=`get`,c=this.match(`[`),i=this.parseObjectPropertyKey(),this.context.allowYield=!1,s=this.parseGetterMethod()):t.value===`set`&&m&&(r=`set`,c=this.match(`[`),i=this.parseObjectPropertyKey(),s=this.parseSetterMethod()):t.type===7&&t.value===`*`&&m&&(r=`init`,c=this.match(`[`),i=this.parseObjectPropertyKey(),s=this.parseGeneratorMethod(),l=!0),!r&&i&&this.match(`(`)&&(r=`init`,s=d?this.parsePropertyMethodAsyncFunction():this.parsePropertyMethodFunction(),l=!0),r||this.throwUnexpectedToken(this.lookahead),r===`init`&&(r=`method`),c||(u&&this.isPropertyKey(i,`prototype`)&&this.throwUnexpectedToken(t,a.Messages.StaticPrototype),!u&&this.isPropertyKey(i,`constructor`)&&((r!==`method`||!l||s&&s.generator)&&this.throwUnexpectedToken(t,a.Messages.ConstructorSpecialMethod),e.value?this.throwUnexpectedToken(t,a.Messages.DuplicateConstructor):e.value=!0,r=`constructor`)),this.finalize(n,new o.MethodDefinition(i,c,s,r,u))},e.prototype.parseClassElementList=function(){var e=[],t={value:!1};for(this.expect(`{`);!this.match(`}`);)this.match(`;`)?this.nextToken():e.push(this.parseClassElement(t));return this.expect(`}`),e},e.prototype.parseClassBody=function(){var e=this.createNode(),t=this.parseClassElementList();return this.finalize(e,new o.ClassBody(t))},e.prototype.parseClassDeclaration=function(e){var t=this.createNode(),n=this.context.strict;this.context.strict=!0,this.expectKeyword(`class`);var r=e&&this.lookahead.type!==3?null:this.parseVariableIdentifier(),i=null;this.matchKeyword(`extends`)&&(this.nextToken(),i=this.isolateCoverGrammar(this.parseLeftHandSideExpressionAllowCall));var a=this.parseClassBody();return this.context.strict=n,this.finalize(t,new o.ClassDeclaration(r,i,a))},e.prototype.parseClassExpression=function(){var e=this.createNode(),t=this.context.strict;this.context.strict=!0,this.expectKeyword(`class`);var n=this.lookahead.type===3?this.parseVariableIdentifier():null,r=null;this.matchKeyword(`extends`)&&(this.nextToken(),r=this.isolateCoverGrammar(this.parseLeftHandSideExpressionAllowCall));var i=this.parseClassBody();return this.context.strict=t,this.finalize(e,new o.ClassExpression(n,r,i))},e.prototype.parseModule=function(){this.context.strict=!0,this.context.isModule=!0,this.scanner.isModule=!0;for(var e=this.createNode(),t=this.parseDirectivePrologues();this.lookahead.type!==2;)t.push(this.parseStatementListItem());return this.finalize(e,new o.Module(t))},e.prototype.parseScript=function(){for(var e=this.createNode(),t=this.parseDirectivePrologues();this.lookahead.type!==2;)t.push(this.parseStatementListItem());return this.finalize(e,new o.Script(t))},e.prototype.parseModuleSpecifier=function(){var e=this.createNode();this.lookahead.type!==8&&this.throwError(a.Messages.InvalidModuleSpecifier);var t=this.nextToken(),n=this.getTokenRaw(t);return this.finalize(e,new o.Literal(t.value,n))},e.prototype.parseImportSpecifier=function(){var e=this.createNode(),t,n;return this.lookahead.type===3?(t=this.parseVariableIdentifier(),n=t,this.matchContextualKeyword(`as`)&&(this.nextToken(),n=this.parseVariableIdentifier())):(t=this.parseIdentifierName(),n=t,this.matchContextualKeyword(`as`)?(this.nextToken(),n=this.parseVariableIdentifier()):this.throwUnexpectedToken(this.nextToken())),this.finalize(e,new o.ImportSpecifier(n,t))},e.prototype.parseNamedImports=function(){this.expect(`{`);for(var e=[];!this.match(`}`);)e.push(this.parseImportSpecifier()),this.match(`}`)||this.expect(`,`);return this.expect(`}`),e},e.prototype.parseImportDefaultSpecifier=function(){var e=this.createNode(),t=this.parseIdentifierName();return this.finalize(e,new o.ImportDefaultSpecifier(t))},e.prototype.parseImportNamespaceSpecifier=function(){var e=this.createNode();this.expect(`*`),this.matchContextualKeyword(`as`)||this.throwError(a.Messages.NoAsAfterImportNamespace),this.nextToken();var t=this.parseIdentifierName();return this.finalize(e,new o.ImportNamespaceSpecifier(t))},e.prototype.parseImportDeclaration=function(){this.context.inFunctionBody&&this.throwError(a.Messages.IllegalImportDeclaration);var e=this.createNode();this.expectKeyword(`import`);var t,n=[];if(this.lookahead.type===8)t=this.parseModuleSpecifier();else{if(this.match(`{`)?n=n.concat(this.parseNamedImports()):this.match(`*`)?n.push(this.parseImportNamespaceSpecifier()):this.isIdentifierName(this.lookahead)&&!this.matchKeyword(`default`)?(n.push(this.parseImportDefaultSpecifier()),this.match(`,`)&&(this.nextToken(),this.match(`*`)?n.push(this.parseImportNamespaceSpecifier()):this.match(`{`)?n=n.concat(this.parseNamedImports()):this.throwUnexpectedToken(this.lookahead))):this.throwUnexpectedToken(this.nextToken()),!this.matchContextualKeyword(`from`)){var r=this.lookahead.value?a.Messages.UnexpectedToken:a.Messages.MissingFromClause;this.throwError(r,this.lookahead.value)}this.nextToken(),t=this.parseModuleSpecifier()}return this.consumeSemicolon(),this.finalize(e,new o.ImportDeclaration(n,t))},e.prototype.parseExportSpecifier=function(){var e=this.createNode(),t=this.parseIdentifierName(),n=t;return this.matchContextualKeyword(`as`)&&(this.nextToken(),n=this.parseIdentifierName()),this.finalize(e,new o.ExportSpecifier(t,n))},e.prototype.parseExportDeclaration=function(){this.context.inFunctionBody&&this.throwError(a.Messages.IllegalExportDeclaration);var e=this.createNode();this.expectKeyword(`export`);var t;if(this.matchKeyword(`default`))if(this.nextToken(),this.matchKeyword(`function`)){var n=this.parseFunctionDeclaration(!0);t=this.finalize(e,new o.ExportDefaultDeclaration(n))}else if(this.matchKeyword(`class`)){var n=this.parseClassDeclaration(!0);t=this.finalize(e,new o.ExportDefaultDeclaration(n))}else if(this.matchContextualKeyword(`async`)){var n=this.matchAsyncFunction()?this.parseFunctionDeclaration(!0):this.parseAssignmentExpression();t=this.finalize(e,new o.ExportDefaultDeclaration(n))}else{this.matchContextualKeyword(`from`)&&this.throwError(a.Messages.UnexpectedToken,this.lookahead.value);var n=this.match(`{`)?this.parseObjectInitializer():this.match(`[`)?this.parseArrayInitializer():this.parseAssignmentExpression();this.consumeSemicolon(),t=this.finalize(e,new o.ExportDefaultDeclaration(n))}else if(this.match(`*`)){if(this.nextToken(),!this.matchContextualKeyword(`from`)){var r=this.lookahead.value?a.Messages.UnexpectedToken:a.Messages.MissingFromClause;this.throwError(r,this.lookahead.value)}this.nextToken();var i=this.parseModuleSpecifier();this.consumeSemicolon(),t=this.finalize(e,new o.ExportAllDeclaration(i))}else if(this.lookahead.type===4){var n=void 0;switch(this.lookahead.value){case`let`:case`const`:n=this.parseLexicalDeclaration({inFor:!1});break;case`var`:case`class`:case`function`:n=this.parseStatementListItem();break;default:this.throwUnexpectedToken(this.lookahead)}t=this.finalize(e,new o.ExportNamedDeclaration(n,[],null))}else if(this.matchAsyncFunction()){var n=this.parseFunctionDeclaration();t=this.finalize(e,new o.ExportNamedDeclaration(n,[],null))}else{var s=[],c=null,l=!1;for(this.expect(`{`);!this.match(`}`);)l||=this.matchKeyword(`default`),s.push(this.parseExportSpecifier()),this.match(`}`)||this.expect(`,`);if(this.expect(`}`),this.matchContextualKeyword(`from`))this.nextToken(),c=this.parseModuleSpecifier(),this.consumeSemicolon();else if(l){var r=this.lookahead.value?a.Messages.UnexpectedToken:a.Messages.MissingFromClause;this.throwError(r,this.lookahead.value)}else this.consumeSemicolon();t=this.finalize(e,new o.ExportNamedDeclaration(null,s,c))}return t},e}();t.Parser=d},function(e,t){"use strict";Object.defineProperty(t,`__esModule`,{value:!0});function n(e,t){if(!e)throw Error(`ASSERT: `+t)}t.assert=n},function(e,t){"use strict";Object.defineProperty(t,`__esModule`,{value:!0});var n=function(){function e(){this.errors=[],this.tolerant=!1}return e.prototype.recordError=function(e){this.errors.push(e)},e.prototype.tolerate=function(e){if(this.tolerant)this.recordError(e);else throw e},e.prototype.constructError=function(e,t){var n=Error(e);try{throw n}catch(e){Object.create&&Object.defineProperty&&(n=Object.create(e),Object.defineProperty(n,`column`,{value:t}))}return n},e.prototype.createError=function(e,t,n,r){var i=`Line `+t+`: `+r,a=this.constructError(i,n);return a.index=e,a.lineNumber=t,a.description=r,a},e.prototype.throwError=function(e,t,n,r){throw this.createError(e,t,n,r)},e.prototype.tolerateError=function(e,t,n,r){var i=this.createError(e,t,n,r);if(this.tolerant)this.recordError(i);else throw i},e}();t.ErrorHandler=n},function(e,t){"use strict";Object.defineProperty(t,`__esModule`,{value:!0}),t.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(e,t,n){"use strict";Object.defineProperty(t,`__esModule`,{value:!0});var r=n(9),i=n(4),a=n(11);function o(e){return`0123456789abcdef`.indexOf(e.toLowerCase())}function s(e){return`01234567`.indexOf(e)}var c=function(){function e(e,t){this.source=e,this.errorHandler=t,this.trackComment=!1,this.isModule=!1,this.length=e.length,this.index=0,this.lineNumber=e.length>0?1:0,this.lineStart=0,this.curlyStack=[]}return e.prototype.saveState=function(){return{index:this.index,lineNumber:this.lineNumber,lineStart:this.lineStart}},e.prototype.restoreState=function(e){this.index=e.index,this.lineNumber=e.lineNumber,this.lineStart=e.lineStart},e.prototype.eof=function(){return this.index>=this.length},e.prototype.throwUnexpectedToken=function(e){return e===void 0&&(e=a.Messages.UnexpectedTokenIllegal),this.errorHandler.throwError(this.index,this.lineNumber,this.index-this.lineStart+1,e)},e.prototype.tolerateUnexpectedToken=function(e){e===void 0&&(e=a.Messages.UnexpectedTokenIllegal),this.errorHandler.tolerateError(this.index,this.lineNumber,this.index-this.lineStart+1,e)},e.prototype.skipSingleLineComment=function(e){var t=[],n,r;for(this.trackComment&&(t=[],n=this.index-e,r={start:{line:this.lineNumber,column:this.index-this.lineStart-e},end:{}});!this.eof();){var a=this.source.charCodeAt(this.index);if(++this.index,i.Character.isLineTerminator(a)){if(this.trackComment){r.end={line:this.lineNumber,column:this.index-this.lineStart-1};var o={multiLine:!1,slice:[n+e,this.index-1],range:[n,this.index-1],loc:r};t.push(o)}return a===13&&this.source.charCodeAt(this.index)===10&&++this.index,++this.lineNumber,this.lineStart=this.index,t}}if(this.trackComment){r.end={line:this.lineNumber,column:this.index-this.lineStart};var o={multiLine:!1,slice:[n+e,this.index],range:[n,this.index],loc:r};t.push(o)}return t},e.prototype.skipMultiLineComment=function(){var e=[],t,n;for(this.trackComment&&(e=[],t=this.index-2,n={start:{line:this.lineNumber,column:this.index-this.lineStart-2},end:{}});!this.eof();){var r=this.source.charCodeAt(this.index);if(i.Character.isLineTerminator(r))r===13&&this.source.charCodeAt(this.index+1)===10&&++this.index,++this.lineNumber,++this.index,this.lineStart=this.index;else if(r===42){if(this.source.charCodeAt(this.index+1)===47){if(this.index+=2,this.trackComment){n.end={line:this.lineNumber,column:this.index-this.lineStart};var a={multiLine:!0,slice:[t+2,this.index-2],range:[t,this.index],loc:n};e.push(a)}return e}++this.index}else ++this.index}if(this.trackComment){n.end={line:this.lineNumber,column:this.index-this.lineStart};var a={multiLine:!0,slice:[t+2,this.index],range:[t,this.index],loc:n};e.push(a)}return this.tolerateUnexpectedToken(),e},e.prototype.scanComments=function(){var e;this.trackComment&&(e=[]);for(var t=this.index===0;!this.eof();){var n=this.source.charCodeAt(this.index);if(i.Character.isWhiteSpace(n))++this.index;else if(i.Character.isLineTerminator(n))++this.index,n===13&&this.source.charCodeAt(this.index)===10&&++this.index,++this.lineNumber,this.lineStart=this.index,t=!0;else if(n===47)if(n=this.source.charCodeAt(this.index+1),n===47){this.index+=2;var r=this.skipSingleLineComment(2);this.trackComment&&(e=e.concat(r)),t=!0}else if(n===42){this.index+=2;var r=this.skipMultiLineComment();this.trackComment&&(e=e.concat(r))}else break;else if(t&&n===45)if(this.source.charCodeAt(this.index+1)===45&&this.source.charCodeAt(this.index+2)===62){this.index+=3;var r=this.skipSingleLineComment(3);this.trackComment&&(e=e.concat(r))}else break;else if(n===60&&!this.isModule)if(this.source.slice(this.index+1,this.index+4)===`!--`){this.index+=4;var r=this.skipSingleLineComment(4);this.trackComment&&(e=e.concat(r))}else break;else break}return e},e.prototype.isFutureReservedWord=function(e){switch(e){case`enum`:case`export`:case`import`:case`super`:return!0;default:return!1}},e.prototype.isStrictModeReservedWord=function(e){switch(e){case`implements`:case`interface`:case`package`:case`private`:case`protected`:case`public`:case`static`:case`yield`:case`let`:return!0;default:return!1}},e.prototype.isRestrictedWord=function(e){return e===`eval`||e===`arguments`},e.prototype.isKeyword=function(e){switch(e.length){case 2:return e===`if`||e===`in`||e===`do`;case 3:return e===`var`||e===`for`||e===`new`||e===`try`||e===`let`;case 4:return e===`this`||e===`else`||e===`case`||e===`void`||e===`with`||e===`enum`;case 5:return e===`while`||e===`break`||e===`catch`||e===`throw`||e===`const`||e===`yield`||e===`class`||e===`super`;case 6:return e===`return`||e===`typeof`||e===`delete`||e===`switch`||e===`export`||e===`import`;case 7:return e===`default`||e===`finally`||e===`extends`;case 8:return e===`function`||e===`continue`||e===`debugger`;case 10:return e===`instanceof`;default:return!1}},e.prototype.codePointAt=function(e){var t=this.source.charCodeAt(e);if(t>=55296&&t<=56319){var n=this.source.charCodeAt(e+1);if(n>=56320&&n<=57343){var r=t;t=(r-55296)*1024+n-56320+65536}}return t},e.prototype.scanHexEscape=function(e){for(var t=e===`u`?4:2,n=0,r=0;r<t;++r)if(!this.eof()&&i.Character.isHexDigit(this.source.charCodeAt(this.index)))n=n*16+o(this.source[this.index++]);else return null;return String.fromCharCode(n)},e.prototype.scanUnicodeCodePointEscape=function(){var e=this.source[this.index],t=0;for(e===`}`&&this.throwUnexpectedToken();!this.eof()&&(e=this.source[this.index++],i.Character.isHexDigit(e.charCodeAt(0)));)t=t*16+o(e);return(t>1114111||e!==`}`)&&this.throwUnexpectedToken(),i.Character.fromCodePoint(t)},e.prototype.getIdentifier=function(){for(var e=this.index++;!this.eof();){var t=this.source.charCodeAt(this.index);if(t===92||t>=55296&&t<57343)return this.index=e,this.getComplexIdentifier();if(i.Character.isIdentifierPart(t))++this.index;else break}return this.source.slice(e,this.index)},e.prototype.getComplexIdentifier=function(){var e=this.codePointAt(this.index),t=i.Character.fromCodePoint(e);this.index+=t.length;var n;for(e===92&&(this.source.charCodeAt(this.index)!==117&&this.throwUnexpectedToken(),++this.index,this.source[this.index]===`{`?(++this.index,n=this.scanUnicodeCodePointEscape()):(n=this.scanHexEscape(`u`),(n===null||n===`\\`||!i.Character.isIdentifierStart(n.charCodeAt(0)))&&this.throwUnexpectedToken()),t=n);!this.eof()&&(e=this.codePointAt(this.index),i.Character.isIdentifierPart(e));)n=i.Character.fromCodePoint(e),t+=n,this.index+=n.length,e===92&&(t=t.substr(0,t.length-1),this.source.charCodeAt(this.index)!==117&&this.throwUnexpectedToken(),++this.index,this.source[this.index]===`{`?(++this.index,n=this.scanUnicodeCodePointEscape()):(n=this.scanHexEscape(`u`),(n===null||n===`\\`||!i.Character.isIdentifierPart(n.charCodeAt(0)))&&this.throwUnexpectedToken()),t+=n);return t},e.prototype.octalToDecimal=function(e){var t=e!==`0`,n=s(e);return!this.eof()&&i.Character.isOctalDigit(this.source.charCodeAt(this.index))&&(t=!0,n=n*8+s(this.source[this.index++]),`0123`.indexOf(e)>=0&&!this.eof()&&i.Character.isOctalDigit(this.source.charCodeAt(this.index))&&(n=n*8+s(this.source[this.index++]))),{code:n,octal:t}},e.prototype.scanIdentifier=function(){var e,t=this.index,n=this.source.charCodeAt(t)===92?this.getComplexIdentifier():this.getIdentifier();if(e=n.length===1?3:this.isKeyword(n)?4:n===`null`?5:n===`true`||n===`false`?1:3,e!==3&&t+n.length!==this.index){var r=this.index;this.index=t,this.tolerateUnexpectedToken(a.Messages.InvalidEscapedReservedWord),this.index=r}return{type:e,value:n,lineNumber:this.lineNumber,lineStart:this.lineStart,start:t,end:this.index}},e.prototype.scanPunctuator=function(){var e=this.index,t=this.source[this.index];switch(t){case`(`:case`{`:t===`{`&&this.curlyStack.push(`{`),++this.index;break;case`.`:++this.index,this.source[this.index]===`.`&&this.source[this.index+1]===`.`&&(this.index+=2,t=`...`);break;case`}`:++this.index,this.curlyStack.pop();break;case`)`:case`;`:case`,`:case`[`:case`]`:case`:`:case`?`:case`~`:++this.index;break;default:t=this.source.substr(this.index,4),t===`>>>=`?this.index+=4:(t=t.substr(0,3),t===`===`||t===`!==`||t===`>>>`||t===`<<=`||t===`>>=`||t===`**=`?this.index+=3:(t=t.substr(0,2),t===`&&`||t===`||`||t===`==`||t===`!=`||t===`+=`||t===`-=`||t===`*=`||t===`/=`||t===`++`||t===`--`||t===`<<`||t===`>>`||t===`&=`||t===`|=`||t===`^=`||t===`%=`||t===`<=`||t===`>=`||t===`=>`||t===`**`?this.index+=2:(t=this.source[this.index],`<>=!+-*%&|^/`.indexOf(t)>=0&&++this.index)))}return this.index===e&&this.throwUnexpectedToken(),{type:7,value:t,lineNumber:this.lineNumber,lineStart:this.lineStart,start:e,end:this.index}},e.prototype.scanHexLiteral=function(e){for(var t=``;!this.eof()&&i.Character.isHexDigit(this.source.charCodeAt(this.index));)t+=this.source[this.index++];return t.length===0&&this.throwUnexpectedToken(),i.Character.isIdentifierStart(this.source.charCodeAt(this.index))&&this.throwUnexpectedToken(),{type:6,value:parseInt(`0x`+t,16),lineNumber:this.lineNumber,lineStart:this.lineStart,start:e,end:this.index}},e.prototype.scanBinaryLiteral=function(e){for(var t=``,n;!this.eof()&&(n=this.source[this.index],!(n!==`0`&&n!==`1`));)t+=this.source[this.index++];return t.length===0&&this.throwUnexpectedToken(),this.eof()||(n=this.source.charCodeAt(this.index),(i.Character.isIdentifierStart(n)||i.Character.isDecimalDigit(n))&&this.throwUnexpectedToken()),{type:6,value:parseInt(t,2),lineNumber:this.lineNumber,lineStart:this.lineStart,start:e,end:this.index}},e.prototype.scanOctalLiteral=function(e,t){var n=``,r=!1;for(i.Character.isOctalDigit(e.charCodeAt(0))?(r=!0,n=`0`+this.source[this.index++]):++this.index;!this.eof()&&i.Character.isOctalDigit(this.source.charCodeAt(this.index));)n+=this.source[this.index++];return!r&&n.length===0&&this.throwUnexpectedToken(),(i.Character.isIdentifierStart(this.source.charCodeAt(this.index))||i.Character.isDecimalDigit(this.source.charCodeAt(this.index)))&&this.throwUnexpectedToken(),{type:6,value:parseInt(n,8),octal:r,lineNumber:this.lineNumber,lineStart:this.lineStart,start:t,end:this.index}},e.prototype.isImplicitOctalLiteral=function(){for(var e=this.index+1;e<this.length;++e){var t=this.source[e];if(t===`8`||t===`9`)return!1;if(!i.Character.isOctalDigit(t.charCodeAt(0)))return!0}return!0},e.prototype.scanNumericLiteral=function(){var e=this.index,t=this.source[e];r.assert(i.Character.isDecimalDigit(t.charCodeAt(0))||t===`.`,`Numeric literal must start with a decimal digit or a decimal point`);var n=``;if(t!==`.`){if(n=this.source[this.index++],t=this.source[this.index],n===`0`){if(t===`x`||t===`X`)return++this.index,this.scanHexLiteral(e);if(t===`b`||t===`B`)return++this.index,this.scanBinaryLiteral(e);if(t===`o`||t===`O`||t&&i.Character.isOctalDigit(t.charCodeAt(0))&&this.isImplicitOctalLiteral())return this.scanOctalLiteral(t,e)}for(;i.Character.isDecimalDigit(this.source.charCodeAt(this.index));)n+=this.source[this.index++];t=this.source[this.index]}if(t===`.`){for(n+=this.source[this.index++];i.Character.isDecimalDigit(this.source.charCodeAt(this.index));)n+=this.source[this.index++];t=this.source[this.index]}if(t===`e`||t===`E`)if(n+=this.source[this.index++],t=this.source[this.index],(t===`+`||t===`-`)&&(n+=this.source[this.index++]),i.Character.isDecimalDigit(this.source.charCodeAt(this.index)))for(;i.Character.isDecimalDigit(this.source.charCodeAt(this.index));)n+=this.source[this.index++];else this.throwUnexpectedToken();return i.Character.isIdentifierStart(this.source.charCodeAt(this.index))&&this.throwUnexpectedToken(),{type:6,value:parseFloat(n),lineNumber:this.lineNumber,lineStart:this.lineStart,start:e,end:this.index}},e.prototype.scanStringLiteral=function(){var e=this.index,t=this.source[e];r.assert(t===`'`||t===`"`,`String literal must starts with a quote`),++this.index;for(var n=!1,o=``;!this.eof();){var s=this.source[this.index++];if(s===t){t=``;break}else if(s===`\\`)if(s=this.source[this.index++],!s||!i.Character.isLineTerminator(s.charCodeAt(0)))switch(s){case`u`:if(this.source[this.index]===`{`)++this.index,o+=this.scanUnicodeCodePointEscape();else{var c=this.scanHexEscape(s);c===null&&this.throwUnexpectedToken(),o+=c}break;case`x`:var l=this.scanHexEscape(s);l===null&&this.throwUnexpectedToken(a.Messages.InvalidHexEscapeSequence),o+=l;break;case`n`:o+=`
23
+ `;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+=s,this.tolerateUnexpectedToken();break;default:if(s&&i.Character.isOctalDigit(s.charCodeAt(0))){var u=this.octalToDecimal(s);n=u.octal||n,o+=String.fromCharCode(u.code)}else o+=s;break}else ++this.lineNumber,s===`\r`&&this.source[this.index]===`
24
+ `&&++this.index,this.lineStart=this.index;else if(i.Character.isLineTerminator(s.charCodeAt(0)))break;else o+=s}return t!==``&&(this.index=e,this.throwUnexpectedToken()),{type:8,value:o,octal:n,lineNumber:this.lineNumber,lineStart:this.lineStart,start:e,end:this.index}},e.prototype.scanTemplate=function(){var e=``,t=!1,n=this.index,r=this.source[n]==="`",o=!1,s=2;for(++this.index;!this.eof();){var c=this.source[this.index++];if(c==="`"){s=1,o=!0,t=!0;break}else if(c===`$`){if(this.source[this.index]===`{`){this.curlyStack.push("${"),++this.index,t=!0;break}e+=c}else if(c===`\\`)if(c=this.source[this.index++],i.Character.isLineTerminator(c.charCodeAt(0)))++this.lineNumber,c===`\r`&&this.source[this.index]===`
25
+ `&&++this.index,this.lineStart=this.index;else switch(c){case`n`:e+=`
26
+ `;break;case`r`:e+=`\r`;break;case`t`:e+=` `;break;case`u`:if(this.source[this.index]===`{`)++this.index,e+=this.scanUnicodeCodePointEscape();else{var l=this.index,u=this.scanHexEscape(c);u===null?(this.index=l,e+=c):e+=u}break;case`x`:var d=this.scanHexEscape(c);d===null&&this.throwUnexpectedToken(a.Messages.InvalidHexEscapeSequence),e+=d;break;case`b`:e+=`\b`;break;case`f`:e+=`\f`;break;case`v`:e+=`\v`;break;default:c===`0`?(i.Character.isDecimalDigit(this.source.charCodeAt(this.index))&&this.throwUnexpectedToken(a.Messages.TemplateOctalLiteral),e+=`\0`):i.Character.isOctalDigit(c.charCodeAt(0))?this.throwUnexpectedToken(a.Messages.TemplateOctalLiteral):e+=c;break}else i.Character.isLineTerminator(c.charCodeAt(0))?(++this.lineNumber,c===`\r`&&this.source[this.index]===`
27
+ `&&++this.index,this.lineStart=this.index,e+=`
28
+ `):e+=c}return t||this.throwUnexpectedToken(),r||this.curlyStack.pop(),{type:10,value:this.source.slice(n+1,this.index-s),cooked:e,head:r,tail:o,lineNumber:this.lineNumber,lineStart:this.lineStart,start:n,end:this.index}},e.prototype.testRegExp=function(e,t){var n=`￿`,r=e,i=this;t.indexOf(`u`)>=0&&(r=r.replace(/\\u\{([0-9a-fA-F]+)\}|\\u([a-fA-F0-9]{4})/g,function(e,t,r){var o=parseInt(t||r,16);return o>1114111&&i.throwUnexpectedToken(a.Messages.InvalidRegExp),o<=65535?String.fromCharCode(o):n}).replace(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,n));try{RegExp(r)}catch{this.throwUnexpectedToken(a.Messages.InvalidRegExp)}try{return new RegExp(e,t)}catch{return null}},e.prototype.scanRegExpBody=function(){var e=this.source[this.index];r.assert(e===`/`,`Regular expression literal must start with a slash`);for(var t=this.source[this.index++],n=!1,o=!1;!this.eof();)if(e=this.source[this.index++],t+=e,e===`\\`)e=this.source[this.index++],i.Character.isLineTerminator(e.charCodeAt(0))&&this.throwUnexpectedToken(a.Messages.UnterminatedRegExp),t+=e;else if(i.Character.isLineTerminator(e.charCodeAt(0)))this.throwUnexpectedToken(a.Messages.UnterminatedRegExp);else if(n)e===`]`&&(n=!1);else if(e===`/`){o=!0;break}else e===`[`&&(n=!0);return o||this.throwUnexpectedToken(a.Messages.UnterminatedRegExp),t.substr(1,t.length-2)},e.prototype.scanRegExpFlags=function(){for(var e=``,t=``;!this.eof();){var n=this.source[this.index];if(!i.Character.isIdentifierPart(n.charCodeAt(0)))break;if(++this.index,n===`\\`&&!this.eof())if(n=this.source[this.index],n===`u`){++this.index;var r=this.index,a=this.scanHexEscape(`u`);if(a!==null)for(t+=a,e+=`\\u`;r<this.index;++r)e+=this.source[r];else this.index=r,t+=`u`,e+=`\\u`;this.tolerateUnexpectedToken()}else e+=`\\`,this.tolerateUnexpectedToken();else t+=n,e+=n}return t},e.prototype.scanRegExp=function(){var e=this.index,t=this.scanRegExpBody(),n=this.scanRegExpFlags(),r=this.testRegExp(t,n);return{type:9,value:``,pattern:t,flags:n,regex:r,lineNumber:this.lineNumber,lineStart:this.lineStart,start:e,end:this.index}},e.prototype.lex=function(){if(this.eof())return{type:2,value:``,lineNumber:this.lineNumber,lineStart:this.lineStart,start:this.index,end:this.index};var e=this.source.charCodeAt(this.index);return i.Character.isIdentifierStart(e)?this.scanIdentifier():e===40||e===41||e===59?this.scanPunctuator():e===39||e===34?this.scanStringLiteral():e===46?i.Character.isDecimalDigit(this.source.charCodeAt(this.index+1))?this.scanNumericLiteral():this.scanPunctuator():i.Character.isDecimalDigit(e)?this.scanNumericLiteral():e===96||e===125&&this.curlyStack[this.curlyStack.length-1]==="${"?this.scanTemplate():e>=55296&&e<57343&&i.Character.isIdentifierStart(this.codePointAt(this.index))?this.scanIdentifier():this.scanPunctuator()},e}();t.Scanner=c},function(e,t){"use strict";Object.defineProperty(t,`__esModule`,{value:!0}),t.TokenName={},t.TokenName[1]=`Boolean`,t.TokenName[2]=`<end>`,t.TokenName[3]=`Identifier`,t.TokenName[4]=`Keyword`,t.TokenName[5]=`Null`,t.TokenName[6]=`Numeric`,t.TokenName[7]=`Punctuator`,t.TokenName[8]=`String`,t.TokenName[9]=`RegularExpression`,t.TokenName[10]=`Template`},function(e,t){"use strict";Object.defineProperty(t,`__esModule`,{value:!0}),t.XHTMLEntities={quot:`"`,amp:`&`,apos:`'`,gt:`>`,nbsp:`\xA0`,iexcl:`¡`,cent:`¢`,pound:`£`,curren:`¤`,yen:`¥`,brvbar:`¦`,sect:`§`,uml:`¨`,copy:`©`,ordf:`ª`,laquo:`«`,not:`¬`,shy:`­`,reg:`®`,macr:`¯`,deg:`°`,plusmn:`±`,sup2:`²`,sup3:`³`,acute:`´`,micro:`µ`,para:`¶`,middot:`·`,cedil:`¸`,sup1:`¹`,ordm:`º`,raquo:`»`,frac14:`¼`,frac12:`½`,frac34:`¾`,iquest:`¿`,Agrave:`À`,Aacute:`Á`,Acirc:`Â`,Atilde:`Ã`,Auml:`Ä`,Aring:`Å`,AElig:`Æ`,Ccedil:`Ç`,Egrave:`È`,Eacute:`É`,Ecirc:`Ê`,Euml:`Ë`,Igrave:`Ì`,Iacute:`Í`,Icirc:`Î`,Iuml:`Ï`,ETH:`Ð`,Ntilde:`Ñ`,Ograve:`Ò`,Oacute:`Ó`,Ocirc:`Ô`,Otilde:`Õ`,Ouml:`Ö`,times:`×`,Oslash:`Ø`,Ugrave:`Ù`,Uacute:`Ú`,Ucirc:`Û`,Uuml:`Ü`,Yacute:`Ý`,THORN:`Þ`,szlig:`ß`,agrave:`à`,aacute:`á`,acirc:`â`,atilde:`ã`,auml:`ä`,aring:`å`,aelig:`æ`,ccedil:`ç`,egrave:`è`,eacute:`é`,ecirc:`ê`,euml:`ë`,igrave:`ì`,iacute:`í`,icirc:`î`,iuml:`ï`,eth:`ð`,ntilde:`ñ`,ograve:`ò`,oacute:`ó`,ocirc:`ô`,otilde:`õ`,ouml:`ö`,divide:`÷`,oslash:`ø`,ugrave:`ù`,uacute:`ú`,ucirc:`û`,uuml:`ü`,yacute:`ý`,thorn:`þ`,yuml:`ÿ`,OElig:`Œ`,oelig:`œ`,Scaron:`Š`,scaron:`š`,Yuml:`Ÿ`,fnof:`ƒ`,circ:`ˆ`,tilde:`˜`,Alpha:`Α`,Beta:`Β`,Gamma:`Γ`,Delta:`Δ`,Epsilon:`Ε`,Zeta:`Ζ`,Eta:`Η`,Theta:`Θ`,Iota:`Ι`,Kappa:`Κ`,Lambda:`Λ`,Mu:`Μ`,Nu:`Ν`,Xi:`Ξ`,Omicron:`Ο`,Pi:`Π`,Rho:`Ρ`,Sigma:`Σ`,Tau:`Τ`,Upsilon:`Υ`,Phi:`Φ`,Chi:`Χ`,Psi:`Ψ`,Omega:`Ω`,alpha:`α`,beta:`β`,gamma:`γ`,delta:`δ`,epsilon:`ε`,zeta:`ζ`,eta:`η`,theta:`θ`,iota:`ι`,kappa:`κ`,lambda:`λ`,mu:`μ`,nu:`ν`,xi:`ξ`,omicron:`ο`,pi:`π`,rho:`ρ`,sigmaf:`ς`,sigma:`σ`,tau:`τ`,upsilon:`υ`,phi:`φ`,chi:`χ`,psi:`ψ`,omega:`ω`,thetasym:`ϑ`,upsih:`ϒ`,piv:`ϖ`,ensp:` `,emsp:` `,thinsp:` `,zwnj:`‌`,zwj:`‍`,lrm:`‎`,rlm:`‏`,ndash:`–`,mdash:`—`,lsquo:`‘`,rsquo:`’`,sbquo:`‚`,ldquo:`“`,rdquo:`”`,bdquo:`„`,dagger:`†`,Dagger:`‡`,bull:`•`,hellip:`…`,permil:`‰`,prime:`′`,Prime:`″`,lsaquo:`‹`,rsaquo:`›`,oline:`‾`,frasl:`⁄`,euro:`€`,image:`ℑ`,weierp:`℘`,real:`ℜ`,trade:`™`,alefsym:`ℵ`,larr:`←`,uarr:`↑`,rarr:`→`,darr:`↓`,harr:`↔`,crarr:`↵`,lArr:`⇐`,uArr:`⇑`,rArr:`⇒`,dArr:`⇓`,hArr:`⇔`,forall:`∀`,part:`∂`,exist:`∃`,empty:`∅`,nabla:`∇`,isin:`∈`,notin:`∉`,ni:`∋`,prod:`∏`,sum:`∑`,minus:`−`,lowast:`∗`,radic:`√`,prop:`∝`,infin:`∞`,ang:`∠`,and:`∧`,or:`∨`,cap:`∩`,cup:`∪`,int:`∫`,there4:`∴`,sim:`∼`,cong:`≅`,asymp:`≈`,ne:`≠`,equiv:`≡`,le:`≤`,ge:`≥`,sub:`⊂`,sup:`⊃`,nsub:`⊄`,sube:`⊆`,supe:`⊇`,oplus:`⊕`,otimes:`⊗`,perp:`⊥`,sdot:`⋅`,lceil:`⌈`,rceil:`⌉`,lfloor:`⌊`,rfloor:`⌋`,loz:`◊`,spades:`♠`,clubs:`♣`,hearts:`♥`,diams:`♦`,lang:`⟨`,rang:`⟩`}},function(e,t,n){"use strict";Object.defineProperty(t,`__esModule`,{value:!0});var r=n(10),i=n(12),a=n(13),o=function(){function e(){this.values=[],this.curly=this.paren=-1}return e.prototype.beforeFunctionExpression=function(e){return`(.{.[.in.typeof.instanceof.new.return.case.delete.throw.void.=.+=.-=.*=.**=./=.%=.<<=.>>=.>>>=.&=.|=.^=.,.+.-.*.**./.%.++.--.<<.>>.>>>.&.|.^.!.~.&&.||.?.:.===.==.>=.<=.<.>.!=.!==`.split(`.`).indexOf(e)>=0},e.prototype.isRegexStart=function(){var e=this.values[this.values.length-1],t=e!==null;switch(e){case`this`:case`]`:t=!1;break;case`)`:var n=this.values[this.paren-1];t=n===`if`||n===`while`||n===`for`||n===`with`;break;case`}`:if(t=!1,this.values[this.curly-3]===`function`){var r=this.values[this.curly-4];t=r?!this.beforeFunctionExpression(r):!1}else if(this.values[this.curly-4]===`function`){var r=this.values[this.curly-5];t=r?!this.beforeFunctionExpression(r):!0}break;default:break}return t},e.prototype.push=function(e){e.type===7||e.type===4?(e.value===`{`?this.curly=this.values.length:e.value===`(`&&(this.paren=this.values.length),this.values.push(e.value)):this.values.push(null)},e}(),s=function(){function e(e,t){this.errorHandler=new r.ErrorHandler,this.errorHandler.tolerant=t?typeof t.tolerant==`boolean`&&t.tolerant:!1,this.scanner=new i.Scanner(e,this.errorHandler),this.scanner.trackComment=t?typeof t.comment==`boolean`&&t.comment:!1,this.trackRange=t?typeof t.range==`boolean`&&t.range:!1,this.trackLoc=t?typeof t.loc==`boolean`&&t.loc:!1,this.buffer=[],this.reader=new o}return e.prototype.errors=function(){return this.errorHandler.errors},e.prototype.getNextToken=function(){if(this.buffer.length===0){var e=this.scanner.scanComments();if(this.scanner.trackComment)for(var t=0;t<e.length;++t){var n=e[t],r=this.scanner.source.slice(n.slice[0],n.slice[1]),i={type:n.multiLine?`BlockComment`:`LineComment`,value:r};this.trackRange&&(i.range=n.range),this.trackLoc&&(i.loc=n.loc),this.buffer.push(i)}if(!this.scanner.eof()){var o=void 0;this.trackLoc&&(o={start:{line:this.scanner.lineNumber,column:this.scanner.index-this.scanner.lineStart},end:{}});var s=this.scanner.source[this.scanner.index]===`/`&&this.reader.isRegexStart(),c=s?this.scanner.scanRegExp():this.scanner.lex();this.reader.push(c);var l={type:a.TokenName[c.type],value:this.scanner.source.slice(c.start,c.end)};if(this.trackRange&&(l.range=[c.start,c.end]),this.trackLoc&&(o.end={line:this.scanner.lineNumber,column:this.scanner.index-this.scanner.lineStart},l.loc=o),c.type===9){var u=c.pattern,d=c.flags;l.regex={pattern:u,flags:d}}this.buffer.push(l)}}return this.buffer.shift()},e}();t.Tokenizer=s}])})}),U=e.__commonJSMin((exports,t)=>{var n,r,i,a,o,s,c,l,u,d,f,p,m,h,g,_,v,y,b,x,S,C,w,T,ee,E,D,te,O,k,A,j;(function(e){var n=typeof global==`object`?global:typeof self==`object`?self:typeof this==`object`?this:{};typeof define==`function`&&define.amd?define(`tslib`,[`exports`],function(t){e(r(n,r(t)))}):typeof t==`object`&&typeof t.exports==`object`?e(r(n,r(t.exports))):e(r(n));function r(e,t){return e!==n&&(typeof Object.create==`function`?Object.defineProperty(e,`__esModule`,{value:!0}):e.__esModule=!0),function(n,r){return e[n]=t?t(n,r):r}}})(function(e){var t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])};n=function(e,n){if(typeof n!=`function`&&n!==null)throw TypeError(`Class extends value `+String(n)+` is not a constructor or null`);t(e,n);function r(){this.constructor=e}e.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)},r=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var i in t=arguments[n],t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e},i=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n},a=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},o=function(e,t){return function(n,r){t(n,r,e)}},s=function(e,t,n,r,i,a){function o(e){if(e!==void 0&&typeof e!=`function`)throw TypeError(`Function expected`);return e}for(var s=r.kind,c=s===`getter`?`get`:s===`setter`?`set`:`value`,l=!t&&e?r.static?e:e.prototype:null,u=t||(l?Object.getOwnPropertyDescriptor(l,r.name):{}),d,f=!1,p=n.length-1;p>=0;p--){var m={};for(var h in r)m[h]=h===`access`?{}:r[h];for(var h in r.access)m.access[h]=r.access[h];m.addInitializer=function(e){if(f)throw TypeError(`Cannot add initializers after decoration has completed`);a.push(o(e||null))};var g=(0,n[p])(s===`accessor`?{get:u.get,set:u.set}:u[c],m);if(s===`accessor`){if(g===void 0)continue;if(typeof g!=`object`||!g)throw TypeError(`Object expected`);(d=o(g.get))&&(u.get=d),(d=o(g.set))&&(u.set=d),(d=o(g.init))&&i.unshift(d)}else (d=o(g))&&(s===`field`?i.unshift(d):u[c]=d)}l&&Object.defineProperty(l,r.name,u),f=!0},c=function(e,t,n){for(var r=arguments.length>2,i=0;i<t.length;i++)n=r?t[i].call(e,n):t[i].call(e);return r?n:void 0},l=function(e){return typeof e==`symbol`?e:`${e}`},u=function(e,t,n){return typeof t==`symbol`&&(t=t.description?`[${t.description}]`:``),Object.defineProperty(e,`name`,{configurable:!0,value:n?`${n} ${t}`:t})},d=function(e,t){if(typeof Reflect==`object`&&typeof Reflect.metadata==`function`)return Reflect.metadata(e,t)},f=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},p=function(e,t){var n={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]},r,i,a,o=Object.create((typeof Iterator==`function`?Iterator:Object).prototype);return o.next=s(0),o.throw=s(1),o.return=s(2),typeof Symbol==`function`&&(o[Symbol.iterator]=function(){return this}),o;function s(e){return function(t){return c([e,t])}}function c(s){if(r)throw TypeError(`Generator is already executing.`);for(;o&&(o=0,s[0]&&(n=0)),n;)try{if(r=1,i&&(a=s[0]&2?i.return:s[0]?i.throw||((a=i.return)&&a.call(i),0):i.next)&&!(a=a.call(i,s[1])).done)return a;switch(i=0,a&&(s=[s[0]&2,a.value]),s[0]){case 0:case 1:a=s;break;case 4:return n.label++,{value:s[1],done:!1};case 5:n.label++,i=s[1],s=[0];continue;case 7:s=n.ops.pop(),n.trys.pop();continue;default:if((a=n.trys,!(a=a.length>0&&a[a.length-1]))&&(s[0]===6||s[0]===2)){n=0;continue}if(s[0]===3&&(!a||s[1]>a[0]&&s[1]<a[3])){n.label=s[1];break}if(s[0]===6&&n.label<a[1]){n.label=a[1],a=s;break}if(a&&n.label<a[2]){n.label=a[2],n.ops.push(s);break}a[2]&&n.ops.pop(),n.trys.pop();continue}s=t.call(e,n)}catch(e){s=[6,e],i=0}finally{r=a=0}if(s[0]&5)throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}},m=function(e,t){for(var n in e)n!==`default`&&!Object.prototype.hasOwnProperty.call(t,n)&&O(t,e,n)},O=Object.create?function(e,t,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(t,n);(!i||(`get`in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,r,i)}:function(e,t,n,r){r===void 0&&(r=n),e[r]=t[n]},h=function(e){var t=typeof Symbol==`function`&&Symbol.iterator,n=t&&e[t],r=0;if(n)return n.call(e);if(e&&typeof e.length==`number`)return{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw TypeError(t?`Object is not iterable.`:`Symbol.iterator is not defined.`)},g=function(e,t){var n=typeof Symbol==`function`&&e[Symbol.iterator];if(!n)return e;var r=n.call(e),i,a=[],o;try{for(;(t===void 0||t-- >0)&&!(i=r.next()).done;)a.push(i.value)}catch(e){o={error:e}}finally{try{i&&!i.done&&(n=r.return)&&n.call(r)}finally{if(o)throw o.error}}return a},_=function(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(g(arguments[t]));return e},v=function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;for(var r=Array(e),i=0,t=0;t<n;t++)for(var a=arguments[t],o=0,s=a.length;o<s;o++,i++)r[i]=a[o];return r},y=function(e,t,n){if(n||arguments.length===2)for(var r=0,i=t.length,a;r<i;r++)(a||!(r in t))&&(a||=Array.prototype.slice.call(t,0,r),a[r]=t[r]);return e.concat(a||Array.prototype.slice.call(t))},b=function(e){return this instanceof b?(this.v=e,this):new b(e)},x=function(e,t,n){if(!Symbol.asyncIterator)throw TypeError(`Symbol.asyncIterator is not defined.`);var r=n.apply(e,t||[]),i,a=[];return i=Object.create((typeof AsyncIterator==`function`?AsyncIterator:Object).prototype),s(`next`),s(`throw`),s(`return`,o),i[Symbol.asyncIterator]=function(){return this},i;function o(e){return function(t){return Promise.resolve(t).then(e,d)}}function s(e,t){r[e]&&(i[e]=function(t){return new Promise(function(n,r){a.push([e,t,n,r])>1||c(e,t)})},t&&(i[e]=t(i[e])))}function c(e,t){try{l(r[e](t))}catch(e){f(a[0][3],e)}}function l(e){e.value instanceof b?Promise.resolve(e.value.v).then(u,d):f(a[0][2],e)}function u(e){c(`next`,e)}function d(e){c(`throw`,e)}function f(e,t){e(t),a.shift(),a.length&&c(a[0][0],a[0][1])}},S=function(e){var t,n;return t={},r(`next`),r(`throw`,function(e){throw e}),r(`return`),t[Symbol.iterator]=function(){return this},t;function r(r,i){t[r]=e[r]?function(t){return(n=!n)?{value:b(e[r](t)),done:!1}:i?i(t):t}:i}},C=function(e){if(!Symbol.asyncIterator)throw TypeError(`Symbol.asyncIterator is not defined.`);var t=e[Symbol.asyncIterator],n;return t?t.call(e):(e=typeof h==`function`?h(e):e[Symbol.iterator](),n={},r(`next`),r(`throw`),r(`return`),n[Symbol.asyncIterator]=function(){return this},n);function r(t){n[t]=e[t]&&function(n){return new Promise(function(r,a){n=e[t](n),i(r,a,n.done,n.value)})}}function i(e,t,n,r){Promise.resolve(r).then(function(t){e({value:t,done:n})},t)}},w=function(e,t){return Object.defineProperty?Object.defineProperty(e,`raw`,{value:t}):e.raw=t,e};var ne=Object.create?function(e,t){Object.defineProperty(e,`default`,{enumerable:!0,value:t})}:function(e,t){e.default=t},M=function(e){return M=Object.getOwnPropertyNames||function(e){var t=[];for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[t.length]=n);return t},M(e)};T=function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var n=M(e),r=0;r<n.length;r++)n[r]!==`default`&&O(t,e,n[r]);return ne(t,e),t},ee=function(e){return e&&e.__esModule?e:{default:e}},E=function(e,t,n,r){if(n===`a`&&!r)throw TypeError(`Private accessor was defined without a getter`);if(typeof t==`function`?e!==t||!r:!t.has(e))throw TypeError(`Cannot read private member from an object whose class did not declare it`);return n===`m`?r:n===`a`?r.call(e):r?r.value:t.get(e)},D=function(e,t,n,r,i){if(r===`m`)throw TypeError(`Private method is not writable`);if(r===`a`&&!i)throw TypeError(`Private accessor was defined without a setter`);if(typeof t==`function`?e!==t||!i:!t.has(e))throw TypeError(`Cannot write private member to an object whose class did not declare it`);return r===`a`?i.call(e,n):i?i.value=n:t.set(e,n),n},te=function(e,t){if(t===null||typeof t!=`object`&&typeof t!=`function`)throw TypeError(`Cannot use 'in' operator on non-object`);return typeof e==`function`?t===e:e.has(t)},k=function(e,t,n){if(t!=null){if(typeof t!=`object`&&typeof t!=`function`)throw TypeError(`Object expected.`);var r,i;if(n){if(!Symbol.asyncDispose)throw TypeError(`Symbol.asyncDispose is not defined.`);r=t[Symbol.asyncDispose]}if(r===void 0){if(!Symbol.dispose)throw TypeError(`Symbol.dispose is not defined.`);r=t[Symbol.dispose],n&&(i=r)}if(typeof r!=`function`)throw TypeError(`Object not disposable.`);i&&(r=function(){try{i.call(this)}catch(e){return Promise.reject(e)}}),e.stack.push({value:t,dispose:r,async:n})}else n&&e.stack.push({async:!0});return t};var re=typeof SuppressedError==`function`?SuppressedError:function(e,t,n){var r=Error(n);return r.name=`SuppressedError`,r.error=e,r.suppressed=t,r};A=function(e){function t(t){e.error=e.hasError?new re(t,e.error,`An error was suppressed during disposal.`):t,e.hasError=!0}var n,r=0;function i(){for(;n=e.stack.pop();)try{if(!n.async&&r===1)return r=0,e.stack.push(n),Promise.resolve().then(i);if(n.dispose){var a=n.dispose.call(n.value);if(n.async)return r|=2,Promise.resolve(a).then(i,function(e){return t(e),i()})}else r|=1}catch(e){t(e)}if(r===1)return e.hasError?Promise.reject(e.error):Promise.resolve();if(e.hasError)throw e.error}return i()},j=function(e,t){return typeof e==`string`&&/^\.\.?\//.test(e)?e.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+?)?)\.([cm]?)ts$/i,function(e,n,r,i,a){return n?t?`.jsx`:`.js`:r&&(!i||!a)?e:r+i+`.`+a.toLowerCase()+`js`}):e},e(`__extends`,n),e(`__assign`,r),e(`__rest`,i),e(`__decorate`,a),e(`__param`,o),e(`__esDecorate`,s),e(`__runInitializers`,c),e(`__propKey`,l),e(`__setFunctionName`,u),e(`__metadata`,d),e(`__awaiter`,f),e(`__generator`,p),e(`__exportStar`,m),e(`__createBinding`,O),e(`__values`,h),e(`__read`,g),e(`__spread`,_),e(`__spreadArrays`,v),e(`__spreadArray`,y),e(`__await`,b),e(`__asyncGenerator`,x),e(`__asyncDelegator`,S),e(`__asyncValues`,C),e(`__makeTemplateObject`,w),e(`__importStar`,T),e(`__importDefault`,ee),e(`__classPrivateFieldGet`,E),e(`__classPrivateFieldSet`,D),e(`__classPrivateFieldIn`,te),e(`__addDisposableResource`,k),e(`__disposeResources`,A),e(`__rewriteRelativeImportExtension`,j)})}),W=e.__commonJSMin(exports=>{Object.defineProperty(exports,`__esModule`,{value:!0}),exports.Def=void 0;var t=U(),n=Object.prototype,r=n.toString,i=n.hasOwnProperty,a=function(){function e(){}return e.prototype.assert=function(e,t){if(!this.check(e,t)){var n=p(e);throw Error(n+` does not match type `+this)}return!0},e.prototype.arrayOf=function(){var e=this;return new o(e)},e}(),o=function(e){t.__extends(n,e);function n(t){var n=e.call(this)||this;return n.elemType=t,n.kind=`ArrayType`,n}return n.prototype.toString=function(){return`[`+this.elemType+`]`},n.prototype.check=function(e,t){var n=this;return Array.isArray(e)&&e.every(function(e){return n.elemType.check(e,t)})},n}(a),s=function(e){t.__extends(n,e);function n(t){var n=e.call(this)||this;return n.value=t,n.kind=`IdentityType`,n}return n.prototype.toString=function(){return String(this.value)},n.prototype.check=function(e,t){var n=e===this.value;return!n&&typeof t==`function`&&t(this,e),n},n}(a),c=function(e){t.__extends(n,e);function n(t){var n=e.call(this)||this;return n.fields=t,n.kind=`ObjectType`,n}return n.prototype.toString=function(){return`{ `+this.fields.join(`, `)+` }`},n.prototype.check=function(e,t){return r.call(e)===r.call({})&&this.fields.every(function(n){return n.type.check(e[n.name],t)})},n}(a),l=function(e){t.__extends(n,e);function n(t){var n=e.call(this)||this;return n.types=t,n.kind=`OrType`,n}return n.prototype.toString=function(){return this.types.join(` | `)},n.prototype.check=function(e,t){return this.types.some(function(n){return n.check(e,t)})},n}(a),u=function(e){t.__extends(n,e);function n(t,n){var r=e.call(this)||this;return r.name=t,r.predicate=n,r.kind=`PredicateType`,r}return n.prototype.toString=function(){return this.name},n.prototype.check=function(e,t){var n=this.predicate(e,t);return!n&&typeof t==`function`&&t(this,e),n},n}(a),d=function(){function e(e,t){this.type=e,this.typeName=t,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 e.prototype.isSupertypeOf=function(t){if(t instanceof e){if(this.finalized!==!0||t.finalized!==!0)throw Error(``);return i.call(t.allSupertypes,this.typeName)}else throw Error(t+` is not a Def`)},e.prototype.checkAllFields=function(e,t){var n=this.allFields;if(this.finalized!==!0)throw Error(``+this.typeName);function r(r){var i=n[r],a=i.type,o=i.getValue(e);return a.check(o,t)}return typeof e==`object`&&!!e&&Object.keys(n).every(r)},e.prototype.bases=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];var n=this.baseNames;if(this.finalized){if(e.length!==n.length)throw Error(``);for(var r=0;r<e.length;r++)if(e[r]!==n[r])throw Error(``);return this}return e.forEach(function(e){n.indexOf(e)<0&&n.push(e)}),this},e}();exports.Def=d;var f=function(){function e(e,t,n,r){this.name=e,this.type=t,this.defaultFn=n,this.hidden=!!r}return e.prototype.toString=function(){return JSON.stringify(this.name)+`: `+this.type},e.prototype.getValue=function(e){var t=e[this.name];return t===void 0&&typeof this.defaultFn==`function`&&(t=this.defaultFn.call(e)),t},e}();function p(e){return Array.isArray(e)?`[`+e.map(p).join(`, `)+`]`:e&&typeof e==`object`?`{ `+Object.keys(e).map(function(t){return t+`: `+e[t]}).join(`, `)+` }`:JSON.stringify(e)}function m(e){var n={or:function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return new l(e.map(function(e){return n.from(e)}))},from:function(e,t){if(e instanceof o||e instanceof s||e instanceof c||e instanceof l||e instanceof u)return e;if(e instanceof d)return e.type;if(v.check(e)){if(e.length!==1)throw Error(`only one element type is permitted for typed arrays`);return new o(n.from(e[0]))}if(y.check(e))return new c(Object.keys(e).map(function(t){return new f(t,n.from(e[t],t))}));if(typeof e==`function`){var r=a.indexOf(e);if(r>=0)return m[r];if(typeof t!=`string`)throw Error(`missing name`);return new u(t,e)}return new s(e)},def:function(e){return i.call(E,e)?E[e]:E[e]=new te(e)},hasDef:function(e){return i.call(E,e)}},a=[],m=[];function h(e,t){var n=r.call(t),i=new u(e,function(e){return r.call(e)===n});return t&&typeof t.constructor==`function`&&(a.push(t.constructor),m.push(i)),i}var g=h(`string`,`truthy`),_=h(`function`,function(){}),v=h(`array`,[]),y=h(`object`,{}),b=h(`RegExp`,/./),x=h(`Date`,new Date),S=h(`number`,3),C=h(`boolean`,!0),w=h(`null`,null),T=h(`undefined`,void 0),ee={string:g,function:_,array:v,object:y,RegExp:b,Date:x,number:S,boolean:C,null:w,undefined:T},E=Object.create(null);function D(e){if(e&&typeof e==`object`){var t=e.type;if(typeof t==`string`&&i.call(E,t)){var n=E[t];if(n.finalized)return n}}return null}var te=function(e){t.__extends(r,e);function r(t){var n=e.call(this,new u(t,function(e,t){return n.check(e,t)}),t)||this;return n}return r.prototype.check=function(e,t){if(this.finalized!==!0)throw Error(`prematurely checking unfinalized type `+this.typeName);if(typeof e!=`object`||!e)return!1;var n=D(e);return n?t&&n===this?this.checkAllFields(e,t):this.isSupertypeOf(n)?t?n.checkAllFields(e,t)&&this.checkAllFields(e,!1):!0:!1:this.typeName===`SourceLocation`||this.typeName===`Position`?this.checkAllFields(e,t):!1},r.prototype.build=function(){for(var e=this,t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];if(this.buildParams=t,this.buildable)return this;this.field(`type`,String,function(){return e.typeName}),this.buildable=!0;var r=function(t,n,r,a){if(!i.call(t,n)){var o=e.allFields;if(!i.call(o,n))throw Error(``+n);var s=o[n],c=s.type,l;if(a)l=r;else if(s.defaultFn)l=s.defaultFn.call(t);else{var u=`no value or default function given for field `+JSON.stringify(n)+` of `+e.typeName+`(`+e.buildParams.map(function(e){return o[e]}).join(`, `)+`)`;throw Error(u)}if(!c.check(l))throw Error(p(l)+` does not match field `+s+` of type `+e.typeName);t[n]=l}},a=function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];var i=t.length;if(!e.finalized)throw Error(`attempting to instantiate unfinalized type `+e.typeName);var a=Object.create(j);if(e.buildParams.forEach(function(e,n){n<i?r(a,e,t[n],!0):r(a,e,null,!1)}),Object.keys(e.allFields).forEach(function(e){r(a,e,null,!1)}),a.type!==e.typeName)throw Error(``);return a};return a.from=function(t){if(!e.finalized)throw Error(`attempting to instantiate unfinalized type `+e.typeName);var n=Object.create(j);if(Object.keys(e.allFields).forEach(function(e){i.call(t,e)?r(n,e,t[e],!0):r(n,e,null,!1)}),n.type!==e.typeName)throw Error(``);return n},Object.defineProperty(A,M(this.typeName),{enumerable:!0,value:a}),this},r.prototype.field=function(e,t,r,i){return this.finalized?(console.error(`Ignoring attempt to redefine field `+JSON.stringify(e)+` of finalized type `+JSON.stringify(this.typeName)),this):(this.ownFields[e]=new f(e,n.from(t),r,i),this)},r.prototype.finalize=function(){var e=this;if(!this.finalized){var t=this.allFields,n=this.allSupertypes;for(var r in this.baseNames.forEach(function(r){var i=E[r];if(i instanceof d)i.finalize(),F(t,i.allFields),F(n,i.allSupertypes);else{var a=`unknown supertype name `+JSON.stringify(r)+` for subtype `+JSON.stringify(e.typeName);throw Error(a)}}),F(t,this.ownFields),n[this.typeName]=this,this.fieldNames.length=0,t)i.call(t,r)&&!t[r].hidden&&this.fieldNames.push(r);Object.defineProperty(ie,this.typeName,{enumerable:!0,value:this.type}),this.finalized=!0,P(this.typeName,this.supertypeList),this.buildable&&this.supertypeList.lastIndexOf(`Expression`)>=0&&ce(this.typeName)}},r}(d);function O(e){if(!i.call(E,e))throw Error(``);var t=E[e];if(t.finalized!==!0)throw Error(``);return t.supertypeList.slice(1)}function k(e){for(var t={},n=Object.keys(E),r=n.length,a=0;a<r;++a){var o=n[a],s=E[o];if(s.finalized!==!0)throw Error(``+o);for(var c=0;c<s.supertypeList.length;++c){var l=s.supertypeList[c];if(i.call(e,l)){t[o]=l;break}}}return t}var A=Object.create(null),j={};function ne(e,t){var n=j[e];return T.check(t)?delete j[e]:(_.assert(t),Object.defineProperty(j,e,{enumerable:!0,configurable:!0,value:t})),n}function M(e){return e.replace(/^[A-Z]+/,function(e){var t=e.length;switch(t){case 0:return``;case 1:return e.toLowerCase();default:return e.slice(0,t-1).toLowerCase()+e.charAt(t-1)}})}function re(e){return e=M(e),e.replace(/(Expression)?$/,`Statement`)}var ie={};function ae(e){var t=D(e);if(t)return t.fieldNames.slice(0);if(`type`in e)throw Error(`did not recognize object of type `+JSON.stringify(e.type));return Object.keys(e)}function N(e,t){var n=D(e);if(n){var r=n.allFields[t];if(r)return r.getValue(e)}return e&&e[t]}function oe(e,t,n){ae(e).forEach(function(n){t.call(this,n,N(e,n))},n)}function se(e,t,n){return ae(e).some(function(n){return t.call(this,n,N(e,n))},n)}function ce(e){var t=re(e);if(!A[t]){var n=A[M(e)];if(n){var r=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return A.expressionStatement(n.apply(A,e))};r.from=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return A.expressionStatement(n.from.apply(A,e))},A[t]=r}}}function P(e,t){t.length=0,t.push(e);for(var n=Object.create(null),r=0;r<t.length;++r){e=t[r];var a=E[e];if(a.finalized!==!0)throw Error(``);i.call(n,e)&&delete t[n[e]],n[e]=r,t.push.apply(t,a.baseNames)}for(var o=0,s=o,c=t.length;s<c;++s)i.call(t,s)&&(t[o++]=t[s]);t.length=o}function F(e,t){return Object.keys(t).forEach(function(n){e[n]=t[n]}),e}function le(){Object.keys(E).forEach(function(e){E[e].finalize()})}return{Type:n,builtInTypes:ee,getSupertypeNames:O,computeSupertypeLookupTable:k,builders:A,defineMethod:ne,getBuilderName:M,getStatementBuilderName:re,namedTypes:ie,getFieldNames:ae,getFieldValue:N,eachField:oe,someField:se,finalize:le}}exports.default=m}),Ee=e.__commonJSMin((exports,t)=>{Object.defineProperty(exports,`__esModule`,{value:!0});var n=U(),r=n.__importDefault(W()),i=Object.prototype,a=i.hasOwnProperty;function o(e){var t=e.use(r.default),n=t.builtInTypes.array,i=t.builtInTypes.number,o=function e(t,n,r){if(!(this instanceof e))throw Error(`Path constructor cannot be invoked without 'new'`);if(n){if(!(n instanceof e))throw Error(``)}else n=null,r=null;this.value=t,this.parentPath=n,this.name=r,this.__childCache=null},s=o.prototype;function c(e){return e.__childCache||=Object.create(null)}function l(e,t){var n=c(e),r=e.getValueProperty(t),i=n[t];return(!a.call(n,t)||i.value!==r)&&(i=n[t]=new e.constructor(r,e,t)),i}s.getValueProperty=function(e){return this.value[e]},s.get=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];for(var n=this,r=e.length,i=0;i<r;++i)n=l(n,e[i]);return n},s.each=function(e,t){for(var n=[],r=this.value.length,i=0,i=0;i<r;++i)a.call(this.value,i)&&(n[i]=this.get(i));for(t||=this,i=0;i<r;++i)a.call(n,i)&&e.call(t,n[i])},s.map=function(e,t){var n=[];return this.each(function(t){n.push(e.call(this,t))},t),n},s.filter=function(e,t){var n=[];return this.each(function(t){e.call(this,t)&&n.push(t)},t),n};function u(){}function d(e,t,r,o){if(n.assert(e.value),t===0)return u;var s=e.value.length;if(s<1)return u;var l=arguments.length;l===2?(r=0,o=s):l===3?(r=Math.max(r,0),o=s):(r=Math.max(r,0),o=Math.min(o,s)),i.assert(r),i.assert(o);for(var d=Object.create(null),f=c(e),p=r;p<o;++p)if(a.call(e.value,p)){var m=e.get(p);if(m.name!==p)throw Error(``);var h=p+t;m.name=h,d[h]=m,delete f[p]}return delete f.length,function(){for(var t in d){var n=d[t];if(n.name!==+t)throw Error(``);f[t]=n,e.value[t]=n.value}}}s.shift=function(){var e=d(this,-1),t=this.value.shift();return e(),t},s.unshift=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];var n=d(this,e.length),r=this.value.unshift.apply(this.value,e);return n(),r},s.push=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return n.assert(this.value),delete c(this).length,this.value.push.apply(this.value,e)},s.pop=function(){n.assert(this.value);var e=c(this);return delete e[this.value.length-1],delete e.length,this.value.pop()},s.insertAt=function(e){var t=arguments.length,n=d(this,t-1,e);if(n===u&&t<=1)return this;e=Math.max(e,0);for(var r=1;r<t;++r)this.value[e+r-1]=arguments[r];return n(),this},s.insertBefore=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];for(var n=this.parentPath,r=e.length,i=[this.name],a=0;a<r;++a)i.push(e[a]);return n.insertAt.apply(n,i)},s.insertAfter=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];for(var n=this.parentPath,r=e.length,i=[this.name+1],a=0;a<r;++a)i.push(e[a]);return n.insertAt.apply(n,i)};function f(e){if(!(e instanceof o))throw Error(``);var t=e.parentPath;if(!t)return e;var r=t.value,i=c(t);if(r[e.name]===e.value)i[e.name]=e;else if(n.check(r)){var a=r.indexOf(e.value);a>=0&&(i[e.name=a]=e)}else r[e.name]=e.value,i[e.name]=e;if(r[e.name]!==e.value||e.parentPath.get(e.name)!==e)throw Error(``);return e}return s.replace=function(e){var t=[],r=this.parentPath.value,i=c(this.parentPath),a=arguments.length;if(f(this),n.check(r)){for(var o=r.length,s=d(this.parentPath,a-1,this.name+1),l=[this.name,1],u=0;u<a;++u)l.push(arguments[u]);var p=r.splice.apply(r,l);if(p[0]!==this.value||r.length!==o-1+a)throw Error(``);if(s(),a===0)delete this.value,delete i[this.name],this.__childCache=null;else{if(r[this.name]!==e)throw Error(``);for(this.value!==e&&(this.value=e,this.__childCache=null),u=0;u<a;++u)t.push(this.parentPath.get(this.name+u));if(t[0]!==this)throw Error(``)}}else if(a===1)this.value!==e&&(this.__childCache=null),this.value=r[this.name]=e,t.push(this);else if(a===0)delete r[this.name],delete this.value,this.__childCache=null;else throw Error(`Could not replace path`);return t},o}exports.default=o,t.exports=exports.default}),G=e.__commonJSMin((exports,t)=>{Object.defineProperty(exports,`__esModule`,{value:!0});var n=U(),r=n.__importDefault(W()),i=Object.prototype.hasOwnProperty;function a(e){var t=e.use(r.default),n=t.Type,a=t.namedTypes,o=a.Node,s=a.Expression,c=t.builtInTypes.array,l=t.builders,u=function e(t,n){if(!(this instanceof e))throw Error(`Scope constructor cannot be invoked without 'new'`);f.assert(t.value);var r;if(n){if(!(n instanceof e))throw Error(``);r=n.depth+1}else n=null,r=0;Object.defineProperties(this,{path:{value:t},node:{value:t.value},isGlobal:{value:!n,enumerable:!0},depth:{value:r},parent:{value:n},bindings:{value:{}},types:{value:{}}})},d=[a.Program,a.Function,a.CatchClause],f=n.or.apply(n,d);u.isEstablishedBy=function(e){return f.check(e)};var p=u.prototype;p.didScan=!1,p.declares=function(e){return this.scan(),i.call(this.bindings,e)},p.declaresType=function(e){return this.scan(),i.call(this.types,e)},p.declareTemporary=function(e){if(e){if(!/^[a-z$_]/i.test(e))throw Error(``)}else e=`t$`;e+=this.depth.toString(36)+`$`,this.scan();for(var n=0;this.declares(e+n);)++n;var r=e+n;return this.bindings[r]=t.builders.identifier(r)},p.injectTemporary=function(e,t){e||=this.declareTemporary();var n=this.path.get(`body`);return a.BlockStatement.check(n.value)&&(n=n.get(`body`)),n.unshift(l.variableDeclaration(`var`,[l.variableDeclarator(e,t||null)])),e},p.scan=function(e){if(e||!this.didScan){for(var t in this.bindings)delete this.bindings[t];m(this.path,this.bindings,this.types),this.didScan=!0}},p.getBindings=function(){return this.scan(),this.bindings},p.getTypes=function(){return this.scan(),this.types};function m(e,t,n){var r=e.value;if(f.assert(r),a.CatchClause.check(r)){var i=e.get(`param`);i.value&&v(i,t)}else h(e,t,n)}function h(e,n,r){var i=e.value;e.parent&&a.FunctionExpression.check(e.parent.node)&&e.parent.node.id&&v(e.parent.get(`id`),n),i&&(c.check(i)?e.each(function(e){_(e,n,r)}):a.Function.check(i)?(e.get(`params`).each(function(e){v(e,n)}),_(e.get(`body`),n,r)):a.TypeAlias&&a.TypeAlias.check(i)||a.InterfaceDeclaration&&a.InterfaceDeclaration.check(i)||a.TSTypeAliasDeclaration&&a.TSTypeAliasDeclaration.check(i)||a.TSInterfaceDeclaration&&a.TSInterfaceDeclaration.check(i)?y(e.get(`id`),r):a.VariableDeclarator.check(i)?(v(e.get(`id`),n),_(e.get(`init`),n,r)):i.type===`ImportSpecifier`||i.type===`ImportNamespaceSpecifier`||i.type===`ImportDefaultSpecifier`?v(e.get(i.local?`local`:i.name?`name`:`id`),n):o.check(i)&&!s.check(i)&&t.eachField(i,function(t,i){var a=e.get(t);if(!g(a,i))throw Error(``);_(a,n,r)}))}function g(e,t){return!!(e.value===t||Array.isArray(e.value)&&e.value.length===0&&Array.isArray(t)&&t.length===0)}function _(e,t,n){var r=e.value;if(!(!r||s.check(r)))if(a.FunctionDeclaration.check(r)&&r.id!==null)v(e.get(`id`),t);else if(a.ClassDeclaration&&a.ClassDeclaration.check(r))v(e.get(`id`),t);else if(f.check(r)){if(a.CatchClause.check(r)&&a.Identifier.check(r.param)){var o=r.param.name,c=i.call(t,o);h(e.get(`body`),t,n),c||delete t[o]}}else h(e,t,n)}function v(e,t){var n=e.value;a.Pattern.assert(n),a.Identifier.check(n)?i.call(t,n.name)?t[n.name].push(e):t[n.name]=[e]:a.AssignmentPattern&&a.AssignmentPattern.check(n)?v(e.get(`left`),t):a.ObjectPattern&&a.ObjectPattern.check(n)?e.get(`properties`).each(function(e){var n=e.value;a.Pattern.check(n)?v(e,t):a.Property.check(n)?v(e.get(`value`),t):a.SpreadProperty&&a.SpreadProperty.check(n)&&v(e.get(`argument`),t)}):a.ArrayPattern&&a.ArrayPattern.check(n)?e.get(`elements`).each(function(e){var n=e.value;a.Pattern.check(n)?v(e,t):a.SpreadElement&&a.SpreadElement.check(n)&&v(e.get(`argument`),t)}):a.PropertyPattern&&a.PropertyPattern.check(n)?v(e.get(`pattern`),t):(a.SpreadElementPattern&&a.SpreadElementPattern.check(n)||a.SpreadPropertyPattern&&a.SpreadPropertyPattern.check(n))&&v(e.get(`argument`),t)}function y(e,t){var n=e.value;a.Pattern.assert(n),a.Identifier.check(n)&&(i.call(t,n.name)?t[n.name].push(e):t[n.name]=[e])}return p.lookup=function(e){for(var t=this;t&&!t.declares(e);t=t.parent);return t},p.lookupType=function(e){for(var t=this;t&&!t.declaresType(e);t=t.parent);return t},p.getGlobalScope=function(){for(var e=this;!e.isGlobal;)e=e.parent;return e},u}exports.default=a,t.exports=exports.default}),De=e.__commonJSMin((exports,t)=>{Object.defineProperty(exports,`__esModule`,{value:!0});var n=U(),r=n.__importDefault(W()),i=n.__importDefault(Ee()),a=n.__importDefault(G());function o(e){var t=e.use(r.default),n=t.namedTypes,o=t.builders,s=t.builtInTypes.number,c=t.builtInTypes.array,l=e.use(i.default),u=e.use(a.default),d=function e(t,n,r){if(!(this instanceof e))throw Error(`NodePath constructor cannot be invoked without 'new'`);l.call(this,t,n,r)},f=d.prototype=Object.create(l.prototype,{constructor:{value:d,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,l.prototype.replace.apply(this,arguments)},f.prune=function(){var e=this.parent;return this.replace(),v(e)},f._computeNode=function(){var e=this.value;if(n.Node.check(e))return e;var t=this.parentPath;return t&&t.node||null},f._computeParent=function(){var e=this.value,t=this.parentPath;if(!n.Node.check(e)){for(;t&&!n.Node.check(t.value);)t=t.parentPath;t&&=t.parentPath}for(;t&&!n.Node.check(t.value);)t=t.parentPath;return t||null},f._computeScope=function(){var e=this.value,t=this.parentPath,r=t&&t.scope;return n.Node.check(e)&&u.isEstablishedBy(e)&&(r=new u(this,r)),r||null},f.getValueProperty=function(e){return t.getFieldValue(this.value,e)},f.needsParens=function(e){var t=this.parentPath;if(!t)return!1;var r=this.value;if(!n.Expression.check(r)||r.type===`Identifier`)return!1;for(;!n.Node.check(t.value);)if(t=t.parentPath,!t)return!1;var i=t.value;switch(r.type){case`UnaryExpression`:case`SpreadElement`:case`SpreadProperty`:return i.type===`MemberExpression`&&this.name===`object`&&i.object===r;case`BinaryExpression`:case`LogicalExpression`:switch(i.type){case`CallExpression`:return this.name===`callee`&&i.callee===r;case`UnaryExpression`:case`SpreadElement`:case`SpreadProperty`:return!0;case`MemberExpression`:return this.name===`object`&&i.object===r;case`BinaryExpression`:case`LogicalExpression`:var a=r,o=i.operator,c=h[o],l=a.operator,u=h[l];if(c>u)return!0;if(c===u&&this.name===`right`){if(i.right!==a)throw Error(`Nodes must be equal`);return!0}default:return!1}case`SequenceExpression`:switch(i.type){case`ForStatement`:return!1;case`ExpressionStatement`:return this.name!==`expression`;default:return!0}case`YieldExpression`:switch(i.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 i.type===`MemberExpression`&&s.check(r.value)&&this.name===`object`&&i.object===r;case`AssignmentExpression`:case`ConditionalExpression`:switch(i.type){case`UnaryExpression`:case`SpreadElement`:case`SpreadProperty`:case`BinaryExpression`:case`LogicalExpression`:return!0;case`CallExpression`:return this.name===`callee`&&i.callee===r;case`ConditionalExpression`:return this.name===`test`&&i.test===r;case`MemberExpression`:return this.name===`object`&&i.object===r;default:return!1}default:if(i.type===`NewExpression`&&this.name===`callee`&&i.callee===r)return g(r)}return!!(e!==!0&&!this.canBeFirstInStatement()&&this.firstInStatement())};function p(e){return n.BinaryExpression.check(e)||n.LogicalExpression.check(e)}function m(e){return n.UnaryExpression.check(e)||n.SpreadElement&&n.SpreadElement.check(e)||n.SpreadProperty&&n.SpreadProperty.check(e)}var h={};[[`||`],[`&&`],[`|`],[`^`],[`&`],[`==`,`===`,`!=`,`!==`],[`<`,`>`,`<=`,`>=`,`in`,`instanceof`],[`>>`,`<<`,`>>>`],[`+`,`-`],[`*`,`/`,`%`]].forEach(function(e,t){e.forEach(function(e){h[e]=t})});function g(e){return n.CallExpression.check(e)?!0:c.check(e)?e.some(g):n.Node.check(e)?t.someField(e,function(e,t){return g(t)}):!1}f.canBeFirstInStatement=function(){var e=this.node;return!n.FunctionExpression.check(e)&&!n.ObjectExpression.check(e)},f.firstInStatement=function(){return _(this)};function _(e){for(var t,r;e.parent;e=e.parent){if(t=e.node,r=e.parent.node,n.BlockStatement.check(r)&&e.parent.name===`body`&&e.name===0){if(r.body[0]!==t)throw Error(`Nodes must be equal`);return!0}if(n.ExpressionStatement.check(r)&&e.name===`expression`){if(r.expression!==t)throw Error(`Nodes must be equal`);return!0}if(n.SequenceExpression.check(r)&&e.parent.name===`expressions`&&e.name===0){if(r.expressions[0]!==t)throw Error(`Nodes must be equal`);continue}if(n.CallExpression.check(r)&&e.name===`callee`){if(r.callee!==t)throw Error(`Nodes must be equal`);continue}if(n.MemberExpression.check(r)&&e.name===`object`){if(r.object!==t)throw Error(`Nodes must be equal`);continue}if(n.ConditionalExpression.check(r)&&e.name===`test`){if(r.test!==t)throw Error(`Nodes must be equal`);continue}if(p(r)&&e.name===`left`){if(r.left!==t)throw Error(`Nodes must be equal`);continue}if(n.UnaryExpression.check(r)&&!r.prefix&&e.name===`argument`){if(r.argument!==t)throw Error(`Nodes must be equal`);continue}return!1}return!0}function v(e){if(n.VariableDeclaration.check(e.node)){var t=e.get(`declarations`).value;if(!t||t.length===0)return e.prune()}else if(n.ExpressionStatement.check(e.node)){if(!e.get(`expression`).value)return e.prune()}else n.IfStatement.check(e.node)&&y(e);return e}function y(e){var t=e.get(`test`).value,r=e.get(`alternate`).value,i=e.get(`consequent`).value;if(!i&&!r){var a=o.expressionStatement(t);e.replace(a)}else if(!i&&r){var s=o.unaryExpression(`!`,t,!0);n.UnaryExpression.check(t)&&t.operator===`!`&&(s=t.argument),e.get(`test`).replace(s),e.get(`consequent`).replace(r),e.get(`alternate`).replace()}}return d}exports.default=o,t.exports=exports.default}),Oe=e.__commonJSMin((exports,t)=>{Object.defineProperty(exports,`__esModule`,{value:!0});var n=U(),r=n.__importDefault(W()),i=n.__importDefault(De()),a=Object.prototype.hasOwnProperty;function o(e){var t=e.use(r.default),n=e.use(i.default),o=t.builtInTypes.array,s=t.builtInTypes.object,c=t.builtInTypes.function,l,u=function e(){if(!(this instanceof e))throw Error(`PathVisitor constructor cannot be invoked without 'new'`);this._reusableContextStack=[],this._methodNameTable=d(this),this._shouldVisitComments=a.call(this._methodNameTable,`Block`)||a.call(this._methodNameTable,`Line`),this.Context=h(this),this._visiting=!1,this._changeReported=!1};function d(e){var n=Object.create(null);for(var r in e)/^visit[A-Z]/.test(r)&&(n[r.slice(5)]=!0);for(var i=t.computeSupertypeLookupTable(n),a=Object.create(null),o=Object.keys(i),s=o.length,l=0;l<s;++l){var u=o[l];r=`visit`+i[u],c.check(e[r])&&(a[u]=r)}return a}u.fromMethodsObject=function(e){if(e instanceof u)return e;if(!s.check(e))return new u;var t=function e(){if(!(this instanceof e))throw Error(`Visitor constructor cannot be invoked without 'new'`);u.call(this)},n=t.prototype=Object.create(p);return n.constructor=t,f(n,e),f(t,u),c.assert(t.fromMethodsObject),c.assert(t.visit),new t};function f(e,t){for(var n in t)a.call(t,n)&&(e[n]=t[n]);return e}u.visit=function(e,t){return u.fromMethodsObject(t).visit(e)};var p=u.prototype;p.visit=function(){if(this._visiting)throw 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 e=arguments.length,t=Array(e),r=0;r<e;++r)t[r]=arguments[r];t[0]instanceof n||(t[0]=new n({root:t[0]}).get(`root`)),this.reset.apply(this,t);var i;try{var a=this.visitWithoutReset(t[0]);i=!0}finally{if(this._visiting=!1,!i&&this._abortRequested)return t[0].value}return a},p.AbortRequest=function(){},p.abort=function(){var e=this;e._abortRequested=!0;var t=new e.AbortRequest;throw t.cancel=function(){e._abortRequested=!1},t},p.reset=function(e){},p.visitWithoutReset=function(e){if(this instanceof this.Context)return this.visitor.visitWithoutReset(e);if(!(e instanceof n))throw Error(``);var t=e.value,r=t&&typeof t==`object`&&typeof t.type==`string`&&this._methodNameTable[t.type];if(r){var i=this.acquireContext(e);try{return i.invokeVisitorMethod(r)}finally{this.releaseContext(i)}}else return m(e,this)};function m(e,r){if(!(e instanceof n)||!(r instanceof u))throw Error(``);var i=e.value;if(o.check(i))e.each(r.visitWithoutReset,r);else if(s.check(i)){var c=t.getFieldNames(i);r._shouldVisitComments&&i.comments&&c.indexOf(`comments`)<0&&c.push(`comments`);for(var l=c.length,d=[],f=0;f<l;++f){var p=c[f];a.call(i,p)||(i[p]=t.getFieldValue(i,p)),d.push(e.get(p))}for(var f=0;f<l;++f)r.visitWithoutReset(d[f])}return e.value}p.acquireContext=function(e){return this._reusableContextStack.length===0?new this.Context(e):this._reusableContextStack.pop().reset(e)},p.releaseContext=function(e){if(!(e instanceof this.Context))throw Error(``);this._reusableContextStack.push(e),e.currentPath=null},p.reportChanged=function(){this._changeReported=!0},p.wasChangeReported=function(){return this._changeReported};function h(e){function t(r){if(!(this instanceof t)||!(this instanceof u)||!(r instanceof n))throw Error(``);Object.defineProperty(this,`visitor`,{value:e,writable:!1,enumerable:!0,configurable:!1}),this.currentPath=r,this.needToCallTraverse=!0,Object.seal(this)}if(!(e instanceof u))throw Error(``);var r=t.prototype=Object.create(e);return r.constructor=t,f(r,g),t}var g=Object.create(null);return g.reset=function(e){if(!(this instanceof this.Context)||!(e instanceof n))throw Error(``);return this.currentPath=e,this.needToCallTraverse=!0,this},g.invokeVisitorMethod=function(e){if(!(this instanceof this.Context)||!(this.currentPath instanceof n))throw Error(``);var t=this.visitor[e].call(this,this.currentPath);if(t===!1?this.needToCallTraverse=!1:t!==l&&(this.currentPath=this.currentPath.replace(t)[0],this.needToCallTraverse&&this.traverse(this.currentPath)),this.needToCallTraverse!==!1)throw Error(`Must either call this.traverse or return false in `+e);var r=this.currentPath;return r&&r.value},g.traverse=function(e,t){if(!(this instanceof this.Context)||!(e instanceof n)||!(this.currentPath instanceof n))throw Error(``);return this.needToCallTraverse=!1,m(e,u.fromMethodsObject(t||this.visitor))},g.visit=function(e,t){if(!(this instanceof this.Context)||!(e instanceof n)||!(this.currentPath instanceof n))throw Error(``);return this.needToCallTraverse=!1,u.fromMethodsObject(t||this.visitor).visitWithoutReset(e)},g.reportChanged=function(){this.visitor.reportChanged()},g.abort=function(){this.needToCallTraverse=!1,this.visitor.abort()},u}exports.default=o,t.exports=exports.default}),K=e.__commonJSMin((exports,t)=>{Object.defineProperty(exports,`__esModule`,{value:!0});var n=U(),r=n.__importDefault(W());function i(e){var t=e.use(r.default),n=t.getFieldNames,i=t.getFieldValue,a=t.builtInTypes.array,o=t.builtInTypes.object,s=t.builtInTypes.Date,c=t.builtInTypes.RegExp,l=Object.prototype.hasOwnProperty;function u(e,t,n){return a.check(n)?n.length=0:n=null,f(e,t,n)}u.assert=function(e,t){var n=[];if(!u(e,t,n))if(n.length===0){if(e!==t)throw Error(`Nodes must be equal`)}else throw Error(`Nodes differ in the following path: `+n.map(d).join(``))};function d(e){return/[_$a-z][_$a-z0-9]*/i.test(e)?`.`+e:`[`+JSON.stringify(e)+`]`}function f(e,t,n){return e===t?!0:a.check(e)?p(e,t,n):o.check(e)?m(e,t,n):s.check(e)?s.check(t)&&+e==+t:c.check(e)?c.check(t)&&e.source===t.source&&e.global===t.global&&e.multiline===t.multiline&&e.ignoreCase===t.ignoreCase:e==t}function p(e,t,n){a.assert(e);var r=e.length;if(!a.check(t)||t.length!==r)return n&&n.push(`length`),!1;for(var i=0;i<r;++i){if(n&&n.push(i),i in e!=i in t||!f(e[i],t[i],n))return!1;if(n){var o=n.pop();if(o!==i)throw Error(``+o)}}return!0}function m(e,t,r){if(o.assert(e),!o.check(t))return!1;if(e.type!==t.type)return r&&r.push(`type`),!1;var a=n(e),s=a.length,c=n(t),u=c.length;if(s===u){for(var d=0;d<s;++d){var p=a[d],m=i(e,p),h=i(t,p);if(r&&r.push(p),!f(m,h,r))return!1;if(r){var g=r.pop();if(g!==p)throw Error(``+g)}}return!0}if(!r)return!1;var _=Object.create(null);for(d=0;d<s;++d)_[a[d]]=!0;for(d=0;d<u;++d){if(p=c[d],!l.call(_,p))return r.push(p),!1;delete _[p]}for(p in _){r.push(p);break}return!1}return u}exports.default=i,t.exports=exports.default}),ke=e.__commonJSMin((exports,t)=>{Object.defineProperty(exports,`__esModule`,{value:!0});var n=U(),r=n.__importDefault(W()),i=n.__importDefault(Oe()),a=n.__importDefault(K()),o=n.__importDefault(Ee()),s=n.__importDefault(De());function c(e){var t=l(),n=t.use(r.default);e.forEach(t.use),n.finalize();var c=t.use(i.default);return{Type:n.Type,builtInTypes:n.builtInTypes,namedTypes:n.namedTypes,builders:n.builders,defineMethod:n.defineMethod,getFieldNames:n.getFieldNames,getFieldValue:n.getFieldValue,eachField:n.eachField,someField:n.someField,getSupertypeNames:n.getSupertypeNames,getBuilderName:n.getBuilderName,astNodesAreEquivalent:t.use(a.default),finalize:n.finalize,Path:t.use(o.default),NodePath:t.use(s.default),PathVisitor:c,use:t.use,visit:c.visit}}exports.default=c;function l(){var e=[],t=[];function n(n){var i=e.indexOf(n);return i===-1&&(i=e.length,e.push(n),t[i]=n(r)),t[i]}var r={use:n};return r}t.exports=exports.default}),q=e.__commonJSMin((exports,t)=>{Object.defineProperty(exports,`__esModule`,{value:!0});var n=U(),r=n.__importDefault(W());function i(e){var t=e.use(r.default),n=t.Type,i=t.builtInTypes,a=i.number;function o(e){return n.from(function(t){return a.check(t)&&t>=e},a+` >= `+e)}var s={null:function(){return null},emptyArray:function(){return[]},false:function(){return!1},true:function(){return!0},undefined:function(){},"use strict":function(){return`use strict`}},c=n.or(i.string,i.number,i.boolean,i.null,i.undefined),l=n.from(function(e){if(e===null)return!0;var t=typeof e;return!(t===`object`||t===`function`)},c.toString());return{geq:o,defaults:s,isPrimitive:l}}exports.default=i,t.exports=exports.default}),J=e.__commonJSMin((exports,t)=>{Object.defineProperty(exports,`__esModule`,{value:!0});var n=U(),r=n.__importDefault(W()),i=n.__importDefault(q());function a(e){var t=e.use(r.default),n=t.Type,a=n.def,o=n.or,s=e.use(i.default),c=s.defaults,l=s.geq;a(`Printable`).field(`loc`,o(a(`SourceLocation`),null),c.null,!0),a(`Node`).bases(`Printable`).field(`type`,String).field(`comments`,o([a(`Comment`)],null),c.null,!0),a(`SourceLocation`).field(`start`,a(`Position`)).field(`end`,a(`Position`)).field(`source`,o(String,null),c.null),a(`Position`).field(`line`,l(1)).field(`column`,l(0)),a(`File`).bases(`Node`).build(`program`,`name`).field(`program`,a(`Program`)).field(`name`,o(String,null),c.null),a(`Program`).bases(`Node`).build(`body`).field(`body`,[a(`Statement`)]),a(`Function`).bases(`Node`).field(`id`,o(a(`Identifier`),null),c.null).field(`params`,[a(`Pattern`)]).field(`body`,a(`BlockStatement`)).field(`generator`,Boolean,c.false).field(`async`,Boolean,c.false),a(`Statement`).bases(`Node`),a(`EmptyStatement`).bases(`Statement`).build(),a(`BlockStatement`).bases(`Statement`).build(`body`).field(`body`,[a(`Statement`)]),a(`ExpressionStatement`).bases(`Statement`).build(`expression`).field(`expression`,a(`Expression`)),a(`IfStatement`).bases(`Statement`).build(`test`,`consequent`,`alternate`).field(`test`,a(`Expression`)).field(`consequent`,a(`Statement`)).field(`alternate`,o(a(`Statement`),null),c.null),a(`LabeledStatement`).bases(`Statement`).build(`label`,`body`).field(`label`,a(`Identifier`)).field(`body`,a(`Statement`)),a(`BreakStatement`).bases(`Statement`).build(`label`).field(`label`,o(a(`Identifier`),null),c.null),a(`ContinueStatement`).bases(`Statement`).build(`label`).field(`label`,o(a(`Identifier`),null),c.null),a(`WithStatement`).bases(`Statement`).build(`object`,`body`).field(`object`,a(`Expression`)).field(`body`,a(`Statement`)),a(`SwitchStatement`).bases(`Statement`).build(`discriminant`,`cases`,`lexical`).field(`discriminant`,a(`Expression`)).field(`cases`,[a(`SwitchCase`)]).field(`lexical`,Boolean,c.false),a(`ReturnStatement`).bases(`Statement`).build(`argument`).field(`argument`,o(a(`Expression`),null)),a(`ThrowStatement`).bases(`Statement`).build(`argument`).field(`argument`,a(`Expression`)),a(`TryStatement`).bases(`Statement`).build(`block`,`handler`,`finalizer`).field(`block`,a(`BlockStatement`)).field(`handler`,o(a(`CatchClause`),null),function(){return this.handlers&&this.handlers[0]||null}).field(`handlers`,[a(`CatchClause`)],function(){return this.handler?[this.handler]:[]},!0).field(`guardedHandlers`,[a(`CatchClause`)],c.emptyArray).field(`finalizer`,o(a(`BlockStatement`),null),c.null),a(`CatchClause`).bases(`Node`).build(`param`,`guard`,`body`).field(`param`,o(a(`Pattern`),null),c.null).field(`guard`,o(a(`Expression`),null),c.null).field(`body`,a(`BlockStatement`)),a(`WhileStatement`).bases(`Statement`).build(`test`,`body`).field(`test`,a(`Expression`)).field(`body`,a(`Statement`)),a(`DoWhileStatement`).bases(`Statement`).build(`body`,`test`).field(`body`,a(`Statement`)).field(`test`,a(`Expression`)),a(`ForStatement`).bases(`Statement`).build(`init`,`test`,`update`,`body`).field(`init`,o(a(`VariableDeclaration`),a(`Expression`),null)).field(`test`,o(a(`Expression`),null)).field(`update`,o(a(`Expression`),null)).field(`body`,a(`Statement`)),a(`ForInStatement`).bases(`Statement`).build(`left`,`right`,`body`).field(`left`,o(a(`VariableDeclaration`),a(`Expression`))).field(`right`,a(`Expression`)).field(`body`,a(`Statement`)),a(`DebuggerStatement`).bases(`Statement`).build(),a(`Declaration`).bases(`Statement`),a(`FunctionDeclaration`).bases(`Function`,`Declaration`).build(`id`,`params`,`body`).field(`id`,a(`Identifier`)),a(`FunctionExpression`).bases(`Function`,`Expression`).build(`id`,`params`,`body`),a(`VariableDeclaration`).bases(`Declaration`).build(`kind`,`declarations`).field(`kind`,o(`var`,`let`,`const`)).field(`declarations`,[a(`VariableDeclarator`)]),a(`VariableDeclarator`).bases(`Node`).build(`id`,`init`).field(`id`,a(`Pattern`)).field(`init`,o(a(`Expression`),null),c.null),a(`Expression`).bases(`Node`),a(`ThisExpression`).bases(`Expression`).build(),a(`ArrayExpression`).bases(`Expression`).build(`elements`).field(`elements`,[o(a(`Expression`),null)]),a(`ObjectExpression`).bases(`Expression`).build(`properties`).field(`properties`,[a(`Property`)]),a(`Property`).bases(`Node`).build(`kind`,`key`,`value`).field(`kind`,o(`init`,`get`,`set`)).field(`key`,o(a(`Literal`),a(`Identifier`))).field(`value`,a(`Expression`)),a(`SequenceExpression`).bases(`Expression`).build(`expressions`).field(`expressions`,[a(`Expression`)]);var u=o(`-`,`+`,`!`,`~`,`typeof`,`void`,`delete`);a(`UnaryExpression`).bases(`Expression`).build(`operator`,`argument`,`prefix`).field(`operator`,u).field(`argument`,a(`Expression`)).field(`prefix`,Boolean,c.true);var d=o(`==`,`!=`,`===`,`!==`,`<`,`<=`,`>`,`>=`,`<<`,`>>`,`>>>`,`+`,`-`,`*`,`/`,`%`,`**`,`&`,`|`,`^`,`in`,`instanceof`);a(`BinaryExpression`).bases(`Expression`).build(`operator`,`left`,`right`).field(`operator`,d).field(`left`,a(`Expression`)).field(`right`,a(`Expression`));var f=o(`=`,`+=`,`-=`,`*=`,`/=`,`%=`,`<<=`,`>>=`,`>>>=`,`|=`,`^=`,`&=`);a(`AssignmentExpression`).bases(`Expression`).build(`operator`,`left`,`right`).field(`operator`,f).field(`left`,o(a(`Pattern`),a(`MemberExpression`))).field(`right`,a(`Expression`));var p=o(`++`,`--`);a(`UpdateExpression`).bases(`Expression`).build(`operator`,`argument`,`prefix`).field(`operator`,p).field(`argument`,a(`Expression`)).field(`prefix`,Boolean);var m=o(`||`,`&&`);a(`LogicalExpression`).bases(`Expression`).build(`operator`,`left`,`right`).field(`operator`,m).field(`left`,a(`Expression`)).field(`right`,a(`Expression`)),a(`ConditionalExpression`).bases(`Expression`).build(`test`,`consequent`,`alternate`).field(`test`,a(`Expression`)).field(`consequent`,a(`Expression`)).field(`alternate`,a(`Expression`)),a(`NewExpression`).bases(`Expression`).build(`callee`,`arguments`).field(`callee`,a(`Expression`)).field(`arguments`,[a(`Expression`)]),a(`CallExpression`).bases(`Expression`).build(`callee`,`arguments`).field(`callee`,a(`Expression`)).field(`arguments`,[a(`Expression`)]),a(`MemberExpression`).bases(`Expression`).build(`object`,`property`,`computed`).field(`object`,a(`Expression`)).field(`property`,o(a(`Identifier`),a(`Expression`))).field(`computed`,Boolean,function(){var e=this.property.type;return e===`Literal`||e===`MemberExpression`||e===`BinaryExpression`}),a(`Pattern`).bases(`Node`),a(`SwitchCase`).bases(`Node`).build(`test`,`consequent`).field(`test`,o(a(`Expression`),null)).field(`consequent`,[a(`Statement`)]),a(`Identifier`).bases(`Expression`,`Pattern`).build(`name`).field(`name`,String).field(`optional`,Boolean,c.false),a(`Literal`).bases(`Expression`).build(`value`).field(`value`,o(String,Boolean,null,Number,RegExp)).field(`regex`,o({pattern:String,flags:String},null),function(){if(this.value instanceof RegExp){var e=``;return this.value.ignoreCase&&(e+=`i`),this.value.multiline&&(e+=`m`),this.value.global&&(e+=`g`),{pattern:this.value.source,flags:e}}return null}),a(`Comment`).bases(`Printable`).field(`value`,String).field(`leading`,Boolean,c.true).field(`trailing`,Boolean,c.false)}exports.default=a,t.exports=exports.default}),Y=e.__commonJSMin((exports,t)=>{Object.defineProperty(exports,`__esModule`,{value:!0});var n=U(),r=n.__importDefault(J()),i=n.__importDefault(W()),a=n.__importDefault(q());function o(e){e.use(r.default);var t=e.use(i.default),n=t.Type.def,o=t.Type.or,s=e.use(a.default).defaults;n(`Function`).field(`generator`,Boolean,s.false).field(`expression`,Boolean,s.false).field(`defaults`,[o(n(`Expression`),null)],s.emptyArray).field(`rest`,o(n(`Identifier`),null),s.null),n(`RestElement`).bases(`Pattern`).build(`argument`).field(`argument`,n(`Pattern`)).field(`typeAnnotation`,o(n(`TypeAnnotation`),n(`TSTypeAnnotation`),null),s.null),n(`SpreadElementPattern`).bases(`Pattern`).build(`argument`).field(`argument`,n(`Pattern`)),n(`FunctionDeclaration`).build(`id`,`params`,`body`,`generator`,`expression`),n(`FunctionExpression`).build(`id`,`params`,`body`,`generator`,`expression`),n(`ArrowFunctionExpression`).bases(`Function`,`Expression`).build(`params`,`body`,`expression`).field(`id`,null,s.null).field(`body`,o(n(`BlockStatement`),n(`Expression`))).field(`generator`,!1,s.false),n(`ForOfStatement`).bases(`Statement`).build(`left`,`right`,`body`).field(`left`,o(n(`VariableDeclaration`),n(`Pattern`))).field(`right`,n(`Expression`)).field(`body`,n(`Statement`)),n(`YieldExpression`).bases(`Expression`).build(`argument`,`delegate`).field(`argument`,o(n(`Expression`),null)).field(`delegate`,Boolean,s.false),n(`GeneratorExpression`).bases(`Expression`).build(`body`,`blocks`,`filter`).field(`body`,n(`Expression`)).field(`blocks`,[n(`ComprehensionBlock`)]).field(`filter`,o(n(`Expression`),null)),n(`ComprehensionExpression`).bases(`Expression`).build(`body`,`blocks`,`filter`).field(`body`,n(`Expression`)).field(`blocks`,[n(`ComprehensionBlock`)]).field(`filter`,o(n(`Expression`),null)),n(`ComprehensionBlock`).bases(`Node`).build(`left`,`right`,`each`).field(`left`,n(`Pattern`)).field(`right`,n(`Expression`)).field(`each`,Boolean),n(`Property`).field(`key`,o(n(`Literal`),n(`Identifier`),n(`Expression`))).field(`value`,o(n(`Expression`),n(`Pattern`))).field(`method`,Boolean,s.false).field(`shorthand`,Boolean,s.false).field(`computed`,Boolean,s.false),n(`ObjectProperty`).field(`shorthand`,Boolean,s.false),n(`PropertyPattern`).bases(`Pattern`).build(`key`,`pattern`).field(`key`,o(n(`Literal`),n(`Identifier`),n(`Expression`))).field(`pattern`,n(`Pattern`)).field(`computed`,Boolean,s.false),n(`ObjectPattern`).bases(`Pattern`).build(`properties`).field(`properties`,[o(n(`PropertyPattern`),n(`Property`))]),n(`ArrayPattern`).bases(`Pattern`).build(`elements`).field(`elements`,[o(n(`Pattern`),null)]),n(`MethodDefinition`).bases(`Declaration`).build(`kind`,`key`,`value`,`static`).field(`kind`,o(`constructor`,`method`,`get`,`set`)).field(`key`,n(`Expression`)).field(`value`,n(`Function`)).field(`computed`,Boolean,s.false).field(`static`,Boolean,s.false),n(`SpreadElement`).bases(`Node`).build(`argument`).field(`argument`,n(`Expression`)),n(`ArrayExpression`).field(`elements`,[o(n(`Expression`),n(`SpreadElement`),n(`RestElement`),null)]),n(`NewExpression`).field(`arguments`,[o(n(`Expression`),n(`SpreadElement`))]),n(`CallExpression`).field(`arguments`,[o(n(`Expression`),n(`SpreadElement`))]),n(`AssignmentPattern`).bases(`Pattern`).build(`left`,`right`).field(`left`,n(`Pattern`)).field(`right`,n(`Expression`));var c=o(n(`MethodDefinition`),n(`VariableDeclarator`),n(`ClassPropertyDefinition`),n(`ClassProperty`));n(`ClassProperty`).bases(`Declaration`).build(`key`).field(`key`,o(n(`Literal`),n(`Identifier`),n(`Expression`))).field(`computed`,Boolean,s.false),n(`ClassPropertyDefinition`).bases(`Declaration`).build(`definition`).field(`definition`,c),n(`ClassBody`).bases(`Declaration`).build(`body`).field(`body`,[c]),n(`ClassDeclaration`).bases(`Declaration`).build(`id`,`body`,`superClass`).field(`id`,o(n(`Identifier`),null)).field(`body`,n(`ClassBody`)).field(`superClass`,o(n(`Expression`),null),s.null),n(`ClassExpression`).bases(`Expression`).build(`id`,`body`,`superClass`).field(`id`,o(n(`Identifier`),null),s.null).field(`body`,n(`ClassBody`)).field(`superClass`,o(n(`Expression`),null),s.null),n(`Specifier`).bases(`Node`),n(`ModuleSpecifier`).bases(`Specifier`).field(`local`,o(n(`Identifier`),null),s.null).field(`id`,o(n(`Identifier`),null),s.null).field(`name`,o(n(`Identifier`),null),s.null),n(`ImportSpecifier`).bases(`ModuleSpecifier`).build(`id`,`name`),n(`ImportNamespaceSpecifier`).bases(`ModuleSpecifier`).build(`id`),n(`ImportDefaultSpecifier`).bases(`ModuleSpecifier`).build(`id`),n(`ImportDeclaration`).bases(`Declaration`).build(`specifiers`,`source`,`importKind`).field(`specifiers`,[o(n(`ImportSpecifier`),n(`ImportNamespaceSpecifier`),n(`ImportDefaultSpecifier`))],s.emptyArray).field(`source`,n(`Literal`)).field(`importKind`,o(`value`,`type`),function(){return`value`}),n(`TaggedTemplateExpression`).bases(`Expression`).build(`tag`,`quasi`).field(`tag`,n(`Expression`)).field(`quasi`,n(`TemplateLiteral`)),n(`TemplateLiteral`).bases(`Expression`).build(`quasis`,`expressions`).field(`quasis`,[n(`TemplateElement`)]).field(`expressions`,[n(`Expression`)]),n(`TemplateElement`).bases(`Node`).build(`value`,`tail`).field(`value`,{cooked:String,raw:String}).field(`tail`,Boolean)}exports.default=o,t.exports=exports.default}),X=e.__commonJSMin((exports,t)=>{Object.defineProperty(exports,`__esModule`,{value:!0});var n=U(),r=n.__importDefault(Y()),i=n.__importDefault(W()),a=n.__importDefault(q());function o(e){e.use(r.default);var t=e.use(i.default),n=t.Type.def,o=t.Type.or,s=e.use(a.default).defaults;n(`Function`).field(`async`,Boolean,s.false),n(`SpreadProperty`).bases(`Node`).build(`argument`).field(`argument`,n(`Expression`)),n(`ObjectExpression`).field(`properties`,[o(n(`Property`),n(`SpreadProperty`),n(`SpreadElement`))]),n(`SpreadPropertyPattern`).bases(`Pattern`).build(`argument`).field(`argument`,n(`Pattern`)),n(`ObjectPattern`).field(`properties`,[o(n(`Property`),n(`PropertyPattern`),n(`SpreadPropertyPattern`))]),n(`AwaitExpression`).bases(`Expression`).build(`argument`,`all`).field(`argument`,o(n(`Expression`),null)).field(`all`,Boolean,s.false)}exports.default=o,t.exports=exports.default}),Ae=e.__commonJSMin((exports,t)=>{Object.defineProperty(exports,`__esModule`,{value:!0});var n=U(),r=n.__importDefault(X()),i=n.__importDefault(W());function a(e){e.use(r.default);var t=e.use(i.default),n=t.Type.def;n(`ImportExpression`).bases(`Expression`).build(`source`).field(`source`,n(`Expression`))}exports.default=a,t.exports=exports.default}),je=e.__commonJSMin((exports,t)=>{Object.defineProperty(exports,`__esModule`,{value:!0});var n=U(),r=n.__importDefault(X()),i=n.__importDefault(W()),a=n.__importDefault(q());function o(e){e.use(r.default);var t=e.use(i.default),n=t.Type.def,o=t.Type.or,s=e.use(a.default).defaults;n(`JSXAttribute`).bases(`Node`).build(`name`,`value`).field(`name`,o(n(`JSXIdentifier`),n(`JSXNamespacedName`))).field(`value`,o(n(`Literal`),n(`JSXExpressionContainer`),null),s.null),n(`JSXIdentifier`).bases(`Identifier`).build(`name`).field(`name`,String),n(`JSXNamespacedName`).bases(`Node`).build(`namespace`,`name`).field(`namespace`,n(`JSXIdentifier`)).field(`name`,n(`JSXIdentifier`)),n(`JSXMemberExpression`).bases(`MemberExpression`).build(`object`,`property`).field(`object`,o(n(`JSXIdentifier`),n(`JSXMemberExpression`))).field(`property`,n(`JSXIdentifier`)).field(`computed`,Boolean,s.false);var c=o(n(`JSXIdentifier`),n(`JSXNamespacedName`),n(`JSXMemberExpression`));n(`JSXSpreadAttribute`).bases(`Node`).build(`argument`).field(`argument`,n(`Expression`));var l=[o(n(`JSXAttribute`),n(`JSXSpreadAttribute`))];n(`JSXExpressionContainer`).bases(`Expression`).build(`expression`).field(`expression`,n(`Expression`)),n(`JSXElement`).bases(`Expression`).build(`openingElement`,`closingElement`,`children`).field(`openingElement`,n(`JSXOpeningElement`)).field(`closingElement`,o(n(`JSXClosingElement`),null),s.null).field(`children`,[o(n(`JSXElement`),n(`JSXExpressionContainer`),n(`JSXFragment`),n(`JSXText`),n(`Literal`))],s.emptyArray).field(`name`,c,function(){return this.openingElement.name},!0).field(`selfClosing`,Boolean,function(){return this.openingElement.selfClosing},!0).field(`attributes`,l,function(){return this.openingElement.attributes},!0),n(`JSXOpeningElement`).bases(`Node`).build(`name`,`attributes`,`selfClosing`).field(`name`,c).field(`attributes`,l,s.emptyArray).field(`selfClosing`,Boolean,s.false),n(`JSXClosingElement`).bases(`Node`).build(`name`).field(`name`,c),n(`JSXFragment`).bases(`Expression`).build(`openingElement`,`closingElement`,`children`).field(`openingElement`,n(`JSXOpeningFragment`)).field(`closingElement`,n(`JSXClosingFragment`)).field(`children`,[o(n(`JSXElement`),n(`JSXExpressionContainer`),n(`JSXFragment`),n(`JSXText`),n(`Literal`))],s.emptyArray),n(`JSXOpeningFragment`).bases(`Node`).build(),n(`JSXClosingFragment`).bases(`Node`).build(),n(`JSXText`).bases(`Literal`).build(`value`).field(`value`,String),n(`JSXEmptyExpression`).bases(`Expression`).build(),n(`JSXSpreadChild`).bases(`Expression`).build(`expression`).field(`expression`,n(`Expression`))}exports.default=o,t.exports=exports.default}),Me=e.__commonJSMin((exports,t)=>{Object.defineProperty(exports,`__esModule`,{value:!0});var n=U(),r=n.__importDefault(W()),i=n.__importDefault(q());function a(e){var t=e.use(r.default),n=t.Type.def,a=t.Type.or,o=e.use(i.default).defaults,s=a(n(`TypeAnnotation`),n(`TSTypeAnnotation`),null),c=a(n(`TypeParameterDeclaration`),n(`TSTypeParameterDeclaration`),null);n(`Identifier`).field(`typeAnnotation`,s,o.null),n(`ObjectPattern`).field(`typeAnnotation`,s,o.null),n(`Function`).field(`returnType`,s,o.null).field(`typeParameters`,c,o.null),n(`ClassProperty`).build(`key`,`value`,`typeAnnotation`,`static`).field(`value`,a(n(`Expression`),null)).field(`static`,Boolean,o.false).field(`typeAnnotation`,s,o.null),[`ClassDeclaration`,`ClassExpression`].forEach(function(e){n(e).field(`typeParameters`,c,o.null).field(`superTypeParameters`,a(n(`TypeParameterInstantiation`),n(`TSTypeParameterInstantiation`),null),o.null).field(`implements`,a([n(`ClassImplements`)],[n(`TSExpressionWithTypeArguments`)]),o.emptyArray)})}exports.default=a,t.exports=exports.default}),Ne=e.__commonJSMin((exports,t)=>{Object.defineProperty(exports,`__esModule`,{value:!0});var n=U(),r=n.__importDefault(X()),i=n.__importDefault(Me()),a=n.__importDefault(W()),o=n.__importDefault(q());function s(e){e.use(r.default),e.use(i.default);var t=e.use(a.default),n=t.Type.def,s=t.Type.or,c=e.use(o.default).defaults;n(`Flow`).bases(`Node`),n(`FlowType`).bases(`Flow`),n(`AnyTypeAnnotation`).bases(`FlowType`).build(),n(`EmptyTypeAnnotation`).bases(`FlowType`).build(),n(`MixedTypeAnnotation`).bases(`FlowType`).build(),n(`VoidTypeAnnotation`).bases(`FlowType`).build(),n(`NumberTypeAnnotation`).bases(`FlowType`).build(),n(`NumberLiteralTypeAnnotation`).bases(`FlowType`).build(`value`,`raw`).field(`value`,Number).field(`raw`,String),n(`NumericLiteralTypeAnnotation`).bases(`FlowType`).build(`value`,`raw`).field(`value`,Number).field(`raw`,String),n(`StringTypeAnnotation`).bases(`FlowType`).build(),n(`StringLiteralTypeAnnotation`).bases(`FlowType`).build(`value`,`raw`).field(`value`,String).field(`raw`,String),n(`BooleanTypeAnnotation`).bases(`FlowType`).build(),n(`BooleanLiteralTypeAnnotation`).bases(`FlowType`).build(`value`,`raw`).field(`value`,Boolean).field(`raw`,String),n(`TypeAnnotation`).bases(`Node`).build(`typeAnnotation`).field(`typeAnnotation`,n(`FlowType`)),n(`NullableTypeAnnotation`).bases(`FlowType`).build(`typeAnnotation`).field(`typeAnnotation`,n(`FlowType`)),n(`NullLiteralTypeAnnotation`).bases(`FlowType`).build(),n(`NullTypeAnnotation`).bases(`FlowType`).build(),n(`ThisTypeAnnotation`).bases(`FlowType`).build(),n(`ExistsTypeAnnotation`).bases(`FlowType`).build(),n(`ExistentialTypeParam`).bases(`FlowType`).build(),n(`FunctionTypeAnnotation`).bases(`FlowType`).build(`params`,`returnType`,`rest`,`typeParameters`).field(`params`,[n(`FunctionTypeParam`)]).field(`returnType`,n(`FlowType`)).field(`rest`,s(n(`FunctionTypeParam`),null)).field(`typeParameters`,s(n(`TypeParameterDeclaration`),null)),n(`FunctionTypeParam`).bases(`Node`).build(`name`,`typeAnnotation`,`optional`).field(`name`,n(`Identifier`)).field(`typeAnnotation`,n(`FlowType`)).field(`optional`,Boolean),n(`ArrayTypeAnnotation`).bases(`FlowType`).build(`elementType`).field(`elementType`,n(`FlowType`)),n(`ObjectTypeAnnotation`).bases(`FlowType`).build(`properties`,`indexers`,`callProperties`).field(`properties`,[s(n(`ObjectTypeProperty`),n(`ObjectTypeSpreadProperty`))]).field(`indexers`,[n(`ObjectTypeIndexer`)],c.emptyArray).field(`callProperties`,[n(`ObjectTypeCallProperty`)],c.emptyArray).field(`inexact`,s(Boolean,void 0),c.undefined).field(`exact`,Boolean,c.false).field(`internalSlots`,[n(`ObjectTypeInternalSlot`)],c.emptyArray),n(`Variance`).bases(`Node`).build(`kind`).field(`kind`,s(`plus`,`minus`));var l=s(n(`Variance`),`plus`,`minus`,null);n(`ObjectTypeProperty`).bases(`Node`).build(`key`,`value`,`optional`).field(`key`,s(n(`Literal`),n(`Identifier`))).field(`value`,n(`FlowType`)).field(`optional`,Boolean).field(`variance`,l,c.null),n(`ObjectTypeIndexer`).bases(`Node`).build(`id`,`key`,`value`).field(`id`,n(`Identifier`)).field(`key`,n(`FlowType`)).field(`value`,n(`FlowType`)).field(`variance`,l,c.null),n(`ObjectTypeCallProperty`).bases(`Node`).build(`value`).field(`value`,n(`FunctionTypeAnnotation`)).field(`static`,Boolean,c.false),n(`QualifiedTypeIdentifier`).bases(`Node`).build(`qualification`,`id`).field(`qualification`,s(n(`Identifier`),n(`QualifiedTypeIdentifier`))).field(`id`,n(`Identifier`)),n(`GenericTypeAnnotation`).bases(`FlowType`).build(`id`,`typeParameters`).field(`id`,s(n(`Identifier`),n(`QualifiedTypeIdentifier`))).field(`typeParameters`,s(n(`TypeParameterInstantiation`),null)),n(`MemberTypeAnnotation`).bases(`FlowType`).build(`object`,`property`).field(`object`,n(`Identifier`)).field(`property`,s(n(`MemberTypeAnnotation`),n(`GenericTypeAnnotation`))),n(`UnionTypeAnnotation`).bases(`FlowType`).build(`types`).field(`types`,[n(`FlowType`)]),n(`IntersectionTypeAnnotation`).bases(`FlowType`).build(`types`).field(`types`,[n(`FlowType`)]),n(`TypeofTypeAnnotation`).bases(`FlowType`).build(`argument`).field(`argument`,n(`FlowType`)),n(`ObjectTypeSpreadProperty`).bases(`Node`).build(`argument`).field(`argument`,n(`FlowType`)),n(`ObjectTypeInternalSlot`).bases(`Node`).build(`id`,`value`,`optional`,`static`,`method`).field(`id`,n(`Identifier`)).field(`value`,n(`FlowType`)).field(`optional`,Boolean).field(`static`,Boolean).field(`method`,Boolean),n(`TypeParameterDeclaration`).bases(`Node`).build(`params`).field(`params`,[n(`TypeParameter`)]),n(`TypeParameterInstantiation`).bases(`Node`).build(`params`).field(`params`,[n(`FlowType`)]),n(`TypeParameter`).bases(`FlowType`).build(`name`,`variance`,`bound`).field(`name`,String).field(`variance`,l,c.null).field(`bound`,s(n(`TypeAnnotation`),null),c.null),n(`ClassProperty`).field(`variance`,l,c.null),n(`ClassImplements`).bases(`Node`).build(`id`).field(`id`,n(`Identifier`)).field(`superClass`,s(n(`Expression`),null),c.null).field(`typeParameters`,s(n(`TypeParameterInstantiation`),null),c.null),n(`InterfaceTypeAnnotation`).bases(`FlowType`).build(`body`,`extends`).field(`body`,n(`ObjectTypeAnnotation`)).field(`extends`,s([n(`InterfaceExtends`)],null),c.null),n(`InterfaceDeclaration`).bases(`Declaration`).build(`id`,`body`,`extends`).field(`id`,n(`Identifier`)).field(`typeParameters`,s(n(`TypeParameterDeclaration`),null),c.null).field(`body`,n(`ObjectTypeAnnotation`)).field(`extends`,[n(`InterfaceExtends`)]),n(`DeclareInterface`).bases(`InterfaceDeclaration`).build(`id`,`body`,`extends`),n(`InterfaceExtends`).bases(`Node`).build(`id`).field(`id`,n(`Identifier`)).field(`typeParameters`,s(n(`TypeParameterInstantiation`),null),c.null),n(`TypeAlias`).bases(`Declaration`).build(`id`,`typeParameters`,`right`).field(`id`,n(`Identifier`)).field(`typeParameters`,s(n(`TypeParameterDeclaration`),null)).field(`right`,n(`FlowType`)),n(`OpaqueType`).bases(`Declaration`).build(`id`,`typeParameters`,`impltype`,`supertype`).field(`id`,n(`Identifier`)).field(`typeParameters`,s(n(`TypeParameterDeclaration`),null)).field(`impltype`,n(`FlowType`)).field(`supertype`,n(`FlowType`)),n(`DeclareTypeAlias`).bases(`TypeAlias`).build(`id`,`typeParameters`,`right`),n(`DeclareOpaqueType`).bases(`TypeAlias`).build(`id`,`typeParameters`,`supertype`),n(`TypeCastExpression`).bases(`Expression`).build(`expression`,`typeAnnotation`).field(`expression`,n(`Expression`)).field(`typeAnnotation`,n(`TypeAnnotation`)),n(`TupleTypeAnnotation`).bases(`FlowType`).build(`types`).field(`types`,[n(`FlowType`)]),n(`DeclareVariable`).bases(`Statement`).build(`id`).field(`id`,n(`Identifier`)),n(`DeclareFunction`).bases(`Statement`).build(`id`).field(`id`,n(`Identifier`)),n(`DeclareClass`).bases(`InterfaceDeclaration`).build(`id`),n(`DeclareModule`).bases(`Statement`).build(`id`,`body`).field(`id`,s(n(`Identifier`),n(`Literal`))).field(`body`,n(`BlockStatement`)),n(`DeclareModuleExports`).bases(`Statement`).build(`typeAnnotation`).field(`typeAnnotation`,n(`TypeAnnotation`)),n(`DeclareExportDeclaration`).bases(`Declaration`).build(`default`,`declaration`,`specifiers`,`source`).field(`default`,Boolean).field(`declaration`,s(n(`DeclareVariable`),n(`DeclareFunction`),n(`DeclareClass`),n(`FlowType`),null)).field(`specifiers`,[s(n(`ExportSpecifier`),n(`ExportBatchSpecifier`))],c.emptyArray).field(`source`,s(n(`Literal`),null),c.null),n(`DeclareExportAllDeclaration`).bases(`Declaration`).build(`source`).field(`source`,s(n(`Literal`),null),c.null),n(`FlowPredicate`).bases(`Flow`),n(`InferredPredicate`).bases(`FlowPredicate`).build(),n(`DeclaredPredicate`).bases(`FlowPredicate`).build(`value`).field(`value`,n(`Expression`)),n(`CallExpression`).field(`typeArguments`,s(null,n(`TypeParameterInstantiation`)),c.null),n(`NewExpression`).field(`typeArguments`,s(null,n(`TypeParameterInstantiation`)),c.null)}exports.default=s,t.exports=exports.default}),Pe=e.__commonJSMin((exports,t)=>{Object.defineProperty(exports,`__esModule`,{value:!0});var n=U(),r=n.__importDefault(X()),i=n.__importDefault(W()),a=n.__importDefault(q());function o(e){e.use(r.default);var t=e.use(i.default),n=e.use(a.default).defaults,o=t.Type.def,s=t.Type.or;o(`VariableDeclaration`).field(`declarations`,[s(o(`VariableDeclarator`),o(`Identifier`))]),o(`Property`).field(`value`,s(o(`Expression`),o(`Pattern`))),o(`ArrayPattern`).field(`elements`,[s(o(`Pattern`),o(`SpreadElement`),null)]),o(`ObjectPattern`).field(`properties`,[s(o(`Property`),o(`PropertyPattern`),o(`SpreadPropertyPattern`),o(`SpreadProperty`))]),o(`ExportSpecifier`).bases(`ModuleSpecifier`).build(`id`,`name`),o(`ExportBatchSpecifier`).bases(`Specifier`).build(),o(`ExportDeclaration`).bases(`Declaration`).build(`default`,`declaration`,`specifiers`,`source`).field(`default`,Boolean).field(`declaration`,s(o(`Declaration`),o(`Expression`),null)).field(`specifiers`,[s(o(`ExportSpecifier`),o(`ExportBatchSpecifier`))],n.emptyArray).field(`source`,s(o(`Literal`),null),n.null),o(`Block`).bases(`Comment`).build(`value`,`leading`,`trailing`),o(`Line`).bases(`Comment`).build(`value`,`leading`,`trailing`)}exports.default=o,t.exports=exports.default}),Fe=e.__commonJSMin((exports,t)=>{Object.defineProperty(exports,`__esModule`,{value:!0});var n=U(),r=n.__importDefault(W()),i=n.__importDefault(q()),a=n.__importDefault(X());function o(e){e.use(a.default);var t=e.use(r.default),n=e.use(i.default).defaults,o=t.Type.def,s=t.Type.or;o(`Noop`).bases(`Statement`).build(),o(`DoExpression`).bases(`Expression`).build(`body`).field(`body`,[o(`Statement`)]),o(`Super`).bases(`Expression`).build(),o(`BindExpression`).bases(`Expression`).build(`object`,`callee`).field(`object`,s(o(`Expression`),null)).field(`callee`,o(`Expression`)),o(`Decorator`).bases(`Node`).build(`expression`).field(`expression`,o(`Expression`)),o(`Property`).field(`decorators`,s([o(`Decorator`)],null),n.null),o(`MethodDefinition`).field(`decorators`,s([o(`Decorator`)],null),n.null),o(`MetaProperty`).bases(`Expression`).build(`meta`,`property`).field(`meta`,o(`Identifier`)).field(`property`,o(`Identifier`)),o(`ParenthesizedExpression`).bases(`Expression`).build(`expression`).field(`expression`,o(`Expression`)),o(`ImportSpecifier`).bases(`ModuleSpecifier`).build(`imported`,`local`).field(`imported`,o(`Identifier`)),o(`ImportDefaultSpecifier`).bases(`ModuleSpecifier`).build(`local`),o(`ImportNamespaceSpecifier`).bases(`ModuleSpecifier`).build(`local`),o(`ExportDefaultDeclaration`).bases(`Declaration`).build(`declaration`).field(`declaration`,s(o(`Declaration`),o(`Expression`))),o(`ExportNamedDeclaration`).bases(`Declaration`).build(`declaration`,`specifiers`,`source`).field(`declaration`,s(o(`Declaration`),null)).field(`specifiers`,[o(`ExportSpecifier`)],n.emptyArray).field(`source`,s(o(`Literal`),null),n.null),o(`ExportSpecifier`).bases(`ModuleSpecifier`).build(`local`,`exported`).field(`exported`,o(`Identifier`)),o(`ExportNamespaceSpecifier`).bases(`Specifier`).build(`exported`).field(`exported`,o(`Identifier`)),o(`ExportDefaultSpecifier`).bases(`Specifier`).build(`exported`).field(`exported`,o(`Identifier`)),o(`ExportAllDeclaration`).bases(`Declaration`).build(`exported`,`source`).field(`exported`,s(o(`Identifier`),null)).field(`source`,o(`Literal`)),o(`CommentBlock`).bases(`Comment`).build(`value`,`leading`,`trailing`),o(`CommentLine`).bases(`Comment`).build(`value`,`leading`,`trailing`),o(`Directive`).bases(`Node`).build(`value`).field(`value`,o(`DirectiveLiteral`)),o(`DirectiveLiteral`).bases(`Node`,`Expression`).build(`value`).field(`value`,String,n[`use strict`]),o(`InterpreterDirective`).bases(`Node`).build(`value`).field(`value`,String),o(`BlockStatement`).bases(`Statement`).build(`body`).field(`body`,[o(`Statement`)]).field(`directives`,[o(`Directive`)],n.emptyArray),o(`Program`).bases(`Node`).build(`body`).field(`body`,[o(`Statement`)]).field(`directives`,[o(`Directive`)],n.emptyArray).field(`interpreter`,s(o(`InterpreterDirective`),null),n.null),o(`StringLiteral`).bases(`Literal`).build(`value`).field(`value`,String),o(`NumericLiteral`).bases(`Literal`).build(`value`).field(`value`,Number).field(`raw`,s(String,null),n.null).field(`extra`,{rawValue:Number,raw:String},function(){return{rawValue:this.value,raw:this.value+``}}),o(`BigIntLiteral`).bases(`Literal`).build(`value`).field(`value`,s(String,Number)).field(`extra`,{rawValue:String,raw:String},function(){return{rawValue:String(this.value),raw:this.value+`n`}}),o(`NullLiteral`).bases(`Literal`).build().field(`value`,null,n.null),o(`BooleanLiteral`).bases(`Literal`).build(`value`).field(`value`,Boolean),o(`RegExpLiteral`).bases(`Literal`).build(`pattern`,`flags`).field(`pattern`,String).field(`flags`,String).field(`value`,RegExp,function(){return new RegExp(this.pattern,this.flags)});var c=s(o(`Property`),o(`ObjectMethod`),o(`ObjectProperty`),o(`SpreadProperty`),o(`SpreadElement`));o(`ObjectExpression`).bases(`Expression`).build(`properties`).field(`properties`,[c]),o(`ObjectMethod`).bases(`Node`,`Function`).build(`kind`,`key`,`params`,`body`,`computed`).field(`kind`,s(`method`,`get`,`set`)).field(`key`,s(o(`Literal`),o(`Identifier`),o(`Expression`))).field(`params`,[o(`Pattern`)]).field(`body`,o(`BlockStatement`)).field(`computed`,Boolean,n.false).field(`generator`,Boolean,n.false).field(`async`,Boolean,n.false).field(`accessibility`,s(o(`Literal`),null),n.null).field(`decorators`,s([o(`Decorator`)],null),n.null),o(`ObjectProperty`).bases(`Node`).build(`key`,`value`).field(`key`,s(o(`Literal`),o(`Identifier`),o(`Expression`))).field(`value`,s(o(`Expression`),o(`Pattern`))).field(`accessibility`,s(o(`Literal`),null),n.null).field(`computed`,Boolean,n.false);var l=s(o(`MethodDefinition`),o(`VariableDeclarator`),o(`ClassPropertyDefinition`),o(`ClassProperty`),o(`ClassPrivateProperty`),o(`ClassMethod`),o(`ClassPrivateMethod`));o(`ClassBody`).bases(`Declaration`).build(`body`).field(`body`,[l]),o(`ClassMethod`).bases(`Declaration`,`Function`).build(`kind`,`key`,`params`,`body`,`computed`,`static`).field(`key`,s(o(`Literal`),o(`Identifier`),o(`Expression`))),o(`ClassPrivateMethod`).bases(`Declaration`,`Function`).build(`key`,`params`,`body`,`kind`,`computed`,`static`).field(`key`,o(`PrivateName`)),[`ClassMethod`,`ClassPrivateMethod`].forEach(function(e){o(e).field(`kind`,s(`get`,`set`,`method`,`constructor`),function(){return`method`}).field(`body`,o(`BlockStatement`)).field(`computed`,Boolean,n.false).field(`static`,s(Boolean,null),n.null).field(`abstract`,s(Boolean,null),n.null).field(`access`,s(`public`,`private`,`protected`,null),n.null).field(`accessibility`,s(`public`,`private`,`protected`,null),n.null).field(`decorators`,s([o(`Decorator`)],null),n.null).field(`optional`,s(Boolean,null),n.null)}),o(`ClassPrivateProperty`).bases(`ClassProperty`).build(`key`,`value`).field(`key`,o(`PrivateName`)).field(`value`,s(o(`Expression`),null),n.null),o(`PrivateName`).bases(`Expression`,`Pattern`).build(`id`).field(`id`,o(`Identifier`));var u=s(o(`Property`),o(`PropertyPattern`),o(`SpreadPropertyPattern`),o(`SpreadProperty`),o(`ObjectProperty`),o(`RestProperty`));o(`ObjectPattern`).bases(`Pattern`).build(`properties`).field(`properties`,[u]).field(`decorators`,s([o(`Decorator`)],null),n.null),o(`SpreadProperty`).bases(`Node`).build(`argument`).field(`argument`,o(`Expression`)),o(`RestProperty`).bases(`Node`).build(`argument`).field(`argument`,o(`Expression`)),o(`ForAwaitStatement`).bases(`Statement`).build(`left`,`right`,`body`).field(`left`,s(o(`VariableDeclaration`),o(`Expression`))).field(`right`,o(`Expression`)).field(`body`,o(`Statement`)),o(`Import`).bases(`Expression`).build()}exports.default=o,t.exports=exports.default}),Ie=e.__commonJSMin((exports,t)=>{Object.defineProperty(exports,`__esModule`,{value:!0});var n=U(),r=n.__importDefault(Fe()),i=n.__importDefault(Ne());function a(e){e.use(r.default),e.use(i.default)}exports.default=a,t.exports=exports.default}),Le=e.__commonJSMin((exports,t)=>{Object.defineProperty(exports,`__esModule`,{value:!0});var n=U(),r=n.__importDefault(Fe()),i=n.__importDefault(Me()),a=n.__importDefault(W()),o=n.__importDefault(q());function s(e){e.use(r.default),e.use(i.default);var t=e.use(a.default),n=t.namedTypes,s=t.Type.def,c=t.Type.or,l=e.use(o.default).defaults,u=t.Type.from(function(e,t){return!!(n.StringLiteral&&n.StringLiteral.check(e,t)||n.Literal&&n.Literal.check(e,t)&&typeof e.value==`string`)},`StringLiteral`);s(`TSType`).bases(`Node`);var d=c(s(`Identifier`),s(`TSQualifiedName`));s(`TSTypeReference`).bases(`TSType`,`TSHasOptionalTypeParameterInstantiation`).build(`typeName`,`typeParameters`).field(`typeName`,d),s(`TSHasOptionalTypeParameterInstantiation`).field(`typeParameters`,c(s(`TSTypeParameterInstantiation`),null),l.null),s(`TSHasOptionalTypeParameters`).field(`typeParameters`,c(s(`TSTypeParameterDeclaration`),null,void 0),l.null),s(`TSHasOptionalTypeAnnotation`).field(`typeAnnotation`,c(s(`TSTypeAnnotation`),null),l.null),s(`TSQualifiedName`).bases(`Node`).build(`left`,`right`).field(`left`,d).field(`right`,d),s(`TSAsExpression`).bases(`Expression`,`Pattern`).build(`expression`,`typeAnnotation`).field(`expression`,s(`Expression`)).field(`typeAnnotation`,s(`TSType`)).field(`extra`,c({parenthesized:Boolean},null),l.null),s(`TSNonNullExpression`).bases(`Expression`,`Pattern`).build(`expression`).field(`expression`,s(`Expression`)),[`TSAnyKeyword`,`TSBigIntKeyword`,`TSBooleanKeyword`,`TSNeverKeyword`,`TSNullKeyword`,`TSNumberKeyword`,`TSObjectKeyword`,`TSStringKeyword`,`TSSymbolKeyword`,`TSUndefinedKeyword`,`TSUnknownKeyword`,`TSVoidKeyword`,`TSThisType`].forEach(function(e){s(e).bases(`TSType`).build()}),s(`TSArrayType`).bases(`TSType`).build(`elementType`).field(`elementType`,s(`TSType`)),s(`TSLiteralType`).bases(`TSType`).build(`literal`).field(`literal`,c(s(`NumericLiteral`),s(`StringLiteral`),s(`BooleanLiteral`),s(`TemplateLiteral`),s(`UnaryExpression`))),[`TSUnionType`,`TSIntersectionType`].forEach(function(e){s(e).bases(`TSType`).build(`types`).field(`types`,[s(`TSType`)])}),s(`TSConditionalType`).bases(`TSType`).build(`checkType`,`extendsType`,`trueType`,`falseType`).field(`checkType`,s(`TSType`)).field(`extendsType`,s(`TSType`)).field(`trueType`,s(`TSType`)).field(`falseType`,s(`TSType`)),s(`TSInferType`).bases(`TSType`).build(`typeParameter`).field(`typeParameter`,s(`TSTypeParameter`)),s(`TSParenthesizedType`).bases(`TSType`).build(`typeAnnotation`).field(`typeAnnotation`,s(`TSType`));var f=[c(s(`Identifier`),s(`RestElement`),s(`ArrayPattern`),s(`ObjectPattern`))];[`TSFunctionType`,`TSConstructorType`].forEach(function(e){s(e).bases(`TSType`,`TSHasOptionalTypeParameters`,`TSHasOptionalTypeAnnotation`).build(`parameters`).field(`parameters`,f)}),s(`TSDeclareFunction`).bases(`Declaration`,`TSHasOptionalTypeParameters`).build(`id`,`params`,`returnType`).field(`declare`,Boolean,l.false).field(`async`,Boolean,l.false).field(`generator`,Boolean,l.false).field(`id`,c(s(`Identifier`),null),l.null).field(`params`,[s(`Pattern`)]).field(`returnType`,c(s(`TSTypeAnnotation`),s(`Noop`),null),l.null),s(`TSDeclareMethod`).bases(`Declaration`,`TSHasOptionalTypeParameters`).build(`key`,`params`,`returnType`).field(`async`,Boolean,l.false).field(`generator`,Boolean,l.false).field(`params`,[s(`Pattern`)]).field(`abstract`,Boolean,l.false).field(`accessibility`,c(`public`,`private`,`protected`,void 0),l.undefined).field(`static`,Boolean,l.false).field(`computed`,Boolean,l.false).field(`optional`,Boolean,l.false).field(`key`,c(s(`Identifier`),s(`StringLiteral`),s(`NumericLiteral`),s(`Expression`))).field(`kind`,c(`get`,`set`,`method`,`constructor`),function(){return`method`}).field(`access`,c(`public`,`private`,`protected`,void 0),l.undefined).field(`decorators`,c([s(`Decorator`)],null),l.null).field(`returnType`,c(s(`TSTypeAnnotation`),s(`Noop`),null),l.null),s(`TSMappedType`).bases(`TSType`).build(`typeParameter`,`typeAnnotation`).field(`readonly`,c(Boolean,`+`,`-`),l.false).field(`typeParameter`,s(`TSTypeParameter`)).field(`optional`,c(Boolean,`+`,`-`),l.false).field(`typeAnnotation`,c(s(`TSType`),null),l.null),s(`TSTupleType`).bases(`TSType`).build(`elementTypes`).field(`elementTypes`,[c(s(`TSType`),s(`TSNamedTupleMember`))]),s(`TSNamedTupleMember`).bases(`TSType`).build(`label`,`elementType`,`optional`).field(`label`,s(`Identifier`)).field(`optional`,Boolean,l.false).field(`elementType`,s(`TSType`)),s(`TSRestType`).bases(`TSType`).build(`typeAnnotation`).field(`typeAnnotation`,s(`TSType`)),s(`TSOptionalType`).bases(`TSType`).build(`typeAnnotation`).field(`typeAnnotation`,s(`TSType`)),s(`TSIndexedAccessType`).bases(`TSType`).build(`objectType`,`indexType`).field(`objectType`,s(`TSType`)).field(`indexType`,s(`TSType`)),s(`TSTypeOperator`).bases(`TSType`).build(`operator`).field(`operator`,String).field(`typeAnnotation`,s(`TSType`)),s(`TSTypeAnnotation`).bases(`Node`).build(`typeAnnotation`).field(`typeAnnotation`,c(s(`TSType`),s(`TSTypeAnnotation`))),s(`TSIndexSignature`).bases(`Declaration`,`TSHasOptionalTypeAnnotation`).build(`parameters`,`typeAnnotation`).field(`parameters`,[s(`Identifier`)]).field(`readonly`,Boolean,l.false),s(`TSPropertySignature`).bases(`Declaration`,`TSHasOptionalTypeAnnotation`).build(`key`,`typeAnnotation`,`optional`).field(`key`,s(`Expression`)).field(`computed`,Boolean,l.false).field(`readonly`,Boolean,l.false).field(`optional`,Boolean,l.false).field(`initializer`,c(s(`Expression`),null),l.null),s(`TSMethodSignature`).bases(`Declaration`,`TSHasOptionalTypeParameters`,`TSHasOptionalTypeAnnotation`).build(`key`,`parameters`,`typeAnnotation`).field(`key`,s(`Expression`)).field(`computed`,Boolean,l.false).field(`optional`,Boolean,l.false).field(`parameters`,f),s(`TSTypePredicate`).bases(`TSTypeAnnotation`,`TSType`).build(`parameterName`,`typeAnnotation`,`asserts`).field(`parameterName`,c(s(`Identifier`),s(`TSThisType`))).field(`typeAnnotation`,c(s(`TSTypeAnnotation`),null),l.null).field(`asserts`,Boolean,l.false),[`TSCallSignatureDeclaration`,`TSConstructSignatureDeclaration`].forEach(function(e){s(e).bases(`Declaration`,`TSHasOptionalTypeParameters`,`TSHasOptionalTypeAnnotation`).build(`parameters`,`typeAnnotation`).field(`parameters`,f)}),s(`TSEnumMember`).bases(`Node`).build(`id`,`initializer`).field(`id`,c(s(`Identifier`),u)).field(`initializer`,c(s(`Expression`),null),l.null),s(`TSTypeQuery`).bases(`TSType`).build(`exprName`).field(`exprName`,c(d,s(`TSImportType`)));var p=c(s(`TSCallSignatureDeclaration`),s(`TSConstructSignatureDeclaration`),s(`TSIndexSignature`),s(`TSMethodSignature`),s(`TSPropertySignature`));s(`TSTypeLiteral`).bases(`TSType`).build(`members`).field(`members`,[p]),s(`TSTypeParameter`).bases(`Identifier`).build(`name`,`constraint`,`default`).field(`name`,String).field(`constraint`,c(s(`TSType`),void 0),l.undefined).field(`default`,c(s(`TSType`),void 0),l.undefined),s(`TSTypeAssertion`).bases(`Expression`,`Pattern`).build(`typeAnnotation`,`expression`).field(`typeAnnotation`,s(`TSType`)).field(`expression`,s(`Expression`)).field(`extra`,c({parenthesized:Boolean},null),l.null),s(`TSTypeParameterDeclaration`).bases(`Declaration`).build(`params`).field(`params`,[s(`TSTypeParameter`)]),s(`TSTypeParameterInstantiation`).bases(`Node`).build(`params`).field(`params`,[s(`TSType`)]),s(`TSEnumDeclaration`).bases(`Declaration`).build(`id`,`members`).field(`id`,s(`Identifier`)).field(`const`,Boolean,l.false).field(`declare`,Boolean,l.false).field(`members`,[s(`TSEnumMember`)]).field(`initializer`,c(s(`Expression`),null),l.null),s(`TSTypeAliasDeclaration`).bases(`Declaration`,`TSHasOptionalTypeParameters`).build(`id`,`typeAnnotation`).field(`id`,s(`Identifier`)).field(`declare`,Boolean,l.false).field(`typeAnnotation`,s(`TSType`)),s(`TSModuleBlock`).bases(`Node`).build(`body`).field(`body`,[s(`Statement`)]),s(`TSModuleDeclaration`).bases(`Declaration`).build(`id`,`body`).field(`id`,c(u,d)).field(`declare`,Boolean,l.false).field(`global`,Boolean,l.false).field(`body`,c(s(`TSModuleBlock`),s(`TSModuleDeclaration`),null),l.null),s(`TSImportType`).bases(`TSType`,`TSHasOptionalTypeParameterInstantiation`).build(`argument`,`qualifier`,`typeParameters`).field(`argument`,u).field(`qualifier`,c(d,void 0),l.undefined),s(`TSImportEqualsDeclaration`).bases(`Declaration`).build(`id`,`moduleReference`).field(`id`,s(`Identifier`)).field(`isExport`,Boolean,l.false).field(`moduleReference`,c(d,s(`TSExternalModuleReference`))),s(`TSExternalModuleReference`).bases(`Declaration`).build(`expression`).field(`expression`,u),s(`TSExportAssignment`).bases(`Statement`).build(`expression`).field(`expression`,s(`Expression`)),s(`TSNamespaceExportDeclaration`).bases(`Declaration`).build(`id`).field(`id`,s(`Identifier`)),s(`TSInterfaceBody`).bases(`Node`).build(`body`).field(`body`,[p]),s(`TSExpressionWithTypeArguments`).bases(`TSType`,`TSHasOptionalTypeParameterInstantiation`).build(`expression`,`typeParameters`).field(`expression`,d),s(`TSInterfaceDeclaration`).bases(`Declaration`,`TSHasOptionalTypeParameters`).build(`id`,`body`).field(`id`,d).field(`declare`,Boolean,l.false).field(`extends`,c([s(`TSExpressionWithTypeArguments`)],null),l.null).field(`body`,s(`TSInterfaceBody`)),s(`TSParameterProperty`).bases(`Pattern`).build(`parameter`).field(`accessibility`,c(`public`,`private`,`protected`,void 0),l.undefined).field(`readonly`,Boolean,l.false).field(`parameter`,c(s(`Identifier`),s(`AssignmentPattern`))),s(`ClassProperty`).field(`access`,c(`public`,`private`,`protected`,void 0),l.undefined),s(`ClassBody`).field(`body`,[c(s(`MethodDefinition`),s(`VariableDeclarator`),s(`ClassPropertyDefinition`),s(`ClassProperty`),s(`ClassPrivateProperty`),s(`ClassMethod`),s(`ClassPrivateMethod`),s(`TSDeclareMethod`),p)])}exports.default=s,t.exports=exports.default}),Re=e.__commonJSMin((exports,t)=>{Object.defineProperty(exports,`__esModule`,{value:!0});var n=U(),r=n.__importDefault(W()),i=n.__importDefault(q()),a=n.__importDefault(J());function o(e){e.use(a.default);var t=e.use(r.default),n=t.Type,o=t.Type.def,s=n.or,c=e.use(i.default),l=c.defaults;o(`OptionalMemberExpression`).bases(`MemberExpression`).build(`object`,`property`,`computed`,`optional`).field(`optional`,Boolean,l.true),o(`OptionalCallExpression`).bases(`CallExpression`).build(`callee`,`arguments`,`optional`).field(`optional`,Boolean,l.true);var u=s(`||`,`&&`,`??`);o(`LogicalExpression`).field(`operator`,u)}exports.default=o,t.exports=exports.default}),ze=e.__commonJSMin(exports=>{Object.defineProperty(exports,`__esModule`,{value:!0}),exports.namedTypes=void 0;var t;(function(e){})(t=exports.namedTypes||={})}),Be=e.__commonJSMin(exports=>{Object.defineProperty(exports,`__esModule`,{value:!0}),exports.visit=exports.use=exports.Type=exports.someField=exports.PathVisitor=exports.Path=exports.NodePath=exports.namedTypes=exports.getSupertypeNames=exports.getFieldValue=exports.getFieldNames=exports.getBuilderName=exports.finalize=exports.eachField=exports.defineMethod=exports.builtInTypes=exports.builders=exports.astNodesAreEquivalent=void 0;var t=U(),n=t.__importDefault(ke()),r=t.__importDefault(J()),i=t.__importDefault(Y()),a=t.__importDefault(X()),o=t.__importDefault(Ae()),s=t.__importDefault(je()),c=t.__importDefault(Ne()),l=t.__importDefault(Pe()),u=t.__importDefault(Ie()),d=t.__importDefault(Le()),f=t.__importDefault(Re()),p=ze();Object.defineProperty(exports,`namedTypes`,{enumerable:!0,get:function(){return p.namedTypes}});var m=n.default([r.default,i.default,a.default,o.default,s.default,c.default,l.default,u.default,d.default,f.default]),h=m.astNodesAreEquivalent,g=m.builders,_=m.builtInTypes,v=m.defineMethod,y=m.eachField,b=m.finalize,x=m.getBuilderName,S=m.getFieldNames,C=m.getFieldValue,w=m.getSupertypeNames,T=m.namedTypes,ee=m.NodePath,E=m.Path,D=m.PathVisitor,te=m.someField,O=m.Type,k=m.use,A=m.visit;exports.astNodesAreEquivalent=h,exports.builders=g,exports.builtInTypes=_,exports.defineMethod=v,exports.eachField=y,exports.finalize=b,exports.getBuilderName=x,exports.getFieldNames=S,exports.getFieldValue=C,exports.getSupertypeNames=w,exports.NodePath=ee,exports.Path=E,exports.PathVisitor=D,exports.someField=te,exports.Type=O,exports.use=k,exports.visit=A,Object.assign(p.namedTypes,T)}),Ve=e.__toESM(V(),1),He=e.__toESM(H(),1),Z=e.__toESM(Be(),1);function Ue(e,t){if(!Array.isArray(t))throw TypeError(`an array of async function "names" is required`);let n=t.slice(0),r=(0,He.parseScript)(e),i=0;do i=n.length,(0,Z.visit)(r,{visitVariableDeclaration(e){if(e.node.declarations)for(let t=0;t<e.node.declarations.length;t++){let r=e.node.declarations[t];Z.namedTypes.VariableDeclarator.check(r)&&Z.namedTypes.Identifier.check(r.init)&&Z.namedTypes.Identifier.check(r.id)&&Ge(r.init.name,n)&&!Ge(r.id.name,n)&&n.push(r.id.name)}return!1},visitAssignmentExpression(e){return Z.namedTypes.Identifier.check(e.node.left)&&Z.namedTypes.Identifier.check(e.node.right)&&Ge(e.node.right.name,n)&&!Ge(e.node.left.name,n)&&n.push(e.node.left.name),!1},visitFunction(e){if(e.node.id){let t=!1;if((0,Z.visit)(e.node,{visitCallExpression(e){return We(e.node,n)&&(t=!0),!1}}),!t)return!1;e.node.async=!0,Ge(e.node.id.name,n)||n.push(e.node.id.name)}this.traverse(e)}});while(i!==n.length);return(0,Z.visit)(r,{visitCallExpression(e){if(We(e.node,n)){let t=!1,{name:n,parent:{node:r}}=e,i=Z.builders.awaitExpression(e.node,t);Z.namedTypes.CallExpression.check(r)?r.arguments[n]=i:r[n]=i}this.traverse(e)}}),(0,Ve.generate)(r)}function We({callee:e},t){let n;if(Z.namedTypes.Identifier.check(e))n=e.name;else if(Z.namedTypes.MemberExpression.check(e))if(Z.namedTypes.Identifier.check(e.object)&&Z.namedTypes.Identifier.check(e.property))n=`${e.object.name}.${e.property.name}`;else return!1;else if(Z.namedTypes.FunctionExpression.check(e))if(e.id)n=e.id.name;else return!1;else throw Error(`Don't know how to get name for: ${e.type}`);return Ge(n,t)}function Ge(e,t){for(let n=0;n<t.length;n++){let r=t[n];if(a.types.isRegExp(r)){if(r.test(e))return!0}else if(e===r)return!0}return!1}const Ke=`__degeneratorSandboxFunction:`;function qe(e,t,n,r={}){let i=Ue(t,r.names??[]);if(r.sandbox)for(let[t,n]of Object.entries(r.sandbox)){if(typeof n!=`function`)throw Error(`Expected a "function" for sandbox property \`${t}\`, but got "${typeof n}"`);let r=Je(e,t,n);r.consume(n=>e.setProp(e.global,t,n))}let a=e.evalCode(`${i};${n}`,r.filename),o=e.typeof(a);if(o!==`function`)throw Error(`Expected a "function" named \`${n}\` to be defined, but got "${o}"`);let s=async function(...t){let n,r;try{let i=e.callFunction(a,e.undefined,...t.map(t=>Ye(e,t)));n=i;let o=e.resolvePromise(n);e.executePendingJobs();let s=await o;if(`error`in s){let t=e.dump(s.error);throw s.error.dispose(),t instanceof Error?(t.stack&&!t.stack.startsWith(t.name)&&(t.stack=`${t.name}: ${t.message}\n${t.stack}`),t):Error(String(t))}return r=s.value,e.dump(r)}catch(e){throw e&&typeof e==`object`&&`cause`in e&&e.cause?(typeof e.cause==`object`&&`stack`in e.cause&&`name`in e.cause&&`message`in e.cause&&typeof e.cause.stack==`string`&&typeof e.cause.name==`string`&&typeof e.cause.message==`string`&&(e.cause.stack=`${e.cause.name}: ${e.cause.message}\n${e.cause.stack}`),e.cause):e}finally{n?.dispose(),r?.dispose()}};return Object.defineProperty(s,`toString`,{value:()=>i,enumerable:!1}),s}function Je(e,t,n){let r=(...t)=>{let r=n(...t.map(t=>e.dump(t)));return e.executePendingJobs(),Ye(e,r)},i=`${Ke}${t}`,a=e.newString(i),o;try{if(o=e.getProp(e.global,a),e.typeof(o)===`function`)return e.registerHostCallback(t,r),o;o.dispose(),o=void 0;let n=e.newFunction(t,r);return e.defineProp(e.global,i,n,{writable:!1,enumerable:!1,configurable:!1}),n}finally{a.dispose()}}function Ye(e,t){if(t===void 0)return e.undefined;if(t===null)return e.null;if(typeof t==`string`)return e.newString(t);if(typeof t==`number`)return e.newNumber(t);if(typeof t==`bigint`)return e.newBigInt(t);if(typeof t==`boolean`)return t?e.true:e.false;if(a.types.isPromise(t)){let n=e.newPromise();return t.then(t=>{n.resolve(Ye(e,t)),e.executePendingJobs()},t=>{n.reject(Ye(e,t)),e.executePendingJobs()}),n.handle}else if(a.types.isNativeError(t))return e.newError(t);throw Error(`Unsupported value: ${t}`)}function Xe(){return!1}function Ze(e,t){return e=String(e),t=String(t),e.substr(t.length*-1)===t}function Qe(e){let t=String(e).match(/\./g),n=0;return t&&(n=t.length),n}function $e(e,t){return new Promise((n,r)=>{(0,m.lookup)(e,t,(e,t)=>{e?r(e):n(t)})})}function et(e){return e===`GMT`}async function tt(e){let t=4;try{let n=await $e(e,{family:t});if(typeof n==`string`)return n}catch{}return null}var nt=e.__commonJSMin(exports=>{Object.defineProperty(exports,`__esModule`,{value:!0}),exports.Netmask4Impl=void 0,exports.ip2long=o,exports.long2ip=t;function t(e){let t=(e&255<<24)>>>24,n=(e&255<<16)>>>16,r=(e&65280)>>>8,i=e&255;return[t,n,r,i].join(`.`)}let n=48,r=97,i=65;function a(e){let t=0,a=10,o=`9`,s=0;e.length>1&&e[s]===`0`&&(e[s+1]===`x`||e[s+1]===`X`?(s+=2,a=16):`0`<=e[s+1]&&e[s+1]<=`9`&&(s++,a=8,o=`7`));let c=s;for(;s<e.length;){if(`0`<=e[s]&&e[s]<=o)t=t*a+(e.charCodeAt(s)-n)>>>0;else if(a===16)if(`a`<=e[s]&&e[s]<=`f`)t=t*a+(10+e.charCodeAt(s)-r)>>>0;else if(`A`<=e[s]&&e[s]<=`F`)t=t*a+(10+e.charCodeAt(s)-i)>>>0;else break;else break;if(t>4294967295)throw Error(`too large`);s++}if(s===c)throw Error(`empty octet`);return[t,s]}function o(e){let t=[];for(let n=0;n<=3&&e.length!==0;n++){if(n>0){if(e[0]!==`.`)throw Error(`Invalid IP`);e=e.substring(1)}let[r,i]=a(e);e=e.substring(i),t.push(r)}if(e.length!==0)throw Error(`Invalid IP`);switch(t.length){case 1:if(t[0]>4294967295)throw Error(`Invalid IP`);return t[0]>>>0;case 2:if(t[0]>255||t[1]>16777215)throw Error(`Invalid IP`);return(t[0]<<24|t[1])>>>0;case 3:if(t[0]>255||t[1]>255||t[2]>65535)throw Error(`Invalid IP`);return(t[0]<<24|t[1]<<16|t[2])>>>0;case 4:if(t[0]>255||t[1]>255||t[2]>255||t[3]>255)throw Error(`Invalid IP`);return(t[0]<<24|t[1]<<16|t[2]<<8|t[3])>>>0;default:throw Error(`Invalid IP`)}}var s=class e{constructor(e,n){if(typeof e!=`string`)throw Error("Missing `net' parameter");let r=n;if(!r){let t=e.split(`/`,2);e=t[0],r=t[1]}if(r||=32,typeof r==`string`&&r.indexOf(`.`)>-1){try{this.maskLong=o(r)}catch{throw Error(`Invalid mask: `+r)}this.bitmask=NaN;for(let e=32;e>=0;e--)if(this.maskLong===4294967295<<32-e>>>0){this.bitmask=e;break}}else if(r||r===0)this.bitmask=parseInt(r,10),this.maskLong=0,this.bitmask>0&&(this.maskLong=4294967295<<32-this.bitmask>>>0);else throw Error(`Invalid mask: empty`);try{this.netLong=(o(e)&this.maskLong)>>>0}catch{throw Error(`Invalid net address: `+e)}if(!(this.bitmask<=32))throw Error(`Invalid mask for ip4: `+r);this.size=2**(32-this.bitmask),this.base=t(this.netLong),this.mask=t(this.maskLong),this.hostmask=t(~this.maskLong),this.first=this.bitmask<=30?t(this.netLong+1):this.base,this.last=this.bitmask<=30?t(this.netLong+this.size-2):t(this.netLong+this.size-1),this.broadcast=this.bitmask<=30?t(this.netLong+this.size-1):void 0}contains(t){return typeof t==`string`&&(t.indexOf(`/`)>0||t.split(`.`).length!==4)&&(t=new e(t)),t instanceof e?this.contains(t.base)&&this.contains(t.broadcast||t.last):(o(t)&this.maskLong)>>>0==(this.netLong&this.maskLong)>>>0}next(n=1){return new e(t(this.netLong+this.size*n),this.mask)}forEach(e){let n=o(this.first),r=o(this.last),i=0;for(;n<=r;)e(t(n),n,i),i++,n++}toString(){return this.base+`/`+this.bitmask}};exports.Netmask4Impl=s}),rt=e.__commonJSMin(exports=>{Object.defineProperty(exports,`__esModule`,{value:!0}),exports.Netmask6Impl=void 0,exports.ip6bigint=r,exports.bigint2ip6=a;let t=nt(),n=(1n<<128n)-1n;function r(e){let n=e.indexOf(`%`);n!==-1&&(e=e.substring(0,n));let r=e.lastIndexOf(`:`);if(r!==-1&&e.indexOf(`.`,r)!==-1){let n=e.substring(r+1),a=(0,t.ip2long)(n),o=e.substring(0,r+1)+`0:0`,s=i(o);return s&-4294967296n|BigInt(a)}return i(e)}function i(e){let t=e.indexOf(`::`),n;if(t!==-1){let r=e.substring(0,t),i=e.substring(t+2),a=r===``?[]:r.split(`:`),o=i===``?[]:i.split(`:`),s=8-a.length-o.length;if(s<0)throw Error(`Invalid IPv6: too many groups`);n=[...a,...Array(s).fill(`0`),...o]}else n=e.split(`:`);if(n.length!==8)throw Error(`Invalid IPv6: expected 8 groups, got `+n.length);let r=0n;for(let e=0;e<8;e++){let t=n[e];if(t.length===0||t.length>4)throw Error(`Invalid IPv6: bad group "`+t+`"`);let i=parseInt(t,16);if(isNaN(i)||i<0||i>65535)throw Error(`Invalid IPv6: bad group "`+t+`"`);r=r<<16n|BigInt(i)}return r}function a(e){if(e<0n||e>n)throw Error(`Invalid IPv6 address value`);let t=[];for(let n=0;n<8;n++)t.unshift(Number(e&0xffffn)),e>>=16n;let r=-1,i=0,a=-1,o=0;for(let e=0;e<8;e++)t[e]===0?a===-1?(a=e,o=1):o++:(o>i&&o>=2&&(r=a,i=o),a=-1,o=0);if(o>i&&o>=2&&(r=a,i=o),r!==-1&&r+i===8&&r>0){let e=t.slice(0,r).map(e=>e.toString(16));return e.join(`:`)+`::`}else if(r===0){let e=t.slice(i).map(e=>e.toString(16));return`::`+e.join(`:`)}else if(r>0){let e=t.slice(0,r).map(e=>e.toString(16)),n=t.slice(r+i).map(e=>e.toString(16));return e.join(`:`)+`::`+n.join(`:`)}else return t.map(e=>e.toString(16)).join(`:`)}var o=class e{constructor(e,t){if(typeof e!=`string`)throw Error("Missing `net' parameter");let i=t;if(i==null){let t=e.indexOf(`/`);t===-1?i=128:(i=parseInt(e.substring(t+1),10),e=e.substring(0,t))}if(isNaN(i)||i<0||i>128)throw Error(`Invalid mask for IPv6: `+i);this.bitmask=i,this.bitmask===0?this.maskBigint=0n:this.maskBigint=n>>BigInt(128-this.bitmask)<<BigInt(128-this.bitmask);try{this.netBigint=r(e)&this.maskBigint}catch{throw Error(`Invalid IPv6 net address: `+e)}this.size=Number(1n<<BigInt(128-this.bitmask)),this.base=a(this.netBigint),this.mask=a(this.maskBigint),this.hostmask=a(~this.maskBigint&n),this.first=this.base,this.last=a(this.netBigint+(1n<<BigInt(128-this.bitmask))-1n),this.broadcast=void 0}contains(t){if(typeof t==`string`&&t.indexOf(`/`)>0&&(t=new e(t)),t instanceof e)return this.contains(t.base)&&this.contains(t.last);{let e=r(t);return(e&this.maskBigint)===this.netBigint}}next(t=1){let n=1n<<BigInt(128-this.bitmask);return new e(a(this.netBigint+n*BigInt(t)),this.bitmask)}forEach(e){let t=this.netBigint,n=1n<<BigInt(128-this.bitmask),r=this.netBigint+n-1n,i=0;for(;t<=r;)e(a(t),Number(t),i),i++,t++}toString(){return this.base+`/`+this.bitmask}};exports.Netmask6Impl=o}),it=e.__commonJSMin(exports=>{Object.defineProperty(exports,`__esModule`,{value:!0}),exports.long2ip=exports.ip2long=exports.Netmask=void 0;let t=nt();Object.defineProperty(exports,`ip2long`,{enumerable:!0,get:function(){return t.ip2long}}),Object.defineProperty(exports,`long2ip`,{enumerable:!0,get:function(){return t.long2ip}});let n=rt();var r=class e{constructor(e,r){if(typeof e!=`string`)throw Error("Missing `net' parameter");let i=e.indexOf(`/`)===-1?e:e.substring(0,e.indexOf(`/`));i.indexOf(`:`)===-1?this._impl=new t.Netmask4Impl(e,r):this._impl=new n.Netmask6Impl(e,r),this.base=this._impl.base,this.mask=this._impl.mask,this.hostmask=this._impl.hostmask,this.bitmask=this._impl.bitmask,this.size=this._impl.size,this.first=this._impl.first,this.last=this._impl.last,this.broadcast=this._impl.broadcast,this._impl instanceof t.Netmask4Impl?(this.maskLong=this._impl.maskLong,this.netLong=this._impl.netLong):(this.maskLong=0,this.netLong=0)}contains(t){return typeof t==`string`&&(t.indexOf(`/`)>0||t.indexOf(`:`)===-1&&t.split(`.`).length!==4)&&(t=new e(t)),t instanceof e?this.contains(t.base)&&this.contains(t.broadcast||t.last):this._impl.contains(t)}next(t=1){let n=this._impl.next(t),r=new e(n.base,n.bitmask);return r}forEach(e){this._impl.forEach(e)}toString(){return this._impl.toString()}};exports.Netmask=r}),at=e.__toESM(it(),1);async function ot(e,t,n){let r=4;try{let i=await $e(e,{family:r});if(typeof i==`string`){let e=new at.Netmask(t,n);return e.contains(i)}}catch{}return!1}function st(e){return!/\./.test(e)}async function ct(e){let t=4;try{if(await $e(e,{family:t}))return!0}catch{}return!1}function lt(e,t){let n=e.split(`.`),r=t.split(`.`),i=!0;for(let e=0;e<n.length;e++)if(n[e]!==r[e]){i=!1;break}return i}const ut={address(){let e=s.default.networkInterfaces(),t=dt(),n=Object.values(e).map((e=[])=>{let n=e.filter(e=>{let n=dt(e.family);return!(n!==t||ut.isLoopback(e.address))});return n.length?n[0].address:void 0}).filter(Boolean);return n.length?n[0]:ut.loopback(t)},isLoopback(e){return/^(::f{4}:)?127\.([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})/.test(e)||/^fe80::1$/.test(e)||/^::1$/.test(e)||/^::$/.test(e)},loopback(e){if(e=dt(e),e!==`ipv4`&&e!==`ipv6`)throw Error(`family must be ipv4 or ipv6`);return e===`ipv4`?`127.0.0.1`:`fe80::1`}};function dt(e){return e===4?`ipv4`:e===6?`ipv6`:e?e.toLowerCase():`ipv4`}async function ft(){return new Promise((e,t)=>{let n=d.default.connect({host:`8.8.8.8`,port:53}),r=()=>{e(ut.address())};n.once(`error`,r),n.once(`connect`,()=>{n.removeListener(`error`,r);let i=n.address();n.destroy(),typeof i==`string`?e(i):i.address?e(i.address):t(Error("Expected a `string`"))})})}function pt(e,t){let n=mt(t);return n.test(e)}function mt(e){return e=String(e).replace(/\./g,`\\.`).replace(/\?/g,`.`).replace(/\*/g,`.*`),RegExp(`^${e}$`)}function ht(){let e=Array.prototype.slice.call(arguments),t=e.pop(),n=t===`GMT`,r=new Date;n||e.push(t);let i=!1,a=e.length,o=e.map(e=>parseInt(e,10));if(a===1)i=_t(n,r)===o[0];else if(a===2){let e=_t(n,r);i=o[0]<=e&&e<o[1]}else a===4?i=bt(gt(o[0],o[1],0),gt(_t(n,r),vt(n,r),0),gt(o[2],o[3],59)):a===6&&(i=bt(gt(o[0],o[1],o[2]),gt(_t(n,r),vt(n,r),yt(n,r)),gt(o[3],o[4],o[5])));return i}function gt(e,t,n){return e*3600+t*60+n}function _t(e,t){return e?t.getUTCHours():t.getHours()}function vt(e,t){return e?t.getUTCMinutes():t.getMinutes()}function yt(e,t){return e?t.getUTCSeconds():t.getSeconds()}function bt(e,t,n){return e<=t&&t<=n}const xt=[`SUN`,`MON`,`TUE`,`WED`,`THU`,`FRI`,`SAT`];function St(e,t,n){let r=!1,i=-1,a=-1,o=!1;et(n)?r=!0:et(t)&&(r=!0,o=!0),i=xt.indexOf(e),!o&&Tt(t)&&(a=xt.indexOf(t));let s=Ct(r),c;return c=a<0?s===i:i<=a?wt(i,s,a):wt(i,s,6)||wt(0,s,a),c}function Ct(e){return e?new Date().getUTCDay():new Date().getDay()}function wt(e,t,n){return e<=t&&t<=n}function Tt(e){return e?xt.includes(e):!1}function Et(e,t,n={}){let r=Buffer.isBuffer(t)?t.toString(`utf8`):t,i={...Dt,...n.sandbox},a=Object.keys(i).filter(e=>Ot(i[e])),o={filename:`proxy.pac`,names:a,...n,sandbox:i},s=qe(e,r,`FindProxyForURL`,o);function c(e,t){let n=typeof e==`string`?new URL(e):e,r=t||n.hostname;if(!r)throw TypeError("Could not determine `host`");return s(n.href,r)}return Object.defineProperty(c,`toString`,{value:()=>s.toString(),enumerable:!1}),c}const Dt=Object.freeze({alert:(e=``)=>console.log(`%s`,e),dateRange:Xe,dnsDomainIs:Ze,dnsDomainLevels:Qe,dnsResolve:tt,isInNet:ot,isPlainHostName:st,isResolvable:ct,localHostOrDomainIs:lt,myIpAddress:ft,shExpMatch:pt,timeRange:ht,weekdayRange:St});function Ot(e){return typeof e==`function`?e.constructor.name===`AsyncFunction`||String(e).indexOf(`__awaiter(`)!==-1?!0:!!e.async:!1}function kt(e){let t=0,n=8,r=52,i=0,a=1;return{clock_time_get(n,o,s){let c=e(),l=new DataView(c.buffer);if(n===i||n===a){let e=BigInt(Date.now())*1000000n;return l.setBigUint64(s,e,!0),t}return r},fd_write(r,i,a,o){let s=e(),c=new DataView(s.buffer),l=new Uint8Array(s.buffer),u=0;if(r!==1&&r!==2)return n;for(let e=0;e<a;e++){let t=c.getUint32(i+e*8,!0),n=c.getUint32(i+e*8+4,!0),a=l.slice(t,t+n),o=new TextDecoder().decode(a);r===1?typeof process<`u`&&process.stdout?process.stdout.write(o):console.log(o):typeof process<`u`&&process.stderr?process.stderr.write(o):console.error(o),u+=n}return c.setUint32(o,u,!0),t},fd_close(e){return r},fd_fdstat_get(r,i){let a=e(),o=new DataView(a.buffer);return r===1||r===2?(o.setUint8(i,2),o.setUint16(i+2,0,!0),o.setBigUint64(i+8,0n,!0),o.setBigUint64(i+16,0n,!0),t):n},fd_seek(e,t,n,i){return r},random_get(n,r){let i=e(),a=new Uint8Array(i.buffer,n,r);if(p!==void 0&&p.getRandomValues)p.getRandomValues(a);else for(let e=0;e<r;e++)a[e]=Math.floor(Math.random()*256);return t}}}const At=new TextDecoder;function jt(e,t){let n=new Uint8Array(e.buffer),r=t;for(;n[r]!==0;)r++;if(r===t)return{};let i=At.decode(n.slice(t,r)),a={};for(let e of i.split(`
29
+ `)){let t=e.indexOf(`=`);t>0&&(a[e.slice(0,t)]=e.slice(t+1))}return a}function Mt(e,t){let n=`qjs_ext_${e.name.replace(/-/g,`_`)}_versions`,r=e.instance.exports[n];if(typeof r!=`function`)return;let i=r();if(i!==0)return jt(t,i)}function Nt(e,t){let n=0,r=0;for(;t.value<e.length;){let i=e[t.value++];if(n|=(i&127)<<r,!(i&128))break;r+=7}return n}function Pt(e){let t=WebAssembly.Module.customSections(e,`dylink.0`);if(t.length===0)return null;let n=new Uint8Array(t[0]),r={value:0},i={memorySize:0,memoryAlignment:0,tableSize:0,tableAlignment:0,needed:[]};for(;r.value<n.length;){let e=Nt(n,r),t=Nt(n,r),a=r.value+t;if(e===1)i.memorySize=Nt(n,r),i.memoryAlignment=Nt(n,r),i.tableSize=Nt(n,r),i.tableAlignment=Nt(n,r);else if(e===2){let e=Nt(n,r);for(let t=0;t<e;t++){let e=Nt(n,r),t=new TextDecoder().decode(n.slice(r.value,r.value+e));r.value+=e,i.needed.push(t)}}r.value=a}return i}async function Ft(e,t,n,r,i,a){let o;o=e.wasm instanceof WebAssembly.Module?e.wasm:await WebAssembly.compile(e.wasm);let s=Pt(o);if(!s)throw Error(`Extension "${e.name}" is not a WASM shared library (missing dylink.0 section)`);let c=t.memory,l=t.__indirect_function_table,u=t.__stack_pointer,d=t.malloc;if(!c)throw Error(`Main module does not export memory`);if(!l)throw Error(`Main module does not export __indirect_function_table`);if(!d)throw Error(`Main module does not export malloc`);let f,p;if(a)f=a.memoryBase,p=a.tableBase;else if(s.memorySize>0){if(f=d(s.memorySize),f===0)throw Error(`Failed to allocate ${s.memorySize} bytes for extension "${e.name}"`);new Uint8Array(c.buffer,f,s.memorySize).fill(0)}else f=0;a?(p=a.tableBase,p+s.tableSize>l.length&&l.grow(p+s.tableSize-l.length)):(p=l.length,s.tableSize>0&&l.grow(s.tableSize));let m=WebAssembly.Module.imports(o),h={env:{},"GOT.mem":{},"GOT.func":{}},g=m.some(e=>e.module===`wasi_snapshot_preview1`);if(g){let t=e.wasi&&i?e.wasi(i):void 0;h.wasi_snapshot_preview1={...n,...t,...r}}let _=new Set(WebAssembly.Module.exports(o).filter(e=>e.kind===`function`).map(e=>e.name)),v=new Set;for(let n of m)if(n.module===`env`){if(n.name===`memory`&&n.kind===`memory`)h.env.memory=c;else if(n.name===`__indirect_function_table`&&n.kind===`table`)h.env.__indirect_function_table=l;else if(n.name===`__memory_base`&&n.kind===`global`)h.env.__memory_base=new WebAssembly.Global({value:`i32`,mutable:!1},f);else if(n.name===`__table_base`&&n.kind===`global`)h.env.__table_base=new WebAssembly.Global({value:`i32`,mutable:!1},p);else if(n.name===`__stack_pointer`&&n.kind===`global`)h.env.__stack_pointer=u;else if(n.kind===`function`){let r=t[n.name];r&&typeof r==`function`?h.env[n.name]=r:(v.add(n.name),h.env[n.name]=()=>{throw Error(`Extension "${e.name}" called unresolved symbol: env.${n.name}`)})}else if(n.kind===`global`){let e=t[n.name];e instanceof WebAssembly.Global?h.env[n.name]=e:h.env[n.name]=new WebAssembly.Global({value:`i32`,mutable:!0},0)}}else if(n.module===`GOT.mem`&&n.kind===`global`)h[`GOT.mem`][n.name]=new WebAssembly.Global({value:`i32`,mutable:!0},0);else if(n.module===`GOT.func`&&n.kind===`global`){let e=t[n.name];if(e&&typeof e==`function`){let t=l.length;l.grow(1),l.set(t,e),h[`GOT.func`][n.name]=new WebAssembly.Global({value:`i32`,mutable:!0},t)}else h[`GOT.func`][n.name]=new WebAssembly.Global({value:`i32`,mutable:!0},0)}let y=[...v].filter(e=>_.has(e)),b={};for(let t of y){let n={target:null};b[t]=n,h.env[t]=(...r)=>{if(!n.target)throw Error(`Extension "${e.name}" called unresolved symbol during init: env.${t}`);return n.target(...r)}}let x=await WebAssembly.instantiate(o,h),S=x.exports;for(let e of y){let t=S[e];typeof t==`function`&&(b[e].target=t)}typeof S.__wasm_apply_data_relocs==`function`&&S.__wasm_apply_data_relocs(),typeof S.__wasm_call_ctors==`function`&&S.__wasm_call_ctors();let C=e.initFn??`qjs_ext_${e.name.replace(/-/g,`_`)}_init`,w={name:e.name,module:o,instance:x,dylink:s,memoryBase:f,tableBase:p,initFn:C};return w.versions=Mt(w,c),w}function It(e,t){let n=e.instance.exports[e.initFn];if(typeof n!=`function`)throw Error(`Extension "${e.name}" does not export init function "${e.initFn}"`);let r=t.qjs_get_context_ptr(),i=t.qjs_get_runtime_ptr(),a=n(r,i);if(a!==0)throw Error(`Extension "${e.name}" init function returned error code ${a}`)}async function Lt(e,t,n,r,i,a){let o=[];for(let s of t){let t=e.find(e=>e.name===s.name);if(!t)throw Error(`Extension "${s.name}" required by snapshot but not provided`);let c=await Ft(t,n,r,i,a,{memoryBase:s.memoryBase,tableBase:s.tableBase});c.initFn=s.initFn,o.push(c)}return o}const Rt=`2.2.0`;var zt=function(e,t,n){if(t!=null){if(typeof t!=`object`&&typeof t!=`function`)throw TypeError(`Object expected.`);var r,i;if(n){if(!Symbol.asyncDispose)throw TypeError(`Symbol.asyncDispose is not defined.`);r=t[Symbol.asyncDispose]}if(r===void 0){if(!Symbol.dispose)throw TypeError(`Symbol.dispose is not defined.`);r=t[Symbol.dispose],n&&(i=r)}if(typeof r!=`function`)throw TypeError(`Object not disposable.`);i&&(r=function(){try{i.call(this)}catch(e){return Promise.reject(e)}}),e.stack.push({value:t,dispose:r,async:n})}else n&&e.stack.push({async:!0});return t},Bt=function(e){return function(t){function n(n){t.error=t.hasError?new e(n,t.error,`An error was suppressed during disposal.`):n,t.hasError=!0}var r,i=0;function a(){for(;r=t.stack.pop();)try{if(!r.async&&i===1)return i=0,t.stack.push(r),Promise.resolve().then(a);if(r.dispose){var e=r.dispose.call(r.value);if(r.async)return i|=2,Promise.resolve(e).then(a,function(e){return n(e),a()})}else i|=1}catch(e){n(e)}if(i===1)return t.hasError?Promise.reject(t.error):Promise.resolve();if(t.hasError)throw t.error}return a()}}(typeof SuppressedError==`function`?SuppressedError:function(e,t,n){var r=Error(n);return r.name=`SuppressedError`,r.error=e,r.suppressed=t,r});const Vt=1363825491,Ht=2,Ut=24;var Wt=class e{exports;module;instance;encoder=new TextEncoder;decoder=new TextDecoder;disposed=!1;hostCallbacks=new Map;nextInternalId=1;interruptHandler=null;unhandledRejectionHandler=null;moduleNormalizeHandler=null;moduleLoadHandler=null;timezoneOffsetHandler=null;_global=null;_versions=null;_undefined=null;_null=null;_true=null;_false=null;_ownedHandles=new Set;loadedExtensions=[];constructor(e){this.module=e,this.instance=null,this.exports=null}setInstance(e){this.instance=e,this.exports=e.exports}get versions(){if(this.assertNotDisposed(),!this._versions){let e={"quickjs-wasi":Rt,quickjs:this.readCString(this.exports.qjs_get_quickjs_version())};for(let t of this.loadedExtensions)t.versions&&Object.assign(e,t.versions);this._versions=e}return this._versions}get global(){return this._global||=new Q(this,this.exports.qjs_get_global()),this._global}get undefined(){return this._undefined||=new Q(this,this.exports.qjs_get_undefined()),this._undefined}get null(){return this._null||=new Q(this,this.exports.qjs_get_null()),this._null}get true(){return this._true||=new Q(this,this.exports.qjs_get_true()),this._true}get false(){return this._false||=new Q(this,this.exports.qjs_get_false()),this._false}static async create(t){let n=e.normalizeOptions(t),r=await e.resolveModule(n.wasm),i=new e(r),{instance:a,wasiBuiltins:o,wasiUserOverrides:s,memoryProxy:c}=await e.instantiate(r,i,n.wasi);i.setInstance(a),i.exports._initialize();let l=n.intrinsics===void 0?i.exports.qjs_init():i.exports.qjs_init2(n.intrinsics);if(l!==0)throw Error(`Failed to initialize QuickJS runtime`);if(n.extensions){let e=a.exports;for(let t of n.extensions){let n=await Ft(t,e,o,s,c);i.loadedExtensions.push(n),It(n,e)}}return e.applyLimits(i,n),i}static async restore(t,n){let r=e.normalizeOptions(n),i=await e.resolveModule(r.wasm),a=new e(i),{instance:o,wasiBuiltins:s,wasiUserOverrides:c,memoryProxy:l}=await e.instantiate(i,a,r.wasi);a.setInstance(o);let u=o.exports,d=a.exports.memory,f=d.buffer.byteLength/65536,p=Math.ceil(t.memory.byteLength/65536);if(p>f&&d.grow(p-f),t.extensions.length>0){let e=r.extensions??[];a.loadedExtensions=await Lt(e,t.extensions,u,s,c,l)}let m=new Uint8Array(d.buffer);return m.set(t.memory),a.exports.qjs_set_runtime_and_context(t.runtimePtr,t.contextPtr),a.exports.__stack_pointer.value=t.stackPointer,e.applyLimits(a,r),a}static serializeSnapshot(e){let t=new TextEncoder,n=4,r=[],i=[];for(let a of e.extensions){let e=t.encode(a.name),o=t.encode(a.initFn);r.push(e),i.push(o),n+=4+e.length+4+4+4+o.length}let a=Ut+n+e.memory.byteLength,o=new ArrayBuffer(a),s=new DataView(o),c=new Uint8Array(o);s.setUint32(0,Vt,!1),s.setUint8(4,Ht),s.setUint32(8,e.memory.byteLength,!0),s.setUint32(12,e.stackPointer,!0),s.setUint32(16,e.runtimePtr,!0),s.setUint32(20,e.contextPtr,!0);let l=Ut;s.setUint32(l,e.extensions.length,!0),l+=4;for(let t=0;t<e.extensions.length;t++){let n=e.extensions[t],a=r[t],o=i[t];s.setUint32(l,a.length,!0),l+=4,c.set(a,l),l+=a.length,s.setUint32(l,n.memoryBase,!0),l+=4,s.setUint32(l,n.tableBase,!0),l+=4,s.setUint32(l,o.length,!0),l+=4,c.set(o,l),l+=o.length}return c.set(e.memory,l),c}static deserializeSnapshot(e){if(e.length<Ut)throw Error(`Invalid snapshot: too small`);let t=new DataView(e.buffer,e.byteOffset,e.byteLength),n=t.getUint32(0,!1);if(n!==Vt)throw Error(`Invalid snapshot: bad magic (expected 0x${Vt.toString(16)}, got 0x${n.toString(16)})`);let r=t.getUint8(4);if(r!==Ht&&r!==1)throw Error(`Unsupported snapshot version: ${r} (expected ${Ht})`);let i=t.getUint32(8,!0),a=t.getUint32(12,!0),o=t.getUint32(16,!0),s=t.getUint32(20,!0),c=[],l=Ut;if(r>=2){let n=t.getUint32(24,!0),r=28,i=new TextDecoder;for(let a=0;a<n;a++){let n=t.getUint32(r,!0);r+=4;let a=i.decode(e.slice(r,r+n));r+=n;let o=t.getUint32(r,!0);r+=4;let s=t.getUint32(r,!0);r+=4;let l=t.getUint32(r,!0);r+=4;let u=i.decode(e.slice(r,r+l));r+=l,c.push({name:a,memoryBase:o,tableBase:s,initFn:u})}l=r}let u=l+i;if(e.length<u)throw Error(`Invalid snapshot: expected ${u} bytes, got ${e.length}`);let d=e.slice(l,l+i);return{memory:d,stackPointer:a,runtimePtr:o,contextPtr:s,extensions:c}}static normalizeOptions(e){return e?e instanceof WebAssembly.Module?{wasm:e}:typeof e==`object`&&(`wasm`in e||`wasi`in e||`memoryLimit`in e||`interruptHandler`in e||`onUnhandledRejection`in e||`moduleLoader`in e||`intrinsics`in e||`extensions`in e||`timezoneOffset`in e)?e:{wasm:e}:{}}static applyLimits(e,t){t.memoryLimit!==void 0&&e.exports.qjs_set_memory_limit(t.memoryLimit),t.interruptHandler&&(e.interruptHandler=t.interruptHandler,e.exports.qjs_set_interrupt_handler(1)),t.onUnhandledRejection&&(e.unhandledRejectionHandler=t.onUnhandledRejection,e.exports.qjs_set_promise_rejection_handler(1)),t.moduleLoader&&(e.moduleLoadHandler=t.moduleLoader.load,e.moduleNormalizeHandler=t.moduleLoader.normalize??null,e.exports.qjs_set_module_loader(1));let n=t.timezoneOffset;if(typeof n==`function`)e.timezoneOffsetHandler=e=>-n(e)*60;else if(typeof n==`number`){let t=-n*60;e.timezoneOffsetHandler=()=>t}else e.timezoneOffsetHandler=e=>-new Date(e*1e3).getTimezoneOffset()*60}static async resolveModule(e){if(e instanceof WebAssembly.Module)return e;if(e)return WebAssembly.compile(e);{let{readFile:e}=await import(`node:fs/promises`),t=await e(new URL(`../quickjs.wasm`,require(`url`).pathToFileURL(__filename).href));return WebAssembly.compile(t)}}static async instantiate(e,t,n){let r=null,i=new Proxy({},{get(e,t){return r[t]}}),a=kt(()=>r),o=n?n(i):void 0,s={...a,...o},c=(e,n,r,i,a)=>t.handleHostCall(e,n,r,i,a),l=()=>t.interruptHandler&&t.interruptHandler()?1:0,u=(e,n,r)=>{if(!t.unhandledRejectionHandler){t.exports.qjs_free_value(e),t.exports.qjs_free_value(n);return}let i=new Q(t,e),a=new Q(t,n);try{t.unhandledRejectionHandler(i,a,r!==0)}finally{i.dispose(),a.dispose()}},d=(e,n)=>{if(!t.moduleNormalizeHandler){let e=t.readCString(n);return t.writeString(e).ptr}let r=t.readCString(e),i=t.readCString(n);try{let e=t.moduleNormalizeHandler(r,i);return t.writeString(e).ptr}catch{return 0}},f=(e,n)=>{if(!t.moduleLoadHandler)return 0;let r=t.readCString(e);try{let e=t.moduleLoadHandler(r),{ptr:i,len:a}=t.writeString(e);return new Uint32Array(t.exports.memory.buffer,n,1)[0]=a,i}catch{return 0}},p=(e,n)=>{let r=Number(BigInt(e)<<32n|BigInt(n>>>0));return t.timezoneOffsetHandler?t.timezoneOffsetHandler(r):0},m=await WebAssembly.instantiate(e,{env:{host_call:c,host_interrupt:l,host_promise_rejection:u,host_module_normalize:d,host_module_load:f,host_get_timezone_offset:p},wasi_snapshot_preview1:s});return r=m.exports.memory,{instance:m,wasiBuiltins:a,wasiUserOverrides:o,memoryProxy:i}}handleHostCall(e,t,n,r,i){let a=this.decoder.decode(new Uint8Array(this.exports.memory.buffer,e,t)),o=this.hostCallbacks.get(a);if(!o)return this.exports.qjs_get_undefined();let s=new Q(this,n),c=[];if(r>0&&i!==0){let e=new DataView(this.exports.memory.buffer);for(let t=0;t<r;t++){let n=e.getUint32(i+t*4,!0);c.push(new Q(this,n))}}try{let e=o.call(s,...c);return this.exports.qjs_dup_value(e.ptr)}catch(e){let t=this.newError(e instanceof Error?e:String(e));return this.exports.qjs_throw(t.ptr),t.dispose(),0}}writeString(e){let t=this.encoder.encode(e),n=this.exports.wasm_malloc(t.length+1);if(n===0)throw Error(`wasm_malloc failed`);let r=new Uint8Array(this.exports.memory.buffer);return r.set(t,n),r[n+t.length]=0,{ptr:n,len:t.length}}readCString(e){let t=new Uint8Array(this.exports.memory.buffer),n=e;for(;t[n]!==0;)n++;return this.decoder.decode(t.slice(e,n))}throwIfException(e){if(this.exports.qjs_is_exception(e.ptr)!==0){let t=this.getException();throw e.dispose(),this._ownedHandles.add(t),new Gt(t)}return e}evalCode(e,t=`<eval>`,n=0){this.assertNotDisposed();let r=this.writeString(e),i=this.writeString(t),a=this.exports.qjs_eval(r.ptr,r.len,i.ptr,n);return this.exports.wasm_free(r.ptr),this.exports.wasm_free(i.ptr),this.throwIfException(new Q(this,a))}compile(e,t=`<compile>`,n=0,r=0){this.assertNotDisposed();let i=this.writeString(e),a=this.writeString(t),o=this.exports.wasm_malloc(4),s=this.exports.qjs_compile(i.ptr,i.len,a.ptr,n,r,o);if(this.exports.wasm_free(i.ptr),this.exports.wasm_free(a.ptr),s===0){this.exports.wasm_free(o);let e=this.getException();throw Error(`Compilation error: ${e.toString()}`)}let c=new Uint32Array(this.exports.memory.buffer,o,1)[0];this.exports.wasm_free(o);let l=new Uint8Array(this.exports.memory.buffer,s,c).slice();return this.exports.wasm_free(s),l}evalBytecode(e){this.assertNotDisposed();let t=this.exports.wasm_malloc(e.byteLength);new Uint8Array(this.exports.memory.buffer,t,e.byteLength).set(e);let n=this.exports.qjs_eval_bytecode(t,e.byteLength);return this.exports.wasm_free(t),this.throwIfException(new Q(this,n))}executePendingJobs(){this.assertNotDisposed();let e=0;for(;this.exports.qjs_is_job_pending();){let t=this.exports.qjs_execute_pending_job();if(t<0){let e=this.getException();throw Error(`Job execution error: ${e.toString()}`)}e++}return e}runGC(){this.assertNotDisposed(),this.exports.qjs_run_gc()}get gcThreshold(){return this.assertNotDisposed(),this.exports.qjs_get_gc_threshold()}set gcThreshold(e){this.assertNotDisposed(),this.exports.qjs_set_gc_threshold(e)}getMemoryUsage(){this.assertNotDisposed();let e=this.exports.wasm_malloc(26*8);this.exports.qjs_compute_memory_usage(e);let t=new BigInt64Array(this.exports.memory.buffer,e,26),n={mallocSize:Number(t[0]),mallocLimit:Number(t[1]),memoryUsedSize:Number(t[2]),mallocCount:Number(t[3]),memoryUsedCount:Number(t[4]),atomCount:Number(t[5]),atomSize:Number(t[6]),strCount:Number(t[7]),strSize:Number(t[8]),objCount:Number(t[9]),objSize:Number(t[10]),propCount:Number(t[11]),propSize:Number(t[12]),shapeCount:Number(t[13]),shapeSize:Number(t[14]),jsFuncCount:Number(t[15]),jsFuncSize:Number(t[16]),jsFuncCodeSize:Number(t[17]),jsFuncPc2lineCount:Number(t[18]),jsFuncPc2lineSize:Number(t[19]),cFuncCount:Number(t[20]),arrayCount:Number(t[21]),fastArrayCount:Number(t[22]),fastArrayElements:Number(t[23]),binaryObjectCount:Number(t[24]),binaryObjectSize:Number(t[25])};return this.exports.wasm_free(e),n}getGlobal(){return this.assertNotDisposed(),new Q(this,this.exports.qjs_get_global())}newString(e){this.assertNotDisposed();let{ptr:t,len:n}=this.writeString(e),r=this.exports.qjs_new_string(t,n);return this.exports.wasm_free(t),new Q(this,r)}newNumber(e){return this.assertNotDisposed(),new Q(this,this.exports.qjs_new_number(e))}newBigInt(e){this.assertNotDisposed();let t=Number(e&0xffffffffn),n=Number(e>>32n&0xffffffffn);return new Q(this,this.exports.qjs_new_big_int64(t,n))}newObject(){return this.assertNotDisposed(),new Q(this,this.exports.qjs_new_object())}newArray(){return this.assertNotDisposed(),new Q(this,this.exports.qjs_new_array())}newSymbolFor(e){this.assertNotDisposed();let{ptr:t,len:n}=this.writeString(e),r=new Q(this,this.exports.qjs_new_symbol(t,n,1));return this.exports.wasm_free(t),r}newArrayBuffer(e){this.assertNotDisposed();let t=e instanceof ArrayBuffer?new Uint8Array(e):e,n=this.exports.wasm_malloc(t.length);if(n===0)throw Error(`wasm_malloc failed`);new Uint8Array(this.exports.memory.buffer).set(t,n);let r=new Q(this,this.exports.qjs_new_array_buffer(n,t.length));return this.exports.wasm_free(n),r}newUint8Array(e){this.assertNotDisposed();let t=this.exports.wasm_malloc(e.length);if(t===0)throw Error(`wasm_malloc failed`);new Uint8Array(this.exports.memory.buffer).set(e,t);let n=new Q(this,this.exports.qjs_new_uint8_array(t,e.length));return this.exports.wasm_free(t),n}getUndefined(){return this.assertNotDisposed(),new Q(this,this.exports.qjs_get_undefined())}getNull(){return this.assertNotDisposed(),new Q(this,this.exports.qjs_get_null())}getTrue(){return this.assertNotDisposed(),new Q(this,this.exports.qjs_get_true())}getFalse(){return this.assertNotDisposed(),new Q(this,this.exports.qjs_get_false())}newFunction(e,t){if(this.assertNotDisposed(),this.hostCallbacks.has(e))throw Error(`Host callback with name "${e}" is already registered`);this.hostCallbacks.set(e,t);let{ptr:n,len:r}=this.writeString(e),i=this.exports.qjs_new_host_function(n,r,0);return this.exports.wasm_free(n),new Q(this,i)}newInternalFunction(e,t){this.hostCallbacks.set(e,t);let{ptr:n,len:r}=this.writeString(e),i=this.exports.qjs_new_host_function(n,r,0);return this.exports.wasm_free(n),new Q(this,i)}newPromise(){this.assertNotDisposed();let e=this.exports.wasm_malloc(4),t=this.exports.wasm_malloc(4),n=this.exports.qjs_new_promise(e,t),r=new DataView(this.exports.memory.buffer),i=r.getUint32(e,!0),a=r.getUint32(t,!0);this.exports.wasm_free(e),this.exports.wasm_free(t);let o=new Q(this,n),s=new Q(this,i),c=new Q(this,a),l=this;l._ownedHandles.add(s),l._ownedHandles.add(c);let u=null;return{handle:o,get settled(){if(!u){let e;u=new Promise(t=>{e=t});let t=`__settle:${l.nextInternalId++}`,n=l.newInternalFunction(t,()=>(e(),l.hostCallbacks.delete(t),l.undefined)),r=o.getProp(`then`),i=n.dup();l.callFunctionRaw(r,o,n,i).dispose(),r.dispose(),n.dispose(),i.dispose()}return u},resolve(e){l.callFunctionRaw(s,l.undefined,e).dispose(),l._ownedHandles.delete(s),s.dispose()},reject(e){l.callFunctionRaw(c,l.undefined,e).dispose(),l._ownedHandles.delete(c),c.dispose()}}}resolvePromise(e){if(this.assertNotDisposed(),!this.exports.qjs_is_promise(e.ptr))return Promise.resolve({value:e.dup()});let t=this.exports.qjs_promise_state(e.ptr);return t===1?Promise.resolve({value:new Q(this,this.exports.qjs_promise_result(e.ptr))}):t===2?Promise.resolve({error:new Q(this,this.exports.qjs_promise_result(e.ptr))}):new Promise(t=>{let n=this.nextInternalId++,r=`__onFulfilled:${n}`,i=`__onRejected:${n}`,a=this.newInternalFunction(r,(...e)=>{let n=e[0]?.dup()??this.undefined;return this.hostCallbacks.delete(r),this.hostCallbacks.delete(i),t({value:n}),this.undefined}),o=this.newInternalFunction(i,(...e)=>{let n=e[0]?.dup()??this.undefined;return this.hostCallbacks.delete(r),this.hostCallbacks.delete(i),t({error:n}),this.undefined}),s=e.getProp(`then`);this.callFunctionRaw(s,e,a,o).dispose(),s.dispose(),a.dispose(),o.dispose()})}callFunction(e,t,...n){return this.throwIfException(this.callFunctionRaw(e,t,...n))}callFunctionRaw(e,t,...n){this.assertNotDisposed();let r=n.length,i=0;if(r>0){i=this.exports.wasm_malloc(r*4);let e=new DataView(this.exports.memory.buffer);for(let t=0;t<r;t++)e.setUint32(i+t*4,n[t].ptr,!0)}let a=this.exports.qjs_call(e.ptr,t.ptr,r,i);return i&&this.exports.wasm_free(i),new Q(this,a)}setProp(e,t,n){if(this.assertNotDisposed(),typeof t==`string`){let{ptr:r}=this.writeString(t);this.exports.qjs_set_prop_string(e.ptr,r,n.ptr),this.exports.wasm_free(r)}else this.exports.qjs_set_prop_value(e.ptr,t.ptr,n.ptr)}defineProp(e,t,n,r){this.assertNotDisposed();let i=0;if(r?.configurable&&(i|=1),r?.writable&&(i|=2),r?.enumerable&&(i|=4),typeof t==`string`){let{ptr:r}=this.writeString(t);this.exports.qjs_define_prop_string(e.ptr,r,n.ptr,i),this.exports.wasm_free(r)}else this.exports.qjs_define_prop_value(e.ptr,t.ptr,n.ptr,i)}getProp(e,t){return this.assertNotDisposed(),new Q(this,this.exports.qjs_get_prop_value(e.ptr,t.ptr))}getException(){return this.assertNotDisposed(),new Q(this,this.exports.qjs_get_exception())}newError(e){this.assertNotDisposed();let t=this.exports.qjs_new_error(),n=new Q(this,t);if(typeof e==`string`){let t=this.newString(e);n.setProp(`message`,t),t.dispose()}else{let t=this.newString(e.message);if(n.setProp(`message`,t),t.dispose(),e.name){let t=this.newString(e.name);n.setProp(`name`,t),t.dispose()}if(e.stack){let t=this.newString(e.stack);n.setProp(`stack`,t),t.dispose()}}return n}typeof(e){this.assertNotDisposed();let t=this.exports;return t.qjs_is_undefined(e.ptr)?`undefined`:t.qjs_is_null(e.ptr)?`object`:t.qjs_is_bool(e.ptr)?`boolean`:t.qjs_is_number(e.ptr)?`number`:t.qjs_is_big_int(e.ptr)?`bigint`:t.qjs_is_string(e.ptr)?`string`:t.qjs_is_symbol(e.ptr)?`symbol`:t.qjs_is_function(e.ptr)?`function`:t.qjs_is_object(e.ptr)?`object`:`unknown`}dump(e){return this.assertNotDisposed(),this._dump(e,new Map)}_dump(e,t){let n=this.exports;if(!n.qjs_is_undefined(e.ptr)){if(n.qjs_is_null(e.ptr))return null;if(n.qjs_is_bool(e.ptr))return n.qjs_get_bool(e.ptr)!==0;if(n.qjs_is_number(e.ptr))return n.qjs_get_float64(e.ptr);if(n.qjs_is_string(e.ptr))return e.toString();if(n.qjs_is_big_int(e.ptr))return e.toBigInt();if(n.qjs_is_symbol(e.ptr)){let t=n.wasm_malloc(4),r=n.qjs_get_symbol_description(e.ptr,t),i=new DataView(n.memory.buffer),a=i.getUint32(t,!0);if(n.wasm_free(t),r===1){let e=new Q(this,a),t=e.toString();return e.dispose(),Symbol.for(t)}else if(r===2){let e=new Q(this,a);e.dispose();return}return}if(n.qjs_is_array_buffer(e.ptr))return e.toArrayBuffer();if(n.qjs_is_exception(e.ptr)){let e=this.getException(),t=e.toString();return e.dispose(),Error(t)}if(!n.qjs_is_function(e.ptr)){if(n.qjs_is_object(e.ptr)){let r=n.qjs_get_value_ptr(e.ptr);if(r){let e=t.get(r);if(e!==void 0)return e}}if(n.qjs_is_object(e.ptr)){let t=n.wasm_malloc(4),r=n.wasm_malloc(4),i=n.wasm_malloc(4),a=n.qjs_get_typed_array_buffer(e.ptr,t,r,i),o=new Q(this,a);if(n.qjs_is_exception(o.ptr)===0){let e=new DataView(n.memory.buffer),a=e.getUint32(t,!0),s=e.getUint32(r,!0),c=e.getUint32(i,!0);n.wasm_free(t),n.wasm_free(r),n.wasm_free(i);let l=n.wasm_malloc(4),u=n.qjs_get_array_buffer(o.ptr,l);if(n.wasm_free(l),o.dispose(),u!==0){let e=new Uint8Array(n.memory.buffer,u+a,s).slice();switch(c){case 1:return e;case 2:return new Uint16Array(e.buffer);case 4:return new Uint32Array(e.buffer);case 8:return new Float64Array(e.buffer);default:return e}}}else o.dispose(),n.wasm_free(t),n.wasm_free(r),n.wasm_free(i)}if(n.qjs_is_array(e.ptr)){let r=e.getProp(`length`),i=n.qjs_get_float64(r.ptr);r.dispose();let a=[],o=n.qjs_get_value_ptr(e.ptr);o&&t.set(o,a);for(let r=0;r<i;r++){let i=n.qjs_get_prop_uint32(e.ptr,r),o=new Q(this,i);a.push(this._dump(o,t)),o.dispose()}return a}if(n.qjs_is_error(e.ptr)){let t=e.getProp(`name`),n=e.getProp(`message`),r=e.getProp(`stack`),i=t.isUndefined?`Error`:t.toString(),a=n.isUndefined?``:n.toString(),o=r.isUndefined?void 0:r.toString();t.dispose(),n.dispose(),r.dispose();let s=Error(a);return s.name=i,o!==void 0&&(s.stack=o),s}if(n.qjs_is_object(e.ptr)){let r=n.qjs_get_own_property_names(e.ptr),i=new Q(this,r);if(n.qjs_is_exception(i.ptr)!==0)return i.dispose(),{};let a=i.getProp(`length`),o=n.qjs_get_float64(a.ptr);a.dispose();let s={},c=n.qjs_get_value_ptr(e.ptr);c&&t.set(c,s);for(let r=0;r<o;r++){let a=n.qjs_get_prop_uint32(i.ptr,r),o=new Q(this,a),c=o.toString();o.dispose();let l=e.getProp(c);s[c]=this._dump(l,t),l.dispose()}return i.dispose(),s}}}}hostToHandle(e){if(this.assertNotDisposed(),e===void 0)return this.undefined;if(e===null)return this.null;if(e===!0)return this.true;if(e===!1)return this.false;if(typeof e==`number`)return this.newNumber(e);if(typeof e==`string`)return this.newString(e);if(typeof e==`bigint`)return this.newBigInt(e);if(typeof e==`symbol`){let t=Symbol.keyFor(e);if(t!==void 0)return this.newSymbolFor(t);throw Error(`Cannot convert local symbol to QuickJS handle. Use Symbol.for() for cross-boundary symbols.`)}if(e instanceof Promise){let t=this.newPromise();return e.then(e=>{t.resolve(this.hostToHandle(e)),this.executePendingJobs()},e=>{t.reject(this.hostToHandle(e)),this.executePendingJobs()}),t.handle}if(e instanceof Error)return this.newError(e);if(e instanceof ArrayBuffer)return this.newArrayBuffer(e);if(e instanceof Uint8Array)return this.newUint8Array(e);if(ArrayBuffer.isView(e))return this.newArrayBuffer(new Uint8Array(e.buffer,e.byteOffset,e.byteLength));if(Array.isArray(e)){let t=this.newArray();for(let n=0;n<e.length;n++){let r=this.hostToHandle(e[n]);this.exports.qjs_set_prop_uint32(t.ptr,n,r.ptr),r.dispose()}return t}if(typeof e==`object`&&e){let t=this.newObject();for(let[n,r]of Object.entries(e)){let e=this.hostToHandle(r);t.setProp(n,e),e.dispose()}return t}return this.undefined}snapshot(){return this.assertNotDisposed(),{memory:new Uint8Array(this.exports.memory.buffer).slice(),stackPointer:this.exports.__stack_pointer.value,runtimePtr:this.exports.qjs_get_runtime_ptr(),contextPtr:this.exports.qjs_get_context_ptr(),extensions:this.loadedExtensions.map(e=>({name:e.name,memoryBase:e.memoryBase,tableBase:e.tableBase,initFn:e.initFn}))}}registerHostCallback(e,t){this.hostCallbacks.set(e,t)}dispose(){this.disposed||(this.disposed=!0,this._global=null,this._undefined=null,this._null=null,this._true=null,this._false=null,this._ownedHandles.clear(),this.hostCallbacks.clear(),this.exports=null,this.instance=null,this.module=null)}[Symbol.dispose](){this.dispose()}assertNotDisposed(){if(this.disposed)throw Error(`QuickJS instance has been disposed`)}_getExports(){return this.exports}_getMemory(){return this.exports.memory}_writeString(e){return this.writeString(e)}_readCString(e){return this.readCString(e)}},Gt=class extends Error{handle;#name;#message;#stack;constructor(e){let t={stack:[],error:void 0,hasError:!1};try{super(),this.handle=e,delete this.stack;let n=zt(t,e.getProp(`message`),!1);this.#name=e.getProp(`name`).consume(e=>e.isUndefined?`Error`:e.toString()),this.#message=n.isUndefined?e.toString():n.toString(),this.#stack=e.getProp(`stack`).consume(e=>e.isUndefined?void 0:e.toString())}catch(e){t.error=e,t.hasError=!0}finally{Bt(t)}}get name(){return this.#name}set name(e){this.#name=e}get message(){return this.#message}set message(e){this.#message=e}get stack(){return this.#stack}set stack(e){this.#stack=e}dispose(){this.handle.dispose()}[Symbol.dispose](){this.handle.dispose()}},Q=class e{vm;ptr;disposed=!1;constructor(e,t){this.vm=e,this.ptr=t}get isUndefined(){return this.vm._getExports().qjs_is_undefined(this.ptr)!==0}get isNull(){return this.vm._getExports().qjs_is_null(this.ptr)!==0}get isBool(){return this.vm._getExports().qjs_is_bool(this.ptr)!==0}get isNumber(){return this.vm._getExports().qjs_is_number(this.ptr)!==0}get isString(){return this.vm._getExports().qjs_is_string(this.ptr)!==0}get isSymbol(){return this.vm._getExports().qjs_is_symbol(this.ptr)!==0}get isBigInt(){return this.vm._getExports().qjs_is_big_int(this.ptr)!==0}get isObject(){return this.vm._getExports().qjs_is_object(this.ptr)!==0}get isArray(){return this.vm._getExports().qjs_is_array(this.ptr)!==0}get isFunction(){return this.vm._getExports().qjs_is_function(this.ptr)!==0}get isError(){return this.vm._getExports().qjs_is_error(this.ptr)!==0}get isPromise(){return this.vm._getExports().qjs_is_promise(this.ptr)!==0}get isArrayBuffer(){return this.vm._getExports().qjs_is_array_buffer(this.ptr)!==0}get promiseState(){return this.vm._getExports().qjs_promise_state(this.ptr)}get typeof(){return this.vm.typeof(this)}get length(){let e=this.getProp(`length`),t=e.toNumber();return e.dispose(),t}get constructorName(){let e=this.getProp(`constructor`);if(e.isUndefined||e.isNull){e.dispose();return}let t=e.getProp(`name`);if(e.dispose(),t.isUndefined||t.isNull){t.dispose();return}let n=t.toString();return t.dispose(),n}keys(){let t=this.vm._getExports(),n=t.qjs_get_own_property_names(this.ptr),r=new e(this.vm,n);if(t.qjs_is_exception(r.ptr)!==0)return r.dispose(),[];let i=r.getProp(`length`),a=t.qjs_get_float64(i.ptr);i.dispose();let o=[];for(let n=0;n<a;n++){let i=t.qjs_get_prop_uint32(r.ptr,n),a=new e(this.vm,i);o.push(a.toString()),a.dispose()}return r.dispose(),o}getOwnPropertyNames(){let t=this.vm._getExports(),n=t.qjs_get_own_property_names_all(this.ptr),r=new e(this.vm,n);if(t.qjs_is_exception(r.ptr)!==0)return r.dispose(),[];let i=r.getProp(`length`),a=t.qjs_get_float64(i.ptr);i.dispose();let o=[];for(let n=0;n<a;n++){let i=t.qjs_get_prop_uint32(r.ptr,n),a=new e(this.vm,i);o.push(a.toString()),a.dispose()}return r.dispose(),o}hasOwnProperty(e){let{ptr:t}=this.vm._writeString(e),n=this.vm._getExports().qjs_has_own_property(this.ptr,t);return this.vm._getExports().wasm_free(t),n===1}propertyIsEnumerable(e){let{ptr:t}=this.vm._writeString(e),n=this.vm._getExports().qjs_property_is_enumerable(this.ptr,t);return this.vm._getExports().wasm_free(t),n===1}getPrototypeOf(){let t=this.vm._getExports().qjs_get_prototype_of(this.ptr);return new e(this.vm,t)}getProp(t){let{ptr:n}=this.vm._writeString(t),r=this.vm._getExports().qjs_get_prop_string(this.ptr,n);return this.vm._getExports().wasm_free(n),new e(this.vm,r)}setProp(e,t){let{ptr:n}=this.vm._writeString(e);this.vm._getExports().qjs_set_prop_string(this.ptr,n,t.ptr),this.vm._getExports().wasm_free(n)}defineProp(e,t,n){let r=0;if(n?.configurable&&(r|=1),n?.writable&&(r|=2),n?.enumerable&&(r|=4),typeof e==`string`){let{ptr:n}=this.vm._writeString(e);this.vm._getExports().qjs_define_prop_string(this.ptr,n,t.ptr,r),this.vm._getExports().wasm_free(n)}else this.vm._getExports().qjs_define_prop_value(this.ptr,e.ptr,t.ptr,r)}toNumber(){return this.vm._getExports().qjs_get_float64(this.ptr)}toBigInt(){let e=this.vm._getExports(),t=e.wasm_malloc(4),n=e.wasm_malloc(4),r=e.qjs_get_big_int64(this.ptr,t,n);if(r!==0)throw e.wasm_free(t),e.wasm_free(n),Error(`Failed to convert value to BigInt`);let i=new DataView(e.memory.buffer),a=i.getUint32(t,!0),o=i.getInt32(n,!0);return e.wasm_free(t),e.wasm_free(n),BigInt(o)<<32n|BigInt(a)}toArrayBuffer(){let t=this.vm._getExports(),n=t.wasm_malloc(4);if(t.qjs_is_array_buffer(this.ptr)){let e=t.qjs_get_array_buffer(this.ptr,n);if(e===0)throw t.wasm_free(n),Error(`Failed to get ArrayBuffer data`);let r=new DataView(t.memory.buffer),i=r.getUint32(n,!0);return t.wasm_free(n),new Uint8Array(t.memory.buffer,e,i).slice().buffer}t.wasm_free(n);let r=t.wasm_malloc(4),i=t.wasm_malloc(4),a=t.wasm_malloc(4),o=t.qjs_get_typed_array_buffer(this.ptr,r,i,a),s=new e(this.vm,o);if(this.vm._getExports().qjs_is_exception(s.ptr)!==0)throw s.dispose(),t.wasm_free(r),t.wasm_free(i),t.wasm_free(a),Error(`Value is not an ArrayBuffer or typed array`);let c=new DataView(t.memory.buffer),l=c.getUint32(r,!0),u=c.getUint32(i,!0);t.wasm_free(r),t.wasm_free(i),t.wasm_free(a);let d=t.wasm_malloc(4),f=t.qjs_get_array_buffer(s.ptr,d);if(t.wasm_free(d),s.dispose(),f===0)throw Error(`Failed to get ArrayBuffer data from typed array`);return new Uint8Array(t.memory.buffer,f+l,u).slice().buffer}toUint8Array(){return new Uint8Array(this.toArrayBuffer())}toString(){let e=this.vm._getExports().qjs_get_string(this.ptr);if(e===0)return`<null>`;let t=this.vm._readCString(e);return this.vm._getExports().qjs_free_cstring(e),t}consume(e){try{return e(this)}finally{this.dispose()}}dup(){return new e(this.vm,this.vm._getExports().qjs_dup_value(this.ptr))}dispose(){if(!this.disposed){this.disposed=!0;let e=this.vm._getExports();e&&e.qjs_free_value(this.ptr)}}[Symbol.dispose](){this.dispose()}},Kt=e.__toESM(e.require_src(),1);const $=(0,Kt.default)(`pac-proxy-agent`),qt=e=>e.servername===void 0&&e.host&&!d.isIP(e.host)?{...e,servername:e.host}:e;var Jt=class extends e.Agent{constructor(e,t){super(t),this.clearResolverPromise=()=>{this.resolverPromise=void 0};let n=typeof e==`string`?e:e.href;this.uri=new c.URL(n.replace(/^pac\+/i,``)),$(`Creating PacProxyAgent with URI %o`,this.uri.href),this.opts={...t},this.cache=void 0,this.resolver=void 0,this.resolverHash=``,this.resolverPromise=void 0,this.opts.filename||(this.opts.filename=this.uri.href)}getResolver(){return this.resolverPromise||(this.resolverPromise=this.loadResolver(),this.resolverPromise.then(this.clearResolverPromise,this.clearResolverPromise)),this.resolverPromise}async loadResolver(){try{let[e,t]=await Promise.all([Wt.create(),this.loadPacFile()]),n=p.createHash(`sha1`).update(t).digest(`hex`);return this.resolver&&this.resolverHash===n?($(`Same sha1 hash for code - contents have not changed, reusing previous proxy resolver`),e.dispose(),this.resolver):(this.qjs&&this.qjs.dispose(),this.qjs=e,$(`Creating new proxy resolver instance`),this.resolver=Et(e,t,this.opts),this.resolverHash=n,this.resolver)}catch(e){if(this.resolver&&e.code===`ENOTMODIFIED`)return $(`Got ENOTMODIFIED response, reusing previous proxy resolver`),this.resolver;throw e}}async loadPacFile(){$(`Loading PAC file: %o`,this.uri);let t=await xe(this.uri,{...this.opts,cache:this.cache});$("Got `Readable` instance for URI"),this.cache=t;let n=await e.toBuffer(t);return $(`Read %o byte PAC file from URI`,n.length),n.toString(`utf8`)}async connect(e,t){let{secureEndpoint:r}=t,i=e.getHeader(`upgrade`)===`websocket`,a=await this.getResolver(),o=r?`https:`:`http:`,s=t.host&&d.isIPv6(t.host)?`[${t.host}]`:t.host,l=r?443:80,u=Object.assign(new c.URL(e.path,`${o}//${s}`),l?void 0:{port:t.port});$(`url: %s`,u);let p=await a(u);p||=`DIRECT`;let m=String(p).trim().split(/\s*;\s*/g).filter(Boolean);this.opts.fallbackToDirect&&!m.includes(`DIRECT`)&&m.push(`DIRECT`);for(let a of m){let o=null,s=null,[c,l]=a.split(/\s+/);if($(`Attempting to use proxy: %o`,a),c===`DIRECT`)s=r?f.connect(qt(t)):d.connect(t);else if(c===`SOCKS`||c===`SOCKS5`){let{SocksProxyAgent:e}=await Promise.resolve().then(function(){return require(`./dist-DY7shNXC.js`)});o=new e(`socks://${l}`,this.opts)}else if(c===`SOCKS4`){let{SocksProxyAgent:e}=await Promise.resolve().then(function(){return require(`./dist-DY7shNXC.js`)});o=new e(`socks4a://${l}`,this.opts)}else if(c===`PROXY`||c===`HTTP`||c===`HTTPS`){let e=`${c===`HTTPS`?`https`:`http`}://${l}`;if(r||i){let{HttpsProxyAgent:t}=await Promise.resolve().then(function(){return require(`./dist-Cz6osHpM.js`)});o=new t(e,this.opts)}else{let{HttpProxyAgent:t}=await Promise.resolve().then(function(){return require(`./dist-BKebfWjz.js`)});o=new t(e,this.opts)}}try{if(s)return await(0,n.once)(s,`connect`),e.emit(`proxy`,{proxy:a,socket:s}),s;if(o){let n=await o.connect(e,t);if(!(n instanceof d.Socket))throw Error("Expected a `net.Socket` to be returned from agent");return e.emit(`proxy`,{proxy:a,socket:n}),n}throw Error(`Could not determine proxy type for: ${a}`)}catch(t){$(`Got error for proxy %o: %o`,a,t),e.emit(`proxy`,{proxy:a,error:t})}}throw Error(`Failed to establish a socket connection to proxies: ${JSON.stringify(m)}`)}};Jt.protocols=[`pac+data`,`pac+file`,`pac+ftp`,`pac+http`,`pac+https`],exports.PacProxyAgent=Jt;