diff --git a/.gitignore b/.gitignore index 5171c5408333..2c48b40416c9 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ node_modules -npm-debug.log \ No newline at end of file +npm-debug.log +test.js diff --git a/CHANGELOG.md b/CHANGELOG.md index 4266a27b50c7..c7a232bbfcd7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,31 @@ +# 0.15.0 + +[link](https://github.com/jlongster/prettier/compare/0.14.1...0.15.0) + +* Fix syntax error in empty object with dangling comment (#533) +* Fix closing call expression commented out (#530) +* Update `bracketSpacing` comment to say it's about {} (#529) +* Add 0.14.1 to CHANGELOG (#525) +* Print \x and \u escapes in strings and regexes lowercase (#522) +* Fix Jetbrains example screenshot url. (#534) +* Preserve next line with trailing comment (#535) +* Break nested calls (#517) +* Update snapshot tests from conflicting PRs +* Reimplement MemberExpression printing (#469) +* Remove spurious test.js +* Fix small typo on Jetbrains section (#552) +* [JSX] Handle non-breaking space (#557) +* Make comments between if & else to look good (#544) +* Whitelist UnaryExpression for parentless objects (#545) +* Make comments inside of MemberExpression look good (#556) + +# 0.14.1 + +[link](https://github.com/jlongster/prettier/compare/0.14.0...0.14.1) + +* Fix range for object newline detection (#520) + * a bugfix for "Keep expanded objects expanded" (#495) + # 0.14.0 [link](https://github.com/jlongster/prettier/compare/0.13.0...0.14.0) diff --git a/README.md b/README.md index f17b8664f0be..c9226cc28f43 100644 --- a/README.md +++ b/README.md @@ -145,7 +145,7 @@ prettier.format(source, { // Controls the printing of trailing commas wherever possible trailingComma: false, - // Controls the printing of spaces inside array and objects + // Controls the printing of spaces inside object literals bracketSpacing: true, // Which parser to use. Valid options are 'flow' and 'babylon' diff --git a/docs/prettier.min.js b/docs/prettier.min.js index a2f87994533f..18f949a200ab 100644 --- a/docs/prettier.min.js +++ b/docs/prettier.min.js @@ -1,14 +1,14 @@ -var prettier=function(){function Se(UT,XT){return XT={exports:{}},UT(XT,XT.exports),XT.exports}function Te(){throw new Error("setTimeout has not been defined")}function Pe(){throw new Error("clearTimeout has not been defined")}function _e(UT){if(Yc===setTimeout)return setTimeout(UT,0);if((Yc===Te||!Yc)&&setTimeout)return Yc=setTimeout,setTimeout(UT,0);try{return Yc(UT,0)}catch(XT){try{return Yc.call(null,UT,0)}catch(WT){return Yc.call(this,UT,0)}}}function Ne(UT){if(Mc===clearTimeout)return clearTimeout(UT);if((Mc===Pe||!Mc)&&clearTimeout)return Mc=clearTimeout,clearTimeout(UT);try{return Mc(UT)}catch(XT){try{return Mc.call(null,UT)}catch(WT){return Mc.call(this,UT)}}}function Le(){Uc&&Xc&&(Uc=!1,Xc.length?Vc=Xc.concat(Vc):Wc=-1,Vc.length&&Re())}function Re(){if(!Uc){var UT=_e(Le);Uc=!0;for(var XT=Vc.length;XT;){for(Xc=Vc,Vc=[];++Wc>16,QT[SA++]=255&ZT>>8,QT[SA++]=255&ZT;return 2===KT?(ZT=$u[UT.charCodeAt(XT)]<<2|$u[UT.charCodeAt(XT+1)]>>4,QT[SA++]=255&ZT):1==KT&&(ZT=$u[UT.charCodeAt(XT)]<<10|$u[UT.charCodeAt(XT+1)]<<4|$u[UT.charCodeAt(XT+2)]>>2,QT[SA++]=255&ZT>>8,QT[SA++]=255&ZT),QT}function Je(UT){return Qu[63&UT>>18]+Qu[63&UT>>12]+Qu[63&UT>>6]+Qu[63&UT]}function Ze(UT,XT,WT){var JT,ZT=[];for(var KT=XT;KTSA?SA:$T+QT));return 1==JT?(XT=UT[WT-1],ZT+=Qu[XT>>2],ZT+=Qu[63&XT<<4],ZT+="=="):2==JT&&(XT=(UT[WT-2]<<8)+UT[WT-1],ZT+=Qu[XT>>10],ZT+=Qu[63&XT>>4],ZT+=Qu[63&XT<<2],ZT+="="),KT.push(ZT),KT.join("")}function Qe(UT,XT,WT,JT,ZT){var KT,QT,$T=8*ZT-JT-1,SA=(1<<$T)-1,TA=SA>>1,PA=-7,_A=WT?ZT-1:0,NA=WT?-1:1,IA=UT[XT+_A];for(_A+=NA,KT=IA&(1<<-PA)-1,IA>>=-PA,PA+=$T;0>=-PA,PA+=JT;0>1,NA=23===ZT?Math.pow(2,-24)-Math.pow(2,-77):0,IA=JT?0:KT-1,LA=JT?1:-1,RA=0>XT||0===XT&&0>1/XT?1:0;for(XT=Math.abs(XT),isNaN(XT)||XT===Infinity?($T=isNaN(XT)?1:0,QT=PA):(QT=Math.floor(Math.log(XT)/Math.LN2),1>XT*(SA=Math.pow(2,-QT))&&(QT--,SA*=2),XT+=1<=QT+_A?NA/SA:NA*Math.pow(2,1-_A),2<=XT*SA&&(QT++,SA/=2),QT+_A>=PA?($T=0,QT=PA):1<=QT+_A?($T=(XT*SA-1)*Math.pow(2,ZT),QT+=_A):($T=XT*Math.pow(2,_A-1)*Math.pow(2,ZT),QT=0));8<=ZT;UT[WT+IA]=255&$T,IA+=LA,$T/=256,ZT-=8);for(QT=QT<UT)throw new RangeError("\"size\" argument must not be negative")}function It(UT,XT,WT,JT){return Nt(XT),0>=XT?Tt(UT,XT):void 0===WT?Tt(UT,XT):"string"==typeof JT?Tt(UT,XT).fill(WT,JT):Tt(UT,XT).fill(WT)}function Lt(UT,XT){if(Nt(XT),UT=Tt(UT,0>XT?0:0|Vt(XT)),!Pt.TYPED_ARRAY_SUPPORT)for(var WT=0;WTXT.length?0:0|Vt(XT.length);UT=Tt(UT,WT);for(var JT=0;JTWT||XT.byteLength=St())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+St().toString(16)+" bytes");return 0|UT}function Ut(UT){return!!(null!=UT&&UT._isBuffer)}function Xt(UT,XT){if(Ut(UT))return UT.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(UT)||UT instanceof ArrayBuffer))return UT.byteLength;"string"!=typeof UT&&(UT=""+UT);var WT=UT.length;if(0===WT)return 0;for(var JT=!1;;)switch(XT){case"ascii":case"latin1":case"binary":return WT;case"utf8":case"utf-8":case void 0:return Pn(UT).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*WT;case"hex":return WT>>>1;case"base64":return Ln(UT).length;default:if(JT)return Pn(UT).length;XT=(""+XT).toLowerCase(),JT=!0;}}function Wt(UT,XT,WT){var JT=!1;if((void 0===XT||0>XT)&&(XT=0),XT>this.length)return"";if((void 0===WT||WT>this.length)&&(WT=this.length),0>=WT)return"";if(WT>>>=0,XT>>>=0,WT<=XT)return"";for(UT||(UT="utf8");!0;)switch(UT){case"hex":return Ma(this,XT,WT);case"utf8":case"utf-8":return La(this,XT,WT);case"ascii":return Oa(this,XT,WT);case"latin1":case"binary":return Ya(this,XT,WT);case"base64":return Na(this,XT,WT);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return Va(this,XT,WT);default:if(JT)throw new TypeError("Unknown encoding: "+UT);UT=(UT+"").toLowerCase(),JT=!0;}}function Jt(UT,XT,WT){var JT=UT[XT];UT[XT]=UT[WT],UT[WT]=JT}function Zt(UT,XT,WT,JT,ZT){if(0===UT.length)return-1;if("string"==typeof WT?(JT=WT,WT=0):2147483647WT&&(WT=-2147483648),WT=+WT,isNaN(WT)&&(WT=ZT?0:UT.length-1),0>WT&&(WT=UT.length+WT),WT>=UT.length){if(ZT)return-1;WT=UT.length-1}else if(0>WT)if(ZT)WT=0;else return-1;if("string"==typeof XT&&(XT=Pt.from(XT,JT)),Ut(XT))return 0===XT.length?-1:Kt(UT,XT,WT,JT,ZT);if("number"==typeof XT)return XT&=255,Pt.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?ZT?Uint8Array.prototype.indexOf.call(UT,XT,WT):Uint8Array.prototype.lastIndexOf.call(UT,XT,WT):Kt(UT,[XT],WT,JT,ZT);throw new TypeError("val must be string, number or Buffer")}function Kt(UT,XT,WT,JT,ZT){function KT(IA,LA){return 1===QT?IA[LA]:IA.readUInt16BE(LA*QT)}var QT=1,$T=UT.length,SA=XT.length;if(void 0!==JT&&(JT=(JT+"").toLowerCase(),"ucs2"===JT||"ucs-2"===JT||"utf16le"===JT||"utf-16le"===JT)){if(2>UT.length||2>XT.length)return-1;QT=2,$T/=2,SA/=2,WT/=2}var TA;if(ZT){var PA=-1;for(TA=WT;TA<$T;TA++)if(KT(UT,TA)!==KT(XT,-1==PA?0:TA-PA))-1!=PA&&(TA-=PA),PA=-1;else if(-1==PA&&(PA=TA),TA-PA+1===SA)return PA*QT}else for(WT+SA>$T&&(WT=$T-SA),TA=WT;0<=TA;TA--){var _A=!0;for(var NA=0;NAZT&&(JT=ZT)):JT=ZT;var KT=XT.length;if(0!=KT%2)throw new TypeError("Invalid hex string");JT>KT/2&&(JT=KT/2);for(var QT=0;QTKT&&(QT=KT):2==$T?(SA=UT[ZT+1],128==(192&SA)&&(_A=(31&KT)<<6|63&SA,127<_A&&(QT=_A))):3==$T?(SA=UT[ZT+1],TA=UT[ZT+2],128==(192&SA)&&128==(192&TA)&&(_A=(15&KT)<<12|(63&SA)<<6|63&TA,2047<_A&&(55296>_A||57343<_A)&&(QT=_A))):4==$T?(SA=UT[ZT+1],TA=UT[ZT+2],PA=UT[ZT+3],128==(192&SA)&&128==(192&TA)&&128==(192&PA)&&(_A=(15&KT)<<18|(63&SA)<<12|(63&TA)<<6|63&PA,65535<_A&&1114112>_A&&(QT=_A))):void 0}null===QT?(QT=65533,$T=1):65535>>10),QT=56320|1023&QT),JT.push(QT),ZT+=$T}return Ra(JT)}function Ra(UT){var XT=UT.length;if(XT<=Nm)return String.fromCharCode.apply(String,UT);for(var WT="",JT=0;JTXT)&&(XT=0),(!WT||0>WT||WT>JT)&&(WT=JT);var ZT="";for(var KT=XT;KTUT)throw new RangeError("offset is not uint");if(UT+XT>WT)throw new RangeError("Trying to access beyond buffer length")}function Xa(UT,XT,WT,JT,ZT,KT){if(!Ut(UT))throw new TypeError("\"buffer\" argument must be a Buffer instance");if(XT>ZT||XTUT.length)throw new RangeError("Index out of range")}function Wa(UT,XT,WT,JT){0>XT&&(XT=65535+XT+1);for(var ZT=0,KT=Math.min(UT.length-WT,2);ZT>>8*(JT?ZT:1-ZT)}function Ja(UT,XT,WT,JT){0>XT&&(XT=4294967295+XT+1);for(var ZT=0,KT=Math.min(UT.length-WT,4);ZT>>8*(JT?ZT:3-ZT)}function Za(UT,XT,WT,JT){if(WT+JT>UT.length)throw new RangeError("Index out of range");if(0>WT)throw new RangeError("Index out of range")}function Ka(UT,XT,WT,JT,ZT){return ZT||Za(UT,XT,WT,4,3.4028234663852886e38,-3.4028234663852886e38),$e(UT,XT,WT,JT,23,4),WT+4}function Qa(UT,XT,WT,JT,ZT){return ZT||Za(UT,XT,WT,8,1.7976931348623157e308,-1.7976931348623157e308),$e(UT,XT,WT,JT,52,8),WT+8}function $a(UT){if(UT=Sn(UT).replace(Lm,""),2>UT.length)return"";for(;0!=UT.length%4;)UT+="=";return UT}function Sn(UT){return UT.trim?UT.trim():UT.replace(/^\s+|\s+$/g,"")}function Tn(UT){return 16>UT?"0"+UT.toString(16):UT.toString(16)}function Pn(UT,XT){XT=XT||Infinity;var WT,JT=UT.length,ZT=null,KT=[];for(var QT=0;QTWT){if(!ZT){if(56319WT){-1<(XT-=3)&&KT.push(239,191,189),ZT=WT;continue}WT=(ZT-55296<<10|WT-56320)+65536}else ZT&&-1<(XT-=3)&&KT.push(239,191,189);if(ZT=null,128>WT){if(0>(XT-=1))break;KT.push(WT)}else if(2048>WT){if(0>(XT-=2))break;KT.push(192|WT>>6,128|63&WT)}else if(65536>WT){if(0>(XT-=3))break;KT.push(224|WT>>12,128|63&WT>>6,128|63&WT)}else if(1114112>WT){if(0>(XT-=4))break;KT.push(240|WT>>18,128|63&WT>>12,128|63&WT>>6,128|63&WT)}else throw new Error("Invalid code point")}return KT}function _n(UT){var XT=[];for(var WT=0;WT(XT-=2));++QT)WT=UT.charCodeAt(QT),JT=WT>>8,ZT=WT%256,KT.push(ZT),KT.push(JT);return KT}function Ln(UT){return We($a(UT))}function Rn(UT,XT,WT,JT){for(var ZT=0;ZT=XT.length||ZT>=UT.length);++ZT)XT[ZT+WT]=UT[ZT];return ZT}function On(UT){return UT!==UT}function Yn(UT){return null!=UT&&(!!UT._isBuffer||Mn(UT)||Vn(UT))}function Mn(UT){return!!UT.constructor&&"function"==typeof UT.constructor.isBuffer&&UT.constructor.isBuffer(UT)}function Vn(UT){return"function"==typeof UT.readFloatLE&&"function"==typeof UT.slice&&Mn(UT.slice(0,0))}function Un(UT,XT){var WT={seen:[],stylize:Wn};return 3<=arguments.length&&(WT.depth=arguments[2]),4<=arguments.length&&(WT.colors=arguments[3]),_r(XT)?WT.showHidden=XT:XT&&Zr(WT,XT),Or(WT.showHidden)&&(WT.showHidden=!1),Or(WT.depth)&&(WT.depth=2),Or(WT.colors)&&(WT.colors=!1),Or(WT.customInspect)&&(WT.customInspect=!0),WT.colors&&(WT.stylize=Xn),Zn(WT,UT,WT.depth)}function Xn(UT,XT){var WT=Un.styles[XT];return WT?"\x1B["+Un.colors[WT][0]+"m"+UT+"\x1B["+Un.colors[WT][1]+"m":UT}function Wn(UT){return UT}function Jn(UT){var XT={};return UT.forEach(function(WT){XT[WT]=!0}),XT}function Zn(UT,XT,WT){if(UT.customInspect&&XT&&Xr(XT.inspect)&&XT.inspect!==Un&&!(XT.constructor&&XT.constructor.prototype===XT)){var JT=XT.inspect(WT,UT);return Rr(JT)||(JT=Zn(UT,JT,WT)),JT}var ZT=Kn(UT,XT);if(ZT)return ZT;var KT=Object.keys(XT),QT=Jn(KT);if(UT.showHidden&&(KT=Object.getOwnPropertyNames(XT)),Ur(XT)&&(0<=KT.indexOf("message")||0<=KT.indexOf("description")))return Qn(XT);if(0===KT.length){if(Xr(XT)){var $T=XT.name?": "+XT.name:"";return UT.stylize("[Function"+$T+"]","special")}if(Yr(XT))return UT.stylize(RegExp.prototype.toString.call(XT),"regexp");if(Vr(XT))return UT.stylize(Date.prototype.toString.call(XT),"date");if(Ur(XT))return Qn(XT)}var SA="",TA=!1,PA=["{","}"];if(Pr(XT)&&(TA=!0,PA=["[","]"]),Xr(XT)){var _A=XT.name?": "+XT.name:"";SA=" [Function"+_A+"]"}if(Yr(XT)&&(SA=" "+RegExp.prototype.toString.call(XT)),Vr(XT)&&(SA=" "+Date.prototype.toUTCString.call(XT)),Ur(XT)&&(SA=" "+Qn(XT)),0===KT.length&&(!TA||0==XT.length))return PA[0]+SA+PA[1];if(0>WT)return Yr(XT)?UT.stylize(RegExp.prototype.toString.call(XT),"regexp"):UT.stylize("[Object]","special");UT.seen.push(XT);var NA;return NA=TA?$n(UT,XT,WT,QT,KT):KT.map(function(IA){return Sr(UT,XT,WT,QT,IA,TA)}),UT.seen.pop(),Tr(NA,SA,PA)}function Kn(UT,XT){if(Or(XT))return UT.stylize("undefined","undefined");if(Rr(XT)){var WT="'"+JSON.stringify(XT).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,"\"")+"'";return UT.stylize(WT,"string")}return Lr(XT)?UT.stylize(""+XT,"number"):_r(XT)?UT.stylize(""+XT,"boolean"):Nr(XT)?UT.stylize("null","null"):void 0}function Qn(UT){return"["+Error.prototype.toString.call(UT)+"]"}function $n(UT,XT,WT,JT,ZT){var KT=[];for(var QT=0,$T=XT.length;QT<$T;++QT)Kr(XT,QT+"")?KT.push(Sr(UT,XT,WT,JT,QT+"",!0)):KT.push("");return ZT.forEach(function(SA){SA.match(/^\d+$/)||KT.push(Sr(UT,XT,WT,JT,SA,!0))}),KT}function Sr(UT,XT,WT,JT,ZT,KT){var QT,$T,SA;if(SA=Object.getOwnPropertyDescriptor(XT,ZT)||{value:XT[ZT]},SA.get?SA.set?$T=UT.stylize("[Getter/Setter]","special"):$T=UT.stylize("[Getter]","special"):SA.set&&($T=UT.stylize("[Setter]","special")),Kr(JT,ZT)||(QT="["+ZT+"]"),$T||(0>UT.seen.indexOf(SA.value)?($T=Nr(WT)?Zn(UT,SA.value,null):Zn(UT,SA.value,WT-1),-1<$T.indexOf("\n")&&(KT?$T=$T.split("\n").map(function(TA){return" "+TA}).join("\n").substr(2):$T="\n"+$T.split("\n").map(function(TA){return" "+TA}).join("\n"))):$T=UT.stylize("[Circular]","special")),Or(QT)){if(KT&&ZT.match(/^\d+$/))return $T;QT=JSON.stringify(""+ZT),QT.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(QT=QT.substr(1,QT.length-2),QT=UT.stylize(QT,"name")):(QT=QT.replace(/'/g,"\\'").replace(/\\"/g,"\"").replace(/(^"|"$)/g,"'"),QT=UT.stylize(QT,"string"))}return QT+": "+$T}function Tr(UT,XT,WT){var JT=0,ZT=UT.reduce(function(KT,QT){return JT++,0<=QT.indexOf("\n")&&JT++,KT+QT.replace(/\u001b\[\d\d?m/g,"").length+1},0);return 60So(XT)-So(UT)&&Po(UT,So(XT)),0>To(UT)-To(XT)&&_o(UT,To(XT))}function Zi(UT){if(UT)switch(UT.type){case"ExportDeclaration":case"ExportDefaultDeclaration":case"ExportDefaultSpecifier":case"DeclareExportDeclaration":case"ExportNamedDeclaration":case"ExportAllDeclaration":return!0;}return!1}function Ki(UT){return(XT,WT,JT)=>{const ZT=JT&&JT.backwards;if(!1===WT)return!1;const KT=XT.length;let QT=WT;for(;0<=QT&&QT=Ny(WT[JT])-_y(UT));--JT);return void WT.splice(JT+1,0,UT)}}else if(UT[Py])return UT[Py];var ZT;if(Xh.check(UT))ZT=Object.keys(UT);else if(Wh.check(UT))ZT=Vh.getFieldNames(UT);else return;WT||Object.defineProperty(UT,Py,{value:WT=[],enumerable:!1});for(var JT=0,KT=ZT.length;JT>1,TA=JT[SA];if(0>=_y(TA)-_y(XT)&&0>=Ny(XT)-Ny(TA))return XT.enclosingNode=TA,0=Ny(TA)-_y(XT)){ZT=TA,QT=SA+1;continue}if(0>=Ny(XT)-_y(TA)){KT=TA,$T=SA;continue}throw new Error("Comment location overlaps with node location")}ZT&&(XT.precedingNode=ZT),KT&&(XT.followingNode=KT)}function Ro(UT,XT){var WT=UT.length;if(0!==WT){var JT=UT[0].precedingNode,ZT=UT[0].followingNode,KT=_y(ZT);for(var QT=WT;0--XT)return ZT}return null}function Ko(UT){return _b.BinaryExpression.check(UT)||_b.LogicalExpression.check(UT)}function Qo(UT){return!!_b.CallExpression.check(UT)||(Nb.check(UT)?UT.some(Qo):!!_b.Node.check(UT)&&Tb.someField(UT,function(XT,WT){return Qo(WT)}))}function $o(UT,XT,WT){Ob.ok(UT instanceof Mb);var JT=UT.getValue(),ZT=[],KT=!1,QT=Sl(UT,XT,WT);if(!JT||Yg(QT))return QT;if(JT.decorators&&0");const SP=UT.call(WT,"body"),TP=Wb([Wb(ZT)," ",SP]);return"ArrayExpression"===JT.body.type||"ObjectExpression"===JT.body.type||"JSXElement"===JT.body.type||"BlockStatement"===JT.body.type?Sg(TP):Sg(Pg([TP,Wb([Wb(ZT),Tg(XT.tabWidth,Wb([Zb,SP]))])]),{shouldBreak:Lg(SP)});case"MethodDefinition":return JT.static&&ZT.push("static "),ZT.push(_l(UT,XT,WT)),Wb(ZT);case"YieldExpression":return ZT.push("yield"),JT.delegate&&ZT.push("*"),JT.argument&&ZT.push(" ",UT.call(WT,"argument")),Wb(ZT);case"AwaitExpression":return ZT.push("await"),JT.all&&ZT.push("*"),JT.argument&&ZT.push(" ",UT.call(WT,"argument")),Wb(ZT);case"ModuleDeclaration":return ZT.push("module",UT.call(WT,"id")),JT.source?(Ob.ok(!JT.body),ZT.push("from",UT.call(WT,"source"))):ZT.push(UT.call(WT,"body")),Jb(" ",ZT);case"ImportSpecifier":return JT.imported?(ZT.push(UT.call(WT,"imported")),JT.local&&JT.local.name!==JT.imported.name&&ZT.push(" as ",UT.call(WT,"local"))):JT.id&&(ZT.push(UT.call(WT,"id")),JT.name&&ZT.push(" as ",UT.call(WT,"name"))),Wb(ZT);case"ExportSpecifier":return JT.local?(ZT.push(UT.call(WT,"local")),JT.exported&&JT.exported.name!==JT.local.name&&ZT.push(" as ",UT.call(WT,"exported"))):JT.id&&(ZT.push(UT.call(WT,"id")),JT.name&&ZT.push(" as ",UT.call(WT,"name"))),Wb(ZT);case"ExportBatchSpecifier":return"*";case"ImportNamespaceSpecifier":return ZT.push("* as "),JT.local?ZT.push(UT.call(WT,"local")):JT.id&&ZT.push(UT.call(WT,"id")),Wb(ZT);case"ImportDefaultSpecifier":return JT.local?UT.call(WT,"local"):UT.call(WT,"id");case"ExportDeclaration":case"ExportDefaultDeclaration":case"ExportNamedDeclaration":return Ml(UT,XT,WT);case"ExportAllDeclaration":return ZT.push("export *"),JT.exported&&ZT.push(" as ",UT.call(WT,"exported")),ZT.push(" from ",UT.call(WT,"source"),";"),Wb(ZT);case"ExportNamespaceSpecifier":return Wb(["* as ",UT.call(WT,"exported")]);case"ExportDefaultSpecifier":return UT.call(WT,"exported");case"ImportDeclaration":if(ZT.push("import "),JT.importKind&&"value"!==JT.importKind&&ZT.push(JT.importKind+" "),JT.specifiers&&0Wb([",",Zb,RP]))))];var YA=UT.getParentNode(),MA=Vg.ForStatement.check(YA)||Vg.ForInStatement.check(YA)||Vg.ForOfStatement&&Vg.ForOfStatement.check(YA)||Vg.ForAwaitStatement&&Vg.ForAwaitStatement.check(YA);return MA&&YA.body!==JT||ZT.push(";"),Sg(Wb(ZT));case"VariableDeclarator":return JT.init?Wb([UT.call(WT,"id")," = ",UT.call(WT,"init")]):UT.call(WT,"id");case"WithStatement":return Wb(["with (",UT.call(WT,"object"),")",Np(UT.call(WT,"body"),XT)]);case"IfStatement":const IP=Np(UT.call(WT,"consequent"),XT);if(ZT=["if (",Sg(Wb([Tg(XT.tabWidth,Wb([Qb,UT.call(WT,"test")])),Qb])),")",IP],JT.alternate){const RP=Lp(IP),OP=Rp(IP);RP&&!OP?ZT.push(" else"):ZT.push(Pg([Wb([Kb,"else"])])),ZT.push(Np(UT.call(WT,"alternate"),XT,"IfStatement"===JT.alternate.type))}return Sg(Wb(ZT));case"ForStatement":{const RP=Np(UT.call(WT,"body"),XT);return JT.init||JT.test||JT.update?Wb(["for (",Sg(Wb([Tg(XT.tabWidth,Wb([Qb,UT.call(WT,"init"),";",Zb,UT.call(WT,"test"),";",Zb,UT.call(WT,"update")])),Qb])),")",RP]):Wb(["for (;;)",RP])}case"WhileStatement":return Wb(["while (",Sg(Wb([Tg(XT.tabWidth,Wb([Qb,UT.call(WT,"test")])),Qb])),")",Np(UT.call(WT,"body"),XT)]);case"ForInStatement":return Wb([JT.each?"for each (":"for (",UT.call(WT,"left")," in ",UT.call(WT,"right"),")",Np(UT.call(WT,"body"),XT)]);case"ForOfStatement":return Wb(["for (",UT.call(WT,"left")," of ",UT.call(WT,"right"),")",Np(UT.call(WT,"body"),XT)]);case"ForAwaitStatement":return Wb(["for await (",UT.call(WT,"left")," of ",UT.call(WT,"right"),")",Np(UT.call(WT,"body"),XT)]);case"DoWhileStatement":var VA=Np(UT.call(WT,"body"),XT),UA=Wb(["do",VA]),ZT=[UA];const LP=Lp(VA);return LP?ZT.push(" while"):ZT.push(Wb([Zb,"while"])),ZT.push(" (",UT.call(WT,"test"),");"),Wb(ZT);case"DoExpression":var XA=UT.call(function(RP){return Tl(RP,XT,WT)},"body");return Wb(["do {\n",XA.indent(XT.tabWidth),"\n}"]);case"BreakStatement":return ZT.push("break"),JT.label&&ZT.push(" ",UT.call(WT,"label")),ZT.push(";"),Wb(ZT);case"ContinueStatement":return ZT.push("continue"),JT.label&&ZT.push(" ",UT.call(WT,"label")),ZT.push(";"),Wb(ZT);case"LabeledStatement":return"EmptyStatement"===JT.body.type?Wb([UT.call(WT,"label"),":;"]):Wb([UT.call(WT,"label"),":",Kb,UT.call(WT,"body")]);case"TryStatement":return ZT.push("try ",UT.call(WT,"block")),JT.handler?ZT.push(" ",UT.call(WT,"handler")):JT.handlers&&UT.each(function(RP){ZT.push(" ",WT(RP))},"handlers"),JT.finalizer&&ZT.push(" finally ",UT.call(WT,"finalizer")),Wb(ZT);case"CatchClause":return ZT.push("catch (",UT.call(WT,"param")),JT.guard&&ZT.push(" if ",UT.call(WT,"guard")),ZT.push(") ",UT.call(WT,"body")),Wb(ZT);case"ThrowStatement":return Wb(["throw ",UT.call(WT,"argument"),";"]);case"SwitchStatement":return Wb(["switch (",UT.call(WT,"discriminant"),") {",0"EmptyStatement"!==RP.type)){const RP=UT.call(function(OP){return Tl(OP,XT,WT)},"consequent");ZT.push(Lp(RP)?Wb([" ",RP]):Tg(XT.tabWidth,Wb([Kb,RP])))}return Wb(ZT);case"DebuggerStatement":return"debugger;";case"JSXAttribute":if(ZT.push(UT.call(WT,"name")),JT.value){let RP;RP=("StringLiteral"===JT.value.type||"Literal"===JT.value.type)&&"string"==typeof JT.value.value?"\""+Vb.htmlEscapeInsideDoubleQuote(JT.value.value)+"\"":UT.call(WT,"value"),ZT.push("=",RP)}return Wb(ZT);case"JSXIdentifier":return""+JT.name;case"JSXNamespacedName":return Jb(":",[UT.call(WT,"namespace"),UT.call(WT,"name")]);case"JSXMemberExpression":return Jb(".",[UT.call(WT,"object"),UT.call(WT,"property")]);case"JSXSpreadAttribute":return Wb(["{...",UT.call(WT,"argument"),"}"]);case"JSXExpressionContainer":{const RP=UT.getParentNode(0),OP="ArrayExpression"===JT.expression.type||"ObjectExpression"===JT.expression.type||"ArrowFunctionExpression"===JT.expression.type||"CallExpression"===JT.expression.type||"FunctionExpression"===JT.expression.type||"JSXElement"===RP.type&&("ConditionalExpression"===JT.expression.type||"LogicalExpression"===JT.expression.type);return OP?Wb(["{",UT.call(WT,"expression"),"}"]):Sg(Wb(["{",Tg(XT.tabWidth,Wb([Qb,UT.call(WT,"expression")])),Qb,"}"]))}case"JSXElement":{const RP=Kl(UT,XT,WT);return Ql(UT,RP,XT)}case"JSXOpeningElement":{const RP=UT.getValue();return 1===RP.attributes.length&&RP.attributes[0].value&&"Literal"===RP.attributes[0].value.type&&"string"==typeof RP.attributes[0].value.value?Sg(Wb(["<",UT.call(WT,"name")," ",Wb(UT.map(WT,"attributes")),RP.selfClosing?" />":">"])):Sg(Wb(["<",UT.call(WT,"name"),Wb([Tg(XT.tabWidth,Wb(UT.map(OP=>Wb([Zb,WT(OP)]),"attributes"))),RP.selfClosing?Zb:Qb]),RP.selfClosing?"/>":">"]))}case"JSXClosingElement":return Wb([""]);case"JSXText":throw new Error("JSXTest should be handled by JSXElement");case"JSXEmptyExpression":return Yb.printDanglingComments(UT,XT);case"TypeAnnotatedIdentifier":return Wb([UT.call(WT,"annotation")," ",UT.call(WT,"identifier")]);case"ClassBody":return 0===JT.body.length?"{}":Wb(["{",Tg(XT.tabWidth,Wb([Kb,UT.call(function(RP){return Tl(RP,XT,WT)},"body")])),Kb,"}"]);case"ClassPropertyDefinition":return ZT.push("static ",UT.call(WT,"definition")),Vg.MethodDefinition.check(JT.definition)||ZT.push(";"),Wb(ZT);case"ClassProperty":JT.static&&ZT.push("static ");var WA;return JT.computed?WA=Wb(["[",UT.call(WT,"key"),"]"]):(WA=Pl(UT,XT,WT),"plus"===JT.variance?WA=Wb(["+",WA]):"minus"===JT.variance&&(WA=Wb(["-",WA]))),ZT.push(WA),JT.typeAnnotation&&ZT.push(UT.call(WT,"typeAnnotation")),JT.value&&ZT.push(" = ",UT.call(WT,"value")),ZT.push(";"),Wb(ZT);case"ClassDeclaration":case"ClassExpression":return Wb(Ul(UT,XT,WT));case"TemplateElement":return Jb($b,JT.value.raw.split("\n"));case"TemplateLiteral":var JA=UT.map(WT,"expressions");return ZT.push("`"),UT.each(function(RP){var OP=RP.getName();ZT.push(WT(RP)),OP ":": ",UT.call(WT,"returnType"),UT.call(WT,"predicate")),Wb(ZT);case"FunctionTypeParam":return Wb([UT.call(WT,"name"),JT.optional?"?":"",JT.name?": ":"",UT.call(WT,"typeAnnotation")]);case"GenericTypeAnnotation":return Wb([UT.call(WT,"id"),UT.call(WT,"typeParameters")]);case"DeclareInterface":case"InterfaceDeclaration":{const RP=UT.getParentNode(1);return RP&&"DeclareModule"===RP.type&&ZT.push("declare "),ZT.push("interface ",UT.call(WT,"id"),UT.call(WT,"typeParameters")," "),0"]);case"TypeParameter":switch(JT.variance){case"plus":ZT.push("+");break;case"minus":ZT.push("-");break;default:}return ZT.push(UT.call(WT,"name")),JT.bound&&ZT.push(UT.call(WT,"bound")),JT["default"]&&ZT.push("=",UT.call(WT,"default")),Wb(ZT);case"TypeofTypeAnnotation":return Wb(["typeof ",UT.call(WT,"argument")]);case"VoidTypeAnnotation":return"void";case"NullTypeAnnotation":return"null";case"InferredPredicate":return"%checks";case"DeclaredPredicate":return Wb(["%checks(",UT.call(WT,"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(JT.type));}return p}function Tl(UT,XT,WT){let JT=[];return UT.map(function(ZT){var KT=ZT.getValue();if(KT&&"EmptyStatement"!==KT.type){const QT=WT(ZT),$T=XT.originalText,SA=[];SA.push(QT),Vb.isNextLineEmpty($T,KT)&&!Xp(ZT)&&SA.push(Kb),JT.push(Wb(SA))}}),Jb(Kb,JT)}function Pl(UT,XT,WT){const JT=UT.getNode(),ZT=JT.key;return("StringLiteral"===ZT.type||"Literal"===ZT.type&&"string"==typeof ZT.value)&&Ub(ZT.value)&&!JT.computed&&("flow"!==XT.parser||ZT.value.match(/[a-zA-Z0-9$_]/))?ZT.value:UT.call(WT,"key")}function _l(UT,XT,WT){var JT=UT.getNode(),ZT=JT.kind,KT=[];"ObjectMethod"===JT.type||"ClassMethod"===JT.type?JT.value=JT:Vg.FunctionExpression.assert(JT.value),JT.value.async&&KT.push("async "),ZT&&"init"!==ZT&&"method"!==ZT&&"constructor"!==ZT?(Ob.ok("get"===ZT||"set"===ZT),KT.push(ZT," ")):JT.value.generator&&KT.push("*");var QT=Pl(UT,XT,WT);return JT.computed&&(QT=Wb(["[",QT,"]"])),KT.push(QT,UT.call(WT,"value","typeParameters"),Sg(Wb([UT.call(function($T){return Ll($T,WT,XT)},"value"),UT.call($T=>Ol($T,WT),"value")]))," ",UT.call(WT,"value","body")),Wb(KT)}function Nl(UT,XT,WT){var JT=UT.map(WT,"arguments");if(0===JT.length)return"()";const ZT=Vb.getLast(UT.getValue().arguments),KT="ObjectExpression"===ZT.type||"ArrayExpression"===ZT.type||"FunctionExpression"===ZT.type||"ArrowFunctionExpression"===ZT.type&&("BlockStatement"===ZT.body.type||"ArrowFunctionExpression"===ZT.body.type||"ObjectExpression"===ZT.body.type||"ArrayExpression"===ZT.body.type||"CallExpression"===ZT.body.type||"JSXElement"===ZT.body.type)||"NewExpression"===ZT.type;if(KT){const QT=JT.slice(0,-1).some(Lg);return Pg([Wb(["(",Jb(Wb([", "]),JT),")"]),Wb(["(",Jb(Wb([",",Zb]),JT.slice(0,-1)),1JT(TA.call)).length;if($T){const TA=Mb.from(QT).call(WT,"callee","object"),PA=ZT.map(NA=>({property:Xl(Mb.from(NA.member),XT,WT),args:Nl(Mb.from(NA.call),XT,WT)})),_A=Wb([TA,Wb(PA.map(NA=>{return Tg(XT.tabWidth,Wb([Kb,NA.property,NA.args]))}))]);return SA?_A:Pg([Wb([TA,Wb(PA.map(NA=>{return Wb([NA.property,NA.args])}))]),_A])}}function Jl(UT){if(0===UT.children.length)return!0;if(1{const NA=_A.match(/\n/g);if(NA)return ZT.push(Kb),void(1{let RA=KT[LA-1];RA&&Lg(RA)?(QT=!0,NA.push([IA])):Vb.getLast(NA).push(IA),!QT&&LA===KT.length-1&&Lg(IA)&&(QT=!0)}),TA=[Kb,Wb(NA.map(IA=>Pg([Wb(IA)])))]}const PA=UT.call(WT,"closingElement"),_A=Sg(Wb([ZT,Tg(XT.tabWidth,Sg(Wb(TA),{shouldBreak:!0})),Kb,PA]));return QT?_A:Pg([Sg(Wb([ZT,Wb(KT),PA])),_A])}function Ql(UT,XT,WT){const JT=UT.getParentNode();return JT?{JSXElement:!0,ExpressionStatement:!0,CallExpression:!0,ConditionalExpression:!0,LogicalExpression:!0}[JT.type]?XT:Sg(Wb([_g("("),Tg(WT.tabWidth,Wb([Qb,XT])),Qb,_g(")")])):XT}function $l(UT){return"BinaryExpression"===UT.type||"LogicalExpression"===UT.type}function _p(UT,XT,WT,JT,ZT){let KT=UT.getValue();return $l(KT)?(Vb.getPrecedence(KT.left.operator)===Vb.getPrecedence(KT.operator)?UT.call(QT=>_p(QT,XT,WT,JT,!0),"left"):XT.push(UT.call(WT,"left")),XT.push(" ",KT.operator,Zb,UT.call(WT,"right")),ZT&&KT.comments&&XT.push(Yb.printComments(UT,()=>"",JT))):XT.push(UT.call(WT)),XT}function Np(UT,XT,WT){return""===UT?";":Lp(UT)||WT?Wb([" ",UT]):Tg(XT.tabWidth,Wb([Zb,UT]))}function Lp(UT){const XT=Og(UT);return"{"===XT||"{}"===XT}function Rp(UT){const XT=Og(UT);return"{}"===XT}function Yp(UT,XT){const WT=UT.value;if(Ug.assert(WT),"flow"===XT.parser&&-1!==WT.indexOf("\uFFFD"))return UT.raw;const JT=UT.extra?UT.extra.raw:UT.raw,ZT=JT.slice(1,-1),KT={quote:"\"",regex:/"/g},QT={quote:"'",regex:/'/g},$T=XT.singleQuote?QT:KT,SA=$T===QT?KT:QT;let TA=!1;if(ZT.includes($T.quote)){const _A=(ZT.match($T.regex)||[]).length,NA=(ZT.match(SA.regex)||[]).length;TA=_A>NA}const PA=TA?SA.quote:$T.quote;return Mp(ZT,PA)}function Mp(UT,XT){const WT="\""===XT?"'":"\"",JT=/\\([\s\S])|(['"])/g,ZT=UT.replace(JT,(KT,QT,$T)=>{return QT===WT?QT:$T===XT?"\\"+$T:KT});return XT+ZT+XT}function Up(UT){return UT.toLowerCase().replace(/^([\d.]+e)(?:\+|(-))?0*/,"$1$2").replace(/^\./,"0.").replace(/\.(?=e|$)/,"")}function Xp(UT){const XT=UT.getParentNode(),WT=UT.getValue(),JT=XT.body;return JT&&JT[JT.length-1]===WT}function Wp(UT){const XT=UT.type;return Vg.Literal.check(UT)||"ArrayExpression"===XT||"ArrayPattern"===XT||"ArrowFunctionExpression"===XT||"AssignmentPattern"===XT||"CallExpression"===XT||"FunctionExpression"===XT||"Identifier"===XT||"Literal"===XT||"MemberExpression"===XT||"NewExpression"===XT||"ObjectExpression"===XT||"ObjectPattern"===XT||"StringLiteral"===XT||"ThisExpression"===XT||"TypeCastExpression"===XT}function Jp(UT,XT,WT){let JT=XT.length;for(const ZT=[UT];0<=WT;){if(0===ZT.length){if(0===JT)return!0;ZT.push(XT[JT-1]),JT--;continue}const QT=ZT.pop(),$T=QT[0],SA=QT[1],TA=QT[2];if("string"==typeof TA)WT-=TA.length;else switch(TA.type){case"concat":for(var KT=TA.parts.length-1;0<=KT;KT--)ZT.push([$T,SA,TA.parts[KT]]);break;case"indent":ZT.push([$T+TA.n,SA,TA.contents]);break;case"group":ZT.push([$T,TA.break?Xg:SA,TA.contents]);break;case"if-break":SA===Xg&&TA.breakContents&&ZT.push([$T,SA,TA.breakContents]),SA===Wg&&TA.flatContents&&ZT.push([$T,SA,TA.flatContents]);break;case"line":switch(SA){case Wg:if(!TA.hard){TA.soft||(WT-=1);break}case Xg:return!0;}}}return!1}function Zp(UT){return"[object Array]"===UT||"[object ArrayBuffer]"===UT||"[object DataView]"===UT||"[object Float32Array]"===UT||"[object Float64Array]"===UT||"[object Int8Array]"===UT||"[object Int16Array]"===UT||"[object Int32Array]"===UT||"[object Uint8Array]"===UT||"[object Uint8ClampedArray]"===UT||"[object Uint16Array]"===UT||"[object Uint32Array]"===UT}function Kp(UT){return UT==+UT?0===UT&&0>1/UT?"-0":""+UT:"NaN"}function Qp(UT,XT){return XT?""===UT.name?"[Function anonymous]":"[Function "+UT.name+"]":"[Function]"}function $p(UT){return Tx.call(UT).replace(Px,"Symbol($1)")}function Sd(UT){return"["+$g.call(UT)+"]"}function Td(UT,XT,WT){if(!0===UT||!1===UT)return""+UT;if(void 0===UT)return"undefined";if(null===UT)return"null";const JT=typeof UT;if("number"==JT)return Kp(UT);if("string"==JT)return"\""+Zg(UT)+"\"";if("function"==JT)return Qp(UT,XT);if("symbol"==JT)return $p(UT);const ZT=Kg.call(UT);return"[object WeakMap]"===ZT?"WeakMap {}":"[object WeakSet]"===ZT?"WeakSet {}":"[object Function]"===ZT||"[object GeneratorFunction]"===ZT?Qp(UT,XT):"[object Symbol]"===ZT?$p(UT):"[object Date]"===ZT?Qg.call(UT):"[object Error]"===ZT?Sd(UT):"[object RegExp]"===ZT?WT?Zg(Sx.call(UT)):Sx.call(UT):"[object Arguments]"===ZT&&0===UT.length?"Arguments []":Zp(ZT)&&0===UT.length?UT.constructor.name+" []":!!(UT instanceof Error)&&Sd(UT)}function Pd(UT,XT,WT,JT,ZT,KT,QT,$T,SA,TA,PA,_A,NA,IA){let LA="";if(UT.length){LA+=ZT;const RA=WT+XT;for(let OA=0;OA "+VA,OA=RA.next(),OA.done||(LA+=","+JT)}LA+=(TA?"":",")+ZT+WT}return LA+"}"}function Rd(UT,XT,WT,JT,ZT,KT,QT,$T,SA,TA,PA,_A,NA,IA){const LA=TA?"":UT.constructor?UT.constructor.name+" ":"Object ";let RA=LA+"{",OA=Object.keys(UT).sort();const YA=Nx(UT);if(YA.length&&(OA=OA.filter(MA=>"symbol"!=typeof MA&&"[object Symbol]"!==Kg.call(MA)).concat(YA)),OA.length){RA+=ZT;const MA=WT+XT;for(let VA=0;VAQT;if(PA&&!LA&&UT.toJSON&&"function"==typeof UT.toJSON)return Vd(UT.toJSON(),XT,WT,JT,ZT,KT,QT,$T,SA,TA,PA,_A,NA,IA);const RA=Kg.call(UT);return"[object Arguments]"===RA?LA?"[Arguments]":_d(UT,XT,WT,JT,ZT,KT,QT,$T,SA,TA,PA,_A,NA,IA):Zp(RA)?LA?"[Array]":Nd(UT,XT,WT,JT,ZT,KT,QT,$T,SA,TA,PA,_A,NA,IA):"[object Map]"===RA?LA?"[Map]":Ld(UT,XT,WT,JT,ZT,KT,QT,$T,SA,TA,PA,_A,NA,IA):"[object Set]"===RA?LA?"[Set]":Od(UT,XT,WT,JT,ZT,KT,QT,$T,SA,TA,PA,_A,NA,IA):LA?"[Object]":Rd(UT,XT,WT,JT,ZT,KT,QT,$T,SA,TA,PA,_A,NA,IA)}function Md(UT,XT,WT,JT,ZT,KT,QT,$T,SA,TA,PA,_A,NA,IA){let LA=!1,RA;for(let OA=0;OA{if(!Ix.hasOwnProperty(XT))throw new Error("prettyFormat: Invalid option: "+XT)}),UT.min&&void 0!==UT.indent&&0!==UT.indent)throw new Error("prettyFormat: Cannot run with min option and indent")}function Xd(UT){const XT={};return Object.keys(Ix).forEach(WT=>XT[WT]=UT.hasOwnProperty(WT)?UT[WT]:Ix[WT]),XT.min&&(XT.indent=0),XT}function Wd(UT){return Array(UT+1).join(" ")}function Jd(UT){if("concat"===UT.type){var XT=[];for(var WT=0;WT!=?({]|\/(?![\/*])))))|(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,XT.matchToToken=function(WT){var JT={type:"invalid",value:WT[0]};return WT[1]?(JT.type="string",JT.closed=!!(WT[3]||WT[4])):WT[5]?JT.type="comment":WT[6]?(JT.type="comment",JT.closed=!!WT[7]):WT[8]?JT.type="regex":WT[9]?JT.type="number":WT[10]?JT.type="name":WT[11]?JT.type="punctuator":WT[12]&&(JT.type="whitespace"),JT}}),_c=Se(function(UT){(function(){"use strict";function XT(JT){if(null==JT)return!1;switch(JT.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 WT(JT){switch(JT.type){case"IfStatement":return null==JT.alternate?JT.consequent:JT.alternate;case"LabeledStatement":case"ForStatement":case"ForInStatement":case"WhileStatement":case"WithStatement":return JT.body;}return null}UT.exports={isExpression:function(ZT){if(null==ZT)return!1;switch(ZT.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:XT,isIterationStatement:function(ZT){if(null==ZT)return!1;switch(ZT.type){case"DoWhileStatement":case"ForInStatement":case"ForStatement":case"WhileStatement":return!0;}return!1},isSourceElement:function(ZT){return XT(ZT)||null!=ZT&&"FunctionDeclaration"===ZT.type},isProblematicIfStatement:function(ZT){var KT;if("IfStatement"!==ZT.type)return!1;if(null==ZT.alternate)return!1;KT=ZT.consequent;do{if("IfStatement"===KT.type&&null==KT.alternate)return!0;KT=WT(KT)}while(KT);return!1},trailingStatement:WT}})()}),Nc=Se(function(UT){(function(){"use strict";function XT(SA){if(65535>=SA)return String.fromCharCode(SA);var TA=String.fromCharCode(Math.floor((SA-65536)/1024)+55296),PA=String.fromCharCode((SA-65536)%1024+56320);return TA+PA}var WT,JT,ZT,KT,QT,$T;for(JT={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]/},WT={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]/},ZT=[5760,6158,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8239,8287,12288,65279],KT=Array(128),$T=0;128>$T;++$T)KT[$T]=97<=$T&&122>=$T||65<=$T&&90>=$T||36===$T||95===$T;for(QT=Array(128),$T=0;128>$T;++$T)QT[$T]=97<=$T&&122>=$T||65<=$T&&90>=$T||48<=$T&&57>=$T||36===$T||95===$T;UT.exports={isDecimalDigit:function(TA){return 48<=TA&&57>=TA},isHexDigit:function(TA){return 48<=TA&&57>=TA||97<=TA&&102>=TA||65<=TA&&70>=TA},isOctalDigit:function(TA){return 48<=TA&&55>=TA},isWhiteSpace:function(TA){return 32===TA||9===TA||11===TA||12===TA||160===TA||5760<=TA&&0<=ZT.indexOf(TA)},isLineTerminator:function(TA){return 10===TA||13===TA||8232===TA||8233===TA},isIdentifierStartES5:function(TA){return 128>TA?KT[TA]:JT.NonAsciiIdentifierStart.test(XT(TA))},isIdentifierPartES5:function(TA){return 128>TA?QT[TA]:JT.NonAsciiIdentifierPart.test(XT(TA))},isIdentifierStartES6:function(TA){return 128>TA?KT[TA]:WT.NonAsciiIdentifierStart.test(XT(TA))},isIdentifierPartES6:function(TA){return 128>TA?QT[TA]:WT.NonAsciiIdentifierPart.test(XT(TA))}}})()}),Lc=Se(function(UT){(function(){"use strict";function XT(PA){return"implements"===PA||"interface"===PA||"package"===PA||"private"===PA||"protected"===PA||"public"===PA||"static"===PA||"let"===PA}function WT(PA,_A){return(_A||"yield"!==PA)&&JT(PA,_A)}function JT(PA,_A){if(_A&&XT(PA))return!0;switch(PA.length){case 2:return"if"===PA||"in"===PA||"do"===PA;case 3:return"var"===PA||"for"===PA||"new"===PA||"try"===PA;case 4:return"this"===PA||"else"===PA||"case"===PA||"void"===PA||"with"===PA||"enum"===PA;case 5:return"while"===PA||"break"===PA||"catch"===PA||"throw"===PA||"const"===PA||"yield"===PA||"class"===PA||"super"===PA;case 6:return"return"===PA||"typeof"===PA||"delete"===PA||"switch"===PA||"export"===PA||"import"===PA;case 7:return"default"===PA||"finally"===PA||"extends"===PA;case 8:return"function"===PA||"continue"===PA||"debugger"===PA;case 10:return"instanceof"===PA;default:return!1;}}function ZT(PA,_A){return"null"===PA||"true"===PA||"false"===PA||WT(PA,_A)}function KT(PA,_A){return"null"===PA||"true"===PA||"false"===PA||JT(PA,_A)}function QT(PA){var _A,NA,IA;if(0===PA.length)return!1;if(IA=PA.charCodeAt(0),!TA.isIdentifierStartES5(IA))return!1;for(_A=1,NA=PA.length;_A=IA){if(++_A,_A>=NA)return!1;if(LA=PA.charCodeAt(_A),!(56320<=LA&&57343>=LA))return!1;IA=$T(IA,LA)}if(!RA(IA))return!1;RA=TA.isIdentifierPartES6}return!0}var TA=Nc;UT.exports={isKeywordES5:WT,isKeywordES6:JT,isReservedWordES5:ZT,isReservedWordES6:KT,isRestrictedWord:function(_A){return"eval"===_A||"arguments"===_A},isIdentifierNameES5:QT,isIdentifierNameES6:SA,isIdentifierES5:function(_A,NA){return QT(_A)&&!ZT(_A,NA)},isIdentifierES6:function(_A,NA){return SA(_A)&&!KT(_A,NA)}}})()}),Rc=Se(function(UT,XT){(function(){"use strict";XT.ast=_c,XT.code=Nc,XT.keyword=Lc})()}),Oc="undefined"==typeof global?"undefined"==typeof self?"undefined"==typeof window?{}:window:self:global,Yc=Te,Mc=Pe;"function"==typeof Oc.setTimeout&&(Yc=setTimeout),"function"==typeof Oc.clearTimeout&&(Mc=clearTimeout);var Vc=[],Uc=!1,Xc,Wc=-1;Oe.prototype.run=function(){this.fun.apply(null,this.array)};var Jc=Oc.performance||{},Zc=Jc.now||Jc.mozNow||Jc.msNow||Jc.oNow||Jc.webkitNow||function(){return new Date().getTime()},Kc=new Date,Qc={nextTick:function(XT){var WT=Array(arguments.length-1);if(1ZT&&(JT--,ZT+=1e9)),[JT,ZT]},platform:"browser",release:{},config:{},uptime:function(){var XT=new Date;return(XT-Kc)/1e3}},$c=/[|\\{}()[\]^$+*?.]/g,Su=Se(function(UT){"use strict";Object.defineProperty(UT,"exports",{enumerable:!0,get:function(){var WT={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 WT.colors.grey=WT.colors.gray,Object.keys(WT).forEach(function(JT){var ZT=WT[JT];Object.keys(ZT).forEach(function(KT){var QT=ZT[KT];WT[KT]=ZT[KT]={open:"\x1B["+QT[0]+"m",close:"\x1B["+QT[1]+"m"}}),Object.defineProperty(WT,JT,{value:ZT,enumerable:!1})}),WT}})}),Tu=function(){return /[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/g},Pu=Tu(),_u=new RegExp(Tu().source),Nu=_u.test.bind(_u),Iu=Qc.argv,Lu=Iu.indexOf("--"),Ru=function(UT){UT="--"+UT;var XT=Iu.indexOf(UT);return-1!==XT&&(!(-1!==Lu)||XT"),VA(UA.gutter,NP),SP,IP].join("")}return" "+VA(UA.gutter,NP)+SP}).join("\n");return YA?MA.reset($A):$A};var QT=Pc,$T=WT(QT),SA=WT(Rc),TA=WT(Zu),PA=/\r\n|[\n\r\u2028\u2029]/,_A=/^[a-z][\w-]*$/i,NA=/^[()\[\]{}]$/;UT.exports=XT["default"]}),Qu=[],$u=[],Sm="undefined"==typeof Uint8Array?Array:Uint8Array,Tm=!1,Pm={}.toString,_m=Array.isArray||function(UT){return"[object Array]"==Pm.call(UT)};Pt.TYPED_ARRAY_SUPPORT=!(Oc.TYPED_ARRAY_SUPPORT!==void 0)||Oc.TYPED_ARRAY_SUPPORT,Pt.poolSize=8192,Pt._augment=function(UT){return UT.__proto__=Pt.prototype,UT},Pt.from=function(UT,XT,WT){return _t(null,UT,XT,WT)},Pt.TYPED_ARRAY_SUPPORT&&(Pt.prototype.__proto__=Uint8Array.prototype,Pt.__proto__=Uint8Array,"undefined"!=typeof Symbol&&Symbol.species&&Pt[Symbol.species]===Pt),Pt.alloc=function(UT,XT,WT){return It(null,UT,XT,WT)},Pt.allocUnsafe=function(UT){return Lt(null,UT)},Pt.allocUnsafeSlow=function(UT){return Lt(null,UT)},Pt.isBuffer=Yn,Pt.compare=function(XT,WT){if(!Ut(XT)||!Ut(WT))throw new TypeError("Arguments must be Buffers");if(XT===WT)return 0;var JT=XT.length,ZT=WT.length;for(var KT=0,QT=Math.min(JT,ZT);KTWT&&(XT+=" ... ")),""},Pt.prototype.compare=function(XT,WT,JT,ZT,KT){if(!Ut(XT))throw new TypeError("Argument must be a Buffer");if(void 0===WT&&(WT=0),void 0===JT&&(JT=XT?XT.length:0),void 0===ZT&&(ZT=0),void 0===KT&&(KT=this.length),0>WT||JT>XT.length||0>ZT||KT>this.length)throw new RangeError("out of range index");if(ZT>=KT&&WT>=JT)return 0;if(ZT>=KT)return-1;if(WT>=JT)return 1;if(WT>>>=0,JT>>>=0,ZT>>>=0,KT>>>=0,this===XT)return 0;var QT=KT-ZT,$T=JT-WT,SA=Math.min(QT,$T),TA=this.slice(ZT,KT),PA=XT.slice(WT,JT);for(var _A=0;_AKT)&&(JT=KT),0JT||0>WT)||WT>this.length)throw new RangeError("Attempt to write outside buffer bounds");ZT||(ZT="utf8");for(var QT=!1;;)switch(ZT){case"hex":return Qt(this,XT,WT,JT);case"utf8":case"utf-8":return $t(this,XT,WT,JT);case"ascii":return Sa(this,XT,WT,JT);case"latin1":case"binary":return Ta(this,XT,WT,JT);case"base64":return Pa(this,XT,WT,JT);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return _a(this,XT,WT,JT);default:if(QT)throw new TypeError("Unknown encoding: "+ZT);ZT=(""+ZT).toLowerCase(),QT=!0;}},Pt.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var Nm=4096;Pt.prototype.slice=function(XT,WT){var JT=this.length;XT=~~XT,WT=WT===void 0?JT:~~WT,0>XT?(XT+=JT,0>XT&&(XT=0)):XT>JT&&(XT=JT),0>WT?(WT+=JT,0>WT&&(WT=0)):WT>JT&&(WT=JT),WT=KT&&(ZT-=Math.pow(2,8*WT)),ZT},Pt.prototype.readIntBE=function(XT,WT,JT){XT|=0,WT|=0,JT||Ua(XT,WT,this.length);for(var ZT=WT,KT=1,QT=this[XT+--ZT];0=KT&&(QT-=Math.pow(2,8*WT)),QT},Pt.prototype.readInt8=function(XT,WT){return WT||Ua(XT,1,this.length),128&this[XT]?-1*(255-this[XT]+1):this[XT]},Pt.prototype.readInt16LE=function(XT,WT){WT||Ua(XT,2,this.length);var JT=this[XT]|this[XT+1]<<8;return 32768&JT?4294901760|JT:JT},Pt.prototype.readInt16BE=function(XT,WT){WT||Ua(XT,2,this.length);var JT=this[XT+1]|this[XT]<<8;return 32768&JT?4294901760|JT:JT},Pt.prototype.readInt32LE=function(XT,WT){return WT||Ua(XT,4,this.length),this[XT]|this[XT+1]<<8|this[XT+2]<<16|this[XT+3]<<24},Pt.prototype.readInt32BE=function(XT,WT){return WT||Ua(XT,4,this.length),this[XT]<<24|this[XT+1]<<16|this[XT+2]<<8|this[XT+3]},Pt.prototype.readFloatLE=function(XT,WT){return WT||Ua(XT,4,this.length),Qe(this,XT,!0,23,4)},Pt.prototype.readFloatBE=function(XT,WT){return WT||Ua(XT,4,this.length),Qe(this,XT,!1,23,4)},Pt.prototype.readDoubleLE=function(XT,WT){return WT||Ua(XT,8,this.length),Qe(this,XT,!0,52,8)},Pt.prototype.readDoubleBE=function(XT,WT){return WT||Ua(XT,8,this.length),Qe(this,XT,!1,52,8)},Pt.prototype.writeUIntLE=function(XT,WT,JT,ZT){if(XT=+XT,WT|=0,JT|=0,!ZT){var KT=Math.pow(2,8*JT)-1;Xa(this,XT,WT,JT,KT,0)}var QT=1,$T=0;for(this[WT]=255&XT;++$T>>8):Wa(this,XT,WT,!0),WT+2},Pt.prototype.writeUInt16BE=function(XT,WT,JT){return XT=+XT,WT|=0,JT||Xa(this,XT,WT,2,65535,0),Pt.TYPED_ARRAY_SUPPORT?(this[WT]=XT>>>8,this[WT+1]=255&XT):Wa(this,XT,WT,!1),WT+2},Pt.prototype.writeUInt32LE=function(XT,WT,JT){return XT=+XT,WT|=0,JT||Xa(this,XT,WT,4,4294967295,0),Pt.TYPED_ARRAY_SUPPORT?(this[WT+3]=XT>>>24,this[WT+2]=XT>>>16,this[WT+1]=XT>>>8,this[WT]=255&XT):Ja(this,XT,WT,!0),WT+4},Pt.prototype.writeUInt32BE=function(XT,WT,JT){return XT=+XT,WT|=0,JT||Xa(this,XT,WT,4,4294967295,0),Pt.TYPED_ARRAY_SUPPORT?(this[WT]=XT>>>24,this[WT+1]=XT>>>16,this[WT+2]=XT>>>8,this[WT+3]=255&XT):Ja(this,XT,WT,!1),WT+4},Pt.prototype.writeIntLE=function(XT,WT,JT,ZT){if(XT=+XT,WT|=0,!ZT){var KT=Math.pow(2,8*JT-1);Xa(this,XT,WT,JT,KT-1,-KT)}var QT=0,$T=1,SA=0;for(this[WT]=255&XT;++QTXT&&0==SA&&0!==this[WT+QT-1]&&(SA=1),this[WT+QT]=255&(XT/$T>>0)-SA;return WT+JT},Pt.prototype.writeIntBE=function(XT,WT,JT,ZT){if(XT=+XT,WT|=0,!ZT){var KT=Math.pow(2,8*JT-1);Xa(this,XT,WT,JT,KT-1,-KT)}var QT=JT-1,$T=1,SA=0;for(this[WT+QT]=255&XT;0<=--QT&&($T*=256);)0>XT&&0==SA&&0!==this[WT+QT+1]&&(SA=1),this[WT+QT]=255&(XT/$T>>0)-SA;return WT+JT},Pt.prototype.writeInt8=function(XT,WT,JT){return XT=+XT,WT|=0,JT||Xa(this,XT,WT,1,127,-128),Pt.TYPED_ARRAY_SUPPORT||(XT=Math.floor(XT)),0>XT&&(XT=255+XT+1),this[WT]=255&XT,WT+1},Pt.prototype.writeInt16LE=function(XT,WT,JT){return XT=+XT,WT|=0,JT||Xa(this,XT,WT,2,32767,-32768),Pt.TYPED_ARRAY_SUPPORT?(this[WT]=255&XT,this[WT+1]=XT>>>8):Wa(this,XT,WT,!0),WT+2},Pt.prototype.writeInt16BE=function(XT,WT,JT){return XT=+XT,WT|=0,JT||Xa(this,XT,WT,2,32767,-32768),Pt.TYPED_ARRAY_SUPPORT?(this[WT]=XT>>>8,this[WT+1]=255&XT):Wa(this,XT,WT,!1),WT+2},Pt.prototype.writeInt32LE=function(XT,WT,JT){return XT=+XT,WT|=0,JT||Xa(this,XT,WT,4,2147483647,-2147483648),Pt.TYPED_ARRAY_SUPPORT?(this[WT]=255&XT,this[WT+1]=XT>>>8,this[WT+2]=XT>>>16,this[WT+3]=XT>>>24):Ja(this,XT,WT,!0),WT+4},Pt.prototype.writeInt32BE=function(XT,WT,JT){return XT=+XT,WT|=0,JT||Xa(this,XT,WT,4,2147483647,-2147483648),0>XT&&(XT=4294967295+XT+1),Pt.TYPED_ARRAY_SUPPORT?(this[WT]=XT>>>24,this[WT+1]=XT>>>16,this[WT+2]=XT>>>8,this[WT+3]=255&XT):Ja(this,XT,WT,!1),WT+4},Pt.prototype.writeFloatLE=function(XT,WT,JT){return Ka(this,XT,WT,!0,JT)},Pt.prototype.writeFloatBE=function(XT,WT,JT){return Ka(this,XT,WT,!1,JT)},Pt.prototype.writeDoubleLE=function(XT,WT,JT){return Qa(this,XT,WT,!0,JT)},Pt.prototype.writeDoubleBE=function(XT,WT,JT){return Qa(this,XT,WT,!1,JT)},Pt.prototype.copy=function(XT,WT,JT,ZT){if(JT||(JT=0),ZT||0===ZT||(ZT=this.length),WT>=XT.length&&(WT=XT.length),WT||(WT=0),0WT)throw new RangeError("targetStart out of bounds");if(0>JT||JT>=this.length)throw new RangeError("sourceStart out of bounds");if(0>ZT)throw new RangeError("sourceEnd out of bounds");ZT>this.length&&(ZT=this.length),XT.length-WTKT||!Pt.TYPED_ARRAY_SUPPORT)for(QT=0;QTKT&&(XT=KT)}if(void 0!==ZT&&"string"!=typeof ZT)throw new TypeError("encoding must be a string");if("string"==typeof ZT&&!Pt.isEncoding(ZT))throw new TypeError("Unknown encoding: "+ZT)}else"number"==typeof XT&&(XT&=255);if(0>WT||this.length>>=0,JT=JT===void 0?this.length:JT>>>0,XT||(XT=0);var QT;if("number"==typeof XT)for(QT=WT;QTNP.indexOf(LP)&&NP.push(LP)}),this},Object.defineProperty(QA,"buildable",{value:!1});var $A={};IA.builders=$A;var SP={};IA.defineMethod=function(_P,NP){var IP=SP[_P];return JA.check(NP)?delete SP[_P]:(VA.assert(NP),Object.defineProperty(SP,_P,{enumerable:!0,configurable:!0,value:NP})),IP};var TP=MA.arrayOf();QA.build=function(){var _P=this,NP=Zm.call(arguments);return(TP.assert(NP),Object.defineProperty(_P,"buildParams",{value:NP,writable:!1,enumerable:!1,configurable:!0}),_P.buildable)?_P:(_P.field("type",String,function(){return _P.typeName}),Object.defineProperty(_P,"buildable",{value:!0}),Object.defineProperty($A,QT(_P.typeName),{enumerable:!0,value:function(){function IP(YP,MP){if(!Tf.call(OP,YP)){var VP=_P.allFields;if(!Tf.call(VP,YP))throw new Error(""+YP);var UP=VP[YP],XP=UP.type,WP;if(WA.check(MP)&&MPRA)return ZT;var OA=arguments.length;2===OA?(IA=0,LA=RA):3===OA?(IA=Math.max(IA,0),LA=RA):(IA=Math.max(IA,0),LA=Math.min(LA,RA)),TA.assert(IA),TA.assert(LA);var YA=Object.create(null),MA=WT(_A);for(var VA=IA;VAWA)return!0;if(YA===WA&&"right"===this.name){if(VA.right!==MA)throw new Error("Nodes must be equal");return!0}default:return!1;}case"SequenceExpression":switch(VA.type){case"ForStatement":return!1;case"ExpressionStatement":return"expression"!==this.name;default:return!0;}case"YieldExpression":switch(VA.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"===VA.type&&PA.check(MA.value)&&"object"===this.name&&VA.object===MA;case"AssignmentExpression":case"ConditionalExpression":switch(VA.type){case"UnaryExpression":case"SpreadElement":case"SpreadProperty":case"BinaryExpression":case"LogicalExpression":return!0;case"CallExpression":return"callee"===this.name&&VA.callee===MA;case"ConditionalExpression":return"test"===this.name&&VA.test===MA;case"MemberExpression":return"object"===this.name&&VA.object===MA;default:return!1;}default:if("NewExpression"===VA.type&&"callee"===this.name&&VA.callee===MA)return JT(MA);}return!0!==OA&&!this.canBeFirstInStatement()&&this.firstInStatement()};var RA={};return[["||"],["&&"],["|"],["^"],["&"],["==","===","!=","!=="],["<",">","<=",">=","in","instanceof"],[">>","<<",">>>"],["+","-"],["*","/","%"]].forEach(function(OA,YA){OA.forEach(function(MA){RA[MA]=YA})}),LA.canBeFirstInStatement=function(){var OA=this.node;return!SA.FunctionExpression.check(OA)&&!SA.ObjectExpression.check(OA)},LA.firstInStatement=function(){return ZT(this)},XT},Vf=Object.prototype.hasOwnProperty,Uf=function(UT){function XT(){if(!(this instanceof XT))throw new Error("PathVisitor constructor cannot be invoked without 'new'");this._reusableContextStack=[],this._methodNameTable=WT(this),this._shouldVisitComments=Vf.call(this._methodNameTable,"Block")||Vf.call(this._methodNameTable,"Line"),this.Context=KT(this),this._visiting=!1,this._changeReported=!1}function WT(LA){var RA=Object.create(null);for(var OA in LA)/^visit[A-Z]/.test(OA)&&(RA[OA.slice("visit".length)]=!0);var YA=QT.computeSupertypeLookupTable(RA),MA=Object.create(null),RA=Object.keys(YA),VA=RA.length;for(var UA=0;UAYA.indexOf("comments")&&YA.push("comments");var MA=YA.length,VA=[];for(var UA=0;UA=$T},KT+" >= "+$T)},XT.defaults={"null":function(){return null},emptyArray:function(){return[]},"false":function(){return!1},"true":function(){return!0},undefined:function(){}};var QT=JT.or(ZT.string,ZT.number,ZT.boolean,ZT.null,ZT.undefined);return XT.isPrimitive=new JT(function($T){if(null===$T)return!0;var SA=typeof $T;return"object"!=SA&&"function"!=SA},QT.toString()),XT},Wf=function(UT){var XT=UT.use(Pf),WT=XT.Type,JT=WT.def,ZT=WT.or,KT=UT.use(Xf),QT=KT.defaults,$T=KT.geq;JT("Printable").field("loc",ZT(JT("SourceLocation"),null),QT["null"],!0),JT("Node").bases("Printable").field("type",String).field("comments",ZT([JT("Comment")],null),QT["null"],!0),JT("SourceLocation").build("start","end","source").field("start",JT("Position")).field("end",JT("Position")).field("source",ZT(String,null),QT["null"]),JT("Position").build("line","column").field("line",$T(1)).field("column",$T(0)),JT("File").bases("Node").build("program","name").field("program",JT("Program")).field("name",ZT(String,null),QT["null"]),JT("Program").bases("Node").build("body").field("body",[JT("Statement")]),JT("Function").bases("Node").field("id",ZT(JT("Identifier"),null),QT["null"]).field("params",[JT("Pattern")]).field("body",JT("BlockStatement")),JT("Statement").bases("Node"),JT("EmptyStatement").bases("Statement").build(),JT("BlockStatement").bases("Statement").build("body").field("body",[JT("Statement")]),JT("ExpressionStatement").bases("Statement").build("expression").field("expression",JT("Expression")),JT("IfStatement").bases("Statement").build("test","consequent","alternate").field("test",JT("Expression")).field("consequent",JT("Statement")).field("alternate",ZT(JT("Statement"),null),QT["null"]),JT("LabeledStatement").bases("Statement").build("label","body").field("label",JT("Identifier")).field("body",JT("Statement")),JT("BreakStatement").bases("Statement").build("label").field("label",ZT(JT("Identifier"),null),QT["null"]),JT("ContinueStatement").bases("Statement").build("label").field("label",ZT(JT("Identifier"),null),QT["null"]),JT("WithStatement").bases("Statement").build("object","body").field("object",JT("Expression")).field("body",JT("Statement")),JT("SwitchStatement").bases("Statement").build("discriminant","cases","lexical").field("discriminant",JT("Expression")).field("cases",[JT("SwitchCase")]).field("lexical",Boolean,QT["false"]),JT("ReturnStatement").bases("Statement").build("argument").field("argument",ZT(JT("Expression"),null)),JT("ThrowStatement").bases("Statement").build("argument").field("argument",JT("Expression")),JT("TryStatement").bases("Statement").build("block","handler","finalizer").field("block",JT("BlockStatement")).field("handler",ZT(JT("CatchClause"),null),function(){return this.handlers&&this.handlers[0]||null}).field("handlers",[JT("CatchClause")],function(){return this.handler?[this.handler]:[]},!0).field("guardedHandlers",[JT("CatchClause")],QT.emptyArray).field("finalizer",ZT(JT("BlockStatement"),null),QT["null"]),JT("CatchClause").bases("Node").build("param","guard","body").field("param",JT("Pattern")).field("guard",ZT(JT("Expression"),null),QT["null"]).field("body",JT("BlockStatement")),JT("WhileStatement").bases("Statement").build("test","body").field("test",JT("Expression")).field("body",JT("Statement")),JT("DoWhileStatement").bases("Statement").build("body","test").field("body",JT("Statement")).field("test",JT("Expression")),JT("ForStatement").bases("Statement").build("init","test","update","body").field("init",ZT(JT("VariableDeclaration"),JT("Expression"),null)).field("test",ZT(JT("Expression"),null)).field("update",ZT(JT("Expression"),null)).field("body",JT("Statement")),JT("ForInStatement").bases("Statement").build("left","right","body").field("left",ZT(JT("VariableDeclaration"),JT("Expression"))).field("right",JT("Expression")).field("body",JT("Statement")),JT("DebuggerStatement").bases("Statement").build(),JT("Declaration").bases("Statement"),JT("FunctionDeclaration").bases("Function","Declaration").build("id","params","body").field("id",JT("Identifier")),JT("FunctionExpression").bases("Function","Expression").build("id","params","body"),JT("VariableDeclaration").bases("Declaration").build("kind","declarations").field("kind",ZT("var","let","const")).field("declarations",[JT("VariableDeclarator")]),JT("VariableDeclarator").bases("Node").build("id","init").field("id",JT("Pattern")).field("init",ZT(JT("Expression"),null)),JT("Expression").bases("Node","Pattern"),JT("ThisExpression").bases("Expression").build(),JT("ArrayExpression").bases("Expression").build("elements").field("elements",[ZT(JT("Expression"),null)]),JT("ObjectExpression").bases("Expression").build("properties").field("properties",[JT("Property")]),JT("Property").bases("Node").build("kind","key","value").field("kind",ZT("init","get","set")).field("key",ZT(JT("Literal"),JT("Identifier"))).field("value",JT("Expression")),JT("SequenceExpression").bases("Expression").build("expressions").field("expressions",[JT("Expression")]);var SA=ZT("-","+","!","~","typeof","void","delete");JT("UnaryExpression").bases("Expression").build("operator","argument","prefix").field("operator",SA).field("argument",JT("Expression")).field("prefix",Boolean,QT["true"]);var TA=ZT("==","!=","===","!==","<","<=",">",">=","<<",">>",">>>","+","-","*","/","%","&","|","^","in","instanceof","..");JT("BinaryExpression").bases("Expression").build("operator","left","right").field("operator",TA).field("left",JT("Expression")).field("right",JT("Expression"));var PA=ZT("=","+=","-=","*=","/=","%=","<<=",">>=",">>>=","|=","^=","&=");JT("AssignmentExpression").bases("Expression").build("operator","left","right").field("operator",PA).field("left",JT("Pattern")).field("right",JT("Expression"));var _A=ZT("++","--");JT("UpdateExpression").bases("Expression").build("operator","argument","prefix").field("operator",_A).field("argument",JT("Expression")).field("prefix",Boolean);var NA=ZT("||","&&");JT("LogicalExpression").bases("Expression").build("operator","left","right").field("operator",NA).field("left",JT("Expression")).field("right",JT("Expression")),JT("ConditionalExpression").bases("Expression").build("test","consequent","alternate").field("test",JT("Expression")).field("consequent",JT("Expression")).field("alternate",JT("Expression")),JT("NewExpression").bases("Expression").build("callee","arguments").field("callee",JT("Expression")).field("arguments",[JT("Expression")]),JT("CallExpression").bases("Expression").build("callee","arguments").field("callee",JT("Expression")).field("arguments",[JT("Expression")]),JT("MemberExpression").bases("Expression").build("object","property","computed").field("object",JT("Expression")).field("property",ZT(JT("Identifier"),JT("Expression"))).field("computed",Boolean,function(){var IA=this.property.type;return"Literal"===IA||"MemberExpression"===IA||"BinaryExpression"===IA}),JT("Pattern").bases("Node"),JT("SwitchCase").bases("Node").build("test","consequent").field("test",ZT(JT("Expression"),null)).field("consequent",[JT("Statement")]),JT("Identifier").bases("Node","Expression","Pattern").build("name").field("name",String),JT("Literal").bases("Node","Expression").build("value").field("value",ZT(String,Boolean,null,Number,RegExp)).field("regex",ZT({pattern:String,flags:String},null),function(){if(this.value instanceof RegExp){var IA="";return this.value.ignoreCase&&(IA+="i"),this.value.multiline&&(IA+="m"),this.value.global&&(IA+="g"),{pattern:this.value.source,flags:IA}}return null}),JT("Comment").bases("Printable").field("value",String).field("leading",Boolean,QT["true"]).field("trailing",Boolean,QT["false"])},Jf=function(UT){UT.use(Wf);var XT=UT.use(Pf),WT=XT.Type.def,JT=XT.Type.or,ZT=UT.use(Xf).defaults;WT("Function").field("generator",Boolean,ZT["false"]).field("expression",Boolean,ZT["false"]).field("defaults",[JT(WT("Expression"),null)],ZT.emptyArray).field("rest",JT(WT("Identifier"),null),ZT["null"]),WT("RestElement").bases("Pattern").build("argument").field("argument",WT("Pattern")),WT("SpreadElementPattern").bases("Pattern").build("argument").field("argument",WT("Pattern")),WT("FunctionDeclaration").build("id","params","body","generator","expression"),WT("FunctionExpression").build("id","params","body","generator","expression"),WT("ArrowFunctionExpression").bases("Function","Expression").build("params","body","expression").field("id",null,ZT["null"]).field("body",JT(WT("BlockStatement"),WT("Expression"))).field("generator",!1,ZT["false"]),WT("YieldExpression").bases("Expression").build("argument","delegate").field("argument",JT(WT("Expression"),null)).field("delegate",Boolean,ZT["false"]),WT("GeneratorExpression").bases("Expression").build("body","blocks","filter").field("body",WT("Expression")).field("blocks",[WT("ComprehensionBlock")]).field("filter",JT(WT("Expression"),null)),WT("ComprehensionExpression").bases("Expression").build("body","blocks","filter").field("body",WT("Expression")).field("blocks",[WT("ComprehensionBlock")]).field("filter",JT(WT("Expression"),null)),WT("ComprehensionBlock").bases("Node").build("left","right","each").field("left",WT("Pattern")).field("right",WT("Expression")).field("each",Boolean),WT("Property").field("key",JT(WT("Literal"),WT("Identifier"),WT("Expression"))).field("value",JT(WT("Expression"),WT("Pattern"))).field("method",Boolean,ZT["false"]).field("shorthand",Boolean,ZT["false"]).field("computed",Boolean,ZT["false"]),WT("PropertyPattern").bases("Pattern").build("key","pattern").field("key",JT(WT("Literal"),WT("Identifier"),WT("Expression"))).field("pattern",WT("Pattern")).field("computed",Boolean,ZT["false"]),WT("ObjectPattern").bases("Pattern").build("properties").field("properties",[JT(WT("PropertyPattern"),WT("Property"))]),WT("ArrayPattern").bases("Pattern").build("elements").field("elements",[JT(WT("Pattern"),null)]),WT("MethodDefinition").bases("Declaration").build("kind","key","value","static").field("kind",JT("constructor","method","get","set")).field("key",JT(WT("Literal"),WT("Identifier"),WT("Expression"))).field("value",WT("Function")).field("computed",Boolean,ZT["false"]).field("static",Boolean,ZT["false"]),WT("SpreadElement").bases("Node").build("argument").field("argument",WT("Expression")),WT("ArrayExpression").field("elements",[JT(WT("Expression"),WT("SpreadElement"),WT("RestElement"),null)]),WT("NewExpression").field("arguments",[JT(WT("Expression"),WT("SpreadElement"))]),WT("CallExpression").field("arguments",[JT(WT("Expression"),WT("SpreadElement"))]),WT("AssignmentPattern").bases("Pattern").build("left","right").field("left",WT("Pattern")).field("right",WT("Expression"));var KT=JT(WT("MethodDefinition"),WT("VariableDeclarator"),WT("ClassPropertyDefinition"),WT("ClassProperty"));WT("ClassProperty").bases("Declaration").build("key").field("key",JT(WT("Literal"),WT("Identifier"),WT("Expression"))).field("computed",Boolean,ZT["false"]),WT("ClassPropertyDefinition").bases("Declaration").build("definition").field("definition",KT),WT("ClassBody").bases("Declaration").build("body").field("body",[KT]),WT("ClassDeclaration").bases("Declaration").build("id","body","superClass").field("id",JT(WT("Identifier"),null)).field("body",WT("ClassBody")).field("superClass",JT(WT("Expression"),null),ZT["null"]),WT("ClassExpression").bases("Expression").build("id","body","superClass").field("id",JT(WT("Identifier"),null),ZT["null"]).field("body",WT("ClassBody")).field("superClass",JT(WT("Expression"),null),ZT["null"]).field("implements",[WT("ClassImplements")],ZT.emptyArray),WT("ClassImplements").bases("Node").build("id").field("id",WT("Identifier")).field("superClass",JT(WT("Expression"),null),ZT["null"]),WT("Specifier").bases("Node"),WT("ModuleSpecifier").bases("Specifier").field("local",JT(WT("Identifier"),null),ZT["null"]).field("id",JT(WT("Identifier"),null),ZT["null"]).field("name",JT(WT("Identifier"),null),ZT["null"]),WT("TaggedTemplateExpression").bases("Expression").build("tag","quasi").field("tag",WT("Expression")).field("quasi",WT("TemplateLiteral")),WT("TemplateLiteral").bases("Expression").build("quasis","expressions").field("quasis",[WT("TemplateElement")]).field("expressions",[WT("Expression")]),WT("TemplateElement").bases("Node").build("value","tail").field("value",{cooked:String,raw:String}).field("tail",Boolean)},Zf=function(UT){UT.use(Jf);var XT=UT.use(Pf),WT=XT.Type.def,JT=XT.Type.or;XT.builtInTypes;var ZT=UT.use(Xf).defaults;WT("Function").field("async",Boolean,ZT["false"]),WT("SpreadProperty").bases("Node").build("argument").field("argument",WT("Expression")),WT("ObjectExpression").field("properties",[JT(WT("Property"),WT("SpreadProperty"))]),WT("SpreadPropertyPattern").bases("Pattern").build("argument").field("argument",WT("Pattern")),WT("ObjectPattern").field("properties",[JT(WT("Property"),WT("PropertyPattern"),WT("SpreadPropertyPattern"))]),WT("AwaitExpression").bases("Expression").build("argument","all").field("argument",JT(WT("Expression"),null)).field("all",Boolean,ZT["false"])},Kf=function(UT){UT.use(Zf);var XT=UT.use(Pf),WT=XT.Type.def,JT=XT.Type.or,ZT=UT.use(Xf).defaults;WT("Type").bases("Node"),WT("AnyTypeAnnotation").bases("Type").build(),WT("EmptyTypeAnnotation").bases("Type").build(),WT("MixedTypeAnnotation").bases("Type").build(),WT("VoidTypeAnnotation").bases("Type").build(),WT("NumberTypeAnnotation").bases("Type").build(),WT("NumberLiteralTypeAnnotation").bases("Type").build("value","raw").field("value",Number).field("raw",String),WT("StringTypeAnnotation").bases("Type").build(),WT("StringLiteralTypeAnnotation").bases("Type").build("value","raw").field("value",String).field("raw",String),WT("BooleanTypeAnnotation").bases("Type").build(),WT("BooleanLiteralTypeAnnotation").bases("Type").build("value","raw").field("value",Boolean).field("raw",String),WT("TypeAnnotation").bases("Node").build("typeAnnotation").field("typeAnnotation",WT("Type")),WT("NullableTypeAnnotation").bases("Type").build("typeAnnotation").field("typeAnnotation",WT("Type")),WT("NullLiteralTypeAnnotation").bases("Type").build(),WT("NullTypeAnnotation").bases("Type").build(),WT("ThisTypeAnnotation").bases("Type").build(),WT("ExistsTypeAnnotation").bases("Type").build(),WT("ExistentialTypeParam").bases("Type").build(),WT("FunctionTypeAnnotation").bases("Type").build("params","returnType","rest","typeParameters").field("params",[WT("FunctionTypeParam")]).field("returnType",WT("Type")).field("rest",JT(WT("FunctionTypeParam"),null)).field("typeParameters",JT(WT("TypeParameterDeclaration"),null)),WT("FunctionTypeParam").bases("Node").build("name","typeAnnotation","optional").field("name",WT("Identifier")).field("typeAnnotation",WT("Type")).field("optional",Boolean),WT("ArrayTypeAnnotation").bases("Type").build("elementType").field("elementType",WT("Type")),WT("ObjectTypeAnnotation").bases("Type").build("properties","indexers","callProperties").field("properties",[WT("ObjectTypeProperty")]).field("indexers",[WT("ObjectTypeIndexer")],ZT.emptyArray).field("callProperties",[WT("ObjectTypeCallProperty")],ZT.emptyArray).field("exact",Boolean,ZT["false"]),WT("ObjectTypeProperty").bases("Node").build("key","value","optional").field("key",JT(WT("Literal"),WT("Identifier"))).field("value",WT("Type")).field("optional",Boolean).field("variance",JT("plus","minus",null),ZT["null"]),WT("ObjectTypeIndexer").bases("Node").build("id","key","value").field("id",WT("Identifier")).field("key",WT("Type")).field("value",WT("Type")).field("variance",JT("plus","minus",null),ZT["null"]),WT("ObjectTypeCallProperty").bases("Node").build("value").field("value",WT("FunctionTypeAnnotation")).field("static",Boolean,ZT["false"]),WT("QualifiedTypeIdentifier").bases("Node").build("qualification","id").field("qualification",JT(WT("Identifier"),WT("QualifiedTypeIdentifier"))).field("id",WT("Identifier")),WT("GenericTypeAnnotation").bases("Type").build("id","typeParameters").field("id",JT(WT("Identifier"),WT("QualifiedTypeIdentifier"))).field("typeParameters",JT(WT("TypeParameterInstantiation"),null)),WT("MemberTypeAnnotation").bases("Type").build("object","property").field("object",WT("Identifier")).field("property",JT(WT("MemberTypeAnnotation"),WT("GenericTypeAnnotation"))),WT("UnionTypeAnnotation").bases("Type").build("types").field("types",[WT("Type")]),WT("IntersectionTypeAnnotation").bases("Type").build("types").field("types",[WT("Type")]),WT("TypeofTypeAnnotation").bases("Type").build("argument").field("argument",WT("Type")),WT("Identifier").field("typeAnnotation",JT(WT("TypeAnnotation"),null),ZT["null"]),WT("TypeParameterDeclaration").bases("Node").build("params").field("params",[WT("TypeParameter")]),WT("TypeParameterInstantiation").bases("Node").build("params").field("params",[WT("Type")]),WT("TypeParameter").bases("Type").build("name","variance","bound").field("name",String).field("variance",JT("plus","minus",null),ZT["null"]).field("bound",JT(WT("TypeAnnotation"),null),ZT["null"]),WT("Function").field("returnType",JT(WT("TypeAnnotation"),null),ZT["null"]).field("typeParameters",JT(WT("TypeParameterDeclaration"),null),ZT["null"]),WT("ClassProperty").build("key","value","typeAnnotation","static").field("value",JT(WT("Expression"),null)).field("typeAnnotation",JT(WT("TypeAnnotation"),null)).field("static",Boolean,ZT["false"]).field("variance",JT("plus","minus",null),ZT["null"]),WT("ClassImplements").field("typeParameters",JT(WT("TypeParameterInstantiation"),null),ZT["null"]),WT("InterfaceDeclaration").bases("Declaration").build("id","body","extends").field("id",WT("Identifier")).field("typeParameters",JT(WT("TypeParameterDeclaration"),null),ZT["null"]).field("body",WT("ObjectTypeAnnotation")).field("extends",[WT("InterfaceExtends")]),WT("DeclareInterface").bases("InterfaceDeclaration").build("id","body","extends"),WT("InterfaceExtends").bases("Node").build("id").field("id",WT("Identifier")).field("typeParameters",JT(WT("TypeParameterInstantiation"),null)),WT("TypeAlias").bases("Declaration").build("id","typeParameters","right").field("id",WT("Identifier")).field("typeParameters",JT(WT("TypeParameterDeclaration"),null)).field("right",WT("Type")),WT("DeclareTypeAlias").bases("TypeAlias").build("id","typeParameters","right"),WT("TypeCastExpression").bases("Expression").build("expression","typeAnnotation").field("expression",WT("Expression")).field("typeAnnotation",WT("TypeAnnotation")),WT("TupleTypeAnnotation").bases("Type").build("types").field("types",[WT("Type")]),WT("DeclareVariable").bases("Statement").build("id").field("id",WT("Identifier")),WT("DeclareFunction").bases("Statement").build("id").field("id",WT("Identifier")),WT("DeclareClass").bases("InterfaceDeclaration").build("id"),WT("DeclareModule").bases("Statement").build("id","body").field("id",JT(WT("Identifier"),WT("Literal"))).field("body",WT("BlockStatement")),WT("DeclareModuleExports").bases("Statement").build("typeAnnotation").field("typeAnnotation",WT("Type")),WT("DeclareExportDeclaration").bases("Declaration").build("default","declaration","specifiers","source").field("default",Boolean).field("declaration",JT(WT("DeclareVariable"),WT("DeclareFunction"),WT("DeclareClass"),WT("Type"),null)).field("specifiers",[JT(WT("ExportSpecifier"),WT("ExportBatchSpecifier"))],ZT.emptyArray).field("source",JT(WT("Literal"),null),ZT["null"]),WT("DeclareExportAllDeclaration").bases("Declaration").build("source").field("source",JT(WT("Literal"),null),ZT["null"])},Qf=function(UT){UT.use(Zf);var XT=UT.use(Pf),WT=UT.use(Xf).defaults,JT=XT.Type.def,ZT=XT.Type.or;JT("Noop").bases("Node").build(),JT("DoExpression").bases("Expression").build("body").field("body",[JT("Statement")]),JT("Super").bases("Expression").build(),JT("BindExpression").bases("Expression").build("object","callee").field("object",ZT(JT("Expression"),null)).field("callee",JT("Expression")),JT("Decorator").bases("Node").build("expression").field("expression",JT("Expression")),JT("Property").field("decorators",ZT([JT("Decorator")],null),WT["null"]),JT("MethodDefinition").field("decorators",ZT([JT("Decorator")],null),WT["null"]),JT("MetaProperty").bases("Expression").build("meta","property").field("meta",JT("Identifier")).field("property",JT("Identifier")),JT("ParenthesizedExpression").bases("Expression").build("expression").field("expression",JT("Expression")),JT("ImportSpecifier").bases("ModuleSpecifier").build("imported","local").field("imported",JT("Identifier")),JT("ImportDefaultSpecifier").bases("ModuleSpecifier").build("local"),JT("ImportNamespaceSpecifier").bases("ModuleSpecifier").build("local"),JT("ExportDefaultDeclaration").bases("Declaration").build("declaration").field("declaration",ZT(JT("Declaration"),JT("Expression"))),JT("ExportNamedDeclaration").bases("Declaration").build("declaration","specifiers","source").field("declaration",ZT(JT("Declaration"),null)).field("specifiers",[JT("ExportSpecifier")],WT.emptyArray).field("source",ZT(JT("Literal"),null),WT["null"]),JT("ExportSpecifier").bases("ModuleSpecifier").build("local","exported").field("exported",JT("Identifier")),JT("ExportNamespaceSpecifier").bases("Specifier").build("exported").field("exported",JT("Identifier")),JT("ExportDefaultSpecifier").bases("Specifier").build("exported").field("exported",JT("Identifier")),JT("ExportAllDeclaration").bases("Declaration").build("exported","source").field("exported",ZT(JT("Identifier"),null)).field("source",JT("Literal")),JT("CommentBlock").bases("Comment").build("value","leading","trailing"),JT("CommentLine").bases("Comment").build("value","leading","trailing")},$f=function(UT){function XT($T){var SA=WT.indexOf($T);return-1===SA&&(SA=WT.length,WT.push($T),JT[SA]=$T(ZT)),JT[SA]}var WT=[],JT=[],ZT={};ZT.use=XT;var KT=XT(Pf);UT.forEach(XT),KT.finalize();var QT={Type:KT.Type,builtInTypes:KT.builtInTypes,namedTypes:KT.namedTypes,builders:KT.builders,defineMethod:KT.defineMethod,getFieldNames:KT.getFieldNames,getFieldValue:KT.getFieldValue,eachField:KT.eachField,someField:KT.someField,getSupertypeNames:KT.getSupertypeNames,astNodesAreEquivalent:XT(_f),finalize:KT.finalize,Path:XT(Rf),NodePath:XT(Mf),PathVisitor:XT(Uf),use:XT};return QT.visit=QT.PathVisitor.visit,QT}([Wf,Jf,Zf,function(UT){UT.use(Wf);var XT=UT.use(Pf),WT=XT.Type.def,JT=XT.Type.or,ZT=UT.use(Xf),KT=ZT.geq,QT=ZT.defaults;WT("Function").field("body",JT(WT("BlockStatement"),WT("Expression"))),WT("ForInStatement").build("left","right","body","each").field("each",Boolean,QT["false"]),WT("ForOfStatement").bases("Statement").build("left","right","body").field("left",JT(WT("VariableDeclaration"),WT("Expression"))).field("right",WT("Expression")).field("body",WT("Statement")),WT("LetStatement").bases("Statement").build("head","body").field("head",[WT("VariableDeclarator")]).field("body",WT("Statement")),WT("LetExpression").bases("Expression").build("head","body").field("head",[WT("VariableDeclarator")]).field("body",WT("Expression")),WT("GraphExpression").bases("Expression").build("index","expression").field("index",KT(0)).field("expression",WT("Literal")),WT("GraphIndexExpression").bases("Expression").build("index").field("index",KT(0))},function(UT){UT.use(Wf);var XT=UT.use(Pf),WT=XT.Type.def,JT=XT.Type.or;WT("XMLDefaultDeclaration").bases("Declaration").field("namespace",WT("Expression")),WT("XMLAnyName").bases("Expression"),WT("XMLQualifiedIdentifier").bases("Expression").field("left",JT(WT("Identifier"),WT("XMLAnyName"))).field("right",JT(WT("Identifier"),WT("Expression"))).field("computed",Boolean),WT("XMLFunctionQualifiedIdentifier").bases("Expression").field("right",JT(WT("Identifier"),WT("Expression"))).field("computed",Boolean),WT("XMLAttributeSelector").bases("Expression").field("attribute",WT("Expression")),WT("XMLFilterExpression").bases("Expression").field("left",WT("Expression")).field("right",WT("Expression")),WT("XMLElement").bases("XML","Expression").field("contents",[WT("XML")]),WT("XMLList").bases("XML","Expression").field("contents",[WT("XML")]),WT("XML").bases("Node"),WT("XMLEscape").bases("XML").field("expression",WT("Expression")),WT("XMLText").bases("XML").field("text",String),WT("XMLStartTag").bases("XML").field("contents",[WT("XML")]),WT("XMLEndTag").bases("XML").field("contents",[WT("XML")]),WT("XMLPointTag").bases("XML").field("contents",[WT("XML")]),WT("XMLName").bases("XML").field("contents",JT(String,[WT("XML")])),WT("XMLAttribute").bases("XML").field("value",String),WT("XMLCdata").bases("XML").field("contents",String),WT("XMLComment").bases("XML").field("contents",String),WT("XMLProcessingInstruction").bases("XML").field("target",String).field("contents",JT(String,null))},function(UT){UT.use(Zf);var XT=UT.use(Pf),WT=XT.Type.def,JT=XT.Type.or,ZT=UT.use(Xf).defaults;WT("JSXAttribute").bases("Node").build("name","value").field("name",JT(WT("JSXIdentifier"),WT("JSXNamespacedName"))).field("value",JT(WT("Literal"),WT("JSXExpressionContainer"),null),ZT["null"]),WT("JSXIdentifier").bases("Identifier").build("name").field("name",String),WT("JSXNamespacedName").bases("Node").build("namespace","name").field("namespace",WT("JSXIdentifier")).field("name",WT("JSXIdentifier")),WT("JSXMemberExpression").bases("MemberExpression").build("object","property").field("object",JT(WT("JSXIdentifier"),WT("JSXMemberExpression"))).field("property",WT("JSXIdentifier")).field("computed",Boolean,ZT.false);var KT=JT(WT("JSXIdentifier"),WT("JSXNamespacedName"),WT("JSXMemberExpression"));WT("JSXSpreadAttribute").bases("Node").build("argument").field("argument",WT("Expression"));var QT=[JT(WT("JSXAttribute"),WT("JSXSpreadAttribute"))];WT("JSXExpressionContainer").bases("Expression").build("expression").field("expression",WT("Expression")),WT("JSXElement").bases("Expression").build("openingElement","closingElement","children").field("openingElement",WT("JSXOpeningElement")).field("closingElement",JT(WT("JSXClosingElement"),null),ZT["null"]).field("children",[JT(WT("JSXElement"),WT("JSXExpressionContainer"),WT("JSXText"),WT("Literal"))],ZT.emptyArray).field("name",KT,function(){return this.openingElement.name},!0).field("selfClosing",Boolean,function(){return this.openingElement.selfClosing},!0).field("attributes",QT,function(){return this.openingElement.attributes},!0),WT("JSXOpeningElement").bases("Node").build("name","attributes","selfClosing").field("name",KT).field("attributes",QT,ZT.emptyArray).field("selfClosing",Boolean,ZT["false"]),WT("JSXClosingElement").bases("Node").build("name").field("name",KT),WT("JSXText").bases("Literal").build("value").field("value",String),WT("JSXEmptyExpression").bases("Expression").build()},Kf,function(UT){UT.use(Zf);var XT=UT.use(Pf),WT=UT.use(Xf).defaults,JT=XT.Type.def,ZT=XT.Type.or;JT("VariableDeclaration").field("declarations",[ZT(JT("VariableDeclarator"),JT("Identifier"))]),JT("Property").field("value",ZT(JT("Expression"),JT("Pattern"))),JT("ArrayPattern").field("elements",[ZT(JT("Pattern"),JT("SpreadElement"),null)]),JT("ObjectPattern").field("properties",[ZT(JT("Property"),JT("PropertyPattern"),JT("SpreadPropertyPattern"),JT("SpreadProperty"))]),JT("ExportSpecifier").bases("ModuleSpecifier").build("id","name"),JT("ExportBatchSpecifier").bases("Specifier").build(),JT("ImportSpecifier").bases("ModuleSpecifier").build("id","name"),JT("ImportNamespaceSpecifier").bases("ModuleSpecifier").build("id"),JT("ImportDefaultSpecifier").bases("ModuleSpecifier").build("id"),JT("ExportDeclaration").bases("Declaration").build("default","declaration","specifiers","source").field("default",Boolean).field("declaration",ZT(JT("Declaration"),JT("Expression"),null)).field("specifiers",[ZT(JT("ExportSpecifier"),JT("ExportBatchSpecifier"))],WT.emptyArray).field("source",ZT(JT("Literal"),null),WT["null"]),JT("ImportDeclaration").bases("Declaration").build("specifiers","source","importKind").field("specifiers",[ZT(JT("ImportSpecifier"),JT("ImportNamespaceSpecifier"),JT("ImportDefaultSpecifier"))],WT.emptyArray).field("source",JT("Literal")).field("importKind",ZT("value","type"),function(){return"value"}),JT("Block").bases("Comment").build("value","leading","trailing"),JT("Line").bases("Comment").build("value","leading","trailing")},Qf,function(UT){UT.use(Qf),UT.use(Kf);var XT=UT.use(Pf),WT=UT.use(Xf).defaults,JT=XT.Type.def,ZT=XT.Type.or;JT("Directive").bases("Node").build("value").field("value",JT("DirectiveLiteral")),JT("DirectiveLiteral").bases("Node","Expression").build("value").field("value",String,WT["use strict"]),JT("BlockStatement").bases("Statement").build("body").field("body",[JT("Statement")]).field("directives",[JT("Directive")],WT.emptyArray),JT("Program").bases("Node").build("body").field("body",[JT("Statement")]).field("directives",[JT("Directive")],WT.emptyArray),JT("StringLiteral").bases("Literal").build("value").field("value",String),JT("NumericLiteral").bases("Literal").build("value").field("value",Number),JT("NullLiteral").bases("Literal").build(),JT("BooleanLiteral").bases("Literal").build("value").field("value",Boolean),JT("RegExpLiteral").bases("Literal").build("pattern","flags").field("pattern",String).field("flags",String);var KT=ZT(JT("Property"),JT("ObjectMethod"),JT("ObjectProperty"),JT("SpreadProperty"));JT("ObjectExpression").bases("Expression").build("properties").field("properties",[KT]),JT("ObjectMethod").bases("Node","Function").build("kind","key","params","body","computed").field("kind",ZT("method","get","set")).field("key",ZT(JT("Literal"),JT("Identifier"),JT("Expression"))).field("params",[JT("Pattern")]).field("body",JT("BlockStatement")).field("computed",Boolean,WT["false"]).field("generator",Boolean,WT["false"]).field("async",Boolean,WT["false"]).field("decorators",ZT([JT("Decorator")],null),WT["null"]),JT("ObjectProperty").bases("Node").build("key","value").field("key",ZT(JT("Literal"),JT("Identifier"),JT("Expression"))).field("value",ZT(JT("Expression"),JT("Pattern"))).field("computed",Boolean,WT["false"]);var QT=ZT(JT("MethodDefinition"),JT("VariableDeclarator"),JT("ClassPropertyDefinition"),JT("ClassProperty"),JT("ClassMethod"));JT("ClassBody").bases("Declaration").build("body").field("body",[QT]),JT("ClassMethod").bases("Declaration","Function").build("kind","key","params","body","computed","static").field("kind",ZT("get","set","method","constructor")).field("key",ZT(JT("Literal"),JT("Identifier"),JT("Expression"))).field("params",[JT("Pattern")]).field("body",JT("BlockStatement")).field("computed",Boolean,WT["false"]).field("static",Boolean,WT["false"]).field("generator",Boolean,WT["false"]).field("async",Boolean,WT["false"]).field("decorators",ZT([JT("Decorator")],null),WT["null"]);var $T=ZT(JT("Property"),JT("PropertyPattern"),JT("SpreadPropertyPattern"),JT("SpreadProperty"),JT("ObjectProperty"),JT("RestProperty"));JT("ObjectPattern").bases("Pattern").build("properties").field("properties",[$T]).field("decorators",ZT([JT("Decorator")],null),WT["null"]),JT("SpreadProperty").bases("Node").build("argument").field("argument",JT("Expression")),JT("RestProperty").bases("Node").build("argument").field("argument",JT("Expression")),JT("ForAwaitStatement").bases("Statement").build("left","right","body").field("left",ZT(JT("VariableDeclaration"),JT("Expression"))).field("right",JT("Expression")).field("body",JT("Statement"))}]);const eh={type:"break-parent"},Sh=Xi([{type:"line",hard:!0},eh]),Th=Xi([{type:"line",hard:!0,literal:!0},eh]);var Ph={concat:Xi,join:function(XT,WT){var JT=[];for(var ZT=0;ZT","<=",">=","in","instanceof"],[">>","<<",">>>"],["+","-"],["*","/","%","**"]].forEach(function(UT,XT){UT.forEach(function(WT){Oh[WT]=XT})});var Yh={comparePos:function(XT,WT){return XT.line-WT.line||XT.column-WT.column},getPrecedence:function(XT){return Oh[XT]},fixFaultyLocations:function(XT,WT){if(XT.decorators)XT.decorators.forEach(function(KT){Ji(XT,KT)});else if(XT.declaration&&Zi(XT)){var JT=XT.declaration.decorators;JT&&JT.forEach(function(KT){Ji(XT,KT)})}else if(Nh.MethodDefinition&&Nh.MethodDefinition.check(XT)||Nh.Property.check(XT)&&(XT.method||XT.shorthand))Nh.FunctionExpression.check(XT.value)&&(XT.value.id=null);else if("ObjectTypeProperty"===XT.type){var ZT=Lh(WT,To(XT),!0);!1!==ZT&&","===WT.charAt(ZT)&&!1!==(ZT=Lh(WT,ZT-1,!0))&&_o(XT,ZT)}},isExportDeclaration:Zi,getParentExportDeclaration:function(XT){var WT=XT.getParentNode();return"declaration"===XT.getName()&&Zi(WT)?WT:null},getLast:function(XT){return 0/g,">")}},Mh=_h,Vh=$f,Uh=Vh.namedTypes,Xh=Vh.builtInTypes.array,Wh=Vh.builtInTypes.object,Jh=Ph,Zh=Jh.concat,Kh=Jh.hardline,Qh=Jh.breakParent,$h=Jh.indent,Sy=Jh.lineSuffix,Ty=Yh,Py=Symbol("child-nodes"),_y=Ty.locStart,Ny=Ty.locEnd,Iy={attach:function(XT,WT,JT){if(Xh.check(XT)){var ZT=[];XT.forEach(function(KT){Lo(WT,KT,JT);const QT=KT.precedingNode,$T=KT.globalPrecedingNode,SA=KT.enclosingNode,TA=KT.followingNode,PA=1===KT.loc.start.line;if(Ty.hasNewline(JT,_y(KT),{backwards:!0})||PA)TA?Yo(TA,KT):QT?Vo(QT,KT):SA&&Mo(SA,KT);else if(Ty.hasNewline(JT,Ny(KT))){const NA=QT||$T;if(NA)Vo(NA,KT);else throw new Error("Preceding node not found")}else if(QT&&TA){const NA=ZT.length;if(0{const SA=$T.getValue();SA.leading||SA.trailing||(Ty.hasNewline(ZT,_y(SA),{backwards:!0})&&KT.push(Kh),KT.push(Uo($T)))},"comments"),JT?Zh(KT):$h(WT.tabWidth,Zh(KT))):""}},Ly="prettier",Ry="0.14.1",Oy="Prettier is an opinionated JavaScript formatter",Yy={prettier:"./bin/prettier.js"},My={type:"git",url:"git+https://github.com/jlongster/prettier.git"},Vy="James Long",Uy="MIT",Xy={url:"https://github.com/jlongster/prettier/issues"},Wy="./index.js",Jy={"ast-types":"0.9.4","babel-code-frame":"6.22.0",babylon:"6.15.0",esutils:"2.0.2","flow-parser":"0.38.0","get-stdin":"5.0.1",glob:"7.1.1","jest-validate":"18.2.0",minimist:"1.2.0"},Zy={jest:"18.0.0",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"},Ky={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"},Qy={setupFiles:["/tests_config/run_spec.js"],testRegex:"jsfmt\\.spec\\.js$",testPathIgnorePatterns:["tests/new_react","tests/more_react"]},$y=Object.freeze({name:Ly,version:Ry,description:Oy,bin:Yy,repository:My,author:Vy,license:Uy,bugs:Xy,main:Wy,dependencies:Jy,devDependencies:Zy,scripts:Ky,jest:Qy,default:{name:Ly,version:Ry,description:Oy,bin:Yy,repository:My,author:Vy,license:Uy,bugs:Xy,main:Wy,dependencies:Jy,devDependencies:Zy,scripts:Ky,jest:Qy}}),Sb=_h,Tb=$f,Pb=Yh,_b=Tb.namedTypes,Nb=Tb.builtInTypes.array,Lb=Tb.builtInTypes.number,Rb=Jo.prototype;Jo.from=function(UT){if(UT instanceof Jo)return UT.copy();if(UT instanceof Tb.NodePath){var XT=Object.create(Jo.prototype),WT=[UT.value];for(var JT;JT=UT.parentPath;UT=JT)WT.push(UT.name,JT.value);return XT.stack=WT.reverse(),XT}return new Jo(UT)},Rb.copy=function(){var UT=Object.create(Jo.prototype);return UT.stack=this.stack.slice(0),UT},Rb.getName=function(){var XT=this.stack,WT=XT.length;return 1$T)return!0;if(KT===$T&&"right"===WT)return Sb.strictEqual(XT.right,JT),!0;default:return!1;}case"SequenceExpression":switch(XT.type){case"ReturnStatement":return!1;case"ForStatement":return!1;case"ExpressionStatement":return"expression"!==WT;default:return!0;}case"YieldExpression":case"AwaitExpression":switch(XT.type){case"TaggedTemplateExpression":case"BinaryExpression":case"LogicalExpression":case"UnaryExpression":case"SpreadElement":case"SpreadProperty":case"NewExpression":case"MemberExpression":return!0;case"CallExpression":return XT.callee===JT;case"ConditionalExpression":return XT.test===JT;default:return!1;}case"ArrayTypeAnnotation":return"NullableTypeAnnotation"===XT.type;case"IntersectionTypeAnnotation":case"UnionTypeAnnotation":return"NullableTypeAnnotation"===XT.type||"IntersectionTypeAnnotation"===XT.type||"UnionTypeAnnotation"===XT.type;case"NullableTypeAnnotation":return"ArrayTypeAnnotation"===XT.type;case"FunctionTypeAnnotation":return"UnionTypeAnnotation"===XT.type||"IntersectionTypeAnnotation"===XT.type;case"NumericLiteral":case"Literal":return"MemberExpression"===XT.type&&Lb.check(JT.value)&&"object"===WT&&XT.object===JT;case"AssignmentExpression":if("ArrowFunctionExpression"===XT.type&&XT.body===JT&&"ObjectPattern"===JT.left.type)return!0;case"ConditionalExpression":switch(XT.type){case"TaggedTemplateExpression":case"UnaryExpression":case"SpreadElement":case"SpreadProperty":case"BinaryExpression":case"LogicalExpression":case"LogicalExpression":case"NewExpression":case"ExportDefaultDeclaration":return!0;case"CallExpression":return"callee"===WT&&XT.callee===JT;case"ConditionalExpression":return"test"===WT&&XT.test===JT;case"MemberExpression":return"object"===WT&&XT.object===JT;default:return _b.ObjectPattern.check(JT.left)&&this.firstInStatement();}case"FunctionExpression":case"ArrowFunctionExpression":if("CallExpression"===XT.type&&"callee"===WT)return!0;switch(XT.type){case"ConditionalExpression":if(XT.test===JT)return!0;case"ExportDefaultDeclaration":return"ArrowFunctionExpression"!==JT.type;case"ExpressionStatement":case"MemberExpression":case"TaggedTemplateExpression":case"UnaryExpression":return!0;case"NewExpression":return"callee"===WT;case"LogicalExpression":return"ArrowFunctionExpression"===JT.type;default:return Ko(XT);}case"ClassExpression":switch(XT.type){case"TaggedTemplateExpression":case"BinaryExpression":case"ExportDefaultDeclaration":case"ExpressionStatement":return!0;case"CallExpression":if(XT.callee===JT)return!0;case"MemberExpression":return"object"===WT&&XT.object===JT;case"ConditionalExpression":if(XT.test===JT)return!0;}return!1;case"ObjectExpression":if("ArrowFunctionExpression"===XT.type&&"body"===WT)return!0;if("TaggedTemplateExpression"===XT.type)return!0;if("MemberExpression"===XT.type)return"object"===WT&&XT.object===JT;default:if("NewExpression"===XT.type&&"callee"===WT&&XT.callee===JT)return Qo(JT);}return!0!==UT&&!this.canBeFirstInStatement()&&this.firstInStatement()},Rb.canBeFirstInStatement=function(){var UT=this.getNode();return!_b.FunctionExpression.check(UT)&&!_b.ObjectExpression.check(UT)&&!_b.ClassExpression.check(UT)&&!(_b.AssignmentExpression.check(UT)&&_b.ObjectPattern.check(UT.left))},Rb.firstInStatement=function(){var UT=this.stack,XT,WT,JT,ZT;for(var KT=UT.length-1;0<=KT;KT-=2)if(_b.Node.check(UT[KT])&&(JT=XT,ZT=WT,XT=UT[KT-1],WT=UT[KT]),WT&&ZT){if(_b.BlockStatement.check(WT)&&"body"===XT&&0===JT)return Sb.strictEqual(WT.body[0],ZT),!0;if(_b.ExpressionStatement.check(WT)&&"expression"===JT)return Sb.strictEqual(WT.expression,ZT),!0;if(_b.SequenceExpression.check(WT)&&"expressions"===XT&&0===JT){Sb.strictEqual(WT.expressions[0],ZT);continue}if(_b.CallExpression.check(WT)&&"callee"===JT){Sb.strictEqual(WT.callee,ZT);continue}if(_b.MemberExpression.check(WT)&&"object"===JT){Sb.strictEqual(WT.object,ZT);continue}if(_b.ConditionalExpression.check(WT)&&"test"===JT){Sb.strictEqual(WT.test,ZT);continue}if(Ko(WT)&&"left"===JT){Sb.strictEqual(WT.left,ZT);continue}if(_b.UnaryExpression.check(WT)&&!WT.prefix&&"argument"===JT){Sb.strictEqual(WT.argument,ZT);continue}return!1}return!0};var Ob=_h,Yb=Iy,Mb=Jo,Vb=Yh,Ub=Rc.keyword.isIdentifierNameES6,Xb=Ph,Wb=Xb.concat,Jb=Xb.join,Zb=Xb.line,Kb=Xb.hardline,Qb=Xb.softline,$b=Xb.literalline,Sg=Xb.group,Tg=Xb.indent,Pg=Xb.conditionalGroup,_g=Xb.ifBreak,Ng={isEmpty:function(XT){return"string"==typeof XT&&0===XT.length},getFirstString:function(XT){return Mi(XT,WT=>{if("string"==typeof WT&&0!==WT.trim().length)return WT},null)},willBreak:function(XT){return Mi(XT,WT=>{return"group"===WT.type&&WT.break||"line"===WT.type&&WT.hard||void 0},!1)},isLineNext:function(XT){return Mi(XT,WT=>{return"string"!=typeof WT&&(!("line"!==WT.type)||void 0)},!1)},traverseDoc:Yi,propagateBreaks:function(XT){const WT=[];Yi(XT,JT=>{"break-parent"===JT.type&&Vi(WT),"group"===JT.type&&WT.push(JT)},JT=>{if("group"===JT.type){const ZT=WT.pop();ZT.break&&Vi(WT)}})}},Lg=Ng.willBreak,Rg=Ng.isLineNext,Og=Ng.getFirstString,Yg=Ng.isEmpty,Mg=$f,Vg=Mg.namedTypes,Ug=Mg.builtInTypes.string;const Xg=1,Wg=2,Jg=/(\\|\"|\')/g,Zg=UT=>UT.replace(Jg,"\\$1"),Kg=Object.prototype.toString,Qg=Date.prototype.toISOString,$g=Error.prototype.toString,Sx=RegExp.prototype.toString,Tx=Symbol.prototype.toString,Px=/^Symbol\((.*)\)(.*)$/,_x=/\n/ig,Nx=Object.getOwnPropertySymbols||(()=>[]),Ix={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 Lx=function(XT,WT){WT?(Ud(WT),WT=Xd(WT)):WT=Ix;const JT={};Object.keys(WT.theme).forEach(_A=>{JT[_A]=WT.highlight?Su[WT.theme[_A]]:{close:"",open:""}});let ZT,KT;const QT="",$T=0,SA=WT.min?" ":"\n",TA=WT.min?"":"\n";if(WT&&WT.plugins.length){ZT=Wd(WT.indent),KT=[];const _A=Md(XT,ZT,QT,SA,TA,KT,WT.maxDepth,$T,WT.plugins,WT.min,WT.callToJSON,WT.printFunctionName,WT.escapeRegex,JT);if(_A)return _A}const PA=Td(XT,WT.printFunctionName,WT.escapeRegex);return PA?PA:(ZT||(ZT=Wd(WT.indent)),KT||(KT=[]),Yd(XT,ZT,QT,SA,TA,KT,WT.maxDepth,$T,WT.plugins,WT.min,WT.callToJSON,WT.printFunctionName,WT.escapeRegex,JT))},Rx=[],Ox=[],Yx=function(UT,XT){if(UT===XT)return 0;var WT=UT.length,JT=XT.length;if(0===WT)return JT;if(0===JT)return WT;for(var SA=0,TA=0,ZT,KT,QT,$T;SAKT?$T>KT?KT+1:$T:$T>QT?QT+1:$T;return KT};const Mx=Zu,Vx=Mx.bold("\u25CF"),Ux=`${Vx} Deprecation Warning`,Xx=`${Vx} Validation Error`,Wx=`${Vx} Validation Warning`,Jx=UT=>"function"==typeof UT?UT.toString():Lx(UT,{min:!0});class Zx extends Error{constructor(UT,XT,WT){super(),WT=WT?"\n\n"+WT:"\n",this.name="",this.message=Mx.red(Mx.bold(UT)+":\n\n"+XT+WT),Error.captureStackTrace(this,()=>{})}}var Kx={DEPRECATION:Ux,ERROR:Xx,ValidationError:Zx,WARNING:Wx,createDidYouMeanMessage:(UT,XT)=>{const WT=XT.find(JT=>{const ZT=Yx(JT,UT);return 3>ZT});return WT?`Did you mean ${Mx.bold(Jx(WT))}?`:""},format:Jx,logValidationWarning:(UT,XT,WT)=>{WT=WT?"\n\n"+WT:"\n",console.warn(Mx.yellow(Mx.bold(UT)+":\n\n"+XT+WT))}};const Qx=Zu,$x=Lx,SS=Qx.green,TS=Qx.red,PS=["zero","one","two","three","four","five","six","seven","eight","nine","ten","eleven","twelve","thirteen"],_S=UT=>{if("undefined"==typeof UT)return"undefined";if(null===UT)return"null";if(Array.isArray(UT))return"array";if("boolean"==typeof UT)return"boolean";if("function"==typeof UT)return"function";if("number"==typeof UT)return"number";if("string"==typeof UT)return"string";if("object"==typeof UT)return UT.constructor===RegExp?"regexp":UT.constructor===Map?"map":UT.constructor===Set?"set":"object";if("symbol"==typeof UT)return"symbol";throw new Error(`value of unknown type: ${UT}`)},NS=function(UT){let XT=1TS(NS(UT)),LS=UT=>SS(NS(UT)),RS=(UT,XT,WT)=>{const JT=_S(XT);return UT+":"+("null"!==JT&&"undefined"!==JT?"\n "+JT+": ":" ")+WT(XT)},OS=(UT,XT)=>{if(XT||(XT="This matcher"),"number"!=typeof UT)throw new Error(MS("[.not]"+XT)+"\n\n"+`Actual value must be a number.\n`+RS("Received",UT,IS))},YS=(UT,XT)=>{if(XT||(XT="This matcher"),"number"!=typeof UT)throw new Error(MS("[.not]"+XT)+"\n\n"+`Expected value must be a number.\n`+RS("Got",UT,LS))},MS=function(UT){let XT=1{if(XT||(XT="This"),"undefined"!=typeof UT)throw new Error(MS("[.not]"+XT,void 0,"")+"\n\nMatcher does not accept any arguments.\n"+RS("Got",UT,LS))},ensureNumbers:(UT,XT,WT)=>{OS(UT,WT),YS(XT,WT)},getType:_S,matcherHint:MS,pluralize:(UT,XT)=>(PS[XT]||XT)+" "+UT+(1===XT?"":"s"),printExpected:LS,printReceived:IS,printWithType:RS,stringify:NS}.getType;var KS={ValidationError:WS,errorMessage:(UT,XT,WT,JT)=>{const ZT=` Option ${VS.bold(`"${UT}"`)} must be of type: - ${VS.bold.green(ZS(WT))} +var prettier=function(){function Se($T,SA){return SA={exports:{}},$T(SA,SA.exports),SA.exports}function Te(){throw new Error("setTimeout has not been defined")}function Pe(){throw new Error("clearTimeout has not been defined")}function _e($T){if(Jc===setTimeout)return setTimeout($T,0);if((Jc===Te||!Jc)&&setTimeout)return Jc=setTimeout,setTimeout($T,0);try{return Jc($T,0)}catch(SA){try{return Jc.call(null,$T,0)}catch(TA){return Jc.call(this,$T,0)}}}function Ne($T){if(Zc===clearTimeout)return clearTimeout($T);if((Zc===Pe||!Zc)&&clearTimeout)return Zc=clearTimeout,clearTimeout($T);try{return Zc($T)}catch(SA){try{return Zc.call(null,$T)}catch(TA){return Zc.call(this,$T)}}}function Le(){Qc&&$c&&(Qc=!1,$c.length?Kc=$c.concat(Kc):Su=-1,Kc.length&&Re())}function Re(){if(!Qc){var $T=_e(Le);Qc=!0;for(var SA=Kc.length;SA;){for($c=Kc,Kc=[];++Su>16,IA[RA++]=255&_A>>8,IA[RA++]=255&_A;return 2===NA?(_A=Lm[$T.charCodeAt(SA)]<<2|Lm[$T.charCodeAt(SA+1)]>>4,IA[RA++]=255&_A):1==NA&&(_A=Lm[$T.charCodeAt(SA)]<<10|Lm[$T.charCodeAt(SA+1)]<<4|Lm[$T.charCodeAt(SA+2)]>>2,IA[RA++]=255&_A>>8,IA[RA++]=255&_A),IA}function Je($T){return Nm[63&$T>>18]+Nm[63&$T>>12]+Nm[63&$T>>6]+Nm[63&$T]}function Ze($T,SA,TA){var PA,_A=[];for(var NA=SA;NARA?RA:LA+IA));return 1==PA?(SA=$T[TA-1],_A+=Nm[SA>>2],_A+=Nm[63&SA<<4],_A+="=="):2==PA&&(SA=($T[TA-2]<<8)+$T[TA-1],_A+=Nm[SA>>10],_A+=Nm[63&SA>>4],_A+=Nm[63&SA<<2],_A+="="),NA.push(_A),NA.join("")}function Qe($T,SA,TA,PA,_A){var NA,IA,LA=8*_A-PA-1,RA=(1<>1,YA=-7,MA=TA?_A-1:0,VA=TA?-1:1,UA=$T[SA+MA];for(MA+=VA,NA=UA&(1<<-YA)-1,UA>>=-YA,YA+=LA;0>=-YA,YA+=PA;0>1,VA=23===_A?Math.pow(2,-24)-Math.pow(2,-77):0,UA=PA?0:NA-1,XA=PA?1:-1,WA=0>SA||0===SA&&0>1/SA?1:0;for(SA=Math.abs(SA),isNaN(SA)||SA===Infinity?(LA=isNaN(SA)?1:0,IA=YA):(IA=Math.floor(Math.log(SA)/Math.LN2),1>SA*(RA=Math.pow(2,-IA))&&(IA--,RA*=2),SA+=1<=IA+MA?VA/RA:VA*Math.pow(2,1-MA),2<=SA*RA&&(IA++,RA/=2),IA+MA>=YA?(LA=0,IA=YA):1<=IA+MA?(LA=(SA*RA-1)*Math.pow(2,_A),IA+=MA):(LA=SA*Math.pow(2,MA-1)*Math.pow(2,_A),IA=0));8<=_A;$T[TA+UA]=255&LA,UA+=XA,LA/=256,_A-=8);for(IA=IA<<_A|LA,OA+=_A;0$T)throw new RangeError("\"size\" argument must not be negative")}function It($T,SA,TA,PA){return Nt(SA),0>=SA?Tt($T,SA):void 0===TA?Tt($T,SA):"string"==typeof PA?Tt($T,SA).fill(TA,PA):Tt($T,SA).fill(TA)}function Lt($T,SA){if(Nt(SA),$T=Tt($T,0>SA?0:0|Vt(SA)),!Pt.TYPED_ARRAY_SUPPORT)for(var TA=0;TASA.length?0:0|Vt(SA.length);$T=Tt($T,TA);for(var PA=0;PATA||SA.byteLength=St())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+St().toString(16)+" bytes");return 0|$T}function Ut($T){return!!(null!=$T&&$T._isBuffer)}function Xt($T,SA){if(Ut($T))return $T.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView($T)||$T instanceof ArrayBuffer))return $T.byteLength;"string"!=typeof $T&&($T=""+$T);var TA=$T.length;if(0===TA)return 0;for(var PA=!1;;)switch(SA){case"ascii":case"latin1":case"binary":return TA;case"utf8":case"utf-8":case void 0:return Pn($T).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*TA;case"hex":return TA>>>1;case"base64":return Ln($T).length;default:if(PA)return Pn($T).length;SA=(""+SA).toLowerCase(),PA=!0;}}function Wt($T,SA,TA){var PA=!1;if((void 0===SA||0>SA)&&(SA=0),SA>this.length)return"";if((void 0===TA||TA>this.length)&&(TA=this.length),0>=TA)return"";if(TA>>>=0,SA>>>=0,TA<=SA)return"";for($T||($T="utf8");!0;)switch($T){case"hex":return Ma(this,SA,TA);case"utf8":case"utf-8":return La(this,SA,TA);case"ascii":return Oa(this,SA,TA);case"latin1":case"binary":return Ya(this,SA,TA);case"base64":return Na(this,SA,TA);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return Va(this,SA,TA);default:if(PA)throw new TypeError("Unknown encoding: "+$T);$T=($T+"").toLowerCase(),PA=!0;}}function Jt($T,SA,TA){var PA=$T[SA];$T[SA]=$T[TA],$T[TA]=PA}function Zt($T,SA,TA,PA,_A){if(0===$T.length)return-1;if("string"==typeof TA?(PA=TA,TA=0):2147483647TA&&(TA=-2147483648),TA=+TA,isNaN(TA)&&(TA=_A?0:$T.length-1),0>TA&&(TA=$T.length+TA),TA>=$T.length){if(_A)return-1;TA=$T.length-1}else if(0>TA)if(_A)TA=0;else return-1;if("string"==typeof SA&&(SA=Pt.from(SA,PA)),Ut(SA))return 0===SA.length?-1:Kt($T,SA,TA,PA,_A);if("number"==typeof SA)return SA&=255,Pt.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?_A?Uint8Array.prototype.indexOf.call($T,SA,TA):Uint8Array.prototype.lastIndexOf.call($T,SA,TA):Kt($T,[SA],TA,PA,_A);throw new TypeError("val must be string, number or Buffer")}function Kt($T,SA,TA,PA,_A){function NA(UA,XA){return 1===IA?UA[XA]:UA.readUInt16BE(XA*IA)}var IA=1,LA=$T.length,RA=SA.length;if(void 0!==PA&&(PA=(PA+"").toLowerCase(),"ucs2"===PA||"ucs-2"===PA||"utf16le"===PA||"utf-16le"===PA)){if(2>$T.length||2>SA.length)return-1;IA=2,LA/=2,RA/=2,TA/=2}var OA;if(_A){var YA=-1;for(OA=TA;OALA&&(TA=LA-RA),OA=TA;0<=OA;OA--){var MA=!0;for(var VA=0;VA_A&&(PA=_A)):PA=_A;var NA=SA.length;if(0!=NA%2)throw new TypeError("Invalid hex string");PA>NA/2&&(PA=NA/2);for(var IA=0;IANA&&(IA=NA):2==LA?(RA=$T[_A+1],128==(192&RA)&&(MA=(31&NA)<<6|63&RA,127MA||57343MA&&(IA=MA))):void 0}null===IA?(IA=65533,LA=1):65535>>10),IA=56320|1023&IA),PA.push(IA),_A+=LA}return Ra(PA)}function Ra($T){var SA=$T.length;if(SA<=Vm)return String.fromCharCode.apply(String,$T);for(var TA="",PA=0;PASA)&&(SA=0),(!TA||0>TA||TA>PA)&&(TA=PA);var _A="";for(var NA=SA;NA$T)throw new RangeError("offset is not uint");if($T+SA>TA)throw new RangeError("Trying to access beyond buffer length")}function Xa($T,SA,TA,PA,_A,NA){if(!Ut($T))throw new TypeError("\"buffer\" argument must be a Buffer instance");if(SA>_A||SA$T.length)throw new RangeError("Index out of range")}function Wa($T,SA,TA,PA){0>SA&&(SA=65535+SA+1);for(var _A=0,NA=Math.min($T.length-TA,2);_A>>8*(PA?_A:1-_A)}function Ja($T,SA,TA,PA){0>SA&&(SA=4294967295+SA+1);for(var _A=0,NA=Math.min($T.length-TA,4);_A>>8*(PA?_A:3-_A)}function Za($T,SA,TA,PA){if(TA+PA>$T.length)throw new RangeError("Index out of range");if(0>TA)throw new RangeError("Index out of range")}function Ka($T,SA,TA,PA,_A){return _A||Za($T,SA,TA,4,3.4028234663852886e38,-3.4028234663852886e38),$e($T,SA,TA,PA,23,4),TA+4}function Qa($T,SA,TA,PA,_A){return _A||Za($T,SA,TA,8,1.7976931348623157e308,-1.7976931348623157e308),$e($T,SA,TA,PA,52,8),TA+8}function $a($T){if($T=Sn($T).replace(Um,""),2>$T.length)return"";for(;0!=$T.length%4;)$T+="=";return $T}function Sn($T){return $T.trim?$T.trim():$T.replace(/^\s+|\s+$/g,"")}function Tn($T){return 16>$T?"0"+$T.toString(16):$T.toString(16)}function Pn($T,SA){SA=SA||Infinity;var TA,PA=$T.length,_A=null,NA=[];for(var IA=0;IATA){if(!_A){if(56319TA){-1<(SA-=3)&&NA.push(239,191,189),_A=TA;continue}TA=(_A-55296<<10|TA-56320)+65536}else _A&&-1<(SA-=3)&&NA.push(239,191,189);if(_A=null,128>TA){if(0>(SA-=1))break;NA.push(TA)}else if(2048>TA){if(0>(SA-=2))break;NA.push(192|TA>>6,128|63&TA)}else if(65536>TA){if(0>(SA-=3))break;NA.push(224|TA>>12,128|63&TA>>6,128|63&TA)}else if(1114112>TA){if(0>(SA-=4))break;NA.push(240|TA>>18,128|63&TA>>12,128|63&TA>>6,128|63&TA)}else throw new Error("Invalid code point")}return NA}function _n($T){var SA=[];for(var TA=0;TA<$T.length;++TA)SA.push(255&$T.charCodeAt(TA));return SA}function Nn($T,SA){var TA,PA,_A,NA=[];for(var IA=0;IA<$T.length&&!(0>(SA-=2));++IA)TA=$T.charCodeAt(IA),PA=TA>>8,_A=TA%256,NA.push(_A),NA.push(PA);return NA}function Ln($T){return We($a($T))}function Rn($T,SA,TA,PA){for(var _A=0;_A=SA.length||_A>=$T.length);++_A)SA[_A+TA]=$T[_A];return _A}function On($T){return $T!==$T}function Yn($T){return null!=$T&&(!!$T._isBuffer||Mn($T)||Vn($T))}function Mn($T){return!!$T.constructor&&"function"==typeof $T.constructor.isBuffer&&$T.constructor.isBuffer($T)}function Vn($T){return"function"==typeof $T.readFloatLE&&"function"==typeof $T.slice&&Mn($T.slice(0,0))}function Un($T,SA){var TA={seen:[],stylize:Wn};return 3<=arguments.length&&(TA.depth=arguments[2]),4<=arguments.length&&(TA.colors=arguments[3]),_r(SA)?TA.showHidden=SA:SA&&Zr(TA,SA),Or(TA.showHidden)&&(TA.showHidden=!1),Or(TA.depth)&&(TA.depth=2),Or(TA.colors)&&(TA.colors=!1),Or(TA.customInspect)&&(TA.customInspect=!0),TA.colors&&(TA.stylize=Xn),Zn(TA,$T,TA.depth)}function Xn($T,SA){var TA=Un.styles[SA];return TA?"\x1B["+Un.colors[TA][0]+"m"+$T+"\x1B["+Un.colors[TA][1]+"m":$T}function Wn($T){return $T}function Jn($T){var SA={};return $T.forEach(function(TA){SA[TA]=!0}),SA}function Zn($T,SA,TA){if($T.customInspect&&SA&&Xr(SA.inspect)&&SA.inspect!==Un&&!(SA.constructor&&SA.constructor.prototype===SA)){var PA=SA.inspect(TA,$T);return Rr(PA)||(PA=Zn($T,PA,TA)),PA}var _A=Kn($T,SA);if(_A)return _A;var NA=Object.keys(SA),IA=Jn(NA);if($T.showHidden&&(NA=Object.getOwnPropertyNames(SA)),Ur(SA)&&(0<=NA.indexOf("message")||0<=NA.indexOf("description")))return Qn(SA);if(0===NA.length){if(Xr(SA)){var LA=SA.name?": "+SA.name:"";return $T.stylize("[Function"+LA+"]","special")}if(Yr(SA))return $T.stylize(RegExp.prototype.toString.call(SA),"regexp");if(Vr(SA))return $T.stylize(Date.prototype.toString.call(SA),"date");if(Ur(SA))return Qn(SA)}var RA="",OA=!1,YA=["{","}"];if(Pr(SA)&&(OA=!0,YA=["[","]"]),Xr(SA)){var MA=SA.name?": "+SA.name:"";RA=" [Function"+MA+"]"}if(Yr(SA)&&(RA=" "+RegExp.prototype.toString.call(SA)),Vr(SA)&&(RA=" "+Date.prototype.toUTCString.call(SA)),Ur(SA)&&(RA=" "+Qn(SA)),0===NA.length&&(!OA||0==SA.length))return YA[0]+RA+YA[1];if(0>TA)return Yr(SA)?$T.stylize(RegExp.prototype.toString.call(SA),"regexp"):$T.stylize("[Object]","special");$T.seen.push(SA);var VA;return VA=OA?$n($T,SA,TA,IA,NA):NA.map(function(UA){return Sr($T,SA,TA,IA,UA,OA)}),$T.seen.pop(),Tr(VA,RA,YA)}function Kn($T,SA){if(Or(SA))return $T.stylize("undefined","undefined");if(Rr(SA)){var TA="'"+JSON.stringify(SA).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,"\"")+"'";return $T.stylize(TA,"string")}return Lr(SA)?$T.stylize(""+SA,"number"):_r(SA)?$T.stylize(""+SA,"boolean"):Nr(SA)?$T.stylize("null","null"):void 0}function Qn($T){return"["+Error.prototype.toString.call($T)+"]"}function $n($T,SA,TA,PA,_A){var NA=[];for(var IA=0,LA=SA.length;IA$T.seen.indexOf(RA.value)?(LA=Nr(TA)?Zn($T,RA.value,null):Zn($T,RA.value,TA-1),-1Po(SA)-Po($T)&&No($T,Po(SA)),0>_o($T)-_o(SA)&&Lo($T,_o(SA))}function Zi($T){if($T)switch($T.type){case"ExportDeclaration":case"ExportDefaultDeclaration":case"ExportDefaultSpecifier":case"DeclareExportDeclaration":case"ExportNamedDeclaration":case"ExportAllDeclaration":return!0;}return!1}function Ki($T){return(SA,TA,PA)=>{const _A=PA&&PA.backwards;if(!1===TA)return!1;const NA=SA.length;let IA=TA;for(;0<=IA&&IA=Vy(TA[PA])-My($T));--PA);return void TA.splice(PA+1,0,$T)}}else if($T[Yy])return $T[Yy];var _A;if(Sy.check($T))_A=Object.keys($T);else if(Ty.check($T))_A=Qh.getFieldNames($T);else return;TA||Object.defineProperty($T,Yy,{value:TA=[],enumerable:!1});for(var PA=0,NA=_A.length;PA>1,OA=PA[RA];if(0>=My(OA)-My(SA)&&0>=Vy(SA)-Vy(OA))return SA.enclosingNode=OA,0=Vy(OA)-My(SA)){_A=OA,IA=RA+1;continue}if(0>=Vy(SA)-My(OA)){NA=OA,LA=RA;continue}throw new Error("Comment location overlaps with node location")}_A&&(SA.precedingNode=_A),NA&&(SA.followingNode=NA)}function Yo($T,SA){var TA=$T.length;if(0!==TA){var PA=$T[0].precedingNode,_A=$T[0].followingNode,NA=My(_A);for(var IA=TA;0--SA)return _A}return null}function Pl($T){return Vb.BinaryExpression.check($T)||Vb.LogicalExpression.check($T)}function _l($T){return!!Vb.CallExpression.check($T)||(Ub.check($T)?$T.some(_l):!!Vb.Node.check($T)&&Yb.someField($T,function(SA,TA){return _l(TA)}))}function Nl($T,SA,TA){Jb.ok($T instanceof Kb);var PA=$T.getValue(),_A=[],NA=!1,IA=Ll($T,SA,TA);if(!PA||Zg(IA))return IA;if(PA.decorators&&0");const RP=$T.call(TA,"body"),OP=Tg([Tg(_A)," ",RP]);return"ArrayExpression"===PA.body.type||"ObjectExpression"===PA.body.type||"JSXElement"===PA.body.type||"BlockStatement"===PA.body.type?Og(OP):Og(Mg([OP,Tg([Tg(_A),Yg(SA.tabWidth,Tg([_g,RP]))])]),{shouldBreak:Xg(RP)});case"MethodDefinition":return PA.static&&_A.push("static "),_A.push(Yl($T,SA,TA)),Tg(_A);case"YieldExpression":return _A.push("yield"),PA.delegate&&_A.push("*"),PA.argument&&_A.push(" ",$T.call(TA,"argument")),Tg(_A);case"AwaitExpression":return _A.push("await"),PA.all&&_A.push("*"),PA.argument&&_A.push(" ",$T.call(TA,"argument")),Tg(_A);case"ModuleDeclaration":return _A.push("module",$T.call(TA,"id")),PA.source?(Jb.ok(!PA.body),_A.push("from",$T.call(TA,"source"))):_A.push($T.call(TA,"body")),Pg(" ",_A);case"ImportSpecifier":return PA.imported?(_A.push($T.call(TA,"imported")),PA.local&&PA.local.name!==PA.imported.name&&_A.push(" as ",$T.call(TA,"local"))):PA.id&&(_A.push($T.call(TA,"id")),PA.name&&_A.push(" as ",$T.call(TA,"name"))),Tg(_A);case"ExportSpecifier":return PA.local?(_A.push($T.call(TA,"local")),PA.exported&&PA.exported.name!==PA.local.name&&_A.push(" as ",$T.call(TA,"exported"))):PA.id&&(_A.push($T.call(TA,"id")),PA.name&&_A.push(" as ",$T.call(TA,"name"))),Tg(_A);case"ExportBatchSpecifier":return"*";case"ImportNamespaceSpecifier":return _A.push("* as "),PA.local?_A.push($T.call(TA,"local")):PA.id&&_A.push($T.call(TA,"id")),Tg(_A);case"ImportDefaultSpecifier":return PA.local?$T.call(TA,"local"):$T.call(TA,"id");case"ExportDeclaration":case"ExportDefaultDeclaration":case"ExportNamedDeclaration":return Wl($T,SA,TA);case"ExportAllDeclaration":return _A.push("export *"),PA.exported&&_A.push(" as ",$T.call(TA,"exported")),_A.push(" from ",$T.call(TA,"source"),";"),Tg(_A);case"ExportNamespaceSpecifier":return Tg(["* as ",$T.call(TA,"exported")]);case"ExportDefaultSpecifier":return $T.call(TA,"exported");case"ImportDeclaration":if(_A.push("import "),PA.importKind&&"value"!==PA.importKind&&_A.push(PA.importKind+" "),PA.specifiers&&0Tg([",",_g,WP]))))];var ZA=$T.getParentNode(),KA=Qg.ForStatement.check(ZA)||Qg.ForInStatement.check(ZA)||Qg.ForOfStatement&&Qg.ForOfStatement.check(ZA)||Qg.ForAwaitStatement&&Qg.ForAwaitStatement.check(ZA);return KA&&ZA.body!==PA||_A.push(";"),Og(Tg(_A));case"VariableDeclarator":return PA.init?Tg([$T.call(TA,"id")," = ",$T.call(TA,"init")]):$T.call(TA,"id");case"WithStatement":return Tg(["with (",$T.call(TA,"object"),")",Mp($T.call(TA,"body"),SA)]);case"IfStatement":const UP=Mp($T.call(TA,"consequent"),SA);if(_A=["if (",Og(Tg([Yg(SA.tabWidth,Tg([Lg,$T.call(TA,"test")])),Lg])),")",UP],PA.alternate){const WP=Up(UP),JP=Xp(UP);WP&&!JP?_A.push(" else"):_A.push(Mg([Tg([Ng,"else"])])),_A.push(Mp($T.call(TA,"alternate"),SA,"IfStatement"===PA.alternate.type))}return Og(Tg(_A));case"ForStatement":{const WP=Mp($T.call(TA,"body"),SA);return PA.init||PA.test||PA.update?Tg(["for (",Og(Tg([Yg(SA.tabWidth,Tg([Lg,$T.call(TA,"init"),";",_g,$T.call(TA,"test"),";",_g,$T.call(TA,"update")])),Lg])),")",WP]):Tg(["for (;;)",WP])}case"WhileStatement":return Tg(["while (",Og(Tg([Yg(SA.tabWidth,Tg([Lg,$T.call(TA,"test")])),Lg])),")",Mp($T.call(TA,"body"),SA)]);case"ForInStatement":return Tg([PA.each?"for each (":"for (",$T.call(TA,"left")," in ",$T.call(TA,"right"),")",Mp($T.call(TA,"body"),SA)]);case"ForOfStatement":return Tg(["for (",$T.call(TA,"left")," of ",$T.call(TA,"right"),")",Mp($T.call(TA,"body"),SA)]);case"ForAwaitStatement":return Tg(["for await (",$T.call(TA,"left")," of ",$T.call(TA,"right"),")",Mp($T.call(TA,"body"),SA)]);case"DoWhileStatement":var QA=Mp($T.call(TA,"body"),SA),$A=Tg(["do",QA]),_A=[$A];const XP=Up(QA);return XP?_A.push(" while"):_A.push(Tg([_g,"while"])),_A.push(" (",$T.call(TA,"test"),");"),Tg(_A);case"DoExpression":var SP=$T.call(function(WP){return Rl(WP,SA,TA)},"body");return Tg(["do {\n",SP.indent(SA.tabWidth),"\n}"]);case"BreakStatement":return _A.push("break"),PA.label&&_A.push(" ",$T.call(TA,"label")),_A.push(";"),Tg(_A);case"ContinueStatement":return _A.push("continue"),PA.label&&_A.push(" ",$T.call(TA,"label")),_A.push(";"),Tg(_A);case"LabeledStatement":return"EmptyStatement"===PA.body.type?Tg([$T.call(TA,"label"),":;"]):Tg([$T.call(TA,"label"),":",Ng,$T.call(TA,"body")]);case"TryStatement":return _A.push("try ",$T.call(TA,"block")),PA.handler?_A.push(" ",$T.call(TA,"handler")):PA.handlers&&$T.each(function(WP){_A.push(" ",TA(WP))},"handlers"),PA.finalizer&&_A.push(" finally ",$T.call(TA,"finalizer")),Tg(_A);case"CatchClause":return _A.push("catch (",$T.call(TA,"param")),PA.guard&&_A.push(" if ",$T.call(TA,"guard")),_A.push(") ",$T.call(TA,"body")),Tg(_A);case"ThrowStatement":return Tg(["throw ",$T.call(TA,"argument"),";"]);case"SwitchStatement":return Tg(["switch (",$T.call(TA,"discriminant"),") {",0"EmptyStatement"!==WP.type)){const WP=$T.call(function(JP){return Rl(JP,SA,TA)},"consequent");_A.push(Up(WP)?Tg([" ",WP]):Yg(SA.tabWidth,Tg([Ng,WP])))}return Tg(_A);case"DebuggerStatement":return"debugger;";case"JSXAttribute":if(_A.push($T.call(TA,"name")),PA.value){let WP;WP=("StringLiteral"===PA.value.type||"Literal"===PA.value.type)&&"string"==typeof PA.value.value?"\""+Qb.htmlEscapeInsideDoubleQuote(PA.value.value)+"\"":$T.call(TA,"value"),_A.push("=",WP)}return Tg(_A);case"JSXIdentifier":return""+PA.name;case"JSXNamespacedName":return Pg(":",[$T.call(TA,"namespace"),$T.call(TA,"name")]);case"JSXMemberExpression":return Pg(".",[$T.call(TA,"object"),$T.call(TA,"property")]);case"JSXSpreadAttribute":return Tg(["{...",$T.call(TA,"argument"),"}"]);case"JSXExpressionContainer":{const WP=$T.getParentNode(0),JP="ArrayExpression"===PA.expression.type||"ObjectExpression"===PA.expression.type||"ArrowFunctionExpression"===PA.expression.type||"CallExpression"===PA.expression.type||"FunctionExpression"===PA.expression.type||"JSXElement"===WP.type&&("ConditionalExpression"===PA.expression.type||"LogicalExpression"===PA.expression.type);return JP?Tg(["{",$T.call(TA,"expression"),"}"]):Og(Tg(["{",Yg(SA.tabWidth,Tg([Lg,$T.call(TA,"expression")])),Lg,"}"]))}case"JSXElement":{const WP=Np($T,SA,TA);return Lp($T,WP,SA)}case"JSXOpeningElement":{const WP=$T.getValue();return 1===WP.attributes.length&&WP.attributes[0].value&&"Literal"===WP.attributes[0].value.type&&"string"==typeof WP.attributes[0].value.value?Og(Tg(["<",$T.call(TA,"name")," ",Tg($T.map(TA,"attributes")),WP.selfClosing?" />":">"])):Og(Tg(["<",$T.call(TA,"name"),Tg([Yg(SA.tabWidth,Tg($T.map(JP=>Tg([_g,TA(JP)]),"attributes"))),WP.selfClosing?_g:Lg]),WP.selfClosing?"/>":">"]))}case"JSXClosingElement":return Tg([""]);case"JSXText":throw new Error("JSXTest should be handled by JSXElement");case"JSXEmptyExpression":return Zb.printDanglingComments($T,SA);case"TypeAnnotatedIdentifier":return Tg([$T.call(TA,"annotation")," ",$T.call(TA,"identifier")]);case"ClassBody":return 0===PA.body.length?"{}":Tg(["{",Yg(SA.tabWidth,Tg([Ng,$T.call(function(WP){return Rl(WP,SA,TA)},"body")])),Ng,"}"]);case"ClassPropertyDefinition":return _A.push("static ",$T.call(TA,"definition")),Qg.MethodDefinition.check(PA.definition)||_A.push(";"),Tg(_A);case"ClassProperty":PA.static&&_A.push("static ");var TP;return PA.computed?TP=Tg(["[",$T.call(TA,"key"),"]"]):(TP=Ol($T,SA,TA),"plus"===PA.variance?TP=Tg(["+",TP]):"minus"===PA.variance&&(TP=Tg(["-",TP]))),_A.push(TP),PA.typeAnnotation&&_A.push($T.call(TA,"typeAnnotation")),PA.value&&_A.push(" = ",$T.call(TA,"value")),_A.push(";"),Tg(_A);case"ClassDeclaration":case"ClassExpression":return Tg(Zl($T,SA,TA));case"TemplateElement":return Pg(Rg,PA.value.raw.split("\n").map(WP=>Kp(WP)));case"TemplateLiteral":var PP=$T.map(TA,"expressions");return _A.push("`"),$T.each(function(WP){var JP=WP.getName();_A.push(TA(WP)),JP ":": ",$T.call(TA,"returnType"),$T.call(TA,"predicate")),Tg(_A);case"FunctionTypeParam":return Tg([$T.call(TA,"name"),PA.optional?"?":"",PA.name?": ":"",$T.call(TA,"typeAnnotation")]);case"GenericTypeAnnotation":return Tg([$T.call(TA,"id"),$T.call(TA,"typeParameters")]);case"DeclareInterface":case"InterfaceDeclaration":{const WP=$T.getParentNode(1);return WP&&"DeclareModule"===WP.type&&_A.push("declare "),_A.push("interface ",$T.call(TA,"id"),$T.call(TA,"typeParameters")," "),0"]);case"TypeParameter":switch(PA.variance){case"plus":_A.push("+");break;case"minus":_A.push("-");break;default:}return _A.push($T.call(TA,"name")),PA.bound&&_A.push($T.call(TA,"bound")),PA["default"]&&_A.push("=",$T.call(TA,"default")),Tg(_A);case"TypeofTypeAnnotation":return Tg(["typeof ",$T.call(TA,"argument")]);case"VoidTypeAnnotation":return"void";case"NullTypeAnnotation":return"null";case"InferredPredicate":return"%checks";case"DeclaredPredicate":return Tg(["%checks(",$T.call(TA,"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(PA.type));}return p}function Rl($T,SA,TA){let PA=[];return $T.map(function(_A){var NA=_A.getValue();if(NA&&"EmptyStatement"!==NA.type){const IA=TA(_A),LA=SA.originalText,RA=[];RA.push(IA),Qb.isNextLineEmpty(LA,NA)&&!$p(_A)&&RA.push(Ng),PA.push(Tg(RA))}}),Pg(Ng,PA)}function Ol($T,SA,TA){const PA=$T.getNode(),_A=PA.key;return("StringLiteral"===_A.type||"Literal"===_A.type&&"string"==typeof _A.value)&&$b(_A.value)&&!PA.computed&&("flow"!==SA.parser||_A.value.match(/[a-zA-Z0-9$_]/))?_A.value:$T.call(TA,"key")}function Yl($T,SA,TA){var PA=$T.getNode(),_A=PA.kind,NA=[];"ObjectMethod"===PA.type||"ClassMethod"===PA.type?PA.value=PA:Qg.FunctionExpression.assert(PA.value),PA.value.async&&NA.push("async "),_A&&"init"!==_A&&"method"!==_A&&"constructor"!==_A?(Jb.ok("get"===_A||"set"===_A),NA.push(_A," ")):PA.value.generator&&NA.push("*");var IA=Ol($T,SA,TA);return PA.computed&&(IA=Tg(["[",IA,"]"])),NA.push(IA,$T.call(TA,"value","typeParameters"),Og(Tg([$T.call(function(LA){return Vl(LA,TA,SA)},"value"),$T.call(LA=>Xl(LA,TA),"value")]))," ",$T.call(TA,"value","body")),Tg(NA)}function Ml($T,SA,TA){var PA=$T.map(TA,"arguments");if(0===PA.length)return"()";const _A=Qb.getLast($T.getValue().arguments),NA=(!_A.comments||!_A.comments.length)&&("ObjectExpression"===_A.type||"ArrayExpression"===_A.type||"FunctionExpression"===_A.type||"ArrowFunctionExpression"===_A.type&&("BlockStatement"===_A.body.type||"ArrowFunctionExpression"===_A.body.type||"ObjectExpression"===_A.body.type||"ArrayExpression"===_A.body.type||"CallExpression"===_A.body.type||"JSXElement"===_A.body.type)||"NewExpression"===_A.type);if(NA){const IA=PA.slice(0,-1).some(Xg);return Mg([Tg(["(",Pg(Tg([", "]),PA),")"]),Tg(["(",Pg(Tg([",",_g]),PA.slice(0,-1)),1PA(WA),"callee")):"MemberExpression"===XA.type?(NA.unshift({node:XA,printed:Zb.printComments(UA,()=>Kl(UA,SA,TA),SA)}),UA.call(WA=>PA(WA),"object")):NA.unshift({node:XA,printed:UA.call(TA)})}function _A(UA){return Tg(UA.map(XA=>XA.printed))}const NA=[];PA($T);for(var IA=[],LA=[NA[0]],RA=1;RA=IA.length)return Og(MA);const VA=Tg([_A(IA[0]),Yg(SA.tabWidth,Og(Tg([Ng,Pg(Ng,IA.slice(1).map(_A))])))]);return YA.slice(0,-1).some(Xg)?Og(VA):Mg([MA,VA])}function $l($T){if(0===$T.children.length)return!0;if(1<$T.children.length)return!1;const SA=$T.children[0].value;return!/\S/.test(SA)&&/\n/.test(SA)}function _p($T,SA,TA){const PA=$T.getValue(),_A=[],NA=SA.singleQuote?Vg("{' '}"," "):Vg("{\" \"}"," ");return $T.map(function(IA,LA){const RA=IA.getValue(),OA=Qg.Literal.check(RA);if(OA&&"string"==typeof RA.value){const YA="flow"===SA.parser?RA.raw:Qb.htmlEscapeInsideAngleBracket(RA.value),MA=YA.replace(/\u00a0/g," ");/\S/.test(MA)?MA.split(/(\n\s*)/).forEach(VA=>{const UA=VA.match(/\n/g);if(UA)return _A.push(Ng),void(1{let WA=NA[XA-1];WA&&Xg(WA)?(IA=!0,VA.push([UA])):Qb.getLast(VA).push(UA),!IA&&XA===NA.length-1&&Xg(UA)&&(IA=!0)}),OA=[Ng,Tg(VA.map(UA=>Mg([Tg(UA)])))]}const YA=$T.call(TA,"closingElement"),MA=Og(Tg([_A,Yg(SA.tabWidth,Og(Tg(OA),{shouldBreak:!0})),Ng,YA]));return IA?MA:Mg([Og(Tg([_A,Tg(NA),YA])),MA])}function Lp($T,SA,TA){const PA=$T.getParentNode();return PA?{JSXElement:!0,ExpressionStatement:!0,CallExpression:!0,ConditionalExpression:!0,LogicalExpression:!0}[PA.type]?SA:Og(Tg([Vg("("),Yg(TA.tabWidth,Tg([Lg,SA])),Lg,Vg(")")])):SA}function Rp($T){return"BinaryExpression"===$T.type||"LogicalExpression"===$T.type}function Yp($T,SA,TA,PA,_A){let NA=$T.getValue();return Rp(NA)?(Qb.getPrecedence(NA.left.operator)===Qb.getPrecedence(NA.operator)?$T.call(IA=>Yp(IA,SA,TA,PA,!0),"left"):SA.push($T.call(TA,"left")),SA.push(" ",NA.operator,_g,$T.call(TA,"right")),_A&&NA.comments&&SA.push(Zb.printComments($T,()=>"",PA))):SA.push($T.call(TA)),SA}function Mp($T,SA,TA){return""===$T?";":Up($T)||TA?Tg([" ",$T]):Yg(SA.tabWidth,Tg([_g,$T]))}function Up($T){const SA=Jg($T);return"{"===SA||"{}"===SA}function Xp($T){const SA=Jg($T);return"{}"===SA}function Wp($T,SA){const TA=$T.value;if($g.assert(TA),"flow"===SA.parser&&-1!==TA.indexOf("\uFFFD"))return $T.raw;const PA=$T.extra?$T.extra.raw:$T.raw,_A=PA.slice(1,-1),NA={quote:"\"",regex:/"/g},IA={quote:"'",regex:/'/g},LA=SA.singleQuote?IA:NA,RA=LA===IA?NA:IA;let OA=!1;if(_A.includes(LA.quote)){const MA=(_A.match(LA.regex)||[]).length,VA=(_A.match(RA.regex)||[]).length;OA=MA>VA}const YA=OA?RA.quote:LA.quote;return Jp(_A,YA)}function Jp($T,SA){const TA="\""===SA?"'":"\"",PA=/\\([\s\S])|(['"])/g,_A=$T.replace(PA,(NA,IA,LA)=>{return IA===TA?IA:LA===SA?"\\"+LA:NA});return SA+Kp(_A)+SA}function Zp($T){const SA=$T.pattern,TA=$T.flags,PA=!TA.includes("u");return"/"+Kp(SA,PA)+"/"+TA}function Kp($T,SA){const TA=/(\\x[\da-f]{2}|\\u[\da-f]{4}|\\u\{[\da-f]+\})|(\\[\s\S])/gi;return $T.replace(TA,(PA,_A,NA)=>{return NA?NA:SA&&"{"===_A[2]?_A:_A.toLowerCase()})}function Qp($T){return $T.toLowerCase().replace(/^([\d.]+e)(?:\+|(-))?0*/,"$1$2").replace(/^\./,"0.").replace(/\.(?=e|$)/,"")}function $p($T){const SA=$T.getParentNode(),TA=$T.getValue(),PA=SA.body;return PA&&PA[PA.length-1]===TA}function Sd($T){const SA=$T.type;return Qg.Literal.check($T)||"ArrayExpression"===SA||"ArrayPattern"===SA||"ArrowFunctionExpression"===SA||"AssignmentPattern"===SA||"CallExpression"===SA||"FunctionExpression"===SA||"Identifier"===SA||"Literal"===SA||"MemberExpression"===SA||"NewExpression"===SA||"ObjectExpression"===SA||"ObjectPattern"===SA||"StringLiteral"===SA||"ThisExpression"===SA||"TypeCastExpression"===SA||"UnaryExpression"===SA}function Td($T,SA,TA){let PA=SA.length;for(const _A=[$T];0<=TA;){if(0===_A.length){if(0===PA)return!0;_A.push(SA[PA-1]),PA--;continue}const IA=_A.pop(),LA=IA[0],RA=IA[1],OA=IA[2];if("string"==typeof OA)TA-=OA.length;else switch(OA.type){case"concat":for(var NA=OA.parts.length-1;0<=NA;NA--)_A.push([LA,RA,OA.parts[NA]]);break;case"indent":_A.push([LA+OA.n,RA,OA.contents]);break;case"group":_A.push([LA,OA.break?Sx:RA,OA.contents]);break;case"if-break":RA===Sx&&OA.breakContents&&_A.push([LA,RA,OA.breakContents]),RA===Tx&&OA.flatContents&&_A.push([LA,RA,OA.flatContents]);break;case"line":switch(RA){case Tx:if(!OA.hard){OA.soft||(TA-=1);break}case Sx:return!0;}}}return!1}function Pd($T){return"[object Array]"===$T||"[object ArrayBuffer]"===$T||"[object DataView]"===$T||"[object Float32Array]"===$T||"[object Float64Array]"===$T||"[object Int8Array]"===$T||"[object Int16Array]"===$T||"[object Int32Array]"===$T||"[object Uint8Array]"===$T||"[object Uint8ClampedArray]"===$T||"[object Uint16Array]"===$T||"[object Uint32Array]"===$T}function _d($T){return $T==+$T?0===$T&&0>1/$T?"-0":""+$T:"NaN"}function Nd($T,SA){return SA?""===$T.name?"[Function anonymous]":"[Function "+$T.name+"]":"[Function]"}function Ld($T){return Ox.call($T).replace(Yx,"Symbol($1)")}function Rd($T){return"["+Lx.call($T)+"]"}function Od($T,SA,TA){if(!0===$T||!1===$T)return""+$T;if(void 0===$T)return"undefined";if(null===$T)return"null";const PA=typeof $T;if("number"==PA)return _d($T);if("string"==PA)return"\""+_x($T)+"\"";if("function"==PA)return Nd($T,SA);if("symbol"==PA)return Ld($T);const _A=Nx.call($T);return"[object WeakMap]"===_A?"WeakMap {}":"[object WeakSet]"===_A?"WeakSet {}":"[object Function]"===_A||"[object GeneratorFunction]"===_A?Nd($T,SA):"[object Symbol]"===_A?Ld($T):"[object Date]"===_A?Ix.call($T):"[object Error]"===_A?Rd($T):"[object RegExp]"===_A?TA?_x(Rx.call($T)):Rx.call($T):"[object Arguments]"===_A&&0===$T.length?"Arguments []":Pd(_A)&&0===$T.length?$T.constructor.name+" []":!!($T instanceof Error)&&Rd($T)}function Yd($T,SA,TA,PA,_A,NA,IA,LA,RA,OA,YA,MA,VA,UA){let XA="";if($T.length){XA+=_A;const WA=TA+SA;for(let JA=0;JA<$T.length;JA++)XA+=WA+Kd($T[JA],SA,WA,PA,_A,NA,IA,LA,RA,OA,YA,MA,VA,UA),JA<$T.length-1&&(XA+=","+PA);XA+=(OA?"":",")+_A+TA}return"["+XA+"]"}function Md($T,SA,TA,PA,_A,NA,IA,LA,RA,OA,YA,MA,VA,UA){return(OA?"":"Arguments ")+Yd($T,SA,TA,PA,_A,NA,IA,LA,RA,OA,YA,MA,VA,UA)}function Vd($T,SA,TA,PA,_A,NA,IA,LA,RA,OA,YA,MA,VA,UA){return(OA?"":$T.constructor.name+" ")+Yd($T,SA,TA,PA,_A,NA,IA,LA,RA,OA,YA,MA,VA,UA)}function Ud($T,SA,TA,PA,_A,NA,IA,LA,RA,OA,YA,MA,VA,UA){let XA="Map {";const WA=$T.entries();let JA=WA.next();if(!JA.done){XA+=_A;for(const ZA=TA+SA;!JA.done;){const KA=Kd(JA.value[0],SA,ZA,PA,_A,NA,IA,LA,RA,OA,YA,MA,VA,UA),QA=Kd(JA.value[1],SA,ZA,PA,_A,NA,IA,LA,RA,OA,YA,MA,VA,UA);XA+=ZA+KA+" => "+QA,JA=WA.next(),JA.done||(XA+=","+PA)}XA+=(OA?"":",")+_A+TA}return XA+"}"}function Xd($T,SA,TA,PA,_A,NA,IA,LA,RA,OA,YA,MA,VA,UA){const XA=OA?"":$T.constructor?$T.constructor.name+" ":"Object ";let WA=XA+"{",JA=Object.keys($T).sort();const ZA=Vx($T);if(ZA.length&&(JA=JA.filter(KA=>"symbol"!=typeof KA&&"[object Symbol]"!==Nx.call(KA)).concat(ZA)),JA.length){WA+=_A;const KA=TA+SA;for(let QA=0;QAIA;if(YA&&!XA&&$T.toJSON&&"function"==typeof $T.toJSON)return Kd($T.toJSON(),SA,TA,PA,_A,NA,IA,LA,RA,OA,YA,MA,VA,UA);const WA=Nx.call($T);return"[object Arguments]"===WA?XA?"[Arguments]":Md($T,SA,TA,PA,_A,NA,IA,LA,RA,OA,YA,MA,VA,UA):Pd(WA)?XA?"[Array]":Vd($T,SA,TA,PA,_A,NA,IA,LA,RA,OA,YA,MA,VA,UA):"[object Map]"===WA?XA?"[Map]":Ud($T,SA,TA,PA,_A,NA,IA,LA,RA,OA,YA,MA,VA,UA):"[object Set]"===WA?XA?"[Set]":Wd($T,SA,TA,PA,_A,NA,IA,LA,RA,OA,YA,MA,VA,UA):XA?"[Object]":Xd($T,SA,TA,PA,_A,NA,IA,LA,RA,OA,YA,MA,VA,UA)}function Zd($T,SA,TA,PA,_A,NA,IA,LA,RA,OA,YA,MA,VA,UA){let XA=!1,WA;for(let JA=0;JA{if(!Ux.hasOwnProperty(SA))throw new Error("prettyFormat: Invalid option: "+SA)}),$T.min&&void 0!==$T.indent&&0!==$T.indent)throw new Error("prettyFormat: Cannot run with min option and indent")}function $d($T){const SA={};return Object.keys(Ux).forEach(TA=>SA[TA]=$T.hasOwnProperty(TA)?$T[TA]:Ux[TA]),SA.min&&(SA.indent=0),SA}function Sc($T){return Array($T+1).join(" ")}function Tc($T){if("concat"===$T.type){var SA=[];for(var TA=0;TA<$T.parts.length;++TA){const PA=$T.parts[TA];if("string"!=typeof PA&&"concat"===PA.type)[].push.apply(SA,Tc(PA).parts);else{const _A=Tc(PA);""!==_A&&SA.push(_A)}}return Object.assign({},$T,{parts:SA})}return"if-break"===$T.type?Object.assign({},$T,{breakContents:null==$T.breakContents?null:Tc($T.breakContents),flatContents:null==$T.flatContents?null:Tc($T.flatContents)}):"group"===$T.type?Object.assign({},$T,{contents:Tc($T.contents),expandedStates:$T.expandedStates?$T.expandedStates.map(Tc):$T.expandedStates}):$T.contents?Object.assign({},$T,{contents:Tc($T.contents)}):$T}function Pc($T){return"string"==typeof $T?JSON.stringify($T):"line"===$T.type?$T.literalline?"literalline":$T.hard?"hardline":$T.soft?"softline":"line":"break-parent"===$T.type?"breakParent":"concat"===$T.type?"["+$T.parts.map(Pc).join(", ")+"]":"indent"===$T.type?"indent("+$T.n+", "+Pc($T.contents)+")":"if-break"===$T.type?"ifBreak("+Pc($T.breakContents)+($T.flatContents?", "+Pc($T.flatContents):"")+")":"group"===$T.type?$T.expandedStates?"conditionalGroup(["+$T.expandedStates.map(Pc).join(",")+"])":($T.break?"wrappedGroup":"group")+"("+Pc($T.contents)+")":void 0}function _c($T){const SA=$T.indexOf("\n");return 0<=SA&&"\r"===$T.charAt(SA-1)?"\r\n":"\n"}function Nc($T,SA){const TA="flow"===SA.parser?KT.parseWithFlow:KT.parseWithBabylon;try{return TA($T)}catch(PA){const _A=PA.loc;throw _A&&(PA.codeFrame=_m($T,_A.line,_A.column+1,{highlightCode:!0}),PA.message+="\n"+PA.codeFrame),PA}}function Lc($T,SA,TA){SA.comments&&(Uy.attach(SA.comments,SA,$T),SA.comments=[]),SA.tokens=[],TA.originalText=$T}function Rc($T,SA){const TA=Nc($T,SA);Lc($T,TA,SA);const PA=WT(TA,SA),_A=JT(PA,SA.printWidth,_c($T));return _A}function Oc($T,SA){if(!$T.startsWith("#!"))return Rc($T,SA);const TA=$T.indexOf("\n"),PA=$T.slice(0,TA+1),_A=$T.slice(TA+1),NA=$T.charAt(TA+1),IA="\n"===NA?"\n":"\r"===NA?"\r\n":"";return PA+IA+Rc(_A,SA)}var Yc=Se(function($T,SA){Object.defineProperty(SA,"__esModule",{value:!0}),SA.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,SA.matchToToken=function(TA){var PA={type:"invalid",value:TA[0]};return TA[1]?(PA.type="string",PA.closed=!!(TA[3]||TA[4])):TA[5]?PA.type="comment":TA[6]?(PA.type="comment",PA.closed=!!TA[7]):TA[8]?PA.type="regex":TA[9]?PA.type="number":TA[10]?PA.type="name":TA[11]?PA.type="punctuator":TA[12]&&(PA.type="whitespace"),PA}}),Mc=Se(function($T){(function(){"use strict";function SA(PA){if(null==PA)return!1;switch(PA.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 TA(PA){switch(PA.type){case"IfStatement":return null==PA.alternate?PA.consequent:PA.alternate;case"LabeledStatement":case"ForStatement":case"ForInStatement":case"WhileStatement":case"WithStatement":return PA.body;}return null}$T.exports={isExpression:function(_A){if(null==_A)return!1;switch(_A.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:SA,isIterationStatement:function(_A){if(null==_A)return!1;switch(_A.type){case"DoWhileStatement":case"ForInStatement":case"ForStatement":case"WhileStatement":return!0;}return!1},isSourceElement:function(_A){return SA(_A)||null!=_A&&"FunctionDeclaration"===_A.type},isProblematicIfStatement:function(_A){var NA;if("IfStatement"!==_A.type)return!1;if(null==_A.alternate)return!1;NA=_A.consequent;do{if("IfStatement"===NA.type&&null==NA.alternate)return!0;NA=TA(NA)}while(NA);return!1},trailingStatement:TA}})()}),Vc=Se(function($T){(function(){"use strict";function SA(RA){if(65535>=RA)return String.fromCharCode(RA);var OA=String.fromCharCode(Math.floor((RA-65536)/1024)+55296),YA=String.fromCharCode((RA-65536)%1024+56320);return OA+YA}var TA,PA,_A,NA,IA,LA;for(PA={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]/},TA={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]/},_A=[5760,6158,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8239,8287,12288,65279],NA=Array(128),LA=0;128>LA;++LA)NA[LA]=97<=LA&&122>=LA||65<=LA&&90>=LA||36===LA||95===LA;for(IA=Array(128),LA=0;128>LA;++LA)IA[LA]=97<=LA&&122>=LA||65<=LA&&90>=LA||48<=LA&&57>=LA||36===LA||95===LA;$T.exports={isDecimalDigit:function(OA){return 48<=OA&&57>=OA},isHexDigit:function(OA){return 48<=OA&&57>=OA||97<=OA&&102>=OA||65<=OA&&70>=OA},isOctalDigit:function(OA){return 48<=OA&&55>=OA},isWhiteSpace:function(OA){return 32===OA||9===OA||11===OA||12===OA||160===OA||5760<=OA&&0<=_A.indexOf(OA)},isLineTerminator:function(OA){return 10===OA||13===OA||8232===OA||8233===OA},isIdentifierStartES5:function(OA){return 128>OA?NA[OA]:PA.NonAsciiIdentifierStart.test(SA(OA))},isIdentifierPartES5:function(OA){return 128>OA?IA[OA]:PA.NonAsciiIdentifierPart.test(SA(OA))},isIdentifierStartES6:function(OA){return 128>OA?NA[OA]:TA.NonAsciiIdentifierStart.test(SA(OA))},isIdentifierPartES6:function(OA){return 128>OA?IA[OA]:TA.NonAsciiIdentifierPart.test(SA(OA))}}})()}),Uc=Se(function($T){(function(){"use strict";function SA(YA){return"implements"===YA||"interface"===YA||"package"===YA||"private"===YA||"protected"===YA||"public"===YA||"static"===YA||"let"===YA}function TA(YA,MA){return(MA||"yield"!==YA)&&PA(YA,MA)}function PA(YA,MA){if(MA&&SA(YA))return!0;switch(YA.length){case 2:return"if"===YA||"in"===YA||"do"===YA;case 3:return"var"===YA||"for"===YA||"new"===YA||"try"===YA;case 4:return"this"===YA||"else"===YA||"case"===YA||"void"===YA||"with"===YA||"enum"===YA;case 5:return"while"===YA||"break"===YA||"catch"===YA||"throw"===YA||"const"===YA||"yield"===YA||"class"===YA||"super"===YA;case 6:return"return"===YA||"typeof"===YA||"delete"===YA||"switch"===YA||"export"===YA||"import"===YA;case 7:return"default"===YA||"finally"===YA||"extends"===YA;case 8:return"function"===YA||"continue"===YA||"debugger"===YA;case 10:return"instanceof"===YA;default:return!1;}}function _A(YA,MA){return"null"===YA||"true"===YA||"false"===YA||TA(YA,MA)}function NA(YA,MA){return"null"===YA||"true"===YA||"false"===YA||PA(YA,MA)}function IA(YA){var MA,VA,UA;if(0===YA.length)return!1;if(UA=YA.charCodeAt(0),!OA.isIdentifierStartES5(UA))return!1;for(MA=1,VA=YA.length;MA=UA){if(++MA,MA>=VA)return!1;if(XA=YA.charCodeAt(MA),!(56320<=XA&&57343>=XA))return!1;UA=LA(UA,XA)}if(!WA(UA))return!1;WA=OA.isIdentifierPartES6}return!0}var OA=Vc;$T.exports={isKeywordES5:TA,isKeywordES6:PA,isReservedWordES5:_A,isReservedWordES6:NA,isRestrictedWord:function(MA){return"eval"===MA||"arguments"===MA},isIdentifierNameES5:IA,isIdentifierNameES6:RA,isIdentifierES5:function(MA,VA){return IA(MA)&&!_A(MA,VA)},isIdentifierES6:function(MA,VA){return RA(MA)&&!NA(MA,VA)}}})()}),Xc=Se(function($T,SA){(function(){"use strict";SA.ast=Mc,SA.code=Vc,SA.keyword=Uc})()}),Wc="undefined"==typeof global?"undefined"==typeof self?"undefined"==typeof window?{}:window:self:global,Jc=Te,Zc=Pe;"function"==typeof Wc.setTimeout&&(Jc=setTimeout),"function"==typeof Wc.clearTimeout&&(Zc=clearTimeout);var Kc=[],Qc=!1,$c,Su=-1;Oe.prototype.run=function(){this.fun.apply(null,this.array)};var Tu=Wc.performance||{},Pu=Tu.now||Tu.mozNow||Tu.msNow||Tu.oNow||Tu.webkitNow||function(){return new Date().getTime()},_u=new Date,Nu={nextTick:function(SA){var TA=Array(arguments.length-1);if(1_A&&(PA--,_A+=1e9)),[PA,_A]},platform:"browser",release:{},config:{},uptime:function(){var SA=new Date;return(SA-_u)/1e3}},Iu=/[|\\{}()[\]^$+*?.]/g,Lu=Se(function($T){"use strict";Object.defineProperty($T,"exports",{enumerable:!0,get:function(){var TA={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 TA.colors.grey=TA.colors.gray,Object.keys(TA).forEach(function(PA){var _A=TA[PA];Object.keys(_A).forEach(function(NA){var IA=_A[NA];TA[NA]=_A[NA]={open:"\x1B["+IA[0]+"m",close:"\x1B["+IA[1]+"m"}}),Object.defineProperty(TA,PA,{value:_A,enumerable:!1})}),TA}})}),Ru=function(){return /[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/g},Ou=Ru(),Yu=new RegExp(Ru().source),Mu=Yu.test.bind(Yu),Vu=Nu.argv,Uu=Vu.indexOf("--"),Xu=function($T){$T="--"+$T;var SA=Vu.indexOf($T);return-1!==SA&&(!(-1!==Uu)||SA"),QA($A.gutter,VP),RP,UP].join("")}return" "+QA($A.gutter,VP)+RP}).join("\n");return ZA?KA.reset(LP):LP};var IA=Yc,LA=TA(IA),RA=TA(Xc),OA=TA(Pm),YA=/\r\n|[\n\r\u2028\u2029]/,MA=/^[a-z][\w-]*$/i,VA=/^[()\[\]{}]$/;$T.exports=SA["default"]}),Nm=[],Lm=[],Rm="undefined"==typeof Uint8Array?Array:Uint8Array,Om=!1,Ym={}.toString,Mm=Array.isArray||function($T){return"[object Array]"==Ym.call($T)};Pt.TYPED_ARRAY_SUPPORT=!(Wc.TYPED_ARRAY_SUPPORT!==void 0)||Wc.TYPED_ARRAY_SUPPORT,Pt.poolSize=8192,Pt._augment=function($T){return $T.__proto__=Pt.prototype,$T},Pt.from=function($T,SA,TA){return _t(null,$T,SA,TA)},Pt.TYPED_ARRAY_SUPPORT&&(Pt.prototype.__proto__=Uint8Array.prototype,Pt.__proto__=Uint8Array,"undefined"!=typeof Symbol&&Symbol.species&&Pt[Symbol.species]===Pt),Pt.alloc=function($T,SA,TA){return It(null,$T,SA,TA)},Pt.allocUnsafe=function($T){return Lt(null,$T)},Pt.allocUnsafeSlow=function($T){return Lt(null,$T)},Pt.isBuffer=Yn,Pt.compare=function(SA,TA){if(!Ut(SA)||!Ut(TA))throw new TypeError("Arguments must be Buffers");if(SA===TA)return 0;var PA=SA.length,_A=TA.length;for(var NA=0,IA=Math.min(PA,_A);NATA&&(SA+=" ... ")),""},Pt.prototype.compare=function(SA,TA,PA,_A,NA){if(!Ut(SA))throw new TypeError("Argument must be a Buffer");if(void 0===TA&&(TA=0),void 0===PA&&(PA=SA?SA.length:0),void 0===_A&&(_A=0),void 0===NA&&(NA=this.length),0>TA||PA>SA.length||0>_A||NA>this.length)throw new RangeError("out of range index");if(_A>=NA&&TA>=PA)return 0;if(_A>=NA)return-1;if(TA>=PA)return 1;if(TA>>>=0,PA>>>=0,_A>>>=0,NA>>>=0,this===SA)return 0;var IA=NA-_A,LA=PA-TA,RA=Math.min(IA,LA),OA=this.slice(_A,NA),YA=SA.slice(TA,PA);for(var MA=0;MANA)&&(PA=NA),0PA||0>TA)||TA>this.length)throw new RangeError("Attempt to write outside buffer bounds");_A||(_A="utf8");for(var IA=!1;;)switch(_A){case"hex":return Qt(this,SA,TA,PA);case"utf8":case"utf-8":return $t(this,SA,TA,PA);case"ascii":return Sa(this,SA,TA,PA);case"latin1":case"binary":return Ta(this,SA,TA,PA);case"base64":return Pa(this,SA,TA,PA);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return _a(this,SA,TA,PA);default:if(IA)throw new TypeError("Unknown encoding: "+_A);_A=(""+_A).toLowerCase(),IA=!0;}},Pt.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var Vm=4096;Pt.prototype.slice=function(SA,TA){var PA=this.length;SA=~~SA,TA=TA===void 0?PA:~~TA,0>SA?(SA+=PA,0>SA&&(SA=0)):SA>PA&&(SA=PA),0>TA?(TA+=PA,0>TA&&(TA=0)):TA>PA&&(TA=PA),TA=NA&&(_A-=Math.pow(2,8*TA)),_A},Pt.prototype.readIntBE=function(SA,TA,PA){SA|=0,TA|=0,PA||Ua(SA,TA,this.length);for(var _A=TA,NA=1,IA=this[SA+--_A];0<_A&&(NA*=256);)IA+=this[SA+--_A]*NA;return NA*=128,IA>=NA&&(IA-=Math.pow(2,8*TA)),IA},Pt.prototype.readInt8=function(SA,TA){return TA||Ua(SA,1,this.length),128&this[SA]?-1*(255-this[SA]+1):this[SA]},Pt.prototype.readInt16LE=function(SA,TA){TA||Ua(SA,2,this.length);var PA=this[SA]|this[SA+1]<<8;return 32768&PA?4294901760|PA:PA},Pt.prototype.readInt16BE=function(SA,TA){TA||Ua(SA,2,this.length);var PA=this[SA+1]|this[SA]<<8;return 32768&PA?4294901760|PA:PA},Pt.prototype.readInt32LE=function(SA,TA){return TA||Ua(SA,4,this.length),this[SA]|this[SA+1]<<8|this[SA+2]<<16|this[SA+3]<<24},Pt.prototype.readInt32BE=function(SA,TA){return TA||Ua(SA,4,this.length),this[SA]<<24|this[SA+1]<<16|this[SA+2]<<8|this[SA+3]},Pt.prototype.readFloatLE=function(SA,TA){return TA||Ua(SA,4,this.length),Qe(this,SA,!0,23,4)},Pt.prototype.readFloatBE=function(SA,TA){return TA||Ua(SA,4,this.length),Qe(this,SA,!1,23,4)},Pt.prototype.readDoubleLE=function(SA,TA){return TA||Ua(SA,8,this.length),Qe(this,SA,!0,52,8)},Pt.prototype.readDoubleBE=function(SA,TA){return TA||Ua(SA,8,this.length),Qe(this,SA,!1,52,8)},Pt.prototype.writeUIntLE=function(SA,TA,PA,_A){if(SA=+SA,TA|=0,PA|=0,!_A){var NA=Math.pow(2,8*PA)-1;Xa(this,SA,TA,PA,NA,0)}var IA=1,LA=0;for(this[TA]=255&SA;++LA>>8):Wa(this,SA,TA,!0),TA+2},Pt.prototype.writeUInt16BE=function(SA,TA,PA){return SA=+SA,TA|=0,PA||Xa(this,SA,TA,2,65535,0),Pt.TYPED_ARRAY_SUPPORT?(this[TA]=SA>>>8,this[TA+1]=255&SA):Wa(this,SA,TA,!1),TA+2},Pt.prototype.writeUInt32LE=function(SA,TA,PA){return SA=+SA,TA|=0,PA||Xa(this,SA,TA,4,4294967295,0),Pt.TYPED_ARRAY_SUPPORT?(this[TA+3]=SA>>>24,this[TA+2]=SA>>>16,this[TA+1]=SA>>>8,this[TA]=255&SA):Ja(this,SA,TA,!0),TA+4},Pt.prototype.writeUInt32BE=function(SA,TA,PA){return SA=+SA,TA|=0,PA||Xa(this,SA,TA,4,4294967295,0),Pt.TYPED_ARRAY_SUPPORT?(this[TA]=SA>>>24,this[TA+1]=SA>>>16,this[TA+2]=SA>>>8,this[TA+3]=255&SA):Ja(this,SA,TA,!1),TA+4},Pt.prototype.writeIntLE=function(SA,TA,PA,_A){if(SA=+SA,TA|=0,!_A){var NA=Math.pow(2,8*PA-1);Xa(this,SA,TA,PA,NA-1,-NA)}var IA=0,LA=1,RA=0;for(this[TA]=255&SA;++IASA&&0==RA&&0!==this[TA+IA-1]&&(RA=1),this[TA+IA]=255&(SA/LA>>0)-RA;return TA+PA},Pt.prototype.writeIntBE=function(SA,TA,PA,_A){if(SA=+SA,TA|=0,!_A){var NA=Math.pow(2,8*PA-1);Xa(this,SA,TA,PA,NA-1,-NA)}var IA=PA-1,LA=1,RA=0;for(this[TA+IA]=255&SA;0<=--IA&&(LA*=256);)0>SA&&0==RA&&0!==this[TA+IA+1]&&(RA=1),this[TA+IA]=255&(SA/LA>>0)-RA;return TA+PA},Pt.prototype.writeInt8=function(SA,TA,PA){return SA=+SA,TA|=0,PA||Xa(this,SA,TA,1,127,-128),Pt.TYPED_ARRAY_SUPPORT||(SA=Math.floor(SA)),0>SA&&(SA=255+SA+1),this[TA]=255&SA,TA+1},Pt.prototype.writeInt16LE=function(SA,TA,PA){return SA=+SA,TA|=0,PA||Xa(this,SA,TA,2,32767,-32768),Pt.TYPED_ARRAY_SUPPORT?(this[TA]=255&SA,this[TA+1]=SA>>>8):Wa(this,SA,TA,!0),TA+2},Pt.prototype.writeInt16BE=function(SA,TA,PA){return SA=+SA,TA|=0,PA||Xa(this,SA,TA,2,32767,-32768),Pt.TYPED_ARRAY_SUPPORT?(this[TA]=SA>>>8,this[TA+1]=255&SA):Wa(this,SA,TA,!1),TA+2},Pt.prototype.writeInt32LE=function(SA,TA,PA){return SA=+SA,TA|=0,PA||Xa(this,SA,TA,4,2147483647,-2147483648),Pt.TYPED_ARRAY_SUPPORT?(this[TA]=255&SA,this[TA+1]=SA>>>8,this[TA+2]=SA>>>16,this[TA+3]=SA>>>24):Ja(this,SA,TA,!0),TA+4},Pt.prototype.writeInt32BE=function(SA,TA,PA){return SA=+SA,TA|=0,PA||Xa(this,SA,TA,4,2147483647,-2147483648),0>SA&&(SA=4294967295+SA+1),Pt.TYPED_ARRAY_SUPPORT?(this[TA]=SA>>>24,this[TA+1]=SA>>>16,this[TA+2]=SA>>>8,this[TA+3]=255&SA):Ja(this,SA,TA,!1),TA+4},Pt.prototype.writeFloatLE=function(SA,TA,PA){return Ka(this,SA,TA,!0,PA)},Pt.prototype.writeFloatBE=function(SA,TA,PA){return Ka(this,SA,TA,!1,PA)},Pt.prototype.writeDoubleLE=function(SA,TA,PA){return Qa(this,SA,TA,!0,PA)},Pt.prototype.writeDoubleBE=function(SA,TA,PA){return Qa(this,SA,TA,!1,PA)},Pt.prototype.copy=function(SA,TA,PA,_A){if(PA||(PA=0),_A||0===_A||(_A=this.length),TA>=SA.length&&(TA=SA.length),TA||(TA=0),0<_A&&_ATA)throw new RangeError("targetStart out of bounds");if(0>PA||PA>=this.length)throw new RangeError("sourceStart out of bounds");if(0>_A)throw new RangeError("sourceEnd out of bounds");_A>this.length&&(_A=this.length),SA.length-TA<_A-PA&&(_A=SA.length-TA+PA);var NA=_A-PA,IA;if(this===SA&&PANA||!Pt.TYPED_ARRAY_SUPPORT)for(IA=0;IANA&&(SA=NA)}if(void 0!==_A&&"string"!=typeof _A)throw new TypeError("encoding must be a string");if("string"==typeof _A&&!Pt.isEncoding(_A))throw new TypeError("Unknown encoding: "+_A)}else"number"==typeof SA&&(SA&=255);if(0>TA||this.length>>=0,PA=PA===void 0?this.length:PA>>>0,SA||(SA=0);var IA;if("number"==typeof SA)for(IA=TA;IAVP.indexOf(XP)&&VP.push(XP)}),this},Object.defineProperty(IP,"buildable",{value:!1});var LP={};UA.builders=LP;var RP={};UA.defineMethod=function(MP,VP){var UP=RP[MP];return PP.check(VP)?delete RP[MP]:(QA.assert(VP),Object.defineProperty(RP,MP,{enumerable:!0,configurable:!0,value:VP})),UP};var OP=KA.arrayOf();IP.build=function(){var MP=this,VP=Pf.call(arguments);return(OP.assert(VP),Object.defineProperty(MP,"buildParams",{value:VP,writable:!1,enumerable:!1,configurable:!0}),MP.buildable)?MP:(MP.field("type",String,function(){return MP.typeName}),Object.defineProperty(MP,"buildable",{value:!0}),Object.defineProperty(LP,IA(MP.typeName),{enumerable:!0,value:function(){function UP(ZP,KP){if(!Of.call(JP,ZP)){var QP=MP.allFields;if(!Of.call(QP,ZP))throw new Error(""+ZP);var $P=QP[ZP],S_=$P.type,T_;if(TP.check(KP)&&KPWA)return _A;var JA=arguments.length;2===JA?(UA=0,XA=WA):3===JA?(UA=Math.max(UA,0),XA=WA):(UA=Math.max(UA,0),XA=Math.min(XA,WA)),OA.assert(UA),OA.assert(XA);var ZA=Object.create(null),KA=TA(MA);for(var QA=UA;QATP)return!0;if(ZA===TP&&"right"===this.name){if(QA.right!==KA)throw new Error("Nodes must be equal");return!0}default:return!1;}case"SequenceExpression":switch(QA.type){case"ForStatement":return!1;case"ExpressionStatement":return"expression"!==this.name;default:return!0;}case"YieldExpression":switch(QA.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"===QA.type&&YA.check(KA.value)&&"object"===this.name&&QA.object===KA;case"AssignmentExpression":case"ConditionalExpression":switch(QA.type){case"UnaryExpression":case"SpreadElement":case"SpreadProperty":case"BinaryExpression":case"LogicalExpression":return!0;case"CallExpression":return"callee"===this.name&&QA.callee===KA;case"ConditionalExpression":return"test"===this.name&&QA.test===KA;case"MemberExpression":return"object"===this.name&&QA.object===KA;default:return!1;}default:if("NewExpression"===QA.type&&"callee"===this.name&&QA.callee===KA)return PA(KA);}return!0!==JA&&!this.canBeFirstInStatement()&&this.firstInStatement()};var WA={};return[["||"],["&&"],["|"],["^"],["&"],["==","===","!=","!=="],["<",">","<=",">=","in","instanceof"],[">>","<<",">>>"],["+","-"],["*","/","%"]].forEach(function(JA,ZA){JA.forEach(function(KA){WA[KA]=ZA})}),XA.canBeFirstInStatement=function(){var JA=this.node;return!RA.FunctionExpression.check(JA)&&!RA.ObjectExpression.check(JA)},XA.firstInStatement=function(){return _A(this)},SA},Kf=Object.prototype.hasOwnProperty,Qf=function($T){function SA(){if(!(this instanceof SA))throw new Error("PathVisitor constructor cannot be invoked without 'new'");this._reusableContextStack=[],this._methodNameTable=TA(this),this._shouldVisitComments=Kf.call(this._methodNameTable,"Block")||Kf.call(this._methodNameTable,"Line"),this.Context=NA(this),this._visiting=!1,this._changeReported=!1}function TA(XA){var WA=Object.create(null);for(var JA in XA)/^visit[A-Z]/.test(JA)&&(WA[JA.slice("visit".length)]=!0);var ZA=IA.computeSupertypeLookupTable(WA),KA=Object.create(null),WA=Object.keys(ZA),QA=WA.length;for(var $A=0;$AZA.indexOf("comments")&&ZA.push("comments");var KA=ZA.length,QA=[];for(var $A=0;$A=LA},NA+" >= "+LA)},SA.defaults={"null":function(){return null},emptyArray:function(){return[]},"false":function(){return!1},"true":function(){return!0},undefined:function(){}};var IA=PA.or(_A.string,_A.number,_A.boolean,_A.null,_A.undefined);return SA.isPrimitive=new PA(function(LA){if(null===LA)return!0;var RA=typeof LA;return"object"!=RA&&"function"!=RA},IA.toString()),SA},eh=function($T){var SA=$T.use(Yf),TA=SA.Type,PA=TA.def,_A=TA.or,NA=$T.use($f),IA=NA.defaults,LA=NA.geq;PA("Printable").field("loc",_A(PA("SourceLocation"),null),IA["null"],!0),PA("Node").bases("Printable").field("type",String).field("comments",_A([PA("Comment")],null),IA["null"],!0),PA("SourceLocation").build("start","end","source").field("start",PA("Position")).field("end",PA("Position")).field("source",_A(String,null),IA["null"]),PA("Position").build("line","column").field("line",LA(1)).field("column",LA(0)),PA("File").bases("Node").build("program","name").field("program",PA("Program")).field("name",_A(String,null),IA["null"]),PA("Program").bases("Node").build("body").field("body",[PA("Statement")]),PA("Function").bases("Node").field("id",_A(PA("Identifier"),null),IA["null"]).field("params",[PA("Pattern")]).field("body",PA("BlockStatement")),PA("Statement").bases("Node"),PA("EmptyStatement").bases("Statement").build(),PA("BlockStatement").bases("Statement").build("body").field("body",[PA("Statement")]),PA("ExpressionStatement").bases("Statement").build("expression").field("expression",PA("Expression")),PA("IfStatement").bases("Statement").build("test","consequent","alternate").field("test",PA("Expression")).field("consequent",PA("Statement")).field("alternate",_A(PA("Statement"),null),IA["null"]),PA("LabeledStatement").bases("Statement").build("label","body").field("label",PA("Identifier")).field("body",PA("Statement")),PA("BreakStatement").bases("Statement").build("label").field("label",_A(PA("Identifier"),null),IA["null"]),PA("ContinueStatement").bases("Statement").build("label").field("label",_A(PA("Identifier"),null),IA["null"]),PA("WithStatement").bases("Statement").build("object","body").field("object",PA("Expression")).field("body",PA("Statement")),PA("SwitchStatement").bases("Statement").build("discriminant","cases","lexical").field("discriminant",PA("Expression")).field("cases",[PA("SwitchCase")]).field("lexical",Boolean,IA["false"]),PA("ReturnStatement").bases("Statement").build("argument").field("argument",_A(PA("Expression"),null)),PA("ThrowStatement").bases("Statement").build("argument").field("argument",PA("Expression")),PA("TryStatement").bases("Statement").build("block","handler","finalizer").field("block",PA("BlockStatement")).field("handler",_A(PA("CatchClause"),null),function(){return this.handlers&&this.handlers[0]||null}).field("handlers",[PA("CatchClause")],function(){return this.handler?[this.handler]:[]},!0).field("guardedHandlers",[PA("CatchClause")],IA.emptyArray).field("finalizer",_A(PA("BlockStatement"),null),IA["null"]),PA("CatchClause").bases("Node").build("param","guard","body").field("param",PA("Pattern")).field("guard",_A(PA("Expression"),null),IA["null"]).field("body",PA("BlockStatement")),PA("WhileStatement").bases("Statement").build("test","body").field("test",PA("Expression")).field("body",PA("Statement")),PA("DoWhileStatement").bases("Statement").build("body","test").field("body",PA("Statement")).field("test",PA("Expression")),PA("ForStatement").bases("Statement").build("init","test","update","body").field("init",_A(PA("VariableDeclaration"),PA("Expression"),null)).field("test",_A(PA("Expression"),null)).field("update",_A(PA("Expression"),null)).field("body",PA("Statement")),PA("ForInStatement").bases("Statement").build("left","right","body").field("left",_A(PA("VariableDeclaration"),PA("Expression"))).field("right",PA("Expression")).field("body",PA("Statement")),PA("DebuggerStatement").bases("Statement").build(),PA("Declaration").bases("Statement"),PA("FunctionDeclaration").bases("Function","Declaration").build("id","params","body").field("id",PA("Identifier")),PA("FunctionExpression").bases("Function","Expression").build("id","params","body"),PA("VariableDeclaration").bases("Declaration").build("kind","declarations").field("kind",_A("var","let","const")).field("declarations",[PA("VariableDeclarator")]),PA("VariableDeclarator").bases("Node").build("id","init").field("id",PA("Pattern")).field("init",_A(PA("Expression"),null)),PA("Expression").bases("Node","Pattern"),PA("ThisExpression").bases("Expression").build(),PA("ArrayExpression").bases("Expression").build("elements").field("elements",[_A(PA("Expression"),null)]),PA("ObjectExpression").bases("Expression").build("properties").field("properties",[PA("Property")]),PA("Property").bases("Node").build("kind","key","value").field("kind",_A("init","get","set")).field("key",_A(PA("Literal"),PA("Identifier"))).field("value",PA("Expression")),PA("SequenceExpression").bases("Expression").build("expressions").field("expressions",[PA("Expression")]);var RA=_A("-","+","!","~","typeof","void","delete");PA("UnaryExpression").bases("Expression").build("operator","argument","prefix").field("operator",RA).field("argument",PA("Expression")).field("prefix",Boolean,IA["true"]);var OA=_A("==","!=","===","!==","<","<=",">",">=","<<",">>",">>>","+","-","*","/","%","&","|","^","in","instanceof","..");PA("BinaryExpression").bases("Expression").build("operator","left","right").field("operator",OA).field("left",PA("Expression")).field("right",PA("Expression"));var YA=_A("=","+=","-=","*=","/=","%=","<<=",">>=",">>>=","|=","^=","&=");PA("AssignmentExpression").bases("Expression").build("operator","left","right").field("operator",YA).field("left",PA("Pattern")).field("right",PA("Expression"));var MA=_A("++","--");PA("UpdateExpression").bases("Expression").build("operator","argument","prefix").field("operator",MA).field("argument",PA("Expression")).field("prefix",Boolean);var VA=_A("||","&&");PA("LogicalExpression").bases("Expression").build("operator","left","right").field("operator",VA).field("left",PA("Expression")).field("right",PA("Expression")),PA("ConditionalExpression").bases("Expression").build("test","consequent","alternate").field("test",PA("Expression")).field("consequent",PA("Expression")).field("alternate",PA("Expression")),PA("NewExpression").bases("Expression").build("callee","arguments").field("callee",PA("Expression")).field("arguments",[PA("Expression")]),PA("CallExpression").bases("Expression").build("callee","arguments").field("callee",PA("Expression")).field("arguments",[PA("Expression")]),PA("MemberExpression").bases("Expression").build("object","property","computed").field("object",PA("Expression")).field("property",_A(PA("Identifier"),PA("Expression"))).field("computed",Boolean,function(){var UA=this.property.type;return"Literal"===UA||"MemberExpression"===UA||"BinaryExpression"===UA}),PA("Pattern").bases("Node"),PA("SwitchCase").bases("Node").build("test","consequent").field("test",_A(PA("Expression"),null)).field("consequent",[PA("Statement")]),PA("Identifier").bases("Node","Expression","Pattern").build("name").field("name",String),PA("Literal").bases("Node","Expression").build("value").field("value",_A(String,Boolean,null,Number,RegExp)).field("regex",_A({pattern:String,flags:String},null),function(){if(this.value instanceof RegExp){var UA="";return this.value.ignoreCase&&(UA+="i"),this.value.multiline&&(UA+="m"),this.value.global&&(UA+="g"),{pattern:this.value.source,flags:UA}}return null}),PA("Comment").bases("Printable").field("value",String).field("leading",Boolean,IA["true"]).field("trailing",Boolean,IA["false"])},Sh=function($T){$T.use(eh);var SA=$T.use(Yf),TA=SA.Type.def,PA=SA.Type.or,_A=$T.use($f).defaults;TA("Function").field("generator",Boolean,_A["false"]).field("expression",Boolean,_A["false"]).field("defaults",[PA(TA("Expression"),null)],_A.emptyArray).field("rest",PA(TA("Identifier"),null),_A["null"]),TA("RestElement").bases("Pattern").build("argument").field("argument",TA("Pattern")),TA("SpreadElementPattern").bases("Pattern").build("argument").field("argument",TA("Pattern")),TA("FunctionDeclaration").build("id","params","body","generator","expression"),TA("FunctionExpression").build("id","params","body","generator","expression"),TA("ArrowFunctionExpression").bases("Function","Expression").build("params","body","expression").field("id",null,_A["null"]).field("body",PA(TA("BlockStatement"),TA("Expression"))).field("generator",!1,_A["false"]),TA("YieldExpression").bases("Expression").build("argument","delegate").field("argument",PA(TA("Expression"),null)).field("delegate",Boolean,_A["false"]),TA("GeneratorExpression").bases("Expression").build("body","blocks","filter").field("body",TA("Expression")).field("blocks",[TA("ComprehensionBlock")]).field("filter",PA(TA("Expression"),null)),TA("ComprehensionExpression").bases("Expression").build("body","blocks","filter").field("body",TA("Expression")).field("blocks",[TA("ComprehensionBlock")]).field("filter",PA(TA("Expression"),null)),TA("ComprehensionBlock").bases("Node").build("left","right","each").field("left",TA("Pattern")).field("right",TA("Expression")).field("each",Boolean),TA("Property").field("key",PA(TA("Literal"),TA("Identifier"),TA("Expression"))).field("value",PA(TA("Expression"),TA("Pattern"))).field("method",Boolean,_A["false"]).field("shorthand",Boolean,_A["false"]).field("computed",Boolean,_A["false"]),TA("PropertyPattern").bases("Pattern").build("key","pattern").field("key",PA(TA("Literal"),TA("Identifier"),TA("Expression"))).field("pattern",TA("Pattern")).field("computed",Boolean,_A["false"]),TA("ObjectPattern").bases("Pattern").build("properties").field("properties",[PA(TA("PropertyPattern"),TA("Property"))]),TA("ArrayPattern").bases("Pattern").build("elements").field("elements",[PA(TA("Pattern"),null)]),TA("MethodDefinition").bases("Declaration").build("kind","key","value","static").field("kind",PA("constructor","method","get","set")).field("key",PA(TA("Literal"),TA("Identifier"),TA("Expression"))).field("value",TA("Function")).field("computed",Boolean,_A["false"]).field("static",Boolean,_A["false"]),TA("SpreadElement").bases("Node").build("argument").field("argument",TA("Expression")),TA("ArrayExpression").field("elements",[PA(TA("Expression"),TA("SpreadElement"),TA("RestElement"),null)]),TA("NewExpression").field("arguments",[PA(TA("Expression"),TA("SpreadElement"))]),TA("CallExpression").field("arguments",[PA(TA("Expression"),TA("SpreadElement"))]),TA("AssignmentPattern").bases("Pattern").build("left","right").field("left",TA("Pattern")).field("right",TA("Expression"));var NA=PA(TA("MethodDefinition"),TA("VariableDeclarator"),TA("ClassPropertyDefinition"),TA("ClassProperty"));TA("ClassProperty").bases("Declaration").build("key").field("key",PA(TA("Literal"),TA("Identifier"),TA("Expression"))).field("computed",Boolean,_A["false"]),TA("ClassPropertyDefinition").bases("Declaration").build("definition").field("definition",NA),TA("ClassBody").bases("Declaration").build("body").field("body",[NA]),TA("ClassDeclaration").bases("Declaration").build("id","body","superClass").field("id",PA(TA("Identifier"),null)).field("body",TA("ClassBody")).field("superClass",PA(TA("Expression"),null),_A["null"]),TA("ClassExpression").bases("Expression").build("id","body","superClass").field("id",PA(TA("Identifier"),null),_A["null"]).field("body",TA("ClassBody")).field("superClass",PA(TA("Expression"),null),_A["null"]).field("implements",[TA("ClassImplements")],_A.emptyArray),TA("ClassImplements").bases("Node").build("id").field("id",TA("Identifier")).field("superClass",PA(TA("Expression"),null),_A["null"]),TA("Specifier").bases("Node"),TA("ModuleSpecifier").bases("Specifier").field("local",PA(TA("Identifier"),null),_A["null"]).field("id",PA(TA("Identifier"),null),_A["null"]).field("name",PA(TA("Identifier"),null),_A["null"]),TA("TaggedTemplateExpression").bases("Expression").build("tag","quasi").field("tag",TA("Expression")).field("quasi",TA("TemplateLiteral")),TA("TemplateLiteral").bases("Expression").build("quasis","expressions").field("quasis",[TA("TemplateElement")]).field("expressions",[TA("Expression")]),TA("TemplateElement").bases("Node").build("value","tail").field("value",{cooked:String,raw:String}).field("tail",Boolean)},Th=function($T){$T.use(Sh);var SA=$T.use(Yf),TA=SA.Type.def,PA=SA.Type.or;SA.builtInTypes;var _A=$T.use($f).defaults;TA("Function").field("async",Boolean,_A["false"]),TA("SpreadProperty").bases("Node").build("argument").field("argument",TA("Expression")),TA("ObjectExpression").field("properties",[PA(TA("Property"),TA("SpreadProperty"))]),TA("SpreadPropertyPattern").bases("Pattern").build("argument").field("argument",TA("Pattern")),TA("ObjectPattern").field("properties",[PA(TA("Property"),TA("PropertyPattern"),TA("SpreadPropertyPattern"))]),TA("AwaitExpression").bases("Expression").build("argument","all").field("argument",PA(TA("Expression"),null)).field("all",Boolean,_A["false"])},Ph=function($T){$T.use(Th);var SA=$T.use(Yf),TA=SA.Type.def,PA=SA.Type.or,_A=$T.use($f).defaults;TA("Type").bases("Node"),TA("AnyTypeAnnotation").bases("Type").build(),TA("EmptyTypeAnnotation").bases("Type").build(),TA("MixedTypeAnnotation").bases("Type").build(),TA("VoidTypeAnnotation").bases("Type").build(),TA("NumberTypeAnnotation").bases("Type").build(),TA("NumberLiteralTypeAnnotation").bases("Type").build("value","raw").field("value",Number).field("raw",String),TA("StringTypeAnnotation").bases("Type").build(),TA("StringLiteralTypeAnnotation").bases("Type").build("value","raw").field("value",String).field("raw",String),TA("BooleanTypeAnnotation").bases("Type").build(),TA("BooleanLiteralTypeAnnotation").bases("Type").build("value","raw").field("value",Boolean).field("raw",String),TA("TypeAnnotation").bases("Node").build("typeAnnotation").field("typeAnnotation",TA("Type")),TA("NullableTypeAnnotation").bases("Type").build("typeAnnotation").field("typeAnnotation",TA("Type")),TA("NullLiteralTypeAnnotation").bases("Type").build(),TA("NullTypeAnnotation").bases("Type").build(),TA("ThisTypeAnnotation").bases("Type").build(),TA("ExistsTypeAnnotation").bases("Type").build(),TA("ExistentialTypeParam").bases("Type").build(),TA("FunctionTypeAnnotation").bases("Type").build("params","returnType","rest","typeParameters").field("params",[TA("FunctionTypeParam")]).field("returnType",TA("Type")).field("rest",PA(TA("FunctionTypeParam"),null)).field("typeParameters",PA(TA("TypeParameterDeclaration"),null)),TA("FunctionTypeParam").bases("Node").build("name","typeAnnotation","optional").field("name",TA("Identifier")).field("typeAnnotation",TA("Type")).field("optional",Boolean),TA("ArrayTypeAnnotation").bases("Type").build("elementType").field("elementType",TA("Type")),TA("ObjectTypeAnnotation").bases("Type").build("properties","indexers","callProperties").field("properties",[TA("ObjectTypeProperty")]).field("indexers",[TA("ObjectTypeIndexer")],_A.emptyArray).field("callProperties",[TA("ObjectTypeCallProperty")],_A.emptyArray).field("exact",Boolean,_A["false"]),TA("ObjectTypeProperty").bases("Node").build("key","value","optional").field("key",PA(TA("Literal"),TA("Identifier"))).field("value",TA("Type")).field("optional",Boolean).field("variance",PA("plus","minus",null),_A["null"]),TA("ObjectTypeIndexer").bases("Node").build("id","key","value").field("id",TA("Identifier")).field("key",TA("Type")).field("value",TA("Type")).field("variance",PA("plus","minus",null),_A["null"]),TA("ObjectTypeCallProperty").bases("Node").build("value").field("value",TA("FunctionTypeAnnotation")).field("static",Boolean,_A["false"]),TA("QualifiedTypeIdentifier").bases("Node").build("qualification","id").field("qualification",PA(TA("Identifier"),TA("QualifiedTypeIdentifier"))).field("id",TA("Identifier")),TA("GenericTypeAnnotation").bases("Type").build("id","typeParameters").field("id",PA(TA("Identifier"),TA("QualifiedTypeIdentifier"))).field("typeParameters",PA(TA("TypeParameterInstantiation"),null)),TA("MemberTypeAnnotation").bases("Type").build("object","property").field("object",TA("Identifier")).field("property",PA(TA("MemberTypeAnnotation"),TA("GenericTypeAnnotation"))),TA("UnionTypeAnnotation").bases("Type").build("types").field("types",[TA("Type")]),TA("IntersectionTypeAnnotation").bases("Type").build("types").field("types",[TA("Type")]),TA("TypeofTypeAnnotation").bases("Type").build("argument").field("argument",TA("Type")),TA("Identifier").field("typeAnnotation",PA(TA("TypeAnnotation"),null),_A["null"]),TA("TypeParameterDeclaration").bases("Node").build("params").field("params",[TA("TypeParameter")]),TA("TypeParameterInstantiation").bases("Node").build("params").field("params",[TA("Type")]),TA("TypeParameter").bases("Type").build("name","variance","bound").field("name",String).field("variance",PA("plus","minus",null),_A["null"]).field("bound",PA(TA("TypeAnnotation"),null),_A["null"]),TA("Function").field("returnType",PA(TA("TypeAnnotation"),null),_A["null"]).field("typeParameters",PA(TA("TypeParameterDeclaration"),null),_A["null"]),TA("ClassProperty").build("key","value","typeAnnotation","static").field("value",PA(TA("Expression"),null)).field("typeAnnotation",PA(TA("TypeAnnotation"),null)).field("static",Boolean,_A["false"]).field("variance",PA("plus","minus",null),_A["null"]),TA("ClassImplements").field("typeParameters",PA(TA("TypeParameterInstantiation"),null),_A["null"]),TA("InterfaceDeclaration").bases("Declaration").build("id","body","extends").field("id",TA("Identifier")).field("typeParameters",PA(TA("TypeParameterDeclaration"),null),_A["null"]).field("body",TA("ObjectTypeAnnotation")).field("extends",[TA("InterfaceExtends")]),TA("DeclareInterface").bases("InterfaceDeclaration").build("id","body","extends"),TA("InterfaceExtends").bases("Node").build("id").field("id",TA("Identifier")).field("typeParameters",PA(TA("TypeParameterInstantiation"),null)),TA("TypeAlias").bases("Declaration").build("id","typeParameters","right").field("id",TA("Identifier")).field("typeParameters",PA(TA("TypeParameterDeclaration"),null)).field("right",TA("Type")),TA("DeclareTypeAlias").bases("TypeAlias").build("id","typeParameters","right"),TA("TypeCastExpression").bases("Expression").build("expression","typeAnnotation").field("expression",TA("Expression")).field("typeAnnotation",TA("TypeAnnotation")),TA("TupleTypeAnnotation").bases("Type").build("types").field("types",[TA("Type")]),TA("DeclareVariable").bases("Statement").build("id").field("id",TA("Identifier")),TA("DeclareFunction").bases("Statement").build("id").field("id",TA("Identifier")),TA("DeclareClass").bases("InterfaceDeclaration").build("id"),TA("DeclareModule").bases("Statement").build("id","body").field("id",PA(TA("Identifier"),TA("Literal"))).field("body",TA("BlockStatement")),TA("DeclareModuleExports").bases("Statement").build("typeAnnotation").field("typeAnnotation",TA("Type")),TA("DeclareExportDeclaration").bases("Declaration").build("default","declaration","specifiers","source").field("default",Boolean).field("declaration",PA(TA("DeclareVariable"),TA("DeclareFunction"),TA("DeclareClass"),TA("Type"),null)).field("specifiers",[PA(TA("ExportSpecifier"),TA("ExportBatchSpecifier"))],_A.emptyArray).field("source",PA(TA("Literal"),null),_A["null"]),TA("DeclareExportAllDeclaration").bases("Declaration").build("source").field("source",PA(TA("Literal"),null),_A["null"])},_h=function($T){$T.use(Th);var SA=$T.use(Yf),TA=$T.use($f).defaults,PA=SA.Type.def,_A=SA.Type.or;PA("Noop").bases("Node").build(),PA("DoExpression").bases("Expression").build("body").field("body",[PA("Statement")]),PA("Super").bases("Expression").build(),PA("BindExpression").bases("Expression").build("object","callee").field("object",_A(PA("Expression"),null)).field("callee",PA("Expression")),PA("Decorator").bases("Node").build("expression").field("expression",PA("Expression")),PA("Property").field("decorators",_A([PA("Decorator")],null),TA["null"]),PA("MethodDefinition").field("decorators",_A([PA("Decorator")],null),TA["null"]),PA("MetaProperty").bases("Expression").build("meta","property").field("meta",PA("Identifier")).field("property",PA("Identifier")),PA("ParenthesizedExpression").bases("Expression").build("expression").field("expression",PA("Expression")),PA("ImportSpecifier").bases("ModuleSpecifier").build("imported","local").field("imported",PA("Identifier")),PA("ImportDefaultSpecifier").bases("ModuleSpecifier").build("local"),PA("ImportNamespaceSpecifier").bases("ModuleSpecifier").build("local"),PA("ExportDefaultDeclaration").bases("Declaration").build("declaration").field("declaration",_A(PA("Declaration"),PA("Expression"))),PA("ExportNamedDeclaration").bases("Declaration").build("declaration","specifiers","source").field("declaration",_A(PA("Declaration"),null)).field("specifiers",[PA("ExportSpecifier")],TA.emptyArray).field("source",_A(PA("Literal"),null),TA["null"]),PA("ExportSpecifier").bases("ModuleSpecifier").build("local","exported").field("exported",PA("Identifier")),PA("ExportNamespaceSpecifier").bases("Specifier").build("exported").field("exported",PA("Identifier")),PA("ExportDefaultSpecifier").bases("Specifier").build("exported").field("exported",PA("Identifier")),PA("ExportAllDeclaration").bases("Declaration").build("exported","source").field("exported",_A(PA("Identifier"),null)).field("source",PA("Literal")),PA("CommentBlock").bases("Comment").build("value","leading","trailing"),PA("CommentLine").bases("Comment").build("value","leading","trailing")},Nh=function($T){function SA(LA){var RA=TA.indexOf(LA);return-1===RA&&(RA=TA.length,TA.push(LA),PA[RA]=LA(_A)),PA[RA]}var TA=[],PA=[],_A={};_A.use=SA;var NA=SA(Yf);$T.forEach(SA),NA.finalize();var IA={Type:NA.Type,builtInTypes:NA.builtInTypes,namedTypes:NA.namedTypes,builders:NA.builders,defineMethod:NA.defineMethod,getFieldNames:NA.getFieldNames,getFieldValue:NA.getFieldValue,eachField:NA.eachField,someField:NA.someField,getSupertypeNames:NA.getSupertypeNames,astNodesAreEquivalent:SA(Mf),finalize:NA.finalize,Path:SA(Xf),NodePath:SA(Zf),PathVisitor:SA(Qf),use:SA};return IA.visit=IA.PathVisitor.visit,IA}([eh,Sh,Th,function($T){$T.use(eh);var SA=$T.use(Yf),TA=SA.Type.def,PA=SA.Type.or,_A=$T.use($f),NA=_A.geq,IA=_A.defaults;TA("Function").field("body",PA(TA("BlockStatement"),TA("Expression"))),TA("ForInStatement").build("left","right","body","each").field("each",Boolean,IA["false"]),TA("ForOfStatement").bases("Statement").build("left","right","body").field("left",PA(TA("VariableDeclaration"),TA("Expression"))).field("right",TA("Expression")).field("body",TA("Statement")),TA("LetStatement").bases("Statement").build("head","body").field("head",[TA("VariableDeclarator")]).field("body",TA("Statement")),TA("LetExpression").bases("Expression").build("head","body").field("head",[TA("VariableDeclarator")]).field("body",TA("Expression")),TA("GraphExpression").bases("Expression").build("index","expression").field("index",NA(0)).field("expression",TA("Literal")),TA("GraphIndexExpression").bases("Expression").build("index").field("index",NA(0))},function($T){$T.use(eh);var SA=$T.use(Yf),TA=SA.Type.def,PA=SA.Type.or;TA("XMLDefaultDeclaration").bases("Declaration").field("namespace",TA("Expression")),TA("XMLAnyName").bases("Expression"),TA("XMLQualifiedIdentifier").bases("Expression").field("left",PA(TA("Identifier"),TA("XMLAnyName"))).field("right",PA(TA("Identifier"),TA("Expression"))).field("computed",Boolean),TA("XMLFunctionQualifiedIdentifier").bases("Expression").field("right",PA(TA("Identifier"),TA("Expression"))).field("computed",Boolean),TA("XMLAttributeSelector").bases("Expression").field("attribute",TA("Expression")),TA("XMLFilterExpression").bases("Expression").field("left",TA("Expression")).field("right",TA("Expression")),TA("XMLElement").bases("XML","Expression").field("contents",[TA("XML")]),TA("XMLList").bases("XML","Expression").field("contents",[TA("XML")]),TA("XML").bases("Node"),TA("XMLEscape").bases("XML").field("expression",TA("Expression")),TA("XMLText").bases("XML").field("text",String),TA("XMLStartTag").bases("XML").field("contents",[TA("XML")]),TA("XMLEndTag").bases("XML").field("contents",[TA("XML")]),TA("XMLPointTag").bases("XML").field("contents",[TA("XML")]),TA("XMLName").bases("XML").field("contents",PA(String,[TA("XML")])),TA("XMLAttribute").bases("XML").field("value",String),TA("XMLCdata").bases("XML").field("contents",String),TA("XMLComment").bases("XML").field("contents",String),TA("XMLProcessingInstruction").bases("XML").field("target",String).field("contents",PA(String,null))},function($T){$T.use(Th);var SA=$T.use(Yf),TA=SA.Type.def,PA=SA.Type.or,_A=$T.use($f).defaults;TA("JSXAttribute").bases("Node").build("name","value").field("name",PA(TA("JSXIdentifier"),TA("JSXNamespacedName"))).field("value",PA(TA("Literal"),TA("JSXExpressionContainer"),null),_A["null"]),TA("JSXIdentifier").bases("Identifier").build("name").field("name",String),TA("JSXNamespacedName").bases("Node").build("namespace","name").field("namespace",TA("JSXIdentifier")).field("name",TA("JSXIdentifier")),TA("JSXMemberExpression").bases("MemberExpression").build("object","property").field("object",PA(TA("JSXIdentifier"),TA("JSXMemberExpression"))).field("property",TA("JSXIdentifier")).field("computed",Boolean,_A.false);var NA=PA(TA("JSXIdentifier"),TA("JSXNamespacedName"),TA("JSXMemberExpression"));TA("JSXSpreadAttribute").bases("Node").build("argument").field("argument",TA("Expression"));var IA=[PA(TA("JSXAttribute"),TA("JSXSpreadAttribute"))];TA("JSXExpressionContainer").bases("Expression").build("expression").field("expression",TA("Expression")),TA("JSXElement").bases("Expression").build("openingElement","closingElement","children").field("openingElement",TA("JSXOpeningElement")).field("closingElement",PA(TA("JSXClosingElement"),null),_A["null"]).field("children",[PA(TA("JSXElement"),TA("JSXExpressionContainer"),TA("JSXText"),TA("Literal"))],_A.emptyArray).field("name",NA,function(){return this.openingElement.name},!0).field("selfClosing",Boolean,function(){return this.openingElement.selfClosing},!0).field("attributes",IA,function(){return this.openingElement.attributes},!0),TA("JSXOpeningElement").bases("Node").build("name","attributes","selfClosing").field("name",NA).field("attributes",IA,_A.emptyArray).field("selfClosing",Boolean,_A["false"]),TA("JSXClosingElement").bases("Node").build("name").field("name",NA),TA("JSXText").bases("Literal").build("value").field("value",String),TA("JSXEmptyExpression").bases("Expression").build()},Ph,function($T){$T.use(Th);var SA=$T.use(Yf),TA=$T.use($f).defaults,PA=SA.Type.def,_A=SA.Type.or;PA("VariableDeclaration").field("declarations",[_A(PA("VariableDeclarator"),PA("Identifier"))]),PA("Property").field("value",_A(PA("Expression"),PA("Pattern"))),PA("ArrayPattern").field("elements",[_A(PA("Pattern"),PA("SpreadElement"),null)]),PA("ObjectPattern").field("properties",[_A(PA("Property"),PA("PropertyPattern"),PA("SpreadPropertyPattern"),PA("SpreadProperty"))]),PA("ExportSpecifier").bases("ModuleSpecifier").build("id","name"),PA("ExportBatchSpecifier").bases("Specifier").build(),PA("ImportSpecifier").bases("ModuleSpecifier").build("id","name"),PA("ImportNamespaceSpecifier").bases("ModuleSpecifier").build("id"),PA("ImportDefaultSpecifier").bases("ModuleSpecifier").build("id"),PA("ExportDeclaration").bases("Declaration").build("default","declaration","specifiers","source").field("default",Boolean).field("declaration",_A(PA("Declaration"),PA("Expression"),null)).field("specifiers",[_A(PA("ExportSpecifier"),PA("ExportBatchSpecifier"))],TA.emptyArray).field("source",_A(PA("Literal"),null),TA["null"]),PA("ImportDeclaration").bases("Declaration").build("specifiers","source","importKind").field("specifiers",[_A(PA("ImportSpecifier"),PA("ImportNamespaceSpecifier"),PA("ImportDefaultSpecifier"))],TA.emptyArray).field("source",PA("Literal")).field("importKind",_A("value","type"),function(){return"value"}),PA("Block").bases("Comment").build("value","leading","trailing"),PA("Line").bases("Comment").build("value","leading","trailing")},_h,function($T){$T.use(_h),$T.use(Ph);var SA=$T.use(Yf),TA=$T.use($f).defaults,PA=SA.Type.def,_A=SA.Type.or;PA("Directive").bases("Node").build("value").field("value",PA("DirectiveLiteral")),PA("DirectiveLiteral").bases("Node","Expression").build("value").field("value",String,TA["use strict"]),PA("BlockStatement").bases("Statement").build("body").field("body",[PA("Statement")]).field("directives",[PA("Directive")],TA.emptyArray),PA("Program").bases("Node").build("body").field("body",[PA("Statement")]).field("directives",[PA("Directive")],TA.emptyArray),PA("StringLiteral").bases("Literal").build("value").field("value",String),PA("NumericLiteral").bases("Literal").build("value").field("value",Number),PA("NullLiteral").bases("Literal").build(),PA("BooleanLiteral").bases("Literal").build("value").field("value",Boolean),PA("RegExpLiteral").bases("Literal").build("pattern","flags").field("pattern",String).field("flags",String);var NA=_A(PA("Property"),PA("ObjectMethod"),PA("ObjectProperty"),PA("SpreadProperty"));PA("ObjectExpression").bases("Expression").build("properties").field("properties",[NA]),PA("ObjectMethod").bases("Node","Function").build("kind","key","params","body","computed").field("kind",_A("method","get","set")).field("key",_A(PA("Literal"),PA("Identifier"),PA("Expression"))).field("params",[PA("Pattern")]).field("body",PA("BlockStatement")).field("computed",Boolean,TA["false"]).field("generator",Boolean,TA["false"]).field("async",Boolean,TA["false"]).field("decorators",_A([PA("Decorator")],null),TA["null"]),PA("ObjectProperty").bases("Node").build("key","value").field("key",_A(PA("Literal"),PA("Identifier"),PA("Expression"))).field("value",_A(PA("Expression"),PA("Pattern"))).field("computed",Boolean,TA["false"]);var IA=_A(PA("MethodDefinition"),PA("VariableDeclarator"),PA("ClassPropertyDefinition"),PA("ClassProperty"),PA("ClassMethod"));PA("ClassBody").bases("Declaration").build("body").field("body",[IA]),PA("ClassMethod").bases("Declaration","Function").build("kind","key","params","body","computed","static").field("kind",_A("get","set","method","constructor")).field("key",_A(PA("Literal"),PA("Identifier"),PA("Expression"))).field("params",[PA("Pattern")]).field("body",PA("BlockStatement")).field("computed",Boolean,TA["false"]).field("static",Boolean,TA["false"]).field("generator",Boolean,TA["false"]).field("async",Boolean,TA["false"]).field("decorators",_A([PA("Decorator")],null),TA["null"]);var LA=_A(PA("Property"),PA("PropertyPattern"),PA("SpreadPropertyPattern"),PA("SpreadProperty"),PA("ObjectProperty"),PA("RestProperty"));PA("ObjectPattern").bases("Pattern").build("properties").field("properties",[LA]).field("decorators",_A([PA("Decorator")],null),TA["null"]),PA("SpreadProperty").bases("Node").build("argument").field("argument",PA("Expression")),PA("RestProperty").bases("Node").build("argument").field("argument",PA("Expression")),PA("ForAwaitStatement").bases("Statement").build("left","right","body").field("left",_A(PA("VariableDeclaration"),PA("Expression"))).field("right",PA("Expression")).field("body",PA("Statement"))}]);const Ih={type:"break-parent"},Lh=Xi([{type:"line",hard:!0},Ih]),Rh=Xi([{type:"line",hard:!0,literal:!0},Ih]);var Oh={concat:Xi,join:function(SA,TA){var PA=[];for(var _A=0;_A","<=",">=","in","instanceof"],[">>","<<",">>>"],["+","-"],["*","/","%","**"]].forEach(function($T,SA){$T.forEach(function(TA){Jh[TA]=SA})});var Zh={comparePos:function(SA,TA){return SA.line-TA.line||SA.column-TA.column},getPrecedence:function(SA){return Jh[SA]},fixFaultyLocations:function(SA,TA){if(SA.decorators)SA.decorators.forEach(function(NA){Ji(SA,NA)});else if(SA.declaration&&Zi(SA)){var PA=SA.declaration.decorators;PA&&PA.forEach(function(NA){Ji(SA,NA)})}else if(Mh.MethodDefinition&&Mh.MethodDefinition.check(SA)||Mh.Property.check(SA)&&(SA.method||SA.shorthand))Mh.FunctionExpression.check(SA.value)&&(SA.value.id=null);else if("ObjectTypeProperty"===SA.type){var _A=Uh(TA,_o(SA),!0);!1!==_A&&","===TA.charAt(_A)&&!1!==(_A=Uh(TA,_A-1,!0))&&Lo(SA,_A)}},isExportDeclaration:Zi,getParentExportDeclaration:function(SA){var TA=SA.getParentNode();return"declaration"===SA.getName()&&Zi(TA)?TA:null},getLast:function(SA){return 0/g,">")}},Kh=Yh,Qh=Nh,$h=Qh.namedTypes,Sy=Qh.builtInTypes.array,Ty=Qh.builtInTypes.object,Py=Oh,_y=Py.concat,Ny=Py.hardline,Iy=Py.breakParent,Ly=Py.indent,Ry=Py.lineSuffix,Oy=Zh,Yy=Symbol("child-nodes"),My=Oy.locStart,Vy=Oy.locEnd,Uy={attach:function(SA,TA,PA){if(Sy.check(SA)){var _A=[];SA.forEach(function(NA){Oo(TA,NA,PA);const IA=NA.precedingNode,LA=NA.globalPrecedingNode,RA=NA.enclosingNode,OA=NA.followingNode,YA=1===NA.loc.start.line;if(Oy.hasNewline(PA,My(NA),{backwards:!0})||YA)Zo(RA,OA,NA)||Jo(RA,OA,NA)||(OA?Vo(OA,NA):IA?Xo(IA,NA):RA&&Uo(RA,NA));else if(Oy.hasNewline(PA,Vy(NA))){const VA=IA||LA;if(VA)Xo(VA,NA);else throw new Error("Preceding node not found")}else if(IA&&OA){const VA=_A.length;if(0{const RA=LA.getValue();RA.leading||RA.trailing||(Oy.hasNewline(_A,My(RA),{backwards:!0})&&NA.push(Ny),NA.push(Ko(LA)))},"comments"),PA?_y(NA):Ly(TA.tabWidth,_y(NA))):""}},Xy="prettier",Wy="0.15.0",Jy="Prettier is an opinionated JavaScript formatter",Zy={prettier:"./bin/prettier.js"},Ky={type:"git",url:"git+https://github.com/jlongster/prettier.git"},Qy="James Long",$y="MIT",Sb={url:"https://github.com/jlongster/prettier/issues"},Tb="./index.js",Pb={"ast-types":"0.9.4","babel-code-frame":"6.22.0",babylon:"6.15.0",esutils:"2.0.2","flow-parser":"0.38.0","get-stdin":"5.0.1",glob:"7.1.1","jest-validate":"18.2.0",minimist:"1.2.0"},_b={jest:"18.0.0",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"},Nb={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"},Lb={setupFiles:["/tests_config/run_spec.js"],testRegex:"jsfmt\\.spec\\.js$",testPathIgnorePatterns:["tests/new_react","tests/more_react"]},Rb=Object.freeze({name:Xy,version:Wy,description:Jy,bin:Zy,repository:Ky,author:Qy,license:$y,bugs:Sb,main:Tb,dependencies:Pb,devDependencies:_b,scripts:Nb,jest:Lb,default:{name:Xy,version:Wy,description:Jy,bin:Zy,repository:Ky,author:Qy,license:$y,bugs:Sb,main:Tb,dependencies:Pb,devDependencies:_b,scripts:Nb,jest:Lb}}),Ob=Yh,Yb=Nh,Mb=Zh,Vb=Yb.namedTypes,Ub=Yb.builtInTypes.array,Xb=Yb.builtInTypes.number,Wb=Sl.prototype;Sl.from=function($T){if($T instanceof Sl)return $T.copy();if($T instanceof Yb.NodePath){var SA=Object.create(Sl.prototype),TA=[$T.value];for(var PA;PA=$T.parentPath;$T=PA)TA.push($T.name,PA.value);return SA.stack=TA.reverse(),SA}return new Sl($T)},Wb.copy=function(){var $T=Object.create(Sl.prototype);return $T.stack=this.stack.slice(0),$T},Wb.getName=function(){var SA=this.stack,TA=SA.length;return 1LA)return!0;if(NA===LA&&"right"===TA)return Ob.strictEqual(SA.right,PA),!0;default:return!1;}case"SequenceExpression":switch(SA.type){case"ReturnStatement":return!1;case"ForStatement":return!1;case"ExpressionStatement":return"expression"!==TA;default:return!0;}case"YieldExpression":case"AwaitExpression":switch(SA.type){case"TaggedTemplateExpression":case"BinaryExpression":case"LogicalExpression":case"UnaryExpression":case"SpreadElement":case"SpreadProperty":case"NewExpression":case"MemberExpression":return!0;case"CallExpression":return SA.callee===PA;case"ConditionalExpression":return SA.test===PA;default:return!1;}case"ArrayTypeAnnotation":return"NullableTypeAnnotation"===SA.type;case"IntersectionTypeAnnotation":case"UnionTypeAnnotation":return"NullableTypeAnnotation"===SA.type||"IntersectionTypeAnnotation"===SA.type||"UnionTypeAnnotation"===SA.type;case"NullableTypeAnnotation":return"ArrayTypeAnnotation"===SA.type;case"FunctionTypeAnnotation":return"UnionTypeAnnotation"===SA.type||"IntersectionTypeAnnotation"===SA.type;case"NumericLiteral":case"Literal":return"MemberExpression"===SA.type&&Xb.check(PA.value)&&"object"===TA&&SA.object===PA;case"AssignmentExpression":if("ArrowFunctionExpression"===SA.type&&SA.body===PA&&"ObjectPattern"===PA.left.type)return!0;case"ConditionalExpression":switch(SA.type){case"TaggedTemplateExpression":case"UnaryExpression":case"SpreadElement":case"SpreadProperty":case"BinaryExpression":case"LogicalExpression":case"LogicalExpression":case"NewExpression":case"ExportDefaultDeclaration":return!0;case"CallExpression":return"callee"===TA&&SA.callee===PA;case"ConditionalExpression":return"test"===TA&&SA.test===PA;case"MemberExpression":return"object"===TA&&SA.object===PA;default:return Vb.ObjectPattern.check(PA.left)&&this.firstInStatement();}case"FunctionExpression":case"ArrowFunctionExpression":if("CallExpression"===SA.type&&"callee"===TA)return!0;switch(SA.type){case"ConditionalExpression":if(SA.test===PA)return!0;case"ExportDefaultDeclaration":return"ArrowFunctionExpression"!==PA.type;case"ExpressionStatement":case"MemberExpression":case"TaggedTemplateExpression":case"UnaryExpression":return!0;case"NewExpression":return"callee"===TA;case"LogicalExpression":return"ArrowFunctionExpression"===PA.type;default:return Pl(SA);}case"ClassExpression":switch(SA.type){case"TaggedTemplateExpression":case"BinaryExpression":case"ExportDefaultDeclaration":case"ExpressionStatement":return!0;case"CallExpression":if(SA.callee===PA)return!0;case"MemberExpression":return"object"===TA&&SA.object===PA;case"ConditionalExpression":if(SA.test===PA)return!0;}return!1;case"ObjectExpression":if("ArrowFunctionExpression"===SA.type&&"body"===TA)return!0;if("TaggedTemplateExpression"===SA.type)return!0;if("MemberExpression"===SA.type)return"object"===TA&&SA.object===PA;default:if("NewExpression"===SA.type&&"callee"===TA&&SA.callee===PA)return _l(PA);}return!0!==$T&&!this.canBeFirstInStatement()&&this.firstInStatement()},Wb.canBeFirstInStatement=function(){var $T=this.getNode();return!Vb.FunctionExpression.check($T)&&!Vb.ObjectExpression.check($T)&&!Vb.ClassExpression.check($T)&&!(Vb.AssignmentExpression.check($T)&&Vb.ObjectPattern.check($T.left))},Wb.firstInStatement=function(){var $T=this.stack,SA,TA,PA,_A;for(var NA=$T.length-1;0<=NA;NA-=2)if(Vb.Node.check($T[NA])&&(PA=SA,_A=TA,SA=$T[NA-1],TA=$T[NA]),TA&&_A){if(Vb.BlockStatement.check(TA)&&"body"===SA&&0===PA)return Ob.strictEqual(TA.body[0],_A),!0;if(Vb.ExpressionStatement.check(TA)&&"expression"===PA)return Ob.strictEqual(TA.expression,_A),!0;if(Vb.SequenceExpression.check(TA)&&"expressions"===SA&&0===PA){Ob.strictEqual(TA.expressions[0],_A);continue}if(Vb.CallExpression.check(TA)&&"callee"===PA){Ob.strictEqual(TA.callee,_A);continue}if(Vb.MemberExpression.check(TA)&&"object"===PA){Ob.strictEqual(TA.object,_A);continue}if(Vb.ConditionalExpression.check(TA)&&"test"===PA){Ob.strictEqual(TA.test,_A);continue}if(Pl(TA)&&"left"===PA){Ob.strictEqual(TA.left,_A);continue}if(Vb.UnaryExpression.check(TA)&&!TA.prefix&&"argument"===PA){Ob.strictEqual(TA.argument,_A);continue}return!1}return!0};var Jb=Yh,Zb=Uy,Kb=Sl,Qb=Zh,$b=Xc.keyword.isIdentifierNameES6,Sg=Oh,Tg=Sg.concat,Pg=Sg.join,_g=Sg.line,Ng=Sg.hardline,Lg=Sg.softline,Rg=Sg.literalline,Og=Sg.group,Yg=Sg.indent,Mg=Sg.conditionalGroup,Vg=Sg.ifBreak,Ug={isEmpty:function(SA){return"string"==typeof SA&&0===SA.length},getFirstString:function(SA){return Mi(SA,TA=>{if("string"==typeof TA&&0!==TA.trim().length)return TA},null)},willBreak:function(SA){return Mi(SA,TA=>{return"group"===TA.type&&TA.break||"line"===TA.type&&TA.hard||void 0},!1)},isLineNext:function(SA){return Mi(SA,TA=>{return"string"!=typeof TA&&(!("line"!==TA.type)||void 0)},!1)},traverseDoc:Yi,propagateBreaks:function(SA){const TA=[];Yi(SA,PA=>{"break-parent"===PA.type&&Vi(TA),"group"===PA.type&&TA.push(PA)},PA=>{if("group"===PA.type){const _A=TA.pop();_A.break&&Vi(TA)}})}},Xg=Ug.willBreak,Wg=Ug.isLineNext,Jg=Ug.getFirstString,Zg=Ug.isEmpty,Kg=Nh,Qg=Kg.namedTypes,$g=Kg.builtInTypes.string;const Sx=1,Tx=2,Px=/(\\|\"|\')/g,_x=$T=>$T.replace(Px,"\\$1"),Nx=Object.prototype.toString,Ix=Date.prototype.toISOString,Lx=Error.prototype.toString,Rx=RegExp.prototype.toString,Ox=Symbol.prototype.toString,Yx=/^Symbol\((.*)\)(.*)$/,Mx=/\n/ig,Vx=Object.getOwnPropertySymbols||(()=>[]),Ux={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 Xx=function(SA,TA){TA?(Qd(TA),TA=$d(TA)):TA=Ux;const PA={};Object.keys(TA.theme).forEach(MA=>{PA[MA]=TA.highlight?Lu[TA.theme[MA]]:{close:"",open:""}});let _A,NA;const IA="",LA=0,RA=TA.min?" ":"\n",OA=TA.min?"":"\n";if(TA&&TA.plugins.length){_A=Sc(TA.indent),NA=[];const MA=Zd(SA,_A,IA,RA,OA,NA,TA.maxDepth,LA,TA.plugins,TA.min,TA.callToJSON,TA.printFunctionName,TA.escapeRegex,PA);if(MA)return MA}const YA=Od(SA,TA.printFunctionName,TA.escapeRegex);return YA?YA:(_A||(_A=Sc(TA.indent)),NA||(NA=[]),Jd(SA,_A,IA,RA,OA,NA,TA.maxDepth,LA,TA.plugins,TA.min,TA.callToJSON,TA.printFunctionName,TA.escapeRegex,PA))},Wx=[],Jx=[],Zx=function($T,SA){if($T===SA)return 0;var TA=$T.length,PA=SA.length;if(0===TA)return PA;if(0===PA)return TA;for(var RA=0,OA=0,_A,NA,IA,LA;RANA?LA>NA?NA+1:LA:LA>IA?IA+1:LA;return NA};const Kx=Pm,Qx=Kx.bold("\u25CF"),$x=`${Qx} Deprecation Warning`,SS=`${Qx} Validation Error`,TS=`${Qx} Validation Warning`,PS=$T=>"function"==typeof $T?$T.toString():Xx($T,{min:!0});class _S extends Error{constructor($T,SA,TA){super(),TA=TA?"\n\n"+TA:"\n",this.name="",this.message=Kx.red(Kx.bold($T)+":\n\n"+SA+TA),Error.captureStackTrace(this,()=>{})}}var NS={DEPRECATION:$x,ERROR:SS,ValidationError:_S,WARNING:TS,createDidYouMeanMessage:($T,SA)=>{const TA=SA.find(PA=>{const _A=Zx(PA,$T);return 3>_A});return TA?`Did you mean ${Kx.bold(PS(TA))}?`:""},format:PS,logValidationWarning:($T,SA,TA)=>{TA=TA?"\n\n"+TA:"\n",console.warn(Kx.yellow(Kx.bold($T)+":\n\n"+SA+TA))}};const IS=Pm,LS=Xx,RS=IS.green,OS=IS.red,YS=["zero","one","two","three","four","five","six","seven","eight","nine","ten","eleven","twelve","thirteen"],MS=$T=>{if("undefined"==typeof $T)return"undefined";if(null===$T)return"null";if(Array.isArray($T))return"array";if("boolean"==typeof $T)return"boolean";if("function"==typeof $T)return"function";if("number"==typeof $T)return"number";if("string"==typeof $T)return"string";if("object"==typeof $T)return $T.constructor===RegExp?"regexp":$T.constructor===Map?"map":$T.constructor===Set?"set":"object";if("symbol"==typeof $T)return"symbol";throw new Error(`value of unknown type: ${$T}`)},VS=function($T){let SA=1OS(VS($T)),XS=$T=>RS(VS($T)),WS=($T,SA,TA)=>{const PA=MS(SA);return $T+":"+("null"!==PA&&"undefined"!==PA?"\n "+PA+": ":" ")+TA(SA)},JS=($T,SA)=>{if(SA||(SA="This matcher"),"number"!=typeof $T)throw new Error(KS("[.not]"+SA)+"\n\n"+`Actual value must be a number.\n`+WS("Received",$T,US))},ZS=($T,SA)=>{if(SA||(SA="This matcher"),"number"!=typeof $T)throw new Error(KS("[.not]"+SA)+"\n\n"+`Expected value must be a number.\n`+WS("Got",$T,XS))},KS=function($T){let SA=1{if(SA||(SA="This"),"undefined"!=typeof $T)throw new Error(KS("[.not]"+SA,void 0,"")+"\n\nMatcher does not accept any arguments.\n"+WS("Got",$T,XS))},ensureNumbers:($T,SA,TA)=>{JS($T,TA),ZS(SA,TA)},getType:MS,matcherHint:KS,pluralize:($T,SA)=>(YS[SA]||SA)+" "+$T+(1===SA?"":"s"),printExpected:XS,printReceived:US,printWithType:WS,stringify:VS}.getType;var NE={ValidationError:TE,errorMessage:($T,SA,TA,PA)=>{const _A=` Option ${QS.bold(`"${$T}"`)} must be of type: + ${QS.bold.green(_E(TA))} but instead received: - ${VS.bold.red(ZS(XT))} + ${QS.bold.red(_E(SA))} Example: { - ${VS.bold(`"${UT}"`)}: ${VS.bold(XS(WT))} - }`,KT=JT.comment,QT=JT.title&&JT.title.error||JS;throw new WS(QT,ZT,KT)}},QS=Kx;const $S=QS.logValidationWarning,SE=QS.DEPRECATION,TE=(UT,XT)=>{const WT=XT.comment,JT=XT.title&&XT.title.deprecation||SE;$S(JT,UT,WT)},PE=Zu;var _E=Kx;const NE=_E.format,IE=_E.logValidationWarning,LE=_E.createDidYouMeanMessage,RE=_E.WARNING,OE=Object.prototype.toString,YE={deprecationWarning:(UT,XT,WT,JT)=>{XT in WT&&TE(WT[XT](UT),JT)}}.deprecationWarning,ME={unknownOptionWarning:(UT,XT,WT,JT)=>{const ZT=LE(WT,Object.keys(XT)),KT=` Unknown option ${PE.bold(`"${WT}"`)} with value ${PE.bold(NE(UT[WT]))} was found.`+(ZT&&` ${ZT}`)+`\n This is probably a typing mistake. Fixing it will remove this message.`,QT=JT.comment,$T=JT.title&&JT.title.warning||RE;IE($T,KT,QT)}}.unknownOptionWarning,VE=KS.errorMessage;var UE=Kx;const XE=UE.ERROR,WE=UE.DEPRECATION,JE=UE.WARNING,ZE={comment:"",condition:(UT,XT)=>{return null===UT||UT===void 0||OE.call(UT)===OE.call(XT)},deprecate:YE,deprecatedConfig:{},error:VE,exampleConfig:{comment:" A comment",condition:()=>!0,deprecate:()=>{},deprecatedConfig:{key:()=>{}},error:()=>{},exampleConfig:{key:"value",test:"case"},title:{deprecation:"Deprecation Warning",error:"Validation Error",warning:"Validation Warning"},unknown:()=>{}},title:{deprecation:WE,error:XE,warning:JE},unknown:ME},KE=(UT,XT)=>{for(const WT in UT)hasOwnProperty.call(XT.exampleConfig,WT)?"function"!=typeof XT.condition||"function"!=typeof XT.error||XT.condition(UT[WT],XT.exampleConfig[WT])||XT.error(WT,UT[WT],XT.exampleConfig[WT],XT):XT.deprecatedConfig&&WT in XT.deprecatedConfig&&"function"==typeof XT.deprecate?XT.deprecate(UT,WT,XT.deprecatedConfig,XT):XT.unknown&&XT.unknown(UT,XT.exampleConfig,WT,XT)};var QE={ValidationError:KS.ValidationError,createDidYouMeanMessage:Kx.createDidYouMeanMessage,logValidationWarning:Kx.logValidationWarning,validate:(UT,XT)=>{KE(XT,ZE);const WT=Object.assign({},ZE,XT,{title:Object.assign({},ZE.title,XT.title)});return KE(UT,WT),!0}},$E=QE.validate,ST={useFlowParser:UT=>` The ${"\"useFlowParser\""} option is deprecated. Use ${"\"parser\""} instead. + ${QS.bold(`"${$T}"`)}: ${QS.bold(SE(TA))} + }`,NA=PA.comment,IA=PA.title&&PA.title.error||PE;throw new TE(IA,_A,NA)}},IE=NS;const LE=IE.logValidationWarning,RE=IE.DEPRECATION,OE=($T,SA)=>{const TA=SA.comment,PA=SA.title&&SA.title.deprecation||RE;LE(PA,$T,TA)},YE=Pm;var ME=NS;const VE=ME.format,UE=ME.logValidationWarning,XE=ME.createDidYouMeanMessage,WE=ME.WARNING,JE=Object.prototype.toString,ZE={deprecationWarning:($T,SA,TA,PA)=>{SA in TA&&OE(TA[SA]($T),PA)}}.deprecationWarning,KE={unknownOptionWarning:($T,SA,TA,PA)=>{const _A=XE(TA,Object.keys(SA)),NA=` Unknown option ${YE.bold(`"${TA}"`)} with value ${YE.bold(VE($T[TA]))} was found.`+(_A&&` ${_A}`)+`\n This is probably a typing mistake. Fixing it will remove this message.`,IA=PA.comment,LA=PA.title&&PA.title.warning||WE;UE(LA,NA,IA)}}.unknownOptionWarning,QE=NE.errorMessage;var $E=NS;const ST=$E.ERROR,TT=$E.DEPRECATION,PT=$E.WARNING,_T={comment:"",condition:($T,SA)=>{return null===$T||$T===void 0||JE.call($T)===JE.call(SA)},deprecate:ZE,deprecatedConfig:{},error:QE,exampleConfig:{comment:" A comment",condition:()=>!0,deprecate:()=>{},deprecatedConfig:{key:()=>{}},error:()=>{},exampleConfig:{key:"value",test:"case"},title:{deprecation:"Deprecation Warning",error:"Validation Error",warning:"Validation Warning"},unknown:()=>{}},title:{deprecation:TT,error:ST,warning:PT},unknown:KE},NT=($T,SA)=>{for(const TA in $T)hasOwnProperty.call(SA.exampleConfig,TA)?"function"!=typeof SA.condition||"function"!=typeof SA.error||SA.condition($T[TA],SA.exampleConfig[TA])||SA.error(TA,$T[TA],SA.exampleConfig[TA],SA):SA.deprecatedConfig&&TA in SA.deprecatedConfig&&"function"==typeof SA.deprecate?SA.deprecate($T,TA,SA.deprecatedConfig,SA):SA.unknown&&SA.unknown($T,SA.exampleConfig,TA,SA)};var IT={ValidationError:NE.ValidationError,createDidYouMeanMessage:NS.createDidYouMeanMessage,logValidationWarning:NS.logValidationWarning,validate:($T,SA)=>{NT(SA,_T);const TA=Object.assign({},_T,SA,{title:Object.assign({},_T.title,SA.title)});return NT($T,TA),!0}},LT=IT.validate,RT={useFlowParser:$T=>` The ${"\"useFlowParser\""} option is deprecated. Use ${"\"parser\""} instead. Prettier now treats your configuration as: { - ${"\"parser\""}: ${UT.useFlowParser?"\"flow\"":"\"babylon\""} - }`},TT={tabWidth:2,printWidth:80,singleQuote:!1,trailingComma:!1,bracketSpacing:!0,parser:"babylon"},PT=Object.assign({},TT,{filename:"testFilename",printWidth:80,originalText:"text"}),_T=Se(function(UT,XT){(function(WT){"use strict";function JT(KCe,QCe){throw[0,KCe,QCe]}function ZT(KCe,QCe){if(typeof QCe===KY)return KCe.fun=QCe,0;if(QCe.fun)return KCe.fun=QCe.fun,0;for(var $Ce=QCe.length;$Ce--;)KCe[$Ce]=QCe[$Ce];return 0}function KT(KCe,QCe,$Ce){if("number"==typeof KCe)switch(KCe){case 0:QCe.fun=$Ce;break;case 1:default:ZT(QCe,$Ce);}else switch(KCe[0]){case 0:for(var ewe=1;ewe=$Ce&&$Ce==KCe.length)return ewe.apply(null,KCe);for(var twe=LW;0<$Ce;QCe+=YX,$Ce-=YX)twe+=ewe.apply(null,TA(KCe,QCe,Math.min($Ce,YX)));return twe}function _A(KCe){for(var QCe=Array(KCe.l),$Ce=KCe.c,ewe=$Ce.length,twe=0;twe=$Ce.l||2==$Ce.t&&twe>=$Ce.c.length))$Ce.c=4==KCe.t?PA(KCe.c,QCe,twe):0==QCe&&KCe.c.length==twe?KCe.c:KCe.c.substr(QCe,twe),$Ce.t=$Ce.c.length==$Ce.l?0:2;else if(2==$Ce.t&&ewe==$Ce.c.length)$Ce.c+=4==KCe.t?PA(KCe.c,QCe,twe):0==QCe&&KCe.c.length==twe?KCe.c:KCe.c.substr(QCe,twe),$Ce.t=$Ce.c.length==$Ce.l?0:2;else{4!=$Ce.t&&_A($Ce);var awe=KCe.c,nwe=$Ce.c;if(4==KCe.t)for(var rwe=0;rwetwe?LA(KCe.apply(null,TA(QCe,0,$Ce)),TA(QCe,$Ce,ewe-$Ce)):function(awe){return LA(KCe,IA(QCe,awe))}}function RA(KCe,QCe){if(QCe.repeat)return QCe.repeat(KCe);var $Ce=LW,ewe=0;if(0==KCe)return $Ce;for(;;){if(1&KCe&&($Ce+=QCe),KCe>>=1,0==KCe)return $Ce;QCe+=QCe,ewe++,9==ewe&&QCe.slice(0,1)}}function OA(KCe){2==KCe.t?KCe.c+=RA(KCe.l-KCe.c.length,"\0"):KCe.c=PA(KCe.c,0,KCe.c.length),KCe.t=0}function YA(KCe){if(24>KCe.length){for(var QCe=0;QCeQq)return!1;return!0}return!/[^\x00-\x7f]/.test(KCe)}function MA(KCe){for(var QCe=LW,$Ce=LW,rwe=0,swe=KCe.length,ewe,twe,awe,nwe;rweIF?($Ce.substr(0,1),QCe+=$Ce,$Ce=LW,QCe+=KCe.slice(rwe,iwe)):$Ce+=KCe.slice(rwe,iwe),iwe==swe)break;rwe=iwe}nwe=1,++rwenwe)&&(nwe=2)):(nwe=3,++rweNV)&&(nwe=3)))))),4>nwe?(rwe-=nwe,$Ce+="\uFFFD"):nwe>Oq?$Ce+=String.fromCharCode(55232+(nwe>>10),$J+(nwe&MM)):$Ce+=String.fromCharCode(nwe),$Ce.length>YX&&($Ce.substr(0,1),QCe+=$Ce,$Ce=LW)}return QCe+$Ce}function VA(KCe){switch(KCe.t){case 9:return KCe.c;default:OA(KCe);case 0:if(YA(KCe.c))return KCe.t=9,KCe.c;KCe.t=8;case 8:return MA(KCe.c);}}function UA(KCe,QCe,$Ce){this.t=KCe,this.c=QCe,this.l=$Ce}function XA(KCe){return new UA(0,KCe,KCe.length)}function WA(KCe,QCe){JT(KCe,XA(QCe))}function JA(KCe){WA(Kz.Invalid_argument,KCe)}function ZA(){JA(UU)}function KA(KCe,QCe){return QCe>>>0>=KCe.length-1&&ZA(),KCe}function QA(KCe){return isFinite(KCe)?2.2250738585072014e-308<=Math.abs(KCe)?0:0==KCe?2:1:isNaN(KCe)?4:3}function $A(KCe,QCe){var $Ce=KCe[3]<<16,ewe=QCe[3]<<16;return $Ce>ewe?1:$CeQCe[2]?1:KCe[2]QCe[1]?1:KCe[1]QCe.c?1:0}function PP(KCe,QCe,$Ce){for(var ewe=[];;){if(!($Ce&&KCe===QCe))if(KCe instanceof UA){if(!(QCe instanceof UA))return 1;else if(KCe!==QCe){var twe=TP(KCe,QCe);if(0!=twe)return twe}}else if(KCe instanceof Array&&KCe[0]===(0|KCe[0])){var awe=KCe[0];if(awe===OY&&(awe=0),awe===OX){KCe=KCe[1];continue}else if(QCe instanceof Array&&QCe[0]===(0|QCe[0])){var nwe=QCe[0];if(nwe===OY&&(nwe=0),nwe===OX){QCe=QCe[1];continue}else{if(awe!=nwe)return aweQCe)return 1;if(KCe!=QCe){if(!$Ce)return NaN;if(KCe==KCe)return 1;if(QCe==QCe)return-1}}if(0==ewe.length)return 0;var rwe=ewe.pop();QCe=ewe.pop(),KCe=ewe.pop(),rwe+1KCe&&JA("String.create"),new UA(KCe?2:9,LW,KCe)}function IP(KCe,QCe){return+(0==PP(KCe,QCe,!1))}function LP(KCe,QCe,$Ce,ewe){if(0<$Ce)if(0==QCe&&($Ce>=KCe.l||2==KCe.t&&$Ce>=KCe.c.length))0==ewe?(KCe.c=LW,KCe.t=2):(KCe.c=RA($Ce,String.fromCharCode(ewe)),KCe.t=$Ce==KCe.l?0:2);else for(4!=KCe.t&&_A(KCe),$Ce+=QCe;QCe<$Ce;QCe++)KCe.c[QCe]=ewe;return 0}function RP(KCe){WA(Kz.Failure,KCe)}function OP(KCe){return 0!=(6&KCe.t)&&OA(KCe),KCe.c}function YP(KCe){var QCe;if(KCe=OP(KCe),QCe=+KCe,0=twe;)$Ce.width=10*$Ce.width+twe,ewe++;ewe--;break;case".":for($Ce.prec=0,ewe++;twe=KCe.charCodeAt(ewe)-48,0<=twe&&9>=twe;)$Ce.prec=10*$Ce.prec+twe,ewe++;ewe--;case"d":case"i":$Ce.signedconv=!0;case"u":$Ce.base=10;break;case"x":$Ce.base=16;break;case"X":$Ce.base=16,$Ce.uppercase=!0;break;case"o":$Ce.base=8;break;case"e":case"f":case"g":$Ce.signedconv=!0,$Ce.conv=twe;break;case"E":case"F":case"G":$Ce.signedconv=!0,$Ce.uppercase=!0,$Ce.conv=twe.toLowerCase();}}return $Ce}function VP(KCe,QCe){KCe.uppercase&&(QCe=QCe.toUpperCase());var $Ce=QCe.length;KCe.signedconv&&(0>KCe.sign||KCe.signstyle!=YB)&&$Ce++,KCe.alternate&&(8==KCe.base&&($Ce+=1),16==KCe.base&&($Ce+=2));var ewe=LW;if(KCe.justify==Rq&&KCe.filler==NJ)for(var twe=$Ce;tweKCe.sign?ewe+=YB:KCe.signstyle!=YB&&(ewe+=KCe.signstyle)),KCe.alternate&&8==KCe.base&&(ewe+=$F),KCe.alternate&&16==KCe.base&&(ewe+=RU),KCe.justify==Rq&&KCe.filler==$F)for(var twe=$Ce;tweewe.prec?6:ewe.prec,$Ce;if(0>QCe&&(ewe.sign=-1,QCe=-QCe),isNaN(QCe))$Ce=VJ,ewe.filler=NJ;else if(!isFinite(QCe))$Ce="inf",ewe.filler=NJ;else switch(ewe.conv){case"e":var $Ce=QCe.toExponential(twe),awe=$Ce.length;$Ce.charAt(awe-3)==IB&&($Ce=$Ce.slice(0,awe-1)+$F+$Ce.slice(awe-1));break;case"f":$Ce=QCe.toFixed(twe);break;case"g":twe=twe?twe:1,$Ce=QCe.toExponential(twe-1);var nwe=$Ce.indexOf(IB),rwe=+$Ce.slice(nwe+1);if(-4>rwe||1e21<=QCe||QCe.toFixed(0).length>twe){for(var awe=nwe-1;$Ce.charAt(awe)==$F;)awe--;$Ce.charAt(awe)==Lq&&awe--,$Ce=$Ce.slice(0,awe+1)+$Ce.slice(nwe),awe=$Ce.length,$Ce.charAt(awe-3)==IB&&($Ce=$Ce.slice(0,awe-1)+$F+$Ce.slice(awe-1));break}else{var swe=twe;if(0>rwe)swe-=rwe+1,$Ce=QCe.toFixed(swe);else for(;$Ce=QCe.toFixed(swe),$Ce.length>twe+1;)swe--;if(swe){for(var awe=$Ce.length-1;$Ce.charAt(awe)==$F;)awe--;$Ce.charAt(awe)==Lq&&awe--,$Ce=$Ce.slice(0,awe+1)}}}return VP(ewe,$Ce)}function XP(KCe,QCe){if(OP(KCe)==VV)return XA(LW+QCe);var $Ce=MP(KCe);0>QCe&&($Ce.signedconv?($Ce.sign=-1,QCe=-QCe):QCe>>>=0);var ewe=QCe.toString($Ce.base);if(0<=$Ce.prec){$Ce.filler=NJ;var twe=$Ce.prec-ewe.length;0=$Ce?($Ce=0,KCe/=Math.pow(2,-1026)):(KCe/=Math.pow(2,$Ce-1027),16>KCe&&(KCe*=2,$Ce-=1),0==$Ce&&(KCe/=2));var ewe=Math.pow(2,24),twe=0|KCe;KCe=(KCe-twe)*ewe;var awe=0|KCe;KCe=(KCe-awe)*ewe;var nwe=0|KCe;return twe=15&twe|QCe|$Ce<<4,[KU,nwe,awe,twe]}function ZP(KCe){return[KCe[3]>>8,KCe[3]&KU,KCe[2]>>16,KCe[2]>>8&KU,KCe[2]&KU,KCe[1]>>16,KCe[1]>>8&KU,KCe[1]&KU]}function KP(KCe,QCe,$Ce){function ewe(awe){if(QCe--,!(0>KCe||0>QCe))if(awe instanceof Array&&awe[0]===(0|awe[0]))switch(awe[0]){case 248:KCe--,twe=0|twe*SF+awe[2];break;case 250:QCe++,ewe(awe);break;case 255:KCe--,twe=0|twe*SF+awe[1]+(awe[2]<<24);break;default:KCe--,twe=0|19*twe+awe[0];for(var nwe=awe.length-1;0>24&ZY,KCe>>31&Oq]}function S_(KCe){var QCe=KCe.length,$Ce=Array(QCe);for(var ewe=0;ewe>24),twe=KCe[3]-QCe[3]+(ewe>>24);return[KU,$Ce&ZY,ewe&ZY,twe&Oq]}function P_(KCe,QCe){return KCe[3]>QCe[3]?1:KCe[3]QCe[2]?1:KCe[2]QCe[1]?1:KCe[1]>23,KCe[2]=(KCe[2]<<1|KCe[1]>>23)&ZY,KCe[1]=KCe[1]<<1&ZY}function N_(KCe){KCe[1]=(KCe[1]>>>1|KCe[2]<<23)&ZY,KCe[2]=(KCe[2]>>>1|KCe[3]<<23)&ZY,KCe[3]>>>=1}function I_(KCe,QCe){for(var $Ce=0,ewe=S_(KCe),twe=S_(QCe),awe=[KU,0,0,0];0KCe[3]<<16}function O_(KCe){var QCe=-KCe[1],$Ce=-KCe[2]+(QCe>>24),ewe=-KCe[3]+($Ce>>24);return[KU,QCe&ZY,$Ce&ZY,ewe&Oq]}function Y_(KCe,QCe){var $Ce=MP(KCe);$Ce.signedconv&&R_(QCe)&&($Ce.sign=-1,QCe=O_(QCe));var ewe=LW,twe=$P($Ce.base);do{var awe=I_(QCe,twe);QCe=awe[1],ewe="0123456789abcdef".charAt(L_(awe[2]))+ewe}while(!QP(QCe));if(0<=$Ce.prec){$Ce.filler=NJ;var nwe=$Ce.prec-ewe.length;0=KCe.c.length)return 0;case 0:return KCe.c.charCodeAt(QCe);case 4:return KCe.c[QCe];}}function V_(KCe){return KCe.l}function U_(KCe){var QCe=0,$Ce=V_(KCe),ewe=10,twe=0<$Ce&&45==M_(KCe,0)?(QCe++,-1):1;if(QCe+1<$Ce&&48==M_(KCe,QCe))switch(M_(KCe,QCe+1)){case 120:case 88:ewe=16,QCe+=2;break;case 111:case 79:ewe=8,QCe+=2;break;case 98:case 66:ewe=2,QCe+=2;}return[QCe,twe,ewe]}function X_(KCe){return 48<=KCe&&57>=KCe?KCe-48:65<=KCe&&90>=KCe?KCe-55:97<=KCe&&122>=KCe?KCe-87:-1}function W_(KCe){var QCe=U_(KCe),$Ce=QCe[0],ewe=QCe[1],twe=QCe[2],awe=V_(KCe),nwe=$Cerwe||rwe>=twe)&&RP($V);var swe=rwe;for($Ce++;$Cerwe||rwe>=twe)break;swe=twe*swe+rwe,4294967295IF?($Ce.substr(0,1),QCe+=$Ce,$Ce=LW,QCe+=KCe.slice(awe,rwe)):$Ce+=KCe.slice(awe,rwe),rwe==nwe)break;awe=rwe}ewe<_U?($Ce+=String.fromCharCode(UJ|ewe>>6),$Ce+=String.fromCharCode(QF|63&ewe)):55296>ewe||ewe>=WV?$Ce+=String.fromCharCode(QU|ewe>>12,QF|63&ewe>>6,QF|63&ewe):56319<=ewe||awe+1==nwe||(twe=KCe.charCodeAt(awe+1))<$J||twe>WV?$Ce+="\xEF\xBF\xBD":(awe++,ewe=(ewe<<10)+twe-56613888,$Ce+=String.fromCharCode(SU|ewe>>18,QF|63&ewe>>12,QF|63&ewe>>6,QF|63&ewe)),$Ce.length>YX&&($Ce.substr(0,1),QCe+=$Ce,$Ce=LW)}return QCe+$Ce}function K_(KCe){var QCe=9;return YA(KCe)||(QCe=8,KCe=Z_(KCe)),new UA(QCe,KCe,KCe.length)}function Q_(KCe){KCe=OP(KCe);var QCe=KCe.length/2,$Ce=Array(QCe);for(var ewe=0;ewe>16;return $Ce}function $_(KCe){return 4!=KCe.t&&_A(KCe),KCe.c}function SN(KCe,QCe,$Ce){var ewe=6,twe=7,awe=8,nwe=9;KCe.lex_default||(KCe.lex_base=Q_(KCe[1]),KCe.lex_backtrk=Q_(KCe[2]),KCe.lex_check=Q_(KCe[5]),KCe.lex_trans=Q_(KCe[4]),KCe.lex_default=Q_(KCe[3]));var swe=QCe,iwe=$_($Ce[2]),rwe;for(0<=swe?($Ce[twe]=$Ce[5]=$Ce[ewe],$Ce[awe]=-1):swe=-swe-1;;){var owe=KCe.lex_base[swe];if(0>owe)return-owe-1;var lwe=KCe.lex_backtrk[swe];if(0<=lwe&&($Ce[twe]=$Ce[ewe],$Ce[awe]=lwe),$Ce[ewe]>=$Ce[3]){if(0==$Ce[nwe])return-swe-1;rwe=YJ}else rwe=iwe[$Ce[ewe]],$Ce[ewe]++;if(swe=KCe.lex_check[owe+rwe]==swe?KCe.lex_trans[owe+rwe]:KCe.lex_default[swe],!(0>swe))rwe==YJ&&($Ce[nwe]=0);else if($Ce[ewe]=$Ce[twe],-1==$Ce[awe])RP(QX);else return $Ce[awe]}}function TN(KCe){var QCe=0;for(var $Ce=KCe.length-1;0<=$Ce;$Ce--){var ewe=KCe[$Ce];QCe=[0,ewe,QCe]}return QCe}function PN(KCe,QCe){var KCe=0|KCe+1,$Ce=Array(KCe);$Ce[0]=0;for(var ewe=1;ewe=twe){var nwe=NP(awe+ewe);NA(KCe.file.data,0,nwe,0,twe),NA($Ce,0,nwe,awe,ewe),KCe.file.data=nwe}return KCe.offset+=ewe,KCe.file.modified(),0}function WN(KCe){var QCe;QCe=1===KCe?UN:2===KCe?VN:XN;var $Ce=Kz.fds[KCe];$Ce.flags.rdonly&&NN(OM+KCe+" is readonly");var ewe={file:$Ce.file,offset:$Ce.offset,fd:KCe,opened:!0,buffer:LW,output:QCe};return _H[ewe.fd]=ewe,ewe}function JN(){var KCe=0;for(var QCe in _H)_H[QCe].opened&&(KCe=[0,_H[QCe],KCe]);return KCe}function ZN(KCe){throw KCe}function KN(){ZN(Kz.Division_by_zero)}function QN(KCe,QCe){return 0==QCe&&KN(),KCe%QCe}function $N(KCe,QCe,$Ce,ewe){for(;;){var twe=KCe.charCodeAt(QCe);if(QCe++,twe==KU)return;var awe=KCe.charCodeAt(QCe);QCe++,$Ce[twe+1]=awe==KU?ewe:$Ce[awe+1]}}function Sk(KCe,QCe,$Ce){for(;;){var ewe=KCe.charCodeAt(QCe);if(QCe++,ewe==KU)return;var twe=KCe.charCodeAt(QCe);QCe++,$Ce[ewe+1]=twe==KU?-1:$Ce[twe+1]}}function Tk(KCe,QCe,$Ce){var ewe=6,twe=7,awe=8,nwe=9,rwe=10;KCe.lex_default||(KCe.lex_base=Q_(KCe[1]),KCe.lex_backtrk=Q_(KCe[2]),KCe.lex_check=Q_(KCe[5]),KCe.lex_trans=Q_(KCe[4]),KCe.lex_default=Q_(KCe[3])),KCe.lex_default_code||(KCe.lex_base_code=Q_(KCe[6]),KCe.lex_backtrk_code=Q_(KCe[7]),KCe.lex_check_code=Q_(KCe[10]),KCe.lex_trans_code=Q_(KCe[9]),KCe.lex_default_code=Q_(KCe[8])),null==KCe.lex_code&&(KCe.lex_code=OP(KCe[11]));var iwe=QCe,owe=$_($Ce[2]),swe;for(0<=iwe?($Ce[twe]=$Ce[5]=$Ce[ewe],$Ce[awe]=-1):iwe=-iwe-1;;){var lwe=KCe.lex_base[iwe];if(0>lwe){var pwe=KCe.lex_base_code[iwe];return Sk(KCe.lex_code,pwe,$Ce[rwe]),-lwe-1}var dwe=KCe.lex_backtrk[iwe];if(0<=dwe){var pwe=KCe.lex_backtrk_code[iwe];Sk(KCe.lex_code,pwe,$Ce[rwe]),$Ce[twe]=$Ce[ewe],$Ce[awe]=dwe}if($Ce[ewe]>=$Ce[3]){if(0==$Ce[nwe])return-iwe-1;swe=YJ}else swe=owe[$Ce[ewe]],$Ce[ewe]++;var cwe=iwe;if(iwe=KCe.lex_check[lwe+swe]==iwe?KCe.lex_trans[lwe+swe]:KCe.lex_default[iwe],!(0>iwe)){var uwe=KCe.lex_base_code[cwe],pwe;pwe=KCe.lex_check_code[uwe+swe]==cwe?KCe.lex_trans_code[uwe+swe]:KCe.lex_default_code[cwe],0>>0>=KCe.l&&Mk(),M_(KCe,QCe)}function Uk(KCe,QCe){return 1-Yk(KCe,QCe)}function Xk(KCe,QCe,$Ce){if($Ce&=KU,4!=KCe.t){if(QCe==KCe.c.length)return KCe.c+=String.fromCharCode($Ce),QCe+1==KCe.l&&(KCe.t=0),0;_A(KCe)}return KCe.c[QCe]=$Ce,0}function Wk(KCe,QCe,$Ce){return QCe>>>0>=KCe.l&&Mk(),Xk(KCe,QCe,$Ce)}function Jk(){ZN(Kz.Not_found)}function Zk(KCe){var QCe=WT,$Ce=KCe.toString();return QCe.process&&QCe.process.env&&void 0!=QCe.process.env[$Ce]?K_(QCe.process.env[$Ce]):void Jk()}function Kk(){var KCe=new Date^4294967295*Math.random();return[0,KCe]}function Qk(KCe){for(var QCe=1;KCe&&KCe.joo_tramp;)KCe=KCe.joo_tramp.apply(null,KCe.joo_args),QCe++;return KCe}function $k(KCe,QCe){return{joo_tramp:KCe,joo_args:QCe}}function SC(KCe){return KCe}function TC(KCe){return NH[KCe]}function PC(KCe){return KCe instanceof Array?KCe:WT.RangeError&&KCe instanceof WT.RangeError&&KCe.message&&KCe.message.match(/maximum call stack/i)?SC(Kz.Stack_overflow):WT.InternalError&&KCe instanceof WT.InternalError&&KCe.message&&KCe.message.match(/too much recursion/i)?SC(Kz.Stack_overflow):KCe instanceof WT.Error?[0,TC(TF),KCe]:[0,Kz.Failure,K_(KCe+"")]}function _C(KCe,QCe){return 1==KCe.length?KCe(QCe):LA(KCe,[QCe])}function NC(KCe,QCe,$Ce){return 2==KCe.length?KCe(QCe,$Ce):LA(KCe,[QCe,$Ce])}function IC(KCe,QCe,$Ce,ewe){return 3==KCe.length?KCe(QCe,$Ce,ewe):LA(KCe,[QCe,$Ce,ewe])}function LC(KCe,QCe,$Ce,ewe,twe){return 4==KCe.length?KCe(QCe,$Ce,ewe,twe):LA(KCe,[QCe,$Ce,ewe,twe])}function RC(KCe,QCe,$Ce,ewe,twe,awe){return 5==KCe.length?KCe(QCe,$Ce,ewe,twe,awe):LA(KCe,[QCe,$Ce,ewe,twe,awe])}function OC(KCe){if("number"==typeof KCe)return 0;switch(KCe[0]){case 0:return[0,OC(KCe[1])];case 1:return[1,OC(KCe[1])];case 2:return[2,OC(KCe[1])];case 3:return[3,OC(KCe[1])];case 4:return[4,OC(KCe[1])];case 5:return[5,OC(KCe[1])];case 6:return[6,OC(KCe[1])];case 7:return[7,OC(KCe[1])];case 8:var QCe=KCe[1];return[8,QCe,OC(KCe[2])];case 9:var $Ce=KCe[1];return[9,$Ce,$Ce,OC(KCe[3])];case 10:return[10,OC(KCe[1])];case 11:return[11,OC(KCe[1])];case 12:return[12,OC(KCe[1])];default:return[13,OC(KCe[1])];}}function YC(KCe,QCe){if("number"==typeof KCe)return QCe;switch(KCe[0]){case 0:return[0,YC(KCe[1],QCe)];case 1:return[1,YC(KCe[1],QCe)];case 2:return[2,YC(KCe[1],QCe)];case 3:return[3,YC(KCe[1],QCe)];case 4:return[4,YC(KCe[1],QCe)];case 5:return[5,YC(KCe[1],QCe)];case 6:return[6,YC(KCe[1],QCe)];case 7:return[7,YC(KCe[1],QCe)];case 8:var $Ce=KCe[1];return[8,$Ce,YC(KCe[2],QCe)];case 9:var ewe=KCe[2],twe=KCe[1];return[9,twe,ewe,YC(KCe[3],QCe)];case 10:return[10,YC(KCe[1],QCe)];case 11:return[11,YC(KCe[1],QCe)];case 12:return[12,YC(KCe[1],QCe)];default:return[13,YC(KCe[1],QCe)];}}function MC(KCe,QCe){if("number"==typeof KCe)return QCe;switch(KCe[0]){case 0:return[0,MC(KCe[1],QCe)];case 1:return[1,MC(KCe[1],QCe)];case 2:var $Ce=KCe[1];return[2,$Ce,MC(KCe[2],QCe)];case 3:var ewe=KCe[1];return[3,ewe,MC(KCe[2],QCe)];case 4:var twe=KCe[3],awe=KCe[2],nwe=KCe[1];return[4,nwe,awe,twe,MC(KCe[4],QCe)];case 5:var rwe=KCe[3],swe=KCe[2],iwe=KCe[1];return[5,iwe,swe,rwe,MC(KCe[4],QCe)];case 6:var owe=KCe[3],lwe=KCe[2],pwe=KCe[1];return[6,pwe,lwe,owe,MC(KCe[4],QCe)];case 7:var dwe=KCe[3],cwe=KCe[2],uwe=KCe[1];return[7,uwe,cwe,dwe,MC(KCe[4],QCe)];case 8:var mwe=KCe[3],fwe=KCe[2],hwe=KCe[1];return[8,hwe,fwe,mwe,MC(KCe[4],QCe)];case 9:return[9,MC(KCe[1],QCe)];case 10:return[10,MC(KCe[1],QCe)];case 11:var ywe=KCe[1];return[11,ywe,MC(KCe[2],QCe)];case 12:var bwe=KCe[1];return[12,bwe,MC(KCe[2],QCe)];case 13:var gwe=KCe[2],xwe=KCe[1];return[13,xwe,gwe,MC(KCe[3],QCe)];case 14:var Swe=KCe[2],Ewe=KCe[1];return[14,Ewe,Swe,MC(KCe[3],QCe)];case 15:return[15,MC(KCe[1],QCe)];case 16:return[16,MC(KCe[1],QCe)];case 17:var Twe=KCe[1];return[17,Twe,MC(KCe[2],QCe)];case 18:var Awe=KCe[1];return[18,Awe,MC(KCe[2],QCe)];case 19:return[19,MC(KCe[1],QCe)];case 20:var Pwe=KCe[2],_we=KCe[1];return[20,_we,Pwe,MC(KCe[3],QCe)];case 21:var Nwe=KCe[1];return[21,Nwe,MC(KCe[2],QCe)];case 22:return[22,MC(KCe[1],QCe)];default:var kwe=KCe[1];return[23,kwe,MC(KCe[2],QCe)];}}function VC(KCe){throw[0,LH,KCe]}function UC(KCe){throw[0,RH,KCe]}function XC(KCe,QCe){return WP(KCe,QCe)?KCe:QCe}function WC(KCe){return 0<=KCe?KCe:0|-KCe}function JC(KCe,QCe){var $Ce=V_(KCe),ewe=V_(QCe),twe=NP(0|$Ce+ewe);return NA(KCe,0,twe,0,$Ce),NA(QCe,0,twe,$Ce,ewe),twe}function ZC(KCe,QCe){if(KCe){var $Ce=KCe[1];return[0,$Ce,ZC(KCe[2],QCe)]}return QCe}function KC(KCe){if(KCe)for(var QCe=0,$Ce=KCe,ewe=KCe[2],twe=KCe[1];;){if($Ce){var QCe=0|QCe+1,$Ce=$Ce[2];continue}for(var awe=PN(QCe,twe),nwe=1,rwe=ewe;;){if(rwe){var swe=rwe[2];awe[nwe+1]=rwe[1];var nwe=0|nwe+1,rwe=swe;continue}return awe}}return[0]}function QC(KCe){for(var QCe=0,$Ce=KCe;;){if($Ce){var QCe=0|QCe+1,$Ce=$Ce[2];continue}return QCe}}function $C(KCe){return KCe?KCe[1]:VC(TG)}function fw(KCe,QCe){for(var $Ce=KCe,ewe=QCe;;){if($Ce){var twe=[0,$Ce[1],ewe],$Ce=$Ce[2],ewe=twe;continue}return ewe}}function Sw(KCe){return fw(KCe,0)}function Tw(KCe,QCe){if(QCe){var $Ce=QCe[2],ewe=_C(KCe,QCe[1]);return[0,ewe,Tw(KCe,$Ce)]}return 0}function Pw(KCe,QCe){for(var $Ce=QCe;;){if($Ce){var ewe=$Ce[2];_C(KCe,$Ce[1]);var $Ce=ewe;continue}return 0}}function _w(KCe,QCe,$Ce){for(var ewe=QCe,twe=$Ce;;){if(twe){var awe=twe[2],ewe=NC(KCe,ewe,twe[1]),twe=awe;continue}return ewe}}function Nw(KCe,QCe){for(var $Ce=KCe,ewe=QCe;;){if(0===$Ce)return ewe;if(ewe){var $Ce=0|$Ce-1,ewe=ewe[2];continue}throw[0,YH,SG]}}function Iw(KCe){return 0<=KCe&&!(KU$Ce))for(var ewe=0;;){if(_C(KCe,M_(QCe,ewe)),$Ce!=ewe){var ewe=0|ewe+1;continue}break}return 0}function Kw(KCe,QCe,$Ce){var ewe=SN(KCe,QCe,$Ce);if(0<=ewe){$Ce[11]=$Ce[12];var twe=$Ce[12];$Ce[12]=[0,twe[1],twe[2],twe[3],0|$Ce[4]+$Ce[6]]}return ewe}function Qw(KCe,QCe,$Ce){var ewe=Tk(KCe,QCe,$Ce);if(0<=ewe){$Ce[11]=$Ce[12];var twe=$Ce[12];$Ce[12]=[0,twe[1],twe[2],twe[3],0|$Ce[4]+$Ce[6]]}return ewe}function $w(KCe){return Yw(KCe[2],KCe[5],0|KCe[6]-KCe[5])}function Sv(KCe,QCe,$Ce){return Yw(KCe[2],QCe,0|$Ce-QCe)}function Tv(KCe,QCe){return Vk(KCe[2],QCe)}function Pv(KCe){var QCe=KCe[12];return KCe[12]=[0,QCe[1],0|QCe[2]+1,QCe[4],QCe[4]],0}function _v(KCe){function QCe(Nwe){return Nwe?Nwe[4]:0}function $Ce(Nwe,kwe,Cwe){var wwe=Nwe?Nwe[4]:0,vwe=Cwe?Cwe[4]:0,Iwe=vwe<=wwe?0|wwe+1:0|vwe+1;return[0,Nwe,kwe,Cwe,Iwe]}function ewe(Nwe,kwe,Cwe){var wwe=Nwe?Nwe[4]:0,vwe=Cwe?Cwe[4]:0;if((0|vwe+2)>1,ive=Nw(sve,Xwe),ove=Ywe(sve,Xwe),lve=ove,pve=Ywe(0|Uwe-sve,ive),dve=0;;){if(lve){if(pve){var cve=pve[2],uve=pve[1],mve=lve[2],fve=lve[1],hve=NC(Rwe,fve,uve);if(0===hve){var lve=mve,pve=cve,dve=[0,fve,dve];continue}if(0>1,ive=Nw(sve,Xwe),ove=Owe(sve,Xwe),lve=ove,pve=Owe(0|Uwe-sve,ive),dve=0;;){if(lve){if(pve){var cve=pve[2],uve=pve[1],mve=lve[2],fve=lve[1],hve=NC(Rwe,fve,uve);if(0===hve){var lve=mve,pve=cve,dve=[0,fve,dve];continue}if(0<=hve){var pve=cve,dve=[0,uve,dve];continue}var lve=mve,dve=[0,fve,dve];continue}return fw(lve,dve)}return fw(pve,dve)}},Fwe=QC(Nwe),Mwe=2<=Fwe?Owe(Fwe,Nwe):Nwe,Vwe=function(Uwe,Xwe){if(!(3>>0))switch(Uwe){case 0:return[0,0,Xwe];case 1:if(Xwe)return[0,[0,0,Xwe[1],0,1],Xwe[2]];break;case 2:if(Xwe){var Wwe=Xwe[2];if(Wwe)return[0,[0,[0,0,Xwe[1],0,1],Wwe[1],0,2],Wwe[2]]}break;default:if(Xwe){var qwe=Xwe[2];if(qwe){var Jwe=qwe[2];if(Jwe)return[0,[0,[0,0,Xwe[1],0,1],qwe[1],[0,0,Jwe[1],0,1],2],Jwe[2]]}}}var zwe=0|Uwe/2,Hwe=Vwe(zwe,Xwe),Gwe=Hwe[2],Zwe=Hwe[1];if(Gwe){var Kwe=Gwe[1],Qwe=Vwe(0|(0|Uwe-zwe)-1,Gwe[2]),$we=Qwe[2];return[0,$Ce(Zwe,Kwe,Qwe[1]),$we]}throw[0,YH,QG]};return Vwe(QC(Mwe),Mwe)[1]}var Bwe=Lwe[1];return twe(Bwe,twe(Dwe,twe(jwe,twe(vwe,awe(Cwe)))))}return twe(Dwe,twe(jwe,twe(vwe,awe(Cwe))))}return twe(jwe,twe(vwe,awe(Cwe)))}return twe(vwe,awe(Cwe))}return awe(Cwe)}return _we}]}function Nv(){throw vke}function Iv(KCe){var QCe=KCe[1];KCe[1]=Nv;try{var $Ce=_C(QCe,0);return KCe[1]=$Ce,_k(KCe,OX),$Ce}catch(ewe){throw ewe=PC(ewe),KCe[1]=function(){throw ewe},ewe}}function Lv(KCe){var QCe=1<=KCe?KCe:1,$Ce=wkeKCe?_I(1+KCe,Dve,Lve,$Ce):$k(_I,[0,Dve,Lve,$Ce]);case 1:return 50>KCe?_I(1+KCe,Dve,Lve,$Ce):$k(_I,[0,Dve,Lve,$Ce]);case 2:return 50>KCe?_I(1+KCe,Dve,Lve,$Ce):$k(_I,[0,Dve,Lve,$Ce]);case 3:if("number"!=typeof $Ce&&13===$Ce[0]){var Rve=NI(Lve,$Ce[1]);return[0,[23,3,Rve[1]],Rve[2]]}throw jke;default:return 50>KCe?_I(1+KCe,Dve,Lve,$Ce):$k(_I,[0,Dve,Lve,$Ce]);}else switch(Dve[0]){case 0:return 50>KCe?_I(1+KCe,Dve,Lve,$Ce):$k(_I,[0,Dve,Lve,$Ce]);case 1:return 50>KCe?_I(1+KCe,Dve,Lve,$Ce):$k(_I,[0,Dve,Lve,$Ce]);case 2:return 50>KCe?_I(1+KCe,Dve,Lve,$Ce):$k(_I,[0,Dve,Lve,$Ce]);case 3:return 50>KCe?_I(1+KCe,Dve,Lve,$Ce):$k(_I,[0,Dve,Lve,$Ce]);case 4:return 50>KCe?_I(1+KCe,Dve,Lve,$Ce):$k(_I,[0,Dve,Lve,$Ce]);case 5:return 50>KCe?_I(1+KCe,Dve,Lve,$Ce):$k(_I,[0,Dve,Lve,$Ce]);case 6:return 50>KCe?_I(1+KCe,Dve,Lve,$Ce):$k(_I,[0,Dve,Lve,$Ce]);case 7:return 50>KCe?_I(1+KCe,[7,Dve[1],Dve[2]],Lve,$Ce):$k(_I,[0,[7,Dve[1],Dve[2]],Lve,$Ce]);case 8:var Ove=Dve[1],Yve=II(Dve[2],Lve,$Ce),Fve=Yve[2];return[0,[23,[8,Ove,Yve[1]],Fve[1]],Fve[2]];case 9:return 50>KCe?_I(1+KCe,Dve,Lve,$Ce):$k(_I,[0,Dve,Lve,$Ce]);default:return 50>KCe?_I(1+KCe,Dve,Lve,$Ce):$k(_I,[0,Dve,Lve,$Ce]);}}throw jke}function _I(KCe,QCe,$Ce,ewe){var twe=NI($Ce,ewe);return[0,[23,QCe,twe[1]],twe[2]]}function NI(KCe,QCe){return Qk(PI(0,KCe,QCe))}function II(KCe,QCe,$Ce){if("number"==typeof KCe)return[0,0,NI(QCe,$Ce)];switch(KCe[0]){case 0:if("number"!=typeof $Ce&&0===$Ce[0]){var ewe=II(KCe[1],QCe,$Ce[1]);return[0,[0,ewe[1]],ewe[2]]}break;case 1:if("number"!=typeof $Ce&&1===$Ce[0]){var twe=II(KCe[1],QCe,$Ce[1]);return[0,[1,twe[1]],twe[2]]}break;case 2:if("number"!=typeof $Ce&&2===$Ce[0]){var awe=II(KCe[1],QCe,$Ce[1]);return[0,[2,awe[1]],awe[2]]}break;case 3:if("number"!=typeof $Ce&&3===$Ce[0]){var nwe=II(KCe[1],QCe,$Ce[1]);return[0,[3,nwe[1]],nwe[2]]}break;case 4:if("number"!=typeof $Ce&&4===$Ce[0]){var rwe=II(KCe[1],QCe,$Ce[1]);return[0,[4,rwe[1]],rwe[2]]}break;case 5:if("number"!=typeof $Ce&&5===$Ce[0]){var swe=II(KCe[1],QCe,$Ce[1]);return[0,[5,swe[1]],swe[2]]}break;case 6:if("number"!=typeof $Ce&&6===$Ce[0]){var iwe=II(KCe[1],QCe,$Ce[1]);return[0,[6,iwe[1]],iwe[2]]}break;case 7:if("number"!=typeof $Ce&&7===$Ce[0]){var owe=II(KCe[1],QCe,$Ce[1]);return[0,[7,owe[1]],owe[2]]}break;case 8:if("number"!=typeof $Ce&&8===$Ce[0]){var lwe=$Ce[1],pwe=$Ce[2],dwe=KCe[2];if(Pk([0,KCe[1]],[0,lwe]))throw jke;var cwe=II(dwe,QCe,pwe);return[0,[8,lwe,cwe[1]],cwe[2]]}break;case 9:if("number"!=typeof $Ce&&9===$Ce[0]){var uwe=$Ce[2],mwe=$Ce[1],fwe=$Ce[3],hwe=KCe[3],ywe=KCe[2],bwe=KCe[1],gwe=[0,OC(mwe)];if(Pk([0,OC(bwe)],gwe))throw jke;var xwe=[0,OC(uwe)];if(Pk([0,OC(ywe)],xwe))throw jke;var Swe=Qv($v(Kv(mwe),uwe)),Ewe=Swe[4];_C(Swe[2],0),_C(Ewe,0);var Twe=II(OC(hwe),QCe,fwe),Awe=Twe[2];return[0,[9,mwe,uwe,Kv(Twe[1])],Awe]}break;case 10:if("number"!=typeof $Ce&&10===$Ce[0]){var Pwe=II(KCe[1],QCe,$Ce[1]);return[0,[10,Pwe[1]],Pwe[2]]}break;case 11:if("number"!=typeof $Ce&&11===$Ce[0]){var _we=II(KCe[1],QCe,$Ce[1]);return[0,[11,_we[1]],_we[2]]}break;case 12:if("number"!=typeof $Ce&&12===$Ce[0]){var Nwe=II(KCe[1],QCe,$Ce[1]);return[0,[12,Nwe[1]],Nwe[2]]}break;default:if("number"!=typeof $Ce&&13===$Ce[0]){var kwe=II(KCe[1],QCe,$Ce[1]);return[0,[13,kwe[1]],kwe[2]]}}throw jke}function LI(KCe,QCe,$Ce){var ewe=V_($Ce),twe=0<=QCe?KCe:0,awe=WC(QCe);if(awe<=ewe)return $Ce;var nwe=2===twe?48:32,rwe=Rw(awe,nwe);switch(twe){case 0:Vw($Ce,0,rwe,0,ewe);break;case 1:Vw($Ce,0,rwe,0|awe-ewe,ewe);break;default:if(0>>0?1:0:65<=twe?0:1;else{if(32===twe)var nwe=1;else if(43<=twe)switch(0|twe+TM){case 5:if(ewe<(0|$Ce+2)&&1nwe))for(var rwe=0;;){var swe=M_(KCe,rwe),iwe=14<=swe?34===swe?1:92===swe?1:0:11<=swe?13<=swe?1:0:8<=swe?1:0,owe=iwe?2:J_(swe)?1:4;if(awe[1]=0|awe[1]+owe,nwe!=rwe){var rwe=0|rwe+1;continue}break}if(awe[1]===V_(KCe))var lwe=Ow(KCe);else{var pwe=NP(awe[1]);awe[1]=0;var dwe=0|V_(KCe)-1;if(!(0>dwe))for(var cwe=0;;){var uwe=M_(KCe,cwe),mwe=0|uwe-34;if(!(58>>0))var fwe=56<(0|mwe-1)>>>0?(Xk(pwe,awe[1],92),awe[1]++,Xk(pwe,awe[1],uwe),0):1;else if(-20<=mwe)var fwe=1;else{switch(0|mwe+34){case 8:Xk(pwe,awe[1],92),awe[1]++,Xk(pwe,awe[1],98);var hwe=1;break;case 9:Xk(pwe,awe[1],92),awe[1]++,Xk(pwe,awe[1],XJ);var hwe=1;break;case 10:Xk(pwe,awe[1],92),awe[1]++,Xk(pwe,awe[1],XV);var hwe=1;break;case 13:Xk(pwe,awe[1],92),awe[1]++,Xk(pwe,awe[1],Oz);var hwe=1;break;default:var fwe=1,hwe=0;}if(hwe)var fwe=0}if(fwe&&(J_(uwe)?Xk(pwe,awe[1],uwe):(Xk(pwe,awe[1],92),awe[1]++,Xk(pwe,awe[1],0|48+(0|uwe/WW)),awe[1]++,Xk(pwe,awe[1],0|48+(0|(0|uwe/10)%10)),awe[1]++,Xk(pwe,awe[1],0|48+(0|uwe%10)))),awe[1]++,dwe!=cwe){var cwe=0|cwe+1;continue}break}var lwe=pwe}}else var lwe=KCe;return Jw(lwe,Z$)}}function YI(KCe,QCe){switch(KCe){case 0:var $Ce=MQ;break;case 1:var $Ce=VQ;break;case 2:var $Ce=UQ;break;case 3:var $Ce=XQ;break;case 4:var $Ce=WQ;break;case 5:var $Ce=JQ;break;case 6:var $Ce=ZQ;break;case 7:var $Ce=KQ;break;case 8:var $Ce=QQ;break;case 9:var $Ce=$Q;break;case 10:var $Ce=S$;break;case 11:var $Ce=T$;break;default:var $Ce=P$;}return Jw(Ww(1,QCe),$Ce)}function MI(KCe,QCe){switch(KCe){case 0:var $Ce=_$;break;case 1:var $Ce=N$;break;case 2:var $Ce=I$;break;case 3:var $Ce=L$;break;case 4:var $Ce=R$;break;case 5:var $Ce=O$;break;case 6:var $Ce=Y$;break;case 7:var $Ce=M$;break;case 8:var $Ce=V$;break;case 9:var $Ce=U$;break;case 10:var $Ce=X$;break;case 11:var $Ce=W$;break;default:var $Ce=J$;}return XP($Ce,QCe)}function VI(KCe,QCe){return XP(YI(KCe,YY),QCe)}function UI(KCe,QCe){return XP(YI(KCe,XV),QCe)}function XI(KCe,QCe){return Y_(YI(KCe,76),QCe)}function WI(KCe,QCe,$Ce){var ewe=WC(WC(QCe));if(15===KCe)var twe=QW;else{switch(KCe){case 15:var awe=70;break;case 0:case 1:case 2:var awe=KX;break;case 3:case 4:case 5:var awe=VU;break;case 6:case 7:case 8:var awe=69;break;case 9:case 10:case 11:var awe=QW;break;default:var awe=71;}var twe=awe}var nwe=Vv(16);Xv(nwe,37);1===KCe||4===KCe||7===KCe||10===KCe||13===KCe?Xv(nwe,43):2===KCe||5===KCe||8===KCe||11===KCe||14===KCe?Xv(nwe,32):void 0;Xv(nwe,46),Wv(nwe,XA(LW+ewe)),Xv(nwe,twe);var rwe=UP(Jv(nwe),$Ce);if(15===KCe){var swe=QA($Ce),iwe=V_(rwe);if(3===swe)return 0>$Ce?OQ:YQ;if(4<=swe)return LQ;for(var owe=0;;){if(owe===iwe)var lwe=0;else{var pwe=0|Vk(rwe,owe)-46,dwe=23>>0?55==pwe?1:0:21<(0|pwe-1)>>>0?1:0;if(!dwe){var owe=0|owe+1;continue}var lwe=1}return lwe?rwe:JC(rwe,RQ)}}return rwe}function JI(KCe,QCe,$Ce,ewe,twe){for(var awe=QCe,nwe=ewe,rwe=twe;;){if("number"==typeof rwe)return NC(awe,$Ce,nwe);switch(rwe[0]){case 0:var swe=rwe[1];return function(Mwe){return $I(awe,$Ce,[5,nwe,Mwe],swe)};case 1:var iwe=rwe[1];return function(Mwe){return $I(awe,$Ce,[4,nwe,Jw(Lw(Mwe),IQ)],iwe)};case 2:var owe=rwe[2],lwe=rwe[1];return 50>KCe?KI(1+KCe,awe,$Ce,nwe,owe,lwe,function(Mwe){return Mwe}):$k(KI,[0,awe,$Ce,nwe,owe,lwe,function(Mwe){return Mwe}]);case 3:return 50>KCe?KI(1+KCe,awe,$Ce,nwe,rwe[2],rwe[1],OI):$k(KI,[0,awe,$Ce,nwe,rwe[2],rwe[1],OI]);case 4:return 50>KCe?QI(1+KCe,awe,$Ce,nwe,rwe[4],rwe[2],rwe[3],MI,rwe[1]):$k(QI,[0,awe,$Ce,nwe,rwe[4],rwe[2],rwe[3],MI,rwe[1]]);case 5:return 50>KCe?QI(1+KCe,awe,$Ce,nwe,rwe[4],rwe[2],rwe[3],VI,rwe[1]):$k(QI,[0,awe,$Ce,nwe,rwe[4],rwe[2],rwe[3],VI,rwe[1]]);case 6:return 50>KCe?QI(1+KCe,awe,$Ce,nwe,rwe[4],rwe[2],rwe[3],UI,rwe[1]):$k(QI,[0,awe,$Ce,nwe,rwe[4],rwe[2],rwe[3],UI,rwe[1]]);case 7:return 50>KCe?QI(1+KCe,awe,$Ce,nwe,rwe[4],rwe[2],rwe[3],XI,rwe[1]):$k(QI,[0,awe,$Ce,nwe,rwe[4],rwe[2],rwe[3],XI,rwe[1]]);case 8:var pwe=rwe[4],dwe=rwe[3],cwe=rwe[2],uwe=rwe[1];if("number"==typeof cwe){if("number"==typeof dwe)return 0===dwe?function(Mwe){return $I(awe,$Ce,[4,nwe,WI(uwe,Ike,Mwe)],pwe)}:function(Mwe,Vwe){return $I(awe,$Ce,[4,nwe,WI(uwe,Mwe,Vwe)],pwe)};var mwe=dwe[1];return function(Mwe){return $I(awe,$Ce,[4,nwe,WI(uwe,mwe,Mwe)],pwe)}}if(0===cwe[0]){var fwe=cwe[2],hwe=cwe[1];if("number"==typeof dwe)return 0===dwe?function(Mwe){return $I(awe,$Ce,[4,nwe,LI(hwe,fwe,WI(uwe,Ike,Mwe))],pwe)}:function(Mwe,Vwe){return $I(awe,$Ce,[4,nwe,LI(hwe,fwe,WI(uwe,Mwe,Vwe))],pwe)};var ywe=dwe[1];return function(Mwe){return $I(awe,$Ce,[4,nwe,LI(hwe,fwe,WI(uwe,ywe,Mwe))],pwe)}}var bwe=cwe[1];if("number"==typeof dwe)return 0===dwe?function(Mwe,Vwe){return $I(awe,$Ce,[4,nwe,LI(bwe,Mwe,WI(uwe,Ike,Vwe))],pwe)}:function(Mwe,Vwe,Bwe){return $I(awe,$Ce,[4,nwe,LI(bwe,Mwe,WI(uwe,Vwe,Bwe))],pwe)};var gwe=dwe[1];return function(Mwe,Vwe){return $I(awe,$Ce,[4,nwe,LI(bwe,Mwe,WI(uwe,gwe,Vwe))],pwe)};case 9:var xwe=rwe[1];return function(Mwe){var Vwe=Mwe?JH:ZH;return $I(awe,$Ce,[4,nwe,Vwe],xwe)};case 10:var nwe=[7,nwe],rwe=rwe[1];continue;case 11:var nwe=[2,nwe,rwe[1]],rwe=rwe[2];continue;case 12:var nwe=[3,nwe,rwe[1]],rwe=rwe[2];continue;case 13:var Swe=rwe[3],Ewe=rwe[2],Twe=Vv(16);Zv(Twe,Ewe);var Awe=Jv(Twe);return function(){return $I(awe,$Ce,[4,nwe,Awe],Swe)};case 14:var Pwe=rwe[3],_we=rwe[2];return function(Mwe){var Vwe=Mwe[1],Bwe=NI(Vwe,OC(Kv(_we)));if("number"==typeof Bwe[2])return $I(awe,$Ce,nwe,MC(Bwe[1],Pwe));throw jke};case 15:var Nwe=rwe[1];return function(Mwe,Vwe){return $I(awe,$Ce,[6,nwe,function(Bwe){return NC(Mwe,Bwe,Vwe)}],Nwe)};case 16:var kwe=rwe[1];return function(Mwe){return $I(awe,$Ce,[6,nwe,Mwe],kwe)};case 17:var nwe=[0,nwe,rwe[1]],rwe=rwe[2];continue;case 18:var Cwe=rwe[1];if(0===Cwe[0]){var wwe=rwe[2],vwe=Cwe[1][1],awe=function(Mwe,Vwe,Bwe){return function(Uwe,Xwe){return $I(Vwe,Uwe,[1,Mwe,[0,Xwe]],Bwe)}}(nwe,awe,wwe),nwe=0,rwe=vwe;continue}var Iwe=rwe[2],jwe=Cwe[1][1],awe=function(Mwe,Vwe,Bwe){return function(Uwe,Xwe){return $I(Vwe,Uwe,[1,Mwe,[1,Xwe]],Bwe)}}(nwe,awe,Iwe),nwe=0,rwe=jwe;continue;case 19:throw[0,YH,KK];case 20:var Lwe=rwe[3],Dwe=[8,nwe,QK];return function(){return $I(awe,$Ce,Dwe,Lwe)};case 21:var Rwe=rwe[2];return function(Mwe){return $I(awe,$Ce,[4,nwe,XP(ZK,Mwe)],Rwe)};case 22:var Owe=rwe[1];return function(Mwe){return $I(awe,$Ce,[5,nwe,Mwe],Owe)};default:var Ywe=rwe[2],Fwe=rwe[1];if("number"==typeof Fwe)switch(Fwe){case 0:return 50>KCe?ZI(1+KCe,awe,$Ce,nwe,Ywe):$k(ZI,[0,awe,$Ce,nwe,Ywe]);case 1:return 50>KCe?ZI(1+KCe,awe,$Ce,nwe,Ywe):$k(ZI,[0,awe,$Ce,nwe,Ywe]);case 2:return 50>KCe?ZI(1+KCe,awe,$Ce,nwe,Ywe):$k(ZI,[0,awe,$Ce,nwe,Ywe]);case 3:throw[0,YH,$K];default:return 50>KCe?ZI(1+KCe,awe,$Ce,nwe,Ywe):$k(ZI,[0,awe,$Ce,nwe,Ywe]);}else switch(Fwe[0]){case 0:return 50>KCe?ZI(1+KCe,awe,$Ce,nwe,Ywe):$k(ZI,[0,awe,$Ce,nwe,Ywe]);case 1:return 50>KCe?ZI(1+KCe,awe,$Ce,nwe,Ywe):$k(ZI,[0,awe,$Ce,nwe,Ywe]);case 2:return 50>KCe?ZI(1+KCe,awe,$Ce,nwe,Ywe):$k(ZI,[0,awe,$Ce,nwe,Ywe]);case 3:return 50>KCe?ZI(1+KCe,awe,$Ce,nwe,Ywe):$k(ZI,[0,awe,$Ce,nwe,Ywe]);case 4:return 50>KCe?ZI(1+KCe,awe,$Ce,nwe,Ywe):$k(ZI,[0,awe,$Ce,nwe,Ywe]);case 5:return 50>KCe?ZI(1+KCe,awe,$Ce,nwe,Ywe):$k(ZI,[0,awe,$Ce,nwe,Ywe]);case 6:return 50>KCe?ZI(1+KCe,awe,$Ce,nwe,Ywe):$k(ZI,[0,awe,$Ce,nwe,Ywe]);case 7:return 50>KCe?ZI(1+KCe,awe,$Ce,nwe,Ywe):$k(ZI,[0,awe,$Ce,nwe,Ywe]);case 8:return 50>KCe?HI(1+KCe,awe,$Ce,nwe,Fwe[2],Ywe):$k(HI,[0,awe,$Ce,nwe,Fwe[2],Ywe]);case 9:return 50>KCe?ZI(1+KCe,awe,$Ce,nwe,Ywe):$k(ZI,[0,awe,$Ce,nwe,Ywe]);default:return 50>KCe?ZI(1+KCe,awe,$Ce,nwe,Ywe):$k(ZI,[0,awe,$Ce,nwe,Ywe]);}}}}function HI(KCe,QCe,$Ce,ewe,twe,awe){if("number"==typeof twe)return 50>KCe?ZI(1+KCe,QCe,$Ce,ewe,awe):$k(ZI,[0,QCe,$Ce,ewe,awe]);switch(twe[0]){case 0:var nwe=twe[1];return function(){return Sj(QCe,$Ce,ewe,nwe,awe)};case 1:var rwe=twe[1];return function(){return Sj(QCe,$Ce,ewe,rwe,awe)};case 2:var swe=twe[1];return function(){return Sj(QCe,$Ce,ewe,swe,awe)};case 3:var iwe=twe[1];return function(){return Sj(QCe,$Ce,ewe,iwe,awe)};case 4:var owe=twe[1];return function(){return Sj(QCe,$Ce,ewe,owe,awe)};case 5:var lwe=twe[1];return function(){return Sj(QCe,$Ce,ewe,lwe,awe)};case 6:var pwe=twe[1];return function(){return Sj(QCe,$Ce,ewe,pwe,awe)};case 7:var dwe=twe[1];return function(){return Sj(QCe,$Ce,ewe,dwe,awe)};case 8:var cwe=twe[2];return function(){return Sj(QCe,$Ce,ewe,cwe,awe)};case 9:var uwe=twe[3],mwe=twe[2],fwe=$v(Kv(twe[1]),mwe);return function(){return Sj(QCe,$Ce,ewe,YC(fwe,uwe),awe)};case 10:var hwe=twe[1];return function(){return Sj(QCe,$Ce,ewe,hwe,awe)};case 11:var ywe=twe[1];return function(){return Sj(QCe,$Ce,ewe,ywe,awe)};case 12:throw[0,YH,SQ];default:throw[0,YH,TQ];}}function ZI(KCe,QCe,$Ce,ewe,twe){return 50>KCe?JI(1+KCe,QCe,$Ce,[8,ewe,PQ],twe):$k(JI,[0,QCe,$Ce,[8,ewe,PQ],twe])}function KI(KCe,QCe,$Ce,ewe,twe,awe,nwe){if("number"==typeof awe)return function(owe){return $I(QCe,$Ce,[4,ewe,_C(nwe,owe)],twe)};if(0===awe[0]){var rwe=awe[2],swe=awe[1];return function(owe){return $I(QCe,$Ce,[4,ewe,LI(swe,rwe,_C(nwe,owe))],twe)}}var iwe=awe[1];return function(owe,lwe){return $I(QCe,$Ce,[4,ewe,LI(iwe,owe,_C(nwe,lwe))],twe)}}function QI(KCe,QCe,$Ce,ewe,twe,awe,nwe,rwe,swe){if("number"==typeof awe){if("number"==typeof nwe)return 0===nwe?function(uwe){return $I(QCe,$Ce,[4,ewe,NC(rwe,swe,uwe)],twe)}:function(uwe,mwe){return $I(QCe,$Ce,[4,ewe,RI(uwe,NC(rwe,swe,mwe))],twe)};var iwe=nwe[1];return function(uwe){return $I(QCe,$Ce,[4,ewe,RI(iwe,NC(rwe,swe,uwe))],twe)}}if(0===awe[0]){var owe=awe[2],lwe=awe[1];if("number"==typeof nwe)return 0===nwe?function(uwe){return $I(QCe,$Ce,[4,ewe,LI(lwe,owe,NC(rwe,swe,uwe))],twe)}:function(uwe,mwe){return $I(QCe,$Ce,[4,ewe,LI(lwe,owe,RI(uwe,NC(rwe,swe,mwe)))],twe)};var pwe=nwe[1];return function(uwe){return $I(QCe,$Ce,[4,ewe,LI(lwe,owe,RI(pwe,NC(rwe,swe,uwe)))],twe)}}var dwe=awe[1];if("number"==typeof nwe)return 0===nwe?function(uwe,mwe){return $I(QCe,$Ce,[4,ewe,LI(dwe,uwe,NC(rwe,swe,mwe))],twe)}:function(uwe,mwe,fwe){return $I(QCe,$Ce,[4,ewe,LI(dwe,uwe,RI(mwe,NC(rwe,swe,fwe)))],twe)};var cwe=nwe[1];return function(uwe,mwe){return $I(QCe,$Ce,[4,ewe,LI(dwe,uwe,RI(cwe,NC(rwe,swe,mwe)))],twe)}}function $I(KCe,QCe,$Ce,ewe){return Qk(JI(0,KCe,QCe,$Ce,ewe))}function Sj(KCe,QCe,$Ce,ewe,twe){return Qk(HI(0,KCe,QCe,$Ce,ewe,twe))}function Tj(KCe,QCe){for(var $Ce=QCe;;){if("number"==typeof $Ce)return 0;switch($Ce[0]){case 0:var ewe=$Ce[2],twe=$Ce[1];if("number"==typeof ewe)switch(ewe){case 0:var awe=K$;break;case 1:var awe=Q$;break;case 2:var awe=$$;break;case 3:var awe=eee;break;case 4:var awe=tee;break;case 5:var awe=aee;break;default:var awe=nee;}else switch(ewe[0]){case 0:var awe=ewe[1];break;case 1:var awe=ewe[1];break;default:var awe=JC(ree,Ww(1,ewe[1]));}return Tj(KCe,twe),Mv(KCe,awe);case 1:var nwe=$Ce[2],rwe=$Ce[1];if(0===nwe[0]){var swe=nwe[1];Tj(KCe,rwe),Mv(KCe,_Q);var $Ce=swe;continue}var iwe=nwe[1];Tj(KCe,rwe),Mv(KCe,NQ);var $Ce=iwe;continue;case 6:var owe=$Ce[2];return Tj(KCe,$Ce[1]),Mv(KCe,_C(owe,0));case 7:var $Ce=$Ce[1];continue;case 8:var lwe=$Ce[2];return Tj(KCe,$Ce[1]),UC(lwe);case 2:case 4:var pwe=$Ce[2];return Tj(KCe,$Ce[1]),Mv(KCe,pwe);default:var dwe=$Ce[2];return Tj(KCe,$Ce[1]),Yv(KCe,dwe);}}}function Pj(KCe){var QCe=KCe[1];return $I(function($Ce,ewe){var twe=Lv(64);return Tj(twe,ewe),Rv(twe)},0,0,QCe)}function _j(KCe){return Lke[1]=[0,KCe,Lke[1]],0}function Nj(KCe,QCe){for(var $Ce=KCe?KCe[1]:Fke,ewe=16;;){if(!(QCe<=ewe)&&!(Cke<(0|2*ewe))){var ewe=0|2*ewe;continue}if($Ce){var twe=Nk(Mke),awe=OX===twe?Mke[1]:ZX===twe?Iv(Mke):Mke;awe[2]=0|(0|awe[2]+1)%55;var nwe=awe[2],rwe=KA(awe[1],nwe)[nwe+1],swe=0|(0|awe[2]+24)%55,iwe=(0|KA(awe[1],swe)[swe+1]+(rwe^31&(0|rwe>>>25)))&LV,owe=awe[2];KA(awe[1],owe)[owe+1]=iwe;var lwe=iwe}else var lwe=0;return[0,0,PN(ewe,0),lwe,ewe]}}function Ij(KCe,QCe){return 3<=KCe.length-1?$z(10,WW,KCe[3],QCe)&(0|KCe[2].length-1-1):QN(KP(10,WW,QCe),KCe[2].length-1)}function Lj(KCe,QCe,$Ce){var ewe=Ij(KCe,QCe),twe=[0,QCe,$Ce,KA(KCe[2],ewe)[ewe+1]];KA(KCe[2],ewe)[ewe+1]=twe,KCe[1]=0|KCe[1]+1;var awe=KCe[2].length-1<<1pwe))for(var dwe=0;;){if(lwe(KA(nwe,dwe)[dwe+1]),pwe!=dwe){var dwe=0|dwe+1;continue}break}var cwe=0}else var cwe=iwe;return cwe}return awe}function Rj(KCe,QCe){var $Ce=Ij(KCe,QCe),ewe=KA(KCe[2],$Ce)[$Ce+1];if(ewe){var twe=ewe[3],awe=ewe[2];if(0===_P(QCe,ewe[1]))return awe;if(twe){var nwe=twe[3],rwe=twe[2];if(0===_P(QCe,twe[1]))return rwe;if(nwe){var swe=nwe[3],iwe=nwe[2];if(0===_P(QCe,nwe[1]))return iwe;for(var owe=swe;;){if(owe){var lwe=owe[3],pwe=owe[2];if(0===_P(QCe,owe[1]))return pwe;var owe=lwe;continue}throw OH}}throw OH}throw OH}throw OH}function Oj(KCe){return KCe===Uke?0:1}function Yj(KCe,QCe,$Ce){var ewe=$Ce[4],twe=XC(0,0|$Ce[4]-$Ce[3]);return[0,KCe,[0,QCe[2],0|QCe[4]-QCe[3],QCe[4]],[0,$Ce[2],twe,ewe]]}function Mj(KCe,QCe){return[0,KCe[1],KCe[2],QCe[3]]}function Vj(KCe){return"number"==typeof KCe?gee:KCe[1]}function Uj(KCe){if("number"==typeof KCe)return 1;switch(KCe[0]){case 0:return 2;case 3:return 4;default:return 3;}}function Xj(KCe,QCe){return _P([0,KCe[1],KCe[2]],[0,QCe[1],QCe[2]])}function Wj(KCe){function QCe(nIe,rIe){var sIe=KC(Tw(nIe,rIe));return _C(KCe[4],sIe)}function $Ce(nIe){return _C(KCe[5],nIe)}function ewe(nIe,rIe){return rIe?_C(nIe,rIe[1]):KCe[6]}function twe(nIe){var rIe=[0,Rce,$Ce(nIe[2])],sIe=[0,[0,Oce,$Ce(nIe[1])],rIe];return _C(KCe[3],sIe)}function awe(nIe){var rIe=nIe[1];if(rIe)var sIe=rIe[1],iIe="number"==typeof sIe?_C(KCe[1],Ice):_C(KCe[1],sIe[1]),oIe=iIe;else var oIe=KCe[6];var lIe=[0,jce,twe(nIe[3])],pIe=[0,[0,Dce,oIe],[0,Lce,twe(nIe[2])],lIe];return _C(KCe[3],pIe)}function nwe(nIe,rIe,sIe){var iIe=$Ce(rIe[3][3]),oIe=[0,$Ce(rIe[2][3]),iIe],lIe=[0,Cce,_C(KCe[4],oIe)],pIe=[0,wce,awe(rIe)],dIe=[0,[0,vce,_C(KCe[1],nIe)],pIe,lIe],cIe=dIe.length-1;if(0==cIe)var uIe=sIe.length-1,mIe=0==uIe?[0]:SA(sIe,0,uIe);else var mIe=0==sIe.length-1?SA(dIe,0,cIe):QT(dIe,sIe);return _C(KCe[3],mIe)}function rwe(nIe){return QCe(Gwe,nIe)}function swe(nIe,rIe){var sIe=rIe[2],iIe=rIe[1];if("number"==typeof sIe)return 0===sIe?nwe(lae,iIe,[0]):nwe(pae,iIe,[0]);switch(sIe[0]){case 0:return 50>nIe?uwe(1+nIe,[0,iIe,sIe[1]]):$k(uwe,[0,[0,iIe,sIe[1]]]);case 1:return nwe(cae,iIe,[0,[0,dae,Zwe(sIe[1][1])]]);case 2:var oIe=sIe[1],lIe=[0,uae,ewe(Gwe,oIe[3])],pIe=[0,mae,Gwe(oIe[2])];return nwe(hae,iIe,[0,[0,fae,Zwe(oIe[1])],pIe,lIe]);case 3:var dIe=sIe[1],cIe=[0,yae,Gwe(dIe[2])];return nwe(gae,iIe,[0,[0,bae,Qwe(dIe[1])],cIe]);case 4:return nwe(Sae,iIe,[0,[0,xae,ewe(Qwe,sIe[1][1])]]);case 5:return nwe(Tae,iIe,[0,[0,Eae,ewe(Qwe,sIe[1][1])]]);case 6:var uIe=sIe[1],mIe=[0,Aae,Gwe(uIe[2])];return nwe(_ae,iIe,[0,[0,Pae,Zwe(uIe[1])],mIe]);case 7:return 50>nIe?gwe(1+nIe,[0,iIe,sIe[1]]):$k(gwe,[0,[0,iIe,sIe[1]]]);case 8:var fIe=sIe[1],hIe=[0,Nae,QCe(eve,fIe[2])];return nwe(Cae,iIe,[0,[0,kae,Zwe(fIe[1])],hIe]);case 9:return nwe(vae,iIe,[0,[0,wae,ewe(Zwe,sIe[1][1])]]);case 10:return nwe(jae,iIe,[0,[0,Iae,Zwe(sIe[1][1])]]);case 11:var yIe=sIe[1],bIe=[0,Lae,ewe(ave,yIe[3])],gIe=[0,Dae,ewe(tve,yIe[2])];return nwe(Oae,iIe,[0,[0,Rae,ave(yIe[1])],gIe,bIe]);case 12:var xIe=sIe[1],SIe=[0,Yae,Gwe(xIe[2])];return nwe(Mae,iIe,[0,[0,Fae,Zwe(xIe[1])],SIe]);case 13:var EIe=sIe[1],TIe=[0,Vae,Zwe(EIe[2])];return nwe(Uae,iIe,[0,[0,Bae,Gwe(EIe[1])],TIe]);case 14:var AIe=sIe[1],PIe=function(Dje){return 0===Dje[0]?Pve(Dje[1]):Zwe(Dje[1])},_Ie=[0,Xae,Gwe(AIe[4])],NIe=[0,Wae,ewe(Zwe,AIe[3])],kIe=[0,qae,ewe(Zwe,AIe[2])];return nwe(zae,iIe,[0,[0,Jae,ewe(PIe,AIe[1])],kIe,NIe,_Ie]);case 15:var CIe=sIe[1],wIe=CIe[1],vIe=0===wIe[0]?Pve(wIe[1]):Zwe(wIe[1]),IIe=[0,Hae,_C(KCe[2],CIe[4])],jIe=[0,Gae,Gwe(CIe[3])];return nwe(Qae,iIe,[0,[0,Kae,vIe],[0,Zae,Zwe(CIe[2])],jIe,IIe]);case 16:var LIe=sIe[1],DIe=LIe[4]?$ae:ene,RIe=LIe[1],OIe=0===RIe[0]?Pve(RIe[1]):Zwe(RIe[1]),YIe=[0,tne,Gwe(LIe[3])];return nwe(DIe,iIe,[0,[0,nne,OIe],[0,ane,Zwe(LIe[2])],YIe]);case 17:var FIe=sIe[1],MIe=FIe[3],VIe=0===MIe[0]?ave(MIe[1]):Zwe(MIe[1]),BIe=[0,Jse,ewe(Rve,FIe[9])],UIe=[0,zse,ewe(Dve,FIe[8])],XIe=[0,Hse,_C(KCe[2],FIe[7])],WIe=[0,Gse,ewe(aIe,FIe[6])],qIe=[0,Zse,_C(KCe[2],FIe[5])],JIe=[0,Kse,_C(KCe[2],FIe[4])],zIe=[0,$se,hve(FIe[2])];return nwe(tie,iIe,[0,[0,eie,ewe(Qwe,FIe[1])],zIe,[0,Qse,VIe],JIe,qIe,WIe,XIe,UIe,BIe]);case 18:return 50>nIe?Dwe(1+nIe,[0,iIe,sIe[1]]):$k(Dwe,[0,[0,iIe,sIe[1]]]);case 19:var HIe=sIe[1],GIe=[0,Jie,QCe(Zwe,HIe[7])],ZIe=[0,zie,QCe(pve,HIe[6])],KIe=[0,Hie,ewe(Yve,HIe[5])],QIe=[0,Gie,ewe(Rve,HIe[4])],$Ie=[0,Zie,ewe(Zwe,HIe[3])],eje=[0,Kie,dve(HIe[2])];return nwe($ie,iIe,[0,[0,Qie,ewe(Qwe,HIe[1])],eje,$Ie,QIe,KIe,ZIe,GIe]);case 20:return 50>nIe?Twe(1+nIe,[0,iIe,sIe[1]]):$k(Twe,[0,[0,iIe,sIe[1]]]);case 21:return 50>nIe?mwe(1+nIe,[0,iIe,sIe[1]]):$k(mwe,[0,[0,iIe,sIe[1]]]);case 22:return 50>nIe?fwe(1+nIe,[0,iIe,sIe[1]]):$k(fwe,[0,[0,iIe,sIe[1]]]);case 23:return 50>nIe?hwe(1+nIe,[0,iIe,sIe[1]]):$k(hwe,[0,[0,iIe,sIe[1]]]);case 24:var tje=sIe[1],aje=tje[1],nje=0===aje[0]?Qwe(aje[1]):Eve(aje[1]),rje=0===tje[3][0]?_C(KCe[1],rne):_C(KCe[1],sne);return nwe(pne,iIe,[0,[0,lne,nje],[0,one,ave(tje[2])],[0,ine,rje]]);case 25:return nwe(cne,iIe,[0,[0,dne,Dve(sIe[1])]]);case 26:var sje=sIe[1],ije=sje[3];if(ije){var oje=ije[1];if(0!==oje[0]&&!oje[2])return nwe(mne,iIe,[0,[0,une,ewe(Eve,sje[4])]])}var lje=sje[2];if(lje){var pje=lje[1];switch(pje[0]){case 0:var dje=nve(pje[1]);break;case 1:var dje=rve(pje[1]);break;case 2:var dje=sve(pje[1]);break;case 3:var dje=kve(pje[1]);break;case 4:var dje=lve(pje[1]);break;default:var dje=uve(pje[1]);}var cje=dje}else var cje=KCe[6];var uje=[0,fne,ewe(Eve,sje[4])],mje=[0,hne,ove(sje[3])];return nwe(gne,iIe,[0,[0,bne,_C(KCe[2],sje[1])],[0,yne,cje],mje,uje]);case 27:var fje=sIe[1],hje=fje[2];if(hje){var yje=hje[1];if(0!==yje[0]&&!yje[2]){var bje=ive(fje[4]),gje=[0,xne,_C(KCe[1],bje)];return nwe(Ene,iIe,[0,[0,Sne,ewe(Eve,fje[3])],gje])}}var xje=ive(fje[4]),Sje=[0,Tne,_C(KCe[1],xje)],Eje=[0,Ane,ewe(Eve,fje[3])],Tje=[0,Pne,ove(fje[2])];return nwe(Nne,iIe,[0,[0,_ne,ewe(Gwe,fje[1])],Tje,Eje,Sje]);case 28:var Aje=sIe[1],Pje=Aje[1],_je=0===Pje[0]?Gwe(Pje[1]):Zwe(Pje[1]),Nje=ive(Aje[2]);return nwe(wne,iIe,[0,[0,Cne,_je],[0,kne,_C(KCe[1],Nje)]]);default:var kje=sIe[1],Cje=kje[3],wje=Tw(function(Dje){switch(Dje[0]){case 0:var Rje=Dje[1],Oje=Rje[1],Yje=Rje[3],Fje=Rje[2],Mje=Fje?Mj(Yje[1],Fje[1][1]):Yje[1],Vje=Fje?Fje[1]:Yje;if(Oje)switch(Oje[1]){case 0:var Bje=_C(KCe[1],fce),Uje=1;break;case 1:var Bje=_C(KCe[1],hce),Uje=1;break;default:var Uje=0;}else var Uje=0;if(!Uje)var Bje=KCe[6];var Xje=[0,bce,Qwe(Vje)];return nwe(xce,Mje,[0,[0,gce,Qwe(Yje)],Xje,[0,yce,Bje]]);case 1:var Wje=Dje[1],qje=[0,[0,dce,Qwe(Wje)]];return nwe(cce,Wje[1],qje);default:var Jje=Dje[1],zje=[0,[0,uce,Qwe(Jje[2])]];return nwe(mce,Jje[1],zje);}},Cje);switch(kje[1]){case 0:var vje=vne;break;case 1:var vje=Ine;break;default:var vje=jne;}var Ije=[0,Lne,_C(KCe[1],vje)],jje=[0,Dne,Eve(kje[2])],Lje=KC(wje);return nwe(One,iIe,[0,[0,Rne,_C(KCe[4],Lje)],jje,Ije]);}}function iwe(nIe,rIe){var sIe=rIe[2],iIe=rIe[1];if("number"==typeof sIe)return 0===sIe?nwe(Yne,iIe,[0]):nwe(Fne,iIe,[0]);switch(sIe[0]){case 0:var oIe=sIe[1][1];return nwe(Vne,iIe,[0,[0,Mne,QCe(function(fje){return ewe(xve,fje)},oIe)]]);case 1:return nwe(Une,iIe,[0,[0,Bne,QCe(bve,sIe[1][1])]]);case 2:return 50>nIe?owe(1+nIe,[0,iIe,sIe[1]]):$k(owe,[0,[0,iIe,sIe[1]]]);case 3:var lIe=sIe[1],pIe=lIe[3],dIe=0===pIe[0]?ave(pIe[1]):Zwe(pIe[1]),cIe=[0,Xne,ewe(Rve,lIe[9])],uIe=[0,Wne,ewe(Dve,lIe[8])],mIe=[0,qne,_C(KCe[2],lIe[7])],fIe=[0,Jne,ewe(aIe,lIe[6])],hIe=[0,zne,_C(KCe[2],lIe[5])],yIe=[0,Hne,_C(KCe[2],lIe[4])],bIe=[0,Zne,hve(lIe[2])];return nwe(Qne,iIe,[0,[0,Kne,ewe(Qwe,lIe[1])],bIe,[0,Gne,dIe],yIe,hIe,fIe,mIe,uIe,cIe]);case 4:return nwe(ere,iIe,[0,[0,$ne,QCe(Zwe,sIe[1][1])]]);case 5:var gIe=sIe[1];if(7<=gIe[1])return nwe(are,iIe,[0,[0,tre,Zwe(gIe[3])]]);switch(gIe[1]){case 0:var xIe=nre;break;case 1:var xIe=rre;break;case 2:var xIe=sre;break;case 3:var xIe=ire;break;case 4:var xIe=ore;break;case 5:var xIe=lre;break;case 6:var xIe=pre;break;default:var xIe=VC(dre);}var SIe=[0,cre,Zwe(gIe[3])],EIe=[0,ure,_C(KCe[2],gIe[2])];return nwe(fre,iIe,[0,[0,mre,_C(KCe[1],xIe)],EIe,SIe]);case 6:var TIe=sIe[1];switch(TIe[1]){case 0:var AIe=hre;break;case 1:var AIe=yre;break;case 2:var AIe=bre;break;case 3:var AIe=gre;break;case 4:var AIe=xre;break;case 5:var AIe=Sre;break;case 6:var AIe=Ere;break;case 7:var AIe=Tre;break;case 8:var AIe=Are;break;case 9:var AIe=Pre;break;case 10:var AIe=_re;break;case 11:var AIe=Nre;break;case 12:var AIe=kre;break;case 13:var AIe=Cre;break;case 14:var AIe=wre;break;case 15:var AIe=vre;break;case 16:var AIe=Ire;break;case 17:var AIe=jre;break;case 18:var AIe=Lre;break;case 19:var AIe=Dre;break;case 20:var AIe=Rre;break;default:var AIe=Ore;}var PIe=[0,Yre,Zwe(TIe[3])],_Ie=[0,Fre,Zwe(TIe[2])];return nwe(Vre,iIe,[0,[0,Mre,_C(KCe[1],AIe)],_Ie,PIe]);case 7:var NIe=sIe[1];switch(NIe[1]){case 0:var kIe=Bre;break;case 1:var kIe=Ure;break;case 2:var kIe=Xre;break;case 3:var kIe=Wre;break;case 4:var kIe=qre;break;case 5:var kIe=Jre;break;case 6:var kIe=zre;break;case 7:var kIe=Hre;break;case 8:var kIe=Gre;break;case 9:var kIe=Zre;break;case 10:var kIe=Kre;break;case 11:var kIe=Qre;break;default:var kIe=$re;}var CIe=[0,ese,Zwe(NIe[3])],wIe=[0,tse,fve(NIe[2])];return nwe(nse,iIe,[0,[0,ase,_C(KCe[1],kIe)],wIe,CIe]);case 8:var vIe=sIe[1],IIe=0===vIe[1]?sse:rse,jIe=[0,ise,_C(KCe[2],vIe[3])],LIe=[0,ose,Zwe(vIe[2])];return nwe(pse,iIe,[0,[0,lse,_C(KCe[1],IIe)],LIe,jIe]);case 9:var DIe=sIe[1],RIe=0===DIe[1]?cse:dse,OIe=[0,mse,Zwe(DIe[3])],YIe=[0,fse,Zwe(DIe[2])];return nwe(yse,iIe,[0,[0,hse,_C(KCe[1],RIe)],YIe,OIe]);case 10:var FIe=sIe[1],MIe=[0,bse,Zwe(FIe[3])],VIe=[0,gse,Zwe(FIe[2])];return nwe(Sse,iIe,[0,[0,xse,Zwe(FIe[1])],VIe,MIe]);case 11:var BIe=sIe[1],UIe=[0,Ese,QCe(xve,BIe[2])];return nwe(Ase,iIe,[0,[0,Tse,Zwe(BIe[1])],UIe]);case 12:var XIe=sIe[1],WIe=[0,Pse,QCe(xve,XIe[2])];return nwe(Nse,iIe,[0,[0,_se,Zwe(XIe[1])],WIe]);case 13:var qIe=sIe[1],JIe=qIe[2],zIe=0===JIe[0]?Qwe(JIe[1]):Zwe(JIe[1]),HIe=[0,kse,_C(KCe[2],qIe[3])];return nwe(vse,iIe,[0,[0,wse,Zwe(qIe[1])],[0,Cse,zIe],HIe]);case 14:var GIe=sIe[1],ZIe=[0,Ise,_C(KCe[2],GIe[2])];return nwe(Lse,iIe,[0,[0,jse,ewe(Zwe,GIe[1])],ZIe]);case 15:var KIe=sIe[1],QIe=[0,Dse,ewe(Zwe,KIe[2])];return nwe(Ose,iIe,[0,[0,Rse,QCe(Sve,KIe[1])],QIe]);case 16:var $Ie=sIe[1],eje=[0,Yse,ewe(Zwe,$Ie[2])];return nwe(Mse,iIe,[0,[0,Fse,QCe(Sve,$Ie[1])],eje]);case 17:return 50>nIe?lwe(1+nIe,sIe[1]):$k(lwe,[0,sIe[1]]);case 18:return 50>nIe?Iwe(1+nIe,[0,iIe,sIe[1]]):$k(Iwe,[0,[0,iIe,sIe[1]]]);case 19:return 50>nIe?jwe(1+nIe,[0,iIe,sIe[1]]):$k(jwe,[0,[0,iIe,sIe[1]]]);case 20:var tje=sIe[1],aje=[0,Ule,Tve(tje[2])];return nwe(Wle,iIe,[0,[0,Xle,Zwe(tje[1])],aje]);case 21:return 50>nIe?Hwe(1+nIe,[0,iIe,sIe[1]]):$k(Hwe,[0,[0,iIe,sIe[1]]]);case 22:var nje=sIe[1],rje=[0,eoe,QCe(Zwe,nje[7])],sje=[0,toe,QCe(pve,nje[6])],ije=[0,aoe,ewe(Yve,nje[5])],oje=[0,noe,ewe(Rve,nje[4])],lje=[0,roe,ewe(Zwe,nje[3])],pje=[0,soe,dve(nje[2])];return nwe(ooe,iIe,[0,[0,ioe,ewe(Qwe,nje[1])],pje,lje,oje,ije,sje,rje]);case 23:var dje=sIe[1],cje=[0,Vse,Dve(dje[2])];return nwe(Use,iIe,[0,[0,Bse,Zwe(dje[1])],cje]);default:var uje=sIe[1],mje=[0,Xse,Qwe(uje[2])];return nwe(qse,iIe,[0,[0,Wse,Qwe(uje[1])],mje]);}}function owe(nIe,rIe){var sIe=rIe[2],iIe=sIe[3],oIe=0===iIe[0]?ave(iIe[1]):Zwe(iIe[1]),lIe=[0,aie,ewe(Rve,sIe[9])],pIe=[0,nie,ewe(Dve,sIe[8])],dIe=[0,rie,_C(KCe[2],sIe[7])],cIe=[0,sie,ewe(aIe,sIe[6])],uIe=[0,iie,_C(KCe[2],sIe[5])],mIe=[0,oie,_C(KCe[2],sIe[4])],fIe=[0,pie,hve(sIe[2])],hIe=[0,[0,die,ewe(Qwe,sIe[1])],fIe,[0,lie,oIe],mIe,uIe,cIe,dIe,pIe,lIe];return nwe(cie,rIe[1],hIe)}function lwe(nIe,rIe){var sIe=[0,uie,_C(KCe[2],0)],iIe=[0,mie,KCe[6]],oIe=[0,[0,fie,_C(KCe[1],rIe[2])],iIe,sIe];return nwe(hie,rIe[1],oIe)}function pwe(nIe,rIe,sIe){var iIe=[0,yie,_C(KCe[2],sIe[3])],oIe=[0,bie,ewe(Dve,sIe[2])];return nwe(xie,rIe,[0,[0,gie,_C(KCe[1],sIe[1][2])],oIe,iIe])}function dwe(nIe,rIe){var sIe=rIe[2],iIe=[0,Sie,QCe(Gwe,sIe[2])],oIe=[0,[0,Eie,ewe(Zwe,sIe[1])],iIe];return nwe(Tie,rIe[1],oIe)}function cwe(nIe,rIe){var sIe=rIe[2],iIe=[0,Aie,ave(sIe[2])],oIe=[0,[0,Pie,fve(sIe[1])],iIe];return nwe(_ie,rIe[1],oIe)}function uwe(nIe,rIe){var sIe=[0,[0,Nie,rwe(rIe[2][1])]];return nwe(kie,rIe[1],sIe)}function mwe(nIe,rIe){var sIe=rIe[2],iIe=sIe[2],oIe=iIe?iIe[1][1]:sIe[1][1],lIe=Mj(sIe[1][1],oIe),pIe=[0,[0,Cie,$we(lIe,[0,sIe[1],sIe[2],0])]];return nwe(wie,rIe[1],pIe)}function fwe(nIe,rIe){var sIe=rIe[2],iIe=Mj(sIe[1][1],sIe[2][1]),oIe=[0,vie,ewe(aIe,sIe[3])],lIe=[0,[0,Iie,$we(iIe,[0,sIe[1],[0,sIe[2]],0])],oIe];return nwe(jie,rIe[1],lIe)}function hwe(nIe,rIe){var sIe=rIe[2],iIe=[0,Lie,QCe(mve,sIe[4])],oIe=[0,Die,Ive(sIe[3])],lIe=[0,Rie,ewe(Rve,sIe[2])],pIe=[0,[0,Oie,Qwe(sIe[1])],lIe,oIe,iIe];return nwe(Yie,rIe[1],pIe)}function ywe(nIe,rIe){return 0===rIe?Mie:Fie}function bwe(nIe,rIe){if(rIe){var sIe=rIe[1];if(0===sIe[0])return QCe(eIe,sIe[1]);var iIe=sIe[2];if(iIe){var oIe=[0,[0,Vie,Qwe(iIe[1])]],lIe=[0,nwe(Bie,sIe[1],oIe)];return _C(KCe[4],lIe)}return _C(KCe[4],[0])}return _C(KCe[4],[0])}function gwe(nIe,rIe){var sIe=rIe[2],iIe=[0,Uie,kve(sIe[3])],oIe=[0,Xie,ewe(Rve,sIe[2])],lIe=[0,[0,Wie,Qwe(sIe[1])],oIe,iIe];return nwe(qie,rIe[1],lIe)}function xwe(nIe,rIe){var sIe=rIe[2],iIe=[0,loe,ewe(Yve,sIe[2])],oIe=[0,[0,poe,Qwe(sIe[1])],iIe];return nwe(doe,rIe[1],oIe)}function Swe(nIe,rIe){var sIe=[0,[0,coe,QCe(cve,rIe[2][1])]];return nwe(uoe,rIe[1],sIe)}function Ewe(nIe,rIe){if(0===rIe[0]){var sIe=rIe[1],iIe=sIe[2],oIe=iIe[2];switch(oIe[0]){case 0:var lIe=[0,Eve(oIe[1]),0];break;case 1:var lIe=[0,Qwe(oIe[1]),0];break;default:var lIe=[0,Zwe(oIe[1]),1];}switch(iIe[1]){case 0:var pIe=moe;break;case 1:var pIe=foe;break;case 2:var pIe=hoe;break;default:var pIe=yoe;}var dIe=[0,boe,QCe(Zwe,iIe[5])],cIe=[0,goe,_C(KCe[2],lIe[2])],uIe=[0,xoe,_C(KCe[2],iIe[4])],mIe=[0,Soe,_C(KCe[1],pIe)],fIe=[0,Eoe,Kwe(iIe[3])];return nwe(Aoe,sIe[1],[0,[0,Toe,lIe[1]],fIe,mIe,uIe,cIe,dIe])}var hIe=rIe[1],yIe=hIe[2],bIe=yIe[1];switch(bIe[0]){case 0:var gIe=[0,Eve(bIe[1]),0];break;case 1:var gIe=[0,Qwe(bIe[1]),0];break;default:var gIe=[0,Zwe(bIe[1]),1];}var xIe=[0,Poe,ewe(Nve,yIe[5])],SIe=[0,_oe,_C(KCe[2],yIe[4])],EIe=[0,Noe,_C(KCe[2],gIe[2])],TIe=[0,koe,ewe(Dve,yIe[3])],AIe=[0,Coe,ewe(Zwe,yIe[2])];return nwe(voe,hIe[1],[0,[0,woe,gIe[1]],AIe,TIe,EIe,SIe,xIe])}function Twe(nIe,rIe){var sIe=rIe[2],iIe=[0,Ioe,QCe(mve,sIe[4])],oIe=[0,joe,Ive(sIe[3])],lIe=[0,Loe,ewe(Rve,sIe[2])],pIe=[0,[0,Doe,Qwe(sIe[1])],lIe,oIe,iIe];return nwe(Roe,rIe[1],pIe)}function Awe(nIe,rIe){var sIe=rIe[2],iIe=sIe[1],oIe=0===iIe[0]?Qwe(iIe[1]):jve(iIe[1]),lIe=[0,[0,Yoe,oIe],[0,Ooe,ewe(Yve,sIe[2])]];return nwe(Foe,rIe[1],lIe)}function Pwe(nIe,rIe){var sIe=rIe[2],iIe=rIe[1];switch(sIe[0]){case 0:var oIe=sIe[1],lIe=[0,Moe,ewe(Dve,oIe[2])];return nwe(Boe,iIe,[0,[0,Voe,QCe(gve,oIe[1])],lIe]);case 1:var pIe=sIe[1],dIe=[0,Uoe,ewe(Dve,pIe[2])],cIe=pIe[1];return nwe(Woe,iIe,[0,[0,Xoe,QCe(function(fIe){return ewe(yve,fIe)},cIe)],dIe]);case 2:var uIe=sIe[1],mIe=[0,qoe,Zwe(uIe[2])];return nwe(zoe,iIe,[0,[0,Joe,fve(uIe[1])],mIe]);case 3:return 50>nIe?pwe(1+nIe,iIe,sIe[1]):$k(pwe,[0,iIe,sIe[1]]);default:return 50>nIe?iwe(1+nIe,sIe[1]):$k(iwe,[0,sIe[1]]);}}function _we(nIe,rIe){var sIe=rIe[2],iIe=rIe[1];if(sIe){var oIe=sIe[1],lIe=[0,[0,Hoe,fve(oIe[2][1])]],pIe=nwe(Goe,oIe[1],lIe),dIe=KC(Sw([0,pIe,Sw(Tw(fve,iIe))]));return _C(KCe[4],dIe)}return QCe(fve,iIe)}function Nwe(nIe,rIe){if(0===rIe[0])return 50>nIe?Pwe(1+nIe,rIe[1]):$k(Pwe,[0,rIe[1]]);var sIe=rIe[1],iIe=[0,[0,Zoe,fve(sIe[2][1])]];return nwe(Koe,sIe[1],iIe)}function kwe(nIe,rIe){if(0===rIe[0]){var sIe=rIe[1],iIe=sIe[2],oIe=iIe[1];switch(oIe[0]){case 0:var lIe=[0,Eve(oIe[1]),0];break;case 1:var lIe=[0,Qwe(oIe[1]),0];break;default:var lIe=[0,Zwe(oIe[1]),1];}var pIe=iIe[2];switch(pIe[0]){case 0:var dIe=[0,Zwe(pIe[1]),Qoe];break;case 1:var dIe=[0,Kwe(pIe[1]),$oe];break;default:var dIe=[0,Kwe(pIe[1]),ele];}var cIe=[0,tle,_C(KCe[2],lIe[2])],uIe=[0,ale,_C(KCe[2],iIe[4])],mIe=[0,nle,_C(KCe[2],iIe[3])],fIe=[0,rle,_C(KCe[1],dIe[2])];return nwe(ole,sIe[1],[0,[0,ile,lIe[1]],[0,sle,dIe[1]],fIe,mIe,uIe,cIe])}var hIe=rIe[1],yIe=[0,[0,lle,Zwe(hIe[2][1])]];return nwe(ple,hIe[1],yIe)}function Cwe(nIe,rIe){if(0===rIe[0]){var sIe=rIe[1],iIe=sIe[2],oIe=iIe[1];switch(oIe[0]){case 0:var lIe=[0,Eve(oIe[1]),0];break;case 1:var lIe=[0,Qwe(oIe[1]),0];break;default:var lIe=[0,Zwe(oIe[1]),1];}var pIe=[0,dle,_C(KCe[2],lIe[2])],dIe=[0,cle,_C(KCe[2],iIe[3])],cIe=[0,ule,_C(KCe[2],0)],uIe=[0,fle,_C(KCe[1],mle)],mIe=[0,hle,fve(iIe[2])];return nwe(ble,sIe[1],[0,[0,yle,lIe[1]],mIe,uIe,cIe,dIe,pIe])}var fIe=rIe[1],hIe=[0,[0,gle,fve(fIe[2][1])]];return nwe(xle,fIe[1],hIe)}function wwe(nIe,rIe){if(0===rIe[0])return 50>nIe?iwe(1+nIe,rIe[1]):$k(iwe,[0,rIe[1]]);var sIe=rIe[1],iIe=[0,[0,Sle,Zwe(sIe[2][1])]];return nwe(Ele,sIe[1],iIe)}function vwe(nIe,rIe){var sIe=rIe[2],iIe=[0,Tle,_C(KCe[2],sIe[3])],oIe=[0,Ale,Zwe(sIe[2])],lIe=[0,[0,Ple,fve(sIe[1])],oIe,iIe];return nwe(_le,rIe[1],lIe)}function Iwe(nIe,rIe){var sIe=rIe[2],iIe=sIe[2],oIe=sIe[1],lIe=rIe[1];if("number"==typeof oIe)var pIe=KCe[6];else switch(oIe[0]){case 0:var pIe=_C(KCe[1],oIe[1]);break;case 1:var pIe=_C(KCe[2],oIe[1]);break;case 2:var pIe=_C(KCe[5],oIe[1]);break;default:var dIe=oIe[1],pIe=IC(KCe[7],lIe,dIe[1],dIe[2]);}if("number"==typeof oIe)var cIe=0;else if(3===oIe[0])var uIe=oIe[1],mIe=[0,Nle,_C(KCe[1],uIe[2])],fIe=[0,[0,kle,_C(KCe[1],uIe[1])],mIe],hIe=[0,Cle,_C(KCe[3],fIe)],yIe=[0,[0,vle,pIe],[0,wle,_C(KCe[1],iIe)],hIe],cIe=1;else var cIe=0;if(!cIe)var yIe=[0,[0,jle,pIe],[0,Ile,_C(KCe[1],iIe)]];return nwe(Lle,lIe,yIe)}function jwe(nIe,rIe){var sIe=rIe[2],iIe=[0,Dle,QCe(Zwe,sIe[2])],oIe=[0,[0,Rle,QCe(Ave,sIe[1])],iIe];return nwe(Ole,rIe[1],oIe)}function Lwe(nIe,rIe){var sIe=rIe[2],iIe=[0,Yle,_C(KCe[1],sIe[1][2])],oIe=[0,[0,Fle,_C(KCe[1],sIe[1][1])],iIe],lIe=_C(KCe[3],oIe),pIe=[0,[0,Vle,lIe],[0,Mle,_C(KCe[2],sIe[2])]];return nwe(Ble,rIe[1],pIe)}function Dwe(nIe,rIe){var sIe=rIe[2];switch(sIe[2]){case 0:var iIe=qle;break;case 1:var iIe=Jle;break;default:var iIe=zle;}var oIe=[0,Hle,_C(KCe[1],iIe)],lIe=[0,[0,Gle,QCe(_ve,sIe[1])],oIe];return nwe(Zle,rIe[1],lIe)}function Rwe(nIe,rIe){var sIe=rIe[2],iIe=[0,Kle,ewe(Zwe,sIe[2])],oIe=[0,[0,Qle,fve(sIe[1])],iIe];return nwe($le,rIe[1],oIe)}function Owe(nIe,rIe){return 0===rIe[2]?_C(KCe[1],tpe):_C(KCe[1],epe)}function Ywe(nIe,rIe){var sIe=rIe[2],iIe=rIe[1];if("number"==typeof sIe)return 0===sIe?nwe(ape,iIe,[0]):1===sIe?nwe(npe,iIe,[0]):2===sIe?nwe(rpe,iIe,[0]):3===sIe?nwe(spe,iIe,[0]):4===sIe?nwe(ipe,iIe,[0]):5===sIe?nwe(ope,iIe,[0]):6===sIe?nwe(lpe,iIe,[0]):7===sIe?nwe(ppe,iIe,[0]):nwe(Sde,iIe,[0]);switch(sIe[0]){case 0:return nwe(cpe,iIe,[0,[0,dpe,kve(sIe[1])]]);case 1:return 50>nIe?Fwe(1+nIe,[0,iIe,sIe[1]]):$k(Fwe,[0,[0,iIe,sIe[1]]]);case 2:return 50>nIe?Bwe(1+nIe,[0,iIe,sIe[1]]):$k(Bwe,[0,[0,iIe,sIe[1]]]);case 3:return nwe(Zpe,iIe,[0,[0,Gpe,kve(sIe[1])]]);case 4:return 50>nIe?Xwe(1+nIe,[0,iIe,sIe[1]]):$k(Xwe,[0,[0,iIe,sIe[1]]]);case 5:return nwe(rde,iIe,[0,[0,nde,QCe(kve,[0,sIe[1],[0,sIe[2],sIe[3]]])]]);case 6:return nwe(ide,iIe,[0,[0,sde,QCe(kve,[0,sIe[1],[0,sIe[2],sIe[3]]])]]);case 7:return nwe(lde,iIe,[0,[0,ode,kve(sIe[1])]]);case 8:return nwe(dde,iIe,[0,[0,pde,QCe(kve,sIe[1])]]);case 9:var oIe=sIe[1],lIe=[0,cde,_C(KCe[1],oIe[2])];return nwe(mde,iIe,[0,[0,ude,_C(KCe[1],oIe[1])],lIe]);case 10:var pIe=sIe[1],dIe=[0,fde,_C(KCe[1],pIe[2])];return nwe(yde,iIe,[0,[0,hde,_C(KCe[5],pIe[1])],dIe]);default:var cIe=sIe[1],uIe=[0,bde,_C(KCe[1],cIe[2])];return nwe(xde,iIe,[0,[0,gde,_C(KCe[2],cIe[1])],uIe]);}}function Fwe(nIe,rIe){var sIe=rIe[2],iIe=sIe[1],oIe=[0,upe,ewe(Rve,sIe[3])],lIe=[0,mpe,ewe(vve,iIe[2])],pIe=[0,fpe,kve(sIe[2])],dIe=[0,[0,hpe,QCe(wve,iIe[1])],pIe,lIe,oIe];return nwe(ype,rIe[1],dIe)}function Mwe(nIe,rIe){var sIe=rIe[2],iIe=[0,bpe,_C(KCe[2],sIe[3])],oIe=[0,gpe,kve(sIe[2])],lIe=[0,[0,xpe,ewe(Qwe,sIe[1])],oIe,iIe];return nwe(Spe,rIe[1],lIe)}function Vwe(nIe,rIe){return 50>nIe?Mwe(1+nIe,rIe[2][1]):$k(Mwe,[0,rIe[2][1]])}function Bwe(nIe,rIe){var sIe=rIe[2],iIe=sIe[2],oIe=_w(function(hIe,yIe){var bIe=hIe[3],gIe=hIe[2],xIe=hIe[1];switch(yIe[0]){case 0:var SIe=yIe[1],EIe=SIe[2],TIe=EIe[1];switch(TIe[0]){case 0:var AIe=Eve(TIe[1]);break;case 1:var AIe=Qwe(TIe[1]);break;default:var AIe=VC(kpe);}var PIe=EIe[2];switch(PIe[0]){case 0:var _Ie=[0,kve(PIe[1]),Cpe];break;case 1:var NIe=PIe[1],_Ie=[0,Cve([0,NIe[1],NIe[2]]),wpe];break;default:var kIe=PIe[1],_Ie=[0,Cve([0,kIe[1],kIe[2]]),vpe];}var CIe=[0,Ipe,_C(KCe[1],_Ie[2])],wIe=[0,jpe,ewe(Nve,EIe[6])],vIe=[0,Lpe,_C(KCe[2],EIe[4])],IIe=[0,Dpe,_C(KCe[2],EIe[3])];return[0,[0,nwe(Ype,SIe[1],[0,[0,Ope,AIe],[0,Rpe,_Ie[1]],IIe,vIe,wIe,CIe]),xIe],gIe,bIe];case 1:var jIe=yIe[1],LIe=[0,[0,Fpe,Lve(jIe[2][1])]];return[0,[0,nwe(Mpe,jIe[1],LIe),xIe],gIe,bIe];case 2:var DIe=yIe[1],RIe=DIe[2],OIe=[0,Vpe,ewe(Nve,RIe[5])],YIe=[0,Bpe,_C(KCe[2],RIe[4])],FIe=[0,Upe,kve(RIe[3])],MIe=[0,Xpe,kve(RIe[2])],VIe=[0,[0,Wpe,ewe(Qwe,RIe[1])],MIe,FIe,YIe,OIe];return[0,xIe,[0,nwe(qpe,DIe[1],VIe),gIe],bIe];default:var BIe=yIe[1],UIe=BIe[2],XIe=[0,Jpe,_C(KCe[2],UIe[2])],WIe=[0,[0,zpe,Cve(UIe[1])],XIe];return[0,xIe,gIe,[0,nwe(Hpe,BIe[1],WIe),bIe]];}},Epe,iIe),lIe=KC(Sw(oIe[3])),pIe=[0,Tpe,_C(KCe[4],lIe)],dIe=KC(Sw(oIe[2])),cIe=[0,Ape,_C(KCe[4],dIe)],uIe=KC(Sw(oIe[1])),mIe=[0,Ppe,_C(KCe[4],uIe)],fIe=[0,[0,_pe,_C(KCe[2],sIe[1])],mIe,cIe,pIe];return nwe(Npe,rIe[1],fIe)}function Uwe(nIe,rIe){var sIe=rIe[2],iIe=sIe[1],oIe=0===iIe[0]?Qwe(iIe[1]):jve(iIe[1]),lIe=[0,[0,Qpe,oIe],[0,Kpe,Qwe(sIe[2])]];return nwe($pe,rIe[1],lIe)}function Xwe(nIe,rIe){var sIe=rIe[2],iIe=sIe[1],oIe=0===iIe[0]?Qwe(iIe[1]):jve(iIe[1]),lIe=[0,[0,tde,oIe],[0,ede,ewe(Yve,sIe[2])]];return nwe(ade,rIe[1],lIe)}function Wwe(nIe,rIe){var sIe=[0,[0,Ede,kve(rIe[2])]];return nwe(Tde,rIe[1],sIe)}function qwe(nIe,rIe){var sIe=[0,[0,Ade,QCe(Ove,rIe[2][1])]];return nwe(Pde,rIe[1],sIe)}function Jwe(nIe,rIe){var sIe=rIe[2],iIe=[0,_de,ewe(kve,sIe[4])],oIe=[0,Nde,ewe(Nve,sIe[3])],lIe=[0,kde,ewe(Dve,sIe[2])],pIe=[0,[0,Cde,_C(KCe[1],sIe[1])],lIe,oIe,iIe];return nwe(wde,rIe[1],pIe)}function zwe(nIe,rIe){var sIe=[0,[0,vde,QCe(kve,rIe[2][1])]];return nwe(Ide,rIe[1],sIe)}function Hwe(nIe,rIe){var sIe=rIe[2],iIe=[0,jde,QCe(Hve,sIe[3])],oIe=[0,Lde,ewe(Vve,sIe[2])],lIe=sIe[1],pIe=lIe[2],dIe=[0,Ode,_C(KCe[2],pIe[2])],cIe=[0,Yde,QCe(Mve,pIe[3])],uIe=[0,[0,Fde,Gve(pIe[1])],cIe,dIe],mIe=[0,[0,Dde,nwe(Mde,lIe[1],uIe)],oIe,iIe];return nwe(Rde,rIe[1],mIe)}function Gwe(nIe){return Qk(swe(0,nIe))}function Zwe(nIe){return Qk(iwe(0,nIe))}function Kwe(nIe){return Qk(owe(0,nIe))}function Qwe(nIe){return Qk(lwe(0,nIe))}function $we(nIe,rIe){return Qk(pwe(0,nIe,rIe))}function eve(nIe){return Qk(dwe(0,nIe))}function tve(nIe){return Qk(cwe(0,nIe))}function ave(nIe){return Qk(uwe(0,nIe))}function nve(nIe){return Qk(mwe(0,nIe))}function rve(nIe){return Qk(fwe(0,nIe))}function sve(nIe){return Qk(hwe(0,nIe))}function ive(nIe){return Qk(ywe(0,nIe))}function ove(nIe){return Qk(bwe(0,nIe))}function lve(nIe){return Qk(gwe(0,nIe))}function pve(nIe){return Qk(xwe(0,nIe))}function dve(nIe){return Qk(Swe(0,nIe))}function cve(nIe){return Qk(Ewe(0,nIe))}function uve(nIe){return Qk(Twe(0,nIe))}function mve(nIe){return Qk(Awe(0,nIe))}function fve(nIe){return Qk(Pwe(0,nIe))}function hve(nIe){return Qk(_we(0,nIe))}function yve(nIe){return Qk(Nwe(0,nIe))}function bve(nIe){return Qk(kwe(0,nIe))}function gve(nIe){return Qk(Cwe(0,nIe))}function xve(nIe){return Qk(wwe(0,nIe))}function Sve(nIe){return Qk(vwe(0,nIe))}function Eve(nIe){return Qk(Iwe(0,nIe))}function Tve(nIe){return Qk(jwe(0,nIe))}function Ave(nIe){return Qk(Lwe(0,nIe))}function Pve(nIe){return Qk(Dwe(0,nIe))}function _ve(nIe){return Qk(Rwe(0,nIe))}function Nve(nIe){return Qk(Owe(0,nIe))}function kve(nIe){return Qk(Ywe(0,nIe))}function Cve(nIe){return Qk(Fwe(0,nIe))}function wve(nIe){return Qk(Mwe(0,nIe))}function vve(nIe){return Qk(Vwe(0,nIe))}function Ive(nIe){return Qk(Bwe(0,nIe))}function jve(nIe){return Qk(Uwe(0,nIe))}function Lve(nIe){return Qk(Xwe(0,nIe))}function Dve(nIe){return Qk(Wwe(0,nIe))}function Rve(nIe){return Qk(qwe(0,nIe))}function Ove(nIe){return Qk(Jwe(0,nIe))}function Yve(nIe){return Qk(zwe(0,nIe))}function Fve(nIe){return Qk(Hwe(0,nIe))}function Mve(nIe){if(0===nIe[0]){var rIe=nIe[1],sIe=rIe[2],iIe=sIe[1],oIe=0===iIe[0]?$ve(iIe[1]):Qve(iIe[1]),lIe=[0,[0,Xde,oIe],[0,Ude,ewe(Zve,sIe[2])]];return nwe(Wde,rIe[1],lIe)}var pIe=nIe[1],dIe=[0,[0,qde,Zwe(pIe[2][1])]];return nwe(Jde,pIe[1],dIe)}function Vve(nIe){var rIe=[0,[0,Vde,Gve(nIe[2][1])]];return nwe(Bde,nIe[1],rIe)}function Bve(nIe,rIe){var sIe=rIe[2],iIe=rIe[1];switch(sIe[0]){case 0:return Fve([0,iIe,sIe[1]]);case 1:return 50>nIe?Wve(1+nIe,[0,iIe,sIe[1]]):$k(Wve,[0,[0,iIe,sIe[1]]]);default:var oIe=sIe[1],lIe=[0,Zde,_C(KCe[1],oIe[2])];return nwe(Qde,iIe,[0,[0,Kde,_C(KCe[1],oIe[1])],lIe]);}}function Uve(nIe,rIe){switch(rIe[0]){case 0:return 50>nIe?zve(1+nIe,rIe[1]):$k(zve,[0,rIe[1]]);case 1:return 50>nIe?Jve(1+nIe,rIe[1]):$k(Jve,[0,rIe[1]]);default:return 50>nIe?qve(1+nIe,rIe[1]):$k(qve,[0,rIe[1]]);}}function Xve(nIe,rIe){return 0===rIe[0]?Eve([0,rIe[1],rIe[2]]):50>nIe?Wve(1+nIe,[0,rIe[1],rIe[2]]):$k(Wve,[0,[0,rIe[1],rIe[2]]])}function Wve(nIe,rIe){var sIe=rIe[2][1],iIe=0===sIe[0]?Zwe(sIe[1]):nwe(zde,sIe[1],[0]);return nwe(Gde,rIe[1],[0,[0,Hde,iIe]])}function qve(nIe,rIe){var sIe=rIe[2],iIe=sIe[1],oIe=0===iIe[0]?$ve(iIe[1]):Kve(iIe[1]),lIe=[0,[0,ece,oIe],[0,$de,$ve(sIe[2])]];return nwe(tce,rIe[1],lIe)}function Jve(nIe,rIe){var sIe=rIe[2],iIe=[0,ace,$ve(sIe[2])],oIe=[0,[0,nce,$ve(sIe[1])],iIe];return nwe(rce,rIe[1],oIe)}function zve(nIe,rIe){var sIe=[0,[0,sce,_C(KCe[1],rIe[2][1])]];return nwe(ice,rIe[1],sIe)}function Hve(nIe){return Qk(Bve(0,nIe))}function Gve(nIe){return Qk(Uve(0,nIe))}function Zve(nIe){return Qk(Xve(0,nIe))}function Kve(nIe){return Qk(qve(0,nIe))}function Qve(nIe){return Qk(Jve(0,nIe))}function $ve(nIe){return Qk(zve(0,nIe))}function eIe(nIe){var rIe=nIe[2],sIe=rIe[2],iIe=sIe?Qwe(sIe[1]):Qwe(rIe[1]),oIe=[0,[0,lce,Qwe(rIe[1])],[0,oce,iIe]];return nwe(pce,nIe[1],oIe)}function tIe(nIe){var rIe=nIe[2],sIe=0===rIe[0]?[0,Sce,rIe[1]]:[0,Ece,rIe[1]],iIe=[0,[0,Tce,_C(KCe[1],sIe[2])]];return nwe(sIe[1],nIe[1],iIe)}function aIe(nIe){var rIe=nIe[2],sIe=rIe?[0,Pce,[0,[0,Ace,Zwe(rIe[1])]]]:[0,_ce,[0]];return nwe(sIe[1],nIe[1],sIe[2])}return[0,function(rIe){var sIe=[0,sae,QCe(tIe,rIe[3])],iIe=[0,[0,iae,rwe(rIe[2])],sIe];return nwe(oae,rIe[1],iIe)},Zwe,function(rIe){return QCe(function(sIe){var iIe=sIe[2];if("number"==typeof iIe){var oIe=iIe;if(34<=oIe)switch(oIe){case 34:var lIe=ete;break;case 35:var lIe=tte;break;case 36:var lIe=ate;break;case 37:var lIe=nte;break;case 38:var lIe=rte;break;case 39:var lIe=ste;break;case 40:var lIe=ite;break;case 41:var lIe=ote;break;case 42:var lIe=lte;break;case 43:var lIe=pte;break;case 44:var lIe=dte;break;case 45:var lIe=cte;break;case 46:var lIe=JC(mte,ute);break;case 47:var lIe=JC(hte,fte);break;case 48:var lIe=yte;break;case 49:var lIe=bte;break;case 50:var lIe=gte;break;case 51:var lIe=xte;break;case 52:var lIe=Ste;break;case 53:var lIe=Ete;break;case 54:var lIe=Tte;break;case 55:var lIe=Ate;break;case 56:var lIe=Pte;break;case 57:var lIe=_te;break;case 58:var lIe=Nte;break;case 59:var lIe=kte;break;case 60:var lIe=Cte;break;case 61:var lIe=wte;break;case 62:var lIe=vte;break;case 63:var lIe=Ite;break;case 64:var lIe=JC(Lte,jte);break;case 65:var lIe=Dte;break;default:var lIe=Rte;}else switch(oIe){case 0:var lIe=xee;break;case 1:var lIe=See;break;case 2:var lIe=Eee;break;case 3:var lIe=Tee;break;case 4:var lIe=Aee;break;case 5:var lIe=Pee;break;case 6:var lIe=_ee;break;case 7:var lIe=Nee;break;case 8:var lIe=kee;break;case 9:var lIe=Cee;break;case 10:var lIe=wee;break;case 11:var lIe=vee;break;case 12:var lIe=Iee;break;case 13:var lIe=jee;break;case 14:var lIe=Lee;break;case 15:var lIe=Dee;break;case 16:var lIe=Ree;break;case 17:var lIe=Oee;break;case 18:var lIe=Yee;break;case 19:var lIe=JC(Mee,Fee);break;case 20:var lIe=Vee;break;case 21:var lIe=Bee;break;case 22:var lIe=Uee;break;case 23:var lIe=Xee;break;case 24:var lIe=Wee;break;case 25:var lIe=qee;break;case 26:var lIe=Jee;break;case 27:var lIe=zee;break;case 28:var lIe=Hee;break;case 29:var lIe=Gee;break;case 30:var lIe=Zee;break;case 31:var lIe=Kee;break;case 32:var lIe=Qee;break;default:var lIe=$ee;}}else switch(iIe[0]){case 0:var lIe=JC(Ote,iIe[1]);break;case 1:var lIe=JC(Yte,iIe[1]);break;case 2:var pIe=iIe[2],dIe=iIe[1],lIe=NC(Pj(Fte),dIe,pIe);break;case 3:var lIe=JC(Vte,JC(iIe[1],Mte));break;case 4:var lIe=JC(Ute,JC(iIe[1],Bte));break;case 5:var cIe=JC(Wte,JC(iIe[2],Xte)),lIe=JC(iIe[1],cIe);break;case 6:var lIe=JC(qte,iIe[1]);break;default:var uIe=iIe[1],lIe=_C(Pj(Jte),uIe);}var mIe=[0,Nce,_C(KCe[1],lIe)],fIe=[0,[0,kce,awe(sIe[1])],mIe];return _C(KCe[3],fIe)},rIe)}]}function Jj(KCe,QCe){QCe[6]=0|QCe[6]-KCe;var $Ce=QCe[12];return QCe[12]=[0,$Ce[1],$Ce[2],$Ce[3],0|$Ce[4]-KCe],0}function Zj(KCe,QCe){return[0,QCe[1],KCe,QCe[3],QCe[4],QCe[5]]}function Kj(KCe,QCe){return Pk(KCe,QCe[3])?[0,QCe[1],QCe[2],KCe,QCe[4],QCe[5]]:QCe}function Qj(KCe,QCe){return Yj(KCe[1],QCe[11],QCe[12])}function $j(KCe){var QCe=KCe[2],$Ce=KCe[1],ewe=$Ce[5],twe=ewe===VH?$Ce:[0,$Ce[1],$Ce[2],$Ce[3],$Ce[4],VH];if("number"==typeof QCe)var awe=0;else switch(QCe[0]){case 2:var nwe=QCe[1],rwe=[0,nwe[1],nwe[2][3]],awe=1;break;case 3:var swe=QCe[1],iwe=JC(MEe,swe[3]),owe=JC(VEe,JC(swe[2],iwe)),rwe=[0,swe[1],owe],awe=1;break;case 1:case 4:var lwe=QCe[1],rwe=[0,lwe[1],lwe[3]],awe=1;break;default:var awe=0;}if(!awe)var pwe=$w(twe[2]),rwe=[0,Qj(twe,twe[2]),pwe];var dwe=Sw(ewe[2]),cwe=Sw(ewe[1]);return[0,twe,[0,QCe,rwe[1],rwe[2],cwe,dwe]]}function SL(KCe,QCe,$Ce){return[0,KCe[1],KCe[2],KCe[3],KCe[4],[0,[0,[0,QCe,$Ce],KCe[5][1]],KCe[5][2]]]}function TL(KCe,QCe,$Ce){return SL(KCe,QCe,[1,$Ce])}function PL(KCe,QCe){return SL(KCe,QCe,FEe)}function _L(KCe,QCe,$Ce,ewe){var twe=Qj(KCe,QCe);return Jj(V_($Ce),QCe),[0,PL(KCe,twe),ewe]}function NL(KCe){var QCe=KCe[5];if(QCe)return[0,KCe[1],KCe[2],KCe[3],KCe[4],QCe[2]];throw nCe}function IL(KCe){var QCe=[0,0];return Zw(function($Ce){return QCe[1]=[0,$Ce,QCe[1]],0},KCe),[0,0,0,0,0,Sw(QCe[1])]}function LL(KCe){var QCe=KCe[5];if(QCe){var $Ce=0|QCe[1]+TM;if(!(2<$Ce>>>0))switch($Ce){case 0:return NL(KCe);case 1:break;default:var ewe=NL(KCe);return[0,1,ewe[2],ewe[3],ewe[4],ewe[5]];}}return KCe}function RL(KCe){var QCe=KCe[5];if(QCe&&48===QCe[1]){var $Ce=QCe[2];if($Ce){var ewe=$Ce[1],twe=88===ewe?0:MF===ewe?0:1;if(!twe)return NL(NL(KCe))}}throw nCe}function OL(KCe){var QCe=Jw(YEe,Tw(Lw,KCe[5]));try{var $Ce=W_(QCe)}catch(ewe){if(ewe=PC(ewe),ewe[1]===LH)throw nCe;throw ewe}return[0,KCe[1],KCe[2],$Ce,KCe[4],0]}function YL(KCe){for(var QCe=KCe;;){var $Ce=QCe[5];if($Ce){var ewe=$Ce[1];if(81<=ewe){if(95===ewe){var QCe=NL(QCe);continue}var twe=$M===ewe?1:0}else{if(46===ewe){if(0===QCe[4]){var awe=NL(QCe),QCe=[0,awe[1],awe[2],awe[3],REe,awe[5]];continue}throw nCe}var twe=80<=ewe?1:0}if(twe)return OL(NL(QCe));if(!(48<=ewe))var nwe=0;else if(57>>0)throw[0,YH,DEe];return 0|KCe-48}function JL(KCe){if(65<=KCe){if(97<=KCe){if(!(QW<=KCe))return 0|(0|KCe-97)+10;}else if(!(71<=KCe))return 0|(0|KCe-65)+10;}else if(!(9<(0|KCe+UB)>>>0))return 0|KCe-48;throw[0,YH,LEe]}function ZL(KCe){if(PX<=KCe){var QCe=[0,Iw(QF|63&KCe),0],$Ce=[0,Iw(QF|63&(0|KCe>>>6)),QCe],ewe=[0,Iw(QF|63&(0|KCe>>>12)),$Ce];return[0,Iw(0|(SU|KCe>>>18)),ewe]}if(_U<=KCe){var twe=[0,Iw(QF|63&KCe),0],awe=[0,Iw(QF|63&(0|KCe>>>6)),twe];return[0,Iw(0|(QU|KCe>>>12)),awe]}if(QF<=KCe){var nwe=[0,Iw(QF|63&KCe),0];return[0,Iw(0|(UJ|KCe>>>6)),nwe]}return[0,Iw(KCe),0]}function KL(KCe,QCe,$Ce){if(0===KCe)var ewe=0;else switch(0|KCe-1){case 0:var twe=W_(JC(IEe,QCe)),ewe=1;break;case 2:var twe=VL(QCe),ewe=1;break;default:var ewe=0;}if(!ewe)var twe=W_(QCe);var awe=Yk($Ce,jEe)?twe:-twe;return[5,KCe,awe]}function QL(KCe,QCe,$Ce){return $Ce[10]=PN(8,-1),50>KCe?$L(1+KCe,QCe,$Ce,0):$k($L,[0,QCe,$Ce,0])}function $L(KCe,QCe,$Ce,ewe){for(var twe=ewe;;){var awe=Qw(UH,twe,$Ce);if(77>>0){_C($Ce[1],$Ce);var twe=awe;continue}var nwe=awe;if(39<=nwe)switch(nwe){case 39:return[0,QCe,90];case 40:return[0,QCe,91];case 41:return[0,QCe,86];case 42:return[0,QCe,87];case 43:return[0,QCe,YV];case 44:return[0,QCe,Yq];case 45:return[0,QCe,68];case 46:return[0,QCe,94];case 47:return[0,QCe,67];case 48:return[0,QCe,66];case 49:return[0,QCe,96];case 50:return[0,QCe,95];case 51:return[0,QCe,77];case 52:return[0,QCe,76];case 53:return[0,QCe,74];case 54:return[0,QCe,75];case 55:return[0,QCe,72];case 56:return[0,QCe,71];case 57:return[0,QCe,70];case 58:return[0,QCe,69];case 59:return[0,QCe,92];case 60:return[0,QCe,93];case 61:return[0,QCe,97];case 62:return[0,QCe,98];case 63:return[0,QCe,WW];case 64:return[0,QCe,VU];case 65:return[0,QCe,KX];case 66:return[0,QCe,83];case 67:return[0,QCe,85];case 68:return[0,QCe,84];case 69:return[0,QCe,QW];case 70:return[0,QCe,LY];case 71:return[0,QCe,78];case 72:return[0,QCe,12];case 73:return[0,QCe,73];case 74:return[0,QCe,99];case 75:return[0,QCe,14];case 76:var rwe=QCe[3]?SL(QCe,Qj(QCe,$Ce),4):QCe;return[0,rwe,YY];default:return[0,PL(QCe,Qj(QCe,$Ce)),UM];}switch(nwe){case 0:return Pv($Ce),50>KCe?QL(1+KCe,QCe,$Ce):$k(QL,[0,QCe,$Ce]);case 1:return 50>KCe?QL(1+KCe,PL(QCe,Qj(QCe,$Ce)),$Ce):$k(QL,[0,PL(QCe,Qj(QCe,$Ce)),$Ce]);case 2:return XL($Ce),50>KCe?QL(1+KCe,QCe,$Ce):$k(QL,[0,QCe,$Ce]);case 3:var swe=Qj(QCe,$Ce),iwe=Lv(Qq),owe=LD(QCe,iwe,$Ce);return 50>KCe?QL(1+KCe,UL(owe[1],swe,owe[2],iwe,1),$Ce):$k(QL,[0,UL(owe[1],swe,owe[2],iwe,1),$Ce]);case 4:var lwe=KA($Ce[10],0)[1],pwe=Sv($Ce,0|$Ce[5]+2,lwe),dwe=$Ce[6],cwe=Sv($Ce,KA($Ce[10],0)[1],dwe),uwe=Sv($Ce,$Ce[5],$Ce[6]);if(QCe[4]){var mwe=QCe[3]?TL(QCe,Qj(QCe,$Ce),uwe):QCe,fwe=Kj(1,mwe);return Uk(cwe,Yce)?50>KCe?QL(1+KCe,fwe,$Ce):$k(QL,[0,fwe,$Ce]):[0,fwe,80]}var hwe=Qj(QCe,$Ce),ywe=Lv(Qq);Mv(ywe,pwe),Mv(ywe,cwe);var bwe=LD(QCe,ywe,$Ce);return 50>KCe?QL(1+KCe,UL(bwe[1],hwe,bwe[2],ywe,1),$Ce):$k(QL,[0,UL(bwe[1],hwe,bwe[2],ywe,1),$Ce]);case 5:return QCe[3]?50>KCe?QL(1+KCe,Kj(0,QCe),$Ce):$k(QL,[0,Kj(0,QCe),$Ce]):(Jj(1,$Ce),[0,QCe,WW]);case 6:var gwe=Qj(QCe,$Ce),xwe=Lv(Qq),Swe=RD(QCe,xwe,$Ce);return 50>KCe?QL(1+KCe,UL(Swe[1],gwe,Swe[2],xwe,0),$Ce):$k(QL,[0,UL(Swe[1],gwe,Swe[2],xwe,0),$Ce]);case 7:return 0===$Ce[5]?50>KCe?QL(1+KCe,RD(QCe,Lv(Qq),$Ce)[1],$Ce):$k(QL,[0,RD(QCe,Lv(Qq),$Ce)[1],$Ce]):[0,QCe,UM];case 8:var Ewe=Tv($Ce,$Ce[5]),Twe=Qj(QCe,$Ce),Awe=Lv(Qq),Pwe=Lv(Qq);Yv(Pwe,Ewe);var _we=ND(QCe,Ewe,Awe,Pwe,0,$Ce),Nwe=_we[3],kwe=Rv(Pwe),Cwe=Rv(Awe),wwe=[1,[0,Mj(Twe,_we[2]),Cwe,kwe,Nwe]];return[0,_we[1],wwe];case 9:var vwe=Lv(Qq),Iwe=Lv(Qq),jwe=Lv(Qq);Mv(jwe,$w($Ce));var Lwe=YD(QCe,Qj(QCe,$Ce),vwe,Iwe,jwe,$Ce),Dwe=Lwe[3],Rwe=Rv(jwe),Owe=Rv(Iwe),Ywe=[0,Rv(vwe),Owe,Rwe];return[0,Lwe[1],[2,[0,Lwe[2],Ywe,Dwe]]];case 10:var Fwe=$Ce[6];return _L(QCe,$Ce,Sv($Ce,KA($Ce[10],0)[1],Fwe),Fce);case 11:return[0,QCe,Mce];case 12:var Mwe=$Ce[6];return _L(QCe,$Ce,Sv($Ce,KA($Ce[10],0)[1],Mwe),Vce);case 13:return[0,QCe,Bce];case 14:var Vwe=$Ce[6];return _L(QCe,$Ce,Sv($Ce,KA($Ce[10],0)[1],Vwe),Uce);case 15:return[0,QCe,Xce];case 22:var Bwe=Sv($Ce,$Ce[5],$Ce[6]);XL($Ce);try{var Uwe=[0,QCe,Rj(rCe,Bwe)];return Uwe}catch(Wwe){if(Wwe=PC(Wwe),Wwe===OH)return[0,QCe,0];throw Wwe}case 23:return[0,QCe,1];case 24:return[0,QCe,2];case 25:return[0,QCe,5];case 26:return[0,QCe,6];case 27:return[0,QCe,7];case 28:return[0,QCe,8];case 29:return[0,QCe,13];case 30:return[0,QCe,11];case 31:return[0,QCe,9];case 32:return[0,QCe,10];case 33:return[0,QCe,80];case 34:return[0,QCe,79];case 35:return[0,QCe,82];case 36:return[0,QCe,81];case 37:return[0,QCe,88];case 38:return[0,QCe,89];case 16:case 18:case 20:var Xwe=$Ce[6];return _L(QCe,$Ce,Sv($Ce,KA($Ce[10],0)[1],Xwe),Wce);default:return[0,QCe,qce];}}}function SD(KCe,QCe){return Qk(QL(0,KCe,QCe))}function TD(KCe,QCe,$Ce){$Ce[10]=PN(26,-1);var ewe=$Ce[6];KA($Ce[10],17)[18]=ewe;var twe=$Ce[6];KA($Ce[10],16)[17]=twe;var awe=$Ce[6];KA($Ce[10],15)[16]=awe;var nwe=$Ce[6];KA($Ce[10],14)[15]=nwe;var rwe=$Ce[6];KA($Ce[10],13)[14]=rwe;var swe=$Ce[6];KA($Ce[10],12)[13]=swe;var iwe=$Ce[6];KA($Ce[10],11)[12]=iwe;var owe=$Ce[6];KA($Ce[10],10)[11]=owe;var lwe=$Ce[6];KA($Ce[10],9)[10]=lwe;var pwe=$Ce[6];KA($Ce[10],8)[9]=pwe;var dwe=$Ce[6];KA($Ce[10],7)[8]=dwe;var cwe=$Ce[6];KA($Ce[10],6)[7]=cwe;var uwe=$Ce[6];KA($Ce[10],5)[6]=uwe;var mwe=$Ce[6];return KA($Ce[10],4)[5]=mwe,50>KCe?PD(1+KCe,QCe,$Ce,PJ):$k(PD,[0,QCe,$Ce,PJ])}function PD(KCe,QCe,$Ce,ewe){for(var twe=ewe;;){var awe=Qw(UH,twe,$Ce);if(51>>0){_C($Ce[1],$Ce);var twe=awe;continue}switch(awe){case 0:return Pv($Ce),50>KCe?TD(1+KCe,QCe,$Ce):$k(TD,[0,QCe,$Ce]);case 1:return XL($Ce),50>KCe?TD(1+KCe,QCe,$Ce):$k(TD,[0,QCe,$Ce]);case 2:var nwe=Qj(QCe,$Ce),rwe=Lv(Qq),swe=LD(QCe,rwe,$Ce);return 50>KCe?TD(1+KCe,UL(swe[1],nwe,swe[2],rwe,1),$Ce):$k(TD,[0,UL(swe[1],nwe,swe[2],rwe,1),$Ce]);case 3:var iwe=KA($Ce[10],0)[1],owe=Sv($Ce,0|$Ce[5]+2,iwe),lwe=$Ce[6],pwe=Sv($Ce,KA($Ce[10],0)[1],lwe),dwe=Sv($Ce,$Ce[5],$Ce[6]);if(QCe[4]){var cwe=QCe[3]?TL(QCe,Qj(QCe,$Ce),dwe):QCe,uwe=Kj(1,cwe);return Uk(pwe,Jce)?50>KCe?TD(1+KCe,uwe,$Ce):$k(TD,[0,uwe,$Ce]):[0,uwe,80]}var mwe=Qj(QCe,$Ce),fwe=Lv(Qq);Mv(fwe,owe),Mv(fwe,pwe);var hwe=LD(QCe,fwe,$Ce);return 50>KCe?TD(1+KCe,UL(hwe[1],mwe,hwe[2],fwe,1),$Ce):$k(TD,[0,UL(hwe[1],mwe,hwe[2],fwe,1),$Ce]);case 4:return QCe[3]?50>KCe?TD(1+KCe,Kj(0,QCe),$Ce):$k(TD,[0,Kj(0,QCe),$Ce]):(Jj(1,$Ce),[0,QCe,WW]);case 5:var ywe=Qj(QCe,$Ce),bwe=Lv(Qq),gwe=RD(QCe,bwe,$Ce);return 50>KCe?TD(1+KCe,UL(gwe[1],ywe,gwe[2],bwe,1),$Ce):$k(TD,[0,UL(gwe[1],ywe,gwe[2],bwe,1),$Ce]);case 6:var xwe=Tv($Ce,$Ce[5]),Swe=Qj(QCe,$Ce),Ewe=Lv(Qq),Twe=Lv(Qq);Yv(Twe,xwe);var Awe=ND(QCe,xwe,Ewe,Twe,0,$Ce),Pwe=Awe[3],_we=Rv(Twe),Nwe=Rv(Ewe),kwe=[1,[0,Mj(Swe,Awe[2]),Nwe,_we,Pwe]];return[0,Awe[1],kwe];case 7:var Cwe=KA($Ce[10],0)[1],wwe=Sv($Ce,$Ce[5],Cwe),vwe=KA($Ce[10],1)[2],Iwe=Sv($Ce,KA($Ce[10],0)[1],vwe),jwe=$Ce[6],Lwe=Sv($Ce,KA($Ce[10],1)[2],jwe);return _L(QCe,$Ce,Lwe,KL(0,Iwe,wwe));case 8:var Dwe=KA($Ce[10],0)[1],Rwe=Sv($Ce,$Ce[5],Dwe),Owe=$Ce[6];return[0,QCe,KL(0,Sv($Ce,KA($Ce[10],0)[1],Owe),Rwe)];case 9:var Ywe=KA($Ce[10],0)[1],Fwe=Sv($Ce,$Ce[5],Ywe),Mwe=KA($Ce[10],1)[2],Vwe=Sv($Ce,KA($Ce[10],0)[1],Mwe),Bwe=$Ce[6],Uwe=Sv($Ce,KA($Ce[10],1)[2],Bwe);return _L(QCe,$Ce,Uwe,KL(2,Vwe,Fwe));case 10:var Xwe=KA($Ce[10],0)[1],Wwe=Sv($Ce,$Ce[5],Xwe),qwe=$Ce[6];return[0,QCe,KL(2,Sv($Ce,KA($Ce[10],0)[1],qwe),Wwe)];case 11:var Jwe=KA($Ce[10],0)[1],zwe=Sv($Ce,$Ce[5],Jwe),Hwe=KA($Ce[10],1)[2],Gwe=Sv($Ce,KA($Ce[10],0)[1],Hwe),Zwe=$Ce[6],Kwe=Sv($Ce,KA($Ce[10],1)[2],Zwe);return _L(QCe,$Ce,Kwe,KL(1,Gwe,zwe));case 12:var Qwe=KA($Ce[10],0)[1],$we=Sv($Ce,$Ce[5],Qwe),eve=$Ce[6];return[0,QCe,KL(1,Sv($Ce,KA($Ce[10],0)[1],eve),$we)];case 13:var tve=KA($Ce[10],0)[1],ave=Sv($Ce,$Ce[5],tve),nve=KA($Ce[10],1)[2],rve=Sv($Ce,KA($Ce[10],0)[1],nve),sve=$Ce[6],ive=Sv($Ce,KA($Ce[10],1)[2],sve);try{var ove=[0,QCe,KL(3,rve,ave)],lve=ove}catch(Rve){if(Rve=PC(Rve),!kke)throw Rve;var lve=[0,SL(QCe,Qj(QCe,$Ce),59),zce]}return _L(lve[1],$Ce,ive,lve[2]);case 14:var pve=KA($Ce[10],0)[1],dve=Sv($Ce,$Ce[5],pve),cve=$Ce[6],uve=Sv($Ce,KA($Ce[10],0)[1],cve);try{var mve=[0,QCe,KL(3,uve,dve)];return mve}catch(Rve){if(Rve=PC(Rve),kke)return[0,SL(QCe,Qj(QCe,$Ce),59),Hce];throw Rve}case 15:var fve=KA($Ce[10],0)[1],hve=Sv($Ce,$Ce[5],fve),yve=KA($Ce[10],1)[2],bve=Sv($Ce,KA($Ce[10],0)[1],yve),gve=$Ce[6],xve=Sv($Ce,KA($Ce[10],1)[2],gve);return _L(QCe,$Ce,xve,KL(3,bve,hve));case 16:var Sve=KA($Ce[10],0)[1],Eve=Sv($Ce,$Ce[5],Sve),Tve=$Ce[6];return[0,QCe,KL(3,Sv($Ce,KA($Ce[10],0)[1],Tve),Eve)];case 17:var Ave=KA($Ce[10],0)[1],Pve=Sv($Ce,$Ce[5],Ave),_ve=KA($Ce[10],1)[2],Nve=Sv($Ce,KA($Ce[10],0)[1],_ve),kve=$Ce[6],Cve=Sv($Ce,KA($Ce[10],1)[2],kve);return _L(QCe,$Ce,Cve,KL(3,Nve,Pve));case 18:var wve=KA($Ce[10],0)[1],vve=Sv($Ce,KA($Ce[10],1)[2],wve),Ive=KA($Ce[10],2)[3];return[0,QCe,KL(3,Sv($Ce,KA($Ce[10],3)[4],Ive),vve)];case 19:var jve=Sv($Ce,$Ce[5],$Ce[6]);XL($Ce);try{var Lve=[0,QCe,Rj(sCe,jve)];return Lve}catch(Rve){if(Rve=PC(Rve),Rve===OH)return[0,QCe,0];throw Rve}case 20:return[0,QCe,65];case 23:return[0,QCe,1];case 24:return[0,QCe,2];case 25:return[0,QCe,3];case 26:return[0,QCe,4];case 27:return[0,QCe,5];case 28:return[0,QCe,6];case 29:return[0,QCe,13];case 30:return[0,QCe,11];case 31:return[0,QCe,9];case 32:return[0,QCe,10];case 37:return[0,QCe,92];case 38:return[0,QCe,93];case 41:return[0,QCe,WW];case 43:return[0,QCe,83];case 44:return[0,QCe,85];case 45:return[0,QCe,46];case 46:return[0,QCe,12];case 48:return[0,QCe,97];case 49:return[0,QCe,98];case 50:var Dve=QCe[3]?SL(QCe,Qj(QCe,$Ce),4):QCe;return[0,Dve,YY];case 51:return[0,QCe,UM];case 21:case 35:return[0,QCe,7];case 22:case 36:return[0,QCe,8];case 33:case 42:return[0,QCe,80];case 34:case 40:return[0,QCe,79];default:return[0,QCe,78];}}}function _D(KCe,QCe){return Qk(TD(0,KCe,QCe))}function ND(KCe,QCe,$Ce,ewe,twe,awe){var nwe=KCe,rwe=twe;a:for(;;)for(var swe=YJ;;){var iwe=Kw(UH,swe,awe);if(3>>0){_C(awe[1],awe);var swe=iwe;continue}switch(iwe){case 0:var owe=Tv(awe,awe[5]);if(Yv(ewe,owe),QCe===owe)return[0,nwe,Qj(nwe,awe),rwe];Yv($Ce,owe);continue a;case 1:Yv(ewe,Tv(awe,awe[5]));var lwe=ID(nwe,$Ce,awe),pwe=lwe[2];Mv(ewe,$w(awe));var nwe=lwe[1],rwe=pwe||rwe;continue a;case 2:var dwe=Sv(awe,awe[5],awe[6]);Mv(ewe,dwe);var cwe=PL(nwe,Qj(nwe,awe));return Mv($Ce,dwe),[0,cwe,Qj(cwe,awe),rwe];default:var uwe=Tv(awe,awe[5]);Yv(ewe,uwe),Yv($Ce,uwe);continue a;}}}function ID(KCe,QCe,$Ce){for(var ewe=261;;){var twe=Kw(UH,ewe,$Ce);if(17>>0){_C($Ce[1],$Ce);var ewe=twe;continue}switch(twe){case 0:return[0,KCe,0];case 1:return Mv(QCe,Gce),[0,KCe,0];case 2:var awe=Tv($Ce,0|$Ce[5]+1),nwe=JL(Tv($Ce,0|$Ce[5]+2)),rwe=ZL(0|(0|16*JL(awe))+nwe);return Pw(function(vwe){return Yv(QCe,vwe)},rwe),[0,KCe,0];case 3:var swe=Tv($Ce,$Ce[5]),iwe=Tv($Ce,0|$Ce[5]+1),owe=Tv($Ce,0|$Ce[5]+2),lwe=WL(owe),pwe=WL(iwe)<<3,dwe=0|(0|(WL(swe)<<6)+pwe)+lwe;if(YJ<=dwe){var cwe=WL(iwe),uwe=ZL(0|(WL(swe)<<3)+cwe);Pw(function(vwe){return Yv(QCe,vwe)},uwe),Yv(QCe,owe)}else{var mwe=ZL(dwe);Pw(function(vwe){return Yv(QCe,vwe)},mwe)}return[0,KCe,1];case 4:var fwe=Tv($Ce,$Ce[5]),hwe=WL(Tv($Ce,0|$Ce[5]+1)),ywe=ZL(0|(WL(fwe)<<3)+hwe);return Pw(function(vwe){return Yv(QCe,vwe)},ywe),[0,KCe,1];case 5:return Yv(QCe,Iw(0)),[0,KCe,0];case 6:return Yv(QCe,Iw(8)),[0,KCe,0];case 7:return Yv(QCe,Iw(12)),[0,KCe,0];case 8:return Yv(QCe,Iw(10)),[0,KCe,0];case 9:return Yv(QCe,Iw(13)),[0,KCe,0];case 10:return Yv(QCe,Iw(9)),[0,KCe,0];case 11:return Yv(QCe,Iw(11)),[0,KCe,0];case 12:var bwe=ZL(WL(Tv($Ce,$Ce[5])));return Pw(function(vwe){return Yv(QCe,vwe)},bwe),[0,KCe,1];case 13:var gwe=Tv($Ce,0|$Ce[5]+1),xwe=Tv($Ce,0|$Ce[5]+2),Swe=Tv($Ce,0|$Ce[5]+3),Ewe=JL(Tv($Ce,0|$Ce[5]+4)),Twe=JL(Swe)<<4,Awe=JL(xwe)<<8,Pwe=ZL(0|(0|(0|(JL(gwe)<<12)+Awe)+Twe)+Ewe);return Pw(function(vwe){return Yv(QCe,vwe)},Pwe),[0,KCe,0];case 14:var _we=W_(JC(Zce,Sv($Ce,0|$Ce[5]+2,0|$Ce[6]-1))),Nwe=NV<_we?PL(KCe,Qj(KCe,$Ce)):KCe,kwe=ZL(_we);return Pw(function(vwe){return Yv(QCe,vwe)},kwe),[0,Nwe,0];case 15:var Cwe=Tv($Ce,$Ce[5]),wwe=PL(KCe,Qj(KCe,$Ce));return Yv(QCe,Cwe),[0,wwe,0];case 16:return Pv($Ce),[0,KCe,0];default:return Yv(QCe,Tv($Ce,$Ce[5])),[0,KCe,0];}}}function LD(KCe,QCe,$Ce){a:for(;;)for(var ewe=288;;){var twe=Kw(UH,ewe,$Ce);if(4>>0){_C($Ce[1],$Ce);var ewe=twe;continue}switch(twe){case 0:var awe=PL(KCe,Qj(KCe,$Ce));return[0,awe,Qj(awe,$Ce)];case 1:Pv($Ce),Yv(QCe,10);continue a;case 2:var nwe=Qj(KCe,$Ce),rwe=KCe[3]?SL(KCe,nwe,[2,Qce,Kce]):KCe;return[0,rwe,nwe];case 3:if(KCe[3])return[0,KCe,Qj(KCe,$Ce)];Mv(QCe,$ce);continue a;default:Yv(QCe,Tv($Ce,$Ce[5]));continue a;}}}function RD(KCe,QCe,$Ce){a:for(;;)for(var ewe=296;;){var twe=Kw(UH,ewe,$Ce);if(2>>0){_C($Ce[1],$Ce);var ewe=twe;continue}switch(twe){case 0:return[0,KCe,Qj(KCe,$Ce)];case 1:var awe=Qj(KCe,$Ce),nwe=awe[3];return Pv($Ce),[0,KCe,[0,awe[1],awe[2],[0,nwe[1],0|nwe[2]-1,0|nwe[3]-1]]];default:Yv(QCe,Tv($Ce,$Ce[5]));continue a;}}}function OD(KCe,QCe,$Ce,ewe,twe){a:for(;;)for(var awe=380;;){var nwe=Kw(UH,awe,twe);if(6>>0){_C(twe[1],twe);var awe=nwe;continue}switch(nwe){case 0:var rwe=Tv(twe,twe[5]);switch(QCe){case 0:var swe=39===rwe?1:0;break;case 1:var swe=34===rwe?1:0;break;default:if(60===rwe)var iwe=1;else if(123===rwe)var iwe=1;else var swe=0,iwe=0;if(iwe)return Jj(0|twe[12][4]-twe[11][4],twe),[0,KCe,Qj(KCe,twe)];}if(swe)return[0,KCe,Qj(KCe,twe)];Yv(ewe,rwe),Yv($Ce,rwe);continue a;case 1:var owe=PL(KCe,Qj(KCe,twe));return[0,owe,Qj(owe,twe)];case 2:var lwe=Sv(twe,twe[5],twe[6]);Mv(ewe,lwe),Mv($Ce,lwe),Pv(twe);continue a;case 3:var pwe=Sv(twe,0|twe[5]+3,0|twe[6]-1);Mv(ewe,Sv(twe,twe[5],twe[6]));var dwe=ZL(W_(JC(rue,pwe)));Pw(function(aIe){return Yv($Ce,aIe)},dwe);continue a;case 4:var cwe=Sv(twe,0|twe[5]+2,0|twe[6]-1);Mv(ewe,Sv(twe,twe[5],twe[6]));var uwe=ZL(W_(cwe));Pw(function(aIe){return Yv($Ce,aIe)},uwe);continue a;case 5:var mwe=Sv(twe,0|twe[5]+1,0|twe[6]-1);Mv(ewe,Sv(twe,twe[5],twe[6]));var fwe=TP(mwe,sue);if(!(0<=fwe)){var lve=TP(mwe,iue);if(!(0<=lve)){var jve=TP(mwe,oue);if(!(0<=jve)){var Wve=TP(mwe,lue);if(!(0<=Wve)){var Zve=TP(mwe,pue);if(0<=Zve){if(!(0>>0){_C(awe[1],awe);var rwe=swe;continue}switch(swe){case 0:var iwe=PL(nwe,Qj(nwe,awe));return[0,iwe,Mj(QCe,Qj(iwe,awe)),1];case 1:return Yv(twe,96),[0,nwe,Mj(QCe,Qj(nwe,awe)),1];case 2:return Mv(twe,wEe),[0,nwe,Mj(QCe,Qj(nwe,awe)),0];case 3:Yv(ewe,92),Yv(twe,92);var owe=ID(nwe,$Ce,awe),lwe=$w(awe);Mv(ewe,lwe),Mv(twe,lwe);var nwe=owe[1];continue a;case 4:var pwe=Sv(awe,awe[5],0|awe[5]+2);Mv(ewe,pwe),Mv(twe,pwe),Mv($Ce,vEe),Pv(awe);continue a;case 5:var dwe=Tv(awe,awe[5]);Yv(ewe,dwe),Yv(twe,dwe),Yv($Ce,10),Pv(awe);continue a;default:var cwe=Tv(awe,awe[5]);Yv(ewe,cwe),Yv(twe,cwe),Yv($Ce,cwe);continue a;}}}function MD(KCe,QCe){var $Ce=KCe[2],ewe=$Ce.slice();return ewe[2]=$Ce[2],[0,[0],0,QCe,Zj(ewe,KCe)]}function VD(KCe,QCe){var $Ce=0|QCe+1;if(KCe[1].length-1<$Ce)for(var ewe=1;;){if(!($Ce<=ewe)){var ewe=0|2*ewe;continue}var twe=function(Vve){var Bve=Vverwe))for(var swe=1;;){if(nwe[swe+1]=twe(swe),rwe!=swe){var swe=0|swe+1;continue}break}var awe=nwe}KCe[1]=awe;break}for(;;){if(KCe[2]<=QCe){var iwe=KCe[4];switch(KCe[3]){case 0:var owe=$j(SD(iwe,iwe[2]));break;case 1:var owe=$j(_D(iwe,iwe[2]));break;case 2:var lwe=iwe[2],pwe=iwe;b:for(;;){for(var dwe=342;;){var cwe=Kw(UH,dwe,lwe);if(14>>0){_C(lwe[1],lwe);var dwe=cwe;continue}switch(cwe){case 0:var uwe=[0,pwe,YY];break;case 1:Pv(lwe);continue b;case 2:XL(lwe);continue b;case 3:var mwe=Qj(pwe,lwe),fwe=Lv(Qq),hwe=RD(pwe,fwe,lwe),pwe=UL(hwe[1],mwe,hwe[2],fwe,1);continue b;case 4:var ywe=Qj(pwe,lwe),bwe=Lv(Qq),gwe=LD(pwe,bwe,lwe),pwe=UL(gwe[1],ywe,gwe[2],bwe,1);continue b;case 5:var uwe=[0,pwe,92];break;case 6:var uwe=[0,pwe,99];break;case 7:var uwe=[0,pwe,93];break;case 8:var uwe=[0,pwe,1];break;case 9:var uwe=[0,pwe,80];break;case 10:var uwe=[0,pwe,11];break;case 11:var uwe=[0,pwe,78];break;case 12:XL(lwe);var uwe=[0,pwe,$B];break;case 13:var xwe=Tv(lwe,lwe[5]),Swe=Qj(pwe,lwe),Ewe=Lv(Qq),Twe=Lv(Qq);Yv(Twe,xwe);var Awe=39===xwe?0:1,Pwe=OD(pwe,Awe,Ewe,Twe,lwe);Yv(Twe,xwe);var _we=Rv(Ewe),Nwe=Rv(Twe),kwe=[4,[0,Mj(Swe,Pwe[2]),_we,Nwe]],uwe=[0,Pwe[1],kwe];break;default:var uwe=[0,pwe,UM];}var owe=$j(uwe);break}break}break;case 3:for(var Cwe=iwe[2][12],wwe=Yj(iwe[1],Cwe,Cwe),vwe=Lv(Qq),Iwe=Lv(Qq),jwe=iwe[2],Lwe=373;;){var Dwe=Kw(UH,Lwe,jwe);if(4>>0){_C(jwe[1],jwe);var Lwe=Dwe;continue}switch(Dwe){case 0:var Rwe=Sv(jwe,jwe[5],jwe[6]);Mv(Iwe,Rwe),Mv(vwe,Rwe),Pv(jwe);var Owe=OD(iwe,2,vwe,Iwe,jwe),Ywe=Rv(vwe),Fwe=Rv(Iwe),Mwe=[4,[0,Mj(wwe,Owe[2]),Ywe,Fwe]],Vwe=[0,Owe[1],Mwe];break;case 1:var Vwe=[0,iwe,YY];break;case 2:var Vwe=[0,iwe,92];break;case 3:var Vwe=[0,iwe,1];break;default:var Bwe=Tv(jwe,jwe[5]);Yv(Iwe,Bwe),Yv(vwe,Bwe);var Uwe=OD(iwe,2,vwe,Iwe,jwe),Xwe=Rv(vwe),Wwe=Rv(Iwe),qwe=[4,[0,Mj(wwe,Uwe[2]),Xwe,Wwe]],Vwe=[0,Uwe[1],qwe];}var owe=$j([0,Vwe[1],Vwe[2]]);break}break;case 4:var Jwe=iwe[2],zwe=iwe;b:for(;;){for(var Hwe=_F;;){var Gwe=Kw(UH,Hwe,Jwe);if(5>>0){_C(Jwe[1],Jwe);var Hwe=Gwe;continue}switch(Gwe){case 0:Pv(Jwe);continue b;case 1:XL(Jwe);continue b;case 2:var Zwe=Qj(zwe,Jwe),Kwe=Lv(Qq),Qwe=RD(zwe,Kwe,Jwe),zwe=UL(Qwe[1],Zwe,Qwe[2],Kwe,1);continue b;case 3:var $we=Qj(zwe,Jwe),eve=Lv(Qq),tve=LD(zwe,eve,Jwe),zwe=UL(tve[1],$we,tve[2],eve,1);continue b;case 4:var ave=Qj(zwe,Jwe),nve=Lv(Qq),rve=Lv(Qq),sve=Lv(Qq);Mv(sve,kEe);var ive=YD(zwe,ave,nve,rve,sve,Jwe),ove=ive[3],lve=Rv(sve),pve=Rv(rve),dve=[0,Rv(nve),pve,lve],cve=[0,ive[1],[2,[0,ive[2],dve,ove]]];break;default:var uve=PL(zwe,Qj(zwe,Jwe)),cve=[0,uve,[2,[0,Qj(uve,Jwe),CEe,1]]];}var owe=$j(cve);break}break}break;default:var mve=iwe[2],fve=iwe;b:for(;;){for(var hve=300;;){var yve=Kw(UH,hve,mve);if(6>>0){_C(mve[1],mve);var hve=yve;continue}switch(yve){case 0:var bve=[0,fve,YY];break;case 1:Pv(mve);continue b;case 2:XL(mve);continue b;case 3:var gve=Qj(fve,mve),xve=Lv(Qq),Sve=RD(fve,xve,mve),fve=UL(Sve[1],gve,Sve[2],xve,1);continue b;case 4:var Eve=Qj(fve,mve),Tve=Lv(Qq),Ave=LD(fve,Tve,mve),fve=UL(Ave[1],Eve,Ave[2],Tve,1);continue b;case 5:var Pve=Qj(fve,mve),_ve=Lv(Qq);c:for(;;){for(var Nve=323;;){var kve=Kw(UH,Nve,mve);if(7>>0){_C(mve[1],mve);var Nve=kve;continue}switch(kve){case 0:var Cve=[0,SL(fve,Qj(fve,mve),14),eue];break;case 1:var Cve=[0,SL(fve,Qj(fve,mve),14),tue];break;case 2:Mv(_ve,Sv(mve,mve[5],0|mve[5]+2));continue c;case 3:var Cve=[0,fve,Sv(mve,0|mve[5]+1,mve[6])];break;case 4:var Cve=[0,fve,aue];break;case 5:Yv(_ve,Tv(mve,mve[5]));d:for(;;)for(var wve=335;;){var vve=Kw(UH,wve,mve);if(4>>0){_C(mve[1],mve);var wve=vve;continue}switch(vve){case 0:break;case 3:Yv(_ve,Tv(mve,mve[5]));break;case 4:Yv(_ve,Tv(mve,mve[5]));continue d;default:Mv(_ve,Sv(mve,mve[5],0|mve[5]+2));continue d;}continue c}case 6:var Cve=[0,SL(fve,Qj(fve,mve),14),nue];break;default:Yv(_ve,Tv(mve,mve[5]));continue c;}var Ive=Cve[1],jve=Mj(Pve,Qj(Ive,mve)),Lve=Cve[2],bve=[0,Ive,[3,[0,jve,Rv(_ve),Lve]]];break}break}break;default:var bve=[0,PL(fve,Qj(fve,mve)),UM];}var owe=$j(bve);break}break}}var Dve=owe[1],Rve=Dve[2],Ove=Rve.slice();Ove[2]=Rve[2];var Yve=Zj(Ove,Dve);KCe[4]=Dve;var Fve=KCe[2],Mve=[0,[0,Yve,owe[2]]];KA(KCe[1],Fve)[Fve+1]=Mve,KCe[2]=0|KCe[2]+1;continue}return 0}}function UD(KCe){return $C(KCe[19][1])}function XD(KCe){return KCe[23][5]}function WD(KCe,QCe){var $Ce=QCe[2];KCe[1][1]=[0,[0,QCe[1],$Ce],KCe[1][1]];var ewe=KCe[18];return ewe?NC(ewe[1],KCe,$Ce):ewe}function JD(KCe,QCe){var $Ce=QCe[2];if(NC(iCe[3],$Ce,KCe[4][1]))return WD(KCe,[0,QCe[1],[7,$Ce]]);var ewe=NC(iCe[4],$Ce,KCe[4][1]);return KCe[4][1]=ewe,0}function ZD(KCe,QCe){var $Ce=KCe?KCe[1]:0;if(2>$Ce){var ewe=QCe[21][1];VD(ewe,$Ce);var twe=KA(ewe[1],$Ce)[$Ce+1];return twe?twe[1][2]:VC(EPe)}throw[0,YH,gPe]}function KD(KCe,QCe){var $Ce=QCe.slice();return $Ce[6]=KCe,$Ce}function QD(KCe,QCe){var $Ce=QCe.slice();return $Ce[13]=KCe,$Ce}function $D(KCe,QCe){var $Ce=QCe.slice();return $Ce[8]=KCe,$Ce}function SR(KCe,QCe){var $Ce=QCe.slice();return $Ce[11]=KCe,$Ce}function TR(KCe,QCe){var $Ce=QCe.slice();return $Ce[14]=KCe,$Ce}function PR(KCe,QCe){var $Ce=QCe.slice();return $Ce[7]=KCe,$Ce}function _R(KCe,QCe){var $Ce=QCe.slice();return $Ce[12]=KCe,$Ce}function NR(KCe,QCe){var $Ce=QCe.slice();return $Ce[18]=[0,KCe],$Ce}function IR(KCe){function QCe($Ce){return WD(KCe,$Ce)}return function($Ce){return Pw(QCe,$Ce)}}function LR(KCe){return KCe[5][1]}function RR(KCe){var QCe=KCe.slice();return QCe[18]=0,QCe}function OR(KCe,QCe,$Ce){var ewe=KCe.slice();return ewe[3]=iCe[1],ewe[8]=0,ewe[9]=0,ewe[10]=1,ewe[16]=$Ce,ewe[17]=QCe,ewe}function YR(KCe){return Uk(KCe,bPe)?0:1}function MR(KCe){return Uk(KCe,pPe)&&Uk(KCe,dPe)&&Uk(KCe,cPe)&&Uk(KCe,uPe)&&Uk(KCe,mPe)&&Uk(KCe,fPe)&&Uk(KCe,hPe)&&Uk(KCe,yPe)?0:1}function VR(KCe){return Uk(KCe,oPe)&&Uk(KCe,lPe)?0:1}function UR(KCe,QCe){var $Ce=KCe?KCe[1]:0;return ZD([0,$Ce],QCe)[1]}function XR(KCe,QCe){var $Ce=KCe?KCe[1]:0;return ZD([0,$Ce],QCe)[3]}function WR(KCe,QCe){var $Ce=KCe?KCe[1]:0;return ZD([0,$Ce],QCe)[2]}function JR(KCe,QCe){var $Ce=KCe?KCe[1]:0;return ZD([0,$Ce],QCe)[4]}function ZR(KCe){var QCe=LR(KCe);if(QCe)var $Ce=QCe[1][2][1],ewe=$Ce>>0)){var ewe=6==$Ce?0:1;if(!ewe)return ewe}else if(!(Yq<(0|$Ce+1)>>>0))return 1}return ZR(KCe)}function QR(KCe,QCe){var $Ce=KCe?KCe[1]:0,ewe=9===UR([0,$Ce],QCe)?1:0,twe=ewe?[0,WR([0,$Ce],QCe)]:ewe;return twe}function $R(KCe,QCe){var $Ce=KCe?KCe[1]:0,ewe=XR([0,$Ce],QCe),twe=UR([0,$Ce],QCe);if(!MR(ewe)&&!VR(ewe)&&!YR(ewe)){if("number"==typeof twe){var awe=0|twe-1,nwe=58>>0?64<=awe?0:1:27==awe?1:0;if(nwe)return 1}return 0}return 1}function SO(KCe,QCe){var $Ce=KCe?KCe[1]:0,ewe=15===UR([0,$Ce],QCe)?1:0;if(ewe)var twe=ewe;else var awe=63===UR([0,$Ce],QCe)?1:0,twe=awe?15===UR([0,0|$Ce+1],QCe)?1:0:awe;return twe}function TO(KCe,QCe){var $Ce=KCe?KCe[1]:0,ewe=UR([0,$Ce],QCe);if("number"==typeof ewe){var twe=14===ewe?1:40===ewe?1:0;if(twe)return 1}return 0}function PO(KCe,QCe){return WD(KCe,[0,WR(0,KCe),QCe])}function _O(KCe){var QCe=KCe[1];if("number"==typeof QCe)switch(QCe){case 0:return 2;case 108:return 4;}else switch(QCe[0]){case 0:return 0;case 1:case 4:return 1;}var $Ce=KCe[2];return YR($Ce)?3:MR($Ce)?40:[1,$Ce]}function NO(KCe){var QCe=JR(0,KCe);_C(IR(KCe),QCe);var $Ce=XR(0,KCe);return PO(KCe,_O([0,UR(0,KCe),$Ce]))}function IO(KCe){function QCe($Ce){return WD(KCe,[0,$Ce[1],57])}return function($Ce){return Pw(QCe,$Ce)}}function LO(KCe,QCe){var $Ce=KCe[6];return $Ce?PO(KCe,QCe):$Ce}function RO(KCe,QCe){var $Ce=KCe[6];return $Ce?WD(KCe,[0,QCe[1],QCe[2]]):$Ce}function OO(KCe){var QCe=KCe[22][1];if(QCe){var $Ce=WR(0,KCe),ewe=UR(0,KCe),twe=XR(0,KCe),awe=[0,$Ce,ewe,UD(KCe),twe];_C(QCe[1],awe)}var nwe=KCe[21][1];VD(nwe,0);var rwe=KA(nwe[1],0)[1],swe=rwe?rwe[1][1]:VC(SPe);KCe[20][1]=swe;var iwe=JR(0,KCe);_C(IR(KCe),iwe);var owe=ZD([0,0],KCe)[5];Pw(function(hwe){return KCe[2][1]=[0,hwe,KCe[2][1]],0},owe);var lwe=[0,WR(0,KCe)];KCe[5][1]=lwe;var pwe=KCe[21][1];if(VD(pwe,0),1(0|uwe.length-1-dwe)?0:0>(0|cwe.length-1-dwe)?0:($T(uwe,1,cwe,0,dwe),1):0;mwe||UC(QH)}var fwe=0|pwe[2]-1;return KA(pwe[1],fwe)[fwe+1]=0,pwe[2]=0|pwe[2]-1,0}function YO(KCe,QCe){KCe[19][1]=[0,QCe,KCe[19][1]];var $Ce=UD(KCe),ewe=MD(KCe[20][1],$Ce);return KCe[21][1]=ewe,0}function MO(KCe){var QCe=KCe[19][1],$Ce=QCe?QCe[2]:VC(iPe);KCe[19][1]=$Ce;var ewe=UD(KCe),twe=MD(KCe[20][1],ewe);return KCe[21][1]=twe,0}function VO(KCe){var QCe=1-KR(KCe);return QCe?9===UR(0,KCe)?OO(KCe):NO(KCe):QCe}function UO(KCe,QCe){return Pk(UR(0,KCe),QCe)&&NO(KCe),OO(KCe)}function XO(KCe,QCe){var $Ce=IP(UR(0,KCe),QCe),ewe=$Ce?(OO(KCe),1):$Ce;return ewe}function WO(KCe,QCe){return Uk(XR(0,KCe),QCe)&&NO(KCe),OO(KCe)}function JO(KCe){var QCe=KCe[22][1];if(QCe){var $Ce=[0,0,0],ewe=[0,function(awe){if(0===$Ce[1]){var nwe=[];return ZT(nwe,[0,awe,nwe]),$Ce[1]=1,$Ce[2]=nwe,0}var rwe=$Ce[2],swe=[0,awe,rwe[2]];return $Ce[1]=0|$Ce[1]+1,rwe[2]=swe,$Ce[2]=swe,0}];KCe[22][1]=ewe;var twe=[0,[0,QCe[1],$Ce]]}else var twe=QCe;return[0,KCe[1][1],KCe[2][1],KCe[5][1],KCe[19][1],KCe[20][1],twe]}function ZO(KCe,QCe,$Ce){if($Ce){var ewe=$Ce[1],twe=ewe[1];if(QCe[22][1]=[0,twe],KCe){var awe=ewe[2],nwe=0>16)*QCe<<16)+(KCe&Oq)*QCe});var Qz=Math.imul,$z=function(){function KCe(swe,iwe){return swe<>>32-iwe}function QCe(swe,iwe){return iwe=Qz(iwe,-862048943),iwe=KCe(iwe,15),iwe=Qz(iwe,461845907),swe^=iwe,swe=KCe(swe,13),0|(0|swe+(swe<<2))+-430675100}function $Ce(swe){return swe>>>=16,swe=Qz(swe,-2048144789),swe>>>=13,swe=Qz(swe,-1028477387),swe>>>=16,swe}function ewe(swe,iwe){var owe=iwe[1]|iwe[2]<<24,lwe=iwe[2]>>>8|iwe[3]<<16;return swe=QCe(swe,owe),swe=QCe(swe,lwe),swe}function twe(swe,iwe){var owe=iwe[1]|iwe[2]<<24,lwe=iwe[2]>>>8|iwe[3]<<16;return swe=QCe(swe,lwe^owe),swe}function awe(swe,iwe){var owe=iwe.length,lwe,pwe;for(lwe=0;lwe+4<=owe;lwe+=4)pwe=iwe.charCodeAt(lwe)|iwe.charCodeAt(lwe+1)<<8|iwe.charCodeAt(lwe+2)<<16|iwe.charCodeAt(lwe+3)<<24,swe=QCe(swe,pwe);switch(pwe=0,3&owe){case 3:pwe=iwe.charCodeAt(lwe+2)<<16;case 2:pwe|=iwe.charCodeAt(lwe+1)<<8;case 1:pwe|=iwe.charCodeAt(lwe),swe=QCe(swe,pwe);}return swe^=owe,swe}function nwe(swe,iwe){var owe=iwe.length,lwe,pwe;for(lwe=0;lwe+4<=owe;lwe+=4)pwe=iwe[lwe]|iwe[lwe+1]<<8|iwe[lwe+2]<<16|iwe[lwe+3]<<24,swe=QCe(swe,pwe);switch(pwe=0,3&owe){case 3:pwe=iwe[lwe+2]<<16;case 2:pwe|=iwe[lwe+1]<<8;case 1:pwe|=iwe[lwe],swe=QCe(swe,pwe);}return swe^=owe,swe}var rwe=YJ;return function(swe,iwe,owe,lwe){var pwe,dwe,cwe,uwe,mwe,fwe,hwe,ywe,bwe;for(uwe=iwe,(0>uwe||uwe>rwe)&&(uwe=rwe),mwe=swe,fwe=owe,pwe=[lwe],dwe=0,cwe=1;dwe=uwe);ywe++)pwe[cwe++]=hwe[ywe];}else if(hwe instanceof UA){switch(6&hwe.t){default:OA(hwe);case 0:fwe=awe(fwe,hwe.c);break;case 2:fwe=nwe(fwe,hwe.c);}mwe--}else hwe===(0|hwe)?(fwe=QCe(fwe,hwe+hwe+1),mwe--):hwe===+hwe&&(fwe=ewe(fwe,JP(hwe)),mwe--);return fwe=$Ce(fwe),fwe&LV}}(),SH=function(){function KCe(rwe,swe){return 0|rwe+swe}function QCe(rwe,swe,iwe,owe,lwe,pwe){return swe=KCe(KCe(swe,rwe),KCe(owe,pwe)),KCe(swe<>>32-lwe,iwe)}function $Ce(rwe,swe,iwe,owe,lwe,pwe,dwe){return QCe(swe&iwe|~swe&owe,rwe,swe,lwe,pwe,dwe)}function ewe(rwe,swe,iwe,owe,lwe,pwe,dwe){return QCe(swe&owe|iwe&~owe,rwe,swe,lwe,pwe,dwe)}function twe(rwe,swe,iwe,owe,lwe,pwe,dwe){return QCe(swe^iwe^owe,rwe,swe,lwe,pwe,dwe)}function awe(rwe,swe,iwe,owe,lwe,pwe,dwe){return QCe(iwe^(swe|~owe),rwe,swe,lwe,pwe,dwe)}function nwe(rwe,swe){var iwe=swe;for(rwe[iwe>>2]|=QF<<8*(3&iwe),iwe=(-4&iwe)+8;60>(63&iwe);iwe+=4)rwe[(iwe>>2)-1]=0;rwe[(iwe>>2)-1]=swe<<3,rwe[iwe>>2]=536870911&swe>>29;var owe=[1732584193,4023233417,2562383102,271733878];for(iwe=0;iweiwe;iwe++)for(var mwe=0;4>mwe;mwe++)uwe[4*iwe+mwe]=owe[iwe]>>8*mwe&KU;return uwe}return function(rwe,swe,iwe){var owe=[];switch(6&rwe.t){default:OA(rwe);case 0:var lwe=rwe.c;for(var pwe=0;pwe>2]=lwe.charCodeAt(dwe)|lwe.charCodeAt(dwe+1)<<8|lwe.charCodeAt(dwe+2)<<16|lwe.charCodeAt(dwe+3)<<24}for(;pwe>2]|=lwe.charCodeAt(pwe+swe)<<8*(3&pwe);break;case 4:var cwe=rwe.c;for(var pwe=0;pwe>2]=cwe[dwe]|cwe[dwe+1]<<8|cwe[dwe+2]<<16|cwe[dwe+3]<<24}for(;pwe>2]|=cwe[pwe+swe]<<8*(3&pwe);}return _N(nwe(owe,iwe))}}(),TH=0;ON.prototype={truncate:function(){this.data=NP(0),this.modified()},modified:function(){var KCe=RN();this.atime=KCe,this.mtime=KCe}},YN.prototype={exists:function(KCe){return this.content[KCe]?1:0},mk:function(KCe,QCe){this.content[KCe]=QCe},get:function(KCe){return this.content[KCe]},list:function(){var KCe=[];for(var QCe in this.content)KCe.push(QCe);return KCe},remove:function(KCe){delete this.content[KCe]}};var PH=new YN;PH.mk(LW,new YN),MN(0,new ON(NP(0))),MN(1,new ON(NP(0))),MN(2,new ON(NP(0)));var _H=[],NH={},IH=0,LH=[SM,XA(UF),-3],RH=[SM,XA(UY),-4],OH=[SM,XA(ZW),-7],YH=[SM,XA(Lz),-11],MH=[0,XA(LW),1,0,0],VH=[0,0,0],UH=[0,XA("\0\0\xB2\xFF\xB3\xFF\xB9\xFFB\0C\0T\0W\0F\0I\0J\0K\0M\0e\0\xDD\xFF\xDE\xFF\xDF\xFF\xE0\xFF\xE3\xFF\xE4\xFF\xE5\xFF\xE6\xFF\xE7\xFF\xE8\xFF\xC0\0L\0e\0\x17\x01n\x01\xF6\xFF\xF7\xFFl\0u\0v\0\0\0\x0E\0\x0F\0\x07\x003\x01\xFE\xFF\xFF\xFF\x01\0\x12\0(\0\f\0\x15\0*\0\f\0=\0-\0\t\0\xB6\xFF\xF9\xFF\xE0\x01B\0u\0\x0F\x000\x004\0\x17\0\xE5\x01(\x008\0\x1A\0K\0:\0\x17\0\xFB\xFFh\0a\0\xAC\0q\0m\0y\0q\0i\0{\0{\0\xA8\0\xCA\xFF\xFA\xFF\xC9\xFF\xF8\xFF\x0B\x02\xA5\x02\xFC\x02S\x03\xAA\x03\x01\x04X\x04\xAF\x04\x06\x05]\x05\xB4\x05\x0B\x06b\x06\xB9\x06\xC3\x01\x10\x07g\x07\xBE\x07\x15\bl\b\xC3\b\x1A\tq\t\xC8\t\xB8\0\xE2\xFFE\x02\xC7\xFF\xDC\xFF\xC6\xFF\xDB\xFF\xB7\xFF\xAA\0\xDA\xFF\xAB\0\xD9\xFF\xAC\0\xD8\xFF\xD2\xFF\xAD\0\xD7\xFF\xB0\0\xD0\xFF\xCF\xFF\xCC\xFF\xD4\xFF\xCB\xFF\xD3\xFF\xC8\xFF\xC5\xFF:\n\xCC\xFF\xCD\xFF\xCF\xFF\xD3\xFF\xB0\0\xD9\xFF\xDA\xFF\xDD\xFF\xDE\xFF\xDF\xFF\xE0\xFF\xE3\xFF\xE4\xFF~\0\xE7\xFF\x80\0\xE9\xFF\xEA\xFF\x9A\0\x94\n\xFA\n\xD6\x01Q\x0B\xA8\x0B\x1A\f\xF9\xFF\xCF\0\xF1\0D\0\x9C\0\x9D\0\xA3\0\xC4\x0B\xFF\xFF\x83\0\xC1\0\xD1\0\xF9\0\xB4\0\xC4\0\xA7\0\xCB\t\xD4\0\x96\0\xFA\xFF\x1F\f\xEA\0\x1D\x01\xB7\0\xF3\0\xF4\0\xFA\0$\f\xE9\0\x15\x01\xF7\0\xDF\x0B\x17\x01\xD9\0\xFC\xFF,\x01&\x01{\x01@\x01<\x01H\x01@\x018\x01J\x01d\x01\xFB\xFF\xF3\x01\x0F\x01K\x01j\x01c\x01K\f>\x01N\x01P\x01\xEC\x0Bp\x01?\x01x\f\xFF\fV\r\xAD\r\0\x02\x04\x0E[\x0E\xB2\x0E\t\x0F`\x0F\xB7\x0F\x0E\x10e\x10\xBC\x10\x13\x11j\x11\xC1\x11\x18\x12o\x12\xC6\x12\x1D\x13t\x13\xCB\x13\"\x14\xD1\x01\xE2\xFFy\x14\xD0\x14'\x15~\x15\x99\x01\x9D\x01\xAD\x01\xA6\x01\x9F\x01\xEB\xFF\xE6\xFF\xE5\xFF\xD1\xFF\x1B\f\xFC\xFF\xFD\xFF\xFE\xFF\xFF\xFF\xCF\x15\xEE\xFF\x01\0\xEF\xFF\x18\x16\xF4\xFF\xF5\xFF\xF6\xFF\xF7\xFF\xF8\xFF\xF9\xFF\xF1\x02H\x03>\x16\xFE\xFF\xFF\xFFU\x16\xFD\xFF\x9F\x03\xFC\xFF{\x16\x92\x16\xB8\x16\xCF\x16\xF2\xFF\xF5\x16\xF1\xFF\xD7\x02\xFB\xFF\xEA\x01\xFE\xFF\xFF\xFF\xE4\x01\xFD\xFF\xFC\xFF;\x02\xFD\xFF\xFE\xFF\xFF\xFF\0\x17\xF9\xFF\xEE\x01`\x01\x9C\x01\xA0\x01*\x02)\fC\x15\xFE\xFF\xFF\xFFc\x01\xAD\x01\xC7\x01+\x02\xA0\x01\xBA\x01\xAA\x01\x87\x15\xCA\x01\xA7\x01\xFB\xFF\xFC\xFF\x0B\x16\xF8\xFF\x04\0\xF9\xFF\xFA\xFF8\x17,\x03\xFF\xFF\xFD\xFF\x05\0\xFE\xFF\xC0\x17\x96\t\xFB\xFF\xFC\xFF\x0B\x02\xFF\xFF\xFD\xFF\xFE\xFF2\x18\xF1\xFF\xF2\xFF\x8A\x18\xF4\xFF\xF5\xFF\xF6\xFF\xF7\xFF\xF8\xFF\xFA\xFFv\x02\xB0\x01!\x02\"\x023\x02\x88\x167\x18\xFE\xFF\xFF\xFF\x05\x02L\x02_\x02\xF3\x02@\x02Q\x02C\x02\xBD\x16c\x02%\x02\xFB\xFF\xFC\xFF|\f\xFB\xFF\xFC\xFF\xFD\xFF\xFE\xFF\x06\0\xFF\xFF\xFC\x18\xF9\xFF\xF8\x18\x07\0\xFD\xFF\xFE\xFF\xFF\xFFO\x19\xDF\n_\f\x84\x17\x9C\x19\xFC\xFF\xFB\xFF\xD3\x19\xFA\xFF*\x1A\x81\x1A\xD8\x1A/\x1B\x86\x1B\xAA\x02\xF8\x1B\xFA\xFF\xFB\xFF\xD6\x02G\x02\x83\x02\xA9\x02J\x03\x04\x19K\x1B\xFF\xFFp\x02\xB7\x02\xD7\x02\x8D\x03\xAA\x02\xBA\x02\x9D\x02\xC9\x16\xD9\x02\x9B\x02\xFC\xFF\xFD\xFF\xC3\x16\xF9\xFF\xFA\xFF\b\0\xFC\xFF\xE1\x02\xFE\xFF\xFF\xFF\xFD\xFF\xFB\xFF"),XA("\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFD\0A\0>\0=\0<\0;\0E\0G\0B\0C\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16\0K\0\x1E\0\x15\0\x15\0\xFF\xFF\xFF\xFFM\0?\0J\0M\0M\0M\0M\0\x02\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x03\0\xFF\xFF\x04\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF@\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x14\0\x14\0\x15\0\x14\0\x0F\0\x14\0\x14\0\x0B\0\n\0\r\0\f\0\x0E\0\x0E\0\x0E\0\xFF\xFF\x0E\0\x0E\0\x13\0\x12\0\x11\0\x10\0\x15\0\x13\0\x12\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF)\0\xFF\xFF*\0\xFF\xFF.\0\xFF\xFF\xFF\xFF2\0\xFF\xFF1\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF'\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF+\0\xFF\xFF\x17\0\xFF\xFF\xFF\xFF3\0\x13\0\x13\0\x1E\0\x12\0\x12\x001\0\xFF\xFF)\x003\x003\x003\x003\x003\0\x01\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x02\0\xFF\xFF\x03\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x12\0\x11\0\x11\0\x10\0\xFF\xFF\x10\0\x0F\0\x0F\0\x12\0\x11\0\f\0\x11\0\x11\0\b\0\x07\0\n\0\t\0\x0B\0\x0B\0\x0B\0\x0B\0\x0B\0\x0E\0\r\0\xFF\xFF\xFF\xFF\x13\0\x13\0\x13\0\x13\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x10\0\xFF\xFF\x0F\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\f\0\x05\0\x0F\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x04\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x04\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x05\0\x06\0\x06\0\x06\0\x06\0\x02\0\x01\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x06\0\xFF\xFF\xFF\xFF\x04\0\x07\0\xFF\xFF\xFF\xFF\x01\0\xFF\xFF\x03\0\xFF\xFF\xFF\xFF\xFF\xFF\x04\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\f\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x06\0\x0E\0\x0E\0\x0E\0\x0E\0\x02\0\x01\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\xFF\xFF\xFF\xFF\xFF\xFF\x06\0\x02\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x05\0\x05\0\x05\0\x05\0\x05\0\x01\0\0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x05\0\xFF\xFF\x06\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF"),XA("\x01\0\0\0\0\0\0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\0\0\0\0\0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\xFF\xFF\0\0\0\0\0\0\0\0\0\0\xFF\xFF\0\0\xFF\xFF\0\0\xFF\xFF\0\0\0\0\xFF\xFF\0\0\xFF\xFF\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x86\0\0\0\0\0\0\0\0\0\xFF\xFF\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xFF\xFF\0\0\xFF\xFF\0\0\0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\0\0\0\0\0\0\x01\x01\0\0\0\0\0\0\0\0\x06\x01\0\0\xFF\xFF\0\0\xFF\xFF\0\0\0\0\0\0\0\0\0\0\0\0\xFF\xFF\xFF\xFF\xFF\xFF\0\0\0\0\xFF\xFF\0\0\xFF\xFF\0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\xFF\xFF\0\0!\x01\0\0\xFF\xFF\0\0\0\0\xFF\xFF\0\0\0\0)\x01\0\0\0\0\0\0-\x01\0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\0\0D\x01\0\0\xFF\xFF\0\0\0\0\xFF\xFFK\x01\0\0\0\0\xFF\xFF\0\0\xFF\xFFP\x01\0\0\0\0\xFF\xFF\0\0\0\0\0\0W\x01\0\0\0\0\xFF\xFF\0\0\0\0\0\0\0\0\0\0\0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\0\0v\x01\0\0\0\0\0\0\0\0\xFF\xFF\0\0}\x01\0\0\xFF\xFF\xFF\xFF\0\0\0\0\0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\0\0\xFF\xFF\0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x93\x01\0\0\0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\0\0\xAA\x01\0\0\0\0\xFF\xFF\0\0\xFF\xFF\0\0\0\0\0\0\0\0"),XA("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0&\0(\0\b\x01&\0&\0F\x01M\x01{\x01\x80\x01\xB2\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0&\0\n\0\x1E\0\x1F\0\x18\0\x05\0\r\0\x1E\0\x15\0\x14\0 \0\x07\0\x10\0\x06\0\x1A\0!\0\x1C\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x0F\0\x11\0\t\0\x0B\0\b\0\x0E\0\x19\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x13\0'\0\x12\0\x04\0\x18\0\x1D\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x17\0\f\0\x16\0\x03\0\x84\0\x83\0\x82\0\x80\0{\0z\0w\0x\0u\0s\0r\0p\0o\0m\0R\x001\x000\0/\0\x81\x001\0k\0\x7F\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0N\x005\0.\0n\0&\0P\x004\0.\0-\x000\0/\0&\0&\0-\0&\0D\0C\0A\0>\0O\x003\0@\0?\0<\0=\0<\0<\0<\x002\x002\0&\0&\0&\0&\0&\0&\0&\0&\0&\0&\0&\0&\0q\0B\0<\0<\0<\0<\0<\0<\0<\0<\0<\0<\0<\0<\0E\0F\0G\0H\0I\0J\0K\0L\0M\0C\0%\0$\0#\0\x18\0Q\0l\0t\0v\0y\0}\0|\0&\0~\0\xFF\0\"\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0<\0\xFE\0\xFD\0\xF7\0\xCC\0\xB1\0\x02\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\xB3\0\xB0\0\xAF\0\xAE\0\x18\0\xB2\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0S\0&\0\xAD\0\xB1\0&\0&\0\xB0\0\xA6\0\xAC\0\xA6\0U\0\xA6\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\xAF\0\xAE\0&\0\xA6\0\xA6\0\xC2\0\xC1\0S\0S\0S\0S\0T\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0\xC0\0\xBF\0\xBE\0\xBD\0S\0\xBA\0S\0S\0S\0S\0T\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0\xAD\0\xBC\0\xBA\0\xBA\0\xBA\0\xBA\0\xAC\0\xBB\0\xC3\0U\0\xC4\0W\0W\0W\0W\0W\0W\0W\0W\0\x1B\0\x1B\0\xC5\0\xC6\0\xC7\0\xC8\0\xC9\0\xCA\0\xCB\0S\0Y\0S\0S\0T\0S\0S\0S\0S\0S\0S\0S\0S\0S\0X\0S\0S\0S\0S\0S\0S\0S\0S\0V\0S\0S\0\xC1\0\xD8\0\xD7\0\xD2\0S\0\xD2\0S\0Y\0S\0S\0T\0S\0S\0S\0S\0S\0S\0S\0S\0S\0X\0S\0S\0S\0S\0S\0S\0S\0S\0V\0S\0S\0<\0\xD6\0\xD5\0<\0<\0<\0\xD2\0\xD2\0<\0<\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0\xD4\0\xD2\0\xF2\0<\0\xF8\0\xF9\0\xD3\0\xF1\0<\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xFA\0\xFB\0\xFC\0'\x01,\0+\0*\0%\x01A\x01&\x017\0@\x01?\x01B\x01@\x017\0>\x01=\x01)\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0?\x013\x01S\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\x003\x01S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0*\x016\0>\x01=\x013\x013\x016\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\x003\x01U\x01T\x01\x18\0S\0r\x01S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0s\x01q\x01p\x01o\x01\x18\0t\x01\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0r\x01;\0:\x009\0<\x01<\x01;\0:\x009\0S\0;\x01;\x01q\x01n\x01e\x018\0a\0e\x01a\0m\x018\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0p\x01o\x01#\x01e\x01e\x01e\x01\x8B\x01S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0\xA7\x01\"\x01\xA6\x01\xA5\x01S\0\xA8\x01S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\xA4\x01\xA3\x01\xA6\x01h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0M\x01\xA5\x01\x9A\x01L\x01\x9A\x01+\x01\x9A\x01S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0\xA4\x01\xA3\x01\x9A\x01\x9A\x01S\0\xB1\x01S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\0\0\0\0\0\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0n\x01\0\0\0\0\0\0\0\0\0\0m\x01f\0f\0f\0f\0f\0f\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0\0\0\0\0\0\0\0\0S\0\0\0f\0f\0f\0f\0f\0f\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0_\0\x18\x01\x18\x01\x18\x01\x18\x01\x18\x01\x18\x01\x18\x01\x18\x01$\x01U\0\0\0W\0W\0W\0W\0W\0W\0W\0W\0^\0^\0\xA2\x01\0\0\0\0\0\0\0\0\0\0\xA1\x01_\0_\0_\0_\0`\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0\0\0\0\0\0\0\0\0_\0\0\0_\0_\0_\0_\0`\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0S\0\0\0\xA2\x01\0\0\0\0\0\0\0\0\xFF\xFF\xA1\x01\0\0\0\0\0\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0S\0S\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0\0\0\0\0\0\0\0\0S\0\0\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0Z\0Z\0S\0S\0S\0S\0S\0S\0S\0S\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0\0\0\0\0\0\0\0\0S\0\0\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0[\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0Z\0Z\0[\0[\0[\0[\0[\0[\0[\0[\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0\0\0\0\0\0\0\0\0[\0\0\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0\0\0\0\0\0\0\0\0[\0\0\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0]\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0]\0]\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0\0\0\0\0\0\0\0\0]\0\0\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0\0\0\0\0\0\0\0\0]\0\0\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0_\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0U\0\0\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0_\0_\0_\0_\0`\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0\0\0\0\0\0\0\0\0_\0\0\0_\0_\0_\0_\0`\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0\0\0\0\0\0\0\0\0_\0\0\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0\0\0\0\0\0\0\0\0\0\0\0\0a\0\0\0a\0\0\0\0\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0\0\0\0\0\0\0\0\0_\0\0\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0c\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0\0\0\0\0\0\0\0\0c\0\0\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0\0\0\0\0\0\0\0\0c\0\0\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0e\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0\0\0\0\0\0\0\0\0e\0\0\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0\0\0\0\0\0\0\0\0e\0\0\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0g\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0f\0f\0f\0f\0f\0f\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0\0\0\0\0\0\0\0\0g\0\0\0f\0f\0f\0f\0f\0f\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0\0\0\0\0\0\0\0\0g\0\0\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0S\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0S\0S\0S\0S\0T\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0\0\0\0\0\0\0\0\0S\0\0\0S\0S\0S\0S\0T\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0j\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0\0\0\0\0\0\0\0\0j\0\0\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0\0\0\0\0\0\0\0\0\0\0R\x01Q\x01\0\0\0\0\0\0\0\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0\0\0\0\0\0\0\0\0j\0\0\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0\xA6\0\xA7\0\0\0\xA6\0\xA6\0\0\0\0\0\0\0\xA6\0\xA6\0\xA6\0\xA6\0\xA6\0\xA6\0\xA6\0\xA6\0\xA6\0\xA6\0\xA6\0\0\0\0\0\0\0\0\0\xA6\0\0\0\x9F\0\0\0\x99\0\x98\0\x89\0\x9F\0\x92\0\x91\0\xA0\0\x88\0\x8F\0\x9E\0\x9B\0\xA1\0\x9D\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x8E\0\x90\0\x8C\0\x8A\0\x8B\0\x8D\0\xA6\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x97\0S\x01\x96\0\0\0\x99\0\0\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x9A\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x95\0\x93\0\x94\0\x99\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\0\0\0\0\0\0\0\0\x99\0\0\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x85\x01\x85\x01\x85\x01\x85\x01\x85\x01\x85\x01\x85\x01\x85\x01\x85\x01\x85\x01\0\0\0\0\xA5\0\xA4\0\xA3\0\x99\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xA2\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\0\0\0\0\0\0\0\0\0\0\0\0\x87\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\0\0\0\0\x86\x01\0\0\x99\0\0\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\xF3\0\x99\0\xDA\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xE1\0\0\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xDA\0\xDA\0\xDA\0\xDA\0\xDB\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\0\0\0\0\0\0\0\0\xDA\0\0\0\xDA\0\xDA\0\xDA\0\xDA\0\xDB\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xA6\0\0\0\0\0\xA6\0\xA6\0\0\0\0\0\0\0\0\0\xE1\0\0\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\x9C\0\x9C\0\0\0\0\0\xA6\0\0\0\0\0\0\0\0\0\xDA\0\xE5\0\xDA\0\xDA\0\xDB\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xE4\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xE2\0\xDA\0\xDA\0\0\0\0\0\0\0\0\0\xDA\0\0\0\xDA\0\xE5\0\xDA\0\xDA\0\xDB\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xE4\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xE2\0\xDA\0\xDA\0\xD2\0\0\0\x02\x01\xD2\0\xD2\0\xBA\0\0\0\0\0\xBA\0\xBA\0\xBA\0\0\0\0\0\xBA\0\xBA\x003\x01\0\0\0\x003\x013\x01\0\0\0\0\0\0\xD2\0\0\0\0\0\x04\x01\0\0\xBA\0\0\0\0\0\x04\x01\0\0\xBA\0\0\0\0\0\0\0\xCD\x003\x01\x9D\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\xD2\0\0\0\0\0\xD2\0\xD2\0\xB5\0\0\0\0\0\0\0\0\0\xB5\0\xBA\0\xBA\0\xBA\0\xBA\0\xBA\0\xBA\0\xBA\0\xBA\0\xBA\0\xBA\0\xBA\0\0\0\xD2\0\xD2\0\xD2\0\xD2\0\xD2\0\xD2\0\xD2\0\xD2\0\xD2\0\xD2\0\xD2\0\xD2\0\x03\x01\0\0\xCD\0\0\0\x9D\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\xB4\0{\x01\0\0\0\0z\x01\xB4\0\0\0\0\0\0\0\xBA\0\x85\x01\x85\x01\x85\x01\x85\x01\x85\x01\x85\x01\x85\x01\x85\x01\x85\x01\x85\x01\0\0\x89\x01\xD2\0\xDA\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xAB\0\xAA\0\xA9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\0\0\xA8\0\0\0\0\0\0\0\0\0x\x01\xDA\0\xDA\0\xDA\0\xDA\0\xDB\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\0\0\0\0\0\0\0\0\xDA\0\0\0\xDA\0\xDA\0\xDA\0\xDA\0\xDB\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\0\0\0\0\0\0\0\0w\x01\0\0\0\0\0\0\xD1\0\xD0\0\xCF\0\0\0\0\0\xB9\0\xB8\0\xB7\0\0\0\0\0\xB9\0\xB8\0\xB7\0\0\0\xCE\0:\x019\x018\x01\0\0\xB6\0\0\0\0\0\0\0\0\0\xB6\0\0\0\0\0\0\0\0\x007\x01\0\0\0\0\x02\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xDA\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xD1\0\xD0\0\xCF\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\0\0\xCE\0\0\0\0\0\0\0\0\0\0\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\0\0\0\0\0\0\0\0\xDA\0\0\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\0\0y\x01\0\0\0\0\0\0\0\0\xDD\0\0\0\xDD\0\0\0\0\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\0\0\0\0\0\0\0\0\xDA\0\0\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xE0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\0\0\0\0\0\0\0\0\xE0\0\0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xDF\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\0\0\0\0\0\0\0\0\xDF\0\0\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\0\0\0\0\0\0\0\0\xDF\0\0\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xE0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\0\0\0\0\0\0\0\0\xE0\0\0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xDA\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\0\0\0\0\0\0\0\0\xDA\0\0\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\0\0\0\0\0\0\0\0\xDA\0\0\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xEB\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xE1\0\0\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xEA\0\xEA\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xEB\0\xEB\0\xEB\0\xEB\0\xEC\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\0\0\0\0\0\0\0\0\xEB\0\0\0\xEB\0\xEB\0\xEB\0\xEB\0\xEC\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xDA\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xDA\0\xDA\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\0\0\0\0\0\0\0\0\xDA\0\0\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xE6\0\xE6\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\0\0\0\0\0\0\0\0\xDA\0\0\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xE7\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xE6\0\xE6\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\0\0\0\0\0\0\0\0\xE7\0\0\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\0\0\0\0\0\0\0\0\xE7\0\0\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE9\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE9\0\xE9\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\0\0\0\0\0\0\0\0\xE9\0\0\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\0\0\0\0\0\0\0\0\xE9\0\0\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xEB\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xE1\0\0\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xEB\0\xEB\0\xEB\0\xEB\0\xEC\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\0\0\0\0\0\0\0\0\xEB\0\0\0\xEB\0\xEB\0\xEB\0\xEB\0\xEC\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\0\0\0\0\0\0\0\0\xEB\0\0\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\0\0\0\0\0\0\0\0\0\0\0\0\xDD\0\0\0\xDD\0\0\0\0\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\0\0\0\0\0\0\0\0\xEB\0\0\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEE\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\0\0\0\0\0\0\0\0\xEE\0\0\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\0\0\0\0\0\0\0\0\xEE\0\0\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xF0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\0\0\0\0\0\0\0\0\xF0\0\0\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\0\0\0\0\0\0\0\0\xF0\0\0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\x99\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\0\0\0\0\0\0\0\0\x99\0\0\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\xF4\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\0\0\0\0\0\0\0\0\x99\0\0\0\x99\0\x99\0\x99\0\x99\0\xF5\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\x003\x015\x01\0\x003\x013\x01\0\0\0\0\0\0\0\0\0\0\0\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\0\0\0\x003\x01\0\0\0\0\0\0\0\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\0\0\0\0\0\0\0\0\x99\0\0\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\xF6\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\b\x01\0\0\0\0\x07\x01\x99\0\0\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\0\0\0\0\0\0\0\0\0\0\0\0\x11\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x013\x013\x013\x013\x013\x013\x013\x013\x013\x013\x013\x01\0\0\0\0\0\0F\x01\0\0\0\0E\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0:\x019\x018\x01\0\0\0\0\0\0\0\0\x13\x01\0\0\0\0\0\0\0\0\0\0\x0F\x017\x01\0\0\0\0\x0E\x013\x01\0\0\0\0\0\0H\x01\0\0\0\0\r\x01\0\0\0\0\0\0\f\x01\0\0\x0B\x01\t\x01\n\x01\0\0\x12\x01\x1A\x01\x1A\x01\x1A\x01\x1A\x01\x1A\x01\x1A\x01\x1A\x01\x1A\x01\x1A\x01\x1A\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x1A\x01\x1A\x01\x1A\x01\x1A\x01\x1A\x01\x1A\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0G\x01I\x01\0\0\0\0\0\0\0\0\0\0\0\0\x15\x01\x15\x01\x15\x01\x15\x01\x15\x01\x15\x01\x15\x01\x15\x01\x15\x01\x15\x01\0\0\x1A\x01\x1A\x01\x1A\x01\x1A\x01\x1A\x01\x1A\x01\x15\x01\x15\x01\x15\x01\x15\x01\x15\x01\x15\x01\x16\x01\x16\x01\x16\x01\x16\x01\x16\x01\x16\x01\x16\x01\x16\x01\x16\x01\x16\x01\0\0\0\0e\x01\0\0\x19\x01e\x01e\x01\x16\x01\x16\x01\x16\x01\x16\x01\x16\x01\x16\x01\0\0\0\0\0\0\x15\x01\x15\x01\x15\x01\x15\x01\x15\x01\x15\x01\0\0\0\0\0\0e\x01\0\0\0\0\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\0\0\x16\x01\x16\x01\x16\x01\x16\x01\x16\x01\x16\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1B\x01\x1B\x01\x1B\x01\x1B\x01\x1B\x01\x1B\x01\x1B\x01\x1B\x01\x1B\x01\x1B\x01\0\0\xAB\x01\0\0\x14\x01\xAC\x01\0\0\0\0\x1B\x01\x1B\x01\x1B\x01\x1B\x01\x1B\x01\x1B\x01\0\0\0\0\0\0\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\0\0\0\0\0\0\0\0\0\0\xAE\x01\x1C\x01\x1C\x01\x1C\x01\x1C\x01\x1C\x01\x1C\x01\x1C\x01\x1C\x01\x1C\x01\x1C\x01\0\0\x1B\x01\x1B\x01\x1B\x01\x1B\x01\x1B\x01\x1B\x01\x1C\x01\x1C\x01\x1C\x01\x1C\x01\x1C\x01\x1C\x01\x1D\x01\x1D\x01\x1D\x01\x1D\x01\x1D\x01\x1D\x01\x1D\x01\x1D\x01\x1D\x01\x1D\x013\x015\x01J\x013\x014\x01\0\0\0\0\x1D\x01\x1D\x01\x1D\x01\x1D\x01\x1D\x01\x1D\x01\0\0\0\0\0\0\x1C\x01\x1C\x01\x1C\x01\x1C\x01\x1C\x01\x1C\x01\xAD\x013\x01\0\0\0\0\xAF\x01\0\0\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01.\x01\x1D\x01\x1D\x01\x1D\x01\x1D\x01\x1D\x01\x1D\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\0\0e\x01e\x01e\x01e\x01e\x01e\x01e\x01e\x01e\x01e\x01e\x01\0\0\x9A\x01\x9A\x01\x9A\x01\x9A\x01\x9A\x01\x9A\x01\x9A\x01\x9A\x01\x9A\x01\x9A\x01\x9A\x01\0\0\0\0\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01N\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0l\x01k\x01j\x01e\x01\0\0\0\0\0\0\0\0\0\0\x1F\x01\0\0\0\0\0\0\0\0i\x01\x9A\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01\0\0\0\0\0\0\0\0N\x01\0\0N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01\0\0\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\0\0\0\0\0\0\0\0\0\0\xB0\x01\0\0\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x002\x011\x010\x01N\x01\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\0\0\0\0\0\0\0\0/\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x006\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01\0\0\0\0\0\0\0\0N\x01\0\0N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01e\x01g\x01\0\0e\x01f\x01e\x01g\x01\0\0e\x01e\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0e\x01\0\0X\x01\0\0Y\x01e\x01\0\0X\x01\0\0\0\0\0\0\0\0\0\0\0\0[\x01`\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\\\x01\0\0_\x01Z\x01^\x01\0\0\0\0Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01\0\0\0\0\0\0\0\0Y\x01\0\0Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01]\x01Y\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0Y\x01\0\0\0\0Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01\0\0\0\0\0\0\0\0Y\x01\0\0Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01\0\0\x80\x01\0\0\0\0\x7F\x01\0\0\0\0\0\0\x9A\x01\0\0\0\0\x9A\x01\x9A\x01\0\0d\x01c\x01b\x01\0\0\0\0l\x01k\x01j\x01\x84\x01\x83\x01\0\0\x82\x01\0\0\0\0a\x01~\x01\x82\x01\x9A\x01\0\0i\x01\0\0\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01h\x01\0\0\0\0\0\0\0\0\0\0\x82\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\0\0\0\0\0\0\0\0\x83\x01\0\0\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x8A\x01\0\0\0\0\0\0\x82\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\0\0\0\0\0\0\0\0\x8A\x01\0\0\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\0\0\0\0\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\0\0\x88\x01\0\0\0\0\0\0\0\0\0\0\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\0\0\0\0\xA0\x01\x9F\x01\x9E\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x9D\x01\0\0\0\0\0\0\x8C\x01\0\0\0\0\0\0\0\0\x81\x01\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\0\0\x8B\x01\0\0\0\0\0\0\0\0\0\0\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\0\0\0\0\0\0\0\0\x8C\x01\0\0\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8D\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\0\0\x8B\x01\0\0\0\0\0\0\0\0\0\0\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\0\0\0\0\0\0\0\0\x8D\x01\0\0\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8E\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\0\0\x8B\x01\0\0\0\0\0\0\0\0\0\0\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\0\0\0\0\0\0\0\0\x8E\x01\0\0\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8F\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\0\0\x8B\x01\0\0\0\0\0\0\0\0\0\0\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\0\0\0\0\0\0\0\0\x8F\x01\0\0\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x90\x01\x9A\x01\x9C\x01\0\0\x9A\x01\x9A\x01\0\0\0\0\0\0\0\0\0\0\0\0\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\0\0\x8B\x01\x9A\x01\0\0\0\0\0\0\0\0\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\0\0\0\0\0\0\0\0\x90\x01\0\0\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x91\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\0\0\x8B\x01\0\0\0\0\0\0\0\0\0\0\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\0\0\0\0\0\0\0\0\x91\x01\0\0\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x9A\x01\x9C\x01\0\0\x9A\x01\x9B\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x9A\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x95\x01\0\0\0\0\0\0\0\0\xA0\x01\x9F\x01\x9E\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x9D\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x94\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x99\x01\x98\x01\x97\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x96\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xFF\xFF"),XA("\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\0\0\x07\x01\0\0\0\0E\x01L\x01z\x01\x7F\x01\xAC\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x04\0\x05\0\x06\0\x07\0\b\0\b\0\t\0\t\0\n\0\x0B\0\x0B\0\f\0\r\0\x19\0\x1F\0#\0$\0$\0\x06\0*\0\x1A\0\x07\0\x1A\0\x1A\0\x1A\0\x1A\0\x1A\0\x1A\0\x1A\0\x1A\0\x1A\0\x1A\0 \0!\0%\0\r\0-\0 \0!\0,\0%\0+\0+\0.\0/\0,\x001\x006\x007\x009\0;\0 \0!\0:\0:\0=\0;\0>\0?\0A\0\"\0)\x000\x000\x000\x000\x000\x000\x000\x000\x000\x000\x000\x002\0\f\x008\0@\0@\0@\0@\0@\0@\0@\0@\0@\0@\0@\0B\0D\0E\0F\0G\0H\0I\0J\0K\0L\0M\0\0\0\0\0\0\0\x18\0N\0k\0s\0u\0w\0z\0z\x000\0|\0\x8A\0\0\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0@\0\x93\0\x95\0\x98\0\xA0\0\xA2\0\0\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\xA1\0\xA3\0\xA4\0\xA4\0\x18\0\xA1\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x1B\0&\0\xA5\0\xA8\0&\0&\0\xA9\0\xAC\0\xA5\0\xAD\0\x1B\0\xAE\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\xAA\0\xAA\0&\0\xB0\0\xB1\0\xB4\0\xB5\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\xB6\0\xB7\0\xB8\0\xB8\0\x1B\0\xBB\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1C\0\xAB\0\xB9\0\xBC\0\xBD\0\xBF\0\xC0\0\xAB\0\xB9\0\xC2\0\x1C\0\xC3\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\xC4\0\xC5\0\xC6\0\xC7\0\xC8\0\xC9\0\xCA\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\xCB\0\xCE\0\xCF\0\xD3\0\x1C\0\xD4\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\x005\0\xD0\0\xD0\x005\x005\0<\0\xD5\0\xD7\0<\0<\0a\0a\0a\0a\0a\0a\0a\0a\0a\0a\0\xD1\0\xD8\0\xF1\x005\0\xF7\0\xF8\0\xD1\0\x9B\0<\0\x9B\0\x9B\0\x9B\0\x9B\0\x9B\0\x9B\0\x9B\0\x9B\0\x9B\0\x9B\0\xF9\0\xFA\0\xFB\0%\x01&\0&\0&\0\"\x01.\x01\"\x015\0/\x010\x01.\x017\x01<\x001\x011\x01&\0\xCD\0\xCD\0\xCD\0\xCD\0\xCD\0\xCD\0\xCD\0\xCD\0\xCD\0\xCD\x008\x01;\x01S\0\xDD\0\xDD\0\xDD\0\xDD\0\xDD\0\xDD\0\xDD\0\xDD\0\xDD\0\xDD\0<\x01S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0(\x015\x009\x019\x01=\x01?\x01<\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0@\x01R\x01R\x01m\0S\0a\x01S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0`\x01b\x01c\x01c\x01m\0`\x01m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0i\x015\x005\x005\x002\x01:\x01<\0<\0<\0T\x002\x01:\x01j\x01d\x01m\x015\0T\0n\x01T\0d\x01<\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0k\x01k\x01 \x01o\x01q\x01r\x01\x91\x01T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0\x95\x01 \x01\x96\x01\x97\x01T\0\x95\x01T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0U\0\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x98\x01\x98\x01\x9D\x01U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0I\x01\x9E\x01\xA1\x01I\x01\xA2\x01(\x01\xA3\x01U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0\x9F\x01\x9F\x01\xA5\x01\xA6\x01U\0\xAE\x01U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0V\0\x11\x01\x11\x01\x11\x01\x11\x01\x11\x01\x11\x01\x11\x01\x11\x01\xFF\xFF\xFF\xFF\xFF\xFFV\0V\0V\0V\0V\0V\0V\0V\0V\0V\0l\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFl\x01V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFV\0\xFF\xFFV\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0W\0\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01 \x01W\0\xFF\xFFW\0W\0W\0W\0W\0W\0W\0W\0W\0W\0\x99\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x99\x01W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFW\0\xFF\xFFW\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0X\0\xFF\xFF\xA0\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFI\x01\xA0\x01\xFF\xFF\xFF\xFF\xFF\xFFX\0X\0X\0X\0X\0X\0X\0X\0X\0X\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFX\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFX\0\xFF\xFFX\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0Y\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFY\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFY\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFY\0\xFF\xFFY\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Z\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFZ\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFZ\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFZ\0\xFF\xFFZ\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0[\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF[\0\xFF\xFF[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0\\\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\\\0\xFF\xFF\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0]\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF]\0\xFF\xFF]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0^\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF^\0\xFF\xFF^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF^\0\xFF\xFF^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0_\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF_\0\xFF\xFF_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0`\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF`\0\xFF\xFF`\0\xFF\xFF\xFF\xFF`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF`\0\xFF\xFF`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0b\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFb\0b\0b\0b\0b\0b\0b\0b\0b\0b\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFb\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFb\0\xFF\xFFb\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0c\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFc\0c\0c\0c\0c\0c\0c\0c\0c\0c\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFc\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFc\0\xFF\xFFc\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0d\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFd\0d\0d\0d\0d\0d\0d\0d\0d\0d\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFd\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFd\0\xFF\xFFd\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0e\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFe\0e\0e\0e\0e\0e\0e\0e\0e\0e\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFe\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFe\0\xFF\xFFe\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0f\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFf\0f\0f\0f\0f\0f\0f\0f\0f\0f\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFf\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFf\0\xFF\xFFf\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0g\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFg\0g\0g\0g\0g\0g\0g\0g\0g\0g\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFg\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFg\0\xFF\xFFg\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0h\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFh\0h\0h\0h\0h\0h\0h\0h\0h\0h\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFh\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFh\0\xFF\xFFh\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0i\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFi\0i\0i\0i\0i\0i\0i\0i\0i\0i\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFi\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFi\0\xFF\xFFi\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0j\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFO\x01O\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFj\0j\0j\0j\0j\0j\0j\0j\0j\0j\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFj\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFj\0\xFF\xFFj\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0\x85\0\x85\0\xFF\xFF\x85\0\x85\0\xFF\xFF\xFF\xFF\xFF\xFF\xAF\0\xAF\0\xAF\0\xAF\0\xAF\0\xAF\0\xAF\0\xAF\0\xAF\0\xAF\0\xAF\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x85\0\xFF\xFF\x85\0\xFF\xFF\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\xAF\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0O\x01\x85\0\xFF\xFF\x85\0\xFF\xFF\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x99\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x99\0\xFF\xFF\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x84\x01\x84\x01\x84\x01\x84\x01\x84\x01\x84\x01\x84\x01\x84\x01\x84\x01\x84\x01\xFF\xFF\xFF\xFF\x85\0\x85\0\x85\0\x9A\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x85\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x85\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\xFF\xFF\xFF\xFF\x84\x01\xFF\xFF\x9A\0\xFF\xFF\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9C\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x9C\0\xFF\xFF\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x9C\0\xFF\xFF\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9D\0\xA6\0\xFF\xFF\xFF\xFF\xA6\0\xA6\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x9D\0\xFF\xFF\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\xFF\xFF\xFF\xFF\xA6\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x9D\0\xFF\xFF\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9E\0\xFF\xFF\0\x01\x9E\0\x9E\0\xB3\0\xFF\xFF\xFF\xFF\xB3\0\xB3\0\xBA\0\xFF\xFF\xFF\xFF\xBA\0\xBA\x003\x01\xFF\xFF\xFF\xFF3\x013\x01\xFF\xFF\xFF\xFF\xFF\xFF\x9E\0\xFF\xFF\xFF\xFF\0\x01\xFF\xFF\xB3\0\xFF\xFF\xFF\xFF\0\x01\xFF\xFF\xBA\0\xFF\xFF\xFF\xFF\xFF\xFF\x9E\x003\x01\x9E\0\x9E\0\x9E\0\x9E\0\x9E\0\x9E\0\x9E\0\x9E\0\x9E\0\x9E\0\xD2\0\xFF\xFF\xFF\xFF\xD2\0\xD2\0\xB3\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xBA\0\xBE\0\xBE\0\xBE\0\xBE\0\xBE\0\xBE\0\xBE\0\xBE\0\xBE\0\xBE\0\xBE\0\xFF\xFF\xD2\0\xD6\0\xD6\0\xD6\0\xD6\0\xD6\0\xD6\0\xD6\0\xD6\0\xD6\0\xD6\0\xD6\0\0\x01\xFF\xFF\xD2\0\xFF\xFF\xD2\0\xD2\0\xD2\0\xD2\0\xD2\0\xD2\0\xD2\0\xD2\0\xD2\0\xD2\0\xB3\0u\x01\xFF\xFF\xFF\xFFu\x01\xBA\0\xFF\xFF\xFF\xFF\xFF\xFF\xBE\0\x85\x01\x85\x01\x85\x01\x85\x01\x85\x01\x85\x01\x85\x01\x85\x01\x85\x01\x85\x01\xFF\xFF\x85\x01\xD6\0\xD9\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xA6\0\xA6\0\xA6\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xFF\xFF\xA6\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFu\x01\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xD9\0\xFF\xFF\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFu\x01\xFF\xFF\xFF\xFF\xFF\xFF\x9E\0\x9E\0\x9E\0\xFF\xFF\xFF\xFF\xB3\0\xB3\0\xB3\0\xFF\xFF\xFF\xFF\xBA\0\xBA\0\xBA\0\xFF\xFF\x9E\x003\x013\x013\x01\xFF\xFF\xB3\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xBA\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF3\x01\xFF\xFF\xFF\xFF\0\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xDA\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xD2\0\xD2\0\xD2\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xFF\xFF\xD2\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xDA\0\xFF\xFF\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDB\0\xFF\xFFu\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xDB\0\xFF\xFF\xDB\0\xFF\xFF\xFF\xFF\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xDB\0\xFF\xFF\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDC\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xDC\0\xFF\xFF\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDE\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xDE\0\xFF\xFF\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDF\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xDF\0\xFF\xFF\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xE0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE0\0\xFF\xFF\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE1\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE1\0\xFF\xFF\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE2\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE2\0\xFF\xFF\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE3\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE3\0\xFF\xFF\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE3\0\xFF\xFF\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE4\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE4\0\xFF\xFF\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE5\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE5\0\xFF\xFF\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE6\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE6\0\xFF\xFF\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE7\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE7\0\xFF\xFF\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE8\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE8\0\xFF\xFF\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE9\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE9\0\xFF\xFF\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xEA\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xEA\0\xFF\xFF\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xEA\0\xFF\xFF\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEB\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xEB\0\xFF\xFF\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEC\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xEC\0\xFF\xFF\xEC\0\xFF\xFF\xFF\xFF\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xEC\0\xFF\xFF\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xED\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xED\0\xFF\xFF\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xEE\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xEE\0\xFF\xFF\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEF\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xEF\0\xFF\xFF\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xF0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xF0\0\xFF\xFF\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF3\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xF3\0\xFF\xFF\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF4\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xF4\0\xFF\xFF\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF5\x004\x014\x01\xFF\xFF4\x014\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xFF\xFF\xFF\xFF4\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xF5\0\xFF\xFF\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF6\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\x05\x01\xFF\xFF\xFF\xFF\x05\x01\xF6\0\xFF\xFF\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x05\x01\x05\x01\x05\x01\x05\x01\x05\x01\x05\x01\x05\x01\x05\x01>\x01>\x01>\x01>\x01>\x01>\x01>\x01>\x01>\x01>\x01>\x01\xFF\xFF\xFF\xFF\xFF\xFFC\x01\xFF\xFF\xFF\xFFC\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF4\x014\x014\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x05\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x05\x014\x01\xFF\xFF\xFF\xFF\x05\x01>\x01\xFF\xFF\xFF\xFF\xFF\xFFC\x01\xFF\xFF\xFF\xFF\x05\x01\xFF\xFF\xFF\xFF\xFF\xFF\x05\x01\xFF\xFF\x05\x01\x05\x01\x05\x01\xFF\xFF\x05\x01\t\x01\t\x01\t\x01\t\x01\t\x01\t\x01\t\x01\t\x01\t\x01\t\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\t\x01\t\x01\t\x01\t\x01\t\x01\t\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFC\x01C\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x12\x01\x12\x01\x12\x01\x12\x01\x12\x01\x12\x01\x12\x01\x12\x01\x12\x01\x12\x01\xFF\xFF\t\x01\t\x01\t\x01\t\x01\t\x01\t\x01\x12\x01\x12\x01\x12\x01\x12\x01\x12\x01\x12\x01\x15\x01\x15\x01\x15\x01\x15\x01\x15\x01\x15\x01\x15\x01\x15\x01\x15\x01\x15\x01\xFF\xFF\xFF\xFFe\x01\xFF\xFF\t\x01e\x01e\x01\x15\x01\x15\x01\x15\x01\x15\x01\x15\x01\x15\x01\xFF\xFF\xFF\xFF\xFF\xFF\x12\x01\x12\x01\x12\x01\x12\x01\x12\x01\x12\x01\xFF\xFF\xFF\xFF\xFF\xFFe\x01\xFF\xFF\xFF\xFF\x19\x01\x19\x01\x19\x01\x19\x01\x19\x01\x19\x01\x19\x01\x19\x01\x19\x01\x19\x01\xFF\xFF\x15\x01\x15\x01\x15\x01\x15\x01\x15\x01\x15\x01\x19\x01\x19\x01\x19\x01\x19\x01\x19\x01\x19\x01\x1A\x01\x1A\x01\x1A\x01\x1A\x01\x1A\x01\x1A\x01\x1A\x01\x1A\x01\x1A\x01\x1A\x01\xFF\xFF\xA9\x01\xFF\xFF\x05\x01\xA9\x01\xFF\xFF\xFF\xFF\x1A\x01\x1A\x01\x1A\x01\x1A\x01\x1A\x01\x1A\x01\xFF\xFF\xFF\xFF\xFF\xFF\x19\x01\x19\x01\x19\x01\x19\x01\x19\x01\x19\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xA9\x01\x1B\x01\x1B\x01\x1B\x01\x1B\x01\x1B\x01\x1B\x01\x1B\x01\x1B\x01\x1B\x01\x1B\x01\xFF\xFF\x1A\x01\x1A\x01\x1A\x01\x1A\x01\x1A\x01\x1A\x01\x1B\x01\x1B\x01\x1B\x01\x1B\x01\x1B\x01\x1B\x01\x1C\x01\x1C\x01\x1C\x01\x1C\x01\x1C\x01\x1C\x01\x1C\x01\x1C\x01\x1C\x01\x1C\x01,\x01,\x01C\x01,\x01,\x01\xFF\xFF\xFF\xFF\x1C\x01\x1C\x01\x1C\x01\x1C\x01\x1C\x01\x1C\x01\xFF\xFF\xFF\xFF\xFF\xFF\x1B\x01\x1B\x01\x1B\x01\x1B\x01\x1B\x01\x1B\x01\xA9\x01,\x01\xFF\xFF\xFF\xFF\xA9\x01\xFF\xFF\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01,\x01\x1C\x01\x1C\x01\x1C\x01\x1C\x01\x1C\x01\x1C\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\xFF\xFFp\x01p\x01p\x01p\x01p\x01p\x01p\x01p\x01p\x01p\x01p\x01\xFF\xFF\xA4\x01\xA4\x01\xA4\x01\xA4\x01\xA4\x01\xA4\x01\xA4\x01\xA4\x01\xA4\x01\xA4\x01\xA4\x01\xFF\xFF\xFF\xFF\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01H\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFe\x01e\x01e\x01p\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x1E\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFe\x01\xA4\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFH\x01\xFF\xFFH\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01\xFF\xFF\x86\x01\x86\x01\x86\x01\x86\x01\x86\x01\x86\x01\x86\x01\x86\x01\x86\x01\x86\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xA9\x01\xFF\xFF\x86\x01\x86\x01\x86\x01\x86\x01\x86\x01\x86\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF,\x01,\x01,\x01N\x01\x86\x01\x86\x01\x86\x01\x86\x01\x86\x01\x86\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF,\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF,\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFN\x01\xFF\xFFN\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01V\x01V\x01\xFF\xFFV\x01V\x01f\x01f\x01\xFF\xFFf\x01f\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFV\x01\xFF\xFFV\x01\xFF\xFFV\x01f\x01\xFF\xFFV\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFV\x01V\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFV\x01\xFF\xFFV\x01V\x01V\x01\xFF\xFF\xFF\xFFV\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFV\x01\xFF\xFFV\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01Y\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFY\x01\xFF\xFF\xFF\xFFY\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFY\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFY\x01\xFF\xFFY\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01\xFF\xFF|\x01\xFF\xFF\xFF\xFF|\x01\xFF\xFF\xFF\xFF\xFF\xFF\x9A\x01\xFF\xFF\xFF\xFF\x9A\x01\x9A\x01\xFF\xFFV\x01V\x01V\x01\xFF\xFF\xFF\xFFf\x01f\x01f\x01~\x01~\x01\xFF\xFF|\x01\xFF\xFF\xFF\xFFV\x01|\x01|\x01\x9A\x01\xFF\xFFf\x01\xFF\xFF~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01V\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF|\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF~\x01\xFF\xFF~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01\x83\x01\xFF\xFF\xFF\xFF\xFF\xFF|\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x83\x01\xFF\xFF\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\xFF\xFF\xFF\xFF\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\xFF\xFF\x87\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\xFF\xFF\xFF\xFF\x9A\x01\x9A\x01\x9A\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x9A\x01\xFF\xFF\xFF\xFF\xFF\xFF\x8A\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF|\x01\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\xFF\xFF\x8A\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x8A\x01\xFF\xFF\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8C\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\xFF\xFF\x8C\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x8C\x01\xFF\xFF\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8D\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\xFF\xFF\x8D\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x8D\x01\xFF\xFF\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8E\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\xFF\xFF\x8E\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x8E\x01\xFF\xFF\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8F\x01\x9B\x01\x9B\x01\xFF\xFF\x9B\x01\x9B\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\xFF\xFF\x8F\x01\x9B\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x8F\x01\xFF\xFF\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x90\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\xFF\xFF\x90\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x90\x01\xFF\xFF\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x92\x01\x92\x01\xFF\xFF\x92\x01\x92\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x92\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x92\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x9B\x01\x9B\x01\x9B\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x9B\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x92\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x92\x01\x92\x01\x92\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x92\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x92\x01"),XA("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\n\0\x16\0\"\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x02\0\0\0\0\0\0\0\x01\0\f\0\0\0\f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0,\x006\0_\0B\0v\0L\0N\0\0\0\x81\0\0\0\x98\0\0\0\xA2\0\xAC\0\xB6\0\0\0\xC0\0\0\0\xCA\0\0\0\xE1\0\xEB\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x04\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x0E\x01\x1A\x01&\x01W\x01\0\0\0\0\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x07\0\0\0\0\0\0\0\0\0\0\0\0\0\t\0\x0B\0\r\0\x0F\0\xE5\0\x1A\0\b\0h\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0H\x01\0\0\0\0\0\0\0\0y\x01\r\0\x1C\0\x10\0\x1A\x01\x1D\0E\0\x83\x01\0\0\x8D\x01\x9A\x01\xA4\x01\xAE\x01\0\0\0\0\xB8\x01\xC2\x01\xDB\x01\xE5\x01\x89\0\x8B\0\0\0\xF9\x01\0\0\x03\x02\0\0\r\x02\x17\x02\0\0!\x02\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),XA("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x0F\0\x0F\0\0\0\x0F\0\0\0\x0F\0\x0F\0\0\0#\0\0\0&\0)\0)\0)\0\0\0)\0)\0\0\0,\0\0\0/\0\0\0\0\0,\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0W\0W\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0h\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0W\0k\0k\0s\0\0\0s\0v\0v\0W\0k\0~\0k\0k\0&\0\x8F\0/\0\x94\0\x99\0\x99\0\x99\0\x99\0\x99\0\x9E\0\xA1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),XA("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),XA("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\t\0\0\0\t\0\t\0\t\0\t\0\t\0e\0\0\0e\0e\0e\0e\0e\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\t\0\0\0\t\0\0\0\0\0\0\0\0\0e\0\0\0e\0\t\0e\0\0\0\0\0\0\0\0\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\0\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\0\0\x04\0\x04\0\x04\0\x04\0\x04\0\x04\0\x04\0\x04\0\x01\0\x01\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\0\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x01\0\x01\0 \0 \0 \0 \0\t\0\t\0\t\0\t\0\t\0\t\0\t\0\t\0\t\0\t\0\t\0\t\0\t\0e\0\t\0\x15\0\x15\0\x15\0\x15\0\x15\0\x15\0\x15\0\x15\0\x15\0\x15\0e\0e\x002\x002\x002\0\0\0\t\0\x15\0\x15\0\x15\0\x15\0\x15\0\x15\0\x1D\0\x1D\0\x1D\0\x1D\0\x1D\0\x1D\0\x1D\0\x1D\0e\x002\0\t\0\x1D\0\x1D\0\x1D\0\x1D\0\x1D\0\x1D\0\x1D\0\x1D\0\x8C\0\x8C\0\x8C\0\x8C\0\0\0\0\0\t\0\x15\0\x15\0\x15\0\x15\0\x15\0\x15\0\x01\0e\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x15\0\x15\0\x15\0\x15\0\x15\0\x15\0\x15\0\x15\0\x15\0\x15\x002\0\0\0\0\0\0\0\0\0\0\0\0\0\x15\0\x15\0\x15\0\x15\0\x15\0\x15\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\0\0\0\0\0\0\0\0\0\0\0\0\x15\0\x15\0\x15\0\x15\0\x15\0\x15\x002\0\0\0\0\0M\0M\0M\0M\0M\0M\0M\0M\0M\0M\0R\0R\0R\0R\0R\0R\0R\0R\0R\0R\0R\0\0\0R\0R\0R\0R\0R\0R\0R\0R\0R\0R\0M\0\0\0`\0`\0`\0`\0`\0`\0`\0`\0R\0R\x002\0\0\0\0\x002\x002\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x002\0M\0M\0M\0M\0M\0M\0M\0M\0M\0M\x002\0\0\0\0\x002\x002\0R\0R\0R\0R\0R\0R\0R\0R\0R\0R\0\0\0\0\0\0\0e\0\0\0\0\0\0\0\0\x002\x002\x002\x002\x002\x002\x002\x002\x002\x002\x002\x002\0\0\0\0\0\0\0\0\0R\0R\0R\0R\0R\0R\0R\0R\0R\0R\0R\0R\0R\0R\0R\0R\0R\0R\0R\0R\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0\0\0\0\x002\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0R\0R\0R\0R\0R\0R\0R\0R\0R\0R\0{\0{\0{\0{\0{\0{\0{\0{\0{\0{\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0{\0{\0{\0{\0{\0{\0R\0\0\0\x81\0\x81\0\x81\0\x81\0\x81\0\x81\0\x81\0\x81\0\x86\0\x86\0\x89\0\x89\0\x89\0\x89\0\x89\0\x89\0\x89\0\x89\0\0\0\0\0\0\0\0\0\0\0\0\0{\0{\0{\0{\0{\0{\0\x89\0\x89\0\x89\0\x89\0\x89\0\x89\0\x89\0\x89\0R\0\0\0\x86\0\x86\0\x86\0\x86\0\x86\0\x86\0\x86\0\x86\0\x86\0\x86\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0{\0{\0{\0{\0{\0{\0{\0{\0{\0{\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0{\0{\0{\0{\0{\0{\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0{\0{\0{\0{\0{\0{\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),XA("\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF5\0\xFF\xFF<\x005\x005\0<\0<\0\xB3\0\xFF\xFF\xBA\0\xB3\0\xB3\0\xBA\0\xBA\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF5\0\xFF\xFF<\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xB3\0\xFF\xFF\xBA\0!\0\xA1\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x1A\0\x1A\0\x1A\0\x1A\0\x1A\0\x1A\0\x1A\0\x1A\0\x1A\0\x1A\0\x1B\0\xFF\xFF\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1C\0\xFF\xFF\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0W\0\xFF\xFFW\0W\0W\0W\0W\0W\0W\0W\0W\0W\0Y\0Y\0Z\0Z\0>\0@\0@\0@\0@\0@\0@\0@\0@\0@\0@\0@\0A\0\xBC\0=\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0\xBB\0\xBF\0\xD3\0\xD4\0\xD7\0\xFF\xFF?\0V\0V\0V\0V\0V\0V\0X\0X\0X\0X\0X\0X\0X\0X\0\xBD\0\xD5\0@\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\xE5\0\xE5\0\xE6\0\xE6\0\xFF\xFF\xFF\xFFB\0V\0V\0V\0V\0V\0V\0^\0\xC0\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0a\0a\0a\0a\0a\0a\0a\0a\0a\0a\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0\xD8\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFf\0f\0f\0f\0f\0f\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFf\0f\0f\0f\0f\0f\0\x85\0\xFF\xFF\xFF\xFF\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x9B\0\x9B\0\x9B\0\x9B\0\x9B\0\x9B\0\x9B\0\x9B\0\x9B\0\x9B\0\x9C\0\xFF\xFF\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9D\0\xFF\xFF\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9E\0\xFF\xFF\xFF\xFF\x9E\0\x9E\0\xBE\0\xBE\0\xBE\0\xBE\0\xBE\0\xBE\0\xBE\0\xBE\0\xBE\0\xBE\0\xBE\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x9E\0\xCD\0\xCD\0\xCD\0\xCD\0\xCD\0\xCD\0\xCD\0\xCD\0\xCD\0\xCD\0\xD2\0\xFF\xFF\xFF\xFF\xD2\0\xD2\0\x9E\0\x9E\0\x9E\0\x9E\0\x9E\0\x9E\0\x9E\0\x9E\0\x9E\0\x9E\0\xFF\xFF\xFF\xFF\xFF\xFF\xBE\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xD2\0\xD6\0\xD6\0\xD6\0\xD6\0\xD6\0\xD6\0\xD6\0\xD6\0\xD6\0\xD6\0\xD6\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xD2\0\xD2\0\xD2\0\xD2\0\xD2\0\xD2\0\xD2\0\xD2\0\xD2\0\xD2\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xFF\xFF\xFF\xFF\xD6\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDD\0\xDD\0\xDD\0\xDD\0\xDD\0\xDD\0\xDD\0\xDD\0\xDD\0\xDD\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE3\0\xFF\xFF\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xEA\0\xFF\xFF\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF"),XA("\xFF\x01\xFF\xFF\x03\xFF\x01\xFF\xFF\x02\xFF\xFF\0\x02\xFF\0\x01\xFF\x06\xFF\xFF\x07\xFF\xFF\x01\xFF\x03\xFF\xFF\x05\xFF\xFF\x04\xFF\xFF\0\x04\xFF\0\x05\xFF\0\x03\xFF\0\x06\xFF\0\x07\xFF\x11\xFF\x10\xFF\x0E\xFF\r\xFF\f\xFF\x0B\xFF\n\xFF\t\xFF\b\xFF\x07\xFF\x06\xFF\x05\xFF\x04\xFF\xFF\x13\xFF\x12\xFF\xFF\x12\xFF\x13\xFF\xFF\x03\x11\x02\x12\x01\x0F\0\x10\xFF\x16\xFF\x13\xFF\xFF\x14\xFF\xFF\0\x14\xFF\x01\x13\0\x0E\xFF\x15\xFF\xFF\0\r\xFF\x01\x15\0\f\xFF\x19\xFF\xFF\0\t\xFF\x13\xFF\x16\xFF\xFF\x13\xFF\xFF\x18\xFF\xFF\x17\xFF\xFF\x01\x17\0\x04\xFF\x01\x18\0\x06\xFF\x01\x16\0\b\xFF\0\x0B\xFF\x01\x19\0\n\xFF")],XH=[0,0,0,0,0,1,0],WH=[0,1];Lk(11,[SM,XA(RJ),-12],RJ),Lk(10,YH,Lz),Lk(9,[SM,XA(LM),SW],LM),Lk(8,[SM,XA(RW),-9],RW),Lk(7,[SM,XA(hq),-8],hq),Lk(6,OH,ZW),Lk(5,[SM,XA(WM),-6],WM),Lk(4,[SM,XA(YF),-5],YF),Lk(3,RH,UY),Lk(2,LH,UF),Lk(1,[SM,XA(QM),-2],QM),Lk(0,[SM,XA(YU),-1],YU);var JH=XA(Xz),ZH=XA($q),KH=XA("Pervasives.Exit"),QH=XA("Array.blit"),$H=XA("Array.Bottom"),SG=[0,XA("list.ml"),Nq,11],TG=XA("hd"),PG=XA("\\b"),_G=XA("\\t"),NG=XA("\\n"),IG=XA("\\r"),LG=XA("\\\\"),RG=XA("\\'"),OG=XA("Char.chr"),YG=XA("String.contains_from / Bytes.contains_from"),MG=XA("String.blit / Bytes.blit_string"),VG=XA("Bytes.blit"),UG=XA("String.sub / Bytes.sub"),XG=XA(LW),WG=XA("Sys.Break"),JG=XA("Set.remove_min_elt"),ZG=[0,0,0,0],KG=[0,0,0],QG=[0,XA("set.ml"),372,18],$G=XA(_z),SZ=XA(_z),TZ=XA(_z),PZ=XA(_z),_Z=XA("Queue.Empty"),NZ=XA("CamlinternalLazy.Undefined"),IZ=XA("Buffer.add: cannot grow buffer"),LZ=XA("%c"),RZ=XA("%s"),OZ=XA(Mz),YZ=XA("%li"),MZ=XA("%ni"),VZ=XA("%Li"),UZ=XA("%f"),XZ=XA("%B"),WZ=XA("%{"),JZ=XA("%}"),ZZ=XA("%("),KZ=XA("%)"),QZ=XA("%a"),$Z=XA("%t"),SK=XA("%r"),TK=XA("%_r"),PK=[0,XA(XM),793,23],_K=[0,XA(XM),761,21],NK=[0,XA(XM),762,21],IK=[0,XA(XM),765,21],LK=[0,XA(XM),766,21],RK=[0,XA(XM),769,22],OK=[0,XA(XM),770,22],YK=[0,XA(XM),774,30],MK=[0,XA(XM),775,30],VK=[0,XA(XM),779,26],UK=[0,XA(XM),RV,26],XK=[0,XA(XM),NB,28],WK=[0,XA(XM),790,28],JK=[0,XA(XM),794,23],ZK=XA(OV),KK=[0,XA(XM),1415,4],QK=XA("Printf: bad conversion %["),$K=[0,XA(XM),1483,39],SQ=[0,XA(XM),1505,31],TQ=[0,XA(XM),1506,31],PQ=XA("Printf: bad conversion %_"),_Q=XA("@{"),NQ=XA("@["),IQ=[0,XA(JV),[0,XA(JV),0]],LQ=XA(VJ),RQ=XA(Lq),OQ=XA("neg_infinity"),YQ=XA("infinity"),MQ=[0,XA(Nz),[0,XA(LB),0]],VQ=[0,XA(Tz),[0,XA(LB),0]],UQ=[0,XA(NW),[0,XA(LB),0]],XQ=[0,XA(Nz),[0,XA(MY),0]],WQ=[0,XA(Tz),[0,XA(MY),0]],JQ=[0,XA(NW),[0,XA(MY),0]],ZQ=[0,XA(Nz),[0,XA(SV),0]],KQ=[0,XA(IM),[0,XA(SV),0]],QQ=[0,XA(Nz),[0,XA(OB),0]],$Q=[0,XA(IM),[0,XA(OB),0]],S$=[0,XA(Nz),[0,XA(PF),0]],T$=[0,XA(IM),[0,XA(PF),0]],P$=[0,XA(Nz),[0,XA("u"),0]],_$=XA(VV),N$=XA("%+d"),I$=XA("% d"),L$=XA(Mz),R$=XA("%+i"),O$=XA("% i"),Y$=XA("%x"),M$=XA("%#x"),V$=XA("%X"),U$=XA("%#X"),X$=XA("%o"),W$=XA("%#o"),J$=XA(OV),Z$=[0,XA(XY),[0,XA(XY),0]],K$=XA("@]"),Q$=XA("@}"),$$=XA("@?"),eee=XA("@\n"),tee=XA("@."),aee=XA("@@"),nee=XA("@%"),ree=XA("@"),see=XA("CamlinternalFormat.Type_mismatch"),iee=XA(SV),oee=XA("OCAMLRUNPARAM"),lee=XA("CAMLRUNPARAM"),pee=XA(LW),dee=XA("TMPDIR"),cee=XA("TEMP"),uee=XA("Cygwin"),mee=XA(ZV),fee=XA("Win32"),hee=[0,XA("filename.ml"),Pq,9],yee=XA("Js.Error"),bee=XA(TF),gee=XA(OF),xee=XA("Unexpected number"),See=XA("Unexpected string"),Eee=XA("Unexpected identifier"),Tee=XA("Unexpected reserved word"),Aee=XA("Unexpected end of input"),Pee=XA("Unexpected variance sigil"),_ee=XA("Type aliases are not allowed in untyped mode"),Nee=XA("Type annotations are not allowed in untyped mode"),kee=XA("Type declarations are not allowed in untyped mode"),Cee=XA("Type imports are not allowed in untyped mode"),wee=XA("Type exports are not allowed in untyped mode"),vee=XA("Interfaces are not allowed in untyped mode"),Iee=XA("Illegal newline after throw"),jee=XA("Invalid regular expression"),Lee=XA("Invalid regular expression: missing /"),Dee=XA("Invalid left-hand side in assignment"),Ree=XA("Invalid left-hand side in exponentiation expression"),Oee=XA("Invalid left-hand side in for-in"),Yee=XA("Invalid left-hand side in for-of"),Fee=XA("found an expression instead"),Mee=XA("Expected an object pattern, array pattern, or an identifier but "),Vee=XA("More than one default clause in switch statement"),Bee=XA("Missing catch or finally after try"),Uee=XA("Illegal continue statement"),Xee=XA("Illegal break statement"),Wee=XA("Illegal return statement"),qee=XA("Illegal yield expression"),Jee=XA("Strict mode code may not include a with statement"),zee=XA("Catch variable may not be eval or arguments in strict mode"),Hee=XA("Variable name may not be eval or arguments in strict mode"),Gee=XA("Parameter name eval or arguments is not allowed in strict mode"),Zee=XA("Strict mode function may not have duplicate parameter names"),Kee=XA("Function name may not be eval or arguments in strict mode"),Qee=XA("Octal literals are not allowed in strict mode."),$ee=XA("Delete of an unqualified identifier in strict mode."),ete=XA("Duplicate data property in object literal not allowed in strict mode"),tte=XA("Object literal may not have data and accessor property with the same name"),ate=XA("Object literal may not have multiple get/set accessors with the same name"),nte=XA("Assignment to eval or arguments is not allowed in strict mode"),rte=XA("Postfix increment/decrement may not have eval or arguments operand in strict mode"),ste=XA("Prefix increment/decrement may not have eval or arguments operand in strict mode"),ite=XA("Use of future reserved word in strict mode"),ote=XA("JSX attributes must only be assigned a non-empty expression"),lte=XA("JSX value should be either an expression or a quoted JSX text"),pte=XA("Const must be initialized"),dte=XA("Destructuring assignment must be initialized"),cte=XA("Illegal newline before arrow"),ute=XA(" declared at top level or immediately within another function."),mte=XA("In strict mode code, functions can only be"),fte=XA("elements must be wrapped in an enclosing parent tag"),hte=XA("Unexpected token <. Remember, adjacent JSX "),yte=XA("Rest parameter must be final parameter of an argument list"),bte=XA("async is an implementation detail and isn't necessary for your declare function statement. It is sufficient for your declare function to just have a Promise return type."),gte=XA("`declare export let` is not supported. Use `declare export var` instead."),xte=XA("`declare export const` is not supported. Use `declare export var` instead."),Ste=XA("`declare export type` is not supported. Use `export type` instead."),Ete=XA("`declare export interface` is not supported. Use `export interface` instead."),Tte=XA("`export * as` is an early-stage proposal and is not enabled by default. To enable support in the parser, use the `esproposal_export_star_as` option"),Ate=XA("When exporting a class as a named export, you must specify a class name. Did you mean `export default class ...`?"),Pte=XA("When exporting a function as a named export, you must specify a function name. Did you mean `export default function ...`?"),_te=XA("Found a decorator in an unsupported position."),Nte=XA("Type parameter declaration needs a default, since a preceding type parameter declaration has a default."),kte=XA("The Windows version of OCaml has a bug in how it parses hexidecimal numbers. It is fixed in OCaml 4.03.0. Until we can switch to 4.03.0, please avoid either hexidecimal notation or Windows."),Cte=XA("Duplicate `declare module.exports` statement!"),wte=XA("Found both `declare module.exports` and `declare export` in the same module. Modules can only have 1 since they are either an ES module xor they are a CommonJS module."),vte=XA("Getter should have zero parameters"),Ite=XA("Setter should have exactly one parameter"),jte=XA("`import type` or `import typeof`!"),Lte=XA("Imports within a `declare module` body must always be "),Dte=XA("The `type` and `typeof` keywords on named imports can only be used on regular `import` statements. It cannot be used with `import type` or `import typeof` statements"),Rte=XA("Missing comma between import specifiers"),Ote=XA("Unexpected parser state: "),Yte=XA("Unexpected token "),Fte=[0,[11,XA("Unexpected token `"),[2,0,[11,XA("`. Did you mean `"),[2,0,[11,XA("`?"),0]]]]],XA("Unexpected token `%s`. Did you mean `%s`?")],Mte=XA(JV),Vte=XA("Invalid flags supplied to RegExp constructor '"),Bte=XA(JV),Ute=XA("Undefined label '"),Xte=XA("' has already been declared"),Wte=XA(" '"),qte=XA("Expected corresponding JSX closing tag for "),Jte=[0,[11,XA("Duplicate export for `"),[2,0,[12,96,0]]],XA("Duplicate export for `%s`")],zte=XA("Parse_error.Error"),Hte=[0,XA(_M),18,6],Gte=[0,XA(_M),39,6],Zte=[0,XA(_M),44,6],Kte=[0,XA(_M),QV,6],Qte=[0,XA(_M),515,6],$te=[0,XA(_M),RV,6],eae=[0,XA(_M),883,6],tae=[0,XA(_M),XW,6],aae=[0,XA(_M),XU,6],nae=[0,XA(_M),1008,6],rae=[0,XA(_M),1031,6],sae=XA("comments"),iae=XA(LU),oae=XA("Program"),lae=XA("EmptyStatement"),pae=XA("DebuggerStatement"),dae=XA(WJ),cae=XA("ExpressionStatement"),uae=XA(Tq),mae=XA(NF),fae=XA(TJ),hae=XA("IfStatement"),yae=XA(LU),bae=XA(XF),gae=XA("LabeledStatement"),xae=XA(XF),Sae=XA("BreakStatement"),Eae=XA(XF),Tae=XA("ContinueStatement"),Aae=XA(LU),Pae=XA(MV),_ae=XA("WithStatement"),Nae=XA("cases"),kae=XA("discriminant"),Cae=XA("SwitchStatement"),wae=XA(JW),vae=XA("ReturnStatement"),Iae=XA(JW),jae=XA("ThrowStatement"),Lae=XA("finalizer"),Dae=XA("handler"),Rae=XA("block"),Oae=XA("TryStatement"),Yae=XA(LU),Fae=XA(TJ),Mae=XA("WhileStatement"),Vae=XA(TJ),Bae=XA(LU),Uae=XA("DoWhileStatement"),Xae=XA(LU),Wae=XA("update"),qae=XA(TJ),Jae=XA(TW),zae=XA("ForStatement"),Hae=XA(KM),Gae=XA(LU),Zae=XA(PU),Kae=XA(TU),Qae=XA("ForInStatement"),$ae=XA("ForAwaitStatement"),ene=XA("ForOfStatement"),tne=XA(LU),ane=XA(PU),nne=XA(TU),rne=XA("CommonJS"),sne=XA("ES"),ine=XA(Mq),one=XA(LU),lne=XA(Uz),pne=XA("DeclareModule"),dne=XA(KJ),cne=XA("DeclareModuleExports"),une=XA(MX),mne=XA("DeclareExportAllDeclaration"),fne=XA(MX),hne=XA(Pz),yne=XA(JX),bne=XA(IW),gne=XA("DeclareExportDeclaration"),xne=XA(OW),Sne=XA(MX),Ene=XA("ExportAllDeclaration"),Tne=XA(OW),Ane=XA(MX),Pne=XA(Pz),_ne=XA(JX),Nne=XA("ExportNamedDeclaration"),kne=XA(OW),Cne=XA(JX),wne=XA("ExportDefaultDeclaration"),vne=XA(RX),Ine=XA(WU),jne=XA(ZJ),Lne=XA(Jz),Dne=XA(MX),Rne=XA(Pz),One=XA("ImportDeclaration"),Yne=XA("ThisExpression"),Fne=XA("Super"),Mne=XA(ZM),Vne=XA("ArrayExpression"),Bne=XA(LX),Une=XA("ObjectExpression"),Xne=XA(Wq),Wne=XA(RB),qne=XA(WJ),Jne=XA(ZB),zne=XA($X),Hne=XA(XB),Gne=XA(LU),Zne=XA(ZF),Kne=XA(Uz),Qne=XA("ArrowFunctionExpression"),$ne=XA(VY),ere=XA("SequenceExpression"),tre=XA(JW),are=XA("AwaitExpression"),nre=XA(YB),rre=XA(Rq),sre=XA("!"),ire=XA("~"),ore=XA(WU),lre=XA(IJ),pre=XA(Jq),dre=XA("matched above"),cre=XA(JW),ure=XA(Vq),mre=XA(SB),fre=XA("UnaryExpression"),hre=XA("=="),yre=XA("!="),bre=XA("==="),gre=XA("!=="),xre=XA("<"),Sre=XA("<="),Ere=XA(">"),Tre=XA(">="),Are=XA("<<"),Pre=XA(">>"),_re=XA(">>>"),Nre=XA(Rq),kre=XA(YB),Cre=XA("*"),wre=XA("**"),vre=XA(Iz),Ire=XA(Nz),jre=XA("|"),Lre=XA("^"),Dre=XA(LF),Rre=XA(NX),Ore=XA(MW),Yre=XA(PU),Fre=XA(TU),Mre=XA(SB),Vre=XA("BinaryExpression"),Bre=XA("="),Ure=XA("+="),Xre=XA("-="),Wre=XA("*="),qre=XA("**="),Jre=XA("/="),zre=XA("%="),Hre=XA("<<="),Gre=XA(">>="),Zre=XA(">>>="),Kre=XA("|="),Qre=XA("^="),$re=XA("&="),ese=XA(PU),tse=XA(TU),ase=XA(SB),nse=XA("AssignmentExpression"),rse=XA("--"),sse=XA("++"),ise=XA(Vq),ose=XA(JW),lse=XA(SB),pse=XA("UpdateExpression"),dse=XA("&&"),cse=XA("||"),mse=XA(PU),fse=XA(TU),hse=XA(SB),yse=XA("LogicalExpression"),bse=XA(Tq),gse=XA(NF),xse=XA(TJ),Sse=XA("ConditionalExpression"),Ese=XA(UX),Tse=XA(MB),Ase=XA("NewExpression"),Pse=XA(UX),_se=XA(MB),Nse=XA("CallExpression"),kse=XA(Yz),Cse=XA(Rz),wse=XA(MV),vse=XA("MemberExpression"),Ise=XA("delegate"),jse=XA(JW),Lse=XA("YieldExpression"),Dse=XA(RY),Rse=XA(Zq),Ose=XA("ComprehensionExpression"),Yse=XA(RY),Fse=XA(Zq),Mse=XA("GeneratorExpression"),Vse=XA(KJ),Bse=XA(WJ),Use=XA("TypeCastExpression"),Xse=XA(Rz),Wse=XA("meta"),qse=XA("MetaProperty"),Jse=XA(Wq),zse=XA(RB),Hse=XA(WJ),Gse=XA(ZB),Zse=XA($X),Kse=XA(XB),Qse=XA(LU),$se=XA(ZF),eie=XA(Uz),tie=XA("FunctionDeclaration"),aie=XA(Wq),nie=XA(RB),rie=XA(WJ),sie=XA(ZB),iie=XA($X),oie=XA(XB),lie=XA(LU),pie=XA(ZF),die=XA(Uz),cie=XA("FunctionExpression"),uie=XA(OU),mie=XA(KJ),fie=XA(_B),hie=XA(JY),yie=XA(OU),bie=XA(KJ),gie=XA(_B),xie=XA(JY),Sie=XA(NF),Eie=XA(TJ),Tie=XA("SwitchCase"),Aie=XA(LU),Pie=XA("param"),_ie=XA("CatchClause"),Nie=XA(LU),kie=XA("BlockStatement"),Cie=XA(Uz),wie=XA("DeclareVariable"),vie=XA(ZB),Iie=XA(Uz),jie=XA("DeclareFunction"),Lie=XA(Wz),Die=XA(LU),Rie=XA(Wq),Oie=XA(Uz),Yie=XA("DeclareClass"),Fie=XA(ZJ),Mie=XA(RX),Vie=XA($Y),Bie=XA("ExportNamespaceSpecifier"),Uie=XA(PU),Xie=XA(Wq),Wie=XA(Uz),qie=XA("TypeAlias"),Jie=XA(TV),zie=XA(UW),Hie=XA(YM),Gie=XA(Wq),Zie=XA(Uq),Kie=XA(LU),Qie=XA(Uz),$ie=XA("ClassDeclaration"),eoe=XA(TV),toe=XA(UW),aoe=XA(YM),noe=XA(Wq),roe=XA(Uq),soe=XA(LU),ioe=XA(Uz),ooe=XA("ClassExpression"),loe=XA(Wq),poe=XA(Uz),doe=XA("ClassImplements"),coe=XA(LU),uoe=XA("ClassBody"),moe=XA(PM),foe=XA(UV),hoe=XA(WY),yoe=XA(KB),boe=XA(TV),goe=XA(Yz),xoe=XA(WX),Soe=XA(Mq),Eoe=XA(ZJ),Toe=XA(SJ),Aoe=XA("MethodDefinition"),Poe=XA(QY),_oe=XA(WX),Noe=XA(Yz),koe=XA(KJ),Coe=XA(ZJ),woe=XA(SJ),voe=XA("ClassProperty"),Ioe=XA(Wz),joe=XA(LU),Loe=XA(Wq),Doe=XA(Uz),Roe=XA("InterfaceDeclaration"),Ooe=XA(Wq),Yoe=XA(Uz),Foe=XA("InterfaceExtends"),Moe=XA(KJ),Voe=XA(LX),Boe=XA("ObjectPattern"),Uoe=XA(KJ),Xoe=XA(ZM),Woe=XA("ArrayPattern"),qoe=XA(PU),Joe=XA(TU),zoe=XA("AssignmentPattern"),Hoe=XA(JW),Goe=XA(LJ),Zoe=XA(JW),Koe=XA(LJ),Qoe=XA(TW),$oe=XA(WY),ele=XA(KB),tle=XA(Yz),ale=XA(KF),nle=XA(UV),rle=XA(Mq),sle=XA(ZJ),ile=XA(SJ),ole=XA(VW),lle=XA(JW),ple=XA("SpreadProperty"),dle=XA(Yz),cle=XA(KF),ule=XA(UV),mle=XA(TW),fle=XA(Mq),hle=XA(ZJ),yle=XA(SJ),ble=XA(VW),gle=XA(JW),xle=XA("RestProperty"),Sle=XA(JW),Ele=XA("SpreadElement"),Tle=XA(KM),Ale=XA(PU),Ple=XA(TU),_le=XA("ComprehensionBlock"),Nle=XA("flags"),kle=XA("pattern"),Cle=XA("regex"),wle=XA($W),vle=XA(ZJ),Ile=XA($W),jle=XA(ZJ),Lle=XA("Literal"),Dle=XA(VY),Rle=XA("quasis"),Ole=XA("TemplateLiteral"),Yle=XA("cooked"),Fle=XA($W),Mle=XA("tail"),Vle=XA(ZJ),Ble=XA("TemplateElement"),Ule=XA("quasi"),Xle=XA("tag"),Wle=XA("TaggedTemplateExpression"),qle=XA(VM),Jle=XA(OJ),zle=XA(Xq),Hle=XA(Mq),Gle=XA("declarations"),Zle=XA("VariableDeclaration"),Kle=XA(TW),Qle=XA(Uz),$le=XA("VariableDeclarator"),epe=XA(QJ),tpe=XA("plus"),ape=XA("AnyTypeAnnotation"),npe=XA("MixedTypeAnnotation"),rpe=XA("EmptyTypeAnnotation"),spe=XA("VoidTypeAnnotation"),ipe=XA("NullLiteralTypeAnnotation"),ope=XA("NumberTypeAnnotation"),lpe=XA("StringTypeAnnotation"),ppe=XA("BooleanTypeAnnotation"),dpe=XA(KJ),cpe=XA("NullableTypeAnnotation"),upe=XA(Wq),mpe=XA("rest"),fpe=XA(RB),hpe=XA(ZF),ype=XA("FunctionTypeAnnotation"),bpe=XA(OU),gpe=XA(KJ),xpe=XA(_B),Spe=XA("FunctionTypeParam"),Epe=[0,0,0,0],Tpe=XA("callProperties"),Ape=XA("indexers"),Ppe=XA(LX),_pe=XA("exact"),Npe=XA("ObjectTypeAnnotation"),kpe=XA("There should not be computed object type property keys"),Cpe=XA(TW),wpe=XA(WY),vpe=XA(KB),Ipe=XA(Mq),jpe=XA(QY),Lpe=XA(WX),Dpe=XA(OU),Rpe=XA(ZJ),Ope=XA(SJ),Ype=XA("ObjectTypeProperty"),Fpe=XA(JW),Mpe=XA("ObjectTypeSpreadProperty"),Vpe=XA(QY),Bpe=XA(WX),Upe=XA(ZJ),Xpe=XA(SJ),Wpe=XA(Uz),qpe=XA("ObjectTypeIndexer"),Jpe=XA(WX),zpe=XA(ZJ),Hpe=XA("ObjectTypeCallProperty"),Gpe=XA("elementType"),Zpe=XA("ArrayTypeAnnotation"),Kpe=XA(Uz),Qpe=XA("qualification"),$pe=XA("QualifiedTypeIdentifier"),ede=XA(Wq),tde=XA(Uz),ade=XA("GenericTypeAnnotation"),nde=XA(QB),rde=XA("UnionTypeAnnotation"),sde=XA(QB),ide=XA("IntersectionTypeAnnotation"),ode=XA(JW),lde=XA("TypeofTypeAnnotation"),pde=XA(QB),dde=XA("TupleTypeAnnotation"),cde=XA($W),ude=XA(ZJ),mde=XA("StringLiteralTypeAnnotation"),fde=XA($W),hde=XA(ZJ),yde=XA("NumberLiteralTypeAnnotation"),bde=XA($W),gde=XA(ZJ),xde=XA("BooleanLiteralTypeAnnotation"),Sde=XA("ExistsTypeAnnotation"),Ede=XA(KJ),Tde=XA("TypeAnnotation"),Ade=XA(ZF),Pde=XA("TypeParameterDeclaration"),_de=XA(IW),Nde=XA(QY),kde=XA("bound"),Cde=XA(_B),wde=XA("TypeParameter"),vde=XA(ZF),Ide=XA("TypeParameterInstantiation"),jde=XA("children"),Lde=XA("closingElement"),Dde=XA("openingElement"),Rde=XA("JSXElement"),Ode=XA("selfClosing"),Yde=XA("attributes"),Fde=XA(_B),Mde=XA("JSXOpeningElement"),Vde=XA(_B),Bde=XA("JSXClosingElement"),Ude=XA(ZJ),Xde=XA(_B),Wde=XA("JSXAttribute"),qde=XA(JW),Jde=XA("JSXSpreadAttribute"),zde=XA("JSXEmptyExpression"),Hde=XA(WJ),Gde=XA("JSXExpressionContainer"),Zde=XA($W),Kde=XA(ZJ),Qde=XA("JSXText"),$de=XA(Rz),ece=XA(MV),tce=XA("JSXMemberExpression"),ace=XA(_B),nce=XA("namespace"),rce=XA("JSXNamespacedName"),sce=XA(_B),ice=XA("JSXIdentifier"),oce=XA($Y),lce=XA(WF),pce=XA("ExportSpecifier"),dce=XA(WF),cce=XA("ImportDefaultSpecifier"),uce=XA(WF),mce=XA("ImportNamespaceSpecifier"),fce=XA(RX),hce=XA(WU),yce=XA(Jz),bce=XA(WF),gce=XA("imported"),xce=XA("ImportSpecifier"),Sce=XA("Block"),Ece=XA("Line"),Tce=XA(ZJ),Ace=XA(ZJ),Pce=XA("DeclaredPredicate"),_ce=XA("InferredPredicate"),Nce=XA("message"),kce=XA(TX),Cce=XA("range"),wce=XA(TX),vce=XA(RX),Ice=XA(OF),jce=XA("end"),Lce=XA("start"),Dce=XA(MX),Rce=XA("column"),Oce=XA("line"),Yce=XA(MJ),Fce=[0,0],Mce=[0,0],Vce=[0,2],Bce=[0,2],Uce=[0,1],Xce=[0,1],Wce=[0,3],qce=[0,3],Jce=XA(MJ),zce=[5,3,NB],Hce=[5,3,NB],Gce=XA("\\"),Zce=XA(RU),Kce=XA(JB),Qce=XA("*/"),$ce=XA(JB),eue=XA(LW),tue=XA(LW),aue=XA(LW),nue=XA(LW),rue=XA(RU),sue=XA("iexcl"),iue=XA("aelig"),oue=XA("Nu"),lue=XA("Eacute"),pue=XA("Atilde"),due=XA("'int'"),cue=XA("AElig"),uue=XA("Aacute"),mue=XA("Acirc"),fue=XA("Agrave"),hue=XA("Alpha"),yue=XA("Aring"),bue=[0,197],gue=[0,913],xue=[0,UJ],Sue=[0,194],Eue=[0,193],Tue=[0,198],Aue=[0,8747],Pue=XA("Auml"),_ue=XA("Beta"),Nue=XA("Ccedil"),kue=XA("Chi"),Cue=XA("Dagger"),wue=XA("Delta"),vue=XA("ETH"),Iue=[0,208],jue=[0,916],Lue=[0,8225],Due=[0,935],Rue=[0,$U],Oue=[0,914],Yue=[0,196],Fue=[0,195],Mue=XA("Icirc"),Vue=XA("Ecirc"),Bue=XA("Egrave"),Uue=XA("Epsilon"),Xue=XA("Eta"),Wue=XA("Euml"),que=XA("Gamma"),Jue=XA("Iacute"),zue=[0,205],Hue=[0,915],Gue=[0,203],Zue=[0,919],Kue=[0,917],Que=[0,200],$ue=[0,202],eme=XA("Igrave"),tme=XA("Iota"),ame=XA("Iuml"),nme=XA("Kappa"),rme=XA("Lambda"),sme=XA("Mu"),ime=XA("Ntilde"),ome=[0,209],lme=[0,924],pme=[0,923],dme=[0,922],cme=[0,207],ume=[0,921],mme=[0,204],fme=[0,206],hme=[0,201],yme=XA("Sigma"),bme=XA("Otilde"),gme=XA("OElig"),xme=XA("Oacute"),Sme=XA("Ocirc"),Eme=XA("Ograve"),Tme=XA("Omega"),Ame=XA("Omicron"),Pme=XA("Oslash"),_me=[0,NU],Nme=[0,927],kme=[0,937],Cme=[0,210],wme=[0,212],vme=[0,211],Ime=[0,338],jme=XA("Ouml"),Lme=XA("Phi"),Dme=XA("Pi"),Rme=XA("Prime"),Ome=XA("Psi"),Yme=XA("Rho"),Fme=XA("Scaron"),Mme=[0,352],Vme=[0,929],Bme=[0,936],Ume=[0,8243],Xme=[0,928],Wme=[0,934],qme=[0,214],Jme=[0,213],zme=XA("Uuml"),Hme=XA("THORN"),Gme=XA("Tau"),Zme=XA("Theta"),Kme=XA("Uacute"),Qme=XA("Ucirc"),$me=XA("Ugrave"),efe=XA("Upsilon"),tfe=[0,933],afe=[0,217],nfe=[0,219],rfe=[0,QV],sfe=[0,920],ife=[0,932],ofe=[0,222],lfe=XA("Xi"),pfe=XA("Yacute"),dfe=XA("Yuml"),cfe=XA("Zeta"),ufe=XA("aacute"),mfe=XA("acirc"),ffe=XA("acute"),hfe=[0,180],yfe=[0,226],bfe=[0,225],gfe=[0,918],xfe=[0,376],Sfe=[0,221],Efe=[0,926],Tfe=[0,220],Afe=[0,931],Pfe=[0,925],_fe=XA("delta"),Nfe=XA("cap"),kfe=XA("aring"),Cfe=XA("agrave"),wfe=XA("alefsym"),vfe=XA("alpha"),Ife=XA("amp"),jfe=XA("and"),Lfe=XA("ang"),Dfe=XA("apos"),Rfe=[0,39],Ofe=[0,8736],Yfe=[0,8743],Ffe=[0,38],Mfe=[0,945],Vfe=[0,8501],Bfe=[0,QU],Ufe=XA("asymp"),Xfe=XA("atilde"),Wfe=XA("auml"),qfe=XA("bdquo"),Jfe=XA("beta"),zfe=XA("brvbar"),Hfe=XA("bull"),Gfe=[0,8226],Zfe=[0,166],Kfe=[0,946],Qfe=[0,8222],$fe=[0,228],ehe=[0,227],the=[0,8776],ahe=[0,229],nhe=XA("copy"),rhe=XA("ccedil"),she=XA("cedil"),ihe=XA("cent"),ohe=XA("chi"),lhe=XA("circ"),phe=XA("clubs"),dhe=XA("cong"),che=[0,8773],uhe=[0,9827],mhe=[0,710],fhe=[0,967],hhe=[0,162],yhe=[0,184],bhe=[0,231],ghe=XA("crarr"),xhe=XA("cup"),She=XA("curren"),Ehe=XA("dArr"),The=XA("dagger"),Ahe=XA("darr"),Phe=XA("deg"),_he=[0,176],Nhe=[0,8595],khe=[0,8224],Che=[0,8659],whe=[0,164],vhe=[0,8746],Ihe=[0,8629],jhe=[0,169],Lhe=[0,8745],Dhe=XA("fnof"),Rhe=XA("ensp"),Ohe=XA("diams"),Yhe=XA("divide"),Fhe=XA("eacute"),Mhe=XA("ecirc"),Vhe=XA("egrave"),Bhe=XA(JF),Uhe=XA("emsp"),Xhe=[0,8195],Whe=[0,8709],qhe=[0,232],Jhe=[0,234],zhe=[0,233],Hhe=[0,247],Ghe=[0,9830],Zhe=XA("epsilon"),Khe=XA("equiv"),Qhe=XA("eta"),$he=XA("eth"),eye=XA("euml"),tye=XA("euro"),aye=XA("exist"),nye=[0,8707],rye=[0,8364],sye=[0,235],iye=[0,SU],oye=[0,951],lye=[0,8801],pye=[0,949],dye=[0,8194],cye=XA("gt"),uye=XA("forall"),mye=XA("frac12"),fye=XA("frac14"),hye=XA("frac34"),yye=XA("frasl"),bye=XA("gamma"),gye=XA("ge"),xye=[0,8805],Sye=[0,947],Eye=[0,8260],Tye=[0,190],Aye=[0,188],Pye=[0,Pq],_ye=[0,8704],Nye=XA("hArr"),kye=XA("harr"),Cye=XA("hearts"),wye=XA("hellip"),vye=XA("iacute"),Iye=XA("icirc"),jye=[0,238],Lye=[0,237],Dye=[0,8230],Rye=[0,9829],Oye=[0,8596],Yye=[0,8660],Fye=[0,62],Mye=[0,_F],Vye=[0,XW],Bye=[0,230],Uye=XA("prime"),Xye=XA("ndash"),Wye=XA("le"),qye=XA("kappa"),Jye=XA("igrave"),zye=XA("image"),Hye=XA("infin"),Gye=XA("iota"),Zye=XA("iquest"),Kye=XA("isin"),Qye=XA("iuml"),$ye=[0,239],ebe=[0,8712],tbe=[0,191],abe=[0,953],nbe=[0,8734],rbe=[0,8465],sbe=[0,236],ibe=XA("lArr"),obe=XA("lambda"),lbe=XA("lang"),pbe=XA("laquo"),dbe=XA("larr"),cbe=XA("lceil"),ube=XA("ldquo"),mbe=[0,8220],fbe=[0,8968],hbe=[0,8592],ybe=[0,171],bbe=[0,10216],gbe=[0,XU],xbe=[0,8656],Sbe=[0,954],Ebe=XA("macr"),Tbe=XA("lfloor"),Abe=XA("lowast"),Pbe=XA("loz"),_be=XA("lrm"),Nbe=XA("lsaquo"),kbe=XA("lsquo"),Cbe=XA("lt"),wbe=[0,60],vbe=[0,8216],Ibe=[0,8249],jbe=[0,8206],Lbe=[0,9674],Dbe=[0,8727],Rbe=[0,8970],Obe=XA("mdash"),Ybe=XA("micro"),Fbe=XA("middot"),Mbe=XA(QJ),Vbe=XA("mu"),Bbe=XA("nabla"),Ube=XA("nbsp"),Xbe=[0,160],Wbe=[0,8711],qbe=[0,956],Jbe=[0,8722],zbe=[0,183],Hbe=[0,181],Gbe=[0,8212],Zbe=[0,175],Kbe=[0,8804],Qbe=XA("or"),$be=XA("oacute"),ege=XA("ne"),tge=XA("ni"),age=XA("not"),nge=XA("notin"),rge=XA("nsub"),sge=XA("ntilde"),ige=XA("nu"),oge=[0,957],lge=[0,241],pge=[0,8836],dge=[0,8713],cge=[0,172],uge=[0,8715],mge=[0,8800],fge=XA("ocirc"),hge=XA("oelig"),yge=XA("ograve"),bge=XA("oline"),gge=XA("omega"),xge=XA("omicron"),Sge=XA("oplus"),Ege=[0,8853],Tge=[0,959],Age=[0,969],Pge=[0,8254],_ge=[0,242],Nge=[0,339],kge=[0,244],Cge=[0,243],wge=XA("part"),vge=XA("ordf"),Ige=XA("ordm"),jge=XA("oslash"),Lge=XA("otilde"),Dge=XA("otimes"),Rge=XA("ouml"),Oge=XA("para"),Yge=[0,182],Fge=[0,ZX],Mge=[0,8855],Vge=[0,Sz],Bge=[0,SM],Uge=[0,186],Xge=[0,170],Wge=XA("permil"),qge=XA("perp"),Jge=XA("phi"),zge=XA("pi"),Hge=XA("piv"),Gge=XA("plusmn"),Zge=XA("pound"),Kge=[0,163],Qge=[0,177],$ge=[0,982],exe=[0,960],txe=[0,966],axe=[0,8869],nxe=[0,8240],rxe=[0,8706],sxe=[0,8744],ixe=[0,8211],oxe=XA("sup1"),lxe=XA("rlm"),pxe=XA("raquo"),dxe=XA("prod"),cxe=XA("prop"),uxe=XA("psi"),mxe=XA("quot"),fxe=XA("rArr"),hxe=XA("radic"),yxe=XA("rang"),bxe=[0,10217],gxe=[0,8730],xxe=[0,8658],Sxe=[0,34],Exe=[0,968],Txe=[0,8733],Axe=[0,8719],Pxe=XA("rarr"),_xe=XA("rceil"),Nxe=XA("rdquo"),kxe=XA("real"),Cxe=XA("reg"),wxe=XA("rfloor"),vxe=XA("rho"),Ixe=[0,961],jxe=[0,8971],Lxe=[0,174],Dxe=[0,8476],Rxe=[0,8221],Oxe=[0,8969],Yxe=[0,8594],Fxe=[0,187],Mxe=XA("sigma"),Vxe=XA("rsaquo"),Bxe=XA("rsquo"),Uxe=XA("sbquo"),Xxe=XA("scaron"),Wxe=XA("sdot"),qxe=XA("sect"),Jxe=XA("shy"),zxe=[0,173],Hxe=[0,167],Gxe=[0,8901],Zxe=[0,353],Kxe=[0,8218],Qxe=[0,8217],$xe=[0,8250],eSe=XA("sigmaf"),tSe=XA("sim"),aSe=XA("spades"),nSe=XA("sub"),rSe=XA("sube"),sSe=XA("sum"),iSe=XA("sup"),oSe=[0,8835],lSe=[0,8721],pSe=[0,8838],dSe=[0,8834],cSe=[0,9824],uSe=[0,8764],mSe=[0,962],fSe=[0,963],hSe=[0,8207],ySe=XA("uarr"),bSe=XA("thetasym"),gSe=XA("sup2"),xSe=XA("sup3"),SSe=XA("supe"),ESe=XA("szlig"),TSe=XA("tau"),ASe=XA("there4"),PSe=XA("theta"),_Se=[0,952],NSe=[0,8756],kSe=[0,964],CSe=[0,Nq],wSe=[0,8839],vSe=[0,179],ISe=[0,178],jSe=XA("thinsp"),LSe=XA("thorn"),DSe=XA("tilde"),RSe=XA("times"),OSe=XA("trade"),YSe=XA("uArr"),FSe=XA("uacute"),MSe=[0,OX],VSe=[0,8657],BSe=[0,8482],USe=[0,215],XSe=[0,732],WSe=[0,OY],qSe=[0,8201],JSe=[0,977],zSe=XA("xi"),HSe=XA("ucirc"),GSe=XA("ugrave"),ZSe=XA("uml"),KSe=XA("upsih"),QSe=XA("upsilon"),$Se=XA("uuml"),eEe=XA("weierp"),tEe=[0,8472],aEe=[0,Kq],nEe=[0,965],rEe=[0,978],sEe=[0,168],iEe=[0,249],oEe=[0,251],lEe=XA("yacute"),pEe=XA("yen"),dEe=XA("yuml"),cEe=XA("zeta"),uEe=XA("zwj"),mEe=XA("zwnj"),fEe=[0,8204],hEe=[0,8205],yEe=[0,950],bEe=[0,KU],gEe=[0,165],xEe=[0,253],SEe=[0,958],EEe=[0,8593],TEe=[0,185],AEe=[0,8242],PEe=[0,161],_Ee=XA(";"),NEe=XA(LF),kEe=XA("}"),CEe=[0,XA(LW),XA(LW),XA(LW)],wEe=XA("${"),vEe=XA(MU),IEe=XA(JM),jEe=XA(LW),LEe=[0,XA(IX),620,11],DEe=[0,XA(IX),614,11],REe=[0,0],OEe=[0,XA(IX),556,4],YEe=XA(LW),FEe=[1,XA("ILLEGAL")],MEe=XA(Iz),VEe=XA(Iz),BEe=XA("T_IDENTIFIER"),UEe=XA("T_LCURLY"),XEe=XA("T_RCURLY"),WEe=XA("T_LCURLYBAR"),qEe=XA("T_RCURLYBAR"),JEe=XA("T_LPAREN"),zEe=XA("T_RPAREN"),HEe=XA("T_LBRACKET"),GEe=XA("T_RBRACKET"),ZEe=XA("T_SEMICOLON"),KEe=XA("T_COMMA"),QEe=XA("T_PERIOD"),$Ee=XA("T_ARROW"),eTe=XA("T_ELLIPSIS"),tTe=XA("T_AT"),aTe=XA("T_FUNCTION"),nTe=XA("T_IF"),rTe=XA("T_IN"),sTe=XA("T_INSTANCEOF"),iTe=XA("T_RETURN"),oTe=XA("T_SWITCH"),lTe=XA("T_THIS"),pTe=XA("T_THROW"),dTe=XA("T_TRY"),cTe=XA("T_VAR"),uTe=XA("T_WHILE"),mTe=XA("T_WITH"),fTe=XA("T_CONST"),hTe=XA("T_LET"),yTe=XA("T_NULL"),bTe=XA("T_FALSE"),gTe=XA("T_TRUE"),xTe=XA("T_BREAK"),STe=XA("T_CASE"),ETe=XA("T_CATCH"),TTe=XA("T_CONTINUE"),ATe=XA("T_DEFAULT"),PTe=XA("T_DO"),_Te=XA("T_FINALLY"),NTe=XA("T_FOR"),kTe=XA("T_CLASS"),CTe=XA("T_EXTENDS"),wTe=XA("T_STATIC"),vTe=XA("T_ELSE"),ITe=XA("T_NEW"),jTe=XA("T_DELETE"),LTe=XA("T_TYPEOF"),DTe=XA("T_VOID"),RTe=XA("T_ENUM"),OTe=XA("T_EXPORT"),YTe=XA("T_IMPORT"),FTe=XA("T_SUPER"),MTe=XA("T_IMPLEMENTS"),VTe=XA("T_INTERFACE"),BTe=XA("T_PACKAGE"),UTe=XA("T_PRIVATE"),XTe=XA("T_PROTECTED"),WTe=XA("T_PUBLIC"),qTe=XA("T_YIELD"),JTe=XA("T_DEBUGGER"),zTe=XA("T_DECLARE"),HTe=XA("T_TYPE"),GTe=XA("T_OF"),ZTe=XA("T_ASYNC"),KTe=XA("T_AWAIT"),QTe=XA("T_CHECKS"),$Te=XA("T_RSHIFT3_ASSIGN"),eAe=XA("T_RSHIFT_ASSIGN"),tAe=XA("T_LSHIFT_ASSIGN"),aAe=XA("T_BIT_XOR_ASSIGN"),nAe=XA("T_BIT_OR_ASSIGN"),rAe=XA("T_BIT_AND_ASSIGN"),sAe=XA("T_MOD_ASSIGN"),iAe=XA("T_DIV_ASSIGN"),oAe=XA("T_MULT_ASSIGN"),lAe=XA("T_EXP_ASSIGN"),pAe=XA("T_MINUS_ASSIGN"),dAe=XA("T_PLUS_ASSIGN"),cAe=XA("T_ASSIGN"),uAe=XA("T_PLING"),mAe=XA("T_COLON"),fAe=XA("T_OR"),hAe=XA("T_AND"),yAe=XA("T_BIT_OR"),bAe=XA("T_BIT_XOR"),gAe=XA("T_BIT_AND"),xAe=XA("T_EQUAL"),SAe=XA("T_NOT_EQUAL"),EAe=XA("T_STRICT_EQUAL"),TAe=XA("T_STRICT_NOT_EQUAL"),AAe=XA("T_LESS_THAN_EQUAL"),PAe=XA("T_GREATER_THAN_EQUAL"),_Ae=XA("T_LESS_THAN"),NAe=XA("T_GREATER_THAN"),kAe=XA("T_LSHIFT"),CAe=XA("T_RSHIFT"),wAe=XA("T_RSHIFT3"),vAe=XA("T_PLUS"),IAe=XA("T_MINUS"),jAe=XA("T_DIV"),LAe=XA("T_MULT"),DAe=XA("T_EXP"),RAe=XA("T_MOD"),OAe=XA("T_NOT"),YAe=XA("T_BIT_NOT"),FAe=XA("T_INCR"),MAe=XA("T_DECR"),VAe=XA("T_ERROR"),BAe=XA("T_EOF"),UAe=XA("T_JSX_IDENTIFIER"),XAe=XA("T_ANY_TYPE"),WAe=XA("T_MIXED_TYPE"),qAe=XA("T_EMPTY_TYPE"),JAe=XA("T_BOOLEAN_TYPE"),zAe=XA("T_NUMBER_TYPE"),HAe=XA("T_STRING_TYPE"),GAe=XA("T_VOID_TYPE"),ZAe=XA("T_NUMBER"),KAe=XA("T_STRING"),QAe=XA("T_TEMPLATE_PART"),$Ae=XA("T_REGEXP"),ePe=XA("T_JSX_TEXT"),tPe=XA("T_NUMBER_SINGLETON_TYPE"),aPe=XA("Lexer_flow.FloatOfString.No_good"),nPe=TN([[0,XA(KY),15],[0,XA("if"),16],[0,XA(NX),17],[0,XA(MW),18],[0,XA("return"),19],[0,XA("switch"),20],[0,XA("this"),21],[0,XA("throw"),22],[0,XA("try"),23],[0,XA(VM),24],[0,XA("while"),25],[0,XA("with"),26],[0,XA(Xq),27],[0,XA(OJ),28],[0,XA(Zz),29],[0,XA($q),30],[0,XA(Xz),31],[0,XA("break"),32],[0,XA("case"),33],[0,XA("catch"),34],[0,XA("continue"),35],[0,XA(IW),36],[0,XA("do"),37],[0,XA("finally"),38],[0,XA("for"),39],[0,XA("class"),40],[0,XA(Wz),41],[0,XA(WX),42],[0,XA("else"),43],[0,XA(VF),44],[0,XA(Jq),45],[0,XA(WU),46],[0,XA(IJ),47],[0,XA(_X),48],[0,XA("export"),49],[0,XA("import"),50],[0,XA("super"),51],[0,XA(UW),52],[0,XA(VX),53],[0,XA(JU),54],[0,XA(_W),55],[0,XA(PV),56],[0,XA(SX),57],[0,XA(NM),58],[0,XA("debugger"),59],[0,XA("declare"),60],[0,XA(RX),61],[0,XA("of"),62],[0,XA(XB),63],[0,XA("await"),64]]),rPe=TN([[0,XA(WX),42],[0,XA(WU),46],[0,XA("any"),XV],[0,XA("mixed"),111],[0,XA(JF),$M],[0,XA("bool"),PW],[0,XA("boolean"),PW],[0,XA(Xz),31],[0,XA($q),30],[0,XA("number"),Oz],[0,XA("string"),115],[0,XA(IJ),XJ],[0,XA(Zz),29]]),sPe=XA(KV),iPe=XA(KV),oPe=XA(UX),lPe=XA("eval"),pPe=XA(UW),dPe=XA(VX),cPe=XA(JU),uPe=XA(_W),mPe=XA(PV),fPe=XA(SX),hPe=XA(WX),yPe=XA(NM),bPe=XA(_X),gPe=[0,XA("src/parser/parser_env.ml"),291,2],xPe=[0,0,0],SPe=XA(ZU),EPe=XA(ZU),TPe=XA("Parser_env.Try.Rollback"),APe=[0,XA("did not consume any tokens")],PPe=[0,1],_Pe=[0,0,0],NPe=[0,0,0],kPe=[0,XA(KW),496,6],CPe=XA(WX),wPe=XA(WY),vPe=XA(KB),IPe=XA(WY),jPe=[0,1],LPe=[0,[0,0,0]],DPe=[0,1],RPe=[0,1],OPe=[0,1],YPe=[0,0],FPe=[0,1],MPe=[0,2],VPe=[0,7],BPe=[0,5],UPe=[0,6],XPe=[0,3],WPe=[0,4],qPe=[0,XA(KW),YY,17],JPe=[0,XA(KW),87,17],zPe=[0,XA(KW),65,11],HPe=[0,XA(KW),69,11],GPe=[0,XA(KW),47,14],ZPe=[0,0,0],KPe=[0,31],QPe=[0,0,0],$Pe=[0,31],e_e=[0,1],t_e=[0,29],a_e=[0,XA(RF),810,13],n_e=[0,XA(RF),712,17],r_e=[0,[0,XA(LW),XA(LW)],1],s_e=XA(Zz),i_e=XA(JM),o_e=[0,0,0],l_e=[0,31],p_e=XA(VF),d_e=XA("target"),c_e=[0,1],u_e=[0,0],m_e=[0,1],f_e=[0,0],h_e=[0,1],y_e=[0,0],b_e=[0,2],g_e=[0,3],x_e=[0,7],S_e=[0,6],E_e=[0,4],T_e=[0,5],A_e=[0,[0,17,[0,2]]],P_e=[0,[0,18,[0,3]]],__e=[0,[0,19,[0,4]]],N_e=[0,[0,0,[0,5]]],k_e=[0,[0,1,[0,5]]],C_e=[0,[0,2,[0,5]]],w_e=[0,[0,3,[0,5]]],v_e=[0,[0,5,[0,6]]],I_e=[0,[0,7,[0,6]]],j_e=[0,[0,4,[0,6]]],L_e=[0,[0,6,[0,6]]],D_e=[0,[0,8,[0,7]]],R_e=[0,[0,9,[0,7]]],O_e=[0,[0,10,[0,7]]],Y_e=[0,[0,11,[0,8]]],F_e=[0,[0,12,[0,8]]],M_e=[0,[0,15,[0,9]]],V_e=[0,[0,13,[0,9]]],B_e=[0,[0,14,[1,10]]],U_e=[0,[0,16,[0,9]]],X_e=[0,[0,21,[0,6]]],W_e=[0,[0,20,[0,6]]],q_e=[0,9],J_e=[0,8],z_e=[0,7],H_e=[0,11],G_e=[0,10],Z_e=[0,12],K_e=[0,6],Q_e=[0,5],$_e=[0,3],eNe=[0,4],tNe=[0,2],aNe=[0,1],nNe=[0,0],rNe=XA(XB),sNe=XA(MJ),iNe=XA(Lq),oNe=[0,0,0],lNe=XA(LW),pNe=[0,XA(LW)],dNe=[0,0,0],cNe=XA(PM),uNe=XA(PM),mNe=[0,1],fNe=[0,1],hNe=[0,1],yNe=[0,1],bNe=XA(WY),gNe=XA(KB),xNe=[0,0,0],SNe=XA(WY),ENe=XA(KB),TNe=XA(RX),ANe=[0,1,[0,0]],PNe=XA(WU),_Ne=[0,1,[0,1]],NNe=[0,0,0],kNe=XA(Vz),CNe=XA(Vz),wNe=XA(Vz),vNe=[0,1,0],INe=[0,2,0],jNe=XA(PB),LNe=XA(Vz),DNe=XA(PB),RNe=XA(Vz),ONe=XA(Vz),YNe=XA(PB),FNe=[0,XA(WB),1109,15],MNe=XA("other than an interface declaration!"),VNe=XA("Internal Flow Error! Parsed `export interface` into something "),BNe=[0,1],UNe=XA("other than a type alias!"),XNe=XA("Internal Flow Error! Parsed `export type` into something "),WNe=XA(Vz),qNe=XA(Vz),JNe=XA(IW),zNe=XA(PB),HNe=XA("Internal Flow Error! Unexpected export statement declaration!"),GNe=XA(Vz),ZNe=XA(Vz),KNe=XA(PB),QNe=[0,1],$Ne=XA(XX),eke=[0,1],tke=XA(XX),ake=XA("exports"),nke=[0,1],rke=[0,1],ske=XA(_J),ike=XA(_J),oke=[0,1],lke=[0,1],pke=XA("Label"),dke=[0,27],cke=[0,0,0],uke=[0,0,0],mke=[0,XA(WB),$U,20],fke=[0,XA(WB),NU,20],hke=XA("Parser error: No such thing as an expression pattern!"),yke=[0,1],bke=XA("use strict"),gke=[0,0,0],xke=XA(MU),Ske=XA("Nooo: "),Eke=[0,XA("src/parser/parser_flow.ml"),39,28],Tke=[0,0],Ake=XA(" errors");Ok([SM,KH,0]),function(QCe){var $Ce=Kz.fds[QCe];return $Ce.flags.wronly&&NN(OM+QCe+" is writeonly"),{file:$Ce.file,offset:$Ce.offset,fd:QCe,opened:!0,refill:null}}(0),WN(1),WN(2),Ok([SM,$H,0]);var Pke=TP,_ke=function(){return[0,XA(ZV),32,0]}(0)[1],Nke=function(){return 32}(0),kke=function(){return 0}(0),Cke=0|(1<<(0|Nke+SW))-1,wke=0|Qz(0|Nke/8,Cke)-1;Ok([SM,WG,0]),Ok([SM,_Z,0]);var vke=Ok([SM,NZ,0]),Ike=6,jke=Ok([SM,see,0]),Lke=[0,0];try{var Dke=Zk(oee),Rke=Dke}catch(KCe){if(KCe=PC(KCe),KCe!==OH)throw KCe;try{var Oke=Zk(lee),Yke=Oke}catch(QCe){if(QCe=PC(QCe),QCe!==OH)throw QCe;var Yke=pee}var Rke=Yke}var Fke=function(QCe,$Ce){return Xw(QCe,0,$Ce)}(Rke,82),Mke=[ZX,function(){for(var KCe=Kk(0),QCe=[0,PN(55,0),0],$Ce=0==KCe.length-1?[0,0]:KCe,ewe=$Ce.length-1,twe=0;;){if(KA(QCe[1],twe)[twe+1]=twe,54!=twe){var twe=0|twe+1;continue}var awe=[0,iee],nwe=0|54+XC(55,ewe);if(!(0>nwe))for(var rwe=0;;){var swe=0|rwe%55,iwe=QN(rwe,ewe),owe=KA($Ce,iwe)[iwe+1],lwe=JC(awe[1],XA(LW+owe));awe[1]=SH(lwe,0,V_(lwe));var pwe=awe[1],dwe=0|(0|(0|Vk(pwe,0)+(Vk(pwe,1)<<8))+(Vk(pwe,2)<<16))+(Vk(pwe,3)<<24),cwe=(KA(QCe[1],swe)[swe+1]^dwe)&LV;if(KA(QCe[1],swe)[swe+1]=cwe,nwe!=rwe){var rwe=0|rwe+1;continue}break}return QCe[2]=0,QCe}}],Vke=KT,Bke=function(QCe,$Ce){function ewe(){JT(Kz.Undefined_recursive_module,QCe)}function twe(nwe,rwe,swe){if("number"==typeof nwe)rwe[swe]=0===nwe?{fun:ewe}:1===nwe?[ZX,ewe]:[];else switch(nwe[0]){case 0:rwe[swe]=[0];for(var iwe=1;iwe>>0?NC(Pwe,Uwe,_C(lwe,Uwe)):NC(_we,Uwe,_C(QCe[14],Uwe)[1])}function ewe(Uwe,Xwe,Wwe){var qwe=_C(kwe,Uwe);UO(Uwe,80);var Jwe=_C(lwe,Uwe);return[0,Mj(Xwe,Jwe[1]),[0,qwe,Jwe,Wwe]]}function twe(Uwe,Xwe,Wwe,qwe){var Jwe=ewe(Uwe,Xwe,NC(Dwe,0,Uwe)),zwe=[0,Jwe[1],[1,Jwe[2]]];return[0,[0,zwe[1],[0,qwe,[0,zwe],0,Wwe,1,0]]]}function awe(Uwe,Xwe,Wwe,qwe,Jwe){1-XD(Uwe)&&PO(Uwe,7);var zwe=XO(Uwe,79);UO(Uwe,80);var Hwe=_C(lwe,Uwe);return[0,[0,Mj(Xwe,Hwe[1]),[0,Jwe,[0,Hwe],zwe,Wwe,0,qwe]]]}function nwe(Uwe,Xwe){var Wwe=UR(0,Xwe);if("number"==typeof Wwe&&!(11<=Wwe))switch(Wwe){case 2:if(!Uwe)return 0;break;case 4:if(Uwe)return 0;break;case 9:case 10:return OO(Xwe);}return NO(Xwe)}function rwe(Uwe,Xwe){return Xwe?WD(Uwe,[0,Xwe[1][1],5]):Xwe}function swe(Uwe){var Xwe=TR(0,Uwe),Wwe=UR(0,Xwe);if("number"==typeof Wwe&&65===Wwe){var qwe=WR(0,Xwe);if(UO(Xwe,65),5===UR(0,Xwe)){UO(Xwe,5),YO(Xwe,0);var Jwe=_C(QCe[8],Xwe);MO(Xwe);var zwe=WR(0,Xwe);UO(Xwe,6);var Hwe=[0,Mj(qwe,zwe),[0,Jwe]]}else var Hwe=[0,qwe,0];return[0,Hwe]}return 0}function iwe(Uwe){var Xwe=UR(0,Uwe),Wwe=UR(PPe,Uwe);if("number"==typeof Xwe&&80===Xwe){if("number"==typeof Wwe&&65===Wwe)return UO(Uwe,80),[0,0,swe(Uwe)];var qwe=_C(Mwe,Uwe);return[0,qwe,swe(Uwe)]}return _Pe}function owe(Uwe,Xwe){var Wwe=KD(1,Xwe);YO(Wwe,1);var qwe=_C(Uwe,Wwe);return MO(Wwe),qwe}var lwe=[],pwe=[],dwe=[],cwe=[],uwe=[],mwe=[],fwe=[],hwe=[],ywe=[],bwe=[],gwe=[],xwe=[],Swe=[],Ewe=[],Twe=[],Awe=[],Pwe=[],_we=[],Nwe=[],kwe=[],Cwe=[],wwe=[],vwe=[],Iwe=[],jwe=[],Lwe=[],Dwe=[],Rwe=[],Owe=[],Ywe=[],Fwe=[],Mwe=[];ZT(lwe,function(Uwe){return _C(uwe,Uwe)}),ZT(pwe,function(Uwe){1-XD(Uwe)&&PO(Uwe,7);var Xwe=WR(0,Uwe);UO(Uwe,80);var Wwe=_C(lwe,Uwe),qwe=LR(Uwe);if(qwe)return[0,Mj(Xwe,qwe[1]),Wwe];throw[0,YH,GPe]}),ZT(dwe,function(Uwe){var Xwe=WR(0,Uwe),Wwe=UR(0,Uwe);if("number"==typeof Wwe){if(97===Wwe)return OO(Uwe),[0,[0,Xwe,0]];if(98===Wwe)return OO(Uwe),[0,[0,Xwe,1]]}return 0}),ZT(cwe,function(Uwe){if(Uwe){var Xwe=Uwe[1][1],Wwe=Sw(Uwe);if(Wwe)return[0,Mj(Wwe[1][1],Xwe),Wwe];throw[0,YH,HPe]}throw[0,YH,zPe]}),ZT(uwe,function(Uwe){return XO(Uwe,83),NC(mwe,Uwe,_C(fwe,Uwe))}),ZT(mwe,function(Uwe,Xwe){if(83===UR(0,Uwe))for(var Wwe=[0,Xwe,0];;){var qwe=UR(0,Uwe);if("number"==typeof qwe&&83===qwe){UO(Uwe,83);var Wwe=[0,_C(fwe,Uwe),Wwe];continue}var Jwe=_C(cwe,Wwe),zwe=Jwe[2];if(zwe){var Hwe=zwe[2];if(Hwe)return[0,Jwe[1],[5,zwe[1],Hwe[1],Hwe[2]]]}throw[0,YH,JPe]}return Xwe}),ZT(fwe,function(Uwe){return XO(Uwe,85),NC(hwe,Uwe,_C(ywe,Uwe))}),ZT(hwe,function(Uwe,Xwe){if(85===UR(0,Uwe))for(var Wwe=[0,Xwe,0];;){var qwe=UR(0,Uwe);if("number"==typeof qwe&&85===qwe){UO(Uwe,85);var Wwe=[0,_C(ywe,Uwe),Wwe];continue}var Jwe=_C(cwe,Wwe),zwe=Jwe[2];if(zwe){var Hwe=zwe[2];if(Hwe)return[0,Jwe[1],[6,zwe[1],Hwe[1],Hwe[2]]]}throw[0,YH,qPe]}return Xwe}),ZT(ywe,function(Uwe){return NC(bwe,Uwe,_C(gwe,Uwe))}),ZT(bwe,function(Uwe,Xwe){var Wwe=UR(0,Uwe);if("number"==typeof Wwe&&12===Wwe&&!Uwe[14]){var qwe=NC(Pwe,Uwe,Xwe);return LC(jwe,Uwe,qwe[1],0,[0,[0,qwe,0],0])}return Xwe}),ZT(gwe,function(Uwe){var Xwe=UR(0,Uwe);if("number"==typeof Xwe&&79===Xwe){var Wwe=WR(0,Uwe);UO(Uwe,79);var qwe=_C(gwe,Uwe);return[0,Mj(Wwe,qwe[1]),[0,qwe]]}return _C(xwe,Uwe)}),ZT(xwe,function(Uwe){return NC(Swe,Uwe,_C(Ewe,Uwe))}),ZT(Swe,function(Uwe,Xwe){if(!ZR(Uwe)&&XO(Uwe,7)){var Wwe=WR(0,Uwe);return UO(Uwe,8),NC(Swe,Uwe,[0,Mj(Xwe[1],Wwe),[3,Xwe]])}return Xwe}),ZT(Ewe,function(Uwe){var Xwe=WR(0,Uwe),Wwe=UR(0,Uwe);if("number"==typeof Wwe)switch(Wwe){case 0:var qwe=_C(Owe,Uwe);return[0,qwe[1],[4,qwe[2]]];case 5:return _C(vwe,Uwe);case 7:return _C(Awe,Uwe);case 46:var Jwe=WR(0,Uwe);UO(Uwe,46);var zwe=_C(Ewe,Uwe);return[0,Mj(Jwe,zwe[1]),[7,zwe]];case 92:return _C(Iwe,Uwe);case 100:return UO(Uwe,WW),[0,Xwe,8];case 1:case 3:var Hwe=LC(Lwe,0,1,1,Uwe);return[0,Hwe[1],[2,Hwe[2]]];case 30:case 31:var Gwe=XR(0,Uwe);return UO(Uwe,Wwe),[0,Xwe,[11,[0,31===Wwe?1:0,Gwe]]];}else switch(Wwe[0]){case 1:var Zwe=Wwe[1],Kwe=Zwe[4],Qwe=Zwe[3],$we=Zwe[2],eve=Zwe[1];return Kwe&&LO(Uwe,32),UO(Uwe,[1,[0,eve,$we,Qwe,Kwe]]),[0,eve,[9,[0,$we,Qwe]]];case 5:var tve=Wwe[2],ave=Wwe[1],nve=XR(0,Uwe);return UO(Uwe,[5,ave,tve]),1===ave&&LO(Uwe,32),[0,Xwe,[10,[0,tve,nve]]];}var rve=_C(Twe,Wwe);return rve?(UO(Uwe,Wwe),[0,Xwe,rve[1]]):(NO(Uwe),[0,Xwe,0])}),ZT(Twe,function(Uwe){if("number"==typeof Uwe){if(29===Uwe)return WPe;if(XV<=Uwe)switch(0|Uwe-110){case 0:return YPe;case 1:return FPe;case 2:return MPe;case 3:return VPe;case 4:return BPe;case 5:return UPe;default:return XPe;}}return 0}),ZT(Awe,function(Uwe){var Xwe=WR(0,Uwe);UO(Uwe,7);for(var Wwe=0;;){var qwe=UR(0,Uwe);if("number"==typeof qwe){var Jwe=8===qwe?1:YY===qwe?1:0;if(Jwe){var zwe=Sw(Wwe),Hwe=WR(0,Uwe);return UO(Uwe,8),[0,Mj(Xwe,Hwe),[8,zwe]]}}var Gwe=[0,_C(lwe,Uwe),Wwe];8!==UR(0,Uwe)&&UO(Uwe,10);var Wwe=Gwe;continue}}),ZT(Pwe,function(Uwe,Xwe){return[0,Xwe[1],[0,0,Xwe,0]]}),ZT(_we,function(Uwe,Xwe){1-XD(Uwe)&&PO(Uwe,7);var Wwe=XO(Uwe,79);UO(Uwe,80);var qwe=_C(lwe,Uwe);return[0,Mj(Xwe[1],qwe[1]),[0,[0,Xwe],qwe,Wwe]]}),ZT(Nwe,function(Uwe){return function(Xwe){for(var Wwe=Xwe;;){var qwe=UR(0,Uwe);if("number"==typeof qwe){var Jwe=0|qwe-6,zwe=7>>0?KX==Jwe?1:0:5<(0|Jwe-1)>>>0?1:0;if(zwe){var Hwe=13===qwe?1:0;if(Hwe){var Gwe=WR(0,Uwe);UO(Uwe,13);var Zwe=$Ce(Uwe),Kwe=[0,[0,Mj(Gwe,Zwe[1]),[0,Zwe]]]}else var Kwe=Hwe;return[0,Sw(Wwe),Kwe]}}var Qwe=[0,$Ce(Uwe),Wwe];6!==UR(0,Uwe)&&UO(Uwe,10);var Wwe=Qwe;continue}}}),ZT(kwe,function(Uwe){UO(Uwe,5);var Xwe=NC(Nwe,Uwe,0);return UO(Uwe,6),Xwe}),ZT(Cwe,function(Uwe){UO(Uwe,5);var Xwe=TR(0,Uwe),Wwe=UR(0,Xwe);if("number"!=typeof Wwe)var Jwe=0;else if(13<=Wwe){if(YY===Wwe)var qwe=1;else if(14<=Wwe)var Jwe=0,qwe=0;else var qwe=1;if(qwe)var zwe=[0,NC(Nwe,Xwe,0)],Jwe=1}else if(6===Wwe)var zwe=LPe,Jwe=1;else if(0===Wwe)var zwe=_C(wwe,Xwe),Jwe=1;else var Jwe=0;if(!Jwe){if(_C(Twe,Wwe)){var Hwe=UR(DPe,Xwe);if("number"!=typeof Hwe)var Gwe=0;else if(1<(0|Hwe+YW)>>>0)var Gwe=0;else var Zwe=[0,NC(Nwe,Xwe,0)],Gwe=1;if(!Gwe)var Zwe=[1,_C(lwe,Xwe)];var Kwe=Zwe}else var Kwe=[1,_C(lwe,Xwe)];var zwe=Kwe}if(0===zwe[0])var Qwe=zwe;else{var $we=zwe[1];if(Uwe[14])var eve=zwe;else{var tve=UR(0,Uwe);if("number"!=typeof tve)var nve=0;else if(6===tve){if(12===UR(RPe,Uwe))var ave=[0,NC(Nwe,Uwe,[0,NC(Pwe,Uwe,$we),0])],nve=1;else var ave=[1,$we],nve=1;}else if(10===tve){UO(Uwe,10);var ave=[0,NC(Nwe,Uwe,[0,NC(Pwe,Uwe,$we),0])],nve=1}else var nve=0;if(!nve)var ave=zwe;var eve=ave}var Qwe=eve}return UO(Uwe,6),Qwe}),ZT(wwe,function(Uwe){var Xwe=NC(QCe[13],0,Uwe),Wwe=UR(0,Uwe);if("number"==typeof Wwe&&!(1<(0|Wwe+YW)>>>0)){var qwe=NC(_we,Uwe,Xwe);return XO(Uwe,10),[0,NC(Nwe,Uwe,[0,qwe,0])]}return[1,NC(mwe,Uwe,NC(hwe,Uwe,NC(bwe,Uwe,NC(Swe,Uwe,NC(Fwe,Uwe,Xwe)))))]}),ZT(vwe,function(Uwe){var Xwe=WR(0,Uwe),Wwe=_C(Cwe,Uwe);return 0===Wwe[0]?LC(jwe,Uwe,Xwe,0,Wwe[1]):Wwe[1]}),ZT(Iwe,function(Uwe){var Xwe=WR(0,Uwe),Wwe=NC(Dwe,0,Uwe);return LC(jwe,Uwe,Xwe,Wwe,_C(kwe,Uwe))}),ZT(jwe,function(Uwe,Xwe,Wwe,qwe){UO(Uwe,12);var Jwe=_C(lwe,Uwe);return[0,Mj(Xwe,Jwe[1]),[1,[0,qwe,Jwe,Wwe]]]}),ZT(Lwe,function(Uwe,Xwe,Wwe,qwe){var Jwe=Xwe?3===UR(0,qwe)?1:0:Xwe,zwe=WR(0,qwe),Hwe=Jwe?3:1;UO(qwe,Hwe);for(var Gwe=0;;){if(Uwe&&Wwe)throw[0,YH,kPe];var Zwe=WR(0,qwe),Kwe=Uwe?XO(qwe,42):Uwe,Qwe=_C(dwe,qwe),$we=UR(0,qwe);if("number"==typeof $we){if(92===$we)var eve=1;else{if(YY===$we)var tve=Sw(Gwe),ave=1;else if(14<=$we)var eve=0,ave=0;else switch($we){case 2:if(Jwe)var eve=0,ave=0;else var tve=Sw(Gwe),ave=1;break;case 4:if(Jwe)var tve=Sw(Gwe),ave=1;else var eve=0,ave=0;break;case 7:UO(qwe,7);var nve=80===UR(jPe,qwe)?1:0;if(nve){var rve=_C(QCe[14],qwe);UO(qwe,80);var sve=[0,rve[1]]}else var sve=nve;var ive=_C(lwe,qwe);UO(qwe,8),UO(qwe,80);var ove=_C(lwe,qwe),lve=[2,[0,Mj(Zwe,ove[1]),[0,sve,ive,ove,Kwe,Qwe]]];nwe(Jwe,qwe);var Gwe=[0,lve,Gwe];continue;case 13:if(Wwe){OO(qwe);var pve=_C(Owe,qwe),dve=[1,[0,Mj(Zwe,pve[1]),[0,pve]]];nwe(Jwe,qwe);var Gwe=[0,dve,Gwe];continue}var eve=0,ave=0;break;case 5:var eve=1,ave=0;break;default:var eve=0,ave=0;}if(ave){var cve=WR(0,qwe),uve=Jwe?4:2;return UO(qwe,uve),[0,Mj(zwe,cve),[0,Jwe,tve]]}}if(eve){rwe(qwe,Qwe);var mve=NC(Dwe,0,qwe),fve=ewe(qwe,WR(0,qwe),mve),hve=[3,[0,Mj(Zwe,fve[1]),[0,fve,Kwe]]];nwe(Jwe,qwe);var Gwe=[0,hve,Gwe];continue}}if(0===Kwe)var yve=0;else if(Qwe)var yve=0;else if("number"!=typeof $we)var yve=0;else if(80===$we){RO(qwe,[0,Zwe,40]);var bve=[1,[0,Zwe,CPe]],gve=UR(0,qwe),xve=0;if("number"==typeof gve){if(5===gve)var Sve=1;else if(92===gve)var Sve=1;else var Eve=0,Sve=0;if(Sve){rwe(qwe,Qwe);var Tve=twe(qwe,Zwe,xve,bve),Eve=1}}else var Eve=0;if(!Eve)var Tve=awe(qwe,Zwe,xve,Qwe,bve);var Ave=Tve,yve=1}else var yve=0;if(!yve){var Pve=function(Zve){YO(Zve,0);var Kve=_C(QCe[21],Zve);return MO(Zve),Kve},_ve=Pve(qwe)[2];if(1===_ve[0]){var Nve=_ve[1][2];if(!Uk(Nve,wPe))var Cve=1;else if(Uk(Nve,vPe))var kve=0,Cve=0;else var Cve=1;if(Cve){var wve=UR(0,qwe);if("number"==typeof wve){var vve=0|wve-6;if(85>>0){if(87<(0|vve+1)>>>0)var Ive=0,jve=0;else{rwe(qwe,Qwe);var Lve=twe(qwe,Zwe,Kwe,_ve),jve=1}}else if(1<(0|vve-73)>>>0)var Ive=0,jve=0;else var Lve=awe(qwe,Zwe,Kwe,Qwe,_ve),jve=1;if(jve)var Dve=Lve,Ive=1}else var Ive=0;if(!Ive){var Rve=Pve(qwe),Ove=Yk(Nve,IPe),Yve=ewe(qwe,Zwe,0),Fve=Yve[2][1],Mve=Rve[1];if(0===Ove){var Vve=Fve[1];if(Fve[2])WD(qwe,[0,Mve,63]);else{var Bve=Vve?Vve[2]?0:1:0;Bve||WD(qwe,[0,Mve,63])}}else{var Uve=Fve[1]?0:Fve[2]?0:1;Uve||WD(qwe,[0,Mve,62])}var Xve=Ove?[1,Yve]:[2,Yve],Wve=[0,Rve[2],Xve,0,Kwe,0,Qwe],Dve=[0,[0,Mj(Zwe,Yve[1]),Wve]]}var qve=Dve,kve=1}}else var kve=0;if(!kve){var Jve=UR(0,qwe);if("number"==typeof Jve){if(5===Jve)var zve=1;else if(92===Jve)var zve=1;else var Hve=0,zve=0;if(zve){rwe(qwe,Qwe);var Gve=twe(qwe,Zwe,Kwe,_ve),Hve=1}}else var Hve=0;if(!Hve)var Gve=awe(qwe,Zwe,Kwe,Qwe,_ve);var qve=Gve}var Ave=qve}nwe(Jwe,qwe);var Gwe=[0,Ave,Gwe];continue}}),ZT(Dwe,function(Uwe,Xwe){var Wwe=WR(0,Xwe),qwe=92===UR(0,Xwe)?1:0;if(qwe){1-XD(Xwe)&&PO(Xwe,7),UO(Xwe,92);for(var Jwe=0,zwe=0;;){var Hwe=_C(dwe,Xwe),Gwe=IC(QCe[15],Xwe,0,29),Zwe=Gwe[2],Kwe=Gwe[1],Qwe=UR(0,Xwe);if(0===Uwe)var $we=NPe;else{if(!("number"==typeof Qwe))var eve=0;else if(78===Qwe){OO(Xwe);var $we=[0,[0,_C(lwe,Xwe)],1],eve=1}else var eve=0;if(!eve){Jwe&&WD(Xwe,[0,Kwe,58]);var $we=[0,0,Jwe]}}var tve=[0,[0,Kwe,[0,Zwe[1][2],Zwe[2],Hwe,$we[1]]],zwe],ave=UR(0,Xwe);if("number"==typeof ave){if(93===ave)var nve=1;else if(YY===ave)var nve=1;else var rve=0,nve=0;if(nve)var sve=Sw(tve),rve=1}else var rve=0;if(!rve){if(UO(Xwe,10),93!==UR(0,Xwe)){var Jwe=$we[2],zwe=tve;continue}var sve=Sw(tve)}var ive=Mj(Wwe,WR(0,Xwe));UO(Xwe,93);var ove=[0,[0,ive,[0,sve]]];break}}else var ove=qwe;return ove}),ZT(Rwe,function(Uwe){var Xwe=WR(0,Uwe),Wwe=92===UR(0,Uwe)?1:0;if(Wwe){UO(Uwe,92);for(var qwe=0;;){var Jwe=UR(0,Uwe);if("number"==typeof Jwe){if(93===Jwe)var zwe=1;else if(YY===Jwe)var zwe=1;else var Hwe=0,zwe=0;if(zwe){var Gwe=Sw(qwe),Zwe=Mj(Xwe,WR(0,Uwe));UO(Uwe,93);var Kwe=[0,[0,Zwe,[0,Gwe]]],Hwe=1}}else var Hwe=0;if(!Hwe){var Qwe=[0,_C(lwe,Uwe),qwe];93!==UR(0,Uwe)&&UO(Uwe,10);var qwe=Qwe;continue}break}}else var Kwe=Wwe;return Kwe}),ZT(Owe,function(Uwe){return NC(Ywe,Uwe,NC(QCe[13],0,Uwe))}),ZT(Ywe,function(Uwe,Xwe){for(var Wwe=[0,Xwe[1],[0,Xwe]];;){var qwe=Wwe[2],Jwe=Wwe[1];if(11===UR(0,Uwe)){UO(Uwe,11);var zwe=NC(QCe[13],0,Uwe),Hwe=Mj(Jwe,zwe[1]),Wwe=[0,Hwe,[1,[0,Hwe,[0,qwe,zwe]]]];continue}var Gwe=_C(Rwe,Uwe),Zwe=Gwe?Mj(Jwe,Gwe[1][1]):Jwe;return[0,Zwe,[0,qwe,Gwe]]}}),ZT(Fwe,function(Uwe,Xwe){var Wwe=NC(Ywe,Uwe,Xwe);return[0,Wwe[1],[4,Wwe[2]]]}),ZT(Mwe,function(Uwe){var Xwe=UR(0,Uwe);return"number"==typeof Xwe&&80===Xwe?[0,_C(pwe,Uwe)]:0});var Vwe=_C(Dwe,1),Bwe=_C(Dwe,0);return[0,function(Uwe){return owe(lwe,Uwe)},function(Xwe){return owe(Bwe,Xwe)},function(Xwe){return owe(Vwe,Xwe)},function(Xwe){return owe(Rwe,Xwe)},function(Uwe){return owe(Owe,Uwe)},function(Xwe,Wwe){return owe(IC(Lwe,Xwe,0,0),Wwe)},function(Xwe){return owe(kwe,Xwe)},function(Xwe){return owe(pwe,Xwe)},function(Xwe){return owe(Mwe,Xwe)},function(Xwe){return owe(swe,Xwe)},function(Xwe){return owe(iwe,Xwe)}]}(cCe),mCe=_C(function(QCe){return function($Ce){function ewe(hwe,ywe){for(var bwe=ywe;;){var gwe=bwe[2];switch(gwe[0]){case 0:return _w(twe,hwe,gwe[1][1]);case 1:return _w(awe,hwe,gwe[1][1]);case 2:var bwe=gwe[1][1];continue;case 3:var xwe=gwe[1][1],Swe=xwe[2],Ewe=hwe[2],Twe=hwe[1];NC(lCe[3],Swe,Ewe)&&WD(Twe,[0,xwe[1],30]);var Awe=nwe([0,Twe,Ewe],xwe),Pwe=NC(lCe[4],Swe,Awe[2]);return[0,Awe[1],Pwe];default:return WD(hwe[1],[0,bwe[1],19]),hwe;}}}function twe(hwe,ywe){if(0===ywe[0]){var bwe=ywe[1][2],gwe=bwe[1],xwe=1===gwe[0]?nwe(hwe,gwe[1]):hwe;return ewe(xwe,bwe[2])}return ewe(hwe,ywe[1][2][1])}function awe(hwe,ywe){if(ywe){var bwe=ywe[1];return 0===bwe[0]?ewe(hwe,bwe[1]):ewe(hwe,bwe[1][2][1])}return hwe}function nwe(hwe,ywe){var bwe=ywe[2],gwe=ywe[1],xwe=hwe[1];VR(bwe)&&RO(xwe,[0,gwe,29]);var Swe=YR(bwe),Ewe=Swe||MR(bwe);return Ewe&&RO(xwe,[0,gwe,40]),[0,xwe,hwe[2]]}function rwe(hwe,ywe,bwe,gwe,xwe){var Swe=ywe||1-bwe;if(Swe){var Ewe=xwe[2],Twe=ywe?KD(1-hwe[6],hwe):hwe;if(gwe){var Awe=gwe[1],Pwe=Awe[2],_we=Awe[1];VR(Pwe)&&RO(Twe,[0,_we,31]);var Nwe=YR(Pwe),kwe=Nwe||MR(Pwe);kwe&&RO(Twe,[0,_we,40])}var Cwe=_w(ewe,[0,Twe,lCe[1]],xwe[1]),wwe=Ewe?(ewe(Cwe,Ewe[1][2][1]),0):Ewe,vwe=wwe}else var vwe=Swe;return vwe}function swe(hwe){UO(hwe,5);for(var ywe=0;;){var bwe=UR(0,hwe);if("number"==typeof bwe){var gwe=0|bwe-6,xwe=7>>0?KX==gwe?1:0:5<(0|gwe-1)>>>0?1:0;if(xwe){var Swe=13===bwe?1:0;if(Swe){var Ewe=WR(0,hwe);UO(hwe,13);var Twe=NC(QCe[19],hwe,29),Awe=[0,[0,Mj(Ewe,Twe[1]),[0,Twe]]]}else var Awe=Swe;6!==UR(0,hwe)&&PO(hwe,48);var Pwe=[0,Sw(ywe),Awe];return UO(hwe,6),Pwe}}var _we=NC(QCe[19],hwe,29);if(78===UR(0,hwe)){UO(hwe,78);var Nwe=_C(QCe[9],hwe),kwe=[0,Mj(_we[1],Nwe[1]),[2,[0,_we,Nwe]]]}else var kwe=_we;6!==UR(0,hwe)&&UO(hwe,10);var ywe=[0,kwe,ywe];continue}}function iwe(hwe,ywe,bwe){var gwe=OR(hwe,ywe,bwe),xwe=_C(QCe[17],gwe),Swe=xwe[1];return[0,Swe,[0,[0,Swe,xwe[2]]],xwe[3]]}function owe(hwe){return XO(hwe,WW)}function lwe(hwe){return XO(hwe,63)}function pwe(hwe){var ywe=0===hwe[2]?1:0;if(ywe)for(var bwe=hwe[1];;){if(bwe){var gwe=bwe[2],xwe=3===bwe[1][2][0]?1:0;if(xwe){var bwe=gwe;continue}return xwe}return 1}return ywe}function dwe(hwe){for(var ywe=0,bwe=0;;){var gwe=NC(QCe[19],hwe,28),xwe=78===UR(0,hwe)?(UO(hwe,78),[0,[0,_C(QCe[9],hwe)],0]):3===gwe[2][0]?ZPe:[0,0,[0,[0,gwe[1],44],0]],Swe=xwe[1],Ewe=Swe?Swe[1][1]:gwe[1],Twe=xwe[2],Awe=[0,[0,Mj(gwe[1],Ewe),[0,gwe,Swe]],ywe],Pwe=ZC(Twe,bwe);if(10===UR(0,hwe)){UO(hwe,10);var ywe=Awe,bwe=Pwe;continue}var _we=$C(Awe),Nwe=Sw(Awe),kwe=$C(Awe),Cwe=Sw(Pwe);return[0,Mj(kwe[1],_we[1]),Nwe,Cwe]}}function cwe(hwe,ywe,bwe){var gwe=WR(0,bwe);UO(bwe,hwe);var xwe=dwe(bwe),Swe=xwe[3],Ewe=[0,xwe[2],ywe];return[0,[0,Mj(gwe,xwe[1]),Ewe],Swe]}function uwe(hwe){return cwe(24,0,hwe)}function mwe(hwe){var ywe=cwe(27,2,QD(1,hwe)),bwe=ywe[1],gwe=bwe[2],xwe=gwe[1],Swe=ywe[2],Ewe=Sw(_w(function(Twe,Awe){return Awe[2][2]?Twe:[0,[0,Awe[1],43],Twe]},Swe,xwe));return[0,[0,bwe[1],gwe],Ewe]}function fwe(hwe){return cwe(28,1,QD(1,hwe))}return[0,lwe,owe,function(ywe,bwe,hwe){var gwe=WR(0,ywe),xwe=UR(0,ywe);if(!("number"==typeof xwe))var Ewe=0;else if(97===xwe){OO(ywe);var Swe=[0,[0,gwe,0]],Ewe=1}else if(98===xwe){OO(ywe);var Swe=[0,[0,gwe,1]],Ewe=1}else var Ewe=0;if(!Ewe)var Swe=0;if(Swe){var Twe=bwe?0:hwe?0:1;if(!Twe)return WD(ywe,[0,Swe[1][1],5]),0}return Swe},swe,iwe,pwe,rwe,function(hwe,ywe,bwe){var gwe=hwe.slice();gwe[10]=1;var xwe=UR(0,gwe);if("number"==typeof xwe&&1===xwe){var Swe=iwe(gwe,ywe,bwe);return[0,Swe[2],Swe[3]]}var Ewe=OR(gwe,ywe,bwe),Twe=_C(QCe[9],Ewe);return[0,[1,Twe],Ewe[6]]},function(hwe){var ywe=WR(0,hwe),bwe=UR(0,hwe);if("number"==typeof bwe){var gwe=0|bwe+VB;if(4>>0)var xwe=0;else{switch(gwe){case 0:var Swe=uwe(hwe),Ewe=1;break;case 3:var Swe=mwe(hwe),Ewe=1;break;case 4:var Swe=fwe(hwe),Ewe=1;break;default:var xwe=0,Ewe=0;}if(Ewe)var Twe=Swe,xwe=1}}else var xwe=0;if(!xwe){NO(hwe);var Twe=uwe(hwe)}var Awe=Twe[1],Pwe=Twe[2],_we=[18,Awe[2]];return[0,[0,Mj(ywe,Awe[1]),_we],Pwe]},dwe,fwe,mwe,uwe,function(ywe){var bwe=WR(0,ywe),gwe=lwe(ywe);UO(ywe,15);var xwe=owe(ywe),Swe=ywe[7],Ewe=UR(0,ywe);if(0===Swe)var Twe=0;else if(!("number"==typeof Ewe))var Twe=0;else if(5===Ewe)var Awe=QPe,Twe=1;else if(92===Ewe)var Pwe=_C($Ce[2],ywe),_we=5===UR(0,ywe)?0:[0,NC(QCe[13],KPe,ywe)],Awe=[0,Pwe,_we],Twe=1;else var Twe=0;if(!Twe)var hwe=[0,NC(QCe[13],$Pe,ywe)],Awe=[0,_C($Ce[2],ywe),hwe];var Nwe=Awe[2],kwe=swe(ywe),Cwe=_C($Ce[11],ywe),wwe=iwe(ywe,gwe,xwe),vwe=wwe[2],Iwe=pwe(kwe);rwe(ywe,wwe[3],Iwe,Nwe,kwe);var jwe=0===vwe[0]?[0,vwe[1][1],0]:[0,vwe[1][1],1],Lwe=[17,[0,Nwe,kwe,vwe,gwe,xwe,Cwe[2],jwe[2],Cwe[1],Awe[1]]];return[0,Mj(bwe,jwe[1]),Lwe]}]}}(cCe),uCe),fCe=_C(_C(function(QCe){return function($Ce){return function(ewe){function twe(Owe){var Ywe=_C(mwe,Owe),Fwe=_C(uwe,Owe);if(Fwe){1-_C(cwe,Ywe)&&WD(Owe,[0,Ywe[1],15]);var Mwe=Ywe[2],Vwe="number"==typeof Mwe?0:17===Mwe[0]?VR(Mwe[1][2])?(RO(Owe,[0,Ywe[1],37]),1):0:0,Bwe=NC(QCe[20],Owe,Ywe),Uwe=_C(lwe,Owe),Xwe=Mj(Bwe[1],Uwe[1]);return[0,Xwe,[7,[0,Fwe[1],Bwe,Uwe]]]}return Ywe}function awe(){throw oCe}function nwe(Owe){var Ywe=NR(awe,Owe),Fwe=twe(Ywe),Mwe=UR(0,Ywe);if("number"==typeof Mwe){var Vwe=12===Mwe?1:80===Mwe?1:0;if(Vwe)throw oCe}if($R(0,Ywe)){var Bwe=Fwe[2];if("number"!=typeof Bwe&&17===Bwe[0]&&!Uk(Bwe[1][2],rNe)&&!ZR(Ywe))throw oCe;return Fwe}return Fwe}function rwe(Owe,Ywe,Fwe,Mwe){return[0,Mwe,[9,[0,Fwe,Owe,Ywe]]]}function swe(Owe,Ywe,Fwe){for(var Mwe=Ywe,Vwe=Fwe;;){var Bwe=UR(0,Owe);if("number"==typeof Bwe&&82===Bwe){UO(Owe,82);var Uwe=SY(hwe,Owe),Xwe=Mj(Vwe,Uwe[1]),Mwe=rwe(Mwe,Uwe[2],1,Xwe),Vwe=Xwe;continue}return[0,Vwe,Mwe]}}function iwe(Owe,Ywe,Fwe,Mwe){return[0,Mwe,[6,[0,Fwe,Owe,Ywe]]]}function owe(Owe,Ywe){if("number"==typeof Ywe){var Fwe=0|Ywe-29,Mwe=16>>0?19==Fwe?1:0:14<(0|Fwe-1)>>>0?1:0;if(Mwe)return 0}throw oCe}var lwe=[],pwe=[],dwe=[],cwe=[],uwe=[],mwe=[],fwe=[],hwe=[],ywe=[],bwe=[],gwe=[],xwe=[],Swe=[],Ewe=[],Twe=[],Awe=[],Pwe=[],_we=[],Nwe=[],kwe=[],Cwe=[],wwe=[],vwe=[],Iwe=[],jwe=[],Lwe=[],Dwe=[],Rwe=[];return ZT(lwe,function(Owe){var Ywe=UR(0,Owe),Fwe=$R(0,Owe);if("number"==typeof Ywe){var Mwe=0|Ywe-6;if(85>>0)var Vwe=87<(0|Mwe+1)>>>0?0:1;else if(52==Mwe){if(Owe[16])return _C(pwe,Owe);var Vwe=0}else var Vwe=0}else var Vwe=0;if(!Vwe&&0===Fwe)return twe(Owe);var Bwe=$O(Owe,nwe);if(Bwe)return Bwe[1];var Uwe=$O(Owe,Lwe);return Uwe?Uwe[1]:twe(Owe)}),ZT(pwe,function(Owe){var Ywe=WR(0,Owe);UO(Owe,58),1-Owe[16]&&PO(Owe,25);var Fwe=XO(Owe,WW),Mwe=9===UR(0,Owe)?1:0,Vwe=Mwe||KR(Owe),Bwe=Fwe||1-Vwe,Uwe=Bwe?[0,_C(lwe,Owe)]:Bwe;if(Uwe)var Xwe=Uwe[1][1];else{var Wwe=QR(0,Owe),qwe=Wwe?Wwe[1]:Ywe;VO(Owe);var Xwe=qwe}return[0,Mj(Ywe,Xwe),[14,[0,Uwe,Fwe]]]}),ZT(dwe,function(Owe){var Ywe=Owe[2];if("number"!=typeof Ywe)switch(Ywe[0]){case 13:case 17:case 24:return 1;}return 0}),ZT(cwe,function(Owe){var Ywe=Owe[2];if("number"!=typeof Ywe)switch(Ywe[0]){case 0:case 1:case 13:case 17:case 24:return 1;}return 0}),ZT(uwe,function(Owe){var Ywe=UR(0,Owe);if("number"==typeof Ywe){var Fwe=0|Ywe+IU;if(12>>0)var Mwe=0;else{switch(Fwe){case 0:var Vwe=q_e;break;case 1:var Vwe=J_e;break;case 2:var Vwe=z_e;break;case 3:var Vwe=H_e;break;case 4:var Vwe=G_e;break;case 5:var Vwe=Z_e;break;case 6:var Vwe=K_e;break;case 7:var Vwe=Q_e;break;case 8:var Vwe=$_e;break;case 9:var Vwe=eNe;break;case 10:var Vwe=tNe;break;case 11:var Vwe=aNe;break;default:var Vwe=nNe;}var Bwe=Vwe,Mwe=1}}else var Mwe=0;if(!Mwe)var Bwe=0;return 0!==Bwe&&OO(Owe),Bwe}),ZT(mwe,function(Owe){var Ywe=WR(0,Owe),Fwe=_C(fwe,Owe);if(79===UR(0,Owe)){UO(Owe,79);var Mwe=_C(lwe,SR(0,Owe));UO(Owe,80);var Vwe=SY(lwe,Owe),Bwe=Mj(Ywe,Vwe[1]);return[0,Bwe,[10,[0,Fwe,Mwe,Vwe[2]]]]}return Fwe}),ZT(fwe,function(Owe){for(var Ywe=SY(hwe,Owe),Fwe=swe(Owe,Ywe[2],Ywe[1]),Mwe=Fwe[2],c=Fwe[1];;){var Vwe=UR(0,Owe);if("number"==typeof Vwe&&81===Vwe){UO(Owe,81);var Bwe=SY(hwe,Owe),Uwe=swe(Owe,Bwe[2],Bwe[1]),Xwe=Mj(Xwe,Uwe[1]),Mwe=rwe(Mwe,Uwe[2],0,Xwe);continue}return Mwe}}),ZT(hwe,function(Owe){var Ywe=0;a:for(;;){var Fwe=WR(0,Owe),Mwe=0===_C(ywe,Owe)?0:1,Vwe=_C(bwe,SR(0,Owe)),Bwe=LR(Owe),Uwe=Bwe?Bwe[1]:Vwe[1],Xwe=Mj(Fwe,Uwe);if(92===UR(0,Owe))var Wwe=Vwe[2],qwe="number"==typeof Wwe?0:21===Wwe[0]?(PO(Owe,47),1):0;var Jwe=UR(0,Owe);if("number"==typeof Jwe){var zwe=0|Jwe-17;if(1>>0){if(66<=zwe)switch(0|zwe+IU){case 0:var Hwe=A_e,Gwe=1;break;case 1:var Hwe=P_e,Gwe=1;break;case 2:var Hwe=__e,Gwe=1;break;case 3:var Hwe=N_e,Gwe=1;break;case 4:var Hwe=k_e,Gwe=1;break;case 5:var Hwe=C_e,Gwe=1;break;case 6:var Hwe=w_e,Gwe=1;break;case 7:var Hwe=v_e,Gwe=1;break;case 8:var Hwe=I_e,Gwe=1;break;case 9:var Hwe=j_e,Gwe=1;break;case 10:var Hwe=L_e,Gwe=1;break;case 11:var Hwe=D_e,Gwe=1;break;case 12:var Hwe=R_e,Gwe=1;break;case 13:var Hwe=O_e,Gwe=1;break;case 14:var Hwe=Y_e,Gwe=1;break;case 15:var Hwe=F_e,Gwe=1;break;case 16:var Hwe=M_e,Gwe=1;break;case 17:var Hwe=V_e,Gwe=1;break;case 18:var Hwe=B_e,Gwe=1;break;case 19:var Hwe=U_e,Gwe=1;break;default:var Zwe=0,Gwe=0;}else var Zwe=0,Gwe=0;}else if(0!=zwe)var Hwe=X_e,Gwe=1;else if(Owe[11])var Hwe=0,Gwe=1;else var Hwe=W_e,Gwe=1;if(Gwe)var Kwe=Hwe,Zwe=1}else var Zwe=0;if(!Zwe)var Kwe=0;if(0!==Kwe&&OO(Owe),Kwe){var Qwe=Kwe[1],$we=Qwe[1],eve=Mwe?14===$we?1:0:Mwe;eve&&WD(Owe,[0,Xwe,16]);for(var tve=Vwe,ave=[0,$we,Qwe[2]],nve=Xwe,rve=Ywe;;){var sve=ave[2],ive=ave[1];if(rve){var ove=rve[1],lve=ove[2],pve=lve[2],dve=0===pve[0]?pve[1]:0|pve[1]-1;if(sve[1]<=dve){var cve=Mj(ove[3],nve),uve=iwe(ove[1],tve,lve[1],cve),tve=uve,ave=[0,ive,sve],nve=cve,rve=rve[2];continue}}var Ywe=[0,[0,tve,[0,ive,sve],nve],rve];continue a}}for(var mve=Vwe,E=Xwe,fve=Ywe;;){if(fve){var hve=fve[1],yve=Mj(hve[3],yve),bve=fve[2],mve=iwe(hve[1],mve,hve[2][1],yve),fve=bve;continue}return mve}}}),ZT(ywe,function(Owe){var Ywe=UR(0,Owe);if("number"==typeof Ywe)if(48<=Ywe){if(97<=Ywe){if(!(YV<=Ywe))switch(0|Ywe+_V){case 0:return h_e;case 1:return y_e;case 6:return b_e;case 7:return g_e;}}else if(64===Ywe&&Owe[17])return x_e;}else if(45<=Ywe)switch(0|Ywe-45){case 0:return S_e;case 1:return E_e;default:return T_e;}return 0}),ZT(bwe,function(Owe){var Ywe=WR(0,Owe),Fwe=_C(ywe,Owe);if(Fwe){var Mwe=Fwe[1];OO(Owe);var Vwe=_C(bwe,Owe),Bwe=Mj(Ywe,Vwe[1]);if(6===Mwe)var Uwe=Vwe[2],Xwe="number"==typeof Uwe?0:17===Uwe[0]?(RO(Owe,[0,Bwe,33]),1):0;else var Xwe=0;return[0,Bwe,[5,[0,Mwe,1,Vwe]]]}var Wwe=UR(0,Owe);if("number"!=typeof Wwe)var Jwe=0;else if(YV===Wwe)var qwe=f_e,Jwe=1;else if(Yq===Wwe)var qwe=m_e,Jwe=1;else var Jwe=0;if(!Jwe)var qwe=0;if(qwe){OO(Owe);var zwe=_C(bwe,Owe);1-_C(dwe,zwe)&&WD(Owe,[0,zwe[1],15]);var Hwe=zwe[2],Gwe="number"==typeof Hwe?0:17===Hwe[0]?VR(Hwe[1][2])?(LO(Owe,39),1):0:0,Zwe=[8,[0,qwe[1],zwe,1]];return[0,Mj(Ywe,zwe[1]),Zwe]}return _C(gwe,Owe)}),ZT(gwe,function(Owe){var Ywe=_C(xwe,Owe);if(ZR(Owe))return Ywe;var Fwe=UR(0,Owe);if("number"!=typeof Fwe)var Vwe=0;else if(YV===Fwe)var Mwe=u_e,Vwe=1;else if(Yq===Fwe)var Mwe=c_e,Vwe=1;else var Vwe=0;if(!Vwe)var Mwe=0;if(Mwe){1-_C(dwe,Ywe)&&WD(Owe,[0,Ywe[1],15]);var Bwe=Ywe[2],Uwe="number"==typeof Bwe?0:17===Bwe[0]?VR(Bwe[1][2])?(LO(Owe,38),1):0:0,Xwe=WR(0,Owe);OO(Owe);var Wwe=[8,[0,Mwe[1],Ywe,0]];return[0,Mj(Ywe[1],Xwe),Wwe]}return Ywe}),ZT(xwe,function(Owe){var Ywe=WR(0,Owe),Fwe=Owe.slice(),Mwe=1-Owe[15];Fwe[15]=0;var Vwe=UR(0,Fwe);if("number"!=typeof Vwe)var Uwe=0;else if(44!==Vwe)var Uwe=0;else if(Mwe)var Bwe=_C(Ewe,Fwe),Uwe=1;else var Uwe=0;if(!Uwe)var Bwe=SO(0,Fwe)?_C(Pwe,Fwe):_C(Nwe,Fwe);var Xwe=IC(Awe,Fwe,Ywe,Bwe),Wwe=UR(0,Fwe);if("number"==typeof Wwe){if(5===Wwe)return IC(Swe,Fwe,Ywe,Xwe);}else if(2===Wwe[0])return IC(Awe,Fwe,Ywe,LC(wwe,Fwe,Ywe,Xwe,Wwe[1]));return Xwe}),ZT(Swe,function(Owe,Ywe,Fwe){var Mwe=UR(0,Owe);if("number"==typeof Mwe)switch(Mwe){case 5:if(!Owe[12]){var Vwe=_C(Twe,Owe),Bwe=Mj(Ywe,Vwe[1]);return IC(Swe,Owe,Ywe,[0,Bwe,[12,[0,Fwe,Vwe[2]]]])}break;case 7:UO(Owe,7);var Uwe=_C(QCe[7],Owe),Xwe=Mj(Ywe,WR(0,Owe));return UO(Owe,8),IC(Swe,Owe,Ywe,[0,Xwe,[13,[0,Fwe,[1,Uwe],1]]]);case 11:UO(Owe,11);var Wwe=_C(Rwe,Owe)[1];return IC(Swe,Owe,Ywe,[0,Mj(Ywe,Wwe[1]),[13,[0,Fwe,[0,Wwe],0]]]);}else if(2===Mwe[0])return LC(wwe,Owe,Ywe,Fwe,Mwe[1]);return Fwe}),ZT(Ewe,function(Owe){var Ywe=WR(0,Owe);if(UO(Owe,44),Owe[10]&&11===UR(0,Owe)){UO(Owe,11);var Fwe=[0,Ywe,p_e];if(Yk(XR(0,Owe),d_e)){var Mwe=NC(QCe[13],0,Owe);return[0,Mj(Ywe,Mwe[1]),[24,[0,Fwe,Mwe]]]}return NO(Owe),OO(Owe),[0,Ywe,[17,Fwe]]}var Vwe=WR(0,Owe),Bwe=UR(0,Owe);if("number"!=typeof Bwe)var Xwe=0;else if(44===Bwe)var Uwe=_C(Ewe,Owe),Xwe=1;else var Xwe=0;if(!Xwe)var Uwe=SO(0,Owe)?_C(Pwe,Owe):_C(Nwe,Owe);var Wwe=IC(Awe,_R(1,Owe),Vwe,Uwe),qwe=UR(0,Owe);if("number"==typeof qwe)var Jwe=0;else if(2===qwe[0])var zwe=LC(wwe,Owe,Vwe,Wwe,qwe[1]),Jwe=1;else var Jwe=0;if(!Jwe)var zwe=Wwe;var Hwe=UR(0,Owe);if("number"!=typeof Hwe)var Zwe=0;else if(5===Hwe)var Gwe=_C(Twe,Owe),Zwe=1;else var Zwe=0;if(!Zwe)var Gwe=[0,zwe[1],0];var Kwe=[11,[0,zwe,Gwe[2]]];return[0,Mj(Ywe,Gwe[1]),Kwe]}),ZT(Twe,function(Owe){var Ywe=WR(0,Owe);UO(Owe,5);for(var Fwe=0;;){var Mwe=UR(0,Owe);if("number"==typeof Mwe){var Vwe=6===Mwe?1:YY===Mwe?1:0;if(Vwe){var Bwe=Sw(Fwe),Uwe=WR(0,Owe);return UO(Owe,6),[0,Mj(Ywe,Uwe),Bwe]}}var Xwe=UR(0,Owe);if("number"!=typeof Xwe)var zwe=0;else if(13===Xwe){var Wwe=WR(0,Owe);UO(Owe,13);var qwe=_C(lwe,Owe),Jwe=[1,[0,Mj(Wwe,qwe[1]),[0,qwe]]],zwe=1}else var zwe=0;if(!zwe)var Jwe=[0,_C(lwe,Owe)];6!==UR(0,Owe)&&UO(Owe,10);var Fwe=[0,Jwe,Fwe];continue}}),ZT(Awe,function(Owe,Ywe,Fwe){var Mwe=UR(0,Owe);if("number"==typeof Mwe){if(7===Mwe){UO(Owe,7);var Vwe=_R(0,Owe),Bwe=_C(QCe[7],Vwe),Uwe=WR(0,Owe);return UO(Owe,8),IC(Swe,Owe,Ywe,[0,Mj(Ywe,Uwe),[13,[0,Fwe,[1,Bwe],1]]])}if(11===Mwe){UO(Owe,11);var Xwe=_C(Rwe,Owe)[1];return IC(Swe,Owe,Ywe,[0,Mj(Ywe,Xwe[1]),[13,[0,Fwe,[0,Xwe],0]]])}}return Fwe}),ZT(Pwe,function(Owe){var Ywe=WR(0,Owe),Fwe=_C(ewe[1],Owe);UO(Owe,15);var Mwe=_C(ewe[2],Owe);if(5===UR(0,Owe))var Vwe=o_e;else{var Bwe=UR(0,Owe);if("number"==typeof Bwe){var Uwe=92===Bwe?0:1;if(Uwe)var Xwe=0;else var Wwe=Uwe,Xwe=1}else var Xwe=0;if(!Xwe)var Wwe=[0,NC(QCe[13],l_e,Owe)];var Vwe=[0,Wwe,_C($Ce[2],Owe)]}var qwe=Vwe[1],Jwe=_C(ewe[4],Owe),zwe=_C($Ce[11],Owe),Hwe=IC(ewe[5],Owe,Fwe,Mwe),Gwe=Hwe[2],Zwe=_C(ewe[6],Jwe);RC(ewe[7],Owe,Hwe[3],Zwe,qwe,Jwe);var Kwe=0===Gwe[0]?0:1,Qwe=[2,[0,qwe,Jwe,Gwe,Fwe,Mwe,zwe[2],Kwe,zwe[1],Vwe[2]]];return[0,Mj(Ywe,Hwe[1]),Qwe]}),ZT(_we,function(Owe,Ywe){var Fwe=XR(0,Owe);if(0===Ywe)var Mwe=0;else switch(0|Ywe-1){case 0:LO(Owe,32);var Vwe=W_(JC(i_e,Fwe)),Mwe=1;break;case 2:var Bwe=1;try{var Uwe=VL(Fwe)}catch(Xwe){if(Bwe=0,Xwe=PC(Xwe),!kke)throw Xwe;PO(Owe,59);var Vwe=NB,Mwe=1}if(Bwe)var Vwe=Uwe,Mwe=1;break;default:var Mwe=0;}if(!Mwe)var Vwe=W_(Fwe);return UO(Owe,[0,Ywe]),Vwe}),ZT(Nwe,function(Owe){var Ywe=WR(0,Owe),Fwe=UR(0,Owe);if("number"==typeof Fwe)switch(Fwe){case 1:return _C(kwe,Owe);case 5:return _C(vwe,Owe);case 7:var Mwe=_C(Iwe,Owe);return[0,Mwe[1],[0,Mwe[2]]];case 21:return UO(Owe,21),[0,Ywe,0];case 29:var Vwe=XR(0,Owe);return UO(Owe,29),[0,Ywe,[18,[0,0,Vwe]]];case 40:return _C(QCe[23],Owe);case 51:var Bwe=WR(0,Owe);return UO(Owe,51),[0,Bwe,1];case 92:var Uwe=_C(QCe[18],Owe);return[0,Uwe[1],[21,Uwe[2]]];case 30:case 31:var Xwe=XR(0,Owe);return UO(Owe,Fwe),[0,Ywe,[18,[0,[1,31===Fwe?1:0],Xwe]]];case 73:case 99:return _C(jwe,Owe);}else switch(Fwe[0]){case 0:var Wwe=XR(0,Owe);return[0,Ywe,[18,[0,[2,NC(_we,Owe,Fwe[1])],Wwe]]];case 1:var qwe=Fwe[1],Jwe=qwe[4],zwe=qwe[3],Hwe=qwe[2],Gwe=qwe[1];return Jwe&&LO(Owe,32),UO(Owe,[1,[0,Gwe,Hwe,zwe,Jwe]]),[0,Gwe,[18,[0,[0,Hwe],zwe]]];case 2:var Zwe=NC(Cwe,Owe,Fwe[1]);return[0,Zwe[1],[19,Zwe[2]]];}if($R(0,Owe)){var Kwe=NC(QCe[13],0,Owe);return[0,Kwe[1],[17,Kwe]]}return NO(Owe),UM===Fwe&&OO(Owe),[0,Ywe,[18,[0,0,s_e]]]}),ZT(kwe,function(Owe){var Ywe=_C(QCe[11],Owe);return[0,Ywe[1],[1,Ywe[2]]]}),ZT(Cwe,function(Owe,Ywe){var Fwe=Ywe[3],Mwe=Ywe[2],Vwe=Ywe[1];UO(Owe,[2,Ywe]);var Bwe=[0,Vwe,[0,[0,Mwe[2],Mwe[1]],Fwe]];if(Fwe)var Uwe=[0,Vwe,[0,Bwe,0],0];else for(var Xwe=[0,Bwe,0],Wwe=0;;){var qwe=_C(QCe[7],Owe),Jwe=[0,qwe,Wwe],zwe=UR(0,Owe);if("number"!=typeof zwe)var rve=0;else if(2===zwe){YO(Owe,4);var Hwe=UR(0,Owe);if("number"==typeof Hwe)var Gwe=1;else if(2===Hwe[0]){var Zwe=Hwe[1],Kwe=Zwe[3],Qwe=Zwe[2];OO(Owe);var $we=Zwe[1],eve=[0,[0,Qwe[2],Qwe[1]],Kwe];MO(Owe);var tve=[0,[0,$we,eve],Xwe];if(!Kwe){var Xwe=tve,Wwe=Jwe;continue}var ave=Sw(Jwe),nve=[0,$we,Sw(tve),ave],rve=1,Gwe=0}else var Gwe=1;if(Gwe)throw[0,YH,n_e]}else var rve=0;if(!rve){NO(Owe);var sve=[0,qwe[1],r_e],ive=Sw(Jwe),ove=Sw([0,sve,Xwe]),nve=[0,qwe[1],ove,ive]}var Uwe=nve;break}var lve=Mj(Vwe,Uwe[1]);return[0,lve,[0,Uwe[2],Uwe[3]]]}),ZT(wwe,function(Owe,Ywe,Fwe,Mwe){var Vwe=NC(Cwe,Owe,Mwe);return[0,Mj(Ywe,Vwe[1]),[20,[0,Fwe,Vwe]]]}),ZT(vwe,function(Owe){UO(Owe,5);var Ywe=_C(lwe,Owe),Fwe=UR(0,Owe);if("number"!=typeof Fwe)var Vwe=0;else if(10===Fwe)var Mwe=NC(Dwe,Owe,[0,Ywe,0]),Vwe=1;else if(80===Fwe)var Bwe=_C($Ce[8],Owe),Mwe=[0,Mj(Ywe[1],Bwe[1]),[23,[0,Ywe,Bwe]]],Vwe=1;else var Vwe=0;if(!Vwe)var Mwe=Ywe;return UO(Owe,6),Mwe}),ZT(Iwe,function(Owe){var Ywe=WR(0,Owe);UO(Owe,7);for(var Fwe=0;;){var Mwe=UR(0,Owe);if("number"==typeof Mwe){if(14<=Mwe)var Vwe=YY===Mwe?1:0;else if(8<=Mwe)switch(0|Mwe-8){case 2:UO(Owe,10);var Fwe=[0,0,Fwe];continue;case 5:var Bwe=WR(0,Owe);UO(Owe,13);var Uwe=_C(lwe,Owe),Xwe=[1,[0,Mj(Bwe,Uwe[1]),[0,Uwe]]];8!==UR(0,Owe)&&UO(Owe,10);var Fwe=[0,[0,Xwe],Fwe];continue;case 0:var Vwe=1;break;default:var Vwe=0;}else var Vwe=0;if(Vwe){var Wwe=Sw(Fwe),qwe=WR(0,Owe);return UO(Owe,8),[0,Mj(Ywe,qwe),[0,Wwe]]}}var Jwe=[0,_C(lwe,Owe)];8!==UR(0,Owe)&&UO(Owe,10);var Fwe=[0,[0,Jwe],Fwe];continue}}),ZT(jwe,function(Owe){YO(Owe,5);var Ywe=WR(0,Owe),Fwe=UR(0,Owe);if("number"!=typeof Fwe&&3===Fwe[0]){var Mwe=Fwe[1],Vwe=XR(0,Owe);OO(Owe);var Bwe=Mwe[3],Uwe=Mwe[2];MO(Owe);var Xwe=Lv(V_(Bwe));Zw(function(qwe){var Jwe=0|qwe-103;if(!(18>>0))switch(Jwe){case 0:case 2:case 6:case 14:case 18:return Yv(Xwe,qwe);}return 0},Bwe);var Wwe=Rv(Xwe);return Uk(Wwe,Bwe)&&PO(Owe,[3,Bwe]),[0,Ywe,[18,[0,[3,[0,Uwe,Wwe]],Vwe]]]}throw[0,YH,a_e]}),ZT(Lwe,function(Owe){var Ywe=NR(owe,Owe),Fwe=WR(0,Ywe),Mwe=12===UR(e_e,Ywe)?0:1,Vwe=Mwe?_C(ewe[1],Ywe):Mwe,Bwe=_C($Ce[2],Ywe);if(!$R(0,Ywe))var qwe=0;else if(0===Bwe)var Uwe=NC(QCe[13],t_e,Ywe),Xwe=Uwe[1],Wwe=[0,[0,[0,[0,Xwe,[3,[0,[0,Xwe,Uwe[2]],0,0]]],0],0],0,0],qwe=1;else var qwe=0;if(!qwe)var Jwe=_C(ewe[4],Ywe),zwe=TR(1,Ywe),Hwe=_C($Ce[11],zwe),Wwe=[0,Jwe,Hwe[1],Hwe[2]];var Gwe=Wwe[1];if(Gwe[2])var Zwe=0;else if(Gwe[1])var Kwe=Ywe,Zwe=1;else var Zwe=0;if(!Zwe)var Kwe=RR(Ywe);var Qwe=ZR(Kwe),$we=Qwe?12===UR(0,Kwe)?1:0:Qwe;$we&&PO(Kwe,45),UO(Kwe,12);var eve=RR(Kwe),tve=ewe[8],ave=SY(function(lve){return IC(tve,lve,Vwe,0)},eve),nve=ave[2],rve=nve[1],sve=_C(ewe[6],Gwe);RC(ewe[7],eve,nve[2],sve,0,Gwe);var ive=0===rve[0]?0:1,ove=Mj(Fwe,ave[1]);return[0,ove,[3,[0,0,Gwe,rve,Vwe,0,Wwe[3],ive,Wwe[2],Bwe]]]}),ZT(Dwe,function(Owe,Ywe){var Fwe=UR(0,Owe);if("number"==typeof Fwe&&10===Fwe)return UO(Owe,10),NC(Dwe,Owe,[0,_C(lwe,Owe),Ywe]);var Mwe=$C(Ywe),Vwe=Sw(Ywe),Bwe=$C(Vwe);return[0,Mj(Bwe[1],Mwe[1]),[4,[0,Vwe]]]}),ZT(Rwe,function(Owe){var Ywe=UR(0,Owe),Fwe=XR(0,Owe),Mwe=WR(0,Owe);if("number"==typeof Ywe){var Vwe=60<=Ywe?64<=Ywe?0:1:0===Ywe?1:0;if(Vwe)return[0,NC(QCe[13],0,Owe),0]}if("number"==typeof Ywe){if(65<=Ywe){if(XV===Ywe)var Bwe=1;else if(PW<=Ywe)var Bwe=1;else var Uwe=0,Bwe=0;}else if(60<=Ywe){if(64<=Ywe)var Bwe=1;else var Uwe=0,Bwe=0;}else if(15<=Ywe)var Bwe=1;else var Uwe=0,Bwe=0;if(Bwe)var Xwe=[0,[0,Mwe,_O([0,Ywe,Fwe])]],Uwe=1}else var Uwe=0;if(!Uwe){NO(Owe);var Xwe=0}return OO(Owe),[0,[0,Mwe,Fwe],Xwe]}),[0,Iwe,lwe,mwe,Rwe,cwe,xwe,_we,Dwe]}}}(cCe),uCe),mCe),hCe=_C(_C(_C(function(QCe){return function($Ce){return function(ewe){return function(twe){function awe(uwe){var mwe=uwe[23][3];if(mwe)for(var fwe=0;;){var hwe=UR(0,uwe);if("number"==typeof hwe&&14===hwe){OO(uwe);var fwe=[0,_C(twe[6],uwe),fwe];continue}return Sw(fwe)}return mwe}function nwe(uwe){var mwe=UR(0,uwe);if("number"!=typeof mwe)switch(mwe[0]){case 0:var gwe=XR(0,uwe),xwe=WR(0,uwe);return[0,xwe,[0,[0,xwe,[0,[2,NC(twe[7],uwe,mwe[1])],gwe]]]];case 1:var Swe=mwe[1],Ewe=Swe[4],Twe=Swe[3],Awe=Swe[2],Pwe=Swe[1];return Ewe&&LO(uwe,32),UO(uwe,[1,[0,Pwe,Awe,Twe,Ewe]]),[0,Pwe,[0,[0,Pwe,[0,[0,Awe],Twe]]]];}else if(7===mwe){var fwe=WR(0,uwe);UO(uwe,7);var hwe=SR(0,uwe),ywe=_C(QCe[9],hwe),bwe=WR(0,uwe);return UO(uwe,8),[0,Mj(fwe,bwe),[2,ywe]]}var _we=_C(twe[4],uwe)[1];return[0,_we[1],[1,_we]]}function rwe(uwe,mwe){var fwe=_C(ewe[2],uwe),hwe=nwe(uwe),ywe=hwe[1],bwe=WR(0,uwe),gwe=_C(ewe[4],uwe),xwe=0;if(0===mwe){var Swe=gwe[1];if(gwe[2])WD(uwe,[0,ywe,63]);else{var Ewe=Swe?Swe[2]?0:1:0;Ewe||WD(uwe,[0,ywe,63])}}else{var Twe=gwe[1]?0:gwe[2]?0:1;Twe||WD(uwe,[0,ywe,62])}var Awe=_C($Ce[9],uwe),Pwe=IC(ewe[5],uwe,xwe,fwe),_we=Pwe[2],Nwe=_C(ewe[6],gwe);RC(ewe[7],uwe,Pwe[3],Nwe,0,gwe);var kwe=0===_we[0]?[0,_we[1][1],0]:[0,_we[1][1],1],Cwe=Mj(bwe,kwe[1]);return[0,hwe[2],[0,Cwe,[0,0,gwe,_we,xwe,fwe,0,kwe[2],Awe,0]]]}function swe(uwe,mwe,fwe,hwe,ywe){var bwe=UR(0,uwe);if("number"==typeof bwe){if(92===bwe)var gwe=1;else if(11<=bwe)var xwe=0,gwe=0;else switch(bwe){case 5:var gwe=1;break;case 2:case 10:switch(fwe[0]){case 0:var Swe=fwe[1],Ewe=[0,Swe[1],[18,Swe[2]]];break;case 1:var Twe=fwe[1],Ewe=[0,Twe[1],[17,Twe]];break;default:var Ewe=fwe[1];}var Awe=[0,Ewe,1,0],xwe=1,gwe=0;break;default:var xwe=0,gwe=0;}if(gwe){var Pwe=WR(0,uwe),_we=_C($Ce[2],uwe),Nwe=_C(ewe[4],uwe),kwe=_C($Ce[9],uwe),Cwe=IC(ewe[5],uwe,hwe,ywe),wwe=Cwe[2],vwe=_C(ewe[6],Nwe);RC(ewe[7],uwe,Cwe[3],vwe,0,Nwe);var Iwe=0===wwe[0]?[0,wwe[1][1],0]:[0,wwe[1][1],1],jwe=Mj(Pwe,Iwe[1]),Awe=[0,[0,jwe,[2,[0,0,Nwe,wwe,hwe,ywe,0,Iwe[2],kwe,_we]]],0,1],xwe=1}}else var xwe=0;if(!xwe){UO(uwe,80);var Awe=[0,_C(QCe[9],uwe),0,0]}var Lwe=Awe[1],Dwe=[0,fwe,[0,Lwe],Awe[3],Awe[2]];return[0,Mj(mwe,Lwe[1]),Dwe]}function iwe(uwe,mwe){return mwe?WD(uwe,[0,mwe[1][1],5]):mwe}function owe(uwe,mwe,fwe,hwe,ywe,bwe,gwe,xwe){for(;;){var Swe=UR(0,uwe);if("number"==typeof Swe){var Ewe=0|Swe-78;if(2>>0)var Twe=IV==Ewe?0:1;else{if(1==Ewe){NO(uwe),OO(uwe);continue}var Twe=0}if(!Twe&&!ywe&&!bwe){var Awe=_C($Ce[9],uwe),Pwe=uwe[23],_we=78===UR(0,uwe)?1:0;if(_we){var Nwe=gwe?Pwe[2]:gwe;if(Nwe)var kwe=Nwe;else var Cwe=1-gwe,kwe=Cwe?Pwe[1]:Cwe;var wwe=kwe?(UO(uwe,78),[0,_C(QCe[7],uwe)]):kwe}else var wwe=_we;var vwe=WR(0,uwe);if(!XO(uwe,9)){var Iwe=7===UR(0,uwe)?1:0,jwe=Iwe||(5===UR(0,uwe)?1:0);jwe&&NO(uwe)}return[1,[0,Mj(mwe,vwe),[0,hwe,wwe,Awe,gwe,xwe]]]}}iwe(uwe,xwe);var Lwe=WR(0,uwe),Dwe=_C($Ce[2],uwe),Rwe=_C(ewe[4],uwe),Owe=_C($Ce[9],uwe),Ywe=IC(ewe[5],uwe,ywe,bwe),Fwe=Ywe[2],Mwe=_C(ewe[6],Rwe);RC(ewe[7],uwe,Ywe[3],Mwe,0,Rwe);var Vwe=0===Fwe[0]?[0,Fwe[1][1],0]:[0,Fwe[1][1],1],Bwe=Vwe[1],Uwe=Mj(Lwe,Bwe),Xwe=[0,Uwe,[0,0,Rwe,Fwe,ywe,bwe,0,Vwe[2],Owe,Dwe]];if(0===gwe){switch(hwe[0]){case 0:var Wwe=hwe[1][2][1];if("number"==typeof Wwe)var qwe=1;else if(0!==Wwe[0])var qwe=1;else if(Uk(Wwe[1],cNe))var Jwe=0,zwe=0,qwe=0;else var zwe=1,qwe=0;if(qwe)var Jwe=0,zwe=0;break;case 1:if(Uk(hwe[1][2],uNe))var Jwe=0,zwe=0;else var zwe=1;break;default:var Jwe=0,zwe=0;}if(zwe)var Hwe=0,Jwe=1}else var Jwe=0;if(!Jwe)var Hwe=1;return[0,[0,Mj(mwe,Bwe),[0,Hwe,hwe,Xwe,gwe,fwe]]]}}var lwe=[],pwe=[],dwe=[],cwe=[];return ZT(lwe,function(uwe){if(41===UR(0,uwe)){UO(uwe,41);var mwe=uwe.slice();mwe[16]=0;var fwe=_C(twe[6],mwe),hwe=[0,[0,fwe],_C($Ce[4],uwe)]}else var hwe=xNe;var ywe=52===UR(0,uwe)?1:0;if(ywe){1-XD(uwe)&&PO(uwe,11),UO(uwe,52);var bwe=NC(pwe,uwe,0)}else var bwe=ywe;var gwe=_C(dwe,uwe);return[0,gwe,hwe[1],hwe[2],bwe]}),ZT(pwe,function(uwe,mwe){var fwe=NC(QCe[13],0,uwe),hwe=_C($Ce[4],uwe),ywe=hwe?Mj(fwe[1],hwe[1][1]):fwe[1],bwe=[0,[0,ywe,[0,fwe,hwe]],mwe],gwe=UR(0,uwe);return"number"==typeof gwe&&10===gwe?(UO(uwe,10),NC(pwe,uwe,bwe)):Sw(bwe)}),ZT(dwe,function(uwe){var mwe=WR(0,uwe);UO(uwe,1);for(var fwe=0;;){var hwe=UR(0,uwe);if("number"==typeof hwe){var ywe=0|hwe-3;if(LY>>0){if(!(Yq<(0|ywe+1)>>>0)){var bwe=Sw(fwe),gwe=WR(0,uwe);return UO(uwe,2),[0,Mj(mwe,gwe),[0,bwe]]}}else if(6==ywe){UO(uwe,9);continue}}var fwe=[0,_C(cwe,uwe),fwe];continue}}),ZT(cwe,function(uwe){var mwe=WR(0,uwe),fwe=awe(uwe),hwe=5===UR(mNe,uwe)?0:1;if(hwe)var ywe=92===UR(fNe,uwe)?0:1,bwe=ywe?XO(uwe,42):ywe;else var bwe=hwe;var gwe=5===UR(hNe,uwe)?0:1;if(gwe)var xwe=80===UR(yNe,uwe)?0:1,Swe=xwe?_C(ewe[1],uwe):xwe;else var Swe=gwe;var Ewe=_C(ewe[2],uwe),Twe=IC(ewe[3],uwe,Swe,Ewe);if(0!==Ewe)var Pwe=0;else if(Twe)var Awe=_C(ewe[2],uwe),Pwe=1;else var Pwe=0;if(!Pwe)var Awe=Ewe;var _we=nwe(uwe);if(0===Swe&&0===Awe){var Nwe=_we[2];if(1===Nwe[0]){var kwe=Nwe[1][2];if(!Uk(kwe,bNe)){var Cwe=UR(0,uwe);if("number"==typeof Cwe){var wwe=78<=Cwe?81<=Cwe?92===Cwe?1:0:79===Cwe?0:1:5===Cwe?1:9===Cwe?1:0;if(wwe)return owe(uwe,mwe,fwe,Nwe,Swe,Awe,bwe,Twe)}iwe(uwe,Twe);var vwe=rwe(uwe,1),Iwe=vwe[2],jwe=[0,2,vwe[1],Iwe,bwe,fwe];return[0,[0,Mj(mwe,Iwe[1]),jwe]]}if(!Uk(kwe,gNe)){var Lwe=UR(0,uwe);if("number"==typeof Lwe){var Dwe=78<=Lwe?81<=Lwe?92===Lwe?1:0:79===Lwe?0:1:5===Lwe?1:9===Lwe?1:0;if(Dwe)return owe(uwe,mwe,fwe,Nwe,Swe,Awe,bwe,Twe)}iwe(uwe,Twe);var Rwe=rwe(uwe,0),Owe=Rwe[2],Ywe=[0,3,Rwe[1],Owe,bwe,fwe];return[0,[0,Mj(mwe,Owe[1]),Ywe]]}}}return owe(uwe,mwe,fwe,_we[2],Swe,Awe,bwe,Twe)}),[0,nwe,function(uwe){var mwe=WR(0,uwe);UO(uwe,1);for(var fwe=0;;){var hwe=UR(0,uwe);if("number"==typeof hwe){var ywe=2===hwe?1:YY===hwe?1:0;if(ywe){var bwe=Sw(fwe),gwe=WR(0,uwe);return UO(uwe,2),[0,Mj(mwe,gwe),[0,bwe]]}}var xwe=WR(0,uwe);if(13===UR(0,uwe)){UO(uwe,13);var Swe=_C(QCe[9],uwe),Ewe=[1,[0,Mj(xwe,Swe[1]),[0,Swe]]]}else{var Twe=WH[1],Awe=$R([0,Twe],uwe);if(Awe)var Pwe=Awe,_we=0;else{var Nwe=UR([0,Twe],uwe);if("number"==typeof Nwe)var kwe=1;else if(1>>0){if(IV<=zwe)var Hwe=0,Gwe=0;else switch(0|zwe+80){case 2:case 5:case 10:var Gwe=1;break;default:var Hwe=0,Gwe=0;}}else if(10<(0|zwe-1)>>>0)var Gwe=1;else var Hwe=0,Gwe=0;if(Gwe)var Zwe=swe(uwe,xwe,jwe,0,0),Hwe=1}else var Hwe=0;if(!Hwe)var Kwe=rwe(uwe,1),Qwe=Kwe[2],$we=Qwe[1],eve=[0,Kwe[1],[1,[0,$we,Qwe[2]]],0,0],Zwe=[0,Mj(xwe,$we),eve];var qwe=Zwe,Rwe=1}else if(Uk(Lwe,ENe))var Dwe=0,Rwe=0;else{var Owe=UR(0,uwe);if("number"==typeof Owe){var Ywe=0|Owe+TB;if(12>>0){if(IV<=Ywe)var Fwe=0,Mwe=0;else switch(0|Ywe+80){case 2:case 5:case 10:var Mwe=1;break;default:var Fwe=0,Mwe=0;}}else if(10<(0|Ywe-1)>>>0)var Mwe=1;else var Fwe=0,Mwe=0;if(Mwe)var Vwe=swe(uwe,xwe,jwe,0,0),Fwe=1}else var Fwe=0;if(!Fwe)var Bwe=rwe(uwe,0),Uwe=Bwe[2],Xwe=Uwe[1],Wwe=[0,Bwe[1],[2,[0,Xwe,Uwe[2]]],0,0],Vwe=[0,Mj(xwe,Xwe),Wwe];var qwe=Vwe,Rwe=1}if(Rwe)var tve=qwe,Dwe=1}else var Dwe=0}else var Dwe=0;if(!Dwe)var tve=swe(uwe,xwe,Iwe[2],wwe,vwe);var Ewe=[0,tve]}2!==UR(0,uwe)&&UO(uwe,10);var fwe=[0,Ewe,fwe];continue}},function(mwe,uwe){var fwe=KD(1,mwe),hwe=WR(0,fwe),ywe=ZC(uwe,awe(fwe));UO(fwe,40);var bwe=QD(1,fwe),gwe=fwe[7],xwe=$R(0,bwe);if(0===gwe)var Swe=0;else{var Ewe=0===xwe?0:1;if(Ewe)var Swe=0;else var Twe=Ewe,Swe=1}if(!Swe)var Twe=[0,NC(QCe[13],0,bwe)];var Awe=_C($Ce[3],fwe),Pwe=_C(lwe,fwe),_we=Pwe[1],Nwe=Mj(hwe,_we[1]);return[0,Nwe,[19,[0,Twe,_we,Pwe[2],Awe,Pwe[3],Pwe[4],ywe]]]},function(uwe){var mwe=WR(0,uwe),fwe=awe(uwe);UO(uwe,40);var hwe=UR(0,uwe);if("number"==typeof hwe){var ywe=0|hwe-1;if(40>>0){if(91==ywe)var bwe=1;else var gwe=0,bwe=0;}else if(38<(0|ywe-1)>>>0)var bwe=1;else var gwe=0,bwe=0;if(bwe)var xwe=dNe,gwe=1}else var gwe=0;if(!gwe)var Swe=[0,NC(QCe[13],0,uwe)],xwe=[0,Swe,_C($Ce[3],uwe)];var Ewe=_C(lwe,uwe),Twe=Ewe[1],Awe=Mj(mwe,Twe[1]);return[0,Awe,[22,[0,xwe[1],Twe,Ewe[2],xwe[2],Ewe[3],Ewe[4],fwe]]]},awe]}}}}(cCe),uCe),mCe),fCe),yCe=_C(_C(_C(function(QCe){return function($Ce){return function(ewe){return function(twe){function awe(Wwe,qwe){for(var Jwe=qwe;;){var zwe=Jwe[2];switch(zwe[0]){case 0:var Hwe=zwe[1][1];return _w(function(Zwe,Kwe){var Qwe=0===Kwe[0]?Kwe[1][2][2]:Kwe[1][2][1];return awe(Zwe,Qwe)},Wwe,Hwe);case 1:var Gwe=zwe[1][1];return _w(function(Zwe,Kwe){if(Kwe){var Qwe=Kwe[1],$we=0===Qwe[0]?Qwe[1]:Qwe[1][2][1];return awe(Zwe,$we)}return Zwe},Wwe,Gwe);case 2:var Jwe=zwe[1][1];continue;case 3:return[0,zwe[1][1],Wwe];default:return VC(hke);}}}function nwe(Wwe,qwe,Jwe){if(Jwe){var zwe=Jwe[1];if(0===zwe[0]){var Hwe=zwe[1],Gwe=Hwe[2][1];if(Gwe&&!Gwe[1][2][2]){var Zwe=Gwe[2];if(!Zwe)return Zwe}return WD(Wwe,[0,Hwe[1],qwe])}var Kwe=zwe[1],Qwe=Kwe[1],$we=1-_C(QCe[24],[0,Qwe,Kwe[2]]);return $we?WD(Wwe,[0,Qwe,qwe]):$we}return PO(Wwe,qwe)}function rwe(Wwe,qwe){for(var Jwe=qwe;;){var zwe=[0,_C($Ce[5],Wwe),Jwe],Hwe=UR(0,Wwe);if("number"==typeof Hwe&&10===Hwe){UO(Wwe,10);var Jwe=zwe;continue}return Sw(zwe)}}function swe(Wwe){WO(Wwe,DNe);var qwe=UR(0,Wwe);if("number"!=typeof qwe&&1===qwe[0]){var Jwe=qwe[1],zwe=Jwe[4],Hwe=Jwe[3],Gwe=Jwe[2],Zwe=Jwe[1];return zwe&&LO(Wwe,32),UO(Wwe,[1,[0,Zwe,Gwe,Hwe,zwe]]),[0,Zwe,[0,[0,Gwe],Hwe]]}var Kwe=XR(0,Wwe),Qwe=[0,WR(0,Wwe),[0,[0,Kwe],Kwe]];return NO(Wwe),Qwe}function iwe(Wwe,qwe){var Jwe=WR(0,Wwe),zwe=UR(0,Wwe);if("number"==typeof zwe&&WW===zwe){UO(Wwe,WW),WO(Wwe,LNe);var Hwe=NC(QCe[13],0,Wwe);return[0,[2,[0,Mj(Jwe,Hwe[1]),Hwe]],0]}UO(Wwe,1);for(var Gwe=0,Zwe=0;;){var Kwe=Gwe?Gwe[1]:1,Qwe=UR(0,Wwe);if("number"==typeof Qwe){var $we=2===Qwe?1:YY===Qwe?1:0;if($we){var eve=Sw(Zwe);return UO(Wwe,2),eve}}1-Kwe&&WD(Wwe,[0,WR(0,Wwe),66]);var tve=_C(QCe[14],Wwe),ave=tve[2],nve=tve[1],rve=nve[2],sve=Yk(rve,TNe)?ANe:Yk(rve,PNe)?_Ne:NNe,ive=sve[2],ove=sve[1];if(Yk(XR(0,Wwe),kNe)){var lve=NC(QCe[13],0,Wwe);if(!ove)var pve=0;else if($R(0,Wwe))var pve=0;else{qwe&&WD(Wwe,[0,nve[1],65]);var dve=[0,[0,ive,0,lve]],pve=1}if(!pve)var dve=[0,[0,0,[0,NC(QCe[13],0,Wwe)],nve]];var cve=dve}else{if(!ove)var yve=0;else if($R(0,Wwe)){qwe&&WD(Wwe,[0,nve[1],65]);var uve=_C(QCe[14],Wwe),mve=uve[2];mve&&WD(Wwe,mve[1]);var fve=Yk(XR(0,Wwe),CNe),hve=fve?(WO(Wwe,wNe),[0,NC(QCe[13],0,Wwe)]):fve,cve=[0,[0,ive,hve,uve[1]]],yve=1}else var yve=0;if(!yve){ave&&WD(Wwe,ave[1]);var cve=[0,[0,0,0,nve]]}}var Gwe=[0,XO(Wwe,10)],Zwe=[0,cve,Zwe];continue}}var owe=[],lwe=[],pwe=[],dwe=[],cwe=[],uwe=[],mwe=[],fwe=[],hwe=[],ywe=[],bwe=[],gwe=[],xwe=[],Swe=[],Ewe=[],Twe=[],Awe=[],Pwe=[],_we=[],Nwe=[],kwe=[],Cwe=[],wwe=[],vwe=[],Iwe=[],jwe=[],Lwe=[],Dwe=[],Rwe=[],Owe=[],Ywe=[],Fwe=[],Mwe=[],Vwe=[],Bwe=[],Uwe=[],Xwe=[];return ZT(owe,function(Wwe){var qwe=WR(0,Wwe);return UO(Wwe,9),[0,qwe,0]}),ZT(lwe,function(Wwe){var qwe=WR(0,Wwe);if(UO(Wwe,32),9===UR(0,Wwe))var Jwe=0;else if(KR(Wwe))var Jwe=0;else{var zwe=NC(QCe[13],0,Wwe),Hwe=zwe[2];1-NC(pCe[3],Hwe,Wwe[3])&&PO(Wwe,[4,Hwe]);var Gwe=[0,zwe],Jwe=1}if(!Jwe)var Gwe=0;var Zwe=QR(0,Wwe),Kwe=Zwe?Zwe[1]:Gwe?Gwe[1][1]:qwe,Qwe=Mj(qwe,Kwe),$we=0===Gwe?1:0;if($we)var eve=Wwe[8],tve=eve||Wwe[9],ave=1-tve;else var ave=$we;return ave&&WD(Wwe,[0,Qwe,23]),VO(Wwe),[0,Qwe,[4,[0,Gwe]]]}),ZT(pwe,function(Wwe){var qwe=WR(0,Wwe);if(UO(Wwe,35),9===UR(0,Wwe))var Jwe=0;else if(KR(Wwe))var Jwe=0;else{var zwe=NC(QCe[13],0,Wwe),Hwe=zwe[2];1-NC(pCe[3],Hwe,Wwe[3])&&PO(Wwe,[4,Hwe]);var Gwe=[0,zwe],Jwe=1}if(!Jwe)var Gwe=0;var Zwe=QR(0,Wwe),Kwe=Zwe?Zwe[1]:Gwe?Gwe[1][1]:qwe,Qwe=Mj(qwe,Kwe);return 1-Wwe[8]&&WD(Wwe,[0,Qwe,22]),VO(Wwe),[0,Qwe,[5,[0,Gwe]]]}),ZT(dwe,function(Wwe){var qwe=WR(0,Wwe);UO(Wwe,59);var Jwe=QR(0,Wwe),zwe=Jwe?Jwe[1]:qwe;return VO(Wwe),[0,Mj(qwe,zwe),1]}),ZT(cwe,function(Wwe){var qwe=WR(0,Wwe);UO(Wwe,37);var Jwe=$D(1,Wwe),zwe=_C(QCe[2],Jwe);UO(Wwe,25),UO(Wwe,5);var Hwe=_C(QCe[7],Wwe),Gwe=WR(0,Wwe);UO(Wwe,6);var Zwe=QR(0,Wwe),Kwe=Zwe?Zwe[1]:Gwe;return 9===UR(0,Wwe)&&VO(Wwe),[0,Mj(qwe,Kwe),[13,[0,zwe,Hwe]]]}),ZT(uwe,function(Wwe){var qwe=WR(0,Wwe);UO(Wwe,39);var Jwe=Wwe[17],zwe=Jwe?XO(Wwe,64):Jwe;UO(Wwe,5);var Hwe=UR(0,Wwe);if("number"!=typeof Hwe)var Gwe=0;else if(24<=Hwe){if(29<=Hwe)var Gwe=0;else switch(0|Hwe+VB){case 0:var Zwe=SR(1,Wwe),Kwe=_C(ewe[13],Zwe),Qwe=[0,[0,[0,Kwe[1]]],Kwe[2]],Gwe=1;break;case 3:var $we=SR(1,Wwe),eve=_C(ewe[12],$we),Qwe=[0,[0,[0,eve[1]]],eve[2]],Gwe=1;break;case 4:var tve=SR(1,Wwe),ave=_C(ewe[11],tve),Qwe=[0,[0,[0,ave[1]]],ave[2]],Gwe=1;break;default:var Gwe=0;}}else if(9===Hwe)var Qwe=uke,Gwe=1;else var Gwe=0;if(!Gwe)var nve=QD(1,SR(1,Wwe)),Qwe=[0,[0,[1,_C(QCe[7],nve)]],0];var rve=Qwe[1],sve=UR(0,Wwe);if(62!==sve&&!zwe){if("number"==typeof sve&&17===sve){if(nwe(Wwe,17,rve),rve){var ive=rve[1],ove=0===ive[0]?[0,ive[1]]:[1,ive[1]];UO(Wwe,17);var lve=_C(QCe[7],Wwe);UO(Wwe,6);var pve=$D(1,Wwe),dve=_C(QCe[2],pve);return[0,Mj(qwe,dve[1]),[15,[0,ove,lve,dve,0]]]}throw[0,YH,fke]}var cve=Qwe[2];Pw(function(kve){return WD(Wwe,kve)},cve),UO(Wwe,9);var uve=UR(0,Wwe);if("number"==typeof uve){var mve=9===uve?0:1;if(mve)var fve=0;else var hve=mve,fve=1}else var fve=0;if(!fve)var hve=[0,_C(QCe[7],Wwe)];UO(Wwe,9);var yve=UR(0,Wwe);if("number"==typeof yve){var bve=6===yve?0:1;if(bve)var gve=0;else var xve=bve,gve=1}else var gve=0;if(!gve)var xve=[0,_C(QCe[7],Wwe)];UO(Wwe,6);var Sve=$D(1,Wwe),Eve=_C(QCe[2],Sve);return[0,Mj(qwe,Eve[1]),[14,[0,rve,hve,xve,Eve]]]}if(nwe(Wwe,18,rve),rve){var Tve=rve[1],Ave=0===Tve[0]?[0,Tve[1]]:[1,Tve[1]];UO(Wwe,62);var Pve=_C(QCe[9],Wwe);UO(Wwe,6);var _ve=$D(1,Wwe),Nve=_C(QCe[2],_ve);return[0,Mj(qwe,Nve[1]),[16,[0,Ave,Pve,Nve,zwe]]]}throw[0,YH,mke]}),ZT(mwe,function(Wwe){var qwe=WR(0,Wwe);UO(Wwe,16),UO(Wwe,5);var Jwe=_C(QCe[7],Wwe);UO(Wwe,6),UR(0,Wwe);var zwe=SO(0,Wwe)?(LO(Wwe,46),_C(ewe[14],Wwe)):_C(QCe[2],Wwe),Hwe=43===UR(0,Wwe)?1:0,Gwe=Hwe?(UO(Wwe,43),[0,_C(QCe[2],Wwe)]):Hwe,Zwe=Gwe?Gwe[1][1]:zwe[1];return[0,Mj(qwe,Zwe),[2,[0,Jwe,zwe,Gwe]]]}),ZT(fwe,function(Wwe){1-Wwe[10]&&PO(Wwe,24);var qwe=WR(0,Wwe);if(UO(Wwe,19),9===UR(0,Wwe))var Jwe=0;else if(KR(Wwe))var Jwe=0;else var zwe=[0,_C(QCe[7],Wwe)],Jwe=1;if(!Jwe)var zwe=0;var Hwe=QR(0,Wwe),Gwe=Hwe?Hwe[1]:zwe?zwe[1][1]:qwe;return VO(Wwe),[0,Mj(qwe,Gwe),[9,[0,zwe]]]}),ZT(hwe,function(Wwe){var qwe=WR(0,Wwe);UO(Wwe,20),UO(Wwe,5);var Jwe=_C(QCe[7],Wwe);UO(Wwe,6),UO(Wwe,1);for(var zwe=cke;;){var Hwe=zwe[2],Gwe=zwe[1],Zwe=UR(0,Wwe);if("number"==typeof Zwe){var Kwe=2===Zwe?1:YY===Zwe?1:0;if(Kwe){var Qwe=Sw(Hwe),$we=WR(0,Wwe);return UO(Wwe,2),[0,Mj(qwe,$we),[8,[0,Jwe,Qwe]]]}}var eve=WR(0,Wwe),tve=UR(0,Wwe);if("number"!=typeof tve)var nve=0;else if(36===tve){Gwe&&PO(Wwe,20),UO(Wwe,36);var ave=0,nve=1}else var nve=0;if(!nve){UO(Wwe,33);var ave=[0,_C(QCe[7],Wwe)]}var rve=Gwe||(0===ave?1:0),sve=WR(0,Wwe);UO(Wwe,80);var ive=function(cve){if("number"==typeof cve){var uve=0|cve-2,mve=31>>0?34==uve?1:0:29<(0|uve-1)>>>0?1:0;if(mve)return 1}return 0},ove=Wwe.slice();ove[9]=1;var lve=NC(QCe[4],ive,ove),pve=Sw(lve),dve=pve?pve[1][1]:sve,zwe=[0,rve,[0,[0,Mj(eve,dve),[0,ave,lve]],Hwe]];continue}}),ZT(ywe,function(Wwe){var qwe=WR(0,Wwe);UO(Wwe,22),ZR(Wwe)&&WD(Wwe,[0,qwe,12]);var Jwe=_C(QCe[7],Wwe),zwe=QR(0,Wwe),Hwe=zwe?zwe[1]:Jwe[1];return VO(Wwe),[0,Mj(qwe,Hwe),[10,[0,Jwe]]]}),ZT(bwe,function(Wwe){var qwe=WR(0,Wwe);UO(Wwe,23);var Jwe=_C(QCe[16],Wwe),zwe=UR(0,Wwe);if("number"!=typeof zwe)var $we=0;else if(34===zwe){var Hwe=WR(0,Wwe);UO(Wwe,34),UO(Wwe,5);var Gwe=NC(QCe[13],dke,Wwe),Zwe=[0,Gwe[1],[3,[0,Gwe,0,0]]];UO(Wwe,6);var Kwe=_C(QCe[16],Wwe),Qwe=[0,[0,Mj(Hwe,Kwe[1]),[0,Zwe,Kwe]]],$we=1}else var $we=0;if(!$we)var Qwe=0;var eve=UR(0,Wwe);if("number"!=typeof eve)var ave=0;else if(38===eve){UO(Wwe,38);var tve=[0,_C(QCe[16],Wwe)],ave=1}else var ave=0;if(!ave)var tve=0;var nve=tve?tve[1][1]:Qwe?Qwe[1][1]:(WD(Wwe,[0,Jwe[1],21]),Jwe[1]);return[0,Mj(qwe,nve),[11,[0,Jwe,Qwe,tve]]]}),ZT(gwe,function(Wwe){var qwe=_C(ewe[9],Wwe),Jwe=qwe[1],zwe=Jwe[1],Hwe=QR(0,Wwe),Gwe=Hwe?Hwe[1]:zwe;VO(Wwe);var Zwe=qwe[2];Pw(function(Qwe){return WD(Wwe,Qwe)},Zwe);var Kwe=Jwe[2];return[0,Mj(zwe,Gwe),Kwe]}),ZT(xwe,function(Wwe){var qwe=WR(0,Wwe);UO(Wwe,28);var Jwe=QD(1,Wwe),zwe=_C(ewe[10],Jwe),Hwe=[18,[0,zwe[2],1]],Gwe=QR(0,Wwe),Zwe=Gwe?Gwe[1]:zwe[1];VO(Wwe);var Kwe=zwe[3];return Pw(function(Qwe){return WD(Wwe,Qwe)},Kwe),[0,Mj(qwe,Zwe),Hwe]}),ZT(Swe,function(Wwe){var qwe=WR(0,Wwe);UO(Wwe,25),UO(Wwe,5);var Jwe=_C(QCe[7],Wwe);UO(Wwe,6);var zwe=$D(1,Wwe),Hwe=_C(QCe[2],zwe);return[0,Mj(qwe,Hwe[1]),[12,[0,Jwe,Hwe]]]}),ZT(Ewe,function(Wwe){var qwe=WR(0,Wwe);UO(Wwe,26),UO(Wwe,5);var Jwe=_C(QCe[7],Wwe);UO(Wwe,6);var zwe=_C(QCe[2],Wwe),Hwe=Mj(qwe,zwe[1]);return RO(Wwe,[0,Hwe,26]),[0,Hwe,[6,[0,Jwe,zwe]]]}),ZT(Twe,function(Wwe){var qwe=_C(QCe[16],Wwe);return[0,qwe[1],[0,qwe[2]]]}),ZT(Awe,function(Wwe){var qwe=_C(QCe[7],Wwe),Jwe=UR(0,Wwe),zwe=qwe[2],Hwe=qwe[1];if("number"!=typeof zwe&&17===zwe[0]&&"number"==typeof Jwe&&80===Jwe){var Gwe=zwe[1],Zwe=Gwe[2];UO(Wwe,80),NC(pCe[3],Zwe,Wwe[3])&&WD(Wwe,[0,Hwe,[5,pke,Zwe]]);var Kwe=Wwe.slice();Kwe[3]=NC(iCe[4],Zwe,Wwe[3]);var Qwe=_C(QCe[2],Kwe);return[0,Mj(Hwe,Qwe[1]),[3,[0,Gwe,Qwe]]]}var $we=QR(0,Wwe),eve=$we?$we[1]:qwe[1];return VO(Wwe),[0,Mj(qwe[1],eve),[1,[0,qwe]]]}),ZT(Pwe,function(Wwe){var qwe=SY(QCe[7],Wwe),Jwe=qwe[1],zwe=QR(0,Wwe),Hwe=zwe?Mj(Jwe,zwe[1]):Jwe;return VO(Wwe),[0,Hwe,[1,[0,qwe[2]]]]}),ZT(_we,function(Wwe){var qwe=WR(0,Wwe);1-XD(Wwe)&&PO(Wwe,6),UO(Wwe,61),YO(Wwe,1);var Jwe=NC(QCe[13],0,Wwe),zwe=_C($Ce[3],Wwe);UO(Wwe,78);var Hwe=_C($Ce[1],Wwe),Gwe=QR(0,Wwe),Zwe=Gwe?Gwe[1]:Hwe[1];return VO(Wwe),MO(Wwe),[0,Mj(qwe,Zwe),[0,Jwe,zwe,Hwe]]}),ZT(Nwe,function(Wwe){if($R(lke,Wwe)){var qwe=_C(_we,Wwe);return[0,qwe[1],[7,qwe[2]]]}return _C(QCe[2],Wwe)}),ZT(kwe,function(Wwe){var qwe=WR(0,Wwe);1-XD(Wwe)&&PO(Wwe,11),UO(Wwe,53);var Jwe=NC(QCe[13],0,Wwe),zwe=_C($Ce[3],Wwe),Hwe=41===UR(0,Wwe)?1:0;if(Hwe){UO(Wwe,41);for(var Gwe=0;;){var Zwe=[0,_C($Ce[5],Wwe),Gwe],Kwe=UR(0,Wwe);if("number"==typeof Kwe&&10===Kwe){UO(Wwe,10);var Gwe=Zwe;continue}var Qwe=Sw(Zwe);break}}else var Qwe=Hwe;var $we=NC($Ce[6],1,Wwe);return[0,Mj(qwe,$we[1]),[0,Jwe,zwe,$we,Qwe,0]]}),ZT(Cwe,function(Wwe){if($R(oke,Wwe)){var qwe=_C(kwe,Wwe);return[0,qwe[1],[20,qwe[2]]]}return _C(Pwe,Wwe)}),ZT(wwe,function(Wwe,qwe){var Jwe=KD(1,Wwe);UO(Jwe,40);var zwe=NC(QCe[13],0,Jwe),Hwe=_C($Ce[3],Jwe),Gwe=41===UR(0,Jwe)?1:0,Zwe=Gwe?(UO(Jwe,41),rwe(Jwe,0)):Gwe,Kwe=Yk(XR(0,Jwe),ske),Qwe=Kwe?(WO(Jwe,ike),rwe(Jwe,0)):Kwe,$we=NC($Ce[6],1,Jwe);return[0,Mj(qwe,$we[1]),[0,zwe,Hwe,$we,Zwe,Qwe]]}),ZT(vwe,function(Wwe,qwe){var Jwe=NC(wwe,Wwe,qwe);return[0,Jwe[1],[23,Jwe[2]]]}),ZT(Iwe,function(Wwe,qwe){UO(Wwe,15);var Jwe=NC(QCe[13],0,Wwe),zwe=WR(0,Wwe),Hwe=_C($Ce[2],Wwe),Gwe=_C($Ce[7],Wwe);UO(Wwe,80);var Zwe=_C($Ce[1],Wwe),Kwe=Zwe[1],Qwe=_C($Ce[10],Wwe),$we=[0,Mj(zwe,Kwe),[1,[0,Gwe,Zwe,Hwe]]],eve=[0,$we[1],$we],tve=Jwe[2],ave=[0,Mj(Jwe[1],Kwe),tve],nve=QR(0,Wwe),rve=nve?nve[1]:Kwe;return VO(Wwe),[0,Mj(qwe,rve),[0,ave,eve,Qwe]]}),ZT(jwe,function(Wwe,qwe){var Jwe=NC(Iwe,Wwe,qwe);return[0,Jwe[1],[22,Jwe[2]]]}),ZT(Lwe,function(Wwe,qwe){UO(Wwe,24);var Jwe=IC(QCe[15],Wwe,rke,28),zwe=Jwe[2],Hwe=QR(0,Wwe),Gwe=Hwe?Hwe[1]:Jwe[1],Zwe=Mj(qwe,Gwe);return VO(Wwe),[0,Zwe,[0,zwe[1],zwe[2]]]}),ZT(Dwe,function(Wwe,qwe){var Jwe=NC(Lwe,Wwe,qwe);return[0,Jwe[1],[21,Jwe[2]]]}),ZT(Rwe,function(Wwe,qwe){var Jwe=UR(0,Wwe);if("number"==typeof Jwe)var zwe=0;else if(1===Jwe[0]){var Hwe=Jwe[1],Gwe=Hwe[4],Zwe=Hwe[3],Kwe=Hwe[2],Qwe=Hwe[1];Gwe&&LO(Wwe,32),UO(Wwe,[1,[0,Qwe,Kwe,Zwe,Gwe]]);var $we=[1,[0,Qwe,[0,[0,Kwe],Zwe]]],zwe=1}else var zwe=0;if(!zwe)var $we=[0,NC(QCe[13],0,Wwe)];var eve=WR(0,Wwe);UO(Wwe,1);for(var tve=0,ave=0;;){var nve=UR(0,Wwe);if("number"==typeof nve){var rve=2===nve?1:YY===nve?1:0;if(rve){var sve=Sw(ave);UO(Wwe,2);var ive=[0,Mj(eve,WR(0,Wwe)),[0,sve]],ove=Mj(qwe,ive[1]),lve=tve?tve[1]:[0,ove];return[0,ove,[24,[0,$we,ive,lve]]]}}var pve=NC(Ywe,nke,Wwe),dve=pve[2],cve=pve[1];if(tve){if(0===tve[1][0]){if("number"==typeof dve)var uve=0;else switch(dve[0]){case 25:PO(Wwe,60);var mve=tve,uve=1;break;case 26:var fve=dve[1][2],hve=fve?3>>0)var ave=0;else switch(cve){case 22:UO(Jwe,36),JD(Jwe,[0,Mj(zwe,WR(0,Jwe)),JNe]);var uve=UR(0,Jwe);if("number"!=typeof uve)var hve=0;else if(15===uve)var mve=_C(ewe[14],Jwe),fve=[0,mve[1],[0,mve]],hve=1;else var hve=0;if(!hve)if(TO(0,Jwe))var yve=NC(twe[3],Jwe,qwe),fve=[0,yve[1],[0,yve]];else{var bve=_C(QCe[9],Jwe),gve=QR(0,Jwe),xve=gve?gve[1]:bve[1];VO(Jwe);var fve=[0,xve,[1,bve]]}var Sve=[28,[0,fve[2],1]];return[0,Mj(zwe,fve[1]),Sve];case 0:case 1:case 10:case 13:case 14:case 26:var ave=1;break;default:var ave=0;}}if(ave){var Eve=NC(QCe[3],[0,qwe],Jwe),Tve=Eve[2],Ave=Eve[1];if("number"==typeof Tve)var Pve=0;else switch(Tve[0]){case 17:var _ve=Tve[1][1];if(_ve)var Nve=_ve[1],Pve=2;else{WD(Jwe,[0,Ave,56]);var kve=0,Pve=1}break;case 18:var Cve=Tve[1][1],kve=_w(function(Uve,Xve){return _w(awe,Uve,[0,Xve[2][1],0])},0,Cve),Pve=1;break;case 19:var wve=Tve[1][1];if(wve)var Nve=wve[1],Pve=2;else{WD(Jwe,[0,Ave,55]);var kve=0,Pve=1}break;default:var Pve=0;}switch(Pve){case 0:var kve=VC(HNe),vve=0;break;case 1:var vve=0;break;default:var Ive=[0,[0,Ave,_C(Mwe,Nve)],0],vve=1;}if(!vve)var Ive=kve;return Pw(function(Uve){return JD(Jwe,Uve)},Ive),[0,Mj(zwe,Eve[1]),[27,[0,[0,Eve],0,0,1]]]}}var jve=UR(0,Jwe);if("number"!=typeof jve)var Dve=0;else if(61===jve){OO(Jwe);var Lve=0,Dve=1}else var Dve=0;if(!Dve)var Lve=1;UO(Jwe,1);var Rve=IC(Vwe,Jwe,0,0),Ove=[0,[0,Rve[1]]],Yve=WR(0,Jwe);if(UO(Jwe,2),Yk(XR(0,Jwe),zNe))var Fve=[0,_C(Fwe,Jwe)];else{var Mve=Rve[2];Pw(function(Uve){return WD(Jwe,Uve)},Mve);var Fve=0}var Vve=QR(0,Jwe),Bve=Vve?Vve[1]:Fve?Fve[1][1]:Yve;return VO(Jwe),[0,Mj(zwe,Bve),[27,[0,0,Ove,Fve,Lve]]]}),ZT(Uwe,function(Wwe,qwe){var Jwe=Wwe?Wwe[1]:Wwe;1-XD(qwe)&&PO(qwe,8);var zwe=WR(0,qwe);UO(qwe,60);var Hwe=PR(1,KD(1,qwe));UO(Hwe,49);var Gwe=UR(0,Hwe);if("number"==typeof Gwe)if(54<=Gwe){if(61===Gwe){if(Jwe){var Zwe=_C(_we,Hwe),Kwe=Zwe[1],Qwe=Mj(zwe,Kwe);return[0,Qwe,[26,[0,0,[0,[4,[0,Kwe,Zwe[2]]]],0,0]]]}}else if(WW===Gwe){var $we=WR(0,Hwe);UO(Hwe,WW);var eve=Hwe[23][4],tve=Yk(XR(0,Hwe),RNe),ave=tve?(WO(Hwe,ONe),eve?[0,NC(QCe[13],0,Hwe)]:(PO(Hwe,8),0)):tve,nve=_C(Fwe,Hwe),rve=QR(0,Hwe),sve=rve?rve[1]:nve[1];return VO(Hwe),[0,Mj(zwe,sve),[26,[0,0,0,[0,[1,$we,ave]],[0,nve]]]]}}else if(41<=Gwe){if(53<=Gwe&&Jwe){var ive=_C(kwe,Hwe),ove=ive[1],lve=Mj(zwe,ove);return[0,lve,[26,[0,0,[0,[5,[0,ove,ive[2]]]],0,0]]]}}else if(15<=Gwe)switch(0|Gwe-15){case 21:UO(Hwe,36);var pve=UR(0,Hwe);if("number"!=typeof pve)var uve=0;else if(15===pve)var dve=NC(Iwe,Hwe,zwe),cve=[0,dve[1],[0,[1,dve]]],uve=1;else if(40===pve)var mve=NC(wwe,Hwe,zwe),cve=[0,mve[1],[0,[2,mve]]],uve=1;else var uve=0;if(!uve){var fve=_C($Ce[1],Hwe),hve=QR(0,Hwe),yve=hve?hve[1]:fve[1];VO(Hwe);var cve=[0,yve,[0,[3,fve]]]}var bve=[26,[0,1,cve[2],0,0]];return[0,Mj(zwe,cve[1]),bve];case 0:case 9:case 12:case 13:case 25:var gve=UR(0,Hwe);if("number"==typeof gve){if(25<=gve){if(!(29<=gve))var Eve=27<=gve?1:0;else if(40===gve)var xve=NC(wwe,Hwe,zwe),Sve=[0,xve[1],[0,[2,xve]]],Eve=2;else var Eve=0;}else if(15===gve)var Tve=NC(Iwe,Hwe,zwe),Sve=[0,Tve[1],[0,[1,Tve]]],Eve=2;else var Eve=24<=gve?1:0;switch(Eve){case 0:var Ave=0;break;case 1:var Pve="number"==typeof gve?27===gve?(PO(Hwe,51),1):28===gve?(PO(Hwe,50),1):0:0,_ve=NC(Lwe,Hwe,zwe),Sve=[0,_ve[1],[0,[0,_ve]]],Ave=1;break;default:var Ave=1;}if(Ave){var Nve=[26,[0,0,Sve[2],0,0]];return[0,Mj(zwe,Sve[1]),Nve]}}throw[0,YH,FNe];}var kve=UR(0,Hwe),Cve="number"==typeof kve?53===kve?(PO(Hwe,53),1):61===kve?(PO(Hwe,52),1):0:0;UO(Hwe,1);var wve=IC(Vwe,Hwe,0,0),vve=[0,[0,wve[1]]],Ive=WR(0,Hwe);if(UO(Hwe,2),Yk(XR(0,Hwe),YNe))var jve=[0,_C(Fwe,Hwe)];else{var Lve=wve[2];Pw(function(Ove){return WD(Hwe,Ove)},Lve);var jve=0}var Dve=QR(0,Hwe),Rve=Dve?Dve[1]:jve?jve[1][1]:Ive;return VO(Hwe),[0,Mj(zwe,Rve),[26,[0,0,0,vve,jve]]]}),ZT(Xwe,function(Wwe){var qwe=KD(1,Wwe),Jwe=WR(0,qwe);UO(qwe,50);var zwe=UR(0,qwe);if("number"!=typeof zwe)var Gwe=0;else if(46===zwe){1-XD(qwe)&&PO(qwe,9),UO(qwe,46);var Hwe=vNe,Gwe=1}else if(61===zwe){1-XD(qwe)&&PO(qwe,9);var Hwe=[0,0,[0,NC(QCe[13],0,qwe)]],Gwe=1}else var Gwe=0;if(!Gwe)var Hwe=INe;var Zwe=Hwe[2],Kwe=Hwe[1],Qwe=2===Kwe?0:1,$we=UR(0,qwe),eve=$R(0,qwe);if("number"==typeof $we)var tve=10===$we?1:0;else if(1===$we[0]){if(2===Kwe){var ave=$we[1],nve=ave[4],rve=ave[3],sve=ave[2],ive=ave[1];nve&&LO(qwe,32),UO(qwe,[1,[0,ive,sve,rve,nve]]);var ove=QR(0,qwe),lve=ove?ove[1]:ive;return VO(qwe),[0,Mj(Jwe,lve),[29,[0,Kwe,[0,ive,[0,[0,sve],rve]],0]]]}var tve=0}else var tve=0;if(!tve&&0===eve){var pve=iwe(qwe,Qwe),dve=swe(qwe),cve=QR(0,qwe),uve=cve?cve[1]:dve[1];return VO(qwe),[0,Mj(Jwe,uve),[29,[0,Kwe,dve,pve]]]}var mve=UR(0,qwe),fve=XR(0,qwe);if(!Zwe)var bve=0;else if("number"==typeof mve){var hve=Zwe[1];if(10===mve)var yve=1;else if(0!==mve)var bve=0,yve=0;else if(Uk(fve,jNe))var bve=0,yve=0;else var yve=1;if(yve)var gve=[0,2,[1,hve]],bve=1}else var bve=0;if(!bve)var gve=[0,Kwe,[1,NC(QCe[13],0,qwe)]];var xve=UR(0,qwe);if("number"!=typeof xve)var Eve=0;else if(10===xve){UO(qwe,10);var Sve=iwe(qwe,Qwe),Eve=1}else var Eve=0;if(!Eve)var Sve=0;var Tve=swe(qwe),Ave=QR(0,qwe),Pve=Ave?Ave[1]:Tve[1];VO(qwe);var _ve=[29,[0,gve[1],Tve,[0,gve[2],Sve]]];return[0,Mj(Jwe,Pve),_ve]}),[0,uwe,mwe,xwe,bwe,Swe,Ewe,Twe,lwe,pwe,dwe,Ywe,Uwe,cwe,owe,Bwe,Pwe,Xwe,Cwe,Awe,fwe,hwe,ywe,Nwe,gwe]}}}}(cCe),uCe),mCe),hCe),bCe=_C(function(QCe){return function($Ce){function ewe(swe,iwe){var owe=iwe[2][1],lwe=[0,[0,Tw(function(pwe){if(0===pwe[0]){var dwe=pwe[1],cwe=dwe[2],uwe=cwe[2],mwe=cwe[1];switch(mwe[0]){case 0:var fwe=[0,mwe[1]];break;case 1:var fwe=[1,mwe[1]];break;default:var fwe=[2,mwe[1]];}if(0===uwe[0])var hwe=NC(QCe[20],swe,uwe[1]);else{var ywe=uwe[1],bwe=ywe[1];WD(swe,[0,bwe,2]);var hwe=[0,bwe,[4,[0,bwe,[2,ywe[2]]]]]}return[0,[0,dwe[1],[0,fwe,hwe,cwe[4]]]]}var gwe=pwe[1],xwe=[0,NC(QCe[20],swe,gwe[2][1])];return[1,[0,gwe[1],xwe]]},owe),0]];return[0,iwe[1],lwe]}function twe(swe,iwe){var owe=iwe[2][1],lwe=[1,[0,Tw(function(pwe){if(pwe){var dwe=pwe[1];if(0===dwe[0]){var cwe=dwe[1];return[0,[0,NC(QCe[20],swe,[0,cwe[1],cwe[2]])]]}var uwe=dwe[1],mwe=[0,NC(QCe[20],swe,uwe[2][1])];return[0,[1,[0,uwe[1],mwe]]]}return pwe},owe),0]];return[0,iwe[1],lwe]}function awe(swe){return function(iwe){var owe=WR(0,iwe);UO(iwe,1);for(var lwe=0;;){var pwe=UR(0,iwe);if("number"==typeof pwe){var dwe=2===pwe?1:YY===pwe?1:0;if(dwe){var cwe=Sw(lwe),uwe=WR(0,iwe);if(UO(iwe,2),80===UR(0,iwe))var mwe=_C($Ce[8],iwe),fwe=[0,mwe[1],[0,mwe]];else var fwe=[0,uwe,0];var hwe=[0,[0,cwe,fwe[2]]];return[0,Mj(owe,fwe[1]),hwe]}}var ywe=WR(0,iwe);if(XO(iwe,13))var bwe=rwe(iwe,swe),gwe=[0,[1,[0,Mj(ywe,bwe[1]),[0,bwe]]]];else{var xwe=_C(QCe[21],iwe)[2];switch(xwe[0]){case 0:var Swe=[0,xwe[1]];break;case 1:var Swe=[1,xwe[1]];break;default:var Swe=[2,xwe[1]];}var Ewe=UR(0,iwe);if(!("number"==typeof Ewe))var Awe=0;else if(80===Ewe){UO(iwe,80);var Twe=[0,[0,rwe(iwe,swe),0]],Awe=1}else var Awe=0;if(!Awe)if(1===Swe[0])var Pwe=Swe[1],Twe=[0,[0,[0,Pwe[1],[3,[0,Pwe,0,0]]],1]];else{NO(iwe);var Twe=0}if(Twe){var _we=Twe[1],Nwe=_we[1],kwe=UR(0,iwe);if("number"!=typeof kwe)var vwe=0;else if(78===kwe){UO(iwe,78);var Cwe=_C(QCe[9],iwe),wwe=[0,Mj(Nwe[1],Cwe[1]),[2,[0,Nwe,Cwe]]],vwe=1}else var vwe=0;if(!vwe)var wwe=Nwe;var Iwe=Mj(ywe,wwe[1]),jwe=[0,[0,[0,Iwe,[0,Swe,wwe,_we[2]]]]]}else var jwe=Twe;var gwe=jwe}if(gwe){2!==UR(0,iwe)&&UO(iwe,10);var lwe=[0,gwe[1],lwe];continue}continue}}}function nwe(swe){return function(iwe){var owe=WR(0,iwe);UO(iwe,7);for(var lwe=0;;){var pwe=UR(0,iwe);if("number"==typeof pwe){if(14<=pwe)var dwe=YY===pwe?1:0;else if(8<=pwe)switch(0|pwe-8){case 2:UO(iwe,10);var lwe=[0,0,lwe];continue;case 5:var cwe=WR(0,iwe);UO(iwe,13);var uwe=rwe(iwe,swe),lwe=[0,[0,[1,[0,Mj(cwe,uwe[1]),[0,uwe]]]],lwe];continue;case 0:var dwe=1;break;default:var dwe=0;}else var dwe=0;if(dwe){var mwe=Sw(lwe),fwe=WR(0,iwe);if(UO(iwe,8),80===UR(0,iwe))var hwe=_C($Ce[8],iwe),ywe=[0,hwe[1],[0,hwe]];else var ywe=[0,fwe,0];var bwe=[1,[0,mwe,ywe[2]]];return[0,Mj(owe,ywe[1]),bwe]}}var gwe=rwe(iwe,swe),xwe=UR(0,iwe);if(!("number"==typeof xwe))var Twe=0;else if(78===xwe){UO(iwe,78);var Swe=_C(QCe[7],iwe),Ewe=[0,Mj(gwe[1],Swe[1]),[2,[0,gwe,Swe]]],Twe=1}else var Twe=0;if(!Twe)var Ewe=gwe;8!==UR(0,iwe)&&UO(iwe,10);var lwe=[0,[0,[0,Ewe]],lwe];continue}}}function rwe(swe,iwe){var owe=UR(0,swe);if("number"==typeof owe){if(1===owe)return _C(awe(iwe),swe);if(7===owe)return _C(nwe(iwe),swe)}var lwe=IC(QCe[15],swe,0,iwe);return[0,lwe[1],[3,lwe[2]]]}return[0,ewe,twe,function(swe,iwe){var owe=iwe[2],lwe=iwe[1];if("number"!=typeof owe)switch(owe[0]){case 0:return twe(swe,[0,lwe,owe[1]]);case 1:return ewe(swe,[0,lwe,owe[1]]);case 7:var pwe=owe[1];if(0===pwe[1])return[0,lwe,[2,[0,pwe[2],pwe[3]]]];break;case 17:return[0,lwe,[3,[0,owe[1],0,0]]];}return[0,lwe,[4,[0,lwe,owe]]]},awe,nwe,rwe]}}(cCe),uCe),gCe=[],xCe=[],SCe=[],ECe=[],TCe=[],ACe=[],PCe=[],_Ce=[],NCe=[],kCe=[],CCe=[],wCe=[],vCe=[],ICe=[],jCe=function(QCe){function $Ce(dwe){YO(dwe,0);var cwe=WR(0,dwe);UO(dwe,1),UO(dwe,13);var uwe=_C(QCe[9],dwe),mwe=WR(0,dwe);return UO(dwe,2),MO(dwe),[0,Mj(cwe,mwe),[0,uwe]]}function ewe(dwe){YO(dwe,0);var cwe=WR(0,dwe);if(UO(dwe,1),2===UR(0,dwe))var uwe=WR(0,dwe)[2],mwe=[1,[0,cwe[1],cwe[3],uwe]];else var mwe=[0,_C(QCe[7],dwe)];var fwe=WR(0,dwe);return UO(dwe,2),MO(dwe),[0,Mj(cwe,fwe),[0,mwe]]}function twe(dwe){var cwe=WR(0,dwe),uwe=XR(0,dwe);return UO(dwe,$B),[0,cwe,[0,uwe]]}function awe(dwe){var cwe=twe(dwe),uwe=UR(0,dwe);if("number"==typeof uwe){if(11===uwe){UO(dwe,11);for(var mwe=twe(dwe),fwe=[0,Mj(cwe[1],mwe[1]),[0,[0,cwe],mwe]];;){var hwe=UR(0,dwe);if("number"==typeof hwe&&11===hwe){UO(dwe,11);var ywe=twe(dwe),fwe=[0,Mj(fwe[1],ywe[1]),[0,[1,fwe],ywe]];continue}return[2,fwe]}}if(80===uwe){UO(dwe,80);var bwe=twe(dwe);return[1,[0,Mj(cwe[1],bwe[1]),[0,cwe,bwe]]]}}return[0,cwe]}function nwe(dwe){var cwe=WR(0,dwe),uwe=twe(dwe);if(80===UR(0,dwe)){UO(dwe,80);var mwe=twe(dwe),fwe=Mj(uwe[1],mwe[1]),hwe=[0,fwe,[1,[0,fwe,[0,uwe,mwe]]]]}else var hwe=[0,uwe[1],[0,uwe]];if(78===UR(0,dwe)){UO(dwe,78);var ywe=UR(0,dwe);if("number"==typeof ywe){if(1===ywe){var bwe=ewe(dwe),gwe=bwe[2],xwe=bwe[1];0!==gwe[1][0]&&WD(dwe,[0,xwe,41]);var Swe=[0,xwe,[0,[1,xwe,gwe]]],Ewe=1}else var Ewe=0;}else if(4===ywe[0]){var Twe=ywe[1],Awe=Twe[1];UO(dwe,ywe);var Swe=[0,Awe,[0,[0,Awe,[0,[0,Twe[2]],Twe[3]]]]],Ewe=1}else var Ewe=0;if(!Ewe){PO(dwe,42);var Pwe=WR(0,dwe),Swe=[0,Pwe,[0,[0,Pwe,[0,pNe,lNe]]]]}var _we=Swe}else var _we=[0,hwe[1],0];var Nwe=[0,hwe[2],_we[2]];return[0,Mj(cwe,_we[1]),Nwe]}function rwe(dwe,cwe){for(var uwe=0,mwe=awe(dwe);;){var fwe=UR(0,dwe);if("number"==typeof fwe){if(94<=fwe)var hwe=99===fwe?1:YY===fwe?1:0;else{if(1===fwe){var uwe=[0,[1,$Ce(dwe)],uwe];continue}var hwe=93<=fwe?1:0}if(hwe){var ywe=Sw(uwe),bwe=99===UR(0,dwe)?1:0;bwe&&UO(dwe,99);var gwe=WR(0,dwe);return UO(dwe,93),MO(dwe),[0,Mj(cwe,gwe),[0,mwe,bwe,ywe]]}}var uwe=[0,[0,nwe(dwe)],uwe];continue}}function swe(dwe,cwe){UO(dwe,99);var uwe=awe(dwe),mwe=WR(0,dwe);UO(dwe,93);var fwe=dwe[19][1];if(fwe){var hwe=fwe[2];if(hwe)var ywe=hwe[2],bwe=1;else var bwe=0}else var bwe=0;if(!bwe)var ywe=VC(sPe);dwe[19][1]=ywe;var gwe=UD(dwe),xwe=MD(dwe[20][1],gwe);return dwe[21][1]=xwe,[0,Mj(cwe,mwe),[0,uwe]]}function iwe(dwe){switch(dwe[0]){case 0:return dwe[1][2][1];case 1:var cwe=dwe[1][2],uwe=JC(sNe,cwe[2][2][1]);return JC(cwe[1][2][1],uwe);default:var mwe=dwe[1][2],fwe=mwe[1],hwe=0===fwe[0]?fwe[1][2][1]:iwe([2,fwe[1]]);return JC(hwe,JC(iNe,mwe[2][2][1]));}}var owe=[],lwe=[],pwe=[];return ZT(owe,function(dwe){var cwe=UR(0,dwe);if("number"==typeof cwe){if(1===cwe){var uwe=ewe(dwe);return[0,uwe[1],[1,uwe[2]]]}}else if(4===cwe[0]){var mwe=cwe[1];return UO(dwe,cwe),[0,mwe[1],[2,[0,mwe[2],mwe[3]]]]}var fwe=_C(pwe,dwe);return[0,fwe[1],[0,fwe[2]]]}),ZT(lwe,function(dwe,cwe){var uwe=rwe(dwe,cwe);if(uwe[2][2])var mwe=oNe;else{YO(dwe,3);for(var fwe=0;;){var hwe=UR(0,dwe);if("number"==typeof hwe){if(92===hwe){YO(dwe,2);var ywe=WR(0,dwe);UO(dwe,92);var bwe=UR(0,dwe);if("number"==typeof bwe){if(99===bwe)var gwe=1;else if(YY===bwe)var gwe=1;else var xwe=0,gwe=0;if(gwe)var Swe=[0,swe(dwe,ywe)],xwe=1}else var xwe=0;if(!xwe)var Swe=[1,NC(lwe,dwe,ywe)];if(0!==Swe[0]){var Ewe=Swe[1],fwe=[0,[0,Ewe[1],[0,Ewe[2]]],fwe];continue}var Twe=[0,Swe[1]],Awe=[0,Sw(fwe),Twe],Pwe=1}else if(YY===hwe){NO(dwe);var Awe=[0,Sw(fwe),0],Pwe=1}else var _we=0,Pwe=0;if(Pwe)var mwe=Awe,_we=1}else var _we=0;if(!_we){var fwe=[0,_C(owe,dwe),fwe];continue}break}}var Nwe=mwe[2];if(Nwe){var kwe=Nwe[1],Cwe=iwe(uwe[2][1]);Uk(iwe(kwe[2][1]),Cwe)&&PO(dwe,[6,Cwe]);var wwe=kwe[1]}else var wwe=uwe[1];var vwe=[0,uwe,Nwe,mwe[1]];return[0,Mj(uwe[1],wwe),vwe]}),ZT(pwe,function(dwe){var cwe=WR(0,dwe);return YO(dwe,2),UO(dwe,92),NC(lwe,dwe,cwe)}),[0,$Ce,ewe,twe,awe,nwe,rwe,swe,owe,lwe,pwe]}(cCe),LCe=hCe[3],DCe=fCe[3],RCe=fCe[2],OCe=fCe[6],YCe=hCe[2],FCe=hCe[1],MCe=hCe[4],VCe=fCe[1],BCe=fCe[5],UCe=fCe[4],XCe=jCe[10],WCe=bCe[6],qCe=bCe[3];ZT(gCe,function(KCe){var QCe=NC(ECe,KCe,function(){return 0}),$Ce=WR(0,KCe);if(UO(KCe,YY),QCe)var ewe=$C(Sw(QCe))[1],twe=Mj($C(QCe)[1],ewe);else var twe=$Ce;return[0,twe,QCe,Sw(KCe[2][1])]}),ZT(xCe,function(KCe,QCe,$Ce){for(var ewe=KCe,twe=gke;;){var awe=twe[2],nwe=twe[1],rwe=UR(0,ewe);if("number"!=typeof rwe)var iwe=0;else if(YY===rwe)var swe=[0,ewe,nwe,awe],iwe=1;else var iwe=0;if(!iwe)if(_C(QCe,rwe))var swe=[0,ewe,nwe,awe];else{var owe=UR(0,ewe),lwe=[0,WR(0,ewe),owe],pwe=_C($Ce,ewe),dwe=[0,pwe,awe],cwe=pwe[2];if("number"!=typeof cwe&&1===cwe[0]){var uwe=cwe[1][1],mwe=uwe[2];if("number"==typeof mwe)var fwe=0;else if(18===mwe[0]){var hwe=mwe[1][1];if("number"!=typeof hwe&&0===hwe[0]){var ywe=uwe[1],bwe=ewe[6],gwe=0|ywe[3][2]-ywe[2][2];if(bwe)var xwe=bwe;else var Swe=Yk(hwe[1],bke),xwe=Swe?12==gwe?1:0:Swe;var ewe=KD(xwe,ewe),twe=[0,[0,lwe,nwe],dwe];continue}var fwe=1}else var fwe=0}var swe=[0,ewe,nwe,dwe]}var Ewe=Sw(nwe);return Pw(function(Twe){var Awe=Twe[2];if("number"!=typeof Awe&&1===Awe[0]){var Pwe=Awe[1][4];return Pwe?RO(ewe,[0,Twe[1],32]):Pwe}if("number"==typeof Awe){var _we=Awe;if(59<=_we)switch(_we){case 59:var Nwe=JTe;break;case 60:var Nwe=zTe;break;case 61:var Nwe=HTe;break;case 62:var Nwe=GTe;break;case 63:var Nwe=ZTe;break;case 64:var Nwe=KTe;break;case 65:var Nwe=QTe;break;case 66:var Nwe=$Te;break;case 67:var Nwe=eAe;break;case 68:var Nwe=tAe;break;case 69:var Nwe=aAe;break;case 70:var Nwe=nAe;break;case 71:var Nwe=rAe;break;case 72:var Nwe=sAe;break;case 73:var Nwe=iAe;break;case 74:var Nwe=oAe;break;case 75:var Nwe=lAe;break;case 76:var Nwe=pAe;break;case 77:var Nwe=dAe;break;case 78:var Nwe=cAe;break;case 79:var Nwe=uAe;break;case 80:var Nwe=mAe;break;case 81:var Nwe=fAe;break;case 82:var Nwe=hAe;break;case 83:var Nwe=yAe;break;case 84:var Nwe=bAe;break;case 85:var Nwe=gAe;break;case 86:var Nwe=xAe;break;case 87:var Nwe=SAe;break;case 88:var Nwe=EAe;break;case 89:var Nwe=TAe;break;case 90:var Nwe=AAe;break;case 91:var Nwe=PAe;break;case 92:var Nwe=_Ae;break;case 93:var Nwe=NAe;break;case 94:var Nwe=kAe;break;case 95:var Nwe=CAe;break;case 96:var Nwe=wAe;break;case 97:var Nwe=vAe;break;case 98:var Nwe=IAe;break;case 99:var Nwe=jAe;break;case 100:var Nwe=LAe;break;case 101:var Nwe=DAe;break;case 102:var Nwe=RAe;break;case 103:var Nwe=OAe;break;case 104:var Nwe=YAe;break;case 105:var Nwe=FAe;break;case 106:var Nwe=MAe;break;case 107:var Nwe=VAe;break;case 108:var Nwe=BAe;break;case 109:var Nwe=UAe;break;case 110:var Nwe=XAe;break;case 111:var Nwe=WAe;break;case 112:var Nwe=qAe;break;case 113:var Nwe=JAe;break;case 114:var Nwe=zAe;break;case 115:var Nwe=HAe;break;default:var Nwe=GAe;}else switch(_we){case 0:var Nwe=BEe;break;case 1:var Nwe=UEe;break;case 2:var Nwe=XEe;break;case 3:var Nwe=WEe;break;case 4:var Nwe=qEe;break;case 5:var Nwe=JEe;break;case 6:var Nwe=zEe;break;case 7:var Nwe=HEe;break;case 8:var Nwe=GEe;break;case 9:var Nwe=ZEe;break;case 10:var Nwe=KEe;break;case 11:var Nwe=QEe;break;case 12:var Nwe=$Ee;break;case 13:var Nwe=eTe;break;case 14:var Nwe=tTe;break;case 15:var Nwe=aTe;break;case 16:var Nwe=nTe;break;case 17:var Nwe=rTe;break;case 18:var Nwe=sTe;break;case 19:var Nwe=iTe;break;case 20:var Nwe=oTe;break;case 21:var Nwe=lTe;break;case 22:var Nwe=pTe;break;case 23:var Nwe=dTe;break;case 24:var Nwe=cTe;break;case 25:var Nwe=uTe;break;case 26:var Nwe=mTe;break;case 27:var Nwe=fTe;break;case 28:var Nwe=hTe;break;case 29:var Nwe=yTe;break;case 30:var Nwe=bTe;break;case 31:var Nwe=gTe;break;case 32:var Nwe=xTe;break;case 33:var Nwe=STe;break;case 34:var Nwe=ETe;break;case 35:var Nwe=TTe;break;case 36:var Nwe=ATe;break;case 37:var Nwe=PTe;break;case 38:var Nwe=_Te;break;case 39:var Nwe=NTe;break;case 40:var Nwe=kTe;break;case 41:var Nwe=CTe;break;case 42:var Nwe=wTe;break;case 43:var Nwe=vTe;break;case 44:var Nwe=ITe;break;case 45:var Nwe=jTe;break;case 46:var Nwe=LTe;break;case 47:var Nwe=DTe;break;case 48:var Nwe=RTe;break;case 49:var Nwe=OTe;break;case 50:var Nwe=YTe;break;case 51:var Nwe=FTe;break;case 52:var Nwe=MTe;break;case 53:var Nwe=VTe;break;case 54:var Nwe=BTe;break;case 55:var Nwe=UTe;break;case 56:var Nwe=XTe;break;case 57:var Nwe=WTe;break;default:var Nwe=qTe;}}else switch(Awe[0]){case 0:var Nwe=ZAe;break;case 1:var Nwe=KAe;break;case 2:var Nwe=QAe;break;case 3:var Nwe=$Ae;break;case 4:var Nwe=ePe;break;default:var Nwe=tPe;}return VC(JC(Ske,JC(Nwe,xke)))},Ewe),[0,ewe,swe[3]]}}),ZT(SCe,function(KCe){var QCe=_C(hCe[5],KCe),$Ce=UR(0,KCe);if("number"==typeof $Ce){var ewe=0|$Ce-49;if(!(11>>0))switch(ewe){case 0:return NC(yCe[15],KCe,QCe);case 1:return _C(IO(KCe),QCe),_C(yCe[17],KCe);case 11:if(49===UR(yke,KCe))return _C(IO(KCe),QCe),NC(yCe[12],0,KCe);}}return NC(_Ce,[0,QCe],KCe)}),ZT(ECe,function(KCe,QCe){var $Ce=IC(xCe,KCe,QCe,SCe),ewe=NC(TCe,QCe,$Ce[1]),twe=$Ce[2];return _w(function(awe,nwe){return[0,nwe,awe]},ewe,twe)}),ZT(TCe,function(KCe,QCe){for(var $Ce=0;;){var ewe=UR(0,QCe);if("number"==typeof ewe&&YY===ewe)return Sw($Ce);if(_C(KCe,ewe))return Sw($Ce);var $Ce=[0,_C(SCe,QCe),$Ce];continue}}),ZT(ACe,function(KCe,QCe){var $Ce=IC(xCe,QCe,KCe,function(rwe){return NC(_Ce,0,rwe)}),ewe=$Ce[1],twe=NC(PCe,KCe,ewe),awe=$Ce[2],nwe=_w(function(rwe,swe){return[0,swe,rwe]},twe,awe);return[0,nwe,ewe[6]]}),ZT(PCe,function(KCe,QCe){for(var $Ce=0;;){var ewe=UR(0,QCe);if("number"==typeof ewe&&YY===ewe)return Sw($Ce);if(_C(KCe,ewe))return Sw($Ce);var $Ce=[0,NC(_Ce,0,QCe),$Ce];continue}}),ZT(_Ce,function(KCe,QCe){var $Ce=KCe?KCe[1]:KCe;1-TO(0,QCe)&&_C(IO(QCe),$Ce);var ewe=UR(0,QCe);if("number"==typeof ewe){if(27===ewe)return _C(yCe[24],QCe);if(28===ewe)return _C(yCe[3],QCe)}if(SO(0,QCe))return _C(mCe[14],QCe);if(TO(0,QCe))return NC(LCe,QCe,$Ce);if("number"==typeof ewe){var twe=0|ewe+RM;if(!(8>>0))switch(twe){case 0:return _C(yCe[18],QCe);case 7:return NC(yCe[11],0,QCe);case 8:return _C(yCe[23],QCe);}}return _C(NCe,QCe)}),ZT(NCe,function(KCe){var QCe=UR(0,KCe);if("number"==typeof QCe){if(YY===QCe)return NO(KCe),[0,WR(0,KCe),0];if(!(60<=QCe))switch(QCe){case 1:return _C(yCe[7],KCe);case 9:return _C(yCe[14],KCe);case 16:return _C(yCe[2],KCe);case 19:return _C(yCe[20],KCe);case 20:return _C(yCe[21],KCe);case 22:return _C(yCe[22],KCe);case 23:return _C(yCe[4],KCe);case 24:return _C(yCe[24],KCe);case 25:return _C(yCe[5],KCe);case 26:return _C(yCe[6],KCe);case 32:return _C(yCe[8],KCe);case 35:return _C(yCe[9],KCe);case 37:return _C(yCe[13],KCe);case 39:return _C(yCe[1],KCe);case 59:return _C(yCe[10],KCe);}}if($R(0,KCe))return _C(yCe[19],KCe);if("number"==typeof QCe){if(33<=QCe){if(51<=QCe)var $Ce=80===QCe?1:0;else if(40<=QCe)switch(0|QCe+Sq){case 3:return _C(yCe[2],KCe);case 1:case 2:case 9:case 10:var $Ce=1;break;default:var $Ce=0;}else var $Ce=1;}else if(21<=QCe)var $Ce=0;else switch(QCe){case 0:case 1:case 3:case 4:case 5:case 7:case 14:case 15:case 16:var $Ce=0;break;default:var $Ce=1;}if($Ce)return NO(KCe),OO(KCe),_C(NCe,KCe)}return _C(yCe[16],KCe)}),ZT(kCe,function(KCe){var QCe=_C(fCe[2],KCe),$Ce=UR(0,KCe);return"number"==typeof $Ce&&10===$Ce?NC(fCe[8],KCe,[0,QCe,0]):QCe}),ZT(CCe,function(KCe,QCe){var $Ce=WR(0,QCe),ewe=XR(0,QCe),twe=UR(0,QCe);if("number"!=typeof twe)var awe=0;else if(28===twe){QCe[6]?LO(QCe,40):QCe[13]&&PO(QCe,[1,ewe]),OO(QCe);var awe=1}else var awe=0;if(!awe)if(MR(ewe))LO(QCe,40),OO(QCe);else{var nwe="number"==typeof twe?4<(0|twe-60)>>>0?0:(UO(QCe,twe),1):0;nwe||UO(QCe,0)}return KCe?VR(ewe)?(RO(QCe,[0,$Ce,KCe[1]]),1):0:0,[0,$Ce,ewe]}),ZT(wCe,function(KCe,QCe,$Ce){var ewe=QCe?QCe[1]:QCe;return SY(function(twe){var awe=1-ewe,nwe=NC(CCe,[0,$Ce],twe),rwe=awe?79===UR(0,twe)?1:0:awe;rwe&&(1-XD(twe)&&PO(twe,7),UO(twe,79));var swe=80===UR(0,twe)?1:0,iwe=swe?[0,_C(uCe[8],twe)]:swe;return[0,nwe,iwe,rwe]},KCe)}),ZT(vCe,function(KCe){var QCe=WR(0,KCe);UO(KCe,1);var $Ce=NC(PCe,function(twe){return 2===twe?1:0},KCe),ewe=WR(0,KCe);return UO(KCe,2),[0,Mj(QCe,ewe),[0,$Ce]]}),ZT(ICe,function(KCe){var QCe=WR(0,KCe);UO(KCe,1);var $Ce=NC(ACe,function(nwe){return 2===nwe?1:0},KCe),ewe=WR(0,KCe);UO(KCe,2);var twe=$Ce[2],awe=[0,$Ce[1]];return[0,Mj(QCe,ewe),awe,twe]}),IC(Vke,[0,[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]],cCe,[0,gCe,NCe,_Ce,PCe,ACe,TCe,kCe,DCe,RCe,OCe,YCe,VCe,CCe,UCe,wCe,vCe,ICe,XCe,WCe,qCe,FCe,LCe,MCe,BCe]);var JCe=[0,0],zCe=function(QCe){return QCe.toString()},HCe=function(QCe){var $Ce={};for(var ewe=1;eweSN)return!1;if(PN+=TN[_N+1],PN>=SN)return!0}}function ZT(SN){return 65>SN?36==SN:!!(91>SN)||(97>SN?95==SN:!!(123>SN)||(65535>=SN?170<=SN&&YA.test(String.fromCharCode(SN)):JT(SN,VA)))}function KT(SN){return 48>SN?36==SN:!!(58>SN)||!(65>SN)&&(!!(91>SN)||(97>SN?95==SN:!!(123>SN)||(65535>=SN?170<=SN&&MA.test(String.fromCharCode(SN)):JT(SN,VA)||JT(SN,UA))))}function QT(SN){var TN={};for(var PN in XA)TN[PN]=SN&&PN in SN?SN[PN]:XA[PN];return TN}function $T(SN){return 10===SN||13===SN||8232===SN||8233===SN}function SA(SN,TN){for(var PN=1,_N=0;;){YP.lastIndex=_N;var NN=YP.exec(SN);if(NN&&NN.index=SN?String.fromCharCode(SN):String.fromCharCode((SN-65536>>10)+55296,(1023&SN-65536)+56320)}function PA(SN,TN,PN,_N){return SN.type=TN,SN.end=PN,SN.loc.end=_N,this.processComment(SN),SN}function _A(SN){return SN[SN.length-1]}function NA(SN){return"JSXIdentifier"===SN.type?SN.name:"JSXNamespacedName"===SN.type?SN.namespace.name+":"+SN.name.name:"JSXMemberExpression"===SN.type?NA(SN.object)+"."+NA(SN.property):void 0}Object.defineProperty(XT,"__esModule",{value:!0});var IA={6:WT("enum await"),strict:WT("implements interface let package private protected public static yield"),strictBind:WT("eval arguments")},LA=WT("break case catch continue debugger default do else finally for function if return switch throw try var while with null true false instanceof typeof void delete new in this let const class extends export import yield super"),RA="\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC",OA="\u200C\u200D\xB7\u0300-\u036F\u0387\u0483-\u0487\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u0669\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u06F0-\u06F9\u0711\u0730-\u074A\u07A6-\u07B0\u07C0-\u07C9\u07EB-\u07F3\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u08D4-\u08E1\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0966-\u096F\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u09E6-\u09EF\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A66-\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0AE6-\u0AEF\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B62\u0B63\u0B66-\u0B6F\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C66-\u0C6F\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0CE6-\u0CEF\u0D01-\u0D03\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D66-\u0D6F\u0D82\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0E50-\u0E59\u0EB1\u0EB4-\u0EB9\u0EBB\u0EBC\u0EC8-\u0ECD\u0ED0-\u0ED9\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1040-\u1049\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F-\u109D\u135D-\u135F\u1369-\u1371\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u18A9\u1920-\u192B\u1930-\u193B\u1946-\u194F\u19D0-\u19DA\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AB0-\u1ABD\u1B00-\u1B04\u1B34-\u1B44\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BB0-\u1BB9\u1BE6-\u1BF3\u1C24-\u1C37\u1C40-\u1C49\u1C50-\u1C59\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF2-\u1CF4\u1CF8\u1CF9\u1DC0-\u1DF5\u1DFB-\u1DFF\u203F\u2040\u2054\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\uA620-\uA629\uA66F\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA880\uA881\uA8B4-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F1\uA900-\uA909\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9D0-\uA9D9\uA9E5\uA9F0-\uA9F9\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA50-\uAA59\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uABF0-\uABF9\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFF10-\uFF19\uFF3F",YA=new RegExp("["+RA+"]"),MA=new RegExp("["+RA+OA+"]");RA=OA=null;var VA=[0,11,2,25,2,18,2,1,2,14,3,13,35,122,70,52,268,28,4,48,48,31,17,26,6,37,11,29,3,35,5,7,2,4,43,157,19,35,5,35,5,39,9,51,157,310,10,21,11,7,153,5,3,0,2,43,2,1,4,0,3,22,11,22,10,30,66,18,2,1,11,21,11,25,71,55,7,1,65,0,16,3,2,2,2,26,45,28,4,28,36,7,2,27,28,53,11,21,11,18,14,17,111,72,56,50,14,50,785,52,76,44,33,24,27,35,42,34,4,0,13,47,15,3,22,0,2,0,36,17,2,24,85,6,2,0,2,3,2,14,2,9,8,46,39,7,3,1,3,21,2,6,2,1,2,4,4,0,19,0,13,4,159,52,19,3,54,47,21,1,2,0,185,46,42,3,37,47,21,0,60,42,86,25,391,63,32,0,449,56,264,8,2,36,18,0,50,29,881,921,103,110,18,195,2749,1070,4050,582,8634,568,8,30,114,29,19,47,17,3,32,20,6,18,881,68,12,0,67,12,65,0,32,6124,20,754,9486,1,3071,106,6,12,4,8,8,9,5991,84,2,70,2,1,3,0,3,1,3,3,2,11,2,0,2,6,2,64,2,3,3,7,2,6,2,27,2,3,2,4,2,0,4,6,2,339,3,24,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,7,4149,196,60,67,1213,3,2,26,2,1,2,0,3,0,2,9,2,3,2,0,2,0,7,0,5,0,2,0,2,0,2,2,2,1,2,0,3,0,2,0,2,0,2,0,2,0,2,1,2,0,3,3,2,6,2,3,2,3,2,0,2,9,2,16,6,2,2,4,2,16,4421,42710,42,4148,12,221,3,5761,10591,541],UA=[509,0,227,0,150,4,294,9,1368,2,2,1,6,3,41,2,5,0,166,1,1306,2,54,14,32,9,16,3,46,10,54,9,7,2,37,13,2,9,52,0,13,2,49,13,10,2,4,9,83,11,7,0,161,11,6,9,7,3,57,0,2,6,3,1,3,2,10,0,11,1,3,6,4,4,193,17,10,9,87,19,13,9,214,6,3,8,28,1,83,16,16,9,82,12,9,9,84,14,5,9,423,9,838,7,2,7,17,9,57,21,2,13,19882,9,135,4,60,6,26,9,1016,45,17,3,19723,1,5319,4,4,5,9,7,3,6,31,3,149,2,1418,49,513,54,5,49,9,0,15,0,23,4,2,14,1361,6,2,16,3,6,2,1,2,4,2214,6,110,6,6,9,792487,239],XA={sourceType:"script",sourceFilename:void 0,allowReturnOutsideFunction:!1,allowImportExportEverywhere:!1,allowSuperOutsideMethod:!1,plugins:[],strictMode:null},WA="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(SN){return typeof SN}:function(SN){return SN&&"function"==typeof Symbol&&SN.constructor===Symbol&&SN!==Symbol.prototype?"symbol":typeof SN},JA=function(SN,TN){if(!(SN instanceof TN))throw new TypeError("Cannot call a class as a function")},ZA=function(SN,TN){if("function"!=typeof TN&&null!==TN)throw new TypeError("Super expression must either be null or a function, not "+typeof TN);SN.prototype=Object.create(TN&&TN.prototype,{constructor:{value:SN,enumerable:!1,writable:!0,configurable:!0}}),TN&&(Object.setPrototypeOf?Object.setPrototypeOf(SN,TN):SN.__proto__=TN)},KA=function(SN,TN){if(!SN)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return TN&&("object"==typeof TN||"function"==typeof TN)?TN:SN},QA=!0,$A=!0,SP=!0,TP=!0,PP=!0,_P=function SN(TN){var PN=1",{beforeExpr:QA}),template:new _P("template"),ellipsis:new _P("...",{beforeExpr:QA}),backQuote:new _P("`",{startsExpr:$A}),dollarBraceL:new _P("${",{beforeExpr:QA,startsExpr:$A}),at:new _P("@"),eq:new _P("=",{beforeExpr:QA,isAssign:TP}),assign:new _P("_=",{beforeExpr:QA,isAssign:TP}),incDec:new _P("++/--",{prefix:PP,postfix:!0,startsExpr:$A}),prefix:new _P("prefix",{beforeExpr:QA,prefix:PP,startsExpr:$A}),logicalOR:new IP("||",1),logicalAND:new IP("&&",2),bitwiseOR:new IP("|",3),bitwiseXOR:new IP("^",4),bitwiseAND:new IP("&",5),equality:new IP("==/!=",6),relational:new IP("",7),bitShift:new IP("<>",8),plusMin:new _P("+/-",{beforeExpr:QA,binop:9,prefix:PP,startsExpr:$A}),modulo:new IP("%",10),star:new IP("*",10),slash:new IP("/",10),exponent:new _P("**",{beforeExpr:QA,binop:11,rightAssociative:!0})},RP={"break":new NP("break"),"case":new NP("case",{beforeExpr:QA}),"catch":new NP("catch"),"continue":new NP("continue"),"debugger":new NP("debugger"),"default":new NP("default",{beforeExpr:QA}),"do":new NP("do",{isLoop:SP,beforeExpr:QA}),"else":new NP("else",{beforeExpr:QA}),"finally":new NP("finally"),"for":new NP("for",{isLoop:SP}),"function":new NP("function",{startsExpr:$A}),"if":new NP("if"),"return":new NP("return",{beforeExpr:QA}),"switch":new NP("switch"),"throw":new NP("throw",{beforeExpr:QA}),"try":new NP("try"),"var":new NP("var"),"let":new NP("let"),"const":new NP("const"),"while":new NP("while",{isLoop:SP}),"with":new NP("with"),"new":new NP("new",{beforeExpr:QA,startsExpr:$A}),"this":new NP("this",{startsExpr:$A}),"super":new NP("super",{startsExpr:$A}),"class":new NP("class"),"extends":new NP("extends",{beforeExpr:QA}),"export":new NP("export"),"import":new NP("import"),"yield":new NP("yield",{beforeExpr:QA,startsExpr:$A}),"null":new NP("null",{startsExpr:$A}),"true":new NP("true",{startsExpr:$A}),"false":new NP("false",{startsExpr:$A}),"in":new NP("in",{beforeExpr:QA,binop:7}),"instanceof":new NP("instanceof",{beforeExpr:QA,binop:7}),"typeof":new NP("typeof",{beforeExpr:QA,prefix:PP,startsExpr:$A}),"void":new NP("void",{beforeExpr:QA,prefix:PP,startsExpr:$A}),"delete":new NP("delete",{beforeExpr:QA,prefix:PP,startsExpr:$A})};Object.keys(RP).forEach(function(SN){LP["_"+SN]=RP[SN]});var OP=/\r\n?|\n|\u2028|\u2029/,YP=new RegExp(OP.source,"g"),MP=/[\u1680\u180e\u2000-\u200a\u202f\u205f\u3000\ufeff]/,VP=function SN(TN,PN,_N,NN){JA(this,SN),this.token=TN,this.isExpr=!!PN,this.preserveSpace=!!_N,this.override=NN},UP={braceStatement:new VP("{",!1),braceExpression:new VP("{",!0),templateQuasi:new VP("${",!0),parenStatement:new VP("(",!1),parenExpression:new VP("(",!0),template:new VP("`",!0,!0,function(SN){return SN.readTmplToken()}),functionExpression:new VP("function",!0)};LP.parenR.updateContext=LP.braceR.updateContext=function(){if(1===this.state.context.length)return void(this.state.exprAllowed=!0);var SN=this.state.context.pop();SN===UP.braceStatement&&this.curContext()===UP.functionExpression?(this.state.context.pop(),this.state.exprAllowed=!1):SN===UP.templateQuasi?this.state.exprAllowed=!0:this.state.exprAllowed=!SN.isExpr},LP.name.updateContext=function(SN){this.state.exprAllowed=!1,(SN===LP._let||SN===LP._const||SN===LP._var)&&OP.test(this.input.slice(this.state.end))&&(this.state.exprAllowed=!0)},LP.braceL.updateContext=function(SN){this.state.context.push(this.braceIsBlock(SN)?UP.braceStatement:UP.braceExpression),this.state.exprAllowed=!0},LP.dollarBraceL.updateContext=function(){this.state.context.push(UP.templateQuasi),this.state.exprAllowed=!0},LP.parenL.updateContext=function(SN){var TN=SN===LP._if||SN===LP._for||SN===LP._with||SN===LP._while;this.state.context.push(TN?UP.parenStatement:UP.parenExpression),this.state.exprAllowed=!0},LP.incDec.updateContext=function(){},LP._function.updateContext=function(){this.curContext()!==UP.braceStatement&&this.state.context.push(UP.functionExpression),this.state.exprAllowed=!1},LP.backQuote.updateContext=function(){this.curContext()===UP.template?this.state.context.pop():this.state.context.push(UP.template),this.state.exprAllowed=!1};var XP=function SN(TN,PN){JA(this,SN),this.line=TN,this.column=PN},WP=function SN(TN,PN){JA(this,SN),this.start=TN,this.end=PN},JP=function(){function SN(){JA(this,SN)}return SN.prototype.init=function(PN,_N){return this.strict=!1!==PN.strictMode&&"module"===PN.sourceType,this.input=_N,this.potentialArrowAt=-1,this.inMethod=this.inFunction=this.inGenerator=this.inAsync=this.inPropertyName=this.inType=this.noAnonFunctionType=!1,this.labels=[],this.decorators=[],this.tokens=[],this.comments=[],this.trailingComments=[],this.leadingComments=[],this.commentStack=[],this.pos=this.lineStart=0,this.curLine=1,this.type=LP.eof,this.value=null,this.start=this.end=this.pos,this.startLoc=this.endLoc=this.curPosition(),this.lastTokEndLoc=this.lastTokStartLoc=null,this.lastTokStart=this.lastTokEnd=this.pos,this.context=[UP.braceStatement],this.exprAllowed=!0,this.containsEsc=this.containsOctal=!1,this.octalPosition=null,this.exportedIdentifiers=[],this},SN.prototype.curPosition=function(){return new XP(this.curLine,this.pos-this.lineStart)},SN.prototype.clone=function(PN){var _N=new SN;for(var NN in this){var IN=this[NN];(!PN||"context"==NN)&&Array.isArray(IN)&&(IN=IN.slice()),_N[NN]=IN}return _N},SN}(),ZP=function SN(TN){JA(this,SN),this.type=TN.type,this.value=TN.value,this.start=TN.start,this.end=TN.end,this.loc=new WP(TN.startLoc,TN.endLoc)},KP=function(){function SN(TN,PN){JA(this,SN),this.state=new JP,this.state.init(TN,PN)}return SN.prototype.next=function(){this.isLookahead||this.state.tokens.push(new ZP(this.state)),this.state.lastTokEnd=this.state.end,this.state.lastTokStart=this.state.start,this.state.lastTokEndLoc=this.state.endLoc,this.state.lastTokStartLoc=this.state.startLoc,this.nextToken()},SN.prototype.eat=function(PN){return!!this.match(PN)&&(this.next(),!0)},SN.prototype.match=function(PN){return this.state.type===PN},SN.prototype.isKeyword=function(PN){return LA(PN)},SN.prototype.lookahead=function(){var PN=this.state;this.state=PN.clone(!0),this.isLookahead=!0,this.next(),this.isLookahead=!1;var _N=this.state.clone(!0);return this.state=PN,_N},SN.prototype.setStrict=function(PN){if(this.state.strict=PN,this.match(LP.num)||this.match(LP.string)){for(this.state.pos=this.state.start;this.state.pos=this.input.length?this.finishToken(LP.eof):PN.override?PN.override(this):this.readToken(this.fullCharCodeAtPos())},SN.prototype.readToken=function(PN){return ZT(PN)||92===PN?this.readWord():this.getTokenFromCode(PN)},SN.prototype.fullCharCodeAtPos=function(){var PN=this.input.charCodeAt(this.state.pos);if(55295>=PN||57344<=PN)return PN;var _N=this.input.charCodeAt(this.state.pos+1);return(PN<<10)+_N-56613888},SN.prototype.pushComment=function(PN,_N,NN,IN,LN,RN){var ON={type:PN?"CommentBlock":"CommentLine",value:_N,start:NN,end:IN,loc:new WP(LN,RN)};this.isLookahead||(this.state.tokens.push(ON),this.state.comments.push(ON),this.addComment(ON))},SN.prototype.skipBlockComment=function(){var PN=this.state.curPosition(),_N=this.state.pos,NN=this.input.indexOf("*/",this.state.pos+=2);-1===NN&&this.raise(this.state.pos-2,"Unterminated comment"),this.state.pos=NN+2,YP.lastIndex=_N;for(var IN;(IN=YP.exec(this.input))&&IN.indexPN||5760<=PN&&MP.test(String.fromCharCode(PN)))++this.state.pos;else break loop;}}},SN.prototype.finishToken=function(PN,_N){this.state.end=this.state.pos,this.state.endLoc=this.state.curPosition();var NN=this.state.type;this.state.type=PN,this.state.value=_N,this.updateContext(NN)},SN.prototype.readToken_dot=function(){var PN=this.input.charCodeAt(this.state.pos+1);if(48<=PN&&57>=PN)return this.readNumber(!0);var _N=this.input.charCodeAt(this.state.pos+2);return 46===PN&&46===_N?(this.state.pos+=3,this.finishToken(LP.ellipsis)):(++this.state.pos,this.finishToken(LP.dot))},SN.prototype.readToken_slash=function(){if(this.state.exprAllowed)return++this.state.pos,this.readRegexp();var PN=this.input.charCodeAt(this.state.pos+1);return 61===PN?this.finishOp(LP.assign,2):this.finishOp(LP.slash,1)},SN.prototype.readToken_mult_modulo=function(PN){var _N=42===PN?LP.star:LP.modulo,NN=1,IN=this.input.charCodeAt(this.state.pos+1);return 42===IN&&(NN++,IN=this.input.charCodeAt(this.state.pos+2),_N=LP.exponent),61===IN&&(NN++,_N=LP.assign),this.finishOp(_N,NN)},SN.prototype.readToken_pipe_amp=function(PN){var _N=this.input.charCodeAt(this.state.pos+1);return _N===PN?this.finishOp(124===PN?LP.logicalOR:LP.logicalAND,2):61===_N?this.finishOp(LP.assign,2):124===PN&&125===_N&&this.hasPlugin("flow")?this.finishOp(LP.braceBarR,2):this.finishOp(124===PN?LP.bitwiseOR:LP.bitwiseAND,1)},SN.prototype.readToken_caret=function(){var PN=this.input.charCodeAt(this.state.pos+1);return 61===PN?this.finishOp(LP.assign,2):this.finishOp(LP.bitwiseXOR,1)},SN.prototype.readToken_plus_min=function(PN){var _N=this.input.charCodeAt(this.state.pos+1);return _N===PN?45===_N&&62===this.input.charCodeAt(this.state.pos+2)&&OP.test(this.input.slice(this.state.lastTokEnd,this.state.pos))?(this.skipLineComment(3),this.skipSpace(),this.nextToken()):this.finishOp(LP.incDec,2):61===_N?this.finishOp(LP.assign,2):this.finishOp(LP.plusMin,1)},SN.prototype.readToken_lt_gt=function(PN){var _N=this.input.charCodeAt(this.state.pos+1),NN=1;return _N===PN?(NN=62===PN&&62===this.input.charCodeAt(this.state.pos+2)?3:2,61===this.input.charCodeAt(this.state.pos+NN)?this.finishOp(LP.assign,NN+1):this.finishOp(LP.bitShift,NN)):33===_N&&60===PN&&45===this.input.charCodeAt(this.state.pos+2)&&45===this.input.charCodeAt(this.state.pos+3)?(this.inModule&&this.unexpected(),this.skipLineComment(4),this.skipSpace(),this.nextToken()):(61===_N&&(NN=2),this.finishOp(LP.relational,NN))},SN.prototype.readToken_eq_excl=function(PN){var _N=this.input.charCodeAt(this.state.pos+1);return 61===_N?this.finishOp(LP.equality,61===this.input.charCodeAt(this.state.pos+2)?3:2):61===PN&&62===_N?(this.state.pos+=2,this.finishToken(LP.arrow)):this.finishOp(61===PN?LP.eq:LP.prefix,1)},SN.prototype.getTokenFromCode=function(PN){switch(PN){case 46:return this.readToken_dot();case 40:return++this.state.pos,this.finishToken(LP.parenL);case 41:return++this.state.pos,this.finishToken(LP.parenR);case 59:return++this.state.pos,this.finishToken(LP.semi);case 44:return++this.state.pos,this.finishToken(LP.comma);case 91:return++this.state.pos,this.finishToken(LP.bracketL);case 93:return++this.state.pos,this.finishToken(LP.bracketR);case 123:return this.hasPlugin("flow")&&124===this.input.charCodeAt(this.state.pos+1)?this.finishOp(LP.braceBarL,2):(++this.state.pos,this.finishToken(LP.braceL));case 125:return++this.state.pos,this.finishToken(LP.braceR);case 58:return this.hasPlugin("functionBind")&&58===this.input.charCodeAt(this.state.pos+1)?this.finishOp(LP.doubleColon,2):(++this.state.pos,this.finishToken(LP.colon));case 63:return++this.state.pos,this.finishToken(LP.question);case 64:return++this.state.pos,this.finishToken(LP.at);case 96:return++this.state.pos,this.finishToken(LP.backQuote);case 48:var _N=this.input.charCodeAt(this.state.pos+1);if(120===_N||88===_N)return this.readRadixNumber(16);if(111===_N||79===_N)return this.readRadixNumber(8);if(98===_N||66===_N)return this.readRadixNumber(2);case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return this.readNumber(!1);case 34:case 39:return this.readString(PN);case 47:return this.readToken_slash();case 37:case 42:return this.readToken_mult_modulo(PN);case 124:case 38:return this.readToken_pipe_amp(PN);case 94:return this.readToken_caret();case 43:case 45:return this.readToken_plus_min(PN);case 60:case 62:return this.readToken_lt_gt(PN);case 61:case 33:return this.readToken_eq_excl(PN);case 126:return this.finishOp(LP.prefix,1);}this.raise(this.state.pos,"Unexpected character '"+TA(PN)+"'")},SN.prototype.finishOp=function(PN,_N){var NN=this.input.slice(this.state.pos,this.state.pos+_N);return this.state.pos+=_N,this.finishToken(PN,NN)},SN.prototype.readRegexp=function(){for(var PN=this.state.pos,_N,NN;;){this.state.pos>=this.input.length&&this.raise(PN,"Unterminated regular expression");var IN=this.input.charAt(this.state.pos);if(OP.test(IN)&&this.raise(PN,"Unterminated regular expression"),_N)_N=!1;else{if("["===IN)NN=!0;else if("]"===IN&&NN)NN=!1;else if("/"===IN&&!NN)break;_N="\\"===IN}++this.state.pos}var LN=this.input.slice(PN,this.state.pos);++this.state.pos;var RN=this.readWord1();if(RN){var ON=/^[gmsiyu]*$/;ON.test(RN)||this.raise(PN,"Invalid regular expression flag")}return this.finishToken(LP.regexp,{pattern:LN,flags:RN})},SN.prototype.readInt=function(PN,_N){var NN=this.state.pos,IN=0;for(var LN=0,RN=null==_N?Infinity:_N;LN=ON?ON-48:Infinity,YN>=PN)break;++this.state.pos,IN=IN*PN+YN}return this.state.pos===NN||null!=_N&&this.state.pos-NN!==_N?null:IN},SN.prototype.readRadixNumber=function(PN){this.state.pos+=2;var _N=this.readInt(PN);return null==_N&&this.raise(this.state.start+2,"Expected number in radix "+PN),ZT(this.fullCharCodeAtPos())&&this.raise(this.state.pos,"Identifier directly after number"),this.finishToken(LP.num,_N)},SN.prototype.readNumber=function(PN){var _N=this.state.pos,NN=48===this.input.charCodeAt(this.state.pos),IN=!1;PN||null!==this.readInt(10)||this.raise(_N,"Invalid number");var LN=this.input.charCodeAt(this.state.pos);46===LN&&(++this.state.pos,this.readInt(10),IN=!0,LN=this.input.charCodeAt(this.state.pos)),(69===LN||101===LN)&&(LN=this.input.charCodeAt(++this.state.pos),(43===LN||45===LN)&&++this.state.pos,null===this.readInt(10)&&this.raise(_N,"Invalid number"),IN=!0),ZT(this.fullCharCodeAtPos())&&this.raise(this.state.pos,"Identifier directly after number");var RN=this.input.slice(_N,this.state.pos),ON;return IN?ON=parseFloat(RN):NN&&1!==RN.length?/[89]/.test(RN)||this.state.strict?this.raise(_N,"Invalid number"):ON=parseInt(RN,8):ON=parseInt(RN,10),this.finishToken(LP.num,ON)},SN.prototype.readCodePoint=function(){var PN=this.input.charCodeAt(this.state.pos),_N;if(123===PN){var NN=++this.state.pos;_N=this.readHexChar(this.input.indexOf("}",this.state.pos)-this.state.pos),++this.state.pos,1114111<_N&&this.raise(NN,"Code point out of bounds")}else _N=this.readHexChar(4);return _N},SN.prototype.readString=function(PN){for(var _N="",NN=++this.state.pos;;){this.state.pos>=this.input.length&&this.raise(this.state.start,"Unterminated string constant");var IN=this.input.charCodeAt(this.state.pos);if(IN===PN)break;92===IN?(_N+=this.input.slice(NN,this.state.pos),_N+=this.readEscapedChar(!1),NN=this.state.pos):($T(IN)&&this.raise(this.state.start,"Unterminated string constant"),++this.state.pos)}return _N+=this.input.slice(NN,this.state.pos++),this.finishToken(LP.string,_N)},SN.prototype.readTmplToken=function(){for(var PN="",_N=this.state.pos;;){this.state.pos>=this.input.length&&this.raise(this.state.start,"Unterminated template");var NN=this.input.charCodeAt(this.state.pos);if(96===NN||36===NN&&123===this.input.charCodeAt(this.state.pos+1))return this.state.pos===this.state.start&&this.match(LP.template)?36===NN?(this.state.pos+=2,this.finishToken(LP.dollarBraceL)):(++this.state.pos,this.finishToken(LP.backQuote)):(PN+=this.input.slice(_N,this.state.pos),this.finishToken(LP.template,PN));if(92===NN)PN+=this.input.slice(_N,this.state.pos),PN+=this.readEscapedChar(!0),_N=this.state.pos;else if($T(NN)){switch(PN+=this.input.slice(_N,this.state.pos),++this.state.pos,NN){case 13:10===this.input.charCodeAt(this.state.pos)&&++this.state.pos;case 10:PN+="\n";break;default:PN+=String.fromCharCode(NN);}++this.state.curLine,this.state.lineStart=this.state.pos,_N=this.state.pos}else++this.state.pos}},SN.prototype.readEscapedChar=function(PN){var _N=this.input.charCodeAt(++this.state.pos);switch(++this.state.pos,_N){case 110:return"\n";case 114:return"\r";case 120:return String.fromCharCode(this.readHexChar(2));case 117:return TA(this.readCodePoint());case 116:return"\t";case 98:return"\b";case 118:return"\x0B";case 102:return"\f";case 13:10===this.input.charCodeAt(this.state.pos)&&++this.state.pos;case 10:return this.state.lineStart=this.state.pos,++this.state.curLine,"";default:if(48<=_N&&55>=_N){var NN=this.input.substr(this.state.pos-1,3).match(/^[0-7]+/)[0],IN=parseInt(NN,8);return 255=IN?1:2;else if(92===IN){this.state.containsEsc=!0,PN+=this.input.slice(NN,this.state.pos);var LN=this.state.pos;117!==this.input.charCodeAt(++this.state.pos)&&this.raise(this.state.pos,"Expecting Unicode escape sequence \\uXXXX"),++this.state.pos;var RN=this.readCodePoint();(_N?ZT:KT)(RN,!0)||this.raise(LN,"Invalid Unicode escape"),PN+=TA(RN),NN=this.state.pos}else break;_N=!1}return PN+this.input.slice(NN,this.state.pos)},SN.prototype.readWord=function(){var PN=this.readWord1(),_N=LP.name;return!this.state.containsEsc&&this.isKeyword(PN)&&(_N=RP[PN]),this.finishToken(_N,PN)},SN.prototype.braceIsBlock=function(PN){if(PN===LP.colon){var _N=this.curContext();if(_N===UP.braceStatement||_N===UP.braceExpression)return!_N.isExpr}return PN===LP._return?OP.test(this.input.slice(this.state.lastTokEnd,this.state.start)):PN===LP._else||PN===LP.semi||PN===LP.eof||PN===LP.parenR||(PN===LP.braceL?this.curContext()===UP.braceStatement:!this.state.exprAllowed)},SN.prototype.updateContext=function(PN){var _N=this.state.type,NN;_N.keyword&&PN===LP.dot?this.state.exprAllowed=!1:(NN=_N.updateContext)?NN.call(this,PN):this.state.exprAllowed=_N.beforeExpr},SN}(),QP={},$P=["jsx","doExpressions","objectRestSpread","decorators","classProperties","exportExtensions","asyncGenerators","functionBind","functionSent","dynamicImport","flow"],S_=function(SN){function TN(PN,_N){JA(this,TN),PN=QT(PN);var NN=KA(this,SN.call(this,PN,_N));return NN.options=PN,NN.inModule="module"===NN.options.sourceType,NN.input=_N,NN.plugins=NN.loadPlugins(NN.options.plugins),NN.filename=PN.sourceFilename,0===NN.state.pos&&"#"===NN.input[0]&&"!"===NN.input[1]&&NN.skipLineComment(2),NN}return ZA(TN,SN),TN.prototype.isReservedWord=function(_N){return"await"===_N?this.inModule:IA[6](_N)},TN.prototype.hasPlugin=function(_N){return this.plugins["*"]&&-1<$P.indexOf(_N)||!!this.plugins[_N]},TN.prototype.extend=function(_N,NN){this[_N]=NN(this[_N])},TN.prototype.loadAllPlugins=function(){var _N=this,NN=Object.keys(QP).filter(function(IN){return"flow"!==IN});NN.push("flow"),NN.forEach(function(IN){var LN=QP[IN];LN&&LN(_N)})},TN.prototype.loadPlugins=function(_N){if(0<=_N.indexOf("*"))return this.loadAllPlugins(),{"*":!0};var NN={};0<=_N.indexOf("flow")&&(_N=_N.filter(function(VN){return"flow"!==VN}),_N.push("flow"));for(var IN=_N,LN=Array.isArray(IN),RN=0,IN=LN?IN:IN[Symbol.iterator]();;){var ON;if(LN){if(RN>=IN.length)break;ON=IN[RN++]}else{if(RN=IN.next(),RN.done)break;ON=RN.value}var YN=ON;if(!NN[YN]){NN[YN]=!0;var MN=QP[YN];MN&&MN(this)}}return NN},TN.prototype.parse=function(){var _N=this.startNode(),NN=this.startNode();return this.nextToken(),this.parseTopLevel(_N,NN)},TN}(KP),T_=S_.prototype;T_.addExtra=function(SN,TN,PN){if(SN){var _N=SN.extra=SN.extra||{};_N[TN]=PN}},T_.isRelational=function(SN){return this.match(LP.relational)&&this.state.value===SN},T_.expectRelational=function(SN){this.isRelational(SN)?this.next():this.unexpected(null,LP.relational)},T_.isContextual=function(SN){return this.match(LP.name)&&this.state.value===SN},T_.eatContextual=function(SN){return this.state.value===SN&&this.eat(LP.name)},T_.expectContextual=function(SN,TN){this.eatContextual(SN)||this.unexpected(null,TN)},T_.canInsertSemicolon=function(){return this.match(LP.eof)||this.match(LP.braceR)||OP.test(this.input.slice(this.state.lastTokEnd,this.state.start))},T_.isLineTerminator=function(){return this.eat(LP.semi)||this.canInsertSemicolon()},T_.semicolon=function(){this.isLineTerminator()||this.unexpected(null,LP.semi)},T_.expect=function(SN,TN){return this.eat(SN)||this.unexpected(TN,SN)},T_.unexpected=function(SN){var TN=1=_N.length)break;LN=_N[IN++]}else{if(IN=_N.next(),IN.done)break;LN=IN.value}var RN=LN;RN.name===TN&&this.raise(PN.start,"Label '"+TN+"' is already declared")}var ON=this.state.type.isLoop?"loop":this.match(LP._switch)?"switch":null;for(var YN=this.state.labels.length-1;0<=YN;YN--){var MN=this.state.labels[YN];if(MN.statementStart===SN.start)MN.statementStart=this.state.start,MN.kind=ON;else break}return this.state.labels.push({name:TN,kind:ON,statementStart:this.state.start}),SN.body=this.parseStatement(!0),this.state.labels.pop(),SN.label=PN,this.finishNode(SN,"LabeledStatement")},P_.parseExpressionStatement=function(SN,TN){return SN.expression=TN,this.semicolon(),this.finishNode(SN,"ExpressionStatement")},P_.parseBlock=function(SN){var TN=this.startNode();return this.expect(LP.braceL),this.parseBlockBody(TN,SN,!1,LP.braceR),this.finishNode(TN,"BlockStatement")},P_.parseBlockBody=function(SN,TN,PN,_N){SN.body=[],SN.directives=[];for(var NN=!1,IN,LN;!this.eat(_N);){NN||!this.state.containsOctal||LN||(LN=this.state.octalPosition);var RN=this.parseStatement(!0,PN);if(TN&&!NN&&"ExpressionStatement"===RN.type&&"StringLiteral"===RN.expression.type&&!RN.expression.extra.parenthesized){var ON=this.stmtToDirective(RN);SN.directives.push(ON),IN==void 0&&"use strict"===ON.value.value&&(IN=this.state.strict,this.setStrict(!0),LN&&this.raise(LN,"Octal literal in strict mode"));continue}NN=!0,SN.body.push(RN)}!1===IN&&this.setStrict(!1)},P_.parseFor=function(SN,TN){return SN.init=TN,this.expect(LP.semi),SN.test=this.match(LP.semi)?null:this.parseExpression(),this.expect(LP.semi),SN.update=this.match(LP.parenR)?null:this.parseExpression(),this.expect(LP.parenR),SN.body=this.parseStatement(!1),this.state.labels.pop(),this.finishNode(SN,"ForStatement")},P_.parseForIn=function(SN,TN,PN){var _N;return PN?(this.eatContextual("of"),_N="ForAwaitStatement"):(_N=this.match(LP._in)?"ForInStatement":"ForOfStatement",this.next()),SN.left=TN,SN.right=this.parseExpression(),this.expect(LP.parenR),SN.body=this.parseStatement(!1),this.state.labels.pop(),this.finishNode(SN,_N)},P_.parseVar=function(SN,TN,PN){for(SN.declarations=[],SN.kind=PN.keyword;;){var _N=this.startNode();if(this.parseVarHead(_N),this.eat(LP.eq)?_N.init=this.parseMaybeAssign(TN):PN!==LP._const||this.match(LP._in)||this.isContextual("of")?"Identifier"===_N.id.type||TN&&(this.match(LP._in)||this.isContextual("of"))?_N.init=null:this.raise(this.state.lastTokEnd,"Complex binding patterns require an initialization value"):this.unexpected(),SN.declarations.push(this.finishNode(_N,"VariableDeclarator")),!this.eat(LP.comma))break}return SN},P_.parseVarHead=function(SN){SN.id=this.parseBindingAtom(),this.checkLVal(SN.id,!0,void 0,"variable declaration")},P_.parseFunction=function(SN,TN,PN,_N,NN){var IN=this.state.inMethod;return this.state.inMethod=!1,this.initFunction(SN,_N),this.match(LP.star)&&(SN.async&&!this.hasPlugin("asyncGenerators")?this.unexpected():(SN.generator=!0,this.next())),!TN||NN||this.match(LP.name)||this.match(LP._yield)||this.unexpected(),(this.match(LP.name)||this.match(LP._yield))&&(SN.id=this.parseBindingIdentifier()),this.parseFunctionParams(SN),this.parseFunctionBody(SN,PN),this.state.inMethod=IN,this.finishNode(SN,TN?"FunctionDeclaration":"FunctionExpression")},P_.parseFunctionParams=function(SN){this.expect(LP.parenL),SN.params=this.parseBindingList(LP.parenR)},P_.parseClass=function(SN,TN,PN){return this.next(),this.parseClassId(SN,TN,PN),this.parseClassSuper(SN),this.parseClassBody(SN),this.finishNode(SN,TN?"ClassDeclaration":"ClassExpression")},P_.isClassProperty=function(){return this.match(LP.eq)||this.isLineTerminator()},P_.isClassMutatorStarter=function(){return!1},P_.parseClassBody=function(SN){var TN=this.state.strict;this.state.strict=!0;var PN=!1,_N=!1,NN=[],IN=this.startNode();for(IN.body=[],this.expect(LP.braceL);!this.eat(LP.braceR);)if(!this.eat(LP.semi)){if(this.match(LP.at)){NN.push(this.parseDecorator());continue}var LN=this.startNode();NN.length&&(LN.decorators=NN,NN=[]);var RN=!1,ON=this.match(LP.name)&&"static"===this.state.value,YN=this.eat(LP.star),MN=!1,VN=!1;if(this.parsePropertyName(LN),LN.static=ON&&!this.match(LP.parenL),LN.static&&(YN=this.eat(LP.star),this.parsePropertyName(LN)),!YN){if(this.isClassProperty()){IN.body.push(this.parseClassProperty(LN));continue}"Identifier"===LN.key.type&&!LN.computed&&this.hasPlugin("classConstructorCall")&&"call"===LN.key.name&&this.match(LP.name)&&"constructor"===this.state.value&&(RN=!0,this.parsePropertyName(LN))}var UN=!this.match(LP.parenL)&&!LN.computed&&"Identifier"===LN.key.type&&"async"===LN.key.name;if(UN&&(this.hasPlugin("asyncGenerators")&&this.eat(LP.star)&&(YN=!0),VN=!0,this.parsePropertyName(LN)),LN.kind="method",!LN.computed){var XN=LN.key;VN||YN||this.isClassMutatorStarter()||"Identifier"!==XN.type||this.match(LP.parenL)||"get"!==XN.name&&"set"!==XN.name||(MN=!0,LN.kind=XN.name,XN=this.parsePropertyName(LN));var WN=!RN&&!LN.static&&("Identifier"===XN.type&&"constructor"===XN.name||"StringLiteral"===XN.type&&"constructor"===XN.value);WN&&(_N&&this.raise(XN.start,"Duplicate constructor in the same class"),MN&&this.raise(XN.start,"Constructor can't have get/set modifier"),YN&&this.raise(XN.start,"Constructor can't be a generator"),VN&&this.raise(XN.start,"Constructor can't be an async function"),LN.kind="constructor",_N=!0);var JN=LN.static&&("Identifier"===XN.type&&"prototype"===XN.name||"StringLiteral"===XN.type&&"prototype"===XN.value);JN&&this.raise(XN.start,"Classes may not have static property named prototype")}if(RN&&(PN&&this.raise(LN.start,"Duplicate constructor call in the same class"),LN.kind="constructorCall",PN=!0),("constructor"===LN.kind||"constructorCall"===LN.kind)&&LN.decorators&&this.raise(LN.start,"You can't attach decorators to a class constructor"),this.parseClassMethod(IN,LN,YN,VN),MN){var ZN="get"===LN.kind?0:1;if(LN.params.length!==ZN){var KN=LN.start;"get"===LN.kind?this.raise(KN,"getter should have no params"):this.raise(KN,"setter should have exactly one param")}}}NN.length&&this.raise(this.state.start,"You have trailing decorators with no method"),SN.body=this.finishNode(IN,"ClassBody"),this.state.strict=TN},P_.parseClassProperty=function(SN){return this.match(LP.eq)?(!this.hasPlugin("classProperties")&&this.unexpected(),this.next(),SN.value=this.parseMaybeAssign()):SN.value=null,this.semicolon(),this.finishNode(SN,"ClassProperty")},P_.parseClassMethod=function(SN,TN,PN,_N){this.parseMethod(TN,PN,_N),SN.body.push(this.finishNode(TN,"ClassMethod"))},P_.parseClassId=function(SN,TN,PN){this.match(LP.name)?SN.id=this.parseIdentifier():PN||!TN?SN.id=null:this.unexpected()},P_.parseClassSuper=function(SN){SN.superClass=this.eat(LP._extends)?this.parseExprSubscripts():null},P_.parseExport=function(SN){if(this.next(),this.match(LP.star)){var TN=this.startNode();if(this.next(),this.hasPlugin("exportExtensions")&&this.eatContextual("as"))TN.exported=this.parseIdentifier(),SN.specifiers=[this.finishNode(TN,"ExportNamespaceSpecifier")],this.parseExportSpecifiersMaybe(SN),this.parseExportFrom(SN,!0);else return this.parseExportFrom(SN,!0),this.finishNode(SN,"ExportAllDeclaration")}else if(this.hasPlugin("exportExtensions")&&this.isExportDefaultSpecifier()){var PN=this.startNode();if(PN.exported=this.parseIdentifier(!0),SN.specifiers=[this.finishNode(PN,"ExportDefaultSpecifier")],this.match(LP.comma)&&this.lookahead().type===LP.star){this.expect(LP.comma);var _N=this.startNode();this.expect(LP.star),this.expectContextual("as"),_N.exported=this.parseIdentifier(),SN.specifiers.push(this.finishNode(_N,"ExportNamespaceSpecifier"))}else this.parseExportSpecifiersMaybe(SN);this.parseExportFrom(SN,!0)}else{if(this.eat(LP._default)){var NN=this.startNode(),IN=!1;return this.eat(LP._function)?NN=this.parseFunction(NN,!0,!1,!1,!0):this.match(LP._class)?NN=this.parseClass(NN,!0,!0):(IN=!0,NN=this.parseMaybeAssign()),SN.declaration=NN,IN&&this.semicolon(),this.checkExport(SN,!0,!0),this.finishNode(SN,"ExportDefaultDeclaration")}this.shouldParseExportDeclaration()?(SN.specifiers=[],SN.source=null,SN.declaration=this.parseExportDeclaration(SN)):(SN.declaration=null,SN.specifiers=this.parseExportSpecifiers(),this.parseExportFrom(SN))}return this.checkExport(SN,!0),this.finishNode(SN,"ExportNamedDeclaration")},P_.parseExportDeclaration=function(){return this.parseStatement(!0)},P_.isExportDefaultSpecifier=function(){if(this.match(LP.name))return"type"!==this.state.value&&"async"!==this.state.value&&"interface"!==this.state.value;if(!this.match(LP._default))return!1;var SN=this.lookahead();return SN.type===LP.comma||SN.type===LP.name&&"from"===SN.value},P_.parseExportSpecifiersMaybe=function(SN){this.eat(LP.comma)&&(SN.specifiers=SN.specifiers.concat(this.parseExportSpecifiers()))},P_.parseExportFrom=function(SN,TN){this.eatContextual("from")?(SN.source=this.match(LP.string)?this.parseExprAtom():this.unexpected(),this.checkExport(SN)):TN?this.unexpected():SN.source=null,this.semicolon()},P_.shouldParseExportDeclaration=function(){return"var"===this.state.type.keyword||"const"===this.state.type.keyword||"let"===this.state.type.keyword||"function"===this.state.type.keyword||"class"===this.state.type.keyword||this.isContextual("async")},P_.checkExport=function(SN,TN,PN){if(TN)if(PN)this.checkDuplicateExports(SN,"default");else if(SN.specifiers&&SN.specifiers.length)for(var _N=SN.specifiers,NN=Array.isArray(_N),IN=0,_N=NN?_N:_N[Symbol.iterator]();;){var LN;if(NN){if(IN>=_N.length)break;LN=_N[IN++]}else{if(IN=_N.next(),IN.done)break;LN=IN.value}var RN=LN;this.checkDuplicateExports(RN,RN.exported.name)}else if(SN.declaration)if("FunctionDeclaration"===SN.declaration.type||"ClassDeclaration"===SN.declaration.type)this.checkDuplicateExports(SN,SN.declaration.id.name);else if("VariableDeclaration"===SN.declaration.type)for(var ON=SN.declaration.declarations,YN=Array.isArray(ON),MN=0,ON=YN?ON:ON[Symbol.iterator]();;){var VN;if(YN){if(MN>=ON.length)break;VN=ON[MN++]}else{if(MN=ON.next(),MN.done)break;VN=MN.value}var UN=VN;this.checkDeclaration(UN.id)}if(this.state.decorators.length){var XN=SN.declaration&&("ClassDeclaration"===SN.declaration.type||"ClassExpression"===SN.declaration.type);SN.declaration&&XN||this.raise(SN.start,"You can only use decorators on an export when exporting a class"),this.takeDecorators(SN.declaration)}},P_.checkDeclaration=function(SN){if("ObjectPattern"===SN.type)for(var TN=SN.properties,PN=Array.isArray(TN),_N=0,TN=PN?TN:TN[Symbol.iterator]();;){var NN;if(PN){if(_N>=TN.length)break;NN=TN[_N++]}else{if(_N=TN.next(),_N.done)break;NN=_N.value}var IN=NN;this.checkDeclaration(IN)}else if("ArrayPattern"===SN.type)for(var LN=SN.elements,RN=Array.isArray(LN),ON=0,LN=RN?LN:LN[Symbol.iterator]();;){var YN;if(RN){if(ON>=LN.length)break;YN=LN[ON++]}else{if(ON=LN.next(),ON.done)break;YN=ON.value}var MN=YN;MN&&this.checkDeclaration(MN)}else"ObjectProperty"===SN.type?this.checkDeclaration(SN.value):"RestElement"===SN.type||"RestProperty"===SN.type?this.checkDeclaration(SN.argument):"Identifier"===SN.type&&this.checkDuplicateExports(SN,SN.name)},P_.checkDuplicateExports=function(SN,TN){-1=_N.length)break;LN=_N[IN++]}else{if(IN=_N.next(),IN.done)break;LN=IN.value}var RN=LN;"ObjectMethod"===RN.type?"get"===RN.kind||"set"===RN.kind?this.raise(RN.key.start,"Object pattern can't contain getter or setter"):this.raise(RN.key.start,"Object pattern can't contain methods"):this.toAssignable(RN,TN,"object destructuring pattern")}break;case"ObjectProperty":this.toAssignable(SN.value,TN,PN);break;case"SpreadProperty":SN.type="RestProperty";break;case"ArrayExpression":SN.type="ArrayPattern",this.toAssignableList(SN.elements,TN,PN);break;case"AssignmentExpression":"="===SN.operator?(SN.type="AssignmentPattern",delete SN.operator):this.raise(SN.left.end,"Only '=' operator can be used for specifying default value.");break;case"MemberExpression":if(!TN)break;default:{var ON="Invalid left-hand side"+(PN?" in "+PN:"expression");this.raise(SN.start,ON)}}return SN},L_.toAssignableList=function(SN,TN,PN){var _N=SN.length;if(_N){var NN=SN[_N-1];if(NN&&"RestElement"===NN.type)--_N;else if(NN&&"SpreadElement"===NN.type){NN.type="RestElement";var IN=NN.argument;this.toAssignable(IN,TN,PN),"Identifier"!==IN.type&&"MemberExpression"!==IN.type&&"ArrayPattern"!==IN.type&&this.unexpected(IN.start),--_N}}for(var LN=0;LN<_N;LN++){var RN=SN[LN];RN&&this.toAssignable(RN,TN,PN)}return SN},L_.toReferencedList=function(SN){return SN},L_.parseSpread=function(SN){var TN=this.startNode();return this.next(),TN.argument=this.parseMaybeAssign(!1,SN),this.finishNode(TN,"SpreadElement")},L_.parseRest=function(){var SN=this.startNode();return this.next(),SN.argument=this.parseBindingIdentifier(),this.finishNode(SN,"RestElement")},L_.shouldAllowYieldIdentifier=function(){return this.match(LP._yield)&&!this.state.strict&&!this.state.inGenerator},L_.parseBindingIdentifier=function(){return this.parseIdentifier(this.shouldAllowYieldIdentifier())},L_.parseBindingAtom=function(){switch(this.state.type){case LP._yield:(this.state.strict||this.state.inGenerator)&&this.unexpected();case LP.name:return this.parseIdentifier(!0);case LP.bracketL:var SN=this.startNode();return this.next(),SN.elements=this.parseBindingList(LP.bracketR,!0),this.finishNode(SN,"ArrayPattern");case LP.braceL:return this.parseObj(!0);default:this.unexpected();}},L_.parseBindingList=function(SN,TN){for(var PN=[],_N=!0;!this.eat(SN);)if(_N?_N=!1:this.expect(LP.comma),TN&&this.match(LP.comma))PN.push(null);else if(this.eat(SN))break;else if(this.match(LP.ellipsis)){PN.push(this.parseAssignableListItemTypes(this.parseRest())),this.expect(SN);break}else{for(var NN=[];this.match(LP.at);)NN.push(this.parseDecorator());var IN=this.parseMaybeDefault();NN.length&&(IN.decorators=NN),this.parseAssignableListItemTypes(IN),PN.push(this.parseMaybeDefault(IN.start,IN.loc.start,IN))}return PN},L_.parseAssignableListItemTypes=function(SN){return SN},L_.parseMaybeDefault=function(SN,TN,PN){if(TN=TN||this.state.startLoc,SN=SN||this.state.start,PN=PN||this.parseBindingAtom(),!this.eat(LP.eq))return PN;var _N=this.startNodeAt(SN,TN);return _N.left=PN,_N.right=this.parseMaybeAssign(),this.finishNode(_N,"AssignmentPattern")},L_.checkLVal=function(SN,TN,PN,_N){switch(SN.type){case"Identifier":if(this.checkReservedWord(SN.name,SN.start,!1,!0),PN){var NN="_"+SN.name;PN[NN]?this.raise(SN.start,"Argument name clash in strict mode"):PN[NN]=!0}break;case"MemberExpression":TN&&this.raise(SN.start,(TN?"Binding":"Assigning to")+" member expression");break;case"ObjectPattern":for(var IN=SN.properties,LN=Array.isArray(IN),RN=0,IN=LN?IN:IN[Symbol.iterator]();;){var ON;if(LN){if(RN>=IN.length)break;ON=IN[RN++]}else{if(RN=IN.next(),RN.done)break;ON=RN.value}var YN=ON;"ObjectProperty"===YN.type&&(YN=YN.value),this.checkLVal(YN,TN,PN,"object destructuring pattern")}break;case"ArrayPattern":for(var MN=SN.elements,VN=Array.isArray(MN),UN=0,MN=VN?MN:MN[Symbol.iterator]();;){var XN;if(VN){if(UN>=MN.length)break;XN=MN[UN++]}else{if(UN=MN.next(),UN.done)break;XN=UN.value}var WN=XN;WN&&this.checkLVal(WN,TN,PN,"array destructuring pattern")}break;case"AssignmentPattern":this.checkLVal(SN.left,TN,PN,"assignment pattern");break;case"RestProperty":this.checkLVal(SN.argument,TN,PN,"rest property");break;case"RestElement":this.checkLVal(SN.argument,TN,PN,"rest element");break;default:{var JN=(TN?"Binding invalid":"Invalid")+" left-hand side"+(_N?" in "+_N:"expression");this.raise(SN.start,JN)}}};var R_=S_.prototype;R_.checkPropClash=function(SN,TN){if(!SN.computed){var PN=SN.key,_N;switch(PN.type){case"Identifier":_N=PN.name;break;case"StringLiteral":case"NumericLiteral":_N=PN.value+"";break;default:return;}"__proto__"!==_N||SN.kind||(TN.proto&&this.raise(PN.start,"Redefinition of __proto__ property"),TN.proto=!0)}},R_.parseExpression=function(SN,TN){var PN=this.state.start,_N=this.state.startLoc,NN=this.parseMaybeAssign(SN,TN);if(this.match(LP.comma)){var IN=this.startNodeAt(PN,_N);for(IN.expressions=[NN];this.eat(LP.comma);)IN.expressions.push(this.parseMaybeAssign(SN,TN));return this.toReferencedList(IN.expressions),this.finishNode(IN,"SequenceExpression")}return NN},R_.parseMaybeAssign=function(SN,TN,PN,_N){var NN=this.state.start,IN=this.state.startLoc;if(this.match(LP._yield)&&this.state.inGenerator){var LN=this.parseYield();return PN&&(LN=PN.call(this,LN,NN,IN)),LN}var RN;TN?RN=!1:(TN={start:0},RN=!0),(this.match(LP.parenL)||this.match(LP.name))&&(this.state.potentialArrowAt=this.state.start);var ON=this.parseMaybeConditional(SN,TN,_N);if(PN&&(ON=PN.call(this,ON,NN,IN)),this.state.type.isAssign){var YN=this.startNodeAt(NN,IN);if(YN.operator=this.state.value,YN.left=this.match(LP.eq)?this.toAssignable(ON,void 0,"assignment expression"):ON,TN.start=0,this.checkLVal(ON,void 0,void 0,"assignment expression"),ON.extra&&ON.extra.parenthesized){var MN;"ObjectPattern"===ON.type?MN="`({a}) = 0` use `({a} = 0)`":"ArrayPattern"===ON.type&&(MN="`([a]) = 0` use `([a] = 0)`"),MN&&this.raise(ON.start,"You're trying to assign to a parenthesized expression, eg. instead of "+MN)}return this.next(),YN.right=this.parseMaybeAssign(SN),this.finishNode(YN,"AssignmentExpression")}return RN&&TN.start&&this.unexpected(TN.start),ON},R_.parseMaybeConditional=function(SN,TN,PN){var _N=this.state.start,NN=this.state.startLoc,IN=this.parseExprOps(SN,TN);return TN&&TN.start?IN:this.parseConditional(IN,SN,_N,NN,PN)},R_.parseConditional=function(SN,TN,PN,_N){if(this.eat(LP.question)){var NN=this.startNodeAt(PN,_N);return NN.test=SN,NN.consequent=this.parseMaybeAssign(),this.expect(LP.colon),NN.alternate=this.parseMaybeAssign(TN),this.finishNode(NN,"ConditionalExpression")}return SN},R_.parseExprOps=function(SN,TN){var PN=this.state.start,_N=this.state.startLoc,NN=this.parseMaybeUnary(TN);return TN&&TN.start?NN:this.parseExprOp(NN,PN,_N,-1,SN)},R_.parseExprOp=function(SN,TN,PN,_N,NN){var IN=this.state.type.binop;if(null!=IN&&(!NN||!this.match(LP._in))&&IN>_N){var LN=this.startNodeAt(TN,PN);LN.left=SN,LN.operator=this.state.value,"**"!==LN.operator||"UnaryExpression"!==SN.type||!SN.extra||SN.extra.parenthesizedArgument||SN.extra.parenthesized||this.raise(SN.argument.start,"Illegal expression. Wrap left hand side or entire exponentiation in parentheses.");var RN=this.state.type;this.next();var ON=this.state.start,YN=this.state.startLoc;return LN.right=this.parseExprOp(this.parseMaybeUnary(),ON,YN,RN.rightAssociative?IN-1:IN,NN),this.finishNode(LN,RN===LP.logicalOR||RN===LP.logicalAND?"LogicalExpression":"BinaryExpression"),this.parseExprOp(LN,TN,PN,_N,NN)}return SN},R_.parseMaybeUnary=function(SN){if(this.state.type.prefix){var TN=this.startNode(),PN=this.match(LP.incDec);TN.operator=this.state.value,TN.prefix=!0,this.next();var _N=this.state.type;return TN.argument=this.parseMaybeUnary(),this.addExtra(TN,"parenthesizedArgument",_N===LP.parenL&&(!TN.argument.extra||!TN.argument.extra.parenthesized)),SN&&SN.start&&this.unexpected(SN.start),PN?this.checkLVal(TN.argument,void 0,void 0,"prefix operation"):this.state.strict&&"delete"===TN.operator&&"Identifier"===TN.argument.type&&this.raise(TN.start,"Deleting local variable in strict mode"),this.finishNode(TN,PN?"UpdateExpression":"UnaryExpression")}var NN=this.state.start,IN=this.state.startLoc,LN=this.parseExprSubscripts(SN);if(SN&&SN.start)return LN;for(;this.state.type.postfix&&!this.canInsertSemicolon();){var RN=this.startNodeAt(NN,IN);RN.operator=this.state.value,RN.prefix=!1,RN.argument=LN,this.checkLVal(LN,void 0,void 0,"postfix operation"),this.next(),LN=this.finishNode(RN,"UpdateExpression")}return LN},R_.parseExprSubscripts=function(SN){var TN=this.state.start,PN=this.state.startLoc,_N=this.state.potentialArrowAt,NN=this.parseExprAtom(SN);return"ArrowFunctionExpression"===NN.type&&NN.start===_N?NN:SN&&SN.start?NN:this.parseSubscripts(NN,TN,PN)},R_.parseSubscripts=function(SN,TN,PN,_N){for(;;){if(!_N&&this.eat(LP.doubleColon)){var NN=this.startNodeAt(TN,PN);return NN.object=SN,NN.callee=this.parseNoCallExpr(),this.parseSubscripts(this.finishNode(NN,"BindExpression"),TN,PN,_N)}if(this.eat(LP.dot)){var IN=this.startNodeAt(TN,PN);IN.object=SN,IN.property=this.parseIdentifier(!0),IN.computed=!1,SN=this.finishNode(IN,"MemberExpression")}else if(this.eat(LP.bracketL)){var LN=this.startNodeAt(TN,PN);LN.object=SN,LN.property=this.parseExpression(),LN.computed=!0,this.expect(LP.bracketR),SN=this.finishNode(LN,"MemberExpression")}else if(!_N&&this.match(LP.parenL)){var RN=this.state.potentialArrowAt===SN.start&&"Identifier"===SN.type&&"async"===SN.name&&!this.canInsertSemicolon();this.next();var ON=this.startNodeAt(TN,PN);if(ON.callee=SN,ON.arguments=this.parseCallExpressionArguments(LP.parenR,RN),"Import"===ON.callee.type&&1!==ON.arguments.length&&this.raise(ON.start,"import() requires exactly one argument"),SN=this.finishNode(ON,"CallExpression"),RN&&this.shouldParseAsyncArrow())return this.parseAsyncArrowFromCallExpression(this.startNodeAt(TN,PN),ON);this.toReferencedList(ON.arguments)}else if(this.match(LP.backQuote)){var YN=this.startNodeAt(TN,PN);YN.tag=SN,YN.quasi=this.parseTemplate(),SN=this.finishNode(YN,"TaggedTemplateExpression")}else return SN}},R_.parseCallExpressionArguments=function(SN,TN){for(var PN=[],NN=!0,_N;!this.eat(SN);){if(NN)NN=!1;else if(this.expect(LP.comma),this.eat(SN))break;this.match(LP.parenL)&&!_N&&(_N=this.state.start),PN.push(this.parseExprListItem(void 0,TN?{start:0}:void 0))}return TN&&_N&&this.shouldParseAsyncArrow()&&this.unexpected(),PN},R_.shouldParseAsyncArrow=function(){return this.match(LP.arrow)},R_.parseAsyncArrowFromCallExpression=function(SN,TN){return this.expect(LP.arrow),this.parseArrowExpression(SN,TN.arguments,!0)},R_.parseNoCallExpr=function(){var SN=this.state.start,TN=this.state.startLoc;return this.parseSubscripts(this.parseExprAtom(),SN,TN,!0)},R_.parseExprAtom=function(SN){var TN=this.state.potentialArrowAt===this.state.start,PN;switch(this.state.type){case LP._super:return this.state.inMethod||this.options.allowSuperOutsideMethod||this.raise(this.state.start,"'super' outside of function or class"),PN=this.startNode(),this.next(),this.match(LP.parenL)||this.match(LP.bracketL)||this.match(LP.dot)||this.unexpected(),this.match(LP.parenL)&&"constructor"!==this.state.inMethod&&!this.options.allowSuperOutsideMethod&&this.raise(PN.start,"super() outside of class constructor"),this.finishNode(PN,"Super");case LP._import:return this.hasPlugin("dynamicImport")||this.unexpected(),PN=this.startNode(),this.next(),this.match(LP.parenL)||this.unexpected(null,LP.parenL),this.finishNode(PN,"Import");case LP._this:return PN=this.startNode(),this.next(),this.finishNode(PN,"ThisExpression");case LP._yield:this.state.inGenerator&&this.unexpected();case LP.name:PN=this.startNode();var _N="await"===this.state.value&&this.state.inAsync,NN=this.shouldAllowYieldIdentifier(),IN=this.parseIdentifier(_N||NN);if("await"!==IN.name){if("async"===IN.name&&this.match(LP._function)&&!this.canInsertSemicolon())return this.next(),this.parseFunction(PN,!1,!1,!0);if(TN&&"async"===IN.name&&this.match(LP.name)){var LN=[this.parseIdentifier()];return this.expect(LP.arrow),this.parseArrowExpression(PN,LN,!0)}}else if(this.state.inAsync||this.inModule)return this.parseAwait(PN);return TN&&!this.canInsertSemicolon()&&this.eat(LP.arrow)?this.parseArrowExpression(PN,[IN]):IN;case LP._do:if(this.hasPlugin("doExpressions")){var RN=this.startNode();this.next();var ON=this.state.inFunction,YN=this.state.labels;return this.state.labels=[],this.state.inFunction=!1,RN.body=this.parseBlock(!1,!0),this.state.inFunction=ON,this.state.labels=YN,this.finishNode(RN,"DoExpression")}case LP.regexp:var MN=this.state.value;return PN=this.parseLiteral(MN.value,"RegExpLiteral"),PN.pattern=MN.pattern,PN.flags=MN.flags,PN;case LP.num:return this.parseLiteral(this.state.value,"NumericLiteral");case LP.string:return this.parseLiteral(this.state.value,"StringLiteral");case LP._null:return PN=this.startNode(),this.next(),this.finishNode(PN,"NullLiteral");case LP._true:case LP._false:return PN=this.startNode(),PN.value=this.match(LP._true),this.next(),this.finishNode(PN,"BooleanLiteral");case LP.parenL:return this.parseParenAndDistinguishExpression(null,null,TN);case LP.bracketL:return PN=this.startNode(),this.next(),PN.elements=this.parseExprList(LP.bracketR,!0,SN),this.toReferencedList(PN.elements),this.finishNode(PN,"ArrayExpression");case LP.braceL:return this.parseObj(!1,SN);case LP._function:return this.parseFunctionExpression();case LP.at:this.parseDecorators();case LP._class:return PN=this.startNode(),this.takeDecorators(PN),this.parseClass(PN,!1);case LP._new:return this.parseNew();case LP.backQuote:return this.parseTemplate();case LP.doubleColon:PN=this.startNode(),this.next(),PN.object=null;var VN=PN.callee=this.parseNoCallExpr();if("MemberExpression"===VN.type)return this.finishNode(PN,"BindExpression");this.raise(VN.start,"Binding should be performed on object property.");default:this.unexpected();}},R_.parseFunctionExpression=function(){var SN=this.startNode(),TN=this.parseIdentifier(!0);return this.state.inGenerator&&this.eat(LP.dot)&&this.hasPlugin("functionSent")?this.parseMetaProperty(SN,TN,"sent"):this.parseFunction(SN,!1)},R_.parseMetaProperty=function(SN,TN,PN){return SN.meta=TN,SN.property=this.parseIdentifier(!0),SN.property.name!==PN&&this.raise(SN.property.start,"The only valid meta property for new is "+TN.name+"."+PN),this.finishNode(SN,"MetaProperty")},R_.parseLiteral=function(SN,TN){var PN=this.startNode();return this.addExtra(PN,"rawValue",SN),this.addExtra(PN,"raw",this.input.slice(this.state.start,this.state.end)),PN.value=SN,this.next(),this.finishNode(PN,TN)},R_.parseParenExpression=function(){this.expect(LP.parenL);var SN=this.parseExpression();return this.expect(LP.parenR),SN},R_.parseParenAndDistinguishExpression=function(SN,TN,PN){SN=SN||this.state.start,TN=TN||this.state.startLoc;var _N;this.expect(LP.parenL);for(var NN=this.state.start,IN=this.state.startLoc,LN=[],RN={start:0},ON={start:0},YN=!0,MN,VN;!this.match(LP.parenR);){if(YN)YN=!1;else if(this.expect(LP.comma,ON.start||null),this.match(LP.parenR)){VN=this.state.start;break}if(this.match(LP.ellipsis)){var UN=this.state.start,XN=this.state.startLoc;MN=this.state.start,LN.push(this.parseParenItem(this.parseRest(),XN,UN));break}else LN.push(this.parseMaybeAssign(!1,RN,this.parseParenItem,ON))}var WN=this.state.start,JN=this.state.startLoc;this.expect(LP.parenR);var ZN=this.startNodeAt(SN,TN);if(PN&&this.shouldParseArrow()&&(ZN=this.parseArrow(ZN))){for(var KN=LN,QN=Array.isArray(KN),$N=0,KN=QN?KN:KN[Symbol.iterator]();;){var Sk;if(QN){if($N>=KN.length)break;Sk=KN[$N++]}else{if($N=KN.next(),$N.done)break;Sk=$N.value}var Tk=Sk;Tk.extra&&Tk.extra.parenthesized&&this.unexpected(Tk.extra.parenStart)}return this.parseArrowExpression(ZN,LN)}return LN.length||this.unexpected(this.state.lastTokStart),VN&&this.unexpected(VN),MN&&this.unexpected(MN),RN.start&&this.unexpected(RN.start),ON.start&&this.unexpected(ON.start),1=YN.length)break;UN=YN[VN++]}else{if(VN=YN.next(),VN.done)break;UN=VN.value}var XN=UN;if("use strict"===XN.value.value){ON=!0,RN=!0;break}}if(ON&&SN.id&&"Identifier"===SN.id.type&&"yield"===SN.id.name&&this.raise(SN.id.start,"Binding yield in strict mode"),RN){var WN=Object.create(null),JN=this.state.strict;ON&&(this.state.strict=!0),SN.id&&this.checkLVal(SN.id,!0,void 0,"function name");for(var ZN=SN.params,KN=Array.isArray(ZN),QN=0,ZN=KN?ZN:ZN[Symbol.iterator]();;){var $N;if(KN){if(QN>=ZN.length)break;$N=ZN[QN++]}else{if(QN=ZN.next(),QN.done)break;$N=QN.value}var Sk=$N;ON&&"Identifier"!==Sk.type&&this.raise(Sk.start,"Non-simple parameter in strict mode"),this.checkLVal(Sk,!0,WN,"function parameter list")}this.state.strict=JN}},R_.parseExprList=function(SN,TN,PN){for(var _N=[],NN=!0;!this.eat(SN);){if(NN)NN=!1;else if(this.expect(LP.comma),this.eat(SN))break;_N.push(this.parseExprListItem(TN,PN))}return _N},R_.parseExprListItem=function(SN,TN){var PN;return PN=SN&&this.match(LP.comma)?null:this.match(LP.ellipsis)?this.parseSpread(TN):this.parseMaybeAssign(!1,TN,this.parseParenItem),PN},R_.parseIdentifier=function(SN){var TN=this.startNode();return this.match(LP.name)?(!SN&&this.checkReservedWord(this.state.value,this.state.start,!1,!1),TN.name=this.state.value):SN&&this.state.type.keyword?TN.name=this.state.type.keyword:this.unexpected(),!SN&&"await"===TN.name&&this.state.inAsync&&this.raise(TN.start,"invalid use of await inside of an async function"),TN.loc.identifierName=TN.name,this.next(),this.finishNode(TN,"Identifier")},R_.checkReservedWord=function(SN,TN,PN,_N){(this.isReservedWord(SN)||PN&&this.isKeyword(SN))&&this.raise(TN,SN+" is a reserved word"),this.state.strict&&(IA.strict(SN)||_N&&IA.strictBind(SN))&&this.raise(TN,SN+" is a reserved word in strict mode")},R_.parseAwait=function(SN){return this.state.inAsync||this.unexpected(),this.match(LP.star)&&this.raise(SN.start,"await* has been removed from the async functions proposal. Use Promise.all() instead."),SN.argument=this.parseMaybeUnary(),this.finishNode(SN,"AwaitExpression")},R_.parseYield=function(){var SN=this.startNode();return this.next(),this.match(LP.semi)||this.canInsertSemicolon()||!this.match(LP.star)&&!this.state.type.startsExpr?(SN.delegate=!1,SN.argument=null):(SN.delegate=this.eat(LP.star),SN.argument=this.parseMaybeAssign()),this.finishNode(SN,"YieldExpression")};var O_=S_.prototype,Y_=["leadingComments","trailingComments","innerComments"],M_=function(){function SN(TN,PN,_N){JA(this,SN),this.type="",this.start=TN,this.end=0,this.loc=new WP(PN),_N&&(this.loc.filename=_N)}return SN.prototype.__clone=function(){var PN=new SN;for(var _N in this)0>Y_.indexOf(_N)&&(PN[_N]=this[_N]);return PN},SN}();O_.startNode=function(){return new M_(this.state.start,this.state.startLoc,this.filename)},O_.startNodeAt=function(SN,TN){return new M_(SN,TN,this.filename)},O_.finishNode=function(SN,TN){return PA.call(this,SN,TN,this.state.lastTokEnd,this.state.lastTokEndLoc)},O_.finishNodeAt=function(SN,TN,PN,_N){return PA.call(this,SN,TN,PN,_N)};var V_=S_.prototype;V_.raise=function(SN,TN){var PN=SA(this.input,SN);TN+=" ("+PN.line+":"+PN.column+")";var _N=new SyntaxError(TN);throw _N.pos=SN,_N.loc=PN,_N};var U_=S_.prototype;U_.addComment=function(SN){this.filename&&(SN.loc.filename=this.filename),this.state.trailingComments.push(SN),this.state.leadingComments.push(SN)},U_.processComment=function(SN){if(!("Program"===SN.type&&0=SN.end?(_N=this.state.trailingComments,this.state.trailingComments=[]):this.state.trailingComments.length=0;else{var LN=_A(TN);0=SN.end&&(_N=LN.trailingComments,LN.trailingComments=null)}for(;0=SN.start;)PN=TN.pop();if(PN){if(PN.leadingComments)if(PN!==SN&&_A(PN.leadingComments).end<=SN.start)SN.leadingComments=PN.leadingComments,PN.leadingComments=null;else for(NN=PN.leadingComments.length-2;0<=NN;--NN)if(PN.leadingComments[NN].end<=SN.start){SN.leadingComments=PN.leadingComments.splice(0,NN+1);break}}else if(0SN.start);NN++);SN.leadingComments=this.state.leadingComments.slice(0,NN),0===SN.leadingComments.length&&(SN.leadingComments=null),_N=this.state.leadingComments.slice(NN),0===_N.length&&(_N=null)}this.state.commentPreviousNode=SN,_N&&(_N.length&&_N[0].start>=SN.start&&_A(_N).end<=SN.end?SN.innerComments=_N:SN.trailingComments=_N),TN.push(SN)}};var X_=S_.prototype;X_.flowParseTypeInitialiser=function(SN){var TN=this.state.inType;this.state.inType=!0,this.expect(SN||LP.colon);var PN=this.flowParseType();return this.state.inType=TN,PN},X_.flowParseDeclareClass=function(SN){return this.next(),this.flowParseInterfaceish(SN,!0),this.finishNode(SN,"DeclareClass")},X_.flowParseDeclareFunction=function(SN){this.next();var TN=SN.id=this.parseIdentifier(),PN=this.startNode(),_N=this.startNode();PN.typeParameters=this.isRelational("<")?this.flowParseTypeParameterDeclaration():null,this.expect(LP.parenL);var NN=this.flowParseFunctionTypeParams();return PN.params=NN.params,PN.rest=NN.rest,this.expect(LP.parenR),PN.returnType=this.flowParseTypeInitialiser(),_N.typeAnnotation=this.finishNode(PN,"FunctionTypeAnnotation"),TN.typeAnnotation=this.finishNode(_N,"TypeAnnotation"),this.finishNode(TN,TN.type),this.semicolon(),this.finishNode(SN,"DeclareFunction")},X_.flowParseDeclare=function(SN){if(this.match(LP._class))return this.flowParseDeclareClass(SN);return this.match(LP._function)?this.flowParseDeclareFunction(SN):this.match(LP._var)?this.flowParseDeclareVariable(SN):this.isContextual("module")?this.lookahead().type===LP.dot?this.flowParseDeclareModuleExports(SN):this.flowParseDeclareModule(SN):this.isContextual("type")?this.flowParseDeclareTypeAlias(SN):this.isContextual("interface")?this.flowParseDeclareInterface(SN):void this.unexpected()},X_.flowParseDeclareVariable=function(SN){return this.next(),SN.id=this.flowParseTypeAnnotatableIdentifier(),this.semicolon(),this.finishNode(SN,"DeclareVariable")},X_.flowParseDeclareModule=function(SN){this.next(),SN.id=this.match(LP.string)?this.parseExprAtom():this.parseIdentifier();var TN=SN.body=this.startNode(),PN=TN.body=[];for(this.expect(LP.braceL);!this.match(LP.braceR);){var _N=this.startNode();this.expectContextual("declare","Unexpected token. Only declares are allowed inside declare module"),PN.push(this.flowParseDeclare(_N))}return this.expect(LP.braceR),this.finishNode(TN,"BlockStatement"),this.finishNode(SN,"DeclareModule")},X_.flowParseDeclareModuleExports=function(SN){return this.expectContextual("module"),this.expect(LP.dot),this.expectContextual("exports"),SN.typeAnnotation=this.flowParseTypeAnnotation(),this.semicolon(),this.finishNode(SN,"DeclareModuleExports")},X_.flowParseDeclareTypeAlias=function(SN){return this.next(),this.flowParseTypeAlias(SN),this.finishNode(SN,"DeclareTypeAlias")},X_.flowParseDeclareInterface=function(SN){return this.next(),this.flowParseInterfaceish(SN),this.finishNode(SN,"DeclareInterface")},X_.flowParseInterfaceish=function(SN,TN){if(SN.id=this.parseIdentifier(),SN.typeParameters=this.isRelational("<")?this.flowParseTypeParameterDeclaration():null,SN.extends=[],SN.mixins=[],this.eat(LP._extends))do SN.extends.push(this.flowParseInterfaceExtends());while(this.eat(LP.comma));if(this.isContextual("mixins")){this.next();do SN.mixins.push(this.flowParseInterfaceExtends());while(this.eat(LP.comma))}SN.body=this.flowParseObjectType(TN)},X_.flowParseInterfaceExtends=function(){var SN=this.startNode();return SN.id=this.flowParseQualifiedTypeIdentifier(),SN.typeParameters=this.isRelational("<")?this.flowParseTypeParameterInstantiation():null,this.finishNode(SN,"InterfaceExtends")},X_.flowParseInterface=function(SN){return this.flowParseInterfaceish(SN,!1),this.finishNode(SN,"InterfaceDeclaration")},X_.flowParseTypeAlias=function(SN){return SN.id=this.parseIdentifier(),SN.typeParameters=this.isRelational("<")?this.flowParseTypeParameterDeclaration():null,SN.right=this.flowParseTypeInitialiser(LP.eq),this.semicolon(),this.finishNode(SN,"TypeAlias")},X_.flowParseTypeParameter=function(){var SN=this.startNode(),TN=this.flowParseVariance(),PN=this.flowParseTypeAnnotatableIdentifier();return SN.name=PN.name,SN.variance=TN,SN.bound=PN.typeAnnotation,this.match(LP.eq)&&(this.eat(LP.eq),SN.default=this.flowParseType()),this.finishNode(SN,"TypeParameter")},X_.flowParseTypeParameterDeclaration=function(){var SN=this.state.inType,TN=this.startNode();TN.params=[],this.state.inType=!0,this.isRelational("<")||this.match(LP.jsxTagStart)?this.next():this.unexpected();do TN.params.push(this.flowParseTypeParameter()),this.isRelational(">")||this.expect(LP.comma);while(!this.isRelational(">"));return this.expectRelational(">"),this.state.inType=SN,this.finishNode(TN,"TypeParameterDeclaration")},X_.flowParseTypeParameterInstantiation=function(){var SN=this.startNode(),TN=this.state.inType;for(SN.params=[],this.state.inType=!0,this.expectRelational("<");!this.isRelational(">");)SN.params.push(this.flowParseType()),this.isRelational(">")||this.expect(LP.comma);return this.expectRelational(">"),this.state.inType=TN,this.finishNode(SN,"TypeParameterInstantiation")},X_.flowParseObjectPropertyKey=function(){return this.match(LP.num)||this.match(LP.string)?this.parseExprAtom():this.parseIdentifier(!0)},X_.flowParseObjectTypeIndexer=function(SN,TN,PN){return SN.static=TN,this.expect(LP.bracketL),this.lookahead().type===LP.colon?(SN.id=this.flowParseObjectPropertyKey(),SN.key=this.flowParseTypeInitialiser()):(SN.id=null,SN.key=this.flowParseType()),this.expect(LP.bracketR),SN.value=this.flowParseTypeInitialiser(),SN.variance=PN,this.flowObjectTypeSemicolon(),this.finishNode(SN,"ObjectTypeIndexer")},X_.flowParseObjectTypeMethodish=function(SN){for(SN.params=[],SN.rest=null,SN.typeParameters=null,this.isRelational("<")&&(SN.typeParameters=this.flowParseTypeParameterDeclaration()),this.expect(LP.parenL);this.match(LP.name);)SN.params.push(this.flowParseFunctionTypeParam()),this.match(LP.parenR)||this.expect(LP.comma);return this.eat(LP.ellipsis)&&(SN.rest=this.flowParseFunctionTypeParam()),this.expect(LP.parenR),SN.returnType=this.flowParseTypeInitialiser(),this.finishNode(SN,"FunctionTypeAnnotation")},X_.flowParseObjectTypeMethod=function(SN,TN,PN,_N){var NN=this.startNodeAt(SN,TN);return NN.value=this.flowParseObjectTypeMethodish(this.startNodeAt(SN,TN)),NN.static=PN,NN.key=_N,NN.optional=!1,this.flowObjectTypeSemicolon(),this.finishNode(NN,"ObjectTypeProperty")},X_.flowParseObjectTypeCallProperty=function(SN,TN){var PN=this.startNode();return SN.static=TN,SN.value=this.flowParseObjectTypeMethodish(PN),this.flowObjectTypeSemicolon(),this.finishNode(SN,"ObjectTypeCallProperty")},X_.flowParseObjectType=function(SN,TN){var PN=this.state.inType;this.state.inType=!0;var _N=this.startNode(),LN=!1,NN,IN;_N.callProperties=[],_N.properties=[],_N.indexers=[];var RN,ON;for(TN&&this.match(LP.braceBarL)?(this.expect(LP.braceBarL),RN=LP.braceBarR,ON=!0):(this.expect(LP.braceL),RN=LP.braceR,ON=!1),_N.exact=ON;!this.match(RN);){var YN=!1,MN=this.state.start,VN=this.state.startLoc;NN=this.startNode(),SN&&this.isContextual("static")&&this.lookahead().type!==LP.colon&&(this.next(),LN=!0);var UN=this.state.start,XN=this.flowParseVariance();this.match(LP.bracketL)?_N.indexers.push(this.flowParseObjectTypeIndexer(NN,LN,XN)):this.match(LP.parenL)||this.isRelational("<")?(XN&&this.unexpected(UN),_N.callProperties.push(this.flowParseObjectTypeCallProperty(NN,SN))):(IN=this.flowParseObjectPropertyKey(),this.isRelational("<")||this.match(LP.parenL)?(XN&&this.unexpected(UN),_N.properties.push(this.flowParseObjectTypeMethod(MN,VN,LN,IN))):(this.eat(LP.question)&&(YN=!0),NN.key=IN,NN.value=this.flowParseTypeInitialiser(),NN.optional=YN,NN.static=LN,NN.variance=XN,this.flowObjectTypeSemicolon(),_N.properties.push(this.finishNode(NN,"ObjectTypeProperty")))),LN=!1}this.expect(RN);var WN=this.finishNode(_N,"ObjectTypeAnnotation");return this.state.inType=PN,WN},X_.flowObjectTypeSemicolon=function(){this.eat(LP.semi)||this.eat(LP.comma)||this.match(LP.braceR)||this.match(LP.braceBarR)||this.unexpected()},X_.flowParseQualifiedTypeIdentifier=function(SN,TN,PN){SN=SN||this.state.start,TN=TN||this.state.startLoc;for(var _N=PN||this.parseIdentifier();this.eat(LP.dot);){var NN=this.startNodeAt(SN,TN);NN.qualification=_N,NN.id=this.parseIdentifier(),_N=this.finishNode(NN,"QualifiedTypeIdentifier")}return _N},X_.flowParseGenericType=function(SN,TN,PN){var _N=this.startNodeAt(SN,TN);return _N.typeParameters=null,_N.id=this.flowParseQualifiedTypeIdentifier(SN,TN,PN),this.isRelational("<")&&(_N.typeParameters=this.flowParseTypeParameterInstantiation()),this.finishNode(_N,"GenericTypeAnnotation")},X_.flowParseTypeofType=function(){var SN=this.startNode();return this.expect(LP._typeof),SN.argument=this.flowParsePrimaryType(),this.finishNode(SN,"TypeofTypeAnnotation")},X_.flowParseTupleType=function(){var SN=this.startNode();for(SN.types=[],this.expect(LP.bracketL);this.state.posYN||1114111=YN?_N.push(YN):(YN-=65536,NN=(YN>>10)+55296,IN=YN%1024+56320,_N.push(NN,IN)),(LN+1==RN||16384<_N.length)&&(ON+=SN.apply(null,_N),_N.length=0)}return ON}}();var J_=W_,Z_={quot:"\"",amp:"&",apos:"'",lt:"<",gt:">",nbsp:"\xA0",iexcl:"\xA1",cent:"\xA2",pound:"\xA3",curren:"\xA4",yen:"\xA5",brvbar:"\xA6",sect:"\xA7",uml:"\xA8",copy:"\xA9",ordf:"\xAA",laquo:"\xAB",not:"\xAC",shy:"\xAD",reg:"\xAE",macr:"\xAF",deg:"\xB0",plusmn:"\xB1",sup2:"\xB2",sup3:"\xB3",acute:"\xB4",micro:"\xB5",para:"\xB6",middot:"\xB7",cedil:"\xB8",sup1:"\xB9",ordm:"\xBA",raquo:"\xBB",frac14:"\xBC",frac12:"\xBD",frac34:"\xBE",iquest:"\xBF",Agrave:"\xC0",Aacute:"\xC1",Acirc:"\xC2",Atilde:"\xC3",Auml:"\xC4",Aring:"\xC5",AElig:"\xC6",Ccedil:"\xC7",Egrave:"\xC8",Eacute:"\xC9",Ecirc:"\xCA",Euml:"\xCB",Igrave:"\xCC",Iacute:"\xCD",Icirc:"\xCE",Iuml:"\xCF",ETH:"\xD0",Ntilde:"\xD1",Ograve:"\xD2",Oacute:"\xD3",Ocirc:"\xD4",Otilde:"\xD5",Ouml:"\xD6",times:"\xD7",Oslash:"\xD8",Ugrave:"\xD9",Uacute:"\xDA",Ucirc:"\xDB",Uuml:"\xDC",Yacute:"\xDD",THORN:"\xDE",szlig:"\xDF",agrave:"\xE0",aacute:"\xE1",acirc:"\xE2",atilde:"\xE3",auml:"\xE4",aring:"\xE5",aelig:"\xE6",ccedil:"\xE7",egrave:"\xE8",eacute:"\xE9",ecirc:"\xEA",euml:"\xEB",igrave:"\xEC",iacute:"\xED",icirc:"\xEE",iuml:"\xEF",eth:"\xF0",ntilde:"\xF1",ograve:"\xF2",oacute:"\xF3",ocirc:"\xF4",otilde:"\xF5",ouml:"\xF6",divide:"\xF7",oslash:"\xF8",ugrave:"\xF9",uacute:"\xFA",ucirc:"\xFB",uuml:"\xFC",yacute:"\xFD",thorn:"\xFE",yuml:"\xFF",OElig:"\u0152",oelig:"\u0153",Scaron:"\u0160",scaron:"\u0161",Yuml:"\u0178",fnof:"\u0192",circ:"\u02C6",tilde:"\u02DC",Alpha:"\u0391",Beta:"\u0392",Gamma:"\u0393",Delta:"\u0394",Epsilon:"\u0395",Zeta:"\u0396",Eta:"\u0397",Theta:"\u0398",Iota:"\u0399",Kappa:"\u039A",Lambda:"\u039B",Mu:"\u039C",Nu:"\u039D",Xi:"\u039E",Omicron:"\u039F",Pi:"\u03A0",Rho:"\u03A1",Sigma:"\u03A3",Tau:"\u03A4",Upsilon:"\u03A5",Phi:"\u03A6",Chi:"\u03A7",Psi:"\u03A8",Omega:"\u03A9",alpha:"\u03B1",beta:"\u03B2",gamma:"\u03B3",delta:"\u03B4",epsilon:"\u03B5",zeta:"\u03B6",eta:"\u03B7",theta:"\u03B8",iota:"\u03B9",kappa:"\u03BA",lambda:"\u03BB",mu:"\u03BC",nu:"\u03BD",xi:"\u03BE",omicron:"\u03BF",pi:"\u03C0",rho:"\u03C1",sigmaf:"\u03C2",sigma:"\u03C3",tau:"\u03C4",upsilon:"\u03C5",phi:"\u03C6",chi:"\u03C7",psi:"\u03C8",omega:"\u03C9",thetasym:"\u03D1",upsih:"\u03D2",piv:"\u03D6",ensp:"\u2002",emsp:"\u2003",thinsp:"\u2009",zwnj:"\u200C",zwj:"\u200D",lrm:"\u200E",rlm:"\u200F",ndash:"\u2013",mdash:"\u2014",lsquo:"\u2018",rsquo:"\u2019",sbquo:"\u201A",ldquo:"\u201C",rdquo:"\u201D",bdquo:"\u201E",dagger:"\u2020",Dagger:"\u2021",bull:"\u2022",hellip:"\u2026",permil:"\u2030",prime:"\u2032",Prime:"\u2033",lsaquo:"\u2039",rsaquo:"\u203A",oline:"\u203E",frasl:"\u2044",euro:"\u20AC",image:"\u2111",weierp:"\u2118",real:"\u211C",trade:"\u2122",alefsym:"\u2135",larr:"\u2190",uarr:"\u2191",rarr:"\u2192",darr:"\u2193",harr:"\u2194",crarr:"\u21B5",lArr:"\u21D0",uArr:"\u21D1",rArr:"\u21D2",dArr:"\u21D3",hArr:"\u21D4",forall:"\u2200",part:"\u2202",exist:"\u2203",empty:"\u2205",nabla:"\u2207",isin:"\u2208",notin:"\u2209",ni:"\u220B",prod:"\u220F",sum:"\u2211",minus:"\u2212",lowast:"\u2217",radic:"\u221A",prop:"\u221D",infin:"\u221E",ang:"\u2220",and:"\u2227",or:"\u2228",cap:"\u2229",cup:"\u222A",int:"\u222B",there4:"\u2234",sim:"\u223C",cong:"\u2245",asymp:"\u2248",ne:"\u2260",equiv:"\u2261",le:"\u2264",ge:"\u2265",sub:"\u2282",sup:"\u2283",nsub:"\u2284",sube:"\u2286",supe:"\u2287",oplus:"\u2295",otimes:"\u2297",perp:"\u22A5",sdot:"\u22C5",lceil:"\u2308",rceil:"\u2309",lfloor:"\u230A",rfloor:"\u230B",lang:"\u2329",rang:"\u232A",loz:"\u25CA",spades:"\u2660",clubs:"\u2663",hearts:"\u2665",diams:"\u2666"},K_=/^[\da-fA-F]+$/,Q_=/^\d+$/;UP.j_oTag=new VP("...",!0,!0),LP.jsxName=new _P("jsxName"),LP.jsxText=new _P("jsxText",{beforeExpr:!0}),LP.jsxTagStart=new _P("jsxTagStart",{startsExpr:!0}),LP.jsxTagEnd=new _P("jsxTagEnd"),LP.jsxTagStart.updateContext=function(){this.state.context.push(UP.j_expr),this.state.context.push(UP.j_oTag),this.state.exprAllowed=!1},LP.jsxTagEnd.updateContext=function(SN){var TN=this.state.context.pop();TN===UP.j_oTag&&SN===LP.slash||TN===UP.j_cTag?(this.state.context.pop(),this.state.exprAllowed=this.curContext()===UP.j_expr):this.state.exprAllowed=!0};var $_=S_.prototype;$_.jsxReadToken=function(){for(var SN="",TN=this.state.pos;;){this.state.pos>=this.input.length&&this.raise(this.state.start,"Unterminated JSX contents");var PN=this.input.charCodeAt(this.state.pos);switch(PN){case 60:case 123:return this.state.pos===this.state.start?60===PN&&this.state.exprAllowed?(++this.state.pos,this.finishToken(LP.jsxTagStart)):this.getTokenFromCode(PN):(SN+=this.input.slice(TN,this.state.pos),this.finishToken(LP.jsxText,SN));case 38:SN+=this.input.slice(TN,this.state.pos),SN+=this.jsxReadEntity(),TN=this.state.pos;break;default:$T(PN)?(SN+=this.input.slice(TN,this.state.pos),SN+=this.jsxReadNewLine(!0),TN=this.state.pos):++this.state.pos;}}},$_.jsxReadNewLine=function(SN){var TN=this.input.charCodeAt(this.state.pos),PN;return++this.state.pos,13===TN&&10===this.input.charCodeAt(this.state.pos)?(++this.state.pos,PN=SN?"\n":"\r\n"):PN=String.fromCharCode(TN),++this.state.curLine,this.state.lineStart=this.state.pos,PN},$_.jsxReadString=function(SN){for(var TN="",PN=++this.state.pos;;){this.state.pos>=this.input.length&&this.raise(this.state.start,"Unterminated string constant");var _N=this.input.charCodeAt(this.state.pos);if(_N===SN)break;38===_N?(TN+=this.input.slice(PN,this.state.pos),TN+=this.jsxReadEntity(),PN=this.state.pos):$T(_N)?(TN+=this.input.slice(PN,this.state.pos),TN+=this.jsxReadNewLine(!1),PN=this.state.pos):++this.state.pos}return TN+=this.input.slice(PN,this.state.pos++),this.finishToken(LP.string,TN)},$_.jsxReadEntity=function(){for(var SN="",TN=0,_N=this.input[this.state.pos],NN=++this.state.pos,PN;this.state.posTN++;){if(_N=this.input[this.state.pos++],";"===_N){"#"===SN[0]?"x"===SN[1]?(SN=SN.substr(2),K_.test(SN)&&(PN=J_(parseInt(SN,16)))):(SN=SN.substr(1),Q_.test(SN)&&(PN=J_(parseInt(SN,10)))):PN=Z_[SN];break}SN+=_N}return PN?PN:(this.state.pos=NN,"&")},$_.jsxReadWord=function(){var SN,TN=this.state.pos;do SN=this.input.charCodeAt(++this.state.pos);while(KT(SN)||45===SN);return this.finishToken(LP.jsxName,this.input.slice(TN,this.state.pos))},$_.jsxParseIdentifier=function(){var SN=this.startNode();return this.match(LP.jsxName)?SN.name=this.state.value:this.state.type.keyword?SN.name=this.state.type.keyword:this.unexpected(),this.next(),this.finishNode(SN,"JSXIdentifier")},$_.jsxParseNamespacedName=function(){var SN=this.state.start,TN=this.state.startLoc,PN=this.jsxParseIdentifier();if(!this.eat(LP.colon))return PN;var _N=this.startNodeAt(SN,TN);return _N.namespace=PN,_N.name=this.jsxParseIdentifier(),this.finishNode(_N,"JSXNamespacedName")},$_.jsxParseElementName=function(){for(var SN=this.state.start,TN=this.state.startLoc,PN=this.jsxParseNamespacedName();this.eat(LP.dot);){var _N=this.startNodeAt(SN,TN);_N.object=PN,_N.property=this.jsxParseIdentifier(),PN=this.finishNode(_N,"JSXMemberExpression")}return PN},$_.jsxParseAttributeValue=function(){var SN;switch(this.state.type){case LP.braceL:if(SN=this.jsxParseExpressionContainer(),"JSXEmptyExpression"===SN.expression.type)this.raise(SN.start,"JSX attributes must only be assigned a non-empty expression");else return SN;case LP.jsxTagStart:case LP.string:return SN=this.parseExprAtom(),SN.extra=null,SN;default:this.raise(this.state.start,"JSX value should be either an expression or a quoted JSX text");}},$_.jsxParseEmptyExpression=function(){var SN=this.startNodeAt(this.state.lastTokEnd,this.state.lastTokEndLoc);return this.finishNodeAt(SN,"JSXEmptyExpression",this.state.start,this.state.startLoc)},$_.jsxParseSpreadChild=function(){var SN=this.startNode();return this.expect(LP.braceL),this.expect(LP.ellipsis),SN.expression=this.parseExpression(),this.expect(LP.braceR),this.finishNode(SN,"JSXSpreadChild")},$_.jsxParseExpressionContainer=function(){var SN=this.startNode();return this.next(),SN.expression=this.match(LP.braceR)?this.jsxParseEmptyExpression():this.parseExpression(),this.expect(LP.braceR),this.finishNode(SN,"JSXExpressionContainer")},$_.jsxParseAttribute=function(){var SN=this.startNode();return this.eat(LP.braceL)?(this.expect(LP.ellipsis),SN.argument=this.parseMaybeAssign(),this.expect(LP.braceR),this.finishNode(SN,"JSXSpreadAttribute")):(SN.name=this.jsxParseNamespacedName(),SN.value=this.eat(LP.eq)?this.jsxParseAttributeValue():null,this.finishNode(SN,"JSXAttribute"))},$_.jsxParseOpeningElementAt=function(SN,TN){var PN=this.startNodeAt(SN,TN);for(PN.attributes=[],PN.name=this.jsxParseElementName();!this.match(LP.slash)&&!this.match(LP.jsxTagEnd);)PN.attributes.push(this.jsxParseAttribute());return PN.selfClosing=this.eat(LP.slash),this.expect(LP.jsxTagEnd),this.finishNode(PN,"JSXOpeningElement")},$_.jsxParseClosingElementAt=function(SN,TN){var PN=this.startNodeAt(SN,TN);return PN.name=this.jsxParseElementName(),this.expect(LP.jsxTagEnd),this.finishNode(PN,"JSXClosingElement")},$_.jsxParseElementAt=function(SN,TN){var PN=this.startNodeAt(SN,TN),_N=[],NN=this.jsxParseOpeningElementAt(SN,TN),IN=null;if(!NN.selfClosing){contents:for(;;)switch(this.state.type){case LP.jsxTagStart:if(SN=this.state.start,TN=this.state.startLoc,this.next(),this.eat(LP.slash)){IN=this.jsxParseClosingElementAt(SN,TN);break contents}_N.push(this.jsxParseElementAt(SN,TN));break;case LP.jsxText:_N.push(this.parseExprAtom());break;case LP.braceL:this.lookahead().type===LP.ellipsis?_N.push(this.jsxParseSpreadChild()):_N.push(this.jsxParseExpressionContainer());break;default:this.unexpected();}NA(IN.name)!==NA(NN.name)&&this.raise(IN.start,"Expected corresponding JSX closing tag for <"+NA(NN.name)+">")}return PN.openingElement=NN,PN.closingElement=IN,PN.children=_N,this.match(LP.relational)&&"<"===this.state.value&&this.raise(this.state.start,"Adjacent JSX elements must be wrapped in an enclosing tag"),this.finishNode(PN,"JSXElement")},$_.jsxParseElement=function(){var SN=this.state.start,TN=this.state.startLoc;return this.next(),this.jsxParseElementAt(SN,TN)},QP.flow=function(SN){SN.extend("parseFunctionBody",function(TN){return function(PN,_N){return this.match(LP.colon)&&!_N&&(PN.returnType=this.flowParseTypeAnnotation()),TN.call(this,PN,_N)}}),SN.extend("parseStatement",function(TN){return function(PN,_N){if(this.state.strict&&this.match(LP.name)&&"interface"===this.state.value){var NN=this.startNode();return this.next(),this.flowParseInterface(NN)}return TN.call(this,PN,_N)}}),SN.extend("parseExpressionStatement",function(TN){return function(PN,_N){if("Identifier"===_N.type)if("declare"===_N.name){if(this.match(LP._class)||this.match(LP.name)||this.match(LP._function)||this.match(LP._var))return this.flowParseDeclare(PN);}else if(this.match(LP.name)){if("interface"===_N.name)return this.flowParseInterface(PN);if("type"===_N.name)return this.flowParseTypeAlias(PN)}return TN.call(this,PN,_N)}}),SN.extend("shouldParseExportDeclaration",function(TN){return function(){return this.isContextual("type")||this.isContextual("interface")||TN.call(this)}}),SN.extend("parseConditional",function(TN){return function(PN,_N,NN,IN,LN){if(LN&&this.match(LP.question)){var RN=this.state.clone();try{return TN.call(this,PN,_N,NN,IN)}catch(ON){if(ON instanceof SyntaxError)return this.state=RN,LN.start=ON.pos||this.state.start,PN;throw ON}}return TN.call(this,PN,_N,NN,IN)}}),SN.extend("parseParenItem",function(TN){return function(PN,_N,NN){if(PN=TN.call(this,PN,_N,NN),this.eat(LP.question)&&(PN.optional=!0),this.match(LP.colon)){var IN=this.startNodeAt(_N,NN);return IN.expression=PN,IN.typeAnnotation=this.flowParseTypeAnnotation(),this.finishNode(IN,"TypeCastExpression")}return PN}}),SN.extend("parseExport",function(TN){return function(PN){return PN=TN.call(this,PN),"ExportNamedDeclaration"===PN.type&&(PN.exportKind=PN.exportKind||"value"),PN}}),SN.extend("parseExportDeclaration",function(TN){return function(PN){if(this.isContextual("type")){PN.exportKind="type";var _N=this.startNode();return this.next(),this.match(LP.braceL)?(PN.specifiers=this.parseExportSpecifiers(),this.parseExportFrom(PN),null):this.flowParseTypeAlias(_N)}if(this.isContextual("interface")){PN.exportKind="type";var NN=this.startNode();return this.next(),this.flowParseInterface(NN)}return TN.call(this,PN)}}),SN.extend("parseClassId",function(TN){return function(PN){TN.apply(this,arguments),this.isRelational("<")&&(PN.typeParameters=this.flowParseTypeParameterDeclaration())}}),SN.extend("isKeyword",function(TN){return function(PN){return this.state.inType&&"void"===PN?!1:TN.call(this,PN)}}),SN.extend("readToken",function(TN){return function(PN){return this.state.inType&&(62===PN||60===PN)?this.finishOp(LP.relational,1):TN.call(this,PN)}}),SN.extend("jsx_readToken",function(TN){return function(){if(!this.state.inType)return TN.call(this)}}),SN.extend("toAssignable",function(TN){return function(PN,_N,NN){return"TypeCastExpression"===PN.type?TN.call(this,this.typeCastToParameter(PN),_N,NN):TN.call(this,PN,_N,NN)}}),SN.extend("toAssignableList",function(TN){return function(PN,_N,NN){for(var IN=0;IN$o(QT,WT,JT),WT)}const ZT=JT(Mb.from(XT));return Ng.propagateBreaks(ZT),ZT}}.printAstToDoc,OT={printDocToString:function(XT,WT,JT){JT=JT||"\n";let ZT=0,KT=[[0,Xg,XT]],QT=[],$T=!1,SA="";for(;0!==KT.length;){const PA=KT.pop(),_A=PA[0],NA=PA[1],IA=PA[2];if("string"==typeof IA)QT.push(IA),ZT+=IA.length;else switch(IA.type){case"concat":for(var TA=IA.parts.length-1;0<=TA;TA--)KT.push([_A,NA,IA.parts[TA]]);break;case"indent":KT.push([_A+IA.n,NA,IA.contents]);break;case"group":switch(NA){case Wg:if(!$T){KT.push([_A,IA.break?Xg:Wg,IA.contents]);break}case Xg:$T=!1;const LA=[_A,Wg,IA.contents];let RA=WT-ZT;if(!IA.break&&Jp(LA,KT,RA))KT.push(LA);else if(IA.expandedStates){const OA=IA.expandedStates[IA.expandedStates.length-1];if(IA.break){KT.push([_A,Xg,OA]);break}else for(var TA=1;TA=IA.expandedStates.length){KT.push([_A,Xg,OA]);break}else{const YA=IA.expandedStates[TA],MA=[_A,Wg,YA];if(Jp(MA,KT,RA)){KT.push(MA);break}}}else KT.push([_A,Xg,IA.contents]);}break;case"if-break":NA===Xg&&IA.breakContents&&KT.push([_A,NA,IA.breakContents]),NA===Wg&&IA.flatContents&&KT.push([_A,NA,IA.flatContents]);break;case"line-suffix":SA+=IA.contents;break;case"line":switch(NA){case Wg:if(!IA.hard){IA.soft||(QT.push(" "),ZT+=1);break}else $T=!0;case Xg:IA.literal?(QT.push(SA+JT),ZT=0):(0{null==WT[JT]&&(WT[JT]=TT[JT])}),WT}}.normalize,MT={parseWithFlow:function(XT){const WT=_T.parse(XT,{esproposal_class_instance_fields:!0,esproposal_class_static_fields:!0,esproposal_export_star_as:!0});if(0=iwe&&iwe==rwe.length)return owe.apply(null,rwe);for(var lwe=XW;0=iwe.l||2==iwe.t&&lwe>=iwe.c.length))iwe.c=4==rwe.t?YA(rwe.c,swe,lwe):0==swe&&rwe.c.length==lwe?rwe.c:rwe.c.substr(swe,lwe),iwe.t=iwe.c.length==iwe.l?0:2;else if(2==iwe.t&&owe==iwe.c.length)iwe.c+=4==rwe.t?YA(rwe.c,swe,lwe):0==swe&&rwe.c.length==lwe?rwe.c:rwe.c.substr(swe,lwe),iwe.t=iwe.c.length==iwe.l?0:2;else{4!=iwe.t&&MA(iwe);var pwe=rwe.c,dwe=iwe.c;if(4==rwe.t)for(var cwe=0;cwelwe?XA(rwe.apply(null,OA(swe,0,iwe)),OA(swe,iwe,owe-iwe)):function(pwe){return XA(rwe,UA(swe,pwe))}}function WA(rwe,swe){if(swe.repeat)return swe.repeat(rwe);var iwe=XW,owe=0;if(0==rwe)return iwe;for(;;){if(1&rwe&&(iwe+=swe),rwe>>=1,0==rwe)return iwe;swe+=swe,owe++,9==owe&&swe.slice(0,1)}}function JA(rwe){2==rwe.t?rwe.c+=WA(rwe.l-rwe.c.length,"\0"):rwe.c=YA(rwe.c,0,rwe.c.length),rwe.t=0}function ZA(rwe){if(24>rwe.length){for(var swe=0;sweIJ)return!1;return!0}return!/[^\x00-\x7f]/.test(rwe)}function KA(rwe){for(var swe=XW,iwe=XW,cwe=0,uwe=rwe.length,owe,lwe,pwe,dwe;cweUM?(iwe.substr(0,1),swe+=iwe,iwe=XW,swe+=rwe.slice(cwe,mwe)):iwe+=rwe.slice(cwe,mwe),mwe==uwe)break;cwe=mwe}dwe=1,++cwedwe)&&(dwe=2)):(dwe=3,++cweVV)&&(dwe=3)))))),4>dwe?(cwe-=dwe,iwe+="\uFFFD"):dwe>Jq?iwe+=String.fromCharCode(55232+(dwe>>10),Lz+(dwe&KF)):iwe+=String.fromCharCode(dwe),iwe.length>ZX&&(iwe.substr(0,1),swe+=iwe,iwe=XW)}return swe+iwe}function QA(rwe){switch(rwe.t){case 9:return rwe.c;default:JA(rwe);case 0:if(ZA(rwe.c))return rwe.t=9,rwe.c;rwe.t=8;case 8:return KA(rwe.c);}}function $A(rwe,swe,iwe){this.t=rwe,this.c=swe,this.l=iwe}function SP(rwe){return new $A(0,rwe,rwe.length)}function TP(rwe,swe){PA(rwe,SP(swe))}function PP(rwe){TP(NH.Invalid_argument,rwe)}function _P(){PP($U)}function NP(rwe,swe){return swe>>>0>=rwe.length-1&&_P(),rwe}function IP(rwe){return isFinite(rwe)?2.2250738585072014e-308<=Math.abs(rwe)?0:0==rwe?2:1:isNaN(rwe)?4:3}function LP(rwe,swe){var iwe=rwe[3]<<16,owe=swe[3]<<16;return iwe>owe?1:iweswe[2]?1:rwe[2]swe[1]?1:rwe[1]swe.c?1:0}function YP(rwe,swe,iwe){for(var owe=[];;){if(!(iwe&&rwe===swe))if(rwe instanceof $A){if(!(swe instanceof $A))return 1;else if(rwe!==swe){var lwe=OP(rwe,swe);if(0!=lwe)return lwe}}else if(rwe instanceof Array&&rwe[0]===(0|rwe[0])){var pwe=rwe[0];if(pwe===JY&&(pwe=0),pwe===JX){rwe=rwe[1];continue}else if(swe instanceof Array&&swe[0]===(0|swe[0])){var dwe=swe[0];if(dwe===JY&&(dwe=0),dwe===JX){swe=swe[1];continue}else{if(pwe!=dwe)return pweswe)return 1;if(rwe!=swe){if(!iwe)return NaN;if(rwe==rwe)return 1;if(swe==swe)return-1}}if(0==owe.length)return 0;var cwe=owe.pop();swe=owe.pop(),rwe=owe.pop(),cwe+1rwe&&PP("String.create"),new $A(rwe?2:9,XW,rwe)}function UP(rwe,swe){return+(0==YP(rwe,swe,!1))}function XP(rwe,swe,iwe,owe){if(0=rwe.l||2==rwe.t&&iwe>=rwe.c.length))0==owe?(rwe.c=XW,rwe.t=2):(rwe.c=WA(iwe,String.fromCharCode(owe)),rwe.t=iwe==rwe.l?0:2);else for(4!=rwe.t&&MA(rwe),iwe+=swe;swe=lwe;)iwe.width=10*iwe.width+lwe,owe++;owe--;break;case".":for(iwe.prec=0,owe++;lwe=rwe.charCodeAt(owe)-48,0<=lwe&&9>=lwe;)iwe.prec=10*iwe.prec+lwe,owe++;owe--;case"d":case"i":iwe.signedconv=!0;case"u":iwe.base=10;break;case"x":iwe.base=16;break;case"X":iwe.base=16,iwe.uppercase=!0;break;case"o":iwe.base=8;break;case"e":case"f":case"g":iwe.signedconv=!0,iwe.conv=lwe;break;case"E":case"F":case"G":iwe.signedconv=!0,iwe.uppercase=!0,iwe.conv=lwe.toLowerCase();}}return iwe}function QP(rwe,swe){rwe.uppercase&&(swe=swe.toUpperCase());var iwe=swe.length;rwe.signedconv&&(0>rwe.sign||rwe.signstyle!=ZB)&&iwe++,rwe.alternate&&(8==rwe.base&&(iwe+=1),16==rwe.base&&(iwe+=2));var owe=XW;if(rwe.justify==Wq&&rwe.filler==VJ)for(var lwe=iwe;lwerwe.sign?owe+=ZB:rwe.signstyle!=ZB&&(owe+=rwe.signstyle)),rwe.alternate&&8==rwe.base&&(owe+=LF),rwe.alternate&&16==rwe.base&&(owe+=WU),rwe.justify==Wq&&rwe.filler==LF)for(var lwe=iwe;lweowe.prec?6:owe.prec,iwe;if(0>swe&&(owe.sign=-1,swe=-swe),isNaN(swe))iwe=QJ,owe.filler=VJ;else if(!isFinite(swe))iwe="inf",owe.filler=VJ;else switch(owe.conv){case"e":var iwe=swe.toExponential(lwe),pwe=iwe.length;iwe.charAt(pwe-3)==UB&&(iwe=iwe.slice(0,pwe-1)+LF+iwe.slice(pwe-1));break;case"f":iwe=swe.toFixed(lwe);break;case"g":lwe=lwe?lwe:1,iwe=swe.toExponential(lwe-1);var dwe=iwe.indexOf(UB),cwe=+iwe.slice(dwe+1);if(-4>cwe||1e21<=swe||swe.toFixed(0).length>lwe){for(var pwe=dwe-1;iwe.charAt(pwe)==LF;)pwe--;iwe.charAt(pwe)==Xq&&pwe--,iwe=iwe.slice(0,pwe+1)+iwe.slice(dwe),pwe=iwe.length,iwe.charAt(pwe-3)==UB&&(iwe=iwe.slice(0,pwe-1)+LF+iwe.slice(pwe-1));break}else{var uwe=lwe;if(0>cwe)uwe-=cwe+1,iwe=swe.toFixed(uwe);else for(;iwe=swe.toFixed(uwe),iwe.length>lwe+1;)uwe--;if(uwe){for(var pwe=iwe.length-1;iwe.charAt(pwe)==LF;)pwe--;iwe.charAt(pwe)==Xq&&pwe--,iwe=iwe.slice(0,pwe+1)}}}return QP(owe,iwe)}function S_(rwe,swe){if(JP(rwe)==QV)return SP(XW+swe);var iwe=KP(rwe);0>swe&&(iwe.signedconv?(iwe.sign=-1,swe=-swe):swe>>>=0);var owe=swe.toString(iwe.base);if(0<=iwe.prec){iwe.filler=VJ;var lwe=iwe.prec-owe.length;0=iwe?(iwe=0,rwe/=Math.pow(2,-1026)):(rwe/=Math.pow(2,iwe-1027),16>rwe&&(rwe*=2,iwe-=1),0==iwe&&(rwe/=2));var owe=Math.pow(2,24),lwe=0|rwe;rwe=(rwe-lwe)*owe;var pwe=0|rwe;rwe=(rwe-pwe)*owe;var dwe=0|rwe;return lwe=15&lwe|swe|iwe<<4,[NX,dwe,pwe,lwe]}function __(rwe){return[rwe[3]>>8,rwe[3]&NX,rwe[2]>>16,rwe[2]>>8&NX,rwe[2]&NX,rwe[1]>>16,rwe[1]>>8&NX,rwe[1]&NX]}function N_(rwe,swe,iwe){function owe(pwe){if(swe--,!(0>rwe||0>swe))if(pwe instanceof Array&&pwe[0]===(0|pwe[0]))switch(pwe[0]){case 248:rwe--,lwe=0|lwe*RM+pwe[2];break;case 250:swe++,owe(pwe);break;case 255:rwe--,lwe=0|lwe*RM+pwe[1]+(pwe[2]<<24);break;default:rwe--,lwe=0|19*lwe+pwe[0];for(var dwe=pwe.length-1;0>24&_M,rwe>>31&Jq]}function R_(rwe){var swe=rwe.length,iwe=Array(swe);for(var owe=0;owe>24),lwe=rwe[3]-swe[3]+(owe>>24);return[NX,iwe&_M,owe&_M,lwe&Jq]}function Y_(rwe,swe){return rwe[3]>swe[3]?1:rwe[3]swe[2]?1:rwe[2]swe[1]?1:rwe[1]>23,rwe[2]=(rwe[2]<<1|rwe[1]>>23)&_M,rwe[1]=rwe[1]<<1&_M}function V_(rwe){rwe[1]=(rwe[1]>>>1|rwe[2]<<23)&_M,rwe[2]=(rwe[2]>>>1|rwe[3]<<23)&_M,rwe[3]>>>=1}function U_(rwe,swe){for(var iwe=0,owe=R_(rwe),lwe=R_(swe),pwe=[NX,0,0,0];0rwe[3]<<16}function J_(rwe){var swe=-rwe[1],iwe=-rwe[2]+(swe>>24),owe=-rwe[3]+(iwe>>24);return[NX,swe&_M,iwe&_M,owe&Jq]}function Z_(rwe,swe){var iwe=KP(rwe);iwe.signedconv&&W_(swe)&&(iwe.sign=-1,swe=J_(swe));var owe=XW,lwe=L_(iwe.base);do{var pwe=U_(swe,lwe);swe=pwe[1],owe="0123456789abcdef".charAt(X_(pwe[2]))+owe}while(!I_(swe));if(0<=iwe.prec){iwe.filler=VJ;var dwe=iwe.prec-owe.length;0=rwe.c.length)return 0;case 0:return rwe.c.charCodeAt(swe);case 4:return rwe.c[swe];}}function Q_(rwe){return rwe.l}function $_(rwe){var swe=0,iwe=Q_(rwe),owe=10,lwe=0=rwe?rwe-48:65<=rwe&&90>=rwe?rwe-55:97<=rwe&&122>=rwe?rwe-87:-1}function TN(rwe){var swe=$_(rwe),iwe=swe[0],owe=swe[1],lwe=swe[2],pwe=Q_(rwe),dwe=iwecwe||cwe>=lwe)&&WP(LB);var uwe=cwe;for(iwe++;iwecwe||cwe>=lwe)break;uwe=lwe*uwe+cwe,4294967295UM?(iwe.substr(0,1),swe+=iwe,iwe=XW,swe+=rwe.slice(pwe,cwe)):iwe+=rwe.slice(pwe,cwe),cwe==dwe)break;pwe=cwe}owe>6),iwe+=String.fromCharCode(IF|63&owe)):55296>owe||owe>=TB?iwe+=String.fromCharCode(IX|owe>>12,IF|63&owe>>6,IF|63&owe):56319<=owe||pwe+1==dwe||(lwe=rwe.charCodeAt(pwe+1))TB?iwe+="\xEF\xBF\xBD":(pwe++,owe=(owe<<10)+lwe-56613888,iwe+=String.fromCharCode(RU|owe>>18,IF|63&owe>>12,IF|63&owe>>6,IF|63&owe)),iwe.length>ZX&&(iwe.substr(0,1),swe+=iwe,iwe=XW)}return swe+iwe}function NN(rwe){var swe=9;return ZA(rwe)||(swe=8,rwe=_N(rwe)),new $A(swe,rwe,rwe.length)}function IN(rwe){rwe=JP(rwe);var swe=rwe.length/2,iwe=Array(swe);for(var owe=0;owe>16;return iwe}function LN(rwe){return 4!=rwe.t&&MA(rwe),rwe.c}function RN(rwe,swe,iwe){var owe=6,lwe=7,pwe=8,dwe=9;rwe.lex_default||(rwe.lex_base=IN(rwe[1]),rwe.lex_backtrk=IN(rwe[2]),rwe.lex_check=IN(rwe[5]),rwe.lex_trans=IN(rwe[4]),rwe.lex_default=IN(rwe[3]));var uwe=swe,mwe=LN(iwe[2]),cwe;for(0<=uwe?(iwe[lwe]=iwe[5]=iwe[owe],iwe[pwe]=-1):uwe=-uwe-1;;){var fwe=rwe.lex_base[uwe];if(0>fwe)return-fwe-1;var hwe=rwe.lex_backtrk[uwe];if(0<=hwe&&(iwe[lwe]=iwe[owe],iwe[pwe]=hwe),iwe[owe]>=iwe[3]){if(0==iwe[dwe])return-uwe-1;cwe=ZJ}else cwe=mwe[iwe[owe]],iwe[owe]++;if(uwe=rwe.lex_check[fwe+cwe]==uwe?rwe.lex_trans[fwe+cwe]:rwe.lex_default[uwe],!(0>uwe))cwe==ZJ&&(iwe[dwe]=0);else if(iwe[owe]=iwe[lwe],-1==iwe[pwe])WP(IW);else return iwe[pwe]}}function ON(rwe){var swe=0;for(var iwe=rwe.length-1;0<=iwe;iwe--){var owe=rwe[iwe];swe=[0,owe,swe]}return swe}function YN(rwe,swe){var rwe=0|rwe+1,iwe=Array(rwe);iwe[0]=0;for(var owe=1;owe=lwe){var dwe=VP(pwe+owe);VA(rwe.file.data,0,dwe,0,lwe),VA(iwe,0,dwe,pwe,owe),rwe.file.data=dwe}return rwe.offset+=owe,rwe.file.modified(),0}function Tk(rwe){var swe;swe=1===rwe?$N:2===rwe?QN:Sk;var iwe=NH.fds[rwe];iwe.flags.rdonly&&VN(JF+rwe+" is readonly");var owe={file:iwe.file,offset:iwe.offset,fd:rwe,opened:!0,buffer:XW,output:swe};return MH[owe.fd]=owe,owe}function Pk(){var rwe=0;for(var swe in MH)MH[swe].opened&&(rwe=[0,MH[swe],rwe]);return rwe}function _k(rwe){throw rwe}function Nk(){_k(NH.Division_by_zero)}function Lk(rwe,swe){return 0==swe&&Nk(),rwe%swe}function Rk(rwe,swe,iwe,owe){for(;;){var lwe=rwe.charCodeAt(swe);if(swe++,lwe==NX)return;var pwe=rwe.charCodeAt(swe);swe++,iwe[lwe+1]=pwe==NX?owe:iwe[pwe+1]}}function Ok(rwe,swe,iwe){for(;;){var owe=rwe.charCodeAt(swe);if(swe++,owe==NX)return;var lwe=rwe.charCodeAt(swe);swe++,iwe[owe+1]=lwe==NX?-1:iwe[lwe+1]}}function Yk(rwe,swe,iwe){var owe=6,lwe=7,pwe=8,dwe=9,cwe=10;rwe.lex_default||(rwe.lex_base=IN(rwe[1]),rwe.lex_backtrk=IN(rwe[2]),rwe.lex_check=IN(rwe[5]),rwe.lex_trans=IN(rwe[4]),rwe.lex_default=IN(rwe[3])),rwe.lex_default_code||(rwe.lex_base_code=IN(rwe[6]),rwe.lex_backtrk_code=IN(rwe[7]),rwe.lex_check_code=IN(rwe[10]),rwe.lex_trans_code=IN(rwe[9]),rwe.lex_default_code=IN(rwe[8])),null==rwe.lex_code&&(rwe.lex_code=JP(rwe[11]));var mwe=swe,fwe=LN(iwe[2]),uwe;for(0<=mwe?(iwe[lwe]=iwe[5]=iwe[owe],iwe[pwe]=-1):mwe=-mwe-1;;){var hwe=rwe.lex_base[mwe];if(0>hwe){var ywe=rwe.lex_base_code[mwe];return Ok(rwe.lex_code,ywe,iwe[cwe]),-hwe-1}var bwe=rwe.lex_backtrk[mwe];if(0<=bwe){var ywe=rwe.lex_backtrk_code[mwe];Ok(rwe.lex_code,ywe,iwe[cwe]),iwe[lwe]=iwe[owe],iwe[pwe]=bwe}if(iwe[owe]>=iwe[3]){if(0==iwe[dwe])return-mwe-1;uwe=ZJ}else uwe=fwe[iwe[owe]],iwe[owe]++;var gwe=mwe;if(mwe=rwe.lex_check[hwe+uwe]==mwe?rwe.lex_trans[hwe+uwe]:rwe.lex_default[mwe],!(0>mwe)){var xwe=rwe.lex_base_code[gwe],ywe;ywe=rwe.lex_check_code[xwe+uwe]==gwe?rwe.lex_trans_code[xwe+uwe]:rwe.lex_default_code[gwe],0>>0>=rwe.l&&Kk(),K_(rwe,swe)}function $k(rwe,swe){return 1-Zk(rwe,swe)}function SC(rwe,swe,iwe){if(iwe&=NX,4!=rwe.t){if(swe==rwe.c.length)return rwe.c+=String.fromCharCode(iwe),swe+1==rwe.l&&(rwe.t=0),0;MA(rwe)}return rwe.c[swe]=iwe,0}function TC(rwe,swe,iwe){return swe>>>0>=rwe.l&&Kk(),SC(rwe,swe,iwe)}function PC(){_k(NH.Not_found)}function _C(rwe){var swe=TA,iwe=rwe.toString();return swe.process&&swe.process.env&&void 0!=swe.process.env[iwe]?NN(swe.process.env[iwe]):void PC()}function NC(){var rwe=new Date^4294967295*Math.random();return[0,rwe]}function IC(rwe){for(var swe=1;rwe&&rwe.joo_tramp;)rwe=rwe.joo_tramp.apply(null,rwe.joo_args),swe++;return rwe}function LC(rwe,swe){return{joo_tramp:rwe,joo_args:swe}}function RC(rwe){return rwe}function OC(rwe){return VH[rwe]}function YC(rwe){return rwe instanceof Array?rwe:TA.RangeError&&rwe instanceof TA.RangeError&&rwe.message&&rwe.message.match(/maximum call stack/i)?RC(NH.Stack_overflow):TA.InternalError&&rwe instanceof TA.InternalError&&rwe.message&&rwe.message.match(/too much recursion/i)?RC(NH.Stack_overflow):rwe instanceof TA.Error?[0,OC(OM),rwe]:[0,NH.Failure,NN(rwe+"")]}function MC(rwe,swe){return 1==rwe.length?rwe(swe):XA(rwe,[swe])}function VC(rwe,swe,iwe){return 2==rwe.length?rwe(swe,iwe):XA(rwe,[swe,iwe])}function UC(rwe,swe,iwe,owe){return 3==rwe.length?rwe(swe,iwe,owe):XA(rwe,[swe,iwe,owe])}function XC(rwe,swe,iwe,owe,lwe){return 4==rwe.length?rwe(swe,iwe,owe,lwe):XA(rwe,[swe,iwe,owe,lwe])}function WC(rwe,swe,iwe,owe,lwe,pwe){return 5==rwe.length?rwe(swe,iwe,owe,lwe,pwe):XA(rwe,[swe,iwe,owe,lwe,pwe])}function JC(rwe){if("number"==typeof rwe)return 0;switch(rwe[0]){case 0:return[0,JC(rwe[1])];case 1:return[1,JC(rwe[1])];case 2:return[2,JC(rwe[1])];case 3:return[3,JC(rwe[1])];case 4:return[4,JC(rwe[1])];case 5:return[5,JC(rwe[1])];case 6:return[6,JC(rwe[1])];case 7:return[7,JC(rwe[1])];case 8:var swe=rwe[1];return[8,swe,JC(rwe[2])];case 9:var iwe=rwe[1];return[9,iwe,iwe,JC(rwe[3])];case 10:return[10,JC(rwe[1])];case 11:return[11,JC(rwe[1])];case 12:return[12,JC(rwe[1])];default:return[13,JC(rwe[1])];}}function ZC(rwe,swe){if("number"==typeof rwe)return swe;switch(rwe[0]){case 0:return[0,ZC(rwe[1],swe)];case 1:return[1,ZC(rwe[1],swe)];case 2:return[2,ZC(rwe[1],swe)];case 3:return[3,ZC(rwe[1],swe)];case 4:return[4,ZC(rwe[1],swe)];case 5:return[5,ZC(rwe[1],swe)];case 6:return[6,ZC(rwe[1],swe)];case 7:return[7,ZC(rwe[1],swe)];case 8:var iwe=rwe[1];return[8,iwe,ZC(rwe[2],swe)];case 9:var owe=rwe[2],lwe=rwe[1];return[9,lwe,owe,ZC(rwe[3],swe)];case 10:return[10,ZC(rwe[1],swe)];case 11:return[11,ZC(rwe[1],swe)];case 12:return[12,ZC(rwe[1],swe)];default:return[13,ZC(rwe[1],swe)];}}function KC(rwe,swe){if("number"==typeof rwe)return swe;switch(rwe[0]){case 0:return[0,KC(rwe[1],swe)];case 1:return[1,KC(rwe[1],swe)];case 2:var iwe=rwe[1];return[2,iwe,KC(rwe[2],swe)];case 3:var owe=rwe[1];return[3,owe,KC(rwe[2],swe)];case 4:var lwe=rwe[3],pwe=rwe[2],dwe=rwe[1];return[4,dwe,pwe,lwe,KC(rwe[4],swe)];case 5:var cwe=rwe[3],uwe=rwe[2],mwe=rwe[1];return[5,mwe,uwe,cwe,KC(rwe[4],swe)];case 6:var fwe=rwe[3],hwe=rwe[2],ywe=rwe[1];return[6,ywe,hwe,fwe,KC(rwe[4],swe)];case 7:var bwe=rwe[3],gwe=rwe[2],xwe=rwe[1];return[7,xwe,gwe,bwe,KC(rwe[4],swe)];case 8:var Swe=rwe[3],Ewe=rwe[2],Twe=rwe[1];return[8,Twe,Ewe,Swe,KC(rwe[4],swe)];case 9:return[9,KC(rwe[1],swe)];case 10:return[10,KC(rwe[1],swe)];case 11:var Awe=rwe[1];return[11,Awe,KC(rwe[2],swe)];case 12:var Pwe=rwe[1];return[12,Pwe,KC(rwe[2],swe)];case 13:var _we=rwe[2],Nwe=rwe[1];return[13,Nwe,_we,KC(rwe[3],swe)];case 14:var kwe=rwe[2],Cwe=rwe[1];return[14,Cwe,kwe,KC(rwe[3],swe)];case 15:return[15,KC(rwe[1],swe)];case 16:return[16,KC(rwe[1],swe)];case 17:var wwe=rwe[1];return[17,wwe,KC(rwe[2],swe)];case 18:var vwe=rwe[1];return[18,vwe,KC(rwe[2],swe)];case 19:return[19,KC(rwe[1],swe)];case 20:var Iwe=rwe[2],jwe=rwe[1];return[20,jwe,Iwe,KC(rwe[3],swe)];case 21:var Lwe=rwe[1];return[21,Lwe,KC(rwe[2],swe)];case 22:return[22,KC(rwe[1],swe)];default:var Dwe=rwe[1];return[23,Dwe,KC(rwe[2],swe)];}}function QC(rwe){throw[0,XH,rwe]}function $C(rwe){throw[0,WH,rwe]}function fw(rwe,swe){return T_(rwe,swe)?rwe:swe}function Sw(rwe){return 0<=rwe?rwe:0|-rwe}function Tw(rwe,swe){var iwe=Q_(rwe),owe=Q_(swe),lwe=VP(0|iwe+owe);return VA(rwe,0,lwe,0,iwe),VA(swe,0,lwe,iwe,owe),lwe}function Pw(rwe,swe){if(rwe){var iwe=rwe[1];return[0,iwe,Pw(rwe[2],swe)]}return swe}function _w(rwe){if(rwe)for(var swe=0,iwe=rwe,owe=rwe[2],lwe=rwe[1];;){if(iwe){var swe=0|swe+1,iwe=iwe[2];continue}for(var pwe=YN(swe,lwe),dwe=1,cwe=owe;;){if(cwe){var uwe=cwe[2];pwe[dwe+1]=cwe[1];var dwe=0|dwe+1,cwe=uwe;continue}return pwe}}return[0]}function Nw(rwe){for(var swe=0,iwe=rwe;;){if(iwe){var swe=0|swe+1,iwe=iwe[2];continue}return swe}}function Iw(rwe){return rwe?rwe[1]:QC(OG)}function Lw(rwe,swe){for(var iwe=rwe,owe=swe;;){if(iwe){var lwe=[0,iwe[1],owe],iwe=iwe[2],owe=lwe;continue}return owe}}function Rw(rwe){return Lw(rwe,0)}function Ow(rwe,swe){if(swe){var iwe=swe[2],owe=MC(rwe,swe[1]);return[0,owe,Ow(rwe,iwe)]}return 0}function Yw(rwe,swe){for(var iwe=swe;;){if(iwe){var owe=iwe[2];MC(rwe,iwe[1]);var iwe=owe;continue}return 0}}function Mw(rwe,swe,iwe){for(var owe=swe,lwe=iwe;;){if(lwe){var pwe=lwe[2],owe=VC(rwe,owe,lwe[1]),lwe=pwe;continue}return owe}}function Vw(rwe,swe){for(var iwe=rwe,owe=swe;;){if(0===iwe)return owe;if(owe){var iwe=0|iwe-1,owe=owe[2];continue}throw[0,ZH,RG]}}function Uw(rwe){return 0<=rwe&&!(NXiwe))for(var owe=0;;){if(MC(rwe,K_(swe,owe)),iwe!=owe){var owe=0|owe+1;continue}break}return 0}function Nv(rwe,swe,iwe){var owe=RN(rwe,swe,iwe);if(0<=owe){iwe[11]=iwe[12];var lwe=iwe[12];iwe[12]=[0,lwe[1],lwe[2],lwe[3],0|iwe[4]+iwe[6]]}return owe}function Iv(rwe,swe,iwe){var owe=Yk(rwe,swe,iwe);if(0<=owe){iwe[11]=iwe[12];var lwe=iwe[12];iwe[12]=[0,lwe[1],lwe[2],lwe[3],0|iwe[4]+iwe[6]]}return owe}function Lv(rwe){return Zw(rwe[2],rwe[5],0|rwe[6]-rwe[5])}function Rv(rwe,swe,iwe){return Zw(rwe[2],swe,0|iwe-swe)}function Ov(rwe,swe){return Qk(rwe[2],swe)}function Yv(rwe){var swe=rwe[12];return rwe[12]=[0,swe[1],0|swe[2]+1,swe[4],swe[4]],0}function Mv(rwe){function swe(Lwe){return Lwe?Lwe[4]:0}function iwe(Lwe,Dwe,Rwe){var Owe=Lwe?Lwe[4]:0,Ywe=Rwe?Rwe[4]:0,Mwe=Ywe<=Owe?0|Owe+1:0|Ywe+1;return[0,Lwe,Dwe,Rwe,Mwe]}function owe(Lwe,Dwe,Rwe){var Owe=Lwe?Lwe[4]:0,Ywe=Rwe?Rwe[4]:0;if((0|Ywe+2)>1,mve=Vw(uve,Zwe),fve=Wwe(uve,Zwe),hve=fve,yve=Wwe(0|Gwe-uve,mve),bve=0;;){if(hve){if(yve){var gve=yve[2],xve=yve[1],Sve=hve[2],Eve=hve[1],Tve=VC(Uwe,Eve,xve);if(0===Tve){var hve=Sve,yve=gve,bve=[0,Eve,bve];continue}if(0>1,mve=Vw(uve,Zwe),fve=Xwe(uve,Zwe),hve=fve,yve=Xwe(0|Gwe-uve,mve),bve=0;;){if(hve){if(yve){var gve=yve[2],xve=yve[1],Sve=hve[2],Eve=hve[1],Tve=VC(Uwe,Eve,xve);if(0===Tve){var hve=Sve,yve=gve,bve=[0,Eve,bve];continue}if(0<=Tve){var yve=gve,bve=[0,xve,bve];continue}var hve=Sve,bve=[0,Eve,bve];continue}return Lw(hve,bve)}return Lw(yve,bve)}},qwe=Nw(Lwe),Jwe=2<=qwe?Xwe(qwe,Lwe):Lwe,zwe=function(Gwe,Zwe){if(!(3>>0))switch(Gwe){case 0:return[0,0,Zwe];case 1:if(Zwe)return[0,[0,0,Zwe[1],0,1],Zwe[2]];break;case 2:if(Zwe){var Kwe=Zwe[2];if(Kwe)return[0,[0,[0,0,Zwe[1],0,1],Kwe[1],0,2],Kwe[2]]}break;default:if(Zwe){var Qwe=Zwe[2];if(Qwe){var $we=Qwe[2];if($we)return[0,[0,[0,0,Zwe[1],0,1],Qwe[1],[0,0,$we[1],0,1],2],$we[2]]}}}var eve=0|Gwe/2,tve=zwe(eve,Zwe),ave=tve[2],nve=tve[1];if(ave){var rve=ave[1],sve=zwe(0|(0|Gwe-eve)-1,ave[2]),ive=sve[2];return[0,iwe(nve,rve,sve[1]),ive]}throw[0,ZH,IZ]};return zwe(Nw(Jwe),Jwe)[1]}var Hwe=Vwe[1];return lwe(Hwe,lwe(Bwe,lwe(Fwe,lwe(Ywe,pwe(Rwe)))))}return lwe(Bwe,lwe(Fwe,lwe(Ywe,pwe(Rwe))))}return lwe(Fwe,lwe(Ywe,pwe(Rwe)))}return lwe(Ywe,pwe(Rwe))}return pwe(Rwe)}return jwe}]}function Vv(){throw Yke}function Uv(rwe){var swe=rwe[1];rwe[1]=Vv;try{var iwe=MC(swe,0);return rwe[1]=iwe,Vk(rwe,JX),iwe}catch(owe){throw owe=YC(owe),rwe[1]=function(){throw owe},owe}}function Xv(rwe){var swe=1<=rwe?rwe:1,iwe=Okerwe?MI(1+rwe,Bve,Vve,iwe):LC(MI,[0,Bve,Vve,iwe]);case 1:return 50>rwe?MI(1+rwe,Bve,Vve,iwe):LC(MI,[0,Bve,Vve,iwe]);case 2:return 50>rwe?MI(1+rwe,Bve,Vve,iwe):LC(MI,[0,Bve,Vve,iwe]);case 3:if("number"!=typeof iwe&&13===iwe[0]){var Uve=VI(Vve,iwe[1]);return[0,[23,3,Uve[1]],Uve[2]]}throw Fke;default:return 50>rwe?MI(1+rwe,Bve,Vve,iwe):LC(MI,[0,Bve,Vve,iwe]);}else switch(Bve[0]){case 0:return 50>rwe?MI(1+rwe,Bve,Vve,iwe):LC(MI,[0,Bve,Vve,iwe]);case 1:return 50>rwe?MI(1+rwe,Bve,Vve,iwe):LC(MI,[0,Bve,Vve,iwe]);case 2:return 50>rwe?MI(1+rwe,Bve,Vve,iwe):LC(MI,[0,Bve,Vve,iwe]);case 3:return 50>rwe?MI(1+rwe,Bve,Vve,iwe):LC(MI,[0,Bve,Vve,iwe]);case 4:return 50>rwe?MI(1+rwe,Bve,Vve,iwe):LC(MI,[0,Bve,Vve,iwe]);case 5:return 50>rwe?MI(1+rwe,Bve,Vve,iwe):LC(MI,[0,Bve,Vve,iwe]);case 6:return 50>rwe?MI(1+rwe,Bve,Vve,iwe):LC(MI,[0,Bve,Vve,iwe]);case 7:return 50>rwe?MI(1+rwe,[7,Bve[1],Bve[2]],Vve,iwe):LC(MI,[0,[7,Bve[1],Bve[2]],Vve,iwe]);case 8:var Xve=Bve[1],Wve=UI(Bve[2],Vve,iwe),qve=Wve[2];return[0,[23,[8,Xve,Wve[1]],qve[1]],qve[2]];case 9:return 50>rwe?MI(1+rwe,Bve,Vve,iwe):LC(MI,[0,Bve,Vve,iwe]);default:return 50>rwe?MI(1+rwe,Bve,Vve,iwe):LC(MI,[0,Bve,Vve,iwe]);}}throw Fke}function MI(rwe,swe,iwe,owe){var lwe=VI(iwe,owe);return[0,[23,swe,lwe[1]],lwe[2]]}function VI(rwe,swe){return IC(YI(0,rwe,swe))}function UI(rwe,swe,iwe){if("number"==typeof rwe)return[0,0,VI(swe,iwe)];switch(rwe[0]){case 0:if("number"!=typeof iwe&&0===iwe[0]){var owe=UI(rwe[1],swe,iwe[1]);return[0,[0,owe[1]],owe[2]]}break;case 1:if("number"!=typeof iwe&&1===iwe[0]){var lwe=UI(rwe[1],swe,iwe[1]);return[0,[1,lwe[1]],lwe[2]]}break;case 2:if("number"!=typeof iwe&&2===iwe[0]){var pwe=UI(rwe[1],swe,iwe[1]);return[0,[2,pwe[1]],pwe[2]]}break;case 3:if("number"!=typeof iwe&&3===iwe[0]){var dwe=UI(rwe[1],swe,iwe[1]);return[0,[3,dwe[1]],dwe[2]]}break;case 4:if("number"!=typeof iwe&&4===iwe[0]){var cwe=UI(rwe[1],swe,iwe[1]);return[0,[4,cwe[1]],cwe[2]]}break;case 5:if("number"!=typeof iwe&&5===iwe[0]){var uwe=UI(rwe[1],swe,iwe[1]);return[0,[5,uwe[1]],uwe[2]]}break;case 6:if("number"!=typeof iwe&&6===iwe[0]){var mwe=UI(rwe[1],swe,iwe[1]);return[0,[6,mwe[1]],mwe[2]]}break;case 7:if("number"!=typeof iwe&&7===iwe[0]){var fwe=UI(rwe[1],swe,iwe[1]);return[0,[7,fwe[1]],fwe[2]]}break;case 8:if("number"!=typeof iwe&&8===iwe[0]){var hwe=iwe[1],ywe=iwe[2],bwe=rwe[2];if(Mk([0,rwe[1]],[0,hwe]))throw Fke;var gwe=UI(bwe,swe,ywe);return[0,[8,hwe,gwe[1]],gwe[2]]}break;case 9:if("number"!=typeof iwe&&9===iwe[0]){var xwe=iwe[2],Swe=iwe[1],Ewe=iwe[3],Twe=rwe[3],Awe=rwe[2],Pwe=rwe[1],_we=[0,JC(Swe)];if(Mk([0,JC(Pwe)],_we))throw Fke;var Nwe=[0,JC(xwe)];if(Mk([0,JC(Awe)],Nwe))throw Fke;var kwe=II(LI(NI(Swe),xwe)),Cwe=kwe[4];MC(kwe[2],0),MC(Cwe,0);var wwe=UI(JC(Twe),swe,Ewe),vwe=wwe[2];return[0,[9,Swe,xwe,NI(wwe[1])],vwe]}break;case 10:if("number"!=typeof iwe&&10===iwe[0]){var Iwe=UI(rwe[1],swe,iwe[1]);return[0,[10,Iwe[1]],Iwe[2]]}break;case 11:if("number"!=typeof iwe&&11===iwe[0]){var jwe=UI(rwe[1],swe,iwe[1]);return[0,[11,jwe[1]],jwe[2]]}break;case 12:if("number"!=typeof iwe&&12===iwe[0]){var Lwe=UI(rwe[1],swe,iwe[1]);return[0,[12,Lwe[1]],Lwe[2]]}break;default:if("number"!=typeof iwe&&13===iwe[0]){var Dwe=UI(rwe[1],swe,iwe[1]);return[0,[13,Dwe[1]],Dwe[2]]}}throw Fke}function XI(rwe,swe,iwe){var owe=Q_(iwe),lwe=0<=swe?rwe:0,pwe=Sw(swe);if(pwe<=owe)return iwe;var dwe=2===lwe?48:32,cwe=Ww(pwe,dwe);switch(lwe){case 0:Qw(iwe,0,cwe,0,owe);break;case 1:Qw(iwe,0,cwe,0|pwe-owe,owe);break;default:if(0>>0?1:0:65<=lwe?0:1;else{if(32===lwe)var dwe=1;else if(43<=lwe)switch(0|lwe+OF){case 5:if(owe<(0|iwe+2)&&1dwe))for(var cwe=0;;){var uwe=K_(rwe,cwe),mwe=14<=uwe?34===uwe?1:92===uwe?1:0:11<=uwe?13<=uwe?1:0:8<=uwe?1:0,fwe=mwe?2:PN(uwe)?1:4;if(pwe[1]=0|pwe[1]+fwe,dwe!=cwe){var cwe=0|cwe+1;continue}break}if(pwe[1]===Q_(rwe))var hwe=Jw(rwe);else{var ywe=VP(pwe[1]);pwe[1]=0;var bwe=0|Q_(rwe)-1;if(!(0>bwe))for(var gwe=0;;){var xwe=K_(rwe,gwe),Swe=0|xwe-34;if(!(58>>0))var Ewe=56<(0|Swe-1)>>>0?(SC(ywe,pwe[1],92),pwe[1]++,SC(ywe,pwe[1],xwe),0):1;else if(-20<=Swe)var Ewe=1;else{switch(0|Swe+34){case 8:SC(ywe,pwe[1],92),pwe[1]++,SC(ywe,pwe[1],98);var Twe=1;break;case 9:SC(ywe,pwe[1],92),pwe[1]++,SC(ywe,pwe[1],Sz);var Twe=1;break;case 10:SC(ywe,pwe[1],92),pwe[1]++,SC(ywe,pwe[1],SB);var Twe=1;break;case 13:SC(ywe,pwe[1],92),pwe[1]++,SC(ywe,pwe[1],Jz);var Twe=1;break;default:var Ewe=1,Twe=0;}if(Twe)var Ewe=0}if(Ewe&&(PN(xwe)?SC(ywe,pwe[1],xwe):(SC(ywe,pwe[1],92),pwe[1]++,SC(ywe,pwe[1],0|48+(0|xwe/Sq)),pwe[1]++,SC(ywe,pwe[1],0|48+(0|(0|xwe/10)%10)),pwe[1]++,SC(ywe,pwe[1],0|48+(0|xwe%10)))),pwe[1]++,bwe!=gwe){var gwe=0|gwe+1;continue}break}var hwe=ywe}}else var hwe=rwe;return Pv(hwe,nee)}}function HI(rwe,swe){switch(rwe){case 0:var iwe=KQ;break;case 1:var iwe=QQ;break;case 2:var iwe=$Q;break;case 3:var iwe=S$;break;case 4:var iwe=T$;break;case 5:var iwe=P$;break;case 6:var iwe=_$;break;case 7:var iwe=N$;break;case 8:var iwe=I$;break;case 9:var iwe=L$;break;case 10:var iwe=R$;break;case 11:var iwe=O$;break;default:var iwe=Y$;}return Pv(Tv(1,swe),iwe)}function ZI(rwe,swe){switch(rwe){case 0:var iwe=M$;break;case 1:var iwe=V$;break;case 2:var iwe=U$;break;case 3:var iwe=X$;break;case 4:var iwe=W$;break;case 5:var iwe=J$;break;case 6:var iwe=Z$;break;case 7:var iwe=K$;break;case 8:var iwe=Q$;break;case 9:var iwe=$$;break;case 10:var iwe=eee;break;case 11:var iwe=tee;break;default:var iwe=aee;}return S_(iwe,swe)}function KI(rwe,swe){return S_(HI(rwe,ZY),swe)}function QI(rwe,swe){return S_(HI(rwe,SB),swe)}function $I(rwe,swe){return Z_(HI(rwe,76),swe)}function Sj(rwe,swe,iwe){var owe=Sw(Sw(swe));if(15===rwe)var lwe=Nq;else{switch(rwe){case 15:var pwe=70;break;case 0:case 1:case 2:var pwe=NW;break;case 3:case 4:case 5:var pwe=QU;break;case 6:case 7:case 8:var pwe=69;break;case 9:case 10:case 11:var pwe=Nq;break;default:var pwe=71;}var lwe=pwe}var dwe=Qv(16);SI(dwe,37);1===rwe||4===rwe||7===rwe||10===rwe||13===rwe?SI(dwe,43):2===rwe||5===rwe||8===rwe||11===rwe||14===rwe?SI(dwe,32):void 0;SI(dwe,46),TI(dwe,SP(XW+owe)),SI(dwe,lwe);var cwe=$P(PI(dwe),iwe);if(15===rwe){var uwe=IP(iwe),mwe=Q_(cwe);if(3===uwe)return 0>iwe?JQ:ZQ;if(4<=uwe)return XQ;for(var fwe=0;;){if(fwe===mwe)var hwe=0;else{var ywe=0|Qk(cwe,fwe)-46,bwe=23>>0?55==ywe?1:0:21<(0|ywe-1)>>>0?1:0;if(!bwe){var fwe=0|fwe+1;continue}var hwe=1}return hwe?cwe:Tw(cwe,WQ)}}return cwe}function Tj(rwe,swe,iwe,owe,lwe){for(var pwe=swe,dwe=owe,cwe=lwe;;){if("number"==typeof cwe)return VC(pwe,iwe,dwe);switch(cwe[0]){case 0:var uwe=cwe[1];return function(Jwe){return Lj(pwe,iwe,[5,dwe,Jwe],uwe)};case 1:var mwe=cwe[1];return function(Jwe){return Lj(pwe,iwe,[4,dwe,Pv(Xw(Jwe),UQ)],mwe)};case 2:var fwe=cwe[2],hwe=cwe[1];return 50>rwe?Nj(1+rwe,pwe,iwe,dwe,fwe,hwe,function(Jwe){return Jwe}):LC(Nj,[0,pwe,iwe,dwe,fwe,hwe,function(Jwe){return Jwe}]);case 3:return 50>rwe?Nj(1+rwe,pwe,iwe,dwe,cwe[2],cwe[1],JI):LC(Nj,[0,pwe,iwe,dwe,cwe[2],cwe[1],JI]);case 4:return 50>rwe?Ij(1+rwe,pwe,iwe,dwe,cwe[4],cwe[2],cwe[3],ZI,cwe[1]):LC(Ij,[0,pwe,iwe,dwe,cwe[4],cwe[2],cwe[3],ZI,cwe[1]]);case 5:return 50>rwe?Ij(1+rwe,pwe,iwe,dwe,cwe[4],cwe[2],cwe[3],KI,cwe[1]):LC(Ij,[0,pwe,iwe,dwe,cwe[4],cwe[2],cwe[3],KI,cwe[1]]);case 6:return 50>rwe?Ij(1+rwe,pwe,iwe,dwe,cwe[4],cwe[2],cwe[3],QI,cwe[1]):LC(Ij,[0,pwe,iwe,dwe,cwe[4],cwe[2],cwe[3],QI,cwe[1]]);case 7:return 50>rwe?Ij(1+rwe,pwe,iwe,dwe,cwe[4],cwe[2],cwe[3],$I,cwe[1]):LC(Ij,[0,pwe,iwe,dwe,cwe[4],cwe[2],cwe[3],$I,cwe[1]]);case 8:var ywe=cwe[4],bwe=cwe[3],gwe=cwe[2],xwe=cwe[1];if("number"==typeof gwe){if("number"==typeof bwe)return 0===bwe?function(Jwe){return Lj(pwe,iwe,[4,dwe,Sj(xwe,Mke,Jwe)],ywe)}:function(Jwe,zwe){return Lj(pwe,iwe,[4,dwe,Sj(xwe,Jwe,zwe)],ywe)};var Swe=bwe[1];return function(Jwe){return Lj(pwe,iwe,[4,dwe,Sj(xwe,Swe,Jwe)],ywe)}}if(0===gwe[0]){var Ewe=gwe[2],Twe=gwe[1];if("number"==typeof bwe)return 0===bwe?function(Jwe){return Lj(pwe,iwe,[4,dwe,XI(Twe,Ewe,Sj(xwe,Mke,Jwe))],ywe)}:function(Jwe,zwe){return Lj(pwe,iwe,[4,dwe,XI(Twe,Ewe,Sj(xwe,Jwe,zwe))],ywe)};var Awe=bwe[1];return function(Jwe){return Lj(pwe,iwe,[4,dwe,XI(Twe,Ewe,Sj(xwe,Awe,Jwe))],ywe)}}var Pwe=gwe[1];if("number"==typeof bwe)return 0===bwe?function(Jwe,zwe){return Lj(pwe,iwe,[4,dwe,XI(Pwe,Jwe,Sj(xwe,Mke,zwe))],ywe)}:function(Jwe,zwe,Hwe){return Lj(pwe,iwe,[4,dwe,XI(Pwe,Jwe,Sj(xwe,zwe,Hwe))],ywe)};var _we=bwe[1];return function(Jwe,zwe){return Lj(pwe,iwe,[4,dwe,XI(Pwe,Jwe,Sj(xwe,_we,zwe))],ywe)};case 9:var Nwe=cwe[1];return function(Jwe){var zwe=Jwe?PG:_G;return Lj(pwe,iwe,[4,dwe,zwe],Nwe)};case 10:var dwe=[7,dwe],cwe=cwe[1];continue;case 11:var dwe=[2,dwe,cwe[1]],cwe=cwe[2];continue;case 12:var dwe=[3,dwe,cwe[1]],cwe=cwe[2];continue;case 13:var kwe=cwe[3],Cwe=cwe[2],wwe=Qv(16);_I(wwe,Cwe);var vwe=PI(wwe);return function(){return Lj(pwe,iwe,[4,dwe,vwe],kwe)};case 14:var Iwe=cwe[3],jwe=cwe[2];return function(Jwe){var zwe=Jwe[1],Hwe=VI(zwe,JC(NI(jwe)));if("number"==typeof Hwe[2])return Lj(pwe,iwe,dwe,KC(Hwe[1],Iwe));throw Fke};case 15:var Lwe=cwe[1];return function(Jwe,zwe){return Lj(pwe,iwe,[6,dwe,function(Hwe){return VC(Jwe,Hwe,zwe)}],Lwe)};case 16:var Dwe=cwe[1];return function(Jwe){return Lj(pwe,iwe,[6,dwe,Jwe],Dwe)};case 17:var dwe=[0,dwe,cwe[1]],cwe=cwe[2];continue;case 18:var Rwe=cwe[1];if(0===Rwe[0]){var Owe=cwe[2],Ywe=Rwe[1][1],pwe=function(Jwe,zwe,Hwe){return function(Gwe,Zwe){return Lj(zwe,Gwe,[1,Jwe,[0,Zwe]],Hwe)}}(dwe,pwe,Owe),dwe=0,cwe=Ywe;continue}var Mwe=cwe[2],Fwe=Rwe[1][1],pwe=function(Jwe,zwe,Hwe){return function(Gwe,Zwe){return Lj(zwe,Gwe,[1,Jwe,[1,Zwe]],Hwe)}}(dwe,pwe,Mwe),dwe=0,cwe=Fwe;continue;case 19:throw[0,ZH,NQ];case 20:var Vwe=cwe[3],Bwe=[8,dwe,IQ];return function(){return Lj(pwe,iwe,Bwe,Vwe)};case 21:var Uwe=cwe[2];return function(Jwe){return Lj(pwe,iwe,[4,dwe,S_(_Q,Jwe)],Uwe)};case 22:var Xwe=cwe[1];return function(Jwe){return Lj(pwe,iwe,[5,dwe,Jwe],Xwe)};default:var Wwe=cwe[2],qwe=cwe[1];if("number"==typeof qwe)switch(qwe){case 0:return 50>rwe?_j(1+rwe,pwe,iwe,dwe,Wwe):LC(_j,[0,pwe,iwe,dwe,Wwe]);case 1:return 50>rwe?_j(1+rwe,pwe,iwe,dwe,Wwe):LC(_j,[0,pwe,iwe,dwe,Wwe]);case 2:return 50>rwe?_j(1+rwe,pwe,iwe,dwe,Wwe):LC(_j,[0,pwe,iwe,dwe,Wwe]);case 3:throw[0,ZH,LQ];default:return 50>rwe?_j(1+rwe,pwe,iwe,dwe,Wwe):LC(_j,[0,pwe,iwe,dwe,Wwe]);}else switch(qwe[0]){case 0:return 50>rwe?_j(1+rwe,pwe,iwe,dwe,Wwe):LC(_j,[0,pwe,iwe,dwe,Wwe]);case 1:return 50>rwe?_j(1+rwe,pwe,iwe,dwe,Wwe):LC(_j,[0,pwe,iwe,dwe,Wwe]);case 2:return 50>rwe?_j(1+rwe,pwe,iwe,dwe,Wwe):LC(_j,[0,pwe,iwe,dwe,Wwe]);case 3:return 50>rwe?_j(1+rwe,pwe,iwe,dwe,Wwe):LC(_j,[0,pwe,iwe,dwe,Wwe]);case 4:return 50>rwe?_j(1+rwe,pwe,iwe,dwe,Wwe):LC(_j,[0,pwe,iwe,dwe,Wwe]);case 5:return 50>rwe?_j(1+rwe,pwe,iwe,dwe,Wwe):LC(_j,[0,pwe,iwe,dwe,Wwe]);case 6:return 50>rwe?_j(1+rwe,pwe,iwe,dwe,Wwe):LC(_j,[0,pwe,iwe,dwe,Wwe]);case 7:return 50>rwe?_j(1+rwe,pwe,iwe,dwe,Wwe):LC(_j,[0,pwe,iwe,dwe,Wwe]);case 8:return 50>rwe?Pj(1+rwe,pwe,iwe,dwe,qwe[2],Wwe):LC(Pj,[0,pwe,iwe,dwe,qwe[2],Wwe]);case 9:return 50>rwe?_j(1+rwe,pwe,iwe,dwe,Wwe):LC(_j,[0,pwe,iwe,dwe,Wwe]);default:return 50>rwe?_j(1+rwe,pwe,iwe,dwe,Wwe):LC(_j,[0,pwe,iwe,dwe,Wwe]);}}}}function Pj(rwe,swe,iwe,owe,lwe,pwe){if("number"==typeof lwe)return 50>rwe?_j(1+rwe,swe,iwe,owe,pwe):LC(_j,[0,swe,iwe,owe,pwe]);switch(lwe[0]){case 0:var dwe=lwe[1];return function(){return Rj(swe,iwe,owe,dwe,pwe)};case 1:var cwe=lwe[1];return function(){return Rj(swe,iwe,owe,cwe,pwe)};case 2:var uwe=lwe[1];return function(){return Rj(swe,iwe,owe,uwe,pwe)};case 3:var mwe=lwe[1];return function(){return Rj(swe,iwe,owe,mwe,pwe)};case 4:var fwe=lwe[1];return function(){return Rj(swe,iwe,owe,fwe,pwe)};case 5:var hwe=lwe[1];return function(){return Rj(swe,iwe,owe,hwe,pwe)};case 6:var ywe=lwe[1];return function(){return Rj(swe,iwe,owe,ywe,pwe)};case 7:var bwe=lwe[1];return function(){return Rj(swe,iwe,owe,bwe,pwe)};case 8:var gwe=lwe[2];return function(){return Rj(swe,iwe,owe,gwe,pwe)};case 9:var xwe=lwe[3],Swe=lwe[2],Ewe=LI(NI(lwe[1]),Swe);return function(){return Rj(swe,iwe,owe,ZC(Ewe,xwe),pwe)};case 10:var Twe=lwe[1];return function(){return Rj(swe,iwe,owe,Twe,pwe)};case 11:var Awe=lwe[1];return function(){return Rj(swe,iwe,owe,Awe,pwe)};case 12:throw[0,ZH,RQ];default:throw[0,ZH,OQ];}}function _j(rwe,swe,iwe,owe,lwe){return 50>rwe?Tj(1+rwe,swe,iwe,[8,owe,YQ],lwe):LC(Tj,[0,swe,iwe,[8,owe,YQ],lwe])}function Nj(rwe,swe,iwe,owe,lwe,pwe,dwe){if("number"==typeof pwe)return function(fwe){return Lj(swe,iwe,[4,owe,MC(dwe,fwe)],lwe)};if(0===pwe[0]){var cwe=pwe[2],uwe=pwe[1];return function(fwe){return Lj(swe,iwe,[4,owe,XI(uwe,cwe,MC(dwe,fwe))],lwe)}}var mwe=pwe[1];return function(fwe,hwe){return Lj(swe,iwe,[4,owe,XI(mwe,fwe,MC(dwe,hwe))],lwe)}}function Ij(rwe,swe,iwe,owe,lwe,pwe,dwe,cwe,uwe){if("number"==typeof pwe){if("number"==typeof dwe)return 0===dwe?function(xwe){return Lj(swe,iwe,[4,owe,VC(cwe,uwe,xwe)],lwe)}:function(xwe,Swe){return Lj(swe,iwe,[4,owe,WI(xwe,VC(cwe,uwe,Swe))],lwe)};var mwe=dwe[1];return function(xwe){return Lj(swe,iwe,[4,owe,WI(mwe,VC(cwe,uwe,xwe))],lwe)}}if(0===pwe[0]){var fwe=pwe[2],hwe=pwe[1];if("number"==typeof dwe)return 0===dwe?function(xwe){return Lj(swe,iwe,[4,owe,XI(hwe,fwe,VC(cwe,uwe,xwe))],lwe)}:function(xwe,Swe){return Lj(swe,iwe,[4,owe,XI(hwe,fwe,WI(xwe,VC(cwe,uwe,Swe)))],lwe)};var ywe=dwe[1];return function(xwe){return Lj(swe,iwe,[4,owe,XI(hwe,fwe,WI(ywe,VC(cwe,uwe,xwe)))],lwe)}}var bwe=pwe[1];if("number"==typeof dwe)return 0===dwe?function(xwe,Swe){return Lj(swe,iwe,[4,owe,XI(bwe,xwe,VC(cwe,uwe,Swe))],lwe)}:function(xwe,Swe,Ewe){return Lj(swe,iwe,[4,owe,XI(bwe,xwe,WI(Swe,VC(cwe,uwe,Ewe)))],lwe)};var gwe=dwe[1];return function(xwe,Swe){return Lj(swe,iwe,[4,owe,XI(bwe,xwe,WI(gwe,VC(cwe,uwe,Swe)))],lwe)}}function Lj(rwe,swe,iwe,owe){return IC(Tj(0,rwe,swe,iwe,owe))}function Rj(rwe,swe,iwe,owe,lwe){return IC(Pj(0,rwe,swe,iwe,owe,lwe))}function Oj(rwe,swe){for(var iwe=swe;;){if("number"==typeof iwe)return 0;switch(iwe[0]){case 0:var owe=iwe[2],lwe=iwe[1];if("number"==typeof owe)switch(owe){case 0:var pwe=ree;break;case 1:var pwe=see;break;case 2:var pwe=iee;break;case 3:var pwe=oee;break;case 4:var pwe=lee;break;case 5:var pwe=pee;break;default:var pwe=dee;}else switch(owe[0]){case 0:var pwe=owe[1];break;case 1:var pwe=owe[1];break;default:var pwe=Tw(cee,Tv(1,owe[1]));}return Oj(rwe,lwe),Kv(rwe,pwe);case 1:var dwe=iwe[2],cwe=iwe[1];if(0===dwe[0]){var uwe=dwe[1];Oj(rwe,cwe),Kv(rwe,MQ);var iwe=uwe;continue}var mwe=dwe[1];Oj(rwe,cwe),Kv(rwe,VQ);var iwe=mwe;continue;case 6:var fwe=iwe[2];return Oj(rwe,iwe[1]),Kv(rwe,MC(fwe,0));case 7:var iwe=iwe[1];continue;case 8:var hwe=iwe[2];return Oj(rwe,iwe[1]),$C(hwe);case 2:case 4:var ywe=iwe[2];return Oj(rwe,iwe[1]),Kv(rwe,ywe);default:var bwe=iwe[2];return Oj(rwe,iwe[1]),Zv(rwe,bwe);}}}function Yj(rwe){var swe=rwe[1];return Lj(function(iwe,owe){var lwe=Xv(64);return Oj(lwe,owe),Wv(lwe)},0,0,swe)}function Mj(rwe){return Vke[1]=[0,rwe,Vke[1]],0}function Vj(rwe,swe){for(var iwe=rwe?rwe[1]:qke,owe=16;;){if(!(swe<=owe)&&!(Rke<(0|2*owe))){var owe=0|2*owe;continue}if(iwe){var lwe=Uk(Jke),pwe=JX===lwe?Jke[1]:_W===lwe?Uv(Jke):Jke;pwe[2]=0|(0|pwe[2]+1)%55;var dwe=pwe[2],cwe=NP(pwe[1],dwe)[dwe+1],uwe=0|(0|pwe[2]+24)%55,mwe=(0|NP(pwe[1],uwe)[uwe+1]+(cwe^31&(0|cwe>>>25)))&XV,fwe=pwe[2];NP(pwe[1],fwe)[fwe+1]=mwe;var hwe=mwe}else var hwe=0;return[0,0,YN(owe,0),hwe,owe]}}function Uj(rwe,swe){return 3<=rwe.length-1?LH(10,Sq,rwe[3],swe)&(0|rwe[2].length-1-1):Lk(N_(10,Sq,swe),rwe[2].length-1)}function Xj(rwe,swe,iwe){var owe=Uj(rwe,swe),lwe=[0,swe,iwe,NP(rwe[2],owe)[owe+1]];NP(rwe[2],owe)[owe+1]=lwe,rwe[1]=0|rwe[1]+1;var pwe=rwe[2].length-1<<1ywe))for(var bwe=0;;){if(hwe(NP(dwe,bwe)[bwe+1]),ywe!=bwe){var bwe=0|bwe+1;continue}break}var gwe=0}else var gwe=mwe;return gwe}return pwe}function Wj(rwe,swe){var iwe=Uj(rwe,swe),owe=NP(rwe[2],iwe)[iwe+1];if(owe){var lwe=owe[3],pwe=owe[2];if(0===MP(swe,owe[1]))return pwe;if(lwe){var dwe=lwe[3],cwe=lwe[2];if(0===MP(swe,lwe[1]))return cwe;if(dwe){var uwe=dwe[3],mwe=dwe[2];if(0===MP(swe,dwe[1]))return mwe;for(var fwe=uwe;;){if(fwe){var hwe=fwe[3],ywe=fwe[2];if(0===MP(swe,fwe[1]))return ywe;var fwe=hwe;continue}throw JH}}throw JH}throw JH}throw JH}function Jj(rwe){return rwe===Gke?0:1}function Zj(rwe,swe,iwe){var owe=iwe[4],lwe=fw(0,0|iwe[4]-iwe[3]);return[0,rwe,[0,swe[2],0|swe[4]-swe[3],swe[4]],[0,iwe[2],lwe,owe]]}function Kj(rwe,swe){return[0,rwe[1],rwe[2],swe[3]]}function Qj(rwe){return"number"==typeof rwe?_ee:rwe[1]}function $j(rwe){if("number"==typeof rwe)return 1;switch(rwe[0]){case 0:return 2;case 3:return 4;default:return 3;}}function SL(rwe,swe){return MP([0,rwe[1],rwe[2]],[0,swe[1],swe[2]])}function TL(rwe){function swe(dIe,cIe){var uIe=_w(Ow(dIe,cIe));return MC(rwe[4],uIe)}function iwe(dIe){return MC(rwe[5],dIe)}function owe(dIe,cIe){return cIe?MC(dIe,cIe[1]):rwe[6]}function lwe(dIe){var cIe=[0,Uce,iwe(dIe[2])],uIe=[0,[0,Xce,iwe(dIe[1])],cIe];return MC(rwe[3],uIe)}function pwe(dIe){var cIe=dIe[1];if(cIe)var uIe=cIe[1],mIe="number"==typeof uIe?MC(rwe[1],Mce):MC(rwe[1],uIe[1]),fIe=mIe;else var fIe=rwe[6];var hIe=[0,Fce,lwe(dIe[3])],yIe=[0,[0,Bce,fIe],[0,Vce,lwe(dIe[2])],hIe];return MC(rwe[3],yIe)}function dwe(dIe,cIe,uIe){var mIe=iwe(cIe[3][3]),fIe=[0,iwe(cIe[2][3]),mIe],hIe=[0,Rce,MC(rwe[4],fIe)],yIe=[0,Oce,pwe(cIe)],bIe=[0,[0,Yce,MC(rwe[1],dIe)],yIe,hIe],gIe=bIe.length-1;if(0==gIe)var xIe=uIe.length-1,SIe=0==xIe?[0]:RA(uIe,0,xIe);else var SIe=0==uIe.length-1?RA(bIe,0,gIe):IA(bIe,uIe);return MC(rwe[3],SIe)}function cwe(dIe){return swe(ave,dIe)}function uwe(dIe,cIe){var uIe=cIe[2],mIe=cIe[1];if("number"==typeof uIe)return 0===uIe?dwe(hae,mIe,[0]):dwe(yae,mIe,[0]);switch(uIe[0]){case 0:return 50>dIe?xwe(1+dIe,[0,mIe,uIe[1]]):LC(xwe,[0,[0,mIe,uIe[1]]]);case 1:return dwe(gae,mIe,[0,[0,bae,nve(uIe[1][1])]]);case 2:var fIe=uIe[1],hIe=[0,xae,owe(ave,fIe[3])],yIe=[0,Sae,ave(fIe[2])];return dwe(Tae,mIe,[0,[0,Eae,nve(fIe[1])],yIe,hIe]);case 3:var bIe=uIe[1],gIe=[0,Aae,ave(bIe[2])];return dwe(_ae,mIe,[0,[0,Pae,sve(bIe[1])],gIe]);case 4:return dwe(kae,mIe,[0,[0,Nae,owe(sve,uIe[1][1])]]);case 5:return dwe(wae,mIe,[0,[0,Cae,owe(sve,uIe[1][1])]]);case 6:var xIe=uIe[1],SIe=[0,vae,ave(xIe[2])];return dwe(jae,mIe,[0,[0,Iae,nve(xIe[1])],SIe]);case 7:return 50>dIe?_we(1+dIe,[0,mIe,uIe[1]]):LC(_we,[0,[0,mIe,uIe[1]]]);case 8:var EIe=uIe[1],TIe=[0,Lae,swe(ove,EIe[2])];return dwe(Rae,mIe,[0,[0,Dae,nve(EIe[1])],TIe]);case 9:return dwe(Yae,mIe,[0,[0,Oae,owe(nve,uIe[1][1])]]);case 10:return dwe(Fae,mIe,[0,[0,Mae,nve(uIe[1][1])]]);case 11:var AIe=uIe[1],PIe=[0,Vae,owe(pve,AIe[3])],_Ie=[0,Bae,owe(lve,AIe[2])];return dwe(Xae,mIe,[0,[0,Uae,pve(AIe[1])],_Ie,PIe]);case 12:var NIe=uIe[1],kIe=[0,Wae,ave(NIe[2])];return dwe(Jae,mIe,[0,[0,qae,nve(NIe[1])],kIe]);case 13:var CIe=uIe[1],wIe=[0,zae,nve(CIe[2])];return dwe(Gae,mIe,[0,[0,Hae,ave(CIe[1])],wIe]);case 14:var vIe=uIe[1],IIe=function(Bje){return 0===Bje[0]?Ive(Bje[1]):nve(Bje[1])},jIe=[0,Zae,ave(vIe[4])],LIe=[0,Kae,owe(nve,vIe[3])],DIe=[0,Qae,owe(nve,vIe[2])];return dwe(ene,mIe,[0,[0,$ae,owe(IIe,vIe[1])],DIe,LIe,jIe]);case 15:var RIe=uIe[1],OIe=RIe[1],YIe=0===OIe[0]?Ive(OIe[1]):nve(OIe[1]),MIe=[0,tne,MC(rwe[2],RIe[4])],FIe=[0,ane,ave(RIe[3])];return dwe(sne,mIe,[0,[0,rne,YIe],[0,nne,nve(RIe[2])],FIe,MIe]);case 16:var VIe=uIe[1],BIe=VIe[4]?ine:one,UIe=VIe[1],XIe=0===UIe[0]?Ive(UIe[1]):nve(UIe[1]),WIe=[0,lne,ave(VIe[3])];return dwe(BIe,mIe,[0,[0,dne,XIe],[0,pne,nve(VIe[2])],WIe]);case 17:var qIe=uIe[1],JIe=qIe[3],zIe=0===JIe[0]?pve(JIe[1]):nve(JIe[1]),HIe=[0,$se,owe(Uve,qIe[9])],GIe=[0,eie,owe(Bve,qIe[8])],ZIe=[0,tie,MC(rwe[2],qIe[7])],KIe=[0,aie,owe(pIe,qIe[6])],QIe=[0,nie,MC(rwe[2],qIe[5])],$Ie=[0,rie,MC(rwe[2],qIe[4])],eje=[0,iie,Tve(qIe[2])];return dwe(lie,mIe,[0,[0,oie,owe(sve,qIe[1])],eje,[0,sie,zIe],$Ie,QIe,KIe,ZIe,GIe,HIe]);case 18:return 50>dIe?Bwe(1+dIe,[0,mIe,uIe[1]]):LC(Bwe,[0,[0,mIe,uIe[1]]]);case 19:var tje=uIe[1],aje=[0,$ie,swe(nve,tje[7])],nje=[0,eoe,swe(yve,tje[6])],rje=[0,toe,owe(Wve,tje[5])],sje=[0,aoe,owe(Uve,tje[4])],ije=[0,noe,owe(nve,tje[3])],oje=[0,roe,bve(tje[2])];return dwe(ioe,mIe,[0,[0,soe,owe(sve,tje[1])],oje,ije,sje,rje,nje,aje]);case 20:return 50>dIe?wwe(1+dIe,[0,mIe,uIe[1]]):LC(wwe,[0,[0,mIe,uIe[1]]]);case 21:return 50>dIe?Swe(1+dIe,[0,mIe,uIe[1]]):LC(Swe,[0,[0,mIe,uIe[1]]]);case 22:return 50>dIe?Ewe(1+dIe,[0,mIe,uIe[1]]):LC(Ewe,[0,[0,mIe,uIe[1]]]);case 23:return 50>dIe?Twe(1+dIe,[0,mIe,uIe[1]]):LC(Twe,[0,[0,mIe,uIe[1]]]);case 24:var lje=uIe[1],pje=lje[1],dje=0===pje[0]?sve(pje[1]):Cve(pje[1]),cje=0===lje[3][0]?MC(rwe[1],cne):MC(rwe[1],une);return dwe(yne,mIe,[0,[0,hne,dje],[0,fne,pve(lje[2])],[0,mne,cje]]);case 25:return dwe(gne,mIe,[0,[0,bne,Bve(uIe[1])]]);case 26:var uje=uIe[1],mje=uje[3];if(mje){var fje=mje[1];if(0!==fje[0]&&!fje[2])return dwe(Sne,mIe,[0,[0,xne,owe(Cve,uje[4])]])}var hje=uje[2];if(hje){var yje=hje[1];switch(yje[0]){case 0:var bje=dve(yje[1]);break;case 1:var bje=cve(yje[1]);break;case 2:var bje=uve(yje[1]);break;case 3:var bje=Dve(yje[1]);break;case 4:var bje=hve(yje[1]);break;default:var bje=xve(yje[1]);}var gje=bje}else var gje=rwe[6];var xje=[0,Ene,owe(Cve,uje[4])],Sje=[0,Tne,fve(uje[3])];return dwe(_ne,mIe,[0,[0,Pne,MC(rwe[2],uje[1])],[0,Ane,gje],Sje,xje]);case 27:var Eje=uIe[1],Tje=Eje[2];if(Tje){var Aje=Tje[1];if(0!==Aje[0]&&!Aje[2]){var Pje=mve(Eje[4]),_je=[0,Nne,MC(rwe[1],Pje)];return dwe(Cne,mIe,[0,[0,kne,owe(Cve,Eje[3])],_je])}}var Nje=mve(Eje[4]),kje=[0,wne,MC(rwe[1],Nje)],Cje=[0,vne,owe(Cve,Eje[3])],wje=[0,Ine,fve(Eje[2])];return dwe(Lne,mIe,[0,[0,jne,owe(ave,Eje[1])],wje,Cje,kje]);case 28:var vje=uIe[1],Ije=vje[1],jje=0===Ije[0]?ave(Ije[1]):nve(Ije[1]),Lje=mve(vje[2]);return dwe(One,mIe,[0,[0,Rne,jje],[0,Dne,MC(rwe[1],Lje)]]);default:var Dje=uIe[1],Rje=Dje[3],Oje=Ow(function(Bje){switch(Bje[0]){case 0:var Uje=Bje[1],Xje=Uje[1],Wje=Uje[3],qje=Uje[2],Jje=qje?Kj(Wje[1],qje[1][1]):Wje[1],zje=qje?qje[1]:Wje;if(Xje)switch(Xje[1]){case 0:var Hje=MC(rwe[1],Ece),Gje=1;break;case 1:var Hje=MC(rwe[1],Tce),Gje=1;break;default:var Gje=0;}else var Gje=0;if(!Gje)var Hje=rwe[6];var Zje=[0,Pce,sve(zje)];return dwe(Nce,Jje,[0,[0,_ce,sve(Wje)],Zje,[0,Ace,Hje]]);case 1:var Kje=Bje[1],Qje=[0,[0,bce,sve(Kje)]];return dwe(gce,Kje[1],Qje);default:var $je=Bje[1],eLe=[0,[0,xce,sve($je[2])]];return dwe(Sce,$je[1],eLe);}},Rje);switch(Dje[1]){case 0:var Yje=Yne;break;case 1:var Yje=Mne;break;default:var Yje=Fne;}var Mje=[0,Vne,MC(rwe[1],Yje)],Fje=[0,Bne,Cve(Dje[2])],Vje=_w(Oje);return dwe(Xne,mIe,[0,[0,Une,MC(rwe[4],Vje)],Fje,Mje]);}}function mwe(dIe,cIe){var uIe=cIe[2],mIe=cIe[1];if("number"==typeof uIe)return 0===uIe?dwe(Wne,mIe,[0]):dwe(qne,mIe,[0]);switch(uIe[0]){case 0:var fIe=uIe[1][1];return dwe(zne,mIe,[0,[0,Jne,swe(function(Eje){return owe(Nve,Eje)},fIe)]]);case 1:return dwe(Gne,mIe,[0,[0,Hne,swe(Pve,uIe[1][1])]]);case 2:return 50>dIe?fwe(1+dIe,[0,mIe,uIe[1]]):LC(fwe,[0,[0,mIe,uIe[1]]]);case 3:var hIe=uIe[1],yIe=hIe[3],bIe=0===yIe[0]?pve(yIe[1]):nve(yIe[1]),gIe=[0,Zne,owe(Uve,hIe[9])],xIe=[0,Kne,owe(Bve,hIe[8])],SIe=[0,Qne,MC(rwe[2],hIe[7])],EIe=[0,$ne,owe(pIe,hIe[6])],TIe=[0,ere,MC(rwe[2],hIe[5])],AIe=[0,tre,MC(rwe[2],hIe[4])],PIe=[0,nre,Tve(hIe[2])];return dwe(sre,mIe,[0,[0,rre,owe(sve,hIe[1])],PIe,[0,are,bIe],AIe,TIe,EIe,SIe,xIe,gIe]);case 4:return dwe(ore,mIe,[0,[0,ire,swe(nve,uIe[1][1])]]);case 5:var _Ie=uIe[1];if(7<=_Ie[1])return dwe(pre,mIe,[0,[0,lre,nve(_Ie[3])]]);switch(_Ie[1]){case 0:var NIe=dre;break;case 1:var NIe=cre;break;case 2:var NIe=ure;break;case 3:var NIe=mre;break;case 4:var NIe=fre;break;case 5:var NIe=hre;break;case 6:var NIe=yre;break;default:var NIe=QC(bre);}var kIe=[0,gre,nve(_Ie[3])],CIe=[0,xre,MC(rwe[2],_Ie[2])];return dwe(Ere,mIe,[0,[0,Sre,MC(rwe[1],NIe)],CIe,kIe]);case 6:var wIe=uIe[1];switch(wIe[1]){case 0:var vIe=Tre;break;case 1:var vIe=Are;break;case 2:var vIe=Pre;break;case 3:var vIe=_re;break;case 4:var vIe=Nre;break;case 5:var vIe=kre;break;case 6:var vIe=Cre;break;case 7:var vIe=wre;break;case 8:var vIe=vre;break;case 9:var vIe=Ire;break;case 10:var vIe=jre;break;case 11:var vIe=Lre;break;case 12:var vIe=Dre;break;case 13:var vIe=Rre;break;case 14:var vIe=Ore;break;case 15:var vIe=Yre;break;case 16:var vIe=Mre;break;case 17:var vIe=Fre;break;case 18:var vIe=Vre;break;case 19:var vIe=Bre;break;case 20:var vIe=Ure;break;default:var vIe=Xre;}var IIe=[0,Wre,nve(wIe[3])],jIe=[0,qre,nve(wIe[2])];return dwe(zre,mIe,[0,[0,Jre,MC(rwe[1],vIe)],jIe,IIe]);case 7:var LIe=uIe[1];switch(LIe[1]){case 0:var DIe=Hre;break;case 1:var DIe=Gre;break;case 2:var DIe=Zre;break;case 3:var DIe=Kre;break;case 4:var DIe=Qre;break;case 5:var DIe=$re;break;case 6:var DIe=ese;break;case 7:var DIe=tse;break;case 8:var DIe=ase;break;case 9:var DIe=nse;break;case 10:var DIe=rse;break;case 11:var DIe=sse;break;default:var DIe=ise;}var RIe=[0,ose,nve(LIe[3])],OIe=[0,lse,Eve(LIe[2])];return dwe(dse,mIe,[0,[0,pse,MC(rwe[1],DIe)],OIe,RIe]);case 8:var YIe=uIe[1],MIe=0===YIe[1]?mse:cse,FIe=[0,fse,MC(rwe[2],YIe[3])],VIe=[0,hse,nve(YIe[2])];return dwe(bse,mIe,[0,[0,yse,MC(rwe[1],MIe)],VIe,FIe]);case 9:var BIe=uIe[1],UIe=0===BIe[1]?xse:gse,XIe=[0,Sse,nve(BIe[3])],WIe=[0,Ese,nve(BIe[2])];return dwe(Ase,mIe,[0,[0,Tse,MC(rwe[1],UIe)],WIe,XIe]);case 10:var qIe=uIe[1],JIe=[0,Pse,nve(qIe[3])],zIe=[0,_se,nve(qIe[2])];return dwe(kse,mIe,[0,[0,Nse,nve(qIe[1])],zIe,JIe]);case 11:var HIe=uIe[1],GIe=[0,Cse,swe(Nve,HIe[2])];return dwe(vse,mIe,[0,[0,wse,nve(HIe[1])],GIe]);case 12:var ZIe=uIe[1],KIe=[0,Ise,swe(Nve,ZIe[2])];return dwe(Lse,mIe,[0,[0,jse,nve(ZIe[1])],KIe]);case 13:var QIe=uIe[1],$Ie=QIe[2],eje=0===$Ie[0]?sve($Ie[1]):nve($Ie[1]),tje=[0,Dse,MC(rwe[2],QIe[3])];return dwe(Yse,mIe,[0,[0,Ose,nve(QIe[1])],[0,Rse,eje],tje]);case 14:var aje=uIe[1],nje=[0,Mse,MC(rwe[2],aje[2])];return dwe(Vse,mIe,[0,[0,Fse,owe(nve,aje[1])],nje]);case 15:var rje=uIe[1],sje=[0,Bse,owe(nve,rje[2])];return dwe(Xse,mIe,[0,[0,Use,swe(kve,rje[1])],sje]);case 16:var ije=uIe[1],oje=[0,Wse,owe(nve,ije[2])];return dwe(Jse,mIe,[0,[0,qse,swe(kve,ije[1])],oje]);case 17:return 50>dIe?hwe(1+dIe,uIe[1]):LC(hwe,[0,uIe[1]]);case 18:return 50>dIe?Mwe(1+dIe,[0,mIe,uIe[1]]):LC(Mwe,[0,[0,mIe,uIe[1]]]);case 19:return 50>dIe?Fwe(1+dIe,[0,mIe,uIe[1]]):LC(Fwe,[0,[0,mIe,uIe[1]]]);case 20:var lje=uIe[1],pje=[0,Gle,wve(lje[2])];return dwe(Kle,mIe,[0,[0,Zle,nve(lje[1])],pje]);case 21:return 50>dIe?tve(1+dIe,[0,mIe,uIe[1]]):LC(tve,[0,[0,mIe,uIe[1]]]);case 22:var dje=uIe[1],cje=[0,ooe,swe(nve,dje[7])],uje=[0,loe,swe(yve,dje[6])],mje=[0,poe,owe(Wve,dje[5])],fje=[0,doe,owe(Uve,dje[4])],hje=[0,coe,owe(nve,dje[3])],yje=[0,uoe,bve(dje[2])];return dwe(foe,mIe,[0,[0,moe,owe(sve,dje[1])],yje,hje,fje,mje,uje,cje]);case 23:var bje=uIe[1],gje=[0,zse,Bve(bje[2])];return dwe(Gse,mIe,[0,[0,Hse,nve(bje[1])],gje]);default:var xje=uIe[1],Sje=[0,Zse,sve(xje[2])];return dwe(Qse,mIe,[0,[0,Kse,sve(xje[1])],Sje]);}}function fwe(dIe,cIe){var uIe=cIe[2],mIe=uIe[3],fIe=0===mIe[0]?pve(mIe[1]):nve(mIe[1]),hIe=[0,pie,owe(Uve,uIe[9])],yIe=[0,die,owe(Bve,uIe[8])],bIe=[0,cie,MC(rwe[2],uIe[7])],gIe=[0,uie,owe(pIe,uIe[6])],xIe=[0,mie,MC(rwe[2],uIe[5])],SIe=[0,fie,MC(rwe[2],uIe[4])],EIe=[0,yie,Tve(uIe[2])],TIe=[0,[0,bie,owe(sve,uIe[1])],EIe,[0,hie,fIe],SIe,xIe,gIe,bIe,yIe,hIe];return dwe(gie,cIe[1],TIe)}function hwe(dIe,cIe){var uIe=[0,xie,MC(rwe[2],0)],mIe=[0,Sie,rwe[6]],fIe=[0,[0,Eie,MC(rwe[1],cIe[2])],mIe,uIe];return dwe(Tie,cIe[1],fIe)}function ywe(dIe,cIe,uIe){var mIe=[0,Aie,MC(rwe[2],uIe[3])],fIe=[0,Pie,owe(Bve,uIe[2])];return dwe(Nie,cIe,[0,[0,_ie,MC(rwe[1],uIe[1][2])],fIe,mIe])}function bwe(dIe,cIe){var uIe=cIe[2],mIe=[0,kie,swe(ave,uIe[2])],fIe=[0,[0,Cie,owe(nve,uIe[1])],mIe];return dwe(wie,cIe[1],fIe)}function gwe(dIe,cIe){var uIe=cIe[2],mIe=[0,vie,pve(uIe[2])],fIe=[0,[0,Iie,Eve(uIe[1])],mIe];return dwe(jie,cIe[1],fIe)}function xwe(dIe,cIe){var uIe=[0,[0,Lie,cwe(cIe[2][1])]];return dwe(Die,cIe[1],uIe)}function Swe(dIe,cIe){var uIe=cIe[2],mIe=uIe[2],fIe=mIe?mIe[1][1]:uIe[1][1],hIe=Kj(uIe[1][1],fIe),yIe=[0,[0,Rie,ive(hIe,[0,uIe[1],uIe[2],0])]];return dwe(Oie,cIe[1],yIe)}function Ewe(dIe,cIe){var uIe=cIe[2],mIe=Kj(uIe[1][1],uIe[2][1]),fIe=[0,Yie,owe(pIe,uIe[3])],hIe=[0,[0,Mie,ive(mIe,[0,uIe[1],[0,uIe[2]],0])],fIe];return dwe(Fie,cIe[1],hIe)}function Twe(dIe,cIe){var uIe=cIe[2],mIe=[0,Vie,swe(Sve,uIe[4])],fIe=[0,Bie,Mve(uIe[3])],hIe=[0,Uie,owe(Uve,uIe[2])],yIe=[0,[0,Xie,sve(uIe[1])],hIe,fIe,mIe];return dwe(Wie,cIe[1],yIe)}function Awe(dIe,cIe){return 0===cIe?Jie:qie}function Pwe(dIe,cIe){if(cIe){var uIe=cIe[1];if(0===uIe[0])return swe(oIe,uIe[1]);var mIe=uIe[2];if(mIe){var fIe=[0,[0,zie,sve(mIe[1])]],hIe=[0,dwe(Hie,uIe[1],fIe)];return MC(rwe[4],hIe)}return MC(rwe[4],[0])}return MC(rwe[4],[0])}function _we(dIe,cIe){var uIe=cIe[2],mIe=[0,Gie,Dve(uIe[3])],fIe=[0,Zie,owe(Uve,uIe[2])],hIe=[0,[0,Kie,sve(uIe[1])],fIe,mIe];return dwe(Qie,cIe[1],hIe)}function Nwe(dIe,cIe){var uIe=cIe[2],mIe=[0,hoe,owe(Wve,uIe[2])],fIe=[0,[0,yoe,sve(uIe[1])],mIe];return dwe(boe,cIe[1],fIe)}function kwe(dIe,cIe){var uIe=[0,[0,goe,swe(gve,cIe[2][1])]];return dwe(xoe,cIe[1],uIe)}function Cwe(dIe,cIe){if(0===cIe[0]){var uIe=cIe[1],mIe=uIe[2],fIe=mIe[2];switch(fIe[0]){case 0:var hIe=[0,Cve(fIe[1]),0];break;case 1:var hIe=[0,sve(fIe[1]),0];break;default:var hIe=[0,nve(fIe[1]),1];}switch(mIe[1]){case 0:var yIe=Soe;break;case 1:var yIe=Eoe;break;case 2:var yIe=Toe;break;default:var yIe=Aoe;}var bIe=[0,Poe,swe(nve,mIe[5])],gIe=[0,_oe,MC(rwe[2],hIe[2])],xIe=[0,Noe,MC(rwe[2],mIe[4])],SIe=[0,koe,MC(rwe[1],yIe)],EIe=[0,Coe,rve(mIe[3])];return dwe(voe,uIe[1],[0,[0,woe,hIe[1]],EIe,SIe,xIe,gIe,bIe])}var TIe=cIe[1],AIe=TIe[2],PIe=AIe[1];switch(PIe[0]){case 0:var _Ie=[0,Cve(PIe[1]),0];break;case 1:var _Ie=[0,sve(PIe[1]),0];break;default:var _Ie=[0,nve(PIe[1]),1];}var NIe=[0,Ioe,owe(Lve,AIe[5])],kIe=[0,joe,MC(rwe[2],AIe[4])],CIe=[0,Loe,MC(rwe[2],_Ie[2])],wIe=[0,Doe,owe(Bve,AIe[3])],vIe=[0,Roe,owe(nve,AIe[2])];return dwe(Yoe,TIe[1],[0,[0,Ooe,_Ie[1]],vIe,wIe,CIe,kIe,NIe])}function wwe(dIe,cIe){var uIe=cIe[2],mIe=[0,Moe,swe(Sve,uIe[4])],fIe=[0,Foe,Mve(uIe[3])],hIe=[0,Voe,owe(Uve,uIe[2])],yIe=[0,[0,Boe,sve(uIe[1])],hIe,fIe,mIe];return dwe(Uoe,cIe[1],yIe)}function vwe(dIe,cIe){var uIe=cIe[2],mIe=uIe[1],fIe=0===mIe[0]?sve(mIe[1]):Fve(mIe[1]),hIe=[0,[0,Woe,fIe],[0,Xoe,owe(Wve,uIe[2])]];return dwe(qoe,cIe[1],hIe)}function Iwe(dIe,cIe){var uIe=cIe[2],mIe=cIe[1];switch(uIe[0]){case 0:var fIe=uIe[1],hIe=[0,Joe,owe(Bve,fIe[2])];return dwe(Hoe,mIe,[0,[0,zoe,swe(_ve,fIe[1])],hIe]);case 1:var yIe=uIe[1],bIe=[0,Goe,owe(Bve,yIe[2])],gIe=yIe[1];return dwe(Koe,mIe,[0,[0,Zoe,swe(function(EIe){return owe(Ave,EIe)},gIe)],bIe]);case 2:var xIe=uIe[1],SIe=[0,Qoe,nve(xIe[2])];return dwe(ele,mIe,[0,[0,$oe,Eve(xIe[1])],SIe]);case 3:return 50>dIe?ywe(1+dIe,mIe,uIe[1]):LC(ywe,[0,mIe,uIe[1]]);default:return 50>dIe?mwe(1+dIe,uIe[1]):LC(mwe,[0,uIe[1]]);}}function jwe(dIe,cIe){var uIe=cIe[2],mIe=cIe[1];if(uIe){var fIe=uIe[1],hIe=[0,[0,tle,Eve(fIe[2][1])]],yIe=dwe(ale,fIe[1],hIe),bIe=_w(Rw([0,yIe,Rw(Ow(Eve,mIe))]));return MC(rwe[4],bIe)}return swe(Eve,mIe)}function Lwe(dIe,cIe){if(0===cIe[0])return 50>dIe?Iwe(1+dIe,cIe[1]):LC(Iwe,[0,cIe[1]]);var uIe=cIe[1],mIe=[0,[0,nle,Eve(uIe[2][1])]];return dwe(rle,uIe[1],mIe)}function Dwe(dIe,cIe){if(0===cIe[0]){var uIe=cIe[1],mIe=uIe[2],fIe=mIe[1];switch(fIe[0]){case 0:var hIe=[0,Cve(fIe[1]),0];break;case 1:var hIe=[0,sve(fIe[1]),0];break;default:var hIe=[0,nve(fIe[1]),1];}var yIe=mIe[2];switch(yIe[0]){case 0:var bIe=[0,nve(yIe[1]),sle];break;case 1:var bIe=[0,rve(yIe[1]),ile];break;default:var bIe=[0,rve(yIe[1]),ole];}var gIe=[0,lle,MC(rwe[2],hIe[2])],xIe=[0,ple,MC(rwe[2],mIe[4])],SIe=[0,dle,MC(rwe[2],mIe[3])],EIe=[0,cle,MC(rwe[1],bIe[2])];return dwe(fle,uIe[1],[0,[0,mle,hIe[1]],[0,ule,bIe[1]],EIe,SIe,xIe,gIe])}var TIe=cIe[1],AIe=[0,[0,hle,nve(TIe[2][1])]];return dwe(yle,TIe[1],AIe)}function Rwe(dIe,cIe){if(0===cIe[0]){var uIe=cIe[1],mIe=uIe[2],fIe=mIe[1];switch(fIe[0]){case 0:var hIe=[0,Cve(fIe[1]),0];break;case 1:var hIe=[0,sve(fIe[1]),0];break;default:var hIe=[0,nve(fIe[1]),1];}var yIe=[0,ble,MC(rwe[2],hIe[2])],bIe=[0,gle,MC(rwe[2],mIe[3])],gIe=[0,xle,MC(rwe[2],0)],xIe=[0,Ele,MC(rwe[1],Sle)],SIe=[0,Tle,Eve(mIe[2])];return dwe(Ple,uIe[1],[0,[0,Ale,hIe[1]],SIe,xIe,gIe,bIe,yIe])}var EIe=cIe[1],TIe=[0,[0,_le,Eve(EIe[2][1])]];return dwe(Nle,EIe[1],TIe)}function Owe(dIe,cIe){if(0===cIe[0])return 50>dIe?mwe(1+dIe,cIe[1]):LC(mwe,[0,cIe[1]]);var uIe=cIe[1],mIe=[0,[0,kle,nve(uIe[2][1])]];return dwe(Cle,uIe[1],mIe)}function Ywe(dIe,cIe){var uIe=cIe[2],mIe=[0,wle,MC(rwe[2],uIe[3])],fIe=[0,vle,nve(uIe[2])],hIe=[0,[0,Ile,Eve(uIe[1])],fIe,mIe];return dwe(jle,cIe[1],hIe)}function Mwe(dIe,cIe){var uIe=cIe[2],mIe=uIe[2],fIe=uIe[1],hIe=cIe[1];if("number"==typeof fIe)var yIe=rwe[6];else switch(fIe[0]){case 0:var yIe=MC(rwe[1],fIe[1]);break;case 1:var yIe=MC(rwe[2],fIe[1]);break;case 2:var yIe=MC(rwe[5],fIe[1]);break;default:var bIe=fIe[1],yIe=UC(rwe[7],hIe,bIe[1],bIe[2]);}if("number"==typeof fIe)var gIe=0;else if(3===fIe[0])var xIe=fIe[1],SIe=[0,Lle,MC(rwe[1],xIe[2])],EIe=[0,[0,Dle,MC(rwe[1],xIe[1])],SIe],TIe=[0,Rle,MC(rwe[3],EIe)],AIe=[0,[0,Yle,yIe],[0,Ole,MC(rwe[1],mIe)],TIe],gIe=1;else var gIe=0;if(!gIe)var AIe=[0,[0,Fle,yIe],[0,Mle,MC(rwe[1],mIe)]];return dwe(Vle,hIe,AIe)}function Fwe(dIe,cIe){var uIe=cIe[2],mIe=[0,Ble,swe(nve,uIe[2])],fIe=[0,[0,Ule,swe(vve,uIe[1])],mIe];return dwe(Xle,cIe[1],fIe)}function Vwe(dIe,cIe){var uIe=cIe[2],mIe=[0,Wle,MC(rwe[1],uIe[1][2])],fIe=[0,[0,qle,MC(rwe[1],uIe[1][1])],mIe],hIe=MC(rwe[3],fIe),yIe=[0,[0,zle,hIe],[0,Jle,MC(rwe[2],uIe[2])]];return dwe(Hle,cIe[1],yIe)}function Bwe(dIe,cIe){var uIe=cIe[2];switch(uIe[2]){case 0:var mIe=Qle;break;case 1:var mIe=$le;break;default:var mIe=epe;}var fIe=[0,tpe,MC(rwe[1],mIe)],hIe=[0,[0,ape,swe(jve,uIe[1])],fIe];return dwe(npe,cIe[1],hIe)}function Uwe(dIe,cIe){var uIe=cIe[2],mIe=[0,rpe,owe(nve,uIe[2])],fIe=[0,[0,spe,Eve(uIe[1])],mIe];return dwe(ipe,cIe[1],fIe)}function Xwe(dIe,cIe){return 0===cIe[2]?MC(rwe[1],lpe):MC(rwe[1],ope)}function Wwe(dIe,cIe){var uIe=cIe[2],mIe=cIe[1];if("number"==typeof uIe)return 0===uIe?dwe(ppe,mIe,[0]):1===uIe?dwe(dpe,mIe,[0]):2===uIe?dwe(cpe,mIe,[0]):3===uIe?dwe(upe,mIe,[0]):4===uIe?dwe(mpe,mIe,[0]):5===uIe?dwe(fpe,mIe,[0]):6===uIe?dwe(hpe,mIe,[0]):7===uIe?dwe(ype,mIe,[0]):dwe(kde,mIe,[0]);switch(uIe[0]){case 0:return dwe(gpe,mIe,[0,[0,bpe,Dve(uIe[1])]]);case 1:return 50>dIe?qwe(1+dIe,[0,mIe,uIe[1]]):LC(qwe,[0,[0,mIe,uIe[1]]]);case 2:return 50>dIe?Hwe(1+dIe,[0,mIe,uIe[1]]):LC(Hwe,[0,[0,mIe,uIe[1]]]);case 3:return dwe(nde,mIe,[0,[0,ade,Dve(uIe[1])]]);case 4:return 50>dIe?Zwe(1+dIe,[0,mIe,uIe[1]]):LC(Zwe,[0,[0,mIe,uIe[1]]]);case 5:return dwe(cde,mIe,[0,[0,dde,swe(Dve,[0,uIe[1],[0,uIe[2],uIe[3]]])]]);case 6:return dwe(mde,mIe,[0,[0,ude,swe(Dve,[0,uIe[1],[0,uIe[2],uIe[3]]])]]);case 7:return dwe(hde,mIe,[0,[0,fde,Dve(uIe[1])]]);case 8:return dwe(bde,mIe,[0,[0,yde,swe(Dve,uIe[1])]]);case 9:var fIe=uIe[1],hIe=[0,gde,MC(rwe[1],fIe[2])];return dwe(Sde,mIe,[0,[0,xde,MC(rwe[1],fIe[1])],hIe]);case 10:var yIe=uIe[1],bIe=[0,Ede,MC(rwe[1],yIe[2])];return dwe(Ade,mIe,[0,[0,Tde,MC(rwe[5],yIe[1])],bIe]);default:var gIe=uIe[1],xIe=[0,Pde,MC(rwe[1],gIe[2])];return dwe(Nde,mIe,[0,[0,_de,MC(rwe[2],gIe[1])],xIe]);}}function qwe(dIe,cIe){var uIe=cIe[2],mIe=uIe[1],fIe=[0,xpe,owe(Uve,uIe[3])],hIe=[0,Spe,owe(Yve,mIe[2])],yIe=[0,Epe,Dve(uIe[2])],bIe=[0,[0,Tpe,swe(Ove,mIe[1])],yIe,hIe,fIe];return dwe(Ape,cIe[1],bIe)}function Jwe(dIe,cIe){var uIe=cIe[2],mIe=[0,Ppe,MC(rwe[2],uIe[3])],fIe=[0,_pe,Dve(uIe[2])],hIe=[0,[0,Npe,owe(sve,uIe[1])],fIe,mIe];return dwe(kpe,cIe[1],hIe)}function zwe(dIe,cIe){return 50>dIe?Jwe(1+dIe,cIe[2][1]):LC(Jwe,[0,cIe[2][1]])}function Hwe(dIe,cIe){var uIe=cIe[2],mIe=uIe[2],fIe=Mw(function(TIe,AIe){var PIe=TIe[3],_Ie=TIe[2],NIe=TIe[1];switch(AIe[0]){case 0:var kIe=AIe[1],CIe=kIe[2],wIe=CIe[1];switch(wIe[0]){case 0:var vIe=Cve(wIe[1]);break;case 1:var vIe=sve(wIe[1]);break;default:var vIe=QC(Dpe);}var IIe=CIe[2];switch(IIe[0]){case 0:var jIe=[0,Dve(IIe[1]),Rpe];break;case 1:var LIe=IIe[1],jIe=[0,Rve([0,LIe[1],LIe[2]]),Ope];break;default:var DIe=IIe[1],jIe=[0,Rve([0,DIe[1],DIe[2]]),Ype];}var RIe=[0,Mpe,MC(rwe[1],jIe[2])],OIe=[0,Fpe,owe(Lve,CIe[6])],YIe=[0,Vpe,MC(rwe[2],CIe[4])],MIe=[0,Bpe,MC(rwe[2],CIe[3])];return[0,[0,dwe(Wpe,kIe[1],[0,[0,Xpe,vIe],[0,Upe,jIe[1]],MIe,YIe,OIe,RIe]),NIe],_Ie,PIe];case 1:var FIe=AIe[1],VIe=[0,[0,qpe,Vve(FIe[2][1])]];return[0,[0,dwe(Jpe,FIe[1],VIe),NIe],_Ie,PIe];case 2:var BIe=AIe[1],UIe=BIe[2],XIe=[0,zpe,owe(Lve,UIe[5])],WIe=[0,Hpe,MC(rwe[2],UIe[4])],qIe=[0,Gpe,Dve(UIe[3])],JIe=[0,Zpe,Dve(UIe[2])],zIe=[0,[0,Kpe,owe(sve,UIe[1])],JIe,qIe,WIe,XIe];return[0,NIe,[0,dwe(Qpe,BIe[1],zIe),_Ie],PIe];default:var HIe=AIe[1],GIe=HIe[2],ZIe=[0,$pe,MC(rwe[2],GIe[2])],KIe=[0,[0,ede,Rve(GIe[1])],ZIe];return[0,NIe,_Ie,[0,dwe(tde,HIe[1],KIe),PIe]];}},Cpe,mIe),hIe=_w(Rw(fIe[3])),yIe=[0,wpe,MC(rwe[4],hIe)],bIe=_w(Rw(fIe[2])),gIe=[0,vpe,MC(rwe[4],bIe)],xIe=_w(Rw(fIe[1])),SIe=[0,Ipe,MC(rwe[4],xIe)],EIe=[0,[0,jpe,MC(rwe[2],uIe[1])],SIe,gIe,yIe];return dwe(Lpe,cIe[1],EIe)}function Gwe(dIe,cIe){var uIe=cIe[2],mIe=uIe[1],fIe=0===mIe[0]?sve(mIe[1]):Fve(mIe[1]),hIe=[0,[0,sde,fIe],[0,rde,sve(uIe[2])]];return dwe(ide,cIe[1],hIe)}function Zwe(dIe,cIe){var uIe=cIe[2],mIe=uIe[1],fIe=0===mIe[0]?sve(mIe[1]):Fve(mIe[1]),hIe=[0,[0,lde,fIe],[0,ode,owe(Wve,uIe[2])]];return dwe(pde,cIe[1],hIe)}function Kwe(dIe,cIe){var uIe=[0,[0,Cde,Dve(cIe[2])]];return dwe(wde,cIe[1],uIe)}function Qwe(dIe,cIe){var uIe=[0,[0,vde,swe(Xve,cIe[2][1])]];return dwe(Ide,cIe[1],uIe)}function $we(dIe,cIe){var uIe=cIe[2],mIe=[0,jde,owe(Dve,uIe[4])],fIe=[0,Lde,owe(Lve,uIe[3])],hIe=[0,Dde,owe(Bve,uIe[2])],yIe=[0,[0,Rde,MC(rwe[1],uIe[1])],hIe,fIe,mIe];return dwe(Ode,cIe[1],yIe)}function eve(dIe,cIe){var uIe=[0,[0,Yde,swe(Dve,cIe[2][1])]];return dwe(Mde,cIe[1],uIe)}function tve(dIe,cIe){var uIe=cIe[2],mIe=[0,Fde,swe(tIe,uIe[3])],fIe=[0,Vde,owe(zve,uIe[2])],hIe=uIe[1],yIe=hIe[2],bIe=[0,Xde,MC(rwe[2],yIe[2])],gIe=[0,Wde,swe(Jve,yIe[3])],xIe=[0,[0,qde,aIe(yIe[1])],gIe,bIe],SIe=[0,[0,Bde,dwe(Jde,hIe[1],xIe)],fIe,mIe];return dwe(Ude,cIe[1],SIe)}function ave(dIe){return IC(uwe(0,dIe))}function nve(dIe){return IC(mwe(0,dIe))}function rve(dIe){return IC(fwe(0,dIe))}function sve(dIe){return IC(hwe(0,dIe))}function ive(dIe,cIe){return IC(ywe(0,dIe,cIe))}function ove(dIe){return IC(bwe(0,dIe))}function lve(dIe){return IC(gwe(0,dIe))}function pve(dIe){return IC(xwe(0,dIe))}function dve(dIe){return IC(Swe(0,dIe))}function cve(dIe){return IC(Ewe(0,dIe))}function uve(dIe){return IC(Twe(0,dIe))}function mve(dIe){return IC(Awe(0,dIe))}function fve(dIe){return IC(Pwe(0,dIe))}function hve(dIe){return IC(_we(0,dIe))}function yve(dIe){return IC(Nwe(0,dIe))}function bve(dIe){return IC(kwe(0,dIe))}function gve(dIe){return IC(Cwe(0,dIe))}function xve(dIe){return IC(wwe(0,dIe))}function Sve(dIe){return IC(vwe(0,dIe))}function Eve(dIe){return IC(Iwe(0,dIe))}function Tve(dIe){return IC(jwe(0,dIe))}function Ave(dIe){return IC(Lwe(0,dIe))}function Pve(dIe){return IC(Dwe(0,dIe))}function _ve(dIe){return IC(Rwe(0,dIe))}function Nve(dIe){return IC(Owe(0,dIe))}function kve(dIe){return IC(Ywe(0,dIe))}function Cve(dIe){return IC(Mwe(0,dIe))}function wve(dIe){return IC(Fwe(0,dIe))}function vve(dIe){return IC(Vwe(0,dIe))}function Ive(dIe){return IC(Bwe(0,dIe))}function jve(dIe){return IC(Uwe(0,dIe))}function Lve(dIe){return IC(Xwe(0,dIe))}function Dve(dIe){return IC(Wwe(0,dIe))}function Rve(dIe){return IC(qwe(0,dIe))}function Ove(dIe){return IC(Jwe(0,dIe))}function Yve(dIe){return IC(zwe(0,dIe))}function Mve(dIe){return IC(Hwe(0,dIe))}function Fve(dIe){return IC(Gwe(0,dIe))}function Vve(dIe){return IC(Zwe(0,dIe))}function Bve(dIe){return IC(Kwe(0,dIe))}function Uve(dIe){return IC(Qwe(0,dIe))}function Xve(dIe){return IC($we(0,dIe))}function Wve(dIe){return IC(eve(0,dIe))}function qve(dIe){return IC(tve(0,dIe))}function Jve(dIe){if(0===dIe[0]){var cIe=dIe[1],uIe=cIe[2],mIe=uIe[1],fIe=0===mIe[0]?iIe(mIe[1]):sIe(mIe[1]),hIe=[0,[0,Zde,fIe],[0,Gde,owe(nIe,uIe[2])]];return dwe(Kde,cIe[1],hIe)}var yIe=dIe[1],bIe=[0,[0,Qde,nve(yIe[2][1])]];return dwe($de,yIe[1],bIe)}function zve(dIe){var cIe=[0,[0,zde,aIe(dIe[2][1])]];return dwe(Hde,dIe[1],cIe)}function Hve(dIe,cIe){var uIe=cIe[2],mIe=cIe[1];switch(uIe[0]){case 0:return qve([0,mIe,uIe[1]]);case 1:return 50>dIe?Kve(1+dIe,[0,mIe,uIe[1]]):LC(Kve,[0,[0,mIe,uIe[1]]]);default:var fIe=uIe[1],hIe=[0,nce,MC(rwe[1],fIe[2])];return dwe(sce,mIe,[0,[0,rce,MC(rwe[1],fIe[1])],hIe]);}}function Gve(dIe,cIe){switch(cIe[0]){case 0:return 50>dIe?eIe(1+dIe,cIe[1]):LC(eIe,[0,cIe[1]]);case 1:return 50>dIe?$ve(1+dIe,cIe[1]):LC($ve,[0,cIe[1]]);default:return 50>dIe?Qve(1+dIe,cIe[1]):LC(Qve,[0,cIe[1]]);}}function Zve(dIe,cIe){return 0===cIe[0]?Cve([0,cIe[1],cIe[2]]):50>dIe?Kve(1+dIe,[0,cIe[1],cIe[2]]):LC(Kve,[0,[0,cIe[1],cIe[2]]])}function Kve(dIe,cIe){var uIe=cIe[2][1],mIe=0===uIe[0]?nve(uIe[1]):dwe(ece,uIe[1],[0]);return dwe(ace,cIe[1],[0,[0,tce,mIe]])}function Qve(dIe,cIe){var uIe=cIe[2],mIe=uIe[1],fIe=0===mIe[0]?iIe(mIe[1]):rIe(mIe[1]),hIe=[0,[0,oce,fIe],[0,ice,iIe(uIe[2])]];return dwe(lce,cIe[1],hIe)}function $ve(dIe,cIe){var uIe=cIe[2],mIe=[0,pce,iIe(uIe[2])],fIe=[0,[0,dce,iIe(uIe[1])],mIe];return dwe(cce,cIe[1],fIe)}function eIe(dIe,cIe){var uIe=[0,[0,uce,MC(rwe[1],cIe[2][1])]];return dwe(mce,cIe[1],uIe)}function tIe(dIe){return IC(Hve(0,dIe))}function aIe(dIe){return IC(Gve(0,dIe))}function nIe(dIe){return IC(Zve(0,dIe))}function rIe(dIe){return IC(Qve(0,dIe))}function sIe(dIe){return IC($ve(0,dIe))}function iIe(dIe){return IC(eIe(0,dIe))}function oIe(dIe){var cIe=dIe[2],uIe=cIe[2],mIe=uIe?sve(uIe[1]):sve(cIe[1]),fIe=[0,[0,hce,sve(cIe[1])],[0,fce,mIe]];return dwe(yce,dIe[1],fIe)}function lIe(dIe){var cIe=dIe[2],uIe=0===cIe[0]?[0,kce,cIe[1]]:[0,Cce,cIe[1]],mIe=[0,[0,wce,MC(rwe[1],uIe[2])]];return dwe(uIe[1],dIe[1],mIe)}function pIe(dIe){var cIe=dIe[2],uIe=cIe?[0,Ice,[0,[0,vce,nve(cIe[1])]]]:[0,jce,[0]];return dwe(uIe[1],dIe[1],uIe[2])}return[0,function(cIe){var uIe=[0,uae,swe(lIe,cIe[3])],mIe=[0,[0,mae,cwe(cIe[2])],uIe];return dwe(fae,cIe[1],mIe)},nve,function(cIe){return swe(function(uIe){var mIe=uIe[2];if("number"==typeof mIe){var fIe=mIe;if(34<=fIe)switch(fIe){case 34:var hIe=ote;break;case 35:var hIe=lte;break;case 36:var hIe=pte;break;case 37:var hIe=dte;break;case 38:var hIe=cte;break;case 39:var hIe=ute;break;case 40:var hIe=mte;break;case 41:var hIe=fte;break;case 42:var hIe=hte;break;case 43:var hIe=yte;break;case 44:var hIe=bte;break;case 45:var hIe=gte;break;case 46:var hIe=Tw(Ste,xte);break;case 47:var hIe=Tw(Tte,Ete);break;case 48:var hIe=Ate;break;case 49:var hIe=Pte;break;case 50:var hIe=_te;break;case 51:var hIe=Nte;break;case 52:var hIe=kte;break;case 53:var hIe=Cte;break;case 54:var hIe=wte;break;case 55:var hIe=vte;break;case 56:var hIe=Ite;break;case 57:var hIe=jte;break;case 58:var hIe=Lte;break;case 59:var hIe=Dte;break;case 60:var hIe=Rte;break;case 61:var hIe=Ote;break;case 62:var hIe=Yte;break;case 63:var hIe=Mte;break;case 64:var hIe=Tw(Vte,Fte);break;case 65:var hIe=Bte;break;default:var hIe=Ute;}else switch(fIe){case 0:var hIe=Nee;break;case 1:var hIe=kee;break;case 2:var hIe=Cee;break;case 3:var hIe=wee;break;case 4:var hIe=vee;break;case 5:var hIe=Iee;break;case 6:var hIe=jee;break;case 7:var hIe=Lee;break;case 8:var hIe=Dee;break;case 9:var hIe=Ree;break;case 10:var hIe=Oee;break;case 11:var hIe=Yee;break;case 12:var hIe=Mee;break;case 13:var hIe=Fee;break;case 14:var hIe=Vee;break;case 15:var hIe=Bee;break;case 16:var hIe=Uee;break;case 17:var hIe=Xee;break;case 18:var hIe=Wee;break;case 19:var hIe=Tw(Jee,qee);break;case 20:var hIe=zee;break;case 21:var hIe=Hee;break;case 22:var hIe=Gee;break;case 23:var hIe=Zee;break;case 24:var hIe=Kee;break;case 25:var hIe=Qee;break;case 26:var hIe=$ee;break;case 27:var hIe=ete;break;case 28:var hIe=tte;break;case 29:var hIe=ate;break;case 30:var hIe=nte;break;case 31:var hIe=rte;break;case 32:var hIe=ste;break;default:var hIe=ite;}}else switch(mIe[0]){case 0:var hIe=Tw(Xte,mIe[1]);break;case 1:var hIe=Tw(Wte,mIe[1]);break;case 2:var yIe=mIe[2],bIe=mIe[1],hIe=VC(Yj(qte),bIe,yIe);break;case 3:var hIe=Tw(zte,Tw(mIe[1],Jte));break;case 4:var hIe=Tw(Gte,Tw(mIe[1],Hte));break;case 5:var gIe=Tw(Kte,Tw(mIe[2],Zte)),hIe=Tw(mIe[1],gIe);break;case 6:var hIe=Tw(Qte,mIe[1]);break;default:var xIe=mIe[1],hIe=MC(Yj($te),xIe);}var SIe=[0,Lce,MC(rwe[1],hIe)],EIe=[0,[0,Dce,pwe(uIe[1])],SIe];return MC(rwe[3],EIe)},cIe)}]}function PL(rwe,swe){swe[6]=0|swe[6]-rwe;var iwe=swe[12];return swe[12]=[0,iwe[1],iwe[2],iwe[3],0|iwe[4]-rwe],0}function _L(rwe,swe){return[0,swe[1],rwe,swe[3],swe[4],swe[5]]}function NL(rwe,swe){return Mk(rwe,swe[3])?[0,swe[1],swe[2],rwe,swe[4],swe[5]]:swe}function IL(rwe,swe){return Zj(rwe[1],swe[11],swe[12])}function LL(rwe){var swe=rwe[2],iwe=rwe[1],owe=iwe[5],lwe=owe===QH?iwe:[0,iwe[1],iwe[2],iwe[3],iwe[4],QH];if("number"==typeof swe)var pwe=0;else switch(swe[0]){case 2:var dwe=swe[1],cwe=[0,dwe[1],dwe[2][3]],pwe=1;break;case 3:var uwe=swe[1],mwe=Tw(JEe,uwe[3]),fwe=Tw(zEe,Tw(uwe[2],mwe)),cwe=[0,uwe[1],fwe],pwe=1;break;case 1:case 4:var hwe=swe[1],cwe=[0,hwe[1],hwe[3]],pwe=1;break;default:var pwe=0;}if(!pwe)var ywe=Lv(lwe[2]),cwe=[0,IL(lwe,lwe[2]),ywe];var bwe=Rw(owe[2]),gwe=Rw(owe[1]);return[0,lwe,[0,swe,cwe[1],cwe[2],gwe,bwe]]}function RL(rwe,swe,iwe){return[0,rwe[1],rwe[2],rwe[3],rwe[4],[0,[0,[0,swe,iwe],rwe[5][1]],rwe[5][2]]]}function OL(rwe,swe,iwe){return RL(rwe,swe,[1,iwe])}function YL(rwe,swe){return RL(rwe,swe,qEe)}function ML(rwe,swe,iwe,owe){var lwe=IL(rwe,swe);return PL(Q_(iwe),swe),[0,YL(rwe,lwe),owe]}function VL(rwe){var swe=rwe[5];if(swe)return[0,rwe[1],rwe[2],rwe[3],rwe[4],swe[2]];throw dCe}function UL(rwe){var swe=[0,0];return _v(function(iwe){return swe[1]=[0,iwe,swe[1]],0},rwe),[0,0,0,0,0,Rw(swe[1])]}function XL(rwe){var swe=rwe[5];if(swe){var iwe=0|swe[1]+OF;if(!(2>>0))switch(iwe){case 0:return VL(rwe);case 1:break;default:var owe=VL(rwe);return[0,1,owe[2],owe[3],owe[4],owe[5]];}}return rwe}function WL(rwe){var swe=rwe[5];if(swe&&48===swe[1]){var iwe=swe[2];if(iwe){var owe=iwe[1],lwe=88===owe?0:KM===owe?0:1;if(!lwe)return VL(VL(rwe))}}throw dCe}function JL(rwe){var swe=Pv(WEe,Ow(Xw,rwe[5]));try{var iwe=TN(swe)}catch(owe){if(owe=YC(owe),owe[1]===XH)throw dCe;throw owe}return[0,rwe[1],rwe[2],iwe,rwe[4],0]}function ZL(rwe){for(var swe=rwe;;){var iwe=swe[5];if(iwe){var owe=iwe[1];if(81<=owe){if(95===owe){var swe=VL(swe);continue}var lwe=LV===owe?1:0}else{if(46===owe){if(0===swe[4]){var pwe=VL(swe),swe=[0,pwe[1],pwe[2],pwe[3],UEe,pwe[5]];continue}throw dCe}var lwe=80<=owe?1:0}if(lwe)return JL(VL(swe));if(!(48<=owe))var dwe=0;else if(57>>0)throw[0,ZH,BEe];return 0|rwe-48}function PD(rwe){if(65<=rwe){if(97<=rwe){if(!(Nq<=rwe))return 0|(0|rwe-97)+10;}else if(!(71<=rwe))return 0|(0|rwe-65)+10;}else if(!(9<(0|rwe+$B)>>>0))return 0|rwe-48;throw[0,ZH,VEe]}function _D(rwe){if(YX<=rwe){var swe=[0,Uw(IF|63&rwe),0],iwe=[0,Uw(IF|63&(0|rwe>>>6)),swe],owe=[0,Uw(IF|63&(0|rwe>>>12)),iwe];return[0,Uw(0|(RU|rwe>>>18)),owe]}if(MU<=rwe){var lwe=[0,Uw(IF|63&rwe),0],pwe=[0,Uw(IF|63&(0|rwe>>>6)),lwe];return[0,Uw(0|(IX|rwe>>>12)),pwe]}if(IF<=rwe){var dwe=[0,Uw(IF|63&rwe),0];return[0,Uw(0|($J|rwe>>>6)),dwe]}return[0,Uw(rwe),0]}function ND(rwe,swe,iwe){if(0===rwe)var owe=0;else switch(0|rwe-1){case 0:var lwe=TN(Tw(MEe,swe)),owe=1;break;case 2:var lwe=QL(swe),owe=1;break;default:var owe=0;}if(!owe)var lwe=TN(swe);var pwe=Zk(iwe,FEe)?lwe:-lwe;return[5,rwe,pwe]}function ID(rwe,swe,iwe){return iwe[10]=YN(8,-1),50>rwe?LD(1+rwe,swe,iwe,0):LC(LD,[0,swe,iwe,0])}function LD(rwe,swe,iwe,owe){for(var lwe=owe;;){var pwe=Iv($H,lwe,iwe);if(77>>0){MC(iwe[1],iwe);var lwe=pwe;continue}var dwe=pwe;if(39<=dwe)switch(dwe){case 39:return[0,swe,90];case 40:return[0,swe,91];case 41:return[0,swe,86];case 42:return[0,swe,87];case 43:return[0,swe,ZV];case 44:return[0,swe,Zq];case 45:return[0,swe,68];case 46:return[0,swe,94];case 47:return[0,swe,67];case 48:return[0,swe,66];case 49:return[0,swe,96];case 50:return[0,swe,95];case 51:return[0,swe,77];case 52:return[0,swe,76];case 53:return[0,swe,74];case 54:return[0,swe,75];case 55:return[0,swe,72];case 56:return[0,swe,71];case 57:return[0,swe,70];case 58:return[0,swe,69];case 59:return[0,swe,92];case 60:return[0,swe,93];case 61:return[0,swe,97];case 62:return[0,swe,98];case 63:return[0,swe,Sq];case 64:return[0,swe,QU];case 65:return[0,swe,NW];case 66:return[0,swe,83];case 67:return[0,swe,85];case 68:return[0,swe,84];case 69:return[0,swe,Nq];case 70:return[0,swe,XY];case 71:return[0,swe,78];case 72:return[0,swe,12];case 73:return[0,swe,73];case 74:return[0,swe,99];case 75:return[0,swe,14];case 76:var cwe=swe[3]?RL(swe,IL(swe,iwe),4):swe;return[0,cwe,ZY];default:return[0,YL(swe,IL(swe,iwe)),$F];}switch(dwe){case 0:return Yv(iwe),50>rwe?ID(1+rwe,swe,iwe):LC(ID,[0,swe,iwe]);case 1:return 50>rwe?ID(1+rwe,YL(swe,IL(swe,iwe)),iwe):LC(ID,[0,YL(swe,IL(swe,iwe)),iwe]);case 2:return SD(iwe),50>rwe?ID(1+rwe,swe,iwe):LC(ID,[0,swe,iwe]);case 3:var uwe=IL(swe,iwe),mwe=Xv(IJ),fwe=XD(swe,mwe,iwe);return 50>rwe?ID(1+rwe,$L(fwe[1],uwe,fwe[2],mwe,1),iwe):LC(ID,[0,$L(fwe[1],uwe,fwe[2],mwe,1),iwe]);case 4:var hwe=NP(iwe[10],0)[1],ywe=Rv(iwe,0|iwe[5]+2,hwe),bwe=iwe[6],gwe=Rv(iwe,NP(iwe[10],0)[1],bwe),xwe=Rv(iwe,iwe[5],iwe[6]);if(swe[4]){var Swe=swe[3]?OL(swe,IL(swe,iwe),xwe):swe,Ewe=NL(1,Swe);return $k(gwe,Wce)?50>rwe?ID(1+rwe,Ewe,iwe):LC(ID,[0,Ewe,iwe]):[0,Ewe,80]}var Twe=IL(swe,iwe),Awe=Xv(IJ);Kv(Awe,ywe),Kv(Awe,gwe);var Pwe=XD(swe,Awe,iwe);return 50>rwe?ID(1+rwe,$L(Pwe[1],Twe,Pwe[2],Awe,1),iwe):LC(ID,[0,$L(Pwe[1],Twe,Pwe[2],Awe,1),iwe]);case 5:return swe[3]?50>rwe?ID(1+rwe,NL(0,swe),iwe):LC(ID,[0,NL(0,swe),iwe]):(PL(1,iwe),[0,swe,Sq]);case 6:var _we=IL(swe,iwe),Nwe=Xv(IJ),kwe=WD(swe,Nwe,iwe);return 50>rwe?ID(1+rwe,$L(kwe[1],_we,kwe[2],Nwe,0),iwe):LC(ID,[0,$L(kwe[1],_we,kwe[2],Nwe,0),iwe]);case 7:return 0===iwe[5]?50>rwe?ID(1+rwe,WD(swe,Xv(IJ),iwe)[1],iwe):LC(ID,[0,WD(swe,Xv(IJ),iwe)[1],iwe]):[0,swe,$F];case 8:var Cwe=Ov(iwe,iwe[5]),wwe=IL(swe,iwe),vwe=Xv(IJ),Iwe=Xv(IJ);Zv(Iwe,Cwe);var jwe=VD(swe,Cwe,vwe,Iwe,0,iwe),Lwe=jwe[3],Dwe=Wv(Iwe),Rwe=Wv(vwe),Owe=[1,[0,Kj(wwe,jwe[2]),Rwe,Dwe,Lwe]];return[0,jwe[1],Owe];case 9:var Ywe=Xv(IJ),Mwe=Xv(IJ),Fwe=Xv(IJ);Kv(Fwe,Lv(iwe));var Vwe=ZD(swe,IL(swe,iwe),Ywe,Mwe,Fwe,iwe),Bwe=Vwe[3],Uwe=Wv(Fwe),Xwe=Wv(Mwe),Wwe=[0,Wv(Ywe),Xwe,Uwe];return[0,Vwe[1],[2,[0,Vwe[2],Wwe,Bwe]]];case 10:var qwe=iwe[6];return ML(swe,iwe,Rv(iwe,NP(iwe[10],0)[1],qwe),qce);case 11:return[0,swe,Jce];case 12:var Jwe=iwe[6];return ML(swe,iwe,Rv(iwe,NP(iwe[10],0)[1],Jwe),zce);case 13:return[0,swe,Hce];case 14:var zwe=iwe[6];return ML(swe,iwe,Rv(iwe,NP(iwe[10],0)[1],zwe),Gce);case 15:return[0,swe,Zce];case 22:var Hwe=Rv(iwe,iwe[5],iwe[6]);SD(iwe);try{var Gwe=[0,swe,Wj(cCe,Hwe)];return Gwe}catch(Kwe){if(Kwe=YC(Kwe),Kwe===JH)return[0,swe,0];throw Kwe}case 23:return[0,swe,1];case 24:return[0,swe,2];case 25:return[0,swe,5];case 26:return[0,swe,6];case 27:return[0,swe,7];case 28:return[0,swe,8];case 29:return[0,swe,13];case 30:return[0,swe,11];case 31:return[0,swe,9];case 32:return[0,swe,10];case 33:return[0,swe,80];case 34:return[0,swe,79];case 35:return[0,swe,82];case 36:return[0,swe,81];case 37:return[0,swe,88];case 38:return[0,swe,89];case 16:case 18:case 20:var Zwe=iwe[6];return ML(swe,iwe,Rv(iwe,NP(iwe[10],0)[1],Zwe),Kce);default:return[0,swe,Qce];}}}function RD(rwe,swe){return IC(ID(0,rwe,swe))}function OD(rwe,swe,iwe){iwe[10]=YN(26,-1);var owe=iwe[6];NP(iwe[10],17)[18]=owe;var lwe=iwe[6];NP(iwe[10],16)[17]=lwe;var pwe=iwe[6];NP(iwe[10],15)[16]=pwe;var dwe=iwe[6];NP(iwe[10],14)[15]=dwe;var cwe=iwe[6];NP(iwe[10],13)[14]=cwe;var uwe=iwe[6];NP(iwe[10],12)[13]=uwe;var mwe=iwe[6];NP(iwe[10],11)[12]=mwe;var fwe=iwe[6];NP(iwe[10],10)[11]=fwe;var hwe=iwe[6];NP(iwe[10],9)[10]=hwe;var ywe=iwe[6];NP(iwe[10],8)[9]=ywe;var bwe=iwe[6];NP(iwe[10],7)[8]=bwe;var gwe=iwe[6];NP(iwe[10],6)[7]=gwe;var xwe=iwe[6];NP(iwe[10],5)[6]=xwe;var Swe=iwe[6];return NP(iwe[10],4)[5]=Swe,50>rwe?YD(1+rwe,swe,iwe,YJ):LC(YD,[0,swe,iwe,YJ])}function YD(rwe,swe,iwe,owe){for(var lwe=owe;;){var pwe=Iv($H,lwe,iwe);if(51>>0){MC(iwe[1],iwe);var lwe=pwe;continue}switch(pwe){case 0:return Yv(iwe),50>rwe?OD(1+rwe,swe,iwe):LC(OD,[0,swe,iwe]);case 1:return SD(iwe),50>rwe?OD(1+rwe,swe,iwe):LC(OD,[0,swe,iwe]);case 2:var dwe=IL(swe,iwe),cwe=Xv(IJ),uwe=XD(swe,cwe,iwe);return 50>rwe?OD(1+rwe,$L(uwe[1],dwe,uwe[2],cwe,1),iwe):LC(OD,[0,$L(uwe[1],dwe,uwe[2],cwe,1),iwe]);case 3:var mwe=NP(iwe[10],0)[1],fwe=Rv(iwe,0|iwe[5]+2,mwe),hwe=iwe[6],ywe=Rv(iwe,NP(iwe[10],0)[1],hwe),bwe=Rv(iwe,iwe[5],iwe[6]);if(swe[4]){var gwe=swe[3]?OL(swe,IL(swe,iwe),bwe):swe,xwe=NL(1,gwe);return $k(ywe,$ce)?50>rwe?OD(1+rwe,xwe,iwe):LC(OD,[0,xwe,iwe]):[0,xwe,80]}var Swe=IL(swe,iwe),Ewe=Xv(IJ);Kv(Ewe,fwe),Kv(Ewe,ywe);var Twe=XD(swe,Ewe,iwe);return 50>rwe?OD(1+rwe,$L(Twe[1],Swe,Twe[2],Ewe,1),iwe):LC(OD,[0,$L(Twe[1],Swe,Twe[2],Ewe,1),iwe]);case 4:return swe[3]?50>rwe?OD(1+rwe,NL(0,swe),iwe):LC(OD,[0,NL(0,swe),iwe]):(PL(1,iwe),[0,swe,Sq]);case 5:var Awe=IL(swe,iwe),Pwe=Xv(IJ),_we=WD(swe,Pwe,iwe);return 50>rwe?OD(1+rwe,$L(_we[1],Awe,_we[2],Pwe,1),iwe):LC(OD,[0,$L(_we[1],Awe,_we[2],Pwe,1),iwe]);case 6:var Nwe=Ov(iwe,iwe[5]),kwe=IL(swe,iwe),Cwe=Xv(IJ),wwe=Xv(IJ);Zv(wwe,Nwe);var vwe=VD(swe,Nwe,Cwe,wwe,0,iwe),Iwe=vwe[3],jwe=Wv(wwe),Lwe=Wv(Cwe),Dwe=[1,[0,Kj(kwe,vwe[2]),Lwe,jwe,Iwe]];return[0,vwe[1],Dwe];case 7:var Rwe=NP(iwe[10],0)[1],Owe=Rv(iwe,iwe[5],Rwe),Ywe=NP(iwe[10],1)[2],Mwe=Rv(iwe,NP(iwe[10],0)[1],Ywe),Fwe=iwe[6],Vwe=Rv(iwe,NP(iwe[10],1)[2],Fwe);return ML(swe,iwe,Vwe,ND(0,Mwe,Owe));case 8:var Bwe=NP(iwe[10],0)[1],Uwe=Rv(iwe,iwe[5],Bwe),Xwe=iwe[6];return[0,swe,ND(0,Rv(iwe,NP(iwe[10],0)[1],Xwe),Uwe)];case 9:var Wwe=NP(iwe[10],0)[1],qwe=Rv(iwe,iwe[5],Wwe),Jwe=NP(iwe[10],1)[2],zwe=Rv(iwe,NP(iwe[10],0)[1],Jwe),Hwe=iwe[6],Gwe=Rv(iwe,NP(iwe[10],1)[2],Hwe);return ML(swe,iwe,Gwe,ND(2,zwe,qwe));case 10:var Zwe=NP(iwe[10],0)[1],Kwe=Rv(iwe,iwe[5],Zwe),Qwe=iwe[6];return[0,swe,ND(2,Rv(iwe,NP(iwe[10],0)[1],Qwe),Kwe)];case 11:var $we=NP(iwe[10],0)[1],eve=Rv(iwe,iwe[5],$we),tve=NP(iwe[10],1)[2],ave=Rv(iwe,NP(iwe[10],0)[1],tve),nve=iwe[6],rve=Rv(iwe,NP(iwe[10],1)[2],nve);return ML(swe,iwe,rve,ND(1,ave,eve));case 12:var sve=NP(iwe[10],0)[1],ive=Rv(iwe,iwe[5],sve),ove=iwe[6];return[0,swe,ND(1,Rv(iwe,NP(iwe[10],0)[1],ove),ive)];case 13:var lve=NP(iwe[10],0)[1],pve=Rv(iwe,iwe[5],lve),dve=NP(iwe[10],1)[2],cve=Rv(iwe,NP(iwe[10],0)[1],dve),uve=iwe[6],mve=Rv(iwe,NP(iwe[10],1)[2],uve);try{var fve=[0,swe,ND(3,cve,pve)],hve=fve}catch(Uve){if(Uve=YC(Uve),!Dke)throw Uve;var hve=[0,RL(swe,IL(swe,iwe),59),eue]}return ML(hve[1],iwe,mve,hve[2]);case 14:var yve=NP(iwe[10],0)[1],bve=Rv(iwe,iwe[5],yve),gve=iwe[6],xve=Rv(iwe,NP(iwe[10],0)[1],gve);try{var Sve=[0,swe,ND(3,xve,bve)];return Sve}catch(Uve){if(Uve=YC(Uve),Dke)return[0,RL(swe,IL(swe,iwe),59),tue];throw Uve}case 15:var Eve=NP(iwe[10],0)[1],Tve=Rv(iwe,iwe[5],Eve),Ave=NP(iwe[10],1)[2],Pve=Rv(iwe,NP(iwe[10],0)[1],Ave),_ve=iwe[6],Nve=Rv(iwe,NP(iwe[10],1)[2],_ve);return ML(swe,iwe,Nve,ND(3,Pve,Tve));case 16:var kve=NP(iwe[10],0)[1],Cve=Rv(iwe,iwe[5],kve),wve=iwe[6];return[0,swe,ND(3,Rv(iwe,NP(iwe[10],0)[1],wve),Cve)];case 17:var vve=NP(iwe[10],0)[1],Ive=Rv(iwe,iwe[5],vve),jve=NP(iwe[10],1)[2],Lve=Rv(iwe,NP(iwe[10],0)[1],jve),Dve=iwe[6],Rve=Rv(iwe,NP(iwe[10],1)[2],Dve);return ML(swe,iwe,Rve,ND(3,Lve,Ive));case 18:var Ove=NP(iwe[10],0)[1],Yve=Rv(iwe,NP(iwe[10],1)[2],Ove),Mve=NP(iwe[10],2)[3];return[0,swe,ND(3,Rv(iwe,NP(iwe[10],3)[4],Mve),Yve)];case 19:var Fve=Rv(iwe,iwe[5],iwe[6]);SD(iwe);try{var Vve=[0,swe,Wj(uCe,Fve)];return Vve}catch(Uve){if(Uve=YC(Uve),Uve===JH)return[0,swe,0];throw Uve}case 20:return[0,swe,65];case 23:return[0,swe,1];case 24:return[0,swe,2];case 25:return[0,swe,3];case 26:return[0,swe,4];case 27:return[0,swe,5];case 28:return[0,swe,6];case 29:return[0,swe,13];case 30:return[0,swe,11];case 31:return[0,swe,9];case 32:return[0,swe,10];case 37:return[0,swe,92];case 38:return[0,swe,93];case 41:return[0,swe,Sq];case 43:return[0,swe,83];case 44:return[0,swe,85];case 45:return[0,swe,46];case 46:return[0,swe,12];case 48:return[0,swe,97];case 49:return[0,swe,98];case 50:var Bve=swe[3]?RL(swe,IL(swe,iwe),4):swe;return[0,Bve,ZY];case 51:return[0,swe,$F];case 21:case 35:return[0,swe,7];case 22:case 36:return[0,swe,8];case 33:case 42:return[0,swe,80];case 34:case 40:return[0,swe,79];default:return[0,swe,78];}}}function MD(rwe,swe){return IC(OD(0,rwe,swe))}function VD(rwe,swe,iwe,owe,lwe,pwe){var dwe=rwe,cwe=lwe;a:for(;;)for(var uwe=ZJ;;){var mwe=Nv($H,uwe,pwe);if(3>>0){MC(pwe[1],pwe);var uwe=mwe;continue}switch(mwe){case 0:var fwe=Ov(pwe,pwe[5]);if(Zv(owe,fwe),swe===fwe)return[0,dwe,IL(dwe,pwe),cwe];Zv(iwe,fwe);continue a;case 1:Zv(owe,Ov(pwe,pwe[5]));var hwe=UD(dwe,iwe,pwe),ywe=hwe[2];Kv(owe,Lv(pwe));var dwe=hwe[1],cwe=ywe||cwe;continue a;case 2:var bwe=Rv(pwe,pwe[5],pwe[6]);Kv(owe,bwe);var gwe=YL(dwe,IL(dwe,pwe));return Kv(iwe,bwe),[0,gwe,IL(gwe,pwe),cwe];default:var xwe=Ov(pwe,pwe[5]);Zv(owe,xwe),Zv(iwe,xwe);continue a;}}}function UD(rwe,swe,iwe){for(var owe=261;;){var lwe=Nv($H,owe,iwe);if(17>>0){MC(iwe[1],iwe);var owe=lwe;continue}switch(lwe){case 0:return[0,rwe,0];case 1:return Kv(swe,aue),[0,rwe,0];case 2:var pwe=Ov(iwe,0|iwe[5]+1),dwe=PD(Ov(iwe,0|iwe[5]+2)),cwe=_D(0|(0|16*PD(pwe))+dwe);return Yw(function(Ywe){return Zv(swe,Ywe)},cwe),[0,rwe,0];case 3:var uwe=Ov(iwe,iwe[5]),mwe=Ov(iwe,0|iwe[5]+1),fwe=Ov(iwe,0|iwe[5]+2),hwe=TD(fwe),ywe=TD(mwe)<<3,bwe=0|(0|(TD(uwe)<<6)+ywe)+hwe;if(ZJ<=bwe){var gwe=TD(mwe),xwe=_D(0|(TD(uwe)<<3)+gwe);Yw(function(Ywe){return Zv(swe,Ywe)},xwe),Zv(swe,fwe)}else{var Swe=_D(bwe);Yw(function(Ywe){return Zv(swe,Ywe)},Swe)}return[0,rwe,1];case 4:var Ewe=Ov(iwe,iwe[5]),Twe=TD(Ov(iwe,0|iwe[5]+1)),Awe=_D(0|(TD(Ewe)<<3)+Twe);return Yw(function(Ywe){return Zv(swe,Ywe)},Awe),[0,rwe,1];case 5:return Zv(swe,Uw(0)),[0,rwe,0];case 6:return Zv(swe,Uw(8)),[0,rwe,0];case 7:return Zv(swe,Uw(12)),[0,rwe,0];case 8:return Zv(swe,Uw(10)),[0,rwe,0];case 9:return Zv(swe,Uw(13)),[0,rwe,0];case 10:return Zv(swe,Uw(9)),[0,rwe,0];case 11:return Zv(swe,Uw(11)),[0,rwe,0];case 12:var Pwe=_D(TD(Ov(iwe,iwe[5])));return Yw(function(Ywe){return Zv(swe,Ywe)},Pwe),[0,rwe,1];case 13:var _we=Ov(iwe,0|iwe[5]+1),Nwe=Ov(iwe,0|iwe[5]+2),kwe=Ov(iwe,0|iwe[5]+3),Cwe=PD(Ov(iwe,0|iwe[5]+4)),wwe=PD(kwe)<<4,vwe=PD(Nwe)<<8,Iwe=_D(0|(0|(0|(PD(_we)<<12)+vwe)+wwe)+Cwe);return Yw(function(Ywe){return Zv(swe,Ywe)},Iwe),[0,rwe,0];case 14:var jwe=TN(Tw(nue,Rv(iwe,0|iwe[5]+2,0|iwe[6]-1))),Lwe=VV>>0){MC(iwe[1],iwe);var owe=lwe;continue}switch(lwe){case 0:var pwe=YL(rwe,IL(rwe,iwe));return[0,pwe,IL(pwe,iwe)];case 1:Yv(iwe),Zv(swe,10);continue a;case 2:var dwe=IL(rwe,iwe),cwe=rwe[3]?RL(rwe,dwe,[2,sue,rue]):rwe;return[0,cwe,dwe];case 3:if(rwe[3])return[0,rwe,IL(rwe,iwe)];Kv(swe,iue);continue a;default:Zv(swe,Ov(iwe,iwe[5]));continue a;}}}function WD(rwe,swe,iwe){a:for(;;)for(var owe=296;;){var lwe=Nv($H,owe,iwe);if(2>>0){MC(iwe[1],iwe);var owe=lwe;continue}switch(lwe){case 0:return[0,rwe,IL(rwe,iwe)];case 1:var pwe=IL(rwe,iwe),dwe=pwe[3];return Yv(iwe),[0,rwe,[0,pwe[1],pwe[2],[0,dwe[1],0|dwe[2]-1,0|dwe[3]-1]]];default:Zv(swe,Ov(iwe,iwe[5]));continue a;}}}function JD(rwe,swe,iwe,owe,lwe){a:for(;;)for(var pwe=380;;){var dwe=Nv($H,pwe,lwe);if(6>>0){MC(lwe[1],lwe);var pwe=dwe;continue}switch(dwe){case 0:var cwe=Ov(lwe,lwe[5]);switch(swe){case 0:var uwe=39===cwe?1:0;break;case 1:var uwe=34===cwe?1:0;break;default:if(60===cwe)var mwe=1;else if(123===cwe)var mwe=1;else var uwe=0,mwe=0;if(mwe)return PL(0|lwe[12][4]-lwe[11][4],lwe),[0,rwe,IL(rwe,lwe)];}if(uwe)return[0,rwe,IL(rwe,lwe)];Zv(owe,cwe),Zv(iwe,cwe);continue a;case 1:var fwe=YL(rwe,IL(rwe,lwe));return[0,fwe,IL(fwe,lwe)];case 2:var hwe=Rv(lwe,lwe[5],lwe[6]);Kv(owe,hwe),Kv(iwe,hwe),Yv(lwe);continue a;case 3:var ywe=Rv(lwe,0|lwe[5]+3,0|lwe[6]-1);Kv(owe,Rv(lwe,lwe[5],lwe[6]));var bwe=_D(TN(Tw(cue,ywe)));Yw(function(pIe){return Zv(iwe,pIe)},bwe);continue a;case 4:var gwe=Rv(lwe,0|lwe[5]+2,0|lwe[6]-1);Kv(owe,Rv(lwe,lwe[5],lwe[6]));var xwe=_D(TN(gwe));Yw(function(pIe){return Zv(iwe,pIe)},xwe);continue a;case 5:var Swe=Rv(lwe,0|lwe[5]+1,0|lwe[6]-1);Kv(owe,Rv(lwe,lwe[5],lwe[6]));var Ewe=OP(Swe,uue);if(!(0<=Ewe)){var hve=OP(Swe,mue);if(!(0<=hve)){var Fve=OP(Swe,fue);if(!(0<=Fve)){var Kve=OP(Swe,hue);if(!(0<=Kve)){var nIe=OP(Swe,yue);if(0<=nIe){if(!(0>>0){MC(pwe[1],pwe);var cwe=uwe;continue}switch(uwe){case 0:var mwe=YL(dwe,IL(dwe,pwe));return[0,mwe,Kj(swe,IL(mwe,pwe)),1];case 1:return Zv(lwe,96),[0,dwe,Kj(swe,IL(dwe,pwe)),1];case 2:return Kv(lwe,OEe),[0,dwe,Kj(swe,IL(dwe,pwe)),0];case 3:Zv(owe,92),Zv(lwe,92);var fwe=UD(dwe,iwe,pwe),hwe=Lv(pwe);Kv(owe,hwe),Kv(lwe,hwe);var dwe=fwe[1];continue a;case 4:var ywe=Rv(pwe,pwe[5],0|pwe[5]+2);Kv(owe,ywe),Kv(lwe,ywe),Kv(iwe,YEe),Yv(pwe);continue a;case 5:var bwe=Ov(pwe,pwe[5]);Zv(owe,bwe),Zv(lwe,bwe),Zv(iwe,10),Yv(pwe);continue a;default:var gwe=Ov(pwe,pwe[5]);Zv(owe,gwe),Zv(lwe,gwe),Zv(iwe,gwe);continue a;}}}function KD(rwe,swe){var iwe=rwe[2],owe=iwe.slice();return owe[2]=iwe[2],[0,[0],0,swe,_L(owe,rwe)]}function QD(rwe,swe){var iwe=0|swe+1;if(rwe[1].length-1cwe))for(var uwe=1;;){if(dwe[uwe+1]=lwe(uwe),cwe!=uwe){var uwe=0|uwe+1;continue}break}var pwe=dwe}rwe[1]=pwe;break}for(;;){if(rwe[2]<=swe){var mwe=rwe[4];switch(rwe[3]){case 0:var fwe=LL(RD(mwe,mwe[2]));break;case 1:var fwe=LL(MD(mwe,mwe[2]));break;case 2:var hwe=mwe[2],ywe=mwe;b:for(;;){for(var bwe=342;;){var gwe=Nv($H,bwe,hwe);if(14>>0){MC(hwe[1],hwe);var bwe=gwe;continue}switch(gwe){case 0:var xwe=[0,ywe,ZY];break;case 1:Yv(hwe);continue b;case 2:SD(hwe);continue b;case 3:var Swe=IL(ywe,hwe),Ewe=Xv(IJ),Twe=WD(ywe,Ewe,hwe),ywe=$L(Twe[1],Swe,Twe[2],Ewe,1);continue b;case 4:var Awe=IL(ywe,hwe),Pwe=Xv(IJ),_we=XD(ywe,Pwe,hwe),ywe=$L(_we[1],Awe,_we[2],Pwe,1);continue b;case 5:var xwe=[0,ywe,92];break;case 6:var xwe=[0,ywe,99];break;case 7:var xwe=[0,ywe,93];break;case 8:var xwe=[0,ywe,1];break;case 9:var xwe=[0,ywe,80];break;case 10:var xwe=[0,ywe,11];break;case 11:var xwe=[0,ywe,78];break;case 12:SD(hwe);var xwe=[0,ywe,LU];break;case 13:var Nwe=Ov(hwe,hwe[5]),kwe=IL(ywe,hwe),Cwe=Xv(IJ),wwe=Xv(IJ);Zv(wwe,Nwe);var vwe=39===Nwe?0:1,Iwe=JD(ywe,vwe,Cwe,wwe,hwe);Zv(wwe,Nwe);var jwe=Wv(Cwe),Lwe=Wv(wwe),Dwe=[4,[0,Kj(kwe,Iwe[2]),jwe,Lwe]],xwe=[0,Iwe[1],Dwe];break;default:var xwe=[0,ywe,$F];}var fwe=LL(xwe);break}break}break;case 3:for(var Rwe=mwe[2][12],Owe=Zj(mwe[1],Rwe,Rwe),Ywe=Xv(IJ),Mwe=Xv(IJ),Fwe=mwe[2],Vwe=373;;){var Bwe=Nv($H,Vwe,Fwe);if(4>>0){MC(Fwe[1],Fwe);var Vwe=Bwe;continue}switch(Bwe){case 0:var Uwe=Rv(Fwe,Fwe[5],Fwe[6]);Kv(Mwe,Uwe),Kv(Ywe,Uwe),Yv(Fwe);var Xwe=JD(mwe,2,Ywe,Mwe,Fwe),Wwe=Wv(Ywe),qwe=Wv(Mwe),Jwe=[4,[0,Kj(Owe,Xwe[2]),Wwe,qwe]],zwe=[0,Xwe[1],Jwe];break;case 1:var zwe=[0,mwe,ZY];break;case 2:var zwe=[0,mwe,92];break;case 3:var zwe=[0,mwe,1];break;default:var Hwe=Ov(Fwe,Fwe[5]);Zv(Mwe,Hwe),Zv(Ywe,Hwe);var Gwe=JD(mwe,2,Ywe,Mwe,Fwe),Zwe=Wv(Ywe),Kwe=Wv(Mwe),Qwe=[4,[0,Kj(Owe,Gwe[2]),Zwe,Kwe]],zwe=[0,Gwe[1],Qwe];}var fwe=LL([0,zwe[1],zwe[2]]);break}break;case 4:var $we=mwe[2],eve=mwe;b:for(;;){for(var tve=MM;;){var ave=Nv($H,tve,$we);if(5>>0){MC($we[1],$we);var tve=ave;continue}switch(ave){case 0:Yv($we);continue b;case 1:SD($we);continue b;case 2:var nve=IL(eve,$we),rve=Xv(IJ),sve=WD(eve,rve,$we),eve=$L(sve[1],nve,sve[2],rve,1);continue b;case 3:var ive=IL(eve,$we),ove=Xv(IJ),lve=XD(eve,ove,$we),eve=$L(lve[1],ive,lve[2],ove,1);continue b;case 4:var pve=IL(eve,$we),dve=Xv(IJ),cve=Xv(IJ),uve=Xv(IJ);Kv(uve,DEe);var mve=ZD(eve,pve,dve,cve,uve,$we),fve=mve[3],hve=Wv(uve),yve=Wv(cve),bve=[0,Wv(dve),yve,hve],gve=[0,mve[1],[2,[0,mve[2],bve,fve]]];break;default:var xve=YL(eve,IL(eve,$we)),gve=[0,xve,[2,[0,IL(xve,$we),REe,1]]];}var fwe=LL(gve);break}break}break;default:var Sve=mwe[2],Eve=mwe;b:for(;;){for(var Tve=300;;){var Ave=Nv($H,Tve,Sve);if(6>>0){MC(Sve[1],Sve);var Tve=Ave;continue}switch(Ave){case 0:var Pve=[0,Eve,ZY];break;case 1:Yv(Sve);continue b;case 2:SD(Sve);continue b;case 3:var _ve=IL(Eve,Sve),Nve=Xv(IJ),kve=WD(Eve,Nve,Sve),Eve=$L(kve[1],_ve,kve[2],Nve,1);continue b;case 4:var Cve=IL(Eve,Sve),wve=Xv(IJ),vve=XD(Eve,wve,Sve),Eve=$L(vve[1],Cve,vve[2],wve,1);continue b;case 5:var Ive=IL(Eve,Sve),jve=Xv(IJ);c:for(;;){for(var Lve=323;;){var Dve=Nv($H,Lve,Sve);if(7>>0){MC(Sve[1],Sve);var Lve=Dve;continue}switch(Dve){case 0:var Rve=[0,RL(Eve,IL(Eve,Sve),14),oue];break;case 1:var Rve=[0,RL(Eve,IL(Eve,Sve),14),lue];break;case 2:Kv(jve,Rv(Sve,Sve[5],0|Sve[5]+2));continue c;case 3:var Rve=[0,Eve,Rv(Sve,0|Sve[5]+1,Sve[6])];break;case 4:var Rve=[0,Eve,pue];break;case 5:Zv(jve,Ov(Sve,Sve[5]));d:for(;;)for(var Ove=335;;){var Yve=Nv($H,Ove,Sve);if(4>>0){MC(Sve[1],Sve);var Ove=Yve;continue}switch(Yve){case 0:break;case 3:Zv(jve,Ov(Sve,Sve[5]));break;case 4:Zv(jve,Ov(Sve,Sve[5]));continue d;default:Kv(jve,Rv(Sve,Sve[5],0|Sve[5]+2));continue d;}continue c}case 6:var Rve=[0,RL(Eve,IL(Eve,Sve),14),due];break;default:Zv(jve,Ov(Sve,Sve[5]));continue c;}var Mve=Rve[1],Fve=Kj(Ive,IL(Mve,Sve)),Vve=Rve[2],Pve=[0,Mve,[3,[0,Fve,Wv(jve),Vve]]];break}break}break;default:var Pve=[0,YL(Eve,IL(Eve,Sve)),$F];}var fwe=LL(Pve);break}break}}var Bve=fwe[1],Uve=Bve[2],Xve=Uve.slice();Xve[2]=Uve[2];var Wve=_L(Xve,Bve);rwe[4]=Bve;var qve=rwe[2],Jve=[0,[0,Wve,fwe[2]]];NP(rwe[1],qve)[qve+1]=Jve,rwe[2]=0|rwe[2]+1;continue}return 0}}function $D(rwe){return Iw(rwe[19][1])}function SR(rwe){return rwe[23][5]}function TR(rwe,swe){var iwe=swe[2];rwe[1][1]=[0,[0,swe[1],iwe],rwe[1][1]];var owe=rwe[18];return owe?VC(owe[1],rwe,iwe):owe}function PR(rwe,swe){var iwe=swe[2];if(VC(mCe[3],iwe,rwe[4][1]))return TR(rwe,[0,swe[1],[7,iwe]]);var owe=VC(mCe[4],iwe,rwe[4][1]);return rwe[4][1]=owe,0}function _R(rwe,swe){var iwe=rwe?rwe[1]:0;if(2>iwe){var owe=swe[21][1];QD(owe,iwe);var lwe=NP(owe[1],iwe)[iwe+1];return lwe?lwe[1][2]:QC(CPe)}throw[0,ZH,_Pe]}function NR(rwe,swe){var iwe=swe.slice();return iwe[6]=rwe,iwe}function IR(rwe,swe){var iwe=swe.slice();return iwe[13]=rwe,iwe}function LR(rwe,swe){var iwe=swe.slice();return iwe[8]=rwe,iwe}function RR(rwe,swe){var iwe=swe.slice();return iwe[11]=rwe,iwe}function OR(rwe,swe){var iwe=swe.slice();return iwe[14]=rwe,iwe}function YR(rwe,swe){var iwe=swe.slice();return iwe[7]=rwe,iwe}function MR(rwe,swe){var iwe=swe.slice();return iwe[12]=rwe,iwe}function VR(rwe,swe){var iwe=swe.slice();return iwe[18]=[0,rwe],iwe}function UR(rwe){function swe(iwe){return TR(rwe,iwe)}return function(iwe){return Yw(swe,iwe)}}function XR(rwe){return rwe[5][1]}function WR(rwe){var swe=rwe.slice();return swe[18]=0,swe}function JR(rwe,swe,iwe){var owe=rwe.slice();return owe[3]=mCe[1],owe[8]=0,owe[9]=0,owe[10]=1,owe[16]=iwe,owe[17]=swe,owe}function ZR(rwe){return $k(rwe,PPe)?0:1}function KR(rwe){return $k(rwe,yPe)&&$k(rwe,bPe)&&$k(rwe,gPe)&&$k(rwe,xPe)&&$k(rwe,SPe)&&$k(rwe,EPe)&&$k(rwe,TPe)&&$k(rwe,APe)?0:1}function QR(rwe){return $k(rwe,fPe)&&$k(rwe,hPe)?0:1}function $R(rwe,swe){var iwe=rwe?rwe[1]:0;return _R([0,iwe],swe)[1]}function SO(rwe,swe){var iwe=rwe?rwe[1]:0;return _R([0,iwe],swe)[3]}function TO(rwe,swe){var iwe=rwe?rwe[1]:0;return _R([0,iwe],swe)[2]}function PO(rwe,swe){var iwe=rwe?rwe[1]:0;return _R([0,iwe],swe)[4]}function _O(rwe){var swe=XR(rwe);if(swe)var iwe=swe[1][2][1],owe=iwe>>0)){var owe=6==iwe?0:1;if(!owe)return owe}else if(!(Zq<(0|iwe+1)>>>0))return 1}return _O(rwe)}function IO(rwe,swe){var iwe=rwe?rwe[1]:0,owe=9===$R([0,iwe],swe)?1:0,lwe=owe?[0,TO([0,iwe],swe)]:owe;return lwe}function LO(rwe,swe){var iwe=rwe?rwe[1]:0,owe=SO([0,iwe],swe),lwe=$R([0,iwe],swe);if(!KR(owe)&&!QR(owe)&&!ZR(owe)){if("number"==typeof lwe){var pwe=0|lwe-1,dwe=58>>0?64<=pwe?0:1:27==pwe?1:0;if(dwe)return 1}return 0}return 1}function RO(rwe,swe){var iwe=rwe?rwe[1]:0,owe=15===$R([0,iwe],swe)?1:0;if(owe)var lwe=owe;else var pwe=63===$R([0,iwe],swe)?1:0,lwe=pwe?15===$R([0,0|iwe+1],swe)?1:0:pwe;return lwe}function OO(rwe,swe){var iwe=rwe?rwe[1]:0,owe=$R([0,iwe],swe);if("number"==typeof owe){var lwe=14===owe?1:40===owe?1:0;if(lwe)return 1}return 0}function YO(rwe,swe){return TR(rwe,[0,TO(0,rwe),swe])}function MO(rwe){var swe=rwe[1];if("number"==typeof swe)switch(swe){case 0:return 2;case 108:return 4;}else switch(swe[0]){case 0:return 0;case 1:case 4:return 1;}var iwe=rwe[2];return ZR(iwe)?3:KR(iwe)?40:[1,iwe]}function VO(rwe){var swe=PO(0,rwe);MC(UR(rwe),swe);var iwe=SO(0,rwe);return YO(rwe,MO([0,$R(0,rwe),iwe]))}function UO(rwe){function swe(iwe){return TR(rwe,[0,iwe[1],57])}return function(iwe){return Yw(swe,iwe)}}function XO(rwe,swe){var iwe=rwe[6];return iwe?YO(rwe,swe):iwe}function WO(rwe,swe){var iwe=rwe[6];return iwe?TR(rwe,[0,swe[1],swe[2]]):iwe}function JO(rwe){var swe=rwe[22][1];if(swe){var iwe=TO(0,rwe),owe=$R(0,rwe),lwe=SO(0,rwe),pwe=[0,iwe,owe,$D(rwe),lwe];MC(swe[1],pwe)}var dwe=rwe[21][1];QD(dwe,0);var cwe=NP(dwe[1],0)[1],uwe=cwe?cwe[1][1]:QC(kPe);rwe[20][1]=uwe;var mwe=PO(0,rwe);MC(UR(rwe),mwe);var fwe=_R([0,0],rwe)[5];Yw(function(Twe){return rwe[2][1]=[0,Twe,rwe[2][1]],0},fwe);var hwe=[0,TO(0,rwe)];rwe[5][1]=hwe;var ywe=rwe[21][1];if(QD(ywe,0),1(0|xwe.length-1-bwe)?0:0>(0|gwe.length-1-bwe)?0:(LA(xwe,1,gwe,0,bwe),1):0;Swe||$C(IG)}var Ewe=0|ywe[2]-1;return NP(ywe[1],Ewe)[Ewe+1]=0,ywe[2]=0|ywe[2]-1,0}function ZO(rwe,swe){rwe[19][1]=[0,swe,rwe[19][1]];var iwe=$D(rwe),owe=KD(rwe[20][1],iwe);return rwe[21][1]=owe,0}function KO(rwe){var swe=rwe[19][1],iwe=swe?swe[2]:QC(mPe);rwe[19][1]=iwe;var owe=$D(rwe),lwe=KD(rwe[20][1],owe);return rwe[21][1]=lwe,0}function QO(rwe){var swe=1-NO(rwe);return swe?9===$R(0,rwe)?JO(rwe):VO(rwe):swe}function $O(rwe,swe){return Mk($R(0,rwe),swe)&&VO(rwe),JO(rwe)}function SY(rwe,swe){var iwe=UP($R(0,rwe),swe),owe=iwe?(JO(rwe),1):iwe;return owe}function TY(rwe,swe){return $k(SO(0,rwe),swe)&&VO(rwe),JO(rwe)}function PY(rwe){var swe=rwe[22][1];if(swe){var iwe=[0,0,0],owe=[0,function(pwe){if(0===iwe[1]){var dwe=[];return _A(dwe,[0,pwe,dwe]),iwe[1]=1,iwe[2]=dwe,0}var cwe=iwe[2],uwe=[0,pwe,cwe[2]];return iwe[1]=0|iwe[1]+1,cwe[2]=uwe,iwe[2]=uwe,0}];rwe[22][1]=owe;var lwe=[0,[0,swe[1],iwe]]}else var lwe=swe;return[0,rwe[1][1],rwe[2][1],rwe[5][1],rwe[19][1],rwe[20][1],lwe]}function _Y(rwe,swe,iwe){if(iwe){var owe=iwe[1],lwe=owe[1];if(swe[22][1]=[0,lwe],rwe){var pwe=owe[2],dwe=0>16)*swe<<16)+(rwe&Jq)*swe});var IH=Math.imul,LH=function(){function rwe(uwe,mwe){return uwe<>>32-mwe}function swe(uwe,mwe){return mwe=IH(mwe,-862048943),mwe=rwe(mwe,15),mwe=IH(mwe,461845907),uwe^=mwe,uwe=rwe(uwe,13),0|(0|uwe+(uwe<<2))+-430675100}function iwe(uwe){return uwe>>>=16,uwe=IH(uwe,-2048144789),uwe>>>=13,uwe=IH(uwe,-1028477387),uwe>>>=16,uwe}function owe(uwe,mwe){var fwe=mwe[1]|mwe[2]<<24,hwe=mwe[2]>>>8|mwe[3]<<16;return uwe=swe(uwe,fwe),uwe=swe(uwe,hwe),uwe}function lwe(uwe,mwe){var fwe=mwe[1]|mwe[2]<<24,hwe=mwe[2]>>>8|mwe[3]<<16;return uwe=swe(uwe,hwe^fwe),uwe}function pwe(uwe,mwe){var fwe=mwe.length,hwe,ywe;for(hwe=0;hwe+4<=fwe;hwe+=4)ywe=mwe.charCodeAt(hwe)|mwe.charCodeAt(hwe+1)<<8|mwe.charCodeAt(hwe+2)<<16|mwe.charCodeAt(hwe+3)<<24,uwe=swe(uwe,ywe);switch(ywe=0,3&fwe){case 3:ywe=mwe.charCodeAt(hwe+2)<<16;case 2:ywe|=mwe.charCodeAt(hwe+1)<<8;case 1:ywe|=mwe.charCodeAt(hwe),uwe=swe(uwe,ywe);}return uwe^=fwe,uwe}function dwe(uwe,mwe){var fwe=mwe.length,hwe,ywe;for(hwe=0;hwe+4<=fwe;hwe+=4)ywe=mwe[hwe]|mwe[hwe+1]<<8|mwe[hwe+2]<<16|mwe[hwe+3]<<24,uwe=swe(uwe,ywe);switch(ywe=0,3&fwe){case 3:ywe=mwe[hwe+2]<<16;case 2:ywe|=mwe[hwe+1]<<8;case 1:ywe|=mwe[hwe],uwe=swe(uwe,ywe);}return uwe^=fwe,uwe}var cwe=ZJ;return function(uwe,mwe,fwe,hwe){var ywe,bwe,gwe,xwe,Swe,Ewe,Twe,Awe,Pwe;for(xwe=mwe,(0>xwe||xwe>cwe)&&(xwe=cwe),Swe=uwe,Ewe=fwe,ywe=[hwe],bwe=0,gwe=1;bwe=xwe);Awe++)ywe[gwe++]=Twe[Awe];}else if(Twe instanceof $A){switch(6&Twe.t){default:JA(Twe);case 0:Ewe=pwe(Ewe,Twe.c);break;case 2:Ewe=dwe(Ewe,Twe.c);}Swe--}else Twe===(0|Twe)?(Ewe=swe(Ewe,Twe+Twe+1),Swe--):Twe===+Twe&&(Ewe=owe(Ewe,P_(Twe)),Swe--);return Ewe=iwe(Ewe),Ewe&XV}}(),RH=function(){function rwe(cwe,uwe){return 0|cwe+uwe}function swe(cwe,uwe,mwe,fwe,hwe,ywe){return uwe=rwe(rwe(uwe,cwe),rwe(fwe,ywe)),rwe(uwe<>>32-hwe,mwe)}function iwe(cwe,uwe,mwe,fwe,hwe,ywe,bwe){return swe(uwe&mwe|~uwe&fwe,cwe,uwe,hwe,ywe,bwe)}function owe(cwe,uwe,mwe,fwe,hwe,ywe,bwe){return swe(uwe&fwe|mwe&~fwe,cwe,uwe,hwe,ywe,bwe)}function lwe(cwe,uwe,mwe,fwe,hwe,ywe,bwe){return swe(uwe^mwe^fwe,cwe,uwe,hwe,ywe,bwe)}function pwe(cwe,uwe,mwe,fwe,hwe,ywe,bwe){return swe(mwe^(uwe|~fwe),cwe,uwe,hwe,ywe,bwe)}function dwe(cwe,uwe){var mwe=uwe;for(cwe[mwe>>2]|=IF<<8*(3&mwe),mwe=(-4&mwe)+8;60>(63&mwe);mwe+=4)cwe[(mwe>>2)-1]=0;cwe[(mwe>>2)-1]=uwe<<3,cwe[mwe>>2]=536870911&uwe>>29;var fwe=[1732584193,4023233417,2562383102,271733878];for(mwe=0;mwemwe;mwe++)for(var Swe=0;4>Swe;Swe++)xwe[4*mwe+Swe]=fwe[mwe]>>8*Swe&NX;return xwe}return function(cwe,uwe,mwe){var fwe=[];switch(6&cwe.t){default:JA(cwe);case 0:var hwe=cwe.c;for(var ywe=0;ywe>2]=hwe.charCodeAt(bwe)|hwe.charCodeAt(bwe+1)<<8|hwe.charCodeAt(bwe+2)<<16|hwe.charCodeAt(bwe+3)<<24}for(;ywe>2]|=hwe.charCodeAt(ywe+uwe)<<8*(3&ywe);break;case 4:var gwe=cwe.c;for(var ywe=0;ywe>2]=gwe[bwe]|gwe[bwe+1]<<8|gwe[bwe+2]<<16|gwe[bwe+3]<<24}for(;ywe>2]|=gwe[ywe+uwe]<<8*(3&ywe);}return MN(dwe(fwe,mwe))}}(),OH=0;JN.prototype={truncate:function(){this.data=VP(0),this.modified()},modified:function(){var rwe=WN();this.atime=rwe,this.mtime=rwe}},ZN.prototype={exists:function(rwe){return this.content[rwe]?1:0},mk:function(rwe,swe){this.content[rwe]=swe},get:function(rwe){return this.content[rwe]},list:function(){var rwe=[];for(var swe in this.content)rwe.push(swe);return rwe},remove:function(rwe){delete this.content[rwe]}};var YH=new ZN;YH.mk(XW,new ZN),KN(0,new JN(VP(0))),KN(1,new JN(VP(0))),KN(2,new JN(VP(0)));var MH=[],VH={},UH=0,XH=[RF,SP($M),-3],WH=[RF,SP($Y),-4],JH=[RF,SP(Pq),-7],ZH=[RF,SP(Xz),-11],KH=[0,SP(XW),1,0,0],QH=[0,0,0],$H=[0,SP("\0\0\xB2\xFF\xB3\xFF\xB9\xFFB\0C\0T\0W\0F\0I\0J\0K\0M\0e\0\xDD\xFF\xDE\xFF\xDF\xFF\xE0\xFF\xE3\xFF\xE4\xFF\xE5\xFF\xE6\xFF\xE7\xFF\xE8\xFF\xC0\0L\0e\0\x17\x01n\x01\xF6\xFF\xF7\xFFl\0u\0v\0\0\0\x0E\0\x0F\0\x07\x003\x01\xFE\xFF\xFF\xFF\x01\0\x12\0(\0\f\0\x15\0*\0\f\0=\0-\0\t\0\xB6\xFF\xF9\xFF\xE0\x01B\0u\0\x0F\x000\x004\0\x17\0\xE5\x01(\x008\0\x1A\0K\0:\0\x17\0\xFB\xFFh\0a\0\xAC\0q\0m\0y\0q\0i\0{\0{\0\xA8\0\xCA\xFF\xFA\xFF\xC9\xFF\xF8\xFF\x0B\x02\xA5\x02\xFC\x02S\x03\xAA\x03\x01\x04X\x04\xAF\x04\x06\x05]\x05\xB4\x05\x0B\x06b\x06\xB9\x06\xC3\x01\x10\x07g\x07\xBE\x07\x15\bl\b\xC3\b\x1A\tq\t\xC8\t\xB8\0\xE2\xFFE\x02\xC7\xFF\xDC\xFF\xC6\xFF\xDB\xFF\xB7\xFF\xAA\0\xDA\xFF\xAB\0\xD9\xFF\xAC\0\xD8\xFF\xD2\xFF\xAD\0\xD7\xFF\xB0\0\xD0\xFF\xCF\xFF\xCC\xFF\xD4\xFF\xCB\xFF\xD3\xFF\xC8\xFF\xC5\xFF:\n\xCC\xFF\xCD\xFF\xCF\xFF\xD3\xFF\xB0\0\xD9\xFF\xDA\xFF\xDD\xFF\xDE\xFF\xDF\xFF\xE0\xFF\xE3\xFF\xE4\xFF~\0\xE7\xFF\x80\0\xE9\xFF\xEA\xFF\x9A\0\x94\n\xFA\n\xD6\x01Q\x0B\xA8\x0B\x1A\f\xF9\xFF\xCF\0\xF1\0D\0\x9C\0\x9D\0\xA3\0\xC4\x0B\xFF\xFF\x83\0\xC1\0\xD1\0\xF9\0\xB4\0\xC4\0\xA7\0\xCB\t\xD4\0\x96\0\xFA\xFF\x1F\f\xEA\0\x1D\x01\xB7\0\xF3\0\xF4\0\xFA\0$\f\xE9\0\x15\x01\xF7\0\xDF\x0B\x17\x01\xD9\0\xFC\xFF,\x01&\x01{\x01@\x01<\x01H\x01@\x018\x01J\x01d\x01\xFB\xFF\xF3\x01\x0F\x01K\x01j\x01c\x01K\f>\x01N\x01P\x01\xEC\x0Bp\x01?\x01x\f\xFF\fV\r\xAD\r\0\x02\x04\x0E[\x0E\xB2\x0E\t\x0F`\x0F\xB7\x0F\x0E\x10e\x10\xBC\x10\x13\x11j\x11\xC1\x11\x18\x12o\x12\xC6\x12\x1D\x13t\x13\xCB\x13\"\x14\xD1\x01\xE2\xFFy\x14\xD0\x14'\x15~\x15\x99\x01\x9D\x01\xAD\x01\xA6\x01\x9F\x01\xEB\xFF\xE6\xFF\xE5\xFF\xD1\xFF\x1B\f\xFC\xFF\xFD\xFF\xFE\xFF\xFF\xFF\xCF\x15\xEE\xFF\x01\0\xEF\xFF\x18\x16\xF4\xFF\xF5\xFF\xF6\xFF\xF7\xFF\xF8\xFF\xF9\xFF\xF1\x02H\x03>\x16\xFE\xFF\xFF\xFFU\x16\xFD\xFF\x9F\x03\xFC\xFF{\x16\x92\x16\xB8\x16\xCF\x16\xF2\xFF\xF5\x16\xF1\xFF\xD7\x02\xFB\xFF\xEA\x01\xFE\xFF\xFF\xFF\xE4\x01\xFD\xFF\xFC\xFF;\x02\xFD\xFF\xFE\xFF\xFF\xFF\0\x17\xF9\xFF\xEE\x01`\x01\x9C\x01\xA0\x01*\x02)\fC\x15\xFE\xFF\xFF\xFFc\x01\xAD\x01\xC7\x01+\x02\xA0\x01\xBA\x01\xAA\x01\x87\x15\xCA\x01\xA7\x01\xFB\xFF\xFC\xFF\x0B\x16\xF8\xFF\x04\0\xF9\xFF\xFA\xFF8\x17,\x03\xFF\xFF\xFD\xFF\x05\0\xFE\xFF\xC0\x17\x96\t\xFB\xFF\xFC\xFF\x0B\x02\xFF\xFF\xFD\xFF\xFE\xFF2\x18\xF1\xFF\xF2\xFF\x8A\x18\xF4\xFF\xF5\xFF\xF6\xFF\xF7\xFF\xF8\xFF\xFA\xFFv\x02\xB0\x01!\x02\"\x023\x02\x88\x167\x18\xFE\xFF\xFF\xFF\x05\x02L\x02_\x02\xF3\x02@\x02Q\x02C\x02\xBD\x16c\x02%\x02\xFB\xFF\xFC\xFF|\f\xFB\xFF\xFC\xFF\xFD\xFF\xFE\xFF\x06\0\xFF\xFF\xFC\x18\xF9\xFF\xF8\x18\x07\0\xFD\xFF\xFE\xFF\xFF\xFFO\x19\xDF\n_\f\x84\x17\x9C\x19\xFC\xFF\xFB\xFF\xD3\x19\xFA\xFF*\x1A\x81\x1A\xD8\x1A/\x1B\x86\x1B\xAA\x02\xF8\x1B\xFA\xFF\xFB\xFF\xD6\x02G\x02\x83\x02\xA9\x02J\x03\x04\x19K\x1B\xFF\xFFp\x02\xB7\x02\xD7\x02\x8D\x03\xAA\x02\xBA\x02\x9D\x02\xC9\x16\xD9\x02\x9B\x02\xFC\xFF\xFD\xFF\xC3\x16\xF9\xFF\xFA\xFF\b\0\xFC\xFF\xE1\x02\xFE\xFF\xFF\xFF\xFD\xFF\xFB\xFF"),SP("\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFD\0A\0>\0=\0<\0;\0E\0G\0B\0C\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16\0K\0\x1E\0\x15\0\x15\0\xFF\xFF\xFF\xFFM\0?\0J\0M\0M\0M\0M\0\x02\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x03\0\xFF\xFF\x04\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF@\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x14\0\x14\0\x15\0\x14\0\x0F\0\x14\0\x14\0\x0B\0\n\0\r\0\f\0\x0E\0\x0E\0\x0E\0\xFF\xFF\x0E\0\x0E\0\x13\0\x12\0\x11\0\x10\0\x15\0\x13\0\x12\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF)\0\xFF\xFF*\0\xFF\xFF.\0\xFF\xFF\xFF\xFF2\0\xFF\xFF1\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF'\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF+\0\xFF\xFF\x17\0\xFF\xFF\xFF\xFF3\0\x13\0\x13\0\x1E\0\x12\0\x12\x001\0\xFF\xFF)\x003\x003\x003\x003\x003\0\x01\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x02\0\xFF\xFF\x03\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x12\0\x11\0\x11\0\x10\0\xFF\xFF\x10\0\x0F\0\x0F\0\x12\0\x11\0\f\0\x11\0\x11\0\b\0\x07\0\n\0\t\0\x0B\0\x0B\0\x0B\0\x0B\0\x0B\0\x0E\0\r\0\xFF\xFF\xFF\xFF\x13\0\x13\0\x13\0\x13\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x10\0\xFF\xFF\x0F\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\f\0\x05\0\x0F\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x04\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x04\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x05\0\x06\0\x06\0\x06\0\x06\0\x02\0\x01\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x06\0\xFF\xFF\xFF\xFF\x04\0\x07\0\xFF\xFF\xFF\xFF\x01\0\xFF\xFF\x03\0\xFF\xFF\xFF\xFF\xFF\xFF\x04\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\f\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x06\0\x0E\0\x0E\0\x0E\0\x0E\0\x02\0\x01\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\xFF\xFF\xFF\xFF\xFF\xFF\x06\0\x02\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x05\0\x05\0\x05\0\x05\0\x05\0\x01\0\0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x05\0\xFF\xFF\x06\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF"),SP("\x01\0\0\0\0\0\0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\0\0\0\0\0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\xFF\xFF\0\0\0\0\0\0\0\0\0\0\xFF\xFF\0\0\xFF\xFF\0\0\xFF\xFF\0\0\0\0\xFF\xFF\0\0\xFF\xFF\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x86\0\0\0\0\0\0\0\0\0\xFF\xFF\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xFF\xFF\0\0\xFF\xFF\0\0\0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\0\0\0\0\0\0\x01\x01\0\0\0\0\0\0\0\0\x06\x01\0\0\xFF\xFF\0\0\xFF\xFF\0\0\0\0\0\0\0\0\0\0\0\0\xFF\xFF\xFF\xFF\xFF\xFF\0\0\0\0\xFF\xFF\0\0\xFF\xFF\0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\xFF\xFF\0\0!\x01\0\0\xFF\xFF\0\0\0\0\xFF\xFF\0\0\0\0)\x01\0\0\0\0\0\0-\x01\0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\0\0D\x01\0\0\xFF\xFF\0\0\0\0\xFF\xFFK\x01\0\0\0\0\xFF\xFF\0\0\xFF\xFFP\x01\0\0\0\0\xFF\xFF\0\0\0\0\0\0W\x01\0\0\0\0\xFF\xFF\0\0\0\0\0\0\0\0\0\0\0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\0\0v\x01\0\0\0\0\0\0\0\0\xFF\xFF\0\0}\x01\0\0\xFF\xFF\xFF\xFF\0\0\0\0\0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\0\0\xFF\xFF\0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x93\x01\0\0\0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\0\0\xAA\x01\0\0\0\0\xFF\xFF\0\0\xFF\xFF\0\0\0\0\0\0\0\0"),SP("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0&\0(\0\b\x01&\0&\0F\x01M\x01{\x01\x80\x01\xB2\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0&\0\n\0\x1E\0\x1F\0\x18\0\x05\0\r\0\x1E\0\x15\0\x14\0 \0\x07\0\x10\0\x06\0\x1A\0!\0\x1C\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x0F\0\x11\0\t\0\x0B\0\b\0\x0E\0\x19\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x13\0'\0\x12\0\x04\0\x18\0\x1D\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x17\0\f\0\x16\0\x03\0\x84\0\x83\0\x82\0\x80\0{\0z\0w\0x\0u\0s\0r\0p\0o\0m\0R\x001\x000\0/\0\x81\x001\0k\0\x7F\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0N\x005\0.\0n\0&\0P\x004\0.\0-\x000\0/\0&\0&\0-\0&\0D\0C\0A\0>\0O\x003\0@\0?\0<\0=\0<\0<\0<\x002\x002\0&\0&\0&\0&\0&\0&\0&\0&\0&\0&\0&\0&\0q\0B\0<\0<\0<\0<\0<\0<\0<\0<\0<\0<\0<\0<\0E\0F\0G\0H\0I\0J\0K\0L\0M\0C\0%\0$\0#\0\x18\0Q\0l\0t\0v\0y\0}\0|\0&\0~\0\xFF\0\"\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0<\0\xFE\0\xFD\0\xF7\0\xCC\0\xB1\0\x02\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\xB3\0\xB0\0\xAF\0\xAE\0\x18\0\xB2\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0S\0&\0\xAD\0\xB1\0&\0&\0\xB0\0\xA6\0\xAC\0\xA6\0U\0\xA6\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\xAF\0\xAE\0&\0\xA6\0\xA6\0\xC2\0\xC1\0S\0S\0S\0S\0T\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0\xC0\0\xBF\0\xBE\0\xBD\0S\0\xBA\0S\0S\0S\0S\0T\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0\xAD\0\xBC\0\xBA\0\xBA\0\xBA\0\xBA\0\xAC\0\xBB\0\xC3\0U\0\xC4\0W\0W\0W\0W\0W\0W\0W\0W\0\x1B\0\x1B\0\xC5\0\xC6\0\xC7\0\xC8\0\xC9\0\xCA\0\xCB\0S\0Y\0S\0S\0T\0S\0S\0S\0S\0S\0S\0S\0S\0S\0X\0S\0S\0S\0S\0S\0S\0S\0S\0V\0S\0S\0\xC1\0\xD8\0\xD7\0\xD2\0S\0\xD2\0S\0Y\0S\0S\0T\0S\0S\0S\0S\0S\0S\0S\0S\0S\0X\0S\0S\0S\0S\0S\0S\0S\0S\0V\0S\0S\0<\0\xD6\0\xD5\0<\0<\0<\0\xD2\0\xD2\0<\0<\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0\xD4\0\xD2\0\xF2\0<\0\xF8\0\xF9\0\xD3\0\xF1\0<\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xFA\0\xFB\0\xFC\0'\x01,\0+\0*\0%\x01A\x01&\x017\0@\x01?\x01B\x01@\x017\0>\x01=\x01)\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0?\x013\x01S\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\x003\x01S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0*\x016\0>\x01=\x013\x013\x016\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\x003\x01U\x01T\x01\x18\0S\0r\x01S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0s\x01q\x01p\x01o\x01\x18\0t\x01\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0r\x01;\0:\x009\0<\x01<\x01;\0:\x009\0S\0;\x01;\x01q\x01n\x01e\x018\0a\0e\x01a\0m\x018\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0p\x01o\x01#\x01e\x01e\x01e\x01\x8B\x01S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0\xA7\x01\"\x01\xA6\x01\xA5\x01S\0\xA8\x01S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\xA4\x01\xA3\x01\xA6\x01h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0M\x01\xA5\x01\x9A\x01L\x01\x9A\x01+\x01\x9A\x01S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0\xA4\x01\xA3\x01\x9A\x01\x9A\x01S\0\xB1\x01S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\0\0\0\0\0\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0n\x01\0\0\0\0\0\0\0\0\0\0m\x01f\0f\0f\0f\0f\0f\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0\0\0\0\0\0\0\0\0S\0\0\0f\0f\0f\0f\0f\0f\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0_\0\x18\x01\x18\x01\x18\x01\x18\x01\x18\x01\x18\x01\x18\x01\x18\x01$\x01U\0\0\0W\0W\0W\0W\0W\0W\0W\0W\0^\0^\0\xA2\x01\0\0\0\0\0\0\0\0\0\0\xA1\x01_\0_\0_\0_\0`\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0\0\0\0\0\0\0\0\0_\0\0\0_\0_\0_\0_\0`\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0S\0\0\0\xA2\x01\0\0\0\0\0\0\0\0\xFF\xFF\xA1\x01\0\0\0\0\0\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0S\0S\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0\0\0\0\0\0\0\0\0S\0\0\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0Z\0Z\0S\0S\0S\0S\0S\0S\0S\0S\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0\0\0\0\0\0\0\0\0S\0\0\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0[\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0Z\0Z\0[\0[\0[\0[\0[\0[\0[\0[\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0\0\0\0\0\0\0\0\0[\0\0\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0\0\0\0\0\0\0\0\0[\0\0\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0]\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0]\0]\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0\0\0\0\0\0\0\0\0]\0\0\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0\0\0\0\0\0\0\0\0]\0\0\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0_\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0U\0\0\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0_\0_\0_\0_\0`\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0\0\0\0\0\0\0\0\0_\0\0\0_\0_\0_\0_\0`\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0\0\0\0\0\0\0\0\0_\0\0\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0\0\0\0\0\0\0\0\0\0\0\0\0a\0\0\0a\0\0\0\0\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0\0\0\0\0\0\0\0\0_\0\0\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0c\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0\0\0\0\0\0\0\0\0c\0\0\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0\0\0\0\0\0\0\0\0c\0\0\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0e\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0\0\0\0\0\0\0\0\0e\0\0\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0\0\0\0\0\0\0\0\0e\0\0\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0g\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0f\0f\0f\0f\0f\0f\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0\0\0\0\0\0\0\0\0g\0\0\0f\0f\0f\0f\0f\0f\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0\0\0\0\0\0\0\0\0g\0\0\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0S\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0S\0S\0S\0S\0T\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0\0\0\0\0\0\0\0\0S\0\0\0S\0S\0S\0S\0T\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0j\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0\0\0\0\0\0\0\0\0j\0\0\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0\0\0\0\0\0\0\0\0\0\0R\x01Q\x01\0\0\0\0\0\0\0\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0\0\0\0\0\0\0\0\0j\0\0\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0\xA6\0\xA7\0\0\0\xA6\0\xA6\0\0\0\0\0\0\0\xA6\0\xA6\0\xA6\0\xA6\0\xA6\0\xA6\0\xA6\0\xA6\0\xA6\0\xA6\0\xA6\0\0\0\0\0\0\0\0\0\xA6\0\0\0\x9F\0\0\0\x99\0\x98\0\x89\0\x9F\0\x92\0\x91\0\xA0\0\x88\0\x8F\0\x9E\0\x9B\0\xA1\0\x9D\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x8E\0\x90\0\x8C\0\x8A\0\x8B\0\x8D\0\xA6\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x97\0S\x01\x96\0\0\0\x99\0\0\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x9A\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x95\0\x93\0\x94\0\x99\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\0\0\0\0\0\0\0\0\x99\0\0\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x85\x01\x85\x01\x85\x01\x85\x01\x85\x01\x85\x01\x85\x01\x85\x01\x85\x01\x85\x01\0\0\0\0\xA5\0\xA4\0\xA3\0\x99\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xA2\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\0\0\0\0\0\0\0\0\0\0\0\0\x87\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\0\0\0\0\x86\x01\0\0\x99\0\0\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\xF3\0\x99\0\xDA\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xE1\0\0\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xDA\0\xDA\0\xDA\0\xDA\0\xDB\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\0\0\0\0\0\0\0\0\xDA\0\0\0\xDA\0\xDA\0\xDA\0\xDA\0\xDB\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xA6\0\0\0\0\0\xA6\0\xA6\0\0\0\0\0\0\0\0\0\xE1\0\0\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\x9C\0\x9C\0\0\0\0\0\xA6\0\0\0\0\0\0\0\0\0\xDA\0\xE5\0\xDA\0\xDA\0\xDB\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xE4\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xE2\0\xDA\0\xDA\0\0\0\0\0\0\0\0\0\xDA\0\0\0\xDA\0\xE5\0\xDA\0\xDA\0\xDB\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xE4\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xE2\0\xDA\0\xDA\0\xD2\0\0\0\x02\x01\xD2\0\xD2\0\xBA\0\0\0\0\0\xBA\0\xBA\0\xBA\0\0\0\0\0\xBA\0\xBA\x003\x01\0\0\0\x003\x013\x01\0\0\0\0\0\0\xD2\0\0\0\0\0\x04\x01\0\0\xBA\0\0\0\0\0\x04\x01\0\0\xBA\0\0\0\0\0\0\0\xCD\x003\x01\x9D\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\xD2\0\0\0\0\0\xD2\0\xD2\0\xB5\0\0\0\0\0\0\0\0\0\xB5\0\xBA\0\xBA\0\xBA\0\xBA\0\xBA\0\xBA\0\xBA\0\xBA\0\xBA\0\xBA\0\xBA\0\0\0\xD2\0\xD2\0\xD2\0\xD2\0\xD2\0\xD2\0\xD2\0\xD2\0\xD2\0\xD2\0\xD2\0\xD2\0\x03\x01\0\0\xCD\0\0\0\x9D\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\xB4\0{\x01\0\0\0\0z\x01\xB4\0\0\0\0\0\0\0\xBA\0\x85\x01\x85\x01\x85\x01\x85\x01\x85\x01\x85\x01\x85\x01\x85\x01\x85\x01\x85\x01\0\0\x89\x01\xD2\0\xDA\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xAB\0\xAA\0\xA9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\0\0\xA8\0\0\0\0\0\0\0\0\0x\x01\xDA\0\xDA\0\xDA\0\xDA\0\xDB\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\0\0\0\0\0\0\0\0\xDA\0\0\0\xDA\0\xDA\0\xDA\0\xDA\0\xDB\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\0\0\0\0\0\0\0\0w\x01\0\0\0\0\0\0\xD1\0\xD0\0\xCF\0\0\0\0\0\xB9\0\xB8\0\xB7\0\0\0\0\0\xB9\0\xB8\0\xB7\0\0\0\xCE\0:\x019\x018\x01\0\0\xB6\0\0\0\0\0\0\0\0\0\xB6\0\0\0\0\0\0\0\0\x007\x01\0\0\0\0\x02\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xDA\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xD1\0\xD0\0\xCF\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\0\0\xCE\0\0\0\0\0\0\0\0\0\0\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\0\0\0\0\0\0\0\0\xDA\0\0\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\0\0y\x01\0\0\0\0\0\0\0\0\xDD\0\0\0\xDD\0\0\0\0\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\0\0\0\0\0\0\0\0\xDA\0\0\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xE0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\0\0\0\0\0\0\0\0\xE0\0\0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xDF\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\0\0\0\0\0\0\0\0\xDF\0\0\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\0\0\0\0\0\0\0\0\xDF\0\0\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xE0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\0\0\0\0\0\0\0\0\xE0\0\0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xDA\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\0\0\0\0\0\0\0\0\xDA\0\0\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\0\0\0\0\0\0\0\0\xDA\0\0\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xEB\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xE1\0\0\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xEA\0\xEA\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xEB\0\xEB\0\xEB\0\xEB\0\xEC\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\0\0\0\0\0\0\0\0\xEB\0\0\0\xEB\0\xEB\0\xEB\0\xEB\0\xEC\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xDA\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xDA\0\xDA\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\0\0\0\0\0\0\0\0\xDA\0\0\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xE6\0\xE6\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\0\0\0\0\0\0\0\0\xDA\0\0\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xE7\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xE6\0\xE6\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\0\0\0\0\0\0\0\0\xE7\0\0\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\0\0\0\0\0\0\0\0\xE7\0\0\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE9\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE9\0\xE9\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\0\0\0\0\0\0\0\0\xE9\0\0\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\0\0\0\0\0\0\0\0\xE9\0\0\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xEB\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xE1\0\0\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xEB\0\xEB\0\xEB\0\xEB\0\xEC\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\0\0\0\0\0\0\0\0\xEB\0\0\0\xEB\0\xEB\0\xEB\0\xEB\0\xEC\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\0\0\0\0\0\0\0\0\xEB\0\0\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\0\0\0\0\0\0\0\0\0\0\0\0\xDD\0\0\0\xDD\0\0\0\0\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\0\0\0\0\0\0\0\0\xEB\0\0\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEE\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\0\0\0\0\0\0\0\0\xEE\0\0\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\0\0\0\0\0\0\0\0\xEE\0\0\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xF0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\0\0\0\0\0\0\0\0\xF0\0\0\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\0\0\0\0\0\0\0\0\xF0\0\0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\x99\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\0\0\0\0\0\0\0\0\x99\0\0\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\xF4\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\0\0\0\0\0\0\0\0\x99\0\0\0\x99\0\x99\0\x99\0\x99\0\xF5\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\x003\x015\x01\0\x003\x013\x01\0\0\0\0\0\0\0\0\0\0\0\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\0\0\0\x003\x01\0\0\0\0\0\0\0\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\0\0\0\0\0\0\0\0\x99\0\0\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\xF6\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\b\x01\0\0\0\0\x07\x01\x99\0\0\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\0\0\0\0\0\0\0\0\0\0\0\0\x11\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x013\x013\x013\x013\x013\x013\x013\x013\x013\x013\x013\x01\0\0\0\0\0\0F\x01\0\0\0\0E\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0:\x019\x018\x01\0\0\0\0\0\0\0\0\x13\x01\0\0\0\0\0\0\0\0\0\0\x0F\x017\x01\0\0\0\0\x0E\x013\x01\0\0\0\0\0\0H\x01\0\0\0\0\r\x01\0\0\0\0\0\0\f\x01\0\0\x0B\x01\t\x01\n\x01\0\0\x12\x01\x1A\x01\x1A\x01\x1A\x01\x1A\x01\x1A\x01\x1A\x01\x1A\x01\x1A\x01\x1A\x01\x1A\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x1A\x01\x1A\x01\x1A\x01\x1A\x01\x1A\x01\x1A\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0G\x01I\x01\0\0\0\0\0\0\0\0\0\0\0\0\x15\x01\x15\x01\x15\x01\x15\x01\x15\x01\x15\x01\x15\x01\x15\x01\x15\x01\x15\x01\0\0\x1A\x01\x1A\x01\x1A\x01\x1A\x01\x1A\x01\x1A\x01\x15\x01\x15\x01\x15\x01\x15\x01\x15\x01\x15\x01\x16\x01\x16\x01\x16\x01\x16\x01\x16\x01\x16\x01\x16\x01\x16\x01\x16\x01\x16\x01\0\0\0\0e\x01\0\0\x19\x01e\x01e\x01\x16\x01\x16\x01\x16\x01\x16\x01\x16\x01\x16\x01\0\0\0\0\0\0\x15\x01\x15\x01\x15\x01\x15\x01\x15\x01\x15\x01\0\0\0\0\0\0e\x01\0\0\0\0\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\0\0\x16\x01\x16\x01\x16\x01\x16\x01\x16\x01\x16\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1B\x01\x1B\x01\x1B\x01\x1B\x01\x1B\x01\x1B\x01\x1B\x01\x1B\x01\x1B\x01\x1B\x01\0\0\xAB\x01\0\0\x14\x01\xAC\x01\0\0\0\0\x1B\x01\x1B\x01\x1B\x01\x1B\x01\x1B\x01\x1B\x01\0\0\0\0\0\0\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\0\0\0\0\0\0\0\0\0\0\xAE\x01\x1C\x01\x1C\x01\x1C\x01\x1C\x01\x1C\x01\x1C\x01\x1C\x01\x1C\x01\x1C\x01\x1C\x01\0\0\x1B\x01\x1B\x01\x1B\x01\x1B\x01\x1B\x01\x1B\x01\x1C\x01\x1C\x01\x1C\x01\x1C\x01\x1C\x01\x1C\x01\x1D\x01\x1D\x01\x1D\x01\x1D\x01\x1D\x01\x1D\x01\x1D\x01\x1D\x01\x1D\x01\x1D\x013\x015\x01J\x013\x014\x01\0\0\0\0\x1D\x01\x1D\x01\x1D\x01\x1D\x01\x1D\x01\x1D\x01\0\0\0\0\0\0\x1C\x01\x1C\x01\x1C\x01\x1C\x01\x1C\x01\x1C\x01\xAD\x013\x01\0\0\0\0\xAF\x01\0\0\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01.\x01\x1D\x01\x1D\x01\x1D\x01\x1D\x01\x1D\x01\x1D\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\0\0e\x01e\x01e\x01e\x01e\x01e\x01e\x01e\x01e\x01e\x01e\x01\0\0\x9A\x01\x9A\x01\x9A\x01\x9A\x01\x9A\x01\x9A\x01\x9A\x01\x9A\x01\x9A\x01\x9A\x01\x9A\x01\0\0\0\0\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01N\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0l\x01k\x01j\x01e\x01\0\0\0\0\0\0\0\0\0\0\x1F\x01\0\0\0\0\0\0\0\0i\x01\x9A\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01\0\0\0\0\0\0\0\0N\x01\0\0N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01\0\0\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\0\0\0\0\0\0\0\0\0\0\xB0\x01\0\0\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x002\x011\x010\x01N\x01\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\0\0\0\0\0\0\0\0/\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x006\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01\0\0\0\0\0\0\0\0N\x01\0\0N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01e\x01g\x01\0\0e\x01f\x01e\x01g\x01\0\0e\x01e\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0e\x01\0\0X\x01\0\0Y\x01e\x01\0\0X\x01\0\0\0\0\0\0\0\0\0\0\0\0[\x01`\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\\\x01\0\0_\x01Z\x01^\x01\0\0\0\0Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01\0\0\0\0\0\0\0\0Y\x01\0\0Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01]\x01Y\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0Y\x01\0\0\0\0Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01\0\0\0\0\0\0\0\0Y\x01\0\0Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01\0\0\x80\x01\0\0\0\0\x7F\x01\0\0\0\0\0\0\x9A\x01\0\0\0\0\x9A\x01\x9A\x01\0\0d\x01c\x01b\x01\0\0\0\0l\x01k\x01j\x01\x84\x01\x83\x01\0\0\x82\x01\0\0\0\0a\x01~\x01\x82\x01\x9A\x01\0\0i\x01\0\0\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01h\x01\0\0\0\0\0\0\0\0\0\0\x82\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\0\0\0\0\0\0\0\0\x83\x01\0\0\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x8A\x01\0\0\0\0\0\0\x82\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\0\0\0\0\0\0\0\0\x8A\x01\0\0\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\0\0\0\0\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\0\0\x88\x01\0\0\0\0\0\0\0\0\0\0\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\0\0\0\0\xA0\x01\x9F\x01\x9E\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x9D\x01\0\0\0\0\0\0\x8C\x01\0\0\0\0\0\0\0\0\x81\x01\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\0\0\x8B\x01\0\0\0\0\0\0\0\0\0\0\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\0\0\0\0\0\0\0\0\x8C\x01\0\0\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8D\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\0\0\x8B\x01\0\0\0\0\0\0\0\0\0\0\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\0\0\0\0\0\0\0\0\x8D\x01\0\0\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8E\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\0\0\x8B\x01\0\0\0\0\0\0\0\0\0\0\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\0\0\0\0\0\0\0\0\x8E\x01\0\0\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8F\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\0\0\x8B\x01\0\0\0\0\0\0\0\0\0\0\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\0\0\0\0\0\0\0\0\x8F\x01\0\0\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x90\x01\x9A\x01\x9C\x01\0\0\x9A\x01\x9A\x01\0\0\0\0\0\0\0\0\0\0\0\0\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\0\0\x8B\x01\x9A\x01\0\0\0\0\0\0\0\0\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\0\0\0\0\0\0\0\0\x90\x01\0\0\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x91\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\0\0\x8B\x01\0\0\0\0\0\0\0\0\0\0\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\0\0\0\0\0\0\0\0\x91\x01\0\0\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x91\x01\x9A\x01\x9C\x01\0\0\x9A\x01\x9B\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x9A\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x95\x01\0\0\0\0\0\0\0\0\xA0\x01\x9F\x01\x9E\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x9D\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x94\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x99\x01\x98\x01\x97\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x96\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xFF\xFF"),SP("\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\0\0\x07\x01\0\0\0\0E\x01L\x01z\x01\x7F\x01\xAC\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x04\0\x05\0\x06\0\x07\0\b\0\b\0\t\0\t\0\n\0\x0B\0\x0B\0\f\0\r\0\x19\0\x1F\0#\0$\0$\0\x06\0*\0\x1A\0\x07\0\x1A\0\x1A\0\x1A\0\x1A\0\x1A\0\x1A\0\x1A\0\x1A\0\x1A\0\x1A\0 \0!\0%\0\r\0-\0 \0!\0,\0%\0+\0+\0.\0/\0,\x001\x006\x007\x009\0;\0 \0!\0:\0:\0=\0;\0>\0?\0A\0\"\0)\x000\x000\x000\x000\x000\x000\x000\x000\x000\x000\x000\x002\0\f\x008\0@\0@\0@\0@\0@\0@\0@\0@\0@\0@\0@\0B\0D\0E\0F\0G\0H\0I\0J\0K\0L\0M\0\0\0\0\0\0\0\x18\0N\0k\0s\0u\0w\0z\0z\x000\0|\0\x8A\0\0\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0@\0\x93\0\x95\0\x98\0\xA0\0\xA2\0\0\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\xA1\0\xA3\0\xA4\0\xA4\0\x18\0\xA1\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x1B\0&\0\xA5\0\xA8\0&\0&\0\xA9\0\xAC\0\xA5\0\xAD\0\x1B\0\xAE\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\xAA\0\xAA\0&\0\xB0\0\xB1\0\xB4\0\xB5\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\xB6\0\xB7\0\xB8\0\xB8\0\x1B\0\xBB\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1C\0\xAB\0\xB9\0\xBC\0\xBD\0\xBF\0\xC0\0\xAB\0\xB9\0\xC2\0\x1C\0\xC3\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\xC4\0\xC5\0\xC6\0\xC7\0\xC8\0\xC9\0\xCA\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\xCB\0\xCE\0\xCF\0\xD3\0\x1C\0\xD4\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\x005\0\xD0\0\xD0\x005\x005\0<\0\xD5\0\xD7\0<\0<\0a\0a\0a\0a\0a\0a\0a\0a\0a\0a\0\xD1\0\xD8\0\xF1\x005\0\xF7\0\xF8\0\xD1\0\x9B\0<\0\x9B\0\x9B\0\x9B\0\x9B\0\x9B\0\x9B\0\x9B\0\x9B\0\x9B\0\x9B\0\xF9\0\xFA\0\xFB\0%\x01&\0&\0&\0\"\x01.\x01\"\x015\0/\x010\x01.\x017\x01<\x001\x011\x01&\0\xCD\0\xCD\0\xCD\0\xCD\0\xCD\0\xCD\0\xCD\0\xCD\0\xCD\0\xCD\x008\x01;\x01S\0\xDD\0\xDD\0\xDD\0\xDD\0\xDD\0\xDD\0\xDD\0\xDD\0\xDD\0\xDD\0<\x01S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0(\x015\x009\x019\x01=\x01?\x01<\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0@\x01R\x01R\x01m\0S\0a\x01S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0S\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0`\x01b\x01c\x01c\x01m\0`\x01m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0m\0i\x015\x005\x005\x002\x01:\x01<\0<\0<\0T\x002\x01:\x01j\x01d\x01m\x015\0T\0n\x01T\0d\x01<\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0k\x01k\x01 \x01o\x01q\x01r\x01\x91\x01T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0\x95\x01 \x01\x96\x01\x97\x01T\0\x95\x01T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0U\0\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x98\x01\x98\x01\x9D\x01U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0I\x01\x9E\x01\xA1\x01I\x01\xA2\x01(\x01\xA3\x01U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0\x9F\x01\x9F\x01\xA5\x01\xA6\x01U\0\xAE\x01U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0V\0\x11\x01\x11\x01\x11\x01\x11\x01\x11\x01\x11\x01\x11\x01\x11\x01\xFF\xFF\xFF\xFF\xFF\xFFV\0V\0V\0V\0V\0V\0V\0V\0V\0V\0l\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFl\x01V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFV\0\xFF\xFFV\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0W\0\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01 \x01W\0\xFF\xFFW\0W\0W\0W\0W\0W\0W\0W\0W\0W\0\x99\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x99\x01W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFW\0\xFF\xFFW\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0W\0X\0\xFF\xFF\xA0\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFI\x01\xA0\x01\xFF\xFF\xFF\xFF\xFF\xFFX\0X\0X\0X\0X\0X\0X\0X\0X\0X\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFX\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFX\0\xFF\xFFX\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0X\0Y\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFY\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFY\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFY\0\xFF\xFFY\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Y\0Z\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFZ\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFZ\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFZ\0\xFF\xFFZ\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0Z\0[\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF[\0\xFF\xFF[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0[\0\\\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\\\0\xFF\xFF\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0]\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF]\0\xFF\xFF]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0]\0^\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF^\0\xFF\xFF^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF^\0\xFF\xFF^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0_\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF_\0\xFF\xFF_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0_\0`\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF`\0\xFF\xFF`\0\xFF\xFF\xFF\xFF`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF`\0\xFF\xFF`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0b\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFb\0b\0b\0b\0b\0b\0b\0b\0b\0b\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFb\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFb\0\xFF\xFFb\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0c\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFc\0c\0c\0c\0c\0c\0c\0c\0c\0c\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFc\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFc\0\xFF\xFFc\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0c\0d\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFd\0d\0d\0d\0d\0d\0d\0d\0d\0d\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFd\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFd\0\xFF\xFFd\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0e\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFe\0e\0e\0e\0e\0e\0e\0e\0e\0e\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFe\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFe\0\xFF\xFFe\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0f\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFf\0f\0f\0f\0f\0f\0f\0f\0f\0f\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFf\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFf\0\xFF\xFFf\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0g\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFg\0g\0g\0g\0g\0g\0g\0g\0g\0g\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFg\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFg\0\xFF\xFFg\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0g\0h\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFh\0h\0h\0h\0h\0h\0h\0h\0h\0h\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFh\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFh\0\xFF\xFFh\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0i\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFi\0i\0i\0i\0i\0i\0i\0i\0i\0i\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFi\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFi\0\xFF\xFFi\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0j\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFO\x01O\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFj\0j\0j\0j\0j\0j\0j\0j\0j\0j\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFj\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFj\0\xFF\xFFj\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0j\0\x85\0\x85\0\xFF\xFF\x85\0\x85\0\xFF\xFF\xFF\xFF\xFF\xFF\xAF\0\xAF\0\xAF\0\xAF\0\xAF\0\xAF\0\xAF\0\xAF\0\xAF\0\xAF\0\xAF\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x85\0\xFF\xFF\x85\0\xFF\xFF\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\xAF\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0O\x01\x85\0\xFF\xFF\x85\0\xFF\xFF\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x99\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x99\0\xFF\xFF\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x99\0\x84\x01\x84\x01\x84\x01\x84\x01\x84\x01\x84\x01\x84\x01\x84\x01\x84\x01\x84\x01\xFF\xFF\xFF\xFF\x85\0\x85\0\x85\0\x9A\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x85\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x85\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\xFF\xFF\xFF\xFF\x84\x01\xFF\xFF\x9A\0\xFF\xFF\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9A\0\x9C\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x9C\0\xFF\xFF\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x9C\0\xFF\xFF\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9D\0\xA6\0\xFF\xFF\xFF\xFF\xA6\0\xA6\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x9D\0\xFF\xFF\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\xFF\xFF\xFF\xFF\xA6\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x9D\0\xFF\xFF\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9E\0\xFF\xFF\0\x01\x9E\0\x9E\0\xB3\0\xFF\xFF\xFF\xFF\xB3\0\xB3\0\xBA\0\xFF\xFF\xFF\xFF\xBA\0\xBA\x003\x01\xFF\xFF\xFF\xFF3\x013\x01\xFF\xFF\xFF\xFF\xFF\xFF\x9E\0\xFF\xFF\xFF\xFF\0\x01\xFF\xFF\xB3\0\xFF\xFF\xFF\xFF\0\x01\xFF\xFF\xBA\0\xFF\xFF\xFF\xFF\xFF\xFF\x9E\x003\x01\x9E\0\x9E\0\x9E\0\x9E\0\x9E\0\x9E\0\x9E\0\x9E\0\x9E\0\x9E\0\xD2\0\xFF\xFF\xFF\xFF\xD2\0\xD2\0\xB3\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xBA\0\xBE\0\xBE\0\xBE\0\xBE\0\xBE\0\xBE\0\xBE\0\xBE\0\xBE\0\xBE\0\xBE\0\xFF\xFF\xD2\0\xD6\0\xD6\0\xD6\0\xD6\0\xD6\0\xD6\0\xD6\0\xD6\0\xD6\0\xD6\0\xD6\0\0\x01\xFF\xFF\xD2\0\xFF\xFF\xD2\0\xD2\0\xD2\0\xD2\0\xD2\0\xD2\0\xD2\0\xD2\0\xD2\0\xD2\0\xB3\0u\x01\xFF\xFF\xFF\xFFu\x01\xBA\0\xFF\xFF\xFF\xFF\xFF\xFF\xBE\0\x85\x01\x85\x01\x85\x01\x85\x01\x85\x01\x85\x01\x85\x01\x85\x01\x85\x01\x85\x01\xFF\xFF\x85\x01\xD6\0\xD9\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xA6\0\xA6\0\xA6\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xFF\xFF\xA6\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFu\x01\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xD9\0\xFF\xFF\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFu\x01\xFF\xFF\xFF\xFF\xFF\xFF\x9E\0\x9E\0\x9E\0\xFF\xFF\xFF\xFF\xB3\0\xB3\0\xB3\0\xFF\xFF\xFF\xFF\xBA\0\xBA\0\xBA\0\xFF\xFF\x9E\x003\x013\x013\x01\xFF\xFF\xB3\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xBA\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF3\x01\xFF\xFF\xFF\xFF\0\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xDA\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xD2\0\xD2\0\xD2\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xFF\xFF\xD2\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xDA\0\xFF\xFF\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDA\0\xDB\0\xFF\xFFu\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xDB\0\xFF\xFF\xDB\0\xFF\xFF\xFF\xFF\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xDB\0\xFF\xFF\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDC\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xDC\0\xFF\xFF\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDE\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xDE\0\xFF\xFF\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDF\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xDF\0\xFF\xFF\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xDF\0\xE0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE0\0\xFF\xFF\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE0\0\xE1\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE1\0\xFF\xFF\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE2\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE2\0\xFF\xFF\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE3\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE3\0\xFF\xFF\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE3\0\xFF\xFF\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE4\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE4\0\xFF\xFF\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE5\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE5\0\xFF\xFF\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE5\0\xE6\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE6\0\xFF\xFF\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE6\0\xE7\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE7\0\xFF\xFF\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE7\0\xE8\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE8\0\xFF\xFF\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE9\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE9\0\xFF\xFF\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xE9\0\xEA\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xEA\0\xFF\xFF\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xEA\0\xFF\xFF\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEB\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xEB\0\xFF\xFF\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEB\0\xEC\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xEC\0\xFF\xFF\xEC\0\xFF\xFF\xFF\xFF\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xEC\0\xFF\xFF\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xED\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xED\0\xFF\xFF\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xEE\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xEE\0\xFF\xFF\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEE\0\xEF\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xEF\0\xFF\xFF\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xF0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xF0\0\xFF\xFF\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF0\0\xF3\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xF3\0\xFF\xFF\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF3\0\xF4\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xF4\0\xFF\xFF\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF4\0\xF5\x004\x014\x01\xFF\xFF4\x014\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xFF\xFF\xFF\xFF4\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xF5\0\xFF\xFF\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF5\0\xF6\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\x05\x01\xFF\xFF\xFF\xFF\x05\x01\xF6\0\xFF\xFF\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xF6\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x05\x01\x05\x01\x05\x01\x05\x01\x05\x01\x05\x01\x05\x01\x05\x01>\x01>\x01>\x01>\x01>\x01>\x01>\x01>\x01>\x01>\x01>\x01\xFF\xFF\xFF\xFF\xFF\xFFC\x01\xFF\xFF\xFF\xFFC\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF4\x014\x014\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x05\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x05\x014\x01\xFF\xFF\xFF\xFF\x05\x01>\x01\xFF\xFF\xFF\xFF\xFF\xFFC\x01\xFF\xFF\xFF\xFF\x05\x01\xFF\xFF\xFF\xFF\xFF\xFF\x05\x01\xFF\xFF\x05\x01\x05\x01\x05\x01\xFF\xFF\x05\x01\t\x01\t\x01\t\x01\t\x01\t\x01\t\x01\t\x01\t\x01\t\x01\t\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\t\x01\t\x01\t\x01\t\x01\t\x01\t\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFC\x01C\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x12\x01\x12\x01\x12\x01\x12\x01\x12\x01\x12\x01\x12\x01\x12\x01\x12\x01\x12\x01\xFF\xFF\t\x01\t\x01\t\x01\t\x01\t\x01\t\x01\x12\x01\x12\x01\x12\x01\x12\x01\x12\x01\x12\x01\x15\x01\x15\x01\x15\x01\x15\x01\x15\x01\x15\x01\x15\x01\x15\x01\x15\x01\x15\x01\xFF\xFF\xFF\xFFe\x01\xFF\xFF\t\x01e\x01e\x01\x15\x01\x15\x01\x15\x01\x15\x01\x15\x01\x15\x01\xFF\xFF\xFF\xFF\xFF\xFF\x12\x01\x12\x01\x12\x01\x12\x01\x12\x01\x12\x01\xFF\xFF\xFF\xFF\xFF\xFFe\x01\xFF\xFF\xFF\xFF\x19\x01\x19\x01\x19\x01\x19\x01\x19\x01\x19\x01\x19\x01\x19\x01\x19\x01\x19\x01\xFF\xFF\x15\x01\x15\x01\x15\x01\x15\x01\x15\x01\x15\x01\x19\x01\x19\x01\x19\x01\x19\x01\x19\x01\x19\x01\x1A\x01\x1A\x01\x1A\x01\x1A\x01\x1A\x01\x1A\x01\x1A\x01\x1A\x01\x1A\x01\x1A\x01\xFF\xFF\xA9\x01\xFF\xFF\x05\x01\xA9\x01\xFF\xFF\xFF\xFF\x1A\x01\x1A\x01\x1A\x01\x1A\x01\x1A\x01\x1A\x01\xFF\xFF\xFF\xFF\xFF\xFF\x19\x01\x19\x01\x19\x01\x19\x01\x19\x01\x19\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xA9\x01\x1B\x01\x1B\x01\x1B\x01\x1B\x01\x1B\x01\x1B\x01\x1B\x01\x1B\x01\x1B\x01\x1B\x01\xFF\xFF\x1A\x01\x1A\x01\x1A\x01\x1A\x01\x1A\x01\x1A\x01\x1B\x01\x1B\x01\x1B\x01\x1B\x01\x1B\x01\x1B\x01\x1C\x01\x1C\x01\x1C\x01\x1C\x01\x1C\x01\x1C\x01\x1C\x01\x1C\x01\x1C\x01\x1C\x01,\x01,\x01C\x01,\x01,\x01\xFF\xFF\xFF\xFF\x1C\x01\x1C\x01\x1C\x01\x1C\x01\x1C\x01\x1C\x01\xFF\xFF\xFF\xFF\xFF\xFF\x1B\x01\x1B\x01\x1B\x01\x1B\x01\x1B\x01\x1B\x01\xA9\x01,\x01\xFF\xFF\xFF\xFF\xA9\x01\xFF\xFF\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01,\x01\x1C\x01\x1C\x01\x1C\x01\x1C\x01\x1C\x01\x1C\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\xFF\xFFp\x01p\x01p\x01p\x01p\x01p\x01p\x01p\x01p\x01p\x01p\x01\xFF\xFF\xA4\x01\xA4\x01\xA4\x01\xA4\x01\xA4\x01\xA4\x01\xA4\x01\xA4\x01\xA4\x01\xA4\x01\xA4\x01\xFF\xFF\xFF\xFF\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01\x1E\x01H\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFe\x01e\x01e\x01p\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x1E\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFe\x01\xA4\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFH\x01\xFF\xFFH\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01H\x01\xFF\xFF\x86\x01\x86\x01\x86\x01\x86\x01\x86\x01\x86\x01\x86\x01\x86\x01\x86\x01\x86\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xA9\x01\xFF\xFF\x86\x01\x86\x01\x86\x01\x86\x01\x86\x01\x86\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF,\x01,\x01,\x01N\x01\x86\x01\x86\x01\x86\x01\x86\x01\x86\x01\x86\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF,\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF,\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFN\x01\xFF\xFFN\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01N\x01V\x01V\x01\xFF\xFFV\x01V\x01f\x01f\x01\xFF\xFFf\x01f\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFV\x01\xFF\xFFV\x01\xFF\xFFV\x01f\x01\xFF\xFFV\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFV\x01V\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFV\x01\xFF\xFFV\x01V\x01V\x01\xFF\xFF\xFF\xFFV\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFV\x01\xFF\xFFV\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01V\x01Y\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFY\x01\xFF\xFF\xFF\xFFY\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFY\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFY\x01\xFF\xFFY\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01Y\x01\xFF\xFF|\x01\xFF\xFF\xFF\xFF|\x01\xFF\xFF\xFF\xFF\xFF\xFF\x9A\x01\xFF\xFF\xFF\xFF\x9A\x01\x9A\x01\xFF\xFFV\x01V\x01V\x01\xFF\xFF\xFF\xFFf\x01f\x01f\x01~\x01~\x01\xFF\xFF|\x01\xFF\xFF\xFF\xFFV\x01|\x01|\x01\x9A\x01\xFF\xFFf\x01\xFF\xFF~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01V\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF|\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF~\x01\xFF\xFF~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01~\x01\x83\x01\xFF\xFF\xFF\xFF\xFF\xFF|\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x83\x01\xFF\xFF\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\x83\x01\xFF\xFF\xFF\xFF\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\xFF\xFF\x87\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\xFF\xFF\xFF\xFF\x9A\x01\x9A\x01\x9A\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x9A\x01\xFF\xFF\xFF\xFF\xFF\xFF\x8A\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF|\x01\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\x87\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\xFF\xFF\x8A\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x8A\x01\xFF\xFF\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8A\x01\x8C\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\xFF\xFF\x8C\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x8C\x01\xFF\xFF\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8C\x01\x8D\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\xFF\xFF\x8D\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x8D\x01\xFF\xFF\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8D\x01\x8E\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\xFF\xFF\x8E\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x8E\x01\xFF\xFF\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8E\x01\x8F\x01\x9B\x01\x9B\x01\xFF\xFF\x9B\x01\x9B\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\xFF\xFF\x8F\x01\x9B\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x8F\x01\xFF\xFF\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x8F\x01\x90\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\xFF\xFF\x90\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x90\x01\xFF\xFF\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x90\x01\x92\x01\x92\x01\xFF\xFF\x92\x01\x92\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x92\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x92\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x9B\x01\x9B\x01\x9B\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x9B\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x92\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x92\x01\x92\x01\x92\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x92\x01\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x92\x01"),SP("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\n\0\x16\0\"\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x02\0\0\0\0\0\0\0\x01\0\f\0\0\0\f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0,\x006\0_\0B\0v\0L\0N\0\0\0\x81\0\0\0\x98\0\0\0\xA2\0\xAC\0\xB6\0\0\0\xC0\0\0\0\xCA\0\0\0\xE1\0\xEB\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x04\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x0E\x01\x1A\x01&\x01W\x01\0\0\0\0\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x07\0\0\0\0\0\0\0\0\0\0\0\0\0\t\0\x0B\0\r\0\x0F\0\xE5\0\x1A\0\b\0h\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0H\x01\0\0\0\0\0\0\0\0y\x01\r\0\x1C\0\x10\0\x1A\x01\x1D\0E\0\x83\x01\0\0\x8D\x01\x9A\x01\xA4\x01\xAE\x01\0\0\0\0\xB8\x01\xC2\x01\xDB\x01\xE5\x01\x89\0\x8B\0\0\0\xF9\x01\0\0\x03\x02\0\0\r\x02\x17\x02\0\0!\x02\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),SP("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x0F\0\x0F\0\0\0\x0F\0\0\0\x0F\0\x0F\0\0\0#\0\0\0&\0)\0)\0)\0\0\0)\0)\0\0\0,\0\0\0/\0\0\0\0\0,\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0W\0W\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0h\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0W\0k\0k\0s\0\0\0s\0v\0v\0W\0k\0~\0k\0k\0&\0\x8F\0/\0\x94\0\x99\0\x99\0\x99\0\x99\0\x99\0\x9E\0\xA1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),SP("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),SP("\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\t\0\0\0\t\0\t\0\t\0\t\0\t\0e\0\0\0e\0e\0e\0e\0e\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\t\0\0\0\t\0\0\0\0\0\0\0\0\0e\0\0\0e\0\t\0e\0\0\0\0\0\0\0\0\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\0\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\0\0\x04\0\x04\0\x04\0\x04\0\x04\0\x04\0\x04\0\x04\0\x01\0\x01\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\0\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x18\0\x01\0\x01\0 \0 \0 \0 \0\t\0\t\0\t\0\t\0\t\0\t\0\t\0\t\0\t\0\t\0\t\0\t\0\t\0e\0\t\0\x15\0\x15\0\x15\0\x15\0\x15\0\x15\0\x15\0\x15\0\x15\0\x15\0e\0e\x002\x002\x002\0\0\0\t\0\x15\0\x15\0\x15\0\x15\0\x15\0\x15\0\x1D\0\x1D\0\x1D\0\x1D\0\x1D\0\x1D\0\x1D\0\x1D\0e\x002\0\t\0\x1D\0\x1D\0\x1D\0\x1D\0\x1D\0\x1D\0\x1D\0\x1D\0\x8C\0\x8C\0\x8C\0\x8C\0\0\0\0\0\t\0\x15\0\x15\0\x15\0\x15\0\x15\0\x15\0\x01\0e\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x15\0\x15\0\x15\0\x15\0\x15\0\x15\0\x15\0\x15\0\x15\0\x15\x002\0\0\0\0\0\0\0\0\0\0\0\0\0\x15\0\x15\0\x15\0\x15\0\x15\0\x15\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x01\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\x12\0\0\0\0\0\0\0\0\0\0\0\0\0\x15\0\x15\0\x15\0\x15\0\x15\0\x15\x002\0\0\0\0\0M\0M\0M\0M\0M\0M\0M\0M\0M\0M\0R\0R\0R\0R\0R\0R\0R\0R\0R\0R\0R\0\0\0R\0R\0R\0R\0R\0R\0R\0R\0R\0R\0M\0\0\0`\0`\0`\0`\0`\0`\0`\0`\0R\0R\x002\0\0\0\0\x002\x002\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0e\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x002\0M\0M\0M\0M\0M\0M\0M\0M\0M\0M\x002\0\0\0\0\x002\x002\0R\0R\0R\0R\0R\0R\0R\0R\0R\0R\0\0\0\0\0\0\0e\0\0\0\0\0\0\0\0\x002\x002\x002\x002\x002\x002\x002\x002\x002\x002\x002\x002\0\0\0\0\0\0\0\0\0R\0R\0R\0R\0R\0R\0R\0R\0R\0R\0R\0R\0R\0R\0R\0R\0R\0R\0R\0R\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0\0\0\0\x002\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0R\0R\0R\0R\0R\0R\0R\0R\0R\0R\0{\0{\0{\0{\0{\0{\0{\0{\0{\0{\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0{\0{\0{\0{\0{\0{\0R\0\0\0\x81\0\x81\0\x81\0\x81\0\x81\0\x81\0\x81\0\x81\0\x86\0\x86\0\x89\0\x89\0\x89\0\x89\0\x89\0\x89\0\x89\0\x89\0\0\0\0\0\0\0\0\0\0\0\0\0{\0{\0{\0{\0{\0{\0\x89\0\x89\0\x89\0\x89\0\x89\0\x89\0\x89\0\x89\0R\0\0\0\x86\0\x86\0\x86\0\x86\0\x86\0\x86\0\x86\0\x86\0\x86\0\x86\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0p\0{\0{\0{\0{\0{\0{\0{\0{\0{\0{\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0{\0{\0{\0{\0{\0{\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0{\0{\0{\0{\0{\0{\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),SP("\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF5\0\xFF\xFF<\x005\x005\0<\0<\0\xB3\0\xFF\xFF\xBA\0\xB3\0\xB3\0\xBA\0\xBA\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF5\0\xFF\xFF<\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xB3\0\xFF\xFF\xBA\0!\0\xA1\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x1A\0\x1A\0\x1A\0\x1A\0\x1A\0\x1A\0\x1A\0\x1A\0\x1A\0\x1A\0\x1B\0\xFF\xFF\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1B\0\x1C\0\xFF\xFF\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0\x1C\0T\0T\0T\0T\0T\0T\0T\0T\0T\0T\0U\0U\0U\0U\0U\0U\0U\0U\0U\0U\0W\0\xFF\xFFW\0W\0W\0W\0W\0W\0W\0W\0W\0W\0Y\0Y\0Z\0Z\0>\0@\0@\0@\0@\0@\0@\0@\0@\0@\0@\0@\0A\0\xBC\0=\0V\0V\0V\0V\0V\0V\0V\0V\0V\0V\0\xBB\0\xBF\0\xD3\0\xD4\0\xD7\0\xFF\xFF?\0V\0V\0V\0V\0V\0V\0X\0X\0X\0X\0X\0X\0X\0X\0\xBD\0\xD5\0@\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\\\0\xE5\0\xE5\0\xE6\0\xE6\0\xFF\xFF\xFF\xFFB\0V\0V\0V\0V\0V\0V\0^\0\xC0\0^\0^\0^\0^\0^\0^\0^\0^\0^\0^\0`\0`\0`\0`\0`\0`\0`\0`\0`\0`\0a\0a\0a\0a\0a\0a\0a\0a\0a\0a\0b\0b\0b\0b\0b\0b\0b\0b\0b\0b\0d\0d\0d\0d\0d\0d\0d\0d\0d\0d\0f\0f\0f\0f\0f\0f\0f\0f\0f\0f\0\xD8\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFf\0f\0f\0f\0f\0f\0h\0h\0h\0h\0h\0h\0h\0h\0h\0h\0i\0i\0i\0i\0i\0i\0i\0i\0i\0i\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFFf\0f\0f\0f\0f\0f\0\x85\0\xFF\xFF\xFF\xFF\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x85\0\x9B\0\x9B\0\x9B\0\x9B\0\x9B\0\x9B\0\x9B\0\x9B\0\x9B\0\x9B\0\x9C\0\xFF\xFF\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9C\0\x9D\0\xFF\xFF\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9D\0\x9E\0\xFF\xFF\xFF\xFF\x9E\0\x9E\0\xBE\0\xBE\0\xBE\0\xBE\0\xBE\0\xBE\0\xBE\0\xBE\0\xBE\0\xBE\0\xBE\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x9E\0\xCD\0\xCD\0\xCD\0\xCD\0\xCD\0\xCD\0\xCD\0\xCD\0\xCD\0\xCD\0\xD2\0\xFF\xFF\xFF\xFF\xD2\0\xD2\0\x9E\0\x9E\0\x9E\0\x9E\0\x9E\0\x9E\0\x9E\0\x9E\0\x9E\0\x9E\0\xFF\xFF\xFF\xFF\xFF\xFF\xBE\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xD2\0\xD6\0\xD6\0\xD6\0\xD6\0\xD6\0\xD6\0\xD6\0\xD6\0\xD6\0\xD6\0\xD6\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xD2\0\xD2\0\xD2\0\xD2\0\xD2\0\xD2\0\xD2\0\xD2\0\xD2\0\xD2\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xD9\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xDB\0\xFF\xFF\xFF\xFF\xD6\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDC\0\xDD\0\xDD\0\xDD\0\xDD\0\xDD\0\xDD\0\xDD\0\xDD\0\xDD\0\xDD\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xDE\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE1\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE3\0\xFF\xFF\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE3\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xE4\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE2\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xE8\0\xEA\0\xFF\xFF\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEA\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xEC\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xED\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xEF\0\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF"),SP("\xFF\x01\xFF\xFF\x03\xFF\x01\xFF\xFF\x02\xFF\xFF\0\x02\xFF\0\x01\xFF\x06\xFF\xFF\x07\xFF\xFF\x01\xFF\x03\xFF\xFF\x05\xFF\xFF\x04\xFF\xFF\0\x04\xFF\0\x05\xFF\0\x03\xFF\0\x06\xFF\0\x07\xFF\x11\xFF\x10\xFF\x0E\xFF\r\xFF\f\xFF\x0B\xFF\n\xFF\t\xFF\b\xFF\x07\xFF\x06\xFF\x05\xFF\x04\xFF\xFF\x13\xFF\x12\xFF\xFF\x12\xFF\x13\xFF\xFF\x03\x11\x02\x12\x01\x0F\0\x10\xFF\x16\xFF\x13\xFF\xFF\x14\xFF\xFF\0\x14\xFF\x01\x13\0\x0E\xFF\x15\xFF\xFF\0\r\xFF\x01\x15\0\f\xFF\x19\xFF\xFF\0\t\xFF\x13\xFF\x16\xFF\xFF\x13\xFF\xFF\x18\xFF\xFF\x17\xFF\xFF\x01\x17\0\x04\xFF\x01\x18\0\x06\xFF\x01\x16\0\b\xFF\0\x0B\xFF\x01\x19\0\n\xFF")],SG=[0,0,0,0,0,1,0],TG=[0,1];Xk(11,[RF,SP(WJ),-12],WJ),Xk(10,ZH,Xz),Xk(9,[RF,SP(XF),RW],XF),Xk(8,[RF,SP(WW),-9],WW),Xk(7,[RF,SP(Rq),-8],Rq),Xk(6,JH,Pq),Xk(5,[RF,SP(TV),-6],TV),Xk(4,[RF,SP(ZM),-5],ZM),Xk(3,WH,$Y),Xk(2,XH,$M),Xk(1,[RF,SP(IV),-2],IV),Xk(0,[RF,SP(ZU),-1],ZU);var PG=SP(SH),_G=SP(LJ),NG=SP("Pervasives.Exit"),IG=SP("Array.blit"),LG=SP("Array.Bottom"),RG=[0,SP("list.ml"),Uq,11],OG=SP("hd"),YG=SP("\\b"),MG=SP("\\t"),VG=SP("\\n"),UG=SP("\\r"),XG=SP("\\\\"),WG=SP("\\'"),JG=SP("Char.chr"),ZG=SP("String.contains_from / Bytes.contains_from"),KG=SP("String.blit / Bytes.blit_string"),QG=SP("Bytes.blit"),$G=SP("String.sub / Bytes.sub"),SZ=SP(XW),TZ=SP("Sys.Break"),PZ=SP("Set.remove_min_elt"),_Z=[0,0,0,0],NZ=[0,0,0],IZ=[0,SP("set.ml"),372,18],LZ=SP(Mz),RZ=SP(Mz),OZ=SP(Mz),YZ=SP(Mz),MZ=SP("Queue.Empty"),VZ=SP("CamlinternalLazy.Undefined"),UZ=SP("Buffer.add: cannot grow buffer"),XZ=SP("%c"),WZ=SP("%s"),JZ=SP(Kz),ZZ=SP("%li"),KZ=SP("%ni"),QZ=SP("%Li"),$Z=SP("%f"),SK=SP("%B"),TK=SP("%{"),PK=SP("%}"),_K=SP("%("),NK=SP("%)"),IK=SP("%a"),LK=SP("%t"),RK=SP("%r"),OK=SP("%_r"),YK=[0,SP(SV),793,23],MK=[0,SP(SV),761,21],VK=[0,SP(SV),762,21],UK=[0,SP(SV),765,21],XK=[0,SP(SV),766,21],WK=[0,SP(SV),769,22],JK=[0,SP(SV),770,22],ZK=[0,SP(SV),774,30],KK=[0,SP(SV),775,30],QK=[0,SP(SV),779,26],$K=[0,SP(SV),WV,26],SQ=[0,SP(SV),VB,28],TQ=[0,SP(SV),790,28],PQ=[0,SP(SV),794,23],_Q=SP(JV),NQ=[0,SP(SV),1415,4],IQ=SP("Printf: bad conversion %["),LQ=[0,SP(SV),1483,39],RQ=[0,SP(SV),1505,31],OQ=[0,SP(SV),1506,31],YQ=SP("Printf: bad conversion %_"),MQ=SP("@{"),VQ=SP("@["),UQ=[0,SP(PB),[0,SP(PB),0]],XQ=SP(QJ),WQ=SP(Xq),JQ=SP("neg_infinity"),ZQ=SP("infinity"),KQ=[0,SP(Vz),[0,SP(XB),0]],QQ=[0,SP(Oz),[0,SP(XB),0]],$Q=[0,SP(VW),[0,SP(XB),0]],S$=[0,SP(Vz),[0,SP(KY),0]],T$=[0,SP(Oz),[0,SP(KY),0]],P$=[0,SP(VW),[0,SP(KY),0]],_$=[0,SP(Vz),[0,SP(RV),0]],N$=[0,SP(UF),[0,SP(RV),0]],I$=[0,SP(Vz),[0,SP(JB),0]],L$=[0,SP(UF),[0,SP(JB),0]],R$=[0,SP(Vz),[0,SP(YM),0]],O$=[0,SP(UF),[0,SP(YM),0]],Y$=[0,SP(Vz),[0,SP("u"),0]],M$=SP(QV),V$=SP("%+d"),U$=SP("% d"),X$=SP(Kz),W$=SP("%+i"),J$=SP("% i"),Z$=SP("%x"),K$=SP("%#x"),Q$=SP("%X"),$$=SP("%#X"),eee=SP("%o"),tee=SP("%#o"),aee=SP(JV),nee=[0,SP(SM),[0,SP(SM),0]],ree=SP("@]"),see=SP("@}"),iee=SP("@?"),oee=SP("@\n"),lee=SP("@."),pee=SP("@@"),dee=SP("@%"),cee=SP("@"),uee=SP("CamlinternalFormat.Type_mismatch"),mee=SP(RV),fee=SP("OCAMLRUNPARAM"),hee=SP("CAMLRUNPARAM"),yee=SP(XW),bee=SP("TMPDIR"),gee=SP("TEMP"),xee=SP("Cygwin"),See=SP(_B),Eee=SP("Win32"),Tee=[0,SP("filename.ml"),Mq,9],Aee=SP("Js.Error"),Pee=SP(OM),_ee=SP(JM),Nee=SP("Unexpected number"),kee=SP("Unexpected string"),Cee=SP("Unexpected identifier"),wee=SP("Unexpected reserved word"),vee=SP("Unexpected end of input"),Iee=SP("Unexpected variance sigil"),jee=SP("Type aliases are not allowed in untyped mode"),Lee=SP("Type annotations are not allowed in untyped mode"),Dee=SP("Type declarations are not allowed in untyped mode"),Ree=SP("Type imports are not allowed in untyped mode"),Oee=SP("Type exports are not allowed in untyped mode"),Yee=SP("Interfaces are not allowed in untyped mode"),Mee=SP("Illegal newline after throw"),Fee=SP("Invalid regular expression"),Vee=SP("Invalid regular expression: missing /"),Bee=SP("Invalid left-hand side in assignment"),Uee=SP("Invalid left-hand side in exponentiation expression"),Xee=SP("Invalid left-hand side in for-in"),Wee=SP("Invalid left-hand side in for-of"),qee=SP("found an expression instead"),Jee=SP("Expected an object pattern, array pattern, or an identifier but "),zee=SP("More than one default clause in switch statement"),Hee=SP("Missing catch or finally after try"),Gee=SP("Illegal continue statement"),Zee=SP("Illegal break statement"),Kee=SP("Illegal return statement"),Qee=SP("Illegal yield expression"),$ee=SP("Strict mode code may not include a with statement"),ete=SP("Catch variable may not be eval or arguments in strict mode"),tte=SP("Variable name may not be eval or arguments in strict mode"),ate=SP("Parameter name eval or arguments is not allowed in strict mode"),nte=SP("Strict mode function may not have duplicate parameter names"),rte=SP("Function name may not be eval or arguments in strict mode"),ste=SP("Octal literals are not allowed in strict mode."),ite=SP("Delete of an unqualified identifier in strict mode."),ote=SP("Duplicate data property in object literal not allowed in strict mode"),lte=SP("Object literal may not have data and accessor property with the same name"),pte=SP("Object literal may not have multiple get/set accessors with the same name"),dte=SP("Assignment to eval or arguments is not allowed in strict mode"),cte=SP("Postfix increment/decrement may not have eval or arguments operand in strict mode"),ute=SP("Prefix increment/decrement may not have eval or arguments operand in strict mode"),mte=SP("Use of future reserved word in strict mode"),fte=SP("JSX attributes must only be assigned a non-empty expression"),hte=SP("JSX value should be either an expression or a quoted JSX text"),yte=SP("Const must be initialized"),bte=SP("Destructuring assignment must be initialized"),gte=SP("Illegal newline before arrow"),xte=SP(" declared at top level or immediately within another function."),Ste=SP("In strict mode code, functions can only be"),Ete=SP("elements must be wrapped in an enclosing parent tag"),Tte=SP("Unexpected token <. Remember, adjacent JSX "),Ate=SP("Rest parameter must be final parameter of an argument list"),Pte=SP("async is an implementation detail and isn't necessary for your declare function statement. It is sufficient for your declare function to just have a Promise return type."),_te=SP("`declare export let` is not supported. Use `declare export var` instead."),Nte=SP("`declare export const` is not supported. Use `declare export var` instead."),kte=SP("`declare export type` is not supported. Use `export type` instead."),Cte=SP("`declare export interface` is not supported. Use `export interface` instead."),wte=SP("`export * as` is an early-stage proposal and is not enabled by default. To enable support in the parser, use the `esproposal_export_star_as` option"),vte=SP("When exporting a class as a named export, you must specify a class name. Did you mean `export default class ...`?"),Ite=SP("When exporting a function as a named export, you must specify a function name. Did you mean `export default function ...`?"),jte=SP("Found a decorator in an unsupported position."),Lte=SP("Type parameter declaration needs a default, since a preceding type parameter declaration has a default."),Dte=SP("The Windows version of OCaml has a bug in how it parses hexidecimal numbers. It is fixed in OCaml 4.03.0. Until we can switch to 4.03.0, please avoid either hexidecimal notation or Windows."),Rte=SP("Duplicate `declare module.exports` statement!"),Ote=SP("Found both `declare module.exports` and `declare export` in the same module. Modules can only have 1 since they are either an ES module xor they are a CommonJS module."),Yte=SP("Getter should have zero parameters"),Mte=SP("Setter should have exactly one parameter"),Fte=SP("`import type` or `import typeof`!"),Vte=SP("Imports within a `declare module` body must always be "),Bte=SP("The `type` and `typeof` keywords on named imports can only be used on regular `import` statements. It cannot be used with `import type` or `import typeof` statements"),Ute=SP("Missing comma between import specifiers"),Xte=SP("Unexpected parser state: "),Wte=SP("Unexpected token "),qte=[0,[11,SP("Unexpected token `"),[2,0,[11,SP("`. Did you mean `"),[2,0,[11,SP("`?"),0]]]]],SP("Unexpected token `%s`. Did you mean `%s`?")],Jte=SP(PB),zte=SP("Invalid flags supplied to RegExp constructor '"),Hte=SP(PB),Gte=SP("Undefined label '"),Zte=SP("' has already been declared"),Kte=SP(" '"),Qte=SP("Expected corresponding JSX closing tag for "),$te=[0,[11,SP("Duplicate export for `"),[2,0,[12,96,0]]],SP("Duplicate export for `%s`")],eae=SP("Parse_error.Error"),tae=[0,SP(MF),18,6],aae=[0,SP(MF),39,6],nae=[0,SP(MF),44,6],rae=[0,SP(MF),IB,6],sae=[0,SP(MF),515,6],iae=[0,SP(MF),WV,6],oae=[0,SP(MF),883,6],lae=[0,SP(MF),hq,6],pae=[0,SP(MF),SX,6],dae=[0,SP(MF),1008,6],cae=[0,SP(MF),1031,6],uae=SP("comments"),mae=SP(XU),fae=SP("Program"),hae=SP("EmptyStatement"),yae=SP("DebuggerStatement"),bae=SP(Tz),gae=SP("ExpressionStatement"),xae=SP(Yq),Sae=SP(VM),Eae=SP(OJ),Tae=SP("IfStatement"),Aae=SP(XU),Pae=SP(SF),_ae=SP("LabeledStatement"),Nae=SP(SF),kae=SP("BreakStatement"),Cae=SP(SF),wae=SP("ContinueStatement"),vae=SP(XU),Iae=SP(KV),jae=SP("WithStatement"),Lae=SP("cases"),Dae=SP("discriminant"),Rae=SP("SwitchStatement"),Oae=SP(Tq),Yae=SP("ReturnStatement"),Mae=SP(Tq),Fae=SP("ThrowStatement"),Vae=SP("finalizer"),Bae=SP("handler"),Uae=SP("block"),Xae=SP("TryStatement"),Wae=SP(XU),qae=SP(OJ),Jae=SP("WhileStatement"),zae=SP(OJ),Hae=SP(XU),Gae=SP("DoWhileStatement"),Zae=SP(XU),Kae=SP("update"),Qae=SP(OJ),$ae=SP(OW),ene=SP("ForStatement"),tne=SP(NV),ane=SP(XU),nne=SP(YU),rne=SP(OU),sne=SP("ForInStatement"),ine=SP("ForAwaitStatement"),one=SP("ForOfStatement"),lne=SP(XU),pne=SP(YU),dne=SP(OU),cne=SP("CommonJS"),une=SP("ES"),mne=SP(Kq),fne=SP(XU),hne=SP($z),yne=SP("DeclareModule"),bne=SP(Nz),gne=SP("DeclareModuleExports"),xne=SP(KX),Sne=SP("DeclareExportAllDeclaration"),Ene=SP(KX),Tne=SP(Yz),Ane=SP(PW),Pne=SP(UW),_ne=SP("DeclareExportDeclaration"),Nne=SP(JW),kne=SP(KX),Cne=SP("ExportAllDeclaration"),wne=SP(JW),vne=SP(KX),Ine=SP(Yz),jne=SP(PW),Lne=SP("ExportNamedDeclaration"),Dne=SP(JW),Rne=SP(PW),One=SP("ExportDefaultDeclaration"),Yne=SP(WX),Mne=SP(TX),Fne=SP(_z),Vne=SP(PH),Bne=SP(KX),Une=SP(Yz),Xne=SP("ImportDeclaration"),Wne=SP("ThisExpression"),qne=SP("Super"),Jne=SP(_V),zne=SP("ArrayExpression"),Hne=SP(XX),Gne=SP("ObjectExpression"),Zne=SP(TJ),Kne=SP(WB),Qne=SP(Tz),$ne=SP(_U),ere=SP(LW),tre=SP(SU),are=SP(XU),nre=SP(_F),rre=SP($z),sre=SP("ArrowFunctionExpression"),ire=SP(QY),ore=SP("SequenceExpression"),lre=SP(Tq),pre=SP("AwaitExpression"),dre=SP(ZB),cre=SP(Wq),ure=SP("!"),mre=SP("~"),fre=SP(TX),hre=SP(UJ),yre=SP(PJ),bre=SP("matched above"),gre=SP(Tq),xre=SP(Qq),Sre=SP(RB),Ere=SP("UnaryExpression"),Tre=SP("=="),Are=SP("!="),Pre=SP("==="),_re=SP("!=="),Nre=SP("<"),kre=SP("<="),Cre=SP(">"),wre=SP(">="),vre=SP("<<"),Ire=SP(">>"),jre=SP(">>>"),Lre=SP(Wq),Dre=SP(ZB),Rre=SP("*"),Ore=SP("**"),Yre=SP(Uz),Mre=SP(Vz),Fre=SP("|"),Vre=SP("^"),Bre=SP(XM),Ure=SP(VX),Xre=SP(KW),Wre=SP(YU),qre=SP(OU),Jre=SP(RB),zre=SP("BinaryExpression"),Hre=SP("="),Gre=SP("+="),Zre=SP("-="),Kre=SP("*="),Qre=SP("**="),$re=SP("/="),ese=SP("%="),tse=SP("<<="),ase=SP(">>="),nse=SP(">>>="),rse=SP("|="),sse=SP("^="),ise=SP("&="),ose=SP(YU),lse=SP(OU),pse=SP(RB),dse=SP("AssignmentExpression"),cse=SP("--"),mse=SP("++"),fse=SP(Qq),hse=SP(Tq),yse=SP(RB),bse=SP("UpdateExpression"),gse=SP("&&"),xse=SP("||"),Sse=SP(YU),Ese=SP(OU),Tse=SP(RB),Ase=SP("LogicalExpression"),Pse=SP(Yq),_se=SP(VM),Nse=SP(OJ),kse=SP("ConditionalExpression"),Cse=SP($X),wse=SP(KB),vse=SP("NewExpression"),Ise=SP($X),jse=SP(KB),Lse=SP("CallExpression"),Dse=SP(Zz),Rse=SP(Wz),Ose=SP(KV),Yse=SP("MemberExpression"),Mse=SP("delegate"),Fse=SP(Tq),Vse=SP("YieldExpression"),Bse=SP(WY),Use=SP(_J),Xse=SP("ComprehensionExpression"),Wse=SP(WY),qse=SP(_J),Jse=SP("GeneratorExpression"),zse=SP(Nz),Hse=SP(Tz),Gse=SP("TypeCastExpression"),Zse=SP(Wz),Kse=SP("meta"),Qse=SP("MetaProperty"),$se=SP(TJ),eie=SP(WB),tie=SP(Tz),aie=SP(_U),nie=SP(LW),rie=SP(SU),sie=SP(XU),iie=SP(_F),oie=SP($z),lie=SP("FunctionDeclaration"),pie=SP(TJ),die=SP(WB),cie=SP(Tz),uie=SP(_U),mie=SP(LW),fie=SP(SU),hie=SP(XU),yie=SP(_F),bie=SP($z),gie=SP("FunctionExpression"),xie=SP(JU),Sie=SP(Nz),Eie=SP(MB),Tie=SP(PM),Aie=SP(JU),Pie=SP(Nz),_ie=SP(MB),Nie=SP(PM),kie=SP(VM),Cie=SP(OJ),wie=SP("SwitchCase"),vie=SP(XU),Iie=SP("param"),jie=SP("CatchClause"),Lie=SP(XU),Die=SP("BlockStatement"),Rie=SP($z),Oie=SP("DeclareVariable"),Yie=SP(_U),Mie=SP($z),Fie=SP("DeclareFunction"),Vie=SP(TH),Bie=SP(XU),Uie=SP(TJ),Xie=SP($z),Wie=SP("DeclareClass"),qie=SP(_z),Jie=SP(WX),zie=SP(LM),Hie=SP("ExportNamespaceSpecifier"),Gie=SP(YU),Zie=SP(TJ),Kie=SP($z),Qie=SP("TypeAlias"),$ie=SP(OV),eoe=SP($W),toe=SP(ZF),aoe=SP(TJ),noe=SP($q),roe=SP(XU),soe=SP($z),ioe=SP("ClassDeclaration"),ooe=SP(OV),loe=SP($W),poe=SP(ZF),doe=SP(TJ),coe=SP($q),uoe=SP(XU),moe=SP($z),foe=SP("ClassExpression"),hoe=SP(TJ),yoe=SP($z),boe=SP("ClassImplements"),goe=SP(XU),xoe=SP("ClassBody"),Soe=SP(YF),Eoe=SP($V),Toe=SP(TM),Aoe=SP(NU),Poe=SP(OV),_oe=SP(Zz),Noe=SP(TW),koe=SP(Kq),Coe=SP(_z),woe=SP(RJ),voe=SP("MethodDefinition"),Ioe=SP(IM),joe=SP(TW),Loe=SP(Zz),Doe=SP(Nz),Roe=SP(_z),Ooe=SP(RJ),Yoe=SP("ClassProperty"),Moe=SP(TH),Foe=SP(XU),Voe=SP(TJ),Boe=SP($z),Uoe=SP("InterfaceDeclaration"),Xoe=SP(TJ),Woe=SP($z),qoe=SP("InterfaceExtends"),Joe=SP(Nz),zoe=SP(XX),Hoe=SP("ObjectPattern"),Goe=SP(Nz),Zoe=SP(_V),Koe=SP("ArrayPattern"),Qoe=SP(YU),$oe=SP(OU),ele=SP("AssignmentPattern"),tle=SP(Tq),ale=SP(XJ),nle=SP(Tq),rle=SP(XJ),sle=SP(OW),ile=SP(TM),ole=SP(NU),lle=SP(Zz),ple=SP(NF),dle=SP($V),cle=SP(Kq),ule=SP(_z),mle=SP(RJ),fle=SP(QW),hle=SP(Tq),yle=SP("SpreadProperty"),ble=SP(Zz),gle=SP(NF),xle=SP($V),Sle=SP(OW),Ele=SP(Kq),Tle=SP(_z),Ale=SP(RJ),Ple=SP(QW),_le=SP(Tq),Nle=SP("RestProperty"),kle=SP(Tq),Cle=SP("SpreadElement"),wle=SP(NV),vle=SP(YU),Ile=SP(OU),jle=SP("ComprehensionBlock"),Lle=SP("flags"),Dle=SP("pattern"),Rle=SP("regex"),Ole=SP(Lq),Yle=SP(_z),Mle=SP(Lq),Fle=SP(_z),Vle=SP("Literal"),Ble=SP(QY),Ule=SP("quasis"),Xle=SP("TemplateLiteral"),Wle=SP("cooked"),qle=SP(Lq),Jle=SP("tail"),zle=SP(_z),Hle=SP("TemplateElement"),Gle=SP("quasi"),Zle=SP("tag"),Kle=SP("TaggedTemplateExpression"),Qle=SP(QF),$le=SP(JJ),epe=SP(SJ),tpe=SP(Kq),ape=SP("declarations"),npe=SP("VariableDeclaration"),rpe=SP(OW),spe=SP($z),ipe=SP("VariableDeclarator"),ope=SP(Iz),lpe=SP("plus"),ppe=SP("AnyTypeAnnotation"),dpe=SP("MixedTypeAnnotation"),cpe=SP("EmptyTypeAnnotation"),upe=SP("VoidTypeAnnotation"),mpe=SP("NullLiteralTypeAnnotation"),fpe=SP("NumberTypeAnnotation"),hpe=SP("StringTypeAnnotation"),ype=SP("BooleanTypeAnnotation"),bpe=SP(Nz),gpe=SP("NullableTypeAnnotation"),xpe=SP(TJ),Spe=SP("rest"),Epe=SP(WB),Tpe=SP(_F),Ape=SP("FunctionTypeAnnotation"),Ppe=SP(JU),_pe=SP(Nz),Npe=SP(MB),kpe=SP("FunctionTypeParam"),Cpe=[0,0,0,0],wpe=SP("callProperties"),vpe=SP("indexers"),Ipe=SP(XX),jpe=SP("exact"),Lpe=SP("ObjectTypeAnnotation"),Dpe=SP("There should not be computed object type property keys"),Rpe=SP(OW),Ope=SP(TM),Ype=SP(NU),Mpe=SP(Kq),Fpe=SP(IM),Vpe=SP(TW),Bpe=SP(JU),Upe=SP(_z),Xpe=SP(RJ),Wpe=SP("ObjectTypeProperty"),qpe=SP(Tq),Jpe=SP("ObjectTypeSpreadProperty"),zpe=SP(IM),Hpe=SP(TW),Gpe=SP(_z),Zpe=SP(RJ),Kpe=SP($z),Qpe=SP("ObjectTypeIndexer"),$pe=SP(TW),ede=SP(_z),tde=SP("ObjectTypeCallProperty"),ade=SP("elementType"),nde=SP("ArrayTypeAnnotation"),rde=SP($z),sde=SP("qualification"),ide=SP("QualifiedTypeIdentifier"),ode=SP(TJ),lde=SP($z),pde=SP("GenericTypeAnnotation"),dde=SP(IU),cde=SP("UnionTypeAnnotation"),ude=SP(IU),mde=SP("IntersectionTypeAnnotation"),fde=SP(Tq),hde=SP("TypeofTypeAnnotation"),yde=SP(IU),bde=SP("TupleTypeAnnotation"),gde=SP(Lq),xde=SP(_z),Sde=SP("StringLiteralTypeAnnotation"),Ede=SP(Lq),Tde=SP(_z),Ade=SP("NumberLiteralTypeAnnotation"),Pde=SP(Lq),_de=SP(_z),Nde=SP("BooleanLiteralTypeAnnotation"),kde=SP("ExistsTypeAnnotation"),Cde=SP(Nz),wde=SP("TypeAnnotation"),vde=SP(_F),Ide=SP("TypeParameterDeclaration"),jde=SP(UW),Lde=SP(IM),Dde=SP("bound"),Rde=SP(MB),Ode=SP("TypeParameter"),Yde=SP(_F),Mde=SP("TypeParameterInstantiation"),Fde=SP("children"),Vde=SP("closingElement"),Bde=SP("openingElement"),Ude=SP("JSXElement"),Xde=SP("selfClosing"),Wde=SP("attributes"),qde=SP(MB),Jde=SP("JSXOpeningElement"),zde=SP(MB),Hde=SP("JSXClosingElement"),Gde=SP(_z),Zde=SP(MB),Kde=SP("JSXAttribute"),Qde=SP(Tq),$de=SP("JSXSpreadAttribute"),ece=SP("JSXEmptyExpression"),tce=SP(Tz),ace=SP("JSXExpressionContainer"),nce=SP(Lq),rce=SP(_z),sce=SP("JSXText"),ice=SP(Wz),oce=SP(KV),lce=SP("JSXMemberExpression"),pce=SP(MB),dce=SP("namespace"),cce=SP("JSXNamespacedName"),uce=SP(MB),mce=SP("JSXIdentifier"),fce=SP(LM),hce=SP(TF),yce=SP("ExportSpecifier"),bce=SP(TF),gce=SP("ImportDefaultSpecifier"),xce=SP(TF),Sce=SP("ImportNamespaceSpecifier"),Ece=SP(WX),Tce=SP(TX),Ace=SP(PH),Pce=SP(TF),_ce=SP("imported"),Nce=SP("ImportSpecifier"),kce=SP("Block"),Cce=SP("Line"),wce=SP(_z),vce=SP(_z),Ice=SP("DeclaredPredicate"),jce=SP("InferredPredicate"),Lce=SP("message"),Dce=SP(OX),Rce=SP("range"),Oce=SP(OX),Yce=SP(WX),Mce=SP(JM),Fce=SP("end"),Vce=SP("start"),Bce=SP(KX),Uce=SP("column"),Xce=SP("line"),Wce=SP(KJ),qce=[0,0],Jce=[0,0],zce=[0,2],Hce=[0,2],Gce=[0,1],Zce=[0,1],Kce=[0,3],Qce=[0,3],$ce=SP(KJ),eue=[5,3,VB],tue=[5,3,VB],aue=SP("\\"),nue=SP(WU),rue=SP(PU),sue=SP("*/"),iue=SP(PU),oue=SP(XW),lue=SP(XW),pue=SP(XW),due=SP(XW),cue=SP(WU),uue=SP("iexcl"),mue=SP("aelig"),fue=SP("Nu"),hue=SP("Eacute"),yue=SP("Atilde"),bue=SP("'int'"),gue=SP("AElig"),xue=SP("Aacute"),Sue=SP("Acirc"),Eue=SP("Agrave"),Tue=SP("Alpha"),Aue=SP("Aring"),Pue=[0,197],_ue=[0,913],Nue=[0,$J],kue=[0,194],Cue=[0,193],wue=[0,198],vue=[0,8747],Iue=SP("Auml"),jue=SP("Beta"),Lue=SP("Ccedil"),Due=SP("Chi"),Rue=SP("Dagger"),Oue=SP("Delta"),Yue=SP("ETH"),Mue=[0,208],Fue=[0,916],Vue=[0,8225],Bue=[0,935],Uue=[0,LX],Xue=[0,914],Wue=[0,196],que=[0,195],Jue=SP("Icirc"),zue=SP("Ecirc"),Hue=SP("Egrave"),Gue=SP("Epsilon"),Zue=SP("Eta"),Kue=SP("Euml"),Que=SP("Gamma"),$ue=SP("Iacute"),eme=[0,205],tme=[0,915],ame=[0,203],nme=[0,919],rme=[0,917],sme=[0,200],ime=[0,202],ome=SP("Igrave"),lme=SP("Iota"),pme=SP("Iuml"),dme=SP("Kappa"),cme=SP("Lambda"),ume=SP("Mu"),mme=SP("Ntilde"),fme=[0,209],hme=[0,924],yme=[0,923],bme=[0,922],gme=[0,207],xme=[0,921],Sme=[0,204],Eme=[0,206],Tme=[0,201],Ame=SP("Sigma"),Pme=SP("Otilde"),_me=SP("OElig"),Nme=SP("Oacute"),kme=SP("Ocirc"),Cme=SP("Ograve"),wme=SP("Omega"),vme=SP("Omicron"),Ime=SP("Oslash"),jme=[0,VU],Lme=[0,927],Dme=[0,937],Rme=[0,210],Ome=[0,212],Yme=[0,211],Mme=[0,338],Fme=SP("Ouml"),Vme=SP("Phi"),Bme=SP("Pi"),Ume=SP("Prime"),Xme=SP("Psi"),Wme=SP("Rho"),qme=SP("Scaron"),Jme=[0,352],zme=[0,929],Hme=[0,936],Gme=[0,8243],Zme=[0,928],Kme=[0,934],Qme=[0,214],$me=[0,213],efe=SP("Uuml"),tfe=SP("THORN"),afe=SP("Tau"),nfe=SP("Theta"),rfe=SP("Uacute"),sfe=SP("Ucirc"),ife=SP("Ugrave"),ofe=SP("Upsilon"),lfe=[0,933],pfe=[0,217],dfe=[0,219],cfe=[0,IB],ufe=[0,920],mfe=[0,932],ffe=[0,222],hfe=SP("Xi"),yfe=SP("Yacute"),bfe=SP("Yuml"),gfe=SP("Zeta"),xfe=SP("aacute"),Sfe=SP("acirc"),Efe=SP("acute"),Tfe=[0,180],Afe=[0,226],Pfe=[0,225],_fe=[0,918],Nfe=[0,376],kfe=[0,221],Cfe=[0,926],wfe=[0,220],vfe=[0,931],Ife=[0,925],jfe=SP("delta"),Lfe=SP("cap"),Dfe=SP("aring"),Rfe=SP("agrave"),Ofe=SP("alefsym"),Yfe=SP("alpha"),Mfe=SP("amp"),Ffe=SP("and"),Vfe=SP("ang"),Bfe=SP("apos"),Ufe=[0,39],Xfe=[0,8736],Wfe=[0,8743],qfe=[0,38],Jfe=[0,945],zfe=[0,8501],Hfe=[0,IX],Gfe=SP("asymp"),Zfe=SP("atilde"),Kfe=SP("auml"),Qfe=SP("bdquo"),$fe=SP("beta"),ehe=SP("brvbar"),the=SP("bull"),ahe=[0,8226],nhe=[0,166],rhe=[0,946],she=[0,8222],ihe=[0,228],ohe=[0,227],lhe=[0,8776],phe=[0,229],dhe=SP("copy"),che=SP("ccedil"),uhe=SP("cedil"),mhe=SP("cent"),fhe=SP("chi"),hhe=SP("circ"),yhe=SP("clubs"),bhe=SP("cong"),ghe=[0,8773],xhe=[0,9827],She=[0,710],Ehe=[0,967],The=[0,162],Ahe=[0,184],Phe=[0,231],_he=SP("crarr"),Nhe=SP("cup"),khe=SP("curren"),Che=SP("dArr"),whe=SP("dagger"),vhe=SP("darr"),Ihe=SP("deg"),jhe=[0,176],Lhe=[0,8595],Dhe=[0,8224],Rhe=[0,8659],Ohe=[0,164],Yhe=[0,8746],Mhe=[0,8629],Fhe=[0,169],Vhe=[0,8745],Bhe=SP("fnof"),Uhe=SP("ensp"),Xhe=SP("diams"),Whe=SP("divide"),qhe=SP("eacute"),Jhe=SP("ecirc"),zhe=SP("egrave"),Hhe=SP(PF),Ghe=SP("emsp"),Zhe=[0,8195],Khe=[0,8709],Qhe=[0,232],$he=[0,234],eye=[0,233],tye=[0,247],aye=[0,9830],nye=SP("epsilon"),rye=SP("equiv"),sye=SP("eta"),iye=SP("eth"),oye=SP("euml"),lye=SP("euro"),pye=SP("exist"),dye=[0,8707],cye=[0,8364],uye=[0,235],mye=[0,RU],fye=[0,951],hye=[0,8801],yye=[0,949],bye=[0,8194],gye=SP("gt"),xye=SP("forall"),Sye=SP("frac12"),Eye=SP("frac14"),Tye=SP("frac34"),Aye=SP("frasl"),Pye=SP("gamma"),_ye=SP("ge"),Nye=[0,8805],kye=[0,947],Cye=[0,8260],wye=[0,190],vye=[0,188],Iye=[0,Mq],jye=[0,8704],Lye=SP("hArr"),Dye=SP("harr"),Rye=SP("hearts"),Oye=SP("hellip"),Yye=SP("iacute"),Mye=SP("icirc"),Fye=[0,238],Vye=[0,237],Bye=[0,8230],Uye=[0,9829],Xye=[0,8596],Wye=[0,8660],qye=[0,62],Jye=[0,MM],zye=[0,hq],Hye=[0,230],Gye=SP("prime"),Zye=SP("ndash"),Kye=SP("le"),Qye=SP("kappa"),$ye=SP("igrave"),ebe=SP("image"),tbe=SP("infin"),abe=SP("iota"),nbe=SP("iquest"),rbe=SP("isin"),sbe=SP("iuml"),ibe=[0,239],obe=[0,8712],lbe=[0,191],pbe=[0,953],dbe=[0,8734],cbe=[0,8465],ube=[0,236],mbe=SP("lArr"),fbe=SP("lambda"),hbe=SP("lang"),ybe=SP("laquo"),bbe=SP("larr"),gbe=SP("lceil"),xbe=SP("ldquo"),Sbe=[0,8220],Ebe=[0,8968],Tbe=[0,8592],Abe=[0,171],Pbe=[0,10216],_be=[0,SX],Nbe=[0,8656],kbe=[0,954],Cbe=SP("macr"),wbe=SP("lfloor"),vbe=SP("lowast"),Ibe=SP("loz"),jbe=SP("lrm"),Lbe=SP("lsaquo"),Dbe=SP("lsquo"),Rbe=SP("lt"),Obe=[0,60],Ybe=[0,8216],Mbe=[0,8249],Fbe=[0,8206],Vbe=[0,9674],Bbe=[0,8727],Ube=[0,8970],Xbe=SP("mdash"),Wbe=SP("micro"),qbe=SP("middot"),Jbe=SP(Iz),zbe=SP("mu"),Hbe=SP("nabla"),Gbe=SP("nbsp"),Zbe=[0,160],Kbe=[0,8711],Qbe=[0,956],$be=[0,8722],ege=[0,183],tge=[0,181],age=[0,8212],nge=[0,175],rge=[0,8804],sge=SP("or"),ige=SP("oacute"),oge=SP("ne"),lge=SP("ni"),pge=SP("not"),dge=SP("notin"),cge=SP("nsub"),uge=SP("ntilde"),mge=SP("nu"),fge=[0,957],hge=[0,241],yge=[0,8836],bge=[0,8713],gge=[0,172],xge=[0,8715],Sge=[0,8800],Ege=SP("ocirc"),Tge=SP("oelig"),Age=SP("ograve"),Pge=SP("oline"),_ge=SP("omega"),Nge=SP("omicron"),kge=SP("oplus"),Cge=[0,8853],wge=[0,959],vge=[0,969],Ige=[0,8254],jge=[0,242],Lge=[0,339],Dge=[0,244],Rge=[0,243],Oge=SP("part"),Yge=SP("ordf"),Mge=SP("ordm"),Fge=SP("oslash"),Vge=SP("otilde"),Bge=SP("otimes"),Uge=SP("ouml"),Xge=SP("para"),Wge=[0,182],qge=[0,_W],Jge=[0,8855],zge=[0,Rz],Hge=[0,RF],Gge=[0,186],Zge=[0,170],Kge=SP("permil"),Qge=SP("perp"),$ge=SP("phi"),exe=SP("pi"),txe=SP("piv"),axe=SP("plusmn"),nxe=SP("pound"),rxe=[0,163],sxe=[0,177],ixe=[0,982],oxe=[0,960],lxe=[0,966],pxe=[0,8869],dxe=[0,8240],cxe=[0,8706],uxe=[0,8744],mxe=[0,8211],fxe=SP("sup1"),hxe=SP("rlm"),yxe=SP("raquo"),bxe=SP("prod"),gxe=SP("prop"),xxe=SP("psi"),Sxe=SP("quot"),Exe=SP("rArr"),Txe=SP("radic"),Axe=SP("rang"),Pxe=[0,10217],_xe=[0,8730],Nxe=[0,8658],kxe=[0,34],Cxe=[0,968],wxe=[0,8733],vxe=[0,8719],Ixe=SP("rarr"),jxe=SP("rceil"),Lxe=SP("rdquo"),Dxe=SP("real"),Rxe=SP("reg"),Oxe=SP("rfloor"),Yxe=SP("rho"),Mxe=[0,961],Fxe=[0,8971],Vxe=[0,174],Bxe=[0,8476],Uxe=[0,8221],Xxe=[0,8969],Wxe=[0,8594],qxe=[0,187],Jxe=SP("sigma"),zxe=SP("rsaquo"),Hxe=SP("rsquo"),Gxe=SP("sbquo"),Zxe=SP("scaron"),Kxe=SP("sdot"),Qxe=SP("sect"),$xe=SP("shy"),eSe=[0,173],tSe=[0,167],aSe=[0,8901],nSe=[0,353],rSe=[0,8218],sSe=[0,8217],iSe=[0,8250],oSe=SP("sigmaf"),lSe=SP("sim"),pSe=SP("spades"),dSe=SP("sub"),cSe=SP("sube"),uSe=SP("sum"),mSe=SP("sup"),fSe=[0,8835],hSe=[0,8721],ySe=[0,8838],bSe=[0,8834],gSe=[0,9824],xSe=[0,8764],SSe=[0,962],ESe=[0,963],TSe=[0,8207],ASe=SP("uarr"),PSe=SP("thetasym"),_Se=SP("sup2"),NSe=SP("sup3"),kSe=SP("supe"),CSe=SP("szlig"),wSe=SP("tau"),vSe=SP("there4"),ISe=SP("theta"),jSe=[0,952],LSe=[0,8756],DSe=[0,964],RSe=[0,Uq],OSe=[0,8839],YSe=[0,179],MSe=[0,178],FSe=SP("thinsp"),VSe=SP("thorn"),BSe=SP("tilde"),USe=SP("times"),XSe=SP("trade"),WSe=SP("uArr"),qSe=SP("uacute"),JSe=[0,JX],zSe=[0,8657],HSe=[0,8482],GSe=[0,215],ZSe=[0,732],KSe=[0,JY],QSe=[0,8201],$Se=[0,977],eEe=SP("xi"),tEe=SP("ucirc"),aEe=SP("ugrave"),nEe=SP("uml"),rEe=SP("upsih"),sEe=SP("upsilon"),iEe=SP("uuml"),oEe=SP("weierp"),lEe=[0,8472],pEe=[0,NJ],dEe=[0,965],cEe=[0,978],uEe=[0,168],mEe=[0,249],fEe=[0,251],hEe=SP("yacute"),yEe=SP("yen"),bEe=SP("yuml"),gEe=SP("zeta"),xEe=SP("zwj"),SEe=SP("zwnj"),EEe=[0,8204],TEe=[0,8205],AEe=[0,950],PEe=[0,NX],_Ee=[0,165],NEe=[0,253],kEe=[0,958],CEe=[0,8593],wEe=[0,185],vEe=[0,8242],IEe=[0,161],jEe=SP(";"),LEe=SP(XM),DEe=SP("}"),REe=[0,SP(XW),SP(XW),SP(XW)],OEe=SP("${"),YEe=SP(KU),MEe=SP(PV),FEe=SP(XW),VEe=[0,SP(UX),620,11],BEe=[0,SP(UX),614,11],UEe=[0,0],XEe=[0,SP(UX),556,4],WEe=SP(XW),qEe=[1,SP("ILLEGAL")],JEe=SP(Uz),zEe=SP(Uz),HEe=SP("T_IDENTIFIER"),GEe=SP("T_LCURLY"),ZEe=SP("T_RCURLY"),KEe=SP("T_LCURLYBAR"),QEe=SP("T_RCURLYBAR"),$Ee=SP("T_LPAREN"),eTe=SP("T_RPAREN"),tTe=SP("T_LBRACKET"),aTe=SP("T_RBRACKET"),nTe=SP("T_SEMICOLON"),rTe=SP("T_COMMA"),sTe=SP("T_PERIOD"),iTe=SP("T_ARROW"),oTe=SP("T_ELLIPSIS"),lTe=SP("T_AT"),pTe=SP("T_FUNCTION"),dTe=SP("T_IF"),cTe=SP("T_IN"),uTe=SP("T_INSTANCEOF"),mTe=SP("T_RETURN"),fTe=SP("T_SWITCH"),hTe=SP("T_THIS"),yTe=SP("T_THROW"),bTe=SP("T_TRY"),gTe=SP("T_VAR"),xTe=SP("T_WHILE"),STe=SP("T_WITH"),ETe=SP("T_CONST"),TTe=SP("T_LET"),ATe=SP("T_NULL"),PTe=SP("T_FALSE"),_Te=SP("T_TRUE"),NTe=SP("T_BREAK"),kTe=SP("T_CASE"),CTe=SP("T_CATCH"),wTe=SP("T_CONTINUE"),vTe=SP("T_DEFAULT"),ITe=SP("T_DO"),jTe=SP("T_FINALLY"),LTe=SP("T_FOR"),DTe=SP("T_CLASS"),RTe=SP("T_EXTENDS"),OTe=SP("T_STATIC"),YTe=SP("T_ELSE"),MTe=SP("T_NEW"),FTe=SP("T_DELETE"),VTe=SP("T_TYPEOF"),BTe=SP("T_VOID"),UTe=SP("T_ENUM"),XTe=SP("T_EXPORT"),WTe=SP("T_IMPORT"),qTe=SP("T_SUPER"),JTe=SP("T_IMPLEMENTS"),zTe=SP("T_INTERFACE"),HTe=SP("T_PACKAGE"),GTe=SP("T_PRIVATE"),ZTe=SP("T_PROTECTED"),KTe=SP("T_PUBLIC"),QTe=SP("T_YIELD"),$Te=SP("T_DEBUGGER"),eAe=SP("T_DECLARE"),tAe=SP("T_TYPE"),aAe=SP("T_OF"),nAe=SP("T_ASYNC"),rAe=SP("T_AWAIT"),sAe=SP("T_CHECKS"),iAe=SP("T_RSHIFT3_ASSIGN"),oAe=SP("T_RSHIFT_ASSIGN"),lAe=SP("T_LSHIFT_ASSIGN"),pAe=SP("T_BIT_XOR_ASSIGN"),dAe=SP("T_BIT_OR_ASSIGN"),cAe=SP("T_BIT_AND_ASSIGN"),uAe=SP("T_MOD_ASSIGN"),mAe=SP("T_DIV_ASSIGN"),fAe=SP("T_MULT_ASSIGN"),hAe=SP("T_EXP_ASSIGN"),yAe=SP("T_MINUS_ASSIGN"),bAe=SP("T_PLUS_ASSIGN"),gAe=SP("T_ASSIGN"),xAe=SP("T_PLING"),SAe=SP("T_COLON"),EAe=SP("T_OR"),TAe=SP("T_AND"),AAe=SP("T_BIT_OR"),PAe=SP("T_BIT_XOR"),_Ae=SP("T_BIT_AND"),NAe=SP("T_EQUAL"),kAe=SP("T_NOT_EQUAL"),CAe=SP("T_STRICT_EQUAL"),wAe=SP("T_STRICT_NOT_EQUAL"),vAe=SP("T_LESS_THAN_EQUAL"),IAe=SP("T_GREATER_THAN_EQUAL"),jAe=SP("T_LESS_THAN"),LAe=SP("T_GREATER_THAN"),DAe=SP("T_LSHIFT"),RAe=SP("T_RSHIFT"),OAe=SP("T_RSHIFT3"),YAe=SP("T_PLUS"),MAe=SP("T_MINUS"),FAe=SP("T_DIV"),VAe=SP("T_MULT"),BAe=SP("T_EXP"),UAe=SP("T_MOD"),XAe=SP("T_NOT"),WAe=SP("T_BIT_NOT"),qAe=SP("T_INCR"),JAe=SP("T_DECR"),zAe=SP("T_ERROR"),HAe=SP("T_EOF"),GAe=SP("T_JSX_IDENTIFIER"),ZAe=SP("T_ANY_TYPE"),KAe=SP("T_MIXED_TYPE"),QAe=SP("T_EMPTY_TYPE"),$Ae=SP("T_BOOLEAN_TYPE"),ePe=SP("T_NUMBER_TYPE"),tPe=SP("T_STRING_TYPE"),aPe=SP("T_VOID_TYPE"),nPe=SP("T_NUMBER"),rPe=SP("T_STRING"),sPe=SP("T_TEMPLATE_PART"),iPe=SP("T_REGEXP"),oPe=SP("T_JSX_TEXT"),lPe=SP("T_NUMBER_SINGLETON_TYPE"),pPe=SP("Lexer_flow.FloatOfString.No_good"),dPe=ON([[0,SP(NM),15],[0,SP("if"),16],[0,SP(VX),17],[0,SP(KW),18],[0,SP("return"),19],[0,SP("switch"),20],[0,SP("this"),21],[0,SP("throw"),22],[0,SP("try"),23],[0,SP(QF),24],[0,SP("while"),25],[0,SP("with"),26],[0,SP(SJ),27],[0,SP(JJ),28],[0,SP(_H),29],[0,SP(LJ),30],[0,SP(SH),31],[0,SP("break"),32],[0,SP("case"),33],[0,SP("catch"),34],[0,SP("continue"),35],[0,SP(UW),36],[0,SP("do"),37],[0,SP("finally"),38],[0,SP("for"),39],[0,SP("class"),40],[0,SP(TH),41],[0,SP(TW),42],[0,SP("else"),43],[0,SP(QM),44],[0,SP(PJ),45],[0,SP(TX),46],[0,SP(UJ),47],[0,SP(MX),48],[0,SP("export"),49],[0,SP("import"),50],[0,SP("super"),51],[0,SP($W),52],[0,SP(QX),53],[0,SP(PX),54],[0,SP(MW),55],[0,SP(YV),56],[0,SP(RX),57],[0,SP(VF),58],[0,SP("debugger"),59],[0,SP("declare"),60],[0,SP(WX),61],[0,SP("of"),62],[0,SP(SU),63],[0,SP("await"),64]]),cPe=ON([[0,SP(TW),42],[0,SP(TX),46],[0,SP("any"),SB],[0,SP("mixed"),111],[0,SP(PF),LV],[0,SP("bool"),YW],[0,SP("boolean"),YW],[0,SP(SH),31],[0,SP(LJ),30],[0,SP("number"),Jz],[0,SP("string"),115],[0,SP(UJ),Sz],[0,SP(_H),29]]),uPe=SP(NB),mPe=SP(NB),fPe=SP($X),hPe=SP("eval"),yPe=SP($W),bPe=SP(QX),gPe=SP(PX),xPe=SP(MW),SPe=SP(YV),EPe=SP(RX),TPe=SP(TW),APe=SP(VF),PPe=SP(MX),_Pe=[0,SP("src/parser/parser_env.ml"),291,2],NPe=[0,0,0],kPe=SP(_X),CPe=SP(_X),wPe=SP("Parser_env.Try.Rollback"),vPe=[0,SP("did not consume any tokens")],IPe=[0,1],jPe=[0,0,0],LPe=[0,0,0],DPe=[0,SP(_q),496,6],RPe=SP(TW),OPe=SP(TM),YPe=SP(NU),MPe=SP(TM),FPe=[0,1],VPe=[0,[0,0,0]],BPe=[0,1],UPe=[0,1],XPe=[0,1],WPe=[0,0],qPe=[0,1],JPe=[0,2],zPe=[0,7],HPe=[0,5],GPe=[0,6],ZPe=[0,3],KPe=[0,4],QPe=[0,SP(_q),ZY,17],$Pe=[0,SP(_q),87,17],e_e=[0,SP(_q),65,11],t_e=[0,SP(_q),69,11],a_e=[0,SP(_q),47,14],n_e=[0,0,0],r_e=[0,31],s_e=[0,0,0],i_e=[0,31],o_e=[0,1],l_e=[0,29],p_e=[0,SP(WM),810,13],d_e=[0,SP(WM),712,17],c_e=[0,[0,SP(XW),SP(XW)],1],u_e=SP(_H),m_e=SP(PV),f_e=[0,0,0],h_e=[0,31],y_e=SP(QM),b_e=SP("target"),g_e=[0,1],x_e=[0,0],S_e=[0,1],E_e=[0,0],T_e=[0,1],A_e=[0,0],P_e=[0,2],__e=[0,3],N_e=[0,7],k_e=[0,6],C_e=[0,4],w_e=[0,5],v_e=[0,[0,17,[0,2]]],I_e=[0,[0,18,[0,3]]],j_e=[0,[0,19,[0,4]]],L_e=[0,[0,0,[0,5]]],D_e=[0,[0,1,[0,5]]],R_e=[0,[0,2,[0,5]]],O_e=[0,[0,3,[0,5]]],Y_e=[0,[0,5,[0,6]]],M_e=[0,[0,7,[0,6]]],F_e=[0,[0,4,[0,6]]],V_e=[0,[0,6,[0,6]]],B_e=[0,[0,8,[0,7]]],U_e=[0,[0,9,[0,7]]],X_e=[0,[0,10,[0,7]]],W_e=[0,[0,11,[0,8]]],q_e=[0,[0,12,[0,8]]],J_e=[0,[0,15,[0,9]]],z_e=[0,[0,13,[0,9]]],H_e=[0,[0,14,[1,10]]],G_e=[0,[0,16,[0,9]]],Z_e=[0,[0,21,[0,6]]],K_e=[0,[0,20,[0,6]]],Q_e=[0,9],$_e=[0,8],eNe=[0,7],tNe=[0,11],aNe=[0,10],nNe=[0,12],rNe=[0,6],sNe=[0,5],iNe=[0,3],oNe=[0,4],lNe=[0,2],pNe=[0,1],dNe=[0,0],cNe=SP(SU),uNe=SP(KJ),mNe=SP(Xq),fNe=[0,0,0],hNe=SP(XW),yNe=[0,SP(XW)],bNe=[0,0,0],gNe=SP(YF),xNe=SP(YF),SNe=[0,1],ENe=[0,1],TNe=[0,1],ANe=[0,1],PNe=SP(TM),_Ne=SP(NU),NNe=[0,0,0],kNe=SP(TM),CNe=SP(NU),wNe=SP(WX),vNe=[0,1,[0,0]],INe=SP(TX),jNe=[0,1,[0,1]],LNe=[0,0,0],DNe=SP(Qz),RNe=SP(Qz),ONe=SP(Qz),YNe=[0,1,0],MNe=[0,2,0],FNe=SP(YB),VNe=SP(Qz),BNe=SP(YB),UNe=SP(Qz),XNe=SP(Qz),WNe=SP(YB),qNe=[0,SP(TU),1109,15],JNe=SP("other than an interface declaration!"),zNe=SP("Internal Flow Error! Parsed `export interface` into something "),HNe=[0,1],GNe=SP("other than a type alias!"),ZNe=SP("Internal Flow Error! Parsed `export type` into something "),KNe=SP(Qz),QNe=SP(Qz),$Ne=SP(UW),eke=SP(YB),tke=SP("Internal Flow Error! Unexpected export statement declaration!"),ake=SP(Qz),nke=SP(Qz),rke=SP(YB),ske=[0,1],ike=SP(SW),oke=[0,1],lke=SP(SW),pke=SP("exports"),dke=[0,1],cke=[0,1],uke=SP(MJ),mke=SP(MJ),fke=[0,1],hke=[0,1],yke=SP("Label"),bke=[0,27],gke=[0,0,0],xke=[0,0,0],Ske=[0,SP(TU),LX,20],Eke=[0,SP(TU),VU,20],Tke=SP("Parser error: No such thing as an expression pattern!"),Ake=[0,1],Pke=SP("use strict"),_ke=[0,0,0],Nke=SP(KU),kke=SP("Nooo: "),Cke=[0,SP("src/parser/parser_flow.ml"),39,28],wke=[0,0],vke=SP(" errors");Jk([RF,NG,0]),function(swe){var iwe=NH.fds[swe];return iwe.flags.wronly&&VN(JF+swe+" is writeonly"),{file:iwe.file,offset:iwe.offset,fd:swe,opened:!0,refill:null}}(0),Tk(1),Tk(2),Jk([RF,LG,0]);var Ike=OP,jke=function(){return[0,SP(_B),32,0]}(0)[1],Lke=function(){return 32}(0),Dke=function(){return 0}(0),Rke=0|(1<<(0|Lke+RW))-1,Oke=0|IH(0|Lke/8,Rke)-1;Jk([RF,TZ,0]),Jk([RF,MZ,0]);var Yke=Jk([RF,VZ,0]),Mke=6,Fke=Jk([RF,uee,0]),Vke=[0,0];try{var Bke=_C(fee),Uke=Bke}catch(rwe){if(rwe=YC(rwe),rwe!==JH)throw rwe;try{var Xke=_C(hee),Wke=Xke}catch(swe){if(swe=YC(swe),swe!==JH)throw swe;var Wke=yee}var Uke=Wke}var qke=function(swe,iwe){return Sv(swe,0,iwe)}(Uke,82),Jke=[_W,function(){for(var rwe=NC(0),swe=[0,YN(55,0),0],iwe=0==rwe.length-1?[0,0]:rwe,owe=iwe.length-1,lwe=0;;){if(NP(swe[1],lwe)[lwe+1]=lwe,54!=lwe){var lwe=0|lwe+1;continue}var pwe=[0,mee],dwe=0|54+fw(55,owe);if(!(0>dwe))for(var cwe=0;;){var uwe=0|cwe%55,mwe=Lk(cwe,owe),fwe=NP(iwe,mwe)[mwe+1],hwe=Tw(pwe[1],SP(XW+fwe));pwe[1]=RH(hwe,0,Q_(hwe));var ywe=pwe[1],bwe=0|(0|(0|Qk(ywe,0)+(Qk(ywe,1)<<8))+(Qk(ywe,2)<<16))+(Qk(ywe,3)<<24),gwe=(NP(swe[1],uwe)[uwe+1]^bwe)&XV;if(NP(swe[1],uwe)[uwe+1]=gwe,dwe!=cwe){var cwe=0|cwe+1;continue}break}return swe[2]=0,swe}}],zke=NA,Hke=function(swe,iwe){function owe(){PA(NH.Undefined_recursive_module,swe)}function lwe(dwe,cwe,uwe){if("number"==typeof dwe)cwe[uwe]=0===dwe?{fun:owe}:1===dwe?[_W,owe]:[];else switch(dwe[0]){case 0:cwe[uwe]=[0];for(var mwe=1;mwe>>0?VC(Iwe,Gwe,MC(hwe,Gwe)):VC(jwe,Gwe,MC(swe[14],Gwe)[1])}function owe(Gwe,Zwe,Kwe){var Qwe=MC(Dwe,Gwe);$O(Gwe,80);var $we=MC(hwe,Gwe);return[0,Kj(Zwe,$we[1]),[0,Qwe,$we,Kwe]]}function lwe(Gwe,Zwe,Kwe,Qwe){var $we=owe(Gwe,Zwe,VC(Bwe,0,Gwe)),eve=[0,$we[1],[1,$we[2]]];return[0,[0,eve[1],[0,Qwe,[0,eve],0,Kwe,1,0]]]}function pwe(Gwe,Zwe,Kwe,Qwe,$we){1-SR(Gwe)&&YO(Gwe,7);var eve=SY(Gwe,79);$O(Gwe,80);var tve=MC(hwe,Gwe);return[0,[0,Kj(Zwe,tve[1]),[0,$we,[0,tve],eve,Kwe,0,Qwe]]]}function dwe(Gwe,Zwe){var Kwe=$R(0,Zwe);if("number"==typeof Kwe&&!(11<=Kwe))switch(Kwe){case 2:if(!Gwe)return 0;break;case 4:if(Gwe)return 0;break;case 9:case 10:return JO(Zwe);}return VO(Zwe)}function cwe(Gwe,Zwe){return Zwe?TR(Gwe,[0,Zwe[1][1],5]):Zwe}function uwe(Gwe){var Zwe=OR(0,Gwe),Kwe=$R(0,Zwe);if("number"==typeof Kwe&&65===Kwe){var Qwe=TO(0,Zwe);if($O(Zwe,65),5===$R(0,Zwe)){$O(Zwe,5),ZO(Zwe,0);var $we=MC(swe[8],Zwe);KO(Zwe);var eve=TO(0,Zwe);$O(Zwe,6);var tve=[0,Kj(Qwe,eve),[0,$we]]}else var tve=[0,Qwe,0];return[0,tve]}return 0}function mwe(Gwe){var Zwe=$R(0,Gwe),Kwe=$R(IPe,Gwe);if("number"==typeof Zwe&&80===Zwe){if("number"==typeof Kwe&&65===Kwe)return $O(Gwe,80),[0,0,uwe(Gwe)];var Qwe=MC(Jwe,Gwe);return[0,Qwe,uwe(Gwe)]}return jPe}function fwe(Gwe,Zwe){var Kwe=NR(1,Zwe);ZO(Kwe,1);var Qwe=MC(Gwe,Kwe);return KO(Kwe),Qwe}var hwe=[],ywe=[],bwe=[],gwe=[],xwe=[],Swe=[],Ewe=[],Twe=[],Awe=[],Pwe=[],_we=[],Nwe=[],kwe=[],Cwe=[],wwe=[],vwe=[],Iwe=[],jwe=[],Lwe=[],Dwe=[],Rwe=[],Owe=[],Ywe=[],Mwe=[],Fwe=[],Vwe=[],Bwe=[],Uwe=[],Xwe=[],Wwe=[],qwe=[],Jwe=[];_A(hwe,function(Gwe){return MC(xwe,Gwe)}),_A(ywe,function(Gwe){1-SR(Gwe)&&YO(Gwe,7);var Zwe=TO(0,Gwe);$O(Gwe,80);var Kwe=MC(hwe,Gwe),Qwe=XR(Gwe);if(Qwe)return[0,Kj(Zwe,Qwe[1]),Kwe];throw[0,ZH,a_e]}),_A(bwe,function(Gwe){var Zwe=TO(0,Gwe),Kwe=$R(0,Gwe);if("number"==typeof Kwe){if(97===Kwe)return JO(Gwe),[0,[0,Zwe,0]];if(98===Kwe)return JO(Gwe),[0,[0,Zwe,1]]}return 0}),_A(gwe,function(Gwe){if(Gwe){var Zwe=Gwe[1][1],Kwe=Rw(Gwe);if(Kwe)return[0,Kj(Kwe[1][1],Zwe),Kwe];throw[0,ZH,t_e]}throw[0,ZH,e_e]}),_A(xwe,function(Gwe){return SY(Gwe,83),VC(Swe,Gwe,MC(Ewe,Gwe))}),_A(Swe,function(Gwe,Zwe){if(83===$R(0,Gwe))for(var Kwe=[0,Zwe,0];;){var Qwe=$R(0,Gwe);if("number"==typeof Qwe&&83===Qwe){$O(Gwe,83);var Kwe=[0,MC(Ewe,Gwe),Kwe];continue}var $we=MC(gwe,Kwe),eve=$we[2];if(eve){var tve=eve[2];if(tve)return[0,$we[1],[5,eve[1],tve[1],tve[2]]]}throw[0,ZH,$Pe]}return Zwe}),_A(Ewe,function(Gwe){return SY(Gwe,85),VC(Twe,Gwe,MC(Awe,Gwe))}),_A(Twe,function(Gwe,Zwe){if(85===$R(0,Gwe))for(var Kwe=[0,Zwe,0];;){var Qwe=$R(0,Gwe);if("number"==typeof Qwe&&85===Qwe){$O(Gwe,85);var Kwe=[0,MC(Awe,Gwe),Kwe];continue}var $we=MC(gwe,Kwe),eve=$we[2];if(eve){var tve=eve[2];if(tve)return[0,$we[1],[6,eve[1],tve[1],tve[2]]]}throw[0,ZH,QPe]}return Zwe}),_A(Awe,function(Gwe){return VC(Pwe,Gwe,MC(_we,Gwe))}),_A(Pwe,function(Gwe,Zwe){var Kwe=$R(0,Gwe);if("number"==typeof Kwe&&12===Kwe&&!Gwe[14]){var Qwe=VC(Iwe,Gwe,Zwe);return XC(Fwe,Gwe,Qwe[1],0,[0,[0,Qwe,0],0])}return Zwe}),_A(_we,function(Gwe){var Zwe=$R(0,Gwe);if("number"==typeof Zwe&&79===Zwe){var Kwe=TO(0,Gwe);$O(Gwe,79);var Qwe=MC(_we,Gwe);return[0,Kj(Kwe,Qwe[1]),[0,Qwe]]}return MC(Nwe,Gwe)}),_A(Nwe,function(Gwe){return VC(kwe,Gwe,MC(Cwe,Gwe))}),_A(kwe,function(Gwe,Zwe){if(!_O(Gwe)&&SY(Gwe,7)){var Kwe=TO(0,Gwe);return $O(Gwe,8),VC(kwe,Gwe,[0,Kj(Zwe[1],Kwe),[3,Zwe]])}return Zwe}),_A(Cwe,function(Gwe){var Zwe=TO(0,Gwe),Kwe=$R(0,Gwe);if("number"==typeof Kwe)switch(Kwe){case 0:var Qwe=MC(Xwe,Gwe);return[0,Qwe[1],[4,Qwe[2]]];case 5:return MC(Ywe,Gwe);case 7:return MC(vwe,Gwe);case 46:var $we=TO(0,Gwe);$O(Gwe,46);var eve=MC(Cwe,Gwe);return[0,Kj($we,eve[1]),[7,eve]];case 92:return MC(Mwe,Gwe);case 100:return $O(Gwe,Sq),[0,Zwe,8];case 1:case 3:var tve=XC(Vwe,0,1,1,Gwe);return[0,tve[1],[2,tve[2]]];case 30:case 31:var ave=SO(0,Gwe);return $O(Gwe,Kwe),[0,Zwe,[11,[0,31===Kwe?1:0,ave]]];}else switch(Kwe[0]){case 1:var nve=Kwe[1],rve=nve[4],sve=nve[3],ive=nve[2],ove=nve[1];return rve&&XO(Gwe,32),$O(Gwe,[1,[0,ove,ive,sve,rve]]),[0,ove,[9,[0,ive,sve]]];case 5:var lve=Kwe[2],pve=Kwe[1],dve=SO(0,Gwe);return $O(Gwe,[5,pve,lve]),1===pve&&XO(Gwe,32),[0,Zwe,[10,[0,lve,dve]]];}var cve=MC(wwe,Kwe);return cve?($O(Gwe,Kwe),[0,Zwe,cve[1]]):(VO(Gwe),[0,Zwe,0])}),_A(wwe,function(Gwe){if("number"==typeof Gwe){if(29===Gwe)return KPe;if(SB<=Gwe)switch(0|Gwe-110){case 0:return WPe;case 1:return qPe;case 2:return JPe;case 3:return zPe;case 4:return HPe;case 5:return GPe;default:return ZPe;}}return 0}),_A(vwe,function(Gwe){var Zwe=TO(0,Gwe);$O(Gwe,7);for(var Kwe=0;;){var Qwe=$R(0,Gwe);if("number"==typeof Qwe){var $we=8===Qwe?1:ZY===Qwe?1:0;if($we){var eve=Rw(Kwe),tve=TO(0,Gwe);return $O(Gwe,8),[0,Kj(Zwe,tve),[8,eve]]}}var ave=[0,MC(hwe,Gwe),Kwe];8!==$R(0,Gwe)&&$O(Gwe,10);var Kwe=ave;continue}}),_A(Iwe,function(Gwe,Zwe){return[0,Zwe[1],[0,0,Zwe,0]]}),_A(jwe,function(Gwe,Zwe){1-SR(Gwe)&&YO(Gwe,7);var Kwe=SY(Gwe,79);$O(Gwe,80);var Qwe=MC(hwe,Gwe);return[0,Kj(Zwe[1],Qwe[1]),[0,[0,Zwe],Qwe,Kwe]]}),_A(Lwe,function(Gwe){return function(Zwe){for(var Kwe=Zwe;;){var Qwe=$R(0,Gwe);if("number"==typeof Qwe){var $we=0|Qwe-6,eve=7<$we>>>0?NW==$we?1:0:5<(0|$we-1)>>>0?1:0;if(eve){var tve=13===Qwe?1:0;if(tve){var ave=TO(0,Gwe);$O(Gwe,13);var nve=iwe(Gwe),rve=[0,[0,Kj(ave,nve[1]),[0,nve]]]}else var rve=tve;return[0,Rw(Kwe),rve]}}var sve=[0,iwe(Gwe),Kwe];6!==$R(0,Gwe)&&$O(Gwe,10);var Kwe=sve;continue}}}),_A(Dwe,function(Gwe){$O(Gwe,5);var Zwe=VC(Lwe,Gwe,0);return $O(Gwe,6),Zwe}),_A(Rwe,function(Gwe){$O(Gwe,5);var Zwe=OR(0,Gwe),Kwe=$R(0,Zwe);if("number"!=typeof Kwe)var $we=0;else if(13<=Kwe){if(ZY===Kwe)var Qwe=1;else if(14<=Kwe)var $we=0,Qwe=0;else var Qwe=1;if(Qwe)var eve=[0,VC(Lwe,Zwe,0)],$we=1}else if(6===Kwe)var eve=VPe,$we=1;else if(0===Kwe)var eve=MC(Owe,Zwe),$we=1;else var $we=0;if(!$we){if(MC(wwe,Kwe)){var tve=$R(BPe,Zwe);if("number"!=typeof tve)var ave=0;else if(1<(0|tve+ZW)>>>0)var ave=0;else var nve=[0,VC(Lwe,Zwe,0)],ave=1;if(!ave)var nve=[1,MC(hwe,Zwe)];var rve=nve}else var rve=[1,MC(hwe,Zwe)];var eve=rve}if(0===eve[0])var sve=eve;else{var ive=eve[1];if(Gwe[14])var ove=eve;else{var lve=$R(0,Gwe);if("number"!=typeof lve)var dve=0;else if(6===lve){if(12===$R(UPe,Gwe))var pve=[0,VC(Lwe,Gwe,[0,VC(Iwe,Gwe,ive),0])],dve=1;else var pve=[1,ive],dve=1;}else if(10===lve){$O(Gwe,10);var pve=[0,VC(Lwe,Gwe,[0,VC(Iwe,Gwe,ive),0])],dve=1}else var dve=0;if(!dve)var pve=eve;var ove=pve}var sve=ove}return $O(Gwe,6),sve}),_A(Owe,function(Gwe){var Zwe=VC(swe[13],0,Gwe),Kwe=$R(0,Gwe);if("number"==typeof Kwe&&!(1<(0|Kwe+ZW)>>>0)){var Qwe=VC(jwe,Gwe,Zwe);return SY(Gwe,10),[0,VC(Lwe,Gwe,[0,Qwe,0])]}return[1,VC(Swe,Gwe,VC(Twe,Gwe,VC(Pwe,Gwe,VC(kwe,Gwe,VC(qwe,Gwe,Zwe)))))]}),_A(Ywe,function(Gwe){var Zwe=TO(0,Gwe),Kwe=MC(Rwe,Gwe);return 0===Kwe[0]?XC(Fwe,Gwe,Zwe,0,Kwe[1]):Kwe[1]}),_A(Mwe,function(Gwe){var Zwe=TO(0,Gwe),Kwe=VC(Bwe,0,Gwe);return XC(Fwe,Gwe,Zwe,Kwe,MC(Dwe,Gwe))}),_A(Fwe,function(Gwe,Zwe,Kwe,Qwe){$O(Gwe,12);var $we=MC(hwe,Gwe);return[0,Kj(Zwe,$we[1]),[1,[0,Qwe,$we,Kwe]]]}),_A(Vwe,function(Gwe,Zwe,Kwe,Qwe){var $we=Zwe?3===$R(0,Qwe)?1:0:Zwe,eve=TO(0,Qwe),tve=$we?3:1;$O(Qwe,tve);for(var ave=0;;){if(Gwe&&Kwe)throw[0,ZH,DPe];var nve=TO(0,Qwe),rve=Gwe?SY(Qwe,42):Gwe,sve=MC(bwe,Qwe),ive=$R(0,Qwe);if("number"==typeof ive){if(92===ive)var ove=1;else{if(ZY===ive)var lve=Rw(ave),pve=1;else if(14<=ive)var ove=0,pve=0;else switch(ive){case 2:if($we)var ove=0,pve=0;else var lve=Rw(ave),pve=1;break;case 4:if($we)var lve=Rw(ave),pve=1;else var ove=0,pve=0;break;case 7:$O(Qwe,7);var dve=80===$R(FPe,Qwe)?1:0;if(dve){var cve=MC(swe[14],Qwe);$O(Qwe,80);var uve=[0,cve[1]]}else var uve=dve;var mve=MC(hwe,Qwe);$O(Qwe,8),$O(Qwe,80);var fve=MC(hwe,Qwe),hve=[2,[0,Kj(nve,fve[1]),[0,uve,mve,fve,rve,sve]]];dwe($we,Qwe);var ave=[0,hve,ave];continue;case 13:if(Kwe){JO(Qwe);var yve=MC(Xwe,Qwe),bve=[1,[0,Kj(nve,yve[1]),[0,yve]]];dwe($we,Qwe);var ave=[0,bve,ave];continue}var ove=0,pve=0;break;case 5:var ove=1,pve=0;break;default:var ove=0,pve=0;}if(pve){var gve=TO(0,Qwe),xve=$we?4:2;return $O(Qwe,xve),[0,Kj(eve,gve),[0,$we,lve]]}}if(ove){cwe(Qwe,sve);var Sve=VC(Bwe,0,Qwe),Eve=owe(Qwe,TO(0,Qwe),Sve),Tve=[3,[0,Kj(nve,Eve[1]),[0,Eve,rve]]];dwe($we,Qwe);var ave=[0,Tve,ave];continue}}if(0===rve)var Ave=0;else if(sve)var Ave=0;else if("number"!=typeof ive)var Ave=0;else if(80===ive){WO(Qwe,[0,nve,40]);var Pve=[1,[0,nve,RPe]],_ve=$R(0,Qwe),Nve=0;if("number"==typeof _ve){if(5===_ve)var kve=1;else if(92===_ve)var kve=1;else var Cve=0,kve=0;if(kve){cwe(Qwe,sve);var wve=lwe(Qwe,nve,Nve,Pve),Cve=1}}else var Cve=0;if(!Cve)var wve=pwe(Qwe,nve,Nve,sve,Pve);var vve=wve,Ave=1}else var Ave=0;if(!Ave){var Ive=function(nIe){ZO(nIe,0);var rIe=MC(swe[21],nIe);return KO(nIe),rIe},jve=Ive(Qwe)[2];if(1===jve[0]){var Lve=jve[1][2];if(!$k(Lve,OPe))var Rve=1;else if($k(Lve,YPe))var Dve=0,Rve=0;else var Rve=1;if(Rve){var Ove=$R(0,Qwe);if("number"==typeof Ove){var Yve=0|Ove-6;if(85>>0){if(87<(0|Yve+1)>>>0)var Mve=0,Fve=0;else{cwe(Qwe,sve);var Vve=lwe(Qwe,nve,rve,jve),Fve=1}}else if(1<(0|Yve-73)>>>0)var Mve=0,Fve=0;else var Vve=pwe(Qwe,nve,rve,sve,jve),Fve=1;if(Fve)var Bve=Vve,Mve=1}else var Mve=0;if(!Mve){var Uve=Ive(Qwe),Xve=Zk(Lve,MPe),Wve=owe(Qwe,nve,0),qve=Wve[2][1],Jve=Uve[1];if(0===Xve){var zve=qve[1];if(qve[2])TR(Qwe,[0,Jve,63]);else{var Hve=zve?zve[2]?0:1:0;Hve||TR(Qwe,[0,Jve,63])}}else{var Gve=qve[1]?0:qve[2]?0:1;Gve||TR(Qwe,[0,Jve,62])}var Zve=Xve?[1,Wve]:[2,Wve],Kve=[0,Uve[2],Zve,0,rve,0,sve],Bve=[0,[0,Kj(nve,Wve[1]),Kve]]}var Qve=Bve,Dve=1}}else var Dve=0;if(!Dve){var $ve=$R(0,Qwe);if("number"==typeof $ve){if(5===$ve)var eIe=1;else if(92===$ve)var eIe=1;else var tIe=0,eIe=0;if(eIe){cwe(Qwe,sve);var aIe=lwe(Qwe,nve,rve,jve),tIe=1}}else var tIe=0;if(!tIe)var aIe=pwe(Qwe,nve,rve,sve,jve);var Qve=aIe}var vve=Qve}dwe($we,Qwe);var ave=[0,vve,ave];continue}}),_A(Bwe,function(Gwe,Zwe){var Kwe=TO(0,Zwe),Qwe=92===$R(0,Zwe)?1:0;if(Qwe){1-SR(Zwe)&&YO(Zwe,7),$O(Zwe,92);for(var $we=0,eve=0;;){var tve=MC(bwe,Zwe),ave=UC(swe[15],Zwe,0,29),nve=ave[2],rve=ave[1],sve=$R(0,Zwe);if(0===Gwe)var ive=LPe;else{if(!("number"==typeof sve))var ove=0;else if(78===sve){JO(Zwe);var ive=[0,[0,MC(hwe,Zwe)],1],ove=1}else var ove=0;if(!ove){$we&&TR(Zwe,[0,rve,58]);var ive=[0,0,$we]}}var lve=[0,[0,rve,[0,nve[1][2],nve[2],tve,ive[1]]],eve],pve=$R(0,Zwe);if("number"==typeof pve){if(93===pve)var dve=1;else if(ZY===pve)var dve=1;else var cve=0,dve=0;if(dve)var uve=Rw(lve),cve=1}else var cve=0;if(!cve){if($O(Zwe,10),93!==$R(0,Zwe)){var $we=ive[2],eve=lve;continue}var uve=Rw(lve)}var mve=Kj(Kwe,TO(0,Zwe));$O(Zwe,93);var fve=[0,[0,mve,[0,uve]]];break}}else var fve=Qwe;return fve}),_A(Uwe,function(Gwe){var Zwe=TO(0,Gwe),Kwe=92===$R(0,Gwe)?1:0;if(Kwe){$O(Gwe,92);for(var Qwe=0;;){var $we=$R(0,Gwe);if("number"==typeof $we){if(93===$we)var eve=1;else if(ZY===$we)var eve=1;else var tve=0,eve=0;if(eve){var ave=Rw(Qwe),nve=Kj(Zwe,TO(0,Gwe));$O(Gwe,93);var rve=[0,[0,nve,[0,ave]]],tve=1}}else var tve=0;if(!tve){var sve=[0,MC(hwe,Gwe),Qwe];93!==$R(0,Gwe)&&$O(Gwe,10);var Qwe=sve;continue}break}}else var rve=Kwe;return rve}),_A(Xwe,function(Gwe){return VC(Wwe,Gwe,VC(swe[13],0,Gwe))}),_A(Wwe,function(Gwe,Zwe){for(var Kwe=[0,Zwe[1],[0,Zwe]];;){var Qwe=Kwe[2],$we=Kwe[1];if(11===$R(0,Gwe)){$O(Gwe,11);var eve=VC(swe[13],0,Gwe),tve=Kj($we,eve[1]),Kwe=[0,tve,[1,[0,tve,[0,Qwe,eve]]]];continue}var ave=MC(Uwe,Gwe),nve=ave?Kj($we,ave[1][1]):$we;return[0,nve,[0,Qwe,ave]]}}),_A(qwe,function(Gwe,Zwe){var Kwe=VC(Wwe,Gwe,Zwe);return[0,Kwe[1],[4,Kwe[2]]]}),_A(Jwe,function(Gwe){var Zwe=$R(0,Gwe);return"number"==typeof Zwe&&80===Zwe?[0,MC(ywe,Gwe)]:0});var zwe=MC(Bwe,1),Hwe=MC(Bwe,0);return[0,function(Gwe){return fwe(hwe,Gwe)},function(Zwe){return fwe(Hwe,Zwe)},function(Zwe){return fwe(zwe,Zwe)},function(Zwe){return fwe(Uwe,Zwe)},function(Gwe){return fwe(Xwe,Gwe)},function(Zwe,Kwe){return fwe(UC(Vwe,Zwe,0,0),Kwe)},function(Zwe){return fwe(Dwe,Zwe)},function(Zwe){return fwe(ywe,Zwe)},function(Zwe){return fwe(Jwe,Zwe)},function(Zwe){return fwe(uwe,Zwe)},function(Zwe){return fwe(mwe,Zwe)}]}(gCe),SCe=MC(function(swe){return function(iwe){function owe(Twe,Awe){for(var Pwe=Awe;;){var _we=Pwe[2];switch(_we[0]){case 0:return Mw(lwe,Twe,_we[1][1]);case 1:return Mw(pwe,Twe,_we[1][1]);case 2:var Pwe=_we[1][1];continue;case 3:var Nwe=_we[1][1],kwe=Nwe[2],Cwe=Twe[2],wwe=Twe[1];VC(hCe[3],kwe,Cwe)&&TR(wwe,[0,Nwe[1],30]);var vwe=dwe([0,wwe,Cwe],Nwe),Iwe=VC(hCe[4],kwe,vwe[2]);return[0,vwe[1],Iwe];default:return TR(Twe[1],[0,Pwe[1],19]),Twe;}}}function lwe(Twe,Awe){if(0===Awe[0]){var Pwe=Awe[1][2],_we=Pwe[1],Nwe=1===_we[0]?dwe(Twe,_we[1]):Twe;return owe(Nwe,Pwe[2])}return owe(Twe,Awe[1][2][1])}function pwe(Twe,Awe){if(Awe){var Pwe=Awe[1];return 0===Pwe[0]?owe(Twe,Pwe[1]):owe(Twe,Pwe[1][2][1])}return Twe}function dwe(Twe,Awe){var Pwe=Awe[2],_we=Awe[1],Nwe=Twe[1];QR(Pwe)&&WO(Nwe,[0,_we,29]);var kwe=ZR(Pwe),Cwe=kwe||KR(Pwe);return Cwe&&WO(Nwe,[0,_we,40]),[0,Nwe,Twe[2]]}function cwe(Twe,Awe,Pwe,_we,Nwe){var kwe=Awe||1-Pwe;if(kwe){var Cwe=Nwe[2],wwe=Awe?NR(1-Twe[6],Twe):Twe;if(_we){var vwe=_we[1],Iwe=vwe[2],jwe=vwe[1];QR(Iwe)&&WO(wwe,[0,jwe,31]);var Lwe=ZR(Iwe),Dwe=Lwe||KR(Iwe);Dwe&&WO(wwe,[0,jwe,40])}var Rwe=Mw(owe,[0,wwe,hCe[1]],Nwe[1]),Owe=Cwe?(owe(Rwe,Cwe[1][2][1]),0):Cwe,Ywe=Owe}else var Ywe=kwe;return Ywe}function uwe(Twe){$O(Twe,5);for(var Awe=0;;){var Pwe=$R(0,Twe);if("number"==typeof Pwe){var _we=0|Pwe-6,Nwe=7<_we>>>0?NW==_we?1:0:5<(0|_we-1)>>>0?1:0;if(Nwe){var kwe=13===Pwe?1:0;if(kwe){var Cwe=TO(0,Twe);$O(Twe,13);var wwe=VC(swe[19],Twe,29),vwe=[0,[0,Kj(Cwe,wwe[1]),[0,wwe]]]}else var vwe=kwe;6!==$R(0,Twe)&&YO(Twe,48);var Iwe=[0,Rw(Awe),vwe];return $O(Twe,6),Iwe}}var jwe=VC(swe[19],Twe,29);if(78===$R(0,Twe)){$O(Twe,78);var Lwe=MC(swe[9],Twe),Dwe=[0,Kj(jwe[1],Lwe[1]),[2,[0,jwe,Lwe]]]}else var Dwe=jwe;6!==$R(0,Twe)&&$O(Twe,10);var Awe=[0,Dwe,Awe];continue}}function mwe(Twe,Awe,Pwe){var _we=JR(Twe,Awe,Pwe),Nwe=MC(swe[17],_we),kwe=Nwe[1];return[0,kwe,[0,[0,kwe,Nwe[2]]],Nwe[3]]}function fwe(Twe){return SY(Twe,Sq)}function hwe(Twe){return SY(Twe,63)}function ywe(Twe){var Awe=0===Twe[2]?1:0;if(Awe)for(var Pwe=Twe[1];;){if(Pwe){var _we=Pwe[2],Nwe=3===Pwe[1][2][0]?1:0;if(Nwe){var Pwe=_we;continue}return Nwe}return 1}return Awe}function bwe(Twe){for(var Awe=0,Pwe=0;;){var _we=VC(swe[19],Twe,28),Nwe=78===$R(0,Twe)?($O(Twe,78),[0,[0,MC(swe[9],Twe)],0]):3===_we[2][0]?n_e:[0,0,[0,[0,_we[1],44],0]],kwe=Nwe[1],Cwe=kwe?kwe[1][1]:_we[1],wwe=Nwe[2],vwe=[0,[0,Kj(_we[1],Cwe),[0,_we,kwe]],Awe],Iwe=Pw(wwe,Pwe);if(10===$R(0,Twe)){$O(Twe,10);var Awe=vwe,Pwe=Iwe;continue}var jwe=Iw(vwe),Lwe=Rw(vwe),Dwe=Iw(vwe),Rwe=Rw(Iwe);return[0,Kj(Dwe[1],jwe[1]),Lwe,Rwe]}}function gwe(Twe,Awe,Pwe){var _we=TO(0,Pwe);$O(Pwe,Twe);var Nwe=bwe(Pwe),kwe=Nwe[3],Cwe=[0,Nwe[2],Awe];return[0,[0,Kj(_we,Nwe[1]),Cwe],kwe]}function xwe(Twe){return gwe(24,0,Twe)}function Swe(Twe){var Awe=gwe(27,2,IR(1,Twe)),Pwe=Awe[1],_we=Pwe[2],Nwe=_we[1],kwe=Awe[2],Cwe=Rw(Mw(function(wwe,vwe){return vwe[2][2]?wwe:[0,[0,vwe[1],43],wwe]},kwe,Nwe));return[0,[0,Pwe[1],_we],Cwe]}function Ewe(Twe){return gwe(28,1,IR(1,Twe))}return[0,hwe,fwe,function(Awe,Pwe,Twe){var _we=TO(0,Awe),Nwe=$R(0,Awe);if(!("number"==typeof Nwe))var Cwe=0;else if(97===Nwe){JO(Awe);var kwe=[0,[0,_we,0]],Cwe=1}else if(98===Nwe){JO(Awe);var kwe=[0,[0,_we,1]],Cwe=1}else var Cwe=0;if(!Cwe)var kwe=0;if(kwe){var wwe=Pwe?0:Twe?0:1;if(!wwe)return TR(Awe,[0,kwe[1][1],5]),0}return kwe},uwe,mwe,ywe,cwe,function(Twe,Awe,Pwe){var _we=Twe.slice();_we[10]=1;var Nwe=$R(0,_we);if("number"==typeof Nwe&&1===Nwe){var kwe=mwe(_we,Awe,Pwe);return[0,kwe[2],kwe[3]]}var Cwe=JR(_we,Awe,Pwe),wwe=MC(swe[9],Cwe);return[0,[1,wwe],Cwe[6]]},function(Twe){var Awe=TO(0,Twe),Pwe=$R(0,Twe);if("number"==typeof Pwe){var _we=0|Pwe+QB;if(4<_we>>>0)var Nwe=0;else{switch(_we){case 0:var kwe=xwe(Twe),Cwe=1;break;case 3:var kwe=Swe(Twe),Cwe=1;break;case 4:var kwe=Ewe(Twe),Cwe=1;break;default:var Nwe=0,Cwe=0;}if(Cwe)var wwe=kwe,Nwe=1}}else var Nwe=0;if(!Nwe){VO(Twe);var wwe=xwe(Twe)}var vwe=wwe[1],Iwe=wwe[2],jwe=[18,vwe[2]];return[0,[0,Kj(Awe,vwe[1]),jwe],Iwe]},bwe,Ewe,Swe,xwe,function(Awe){var Pwe=TO(0,Awe),_we=hwe(Awe);$O(Awe,15);var Nwe=fwe(Awe),kwe=Awe[7],Cwe=$R(0,Awe);if(0===kwe)var wwe=0;else if(!("number"==typeof Cwe))var wwe=0;else if(5===Cwe)var vwe=s_e,wwe=1;else if(92===Cwe)var Iwe=MC(iwe[2],Awe),jwe=5===$R(0,Awe)?0:[0,VC(swe[13],r_e,Awe)],vwe=[0,Iwe,jwe],wwe=1;else var wwe=0;if(!wwe)var Twe=[0,VC(swe[13],i_e,Awe)],vwe=[0,MC(iwe[2],Awe),Twe];var Lwe=vwe[2],Dwe=uwe(Awe),Rwe=MC(iwe[11],Awe),Owe=mwe(Awe,_we,Nwe),Ywe=Owe[2],Mwe=ywe(Dwe);cwe(Awe,Owe[3],Mwe,Lwe,Dwe);var Fwe=0===Ywe[0]?[0,Ywe[1][1],0]:[0,Ywe[1][1],1],Vwe=[17,[0,Lwe,Dwe,Ywe,_we,Nwe,Rwe[2],Fwe[2],Rwe[1],vwe[1]]];return[0,Kj(Pwe,Fwe[1]),Vwe]}]}}(gCe),xCe),ECe=MC(MC(function(swe){return function(iwe){return function(owe){function lwe(Xwe){var Wwe=MC(Swe,Xwe),qwe=MC(xwe,Xwe);if(qwe){1-MC(gwe,Wwe)&&TR(Xwe,[0,Wwe[1],15]);var Jwe=Wwe[2],zwe="number"==typeof Jwe?0:17===Jwe[0]?QR(Jwe[1][2])?(WO(Xwe,[0,Wwe[1],37]),1):0:0,Hwe=VC(swe[20],Xwe,Wwe),Gwe=MC(hwe,Xwe),Zwe=Kj(Hwe[1],Gwe[1]);return[0,Zwe,[7,[0,qwe[1],Hwe,Gwe]]]}return Wwe}function pwe(){throw fCe}function dwe(Xwe){var Wwe=VR(pwe,Xwe),qwe=lwe(Wwe),Jwe=$R(0,Wwe);if("number"==typeof Jwe){var zwe=12===Jwe?1:80===Jwe?1:0;if(zwe)throw fCe}if(LO(0,Wwe)){var Hwe=qwe[2];if("number"!=typeof Hwe&&17===Hwe[0]&&!$k(Hwe[1][2],cNe)&&!_O(Wwe))throw fCe;return qwe}return qwe}function cwe(Xwe,Wwe,qwe,Jwe){return[0,Jwe,[9,[0,qwe,Xwe,Wwe]]]}function uwe(Xwe,Wwe,qwe){for(var Jwe=Wwe,zwe=qwe;;){var Hwe=$R(0,Xwe);if("number"==typeof Hwe&&82===Hwe){$O(Xwe,82);var Gwe=RY(Twe,Xwe),Zwe=Kj(zwe,Gwe[1]),Jwe=cwe(Jwe,Gwe[2],1,Zwe),zwe=Zwe;continue}return[0,zwe,Jwe]}}function mwe(Xwe,Wwe,qwe,Jwe){return[0,Jwe,[6,[0,qwe,Xwe,Wwe]]]}function fwe(Xwe,Wwe){if("number"==typeof Wwe){var qwe=0|Wwe-29,Jwe=16>>0?19==qwe?1:0:14<(0|qwe-1)>>>0?1:0;if(Jwe)return 0}throw fCe}var hwe=[],ywe=[],bwe=[],gwe=[],xwe=[],Swe=[],Ewe=[],Twe=[],Awe=[],Pwe=[],_we=[],Nwe=[],kwe=[],Cwe=[],wwe=[],vwe=[],Iwe=[],jwe=[],Lwe=[],Dwe=[],Rwe=[],Owe=[],Ywe=[],Mwe=[],Fwe=[],Vwe=[],Bwe=[],Uwe=[];return _A(hwe,function(Xwe){var Wwe=$R(0,Xwe),qwe=LO(0,Xwe);if("number"==typeof Wwe){var Jwe=0|Wwe-6;if(85>>0)var zwe=87<(0|Jwe+1)>>>0?0:1;else if(52==Jwe){if(Xwe[16])return MC(ywe,Xwe);var zwe=0}else var zwe=0}else var zwe=0;if(!zwe&&0===qwe)return lwe(Xwe);var Hwe=LY(Xwe,dwe);if(Hwe)return Hwe[1];var Gwe=LY(Xwe,Vwe);return Gwe?Gwe[1]:lwe(Xwe)}),_A(ywe,function(Xwe){var Wwe=TO(0,Xwe);$O(Xwe,58),1-Xwe[16]&&YO(Xwe,25);var qwe=SY(Xwe,Sq),Jwe=9===$R(0,Xwe)?1:0,zwe=Jwe||NO(Xwe),Hwe=qwe||1-zwe,Gwe=Hwe?[0,MC(hwe,Xwe)]:Hwe;if(Gwe)var Zwe=Gwe[1][1];else{var Kwe=IO(0,Xwe),Qwe=Kwe?Kwe[1]:Wwe;QO(Xwe);var Zwe=Qwe}return[0,Kj(Wwe,Zwe),[14,[0,Gwe,qwe]]]}),_A(bwe,function(Xwe){var Wwe=Xwe[2];if("number"!=typeof Wwe)switch(Wwe[0]){case 13:case 17:case 24:return 1;}return 0}),_A(gwe,function(Xwe){var Wwe=Xwe[2];if("number"!=typeof Wwe)switch(Wwe[0]){case 0:case 1:case 13:case 17:case 24:return 1;}return 0}),_A(xwe,function(Xwe){var Wwe=$R(0,Xwe);if("number"==typeof Wwe){var qwe=0|Wwe+UU;if(12>>0)var Jwe=0;else{switch(qwe){case 0:var zwe=Q_e;break;case 1:var zwe=$_e;break;case 2:var zwe=eNe;break;case 3:var zwe=tNe;break;case 4:var zwe=aNe;break;case 5:var zwe=nNe;break;case 6:var zwe=rNe;break;case 7:var zwe=sNe;break;case 8:var zwe=iNe;break;case 9:var zwe=oNe;break;case 10:var zwe=lNe;break;case 11:var zwe=pNe;break;default:var zwe=dNe;}var Hwe=zwe,Jwe=1}}else var Jwe=0;if(!Jwe)var Hwe=0;return 0!==Hwe&&JO(Xwe),Hwe}),_A(Swe,function(Xwe){var Wwe=TO(0,Xwe),qwe=MC(Ewe,Xwe);if(79===$R(0,Xwe)){$O(Xwe,79);var Jwe=MC(hwe,RR(0,Xwe));$O(Xwe,80);var zwe=RY(hwe,Xwe),Hwe=Kj(Wwe,zwe[1]);return[0,Hwe,[10,[0,qwe,Jwe,zwe[2]]]]}return qwe}),_A(Ewe,function(Xwe){for(var Wwe=RY(Twe,Xwe),qwe=uwe(Xwe,Wwe[2],Wwe[1]),Jwe=qwe[2],c=qwe[1];;){var zwe=$R(0,Xwe);if("number"==typeof zwe&&81===zwe){$O(Xwe,81);var Hwe=RY(Twe,Xwe),Gwe=uwe(Xwe,Hwe[2],Hwe[1]),Zwe=Kj(Zwe,Gwe[1]),Jwe=cwe(Jwe,Gwe[2],0,Zwe);continue}return Jwe}}),_A(Twe,function(Xwe){var Wwe=0;a:for(;;){var qwe=TO(0,Xwe),Jwe=0===MC(Awe,Xwe)?0:1,zwe=MC(Pwe,RR(0,Xwe)),Hwe=XR(Xwe),Gwe=Hwe?Hwe[1]:zwe[1],Zwe=Kj(qwe,Gwe);if(92===$R(0,Xwe))var Kwe=zwe[2],Qwe="number"==typeof Kwe?0:21===Kwe[0]?(YO(Xwe,47),1):0;var $we=$R(0,Xwe);if("number"==typeof $we){var eve=0|$we-17;if(1>>0){if(66<=eve)switch(0|eve+UU){case 0:var tve=v_e,ave=1;break;case 1:var tve=I_e,ave=1;break;case 2:var tve=j_e,ave=1;break;case 3:var tve=L_e,ave=1;break;case 4:var tve=D_e,ave=1;break;case 5:var tve=R_e,ave=1;break;case 6:var tve=O_e,ave=1;break;case 7:var tve=Y_e,ave=1;break;case 8:var tve=M_e,ave=1;break;case 9:var tve=F_e,ave=1;break;case 10:var tve=V_e,ave=1;break;case 11:var tve=B_e,ave=1;break;case 12:var tve=U_e,ave=1;break;case 13:var tve=X_e,ave=1;break;case 14:var tve=W_e,ave=1;break;case 15:var tve=q_e,ave=1;break;case 16:var tve=J_e,ave=1;break;case 17:var tve=z_e,ave=1;break;case 18:var tve=H_e,ave=1;break;case 19:var tve=G_e,ave=1;break;default:var nve=0,ave=0;}else var nve=0,ave=0;}else if(0!=eve)var tve=Z_e,ave=1;else if(Xwe[11])var tve=0,ave=1;else var tve=K_e,ave=1;if(ave)var rve=tve,nve=1}else var nve=0;if(!nve)var rve=0;if(0!==rve&&JO(Xwe),rve){var sve=rve[1],ive=sve[1],ove=Jwe?14===ive?1:0:Jwe;ove&&TR(Xwe,[0,Zwe,16]);for(var lve=zwe,pve=[0,ive,sve[2]],dve=Zwe,cve=Wwe;;){var uve=pve[2],mve=pve[1];if(cve){var fve=cve[1],hve=fve[2],yve=hve[2],bve=0===yve[0]?yve[1]:0|yve[1]-1;if(uve[1]<=bve){var gve=Kj(fve[3],dve),xve=mwe(fve[1],lve,hve[1],gve),lve=xve,pve=[0,mve,uve],dve=gve,cve=cve[2];continue}}var Wwe=[0,[0,lve,[0,mve,uve],dve],cve];continue a}}for(var Sve=zwe,E=Zwe,Eve=Wwe;;){if(Eve){var Tve=Eve[1],Ave=Kj(Tve[3],Ave),Pve=Eve[2],Sve=mwe(Tve[1],Sve,Tve[2][1],Ave),Eve=Pve;continue}return Sve}}}),_A(Awe,function(Xwe){var Wwe=$R(0,Xwe);if("number"==typeof Wwe)if(48<=Wwe){if(97<=Wwe){if(!(ZV<=Wwe))switch(0|Wwe+MV){case 0:return T_e;case 1:return A_e;case 6:return P_e;case 7:return __e;}}else if(64===Wwe&&Xwe[17])return N_e;}else if(45<=Wwe)switch(0|Wwe-45){case 0:return k_e;case 1:return C_e;default:return w_e;}return 0}),_A(Pwe,function(Xwe){var Wwe=TO(0,Xwe),qwe=MC(Awe,Xwe);if(qwe){var Jwe=qwe[1];JO(Xwe);var zwe=MC(Pwe,Xwe),Hwe=Kj(Wwe,zwe[1]);if(6===Jwe)var Gwe=zwe[2],Zwe="number"==typeof Gwe?0:17===Gwe[0]?(WO(Xwe,[0,Hwe,33]),1):0;else var Zwe=0;return[0,Hwe,[5,[0,Jwe,1,zwe]]]}var Kwe=$R(0,Xwe);if("number"!=typeof Kwe)var $we=0;else if(ZV===Kwe)var Qwe=E_e,$we=1;else if(Zq===Kwe)var Qwe=S_e,$we=1;else var $we=0;if(!$we)var Qwe=0;if(Qwe){JO(Xwe);var eve=MC(Pwe,Xwe);1-MC(bwe,eve)&&TR(Xwe,[0,eve[1],15]);var tve=eve[2],ave="number"==typeof tve?0:17===tve[0]?QR(tve[1][2])?(XO(Xwe,39),1):0:0,nve=[8,[0,Qwe[1],eve,1]];return[0,Kj(Wwe,eve[1]),nve]}return MC(_we,Xwe)}),_A(_we,function(Xwe){var Wwe=MC(Nwe,Xwe);if(_O(Xwe))return Wwe;var qwe=$R(0,Xwe);if("number"!=typeof qwe)var zwe=0;else if(ZV===qwe)var Jwe=x_e,zwe=1;else if(Zq===qwe)var Jwe=g_e,zwe=1;else var zwe=0;if(!zwe)var Jwe=0;if(Jwe){1-MC(bwe,Wwe)&&TR(Xwe,[0,Wwe[1],15]);var Hwe=Wwe[2],Gwe="number"==typeof Hwe?0:17===Hwe[0]?QR(Hwe[1][2])?(XO(Xwe,38),1):0:0,Zwe=TO(0,Xwe);JO(Xwe);var Kwe=[8,[0,Jwe[1],Wwe,0]];return[0,Kj(Wwe[1],Zwe),Kwe]}return Wwe}),_A(Nwe,function(Xwe){var Wwe=TO(0,Xwe),qwe=Xwe.slice(),Jwe=1-Xwe[15];qwe[15]=0;var zwe=$R(0,qwe);if("number"!=typeof zwe)var Gwe=0;else if(44!==zwe)var Gwe=0;else if(Jwe)var Hwe=MC(Cwe,qwe),Gwe=1;else var Gwe=0;if(!Gwe)var Hwe=RO(0,qwe)?MC(Iwe,qwe):MC(Lwe,qwe);var Zwe=UC(vwe,qwe,Wwe,Hwe),Kwe=$R(0,qwe);if("number"==typeof Kwe){if(5===Kwe)return UC(kwe,qwe,Wwe,Zwe);}else if(2===Kwe[0])return UC(vwe,qwe,Wwe,XC(Owe,qwe,Wwe,Zwe,Kwe[1]));return Zwe}),_A(kwe,function(Xwe,Wwe,qwe){var Jwe=$R(0,Xwe);if("number"==typeof Jwe)switch(Jwe){case 5:if(!Xwe[12]){var zwe=MC(wwe,Xwe),Hwe=Kj(Wwe,zwe[1]);return UC(kwe,Xwe,Wwe,[0,Hwe,[12,[0,qwe,zwe[2]]]])}break;case 7:$O(Xwe,7);var Gwe=MC(swe[7],Xwe),Zwe=Kj(Wwe,TO(0,Xwe));return $O(Xwe,8),UC(kwe,Xwe,Wwe,[0,Zwe,[13,[0,qwe,[1,Gwe],1]]]);case 11:$O(Xwe,11);var Kwe=MC(Uwe,Xwe)[1];return UC(kwe,Xwe,Wwe,[0,Kj(Wwe,Kwe[1]),[13,[0,qwe,[0,Kwe],0]]]);}else if(2===Jwe[0])return XC(Owe,Xwe,Wwe,qwe,Jwe[1]);return qwe}),_A(Cwe,function(Xwe){var Wwe=TO(0,Xwe);if($O(Xwe,44),Xwe[10]&&11===$R(0,Xwe)){$O(Xwe,11);var qwe=[0,Wwe,y_e];if(Zk(SO(0,Xwe),b_e)){var Jwe=VC(swe[13],0,Xwe);return[0,Kj(Wwe,Jwe[1]),[24,[0,qwe,Jwe]]]}return VO(Xwe),JO(Xwe),[0,Wwe,[17,qwe]]}var zwe=TO(0,Xwe),Hwe=$R(0,Xwe);if("number"!=typeof Hwe)var Zwe=0;else if(44===Hwe)var Gwe=MC(Cwe,Xwe),Zwe=1;else var Zwe=0;if(!Zwe)var Gwe=RO(0,Xwe)?MC(Iwe,Xwe):MC(Lwe,Xwe);var Kwe=UC(vwe,MR(1,Xwe),zwe,Gwe),Qwe=$R(0,Xwe);if("number"==typeof Qwe)var $we=0;else if(2===Qwe[0])var eve=XC(Owe,Xwe,zwe,Kwe,Qwe[1]),$we=1;else var $we=0;if(!$we)var eve=Kwe;var tve=$R(0,Xwe);if("number"!=typeof tve)var nve=0;else if(5===tve)var ave=MC(wwe,Xwe),nve=1;else var nve=0;if(!nve)var ave=[0,eve[1],0];var rve=[11,[0,eve,ave[2]]];return[0,Kj(Wwe,ave[1]),rve]}),_A(wwe,function(Xwe){var Wwe=TO(0,Xwe);$O(Xwe,5);for(var qwe=0;;){var Jwe=$R(0,Xwe);if("number"==typeof Jwe){var zwe=6===Jwe?1:ZY===Jwe?1:0;if(zwe){var Hwe=Rw(qwe),Gwe=TO(0,Xwe);return $O(Xwe,6),[0,Kj(Wwe,Gwe),Hwe]}}var Zwe=$R(0,Xwe);if("number"!=typeof Zwe)var eve=0;else if(13===Zwe){var Kwe=TO(0,Xwe);$O(Xwe,13);var Qwe=MC(hwe,Xwe),$we=[1,[0,Kj(Kwe,Qwe[1]),[0,Qwe]]],eve=1}else var eve=0;if(!eve)var $we=[0,MC(hwe,Xwe)];6!==$R(0,Xwe)&&$O(Xwe,10);var qwe=[0,$we,qwe];continue}}),_A(vwe,function(Xwe,Wwe,qwe){var Jwe=$R(0,Xwe);if("number"==typeof Jwe){if(7===Jwe){$O(Xwe,7);var zwe=MR(0,Xwe),Hwe=MC(swe[7],zwe),Gwe=TO(0,Xwe);return $O(Xwe,8),UC(kwe,Xwe,Wwe,[0,Kj(Wwe,Gwe),[13,[0,qwe,[1,Hwe],1]]])}if(11===Jwe){$O(Xwe,11);var Zwe=MC(Uwe,Xwe)[1];return UC(kwe,Xwe,Wwe,[0,Kj(Wwe,Zwe[1]),[13,[0,qwe,[0,Zwe],0]]])}}return qwe}),_A(Iwe,function(Xwe){var Wwe=TO(0,Xwe),qwe=MC(owe[1],Xwe);$O(Xwe,15);var Jwe=MC(owe[2],Xwe);if(5===$R(0,Xwe))var zwe=f_e;else{var Hwe=$R(0,Xwe);if("number"==typeof Hwe){var Gwe=92===Hwe?0:1;if(Gwe)var Zwe=0;else var Kwe=Gwe,Zwe=1}else var Zwe=0;if(!Zwe)var Kwe=[0,VC(swe[13],h_e,Xwe)];var zwe=[0,Kwe,MC(iwe[2],Xwe)]}var Qwe=zwe[1],$we=MC(owe[4],Xwe),eve=MC(iwe[11],Xwe),tve=UC(owe[5],Xwe,qwe,Jwe),ave=tve[2],nve=MC(owe[6],$we);WC(owe[7],Xwe,tve[3],nve,Qwe,$we);var rve=0===ave[0]?0:1,sve=[2,[0,Qwe,$we,ave,qwe,Jwe,eve[2],rve,eve[1],zwe[2]]];return[0,Kj(Wwe,tve[1]),sve]}),_A(jwe,function(Xwe,Wwe){var qwe=SO(0,Xwe);if(0===Wwe)var Jwe=0;else switch(0|Wwe-1){case 0:XO(Xwe,32);var zwe=TN(Tw(m_e,qwe)),Jwe=1;break;case 2:var Hwe=1;try{var Gwe=QL(qwe)}catch(Zwe){if(Hwe=0,Zwe=YC(Zwe),!Dke)throw Zwe;YO(Xwe,59);var zwe=VB,Jwe=1}if(Hwe)var zwe=Gwe,Jwe=1;break;default:var Jwe=0;}if(!Jwe)var zwe=TN(qwe);return $O(Xwe,[0,Wwe]),zwe}),_A(Lwe,function(Xwe){var Wwe=TO(0,Xwe),qwe=$R(0,Xwe);if("number"==typeof qwe)switch(qwe){case 1:return MC(Dwe,Xwe);case 5:return MC(Ywe,Xwe);case 7:var Jwe=MC(Mwe,Xwe);return[0,Jwe[1],[0,Jwe[2]]];case 21:return $O(Xwe,21),[0,Wwe,0];case 29:var zwe=SO(0,Xwe);return $O(Xwe,29),[0,Wwe,[18,[0,0,zwe]]];case 40:return MC(swe[23],Xwe);case 51:var Hwe=TO(0,Xwe);return $O(Xwe,51),[0,Hwe,1];case 92:var Gwe=MC(swe[18],Xwe);return[0,Gwe[1],[21,Gwe[2]]];case 30:case 31:var Zwe=SO(0,Xwe);return $O(Xwe,qwe),[0,Wwe,[18,[0,[1,31===qwe?1:0],Zwe]]];case 73:case 99:return MC(Fwe,Xwe);}else switch(qwe[0]){case 0:var Kwe=SO(0,Xwe);return[0,Wwe,[18,[0,[2,VC(jwe,Xwe,qwe[1])],Kwe]]];case 1:var Qwe=qwe[1],$we=Qwe[4],eve=Qwe[3],tve=Qwe[2],ave=Qwe[1];return $we&&XO(Xwe,32),$O(Xwe,[1,[0,ave,tve,eve,$we]]),[0,ave,[18,[0,[0,tve],eve]]];case 2:var nve=VC(Rwe,Xwe,qwe[1]);return[0,nve[1],[19,nve[2]]];}if(LO(0,Xwe)){var rve=VC(swe[13],0,Xwe);return[0,rve[1],[17,rve]]}return VO(Xwe),$F===qwe&&JO(Xwe),[0,Wwe,[18,[0,0,u_e]]]}),_A(Dwe,function(Xwe){var Wwe=MC(swe[11],Xwe);return[0,Wwe[1],[1,Wwe[2]]]}),_A(Rwe,function(Xwe,Wwe){var qwe=Wwe[3],Jwe=Wwe[2],zwe=Wwe[1];$O(Xwe,[2,Wwe]);var Hwe=[0,zwe,[0,[0,Jwe[2],Jwe[1]],qwe]];if(qwe)var Gwe=[0,zwe,[0,Hwe,0],0];else for(var Zwe=[0,Hwe,0],Kwe=0;;){var Qwe=MC(swe[7],Xwe),$we=[0,Qwe,Kwe],eve=$R(0,Xwe);if("number"!=typeof eve)var cve=0;else if(2===eve){ZO(Xwe,4);var tve=$R(0,Xwe);if("number"==typeof tve)var ave=1;else if(2===tve[0]){var nve=tve[1],rve=nve[3],sve=nve[2];JO(Xwe);var ive=nve[1],ove=[0,[0,sve[2],sve[1]],rve];KO(Xwe);var lve=[0,[0,ive,ove],Zwe];if(!rve){var Zwe=lve,Kwe=$we;continue}var pve=Rw($we),dve=[0,ive,Rw(lve),pve],cve=1,ave=0}else var ave=1;if(ave)throw[0,ZH,d_e]}else var cve=0;if(!cve){VO(Xwe);var uve=[0,Qwe[1],c_e],mve=Rw($we),fve=Rw([0,uve,Zwe]),dve=[0,Qwe[1],fve,mve]}var Gwe=dve;break}var hve=Kj(zwe,Gwe[1]);return[0,hve,[0,Gwe[2],Gwe[3]]]}),_A(Owe,function(Xwe,Wwe,qwe,Jwe){var zwe=VC(Rwe,Xwe,Jwe);return[0,Kj(Wwe,zwe[1]),[20,[0,qwe,zwe]]]}),_A(Ywe,function(Xwe){$O(Xwe,5);var Wwe=MC(hwe,Xwe),qwe=$R(0,Xwe);if("number"!=typeof qwe)var zwe=0;else if(10===qwe)var Jwe=VC(Bwe,Xwe,[0,Wwe,0]),zwe=1;else if(80===qwe)var Hwe=MC(iwe[8],Xwe),Jwe=[0,Kj(Wwe[1],Hwe[1]),[23,[0,Wwe,Hwe]]],zwe=1;else var zwe=0;if(!zwe)var Jwe=Wwe;return $O(Xwe,6),Jwe}),_A(Mwe,function(Xwe){var Wwe=TO(0,Xwe);$O(Xwe,7);for(var qwe=0;;){var Jwe=$R(0,Xwe);if("number"==typeof Jwe){if(14<=Jwe)var zwe=ZY===Jwe?1:0;else if(8<=Jwe)switch(0|Jwe-8){case 2:$O(Xwe,10);var qwe=[0,0,qwe];continue;case 5:var Hwe=TO(0,Xwe);$O(Xwe,13);var Gwe=MC(hwe,Xwe),Zwe=[1,[0,Kj(Hwe,Gwe[1]),[0,Gwe]]];8!==$R(0,Xwe)&&$O(Xwe,10);var qwe=[0,[0,Zwe],qwe];continue;case 0:var zwe=1;break;default:var zwe=0;}else var zwe=0;if(zwe){var Kwe=Rw(qwe),Qwe=TO(0,Xwe);return $O(Xwe,8),[0,Kj(Wwe,Qwe),[0,Kwe]]}}var $we=[0,MC(hwe,Xwe)];8!==$R(0,Xwe)&&$O(Xwe,10);var qwe=[0,[0,$we],qwe];continue}}),_A(Fwe,function(Xwe){ZO(Xwe,5);var Wwe=TO(0,Xwe),qwe=$R(0,Xwe);if("number"!=typeof qwe&&3===qwe[0]){var Jwe=qwe[1],zwe=SO(0,Xwe);JO(Xwe);var Hwe=Jwe[3],Gwe=Jwe[2];KO(Xwe);var Zwe=Xv(Q_(Hwe));_v(function(Qwe){var $we=0|Qwe-103;if(!(18<$we>>>0))switch($we){case 0:case 2:case 6:case 14:case 18:return Zv(Zwe,Qwe);}return 0},Hwe);var Kwe=Wv(Zwe);return $k(Kwe,Hwe)&&YO(Xwe,[3,Hwe]),[0,Wwe,[18,[0,[3,[0,Gwe,Kwe]],zwe]]]}throw[0,ZH,p_e]}),_A(Vwe,function(Xwe){var Wwe=VR(fwe,Xwe),qwe=TO(0,Wwe),Jwe=12===$R(o_e,Wwe)?0:1,zwe=Jwe?MC(owe[1],Wwe):Jwe,Hwe=MC(iwe[2],Wwe);if(!LO(0,Wwe))var Qwe=0;else if(0===Hwe)var Gwe=VC(swe[13],l_e,Wwe),Zwe=Gwe[1],Kwe=[0,[0,[0,[0,Zwe,[3,[0,[0,Zwe,Gwe[2]],0,0]]],0],0],0,0],Qwe=1;else var Qwe=0;if(!Qwe)var $we=MC(owe[4],Wwe),eve=OR(1,Wwe),tve=MC(iwe[11],eve),Kwe=[0,$we,tve[1],tve[2]];var ave=Kwe[1];if(ave[2])var nve=0;else if(ave[1])var rve=Wwe,nve=1;else var nve=0;if(!nve)var rve=WR(Wwe);var sve=_O(rve),ive=sve?12===$R(0,rve)?1:0:sve;ive&&YO(rve,45),$O(rve,12);var ove=WR(rve),lve=owe[8],pve=RY(function(hve){return UC(lve,hve,zwe,0)},ove),dve=pve[2],cve=dve[1],uve=MC(owe[6],ave);WC(owe[7],ove,dve[2],uve,0,ave);var mve=0===cve[0]?0:1,fve=Kj(qwe,pve[1]);return[0,fve,[3,[0,0,ave,cve,zwe,0,Kwe[3],mve,Kwe[2],Hwe]]]}),_A(Bwe,function(Xwe,Wwe){var qwe=$R(0,Xwe);if("number"==typeof qwe&&10===qwe)return $O(Xwe,10),VC(Bwe,Xwe,[0,MC(hwe,Xwe),Wwe]);var Jwe=Iw(Wwe),zwe=Rw(Wwe),Hwe=Iw(zwe);return[0,Kj(Hwe[1],Jwe[1]),[4,[0,zwe]]]}),_A(Uwe,function(Xwe){var Wwe=$R(0,Xwe),qwe=SO(0,Xwe),Jwe=TO(0,Xwe);if("number"==typeof Wwe){var zwe=60<=Wwe?64<=Wwe?0:1:0===Wwe?1:0;if(zwe)return[0,VC(swe[13],0,Xwe),0]}if("number"==typeof Wwe){if(65<=Wwe){if(SB===Wwe)var Hwe=1;else if(YW<=Wwe)var Hwe=1;else var Gwe=0,Hwe=0;}else if(60<=Wwe){if(64<=Wwe)var Hwe=1;else var Gwe=0,Hwe=0;}else if(15<=Wwe)var Hwe=1;else var Gwe=0,Hwe=0;if(Hwe)var Zwe=[0,[0,Jwe,MO([0,Wwe,qwe])]],Gwe=1}else var Gwe=0;if(!Gwe){VO(Xwe);var Zwe=0}return JO(Xwe),[0,[0,Jwe,qwe],Zwe]}),[0,Mwe,hwe,Swe,Uwe,gwe,Nwe,jwe,Bwe]}}}(gCe),xCe),SCe),TCe=MC(MC(MC(function(swe){return function(iwe){return function(owe){return function(lwe){function pwe(xwe){var Swe=xwe[23][3];if(Swe)for(var Ewe=0;;){var Twe=$R(0,xwe);if("number"==typeof Twe&&14===Twe){JO(xwe);var Ewe=[0,MC(lwe[6],xwe),Ewe];continue}return Rw(Ewe)}return Swe}function dwe(xwe){var Swe=$R(0,xwe);if("number"!=typeof Swe)switch(Swe[0]){case 0:var _we=SO(0,xwe),Nwe=TO(0,xwe);return[0,Nwe,[0,[0,Nwe,[0,[2,VC(lwe[7],xwe,Swe[1])],_we]]]];case 1:var kwe=Swe[1],Cwe=kwe[4],wwe=kwe[3],vwe=kwe[2],Iwe=kwe[1];return Cwe&&XO(xwe,32),$O(xwe,[1,[0,Iwe,vwe,wwe,Cwe]]),[0,Iwe,[0,[0,Iwe,[0,[0,vwe],wwe]]]];}else if(7===Swe){var Ewe=TO(0,xwe);$O(xwe,7);var Twe=RR(0,xwe),Awe=MC(swe[9],Twe),Pwe=TO(0,xwe);return $O(xwe,8),[0,Kj(Ewe,Pwe),[2,Awe]]}var jwe=MC(lwe[4],xwe)[1];return[0,jwe[1],[1,jwe]]}function cwe(xwe,Swe){var Ewe=MC(owe[2],xwe),Twe=dwe(xwe),Awe=Twe[1],Pwe=TO(0,xwe),_we=MC(owe[4],xwe),Nwe=0;if(0===Swe){var kwe=_we[1];if(_we[2])TR(xwe,[0,Awe,63]);else{var Cwe=kwe?kwe[2]?0:1:0;Cwe||TR(xwe,[0,Awe,63])}}else{var wwe=_we[1]?0:_we[2]?0:1;wwe||TR(xwe,[0,Awe,62])}var vwe=MC(iwe[9],xwe),Iwe=UC(owe[5],xwe,Nwe,Ewe),jwe=Iwe[2],Lwe=MC(owe[6],_we);WC(owe[7],xwe,Iwe[3],Lwe,0,_we);var Dwe=0===jwe[0]?[0,jwe[1][1],0]:[0,jwe[1][1],1],Rwe=Kj(Pwe,Dwe[1]);return[0,Twe[2],[0,Rwe,[0,0,_we,jwe,Nwe,Ewe,0,Dwe[2],vwe,0]]]}function uwe(xwe,Swe,Ewe,Twe,Awe){var Pwe=$R(0,xwe);if("number"==typeof Pwe){if(92===Pwe)var _we=1;else if(11<=Pwe)var Nwe=0,_we=0;else switch(Pwe){case 5:var _we=1;break;case 2:case 10:switch(Ewe[0]){case 0:var kwe=Ewe[1],Cwe=[0,kwe[1],[18,kwe[2]]];break;case 1:var wwe=Ewe[1],Cwe=[0,wwe[1],[17,wwe]];break;default:var Cwe=Ewe[1];}var vwe=[0,Cwe,1,0],Nwe=1,_we=0;break;default:var Nwe=0,_we=0;}if(_we){var Iwe=TO(0,xwe),jwe=MC(iwe[2],xwe),Lwe=MC(owe[4],xwe),Dwe=MC(iwe[9],xwe),Rwe=UC(owe[5],xwe,Twe,Awe),Owe=Rwe[2],Ywe=MC(owe[6],Lwe);WC(owe[7],xwe,Rwe[3],Ywe,0,Lwe);var Mwe=0===Owe[0]?[0,Owe[1][1],0]:[0,Owe[1][1],1],Fwe=Kj(Iwe,Mwe[1]),vwe=[0,[0,Fwe,[2,[0,0,Lwe,Owe,Twe,Awe,0,Mwe[2],Dwe,jwe]]],0,1],Nwe=1}}else var Nwe=0;if(!Nwe){$O(xwe,80);var vwe=[0,MC(swe[9],xwe),0,0]}var Vwe=vwe[1],Bwe=[0,Ewe,[0,Vwe],vwe[3],vwe[2]];return[0,Kj(Swe,Vwe[1]),Bwe]}function mwe(xwe,Swe){return Swe?TR(xwe,[0,Swe[1][1],5]):Swe}function fwe(xwe,Swe,Ewe,Twe,Awe,Pwe,_we,Nwe){for(;;){var kwe=$R(0,xwe);if("number"==typeof kwe){var Cwe=0|kwe-78;if(2>>0)var wwe=UV==Cwe?0:1;else{if(1==Cwe){VO(xwe),JO(xwe);continue}var wwe=0}if(!wwe&&!Awe&&!Pwe){var vwe=MC(iwe[9],xwe),Iwe=xwe[23],jwe=78===$R(0,xwe)?1:0;if(jwe){var Lwe=_we?Iwe[2]:_we;if(Lwe)var Dwe=Lwe;else var Rwe=1-_we,Dwe=Rwe?Iwe[1]:Rwe;var Owe=Dwe?($O(xwe,78),[0,MC(swe[7],xwe)]):Dwe}else var Owe=jwe;var Ywe=TO(0,xwe);if(!SY(xwe,9)){var Mwe=7===$R(0,xwe)?1:0,Fwe=Mwe||(5===$R(0,xwe)?1:0);Fwe&&VO(xwe)}return[1,[0,Kj(Swe,Ywe),[0,Twe,Owe,vwe,_we,Nwe]]]}}mwe(xwe,Nwe);var Vwe=TO(0,xwe),Bwe=MC(iwe[2],xwe),Uwe=MC(owe[4],xwe),Xwe=MC(iwe[9],xwe),Wwe=UC(owe[5],xwe,Awe,Pwe),qwe=Wwe[2],Jwe=MC(owe[6],Uwe);WC(owe[7],xwe,Wwe[3],Jwe,0,Uwe);var zwe=0===qwe[0]?[0,qwe[1][1],0]:[0,qwe[1][1],1],Hwe=zwe[1],Gwe=Kj(Vwe,Hwe),Zwe=[0,Gwe,[0,0,Uwe,qwe,Awe,Pwe,0,zwe[2],Xwe,Bwe]];if(0===_we){switch(Twe[0]){case 0:var Kwe=Twe[1][2][1];if("number"==typeof Kwe)var Qwe=1;else if(0!==Kwe[0])var Qwe=1;else if($k(Kwe[1],gNe))var $we=0,eve=0,Qwe=0;else var eve=1,Qwe=0;if(Qwe)var $we=0,eve=0;break;case 1:if($k(Twe[1][2],xNe))var $we=0,eve=0;else var eve=1;break;default:var $we=0,eve=0;}if(eve)var tve=0,$we=1}else var $we=0;if(!$we)var tve=1;return[0,[0,Kj(Swe,Hwe),[0,tve,Twe,Zwe,_we,Ewe]]]}}var hwe=[],ywe=[],bwe=[],gwe=[];return _A(hwe,function(xwe){if(41===$R(0,xwe)){$O(xwe,41);var Swe=xwe.slice();Swe[16]=0;var Ewe=MC(lwe[6],Swe),Twe=[0,[0,Ewe],MC(iwe[4],xwe)]}else var Twe=NNe;var Awe=52===$R(0,xwe)?1:0;if(Awe){1-SR(xwe)&&YO(xwe,11),$O(xwe,52);var Pwe=VC(ywe,xwe,0)}else var Pwe=Awe;var _we=MC(bwe,xwe);return[0,_we,Twe[1],Twe[2],Pwe]}),_A(ywe,function(xwe,Swe){var Ewe=VC(swe[13],0,xwe),Twe=MC(iwe[4],xwe),Awe=Twe?Kj(Ewe[1],Twe[1][1]):Ewe[1],Pwe=[0,[0,Awe,[0,Ewe,Twe]],Swe],_we=$R(0,xwe);return"number"==typeof _we&&10===_we?($O(xwe,10),VC(ywe,xwe,Pwe)):Rw(Pwe)}),_A(bwe,function(xwe){var Swe=TO(0,xwe);$O(xwe,1);for(var Ewe=0;;){var Twe=$R(0,xwe);if("number"==typeof Twe){var Awe=0|Twe-3;if(XY>>0){if(!(Zq<(0|Awe+1)>>>0)){var Pwe=Rw(Ewe),_we=TO(0,xwe);return $O(xwe,2),[0,Kj(Swe,_we),[0,Pwe]]}}else if(6==Awe){$O(xwe,9);continue}}var Ewe=[0,MC(gwe,xwe),Ewe];continue}}),_A(gwe,function(xwe){var Swe=TO(0,xwe),Ewe=pwe(xwe),Twe=5===$R(SNe,xwe)?0:1;if(Twe)var Awe=92===$R(ENe,xwe)?0:1,Pwe=Awe?SY(xwe,42):Awe;else var Pwe=Twe;var _we=5===$R(TNe,xwe)?0:1;if(_we)var Nwe=80===$R(ANe,xwe)?0:1,kwe=Nwe?MC(owe[1],xwe):Nwe;else var kwe=_we;var Cwe=MC(owe[2],xwe),wwe=UC(owe[3],xwe,kwe,Cwe);if(0!==Cwe)var Iwe=0;else if(wwe)var vwe=MC(owe[2],xwe),Iwe=1;else var Iwe=0;if(!Iwe)var vwe=Cwe;var jwe=dwe(xwe);if(0===kwe&&0===vwe){var Lwe=jwe[2];if(1===Lwe[0]){var Dwe=Lwe[1][2];if(!$k(Dwe,PNe)){var Rwe=$R(0,xwe);if("number"==typeof Rwe){var Owe=78<=Rwe?81<=Rwe?92===Rwe?1:0:79===Rwe?0:1:5===Rwe?1:9===Rwe?1:0;if(Owe)return fwe(xwe,Swe,Ewe,Lwe,kwe,vwe,Pwe,wwe)}mwe(xwe,wwe);var Ywe=cwe(xwe,1),Mwe=Ywe[2],Fwe=[0,2,Ywe[1],Mwe,Pwe,Ewe];return[0,[0,Kj(Swe,Mwe[1]),Fwe]]}if(!$k(Dwe,_Ne)){var Vwe=$R(0,xwe);if("number"==typeof Vwe){var Bwe=78<=Vwe?81<=Vwe?92===Vwe?1:0:79===Vwe?0:1:5===Vwe?1:9===Vwe?1:0;if(Bwe)return fwe(xwe,Swe,Ewe,Lwe,kwe,vwe,Pwe,wwe)}mwe(xwe,wwe);var Uwe=cwe(xwe,0),Xwe=Uwe[2],Wwe=[0,3,Uwe[1],Xwe,Pwe,Ewe];return[0,[0,Kj(Swe,Xwe[1]),Wwe]]}}}return fwe(xwe,Swe,Ewe,jwe[2],kwe,vwe,Pwe,wwe)}),[0,dwe,function(xwe){var Swe=TO(0,xwe);$O(xwe,1);for(var Ewe=0;;){var Twe=$R(0,xwe);if("number"==typeof Twe){var Awe=2===Twe?1:ZY===Twe?1:0;if(Awe){var Pwe=Rw(Ewe),_we=TO(0,xwe);return $O(xwe,2),[0,Kj(Swe,_we),[0,Pwe]]}}var Nwe=TO(0,xwe);if(13===$R(0,xwe)){$O(xwe,13);var kwe=MC(swe[9],xwe),Cwe=[1,[0,Kj(Nwe,kwe[1]),[0,kwe]]]}else{var wwe=TG[1],vwe=LO([0,wwe],xwe);if(vwe)var Iwe=vwe,jwe=0;else{var Lwe=$R([0,wwe],xwe);if("number"==typeof Lwe)var Dwe=1;else if(1>>0){if(UV<=eve)var tve=0,ave=0;else switch(0|eve+80){case 2:case 5:case 10:var ave=1;break;default:var tve=0,ave=0;}}else if(10<(0|eve-1)>>>0)var ave=1;else var tve=0,ave=0;if(ave)var nve=uwe(xwe,Nwe,Fwe,0,0),tve=1}else var tve=0;if(!tve)var rve=cwe(xwe,1),sve=rve[2],ive=sve[1],ove=[0,rve[1],[1,[0,ive,sve[2]]],0,0],nve=[0,Kj(Nwe,ive),ove];var Qwe=nve,Uwe=1}else if($k(Vwe,CNe))var Bwe=0,Uwe=0;else{var Xwe=$R(0,xwe);if("number"==typeof Xwe){var Wwe=0|Xwe+OB;if(12>>0){if(UV<=Wwe)var qwe=0,Jwe=0;else switch(0|Wwe+80){case 2:case 5:case 10:var Jwe=1;break;default:var qwe=0,Jwe=0;}}else if(10<(0|Wwe-1)>>>0)var Jwe=1;else var qwe=0,Jwe=0;if(Jwe)var zwe=uwe(xwe,Nwe,Fwe,0,0),qwe=1}else var qwe=0;if(!qwe)var Hwe=cwe(xwe,0),Gwe=Hwe[2],Zwe=Gwe[1],Kwe=[0,Hwe[1],[2,[0,Zwe,Gwe[2]]],0,0],zwe=[0,Kj(Nwe,Zwe),Kwe];var Qwe=zwe,Uwe=1}if(Uwe)var lve=Qwe,Bwe=1}else var Bwe=0}else var Bwe=0;if(!Bwe)var lve=uwe(xwe,Nwe,Mwe[2],Owe,Ywe);var Cwe=[0,lve]}2!==$R(0,xwe)&&$O(xwe,10);var Ewe=[0,Cwe,Ewe];continue}},function(Swe,xwe){var Ewe=NR(1,Swe),Twe=TO(0,Ewe),Awe=Pw(xwe,pwe(Ewe));$O(Ewe,40);var Pwe=IR(1,Ewe),_we=Ewe[7],Nwe=LO(0,Pwe);if(0===_we)var kwe=0;else{var Cwe=0===Nwe?0:1;if(Cwe)var kwe=0;else var wwe=Cwe,kwe=1}if(!kwe)var wwe=[0,VC(swe[13],0,Pwe)];var vwe=MC(iwe[3],Ewe),Iwe=MC(hwe,Ewe),jwe=Iwe[1],Lwe=Kj(Twe,jwe[1]);return[0,Lwe,[19,[0,wwe,jwe,Iwe[2],vwe,Iwe[3],Iwe[4],Awe]]]},function(xwe){var Swe=TO(0,xwe),Ewe=pwe(xwe);$O(xwe,40);var Twe=$R(0,xwe);if("number"==typeof Twe){var Awe=0|Twe-1;if(40>>0){if(91==Awe)var Pwe=1;else var _we=0,Pwe=0;}else if(38<(0|Awe-1)>>>0)var Pwe=1;else var _we=0,Pwe=0;if(Pwe)var Nwe=bNe,_we=1}else var _we=0;if(!_we)var kwe=[0,VC(swe[13],0,xwe)],Nwe=[0,kwe,MC(iwe[3],xwe)];var Cwe=MC(hwe,xwe),wwe=Cwe[1],vwe=Kj(Swe,wwe[1]);return[0,vwe,[22,[0,Nwe[1],wwe,Cwe[2],Nwe[2],Cwe[3],Cwe[4],Ewe]]]},pwe]}}}}(gCe),xCe),SCe),ECe),ACe=MC(MC(MC(function(swe){return function(iwe){return function(owe){return function(lwe){function pwe(Kwe,Qwe){for(var $we=Qwe;;){var eve=$we[2];switch(eve[0]){case 0:var tve=eve[1][1];return Mw(function(nve,rve){var sve=0===rve[0]?rve[1][2][2]:rve[1][2][1];return pwe(nve,sve)},Kwe,tve);case 1:var ave=eve[1][1];return Mw(function(nve,rve){if(rve){var sve=rve[1],ive=0===sve[0]?sve[1]:sve[1][2][1];return pwe(nve,ive)}return nve},Kwe,ave);case 2:var $we=eve[1][1];continue;case 3:return[0,eve[1][1],Kwe];default:return QC(Tke);}}}function dwe(Kwe,Qwe,$we){if($we){var eve=$we[1];if(0===eve[0]){var tve=eve[1],ave=tve[2][1];if(ave&&!ave[1][2][2]){var nve=ave[2];if(!nve)return nve}return TR(Kwe,[0,tve[1],Qwe])}var rve=eve[1],sve=rve[1],ive=1-MC(swe[24],[0,sve,rve[2]]);return ive?TR(Kwe,[0,sve,Qwe]):ive}return YO(Kwe,Qwe)}function cwe(Kwe,Qwe){for(var $we=Qwe;;){var eve=[0,MC(iwe[5],Kwe),$we],tve=$R(0,Kwe);if("number"==typeof tve&&10===tve){$O(Kwe,10);var $we=eve;continue}return Rw(eve)}}function uwe(Kwe){TY(Kwe,BNe);var Qwe=$R(0,Kwe);if("number"!=typeof Qwe&&1===Qwe[0]){var $we=Qwe[1],eve=$we[4],tve=$we[3],ave=$we[2],nve=$we[1];return eve&&XO(Kwe,32),$O(Kwe,[1,[0,nve,ave,tve,eve]]),[0,nve,[0,[0,ave],tve]]}var rve=SO(0,Kwe),sve=[0,TO(0,Kwe),[0,[0,rve],rve]];return VO(Kwe),sve}function mwe(Kwe,Qwe){var $we=TO(0,Kwe),eve=$R(0,Kwe);if("number"==typeof eve&&Sq===eve){$O(Kwe,Sq),TY(Kwe,VNe);var tve=VC(swe[13],0,Kwe);return[0,[2,[0,Kj($we,tve[1]),tve]],0]}$O(Kwe,1);for(var ave=0,nve=0;;){var rve=ave?ave[1]:1,sve=$R(0,Kwe);if("number"==typeof sve){var ive=2===sve?1:ZY===sve?1:0;if(ive){var ove=Rw(nve);return $O(Kwe,2),ove}}1-rve&&TR(Kwe,[0,TO(0,Kwe),66]);var lve=MC(swe[14],Kwe),pve=lve[2],dve=lve[1],cve=dve[2],uve=Zk(cve,wNe)?vNe:Zk(cve,INe)?jNe:LNe,mve=uve[2],fve=uve[1];if(Zk(SO(0,Kwe),DNe)){var hve=VC(swe[13],0,Kwe);if(!fve)var yve=0;else if(LO(0,Kwe))var yve=0;else{Qwe&&TR(Kwe,[0,dve[1],65]);var bve=[0,[0,mve,0,hve]],yve=1}if(!yve)var bve=[0,[0,0,[0,VC(swe[13],0,Kwe)],dve]];var gve=bve}else{if(!fve)var Ave=0;else if(LO(0,Kwe)){Qwe&&TR(Kwe,[0,dve[1],65]);var xve=MC(swe[14],Kwe),Sve=xve[2];Sve&&TR(Kwe,Sve[1]);var Eve=Zk(SO(0,Kwe),RNe),Tve=Eve?(TY(Kwe,ONe),[0,VC(swe[13],0,Kwe)]):Eve,gve=[0,[0,mve,Tve,xve[1]]],Ave=1}else var Ave=0;if(!Ave){pve&&TR(Kwe,pve[1]);var gve=[0,[0,0,0,dve]]}}var ave=[0,SY(Kwe,10)],nve=[0,gve,nve];continue}}var fwe=[],hwe=[],ywe=[],bwe=[],gwe=[],xwe=[],Swe=[],Ewe=[],Twe=[],Awe=[],Pwe=[],_we=[],Nwe=[],kwe=[],Cwe=[],wwe=[],vwe=[],Iwe=[],jwe=[],Lwe=[],Dwe=[],Rwe=[],Owe=[],Ywe=[],Mwe=[],Fwe=[],Vwe=[],Bwe=[],Uwe=[],Xwe=[],Wwe=[],qwe=[],Jwe=[],zwe=[],Hwe=[],Gwe=[],Zwe=[];return _A(fwe,function(Kwe){var Qwe=TO(0,Kwe);return $O(Kwe,9),[0,Qwe,0]}),_A(hwe,function(Kwe){var Qwe=TO(0,Kwe);if($O(Kwe,32),9===$R(0,Kwe))var $we=0;else if(NO(Kwe))var $we=0;else{var eve=VC(swe[13],0,Kwe),tve=eve[2];1-VC(yCe[3],tve,Kwe[3])&&YO(Kwe,[4,tve]);var ave=[0,eve],$we=1}if(!$we)var ave=0;var nve=IO(0,Kwe),rve=nve?nve[1]:ave?ave[1][1]:Qwe,sve=Kj(Qwe,rve),ive=0===ave?1:0;if(ive)var ove=Kwe[8],lve=ove||Kwe[9],pve=1-lve;else var pve=ive;return pve&&TR(Kwe,[0,sve,23]),QO(Kwe),[0,sve,[4,[0,ave]]]}),_A(ywe,function(Kwe){var Qwe=TO(0,Kwe);if($O(Kwe,35),9===$R(0,Kwe))var $we=0;else if(NO(Kwe))var $we=0;else{var eve=VC(swe[13],0,Kwe),tve=eve[2];1-VC(yCe[3],tve,Kwe[3])&&YO(Kwe,[4,tve]);var ave=[0,eve],$we=1}if(!$we)var ave=0;var nve=IO(0,Kwe),rve=nve?nve[1]:ave?ave[1][1]:Qwe,sve=Kj(Qwe,rve);return 1-Kwe[8]&&TR(Kwe,[0,sve,22]),QO(Kwe),[0,sve,[5,[0,ave]]]}),_A(bwe,function(Kwe){var Qwe=TO(0,Kwe);$O(Kwe,59);var $we=IO(0,Kwe),eve=$we?$we[1]:Qwe;return QO(Kwe),[0,Kj(Qwe,eve),1]}),_A(gwe,function(Kwe){var Qwe=TO(0,Kwe);$O(Kwe,37);var $we=LR(1,Kwe),eve=MC(swe[2],$we);$O(Kwe,25),$O(Kwe,5);var tve=MC(swe[7],Kwe),ave=TO(0,Kwe);$O(Kwe,6);var nve=IO(0,Kwe),rve=nve?nve[1]:ave;return 9===$R(0,Kwe)&&QO(Kwe),[0,Kj(Qwe,rve),[13,[0,eve,tve]]]}),_A(xwe,function(Kwe){var Qwe=TO(0,Kwe);$O(Kwe,39);var $we=Kwe[17],eve=$we?SY(Kwe,64):$we;$O(Kwe,5);var tve=$R(0,Kwe);if("number"!=typeof tve)var ave=0;else if(24<=tve){if(29<=tve)var ave=0;else switch(0|tve+QB){case 0:var nve=RR(1,Kwe),rve=MC(owe[13],nve),sve=[0,[0,[0,rve[1]]],rve[2]],ave=1;break;case 3:var ive=RR(1,Kwe),ove=MC(owe[12],ive),sve=[0,[0,[0,ove[1]]],ove[2]],ave=1;break;case 4:var lve=RR(1,Kwe),pve=MC(owe[11],lve),sve=[0,[0,[0,pve[1]]],pve[2]],ave=1;break;default:var ave=0;}}else if(9===tve)var sve=xke,ave=1;else var ave=0;if(!ave)var dve=IR(1,RR(1,Kwe)),sve=[0,[0,[1,MC(swe[7],dve)]],0];var cve=sve[1],uve=$R(0,Kwe);if(62!==uve&&!eve){if("number"==typeof uve&&17===uve){if(dwe(Kwe,17,cve),cve){var mve=cve[1],fve=0===mve[0]?[0,mve[1]]:[1,mve[1]];$O(Kwe,17);var hve=MC(swe[7],Kwe);$O(Kwe,6);var yve=LR(1,Kwe),bve=MC(swe[2],yve);return[0,Kj(Qwe,bve[1]),[15,[0,fve,hve,bve,0]]]}throw[0,ZH,Eke]}var gve=sve[2];Yw(function(Dve){return TR(Kwe,Dve)},gve),$O(Kwe,9);var xve=$R(0,Kwe);if("number"==typeof xve){var Sve=9===xve?0:1;if(Sve)var Eve=0;else var Tve=Sve,Eve=1}else var Eve=0;if(!Eve)var Tve=[0,MC(swe[7],Kwe)];$O(Kwe,9);var Ave=$R(0,Kwe);if("number"==typeof Ave){var Pve=6===Ave?0:1;if(Pve)var _ve=0;else var Nve=Pve,_ve=1}else var _ve=0;if(!_ve)var Nve=[0,MC(swe[7],Kwe)];$O(Kwe,6);var kve=LR(1,Kwe),Cve=MC(swe[2],kve);return[0,Kj(Qwe,Cve[1]),[14,[0,cve,Tve,Nve,Cve]]]}if(dwe(Kwe,18,cve),cve){var wve=cve[1],vve=0===wve[0]?[0,wve[1]]:[1,wve[1]];$O(Kwe,62);var Ive=MC(swe[9],Kwe);$O(Kwe,6);var jve=LR(1,Kwe),Lve=MC(swe[2],jve);return[0,Kj(Qwe,Lve[1]),[16,[0,vve,Ive,Lve,eve]]]}throw[0,ZH,Ske]}),_A(Swe,function(Kwe){var Qwe=TO(0,Kwe);$O(Kwe,16),$O(Kwe,5);var $we=MC(swe[7],Kwe);$O(Kwe,6),$R(0,Kwe);var eve=RO(0,Kwe)?(XO(Kwe,46),MC(owe[14],Kwe)):MC(swe[2],Kwe),tve=43===$R(0,Kwe)?1:0,ave=tve?($O(Kwe,43),[0,MC(swe[2],Kwe)]):tve,nve=ave?ave[1][1]:eve[1];return[0,Kj(Qwe,nve),[2,[0,$we,eve,ave]]]}),_A(Ewe,function(Kwe){1-Kwe[10]&&YO(Kwe,24);var Qwe=TO(0,Kwe);if($O(Kwe,19),9===$R(0,Kwe))var $we=0;else if(NO(Kwe))var $we=0;else var eve=[0,MC(swe[7],Kwe)],$we=1;if(!$we)var eve=0;var tve=IO(0,Kwe),ave=tve?tve[1]:eve?eve[1][1]:Qwe;return QO(Kwe),[0,Kj(Qwe,ave),[9,[0,eve]]]}),_A(Twe,function(Kwe){var Qwe=TO(0,Kwe);$O(Kwe,20),$O(Kwe,5);var $we=MC(swe[7],Kwe);$O(Kwe,6),$O(Kwe,1);for(var eve=gke;;){var tve=eve[2],ave=eve[1],nve=$R(0,Kwe);if("number"==typeof nve){var rve=2===nve?1:ZY===nve?1:0;if(rve){var sve=Rw(tve),ive=TO(0,Kwe);return $O(Kwe,2),[0,Kj(Qwe,ive),[8,[0,$we,sve]]]}}var ove=TO(0,Kwe),lve=$R(0,Kwe);if("number"!=typeof lve)var dve=0;else if(36===lve){ave&&YO(Kwe,20),$O(Kwe,36);var pve=0,dve=1}else var dve=0;if(!dve){$O(Kwe,33);var pve=[0,MC(swe[7],Kwe)]}var cve=ave||(0===pve?1:0),uve=TO(0,Kwe);$O(Kwe,80);var mve=function(gve){if("number"==typeof gve){var xve=0|gve-2,Sve=31>>0?34==xve?1:0:29<(0|xve-1)>>>0?1:0;if(Sve)return 1}return 0},fve=Kwe.slice();fve[9]=1;var hve=VC(swe[4],mve,fve),yve=Rw(hve),bve=yve?yve[1][1]:uve,eve=[0,cve,[0,[0,Kj(ove,bve),[0,pve,hve]],tve]];continue}}),_A(Awe,function(Kwe){var Qwe=TO(0,Kwe);$O(Kwe,22),_O(Kwe)&&TR(Kwe,[0,Qwe,12]);var $we=MC(swe[7],Kwe),eve=IO(0,Kwe),tve=eve?eve[1]:$we[1];return QO(Kwe),[0,Kj(Qwe,tve),[10,[0,$we]]]}),_A(Pwe,function(Kwe){var Qwe=TO(0,Kwe);$O(Kwe,23);var $we=MC(swe[16],Kwe),eve=$R(0,Kwe);if("number"!=typeof eve)var ive=0;else if(34===eve){var tve=TO(0,Kwe);$O(Kwe,34),$O(Kwe,5);var ave=VC(swe[13],bke,Kwe),nve=[0,ave[1],[3,[0,ave,0,0]]];$O(Kwe,6);var rve=MC(swe[16],Kwe),sve=[0,[0,Kj(tve,rve[1]),[0,nve,rve]]],ive=1}else var ive=0;if(!ive)var sve=0;var ove=$R(0,Kwe);if("number"!=typeof ove)var pve=0;else if(38===ove){$O(Kwe,38);var lve=[0,MC(swe[16],Kwe)],pve=1}else var pve=0;if(!pve)var lve=0;var dve=lve?lve[1][1]:sve?sve[1][1]:(TR(Kwe,[0,$we[1],21]),$we[1]);return[0,Kj(Qwe,dve),[11,[0,$we,sve,lve]]]}),_A(_we,function(Kwe){var Qwe=MC(owe[9],Kwe),$we=Qwe[1],eve=$we[1],tve=IO(0,Kwe),ave=tve?tve[1]:eve;QO(Kwe);var nve=Qwe[2];Yw(function(sve){return TR(Kwe,sve)},nve);var rve=$we[2];return[0,Kj(eve,ave),rve]}),_A(Nwe,function(Kwe){var Qwe=TO(0,Kwe);$O(Kwe,28);var $we=IR(1,Kwe),eve=MC(owe[10],$we),tve=[18,[0,eve[2],1]],ave=IO(0,Kwe),nve=ave?ave[1]:eve[1];QO(Kwe);var rve=eve[3];return Yw(function(sve){return TR(Kwe,sve)},rve),[0,Kj(Qwe,nve),tve]}),_A(kwe,function(Kwe){var Qwe=TO(0,Kwe);$O(Kwe,25),$O(Kwe,5);var $we=MC(swe[7],Kwe);$O(Kwe,6);var eve=LR(1,Kwe),tve=MC(swe[2],eve);return[0,Kj(Qwe,tve[1]),[12,[0,$we,tve]]]}),_A(Cwe,function(Kwe){var Qwe=TO(0,Kwe);$O(Kwe,26),$O(Kwe,5);var $we=MC(swe[7],Kwe);$O(Kwe,6);var eve=MC(swe[2],Kwe),tve=Kj(Qwe,eve[1]);return WO(Kwe,[0,tve,26]),[0,tve,[6,[0,$we,eve]]]}),_A(wwe,function(Kwe){var Qwe=MC(swe[16],Kwe);return[0,Qwe[1],[0,Qwe[2]]]}),_A(vwe,function(Kwe){var Qwe=MC(swe[7],Kwe),$we=$R(0,Kwe),eve=Qwe[2],tve=Qwe[1];if("number"!=typeof eve&&17===eve[0]&&"number"==typeof $we&&80===$we){var ave=eve[1],nve=ave[2];$O(Kwe,80),VC(yCe[3],nve,Kwe[3])&&TR(Kwe,[0,tve,[5,yke,nve]]);var rve=Kwe.slice();rve[3]=VC(mCe[4],nve,Kwe[3]);var sve=MC(swe[2],rve);return[0,Kj(tve,sve[1]),[3,[0,ave,sve]]]}var ive=IO(0,Kwe),ove=ive?ive[1]:Qwe[1];return QO(Kwe),[0,Kj(Qwe[1],ove),[1,[0,Qwe]]]}),_A(Iwe,function(Kwe){var Qwe=RY(swe[7],Kwe),$we=Qwe[1],eve=IO(0,Kwe),tve=eve?Kj($we,eve[1]):$we;return QO(Kwe),[0,tve,[1,[0,Qwe[2]]]]}),_A(jwe,function(Kwe){var Qwe=TO(0,Kwe);1-SR(Kwe)&&YO(Kwe,6),$O(Kwe,61),ZO(Kwe,1);var $we=VC(swe[13],0,Kwe),eve=MC(iwe[3],Kwe);$O(Kwe,78);var tve=MC(iwe[1],Kwe),ave=IO(0,Kwe),nve=ave?ave[1]:tve[1];return QO(Kwe),KO(Kwe),[0,Kj(Qwe,nve),[0,$we,eve,tve]]}),_A(Lwe,function(Kwe){if(LO(hke,Kwe)){var Qwe=MC(jwe,Kwe);return[0,Qwe[1],[7,Qwe[2]]]}return MC(swe[2],Kwe)}),_A(Dwe,function(Kwe){var Qwe=TO(0,Kwe);1-SR(Kwe)&&YO(Kwe,11),$O(Kwe,53);var $we=VC(swe[13],0,Kwe),eve=MC(iwe[3],Kwe),tve=41===$R(0,Kwe)?1:0;if(tve){$O(Kwe,41);for(var ave=0;;){var nve=[0,MC(iwe[5],Kwe),ave],rve=$R(0,Kwe);if("number"==typeof rve&&10===rve){$O(Kwe,10);var ave=nve;continue}var sve=Rw(nve);break}}else var sve=tve;var ive=VC(iwe[6],1,Kwe);return[0,Kj(Qwe,ive[1]),[0,$we,eve,ive,sve,0]]}),_A(Rwe,function(Kwe){if(LO(fke,Kwe)){var Qwe=MC(Dwe,Kwe);return[0,Qwe[1],[20,Qwe[2]]]}return MC(Iwe,Kwe)}),_A(Owe,function(Kwe,Qwe){var $we=NR(1,Kwe);$O($we,40);var eve=VC(swe[13],0,$we),tve=MC(iwe[3],$we),ave=41===$R(0,$we)?1:0,nve=ave?($O($we,41),cwe($we,0)):ave,rve=Zk(SO(0,$we),uke),sve=rve?(TY($we,mke),cwe($we,0)):rve,ive=VC(iwe[6],1,$we);return[0,Kj(Qwe,ive[1]),[0,eve,tve,ive,nve,sve]]}),_A(Ywe,function(Kwe,Qwe){var $we=VC(Owe,Kwe,Qwe);return[0,$we[1],[23,$we[2]]]}),_A(Mwe,function(Kwe,Qwe){$O(Kwe,15);var $we=VC(swe[13],0,Kwe),eve=TO(0,Kwe),tve=MC(iwe[2],Kwe),ave=MC(iwe[7],Kwe);$O(Kwe,80);var nve=MC(iwe[1],Kwe),rve=nve[1],sve=MC(iwe[10],Kwe),ive=[0,Kj(eve,rve),[1,[0,ave,nve,tve]]],ove=[0,ive[1],ive],lve=$we[2],pve=[0,Kj($we[1],rve),lve],dve=IO(0,Kwe),cve=dve?dve[1]:rve;return QO(Kwe),[0,Kj(Qwe,cve),[0,pve,ove,sve]]}),_A(Fwe,function(Kwe,Qwe){var $we=VC(Mwe,Kwe,Qwe);return[0,$we[1],[22,$we[2]]]}),_A(Vwe,function(Kwe,Qwe){$O(Kwe,24);var $we=UC(swe[15],Kwe,cke,28),eve=$we[2],tve=IO(0,Kwe),ave=tve?tve[1]:$we[1],nve=Kj(Qwe,ave);return QO(Kwe),[0,nve,[0,eve[1],eve[2]]]}),_A(Bwe,function(Kwe,Qwe){var $we=VC(Vwe,Kwe,Qwe);return[0,$we[1],[21,$we[2]]]}),_A(Uwe,function(Kwe,Qwe){var $we=$R(0,Kwe);if("number"==typeof $we)var eve=0;else if(1===$we[0]){var tve=$we[1],ave=tve[4],nve=tve[3],rve=tve[2],sve=tve[1];ave&&XO(Kwe,32),$O(Kwe,[1,[0,sve,rve,nve,ave]]);var ive=[1,[0,sve,[0,[0,rve],nve]]],eve=1}else var eve=0;if(!eve)var ive=[0,VC(swe[13],0,Kwe)];var ove=TO(0,Kwe);$O(Kwe,1);for(var lve=0,pve=0;;){var dve=$R(0,Kwe);if("number"==typeof dve){var cve=2===dve?1:ZY===dve?1:0;if(cve){var uve=Rw(pve);$O(Kwe,2);var mve=[0,Kj(ove,TO(0,Kwe)),[0,uve]],fve=Kj(Qwe,mve[1]),hve=lve?lve[1]:[0,fve];return[0,fve,[24,[0,ive,mve,hve]]]}}var yve=VC(Wwe,dke,Kwe),bve=yve[2],gve=yve[1];if(lve){if(0===lve[1][0]){if("number"==typeof bve)var xve=0;else switch(bve[0]){case 25:YO(Kwe,60);var Sve=lve,xve=1;break;case 26:var Eve=bve[1][2],Tve=Eve?3>>0)var pve=0;else switch(gve){case 22:$O($we,36),PR($we,[0,Kj(eve,TO(0,$we)),$Ne]);var xve=$R(0,$we);if("number"!=typeof xve)var Tve=0;else if(15===xve)var Sve=MC(owe[14],$we),Eve=[0,Sve[1],[0,Sve]],Tve=1;else var Tve=0;if(!Tve)if(OO(0,$we))var Ave=VC(lwe[3],$we,Qwe),Eve=[0,Ave[1],[0,Ave]];else{var Pve=MC(swe[9],$we),_ve=IO(0,$we),Nve=_ve?_ve[1]:Pve[1];QO($we);var Eve=[0,Nve,[1,Pve]]}var kve=[28,[0,Eve[2],1]];return[0,Kj(eve,Eve[1]),kve];case 0:case 1:case 10:case 13:case 14:case 26:var pve=1;break;default:var pve=0;}}if(pve){var Cve=VC(swe[3],[0,Qwe],$we),wve=Cve[2],vve=Cve[1];if("number"==typeof wve)var Ive=0;else switch(wve[0]){case 17:var jve=wve[1][1];if(jve)var Lve=jve[1],Ive=2;else{TR($we,[0,vve,56]);var Dve=0,Ive=1}break;case 18:var Rve=wve[1][1],Dve=Mw(function(Gve,Zve){return Mw(pwe,Gve,[0,Zve[2][1],0])},0,Rve),Ive=1;break;case 19:var Ove=wve[1][1];if(Ove)var Lve=Ove[1],Ive=2;else{TR($we,[0,vve,55]);var Dve=0,Ive=1}break;default:var Ive=0;}switch(Ive){case 0:var Dve=QC(tke),Yve=0;break;case 1:var Yve=0;break;default:var Mve=[0,[0,vve,MC(Jwe,Lve)],0],Yve=1;}if(!Yve)var Mve=Dve;return Yw(function(Gve){return PR($we,Gve)},Mve),[0,Kj(eve,Cve[1]),[27,[0,[0,Cve],0,0,1]]]}}var Fve=$R(0,$we);if("number"!=typeof Fve)var Bve=0;else if(61===Fve){JO($we);var Vve=0,Bve=1}else var Bve=0;if(!Bve)var Vve=1;$O($we,1);var Uve=UC(zwe,$we,0,0),Xve=[0,[0,Uve[1]]],Wve=TO(0,$we);if($O($we,2),Zk(SO(0,$we),eke))var qve=[0,MC(qwe,$we)];else{var Jve=Uve[2];Yw(function(Gve){return TR($we,Gve)},Jve);var qve=0}var zve=IO(0,$we),Hve=zve?zve[1]:qve?qve[1][1]:Wve;return QO($we),[0,Kj(eve,Hve),[27,[0,0,Xve,qve,Vve]]]}),_A(Gwe,function(Kwe,Qwe){var $we=Kwe?Kwe[1]:Kwe;1-SR(Qwe)&&YO(Qwe,8);var eve=TO(0,Qwe);$O(Qwe,60);var tve=YR(1,NR(1,Qwe));$O(tve,49);var ave=$R(0,tve);if("number"==typeof ave)if(54<=ave){if(61===ave){if($we){var nve=MC(jwe,tve),rve=nve[1],sve=Kj(eve,rve);return[0,sve,[26,[0,0,[0,[4,[0,rve,nve[2]]]],0,0]]]}}else if(Sq===ave){var ive=TO(0,tve);$O(tve,Sq);var ove=tve[23][4],lve=Zk(SO(0,tve),UNe),pve=lve?(TY(tve,XNe),ove?[0,VC(swe[13],0,tve)]:(YO(tve,8),0)):lve,dve=MC(qwe,tve),cve=IO(0,tve),uve=cve?cve[1]:dve[1];return QO(tve),[0,Kj(eve,uve),[26,[0,0,0,[0,[1,ive,pve]],[0,dve]]]]}}else if(41<=ave){if(53<=ave&&$we){var mve=MC(Dwe,tve),fve=mve[1],hve=Kj(eve,fve);return[0,hve,[26,[0,0,[0,[5,[0,fve,mve[2]]]],0,0]]]}}else if(15<=ave)switch(0|ave-15){case 21:$O(tve,36);var yve=$R(0,tve);if("number"!=typeof yve)var xve=0;else if(15===yve)var bve=VC(Mwe,tve,eve),gve=[0,bve[1],[0,[1,bve]]],xve=1;else if(40===yve)var Sve=VC(Owe,tve,eve),gve=[0,Sve[1],[0,[2,Sve]]],xve=1;else var xve=0;if(!xve){var Eve=MC(iwe[1],tve),Tve=IO(0,tve),Ave=Tve?Tve[1]:Eve[1];QO(tve);var gve=[0,Ave,[0,[3,Eve]]]}var Pve=[26,[0,1,gve[2],0,0]];return[0,Kj(eve,gve[1]),Pve];case 0:case 9:case 12:case 13:case 25:var _ve=$R(0,tve);if("number"==typeof _ve){if(25<=_ve){if(!(29<=_ve))var Cve=27<=_ve?1:0;else if(40===_ve)var Nve=VC(Owe,tve,eve),kve=[0,Nve[1],[0,[2,Nve]]],Cve=2;else var Cve=0;}else if(15===_ve)var wve=VC(Mwe,tve,eve),kve=[0,wve[1],[0,[1,wve]]],Cve=2;else var Cve=24<=_ve?1:0;switch(Cve){case 0:var vve=0;break;case 1:var Ive="number"==typeof _ve?27===_ve?(YO(tve,51),1):28===_ve?(YO(tve,50),1):0:0,jve=VC(Vwe,tve,eve),kve=[0,jve[1],[0,[0,jve]]],vve=1;break;default:var vve=1;}if(vve){var Lve=[26,[0,0,kve[2],0,0]];return[0,Kj(eve,kve[1]),Lve]}}throw[0,ZH,qNe];}var Dve=$R(0,tve),Rve="number"==typeof Dve?53===Dve?(YO(tve,53),1):61===Dve?(YO(tve,52),1):0:0;$O(tve,1);var Ove=UC(zwe,tve,0,0),Yve=[0,[0,Ove[1]]],Mve=TO(0,tve);if($O(tve,2),Zk(SO(0,tve),WNe))var Fve=[0,MC(qwe,tve)];else{var Vve=Ove[2];Yw(function(Xve){return TR(tve,Xve)},Vve);var Fve=0}var Bve=IO(0,tve),Uve=Bve?Bve[1]:Fve?Fve[1][1]:Mve;return QO(tve),[0,Kj(eve,Uve),[26,[0,0,0,Yve,Fve]]]}),_A(Zwe,function(Kwe){var Qwe=NR(1,Kwe),$we=TO(0,Qwe);$O(Qwe,50);var eve=$R(0,Qwe);if("number"!=typeof eve)var ave=0;else if(46===eve){1-SR(Qwe)&&YO(Qwe,9),$O(Qwe,46);var tve=YNe,ave=1}else if(61===eve){1-SR(Qwe)&&YO(Qwe,9);var tve=[0,0,[0,VC(swe[13],0,Qwe)]],ave=1}else var ave=0;if(!ave)var tve=MNe;var nve=tve[2],rve=tve[1],sve=2===rve?0:1,ive=$R(0,Qwe),ove=LO(0,Qwe);if("number"==typeof ive)var lve=10===ive?1:0;else if(1===ive[0]){if(2===rve){var pve=ive[1],dve=pve[4],cve=pve[3],uve=pve[2],mve=pve[1];dve&&XO(Qwe,32),$O(Qwe,[1,[0,mve,uve,cve,dve]]);var fve=IO(0,Qwe),hve=fve?fve[1]:mve;return QO(Qwe),[0,Kj($we,hve),[29,[0,rve,[0,mve,[0,[0,uve],cve]],0]]]}var lve=0}else var lve=0;if(!lve&&0===ove){var yve=mwe(Qwe,sve),bve=uwe(Qwe),gve=IO(0,Qwe),xve=gve?gve[1]:bve[1];return QO(Qwe),[0,Kj($we,xve),[29,[0,rve,bve,yve]]]}var Sve=$R(0,Qwe),Eve=SO(0,Qwe);if(!nve)var Pve=0;else if("number"==typeof Sve){var Tve=nve[1];if(10===Sve)var Ave=1;else if(0!==Sve)var Pve=0,Ave=0;else if($k(Eve,FNe))var Pve=0,Ave=0;else var Ave=1;if(Ave)var _ve=[0,2,[1,Tve]],Pve=1}else var Pve=0;if(!Pve)var _ve=[0,rve,[1,VC(swe[13],0,Qwe)]];var Nve=$R(0,Qwe);if("number"!=typeof Nve)var Cve=0;else if(10===Nve){$O(Qwe,10);var kve=mwe(Qwe,sve),Cve=1}else var Cve=0;if(!Cve)var kve=0;var wve=uwe(Qwe),vve=IO(0,Qwe),Ive=vve?vve[1]:wve[1];QO(Qwe);var jve=[29,[0,_ve[1],wve,[0,_ve[2],kve]]];return[0,Kj($we,Ive),jve]}),[0,xwe,Swe,Nwe,Pwe,kwe,Cwe,wwe,hwe,ywe,bwe,Wwe,Gwe,gwe,fwe,Hwe,Iwe,Zwe,Rwe,vwe,Ewe,Twe,Awe,Lwe,_we]}}}}(gCe),xCe),SCe),TCe),PCe=MC(function(swe){return function(iwe){function owe(uwe,mwe){var fwe=mwe[2][1],hwe=[0,[0,Ow(function(ywe){if(0===ywe[0]){var bwe=ywe[1],gwe=bwe[2],xwe=gwe[2],Swe=gwe[1];switch(Swe[0]){case 0:var Ewe=[0,Swe[1]];break;case 1:var Ewe=[1,Swe[1]];break;default:var Ewe=[2,Swe[1]];}if(0===xwe[0])var Twe=VC(swe[20],uwe,xwe[1]);else{var Awe=xwe[1],Pwe=Awe[1];TR(uwe,[0,Pwe,2]);var Twe=[0,Pwe,[4,[0,Pwe,[2,Awe[2]]]]]}return[0,[0,bwe[1],[0,Ewe,Twe,gwe[4]]]]}var _we=ywe[1],Nwe=[0,VC(swe[20],uwe,_we[2][1])];return[1,[0,_we[1],Nwe]]},fwe),0]];return[0,mwe[1],hwe]}function lwe(uwe,mwe){var fwe=mwe[2][1],hwe=[1,[0,Ow(function(ywe){if(ywe){var bwe=ywe[1];if(0===bwe[0]){var gwe=bwe[1];return[0,[0,VC(swe[20],uwe,[0,gwe[1],gwe[2]])]]}var xwe=bwe[1],Swe=[0,VC(swe[20],uwe,xwe[2][1])];return[0,[1,[0,xwe[1],Swe]]]}return ywe},fwe),0]];return[0,mwe[1],hwe]}function pwe(uwe){return function(mwe){var fwe=TO(0,mwe);$O(mwe,1);for(var hwe=0;;){var ywe=$R(0,mwe);if("number"==typeof ywe){var bwe=2===ywe?1:ZY===ywe?1:0;if(bwe){var gwe=Rw(hwe),xwe=TO(0,mwe);if($O(mwe,2),80===$R(0,mwe))var Swe=MC(iwe[8],mwe),Ewe=[0,Swe[1],[0,Swe]];else var Ewe=[0,xwe,0];var Twe=[0,[0,gwe,Ewe[2]]];return[0,Kj(fwe,Ewe[1]),Twe]}}var Awe=TO(0,mwe);if(SY(mwe,13))var Pwe=cwe(mwe,uwe),_we=[0,[1,[0,Kj(Awe,Pwe[1]),[0,Pwe]]]];else{var Nwe=MC(swe[21],mwe)[2];switch(Nwe[0]){case 0:var kwe=[0,Nwe[1]];break;case 1:var kwe=[1,Nwe[1]];break;default:var kwe=[2,Nwe[1]];}var Cwe=$R(0,mwe);if(!("number"==typeof Cwe))var vwe=0;else if(80===Cwe){$O(mwe,80);var wwe=[0,[0,cwe(mwe,uwe),0]],vwe=1}else var vwe=0;if(!vwe)if(1===kwe[0])var Iwe=kwe[1],wwe=[0,[0,[0,Iwe[1],[3,[0,Iwe,0,0]]],1]];else{VO(mwe);var wwe=0}if(wwe){var jwe=wwe[1],Lwe=jwe[1],Dwe=$R(0,mwe);if("number"!=typeof Dwe)var Ywe=0;else if(78===Dwe){$O(mwe,78);var Rwe=MC(swe[9],mwe),Owe=[0,Kj(Lwe[1],Rwe[1]),[2,[0,Lwe,Rwe]]],Ywe=1}else var Ywe=0;if(!Ywe)var Owe=Lwe;var Mwe=Kj(Awe,Owe[1]),Fwe=[0,[0,[0,Mwe,[0,kwe,Owe,jwe[2]]]]]}else var Fwe=wwe;var _we=Fwe}if(_we){2!==$R(0,mwe)&&$O(mwe,10);var hwe=[0,_we[1],hwe];continue}continue}}}function dwe(uwe){return function(mwe){var fwe=TO(0,mwe);$O(mwe,7);for(var hwe=0;;){var ywe=$R(0,mwe);if("number"==typeof ywe){if(14<=ywe)var bwe=ZY===ywe?1:0;else if(8<=ywe)switch(0|ywe-8){case 2:$O(mwe,10);var hwe=[0,0,hwe];continue;case 5:var gwe=TO(0,mwe);$O(mwe,13);var xwe=cwe(mwe,uwe),hwe=[0,[0,[1,[0,Kj(gwe,xwe[1]),[0,xwe]]]],hwe];continue;case 0:var bwe=1;break;default:var bwe=0;}else var bwe=0;if(bwe){var Swe=Rw(hwe),Ewe=TO(0,mwe);if($O(mwe,8),80===$R(0,mwe))var Twe=MC(iwe[8],mwe),Awe=[0,Twe[1],[0,Twe]];else var Awe=[0,Ewe,0];var Pwe=[1,[0,Swe,Awe[2]]];return[0,Kj(fwe,Awe[1]),Pwe]}}var _we=cwe(mwe,uwe),Nwe=$R(0,mwe);if(!("number"==typeof Nwe))var wwe=0;else if(78===Nwe){$O(mwe,78);var kwe=MC(swe[7],mwe),Cwe=[0,Kj(_we[1],kwe[1]),[2,[0,_we,kwe]]],wwe=1}else var wwe=0;if(!wwe)var Cwe=_we;8!==$R(0,mwe)&&$O(mwe,10);var hwe=[0,[0,[0,Cwe]],hwe];continue}}}function cwe(uwe,mwe){var fwe=$R(0,uwe);if("number"==typeof fwe){if(1===fwe)return MC(pwe(mwe),uwe);if(7===fwe)return MC(dwe(mwe),uwe)}var hwe=UC(swe[15],uwe,0,mwe);return[0,hwe[1],[3,hwe[2]]]}return[0,owe,lwe,function(uwe,mwe){var fwe=mwe[2],hwe=mwe[1];if("number"!=typeof fwe)switch(fwe[0]){case 0:return lwe(uwe,[0,hwe,fwe[1]]);case 1:return owe(uwe,[0,hwe,fwe[1]]);case 7:var ywe=fwe[1];if(0===ywe[1])return[0,hwe,[2,[0,ywe[2],ywe[3]]]];break;case 17:return[0,hwe,[3,[0,fwe[1],0,0]]];}return[0,hwe,[4,[0,hwe,fwe]]]},pwe,dwe,cwe]}}(gCe),xCe),_Ce=[],NCe=[],kCe=[],CCe=[],wCe=[],vCe=[],ICe=[],jCe=[],LCe=[],DCe=[],RCe=[],OCe=[],YCe=[],MCe=[],FCe=function(swe){function iwe(bwe){ZO(bwe,0);var gwe=TO(0,bwe);$O(bwe,1),$O(bwe,13);var xwe=MC(swe[9],bwe),Swe=TO(0,bwe);return $O(bwe,2),KO(bwe),[0,Kj(gwe,Swe),[0,xwe]]}function owe(bwe){ZO(bwe,0);var gwe=TO(0,bwe);if($O(bwe,1),2===$R(0,bwe))var xwe=TO(0,bwe)[2],Swe=[1,[0,gwe[1],gwe[3],xwe]];else var Swe=[0,MC(swe[7],bwe)];var Ewe=TO(0,bwe);return $O(bwe,2),KO(bwe),[0,Kj(gwe,Ewe),[0,Swe]]}function lwe(bwe){var gwe=TO(0,bwe),xwe=SO(0,bwe);return $O(bwe,LU),[0,gwe,[0,xwe]]}function pwe(bwe){var gwe=lwe(bwe),xwe=$R(0,bwe);if("number"==typeof xwe){if(11===xwe){$O(bwe,11);for(var Swe=lwe(bwe),Ewe=[0,Kj(gwe[1],Swe[1]),[0,[0,gwe],Swe]];;){var Twe=$R(0,bwe);if("number"==typeof Twe&&11===Twe){$O(bwe,11);var Awe=lwe(bwe),Ewe=[0,Kj(Ewe[1],Awe[1]),[0,[1,Ewe],Awe]];continue}return[2,Ewe]}}if(80===xwe){$O(bwe,80);var Pwe=lwe(bwe);return[1,[0,Kj(gwe[1],Pwe[1]),[0,gwe,Pwe]]]}}return[0,gwe]}function dwe(bwe){var gwe=TO(0,bwe),xwe=lwe(bwe);if(80===$R(0,bwe)){$O(bwe,80);var Swe=lwe(bwe),Ewe=Kj(xwe[1],Swe[1]),Twe=[0,Ewe,[1,[0,Ewe,[0,xwe,Swe]]]]}else var Twe=[0,xwe[1],[0,xwe]];if(78===$R(0,bwe)){$O(bwe,78);var Awe=$R(0,bwe);if("number"==typeof Awe){if(1===Awe){var Pwe=owe(bwe),_we=Pwe[2],Nwe=Pwe[1];0!==_we[1][0]&&TR(bwe,[0,Nwe,41]);var kwe=[0,Nwe,[0,[1,Nwe,_we]]],Cwe=1}else var Cwe=0;}else if(4===Awe[0]){var wwe=Awe[1],vwe=wwe[1];$O(bwe,Awe);var kwe=[0,vwe,[0,[0,vwe,[0,[0,wwe[2]],wwe[3]]]]],Cwe=1}else var Cwe=0;if(!Cwe){YO(bwe,42);var Iwe=TO(0,bwe),kwe=[0,Iwe,[0,[0,Iwe,[0,yNe,hNe]]]]}var jwe=kwe}else var jwe=[0,Twe[1],0];var Lwe=[0,Twe[2],jwe[2]];return[0,Kj(gwe,jwe[1]),Lwe]}function cwe(bwe,gwe){for(var xwe=0,Swe=pwe(bwe);;){var Ewe=$R(0,bwe);if("number"==typeof Ewe){if(94<=Ewe)var Twe=99===Ewe?1:ZY===Ewe?1:0;else{if(1===Ewe){var xwe=[0,[1,iwe(bwe)],xwe];continue}var Twe=93<=Ewe?1:0}if(Twe){var Awe=Rw(xwe),Pwe=99===$R(0,bwe)?1:0;Pwe&&$O(bwe,99);var _we=TO(0,bwe);return $O(bwe,93),KO(bwe),[0,Kj(gwe,_we),[0,Swe,Pwe,Awe]]}}var xwe=[0,[0,dwe(bwe)],xwe];continue}}function uwe(bwe,gwe){$O(bwe,99);var xwe=pwe(bwe),Swe=TO(0,bwe);$O(bwe,93);var Ewe=bwe[19][1];if(Ewe){var Twe=Ewe[2];if(Twe)var Awe=Twe[2],Pwe=1;else var Pwe=0}else var Pwe=0;if(!Pwe)var Awe=QC(uPe);bwe[19][1]=Awe;var _we=$D(bwe),Nwe=KD(bwe[20][1],_we);return bwe[21][1]=Nwe,[0,Kj(gwe,Swe),[0,xwe]]}function mwe(bwe){switch(bwe[0]){case 0:return bwe[1][2][1];case 1:var gwe=bwe[1][2],xwe=Tw(uNe,gwe[2][2][1]);return Tw(gwe[1][2][1],xwe);default:var Swe=bwe[1][2],Ewe=Swe[1],Twe=0===Ewe[0]?Ewe[1][2][1]:mwe([2,Ewe[1]]);return Tw(Twe,Tw(mNe,Swe[2][2][1]));}}var fwe=[],hwe=[],ywe=[];return _A(fwe,function(bwe){var gwe=$R(0,bwe);if("number"==typeof gwe){if(1===gwe){var xwe=owe(bwe);return[0,xwe[1],[1,xwe[2]]]}}else if(4===gwe[0]){var Swe=gwe[1];return $O(bwe,gwe),[0,Swe[1],[2,[0,Swe[2],Swe[3]]]]}var Ewe=MC(ywe,bwe);return[0,Ewe[1],[0,Ewe[2]]]}),_A(hwe,function(bwe,gwe){var xwe=cwe(bwe,gwe);if(xwe[2][2])var Swe=fNe;else{ZO(bwe,3);for(var Ewe=0;;){var Twe=$R(0,bwe);if("number"==typeof Twe){if(92===Twe){ZO(bwe,2);var Awe=TO(0,bwe);$O(bwe,92);var Pwe=$R(0,bwe);if("number"==typeof Pwe){if(99===Pwe)var _we=1;else if(ZY===Pwe)var _we=1;else var Nwe=0,_we=0;if(_we)var kwe=[0,uwe(bwe,Awe)],Nwe=1}else var Nwe=0;if(!Nwe)var kwe=[1,VC(hwe,bwe,Awe)];if(0!==kwe[0]){var Cwe=kwe[1],Ewe=[0,[0,Cwe[1],[0,Cwe[2]]],Ewe];continue}var wwe=[0,kwe[1]],vwe=[0,Rw(Ewe),wwe],Iwe=1}else if(ZY===Twe){VO(bwe);var vwe=[0,Rw(Ewe),0],Iwe=1}else var jwe=0,Iwe=0;if(Iwe)var Swe=vwe,jwe=1}else var jwe=0;if(!jwe){var Ewe=[0,MC(fwe,bwe),Ewe];continue}break}}var Lwe=Swe[2];if(Lwe){var Dwe=Lwe[1],Rwe=mwe(xwe[2][1]);$k(mwe(Dwe[2][1]),Rwe)&&YO(bwe,[6,Rwe]);var Owe=Dwe[1]}else var Owe=xwe[1];var Ywe=[0,xwe,Lwe,Swe[1]];return[0,Kj(xwe[1],Owe),Ywe]}),_A(ywe,function(bwe){var gwe=TO(0,bwe);return ZO(bwe,2),$O(bwe,92),VC(hwe,bwe,gwe)}),[0,iwe,owe,lwe,pwe,dwe,cwe,uwe,fwe,hwe,ywe]}(gCe),VCe=TCe[3],BCe=ECe[3],UCe=ECe[2],XCe=ECe[6],WCe=TCe[2],qCe=TCe[1],JCe=TCe[4],zCe=ECe[1],HCe=ECe[5],GCe=ECe[4],ZCe=FCe[10],KCe=PCe[6],QCe=PCe[3];_A(_Ce,function(rwe){var swe=VC(CCe,rwe,function(){return 0}),iwe=TO(0,rwe);if($O(rwe,ZY),swe)var owe=Iw(Rw(swe))[1],lwe=Kj(Iw(swe)[1],owe);else var lwe=iwe;return[0,lwe,swe,Rw(rwe[2][1])]}),_A(NCe,function(rwe,swe,iwe){for(var owe=rwe,lwe=_ke;;){var pwe=lwe[2],dwe=lwe[1],cwe=$R(0,owe);if("number"!=typeof cwe)var mwe=0;else if(ZY===cwe)var uwe=[0,owe,dwe,pwe],mwe=1;else var mwe=0;if(!mwe)if(MC(swe,cwe))var uwe=[0,owe,dwe,pwe];else{var fwe=$R(0,owe),hwe=[0,TO(0,owe),fwe],ywe=MC(iwe,owe),bwe=[0,ywe,pwe],gwe=ywe[2];if("number"!=typeof gwe&&1===gwe[0]){var xwe=gwe[1][1],Swe=xwe[2];if("number"==typeof Swe)var Ewe=0;else if(18===Swe[0]){var Twe=Swe[1][1];if("number"!=typeof Twe&&0===Twe[0]){var Awe=xwe[1],Pwe=owe[6],_we=0|Awe[3][2]-Awe[2][2];if(Pwe)var Nwe=Pwe;else var kwe=Zk(Twe[1],Pke),Nwe=kwe?12==_we?1:0:kwe;var owe=NR(Nwe,owe),lwe=[0,[0,hwe,dwe],bwe];continue}var Ewe=1}else var Ewe=0}var uwe=[0,owe,dwe,bwe]}var Cwe=Rw(dwe);return Yw(function(wwe){var vwe=wwe[2];if("number"!=typeof vwe&&1===vwe[0]){var Iwe=vwe[1][4];return Iwe?WO(owe,[0,wwe[1],32]):Iwe}if("number"==typeof vwe){var jwe=vwe;if(59<=jwe)switch(jwe){case 59:var Lwe=$Te;break;case 60:var Lwe=eAe;break;case 61:var Lwe=tAe;break;case 62:var Lwe=aAe;break;case 63:var Lwe=nAe;break;case 64:var Lwe=rAe;break;case 65:var Lwe=sAe;break;case 66:var Lwe=iAe;break;case 67:var Lwe=oAe;break;case 68:var Lwe=lAe;break;case 69:var Lwe=pAe;break;case 70:var Lwe=dAe;break;case 71:var Lwe=cAe;break;case 72:var Lwe=uAe;break;case 73:var Lwe=mAe;break;case 74:var Lwe=fAe;break;case 75:var Lwe=hAe;break;case 76:var Lwe=yAe;break;case 77:var Lwe=bAe;break;case 78:var Lwe=gAe;break;case 79:var Lwe=xAe;break;case 80:var Lwe=SAe;break;case 81:var Lwe=EAe;break;case 82:var Lwe=TAe;break;case 83:var Lwe=AAe;break;case 84:var Lwe=PAe;break;case 85:var Lwe=_Ae;break;case 86:var Lwe=NAe;break;case 87:var Lwe=kAe;break;case 88:var Lwe=CAe;break;case 89:var Lwe=wAe;break;case 90:var Lwe=vAe;break;case 91:var Lwe=IAe;break;case 92:var Lwe=jAe;break;case 93:var Lwe=LAe;break;case 94:var Lwe=DAe;break;case 95:var Lwe=RAe;break;case 96:var Lwe=OAe;break;case 97:var Lwe=YAe;break;case 98:var Lwe=MAe;break;case 99:var Lwe=FAe;break;case 100:var Lwe=VAe;break;case 101:var Lwe=BAe;break;case 102:var Lwe=UAe;break;case 103:var Lwe=XAe;break;case 104:var Lwe=WAe;break;case 105:var Lwe=qAe;break;case 106:var Lwe=JAe;break;case 107:var Lwe=zAe;break;case 108:var Lwe=HAe;break;case 109:var Lwe=GAe;break;case 110:var Lwe=ZAe;break;case 111:var Lwe=KAe;break;case 112:var Lwe=QAe;break;case 113:var Lwe=$Ae;break;case 114:var Lwe=ePe;break;case 115:var Lwe=tPe;break;default:var Lwe=aPe;}else switch(jwe){case 0:var Lwe=HEe;break;case 1:var Lwe=GEe;break;case 2:var Lwe=ZEe;break;case 3:var Lwe=KEe;break;case 4:var Lwe=QEe;break;case 5:var Lwe=$Ee;break;case 6:var Lwe=eTe;break;case 7:var Lwe=tTe;break;case 8:var Lwe=aTe;break;case 9:var Lwe=nTe;break;case 10:var Lwe=rTe;break;case 11:var Lwe=sTe;break;case 12:var Lwe=iTe;break;case 13:var Lwe=oTe;break;case 14:var Lwe=lTe;break;case 15:var Lwe=pTe;break;case 16:var Lwe=dTe;break;case 17:var Lwe=cTe;break;case 18:var Lwe=uTe;break;case 19:var Lwe=mTe;break;case 20:var Lwe=fTe;break;case 21:var Lwe=hTe;break;case 22:var Lwe=yTe;break;case 23:var Lwe=bTe;break;case 24:var Lwe=gTe;break;case 25:var Lwe=xTe;break;case 26:var Lwe=STe;break;case 27:var Lwe=ETe;break;case 28:var Lwe=TTe;break;case 29:var Lwe=ATe;break;case 30:var Lwe=PTe;break;case 31:var Lwe=_Te;break;case 32:var Lwe=NTe;break;case 33:var Lwe=kTe;break;case 34:var Lwe=CTe;break;case 35:var Lwe=wTe;break;case 36:var Lwe=vTe;break;case 37:var Lwe=ITe;break;case 38:var Lwe=jTe;break;case 39:var Lwe=LTe;break;case 40:var Lwe=DTe;break;case 41:var Lwe=RTe;break;case 42:var Lwe=OTe;break;case 43:var Lwe=YTe;break;case 44:var Lwe=MTe;break;case 45:var Lwe=FTe;break;case 46:var Lwe=VTe;break;case 47:var Lwe=BTe;break;case 48:var Lwe=UTe;break;case 49:var Lwe=XTe;break;case 50:var Lwe=WTe;break;case 51:var Lwe=qTe;break;case 52:var Lwe=JTe;break;case 53:var Lwe=zTe;break;case 54:var Lwe=HTe;break;case 55:var Lwe=GTe;break;case 56:var Lwe=ZTe;break;case 57:var Lwe=KTe;break;default:var Lwe=QTe;}}else switch(vwe[0]){case 0:var Lwe=nPe;break;case 1:var Lwe=rPe;break;case 2:var Lwe=sPe;break;case 3:var Lwe=iPe;break;case 4:var Lwe=oPe;break;default:var Lwe=lPe;}return QC(Tw(kke,Tw(Lwe,Nke)))},Cwe),[0,owe,uwe[3]]}}),_A(kCe,function(rwe){var swe=MC(TCe[5],rwe),iwe=$R(0,rwe);if("number"==typeof iwe){var owe=0|iwe-49;if(!(11>>0))switch(owe){case 0:return VC(ACe[15],rwe,swe);case 1:return MC(UO(rwe),swe),MC(ACe[17],rwe);case 11:if(49===$R(Ake,rwe))return MC(UO(rwe),swe),VC(ACe[12],0,rwe);}}return VC(jCe,[0,swe],rwe)}),_A(CCe,function(rwe,swe){var iwe=UC(NCe,rwe,swe,kCe),owe=VC(wCe,swe,iwe[1]),lwe=iwe[2];return Mw(function(pwe,dwe){return[0,dwe,pwe]},owe,lwe)}),_A(wCe,function(rwe,swe){for(var iwe=0;;){var owe=$R(0,swe);if("number"==typeof owe&&ZY===owe)return Rw(iwe);if(MC(rwe,owe))return Rw(iwe);var iwe=[0,MC(kCe,swe),iwe];continue}}),_A(vCe,function(rwe,swe){var iwe=UC(NCe,swe,rwe,function(cwe){return VC(jCe,0,cwe)}),owe=iwe[1],lwe=VC(ICe,rwe,owe),pwe=iwe[2],dwe=Mw(function(cwe,uwe){return[0,uwe,cwe]},lwe,pwe);return[0,dwe,owe[6]]}),_A(ICe,function(rwe,swe){for(var iwe=0;;){var owe=$R(0,swe);if("number"==typeof owe&&ZY===owe)return Rw(iwe);if(MC(rwe,owe))return Rw(iwe);var iwe=[0,VC(jCe,0,swe),iwe];continue}}),_A(jCe,function(rwe,swe){var iwe=rwe?rwe[1]:rwe;1-OO(0,swe)&&MC(UO(swe),iwe);var owe=$R(0,swe);if("number"==typeof owe){if(27===owe)return MC(ACe[24],swe);if(28===owe)return MC(ACe[3],swe)}if(RO(0,swe))return MC(SCe[14],swe);if(OO(0,swe))return VC(VCe,swe,iwe);if("number"==typeof owe){var lwe=0|owe+WF;if(!(8>>0))switch(lwe){case 0:return MC(ACe[18],swe);case 7:return VC(ACe[11],0,swe);case 8:return MC(ACe[23],swe);}}return MC(LCe,swe)}),_A(LCe,function(rwe){var swe=$R(0,rwe);if("number"==typeof swe){if(ZY===swe)return VO(rwe),[0,TO(0,rwe),0];if(!(60<=swe))switch(swe){case 1:return MC(ACe[7],rwe);case 9:return MC(ACe[14],rwe);case 16:return MC(ACe[2],rwe);case 19:return MC(ACe[20],rwe);case 20:return MC(ACe[21],rwe);case 22:return MC(ACe[22],rwe);case 23:return MC(ACe[4],rwe);case 24:return MC(ACe[24],rwe);case 25:return MC(ACe[5],rwe);case 26:return MC(ACe[6],rwe);case 32:return MC(ACe[8],rwe);case 35:return MC(ACe[9],rwe);case 37:return MC(ACe[13],rwe);case 39:return MC(ACe[1],rwe);case 59:return MC(ACe[10],rwe);}}if(LO(0,rwe))return MC(ACe[19],rwe);if("number"==typeof swe){if(33<=swe){if(51<=swe)var iwe=80===swe?1:0;else if(40<=swe)switch(0|swe+Oq){case 3:return MC(ACe[2],rwe);case 1:case 2:case 9:case 10:var iwe=1;break;default:var iwe=0;}else var iwe=1;}else if(21<=swe)var iwe=0;else switch(swe){case 0:case 1:case 3:case 4:case 5:case 7:case 14:case 15:case 16:var iwe=0;break;default:var iwe=1;}if(iwe)return VO(rwe),JO(rwe),MC(LCe,rwe)}return MC(ACe[16],rwe)}),_A(DCe,function(rwe){var swe=MC(ECe[2],rwe),iwe=$R(0,rwe);return"number"==typeof iwe&&10===iwe?VC(ECe[8],rwe,[0,swe,0]):swe}),_A(RCe,function(rwe,swe){var iwe=TO(0,swe),owe=SO(0,swe),lwe=$R(0,swe);if("number"!=typeof lwe)var pwe=0;else if(28===lwe){swe[6]?XO(swe,40):swe[13]&&YO(swe,[1,owe]),JO(swe);var pwe=1}else var pwe=0;if(!pwe)if(KR(owe))XO(swe,40),JO(swe);else{var dwe="number"==typeof lwe?4<(0|lwe-60)>>>0?0:($O(swe,lwe),1):0;dwe||$O(swe,0)}return rwe?QR(owe)?(WO(swe,[0,iwe,rwe[1]]),1):0:0,[0,iwe,owe]}),_A(OCe,function(rwe,swe,iwe){var owe=swe?swe[1]:swe;return RY(function(lwe){var pwe=1-owe,dwe=VC(RCe,[0,iwe],lwe),cwe=pwe?79===$R(0,lwe)?1:0:pwe;cwe&&(1-SR(lwe)&&YO(lwe,7),$O(lwe,79));var uwe=80===$R(0,lwe)?1:0,mwe=uwe?[0,MC(xCe[8],lwe)]:uwe;return[0,dwe,mwe,cwe]},rwe)}),_A(YCe,function(rwe){var swe=TO(0,rwe);$O(rwe,1);var iwe=VC(ICe,function(lwe){return 2===lwe?1:0},rwe),owe=TO(0,rwe);return $O(rwe,2),[0,Kj(swe,owe),[0,iwe]]}),_A(MCe,function(rwe){var swe=TO(0,rwe);$O(rwe,1);var iwe=VC(vCe,function(dwe){return 2===dwe?1:0},rwe),owe=TO(0,rwe);$O(rwe,2);var lwe=iwe[2],pwe=[0,iwe[1]];return[0,Kj(swe,owe),pwe,lwe]}),UC(zke,[0,[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]],gCe,[0,_Ce,LCe,jCe,ICe,vCe,wCe,DCe,BCe,UCe,XCe,WCe,zCe,RCe,GCe,OCe,YCe,MCe,ZCe,KCe,QCe,qCe,VCe,JCe,HCe]);var $Ce=[0,0],ewe=function(swe){return swe.toString()},twe=function(swe){var iwe={};for(var owe=1;oweRN)return!1;if(YN+=ON[MN+1],YN>=RN)return!0}}function _A(RN){return 65>RN?36==RN:!!(91>RN)||(97>RN?95==RN:!!(123>RN)||(65535>=RN?170<=RN&&ZA.test(String.fromCharCode(RN)):PA(RN,QA)))}function NA(RN){return 48>RN?36==RN:!!(58>RN)||!(65>RN)&&(!!(91>RN)||(97>RN?95==RN:!!(123>RN)||(65535>=RN?170<=RN&&KA.test(String.fromCharCode(RN)):PA(RN,QA)||PA(RN,$A))))}function IA(RN){var ON={};for(var YN in SP)ON[YN]=RN&&YN in RN?RN[YN]:SP[YN];return ON}function LA(RN){return 10===RN||13===RN||8232===RN||8233===RN}function RA(RN,ON){for(var YN=1,MN=0;;){ZP.lastIndex=MN;var VN=ZP.exec(RN);if(VN&&VN.index=RN?String.fromCharCode(RN):String.fromCharCode((RN-65536>>10)+55296,(1023&RN-65536)+56320)}function YA(RN,ON,YN,MN){return RN.type=ON,RN.end=YN,RN.loc.end=MN,this.processComment(RN),RN}function MA(RN){return RN[RN.length-1]}function VA(RN){return"JSXIdentifier"===RN.type?RN.name:"JSXNamespacedName"===RN.type?RN.namespace.name+":"+RN.name.name:"JSXMemberExpression"===RN.type?VA(RN.object)+"."+VA(RN.property):void 0}Object.defineProperty(SA,"__esModule",{value:!0});var UA={6:TA("enum await"),strict:TA("implements interface let package private protected public static yield"),strictBind:TA("eval arguments")},XA=TA("break case catch continue debugger default do else finally for function if return switch throw try var while with null true false instanceof typeof void delete new in this let const class extends export import yield super"),WA="\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC",JA="\u200C\u200D\xB7\u0300-\u036F\u0387\u0483-\u0487\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u0669\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u06F0-\u06F9\u0711\u0730-\u074A\u07A6-\u07B0\u07C0-\u07C9\u07EB-\u07F3\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u08D4-\u08E1\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0966-\u096F\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u09E6-\u09EF\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A66-\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0AE6-\u0AEF\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B62\u0B63\u0B66-\u0B6F\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C66-\u0C6F\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0CE6-\u0CEF\u0D01-\u0D03\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D66-\u0D6F\u0D82\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0E50-\u0E59\u0EB1\u0EB4-\u0EB9\u0EBB\u0EBC\u0EC8-\u0ECD\u0ED0-\u0ED9\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1040-\u1049\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F-\u109D\u135D-\u135F\u1369-\u1371\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u18A9\u1920-\u192B\u1930-\u193B\u1946-\u194F\u19D0-\u19DA\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AB0-\u1ABD\u1B00-\u1B04\u1B34-\u1B44\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BB0-\u1BB9\u1BE6-\u1BF3\u1C24-\u1C37\u1C40-\u1C49\u1C50-\u1C59\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF2-\u1CF4\u1CF8\u1CF9\u1DC0-\u1DF5\u1DFB-\u1DFF\u203F\u2040\u2054\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\uA620-\uA629\uA66F\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA880\uA881\uA8B4-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F1\uA900-\uA909\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9D0-\uA9D9\uA9E5\uA9F0-\uA9F9\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA50-\uAA59\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uABF0-\uABF9\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFF10-\uFF19\uFF3F",ZA=new RegExp("["+WA+"]"),KA=new RegExp("["+WA+JA+"]");WA=JA=null;var QA=[0,11,2,25,2,18,2,1,2,14,3,13,35,122,70,52,268,28,4,48,48,31,17,26,6,37,11,29,3,35,5,7,2,4,43,157,19,35,5,35,5,39,9,51,157,310,10,21,11,7,153,5,3,0,2,43,2,1,4,0,3,22,11,22,10,30,66,18,2,1,11,21,11,25,71,55,7,1,65,0,16,3,2,2,2,26,45,28,4,28,36,7,2,27,28,53,11,21,11,18,14,17,111,72,56,50,14,50,785,52,76,44,33,24,27,35,42,34,4,0,13,47,15,3,22,0,2,0,36,17,2,24,85,6,2,0,2,3,2,14,2,9,8,46,39,7,3,1,3,21,2,6,2,1,2,4,4,0,19,0,13,4,159,52,19,3,54,47,21,1,2,0,185,46,42,3,37,47,21,0,60,42,86,25,391,63,32,0,449,56,264,8,2,36,18,0,50,29,881,921,103,110,18,195,2749,1070,4050,582,8634,568,8,30,114,29,19,47,17,3,32,20,6,18,881,68,12,0,67,12,65,0,32,6124,20,754,9486,1,3071,106,6,12,4,8,8,9,5991,84,2,70,2,1,3,0,3,1,3,3,2,11,2,0,2,6,2,64,2,3,3,7,2,6,2,27,2,3,2,4,2,0,4,6,2,339,3,24,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,7,4149,196,60,67,1213,3,2,26,2,1,2,0,3,0,2,9,2,3,2,0,2,0,7,0,5,0,2,0,2,0,2,2,2,1,2,0,3,0,2,0,2,0,2,0,2,0,2,1,2,0,3,3,2,6,2,3,2,3,2,0,2,9,2,16,6,2,2,4,2,16,4421,42710,42,4148,12,221,3,5761,10591,541],$A=[509,0,227,0,150,4,294,9,1368,2,2,1,6,3,41,2,5,0,166,1,1306,2,54,14,32,9,16,3,46,10,54,9,7,2,37,13,2,9,52,0,13,2,49,13,10,2,4,9,83,11,7,0,161,11,6,9,7,3,57,0,2,6,3,1,3,2,10,0,11,1,3,6,4,4,193,17,10,9,87,19,13,9,214,6,3,8,28,1,83,16,16,9,82,12,9,9,84,14,5,9,423,9,838,7,2,7,17,9,57,21,2,13,19882,9,135,4,60,6,26,9,1016,45,17,3,19723,1,5319,4,4,5,9,7,3,6,31,3,149,2,1418,49,513,54,5,49,9,0,15,0,23,4,2,14,1361,6,2,16,3,6,2,1,2,4,2214,6,110,6,6,9,792487,239],SP={sourceType:"script",sourceFilename:void 0,allowReturnOutsideFunction:!1,allowImportExportEverywhere:!1,allowSuperOutsideMethod:!1,plugins:[],strictMode:null},TP="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(RN){return typeof RN}:function(RN){return RN&&"function"==typeof Symbol&&RN.constructor===Symbol&&RN!==Symbol.prototype?"symbol":typeof RN},PP=function(RN,ON){if(!(RN instanceof ON))throw new TypeError("Cannot call a class as a function")},_P=function(RN,ON){if("function"!=typeof ON&&null!==ON)throw new TypeError("Super expression must either be null or a function, not "+typeof ON);RN.prototype=Object.create(ON&&ON.prototype,{constructor:{value:RN,enumerable:!1,writable:!0,configurable:!0}}),ON&&(Object.setPrototypeOf?Object.setPrototypeOf(RN,ON):RN.__proto__=ON)},NP=function(RN,ON){if(!RN)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return ON&&("object"==typeof ON||"function"==typeof ON)?ON:RN},IP=!0,LP=!0,RP=!0,OP=!0,YP=!0,MP=function RN(ON){var YN=1",{beforeExpr:IP}),template:new MP("template"),ellipsis:new MP("...",{beforeExpr:IP}),backQuote:new MP("`",{startsExpr:LP}),dollarBraceL:new MP("${",{beforeExpr:IP,startsExpr:LP}),at:new MP("@"),eq:new MP("=",{beforeExpr:IP,isAssign:OP}),assign:new MP("_=",{beforeExpr:IP,isAssign:OP}),incDec:new MP("++/--",{prefix:YP,postfix:!0,startsExpr:LP}),prefix:new MP("prefix",{beforeExpr:IP,prefix:YP,startsExpr:LP}),logicalOR:new UP("||",1),logicalAND:new UP("&&",2),bitwiseOR:new UP("|",3),bitwiseXOR:new UP("^",4),bitwiseAND:new UP("&",5),equality:new UP("==/!=",6),relational:new UP("",7),bitShift:new UP("<>",8),plusMin:new MP("+/-",{beforeExpr:IP,binop:9,prefix:YP,startsExpr:LP}),modulo:new UP("%",10),star:new UP("*",10),slash:new UP("/",10),exponent:new MP("**",{beforeExpr:IP,binop:11,rightAssociative:!0})},WP={"break":new VP("break"),"case":new VP("case",{beforeExpr:IP}),"catch":new VP("catch"),"continue":new VP("continue"),"debugger":new VP("debugger"),"default":new VP("default",{beforeExpr:IP}),"do":new VP("do",{isLoop:RP,beforeExpr:IP}),"else":new VP("else",{beforeExpr:IP}),"finally":new VP("finally"),"for":new VP("for",{isLoop:RP}),"function":new VP("function",{startsExpr:LP}),"if":new VP("if"),"return":new VP("return",{beforeExpr:IP}),"switch":new VP("switch"),"throw":new VP("throw",{beforeExpr:IP}),"try":new VP("try"),"var":new VP("var"),"let":new VP("let"),"const":new VP("const"),"while":new VP("while",{isLoop:RP}),"with":new VP("with"),"new":new VP("new",{beforeExpr:IP,startsExpr:LP}),"this":new VP("this",{startsExpr:LP}),"super":new VP("super",{startsExpr:LP}),"class":new VP("class"),"extends":new VP("extends",{beforeExpr:IP}),"export":new VP("export"),"import":new VP("import"),"yield":new VP("yield",{beforeExpr:IP,startsExpr:LP}),"null":new VP("null",{startsExpr:LP}),"true":new VP("true",{startsExpr:LP}),"false":new VP("false",{startsExpr:LP}),"in":new VP("in",{beforeExpr:IP,binop:7}),"instanceof":new VP("instanceof",{beforeExpr:IP,binop:7}),"typeof":new VP("typeof",{beforeExpr:IP,prefix:YP,startsExpr:LP}),"void":new VP("void",{beforeExpr:IP,prefix:YP,startsExpr:LP}),"delete":new VP("delete",{beforeExpr:IP,prefix:YP,startsExpr:LP})};Object.keys(WP).forEach(function(RN){XP["_"+RN]=WP[RN]});var JP=/\r\n?|\n|\u2028|\u2029/,ZP=new RegExp(JP.source,"g"),KP=/[\u1680\u180e\u2000-\u200a\u202f\u205f\u3000\ufeff]/,QP=function RN(ON,YN,MN,VN){PP(this,RN),this.token=ON,this.isExpr=!!YN,this.preserveSpace=!!MN,this.override=VN},$P={braceStatement:new QP("{",!1),braceExpression:new QP("{",!0),templateQuasi:new QP("${",!0),parenStatement:new QP("(",!1),parenExpression:new QP("(",!0),template:new QP("`",!0,!0,function(RN){return RN.readTmplToken()}),functionExpression:new QP("function",!0)};XP.parenR.updateContext=XP.braceR.updateContext=function(){if(1===this.state.context.length)return void(this.state.exprAllowed=!0);var RN=this.state.context.pop();RN===$P.braceStatement&&this.curContext()===$P.functionExpression?(this.state.context.pop(),this.state.exprAllowed=!1):RN===$P.templateQuasi?this.state.exprAllowed=!0:this.state.exprAllowed=!RN.isExpr},XP.name.updateContext=function(RN){this.state.exprAllowed=!1,(RN===XP._let||RN===XP._const||RN===XP._var)&&JP.test(this.input.slice(this.state.end))&&(this.state.exprAllowed=!0)},XP.braceL.updateContext=function(RN){this.state.context.push(this.braceIsBlock(RN)?$P.braceStatement:$P.braceExpression),this.state.exprAllowed=!0},XP.dollarBraceL.updateContext=function(){this.state.context.push($P.templateQuasi),this.state.exprAllowed=!0},XP.parenL.updateContext=function(RN){var ON=RN===XP._if||RN===XP._for||RN===XP._with||RN===XP._while;this.state.context.push(ON?$P.parenStatement:$P.parenExpression),this.state.exprAllowed=!0},XP.incDec.updateContext=function(){},XP._function.updateContext=function(){this.curContext()!==$P.braceStatement&&this.state.context.push($P.functionExpression),this.state.exprAllowed=!1},XP.backQuote.updateContext=function(){this.curContext()===$P.template?this.state.context.pop():this.state.context.push($P.template),this.state.exprAllowed=!1};var S_=function RN(ON,YN){PP(this,RN),this.line=ON,this.column=YN},T_=function RN(ON,YN){PP(this,RN),this.start=ON,this.end=YN},P_=function(){function RN(){PP(this,RN)}return RN.prototype.init=function(YN,MN){return this.strict=!1!==YN.strictMode&&"module"===YN.sourceType,this.input=MN,this.potentialArrowAt=-1,this.inMethod=this.inFunction=this.inGenerator=this.inAsync=this.inPropertyName=this.inType=this.noAnonFunctionType=!1,this.labels=[],this.decorators=[],this.tokens=[],this.comments=[],this.trailingComments=[],this.leadingComments=[],this.commentStack=[],this.pos=this.lineStart=0,this.curLine=1,this.type=XP.eof,this.value=null,this.start=this.end=this.pos,this.startLoc=this.endLoc=this.curPosition(),this.lastTokEndLoc=this.lastTokStartLoc=null,this.lastTokStart=this.lastTokEnd=this.pos,this.context=[$P.braceStatement],this.exprAllowed=!0,this.containsEsc=this.containsOctal=!1,this.octalPosition=null,this.exportedIdentifiers=[],this},RN.prototype.curPosition=function(){return new S_(this.curLine,this.pos-this.lineStart)},RN.prototype.clone=function(YN){var MN=new RN;for(var VN in this){var UN=this[VN];(!YN||"context"==VN)&&Array.isArray(UN)&&(UN=UN.slice()),MN[VN]=UN}return MN},RN}(),__=function RN(ON){PP(this,RN),this.type=ON.type,this.value=ON.value,this.start=ON.start,this.end=ON.end,this.loc=new T_(ON.startLoc,ON.endLoc)},N_=function(){function RN(ON,YN){PP(this,RN),this.state=new P_,this.state.init(ON,YN)}return RN.prototype.next=function(){this.isLookahead||this.state.tokens.push(new __(this.state)),this.state.lastTokEnd=this.state.end,this.state.lastTokStart=this.state.start,this.state.lastTokEndLoc=this.state.endLoc,this.state.lastTokStartLoc=this.state.startLoc,this.nextToken()},RN.prototype.eat=function(YN){return!!this.match(YN)&&(this.next(),!0)},RN.prototype.match=function(YN){return this.state.type===YN},RN.prototype.isKeyword=function(YN){return XA(YN)},RN.prototype.lookahead=function(){var YN=this.state;this.state=YN.clone(!0),this.isLookahead=!0,this.next(),this.isLookahead=!1;var MN=this.state.clone(!0);return this.state=YN,MN},RN.prototype.setStrict=function(YN){if(this.state.strict=YN,this.match(XP.num)||this.match(XP.string)){for(this.state.pos=this.state.start;this.state.pos=this.input.length?this.finishToken(XP.eof):YN.override?YN.override(this):this.readToken(this.fullCharCodeAtPos())},RN.prototype.readToken=function(YN){return _A(YN)||92===YN?this.readWord():this.getTokenFromCode(YN)},RN.prototype.fullCharCodeAtPos=function(){var YN=this.input.charCodeAt(this.state.pos);if(55295>=YN||57344<=YN)return YN;var MN=this.input.charCodeAt(this.state.pos+1);return(YN<<10)+MN-56613888},RN.prototype.pushComment=function(YN,MN,VN,UN,XN,WN){var JN={type:YN?"CommentBlock":"CommentLine",value:MN,start:VN,end:UN,loc:new T_(XN,WN)};this.isLookahead||(this.state.tokens.push(JN),this.state.comments.push(JN),this.addComment(JN))},RN.prototype.skipBlockComment=function(){var YN=this.state.curPosition(),MN=this.state.pos,VN=this.input.indexOf("*/",this.state.pos+=2);-1===VN&&this.raise(this.state.pos-2,"Unterminated comment"),this.state.pos=VN+2,ZP.lastIndex=MN;for(var UN;(UN=ZP.exec(this.input))&&UN.indexYN||5760<=YN&&KP.test(String.fromCharCode(YN)))++this.state.pos;else break loop;}}},RN.prototype.finishToken=function(YN,MN){this.state.end=this.state.pos,this.state.endLoc=this.state.curPosition();var VN=this.state.type;this.state.type=YN,this.state.value=MN,this.updateContext(VN)},RN.prototype.readToken_dot=function(){var YN=this.input.charCodeAt(this.state.pos+1);if(48<=YN&&57>=YN)return this.readNumber(!0);var MN=this.input.charCodeAt(this.state.pos+2);return 46===YN&&46===MN?(this.state.pos+=3,this.finishToken(XP.ellipsis)):(++this.state.pos,this.finishToken(XP.dot))},RN.prototype.readToken_slash=function(){if(this.state.exprAllowed)return++this.state.pos,this.readRegexp();var YN=this.input.charCodeAt(this.state.pos+1);return 61===YN?this.finishOp(XP.assign,2):this.finishOp(XP.slash,1)},RN.prototype.readToken_mult_modulo=function(YN){var MN=42===YN?XP.star:XP.modulo,VN=1,UN=this.input.charCodeAt(this.state.pos+1);return 42===UN&&(VN++,UN=this.input.charCodeAt(this.state.pos+2),MN=XP.exponent),61===UN&&(VN++,MN=XP.assign),this.finishOp(MN,VN)},RN.prototype.readToken_pipe_amp=function(YN){var MN=this.input.charCodeAt(this.state.pos+1);return MN===YN?this.finishOp(124===YN?XP.logicalOR:XP.logicalAND,2):61===MN?this.finishOp(XP.assign,2):124===YN&&125===MN&&this.hasPlugin("flow")?this.finishOp(XP.braceBarR,2):this.finishOp(124===YN?XP.bitwiseOR:XP.bitwiseAND,1)},RN.prototype.readToken_caret=function(){var YN=this.input.charCodeAt(this.state.pos+1);return 61===YN?this.finishOp(XP.assign,2):this.finishOp(XP.bitwiseXOR,1)},RN.prototype.readToken_plus_min=function(YN){var MN=this.input.charCodeAt(this.state.pos+1);return MN===YN?45===MN&&62===this.input.charCodeAt(this.state.pos+2)&&JP.test(this.input.slice(this.state.lastTokEnd,this.state.pos))?(this.skipLineComment(3),this.skipSpace(),this.nextToken()):this.finishOp(XP.incDec,2):61===MN?this.finishOp(XP.assign,2):this.finishOp(XP.plusMin,1)},RN.prototype.readToken_lt_gt=function(YN){var MN=this.input.charCodeAt(this.state.pos+1),VN=1;return MN===YN?(VN=62===YN&&62===this.input.charCodeAt(this.state.pos+2)?3:2,61===this.input.charCodeAt(this.state.pos+VN)?this.finishOp(XP.assign,VN+1):this.finishOp(XP.bitShift,VN)):33===MN&&60===YN&&45===this.input.charCodeAt(this.state.pos+2)&&45===this.input.charCodeAt(this.state.pos+3)?(this.inModule&&this.unexpected(),this.skipLineComment(4),this.skipSpace(),this.nextToken()):(61===MN&&(VN=2),this.finishOp(XP.relational,VN))},RN.prototype.readToken_eq_excl=function(YN){var MN=this.input.charCodeAt(this.state.pos+1);return 61===MN?this.finishOp(XP.equality,61===this.input.charCodeAt(this.state.pos+2)?3:2):61===YN&&62===MN?(this.state.pos+=2,this.finishToken(XP.arrow)):this.finishOp(61===YN?XP.eq:XP.prefix,1)},RN.prototype.getTokenFromCode=function(YN){switch(YN){case 46:return this.readToken_dot();case 40:return++this.state.pos,this.finishToken(XP.parenL);case 41:return++this.state.pos,this.finishToken(XP.parenR);case 59:return++this.state.pos,this.finishToken(XP.semi);case 44:return++this.state.pos,this.finishToken(XP.comma);case 91:return++this.state.pos,this.finishToken(XP.bracketL);case 93:return++this.state.pos,this.finishToken(XP.bracketR);case 123:return this.hasPlugin("flow")&&124===this.input.charCodeAt(this.state.pos+1)?this.finishOp(XP.braceBarL,2):(++this.state.pos,this.finishToken(XP.braceL));case 125:return++this.state.pos,this.finishToken(XP.braceR);case 58:return this.hasPlugin("functionBind")&&58===this.input.charCodeAt(this.state.pos+1)?this.finishOp(XP.doubleColon,2):(++this.state.pos,this.finishToken(XP.colon));case 63:return++this.state.pos,this.finishToken(XP.question);case 64:return++this.state.pos,this.finishToken(XP.at);case 96:return++this.state.pos,this.finishToken(XP.backQuote);case 48:var MN=this.input.charCodeAt(this.state.pos+1);if(120===MN||88===MN)return this.readRadixNumber(16);if(111===MN||79===MN)return this.readRadixNumber(8);if(98===MN||66===MN)return this.readRadixNumber(2);case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return this.readNumber(!1);case 34:case 39:return this.readString(YN);case 47:return this.readToken_slash();case 37:case 42:return this.readToken_mult_modulo(YN);case 124:case 38:return this.readToken_pipe_amp(YN);case 94:return this.readToken_caret();case 43:case 45:return this.readToken_plus_min(YN);case 60:case 62:return this.readToken_lt_gt(YN);case 61:case 33:return this.readToken_eq_excl(YN);case 126:return this.finishOp(XP.prefix,1);}this.raise(this.state.pos,"Unexpected character '"+OA(YN)+"'")},RN.prototype.finishOp=function(YN,MN){var VN=this.input.slice(this.state.pos,this.state.pos+MN);return this.state.pos+=MN,this.finishToken(YN,VN)},RN.prototype.readRegexp=function(){for(var YN=this.state.pos,MN,VN;;){this.state.pos>=this.input.length&&this.raise(YN,"Unterminated regular expression");var UN=this.input.charAt(this.state.pos);if(JP.test(UN)&&this.raise(YN,"Unterminated regular expression"),MN)MN=!1;else{if("["===UN)VN=!0;else if("]"===UN&&VN)VN=!1;else if("/"===UN&&!VN)break;MN="\\"===UN}++this.state.pos}var XN=this.input.slice(YN,this.state.pos);++this.state.pos;var WN=this.readWord1();if(WN){var JN=/^[gmsiyu]*$/;JN.test(WN)||this.raise(YN,"Invalid regular expression flag")}return this.finishToken(XP.regexp,{pattern:XN,flags:WN})},RN.prototype.readInt=function(YN,MN){var VN=this.state.pos,UN=0;for(var XN=0,WN=null==MN?Infinity:MN;XN=JN?JN-48:Infinity,ZN>=YN)break;++this.state.pos,UN=UN*YN+ZN}return this.state.pos===VN||null!=MN&&this.state.pos-VN!==MN?null:UN},RN.prototype.readRadixNumber=function(YN){this.state.pos+=2;var MN=this.readInt(YN);return null==MN&&this.raise(this.state.start+2,"Expected number in radix "+YN),_A(this.fullCharCodeAtPos())&&this.raise(this.state.pos,"Identifier directly after number"),this.finishToken(XP.num,MN)},RN.prototype.readNumber=function(YN){var MN=this.state.pos,VN=48===this.input.charCodeAt(this.state.pos),UN=!1;YN||null!==this.readInt(10)||this.raise(MN,"Invalid number");var XN=this.input.charCodeAt(this.state.pos);46===XN&&(++this.state.pos,this.readInt(10),UN=!0,XN=this.input.charCodeAt(this.state.pos)),(69===XN||101===XN)&&(XN=this.input.charCodeAt(++this.state.pos),(43===XN||45===XN)&&++this.state.pos,null===this.readInt(10)&&this.raise(MN,"Invalid number"),UN=!0),_A(this.fullCharCodeAtPos())&&this.raise(this.state.pos,"Identifier directly after number");var WN=this.input.slice(MN,this.state.pos),JN;return UN?JN=parseFloat(WN):VN&&1!==WN.length?/[89]/.test(WN)||this.state.strict?this.raise(MN,"Invalid number"):JN=parseInt(WN,8):JN=parseInt(WN,10),this.finishToken(XP.num,JN)},RN.prototype.readCodePoint=function(){var YN=this.input.charCodeAt(this.state.pos),MN;if(123===YN){var VN=++this.state.pos;MN=this.readHexChar(this.input.indexOf("}",this.state.pos)-this.state.pos),++this.state.pos,1114111=this.input.length&&this.raise(this.state.start,"Unterminated string constant");var UN=this.input.charCodeAt(this.state.pos);if(UN===YN)break;92===UN?(MN+=this.input.slice(VN,this.state.pos),MN+=this.readEscapedChar(!1),VN=this.state.pos):(LA(UN)&&this.raise(this.state.start,"Unterminated string constant"),++this.state.pos)}return MN+=this.input.slice(VN,this.state.pos++),this.finishToken(XP.string,MN)},RN.prototype.readTmplToken=function(){for(var YN="",MN=this.state.pos;;){this.state.pos>=this.input.length&&this.raise(this.state.start,"Unterminated template");var VN=this.input.charCodeAt(this.state.pos);if(96===VN||36===VN&&123===this.input.charCodeAt(this.state.pos+1))return this.state.pos===this.state.start&&this.match(XP.template)?36===VN?(this.state.pos+=2,this.finishToken(XP.dollarBraceL)):(++this.state.pos,this.finishToken(XP.backQuote)):(YN+=this.input.slice(MN,this.state.pos),this.finishToken(XP.template,YN));if(92===VN)YN+=this.input.slice(MN,this.state.pos),YN+=this.readEscapedChar(!0),MN=this.state.pos;else if(LA(VN)){switch(YN+=this.input.slice(MN,this.state.pos),++this.state.pos,VN){case 13:10===this.input.charCodeAt(this.state.pos)&&++this.state.pos;case 10:YN+="\n";break;default:YN+=String.fromCharCode(VN);}++this.state.curLine,this.state.lineStart=this.state.pos,MN=this.state.pos}else++this.state.pos}},RN.prototype.readEscapedChar=function(YN){var MN=this.input.charCodeAt(++this.state.pos);switch(++this.state.pos,MN){case 110:return"\n";case 114:return"\r";case 120:return String.fromCharCode(this.readHexChar(2));case 117:return OA(this.readCodePoint());case 116:return"\t";case 98:return"\b";case 118:return"\x0B";case 102:return"\f";case 13:10===this.input.charCodeAt(this.state.pos)&&++this.state.pos;case 10:return this.state.lineStart=this.state.pos,++this.state.curLine,"";default:if(48<=MN&&55>=MN){var VN=this.input.substr(this.state.pos-1,3).match(/^[0-7]+/)[0],UN=parseInt(VN,8);return 255=UN?1:2;else if(92===UN){this.state.containsEsc=!0,YN+=this.input.slice(VN,this.state.pos);var XN=this.state.pos;117!==this.input.charCodeAt(++this.state.pos)&&this.raise(this.state.pos,"Expecting Unicode escape sequence \\uXXXX"),++this.state.pos;var WN=this.readCodePoint();(MN?_A:NA)(WN,!0)||this.raise(XN,"Invalid Unicode escape"),YN+=OA(WN),VN=this.state.pos}else break;MN=!1}return YN+this.input.slice(VN,this.state.pos)},RN.prototype.readWord=function(){var YN=this.readWord1(),MN=XP.name;return!this.state.containsEsc&&this.isKeyword(YN)&&(MN=WP[YN]),this.finishToken(MN,YN)},RN.prototype.braceIsBlock=function(YN){if(YN===XP.colon){var MN=this.curContext();if(MN===$P.braceStatement||MN===$P.braceExpression)return!MN.isExpr}return YN===XP._return?JP.test(this.input.slice(this.state.lastTokEnd,this.state.start)):YN===XP._else||YN===XP.semi||YN===XP.eof||YN===XP.parenR||(YN===XP.braceL?this.curContext()===$P.braceStatement:!this.state.exprAllowed)},RN.prototype.updateContext=function(YN){var MN=this.state.type,VN;MN.keyword&&YN===XP.dot?this.state.exprAllowed=!1:(VN=MN.updateContext)?VN.call(this,YN):this.state.exprAllowed=MN.beforeExpr},RN}(),I_={},L_=["jsx","doExpressions","objectRestSpread","decorators","classProperties","exportExtensions","asyncGenerators","functionBind","functionSent","dynamicImport","flow"],R_=function(RN){function ON(YN,MN){PP(this,ON),YN=IA(YN);var VN=NP(this,RN.call(this,YN,MN));return VN.options=YN,VN.inModule="module"===VN.options.sourceType,VN.input=MN,VN.plugins=VN.loadPlugins(VN.options.plugins),VN.filename=YN.sourceFilename,0===VN.state.pos&&"#"===VN.input[0]&&"!"===VN.input[1]&&VN.skipLineComment(2),VN}return _P(ON,RN),ON.prototype.isReservedWord=function(MN){return"await"===MN?this.inModule:UA[6](MN)},ON.prototype.hasPlugin=function(MN){return this.plugins["*"]&&-1=UN.length)break;JN=UN[WN++]}else{if(WN=UN.next(),WN.done)break;JN=WN.value}var ZN=JN;if(!VN[ZN]){VN[ZN]=!0;var KN=I_[ZN];KN&&KN(this)}}return VN},ON.prototype.parse=function(){var MN=this.startNode(),VN=this.startNode();return this.nextToken(),this.parseTopLevel(MN,VN)},ON}(N_),O_=R_.prototype;O_.addExtra=function(RN,ON,YN){if(RN){var MN=RN.extra=RN.extra||{};MN[ON]=YN}},O_.isRelational=function(RN){return this.match(XP.relational)&&this.state.value===RN},O_.expectRelational=function(RN){this.isRelational(RN)?this.next():this.unexpected(null,XP.relational)},O_.isContextual=function(RN){return this.match(XP.name)&&this.state.value===RN},O_.eatContextual=function(RN){return this.state.value===RN&&this.eat(XP.name)},O_.expectContextual=function(RN,ON){this.eatContextual(RN)||this.unexpected(null,ON)},O_.canInsertSemicolon=function(){return this.match(XP.eof)||this.match(XP.braceR)||JP.test(this.input.slice(this.state.lastTokEnd,this.state.start))},O_.isLineTerminator=function(){return this.eat(XP.semi)||this.canInsertSemicolon()},O_.semicolon=function(){this.isLineTerminator()||this.unexpected(null,XP.semi)},O_.expect=function(RN,ON){return this.eat(RN)||this.unexpected(ON,RN)},O_.unexpected=function(RN){var ON=1=MN.length)break;XN=MN[UN++]}else{if(UN=MN.next(),UN.done)break;XN=UN.value}var WN=XN;WN.name===ON&&this.raise(YN.start,"Label '"+ON+"' is already declared")}var JN=this.state.type.isLoop?"loop":this.match(XP._switch)?"switch":null;for(var ZN=this.state.labels.length-1;0<=ZN;ZN--){var KN=this.state.labels[ZN];if(KN.statementStart===RN.start)KN.statementStart=this.state.start,KN.kind=JN;else break}return this.state.labels.push({name:ON,kind:JN,statementStart:this.state.start}),RN.body=this.parseStatement(!0),this.state.labels.pop(),RN.label=YN,this.finishNode(RN,"LabeledStatement")},Y_.parseExpressionStatement=function(RN,ON){return RN.expression=ON,this.semicolon(),this.finishNode(RN,"ExpressionStatement")},Y_.parseBlock=function(RN){var ON=this.startNode();return this.expect(XP.braceL),this.parseBlockBody(ON,RN,!1,XP.braceR),this.finishNode(ON,"BlockStatement")},Y_.parseBlockBody=function(RN,ON,YN,MN){RN.body=[],RN.directives=[];for(var VN=!1,UN,XN;!this.eat(MN);){VN||!this.state.containsOctal||XN||(XN=this.state.octalPosition);var WN=this.parseStatement(!0,YN);if(ON&&!VN&&"ExpressionStatement"===WN.type&&"StringLiteral"===WN.expression.type&&!WN.expression.extra.parenthesized){var JN=this.stmtToDirective(WN);RN.directives.push(JN),UN==void 0&&"use strict"===JN.value.value&&(UN=this.state.strict,this.setStrict(!0),XN&&this.raise(XN,"Octal literal in strict mode"));continue}VN=!0,RN.body.push(WN)}!1===UN&&this.setStrict(!1)},Y_.parseFor=function(RN,ON){return RN.init=ON,this.expect(XP.semi),RN.test=this.match(XP.semi)?null:this.parseExpression(),this.expect(XP.semi),RN.update=this.match(XP.parenR)?null:this.parseExpression(),this.expect(XP.parenR),RN.body=this.parseStatement(!1),this.state.labels.pop(),this.finishNode(RN,"ForStatement")},Y_.parseForIn=function(RN,ON,YN){var MN;return YN?(this.eatContextual("of"),MN="ForAwaitStatement"):(MN=this.match(XP._in)?"ForInStatement":"ForOfStatement",this.next()),RN.left=ON,RN.right=this.parseExpression(),this.expect(XP.parenR),RN.body=this.parseStatement(!1),this.state.labels.pop(),this.finishNode(RN,MN)},Y_.parseVar=function(RN,ON,YN){for(RN.declarations=[],RN.kind=YN.keyword;;){var MN=this.startNode();if(this.parseVarHead(MN),this.eat(XP.eq)?MN.init=this.parseMaybeAssign(ON):YN!==XP._const||this.match(XP._in)||this.isContextual("of")?"Identifier"===MN.id.type||ON&&(this.match(XP._in)||this.isContextual("of"))?MN.init=null:this.raise(this.state.lastTokEnd,"Complex binding patterns require an initialization value"):this.unexpected(),RN.declarations.push(this.finishNode(MN,"VariableDeclarator")),!this.eat(XP.comma))break}return RN},Y_.parseVarHead=function(RN){RN.id=this.parseBindingAtom(),this.checkLVal(RN.id,!0,void 0,"variable declaration")},Y_.parseFunction=function(RN,ON,YN,MN,VN){var UN=this.state.inMethod;return this.state.inMethod=!1,this.initFunction(RN,MN),this.match(XP.star)&&(RN.async&&!this.hasPlugin("asyncGenerators")?this.unexpected():(RN.generator=!0,this.next())),!ON||VN||this.match(XP.name)||this.match(XP._yield)||this.unexpected(),(this.match(XP.name)||this.match(XP._yield))&&(RN.id=this.parseBindingIdentifier()),this.parseFunctionParams(RN),this.parseFunctionBody(RN,YN),this.state.inMethod=UN,this.finishNode(RN,ON?"FunctionDeclaration":"FunctionExpression")},Y_.parseFunctionParams=function(RN){this.expect(XP.parenL),RN.params=this.parseBindingList(XP.parenR)},Y_.parseClass=function(RN,ON,YN){return this.next(),this.parseClassId(RN,ON,YN),this.parseClassSuper(RN),this.parseClassBody(RN),this.finishNode(RN,ON?"ClassDeclaration":"ClassExpression")},Y_.isClassProperty=function(){return this.match(XP.eq)||this.isLineTerminator()},Y_.isClassMutatorStarter=function(){return!1},Y_.parseClassBody=function(RN){var ON=this.state.strict;this.state.strict=!0;var YN=!1,MN=!1,VN=[],UN=this.startNode();for(UN.body=[],this.expect(XP.braceL);!this.eat(XP.braceR);)if(!this.eat(XP.semi)){if(this.match(XP.at)){VN.push(this.parseDecorator());continue}var XN=this.startNode();VN.length&&(XN.decorators=VN,VN=[]);var WN=!1,JN=this.match(XP.name)&&"static"===this.state.value,ZN=this.eat(XP.star),KN=!1,QN=!1;if(this.parsePropertyName(XN),XN.static=JN&&!this.match(XP.parenL),XN.static&&(ZN=this.eat(XP.star),this.parsePropertyName(XN)),!ZN){if(this.isClassProperty()){UN.body.push(this.parseClassProperty(XN));continue}"Identifier"===XN.key.type&&!XN.computed&&this.hasPlugin("classConstructorCall")&&"call"===XN.key.name&&this.match(XP.name)&&"constructor"===this.state.value&&(WN=!0,this.parsePropertyName(XN))}var $N=!this.match(XP.parenL)&&!XN.computed&&"Identifier"===XN.key.type&&"async"===XN.key.name;if($N&&(this.hasPlugin("asyncGenerators")&&this.eat(XP.star)&&(ZN=!0),QN=!0,this.parsePropertyName(XN)),XN.kind="method",!XN.computed){var Sk=XN.key;QN||ZN||this.isClassMutatorStarter()||"Identifier"!==Sk.type||this.match(XP.parenL)||"get"!==Sk.name&&"set"!==Sk.name||(KN=!0,XN.kind=Sk.name,Sk=this.parsePropertyName(XN));var Tk=!WN&&!XN.static&&("Identifier"===Sk.type&&"constructor"===Sk.name||"StringLiteral"===Sk.type&&"constructor"===Sk.value);Tk&&(MN&&this.raise(Sk.start,"Duplicate constructor in the same class"),KN&&this.raise(Sk.start,"Constructor can't have get/set modifier"),ZN&&this.raise(Sk.start,"Constructor can't be a generator"),QN&&this.raise(Sk.start,"Constructor can't be an async function"),XN.kind="constructor",MN=!0);var Pk=XN.static&&("Identifier"===Sk.type&&"prototype"===Sk.name||"StringLiteral"===Sk.type&&"prototype"===Sk.value);Pk&&this.raise(Sk.start,"Classes may not have static property named prototype")}if(WN&&(YN&&this.raise(XN.start,"Duplicate constructor call in the same class"),XN.kind="constructorCall",YN=!0),("constructor"===XN.kind||"constructorCall"===XN.kind)&&XN.decorators&&this.raise(XN.start,"You can't attach decorators to a class constructor"),this.parseClassMethod(UN,XN,ZN,QN),KN){var _k="get"===XN.kind?0:1;if(XN.params.length!==_k){var Nk=XN.start;"get"===XN.kind?this.raise(Nk,"getter should have no params"):this.raise(Nk,"setter should have exactly one param")}}}VN.length&&this.raise(this.state.start,"You have trailing decorators with no method"),RN.body=this.finishNode(UN,"ClassBody"),this.state.strict=ON},Y_.parseClassProperty=function(RN){return this.match(XP.eq)?(!this.hasPlugin("classProperties")&&this.unexpected(),this.next(),RN.value=this.parseMaybeAssign()):RN.value=null,this.semicolon(),this.finishNode(RN,"ClassProperty")},Y_.parseClassMethod=function(RN,ON,YN,MN){this.parseMethod(ON,YN,MN),RN.body.push(this.finishNode(ON,"ClassMethod"))},Y_.parseClassId=function(RN,ON,YN){this.match(XP.name)?RN.id=this.parseIdentifier():YN||!ON?RN.id=null:this.unexpected()},Y_.parseClassSuper=function(RN){RN.superClass=this.eat(XP._extends)?this.parseExprSubscripts():null},Y_.parseExport=function(RN){if(this.next(),this.match(XP.star)){var ON=this.startNode();if(this.next(),this.hasPlugin("exportExtensions")&&this.eatContextual("as"))ON.exported=this.parseIdentifier(),RN.specifiers=[this.finishNode(ON,"ExportNamespaceSpecifier")],this.parseExportSpecifiersMaybe(RN),this.parseExportFrom(RN,!0);else return this.parseExportFrom(RN,!0),this.finishNode(RN,"ExportAllDeclaration")}else if(this.hasPlugin("exportExtensions")&&this.isExportDefaultSpecifier()){var YN=this.startNode();if(YN.exported=this.parseIdentifier(!0),RN.specifiers=[this.finishNode(YN,"ExportDefaultSpecifier")],this.match(XP.comma)&&this.lookahead().type===XP.star){this.expect(XP.comma);var MN=this.startNode();this.expect(XP.star),this.expectContextual("as"),MN.exported=this.parseIdentifier(),RN.specifiers.push(this.finishNode(MN,"ExportNamespaceSpecifier"))}else this.parseExportSpecifiersMaybe(RN);this.parseExportFrom(RN,!0)}else{if(this.eat(XP._default)){var VN=this.startNode(),UN=!1;return this.eat(XP._function)?VN=this.parseFunction(VN,!0,!1,!1,!0):this.match(XP._class)?VN=this.parseClass(VN,!0,!0):(UN=!0,VN=this.parseMaybeAssign()),RN.declaration=VN,UN&&this.semicolon(),this.checkExport(RN,!0,!0),this.finishNode(RN,"ExportDefaultDeclaration")}this.shouldParseExportDeclaration()?(RN.specifiers=[],RN.source=null,RN.declaration=this.parseExportDeclaration(RN)):(RN.declaration=null,RN.specifiers=this.parseExportSpecifiers(),this.parseExportFrom(RN))}return this.checkExport(RN,!0),this.finishNode(RN,"ExportNamedDeclaration")},Y_.parseExportDeclaration=function(){return this.parseStatement(!0)},Y_.isExportDefaultSpecifier=function(){if(this.match(XP.name))return"type"!==this.state.value&&"async"!==this.state.value&&"interface"!==this.state.value;if(!this.match(XP._default))return!1;var RN=this.lookahead();return RN.type===XP.comma||RN.type===XP.name&&"from"===RN.value},Y_.parseExportSpecifiersMaybe=function(RN){this.eat(XP.comma)&&(RN.specifiers=RN.specifiers.concat(this.parseExportSpecifiers()))},Y_.parseExportFrom=function(RN,ON){this.eatContextual("from")?(RN.source=this.match(XP.string)?this.parseExprAtom():this.unexpected(),this.checkExport(RN)):ON?this.unexpected():RN.source=null,this.semicolon()},Y_.shouldParseExportDeclaration=function(){return"var"===this.state.type.keyword||"const"===this.state.type.keyword||"let"===this.state.type.keyword||"function"===this.state.type.keyword||"class"===this.state.type.keyword||this.isContextual("async")},Y_.checkExport=function(RN,ON,YN){if(ON)if(YN)this.checkDuplicateExports(RN,"default");else if(RN.specifiers&&RN.specifiers.length)for(var MN=RN.specifiers,VN=Array.isArray(MN),UN=0,MN=VN?MN:MN[Symbol.iterator]();;){var XN;if(VN){if(UN>=MN.length)break;XN=MN[UN++]}else{if(UN=MN.next(),UN.done)break;XN=UN.value}var WN=XN;this.checkDuplicateExports(WN,WN.exported.name)}else if(RN.declaration)if("FunctionDeclaration"===RN.declaration.type||"ClassDeclaration"===RN.declaration.type)this.checkDuplicateExports(RN,RN.declaration.id.name);else if("VariableDeclaration"===RN.declaration.type)for(var JN=RN.declaration.declarations,ZN=Array.isArray(JN),KN=0,JN=ZN?JN:JN[Symbol.iterator]();;){var QN;if(ZN){if(KN>=JN.length)break;QN=JN[KN++]}else{if(KN=JN.next(),KN.done)break;QN=KN.value}var $N=QN;this.checkDeclaration($N.id)}if(this.state.decorators.length){var Sk=RN.declaration&&("ClassDeclaration"===RN.declaration.type||"ClassExpression"===RN.declaration.type);RN.declaration&&Sk||this.raise(RN.start,"You can only use decorators on an export when exporting a class"),this.takeDecorators(RN.declaration)}},Y_.checkDeclaration=function(RN){if("ObjectPattern"===RN.type)for(var ON=RN.properties,YN=Array.isArray(ON),MN=0,ON=YN?ON:ON[Symbol.iterator]();;){var VN;if(YN){if(MN>=ON.length)break;VN=ON[MN++]}else{if(MN=ON.next(),MN.done)break;VN=MN.value}var UN=VN;this.checkDeclaration(UN)}else if("ArrayPattern"===RN.type)for(var XN=RN.elements,WN=Array.isArray(XN),JN=0,XN=WN?XN:XN[Symbol.iterator]();;){var ZN;if(WN){if(JN>=XN.length)break;ZN=XN[JN++]}else{if(JN=XN.next(),JN.done)break;ZN=JN.value}var KN=ZN;KN&&this.checkDeclaration(KN)}else"ObjectProperty"===RN.type?this.checkDeclaration(RN.value):"RestElement"===RN.type||"RestProperty"===RN.type?this.checkDeclaration(RN.argument):"Identifier"===RN.type&&this.checkDuplicateExports(RN,RN.name)},Y_.checkDuplicateExports=function(RN,ON){-1=MN.length)break;XN=MN[UN++]}else{if(UN=MN.next(),UN.done)break;XN=UN.value}var WN=XN;"ObjectMethod"===WN.type?"get"===WN.kind||"set"===WN.kind?this.raise(WN.key.start,"Object pattern can't contain getter or setter"):this.raise(WN.key.start,"Object pattern can't contain methods"):this.toAssignable(WN,ON,"object destructuring pattern")}break;case"ObjectProperty":this.toAssignable(RN.value,ON,YN);break;case"SpreadProperty":RN.type="RestProperty";break;case"ArrayExpression":RN.type="ArrayPattern",this.toAssignableList(RN.elements,ON,YN);break;case"AssignmentExpression":"="===RN.operator?(RN.type="AssignmentPattern",delete RN.operator):this.raise(RN.left.end,"Only '=' operator can be used for specifying default value.");break;case"MemberExpression":if(!ON)break;default:{var JN="Invalid left-hand side"+(YN?" in "+YN:"expression");this.raise(RN.start,JN)}}return RN},X_.toAssignableList=function(RN,ON,YN){var MN=RN.length;if(MN){var VN=RN[MN-1];if(VN&&"RestElement"===VN.type)--MN;else if(VN&&"SpreadElement"===VN.type){VN.type="RestElement";var UN=VN.argument;this.toAssignable(UN,ON,YN),"Identifier"!==UN.type&&"MemberExpression"!==UN.type&&"ArrayPattern"!==UN.type&&this.unexpected(UN.start),--MN}}for(var XN=0;XN=UN.length)break;JN=UN[WN++]}else{if(WN=UN.next(),WN.done)break;JN=WN.value}var ZN=JN;"ObjectProperty"===ZN.type&&(ZN=ZN.value),this.checkLVal(ZN,ON,YN,"object destructuring pattern")}break;case"ArrayPattern":for(var KN=RN.elements,QN=Array.isArray(KN),$N=0,KN=QN?KN:KN[Symbol.iterator]();;){var Sk;if(QN){if($N>=KN.length)break;Sk=KN[$N++]}else{if($N=KN.next(),$N.done)break;Sk=$N.value}var Tk=Sk;Tk&&this.checkLVal(Tk,ON,YN,"array destructuring pattern")}break;case"AssignmentPattern":this.checkLVal(RN.left,ON,YN,"assignment pattern");break;case"RestProperty":this.checkLVal(RN.argument,ON,YN,"rest property");break;case"RestElement":this.checkLVal(RN.argument,ON,YN,"rest element");break;default:{var Pk=(ON?"Binding invalid":"Invalid")+" left-hand side"+(MN?" in "+MN:"expression");this.raise(RN.start,Pk)}}};var W_=R_.prototype;W_.checkPropClash=function(RN,ON){if(!RN.computed){var YN=RN.key,MN;switch(YN.type){case"Identifier":MN=YN.name;break;case"StringLiteral":case"NumericLiteral":MN=YN.value+"";break;default:return;}"__proto__"!==MN||RN.kind||(ON.proto&&this.raise(YN.start,"Redefinition of __proto__ property"),ON.proto=!0)}},W_.parseExpression=function(RN,ON){var YN=this.state.start,MN=this.state.startLoc,VN=this.parseMaybeAssign(RN,ON);if(this.match(XP.comma)){var UN=this.startNodeAt(YN,MN);for(UN.expressions=[VN];this.eat(XP.comma);)UN.expressions.push(this.parseMaybeAssign(RN,ON));return this.toReferencedList(UN.expressions),this.finishNode(UN,"SequenceExpression")}return VN},W_.parseMaybeAssign=function(RN,ON,YN,MN){var VN=this.state.start,UN=this.state.startLoc;if(this.match(XP._yield)&&this.state.inGenerator){var XN=this.parseYield();return YN&&(XN=YN.call(this,XN,VN,UN)),XN}var WN;ON?WN=!1:(ON={start:0},WN=!0),(this.match(XP.parenL)||this.match(XP.name))&&(this.state.potentialArrowAt=this.state.start);var JN=this.parseMaybeConditional(RN,ON,MN);if(YN&&(JN=YN.call(this,JN,VN,UN)),this.state.type.isAssign){var ZN=this.startNodeAt(VN,UN);if(ZN.operator=this.state.value,ZN.left=this.match(XP.eq)?this.toAssignable(JN,void 0,"assignment expression"):JN,ON.start=0,this.checkLVal(JN,void 0,void 0,"assignment expression"),JN.extra&&JN.extra.parenthesized){var KN;"ObjectPattern"===JN.type?KN="`({a}) = 0` use `({a} = 0)`":"ArrayPattern"===JN.type&&(KN="`([a]) = 0` use `([a] = 0)`"),KN&&this.raise(JN.start,"You're trying to assign to a parenthesized expression, eg. instead of "+KN)}return this.next(),ZN.right=this.parseMaybeAssign(RN),this.finishNode(ZN,"AssignmentExpression")}return WN&&ON.start&&this.unexpected(ON.start),JN},W_.parseMaybeConditional=function(RN,ON,YN){var MN=this.state.start,VN=this.state.startLoc,UN=this.parseExprOps(RN,ON);return ON&&ON.start?UN:this.parseConditional(UN,RN,MN,VN,YN)},W_.parseConditional=function(RN,ON,YN,MN){if(this.eat(XP.question)){var VN=this.startNodeAt(YN,MN);return VN.test=RN,VN.consequent=this.parseMaybeAssign(),this.expect(XP.colon),VN.alternate=this.parseMaybeAssign(ON),this.finishNode(VN,"ConditionalExpression")}return RN},W_.parseExprOps=function(RN,ON){var YN=this.state.start,MN=this.state.startLoc,VN=this.parseMaybeUnary(ON);return ON&&ON.start?VN:this.parseExprOp(VN,YN,MN,-1,RN)},W_.parseExprOp=function(RN,ON,YN,MN,VN){var UN=this.state.type.binop;if(null!=UN&&(!VN||!this.match(XP._in))&&UN>MN){var XN=this.startNodeAt(ON,YN);XN.left=RN,XN.operator=this.state.value,"**"!==XN.operator||"UnaryExpression"!==RN.type||!RN.extra||RN.extra.parenthesizedArgument||RN.extra.parenthesized||this.raise(RN.argument.start,"Illegal expression. Wrap left hand side or entire exponentiation in parentheses.");var WN=this.state.type;this.next();var JN=this.state.start,ZN=this.state.startLoc;return XN.right=this.parseExprOp(this.parseMaybeUnary(),JN,ZN,WN.rightAssociative?UN-1:UN,VN),this.finishNode(XN,WN===XP.logicalOR||WN===XP.logicalAND?"LogicalExpression":"BinaryExpression"),this.parseExprOp(XN,ON,YN,MN,VN)}return RN},W_.parseMaybeUnary=function(RN){if(this.state.type.prefix){var ON=this.startNode(),YN=this.match(XP.incDec);ON.operator=this.state.value,ON.prefix=!0,this.next();var MN=this.state.type;return ON.argument=this.parseMaybeUnary(),this.addExtra(ON,"parenthesizedArgument",MN===XP.parenL&&(!ON.argument.extra||!ON.argument.extra.parenthesized)),RN&&RN.start&&this.unexpected(RN.start),YN?this.checkLVal(ON.argument,void 0,void 0,"prefix operation"):this.state.strict&&"delete"===ON.operator&&"Identifier"===ON.argument.type&&this.raise(ON.start,"Deleting local variable in strict mode"),this.finishNode(ON,YN?"UpdateExpression":"UnaryExpression")}var VN=this.state.start,UN=this.state.startLoc,XN=this.parseExprSubscripts(RN);if(RN&&RN.start)return XN;for(;this.state.type.postfix&&!this.canInsertSemicolon();){var WN=this.startNodeAt(VN,UN);WN.operator=this.state.value,WN.prefix=!1,WN.argument=XN,this.checkLVal(XN,void 0,void 0,"postfix operation"),this.next(),XN=this.finishNode(WN,"UpdateExpression")}return XN},W_.parseExprSubscripts=function(RN){var ON=this.state.start,YN=this.state.startLoc,MN=this.state.potentialArrowAt,VN=this.parseExprAtom(RN);return"ArrowFunctionExpression"===VN.type&&VN.start===MN?VN:RN&&RN.start?VN:this.parseSubscripts(VN,ON,YN)},W_.parseSubscripts=function(RN,ON,YN,MN){for(;;){if(!MN&&this.eat(XP.doubleColon)){var VN=this.startNodeAt(ON,YN);return VN.object=RN,VN.callee=this.parseNoCallExpr(),this.parseSubscripts(this.finishNode(VN,"BindExpression"),ON,YN,MN)}if(this.eat(XP.dot)){var UN=this.startNodeAt(ON,YN);UN.object=RN,UN.property=this.parseIdentifier(!0),UN.computed=!1,RN=this.finishNode(UN,"MemberExpression")}else if(this.eat(XP.bracketL)){var XN=this.startNodeAt(ON,YN);XN.object=RN,XN.property=this.parseExpression(),XN.computed=!0,this.expect(XP.bracketR),RN=this.finishNode(XN,"MemberExpression")}else if(!MN&&this.match(XP.parenL)){var WN=this.state.potentialArrowAt===RN.start&&"Identifier"===RN.type&&"async"===RN.name&&!this.canInsertSemicolon();this.next();var JN=this.startNodeAt(ON,YN);if(JN.callee=RN,JN.arguments=this.parseCallExpressionArguments(XP.parenR,WN),"Import"===JN.callee.type&&1!==JN.arguments.length&&this.raise(JN.start,"import() requires exactly one argument"),RN=this.finishNode(JN,"CallExpression"),WN&&this.shouldParseAsyncArrow())return this.parseAsyncArrowFromCallExpression(this.startNodeAt(ON,YN),JN);this.toReferencedList(JN.arguments)}else if(this.match(XP.backQuote)){var ZN=this.startNodeAt(ON,YN);ZN.tag=RN,ZN.quasi=this.parseTemplate(),RN=this.finishNode(ZN,"TaggedTemplateExpression")}else return RN}},W_.parseCallExpressionArguments=function(RN,ON){for(var YN=[],VN=!0,MN;!this.eat(RN);){if(VN)VN=!1;else if(this.expect(XP.comma),this.eat(RN))break;this.match(XP.parenL)&&!MN&&(MN=this.state.start),YN.push(this.parseExprListItem(void 0,ON?{start:0}:void 0))}return ON&&MN&&this.shouldParseAsyncArrow()&&this.unexpected(),YN},W_.shouldParseAsyncArrow=function(){return this.match(XP.arrow)},W_.parseAsyncArrowFromCallExpression=function(RN,ON){return this.expect(XP.arrow),this.parseArrowExpression(RN,ON.arguments,!0)},W_.parseNoCallExpr=function(){var RN=this.state.start,ON=this.state.startLoc;return this.parseSubscripts(this.parseExprAtom(),RN,ON,!0)},W_.parseExprAtom=function(RN){var ON=this.state.potentialArrowAt===this.state.start,YN;switch(this.state.type){case XP._super:return this.state.inMethod||this.options.allowSuperOutsideMethod||this.raise(this.state.start,"'super' outside of function or class"),YN=this.startNode(),this.next(),this.match(XP.parenL)||this.match(XP.bracketL)||this.match(XP.dot)||this.unexpected(),this.match(XP.parenL)&&"constructor"!==this.state.inMethod&&!this.options.allowSuperOutsideMethod&&this.raise(YN.start,"super() outside of class constructor"),this.finishNode(YN,"Super");case XP._import:return this.hasPlugin("dynamicImport")||this.unexpected(),YN=this.startNode(),this.next(),this.match(XP.parenL)||this.unexpected(null,XP.parenL),this.finishNode(YN,"Import");case XP._this:return YN=this.startNode(),this.next(),this.finishNode(YN,"ThisExpression");case XP._yield:this.state.inGenerator&&this.unexpected();case XP.name:YN=this.startNode();var MN="await"===this.state.value&&this.state.inAsync,VN=this.shouldAllowYieldIdentifier(),UN=this.parseIdentifier(MN||VN);if("await"!==UN.name){if("async"===UN.name&&this.match(XP._function)&&!this.canInsertSemicolon())return this.next(),this.parseFunction(YN,!1,!1,!0);if(ON&&"async"===UN.name&&this.match(XP.name)){var XN=[this.parseIdentifier()];return this.expect(XP.arrow),this.parseArrowExpression(YN,XN,!0)}}else if(this.state.inAsync||this.inModule)return this.parseAwait(YN);return ON&&!this.canInsertSemicolon()&&this.eat(XP.arrow)?this.parseArrowExpression(YN,[UN]):UN;case XP._do:if(this.hasPlugin("doExpressions")){var WN=this.startNode();this.next();var JN=this.state.inFunction,ZN=this.state.labels;return this.state.labels=[],this.state.inFunction=!1,WN.body=this.parseBlock(!1,!0),this.state.inFunction=JN,this.state.labels=ZN,this.finishNode(WN,"DoExpression")}case XP.regexp:var KN=this.state.value;return YN=this.parseLiteral(KN.value,"RegExpLiteral"),YN.pattern=KN.pattern,YN.flags=KN.flags,YN;case XP.num:return this.parseLiteral(this.state.value,"NumericLiteral");case XP.string:return this.parseLiteral(this.state.value,"StringLiteral");case XP._null:return YN=this.startNode(),this.next(),this.finishNode(YN,"NullLiteral");case XP._true:case XP._false:return YN=this.startNode(),YN.value=this.match(XP._true),this.next(),this.finishNode(YN,"BooleanLiteral");case XP.parenL:return this.parseParenAndDistinguishExpression(null,null,ON);case XP.bracketL:return YN=this.startNode(),this.next(),YN.elements=this.parseExprList(XP.bracketR,!0,RN),this.toReferencedList(YN.elements),this.finishNode(YN,"ArrayExpression");case XP.braceL:return this.parseObj(!1,RN);case XP._function:return this.parseFunctionExpression();case XP.at:this.parseDecorators();case XP._class:return YN=this.startNode(),this.takeDecorators(YN),this.parseClass(YN,!1);case XP._new:return this.parseNew();case XP.backQuote:return this.parseTemplate();case XP.doubleColon:YN=this.startNode(),this.next(),YN.object=null;var QN=YN.callee=this.parseNoCallExpr();if("MemberExpression"===QN.type)return this.finishNode(YN,"BindExpression");this.raise(QN.start,"Binding should be performed on object property.");default:this.unexpected();}},W_.parseFunctionExpression=function(){var RN=this.startNode(),ON=this.parseIdentifier(!0);return this.state.inGenerator&&this.eat(XP.dot)&&this.hasPlugin("functionSent")?this.parseMetaProperty(RN,ON,"sent"):this.parseFunction(RN,!1)},W_.parseMetaProperty=function(RN,ON,YN){return RN.meta=ON,RN.property=this.parseIdentifier(!0),RN.property.name!==YN&&this.raise(RN.property.start,"The only valid meta property for new is "+ON.name+"."+YN),this.finishNode(RN,"MetaProperty")},W_.parseLiteral=function(RN,ON){var YN=this.startNode();return this.addExtra(YN,"rawValue",RN),this.addExtra(YN,"raw",this.input.slice(this.state.start,this.state.end)),YN.value=RN,this.next(),this.finishNode(YN,ON)},W_.parseParenExpression=function(){this.expect(XP.parenL);var RN=this.parseExpression();return this.expect(XP.parenR),RN},W_.parseParenAndDistinguishExpression=function(RN,ON,YN){RN=RN||this.state.start,ON=ON||this.state.startLoc;var MN;this.expect(XP.parenL);for(var VN=this.state.start,UN=this.state.startLoc,XN=[],WN={start:0},JN={start:0},ZN=!0,KN,QN;!this.match(XP.parenR);){if(ZN)ZN=!1;else if(this.expect(XP.comma,JN.start||null),this.match(XP.parenR)){QN=this.state.start;break}if(this.match(XP.ellipsis)){var $N=this.state.start,Sk=this.state.startLoc;KN=this.state.start,XN.push(this.parseParenItem(this.parseRest(),Sk,$N));break}else XN.push(this.parseMaybeAssign(!1,WN,this.parseParenItem,JN))}var Tk=this.state.start,Pk=this.state.startLoc;this.expect(XP.parenR);var _k=this.startNodeAt(RN,ON);if(YN&&this.shouldParseArrow()&&(_k=this.parseArrow(_k))){for(var Nk=XN,Lk=Array.isArray(Nk),Rk=0,Nk=Lk?Nk:Nk[Symbol.iterator]();;){var Ok;if(Lk){if(Rk>=Nk.length)break;Ok=Nk[Rk++]}else{if(Rk=Nk.next(),Rk.done)break;Ok=Rk.value}var Yk=Ok;Yk.extra&&Yk.extra.parenthesized&&this.unexpected(Yk.extra.parenStart)}return this.parseArrowExpression(_k,XN)}return XN.length||this.unexpected(this.state.lastTokStart),QN&&this.unexpected(QN),KN&&this.unexpected(KN),WN.start&&this.unexpected(WN.start),JN.start&&this.unexpected(JN.start),1=ZN.length)break;$N=ZN[QN++]}else{if(QN=ZN.next(),QN.done)break;$N=QN.value}var Sk=$N;if("use strict"===Sk.value.value){JN=!0,WN=!0;break}}if(JN&&RN.id&&"Identifier"===RN.id.type&&"yield"===RN.id.name&&this.raise(RN.id.start,"Binding yield in strict mode"),WN){var Tk=Object.create(null),Pk=this.state.strict;JN&&(this.state.strict=!0),RN.id&&this.checkLVal(RN.id,!0,void 0,"function name");for(var _k=RN.params,Nk=Array.isArray(_k),Lk=0,_k=Nk?_k:_k[Symbol.iterator]();;){var Rk;if(Nk){if(Lk>=_k.length)break;Rk=_k[Lk++]}else{if(Lk=_k.next(),Lk.done)break;Rk=Lk.value}var Ok=Rk;JN&&"Identifier"!==Ok.type&&this.raise(Ok.start,"Non-simple parameter in strict mode"),this.checkLVal(Ok,!0,Tk,"function parameter list")}this.state.strict=Pk}},W_.parseExprList=function(RN,ON,YN){for(var MN=[],VN=!0;!this.eat(RN);){if(VN)VN=!1;else if(this.expect(XP.comma),this.eat(RN))break;MN.push(this.parseExprListItem(ON,YN))}return MN},W_.parseExprListItem=function(RN,ON){var YN;return YN=RN&&this.match(XP.comma)?null:this.match(XP.ellipsis)?this.parseSpread(ON):this.parseMaybeAssign(!1,ON,this.parseParenItem),YN},W_.parseIdentifier=function(RN){var ON=this.startNode();return this.match(XP.name)?(!RN&&this.checkReservedWord(this.state.value,this.state.start,!1,!1),ON.name=this.state.value):RN&&this.state.type.keyword?ON.name=this.state.type.keyword:this.unexpected(),!RN&&"await"===ON.name&&this.state.inAsync&&this.raise(ON.start,"invalid use of await inside of an async function"),ON.loc.identifierName=ON.name,this.next(),this.finishNode(ON,"Identifier")},W_.checkReservedWord=function(RN,ON,YN,MN){(this.isReservedWord(RN)||YN&&this.isKeyword(RN))&&this.raise(ON,RN+" is a reserved word"),this.state.strict&&(UA.strict(RN)||MN&&UA.strictBind(RN))&&this.raise(ON,RN+" is a reserved word in strict mode")},W_.parseAwait=function(RN){return this.state.inAsync||this.unexpected(),this.match(XP.star)&&this.raise(RN.start,"await* has been removed from the async functions proposal. Use Promise.all() instead."),RN.argument=this.parseMaybeUnary(),this.finishNode(RN,"AwaitExpression")},W_.parseYield=function(){var RN=this.startNode();return this.next(),this.match(XP.semi)||this.canInsertSemicolon()||!this.match(XP.star)&&!this.state.type.startsExpr?(RN.delegate=!1,RN.argument=null):(RN.delegate=this.eat(XP.star),RN.argument=this.parseMaybeAssign()),this.finishNode(RN,"YieldExpression")};var J_=R_.prototype,Z_=["leadingComments","trailingComments","innerComments"],K_=function(){function RN(ON,YN,MN){PP(this,RN),this.type="",this.start=ON,this.end=0,this.loc=new T_(YN),MN&&(this.loc.filename=MN)}return RN.prototype.__clone=function(){var YN=new RN;for(var MN in this)0>Z_.indexOf(MN)&&(YN[MN]=this[MN]);return YN},RN}();J_.startNode=function(){return new K_(this.state.start,this.state.startLoc,this.filename)},J_.startNodeAt=function(RN,ON){return new K_(RN,ON,this.filename)},J_.finishNode=function(RN,ON){return YA.call(this,RN,ON,this.state.lastTokEnd,this.state.lastTokEndLoc)},J_.finishNodeAt=function(RN,ON,YN,MN){return YA.call(this,RN,ON,YN,MN)};var Q_=R_.prototype;Q_.raise=function(RN,ON){var YN=RA(this.input,RN);ON+=" ("+YN.line+":"+YN.column+")";var MN=new SyntaxError(ON);throw MN.pos=RN,MN.loc=YN,MN};var $_=R_.prototype;$_.addComment=function(RN){this.filename&&(RN.loc.filename=this.filename),this.state.trailingComments.push(RN),this.state.leadingComments.push(RN)},$_.processComment=function(RN){if(!("Program"===RN.type&&0=RN.end?(MN=this.state.trailingComments,this.state.trailingComments=[]):this.state.trailingComments.length=0;else{var XN=MA(ON);0=RN.end&&(MN=XN.trailingComments,XN.trailingComments=null)}for(;0=RN.start;)YN=ON.pop();if(YN){if(YN.leadingComments)if(YN!==RN&&MA(YN.leadingComments).end<=RN.start)RN.leadingComments=YN.leadingComments,YN.leadingComments=null;else for(VN=YN.leadingComments.length-2;0<=VN;--VN)if(YN.leadingComments[VN].end<=RN.start){RN.leadingComments=YN.leadingComments.splice(0,VN+1);break}}else if(0RN.start);VN++);RN.leadingComments=this.state.leadingComments.slice(0,VN),0===RN.leadingComments.length&&(RN.leadingComments=null),MN=this.state.leadingComments.slice(VN),0===MN.length&&(MN=null)}this.state.commentPreviousNode=RN,MN&&(MN.length&&MN[0].start>=RN.start&&MA(MN).end<=RN.end?RN.innerComments=MN:RN.trailingComments=MN),ON.push(RN)}};var SN=R_.prototype;SN.flowParseTypeInitialiser=function(RN){var ON=this.state.inType;this.state.inType=!0,this.expect(RN||XP.colon);var YN=this.flowParseType();return this.state.inType=ON,YN},SN.flowParseDeclareClass=function(RN){return this.next(),this.flowParseInterfaceish(RN,!0),this.finishNode(RN,"DeclareClass")},SN.flowParseDeclareFunction=function(RN){this.next();var ON=RN.id=this.parseIdentifier(),YN=this.startNode(),MN=this.startNode();YN.typeParameters=this.isRelational("<")?this.flowParseTypeParameterDeclaration():null,this.expect(XP.parenL);var VN=this.flowParseFunctionTypeParams();return YN.params=VN.params,YN.rest=VN.rest,this.expect(XP.parenR),YN.returnType=this.flowParseTypeInitialiser(),MN.typeAnnotation=this.finishNode(YN,"FunctionTypeAnnotation"),ON.typeAnnotation=this.finishNode(MN,"TypeAnnotation"),this.finishNode(ON,ON.type),this.semicolon(),this.finishNode(RN,"DeclareFunction")},SN.flowParseDeclare=function(RN){if(this.match(XP._class))return this.flowParseDeclareClass(RN);return this.match(XP._function)?this.flowParseDeclareFunction(RN):this.match(XP._var)?this.flowParseDeclareVariable(RN):this.isContextual("module")?this.lookahead().type===XP.dot?this.flowParseDeclareModuleExports(RN):this.flowParseDeclareModule(RN):this.isContextual("type")?this.flowParseDeclareTypeAlias(RN):this.isContextual("interface")?this.flowParseDeclareInterface(RN):void this.unexpected()},SN.flowParseDeclareVariable=function(RN){return this.next(),RN.id=this.flowParseTypeAnnotatableIdentifier(),this.semicolon(),this.finishNode(RN,"DeclareVariable")},SN.flowParseDeclareModule=function(RN){this.next(),RN.id=this.match(XP.string)?this.parseExprAtom():this.parseIdentifier();var ON=RN.body=this.startNode(),YN=ON.body=[];for(this.expect(XP.braceL);!this.match(XP.braceR);){var MN=this.startNode();this.expectContextual("declare","Unexpected token. Only declares are allowed inside declare module"),YN.push(this.flowParseDeclare(MN))}return this.expect(XP.braceR),this.finishNode(ON,"BlockStatement"),this.finishNode(RN,"DeclareModule")},SN.flowParseDeclareModuleExports=function(RN){return this.expectContextual("module"),this.expect(XP.dot),this.expectContextual("exports"),RN.typeAnnotation=this.flowParseTypeAnnotation(),this.semicolon(),this.finishNode(RN,"DeclareModuleExports")},SN.flowParseDeclareTypeAlias=function(RN){return this.next(),this.flowParseTypeAlias(RN),this.finishNode(RN,"DeclareTypeAlias")},SN.flowParseDeclareInterface=function(RN){return this.next(),this.flowParseInterfaceish(RN),this.finishNode(RN,"DeclareInterface")},SN.flowParseInterfaceish=function(RN,ON){if(RN.id=this.parseIdentifier(),RN.typeParameters=this.isRelational("<")?this.flowParseTypeParameterDeclaration():null,RN.extends=[],RN.mixins=[],this.eat(XP._extends))do RN.extends.push(this.flowParseInterfaceExtends());while(this.eat(XP.comma));if(this.isContextual("mixins")){this.next();do RN.mixins.push(this.flowParseInterfaceExtends());while(this.eat(XP.comma))}RN.body=this.flowParseObjectType(ON)},SN.flowParseInterfaceExtends=function(){var RN=this.startNode();return RN.id=this.flowParseQualifiedTypeIdentifier(),RN.typeParameters=this.isRelational("<")?this.flowParseTypeParameterInstantiation():null,this.finishNode(RN,"InterfaceExtends")},SN.flowParseInterface=function(RN){return this.flowParseInterfaceish(RN,!1),this.finishNode(RN,"InterfaceDeclaration")},SN.flowParseTypeAlias=function(RN){return RN.id=this.parseIdentifier(),RN.typeParameters=this.isRelational("<")?this.flowParseTypeParameterDeclaration():null,RN.right=this.flowParseTypeInitialiser(XP.eq),this.semicolon(),this.finishNode(RN,"TypeAlias")},SN.flowParseTypeParameter=function(){var RN=this.startNode(),ON=this.flowParseVariance(),YN=this.flowParseTypeAnnotatableIdentifier();return RN.name=YN.name,RN.variance=ON,RN.bound=YN.typeAnnotation,this.match(XP.eq)&&(this.eat(XP.eq),RN.default=this.flowParseType()),this.finishNode(RN,"TypeParameter")},SN.flowParseTypeParameterDeclaration=function(){var RN=this.state.inType,ON=this.startNode();ON.params=[],this.state.inType=!0,this.isRelational("<")||this.match(XP.jsxTagStart)?this.next():this.unexpected();do ON.params.push(this.flowParseTypeParameter()),this.isRelational(">")||this.expect(XP.comma);while(!this.isRelational(">"));return this.expectRelational(">"),this.state.inType=RN,this.finishNode(ON,"TypeParameterDeclaration")},SN.flowParseTypeParameterInstantiation=function(){var RN=this.startNode(),ON=this.state.inType;for(RN.params=[],this.state.inType=!0,this.expectRelational("<");!this.isRelational(">");)RN.params.push(this.flowParseType()),this.isRelational(">")||this.expect(XP.comma);return this.expectRelational(">"),this.state.inType=ON,this.finishNode(RN,"TypeParameterInstantiation")},SN.flowParseObjectPropertyKey=function(){return this.match(XP.num)||this.match(XP.string)?this.parseExprAtom():this.parseIdentifier(!0)},SN.flowParseObjectTypeIndexer=function(RN,ON,YN){return RN.static=ON,this.expect(XP.bracketL),this.lookahead().type===XP.colon?(RN.id=this.flowParseObjectPropertyKey(),RN.key=this.flowParseTypeInitialiser()):(RN.id=null,RN.key=this.flowParseType()),this.expect(XP.bracketR),RN.value=this.flowParseTypeInitialiser(),RN.variance=YN,this.flowObjectTypeSemicolon(),this.finishNode(RN,"ObjectTypeIndexer")},SN.flowParseObjectTypeMethodish=function(RN){for(RN.params=[],RN.rest=null,RN.typeParameters=null,this.isRelational("<")&&(RN.typeParameters=this.flowParseTypeParameterDeclaration()),this.expect(XP.parenL);this.match(XP.name);)RN.params.push(this.flowParseFunctionTypeParam()),this.match(XP.parenR)||this.expect(XP.comma);return this.eat(XP.ellipsis)&&(RN.rest=this.flowParseFunctionTypeParam()),this.expect(XP.parenR),RN.returnType=this.flowParseTypeInitialiser(),this.finishNode(RN,"FunctionTypeAnnotation")},SN.flowParseObjectTypeMethod=function(RN,ON,YN,MN){var VN=this.startNodeAt(RN,ON);return VN.value=this.flowParseObjectTypeMethodish(this.startNodeAt(RN,ON)),VN.static=YN,VN.key=MN,VN.optional=!1,this.flowObjectTypeSemicolon(),this.finishNode(VN,"ObjectTypeProperty")},SN.flowParseObjectTypeCallProperty=function(RN,ON){var YN=this.startNode();return RN.static=ON,RN.value=this.flowParseObjectTypeMethodish(YN),this.flowObjectTypeSemicolon(),this.finishNode(RN,"ObjectTypeCallProperty")},SN.flowParseObjectType=function(RN,ON){var YN=this.state.inType;this.state.inType=!0;var MN=this.startNode(),XN=!1,VN,UN;MN.callProperties=[],MN.properties=[],MN.indexers=[];var WN,JN;for(ON&&this.match(XP.braceBarL)?(this.expect(XP.braceBarL),WN=XP.braceBarR,JN=!0):(this.expect(XP.braceL),WN=XP.braceR,JN=!1),MN.exact=JN;!this.match(WN);){var ZN=!1,KN=this.state.start,QN=this.state.startLoc;VN=this.startNode(),RN&&this.isContextual("static")&&this.lookahead().type!==XP.colon&&(this.next(),XN=!0);var $N=this.state.start,Sk=this.flowParseVariance();this.match(XP.bracketL)?MN.indexers.push(this.flowParseObjectTypeIndexer(VN,XN,Sk)):this.match(XP.parenL)||this.isRelational("<")?(Sk&&this.unexpected($N),MN.callProperties.push(this.flowParseObjectTypeCallProperty(VN,RN))):(UN=this.flowParseObjectPropertyKey(),this.isRelational("<")||this.match(XP.parenL)?(Sk&&this.unexpected($N),MN.properties.push(this.flowParseObjectTypeMethod(KN,QN,XN,UN))):(this.eat(XP.question)&&(ZN=!0),VN.key=UN,VN.value=this.flowParseTypeInitialiser(),VN.optional=ZN,VN.static=XN,VN.variance=Sk,this.flowObjectTypeSemicolon(),MN.properties.push(this.finishNode(VN,"ObjectTypeProperty")))),XN=!1}this.expect(WN);var Tk=this.finishNode(MN,"ObjectTypeAnnotation");return this.state.inType=YN,Tk},SN.flowObjectTypeSemicolon=function(){this.eat(XP.semi)||this.eat(XP.comma)||this.match(XP.braceR)||this.match(XP.braceBarR)||this.unexpected()},SN.flowParseQualifiedTypeIdentifier=function(RN,ON,YN){RN=RN||this.state.start,ON=ON||this.state.startLoc;for(var MN=YN||this.parseIdentifier();this.eat(XP.dot);){var VN=this.startNodeAt(RN,ON);VN.qualification=MN,VN.id=this.parseIdentifier(),MN=this.finishNode(VN,"QualifiedTypeIdentifier")}return MN},SN.flowParseGenericType=function(RN,ON,YN){var MN=this.startNodeAt(RN,ON);return MN.typeParameters=null,MN.id=this.flowParseQualifiedTypeIdentifier(RN,ON,YN),this.isRelational("<")&&(MN.typeParameters=this.flowParseTypeParameterInstantiation()),this.finishNode(MN,"GenericTypeAnnotation")},SN.flowParseTypeofType=function(){var RN=this.startNode();return this.expect(XP._typeof),RN.argument=this.flowParsePrimaryType(),this.finishNode(RN,"TypeofTypeAnnotation")},SN.flowParseTupleType=function(){var RN=this.startNode();for(RN.types=[],this.expect(XP.bracketL);this.state.posZN||1114111=ZN?MN.push(ZN):(ZN-=65536,VN=(ZN>>10)+55296,UN=ZN%1024+56320,MN.push(VN,UN)),(XN+1==WN||16384",nbsp:"\xA0",iexcl:"\xA1",cent:"\xA2",pound:"\xA3",curren:"\xA4",yen:"\xA5",brvbar:"\xA6",sect:"\xA7",uml:"\xA8",copy:"\xA9",ordf:"\xAA",laquo:"\xAB",not:"\xAC",shy:"\xAD",reg:"\xAE",macr:"\xAF",deg:"\xB0",plusmn:"\xB1",sup2:"\xB2",sup3:"\xB3",acute:"\xB4",micro:"\xB5",para:"\xB6",middot:"\xB7",cedil:"\xB8",sup1:"\xB9",ordm:"\xBA",raquo:"\xBB",frac14:"\xBC",frac12:"\xBD",frac34:"\xBE",iquest:"\xBF",Agrave:"\xC0",Aacute:"\xC1",Acirc:"\xC2",Atilde:"\xC3",Auml:"\xC4",Aring:"\xC5",AElig:"\xC6",Ccedil:"\xC7",Egrave:"\xC8",Eacute:"\xC9",Ecirc:"\xCA",Euml:"\xCB",Igrave:"\xCC",Iacute:"\xCD",Icirc:"\xCE",Iuml:"\xCF",ETH:"\xD0",Ntilde:"\xD1",Ograve:"\xD2",Oacute:"\xD3",Ocirc:"\xD4",Otilde:"\xD5",Ouml:"\xD6",times:"\xD7",Oslash:"\xD8",Ugrave:"\xD9",Uacute:"\xDA",Ucirc:"\xDB",Uuml:"\xDC",Yacute:"\xDD",THORN:"\xDE",szlig:"\xDF",agrave:"\xE0",aacute:"\xE1",acirc:"\xE2",atilde:"\xE3",auml:"\xE4",aring:"\xE5",aelig:"\xE6",ccedil:"\xE7",egrave:"\xE8",eacute:"\xE9",ecirc:"\xEA",euml:"\xEB",igrave:"\xEC",iacute:"\xED",icirc:"\xEE",iuml:"\xEF",eth:"\xF0",ntilde:"\xF1",ograve:"\xF2",oacute:"\xF3",ocirc:"\xF4",otilde:"\xF5",ouml:"\xF6",divide:"\xF7",oslash:"\xF8",ugrave:"\xF9",uacute:"\xFA",ucirc:"\xFB",uuml:"\xFC",yacute:"\xFD",thorn:"\xFE",yuml:"\xFF",OElig:"\u0152",oelig:"\u0153",Scaron:"\u0160",scaron:"\u0161",Yuml:"\u0178",fnof:"\u0192",circ:"\u02C6",tilde:"\u02DC",Alpha:"\u0391",Beta:"\u0392",Gamma:"\u0393",Delta:"\u0394",Epsilon:"\u0395",Zeta:"\u0396",Eta:"\u0397",Theta:"\u0398",Iota:"\u0399",Kappa:"\u039A",Lambda:"\u039B",Mu:"\u039C",Nu:"\u039D",Xi:"\u039E",Omicron:"\u039F",Pi:"\u03A0",Rho:"\u03A1",Sigma:"\u03A3",Tau:"\u03A4",Upsilon:"\u03A5",Phi:"\u03A6",Chi:"\u03A7",Psi:"\u03A8",Omega:"\u03A9",alpha:"\u03B1",beta:"\u03B2",gamma:"\u03B3",delta:"\u03B4",epsilon:"\u03B5",zeta:"\u03B6",eta:"\u03B7",theta:"\u03B8",iota:"\u03B9",kappa:"\u03BA",lambda:"\u03BB",mu:"\u03BC",nu:"\u03BD",xi:"\u03BE",omicron:"\u03BF",pi:"\u03C0",rho:"\u03C1",sigmaf:"\u03C2",sigma:"\u03C3",tau:"\u03C4",upsilon:"\u03C5",phi:"\u03C6",chi:"\u03C7",psi:"\u03C8",omega:"\u03C9",thetasym:"\u03D1",upsih:"\u03D2",piv:"\u03D6",ensp:"\u2002",emsp:"\u2003",thinsp:"\u2009",zwnj:"\u200C",zwj:"\u200D",lrm:"\u200E",rlm:"\u200F",ndash:"\u2013",mdash:"\u2014",lsquo:"\u2018",rsquo:"\u2019",sbquo:"\u201A",ldquo:"\u201C",rdquo:"\u201D",bdquo:"\u201E",dagger:"\u2020",Dagger:"\u2021",bull:"\u2022",hellip:"\u2026",permil:"\u2030",prime:"\u2032",Prime:"\u2033",lsaquo:"\u2039",rsaquo:"\u203A",oline:"\u203E",frasl:"\u2044",euro:"\u20AC",image:"\u2111",weierp:"\u2118",real:"\u211C",trade:"\u2122",alefsym:"\u2135",larr:"\u2190",uarr:"\u2191",rarr:"\u2192",darr:"\u2193",harr:"\u2194",crarr:"\u21B5",lArr:"\u21D0",uArr:"\u21D1",rArr:"\u21D2",dArr:"\u21D3",hArr:"\u21D4",forall:"\u2200",part:"\u2202",exist:"\u2203",empty:"\u2205",nabla:"\u2207",isin:"\u2208",notin:"\u2209",ni:"\u220B",prod:"\u220F",sum:"\u2211",minus:"\u2212",lowast:"\u2217",radic:"\u221A",prop:"\u221D",infin:"\u221E",ang:"\u2220",and:"\u2227",or:"\u2228",cap:"\u2229",cup:"\u222A",int:"\u222B",there4:"\u2234",sim:"\u223C",cong:"\u2245",asymp:"\u2248",ne:"\u2260",equiv:"\u2261",le:"\u2264",ge:"\u2265",sub:"\u2282",sup:"\u2283",nsub:"\u2284",sube:"\u2286",supe:"\u2287",oplus:"\u2295",otimes:"\u2297",perp:"\u22A5",sdot:"\u22C5",lceil:"\u2308",rceil:"\u2309",lfloor:"\u230A",rfloor:"\u230B",lang:"\u2329",rang:"\u232A",loz:"\u25CA",spades:"\u2660",clubs:"\u2663",hearts:"\u2665",diams:"\u2666"},NN=/^[\da-fA-F]+$/,IN=/^\d+$/;$P.j_oTag=new QP("...",!0,!0),XP.jsxName=new MP("jsxName"),XP.jsxText=new MP("jsxText",{beforeExpr:!0}),XP.jsxTagStart=new MP("jsxTagStart",{startsExpr:!0}),XP.jsxTagEnd=new MP("jsxTagEnd"),XP.jsxTagStart.updateContext=function(){this.state.context.push($P.j_expr),this.state.context.push($P.j_oTag),this.state.exprAllowed=!1},XP.jsxTagEnd.updateContext=function(RN){var ON=this.state.context.pop();ON===$P.j_oTag&&RN===XP.slash||ON===$P.j_cTag?(this.state.context.pop(),this.state.exprAllowed=this.curContext()===$P.j_expr):this.state.exprAllowed=!0};var LN=R_.prototype;LN.jsxReadToken=function(){for(var RN="",ON=this.state.pos;;){this.state.pos>=this.input.length&&this.raise(this.state.start,"Unterminated JSX contents");var YN=this.input.charCodeAt(this.state.pos);switch(YN){case 60:case 123:return this.state.pos===this.state.start?60===YN&&this.state.exprAllowed?(++this.state.pos,this.finishToken(XP.jsxTagStart)):this.getTokenFromCode(YN):(RN+=this.input.slice(ON,this.state.pos),this.finishToken(XP.jsxText,RN));case 38:RN+=this.input.slice(ON,this.state.pos),RN+=this.jsxReadEntity(),ON=this.state.pos;break;default:LA(YN)?(RN+=this.input.slice(ON,this.state.pos),RN+=this.jsxReadNewLine(!0),ON=this.state.pos):++this.state.pos;}}},LN.jsxReadNewLine=function(RN){var ON=this.input.charCodeAt(this.state.pos),YN;return++this.state.pos,13===ON&&10===this.input.charCodeAt(this.state.pos)?(++this.state.pos,YN=RN?"\n":"\r\n"):YN=String.fromCharCode(ON),++this.state.curLine,this.state.lineStart=this.state.pos,YN},LN.jsxReadString=function(RN){for(var ON="",YN=++this.state.pos;;){this.state.pos>=this.input.length&&this.raise(this.state.start,"Unterminated string constant");var MN=this.input.charCodeAt(this.state.pos);if(MN===RN)break;38===MN?(ON+=this.input.slice(YN,this.state.pos),ON+=this.jsxReadEntity(),YN=this.state.pos):LA(MN)?(ON+=this.input.slice(YN,this.state.pos),ON+=this.jsxReadNewLine(!1),YN=this.state.pos):++this.state.pos}return ON+=this.input.slice(YN,this.state.pos++),this.finishToken(XP.string,ON)},LN.jsxReadEntity=function(){for(var RN="",ON=0,MN=this.input[this.state.pos],VN=++this.state.pos,YN;this.state.posON++;){if(MN=this.input[this.state.pos++],";"===MN){"#"===RN[0]?"x"===RN[1]?(RN=RN.substr(2),NN.test(RN)&&(YN=PN(parseInt(RN,16)))):(RN=RN.substr(1),IN.test(RN)&&(YN=PN(parseInt(RN,10)))):YN=_N[RN];break}RN+=MN}return YN?YN:(this.state.pos=VN,"&")},LN.jsxReadWord=function(){var RN,ON=this.state.pos;do RN=this.input.charCodeAt(++this.state.pos);while(NA(RN)||45===RN);return this.finishToken(XP.jsxName,this.input.slice(ON,this.state.pos))},LN.jsxParseIdentifier=function(){var RN=this.startNode();return this.match(XP.jsxName)?RN.name=this.state.value:this.state.type.keyword?RN.name=this.state.type.keyword:this.unexpected(),this.next(),this.finishNode(RN,"JSXIdentifier")},LN.jsxParseNamespacedName=function(){var RN=this.state.start,ON=this.state.startLoc,YN=this.jsxParseIdentifier();if(!this.eat(XP.colon))return YN;var MN=this.startNodeAt(RN,ON);return MN.namespace=YN,MN.name=this.jsxParseIdentifier(),this.finishNode(MN,"JSXNamespacedName")},LN.jsxParseElementName=function(){for(var RN=this.state.start,ON=this.state.startLoc,YN=this.jsxParseNamespacedName();this.eat(XP.dot);){var MN=this.startNodeAt(RN,ON);MN.object=YN,MN.property=this.jsxParseIdentifier(),YN=this.finishNode(MN,"JSXMemberExpression")}return YN},LN.jsxParseAttributeValue=function(){var RN;switch(this.state.type){case XP.braceL:if(RN=this.jsxParseExpressionContainer(),"JSXEmptyExpression"===RN.expression.type)this.raise(RN.start,"JSX attributes must only be assigned a non-empty expression");else return RN;case XP.jsxTagStart:case XP.string:return RN=this.parseExprAtom(),RN.extra=null,RN;default:this.raise(this.state.start,"JSX value should be either an expression or a quoted JSX text");}},LN.jsxParseEmptyExpression=function(){var RN=this.startNodeAt(this.state.lastTokEnd,this.state.lastTokEndLoc);return this.finishNodeAt(RN,"JSXEmptyExpression",this.state.start,this.state.startLoc)},LN.jsxParseSpreadChild=function(){var RN=this.startNode();return this.expect(XP.braceL),this.expect(XP.ellipsis),RN.expression=this.parseExpression(),this.expect(XP.braceR),this.finishNode(RN,"JSXSpreadChild")},LN.jsxParseExpressionContainer=function(){var RN=this.startNode();return this.next(),RN.expression=this.match(XP.braceR)?this.jsxParseEmptyExpression():this.parseExpression(),this.expect(XP.braceR),this.finishNode(RN,"JSXExpressionContainer")},LN.jsxParseAttribute=function(){var RN=this.startNode();return this.eat(XP.braceL)?(this.expect(XP.ellipsis),RN.argument=this.parseMaybeAssign(),this.expect(XP.braceR),this.finishNode(RN,"JSXSpreadAttribute")):(RN.name=this.jsxParseNamespacedName(),RN.value=this.eat(XP.eq)?this.jsxParseAttributeValue():null,this.finishNode(RN,"JSXAttribute"))},LN.jsxParseOpeningElementAt=function(RN,ON){var YN=this.startNodeAt(RN,ON);for(YN.attributes=[],YN.name=this.jsxParseElementName();!this.match(XP.slash)&&!this.match(XP.jsxTagEnd);)YN.attributes.push(this.jsxParseAttribute());return YN.selfClosing=this.eat(XP.slash),this.expect(XP.jsxTagEnd),this.finishNode(YN,"JSXOpeningElement")},LN.jsxParseClosingElementAt=function(RN,ON){var YN=this.startNodeAt(RN,ON);return YN.name=this.jsxParseElementName(),this.expect(XP.jsxTagEnd),this.finishNode(YN,"JSXClosingElement")},LN.jsxParseElementAt=function(RN,ON){var YN=this.startNodeAt(RN,ON),MN=[],VN=this.jsxParseOpeningElementAt(RN,ON),UN=null;if(!VN.selfClosing){contents:for(;;)switch(this.state.type){case XP.jsxTagStart:if(RN=this.state.start,ON=this.state.startLoc,this.next(),this.eat(XP.slash)){UN=this.jsxParseClosingElementAt(RN,ON);break contents}MN.push(this.jsxParseElementAt(RN,ON));break;case XP.jsxText:MN.push(this.parseExprAtom());break;case XP.braceL:this.lookahead().type===XP.ellipsis?MN.push(this.jsxParseSpreadChild()):MN.push(this.jsxParseExpressionContainer());break;default:this.unexpected();}VA(UN.name)!==VA(VN.name)&&this.raise(UN.start,"Expected corresponding JSX closing tag for <"+VA(VN.name)+">")}return YN.openingElement=VN,YN.closingElement=UN,YN.children=MN,this.match(XP.relational)&&"<"===this.state.value&&this.raise(this.state.start,"Adjacent JSX elements must be wrapped in an enclosing tag"),this.finishNode(YN,"JSXElement")},LN.jsxParseElement=function(){var RN=this.state.start,ON=this.state.startLoc;return this.next(),this.jsxParseElementAt(RN,ON)},I_.flow=function(RN){RN.extend("parseFunctionBody",function(ON){return function(YN,MN){return this.match(XP.colon)&&!MN&&(YN.returnType=this.flowParseTypeAnnotation()),ON.call(this,YN,MN)}}),RN.extend("parseStatement",function(ON){return function(YN,MN){if(this.state.strict&&this.match(XP.name)&&"interface"===this.state.value){var VN=this.startNode();return this.next(),this.flowParseInterface(VN)}return ON.call(this,YN,MN)}}),RN.extend("parseExpressionStatement",function(ON){return function(YN,MN){if("Identifier"===MN.type)if("declare"===MN.name){if(this.match(XP._class)||this.match(XP.name)||this.match(XP._function)||this.match(XP._var))return this.flowParseDeclare(YN);}else if(this.match(XP.name)){if("interface"===MN.name)return this.flowParseInterface(YN);if("type"===MN.name)return this.flowParseTypeAlias(YN)}return ON.call(this,YN,MN)}}),RN.extend("shouldParseExportDeclaration",function(ON){return function(){return this.isContextual("type")||this.isContextual("interface")||ON.call(this)}}),RN.extend("parseConditional",function(ON){return function(YN,MN,VN,UN,XN){if(XN&&this.match(XP.question)){var WN=this.state.clone();try{return ON.call(this,YN,MN,VN,UN)}catch(JN){if(JN instanceof SyntaxError)return this.state=WN,XN.start=JN.pos||this.state.start,YN;throw JN}}return ON.call(this,YN,MN,VN,UN)}}),RN.extend("parseParenItem",function(ON){return function(YN,MN,VN){if(YN=ON.call(this,YN,MN,VN),this.eat(XP.question)&&(YN.optional=!0),this.match(XP.colon)){var UN=this.startNodeAt(MN,VN);return UN.expression=YN,UN.typeAnnotation=this.flowParseTypeAnnotation(),this.finishNode(UN,"TypeCastExpression")}return YN}}),RN.extend("parseExport",function(ON){return function(YN){return YN=ON.call(this,YN),"ExportNamedDeclaration"===YN.type&&(YN.exportKind=YN.exportKind||"value"),YN}}),RN.extend("parseExportDeclaration",function(ON){return function(YN){if(this.isContextual("type")){YN.exportKind="type";var MN=this.startNode();return this.next(),this.match(XP.braceL)?(YN.specifiers=this.parseExportSpecifiers(),this.parseExportFrom(YN),null):this.flowParseTypeAlias(MN)}if(this.isContextual("interface")){YN.exportKind="type";var VN=this.startNode();return this.next(),this.flowParseInterface(VN)}return ON.call(this,YN)}}),RN.extend("parseClassId",function(ON){return function(YN){ON.apply(this,arguments),this.isRelational("<")&&(YN.typeParameters=this.flowParseTypeParameterDeclaration())}}),RN.extend("isKeyword",function(ON){return function(YN){return this.state.inType&&"void"===YN?!1:ON.call(this,YN)}}),RN.extend("readToken",function(ON){return function(YN){return this.state.inType&&(62===YN||60===YN)?this.finishOp(XP.relational,1):ON.call(this,YN)}}),RN.extend("jsx_readToken",function(ON){return function(){if(!this.state.inType)return ON.call(this)}}),RN.extend("toAssignable",function(ON){return function(YN,MN,VN){return"TypeCastExpression"===YN.type?ON.call(this,this.typeCastToParameter(YN),MN,VN):ON.call(this,YN,MN,VN)}}),RN.extend("toAssignableList",function(ON){return function(YN,MN,VN){for(var UN=0;UNNl(IA,TA,PA),TA)}const _A=PA(Kb.from(SA));return Ug.propagateBreaks(_A),_A}}.printAstToDoc,JT={printDocToString:function(SA,TA,PA){PA=PA||"\n";let _A=0,NA=[[0,Sx,SA]],IA=[],LA=!1,RA="";for(;0!==NA.length;){const YA=NA.pop(),MA=YA[0],VA=YA[1],UA=YA[2];if("string"==typeof UA)IA.push(UA),_A+=UA.length;else switch(UA.type){case"concat":for(var OA=UA.parts.length-1;0<=OA;OA--)NA.push([MA,VA,UA.parts[OA]]);break;case"indent":NA.push([MA+UA.n,VA,UA.contents]);break;case"group":switch(VA){case Tx:if(!LA){NA.push([MA,UA.break?Sx:Tx,UA.contents]);break}case Sx:LA=!1;const XA=[MA,Tx,UA.contents];let WA=TA-_A;if(!UA.break&&Td(XA,NA,WA))NA.push(XA);else if(UA.expandedStates){const JA=UA.expandedStates[UA.expandedStates.length-1];if(UA.break){NA.push([MA,Sx,JA]);break}else for(var OA=1;OA=UA.expandedStates.length){NA.push([MA,Sx,JA]);break}else{const ZA=UA.expandedStates[OA],KA=[MA,Tx,ZA];if(Td(KA,NA,WA)){NA.push(KA);break}}}else NA.push([MA,Sx,UA.contents]);}break;case"if-break":VA===Sx&&UA.breakContents&&NA.push([MA,VA,UA.breakContents]),VA===Tx&&UA.flatContents&&NA.push([MA,VA,UA.flatContents]);break;case"line-suffix":RA+=UA.contents;break;case"line":switch(VA){case Tx:if(!UA.hard){UA.soft||(IA.push(" "),_A+=1);break}else LA=!0;case Sx:UA.literal?(IA.push(RA+PA),_A=0):(0{null==TA[PA]&&(TA[PA]=OT[PA])}),TA}}.normalize,KT={parseWithFlow:function(SA){const TA=MT.parse(SA,{esproposal_class_instance_fields:!0,esproposal_class_static_fields:!0,esproposal_export_star_as:!0});if(0 normalizeEscapes(line)) + ); case "TemplateLiteral": var expressions = path.map(print, "expressions"); @@ -1708,17 +1712,18 @@ function printArgumentsList(path, options, print) { // This is just an optimization; I think we could return the // conditional group for all function calls, but it's more expensive // so only do it for specific forms. - const groupLastArg = lastArg.type === "ObjectExpression" || - lastArg.type === "ArrayExpression" || - lastArg.type === "FunctionExpression" || - lastArg.type === "ArrowFunctionExpression" && - (lastArg.body.type === "BlockStatement" || - lastArg.body.type === "ArrowFunctionExpression" || - lastArg.body.type === "ObjectExpression" || - lastArg.body.type === "ArrayExpression" || - lastArg.body.type === "CallExpression" || - lastArg.body.type === "JSXElement") || - lastArg.type === "NewExpression"; + const groupLastArg = (!lastArg.comments || !lastArg.comments.length) && + (lastArg.type === "ObjectExpression" || + lastArg.type === "ArrayExpression" || + lastArg.type === "FunctionExpression" || + lastArg.type === "ArrowFunctionExpression" && + (lastArg.body.type === "BlockStatement" || + lastArg.body.type === "ArrowFunctionExpression" || + lastArg.body.type === "ObjectExpression" || + lastArg.body.type === "ArrayExpression" || + lastArg.body.type === "CallExpression" || + lastArg.body.type === "JSXElement") || + lastArg.type === "NewExpression"); if (groupLastArg) { const shouldBreak = printed.slice(0, -1).some(willBreak); @@ -1760,7 +1765,8 @@ function printArgumentsList(path, options, print) { ifBreak(options.trailingComma ? "," : ""), softline, ")" - ]) + ]), + { shouldBreak: printed.some(willBreak) } ); } @@ -2014,86 +2020,150 @@ function printMemberLookup(path, options, print) { // .filter(x => x > 10) // .some(x => x % 2) // -// where there is a "chain" of function calls on the result of -// previous expressions. We want to format them like above so they -// are consistently aligned. -// -// The way we do is by eagerly traversing the AST tree and -// re-shape it into a list of calls on member expressions. This -// lets us implement a heuristic easily for when we want to format -// it: if there are more than 1 calls on a member expression that -// pass in a function, we treat it like the above. -function printMemberChain(node, options, print) { - const nodes = []; - let leftmost = node; - let leftmostParent = null; - // Traverse down and gather up all of the calls on member - // expressions. This flattens it out into a list that we can - // easily analyze. - while ( - leftmost.type === "CallExpression" && - leftmost.callee.type === "MemberExpression" - ) { - nodes.push({ member: leftmost.callee, call: leftmost }); - leftmostParent = leftmost; - leftmost = leftmost.callee.object; - } - nodes.reverse(); - - // There are two kinds of formats we want to specialize: first, - // if there are multiple calls on lookups we want to group them - // together so they will all break at the same time. Second, - // it's a chain if there 2 or more calls pass in functions and - // we want to forcibly break all of the lookups onto new lines - // and indent them. - function argIsFunction(call) { - if (call.arguments.length > 0) { - const type = call.arguments[0].type; - return typeIsFunction(type); +// The way it is structured in the AST is via a nested sequence of +// MemberExpression and CallExpression. We need to traverse the AST +// and make groups out of it to print it in the desired way. +function printMemberChain(path, options, print) { + // The first phase is to linearize the AST by traversing it down. + // + // a().b() + // has the following AST structure: + // CallExpression(MemberExpression(CallExpression(Identifier))) + // and we transform it into + // [Identifier, CallExpression, MemberExpression, CallExpression] + const printedNodes = []; + + function rec(path) { + const node = path.getValue(); + if (node.type === "CallExpression") { + printedNodes.unshift({ + node: node, + printed: printArgumentsList(path, options, print) + }); + path.call(callee => rec(callee), "callee"); + } else if (node.type === "MemberExpression") { + printedNodes.unshift({ + node: node, + printed: comments.printComments(path, p => printMemberLookup(path, options, print), options) + }); + path.call(object => rec(object), "object"); + } else { + printedNodes.unshift({ + node: node, + printed: path.call(print) + }); } - return false; } - const hasMultipleLookups = nodes.length > 1; - const isChain = hasMultipleLookups && - nodes.filter(n => argIsFunction(n.call)).length > 1; - - if (hasMultipleLookups) { - const leftmostPrinted = FastPath - .from(leftmostParent) - .call(print, "callee", "object"); - const nodesPrinted = nodes.map(node => ({ - property: printMemberLookup(FastPath.from(node.member), options, print), - args: printArgumentsList(FastPath.from(node.call), options, print) - })); - const fullyExpanded = concat([ - leftmostPrinted, - concat(nodesPrinted.map(node => { - return indent( - options.tabWidth, - concat([hardline, node.property, node.args]) - ); - })) - ]); - - // If it's a chain, force it to be fully expanded and print a - // newline before each lookup. If we're not sure if it's a - // chain (it *might* be printed on one line, but if gets too - // long it will be printed as a chain), we need to use - // `conditionalGroup` to describe both of these - // representations. We cannot describe both at the same time - // because the fully expanded form adds indentation, which - // messes up anything with hard lines. - if (isChain) { - return fullyExpanded; + rec(path); + + + // Once we have a linear list of printed nodes, we want to create groups out + // of it. + // + // a().b.c().d().e + // will be grouped as + // [ + // [Identifier, CallExpression], + // [MemberExpression, MemberExpression, CallExpression], + // [MemberExpression, CallExpression], + // [MemberExpression], + // ] + // so that we can print it as + // a() + // .b.c() + // .d() + // .e + + // The first group is the first node followed by as many CallExpression as possible + var groups = []; + var currentGroup = [printedNodes[0]]; + var i = 1; + for (; i < printedNodes.length; ++i) { + if (printedNodes[i].node.type === "CallExpression") { + currentGroup.push(printedNodes[i]); } else { - return conditionalGroup([ - concat([leftmostPrinted, concat(nodesPrinted.map(node => { - return concat([node.property, node.args]); - }))]), - fullyExpanded - ]); + break; } } + groups.push(currentGroup); + currentGroup = []; + + // Then, each following group is a sequence of MemberExpression followed by + // a sequence of CallExpression. To compute it, we keep adding things to the + // group until we has seen a CallExpression in the past and reach a + // MemberExpression + var hasSeenCallExpression = false; + for (; i < printedNodes.length; ++i) { + if (hasSeenCallExpression && + printedNodes[i].node.type === "MemberExpression") { + groups.push(currentGroup); + currentGroup = []; + hasSeenCallExpression = false; + } + + if (printedNodes[i].node.type === "CallExpression") { + hasSeenCallExpression = true; + } + currentGroup.push(printedNodes[i]); + } + if (currentGroup.length > 0) { + groups.push(currentGroup); + } + + // There are cases like Object.keys(), Observable.of(), _.values() where + // they are the subject of all the chained calls and therefore should + // be kept on the same line: + // + // Object.keys(items) + // .filter(x => x) + // .map(x => x) + // + // In order to detect those cases, we use an heuristic: if the first + // node is just an identifier with the name starting with a capital + // letter or just a sequence of _$. The rationale is that they are + // likely to be factories. + if (groups[0].length === 1 && + groups[0][0].node.type === "Identifier" && + groups[0][0].node.name.match(/(^[A-Z])|^[_$]+$/) && + groups.length >= 2) { + // Push all the values of groups[0] at the beginning of groups[1] + [].unshift.apply(groups[1], groups[0]); + // Remove groups[0] + groups.splice(0, 1); + } + + function printGroup(printedGroup) { + return concat(printedGroup.map(tuple => tuple.printed)); + } + + const printedGroups = groups.map(printGroup); + + const oneLine = concat(printedGroups); + + // If we only have a single `.`, we shouldn't do anything fancy and just + // render everything concatenated together. + if (groups.length <= 2) { + return group(oneLine); + } + + const expanded = concat([ + printGroup(groups[0]), + indent( + options.tabWidth, + group(concat([ + hardline, + join(hardline, groups.slice(1).map(printGroup)) + ])) + ) + ]); + + // If any group but the last one has a hard line, we want to force expand + // it. If the last group is a function it's okay to inline if it fits. + if (printedGroups.slice(0, -1).some(willBreak)) { + return group(expanded); + } + + return conditionalGroup([oneLine, expanded]); } function isEmptyJSXElement(node) { @@ -2138,9 +2208,10 @@ function printJSXChildren(path, options, print) { // correctly escaped (since it parsed). // We really want to use value and re-escape it ourself when possible // though. - const value = options.parser === "flow" + const partiallyEscapedValue = options.parser === "flow" ? child.raw : util.htmlEscapeInsideAngleBracket(child.value); + const value = partiallyEscapedValue.replace(/\u00a0/g, ' '); if (/\S/.test(value)) { // treat each line of text as its own entity @@ -2520,7 +2591,37 @@ function makeString(rawContent, enclosingQuote) { return match; }); - return enclosingQuote + newContent + enclosingQuote; + return enclosingQuote + normalizeEscapes(newContent) + enclosingQuote; +} + +function printRegex(regexData) { + const pattern = regexData.pattern; + const flags = regexData.flags; + const skipES2015 = !flags.includes("u"); + + return "/" + normalizeEscapes(pattern, skipES2015) + "/" + flags; +} + +function normalizeEscapes(rawContent, skipES2015) { + // Matches \x escapes and \u escapes (including the ES2015 variant) and other + // escapes. + const regex = /(\\x[\da-f]{2}|\\u[\da-f]{4}|\\u\{[\da-f]+\})|(\\[\s\S])/gi; + + return rawContent.replace(regex, (match, escape, otherEscape) => { + // Return other escapes as-is. + if (otherEscape) { + return otherEscape; + } + + // Regexes without the /u flag do not support ES2015 unicode escapes, so + // return the match as-is. + if (skipES2015 && escape[2] === "{") { + return escape; + } + + // Print all \x and \u escapes lowercase. + return escape.toLowerCase(); + }); } function printNumber(rawNumber) { @@ -2564,7 +2665,8 @@ function shouldPrintSameLine(node) { type === "ObjectPattern" || type === "StringLiteral" || type === "ThisExpression" || - type === "TypeCastExpression"; + type === "TypeCastExpression" || + type === "UnaryExpression"; } function printAstToDoc(ast, options) { diff --git a/src/util.js b/src/util.js index 87b076cb62d3..6d17a58b2a86 100644 --- a/src/util.js +++ b/src/util.js @@ -125,6 +125,33 @@ function skip(chars) { const skipWhitespace = skip(/\s/); const skipSpaces = skip(" \t"); const skipToLineEnd = skip("; \t"); +const skipEverythingButNewLine = skip(/[^\r\n]/); + +function skipInlineComment(text, index) { + if (index === false) { + return false; + } + + if (text.charAt(index) === "/" && text.charAt(index + 1) === "*") { + for (var i = index + 2; i < text.length; ++i) { + if (text.charAt(i) === "*" && text.charAt(i + 1) === "/") { + return i + 2; + } + } + } + return index; +} + +function skipTrailingComment(text, index) { + if (index === false) { + return false; + } + + if (text.charAt(index) === "/" && text.charAt(index + 1) === "/") { + return skipEverythingButNewLine(text, index); + } + return index; +} // This one doesn't use the above helper function because it wants to // test \r\n in order and `skip` doesn't support ordering and we only @@ -169,8 +196,16 @@ function hasNewlineInRange(text, start, end) { } function isNextLineEmpty(text, node) { + let oldIdx = null; let idx = locEnd(node); idx = skipToLineEnd(text, idx); + while (idx !== oldIdx) { + // We need to skip all the potential trailing inline comments + oldIdx = idx; + idx = skipInlineComment(text, idx); + idx = skipSpaces(text, idx); + } + idx = skipTrailingComment(text, idx); idx = skipNewline(text, idx); return hasNewline(text, idx); } diff --git a/tests/break-calls/__snapshots__/jsfmt.spec.js.snap b/tests/break-calls/__snapshots__/jsfmt.spec.js.snap new file mode 100644 index 000000000000..f60f0bc14720 --- /dev/null +++ b/tests/break-calls/__snapshots__/jsfmt.spec.js.snap @@ -0,0 +1,14 @@ +exports[`test break.js 1`] = ` +"h(f(g(() => { + a +}))) +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +h( + f( + g(() => { + a; + }) + ) +); +" +`; diff --git a/tests/break-calls/break.js b/tests/break-calls/break.js new file mode 100644 index 000000000000..f7141fbccec7 --- /dev/null +++ b/tests/break-calls/break.js @@ -0,0 +1,3 @@ +h(f(g(() => { + a +}))) diff --git a/tests/break-calls/jsfmt.spec.js b/tests/break-calls/jsfmt.spec.js new file mode 100644 index 000000000000..989047bccc52 --- /dev/null +++ b/tests/break-calls/jsfmt.spec.js @@ -0,0 +1 @@ +run_spec(__dirname); diff --git a/tests/comments/__snapshots__/jsfmt.spec.js.snap b/tests/comments/__snapshots__/jsfmt.spec.js.snap index 6888c6572a51..3d1df16a7d00 100644 --- a/tests/comments/__snapshots__/jsfmt.spec.js.snap +++ b/tests/comments/__snapshots__/jsfmt.spec.js.snap @@ -26,6 +26,9 @@ exports[`test blank.js 2`] = ` exports[`test dangling.js 1`] = ` "var x = {/* dangling */}; +var x = { + // dangling +}; var x = [/* dangling */]; function x() { /* dangling */ @@ -33,6 +36,9 @@ function x() { declare class Foo extends Qux {/* dangling */} ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ var x = {/* dangling */}; +var x = { + // dangling +}; var x = [/* dangling */]; function x() { /* dangling */ @@ -43,6 +49,9 @@ declare class Foo extends Qux {/* dangling */} exports[`test dangling.js 2`] = ` "var x = {/* dangling */}; +var x = { + // dangling +}; var x = [/* dangling */]; function x() { /* dangling */ @@ -50,6 +59,9 @@ function x() { declare class Foo extends Qux {/* dangling */} ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ var x = {/* dangling */}; +var x = { + // dangling +}; var x = [/* dangling */]; function x() { /* dangling */ @@ -58,6 +70,94 @@ declare class Foo extends Qux {/* dangling */} " `; +exports[`test if.js 1`] = ` +"if (1) +// comment +{ + false +} +// comment +else if (2) + true +// multi +// ple +// lines +else if (3) + // existing comment + true +// okay? +else if (4) { + // empty with existing comment +} +// comment +else { +} +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +if (1) { + // comment + false; +} else if (2) + // comment + true; +else if (3) + // multi + // ple + // lines + // existing comment + true; +else if (4) { + // okay? + // empty with existing comment +} else { + // comment +} +" +`; + +exports[`test if.js 2`] = ` +"if (1) +// comment +{ + false +} +// comment +else if (2) + true +// multi +// ple +// lines +else if (3) + // existing comment + true +// okay? +else if (4) { + // empty with existing comment +} +// comment +else { +} +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +if (1) { + // comment + false; +} else if (2) + // comment + true; +else if (3) + // multi + // ple + // lines + // existing comment + true; +else if (4) { + // okay? + // empty with existing comment +} else { + // comment +} +" +`; + exports[`test issues.js 1`] = ` "// Does not need to break as it fits in 80 columns this.call(a, /* comment */ b); @@ -161,6 +261,11 @@ else { // The comment makes the line break in a weird way const result = asyncExecute(\'non_existing_command\', /* args */ []); + +// The closing paren is printed on the same line as the comment +foo({} + // Hi +); ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Does not need to break as it fits in 80 columns this.call(a, /* comment */ b); @@ -211,12 +316,14 @@ export type BuckWebSocketMessage = }; // Missing one level of indentation because of the comment -const rootEpic = (actions, store) => - combineEpics(...epics)(actions, store).// Log errors and continue. - catch((err, stream) => { - getLogger().error(err); - return stream; - }); +const rootEpic = (actions, store) => combineEpics(...epics)( + actions, + store +)// Log errors and continue. +.catch((err, stream) => { + getLogger().error(err); + return stream; +}); // Two extra levels of indentation because of the comment export type AsyncExecuteOptions = @@ -239,12 +346,14 @@ const regex = new RegExp( // The comment is moved and doesn\'t trigger the eslint rule anymore import path from \"path\"; // eslint-disable-line nuclide-internal/prefer-nuclide-uri + // Comments disappear in-between MemberExpressions -Observable.of(process).// Don\'t complete until we say so! -merge(Observable.never()).// Get the errors. -takeUntil( - throwOnError ? errors.flatMap(Observable.throw) : errors -).takeUntil(exit); +Observable.of(process) + // Don\'t complete until we say so! + .merge(Observable.never()) + // Get the errors. + .takeUntil(throwOnError ? errors.flatMap(Observable.throw) : errors) + .takeUntil(exit); /* Comments disappear inside of JSX*/
@@ -263,13 +372,18 @@ if (1) { // Comments trigger invalid JavaScript in-between else if if (1) { -} else +} else { // Comment - { - } +} // The comment makes the line break in a weird way const result = asyncExecute(\"non_existing_command\", /* args */ []); + +// The closing paren is printed on the same line as the comment +foo( + {} + // Hi +); " `; @@ -376,6 +490,11 @@ else { // The comment makes the line break in a weird way const result = asyncExecute(\'non_existing_command\', /* args */ []); + +// The closing paren is printed on the same line as the comment +foo({} + // Hi +); ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Does not need to break as it fits in 80 columns this.call(a, /* comment */ b); @@ -426,12 +545,14 @@ export type BuckWebSocketMessage = }; // Missing one level of indentation because of the comment -const rootEpic = (actions, store) => - combineEpics(...epics)(actions, store).// Log errors and continue. - catch((err, stream) => { - getLogger().error(err); - return stream; - }); +const rootEpic = (actions, store) => combineEpics(...epics)( + actions, + store +)// Log errors and continue. +.catch((err, stream) => { + getLogger().error(err); + return stream; +}); // Two extra levels of indentation because of the comment export type AsyncExecuteOptions = @@ -454,12 +575,14 @@ const regex = new RegExp( // The comment is moved and doesn\'t trigger the eslint rule anymore import path from \"path\"; // eslint-disable-line nuclide-internal/prefer-nuclide-uri + // Comments disappear in-between MemberExpressions -Observable.of(process).// Don\'t complete until we say so! -merge(Observable.never()).// Get the errors. -takeUntil( - throwOnError ? errors.flatMap(Observable.throw) : errors -).takeUntil(exit); +Observable.of(process) + // Don\'t complete until we say so! + .merge(Observable.never()) + // Get the errors. + .takeUntil(throwOnError ? errors.flatMap(Observable.throw) : errors) + .takeUntil(exit); // Comments disappear inside of JSX
@@ -478,12 +601,17 @@ if (1) { // Comments trigger invalid JavaScript in-between else if if (1) { -} else +} else { // Comment - { - } +} // The comment makes the line break in a weird way const result = asyncExecute(\"non_existing_command\", /* args */ []); + +// The closing paren is printed on the same line as the comment +foo( + {} + // Hi +); " `; diff --git a/tests/comments/dangling.js b/tests/comments/dangling.js index 7049ef07fd83..22208dee5baf 100644 --- a/tests/comments/dangling.js +++ b/tests/comments/dangling.js @@ -1,4 +1,7 @@ var x = {/* dangling */}; +var x = { + // dangling +}; var x = [/* dangling */]; function x() { /* dangling */ diff --git a/tests/comments/if.js b/tests/comments/if.js new file mode 100644 index 000000000000..a542793bd7ad --- /dev/null +++ b/tests/comments/if.js @@ -0,0 +1,21 @@ +if (1) +// comment +{ + false +} +// comment +else if (2) + true +// multi +// ple +// lines +else if (3) + // existing comment + true +// okay? +else if (4) { + // empty with existing comment +} +// comment +else { +} diff --git a/tests/comments/issues.js b/tests/comments/issues.js index e48543cd27cc..c95f79c4ac4f 100644 --- a/tests/comments/issues.js +++ b/tests/comments/issues.js @@ -100,3 +100,8 @@ else { // The comment makes the line break in a weird way const result = asyncExecute('non_existing_command', /* args */ []); + +// The closing paren is printed on the same line as the comment +foo({} + // Hi +); diff --git a/tests/flow/annot/__snapshots__/jsfmt.spec.js.snap b/tests/flow/annot/__snapshots__/jsfmt.spec.js.snap index 63ea0641b4ae..76159fc450af 100644 --- a/tests/flow/annot/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/annot/__snapshots__/jsfmt.spec.js.snap @@ -149,6 +149,7 @@ function foo() { } ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ let myClassInstance: MyClass = null; + // forward ref ok, null ~> class error function bar(): MyClass { @@ -156,6 +157,7 @@ function bar(): MyClass { } class MyClass {} // looked up above + function foo() { let myClassInstance: MyClass = mk(); // ok (no confusion across scopes) function mk() { diff --git a/tests/flow/arith/__snapshots__/jsfmt.spec.js.snap b/tests/flow/arith/__snapshots__/jsfmt.spec.js.snap index d34e73708c97..f80e6347d39b 100644 --- a/tests/flow/arith/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/arith/__snapshots__/jsfmt.spec.js.snap @@ -134,20 +134,24 @@ function bar5(x: number, y?: ?number) { num(null + null); // === 0 num(undefined + undefined); // === NaN + num(null + 1); // === 1 num(1 + null); // === 1 num(undefined + 1); // === NaN num(1 + undefined); // === NaN + num(null + true); // === 1 num(true + null); // === 1 num(undefined + true); // === NaN num(true + undefined); // === NaN + str(\"foo\" + true); // error str(true + \"foo\"); // error str(\"foo\" + null); // error str(null + \"foo\"); // error str(\"foo\" + undefined); // error str(undefined + \"foo\"); // error + let tests = [ function(x: mixed, y: mixed) { x + y; // error @@ -170,6 +174,7 @@ let tests = [ function(x: any, y: number, z: string) { (x + y: string); // ok (y + x: string); // ok + (x + z: empty); // error, string ~> empty (z + x: empty); // error, string ~> empty } @@ -197,6 +202,7 @@ x **= 4; let y: string = \"123\"; y **= 2; // error + 1 + 2 ** 3 + 4; 2 ** 2; (-2) ** 2; @@ -304,9 +310,11 @@ let tests = [ ({ foo: 1 }) < { foo: 1 }; // error \"foo\" < { foo: 1 }; // error ({ foo: 1 }) < \"foo\"; // error + var x = (null: ?number); 1 < x; // 2 errors: null !~> number; undefined !~> number x < 1; // 2 errors: null !~> number; undefined !~> number + null < null; // error undefined < null; // error null < undefined; // error diff --git a/tests/flow/array-filter/__snapshots__/jsfmt.spec.js.snap b/tests/flow/array-filter/__snapshots__/jsfmt.spec.js.snap index e37e925e84bb..4cc7e369f68c 100644 --- a/tests/flow/array-filter/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/array-filter/__snapshots__/jsfmt.spec.js.snap @@ -41,13 +41,15 @@ console.log(filteredItems); /* @flow */ function filterItems(items: Array): Array { - return items.map(item => { - if (typeof item === \"string\") { - return item.length > 2 ? item : null; - } else { - return item * 10; - } - }).filter(Boolean); + return items + .map(item => { + if (typeof item === \"string\") { + return item.length > 2 ? item : null; + } else { + return item * 10; + } + }) + .filter(Boolean); } const filteredItems = filterItems([\"foo\", \"b\", 1, 2]); diff --git a/tests/flow/arraylib/__snapshots__/jsfmt.spec.js.snap b/tests/flow/arraylib/__snapshots__/jsfmt.spec.js.snap index d0c6a5bbd845..b5be6bc4280c 100644 --- a/tests/flow/arraylib/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/arraylib/__snapshots__/jsfmt.spec.js.snap @@ -83,6 +83,7 @@ var k: Array = h.concat(h); var l: Array = h.concat(1, 2, 3); var m: Array = h.concat(\"a\", \"b\", \"c\"); var n: Array = h.concat(\"a\", \"b\", \"c\"); // Error + function reduce_test() { /* Adapted from the following source: * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/Reduce diff --git a/tests/flow/arrows/__snapshots__/jsfmt.spec.js.snap b/tests/flow/arrows/__snapshots__/jsfmt.spec.js.snap index d9f4e41c8bd5..963c66cba88b 100644 --- a/tests/flow/arrows/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/arrows/__snapshots__/jsfmt.spec.js.snap @@ -18,6 +18,7 @@ var ident = (x: T): T => x; var add = (x: number, y: number): number => x + y; var bad = (x: number): string => x; // Error! + var ident = (x: T): T => x; (ident(1): number); (ident(\"hi\"): number); // Error diff --git a/tests/flow/async/__snapshots__/jsfmt.spec.js.snap b/tests/flow/async/__snapshots__/jsfmt.spec.js.snap index 064fbc1b2086..81bb494d7997 100644 --- a/tests/flow/async/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/async/__snapshots__/jsfmt.spec.js.snap @@ -337,6 +337,7 @@ function test2() { } var voidoid2: () => Promise = voidoid1; // ok + var voidoid3: () => void = voidoid1; // error, void != Promise } diff --git a/tests/flow/binding/__snapshots__/jsfmt.spec.js.snap b/tests/flow/binding/__snapshots__/jsfmt.spec.js.snap index c1c8c54e5e5e..239ca9dc4f51 100644 --- a/tests/flow/binding/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/binding/__snapshots__/jsfmt.spec.js.snap @@ -49,6 +49,7 @@ const { foo } = { foo: \"foo\" }; const [bar] = [\"bar\"]; (foo: number); // error: string ~> number (bar: number); // error: string ~> number + declare var bazzes: { baz: string }[]; for (const { baz } of bazzes) { (baz: number); // error: string ~> number @@ -872,10 +873,13 @@ function f5() { // var x: C; // ok + var y = new C(); // error: let ref before decl from value position + class C {} var z: C = new C(); // ok + // --- vars --- // it\'s possible to annotate a var with a non-maybe type, @@ -883,11 +887,13 @@ var z: C = new C(); // ok // initialized before use) var a: number; // not an error per se - only if used before init + function f(n: number) { return n; } f(a); // error: undefined ~/> number + a = 10; f(a); // ok, a: number (not ?number) diff --git a/tests/flow/bom/__snapshots__/jsfmt.spec.js.snap b/tests/flow/bom/__snapshots__/jsfmt.spec.js.snap index 790cdc4e1ab5..a64586e291cd 100644 --- a/tests/flow/bom/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/bom/__snapshots__/jsfmt.spec.js.snap @@ -74,19 +74,23 @@ const a: FormData = new FormData(); // correct new FormData(\"\"); // incorrect new FormData(document.createElement(\"input\")); // incorrect new FormData(document.createElement(\"form\")); // correct + // has const b: boolean = a.has(\"foo\"); // correct + // get const c: ?(string | File) = a.get(\"foo\"); // correct const d: string = a.get(\"foo\"); // incorrect const e: Blob = a.get(\"foo\"); // incorrect const f: ?(string | File | Blob) = a.get(\"foo\"); // incorrect a.get(2); // incorrect + // getAll const a1: Array = a.getAll(\"foo\"); // correct const a2: Array = a.getAll(\"foo\"); // incorrect const a3: Array = a.getAll(\"foo\"); // incorrect a.getAll(23); // incorrect + // set a.set(\"foo\", \"bar\"); // correct a.set(\"foo\", {}); // incorrect @@ -98,6 +102,7 @@ a.set(\"bar\", new File([], \"q\"), 2); // incorrect a.set(\"bar\", new Blob()); // correct a.set(\"bar\", new Blob(), \"x\"); // correct a.set(\"bar\", new Blob(), 2); // incorrect + // append a.append(\"foo\", \"bar\"); // correct a.append(\"foo\", {}); // incorrect @@ -110,19 +115,23 @@ a.append(\"bar\", new File([], \"q\"), 2); // incorrect a.append(\"bar\", new Blob()); // correct a.append(\"bar\", new Blob(), \"x\"); // correct a.append(\"bar\", new Blob(), 2); // incorrect + // delete a.delete(\"xx\"); // correct a.delete(3); // incorrect + // keys for (let x: string of a.keys()) { } // correct for (let x: number of a.keys()) { } // incorrect + // values for (let x: string | File of a.values()) { } // correct for (let x: string | File | Blob of a.values()) { } // incorrect + // entries for (let [x, y]: [string, string | File] of a.entries()) { } // correct @@ -183,6 +192,7 @@ new MutationObserver(() => {}); // correct new MutationObserver(); // incorrect new MutationObserver(42); // incorrect new MutationObserver((n: number) => {}); // incorrect + // observe const div = document.createElement(\"div\"); o.observe(div, { attributes: true, attributeFilter: [\"style\"] }); // correct @@ -193,8 +203,10 @@ o.observe(div); // incorrect o.observe(div, {}); // incorrect o.observe(div, { subtree: true }); // incorrect o.observe(div, { attributes: true, attributeFilter: true }); // incorrect + // takeRecords o.takeRecords(); // correct + // disconnect o.disconnect(); // correct " diff --git a/tests/flow/builtins/__snapshots__/jsfmt.spec.js.snap b/tests/flow/builtins/__snapshots__/jsfmt.spec.js.snap index 421495dd4ec1..43101c72962e 100644 --- a/tests/flow/builtins/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/builtins/__snapshots__/jsfmt.spec.js.snap @@ -22,6 +22,7 @@ var b = a.map(function(x) { return 0; }); var c: string = b[0]; // error: number !~> string + var array = []; function f() { array = array.map(function() { diff --git a/tests/flow/call_properties/__snapshots__/jsfmt.spec.js.snap b/tests/flow/call_properties/__snapshots__/jsfmt.spec.js.snap index 9d78db611bca..9e4ce09bc2a9 100644 --- a/tests/flow/call_properties/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/call_properties/__snapshots__/jsfmt.spec.js.snap @@ -111,6 +111,7 @@ var f: { (): mixed } = function(): string { return \"hi\"; }; // return type var g: { (x: string): void } = function(x: mixed) {}; // param type + // A function can be an object var y: {} = function(x: number): string { return \"hi\"; @@ -312,6 +313,7 @@ var f: { (): mixed } = () => \"hi\"; // return type var g: { (x: Date): void } = x => { x * 2; }; // param type (date < number) + // A function can be an object var y: {} = x => \"hi\"; var z: Object = x => \"hi\"; diff --git a/tests/flow/callable/__snapshots__/jsfmt.spec.js.snap b/tests/flow/callable/__snapshots__/jsfmt.spec.js.snap index a90330247093..51ccc0272afe 100644 --- a/tests/flow/callable/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/callable/__snapshots__/jsfmt.spec.js.snap @@ -52,12 +52,14 @@ foo(Boolean); var dict: { [k: string]: any } = {}; dict(); // error, callable signature not found + interface ICall { (x: string): void } declare var icall: ICall; icall(0); // error, number ~> string icall.call(null, 0); // error, number ~> string + type Callable = { (x: string): void }; diff --git a/tests/flow/class_statics/__snapshots__/jsfmt.spec.js.snap b/tests/flow/class_statics/__snapshots__/jsfmt.spec.js.snap index 1eb9b259ee6d..ffe0658d1d37 100644 --- a/tests/flow/class_statics/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/class_statics/__snapshots__/jsfmt.spec.js.snap @@ -68,6 +68,7 @@ class A { static bar(y: string) {} } A.qux = function(x: string) {}; // error? + class B extends A { static x: string; // error? static foo(x: string) {} // error? @@ -100,6 +101,7 @@ class C { class D extends C { static main() { D.foo(0); // error? + D.bar(0); } } diff --git a/tests/flow/classes/__snapshots__/jsfmt.spec.js.snap b/tests/flow/classes/__snapshots__/jsfmt.spec.js.snap index 8ccab5a926e1..c4491bf743de 100644 --- a/tests/flow/classes/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/classes/__snapshots__/jsfmt.spec.js.snap @@ -29,6 +29,7 @@ class B extends A {} let b = new B(); (b.foo: number); // error, number !~> function + module.exports = B; " `; @@ -53,6 +54,7 @@ class C extends B { let c = new C(); (c.foo: number); // error, number !~> function + module.exports = C; " `; @@ -125,9 +127,11 @@ x.a; // ok x.b; // error, TestClass has no b x.c; // ok x.d; // error, TestClass has no d + var y: Foo = x; y.b; // error, doesn\'t exist in TestClass y.d; // ok, it\'s optional + class Test2Superclass { a: number; // conflicts with cast to Foo c: ?number; // conflicts with cast to Foo @@ -181,13 +185,16 @@ var Bar = class Foo { var bar1: Bar = new Bar(); // OK var bar2: Bar = Bar.factory(); // OK + // NB: Don\'t write expected errors using Foo to avoid error collapse hiding an // unexpected failure in the above code. var B = class Baz {}; var b = new Baz(); // error: Baz is not a runtime binding in this scope + var C = class Qux {}; var c: Qux = new C(); // error: Qux is not a type in this scope + // OK: anon classes create no binding, but can be bound manually var Anon = class {}; var anon: Anon = new Anon(); @@ -243,6 +250,7 @@ C.p = \"hi\"; // Class static fields are compatible with object types (C: { p: string }); // ok (C: { p: number }); // errors, string ~> number & vice versa (unify) + declare var o: { p: number }; (o: Class); // error, object type incompatible with class type " diff --git a/tests/flow/closure/__snapshots__/jsfmt.spec.js.snap b/tests/flow/closure/__snapshots__/jsfmt.spec.js.snap index 815ec6619ed4..bef0b36639e8 100644 --- a/tests/flow/closure/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/closure/__snapshots__/jsfmt.spec.js.snap @@ -99,9 +99,12 @@ function global_g() { global_f(); takes_string(global_x); // ok + global_g(); takes_string(global_x); // error + global_x = 42; // shouldn\'t pollute linear refinement + // local write from function // @@ -115,8 +118,10 @@ function local_func() { local_f(); takes_string(local_x); // ok + local_g(); takes_string(local_x); // error + local_x = 42; // shouldn\'t pollute linear refinement } @@ -134,9 +139,12 @@ var global_o = { global_o.f(); takes_string(global_y); // ok + global_o.g(); takes_string(global_y); // error + global_y = 42; // shouldn\'t pollute linear refinement + // local write from method // @@ -152,8 +160,10 @@ function local_meth() { local_o.f(); takes_string(local_y); // ok + local_o.g(); takes_string(local_y); // error + local_y = 42; // shouldn\'t pollute linear refinement } " diff --git a/tests/flow/computed_props/__snapshots__/jsfmt.spec.js.snap b/tests/flow/computed_props/__snapshots__/jsfmt.spec.js.snap index 16eb02f86494..324a499bbdc9 100644 --- a/tests/flow/computed_props/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/computed_props/__snapshots__/jsfmt.spec.js.snap @@ -42,7 +42,9 @@ var ColorIdToNumber = { }; (ColorIdToNumber[ColorId.RED]: \"ffffff\"); // oops + ColorIdToNumber.XXX; // oops + module.exports = { ColorId, ColorNumber }; " `; @@ -67,6 +69,7 @@ var ColorIdToNumber = { }; (ColorIdToNumber[ColorId.GREEN]: \"ffffff\"); // oops + module.exports = ColorIdToNumber; " `; @@ -133,6 +136,7 @@ var obj = { } }; var x: string = obj[\"m\"](); // error, number ~> string + var arr = [ function() { return this.length; diff --git a/tests/flow/config_module_name_rewrite_node/__snapshots__/jsfmt.spec.js.snap b/tests/flow/config_module_name_rewrite_node/__snapshots__/jsfmt.spec.js.snap index 3dd0e157550d..44e122880a46 100644 --- a/tests/flow/config_module_name_rewrite_node/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/config_module_name_rewrite_node/__snapshots__/jsfmt.spec.js.snap @@ -33,6 +33,7 @@ var a_2: string = m1.numVal; // Error: number ~> string import { numVal } from \"./1DoesntExist\"; var a_3: number = numVal; var a_4: string = numVal; // Error: number ~> string + // This tests that, for node, the first name mapping that both matches *and* // results in a valid module filename is picked. var m2 = require(\"./2DoesntExist\"); @@ -41,6 +42,7 @@ var b_2: string = m2.numVal; // Error: number ~> string import { numVal as numVal2 } from \"./3DoesntExist\"; var b_3: number = numVal2; var b_4: string = numVal2; // Error: number ~> string + // node_modules/Exists/index.js var m3 = require(\"4DoesntExist\"); var c_1: number = m3.numVal; diff --git a/tests/flow/core_tests/__snapshots__/jsfmt.spec.js.snap b/tests/flow/core_tests/__snapshots__/jsfmt.spec.js.snap index 6f3731856328..0ac76b71c6c8 100644 --- a/tests/flow/core_tests/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/core_tests/__snapshots__/jsfmt.spec.js.snap @@ -269,6 +269,7 @@ ws.delete(dict); let ws2 = new WeakSet([obj, dict]); let ws3 = new WeakSet([1, 2, 3]); // error, must be objects + function* generator(): Iterable<{ foo: string }> { while (true) { yield { foo: \"bar\" }; diff --git a/tests/flow/covariance/__snapshots__/jsfmt.spec.js.snap b/tests/flow/covariance/__snapshots__/jsfmt.spec.js.snap index a6d5d505d750..2eff10a82b0a 100644 --- a/tests/flow/covariance/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/covariance/__snapshots__/jsfmt.spec.js.snap @@ -53,6 +53,7 @@ type CovArrayVerbose = Array; var b: CovArrayVerbose = []; var y: CovArrayVerbose = b; y[0] = \"\"; // error + class NVerbose { x: CovArrayVerbose; foo(): CovArrayVerbose { diff --git a/tests/flow/declaration_files_incremental_haste/__snapshots__/jsfmt.spec.js.snap b/tests/flow/declaration_files_incremental_haste/__snapshots__/jsfmt.spec.js.snap index 7774a1cf261f..8d6837dae386 100644 --- a/tests/flow/declaration_files_incremental_haste/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/declaration_files_incremental_haste/__snapshots__/jsfmt.spec.js.snap @@ -91,8 +91,10 @@ var ExplicitDifferentName = require(\'ExplicitProvidesModuleDifferentName\'); var Implicit = require(\"ImplicitProvidesModule\"); (Implicit.fun(): boolean); // Error: Either Implementation ~> boolean or Declaration ~> boolean + var ExplicitSameName = require(\"ExplicitProvidesModuleSameName\"); (ExplicitSameName.fun(): boolean); // Error: Either Implementation ~> boolean or Declaration ~> boolean + var ExplicitDifferentName = require(\"ExplicitProvidesModuleDifferentName\"); (ExplicitDifferentName.fun(): boolean); // Error: Either Implementation ~> boolean or Declaration ~> boolean " diff --git a/tests/flow/declaration_files_incremental_node/__snapshots__/jsfmt.spec.js.snap b/tests/flow/declaration_files_incremental_node/__snapshots__/jsfmt.spec.js.snap index 209582b52bc3..43d38fc14743 100644 --- a/tests/flow/declaration_files_incremental_node/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/declaration_files_incremental_node/__snapshots__/jsfmt.spec.js.snap @@ -57,29 +57,40 @@ var F = require(\'package_with_dir_main\'); // This will require ./node_modules/B.js.flow var B1 = require(\"B\"); (B1.fun(): boolean); // Error either Implementation ~> boolean or Declaration ~> boolean + // This will require ./node_modules/B.js.flow var B2 = require(\"B.js\"); (B2.fun(): boolean); // Error either Implementation ~> boolean or Declaration ~> boolean + var C = require(\"package_with_full_main\"); (C.fun(): boolean); // Error either Implementation ~> boolean or Declaration ~> boolean + var D = require(\"package_with_partial_main\"); (D.fun(): boolean); // Error either Implementation ~> boolean or Declaration ~> boolean + var E = require(\"package_with_no_package_json\"); (E.fun(): boolean); // Error either Implementation ~> boolean or Declaration ~> boolean + var F = require(\"package_with_dir_main\"); (F.fun(): boolean); // Error either Implementation ~> boolean or Declaration ~> boolean + // This will require ./node_modules/B.js.flow var B1 = require(\"B\"); (B1.fun(): boolean); // Error either Implementation ~> boolean or Declaration ~> boolean + // This will require ./node_modules/B.js.flow var B2 = require(\"B.js\"); (B2.fun(): boolean); // Error either Implementation ~> boolean or Declaration ~> boolean + var C = require(\"package_with_full_main\"); (C.fun(): boolean); // Error either Implementation ~> boolean or Declaration ~> boolean + var D = require(\"package_with_partial_main\"); (D.fun(): boolean); // Error either Implementation ~> boolean or Declaration ~> boolean + var E = require(\"package_with_no_package_json\"); (E.fun(): boolean); // Error either Implementation ~> boolean or Declaration ~> boolean + var F = require(\"package_with_dir_main\"); (F.fun(): boolean); // Error either Implementation ~> boolean or Declaration ~> boolean " diff --git a/tests/flow/declaration_files_node/__snapshots__/jsfmt.spec.js.snap b/tests/flow/declaration_files_node/__snapshots__/jsfmt.spec.js.snap index 2f5241cf51e7..be4f706ab84b 100644 --- a/tests/flow/declaration_files_node/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/declaration_files_node/__snapshots__/jsfmt.spec.js.snap @@ -46,15 +46,20 @@ var F = require(\'package_with_dir_main\'); // This will require ./node_modules/B.js.flow var B1 = require(\"B\"); (B1.fun(): string); // Error number ~> string + // This will require ./node_modules/B.js.flow var B2 = require(\"B.js\"); (B2.fun(): string); // Error number ~> string + var C = require(\"package_with_full_main\"); (C.fun(): string); // Error number ~> string + var D = require(\"package_with_partial_main\"); (D.fun(): string); // Error number ~> string + var E = require(\"package_with_no_package_json\"); (E.fun(): string); // Error number ~> string + var F = require(\"package_with_dir_main\"); (F.fun(): string); // Error number ~> string " @@ -80,9 +85,11 @@ var CJS = require(\'./CJS.js\'); // This will require ./A.js.flow var A1 = require(\"./A\"); (A1.fun(): string); // Error number ~> string + // This will require ./A.js.flow var A2 = require(\"./A.js\"); (A2.fun(): string); // Error number ~> string + var CJS = require(\"./CJS.js\"); (CJS: string); (CJS: number); // Error: string ~> number diff --git a/tests/flow/declare_export/__snapshots__/jsfmt.spec.js.snap b/tests/flow/declare_export/__snapshots__/jsfmt.spec.js.snap index 8034f2d2e48b..31618f076188 100644 --- a/tests/flow/declare_export/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/declare_export/__snapshots__/jsfmt.spec.js.snap @@ -891,45 +891,56 @@ var at4: string = numberValue9; // Error: number ~> string import * as DefaultA from \"A\"; var a1: number = DefaultA.numberValue1; var a2: string = DefaultA.numberValue1; // Error: number ~> string + // File path import * as DefaultB from \"./B\"; var b1: number = DefaultB.numberValue; var b2: string = DefaultB.numberValue; // Error: number ~> string + // C.js exists, but not as a providesModule import DefaultC from \"C\"; // Error: No such module + // @providesModule D exists, but not as a filename import DefaultD from \"./D\"; // Error: No such module + // ================================================ // // == CommonJS Clobbering Literal Exports -> ES6 == // // ================================================ // import { doesntExist1 } from \"CommonJS_Clobbering_Lit\"; // Error: Not an exported binding + import { numberValue1 } from \"CommonJS_Clobbering_Lit\"; var c1: number = numberValue1; var c2: string = numberValue1; // Error: number ~> string + import { numberValue2 as numVal1 } from \"CommonJS_Clobbering_Lit\"; var d1: number = numVal1; var d2: string = numVal1; // Error: number ~> string + import CJS_Clobb_Lit from \"CommonJS_Clobbering_Lit\"; var e1: number = CJS_Clobb_Lit.numberValue3; var e2: string = CJS_Clobb_Lit.numberValue3; // Error: number ~> string CJS_Clobb_Lit.doesntExist; // Error: doesntExist isn\'t a property + import * as CJS_Clobb_Lit_NS from \"CommonJS_Clobbering_Lit\"; var f1: number = CJS_Clobb_Lit_NS.numberValue4; var f2: number = CJS_Clobb_Lit_NS.default.numberValue4; CJS_Clobb_Lit_NS.default.default; // Error: No \'default\' property on the exported obj var f3: string = CJS_Clobb_Lit_NS.numberValue4; // Error: number ~> string var f4: string = CJS_Clobb_Lit_NS.default.numberValue5; // Error: number ~> string + // ============================================== // // == CommonJS Clobbering Class Exports -> ES6 == // // ============================================== // import { doesntExist2 } from \"CommonJS_Clobbering_Class\"; // Error: Not an exported binding + // The following import should error because class statics are not turned into // named exports for now. This avoids complexities with polymorphic static // members (where the polymophism is defined on the class itself rather than the // method). import { staticNumber1, baseProp, childProp } from \"CommonJS_Clobbering_Class\"; // Error + import CJS_Clobb_Class from \"CommonJS_Clobbering_Class\"; new CJS_Clobb_Class(); new CJS_Clobb_Class().doesntExist; // Error: Class has no \`doesntExist\` property @@ -937,97 +948,123 @@ var h1: number = CJS_Clobb_Class.staticNumber2(); var h2: string = CJS_Clobb_Class.staticNumber2(); // Error: number ~> string var h3: number = new CJS_Clobb_Class().instNumber1(); var h4: string = new CJS_Clobb_Class().instNumber1(); // Error: number ~> string + import * as CJS_Clobb_Class_NS from \"CommonJS_Clobbering_Class\"; new CJS_Clobb_Class_NS(); // Error: Namespace object isn\'t constructable var i1: number = CJS_Clobb_Class_NS.staticNumber3(); // Error: Class statics not copied to Namespace object var i2: number = new CJS_Clobb_Class_NS.default().instNumber2(); var i3: string = new CJS_Clobb_Class_NS.default().instNumber2(); // Error: number ~> string + // =================================== // // == CommonJS Named Exports -> ES6 == // // =================================== // import { doesntExist3 } from \"CommonJS_Named\"; // Error: Not an exported binding + import { numberValue2 } from \"CommonJS_Named\"; var j1: number = numberValue2; var j2: string = numberValue2; // Error: number ~> string + import { numberValue3 as numVal3 } from \"CommonJS_Named\"; var k1: number = numVal3; var k2: string = numVal3; // Error: number ~> string + import * as CJS_Named from \"CommonJS_Named\"; var l1: number = CJS_Named.numberValue1; var l2: string = CJS_Named.numberValue1; // Error: number ~> string CJS_Named.doesntExist; // Error: doesntExist isn\'t a property + import * as CJS_Named_NS from \"CommonJS_Named\"; var m1: number = CJS_Named_NS.numberValue4; var m2: string = CJS_Named_NS.default.numberValue4; // Error: CommonJS_Named has no default export var m3: string = CJS_Named_NS.numberValue4; // Error: number ~> string + ////////////////////////////// // == ES6 Default -> ES6 == // ////////////////////////////// import { doesntExist4 } from \"ES6_Default_AnonFunction1\"; // Error: Not an exported binding + import ES6_Def_AnonFunc1 from \"ES6_Default_AnonFunction1\"; var n1: number = ES6_Def_AnonFunc1(); var n2: string = ES6_Def_AnonFunc1(); // Error: number ~> string + import ES6_Def_NamedFunc1 from \"ES6_Default_NamedFunction1\"; var o1: number = ES6_Def_NamedFunc1(); var o2: string = ES6_Def_NamedFunc1(); // Error: number ~> string + import ES6_Def_NamedClass1 from \"ES6_Default_NamedClass1\"; var q1: number = new ES6_Def_NamedClass1().givesANum(); var q2: string = new ES6_Def_NamedClass1().givesANum(); // Error: number ~> string + //////////////////////////// // == ES6 Named -> ES6 == // //////////////////////////// import doesntExist5 from \"ES6_Named1\"; // Error: Not an exported binding + import { specifierNumber1 as specifierNumber1_1 } from \"ES6_Named1\"; var r1: number = specifierNumber1_1; var r2: string = specifierNumber1_1; // Error: number ~> string + import { specifierNumber2Renamed } from \"ES6_Named1\"; var s1: number = specifierNumber2Renamed; var s2: string = specifierNumber2Renamed; // Error: number ~> string + import { specifierNumber3 as specifierNumber3Renamed } from \"ES6_Named1\"; var t1: number = specifierNumber3Renamed; var t2: string = specifierNumber3Renamed; // Error: number ~> string + import { groupedSpecifierNumber1, groupedSpecifierNumber2 } from \"ES6_Named1\"; var u1: number = groupedSpecifierNumber1; var u2: number = groupedSpecifierNumber2; var u3: string = groupedSpecifierNumber1; // Error: number ~> string var u4: string = groupedSpecifierNumber2; // Error: number ~> string + import { givesANumber } from \"ES6_Named1\"; var v1: number = givesANumber(); var v2: string = givesANumber(); // Error: number ~> string + import { NumberGenerator } from \"ES6_Named1\"; var w1: number = new NumberGenerator().givesANumber(); var w2: string = new NumberGenerator().givesANumber(); // Error: number ~> string + import { varDeclNumber1, varDeclNumber2 } from \"ES6_Named1\"; var x1: number = varDeclNumber1; var x2: number = varDeclNumber2; var x3: string = varDeclNumber1; // Error: number ~> string var x4: string = varDeclNumber2; // Error: number ~> string + import { numberValue1 as numberValue4 } from \"ES6_ExportFrom_Intermediary1\"; var aa1: number = numberValue4; var aa2: string = numberValue4; // Error: number ~> string + import { numberValue2_renamed } from \"ES6_ExportFrom_Intermediary1\"; var ab1: number = numberValue2_renamed; var ab2: string = numberValue2_renamed; // Error: number ~> string + import { numberValue1 as numberValue5 } from \"ES6_ExportAllFrom_Intermediary1\"; var ac1: number = numberValue5; var ac2: string = numberValue5; // Error: number ~> string + /////////////////////////////////// // == ES6 Default -> CommonJS == // /////////////////////////////////// require(\"ES6_Default_AnonFunction2\").doesntExist; // Error: \'doesntExist\' isn\'t an export + var ES6_Def_AnonFunc2 = require(\"ES6_Default_AnonFunction2\").default; var ad1: number = ES6_Def_AnonFunc2(); var ad2: string = ES6_Def_AnonFunc2(); // Error: number ~> string + var ES6_Def_NamedFunc2 = require(\"ES6_Default_NamedFunction2\").default; var ae1: number = ES6_Def_NamedFunc2(); var ae2: string = ES6_Def_NamedFunc2(); // Error: number ~> string + var ES6_Def_NamedClass2 = require(\"ES6_Default_NamedClass2\").default; var ag1: number = new ES6_Def_NamedClass2().givesANum(); var ag2: string = new ES6_Def_NamedClass2().givesANum(); // Error: number ~> string + ///////////////////////////////// // == ES6 Named -> CommonJS == // ///////////////////////////////// @@ -1035,38 +1072,47 @@ var ag2: string = new ES6_Def_NamedClass2().givesANum(); // Error: number ~> str var specifierNumber4 = require(\"ES6_Named2\").specifierNumber4; var ah1: number = specifierNumber4; var ah2: string = specifierNumber4; // Error: number ~> string + var specifierNumber5Renamed = require(\"ES6_Named2\").specifierNumber5Renamed; var ai1: number = specifierNumber5Renamed; var ai2: string = specifierNumber5Renamed; // Error: number ~> string + var groupedSpecifierNumber3 = require(\"ES6_Named2\").groupedSpecifierNumber3; var groupedSpecifierNumber4 = require(\"ES6_Named2\").groupedSpecifierNumber4; var aj1: number = groupedSpecifierNumber3; var aj2: number = groupedSpecifierNumber4; var aj3: string = groupedSpecifierNumber3; // Error: number ~> string var aj4: string = groupedSpecifierNumber4; // Error: number ~> string + var givesANumber2 = require(\"ES6_Named2\").givesANumber2; var ak1: number = givesANumber2(); var ak2: string = givesANumber2(); // Error: number ~> string + var NumberGenerator2 = require(\"ES6_Named2\").NumberGenerator2; var al1: number = new NumberGenerator2().givesANumber(); var al2: string = new NumberGenerator2().givesANumber(); // Error: number ~> string + var varDeclNumber3 = require(\"ES6_Named2\").varDeclNumber3; var varDeclNumber4 = require(\"ES6_Named2\").varDeclNumber4; var am1: number = varDeclNumber3; var am2: number = varDeclNumber4; var am3: string = varDeclNumber3; // Error: number ~> string var am4: string = varDeclNumber4; // Error: number ~> string + var numberValue6 = require(\"ES6_ExportFrom_Intermediary2\").numberValue1; var ap1: number = numberValue6; var ap2: string = numberValue6; // Error: number ~> string + var numberValue2_renamed2 = require( \"ES6_ExportFrom_Intermediary2\" ).numberValue2_renamed2; var aq1: number = numberValue2_renamed2; var aq2: string = numberValue2_renamed2; // Error: number ~> string + var numberValue7 = require(\"ES6_ExportAllFrom_Intermediary2\").numberValue2; var ar1: number = numberValue7; var ar2: string = numberValue7; // Error: number ~> string + //////////////////////////////////////////////////////// // == ES6 Default+Named -> ES6 import Default+Named== // //////////////////////////////////////////////////////// @@ -1075,8 +1121,10 @@ import defaultNum, { str as namedStr } from \"./ES6_DefaultAndNamed\"; var as1: number = defaultNum; var as2: string = defaultNum; // Error: number ~> string + var as3: string = namedStr; var as4: number = namedStr; // Error: string ~> number + //////////////////////////////////////// // == Side-effect only ES6 imports == // //////////////////////////////////////// @@ -1088,6 +1136,7 @@ import \"./SideEffects\"; ////////////////////////////////////////////// import specifierNumber1 from \"ES6_Named1\"; // Error: Did you mean \`import {specifierNumber1} from ...\`? import { specifierNumber } from \"ES6_Named1\"; // Error: Did you mean \`specifierNumber1\`? + /////////////////////////////////////////////////// // == Multi \`export *\` should combine exports == // /////////////////////////////////////////////////// @@ -1098,6 +1147,7 @@ import { var at1: number = numberValue8; var at2: string = numberValue8; // Error: number ~> string + var at3: number = numberValue9; var at4: string = numberValue9; // Error: number ~> string " diff --git a/tests/flow/declare_module_exports/__snapshots__/jsfmt.spec.js.snap b/tests/flow/declare_module_exports/__snapshots__/jsfmt.spec.js.snap index 72a4aa14448c..2f36e14c0ff8 100644 --- a/tests/flow/declare_module_exports/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/declare_module_exports/__snapshots__/jsfmt.spec.js.snap @@ -30,12 +30,14 @@ import declare_m_e_with_declare_var_e from \"declare_m_e_with_declare_var_e\"; import declare_module_exports from \"declare_module_exports\"; (declare_module_exports: number); (declare_module_exports: string); // Error: number ~> string + // Error: Has no named export \"str\"! import { str } from \"declare_m_e_with_other_value_declares\"; import type { str2 } from \"declare_m_e_with_other_type_declares\"; (\"asdf\": str2); (42: str2); // Error: number ~> string + /** * \`declare var exports\` is deprecated, so we have a grace period where both * syntaxes will work. @@ -44,6 +46,7 @@ import type { str2 } from \"declare_m_e_with_other_type_declares\"; import DEPRECATED__declare_var_exports from \"DEPRECATED__declare_var_exports\"; (DEPRECATED__declare_var_exports: number); (DEPRECATED__declare_var_exports: string); // Error: number ~> string + import declare_m_e_with_declare_var_e from \"declare_m_e_with_declare_var_e\"; (declare_m_e_with_declare_var_e: number); (declare_m_e_with_declare_var_e: string); // Error: number ~> string diff --git a/tests/flow/declare_type/__snapshots__/jsfmt.spec.js.snap b/tests/flow/declare_type/__snapshots__/jsfmt.spec.js.snap index 8bcf129b4322..5a87f7bfdc6b 100644 --- a/tests/flow/declare_type/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/declare_type/__snapshots__/jsfmt.spec.js.snap @@ -42,8 +42,10 @@ import { foo } from \"ModuleAliasFoo\"; var k1: baz = 42; var k2: baz = \"shab\"; // Error: string to int var k3: toz = foo(k1); // works + import type { toz } from \"ModuleAliasFoo\"; var k4: toz = foo(k1); // works + ////////////////////////////////////////////////////////// // == Declared Module with exports prop (issue 880) == // //////////////////////////////////////////////////////// @@ -54,7 +56,9 @@ import type { Foo, Bar, Id } from \"foo\"; blah(0, 0); ({ toz: 3 }: Foo); // error : {toz : number} ~> string + (3: Bar); // error : number ~> A + (\"lol\": Id); // error : string ~> number " `; diff --git a/tests/flow/def_site_variance/__snapshots__/jsfmt.spec.js.snap b/tests/flow/def_site_variance/__snapshots__/jsfmt.spec.js.snap index e1171c198bf5..0eb20a261e86 100644 --- a/tests/flow/def_site_variance/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/def_site_variance/__snapshots__/jsfmt.spec.js.snap @@ -55,6 +55,7 @@ class PropVariance<+Out, -In> { -co2: In; // ok +con1: Out; // ok +con2: In; // error + inv_dict1: { [k: string]: Out }; // error inv_dict2: { [k: string]: In }; // error co_dict1: { +[k: string]: Out }; // ok diff --git a/tests/flow/destructuring/__snapshots__/jsfmt.spec.js.snap b/tests/flow/destructuring/__snapshots__/jsfmt.spec.js.snap index 4a1e783c96b0..e4dfa2109267 100644 --- a/tests/flow/destructuring/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/destructuring/__snapshots__/jsfmt.spec.js.snap @@ -17,10 +17,12 @@ let [a, ...ys] = xs; let [b, ...zs] = ys; let c = zs[0]; // retain tuple info let d = zs[1]; // run off the end + (a: void); // error: number ~> void (b: void); // error: string ~> void (c: void); // error: boolean ~> void (d: void); // error: number|string|boolean ~> void + let [...e] = 0; " `; @@ -38,9 +40,11 @@ var { [\"key\"]: val3, ...spread } = { key: \"val\" }; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ var { [\"key\"]: val1 } = { key: \"val\" }; (val1: void); // error: string ~> void + var key: string = \"key\"; var { [key]: val2 } = { key: \"val\" }; (val2: void); // ok (gasp!) by existing StrT -> ElemT rule + var { [\"key\"]: val3, ...spread } = { key: \"val\" }; (spread.key: void); // error (gasp!) in general we don\'t know if a computed prop should be excluded from spread " @@ -144,6 +148,7 @@ obj_prop_fun(); // ok obj_prop_fun({}); // ok obj_prop_fun({ p: {} }); // ok obj_prop_fun({ p: { q: null } }); // ok, provides add\'l lower bound + function obj_prop_var(o = { p: { q: \"\" } }) { var { p: { q = 0 } = { q: true } } = o; // errors: @@ -157,6 +162,7 @@ obj_prop_var(); // ok obj_prop_var({}); // ok obj_prop_var({ p: {} }); // ok obj_prop_var({ p: { q: null } }); // ok, provides add\'l lower bound + function obj_rest( { p: { q, ...o } = { q: 0, r: 0 } } = { p: { q: 0, r: \"\" } } ) { @@ -191,10 +197,12 @@ var { p: 0 // error: number ~> string }; (p: void); // error: string ~> void + function obj_prop_err({ x: { y } } = null) {} // error: property \`x\` cannot be accessed on null function obj_rest_err({ ...o } = 0) {} // error: expected object instead of number function arr_elem_err([x] = null) {} // error: element 0 cannot be accessed on null function arr_rest_err([...a] = null) {} // error: expected array instead of null + function gen(x: T, { p = x }: { p: T }): T { return p; } @@ -202,6 +210,7 @@ function gen(x: T, { p = x }: { p: T }): T { // Default values in destructuring unwrap optional types obj_prop_fun(({}: { p?: { q?: null } })); // ok obj_prop_var(({}: { p?: { q?: null } })); // ok + // union-like upper bounds preserved through destructuring function obj_prop_opt({ p }: { p?: string } = { p: 0 }) {} function obj_prop_maybe({ p }: { p: ?string } = { p: 0 }) {} @@ -353,6 +362,7 @@ var bp1: number = baseprop1; var bp1_err: string = baseprop1; // Error: number ~> string var bp2: number = others.baseprop2; var bp2_err: string = others.baseprop2; // Error: number ~> string + var cp1: number = childprop1; var cp1_err: string = childprop1; // Error: number ~> string var cp2: number = others.childprop1; @@ -436,14 +446,18 @@ function arr_rest_pattern([ _, ...a ] : ArrRest) { // a: [X] function obj_pattern({ prop }: { prop: X }) {} // prop: X type Prop = { prop: X }; function obj_pattern2({ prop }: Prop) {} // prop: X + function arr_pattern([elem]: X[]) {} // elem: X type Elem = X[]; function arr_pattern2([elem]: Elem) {} // elem: X + function tup_pattern([proj]: [X]) {} // proj: X type Proj = [X]; function tup_pattern2([proj]: Proj) {} // proj: X + function rest_antipattern(...t: T) {} // nonsense function rest_pattern(...r: X[]) {} // r: X[] + function obj_rest_pattern( { _, ...o }: { _: any, x: X } // o: { x: X } ) { @@ -524,6 +538,7 @@ var { \"with-dash\": with_dash } = { \"with-dash\": \"motivating example\" }; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ var { key: val } = { key: \"val\" }; (val: void); // error: string ~> void + var { \"with-dash\": with_dash } = { \"with-dash\": \"motivating example\" }; (with_dash: \"motivating example\"); // ok " diff --git a/tests/flow/dictionary/__snapshots__/jsfmt.spec.js.snap b/tests/flow/dictionary/__snapshots__/jsfmt.spec.js.snap index e7a387505244..b67c4dacbef1 100644 --- a/tests/flow/dictionary/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/dictionary/__snapshots__/jsfmt.spec.js.snap @@ -465,7 +465,9 @@ function unsound_string_conversion_alias_declared_prop( function unification_dict_values_invariant(x: Array<{ [k: string]: B }>) { let a: Array<{ [k: string]: A }> = x; // error a[0].p = new A(); // in[0].p no longer B + let b: Array<{ [k: string]: B }> = x; // ok + let c: Array<{ [k: string]: C }> = x; // error (x[0].p: C); // not true } @@ -473,7 +475,9 @@ function unification_dict_values_invariant(x: Array<{ [k: string]: B }>) { function subtype_dict_values_invariant(x: { [k: string]: B }) { let a: { [k: string]: A } = x; // error a.p = new A(); // x[0].p no longer B + let b: { [k: string]: B } = x; // ok + let c: { [k: string]: C } = x; // error (x.p: C); // not true } @@ -520,7 +524,9 @@ function unification_mix_with_declared_props_invariant_l( ) { let a: Array<{ [k: string]: B, p: A }> = x; // error: A ~> B a[0].p = new A(); // x[0].p no longer B + let b: Array<{ [k: string]: B, p: B }> = x; // ok + let c: Array<{ [k: string]: B, p: C }> = x; // error (x[0].p: C); // not true } @@ -532,7 +538,9 @@ function unification_mix_with_declared_props_invariant_r( ) { let a: Array<{ [k: string]: A }> = xa; // error a[0].p = new A(); // xa[0].p no longer B + let b: Array<{ [k: string]: B }> = xb; // ok + let c: Array<{ [k: string]: C }> = xc; // error (xc[0].p: C); // not true } @@ -540,7 +548,9 @@ function unification_mix_with_declared_props_invariant_r( function subtype_mix_with_declared_props_invariant_l(x: { [k: string]: B }) { let a: { [k: string]: B, p: A } = x; // error: A ~> B a.p = new A(); // x.p no longer B + let b: { [k: string]: B, p: B } = x; // ok + let c: { [k: string]: B, p: C } = x; // error (x.p: C); // not true } @@ -552,7 +562,9 @@ function subtype_mix_with_declared_props_invariant_r( ) { let a: { [k: string]: A } = xa; // error a.p = new A(); // xa.p no longer B + let b: { [k: string]: B } = xb; // ok + let c: { [k: string]: C } = xc; // error (xc.p: C); // not true } @@ -572,7 +584,9 @@ function unification_obj_to_dict( function subtype_dict_to_obj(x: { [k: string]: B }) { let a: { p: A } = x; // error a.p = new A(); // x.p no longer B + let b: { p: B } = x; // ok + let c: { p: C } = x; // error (x.p: C); // not true } @@ -580,6 +594,7 @@ function subtype_dict_to_obj(x: { [k: string]: B }) { function subtype_obj_to_dict(x: { p: B }) { let a: { [k: string]: A } = x; // error a.p = new A(); // x.p no longer B + let b: { [k: string]: B } = x; let c: { [k: string]: C } = x; // error @@ -702,9 +717,11 @@ function foo8(x: {[key: string]: number}) { var x: { [key: string]: string } = {}; var y: { [key: string]: number } = x; // 2 errors, number !~> string & vice versa var z: { [key: number]: string } = x; // 2 errors, string !~> number & vice versa + var a: { [key: string]: ?string } = {}; var b: { [key: string]: string } = a; // 2 errors (null & undefined) var c: { [key: string]: ?string } = b; // 2 errors, since c[\'x\'] = null updates b + // 2 errors (number !~> string, string !~> number) function foo0( x: Array<{ [key: string]: number }> diff --git a/tests/flow/dom/__snapshots__/jsfmt.spec.js.snap b/tests/flow/dom/__snapshots__/jsfmt.spec.js.snap index de3a41e111a5..ffd01a6b5fc5 100644 --- a/tests/flow/dom/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/dom/__snapshots__/jsfmt.spec.js.snap @@ -237,6 +237,7 @@ const r: string = c.username; // correct const a = new URL(\"http://flowtype.org/\"); // correct const b = new URL(\"/docs\", a); // correct const c = new URL(\"/docs\", \"http://flowtype.org/\"); // correct + const d: URLSearchParams = c.searchParams; // correct const e: string = c.path; // not correct const f: string = c.pathname; // correct diff --git a/tests/flow/encaps/__snapshots__/jsfmt.spec.js.snap b/tests/flow/encaps/__snapshots__/jsfmt.spec.js.snap index d107c1a75423..ba839d6c8faa 100644 --- a/tests/flow/encaps/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/encaps/__snapshots__/jsfmt.spec.js.snap @@ -19,6 +19,7 @@ var s3 = tag2 \`la la la\`; class A {} var a = new A(); var s1 = \`l\${a.x}r\`; // error: no prop x in A + function tag(strings, ...values) { var x: number = strings[0]; // error: string ~> number return x; diff --git a/tests/flow/equals/__snapshots__/jsfmt.spec.js.snap b/tests/flow/equals/__snapshots__/jsfmt.spec.js.snap index a21f64aadca7..a8a281c99484 100644 --- a/tests/flow/equals/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/equals/__snapshots__/jsfmt.spec.js.snap @@ -20,6 +20,7 @@ var x = (null : ?number); null == 1; 1 == \"\"; // error \"\" == 1; // error + var x = (null: ?number); x == 1; 1 == x; diff --git a/tests/flow/es6modules/__snapshots__/jsfmt.spec.js.snap b/tests/flow/es6modules/__snapshots__/jsfmt.spec.js.snap index 1bb6c27be12b..1209f027988a 100644 --- a/tests/flow/es6modules/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/es6modules/__snapshots__/jsfmt.spec.js.snap @@ -996,45 +996,56 @@ import {typeAlias} from \"./ExportType\"; // Error: Cannot vanilla-import a type import * as DefaultA from \"A\"; var a1: number = DefaultA.numberValue1; var a2: string = DefaultA.numberValue1; // Error: number ~> string + // File path import * as DefaultB from \"./B\"; var b1: number = DefaultB.numberValue; var b2: string = DefaultB.numberValue; // Error: number ~> string + // C.js exists, but not as a providesModule import DefaultC from \"C\"; // Error: No such module + // @providesModule D exists, but not as a filename import DefaultD from \"./D\"; // Error: No such module + // ================================================ // // == CommonJS Clobbering Literal Exports -> ES6 == // // ================================================ // import { doesntExist1 } from \"CommonJS_Clobbering_Lit\"; // Error: Not an exported binding + import { numberValue1 } from \"CommonJS_Clobbering_Lit\"; var c1: number = numberValue1; var c2: string = numberValue1; // Error: number ~> string + import { numberValue2 as numVal1 } from \"CommonJS_Clobbering_Lit\"; var d1: number = numVal1; var d2: string = numVal1; // Error: number ~> string + import CJS_Clobb_Lit from \"CommonJS_Clobbering_Lit\"; var e1: number = CJS_Clobb_Lit.numberValue3; var e2: string = CJS_Clobb_Lit.numberValue3; // Error: number ~> string CJS_Clobb_Lit.doesntExist; // Error: doesntExist isn\'t a property + import * as CJS_Clobb_Lit_NS from \"CommonJS_Clobbering_Lit\"; var f1: number = CJS_Clobb_Lit_NS.numberValue4; var f2: number = CJS_Clobb_Lit_NS.default.numberValue4; CJS_Clobb_Lit_NS.default.default; // Error: No \'default\' property on the exported obj var f3: string = CJS_Clobb_Lit_NS.numberValue4; // Error: number ~> string var f4: string = CJS_Clobb_Lit_NS.default.numberValue5; // Error: number ~> string + // ============================================== // // == CommonJS Clobbering Class Exports -> ES6 == // // ============================================== // import { doesntExist2 } from \"CommonJS_Clobbering_Class\"; // Error: Not an exported binding + // The following import should error because class statics are not turned into // named exports for now. This avoids complexities with polymorphic static // members (where the polymophism is defined on the class itself rather than the // method). import { staticNumber1, baseProp, childProp } from \"CommonJS_Clobbering_Class\"; // Error + import CJS_Clobb_Class from \"CommonJS_Clobbering_Class\"; new CJS_Clobb_Class(); new CJS_Clobb_Class().doesntExist; // Error: Class has no \`doesntExist\` property @@ -1042,109 +1053,139 @@ var h1: number = CJS_Clobb_Class.staticNumber2(); var h2: string = CJS_Clobb_Class.staticNumber2(); // Error: number ~> string var h3: number = new CJS_Clobb_Class().instNumber1(); var h4: string = new CJS_Clobb_Class().instNumber1(); // Error: number ~> string + import * as CJS_Clobb_Class_NS from \"CommonJS_Clobbering_Class\"; new CJS_Clobb_Class_NS(); // Error: Namespace object isn\'t constructable var i1: number = CJS_Clobb_Class_NS.staticNumber3(); // Error: Class statics not copied to Namespace object var i2: number = new CJS_Clobb_Class_NS.default().instNumber2(); var i3: string = new CJS_Clobb_Class_NS.default().instNumber2(); // Error: number ~> string + // =================================== // // == CommonJS Named Exports -> ES6 == // // =================================== // import { doesntExist3 } from \"CommonJS_Named\"; // Error: Not an exported binding + import { numberValue2 } from \"CommonJS_Named\"; var j1: number = numberValue2; var j2: string = numberValue2; // Error: number ~> string + import { numberValue3 as numVal3 } from \"CommonJS_Named\"; var k1: number = numVal3; var k2: string = numVal3; // Error: number ~> string + import * as CJS_Named from \"CommonJS_Named\"; var l1: number = CJS_Named.numberValue1; var l2: string = CJS_Named.numberValue1; // Error: number ~> string CJS_Named.doesntExist; // Error: doesntExist isn\'t a property + import * as CJS_Named_NS from \"CommonJS_Named\"; var m1: number = CJS_Named_NS.numberValue4; var m2: string = CJS_Named_NS.default.numberValue4; // Error: CommonJS_Named has no default export var m3: string = CJS_Named_NS.numberValue4; // Error: number ~> string + ////////////////////////////// // == ES6 Default -> ES6 == // ////////////////////////////// import { doesntExist4 } from \"ES6_Default_AnonFunction1\"; // Error: Not an exported binding + import ES6_Def_AnonFunc1 from \"ES6_Default_AnonFunction1\"; var n1: number = ES6_Def_AnonFunc1(); var n2: string = ES6_Def_AnonFunc1(); // Error: number ~> string + import ES6_Def_NamedFunc1 from \"ES6_Default_NamedFunction1\"; var o1: number = ES6_Def_NamedFunc1(); var o2: string = ES6_Def_NamedFunc1(); // Error: number ~> string + import ES6_Def_AnonClass1 from \"ES6_Default_AnonClass1\"; var p1: number = new ES6_Def_AnonClass1().givesANum(); var p2: string = new ES6_Def_AnonClass1().givesANum(); // Error: number ~> string + import ES6_Def_NamedClass1 from \"ES6_Default_NamedClass1\"; var q1: number = new ES6_Def_NamedClass1().givesANum(); var q2: string = new ES6_Def_NamedClass1().givesANum(); // Error: number ~> string + //////////////////////////// // == ES6 Named -> ES6 == // //////////////////////////// import doesntExist5 from \"ES6_Named1\"; // Error: Not an exported binding + import { specifierNumber1 as specifierNumber1_1 } from \"ES6_Named1\"; var r1: number = specifierNumber1_1; var r2: string = specifierNumber1_1; // Error: number ~> string + import { specifierNumber2Renamed } from \"ES6_Named1\"; var s1: number = specifierNumber2Renamed; var s2: string = specifierNumber2Renamed; // Error: number ~> string + import { specifierNumber3 as specifierNumber3Renamed } from \"ES6_Named1\"; var t1: number = specifierNumber3Renamed; var t2: string = specifierNumber3Renamed; // Error: number ~> string + import { groupedSpecifierNumber1, groupedSpecifierNumber2 } from \"ES6_Named1\"; var u1: number = groupedSpecifierNumber1; var u2: number = groupedSpecifierNumber2; var u3: string = groupedSpecifierNumber1; // Error: number ~> string var u4: string = groupedSpecifierNumber2; // Error: number ~> string + import { givesANumber } from \"ES6_Named1\"; var v1: number = givesANumber(); var v2: string = givesANumber(); // Error: number ~> string + import { NumberGenerator } from \"ES6_Named1\"; var w1: number = new NumberGenerator().givesANumber(); var w2: string = new NumberGenerator().givesANumber(); // Error: number ~> string + import { varDeclNumber1, varDeclNumber2 } from \"ES6_Named1\"; var x1: number = varDeclNumber1; var x2: number = varDeclNumber2; var x3: string = varDeclNumber1; // Error: number ~> string var x4: string = varDeclNumber2; // Error: number ~> string + import { destructuredObjNumber } from \"ES6_Named1\"; var y1: number = destructuredObjNumber; var y2: string = destructuredObjNumber; // Error: number ~> string + import { destructuredArrNumber } from \"ES6_Named1\"; var z1: number = destructuredArrNumber; var z2: string = destructuredArrNumber; // Error: number ~> string + import { numberValue1 as numberValue4 } from \"ES6_ExportFrom_Intermediary1\"; var aa1: number = numberValue4; var aa2: string = numberValue4; // Error: number ~> string + import { numberValue2_renamed } from \"ES6_ExportFrom_Intermediary1\"; var ab1: number = numberValue2_renamed; var ab2: string = numberValue2_renamed; // Error: number ~> string + import { numberValue1 as numberValue5 } from \"ES6_ExportAllFrom_Intermediary1\"; var ac1: number = numberValue5; var ac2: string = numberValue5; // Error: number ~> string + /////////////////////////////////// // == ES6 Default -> CommonJS == // /////////////////////////////////// require(\"ES6_Default_AnonFunction2\").doesntExist; // Error: \'doesntExist\' isn\'t an export + var ES6_Def_AnonFunc2 = require(\"ES6_Default_AnonFunction2\").default; var ad1: number = ES6_Def_AnonFunc2(); var ad2: string = ES6_Def_AnonFunc2(); // Error: number ~> string + var ES6_Def_NamedFunc2 = require(\"ES6_Default_NamedFunction2\").default; var ae1: number = ES6_Def_NamedFunc2(); var ae2: string = ES6_Def_NamedFunc2(); // Error: number ~> string + var ES6_Def_AnonClass2 = require(\"ES6_Default_AnonClass2\").default; var af1: number = new ES6_Def_AnonClass2().givesANum(); var af2: string = new ES6_Def_AnonClass2().givesANum(); // Error: number ~> string + var ES6_Def_NamedClass2 = require(\"ES6_Default_NamedClass2\").default; var ag1: number = new ES6_Def_NamedClass2().givesANum(); var ag2: string = new ES6_Def_NamedClass2().givesANum(); // Error: number ~> string + ///////////////////////////////// // == ES6 Named -> CommonJS == // ///////////////////////////////// @@ -1152,44 +1193,55 @@ var ag2: string = new ES6_Def_NamedClass2().givesANum(); // Error: number ~> str var specifierNumber4 = require(\"ES6_Named2\").specifierNumber4; var ah1: number = specifierNumber4; var ah2: string = specifierNumber4; // Error: number ~> string + var specifierNumber5Renamed = require(\"ES6_Named2\").specifierNumber5Renamed; var ai1: number = specifierNumber5Renamed; var ai2: string = specifierNumber5Renamed; // Error: number ~> string + var groupedSpecifierNumber3 = require(\"ES6_Named2\").groupedSpecifierNumber3; var groupedSpecifierNumber4 = require(\"ES6_Named2\").groupedSpecifierNumber4; var aj1: number = groupedSpecifierNumber3; var aj2: number = groupedSpecifierNumber4; var aj3: string = groupedSpecifierNumber3; // Error: number ~> string var aj4: string = groupedSpecifierNumber4; // Error: number ~> string + var givesANumber2 = require(\"ES6_Named2\").givesANumber2; var ak1: number = givesANumber2(); var ak2: string = givesANumber2(); // Error: number ~> string + var NumberGenerator2 = require(\"ES6_Named2\").NumberGenerator2; var al1: number = new NumberGenerator2().givesANumber(); var al2: string = new NumberGenerator2().givesANumber(); // Error: number ~> string + var varDeclNumber3 = require(\"ES6_Named2\").varDeclNumber3; var varDeclNumber4 = require(\"ES6_Named2\").varDeclNumber4; var am1: number = varDeclNumber3; var am2: number = varDeclNumber4; var am3: string = varDeclNumber3; // Error: number ~> string var am4: string = varDeclNumber4; // Error: number ~> string + var destructuredObjNumber2 = require(\"ES6_Named2\").destructuredObjNumber2; var an1: number = destructuredObjNumber2; var an2: string = destructuredObjNumber2; // Error: number ~> string + var destructuredArrNumber2 = require(\"ES6_Named2\").destructuredArrNumber2; var ao1: number = destructuredArrNumber2; var ao2: string = destructuredArrNumber2; // Error: number ~> string + var numberValue6 = require(\"ES6_ExportFrom_Intermediary2\").numberValue1; var ap1: number = numberValue6; var ap2: string = numberValue6; // Error: number ~> string + var numberValue2_renamed2 = require( \"ES6_ExportFrom_Intermediary2\" ).numberValue2_renamed2; var aq1: number = numberValue2_renamed2; var aq2: string = numberValue2_renamed2; // Error: number ~> string + var numberValue7 = require(\"ES6_ExportAllFrom_Intermediary2\").numberValue2; var ar1: number = numberValue7; var ar2: string = numberValue7; // Error: number ~> string + //////////////////////////////////////////////////////// // == ES6 Default+Named -> ES6 import Default+Named== // //////////////////////////////////////////////////////// @@ -1198,8 +1250,10 @@ import defaultNum, { str as namedStr } from \"./ES6_DefaultAndNamed\"; var as1: number = defaultNum; var as2: string = defaultNum; // Error: number ~> string + var as3: string = namedStr; var as4: number = namedStr; // Error: string ~> number + //////////////////////////////////////// // == Side-effect only ES6 imports == // //////////////////////////////////////// @@ -1211,6 +1265,7 @@ import \"./SideEffects\"; ////////////////////////////////////////////// import specifierNumber1 from \"ES6_Named1\"; // Error: Did you mean \`import {specifierNumber1} from ...\`? import { specifierNumber } from \"ES6_Named1\"; // Error: Did you mean \`specifierNumber1\`? + /////////////////////////////////////////////////// // == Multi \`export *\` should combine exports == // /////////////////////////////////////////////////// @@ -1221,8 +1276,10 @@ import { var at1: number = numberValue8; var at2: string = numberValue8; // Error: number ~> string + var at3: number = numberValue9; var at4: string = numberValue9; // Error: number ~> string + ///////////////////////////////////////////////////////////// // == Vanilla \`import\` cannot import a type-only export == // ///////////////////////////////////////////////////////////// @@ -1293,21 +1350,27 @@ function testRequires() { // CommonJS module import * as DefaultA from \"A\"; DefaultA.numberValue1 = 123; // Error: DefaultA is frozen + // ES6 module import * as ES6_Named1 from \"ES6_Named1\"; ES6_Named1.varDeclNumber1 = 123; // Error: ES6_Named1 is frozen + // CommonJS module that clobbers module.exports import * as CommonJS_Star from \"CommonJS_Clobbering_Lit\"; CommonJS_Star.numberValue1 = 123; // Error: frozen CommonJS_Star.default.numberValue1 = 123; // ok + import CommonJS_Clobbering_Lit from \"CommonJS_Clobbering_Lit\"; CommonJS_Clobbering_Lit.numberValue1 = 123; // ok + // CommonJS module that clobbers module.exports with a frozen object import * as CommonJS_Frozen_Star from \"CommonJS_Clobbering_Frozen\"; CommonJS_Frozen_Star.numberValue1 = 123; // Error: frozen CommonJS_Frozen_Star.default.numberValue1 = 123; // Error: frozen + import CommonJS_Clobbering_Frozen from \"CommonJS_Clobbering_Frozen\"; CommonJS_Clobbering_Frozen.numberValue1 = 123; // Error: exports are frozen + // // Requires // @@ -1316,12 +1379,15 @@ function testRequires() { // CommonJS module var DefaultA = require(\"A\"); DefaultA.numberValue1 = 123; // ok, not frozen by default + // ES6 module var ES6_Named1 = require(\"ES6_Named1\"); ES6_Named1.numberValue = 123; // error, es6 exports are frozen + // CommonJS module that clobbers module.exports var CommonJS_Star = require(\"CommonJS_Clobbering_Lit\"); CommonJS_Star.numberValue1 = 123; // ok, not frozen by default + // CommonJS module that clobbers module.exports with a frozen object var CommonJS_Frozen_Star = require(\"CommonJS_Clobbering_Frozen\"); CommonJS_Frozen_Star.numberValue1 = 123; // Error: frozen diff --git a/tests/flow/es_declare_module/__snapshots__/jsfmt.spec.js.snap b/tests/flow/es_declare_module/__snapshots__/jsfmt.spec.js.snap index b16ba71620ea..388bf141e59e 100644 --- a/tests/flow/es_declare_module/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/es_declare_module/__snapshots__/jsfmt.spec.js.snap @@ -51,6 +51,7 @@ import CJS_Named from \"CJS_Named\"; (str1: number); // Error: string ~> number (CJS_Named: { num1: number, str1: string }); (CJS_Named: number); // Error: Module ~> number + import { num2 } from \"CJS_Clobbered\"; // Error: No such export! import { numExport } from \"CJS_Clobbered\"; (numExport: number); @@ -58,23 +59,28 @@ import { numExport } from \"CJS_Clobbered\"; import type { numType } from \"CJS_Clobbered\"; (42: numType); (\"asdf\": numType); // Error: string ~> number + import { strHidden } from \"ES\"; // Error: No such export! import { str3 } from \"ES\"; (str3: string); (str3: number); // Error: string ~> number + import { num3 } from \"ES\"; (num3: number); (num3: string); // Error: number ~> string + import { C } from \"ES\"; import type { C as CType } from \"ES\"; (new C(): C); (42: C); // Error: number ~> C (new C(): CType); (42: CType); // Error: number ~> CType + import { T } from \"ES\"; // Error: T is a type import, not a value import type { T as T2 } from \"ES\"; (42: T2); (\"asdf\": T2); // Error: string ~> number + import { exports as nope } from \"ES\"; // Error: Not an export " `; diff --git a/tests/flow/esproposal_export_star_as.enable/__snapshots__/jsfmt.spec.js.snap b/tests/flow/esproposal_export_star_as.enable/__snapshots__/jsfmt.spec.js.snap index 4ce4194240a1..0b5eff8380bd 100644 --- a/tests/flow/esproposal_export_star_as.enable/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/esproposal_export_star_as.enable/__snapshots__/jsfmt.spec.js.snap @@ -15,6 +15,7 @@ import { source } from \"./test\"; var a: number = source.num; var b: string = source.num; // Error: num ~> string + var c: string = source.str; var d: number = source.str; // Error: num ~> string " diff --git a/tests/flow/esproposal_export_star_as.ignore/__snapshots__/jsfmt.spec.js.snap b/tests/flow/esproposal_export_star_as.ignore/__snapshots__/jsfmt.spec.js.snap index 519a89792211..d9d3df610e06 100644 --- a/tests/flow/esproposal_export_star_as.ignore/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/esproposal_export_star_as.ignore/__snapshots__/jsfmt.spec.js.snap @@ -15,6 +15,7 @@ import { source } from \"./test\"; var a: number = source.num; var b: string = source.num; // Error: num ~> string + var c: string = source.str; var d: number = source.str; // Ignored error: num ~> string " diff --git a/tests/flow/export_type/__snapshots__/jsfmt.spec.js.snap b/tests/flow/export_type/__snapshots__/jsfmt.spec.js.snap index 074c2ecabbfc..30a674eeb712 100644 --- a/tests/flow/export_type/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/export_type/__snapshots__/jsfmt.spec.js.snap @@ -60,19 +60,25 @@ import type { var a: inlinedType1 = 42; var b: inlinedType1 = \"asdf\"; // Error: string ~> number + var c: standaloneType1 = 42; var d: standaloneType1 = \"asdf\"; // Error: string ~> number + var e: talias1 = 42; var f: talias1 = \"asdf\"; // Error: string ~> number + var g: talias3 = 42; var h: talias3 = \"asdf\"; // Error: string ~> number + import type { talias4 } from \"./cjs_with_types\"; var i: talias4 = 42; var j: talias4 = \"asdf\"; // Error: string ~> number + import { IFoo, IFoo2 } from \"./types_only\"; var k: IFoo = { prop: 42 }; var l: IFoo = { prop: \"asdf\" }; // Error: {prop:string} ~> {prop:number} + var m: IFoo2 = { prop: \"asdf\" }; var n: IFoo2 = { prop: 42 }; // Error: {prop:number} ~> {prop:string} " @@ -100,11 +106,13 @@ export interface IFoo { prop: number }; export type inlinedType1 = number; var a: inlinedType1 = 42; var b: inlinedType1 = \"asdf\"; // Error: string ~> number + type standaloneType1 = number; export type { standaloneType1 }; type standaloneType2 = number; export { standaloneType2 }; // Error: Missing \`type\` keyword + export type { talias1, talias2 as talias3, IFoo2 } from \"./types_only2\"; export interface IFoo { prop: number } diff --git a/tests/flow/fetch/__snapshots__/jsfmt.spec.js.snap b/tests/flow/fetch/__snapshots__/jsfmt.spec.js.snap index 188794951868..f66810821034 100644 --- a/tests/flow/fetch/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/fetch/__snapshots__/jsfmt.spec.js.snap @@ -35,6 +35,7 @@ const myRequest = new Request(\"http://google.com\"); const a: Promise = fetch(myRequest).then(response => response.text()); const b: Promise = fetch(myRequest); // incorrect + var myInit = { method: \"GET\", headers: { @@ -45,6 +46,7 @@ var myInit = { }; const c: Promise = fetch(\"image.png\").then(response => response.blob()); // correct + const d: Promise = fetch(\"image.png\"); // incorrect " `; @@ -92,9 +94,12 @@ e.append({ \"Content-Type\", \"image/jpeg\" }); // not correct e.set(\"Content-Type\", \"image/jpeg\"); // correct e.set(\"Content-Type\"); // not correct e.set({ \"Content-Type\", \"image/jpeg\" }); // not correct + const f: Headers = e.append(\"Content-Type\", \"image/jpeg\"); // not correct + const g: string = e.get(\"Content-Type\"); // correct const h: number = e.get(\"Content-Type\"); // not correct + for (let v of e) { const [i, j]: [string, string] = v; // correct } @@ -166,8 +171,10 @@ const b: Request = new Request(\"http://example.org\"); // correct const c: Request = new Request(b); // correct const d: Request = new Request(c.clone()); // correct (doesn\'t make much sense though) const e: Request = new Request(b, c); // incorrect + const f: Request = new Request({}); // incorrect const g: Request = new Request(\"http://example.org\", {}); // correct + const h: Request = new Request(\"http://example.org\", { method: \"GET\", headers: { @@ -176,6 +183,7 @@ const h: Request = new Request(\"http://example.org\", { mode: \"cors\", cache: \"default\" }); // correct + const i: Request = new Request(\"http://example.org\", { method: \"POST\", headers: { @@ -185,12 +193,14 @@ const i: Request = new Request(\"http://example.org\", { mode: \"cors\", cache: \"default\" }); // correct + const j: Request = new Request(\"http://example.org\", { method: \"GET\", headers: \"Content-Type: image/jpeg\", mode: \"cors\", cache: \"default\" }); // incorrect - headers is string + const k: Request = new Request(\"http://example.org\", { method: \"CONNECT\", headers: { @@ -199,6 +209,7 @@ const k: Request = new Request(\"http://example.org\", { mode: \"cors\", cache: \"default\" }); // incorrect - CONNECT is forbidden + var l: boolean = h.bodyUsed; h.text().then((t: string) => t); // correct @@ -260,34 +271,41 @@ h.arrayBuffer().then((ab: Buffer) => ab); // incorrect const a: Response = new Response(); // correct const b: Response = new Response(new Blob()); // correct const c: Response = new Response(new FormData()); // correct + const d: Response = new Response(new FormData(), { status: 404 }); // correct + const e: Response = new Response(\"responsebody\", { status: \"404\" }); // incorrect + const f: Response = new Response(\"responsebody\", { status: 404, headers: \"\'Content-Type\': \'image/jpeg\'\" }); // incorrect + const g: Response = new Response(\"responsebody\", { status: 404, headers: { \"Content-Type\": \"image/jpeg\" } }); // correct + const h: Response = new Response(\"responsebody\", { status: 404, headers: new Headers({ \"Content-Type\": \"image/jpeg\" }) }); // correct, if verbose + const i: Response = new Response({ status: 404, headers: new Headers({ \"Content-Type\": \"image/jpeg\" }) }); // incorrect + const ok: boolean = h.ok; const status: number = h.status; @@ -341,9 +359,12 @@ e.append({ \"key1\", \"value1\" }); // not correct e.set(\"key1\", \"value1\"); // correct e.set(\"key1\"); // not correct e.set({ \"key1\", \"value1\" }); // not correct + const f: URLSearchParams = e.append(\"key1\", \"value1\"); // not correct + const g: string = e.get(\"key1\"); // correct const h: number = e.get(\"key1\"); // not correct + for (let v of e) { const [i, j]: [string, string] = v; // correct } diff --git a/tests/flow/function/__snapshots__/jsfmt.spec.js.snap b/tests/flow/function/__snapshots__/jsfmt.spec.js.snap index 27baff66238a..02ff2209400c 100644 --- a/tests/flow/function/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/function/__snapshots__/jsfmt.spec.js.snap @@ -51,11 +51,14 @@ test.apply(\"\", [\"\", 0]); // wrong this is an error test.apply(0, [\"\", 0]); // error: lookup \`length\` on Number + // not enough arguments is an error (via incompatible RestT) test.apply(\"\", [\"\"]); // error: string ~> number + // mistyped arguments is an error test.apply(\"\", [\"\", \"\"]); // error: string ~> number (2nd arg) test.apply(\"\", [0, 0]); // error: number ~> string (1st arg) + // resolve args array from tvar function f(args) { test.apply(\"\", args); @@ -63,8 +66,10 @@ function f(args) { f([\"\", 0]); // OK f([\"\", \"\"]); // error: string ~> number (2nd arg) f([0, 0]); // error: number ~> string (1st arg) + // expect array test.apply(\"\", \"not array\"); // error: expect array of args + // expect 4 errors: // - lookup length on Number (because 0 is used as \`this\`) // - 123 is not a string @@ -157,11 +162,14 @@ test.call(\"\", \"\", 0); // wrong this is an error test.call(0, \"\", 0); // error: lookup \`length\` on Number + // not enough arguments is an error (via incompatible RestT) test.call(\"\", \"\"); // error: string ~> number + // mistyped arguments is an error test.call(\"\", \"\", \"\"); // error: string ~> number (2nd arg) test.call(\"\", 0, 0); // error: number ~> string (1st arg) + // resolve args array from tvar function f(args) { test.call(\"\", args[0], args[1]); @@ -169,6 +177,7 @@ function f(args) { f([\"\", 0]); // OK f([\"\", \"\"]); // error: string ~> number (2nd arg) f([0, 0]); // error: number ~> string (1st arg) + // expect 3 errors: // - lookup length on Number (0 used as \`this\`) // - number !~> string (param a) @@ -293,6 +302,7 @@ let tests = [ (x.length: void); // error, it\'s a number (y.length: void); // error, it\'s a number (z.length: void); // error, it\'s a number + (x.name: void); // error, it\'s a string (y.name: void); // error, it\'s a string (z.name: void); // error, it\'s a string @@ -302,9 +312,11 @@ let tests = [ x.length = \"foo\"; // error, it\'s a number y.length = \"foo\"; // error, it\'s a number z.length = \"foo\"; // error, it\'s a number + x.name = 123; // error, it\'s a string y.name = 123; // error, it\'s a string z.name = 123; // error, it\'s a string + // Non-(Function.prototype) properties on a \`Function\` type should be \`any\` (z.foo: number); (z.foo: string); diff --git a/tests/flow/generators/__snapshots__/jsfmt.spec.js.snap b/tests/flow/generators/__snapshots__/jsfmt.spec.js.snap index 1e51c66e2bcf..15e689693299 100644 --- a/tests/flow/generators/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/generators/__snapshots__/jsfmt.spec.js.snap @@ -229,6 +229,7 @@ var examples = new GeneratorExamples(); for (var x of examples.infer_stmt()) { (x: string); } // error: number ~> string + var infer_stmt_next = examples.infer_stmt().next(0).value; // error: number ~> boolean if (typeof infer_stmt_next === \"undefined\") { } else if (typeof infer_stmt_next === \"number\") { @@ -255,6 +256,7 @@ for (var x of examples.delegate_yield_generator()) { } examples.delegate_next_iterable([]).next(\"\"); // error: Iterator has no next value + for (var x of examples.delegate_yield_iterable([])) { (x: string); // error: number ~> string } @@ -297,7 +299,9 @@ var examples = new GeneratorExamples(); for (var x of examples.infer_stmt()) { (x: string); } // error: number ~> string + var infer_stmt_next = examples.infer_stmt().next(0).value; // error: number ~> boolean + if (typeof infer_stmt_next === \"undefined\") { } else if (typeof infer_stmt_next === \"number\") { } else { @@ -533,6 +537,7 @@ function* delegate_next_iterable(xs: Array) { yield* xs; } delegate_next_iterable([]).next(\"\"); // error: Iterator has no next value + function* delegate_yield_iterable(xs: Array) { yield* xs; } diff --git a/tests/flow/get-def2/__snapshots__/jsfmt.spec.js.snap b/tests/flow/get-def2/__snapshots__/jsfmt.spec.js.snap index 18547d796cac..4f5620c74d1c 100644 --- a/tests/flow/get-def2/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/get-def2/__snapshots__/jsfmt.spec.js.snap @@ -44,13 +44,16 @@ var Parent = require(\"./Parent\"); let ParentFoo; ({ ParentFoo } = Parent); ParentFoo; // Points to lval in line above this + // Follows assignment on simple/\"non-destructuring\" patterns let ParentFoo2; ParentFoo2 = Parent; ParentFoo2; // Points to LHS of line above this + // Follows assignment with declaration let ParentFoo3 = Parent; ParentFoo3; // Points to LHS of line above this + // Follows non-destructured property access of \`require(\'Parent\')\` let foo = require(\"./Parent\").ParentFoo.foo; foo; diff --git a/tests/flow/getters_and_setters_enabled/__snapshots__/jsfmt.spec.js.snap b/tests/flow/getters_and_setters_enabled/__snapshots__/jsfmt.spec.js.snap index 778a71990031..bdd2922be032 100644 --- a/tests/flow/getters_and_setters_enabled/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/getters_and_setters_enabled/__snapshots__/jsfmt.spec.js.snap @@ -97,6 +97,7 @@ class Foo { return 4; } set propWithMismatchingGetterAndSetter(x: string) {} // doesn\'t match getter (OK) + propOverriddenWithGetter: number; get propOverriddenWithGetter() { return \"hello\"; @@ -114,6 +115,7 @@ var testGetterNoError2: number = foo.goodGetterWithAnnotation; var testGetterWithError1: string = foo.goodGetterNoAnnotation; // Error number ~> string var testGetterWithError2: string = foo.goodGetterWithAnnotation; // Error number ~> string + // Test setting properties with getters foo.goodSetterNoAnnotation = 123; foo.goodSetterWithAnnotation = 123; @@ -121,7 +123,9 @@ foo.goodSetterWithAnnotation = 123; // TODO: Why does no annotation mean no error? foo.goodSetterNoAnnotation = \"hello\"; // Error string ~> number foo.goodSetterWithAnnotation = \"hello\"; // Error string ~> number + var testSubtypingGetterAndSetter: number = foo.propWithSubtypingGetterAndSetter; // Error ?number ~> number + var testPropOverridenWithGetter: number = foo.propOverriddenWithGetter; // Error string ~> number foo.propOverriddenWithSetter = 123; // Error number ~> string " @@ -241,17 +245,21 @@ var testGetterNoError2: number = obj.goodGetterWithAnnotation; var testGetterWithError1: string = obj.goodGetterNoAnnotation; // Error number ~> string var testGetterWithError2: string = obj.goodGetterWithAnnotation; // Error number ~> string + // Test setting properties with getters obj.goodSetterNoAnnotation = 123; obj.goodSetterWithAnnotation = 123; obj.goodSetterNoAnnotation = \"hello\"; // Error string ~> number obj.goodSetterWithAnnotation = \"hello\"; // Error string ~> number + var testSubtypingGetterAndSetter: number = obj.propWithSubtypingGetterAndSetter; // Error ?number ~> number + // When building this feature, it was tempting to flow the setter into the // getter and then use either the getter or setter as the type of the property. // This example shows the danger of using the getter\'s type obj.exampleOfOrderOfGetterAndSetter = new C(); // Error C ~> B + // And this example shows the danger of using the setter\'s type. var testExampleOrOrderOfGetterAndSetterReordered: number = obj.exampleOfOrderOfGetterAndSetterReordered; // Error A ~> B " diff --git a/tests/flow/import_type/__snapshots__/jsfmt.spec.js.snap b/tests/flow/import_type/__snapshots__/jsfmt.spec.js.snap index 3433d49feeee..0beb91ee75b0 100644 --- a/tests/flow/import_type/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/import_type/__snapshots__/jsfmt.spec.js.snap @@ -274,6 +274,7 @@ import { foo1Inst } from \"./ExportDefault_Class\"; var a1: ClassFoo1 = foo1Inst; var a2: number = foo1Inst; // Error: ClassFoo1 ~> number new ClassFoo1(); // Error: ClassFoo1 is not a value-identifier + /////////////////////////////////////////////// // == Importing Class Type (Named Export) == // /////////////////////////////////////////////// @@ -284,6 +285,7 @@ import { foo2Inst } from \"./ExportNamed_Class\"; var b1: ClassFoo2 = foo2Inst; var b2: number = foo2Inst; // Error: ClassFoo2 ~> number new ClassFoo2(); // Error: ClassFoo2 is not a value-identifier + ///////////////////////////////////////////////////// // == Importing Class Type (CJS Default Export) == // ///////////////////////////////////////////////////// @@ -292,6 +294,7 @@ import type ClassFoo3T from \"./ExportCJSDefault_Class\"; import ClassFoo3 from \"./ExportCJSDefault_Class\"; var c1: ClassFoo3T = new ClassFoo3(); new ClassFoo3T(); // Error: ClassFoo3 is not a value-identifier + /////////////////////////////////////////////////// // == Importing Class Type (CJS Named Export) == // /////////////////////////////////////////////////// @@ -304,6 +307,7 @@ var d2: number = foo4Inst; // Error: ClassFoo4 ~> number new ClassFoo4(); // Error: ClassFoo4 is not a value-identifier // TODO: this errors correctly, but the message is just \'can\'t resolve name\' var d3: typeof ClassFoo5 = foo5Inst; // Error: Can\'t typeof a type alias + //////////////////////////////////////////// // == Import Type Alias (Named Export) == // //////////////////////////////////////////// @@ -313,6 +317,7 @@ import { givesAFoo3Obj } from \"./ExportNamed_Alias\"; var e1: AliasFoo3 = givesAFoo3Obj(); var e2: number = givesAFoo3Obj(); // Error: AliasFoo3 ~> number var e3: typeof AliasFoo3 = givesAFoo3Obj(); // Error: Can\'t typeof a type alias + ////////////////////////////////////////////// // == Import Type Alias (Default Export) == // ////////////////////////////////////////////// @@ -326,6 +331,7 @@ var e3: typeof AliasFoo3 = givesAFoo3Obj(); // Error: Can\'t typeof a type alias /////////////////////////////////////////////////////// import type { numValue } from \"./ExportsANumber\"; // Error: Cannot import-type a number value + //////////////////////////////////////////////////////////////////////// // == Regression Test: https://github.com/facebook/flow/issues/359 == // // Ensure that type bindings stay type bindings across function body // diff --git a/tests/flow/import_typeof/__snapshots__/jsfmt.spec.js.snap b/tests/flow/import_typeof/__snapshots__/jsfmt.spec.js.snap index cd047b62a0b2..c2a0254bb2e4 100644 --- a/tests/flow/import_typeof/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/import_typeof/__snapshots__/jsfmt.spec.js.snap @@ -305,6 +305,7 @@ import ClassFoo1 from \"./ExportDefault_Class\"; var a1: ClassFoo1T = ClassFoo1; var a2: ClassFoo1T = new ClassFoo1(); // Error: ClassFoo1 (inst) ~> ClassFoo1 (class) new ClassFoo1T(); // Error: ClassFoo1T is not bound to a value + ///////////////////////////////////////////////// // == Importing Class Typeof (Named Export) == // ///////////////////////////////////////////////// @@ -315,6 +316,7 @@ import { ClassFoo2 } from \"./ExportNamed_Class\"; var b1: ClassFoo2T = ClassFoo2; var b2: ClassFoo2T = new ClassFoo2(); // Error: ClassFoo2 (inst) ~> ClassFoo2 (class) new ClassFoo2T(); // Error: ClassFoo2T is not bound to a value + /////////////////////////////////////////////////////// // == Importing Class Typeof (CJS Default Export) == // /////////////////////////////////////////////////////// @@ -324,6 +326,7 @@ import ClassFoo3 from \"./ExportCJSDefault_Class\"; var c1: ClassFoo3T = ClassFoo3; var c2: ClassFoo3T = new ClassFoo3(); // Error: ClassFoo3 (inst) ~> ClassFoo3 (class) + ///////////////////////////////////////////////////// // == Importing Class Typeof (CJS Named Export) == // ///////////////////////////////////////////////////// @@ -333,11 +336,13 @@ import { ClassFoo4 } from \"./ExportCJSNamed_Class\"; var d1: ClassFoo4T = ClassFoo4; var d2: ClassFoo4T = new ClassFoo4(); // Error: ClassFoo4 (inst) ~> ClassFoo4 (class) + ////////////////////////////////////////////// // == Import Typeof Alias (Named Export) == // ////////////////////////////////////////////// import typeof { AliasFoo3 } from \"./ExportNamed_Alias\"; // Error: Can\'t \`import typeof\` type aliases! + //////////////////////////////////////////////// // == Import Typeof Alias (Default Export) == // //////////////////////////////////////////////// @@ -354,6 +359,7 @@ import typeof num_default from \"./ExportDefault_Number\"; var f1: num_default = 42; var f2: num_default = \"asdf\"; // Error: string ~> number + ///////////////////////////////////////////////////////////// // == Import Typeof With Non-Class Value (Named Export) == // ///////////////////////////////////////////////////////////// @@ -362,6 +368,7 @@ import typeof { num as num_named } from \"./ExportNamed_Number\"; var g1: num_named = 42; var g2: num_named = \"asdf\"; // Error: string ~> number + /////////////////////////////////////////////////////////////////// // == Import Typeof With Non-Class Value (CJS Default Export) == // /////////////////////////////////////////////////////////////////// @@ -370,6 +377,7 @@ import typeof num_cjs_default from \"./ExportCJSDefault_Number\"; var h1: num_cjs_default = 42; var h2: num_cjs_default = \"asdf\"; // Error: string ~> number + ///////////////////////////////////////////////////////////////// // == Import Typeof With Non-Class Value (CJS Named Export) == // ///////////////////////////////////////////////////////////////// @@ -378,6 +386,7 @@ import typeof { num as num_cjs_named } from \"./ExportCJSNamed_Number\"; var i1: num_cjs_named = 42; var i2: num_cjs_named = \"asdf\"; // Error: string ~> number + /////////////////////////////////////////////// // == Import Typeof ModuleNamespaceObject == // /////////////////////////////////////////////// diff --git a/tests/flow/interface/__snapshots__/jsfmt.spec.js.snap b/tests/flow/interface/__snapshots__/jsfmt.spec.js.snap index 0eb5e3ed4bcb..33139f6c8918 100644 --- a/tests/flow/interface/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/interface/__snapshots__/jsfmt.spec.js.snap @@ -53,6 +53,7 @@ var x: string = new C().x; interface I { x: number } var i = new I(); // error + function testInterfaceName(o: I) { (o.name: string); // error, name is static (o.constructor.name: string); // ok @@ -130,6 +131,7 @@ function foo(l: L) { l.y; l.z; } // error: z not found in L + // interface + multiple inheritance is similar to object type + intersection type M = { y: string } & J & { z: boolean }; @@ -173,6 +175,7 @@ new C().bar((x: string) => { }); // error, number ~/~> string ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ interface I { foo(x: number): void } (function foo(x: number) {}: I); // error, property \`foo\` not found function + declare class C { bar(i: I): void, bar(f: (x: number) => void): void diff --git a/tests/flow/intersection/__snapshots__/jsfmt.spec.js.snap b/tests/flow/intersection/__snapshots__/jsfmt.spec.js.snap index a4890a1cd872..25b95564d297 100644 --- a/tests/flow/intersection/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/intersection/__snapshots__/jsfmt.spec.js.snap @@ -223,6 +223,7 @@ var b: B = a; // intersection of dictionary types: declare var c: C; var d: D = c; // ok + // dict type mismatch type E = { [key: string]: string }; var e: E = c; // error diff --git a/tests/flow/iterable/__snapshots__/jsfmt.spec.js.snap b/tests/flow/iterable/__snapshots__/jsfmt.spec.js.snap index ff78ff12fd03..c16dc13b6cd6 100644 --- a/tests/flow/iterable/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/iterable/__snapshots__/jsfmt.spec.js.snap @@ -265,6 +265,7 @@ exports[`test variance.js 1`] = ` /* @flow */ (([]: Array): Iterable); // ok, Iterable<+T> + (([]: Array).values(): Iterable); // ok, Iterator<+T> " `; diff --git a/tests/flow/jsx_intrinsics.builtin/__snapshots__/jsfmt.spec.js.snap b/tests/flow/jsx_intrinsics.builtin/__snapshots__/jsfmt.spec.js.snap index 1f393a72beac..e047e3ecd037 100644 --- a/tests/flow/jsx_intrinsics.builtin/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/jsx_intrinsics.builtin/__snapshots__/jsfmt.spec.js.snap @@ -33,6 +33,7 @@ class CustomComponent extends React.Component { var a: React.Element<{ prop: string }> = ; var b: React.Element<{ prop1: string }> = ; // Error: Props<{prop}> ~> Props<{prop1}> + // Since intrinsics are typed as \`any\` out of the box, we can pass any // attributes to intrinsics! var c: React.Element =
; @@ -79,8 +80,10 @@ var Str: string = \"str\";
; /* This is fine*/ ; /* This is fine*/ ; // This is fine + React.createElement(\"div\", {}); // This is fine React.createElement(\"bad\", {}); /* This is fine*/ +
; // This is fine " `; diff --git a/tests/flow/jsx_intrinsics.custom/__snapshots__/jsfmt.spec.js.snap b/tests/flow/jsx_intrinsics.custom/__snapshots__/jsfmt.spec.js.snap index b58a02ba9419..569e8a2ca26e 100644 --- a/tests/flow/jsx_intrinsics.custom/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/jsx_intrinsics.custom/__snapshots__/jsfmt.spec.js.snap @@ -31,6 +31,7 @@ var a: React.Element<{ prop: string }> = ; var b: React.Element<{ prop1: string }> = ( ); /* Error: Props<{prop}> ~> Props<{prop1}>*/ +
;
; // Error: (\`id\` prop) number ~> string var c: React.Element<{ id: string }> =
; @@ -69,9 +70,11 @@ var Str: string = \"str\";
; /* This is fine*/ ; /* Error: \'bad\' not in JSXIntrinsics*/ ; // Error: string ~> keys of JSXIntrinsics + React.createElement(\"div\", {}); // This is fine React.createElement(\"bad\", {}); // Error: \'bad\' not in JSXIntrinsics React.createElement(Str, {}); /* Error: string ~> keys of JSXIntrinsics*/ + /* TODO: Make this an error*/
; // Not an error but should be eventually " diff --git a/tests/flow/keys/__snapshots__/jsfmt.spec.js.snap b/tests/flow/keys/__snapshots__/jsfmt.spec.js.snap index dff263a6192e..3576b8288ff3 100644 --- a/tests/flow/keys/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/keys/__snapshots__/jsfmt.spec.js.snap @@ -53,6 +53,7 @@ function testKeysOfObject(str: string, lit: \"hi\") { (str: $Keys); // No error, truthy string should be fine } (\"hi\": $Keys); // String literal should be fine + (123: $Keys); // Error: number -> keys of Object } @@ -63,6 +64,7 @@ function testKeysOfStrDict(str: string, lit: \"hi\") { (str: $Keys); // No error, truthy string should be fine } (\"hi\": $Keys); // String literal should be fine + (123: $Keys); // Error: number -> keys of StrDict } @@ -74,6 +76,7 @@ function testKeysOfStrLitDict(str: string, lit: \"hi\") { } (\"hi\": $Keys); // The right string literal is allowed (\"bye\": $Keys); // Error: The wrong string literal is not allowed + (123: $Keys); // Error: number -> keys of StrLitDict } @@ -84,6 +87,7 @@ function testKeysOfOtherObj(str: string, lit: \"hi\") { (str: $Keys); // Error: truthy string -> keys of ObjLit } (\"hi\": $Keys); // String literal should be fine + (123: $Keys); // Error: number -> keys of ObjLit } " diff --git a/tests/flow/last_duplicate_property_wins/__snapshots__/jsfmt.spec.js.snap b/tests/flow/last_duplicate_property_wins/__snapshots__/jsfmt.spec.js.snap index 3be909a49dee..cd584e6a6af9 100644 --- a/tests/flow/last_duplicate_property_wins/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/last_duplicate_property_wins/__snapshots__/jsfmt.spec.js.snap @@ -70,6 +70,7 @@ class C { (new C().x: boolean); // last wins (new C().bar: boolean); // last wins (new C().qux: boolean); // weird outlier where last doesn\'t win in classes + // Objects const o = { diff --git a/tests/flow/literal/__snapshots__/jsfmt.spec.js.snap b/tests/flow/literal/__snapshots__/jsfmt.spec.js.snap index 7428706de997..5e8d5d96c243 100644 --- a/tests/flow/literal/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/literal/__snapshots__/jsfmt.spec.js.snap @@ -44,14 +44,18 @@ var APIKeys = require(\"./enum\"); function foo(x: $Keys) {} foo(\"AGE\"); foo(\"LOCATION\"); // error + function bar(x: $Keys<{ age: number }>) {} bar(APIKeys.AGE); // not an error: APIKeys.AGE = \"age\" bar(APIKeys.NAME); // error: since \"NAME\" is not in the smaller enum + var object = {}; object[APIKeys.AGE] = 123; // i.e., object.age = 123 object[APIKeys.NAME] = \"FOO\"; // i.e., object.name = \"FOO\" + var age: number = object[APIKeys.AGE]; var name: number = object[APIKeys.NAME]; // error: object.name is a string + var indices = { red: 0, green: 1, blue: 2 }; var tuple = [42, \"hello\", false]; var red: string = tuple[indices.red]; // error: tuple[0] is a number diff --git a/tests/flow/method_properties/__snapshots__/jsfmt.spec.js.snap b/tests/flow/method_properties/__snapshots__/jsfmt.spec.js.snap index 77acfb261b67..4e717dd0c9d9 100644 --- a/tests/flow/method_properties/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/method_properties/__snapshots__/jsfmt.spec.js.snap @@ -52,6 +52,7 @@ C.bar.x; import { Foo } from \"./exports_optional_prop\"; const foo = new Foo(); (foo.bar(): string); // error, could be undefined + function f(x) { (x.bar(): string); // error. caused by \`f(foo)\`; annotate x to track it down. } diff --git a/tests/flow/more_react/__snapshots__/jsfmt.spec.js.snap b/tests/flow/more_react/__snapshots__/jsfmt.spec.js.snap index a616c68dfeb5..4bebcc2b9e5b 100644 --- a/tests/flow/more_react/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/more_react/__snapshots__/jsfmt.spec.js.snap @@ -12,6 +12,7 @@ var app = require(\"JSX\"); app.setProps({ y: 42 }); // error, y:number but foo expects string in App.react app.setState({ z: 42 }); // error, z:number but foo expects string in App.react + function bar(x: number) {} bar(app.props.children); // No error, App doesn\'t specify propTypes so anything goes " diff --git a/tests/flow/name_prop/__snapshots__/jsfmt.spec.js.snap b/tests/flow/name_prop/__snapshots__/jsfmt.spec.js.snap index ebaf465f42b5..674f144c06de 100644 --- a/tests/flow/name_prop/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/name_prop/__snapshots__/jsfmt.spec.js.snap @@ -15,6 +15,7 @@ class A {} var test1 = A.bar; // Error bar doesn\'t exist var test2: string = A.name; var test3: number = A.name; // Error string ~> number + var a = new A(); var test4 = a.constructor.bar; // Error bar doesn\'t exist var test5: string = a.constructor.name; diff --git a/tests/flow/new_react/__snapshots__/jsfmt.spec.js.snap b/tests/flow/new_react/__snapshots__/jsfmt.spec.js.snap index 2fee90617965..b153ed7b5c05 100644 --- a/tests/flow/new_react/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/new_react/__snapshots__/jsfmt.spec.js.snap @@ -505,14 +505,17 @@ var PropTypes = React.PropTypes; var C = React.createClass({ propTypes: { - statistics: PropTypes.arrayOf(PropTypes.shape({ + statistics: PropTypes.arrayOf( + PropTypes.shape({ label: PropTypes.string.isRequired, value: PropTypes.number - })).isRequired + }) + ).isRequired } }); ; // error (label is required, value not required) + var props: Array<{ label: string, value?: number }> = [ {}, { label: \"\", value: undefined } @@ -566,6 +569,7 @@ var TestProps = React.createClass({ }); var element = ; // 3 errors + (element: $jsx<*>); (element: $jsx); var FooProps = React.createClass({ @@ -917,6 +921,7 @@ var TestState = React.createClass({ }, test: function() { var a: number = this.state.x; // error + this.setState({ x: false // error }); diff --git a/tests/flow/node_tests/crypto/__snapshots__/jsfmt.spec.js.snap b/tests/flow/node_tests/crypto/__snapshots__/jsfmt.spec.js.snap index e124c78d6684..71543138089c 100644 --- a/tests/flow/node_tests/crypto/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/node_tests/crypto/__snapshots__/jsfmt.spec.js.snap @@ -65,6 +65,7 @@ let tests = [ hmac.update(\"foo\", \"bogus\"); // 1 error hmac.update(buf); hmac.update(buf, \"utf8\"); // 1 error: no encoding when passing a buffer + // it\'s also chainable (hmac.update(\"some data to hash\").update(buf).digest(): Buffer); diff --git a/tests/flow/node_tests/fs/__snapshots__/jsfmt.spec.js.snap b/tests/flow/node_tests/fs/__snapshots__/jsfmt.spec.js.snap index b7460a0c2044..f74f11790be4 100644 --- a/tests/flow/node_tests/fs/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/node_tests/fs/__snapshots__/jsfmt.spec.js.snap @@ -57,10 +57,13 @@ fs.readFile(\"file.exp\", {}, (_, data) => { (fs.readFileSync(\"file.exp\"): Buffer); (fs.readFileSync(\"file.exp\"): string); // error + (fs.readFileSync(\"file.exp\", \"blah\"): string); (fs.readFileSync(\"file.exp\", \"blah\"): Buffer); // error + (fs.readFileSync(\"file.exp\", { encoding: \"blah\" }): string); (fs.readFileSync(\"file.exp\", { encoding: \"blah\" }): Buffer); // error + (fs.readFileSync(\"file.exp\", {}): Buffer); (fs.readFileSync(\"file.exp\", {}): string); // error " diff --git a/tests/flow/node_tests/json_file/__snapshots__/jsfmt.spec.js.snap b/tests/flow/node_tests/json_file/__snapshots__/jsfmt.spec.js.snap index 61b4151c3a84..dcc63119d4c7 100644 --- a/tests/flow/node_tests/json_file/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/node_tests/json_file/__snapshots__/jsfmt.spec.js.snap @@ -29,13 +29,17 @@ let data = require(\"./package/index.json\"); (data.foo: void); // error, should be object literal (data.foo.bar: void); // error, should be boolean (data.abc: boolean); // error, should be ?string + let data2 = require(\"./package\"); (data2.baz: void); // error, should be string + let data3 = require(\"./package2\"); (data3.foo: void); // error, should be number (not string! index.js wins) + let data4 = require(\"./json_array\"); (data4: Array); (data4: void); // error, should be Array + (require(\"./json_string\"): void); // error, should be string (require(\"./json_number\"): void); // error, should be number (require(\"./json_true\"): void); // error, should be true diff --git a/tests/flow/node_tests/os/__snapshots__/jsfmt.spec.js.snap b/tests/flow/node_tests/os/__snapshots__/jsfmt.spec.js.snap index 7b0cef0d0cfe..817756af06cc 100644 --- a/tests/flow/node_tests/os/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/node_tests/os/__snapshots__/jsfmt.spec.js.snap @@ -22,9 +22,11 @@ var os = require(\"os\"); var u1 = os.userInfo(); (u1.username: string); (u1.username: Buffer); // error + var u2 = os.userInfo({ encoding: \"utf8\" }); (u2.username: string); (u2.username: Buffer); // error + var u3 = os.userInfo({ encoding: \"buffer\" }); (u3.username: string); // error (u3.username: Buffer); diff --git a/tests/flow/nullable/__snapshots__/jsfmt.spec.js.snap b/tests/flow/nullable/__snapshots__/jsfmt.spec.js.snap index 42a026e03655..a91442a3aa7d 100644 --- a/tests/flow/nullable/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/nullable/__snapshots__/jsfmt.spec.js.snap @@ -48,6 +48,7 @@ function corge(x: number) {} var x = bar(); // x: ?string if (x != null) qux(x); // x: ?string | null if (x != null) corge(x); // x: ?string | null + function grault() { x = null; } diff --git a/tests/flow/object-method/__snapshots__/jsfmt.spec.js.snap b/tests/flow/object-method/__snapshots__/jsfmt.spec.js.snap index 1c1673f46fa8..ba57ea5ccead 100644 --- a/tests/flow/object-method/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/object-method/__snapshots__/jsfmt.spec.js.snap @@ -128,6 +128,7 @@ function bar(f: () => void) { } bar(foo); // error, since \`this\` is used non-trivially in \`foo\` + function qux(o: { f(): void }) { o.f(); // passing o as \`this\` } diff --git a/tests/flow/object_api/__snapshots__/jsfmt.spec.js.snap b/tests/flow/object_api/__snapshots__/jsfmt.spec.js.snap index cd2dc015ce77..1725d0c330cf 100644 --- a/tests/flow/object_api/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/object_api/__snapshots__/jsfmt.spec.js.snap @@ -65,6 +65,7 @@ var decl_export_: { foo: any, bar: any } = Object.assign({}, export_); let anyObj: Object = {}; Object.assign(anyObj, anyObj); // makes sure this terminates + module.exports = export_; " `; @@ -176,6 +177,7 @@ class Bar extends Foo { var sealed = { one: \"one\", two: \"two\" }; (Object.keys(sealed): Array<\"one\" | \"two\">); (Object.keys(sealed): void); // error, Array + var unsealed = {}; Object.keys(unsealed).forEach(k => { (k: number); // error: number ~> string @@ -188,12 +190,14 @@ Object.keys(dict).forEach(k => { var any: Object = {}; (Object.keys(any): Array); // error, Array + class Foo { prop: string; foo() {} } // constructor and foo not enumerable (Object.keys(new Foo()): Array<\"error\">); // error: prop ~> error + class Bar extends Foo { bar_prop: string; bar() {} @@ -416,6 +420,7 @@ var y = new Foo(); // call takesAString(a.toString()); d.toString(); // ok, even though dict specifies strings, this is a function + // get var aToString: () => string = a.toString; var aToString2 = a.toString; @@ -448,6 +453,7 @@ takesAString(y.toString()); (123).toString(2); (123).toString(\"foo\"); // error (123).toString(null); // error + // // hasOwnProperty // diff --git a/tests/flow/object_assign/__snapshots__/jsfmt.spec.js.snap b/tests/flow/object_assign/__snapshots__/jsfmt.spec.js.snap index 8a05e651e70c..c2782cb28819 100644 --- a/tests/flow/object_assign/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/object_assign/__snapshots__/jsfmt.spec.js.snap @@ -88,6 +88,7 @@ var good: number = A.Good.foo(); var f = A.Bad.foo; // Property access is fine var bad_: number = f(); // Calling the function is fine + var bad: number = A.Bad.foo(); // Method call is not fine /* B.js|12 col 1 error| call of method foo diff --git a/tests/flow/object_freeze/__snapshots__/jsfmt.spec.js.snap b/tests/flow/object_freeze/__snapshots__/jsfmt.spec.js.snap index b7306a23568d..e825894abcf2 100644 --- a/tests/flow/object_freeze/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/object_freeze/__snapshots__/jsfmt.spec.js.snap @@ -24,7 +24,9 @@ var xx : { x: number } = Object.freeze({ x: \"error\" }) var foo = Object.freeze({ bar: \"12345\" }); foo.bar = \"23456\"; // error + Object.assign(foo, { bar: \"12345\" }); // error + var baz = { baz: 12345 }; var bliffl = Object.freeze({ bar: \"12345\", ...baz }); bliffl.bar = \"23456\"; // error @@ -32,6 +34,7 @@ bliffl.baz = 3456; // error bliffl.corge; // error bliffl.constructor = baz; // error bliffl.toString = function() {}; // error + baz.baz = 0; var x: number = Object.freeze(123); diff --git a/tests/flow/objects/__snapshots__/jsfmt.spec.js.snap b/tests/flow/objects/__snapshots__/jsfmt.spec.js.snap index cad25a3d6a43..e5ebc4b7c005 100644 --- a/tests/flow/objects/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/objects/__snapshots__/jsfmt.spec.js.snap @@ -29,6 +29,7 @@ var z = Object(123); // error (next line makes this not match any signatures) (Object(undefined): {}); (Object(void 0): {}); (Object(undefined): Number); // error + var x = Object(null); x.foo = \"bar\"; @@ -72,9 +73,11 @@ x[\"123\"] = false; // error, boolean !~> string x[123] = false; // TODO: use the number\'s value to error here x[\"foo\" + \"bar\"] = \"derp\"; // ok since we can\'t tell (x[\`foo\`]: string); // error, key doesn\'t exist + var y: { foo: string } = { foo: \"bar\" }; y[\"foo\"] = 123; // error, number !~> string y[\"bar\"] = \"abc\"; // error, property not found + (y[\"hasOwnProperty\"]: string); // error, prototype method is not a string " `; diff --git a/tests/flow/objmap/__snapshots__/jsfmt.spec.js.snap b/tests/flow/objmap/__snapshots__/jsfmt.spec.js.snap index ecf4f6d084d6..c7ed42fc7c40 100644 --- a/tests/flow/objmap/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/objmap/__snapshots__/jsfmt.spec.js.snap @@ -28,6 +28,7 @@ var o = keyMirror({ (o.FOO: \"FOO\"); // ok (o.FOO: \"BAR\"); // error, \'FOO\' incompatible with \'BAR\' + promiseAllByKey({ foo: Promise.resolve(0), bar: \"bar\" diff --git a/tests/flow/optional/__snapshots__/jsfmt.spec.js.snap b/tests/flow/optional/__snapshots__/jsfmt.spec.js.snap index 4462c0c8b3ff..e66dabded4ff 100644 --- a/tests/flow/optional/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/optional/__snapshots__/jsfmt.spec.js.snap @@ -298,6 +298,7 @@ bar(undefined); // ok ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ function foo(x?: number) {} foo(undefined); // ok + function bar(x = \"bar\"): string { return x; } @@ -328,6 +329,7 @@ function foo(x?: number, ...y: Array): [?number, Array] { foo(); // OK foo(123), foo(123, \"hello\"); // OK // OK + foo(true); // ERROR boolean ~> number foo(123, true); // ERROR boolean ~> string " diff --git a/tests/flow/optional_props/__snapshots__/jsfmt.spec.js.snap b/tests/flow/optional_props/__snapshots__/jsfmt.spec.js.snap index b96f32aa3174..5a7aba489d16 100644 --- a/tests/flow/optional_props/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/optional_props/__snapshots__/jsfmt.spec.js.snap @@ -14,11 +14,13 @@ bar({foo: \"\"}); ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ var x: {} = { foo: 0 }; var y: { foo?: string } = x; // OK in TypeScript, not OK in Flow + var z: string = y.foo || \"\"; var o = {}; y = o; // OK; we know that narrowing could not have happened o.foo = 0; // future widening is constrained + function bar(config: { foo?: number }) {} bar({}); bar({ foo: \"\" }); @@ -43,11 +45,14 @@ var f: { foo?: ?string } = { foo: null }; // Also fine var a: { foo?: string } = {}; a.foo = undefined; // This is not an error a.foo = null; // But this is an error + var b: { foo?: ?string } = {}; b.foo = undefined; // This is fine b.foo = null; // Also fine + var c: { foo?: string } = { foo: undefined }; // This is not an error var d: { foo?: string } = { foo: null }; // But this is an error + var e: { foo?: ?string } = { foo: undefined }; // This is fine var f: { foo?: ?string } = { foo: null }; // Also fine " diff --git a/tests/flow/overload/__snapshots__/jsfmt.spec.js.snap b/tests/flow/overload/__snapshots__/jsfmt.spec.js.snap index 82a01d971307..45809dd3c837 100644 --- a/tests/flow/overload/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/overload/__snapshots__/jsfmt.spec.js.snap @@ -74,9 +74,11 @@ var a = new C(); a.foo(0); // ok a.foo(\"hey\"); // ok a.foo(true); // error, function cannot be called on intersection type + a.bar({ a: 0 }); // ok a.bar({ a: \"hey\" }); // ok a.bar({ a: true }); // error, function cannot be called on intersection type + declare var x: { a: boolean } & { b: string }; a.bar(x); // error with nested intersection info (outer for bar, inner for x) @@ -164,12 +166,14 @@ declare function f(x: string): void; declare function f(x: number): void; declare var x_f: string | number; f(x_f); // ok + // maybe declare function g(x: null): void; declare function g(x: void): void; declare function g(x: string): void; declare var x_g: ?string; g(x_g); // ok + // optional declare function h(x: void): void; declare function h(x: string): void; diff --git a/tests/flow/parse_error_haste/__snapshots__/jsfmt.spec.js.snap b/tests/flow/parse_error_haste/__snapshots__/jsfmt.spec.js.snap index 91bf712791d2..25681c2c90f8 100644 --- a/tests/flow/parse_error_haste/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/parse_error_haste/__snapshots__/jsfmt.spec.js.snap @@ -20,6 +20,7 @@ var C = require(\"./ParseError\"); // Flow file // non-flow files should not show parse errors var A = require(\"Foo\"); // non-Flow file @providesModule Foo var B = require(\"./NoProvides\"); // non-Flow file + var C = require(\"./ParseError\"); // Flow file " `; diff --git a/tests/flow/parse_error_node/__snapshots__/jsfmt.spec.js.snap b/tests/flow/parse_error_node/__snapshots__/jsfmt.spec.js.snap index 368ee53ded6a..aa09d48dd582 100644 --- a/tests/flow/parse_error_node/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/parse_error_node/__snapshots__/jsfmt.spec.js.snap @@ -18,6 +18,7 @@ var B = require(\"./ParseError\"); // Flow file // non-flow files should not give parse errors var A = require(\"./Imported\"); // non-Flow file @providesModule Foo + var B = require(\"./ParseError\"); // Flow file " `; diff --git a/tests/flow/poly/__snapshots__/jsfmt.spec.js.snap b/tests/flow/poly/__snapshots__/jsfmt.spec.js.snap index f0467eed1a93..ff520448450d 100644 --- a/tests/flow/poly/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/poly/__snapshots__/jsfmt.spec.js.snap @@ -14,6 +14,7 @@ function bar(): A<*> { // error, * can\'t be {} and {x: string} at the same time class A {} new A(); // OK, implicitly inferred type args class B extends A {} // OK, same as above + function foo( b ): A { // ok but unsafe, caller may assume any type arg diff --git a/tests/flow/promises/__snapshots__/jsfmt.spec.js.snap b/tests/flow/promises/__snapshots__/jsfmt.spec.js.snap index 7dea3eb23d4a..62b8c4e860b8 100644 --- a/tests/flow/promises/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/promises/__snapshots__/jsfmt.spec.js.snap @@ -54,6 +54,7 @@ Promise.all([ (a: number); // Error: string ~> number (b: boolean); // Error: number ~> boolean (c: string); // Error: boolean ~> string + // array element type is (string | number | boolean) xs.forEach(x => { (x: void); // Errors: string ~> void, number ~> void, boolean ~> void @@ -62,8 +63,10 @@ Promise.all([ // First argument is required Promise.all(); // Error: expected array instead of undefined (too few arguments) + // Mis-typed arg Promise.all(0); // Error: expected array instead of number + // Promise.all is a function (Promise.all: Function); @@ -500,8 +503,7 @@ Promise.reject(Promise.resolve(0)).then(function(num) { ////////////////////////////////// // resolvedPromise.then():T -> then(T) -Promise - .resolve(0) +Promise.resolve(0) .then(function(num) { return \"asdf\"; }) @@ -511,8 +513,7 @@ Promise }); // resolvedPromise.then():Promise -> then(T) -Promise - .resolve(0) +Promise.resolve(0) .then(function(num) { return Promise.resolve(\"asdf\"); }) @@ -522,8 +523,7 @@ Promise }); // resolvedPromise.then():Promise> -> then(T) -Promise - .resolve(0) +Promise.resolve(0) .then(function(num) { return Promise.resolve(Promise.resolve(\"asdf\")); }) @@ -533,8 +533,7 @@ Promise }); // TODO: resolvedPromise.then() -> catch(T) -Promise - .resolve(0) +Promise.resolve(0) .then(function(num) { throw \"str\"; }) @@ -550,8 +549,7 @@ Promise /////////////////////////////////// // rejectedPromise.catch():U -> then(U) -Promise - .reject(0) +Promise.reject(0) .catch(function(num) { return \"asdf\"; }) @@ -561,8 +559,7 @@ Promise }); // rejectedPromise.catch():Promise -> then(U) -Promise - .reject(0) +Promise.reject(0) .catch(function(num) { return Promise.resolve(\"asdf\"); }) @@ -572,8 +569,7 @@ Promise }); // rejectedPromise.catch():Promise> -> then(U) -Promise - .reject(0) +Promise.reject(0) .catch(function(num) { return Promise.resolve(Promise.resolve(\"asdf\")); }) @@ -583,15 +579,12 @@ Promise }); // TODO: resolvedPromise -> catch() -> then():T -Promise - .resolve(0) - .catch(function(err) {}) - .then(function(num) { - var a: number = num; +Promise.resolve(0).catch(function(err) {}).then(function(num) { + var a: number = num; - // TODO - var b: string = num; // Error: string ~> number - }); + // TODO + var b: string = num; // Error: string ~> number +}); " `; @@ -692,6 +685,7 @@ exports[`test resolve_void.js 1`] = ` // @flow (Promise.resolve(): Promise); // error + (Promise.resolve(undefined): Promise); // error " `; diff --git a/tests/flow/react_functional/__snapshots__/jsfmt.spec.js.snap b/tests/flow/react_functional/__snapshots__/jsfmt.spec.js.snap index b08ead786829..1eddc5db0181 100644 --- a/tests/flow/react_functional/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/react_functional/__snapshots__/jsfmt.spec.js.snap @@ -19,9 +19,11 @@ function F(props: { foo: string }) {} ; /* error: missing \`foo\`*/ ; /* error: number ~> string*/ ; // ok + // props subtyping is property-wise covariant function G(props: { foo: string | numner }) {} ; // ok + var Z = 0; ; // error, expected React component " diff --git a/tests/flow/rec/__snapshots__/jsfmt.spec.js.snap b/tests/flow/rec/__snapshots__/jsfmt.spec.js.snap index b85049610436..c254b820e179 100644 --- a/tests/flow/rec/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/rec/__snapshots__/jsfmt.spec.js.snap @@ -94,17 +94,21 @@ pstar = (new P: P>); // OK class P { x: X; } + // this is like Promise type Pstar = X | Pstar>; // this is like Promise* + var p: P = new P(); (p.x: string); // error + var pstar: Pstar = 0; // OK (pstar: number); // error, but limit potentially unbounded number of errors! // e.g., P ~/~ number, P> ~/~ number, ... pstar = p; // OK (pstar.x: string); // error + pstar = (new P(): P>); // OK (pstar.x: string); // error " diff --git a/tests/flow/record/__snapshots__/jsfmt.spec.js.snap b/tests/flow/record/__snapshots__/jsfmt.spec.js.snap index 94bb3aa1dd0e..5db3f33b714e 100644 --- a/tests/flow/record/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/record/__snapshots__/jsfmt.spec.js.snap @@ -33,11 +33,13 @@ var o1: { [key: Key1]: number } = { o1.foo; // OK o1.qux; // error: qux not found o1.toString(); // ok + type R = { foo: any, bar: any }; type Key2 = $Keys; // another way to make an enum type, with unknown key set var o2: { [key: Key2]: number } = { foo: 0 }; // OK to leave out bar o2.bar; // OK to access bar o2.qux; // error: qux not found + class C { x: $Subtype<{ [key: $Keys]: any }>; // object with larger key set than X\'s } diff --git a/tests/flow/require/__snapshots__/jsfmt.spec.js.snap b/tests/flow/require/__snapshots__/jsfmt.spec.js.snap index bbe91eae76a3..fde01fe35e7b 100644 --- a/tests/flow/require/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/require/__snapshots__/jsfmt.spec.js.snap @@ -156,12 +156,14 @@ require(\"./D\"); var E = require(\"./E\"); var e_1: number = E.numberValue; E.stringValue; // Error: The E exports obj has no \'stringValue\' property + // We require that the param passed to require() be a string literal to support // guaranteed static extraction var a = \"./E\"; require(a); // Error: Param must be string literal require(\`./E\`); // template literals are ok... require(\`\${\"./E\"}\`); // error: but only if they have no expressions + // require.call is allowed but circumverts Flow\'s static analysis require.call(null, \"DoesNotExist\"); " diff --git a/tests/flow/requireLazy/__snapshots__/jsfmt.spec.js.snap b/tests/flow/requireLazy/__snapshots__/jsfmt.spec.js.snap index 774573a3b0fb..965c3d536cb1 100644 --- a/tests/flow/requireLazy/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/requireLazy/__snapshots__/jsfmt.spec.js.snap @@ -77,6 +77,7 @@ requireLazy([\"A\", \"B\"], function(A, B) { var str1: string = A.stringValueA; var num2: number = A.stringValueA; // Error: string ~> number var str2: string = A.numberValueA; // Error: number ~> string + var num3: number = B.numberValueB; var str3: string = B.stringValueB; var num4: number = B.stringValueB; // Error: string ~> number diff --git a/tests/flow/return_new/__snapshots__/jsfmt.spec.js.snap b/tests/flow/return_new/__snapshots__/jsfmt.spec.js.snap index d071064d50a5..346984c9c86c 100644 --- a/tests/flow/return_new/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/return_new/__snapshots__/jsfmt.spec.js.snap @@ -16,12 +16,15 @@ function Foo() { return {}; } var foo: number = new Foo(); // error (returns object literal above) + function Bar() { return 0; } var bar: number = new Bar(); // error (returns new object) + function Qux() {} var qux: number = new Qux(); // error (returns new object) + class A {} function B() { return new A(); @@ -50,7 +53,9 @@ declare class D { var d = new D(); d.x = \"\"; // error, string ~/~ number (but property x is found) + (new D(): D); // error, new D is an object, D not in proto chain + module.exports = D; " `; diff --git a/tests/flow/sealed/__snapshots__/jsfmt.spec.js.snap b/tests/flow/sealed/__snapshots__/jsfmt.spec.js.snap index 85a43a3227c0..71b0ba74cd2c 100644 --- a/tests/flow/sealed/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/sealed/__snapshots__/jsfmt.spec.js.snap @@ -59,6 +59,7 @@ Foo.prototype = { }; var export_o: { x: any } = o; // awkward type cast + module.exports = export_o; " `; diff --git a/tests/flow/sealed_objects/__snapshots__/jsfmt.spec.js.snap b/tests/flow/sealed_objects/__snapshots__/jsfmt.spec.js.snap index 18850e1dbf3d..581673c51c3a 100644 --- a/tests/flow/sealed_objects/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/sealed_objects/__snapshots__/jsfmt.spec.js.snap @@ -21,16 +21,22 @@ var o7: { x: number; y?: string; } = ({ x: 0, y: 0 }: { x: number; [_:any]:numbe ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ var o1 = { x: 0 }; var s1: string = o1.y; // error + var o2: { x: number, y?: string } = { x: 0 }; var s2: string = o2.y || \"\"; // ok + var o3: { x: number, y?: string } = ({ x: 0, y: 0 }: { x: number }); var s3: string = o3.y || \"\"; // error + var o4: { x: number, y?: string } = ({ x: 0 }: { [_: any]: any, x: number }); var s4: string = o4.y || \"\"; // ok + var o5 = { x: 0, ...{} }; var s5: string = o5.y; // ok (spreads make object types extensible) + var o6: { [_: any]: any, x: number } = { x: 0 }; var s6: string = o6.y; // ok (indexers make object types extensible) + var o7: { x: number, y?: string } = ({ x: 0, y: 0 }: { [_: any]: number, x: number diff --git a/tests/flow/singleton/__snapshots__/jsfmt.spec.js.snap b/tests/flow/singleton/__snapshots__/jsfmt.spec.js.snap index d53fc23dd329..361859b9a650 100644 --- a/tests/flow/singleton/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/singleton/__snapshots__/jsfmt.spec.js.snap @@ -45,12 +45,14 @@ function veryOptimistic(isThisAwesome: true): boolean { var x: boolean = veryOptimistic(true); var y: boolean = veryOptimistic(false); // error + function veryPessimistic(isThisAwesome: true): boolean { return !isThisAwesome; // test bool conversion } var x: boolean = veryPessimistic(true); var y: boolean = veryPessimistic(false); // error + type MyOwnBooleanLOL = true | false; function bar(x: MyOwnBooleanLOL): false { @@ -64,6 +66,7 @@ function bar(x: MyOwnBooleanLOL): false { bar(true); bar(false); bar(1); // error + function alwaysFalsy(x: boolean): false { if (x) { return !x; @@ -107,6 +110,7 @@ function highlander(howMany: 1): number { highlander(1); highlander(2); // error + type Foo = 1 | 2; function bar(num: Foo): number { @@ -116,6 +120,7 @@ function bar(num: Foo): number { bar(1); bar(2); bar(3); // error + type ComparatorResult = -1 | 0 | 1; function sort(fn: (x: any, y: any) => ComparatorResult) {} sort((x, y) => -1); diff --git a/tests/flow/structural_subtyping/__snapshots__/jsfmt.spec.js.snap b/tests/flow/structural_subtyping/__snapshots__/jsfmt.spec.js.snap index 6fc23553cbb3..db93deb3232e 100644 --- a/tests/flow/structural_subtyping/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/structural_subtyping/__snapshots__/jsfmt.spec.js.snap @@ -147,6 +147,7 @@ interface HasOptional { var test1: HasOptional = { a: \"hello\" }; var test2: HasOptional = {}; // Error: missing property a + var test3: HasOptional = { a: \"hello\", b: true }; // Error: boolean ~> number " `; diff --git a/tests/flow/suppress/__snapshots__/jsfmt.spec.js.snap b/tests/flow/suppress/__snapshots__/jsfmt.spec.js.snap index 1720c2ac951d..d2c07dbcdef0 100644 --- a/tests/flow/suppress/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/suppress/__snapshots__/jsfmt.spec.js.snap @@ -26,19 +26,24 @@ var test6: string = 123; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // $FlowFixMe var test1: string = 123; // This error should be suppressed + // $FlowIssue var test2: string = 123; // This error should be suppressed + function getNum() { return 123; } // $FlowFixMe This was the second loc in the error var test3: string = getNum(); // This error should be suppressed + // $FlowFixMe Error unused suppression var test4: string = 123; // This error is NOT suppressed + // $FlowFixMe Indentation shouldn\'t matter var test5: string = 123; // This error should be suppressed + /* * $FlowNewLine */ diff --git a/tests/flow/switch/__snapshots__/jsfmt.spec.js.snap b/tests/flow/switch/__snapshots__/jsfmt.spec.js.snap index 529c3acf8c1f..90498ca49faa 100644 --- a/tests/flow/switch/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/switch/__snapshots__/jsfmt.spec.js.snap @@ -192,6 +192,7 @@ function foo(x: mixed): string { // a is now string | number (a: string); // error, string | number ~/> string (a: number); // error, string | number ~/> number + // b is now number (b: number); // ok return b; // error, number ~/> string @@ -214,9 +215,11 @@ function baz(x: mixed): number { // a is now string | number (a: string); // error, string | number ~/> string (a: number); // error, string | number ~/> number + // b is now string | number (b: string); // error, string | number ~/> string (b: number); // error, string | number ~/> number + return a + b; // error, string ~/> number } " diff --git a/tests/flow/taint/__snapshots__/jsfmt.spec.js.snap b/tests/flow/taint/__snapshots__/jsfmt.spec.js.snap index 5eab09112722..856977b2f853 100644 --- a/tests/flow/taint/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/taint/__snapshots__/jsfmt.spec.js.snap @@ -110,6 +110,7 @@ let tests = [ function(x: $Tainted) { let obj: Object = {}; obj.foo(x); // error, taint ~> any + let foo = obj.foo; foo(x); // error, taint ~> any } diff --git a/tests/flow/template/__snapshots__/jsfmt.spec.js.snap b/tests/flow/template/__snapshots__/jsfmt.spec.js.snap index a584d3244675..31d8699b2ab4 100644 --- a/tests/flow/template/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/template/__snapshots__/jsfmt.spec.js.snap @@ -36,8 +36,10 @@ let tests = [ (\`foo\`: string); // ok (\`bar\`: \"bar\"); // ok (\`baz\`: number); // error + \`foo \${123} bar\`; // ok, number can be appended to string \`foo \${{ bar: 123 }} baz\`; // error, object can\'t be appended + let tests = [ function(x: string) { \`foo \${x}\`; // ok diff --git a/tests/flow/this/__snapshots__/jsfmt.spec.js.snap b/tests/flow/this/__snapshots__/jsfmt.spec.js.snap index b2d5b2ffb08c..9445d7e405c9 100644 --- a/tests/flow/this/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/this/__snapshots__/jsfmt.spec.js.snap @@ -74,15 +74,18 @@ function foo(p: string) {} var o1 = new F(); // sets o1.x to 0 o1.x = \"\"; foo(o1.x); // ok by definite assignment + var o2 = new F(); o1.y = 0; o2.y = \"\"; foo(o2.y); // setting o1.y to 0 has no effect on o2.y + var o3 = new F(); o3.m(); // sets o3.y to 0 o3.y = \"\"; foo(o3.y); // ok by definite assignment foo(o2.y); // setting o3.y to 0 has no effect on o2.y + /* * this bindings: */ @@ -97,6 +100,7 @@ var f1_2: string = f1.bind({ x: 0 })(); // error, number -> string var f1_3 = f1.bind({ x: \"\" })(); // error, string -> number // TODO make this error blame the call site, rather than the function body var f1_4 = f1(); // error, (global object).x + /* arrow functions bind this at point of definition */ /* top level arrow functions bind this to global object */ var a1 = () => { @@ -104,6 +108,7 @@ var a1 = () => { }; var ax = a1(); // error, (this:mixed).x + /* nested arrows bind enclosing this (which may itself rebind) */ function f2(): number { var a2 = () => { @@ -117,6 +122,7 @@ var f2_2: string = f2.bind({ x: 0 })(); // error, number -> string var f2_3 = f2.bind({ x: \"\" })(); // error, string -> number // TODO make this error blame the call site, rather than the function body var f2_4 = f2(); // error, (global object).x + (this: void); module.exports = true; @@ -166,11 +172,13 @@ var c = new C(); var f = c.foo(); var i = f(); // OK (i: C); // OK + class D extends C {} var d = new D(); var g = d.foo(); var j = g(); // OK (j: D); // error, since return type of bar is C, not the type of \`this\` + class E { foo(x: number) {} } diff --git a/tests/flow/this_type/__snapshots__/jsfmt.spec.js.snap b/tests/flow/this_type/__snapshots__/jsfmt.spec.js.snap index 1d0c90a218fc..895406d38786 100644 --- a/tests/flow/this_type/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/this_type/__snapshots__/jsfmt.spec.js.snap @@ -87,6 +87,7 @@ class D extends C {} var d = new D(); (d: C).next = new C(); (d.next: D); // sneaky + class A { foo(that: X) {} // error: can\'t hide contravariance using a bound } @@ -243,6 +244,7 @@ class B1 extends A1 { } (new B1().bar(): B1); // OK + class B3 extends A3 { foo(): B3 { return new B3(); @@ -251,6 +253,7 @@ class B3 extends A3 { (new B3().bar(): B3<*>); // OK (new B3().qux(0): string); // error + (new B3().bar(): A2<*>); // OK ((new B3().bar(): B3): A2); // error ((new B3(): A2).qux(0): string); // error @@ -363,6 +366,7 @@ class A { } } class B extends A {} // inherits statics method too, with \`this\` bound to the class + (A.make(): A); // OK (B.make(): B); // OK (B.make(): A); // OK @@ -469,6 +473,7 @@ class Override extends Base { qux() { return this; } // OK, too + bar() { return new Override(); } // OK (cf. error below) @@ -516,6 +521,7 @@ class Override2 extends Base2 { qux(): this { return this; } // OK, too + bar(): Override2 { return new Override2(); } // error (cf. OK above) @@ -536,6 +542,7 @@ class InheritOverride2 extends Override2 {} ((new Override2(): Base2).foo(): Base2); (new InheritOverride2().bar_caller(): InheritOverride2); // exploits error above + (new Override2(): Base2).corge(new Base2()); // exploits error above " `; diff --git a/tests/flow/this_type/lib/__snapshots__/jsfmt.spec.js.snap b/tests/flow/this_type/lib/__snapshots__/jsfmt.spec.js.snap index 9ba16e9c0334..8dc8bb1523b1 100644 --- a/tests/flow/this_type/lib/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/this_type/lib/__snapshots__/jsfmt.spec.js.snap @@ -35,7 +35,8 @@ declare module \"mini-immutable\" { set(key: K, value: V): this /* more precise than Map (see below)*/ } declare class OrderedMap extends Map { - /* inherits set method returning OrderedMap instead of Map*/} + /* inherits set method returning OrderedMap instead of Map*/ + } } " `; diff --git a/tests/flow/traits/__snapshots__/jsfmt.spec.js.snap b/tests/flow/traits/__snapshots__/jsfmt.spec.js.snap index 409328331b48..8e66f054dec6 100644 --- a/tests/flow/traits/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/traits/__snapshots__/jsfmt.spec.js.snap @@ -22,7 +22,8 @@ declare class Baz { ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ declare class Foo extends Qux { /* KeyedCollection <: Collection*/ - /* ...KeyedIterable*/} + /* ...KeyedIterable*/ +} declare class Bar extends Baz { // KeyedIterable <: Iterable y: T diff --git a/tests/flow/tuples/__snapshots__/jsfmt.spec.js.snap b/tests/flow/tuples/__snapshots__/jsfmt.spec.js.snap index bd79ad42263e..512c37c49972 100644 --- a/tests/flow/tuples/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/tuples/__snapshots__/jsfmt.spec.js.snap @@ -33,6 +33,7 @@ exports[`test optional.js 1`] = ` ([0, undefined]: [number, ?string]); // Ok, correct arity ([0]: [number, ?string]); // Error, arity is enforced + ([]: [?number, string]); // error, since second element is not marked optional " `; diff --git a/tests/flow/type_args_nonstrict/__snapshots__/jsfmt.spec.js.snap b/tests/flow/type_args_nonstrict/__snapshots__/jsfmt.spec.js.snap index 15bb56389ec5..daa59ea576f9 100644 --- a/tests/flow/type_args_nonstrict/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/type_args_nonstrict/__snapshots__/jsfmt.spec.js.snap @@ -94,6 +94,7 @@ class MyClass { } var c: MyClass = new MyClass(0); // no error + // no arity error in type annotation using polymorphic class with defaulting class MyClass2 { @@ -106,6 +107,7 @@ class MyClass2 { } var c2: MyClass2 = new MyClass2(0, \"\"); // no error + // no arity error in type annotation using polymorphic type alias type MyObject = { @@ -113,9 +115,11 @@ type MyObject = { }; var o: MyObject = { x: 0 }; // no error + // arity error in type alias rhs type MySubobject = { y: number } & MyObject; // no error + // arity error in interface extends interface MyInterface { diff --git a/tests/flow/type_args_strict/__snapshots__/jsfmt.spec.js.snap b/tests/flow/type_args_strict/__snapshots__/jsfmt.spec.js.snap index 8224e7fb7032..77ad58b0b8a3 100644 --- a/tests/flow/type_args_strict/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/type_args_strict/__snapshots__/jsfmt.spec.js.snap @@ -92,6 +92,7 @@ class MyClass { } var c: MyClass = new MyClass(0); // error, missing argument list (1) + // arity error in type annotation using polymorphic class with defaulting class MyClass2 { @@ -104,6 +105,7 @@ class MyClass2 { } var c2: MyClass2 = new MyClass2(0, \"\"); // error, missing argument list (1-2) + // arity error in type annotation using polymorphic type alias type MyObject = { @@ -111,9 +113,11 @@ type MyObject = { }; var o: MyObject = { x: 0 }; // error, missing argument list + // arity error in type alias rhs type MySubobject = { y: number } & MyObject; // error, missing argument list + // arity error in interface extends interface MyInterface { diff --git a/tests/flow/type_param_defaults/__snapshots__/jsfmt.spec.js.snap b/tests/flow/type_param_defaults/__snapshots__/jsfmt.spec.js.snap index 5875cda003cc..e69ed11d66b1 100644 --- a/tests/flow/type_param_defaults/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/type_param_defaults/__snapshots__/jsfmt.spec.js.snap @@ -86,7 +86,9 @@ var b_star: B<*> = new B(123); (b_number.p: boolean); // Error number ~> boolean (b_void.p: boolean); // Error void ~> boolean (b_default.p: boolean); // Error string ~> boolean + (b_star.p: boolean); // Error number ~> boolean + class C extends A {} var c_number: C = new C(123); // Error number ~> ?string @@ -97,6 +99,7 @@ var c_star: C<*> = new C(\"hello\"); (c_void.p: boolean); // Error void ~> boolean (c_default.p: boolean); // Error string ~> boolean (c_star.p: boolean); // Error string ~> boolean + class D extends A {} var d_number: D = new D(123); var d_void: D = new D(); @@ -104,18 +107,23 @@ var d_default: D = new D(\"hello\"); var d_too_few_args: D<> = new D(\"hello\"); // Error too few tparams var d_too_many: D = new D(\"hello\"); // Error too many tparams var d_star: D<*> = new D(10); // error, number ~> string + (d_number.p: boolean); // Error number ~> boolean (d_void.p: boolean); // Error void ~> boolean (d_default.p: boolean); // Error string ~> boolean (d_star.p: boolean); // Error number ~> boolean + class E {} // Error: string ~> number class F {} // Error: number ~> string + class G extends A {} var g_default: G = new G(\"hello\"); (g_default.p: boolean); // Error string ~> boolean + class H {} // Error - can\'t refer to T before it\'s defined + class I extends A {} var i_number: I = new I(123); // Error number ~> ?string diff --git a/tests/flow/type_param_scope/__snapshots__/jsfmt.spec.js.snap b/tests/flow/type_param_scope/__snapshots__/jsfmt.spec.js.snap index e92cce8d9904..1906b8db859b 100644 --- a/tests/flow/type_param_scope/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/type_param_scope/__snapshots__/jsfmt.spec.js.snap @@ -155,6 +155,7 @@ declare var g: G; g.m(0); // ok g.m(true); // err, bool ~> number|string (g.m(\"\"): G); // err, string ~> number + // Shadow bounds incompatible with parent class H { diff --git a/tests/flow/typeof/__snapshots__/jsfmt.spec.js.snap b/tests/flow/typeof/__snapshots__/jsfmt.spec.js.snap index 6e1e4cb103a9..d64e21a25fb8 100644 --- a/tests/flow/typeof/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/typeof/__snapshots__/jsfmt.spec.js.snap @@ -147,6 +147,7 @@ var c: typeof MyClass2 = new MyClass2(); var numValue: number = 42; var d: typeof numValue = 100; var e: typeof numValue = \"asdf\"; // Error: string ~> number + ///////////////////////////////// // == typeof <> == // ///////////////////////////////// @@ -158,6 +159,7 @@ type numberAlias = number; // is suboptimal - just \'cannot resolve name\'. TODO. // var f: typeof numberAlias = 42; // Error: \'typeof <>\' makes no sense... + /** * Use of a non-class/non-function value in type annotation. * These provoke a specific error, not just the generic diff --git a/tests/flow/unchecked_node_module_vs_lib/__snapshots__/jsfmt.spec.js.snap b/tests/flow/unchecked_node_module_vs_lib/__snapshots__/jsfmt.spec.js.snap index 7cf53cbcbec7..128511cab7e3 100644 --- a/tests/flow/unchecked_node_module_vs_lib/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/unchecked_node_module_vs_lib/__snapshots__/jsfmt.spec.js.snap @@ -38,15 +38,18 @@ var x3: string = buffer3.INSPECT_MAX_BYTES; // error, module not found // var buffer = require(\"buffer\"); var b: boolean = buffer.INSPECT_MAX_BYTES; // error, number ~/> boolean + // node_modules/crypto/index.js is checked, // so we should pick up its boolean redefinition of DEFAULT_ENCODING // var crypto = require(\"crypto\"); var b: boolean = crypto.DEFAULT_ENCODING; // no error, we\'ve overridden + // names that are explicit paths shouldn\'t fall back to lib defs // var buffer2 = require(\"./buffer\"); var x2: string = buffer2.INSPECT_MAX_BYTES; // error, module not found + var buffer3 = require(\"./buffer.js\"); var x3: string = buffer3.INSPECT_MAX_BYTES; // error, module not found " diff --git a/tests/flow/undefined/__snapshots__/jsfmt.spec.js.snap b/tests/flow/undefined/__snapshots__/jsfmt.spec.js.snap index 5358aae44fb0..bf6c59a03a4f 100644 --- a/tests/flow/undefined/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/undefined/__snapshots__/jsfmt.spec.js.snap @@ -15,6 +15,7 @@ foo(); function doSomethingAsync(): Promise { return new Promise((resolve, reject) => { resolve(); // OK to leave out arg, same as resolve(undefined) + var anotherVoidPromise: Promise = Promise.resolve(); resolve(anotherVoidPromise); }); @@ -93,12 +94,14 @@ let tests = [ var id; var name = id ? \"John\" : undefined; (name: boolean); // error, string or void + const bar = [undefined, \"bar\"]; (bar[x]: boolean); // error, string or void }, function(x: number) { var undefined = \"foo\"; (undefined: string); // ok + var x; if (x !== undefined) { x[0]; // should error, could be void diff --git a/tests/flow/union/__snapshots__/jsfmt.spec.js.snap b/tests/flow/union/__snapshots__/jsfmt.spec.js.snap index 9862fe13919c..57ea72911e67 100644 --- a/tests/flow/union/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/union/__snapshots__/jsfmt.spec.js.snap @@ -346,6 +346,7 @@ foo(y); // TODO: spurious error! (replacing C with number makes the error go away) // type Bar = (() => C) | (() => string); type Bar = () => C | string; // workaround + function f() { return \"\"; } diff --git a/tests/flow/union_new/__snapshots__/jsfmt.spec.js.snap b/tests/flow/union_new/__snapshots__/jsfmt.spec.js.snap index 6253dfb49b27..df1f02c27866 100644 --- a/tests/flow/union_new/__snapshots__/jsfmt.spec.js.snap +++ b/tests/flow/union_new/__snapshots__/jsfmt.spec.js.snap @@ -508,6 +508,7 @@ function obj(a: A1 | A2) { } const obj_result = obj({ x: \"\" }); // currently an error! (expect it to be OK) + // Type definitions used above are defined below, but in an order that // deliberately makes their full resolution as lazy as possible. The call above // blocks until A1 is partially resolved. Since the argument partially matches @@ -1317,6 +1318,7 @@ length({ kind: \"nil\" }); length({ kind: \"cons\" }); // missing \`next\` length({ kind: \"cons\", next: { kind: \"nil\" } }); length({ kind: \"empty\" }); // \`kind\` not found + type List = Nil | Cons; type Nil = { kind: \"nil\" }; type Cons = { kind: \"cons\", next: List }; diff --git a/tests/jsx_escape/__snapshots__/jsfmt.spec.js.snap b/tests/jsx_escape/__snapshots__/jsfmt.spec.js.snap index 0a79acf98ce1..dc6d640f08c0 100644 --- a/tests/jsx_escape/__snapshots__/jsfmt.spec.js.snap +++ b/tests/jsx_escape/__snapshots__/jsfmt.spec.js.snap @@ -11,3 +11,38 @@ exports[`test escape.js 2`] = `
<
; " `; + +exports[`test nbsp.js 1`] = ` +"many_nbsp =
   
+single_nbsp =
 
+many_raw_nbsp =
   
+ + +amp = foo & bar +raw_amp = foo & bar +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +many_nbsp =
   
; +single_nbsp =
 
; +many_raw_nbsp =
   
; +amp = foo & bar; +raw_amp = foo & bar; +" +`; + +exports[`test nbsp.js 2`] = ` +"many_nbsp =
   
+single_nbsp =
 
+many_raw_nbsp =
   
+ + +amp = foo & bar +raw_amp = foo & bar +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +many_nbsp =
   
; +single_nbsp =
 
; +many_raw_nbsp =
   
; + +amp = foo & bar; +raw_amp = foo & bar; +" +`; diff --git a/tests/jsx_escape/jsfmt.spec.js b/tests/jsx_escape/jsfmt.spec.js index d5ec770a90fe..7b8a9e6abfea 100644 --- a/tests/jsx_escape/jsfmt.spec.js +++ b/tests/jsx_escape/jsfmt.spec.js @@ -1,2 +1,2 @@ -run_spec(__dirname); +run_spec(__dirname, {parser: 'flow'}); run_spec(__dirname, {parser: 'babylon'}); diff --git a/tests/jsx_escape/nbsp.js b/tests/jsx_escape/nbsp.js new file mode 100644 index 000000000000..87f6989a1cb2 --- /dev/null +++ b/tests/jsx_escape/nbsp.js @@ -0,0 +1,7 @@ +many_nbsp =
   
+single_nbsp =
 
+many_raw_nbsp =
   
+ + +amp = foo & bar +raw_amp = foo & bar diff --git a/tests/last_argument_expansion/__snapshots__/jsfmt.spec.js.snap b/tests/last_argument_expansion/__snapshots__/jsfmt.spec.js.snap index 4d19590080a2..93bce8cbfce9 100644 --- a/tests/last_argument_expansion/__snapshots__/jsfmt.spec.js.snap +++ b/tests/last_argument_expansion/__snapshots__/jsfmt.spec.js.snap @@ -21,8 +21,7 @@ export default function searchUsers(action$) { .map(action => action.payload.query) .filter(q => !!q) .switchMap(q => - Observable - .timer(800) + Observable.timer(800) .takeUntil(action$.ofType(ActionTypes.CLEARED_SEARCH_RESULTS)) .mergeMap(() => Observable.merge( @@ -72,10 +71,16 @@ export const log = y => { console.log(\'very, very, very long very, very long text\') }; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -const formatData = pipe(zip, map(([ref, data]) => ({ +const formatData = pipe( + zip, + map(([ref, data]) => ({ nodeId: ref.nodeId.toString(), ...attributeFromDataValue(ref.attributeId, data) - })), groupBy(prop(\"nodeId\")), map(mergeAll), values); + })), + groupBy(prop(\"nodeId\")), + map(mergeAll), + values +); export const setProp = y => ({ ...y, diff --git a/tests/literal/__snapshots__/jsfmt.spec.js.snap b/tests/literal/__snapshots__/jsfmt.spec.js.snap index 9e26c22acd53..458f81705431 100644 --- a/tests/literal/__snapshots__/jsfmt.spec.js.snap +++ b/tests/literal/__snapshots__/jsfmt.spec.js.snap @@ -116,3 +116,48 @@ function test5(): string { 0.1e-10; " `; + +exports[`test regex.js 1`] = ` +"// Normalization of \\x and \\u escapes: + +// Basic case. +/a\\xAaAb\\uB1cDE/gim; + +// ES2015 unicode escapes. +/\\u{1Fa3}/u; +/\\u{00000000A0}/u; + +// Leaves what looks like a ES2015 unicode escape alone if not using the /u flag. +/\\u{1Fa3}/; + +// Leaves what looks like escapes but aren\'t alone. +/\\xA\\u00BG/; + +// Leaves other escapes alone. +/\\B\\S/; + +// Handles escaped backslashes. +/\\\\xAB\\\\\\xAB\\\\\\\\xAB\\B\\\\\\B\\uAbCd/; +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +// Normalization of \\x and \\u escapes: + +// Basic case. +/a\\xaaAb\\ub1cdE/gim; + +// ES2015 unicode escapes. +/\\u{1fa3}/u; +/\\u{00000000a0}/u; + +// Leaves what looks like a ES2015 unicode escape alone if not using the /u flag. +/\\u{1Fa3}/; + +// Leaves what looks like escapes but aren\'t alone. +/\\xA\\u00BG/; + +// Leaves other escapes alone. +/\\B\\S/; + +// Handles escaped backslashes. +/\\\\xAB\\\\\\xab\\\\\\\\xAB\\B\\\\\\B\\uabcd/; +" +`; diff --git a/tests/literal/regex.js b/tests/literal/regex.js new file mode 100644 index 000000000000..30a7b0478dc6 --- /dev/null +++ b/tests/literal/regex.js @@ -0,0 +1,20 @@ +// Normalization of \x and \u escapes: + +// Basic case. +/a\xAaAb\uB1cDE/gim; + +// ES2015 unicode escapes. +/\u{1Fa3}/u; +/\u{00000000A0}/u; + +// Leaves what looks like a ES2015 unicode escape alone if not using the /u flag. +/\u{1Fa3}/; + +// Leaves what looks like escapes but aren't alone. +/\xA\u00BG/; + +// Leaves other escapes alone. +/\B\S/; + +// Handles escaped backslashes. +/\\xAB\\\xAB\\\\xAB\B\\\B\uAbCd/; diff --git a/tests/method-chain/__snapshots__/jsfmt.spec.js.snap b/tests/method-chain/__snapshots__/jsfmt.spec.js.snap index 431c7faa453b..647e4a013a2c 100644 --- a/tests/method-chain/__snapshots__/jsfmt.spec.js.snap +++ b/tests/method-chain/__snapshots__/jsfmt.spec.js.snap @@ -1,3 +1,157 @@ +exports[`test break-last-call.js 1`] = ` +"export default store => { + return callApi(endpoint, schema).then( + response => next(actionWith({ + response, + type: successType + })), + error => next(actionWith({ + type: failureType, + error: error.message || \'Something bad happened\' + })) + ) +} + +it(\'should group messages with same created time\', () => { + expect( + groupMessages(messages).toJS(), + ).toEqual({ + \'11/01/2017 13:36\': [ + {message: \'test\', messageType: \'SMS\', status: \'Unknown\', created: \'11/01/2017 13:36\'}, + {message: \'test\', messageType: \'Email\', status: \'Unknown\', created: \'11/01/2017 13:36\'}, + ], + \'09/01/2017 17:25\': [ + {message: \'te\', messageType: \'SMS\', status: \'Unknown\', created: \'09/01/2017 17:25\'}, + {message: \'te\', messageType: \'Email\', status: \'Unknown\', created: \'09/01/2017 17:25\'}, + ], + \'11/01/2017 13:33\': [ + {message: \'test\', messageType: \'SMS\', status: \'Unknown\', created: \'11/01/2017 13:33\'}, + {message: \'test\', messageType: \'Email\', status: \'Unknown\', created: \'11/01/2017 13:33\'}, + ], + \'11/01/2017 13:37\': [ + {message: \'test\', messageType: \'SMS\', status: \'Unknown\', created: \'11/01/2017 13:37\'}, + {message: \'test\', messageType: \'Email\', status: \'Unknown\', created: \'11/01/2017 13:37\'}, + ], + }); +}); +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +export default store => { + return callApi(endpoint, schema).then( + response => next( + actionWith({ + response, + type: successType + }) + ), + error => next( + actionWith({ + type: failureType, + error: error.message || \"Something bad happened\" + }) + ) + ); +}; + +it(\"should group messages with same created time\", () => { + expect(groupMessages(messages).toJS()).toEqual({ + \"11/01/2017 13:36\": [ + { + message: \"test\", + messageType: \"SMS\", + status: \"Unknown\", + created: \"11/01/2017 13:36\" + }, + { + message: \"test\", + messageType: \"Email\", + status: \"Unknown\", + created: \"11/01/2017 13:36\" + } + ], + \"09/01/2017 17:25\": [ + { + message: \"te\", + messageType: \"SMS\", + status: \"Unknown\", + created: \"09/01/2017 17:25\" + }, + { + message: \"te\", + messageType: \"Email\", + status: \"Unknown\", + created: \"09/01/2017 17:25\" + } + ], + \"11/01/2017 13:33\": [ + { + message: \"test\", + messageType: \"SMS\", + status: \"Unknown\", + created: \"11/01/2017 13:33\" + }, + { + message: \"test\", + messageType: \"Email\", + status: \"Unknown\", + created: \"11/01/2017 13:33\" + } + ], + \"11/01/2017 13:37\": [ + { + message: \"test\", + messageType: \"SMS\", + status: \"Unknown\", + created: \"11/01/2017 13:37\" + }, + { + message: \"test\", + messageType: \"Email\", + status: \"Unknown\", + created: \"11/01/2017 13:37\" + } + ] + }); +}); +" +`; + +exports[`test multiple-members.js 1`] = ` +"if (testConfig.ENABLE_ONLINE_TESTS === \"true\") { + describe(\"POST /users/me/pet\", function() { + it(\"saves pet\", function() { + function assert(pet) { + expect(pet).to.have.property(\"OwnerAddress\").that.deep.equals({ + AddressLine1: \"Alexanderstrasse\", + AddressLine2: \"\", + PostalCode: \"10999\", + Region: \"Berlin\", + City: \"Berlin\", + Country: \"DE\" + }); + } + }); + }); +} +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +if (testConfig.ENABLE_ONLINE_TESTS === \"true\") { + describe(\"POST /users/me/pet\", function() { + it(\"saves pet\", function() { + function assert(pet) { + expect(pet).to.have.property(\"OwnerAddress\").that.deep.equals({ + AddressLine1: \"Alexanderstrasse\", + AddressLine2: \"\", + PostalCode: \"10999\", + Region: \"Berlin\", + City: \"Berlin\", + Country: \"DE\" + }); + } + }); + }); +} +" +`; + exports[`test test.js 1`] = ` "method().then(x => x) [\"abc\"](x => x) @@ -6,10 +160,7 @@ exports[`test test.js 1`] = ` ({}.a().b()); ({}).a().b(); ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -method() - .then(x => x) - [\"abc\"](x => x) - [abc](x => x); +method().then(x => x)[\"abc\"](x => x)[abc](x => x); ({}).a().b(); ({}).a().b(); diff --git a/tests/method-chain/break-last-call.js b/tests/method-chain/break-last-call.js new file mode 100644 index 000000000000..99296e8694a2 --- /dev/null +++ b/tests/method-chain/break-last-call.js @@ -0,0 +1,35 @@ +export default store => { + return callApi(endpoint, schema).then( + response => next(actionWith({ + response, + type: successType + })), + error => next(actionWith({ + type: failureType, + error: error.message || 'Something bad happened' + })) + ) +} + +it('should group messages with same created time', () => { + expect( + groupMessages(messages).toJS(), + ).toEqual({ + '11/01/2017 13:36': [ + {message: 'test', messageType: 'SMS', status: 'Unknown', created: '11/01/2017 13:36'}, + {message: 'test', messageType: 'Email', status: 'Unknown', created: '11/01/2017 13:36'}, + ], + '09/01/2017 17:25': [ + {message: 'te', messageType: 'SMS', status: 'Unknown', created: '09/01/2017 17:25'}, + {message: 'te', messageType: 'Email', status: 'Unknown', created: '09/01/2017 17:25'}, + ], + '11/01/2017 13:33': [ + {message: 'test', messageType: 'SMS', status: 'Unknown', created: '11/01/2017 13:33'}, + {message: 'test', messageType: 'Email', status: 'Unknown', created: '11/01/2017 13:33'}, + ], + '11/01/2017 13:37': [ + {message: 'test', messageType: 'SMS', status: 'Unknown', created: '11/01/2017 13:37'}, + {message: 'test', messageType: 'Email', status: 'Unknown', created: '11/01/2017 13:37'}, + ], + }); +}); diff --git a/tests/method-chain/multiple-members.js b/tests/method-chain/multiple-members.js new file mode 100644 index 000000000000..4fc93e4004b7 --- /dev/null +++ b/tests/method-chain/multiple-members.js @@ -0,0 +1,16 @@ +if (testConfig.ENABLE_ONLINE_TESTS === "true") { + describe("POST /users/me/pet", function() { + it("saves pet", function() { + function assert(pet) { + expect(pet).to.have.property("OwnerAddress").that.deep.equals({ + AddressLine1: "Alexanderstrasse", + AddressLine2: "", + PostalCode: "10999", + Region: "Berlin", + City: "Berlin", + Country: "DE" + }); + } + }); + }); +} diff --git a/tests/preserve_line/__snapshots__/jsfmt.spec.js.snap b/tests/preserve_line/__snapshots__/jsfmt.spec.js.snap new file mode 100644 index 000000000000..b078f4f7c632 --- /dev/null +++ b/tests/preserve_line/__snapshots__/jsfmt.spec.js.snap @@ -0,0 +1,60 @@ +exports[`test comments.js 1`] = ` +"function a() { + const a = 5; // comment + + return a; +} + +function a() { + const a = 5; /* comment */ + + return a; +} + +function a() { + const a = 5; /* comment */ /* comment */ + + return a; +} + +function a() { + const a = 5; /* comment */ /* comment */ // comment + return a; +} + +function a() { + const a = 5; /* comment */ /* comment */ // comment + + return a; +} +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +function a() { + const a = 5; // comment + + return a; +} + +function a() { + const a = 5; /* comment */ + + return a; +} + +function a() { + const a = 5; /* comment */ /* comment */ + + return a; +} + +function a() { + const a = 5; /* comment */ /* comment */ // comment + return a; +} + +function a() { + const a = 5; /* comment */ /* comment */ // comment + + return a; +} +" +`; diff --git a/tests/preserve_line/comments.js b/tests/preserve_line/comments.js new file mode 100644 index 000000000000..35ca0556f89c --- /dev/null +++ b/tests/preserve_line/comments.js @@ -0,0 +1,28 @@ +function a() { + const a = 5; // comment + + return a; +} + +function a() { + const a = 5; /* comment */ + + return a; +} + +function a() { + const a = 5; /* comment */ /* comment */ + + return a; +} + +function a() { + const a = 5; /* comment */ /* comment */ // comment + return a; +} + +function a() { + const a = 5; /* comment */ /* comment */ // comment + + return a; +} diff --git a/tests/preserve_line/jsfmt.spec.js b/tests/preserve_line/jsfmt.spec.js new file mode 100644 index 000000000000..989047bccc52 --- /dev/null +++ b/tests/preserve_line/jsfmt.spec.js @@ -0,0 +1 @@ +run_spec(__dirname); diff --git a/tests/strings/__snapshots__/jsfmt.spec.js.snap b/tests/strings/__snapshots__/jsfmt.spec.js.snap index b75363d4e4d8..7cff00584e12 100644 --- a/tests/strings/__snapshots__/jsfmt.spec.js.snap +++ b/tests/strings/__snapshots__/jsfmt.spec.js.snap @@ -24,6 +24,29 @@ exports[`test strings.js 1`] = ` \'\\uD801\\uDC28\', ]; + +// Normalization of \\x and \\u escapes: + +// Basic case. +\"a\\xAaAb\\uB1cDE\"; +\`a\\xAaAb\\uB1cDE\`; + +// ES2015 unicode escapes. +\"\\u{1Fa3}\"; +\`\\u{1Fa3}\`; +\"\\u{00000000A0}\"; +\`\\u{00000000A0}\`; + +// Leaves other escapes alone. +\"\\B\\S\"; +\`\\B\\S\`; + +// Handles escaped backslashes. +\"\\\\xAB\\\\\\xAB\\\\\\\\xAB\\B\\\\\\B\\u1234\"; +\`\\\\xAB\\\\\\xAB\\\\\\\\xAB\\B\\\\\\B\\u1234\`; + +// Mix of everything. +\"\\xF0\"\`a\\uaBcD\${\'\\xFdE\'}\\\\\\u{00AbCdE}\`; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [ \"abc\", @@ -42,6 +65,18 @@ exports[`test strings.js 1`] = ` \"\\0\", \"🐶\", \'\\uD801\\uDC28\' -]; +]; // Normalization of \\x and \\u escapes: // Basic case. + +\"a\\xaaAb\\ub1cdE\"; +\`a\\xaaAb\\ub1cdE\`; // ES2015 unicode escapes. +\"\\u{1fa3}\"; +\`\\u{1fa3}\`; +\"\\u{00000000a0}\"; +\`\\u{00000000a0}\`; // Leaves other escapes alone. +\"\\B\\S\"; +\`\\B\\S\`; // Handles escaped backslashes. +\"\\\\xAB\\\\\\xab\\\\\\\\xAB\\B\\\\\\B\\u1234\"; +\`\\\\xAB\\\\\\xab\\\\\\\\xAB\\B\\\\\\B\\u1234\`; // Mix of everything. +\"\\xf0\"\`a\\uabcd\${\"\\xfdE\"}\\\\\\u{00abcde}\`; " `; diff --git a/tests/strings/strings.js b/tests/strings/strings.js index d31dceb2b456..c2722e2bb171 100644 --- a/tests/strings/strings.js +++ b/tests/strings/strings.js @@ -23,3 +23,26 @@ '\uD801\uDC28', ]; + +// Normalization of \x and \u escapes: + +// Basic case. +"a\xAaAb\uB1cDE"; +`a\xAaAb\uB1cDE`; + +// ES2015 unicode escapes. +"\u{1Fa3}"; +`\u{1Fa3}`; +"\u{00000000A0}"; +`\u{00000000A0}`; + +// Leaves other escapes alone. +"\B\S"; +`\B\S`; + +// Handles escaped backslashes. +"\\xAB\\\xAB\\\\xAB\B\\\B\u1234"; +`\\xAB\\\xAB\\\\xAB\B\\\B\u1234`; + +// Mix of everything. +"\xF0"`a\uaBcD${'\xFdE'}\\\u{00AbCdE}`; diff --git a/tests/unary/__snapshots__/jsfmt.spec.js.snap b/tests/unary/__snapshots__/jsfmt.spec.js.snap index 10e8ed0fab93..1adb04cc4ca6 100644 --- a/tests/unary/__snapshots__/jsfmt.spec.js.snap +++ b/tests/unary/__snapshots__/jsfmt.spec.js.snap @@ -1,3 +1,16 @@ +exports[`test object.js 1`] = ` +"state = { + // students + hoverColumn: -1 +}; +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +state = { + // students + hoverColumn: -1 +}; +" +`; + exports[`test series.js 1`] = ` "1 + ++x; 1 + x++; diff --git a/tests/unary/object.js b/tests/unary/object.js new file mode 100644 index 000000000000..fa406a975f22 --- /dev/null +++ b/tests/unary/object.js @@ -0,0 +1,4 @@ +state = { + // students + hoverColumn: -1 +};