UNPKG

@vercel/ncc

Version:

Simple CLI for compiling a Node.js module into a single file, together with all its dependencies, gcc-style.

1 lines 511 kB
(()=>{var __webpack_modules__={790:(module,__unused_webpack_exports,__webpack_require__)=>{module.exports=(()=>{var __webpack_modules__={4259:(e,t,r)=>{"use strict";const s=r(9406);e.exports=function(e){const t=e.acorn||r(390);const a=t.tokTypes;e=s(e);return class extends e{_maybeParseFieldValue(e){if(this.eat(a.eq)){const t=this._inFieldValue;this._inFieldValue=true;if(this.type===a.name&&this.value==="await"&&(this.inAsync||this.options.allowAwaitOutsideFunction)){e.value=this.parseAwait()}else e.value=this.parseExpression();this._inFieldValue=t}else e.value=null}parseClassElement(e){if(this.options.ecmaVersion>=8&&(this.type==a.name||this.type.keyword||this.type==this.privateIdentifierToken||this.type==a.bracketL||this.type==a.string||this.type==a.num)){const e=this._branch();if(e.type==a.bracketL){let t=0;do{if(e.eat(a.bracketL))++t;else if(e.eat(a.bracketR))--t;else e.next()}while(t>0)}else e.next(true);let t=e.type==a.eq||e.type==a.semi;if(!t&&e.canInsertSemicolon()){t=e.type!=a.parenL}if(t){const e=this.startNode();if(this.type==this.privateIdentifierToken){this.parsePrivateClassElementName(e)}else{this.parsePropertyName(e)}if(e.key.type==="Identifier"&&e.key.name==="constructor"||e.key.type==="Literal"&&e.key.value==="constructor"){this.raise(e.key.start,"Classes may not have a field called constructor")}this.enterScope(64|2|1);this._maybeParseFieldValue(e);this.exitScope();this.finishNode(e,"PropertyDefinition");this.semicolon();return e}}return super.parseClassElement.apply(this,arguments)}parseIdent(e,t){const r=super.parseIdent(e,t);if(this._inFieldValue&&r.name=="arguments")this.raise(r.start,"A class field initializer may not contain arguments");return r}}}},9406:(e,t,r)=>{"use strict";const s=Object.getPrototypeOf||(e=>e.__proto__);const getAcorn=e=>{if(e.acorn)return e.acorn;const t=r(390);if(t.version.indexOf("6.")!=0&&t.version.indexOf("6.0.")==0&&t.version.indexOf("7.")!=0){throw new Error(`acorn-private-class-elements requires acorn@^6.1.0 or acorn@7.0.0, not ${t.version}`)}for(let r=e;r&&r!==t.Parser;r=s(r)){if(r!==t.Parser){throw new Error("acorn-private-class-elements does not support mixing different acorn copies")}}return t};e.exports=function(e){if(e.prototype.parsePrivateName){return e}const t=getAcorn(e);e=class extends e{_branch(){this.__branch=this.__branch||new e({ecmaVersion:this.options.ecmaVersion},this.input);this.__branch.end=this.end;this.__branch.pos=this.pos;this.__branch.type=this.type;this.__branch.value=this.value;this.__branch.containsEsc=this.containsEsc;return this.__branch}parsePrivateClassElementName(e){e.computed=false;e.key=this.parsePrivateName();if(e.key.name=="constructor")this.raise(e.key.start,"Classes may not have a private element named constructor");const t={get:"set",set:"get"}[e.kind];const r=this._privateBoundNames;if(Object.prototype.hasOwnProperty.call(r,e.key.name)&&r[e.key.name]!==t){this.raise(e.start,"Duplicate private element")}r[e.key.name]=e.kind||true;delete this._unresolvedPrivateNames[e.key.name];return e.key}parsePrivateName(){const e=this.startNode();e.name=this.value;this.next();this.finishNode(e,"PrivateIdentifier");if(this.options.allowReserved=="never")this.checkUnreserved(e);return e}getTokenFromCode(e){if(e===35){++this.pos;const e=this.readWord1();return this.finishToken(this.privateIdentifierToken,e)}return super.getTokenFromCode(e)}parseClass(e,t){const r=this._outerPrivateBoundNames;this._outerPrivateBoundNames=this._privateBoundNames;this._privateBoundNames=Object.create(this._privateBoundNames||null);const s=this._outerUnresolvedPrivateNames;this._outerUnresolvedPrivateNames=this._unresolvedPrivateNames;this._unresolvedPrivateNames=Object.create(null);const a=super.parseClass(e,t);const o=this._unresolvedPrivateNames;this._privateBoundNames=this._outerPrivateBoundNames;this._outerPrivateBoundNames=r;this._unresolvedPrivateNames=this._outerUnresolvedPrivateNames;this._outerUnresolvedPrivateNames=s;if(!this._unresolvedPrivateNames){const e=Object.keys(o);if(e.length){e.sort(((e,t)=>o[e]-o[t]));this.raise(o[e[0]],"Usage of undeclared private name")}}else Object.assign(this._unresolvedPrivateNames,o);return a}parseClassSuper(e){const t=this._privateBoundNames;this._privateBoundNames=this._outerPrivateBoundNames;const r=this._unresolvedPrivateNames;this._unresolvedPrivateNames=this._outerUnresolvedPrivateNames;const s=super.parseClassSuper(e);this._privateBoundNames=t;this._unresolvedPrivateNames=r;return s}parseSubscript(e,r,s,a,o,u){const c=this.options.ecmaVersion>=11&&t.tokTypes.questionDot;const p=this._branch();if(!((p.eat(t.tokTypes.dot)||c&&p.eat(t.tokTypes.questionDot))&&p.type==this.privateIdentifierToken)){return super.parseSubscript.apply(this,arguments)}let h=false;if(!this.eat(t.tokTypes.dot)){this.expect(t.tokTypes.questionDot);h=true}let d=this.startNodeAt(r,s);d.object=e;d.computed=false;if(c){d.optional=h}if(this.type==this.privateIdentifierToken){if(e.type=="Super"){this.raise(this.start,"Cannot access private element on super")}d.property=this.parsePrivateName();if(!this._privateBoundNames||!this._privateBoundNames[d.property.name]){if(!this._unresolvedPrivateNames){this.raise(d.property.start,"Usage of undeclared private name")}this._unresolvedPrivateNames[d.property.name]=d.property.start}}else{d.property=this.parseIdent(true)}return this.finishNode(d,"MemberExpression")}parseMaybeUnary(e,t){const r=super.parseMaybeUnary(e,t);if(r.operator=="delete"){if(r.argument.type=="MemberExpression"&&r.argument.property.type=="PrivateIdentifier"){this.raise(r.start,"Private elements may not be deleted")}}return r}};e.prototype.privateIdentifierToken=new t.TokenType("privateIdentifier");return e}},104:(e,t,r)=>{"use strict";const s=r(9406);e.exports=function(e){const t=s(e);const a=e.acorn||r(390);const o=a.tokTypes;return class extends t{_maybeParseFieldValue(e){if(this.eat(o.eq)){const t=this._inStaticFieldScope;this._inStaticFieldScope=this.currentThisScope();e.value=this.parseExpression();this._inStaticFieldScope=t}else e.value=null}parseClassElement(e){if(this.options.ecmaVersion<8||!this.isContextual("static")){return super.parseClassElement.apply(this,arguments)}const t=this._branch();t.next();if([o.name,o.bracketL,o.string,o.num,this.privateIdentifierToken].indexOf(t.type)==-1&&!t.type.keyword){return super.parseClassElement.apply(this,arguments)}if(t.type==o.bracketL){let e=0;do{if(t.eat(o.bracketL))++e;else if(t.eat(o.bracketR))--e;else t.next()}while(e>0)}else t.next();if(t.type!=o.eq&&!t.canInsertSemicolon()&&t.type!=o.semi){return super.parseClassElement.apply(this,arguments)}const r=this.startNode();r.static=this.eatContextual("static");if(this.type==this.privateIdentifierToken){this.parsePrivateClassElementName(r)}else{this.parsePropertyName(r)}if(r.key.type==="Identifier"&&r.key.name==="constructor"||r.key.type==="Literal"&&!r.computed&&r.key.value==="constructor"){this.raise(r.key.start,"Classes may not have a field called constructor")}if((r.key.name||r.key.value)==="prototype"&&!r.computed){this.raise(r.key.start,"Classes may not have a static property named prototype")}this.enterScope(64|2|1);this._maybeParseFieldValue(r);this.exitScope();this.finishNode(r,"PropertyDefinition");this.semicolon();return r}parsePropertyName(e){if(e.static&&this.type==this.privateIdentifierToken){this.parsePrivateClassElementName(e)}else{super.parsePropertyName(e)}}parseIdent(e,t){const r=super.parseIdent(e,t);if(this._inStaticFieldScope&&this.currentThisScope()===this._inStaticFieldScope&&r.name=="arguments"){this.raise(r.start,"A static class field initializer may not contain arguments")}return r}}}},390:function(e,t){(function(e,r){true?r(t):0})(this,(function(e){"use strict";var t={3:"abstract boolean byte char class double enum export extends final float goto implements import int interface long native package private protected public short static super synchronized throws transient volatile",5:"class enum extends super const export import",6:"enum",strict:"implements interface let package private protected public static yield",strictBind:"eval arguments"};var r="break case catch continue debugger default do else finally for function if return switch throw try var while with null true false instanceof typeof void delete new in this";var s={5:r,"5module":r+" export import",6:r+" const class extends export import super"};var a=/^in(stanceof)?$/;var o="ªµºÀ-ÖØ-öø-ˁˆ-ˑˠ-ˤˬˮͰ-ʹͶͷͺ-ͽͿΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁҊ-ԯԱ-Ֆՙՠ-ֈא-תׯ-ײؠ-يٮٯٱ-ۓەۥۦۮۯۺ-ۼۿܐܒ-ܯݍ-ޥޱߊ-ߪߴߵߺࠀ-ࠕࠚࠤࠨࡀ-ࡘࡠ-ࡪࢠ-ࢴࢶ-ࣇऄ-हऽॐक़-ॡॱ-ঀঅ-ঌএঐও-নপ-রলশ-হঽৎড়ঢ়য়-ৡৰৱৼਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਖ਼-ੜਫ਼ੲ-ੴઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽૐૠૡૹଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽଡ଼ଢ଼ୟ-ୡୱஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹௐఅ-ఌఎ-ఐఒ-నప-హఽౘ-ౚౠౡಀಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽೞೠೡೱೲഄ-ഌഎ-ഐഒ-ഺഽൎൔ-ൖൟ-ൡൺ-ൿඅ-ඖක-නඳ-රලව-ෆก-ะาำเ-ๆກຂຄຆ-ຊຌ-ຣລວ-ະາຳຽເ-ໄໆໜ-ໟༀཀ-ཇཉ-ཬྈ-ྌက-ဪဿၐ-ၕၚ-ၝၡၥၦၮ-ၰၵ-ႁႎႠ-ჅჇჍა-ჺჼ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚᎀ-ᎏᎠ-Ᏽᏸ-ᏽᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛮ-ᛸᜀ-ᜌᜎ-ᜑᜠ-ᜱᝀ-ᝑᝠ-ᝬᝮ-ᝰក-ឳៗៜᠠ-ᡸᢀ-ᢨᢪᢰ-ᣵᤀ-ᤞᥐ-ᥭᥰ-ᥴᦀ-ᦫᦰ-ᧉᨀ-ᨖᨠ-ᩔᪧᬅ-ᬳᭅ-ᭋᮃ-ᮠᮮᮯᮺ-ᯥᰀ-ᰣᱍ-ᱏᱚ-ᱽᲀ-ᲈᲐ-ᲺᲽ-Ჿᳩ-ᳬᳮ-ᳳᳵᳶᳺᴀ-ᶿḀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼⁱⁿₐ-ₜℂℇℊ-ℓℕ℘-ℝℤΩℨK-ℹℼ-ℿⅅ-ⅉⅎⅠ-ↈⰀ-Ⱞⰰ-ⱞⱠ-ⳤⳫ-ⳮⳲⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞ々-〇〡-〩〱-〵〸-〼ぁ-ゖ゛-ゟァ-ヺー-ヿㄅ-ㄯㄱ-ㆎㆠ-ㆿㇰ-ㇿ㐀-䶿一-鿼ꀀ-ꒌꓐ-ꓽꔀ-ꘌꘐ-ꘟꘪꘫꙀ-ꙮꙿ-ꚝꚠ-ꛯꜗ-ꜟꜢ-ꞈꞋ-ꞿꟂ-ꟊꟵ-ꠁꠃ-ꠅꠇ-ꠊꠌ-ꠢꡀ-ꡳꢂ-ꢳꣲ-ꣷꣻꣽꣾꤊ-ꤥꤰ-ꥆꥠ-ꥼꦄ-ꦲꧏꧠ-ꧤꧦ-ꧯꧺ-ꧾꨀ-ꨨꩀ-ꩂꩄ-ꩋꩠ-ꩶꩺꩾ-ꪯꪱꪵꪶꪹ-ꪽꫀꫂꫛ-ꫝꫠ-ꫪꫲ-ꫴꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꬰ-ꭚꭜ-ꭩꭰ-ꯢ가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎ff-stﬓ-ﬗיִײַ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻﹰ-ﹴﹶ-ﻼA-Za-zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ";var u="‌‍·̀-ͯ·҃-֑҇-ׇֽֿׁׂׅׄؐ-ًؚ-٩ٰۖ-ۜ۟-۪ۤۧۨ-ۭ۰-۹ܑܰ-݊ަ-ް߀-߉߫-߽߳ࠖ-࠙ࠛ-ࠣࠥ-ࠧࠩ-࡙࠭-࡛࣓-ࣣ࣡-ःऺ-़ा-ॏ॑-ॗॢॣ०-९ঁ-ঃ়া-ৄেৈো-্ৗৢৣ০-৯৾ਁ-ਃ਼ਾ-ੂੇੈੋ-੍ੑ੦-ੱੵઁ-ઃ઼ા-ૅે-ૉો-્ૢૣ૦-૯ૺ-૿ଁ-ଃ଼ା-ୄେୈୋ-୍୕-ୗୢୣ୦-୯ஂா-ூெ-ைொ-்ௗ௦-௯ఀ-ఄా-ౄె-ైొ-్ౕౖౢౣ౦-౯ಁ-ಃ಼ಾ-ೄೆ-ೈೊ-್ೕೖೢೣ೦-೯ഀ-ഃ഻഼ാ-ൄെ-ൈൊ-്ൗൢൣ൦-൯ඁ-ඃ්ා-ුූෘ-ෟ෦-෯ෲෳัิ-ฺ็-๎๐-๙ັິ-ຼ່-ໍ໐-໙༘༙༠-༩༹༵༷༾༿ཱ-྄྆྇ྍ-ྗྙ-ྼ࿆ါ-ှ၀-၉ၖ-ၙၞ-ၠၢ-ၤၧ-ၭၱ-ၴႂ-ႍႏ-ႝ፝-፟፩-፱ᜒ-᜔ᜲ-᜴ᝒᝓᝲᝳ឴-៓៝០-៩᠋-᠍᠐-᠙ᢩᤠ-ᤫᤰ-᤻᥆-᥏᧐-᧚ᨗ-ᨛᩕ-ᩞ᩠-᩿᩼-᪉᪐-᪙᪰-᪽ᪿᫀᬀ-ᬄ᬴-᭄᭐-᭙᭫-᭳ᮀ-ᮂᮡ-ᮭ᮰-᮹᯦-᯳ᰤ-᰷᱀-᱉᱐-᱙᳐-᳔᳒-᳨᳭᳴᳷-᳹᷀-᷹᷻-᷿‿⁀⁔⃐-⃥⃜⃡-⃰⳯-⵿⳱ⷠ-〪ⷿ-゙゚〯꘠-꘩꙯ꙴ-꙽ꚞꚟ꛰꛱ꠂ꠆ꠋꠣ-ꠧ꠬ꢀꢁꢴ-ꣅ꣐-꣙꣠-꣱ꣿ-꤉ꤦ-꤭ꥇ-꥓ꦀ-ꦃ꦳-꧀꧐-꧙ꧥ꧰-꧹ꨩ-ꨶꩃꩌꩍ꩐-꩙ꩻ-ꩽꪰꪲ-ꪴꪷꪸꪾ꪿꫁ꫫ-ꫯꫵ꫶ꯣ-ꯪ꯬꯭꯰-꯹ﬞ︀-️︠-︯︳︴﹍-﹏0-9_";var c=new RegExp("["+o+"]");var p=new RegExp("["+o+u+"]");o=u=null;var h=[0,11,2,25,2,18,2,1,2,14,3,13,35,122,70,52,268,28,4,48,48,31,14,29,6,37,11,29,3,35,5,7,2,4,43,157,19,35,5,35,5,39,9,51,157,310,10,21,11,7,153,5,3,0,2,43,2,1,4,0,3,22,11,22,10,30,66,18,2,1,11,21,11,25,71,55,7,1,65,0,16,3,2,2,2,28,43,28,4,28,36,7,2,27,28,53,11,21,11,18,14,17,111,72,56,50,14,50,14,35,349,41,7,1,79,28,11,0,9,21,107,20,28,22,13,52,76,44,33,24,27,35,30,0,3,0,9,34,4,0,13,47,15,3,22,0,2,0,36,17,2,24,85,6,2,0,2,3,2,14,2,9,8,46,39,7,3,1,3,21,2,6,2,1,2,4,4,0,19,0,13,4,159,52,19,3,21,2,31,47,21,1,2,0,185,46,42,3,37,47,21,0,60,42,14,0,72,26,230,43,117,63,32,7,3,0,3,7,2,1,2,23,16,0,2,0,95,7,3,38,17,0,2,0,29,0,11,39,8,0,22,0,12,45,20,0,35,56,264,8,2,36,18,0,50,29,113,6,2,1,2,37,22,0,26,5,2,1,2,31,15,0,328,18,190,0,80,921,103,110,18,195,2749,1070,4050,582,8634,568,8,30,114,29,19,47,17,3,32,20,6,18,689,63,129,74,6,0,67,12,65,1,2,0,29,6135,9,1237,43,8,8952,286,50,2,18,3,9,395,2309,106,6,12,4,8,8,9,5991,84,2,70,2,1,3,0,3,1,3,3,2,11,2,0,2,6,2,64,2,3,3,7,2,6,2,27,2,3,2,4,2,0,4,6,2,339,3,24,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,7,2357,44,11,6,17,0,370,43,1301,196,60,67,8,0,1205,3,2,26,2,1,2,0,3,0,2,9,2,3,2,0,2,0,7,0,5,0,2,0,2,0,2,2,2,1,2,0,3,0,2,0,2,0,2,0,2,0,2,1,2,0,3,3,2,6,2,3,2,3,2,0,2,9,2,16,6,2,2,4,2,16,4421,42717,35,4148,12,221,3,5761,15,7472,3104,541,1507,4938];var d=[509,0,227,0,150,4,294,9,1368,2,2,1,6,3,41,2,5,0,166,1,574,3,9,9,370,1,154,10,176,2,54,14,32,9,16,3,46,10,54,9,7,2,37,13,2,9,6,1,45,0,13,2,49,13,9,3,2,11,83,11,7,0,161,11,6,9,7,3,56,1,2,6,3,1,3,2,10,0,11,1,3,6,4,4,193,17,10,9,5,0,82,19,13,9,214,6,3,8,28,1,83,16,16,9,82,12,9,9,84,14,5,9,243,14,166,9,71,5,2,1,3,3,2,0,2,1,13,9,120,6,3,6,4,0,29,9,41,6,2,3,9,0,10,10,47,15,406,7,2,7,17,9,57,21,2,13,123,5,4,0,2,1,2,6,2,0,9,9,49,4,2,1,2,4,9,9,330,3,19306,9,135,4,60,6,26,9,1014,0,2,54,8,3,82,0,12,1,19628,1,5319,4,4,5,9,7,3,6,31,3,149,2,1418,49,513,54,5,49,9,0,15,0,23,4,2,14,1361,6,2,16,3,6,2,1,2,4,262,6,10,9,419,13,1495,6,110,6,6,9,4759,9,787719,239];function isInAstralSet(e,t){var r=65536;for(var s=0;s<t.length;s+=2){r+=t[s];if(r>e){return false}r+=t[s+1];if(r>=e){return true}}}function isIdentifierStart(e,t){if(e<65){return e===36}if(e<91){return true}if(e<97){return e===95}if(e<123){return true}if(e<=65535){return e>=170&&c.test(String.fromCharCode(e))}if(t===false){return false}return isInAstralSet(e,h)}function isIdentifierChar(e,t){if(e<48){return e===36}if(e<58){return true}if(e<65){return false}if(e<91){return true}if(e<97){return e===95}if(e<123){return true}if(e<=65535){return e>=170&&p.test(String.fromCharCode(e))}if(t===false){return false}return isInAstralSet(e,h)||isInAstralSet(e,d)}var v=function TokenType(e,t){if(t===void 0)t={};this.label=e;this.keyword=t.keyword;this.beforeExpr=!!t.beforeExpr;this.startsExpr=!!t.startsExpr;this.isLoop=!!t.isLoop;this.isAssign=!!t.isAssign;this.prefix=!!t.prefix;this.postfix=!!t.postfix;this.binop=t.binop||null;this.updateContext=null};function binop(e,t){return new v(e,{beforeExpr:true,binop:t})}var m={beforeExpr:true},g={startsExpr:true};var y={};function kw(e,t){if(t===void 0)t={};t.keyword=e;return y[e]=new v(e,t)}var _={num:new v("num",g),regexp:new v("regexp",g),string:new v("string",g),name:new v("name",g),privateId:new v("privateId",g),eof:new v("eof"),bracketL:new v("[",{beforeExpr:true,startsExpr:true}),bracketR:new v("]"),braceL:new v("{",{beforeExpr:true,startsExpr:true}),braceR:new v("}"),parenL:new v("(",{beforeExpr:true,startsExpr:true}),parenR:new v(")"),comma:new v(",",m),semi:new v(";",m),colon:new v(":",m),dot:new v("."),question:new v("?",m),questionDot:new v("?."),arrow:new v("=>",m),template:new v("template"),invalidTemplate:new v("invalidTemplate"),ellipsis:new v("...",m),backQuote:new v("`",g),dollarBraceL:new v("${",{beforeExpr:true,startsExpr:true}),eq:new v("=",{beforeExpr:true,isAssign:true}),assign:new v("_=",{beforeExpr:true,isAssign:true}),incDec:new v("++/--",{prefix:true,postfix:true,startsExpr:true}),prefix:new v("!/~",{beforeExpr:true,prefix:true,startsExpr:true}),logicalOR:binop("||",1),logicalAND:binop("&&",2),bitwiseOR:binop("|",3),bitwiseXOR:binop("^",4),bitwiseAND:binop("&",5),equality:binop("==/!=/===/!==",6),relational:binop("</>/<=/>=",7),bitShift:binop("<</>>/>>>",8),plusMin:new v("+/-",{beforeExpr:true,binop:9,prefix:true,startsExpr:true}),modulo:binop("%",10),star:binop("*",10),slash:binop("/",10),starstar:new v("**",{beforeExpr:true}),coalesce:binop("??",1),_break:kw("break"),_case:kw("case",m),_catch:kw("catch"),_continue:kw("continue"),_debugger:kw("debugger"),_default:kw("default",m),_do:kw("do",{isLoop:true,beforeExpr:true}),_else:kw("else",m),_finally:kw("finally"),_for:kw("for",{isLoop:true}),_function:kw("function",g),_if:kw("if"),_return:kw("return",m),_switch:kw("switch"),_throw:kw("throw",m),_try:kw("try"),_var:kw("var"),_const:kw("const"),_while:kw("while",{isLoop:true}),_with:kw("with"),_new:kw("new",{beforeExpr:true,startsExpr:true}),_this:kw("this",g),_super:kw("super",g),_class:kw("class",g),_extends:kw("extends",m),_export:kw("export"),_import:kw("import",g),_null:kw("null",g),_true:kw("true",g),_false:kw("false",g),_in:kw("in",{beforeExpr:true,binop:7}),_instanceof:kw("instanceof",{beforeExpr:true,binop:7}),_typeof:kw("typeof",{beforeExpr:true,prefix:true,startsExpr:true}),_void:kw("void",{beforeExpr:true,prefix:true,startsExpr:true}),_delete:kw("delete",{beforeExpr:true,prefix:true,startsExpr:true})};var E=/\r\n?|\n|\u2028|\u2029/;var x=new RegExp(E.source,"g");function isNewLine(e,t){return e===10||e===13||!t&&(e===8232||e===8233)}var w=/[\u1680\u2000-\u200a\u202f\u205f\u3000\ufeff]/;var D=/(?:\s|\/\/.*|\/\*[^]*?\*\/)*/g;var C=Object.prototype;var A=C.hasOwnProperty;var S=C.toString;function has(e,t){return A.call(e,t)}var k=Array.isArray||function(e){return S.call(e)==="[object Array]"};function wordsRegexp(e){return new RegExp("^(?:"+e.replace(/ /g,"|")+")$")}var F=function Position(e,t){this.line=e;this.column=t};F.prototype.offset=function offset(e){return new F(this.line,this.column+e)};var R=function SourceLocation(e,t,r){this.start=t;this.end=r;if(e.sourceFile!==null){this.source=e.sourceFile}};function getLineInfo(e,t){for(var r=1,s=0;;){x.lastIndex=s;var a=x.exec(e);if(a&&a.index<t){++r;s=a.index+a[0].length}else{return new F(r,t-s)}}}var T={ecmaVersion:null,sourceType:"script",onInsertedSemicolon:null,onTrailingComma:null,allowReserved:null,allowReturnOutsideFunction:false,allowImportExportEverywhere:false,allowAwaitOutsideFunction:null,allowHashBang:false,locations:false,onToken:null,onComment:null,ranges:false,program:null,sourceFile:null,directSourceFile:null,preserveParens:false};var I=false;function getOptions(e){var t={};for(var r in T){t[r]=e&&has(e,r)?e[r]:T[r]}if(t.ecmaVersion==="latest"){t.ecmaVersion=1e8}else if(t.ecmaVersion==null){if(!I&&typeof console==="object"&&console.warn){I=true;console.warn("Since Acorn 8.0.0, options.ecmaVersion is required.\nDefaulting to 2020, but this will stop working in the future.")}t.ecmaVersion=11}else if(t.ecmaVersion>=2015){t.ecmaVersion-=2009}if(t.allowReserved==null){t.allowReserved=t.ecmaVersion<5}if(t.allowAwaitOutsideFunction==null){t.allowAwaitOutsideFunction=t.ecmaVersion>=13}if(k(t.onToken)){var s=t.onToken;t.onToken=function(e){return s.push(e)}}if(k(t.onComment)){t.onComment=pushComment(t,t.onComment)}return t}function pushComment(e,t){return function(r,s,a,o,u,c){var p={type:r?"Block":"Line",value:s,start:a,end:o};if(e.locations){p.loc=new R(this,u,c)}if(e.ranges){p.range=[a,o]}t.push(p)}}var B=1,N=2,O=B|N,P=4,L=8,j=16,M=32,V=64,q=128;function functionFlags(e,t){return N|(e?P:0)|(t?L:0)}var U=0,$=1,H=2,G=3,W=4,z=5;var K=function Parser(e,r,a){this.options=e=getOptions(e);this.sourceFile=e.sourceFile;this.keywords=wordsRegexp(s[e.ecmaVersion>=6?6:e.sourceType==="module"?"5module":5]);var o="";if(e.allowReserved!==true){o=t[e.ecmaVersion>=6?6:e.ecmaVersion===5?5:3];if(e.sourceType==="module"){o+=" await"}}this.reservedWords=wordsRegexp(o);var u=(o?o+" ":"")+t.strict;this.reservedWordsStrict=wordsRegexp(u);this.reservedWordsStrictBind=wordsRegexp(u+" "+t.strictBind);this.input=String(r);this.containsEsc=false;if(a){this.pos=a;this.lineStart=this.input.lastIndexOf("\n",a-1)+1;this.curLine=this.input.slice(0,this.lineStart).split(E).length}else{this.pos=this.lineStart=0;this.curLine=1}this.type=_.eof;this.value=null;this.start=this.end=this.pos;this.startLoc=this.endLoc=this.curPosition();this.lastTokEndLoc=this.lastTokStartLoc=null;this.lastTokStart=this.lastTokEnd=this.pos;this.context=this.initialContext();this.exprAllowed=true;this.inModule=e.sourceType==="module";this.strict=this.inModule||this.strictDirective(this.pos);this.potentialArrowAt=-1;this.potentialArrowInForAwait=false;this.yieldPos=this.awaitPos=this.awaitIdentPos=0;this.labels=[];this.undefinedExports=Object.create(null);if(this.pos===0&&e.allowHashBang&&this.input.slice(0,2)==="#!"){this.skipLineComment(2)}this.scopeStack=[];this.enterScope(B);this.regexpState=null;this.privateNameStack=[]};var Q={inFunction:{configurable:true},inGenerator:{configurable:true},inAsync:{configurable:true},allowSuper:{configurable:true},allowDirectSuper:{configurable:true},treatFunctionsAsVar:{configurable:true},inNonArrowFunction:{configurable:true}};K.prototype.parse=function parse(){var e=this.options.program||this.startNode();this.nextToken();return this.parseTopLevel(e)};Q.inFunction.get=function(){return(this.currentVarScope().flags&N)>0};Q.inGenerator.get=function(){return(this.currentVarScope().flags&L)>0&&!this.currentVarScope().inClassFieldInit};Q.inAsync.get=function(){return(this.currentVarScope().flags&P)>0&&!this.currentVarScope().inClassFieldInit};Q.allowSuper.get=function(){var e=this.currentThisScope();var t=e.flags;var r=e.inClassFieldInit;return(t&V)>0||r};Q.allowDirectSuper.get=function(){return(this.currentThisScope().flags&q)>0};Q.treatFunctionsAsVar.get=function(){return this.treatFunctionsAsVarInScope(this.currentScope())};Q.inNonArrowFunction.get=function(){var e=this.currentThisScope();var t=e.flags;var r=e.inClassFieldInit;return(t&N)>0||r};K.extend=function extend(){var e=[],t=arguments.length;while(t--)e[t]=arguments[t];var r=this;for(var s=0;s<e.length;s++){r=e[s](r)}return r};K.parse=function parse(e,t){return new this(t,e).parse()};K.parseExpressionAt=function parseExpressionAt(e,t,r){var s=new this(r,e,t);s.nextToken();return s.parseExpression()};K.tokenizer=function tokenizer(e,t){return new this(t,e)};Object.defineProperties(K.prototype,Q);var X=K.prototype;var Z=/^(?:'((?:\\.|[^'\\])*?)'|"((?:\\.|[^"\\])*?)")/;X.strictDirective=function(e){for(;;){D.lastIndex=e;e+=D.exec(this.input)[0].length;var t=Z.exec(this.input.slice(e));if(!t){return false}if((t[1]||t[2])==="use strict"){D.lastIndex=e+t[0].length;var r=D.exec(this.input),s=r.index+r[0].length;var a=this.input.charAt(s);return a===";"||a==="}"||E.test(r[0])&&!(/[(`.[+\-/*%<>=,?^&]/.test(a)||a==="!"&&this.input.charAt(s+1)==="=")}e+=t[0].length;D.lastIndex=e;e+=D.exec(this.input)[0].length;if(this.input[e]===";"){e++}}};X.eat=function(e){if(this.type===e){this.next();return true}else{return false}};X.isContextual=function(e){return this.type===_.name&&this.value===e&&!this.containsEsc};X.eatContextual=function(e){if(!this.isContextual(e)){return false}this.next();return true};X.expectContextual=function(e){if(!this.eatContextual(e)){this.unexpected()}};X.canInsertSemicolon=function(){return this.type===_.eof||this.type===_.braceR||E.test(this.input.slice(this.lastTokEnd,this.start))};X.insertSemicolon=function(){if(this.canInsertSemicolon()){if(this.options.onInsertedSemicolon){this.options.onInsertedSemicolon(this.lastTokEnd,this.lastTokEndLoc)}return true}};X.semicolon=function(){if(!this.eat(_.semi)&&!this.insertSemicolon()){this.unexpected()}};X.afterTrailingComma=function(e,t){if(this.type===e){if(this.options.onTrailingComma){this.options.onTrailingComma(this.lastTokStart,this.lastTokStartLoc)}if(!t){this.next()}return true}};X.expect=function(e){this.eat(e)||this.unexpected()};X.unexpected=function(e){this.raise(e!=null?e:this.start,"Unexpected token")};function DestructuringErrors(){this.shorthandAssign=this.trailingComma=this.parenthesizedAssign=this.parenthesizedBind=this.doubleProto=-1}X.checkPatternErrors=function(e,t){if(!e){return}if(e.trailingComma>-1){this.raiseRecoverable(e.trailingComma,"Comma is not permitted after the rest element")}var r=t?e.parenthesizedAssign:e.parenthesizedBind;if(r>-1){this.raiseRecoverable(r,"Parenthesized pattern")}};X.checkExpressionErrors=function(e,t){if(!e){return false}var r=e.shorthandAssign;var s=e.doubleProto;if(!t){return r>=0||s>=0}if(r>=0){this.raise(r,"Shorthand property assignments are valid only in destructuring patterns")}if(s>=0){this.raiseRecoverable(s,"Redefinition of __proto__ property")}};X.checkYieldAwaitInDefaultParams=function(){if(this.yieldPos&&(!this.awaitPos||this.yieldPos<this.awaitPos)){this.raise(this.yieldPos,"Yield expression cannot be a default value")}if(this.awaitPos){this.raise(this.awaitPos,"Await expression cannot be a default value")}};X.isSimpleAssignTarget=function(e){if(e.type==="ParenthesizedExpression"){return this.isSimpleAssignTarget(e.expression)}return e.type==="Identifier"||e.type==="MemberExpression"};var J=K.prototype;J.parseTopLevel=function(e){var t=Object.create(null);if(!e.body){e.body=[]}while(this.type!==_.eof){var r=this.parseStatement(null,true,t);e.body.push(r)}if(this.inModule){for(var s=0,a=Object.keys(this.undefinedExports);s<a.length;s+=1){var o=a[s];this.raiseRecoverable(this.undefinedExports[o].start,"Export '"+o+"' is not defined")}}this.adaptDirectivePrologue(e.body);this.next();e.sourceType=this.options.sourceType;return this.finishNode(e,"Program")};var Y={kind:"loop"},ee={kind:"switch"};J.isLet=function(e){if(this.options.ecmaVersion<6||!this.isContextual("let")){return false}D.lastIndex=this.pos;var t=D.exec(this.input);var r=this.pos+t[0].length,s=this.input.charCodeAt(r);if(s===91||s===92||s>55295&&s<56320){return true}if(e){return false}if(s===123){return true}if(isIdentifierStart(s,true)){var o=r+1;while(isIdentifierChar(s=this.input.charCodeAt(o),true)){++o}if(s===92||s>55295&&s<56320){return true}var u=this.input.slice(r,o);if(!a.test(u)){return true}}return false};J.isAsyncFunction=function(){if(this.options.ecmaVersion<8||!this.isContextual("async")){return false}D.lastIndex=this.pos;var e=D.exec(this.input);var t=this.pos+e[0].length,r;return!E.test(this.input.slice(this.pos,t))&&this.input.slice(t,t+8)==="function"&&(t+8===this.input.length||!(isIdentifierChar(r=this.input.charCodeAt(t+8))||r>55295&&r<56320))};J.parseStatement=function(e,t,r){var s=this.type,a=this.startNode(),o;if(this.isLet(e)){s=_._var;o="let"}switch(s){case _._break:case _._continue:return this.parseBreakContinueStatement(a,s.keyword);case _._debugger:return this.parseDebuggerStatement(a);case _._do:return this.parseDoStatement(a);case _._for:return this.parseForStatement(a);case _._function:if(e&&(this.strict||e!=="if"&&e!=="label")&&this.options.ecmaVersion>=6){this.unexpected()}return this.parseFunctionStatement(a,false,!e);case _._class:if(e){this.unexpected()}return this.parseClass(a,true);case _._if:return this.parseIfStatement(a);case _._return:return this.parseReturnStatement(a);case _._switch:return this.parseSwitchStatement(a);case _._throw:return this.parseThrowStatement(a);case _._try:return this.parseTryStatement(a);case _._const:case _._var:o=o||this.value;if(e&&o!=="var"){this.unexpected()}return this.parseVarStatement(a,o);case _._while:return this.parseWhileStatement(a);case _._with:return this.parseWithStatement(a);case _.braceL:return this.parseBlock(true,a);case _.semi:return this.parseEmptyStatement(a);case _._export:case _._import:if(this.options.ecmaVersion>10&&s===_._import){D.lastIndex=this.pos;var u=D.exec(this.input);var c=this.pos+u[0].length,p=this.input.charCodeAt(c);if(p===40||p===46){return this.parseExpressionStatement(a,this.parseExpression())}}if(!this.options.allowImportExportEverywhere){if(!t){this.raise(this.start,"'import' and 'export' may only appear at the top level")}if(!this.inModule){this.raise(this.start,"'import' and 'export' may appear only with 'sourceType: module'")}}return s===_._import?this.parseImport(a):this.parseExport(a,r);default:if(this.isAsyncFunction()){if(e){this.unexpected()}this.next();return this.parseFunctionStatement(a,true,!e)}var h=this.value,d=this.parseExpression();if(s===_.name&&d.type==="Identifier"&&this.eat(_.colon)){return this.parseLabeledStatement(a,h,d,e)}else{return this.parseExpressionStatement(a,d)}}};J.parseBreakContinueStatement=function(e,t){var r=t==="break";this.next();if(this.eat(_.semi)||this.insertSemicolon()){e.label=null}else if(this.type!==_.name){this.unexpected()}else{e.label=this.parseIdent();this.semicolon()}var s=0;for(;s<this.labels.length;++s){var a=this.labels[s];if(e.label==null||a.name===e.label.name){if(a.kind!=null&&(r||a.kind==="loop")){break}if(e.label&&r){break}}}if(s===this.labels.length){this.raise(e.start,"Unsyntactic "+t)}return this.finishNode(e,r?"BreakStatement":"ContinueStatement")};J.parseDebuggerStatement=function(e){this.next();this.semicolon();return this.finishNode(e,"DebuggerStatement")};J.parseDoStatement=function(e){this.next();this.labels.push(Y);e.body=this.parseStatement("do");this.labels.pop();this.expect(_._while);e.test=this.parseParenExpression();if(this.options.ecmaVersion>=6){this.eat(_.semi)}else{this.semicolon()}return this.finishNode(e,"DoWhileStatement")};J.parseForStatement=function(e){this.next();var t=this.options.ecmaVersion>=9&&(this.inAsync||!this.inFunction&&this.options.allowAwaitOutsideFunction)&&this.eatContextual("await")?this.lastTokStart:-1;this.labels.push(Y);this.enterScope(0);this.expect(_.parenL);if(this.type===_.semi){if(t>-1){this.unexpected(t)}return this.parseFor(e,null)}var r=this.isLet();if(this.type===_._var||this.type===_._const||r){var s=this.startNode(),a=r?"let":this.value;this.next();this.parseVar(s,true,a);this.finishNode(s,"VariableDeclaration");if((this.type===_._in||this.options.ecmaVersion>=6&&this.isContextual("of"))&&s.declarations.length===1){if(this.options.ecmaVersion>=9){if(this.type===_._in){if(t>-1){this.unexpected(t)}}else{e.await=t>-1}}return this.parseForIn(e,s)}if(t>-1){this.unexpected(t)}return this.parseFor(e,s)}var o=new DestructuringErrors;var u=this.parseExpression(t>-1?"await":true,o);if(this.type===_._in||this.options.ecmaVersion>=6&&this.isContextual("of")){if(this.options.ecmaVersion>=9){if(this.type===_._in){if(t>-1){this.unexpected(t)}}else{e.await=t>-1}}this.toAssignable(u,false,o);this.checkLValPattern(u);return this.parseForIn(e,u)}else{this.checkExpressionErrors(o,true)}if(t>-1){this.unexpected(t)}return this.parseFor(e,u)};J.parseFunctionStatement=function(e,t,r){this.next();return this.parseFunction(e,re|(r?0:ie),false,t)};J.parseIfStatement=function(e){this.next();e.test=this.parseParenExpression();e.consequent=this.parseStatement("if");e.alternate=this.eat(_._else)?this.parseStatement("if"):null;return this.finishNode(e,"IfStatement")};J.parseReturnStatement=function(e){if(!this.inFunction&&!this.options.allowReturnOutsideFunction){this.raise(this.start,"'return' outside of function")}this.next();if(this.eat(_.semi)||this.insertSemicolon()){e.argument=null}else{e.argument=this.parseExpression();this.semicolon()}return this.finishNode(e,"ReturnStatement")};J.parseSwitchStatement=function(e){this.next();e.discriminant=this.parseParenExpression();e.cases=[];this.expect(_.braceL);this.labels.push(ee);this.enterScope(0);var t;for(var r=false;this.type!==_.braceR;){if(this.type===_._case||this.type===_._default){var s=this.type===_._case;if(t){this.finishNode(t,"SwitchCase")}e.cases.push(t=this.startNode());t.consequent=[];this.next();if(s){t.test=this.parseExpression()}else{if(r){this.raiseRecoverable(this.lastTokStart,"Multiple default clauses")}r=true;t.test=null}this.expect(_.colon)}else{if(!t){this.unexpected()}t.consequent.push(this.parseStatement(null))}}this.exitScope();if(t){this.finishNode(t,"SwitchCase")}this.next();this.labels.pop();return this.finishNode(e,"SwitchStatement")};J.parseThrowStatement=function(e){this.next();if(E.test(this.input.slice(this.lastTokEnd,this.start))){this.raise(this.lastTokEnd,"Illegal newline after throw")}e.argument=this.parseExpression();this.semicolon();return this.finishNode(e,"ThrowStatement")};var te=[];J.parseTryStatement=function(e){this.next();e.block=this.parseBlock();e.handler=null;if(this.type===_._catch){var t=this.startNode();this.next();if(this.eat(_.parenL)){t.param=this.parseBindingAtom();var r=t.param.type==="Identifier";this.enterScope(r?M:0);this.checkLValPattern(t.param,r?W:H);this.expect(_.parenR)}else{if(this.options.ecmaVersion<10){this.unexpected()}t.param=null;this.enterScope(0)}t.body=this.parseBlock(false);this.exitScope();e.handler=this.finishNode(t,"CatchClause")}e.finalizer=this.eat(_._finally)?this.parseBlock():null;if(!e.handler&&!e.finalizer){this.raise(e.start,"Missing catch or finally clause")}return this.finishNode(e,"TryStatement")};J.parseVarStatement=function(e,t){this.next();this.parseVar(e,false,t);this.semicolon();return this.finishNode(e,"VariableDeclaration")};J.parseWhileStatement=function(e){this.next();e.test=this.parseParenExpression();this.labels.push(Y);e.body=this.parseStatement("while");this.labels.pop();return this.finishNode(e,"WhileStatement")};J.parseWithStatement=function(e){if(this.strict){this.raise(this.start,"'with' in strict mode")}this.next();e.object=this.parseParenExpression();e.body=this.parseStatement("with");return this.finishNode(e,"WithStatement")};J.parseEmptyStatement=function(e){this.next();return this.finishNode(e,"EmptyStatement")};J.parseLabeledStatement=function(e,t,r,s){for(var a=0,o=this.labels;a<o.length;a+=1){var u=o[a];if(u.name===t){this.raise(r.start,"Label '"+t+"' is already declared")}}var c=this.type.isLoop?"loop":this.type===_._switch?"switch":null;for(var p=this.labels.length-1;p>=0;p--){var h=this.labels[p];if(h.statementStart===e.start){h.statementStart=this.start;h.kind=c}else{break}}this.labels.push({name:t,kind:c,statementStart:this.start});e.body=this.parseStatement(s?s.indexOf("label")===-1?s+"label":s:"label");this.labels.pop();e.label=r;return this.finishNode(e,"LabeledStatement")};J.parseExpressionStatement=function(e,t){e.expression=t;this.semicolon();return this.finishNode(e,"ExpressionStatement")};J.parseBlock=function(e,t,r){if(e===void 0)e=true;if(t===void 0)t=this.startNode();t.body=[];this.expect(_.braceL);if(e){this.enterScope(0)}while(this.type!==_.braceR){var s=this.parseStatement(null);t.body.push(s)}if(r){this.strict=false}this.next();if(e){this.exitScope()}return this.finishNode(t,"BlockStatement")};J.parseFor=function(e,t){e.init=t;this.expect(_.semi);e.test=this.type===_.semi?null:this.parseExpression();this.expect(_.semi);e.update=this.type===_.parenR?null:this.parseExpression();this.expect(_.parenR);e.body=this.parseStatement("for");this.exitScope();this.labels.pop();return this.finishNode(e,"ForStatement")};J.parseForIn=function(e,t){var r=this.type===_._in;this.next();if(t.type==="VariableDeclaration"&&t.declarations[0].init!=null&&(!r||this.options.ecmaVersion<8||this.strict||t.kind!=="var"||t.declarations[0].id.type!=="Identifier")){this.raise(t.start,(r?"for-in":"for-of")+" loop variable declaration may not have an initializer")}e.left=t;e.right=r?this.parseExpression():this.parseMaybeAssign();this.expect(_.parenR);e.body=this.parseStatement("for");this.exitScope();this.labels.pop();return this.finishNode(e,r?"ForInStatement":"ForOfStatement")};J.parseVar=function(e,t,r){e.declarations=[];e.kind=r;for(;;){var s=this.startNode();this.parseVarId(s,r);if(this.eat(_.eq)){s.init=this.parseMaybeAssign(t)}else if(r==="const"&&!(this.type===_._in||this.options.ecmaVersion>=6&&this.isContextual("of"))){this.unexpected()}else if(s.id.type!=="Identifier"&&!(t&&(this.type===_._in||this.isContextual("of")))){this.raise(this.lastTokEnd,"Complex binding patterns require an initialization value")}else{s.init=null}e.declarations.push(this.finishNode(s,"VariableDeclarator"));if(!this.eat(_.comma)){break}}return e};J.parseVarId=function(e,t){e.id=this.parseBindingAtom();this.checkLValPattern(e.id,t==="var"?$:H,false)};var re=1,ie=2,ne=4;J.parseFunction=function(e,t,r,s){this.initFunction(e);if(this.options.ecmaVersion>=9||this.options.ecmaVersion>=6&&!s){if(this.type===_.star&&t&ie){this.unexpected()}e.generator=this.eat(_.star)}if(this.options.ecmaVersion>=8){e.async=!!s}if(t&re){e.id=t&ne&&this.type!==_.name?null:this.parseIdent();if(e.id&&!(t&ie)){this.checkLValSimple(e.id,this.strict||e.generator||e.async?this.treatFunctionsAsVar?$:H:G)}}var a=this.yieldPos,o=this.awaitPos,u=this.awaitIdentPos;this.yieldPos=0;this.awaitPos=0;this.awaitIdentPos=0;this.enterScope(functionFlags(e.async,e.generator));if(!(t&re)){e.id=this.type===_.name?this.parseIdent():null}this.parseFunctionParams(e);this.parseFunctionBody(e,r,false);this.yieldPos=a;this.awaitPos=o;this.awaitIdentPos=u;return this.finishNode(e,t&re?"FunctionDeclaration":"FunctionExpression")};J.parseFunctionParams=function(e){this.expect(_.parenL);e.params=this.parseBindingList(_.parenR,false,this.options.ecmaVersion>=8);this.checkYieldAwaitInDefaultParams()};J.parseClass=function(e,t){this.next();var r=this.strict;this.strict=true;this.parseClassId(e,t);this.parseClassSuper(e);var s=this.enterClassBody();var a=this.startNode();var o=false;a.body=[];this.expect(_.braceL);while(this.type!==_.braceR){var u=this.parseClassElement(e.superClass!==null);if(u){a.body.push(u);if(u.type==="MethodDefinition"&&u.kind==="constructor"){if(o){this.raise(u.start,"Duplicate constructor in the same class")}o=true}else if(u.key.type==="PrivateIdentifier"&&isPrivateNameConflicted(s,u)){this.raiseRecoverable(u.key.start,"Identifier '#"+u.key.name+"' has already been declared")}}}this.strict=r;this.next();e.body=this.finishNode(a,"ClassBody");this.exitClassBody();return this.finishNode(e,t?"ClassDeclaration":"ClassExpression")};J.parseClassElement=function(e){if(this.eat(_.semi)){return null}var t=this.options.ecmaVersion;var r=this.startNode();var s="";var a=false;var o=false;var u="method";r.static=false;if(this.eatContextual("static")){if(this.isClassElementNameStart()||this.type===_.star){r.static=true}else{s="static"}}if(!s&&t>=8&&this.eatContextual("async")){if((this.isClassElementNameStart()||this.type===_.star)&&!this.canInsertSemicolon()){o=true}else{s="async"}}if(!s&&(t>=9||!o)&&this.eat(_.star)){a=true}if(!s&&!o&&!a){var c=this.value;if(this.eatContextual("get")||this.eatContextual("set")){if(this.isClassElementNameStart()){u=c}else{s=c}}}if(s){r.computed=false;r.key=this.startNodeAt(this.lastTokStart,this.lastTokStartLoc);r.key.name=s;this.finishNode(r.key,"Identifier")}else{this.parseClassElementName(r)}if(t<13||this.type===_.parenL||u!=="method"||a||o){var p=!r.static&&checkKeyName(r,"constructor");var h=p&&e;if(p&&u!=="method"){this.raise(r.key.start,"Constructor can't have get/set modifier")}r.kind=p?"constructor":u;this.parseClassMethod(r,a,o,h)}else{this.parseClassField(r)}return r};J.isClassElementNameStart=function(){return this.type===_.name||this.type===_.privateId||this.type===_.num||this.type===_.string||this.type===_.bracketL||this.type.keyword};J.parseClassElementName=function(e){if(this.type===_.privateId){if(this.value==="constructor"){this.raise(this.start,"Classes can't have an element named '#constructor'")}e.computed=false;e.key=this.parsePrivateIdent()}else{this.parsePropertyName(e)}};J.parseClassMethod=function(e,t,r,s){var a=e.key;if(e.kind==="constructor"){if(t){this.raise(a.start,"Constructor can't be a generator")}if(r){this.raise(a.start,"Constructor can't be an async method")}}else if(e.static&&checkKeyName(e,"prototype")){this.raise(a.start,"Classes may not have a static property named prototype")}var o=e.value=this.parseMethod(t,r,s);if(e.kind==="get"&&o.params.length!==0){this.raiseRecoverable(o.start,"getter should have no params")}if(e.kind==="set"&&o.params.length!==1){this.raiseRecoverable(o.start,"setter should have exactly one param")}if(e.kind==="set"&&o.params[0].type==="RestElement"){this.raiseRecoverable(o.params[0].start,"Setter cannot use rest params")}return this.finishNode(e,"MethodDefinition")};J.parseClassField=function(e){if(checkKeyName(e,"constructor")){this.raise(e.key.start,"Classes can't have a field named 'constructor'")}else if(e.static&&checkKeyName(e,"prototype")){this.raise(e.key.start,"Classes can't have a static field named 'prototype'")}if(this.eat(_.eq)){var t=this.currentThisScope();var r=t.inClassFieldInit;t.inClassFieldInit=true;e.value=this.parseMaybeAssign();t.inClassFieldInit=r}else{e.value=null}this.semicolon();return this.finishNode(e,"PropertyDefinition")};J.parseClassId=function(e,t){if(this.type===_.name){e.id=this.parseIdent();if(t){this.checkLValSimple(e.id,H,false)}}else{if(t===true){this.unexpected()}e.id=null}};J.parseClassSuper=function(e){e.superClass=this.eat(_._extends)?this.parseExprSubscripts():null};J.enterClassBody=function(){var e={declared:Object.create(null),used:[]};this.privateNameStack.push(e);return e.declared};J.exitClassBody=function(){var e=this.privateNameStack.pop();var t=e.declared;var r=e.used;var s=this.privateNameStack.length;var a=s===0?null:this.privateNameStack[s-1];for(var o=0;o<r.length;++o){var u=r[o];if(!has(t,u.name)){if(a){a.used.push(u)}else{this.raiseRecoverable(u.start,"Private field '#"+u.name+"' must be declared in an enclosing class")}}}};function isPrivateNameConflicted(e,t){var r=t.key.name;var s=e[r];var a="true";if(t.type==="MethodDefinition"&&(t.kind==="get"||t.kind==="set")){a=(t.static?"s":"i")+t.kind}if(s==="iget"&&a==="iset"||s==="iset"&&a==="iget"||s==="sget"&&a==="sset"||s==="sset"&&a==="sget"){e[r]="true";return false}else if(!s){e[r]=a;return false}else{return true}}function checkKeyName(e,t){var r=e.computed;var s=e.key;return!r&&(s.type==="Identifier"&&s.name===t||s.type==="Literal"&&s.value===t)}J.parseExport=function(e,t){this.next();if(this.eat(_.star)){if(this.options.ecmaVersion>=11){if(this.eatContextual("as")){e.exported=this.parseIdent(true);this.checkExport(t,e.exported.name,this.lastTokStart)}else{e.exported=null}}this.expectContextual("from");if(this.type!==_.string){this.unexpected()}e.source=this.parseExprAtom();this.semicolon();return this.finishNode(e,"ExportAllDeclaration")}if(this.eat(_._default)){this.checkExport(t,"default",this.lastTokStart);var r;if(this.type===_._function||(r=this.isAsyncFunction())){var s=this.startNode();this.next();if(r){this.next()}e.declaration=this.parseFunction(s,re|ne,false,r)}else if(this.type===_._class){var a=this.startNode();e.declaration=this.parseClass(a,"nullableID")}else{e.declaration=this.parseMaybeAssign();this.semicolon()}return this.finishNode(e,"ExportDefaultDeclaration")}if(this.shouldParseExportStatement()){e.declaration=this.parseStatement(null);if(e.declaration.type==="VariableDeclaration"){this.checkVariableExport(t,e.declaration.declarations)}else{this.checkExport(t,e.declaration.id.name,e.declaration.id.start)}e.specifiers=[];e.source=null}else{e.declaration=null;e.specifiers=this.parseExportSpecifiers(t);if(this.eatContextual("from")){if(this.type!==_.string){this.unexpected()}e.source=this.parseExprAtom()}else{for(var o=0,u=e.specifiers;o<u.length;o+=1){var c=u[o];this.checkUnreserved(c.local);this.checkLocalExport(c.local)}e.source=null}this.semicolon()}return this.finishNode(e,"ExportNamedDeclaration")};J.checkExport=function(e,t,r){if(!e){return}if(has(e,t)){this.raiseRecoverable(r,"Duplicate export '"+t+"'")}e[t]=true};J.checkPatternExport=function(e,t){var r=t.type;if(r==="Identifier"){this.checkExport(e,t.name,t.start)}else if(r==="ObjectPattern"){for(var s=0,a=t.properties;s<a.length;s+=1){var o=a[s];this.checkPatternExport(e,o)}}else if(r==="ArrayPattern"){for(var u=0,c=t.elements;u<c.length;u+=1){var p=c[u];if(p){this.checkPatternExport(e,p)}}}else if(r==="Property"){this.checkPatternExport(e,t.value)}else if(r==="AssignmentPattern"){this.checkPatternExport(e,t.left)}else if(r==="RestElement"){this.checkPatternExport(e,t.argument)}else if(r==="ParenthesizedExpression"){this.checkPatternExport(e,t.expression)}};J.checkVariableExport=function(e,t){if(!e){return}for(var r=0,s=t;r<s.length;r+=1){var a=s[r];this.checkPatternExport(e,a.id)}};J.shouldParseExportStatement=function(){return this.type.keyword==="var"||this.type.keyword==="const"||this.type.keyword==="class"||this.type.keyword==="function"||this.isLet()||this.isAsyncFunction()};J.parseExportSpecifiers=function(e){var t=[],r=true;this.expect(_.braceL);while(!this.eat(_.braceR)){if(!r){this.expect(_.comma);if(this.afterTrailingComma(_.braceR)){break}}else{r=false}var s=this.startNode();s.local=this.parseIdent(true);s.exported=this.eatContextual("as")?this.parseIdent(true):s.local;this.checkExport(e,s.exported.name,s.exported.start);t.push(this.finishNode(s,"ExportSpecifier"))}return t};J.parseImport=function(e){this.next();if(this.type===_.string){e.specifiers=te;e.source=this.parseExprAtom()}else{e.specifiers=this.parseImportSpecifiers();this.expectContextual("from");e.source=this.type===_.string?this.parseExprAtom():this.unexpected()}this.semicolon();return this.finishNode(e,"ImportDeclaration")};J.parseImportSpecifiers=function(){var e=[],t=true;if(this.type===_.name){var r=this.startNode();r.local=this.parseIdent();this.checkLValSimple(r.local,H);e.push(this.finishNode(r,"ImportDefaultSpecifier"));if(!this.eat(_.comma)){return e}}if(this.type===_.star){var s=this.startNode();this.next();this.expectContextual("as");s.local=this.parseIdent();this.checkLValSimple(s.local,H);e.push(this.finishNode(s,"ImportNamespaceSpecifier"));return e}this.expect(_.braceL);while(!this.eat(_.braceR)){if(!t){this.expect(_.comma);if(this.afterTrailingComma(_.braceR)){break}}else{t=false}var a=this.startNode();a.imported=this.parseIdent(true);if(this.eatContextual("as")){a.local=this.parseIdent()}else{this.checkUnreserved(a.imported);a.local=a.imported}this.checkLValSimple(a.local,H);e.push(this.finishNode(a,"ImportSpecifier"))}return e};J.adaptDirectivePrologue=function(e){for(var t=0;t<e.length&&this.isDirectiveCandidate(e[t]);++t){e[t].directive=e[t].expression.raw.slice(1,-1)}};J.isDirectiveCandidate=function(e){return e.type==="ExpressionStatement"&&e.expression.type==="Literal"&&typeof e.expression.value==="string"&&(this.input[e.start]==='"'||this.input[e.start]==="'")};var se=K.prototype;se.toAssignable=function(e,t,r){if(this.options.ecmaVersion>=6&&e){switch(e.type){case"Identifier":if(this.inAsync&&e.name==="await"){this.raise(e.start,"Cannot use 'await' as identifier inside an async function")}break;case"ObjectPattern":case"ArrayPattern":case"AssignmentPattern":case"RestElement":break;case"ObjectExpression":e.type="ObjectPattern";if(r){this.checkPatternErrors(r,true)}for(var s=0,a=e.properties;s<a.length;s+=1){var o=a[s];this.toAssignable(o,t);if(o.type==="RestElement"&&(o.argument.type==="ArrayPattern"||o.argument.type==="ObjectPattern")){this.raise(o.argument.start,"Unexpected token")}}break;case"Property":if(e.kind!=="init"){this.raise(e.key.start,"Object pattern can't contain getter or setter")}this.toAssignable(e.value,t);break;case"ArrayExpression":e.type="ArrayPattern";if(r){this.checkPatternErrors(r,true)}this.toAssignableList(e.elements,t);break;case"SpreadElement":e.type="RestElement";this.toAssignable(e.argument,t);if(e.argument.type==="AssignmentPattern"){this.raise(e.argument.start,"Rest elements cannot have a default value")}break;case"AssignmentExpression":if(e.operator!=="="){this.raise(e.left.end,"Only '=' operator can be used for specifying default value.")}e.type="AssignmentPattern";delete e.operator;this.toAssignable(e.left,t);break;case"ParenthesizedExpression":this.toAssignable(e.expression,t,r);break;case"ChainExpression":this.raiseRecoverable(e.start,"Optional chaining cannot appear in left-hand side");break;case"MemberExpression":if(!t){break}default:this.raise(e.start,"Assigning to rvalue")}}else if(r){this.checkPatternErrors(r,true)}return e};se.toAssignableList=function(e,t){var r=e.length;for(var s=0;s<r;s++){var a=e[s];if(a){this.toAssignable(a,t)}}if(r){var o=e[r-1];if(this.options.ecmaVersion===6&&t&&o&&o.type==="RestElement"&&o.argument.type!=="Identifier"){this.unexpected(o.argument.start)}}return e};se.parseSpread=function(e){var t=this.startNode();this.next();t.argument=this.parseMaybeAssign(false,e);return this.finishNode(t,"SpreadElement")};se.parseRestBinding=function(){var e=this.startNode();this.next();if(this.options.ecmaVersion===6&&this.type!==_.name){this.unexpected()}e.argument=this.parseBindingAtom();return this.finishNode(e,"RestElement")};se.parseBindingAtom=function(){if(this.options.ecmaVersion>=6){switch(this.type){case _.bracketL:var e=this.startNode();this.next();e.elements=this.parseBindingList(_.bracketR,true,true);return this.finishNode(e,"ArrayPattern");case _.braceL:return this.parseObj(true)}}return this.parseIdent()};se.parseBindingList=function(e,t,r){var s=[],a=true;while(!this.eat(e)){if(a){a=false}else{this.expect(_.comma)}if(t&&this.type===_.comma){s.push(null)}else if(r&&this.afterTrailingComma(e)){break}else if(this.type===_.ellipsis){var o=this.parseRestBinding();this.parseBindingListItem(o);s.push(o);if(this.type===_.comma){this.raise(this.start,"Comma is not permitted after the rest element")}this.expect(e);break}else{var u=this.parseMaybeDefault(this.start,this.startLoc);this.parseBindingListItem(u);s.push(u)}}return s};se.parseBindingListItem=function(e){return e};se.parseMaybeDefault=function(e,t,r){r=r||this.parseBindingAtom();if(this.options.ecmaVersion<6||!this.eat(_.eq)){return r}var s=this.startNodeAt(e,t);s.left=r;s.right=this.parseMaybeAssign();return this.finishNode(s,"AssignmentPattern")};se.checkLValSimple=function(e,t,r){if(t===void 0)t=U;var s=t!==U;switch(e.type){case"Identifier":if(this.strict&&this.reservedWordsStrictBind.test(e.name)){this.raiseRecoverable(e.start,(s?"Binding ":"Assigning to ")+e.name+" in strict mode")}if(s){if(t===H&&e.name==="let"){this.raiseRecoverable(e.start,"let is disallowed as a lexically bound name")}if(r){if(has(r,e.name)){this.raiseRecoverable(e.start,"Argument name clash")}r[e.name]=true}if(t!==z){this.declareName(e.name,t,e.start)}}break;case"ChainExpression":this.raiseRecoverable(e.start,"Optional chaining cannot appear in left-hand side");break;case"MemberExpression":if(s){this.raiseRecoverable(e.start,"Binding member expression")}break;case"ParenthesizedExpression":if(s){this.raiseRecoverable(e.start,"Binding parenthesized expression")}return this.checkLValSimple(e.expression,t,r);default:this.raise(e.start,(s?"Binding":"Assigning to")+" rvalue")}};se.checkLValPattern=function(e,t,r){if(t===void 0)t=U;switch(e.type){case"ObjectPattern":for(var s=0,a=e.properties;s<a.length;s+=1){var o=a[s];this.checkLValInnerPattern(o,t,r)}break;case"ArrayPattern":for(var u=0,c=e.elements;u<c.length;u+=1){var p=c[u];if(p){this.checkLValInnerPattern(p,t,r)}}break;default:this.checkLValSimple(e,t,r)}};se.checkLValInnerPattern=function(e,t,r){if(t===void 0)t=U;switch(e.type){case"Property":this.checkLValInnerPattern(e.value,t,r);break;case"AssignmentPattern":this.checkLValPattern(e.left,t,r);break;case"RestElement":this.checkLValPattern(e.argument,t,r);break;default:this.checkLValPattern(e,t,r)}};var ae=K.prototype;ae.checkPropClash=function(e,t,r){if(this.options.ecmaVersion>=9&&e.type==="SpreadElement"){return}if(this.options.ecmaVersion>=6&&(e.computed||e.method||e.shorthand)){return}var s=e.key;var a;switch(s.type){case"Identifier":a=s.name;break;case"Literal":a=String(s.value);break;default:return}var o=e.kind;if(this.options.ecmaVersion>=6){if(a==="__proto__"&&o==="init"){if(t.proto){if(r){if(r.doubleProto<0){r.doubleProto=s.start}}else{this.raiseRecoverable(s.start,"Redefinition of __proto__ property")}}t.proto=true}return}a="$"+