From 71a1ca8907d07ed2017732d7a7c6df4072221b53 Mon Sep 17 00:00:00 2001 From: Christopher Chedeau Date: Thu, 23 Feb 2017 09:55:03 -0800 Subject: [PATCH] Update docs to 0.19.0 --- docs/prettier.min.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/prettier.min.js b/docs/prettier.min.js index 5996ac689..f353b91fb 100644 --- a/docs/prettier.min.js +++ b/docs/prettier.min.js @@ -1,4 +1,4 @@ -var prettier=function(){function Se(XP,WP){return WP={exports:{}},XP(WP,WP.exports),WP.exports}function Te(){throw new Error("setTimeout has not been defined")}function Pe(){throw new Error("clearTimeout has not been defined")}function _e(XP){if(Vu===setTimeout)return setTimeout(XP,0);if((Vu===Te||!Vu)&&setTimeout)return Vu=setTimeout,setTimeout(XP,0);try{return Vu(XP,0)}catch(WP){try{return Vu.call(null,XP,0)}catch(JP){return Vu.call(this,XP,0)}}}function Ne(XP){if(Uu===clearTimeout)return clearTimeout(XP);if((Uu===Pe||!Uu)&&clearTimeout)return Uu=clearTimeout,clearTimeout(XP);try{return Uu(XP)}catch(WP){try{return Uu.call(null,XP)}catch(JP){return Uu.call(this,XP)}}}function Le(){Wu&&Ju&&(Wu=!1,Ju.length?Xu=Ju.concat(Xu):Zu=-1,Xu.length&&Re())}function Re(){if(!Wu){var XP=_e(Le);Wu=!0;for(var WP=Xu.length;WP;){for(Ju=Xu,Xu=[];++Zu>16,$P[T_++]=255&KP>>8,$P[T_++]=255&KP;return 2===QP?(KP=Pf[XP.charCodeAt(WP)]<<2|Pf[XP.charCodeAt(WP+1)]>>4,$P[T_++]=255&KP):1==QP&&(KP=Pf[XP.charCodeAt(WP)]<<10|Pf[XP.charCodeAt(WP+1)]<<4|Pf[XP.charCodeAt(WP+2)]>>2,$P[T_++]=255&KP>>8,$P[T_++]=255&KP),$P}function Je(XP){return Tf[63&XP>>18]+Tf[63&XP>>12]+Tf[63&XP>>6]+Tf[63&XP]}function Ze(XP,WP,JP){var ZP,KP=[];for(var QP=WP;QPT_?T_:S_+$P));return 1==ZP?(WP=XP[JP-1],KP+=Tf[WP>>2],KP+=Tf[63&WP<<4],KP+="=="):2==ZP&&(WP=(XP[JP-2]<<8)+XP[JP-1],KP+=Tf[WP>>10],KP+=Tf[63&WP>>4],KP+=Tf[63&WP<<2],KP+="="),QP.push(KP),QP.join("")}function Qe(XP,WP,JP,ZP,KP){var QP,$P,S_=8*KP-ZP-1,T_=(1<>1,__=-7,N_=JP?KP-1:0,I_=JP?-1:1,L_=XP[WP+N_];for(N_+=I_,QP=L_&(1<<-__)-1,L_>>=-__,__+=S_;0<__;QP=256*QP+XP[WP+N_],N_+=I_,__-=8);for($P=QP&(1<<-__)-1,QP>>=-__,__+=ZP;0<__;$P=256*$P+XP[WP+N_],N_+=I_,__-=8);if(0===QP)QP=1-P_;else{if(QP===T_)return $P?NaN:(L_?-1:1)*Infinity;$P+=Math.pow(2,ZP),QP-=P_}return(L_?-1:1)*$P*Math.pow(2,QP-ZP)}function $e(XP,WP,JP,ZP,KP,QP){var $P,S_,T_,P_=8*QP-KP-1,__=(1<>1,I_=23===KP?Math.pow(2,-24)-Math.pow(2,-77):0,L_=ZP?0:QP-1,R_=ZP?1:-1,O_=0>WP||0===WP&&0>1/WP?1:0;for(WP=Math.abs(WP),isNaN(WP)||WP===Infinity?(S_=isNaN(WP)?1:0,$P=__):($P=Math.floor(Math.log(WP)/Math.LN2),1>WP*(T_=Math.pow(2,-$P))&&($P--,T_*=2),WP+=1<=$P+N_?I_/T_:I_*Math.pow(2,1-N_),2<=WP*T_&&($P++,T_/=2),$P+N_>=__?(S_=0,$P=__):1<=$P+N_?(S_=(WP*T_-1)*Math.pow(2,KP),$P+=N_):(S_=WP*Math.pow(2,N_-1)*Math.pow(2,KP),$P=0));8<=KP;XP[JP+L_]=255&S_,L_+=R_,S_/=256,KP-=8);for($P=$P<XP)throw new RangeError("\"size\" argument must not be negative")}function It(XP,WP,JP,ZP){return Nt(WP),0>=WP?Tt(XP,WP):void 0===JP?Tt(XP,WP):"string"==typeof ZP?Tt(XP,WP).fill(JP,ZP):Tt(XP,WP).fill(JP)}function Lt(XP,WP){if(Nt(WP),XP=Tt(XP,0>WP?0:0|Vt(WP)),!Pt.TYPED_ARRAY_SUPPORT)for(var JP=0;JPWP.length?0:0|Vt(WP.length);XP=Tt(XP,JP);for(var ZP=0;ZPJP||WP.byteLength=St())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+St().toString(16)+" bytes");return 0|XP}function Ut(XP){return!!(null!=XP&&XP._isBuffer)}function Xt(XP,WP){if(Ut(XP))return XP.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(XP)||XP instanceof ArrayBuffer))return XP.byteLength;"string"!=typeof XP&&(XP=""+XP);var JP=XP.length;if(0===JP)return 0;for(var ZP=!1;;)switch(WP){case"ascii":case"latin1":case"binary":return JP;case"utf8":case"utf-8":case void 0:return Pn(XP).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*JP;case"hex":return JP>>>1;case"base64":return Ln(XP).length;default:if(ZP)return Pn(XP).length;WP=(""+WP).toLowerCase(),ZP=!0;}}function Wt(XP,WP,JP){var ZP=!1;if((void 0===WP||0>WP)&&(WP=0),WP>this.length)return"";if((void 0===JP||JP>this.length)&&(JP=this.length),0>=JP)return"";if(JP>>>=0,WP>>>=0,JP<=WP)return"";for(XP||(XP="utf8");!0;)switch(XP){case"hex":return Ya(this,WP,JP);case"utf8":case"utf-8":return La(this,WP,JP);case"ascii":return Oa(this,WP,JP);case"latin1":case"binary":return Ma(this,WP,JP);case"base64":return Na(this,WP,JP);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return Va(this,WP,JP);default:if(ZP)throw new TypeError("Unknown encoding: "+XP);XP=(XP+"").toLowerCase(),ZP=!0;}}function Jt(XP,WP,JP){var ZP=XP[WP];XP[WP]=XP[JP],XP[JP]=ZP}function Zt(XP,WP,JP,ZP,KP){if(0===XP.length)return-1;if("string"==typeof JP?(ZP=JP,JP=0):2147483647JP&&(JP=-2147483648),JP=+JP,isNaN(JP)&&(JP=KP?0:XP.length-1),0>JP&&(JP=XP.length+JP),JP>=XP.length){if(KP)return-1;JP=XP.length-1}else if(0>JP)if(KP)JP=0;else return-1;if("string"==typeof WP&&(WP=Pt.from(WP,ZP)),Ut(WP))return 0===WP.length?-1:Kt(XP,WP,JP,ZP,KP);if("number"==typeof WP)return WP&=255,Pt.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?KP?Uint8Array.prototype.indexOf.call(XP,WP,JP):Uint8Array.prototype.lastIndexOf.call(XP,WP,JP):Kt(XP,[WP],JP,ZP,KP);throw new TypeError("val must be string, number or Buffer")}function Kt(XP,WP,JP,ZP,KP){function QP(L_,R_){return 1===$P?L_[R_]:L_.readUInt16BE(R_*$P)}var $P=1,S_=XP.length,T_=WP.length;if(void 0!==ZP&&(ZP=(ZP+"").toLowerCase(),"ucs2"===ZP||"ucs-2"===ZP||"utf16le"===ZP||"utf-16le"===ZP)){if(2>XP.length||2>WP.length)return-1;$P=2,S_/=2,T_/=2,JP/=2}var P_;if(KP){var __=-1;for(P_=JP;P_S_&&(JP=S_-T_),P_=JP;0<=P_;P_--){var N_=!0;for(var I_=0;I_KP&&(ZP=KP)):ZP=KP;var QP=WP.length;if(0!=QP%2)throw new TypeError("Invalid hex string");ZP>QP/2&&(ZP=QP/2);for(var $P=0;$PQP&&($P=QP):2==S_?(T_=XP[KP+1],128==(192&T_)&&(N_=(31&QP)<<6|63&T_,127N_||57343N_&&($P=N_))):void 0}null===$P?($P=65533,S_=1):65535<$P&&($P-=65536,ZP.push(55296|1023&$P>>>10),$P=56320|1023&$P),ZP.push($P),KP+=S_}return Ra(ZP)}function Ra(XP){var WP=XP.length;if(WP<=Of)return String.fromCharCode.apply(String,XP);for(var JP="",ZP=0;ZPWP)&&(WP=0),(!JP||0>JP||JP>ZP)&&(JP=ZP);var KP="";for(var QP=WP;QPXP)throw new RangeError("offset is not uint");if(XP+WP>JP)throw new RangeError("Trying to access beyond buffer length")}function Xa(XP,WP,JP,ZP,KP,QP){if(!Ut(XP))throw new TypeError("\"buffer\" argument must be a Buffer instance");if(WP>KP||WPXP.length)throw new RangeError("Index out of range")}function Wa(XP,WP,JP,ZP){0>WP&&(WP=65535+WP+1);for(var KP=0,QP=Math.min(XP.length-JP,2);KP>>8*(ZP?KP:1-KP)}function Ja(XP,WP,JP,ZP){0>WP&&(WP=4294967295+WP+1);for(var KP=0,QP=Math.min(XP.length-JP,4);KP>>8*(ZP?KP:3-KP)}function Za(XP,WP,JP,ZP){if(JP+ZP>XP.length)throw new RangeError("Index out of range");if(0>JP)throw new RangeError("Index out of range")}function Ka(XP,WP,JP,ZP,KP){return KP||Za(XP,WP,JP,4,3.4028234663852886e38,-3.4028234663852886e38),$e(XP,WP,JP,ZP,23,4),JP+4}function Qa(XP,WP,JP,ZP,KP){return KP||Za(XP,WP,JP,8,1.7976931348623157e308,-1.7976931348623157e308),$e(XP,WP,JP,ZP,52,8),JP+8}function $a(XP){if(XP=Sn(XP).replace(Mf,""),2>XP.length)return"";for(;0!=XP.length%4;)XP+="=";return XP}function Sn(XP){return XP.trim?XP.trim():XP.replace(/^\s+|\s+$/g,"")}function Tn(XP){return 16>XP?"0"+XP.toString(16):XP.toString(16)}function Pn(XP,WP){WP=WP||Infinity;var JP,ZP=XP.length,KP=null,QP=[];for(var $P=0;$PJP){if(!KP){if(56319JP){-1<(WP-=3)&&QP.push(239,191,189),KP=JP;continue}JP=(KP-55296<<10|JP-56320)+65536}else KP&&-1<(WP-=3)&&QP.push(239,191,189);if(KP=null,128>JP){if(0>(WP-=1))break;QP.push(JP)}else if(2048>JP){if(0>(WP-=2))break;QP.push(192|JP>>6,128|63&JP)}else if(65536>JP){if(0>(WP-=3))break;QP.push(224|JP>>12,128|63&JP>>6,128|63&JP)}else if(1114112>JP){if(0>(WP-=4))break;QP.push(240|JP>>18,128|63&JP>>12,128|63&JP>>6,128|63&JP)}else throw new Error("Invalid code point")}return QP}function _n(XP){var WP=[];for(var JP=0;JP(WP-=2));++$P)JP=XP.charCodeAt($P),ZP=JP>>8,KP=JP%256,QP.push(KP),QP.push(ZP);return QP}function Ln(XP){return We($a(XP))}function Rn(XP,WP,JP,ZP){for(var KP=0;KP=WP.length||KP>=XP.length);++KP)WP[KP+JP]=XP[KP];return KP}function On(XP){return XP!==XP}function Mn(XP){return null!=XP&&(!!XP._isBuffer||Yn(XP)||Vn(XP))}function Yn(XP){return!!XP.constructor&&"function"==typeof XP.constructor.isBuffer&&XP.constructor.isBuffer(XP)}function Vn(XP){return"function"==typeof XP.readFloatLE&&"function"==typeof XP.slice&&Yn(XP.slice(0,0))}function Un(XP,WP){var JP={seen:[],stylize:Wn};return 3<=arguments.length&&(JP.depth=arguments[2]),4<=arguments.length&&(JP.colors=arguments[3]),_r(WP)?JP.showHidden=WP:WP&&Zr(JP,WP),Or(JP.showHidden)&&(JP.showHidden=!1),Or(JP.depth)&&(JP.depth=2),Or(JP.colors)&&(JP.colors=!1),Or(JP.customInspect)&&(JP.customInspect=!0),JP.colors&&(JP.stylize=Xn),Zn(JP,XP,JP.depth)}function Xn(XP,WP){var JP=Un.styles[WP];return JP?"\x1B["+Un.colors[JP][0]+"m"+XP+"\x1B["+Un.colors[JP][1]+"m":XP}function Wn(XP){return XP}function Jn(XP){var WP={};return XP.forEach(function(JP){WP[JP]=!0}),WP}function Zn(XP,WP,JP){if(XP.customInspect&&WP&&Xr(WP.inspect)&&WP.inspect!==Un&&!(WP.constructor&&WP.constructor.prototype===WP)){var ZP=WP.inspect(JP,XP);return Rr(ZP)||(ZP=Zn(XP,ZP,JP)),ZP}var KP=Kn(XP,WP);if(KP)return KP;var QP=Object.keys(WP),$P=Jn(QP);if(XP.showHidden&&(QP=Object.getOwnPropertyNames(WP)),Ur(WP)&&(0<=QP.indexOf("message")||0<=QP.indexOf("description")))return Qn(WP);if(0===QP.length){if(Xr(WP)){var S_=WP.name?": "+WP.name:"";return XP.stylize("[Function"+S_+"]","special")}if(Mr(WP))return XP.stylize(RegExp.prototype.toString.call(WP),"regexp");if(Vr(WP))return XP.stylize(Date.prototype.toString.call(WP),"date");if(Ur(WP))return Qn(WP)}var T_="",P_=!1,__=["{","}"];if(Pr(WP)&&(P_=!0,__=["[","]"]),Xr(WP)){var N_=WP.name?": "+WP.name:"";T_=" [Function"+N_+"]"}if(Mr(WP)&&(T_=" "+RegExp.prototype.toString.call(WP)),Vr(WP)&&(T_=" "+Date.prototype.toUTCString.call(WP)),Ur(WP)&&(T_=" "+Qn(WP)),0===QP.length&&(!P_||0==WP.length))return __[0]+T_+__[1];if(0>JP)return Mr(WP)?XP.stylize(RegExp.prototype.toString.call(WP),"regexp"):XP.stylize("[Object]","special");XP.seen.push(WP);var I_;return I_=P_?$n(XP,WP,JP,$P,QP):QP.map(function(L_){return Sr(XP,WP,JP,$P,L_,P_)}),XP.seen.pop(),Tr(I_,T_,__)}function Kn(XP,WP){if(Or(WP))return XP.stylize("undefined","undefined");if(Rr(WP)){var JP="'"+JSON.stringify(WP).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,"\"")+"'";return XP.stylize(JP,"string")}return Lr(WP)?XP.stylize(""+WP,"number"):_r(WP)?XP.stylize(""+WP,"boolean"):Nr(WP)?XP.stylize("null","null"):void 0}function Qn(XP){return"["+Error.prototype.toString.call(XP)+"]"}function $n(XP,WP,JP,ZP,KP){var QP=[];for(var $P=0,S_=WP.length;$PXP.seen.indexOf(T_.value)?(S_=Nr(JP)?Zn(XP,T_.value,null):Zn(XP,T_.value,JP-1),-1Yi(JP,WP))}):"if-break"===XP.type?Object.assign({},XP,{breakContents:XP.breakContents&&Yi(XP.breakContents,WP),flatContents:XP.flatContents&&Yi(XP.flatContents,WP)}):XP.contents?Object.assign({},XP,{contents:Yi(XP.contents,WP)}):XP}function Vi(XP,WP,JP){var ZP=JP;return Mi(XP,function(KP){var QP=WP(KP);if(void 0!==QP)return ZP=QP,!1}),ZP}function Ui(XP){if(0_o(WP)-_o(XP)&&Lo(XP,_o(WP)),0>No(XP)-No(WP)&&Ro(XP,No(WP))}function Ki(XP){if(XP)switch(XP.type){case"ExportDeclaration":case"ExportDefaultDeclaration":case"ExportDefaultSpecifier":case"DeclareExportDeclaration":case"ExportNamedDeclaration":case"ExportAllDeclaration":return!0;}return!1}function Qi(XP){return(WP,JP,ZP)=>{const KP=ZP&&ZP.backwards;if(!1===JP)return!1;const QP=WP.length;let $P=JP;for(;0<=$P&&$P=Mg(JP[ZP])-Og(XP));--ZP);return void JP.splice(ZP+1,0,XP)}}else if(XP[Rg])return XP[Rg];var KP;if(Zy.check(XP))KP=Object.keys(XP);else if(Ky.check(XP))KP=Wy.getFieldNames(XP);else return;JP||Object.defineProperty(XP,Rg,{value:JP=[],enumerable:!1});for(var ZP=0,QP=KP.length;ZP>1,P_=ZP[T_];if(0>=Og(P_)-Og(WP)&&0>=Mg(WP)-Mg(P_))return WP.enclosingNode=P_,void Mo(P_,WP,JP);if(0>=Mg(P_)-Og(WP)){KP=P_,$P=T_+1;continue}if(0>=Mg(WP)-Og(P_)){QP=P_,S_=T_;continue}throw new Error("Comment location overlaps with node location")}KP&&(WP.precedingNode=KP),QP&&(WP.followingNode=QP)}function Yo(XP,WP){var JP=XP.length;if(0!==JP){var ZP=XP[0].precedingNode,KP=XP[0].followingNode,QP=Og(KP);for(var $P=JP;0<$P;--$P){var S_=XP[$P-1];Xy.strictEqual(S_.precedingNode,ZP),Xy.strictEqual(S_.followingNode,KP);var T_=WP.slice(Mg(S_),QP);if(/\S/.test(T_))break;QP=Og(S_)}XP.forEach(function(P_,__){__<$P?Wo(ZP,P_):Uo(KP,P_)}),XP.length=0}}function Vo(XP,WP){var JP=XP.comments||(XP.comments=[]);JP.push(WP),WP.printed=!1}function Uo(XP,WP){WP.leading=!0,WP.trailing=!1,Vo(XP,WP)}function Xo(XP,WP){WP.leading=!1,WP.trailing=!1,Vo(XP,WP)}function Wo(XP,WP){WP.leading=!1,WP.trailing=!0,Vo(XP,WP)}function Jo(XP,WP){const JP=XP.body.filter(ZP=>"EmptyStatement"!==ZP.type);0===JP.length?Xo(XP,WP):Uo(JP[0],WP)}function Zo(XP,WP){"BlockStatement"===XP.type?Jo(XP,WP):Uo(XP,WP)}function Ko(XP,WP,JP){return XP&&"IfStatement"===XP.type&&WP&&("BlockStatement"===WP.type?(Jo(WP,JP),!0):!("IfStatement"!==WP.type)&&(Zo(WP.consequent,JP),!0))}function Qo(XP,WP,JP){return XP&&"TryStatement"===XP.type&&WP&&("BlockStatement"===WP.type?(Jo(WP,JP),!0):"TryStatement"===WP.type?(Zo(WP.finalizer,JP),!0):!("CatchClause"!==WP.type)&&(Zo(WP.body,JP),!0))}function $o(XP,WP,JP){return XP&&"MemberExpression"===XP.type&&WP&&"Identifier"===WP.type&&(Uo(XP,JP),!0)}function Sl(XP,WP,JP,ZP,KP){const QP=WP&&!Lg.hasNewlineInRange(KP,Mg(WP),Og(ZP));return(!WP||!QP)&&XP&&"ConditionalExpression"===XP.type&&JP&&(Uo(JP,ZP),!0)}function Tl(XP,WP,JP){return XP&&("ObjectProperty"===XP.type||"Property"===XP.type)&&XP.shorthand&&XP.key===WP&&"AssignmentPattern"===XP.value.type&&(Wo(XP.value.left,JP),!0)}function Pl(XP,WP){if(XP&&"TemplateLiteral"===XP.type){const JP=Nl(XP.expressions,WP);return WP.type="CommentBlock",Uo(XP.expressions[JP],WP),!0}return!1}function _l(XP){const WP=XP.getValue();switch(WP.printed=!0,WP.type){case"CommentBlock":case"Block":return"/*"+WP.value+"*/";case"CommentLine":case"Line":return"//"+WP.value;default:throw new Error("Not a comment: "+JSON.stringify(WP));}}function Nl(XP,WP){let JP;const ZP=Og(WP)-1,KP=Mg(WP)+1;for(let QP=0;QP=$P.start&&ZP<=$P.end||KP>=$P.start&&KP<=$P.end){JP=QP;break}}return JP}function Ll(XP){return void 0===XP.start?{start:XP.range[0],end:XP.range[1]}:{start:XP.start,end:XP.end}}function Rl(XP,WP,JP){const ZP=XP.getValue(),KP=_l(XP);JP.originalText;const QP="Block"===ZP.type||"CommentBlock"===ZP.type;return QP?$y([KP,Lg.hasNewline(JP.originalText,Mg(ZP))?Sg:" "]):$y([KP,Sg])}function Ol(XP,WP,JP){const ZP=XP.getValue(),KP=_l(XP),QP="Block"===ZP.type||"CommentBlock"===ZP.type;if(Lg.hasNewline(JP.originalText,Og(ZP),{backwards:!0})){const $P=Lg.isPreviousLineEmpty(JP.originalText,ZP);return _g($y([Sg,$P?Sg:"",KP]))}return QP?$y([" ",KP]):$y([_g(" "+KP),QP?"":Tg])}function Ml(XP){Lb.ok(this instanceof Ml),this.stack=[XP]}function Yl(XP,WP){var JP=XP.stack;for(var ZP=JP.length-1;0<=ZP;ZP-=2){var KP=JP[ZP];if(Mb.Node.check(KP)&&0>--WP)return KP}return null}function Vl(XP){return Mb.BinaryExpression.check(XP)||Mb.LogicalExpression.check(XP)}function Ul(XP){return!!Mb.CallExpression.check(XP)||(Yb.check(XP)?XP.some(Ul):!!Mb.Node.check(XP)&&Rb.someField(XP,function(WP,JP){return Ul(JP)}))}function Xl(XP,WP){switch(WP=WP||"es5",XP.trailingComma){case"all":if("all"===WP)return!0;case"es5":if("es5"===WP)return!0;case"none":default:return!1;}}function Wl(XP,WP,JP){Xb.ok(XP instanceof Jb);var ZP=XP.getValue(),KP=[],QP=!1,$P=Jl(XP,WP,JP);if(!ZP||Jx($P))return $P;if(ZP.comments&&0");const _N=XP.call(JP,"body"),NN=$b([$b(KP)," ",_N]);return"ArrayExpression"===ZP.body.type||"ObjectExpression"===ZP.body.type||"JSXElement"===ZP.body.type||"BlockStatement"===ZP.body.type?Ix(NN):Ix(Rx([NN,$b([$b(KP),Lx(WP.tabWidth,$b([Tx,_N]))])]),{shouldBreak:Ux(_N)});case"MethodDefinition":return ZP.static&&KP.push("static "),KP.push(Ql(XP,WP,JP)),$b(KP);case"YieldExpression":return KP.push("yield"),ZP.delegate&&KP.push("*"),ZP.argument&&KP.push(" ",XP.call(JP,"argument")),$b(KP);case"AwaitExpression":return KP.push("await"),ZP.all&&KP.push("*"),ZP.argument&&KP.push(" ",XP.call(JP,"argument")),$b(KP);case"ModuleDeclaration":return KP.push("module",XP.call(JP,"id")),ZP.source?(Xb.ok(!ZP.body),KP.push("from",XP.call(JP,"source"))):KP.push(XP.call(JP,"body")),Sx(" ",KP);case"ImportSpecifier":return ZP.imported?(ZP.importKind&&KP.push(XP.call(JP,"importKind")," "),KP.push(XP.call(JP,"imported")),ZP.local&&ZP.local.name!==ZP.imported.name&&KP.push(" as ",XP.call(JP,"local"))):ZP.id&&(KP.push(XP.call(JP,"id")),ZP.name&&KP.push(" as ",XP.call(JP,"name"))),$b(KP);case"ExportSpecifier":return ZP.local?(KP.push(XP.call(JP,"local")),ZP.exported&&ZP.exported.name!==ZP.local.name&&KP.push(" as ",XP.call(JP,"exported"))):ZP.id&&(KP.push(XP.call(JP,"id")),ZP.name&&KP.push(" as ",XP.call(JP,"name"))),$b(KP);case"ExportBatchSpecifier":return"*";case"ImportNamespaceSpecifier":return KP.push("* as "),ZP.local?KP.push(XP.call(JP,"local")):ZP.id&&KP.push(XP.call(JP,"id")),$b(KP);case"ImportDefaultSpecifier":return ZP.local?XP.call(JP,"local"):XP.call(JP,"id");case"ExportDeclaration":case"ExportDefaultDeclaration":case"ExportNamedDeclaration":return Rp(XP,WP,JP);case"ExportAllDeclaration":return KP.push("export *"),ZP.exported&&KP.push(" as ",XP.call(JP,"exported")),KP.push(" from ",XP.call(JP,"source"),";"),$b(KP);case"ExportNamespaceSpecifier":return $b(["* as ",XP.call(JP,"exported")]);case"ExportDefaultSpecifier":return XP.call(JP,"exported");case"ImportDeclaration":KP.push("import ");const IN=[];ZP.importKind&&"value"!==ZP.importKind&&KP.push(ZP.importKind+" ");var QP=[],$P=[];return ZP.specifiers&&0XN.leading)?KP.push($b([" (",Lx(WP.tabWidth,$b([_x,XP.call(JP,"argument")])),Tx,")"])):ZP.argument&&KP.push(" ",XP.call(JP,"argument")),KP.push(";"),$b(KP);case"CallExpression":return XP.getParentNode(),"MemberExpression"===ZP.callee.type?Xp(XP,WP,JP):$b([XP.call(JP,"callee"),$l(XP,WP,JP)]);case"ObjectExpression":case"ObjectPattern":case"ObjectTypeAnnotation":var P_="ObjectTypeAnnotation"===ZP.type,__=P_?",":",",N_=[],I_=ZP.exact?"{|":"{",L_=ZP.exact?"|}":"}",T_=XP.getParentNode(0),R_="UnionTypeAnnotation"===T_.type;P_&&N_.push("indexers","callProperties"),N_.push("properties");var O_=[];let LN=[];N_.forEach(function(XN){XP.each(function(WN){O_.push($b(LN)),O_.push(Ix(JP(WN))),LN=[__,Tx],Zb.isNextLineEmpty(WP.originalText,WN.getValue())&&LN.push(Px)},XN)});const RN=Zb.getLast(ZP.properties),ON=!(RN&&"RestProperty"===RN.type),MN=Zb.hasNewlineInRange(WP.originalText,Zb.locStart(ZP),Zb.locEnd(ZP));return 0===O_.length?Ix($b(["{",Wb.printDanglingComments(XP,WP),_x,"}"])):Ix($b([I_,Lx(WP.tabWidth+(R_?2:0),$b([WP.bracketSpacing?Tx:_x,$b(O_)])),Ox(ON&&Xl(WP)?",":""),Lx(R_?2:0,$b([WP.bracketSpacing?Tx:_x,L_])),XP.call(JP,"typeAnnotation")]),{shouldBreak:MN});case"PropertyPattern":return $b([XP.call(JP,"key"),": ",XP.call(JP,"pattern")]);case"ObjectProperty":case"Property":return ZP.method||"get"===ZP.kind||"set"===ZP.kind?Ql(XP,WP,JP):(ZP.shorthand?KP.push(XP.call(JP,"value")):(ZP.computed?KP.push("[",XP.call(JP,"key"),"]"):KP.push(Kl(XP,WP,JP)),KP.push($b([": ",XP.call(JP,"value")]))),$b(KP));case"ClassMethod":return ZP.static&&KP.push("static "),KP=KP.concat(Np(XP,WP,JP)),$b(KP);case"ObjectMethod":return Np(XP,WP,JP);case"Decorator":return $b(["@",XP.call(JP,"expression")]);case"ArrayExpression":case"ArrayPattern":if(0===ZP.elements.length)KP.push(Ix($b(["[",Wb.printDanglingComments(XP,WP),_x,"]"])));else{const XN=Zb.getLast(ZP.elements),WN=!(XN&&"RestElement"===XN.type),JN=WN&&null===XN;var M_=[];let ZN=[];XP.each(function(KN){M_.push($b(ZN)),M_.push(Ix(JP(KN))),ZN=[",",Tx],KN.getValue()&&Zb.isNextLineEmpty(WP.originalText,KN.getValue())&&ZN.push(_x)},"elements"),KP.push(Ix($b(["[",Lx(WP.tabWidth,$b([_x,$b(M_)])),JN?",":"",Ox(WN&&!JN&&Xl(WP)?",":""),Wb.printDanglingComments(XP,WP,!0),_x,"]"])))}return ZP.typeAnnotation&&KP.push(XP.call(JP,"typeAnnotation")),$b(KP);case"SequenceExpression":return Sx(", ",XP.map(JP,"expressions"));case"ThisExpression":return"this";case"Super":return"super";case"NullLiteral":return"null";case"RegExpLiteral":return ZP.extra.raw;case"NumericLiteral":return Rd(ZP.extra.raw);case"BooleanLiteral":case"StringLiteral":case"Literal":return"number"==typeof ZP.value?Rd(ZP.raw):"string"==typeof ZP.value?Nd(ZP,WP):""+ZP.value;case"Directive":return XP.call(JP,"value");case"DirectiveLiteral":return Nd(ZP,WP);case"ModuleSpecifier":if(ZP.local)throw new Error("The ESTree ModuleSpecifier type should be abstract");return Nd(ZP,WP);case"UnaryExpression":return KP.push(ZP.operator),/[a-z]$/.test(ZP.operator)&&KP.push(" "),KP.push(XP.call(JP,"argument")),$b(KP);case"UpdateExpression":return KP.push(XP.call(JP,"argument"),ZP.operator),ZP.prefix&&KP.reverse(),$b(KP);case"ConditionalExpression":return Ix($b([XP.call(JP,"test"),Lx(WP.tabWidth,$b([Tx,"? ",Lx(2,XP.call(JP,"consequent")),Tx,": ",Lx(2,XP.call(JP,"alternate"))]))]));case"NewExpression":KP.push("new ",XP.call(JP,"callee"));var Y_=ZP.arguments;return Y_&&KP.push($l(XP,WP,JP)),$b(KP);case"VariableDeclaration":var V_=XP.map(function(XN){return JP(XN)},"declarations");KP=[ZP.kind," ",V_[0],Lx(WP.tabWidth,$b(V_.slice(1).map(XN=>$b([",",Tx,XN]))))];var U_=XP.getParentNode(),X_=Kx.ForStatement.check(U_)||Kx.ForInStatement.check(U_)||Kx.ForOfStatement&&Kx.ForOfStatement.check(U_)||Kx.ForAwaitStatement&&Kx.ForAwaitStatement.check(U_);return X_&&U_.body!==ZP||KP.push(";"),Ix($b(KP));case"VariableDeclarator":return ZP.init?$b([XP.call(JP,"id")," = ",XP.call(JP,"init")]):XP.call(JP,"id");case"WithStatement":return $b(["with (",XP.call(JP,"object"),")",Td(XP.call(JP,"body"),WP)]);case"IfStatement":const YN=Td(XP.call(JP,"consequent"),WP);if(KP=["if (",Ix($b([Lx(WP.tabWidth,$b([_x,XP.call(JP,"test")])),_x])),")",YN],ZP.alternate){const XN=Pd(YN),WN=_d(YN);XN&&!WN?KP.push(" else"):KP.push(Rx([$b([Px,"else"])])),KP.push(Td(XP.call(JP,"alternate"),WP,"IfStatement"===ZP.alternate.type))}return Ix($b(KP));case"ForStatement":{const XN=Td(XP.call(JP,"body"),WP),WN=Wb.printDanglingComments(XP,WP,!0),JN=WN?$b([WN,_x]):"";return ZP.init||ZP.test||ZP.update?$b([JN,"for (",Ix($b([Lx(WP.tabWidth,$b([_x,XP.call(JP,"init"),";",Tx,XP.call(JP,"test"),";",Tx,XP.call(JP,"update")])),_x])),")",XN]):$b([JN,"for (;;)",XN])}case"WhileStatement":return $b(["while (",Ix($b([Lx(WP.tabWidth,$b([_x,XP.call(JP,"test")])),_x])),")",Td(XP.call(JP,"body"),WP)]);case"ForInStatement":return $b([ZP.each?"for each (":"for (",XP.call(JP,"left")," in ",XP.call(JP,"right"),")",Td(XP.call(JP,"body"),WP)]);case"ForOfStatement":return $b(["for (",XP.call(JP,"left")," of ",XP.call(JP,"right"),")",Td(XP.call(JP,"body"),WP)]);case"ForAwaitStatement":return $b(["for await (",XP.call(JP,"left")," of ",XP.call(JP,"right"),")",Td(XP.call(JP,"body"),WP)]);case"DoWhileStatement":var W_=Td(XP.call(JP,"body"),WP),J_=$b(["do",W_]),KP=[J_];const VN=Pd(W_);return VN?KP.push(" while"):KP.push($b([Tx,"while"])),KP.push(" (",XP.call(JP,"test"),");"),$b(KP);case"DoExpression":var Z_=XP.call(function(XN){return Zl(XN,WP,JP)},"body");return $b(["do {\n",Z_.indent(WP.tabWidth),"\n}"]);case"BreakStatement":return KP.push("break"),ZP.label&&KP.push(" ",XP.call(JP,"label")),KP.push(";"),$b(KP);case"ContinueStatement":return KP.push("continue"),ZP.label&&KP.push(" ",XP.call(JP,"label")),KP.push(";"),$b(KP);case"LabeledStatement":return"EmptyStatement"===ZP.body.type?$b([XP.call(JP,"label"),":;"]):$b([XP.call(JP,"label"),":",Px,XP.call(JP,"body")]);case"TryStatement":return KP.push("try ",XP.call(JP,"block")),ZP.handler?KP.push(" ",XP.call(JP,"handler")):ZP.handlers&&XP.each(function(XN){KP.push(" ",JP(XN))},"handlers"),ZP.finalizer&&KP.push(" finally ",XP.call(JP,"finalizer")),$b(KP);case"CatchClause":return KP.push("catch (",XP.call(JP,"param")),ZP.guard&&KP.push(" if ",XP.call(JP,"guard")),KP.push(") ",XP.call(JP,"body")),$b(KP);case"ThrowStatement":return $b(["throw ",XP.call(JP,"argument"),";"]);case"SwitchStatement":return $b(["switch (",XP.call(JP,"discriminant"),") {",0"EmptyStatement"!==XN.type)){const XN=XP.call(function(WN){return Zl(WN,WP,JP)},"consequent");KP.push(Pd(XN)?$b([" ",XN]):Lx(WP.tabWidth,$b([Px,XN])))}return $b(KP);case"DebuggerStatement":return"debugger;";case"JSXAttribute":if(KP.push(XP.call(JP,"name")),ZP.value){let XN;XN=("StringLiteral"===ZP.value.type||"Literal"===ZP.value.type)&&"string"==typeof ZP.value.value?"\""+Zb.htmlEscapeInsideDoubleQuote(ZP.value.value)+"\"":XP.call(JP,"value"),KP.push("=",XN)}return $b(KP);case"JSXIdentifier":return""+ZP.name;case"JSXNamespacedName":return Sx(":",[XP.call(JP,"namespace"),XP.call(JP,"name")]);case"JSXMemberExpression":return Sx(".",[XP.call(JP,"object"),XP.call(JP,"property")]);case"JSXSpreadAttribute":return $b(["{...",XP.call(JP,"argument"),"}"]);case"JSXExpressionContainer":{const XN=XP.getParentNode(0),WN="ArrayExpression"===ZP.expression.type||"ObjectExpression"===ZP.expression.type||"ArrowFunctionExpression"===ZP.expression.type||"CallExpression"===ZP.expression.type||"FunctionExpression"===ZP.expression.type||"JSXEmptyExpression"===ZP.expression.type||"JSXElement"===XN.type&&("ConditionalExpression"===ZP.expression.type||"LogicalExpression"===ZP.expression.type);return WN?Ix($b(["{",XP.call(JP,"expression"),Yx,"}"])):Ix($b(["{",Lx(WP.tabWidth,$b([_x,XP.call(JP,"expression")])),_x,Yx,"}"]))}case"JSXElement":{const XN=Zp(XP,WP,JP);return Kp(XP,XN,WP)}case"JSXOpeningElement":{const XN=XP.getValue();return 1===XN.attributes.length&&XN.attributes[0].value&&"Literal"===XN.attributes[0].value.type&&"string"==typeof XN.attributes[0].value.value?Ix($b(["<",XP.call(JP,"name")," ",$b(XP.map(JP,"attributes")),XN.selfClosing?" />":">"])):Ix($b(["<",XP.call(JP,"name"),$b([Lx(WP.tabWidth,$b(XP.map(WN=>$b([Tx,JP(WN)]),"attributes"))),XN.selfClosing?Tx:WP.jsxBracketSameLine?">":_x]),XN.selfClosing?"/>":WP.jsxBracketSameLine?"":">"]))}case"JSXClosingElement":return $b([""]);case"JSXText":throw new Error("JSXTest should be handled by JSXElement");case"JSXEmptyExpression":return $b([Wb.printDanglingComments(XP,WP,!0),_x]);case"TypeAnnotatedIdentifier":return $b([XP.call(JP,"annotation")," ",XP.call(JP,"identifier")]);case"ClassBody":return ZP.comments||0!==ZP.body.length?$b(["{",0{return"line"!==WN.type||WN.hard?WN:WN.soft?"":" "})}return KP.push("`"),XP.each(function(XN){var WN=XN.getName();KP.push(JP(XN)),WN ":": ",XP.call(JP,"returnType"),XP.call(JP,"predicate")),$b(KP);case"FunctionTypeParam":return $b([XP.call(JP,"name"),ZP.optional?"?":"",ZP.name?": ":"",XP.call(JP,"typeAnnotation")]);case"GenericTypeAnnotation":return $b([XP.call(JP,"id"),XP.call(JP,"typeParameters")]);case"DeclareInterface":case"InterfaceDeclaration":return("DeclareInterface"===ZP.type||Yd(ZP,WP))&&KP.push("declare "),KP.push("interface ",XP.call(JP,"id"),XP.call(JP,"typeParameters")," "),0"]);case"TypeParameter":switch(ZP.variance){case"plus":KP.push("+");break;case"minus":KP.push("-");break;default:}return KP.push(XP.call(JP,"name")),ZP.bound&&KP.push(XP.call(JP,"bound")),ZP["default"]&&KP.push("=",XP.call(JP,"default")),$b(KP);case"TypeofTypeAnnotation":return $b(["typeof ",XP.call(JP,"argument")]);case"VoidTypeAnnotation":return"void";case"NullTypeAnnotation":return"null";case"InferredPredicate":return"%checks";case"DeclaredPredicate":return $b(["%checks(",XP.call(JP,"value"),")"]);case"ClassHeritage":case"ComprehensionBlock":case"ComprehensionExpression":case"Glob":case"GeneratorExpression":case"LetStatement":case"LetExpression":case"GraphExpression":case"GraphIndexExpression":case"XMLDefaultDeclaration":case"XMLAnyName":case"XMLQualifiedIdentifier":case"XMLFunctionQualifiedIdentifier":case"XMLAttributeSelector":case"XMLFilterExpression":case"XML":case"XMLElement":case"XMLList":case"XMLEscape":case"XMLText":case"XMLStartTag":case"XMLEndTag":case"XMLPointTag":case"XMLName":case"XMLAttribute":case"XMLCdata":case"XMLComment":case"XMLProcessingInstruction":default:debugger;throw new Error("unknown type: "+JSON.stringify(ZP.type));}return p}function Zl(XP,WP,JP){let ZP=[];return XP.map(function(KP){var QP=KP.getValue();if(QP&&"EmptyStatement"!==QP.type){const $P=JP(KP),S_=WP.originalText,T_=[];T_.push($P),Zb.isNextLineEmpty(S_,QP)&&!Od(KP)&&T_.push(Px),ZP.push($b(T_))}}),Sx(Px,ZP)}function Kl(XP,WP,JP){const ZP=XP.getNode(),KP=ZP.key;return("StringLiteral"===KP.type||"Literal"===KP.type&&"string"==typeof KP.value)&&Kb(KP.value)&&!ZP.computed&&("flow"!==WP.parser||KP.value.match(/[a-zA-Z0-9$_]/))?KP.value:XP.call(JP,"key")}function Ql(XP,WP,JP){var ZP=XP.getNode(),KP=ZP.kind,QP=[];"ObjectMethod"===ZP.type||"ClassMethod"===ZP.type?ZP.value=ZP:Kx.FunctionExpression.assert(ZP.value),ZP.value.async&&QP.push("async "),KP&&"init"!==KP&&"method"!==KP&&"constructor"!==KP?(Xb.ok("get"===KP||"set"===KP),QP.push(KP," ")):ZP.value.generator&&QP.push("*");var $P=Kl(XP,WP,JP);return ZP.computed&&($P=$b(["[",$P,"]"])),QP.push($P,XP.call(JP,"value","typeParameters"),Ix($b([XP.call(function(S_){return _p(S_,JP,WP)},"value"),XP.call(S_=>Lp(S_,JP),"value")]))," ",XP.call(JP,"value","body")),$b(QP)}function $l(XP,WP,JP){var ZP=XP.map(JP,"arguments");if(0===ZP.length)return"()";const KP=Zb.getLast(XP.getValue().arguments),QP=(!KP.comments||!KP.comments.length)&&("ObjectExpression"===KP.type||"ArrayExpression"===KP.type||"FunctionExpression"===KP.type||"ArrowFunctionExpression"===KP.type&&("BlockStatement"===KP.body.type||"ArrowFunctionExpression"===KP.body.type||"ObjectExpression"===KP.body.type||"ArrayExpression"===KP.body.type||"CallExpression"===KP.body.type||"JSXElement"===KP.body.type));if(QP){const $P=ZP.slice(0,-1).some(Ux);return $b([ZP.some(Ux)?Mx:"",Rx([$b(["(",Sx($b([", "]),ZP),")"]),$b(["(",Sx($b([",",Tx]),ZP.slice(0,-1)),1$l(M_,WP,JP),WP)}),M_.call(V_=>ZP(V_),"callee")):"MemberExpression"===Y_.type?($P.unshift({node:Y_,printed:Wb.printComments(M_,()=>Up(M_,WP,JP),WP)}),M_.call(V_=>ZP(V_),"object")):$P.unshift({node:Y_,printed:M_.call(JP)})}function KP(M_){return $b(M_.map(Y_=>Y_.printed))}function QP(M_,Y_){return Lx(WP.tabWidth,Ix($b([Y_,Sx(Y_,M_.map(KP))])))}const $P=[];$P.unshift({node:XP.getValue(),printed:$l(XP,WP,JP)}),XP.call(M_=>ZP(M_),"callee");for(var S_=[],T_=[$P[0]],P_=1;P_<$P.length&&"CallExpression"===$P[P_].node.type;++P_)T_.push($P[P_]);for(;P_+1<$P.length&&"MemberExpression"===$P[P_].node.type&&"MemberExpression"===$P[P_+1].node.type;++P_)T_.push($P[P_]);S_.push(T_),T_=[];for(var __=!1;P_<$P.length;++P_){if(__&&"MemberExpression"===$P[P_].node.type){if($P[P_].node.computed){T_.push($P[P_]);continue}S_.push(T_),T_=[],__=!1}"CallExpression"===$P[P_].node.type&&(__=!0),T_.push($P[P_])}0=S_.length&&!R_)return Ix(L_);const O_=$b([KP(S_[0]),N_?QP(S_.slice(1,2),""):"",QP(S_.slice(N_?2:1),Px)]);return R_?Ix(O_):I_.slice(0,-1).some(Ux)?Ix(O_):Rx([L_,O_])}function Wp(XP){if(0===XP.children.length)return!0;if(1{const L_=I_.match(/\n/g);if(L_)return QP.push(Px),void(1{if(R_===QP){if(0===O_)return void __.unshift(R_);if(O_===$P.length-1)return void __.push(R_)}let M_=$P[O_-1];M_&&Ux(M_)?(S_=!0,__.push([R_])):Zb.getLast(__).push(R_),!S_&&O_===$P.length-1&&Ux(R_)&&(S_=!0)});const N_=[Px,$b(__.map(R_=>Array.isArray(R_)?Rx([$b(R_)]):R_))],I_=XP.call(JP,"closingElement"),L_=Ix($b([KP,Lx(WP.tabWidth,Ix($b(N_),{shouldBreak:!0})),Px,I_]));return S_?L_:Rx([Ix($b([KP,$b($P),I_])),L_])}function Kp(XP,WP,JP){const ZP=XP.getParentNode();return ZP?{JSXElement:!0,ExpressionStatement:!0,CallExpression:!0,ConditionalExpression:!0,LogicalExpression:!0}[ZP.type]?WP:Ix($b([Ox("("),Lx(JP.tabWidth,$b([_x,WP])),_x,Ox(")")])):WP}function Qp(XP){return"BinaryExpression"===XP.type||"LogicalExpression"===XP.type}function $p(XP){return"LogicalExpression"===XP.type&&("ObjectExpression"===XP.right.type||"ArrayExpression"===XP.right.type)}function Sd(XP,WP,JP,ZP,KP){let QP=XP.getValue();if(Qp(QP)){Zb.getPrecedence(QP.left.operator)===Zb.getPrecedence(QP.operator)?XP.call(P_=>Sd(P_,WP,JP,ZP,!0),"left"):WP.push(XP.call(JP,"left"));const $P=$b([QP.operator,$p(QP)?" ":Tx,XP.call(JP,"right")]),S_=XP.getParentNode(),T_="BinaryExpression"===QP.type&&"BinaryExpression"!==S_.type&&"BinaryExpression"!==QP.left.type&&"BinaryExpression"!==QP.right.type;WP.push(" ",T_?Ix($P):$P),KP&&QP.comments&&WP.push(Wb.printComments(XP,()=>"",ZP))}else WP.push(XP.call(JP));return WP}function Td(XP,WP,JP){return""===XP?";":Pd(XP)||JP?$b([" ",XP]):Lx(WP.tabWidth,$b([Tx,XP]))}function Pd(XP){const WP=Wx(XP);return"{"===WP||"{}"===WP}function _d(XP){const WP=Wx(XP);return"{}"===WP}function Nd(XP,WP){const JP=XP.value;if(Qx.assert(JP),"flow"===WP.parser&&-1!==JP.indexOf("\uFFFD"))return XP.raw;const ZP=XP.extra?XP.extra.raw:XP.raw,KP=ZP.slice(1,-1),QP={quote:"\"",regex:/"/g},$P={quote:"'",regex:/'/g},S_=WP.singleQuote?$P:QP,T_=S_===$P?QP:$P;let P_=!1;if(KP.includes(S_.quote)){const N_=(KP.match(S_.regex)||[]).length,I_=(KP.match(T_.regex)||[]).length;P_=N_>I_}const __=P_?T_.quote:S_.quote;return Ld(KP,__)}function Ld(XP,WP){const JP="\""===WP?"'":"\"",ZP=/\\([\s\S])|(['"])/g,KP=XP.replace(ZP,(QP,$P,S_)=>{return $P===JP?$P:S_===WP?"\\"+S_:QP});return WP+KP+WP}function Rd(XP){return XP.toLowerCase().replace(/^([\d.]+e)(?:\+|(-))?0*/,"$1$2").replace(/^\./,"0.").replace(/\.(?=e|$)/,"")}function Od(XP){const WP=XP.getParentNode(),JP=XP.getValue(),ZP=WP.body;return ZP&&ZP[ZP.length-1]===JP}function Md(XP){return"ObjectTypeProperty"===XP.type&&"FunctionTypeAnnotation"===XP.value.type&&!XP.static&&Zb.locStart(XP.key)!==Zb.locStart(XP.value)}function Yd(XP,WP){return!("flow"!==WP.parser)&&WP.originalText.slice(0,Zb.locStart(XP)).match(/declare\s*$/)}function Vd(XP,WP,JP){let ZP=WP.length;for(const KP=[XP];0<=JP;){if(0===KP.length){if(0===ZP)return!0;KP.push(WP[ZP-1]),ZP--;continue}const $P=KP.pop(),S_=$P[0],T_=$P[1],P_=$P[2];if("string"==typeof P_)JP-=P_.length;else switch(P_.type){case"concat":for(var QP=P_.parts.length-1;0<=QP;QP--)KP.push([S_,T_,P_.parts[QP]]);break;case"indent":KP.push([S_+P_.n,T_,P_.contents]);break;case"group":KP.push([S_,P_.break?$x:T_,P_.contents]);break;case"if-break":T_===$x&&P_.breakContents&&KP.push([S_,T_,P_.breakContents]),T_===SS&&P_.flatContents&&KP.push([S_,T_,P_.flatContents]);break;case"line":switch(T_){case SS:if(!P_.hard){P_.soft||(JP-=1);break}case $x:return!0;}}}return!1}function Ud(){var XP={};for(var WP=NS.length,JP=0;JP1/XP?"-0":""+XP:"NaN"}function Sc(XP,WP){return WP?""===XP.name?"[Function anonymous]":"[Function "+XP.name+"]":"[Function]"}function Tc(XP){return WS.call(XP).replace(JS,"Symbol($1)")}function Pc(XP){return"["+US.call(XP)+"]"}function _c(XP,WP,JP){if(!0===XP||!1===XP)return""+XP;if(void 0===XP)return"undefined";if(null===XP)return"null";const ZP=typeof XP;if("number"==ZP)return $d(XP);if("string"==ZP)return"\""+XP.replace(/"|\\/g,"\\$&")+"\"";if("function"==ZP)return Sc(XP,WP);if("symbol"==ZP)return Tc(XP);const KP=YS.call(XP);return"[object WeakMap]"===KP?"WeakMap {}":"[object WeakSet]"===KP?"WeakSet {}":"[object Function]"===KP||"[object GeneratorFunction]"===KP?Sc(XP,WP):"[object Symbol]"===KP?Tc(XP):"[object Date]"===KP?VS.call(XP):"[object Error]"===KP?Pc(XP):"[object RegExp]"===KP?JP?XS.call(XP).replace(/[\\^$*+?.()|[\]{}]/g,"\\$&"):XS.call(XP):"[object Arguments]"===KP&&0===XP.length?"Arguments []":Qd(KP)&&0===XP.length?XP.constructor.name+" []":!!(XP instanceof Error)&&Pc(XP)}function Nc(XP,WP,JP,ZP,KP,QP,$P,S_,T_,P_,__,N_,I_,L_){let R_="";if(XP.length){R_+=KP;const O_=JP+WP;for(let M_=0;M_ "+U_,M_=O_.next(),M_.done||(R_+=","+ZP)}R_+=(P_?"":",")+KP+JP}return R_+"}"}function Mc(XP,WP,JP,ZP,KP,QP,$P,S_,T_,P_,__,N_,I_,L_){const R_=P_?"":XP.constructor?XP.constructor.name+" ":"Object ";let O_=R_+"{",M_=Object.keys(XP).sort();const Y_=KS(XP);if(Y_.length&&(M_=M_.filter(V_=>"symbol"!=typeof V_&&"[object Symbol]"!==YS.call(V_)).concat(Y_)),M_.length){O_+=KP;const V_=JP+WP;for(let U_=0;U_$P;if(__&&!R_&&XP.toJSON&&"function"==typeof XP.toJSON)return Xc(XP.toJSON(),WP,JP,ZP,KP,QP,$P,S_,T_,P_,__,N_,I_,L_);const O_=YS.call(XP);return"[object Arguments]"===O_?R_?"[Arguments]":Lc(XP,WP,JP,ZP,KP,QP,$P,S_,T_,P_,__,N_,I_,L_):Qd(O_)?R_?"[Array]":Rc(XP,WP,JP,ZP,KP,QP,$P,S_,T_,P_,__,N_,I_,L_):"[object Map]"===O_?R_?"[Map]":Oc(XP,WP,JP,ZP,KP,QP,$P,S_,T_,P_,__,N_,I_,L_):"[object Set]"===O_?R_?"[Set]":Yc(XP,WP,JP,ZP,KP,QP,$P,S_,T_,P_,__,N_,I_,L_):R_?"[Object]":Mc(XP,WP,JP,ZP,KP,QP,$P,S_,T_,P_,__,N_,I_,L_)}function Uc(XP,WP,JP,ZP,KP,QP,$P,S_,T_,P_,__,N_,I_,L_){let R_=!1,O_;for(let M_=0;M_{if(!QS.hasOwnProperty(WP))throw new Error("prettyFormat: Invalid option: "+WP)}),XP.min&&void 0!==XP.indent&&0!==XP.indent)throw new Error("prettyFormat: Cannot run with min option and indent")}function Jc(XP){const WP={};return Object.keys(QS).forEach(JP=>WP[JP]=XP.hasOwnProperty(JP)?XP[JP]:QS[JP]),WP.min&&(WP.indent=0),WP}function Zc(XP){return Array(XP+1).join(" ")}function Kc(XP){if("concat"===XP.type){var WP=[];for(var JP=0;JP{if(!WP.printed)throw new Error("Comment \""+WP.value.trim()+"\" was not printed. Please report this error!");delete WP.printed})}function _u(XP,WP){const JP=Su(XP,WP),ZP=Tu(XP,JP,WP),KP=OP(JP,WP),QP=MP(KP,WP.printWidth,$c(XP));return Pu(ZP),QP}function Nu(XP,WP){if(!XP.startsWith("#!"))return _u(XP,WP);const JP=XP.indexOf("\n"),ZP=XP.slice(0,JP+1),KP=XP.slice(JP+1),QP=XP.charAt(JP+1),$P="\n"===QP?"\n":"\r"===QP?"\r\n":"";return ZP+$P+_u(KP,WP)}var Iu=Se(function(XP,WP){Object.defineProperty(WP,"__esModule",{value:!0}),WP.default=/((['"])(?:(?!\2|\\).|\\(?:\r\n|[\s\S]))*(\2)?|`(?:[^`\\$]|\\[\s\S]|\$(?!\{)|\$\{(?:[^{}]|\{[^}]*\}?)*\}?)*(`)?)|(\/\/.*)|(\/\*(?:[^*]|\*(?!\/))*(\*\/)?)|(\/(?!\*)(?:\[(?:(?![\]\\]).|\\.)*\]|(?![\/\]\\]).|\\.)+\/(?:(?!\s*(?:\b|[\u0080-\uFFFF$\\'"~({]|[+\-!](?!=)|\.?\d))|[gmiyu]{1,5}\b(?![\u0080-\uFFFF$\\]|\s*(?:[+\-*%&|^<>!=?({]|\/(?![\/*])))))|(0[xX][\da-fA-F]+|0[oO][0-7]+|0[bB][01]+|(?:\d*\.\d+|\d+\.?)(?:[eE][+-]?\d+)?)|((?!\d)(?:(?!\s)[$\w\u0080-\uFFFF]|\\u[\da-fA-F]{4}|\\u\{[\da-fA-F]{1,6}\})+)|(--|\+\+|&&|\|\||=>|\.{3}|(?:[+\-\/%&|^]|\*{1,2}|<{1,2}|>{1,3}|!=?|={1,2})=?|[?~.,:;[\](){}])|(\s+)|(^$|[\s\S])/g,WP.matchToToken=function(JP){var ZP={type:"invalid",value:JP[0]};return JP[1]?(ZP.type="string",ZP.closed=!!(JP[3]||JP[4])):JP[5]?ZP.type="comment":JP[6]?(ZP.type="comment",ZP.closed=!!JP[7]):JP[8]?ZP.type="regex":JP[9]?ZP.type="number":JP[10]?ZP.type="name":JP[11]?ZP.type="punctuator":JP[12]&&(ZP.type="whitespace"),ZP}}),Lu=Se(function(XP){(function(){"use strict";function WP(ZP){if(null==ZP)return!1;switch(ZP.type){case"BlockStatement":case"BreakStatement":case"ContinueStatement":case"DebuggerStatement":case"DoWhileStatement":case"EmptyStatement":case"ExpressionStatement":case"ForInStatement":case"ForStatement":case"IfStatement":case"LabeledStatement":case"ReturnStatement":case"SwitchStatement":case"ThrowStatement":case"TryStatement":case"VariableDeclaration":case"WhileStatement":case"WithStatement":return!0;}return!1}function JP(ZP){switch(ZP.type){case"IfStatement":return null==ZP.alternate?ZP.consequent:ZP.alternate;case"LabeledStatement":case"ForStatement":case"ForInStatement":case"WhileStatement":case"WithStatement":return ZP.body;}return null}XP.exports={isExpression:function(KP){if(null==KP)return!1;switch(KP.type){case"ArrayExpression":case"AssignmentExpression":case"BinaryExpression":case"CallExpression":case"ConditionalExpression":case"FunctionExpression":case"Identifier":case"Literal":case"LogicalExpression":case"MemberExpression":case"NewExpression":case"ObjectExpression":case"SequenceExpression":case"ThisExpression":case"UnaryExpression":case"UpdateExpression":return!0;}return!1},isStatement:WP,isIterationStatement:function(KP){if(null==KP)return!1;switch(KP.type){case"DoWhileStatement":case"ForInStatement":case"ForStatement":case"WhileStatement":return!0;}return!1},isSourceElement:function(KP){return WP(KP)||null!=KP&&"FunctionDeclaration"===KP.type},isProblematicIfStatement:function(KP){var QP;if("IfStatement"!==KP.type)return!1;if(null==KP.alternate)return!1;QP=KP.consequent;do{if("IfStatement"===QP.type&&null==QP.alternate)return!0;QP=JP(QP)}while(QP);return!1},trailingStatement:JP}})()}),Ru=Se(function(XP){(function(){"use strict";function WP(T_){if(65535>=T_)return String.fromCharCode(T_);var P_=String.fromCharCode(Math.floor((T_-65536)/1024)+55296),__=String.fromCharCode((T_-65536)%1024+56320);return P_+__}var JP,ZP,KP,QP,$P,S_;for(ZP={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-\u08B2\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\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\u0C59\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\u0D60\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-\u13F4\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\u19C1-\u19C7\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\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA78E\uA790-\uA7AD\uA7B0\uA7B1\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\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-\uAB5F\uAB64\uAB65\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]/,NonAsciiIdentifierPart:/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u08A0-\u08B2\u08E4-\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\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\u0C59\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\u0D60-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1380-\u138F\u13A0-\u13F4\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19D9\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\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\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u2E2F\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099\u309A\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA69D\uA69F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA78E\uA790-\uA7AD\uA7B0\uA7B1\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C4\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\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-\uAB5F\uAB64\uAB65\uABC0-\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-\uFE2D\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]/},JP={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-\u08B2\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\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\u0C59\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\u0D60\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-\u13F4\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\u19C1-\u19C7\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-\u9FCC\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA78E\uA790-\uA7AD\uA7B0\uA7B1\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\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-\uAB5F\uAB64\uAB65\uABC0-\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\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]|\uD804[\uDC03-\uDC37\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDE00-\uDE11\uDE13-\uDE2B\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF5D-\uDF61]|\uD805[\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDE00-\uDE2F\uDE44\uDE80-\uDEAA]|\uD806[\uDCA0-\uDCDF\uDCFF\uDEC0-\uDEF8]|\uD808[\uDC00-\uDF98]|\uD809[\uDC00-\uDC6E]|[\uD80C\uD840-\uD868\uD86A-\uD86C][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\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]|\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-\u08B2\u08E4-\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\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\u0C59\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\u0D60-\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-\u13F4\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-\u9FCC\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA69D\uA69F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA78E\uA790-\uA7AD\uA7B0\uA7B1\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C4\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\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-\uAB5F\uAB64\uAB65\uABC0-\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-\uFE2D\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\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]|\uD804[\uDC00-\uDC46\uDC66-\uDC6F\uDC7F-\uDCBA\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD00-\uDD34\uDD36-\uDD3F\uDD50-\uDD73\uDD76\uDD80-\uDDC4\uDDD0-\uDDDA\uDE00-\uDE11\uDE13-\uDE37\uDEB0-\uDEEA\uDEF0-\uDEF9\uDF01-\uDF03\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3C-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF57\uDF5D-\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC80-\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDB5\uDDB8-\uDDC0\uDE00-\uDE40\uDE44\uDE50-\uDE59\uDE80-\uDEB7\uDEC0-\uDEC9]|\uD806[\uDCA0-\uDCE9\uDCFF\uDEC0-\uDEF8]|\uD808[\uDC00-\uDF98]|\uD809[\uDC00-\uDC6E]|[\uD80C\uD840-\uD868\uD86A-\uD86C][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\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]|\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]|\uD87E[\uDC00-\uDE1D]|\uDB40[\uDD00-\uDDEF]/},KP=[5760,6158,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8239,8287,12288,65279],QP=Array(128),S_=0;128>S_;++S_)QP[S_]=97<=S_&&122>=S_||65<=S_&&90>=S_||36===S_||95===S_;for($P=Array(128),S_=0;128>S_;++S_)$P[S_]=97<=S_&&122>=S_||65<=S_&&90>=S_||48<=S_&&57>=S_||36===S_||95===S_;XP.exports={isDecimalDigit:function(P_){return 48<=P_&&57>=P_},isHexDigit:function(P_){return 48<=P_&&57>=P_||97<=P_&&102>=P_||65<=P_&&70>=P_},isOctalDigit:function(P_){return 48<=P_&&55>=P_},isWhiteSpace:function(P_){return 32===P_||9===P_||11===P_||12===P_||160===P_||5760<=P_&&0<=KP.indexOf(P_)},isLineTerminator:function(P_){return 10===P_||13===P_||8232===P_||8233===P_},isIdentifierStartES5:function(P_){return 128>P_?QP[P_]:ZP.NonAsciiIdentifierStart.test(WP(P_))},isIdentifierPartES5:function(P_){return 128>P_?$P[P_]:ZP.NonAsciiIdentifierPart.test(WP(P_))},isIdentifierStartES6:function(P_){return 128>P_?QP[P_]:JP.NonAsciiIdentifierStart.test(WP(P_))},isIdentifierPartES6:function(P_){return 128>P_?$P[P_]:JP.NonAsciiIdentifierPart.test(WP(P_))}}})()}),Ou=Se(function(XP){(function(){"use strict";function WP(__){return"implements"===__||"interface"===__||"package"===__||"private"===__||"protected"===__||"public"===__||"static"===__||"let"===__}function JP(__,N_){return(N_||"yield"!==__)&&ZP(__,N_)}function ZP(__,N_){if(N_&&WP(__))return!0;switch(__.length){case 2:return"if"===__||"in"===__||"do"===__;case 3:return"var"===__||"for"===__||"new"===__||"try"===__;case 4:return"this"===__||"else"===__||"case"===__||"void"===__||"with"===__||"enum"===__;case 5:return"while"===__||"break"===__||"catch"===__||"throw"===__||"const"===__||"yield"===__||"class"===__||"super"===__;case 6:return"return"===__||"typeof"===__||"delete"===__||"switch"===__||"export"===__||"import"===__;case 7:return"default"===__||"finally"===__||"extends"===__;case 8:return"function"===__||"continue"===__||"debugger"===__;case 10:return"instanceof"===__;default:return!1;}}function KP(__,N_){return"null"===__||"true"===__||"false"===__||JP(__,N_)}function QP(__,N_){return"null"===__||"true"===__||"false"===__||ZP(__,N_)}function $P(__){var N_,I_,L_;if(0===__.length)return!1;if(L_=__.charCodeAt(0),!P_.isIdentifierStartES5(L_))return!1;for(N_=1,I_=__.length;N_=L_){if(++N_,N_>=I_)return!1;if(R_=__.charCodeAt(N_),!(56320<=R_&&57343>=R_))return!1;L_=S_(L_,R_)}if(!O_(L_))return!1;O_=P_.isIdentifierPartES6}return!0}var P_=Ru;XP.exports={isKeywordES5:JP,isKeywordES6:ZP,isReservedWordES5:KP,isReservedWordES6:QP,isRestrictedWord:function(N_){return"eval"===N_||"arguments"===N_},isIdentifierNameES5:$P,isIdentifierNameES6:T_,isIdentifierES5:function(N_,I_){return $P(N_)&&!KP(N_,I_)},isIdentifierES6:function(N_,I_){return T_(N_)&&!QP(N_,I_)}}})()}),Mu=Se(function(XP,WP){(function(){"use strict";WP.ast=Lu,WP.code=Ru,WP.keyword=Ou})()}),Yu="undefined"==typeof global?"undefined"==typeof self?"undefined"==typeof window?{}:window:self:global,Vu=Te,Uu=Pe;"function"==typeof Yu.setTimeout&&(Vu=setTimeout),"function"==typeof Yu.clearTimeout&&(Uu=clearTimeout);var Xu=[],Wu=!1,Ju,Zu=-1;Oe.prototype.run=function(){this.fun.apply(null,this.array)};var Ku=Yu.performance||{},Qu=Ku.now||Ku.mozNow||Ku.msNow||Ku.oNow||Ku.webkitNow||function(){return new Date().getTime()},$u=new Date,Sm={nextTick:function(WP){var JP=Array(arguments.length-1);if(1KP&&(ZP--,KP+=1e9)),[ZP,KP]},platform:"browser",release:{},config:{},uptime:function(){var WP=new Date;return(WP-$u)/1e3}},Tm=/[|\\{}()[\]^$+*?.]/g,Pm=Se(function(XP){"use strict";Object.defineProperty(XP,"exports",{enumerable:!0,get:function(){var JP={modifiers:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},colors:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],gray:[90,39]},bgColors:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49]}};return JP.colors.grey=JP.colors.gray,Object.keys(JP).forEach(function(ZP){var KP=JP[ZP];Object.keys(KP).forEach(function(QP){var $P=KP[QP];JP[QP]=KP[QP]={open:"\x1B["+$P[0]+"m",close:"\x1B["+$P[1]+"m"}}),Object.defineProperty(JP,ZP,{value:KP,enumerable:!1})}),JP}})}),_m=function(){return /[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/g},Nm=_m(),Lm=new RegExp(_m().source),Rm=Lm.test.bind(Lm),Om=Sm.argv,Mm=Om.indexOf("--"),Ym=function(XP){XP="--"+XP;var WP=Om.indexOf(XP);return-1!==WP&&(!(-1!==Mm)||WP"),U_(X_.gutter,IN),TN,LN].join("")}return" "+U_(X_.gutter,IN)+TN}).join("\n");return Y_?V_.reset(SN):SN};var $P=Iu,S_=JP($P),T_=JP(Mu),P_=JP($m),__=/\r\n|[\n\r\u2028\u2029]/,N_=/^[a-z][\w-]*$/i,I_=/^[()\[\]{}]$/;XP.exports=WP["default"]}),Tf=[],Pf=[],_f="undefined"==typeof Uint8Array?Array:Uint8Array,Nf=!1,Lf={}.toString,Rf=Array.isArray||function(XP){return"[object Array]"==Lf.call(XP)};Pt.TYPED_ARRAY_SUPPORT=!(Yu.TYPED_ARRAY_SUPPORT!==void 0)||Yu.TYPED_ARRAY_SUPPORT,Pt.poolSize=8192,Pt._augment=function(XP){return XP.__proto__=Pt.prototype,XP},Pt.from=function(XP,WP,JP){return _t(null,XP,WP,JP)},Pt.TYPED_ARRAY_SUPPORT&&(Pt.prototype.__proto__=Uint8Array.prototype,Pt.__proto__=Uint8Array,"undefined"!=typeof Symbol&&Symbol.species&&Pt[Symbol.species]===Pt),Pt.alloc=function(XP,WP,JP){return It(null,XP,WP,JP)},Pt.allocUnsafe=function(XP){return Lt(null,XP)},Pt.allocUnsafeSlow=function(XP){return Lt(null,XP)},Pt.isBuffer=Mn,Pt.compare=function(WP,JP){if(!Ut(WP)||!Ut(JP))throw new TypeError("Arguments must be Buffers");if(WP===JP)return 0;var ZP=WP.length,KP=JP.length;for(var QP=0,$P=Math.min(ZP,KP);QP<$P;++QP)if(WP[QP]!==JP[QP]){ZP=WP[QP],KP=JP[QP];break}return ZPJP&&(WP+=" ... ")),""},Pt.prototype.compare=function(WP,JP,ZP,KP,QP){if(!Ut(WP))throw new TypeError("Argument must be a Buffer");if(void 0===JP&&(JP=0),void 0===ZP&&(ZP=WP?WP.length:0),void 0===KP&&(KP=0),void 0===QP&&(QP=this.length),0>JP||ZP>WP.length||0>KP||QP>this.length)throw new RangeError("out of range index");if(KP>=QP&&JP>=ZP)return 0;if(KP>=QP)return-1;if(JP>=ZP)return 1;if(JP>>>=0,ZP>>>=0,KP>>>=0,QP>>>=0,this===WP)return 0;var $P=QP-KP,S_=ZP-JP,T_=Math.min($P,S_),P_=this.slice(KP,QP),__=WP.slice(JP,ZP);for(var N_=0;N_QP)&&(ZP=QP),0ZP||0>JP)||JP>this.length)throw new RangeError("Attempt to write outside buffer bounds");KP||(KP="utf8");for(var $P=!1;;)switch(KP){case"hex":return Qt(this,WP,JP,ZP);case"utf8":case"utf-8":return $t(this,WP,JP,ZP);case"ascii":return Sa(this,WP,JP,ZP);case"latin1":case"binary":return Ta(this,WP,JP,ZP);case"base64":return Pa(this,WP,JP,ZP);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return _a(this,WP,JP,ZP);default:if($P)throw new TypeError("Unknown encoding: "+KP);KP=(""+KP).toLowerCase(),$P=!0;}},Pt.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var Of=4096;Pt.prototype.slice=function(WP,JP){var ZP=this.length;WP=~~WP,JP=JP===void 0?ZP:~~JP,0>WP?(WP+=ZP,0>WP&&(WP=0)):WP>ZP&&(WP=ZP),0>JP?(JP+=ZP,0>JP&&(JP=0)):JP>ZP&&(JP=ZP),JP=QP&&(KP-=Math.pow(2,8*JP)),KP},Pt.prototype.readIntBE=function(WP,JP,ZP){WP|=0,JP|=0,ZP||Ua(WP,JP,this.length);for(var KP=JP,QP=1,$P=this[WP+--KP];0=QP&&($P-=Math.pow(2,8*JP)),$P},Pt.prototype.readInt8=function(WP,JP){return JP||Ua(WP,1,this.length),128&this[WP]?-1*(255-this[WP]+1):this[WP]},Pt.prototype.readInt16LE=function(WP,JP){JP||Ua(WP,2,this.length);var ZP=this[WP]|this[WP+1]<<8;return 32768&ZP?4294901760|ZP:ZP},Pt.prototype.readInt16BE=function(WP,JP){JP||Ua(WP,2,this.length);var ZP=this[WP+1]|this[WP]<<8;return 32768&ZP?4294901760|ZP:ZP},Pt.prototype.readInt32LE=function(WP,JP){return JP||Ua(WP,4,this.length),this[WP]|this[WP+1]<<8|this[WP+2]<<16|this[WP+3]<<24},Pt.prototype.readInt32BE=function(WP,JP){return JP||Ua(WP,4,this.length),this[WP]<<24|this[WP+1]<<16|this[WP+2]<<8|this[WP+3]},Pt.prototype.readFloatLE=function(WP,JP){return JP||Ua(WP,4,this.length),Qe(this,WP,!0,23,4)},Pt.prototype.readFloatBE=function(WP,JP){return JP||Ua(WP,4,this.length),Qe(this,WP,!1,23,4)},Pt.prototype.readDoubleLE=function(WP,JP){return JP||Ua(WP,8,this.length),Qe(this,WP,!0,52,8)},Pt.prototype.readDoubleBE=function(WP,JP){return JP||Ua(WP,8,this.length),Qe(this,WP,!1,52,8)},Pt.prototype.writeUIntLE=function(WP,JP,ZP,KP){if(WP=+WP,JP|=0,ZP|=0,!KP){var QP=Math.pow(2,8*ZP)-1;Xa(this,WP,JP,ZP,QP,0)}var $P=1,S_=0;for(this[JP]=255&WP;++S_>>8):Wa(this,WP,JP,!0),JP+2},Pt.prototype.writeUInt16BE=function(WP,JP,ZP){return WP=+WP,JP|=0,ZP||Xa(this,WP,JP,2,65535,0),Pt.TYPED_ARRAY_SUPPORT?(this[JP]=WP>>>8,this[JP+1]=255&WP):Wa(this,WP,JP,!1),JP+2},Pt.prototype.writeUInt32LE=function(WP,JP,ZP){return WP=+WP,JP|=0,ZP||Xa(this,WP,JP,4,4294967295,0),Pt.TYPED_ARRAY_SUPPORT?(this[JP+3]=WP>>>24,this[JP+2]=WP>>>16,this[JP+1]=WP>>>8,this[JP]=255&WP):Ja(this,WP,JP,!0),JP+4},Pt.prototype.writeUInt32BE=function(WP,JP,ZP){return WP=+WP,JP|=0,ZP||Xa(this,WP,JP,4,4294967295,0),Pt.TYPED_ARRAY_SUPPORT?(this[JP]=WP>>>24,this[JP+1]=WP>>>16,this[JP+2]=WP>>>8,this[JP+3]=255&WP):Ja(this,WP,JP,!1),JP+4},Pt.prototype.writeIntLE=function(WP,JP,ZP,KP){if(WP=+WP,JP|=0,!KP){var QP=Math.pow(2,8*ZP-1);Xa(this,WP,JP,ZP,QP-1,-QP)}var $P=0,S_=1,T_=0;for(this[JP]=255&WP;++$PWP&&0==T_&&0!==this[JP+$P-1]&&(T_=1),this[JP+$P]=255&(WP/S_>>0)-T_;return JP+ZP},Pt.prototype.writeIntBE=function(WP,JP,ZP,KP){if(WP=+WP,JP|=0,!KP){var QP=Math.pow(2,8*ZP-1);Xa(this,WP,JP,ZP,QP-1,-QP)}var $P=ZP-1,S_=1,T_=0;for(this[JP+$P]=255&WP;0<=--$P&&(S_*=256);)0>WP&&0==T_&&0!==this[JP+$P+1]&&(T_=1),this[JP+$P]=255&(WP/S_>>0)-T_;return JP+ZP},Pt.prototype.writeInt8=function(WP,JP,ZP){return WP=+WP,JP|=0,ZP||Xa(this,WP,JP,1,127,-128),Pt.TYPED_ARRAY_SUPPORT||(WP=Math.floor(WP)),0>WP&&(WP=255+WP+1),this[JP]=255&WP,JP+1},Pt.prototype.writeInt16LE=function(WP,JP,ZP){return WP=+WP,JP|=0,ZP||Xa(this,WP,JP,2,32767,-32768),Pt.TYPED_ARRAY_SUPPORT?(this[JP]=255&WP,this[JP+1]=WP>>>8):Wa(this,WP,JP,!0),JP+2},Pt.prototype.writeInt16BE=function(WP,JP,ZP){return WP=+WP,JP|=0,ZP||Xa(this,WP,JP,2,32767,-32768),Pt.TYPED_ARRAY_SUPPORT?(this[JP]=WP>>>8,this[JP+1]=255&WP):Wa(this,WP,JP,!1),JP+2},Pt.prototype.writeInt32LE=function(WP,JP,ZP){return WP=+WP,JP|=0,ZP||Xa(this,WP,JP,4,2147483647,-2147483648),Pt.TYPED_ARRAY_SUPPORT?(this[JP]=255&WP,this[JP+1]=WP>>>8,this[JP+2]=WP>>>16,this[JP+3]=WP>>>24):Ja(this,WP,JP,!0),JP+4},Pt.prototype.writeInt32BE=function(WP,JP,ZP){return WP=+WP,JP|=0,ZP||Xa(this,WP,JP,4,2147483647,-2147483648),0>WP&&(WP=4294967295+WP+1),Pt.TYPED_ARRAY_SUPPORT?(this[JP]=WP>>>24,this[JP+1]=WP>>>16,this[JP+2]=WP>>>8,this[JP+3]=255&WP):Ja(this,WP,JP,!1),JP+4},Pt.prototype.writeFloatLE=function(WP,JP,ZP){return Ka(this,WP,JP,!0,ZP)},Pt.prototype.writeFloatBE=function(WP,JP,ZP){return Ka(this,WP,JP,!1,ZP)},Pt.prototype.writeDoubleLE=function(WP,JP,ZP){return Qa(this,WP,JP,!0,ZP)},Pt.prototype.writeDoubleBE=function(WP,JP,ZP){return Qa(this,WP,JP,!1,ZP)},Pt.prototype.copy=function(WP,JP,ZP,KP){if(ZP||(ZP=0),KP||0===KP||(KP=this.length),JP>=WP.length&&(JP=WP.length),JP||(JP=0),0JP)throw new RangeError("targetStart out of bounds");if(0>ZP||ZP>=this.length)throw new RangeError("sourceStart out of bounds");if(0>KP)throw new RangeError("sourceEnd out of bounds");KP>this.length&&(KP=this.length),WP.length-JPQP||!Pt.TYPED_ARRAY_SUPPORT)for($P=0;$PQP&&(WP=QP)}if(void 0!==KP&&"string"!=typeof KP)throw new TypeError("encoding must be a string");if("string"==typeof KP&&!Pt.isEncoding(KP))throw new TypeError("Unknown encoding: "+KP)}else"number"==typeof WP&&(WP&=255);if(0>JP||this.length>>=0,ZP=ZP===void 0?this.length:ZP>>>0,WP||(WP=0);var $P;if("number"==typeof WP)for($P=JP;$PIN.indexOf(RN)&&IN.push(RN)}),this},Object.defineProperty($_,"buildable",{value:!1});var SN={};L_.builders=SN;var TN={};L_.defineMethod=function(NN,IN){var LN=TN[NN];return Z_.check(IN)?delete TN[NN]:(U_.assert(IN),Object.defineProperty(TN,NN,{enumerable:!0,configurable:!0,value:IN})),LN};var PN=V_.arrayOf();$_.build=function(){var NN=this,IN=$f.call(arguments);return(PN.assert(IN),Object.defineProperty(NN,"buildParams",{value:IN,writable:!1,enumerable:!1,configurable:!0}),NN.buildable)?NN:(NN.field("type",String,function(){return NN.typeName}),Object.defineProperty(NN,"buildable",{value:!0}),Object.defineProperty(SN,$P(NN.typeName),{enumerable:!0,value:function(){function LN(YN,VN){if(!_h.call(MN,YN)){var UN=NN.allFields;if(!_h.call(UN,YN))throw new Error(""+YN);var XN=UN[YN],WN=XN.type,JN;if(J_.check(VN)&&VNO_)return KP;var M_=arguments.length;2===M_?(L_=0,R_=O_):3===M_?(L_=Math.max(L_,0),R_=O_):(L_=Math.max(L_,0),R_=Math.min(R_,O_)),P_.assert(L_),P_.assert(R_);var Y_=Object.create(null),V_=JP(N_);for(var U_=L_;U_J_)return!0;if(Y_===J_&&"right"===this.name){if(U_.right!==V_)throw new Error("Nodes must be equal");return!0}default:return!1;}case"SequenceExpression":switch(U_.type){case"ForStatement":return!1;case"ExpressionStatement":return"expression"!==this.name;default:return!0;}case"YieldExpression":switch(U_.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"===U_.type&&__.check(V_.value)&&"object"===this.name&&U_.object===V_;case"AssignmentExpression":case"ConditionalExpression":switch(U_.type){case"UnaryExpression":case"SpreadElement":case"SpreadProperty":case"BinaryExpression":case"LogicalExpression":return!0;case"CallExpression":return"callee"===this.name&&U_.callee===V_;case"ConditionalExpression":return"test"===this.name&&U_.test===V_;case"MemberExpression":return"object"===this.name&&U_.object===V_;default:return!1;}default:if("NewExpression"===U_.type&&"callee"===this.name&&U_.callee===V_)return ZP(V_);}return!0!==M_&&!this.canBeFirstInStatement()&&this.firstInStatement()};var O_={};return[["||"],["&&"],["|"],["^"],["&"],["==","===","!=","!=="],["<",">","<=",">=","in","instanceof"],[">>","<<",">>>"],["+","-"],["*","/","%"]].forEach(function(M_,Y_){M_.forEach(function(V_){O_[V_]=Y_})}),R_.canBeFirstInStatement=function(){var M_=this.node;return!T_.FunctionExpression.check(M_)&&!T_.ObjectExpression.check(M_)},R_.firstInStatement=function(){return KP(this)},WP},Uh=Object.prototype.hasOwnProperty,Xh=function(XP){function WP(){if(!(this instanceof WP))throw new Error("PathVisitor constructor cannot be invoked without 'new'");this._reusableContextStack=[],this._methodNameTable=JP(this),this._shouldVisitComments=Uh.call(this._methodNameTable,"Block")||Uh.call(this._methodNameTable,"Line"),this.Context=QP(this),this._visiting=!1,this._changeReported=!1}function JP(R_){var O_=Object.create(null);for(var M_ in R_)/^visit[A-Z]/.test(M_)&&(O_[M_.slice("visit".length)]=!0);var Y_=$P.computeSupertypeLookupTable(O_),V_=Object.create(null),O_=Object.keys(Y_),U_=O_.length;for(var X_=0;X_Y_.indexOf("comments")&&Y_.push("comments");var V_=Y_.length,U_=[];for(var X_=0;X_=S_},QP+" >= "+S_)},WP.defaults={"null":function(){return null},emptyArray:function(){return[]},"false":function(){return!1},"true":function(){return!0},undefined:function(){}};var $P=ZP.or(KP.string,KP.number,KP.boolean,KP.null,KP.undefined);return WP.isPrimitive=new ZP(function(S_){if(null===S_)return!0;var T_=typeof S_;return"object"!=T_&&"function"!=T_},$P.toString()),WP},Jh=function(XP){var WP=XP.use(Nh),JP=WP.Type,ZP=JP.def,KP=JP.or,QP=XP.use(Wh),$P=QP.defaults,S_=QP.geq;ZP("Printable").field("loc",KP(ZP("SourceLocation"),null),$P["null"],!0),ZP("Node").bases("Printable").field("type",String).field("comments",KP([ZP("Comment")],null),$P["null"],!0),ZP("SourceLocation").build("start","end","source").field("start",ZP("Position")).field("end",ZP("Position")).field("source",KP(String,null),$P["null"]),ZP("Position").build("line","column").field("line",S_(1)).field("column",S_(0)),ZP("File").bases("Node").build("program","name").field("program",ZP("Program")).field("name",KP(String,null),$P["null"]),ZP("Program").bases("Node").build("body").field("body",[ZP("Statement")]),ZP("Function").bases("Node").field("id",KP(ZP("Identifier"),null),$P["null"]).field("params",[ZP("Pattern")]).field("body",ZP("BlockStatement")),ZP("Statement").bases("Node"),ZP("EmptyStatement").bases("Statement").build(),ZP("BlockStatement").bases("Statement").build("body").field("body",[ZP("Statement")]),ZP("ExpressionStatement").bases("Statement").build("expression").field("expression",ZP("Expression")),ZP("IfStatement").bases("Statement").build("test","consequent","alternate").field("test",ZP("Expression")).field("consequent",ZP("Statement")).field("alternate",KP(ZP("Statement"),null),$P["null"]),ZP("LabeledStatement").bases("Statement").build("label","body").field("label",ZP("Identifier")).field("body",ZP("Statement")),ZP("BreakStatement").bases("Statement").build("label").field("label",KP(ZP("Identifier"),null),$P["null"]),ZP("ContinueStatement").bases("Statement").build("label").field("label",KP(ZP("Identifier"),null),$P["null"]),ZP("WithStatement").bases("Statement").build("object","body").field("object",ZP("Expression")).field("body",ZP("Statement")),ZP("SwitchStatement").bases("Statement").build("discriminant","cases","lexical").field("discriminant",ZP("Expression")).field("cases",[ZP("SwitchCase")]).field("lexical",Boolean,$P["false"]),ZP("ReturnStatement").bases("Statement").build("argument").field("argument",KP(ZP("Expression"),null)),ZP("ThrowStatement").bases("Statement").build("argument").field("argument",ZP("Expression")),ZP("TryStatement").bases("Statement").build("block","handler","finalizer").field("block",ZP("BlockStatement")).field("handler",KP(ZP("CatchClause"),null),function(){return this.handlers&&this.handlers[0]||null}).field("handlers",[ZP("CatchClause")],function(){return this.handler?[this.handler]:[]},!0).field("guardedHandlers",[ZP("CatchClause")],$P.emptyArray).field("finalizer",KP(ZP("BlockStatement"),null),$P["null"]),ZP("CatchClause").bases("Node").build("param","guard","body").field("param",ZP("Pattern")).field("guard",KP(ZP("Expression"),null),$P["null"]).field("body",ZP("BlockStatement")),ZP("WhileStatement").bases("Statement").build("test","body").field("test",ZP("Expression")).field("body",ZP("Statement")),ZP("DoWhileStatement").bases("Statement").build("body","test").field("body",ZP("Statement")).field("test",ZP("Expression")),ZP("ForStatement").bases("Statement").build("init","test","update","body").field("init",KP(ZP("VariableDeclaration"),ZP("Expression"),null)).field("test",KP(ZP("Expression"),null)).field("update",KP(ZP("Expression"),null)).field("body",ZP("Statement")),ZP("ForInStatement").bases("Statement").build("left","right","body").field("left",KP(ZP("VariableDeclaration"),ZP("Expression"))).field("right",ZP("Expression")).field("body",ZP("Statement")),ZP("DebuggerStatement").bases("Statement").build(),ZP("Declaration").bases("Statement"),ZP("FunctionDeclaration").bases("Function","Declaration").build("id","params","body").field("id",ZP("Identifier")),ZP("FunctionExpression").bases("Function","Expression").build("id","params","body"),ZP("VariableDeclaration").bases("Declaration").build("kind","declarations").field("kind",KP("var","let","const")).field("declarations",[ZP("VariableDeclarator")]),ZP("VariableDeclarator").bases("Node").build("id","init").field("id",ZP("Pattern")).field("init",KP(ZP("Expression"),null)),ZP("Expression").bases("Node","Pattern"),ZP("ThisExpression").bases("Expression").build(),ZP("ArrayExpression").bases("Expression").build("elements").field("elements",[KP(ZP("Expression"),null)]),ZP("ObjectExpression").bases("Expression").build("properties").field("properties",[ZP("Property")]),ZP("Property").bases("Node").build("kind","key","value").field("kind",KP("init","get","set")).field("key",KP(ZP("Literal"),ZP("Identifier"))).field("value",ZP("Expression")),ZP("SequenceExpression").bases("Expression").build("expressions").field("expressions",[ZP("Expression")]);var T_=KP("-","+","!","~","typeof","void","delete");ZP("UnaryExpression").bases("Expression").build("operator","argument","prefix").field("operator",T_).field("argument",ZP("Expression")).field("prefix",Boolean,$P["true"]);var P_=KP("==","!=","===","!==","<","<=",">",">=","<<",">>",">>>","+","-","*","/","%","&","|","^","in","instanceof","..");ZP("BinaryExpression").bases("Expression").build("operator","left","right").field("operator",P_).field("left",ZP("Expression")).field("right",ZP("Expression"));var __=KP("=","+=","-=","*=","/=","%=","<<=",">>=",">>>=","|=","^=","&=");ZP("AssignmentExpression").bases("Expression").build("operator","left","right").field("operator",__).field("left",ZP("Pattern")).field("right",ZP("Expression"));var N_=KP("++","--");ZP("UpdateExpression").bases("Expression").build("operator","argument","prefix").field("operator",N_).field("argument",ZP("Expression")).field("prefix",Boolean);var I_=KP("||","&&");ZP("LogicalExpression").bases("Expression").build("operator","left","right").field("operator",I_).field("left",ZP("Expression")).field("right",ZP("Expression")),ZP("ConditionalExpression").bases("Expression").build("test","consequent","alternate").field("test",ZP("Expression")).field("consequent",ZP("Expression")).field("alternate",ZP("Expression")),ZP("NewExpression").bases("Expression").build("callee","arguments").field("callee",ZP("Expression")).field("arguments",[ZP("Expression")]),ZP("CallExpression").bases("Expression").build("callee","arguments").field("callee",ZP("Expression")).field("arguments",[ZP("Expression")]),ZP("MemberExpression").bases("Expression").build("object","property","computed").field("object",ZP("Expression")).field("property",KP(ZP("Identifier"),ZP("Expression"))).field("computed",Boolean,function(){var L_=this.property.type;return"Literal"===L_||"MemberExpression"===L_||"BinaryExpression"===L_}),ZP("Pattern").bases("Node"),ZP("SwitchCase").bases("Node").build("test","consequent").field("test",KP(ZP("Expression"),null)).field("consequent",[ZP("Statement")]),ZP("Identifier").bases("Node","Expression","Pattern").build("name").field("name",String),ZP("Literal").bases("Node","Expression").build("value").field("value",KP(String,Boolean,null,Number,RegExp)).field("regex",KP({pattern:String,flags:String},null),function(){if(this.value instanceof RegExp){var L_="";return this.value.ignoreCase&&(L_+="i"),this.value.multiline&&(L_+="m"),this.value.global&&(L_+="g"),{pattern:this.value.source,flags:L_}}return null}),ZP("Comment").bases("Printable").field("value",String).field("leading",Boolean,$P["true"]).field("trailing",Boolean,$P["false"])},Zh=function(XP){XP.use(Jh);var WP=XP.use(Nh),JP=WP.Type.def,ZP=WP.Type.or,KP=XP.use(Wh).defaults;JP("Function").field("generator",Boolean,KP["false"]).field("expression",Boolean,KP["false"]).field("defaults",[ZP(JP("Expression"),null)],KP.emptyArray).field("rest",ZP(JP("Identifier"),null),KP["null"]),JP("RestElement").bases("Pattern").build("argument").field("argument",JP("Pattern")),JP("SpreadElementPattern").bases("Pattern").build("argument").field("argument",JP("Pattern")),JP("FunctionDeclaration").build("id","params","body","generator","expression"),JP("FunctionExpression").build("id","params","body","generator","expression"),JP("ArrowFunctionExpression").bases("Function","Expression").build("params","body","expression").field("id",null,KP["null"]).field("body",ZP(JP("BlockStatement"),JP("Expression"))).field("generator",!1,KP["false"]),JP("YieldExpression").bases("Expression").build("argument","delegate").field("argument",ZP(JP("Expression"),null)).field("delegate",Boolean,KP["false"]),JP("GeneratorExpression").bases("Expression").build("body","blocks","filter").field("body",JP("Expression")).field("blocks",[JP("ComprehensionBlock")]).field("filter",ZP(JP("Expression"),null)),JP("ComprehensionExpression").bases("Expression").build("body","blocks","filter").field("body",JP("Expression")).field("blocks",[JP("ComprehensionBlock")]).field("filter",ZP(JP("Expression"),null)),JP("ComprehensionBlock").bases("Node").build("left","right","each").field("left",JP("Pattern")).field("right",JP("Expression")).field("each",Boolean),JP("Property").field("key",ZP(JP("Literal"),JP("Identifier"),JP("Expression"))).field("value",ZP(JP("Expression"),JP("Pattern"))).field("method",Boolean,KP["false"]).field("shorthand",Boolean,KP["false"]).field("computed",Boolean,KP["false"]),JP("PropertyPattern").bases("Pattern").build("key","pattern").field("key",ZP(JP("Literal"),JP("Identifier"),JP("Expression"))).field("pattern",JP("Pattern")).field("computed",Boolean,KP["false"]),JP("ObjectPattern").bases("Pattern").build("properties").field("properties",[ZP(JP("PropertyPattern"),JP("Property"))]),JP("ArrayPattern").bases("Pattern").build("elements").field("elements",[ZP(JP("Pattern"),null)]),JP("MethodDefinition").bases("Declaration").build("kind","key","value","static").field("kind",ZP("constructor","method","get","set")).field("key",ZP(JP("Literal"),JP("Identifier"),JP("Expression"))).field("value",JP("Function")).field("computed",Boolean,KP["false"]).field("static",Boolean,KP["false"]),JP("SpreadElement").bases("Node").build("argument").field("argument",JP("Expression")),JP("ArrayExpression").field("elements",[ZP(JP("Expression"),JP("SpreadElement"),JP("RestElement"),null)]),JP("NewExpression").field("arguments",[ZP(JP("Expression"),JP("SpreadElement"))]),JP("CallExpression").field("arguments",[ZP(JP("Expression"),JP("SpreadElement"))]),JP("AssignmentPattern").bases("Pattern").build("left","right").field("left",JP("Pattern")).field("right",JP("Expression"));var QP=ZP(JP("MethodDefinition"),JP("VariableDeclarator"),JP("ClassPropertyDefinition"),JP("ClassProperty"));JP("ClassProperty").bases("Declaration").build("key").field("key",ZP(JP("Literal"),JP("Identifier"),JP("Expression"))).field("computed",Boolean,KP["false"]),JP("ClassPropertyDefinition").bases("Declaration").build("definition").field("definition",QP),JP("ClassBody").bases("Declaration").build("body").field("body",[QP]),JP("ClassDeclaration").bases("Declaration").build("id","body","superClass").field("id",ZP(JP("Identifier"),null)).field("body",JP("ClassBody")).field("superClass",ZP(JP("Expression"),null),KP["null"]),JP("ClassExpression").bases("Expression").build("id","body","superClass").field("id",ZP(JP("Identifier"),null),KP["null"]).field("body",JP("ClassBody")).field("superClass",ZP(JP("Expression"),null),KP["null"]).field("implements",[JP("ClassImplements")],KP.emptyArray),JP("ClassImplements").bases("Node").build("id").field("id",JP("Identifier")).field("superClass",ZP(JP("Expression"),null),KP["null"]),JP("Specifier").bases("Node"),JP("ModuleSpecifier").bases("Specifier").field("local",ZP(JP("Identifier"),null),KP["null"]).field("id",ZP(JP("Identifier"),null),KP["null"]).field("name",ZP(JP("Identifier"),null),KP["null"]),JP("TaggedTemplateExpression").bases("Expression").build("tag","quasi").field("tag",JP("Expression")).field("quasi",JP("TemplateLiteral")),JP("TemplateLiteral").bases("Expression").build("quasis","expressions").field("quasis",[JP("TemplateElement")]).field("expressions",[JP("Expression")]),JP("TemplateElement").bases("Node").build("value","tail").field("value",{cooked:String,raw:String}).field("tail",Boolean)},Kh=function(XP){XP.use(Zh);var WP=XP.use(Nh),JP=WP.Type.def,ZP=WP.Type.or;WP.builtInTypes;var KP=XP.use(Wh).defaults;JP("Function").field("async",Boolean,KP["false"]),JP("SpreadProperty").bases("Node").build("argument").field("argument",JP("Expression")),JP("ObjectExpression").field("properties",[ZP(JP("Property"),JP("SpreadProperty"))]),JP("SpreadPropertyPattern").bases("Pattern").build("argument").field("argument",JP("Pattern")),JP("ObjectPattern").field("properties",[ZP(JP("Property"),JP("PropertyPattern"),JP("SpreadPropertyPattern"))]),JP("AwaitExpression").bases("Expression").build("argument","all").field("argument",ZP(JP("Expression"),null)).field("all",Boolean,KP["false"])},Qh=function(XP){XP.use(Kh);var WP=XP.use(Nh),JP=WP.Type.def,ZP=WP.Type.or,KP=XP.use(Wh).defaults;JP("Type").bases("Node"),JP("AnyTypeAnnotation").bases("Type").build(),JP("EmptyTypeAnnotation").bases("Type").build(),JP("MixedTypeAnnotation").bases("Type").build(),JP("VoidTypeAnnotation").bases("Type").build(),JP("NumberTypeAnnotation").bases("Type").build(),JP("NumberLiteralTypeAnnotation").bases("Type").build("value","raw").field("value",Number).field("raw",String),JP("StringTypeAnnotation").bases("Type").build(),JP("StringLiteralTypeAnnotation").bases("Type").build("value","raw").field("value",String).field("raw",String),JP("BooleanTypeAnnotation").bases("Type").build(),JP("BooleanLiteralTypeAnnotation").bases("Type").build("value","raw").field("value",Boolean).field("raw",String),JP("TypeAnnotation").bases("Node").build("typeAnnotation").field("typeAnnotation",JP("Type")),JP("NullableTypeAnnotation").bases("Type").build("typeAnnotation").field("typeAnnotation",JP("Type")),JP("NullLiteralTypeAnnotation").bases("Type").build(),JP("NullTypeAnnotation").bases("Type").build(),JP("ThisTypeAnnotation").bases("Type").build(),JP("ExistsTypeAnnotation").bases("Type").build(),JP("ExistentialTypeParam").bases("Type").build(),JP("FunctionTypeAnnotation").bases("Type").build("params","returnType","rest","typeParameters").field("params",[JP("FunctionTypeParam")]).field("returnType",JP("Type")).field("rest",ZP(JP("FunctionTypeParam"),null)).field("typeParameters",ZP(JP("TypeParameterDeclaration"),null)),JP("FunctionTypeParam").bases("Node").build("name","typeAnnotation","optional").field("name",JP("Identifier")).field("typeAnnotation",JP("Type")).field("optional",Boolean),JP("ArrayTypeAnnotation").bases("Type").build("elementType").field("elementType",JP("Type")),JP("ObjectTypeAnnotation").bases("Type").build("properties","indexers","callProperties").field("properties",[JP("ObjectTypeProperty")]).field("indexers",[JP("ObjectTypeIndexer")],KP.emptyArray).field("callProperties",[JP("ObjectTypeCallProperty")],KP.emptyArray).field("exact",Boolean,KP["false"]),JP("ObjectTypeProperty").bases("Node").build("key","value","optional").field("key",ZP(JP("Literal"),JP("Identifier"))).field("value",JP("Type")).field("optional",Boolean).field("variance",ZP("plus","minus",null),KP["null"]),JP("ObjectTypeIndexer").bases("Node").build("id","key","value").field("id",JP("Identifier")).field("key",JP("Type")).field("value",JP("Type")).field("variance",ZP("plus","minus",null),KP["null"]),JP("ObjectTypeCallProperty").bases("Node").build("value").field("value",JP("FunctionTypeAnnotation")).field("static",Boolean,KP["false"]),JP("QualifiedTypeIdentifier").bases("Node").build("qualification","id").field("qualification",ZP(JP("Identifier"),JP("QualifiedTypeIdentifier"))).field("id",JP("Identifier")),JP("GenericTypeAnnotation").bases("Type").build("id","typeParameters").field("id",ZP(JP("Identifier"),JP("QualifiedTypeIdentifier"))).field("typeParameters",ZP(JP("TypeParameterInstantiation"),null)),JP("MemberTypeAnnotation").bases("Type").build("object","property").field("object",JP("Identifier")).field("property",ZP(JP("MemberTypeAnnotation"),JP("GenericTypeAnnotation"))),JP("UnionTypeAnnotation").bases("Type").build("types").field("types",[JP("Type")]),JP("IntersectionTypeAnnotation").bases("Type").build("types").field("types",[JP("Type")]),JP("TypeofTypeAnnotation").bases("Type").build("argument").field("argument",JP("Type")),JP("Identifier").field("typeAnnotation",ZP(JP("TypeAnnotation"),null),KP["null"]),JP("TypeParameterDeclaration").bases("Node").build("params").field("params",[JP("TypeParameter")]),JP("TypeParameterInstantiation").bases("Node").build("params").field("params",[JP("Type")]),JP("TypeParameter").bases("Type").build("name","variance","bound").field("name",String).field("variance",ZP("plus","minus",null),KP["null"]).field("bound",ZP(JP("TypeAnnotation"),null),KP["null"]),JP("Function").field("returnType",ZP(JP("TypeAnnotation"),null),KP["null"]).field("typeParameters",ZP(JP("TypeParameterDeclaration"),null),KP["null"]),JP("ClassProperty").build("key","value","typeAnnotation","static").field("value",ZP(JP("Expression"),null)).field("typeAnnotation",ZP(JP("TypeAnnotation"),null)).field("static",Boolean,KP["false"]).field("variance",ZP("plus","minus",null),KP["null"]),JP("ClassImplements").field("typeParameters",ZP(JP("TypeParameterInstantiation"),null),KP["null"]),JP("InterfaceDeclaration").bases("Declaration").build("id","body","extends").field("id",JP("Identifier")).field("typeParameters",ZP(JP("TypeParameterDeclaration"),null),KP["null"]).field("body",JP("ObjectTypeAnnotation")).field("extends",[JP("InterfaceExtends")]),JP("DeclareInterface").bases("InterfaceDeclaration").build("id","body","extends"),JP("InterfaceExtends").bases("Node").build("id").field("id",JP("Identifier")).field("typeParameters",ZP(JP("TypeParameterInstantiation"),null)),JP("TypeAlias").bases("Declaration").build("id","typeParameters","right").field("id",JP("Identifier")).field("typeParameters",ZP(JP("TypeParameterDeclaration"),null)).field("right",JP("Type")),JP("DeclareTypeAlias").bases("TypeAlias").build("id","typeParameters","right"),JP("TypeCastExpression").bases("Expression").build("expression","typeAnnotation").field("expression",JP("Expression")).field("typeAnnotation",JP("TypeAnnotation")),JP("TupleTypeAnnotation").bases("Type").build("types").field("types",[JP("Type")]),JP("DeclareVariable").bases("Statement").build("id").field("id",JP("Identifier")),JP("DeclareFunction").bases("Statement").build("id").field("id",JP("Identifier")),JP("DeclareClass").bases("InterfaceDeclaration").build("id"),JP("DeclareModule").bases("Statement").build("id","body").field("id",ZP(JP("Identifier"),JP("Literal"))).field("body",JP("BlockStatement")),JP("DeclareModuleExports").bases("Statement").build("typeAnnotation").field("typeAnnotation",JP("Type")),JP("DeclareExportDeclaration").bases("Declaration").build("default","declaration","specifiers","source").field("default",Boolean).field("declaration",ZP(JP("DeclareVariable"),JP("DeclareFunction"),JP("DeclareClass"),JP("Type"),null)).field("specifiers",[ZP(JP("ExportSpecifier"),JP("ExportBatchSpecifier"))],KP.emptyArray).field("source",ZP(JP("Literal"),null),KP["null"]),JP("DeclareExportAllDeclaration").bases("Declaration").build("source").field("source",ZP(JP("Literal"),null),KP["null"])},$h=function(XP){XP.use(Kh);var WP=XP.use(Nh),JP=XP.use(Wh).defaults,ZP=WP.Type.def,KP=WP.Type.or;ZP("Noop").bases("Node").build(),ZP("DoExpression").bases("Expression").build("body").field("body",[ZP("Statement")]),ZP("Super").bases("Expression").build(),ZP("BindExpression").bases("Expression").build("object","callee").field("object",KP(ZP("Expression"),null)).field("callee",ZP("Expression")),ZP("Decorator").bases("Node").build("expression").field("expression",ZP("Expression")),ZP("Property").field("decorators",KP([ZP("Decorator")],null),JP["null"]),ZP("MethodDefinition").field("decorators",KP([ZP("Decorator")],null),JP["null"]),ZP("MetaProperty").bases("Expression").build("meta","property").field("meta",ZP("Identifier")).field("property",ZP("Identifier")),ZP("ParenthesizedExpression").bases("Expression").build("expression").field("expression",ZP("Expression")),ZP("ImportSpecifier").bases("ModuleSpecifier").build("imported","local").field("imported",ZP("Identifier")),ZP("ImportDefaultSpecifier").bases("ModuleSpecifier").build("local"),ZP("ImportNamespaceSpecifier").bases("ModuleSpecifier").build("local"),ZP("ExportDefaultDeclaration").bases("Declaration").build("declaration").field("declaration",KP(ZP("Declaration"),ZP("Expression"))),ZP("ExportNamedDeclaration").bases("Declaration").build("declaration","specifiers","source").field("declaration",KP(ZP("Declaration"),null)).field("specifiers",[ZP("ExportSpecifier")],JP.emptyArray).field("source",KP(ZP("Literal"),null),JP["null"]),ZP("ExportSpecifier").bases("ModuleSpecifier").build("local","exported").field("exported",ZP("Identifier")),ZP("ExportNamespaceSpecifier").bases("Specifier").build("exported").field("exported",ZP("Identifier")),ZP("ExportDefaultSpecifier").bases("Specifier").build("exported").field("exported",ZP("Identifier")),ZP("ExportAllDeclaration").bases("Declaration").build("exported","source").field("exported",KP(ZP("Identifier"),null)).field("source",ZP("Literal")),ZP("CommentBlock").bases("Comment").build("value","leading","trailing"),ZP("CommentLine").bases("Comment").build("value","leading","trailing")},Sy=function(XP){function WP(S_){var T_=JP.indexOf(S_);return-1===T_&&(T_=JP.length,JP.push(S_),ZP[T_]=S_(KP)),ZP[T_]}var JP=[],ZP=[],KP={};KP.use=WP;var QP=WP(Nh);XP.forEach(WP),QP.finalize();var $P={Type:QP.Type,builtInTypes:QP.builtInTypes,namedTypes:QP.namedTypes,builders:QP.builders,defineMethod:QP.defineMethod,getFieldNames:QP.getFieldNames,getFieldValue:QP.getFieldValue,eachField:QP.eachField,someField:QP.someField,getSupertypeNames:QP.getSupertypeNames,astNodesAreEquivalent:WP(Ih),finalize:QP.finalize,Path:WP(Oh),NodePath:WP(Vh),PathVisitor:WP(Xh),use:WP};return $P.visit=$P.PathVisitor.visit,$P}([Jh,Zh,Kh,function(XP){XP.use(Jh);var WP=XP.use(Nh),JP=WP.Type.def,ZP=WP.Type.or,KP=XP.use(Wh),QP=KP.geq,$P=KP.defaults;JP("Function").field("body",ZP(JP("BlockStatement"),JP("Expression"))),JP("ForInStatement").build("left","right","body","each").field("each",Boolean,$P["false"]),JP("ForOfStatement").bases("Statement").build("left","right","body").field("left",ZP(JP("VariableDeclaration"),JP("Expression"))).field("right",JP("Expression")).field("body",JP("Statement")),JP("LetStatement").bases("Statement").build("head","body").field("head",[JP("VariableDeclarator")]).field("body",JP("Statement")),JP("LetExpression").bases("Expression").build("head","body").field("head",[JP("VariableDeclarator")]).field("body",JP("Expression")),JP("GraphExpression").bases("Expression").build("index","expression").field("index",QP(0)).field("expression",JP("Literal")),JP("GraphIndexExpression").bases("Expression").build("index").field("index",QP(0))},function(XP){XP.use(Jh);var WP=XP.use(Nh),JP=WP.Type.def,ZP=WP.Type.or;JP("XMLDefaultDeclaration").bases("Declaration").field("namespace",JP("Expression")),JP("XMLAnyName").bases("Expression"),JP("XMLQualifiedIdentifier").bases("Expression").field("left",ZP(JP("Identifier"),JP("XMLAnyName"))).field("right",ZP(JP("Identifier"),JP("Expression"))).field("computed",Boolean),JP("XMLFunctionQualifiedIdentifier").bases("Expression").field("right",ZP(JP("Identifier"),JP("Expression"))).field("computed",Boolean),JP("XMLAttributeSelector").bases("Expression").field("attribute",JP("Expression")),JP("XMLFilterExpression").bases("Expression").field("left",JP("Expression")).field("right",JP("Expression")),JP("XMLElement").bases("XML","Expression").field("contents",[JP("XML")]),JP("XMLList").bases("XML","Expression").field("contents",[JP("XML")]),JP("XML").bases("Node"),JP("XMLEscape").bases("XML").field("expression",JP("Expression")),JP("XMLText").bases("XML").field("text",String),JP("XMLStartTag").bases("XML").field("contents",[JP("XML")]),JP("XMLEndTag").bases("XML").field("contents",[JP("XML")]),JP("XMLPointTag").bases("XML").field("contents",[JP("XML")]),JP("XMLName").bases("XML").field("contents",ZP(String,[JP("XML")])),JP("XMLAttribute").bases("XML").field("value",String),JP("XMLCdata").bases("XML").field("contents",String),JP("XMLComment").bases("XML").field("contents",String),JP("XMLProcessingInstruction").bases("XML").field("target",String).field("contents",ZP(String,null))},function(XP){XP.use(Kh);var WP=XP.use(Nh),JP=WP.Type.def,ZP=WP.Type.or,KP=XP.use(Wh).defaults;JP("JSXAttribute").bases("Node").build("name","value").field("name",ZP(JP("JSXIdentifier"),JP("JSXNamespacedName"))).field("value",ZP(JP("Literal"),JP("JSXExpressionContainer"),null),KP["null"]),JP("JSXIdentifier").bases("Identifier").build("name").field("name",String),JP("JSXNamespacedName").bases("Node").build("namespace","name").field("namespace",JP("JSXIdentifier")).field("name",JP("JSXIdentifier")),JP("JSXMemberExpression").bases("MemberExpression").build("object","property").field("object",ZP(JP("JSXIdentifier"),JP("JSXMemberExpression"))).field("property",JP("JSXIdentifier")).field("computed",Boolean,KP.false);var QP=ZP(JP("JSXIdentifier"),JP("JSXNamespacedName"),JP("JSXMemberExpression"));JP("JSXSpreadAttribute").bases("Node").build("argument").field("argument",JP("Expression"));var $P=[ZP(JP("JSXAttribute"),JP("JSXSpreadAttribute"))];JP("JSXExpressionContainer").bases("Expression").build("expression").field("expression",JP("Expression")),JP("JSXElement").bases("Expression").build("openingElement","closingElement","children").field("openingElement",JP("JSXOpeningElement")).field("closingElement",ZP(JP("JSXClosingElement"),null),KP["null"]).field("children",[ZP(JP("JSXElement"),JP("JSXExpressionContainer"),JP("JSXText"),JP("Literal"))],KP.emptyArray).field("name",QP,function(){return this.openingElement.name},!0).field("selfClosing",Boolean,function(){return this.openingElement.selfClosing},!0).field("attributes",$P,function(){return this.openingElement.attributes},!0),JP("JSXOpeningElement").bases("Node").build("name","attributes","selfClosing").field("name",QP).field("attributes",$P,KP.emptyArray).field("selfClosing",Boolean,KP["false"]),JP("JSXClosingElement").bases("Node").build("name").field("name",QP),JP("JSXText").bases("Literal").build("value").field("value",String),JP("JSXEmptyExpression").bases("Expression").build()},Qh,function(XP){XP.use(Kh);var WP=XP.use(Nh),JP=XP.use(Wh).defaults,ZP=WP.Type.def,KP=WP.Type.or;ZP("VariableDeclaration").field("declarations",[KP(ZP("VariableDeclarator"),ZP("Identifier"))]),ZP("Property").field("value",KP(ZP("Expression"),ZP("Pattern"))),ZP("ArrayPattern").field("elements",[KP(ZP("Pattern"),ZP("SpreadElement"),null)]),ZP("ObjectPattern").field("properties",[KP(ZP("Property"),ZP("PropertyPattern"),ZP("SpreadPropertyPattern"),ZP("SpreadProperty"))]),ZP("ExportSpecifier").bases("ModuleSpecifier").build("id","name"),ZP("ExportBatchSpecifier").bases("Specifier").build(),ZP("ImportSpecifier").bases("ModuleSpecifier").build("id","name"),ZP("ImportNamespaceSpecifier").bases("ModuleSpecifier").build("id"),ZP("ImportDefaultSpecifier").bases("ModuleSpecifier").build("id"),ZP("ExportDeclaration").bases("Declaration").build("default","declaration","specifiers","source").field("default",Boolean).field("declaration",KP(ZP("Declaration"),ZP("Expression"),null)).field("specifiers",[KP(ZP("ExportSpecifier"),ZP("ExportBatchSpecifier"))],JP.emptyArray).field("source",KP(ZP("Literal"),null),JP["null"]),ZP("ImportDeclaration").bases("Declaration").build("specifiers","source","importKind").field("specifiers",[KP(ZP("ImportSpecifier"),ZP("ImportNamespaceSpecifier"),ZP("ImportDefaultSpecifier"))],JP.emptyArray).field("source",ZP("Literal")).field("importKind",KP("value","type"),function(){return"value"}),ZP("Block").bases("Comment").build("value","leading","trailing"),ZP("Line").bases("Comment").build("value","leading","trailing")},$h,function(XP){XP.use($h),XP.use(Qh);var WP=XP.use(Nh),JP=XP.use(Wh).defaults,ZP=WP.Type.def,KP=WP.Type.or;ZP("Directive").bases("Node").build("value").field("value",ZP("DirectiveLiteral")),ZP("DirectiveLiteral").bases("Node","Expression").build("value").field("value",String,JP["use strict"]),ZP("BlockStatement").bases("Statement").build("body").field("body",[ZP("Statement")]).field("directives",[ZP("Directive")],JP.emptyArray),ZP("Program").bases("Node").build("body").field("body",[ZP("Statement")]).field("directives",[ZP("Directive")],JP.emptyArray),ZP("StringLiteral").bases("Literal").build("value").field("value",String),ZP("NumericLiteral").bases("Literal").build("value").field("value",Number),ZP("NullLiteral").bases("Literal").build(),ZP("BooleanLiteral").bases("Literal").build("value").field("value",Boolean),ZP("RegExpLiteral").bases("Literal").build("pattern","flags").field("pattern",String).field("flags",String);var QP=KP(ZP("Property"),ZP("ObjectMethod"),ZP("ObjectProperty"),ZP("SpreadProperty"));ZP("ObjectExpression").bases("Expression").build("properties").field("properties",[QP]),ZP("ObjectMethod").bases("Node","Function").build("kind","key","params","body","computed").field("kind",KP("method","get","set")).field("key",KP(ZP("Literal"),ZP("Identifier"),ZP("Expression"))).field("params",[ZP("Pattern")]).field("body",ZP("BlockStatement")).field("computed",Boolean,JP["false"]).field("generator",Boolean,JP["false"]).field("async",Boolean,JP["false"]).field("decorators",KP([ZP("Decorator")],null),JP["null"]),ZP("ObjectProperty").bases("Node").build("key","value").field("key",KP(ZP("Literal"),ZP("Identifier"),ZP("Expression"))).field("value",KP(ZP("Expression"),ZP("Pattern"))).field("computed",Boolean,JP["false"]);var $P=KP(ZP("MethodDefinition"),ZP("VariableDeclarator"),ZP("ClassPropertyDefinition"),ZP("ClassProperty"),ZP("ClassMethod"));ZP("ClassBody").bases("Declaration").build("body").field("body",[$P]),ZP("ClassMethod").bases("Declaration","Function").build("kind","key","params","body","computed","static").field("kind",KP("get","set","method","constructor")).field("key",KP(ZP("Literal"),ZP("Identifier"),ZP("Expression"))).field("params",[ZP("Pattern")]).field("body",ZP("BlockStatement")).field("computed",Boolean,JP["false"]).field("static",Boolean,JP["false"]).field("generator",Boolean,JP["false"]).field("async",Boolean,JP["false"]).field("decorators",KP([ZP("Decorator")],null),JP["null"]);var S_=KP(ZP("Property"),ZP("PropertyPattern"),ZP("SpreadPropertyPattern"),ZP("SpreadProperty"),ZP("ObjectProperty"),ZP("RestProperty"));ZP("ObjectPattern").bases("Pattern").build("properties").field("properties",[S_]).field("decorators",KP([ZP("Decorator")],null),JP["null"]),ZP("SpreadProperty").bases("Node").build("argument").field("argument",ZP("Expression")),ZP("RestProperty").bases("Node").build("argument").field("argument",ZP("Expression")),ZP("ForAwaitStatement").bases("Statement").build("left","right","body").field("left",KP(ZP("VariableDeclaration"),ZP("Expression"))).field("right",ZP("Expression")).field("body",ZP("Statement"))}]);const Ty={type:"break-parent"},Py=Wi([{type:"line",hard:!0},Ty]),_y=Wi([{type:"line",hard:!0,literal:!0},Ty]);var Ny={concat:Wi,join:function(WP,JP){var ZP=[];for(var KP=0;KP","<=",">=","in","instanceof"],[">>","<<",">>>"],["+","-"],["*","/","%","**"]].forEach(function(XP,WP){XP.forEach(function(JP){Vy[JP]=WP})});var Uy={comparePos:function(WP,JP){return WP.line-JP.line||WP.column-JP.column},getPrecedence:function(WP){return Vy[WP]},fixFaultyLocations:function(WP,JP){if(WP.decorators)WP.decorators.forEach(function(QP){Zi(WP,QP)});else if(WP.declaration&&Ki(WP)){var ZP=WP.declaration.decorators;ZP&&ZP.forEach(function(QP){Zi(WP,QP)})}else if(Ly.MethodDefinition&&Ly.MethodDefinition.check(WP)||Ly.Property.check(WP)&&(WP.method||WP.shorthand))Ly.FunctionExpression.check(WP.value)&&(WP.value.id=null);else if("ObjectTypeProperty"===WP.type){var KP=Oy(JP,No(WP),!0);!1!==KP&&","===JP.charAt(KP)&&!1!==(KP=Oy(JP,KP-1,!0))&&Ro(WP,KP)}},isExportDeclaration:Ki,getParentExportDeclaration:function(WP){var JP=WP.getParentNode();return"declaration"===WP.getName()&&Ki(JP)?JP:null},getLast:function(WP){return 0/g,">")}},Xy=Iy,Wy=Sy,Jy=Wy.namedTypes,Zy=Wy.builtInTypes.array,Ky=Wy.builtInTypes.object,Qy=Ny,$y=Qy.concat,Sg=Qy.hardline,Tg=Qy.breakParent,Pg=Qy.indent,_g=Qy.lineSuffix,Ng=Qy.join,Lg=Uy,Rg=Symbol("child-nodes"),Og=Lg.locStart,Mg=Lg.locEnd,Yg={attach:function(WP,JP,ZP){if(Zy.check(WP)){var KP=[];WP.forEach(function(QP){Mo(JP,QP,ZP);const $P=QP.precedingNode,S_=QP.enclosingNode,T_=QP.followingNode;if(Lg.hasNewline(ZP,Og(QP),{backwards:!0}))$o(S_,T_,QP)||Ko(S_,T_,QP)||Qo(S_,T_,QP)||(T_?Uo(T_,QP):$P?Wo($P,QP):S_?Xo(S_,QP):Xo(JP,QP));else if(Lg.hasNewline(ZP,Mg(QP)))Sl(S_,$P,T_,QP,ZP)||Pl(S_,QP)||($P?Wo($P,QP):T_?Uo(T_,QP):S_?Xo(S_,QP):Xo(JP,QP));else if(Ko(S_,T_,QP)||Tl(S_,$P,QP)||Pl(S_,QP));else if($P&&T_){const __=KP.length;if(0<__){var P_=KP[__-1];P_.followingNode!==QP.followingNode&&Yo(KP,ZP)}KP.push(QP)}else $P?Wo($P,QP):T_?Uo(T_,QP):S_?Xo(S_,QP):Xo(JP,QP)}),Yo(KP,ZP),WP.forEach(function(QP){delete QP.precedingNode,delete QP.enclosingNode,delete QP.followingNode})}},printComments:function(WP,JP,ZP){var KP=WP.getValue(),QP=WP.getParentNode(),$P=JP(WP),S_=Jy.Node.check(KP)&&Wy.getFieldValue(KP,"comments");if(!S_||0===S_.length)return $P;var T_=[],P_=[$P];return WP.each(function(__){var N_=__.getValue(),I_=Wy.getFieldValue(N_,"leading"),L_=Wy.getFieldValue(N_,"trailing");if(I_){T_.push(Rl(__,JP,ZP));const R_=ZP.originalText;Lg.hasNewline(R_,Lg.skipNewline(R_,Lg.locEnd(N_)))&&T_.push(Sg)}else L_&&P_.push(Ol(__,JP,ZP,QP))},"comments"),$y(T_.concat(P_))},printDanglingComments:function(WP,JP,ZP){JP.originalText;const KP=[],QP=WP.getValue();return QP&&QP.comments?(WP.each($P=>{const S_=$P.getValue();S_.leading||S_.trailing||KP.push(_l($P))},"comments"),0===KP.length?"":ZP?Ng(Sg,KP):Pg(JP.tabWidth,$y([Sg,Ng(Sg,KP)]))):""}},Vg="prettier",Ug="0.18.0",Xg="Prettier is an opinionated JavaScript formatter",Wg={prettier:"./bin/prettier.js"},Jg={type:"git",url:"git+https://github.com/jlongster/prettier.git"},Zg="James Long",Kg="MIT",Qg={url:"https://github.com/jlongster/prettier/issues"},$g="./index.js",Sb={"ast-types":"0.9.4","babel-code-frame":"6.22.0",babylon:"6.15.0",chalk:"1.1.3",esutils:"2.0.2","flow-parser":"0.38.0","get-stdin":"5.0.1",glob:"7.1.1","jest-validate":"19.0.0",minimist:"1.2.0"},Tb={diff:"3.2.0",jest:"19.0.1",rollup:"0.41.1","rollup-plugin-commonjs":"7.0.0","rollup-plugin-json":"2.1.0","rollup-plugin-node-builtins":"2.0.0","rollup-plugin-node-globals":"1.1.0","rollup-plugin-node-resolve":"2.0.0","rollup-plugin-real-babili":"1.0.0-alpha3"},Pb={test:"jest",format:"./bin/prettier.js --write","format:single":"npm run format -- src/printer.js","format:all":"npm run format -- index.js src/*.js bin/*.js","build:docs":"rollup -c docs/rollup.config.js"},_b={setupFiles:["/tests_config/run_spec.js"],testRegex:"jsfmt\\.spec\\.js$",testPathIgnorePatterns:["tests/new_react","tests/more_react"]},Nb=Object.freeze({name:Vg,version:Ug,description:Xg,bin:Wg,repository:Jg,author:Zg,license:Kg,bugs:Qg,main:$g,dependencies:Sb,devDependencies:Tb,scripts:Pb,jest:_b,default:{name:Vg,version:Ug,description:Xg,bin:Wg,repository:Jg,author:Zg,license:Kg,bugs:Qg,main:$g,dependencies:Sb,devDependencies:Tb,scripts:Pb,jest:_b}}),Lb=Iy,Rb=Sy,Ob=Uy,Mb=Rb.namedTypes,Yb=Rb.builtInTypes.array,Vb=Rb.builtInTypes.number,Ub=Ml.prototype;Ml.from=function(XP){if(XP instanceof Ml)return XP.copy();if(XP instanceof Rb.NodePath){var WP=Object.create(Ml.prototype),JP=[XP.value];for(var ZP;ZP=XP.parentPath;XP=ZP)JP.push(XP.name,ZP.value);return WP.stack=JP.reverse(),WP}return new Ml(XP)},Ub.copy=function(){var XP=Object.create(Ml.prototype);return XP.stack=this.stack.slice(0),XP},Ub.getName=function(){var WP=this.stack,JP=WP.length;return 1S_)return!0;if(QP===S_&&"right"===JP)return Lb.strictEqual(WP.right,ZP),!0;default:return!1;}case"SequenceExpression":switch(WP.type){case"ReturnStatement":return!1;case"ForStatement":return!1;case"ExpressionStatement":return"expression"!==JP;default:return!0;}case"YieldExpression":if("UnaryExpression"===WP.type)return!0;case"AwaitExpression":switch(WP.type){case"TaggedTemplateExpression":case"BinaryExpression":case"LogicalExpression":case"SpreadElement":case"SpreadProperty":case"NewExpression":case"MemberExpression":return!0;case"CallExpression":return WP.callee===ZP;case"ConditionalExpression":return WP.test===ZP;default:return!1;}case"ArrayTypeAnnotation":return"NullableTypeAnnotation"===WP.type;case"IntersectionTypeAnnotation":case"UnionTypeAnnotation":return"NullableTypeAnnotation"===WP.type||"IntersectionTypeAnnotation"===WP.type||"UnionTypeAnnotation"===WP.type;case"NullableTypeAnnotation":return"ArrayTypeAnnotation"===WP.type;case"FunctionTypeAnnotation":return"UnionTypeAnnotation"===WP.type||"IntersectionTypeAnnotation"===WP.type;case"NumericLiteral":case"Literal":return"MemberExpression"===WP.type&&Vb.check(ZP.value)&&"object"===JP&&WP.object===ZP;case"AssignmentExpression":if("ArrowFunctionExpression"===WP.type&&WP.body===ZP&&"ObjectPattern"===ZP.left.type)return!0;case"ConditionalExpression":switch(WP.type){case"TaggedTemplateExpression":case"UnaryExpression":case"SpreadElement":case"SpreadProperty":case"BinaryExpression":case"LogicalExpression":case"LogicalExpression":case"ExportDefaultDeclaration":case"AwaitExpression":return!0;case"NewExpression":case"CallExpression":return"callee"===JP&&WP.callee===ZP;case"ConditionalExpression":return"test"===JP&&WP.test===ZP;case"MemberExpression":return"object"===JP&&WP.object===ZP;default:return Mb.ObjectPattern.check(ZP.left)&&this.firstInStatement();}case"FunctionExpression":case"ArrowFunctionExpression":if("CallExpression"===WP.type&&"callee"===JP)return!0;switch(WP.type){case"ConditionalExpression":if(WP.test===ZP)return!0;case"ExportDefaultDeclaration":return"ArrowFunctionExpression"!==ZP.type;case"ExpressionStatement":case"MemberExpression":case"TaggedTemplateExpression":case"UnaryExpression":return!0;case"NewExpression":return"callee"===JP;case"LogicalExpression":return"ArrowFunctionExpression"===ZP.type;default:return Vl(WP);}case"ClassExpression":switch(WP.type){case"TaggedTemplateExpression":case"BinaryExpression":case"ExportDefaultDeclaration":case"ExpressionStatement":return!0;case"CallExpression":if(WP.callee===ZP)return!0;case"MemberExpression":return"object"===JP&&WP.object===ZP;case"ConditionalExpression":if(WP.test===ZP)return!0;}return!1;case"ObjectExpression":if("ArrowFunctionExpression"===WP.type&&"body"===JP)return!0;if("TaggedTemplateExpression"===WP.type)return!0;if("MemberExpression"===WP.type)return"object"===JP&&WP.object===ZP;case"StringLiteral":if("ExpressionStatement"===WP.type)return!0;default:if("NewExpression"===WP.type&&"callee"===JP&&WP.callee===ZP)return Ul(ZP);}return!0!==XP&&!this.canBeFirstInStatement()&&this.firstInStatement()},Ub.canBeFirstInStatement=function(){var XP=this.getNode();return!Mb.FunctionExpression.check(XP)&&!Mb.ObjectExpression.check(XP)&&!Mb.ClassExpression.check(XP)&&!(Mb.AssignmentExpression.check(XP)&&Mb.ObjectPattern.check(XP.left))},Ub.firstInStatement=function(){var XP=this.stack,WP,JP,ZP,KP;for(var QP=XP.length-1;0<=QP;QP-=2)if(Mb.Node.check(XP[QP])&&(ZP=WP,KP=JP,WP=XP[QP-1],JP=XP[QP]),JP&&KP){if(Mb.BlockStatement.check(JP)&&"body"===WP&&0===ZP)return Lb.strictEqual(JP.body[0],KP),!0;if(Mb.ExpressionStatement.check(JP)&&"expression"===ZP)return Lb.strictEqual(JP.expression,KP),!0;if(Mb.SequenceExpression.check(JP)&&"expressions"===WP&&0===ZP){Lb.strictEqual(JP.expressions[0],KP);continue}if(Mb.CallExpression.check(JP)&&"callee"===ZP){Lb.strictEqual(JP.callee,KP);continue}if(Mb.MemberExpression.check(JP)&&"object"===ZP){Lb.strictEqual(JP.object,KP);continue}if(Mb.ConditionalExpression.check(JP)&&"test"===ZP){Lb.strictEqual(JP.test,KP);continue}if(Vl(JP)&&"left"===ZP){Lb.strictEqual(JP.left,KP);continue}if(Mb.UnaryExpression.check(JP)&&!JP.prefix&&"argument"===ZP){Lb.strictEqual(JP.argument,KP);continue}return!1}return!0};var Xb=Iy,Wb=Yg,Jb=Ml,Zb=Uy,Kb=Mu.keyword.isIdentifierNameES6,Qb=Ny,$b=Qb.concat,Sx=Qb.join,Tx=Qb.line,Px=Qb.hardline,_x=Qb.softline,Nx=Qb.literalline,Ix=Qb.group,Lx=Qb.indent,Rx=Qb.conditionalGroup,Ox=Qb.ifBreak,Mx=Qb.breakParent,Yx=Qb.lineSuffixBoundary,Vx={isEmpty:function(WP){return"string"==typeof WP&&0===WP.length},getFirstString:function(WP){return Vi(WP,JP=>{if("string"==typeof JP&&0!==JP.trim().length)return JP},null)},willBreak:function(WP){return Vi(WP,JP=>{return"group"===JP.type&&JP.break||"line"===JP.type&&JP.hard||void 0},!1)},isLineNext:function(WP){return Vi(WP,JP=>{return"string"!=typeof JP&&(!("line"!==JP.type)||void 0)},!1)},traverseDoc:Mi,mapDoc:Yi,propagateBreaks:function(WP){const JP=[];Mi(WP,ZP=>{"break-parent"===ZP.type&&Ui(JP),"group"===ZP.type&&JP.push(ZP)},ZP=>{if("group"===ZP.type){const KP=JP.pop();KP.break&&Ui(JP)}})}},Ux=Vx.willBreak,Xx=Vx.isLineNext,Wx=Vx.getFirstString,Jx=Vx.isEmpty,Zx=Sy,Kx=Zx.namedTypes,Qx=Zx.builtInTypes.string;const $x=1,SS=2;var TS={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]},PS=Se(function(XP){function WP(P_,__){return Math.pow(P_[0]-__[0],2)+Math.pow(P_[1]-__[1],2)+Math.pow(P_[2]-__[2],2)}var JP=TS,ZP={};for(var KP in JP)JP.hasOwnProperty(KP)&&(ZP[JP[KP]]=KP);var QP=XP.exports={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},lch:{channels:3,labels:"lch"},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}};for(var $P in QP)if(QP.hasOwnProperty($P)){if(!("channels"in QP[$P]))throw new Error("missing channels property: "+$P);if(!("labels"in QP[$P]))throw new Error("missing channel labels property: "+$P);if(QP[$P].labels.length!==QP[$P].channels)throw new Error("channel and label counts mismatch: "+$P);var S_=QP[$P].channels,T_=QP[$P].labels;delete QP[$P].channels,delete QP[$P].labels,Object.defineProperty(QP[$P],"channels",{value:S_}),Object.defineProperty(QP[$P],"labels",{value:T_})}QP.rgb.hsl=function(P_){var __=P_[0]/255,N_=P_[1]/255,I_=P_[2]/255,L_=Math.min(__,N_,I_),R_=Math.max(__,N_,I_),O_=R_-L_,M_,Y_,V_;return R_===L_?M_=0:__===R_?M_=(N_-I_)/O_:N_===R_?M_=2+(I_-__)/O_:I_===R_&&(M_=4+(__-N_)/O_),M_=Math.min(60*M_,360),0>M_&&(M_+=360),V_=(L_+R_)/2,Y_=R_===L_?0:0.5>=V_?O_/(R_+L_):O_/(2-R_-L_),[M_,100*Y_,100*V_]},QP.rgb.hsv=function(P_){var __=P_[0],N_=P_[1],I_=P_[2],L_=Math.min(__,N_,I_),R_=Math.max(__,N_,I_),O_=R_-L_,M_,Y_,V_;return Y_=0===R_?0:1e3*(O_/R_)/10,R_===L_?M_=0:__===R_?M_=(N_-I_)/O_:N_===R_?M_=2+(I_-__)/O_:I_===R_&&(M_=4+(__-N_)/O_),M_=Math.min(60*M_,360),0>M_&&(M_+=360),V_=1e3*(R_/255)/10,[M_,Y_,V_]},QP.rgb.hwb=function(P_){var __=P_[0],N_=P_[1],I_=P_[2],L_=QP.rgb.hsl(P_)[0],R_=1/255*Math.min(__,Math.min(N_,I_));return I_=1-1/255*Math.max(__,Math.max(N_,I_)),[L_,100*R_,100*I_]},QP.rgb.cmyk=function(P_){var __=P_[0]/255,N_=P_[1]/255,I_=P_[2]/255,M_=Math.min(1-__,1-N_,1-I_),L_,R_,O_;return L_=(1-__-M_)/(1-M_)||0,R_=(1-N_-M_)/(1-M_)||0,O_=(1-I_-M_)/(1-M_)||0,[100*L_,100*R_,100*O_,100*M_]},QP.rgb.keyword=function(P_){var __=ZP[P_];if(__)return __;var N_=Infinity,I_;for(var L_ in JP)if(JP.hasOwnProperty(L_)){var R_=JP[L_],O_=WP(P_,R_);O_I_?I_*(1+N_):I_+N_-I_*N_,L_=2*I_-R_,M_=[0,0,0];for(var V_=0;3>V_;V_++)O_=__+1/3*-(V_-1),0>O_&&O_++,16*O_?L_+6*(R_-L_)*O_:1>2*O_?R_:2>3*O_?L_+6*((R_-L_)*(2/3-O_)):L_,M_[V_]=255*Y_;return M_},QP.hsl.hsv=function(P_){var __=P_[0],N_=P_[1]/100,I_=P_[2]/100,L_=N_,R_=Math.max(I_,0.01),O_,M_;return I_*=2,N_*=1>=I_?I_:2-I_,L_*=1>=R_?R_:2-R_,M_=(I_+N_)/2,O_=0==I_?2*L_/(R_+L_):2*N_/(I_+N_),[__,100*O_,100*M_]},QP.hsv.rgb=function(P_){var __=P_[0]/60,N_=P_[1]/100,I_=P_[2]/100,L_=Math.floor(__)%6,R_=__-Math.floor(__),O_=255*I_*(1-N_),M_=255*I_*(1-N_*R_),Y_=255*I_*(1-N_*(1-R_));return I_*=255,0==L_?[I_,Y_,O_]:1==L_?[M_,I_,O_]:2==L_?[O_,I_,Y_]:3==L_?[O_,M_,I_]:4==L_?[Y_,O_,I_]:5==L_?[I_,O_,M_]:void 0},QP.hsv.hsl=function(P_){var __=P_[0],N_=P_[1]/100,I_=P_[2]/100,L_=Math.max(I_,0.01),M_=(2-N_)*I_,R_,O_;return R_=(2-N_)*L_,O_=N_*L_,O_/=1>=R_?R_:2-R_,O_=O_||0,M_/=2,[__,100*O_,100*M_]},QP.hwb.rgb=function(P_){var __=P_[0]/360,N_=P_[1]/100,I_=P_[2]/100,L_=N_+I_,R_,O_,M_,Y_;1R_&&(R_+=360),O_=Math.sqrt(N_*N_+I_*I_),[__,O_,R_]},QP.lch.lab=function(P_){var __=P_[0],N_=P_[1],I_=P_[2],O_=2*(I_/360)*Math.PI,L_,R_;return L_=N_*Math.cos(O_),R_=N_*Math.sin(O_),[__,L_,R_]},QP.rgb.ansi16=function(P_){var __=P_[0],N_=P_[1],I_=P_[2],L_=1 in arguments?arguments[1]:QP.rgb.hsv(P_)[2];if(L_=Math.round(L_/50),0===L_)return 30;var R_=30+(Math.round(I_/255)<<2|Math.round(N_/255)<<1|Math.round(__/255));return 2===L_&&(R_+=60),R_},QP.hsv.ansi16=function(P_){return QP.rgb.ansi16(QP.hsv.rgb(P_),P_[2])},QP.rgb.ansi256=function(P_){var __=P_[0],N_=P_[1],I_=P_[2];if(__===N_&&N_===I_)return 8>__?16:248<__?231:Math.round(24*((__-8)/247))+232;var L_=16+36*Math.round(5*(__/255))+6*Math.round(5*(N_/255))+Math.round(5*(I_/255));return L_},QP.ansi16.rgb=function(P_){var __=P_%10;if(0==__||7==__)return 50>1)*N_),R_=255*((1&__>>2)*N_);return[I_,L_,R_]},QP.ansi256.rgb=function(P_){if(232<=P_){var __=10*(P_-232)+8;return[__,__,__]}P_-=16;var N_,I_=255*(Math.floor(P_/36)/5),L_=255*(Math.floor((N_=P_%36)/6)/5),R_=255*(N_%6/5);return[I_,L_,R_]},QP.rgb.hex=function(P_){var __=((255&Math.round(P_[0]))<<16)+((255&Math.round(P_[1]))<<8)+(255&Math.round(P_[2])),N_=__.toString(16).toUpperCase();return"000000".substring(N_.length)+N_},QP.hex.rgb=function(P_){var __=P_.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!__)return[0,0,0];var N_=__[0];3===__[0].length&&(N_=N_.split("").map(function(L_){return L_+L_}).join(""));var I_=parseInt(N_,16);return[255&I_>>16,255&I_>>8,255&I_]},QP.rgb.hcg=function(P_){var __=P_[0]/255,N_=P_[1]/255,I_=P_[2]/255,L_=Math.max(Math.max(__,N_),I_),R_=Math.min(Math.min(__,N_),I_),O_=L_-R_,M_,Y_;return M_=1>O_?R_/(1-O_):0,Y_=0>=O_?0:L_===__?(N_-I_)/O_%6:L_===N_?2+(I_-__)/O_:4+(__-N_)/O_+4,Y_/=6,Y_%=1,[360*Y_,100*O_,100*M_]},QP.hsl.hcg=function(P_){var __=P_[1]/100,N_=P_[2]/100,I_=1,L_=0;return I_=0.5>N_?2*__*N_:2*__*(1-N_),1>I_&&(L_=(N_-0.5*I_)/(1-I_)),[P_[0],100*I_,100*L_]},QP.hsv.hcg=function(P_){var __=P_[1]/100,N_=P_[2]/100,I_=__*N_,L_=0;return 1>I_&&(L_=(N_-I_)/(1-I_)),[P_[0],100*I_,100*L_]},QP.hcg.rgb=function(P_){var __=P_[0]/360,N_=P_[1]/100,I_=P_[2]/100;if(0==N_)return[255*I_,255*I_,255*I_];var L_=[0,0,0],R_=6*(__%1),O_=R_%1,M_=1-O_,Y_=0;switch(Math.floor(R_)){case 0:L_[0]=1,L_[1]=O_,L_[2]=0;break;case 1:L_[0]=M_,L_[1]=1,L_[2]=0;break;case 2:L_[0]=0,L_[1]=1,L_[2]=O_;break;case 3:L_[0]=0,L_[1]=M_,L_[2]=1;break;case 4:L_[0]=O_,L_[1]=0,L_[2]=1;break;default:L_[0]=1,L_[1]=0,L_[2]=M_;}return Y_=(1-N_)*I_,[255*(N_*L_[0]+Y_),255*(N_*L_[1]+Y_),255*(N_*L_[2]+Y_)]},QP.hcg.hsv=function(P_){var __=P_[1]/100,N_=P_[2]/100,I_=__+N_*(1-__),L_=0;return 0I_?L_=__/(2*I_):0.5<=I_&&1>I_&&(L_=__/(2*(1-I_))),[P_[0],100*L_,100*I_]},QP.hcg.hwb=function(P_){var __=P_[1]/100,N_=P_[2]/100,I_=__+N_*(1-__);return[P_[0],100*(I_-__),100*(1-I_)]},QP.hwb.hcg=function(P_){var __=P_[1]/100,N_=P_[2]/100,I_=1-N_,L_=I_-__,R_=0;return 1>L_&&(R_=(I_-L_)/(1-L_)),[P_[0],100*L_,100*R_]},QP.apple.rgb=function(P_){return[255*(P_[0]/65535),255*(P_[1]/65535),255*(P_[2]/65535)]},QP.rgb.apple=function(P_){return[65535*(P_[0]/255),65535*(P_[1]/255),65535*(P_[2]/255)]},QP.gray.rgb=function(P_){return[255*(P_[0]/100),255*(P_[0]/100),255*(P_[0]/100)]},QP.gray.hsl=QP.gray.hsv=function(P_){return[0,0,P_[0]]},QP.gray.hwb=function(P_){return[0,100,P_[0]]},QP.gray.cmyk=function(P_){return[0,0,0,P_[0]]},QP.gray.lab=function(P_){return[P_[0],0,0]},QP.gray.hex=function(P_){var __=255&Math.round(255*(P_[0]/100)),N_=((__<<16)+(__<<8)+__).toString(16).toUpperCase();return"000000".substring(N_.length)+N_},QP.rgb.gray=function(P_){var __=(P_[0]+P_[1]+P_[2])/3;return[100*(__/255)]}}),_S=PS,NS=Object.keys(_S),IS=PS,LS=function(XP){var WP=Xd(XP),JP={},ZP=Object.keys(WP);for(var KP=ZP.length,QP=0;QPfunction(){const S_=QP.apply(WP,arguments);return`\u001B[${S_+$P}m`},ZP=(QP,$P)=>function(){const S_=QP.apply(WP,arguments);return`\u001B[${38+$P};5;${S_}m`},KP=(QP,$P)=>function(){const S_=QP.apply(WP,arguments);return`\u001B[${38+$P};2;${S_[0]};${S_[1]};${S_[2]}m`};Object.defineProperty(XP,"exports",{enumerable:!0,get:function(){const $P={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],gray:[90,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49]}};$P.color.grey=$P.color.gray,Object.keys($P).forEach(T_=>{const P_=$P[T_];Object.keys(P_).forEach(__=>{const N_=P_[__];$P[__]=P_[__]={open:`\u001B[${N_[0]}m`,close:`\u001B[${N_[1]}m`}}),Object.defineProperty($P,T_,{value:P_,enumerable:!1})});const S_=(T_,P_,__)=>[T_,P_,__];$P.color.close="\x1B[39m",$P.bgColor.close="\x1B[49m",$P.color.ansi={},$P.color.ansi256={},$P.color.ansi16m={rgb:KP(S_,0)},$P.bgColor.ansi={},$P.bgColor.ansi256={},$P.bgColor.ansi16m={rgb:KP(S_,10)};for(const T_ of Object.keys(WP))if("object"==typeof WP[T_]){const P_=WP[T_];"ansi16"in P_&&($P.color.ansi[T_]=JP(P_.ansi16,0),$P.bgColor.ansi[T_]=JP(P_.ansi16,10)),"ansi256"in P_&&($P.color.ansi256[T_]=ZP(P_.ansi256,0),$P.bgColor.ansi256[T_]=ZP(P_.ansi256,10)),"rgb"in P_&&($P.color.ansi16m[T_]=KP(P_.rgb,0),$P.bgColor.ansi16m[T_]=KP(P_.rgb,10))}return $P}})});const YS=Object.prototype.toString,VS=Date.prototype.toISOString,US=Error.prototype.toString,XS=RegExp.prototype.toString,WS=Symbol.prototype.toString,JS=/^Symbol\((.*)\)(.*)$/,ZS=/\n/ig,KS=Object.getOwnPropertySymbols||(()=>[]),QS={callToJSON:!0,escapeRegex:!1,highlight:!1,indent:2,maxDepth:Infinity,min:!1,plugins:[],printFunctionName:!0,theme:{content:"reset",prop:"yellow",tag:"cyan",value:"green"}};var $S=function(WP,JP){JP?(Wc(JP),JP=Jc(JP)):JP=QS;const ZP={};Object.keys(JP.theme).forEach(N_=>{ZP[N_]=JP.highlight?MS[JP.theme[N_]]:{close:"",open:""}});let KP,QP;const $P="",S_=0,T_=JP.min?" ":"\n",P_=JP.min?"":"\n";if(JP&&JP.plugins.length){KP=Zc(JP.indent),QP=[];const N_=Uc(WP,KP,$P,T_,P_,QP,JP.maxDepth,S_,JP.plugins,JP.min,JP.callToJSON,JP.printFunctionName,JP.escapeRegex,ZP);if(N_)return N_}const __=_c(WP,JP.printFunctionName,JP.escapeRegex);return __?__:(KP||(KP=Zc(JP.indent)),QP||(QP=[]),Vc(WP,KP,$P,T_,P_,QP,JP.maxDepth,S_,JP.plugins,JP.min,JP.callToJSON,JP.printFunctionName,JP.escapeRegex,ZP))},SE=[],TE=[],PE=function(XP,WP){if(XP===WP)return 0;var JP=XP.length,ZP=WP.length;if(0===JP)return ZP;if(0===ZP)return JP;for(var T_=0,P_=0,KP,QP,$P,S_;T_QP?S_>QP?QP+1:S_:S_>$P?$P+1:S_;return QP};const _E=$m,NE=_E.bold("\u25CF"),IE=`${NE} Deprecation Warning`,LE=`${NE} Validation Error`,RE=`${NE} Validation Warning`,OE=XP=>"function"==typeof XP?XP.toString():$S(XP,{min:!0});class ME extends Error{constructor(XP,WP,JP){super(),JP=JP?"\n\n"+JP:"\n",this.name="",this.message=_E.red(_E.bold(XP)+":\n\n"+WP+JP),Error.captureStackTrace(this,()=>{})}}var YE={DEPRECATION:IE,ERROR:LE,ValidationError:ME,WARNING:RE,createDidYouMeanMessage:(XP,WP)=>{const JP=WP.find(ZP=>{const KP=PE(ZP,XP);return 3>KP});return JP?`Did you mean ${_E.bold(OE(JP))}?`:""},format:OE,logValidationWarning:(XP,WP,JP)=>{JP=JP?"\n\n"+JP:"\n",console.warn(_E.yellow(_E.bold(XP)+":\n\n"+WP+JP))}};const VE=Symbol.for("jest.asymmetricMatcher"),UE=" ";class XE extends Array{}class WE extends Object{}const JE=$m,ZE=$S,KE=[{print:(XP,WP,JP,ZP)=>{const KP=XP.toString();if("ArrayContaining"===KP){const QP=XE.from(XP.sample);return ZP.spacing===UE?KP+UE+WP(QP):WP(QP)}if("ObjectContaining"===KP){const QP=Object.assign(new WE,XP.sample);return ZP.spacing===UE?KP+UE+WP(QP):WP(QP)}return"StringMatching"===KP?KP+UE+WP(XP.sample):"StringContaining"===KP?KP+UE+WP(XP.sample):XP.toAsymmetricMatcher()},test:XP=>XP&&XP.$$typeof===VE}],QE=JE.green,$E=JE.bgGreen,ST=JE.red,TT=JE.bgRed,PT=["zero","one","two","three","four","five","six","seven","eight","nine","ten","eleven","twelve","thirteen"],_T=XP=>{if("undefined"==typeof XP)return"undefined";if(null===XP)return"null";if(Array.isArray(XP))return"array";if("boolean"==typeof XP)return"boolean";if("function"==typeof XP)return"function";if("number"==typeof XP)return"number";if("string"==typeof XP)return"string";if("object"==typeof XP)return XP.constructor===RegExp?"regexp":XP.constructor===Map?"map":XP.constructor===Set?"set":"object";if("symbol"==typeof XP)return"symbol";throw new Error(`value of unknown type: ${XP}`)},NT=function(XP){let WP=1XP.replace(/\s+$/gm,WP("$&")),LT=XP=>IT(ST(NT(XP)),TT),RT=XP=>IT(QE(NT(XP)),$E),OT=(XP,WP,JP)=>{const ZP=_T(WP);return XP+":"+("null"!==ZP&&"undefined"!==ZP?"\n "+ZP+": ":" ")+JP(WP)},MT=(XP,WP)=>{if(WP||(WP="This matcher"),"number"!=typeof XP)throw new Error(VT("[.not]"+WP)+"\n\n"+`Actual value must be a number.\n`+OT("Received",XP,LT))},YT=(XP,WP)=>{if(WP||(WP="This matcher"),"number"!=typeof XP)throw new Error(VT("[.not]"+WP)+"\n\n"+`Expected value must be a number.\n`+OT("Got",XP,RT))},VT=function(XP){let WP=1{if(WP||(WP="This"),"undefined"!=typeof XP)throw new Error(VT("[.not]"+WP,void 0,"")+"\n\nMatcher does not accept any arguments.\n"+OT("Got",XP,RT))},ensureNumbers:(XP,WP,JP)=>{MT(XP,JP),YT(WP,JP)},getType:_T,highlightTrailingWhitespace:IT,matcherHint:VT,pluralize:(XP,WP)=>(PT[WP]||WP)+" "+XP+(1===WP?"":"s"),printExpected:RT,printReceived:LT,printWithType:OT,stringify:NT}.getType;var QT={ValidationError:JT,errorMessage:(XP,WP,JP,ZP)=>{const KP=` Option ${UT.bold(`"${XP}"`)} must be of type: +var prettier=function(){function Se(XP,WP){return WP={exports:{}},XP(WP,WP.exports),WP.exports}function Te(){throw new Error("setTimeout has not been defined")}function Pe(){throw new Error("clearTimeout has not been defined")}function _e(XP){if(Vu===setTimeout)return setTimeout(XP,0);if((Vu===Te||!Vu)&&setTimeout)return Vu=setTimeout,setTimeout(XP,0);try{return Vu(XP,0)}catch(WP){try{return Vu.call(null,XP,0)}catch(JP){return Vu.call(this,XP,0)}}}function Ne(XP){if(Uu===clearTimeout)return clearTimeout(XP);if((Uu===Pe||!Uu)&&clearTimeout)return Uu=clearTimeout,clearTimeout(XP);try{return Uu(XP)}catch(WP){try{return Uu.call(null,XP)}catch(JP){return Uu.call(this,XP)}}}function Le(){Wu&&Ju&&(Wu=!1,Ju.length?Xu=Ju.concat(Xu):Zu=-1,Xu.length&&Re())}function Re(){if(!Wu){var XP=_e(Le);Wu=!0;for(var WP=Xu.length;WP;){for(Ju=Xu,Xu=[];++Zu>16,$P[T_++]=255&KP>>8,$P[T_++]=255&KP;return 2===QP?(KP=Pf[XP.charCodeAt(WP)]<<2|Pf[XP.charCodeAt(WP+1)]>>4,$P[T_++]=255&KP):1==QP&&(KP=Pf[XP.charCodeAt(WP)]<<10|Pf[XP.charCodeAt(WP+1)]<<4|Pf[XP.charCodeAt(WP+2)]>>2,$P[T_++]=255&KP>>8,$P[T_++]=255&KP),$P}function Je(XP){return Tf[63&XP>>18]+Tf[63&XP>>12]+Tf[63&XP>>6]+Tf[63&XP]}function Ze(XP,WP,JP){var ZP,KP=[];for(var QP=WP;QPT_?T_:S_+$P));return 1==ZP?(WP=XP[JP-1],KP+=Tf[WP>>2],KP+=Tf[63&WP<<4],KP+="=="):2==ZP&&(WP=(XP[JP-2]<<8)+XP[JP-1],KP+=Tf[WP>>10],KP+=Tf[63&WP>>4],KP+=Tf[63&WP<<2],KP+="="),QP.push(KP),QP.join("")}function Qe(XP,WP,JP,ZP,KP){var QP,$P,S_=8*KP-ZP-1,T_=(1<>1,__=-7,N_=JP?KP-1:0,I_=JP?-1:1,L_=XP[WP+N_];for(N_+=I_,QP=L_&(1<<-__)-1,L_>>=-__,__+=S_;0<__;QP=256*QP+XP[WP+N_],N_+=I_,__-=8);for($P=QP&(1<<-__)-1,QP>>=-__,__+=ZP;0<__;$P=256*$P+XP[WP+N_],N_+=I_,__-=8);if(0===QP)QP=1-P_;else{if(QP===T_)return $P?NaN:(L_?-1:1)*Infinity;$P+=Math.pow(2,ZP),QP-=P_}return(L_?-1:1)*$P*Math.pow(2,QP-ZP)}function $e(XP,WP,JP,ZP,KP,QP){var $P,S_,T_,P_=8*QP-KP-1,__=(1<>1,I_=23===KP?Math.pow(2,-24)-Math.pow(2,-77):0,L_=ZP?0:QP-1,R_=ZP?1:-1,O_=0>WP||0===WP&&0>1/WP?1:0;for(WP=Math.abs(WP),isNaN(WP)||WP===Infinity?(S_=isNaN(WP)?1:0,$P=__):($P=Math.floor(Math.log(WP)/Math.LN2),1>WP*(T_=Math.pow(2,-$P))&&($P--,T_*=2),WP+=1<=$P+N_?I_/T_:I_*Math.pow(2,1-N_),2<=WP*T_&&($P++,T_/=2),$P+N_>=__?(S_=0,$P=__):1<=$P+N_?(S_=(WP*T_-1)*Math.pow(2,KP),$P+=N_):(S_=WP*Math.pow(2,N_-1)*Math.pow(2,KP),$P=0));8<=KP;XP[JP+L_]=255&S_,L_+=R_,S_/=256,KP-=8);for($P=$P<XP)throw new RangeError("\"size\" argument must not be negative")}function It(XP,WP,JP,ZP){return Nt(WP),0>=WP?Tt(XP,WP):void 0===JP?Tt(XP,WP):"string"==typeof ZP?Tt(XP,WP).fill(JP,ZP):Tt(XP,WP).fill(JP)}function Lt(XP,WP){if(Nt(WP),XP=Tt(XP,0>WP?0:0|Vt(WP)),!Pt.TYPED_ARRAY_SUPPORT)for(var JP=0;JPWP.length?0:0|Vt(WP.length);XP=Tt(XP,JP);for(var ZP=0;ZPJP||WP.byteLength=St())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+St().toString(16)+" bytes");return 0|XP}function Ut(XP){return!!(null!=XP&&XP._isBuffer)}function Xt(XP,WP){if(Ut(XP))return XP.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(XP)||XP instanceof ArrayBuffer))return XP.byteLength;"string"!=typeof XP&&(XP=""+XP);var JP=XP.length;if(0===JP)return 0;for(var ZP=!1;;)switch(WP){case"ascii":case"latin1":case"binary":return JP;case"utf8":case"utf-8":case void 0:return Pn(XP).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*JP;case"hex":return JP>>>1;case"base64":return Ln(XP).length;default:if(ZP)return Pn(XP).length;WP=(""+WP).toLowerCase(),ZP=!0;}}function Wt(XP,WP,JP){var ZP=!1;if((void 0===WP||0>WP)&&(WP=0),WP>this.length)return"";if((void 0===JP||JP>this.length)&&(JP=this.length),0>=JP)return"";if(JP>>>=0,WP>>>=0,JP<=WP)return"";for(XP||(XP="utf8");!0;)switch(XP){case"hex":return Ya(this,WP,JP);case"utf8":case"utf-8":return La(this,WP,JP);case"ascii":return Oa(this,WP,JP);case"latin1":case"binary":return Ma(this,WP,JP);case"base64":return Na(this,WP,JP);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return Va(this,WP,JP);default:if(ZP)throw new TypeError("Unknown encoding: "+XP);XP=(XP+"").toLowerCase(),ZP=!0;}}function Jt(XP,WP,JP){var ZP=XP[WP];XP[WP]=XP[JP],XP[JP]=ZP}function Zt(XP,WP,JP,ZP,KP){if(0===XP.length)return-1;if("string"==typeof JP?(ZP=JP,JP=0):2147483647JP&&(JP=-2147483648),JP=+JP,isNaN(JP)&&(JP=KP?0:XP.length-1),0>JP&&(JP=XP.length+JP),JP>=XP.length){if(KP)return-1;JP=XP.length-1}else if(0>JP)if(KP)JP=0;else return-1;if("string"==typeof WP&&(WP=Pt.from(WP,ZP)),Ut(WP))return 0===WP.length?-1:Kt(XP,WP,JP,ZP,KP);if("number"==typeof WP)return WP&=255,Pt.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?KP?Uint8Array.prototype.indexOf.call(XP,WP,JP):Uint8Array.prototype.lastIndexOf.call(XP,WP,JP):Kt(XP,[WP],JP,ZP,KP);throw new TypeError("val must be string, number or Buffer")}function Kt(XP,WP,JP,ZP,KP){function QP(L_,R_){return 1===$P?L_[R_]:L_.readUInt16BE(R_*$P)}var $P=1,S_=XP.length,T_=WP.length;if(void 0!==ZP&&(ZP=(ZP+"").toLowerCase(),"ucs2"===ZP||"ucs-2"===ZP||"utf16le"===ZP||"utf-16le"===ZP)){if(2>XP.length||2>WP.length)return-1;$P=2,S_/=2,T_/=2,JP/=2}var P_;if(KP){var __=-1;for(P_=JP;P_S_&&(JP=S_-T_),P_=JP;0<=P_;P_--){var N_=!0;for(var I_=0;I_KP&&(ZP=KP)):ZP=KP;var QP=WP.length;if(0!=QP%2)throw new TypeError("Invalid hex string");ZP>QP/2&&(ZP=QP/2);for(var $P=0;$PQP&&($P=QP):2==S_?(T_=XP[KP+1],128==(192&T_)&&(N_=(31&QP)<<6|63&T_,127N_||57343N_&&($P=N_))):void 0}null===$P?($P=65533,S_=1):65535<$P&&($P-=65536,ZP.push(55296|1023&$P>>>10),$P=56320|1023&$P),ZP.push($P),KP+=S_}return Ra(ZP)}function Ra(XP){var WP=XP.length;if(WP<=Of)return String.fromCharCode.apply(String,XP);for(var JP="",ZP=0;ZPWP)&&(WP=0),(!JP||0>JP||JP>ZP)&&(JP=ZP);var KP="";for(var QP=WP;QPXP)throw new RangeError("offset is not uint");if(XP+WP>JP)throw new RangeError("Trying to access beyond buffer length")}function Xa(XP,WP,JP,ZP,KP,QP){if(!Ut(XP))throw new TypeError("\"buffer\" argument must be a Buffer instance");if(WP>KP||WPXP.length)throw new RangeError("Index out of range")}function Wa(XP,WP,JP,ZP){0>WP&&(WP=65535+WP+1);for(var KP=0,QP=Math.min(XP.length-JP,2);KP>>8*(ZP?KP:1-KP)}function Ja(XP,WP,JP,ZP){0>WP&&(WP=4294967295+WP+1);for(var KP=0,QP=Math.min(XP.length-JP,4);KP>>8*(ZP?KP:3-KP)}function Za(XP,WP,JP,ZP){if(JP+ZP>XP.length)throw new RangeError("Index out of range");if(0>JP)throw new RangeError("Index out of range")}function Ka(XP,WP,JP,ZP,KP){return KP||Za(XP,WP,JP,4,3.4028234663852886e38,-3.4028234663852886e38),$e(XP,WP,JP,ZP,23,4),JP+4}function Qa(XP,WP,JP,ZP,KP){return KP||Za(XP,WP,JP,8,1.7976931348623157e308,-1.7976931348623157e308),$e(XP,WP,JP,ZP,52,8),JP+8}function $a(XP){if(XP=Sn(XP).replace(Mf,""),2>XP.length)return"";for(;0!=XP.length%4;)XP+="=";return XP}function Sn(XP){return XP.trim?XP.trim():XP.replace(/^\s+|\s+$/g,"")}function Tn(XP){return 16>XP?"0"+XP.toString(16):XP.toString(16)}function Pn(XP,WP){WP=WP||Infinity;var JP,ZP=XP.length,KP=null,QP=[];for(var $P=0;$PJP){if(!KP){if(56319JP){-1<(WP-=3)&&QP.push(239,191,189),KP=JP;continue}JP=(KP-55296<<10|JP-56320)+65536}else KP&&-1<(WP-=3)&&QP.push(239,191,189);if(KP=null,128>JP){if(0>(WP-=1))break;QP.push(JP)}else if(2048>JP){if(0>(WP-=2))break;QP.push(192|JP>>6,128|63&JP)}else if(65536>JP){if(0>(WP-=3))break;QP.push(224|JP>>12,128|63&JP>>6,128|63&JP)}else if(1114112>JP){if(0>(WP-=4))break;QP.push(240|JP>>18,128|63&JP>>12,128|63&JP>>6,128|63&JP)}else throw new Error("Invalid code point")}return QP}function _n(XP){var WP=[];for(var JP=0;JP(WP-=2));++$P)JP=XP.charCodeAt($P),ZP=JP>>8,KP=JP%256,QP.push(KP),QP.push(ZP);return QP}function Ln(XP){return We($a(XP))}function Rn(XP,WP,JP,ZP){for(var KP=0;KP=WP.length||KP>=XP.length);++KP)WP[KP+JP]=XP[KP];return KP}function On(XP){return XP!==XP}function Mn(XP){return null!=XP&&(!!XP._isBuffer||Yn(XP)||Vn(XP))}function Yn(XP){return!!XP.constructor&&"function"==typeof XP.constructor.isBuffer&&XP.constructor.isBuffer(XP)}function Vn(XP){return"function"==typeof XP.readFloatLE&&"function"==typeof XP.slice&&Yn(XP.slice(0,0))}function Un(XP,WP){var JP={seen:[],stylize:Wn};return 3<=arguments.length&&(JP.depth=arguments[2]),4<=arguments.length&&(JP.colors=arguments[3]),_r(WP)?JP.showHidden=WP:WP&&Zr(JP,WP),Or(JP.showHidden)&&(JP.showHidden=!1),Or(JP.depth)&&(JP.depth=2),Or(JP.colors)&&(JP.colors=!1),Or(JP.customInspect)&&(JP.customInspect=!0),JP.colors&&(JP.stylize=Xn),Zn(JP,XP,JP.depth)}function Xn(XP,WP){var JP=Un.styles[WP];return JP?"\x1B["+Un.colors[JP][0]+"m"+XP+"\x1B["+Un.colors[JP][1]+"m":XP}function Wn(XP){return XP}function Jn(XP){var WP={};return XP.forEach(function(JP){WP[JP]=!0}),WP}function Zn(XP,WP,JP){if(XP.customInspect&&WP&&Xr(WP.inspect)&&WP.inspect!==Un&&!(WP.constructor&&WP.constructor.prototype===WP)){var ZP=WP.inspect(JP,XP);return Rr(ZP)||(ZP=Zn(XP,ZP,JP)),ZP}var KP=Kn(XP,WP);if(KP)return KP;var QP=Object.keys(WP),$P=Jn(QP);if(XP.showHidden&&(QP=Object.getOwnPropertyNames(WP)),Ur(WP)&&(0<=QP.indexOf("message")||0<=QP.indexOf("description")))return Qn(WP);if(0===QP.length){if(Xr(WP)){var S_=WP.name?": "+WP.name:"";return XP.stylize("[Function"+S_+"]","special")}if(Mr(WP))return XP.stylize(RegExp.prototype.toString.call(WP),"regexp");if(Vr(WP))return XP.stylize(Date.prototype.toString.call(WP),"date");if(Ur(WP))return Qn(WP)}var T_="",P_=!1,__=["{","}"];if(Pr(WP)&&(P_=!0,__=["[","]"]),Xr(WP)){var N_=WP.name?": "+WP.name:"";T_=" [Function"+N_+"]"}if(Mr(WP)&&(T_=" "+RegExp.prototype.toString.call(WP)),Vr(WP)&&(T_=" "+Date.prototype.toUTCString.call(WP)),Ur(WP)&&(T_=" "+Qn(WP)),0===QP.length&&(!P_||0==WP.length))return __[0]+T_+__[1];if(0>JP)return Mr(WP)?XP.stylize(RegExp.prototype.toString.call(WP),"regexp"):XP.stylize("[Object]","special");XP.seen.push(WP);var I_;return I_=P_?$n(XP,WP,JP,$P,QP):QP.map(function(L_){return Sr(XP,WP,JP,$P,L_,P_)}),XP.seen.pop(),Tr(I_,T_,__)}function Kn(XP,WP){if(Or(WP))return XP.stylize("undefined","undefined");if(Rr(WP)){var JP="'"+JSON.stringify(WP).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,"\"")+"'";return XP.stylize(JP,"string")}return Lr(WP)?XP.stylize(""+WP,"number"):_r(WP)?XP.stylize(""+WP,"boolean"):Nr(WP)?XP.stylize("null","null"):void 0}function Qn(XP){return"["+Error.prototype.toString.call(XP)+"]"}function $n(XP,WP,JP,ZP,KP){var QP=[];for(var $P=0,S_=WP.length;$PXP.seen.indexOf(T_.value)?(S_=Nr(JP)?Zn(XP,T_.value,null):Zn(XP,T_.value,JP-1),-1Yi(JP,WP))}):"if-break"===XP.type?Object.assign({},XP,{breakContents:XP.breakContents&&Yi(XP.breakContents,WP),flatContents:XP.flatContents&&Yi(XP.flatContents,WP)}):XP.contents?Object.assign({},XP,{contents:Yi(XP.contents,WP)}):XP}function Vi(XP,WP,JP){var ZP=JP;return Mi(XP,function(KP){var QP=WP(KP);if(void 0!==QP)return ZP=QP,!1}),ZP}function Ui(XP){if(0_o(WP)-_o(XP)&&Lo(XP,_o(WP)),0>No(XP)-No(WP)&&Ro(XP,No(WP))}function Ki(XP){if(XP)switch(XP.type){case"ExportDeclaration":case"ExportDefaultDeclaration":case"ExportDefaultSpecifier":case"DeclareExportDeclaration":case"ExportNamedDeclaration":case"ExportAllDeclaration":return!0;}return!1}function Qi(XP){return(WP,JP,ZP)=>{const KP=ZP&&ZP.backwards;if(!1===JP)return!1;const QP=WP.length;let $P=JP;for(;0<=$P&&$P=Mg(JP[ZP])-Og(XP));--ZP);return void JP.splice(ZP+1,0,XP)}}else if(XP[Rg])return XP[Rg];var KP;if(Zy.check(XP))KP=Object.keys(XP);else if(Ky.check(XP))KP=Wy.getFieldNames(XP);else return;JP||Object.defineProperty(XP,Rg,{value:JP=[],enumerable:!1});for(var ZP=0,QP=KP.length;ZP>1,P_=ZP[T_];if(0>=Og(P_)-Og(WP)&&0>=Mg(WP)-Mg(P_))return WP.enclosingNode=P_,void Mo(P_,WP,JP);if(0>=Mg(P_)-Og(WP)){KP=P_,$P=T_+1;continue}if(0>=Mg(WP)-Og(P_)){QP=P_,S_=T_;continue}throw new Error("Comment location overlaps with node location")}KP&&(WP.precedingNode=KP),QP&&(WP.followingNode=QP)}function Yo(XP,WP){var JP=XP.length;if(0!==JP){var ZP=XP[0].precedingNode,KP=XP[0].followingNode,QP=Og(KP);for(var $P=JP;0<$P;--$P){var S_=XP[$P-1];Xy.strictEqual(S_.precedingNode,ZP),Xy.strictEqual(S_.followingNode,KP);var T_=WP.slice(Mg(S_),QP);if(/\S/.test(T_))break;QP=Og(S_)}XP.forEach(function(P_,__){__<$P?Wo(ZP,P_):Uo(KP,P_)}),XP.length=0}}function Vo(XP,WP){var JP=XP.comments||(XP.comments=[]);JP.push(WP),WP.printed=!1}function Uo(XP,WP){WP.leading=!0,WP.trailing=!1,Vo(XP,WP)}function Xo(XP,WP){WP.leading=!1,WP.trailing=!1,Vo(XP,WP)}function Wo(XP,WP){WP.leading=!1,WP.trailing=!0,Vo(XP,WP)}function Jo(XP,WP){const JP=XP.body.filter(ZP=>"EmptyStatement"!==ZP.type);0===JP.length?Xo(XP,WP):Uo(JP[0],WP)}function Zo(XP,WP){"BlockStatement"===XP.type?Jo(XP,WP):Uo(XP,WP)}function Ko(XP,WP,JP){return XP&&"IfStatement"===XP.type&&WP&&("BlockStatement"===WP.type?(Jo(WP,JP),!0):!("IfStatement"!==WP.type)&&(Zo(WP.consequent,JP),!0))}function Qo(XP,WP,JP){return XP&&"TryStatement"===XP.type&&WP&&("BlockStatement"===WP.type?(Jo(WP,JP),!0):"TryStatement"===WP.type?(Zo(WP.finalizer,JP),!0):!("CatchClause"!==WP.type)&&(Zo(WP.body,JP),!0))}function $o(XP,WP,JP){return XP&&"MemberExpression"===XP.type&&WP&&"Identifier"===WP.type&&(Uo(XP,JP),!0)}function Sl(XP,WP,JP,ZP,KP){const QP=WP&&!Lg.hasNewlineInRange(KP,Mg(WP),Og(ZP));return(!WP||!QP)&&XP&&"ConditionalExpression"===XP.type&&JP&&(Uo(JP,ZP),!0)}function Tl(XP,WP,JP){return XP&&("ObjectProperty"===XP.type||"Property"===XP.type)&&XP.shorthand&&XP.key===WP&&"AssignmentPattern"===XP.value.type&&(Wo(XP.value.left,JP),!0)}function Pl(XP,WP){if(XP&&"TemplateLiteral"===XP.type){const JP=Nl(XP.expressions,WP);return WP.type="CommentBlock",Uo(XP.expressions[JP],WP),!0}return!1}function _l(XP){const WP=XP.getValue();switch(WP.printed=!0,WP.type){case"CommentBlock":case"Block":return"/*"+WP.value+"*/";case"CommentLine":case"Line":return"//"+WP.value;default:throw new Error("Not a comment: "+JSON.stringify(WP));}}function Nl(XP,WP){let JP;const ZP=Og(WP)-1,KP=Mg(WP)+1;for(let QP=0;QP=$P.start&&ZP<=$P.end||KP>=$P.start&&KP<=$P.end){JP=QP;break}}return JP}function Ll(XP){return void 0===XP.start?{start:XP.range[0],end:XP.range[1]}:{start:XP.start,end:XP.end}}function Rl(XP,WP,JP){const ZP=XP.getValue(),KP=_l(XP);JP.originalText;const QP="Block"===ZP.type||"CommentBlock"===ZP.type;return QP?$y([KP,Lg.hasNewline(JP.originalText,Mg(ZP))?Sg:" "]):$y([KP,Sg])}function Ol(XP,WP,JP){const ZP=XP.getValue(),KP=_l(XP),QP="Block"===ZP.type||"CommentBlock"===ZP.type;if(Lg.hasNewline(JP.originalText,Og(ZP),{backwards:!0})){const $P=Lg.isPreviousLineEmpty(JP.originalText,ZP);return _g($y([Sg,$P?Sg:"",KP]))}return QP?$y([" ",KP]):$y([_g(" "+KP),QP?"":Tg])}function Ml(XP){Lb.ok(this instanceof Ml),this.stack=[XP]}function Yl(XP,WP){var JP=XP.stack;for(var ZP=JP.length-1;0<=ZP;ZP-=2){var KP=JP[ZP];if(Mb.Node.check(KP)&&0>--WP)return KP}return null}function Vl(XP){return Mb.BinaryExpression.check(XP)||Mb.LogicalExpression.check(XP)}function Ul(XP){return!!Mb.CallExpression.check(XP)||(Yb.check(XP)?XP.some(Ul):!!Mb.Node.check(XP)&&Rb.someField(XP,function(WP,JP){return Ul(JP)}))}function Xl(XP,WP){switch(WP=WP||"es5",XP.trailingComma){case"all":if("all"===WP)return!0;case"es5":if("es5"===WP)return!0;case"none":default:return!1;}}function Wl(XP,WP,JP){Xb.ok(XP instanceof Jb);var ZP=XP.getValue(),KP=[],QP=!1,$P=Jl(XP,WP,JP);if(!ZP||Jx($P))return $P;if(ZP.comments&&0");const _N=XP.call(JP,"body"),NN=$b([$b(KP)," ",_N]);return"ArrayExpression"===ZP.body.type||"ObjectExpression"===ZP.body.type||"JSXElement"===ZP.body.type||"BlockStatement"===ZP.body.type?Ix(NN):Ix(Rx([NN,$b([$b(KP),Lx(WP.tabWidth,$b([Tx,_N]))])]),{shouldBreak:Ux(_N)});case"MethodDefinition":return ZP.static&&KP.push("static "),KP.push(Ql(XP,WP,JP)),$b(KP);case"YieldExpression":return KP.push("yield"),ZP.delegate&&KP.push("*"),ZP.argument&&KP.push(" ",XP.call(JP,"argument")),$b(KP);case"AwaitExpression":return KP.push("await"),ZP.all&&KP.push("*"),ZP.argument&&KP.push(" ",XP.call(JP,"argument")),$b(KP);case"ModuleDeclaration":return KP.push("module",XP.call(JP,"id")),ZP.source?(Xb.ok(!ZP.body),KP.push("from",XP.call(JP,"source"))):KP.push(XP.call(JP,"body")),Sx(" ",KP);case"ImportSpecifier":return ZP.imported?(ZP.importKind&&KP.push(XP.call(JP,"importKind")," "),KP.push(XP.call(JP,"imported")),ZP.local&&ZP.local.name!==ZP.imported.name&&KP.push(" as ",XP.call(JP,"local"))):ZP.id&&(KP.push(XP.call(JP,"id")),ZP.name&&KP.push(" as ",XP.call(JP,"name"))),$b(KP);case"ExportSpecifier":return ZP.local?(KP.push(XP.call(JP,"local")),ZP.exported&&ZP.exported.name!==ZP.local.name&&KP.push(" as ",XP.call(JP,"exported"))):ZP.id&&(KP.push(XP.call(JP,"id")),ZP.name&&KP.push(" as ",XP.call(JP,"name"))),$b(KP);case"ExportBatchSpecifier":return"*";case"ImportNamespaceSpecifier":return KP.push("* as "),ZP.local?KP.push(XP.call(JP,"local")):ZP.id&&KP.push(XP.call(JP,"id")),$b(KP);case"ImportDefaultSpecifier":return ZP.local?XP.call(JP,"local"):XP.call(JP,"id");case"ExportDeclaration":case"ExportDefaultDeclaration":case"ExportNamedDeclaration":return Rp(XP,WP,JP);case"ExportAllDeclaration":return KP.push("export *"),ZP.exported&&KP.push(" as ",XP.call(JP,"exported")),KP.push(" from ",XP.call(JP,"source"),";"),$b(KP);case"ExportNamespaceSpecifier":return $b(["* as ",XP.call(JP,"exported")]);case"ExportDefaultSpecifier":return XP.call(JP,"exported");case"ImportDeclaration":KP.push("import ");const IN=[];ZP.importKind&&"value"!==ZP.importKind&&KP.push(ZP.importKind+" ");var QP=[],$P=[];return ZP.specifiers&&0XN.leading)?KP.push($b([" (",Lx(WP.tabWidth,$b([_x,XP.call(JP,"argument")])),Tx,")"])):ZP.argument&&KP.push(" ",XP.call(JP,"argument")),KP.push(";"),$b(KP);case"CallExpression":return XP.getParentNode(),"MemberExpression"===ZP.callee.type?Xp(XP,WP,JP):$b([XP.call(JP,"callee"),$l(XP,WP,JP)]);case"ObjectExpression":case"ObjectPattern":case"ObjectTypeAnnotation":var P_="ObjectTypeAnnotation"===ZP.type,__=P_?",":",",N_=[],I_=ZP.exact?"{|":"{",L_=ZP.exact?"|}":"}",T_=XP.getParentNode(0),R_="UnionTypeAnnotation"===T_.type;P_&&N_.push("indexers","callProperties"),N_.push("properties");var O_=[];let LN=[];N_.forEach(function(XN){XP.each(function(WN){O_.push($b(LN)),O_.push(Ix(JP(WN))),LN=[__,Tx],Zb.isNextLineEmpty(WP.originalText,WN.getValue())&&LN.push(Px)},XN)});const RN=Zb.getLast(ZP.properties),ON=!(RN&&"RestProperty"===RN.type),MN=Zb.hasNewlineInRange(WP.originalText,Zb.locStart(ZP),Zb.locEnd(ZP));return 0===O_.length?Ix($b(["{",Wb.printDanglingComments(XP,WP),_x,"}"])):Ix($b([I_,Lx(WP.tabWidth+(R_?2:0),$b([WP.bracketSpacing?Tx:_x,$b(O_)])),Ox(ON&&Xl(WP)?",":""),Lx(R_?2:0,$b([WP.bracketSpacing?Tx:_x,L_])),XP.call(JP,"typeAnnotation")]),{shouldBreak:MN});case"PropertyPattern":return $b([XP.call(JP,"key"),": ",XP.call(JP,"pattern")]);case"ObjectProperty":case"Property":return ZP.method||"get"===ZP.kind||"set"===ZP.kind?Ql(XP,WP,JP):(ZP.shorthand?KP.push(XP.call(JP,"value")):(ZP.computed?KP.push("[",XP.call(JP,"key"),"]"):KP.push(Kl(XP,WP,JP)),KP.push($b([": ",XP.call(JP,"value")]))),$b(KP));case"ClassMethod":return ZP.static&&KP.push("static "),KP=KP.concat(Np(XP,WP,JP)),$b(KP);case"ObjectMethod":return Np(XP,WP,JP);case"Decorator":return $b(["@",XP.call(JP,"expression")]);case"ArrayExpression":case"ArrayPattern":if(0===ZP.elements.length)KP.push(Ix($b(["[",Wb.printDanglingComments(XP,WP),_x,"]"])));else{const XN=Zb.getLast(ZP.elements),WN=!(XN&&"RestElement"===XN.type),JN=WN&&null===XN;var M_=[];let ZN=[];XP.each(function(KN){M_.push($b(ZN)),M_.push(Ix(JP(KN))),ZN=[",",Tx],KN.getValue()&&Zb.isNextLineEmpty(WP.originalText,KN.getValue())&&ZN.push(_x)},"elements"),KP.push(Ix($b(["[",Lx(WP.tabWidth,$b([_x,$b(M_)])),JN?",":"",Ox(WN&&!JN&&Xl(WP)?",":""),Wb.printDanglingComments(XP,WP,!0),_x,"]"])))}return ZP.typeAnnotation&&KP.push(XP.call(JP,"typeAnnotation")),$b(KP);case"SequenceExpression":return Sx(", ",XP.map(JP,"expressions"));case"ThisExpression":return"this";case"Super":return"super";case"NullLiteral":return"null";case"RegExpLiteral":return ZP.extra.raw;case"NumericLiteral":return Rd(ZP.extra.raw);case"BooleanLiteral":case"StringLiteral":case"Literal":return"number"==typeof ZP.value?Rd(ZP.raw):"string"==typeof ZP.value?Nd(ZP,WP):""+ZP.value;case"Directive":return XP.call(JP,"value");case"DirectiveLiteral":return Nd(ZP,WP);case"ModuleSpecifier":if(ZP.local)throw new Error("The ESTree ModuleSpecifier type should be abstract");return Nd(ZP,WP);case"UnaryExpression":return KP.push(ZP.operator),/[a-z]$/.test(ZP.operator)&&KP.push(" "),KP.push(XP.call(JP,"argument")),$b(KP);case"UpdateExpression":return KP.push(XP.call(JP,"argument"),ZP.operator),ZP.prefix&&KP.reverse(),$b(KP);case"ConditionalExpression":return Ix($b([XP.call(JP,"test"),Lx(WP.tabWidth,$b([Tx,"? ",Lx(2,XP.call(JP,"consequent")),Tx,": ",Lx(2,XP.call(JP,"alternate"))]))]));case"NewExpression":KP.push("new ",XP.call(JP,"callee"));var Y_=ZP.arguments;return Y_&&KP.push($l(XP,WP,JP)),$b(KP);case"VariableDeclaration":var V_=XP.map(function(XN){return JP(XN)},"declarations");KP=[ZP.kind," ",V_[0],Lx(WP.tabWidth,$b(V_.slice(1).map(XN=>$b([",",Tx,XN]))))];var U_=XP.getParentNode(),X_=Kx.ForStatement.check(U_)||Kx.ForInStatement.check(U_)||Kx.ForOfStatement&&Kx.ForOfStatement.check(U_)||Kx.ForAwaitStatement&&Kx.ForAwaitStatement.check(U_);return X_&&U_.body!==ZP||KP.push(";"),Ix($b(KP));case"VariableDeclarator":return ZP.init?$b([XP.call(JP,"id")," = ",XP.call(JP,"init")]):XP.call(JP,"id");case"WithStatement":return $b(["with (",XP.call(JP,"object"),")",Td(XP.call(JP,"body"),WP)]);case"IfStatement":const YN=Td(XP.call(JP,"consequent"),WP);if(KP=["if (",Ix($b([Lx(WP.tabWidth,$b([_x,XP.call(JP,"test")])),_x])),")",YN],ZP.alternate){const XN=Pd(YN),WN=_d(YN);XN&&!WN?KP.push(" else"):KP.push(Rx([$b([Px,"else"])])),KP.push(Td(XP.call(JP,"alternate"),WP,"IfStatement"===ZP.alternate.type))}return Ix($b(KP));case"ForStatement":{const XN=Td(XP.call(JP,"body"),WP),WN=Wb.printDanglingComments(XP,WP,!0),JN=WN?$b([WN,_x]):"";return ZP.init||ZP.test||ZP.update?$b([JN,"for (",Ix($b([Lx(WP.tabWidth,$b([_x,XP.call(JP,"init"),";",Tx,XP.call(JP,"test"),";",Tx,XP.call(JP,"update")])),_x])),")",XN]):$b([JN,"for (;;)",XN])}case"WhileStatement":return $b(["while (",Ix($b([Lx(WP.tabWidth,$b([_x,XP.call(JP,"test")])),_x])),")",Td(XP.call(JP,"body"),WP)]);case"ForInStatement":return $b([ZP.each?"for each (":"for (",XP.call(JP,"left")," in ",XP.call(JP,"right"),")",Td(XP.call(JP,"body"),WP)]);case"ForOfStatement":return $b(["for (",XP.call(JP,"left")," of ",XP.call(JP,"right"),")",Td(XP.call(JP,"body"),WP)]);case"ForAwaitStatement":return $b(["for await (",XP.call(JP,"left")," of ",XP.call(JP,"right"),")",Td(XP.call(JP,"body"),WP)]);case"DoWhileStatement":var W_=Td(XP.call(JP,"body"),WP),J_=$b(["do",W_]),KP=[J_];const VN=Pd(W_);return VN?KP.push(" while"):KP.push($b([Tx,"while"])),KP.push(" (",XP.call(JP,"test"),");"),$b(KP);case"DoExpression":var Z_=XP.call(function(XN){return Zl(XN,WP,JP)},"body");return $b(["do {\n",Z_.indent(WP.tabWidth),"\n}"]);case"BreakStatement":return KP.push("break"),ZP.label&&KP.push(" ",XP.call(JP,"label")),KP.push(";"),$b(KP);case"ContinueStatement":return KP.push("continue"),ZP.label&&KP.push(" ",XP.call(JP,"label")),KP.push(";"),$b(KP);case"LabeledStatement":return"EmptyStatement"===ZP.body.type?$b([XP.call(JP,"label"),":;"]):$b([XP.call(JP,"label"),":",Px,XP.call(JP,"body")]);case"TryStatement":return KP.push("try ",XP.call(JP,"block")),ZP.handler?KP.push(" ",XP.call(JP,"handler")):ZP.handlers&&XP.each(function(XN){KP.push(" ",JP(XN))},"handlers"),ZP.finalizer&&KP.push(" finally ",XP.call(JP,"finalizer")),$b(KP);case"CatchClause":return KP.push("catch (",XP.call(JP,"param")),ZP.guard&&KP.push(" if ",XP.call(JP,"guard")),KP.push(") ",XP.call(JP,"body")),$b(KP);case"ThrowStatement":return $b(["throw ",XP.call(JP,"argument"),";"]);case"SwitchStatement":return $b(["switch (",XP.call(JP,"discriminant"),") {",0"EmptyStatement"!==XN.type)){const XN=XP.call(function(WN){return Zl(WN,WP,JP)},"consequent");KP.push(Pd(XN)?$b([" ",XN]):Lx(WP.tabWidth,$b([Px,XN])))}return $b(KP);case"DebuggerStatement":return"debugger;";case"JSXAttribute":if(KP.push(XP.call(JP,"name")),ZP.value){let XN;XN=("StringLiteral"===ZP.value.type||"Literal"===ZP.value.type)&&"string"==typeof ZP.value.value?"\""+Zb.htmlEscapeInsideDoubleQuote(ZP.value.value)+"\"":XP.call(JP,"value"),KP.push("=",XN)}return $b(KP);case"JSXIdentifier":return""+ZP.name;case"JSXNamespacedName":return Sx(":",[XP.call(JP,"namespace"),XP.call(JP,"name")]);case"JSXMemberExpression":return Sx(".",[XP.call(JP,"object"),XP.call(JP,"property")]);case"JSXSpreadAttribute":return $b(["{...",XP.call(JP,"argument"),"}"]);case"JSXExpressionContainer":{const XN=XP.getParentNode(0),WN="ArrayExpression"===ZP.expression.type||"ObjectExpression"===ZP.expression.type||"ArrowFunctionExpression"===ZP.expression.type||"CallExpression"===ZP.expression.type||"FunctionExpression"===ZP.expression.type||"JSXEmptyExpression"===ZP.expression.type||"JSXElement"===XN.type&&("ConditionalExpression"===ZP.expression.type||"LogicalExpression"===ZP.expression.type);return WN?Ix($b(["{",XP.call(JP,"expression"),Yx,"}"])):Ix($b(["{",Lx(WP.tabWidth,$b([_x,XP.call(JP,"expression")])),_x,Yx,"}"]))}case"JSXElement":{const XN=Zp(XP,WP,JP);return Kp(XP,XN,WP)}case"JSXOpeningElement":{const XN=XP.getValue();return 1===XN.attributes.length&&XN.attributes[0].value&&"Literal"===XN.attributes[0].value.type&&"string"==typeof XN.attributes[0].value.value?Ix($b(["<",XP.call(JP,"name")," ",$b(XP.map(JP,"attributes")),XN.selfClosing?" />":">"])):Ix($b(["<",XP.call(JP,"name"),$b([Lx(WP.tabWidth,$b(XP.map(WN=>$b([Tx,JP(WN)]),"attributes"))),XN.selfClosing?Tx:WP.jsxBracketSameLine?">":_x]),XN.selfClosing?"/>":WP.jsxBracketSameLine?"":">"]))}case"JSXClosingElement":return $b([""]);case"JSXText":throw new Error("JSXTest should be handled by JSXElement");case"JSXEmptyExpression":return $b([Wb.printDanglingComments(XP,WP,!0),_x]);case"TypeAnnotatedIdentifier":return $b([XP.call(JP,"annotation")," ",XP.call(JP,"identifier")]);case"ClassBody":return ZP.comments||0!==ZP.body.length?$b(["{",0{return"line"!==WN.type||WN.hard?WN:WN.soft?"":" "})}return KP.push("`"),XP.each(function(XN){var WN=XN.getName();KP.push(JP(XN)),WN ":": ",XP.call(JP,"returnType"),XP.call(JP,"predicate")),$b(KP);case"FunctionTypeParam":return $b([XP.call(JP,"name"),ZP.optional?"?":"",ZP.name?": ":"",XP.call(JP,"typeAnnotation")]);case"GenericTypeAnnotation":return $b([XP.call(JP,"id"),XP.call(JP,"typeParameters")]);case"DeclareInterface":case"InterfaceDeclaration":return("DeclareInterface"===ZP.type||Yd(ZP,WP))&&KP.push("declare "),KP.push("interface ",XP.call(JP,"id"),XP.call(JP,"typeParameters")," "),0"]);case"TypeParameter":switch(ZP.variance){case"plus":KP.push("+");break;case"minus":KP.push("-");break;default:}return KP.push(XP.call(JP,"name")),ZP.bound&&KP.push(XP.call(JP,"bound")),ZP["default"]&&KP.push("=",XP.call(JP,"default")),$b(KP);case"TypeofTypeAnnotation":return $b(["typeof ",XP.call(JP,"argument")]);case"VoidTypeAnnotation":return"void";case"NullTypeAnnotation":return"null";case"InferredPredicate":return"%checks";case"DeclaredPredicate":return $b(["%checks(",XP.call(JP,"value"),")"]);case"ClassHeritage":case"ComprehensionBlock":case"ComprehensionExpression":case"Glob":case"GeneratorExpression":case"LetStatement":case"LetExpression":case"GraphExpression":case"GraphIndexExpression":case"XMLDefaultDeclaration":case"XMLAnyName":case"XMLQualifiedIdentifier":case"XMLFunctionQualifiedIdentifier":case"XMLAttributeSelector":case"XMLFilterExpression":case"XML":case"XMLElement":case"XMLList":case"XMLEscape":case"XMLText":case"XMLStartTag":case"XMLEndTag":case"XMLPointTag":case"XMLName":case"XMLAttribute":case"XMLCdata":case"XMLComment":case"XMLProcessingInstruction":default:debugger;throw new Error("unknown type: "+JSON.stringify(ZP.type));}return p}function Zl(XP,WP,JP){let ZP=[];return XP.map(function(KP){var QP=KP.getValue();if(QP&&"EmptyStatement"!==QP.type){const $P=JP(KP),S_=WP.originalText,T_=[];T_.push($P),Zb.isNextLineEmpty(S_,QP)&&!Od(KP)&&T_.push(Px),ZP.push($b(T_))}}),Sx(Px,ZP)}function Kl(XP,WP,JP){const ZP=XP.getNode(),KP=ZP.key;return("StringLiteral"===KP.type||"Literal"===KP.type&&"string"==typeof KP.value)&&Kb(KP.value)&&!ZP.computed&&("flow"!==WP.parser||KP.value.match(/[a-zA-Z0-9$_]/))?KP.value:XP.call(JP,"key")}function Ql(XP,WP,JP){var ZP=XP.getNode(),KP=ZP.kind,QP=[];"ObjectMethod"===ZP.type||"ClassMethod"===ZP.type?ZP.value=ZP:Kx.FunctionExpression.assert(ZP.value),ZP.value.async&&QP.push("async "),KP&&"init"!==KP&&"method"!==KP&&"constructor"!==KP?(Xb.ok("get"===KP||"set"===KP),QP.push(KP," ")):ZP.value.generator&&QP.push("*");var $P=Kl(XP,WP,JP);return ZP.computed&&($P=$b(["[",$P,"]"])),QP.push($P,XP.call(JP,"value","typeParameters"),Ix($b([XP.call(function(S_){return _p(S_,JP,WP)},"value"),XP.call(S_=>Lp(S_,JP),"value")]))," ",XP.call(JP,"value","body")),$b(QP)}function $l(XP,WP,JP){var ZP=XP.map(JP,"arguments");if(0===ZP.length)return"()";const KP=Zb.getLast(XP.getValue().arguments),QP=(!KP.comments||!KP.comments.length)&&("ObjectExpression"===KP.type||"ArrayExpression"===KP.type||"FunctionExpression"===KP.type||"ArrowFunctionExpression"===KP.type&&("BlockStatement"===KP.body.type||"ArrowFunctionExpression"===KP.body.type||"ObjectExpression"===KP.body.type||"ArrayExpression"===KP.body.type||"CallExpression"===KP.body.type||"JSXElement"===KP.body.type));if(QP){const $P=ZP.slice(0,-1).some(Ux);return $b([ZP.some(Ux)?Mx:"",Rx([$b(["(",Sx($b([", "]),ZP),")"]),$b(["(",Sx($b([",",Tx]),ZP.slice(0,-1)),1$l(M_,WP,JP),WP)}),M_.call(V_=>ZP(V_),"callee")):"MemberExpression"===Y_.type?($P.unshift({node:Y_,printed:Wb.printComments(M_,()=>Up(M_,WP,JP),WP)}),M_.call(V_=>ZP(V_),"object")):$P.unshift({node:Y_,printed:M_.call(JP)})}function KP(M_){return $b(M_.map(Y_=>Y_.printed))}function QP(M_,Y_){return Lx(WP.tabWidth,Ix($b([Y_,Sx(Y_,M_.map(KP))])))}const $P=[];$P.unshift({node:XP.getValue(),printed:$l(XP,WP,JP)}),XP.call(M_=>ZP(M_),"callee");for(var S_=[],T_=[$P[0]],P_=1;P_<$P.length&&"CallExpression"===$P[P_].node.type;++P_)T_.push($P[P_]);for(;P_+1<$P.length&&"MemberExpression"===$P[P_].node.type&&"MemberExpression"===$P[P_+1].node.type;++P_)T_.push($P[P_]);S_.push(T_),T_=[];for(var __=!1;P_<$P.length;++P_){if(__&&"MemberExpression"===$P[P_].node.type){if($P[P_].node.computed){T_.push($P[P_]);continue}S_.push(T_),T_=[],__=!1}"CallExpression"===$P[P_].node.type&&(__=!0),T_.push($P[P_])}0=S_.length&&!R_)return Ix(L_);const O_=$b([KP(S_[0]),N_?QP(S_.slice(1,2),""):"",QP(S_.slice(N_?2:1),Px)]);return R_?Ix(O_):I_.slice(0,-1).some(Ux)?Ix(O_):Rx([L_,O_])}function Wp(XP){if(0===XP.children.length)return!0;if(1{const L_=I_.match(/\n/g);if(L_)return QP.push(Px),void(1{if(R_===QP){if(0===O_)return void __.unshift(R_);if(O_===$P.length-1)return void __.push(R_)}let M_=$P[O_-1];M_&&Ux(M_)?(S_=!0,__.push([R_])):Zb.getLast(__).push(R_),!S_&&O_===$P.length-1&&Ux(R_)&&(S_=!0)});const N_=[Px,$b(__.map(R_=>Array.isArray(R_)?Rx([$b(R_)]):R_))],I_=XP.call(JP,"closingElement"),L_=Ix($b([KP,Lx(WP.tabWidth,Ix($b(N_),{shouldBreak:!0})),Px,I_]));return S_?L_:Rx([Ix($b([KP,$b($P),I_])),L_])}function Kp(XP,WP,JP){const ZP=XP.getParentNode();return ZP?{JSXElement:!0,ExpressionStatement:!0,CallExpression:!0,ConditionalExpression:!0,LogicalExpression:!0}[ZP.type]?WP:Ix($b([Ox("("),Lx(JP.tabWidth,$b([_x,WP])),_x,Ox(")")])):WP}function Qp(XP){return"BinaryExpression"===XP.type||"LogicalExpression"===XP.type}function $p(XP){return"LogicalExpression"===XP.type&&("ObjectExpression"===XP.right.type||"ArrayExpression"===XP.right.type)}function Sd(XP,WP,JP,ZP,KP){let QP=XP.getValue();if(Qp(QP)){Zb.getPrecedence(QP.left.operator)===Zb.getPrecedence(QP.operator)?XP.call(P_=>Sd(P_,WP,JP,ZP,!0),"left"):WP.push(XP.call(JP,"left"));const $P=$b([QP.operator,$p(QP)?" ":Tx,XP.call(JP,"right")]),S_=XP.getParentNode(),T_="BinaryExpression"===QP.type&&"BinaryExpression"!==S_.type&&"BinaryExpression"!==QP.left.type&&"BinaryExpression"!==QP.right.type;WP.push(" ",T_?Ix($P):$P),KP&&QP.comments&&WP.push(Wb.printComments(XP,()=>"",ZP))}else WP.push(XP.call(JP));return WP}function Td(XP,WP,JP){return""===XP?";":Pd(XP)||JP?$b([" ",XP]):Lx(WP.tabWidth,$b([Tx,XP]))}function Pd(XP){const WP=Wx(XP);return"{"===WP||"{}"===WP}function _d(XP){const WP=Wx(XP);return"{}"===WP}function Nd(XP,WP){const JP=XP.value;if(Qx.assert(JP),"flow"===WP.parser&&-1!==JP.indexOf("\uFFFD"))return XP.raw;const ZP=XP.extra?XP.extra.raw:XP.raw,KP=ZP.slice(1,-1),QP={quote:"\"",regex:/"/g},$P={quote:"'",regex:/'/g},S_=WP.singleQuote?$P:QP,T_=S_===$P?QP:$P;let P_=!1;if(KP.includes(S_.quote)){const N_=(KP.match(S_.regex)||[]).length,I_=(KP.match(T_.regex)||[]).length;P_=N_>I_}const __=P_?T_.quote:S_.quote;return Ld(KP,__)}function Ld(XP,WP){const JP="\""===WP?"'":"\"",ZP=/\\([\s\S])|(['"])/g,KP=XP.replace(ZP,(QP,$P,S_)=>{return $P===JP?$P:S_===WP?"\\"+S_:QP});return WP+KP+WP}function Rd(XP){return XP.toLowerCase().replace(/^([\d.]+e)(?:\+|(-))?0*/,"$1$2").replace(/^\./,"0.").replace(/\.(?=e|$)/,"")}function Od(XP){const WP=XP.getParentNode(),JP=XP.getValue(),ZP=WP.body;return ZP&&ZP[ZP.length-1]===JP}function Md(XP){return"ObjectTypeProperty"===XP.type&&"FunctionTypeAnnotation"===XP.value.type&&!XP.static&&Zb.locStart(XP.key)!==Zb.locStart(XP.value)}function Yd(XP,WP){return!("flow"!==WP.parser)&&WP.originalText.slice(0,Zb.locStart(XP)).match(/declare\s*$/)}function Vd(XP,WP,JP){let ZP=WP.length;for(const KP=[XP];0<=JP;){if(0===KP.length){if(0===ZP)return!0;KP.push(WP[ZP-1]),ZP--;continue}const $P=KP.pop(),S_=$P[0],T_=$P[1],P_=$P[2];if("string"==typeof P_)JP-=P_.length;else switch(P_.type){case"concat":for(var QP=P_.parts.length-1;0<=QP;QP--)KP.push([S_,T_,P_.parts[QP]]);break;case"indent":KP.push([S_+P_.n,T_,P_.contents]);break;case"group":KP.push([S_,P_.break?$x:T_,P_.contents]);break;case"if-break":T_===$x&&P_.breakContents&&KP.push([S_,T_,P_.breakContents]),T_===SS&&P_.flatContents&&KP.push([S_,T_,P_.flatContents]);break;case"line":switch(T_){case SS:if(!P_.hard){P_.soft||(JP-=1);break}case $x:return!0;}}}return!1}function Ud(){var XP={};for(var WP=NS.length,JP=0;JP1/XP?"-0":""+XP:"NaN"}function Sc(XP,WP){return WP?""===XP.name?"[Function anonymous]":"[Function "+XP.name+"]":"[Function]"}function Tc(XP){return WS.call(XP).replace(JS,"Symbol($1)")}function Pc(XP){return"["+US.call(XP)+"]"}function _c(XP,WP,JP){if(!0===XP||!1===XP)return""+XP;if(void 0===XP)return"undefined";if(null===XP)return"null";const ZP=typeof XP;if("number"==ZP)return $d(XP);if("string"==ZP)return"\""+XP.replace(/"|\\/g,"\\$&")+"\"";if("function"==ZP)return Sc(XP,WP);if("symbol"==ZP)return Tc(XP);const KP=YS.call(XP);return"[object WeakMap]"===KP?"WeakMap {}":"[object WeakSet]"===KP?"WeakSet {}":"[object Function]"===KP||"[object GeneratorFunction]"===KP?Sc(XP,WP):"[object Symbol]"===KP?Tc(XP):"[object Date]"===KP?VS.call(XP):"[object Error]"===KP?Pc(XP):"[object RegExp]"===KP?JP?XS.call(XP).replace(/[\\^$*+?.()|[\]{}]/g,"\\$&"):XS.call(XP):"[object Arguments]"===KP&&0===XP.length?"Arguments []":Qd(KP)&&0===XP.length?XP.constructor.name+" []":!!(XP instanceof Error)&&Pc(XP)}function Nc(XP,WP,JP,ZP,KP,QP,$P,S_,T_,P_,__,N_,I_,L_){let R_="";if(XP.length){R_+=KP;const O_=JP+WP;for(let M_=0;M_ "+U_,M_=O_.next(),M_.done||(R_+=","+ZP)}R_+=(P_?"":",")+KP+JP}return R_+"}"}function Mc(XP,WP,JP,ZP,KP,QP,$P,S_,T_,P_,__,N_,I_,L_){const R_=P_?"":XP.constructor?XP.constructor.name+" ":"Object ";let O_=R_+"{",M_=Object.keys(XP).sort();const Y_=KS(XP);if(Y_.length&&(M_=M_.filter(V_=>"symbol"!=typeof V_&&"[object Symbol]"!==YS.call(V_)).concat(Y_)),M_.length){O_+=KP;const V_=JP+WP;for(let U_=0;U_$P;if(__&&!R_&&XP.toJSON&&"function"==typeof XP.toJSON)return Xc(XP.toJSON(),WP,JP,ZP,KP,QP,$P,S_,T_,P_,__,N_,I_,L_);const O_=YS.call(XP);return"[object Arguments]"===O_?R_?"[Arguments]":Lc(XP,WP,JP,ZP,KP,QP,$P,S_,T_,P_,__,N_,I_,L_):Qd(O_)?R_?"[Array]":Rc(XP,WP,JP,ZP,KP,QP,$P,S_,T_,P_,__,N_,I_,L_):"[object Map]"===O_?R_?"[Map]":Oc(XP,WP,JP,ZP,KP,QP,$P,S_,T_,P_,__,N_,I_,L_):"[object Set]"===O_?R_?"[Set]":Yc(XP,WP,JP,ZP,KP,QP,$P,S_,T_,P_,__,N_,I_,L_):R_?"[Object]":Mc(XP,WP,JP,ZP,KP,QP,$P,S_,T_,P_,__,N_,I_,L_)}function Uc(XP,WP,JP,ZP,KP,QP,$P,S_,T_,P_,__,N_,I_,L_){let R_=!1,O_;for(let M_=0;M_{if(!QS.hasOwnProperty(WP))throw new Error("prettyFormat: Invalid option: "+WP)}),XP.min&&void 0!==XP.indent&&0!==XP.indent)throw new Error("prettyFormat: Cannot run with min option and indent")}function Jc(XP){const WP={};return Object.keys(QS).forEach(JP=>WP[JP]=XP.hasOwnProperty(JP)?XP[JP]:QS[JP]),WP.min&&(WP.indent=0),WP}function Zc(XP){return Array(XP+1).join(" ")}function Kc(XP){if("concat"===XP.type){var WP=[];for(var JP=0;JP{if(!WP.printed)throw new Error("Comment \""+WP.value.trim()+"\" was not printed. Please report this error!");delete WP.printed})}function _u(XP,WP){const JP=Su(XP,WP),ZP=Tu(XP,JP,WP),KP=OP(JP,WP),QP=MP(KP,WP.printWidth,$c(XP));return Pu(ZP),QP}function Nu(XP,WP){if(!XP.startsWith("#!"))return _u(XP,WP);const JP=XP.indexOf("\n"),ZP=XP.slice(0,JP+1),KP=XP.slice(JP+1),QP=XP.charAt(JP+1),$P="\n"===QP?"\n":"\r"===QP?"\r\n":"";return ZP+$P+_u(KP,WP)}var Iu=Se(function(XP,WP){Object.defineProperty(WP,"__esModule",{value:!0}),WP.default=/((['"])(?:(?!\2|\\).|\\(?:\r\n|[\s\S]))*(\2)?|`(?:[^`\\$]|\\[\s\S]|\$(?!\{)|\$\{(?:[^{}]|\{[^}]*\}?)*\}?)*(`)?)|(\/\/.*)|(\/\*(?:[^*]|\*(?!\/))*(\*\/)?)|(\/(?!\*)(?:\[(?:(?![\]\\]).|\\.)*\]|(?![\/\]\\]).|\\.)+\/(?:(?!\s*(?:\b|[\u0080-\uFFFF$\\'"~({]|[+\-!](?!=)|\.?\d))|[gmiyu]{1,5}\b(?![\u0080-\uFFFF$\\]|\s*(?:[+\-*%&|^<>!=?({]|\/(?![\/*])))))|(0[xX][\da-fA-F]+|0[oO][0-7]+|0[bB][01]+|(?:\d*\.\d+|\d+\.?)(?:[eE][+-]?\d+)?)|((?!\d)(?:(?!\s)[$\w\u0080-\uFFFF]|\\u[\da-fA-F]{4}|\\u\{[\da-fA-F]{1,6}\})+)|(--|\+\+|&&|\|\||=>|\.{3}|(?:[+\-\/%&|^]|\*{1,2}|<{1,2}|>{1,3}|!=?|={1,2})=?|[?~.,:;[\](){}])|(\s+)|(^$|[\s\S])/g,WP.matchToToken=function(JP){var ZP={type:"invalid",value:JP[0]};return JP[1]?(ZP.type="string",ZP.closed=!!(JP[3]||JP[4])):JP[5]?ZP.type="comment":JP[6]?(ZP.type="comment",ZP.closed=!!JP[7]):JP[8]?ZP.type="regex":JP[9]?ZP.type="number":JP[10]?ZP.type="name":JP[11]?ZP.type="punctuator":JP[12]&&(ZP.type="whitespace"),ZP}}),Lu=Se(function(XP){(function(){"use strict";function WP(ZP){if(null==ZP)return!1;switch(ZP.type){case"BlockStatement":case"BreakStatement":case"ContinueStatement":case"DebuggerStatement":case"DoWhileStatement":case"EmptyStatement":case"ExpressionStatement":case"ForInStatement":case"ForStatement":case"IfStatement":case"LabeledStatement":case"ReturnStatement":case"SwitchStatement":case"ThrowStatement":case"TryStatement":case"VariableDeclaration":case"WhileStatement":case"WithStatement":return!0;}return!1}function JP(ZP){switch(ZP.type){case"IfStatement":return null==ZP.alternate?ZP.consequent:ZP.alternate;case"LabeledStatement":case"ForStatement":case"ForInStatement":case"WhileStatement":case"WithStatement":return ZP.body;}return null}XP.exports={isExpression:function(KP){if(null==KP)return!1;switch(KP.type){case"ArrayExpression":case"AssignmentExpression":case"BinaryExpression":case"CallExpression":case"ConditionalExpression":case"FunctionExpression":case"Identifier":case"Literal":case"LogicalExpression":case"MemberExpression":case"NewExpression":case"ObjectExpression":case"SequenceExpression":case"ThisExpression":case"UnaryExpression":case"UpdateExpression":return!0;}return!1},isStatement:WP,isIterationStatement:function(KP){if(null==KP)return!1;switch(KP.type){case"DoWhileStatement":case"ForInStatement":case"ForStatement":case"WhileStatement":return!0;}return!1},isSourceElement:function(KP){return WP(KP)||null!=KP&&"FunctionDeclaration"===KP.type},isProblematicIfStatement:function(KP){var QP;if("IfStatement"!==KP.type)return!1;if(null==KP.alternate)return!1;QP=KP.consequent;do{if("IfStatement"===QP.type&&null==QP.alternate)return!0;QP=JP(QP)}while(QP);return!1},trailingStatement:JP}})()}),Ru=Se(function(XP){(function(){"use strict";function WP(T_){if(65535>=T_)return String.fromCharCode(T_);var P_=String.fromCharCode(Math.floor((T_-65536)/1024)+55296),__=String.fromCharCode((T_-65536)%1024+56320);return P_+__}var JP,ZP,KP,QP,$P,S_;for(ZP={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-\u08B2\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\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\u0C59\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\u0D60\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-\u13F4\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\u19C1-\u19C7\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\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA78E\uA790-\uA7AD\uA7B0\uA7B1\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\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-\uAB5F\uAB64\uAB65\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]/,NonAsciiIdentifierPart:/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u08A0-\u08B2\u08E4-\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\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\u0C59\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\u0D60-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1380-\u138F\u13A0-\u13F4\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19D9\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\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\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u2E2F\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099\u309A\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA69D\uA69F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA78E\uA790-\uA7AD\uA7B0\uA7B1\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C4\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\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-\uAB5F\uAB64\uAB65\uABC0-\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-\uFE2D\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]/},JP={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-\u08B2\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\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\u0C59\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\u0D60\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-\u13F4\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\u19C1-\u19C7\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-\u9FCC\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA78E\uA790-\uA7AD\uA7B0\uA7B1\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\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-\uAB5F\uAB64\uAB65\uABC0-\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\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]|\uD804[\uDC03-\uDC37\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDE00-\uDE11\uDE13-\uDE2B\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF5D-\uDF61]|\uD805[\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDE00-\uDE2F\uDE44\uDE80-\uDEAA]|\uD806[\uDCA0-\uDCDF\uDCFF\uDEC0-\uDEF8]|\uD808[\uDC00-\uDF98]|\uD809[\uDC00-\uDC6E]|[\uD80C\uD840-\uD868\uD86A-\uD86C][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\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]|\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-\u08B2\u08E4-\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\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\u0C59\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\u0D60-\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-\u13F4\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-\u9FCC\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA69D\uA69F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA78E\uA790-\uA7AD\uA7B0\uA7B1\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C4\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\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-\uAB5F\uAB64\uAB65\uABC0-\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-\uFE2D\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\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]|\uD804[\uDC00-\uDC46\uDC66-\uDC6F\uDC7F-\uDCBA\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD00-\uDD34\uDD36-\uDD3F\uDD50-\uDD73\uDD76\uDD80-\uDDC4\uDDD0-\uDDDA\uDE00-\uDE11\uDE13-\uDE37\uDEB0-\uDEEA\uDEF0-\uDEF9\uDF01-\uDF03\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3C-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF57\uDF5D-\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC80-\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDB5\uDDB8-\uDDC0\uDE00-\uDE40\uDE44\uDE50-\uDE59\uDE80-\uDEB7\uDEC0-\uDEC9]|\uD806[\uDCA0-\uDCE9\uDCFF\uDEC0-\uDEF8]|\uD808[\uDC00-\uDF98]|\uD809[\uDC00-\uDC6E]|[\uD80C\uD840-\uD868\uD86A-\uD86C][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\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]|\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]|\uD87E[\uDC00-\uDE1D]|\uDB40[\uDD00-\uDDEF]/},KP=[5760,6158,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8239,8287,12288,65279],QP=Array(128),S_=0;128>S_;++S_)QP[S_]=97<=S_&&122>=S_||65<=S_&&90>=S_||36===S_||95===S_;for($P=Array(128),S_=0;128>S_;++S_)$P[S_]=97<=S_&&122>=S_||65<=S_&&90>=S_||48<=S_&&57>=S_||36===S_||95===S_;XP.exports={isDecimalDigit:function(P_){return 48<=P_&&57>=P_},isHexDigit:function(P_){return 48<=P_&&57>=P_||97<=P_&&102>=P_||65<=P_&&70>=P_},isOctalDigit:function(P_){return 48<=P_&&55>=P_},isWhiteSpace:function(P_){return 32===P_||9===P_||11===P_||12===P_||160===P_||5760<=P_&&0<=KP.indexOf(P_)},isLineTerminator:function(P_){return 10===P_||13===P_||8232===P_||8233===P_},isIdentifierStartES5:function(P_){return 128>P_?QP[P_]:ZP.NonAsciiIdentifierStart.test(WP(P_))},isIdentifierPartES5:function(P_){return 128>P_?$P[P_]:ZP.NonAsciiIdentifierPart.test(WP(P_))},isIdentifierStartES6:function(P_){return 128>P_?QP[P_]:JP.NonAsciiIdentifierStart.test(WP(P_))},isIdentifierPartES6:function(P_){return 128>P_?$P[P_]:JP.NonAsciiIdentifierPart.test(WP(P_))}}})()}),Ou=Se(function(XP){(function(){"use strict";function WP(__){return"implements"===__||"interface"===__||"package"===__||"private"===__||"protected"===__||"public"===__||"static"===__||"let"===__}function JP(__,N_){return(N_||"yield"!==__)&&ZP(__,N_)}function ZP(__,N_){if(N_&&WP(__))return!0;switch(__.length){case 2:return"if"===__||"in"===__||"do"===__;case 3:return"var"===__||"for"===__||"new"===__||"try"===__;case 4:return"this"===__||"else"===__||"case"===__||"void"===__||"with"===__||"enum"===__;case 5:return"while"===__||"break"===__||"catch"===__||"throw"===__||"const"===__||"yield"===__||"class"===__||"super"===__;case 6:return"return"===__||"typeof"===__||"delete"===__||"switch"===__||"export"===__||"import"===__;case 7:return"default"===__||"finally"===__||"extends"===__;case 8:return"function"===__||"continue"===__||"debugger"===__;case 10:return"instanceof"===__;default:return!1;}}function KP(__,N_){return"null"===__||"true"===__||"false"===__||JP(__,N_)}function QP(__,N_){return"null"===__||"true"===__||"false"===__||ZP(__,N_)}function $P(__){var N_,I_,L_;if(0===__.length)return!1;if(L_=__.charCodeAt(0),!P_.isIdentifierStartES5(L_))return!1;for(N_=1,I_=__.length;N_=L_){if(++N_,N_>=I_)return!1;if(R_=__.charCodeAt(N_),!(56320<=R_&&57343>=R_))return!1;L_=S_(L_,R_)}if(!O_(L_))return!1;O_=P_.isIdentifierPartES6}return!0}var P_=Ru;XP.exports={isKeywordES5:JP,isKeywordES6:ZP,isReservedWordES5:KP,isReservedWordES6:QP,isRestrictedWord:function(N_){return"eval"===N_||"arguments"===N_},isIdentifierNameES5:$P,isIdentifierNameES6:T_,isIdentifierES5:function(N_,I_){return $P(N_)&&!KP(N_,I_)},isIdentifierES6:function(N_,I_){return T_(N_)&&!QP(N_,I_)}}})()}),Mu=Se(function(XP,WP){(function(){"use strict";WP.ast=Lu,WP.code=Ru,WP.keyword=Ou})()}),Yu="undefined"==typeof global?"undefined"==typeof self?"undefined"==typeof window?{}:window:self:global,Vu=Te,Uu=Pe;"function"==typeof Yu.setTimeout&&(Vu=setTimeout),"function"==typeof Yu.clearTimeout&&(Uu=clearTimeout);var Xu=[],Wu=!1,Ju,Zu=-1;Oe.prototype.run=function(){this.fun.apply(null,this.array)};var Ku=Yu.performance||{},Qu=Ku.now||Ku.mozNow||Ku.msNow||Ku.oNow||Ku.webkitNow||function(){return new Date().getTime()},$u=new Date,Sm={nextTick:function(WP){var JP=Array(arguments.length-1);if(1KP&&(ZP--,KP+=1e9)),[ZP,KP]},platform:"browser",release:{},config:{},uptime:function(){var WP=new Date;return(WP-$u)/1e3}},Tm=/[|\\{}()[\]^$+*?.]/g,Pm=Se(function(XP){"use strict";Object.defineProperty(XP,"exports",{enumerable:!0,get:function(){var JP={modifiers:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},colors:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],gray:[90,39]},bgColors:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49]}};return JP.colors.grey=JP.colors.gray,Object.keys(JP).forEach(function(ZP){var KP=JP[ZP];Object.keys(KP).forEach(function(QP){var $P=KP[QP];JP[QP]=KP[QP]={open:"\x1B["+$P[0]+"m",close:"\x1B["+$P[1]+"m"}}),Object.defineProperty(JP,ZP,{value:KP,enumerable:!1})}),JP}})}),_m=function(){return /[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/g},Nm=_m(),Lm=new RegExp(_m().source),Rm=Lm.test.bind(Lm),Om=Sm.argv,Mm=Om.indexOf("--"),Ym=function(XP){XP="--"+XP;var WP=Om.indexOf(XP);return-1!==WP&&(!(-1!==Mm)||WP"),U_(X_.gutter,IN),TN,LN].join("")}return" "+U_(X_.gutter,IN)+TN}).join("\n");return Y_?V_.reset(SN):SN};var $P=Iu,S_=JP($P),T_=JP(Mu),P_=JP($m),__=/\r\n|[\n\r\u2028\u2029]/,N_=/^[a-z][\w-]*$/i,I_=/^[()\[\]{}]$/;XP.exports=WP["default"]}),Tf=[],Pf=[],_f="undefined"==typeof Uint8Array?Array:Uint8Array,Nf=!1,Lf={}.toString,Rf=Array.isArray||function(XP){return"[object Array]"==Lf.call(XP)};Pt.TYPED_ARRAY_SUPPORT=!(Yu.TYPED_ARRAY_SUPPORT!==void 0)||Yu.TYPED_ARRAY_SUPPORT,Pt.poolSize=8192,Pt._augment=function(XP){return XP.__proto__=Pt.prototype,XP},Pt.from=function(XP,WP,JP){return _t(null,XP,WP,JP)},Pt.TYPED_ARRAY_SUPPORT&&(Pt.prototype.__proto__=Uint8Array.prototype,Pt.__proto__=Uint8Array,"undefined"!=typeof Symbol&&Symbol.species&&Pt[Symbol.species]===Pt),Pt.alloc=function(XP,WP,JP){return It(null,XP,WP,JP)},Pt.allocUnsafe=function(XP){return Lt(null,XP)},Pt.allocUnsafeSlow=function(XP){return Lt(null,XP)},Pt.isBuffer=Mn,Pt.compare=function(WP,JP){if(!Ut(WP)||!Ut(JP))throw new TypeError("Arguments must be Buffers");if(WP===JP)return 0;var ZP=WP.length,KP=JP.length;for(var QP=0,$P=Math.min(ZP,KP);QP<$P;++QP)if(WP[QP]!==JP[QP]){ZP=WP[QP],KP=JP[QP];break}return ZPJP&&(WP+=" ... ")),""},Pt.prototype.compare=function(WP,JP,ZP,KP,QP){if(!Ut(WP))throw new TypeError("Argument must be a Buffer");if(void 0===JP&&(JP=0),void 0===ZP&&(ZP=WP?WP.length:0),void 0===KP&&(KP=0),void 0===QP&&(QP=this.length),0>JP||ZP>WP.length||0>KP||QP>this.length)throw new RangeError("out of range index");if(KP>=QP&&JP>=ZP)return 0;if(KP>=QP)return-1;if(JP>=ZP)return 1;if(JP>>>=0,ZP>>>=0,KP>>>=0,QP>>>=0,this===WP)return 0;var $P=QP-KP,S_=ZP-JP,T_=Math.min($P,S_),P_=this.slice(KP,QP),__=WP.slice(JP,ZP);for(var N_=0;N_QP)&&(ZP=QP),0ZP||0>JP)||JP>this.length)throw new RangeError("Attempt to write outside buffer bounds");KP||(KP="utf8");for(var $P=!1;;)switch(KP){case"hex":return Qt(this,WP,JP,ZP);case"utf8":case"utf-8":return $t(this,WP,JP,ZP);case"ascii":return Sa(this,WP,JP,ZP);case"latin1":case"binary":return Ta(this,WP,JP,ZP);case"base64":return Pa(this,WP,JP,ZP);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return _a(this,WP,JP,ZP);default:if($P)throw new TypeError("Unknown encoding: "+KP);KP=(""+KP).toLowerCase(),$P=!0;}},Pt.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var Of=4096;Pt.prototype.slice=function(WP,JP){var ZP=this.length;WP=~~WP,JP=JP===void 0?ZP:~~JP,0>WP?(WP+=ZP,0>WP&&(WP=0)):WP>ZP&&(WP=ZP),0>JP?(JP+=ZP,0>JP&&(JP=0)):JP>ZP&&(JP=ZP),JP=QP&&(KP-=Math.pow(2,8*JP)),KP},Pt.prototype.readIntBE=function(WP,JP,ZP){WP|=0,JP|=0,ZP||Ua(WP,JP,this.length);for(var KP=JP,QP=1,$P=this[WP+--KP];0=QP&&($P-=Math.pow(2,8*JP)),$P},Pt.prototype.readInt8=function(WP,JP){return JP||Ua(WP,1,this.length),128&this[WP]?-1*(255-this[WP]+1):this[WP]},Pt.prototype.readInt16LE=function(WP,JP){JP||Ua(WP,2,this.length);var ZP=this[WP]|this[WP+1]<<8;return 32768&ZP?4294901760|ZP:ZP},Pt.prototype.readInt16BE=function(WP,JP){JP||Ua(WP,2,this.length);var ZP=this[WP+1]|this[WP]<<8;return 32768&ZP?4294901760|ZP:ZP},Pt.prototype.readInt32LE=function(WP,JP){return JP||Ua(WP,4,this.length),this[WP]|this[WP+1]<<8|this[WP+2]<<16|this[WP+3]<<24},Pt.prototype.readInt32BE=function(WP,JP){return JP||Ua(WP,4,this.length),this[WP]<<24|this[WP+1]<<16|this[WP+2]<<8|this[WP+3]},Pt.prototype.readFloatLE=function(WP,JP){return JP||Ua(WP,4,this.length),Qe(this,WP,!0,23,4)},Pt.prototype.readFloatBE=function(WP,JP){return JP||Ua(WP,4,this.length),Qe(this,WP,!1,23,4)},Pt.prototype.readDoubleLE=function(WP,JP){return JP||Ua(WP,8,this.length),Qe(this,WP,!0,52,8)},Pt.prototype.readDoubleBE=function(WP,JP){return JP||Ua(WP,8,this.length),Qe(this,WP,!1,52,8)},Pt.prototype.writeUIntLE=function(WP,JP,ZP,KP){if(WP=+WP,JP|=0,ZP|=0,!KP){var QP=Math.pow(2,8*ZP)-1;Xa(this,WP,JP,ZP,QP,0)}var $P=1,S_=0;for(this[JP]=255&WP;++S_>>8):Wa(this,WP,JP,!0),JP+2},Pt.prototype.writeUInt16BE=function(WP,JP,ZP){return WP=+WP,JP|=0,ZP||Xa(this,WP,JP,2,65535,0),Pt.TYPED_ARRAY_SUPPORT?(this[JP]=WP>>>8,this[JP+1]=255&WP):Wa(this,WP,JP,!1),JP+2},Pt.prototype.writeUInt32LE=function(WP,JP,ZP){return WP=+WP,JP|=0,ZP||Xa(this,WP,JP,4,4294967295,0),Pt.TYPED_ARRAY_SUPPORT?(this[JP+3]=WP>>>24,this[JP+2]=WP>>>16,this[JP+1]=WP>>>8,this[JP]=255&WP):Ja(this,WP,JP,!0),JP+4},Pt.prototype.writeUInt32BE=function(WP,JP,ZP){return WP=+WP,JP|=0,ZP||Xa(this,WP,JP,4,4294967295,0),Pt.TYPED_ARRAY_SUPPORT?(this[JP]=WP>>>24,this[JP+1]=WP>>>16,this[JP+2]=WP>>>8,this[JP+3]=255&WP):Ja(this,WP,JP,!1),JP+4},Pt.prototype.writeIntLE=function(WP,JP,ZP,KP){if(WP=+WP,JP|=0,!KP){var QP=Math.pow(2,8*ZP-1);Xa(this,WP,JP,ZP,QP-1,-QP)}var $P=0,S_=1,T_=0;for(this[JP]=255&WP;++$PWP&&0==T_&&0!==this[JP+$P-1]&&(T_=1),this[JP+$P]=255&(WP/S_>>0)-T_;return JP+ZP},Pt.prototype.writeIntBE=function(WP,JP,ZP,KP){if(WP=+WP,JP|=0,!KP){var QP=Math.pow(2,8*ZP-1);Xa(this,WP,JP,ZP,QP-1,-QP)}var $P=ZP-1,S_=1,T_=0;for(this[JP+$P]=255&WP;0<=--$P&&(S_*=256);)0>WP&&0==T_&&0!==this[JP+$P+1]&&(T_=1),this[JP+$P]=255&(WP/S_>>0)-T_;return JP+ZP},Pt.prototype.writeInt8=function(WP,JP,ZP){return WP=+WP,JP|=0,ZP||Xa(this,WP,JP,1,127,-128),Pt.TYPED_ARRAY_SUPPORT||(WP=Math.floor(WP)),0>WP&&(WP=255+WP+1),this[JP]=255&WP,JP+1},Pt.prototype.writeInt16LE=function(WP,JP,ZP){return WP=+WP,JP|=0,ZP||Xa(this,WP,JP,2,32767,-32768),Pt.TYPED_ARRAY_SUPPORT?(this[JP]=255&WP,this[JP+1]=WP>>>8):Wa(this,WP,JP,!0),JP+2},Pt.prototype.writeInt16BE=function(WP,JP,ZP){return WP=+WP,JP|=0,ZP||Xa(this,WP,JP,2,32767,-32768),Pt.TYPED_ARRAY_SUPPORT?(this[JP]=WP>>>8,this[JP+1]=255&WP):Wa(this,WP,JP,!1),JP+2},Pt.prototype.writeInt32LE=function(WP,JP,ZP){return WP=+WP,JP|=0,ZP||Xa(this,WP,JP,4,2147483647,-2147483648),Pt.TYPED_ARRAY_SUPPORT?(this[JP]=255&WP,this[JP+1]=WP>>>8,this[JP+2]=WP>>>16,this[JP+3]=WP>>>24):Ja(this,WP,JP,!0),JP+4},Pt.prototype.writeInt32BE=function(WP,JP,ZP){return WP=+WP,JP|=0,ZP||Xa(this,WP,JP,4,2147483647,-2147483648),0>WP&&(WP=4294967295+WP+1),Pt.TYPED_ARRAY_SUPPORT?(this[JP]=WP>>>24,this[JP+1]=WP>>>16,this[JP+2]=WP>>>8,this[JP+3]=255&WP):Ja(this,WP,JP,!1),JP+4},Pt.prototype.writeFloatLE=function(WP,JP,ZP){return Ka(this,WP,JP,!0,ZP)},Pt.prototype.writeFloatBE=function(WP,JP,ZP){return Ka(this,WP,JP,!1,ZP)},Pt.prototype.writeDoubleLE=function(WP,JP,ZP){return Qa(this,WP,JP,!0,ZP)},Pt.prototype.writeDoubleBE=function(WP,JP,ZP){return Qa(this,WP,JP,!1,ZP)},Pt.prototype.copy=function(WP,JP,ZP,KP){if(ZP||(ZP=0),KP||0===KP||(KP=this.length),JP>=WP.length&&(JP=WP.length),JP||(JP=0),0JP)throw new RangeError("targetStart out of bounds");if(0>ZP||ZP>=this.length)throw new RangeError("sourceStart out of bounds");if(0>KP)throw new RangeError("sourceEnd out of bounds");KP>this.length&&(KP=this.length),WP.length-JPQP||!Pt.TYPED_ARRAY_SUPPORT)for($P=0;$PQP&&(WP=QP)}if(void 0!==KP&&"string"!=typeof KP)throw new TypeError("encoding must be a string");if("string"==typeof KP&&!Pt.isEncoding(KP))throw new TypeError("Unknown encoding: "+KP)}else"number"==typeof WP&&(WP&=255);if(0>JP||this.length>>=0,ZP=ZP===void 0?this.length:ZP>>>0,WP||(WP=0);var $P;if("number"==typeof WP)for($P=JP;$PIN.indexOf(RN)&&IN.push(RN)}),this},Object.defineProperty($_,"buildable",{value:!1});var SN={};L_.builders=SN;var TN={};L_.defineMethod=function(NN,IN){var LN=TN[NN];return Z_.check(IN)?delete TN[NN]:(U_.assert(IN),Object.defineProperty(TN,NN,{enumerable:!0,configurable:!0,value:IN})),LN};var PN=V_.arrayOf();$_.build=function(){var NN=this,IN=$f.call(arguments);return(PN.assert(IN),Object.defineProperty(NN,"buildParams",{value:IN,writable:!1,enumerable:!1,configurable:!0}),NN.buildable)?NN:(NN.field("type",String,function(){return NN.typeName}),Object.defineProperty(NN,"buildable",{value:!0}),Object.defineProperty(SN,$P(NN.typeName),{enumerable:!0,value:function(){function LN(YN,VN){if(!_h.call(MN,YN)){var UN=NN.allFields;if(!_h.call(UN,YN))throw new Error(""+YN);var XN=UN[YN],WN=XN.type,JN;if(J_.check(VN)&&VNO_)return KP;var M_=arguments.length;2===M_?(L_=0,R_=O_):3===M_?(L_=Math.max(L_,0),R_=O_):(L_=Math.max(L_,0),R_=Math.min(R_,O_)),P_.assert(L_),P_.assert(R_);var Y_=Object.create(null),V_=JP(N_);for(var U_=L_;U_J_)return!0;if(Y_===J_&&"right"===this.name){if(U_.right!==V_)throw new Error("Nodes must be equal");return!0}default:return!1;}case"SequenceExpression":switch(U_.type){case"ForStatement":return!1;case"ExpressionStatement":return"expression"!==this.name;default:return!0;}case"YieldExpression":switch(U_.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"===U_.type&&__.check(V_.value)&&"object"===this.name&&U_.object===V_;case"AssignmentExpression":case"ConditionalExpression":switch(U_.type){case"UnaryExpression":case"SpreadElement":case"SpreadProperty":case"BinaryExpression":case"LogicalExpression":return!0;case"CallExpression":return"callee"===this.name&&U_.callee===V_;case"ConditionalExpression":return"test"===this.name&&U_.test===V_;case"MemberExpression":return"object"===this.name&&U_.object===V_;default:return!1;}default:if("NewExpression"===U_.type&&"callee"===this.name&&U_.callee===V_)return ZP(V_);}return!0!==M_&&!this.canBeFirstInStatement()&&this.firstInStatement()};var O_={};return[["||"],["&&"],["|"],["^"],["&"],["==","===","!=","!=="],["<",">","<=",">=","in","instanceof"],[">>","<<",">>>"],["+","-"],["*","/","%"]].forEach(function(M_,Y_){M_.forEach(function(V_){O_[V_]=Y_})}),R_.canBeFirstInStatement=function(){var M_=this.node;return!T_.FunctionExpression.check(M_)&&!T_.ObjectExpression.check(M_)},R_.firstInStatement=function(){return KP(this)},WP},Uh=Object.prototype.hasOwnProperty,Xh=function(XP){function WP(){if(!(this instanceof WP))throw new Error("PathVisitor constructor cannot be invoked without 'new'");this._reusableContextStack=[],this._methodNameTable=JP(this),this._shouldVisitComments=Uh.call(this._methodNameTable,"Block")||Uh.call(this._methodNameTable,"Line"),this.Context=QP(this),this._visiting=!1,this._changeReported=!1}function JP(R_){var O_=Object.create(null);for(var M_ in R_)/^visit[A-Z]/.test(M_)&&(O_[M_.slice("visit".length)]=!0);var Y_=$P.computeSupertypeLookupTable(O_),V_=Object.create(null),O_=Object.keys(Y_),U_=O_.length;for(var X_=0;X_Y_.indexOf("comments")&&Y_.push("comments");var V_=Y_.length,U_=[];for(var X_=0;X_=S_},QP+" >= "+S_)},WP.defaults={"null":function(){return null},emptyArray:function(){return[]},"false":function(){return!1},"true":function(){return!0},undefined:function(){}};var $P=ZP.or(KP.string,KP.number,KP.boolean,KP.null,KP.undefined);return WP.isPrimitive=new ZP(function(S_){if(null===S_)return!0;var T_=typeof S_;return"object"!=T_&&"function"!=T_},$P.toString()),WP},Jh=function(XP){var WP=XP.use(Nh),JP=WP.Type,ZP=JP.def,KP=JP.or,QP=XP.use(Wh),$P=QP.defaults,S_=QP.geq;ZP("Printable").field("loc",KP(ZP("SourceLocation"),null),$P["null"],!0),ZP("Node").bases("Printable").field("type",String).field("comments",KP([ZP("Comment")],null),$P["null"],!0),ZP("SourceLocation").build("start","end","source").field("start",ZP("Position")).field("end",ZP("Position")).field("source",KP(String,null),$P["null"]),ZP("Position").build("line","column").field("line",S_(1)).field("column",S_(0)),ZP("File").bases("Node").build("program","name").field("program",ZP("Program")).field("name",KP(String,null),$P["null"]),ZP("Program").bases("Node").build("body").field("body",[ZP("Statement")]),ZP("Function").bases("Node").field("id",KP(ZP("Identifier"),null),$P["null"]).field("params",[ZP("Pattern")]).field("body",ZP("BlockStatement")),ZP("Statement").bases("Node"),ZP("EmptyStatement").bases("Statement").build(),ZP("BlockStatement").bases("Statement").build("body").field("body",[ZP("Statement")]),ZP("ExpressionStatement").bases("Statement").build("expression").field("expression",ZP("Expression")),ZP("IfStatement").bases("Statement").build("test","consequent","alternate").field("test",ZP("Expression")).field("consequent",ZP("Statement")).field("alternate",KP(ZP("Statement"),null),$P["null"]),ZP("LabeledStatement").bases("Statement").build("label","body").field("label",ZP("Identifier")).field("body",ZP("Statement")),ZP("BreakStatement").bases("Statement").build("label").field("label",KP(ZP("Identifier"),null),$P["null"]),ZP("ContinueStatement").bases("Statement").build("label").field("label",KP(ZP("Identifier"),null),$P["null"]),ZP("WithStatement").bases("Statement").build("object","body").field("object",ZP("Expression")).field("body",ZP("Statement")),ZP("SwitchStatement").bases("Statement").build("discriminant","cases","lexical").field("discriminant",ZP("Expression")).field("cases",[ZP("SwitchCase")]).field("lexical",Boolean,$P["false"]),ZP("ReturnStatement").bases("Statement").build("argument").field("argument",KP(ZP("Expression"),null)),ZP("ThrowStatement").bases("Statement").build("argument").field("argument",ZP("Expression")),ZP("TryStatement").bases("Statement").build("block","handler","finalizer").field("block",ZP("BlockStatement")).field("handler",KP(ZP("CatchClause"),null),function(){return this.handlers&&this.handlers[0]||null}).field("handlers",[ZP("CatchClause")],function(){return this.handler?[this.handler]:[]},!0).field("guardedHandlers",[ZP("CatchClause")],$P.emptyArray).field("finalizer",KP(ZP("BlockStatement"),null),$P["null"]),ZP("CatchClause").bases("Node").build("param","guard","body").field("param",ZP("Pattern")).field("guard",KP(ZP("Expression"),null),$P["null"]).field("body",ZP("BlockStatement")),ZP("WhileStatement").bases("Statement").build("test","body").field("test",ZP("Expression")).field("body",ZP("Statement")),ZP("DoWhileStatement").bases("Statement").build("body","test").field("body",ZP("Statement")).field("test",ZP("Expression")),ZP("ForStatement").bases("Statement").build("init","test","update","body").field("init",KP(ZP("VariableDeclaration"),ZP("Expression"),null)).field("test",KP(ZP("Expression"),null)).field("update",KP(ZP("Expression"),null)).field("body",ZP("Statement")),ZP("ForInStatement").bases("Statement").build("left","right","body").field("left",KP(ZP("VariableDeclaration"),ZP("Expression"))).field("right",ZP("Expression")).field("body",ZP("Statement")),ZP("DebuggerStatement").bases("Statement").build(),ZP("Declaration").bases("Statement"),ZP("FunctionDeclaration").bases("Function","Declaration").build("id","params","body").field("id",ZP("Identifier")),ZP("FunctionExpression").bases("Function","Expression").build("id","params","body"),ZP("VariableDeclaration").bases("Declaration").build("kind","declarations").field("kind",KP("var","let","const")).field("declarations",[ZP("VariableDeclarator")]),ZP("VariableDeclarator").bases("Node").build("id","init").field("id",ZP("Pattern")).field("init",KP(ZP("Expression"),null)),ZP("Expression").bases("Node","Pattern"),ZP("ThisExpression").bases("Expression").build(),ZP("ArrayExpression").bases("Expression").build("elements").field("elements",[KP(ZP("Expression"),null)]),ZP("ObjectExpression").bases("Expression").build("properties").field("properties",[ZP("Property")]),ZP("Property").bases("Node").build("kind","key","value").field("kind",KP("init","get","set")).field("key",KP(ZP("Literal"),ZP("Identifier"))).field("value",ZP("Expression")),ZP("SequenceExpression").bases("Expression").build("expressions").field("expressions",[ZP("Expression")]);var T_=KP("-","+","!","~","typeof","void","delete");ZP("UnaryExpression").bases("Expression").build("operator","argument","prefix").field("operator",T_).field("argument",ZP("Expression")).field("prefix",Boolean,$P["true"]);var P_=KP("==","!=","===","!==","<","<=",">",">=","<<",">>",">>>","+","-","*","/","%","&","|","^","in","instanceof","..");ZP("BinaryExpression").bases("Expression").build("operator","left","right").field("operator",P_).field("left",ZP("Expression")).field("right",ZP("Expression"));var __=KP("=","+=","-=","*=","/=","%=","<<=",">>=",">>>=","|=","^=","&=");ZP("AssignmentExpression").bases("Expression").build("operator","left","right").field("operator",__).field("left",ZP("Pattern")).field("right",ZP("Expression"));var N_=KP("++","--");ZP("UpdateExpression").bases("Expression").build("operator","argument","prefix").field("operator",N_).field("argument",ZP("Expression")).field("prefix",Boolean);var I_=KP("||","&&");ZP("LogicalExpression").bases("Expression").build("operator","left","right").field("operator",I_).field("left",ZP("Expression")).field("right",ZP("Expression")),ZP("ConditionalExpression").bases("Expression").build("test","consequent","alternate").field("test",ZP("Expression")).field("consequent",ZP("Expression")).field("alternate",ZP("Expression")),ZP("NewExpression").bases("Expression").build("callee","arguments").field("callee",ZP("Expression")).field("arguments",[ZP("Expression")]),ZP("CallExpression").bases("Expression").build("callee","arguments").field("callee",ZP("Expression")).field("arguments",[ZP("Expression")]),ZP("MemberExpression").bases("Expression").build("object","property","computed").field("object",ZP("Expression")).field("property",KP(ZP("Identifier"),ZP("Expression"))).field("computed",Boolean,function(){var L_=this.property.type;return"Literal"===L_||"MemberExpression"===L_||"BinaryExpression"===L_}),ZP("Pattern").bases("Node"),ZP("SwitchCase").bases("Node").build("test","consequent").field("test",KP(ZP("Expression"),null)).field("consequent",[ZP("Statement")]),ZP("Identifier").bases("Node","Expression","Pattern").build("name").field("name",String),ZP("Literal").bases("Node","Expression").build("value").field("value",KP(String,Boolean,null,Number,RegExp)).field("regex",KP({pattern:String,flags:String},null),function(){if(this.value instanceof RegExp){var L_="";return this.value.ignoreCase&&(L_+="i"),this.value.multiline&&(L_+="m"),this.value.global&&(L_+="g"),{pattern:this.value.source,flags:L_}}return null}),ZP("Comment").bases("Printable").field("value",String).field("leading",Boolean,$P["true"]).field("trailing",Boolean,$P["false"])},Zh=function(XP){XP.use(Jh);var WP=XP.use(Nh),JP=WP.Type.def,ZP=WP.Type.or,KP=XP.use(Wh).defaults;JP("Function").field("generator",Boolean,KP["false"]).field("expression",Boolean,KP["false"]).field("defaults",[ZP(JP("Expression"),null)],KP.emptyArray).field("rest",ZP(JP("Identifier"),null),KP["null"]),JP("RestElement").bases("Pattern").build("argument").field("argument",JP("Pattern")),JP("SpreadElementPattern").bases("Pattern").build("argument").field("argument",JP("Pattern")),JP("FunctionDeclaration").build("id","params","body","generator","expression"),JP("FunctionExpression").build("id","params","body","generator","expression"),JP("ArrowFunctionExpression").bases("Function","Expression").build("params","body","expression").field("id",null,KP["null"]).field("body",ZP(JP("BlockStatement"),JP("Expression"))).field("generator",!1,KP["false"]),JP("YieldExpression").bases("Expression").build("argument","delegate").field("argument",ZP(JP("Expression"),null)).field("delegate",Boolean,KP["false"]),JP("GeneratorExpression").bases("Expression").build("body","blocks","filter").field("body",JP("Expression")).field("blocks",[JP("ComprehensionBlock")]).field("filter",ZP(JP("Expression"),null)),JP("ComprehensionExpression").bases("Expression").build("body","blocks","filter").field("body",JP("Expression")).field("blocks",[JP("ComprehensionBlock")]).field("filter",ZP(JP("Expression"),null)),JP("ComprehensionBlock").bases("Node").build("left","right","each").field("left",JP("Pattern")).field("right",JP("Expression")).field("each",Boolean),JP("Property").field("key",ZP(JP("Literal"),JP("Identifier"),JP("Expression"))).field("value",ZP(JP("Expression"),JP("Pattern"))).field("method",Boolean,KP["false"]).field("shorthand",Boolean,KP["false"]).field("computed",Boolean,KP["false"]),JP("PropertyPattern").bases("Pattern").build("key","pattern").field("key",ZP(JP("Literal"),JP("Identifier"),JP("Expression"))).field("pattern",JP("Pattern")).field("computed",Boolean,KP["false"]),JP("ObjectPattern").bases("Pattern").build("properties").field("properties",[ZP(JP("PropertyPattern"),JP("Property"))]),JP("ArrayPattern").bases("Pattern").build("elements").field("elements",[ZP(JP("Pattern"),null)]),JP("MethodDefinition").bases("Declaration").build("kind","key","value","static").field("kind",ZP("constructor","method","get","set")).field("key",ZP(JP("Literal"),JP("Identifier"),JP("Expression"))).field("value",JP("Function")).field("computed",Boolean,KP["false"]).field("static",Boolean,KP["false"]),JP("SpreadElement").bases("Node").build("argument").field("argument",JP("Expression")),JP("ArrayExpression").field("elements",[ZP(JP("Expression"),JP("SpreadElement"),JP("RestElement"),null)]),JP("NewExpression").field("arguments",[ZP(JP("Expression"),JP("SpreadElement"))]),JP("CallExpression").field("arguments",[ZP(JP("Expression"),JP("SpreadElement"))]),JP("AssignmentPattern").bases("Pattern").build("left","right").field("left",JP("Pattern")).field("right",JP("Expression"));var QP=ZP(JP("MethodDefinition"),JP("VariableDeclarator"),JP("ClassPropertyDefinition"),JP("ClassProperty"));JP("ClassProperty").bases("Declaration").build("key").field("key",ZP(JP("Literal"),JP("Identifier"),JP("Expression"))).field("computed",Boolean,KP["false"]),JP("ClassPropertyDefinition").bases("Declaration").build("definition").field("definition",QP),JP("ClassBody").bases("Declaration").build("body").field("body",[QP]),JP("ClassDeclaration").bases("Declaration").build("id","body","superClass").field("id",ZP(JP("Identifier"),null)).field("body",JP("ClassBody")).field("superClass",ZP(JP("Expression"),null),KP["null"]),JP("ClassExpression").bases("Expression").build("id","body","superClass").field("id",ZP(JP("Identifier"),null),KP["null"]).field("body",JP("ClassBody")).field("superClass",ZP(JP("Expression"),null),KP["null"]).field("implements",[JP("ClassImplements")],KP.emptyArray),JP("ClassImplements").bases("Node").build("id").field("id",JP("Identifier")).field("superClass",ZP(JP("Expression"),null),KP["null"]),JP("Specifier").bases("Node"),JP("ModuleSpecifier").bases("Specifier").field("local",ZP(JP("Identifier"),null),KP["null"]).field("id",ZP(JP("Identifier"),null),KP["null"]).field("name",ZP(JP("Identifier"),null),KP["null"]),JP("TaggedTemplateExpression").bases("Expression").build("tag","quasi").field("tag",JP("Expression")).field("quasi",JP("TemplateLiteral")),JP("TemplateLiteral").bases("Expression").build("quasis","expressions").field("quasis",[JP("TemplateElement")]).field("expressions",[JP("Expression")]),JP("TemplateElement").bases("Node").build("value","tail").field("value",{cooked:String,raw:String}).field("tail",Boolean)},Kh=function(XP){XP.use(Zh);var WP=XP.use(Nh),JP=WP.Type.def,ZP=WP.Type.or;WP.builtInTypes;var KP=XP.use(Wh).defaults;JP("Function").field("async",Boolean,KP["false"]),JP("SpreadProperty").bases("Node").build("argument").field("argument",JP("Expression")),JP("ObjectExpression").field("properties",[ZP(JP("Property"),JP("SpreadProperty"))]),JP("SpreadPropertyPattern").bases("Pattern").build("argument").field("argument",JP("Pattern")),JP("ObjectPattern").field("properties",[ZP(JP("Property"),JP("PropertyPattern"),JP("SpreadPropertyPattern"))]),JP("AwaitExpression").bases("Expression").build("argument","all").field("argument",ZP(JP("Expression"),null)).field("all",Boolean,KP["false"])},Qh=function(XP){XP.use(Kh);var WP=XP.use(Nh),JP=WP.Type.def,ZP=WP.Type.or,KP=XP.use(Wh).defaults;JP("Type").bases("Node"),JP("AnyTypeAnnotation").bases("Type").build(),JP("EmptyTypeAnnotation").bases("Type").build(),JP("MixedTypeAnnotation").bases("Type").build(),JP("VoidTypeAnnotation").bases("Type").build(),JP("NumberTypeAnnotation").bases("Type").build(),JP("NumberLiteralTypeAnnotation").bases("Type").build("value","raw").field("value",Number).field("raw",String),JP("StringTypeAnnotation").bases("Type").build(),JP("StringLiteralTypeAnnotation").bases("Type").build("value","raw").field("value",String).field("raw",String),JP("BooleanTypeAnnotation").bases("Type").build(),JP("BooleanLiteralTypeAnnotation").bases("Type").build("value","raw").field("value",Boolean).field("raw",String),JP("TypeAnnotation").bases("Node").build("typeAnnotation").field("typeAnnotation",JP("Type")),JP("NullableTypeAnnotation").bases("Type").build("typeAnnotation").field("typeAnnotation",JP("Type")),JP("NullLiteralTypeAnnotation").bases("Type").build(),JP("NullTypeAnnotation").bases("Type").build(),JP("ThisTypeAnnotation").bases("Type").build(),JP("ExistsTypeAnnotation").bases("Type").build(),JP("ExistentialTypeParam").bases("Type").build(),JP("FunctionTypeAnnotation").bases("Type").build("params","returnType","rest","typeParameters").field("params",[JP("FunctionTypeParam")]).field("returnType",JP("Type")).field("rest",ZP(JP("FunctionTypeParam"),null)).field("typeParameters",ZP(JP("TypeParameterDeclaration"),null)),JP("FunctionTypeParam").bases("Node").build("name","typeAnnotation","optional").field("name",JP("Identifier")).field("typeAnnotation",JP("Type")).field("optional",Boolean),JP("ArrayTypeAnnotation").bases("Type").build("elementType").field("elementType",JP("Type")),JP("ObjectTypeAnnotation").bases("Type").build("properties","indexers","callProperties").field("properties",[JP("ObjectTypeProperty")]).field("indexers",[JP("ObjectTypeIndexer")],KP.emptyArray).field("callProperties",[JP("ObjectTypeCallProperty")],KP.emptyArray).field("exact",Boolean,KP["false"]),JP("ObjectTypeProperty").bases("Node").build("key","value","optional").field("key",ZP(JP("Literal"),JP("Identifier"))).field("value",JP("Type")).field("optional",Boolean).field("variance",ZP("plus","minus",null),KP["null"]),JP("ObjectTypeIndexer").bases("Node").build("id","key","value").field("id",JP("Identifier")).field("key",JP("Type")).field("value",JP("Type")).field("variance",ZP("plus","minus",null),KP["null"]),JP("ObjectTypeCallProperty").bases("Node").build("value").field("value",JP("FunctionTypeAnnotation")).field("static",Boolean,KP["false"]),JP("QualifiedTypeIdentifier").bases("Node").build("qualification","id").field("qualification",ZP(JP("Identifier"),JP("QualifiedTypeIdentifier"))).field("id",JP("Identifier")),JP("GenericTypeAnnotation").bases("Type").build("id","typeParameters").field("id",ZP(JP("Identifier"),JP("QualifiedTypeIdentifier"))).field("typeParameters",ZP(JP("TypeParameterInstantiation"),null)),JP("MemberTypeAnnotation").bases("Type").build("object","property").field("object",JP("Identifier")).field("property",ZP(JP("MemberTypeAnnotation"),JP("GenericTypeAnnotation"))),JP("UnionTypeAnnotation").bases("Type").build("types").field("types",[JP("Type")]),JP("IntersectionTypeAnnotation").bases("Type").build("types").field("types",[JP("Type")]),JP("TypeofTypeAnnotation").bases("Type").build("argument").field("argument",JP("Type")),JP("Identifier").field("typeAnnotation",ZP(JP("TypeAnnotation"),null),KP["null"]),JP("TypeParameterDeclaration").bases("Node").build("params").field("params",[JP("TypeParameter")]),JP("TypeParameterInstantiation").bases("Node").build("params").field("params",[JP("Type")]),JP("TypeParameter").bases("Type").build("name","variance","bound").field("name",String).field("variance",ZP("plus","minus",null),KP["null"]).field("bound",ZP(JP("TypeAnnotation"),null),KP["null"]),JP("Function").field("returnType",ZP(JP("TypeAnnotation"),null),KP["null"]).field("typeParameters",ZP(JP("TypeParameterDeclaration"),null),KP["null"]),JP("ClassProperty").build("key","value","typeAnnotation","static").field("value",ZP(JP("Expression"),null)).field("typeAnnotation",ZP(JP("TypeAnnotation"),null)).field("static",Boolean,KP["false"]).field("variance",ZP("plus","minus",null),KP["null"]),JP("ClassImplements").field("typeParameters",ZP(JP("TypeParameterInstantiation"),null),KP["null"]),JP("InterfaceDeclaration").bases("Declaration").build("id","body","extends").field("id",JP("Identifier")).field("typeParameters",ZP(JP("TypeParameterDeclaration"),null),KP["null"]).field("body",JP("ObjectTypeAnnotation")).field("extends",[JP("InterfaceExtends")]),JP("DeclareInterface").bases("InterfaceDeclaration").build("id","body","extends"),JP("InterfaceExtends").bases("Node").build("id").field("id",JP("Identifier")).field("typeParameters",ZP(JP("TypeParameterInstantiation"),null)),JP("TypeAlias").bases("Declaration").build("id","typeParameters","right").field("id",JP("Identifier")).field("typeParameters",ZP(JP("TypeParameterDeclaration"),null)).field("right",JP("Type")),JP("DeclareTypeAlias").bases("TypeAlias").build("id","typeParameters","right"),JP("TypeCastExpression").bases("Expression").build("expression","typeAnnotation").field("expression",JP("Expression")).field("typeAnnotation",JP("TypeAnnotation")),JP("TupleTypeAnnotation").bases("Type").build("types").field("types",[JP("Type")]),JP("DeclareVariable").bases("Statement").build("id").field("id",JP("Identifier")),JP("DeclareFunction").bases("Statement").build("id").field("id",JP("Identifier")),JP("DeclareClass").bases("InterfaceDeclaration").build("id"),JP("DeclareModule").bases("Statement").build("id","body").field("id",ZP(JP("Identifier"),JP("Literal"))).field("body",JP("BlockStatement")),JP("DeclareModuleExports").bases("Statement").build("typeAnnotation").field("typeAnnotation",JP("Type")),JP("DeclareExportDeclaration").bases("Declaration").build("default","declaration","specifiers","source").field("default",Boolean).field("declaration",ZP(JP("DeclareVariable"),JP("DeclareFunction"),JP("DeclareClass"),JP("Type"),null)).field("specifiers",[ZP(JP("ExportSpecifier"),JP("ExportBatchSpecifier"))],KP.emptyArray).field("source",ZP(JP("Literal"),null),KP["null"]),JP("DeclareExportAllDeclaration").bases("Declaration").build("source").field("source",ZP(JP("Literal"),null),KP["null"])},$h=function(XP){XP.use(Kh);var WP=XP.use(Nh),JP=XP.use(Wh).defaults,ZP=WP.Type.def,KP=WP.Type.or;ZP("Noop").bases("Node").build(),ZP("DoExpression").bases("Expression").build("body").field("body",[ZP("Statement")]),ZP("Super").bases("Expression").build(),ZP("BindExpression").bases("Expression").build("object","callee").field("object",KP(ZP("Expression"),null)).field("callee",ZP("Expression")),ZP("Decorator").bases("Node").build("expression").field("expression",ZP("Expression")),ZP("Property").field("decorators",KP([ZP("Decorator")],null),JP["null"]),ZP("MethodDefinition").field("decorators",KP([ZP("Decorator")],null),JP["null"]),ZP("MetaProperty").bases("Expression").build("meta","property").field("meta",ZP("Identifier")).field("property",ZP("Identifier")),ZP("ParenthesizedExpression").bases("Expression").build("expression").field("expression",ZP("Expression")),ZP("ImportSpecifier").bases("ModuleSpecifier").build("imported","local").field("imported",ZP("Identifier")),ZP("ImportDefaultSpecifier").bases("ModuleSpecifier").build("local"),ZP("ImportNamespaceSpecifier").bases("ModuleSpecifier").build("local"),ZP("ExportDefaultDeclaration").bases("Declaration").build("declaration").field("declaration",KP(ZP("Declaration"),ZP("Expression"))),ZP("ExportNamedDeclaration").bases("Declaration").build("declaration","specifiers","source").field("declaration",KP(ZP("Declaration"),null)).field("specifiers",[ZP("ExportSpecifier")],JP.emptyArray).field("source",KP(ZP("Literal"),null),JP["null"]),ZP("ExportSpecifier").bases("ModuleSpecifier").build("local","exported").field("exported",ZP("Identifier")),ZP("ExportNamespaceSpecifier").bases("Specifier").build("exported").field("exported",ZP("Identifier")),ZP("ExportDefaultSpecifier").bases("Specifier").build("exported").field("exported",ZP("Identifier")),ZP("ExportAllDeclaration").bases("Declaration").build("exported","source").field("exported",KP(ZP("Identifier"),null)).field("source",ZP("Literal")),ZP("CommentBlock").bases("Comment").build("value","leading","trailing"),ZP("CommentLine").bases("Comment").build("value","leading","trailing")},Sy=function(XP){function WP(S_){var T_=JP.indexOf(S_);return-1===T_&&(T_=JP.length,JP.push(S_),ZP[T_]=S_(KP)),ZP[T_]}var JP=[],ZP=[],KP={};KP.use=WP;var QP=WP(Nh);XP.forEach(WP),QP.finalize();var $P={Type:QP.Type,builtInTypes:QP.builtInTypes,namedTypes:QP.namedTypes,builders:QP.builders,defineMethod:QP.defineMethod,getFieldNames:QP.getFieldNames,getFieldValue:QP.getFieldValue,eachField:QP.eachField,someField:QP.someField,getSupertypeNames:QP.getSupertypeNames,astNodesAreEquivalent:WP(Ih),finalize:QP.finalize,Path:WP(Oh),NodePath:WP(Vh),PathVisitor:WP(Xh),use:WP};return $P.visit=$P.PathVisitor.visit,$P}([Jh,Zh,Kh,function(XP){XP.use(Jh);var WP=XP.use(Nh),JP=WP.Type.def,ZP=WP.Type.or,KP=XP.use(Wh),QP=KP.geq,$P=KP.defaults;JP("Function").field("body",ZP(JP("BlockStatement"),JP("Expression"))),JP("ForInStatement").build("left","right","body","each").field("each",Boolean,$P["false"]),JP("ForOfStatement").bases("Statement").build("left","right","body").field("left",ZP(JP("VariableDeclaration"),JP("Expression"))).field("right",JP("Expression")).field("body",JP("Statement")),JP("LetStatement").bases("Statement").build("head","body").field("head",[JP("VariableDeclarator")]).field("body",JP("Statement")),JP("LetExpression").bases("Expression").build("head","body").field("head",[JP("VariableDeclarator")]).field("body",JP("Expression")),JP("GraphExpression").bases("Expression").build("index","expression").field("index",QP(0)).field("expression",JP("Literal")),JP("GraphIndexExpression").bases("Expression").build("index").field("index",QP(0))},function(XP){XP.use(Jh);var WP=XP.use(Nh),JP=WP.Type.def,ZP=WP.Type.or;JP("XMLDefaultDeclaration").bases("Declaration").field("namespace",JP("Expression")),JP("XMLAnyName").bases("Expression"),JP("XMLQualifiedIdentifier").bases("Expression").field("left",ZP(JP("Identifier"),JP("XMLAnyName"))).field("right",ZP(JP("Identifier"),JP("Expression"))).field("computed",Boolean),JP("XMLFunctionQualifiedIdentifier").bases("Expression").field("right",ZP(JP("Identifier"),JP("Expression"))).field("computed",Boolean),JP("XMLAttributeSelector").bases("Expression").field("attribute",JP("Expression")),JP("XMLFilterExpression").bases("Expression").field("left",JP("Expression")).field("right",JP("Expression")),JP("XMLElement").bases("XML","Expression").field("contents",[JP("XML")]),JP("XMLList").bases("XML","Expression").field("contents",[JP("XML")]),JP("XML").bases("Node"),JP("XMLEscape").bases("XML").field("expression",JP("Expression")),JP("XMLText").bases("XML").field("text",String),JP("XMLStartTag").bases("XML").field("contents",[JP("XML")]),JP("XMLEndTag").bases("XML").field("contents",[JP("XML")]),JP("XMLPointTag").bases("XML").field("contents",[JP("XML")]),JP("XMLName").bases("XML").field("contents",ZP(String,[JP("XML")])),JP("XMLAttribute").bases("XML").field("value",String),JP("XMLCdata").bases("XML").field("contents",String),JP("XMLComment").bases("XML").field("contents",String),JP("XMLProcessingInstruction").bases("XML").field("target",String).field("contents",ZP(String,null))},function(XP){XP.use(Kh);var WP=XP.use(Nh),JP=WP.Type.def,ZP=WP.Type.or,KP=XP.use(Wh).defaults;JP("JSXAttribute").bases("Node").build("name","value").field("name",ZP(JP("JSXIdentifier"),JP("JSXNamespacedName"))).field("value",ZP(JP("Literal"),JP("JSXExpressionContainer"),null),KP["null"]),JP("JSXIdentifier").bases("Identifier").build("name").field("name",String),JP("JSXNamespacedName").bases("Node").build("namespace","name").field("namespace",JP("JSXIdentifier")).field("name",JP("JSXIdentifier")),JP("JSXMemberExpression").bases("MemberExpression").build("object","property").field("object",ZP(JP("JSXIdentifier"),JP("JSXMemberExpression"))).field("property",JP("JSXIdentifier")).field("computed",Boolean,KP.false);var QP=ZP(JP("JSXIdentifier"),JP("JSXNamespacedName"),JP("JSXMemberExpression"));JP("JSXSpreadAttribute").bases("Node").build("argument").field("argument",JP("Expression"));var $P=[ZP(JP("JSXAttribute"),JP("JSXSpreadAttribute"))];JP("JSXExpressionContainer").bases("Expression").build("expression").field("expression",JP("Expression")),JP("JSXElement").bases("Expression").build("openingElement","closingElement","children").field("openingElement",JP("JSXOpeningElement")).field("closingElement",ZP(JP("JSXClosingElement"),null),KP["null"]).field("children",[ZP(JP("JSXElement"),JP("JSXExpressionContainer"),JP("JSXText"),JP("Literal"))],KP.emptyArray).field("name",QP,function(){return this.openingElement.name},!0).field("selfClosing",Boolean,function(){return this.openingElement.selfClosing},!0).field("attributes",$P,function(){return this.openingElement.attributes},!0),JP("JSXOpeningElement").bases("Node").build("name","attributes","selfClosing").field("name",QP).field("attributes",$P,KP.emptyArray).field("selfClosing",Boolean,KP["false"]),JP("JSXClosingElement").bases("Node").build("name").field("name",QP),JP("JSXText").bases("Literal").build("value").field("value",String),JP("JSXEmptyExpression").bases("Expression").build()},Qh,function(XP){XP.use(Kh);var WP=XP.use(Nh),JP=XP.use(Wh).defaults,ZP=WP.Type.def,KP=WP.Type.or;ZP("VariableDeclaration").field("declarations",[KP(ZP("VariableDeclarator"),ZP("Identifier"))]),ZP("Property").field("value",KP(ZP("Expression"),ZP("Pattern"))),ZP("ArrayPattern").field("elements",[KP(ZP("Pattern"),ZP("SpreadElement"),null)]),ZP("ObjectPattern").field("properties",[KP(ZP("Property"),ZP("PropertyPattern"),ZP("SpreadPropertyPattern"),ZP("SpreadProperty"))]),ZP("ExportSpecifier").bases("ModuleSpecifier").build("id","name"),ZP("ExportBatchSpecifier").bases("Specifier").build(),ZP("ImportSpecifier").bases("ModuleSpecifier").build("id","name"),ZP("ImportNamespaceSpecifier").bases("ModuleSpecifier").build("id"),ZP("ImportDefaultSpecifier").bases("ModuleSpecifier").build("id"),ZP("ExportDeclaration").bases("Declaration").build("default","declaration","specifiers","source").field("default",Boolean).field("declaration",KP(ZP("Declaration"),ZP("Expression"),null)).field("specifiers",[KP(ZP("ExportSpecifier"),ZP("ExportBatchSpecifier"))],JP.emptyArray).field("source",KP(ZP("Literal"),null),JP["null"]),ZP("ImportDeclaration").bases("Declaration").build("specifiers","source","importKind").field("specifiers",[KP(ZP("ImportSpecifier"),ZP("ImportNamespaceSpecifier"),ZP("ImportDefaultSpecifier"))],JP.emptyArray).field("source",ZP("Literal")).field("importKind",KP("value","type"),function(){return"value"}),ZP("Block").bases("Comment").build("value","leading","trailing"),ZP("Line").bases("Comment").build("value","leading","trailing")},$h,function(XP){XP.use($h),XP.use(Qh);var WP=XP.use(Nh),JP=XP.use(Wh).defaults,ZP=WP.Type.def,KP=WP.Type.or;ZP("Directive").bases("Node").build("value").field("value",ZP("DirectiveLiteral")),ZP("DirectiveLiteral").bases("Node","Expression").build("value").field("value",String,JP["use strict"]),ZP("BlockStatement").bases("Statement").build("body").field("body",[ZP("Statement")]).field("directives",[ZP("Directive")],JP.emptyArray),ZP("Program").bases("Node").build("body").field("body",[ZP("Statement")]).field("directives",[ZP("Directive")],JP.emptyArray),ZP("StringLiteral").bases("Literal").build("value").field("value",String),ZP("NumericLiteral").bases("Literal").build("value").field("value",Number),ZP("NullLiteral").bases("Literal").build(),ZP("BooleanLiteral").bases("Literal").build("value").field("value",Boolean),ZP("RegExpLiteral").bases("Literal").build("pattern","flags").field("pattern",String).field("flags",String);var QP=KP(ZP("Property"),ZP("ObjectMethod"),ZP("ObjectProperty"),ZP("SpreadProperty"));ZP("ObjectExpression").bases("Expression").build("properties").field("properties",[QP]),ZP("ObjectMethod").bases("Node","Function").build("kind","key","params","body","computed").field("kind",KP("method","get","set")).field("key",KP(ZP("Literal"),ZP("Identifier"),ZP("Expression"))).field("params",[ZP("Pattern")]).field("body",ZP("BlockStatement")).field("computed",Boolean,JP["false"]).field("generator",Boolean,JP["false"]).field("async",Boolean,JP["false"]).field("decorators",KP([ZP("Decorator")],null),JP["null"]),ZP("ObjectProperty").bases("Node").build("key","value").field("key",KP(ZP("Literal"),ZP("Identifier"),ZP("Expression"))).field("value",KP(ZP("Expression"),ZP("Pattern"))).field("computed",Boolean,JP["false"]);var $P=KP(ZP("MethodDefinition"),ZP("VariableDeclarator"),ZP("ClassPropertyDefinition"),ZP("ClassProperty"),ZP("ClassMethod"));ZP("ClassBody").bases("Declaration").build("body").field("body",[$P]),ZP("ClassMethod").bases("Declaration","Function").build("kind","key","params","body","computed","static").field("kind",KP("get","set","method","constructor")).field("key",KP(ZP("Literal"),ZP("Identifier"),ZP("Expression"))).field("params",[ZP("Pattern")]).field("body",ZP("BlockStatement")).field("computed",Boolean,JP["false"]).field("static",Boolean,JP["false"]).field("generator",Boolean,JP["false"]).field("async",Boolean,JP["false"]).field("decorators",KP([ZP("Decorator")],null),JP["null"]);var S_=KP(ZP("Property"),ZP("PropertyPattern"),ZP("SpreadPropertyPattern"),ZP("SpreadProperty"),ZP("ObjectProperty"),ZP("RestProperty"));ZP("ObjectPattern").bases("Pattern").build("properties").field("properties",[S_]).field("decorators",KP([ZP("Decorator")],null),JP["null"]),ZP("SpreadProperty").bases("Node").build("argument").field("argument",ZP("Expression")),ZP("RestProperty").bases("Node").build("argument").field("argument",ZP("Expression")),ZP("ForAwaitStatement").bases("Statement").build("left","right","body").field("left",KP(ZP("VariableDeclaration"),ZP("Expression"))).field("right",ZP("Expression")).field("body",ZP("Statement"))}]);const Ty={type:"break-parent"},Py=Wi([{type:"line",hard:!0},Ty]),_y=Wi([{type:"line",hard:!0,literal:!0},Ty]);var Ny={concat:Wi,join:function(WP,JP){var ZP=[];for(var KP=0;KP","<=",">=","in","instanceof"],[">>","<<",">>>"],["+","-"],["*","/","%","**"]].forEach(function(XP,WP){XP.forEach(function(JP){Vy[JP]=WP})});var Uy={comparePos:function(WP,JP){return WP.line-JP.line||WP.column-JP.column},getPrecedence:function(WP){return Vy[WP]},fixFaultyLocations:function(WP,JP){if(WP.decorators)WP.decorators.forEach(function(QP){Zi(WP,QP)});else if(WP.declaration&&Ki(WP)){var ZP=WP.declaration.decorators;ZP&&ZP.forEach(function(QP){Zi(WP,QP)})}else if(Ly.MethodDefinition&&Ly.MethodDefinition.check(WP)||Ly.Property.check(WP)&&(WP.method||WP.shorthand))Ly.FunctionExpression.check(WP.value)&&(WP.value.id=null);else if("ObjectTypeProperty"===WP.type){var KP=Oy(JP,No(WP),!0);!1!==KP&&","===JP.charAt(KP)&&!1!==(KP=Oy(JP,KP-1,!0))&&Ro(WP,KP)}},isExportDeclaration:Ki,getParentExportDeclaration:function(WP){var JP=WP.getParentNode();return"declaration"===WP.getName()&&Ki(JP)?JP:null},getLast:function(WP){return 0/g,">")}},Xy=Iy,Wy=Sy,Jy=Wy.namedTypes,Zy=Wy.builtInTypes.array,Ky=Wy.builtInTypes.object,Qy=Ny,$y=Qy.concat,Sg=Qy.hardline,Tg=Qy.breakParent,Pg=Qy.indent,_g=Qy.lineSuffix,Ng=Qy.join,Lg=Uy,Rg=Symbol("child-nodes"),Og=Lg.locStart,Mg=Lg.locEnd,Yg={attach:function(WP,JP,ZP){if(Zy.check(WP)){var KP=[];WP.forEach(function(QP){Mo(JP,QP,ZP);const $P=QP.precedingNode,S_=QP.enclosingNode,T_=QP.followingNode;if(Lg.hasNewline(ZP,Og(QP),{backwards:!0}))$o(S_,T_,QP)||Ko(S_,T_,QP)||Qo(S_,T_,QP)||(T_?Uo(T_,QP):$P?Wo($P,QP):S_?Xo(S_,QP):Xo(JP,QP));else if(Lg.hasNewline(ZP,Mg(QP)))Sl(S_,$P,T_,QP,ZP)||Pl(S_,QP)||($P?Wo($P,QP):T_?Uo(T_,QP):S_?Xo(S_,QP):Xo(JP,QP));else if(Ko(S_,T_,QP)||Tl(S_,$P,QP)||Pl(S_,QP));else if($P&&T_){const __=KP.length;if(0<__){var P_=KP[__-1];P_.followingNode!==QP.followingNode&&Yo(KP,ZP)}KP.push(QP)}else $P?Wo($P,QP):T_?Uo(T_,QP):S_?Xo(S_,QP):Xo(JP,QP)}),Yo(KP,ZP),WP.forEach(function(QP){delete QP.precedingNode,delete QP.enclosingNode,delete QP.followingNode})}},printComments:function(WP,JP,ZP){var KP=WP.getValue(),QP=WP.getParentNode(),$P=JP(WP),S_=Jy.Node.check(KP)&&Wy.getFieldValue(KP,"comments");if(!S_||0===S_.length)return $P;var T_=[],P_=[$P];return WP.each(function(__){var N_=__.getValue(),I_=Wy.getFieldValue(N_,"leading"),L_=Wy.getFieldValue(N_,"trailing");if(I_){T_.push(Rl(__,JP,ZP));const R_=ZP.originalText;Lg.hasNewline(R_,Lg.skipNewline(R_,Lg.locEnd(N_)))&&T_.push(Sg)}else L_&&P_.push(Ol(__,JP,ZP,QP))},"comments"),$y(T_.concat(P_))},printDanglingComments:function(WP,JP,ZP){JP.originalText;const KP=[],QP=WP.getValue();return QP&&QP.comments?(WP.each($P=>{const S_=$P.getValue();S_.leading||S_.trailing||KP.push(_l($P))},"comments"),0===KP.length?"":ZP?Ng(Sg,KP):Pg(JP.tabWidth,$y([Sg,Ng(Sg,KP)]))):""}},Vg="prettier",Ug="0.19.0",Xg="Prettier is an opinionated JavaScript formatter",Wg={prettier:"./bin/prettier.js"},Jg={type:"git",url:"git+https://github.com/jlongster/prettier.git"},Zg="James Long",Kg="MIT",Qg={url:"https://github.com/jlongster/prettier/issues"},$g="./index.js",Sb={"ast-types":"0.9.4","babel-code-frame":"6.22.0",babylon:"6.15.0",chalk:"1.1.3",esutils:"2.0.2","flow-parser":"0.38.0","get-stdin":"5.0.1",glob:"7.1.1","jest-validate":"19.0.0",minimist:"1.2.0"},Tb={diff:"3.2.0",jest:"19.0.1",rollup:"0.41.1","rollup-plugin-commonjs":"7.0.0","rollup-plugin-json":"2.1.0","rollup-plugin-node-builtins":"2.0.0","rollup-plugin-node-globals":"1.1.0","rollup-plugin-node-resolve":"2.0.0","rollup-plugin-real-babili":"1.0.0-alpha3"},Pb={test:"jest",format:"./bin/prettier.js --write","format:single":"npm run format -- src/printer.js","format:all":"npm run format -- index.js src/*.js bin/*.js","build:docs":"rollup -c docs/rollup.config.js"},_b={setupFiles:["/tests_config/run_spec.js"],testRegex:"jsfmt\\.spec\\.js$",testPathIgnorePatterns:["tests/new_react","tests/more_react"]},Nb=Object.freeze({name:Vg,version:Ug,description:Xg,bin:Wg,repository:Jg,author:Zg,license:Kg,bugs:Qg,main:$g,dependencies:Sb,devDependencies:Tb,scripts:Pb,jest:_b,default:{name:Vg,version:Ug,description:Xg,bin:Wg,repository:Jg,author:Zg,license:Kg,bugs:Qg,main:$g,dependencies:Sb,devDependencies:Tb,scripts:Pb,jest:_b}}),Lb=Iy,Rb=Sy,Ob=Uy,Mb=Rb.namedTypes,Yb=Rb.builtInTypes.array,Vb=Rb.builtInTypes.number,Ub=Ml.prototype;Ml.from=function(XP){if(XP instanceof Ml)return XP.copy();if(XP instanceof Rb.NodePath){var WP=Object.create(Ml.prototype),JP=[XP.value];for(var ZP;ZP=XP.parentPath;XP=ZP)JP.push(XP.name,ZP.value);return WP.stack=JP.reverse(),WP}return new Ml(XP)},Ub.copy=function(){var XP=Object.create(Ml.prototype);return XP.stack=this.stack.slice(0),XP},Ub.getName=function(){var WP=this.stack,JP=WP.length;return 1S_)return!0;if(QP===S_&&"right"===JP)return Lb.strictEqual(WP.right,ZP),!0;default:return!1;}case"SequenceExpression":switch(WP.type){case"ReturnStatement":return!1;case"ForStatement":return!1;case"ExpressionStatement":return"expression"!==JP;default:return!0;}case"YieldExpression":if("UnaryExpression"===WP.type)return!0;case"AwaitExpression":switch(WP.type){case"TaggedTemplateExpression":case"BinaryExpression":case"LogicalExpression":case"SpreadElement":case"SpreadProperty":case"NewExpression":case"MemberExpression":return!0;case"CallExpression":return WP.callee===ZP;case"ConditionalExpression":return WP.test===ZP;default:return!1;}case"ArrayTypeAnnotation":return"NullableTypeAnnotation"===WP.type;case"IntersectionTypeAnnotation":case"UnionTypeAnnotation":return"NullableTypeAnnotation"===WP.type||"IntersectionTypeAnnotation"===WP.type||"UnionTypeAnnotation"===WP.type;case"NullableTypeAnnotation":return"ArrayTypeAnnotation"===WP.type;case"FunctionTypeAnnotation":return"UnionTypeAnnotation"===WP.type||"IntersectionTypeAnnotation"===WP.type;case"NumericLiteral":case"Literal":return"MemberExpression"===WP.type&&Vb.check(ZP.value)&&"object"===JP&&WP.object===ZP;case"AssignmentExpression":if("ArrowFunctionExpression"===WP.type&&WP.body===ZP&&"ObjectPattern"===ZP.left.type)return!0;case"ConditionalExpression":switch(WP.type){case"TaggedTemplateExpression":case"UnaryExpression":case"SpreadElement":case"SpreadProperty":case"BinaryExpression":case"LogicalExpression":case"LogicalExpression":case"ExportDefaultDeclaration":case"AwaitExpression":return!0;case"NewExpression":case"CallExpression":return"callee"===JP&&WP.callee===ZP;case"ConditionalExpression":return"test"===JP&&WP.test===ZP;case"MemberExpression":return"object"===JP&&WP.object===ZP;default:return Mb.ObjectPattern.check(ZP.left)&&this.firstInStatement();}case"FunctionExpression":case"ArrowFunctionExpression":if("CallExpression"===WP.type&&"callee"===JP)return!0;switch(WP.type){case"ConditionalExpression":if(WP.test===ZP)return!0;case"ExportDefaultDeclaration":return"ArrowFunctionExpression"!==ZP.type;case"ExpressionStatement":case"MemberExpression":case"TaggedTemplateExpression":case"UnaryExpression":return!0;case"NewExpression":return"callee"===JP;case"LogicalExpression":return"ArrowFunctionExpression"===ZP.type;default:return Vl(WP);}case"ClassExpression":switch(WP.type){case"TaggedTemplateExpression":case"BinaryExpression":case"ExportDefaultDeclaration":case"ExpressionStatement":return!0;case"CallExpression":if(WP.callee===ZP)return!0;case"MemberExpression":return"object"===JP&&WP.object===ZP;case"ConditionalExpression":if(WP.test===ZP)return!0;}return!1;case"ObjectExpression":if("ArrowFunctionExpression"===WP.type&&"body"===JP)return!0;if("TaggedTemplateExpression"===WP.type)return!0;if("MemberExpression"===WP.type)return"object"===JP&&WP.object===ZP;case"StringLiteral":if("ExpressionStatement"===WP.type)return!0;default:if("NewExpression"===WP.type&&"callee"===JP&&WP.callee===ZP)return Ul(ZP);}return!0!==XP&&!this.canBeFirstInStatement()&&this.firstInStatement()},Ub.canBeFirstInStatement=function(){var XP=this.getNode();return!Mb.FunctionExpression.check(XP)&&!Mb.ObjectExpression.check(XP)&&!Mb.ClassExpression.check(XP)&&!(Mb.AssignmentExpression.check(XP)&&Mb.ObjectPattern.check(XP.left))},Ub.firstInStatement=function(){var XP=this.stack,WP,JP,ZP,KP;for(var QP=XP.length-1;0<=QP;QP-=2)if(Mb.Node.check(XP[QP])&&(ZP=WP,KP=JP,WP=XP[QP-1],JP=XP[QP]),JP&&KP){if(Mb.BlockStatement.check(JP)&&"body"===WP&&0===ZP)return Lb.strictEqual(JP.body[0],KP),!0;if(Mb.ExpressionStatement.check(JP)&&"expression"===ZP)return Lb.strictEqual(JP.expression,KP),!0;if(Mb.SequenceExpression.check(JP)&&"expressions"===WP&&0===ZP){Lb.strictEqual(JP.expressions[0],KP);continue}if(Mb.CallExpression.check(JP)&&"callee"===ZP){Lb.strictEqual(JP.callee,KP);continue}if(Mb.MemberExpression.check(JP)&&"object"===ZP){Lb.strictEqual(JP.object,KP);continue}if(Mb.ConditionalExpression.check(JP)&&"test"===ZP){Lb.strictEqual(JP.test,KP);continue}if(Vl(JP)&&"left"===ZP){Lb.strictEqual(JP.left,KP);continue}if(Mb.UnaryExpression.check(JP)&&!JP.prefix&&"argument"===ZP){Lb.strictEqual(JP.argument,KP);continue}return!1}return!0};var Xb=Iy,Wb=Yg,Jb=Ml,Zb=Uy,Kb=Mu.keyword.isIdentifierNameES6,Qb=Ny,$b=Qb.concat,Sx=Qb.join,Tx=Qb.line,Px=Qb.hardline,_x=Qb.softline,Nx=Qb.literalline,Ix=Qb.group,Lx=Qb.indent,Rx=Qb.conditionalGroup,Ox=Qb.ifBreak,Mx=Qb.breakParent,Yx=Qb.lineSuffixBoundary,Vx={isEmpty:function(WP){return"string"==typeof WP&&0===WP.length},getFirstString:function(WP){return Vi(WP,JP=>{if("string"==typeof JP&&0!==JP.trim().length)return JP},null)},willBreak:function(WP){return Vi(WP,JP=>{return"group"===JP.type&&JP.break||"line"===JP.type&&JP.hard||void 0},!1)},isLineNext:function(WP){return Vi(WP,JP=>{return"string"!=typeof JP&&(!("line"!==JP.type)||void 0)},!1)},traverseDoc:Mi,mapDoc:Yi,propagateBreaks:function(WP){const JP=[];Mi(WP,ZP=>{"break-parent"===ZP.type&&Ui(JP),"group"===ZP.type&&JP.push(ZP)},ZP=>{if("group"===ZP.type){const KP=JP.pop();KP.break&&Ui(JP)}})}},Ux=Vx.willBreak,Xx=Vx.isLineNext,Wx=Vx.getFirstString,Jx=Vx.isEmpty,Zx=Sy,Kx=Zx.namedTypes,Qx=Zx.builtInTypes.string;const $x=1,SS=2;var TS={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]},PS=Se(function(XP){function WP(P_,__){return Math.pow(P_[0]-__[0],2)+Math.pow(P_[1]-__[1],2)+Math.pow(P_[2]-__[2],2)}var JP=TS,ZP={};for(var KP in JP)JP.hasOwnProperty(KP)&&(ZP[JP[KP]]=KP);var QP=XP.exports={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},lch:{channels:3,labels:"lch"},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}};for(var $P in QP)if(QP.hasOwnProperty($P)){if(!("channels"in QP[$P]))throw new Error("missing channels property: "+$P);if(!("labels"in QP[$P]))throw new Error("missing channel labels property: "+$P);if(QP[$P].labels.length!==QP[$P].channels)throw new Error("channel and label counts mismatch: "+$P);var S_=QP[$P].channels,T_=QP[$P].labels;delete QP[$P].channels,delete QP[$P].labels,Object.defineProperty(QP[$P],"channels",{value:S_}),Object.defineProperty(QP[$P],"labels",{value:T_})}QP.rgb.hsl=function(P_){var __=P_[0]/255,N_=P_[1]/255,I_=P_[2]/255,L_=Math.min(__,N_,I_),R_=Math.max(__,N_,I_),O_=R_-L_,M_,Y_,V_;return R_===L_?M_=0:__===R_?M_=(N_-I_)/O_:N_===R_?M_=2+(I_-__)/O_:I_===R_&&(M_=4+(__-N_)/O_),M_=Math.min(60*M_,360),0>M_&&(M_+=360),V_=(L_+R_)/2,Y_=R_===L_?0:0.5>=V_?O_/(R_+L_):O_/(2-R_-L_),[M_,100*Y_,100*V_]},QP.rgb.hsv=function(P_){var __=P_[0],N_=P_[1],I_=P_[2],L_=Math.min(__,N_,I_),R_=Math.max(__,N_,I_),O_=R_-L_,M_,Y_,V_;return Y_=0===R_?0:1e3*(O_/R_)/10,R_===L_?M_=0:__===R_?M_=(N_-I_)/O_:N_===R_?M_=2+(I_-__)/O_:I_===R_&&(M_=4+(__-N_)/O_),M_=Math.min(60*M_,360),0>M_&&(M_+=360),V_=1e3*(R_/255)/10,[M_,Y_,V_]},QP.rgb.hwb=function(P_){var __=P_[0],N_=P_[1],I_=P_[2],L_=QP.rgb.hsl(P_)[0],R_=1/255*Math.min(__,Math.min(N_,I_));return I_=1-1/255*Math.max(__,Math.max(N_,I_)),[L_,100*R_,100*I_]},QP.rgb.cmyk=function(P_){var __=P_[0]/255,N_=P_[1]/255,I_=P_[2]/255,M_=Math.min(1-__,1-N_,1-I_),L_,R_,O_;return L_=(1-__-M_)/(1-M_)||0,R_=(1-N_-M_)/(1-M_)||0,O_=(1-I_-M_)/(1-M_)||0,[100*L_,100*R_,100*O_,100*M_]},QP.rgb.keyword=function(P_){var __=ZP[P_];if(__)return __;var N_=Infinity,I_;for(var L_ in JP)if(JP.hasOwnProperty(L_)){var R_=JP[L_],O_=WP(P_,R_);O_I_?I_*(1+N_):I_+N_-I_*N_,L_=2*I_-R_,M_=[0,0,0];for(var V_=0;3>V_;V_++)O_=__+1/3*-(V_-1),0>O_&&O_++,16*O_?L_+6*(R_-L_)*O_:1>2*O_?R_:2>3*O_?L_+6*((R_-L_)*(2/3-O_)):L_,M_[V_]=255*Y_;return M_},QP.hsl.hsv=function(P_){var __=P_[0],N_=P_[1]/100,I_=P_[2]/100,L_=N_,R_=Math.max(I_,0.01),O_,M_;return I_*=2,N_*=1>=I_?I_:2-I_,L_*=1>=R_?R_:2-R_,M_=(I_+N_)/2,O_=0==I_?2*L_/(R_+L_):2*N_/(I_+N_),[__,100*O_,100*M_]},QP.hsv.rgb=function(P_){var __=P_[0]/60,N_=P_[1]/100,I_=P_[2]/100,L_=Math.floor(__)%6,R_=__-Math.floor(__),O_=255*I_*(1-N_),M_=255*I_*(1-N_*R_),Y_=255*I_*(1-N_*(1-R_));return I_*=255,0==L_?[I_,Y_,O_]:1==L_?[M_,I_,O_]:2==L_?[O_,I_,Y_]:3==L_?[O_,M_,I_]:4==L_?[Y_,O_,I_]:5==L_?[I_,O_,M_]:void 0},QP.hsv.hsl=function(P_){var __=P_[0],N_=P_[1]/100,I_=P_[2]/100,L_=Math.max(I_,0.01),M_=(2-N_)*I_,R_,O_;return R_=(2-N_)*L_,O_=N_*L_,O_/=1>=R_?R_:2-R_,O_=O_||0,M_/=2,[__,100*O_,100*M_]},QP.hwb.rgb=function(P_){var __=P_[0]/360,N_=P_[1]/100,I_=P_[2]/100,L_=N_+I_,R_,O_,M_,Y_;1R_&&(R_+=360),O_=Math.sqrt(N_*N_+I_*I_),[__,O_,R_]},QP.lch.lab=function(P_){var __=P_[0],N_=P_[1],I_=P_[2],O_=2*(I_/360)*Math.PI,L_,R_;return L_=N_*Math.cos(O_),R_=N_*Math.sin(O_),[__,L_,R_]},QP.rgb.ansi16=function(P_){var __=P_[0],N_=P_[1],I_=P_[2],L_=1 in arguments?arguments[1]:QP.rgb.hsv(P_)[2];if(L_=Math.round(L_/50),0===L_)return 30;var R_=30+(Math.round(I_/255)<<2|Math.round(N_/255)<<1|Math.round(__/255));return 2===L_&&(R_+=60),R_},QP.hsv.ansi16=function(P_){return QP.rgb.ansi16(QP.hsv.rgb(P_),P_[2])},QP.rgb.ansi256=function(P_){var __=P_[0],N_=P_[1],I_=P_[2];if(__===N_&&N_===I_)return 8>__?16:248<__?231:Math.round(24*((__-8)/247))+232;var L_=16+36*Math.round(5*(__/255))+6*Math.round(5*(N_/255))+Math.round(5*(I_/255));return L_},QP.ansi16.rgb=function(P_){var __=P_%10;if(0==__||7==__)return 50>1)*N_),R_=255*((1&__>>2)*N_);return[I_,L_,R_]},QP.ansi256.rgb=function(P_){if(232<=P_){var __=10*(P_-232)+8;return[__,__,__]}P_-=16;var N_,I_=255*(Math.floor(P_/36)/5),L_=255*(Math.floor((N_=P_%36)/6)/5),R_=255*(N_%6/5);return[I_,L_,R_]},QP.rgb.hex=function(P_){var __=((255&Math.round(P_[0]))<<16)+((255&Math.round(P_[1]))<<8)+(255&Math.round(P_[2])),N_=__.toString(16).toUpperCase();return"000000".substring(N_.length)+N_},QP.hex.rgb=function(P_){var __=P_.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!__)return[0,0,0];var N_=__[0];3===__[0].length&&(N_=N_.split("").map(function(L_){return L_+L_}).join(""));var I_=parseInt(N_,16);return[255&I_>>16,255&I_>>8,255&I_]},QP.rgb.hcg=function(P_){var __=P_[0]/255,N_=P_[1]/255,I_=P_[2]/255,L_=Math.max(Math.max(__,N_),I_),R_=Math.min(Math.min(__,N_),I_),O_=L_-R_,M_,Y_;return M_=1>O_?R_/(1-O_):0,Y_=0>=O_?0:L_===__?(N_-I_)/O_%6:L_===N_?2+(I_-__)/O_:4+(__-N_)/O_+4,Y_/=6,Y_%=1,[360*Y_,100*O_,100*M_]},QP.hsl.hcg=function(P_){var __=P_[1]/100,N_=P_[2]/100,I_=1,L_=0;return I_=0.5>N_?2*__*N_:2*__*(1-N_),1>I_&&(L_=(N_-0.5*I_)/(1-I_)),[P_[0],100*I_,100*L_]},QP.hsv.hcg=function(P_){var __=P_[1]/100,N_=P_[2]/100,I_=__*N_,L_=0;return 1>I_&&(L_=(N_-I_)/(1-I_)),[P_[0],100*I_,100*L_]},QP.hcg.rgb=function(P_){var __=P_[0]/360,N_=P_[1]/100,I_=P_[2]/100;if(0==N_)return[255*I_,255*I_,255*I_];var L_=[0,0,0],R_=6*(__%1),O_=R_%1,M_=1-O_,Y_=0;switch(Math.floor(R_)){case 0:L_[0]=1,L_[1]=O_,L_[2]=0;break;case 1:L_[0]=M_,L_[1]=1,L_[2]=0;break;case 2:L_[0]=0,L_[1]=1,L_[2]=O_;break;case 3:L_[0]=0,L_[1]=M_,L_[2]=1;break;case 4:L_[0]=O_,L_[1]=0,L_[2]=1;break;default:L_[0]=1,L_[1]=0,L_[2]=M_;}return Y_=(1-N_)*I_,[255*(N_*L_[0]+Y_),255*(N_*L_[1]+Y_),255*(N_*L_[2]+Y_)]},QP.hcg.hsv=function(P_){var __=P_[1]/100,N_=P_[2]/100,I_=__+N_*(1-__),L_=0;return 0I_?L_=__/(2*I_):0.5<=I_&&1>I_&&(L_=__/(2*(1-I_))),[P_[0],100*L_,100*I_]},QP.hcg.hwb=function(P_){var __=P_[1]/100,N_=P_[2]/100,I_=__+N_*(1-__);return[P_[0],100*(I_-__),100*(1-I_)]},QP.hwb.hcg=function(P_){var __=P_[1]/100,N_=P_[2]/100,I_=1-N_,L_=I_-__,R_=0;return 1>L_&&(R_=(I_-L_)/(1-L_)),[P_[0],100*L_,100*R_]},QP.apple.rgb=function(P_){return[255*(P_[0]/65535),255*(P_[1]/65535),255*(P_[2]/65535)]},QP.rgb.apple=function(P_){return[65535*(P_[0]/255),65535*(P_[1]/255),65535*(P_[2]/255)]},QP.gray.rgb=function(P_){return[255*(P_[0]/100),255*(P_[0]/100),255*(P_[0]/100)]},QP.gray.hsl=QP.gray.hsv=function(P_){return[0,0,P_[0]]},QP.gray.hwb=function(P_){return[0,100,P_[0]]},QP.gray.cmyk=function(P_){return[0,0,0,P_[0]]},QP.gray.lab=function(P_){return[P_[0],0,0]},QP.gray.hex=function(P_){var __=255&Math.round(255*(P_[0]/100)),N_=((__<<16)+(__<<8)+__).toString(16).toUpperCase();return"000000".substring(N_.length)+N_},QP.rgb.gray=function(P_){var __=(P_[0]+P_[1]+P_[2])/3;return[100*(__/255)]}}),_S=PS,NS=Object.keys(_S),IS=PS,LS=function(XP){var WP=Xd(XP),JP={},ZP=Object.keys(WP);for(var KP=ZP.length,QP=0;QPfunction(){const S_=QP.apply(WP,arguments);return`\u001B[${S_+$P}m`},ZP=(QP,$P)=>function(){const S_=QP.apply(WP,arguments);return`\u001B[${38+$P};5;${S_}m`},KP=(QP,$P)=>function(){const S_=QP.apply(WP,arguments);return`\u001B[${38+$P};2;${S_[0]};${S_[1]};${S_[2]}m`};Object.defineProperty(XP,"exports",{enumerable:!0,get:function(){const $P={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],gray:[90,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49]}};$P.color.grey=$P.color.gray,Object.keys($P).forEach(T_=>{const P_=$P[T_];Object.keys(P_).forEach(__=>{const N_=P_[__];$P[__]=P_[__]={open:`\u001B[${N_[0]}m`,close:`\u001B[${N_[1]}m`}}),Object.defineProperty($P,T_,{value:P_,enumerable:!1})});const S_=(T_,P_,__)=>[T_,P_,__];$P.color.close="\x1B[39m",$P.bgColor.close="\x1B[49m",$P.color.ansi={},$P.color.ansi256={},$P.color.ansi16m={rgb:KP(S_,0)},$P.bgColor.ansi={},$P.bgColor.ansi256={},$P.bgColor.ansi16m={rgb:KP(S_,10)};for(const T_ of Object.keys(WP))if("object"==typeof WP[T_]){const P_=WP[T_];"ansi16"in P_&&($P.color.ansi[T_]=JP(P_.ansi16,0),$P.bgColor.ansi[T_]=JP(P_.ansi16,10)),"ansi256"in P_&&($P.color.ansi256[T_]=ZP(P_.ansi256,0),$P.bgColor.ansi256[T_]=ZP(P_.ansi256,10)),"rgb"in P_&&($P.color.ansi16m[T_]=KP(P_.rgb,0),$P.bgColor.ansi16m[T_]=KP(P_.rgb,10))}return $P}})});const YS=Object.prototype.toString,VS=Date.prototype.toISOString,US=Error.prototype.toString,XS=RegExp.prototype.toString,WS=Symbol.prototype.toString,JS=/^Symbol\((.*)\)(.*)$/,ZS=/\n/ig,KS=Object.getOwnPropertySymbols||(()=>[]),QS={callToJSON:!0,escapeRegex:!1,highlight:!1,indent:2,maxDepth:Infinity,min:!1,plugins:[],printFunctionName:!0,theme:{content:"reset",prop:"yellow",tag:"cyan",value:"green"}};var $S=function(WP,JP){JP?(Wc(JP),JP=Jc(JP)):JP=QS;const ZP={};Object.keys(JP.theme).forEach(N_=>{ZP[N_]=JP.highlight?MS[JP.theme[N_]]:{close:"",open:""}});let KP,QP;const $P="",S_=0,T_=JP.min?" ":"\n",P_=JP.min?"":"\n";if(JP&&JP.plugins.length){KP=Zc(JP.indent),QP=[];const N_=Uc(WP,KP,$P,T_,P_,QP,JP.maxDepth,S_,JP.plugins,JP.min,JP.callToJSON,JP.printFunctionName,JP.escapeRegex,ZP);if(N_)return N_}const __=_c(WP,JP.printFunctionName,JP.escapeRegex);return __?__:(KP||(KP=Zc(JP.indent)),QP||(QP=[]),Vc(WP,KP,$P,T_,P_,QP,JP.maxDepth,S_,JP.plugins,JP.min,JP.callToJSON,JP.printFunctionName,JP.escapeRegex,ZP))},SE=[],TE=[],PE=function(XP,WP){if(XP===WP)return 0;var JP=XP.length,ZP=WP.length;if(0===JP)return ZP;if(0===ZP)return JP;for(var T_=0,P_=0,KP,QP,$P,S_;T_QP?S_>QP?QP+1:S_:S_>$P?$P+1:S_;return QP};const _E=$m,NE=_E.bold("\u25CF"),IE=`${NE} Deprecation Warning`,LE=`${NE} Validation Error`,RE=`${NE} Validation Warning`,OE=XP=>"function"==typeof XP?XP.toString():$S(XP,{min:!0});class ME extends Error{constructor(XP,WP,JP){super(),JP=JP?"\n\n"+JP:"\n",this.name="",this.message=_E.red(_E.bold(XP)+":\n\n"+WP+JP),Error.captureStackTrace(this,()=>{})}}var YE={DEPRECATION:IE,ERROR:LE,ValidationError:ME,WARNING:RE,createDidYouMeanMessage:(XP,WP)=>{const JP=WP.find(ZP=>{const KP=PE(ZP,XP);return 3>KP});return JP?`Did you mean ${_E.bold(OE(JP))}?`:""},format:OE,logValidationWarning:(XP,WP,JP)=>{JP=JP?"\n\n"+JP:"\n",console.warn(_E.yellow(_E.bold(XP)+":\n\n"+WP+JP))}};const VE=Symbol.for("jest.asymmetricMatcher"),UE=" ";class XE extends Array{}class WE extends Object{}const JE=$m,ZE=$S,KE=[{print:(XP,WP,JP,ZP)=>{const KP=XP.toString();if("ArrayContaining"===KP){const QP=XE.from(XP.sample);return ZP.spacing===UE?KP+UE+WP(QP):WP(QP)}if("ObjectContaining"===KP){const QP=Object.assign(new WE,XP.sample);return ZP.spacing===UE?KP+UE+WP(QP):WP(QP)}return"StringMatching"===KP?KP+UE+WP(XP.sample):"StringContaining"===KP?KP+UE+WP(XP.sample):XP.toAsymmetricMatcher()},test:XP=>XP&&XP.$$typeof===VE}],QE=JE.green,$E=JE.bgGreen,ST=JE.red,TT=JE.bgRed,PT=["zero","one","two","three","four","five","six","seven","eight","nine","ten","eleven","twelve","thirteen"],_T=XP=>{if("undefined"==typeof XP)return"undefined";if(null===XP)return"null";if(Array.isArray(XP))return"array";if("boolean"==typeof XP)return"boolean";if("function"==typeof XP)return"function";if("number"==typeof XP)return"number";if("string"==typeof XP)return"string";if("object"==typeof XP)return XP.constructor===RegExp?"regexp":XP.constructor===Map?"map":XP.constructor===Set?"set":"object";if("symbol"==typeof XP)return"symbol";throw new Error(`value of unknown type: ${XP}`)},NT=function(XP){let WP=1XP.replace(/\s+$/gm,WP("$&")),LT=XP=>IT(ST(NT(XP)),TT),RT=XP=>IT(QE(NT(XP)),$E),OT=(XP,WP,JP)=>{const ZP=_T(WP);return XP+":"+("null"!==ZP&&"undefined"!==ZP?"\n "+ZP+": ":" ")+JP(WP)},MT=(XP,WP)=>{if(WP||(WP="This matcher"),"number"!=typeof XP)throw new Error(VT("[.not]"+WP)+"\n\n"+`Actual value must be a number.\n`+OT("Received",XP,LT))},YT=(XP,WP)=>{if(WP||(WP="This matcher"),"number"!=typeof XP)throw new Error(VT("[.not]"+WP)+"\n\n"+`Expected value must be a number.\n`+OT("Got",XP,RT))},VT=function(XP){let WP=1{if(WP||(WP="This"),"undefined"!=typeof XP)throw new Error(VT("[.not]"+WP,void 0,"")+"\n\nMatcher does not accept any arguments.\n"+OT("Got",XP,RT))},ensureNumbers:(XP,WP,JP)=>{MT(XP,JP),YT(WP,JP)},getType:_T,highlightTrailingWhitespace:IT,matcherHint:VT,pluralize:(XP,WP)=>(PT[WP]||WP)+" "+XP+(1===WP?"":"s"),printExpected:RT,printReceived:LT,printWithType:OT,stringify:NT}.getType;var QT={ValidationError:JT,errorMessage:(XP,WP,JP,ZP)=>{const KP=` Option ${UT.bold(`"${XP}"`)} must be of type: ${UT.bold.green(KT(JP))} but instead received: ${UT.bold.red(KT(WP))}