!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.recast=t():e.recast=t()}(window,(function(){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var i=t[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var i in e)n.d(r,i,function(t){return e[t]}.bind(null,i));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=31)}([function(e,t,n){"use strict";n.r(t),n.d(t,"__extends",(function(){return i})),n.d(t,"__assign",(function(){return a})),n.d(t,"__rest",(function(){return s})),n.d(t,"__decorate",(function(){return o})),n.d(t,"__param",(function(){return u})),n.d(t,"__metadata",(function(){return l})),n.d(t,"__awaiter",(function(){return c})),n.d(t,"__generator",(function(){return p})),n.d(t,"__createBinding",(function(){return h})),n.d(t,"__exportStar",(function(){return d})),n.d(t,"__values",(function(){return f})),n.d(t,"__read",(function(){return m})),n.d(t,"__spread",(function(){return y})),n.d(t,"__spreadArrays",(function(){return g})),n.d(t,"__spreadArray",(function(){return x})),n.d(t,"__await",(function(){return v})),n.d(t,"__asyncGenerator",(function(){return b})),n.d(t,"__asyncDelegator",(function(){return E})),n.d(t,"__asyncValues",(function(){return S})),n.d(t,"__makeTemplateObject",(function(){return D})),n.d(t,"__importStar",(function(){return A})),n.d(t,"__importDefault",(function(){return T})),n.d(t,"__classPrivateFieldGet",(function(){return w})),n.d(t,"__classPrivateFieldSet",(function(){return k})),n.d(t,"__classPrivateFieldIn",(function(){return F}));var r=function(e,t){return(r=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])})(e,t)};function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}r(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}var a=function(){return(a=Object.assign||function(e){for(var t,n=1,r=arguments.length;n=0;o--)(i=e[o])&&(s=(a<3?i(s):a>3?i(t,n,s):i(t,n))||s);return a>3&&s&&Object.defineProperty(t,n,s),s}function u(e,t){return function(n,r){t(n,r,e)}}function l(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)}function c(e,t,n,r){return new(n||(n=Promise))((function(i,a){function s(e){try{u(r.next(e))}catch(e){a(e)}}function o(e){try{u(r.throw(e))}catch(e){a(e)}}function u(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,o)}u((r=r.apply(e,t||[])).next())}))}function p(e,t){var n,r,i,a,s={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return a={next:o(0),throw:o(1),return:o(2)},"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function o(a){return function(o){return function(a){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,r&&(i=2&a[0]?r.return:a[0]?r.throw||((i=r.return)&&i.call(r),0):r.next)&&!(i=i.call(r,a[1])).done)return i;switch(r=0,i&&(a=[2&a[0],i.value]),a[0]){case 0:case 1:i=a;break;case 4:return s.label++,{value:a[1],done:!1};case 5:s.label++,r=a[1],a=[0];continue;case 7:a=s.ops.pop(),s.trys.pop();continue;default:if(!(i=s.trys,(i=i.length>0&&i[i.length-1])||6!==a[0]&&2!==a[0])){s=0;continue}if(3===a[0]&&(!i||a[1]>i[0]&&a[1]=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function m(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var r,i,a=n.call(e),s=[];try{for(;(void 0===t||t-- >0)&&!(r=a.next()).done;)s.push(r.value)}catch(e){i={error:e}}finally{try{r&&!r.done&&(n=a.return)&&n.call(a)}finally{if(i)throw i.error}}return s}function y(){for(var e=[],t=0;t1||o(e,t)}))})}function o(e,t){try{(n=i[e](t)).value instanceof v?Promise.resolve(n.value.v).then(u,l):c(a[0][2],n)}catch(e){c(a[0][3],e)}var n}function u(e){o("next",e)}function l(e){o("throw",e)}function c(e,t){e(t),a.shift(),a.length&&o(a[0][0],a[0][1])}}function E(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:v(e[r](t)),done:"return"===r}:i?i(t):t}:i}}function S(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t,n=e[Symbol.asyncIterator];return n?n.call(e):(e=f(e),t={},r("next"),r("throw"),r("return"),t[Symbol.asyncIterator]=function(){return this},t);function r(n){t[n]=e[n]&&function(t){return new Promise((function(r,i){(function(e,t,n,r){Promise.resolve(r).then((function(t){e({value:t,done:n})}),t)})(r,i,(t=e[n](t)).done,t.value)}))}}}function D(e,t){return Object.defineProperty?Object.defineProperty(e,"raw",{value:t}):e.raw=t,e}var C=Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t};function A(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)"default"!==n&&Object.prototype.hasOwnProperty.call(e,n)&&h(t,e,n);return C(t,e),t}function T(e){return e&&e.__esModule?e:{default:e}}function w(e,t,n,r){if("a"===n&&!r)throw new TypeError("Private accessor was defined without a getter");if("function"==typeof t?e!==t||!r:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===n?r:"a"===n?r.call(e):r?r.value:t.get(e)}function k(e,t,n,r,i){if("m"===r)throw new TypeError("Private method is not writable");if("a"===r&&!i)throw new TypeError("Private accessor was defined without a setter");if("function"==typeof t?e!==t||!i:!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return"a"===r?i.call(e,n):i?i.value=n:t.set(e,n),n}function F(e,t){if(null===t||"object"!=typeof t&&"function"!=typeof t)throw new TypeError("Cannot use 'in' operator on non-object");return"function"==typeof e?t===e:e.has(t)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Def=void 0;var r=n(0),i=Object.prototype,a=i.toString,s=i.hasOwnProperty,o=function(){function e(){}return e.prototype.assert=function(e,t){if(!this.check(e,t)){var n=m(e);throw new Error(n+" does not match type "+this)}return!0},e.prototype.arrayOf=function(){return new u(this)},e}(),u=function(e){function t(t){var n=e.call(this)||this;return n.elemType=t,n.kind="ArrayType",n}return r.__extends(t,e),t.prototype.toString=function(){return"["+this.elemType+"]"},t.prototype.check=function(e,t){var n=this;return Array.isArray(e)&&e.every((function(e){return n.elemType.check(e,t)}))},t}(o),l=function(e){function t(t){var n=e.call(this)||this;return n.value=t,n.kind="IdentityType",n}return r.__extends(t,e),t.prototype.toString=function(){return String(this.value)},t.prototype.check=function(e,t){var n=e===this.value;return n||"function"!=typeof t||t(this,e),n},t}(o),c=function(e){function t(t){var n=e.call(this)||this;return n.fields=t,n.kind="ObjectType",n}return r.__extends(t,e),t.prototype.toString=function(){return"{ "+this.fields.join(", ")+" }"},t.prototype.check=function(e,t){return a.call(e)===a.call({})&&this.fields.every((function(n){return n.type.check(e[n.name],t)}))},t}(o),p=function(e){function t(t){var n=e.call(this)||this;return n.types=t,n.kind="OrType",n}return r.__extends(t,e),t.prototype.toString=function(){return this.types.join(" | ")},t.prototype.check=function(e,t){return this.types.some((function(n){return n.check(e,t)}))},t}(o),h=function(e){function t(t,n){var r=e.call(this)||this;return r.name=t,r.predicate=n,r.kind="PredicateType",r}return r.__extends(t,e),t.prototype.toString=function(){return this.name},t.prototype.check=function(e,t){var n=this.predicate(e,t);return n||"function"!=typeof t||t(this,e),n},t}(o),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(!0!==this.finalized||!0!==t.finalized)throw new Error("");return s.call(t.allSupertypes,this.typeName)}throw new Error(t+" is not a Def")},e.prototype.checkAllFields=function(e,t){var n=this.allFields;if(!0!==this.finalized)throw new Error(""+this.typeName);return null!==e&&"object"==typeof e&&Object.keys(n).every((function(r){var i=n[r],a=i.type,s=i.getValue(e);return a.check(s,t)}))},e.prototype.bases=function(){for(var e=[],t=0;t=0)return i[a];if("string"!=typeof r)throw new Error("missing name");return new h(r,e)}return new l(e)},def:function(e){return s.call(w,e)?w[e]:w[e]=new F(e)},hasDef:function(e){return s.call(w,e)}},n=[],i=[];function o(e,t){var r=a.call(t),s=new h(e,(function(e){return a.call(e)===r}));return t&&"function"==typeof t.constructor&&(n.push(t.constructor),i.push(s)),s}var y=o("string","truthy"),g=o("function",(function(){})),x=o("array",[]),v=o("object",{}),b=o("RegExp",/./),E=o("Date",new Date),S=o("number",3),D=o("boolean",!0),C=o("null",null),A=o("undefined",void 0),T={string:y,function:g,array:x,object:v,RegExp:b,Date:E,number:S,boolean:D,null:C,undefined:A},w=Object.create(null);function k(e){if(e&&"object"==typeof e){var t=e.type;if("string"==typeof t&&s.call(w,t)){var n=w[t];if(n.finalized)return n}}return null}var F=function(e){function n(t){var n=e.call(this,new h(t,(function(e,t){return n.check(e,t)})),t)||this;return n}return r.__extends(n,e),n.prototype.check=function(e,t){if(!0!==this.finalized)throw new Error("prematurely checking unfinalized type "+this.typeName);if(null===e||"object"!=typeof e)return!1;var n=k(e);return n?t&&n===this?this.checkAllFields(e,t):!!this.isSupertypeOf(n)&&(!t||n.checkAllFields(e,t)&&this.checkAllFields(e,!1)):("SourceLocation"===this.typeName||"Position"===this.typeName)&&this.checkAllFields(e,t)},n.prototype.build=function(){for(var e=this,t=[],n=0;n=0&&function(e){var t=N(e);if(P[t])return;var n=P[_(e)];if(!n)return;var r=function(){for(var e=[],t=0;t=e}),a+" >= "+e)},defaults:{null:function(){return null},emptyArray:function(){return[]},false:function(){return!1},true:function(){return!0},undefined:function(){},"use strict":function(){return"use strict"}},isPrimitive:n.from((function(e){if(null===e)return!0;var t=typeof e;return"object"!==t&&"function"!==t}),s.toString())}},e.exports=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.visit=t.use=t.Type=t.someField=t.PathVisitor=t.Path=t.NodePath=t.namedTypes=t.getSupertypeNames=t.getFieldValue=t.getFieldNames=t.getBuilderName=t.finalize=t.eachField=t.defineMethod=t.builtInTypes=t.builders=t.astNodesAreEquivalent=void 0;var r=n(0),i=r.__importDefault(n(34)),a=r.__importDefault(n(15)),s=r.__importDefault(n(16)),o=r.__importDefault(n(17)),u=r.__importDefault(n(18)),l=r.__importDefault(n(19)),c=r.__importDefault(n(20)),p=r.__importDefault(n(7)),h=r.__importDefault(n(38)),d=r.__importDefault(n(21)),f=r.__importDefault(n(39)),m=r.__importDefault(n(40)),y=r.__importDefault(n(41)),g=r.__importDefault(n(10)),x=n(42);Object.defineProperty(t,"namedTypes",{enumerable:!0,get:function(){return x.namedTypes}});var v=i.default([a.default,s.default,o.default,u.default,l.default,c.default,p.default,h.default,d.default,f.default,m.default,y.default,g.default]),b=v.astNodesAreEquivalent,E=v.builders,S=v.builtInTypes,D=v.defineMethod,C=v.eachField,A=v.finalize,T=v.getBuilderName,w=v.getFieldNames,k=v.getFieldValue,F=v.getSupertypeNames,P=v.namedTypes,B=v.NodePath,_=v.Path,N=v.PathVisitor,I=v.someField,M=v.Type,O=v.use,L=v.visit;t.astNodesAreEquivalent=b,t.builders=E,t.builtInTypes=S,t.defineMethod=D,t.eachField=C,t.finalize=A,t.getBuilderName=T,t.getFieldNames=w,t.getFieldValue=k,t.getSupertypeNames=F,t.NodePath=B,t.Path=_,t.PathVisitor=N,t.someField=I,t.Type=M,t.use=O,t.visit=L,Object.assign(x.namedTypes,P)},function(e,t,n){"use strict";(function(t){var r=n(45); /*! * The buffer module from node.js, for the browser. * * @author Feross Aboukhadijeh * @license MIT */function i(e,t){if(e===t)return 0;for(var n=e.length,r=t.length,i=0,a=Math.min(n,r);i=0;l--)if(c[l]!==p[l])return!1;for(l=c.length-1;l>=0;l--)if(o=c[l],!v(e[o],t[o],n,r))return!1;return!0}(e,t,n,r))}return n?e===t:e==t}function b(e){return"[object Arguments]"==Object.prototype.toString.call(e)}function E(e,t){if(!e||!t)return!1;if("[object RegExp]"==Object.prototype.toString.call(t))return t.test(e);try{if(e instanceof t)return!0}catch(e){}return!Error.isPrototypeOf(t)&&!0===t.call({},e)}function S(e,t,n,r){var i;if("function"!=typeof t)throw new TypeError('"block" argument must be a function');"string"==typeof n&&(r=n,n=null),i=function(e){var t;try{e()}catch(e){t=e}return t}(t),r=(n&&n.name?" ("+n.name+").":".")+(r?" "+r:"."),e&&!i&&g(i,n,"Missing expected exception"+r);var a="string"==typeof r,o=!e&&i&&!n;if((!e&&s.isError(i)&&a&&E(i,n)||o)&&g(i,n,"Got unwanted exception"+r),e&&i&&n&&!E(i,n)||!e&&i)throw i}h.AssertionError=function(e){var t;this.name="AssertionError",this.actual=e.actual,this.expected=e.expected,this.operator=e.operator,e.message?(this.message=e.message,this.generatedMessage=!1):(this.message=m(y((t=this).actual),128)+" "+t.operator+" "+m(y(t.expected),128),this.generatedMessage=!0);var n=e.stackStartFunction||g;if(Error.captureStackTrace)Error.captureStackTrace(this,n);else{var r=new Error;if(r.stack){var i=r.stack,a=f(n),s=i.indexOf("\n"+a);if(s>=0){var o=i.indexOf("\n",s+1);i=i.substring(o+1)}this.stack=i}}},s.inherits(h.AssertionError,Error),h.fail=g,h.ok=x,h.equal=function(e,t,n){e!=t&&g(e,t,n,"==",h.equal)},h.notEqual=function(e,t,n){e==t&&g(e,t,n,"!=",h.notEqual)},h.deepEqual=function(e,t,n){v(e,t,!1)||g(e,t,n,"deepEqual",h.deepEqual)},h.deepStrictEqual=function(e,t,n){v(e,t,!0)||g(e,t,n,"deepStrictEqual",h.deepStrictEqual)},h.notDeepEqual=function(e,t,n){v(e,t,!1)&&g(e,t,n,"notDeepEqual",h.notDeepEqual)},h.notDeepStrictEqual=function e(t,n,r){v(t,n,!0)&&g(t,n,r,"notDeepStrictEqual",e)},h.strictEqual=function(e,t,n){e!==t&&g(e,t,n,"===",h.strictEqual)},h.notStrictEqual=function(e,t,n){e===t&&g(e,t,n,"!==",h.notStrictEqual)},h.throws=function(e,t,n){S(!0,e,t,n)},h.doesNotThrow=function(e,t,n){S(!1,e,t,n)},h.ifError=function(e){if(e)throw e},h.strict=r((function e(t,n){t||g(t,!0,n,"==",e)}),h,{equal:h.strictEqual,deepEqual:h.deepStrictEqual,notEqual:h.notStrictEqual,notDeepEqual:h.notDeepStrictEqual}),h.strict.strict=h.strict;var D=Object.keys||function(e){var t=[];for(var n in e)o.call(e,n)&&t.push(n);return t}}).call(this,n(44))},function(e,t,n){"use strict";var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};Object.defineProperty(t,"__esModule",{value:!0}),t.isTrailingCommaEnabled=t.getParentExportDeclaration=t.isExportDeclaration=t.fixFaultyLocations=t.getTrueLoc=t.composeSourceMaps=t.copyPos=t.comparePos=t.getUnionOfKeys=t.getOption=void 0;var i=n(0),a=i.__importDefault(n(4)),s=i.__importStar(n(3)).namedTypes,o=i.__importDefault(n(24)),u=o.default.SourceMapConsumer,l=o.default.SourceMapGenerator,c=Object.prototype.hasOwnProperty;function p(e,t){return e.line-t.line||e.column-t.column}function h(e){return{line:e.line,column:e.column}}function d(e,t){e&&t&&(p(t.start,e.start)<0&&(e.start=t.start),p(e.end,t.end)<0&&(e.end=t.end))}function f(e){if(e)switch(e.type){case"ExportDeclaration":case"ExportDefaultDeclaration":case"ExportDefaultSpecifier":case"DeclareExportDeclaration":case"ExportNamedDeclaration":case"ExportAllDeclaration":return!0}return!1}t.getOption=function(e,t,n){return e&&c.call(e,t)?e[t]:n},t.getUnionOfKeys=function(){for(var e=[],t=0;t=0;c--)"."===(s=u[c])?u.splice(c,1):".."===s?l++:l>0&&(""===s?(u.splice(c+1,l),l=0):(u.splice(c,2),l--));return""===(n=u.join("/"))&&(n=o?"/":"."),r?(r.path=n,a(r)):n}function o(e,t){""===e&&(e="."),""===t&&(t=".");var n=i(t),o=i(e);if(o&&(e=o.path||"/"),n&&!n.scheme)return o&&(n.scheme=o.scheme),a(n);if(n||t.match(r))return t;if(o&&!o.host&&!o.path)return o.host=t,a(o);var u="/"===t.charAt(0)?t:s(e.replace(/\/+$/,"")+"/"+t);return o?(o.path=u,a(o)):u}t.urlParse=i,t.urlGenerate=a,t.normalize=s,t.join=o,t.isAbsolute=function(e){return"/"===e.charAt(0)||n.test(e)},t.relative=function(e,t){""===e&&(e="."),e=e.replace(/\/$/,"");for(var n=0;0!==t.indexOf(e+"/");){var r=e.lastIndexOf("/");if(r<0)return t;if((e=e.slice(0,r)).match(/^([^\/]+:\/)?\/*$/))return t;++n}return Array(n+1).join("../")+t.substr(e.length+1)};var u=!("__proto__"in Object.create(null));function l(e){return e}function c(e){if(!e)return!1;var t=e.length;if(t<9)return!1;if(95!==e.charCodeAt(t-1)||95!==e.charCodeAt(t-2)||111!==e.charCodeAt(t-3)||116!==e.charCodeAt(t-4)||111!==e.charCodeAt(t-5)||114!==e.charCodeAt(t-6)||112!==e.charCodeAt(t-7)||95!==e.charCodeAt(t-8)||95!==e.charCodeAt(t-9))return!1;for(var n=t-10;n>=0;n--)if(36!==e.charCodeAt(n))return!1;return!0}function p(e,t){return e===t?0:null===e?1:null===t?-1:e>t?1:-1}t.toSetString=u?l:function(e){return c(e)?"$"+e:e},t.fromSetString=u?l:function(e){return c(e)?e.slice(1):e},t.compareByOriginalPositions=function(e,t,n){var r=p(e.source,t.source);return 0!==r||0!==(r=e.originalLine-t.originalLine)||0!==(r=e.originalColumn-t.originalColumn)||n||0!==(r=e.generatedColumn-t.generatedColumn)||0!==(r=e.generatedLine-t.generatedLine)?r:p(e.name,t.name)},t.compareByGeneratedPositionsDeflated=function(e,t,n){var r=e.generatedLine-t.generatedLine;return 0!==r||0!==(r=e.generatedColumn-t.generatedColumn)||n||0!==(r=p(e.source,t.source))||0!==(r=e.originalLine-t.originalLine)||0!==(r=e.originalColumn-t.originalColumn)?r:p(e.name,t.name)},t.compareByGeneratedPositionsInflated=function(e,t){var n=e.generatedLine-t.generatedLine;return 0!==n||0!==(n=e.generatedColumn-t.generatedColumn)||0!==(n=p(e.source,t.source))||0!==(n=e.originalLine-t.originalLine)||0!==(n=e.originalColumn-t.originalColumn)?n:p(e.name,t.name)},t.parseSourceMapInput=function(e){return JSON.parse(e.replace(/^\)]}'[^\n]*\n/,""))},t.computeSourceURL=function(e,t,n){if(t=t||"",e&&("/"!==e[e.length-1]&&"/"!==t[0]&&(e+="/"),t=e+t),n){var r=i(n);if(!r)throw new Error("sourceMapURL could not be parsed");if(r.path){var u=r.path.lastIndexOf("/");u>=0&&(r.path=r.path.substring(0,u+1))}t=o(a(r),t)}return s(t)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(0),i=n(9),a=r.__importDefault(n(20)),s=r.__importDefault(n(1)),o=r.__importDefault(n(2));t.default=function(e){e.use(a.default);var t=e.use(s.default),n=t.Type.def,u=t.Type.or,l=e.use(o.default).defaults;n("ImportExpression").bases("Expression").build("source").field("source",n("Expression")),n("ExportAllDeclaration").build("source","exported").field("source",n("Literal")).field("exported",u(n("Identifier"),null)),n("ChainElement").bases("Node").field("optional",Boolean,l.false),n("CallExpression").bases("Expression","ChainElement"),n("MemberExpression").bases("Expression","ChainElement"),n("ChainExpression").bases("Expression").build("expression").field("expression",n("ChainElement")),n("OptionalCallExpression").bases("CallExpression").build("callee","arguments","optional").field("optional",Boolean,l.true),n("OptionalMemberExpression").bases("MemberExpression").build("object","property","computed","optional").field("optional",Boolean,l.true);var c=u.apply(void 0,r.__spreadArrays(i.LogicalOperators,["??"]));n("LogicalExpression").field("operator",c)},e.exports=t.default},function(e,t,n){"use strict";var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};Object.defineProperty(t,"__esModule",{value:!0}),t.concat=t.fromString=t.countSpaces=t.Lines=void 0;var i=n(0),a=i.__importDefault(n(4)),s=i.__importDefault(n(24)),o=n(11),u=n(5),l=i.__importDefault(n(57)),c=function(){function e(e,t){void 0===t&&(t=null),this.infos=e,this.mappings=[],this.cachedSourceMap=null,this.cachedTabWidth=void 0,a.default.ok(e.length>0),this.length=e.length,this.name=t||null,this.name&&this.mappings.push(new l.default(this,{start:this.firstPos(),end:this.lastPos()}))}return e.prototype.toString=function(e){return this.sliceString(this.firstPos(),this.lastPos(),e)},e.prototype.getSourceMap=function(e,t){if(!e)return null;var n=this;function r(n){return(n=n||{}).file=e,t&&(n.sourceRoot=t),n}if(n.cachedSourceMap)return r(n.cachedSourceMap.toJSON());var i=new s.default.SourceMapGenerator(r()),o={};return n.mappings.forEach((function(e){for(var t=e.sourceLines.skipSpaces(e.sourceLoc.start)||e.sourceLines.lastPos(),r=n.skipSpaces(e.targetLoc.start)||n.lastPos();u.comparePos(t,e.sourceLoc.end)<0&&u.comparePos(r,e.targetLoc.end)<0;){var s=e.sourceLines.charAt(t),l=n.charAt(r);a.default.strictEqual(s,l);var c=e.sourceLines.name;if(i.addMapping({source:c,original:{line:t.line,column:t.column},generated:{line:r.line,column:r.column}}),!h.call(o,c)){var p=e.sourceLines.toString();i.setSourceContent(c,p),o[c]=p}n.nextPos(r,!0),e.sourceLines.nextPos(t,!0)}})),n.cachedSourceMap=i,i.toJSON()},e.prototype.bootstrapCharAt=function(e){a.default.strictEqual(void 0===e?"undefined":r(e),"object"),a.default.strictEqual(r(e.line),"number"),a.default.strictEqual(r(e.column),"number");var t=e.line,n=e.column,i=this.toString().split(m),s=i[t-1];return void 0===s?"":n===s.length&&t=s.length?"":s.charAt(n)},e.prototype.charAt=function(e){a.default.strictEqual(void 0===e?"undefined":r(e),"object"),a.default.strictEqual(r(e.line),"number"),a.default.strictEqual(r(e.column),"number");var t=e.line,n=e.column,i=this.infos[t-1],s=n;if(void 0===i||s<0)return"";var o=this.getIndentAt(t);return s=i.sliceEnd?"":i.line.charAt(s)},e.prototype.stripMargin=function(t,n){if(0===t)return this;if(a.default.ok(t>0,"negative margin: "+t),n&&1===this.length)return this;var r=new e(this.infos.map((function(e,r){return e.line&&(r>0||!n)&&(e=i.__assign(i.__assign({},e),{indent:Math.max(0,e.indent-t)})),e})));if(this.mappings.length>0){var s=r.mappings;a.default.strictEqual(s.length,0),this.mappings.forEach((function(e){s.push(e.indent(t,n,!0))}))}return r},e.prototype.indent=function(t){if(0===t)return this;var n=new e(this.infos.map((function(e){return e.line&&!e.locked&&(e=i.__assign(i.__assign({},e),{indent:e.indent+t})),e})));if(this.mappings.length>0){var r=n.mappings;a.default.strictEqual(r.length,0),this.mappings.forEach((function(e){r.push(e.indent(t))}))}return n},e.prototype.indentTail=function(t){if(0===t)return this;if(this.length<2)return this;var n=new e(this.infos.map((function(e,n){return n>0&&e.line&&!e.locked&&(e=i.__assign(i.__assign({},e),{indent:e.indent+t})),e})));if(this.mappings.length>0){var r=n.mappings;a.default.strictEqual(r.length,0),this.mappings.forEach((function(e){r.push(e.indent(t,!0))}))}return n},e.prototype.lockIndentTail=function(){return this.length<2?this:new e(this.infos.map((function(e,t){return i.__assign(i.__assign({},e),{locked:t>0})})))},e.prototype.getIndentAt=function(e){return a.default.ok(e>=1,"no line "+e+" (line numbers start from 1)"),Math.max(this.infos[e-1].indent,0)},e.prototype.guessTabWidth=function(){if("number"==typeof this.cachedTabWidth)return this.cachedTabWidth;for(var e=[],t=0,n=1,r=this.length;n<=r;++n){var i=this.infos[n-1];if(!g(i.line.slice(i.sliceStart,i.sliceEnd))){var a=Math.abs(i.indent-t);e[a]=1+~~e[a],t=i.indent}}for(var s=-1,o=2,u=1;us&&(s=e[u],o=u);return this.cachedTabWidth=o},e.prototype.startsWithComment=function(){if(0===this.infos.length)return!1;var e=this.infos[0],t=e.sliceStart,n=e.sliceEnd,r=e.line.slice(t,n).trim();return 0===r.length||"//"===r.slice(0,2)||"/*"===r.slice(0,2)},e.prototype.isOnlyWhitespace=function(){return g(this.toString())},e.prototype.isPrecededOnlyByWhitespace=function(e){var t=this.infos[e.line-1],n=Math.max(t.indent,0),r=e.column-n;if(r<=0)return!0;var i=t.sliceStart,a=Math.min(i+r,t.sliceEnd);return g(t.line.slice(i,a))},e.prototype.getLineLength=function(e){var t=this.infos[e-1];return this.getIndentAt(e)+t.sliceEnd-t.sliceStart},e.prototype.nextPos=function(e,t){void 0===t&&(t=!1);var n=Math.max(e.line,0);return Math.max(e.column,0)0&&(n.push(n.pop().slice(0,t.column)),n[0]=n[0].slice(e.column)),y(n.join("\n"))},e.prototype.slice=function(t,n){if(!n){if(!t)return this;n=this.lastPos()}if(!t)throw new Error("cannot slice with end but not start");var r=this.infos.slice(t.line-1,n.line);t.line===n.line?r[0]=x(r[0],t.column,n.column):(a.default.ok(t.line0){var s=i.mappings;a.default.strictEqual(s.length,0),this.mappings.forEach((function(e){var r=e.slice(this,t,n);r&&s.push(r)}),this)}return i},e.prototype.bootstrapSliceString=function(e,t,n){return this.slice(e,t).toString(n)},e.prototype.sliceString=function(e,t,n){void 0===e&&(e=this.firstPos()),void 0===t&&(t=this.lastPos());for(var r=o.normalize(n),i=r.tabWidth,a=r.useTabs,s=r.reuseWhitespace,u=r.lineTerminator,l=[],c=e.line;c<=t.line;++c){var p=this.infos[c-1];c===e.line?p=c===t.line?x(p,e.column,t.column):x(p,e.column):c===t.line&&(p=x(p,0,t.column));var h=Math.max(p.indent,0),f=p.line.slice(0,p.sliceStart);if(s&&g(f)&&d(f,i)===h)l.push(p.line.slice(0,p.sliceEnd));else{var m=0,y=h;a&&(y-=(m=Math.floor(h/i))*i);var v="";m>0&&(v+=new Array(m+1).join("\t")),y>0&&(v+=new Array(y+1).join(" ")),v+=p.line.slice(p.sliceStart,p.sliceEnd),l.push(v)}}return l.join(u)},e.prototype.isEmpty=function(){return this.length<2&&this.getLineLength(1)<1},e.prototype.join=function(t){var n,r=this,a=[],s=[];function o(e){if(null!==e){if(n){var t=e.infos[0],r=new Array(t.indent+1).join(" "),o=a.length,u=Math.max(n.indent,0)+n.sliceEnd-n.sliceStart;n.line=n.line.slice(0,n.sliceEnd)+r+t.line.slice(t.sliceStart,t.sliceEnd),n.locked=n.locked||t.locked,n.sliceEnd=n.line.length,e.mappings.length>0&&e.mappings.forEach((function(e){s.push(e.add(o,u))}))}else e.mappings.length>0&&s.push.apply(s,e.mappings);e.infos.forEach((function(e,t){(!n||t>0)&&(n=i.__assign({},e),a.push(n))}))}}if(t.map((function(e){var t=y(e);return t.isEmpty()?null:t})).forEach((function(e,t){r.isEmpty()?o(e):function(e,t){t>0&&o(r),o(e)}(e,t)})),a.length<1)return v;var u=new e(a);return u.mappings=s,u},e.prototype.concat=function(){for(var e=[],t=0;t0);var o=Math.ceil(n/t)*t;o===n?n+=t:n=o;break;case 11:case 12:case 13:case 65279:break;case 32:default:n+=1}return n}t.countSpaces=d;var f=/^\s*/,m=/\u000D\u000A|\u000D(?!\u000A)|\u000A|\u2028|\u2029/;function y(e,t){if(e instanceof c)return e;e+="";var n=t&&t.tabWidth,r=e.indexOf("\t")<0,i=!t&&r&&e.length<=10;if(a.default.ok(n||r,"No tab width specified but encountered tabs in string\n"+e),i&&h.call(p,e))return p[e];var s=new c(e.split(m).map((function(e){var t=f.exec(e)[0];return{line:e,indent:d(t,n),locked:!1,sliceStart:t.length,sliceEnd:e.length}})),o.normalize(t).sourceFileName);return i&&(p[e]=s),s}function g(e){return!/\S/.test(e)}function x(e,t,n){var r=e.sliceStart,i=e.sliceEnd,s=Math.max(e.indent,0),o=s+i-r;return void 0===n&&(n=o),t=Math.max(t,0),n=Math.min(n,o),(n=Math.max(n,t))=0),a.default.ok(r<=i),a.default.strictEqual(o,s+i-r),e.indent===s&&e.sliceStart===r&&e.sliceEnd===i?e:{line:e.line,indent:s,locked:!1,sliceStart:r,sliceEnd:i}}t.fromString=y,t.concat=function(e){return v.join(e)};var v=y("")},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LogicalOperators=t.AssignmentOperators=t.BinaryOperators=void 0,t.BinaryOperators=["==","!=","===","!==","<","<=",">",">=","<<",">>",">>>","+","-","*","/","%","&","|","^","in","instanceof"],t.AssignmentOperators=["=","+=","-=","*=","/=","%=","<<=",">>=",">>>=","|=","^=","&="],t.LogicalOperators=["||","&&"]},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(0),i=r.__importDefault(n(1)),a=r.__importDefault(n(2)),s=r.__importDefault(n(7));t.default=function(e){e.use(s.default);var t=e.use(i.default),n=t.Type,r=t.Type.def,o=n.or,u=e.use(a.default).defaults;r("AwaitExpression").build("argument","all").field("argument",o(r("Expression"),null)).field("all",Boolean,u.false),r("Decorator").bases("Node").build("expression").field("expression",r("Expression")),r("Property").field("decorators",o([r("Decorator")],null),u.null),r("MethodDefinition").field("decorators",o([r("Decorator")],null),u.null),r("PrivateName").bases("Expression","Pattern").build("id").field("id",r("Identifier")),r("ClassPrivateProperty").bases("ClassProperty").build("key","value").field("key",r("PrivateName")).field("value",o(r("Expression"),null),u.null)},e.exports=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.normalize=void 0;var r={parser:n(49),tabWidth:4,useTabs:!1,reuseWhitespace:!0,lineTerminator:n(56).EOL||"\n",wrapColumn:74,sourceFileName:null,sourceMapName:null,sourceRoot:null,inputSourceMap:null,range:!1,tolerant:!0,quote:null,trailingComma:!1,arrayBracketSpacing:!1,objectCurlySpacing:!0,arrowParensAlways:!1,flowObjectCommas:!0,tokens:!0},i=r.hasOwnProperty;t.normalize=function(e){var t=e||r;function n(e){return i.call(t,e)?t[e]:r[e]}return{tabWidth:+n("tabWidth"),useTabs:!!n("useTabs"),reuseWhitespace:!!n("reuseWhitespace"),lineTerminator:n("lineTerminator"),wrapColumn:Math.max(n("wrapColumn"),0),sourceFileName:n("sourceFileName"),sourceMapName:n("sourceMapName"),sourceRoot:n("sourceRoot"),inputSourceMap:n("inputSourceMap"),parser:n("esprima")||n("parser"),range:n("range"),tolerant:n("tolerant"),quote:n("quote"),trailingComma:n("trailingComma"),arrayBracketSpacing:n("arrayBracketSpacing"),objectCurlySpacing:n("objectCurlySpacing"),arrowParensAlways:n("arrowParensAlways"),flowObjectCommas:n("flowObjectCommas"),tokens:!!n("tokens")}}},function(e,t){var n,r,i=e.exports={};function a(){throw new Error("setTimeout has not been defined")}function s(){throw new Error("clearTimeout has not been defined")}function o(e){if(n===setTimeout)return setTimeout(e,0);if((n===a||!n)&&setTimeout)return n=setTimeout,setTimeout(e,0);try{return n(e,0)}catch(t){try{return n.call(null,e,0)}catch(t){return n.call(this,e,0)}}}!function(){try{n="function"==typeof setTimeout?setTimeout:a}catch(e){n=a}try{r="function"==typeof clearTimeout?clearTimeout:s}catch(e){r=s}}();var u,l=[],c=!1,p=-1;function h(){c&&u&&(c=!1,u.length?l=u.concat(l):p=-1,l.length&&d())}function d(){if(!c){var e=o(h);c=!0;for(var t=l.length;t;){for(u=l,l=[];++p1)for(var n=1;nc)return!0;if(u===c&&"right"===this.name){if(i.right!==a)throw new Error("Nodes must be equal");return!0}default:return!1}case"SequenceExpression":switch(i.type){case"ForStatement":return!1;case"ExpressionStatement":return"expression"!==this.name;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"MemberExpression"===i.type&&o.check(r.value)&&"object"===this.name&&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"callee"===this.name&&i.callee===r;case"ConditionalExpression":return"test"===this.name&&i.test===r;case"MemberExpression":return"object"===this.name&&i.object===r;default:return!1}default:if("NewExpression"===i.type&&"callee"===this.name&&i.callee===r)return m(r)}return!(!0===e||this.canBeFirstInStatement()||!this.firstInStatement())};var f={};function m(e){return!!n.CallExpression.check(e)||(u.check(e)?e.some(m):!!n.Node.check(e)&&t.someField(e,(function(e,t){return m(t)})))}return[["||"],["&&"],["|"],["^"],["&"],["==","===","!=","!=="],["<",">","<=",">=","in","instanceof"],[">>","<<",">>>"],["+","-"],["*","/","%"]].forEach((function(e,t){e.forEach((function(e){f[e]=t}))})),h.canBeFirstInStatement=function(){var e=this.node;return!n.FunctionExpression.check(e)&&!n.ObjectExpression.check(e)},h.firstInStatement=function(){return function(e){for(var t,r;e.parent;e=e.parent){if(t=e.node,r=e.parent.node,n.BlockStatement.check(r)&&"body"===e.parent.name&&0===e.name){if(r.body[0]!==t)throw new Error("Nodes must be equal");return!0}if(n.ExpressionStatement.check(r)&&"expression"===e.name){if(r.expression!==t)throw new Error("Nodes must be equal");return!0}if(n.SequenceExpression.check(r)&&"expressions"===e.parent.name&&0===e.name){if(r.expressions[0]!==t)throw new Error("Nodes must be equal")}else if(n.CallExpression.check(r)&&"callee"===e.name){if(r.callee!==t)throw new Error("Nodes must be equal")}else if(n.MemberExpression.check(r)&&"object"===e.name){if(r.object!==t)throw new Error("Nodes must be equal")}else if(n.ConditionalExpression.check(r)&&"test"===e.name){if(r.test!==t)throw new Error("Nodes must be equal")}else if(d(r)&&"left"===e.name){if(r.left!==t)throw new Error("Nodes must be equal")}else{if(!n.UnaryExpression.check(r)||r.prefix||"argument"!==e.name)return!1;if(r.argument!==t)throw new Error("Nodes must be equal")}}return!0}(this)},p},e.exports=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(0).__importDefault(n(1)),i=Object.prototype.hasOwnProperty;t.default=function(e){var t=e.use(r.default),n=t.builtInTypes.array,a=t.builtInTypes.number,s=function e(t,n,r){if(!(this instanceof e))throw new Error("Path constructor cannot be invoked without 'new'");if(n){if(!(n instanceof e))throw new Error("")}else n=null,r=null;this.value=t,this.parentPath=n,this.name=r,this.__childCache=null},o=s.prototype;function u(e){return e.__childCache||(e.__childCache=Object.create(null))}function l(e,t){var n=u(e),r=e.getValueProperty(t),a=n[t];return i.call(n,t)&&a.value===r||(a=n[t]=new e.constructor(r,e,t)),a}function c(){}function p(e,t,r,s){if(n.assert(e.value),0===t)return c;var o=e.value.length;if(o<1)return c;var l=arguments.length;2===l?(r=0,s=o):3===l?(r=Math.max(r,0),s=o):(r=Math.max(r,0),s=Math.min(s,o)),a.assert(r),a.assert(s);for(var p=Object.create(null),h=u(e),d=r;d=0&&(i[e.name=a]=e)}else r[e.name]=e.value,i[e.name]=e;if(r[e.name]!==e.value)throw new Error("");if(e.parentPath.get(e.name)!==e)throw new Error("");return e}return o.getValueProperty=function(e){return this.value[e]},o.get=function(){for(var e=[],t=0;t0&&e.column>=0)||t||n||r)&&!(e&&"line"in e&&"column"in e&&t&&"line"in t&&"column"in t&&e.line>0&&e.column>=0&&t.line>0&&t.column>=0&&n))throw new Error("Invalid mapping: "+JSON.stringify({generated:e,source:n,original:t,name:r}))},o.prototype._serializeMappings=function(){for(var e,t,n,a,s=0,o=1,u=0,l=0,c=0,p=0,h="",d=this._mappings.toArray(),f=0,m=d.length;f0){if(!i.compareByGeneratedPositionsInflated(t,d[f-1]))continue;e+=","}e+=r.encode(t.generatedColumn-s),s=t.generatedColumn,null!=t.source&&(a=this._sources.indexOf(t.source),e+=r.encode(a-p),p=a,e+=r.encode(t.originalLine-1-l),l=t.originalLine-1,e+=r.encode(t.originalColumn-u),u=t.originalColumn,null!=t.name&&(n=this._names.indexOf(t.name),e+=r.encode(n-c),c=n)),h+=e}return h},o.prototype._generateSourcesContent=function(e,t){return e.map((function(e){if(!this._sourcesContents)return null;null!=t&&(e=i.relative(t,e));var n=i.toSetString(e);return Object.prototype.hasOwnProperty.call(this._sourcesContents,n)?this._sourcesContents[n]:null}),this)},o.prototype.toJSON=function(){var e={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return null!=this._file&&(e.file=this._file),null!=this._sourceRoot&&(e.sourceRoot=this._sourceRoot),this._sourcesContents&&(e.sourcesContent=this._generateSourcesContent(e.sources,e.sourceRoot)),e},o.prototype.toString=function(){return JSON.stringify(this.toJSON())},t.SourceMapGenerator=o},function(e,t,n){var r=n(50);t.encode=function(e){var t,n="",i=function(e){return e<0?1+(-e<<1):0+(e<<1)}(e);do{t=31&i,(i>>>=5)>0&&(t|=32),n+=r.encode(t)}while(i>0);return n},t.decode=function(e,t,n){var i,a,s,o,u=e.length,l=0,c=0;do{if(t>=u)throw new Error("Expected more digits in base 64 VLQ value.");if(-1===(a=r.decode(e.charCodeAt(t++))))throw new Error("Invalid base64 digit: "+e.charAt(t-1));i=!!(32&a),l+=(a&=31)<>1,1==(1&s)?-o:o),n.rest=t}},function(e,t,n){var r=n(6),i=Object.prototype.hasOwnProperty,a="undefined"!=typeof Map;function s(){this._array=[],this._set=a?new Map:Object.create(null)}s.fromArray=function(e,t){for(var n=new s,r=0,i=e.length;r=0)return t}else{var n=r.toSetString(e);if(i.call(this._set,n))return this._set[n]}throw new Error('"'+e+'" is not in the set.')},s.prototype.at=function(e){if(e>=0&&e=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&&((a=this.stack[this.stack.length-1])&&a.start>=e.start.offset);)t=a.node,this.stack.pop();if(t){for(var r=(t.leadingComments?t.leadingComments.length:0)-1;r>=0;--r){var i=t.leadingComments[r];i.range[1]<=e.start.offset&&(n.unshift(i),t.leadingComments.splice(r,1))}return t.leadingComments&&0===t.leadingComments.length&&delete t.leadingComments,n}for(r=this.leading.length-1;r>=0;--r){var a;(a=this.leading[r]).start<=e.start.offset&&(n.unshift(a.comment),this.leading.splice(r,1))}return n},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="L"===e.type[0]?"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){"LineComment"===e.type||"BlockComment"===e.type?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,i=this&&this.__extends||(r=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])},function(e,t){function n(){this.constructor=e}r(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)});Object.defineProperty(t,"__esModule",{value:!0});var a=n(4),s=n(5),o=n(6),u=n(7),l=n(8),c=n(13),p=n(14);function h(e){var t;switch(e.type){case o.JSXSyntax.JSXIdentifier:t=e.name;break;case o.JSXSyntax.JSXNamespacedName:var n=e;t=h(n.namespace)+":"+h(n.name);break;case o.JSXSyntax.JSXMemberExpression:var r=e;t=h(r.object)+"."+h(r.property)}return t}c.TokenName[100]="JSXIdentifier",c.TokenName[101]="JSXText";var d=function(e){function t(t,n,r){return e.call(this,t,n,r)||this}return i(t,e),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,i=!1,s=!1;!this.scanner.eof()&&n&&!r;){var o=this.scanner.source[this.scanner.index];if(o===e)break;if(r=";"===o,t+=o,++this.scanner.index,!r)switch(t.length){case 2:i="#"===o;break;case 3:i&&(n=(s="x"===o)||a.Character.isDecimalDigit(o.charCodeAt(0)),i=i&&!s);break;default:n=(n=n&&!(i&&!a.Character.isDecimalDigit(o.charCodeAt(0))))&&!(s&&!a.Character.isHexDigit(o.charCodeAt(0)))}}if(n&&r&&t.length>2){var u=t.substr(1,t.length-2);i&&u.length>1?t=String.fromCharCode(parseInt(u.substr(1),10)):s&&u.length>2?t=String.fromCharCode(parseInt("0"+u.substr(1),16)):i||s||!p.XHTMLEntities[u]||(t=p.XHTMLEntities[u])}return t},t.prototype.lexJSX=function(){var e=this.scanner.source.charCodeAt(this.scanner.index);if(60===e||62===e||47===e||58===e||61===e||123===e||125===e)return{type:7,value:o=this.scanner.source[this.scanner.index++],lineNumber:this.scanner.lineNumber,lineStart:this.scanner.lineStart,start:this.scanner.index-1,end:this.scanner.index};if(34===e||39===e){for(var t=this.scanner.index,n=this.scanner.source[this.scanner.index++],r="";!this.scanner.eof()&&(u=this.scanner.source[this.scanner.index++])!==n;)r+="&"===u?this.scanXHTMLEntity(n):u;return{type:8,value:r,lineNumber:this.scanner.lineNumber,lineStart:this.scanner.lineStart,start:t,end:this.scanner.index}}if(46===e){var i=this.scanner.source.charCodeAt(this.scanner.index+1),s=this.scanner.source.charCodeAt(this.scanner.index+2),o=46===i&&46===s?"...":".";return t=this.scanner.index,this.scanner.index+=o.length,{type:7,value:o,lineNumber:this.scanner.lineNumber,lineStart:this.scanner.lineStart,start:t,end:this.scanner.index}}if(96===e)return{type:10,value:"",lineNumber:this.scanner.lineNumber,lineStart:this.scanner.lineStart,start:this.scanner.index,end:this.scanner.index};if(a.Character.isIdentifierStart(e)&&92!==e){for(t=this.scanner.index,++this.scanner.index;!this.scanner.eof();){var u=this.scanner.source.charCodeAt(this.scanner.index);if(a.Character.isIdentifierPart(u)&&92!==u)++this.scanner.index;else{if(45!==u)break;++this.scanner.index}}return{type:100,value:this.scanner.source.slice(t,this.scanner.index),lineNumber:this.scanner.lineNumber,lineStart:this.scanner.lineStart,start:t,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,a.Character.isLineTerminator(n.charCodeAt(0))&&(++this.scanner.lineNumber,"\r"===n&&"\n"===this.scanner.source[this.scanner.index]&&++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();7===t.type&&t.value===e||this.throwUnexpectedToken(t)},t.prototype.matchJSX=function(e){var t=this.peekJSXToken();return 7===t.type&&t.value===e},t.prototype.parseJSXIdentifier=function(){var e=this.createJSXNode(),t=this.nextJSXToken();return 100!==t.type&&this.throwUnexpectedToken(t),this.finalize(e,new s.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 s.JSXNamespacedName(n,r))}else if(this.matchJSX("."))for(;this.matchJSX(".");){var i=t;this.expectJSX(".");var a=this.parseJSXIdentifier();t=this.finalize(e,new s.JSXMemberExpression(i,a))}return t},t.prototype.parseJSXAttributeName=function(){var e,t=this.createJSXNode(),n=this.parseJSXIdentifier();if(this.matchJSX(":")){var r=n;this.expectJSX(":");var i=this.parseJSXIdentifier();e=this.finalize(t,new s.JSXNamespacedName(r,i))}else e=n;return e},t.prototype.parseJSXStringLiteralAttribute=function(){var e=this.createJSXNode(),t=this.nextJSXToken();8!==t.type&&this.throwUnexpectedToken(t);var n=this.getTokenRaw(t);return this.finalize(e,new u.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 s.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 s.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 s.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 s.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 s.JSXClosingElement(t))}var n=this.parseJSXElementName(),r=this.parseJSXAttributes(),i=this.matchJSX("/");return i&&this.expectJSX("/"),this.expectJSX(">"),this.finalize(e,new s.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 s.JSXEmptyExpression)},t.prototype.parseJSXExpressionContainer=function(){var e,t=this.createJSXNode();return this.expectJSX("{"),this.matchJSX("}")?(e=this.parseJSXEmptyExpression(),this.expectJSX("}")):(this.finishJSX(),e=this.parseAssignmentExpression(),this.reenterJSX()),this.finalize(t,new s.JSXExpressionContainer(e))},t.prototype.parseJSXChildren=function(){for(var e=[];!this.scanner.eof();){var t=this.createJSXChildNode(),n=this.nextJSXText();if(n.start0))break;a=this.finalize(e.node,new s.JSXElement(e.opening,e.children,e.closing)),(e=t[t.length-1]).children.push(a),t.pop()}}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 s.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}(l.Parser);t.JSXParser=d},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 32===e||9===e||11===e||12===e||160===e||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 10===e||13===e||8232===e||8233===e},isIdentifierStart:function(e){return 36===e||95===e||e>=65&&e<=90||e>=97&&e<=122||92===e||e>=128&&n.NonAsciiIdentifierStart.test(t.Character.fromCodePoint(e))},isIdentifierPart:function(e){return 36===e||95===e||e>=65&&e<=90||e>=97&&e<=122||e>=48&&e<=57||92===e||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(e){this.type=r.JSXSyntax.JSXClosingElement,this.name=e};t.JSXClosingElement=i;var a=function(e,t,n){this.type=r.JSXSyntax.JSXElement,this.openingElement=e,this.children=t,this.closingElement=n};t.JSXElement=a;var s=function(){this.type=r.JSXSyntax.JSXEmptyExpression};t.JSXEmptyExpression=s;var o=function(e){this.type=r.JSXSyntax.JSXExpressionContainer,this.expression=e};t.JSXExpressionContainer=o;var u=function(e){this.type=r.JSXSyntax.JSXIdentifier,this.name=e};t.JSXIdentifier=u;var l=function(e,t){this.type=r.JSXSyntax.JSXMemberExpression,this.object=e,this.property=t};t.JSXMemberExpression=l;var c=function(e,t){this.type=r.JSXSyntax.JSXAttribute,this.name=e,this.value=t};t.JSXAttribute=c;var p=function(e,t){this.type=r.JSXSyntax.JSXNamespacedName,this.namespace=e,this.name=t};t.JSXNamespacedName=p;var h=function(e,t,n){this.type=r.JSXSyntax.JSXOpeningElement,this.name=e,this.selfClosing=t,this.attributes=n};t.JSXOpeningElement=h;var d=function(e){this.type=r.JSXSyntax.JSXSpreadAttribute,this.argument=e};t.JSXSpreadAttribute=d;var f=function(e,t){this.type=r.JSXSyntax.JSXText,this.value=e,this.raw=t};t.JSXText=f},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(e){this.type=r.Syntax.ArrayExpression,this.elements=e};t.ArrayExpression=i;var a=function(e){this.type=r.Syntax.ArrayPattern,this.elements=e};t.ArrayPattern=a;var s=function(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};t.ArrowFunctionExpression=s;var o=function(e,t,n){this.type=r.Syntax.AssignmentExpression,this.operator=e,this.left=t,this.right=n};t.AssignmentExpression=o;var u=function(e,t){this.type=r.Syntax.AssignmentPattern,this.left=e,this.right=t};t.AssignmentPattern=u;var l=function(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};t.AsyncArrowFunctionExpression=l;var c=function(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};t.AsyncFunctionDeclaration=c;var p=function(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};t.AsyncFunctionExpression=p;var h=function(e){this.type=r.Syntax.AwaitExpression,this.argument=e};t.AwaitExpression=h;var d=function(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};t.BinaryExpression=d;var f=function(e){this.type=r.Syntax.BlockStatement,this.body=e};t.BlockStatement=f;var m=function(e){this.type=r.Syntax.BreakStatement,this.label=e};t.BreakStatement=m;var y=function(e,t){this.type=r.Syntax.CallExpression,this.callee=e,this.arguments=t};t.CallExpression=y;var g=function(e,t){this.type=r.Syntax.CatchClause,this.param=e,this.body=t};t.CatchClause=g;var x=function(e){this.type=r.Syntax.ClassBody,this.body=e};t.ClassBody=x;var v=function(e,t,n){this.type=r.Syntax.ClassDeclaration,this.id=e,this.superClass=t,this.body=n};t.ClassDeclaration=v;var b=function(e,t,n){this.type=r.Syntax.ClassExpression,this.id=e,this.superClass=t,this.body=n};t.ClassExpression=b;var E=function(e,t){this.type=r.Syntax.MemberExpression,this.computed=!0,this.object=e,this.property=t};t.ComputedMemberExpression=E;var S=function(e,t,n){this.type=r.Syntax.ConditionalExpression,this.test=e,this.consequent=t,this.alternate=n};t.ConditionalExpression=S;var D=function(e){this.type=r.Syntax.ContinueStatement,this.label=e};t.ContinueStatement=D;var C=function(){this.type=r.Syntax.DebuggerStatement};t.DebuggerStatement=C;var A=function(e,t){this.type=r.Syntax.ExpressionStatement,this.expression=e,this.directive=t};t.Directive=A;var T=function(e,t){this.type=r.Syntax.DoWhileStatement,this.body=e,this.test=t};t.DoWhileStatement=T;var w=function(){this.type=r.Syntax.EmptyStatement};t.EmptyStatement=w;var k=function(e){this.type=r.Syntax.ExportAllDeclaration,this.source=e};t.ExportAllDeclaration=k;var F=function(e){this.type=r.Syntax.ExportDefaultDeclaration,this.declaration=e};t.ExportDefaultDeclaration=F;var P=function(e,t,n){this.type=r.Syntax.ExportNamedDeclaration,this.declaration=e,this.specifiers=t,this.source=n};t.ExportNamedDeclaration=P;var B=function(e,t){this.type=r.Syntax.ExportSpecifier,this.exported=t,this.local=e};t.ExportSpecifier=B;var _=function(e){this.type=r.Syntax.ExpressionStatement,this.expression=e};t.ExpressionStatement=_;var N=function(e,t,n){this.type=r.Syntax.ForInStatement,this.left=e,this.right=t,this.body=n,this.each=!1};t.ForInStatement=N;var I=function(e,t,n){this.type=r.Syntax.ForOfStatement,this.left=e,this.right=t,this.body=n};t.ForOfStatement=I;var M=function(e,t,n,i){this.type=r.Syntax.ForStatement,this.init=e,this.test=t,this.update=n,this.body=i};t.ForStatement=M;var O=function(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};t.FunctionDeclaration=O;var L=function(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};t.FunctionExpression=L;var j=function(e){this.type=r.Syntax.Identifier,this.name=e};t.Identifier=j;var J=function(e,t,n){this.type=r.Syntax.IfStatement,this.test=e,this.consequent=t,this.alternate=n};t.IfStatement=J;var R=function(e,t){this.type=r.Syntax.ImportDeclaration,this.specifiers=e,this.source=t};t.ImportDeclaration=R;var X=function(e){this.type=r.Syntax.ImportDefaultSpecifier,this.local=e};t.ImportDefaultSpecifier=X;var z=function(e){this.type=r.Syntax.ImportNamespaceSpecifier,this.local=e};t.ImportNamespaceSpecifier=z;var U=function(e,t){this.type=r.Syntax.ImportSpecifier,this.local=e,this.imported=t};t.ImportSpecifier=U;var q=function(e,t){this.type=r.Syntax.LabeledStatement,this.label=e,this.body=t};t.LabeledStatement=q;var V=function(e,t){this.type=r.Syntax.Literal,this.value=e,this.raw=t};t.Literal=V;var K=function(e,t){this.type=r.Syntax.MetaProperty,this.meta=e,this.property=t};t.MetaProperty=K;var W=function(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};t.MethodDefinition=W;var G=function(e){this.type=r.Syntax.Program,this.body=e,this.sourceType="module"};t.Module=G;var H=function(e,t){this.type=r.Syntax.NewExpression,this.callee=e,this.arguments=t};t.NewExpression=H;var Y=function(e){this.type=r.Syntax.ObjectExpression,this.properties=e};t.ObjectExpression=Y;var $=function(e){this.type=r.Syntax.ObjectPattern,this.properties=e};t.ObjectPattern=$;var Q=function(e,t,n,i,a,s){this.type=r.Syntax.Property,this.key=t,this.computed=n,this.value=i,this.kind=e,this.method=a,this.shorthand=s};t.Property=Q;var Z=function(e,t,n,i){this.type=r.Syntax.Literal,this.value=e,this.raw=t,this.regex={pattern:n,flags:i}};t.RegexLiteral=Z;var ee=function(e){this.type=r.Syntax.RestElement,this.argument=e};t.RestElement=ee;var te=function(e){this.type=r.Syntax.ReturnStatement,this.argument=e};t.ReturnStatement=te;var ne=function(e){this.type=r.Syntax.Program,this.body=e,this.sourceType="script"};t.Script=ne;var re=function(e){this.type=r.Syntax.SequenceExpression,this.expressions=e};t.SequenceExpression=re;var ie=function(e){this.type=r.Syntax.SpreadElement,this.argument=e};t.SpreadElement=ie;var ae=function(e,t){this.type=r.Syntax.MemberExpression,this.computed=!1,this.object=e,this.property=t};t.StaticMemberExpression=ae;var se=function(){this.type=r.Syntax.Super};t.Super=se;var oe=function(e,t){this.type=r.Syntax.SwitchCase,this.test=e,this.consequent=t};t.SwitchCase=oe;var ue=function(e,t){this.type=r.Syntax.SwitchStatement,this.discriminant=e,this.cases=t};t.SwitchStatement=ue;var le=function(e,t){this.type=r.Syntax.TaggedTemplateExpression,this.tag=e,this.quasi=t};t.TaggedTemplateExpression=le;var ce=function(e,t){this.type=r.Syntax.TemplateElement,this.value=e,this.tail=t};t.TemplateElement=ce;var pe=function(e,t){this.type=r.Syntax.TemplateLiteral,this.quasis=e,this.expressions=t};t.TemplateLiteral=pe;var he=function(){this.type=r.Syntax.ThisExpression};t.ThisExpression=he;var de=function(e){this.type=r.Syntax.ThrowStatement,this.argument=e};t.ThrowStatement=de;var fe=function(e,t,n){this.type=r.Syntax.TryStatement,this.block=e,this.handler=t,this.finalizer=n};t.TryStatement=fe;var me=function(e,t){this.type=r.Syntax.UnaryExpression,this.operator=e,this.argument=t,this.prefix=!0};t.UnaryExpression=me;var ye=function(e,t,n){this.type=r.Syntax.UpdateExpression,this.operator=e,this.argument=t,this.prefix=n};t.UpdateExpression=ye;var ge=function(e,t){this.type=r.Syntax.VariableDeclaration,this.declarations=e,this.kind=t};t.VariableDeclaration=ge;var xe=function(e,t){this.type=r.Syntax.VariableDeclarator,this.id=e,this.init=t};t.VariableDeclarator=xe;var ve=function(e,t){this.type=r.Syntax.WhileStatement,this.test=e,this.body=t};t.WhileStatement=ve;var be=function(e,t){this.type=r.Syntax.WithStatement,this.object=e,this.body=t};t.WithStatement=be;var Ee=function(e,t){this.type=r.Syntax.YieldExpression,this.argument=e,this.delegate=t};t.YieldExpression=Ee},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(9),i=n(10),a=n(11),s=n(7),o=n(12),u=n(2),l=n(13),c=function(){function e(e,t,n){void 0===t&&(t={}),this.config={range:"boolean"==typeof t.range&&t.range,loc:"boolean"==typeof t.loc&&t.loc,source:null,tokens:"boolean"==typeof t.tokens&&t.tokens,comment:"boolean"==typeof t.comment&&t.comment,tolerant:"boolean"==typeof t.tolerant&&t.tolerant},this.config.loc&&t.source&&null!==t.source&&(this.config.source=String(t.source)),this.delegate=n,this.errorHandler=new i.ErrorHandler,this.errorHandler.tolerant=this.config.tolerant,this.scanner=new o.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;n0&&this.delegate)for(var t=0;t>="===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 null!==this.context.firstCoverInitializedNameError&&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||(2===this.lookahead.type||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,t,n,r=this.createNode();switch(this.lookahead.type){case 3:(this.context.isModule||this.context.await)&&"await"===this.lookahead.value&&this.tolerateUnexpectedToken(this.lookahead),e=this.matchAsyncFunction()?this.parseFunctionExpression():this.finalize(r,new s.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,t=this.nextToken(),n=this.getTokenRaw(t),e=this.finalize(r,new s.Literal(t.value,n));break;case 1:this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1,t=this.nextToken(),n=this.getTokenRaw(t),e=this.finalize(r,new s.Literal("true"===t.value,n));break;case 5:this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1,t=this.nextToken(),n=this.getTokenRaw(t),e=this.finalize(r,new s.Literal(null,n));break;case 10:e=this.parseTemplateLiteral();break;case 7:switch(this.lookahead.value){case"(":this.context.isBindingElement=!1,e=this.inheritCoverGrammar(this.parseGroupExpression);break;case"[":e=this.inheritCoverGrammar(this.parseArrayInitializer);break;case"{":e=this.inheritCoverGrammar(this.parseObjectInitializer);break;case"/":case"/=":this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1,this.scanner.index=this.startMarker.index,t=this.nextRegexToken(),n=this.getTokenRaw(t),e=this.finalize(r,new s.RegexLiteral(t.regex,n,t.pattern,t.flags));break;default:e=this.throwUnexpectedToken(this.nextToken())}break;case 4:!this.context.strict&&this.context.allowYield&&this.matchKeyword("yield")?e=this.parseIdentifierName():!this.context.strict&&this.matchKeyword("let")?e=this.finalize(r,new s.Identifier(this.nextToken().value)):(this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1,this.matchKeyword("function")?e=this.parseFunctionExpression():this.matchKeyword("this")?(this.nextToken(),e=this.finalize(r,new s.ThisExpression)):e=this.matchKeyword("class")?this.parseClassExpression():this.throwUnexpectedToken(this.nextToken()));break;default:e=this.throwUnexpectedToken(this.nextToken())}return e},e.prototype.parseSpreadElement=function(){var e=this.createNode();this.expect("...");var t=this.inheritCoverGrammar(this.parseAssignmentExpression);return this.finalize(e,new s.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 s.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=this.createNode(),t=this.context.allowYield;this.context.allowYield=!0;var n=this.parseFormalParameters(),r=this.parsePropertyMethod(n);return this.context.allowYield=t,this.finalize(e,new s.FunctionExpression(null,n.params,r,!1))},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 s.AsyncFunctionExpression(null,r.params,i))},e.prototype.parseObjectPropertyKey=function(){var e,t=this.createNode(),n=this.nextToken();switch(n.type){case 8:case 6:this.context.strict&&n.octal&&this.tolerateUnexpectedToken(n,a.Messages.StrictOctalLiteral);var r=this.getTokenRaw(n);e=this.finalize(t,new s.Literal(n.value,r));break;case 3:case 1:case 5:case 4:e=this.finalize(t,new s.Identifier(n.value));break;case 7:"["===n.value?(e=this.isolateCoverGrammar(this.parseAssignmentExpression),this.expect("]")):e=this.throwUnexpectedToken(n);break;default:e=this.throwUnexpectedToken(n)}return e},e.prototype.isPropertyKey=function(e,t){return e.type===u.Syntax.Identifier&&e.name===t||e.type===u.Syntax.Literal&&e.value===t},e.prototype.parseObjectProperty=function(e){var t,n=this.createNode(),r=this.lookahead,i=null,o=null,u=!1,l=!1,c=!1,p=!1;if(3===r.type){var h=r.value;this.nextToken(),u=this.match("["),i=(p=!(this.hasLineTerminator||"async"!==h||this.match(":")||this.match("(")||this.match("*")||this.match(",")))?this.parseObjectPropertyKey():this.finalize(n,new s.Identifier(h))}else this.match("*")?this.nextToken():(u=this.match("["),i=this.parseObjectPropertyKey());var d=this.qualifiedPropertyName(this.lookahead);if(3===r.type&&!p&&"get"===r.value&&d)t="get",u=this.match("["),i=this.parseObjectPropertyKey(),this.context.allowYield=!1,o=this.parseGetterMethod();else if(3===r.type&&!p&&"set"===r.value&&d)t="set",u=this.match("["),i=this.parseObjectPropertyKey(),o=this.parseSetterMethod();else if(7===r.type&&"*"===r.value&&d)t="init",u=this.match("["),i=this.parseObjectPropertyKey(),o=this.parseGeneratorMethod(),l=!0;else if(i||this.throwUnexpectedToken(this.lookahead),t="init",this.match(":")&&!p)!u&&this.isPropertyKey(i,"__proto__")&&(e.value&&this.tolerateError(a.Messages.DuplicateProtoProperty),e.value=!0),this.nextToken(),o=this.inheritCoverGrammar(this.parseAssignmentExpression);else if(this.match("("))o=p?this.parsePropertyMethodAsyncFunction():this.parsePropertyMethodFunction(),l=!0;else if(3===r.type)if(h=this.finalize(n,new s.Identifier(r.value)),this.match("=")){this.context.firstCoverInitializedNameError=this.lookahead,this.nextToken(),c=!0;var f=this.isolateCoverGrammar(this.parseAssignmentExpression);o=this.finalize(n,new s.AssignmentPattern(h,f))}else c=!0,o=h;else this.throwUnexpectedToken(this.nextToken());return this.finalize(n,new s.Property(t,i,u,o,l,c))},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 s.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 s.TemplateElement({raw:n,cooked:i},t.tail))},e.prototype.parseTemplateElement=function(){10!==this.lookahead.type&&this.throwUnexpectedToken();var e=this.createNode(),t=this.nextToken(),n=t.value,r=t.cooked;return this.finalize(e,new s.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 s.TemplateLiteral(n,t))},e.prototype.reinterpretExpressionAsPattern=function(e){switch(e.type){case u.Syntax.Identifier:case u.Syntax.MemberExpression:case u.Syntax.RestElement:case u.Syntax.AssignmentPattern:break;case u.Syntax.SpreadElement:e.type=u.Syntax.RestElement,this.reinterpretExpressionAsPattern(e.argument);break;case u.Syntax.ArrayExpression:e.type=u.Syntax.ArrayPattern;for(var t=0;t")||this.expect("=>"),e={type:"ArrowParameterPlaceHolder",params:[],async:!1};else{var t=this.lookahead,n=[];if(this.match("..."))e=this.parseRestElement(n),this.expect(")"),this.match("=>")||this.expect("=>"),e={type:"ArrowParameterPlaceHolder",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);2!==this.lookahead.type&&this.match(",");){if(this.nextToken(),this.match(")")){this.nextToken();for(var a=0;a")||this.expect("=>"),this.context.isBindingElement=!1,a=0;a")&&(e.type===u.Syntax.Identifier&&"yield"===e.name&&(r=!0,e={type:"ArrowParameterPlaceHolder",params:[e],async:!1}),!r)){if(this.context.isBindingElement||this.throwUnexpectedToken(this.lookahead),e.type===u.Syntax.SequenceExpression)for(a=0;a")){for(var u=0;u0){this.nextToken(),this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1;for(var i=[e,this.lookahead],a=t,o=this.isolateCoverGrammar(this.parseExponentiationExpression),u=[a,n.value,o],l=[r];!((r=this.binaryPrecedence(this.lookahead))<=0);){for(;u.length>2&&r<=l[l.length-1];){o=u.pop();var c=u.pop();l.pop(),a=u.pop(),i.pop();var p=this.startNode(i[i.length-1]);u.push(this.finalize(p,new s.BinaryExpression(c,a,o)))}u.push(this.nextToken().value),l.push(r),i.push(this.lookahead),u.push(this.isolateCoverGrammar(this.parseExponentiationExpression))}var h=u.length-1;t=u[h];for(var d=i.pop();h>1;){var f=i.pop(),m=d&&d.lineStart;p=this.startNode(f,m),c=u[h-1],t=this.finalize(p,new s.BinaryExpression(c,u[h-2],t)),h-=2,d=f}}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 s.ConditionalExpression(t,r,i)),this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1}return t},e.prototype.checkPatternParam=function(e,t){switch(t.type){case u.Syntax.Identifier:this.validateParam(e,t,t.name);break;case u.Syntax.RestElement:this.checkPatternParam(e,t.argument);break;case u.Syntax.AssignmentPattern:this.checkPatternParam(e,t.left);break;case u.Syntax.ArrayPattern:for(var n=0;n")){this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1;var i=e.async,o=this.reinterpretAsCoverFormalsList(e);if(o){this.hasLineTerminator&&this.tolerateUnexpectedToken(this.lookahead),this.context.firstCoverInitializedNameError=null;var l=this.context.strict,c=this.context.allowStrictDirective;this.context.allowStrictDirective=o.simple;var p=this.context.allowYield,h=this.context.await;this.context.allowYield=!0,this.context.await=i;var d=this.startNode(t);this.expect("=>");var f=void 0;if(this.match("{")){var m=this.context.allowIn;this.context.allowIn=!0,f=this.parseFunctionSourceElements(),this.context.allowIn=m}else f=this.isolateCoverGrammar(this.parseAssignmentExpression);var y=f.type!==u.Syntax.BlockStatement;this.context.strict&&o.firstRestricted&&this.throwUnexpectedToken(o.firstRestricted,o.message),this.context.strict&&o.stricted&&this.tolerateUnexpectedToken(o.stricted,o.message),e=i?this.finalize(d,new s.AsyncArrowFunctionExpression(o.params,f,y)):this.finalize(d,new s.ArrowFunctionExpression(o.params,f,y)),this.context.strict=l,this.context.allowStrictDirective=c,this.context.allowYield=p,this.context.await=h}}else if(this.matchAssign()){if(this.context.isAssignmentTarget||this.tolerateError(a.Messages.InvalidLHSInAssignment),this.context.strict&&e.type===u.Syntax.Identifier){var g=e;this.scanner.isRestrictedWord(g.name)&&this.tolerateUnexpectedToken(n,a.Messages.StrictLHSAssignment),this.scanner.isStrictModeReservedWord(g.name)&&this.tolerateUnexpectedToken(n,a.Messages.StrictReservedWord)}this.match("=")?this.reinterpretExpressionAsPattern(e):(this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1);var x=(n=this.nextToken()).value,v=this.isolateCoverGrammar(this.parseAssignmentExpression);e=this.finalize(this.startNode(t),new s.AssignmentExpression(x,e,v)),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);2!==this.lookahead.type&&this.match(",");)this.nextToken(),n.push(this.isolateCoverGrammar(this.parseAssignmentExpression));t=this.finalize(this.startNode(e),new s.SequenceExpression(n))}return t},e.prototype.parseStatementListItem=function(){var e;if(this.context.isAssignmentTarget=!0,this.context.isBindingElement=!0,4===this.lookahead.type)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()}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 s.BlockStatement(t))},e.prototype.parseLexicalBinding=function(e,t){var n=this.createNode(),r=this.parsePattern([],e);this.context.strict&&r.type===u.Syntax.Identifier&&this.scanner.isRestrictedWord(r.name)&&this.tolerateError(a.Messages.StrictVarName);var i=null;return"const"===e?this.matchKeyword("in")||this.matchContextualKeyword("of")||(this.match("=")?(this.nextToken(),i=this.isolateCoverGrammar(this.parseAssignmentExpression)):this.throwError(a.Messages.DeclarationMissingInitializer,"const")):(!t.inFor&&r.type!==u.Syntax.Identifier||this.match("="))&&(this.expect("="),i=this.isolateCoverGrammar(this.parseAssignmentExpression)),this.finalize(n,new s.VariableDeclarator(r,i))},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),3===t.type||7===t.type&&"["===t.value||7===t.type&&"{"===t.value||4===t.type&&"let"===t.value||4===t.type&&"yield"===t.value},e.prototype.parseLexicalDeclaration=function(e){var t=this.createNode(),n=this.nextToken().value;r.assert("let"===n||"const"===n,"Lexical declaration must be either let or const");var i=this.parseBindingList(n,e);return this.consumeSemicolon(),this.finalize(t,new s.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 s.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}r.push(this.parsePatternWithDefault(e,t)),this.match("]")||this.expect(",")}return this.expect("]"),this.finalize(n,new s.ArrayPattern(r))},e.prototype.parsePropertyPattern=function(e,t){var n,r,i=this.createNode(),a=!1,o=!1;if(3===this.lookahead.type){var u=this.lookahead;n=this.parseVariableIdentifier();var l=this.finalize(i,new s.Identifier(u.value));if(this.match("=")){e.push(u),o=!0,this.nextToken();var c=this.parseAssignmentExpression();r=this.finalize(this.startNode(u),new s.AssignmentPattern(l,c))}else this.match(":")?(this.expect(":"),r=this.parsePatternWithDefault(e,t)):(e.push(u),o=!0,r=l)}else a=this.match("["),n=this.parseObjectPropertyKey(),this.expect(":"),r=this.parsePatternWithDefault(e,t);return this.finalize(i,new s.Property("init",n,a,r,!1,o))},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 s.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")||"const"!==t&&"let"!==t||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 s.AssignmentPattern(r,a))}return r},e.prototype.parseVariableIdentifier=function(e){var t=this.createNode(),n=this.nextToken();return 4===n.type&&"yield"===n.value?this.context.strict?this.tolerateUnexpectedToken(n,a.Messages.StrictReservedWord):this.context.allowYield||this.throwUnexpectedToken(n):3!==n.type?this.context.strict&&4===n.type&&this.scanner.isStrictModeReservedWord(n.value)?this.tolerateUnexpectedToken(n,a.Messages.StrictReservedWord):(this.context.strict||"let"!==n.value||"var"!==e)&&this.throwUnexpectedToken(n):(this.context.isModule||this.context.await)&&3===n.type&&"await"===n.value&&this.tolerateUnexpectedToken(n),this.finalize(t,new s.Identifier(n.value))},e.prototype.parseVariableDeclaration=function(e){var t=this.createNode(),n=this.parsePattern([],"var");this.context.strict&&n.type===u.Syntax.Identifier&&this.scanner.isRestrictedWord(n.name)&&this.tolerateError(a.Messages.StrictVarName);var r=null;return this.match("=")?(this.nextToken(),r=this.isolateCoverGrammar(this.parseAssignmentExpression)):n.type===u.Syntax.Identifier||e.inFor||this.expect("="),this.finalize(t,new s.VariableDeclarator(n,r))},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 s.VariableDeclaration(t,"var"))},e.prototype.parseEmptyStatement=function(){var e=this.createNode();return this.expect(";"),this.finalize(e,new s.EmptyStatement)},e.prototype.parseExpressionStatement=function(){var e=this.createNode(),t=this.parseExpression();return this.consumeSemicolon(),this.finalize(e,new s.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,t=this.createNode(),n=null;this.expectKeyword("if"),this.expect("(");var r=this.parseExpression();return!this.match(")")&&this.config.tolerant?(this.tolerateUnexpectedToken(this.nextToken()),e=this.finalize(this.createNode(),new s.EmptyStatement)):(this.expect(")"),e=this.parseIfClause(),this.matchKeyword("else")&&(this.nextToken(),n=this.parseIfClause())),this.finalize(t,new s.IfStatement(r,e,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 s.DoWhileStatement(n,r))},e.prototype.parseWhileStatement=function(){var e,t=this.createNode();this.expectKeyword("while"),this.expect("(");var n=this.parseExpression();if(!this.match(")")&&this.config.tolerant)this.tolerateUnexpectedToken(this.nextToken()),e=this.finalize(this.createNode(),new s.EmptyStatement);else{this.expect(")");var r=this.context.inIteration;this.context.inIteration=!0,e=this.parseStatement(),this.context.inIteration=r}return this.finalize(t,new s.WhileStatement(n,e))},e.prototype.parseForStatement=function(){var e,t,n,r=null,i=null,o=null,l=!0,c=this.createNode();if(this.expectKeyword("for"),this.expect("("),this.match(";"))this.nextToken();else if(this.matchKeyword("var")){r=this.createNode(),this.nextToken();var p=this.context.allowIn;this.context.allowIn=!1;var h=this.parseVariableDeclarationList({inFor:!0});if(this.context.allowIn=p,1===h.length&&this.matchKeyword("in")){var d=h[0];d.init&&(d.id.type===u.Syntax.ArrayPattern||d.id.type===u.Syntax.ObjectPattern||this.context.strict)&&this.tolerateError(a.Messages.ForInOfLoopInitializer,"for-in"),r=this.finalize(r,new s.VariableDeclaration(h,"var")),this.nextToken(),e=r,t=this.parseExpression(),r=null}else 1===h.length&&null===h[0].init&&this.matchContextualKeyword("of")?(r=this.finalize(r,new s.VariableDeclaration(h,"var")),this.nextToken(),e=r,t=this.parseAssignmentExpression(),r=null,l=!1):(r=this.finalize(r,new s.VariableDeclaration(h,"var")),this.expect(";"))}else if(this.matchKeyword("const")||this.matchKeyword("let")){r=this.createNode();var f=this.nextToken().value;this.context.strict||"in"!==this.lookahead.value?(p=this.context.allowIn,this.context.allowIn=!1,h=this.parseBindingList(f,{inFor:!0}),this.context.allowIn=p,1===h.length&&null===h[0].init&&this.matchKeyword("in")?(r=this.finalize(r,new s.VariableDeclaration(h,f)),this.nextToken(),e=r,t=this.parseExpression(),r=null):1===h.length&&null===h[0].init&&this.matchContextualKeyword("of")?(r=this.finalize(r,new s.VariableDeclaration(h,f)),this.nextToken(),e=r,t=this.parseAssignmentExpression(),r=null,l=!1):(this.consumeSemicolon(),r=this.finalize(r,new s.VariableDeclaration(h,f)))):(r=this.finalize(r,new s.Identifier(f)),this.nextToken(),e=r,t=this.parseExpression(),r=null)}else{var m=this.lookahead;if(p=this.context.allowIn,this.context.allowIn=!1,r=this.inheritCoverGrammar(this.parseAssignmentExpression),this.context.allowIn=p,this.matchKeyword("in"))this.context.isAssignmentTarget&&r.type!==u.Syntax.AssignmentExpression||this.tolerateError(a.Messages.InvalidLHSInForIn),this.nextToken(),this.reinterpretExpressionAsPattern(r),e=r,t=this.parseExpression(),r=null;else if(this.matchContextualKeyword("of"))this.context.isAssignmentTarget&&r.type!==u.Syntax.AssignmentExpression||this.tolerateError(a.Messages.InvalidLHSInForLoop),this.nextToken(),this.reinterpretExpressionAsPattern(r),e=r,t=this.parseAssignmentExpression(),r=null,l=!1;else{if(this.match(",")){for(var y=[r];this.match(",");)this.nextToken(),y.push(this.isolateCoverGrammar(this.parseAssignmentExpression));r=this.finalize(this.startNode(m),new s.SequenceExpression(y))}this.expect(";")}}if(void 0===e&&(this.match(";")||(i=this.parseExpression()),this.expect(";"),this.match(")")||(o=this.parseExpression())),!this.match(")")&&this.config.tolerant)this.tolerateUnexpectedToken(this.nextToken()),n=this.finalize(this.createNode(),new s.EmptyStatement);else{this.expect(")");var g=this.context.inIteration;this.context.inIteration=!0,n=this.isolateCoverGrammar(this.parseStatement),this.context.inIteration=g}return void 0===e?this.finalize(c,new s.ForStatement(r,i,o,n)):l?this.finalize(c,new s.ForInStatement(e,t,n)):this.finalize(c,new s.ForOfStatement(e,t,n))},e.prototype.parseContinueStatement=function(){var e=this.createNode();this.expectKeyword("continue");var t=null;if(3===this.lookahead.type&&!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(),null!==t||this.context.inIteration||this.throwError(a.Messages.IllegalContinue),this.finalize(e,new s.ContinueStatement(t))},e.prototype.parseBreakStatement=function(){var e=this.createNode();this.expectKeyword("break");var t=null;if(3===this.lookahead.type&&!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(),null!==t||this.context.inIteration||this.context.inSwitch||this.throwError(a.Messages.IllegalBreak),this.finalize(e,new s.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||2===this.lookahead.type)&&8!==this.lookahead.type&&10!==this.lookahead.type?null:this.parseExpression();return this.consumeSemicolon(),this.finalize(e,new s.ReturnStatement(t))},e.prototype.parseWithStatement=function(){this.context.strict&&this.tolerateError(a.Messages.StrictModeWith);var e,t=this.createNode();this.expectKeyword("with"),this.expect("(");var n=this.parseExpression();return!this.match(")")&&this.config.tolerant?(this.tolerateUnexpectedToken(this.nextToken()),e=this.finalize(this.createNode(),new s.EmptyStatement)):(this.expect(")"),e=this.parseStatement()),this.finalize(t,new s.WithStatement(n,e))},e.prototype.parseSwitchCase=function(){var e,t=this.createNode();this.matchKeyword("default")?(this.nextToken(),e=null):(this.expectKeyword("case"),e=this.parseExpression()),this.expect(":");for(var n=[];!(this.match("}")||this.matchKeyword("default")||this.matchKeyword("case"));)n.push(this.parseStatementListItem());return this.finalize(t,new s.SwitchCase(e,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 o=this.parseSwitchCase();null===o.test&&(i&&this.throwError(a.Messages.MultipleDefaultsInSwitch),i=!0),r.push(o)}return this.expect("}"),this.context.inSwitch=n,this.finalize(e,new s.SwitchStatement(t,r))},e.prototype.parseLabelledStatement=function(){var e,t=this.createNode(),n=this.parseExpression();if(n.type===u.Syntax.Identifier&&this.match(":")){this.nextToken();var r=n,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 o=void 0;if(this.matchKeyword("class"))this.tolerateUnexpectedToken(this.lookahead),o=this.parseClassDeclaration();else if(this.matchKeyword("function")){var l=this.lookahead,c=this.parseFunctionDeclaration();this.context.strict?this.tolerateUnexpectedToken(l,a.Messages.StrictFunction):c.generator&&this.tolerateUnexpectedToken(l,a.Messages.GeneratorInLegacyContext),o=c}else o=this.parseStatement();delete this.context.labelSet[i],e=new s.LabeledStatement(r,o)}else this.consumeSemicolon(),e=new s.ExpressionStatement(n);return this.finalize(t,e)},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 s.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;i0&&this.tolerateError(a.Messages.BadGetterArity);var r=this.parsePropertyMethod(n);return this.context.allowYield=t,this.finalize(e,new s.FunctionExpression(null,n.params,r,!1))},e.prototype.parseSetterMethod=function(){var e=this.createNode(),t=this.context.allowYield;this.context.allowYield=!0;var n=this.parseFormalParameters();1!==n.params.length?this.tolerateError(a.Messages.BadSetterArity):n.params[0]instanceof s.RestElement&&this.tolerateError(a.Messages.BadSetterRestParameter);var r=this.parsePropertyMethod(n);return this.context.allowYield=t,this.finalize(e,new s.FunctionExpression(null,n.params,r,!1))},e.prototype.parseGeneratorMethod=function(){var e=this.createNode(),t=this.context.allowYield;this.context.allowYield=!0;var n=this.parseFormalParameters();this.context.allowYield=!1;var r=this.parsePropertyMethod(n);return this.context.allowYield=t,this.finalize(e,new s.FunctionExpression(null,n.params,r,!0))},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="class"===t||"delete"===t||"function"===t||"let"===t||"new"===t||"super"===t||"this"===t||"typeof"===t||"void"===t||"yield"===t}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("*"))?(this.nextToken(),t=this.parseAssignmentExpression()):this.isStartOfExpression()&&(t=this.parseAssignmentExpression()),this.context.allowYield=r}return this.finalize(e,new s.YieldExpression(t,n))},e.prototype.parseClassElement=function(e){var t=this.lookahead,n=this.createNode(),r="",i=null,o=null,u=!1,l=!1,c=!1,p=!1;if(this.match("*"))this.nextToken();else if(u=this.match("["),"static"===(i=this.parseObjectPropertyKey()).name&&(this.qualifiedPropertyName(this.lookahead)||this.match("*"))&&(t=this.lookahead,c=!0,u=this.match("["),this.match("*")?this.nextToken():i=this.parseObjectPropertyKey()),3===t.type&&!this.hasLineTerminator&&"async"===t.value){var h=this.lookahead.value;":"!==h&&"("!==h&&"*"!==h&&(p=!0,t=this.lookahead,i=this.parseObjectPropertyKey(),3===t.type&&"constructor"===t.value&&this.tolerateUnexpectedToken(t,a.Messages.ConstructorIsAsync))}var d=this.qualifiedPropertyName(this.lookahead);return 3===t.type?"get"===t.value&&d?(r="get",u=this.match("["),i=this.parseObjectPropertyKey(),this.context.allowYield=!1,o=this.parseGetterMethod()):"set"===t.value&&d&&(r="set",u=this.match("["),i=this.parseObjectPropertyKey(),o=this.parseSetterMethod()):7===t.type&&"*"===t.value&&d&&(r="init",u=this.match("["),i=this.parseObjectPropertyKey(),o=this.parseGeneratorMethod(),l=!0),!r&&i&&this.match("(")&&(r="init",o=p?this.parsePropertyMethodAsyncFunction():this.parsePropertyMethodFunction(),l=!0),r||this.throwUnexpectedToken(this.lookahead),"init"===r&&(r="method"),u||(c&&this.isPropertyKey(i,"prototype")&&this.throwUnexpectedToken(t,a.Messages.StaticPrototype),!c&&this.isPropertyKey(i,"constructor")&&(("method"!==r||!l||o&&o.generator)&&this.throwUnexpectedToken(t,a.Messages.ConstructorSpecialMethod),e.value?this.throwUnexpectedToken(t,a.Messages.DuplicateConstructor):e.value=!0,r="constructor")),this.finalize(n,new s.MethodDefinition(i,u,o,r,c))},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 s.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&&3!==this.lookahead.type?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 s.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=3===this.lookahead.type?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 s.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();2!==this.lookahead.type;)t.push(this.parseStatementListItem());return this.finalize(e,new s.Module(t))},e.prototype.parseScript=function(){for(var e=this.createNode(),t=this.parseDirectivePrologues();2!==this.lookahead.type;)t.push(this.parseStatementListItem());return this.finalize(e,new s.Script(t))},e.prototype.parseModuleSpecifier=function(){var e=this.createNode();8!==this.lookahead.type&&this.throwError(a.Messages.InvalidModuleSpecifier);var t=this.nextToken(),n=this.getTokenRaw(t);return this.finalize(e,new s.Literal(t.value,n))},e.prototype.parseImportSpecifier=function(){var e,t,n=this.createNode();return 3===this.lookahead.type?(t=e=this.parseVariableIdentifier(),this.matchContextualKeyword("as")&&(this.nextToken(),t=this.parseVariableIdentifier())):(t=e=this.parseIdentifierName(),this.matchContextualKeyword("as")?(this.nextToken(),t=this.parseVariableIdentifier()):this.throwUnexpectedToken(this.nextToken())),this.finalize(n,new s.ImportSpecifier(t,e))},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 s.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 s.ImportNamespaceSpecifier(t))},e.prototype.parseImportDeclaration=function(){this.context.inFunctionBody&&this.throwError(a.Messages.IllegalImportDeclaration);var e,t=this.createNode();this.expectKeyword("import");var n=[];if(8===this.lookahead.type)e=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(),e=this.parseModuleSpecifier()}return this.consumeSemicolon(),this.finalize(t,new s.ImportDeclaration(n,e))},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 s.ExportSpecifier(t,n))},e.prototype.parseExportDeclaration=function(){this.context.inFunctionBody&&this.throwError(a.Messages.IllegalExportDeclaration);var e,t=this.createNode();if(this.expectKeyword("export"),this.matchKeyword("default"))if(this.nextToken(),this.matchKeyword("function")){var n=this.parseFunctionDeclaration(!0);e=this.finalize(t,new s.ExportDefaultDeclaration(n))}else this.matchKeyword("class")?(n=this.parseClassDeclaration(!0),e=this.finalize(t,new s.ExportDefaultDeclaration(n))):this.matchContextualKeyword("async")?(n=this.matchAsyncFunction()?this.parseFunctionDeclaration(!0):this.parseAssignmentExpression(),e=this.finalize(t,new s.ExportDefaultDeclaration(n))):(this.matchContextualKeyword("from")&&this.throwError(a.Messages.UnexpectedToken,this.lookahead.value),n=this.match("{")?this.parseObjectInitializer():this.match("[")?this.parseArrayInitializer():this.parseAssignmentExpression(),this.consumeSemicolon(),e=this.finalize(t,new s.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(),e=this.finalize(t,new s.ExportAllDeclaration(i))}else if(4===this.lookahead.type){switch(n=void 0,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)}e=this.finalize(t,new s.ExportNamedDeclaration(n,[],null))}else if(this.matchAsyncFunction())n=this.parseFunctionDeclaration(),e=this.finalize(t,new s.ExportNamedDeclaration(n,[],null));else{var o=[],u=null,l=!1;for(this.expect("{");!this.match("}");)l=l||this.matchKeyword("default"),o.push(this.parseExportSpecifier()),this.match("}")||this.expect(",");this.expect("}"),this.matchContextualKeyword("from")?(this.nextToken(),u=this.parseModuleSpecifier(),this.consumeSemicolon()):l?(r=this.lookahead.value?a.Messages.UnexpectedToken:a.Messages.MissingFromClause,this.throwError(r,this.lookahead.value)):this.consumeSemicolon(),e=this.finalize(t,new s.ExportNamedDeclaration(null,o,u))}return e},e}();t.Parser=c},function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.assert=function(e,t){if(!e)throw new Error("ASSERT: "+t)}},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)throw e;this.recordError(e)},e.prototype.constructError=function(e,t){var n=new 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)throw i;this.recordError(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 s(e){return"0123456789abcdef".indexOf(e.toLowerCase())}function o(e){return"01234567".indexOf(e)}var u=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 void 0===e&&(e=a.Messages.UnexpectedTokenIllegal),this.errorHandler.throwError(this.index,this.lineNumber,this.index-this.lineStart+1,e)},e.prototype.tolerateUnexpectedToken=function(e){void 0===e&&(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&&(r=[],t=this.index-e,n={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){n.end={line:this.lineNumber,column:this.index-this.lineStart-1};var s={multiLine:!1,slice:[t+e,this.index-1],range:[t,this.index-1],loc:n};r.push(s)}return 13===a&&10===this.source.charCodeAt(this.index)&&++this.index,++this.lineNumber,this.lineStart=this.index,r}}return this.trackComment&&(n.end={line:this.lineNumber,column:this.index-this.lineStart},s={multiLine:!1,slice:[t+e,this.index],range:[t,this.index],loc:n},r.push(s)),r},e.prototype.skipMultiLineComment=function(){var e,t,n=[];for(this.trackComment&&(n=[],e=this.index-2,t={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))13===r&&10===this.source.charCodeAt(this.index+1)&&++this.index,++this.lineNumber,++this.index,this.lineStart=this.index;else if(42===r){if(47===this.source.charCodeAt(this.index+1)){if(this.index+=2,this.trackComment){t.end={line:this.lineNumber,column:this.index-this.lineStart};var a={multiLine:!0,slice:[e+2,this.index-2],range:[e,this.index],loc:t};n.push(a)}return n}++this.index}else++this.index}return this.trackComment&&(t.end={line:this.lineNumber,column:this.index-this.lineStart},a={multiLine:!0,slice:[e+2,this.index],range:[e,this.index],loc:t},n.push(a)),this.tolerateUnexpectedToken(),n},e.prototype.scanComments=function(){var e;this.trackComment&&(e=[]);for(var t=0===this.index;!this.eof();){var n=this.source.charCodeAt(this.index);if(i.Character.isWhiteSpace(n))++this.index;else if(i.Character.isLineTerminator(n))++this.index,13===n&&10===this.source.charCodeAt(this.index)&&++this.index,++this.lineNumber,this.lineStart=this.index,t=!0;else if(47===n)if(47===(n=this.source.charCodeAt(this.index+1))){this.index+=2;var r=this.skipSingleLineComment(2);this.trackComment&&(e=e.concat(r)),t=!0}else{if(42!==n)break;this.index+=2,r=this.skipMultiLineComment(),this.trackComment&&(e=e.concat(r))}else if(t&&45===n){if(45!==this.source.charCodeAt(this.index+1)||62!==this.source.charCodeAt(this.index+2))break;this.index+=3,r=this.skipSingleLineComment(3),this.trackComment&&(e=e.concat(r))}else{if(60!==n||this.isModule)break;if("!--"!==this.source.slice(this.index+1,this.index+4))break;this.index+=4,r=this.skipSingleLineComment(4),this.trackComment&&(e=e.concat(r))}}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"eval"===e||"arguments"===e},e.prototype.isKeyword=function(e){switch(e.length){case 2:return"if"===e||"in"===e||"do"===e;case 3:return"var"===e||"for"===e||"new"===e||"try"===e||"let"===e;case 4:return"this"===e||"else"===e||"case"===e||"void"===e||"with"===e||"enum"===e;case 5:return"while"===e||"break"===e||"catch"===e||"throw"===e||"const"===e||"yield"===e||"class"===e||"super"===e;case 6:return"return"===e||"typeof"===e||"delete"===e||"switch"===e||"export"===e||"import"===e;case 7:return"default"===e||"finally"===e||"extends"===e;case 8:return"function"===e||"continue"===e||"debugger"===e;case 10:return"instanceof"===e;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);n>=56320&&n<=57343&&(t=1024*(t-55296)+n-56320+65536)}return t},e.prototype.scanHexEscape=function(e){for(var t="u"===e?4:2,n=0,r=0;r1114111||"}"!==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(92===t)return this.index=e,this.getComplexIdentifier();if(t>=55296&&t<57343)return this.index=e,this.getComplexIdentifier();if(!i.Character.isIdentifierPart(t))break;++this.index}return this.source.slice(e,this.index)},e.prototype.getComplexIdentifier=function(){var e,t=this.codePointAt(this.index),n=i.Character.fromCodePoint(t);for(this.index+=n.length,92===t&&(117!==this.source.charCodeAt(this.index)&&this.throwUnexpectedToken(),++this.index,"{"===this.source[this.index]?(++this.index,e=this.scanUnicodeCodePointEscape()):null!==(e=this.scanHexEscape("u"))&&"\\"!==e&&i.Character.isIdentifierStart(e.charCodeAt(0))||this.throwUnexpectedToken(),n=e);!this.eof()&&(t=this.codePointAt(this.index),i.Character.isIdentifierPart(t));)n+=e=i.Character.fromCodePoint(t),this.index+=e.length,92===t&&(n=n.substr(0,n.length-1),117!==this.source.charCodeAt(this.index)&&this.throwUnexpectedToken(),++this.index,"{"===this.source[this.index]?(++this.index,e=this.scanUnicodeCodePointEscape()):null!==(e=this.scanHexEscape("u"))&&"\\"!==e&&i.Character.isIdentifierPart(e.charCodeAt(0))||this.throwUnexpectedToken(),n+=e);return n},e.prototype.octalToDecimal=function(e){var t="0"!==e,n=o(e);return!this.eof()&&i.Character.isOctalDigit(this.source.charCodeAt(this.index))&&(t=!0,n=8*n+o(this.source[this.index++]),"0123".indexOf(e)>=0&&!this.eof()&&i.Character.isOctalDigit(this.source.charCodeAt(this.index))&&(n=8*n+o(this.source[this.index++]))),{code:n,octal:t}},e.prototype.scanIdentifier=function(){var e,t=this.index,n=92===this.source.charCodeAt(t)?this.getComplexIdentifier():this.getIdentifier();if(3!=(e=1===n.length?3:this.isKeyword(n)?4:"null"===n?5:"true"===n||"false"===n?1: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))?this.index+=4:"==="===(t=t.substr(0,3))||"!=="===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?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 0===t.length&&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()&&("0"===(t=this.source[this.index])||"1"===t);)n+=this.source[this.index++];return 0===n.length&&this.throwUnexpectedToken(),this.eof()||(t=this.source.charCodeAt(this.index),(i.Character.isIdentifierStart(t)||i.Character.isDecimalDigit(t))&&this.throwUnexpectedToken()),{type:6,value:parseInt(n,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||0!==n.length||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=0&&(n=n.replace(/\\u\{([0-9a-fA-F]+)\}|\\u([a-fA-F0-9]{4})/g,(function(e,t,n){var i=parseInt(t||n,16);return i>1114111&&r.throwUnexpectedToken(a.Messages.InvalidRegExp),i<=65535?String.fromCharCode(i):"￿"})).replace(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,"￿"));try{RegExp(n)}catch(e){this.throwUnexpectedToken(a.Messages.InvalidRegExp)}try{return new RegExp(e,t)}catch(e){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,s=!1;!this.eof();)if(t+=e=this.source[this.index++],"\\"===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){s=!0;break}"["===e&&(n=!0)}return s||this.throwUnexpectedToken(a.Messages.UnterminatedRegExp),t.substr(1,t.length-2)},e.prototype.scanRegExpFlags=function(){for(var e="";!this.eof();){var t=this.source[this.index];if(!i.Character.isIdentifierPart(t.charCodeAt(0)))break;if(++this.index,"\\"!==t||this.eof())e+=t;else if("u"===(t=this.source[this.index])){++this.index;var n=this.index,r=this.scanHexEscape("u");if(null!==r)for(e+=r;n=55296&&e<57343&&i.Character.isIdentifierStart(this.codePointAt(this.index))?this.scanIdentifier():this.scanPunctuator()},e}();t.Scanner=u},function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TokenName={},t.TokenName[1]="Boolean",t.TokenName[2]="",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:" ",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),s=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","=","+=","-=","*=","**=","/=","%=","<<=",">>=",">>>=","&=","|=","^=",",","+","-","*","**","/","%","++","--","<<",">>",">>>","&","|","^","!","~","&&","||","?",":","===","==",">=","<=","<",">","!=","!=="].indexOf(e)>=0},e.prototype.isRegexStart=function(){var e=this.values[this.values.length-1],t=null!==e;switch(e){case"this":case"]":t=!1;break;case")":var n=this.values[this.paren-1];t="if"===n||"while"===n||"for"===n||"with"===n;break;case"}":if(t=!1,"function"===this.values[this.curly-3])t=!!(r=this.values[this.curly-4])&&!this.beforeFunctionExpression(r);else if("function"===this.values[this.curly-4]){var r;t=!(r=this.values[this.curly-5])||!this.beforeFunctionExpression(r)}}return t},e.prototype.push=function(e){7===e.type||4===e.type?("{"===e.value?this.curly=this.values.length:"("===e.value&&(this.paren=this.values.length),this.values.push(e.value)):this.values.push(null)},e}(),o=function(){function e(e,t){this.errorHandler=new r.ErrorHandler,this.errorHandler.tolerant=!!t&&"boolean"==typeof t.tolerant&&t.tolerant,this.scanner=new i.Scanner(e,this.errorHandler),this.scanner.trackComment=!!t&&"boolean"==typeof t.comment&&t.comment,this.trackRange=!!t&&"boolean"==typeof t.range&&t.range,this.trackLoc=!!t&&"boolean"==typeof t.loc&&t.loc,this.buffer=[],this.reader=new s}return e.prototype.errors=function(){return this.errorHandler.errors},e.prototype.getNextToken=function(){if(0===this.buffer.length){var e=this.scanner.scanComments();if(this.scanner.trackComment)for(var t=0;t=0;--i){var l=r[i];if(l&&l.loc&&c.comparePos(l.loc.end,t.loc.start)<=0)break}return r.splice(i+1,0,t),r}}else{var h=p.get(t);if(h)return h}var d;if(o.check(t))d=Object.keys(t);else{if(!u.check(t))return r;d=a.getFieldNames(t)}r||p.set(t,r=[]),i=0;for(var f=d.length;i>1,y=l[m];if(c.comparePos(y.loc.start,t.loc.start)<=0&&c.comparePos(t.loc.end,y.loc.end)<=0)return void h(t.enclosingNode=y,t,n);if(c.comparePos(y.loc.end,t.loc.start)<=0)r=y,d=m+1;else{if(!(c.comparePos(t.loc.end,y.loc.start)<=0))throw new Error("Comment location overlaps with node location");i=y,f=m}}r&&(t.precedingNode=r),i&&(t.followingNode=i)}function d(e,t){var n=e.length;if(0!==n){for(var r,a=e[0].precedingNode,s=e[0].followingNode,o=s.loc.start,u=n;u>0;--u){r=e[u-1],i.default.strictEqual(r.precedingNode,a),i.default.strictEqual(r.followingNode,s);var l=t.sliceString(r.loc.end,o);if(/\S/.test(l))break;o=r.loc.start}for(;u<=n&&(r=e[u])&&("Line"===r.type||"CommentLine"===r.type)&&r.loc.start.column>s.loc.start.column;)++u;e.forEach((function(e,t){t0){var l=r[u-1];i.default.strictEqual(l.precedingNode===e.precedingNode,l.followingNode===e.followingNode),l.followingNode!==e.followingNode&&d(r,n)}r.push(e)}else if(a)d(r,n),y(a,e);else if(o)d(r,n),m(o,e);else{if(!s)throw new Error("AST contains no nodes at all?");d(r,n),function(e,t){t.leading=!1,t.trailing=!1,f(e,t)}(s,e)}})),d(r,n),e.forEach((function(e){delete e.precedingNode,delete e.enclosingNode,delete e.followingNode}))}},t.printComments=function(e,t){var n=e.getValue(),r=t(e),i=s.Node.check(n)&&a.getFieldValue(n,"comments");if(!i||0===i.length)return r;var o=[],u=[r];return e.each((function(e){var r=e.getValue(),i=a.getFieldValue(r,"leading"),c=a.getFieldValue(r,"trailing");i||c&&!s.Statement.check(n)&&"Block"!==r.type&&"CommentBlock"!==r.type?o.push(function(e,t){var n=e.getValue();s.Comment.assert(n);var r=n.loc,i=r&&r.lines,a=[t(e)];if(n.trailing)a.push("\n");else if(i instanceof l.Lines){var o=i.slice(r.end,i.skipSpaces(r.end)||i.lastPos());1===o.length?a.push(o):a.push(new Array(o.length).join("\n"))}else a.push("\n");return l.concat(a)}(e,t)):c&&u.push(function(e,t){var n=e.getValue(e);s.Comment.assert(n);var r=n.loc,i=r&&r.lines,a=[];if(i instanceof l.Lines){var o=i.skipSpaces(r.start,!0)||i.firstPos(),u=i.slice(o,r.start);1===u.length?a.push(u):a.push(new Array(u.length).join("\n"))}return a.push(t(e)),l.concat(a)}(e,t))}),"comments"),o.push.apply(o,u),l.concat(o)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(0),i=r.__importDefault(n(4)),a=r.__importStar(n(3)),s=r.__importStar(n(5)),o=a.namedTypes,u=a.builtInTypes.array,l=a.builtInTypes.number,c={};[["||"],["&&"],["|"],["^"],["&"],["==","===","!=","!=="],["<",">","<=",">=","in","instanceof"],[">>","<<",">>>"],["+","-"],["*","/","%"],["**"]].forEach((function(e,t){e.forEach((function(e){c[e]=t}))}));var p=function e(t){i.default.ok(this instanceof e),this.stack=[t]},h=p.prototype;function d(e,t){for(var n=e.stack,r=n.length-1;r>=0;r-=2){var i=n[r];if(o.Node.check(i)&&--t<0)return i}return null}function f(e){return o.BinaryExpression.check(e)||o.LogicalExpression.check(e)}function m(e){return!!o.CallExpression.check(e)||(u.check(e)?e.some(m):!!o.Node.check(e)&&a.someField(e,(function(e,t){return m(t)})))}p.from=function(e){if(e instanceof p)return e.copy();if(e instanceof a.NodePath){for(var t=Object.create(p.prototype),n=[e.value],r=void 0;r=e.parentPath;e=r)n.push(e.name,r.value);return t.stack=n.reverse(),t}return new p(e)},h.copy=function(){var e=Object.create(p.prototype);return e.stack=this.stack.slice(0),e},h.getName=function(){var e=this.stack,t=e.length;return t>1?e[t-2]:null},h.getValue=function(){var e=this.stack;return e[e.length-1]},h.valueIsDuplicate=function(){var e=this.stack,t=e.length-1;return e.lastIndexOf(e[t],t-1)>=0},h.getNode=function(e){return void 0===e&&(e=0),d(this,~~e)},h.getParentNode=function(e){return void 0===e&&(e=0),d(this,1+~~e)},h.getRootValue=function(){var e=this.stack;return e.length%2==0?e[1]:e[0]},h.call=function(e){for(var t=this.stack,n=t.length,r=t[n-1],i=arguments.length,a=1;a0){var r=n[t.start.token-1];if(r){var i=this.getRootValue().loc;if(s.comparePos(i.start,r.loc.start)<=0)return r}}return null},h.getNextToken=function(e){var t=(e=e||this.getNode())&&e.loc,n=t&&t.tokens;if(n&&t.end.tokenp)return!0;if(s===p&&"right"===r)return i.default.strictEqual(n.right,t),!0;break;default:return!1}break;case"SequenceExpression":switch(n.type){case"ReturnStatement":case"ForStatement":return!1;case"ExpressionStatement":return"expression"!==r;default:return!0}case"IntersectionTypeAnnotation":case"UnionTypeAnnotation":return"NullableTypeAnnotation"===n.type;case"Literal":return"MemberExpression"===n.type&&l.check(t.value)&&"object"===r&&n.object===t;case"NumericLiteral":return"MemberExpression"===n.type&&"object"===r&&n.object===t;case"YieldExpression":case"AwaitExpression":case"AssignmentExpression":case"ConditionalExpression":switch(n.type){case"UnaryExpression":case"SpreadElement":case"SpreadProperty":case"BinaryExpression":case"LogicalExpression":return!0;case"CallExpression":case"NewExpression":return"callee"===r&&n.callee===t;case"ConditionalExpression":return"test"===r&&n.test===t;case"MemberExpression":return"object"===r&&n.object===t;default:return!1}case"ArrowFunctionExpression":return!(!o.CallExpression.check(n)||"callee"!==r||n.callee!==t)||(!(!o.MemberExpression.check(n)||"object"!==r||n.object!==t)||(!(!o.TSAsExpression||!o.TSAsExpression.check(n)||"expression"!==r||n.expression!==t)||f(n)));case"ObjectExpression":if("ArrowFunctionExpression"===n.type&&"body"===r&&n.body===t)return!0;break;case"TSAsExpression":if("ArrowFunctionExpression"===n.type&&"body"===r&&n.body===t&&"ObjectExpression"===t.expression.type)return!0;break;case"CallExpression":if("declaration"===r&&o.ExportDefaultDeclaration.check(n)&&o.FunctionExpression.check(t.callee))return!0}return"NewExpression"===n.type&&"callee"===r&&n.callee===t?m(t):!(!0===e||this.canBeFirstInStatement()||!this.firstInStatement())},h.canBeFirstInStatement=function(){var e=this.getNode();return!o.FunctionExpression.check(e)&&(!o.ObjectExpression.check(e)&&!o.ClassExpression.check(e))},h.firstInStatement=function(){for(var e,t,n,r,a=this.stack,s=a.length-1;s>=0;s-=2)if(o.Node.check(a[s])&&(n=e,r=t,e=a[s-1],t=a[s]),t&&r){if(o.BlockStatement.check(t)&&"body"===e&&0===n)return i.default.strictEqual(t.body[0],r),!0;if(o.ExpressionStatement.check(t)&&"expression"===n)return i.default.strictEqual(t.expression,r),!0;if(o.AssignmentExpression.check(t)&&"left"===n)return i.default.strictEqual(t.left,r),!0;if(o.ArrowFunctionExpression.check(t)&&"body"===n)return i.default.strictEqual(t.body,r),!0;if(o.SequenceExpression.check(t)&&"expressions"===e&&0===n)i.default.strictEqual(t.expressions[0],r);else if(o.CallExpression.check(t)&&"callee"===n)i.default.strictEqual(t.callee,r);else if(o.MemberExpression.check(t)&&"object"===n)i.default.strictEqual(t.object,r);else if(o.ConditionalExpression.check(t)&&"test"===n)i.default.strictEqual(t.test,r);else if(f(t)&&"left"===n)i.default.strictEqual(t.left,r);else{if(!o.UnaryExpression.check(t)||t.prefix||"argument"!==n)return!1;i.default.strictEqual(t.argument,r)}}return!0},t.default=p},function(e,t,n){e.exports=n(32)},function(e,t,n){"use strict";(function(e){Object.defineProperty(t,"__esModule",{value:!0}),t.run=t.prettyPrint=t.print=t.types=t.parse=void 0;var r=n(0),i=r.__importDefault(n(33)),a=r.__importStar(n(3));t.types=a;var s=n(43);Object.defineProperty(t,"parse",{enumerable:!0,get:function(){return s.parse}});var o=n(58),u=n(3);function l(e,t){return new o.Printer(t).print(e)}function c(t){e.stdout.write(t)}Object.defineProperty(t,"visit",{enumerable:!0,get:function(){return u.visit}}),t.print=l,t.prettyPrint=function(e,t){return new o.Printer(t).printGenerically(e)},t.run=function(t,n){return function(e,t,n){i.default.readFile(e,"utf-8",(function(e,r){e?console.error(e):function(e,t,n){var r=n&&n.writeback||c;t(s.parse(e,n),(function(e){r(l(e,n).code)}))}(r,t,n)}))}(e.argv[2],t,n)}}).call(this,n(12))},function(e,t){},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(0),i=r.__importDefault(n(1)),a=r.__importDefault(n(35)),s=r.__importDefault(n(37)),o=r.__importDefault(n(14)),u=r.__importDefault(n(13));t.default=function(e){var t=function(){var e=[],t=[];var n={use:function(r){var i=e.indexOf(r);return-1===i&&(i=e.length,e.push(r),t[i]=r(n)),t[i]}};return n}(),n=t.use(i.default);e.forEach(t.use),n.finalize();var r=t.use(a.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(s.default),finalize:n.finalize,Path:t.use(o.default),NodePath:t.use(u.default),PathVisitor:r,use:t.use,visit:r.visit}},e.exports=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(0),i=r.__importDefault(n(1)),a=r.__importDefault(n(13)),s=Object.prototype.hasOwnProperty;t.default=function(e){var t=e.use(i.default),n=e.use(a.default),r=t.builtInTypes.array,o=t.builtInTypes.object,u=t.builtInTypes.function,l=function e(){if(!(this instanceof e))throw new Error("PathVisitor constructor cannot be invoked without 'new'");this._reusableContextStack=[],this._methodNameTable=function(e){var n=Object.create(null);for(var r in e)/^visit[A-Z]/.test(r)&&(n[r.slice("visit".length)]=!0);for(var i=t.computeSupertypeLookupTable(n),a=Object.create(null),s=Object.keys(i),o=s.length,l=0;l0;){var t=e.tokens[this.startTokenIndex];if(!(h.comparePos(e.start,t.loc.start)<0))break;--this.startTokenIndex}for(;this.endTokenIndexthis.startTokenIndex;){t=e.tokens[this.endTokenIndex-1];if(!(h.comparePos(e.end,t.loc.end)<0))break;--this.endTokenIndex}e.end.token=this.endTokenIndex}},function(e,t){var n;n=function(){return this}();try{n=n||new Function("return this")()}catch(e){"object"==typeof window&&(n=window)}e.exports=n},function(e,t,n){"use strict"; /* object-assign (c) Sindre Sorhus @license MIT */var r=Object.getOwnPropertySymbols,i=Object.prototype.hasOwnProperty,a=Object.prototype.propertyIsEnumerable;function s(e){if(null==e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}e.exports=function(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(t).map((function(e){return t[e]})).join(""))return!1;var r={};return"abcdefghijklmnopqrst".split("").forEach((function(e){r[e]=e})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},r)).join("")}catch(e){return!1}}()?Object.assign:function(e,t){for(var n,o,u=s(e),l=1;l=a)return e;switch(e){case"%s":return String(r[n++]);case"%d":return Number(r[n++]);case"%j":try{return JSON.stringify(r[n++])}catch(e){return"[Circular]"}default:return e}})),u=r[n];n=3&&(r.depth=arguments[2]),arguments.length>=4&&(r.colors=arguments[3]),f(n)?r.showHidden=n:n&&t._extend(r,n),x(r.showHidden)&&(r.showHidden=!1),x(r.depth)&&(r.depth=2),x(r.colors)&&(r.colors=!1),x(r.customInspect)&&(r.customInspect=!0),r.colors&&(r.stylize=u),c(r,e,r.depth)}function u(e,t){var n=o.styles[t];return n?"["+o.colors[n][0]+"m"+e+"["+o.colors[n][1]+"m":e}function l(e,t){return e}function c(e,n,r){if(e.customInspect&&n&&D(n.inspect)&&n.inspect!==t.inspect&&(!n.constructor||n.constructor.prototype!==n)){var i=n.inspect(r,e);return g(i)||(i=c(e,i,r)),i}var a=function(e,t){if(x(t))return e.stylize("undefined","undefined");if(g(t)){var n="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(n,"string")}if(y(t))return e.stylize(""+t,"number");if(f(t))return e.stylize(""+t,"boolean");if(m(t))return e.stylize("null","null")}(e,n);if(a)return a;var s=Object.keys(n),o=function(e){var t={};return e.forEach((function(e,n){t[e]=!0})),t}(s);if(e.showHidden&&(s=Object.getOwnPropertyNames(n)),S(n)&&(s.indexOf("message")>=0||s.indexOf("description")>=0))return p(n);if(0===s.length){if(D(n)){var u=n.name?": "+n.name:"";return e.stylize("[Function"+u+"]","special")}if(v(n))return e.stylize(RegExp.prototype.toString.call(n),"regexp");if(E(n))return e.stylize(Date.prototype.toString.call(n),"date");if(S(n))return p(n)}var l,b="",C=!1,A=["{","}"];(d(n)&&(C=!0,A=["[","]"]),D(n))&&(b=" [Function"+(n.name?": "+n.name:"")+"]");return v(n)&&(b=" "+RegExp.prototype.toString.call(n)),E(n)&&(b=" "+Date.prototype.toUTCString.call(n)),S(n)&&(b=" "+p(n)),0!==s.length||C&&0!=n.length?r<0?v(n)?e.stylize(RegExp.prototype.toString.call(n),"regexp"):e.stylize("[Object]","special"):(e.seen.push(n),l=C?function(e,t,n,r,i){for(var a=[],s=0,o=t.length;s=0&&0,e+t.replace(/\u001b\[\d\d?m/g,"").length+1}),0)>60)return n[0]+(""===t?"":t+"\n ")+" "+e.join(",\n ")+" "+n[1];return n[0]+t+" "+e.join(", ")+" "+n[1]}(l,b,A)):A[0]+b+A[1]}function p(e){return"["+Error.prototype.toString.call(e)+"]"}function h(e,t,n,r,i,a){var s,o,u;if((u=Object.getOwnPropertyDescriptor(t,i)||{value:t[i]}).get?o=u.set?e.stylize("[Getter/Setter]","special"):e.stylize("[Getter]","special"):u.set&&(o=e.stylize("[Setter]","special")),k(r,i)||(s="["+i+"]"),o||(e.seen.indexOf(u.value)<0?(o=m(n)?c(e,u.value,null):c(e,u.value,n-1)).indexOf("\n")>-1&&(o=a?o.split("\n").map((function(e){return" "+e})).join("\n").substr(2):"\n"+o.split("\n").map((function(e){return" "+e})).join("\n")):o=e.stylize("[Circular]","special")),x(s)){if(a&&i.match(/^\d+$/))return o;(s=JSON.stringify(""+i)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(s=s.substr(1,s.length-2),s=e.stylize(s,"name")):(s=s.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),s=e.stylize(s,"string"))}return s+": "+o}function d(e){return Array.isArray(e)}function f(e){return"boolean"==typeof e}function m(e){return null===e}function y(e){return"number"==typeof e}function g(e){return"string"==typeof e}function x(e){return void 0===e}function v(e){return b(e)&&"[object RegExp]"===C(e)}function b(e){return"object"==typeof e&&null!==e}function E(e){return b(e)&&"[object Date]"===C(e)}function S(e){return b(e)&&("[object Error]"===C(e)||e instanceof Error)}function D(e){return"function"==typeof e}function C(e){return Object.prototype.toString.call(e)}function A(e){return e<10?"0"+e.toString(10):e.toString(10)}t.debuglog=function(n){if(x(a)&&(a=e.env.NODE_DEBUG||""),n=n.toUpperCase(),!s[n])if(new RegExp("\\b"+n+"\\b","i").test(a)){var r=e.pid;s[n]=function(){var e=t.format.apply(t,arguments);console.error("%s %d: %s",n,r,e)}}else s[n]=function(){};return s[n]},t.inspect=o,o.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},o.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},t.isArray=d,t.isBoolean=f,t.isNull=m,t.isNullOrUndefined=function(e){return null==e},t.isNumber=y,t.isString=g,t.isSymbol=function(e){return"symbol"==typeof e},t.isUndefined=x,t.isRegExp=v,t.isObject=b,t.isDate=E,t.isError=S,t.isFunction=D,t.isPrimitive=function(e){return null===e||"boolean"==typeof e||"number"==typeof e||"string"==typeof e||"symbol"==typeof e||void 0===e},t.isBuffer=n(47);var T=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function w(){var e=new Date,t=[A(e.getHours()),A(e.getMinutes()),A(e.getSeconds())].join(":");return[e.getDate(),T[e.getMonth()],t].join(" ")}function k(e,t){return Object.prototype.hasOwnProperty.call(e,t)}t.log=function(){console.log("%s - %s",w(),t.format.apply(t,arguments))},t.inherits=n(48),t._extend=function(e,t){if(!t||!b(t))return e;for(var n=Object.keys(t),r=n.length;r--;)e[n[r]]=t[n[r]];return e};var F="undefined"!=typeof Symbol?Symbol("util.promisify.custom"):void 0;function P(e,t){if(!e){var n=new Error("Promise was rejected with a falsy value");n.reason=e,e=n}return t(e)}t.promisify=function(e){if("function"!=typeof e)throw new TypeError('The "original" argument must be of type Function');if(F&&e[F]){var t;if("function"!=typeof(t=e[F]))throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(t,F,{value:t,enumerable:!1,writable:!1,configurable:!0}),t}function t(){for(var t,n,r=new Promise((function(e,r){t=e,n=r})),i=[],a=0;ai||a==i&&o>=s||r.compareByGeneratedPositionsInflated(t,n)<=0?(this._last=e,this._array.push(e)):(this._sorted=!1,this._array.push(e))},i.prototype.toArray=function(){return this._sorted||(this._array.sort(r.compareByGeneratedPositionsInflated),this._sorted=!0),this._array},t.MappingList=i},function(e,t,n){var r=n(6),i=n(53),a=n(27).ArraySet,s=n(26),o=n(54).quickSort;function u(e,t){var n=e;return"string"==typeof e&&(n=r.parseSourceMapInput(e)),null!=n.sections?new p(n,t):new l(n,t)}function l(e,t){var n=e;"string"==typeof e&&(n=r.parseSourceMapInput(e));var i=r.getArg(n,"version"),s=r.getArg(n,"sources"),o=r.getArg(n,"names",[]),u=r.getArg(n,"sourceRoot",null),l=r.getArg(n,"sourcesContent",null),c=r.getArg(n,"mappings"),p=r.getArg(n,"file",null);if(i!=this._version)throw new Error("Unsupported version: "+i);u&&(u=r.normalize(u)),s=s.map(String).map(r.normalize).map((function(e){return u&&r.isAbsolute(u)&&r.isAbsolute(e)?r.relative(u,e):e})),this._names=a.fromArray(o.map(String),!0),this._sources=a.fromArray(s,!0),this._absoluteSources=this._sources.toArray().map((function(e){return r.computeSourceURL(u,e,t)})),this.sourceRoot=u,this.sourcesContent=l,this._mappings=c,this._sourceMapURL=t,this.file=p}function c(){this.generatedLine=0,this.generatedColumn=0,this.source=null,this.originalLine=null,this.originalColumn=null,this.name=null}function p(e,t){var n=e;"string"==typeof e&&(n=r.parseSourceMapInput(e));var i=r.getArg(n,"version"),s=r.getArg(n,"sections");if(i!=this._version)throw new Error("Unsupported version: "+i);this._sources=new a,this._names=new a;var o={line:-1,column:0};this._sections=s.map((function(e){if(e.url)throw new Error("Support for url field in sections not implemented.");var n=r.getArg(e,"offset"),i=r.getArg(n,"line"),a=r.getArg(n,"column");if(i=0){var o=this._originalMappings[s];if(void 0===e.column)for(var u=o.originalLine;o&&o.originalLine===u;)a.push({line:r.getArg(o,"generatedLine",null),column:r.getArg(o,"generatedColumn",null),lastColumn:r.getArg(o,"lastGeneratedColumn",null)}),o=this._originalMappings[++s];else for(var l=o.originalColumn;o&&o.originalLine===t&&o.originalColumn==l;)a.push({line:r.getArg(o,"generatedLine",null),column:r.getArg(o,"generatedColumn",null),lastColumn:r.getArg(o,"lastGeneratedColumn",null)}),o=this._originalMappings[++s]}return a},t.SourceMapConsumer=u,l.prototype=Object.create(u.prototype),l.prototype.consumer=u,l.prototype._findSourceIndex=function(e){var t,n=e;if(null!=this.sourceRoot&&(n=r.relative(this.sourceRoot,n)),this._sources.has(n))return this._sources.indexOf(n);for(t=0;t1&&(n.source=m+a[1],m+=a[1],n.originalLine=d+a[2],d=n.originalLine,n.originalLine+=1,n.originalColumn=f+a[3],f=n.originalColumn,a.length>4&&(n.name=y+a[4],y+=a[4])),S.push(n),"number"==typeof n.originalLine&&E.push(n)}o(S,r.compareByGeneratedPositionsDeflated),this.__generatedMappings=S,o(E,r.compareByOriginalPositions),this.__originalMappings=E},l.prototype._findMapping=function(e,t,n,r,a,s){if(e[n]<=0)throw new TypeError("Line must be greater than or equal to 1, got "+e[n]);if(e[r]<0)throw new TypeError("Column must be greater than or equal to 0, got "+e[r]);return i.search(e,t,a,s)},l.prototype.computeColumnSpans=function(){for(var e=0;e=0){var i=this._generatedMappings[n];if(i.generatedLine===t.generatedLine){var a=r.getArg(i,"source",null);null!==a&&(a=this._sources.at(a),a=r.computeSourceURL(this.sourceRoot,a,this._sourceMapURL));var s=r.getArg(i,"name",null);return null!==s&&(s=this._names.at(s)),{source:a,line:r.getArg(i,"originalLine",null),column:r.getArg(i,"originalColumn",null),name:s}}}return{source:null,line:null,column:null,name:null}},l.prototype.hasContentsOfAllSources=function(){return!!this.sourcesContent&&(this.sourcesContent.length>=this._sources.size()&&!this.sourcesContent.some((function(e){return null==e})))},l.prototype.sourceContentFor=function(e,t){if(!this.sourcesContent)return null;var n=this._findSourceIndex(e);if(n>=0)return this.sourcesContent[n];var i,a=e;if(null!=this.sourceRoot&&(a=r.relative(this.sourceRoot,a)),null!=this.sourceRoot&&(i=r.urlParse(this.sourceRoot))){var s=a.replace(/^file:\/\//,"");if("file"==i.scheme&&this._sources.has(s))return this.sourcesContent[this._sources.indexOf(s)];if((!i.path||"/"==i.path)&&this._sources.has("/"+a))return this.sourcesContent[this._sources.indexOf("/"+a)]}if(t)return null;throw new Error('"'+a+'" is not in the SourceMap.')},l.prototype.generatedPositionFor=function(e){var t=r.getArg(e,"source");if((t=this._findSourceIndex(t))<0)return{line:null,column:null,lastColumn:null};var n={source:t,originalLine:r.getArg(e,"line"),originalColumn:r.getArg(e,"column")},i=this._findMapping(n,this._originalMappings,"originalLine","originalColumn",r.compareByOriginalPositions,r.getArg(e,"bias",u.GREATEST_LOWER_BOUND));if(i>=0){var a=this._originalMappings[i];if(a.source===n.source)return{line:r.getArg(a,"generatedLine",null),column:r.getArg(a,"generatedColumn",null),lastColumn:r.getArg(a,"lastGeneratedColumn",null)}}return{line:null,column:null,lastColumn:null}},t.BasicSourceMapConsumer=l,p.prototype=Object.create(u.prototype),p.prototype.constructor=u,p.prototype._version=3,Object.defineProperty(p.prototype,"sources",{get:function(){for(var e=[],t=0;t0?r-u>1?e(u,r,i,a,s,o):o==t.LEAST_UPPER_BOUND?r1?e(n,u,i,a,s,o):o==t.LEAST_UPPER_BOUND?u:n<0?-1:n}(-1,n.length,e,n,r,i||t.GREATEST_LOWER_BOUND);if(a<0)return-1;for(;a-1>=0&&0===r(n[a],n[a-1],!0);)--a;return a}},function(e,t){function n(e,t,n){var r=e[t];e[t]=e[n],e[n]=r}function r(e,t,i,a){if(i=0;t--)this.prepend(e[t]);else{if(!e[s]&&"string"!=typeof e)throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+e);this.children.unshift(e)}return this},o.prototype.walk=function(e){for(var t,n=0,r=this.children.length;n0){for(t=[],n=0;n0?(o.column=0,u.column=0):r.default.strictEqual(c,0);i.comparePos(u,s)<0&&n.nextPos(u,!0);)r.default.ok(e.nextPos(o,!0)),r.default.strictEqual(e.charAt(o),n.charAt(u))}else{o=e.skipSpaces(t,!0)||e.firstPos(),u=n.skipSpaces(a,!0)||n.firstPos();c=s.line-u.line;for(o.line+=c,u.line+=c,c<0?(o.column=e.getLineLength(o.line),u.column=n.getLineLength(u.line)):r.default.strictEqual(c,0);i.comparePos(s,u)<0&&n.prevPos(u,!0);)r.default.ok(e.prevPos(o,!0)),r.default.strictEqual(e.charAt(o),n.charAt(u))}return o}(s,o,t,c,p)}if(i.comparePos(n,l.start)<=0)if(i.comparePos(l.end,a)<=0)l={start:o(l.start,n.line,n.column),end:o(l.end,n.line,n.column)};else{if(i.comparePos(a,l.start)<=0)return null;u={start:u.start,end:c("end")},l={start:o(l.start,n.line,n.column),end:o(a,n.line,n.column)}}else{if(i.comparePos(l.end,n)<=0)return null;i.comparePos(l.end,a)<=0?(u={start:c("start"),end:u.end},l={start:{line:1,column:0},end:o(l.end,n.line,n.column)}):(u={start:c("start"),end:c("end")},l={start:{line:1,column:0},end:o(a,n.line,n.column)})}return new e(this.sourceLines,u,l)},e.prototype.add=function(t,n){return new e(this.sourceLines,this.sourceLoc,{start:s(this.targetLoc.start,t,n),end:s(this.targetLoc.end,t,n)})},e.prototype.subtract=function(t,n){return new e(this.sourceLines,this.sourceLoc,{start:o(this.targetLoc.start,t,n),end:o(this.targetLoc.end,t,n)})},e.prototype.indent=function(t,n,r){if(void 0===n&&(n=!1),void 0===r&&(r=!1),0===t)return this;var i=this.targetLoc,a=i.start.line,s=i.end.line;if(n&&1===a&&1===s)return this;if(i={start:i.start,end:i.end},!n||a>1){var o=i.start.column+t;i.start={line:a,column:r?Math.max(0,o):o}}if(!n||s>1){var u=i.end.column+t;i.end={line:s,column:r?Math.max(0,u):u}}return new e(this.sourceLines,this.sourceLoc,i)},e}();function s(e,t,n){return{line:e.line+t-1,column:1===e.line?e.column+n:e.column}}function o(e,t,n){return{line:e.line-t+1,column:e.line===t?e.column-n:e.column}}t.default=a},function(e,t,n){"use strict";var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};Object.defineProperty(t,"__esModule",{value:!0}),t.Printer=void 0;var i=n(0),a=i.__importDefault(n(4)),s=n(29),o=n(8),u=n(11),l=n(59),c=i.__importStar(n(3)),p=c.namedTypes,h=c.builtInTypes.string,d=c.builtInTypes.object,f=i.__importDefault(n(30)),m=i.__importStar(n(5)),y=function e(t,n){a.default.ok(this instanceof e),h.assert(t),this.code=t,n&&(d.assert(n),this.map=n)},g=!1;y.prototype.toString=function(){return g||(console.warn("Deprecation warning: recast.print now returns an object with a .code property. You appear to be treating the object as a string, which might still work but is strongly discouraged."),g=!0),this.code};var x=new y("");function v(e,t,n,i){a.default.ok(e instanceof f.default);var s=e.getValue(),u=[],l=function(e,t,n){var i=e.getValue();if(!i)return o.fromString("");if("string"==typeof i)return o.fromString(i,t);p.Printable.assert(i);var s=[];switch(i.type){case"File":return e.call(n,"program");case"Program":return i.directives&&e.each((function(e){s.push(n(e),";\n")}),"directives"),i.interpreter&&s.push(e.call(n,"interpreter")),s.push(e.call((function(e){return b(e,t,n)}),"body")),o.concat(s);case"Noop":case"EmptyStatement":return o.fromString("");case"ExpressionStatement":return o.concat([e.call(n,"expression"),";"]);case"ParenthesizedExpression":return o.concat(["(",e.call(n,"expression"),")"]);case"BinaryExpression":case"LogicalExpression":case"AssignmentExpression":return o.fromString(" ").join([e.call(n,"left"),i.operator,e.call(n,"right")]);case"AssignmentPattern":return o.concat([e.call(n,"left")," = ",e.call(n,"right")]);case"MemberExpression":case"OptionalMemberExpression":s.push(e.call(n,"object"));var u=e.call(n,"property"),l=c.getFieldValue(i,"optional");return i.computed?s.push(l?"?.[":"[",u,"]"):s.push(l?"?.":".",u),o.concat(s);case"ChainExpression":return e.call(n,"expression");case"MetaProperty":return o.concat([e.call(n,"meta"),".",e.call(n,"property")]);case"BindExpression":return i.object&&s.push(e.call(n,"object")),s.push("::",e.call(n,"callee")),o.concat(s);case"Path":return o.fromString(".").join(i.body);case"Identifier":return o.concat([o.fromString(i.name,t),i.optional?"?":"",e.call(n,"typeAnnotation")]);case"SpreadElement":case"SpreadElementPattern":case"RestProperty":case"SpreadProperty":case"SpreadPropertyPattern":case"ObjectTypeSpreadProperty":case"RestElement":return o.concat(["...",e.call(n,"argument"),e.call(n,"typeAnnotation")]);case"FunctionDeclaration":case"FunctionExpression":case"TSDeclareFunction":return i.declare&&s.push("declare "),i.async&&s.push("async "),s.push("function"),i.generator&&s.push("*"),i.id?s.push(" ",e.call(n,"id"),e.call(n,"typeParameters")):i.typeParameters&&s.push(e.call(n,"typeParameters")),s.push("(",D(e,t,n),")",e.call(n,"returnType")),i.body&&s.push(" ",e.call(n,"body")),o.concat(s);case"ArrowFunctionExpression":return i.async&&s.push("async "),i.typeParameters&&s.push(e.call(n,"typeParameters")),t.arrowParensAlways||1!==i.params.length||i.rest||"Identifier"!==i.params[0].type||i.params[0].typeAnnotation||i.returnType?s.push("(",D(e,t,n),")",e.call(n,"returnType")):s.push(e.call(n,"params",0)),s.push(" => ",e.call(n,"body")),o.concat(s);case"MethodDefinition":return E(e,t,n);case"YieldExpression":return s.push("yield"),i.delegate&&s.push("*"),i.argument&&s.push(" ",e.call(n,"argument")),o.concat(s);case"AwaitExpression":return s.push("await"),i.all&&s.push("*"),i.argument&&s.push(" ",e.call(n,"argument")),o.concat(s);case"ModuleDeclaration":return s.push("module",e.call(n,"id")),i.source?(a.default.ok(!i.body),s.push("from",e.call(n,"source"))):s.push(e.call(n,"body")),o.fromString(" ").join(s);case"ImportSpecifier":return i.importKind&&"value"!==i.importKind&&s.push(i.importKind+" "),i.imported?(s.push(e.call(n,"imported")),i.local&&i.local.name!==i.imported.name&&s.push(" as ",e.call(n,"local"))):i.id&&(s.push(e.call(n,"id")),i.name&&s.push(" as ",e.call(n,"name"))),o.concat(s);case"ExportSpecifier":return i.local?(s.push(e.call(n,"local")),i.exported&&i.exported.name!==i.local.name&&s.push(" as ",e.call(n,"exported"))):i.id&&(s.push(e.call(n,"id")),i.name&&s.push(" as ",e.call(n,"name"))),o.concat(s);case"ExportBatchSpecifier":return o.fromString("*");case"ImportNamespaceSpecifier":return s.push("* as "),i.local?s.push(e.call(n,"local")):i.id&&s.push(e.call(n,"id")),o.concat(s);case"ImportDefaultSpecifier":return i.local?e.call(n,"local"):e.call(n,"id");case"TSExportAssignment":return o.concat(["export = ",e.call(n,"expression")]);case"ExportDeclaration":case"ExportDefaultDeclaration":case"ExportNamedDeclaration":return C(e,t,n);case"ExportAllDeclaration":return s.push("export *"),i.exported&&s.push(" as ",e.call(n,"exported")),s.push(" from ",e.call(n,"source"),";"),o.concat(s);case"TSNamespaceExportDeclaration":return s.push("export as namespace ",e.call(n,"id")),_(o.concat(s));case"ExportNamespaceSpecifier":return o.concat(["* as ",e.call(n,"exported")]);case"ExportDefaultSpecifier":return e.call(n,"exported");case"Import":return o.fromString("import",t);case"ImportExpression":return o.concat(["import(",e.call(n,"source"),")"]);case"ImportDeclaration":if(s.push("import "),i.importKind&&"value"!==i.importKind&&s.push(i.importKind+" "),i.specifiers&&i.specifiers.length>0){var h=[],d=[];if(e.each((function(e){var t=e.getValue();"ImportSpecifier"===t.type?d.push(n(e)):"ImportDefaultSpecifier"!==t.type&&"ImportNamespaceSpecifier"!==t.type||h.push(n(e))}),"specifiers"),h.forEach((function(e,t){t>0&&s.push(", "),s.push(e)})),d.length>0)(ve=o.fromString(", ").join(d)).getLineLength(1)>t.wrapColumn&&(ve=o.concat([o.fromString(",\n").join(d).indent(t.tabWidth),","])),h.length>0&&s.push(", "),ve.length>1?s.push("{\n",ve,"\n}"):t.objectCurlySpacing?s.push("{ ",ve," }"):s.push("{",ve,"}");s.push(" from ")}return s.push(e.call(n,"source"),";"),o.concat(s);case"BlockStatement":var f=e.call((function(e){return b(e,t,n)}),"body");return!f.isEmpty()||i.directives&&0!==i.directives.length?(s.push("{\n"),i.directives&&e.each((function(e){s.push(_(n(e).indent(t.tabWidth)),i.directives.length>1||!f.isEmpty()?"\n":"")}),"directives"),s.push(f.indent(t.tabWidth)),s.push("\n}"),o.concat(s)):o.fromString("{}");case"ReturnStatement":if(s.push("return"),i.argument){var y=e.call(n,"argument");y.startsWithComment()||y.length>1&&p.JSXElement&&p.JSXElement.check(i.argument)?s.push(" (\n",y.indent(t.tabWidth),"\n)"):s.push(" ",y)}return s.push(";"),o.concat(s);case"CallExpression":case"OptionalCallExpression":return s.push(e.call(n,"callee")),i.typeParameters&&s.push(e.call(n,"typeParameters")),i.typeArguments&&s.push(e.call(n,"typeArguments")),c.getFieldValue(i,"optional")&&s.push("?."),s.push(S(e,t,n)),o.concat(s);case"ObjectExpression":case"ObjectPattern":case"ObjectTypeAnnotation":var g="ObjectTypeAnnotation"===i.type,x=t.flowObjectCommas?",":g?";":",",v=[],k=!1;g&&(v.push("indexers","callProperties"),null!=i.internalSlots&&v.push("internalSlots")),v.push("properties");var P=0;v.forEach((function(e){P+=i[e].length}));var N=g&&1===P||0===P,I=i.exact?"{|":"{",M=i.exact?"|}":"}";s.push(N?I:I+"\n");var O=s.length-1,L=0;if(v.forEach((function(r){e.each((function(e){var r=n(e);N||(r=r.indent(t.tabWidth));var i=!g&&r.length>1;i&&k&&s.push("\n"),s.push(r),L0&&s.push(x," "),s.push(j)):s.push("\n",j.indent(t.tabWidth))}return s.push(N?M:"\n"+M),0!==L&&N&&t.objectCurlySpacing&&(s[O]=I+" ",s[s.length-1]=" "+M),i.typeAnnotation&&s.push(e.call(n,"typeAnnotation")),o.concat(s);case"PropertyPattern":return o.concat([e.call(n,"key"),": ",e.call(n,"pattern")]);case"ObjectProperty":case"Property":if(i.method||"get"===i.kind||"set"===i.kind)return E(e,t,n);if(i.shorthand&&"AssignmentPattern"===i.value.type)return e.call(n,"value");var J=e.call(n,"key");return i.computed?s.push("[",J,"]"):s.push(J),i.shorthand&&i.key.name===i.value.name||s.push(": ",e.call(n,"value")),o.concat(s);case"ClassMethod":case"ObjectMethod":case"ClassPrivateMethod":case"TSDeclareMethod":return E(e,t,n);case"PrivateName":return o.concat(["#",e.call(n,"id")]);case"Decorator":return o.concat(["@",e.call(n,"expression")]);case"ArrayExpression":case"ArrayPattern":var R=i.elements.length,X=e.map(n,"elements"),z=o.fromString(", ").join(X).getLineLength(1)<=t.wrapColumn;return z?t.arrayBracketSpacing?s.push("[ "):s.push("["):s.push("[\n"),e.each((function(e){var n=e.getName();if(e.getValue()){var r=X[n];z?n>0&&s.push(" "):r=r.indent(t.tabWidth),s.push(r),(n1?s.push(o.fromString(",\n").join(q).indentTail(i.kind.length+1)):s.push(q[0]);var V=e.getParentNode();return p.ForStatement.check(V)||p.ForInStatement.check(V)||p.ForOfStatement&&p.ForOfStatement.check(V)||p.ForAwaitStatement&&p.ForAwaitStatement.check(V)||s.push(";"),o.concat(s);case"VariableDeclarator":return i.init?o.fromString(" = ").join([e.call(n,"id"),e.call(n,"init")]):e.call(n,"id");case"WithStatement":return o.concat(["with (",e.call(n,"object"),") ",e.call(n,"body")]);case"IfStatement":var K=w(e.call(n,"consequent"),t);return s.push("if (",e.call(n,"test"),")",K),i.alternate&&s.push(F(K)?" else":"\nelse",w(e.call(n,"alternate"),t)),o.concat(s);case"ForStatement":var W=e.call(n,"init"),G=W.length>1?";\n":"; ",H=o.fromString(G).join([W,e.call(n,"test"),e.call(n,"update")]).indentTail("for (".length),Y=o.concat(["for (",H,")"]),$=w(e.call(n,"body"),t);return s.push(Y),Y.length>1&&(s.push("\n"),$=$.trimLeft()),s.push($),o.concat(s);case"WhileStatement":return o.concat(["while (",e.call(n,"test"),")",w(e.call(n,"body"),t)]);case"ForInStatement":return o.concat([i.each?"for each (":"for (",e.call(n,"left")," in ",e.call(n,"right"),")",w(e.call(n,"body"),t)]);case"ForOfStatement":case"ForAwaitStatement":return s.push("for "),(i.await||"ForAwaitStatement"===i.type)&&s.push("await "),s.push("(",e.call(n,"left")," of ",e.call(n,"right"),")",w(e.call(n,"body"),t)),o.concat(s);case"DoWhileStatement":var Q=o.concat(["do",w(e.call(n,"body"),t)]);return s.push(Q),F(Q)?s.push(" while"):s.push("\nwhile"),s.push(" (",e.call(n,"test"),");"),o.concat(s);case"DoExpression":var Z=e.call((function(e){return b(e,t,n)}),"body");return o.concat(["do {\n",Z.indent(t.tabWidth),"\n}"]);case"BreakStatement":return s.push("break"),i.label&&s.push(" ",e.call(n,"label")),s.push(";"),o.concat(s);case"ContinueStatement":return s.push("continue"),i.label&&s.push(" ",e.call(n,"label")),s.push(";"),o.concat(s);case"LabeledStatement":return o.concat([e.call(n,"label"),":\n",e.call(n,"body")]);case"TryStatement":return s.push("try ",e.call(n,"block")),i.handler?s.push(" ",e.call(n,"handler")):i.handlers&&e.each((function(e){s.push(" ",n(e))}),"handlers"),i.finalizer&&s.push(" finally ",e.call(n,"finalizer")),o.concat(s);case"CatchClause":return s.push("catch "),i.param&&s.push("(",e.call(n,"param")),i.guard&&s.push(" if ",e.call(n,"guard")),i.param&&s.push(") "),s.push(e.call(n,"body")),o.concat(s);case"ThrowStatement":return o.concat(["throw ",e.call(n,"argument"),";"]);case"SwitchStatement":return o.concat(["switch (",e.call(n,"discriminant"),") {\n",o.fromString("\n").join(e.map(n,"cases")),"\n}"]);case"SwitchCase":return i.test?s.push("case ",e.call(n,"test"),":"):s.push("default:"),i.consequent.length>0&&s.push("\n",e.call((function(e){return b(e,t,n)}),"consequent").indent(t.tabWidth)),o.concat(s);case"DebuggerStatement":return o.fromString("debugger;");case"JSXAttribute":return s.push(e.call(n,"name")),i.value&&s.push("=",e.call(n,"value")),o.concat(s);case"JSXIdentifier":return o.fromString(i.name,t);case"JSXNamespacedName":return o.fromString(":").join([e.call(n,"namespace"),e.call(n,"name")]);case"JSXMemberExpression":return o.fromString(".").join([e.call(n,"object"),e.call(n,"property")]);case"JSXSpreadAttribute":return o.concat(["{...",e.call(n,"argument"),"}"]);case"JSXSpreadChild":return o.concat(["{...",e.call(n,"expression"),"}"]);case"JSXExpressionContainer":return o.concat(["{",e.call(n,"expression"),"}"]);case"JSXElement":case"JSXFragment":var ee="opening"+("JSXElement"===i.type?"Element":"Fragment"),te="closing"+("JSXElement"===i.type?"Element":"Fragment"),ne=e.call(n,ee);if(i[ee].selfClosing)return a.default.ok(!i[te],"unexpected "+te+" element in self-closing "+i.type),ne;var re=o.concat(e.map((function(e){var t=e.getValue();if(p.Literal.check(t)&&"string"==typeof t.value){if(/\S/.test(t.value))return t.value.replace(/^\s+|\s+$/g,"");if(/\n/.test(t.value))return"\n"}return n(e)}),"children")).indentTail(t.tabWidth),ie=e.call(n,te);return o.concat([ne,re,ie]);case"JSXOpeningElement":s.push("<",e.call(n,"name"));var ae=[];e.each((function(e){ae.push(" ",n(e))}),"attributes");var se=o.concat(ae);return(se.length>1||se.getLineLength(1)>t.wrapColumn)&&(ae.forEach((function(e,t){" "===e&&(a.default.strictEqual(t%2,0),ae[t]="\n")})),se=o.concat(ae).indentTail(t.tabWidth)),s.push(se,i.selfClosing?" />":">"),o.concat(s);case"JSXClosingElement":return o.concat([""]);case"JSXOpeningFragment":return o.fromString("<>");case"JSXClosingFragment":return o.fromString("");case"JSXText":return o.fromString(i.value,t);case"JSXEmptyExpression":return o.fromString("");case"TypeAnnotatedIdentifier":return o.concat([e.call(n,"annotation")," ",e.call(n,"identifier")]);case"ClassBody":return 0===i.body.length?o.fromString("{}"):o.concat(["{\n",e.call((function(e){return b(e,t,n)}),"body").indent(t.tabWidth),"\n}"]);case"ClassPropertyDefinition":return s.push("static ",e.call(n,"definition")),p.MethodDefinition.check(i.definition)||s.push(";"),o.concat(s);case"ClassProperty":i.declare&&s.push("declare ");var oe=i.accessibility||i.access;"string"==typeof oe&&s.push(oe," "),i.static&&s.push("static "),i.abstract&&s.push("abstract "),i.readonly&&s.push("readonly ");J=e.call(n,"key");return i.computed&&(J=o.concat(["[",J,"]"])),i.variance&&(J=o.concat([T(e,n),J])),s.push(J),i.optional&&s.push("?"),i.typeAnnotation&&s.push(e.call(n,"typeAnnotation")),i.value&&s.push(" = ",e.call(n,"value")),s.push(";"),o.concat(s);case"ClassPrivateProperty":return i.static&&s.push("static "),s.push(e.call(n,"key")),i.typeAnnotation&&s.push(e.call(n,"typeAnnotation")),i.value&&s.push(" = ",e.call(n,"value")),s.push(";"),o.concat(s);case"ClassDeclaration":case"ClassExpression":return i.declare&&s.push("declare "),i.abstract&&s.push("abstract "),s.push("class"),i.id&&s.push(" ",e.call(n,"id")),i.typeParameters&&s.push(e.call(n,"typeParameters")),i.superClass&&s.push(" extends ",e.call(n,"superClass"),e.call(n,"superTypeParameters")),i.implements&&i.implements.length>0&&s.push(" implements ",o.fromString(", ").join(e.map(n,"implements"))),s.push(" ",e.call(n,"body")),o.concat(s);case"TemplateElement":return o.fromString(i.value.raw,t).lockIndentTail();case"TemplateLiteral":var ue=e.map(n,"expressions");return s.push("`"),e.each((function(e){var t=e.getName();s.push(n(e)),t0&&s.push(" "):r=r.indent(t.tabWidth),s.push(r),(n0&&s.push(" extends ",o.fromString(", ").join(e.map(n,"extends"))),s.push(" ",e.call(n,"body")),o.concat(s);case"DeclareClass":return A(e,["class ",e.call(n,"id")," ",e.call(n,"body")]);case"DeclareFunction":return A(e,["function ",e.call(n,"id"),";"]);case"DeclareModule":return A(e,["module ",e.call(n,"id")," ",e.call(n,"body")]);case"DeclareModuleExports":return A(e,["module.exports",e.call(n,"typeAnnotation")]);case"DeclareVariable":return A(e,["var ",e.call(n,"id"),";"]);case"DeclareExportDeclaration":case"DeclareExportAllDeclaration":return o.concat(["declare ",C(e,t,n)]);case"EnumDeclaration":return o.concat(["enum ",e.call(n,"id"),e.call(n,"body")]);case"EnumBooleanBody":case"EnumNumberBody":case"EnumStringBody":case"EnumSymbolBody":return("EnumSymbolBody"===i.type||i.explicitType)&&s.push(" of ",i.type.slice(4,-4).toLowerCase()),s.push(" {\n",o.fromString("\n").join(e.map(n,"members")).indent(t.tabWidth),"\n}"),o.concat(s);case"EnumDefaultedMember":return o.concat([e.call(n,"id"),","]);case"EnumBooleanMember":case"EnumNumberMember":case"EnumStringMember":return o.concat([e.call(n,"id")," = ",e.call(n,"init"),","]);case"InferredPredicate":return o.fromString("%checks",t);case"DeclaredPredicate":return o.concat(["%checks(",e.call(n,"value"),")"]);case"FunctionTypeAnnotation":var pe=e.getParentNode(0),he=!(p.ObjectTypeCallProperty.check(pe)||p.ObjectTypeInternalSlot.check(pe)&&pe.method||p.DeclareFunction.check(e.getParentNode(2)));he&&!p.FunctionTypeParam.check(pe)&&!p.TypeAlias.check(pe)&&s.push(": ");var de=!!i.typeParameters,fe=de||1!==i.params.length||i.params[0].name;return s.push(de?e.call(n,"typeParameters"):"",fe?"(":"",D(e,t,n),fe?")":""),i.returnType&&s.push(he?" => ":": ",e.call(n,"returnType")),o.concat(s);case"FunctionTypeParam":var me=e.call(n,"name");return s.push(me),i.optional&&s.push("?"),me.infos[0].line&&s.push(": "),s.push(e.call(n,"typeAnnotation")),o.concat(s);case"GenericTypeAnnotation":return o.concat([e.call(n,"id"),e.call(n,"typeParameters")]);case"DeclareInterface":s.push("declare ");case"InterfaceDeclaration":case"TSInterfaceDeclaration":return i.declare&&s.push("declare "),s.push("interface ",e.call(n,"id"),e.call(n,"typeParameters")," "),i.extends&&i.extends.length>0&&s.push("extends ",o.fromString(", ").join(e.map(n,"extends"))," "),i.body&&s.push(e.call(n,"body")),o.concat(s);case"ClassImplements":case"InterfaceExtends":return o.concat([e.call(n,"id"),e.call(n,"typeParameters")]);case"IntersectionTypeAnnotation":return o.fromString(" & ").join(e.map(n,"types"));case"NullableTypeAnnotation":return o.concat(["?",e.call(n,"typeAnnotation")]);case"NullLiteralTypeAnnotation":return o.fromString("null",t);case"ThisTypeAnnotation":return o.fromString("this",t);case"NumberTypeAnnotation":return o.fromString("number",t);case"ObjectTypeCallProperty":return e.call(n,"value");case"ObjectTypeIndexer":return i.static&&s.push("static "),s.push(T(e,n),"["),i.id&&s.push(e.call(n,"id"),": "),s.push(e.call(n,"key"),"]: ",e.call(n,"value")),o.concat(s);case"ObjectTypeProperty":return o.concat([T(e,n),e.call(n,"key"),i.optional?"?":"",": ",e.call(n,"value")]);case"ObjectTypeInternalSlot":return o.concat([i.static?"static ":"","[[",e.call(n,"id"),"]]",i.optional?"?":"","FunctionTypeAnnotation"!==i.value.type?": ":"",e.call(n,"value")]);case"QualifiedTypeIdentifier":return o.concat([e.call(n,"qualification"),".",e.call(n,"id")]);case"StringLiteralTypeAnnotation":return o.fromString(B(i.value,t),t);case"NumberLiteralTypeAnnotation":case"NumericLiteralTypeAnnotation":return a.default.strictEqual(r(i.value),"number"),o.fromString(JSON.stringify(i.value),t);case"BigIntLiteralTypeAnnotation":return o.fromString(i.raw,t);case"StringTypeAnnotation":return o.fromString("string",t);case"DeclareTypeAlias":s.push("declare ");case"TypeAlias":return o.concat(["type ",e.call(n,"id"),e.call(n,"typeParameters")," = ",e.call(n,"right"),";"]);case"DeclareOpaqueType":s.push("declare ");case"OpaqueType":return s.push("opaque type ",e.call(n,"id"),e.call(n,"typeParameters")),i.supertype&&s.push(": ",e.call(n,"supertype")),i.impltype&&s.push(" = ",e.call(n,"impltype")),s.push(";"),o.concat(s);case"TypeCastExpression":return o.concat(["(",e.call(n,"expression"),e.call(n,"typeAnnotation"),")"]);case"TypeParameterDeclaration":case"TypeParameterInstantiation":return o.concat(["<",o.fromString(", ").join(e.map(n,"params")),">"]);case"Variance":return"plus"===i.kind?o.fromString("+"):"minus"===i.kind?o.fromString("-"):o.fromString("");case"TypeParameter":return i.variance&&s.push(T(e,n)),s.push(e.call(n,"name")),i.bound&&s.push(e.call(n,"bound")),i.default&&s.push("=",e.call(n,"default")),o.concat(s);case"TypeofTypeAnnotation":return o.concat([o.fromString("typeof ",t),e.call(n,"argument")]);case"UnionTypeAnnotation":return o.fromString(" | ").join(e.map(n,"types"));case"VoidTypeAnnotation":return o.fromString("void",t);case"NullTypeAnnotation":return o.fromString("null",t);case"SymbolTypeAnnotation":return o.fromString("symbol",t);case"BigIntTypeAnnotation":return o.fromString("bigint",t);case"TSType":throw new Error("unprintable type: "+JSON.stringify(i.type));case"TSNumberKeyword":return o.fromString("number",t);case"TSBigIntKeyword":return o.fromString("bigint",t);case"TSObjectKeyword":return o.fromString("object",t);case"TSBooleanKeyword":return o.fromString("boolean",t);case"TSStringKeyword":return o.fromString("string",t);case"TSSymbolKeyword":return o.fromString("symbol",t);case"TSAnyKeyword":return o.fromString("any",t);case"TSVoidKeyword":return o.fromString("void",t);case"TSThisType":return o.fromString("this",t);case"TSNullKeyword":return o.fromString("null",t);case"TSUndefinedKeyword":return o.fromString("undefined",t);case"TSUnknownKeyword":return o.fromString("unknown",t);case"TSNeverKeyword":return o.fromString("never",t);case"TSArrayType":return o.concat([e.call(n,"elementType"),"[]"]);case"TSLiteralType":return e.call(n,"literal");case"TSUnionType":return o.fromString(" | ").join(e.map(n,"types"));case"TSIntersectionType":return o.fromString(" & ").join(e.map(n,"types"));case"TSConditionalType":return s.push(e.call(n,"checkType")," extends ",e.call(n,"extendsType")," ? ",e.call(n,"trueType")," : ",e.call(n,"falseType")),o.concat(s);case"TSInferType":return s.push("infer ",e.call(n,"typeParameter")),o.concat(s);case"TSParenthesizedType":return o.concat(["(",e.call(n,"typeAnnotation"),")"]);case"TSFunctionType":return o.concat([e.call(n,"typeParameters"),"(",D(e,t,n),") => ",e.call(n,"typeAnnotation","typeAnnotation")]);case"TSConstructorType":return o.concat(["new ",e.call(n,"typeParameters"),"(",D(e,t,n),") => ",e.call(n,"typeAnnotation","typeAnnotation")]);case"TSMappedType":return s.push(i.readonly?"readonly ":"","[",e.call(n,"typeParameter"),"]",i.optional?"?":""),i.typeAnnotation&&s.push(": ",e.call(n,"typeAnnotation"),";"),o.concat(["{\n",o.concat(s).indent(t.tabWidth),"\n}"]);case"TSTupleType":return o.concat(["[",o.fromString(", ").join(e.map(n,"elementTypes")),"]"]);case"TSNamedTupleMember":return s.push(e.call(n,"label")),i.optional&&s.push("?"),s.push(": ",e.call(n,"elementType")),o.concat(s);case"TSRestType":return o.concat(["...",e.call(n,"typeAnnotation")]);case"TSOptionalType":return o.concat([e.call(n,"typeAnnotation"),"?"]);case"TSIndexedAccessType":return o.concat([e.call(n,"objectType"),"[",e.call(n,"indexType"),"]"]);case"TSTypeOperator":return o.concat([e.call(n,"operator")," ",e.call(n,"typeAnnotation")]);case"TSTypeLiteral":return(xe=o.fromString(",\n").join(e.map(n,"members"))).isEmpty()?o.fromString("{}",t):(s.push("{\n",xe.indent(t.tabWidth),"\n}"),o.concat(s));case"TSEnumMember":return s.push(e.call(n,"id")),i.initializer&&s.push(" = ",e.call(n,"initializer")),o.concat(s);case"TSTypeQuery":return o.concat(["typeof ",e.call(n,"exprName")]);case"TSParameterProperty":return i.accessibility&&s.push(i.accessibility," "),i.export&&s.push("export "),i.static&&s.push("static "),i.readonly&&s.push("readonly "),s.push(e.call(n,"parameter")),o.concat(s);case"TSTypeReference":return o.concat([e.call(n,"typeName"),e.call(n,"typeParameters")]);case"TSQualifiedName":return o.concat([e.call(n,"left"),".",e.call(n,"right")]);case"TSAsExpression":var ye=e.call(n,"expression");return s.push(ye,o.fromString(" as "),e.call(n,"typeAnnotation")),o.concat(s);case"TSNonNullExpression":return o.concat([e.call(n,"expression"),"!"]);case"TSTypeAnnotation":return o.concat([": ",e.call(n,"typeAnnotation")]);case"TSIndexSignature":return o.concat([i.readonly?"readonly ":"","[",e.map(n,"parameters"),"]",e.call(n,"typeAnnotation")]);case"TSPropertySignature":return s.push(T(e,n),i.readonly?"readonly ":""),i.computed?s.push("[",e.call(n,"key"),"]"):s.push(e.call(n,"key")),s.push(i.optional?"?":"",e.call(n,"typeAnnotation")),o.concat(s);case"TSMethodSignature":return i.computed?s.push("[",e.call(n,"key"),"]"):s.push(e.call(n,"key")),i.optional&&s.push("?"),s.push(e.call(n,"typeParameters"),"(",D(e,t,n),")",e.call(n,"typeAnnotation")),o.concat(s);case"TSTypePredicate":return i.asserts&&s.push("asserts "),s.push(e.call(n,"parameterName")),i.typeAnnotation&&s.push(" is ",e.call(n,"typeAnnotation","typeAnnotation")),o.concat(s);case"TSCallSignatureDeclaration":return o.concat([e.call(n,"typeParameters"),"(",D(e,t,n),")",e.call(n,"typeAnnotation")]);case"TSConstructSignatureDeclaration":return i.typeParameters?s.push("new",e.call(n,"typeParameters")):s.push("new "),s.push("(",D(e,t,n),")",e.call(n,"typeAnnotation")),o.concat(s);case"TSTypeAliasDeclaration":return o.concat([i.declare?"declare ":"","type ",e.call(n,"id"),e.call(n,"typeParameters")," = ",e.call(n,"typeAnnotation"),";"]);case"TSTypeParameter":s.push(e.call(n,"name"));pe=e.getParentNode(0);var ge=p.TSMappedType.check(pe);return i.constraint&&s.push(ge?" in ":" extends ",e.call(n,"constraint")),i.default&&s.push(" = ",e.call(n,"default")),o.concat(s);case"TSTypeAssertion":return s.push("<",e.call(n,"typeAnnotation"),"> ",e.call(n,"expression")),o.concat(s);case"TSTypeParameterDeclaration":case"TSTypeParameterInstantiation":return o.concat(["<",o.fromString(", ").join(e.map(n,"params")),">"]);case"TSEnumDeclaration":var xe;return s.push(i.declare?"declare ":"",i.const?"const ":"","enum ",e.call(n,"id")),(xe=o.fromString(",\n").join(e.map(n,"members"))).isEmpty()?s.push(" {}"):s.push(" {\n",xe.indent(t.tabWidth),"\n}"),o.concat(s);case"TSExpressionWithTypeArguments":return o.concat([e.call(n,"expression"),e.call(n,"typeParameters")]);case"TSInterfaceBody":var ve;return(ve=o.fromString(";\n").join(e.map(n,"body"))).isEmpty()?o.fromString("{}",t):o.concat(["{\n",ve.indent(t.tabWidth),";","\n}"]);case"TSImportType":return s.push("import(",e.call(n,"argument"),")"),i.qualifier&&s.push(".",e.call(n,"qualifier")),i.typeParameters&&s.push(e.call(n,"typeParameters")),o.concat(s);case"TSImportEqualsDeclaration":return i.isExport&&s.push("export "),s.push("import ",e.call(n,"id")," = ",e.call(n,"moduleReference")),_(o.concat(s));case"TSExternalModuleReference":return o.concat(["require(",e.call(n,"expression"),")"]);case"TSModuleDeclaration":if("TSModuleDeclaration"===(pe=e.getParentNode()).type)s.push(".");else if(i.declare&&s.push("declare "),!i.global)if("StringLiteral"===i.id.type||"Literal"===i.id.type&&"string"==typeof i.id.value)s.push("module ");else if(i.loc&&i.loc.lines&&i.id.loc){i.loc.lines.sliceString(i.loc.start,i.id.loc.start).indexOf("module")>=0?s.push("module "):s.push("namespace ")}else s.push("namespace ");if(s.push(e.call(n,"id")),i.body&&"TSModuleDeclaration"===i.body.type)s.push(e.call(n,"body"));else if(i.body){var be=e.call(n,"body");be.isEmpty()?s.push(" {}"):s.push(" {\n",be.indent(t.tabWidth),"\n}")}return o.concat(s);case"TSModuleBlock":return e.call((function(e){return b(e,t,n)}),"body");case"ClassHeritage":case"ComprehensionBlock":case"ComprehensionExpression":case"Glob":case"GeneratorExpression":case"LetStatement":case"LetExpression":case"GraphExpression":case"GraphIndexExpression":case"XMLDefaultDeclaration":case"XMLAnyName":case"XMLQualifiedIdentifier":case"XMLFunctionQualifiedIdentifier":case"XMLAttributeSelector":case"XMLFilterExpression":case"XML":case"XMLElement":case"XMLList":case"XMLEscape":case"XMLText":case"XMLStartTag":case"XMLEndTag":case"XMLPointTag":case"XMLName":case"XMLAttribute":case"XMLCdata":case"XMLComment":case"XMLProcessingInstruction":default:throw new Error("unknown type: "+JSON.stringify(i.type))}}(e,t,i);if(!s||l.isEmpty())return l;var h=!!s.extra&&s.extra.parenthesized,d=function(e,t){var n=[],r=e.getValue();r.decorators&&r.decorators.length>0&&!m.getParentExportDeclaration(e)?e.each((function(e){n.push(t(e),"\n")}),"decorators"):m.isExportDeclaration(r)&&r.declaration&&r.declaration.decorators&&e.each((function(e){n.push(t(e),"\n")}),"declaration","decorators");return o.concat(n)}(e,i);return d.isEmpty()?n.avoidRootParens||(h=h||e.needsParens()):u.push(d),h&&u.unshift("("),u.push(l),h&&u.push(")"),o.concat(u)}function b(e,t,n){var r=[],i=!1,s=!1;e.each((function(e){var t=e.getValue();t&&("EmptyStatement"!==t.type||t.comments&&t.comments.length>0)&&(p.Comment.check(t)?i=!0:p.Statement.check(t)?s=!0:h.assert(t),r.push({node:t,printed:n(e)}))})),i&&a.default.strictEqual(s,!1,"Comments may appear as statements in otherwise empty statement lists, but may not coexist with non-Comment nodes.");var u=null,l=r.length,c=[];return r.forEach((function(e,n){var r,i,a=e.printed,s=e.node,p=a.length>1,h=n>0,d=nn.length)return r;return n}(u,r),a),d?u=i:i&&c.push(i)})),o.concat(c)}function E(e,t,n){var r=e.getNode(),i=r.kind,a=[],s=r.value;p.FunctionExpression.check(s)||(s=r);var u=r.accessibility||r.access;"string"==typeof u&&a.push(u," "),r.static&&a.push("static "),r.abstract&&a.push("abstract "),r.readonly&&a.push("readonly "),s.async&&a.push("async "),s.generator&&a.push("*"),"get"!==i&&"set"!==i||a.push(i," ");var l=e.call(n,"key");return r.computed&&(l=o.concat(["[",l,"]"])),a.push(l),r.optional&&a.push("?"),r===s?(a.push(e.call(n,"typeParameters"),"(",D(e,t,n),")",e.call(n,"returnType")),r.body?a.push(" ",e.call(n,"body")):a.push(";")):(a.push(e.call(n,"value","typeParameters"),"(",e.call((function(e){return D(e,t,n)}),"value"),")",e.call(n,"value","returnType")),s.body?a.push(" ",e.call(n,"value","body")):a.push(";")),o.concat(a)}function S(e,t,n){var r=e.map(n,"arguments"),i=m.isTrailingCommaEnabled(t,"parameters"),a=o.fromString(", ").join(r);return a.getLineLength(1)>t.wrapColumn?(a=o.fromString(",\n").join(r),o.concat(["(\n",a.indent(t.tabWidth),i?",\n)":"\n)"])):o.concat(["(",a,")"])}function D(e,t,n){var r,i=e.getValue(),a=[];i.params?(r=i.params,a=e.map(n,"params")):i.parameters&&(r=i.parameters,a=e.map(n,"parameters")),i.defaults&&e.each((function(e){var t=e.getName(),r=a[t];r&&e.getValue()&&(a[t]=o.concat([r," = ",n(e)]))}),"defaults"),i.rest&&a.push(o.concat(["...",e.call(n,"rest")]));var s=o.fromString(", ").join(a);return s.length>1||s.getLineLength(1)>t.wrapColumn?(s=o.fromString(",\n").join(a),s=m.isTrailingCommaEnabled(t,"parameters")&&!i.rest&&"RestElement"!==r[r.length-1].type?o.concat([s,",\n"]):o.concat([s,"\n"]),o.concat(["\n",s.indent(t.tabWidth)])):s}function C(e,t,n){var r=e.getValue(),i=["export "];r.exportKind&&"type"===r.exportKind&&(r.declaration||i.push("type "));var a=t.objectCurlySpacing;if(p.Declaration.assert(r),(r.default||"ExportDefaultDeclaration"===r.type)&&i.push("default "),r.declaration)i.push(e.call(n,"declaration"));else if(r.specifiers){if(1===r.specifiers.length&&"ExportBatchSpecifier"===r.specifiers[0].type)i.push("*");else if(0===r.specifiers.length)i.push("{}");else if("ExportDefaultSpecifier"===r.specifiers[0].type){var s=[],u=[];if(e.each((function(e){"ExportDefaultSpecifier"===e.getValue().type?s.push(n(e)):u.push(n(e))}),"specifiers"),s.forEach((function(e,t){t>0&&i.push(", "),i.push(e)})),u.length>0){var l=o.fromString(", ").join(u);l.getLineLength(1)>t.wrapColumn&&(l=o.concat([o.fromString(",\n").join(u).indent(t.tabWidth),","])),s.length>0&&i.push(", "),l.length>1?i.push("{\n",l,"\n}"):t.objectCurlySpacing?i.push("{ ",l," }"):i.push("{",l,"}")}}else i.push(a?"{ ":"{",o.fromString(", ").join(e.map(n,"specifiers")),a?" }":"}");r.source&&i.push(" from ",e.call(n,"source"))}var c=o.concat(i);return";"===k(c)||r.declaration&&("FunctionDeclaration"===r.declaration.type||"ClassDeclaration"===r.declaration.type||"TSModuleDeclaration"===r.declaration.type||"TSInterfaceDeclaration"===r.declaration.type||"TSEnumDeclaration"===r.declaration.type)||(c=o.concat([c,";"])),c}function A(e,t){var n=m.getParentExportDeclaration(e);return n?a.default.strictEqual(n.type,"DeclareExportDeclaration"):t.unshift("declare "),o.concat(t)}function T(e,t){return e.call((function(e){var n=e.getValue();return n?"plus"===n?o.fromString("+"):"minus"===n?o.fromString("-"):t(e):o.fromString("")}),"variance")}function w(e,t){return e.length>1?o.concat([" ",e]):o.concat(["\n",_(e).indent(t.tabWidth)])}function k(e){var t=e.lastPos();do{var n=e.charAt(t);if(/\S/.test(n))return n}while(e.prevPos(t))}function F(e){return"}"===k(e)}function P(e){return e.replace(/['"]/g,(function(e){return'"'===e?"'":'"'}))}function B(e,t){switch(h.assert(e),t.quote){case"auto":var n=JSON.stringify(e),r=P(JSON.stringify(P(e)));return n.length>r.length?r:n;case"single":return P(JSON.stringify(P(e)));case"double":default:return JSON.stringify(e)}}function _(e){var t=k(e);return!t||"\n};".indexOf(t)<0?o.concat([e,";"]):e}t.Printer=function e(t){a.default.ok(this instanceof e);var n=t&&t.tabWidth;function r(e,t){return e=Object.assign({},e,t),function(t){return i(t,e)}}function i(e,o){if(a.default.ok(e instanceof f.default),(o=o||{}).includeComments)return s.printComments(e,r(o,{includeComments:!1}));var u=t.tabWidth;if(!n){var c=e.getNode().loc;c&&c.lines&&c.lines.guessTabWidth&&(t.tabWidth=c.lines.guessTabWidth())}var p=l.getReprinter(e),h=p?p(i):v(e,t,o,r(o,{includeComments:!0,avoidRootParens:!1}));return t.tabWidth=u,h}(t=u.normalize(t)).sourceFileName=null,this.print=function(e){if(!e)return x;var n=i(f.default.from(e),{includeComments:!0,avoidRootParens:!1});return new y(n.toString(t),m.composeSourceMaps(t.inputSourceMap,n.getSourceMap(t.sourceMapName,t.sourceRoot)))},this.printGenerically=function(e){if(!e)return x;var n=f.default.from(e),r=t.reuseWhitespace;t.reuseWhitespace=!1;var i=new y(function e(n){return s.printComments(n,(function(n){return v(n,t,{includeComments:!0,avoidRootParens:!1},e)}))}(n).toString(t));return t.reuseWhitespace=r,i}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getReprinter=t.Patcher=void 0;var r=n(0),i=r.__importDefault(n(4)),a=r.__importStar(n(8)),s=r.__importStar(n(3)),o=s.namedTypes.Printable,u=s.namedTypes.Expression,l=s.namedTypes.ReturnStatement,c=s.namedTypes.SourceLocation,p=n(5),h=r.__importDefault(n(30)),d=s.builtInTypes.object,f=s.builtInTypes.array,m=s.builtInTypes.string,y=/[0-9a-z_$]/i,g=function e(t){i.default.ok(this instanceof e),i.default.ok(t instanceof a.Lines);var n=[];this.replace=function(e,t){m.check(t)&&(t=a.fromString(t)),n.push({lines:t,start:e.start,end:e.end})},this.get=function(e){var r=(e=e||{start:{line:1,column:0},end:{line:t.length,column:t.getLineLength(t.length)}}).start,s=[];function o(e,n){i.default.ok(p.comparePos(e,n)<=0),s.push(t.slice(e,n))}return n.sort((function(e,t){return p.comparePos(e.start,t.start)})).forEach((function(e){p.comparePos(r,e.start)>0||(o(r,e.start),s.push(e.lines),r=e.end)})),o(r,e.end),a.concat(s)}};t.Patcher=g;var x=g.prototype;function v(e){var t=[];return e.comments&&e.comments.length>0&&e.comments.forEach((function(e){(e.leading||e.trailing)&&t.push(e)})),t}function b(e,t,n){var r=e.getValue();return r===t.getValue()||(f.check(r)?E(e,t,n):!!d.check(r)&&function(e,t,n){var r=e.getValue();if(d.assert(r),null===r.original)return!1;var i=t.getValue();if(!d.check(i))return!1;if(r===i||e.valueIsDuplicate()||t.valueIsDuplicate())return!0;if(o.check(r)){if(!o.check(i))return!1;var a=e.getParentNode(),s=t.getParentNode();if(null!==s&&"FunctionTypeAnnotation"===s.type&&null!==a&&"FunctionTypeAnnotation"===a.type){var l=1!==s.params.length||!!s.params[0].name,c=1!==a.params.length||!!a.params[0].name;if(!l&&c)return!1}if(r.type===i.type){var p=[];if(S(e,t,p))n.push.apply(n,p);else{if(!i.loc)return!1;n.push({oldPath:t.copy(),newPath:e.copy()})}return!0}return!!(u.check(r)&&u.check(i)&&i.loc)&&(n.push({oldPath:t.copy(),newPath:e.copy()}),!0)}return S(e,t,n)}(e,t,n))}function E(e,t,n){var r=e.getValue(),i=t.getValue();if(r===i||e.valueIsDuplicate()||t.valueIsDuplicate())return!0;f.assert(r);var a=r.length;if(!f.check(i)||i.length!==a)return!1;for(var s=0;so)}x.tryToReprintComments=function(e,t,n){var r=this;if(!e.comments&&!t.comments)return!0;var a=h.default.from(e),s=h.default.from(t);a.stack.push("comments",v(e)),s.stack.push("comments",v(t));var o=[],u=E(a,s,o);return u&&o.length>0&&o.forEach((function(e){var t=e.oldPath.getValue();i.default.ok(t.leading||t.trailing),r.replace(t.loc,n(e.newPath).indentTail(t.loc.indent))})),u},x.deleteComments=function(e){if(e.comments){var t=this;e.comments.forEach((function(n){n.leading?t.replace({start:n.loc.start,end:e.loc.lines.skipSpaces(n.loc.end,!1,!1)},""):n.trailing&&t.replace({start:e.loc.lines.skipSpaces(n.loc.start,!0,!1),end:n.loc.end},"")}))}},t.getReprinter=function(e){i.default.ok(e instanceof h.default);var t=e.getValue();if(o.check(t)){var n=t.original,r=n&&n.loc,s=r&&r.lines,u=[];if(s&&function(e,t){var n=e.getValue();o.assert(n);var r=n.original;if(o.assert(r),i.default.deepEqual(t,[]),n.type!==r.type)return!1;var a=new h.default(r),s=S(e,a,t);s||(t.length=0);return s}(e,u))return function(t){var i=new g(s);u.forEach((function(e){var n=e.newPath.getValue(),r=e.oldPath.getValue();c.assert(r.loc,!0);var o=!i.tryToReprintComments(n,r,t);o&&i.deleteComments(r);var u=t(e.newPath,{includeComments:o,avoidRootParens:r.type===n.type&&e.oldPath.hasParens()}).indentTail(r.loc.indent),l=function(e,t,n){var r=p.copyPos(t.start),i=e.prevPos(r)&&e.charAt(r),a=n.charAt(n.firstPos());return i&&y.test(i)&&a&&y.test(a)}(s,r.loc,u),h=function(e,t,n){var r=e.charAt(t.end),i=n.lastPos(),a=n.prevPos(i)&&n.charAt(i);return a&&y.test(a)&&r&&y.test(r)}(s,r.loc,u);if(l||h){var d=[];l&&d.push(" "),d.push(u),h&&d.push(" "),u=a.concat(d)}i.replace(r.loc,u)}));var o=i.get(r).indentTail(-n.loc.indent);return e.needsParens()?a.concat(["(",o,")"]):o}}}}])})); //# sourceMappingURL=recast.js.map